summaryrefslogtreecommitdiff
path: root/thirdparty
diff options
context:
space:
mode:
authorbruvzg <7645683+bruvzg@users.noreply.github.com>2021-08-12 14:24:54 +0300
committerbruvzg <7645683+bruvzg@users.noreply.github.com>2021-08-12 14:25:15 +0300
commitd7957a2a2091a00c8ccdebb6900e5a0f21aa205d (patch)
tree86b99a97ef9540d46183ac9667c58cb124880821 /thirdparty
parent67fc611bda7b55b3eeab87f683a5c95ea0d0313f (diff)
Use "volk" instead of statically linked Vulkan loader.
Diffstat (limited to 'thirdparty')
-rw-r--r--thirdparty/README.md25
-rw-r--r--thirdparty/volk/LICENSE.md19
-rw-r--r--thirdparty/volk/volk.c2194
-rw-r--r--thirdparty/volk/volk.h1442
-rw-r--r--thirdparty/vulkan/LICENSE.txt5
-rw-r--r--thirdparty/vulkan/android/vk_mem_alloc.cpp8
-rw-r--r--thirdparty/vulkan/include/vk_video/vulkan_video_codec_h264std.h299
-rw-r--r--thirdparty/vulkan/include/vk_video/vulkan_video_codec_h264std_decode.h87
-rw-r--r--thirdparty/vulkan/include/vk_video/vulkan_video_codec_h264std_encode.h94
-rw-r--r--thirdparty/vulkan/include/vk_video/vulkan_video_codec_h265std.h341
-rw-r--r--thirdparty/vulkan/include/vk_video/vulkan_video_codec_h265std_decode.h59
-rw-r--r--thirdparty/vulkan/include/vk_video/vulkan_video_codecs_common.h21
-rw-r--r--thirdparty/vulkan/include/vulkan/vk_icd.h9
-rw-r--r--thirdparty/vulkan/include/vulkan/vk_platform.h6
-rw-r--r--thirdparty/vulkan/include/vulkan/vulkan.h7
-rw-r--r--thirdparty/vulkan/include/vulkan/vulkan.hpp96515
-rw-r--r--thirdparty/vulkan/include/vulkan/vulkan_android.h2
-rw-r--r--thirdparty/vulkan/include/vulkan/vulkan_beta.h650
-rw-r--r--thirdparty/vulkan/include/vulkan/vulkan_core.h1240
-rw-r--r--thirdparty/vulkan/include/vulkan/vulkan_directfb.h2
-rw-r--r--thirdparty/vulkan/include/vulkan/vulkan_enums.hpp14091
-rw-r--r--thirdparty/vulkan/include/vulkan/vulkan_fuchsia.h76
-rw-r--r--thirdparty/vulkan/include/vulkan/vulkan_funcs.hpp18209
-rw-r--r--thirdparty/vulkan/include/vulkan/vulkan_ggp.h2
-rw-r--r--thirdparty/vulkan/include/vulkan/vulkan_handles.hpp13618
-rw-r--r--thirdparty/vulkan/include/vulkan/vulkan_ios.h2
-rw-r--r--thirdparty/vulkan/include/vulkan/vulkan_macos.h2
-rw-r--r--thirdparty/vulkan/include/vulkan/vulkan_metal.h2
-rw-r--r--thirdparty/vulkan/include/vulkan/vulkan_raii.hpp15272
-rw-r--r--thirdparty/vulkan/include/vulkan/vulkan_screen.h54
-rw-r--r--thirdparty/vulkan/include/vulkan/vulkan_structs.hpp70973
-rw-r--r--thirdparty/vulkan/include/vulkan/vulkan_vi.h2
-rw-r--r--thirdparty/vulkan/include/vulkan/vulkan_wayland.h2
-rw-r--r--thirdparty/vulkan/include/vulkan/vulkan_win32.h2
-rw-r--r--thirdparty/vulkan/include/vulkan/vulkan_xcb.h2
-rw-r--r--thirdparty/vulkan/include/vulkan/vulkan_xlib.h2
-rw-r--r--thirdparty/vulkan/include/vulkan/vulkan_xlib_xrandr.h2
-rw-r--r--thirdparty/vulkan/loader/adapters.h80
-rw-r--r--thirdparty/vulkan/loader/asm_offset.c94
-rw-r--r--thirdparty/vulkan/loader/cJSON.c1215
-rw-r--r--thirdparty/vulkan/loader/cJSON.h174
-rw-r--r--thirdparty/vulkan/loader/debug_utils.c996
-rw-r--r--thirdparty/vulkan/loader/debug_utils.h101
-rw-r--r--thirdparty/vulkan/loader/dev_ext_trampoline.c538
-rw-r--r--thirdparty/vulkan/loader/dirent_on_windows.c128
-rw-r--r--thirdparty/vulkan/loader/dirent_on_windows.h51
-rw-r--r--thirdparty/vulkan/loader/extension_manual.c315
-rw-r--r--thirdparty/vulkan/loader/extension_manual.h100
-rw-r--r--thirdparty/vulkan/loader/gpa_helper.h249
-rw-r--r--thirdparty/vulkan/loader/loader.c8751
-rw-r--r--thirdparty/vulkan/loader/loader.h550
-rw-r--r--thirdparty/vulkan/loader/murmurhash.c98
-rw-r--r--thirdparty/vulkan/loader/murmurhash.h52
-rw-r--r--thirdparty/vulkan/loader/phys_dev_ext.c1056
-rw-r--r--thirdparty/vulkan/loader/trampoline.c2599
-rw-r--r--thirdparty/vulkan/loader/unknown_ext_chain.c819
-rw-r--r--thirdparty/vulkan/loader/vk_dispatch_table_helper.h951
-rw-r--r--thirdparty/vulkan/loader/vk_layer_dispatch_table.h757
-rw-r--r--thirdparty/vulkan/loader/vk_loader_extensions.c5483
-rw-r--r--thirdparty/vulkan/loader/vk_loader_extensions.h462
-rw-r--r--thirdparty/vulkan/loader/vk_loader_layer.h46
-rw-r--r--thirdparty/vulkan/loader/vk_loader_platform.h448
-rw-r--r--thirdparty/vulkan/loader/vk_object_types.h387
-rw-r--r--thirdparty/vulkan/loader/wsi.c2526
-rw-r--r--thirdparty/vulkan/loader/wsi.h219
-rw-r--r--thirdparty/vulkan/patches/VKEnumStringHelper-use-volk.patch17
-rw-r--r--thirdparty/vulkan/patches/VMA-use-volk.patch17
-rw-r--r--thirdparty/vulkan/patches/Vulkan-Loader-pr475.patch37
-rw-r--r--thirdparty/vulkan/patches/Vulkan-Loader-revert-pr260.patch57
-rw-r--r--thirdparty/vulkan/vk_enum_string_helper.h1970
-rw-r--r--thirdparty/vulkan/vk_mem_alloc.h6
71 files changed, 148077 insertions, 118610 deletions
diff --git a/thirdparty/README.md b/thirdparty/README.md
index 0d27338def..ebf9c5ac0e 100644
--- a/thirdparty/README.md
+++ b/thirdparty/README.md
@@ -660,23 +660,32 @@ They can be reapplied using the patches included in the `vhacd`
folder.
+## volk
+
+- Upstream: https://github.com/zeux/volk
+- Version: git (d75c007f375f35612dba3de512ac73f10bf9aa0e, 2021)
+- License: MIT
+
+The volk commit should match the version of the Vulkan headers defined below.
+
+Files extracted from upstream source:
+
+- `volk.h`, `volk.c`
+- `LICENSE.md`
+
+
## vulkan
-- Upstream: https://github.com/KhronosGroup/Vulkan-Loader
-- Version: sdk-1.2.162.0 (7a313093b5c4af964d50a5a64e73d7df6152ea3f, 2020)
+- Upstream: https://github.com/KhronosGroup/Vulkan-Headers
+- Version: sdk-1.2.182.0 (37164a5726f7e6113810f9557903a117498421cf, 2021)
- License: Apache 2.0
Unless there is a specific reason to package a more recent version, please stick
to Vulkan SDK releases (prefixed by `sdk-`) for all components.
-NOTE: Use `scripts/update_deps.py --ref <version>` in the Loader git repository
-to retrieve the `Vulkan-Headers` repository matching the loader version.
-
Files extracted from upstream source:
-- `Vulkan-Headers/include/` as `include/`
-- All `.c` and `.h` files in `loader/` and `loader/generated/`, put in a common
- `loader/` folder
+- `include/`
- `LICENSE.txt`
`vk_enum_string_helper.h` is taken from the matching `Vulkan-ValidationLayers`
diff --git a/thirdparty/volk/LICENSE.md b/thirdparty/volk/LICENSE.md
new file mode 100644
index 0000000000..da3caa7cda
--- /dev/null
+++ b/thirdparty/volk/LICENSE.md
@@ -0,0 +1,19 @@
+Copyright (c) 2018-2019 Arseny Kapoulkine
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
diff --git a/thirdparty/volk/volk.c b/thirdparty/volk/volk.c
new file mode 100644
index 0000000000..0237cd9061
--- /dev/null
+++ b/thirdparty/volk/volk.c
@@ -0,0 +1,2194 @@
+/* This file is part of volk library; see volk.h for version/license details */
+/* clang-format off */
+#include "volk.h"
+
+#ifdef _WIN32
+ typedef const char* LPCSTR;
+ typedef struct HINSTANCE__* HINSTANCE;
+ typedef HINSTANCE HMODULE;
+ #ifdef _WIN64
+ typedef __int64 (__stdcall* FARPROC)(void);
+ #else
+ typedef int (__stdcall* FARPROC)(void);
+ #endif
+#else
+# include <dlfcn.h>
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#ifdef _WIN32
+__declspec(dllimport) HMODULE __stdcall LoadLibraryA(LPCSTR);
+__declspec(dllimport) FARPROC __stdcall GetProcAddress(HMODULE, LPCSTR);
+#endif
+
+static VkInstance loadedInstance = VK_NULL_HANDLE;
+static VkDevice loadedDevice = VK_NULL_HANDLE;
+
+static void volkGenLoadLoader(void* context, PFN_vkVoidFunction (*load)(void*, const char*));
+static void volkGenLoadInstance(void* context, PFN_vkVoidFunction (*load)(void*, const char*));
+static void volkGenLoadDevice(void* context, PFN_vkVoidFunction (*load)(void*, const char*));
+static void volkGenLoadDeviceTable(struct VolkDeviceTable* table, void* context, PFN_vkVoidFunction (*load)(void*, const char*));
+
+static PFN_vkVoidFunction vkGetInstanceProcAddrStub(void* context, const char* name)
+{
+ return vkGetInstanceProcAddr((VkInstance)context, name);
+}
+
+static PFN_vkVoidFunction vkGetDeviceProcAddrStub(void* context, const char* name)
+{
+ return vkGetDeviceProcAddr((VkDevice)context, name);
+}
+
+VkResult volkInitialize(void)
+{
+#if defined(_WIN32)
+ HMODULE module = LoadLibraryA("vulkan-1.dll");
+ if (!module)
+ return VK_ERROR_INITIALIZATION_FAILED;
+
+ // note: function pointer is cast through void function pointer to silence cast-function-type warning on gcc8
+ vkGetInstanceProcAddr = (PFN_vkGetInstanceProcAddr)(void(*)(void))GetProcAddress(module, "vkGetInstanceProcAddr");
+#elif defined(__APPLE__)
+ void* module = dlopen("libvulkan.dylib", RTLD_NOW | RTLD_LOCAL);
+ if (!module)
+ module = dlopen("libvulkan.1.dylib", RTLD_NOW | RTLD_LOCAL);
+ if (!module)
+ module = dlopen("libMoltenVK.dylib", RTLD_NOW | RTLD_LOCAL);
+ if (!module)
+ return VK_ERROR_INITIALIZATION_FAILED;
+
+ vkGetInstanceProcAddr = (PFN_vkGetInstanceProcAddr)dlsym(module, "vkGetInstanceProcAddr");
+#else
+ void* module = dlopen("libvulkan.so.1", RTLD_NOW | RTLD_LOCAL);
+ if (!module)
+ module = dlopen("libvulkan.so", RTLD_NOW | RTLD_LOCAL);
+ if (!module)
+ return VK_ERROR_INITIALIZATION_FAILED;
+
+ vkGetInstanceProcAddr = (PFN_vkGetInstanceProcAddr)dlsym(module, "vkGetInstanceProcAddr");
+#endif
+
+ volkGenLoadLoader(NULL, vkGetInstanceProcAddrStub);
+
+ return VK_SUCCESS;
+}
+
+void volkInitializeCustom(PFN_vkGetInstanceProcAddr handler)
+{
+ vkGetInstanceProcAddr = handler;
+
+ volkGenLoadLoader(NULL, vkGetInstanceProcAddrStub);
+}
+
+uint32_t volkGetInstanceVersion(void)
+{
+#if defined(VK_VERSION_1_1)
+ uint32_t apiVersion = 0;
+ if (vkEnumerateInstanceVersion && vkEnumerateInstanceVersion(&apiVersion) == VK_SUCCESS)
+ return apiVersion;
+#endif
+
+ if (vkCreateInstance)
+ return VK_API_VERSION_1_0;
+
+ return 0;
+}
+
+void volkLoadInstance(VkInstance instance)
+{
+ loadedInstance = instance;
+ volkGenLoadInstance(instance, vkGetInstanceProcAddrStub);
+ volkGenLoadDevice(instance, vkGetInstanceProcAddrStub);
+}
+
+void volkLoadInstanceOnly(VkInstance instance)
+{
+ loadedInstance = instance;
+ volkGenLoadInstance(instance, vkGetInstanceProcAddrStub);
+}
+
+VkInstance volkGetLoadedInstance()
+{
+ return loadedInstance;
+}
+
+void volkLoadDevice(VkDevice device)
+{
+ loadedDevice = device;
+ volkGenLoadDevice(device, vkGetDeviceProcAddrStub);
+}
+
+VkDevice volkGetLoadedDevice()
+{
+ return loadedDevice;
+}
+
+void volkLoadDeviceTable(struct VolkDeviceTable* table, VkDevice device)
+{
+ volkGenLoadDeviceTable(table, device, vkGetDeviceProcAddrStub);
+}
+
+static void volkGenLoadLoader(void* context, PFN_vkVoidFunction (*load)(void*, const char*))
+{
+ /* VOLK_GENERATE_LOAD_LOADER */
+#if defined(VK_VERSION_1_0)
+ vkCreateInstance = (PFN_vkCreateInstance)load(context, "vkCreateInstance");
+ vkEnumerateInstanceExtensionProperties = (PFN_vkEnumerateInstanceExtensionProperties)load(context, "vkEnumerateInstanceExtensionProperties");
+ vkEnumerateInstanceLayerProperties = (PFN_vkEnumerateInstanceLayerProperties)load(context, "vkEnumerateInstanceLayerProperties");
+#endif /* defined(VK_VERSION_1_0) */
+#if defined(VK_VERSION_1_1)
+ vkEnumerateInstanceVersion = (PFN_vkEnumerateInstanceVersion)load(context, "vkEnumerateInstanceVersion");
+#endif /* defined(VK_VERSION_1_1) */
+ /* VOLK_GENERATE_LOAD_LOADER */
+}
+
+static void volkGenLoadInstance(void* context, PFN_vkVoidFunction (*load)(void*, const char*))
+{
+ /* VOLK_GENERATE_LOAD_INSTANCE */
+#if defined(VK_VERSION_1_0)
+ vkCreateDevice = (PFN_vkCreateDevice)load(context, "vkCreateDevice");
+ vkDestroyInstance = (PFN_vkDestroyInstance)load(context, "vkDestroyInstance");
+ vkEnumerateDeviceExtensionProperties = (PFN_vkEnumerateDeviceExtensionProperties)load(context, "vkEnumerateDeviceExtensionProperties");
+ vkEnumerateDeviceLayerProperties = (PFN_vkEnumerateDeviceLayerProperties)load(context, "vkEnumerateDeviceLayerProperties");
+ vkEnumeratePhysicalDevices = (PFN_vkEnumeratePhysicalDevices)load(context, "vkEnumeratePhysicalDevices");
+ vkGetDeviceProcAddr = (PFN_vkGetDeviceProcAddr)load(context, "vkGetDeviceProcAddr");
+ vkGetPhysicalDeviceFeatures = (PFN_vkGetPhysicalDeviceFeatures)load(context, "vkGetPhysicalDeviceFeatures");
+ vkGetPhysicalDeviceFormatProperties = (PFN_vkGetPhysicalDeviceFormatProperties)load(context, "vkGetPhysicalDeviceFormatProperties");
+ vkGetPhysicalDeviceImageFormatProperties = (PFN_vkGetPhysicalDeviceImageFormatProperties)load(context, "vkGetPhysicalDeviceImageFormatProperties");
+ vkGetPhysicalDeviceMemoryProperties = (PFN_vkGetPhysicalDeviceMemoryProperties)load(context, "vkGetPhysicalDeviceMemoryProperties");
+ vkGetPhysicalDeviceProperties = (PFN_vkGetPhysicalDeviceProperties)load(context, "vkGetPhysicalDeviceProperties");
+ vkGetPhysicalDeviceQueueFamilyProperties = (PFN_vkGetPhysicalDeviceQueueFamilyProperties)load(context, "vkGetPhysicalDeviceQueueFamilyProperties");
+ vkGetPhysicalDeviceSparseImageFormatProperties = (PFN_vkGetPhysicalDeviceSparseImageFormatProperties)load(context, "vkGetPhysicalDeviceSparseImageFormatProperties");
+#endif /* defined(VK_VERSION_1_0) */
+#if defined(VK_VERSION_1_1)
+ vkEnumeratePhysicalDeviceGroups = (PFN_vkEnumeratePhysicalDeviceGroups)load(context, "vkEnumeratePhysicalDeviceGroups");
+ vkGetPhysicalDeviceExternalBufferProperties = (PFN_vkGetPhysicalDeviceExternalBufferProperties)load(context, "vkGetPhysicalDeviceExternalBufferProperties");
+ vkGetPhysicalDeviceExternalFenceProperties = (PFN_vkGetPhysicalDeviceExternalFenceProperties)load(context, "vkGetPhysicalDeviceExternalFenceProperties");
+ vkGetPhysicalDeviceExternalSemaphoreProperties = (PFN_vkGetPhysicalDeviceExternalSemaphoreProperties)load(context, "vkGetPhysicalDeviceExternalSemaphoreProperties");
+ vkGetPhysicalDeviceFeatures2 = (PFN_vkGetPhysicalDeviceFeatures2)load(context, "vkGetPhysicalDeviceFeatures2");
+ vkGetPhysicalDeviceFormatProperties2 = (PFN_vkGetPhysicalDeviceFormatProperties2)load(context, "vkGetPhysicalDeviceFormatProperties2");
+ vkGetPhysicalDeviceImageFormatProperties2 = (PFN_vkGetPhysicalDeviceImageFormatProperties2)load(context, "vkGetPhysicalDeviceImageFormatProperties2");
+ vkGetPhysicalDeviceMemoryProperties2 = (PFN_vkGetPhysicalDeviceMemoryProperties2)load(context, "vkGetPhysicalDeviceMemoryProperties2");
+ vkGetPhysicalDeviceProperties2 = (PFN_vkGetPhysicalDeviceProperties2)load(context, "vkGetPhysicalDeviceProperties2");
+ vkGetPhysicalDeviceQueueFamilyProperties2 = (PFN_vkGetPhysicalDeviceQueueFamilyProperties2)load(context, "vkGetPhysicalDeviceQueueFamilyProperties2");
+ vkGetPhysicalDeviceSparseImageFormatProperties2 = (PFN_vkGetPhysicalDeviceSparseImageFormatProperties2)load(context, "vkGetPhysicalDeviceSparseImageFormatProperties2");
+#endif /* defined(VK_VERSION_1_1) */
+#if defined(VK_EXT_acquire_drm_display)
+ vkAcquireDrmDisplayEXT = (PFN_vkAcquireDrmDisplayEXT)load(context, "vkAcquireDrmDisplayEXT");
+ vkGetDrmDisplayEXT = (PFN_vkGetDrmDisplayEXT)load(context, "vkGetDrmDisplayEXT");
+#endif /* defined(VK_EXT_acquire_drm_display) */
+#if defined(VK_EXT_acquire_xlib_display)
+ vkAcquireXlibDisplayEXT = (PFN_vkAcquireXlibDisplayEXT)load(context, "vkAcquireXlibDisplayEXT");
+ vkGetRandROutputDisplayEXT = (PFN_vkGetRandROutputDisplayEXT)load(context, "vkGetRandROutputDisplayEXT");
+#endif /* defined(VK_EXT_acquire_xlib_display) */
+#if defined(VK_EXT_calibrated_timestamps)
+ vkGetPhysicalDeviceCalibrateableTimeDomainsEXT = (PFN_vkGetPhysicalDeviceCalibrateableTimeDomainsEXT)load(context, "vkGetPhysicalDeviceCalibrateableTimeDomainsEXT");
+#endif /* defined(VK_EXT_calibrated_timestamps) */
+#if defined(VK_EXT_debug_report)
+ vkCreateDebugReportCallbackEXT = (PFN_vkCreateDebugReportCallbackEXT)load(context, "vkCreateDebugReportCallbackEXT");
+ vkDebugReportMessageEXT = (PFN_vkDebugReportMessageEXT)load(context, "vkDebugReportMessageEXT");
+ vkDestroyDebugReportCallbackEXT = (PFN_vkDestroyDebugReportCallbackEXT)load(context, "vkDestroyDebugReportCallbackEXT");
+#endif /* defined(VK_EXT_debug_report) */
+#if defined(VK_EXT_debug_utils)
+ vkCmdBeginDebugUtilsLabelEXT = (PFN_vkCmdBeginDebugUtilsLabelEXT)load(context, "vkCmdBeginDebugUtilsLabelEXT");
+ vkCmdEndDebugUtilsLabelEXT = (PFN_vkCmdEndDebugUtilsLabelEXT)load(context, "vkCmdEndDebugUtilsLabelEXT");
+ vkCmdInsertDebugUtilsLabelEXT = (PFN_vkCmdInsertDebugUtilsLabelEXT)load(context, "vkCmdInsertDebugUtilsLabelEXT");
+ vkCreateDebugUtilsMessengerEXT = (PFN_vkCreateDebugUtilsMessengerEXT)load(context, "vkCreateDebugUtilsMessengerEXT");
+ vkDestroyDebugUtilsMessengerEXT = (PFN_vkDestroyDebugUtilsMessengerEXT)load(context, "vkDestroyDebugUtilsMessengerEXT");
+ vkQueueBeginDebugUtilsLabelEXT = (PFN_vkQueueBeginDebugUtilsLabelEXT)load(context, "vkQueueBeginDebugUtilsLabelEXT");
+ vkQueueEndDebugUtilsLabelEXT = (PFN_vkQueueEndDebugUtilsLabelEXT)load(context, "vkQueueEndDebugUtilsLabelEXT");
+ vkQueueInsertDebugUtilsLabelEXT = (PFN_vkQueueInsertDebugUtilsLabelEXT)load(context, "vkQueueInsertDebugUtilsLabelEXT");
+ vkSetDebugUtilsObjectNameEXT = (PFN_vkSetDebugUtilsObjectNameEXT)load(context, "vkSetDebugUtilsObjectNameEXT");
+ vkSetDebugUtilsObjectTagEXT = (PFN_vkSetDebugUtilsObjectTagEXT)load(context, "vkSetDebugUtilsObjectTagEXT");
+ vkSubmitDebugUtilsMessageEXT = (PFN_vkSubmitDebugUtilsMessageEXT)load(context, "vkSubmitDebugUtilsMessageEXT");
+#endif /* defined(VK_EXT_debug_utils) */
+#if defined(VK_EXT_direct_mode_display)
+ vkReleaseDisplayEXT = (PFN_vkReleaseDisplayEXT)load(context, "vkReleaseDisplayEXT");
+#endif /* defined(VK_EXT_direct_mode_display) */
+#if defined(VK_EXT_directfb_surface)
+ vkCreateDirectFBSurfaceEXT = (PFN_vkCreateDirectFBSurfaceEXT)load(context, "vkCreateDirectFBSurfaceEXT");
+ vkGetPhysicalDeviceDirectFBPresentationSupportEXT = (PFN_vkGetPhysicalDeviceDirectFBPresentationSupportEXT)load(context, "vkGetPhysicalDeviceDirectFBPresentationSupportEXT");
+#endif /* defined(VK_EXT_directfb_surface) */
+#if defined(VK_EXT_display_surface_counter)
+ vkGetPhysicalDeviceSurfaceCapabilities2EXT = (PFN_vkGetPhysicalDeviceSurfaceCapabilities2EXT)load(context, "vkGetPhysicalDeviceSurfaceCapabilities2EXT");
+#endif /* defined(VK_EXT_display_surface_counter) */
+#if defined(VK_EXT_full_screen_exclusive)
+ vkGetPhysicalDeviceSurfacePresentModes2EXT = (PFN_vkGetPhysicalDeviceSurfacePresentModes2EXT)load(context, "vkGetPhysicalDeviceSurfacePresentModes2EXT");
+#endif /* defined(VK_EXT_full_screen_exclusive) */
+#if defined(VK_EXT_headless_surface)
+ vkCreateHeadlessSurfaceEXT = (PFN_vkCreateHeadlessSurfaceEXT)load(context, "vkCreateHeadlessSurfaceEXT");
+#endif /* defined(VK_EXT_headless_surface) */
+#if defined(VK_EXT_metal_surface)
+ vkCreateMetalSurfaceEXT = (PFN_vkCreateMetalSurfaceEXT)load(context, "vkCreateMetalSurfaceEXT");
+#endif /* defined(VK_EXT_metal_surface) */
+#if defined(VK_EXT_sample_locations)
+ vkGetPhysicalDeviceMultisamplePropertiesEXT = (PFN_vkGetPhysicalDeviceMultisamplePropertiesEXT)load(context, "vkGetPhysicalDeviceMultisamplePropertiesEXT");
+#endif /* defined(VK_EXT_sample_locations) */
+#if defined(VK_EXT_tooling_info)
+ vkGetPhysicalDeviceToolPropertiesEXT = (PFN_vkGetPhysicalDeviceToolPropertiesEXT)load(context, "vkGetPhysicalDeviceToolPropertiesEXT");
+#endif /* defined(VK_EXT_tooling_info) */
+#if defined(VK_FUCHSIA_imagepipe_surface)
+ vkCreateImagePipeSurfaceFUCHSIA = (PFN_vkCreateImagePipeSurfaceFUCHSIA)load(context, "vkCreateImagePipeSurfaceFUCHSIA");
+#endif /* defined(VK_FUCHSIA_imagepipe_surface) */
+#if defined(VK_GGP_stream_descriptor_surface)
+ vkCreateStreamDescriptorSurfaceGGP = (PFN_vkCreateStreamDescriptorSurfaceGGP)load(context, "vkCreateStreamDescriptorSurfaceGGP");
+#endif /* defined(VK_GGP_stream_descriptor_surface) */
+#if defined(VK_KHR_android_surface)
+ vkCreateAndroidSurfaceKHR = (PFN_vkCreateAndroidSurfaceKHR)load(context, "vkCreateAndroidSurfaceKHR");
+#endif /* defined(VK_KHR_android_surface) */
+#if defined(VK_KHR_device_group_creation)
+ vkEnumeratePhysicalDeviceGroupsKHR = (PFN_vkEnumeratePhysicalDeviceGroupsKHR)load(context, "vkEnumeratePhysicalDeviceGroupsKHR");
+#endif /* defined(VK_KHR_device_group_creation) */
+#if defined(VK_KHR_display)
+ vkCreateDisplayModeKHR = (PFN_vkCreateDisplayModeKHR)load(context, "vkCreateDisplayModeKHR");
+ vkCreateDisplayPlaneSurfaceKHR = (PFN_vkCreateDisplayPlaneSurfaceKHR)load(context, "vkCreateDisplayPlaneSurfaceKHR");
+ vkGetDisplayModePropertiesKHR = (PFN_vkGetDisplayModePropertiesKHR)load(context, "vkGetDisplayModePropertiesKHR");
+ vkGetDisplayPlaneCapabilitiesKHR = (PFN_vkGetDisplayPlaneCapabilitiesKHR)load(context, "vkGetDisplayPlaneCapabilitiesKHR");
+ vkGetDisplayPlaneSupportedDisplaysKHR = (PFN_vkGetDisplayPlaneSupportedDisplaysKHR)load(context, "vkGetDisplayPlaneSupportedDisplaysKHR");
+ vkGetPhysicalDeviceDisplayPlanePropertiesKHR = (PFN_vkGetPhysicalDeviceDisplayPlanePropertiesKHR)load(context, "vkGetPhysicalDeviceDisplayPlanePropertiesKHR");
+ vkGetPhysicalDeviceDisplayPropertiesKHR = (PFN_vkGetPhysicalDeviceDisplayPropertiesKHR)load(context, "vkGetPhysicalDeviceDisplayPropertiesKHR");
+#endif /* defined(VK_KHR_display) */
+#if defined(VK_KHR_external_fence_capabilities)
+ vkGetPhysicalDeviceExternalFencePropertiesKHR = (PFN_vkGetPhysicalDeviceExternalFencePropertiesKHR)load(context, "vkGetPhysicalDeviceExternalFencePropertiesKHR");
+#endif /* defined(VK_KHR_external_fence_capabilities) */
+#if defined(VK_KHR_external_memory_capabilities)
+ vkGetPhysicalDeviceExternalBufferPropertiesKHR = (PFN_vkGetPhysicalDeviceExternalBufferPropertiesKHR)load(context, "vkGetPhysicalDeviceExternalBufferPropertiesKHR");
+#endif /* defined(VK_KHR_external_memory_capabilities) */
+#if defined(VK_KHR_external_semaphore_capabilities)
+ vkGetPhysicalDeviceExternalSemaphorePropertiesKHR = (PFN_vkGetPhysicalDeviceExternalSemaphorePropertiesKHR)load(context, "vkGetPhysicalDeviceExternalSemaphorePropertiesKHR");
+#endif /* defined(VK_KHR_external_semaphore_capabilities) */
+#if defined(VK_KHR_fragment_shading_rate)
+ vkGetPhysicalDeviceFragmentShadingRatesKHR = (PFN_vkGetPhysicalDeviceFragmentShadingRatesKHR)load(context, "vkGetPhysicalDeviceFragmentShadingRatesKHR");
+#endif /* defined(VK_KHR_fragment_shading_rate) */
+#if defined(VK_KHR_get_display_properties2)
+ vkGetDisplayModeProperties2KHR = (PFN_vkGetDisplayModeProperties2KHR)load(context, "vkGetDisplayModeProperties2KHR");
+ vkGetDisplayPlaneCapabilities2KHR = (PFN_vkGetDisplayPlaneCapabilities2KHR)load(context, "vkGetDisplayPlaneCapabilities2KHR");
+ vkGetPhysicalDeviceDisplayPlaneProperties2KHR = (PFN_vkGetPhysicalDeviceDisplayPlaneProperties2KHR)load(context, "vkGetPhysicalDeviceDisplayPlaneProperties2KHR");
+ vkGetPhysicalDeviceDisplayProperties2KHR = (PFN_vkGetPhysicalDeviceDisplayProperties2KHR)load(context, "vkGetPhysicalDeviceDisplayProperties2KHR");
+#endif /* defined(VK_KHR_get_display_properties2) */
+#if defined(VK_KHR_get_physical_device_properties2)
+ vkGetPhysicalDeviceFeatures2KHR = (PFN_vkGetPhysicalDeviceFeatures2KHR)load(context, "vkGetPhysicalDeviceFeatures2KHR");
+ vkGetPhysicalDeviceFormatProperties2KHR = (PFN_vkGetPhysicalDeviceFormatProperties2KHR)load(context, "vkGetPhysicalDeviceFormatProperties2KHR");
+ vkGetPhysicalDeviceImageFormatProperties2KHR = (PFN_vkGetPhysicalDeviceImageFormatProperties2KHR)load(context, "vkGetPhysicalDeviceImageFormatProperties2KHR");
+ vkGetPhysicalDeviceMemoryProperties2KHR = (PFN_vkGetPhysicalDeviceMemoryProperties2KHR)load(context, "vkGetPhysicalDeviceMemoryProperties2KHR");
+ vkGetPhysicalDeviceProperties2KHR = (PFN_vkGetPhysicalDeviceProperties2KHR)load(context, "vkGetPhysicalDeviceProperties2KHR");
+ vkGetPhysicalDeviceQueueFamilyProperties2KHR = (PFN_vkGetPhysicalDeviceQueueFamilyProperties2KHR)load(context, "vkGetPhysicalDeviceQueueFamilyProperties2KHR");
+ vkGetPhysicalDeviceSparseImageFormatProperties2KHR = (PFN_vkGetPhysicalDeviceSparseImageFormatProperties2KHR)load(context, "vkGetPhysicalDeviceSparseImageFormatProperties2KHR");
+#endif /* defined(VK_KHR_get_physical_device_properties2) */
+#if defined(VK_KHR_get_surface_capabilities2)
+ vkGetPhysicalDeviceSurfaceCapabilities2KHR = (PFN_vkGetPhysicalDeviceSurfaceCapabilities2KHR)load(context, "vkGetPhysicalDeviceSurfaceCapabilities2KHR");
+ vkGetPhysicalDeviceSurfaceFormats2KHR = (PFN_vkGetPhysicalDeviceSurfaceFormats2KHR)load(context, "vkGetPhysicalDeviceSurfaceFormats2KHR");
+#endif /* defined(VK_KHR_get_surface_capabilities2) */
+#if defined(VK_KHR_performance_query)
+ vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR = (PFN_vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR)load(context, "vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR");
+ vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR = (PFN_vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR)load(context, "vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR");
+#endif /* defined(VK_KHR_performance_query) */
+#if defined(VK_KHR_surface)
+ vkDestroySurfaceKHR = (PFN_vkDestroySurfaceKHR)load(context, "vkDestroySurfaceKHR");
+ vkGetPhysicalDeviceSurfaceCapabilitiesKHR = (PFN_vkGetPhysicalDeviceSurfaceCapabilitiesKHR)load(context, "vkGetPhysicalDeviceSurfaceCapabilitiesKHR");
+ vkGetPhysicalDeviceSurfaceFormatsKHR = (PFN_vkGetPhysicalDeviceSurfaceFormatsKHR)load(context, "vkGetPhysicalDeviceSurfaceFormatsKHR");
+ vkGetPhysicalDeviceSurfacePresentModesKHR = (PFN_vkGetPhysicalDeviceSurfacePresentModesKHR)load(context, "vkGetPhysicalDeviceSurfacePresentModesKHR");
+ vkGetPhysicalDeviceSurfaceSupportKHR = (PFN_vkGetPhysicalDeviceSurfaceSupportKHR)load(context, "vkGetPhysicalDeviceSurfaceSupportKHR");
+#endif /* defined(VK_KHR_surface) */
+#if defined(VK_KHR_video_queue)
+ vkGetPhysicalDeviceVideoCapabilitiesKHR = (PFN_vkGetPhysicalDeviceVideoCapabilitiesKHR)load(context, "vkGetPhysicalDeviceVideoCapabilitiesKHR");
+ vkGetPhysicalDeviceVideoFormatPropertiesKHR = (PFN_vkGetPhysicalDeviceVideoFormatPropertiesKHR)load(context, "vkGetPhysicalDeviceVideoFormatPropertiesKHR");
+#endif /* defined(VK_KHR_video_queue) */
+#if defined(VK_KHR_wayland_surface)
+ vkCreateWaylandSurfaceKHR = (PFN_vkCreateWaylandSurfaceKHR)load(context, "vkCreateWaylandSurfaceKHR");
+ vkGetPhysicalDeviceWaylandPresentationSupportKHR = (PFN_vkGetPhysicalDeviceWaylandPresentationSupportKHR)load(context, "vkGetPhysicalDeviceWaylandPresentationSupportKHR");
+#endif /* defined(VK_KHR_wayland_surface) */
+#if defined(VK_KHR_win32_surface)
+ vkCreateWin32SurfaceKHR = (PFN_vkCreateWin32SurfaceKHR)load(context, "vkCreateWin32SurfaceKHR");
+ vkGetPhysicalDeviceWin32PresentationSupportKHR = (PFN_vkGetPhysicalDeviceWin32PresentationSupportKHR)load(context, "vkGetPhysicalDeviceWin32PresentationSupportKHR");
+#endif /* defined(VK_KHR_win32_surface) */
+#if defined(VK_KHR_xcb_surface)
+ vkCreateXcbSurfaceKHR = (PFN_vkCreateXcbSurfaceKHR)load(context, "vkCreateXcbSurfaceKHR");
+ vkGetPhysicalDeviceXcbPresentationSupportKHR = (PFN_vkGetPhysicalDeviceXcbPresentationSupportKHR)load(context, "vkGetPhysicalDeviceXcbPresentationSupportKHR");
+#endif /* defined(VK_KHR_xcb_surface) */
+#if defined(VK_KHR_xlib_surface)
+ vkCreateXlibSurfaceKHR = (PFN_vkCreateXlibSurfaceKHR)load(context, "vkCreateXlibSurfaceKHR");
+ vkGetPhysicalDeviceXlibPresentationSupportKHR = (PFN_vkGetPhysicalDeviceXlibPresentationSupportKHR)load(context, "vkGetPhysicalDeviceXlibPresentationSupportKHR");
+#endif /* defined(VK_KHR_xlib_surface) */
+#if defined(VK_MVK_ios_surface)
+ vkCreateIOSSurfaceMVK = (PFN_vkCreateIOSSurfaceMVK)load(context, "vkCreateIOSSurfaceMVK");
+#endif /* defined(VK_MVK_ios_surface) */
+#if defined(VK_MVK_macos_surface)
+ vkCreateMacOSSurfaceMVK = (PFN_vkCreateMacOSSurfaceMVK)load(context, "vkCreateMacOSSurfaceMVK");
+#endif /* defined(VK_MVK_macos_surface) */
+#if defined(VK_NN_vi_surface)
+ vkCreateViSurfaceNN = (PFN_vkCreateViSurfaceNN)load(context, "vkCreateViSurfaceNN");
+#endif /* defined(VK_NN_vi_surface) */
+#if defined(VK_NV_acquire_winrt_display)
+ vkAcquireWinrtDisplayNV = (PFN_vkAcquireWinrtDisplayNV)load(context, "vkAcquireWinrtDisplayNV");
+ vkGetWinrtDisplayNV = (PFN_vkGetWinrtDisplayNV)load(context, "vkGetWinrtDisplayNV");
+#endif /* defined(VK_NV_acquire_winrt_display) */
+#if defined(VK_NV_cooperative_matrix)
+ vkGetPhysicalDeviceCooperativeMatrixPropertiesNV = (PFN_vkGetPhysicalDeviceCooperativeMatrixPropertiesNV)load(context, "vkGetPhysicalDeviceCooperativeMatrixPropertiesNV");
+#endif /* defined(VK_NV_cooperative_matrix) */
+#if defined(VK_NV_coverage_reduction_mode)
+ vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV = (PFN_vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV)load(context, "vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV");
+#endif /* defined(VK_NV_coverage_reduction_mode) */
+#if defined(VK_NV_external_memory_capabilities)
+ vkGetPhysicalDeviceExternalImageFormatPropertiesNV = (PFN_vkGetPhysicalDeviceExternalImageFormatPropertiesNV)load(context, "vkGetPhysicalDeviceExternalImageFormatPropertiesNV");
+#endif /* defined(VK_NV_external_memory_capabilities) */
+#if defined(VK_QNX_screen_surface)
+ vkCreateScreenSurfaceQNX = (PFN_vkCreateScreenSurfaceQNX)load(context, "vkCreateScreenSurfaceQNX");
+ vkGetPhysicalDeviceScreenPresentationSupportQNX = (PFN_vkGetPhysicalDeviceScreenPresentationSupportQNX)load(context, "vkGetPhysicalDeviceScreenPresentationSupportQNX");
+#endif /* defined(VK_QNX_screen_surface) */
+#if (defined(VK_KHR_device_group) && defined(VK_KHR_surface)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1))
+ vkGetPhysicalDevicePresentRectanglesKHR = (PFN_vkGetPhysicalDevicePresentRectanglesKHR)load(context, "vkGetPhysicalDevicePresentRectanglesKHR");
+#endif /* (defined(VK_KHR_device_group) && defined(VK_KHR_surface)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1)) */
+ /* VOLK_GENERATE_LOAD_INSTANCE */
+}
+
+static void volkGenLoadDevice(void* context, PFN_vkVoidFunction (*load)(void*, const char*))
+{
+ /* VOLK_GENERATE_LOAD_DEVICE */
+#if defined(VK_VERSION_1_0)
+ vkAllocateCommandBuffers = (PFN_vkAllocateCommandBuffers)load(context, "vkAllocateCommandBuffers");
+ vkAllocateDescriptorSets = (PFN_vkAllocateDescriptorSets)load(context, "vkAllocateDescriptorSets");
+ vkAllocateMemory = (PFN_vkAllocateMemory)load(context, "vkAllocateMemory");
+ vkBeginCommandBuffer = (PFN_vkBeginCommandBuffer)load(context, "vkBeginCommandBuffer");
+ vkBindBufferMemory = (PFN_vkBindBufferMemory)load(context, "vkBindBufferMemory");
+ vkBindImageMemory = (PFN_vkBindImageMemory)load(context, "vkBindImageMemory");
+ vkCmdBeginQuery = (PFN_vkCmdBeginQuery)load(context, "vkCmdBeginQuery");
+ vkCmdBeginRenderPass = (PFN_vkCmdBeginRenderPass)load(context, "vkCmdBeginRenderPass");
+ vkCmdBindDescriptorSets = (PFN_vkCmdBindDescriptorSets)load(context, "vkCmdBindDescriptorSets");
+ vkCmdBindIndexBuffer = (PFN_vkCmdBindIndexBuffer)load(context, "vkCmdBindIndexBuffer");
+ vkCmdBindPipeline = (PFN_vkCmdBindPipeline)load(context, "vkCmdBindPipeline");
+ vkCmdBindVertexBuffers = (PFN_vkCmdBindVertexBuffers)load(context, "vkCmdBindVertexBuffers");
+ vkCmdBlitImage = (PFN_vkCmdBlitImage)load(context, "vkCmdBlitImage");
+ vkCmdClearAttachments = (PFN_vkCmdClearAttachments)load(context, "vkCmdClearAttachments");
+ vkCmdClearColorImage = (PFN_vkCmdClearColorImage)load(context, "vkCmdClearColorImage");
+ vkCmdClearDepthStencilImage = (PFN_vkCmdClearDepthStencilImage)load(context, "vkCmdClearDepthStencilImage");
+ vkCmdCopyBuffer = (PFN_vkCmdCopyBuffer)load(context, "vkCmdCopyBuffer");
+ vkCmdCopyBufferToImage = (PFN_vkCmdCopyBufferToImage)load(context, "vkCmdCopyBufferToImage");
+ vkCmdCopyImage = (PFN_vkCmdCopyImage)load(context, "vkCmdCopyImage");
+ vkCmdCopyImageToBuffer = (PFN_vkCmdCopyImageToBuffer)load(context, "vkCmdCopyImageToBuffer");
+ vkCmdCopyQueryPoolResults = (PFN_vkCmdCopyQueryPoolResults)load(context, "vkCmdCopyQueryPoolResults");
+ vkCmdDispatch = (PFN_vkCmdDispatch)load(context, "vkCmdDispatch");
+ vkCmdDispatchIndirect = (PFN_vkCmdDispatchIndirect)load(context, "vkCmdDispatchIndirect");
+ vkCmdDraw = (PFN_vkCmdDraw)load(context, "vkCmdDraw");
+ vkCmdDrawIndexed = (PFN_vkCmdDrawIndexed)load(context, "vkCmdDrawIndexed");
+ vkCmdDrawIndexedIndirect = (PFN_vkCmdDrawIndexedIndirect)load(context, "vkCmdDrawIndexedIndirect");
+ vkCmdDrawIndirect = (PFN_vkCmdDrawIndirect)load(context, "vkCmdDrawIndirect");
+ vkCmdEndQuery = (PFN_vkCmdEndQuery)load(context, "vkCmdEndQuery");
+ vkCmdEndRenderPass = (PFN_vkCmdEndRenderPass)load(context, "vkCmdEndRenderPass");
+ vkCmdExecuteCommands = (PFN_vkCmdExecuteCommands)load(context, "vkCmdExecuteCommands");
+ vkCmdFillBuffer = (PFN_vkCmdFillBuffer)load(context, "vkCmdFillBuffer");
+ vkCmdNextSubpass = (PFN_vkCmdNextSubpass)load(context, "vkCmdNextSubpass");
+ vkCmdPipelineBarrier = (PFN_vkCmdPipelineBarrier)load(context, "vkCmdPipelineBarrier");
+ vkCmdPushConstants = (PFN_vkCmdPushConstants)load(context, "vkCmdPushConstants");
+ vkCmdResetEvent = (PFN_vkCmdResetEvent)load(context, "vkCmdResetEvent");
+ vkCmdResetQueryPool = (PFN_vkCmdResetQueryPool)load(context, "vkCmdResetQueryPool");
+ vkCmdResolveImage = (PFN_vkCmdResolveImage)load(context, "vkCmdResolveImage");
+ vkCmdSetBlendConstants = (PFN_vkCmdSetBlendConstants)load(context, "vkCmdSetBlendConstants");
+ vkCmdSetDepthBias = (PFN_vkCmdSetDepthBias)load(context, "vkCmdSetDepthBias");
+ vkCmdSetDepthBounds = (PFN_vkCmdSetDepthBounds)load(context, "vkCmdSetDepthBounds");
+ vkCmdSetEvent = (PFN_vkCmdSetEvent)load(context, "vkCmdSetEvent");
+ vkCmdSetLineWidth = (PFN_vkCmdSetLineWidth)load(context, "vkCmdSetLineWidth");
+ vkCmdSetScissor = (PFN_vkCmdSetScissor)load(context, "vkCmdSetScissor");
+ vkCmdSetStencilCompareMask = (PFN_vkCmdSetStencilCompareMask)load(context, "vkCmdSetStencilCompareMask");
+ vkCmdSetStencilReference = (PFN_vkCmdSetStencilReference)load(context, "vkCmdSetStencilReference");
+ vkCmdSetStencilWriteMask = (PFN_vkCmdSetStencilWriteMask)load(context, "vkCmdSetStencilWriteMask");
+ vkCmdSetViewport = (PFN_vkCmdSetViewport)load(context, "vkCmdSetViewport");
+ vkCmdUpdateBuffer = (PFN_vkCmdUpdateBuffer)load(context, "vkCmdUpdateBuffer");
+ vkCmdWaitEvents = (PFN_vkCmdWaitEvents)load(context, "vkCmdWaitEvents");
+ vkCmdWriteTimestamp = (PFN_vkCmdWriteTimestamp)load(context, "vkCmdWriteTimestamp");
+ vkCreateBuffer = (PFN_vkCreateBuffer)load(context, "vkCreateBuffer");
+ vkCreateBufferView = (PFN_vkCreateBufferView)load(context, "vkCreateBufferView");
+ vkCreateCommandPool = (PFN_vkCreateCommandPool)load(context, "vkCreateCommandPool");
+ vkCreateComputePipelines = (PFN_vkCreateComputePipelines)load(context, "vkCreateComputePipelines");
+ vkCreateDescriptorPool = (PFN_vkCreateDescriptorPool)load(context, "vkCreateDescriptorPool");
+ vkCreateDescriptorSetLayout = (PFN_vkCreateDescriptorSetLayout)load(context, "vkCreateDescriptorSetLayout");
+ vkCreateEvent = (PFN_vkCreateEvent)load(context, "vkCreateEvent");
+ vkCreateFence = (PFN_vkCreateFence)load(context, "vkCreateFence");
+ vkCreateFramebuffer = (PFN_vkCreateFramebuffer)load(context, "vkCreateFramebuffer");
+ vkCreateGraphicsPipelines = (PFN_vkCreateGraphicsPipelines)load(context, "vkCreateGraphicsPipelines");
+ vkCreateImage = (PFN_vkCreateImage)load(context, "vkCreateImage");
+ vkCreateImageView = (PFN_vkCreateImageView)load(context, "vkCreateImageView");
+ vkCreatePipelineCache = (PFN_vkCreatePipelineCache)load(context, "vkCreatePipelineCache");
+ vkCreatePipelineLayout = (PFN_vkCreatePipelineLayout)load(context, "vkCreatePipelineLayout");
+ vkCreateQueryPool = (PFN_vkCreateQueryPool)load(context, "vkCreateQueryPool");
+ vkCreateRenderPass = (PFN_vkCreateRenderPass)load(context, "vkCreateRenderPass");
+ vkCreateSampler = (PFN_vkCreateSampler)load(context, "vkCreateSampler");
+ vkCreateSemaphore = (PFN_vkCreateSemaphore)load(context, "vkCreateSemaphore");
+ vkCreateShaderModule = (PFN_vkCreateShaderModule)load(context, "vkCreateShaderModule");
+ vkDestroyBuffer = (PFN_vkDestroyBuffer)load(context, "vkDestroyBuffer");
+ vkDestroyBufferView = (PFN_vkDestroyBufferView)load(context, "vkDestroyBufferView");
+ vkDestroyCommandPool = (PFN_vkDestroyCommandPool)load(context, "vkDestroyCommandPool");
+ vkDestroyDescriptorPool = (PFN_vkDestroyDescriptorPool)load(context, "vkDestroyDescriptorPool");
+ vkDestroyDescriptorSetLayout = (PFN_vkDestroyDescriptorSetLayout)load(context, "vkDestroyDescriptorSetLayout");
+ vkDestroyDevice = (PFN_vkDestroyDevice)load(context, "vkDestroyDevice");
+ vkDestroyEvent = (PFN_vkDestroyEvent)load(context, "vkDestroyEvent");
+ vkDestroyFence = (PFN_vkDestroyFence)load(context, "vkDestroyFence");
+ vkDestroyFramebuffer = (PFN_vkDestroyFramebuffer)load(context, "vkDestroyFramebuffer");
+ vkDestroyImage = (PFN_vkDestroyImage)load(context, "vkDestroyImage");
+ vkDestroyImageView = (PFN_vkDestroyImageView)load(context, "vkDestroyImageView");
+ vkDestroyPipeline = (PFN_vkDestroyPipeline)load(context, "vkDestroyPipeline");
+ vkDestroyPipelineCache = (PFN_vkDestroyPipelineCache)load(context, "vkDestroyPipelineCache");
+ vkDestroyPipelineLayout = (PFN_vkDestroyPipelineLayout)load(context, "vkDestroyPipelineLayout");
+ vkDestroyQueryPool = (PFN_vkDestroyQueryPool)load(context, "vkDestroyQueryPool");
+ vkDestroyRenderPass = (PFN_vkDestroyRenderPass)load(context, "vkDestroyRenderPass");
+ vkDestroySampler = (PFN_vkDestroySampler)load(context, "vkDestroySampler");
+ vkDestroySemaphore = (PFN_vkDestroySemaphore)load(context, "vkDestroySemaphore");
+ vkDestroyShaderModule = (PFN_vkDestroyShaderModule)load(context, "vkDestroyShaderModule");
+ vkDeviceWaitIdle = (PFN_vkDeviceWaitIdle)load(context, "vkDeviceWaitIdle");
+ vkEndCommandBuffer = (PFN_vkEndCommandBuffer)load(context, "vkEndCommandBuffer");
+ vkFlushMappedMemoryRanges = (PFN_vkFlushMappedMemoryRanges)load(context, "vkFlushMappedMemoryRanges");
+ vkFreeCommandBuffers = (PFN_vkFreeCommandBuffers)load(context, "vkFreeCommandBuffers");
+ vkFreeDescriptorSets = (PFN_vkFreeDescriptorSets)load(context, "vkFreeDescriptorSets");
+ vkFreeMemory = (PFN_vkFreeMemory)load(context, "vkFreeMemory");
+ vkGetBufferMemoryRequirements = (PFN_vkGetBufferMemoryRequirements)load(context, "vkGetBufferMemoryRequirements");
+ vkGetDeviceMemoryCommitment = (PFN_vkGetDeviceMemoryCommitment)load(context, "vkGetDeviceMemoryCommitment");
+ vkGetDeviceQueue = (PFN_vkGetDeviceQueue)load(context, "vkGetDeviceQueue");
+ vkGetEventStatus = (PFN_vkGetEventStatus)load(context, "vkGetEventStatus");
+ vkGetFenceStatus = (PFN_vkGetFenceStatus)load(context, "vkGetFenceStatus");
+ vkGetImageMemoryRequirements = (PFN_vkGetImageMemoryRequirements)load(context, "vkGetImageMemoryRequirements");
+ vkGetImageSparseMemoryRequirements = (PFN_vkGetImageSparseMemoryRequirements)load(context, "vkGetImageSparseMemoryRequirements");
+ vkGetImageSubresourceLayout = (PFN_vkGetImageSubresourceLayout)load(context, "vkGetImageSubresourceLayout");
+ vkGetPipelineCacheData = (PFN_vkGetPipelineCacheData)load(context, "vkGetPipelineCacheData");
+ vkGetQueryPoolResults = (PFN_vkGetQueryPoolResults)load(context, "vkGetQueryPoolResults");
+ vkGetRenderAreaGranularity = (PFN_vkGetRenderAreaGranularity)load(context, "vkGetRenderAreaGranularity");
+ vkInvalidateMappedMemoryRanges = (PFN_vkInvalidateMappedMemoryRanges)load(context, "vkInvalidateMappedMemoryRanges");
+ vkMapMemory = (PFN_vkMapMemory)load(context, "vkMapMemory");
+ vkMergePipelineCaches = (PFN_vkMergePipelineCaches)load(context, "vkMergePipelineCaches");
+ vkQueueBindSparse = (PFN_vkQueueBindSparse)load(context, "vkQueueBindSparse");
+ vkQueueSubmit = (PFN_vkQueueSubmit)load(context, "vkQueueSubmit");
+ vkQueueWaitIdle = (PFN_vkQueueWaitIdle)load(context, "vkQueueWaitIdle");
+ vkResetCommandBuffer = (PFN_vkResetCommandBuffer)load(context, "vkResetCommandBuffer");
+ vkResetCommandPool = (PFN_vkResetCommandPool)load(context, "vkResetCommandPool");
+ vkResetDescriptorPool = (PFN_vkResetDescriptorPool)load(context, "vkResetDescriptorPool");
+ vkResetEvent = (PFN_vkResetEvent)load(context, "vkResetEvent");
+ vkResetFences = (PFN_vkResetFences)load(context, "vkResetFences");
+ vkSetEvent = (PFN_vkSetEvent)load(context, "vkSetEvent");
+ vkUnmapMemory = (PFN_vkUnmapMemory)load(context, "vkUnmapMemory");
+ vkUpdateDescriptorSets = (PFN_vkUpdateDescriptorSets)load(context, "vkUpdateDescriptorSets");
+ vkWaitForFences = (PFN_vkWaitForFences)load(context, "vkWaitForFences");
+#endif /* defined(VK_VERSION_1_0) */
+#if defined(VK_VERSION_1_1)
+ vkBindBufferMemory2 = (PFN_vkBindBufferMemory2)load(context, "vkBindBufferMemory2");
+ vkBindImageMemory2 = (PFN_vkBindImageMemory2)load(context, "vkBindImageMemory2");
+ vkCmdDispatchBase = (PFN_vkCmdDispatchBase)load(context, "vkCmdDispatchBase");
+ vkCmdSetDeviceMask = (PFN_vkCmdSetDeviceMask)load(context, "vkCmdSetDeviceMask");
+ vkCreateDescriptorUpdateTemplate = (PFN_vkCreateDescriptorUpdateTemplate)load(context, "vkCreateDescriptorUpdateTemplate");
+ vkCreateSamplerYcbcrConversion = (PFN_vkCreateSamplerYcbcrConversion)load(context, "vkCreateSamplerYcbcrConversion");
+ vkDestroyDescriptorUpdateTemplate = (PFN_vkDestroyDescriptorUpdateTemplate)load(context, "vkDestroyDescriptorUpdateTemplate");
+ vkDestroySamplerYcbcrConversion = (PFN_vkDestroySamplerYcbcrConversion)load(context, "vkDestroySamplerYcbcrConversion");
+ vkGetBufferMemoryRequirements2 = (PFN_vkGetBufferMemoryRequirements2)load(context, "vkGetBufferMemoryRequirements2");
+ vkGetDescriptorSetLayoutSupport = (PFN_vkGetDescriptorSetLayoutSupport)load(context, "vkGetDescriptorSetLayoutSupport");
+ vkGetDeviceGroupPeerMemoryFeatures = (PFN_vkGetDeviceGroupPeerMemoryFeatures)load(context, "vkGetDeviceGroupPeerMemoryFeatures");
+ vkGetDeviceQueue2 = (PFN_vkGetDeviceQueue2)load(context, "vkGetDeviceQueue2");
+ vkGetImageMemoryRequirements2 = (PFN_vkGetImageMemoryRequirements2)load(context, "vkGetImageMemoryRequirements2");
+ vkGetImageSparseMemoryRequirements2 = (PFN_vkGetImageSparseMemoryRequirements2)load(context, "vkGetImageSparseMemoryRequirements2");
+ vkTrimCommandPool = (PFN_vkTrimCommandPool)load(context, "vkTrimCommandPool");
+ vkUpdateDescriptorSetWithTemplate = (PFN_vkUpdateDescriptorSetWithTemplate)load(context, "vkUpdateDescriptorSetWithTemplate");
+#endif /* defined(VK_VERSION_1_1) */
+#if defined(VK_VERSION_1_2)
+ vkCmdBeginRenderPass2 = (PFN_vkCmdBeginRenderPass2)load(context, "vkCmdBeginRenderPass2");
+ vkCmdDrawIndexedIndirectCount = (PFN_vkCmdDrawIndexedIndirectCount)load(context, "vkCmdDrawIndexedIndirectCount");
+ vkCmdDrawIndirectCount = (PFN_vkCmdDrawIndirectCount)load(context, "vkCmdDrawIndirectCount");
+ vkCmdEndRenderPass2 = (PFN_vkCmdEndRenderPass2)load(context, "vkCmdEndRenderPass2");
+ vkCmdNextSubpass2 = (PFN_vkCmdNextSubpass2)load(context, "vkCmdNextSubpass2");
+ vkCreateRenderPass2 = (PFN_vkCreateRenderPass2)load(context, "vkCreateRenderPass2");
+ vkGetBufferDeviceAddress = (PFN_vkGetBufferDeviceAddress)load(context, "vkGetBufferDeviceAddress");
+ vkGetBufferOpaqueCaptureAddress = (PFN_vkGetBufferOpaqueCaptureAddress)load(context, "vkGetBufferOpaqueCaptureAddress");
+ vkGetDeviceMemoryOpaqueCaptureAddress = (PFN_vkGetDeviceMemoryOpaqueCaptureAddress)load(context, "vkGetDeviceMemoryOpaqueCaptureAddress");
+ vkGetSemaphoreCounterValue = (PFN_vkGetSemaphoreCounterValue)load(context, "vkGetSemaphoreCounterValue");
+ vkResetQueryPool = (PFN_vkResetQueryPool)load(context, "vkResetQueryPool");
+ vkSignalSemaphore = (PFN_vkSignalSemaphore)load(context, "vkSignalSemaphore");
+ vkWaitSemaphores = (PFN_vkWaitSemaphores)load(context, "vkWaitSemaphores");
+#endif /* defined(VK_VERSION_1_2) */
+#if defined(VK_AMD_buffer_marker)
+ vkCmdWriteBufferMarkerAMD = (PFN_vkCmdWriteBufferMarkerAMD)load(context, "vkCmdWriteBufferMarkerAMD");
+#endif /* defined(VK_AMD_buffer_marker) */
+#if defined(VK_AMD_display_native_hdr)
+ vkSetLocalDimmingAMD = (PFN_vkSetLocalDimmingAMD)load(context, "vkSetLocalDimmingAMD");
+#endif /* defined(VK_AMD_display_native_hdr) */
+#if defined(VK_AMD_draw_indirect_count)
+ vkCmdDrawIndexedIndirectCountAMD = (PFN_vkCmdDrawIndexedIndirectCountAMD)load(context, "vkCmdDrawIndexedIndirectCountAMD");
+ vkCmdDrawIndirectCountAMD = (PFN_vkCmdDrawIndirectCountAMD)load(context, "vkCmdDrawIndirectCountAMD");
+#endif /* defined(VK_AMD_draw_indirect_count) */
+#if defined(VK_AMD_shader_info)
+ vkGetShaderInfoAMD = (PFN_vkGetShaderInfoAMD)load(context, "vkGetShaderInfoAMD");
+#endif /* defined(VK_AMD_shader_info) */
+#if defined(VK_ANDROID_external_memory_android_hardware_buffer)
+ vkGetAndroidHardwareBufferPropertiesANDROID = (PFN_vkGetAndroidHardwareBufferPropertiesANDROID)load(context, "vkGetAndroidHardwareBufferPropertiesANDROID");
+ vkGetMemoryAndroidHardwareBufferANDROID = (PFN_vkGetMemoryAndroidHardwareBufferANDROID)load(context, "vkGetMemoryAndroidHardwareBufferANDROID");
+#endif /* defined(VK_ANDROID_external_memory_android_hardware_buffer) */
+#if defined(VK_EXT_buffer_device_address)
+ vkGetBufferDeviceAddressEXT = (PFN_vkGetBufferDeviceAddressEXT)load(context, "vkGetBufferDeviceAddressEXT");
+#endif /* defined(VK_EXT_buffer_device_address) */
+#if defined(VK_EXT_calibrated_timestamps)
+ vkGetCalibratedTimestampsEXT = (PFN_vkGetCalibratedTimestampsEXT)load(context, "vkGetCalibratedTimestampsEXT");
+#endif /* defined(VK_EXT_calibrated_timestamps) */
+#if defined(VK_EXT_color_write_enable)
+ vkCmdSetColorWriteEnableEXT = (PFN_vkCmdSetColorWriteEnableEXT)load(context, "vkCmdSetColorWriteEnableEXT");
+#endif /* defined(VK_EXT_color_write_enable) */
+#if defined(VK_EXT_conditional_rendering)
+ vkCmdBeginConditionalRenderingEXT = (PFN_vkCmdBeginConditionalRenderingEXT)load(context, "vkCmdBeginConditionalRenderingEXT");
+ vkCmdEndConditionalRenderingEXT = (PFN_vkCmdEndConditionalRenderingEXT)load(context, "vkCmdEndConditionalRenderingEXT");
+#endif /* defined(VK_EXT_conditional_rendering) */
+#if defined(VK_EXT_debug_marker)
+ vkCmdDebugMarkerBeginEXT = (PFN_vkCmdDebugMarkerBeginEXT)load(context, "vkCmdDebugMarkerBeginEXT");
+ vkCmdDebugMarkerEndEXT = (PFN_vkCmdDebugMarkerEndEXT)load(context, "vkCmdDebugMarkerEndEXT");
+ vkCmdDebugMarkerInsertEXT = (PFN_vkCmdDebugMarkerInsertEXT)load(context, "vkCmdDebugMarkerInsertEXT");
+ vkDebugMarkerSetObjectNameEXT = (PFN_vkDebugMarkerSetObjectNameEXT)load(context, "vkDebugMarkerSetObjectNameEXT");
+ vkDebugMarkerSetObjectTagEXT = (PFN_vkDebugMarkerSetObjectTagEXT)load(context, "vkDebugMarkerSetObjectTagEXT");
+#endif /* defined(VK_EXT_debug_marker) */
+#if defined(VK_EXT_discard_rectangles)
+ vkCmdSetDiscardRectangleEXT = (PFN_vkCmdSetDiscardRectangleEXT)load(context, "vkCmdSetDiscardRectangleEXT");
+#endif /* defined(VK_EXT_discard_rectangles) */
+#if defined(VK_EXT_display_control)
+ vkDisplayPowerControlEXT = (PFN_vkDisplayPowerControlEXT)load(context, "vkDisplayPowerControlEXT");
+ vkGetSwapchainCounterEXT = (PFN_vkGetSwapchainCounterEXT)load(context, "vkGetSwapchainCounterEXT");
+ vkRegisterDeviceEventEXT = (PFN_vkRegisterDeviceEventEXT)load(context, "vkRegisterDeviceEventEXT");
+ vkRegisterDisplayEventEXT = (PFN_vkRegisterDisplayEventEXT)load(context, "vkRegisterDisplayEventEXT");
+#endif /* defined(VK_EXT_display_control) */
+#if defined(VK_EXT_extended_dynamic_state)
+ vkCmdBindVertexBuffers2EXT = (PFN_vkCmdBindVertexBuffers2EXT)load(context, "vkCmdBindVertexBuffers2EXT");
+ vkCmdSetCullModeEXT = (PFN_vkCmdSetCullModeEXT)load(context, "vkCmdSetCullModeEXT");
+ vkCmdSetDepthBoundsTestEnableEXT = (PFN_vkCmdSetDepthBoundsTestEnableEXT)load(context, "vkCmdSetDepthBoundsTestEnableEXT");
+ vkCmdSetDepthCompareOpEXT = (PFN_vkCmdSetDepthCompareOpEXT)load(context, "vkCmdSetDepthCompareOpEXT");
+ vkCmdSetDepthTestEnableEXT = (PFN_vkCmdSetDepthTestEnableEXT)load(context, "vkCmdSetDepthTestEnableEXT");
+ vkCmdSetDepthWriteEnableEXT = (PFN_vkCmdSetDepthWriteEnableEXT)load(context, "vkCmdSetDepthWriteEnableEXT");
+ vkCmdSetFrontFaceEXT = (PFN_vkCmdSetFrontFaceEXT)load(context, "vkCmdSetFrontFaceEXT");
+ vkCmdSetPrimitiveTopologyEXT = (PFN_vkCmdSetPrimitiveTopologyEXT)load(context, "vkCmdSetPrimitiveTopologyEXT");
+ vkCmdSetScissorWithCountEXT = (PFN_vkCmdSetScissorWithCountEXT)load(context, "vkCmdSetScissorWithCountEXT");
+ vkCmdSetStencilOpEXT = (PFN_vkCmdSetStencilOpEXT)load(context, "vkCmdSetStencilOpEXT");
+ vkCmdSetStencilTestEnableEXT = (PFN_vkCmdSetStencilTestEnableEXT)load(context, "vkCmdSetStencilTestEnableEXT");
+ vkCmdSetViewportWithCountEXT = (PFN_vkCmdSetViewportWithCountEXT)load(context, "vkCmdSetViewportWithCountEXT");
+#endif /* defined(VK_EXT_extended_dynamic_state) */
+#if defined(VK_EXT_extended_dynamic_state2)
+ vkCmdSetDepthBiasEnableEXT = (PFN_vkCmdSetDepthBiasEnableEXT)load(context, "vkCmdSetDepthBiasEnableEXT");
+ vkCmdSetLogicOpEXT = (PFN_vkCmdSetLogicOpEXT)load(context, "vkCmdSetLogicOpEXT");
+ vkCmdSetPatchControlPointsEXT = (PFN_vkCmdSetPatchControlPointsEXT)load(context, "vkCmdSetPatchControlPointsEXT");
+ vkCmdSetPrimitiveRestartEnableEXT = (PFN_vkCmdSetPrimitiveRestartEnableEXT)load(context, "vkCmdSetPrimitiveRestartEnableEXT");
+ vkCmdSetRasterizerDiscardEnableEXT = (PFN_vkCmdSetRasterizerDiscardEnableEXT)load(context, "vkCmdSetRasterizerDiscardEnableEXT");
+#endif /* defined(VK_EXT_extended_dynamic_state2) */
+#if defined(VK_EXT_external_memory_host)
+ vkGetMemoryHostPointerPropertiesEXT = (PFN_vkGetMemoryHostPointerPropertiesEXT)load(context, "vkGetMemoryHostPointerPropertiesEXT");
+#endif /* defined(VK_EXT_external_memory_host) */
+#if defined(VK_EXT_full_screen_exclusive)
+ vkAcquireFullScreenExclusiveModeEXT = (PFN_vkAcquireFullScreenExclusiveModeEXT)load(context, "vkAcquireFullScreenExclusiveModeEXT");
+ vkReleaseFullScreenExclusiveModeEXT = (PFN_vkReleaseFullScreenExclusiveModeEXT)load(context, "vkReleaseFullScreenExclusiveModeEXT");
+#endif /* defined(VK_EXT_full_screen_exclusive) */
+#if defined(VK_EXT_hdr_metadata)
+ vkSetHdrMetadataEXT = (PFN_vkSetHdrMetadataEXT)load(context, "vkSetHdrMetadataEXT");
+#endif /* defined(VK_EXT_hdr_metadata) */
+#if defined(VK_EXT_host_query_reset)
+ vkResetQueryPoolEXT = (PFN_vkResetQueryPoolEXT)load(context, "vkResetQueryPoolEXT");
+#endif /* defined(VK_EXT_host_query_reset) */
+#if defined(VK_EXT_image_drm_format_modifier)
+ vkGetImageDrmFormatModifierPropertiesEXT = (PFN_vkGetImageDrmFormatModifierPropertiesEXT)load(context, "vkGetImageDrmFormatModifierPropertiesEXT");
+#endif /* defined(VK_EXT_image_drm_format_modifier) */
+#if defined(VK_EXT_line_rasterization)
+ vkCmdSetLineStippleEXT = (PFN_vkCmdSetLineStippleEXT)load(context, "vkCmdSetLineStippleEXT");
+#endif /* defined(VK_EXT_line_rasterization) */
+#if defined(VK_EXT_multi_draw)
+ vkCmdDrawMultiEXT = (PFN_vkCmdDrawMultiEXT)load(context, "vkCmdDrawMultiEXT");
+ vkCmdDrawMultiIndexedEXT = (PFN_vkCmdDrawMultiIndexedEXT)load(context, "vkCmdDrawMultiIndexedEXT");
+#endif /* defined(VK_EXT_multi_draw) */
+#if defined(VK_EXT_private_data)
+ vkCreatePrivateDataSlotEXT = (PFN_vkCreatePrivateDataSlotEXT)load(context, "vkCreatePrivateDataSlotEXT");
+ vkDestroyPrivateDataSlotEXT = (PFN_vkDestroyPrivateDataSlotEXT)load(context, "vkDestroyPrivateDataSlotEXT");
+ vkGetPrivateDataEXT = (PFN_vkGetPrivateDataEXT)load(context, "vkGetPrivateDataEXT");
+ vkSetPrivateDataEXT = (PFN_vkSetPrivateDataEXT)load(context, "vkSetPrivateDataEXT");
+#endif /* defined(VK_EXT_private_data) */
+#if defined(VK_EXT_sample_locations)
+ vkCmdSetSampleLocationsEXT = (PFN_vkCmdSetSampleLocationsEXT)load(context, "vkCmdSetSampleLocationsEXT");
+#endif /* defined(VK_EXT_sample_locations) */
+#if defined(VK_EXT_transform_feedback)
+ vkCmdBeginQueryIndexedEXT = (PFN_vkCmdBeginQueryIndexedEXT)load(context, "vkCmdBeginQueryIndexedEXT");
+ vkCmdBeginTransformFeedbackEXT = (PFN_vkCmdBeginTransformFeedbackEXT)load(context, "vkCmdBeginTransformFeedbackEXT");
+ vkCmdBindTransformFeedbackBuffersEXT = (PFN_vkCmdBindTransformFeedbackBuffersEXT)load(context, "vkCmdBindTransformFeedbackBuffersEXT");
+ vkCmdDrawIndirectByteCountEXT = (PFN_vkCmdDrawIndirectByteCountEXT)load(context, "vkCmdDrawIndirectByteCountEXT");
+ vkCmdEndQueryIndexedEXT = (PFN_vkCmdEndQueryIndexedEXT)load(context, "vkCmdEndQueryIndexedEXT");
+ vkCmdEndTransformFeedbackEXT = (PFN_vkCmdEndTransformFeedbackEXT)load(context, "vkCmdEndTransformFeedbackEXT");
+#endif /* defined(VK_EXT_transform_feedback) */
+#if defined(VK_EXT_validation_cache)
+ vkCreateValidationCacheEXT = (PFN_vkCreateValidationCacheEXT)load(context, "vkCreateValidationCacheEXT");
+ vkDestroyValidationCacheEXT = (PFN_vkDestroyValidationCacheEXT)load(context, "vkDestroyValidationCacheEXT");
+ vkGetValidationCacheDataEXT = (PFN_vkGetValidationCacheDataEXT)load(context, "vkGetValidationCacheDataEXT");
+ vkMergeValidationCachesEXT = (PFN_vkMergeValidationCachesEXT)load(context, "vkMergeValidationCachesEXT");
+#endif /* defined(VK_EXT_validation_cache) */
+#if defined(VK_EXT_vertex_input_dynamic_state)
+ vkCmdSetVertexInputEXT = (PFN_vkCmdSetVertexInputEXT)load(context, "vkCmdSetVertexInputEXT");
+#endif /* defined(VK_EXT_vertex_input_dynamic_state) */
+#if defined(VK_FUCHSIA_external_memory)
+ vkGetMemoryZirconHandleFUCHSIA = (PFN_vkGetMemoryZirconHandleFUCHSIA)load(context, "vkGetMemoryZirconHandleFUCHSIA");
+ vkGetMemoryZirconHandlePropertiesFUCHSIA = (PFN_vkGetMemoryZirconHandlePropertiesFUCHSIA)load(context, "vkGetMemoryZirconHandlePropertiesFUCHSIA");
+#endif /* defined(VK_FUCHSIA_external_memory) */
+#if defined(VK_FUCHSIA_external_semaphore)
+ vkGetSemaphoreZirconHandleFUCHSIA = (PFN_vkGetSemaphoreZirconHandleFUCHSIA)load(context, "vkGetSemaphoreZirconHandleFUCHSIA");
+ vkImportSemaphoreZirconHandleFUCHSIA = (PFN_vkImportSemaphoreZirconHandleFUCHSIA)load(context, "vkImportSemaphoreZirconHandleFUCHSIA");
+#endif /* defined(VK_FUCHSIA_external_semaphore) */
+#if defined(VK_GOOGLE_display_timing)
+ vkGetPastPresentationTimingGOOGLE = (PFN_vkGetPastPresentationTimingGOOGLE)load(context, "vkGetPastPresentationTimingGOOGLE");
+ vkGetRefreshCycleDurationGOOGLE = (PFN_vkGetRefreshCycleDurationGOOGLE)load(context, "vkGetRefreshCycleDurationGOOGLE");
+#endif /* defined(VK_GOOGLE_display_timing) */
+#if defined(VK_HUAWEI_subpass_shading)
+ vkCmdSubpassShadingHUAWEI = (PFN_vkCmdSubpassShadingHUAWEI)load(context, "vkCmdSubpassShadingHUAWEI");
+ vkGetSubpassShadingMaxWorkgroupSizeHUAWEI = (PFN_vkGetSubpassShadingMaxWorkgroupSizeHUAWEI)load(context, "vkGetSubpassShadingMaxWorkgroupSizeHUAWEI");
+#endif /* defined(VK_HUAWEI_subpass_shading) */
+#if defined(VK_INTEL_performance_query)
+ vkAcquirePerformanceConfigurationINTEL = (PFN_vkAcquirePerformanceConfigurationINTEL)load(context, "vkAcquirePerformanceConfigurationINTEL");
+ vkCmdSetPerformanceMarkerINTEL = (PFN_vkCmdSetPerformanceMarkerINTEL)load(context, "vkCmdSetPerformanceMarkerINTEL");
+ vkCmdSetPerformanceOverrideINTEL = (PFN_vkCmdSetPerformanceOverrideINTEL)load(context, "vkCmdSetPerformanceOverrideINTEL");
+ vkCmdSetPerformanceStreamMarkerINTEL = (PFN_vkCmdSetPerformanceStreamMarkerINTEL)load(context, "vkCmdSetPerformanceStreamMarkerINTEL");
+ vkGetPerformanceParameterINTEL = (PFN_vkGetPerformanceParameterINTEL)load(context, "vkGetPerformanceParameterINTEL");
+ vkInitializePerformanceApiINTEL = (PFN_vkInitializePerformanceApiINTEL)load(context, "vkInitializePerformanceApiINTEL");
+ vkQueueSetPerformanceConfigurationINTEL = (PFN_vkQueueSetPerformanceConfigurationINTEL)load(context, "vkQueueSetPerformanceConfigurationINTEL");
+ vkReleasePerformanceConfigurationINTEL = (PFN_vkReleasePerformanceConfigurationINTEL)load(context, "vkReleasePerformanceConfigurationINTEL");
+ vkUninitializePerformanceApiINTEL = (PFN_vkUninitializePerformanceApiINTEL)load(context, "vkUninitializePerformanceApiINTEL");
+#endif /* defined(VK_INTEL_performance_query) */
+#if defined(VK_KHR_acceleration_structure)
+ vkBuildAccelerationStructuresKHR = (PFN_vkBuildAccelerationStructuresKHR)load(context, "vkBuildAccelerationStructuresKHR");
+ vkCmdBuildAccelerationStructuresIndirectKHR = (PFN_vkCmdBuildAccelerationStructuresIndirectKHR)load(context, "vkCmdBuildAccelerationStructuresIndirectKHR");
+ vkCmdBuildAccelerationStructuresKHR = (PFN_vkCmdBuildAccelerationStructuresKHR)load(context, "vkCmdBuildAccelerationStructuresKHR");
+ vkCmdCopyAccelerationStructureKHR = (PFN_vkCmdCopyAccelerationStructureKHR)load(context, "vkCmdCopyAccelerationStructureKHR");
+ vkCmdCopyAccelerationStructureToMemoryKHR = (PFN_vkCmdCopyAccelerationStructureToMemoryKHR)load(context, "vkCmdCopyAccelerationStructureToMemoryKHR");
+ vkCmdCopyMemoryToAccelerationStructureKHR = (PFN_vkCmdCopyMemoryToAccelerationStructureKHR)load(context, "vkCmdCopyMemoryToAccelerationStructureKHR");
+ vkCmdWriteAccelerationStructuresPropertiesKHR = (PFN_vkCmdWriteAccelerationStructuresPropertiesKHR)load(context, "vkCmdWriteAccelerationStructuresPropertiesKHR");
+ vkCopyAccelerationStructureKHR = (PFN_vkCopyAccelerationStructureKHR)load(context, "vkCopyAccelerationStructureKHR");
+ vkCopyAccelerationStructureToMemoryKHR = (PFN_vkCopyAccelerationStructureToMemoryKHR)load(context, "vkCopyAccelerationStructureToMemoryKHR");
+ vkCopyMemoryToAccelerationStructureKHR = (PFN_vkCopyMemoryToAccelerationStructureKHR)load(context, "vkCopyMemoryToAccelerationStructureKHR");
+ vkCreateAccelerationStructureKHR = (PFN_vkCreateAccelerationStructureKHR)load(context, "vkCreateAccelerationStructureKHR");
+ vkDestroyAccelerationStructureKHR = (PFN_vkDestroyAccelerationStructureKHR)load(context, "vkDestroyAccelerationStructureKHR");
+ vkGetAccelerationStructureBuildSizesKHR = (PFN_vkGetAccelerationStructureBuildSizesKHR)load(context, "vkGetAccelerationStructureBuildSizesKHR");
+ vkGetAccelerationStructureDeviceAddressKHR = (PFN_vkGetAccelerationStructureDeviceAddressKHR)load(context, "vkGetAccelerationStructureDeviceAddressKHR");
+ vkGetDeviceAccelerationStructureCompatibilityKHR = (PFN_vkGetDeviceAccelerationStructureCompatibilityKHR)load(context, "vkGetDeviceAccelerationStructureCompatibilityKHR");
+ vkWriteAccelerationStructuresPropertiesKHR = (PFN_vkWriteAccelerationStructuresPropertiesKHR)load(context, "vkWriteAccelerationStructuresPropertiesKHR");
+#endif /* defined(VK_KHR_acceleration_structure) */
+#if defined(VK_KHR_bind_memory2)
+ vkBindBufferMemory2KHR = (PFN_vkBindBufferMemory2KHR)load(context, "vkBindBufferMemory2KHR");
+ vkBindImageMemory2KHR = (PFN_vkBindImageMemory2KHR)load(context, "vkBindImageMemory2KHR");
+#endif /* defined(VK_KHR_bind_memory2) */
+#if defined(VK_KHR_buffer_device_address)
+ vkGetBufferDeviceAddressKHR = (PFN_vkGetBufferDeviceAddressKHR)load(context, "vkGetBufferDeviceAddressKHR");
+ vkGetBufferOpaqueCaptureAddressKHR = (PFN_vkGetBufferOpaqueCaptureAddressKHR)load(context, "vkGetBufferOpaqueCaptureAddressKHR");
+ vkGetDeviceMemoryOpaqueCaptureAddressKHR = (PFN_vkGetDeviceMemoryOpaqueCaptureAddressKHR)load(context, "vkGetDeviceMemoryOpaqueCaptureAddressKHR");
+#endif /* defined(VK_KHR_buffer_device_address) */
+#if defined(VK_KHR_copy_commands2)
+ vkCmdBlitImage2KHR = (PFN_vkCmdBlitImage2KHR)load(context, "vkCmdBlitImage2KHR");
+ vkCmdCopyBuffer2KHR = (PFN_vkCmdCopyBuffer2KHR)load(context, "vkCmdCopyBuffer2KHR");
+ vkCmdCopyBufferToImage2KHR = (PFN_vkCmdCopyBufferToImage2KHR)load(context, "vkCmdCopyBufferToImage2KHR");
+ vkCmdCopyImage2KHR = (PFN_vkCmdCopyImage2KHR)load(context, "vkCmdCopyImage2KHR");
+ vkCmdCopyImageToBuffer2KHR = (PFN_vkCmdCopyImageToBuffer2KHR)load(context, "vkCmdCopyImageToBuffer2KHR");
+ vkCmdResolveImage2KHR = (PFN_vkCmdResolveImage2KHR)load(context, "vkCmdResolveImage2KHR");
+#endif /* defined(VK_KHR_copy_commands2) */
+#if defined(VK_KHR_create_renderpass2)
+ vkCmdBeginRenderPass2KHR = (PFN_vkCmdBeginRenderPass2KHR)load(context, "vkCmdBeginRenderPass2KHR");
+ vkCmdEndRenderPass2KHR = (PFN_vkCmdEndRenderPass2KHR)load(context, "vkCmdEndRenderPass2KHR");
+ vkCmdNextSubpass2KHR = (PFN_vkCmdNextSubpass2KHR)load(context, "vkCmdNextSubpass2KHR");
+ vkCreateRenderPass2KHR = (PFN_vkCreateRenderPass2KHR)load(context, "vkCreateRenderPass2KHR");
+#endif /* defined(VK_KHR_create_renderpass2) */
+#if defined(VK_KHR_deferred_host_operations)
+ vkCreateDeferredOperationKHR = (PFN_vkCreateDeferredOperationKHR)load(context, "vkCreateDeferredOperationKHR");
+ vkDeferredOperationJoinKHR = (PFN_vkDeferredOperationJoinKHR)load(context, "vkDeferredOperationJoinKHR");
+ vkDestroyDeferredOperationKHR = (PFN_vkDestroyDeferredOperationKHR)load(context, "vkDestroyDeferredOperationKHR");
+ vkGetDeferredOperationMaxConcurrencyKHR = (PFN_vkGetDeferredOperationMaxConcurrencyKHR)load(context, "vkGetDeferredOperationMaxConcurrencyKHR");
+ vkGetDeferredOperationResultKHR = (PFN_vkGetDeferredOperationResultKHR)load(context, "vkGetDeferredOperationResultKHR");
+#endif /* defined(VK_KHR_deferred_host_operations) */
+#if defined(VK_KHR_descriptor_update_template)
+ vkCreateDescriptorUpdateTemplateKHR = (PFN_vkCreateDescriptorUpdateTemplateKHR)load(context, "vkCreateDescriptorUpdateTemplateKHR");
+ vkDestroyDescriptorUpdateTemplateKHR = (PFN_vkDestroyDescriptorUpdateTemplateKHR)load(context, "vkDestroyDescriptorUpdateTemplateKHR");
+ vkUpdateDescriptorSetWithTemplateKHR = (PFN_vkUpdateDescriptorSetWithTemplateKHR)load(context, "vkUpdateDescriptorSetWithTemplateKHR");
+#endif /* defined(VK_KHR_descriptor_update_template) */
+#if defined(VK_KHR_device_group)
+ vkCmdDispatchBaseKHR = (PFN_vkCmdDispatchBaseKHR)load(context, "vkCmdDispatchBaseKHR");
+ vkCmdSetDeviceMaskKHR = (PFN_vkCmdSetDeviceMaskKHR)load(context, "vkCmdSetDeviceMaskKHR");
+ vkGetDeviceGroupPeerMemoryFeaturesKHR = (PFN_vkGetDeviceGroupPeerMemoryFeaturesKHR)load(context, "vkGetDeviceGroupPeerMemoryFeaturesKHR");
+#endif /* defined(VK_KHR_device_group) */
+#if defined(VK_KHR_display_swapchain)
+ vkCreateSharedSwapchainsKHR = (PFN_vkCreateSharedSwapchainsKHR)load(context, "vkCreateSharedSwapchainsKHR");
+#endif /* defined(VK_KHR_display_swapchain) */
+#if defined(VK_KHR_draw_indirect_count)
+ vkCmdDrawIndexedIndirectCountKHR = (PFN_vkCmdDrawIndexedIndirectCountKHR)load(context, "vkCmdDrawIndexedIndirectCountKHR");
+ vkCmdDrawIndirectCountKHR = (PFN_vkCmdDrawIndirectCountKHR)load(context, "vkCmdDrawIndirectCountKHR");
+#endif /* defined(VK_KHR_draw_indirect_count) */
+#if defined(VK_KHR_external_fence_fd)
+ vkGetFenceFdKHR = (PFN_vkGetFenceFdKHR)load(context, "vkGetFenceFdKHR");
+ vkImportFenceFdKHR = (PFN_vkImportFenceFdKHR)load(context, "vkImportFenceFdKHR");
+#endif /* defined(VK_KHR_external_fence_fd) */
+#if defined(VK_KHR_external_fence_win32)
+ vkGetFenceWin32HandleKHR = (PFN_vkGetFenceWin32HandleKHR)load(context, "vkGetFenceWin32HandleKHR");
+ vkImportFenceWin32HandleKHR = (PFN_vkImportFenceWin32HandleKHR)load(context, "vkImportFenceWin32HandleKHR");
+#endif /* defined(VK_KHR_external_fence_win32) */
+#if defined(VK_KHR_external_memory_fd)
+ vkGetMemoryFdKHR = (PFN_vkGetMemoryFdKHR)load(context, "vkGetMemoryFdKHR");
+ vkGetMemoryFdPropertiesKHR = (PFN_vkGetMemoryFdPropertiesKHR)load(context, "vkGetMemoryFdPropertiesKHR");
+#endif /* defined(VK_KHR_external_memory_fd) */
+#if defined(VK_KHR_external_memory_win32)
+ vkGetMemoryWin32HandleKHR = (PFN_vkGetMemoryWin32HandleKHR)load(context, "vkGetMemoryWin32HandleKHR");
+ vkGetMemoryWin32HandlePropertiesKHR = (PFN_vkGetMemoryWin32HandlePropertiesKHR)load(context, "vkGetMemoryWin32HandlePropertiesKHR");
+#endif /* defined(VK_KHR_external_memory_win32) */
+#if defined(VK_KHR_external_semaphore_fd)
+ vkGetSemaphoreFdKHR = (PFN_vkGetSemaphoreFdKHR)load(context, "vkGetSemaphoreFdKHR");
+ vkImportSemaphoreFdKHR = (PFN_vkImportSemaphoreFdKHR)load(context, "vkImportSemaphoreFdKHR");
+#endif /* defined(VK_KHR_external_semaphore_fd) */
+#if defined(VK_KHR_external_semaphore_win32)
+ vkGetSemaphoreWin32HandleKHR = (PFN_vkGetSemaphoreWin32HandleKHR)load(context, "vkGetSemaphoreWin32HandleKHR");
+ vkImportSemaphoreWin32HandleKHR = (PFN_vkImportSemaphoreWin32HandleKHR)load(context, "vkImportSemaphoreWin32HandleKHR");
+#endif /* defined(VK_KHR_external_semaphore_win32) */
+#if defined(VK_KHR_fragment_shading_rate)
+ vkCmdSetFragmentShadingRateKHR = (PFN_vkCmdSetFragmentShadingRateKHR)load(context, "vkCmdSetFragmentShadingRateKHR");
+#endif /* defined(VK_KHR_fragment_shading_rate) */
+#if defined(VK_KHR_get_memory_requirements2)
+ vkGetBufferMemoryRequirements2KHR = (PFN_vkGetBufferMemoryRequirements2KHR)load(context, "vkGetBufferMemoryRequirements2KHR");
+ vkGetImageMemoryRequirements2KHR = (PFN_vkGetImageMemoryRequirements2KHR)load(context, "vkGetImageMemoryRequirements2KHR");
+ vkGetImageSparseMemoryRequirements2KHR = (PFN_vkGetImageSparseMemoryRequirements2KHR)load(context, "vkGetImageSparseMemoryRequirements2KHR");
+#endif /* defined(VK_KHR_get_memory_requirements2) */
+#if defined(VK_KHR_maintenance1)
+ vkTrimCommandPoolKHR = (PFN_vkTrimCommandPoolKHR)load(context, "vkTrimCommandPoolKHR");
+#endif /* defined(VK_KHR_maintenance1) */
+#if defined(VK_KHR_maintenance3)
+ vkGetDescriptorSetLayoutSupportKHR = (PFN_vkGetDescriptorSetLayoutSupportKHR)load(context, "vkGetDescriptorSetLayoutSupportKHR");
+#endif /* defined(VK_KHR_maintenance3) */
+#if defined(VK_KHR_performance_query)
+ vkAcquireProfilingLockKHR = (PFN_vkAcquireProfilingLockKHR)load(context, "vkAcquireProfilingLockKHR");
+ vkReleaseProfilingLockKHR = (PFN_vkReleaseProfilingLockKHR)load(context, "vkReleaseProfilingLockKHR");
+#endif /* defined(VK_KHR_performance_query) */
+#if defined(VK_KHR_pipeline_executable_properties)
+ vkGetPipelineExecutableInternalRepresentationsKHR = (PFN_vkGetPipelineExecutableInternalRepresentationsKHR)load(context, "vkGetPipelineExecutableInternalRepresentationsKHR");
+ vkGetPipelineExecutablePropertiesKHR = (PFN_vkGetPipelineExecutablePropertiesKHR)load(context, "vkGetPipelineExecutablePropertiesKHR");
+ vkGetPipelineExecutableStatisticsKHR = (PFN_vkGetPipelineExecutableStatisticsKHR)load(context, "vkGetPipelineExecutableStatisticsKHR");
+#endif /* defined(VK_KHR_pipeline_executable_properties) */
+#if defined(VK_KHR_push_descriptor)
+ vkCmdPushDescriptorSetKHR = (PFN_vkCmdPushDescriptorSetKHR)load(context, "vkCmdPushDescriptorSetKHR");
+#endif /* defined(VK_KHR_push_descriptor) */
+#if defined(VK_KHR_ray_tracing_pipeline)
+ vkCmdSetRayTracingPipelineStackSizeKHR = (PFN_vkCmdSetRayTracingPipelineStackSizeKHR)load(context, "vkCmdSetRayTracingPipelineStackSizeKHR");
+ vkCmdTraceRaysIndirectKHR = (PFN_vkCmdTraceRaysIndirectKHR)load(context, "vkCmdTraceRaysIndirectKHR");
+ vkCmdTraceRaysKHR = (PFN_vkCmdTraceRaysKHR)load(context, "vkCmdTraceRaysKHR");
+ vkCreateRayTracingPipelinesKHR = (PFN_vkCreateRayTracingPipelinesKHR)load(context, "vkCreateRayTracingPipelinesKHR");
+ vkGetRayTracingCaptureReplayShaderGroupHandlesKHR = (PFN_vkGetRayTracingCaptureReplayShaderGroupHandlesKHR)load(context, "vkGetRayTracingCaptureReplayShaderGroupHandlesKHR");
+ vkGetRayTracingShaderGroupHandlesKHR = (PFN_vkGetRayTracingShaderGroupHandlesKHR)load(context, "vkGetRayTracingShaderGroupHandlesKHR");
+ vkGetRayTracingShaderGroupStackSizeKHR = (PFN_vkGetRayTracingShaderGroupStackSizeKHR)load(context, "vkGetRayTracingShaderGroupStackSizeKHR");
+#endif /* defined(VK_KHR_ray_tracing_pipeline) */
+#if defined(VK_KHR_sampler_ycbcr_conversion)
+ vkCreateSamplerYcbcrConversionKHR = (PFN_vkCreateSamplerYcbcrConversionKHR)load(context, "vkCreateSamplerYcbcrConversionKHR");
+ vkDestroySamplerYcbcrConversionKHR = (PFN_vkDestroySamplerYcbcrConversionKHR)load(context, "vkDestroySamplerYcbcrConversionKHR");
+#endif /* defined(VK_KHR_sampler_ycbcr_conversion) */
+#if defined(VK_KHR_shared_presentable_image)
+ vkGetSwapchainStatusKHR = (PFN_vkGetSwapchainStatusKHR)load(context, "vkGetSwapchainStatusKHR");
+#endif /* defined(VK_KHR_shared_presentable_image) */
+#if defined(VK_KHR_swapchain)
+ vkAcquireNextImageKHR = (PFN_vkAcquireNextImageKHR)load(context, "vkAcquireNextImageKHR");
+ vkCreateSwapchainKHR = (PFN_vkCreateSwapchainKHR)load(context, "vkCreateSwapchainKHR");
+ vkDestroySwapchainKHR = (PFN_vkDestroySwapchainKHR)load(context, "vkDestroySwapchainKHR");
+ vkGetSwapchainImagesKHR = (PFN_vkGetSwapchainImagesKHR)load(context, "vkGetSwapchainImagesKHR");
+ vkQueuePresentKHR = (PFN_vkQueuePresentKHR)load(context, "vkQueuePresentKHR");
+#endif /* defined(VK_KHR_swapchain) */
+#if defined(VK_KHR_synchronization2)
+ vkCmdPipelineBarrier2KHR = (PFN_vkCmdPipelineBarrier2KHR)load(context, "vkCmdPipelineBarrier2KHR");
+ vkCmdResetEvent2KHR = (PFN_vkCmdResetEvent2KHR)load(context, "vkCmdResetEvent2KHR");
+ vkCmdSetEvent2KHR = (PFN_vkCmdSetEvent2KHR)load(context, "vkCmdSetEvent2KHR");
+ vkCmdWaitEvents2KHR = (PFN_vkCmdWaitEvents2KHR)load(context, "vkCmdWaitEvents2KHR");
+ vkCmdWriteTimestamp2KHR = (PFN_vkCmdWriteTimestamp2KHR)load(context, "vkCmdWriteTimestamp2KHR");
+ vkQueueSubmit2KHR = (PFN_vkQueueSubmit2KHR)load(context, "vkQueueSubmit2KHR");
+#endif /* defined(VK_KHR_synchronization2) */
+#if defined(VK_KHR_synchronization2) && defined(VK_AMD_buffer_marker)
+ vkCmdWriteBufferMarker2AMD = (PFN_vkCmdWriteBufferMarker2AMD)load(context, "vkCmdWriteBufferMarker2AMD");
+#endif /* defined(VK_KHR_synchronization2) && defined(VK_AMD_buffer_marker) */
+#if defined(VK_KHR_synchronization2) && defined(VK_NV_device_diagnostic_checkpoints)
+ vkGetQueueCheckpointData2NV = (PFN_vkGetQueueCheckpointData2NV)load(context, "vkGetQueueCheckpointData2NV");
+#endif /* defined(VK_KHR_synchronization2) && defined(VK_NV_device_diagnostic_checkpoints) */
+#if defined(VK_KHR_timeline_semaphore)
+ vkGetSemaphoreCounterValueKHR = (PFN_vkGetSemaphoreCounterValueKHR)load(context, "vkGetSemaphoreCounterValueKHR");
+ vkSignalSemaphoreKHR = (PFN_vkSignalSemaphoreKHR)load(context, "vkSignalSemaphoreKHR");
+ vkWaitSemaphoresKHR = (PFN_vkWaitSemaphoresKHR)load(context, "vkWaitSemaphoresKHR");
+#endif /* defined(VK_KHR_timeline_semaphore) */
+#if defined(VK_KHR_video_decode_queue)
+ vkCmdDecodeVideoKHR = (PFN_vkCmdDecodeVideoKHR)load(context, "vkCmdDecodeVideoKHR");
+#endif /* defined(VK_KHR_video_decode_queue) */
+#if defined(VK_KHR_video_encode_queue)
+ vkCmdEncodeVideoKHR = (PFN_vkCmdEncodeVideoKHR)load(context, "vkCmdEncodeVideoKHR");
+#endif /* defined(VK_KHR_video_encode_queue) */
+#if defined(VK_KHR_video_queue)
+ vkBindVideoSessionMemoryKHR = (PFN_vkBindVideoSessionMemoryKHR)load(context, "vkBindVideoSessionMemoryKHR");
+ vkCmdBeginVideoCodingKHR = (PFN_vkCmdBeginVideoCodingKHR)load(context, "vkCmdBeginVideoCodingKHR");
+ vkCmdControlVideoCodingKHR = (PFN_vkCmdControlVideoCodingKHR)load(context, "vkCmdControlVideoCodingKHR");
+ vkCmdEndVideoCodingKHR = (PFN_vkCmdEndVideoCodingKHR)load(context, "vkCmdEndVideoCodingKHR");
+ vkCreateVideoSessionKHR = (PFN_vkCreateVideoSessionKHR)load(context, "vkCreateVideoSessionKHR");
+ vkCreateVideoSessionParametersKHR = (PFN_vkCreateVideoSessionParametersKHR)load(context, "vkCreateVideoSessionParametersKHR");
+ vkDestroyVideoSessionKHR = (PFN_vkDestroyVideoSessionKHR)load(context, "vkDestroyVideoSessionKHR");
+ vkDestroyVideoSessionParametersKHR = (PFN_vkDestroyVideoSessionParametersKHR)load(context, "vkDestroyVideoSessionParametersKHR");
+ vkGetVideoSessionMemoryRequirementsKHR = (PFN_vkGetVideoSessionMemoryRequirementsKHR)load(context, "vkGetVideoSessionMemoryRequirementsKHR");
+ vkUpdateVideoSessionParametersKHR = (PFN_vkUpdateVideoSessionParametersKHR)load(context, "vkUpdateVideoSessionParametersKHR");
+#endif /* defined(VK_KHR_video_queue) */
+#if defined(VK_NVX_binary_import)
+ vkCmdCuLaunchKernelNVX = (PFN_vkCmdCuLaunchKernelNVX)load(context, "vkCmdCuLaunchKernelNVX");
+ vkCreateCuFunctionNVX = (PFN_vkCreateCuFunctionNVX)load(context, "vkCreateCuFunctionNVX");
+ vkCreateCuModuleNVX = (PFN_vkCreateCuModuleNVX)load(context, "vkCreateCuModuleNVX");
+ vkDestroyCuFunctionNVX = (PFN_vkDestroyCuFunctionNVX)load(context, "vkDestroyCuFunctionNVX");
+ vkDestroyCuModuleNVX = (PFN_vkDestroyCuModuleNVX)load(context, "vkDestroyCuModuleNVX");
+#endif /* defined(VK_NVX_binary_import) */
+#if defined(VK_NVX_image_view_handle)
+ vkGetImageViewAddressNVX = (PFN_vkGetImageViewAddressNVX)load(context, "vkGetImageViewAddressNVX");
+ vkGetImageViewHandleNVX = (PFN_vkGetImageViewHandleNVX)load(context, "vkGetImageViewHandleNVX");
+#endif /* defined(VK_NVX_image_view_handle) */
+#if defined(VK_NV_clip_space_w_scaling)
+ vkCmdSetViewportWScalingNV = (PFN_vkCmdSetViewportWScalingNV)load(context, "vkCmdSetViewportWScalingNV");
+#endif /* defined(VK_NV_clip_space_w_scaling) */
+#if defined(VK_NV_device_diagnostic_checkpoints)
+ vkCmdSetCheckpointNV = (PFN_vkCmdSetCheckpointNV)load(context, "vkCmdSetCheckpointNV");
+ vkGetQueueCheckpointDataNV = (PFN_vkGetQueueCheckpointDataNV)load(context, "vkGetQueueCheckpointDataNV");
+#endif /* defined(VK_NV_device_diagnostic_checkpoints) */
+#if defined(VK_NV_device_generated_commands)
+ vkCmdBindPipelineShaderGroupNV = (PFN_vkCmdBindPipelineShaderGroupNV)load(context, "vkCmdBindPipelineShaderGroupNV");
+ vkCmdExecuteGeneratedCommandsNV = (PFN_vkCmdExecuteGeneratedCommandsNV)load(context, "vkCmdExecuteGeneratedCommandsNV");
+ vkCmdPreprocessGeneratedCommandsNV = (PFN_vkCmdPreprocessGeneratedCommandsNV)load(context, "vkCmdPreprocessGeneratedCommandsNV");
+ vkCreateIndirectCommandsLayoutNV = (PFN_vkCreateIndirectCommandsLayoutNV)load(context, "vkCreateIndirectCommandsLayoutNV");
+ vkDestroyIndirectCommandsLayoutNV = (PFN_vkDestroyIndirectCommandsLayoutNV)load(context, "vkDestroyIndirectCommandsLayoutNV");
+ vkGetGeneratedCommandsMemoryRequirementsNV = (PFN_vkGetGeneratedCommandsMemoryRequirementsNV)load(context, "vkGetGeneratedCommandsMemoryRequirementsNV");
+#endif /* defined(VK_NV_device_generated_commands) */
+#if defined(VK_NV_external_memory_win32)
+ vkGetMemoryWin32HandleNV = (PFN_vkGetMemoryWin32HandleNV)load(context, "vkGetMemoryWin32HandleNV");
+#endif /* defined(VK_NV_external_memory_win32) */
+#if defined(VK_NV_fragment_shading_rate_enums)
+ vkCmdSetFragmentShadingRateEnumNV = (PFN_vkCmdSetFragmentShadingRateEnumNV)load(context, "vkCmdSetFragmentShadingRateEnumNV");
+#endif /* defined(VK_NV_fragment_shading_rate_enums) */
+#if defined(VK_NV_mesh_shader)
+ vkCmdDrawMeshTasksIndirectCountNV = (PFN_vkCmdDrawMeshTasksIndirectCountNV)load(context, "vkCmdDrawMeshTasksIndirectCountNV");
+ vkCmdDrawMeshTasksIndirectNV = (PFN_vkCmdDrawMeshTasksIndirectNV)load(context, "vkCmdDrawMeshTasksIndirectNV");
+ vkCmdDrawMeshTasksNV = (PFN_vkCmdDrawMeshTasksNV)load(context, "vkCmdDrawMeshTasksNV");
+#endif /* defined(VK_NV_mesh_shader) */
+#if defined(VK_NV_ray_tracing)
+ vkBindAccelerationStructureMemoryNV = (PFN_vkBindAccelerationStructureMemoryNV)load(context, "vkBindAccelerationStructureMemoryNV");
+ vkCmdBuildAccelerationStructureNV = (PFN_vkCmdBuildAccelerationStructureNV)load(context, "vkCmdBuildAccelerationStructureNV");
+ vkCmdCopyAccelerationStructureNV = (PFN_vkCmdCopyAccelerationStructureNV)load(context, "vkCmdCopyAccelerationStructureNV");
+ vkCmdTraceRaysNV = (PFN_vkCmdTraceRaysNV)load(context, "vkCmdTraceRaysNV");
+ vkCmdWriteAccelerationStructuresPropertiesNV = (PFN_vkCmdWriteAccelerationStructuresPropertiesNV)load(context, "vkCmdWriteAccelerationStructuresPropertiesNV");
+ vkCompileDeferredNV = (PFN_vkCompileDeferredNV)load(context, "vkCompileDeferredNV");
+ vkCreateAccelerationStructureNV = (PFN_vkCreateAccelerationStructureNV)load(context, "vkCreateAccelerationStructureNV");
+ vkCreateRayTracingPipelinesNV = (PFN_vkCreateRayTracingPipelinesNV)load(context, "vkCreateRayTracingPipelinesNV");
+ vkDestroyAccelerationStructureNV = (PFN_vkDestroyAccelerationStructureNV)load(context, "vkDestroyAccelerationStructureNV");
+ vkGetAccelerationStructureHandleNV = (PFN_vkGetAccelerationStructureHandleNV)load(context, "vkGetAccelerationStructureHandleNV");
+ vkGetAccelerationStructureMemoryRequirementsNV = (PFN_vkGetAccelerationStructureMemoryRequirementsNV)load(context, "vkGetAccelerationStructureMemoryRequirementsNV");
+ vkGetRayTracingShaderGroupHandlesNV = (PFN_vkGetRayTracingShaderGroupHandlesNV)load(context, "vkGetRayTracingShaderGroupHandlesNV");
+#endif /* defined(VK_NV_ray_tracing) */
+#if defined(VK_NV_scissor_exclusive)
+ vkCmdSetExclusiveScissorNV = (PFN_vkCmdSetExclusiveScissorNV)load(context, "vkCmdSetExclusiveScissorNV");
+#endif /* defined(VK_NV_scissor_exclusive) */
+#if defined(VK_NV_shading_rate_image)
+ vkCmdBindShadingRateImageNV = (PFN_vkCmdBindShadingRateImageNV)load(context, "vkCmdBindShadingRateImageNV");
+ vkCmdSetCoarseSampleOrderNV = (PFN_vkCmdSetCoarseSampleOrderNV)load(context, "vkCmdSetCoarseSampleOrderNV");
+ vkCmdSetViewportShadingRatePaletteNV = (PFN_vkCmdSetViewportShadingRatePaletteNV)load(context, "vkCmdSetViewportShadingRatePaletteNV");
+#endif /* defined(VK_NV_shading_rate_image) */
+#if (defined(VK_EXT_full_screen_exclusive) && defined(VK_KHR_device_group)) || (defined(VK_EXT_full_screen_exclusive) && defined(VK_VERSION_1_1))
+ vkGetDeviceGroupSurfacePresentModes2EXT = (PFN_vkGetDeviceGroupSurfacePresentModes2EXT)load(context, "vkGetDeviceGroupSurfacePresentModes2EXT");
+#endif /* (defined(VK_EXT_full_screen_exclusive) && defined(VK_KHR_device_group)) || (defined(VK_EXT_full_screen_exclusive) && defined(VK_VERSION_1_1)) */
+#if (defined(VK_KHR_descriptor_update_template) && defined(VK_KHR_push_descriptor)) || (defined(VK_KHR_push_descriptor) && defined(VK_VERSION_1_1)) || (defined(VK_KHR_push_descriptor) && defined(VK_KHR_descriptor_update_template))
+ vkCmdPushDescriptorSetWithTemplateKHR = (PFN_vkCmdPushDescriptorSetWithTemplateKHR)load(context, "vkCmdPushDescriptorSetWithTemplateKHR");
+#endif /* (defined(VK_KHR_descriptor_update_template) && defined(VK_KHR_push_descriptor)) || (defined(VK_KHR_push_descriptor) && defined(VK_VERSION_1_1)) || (defined(VK_KHR_push_descriptor) && defined(VK_KHR_descriptor_update_template)) */
+#if (defined(VK_KHR_device_group) && defined(VK_KHR_surface)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1))
+ vkGetDeviceGroupPresentCapabilitiesKHR = (PFN_vkGetDeviceGroupPresentCapabilitiesKHR)load(context, "vkGetDeviceGroupPresentCapabilitiesKHR");
+ vkGetDeviceGroupSurfacePresentModesKHR = (PFN_vkGetDeviceGroupSurfacePresentModesKHR)load(context, "vkGetDeviceGroupSurfacePresentModesKHR");
+#endif /* (defined(VK_KHR_device_group) && defined(VK_KHR_surface)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1)) */
+#if (defined(VK_KHR_device_group) && defined(VK_KHR_swapchain)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1))
+ vkAcquireNextImage2KHR = (PFN_vkAcquireNextImage2KHR)load(context, "vkAcquireNextImage2KHR");
+#endif /* (defined(VK_KHR_device_group) && defined(VK_KHR_swapchain)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1)) */
+ /* VOLK_GENERATE_LOAD_DEVICE */
+}
+
+static void volkGenLoadDeviceTable(struct VolkDeviceTable* table, void* context, PFN_vkVoidFunction (*load)(void*, const char*))
+{
+ /* VOLK_GENERATE_LOAD_DEVICE_TABLE */
+#if defined(VK_VERSION_1_0)
+ table->vkAllocateCommandBuffers = (PFN_vkAllocateCommandBuffers)load(context, "vkAllocateCommandBuffers");
+ table->vkAllocateDescriptorSets = (PFN_vkAllocateDescriptorSets)load(context, "vkAllocateDescriptorSets");
+ table->vkAllocateMemory = (PFN_vkAllocateMemory)load(context, "vkAllocateMemory");
+ table->vkBeginCommandBuffer = (PFN_vkBeginCommandBuffer)load(context, "vkBeginCommandBuffer");
+ table->vkBindBufferMemory = (PFN_vkBindBufferMemory)load(context, "vkBindBufferMemory");
+ table->vkBindImageMemory = (PFN_vkBindImageMemory)load(context, "vkBindImageMemory");
+ table->vkCmdBeginQuery = (PFN_vkCmdBeginQuery)load(context, "vkCmdBeginQuery");
+ table->vkCmdBeginRenderPass = (PFN_vkCmdBeginRenderPass)load(context, "vkCmdBeginRenderPass");
+ table->vkCmdBindDescriptorSets = (PFN_vkCmdBindDescriptorSets)load(context, "vkCmdBindDescriptorSets");
+ table->vkCmdBindIndexBuffer = (PFN_vkCmdBindIndexBuffer)load(context, "vkCmdBindIndexBuffer");
+ table->vkCmdBindPipeline = (PFN_vkCmdBindPipeline)load(context, "vkCmdBindPipeline");
+ table->vkCmdBindVertexBuffers = (PFN_vkCmdBindVertexBuffers)load(context, "vkCmdBindVertexBuffers");
+ table->vkCmdBlitImage = (PFN_vkCmdBlitImage)load(context, "vkCmdBlitImage");
+ table->vkCmdClearAttachments = (PFN_vkCmdClearAttachments)load(context, "vkCmdClearAttachments");
+ table->vkCmdClearColorImage = (PFN_vkCmdClearColorImage)load(context, "vkCmdClearColorImage");
+ table->vkCmdClearDepthStencilImage = (PFN_vkCmdClearDepthStencilImage)load(context, "vkCmdClearDepthStencilImage");
+ table->vkCmdCopyBuffer = (PFN_vkCmdCopyBuffer)load(context, "vkCmdCopyBuffer");
+ table->vkCmdCopyBufferToImage = (PFN_vkCmdCopyBufferToImage)load(context, "vkCmdCopyBufferToImage");
+ table->vkCmdCopyImage = (PFN_vkCmdCopyImage)load(context, "vkCmdCopyImage");
+ table->vkCmdCopyImageToBuffer = (PFN_vkCmdCopyImageToBuffer)load(context, "vkCmdCopyImageToBuffer");
+ table->vkCmdCopyQueryPoolResults = (PFN_vkCmdCopyQueryPoolResults)load(context, "vkCmdCopyQueryPoolResults");
+ table->vkCmdDispatch = (PFN_vkCmdDispatch)load(context, "vkCmdDispatch");
+ table->vkCmdDispatchIndirect = (PFN_vkCmdDispatchIndirect)load(context, "vkCmdDispatchIndirect");
+ table->vkCmdDraw = (PFN_vkCmdDraw)load(context, "vkCmdDraw");
+ table->vkCmdDrawIndexed = (PFN_vkCmdDrawIndexed)load(context, "vkCmdDrawIndexed");
+ table->vkCmdDrawIndexedIndirect = (PFN_vkCmdDrawIndexedIndirect)load(context, "vkCmdDrawIndexedIndirect");
+ table->vkCmdDrawIndirect = (PFN_vkCmdDrawIndirect)load(context, "vkCmdDrawIndirect");
+ table->vkCmdEndQuery = (PFN_vkCmdEndQuery)load(context, "vkCmdEndQuery");
+ table->vkCmdEndRenderPass = (PFN_vkCmdEndRenderPass)load(context, "vkCmdEndRenderPass");
+ table->vkCmdExecuteCommands = (PFN_vkCmdExecuteCommands)load(context, "vkCmdExecuteCommands");
+ table->vkCmdFillBuffer = (PFN_vkCmdFillBuffer)load(context, "vkCmdFillBuffer");
+ table->vkCmdNextSubpass = (PFN_vkCmdNextSubpass)load(context, "vkCmdNextSubpass");
+ table->vkCmdPipelineBarrier = (PFN_vkCmdPipelineBarrier)load(context, "vkCmdPipelineBarrier");
+ table->vkCmdPushConstants = (PFN_vkCmdPushConstants)load(context, "vkCmdPushConstants");
+ table->vkCmdResetEvent = (PFN_vkCmdResetEvent)load(context, "vkCmdResetEvent");
+ table->vkCmdResetQueryPool = (PFN_vkCmdResetQueryPool)load(context, "vkCmdResetQueryPool");
+ table->vkCmdResolveImage = (PFN_vkCmdResolveImage)load(context, "vkCmdResolveImage");
+ table->vkCmdSetBlendConstants = (PFN_vkCmdSetBlendConstants)load(context, "vkCmdSetBlendConstants");
+ table->vkCmdSetDepthBias = (PFN_vkCmdSetDepthBias)load(context, "vkCmdSetDepthBias");
+ table->vkCmdSetDepthBounds = (PFN_vkCmdSetDepthBounds)load(context, "vkCmdSetDepthBounds");
+ table->vkCmdSetEvent = (PFN_vkCmdSetEvent)load(context, "vkCmdSetEvent");
+ table->vkCmdSetLineWidth = (PFN_vkCmdSetLineWidth)load(context, "vkCmdSetLineWidth");
+ table->vkCmdSetScissor = (PFN_vkCmdSetScissor)load(context, "vkCmdSetScissor");
+ table->vkCmdSetStencilCompareMask = (PFN_vkCmdSetStencilCompareMask)load(context, "vkCmdSetStencilCompareMask");
+ table->vkCmdSetStencilReference = (PFN_vkCmdSetStencilReference)load(context, "vkCmdSetStencilReference");
+ table->vkCmdSetStencilWriteMask = (PFN_vkCmdSetStencilWriteMask)load(context, "vkCmdSetStencilWriteMask");
+ table->vkCmdSetViewport = (PFN_vkCmdSetViewport)load(context, "vkCmdSetViewport");
+ table->vkCmdUpdateBuffer = (PFN_vkCmdUpdateBuffer)load(context, "vkCmdUpdateBuffer");
+ table->vkCmdWaitEvents = (PFN_vkCmdWaitEvents)load(context, "vkCmdWaitEvents");
+ table->vkCmdWriteTimestamp = (PFN_vkCmdWriteTimestamp)load(context, "vkCmdWriteTimestamp");
+ table->vkCreateBuffer = (PFN_vkCreateBuffer)load(context, "vkCreateBuffer");
+ table->vkCreateBufferView = (PFN_vkCreateBufferView)load(context, "vkCreateBufferView");
+ table->vkCreateCommandPool = (PFN_vkCreateCommandPool)load(context, "vkCreateCommandPool");
+ table->vkCreateComputePipelines = (PFN_vkCreateComputePipelines)load(context, "vkCreateComputePipelines");
+ table->vkCreateDescriptorPool = (PFN_vkCreateDescriptorPool)load(context, "vkCreateDescriptorPool");
+ table->vkCreateDescriptorSetLayout = (PFN_vkCreateDescriptorSetLayout)load(context, "vkCreateDescriptorSetLayout");
+ table->vkCreateEvent = (PFN_vkCreateEvent)load(context, "vkCreateEvent");
+ table->vkCreateFence = (PFN_vkCreateFence)load(context, "vkCreateFence");
+ table->vkCreateFramebuffer = (PFN_vkCreateFramebuffer)load(context, "vkCreateFramebuffer");
+ table->vkCreateGraphicsPipelines = (PFN_vkCreateGraphicsPipelines)load(context, "vkCreateGraphicsPipelines");
+ table->vkCreateImage = (PFN_vkCreateImage)load(context, "vkCreateImage");
+ table->vkCreateImageView = (PFN_vkCreateImageView)load(context, "vkCreateImageView");
+ table->vkCreatePipelineCache = (PFN_vkCreatePipelineCache)load(context, "vkCreatePipelineCache");
+ table->vkCreatePipelineLayout = (PFN_vkCreatePipelineLayout)load(context, "vkCreatePipelineLayout");
+ table->vkCreateQueryPool = (PFN_vkCreateQueryPool)load(context, "vkCreateQueryPool");
+ table->vkCreateRenderPass = (PFN_vkCreateRenderPass)load(context, "vkCreateRenderPass");
+ table->vkCreateSampler = (PFN_vkCreateSampler)load(context, "vkCreateSampler");
+ table->vkCreateSemaphore = (PFN_vkCreateSemaphore)load(context, "vkCreateSemaphore");
+ table->vkCreateShaderModule = (PFN_vkCreateShaderModule)load(context, "vkCreateShaderModule");
+ table->vkDestroyBuffer = (PFN_vkDestroyBuffer)load(context, "vkDestroyBuffer");
+ table->vkDestroyBufferView = (PFN_vkDestroyBufferView)load(context, "vkDestroyBufferView");
+ table->vkDestroyCommandPool = (PFN_vkDestroyCommandPool)load(context, "vkDestroyCommandPool");
+ table->vkDestroyDescriptorPool = (PFN_vkDestroyDescriptorPool)load(context, "vkDestroyDescriptorPool");
+ table->vkDestroyDescriptorSetLayout = (PFN_vkDestroyDescriptorSetLayout)load(context, "vkDestroyDescriptorSetLayout");
+ table->vkDestroyDevice = (PFN_vkDestroyDevice)load(context, "vkDestroyDevice");
+ table->vkDestroyEvent = (PFN_vkDestroyEvent)load(context, "vkDestroyEvent");
+ table->vkDestroyFence = (PFN_vkDestroyFence)load(context, "vkDestroyFence");
+ table->vkDestroyFramebuffer = (PFN_vkDestroyFramebuffer)load(context, "vkDestroyFramebuffer");
+ table->vkDestroyImage = (PFN_vkDestroyImage)load(context, "vkDestroyImage");
+ table->vkDestroyImageView = (PFN_vkDestroyImageView)load(context, "vkDestroyImageView");
+ table->vkDestroyPipeline = (PFN_vkDestroyPipeline)load(context, "vkDestroyPipeline");
+ table->vkDestroyPipelineCache = (PFN_vkDestroyPipelineCache)load(context, "vkDestroyPipelineCache");
+ table->vkDestroyPipelineLayout = (PFN_vkDestroyPipelineLayout)load(context, "vkDestroyPipelineLayout");
+ table->vkDestroyQueryPool = (PFN_vkDestroyQueryPool)load(context, "vkDestroyQueryPool");
+ table->vkDestroyRenderPass = (PFN_vkDestroyRenderPass)load(context, "vkDestroyRenderPass");
+ table->vkDestroySampler = (PFN_vkDestroySampler)load(context, "vkDestroySampler");
+ table->vkDestroySemaphore = (PFN_vkDestroySemaphore)load(context, "vkDestroySemaphore");
+ table->vkDestroyShaderModule = (PFN_vkDestroyShaderModule)load(context, "vkDestroyShaderModule");
+ table->vkDeviceWaitIdle = (PFN_vkDeviceWaitIdle)load(context, "vkDeviceWaitIdle");
+ table->vkEndCommandBuffer = (PFN_vkEndCommandBuffer)load(context, "vkEndCommandBuffer");
+ table->vkFlushMappedMemoryRanges = (PFN_vkFlushMappedMemoryRanges)load(context, "vkFlushMappedMemoryRanges");
+ table->vkFreeCommandBuffers = (PFN_vkFreeCommandBuffers)load(context, "vkFreeCommandBuffers");
+ table->vkFreeDescriptorSets = (PFN_vkFreeDescriptorSets)load(context, "vkFreeDescriptorSets");
+ table->vkFreeMemory = (PFN_vkFreeMemory)load(context, "vkFreeMemory");
+ table->vkGetBufferMemoryRequirements = (PFN_vkGetBufferMemoryRequirements)load(context, "vkGetBufferMemoryRequirements");
+ table->vkGetDeviceMemoryCommitment = (PFN_vkGetDeviceMemoryCommitment)load(context, "vkGetDeviceMemoryCommitment");
+ table->vkGetDeviceQueue = (PFN_vkGetDeviceQueue)load(context, "vkGetDeviceQueue");
+ table->vkGetEventStatus = (PFN_vkGetEventStatus)load(context, "vkGetEventStatus");
+ table->vkGetFenceStatus = (PFN_vkGetFenceStatus)load(context, "vkGetFenceStatus");
+ table->vkGetImageMemoryRequirements = (PFN_vkGetImageMemoryRequirements)load(context, "vkGetImageMemoryRequirements");
+ table->vkGetImageSparseMemoryRequirements = (PFN_vkGetImageSparseMemoryRequirements)load(context, "vkGetImageSparseMemoryRequirements");
+ table->vkGetImageSubresourceLayout = (PFN_vkGetImageSubresourceLayout)load(context, "vkGetImageSubresourceLayout");
+ table->vkGetPipelineCacheData = (PFN_vkGetPipelineCacheData)load(context, "vkGetPipelineCacheData");
+ table->vkGetQueryPoolResults = (PFN_vkGetQueryPoolResults)load(context, "vkGetQueryPoolResults");
+ table->vkGetRenderAreaGranularity = (PFN_vkGetRenderAreaGranularity)load(context, "vkGetRenderAreaGranularity");
+ table->vkInvalidateMappedMemoryRanges = (PFN_vkInvalidateMappedMemoryRanges)load(context, "vkInvalidateMappedMemoryRanges");
+ table->vkMapMemory = (PFN_vkMapMemory)load(context, "vkMapMemory");
+ table->vkMergePipelineCaches = (PFN_vkMergePipelineCaches)load(context, "vkMergePipelineCaches");
+ table->vkQueueBindSparse = (PFN_vkQueueBindSparse)load(context, "vkQueueBindSparse");
+ table->vkQueueSubmit = (PFN_vkQueueSubmit)load(context, "vkQueueSubmit");
+ table->vkQueueWaitIdle = (PFN_vkQueueWaitIdle)load(context, "vkQueueWaitIdle");
+ table->vkResetCommandBuffer = (PFN_vkResetCommandBuffer)load(context, "vkResetCommandBuffer");
+ table->vkResetCommandPool = (PFN_vkResetCommandPool)load(context, "vkResetCommandPool");
+ table->vkResetDescriptorPool = (PFN_vkResetDescriptorPool)load(context, "vkResetDescriptorPool");
+ table->vkResetEvent = (PFN_vkResetEvent)load(context, "vkResetEvent");
+ table->vkResetFences = (PFN_vkResetFences)load(context, "vkResetFences");
+ table->vkSetEvent = (PFN_vkSetEvent)load(context, "vkSetEvent");
+ table->vkUnmapMemory = (PFN_vkUnmapMemory)load(context, "vkUnmapMemory");
+ table->vkUpdateDescriptorSets = (PFN_vkUpdateDescriptorSets)load(context, "vkUpdateDescriptorSets");
+ table->vkWaitForFences = (PFN_vkWaitForFences)load(context, "vkWaitForFences");
+#endif /* defined(VK_VERSION_1_0) */
+#if defined(VK_VERSION_1_1)
+ table->vkBindBufferMemory2 = (PFN_vkBindBufferMemory2)load(context, "vkBindBufferMemory2");
+ table->vkBindImageMemory2 = (PFN_vkBindImageMemory2)load(context, "vkBindImageMemory2");
+ table->vkCmdDispatchBase = (PFN_vkCmdDispatchBase)load(context, "vkCmdDispatchBase");
+ table->vkCmdSetDeviceMask = (PFN_vkCmdSetDeviceMask)load(context, "vkCmdSetDeviceMask");
+ table->vkCreateDescriptorUpdateTemplate = (PFN_vkCreateDescriptorUpdateTemplate)load(context, "vkCreateDescriptorUpdateTemplate");
+ table->vkCreateSamplerYcbcrConversion = (PFN_vkCreateSamplerYcbcrConversion)load(context, "vkCreateSamplerYcbcrConversion");
+ table->vkDestroyDescriptorUpdateTemplate = (PFN_vkDestroyDescriptorUpdateTemplate)load(context, "vkDestroyDescriptorUpdateTemplate");
+ table->vkDestroySamplerYcbcrConversion = (PFN_vkDestroySamplerYcbcrConversion)load(context, "vkDestroySamplerYcbcrConversion");
+ table->vkGetBufferMemoryRequirements2 = (PFN_vkGetBufferMemoryRequirements2)load(context, "vkGetBufferMemoryRequirements2");
+ table->vkGetDescriptorSetLayoutSupport = (PFN_vkGetDescriptorSetLayoutSupport)load(context, "vkGetDescriptorSetLayoutSupport");
+ table->vkGetDeviceGroupPeerMemoryFeatures = (PFN_vkGetDeviceGroupPeerMemoryFeatures)load(context, "vkGetDeviceGroupPeerMemoryFeatures");
+ table->vkGetDeviceQueue2 = (PFN_vkGetDeviceQueue2)load(context, "vkGetDeviceQueue2");
+ table->vkGetImageMemoryRequirements2 = (PFN_vkGetImageMemoryRequirements2)load(context, "vkGetImageMemoryRequirements2");
+ table->vkGetImageSparseMemoryRequirements2 = (PFN_vkGetImageSparseMemoryRequirements2)load(context, "vkGetImageSparseMemoryRequirements2");
+ table->vkTrimCommandPool = (PFN_vkTrimCommandPool)load(context, "vkTrimCommandPool");
+ table->vkUpdateDescriptorSetWithTemplate = (PFN_vkUpdateDescriptorSetWithTemplate)load(context, "vkUpdateDescriptorSetWithTemplate");
+#endif /* defined(VK_VERSION_1_1) */
+#if defined(VK_VERSION_1_2)
+ table->vkCmdBeginRenderPass2 = (PFN_vkCmdBeginRenderPass2)load(context, "vkCmdBeginRenderPass2");
+ table->vkCmdDrawIndexedIndirectCount = (PFN_vkCmdDrawIndexedIndirectCount)load(context, "vkCmdDrawIndexedIndirectCount");
+ table->vkCmdDrawIndirectCount = (PFN_vkCmdDrawIndirectCount)load(context, "vkCmdDrawIndirectCount");
+ table->vkCmdEndRenderPass2 = (PFN_vkCmdEndRenderPass2)load(context, "vkCmdEndRenderPass2");
+ table->vkCmdNextSubpass2 = (PFN_vkCmdNextSubpass2)load(context, "vkCmdNextSubpass2");
+ table->vkCreateRenderPass2 = (PFN_vkCreateRenderPass2)load(context, "vkCreateRenderPass2");
+ table->vkGetBufferDeviceAddress = (PFN_vkGetBufferDeviceAddress)load(context, "vkGetBufferDeviceAddress");
+ table->vkGetBufferOpaqueCaptureAddress = (PFN_vkGetBufferOpaqueCaptureAddress)load(context, "vkGetBufferOpaqueCaptureAddress");
+ table->vkGetDeviceMemoryOpaqueCaptureAddress = (PFN_vkGetDeviceMemoryOpaqueCaptureAddress)load(context, "vkGetDeviceMemoryOpaqueCaptureAddress");
+ table->vkGetSemaphoreCounterValue = (PFN_vkGetSemaphoreCounterValue)load(context, "vkGetSemaphoreCounterValue");
+ table->vkResetQueryPool = (PFN_vkResetQueryPool)load(context, "vkResetQueryPool");
+ table->vkSignalSemaphore = (PFN_vkSignalSemaphore)load(context, "vkSignalSemaphore");
+ table->vkWaitSemaphores = (PFN_vkWaitSemaphores)load(context, "vkWaitSemaphores");
+#endif /* defined(VK_VERSION_1_2) */
+#if defined(VK_AMD_buffer_marker)
+ table->vkCmdWriteBufferMarkerAMD = (PFN_vkCmdWriteBufferMarkerAMD)load(context, "vkCmdWriteBufferMarkerAMD");
+#endif /* defined(VK_AMD_buffer_marker) */
+#if defined(VK_AMD_display_native_hdr)
+ table->vkSetLocalDimmingAMD = (PFN_vkSetLocalDimmingAMD)load(context, "vkSetLocalDimmingAMD");
+#endif /* defined(VK_AMD_display_native_hdr) */
+#if defined(VK_AMD_draw_indirect_count)
+ table->vkCmdDrawIndexedIndirectCountAMD = (PFN_vkCmdDrawIndexedIndirectCountAMD)load(context, "vkCmdDrawIndexedIndirectCountAMD");
+ table->vkCmdDrawIndirectCountAMD = (PFN_vkCmdDrawIndirectCountAMD)load(context, "vkCmdDrawIndirectCountAMD");
+#endif /* defined(VK_AMD_draw_indirect_count) */
+#if defined(VK_AMD_shader_info)
+ table->vkGetShaderInfoAMD = (PFN_vkGetShaderInfoAMD)load(context, "vkGetShaderInfoAMD");
+#endif /* defined(VK_AMD_shader_info) */
+#if defined(VK_ANDROID_external_memory_android_hardware_buffer)
+ table->vkGetAndroidHardwareBufferPropertiesANDROID = (PFN_vkGetAndroidHardwareBufferPropertiesANDROID)load(context, "vkGetAndroidHardwareBufferPropertiesANDROID");
+ table->vkGetMemoryAndroidHardwareBufferANDROID = (PFN_vkGetMemoryAndroidHardwareBufferANDROID)load(context, "vkGetMemoryAndroidHardwareBufferANDROID");
+#endif /* defined(VK_ANDROID_external_memory_android_hardware_buffer) */
+#if defined(VK_EXT_buffer_device_address)
+ table->vkGetBufferDeviceAddressEXT = (PFN_vkGetBufferDeviceAddressEXT)load(context, "vkGetBufferDeviceAddressEXT");
+#endif /* defined(VK_EXT_buffer_device_address) */
+#if defined(VK_EXT_calibrated_timestamps)
+ table->vkGetCalibratedTimestampsEXT = (PFN_vkGetCalibratedTimestampsEXT)load(context, "vkGetCalibratedTimestampsEXT");
+#endif /* defined(VK_EXT_calibrated_timestamps) */
+#if defined(VK_EXT_color_write_enable)
+ table->vkCmdSetColorWriteEnableEXT = (PFN_vkCmdSetColorWriteEnableEXT)load(context, "vkCmdSetColorWriteEnableEXT");
+#endif /* defined(VK_EXT_color_write_enable) */
+#if defined(VK_EXT_conditional_rendering)
+ table->vkCmdBeginConditionalRenderingEXT = (PFN_vkCmdBeginConditionalRenderingEXT)load(context, "vkCmdBeginConditionalRenderingEXT");
+ table->vkCmdEndConditionalRenderingEXT = (PFN_vkCmdEndConditionalRenderingEXT)load(context, "vkCmdEndConditionalRenderingEXT");
+#endif /* defined(VK_EXT_conditional_rendering) */
+#if defined(VK_EXT_debug_marker)
+ table->vkCmdDebugMarkerBeginEXT = (PFN_vkCmdDebugMarkerBeginEXT)load(context, "vkCmdDebugMarkerBeginEXT");
+ table->vkCmdDebugMarkerEndEXT = (PFN_vkCmdDebugMarkerEndEXT)load(context, "vkCmdDebugMarkerEndEXT");
+ table->vkCmdDebugMarkerInsertEXT = (PFN_vkCmdDebugMarkerInsertEXT)load(context, "vkCmdDebugMarkerInsertEXT");
+ table->vkDebugMarkerSetObjectNameEXT = (PFN_vkDebugMarkerSetObjectNameEXT)load(context, "vkDebugMarkerSetObjectNameEXT");
+ table->vkDebugMarkerSetObjectTagEXT = (PFN_vkDebugMarkerSetObjectTagEXT)load(context, "vkDebugMarkerSetObjectTagEXT");
+#endif /* defined(VK_EXT_debug_marker) */
+#if defined(VK_EXT_discard_rectangles)
+ table->vkCmdSetDiscardRectangleEXT = (PFN_vkCmdSetDiscardRectangleEXT)load(context, "vkCmdSetDiscardRectangleEXT");
+#endif /* defined(VK_EXT_discard_rectangles) */
+#if defined(VK_EXT_display_control)
+ table->vkDisplayPowerControlEXT = (PFN_vkDisplayPowerControlEXT)load(context, "vkDisplayPowerControlEXT");
+ table->vkGetSwapchainCounterEXT = (PFN_vkGetSwapchainCounterEXT)load(context, "vkGetSwapchainCounterEXT");
+ table->vkRegisterDeviceEventEXT = (PFN_vkRegisterDeviceEventEXT)load(context, "vkRegisterDeviceEventEXT");
+ table->vkRegisterDisplayEventEXT = (PFN_vkRegisterDisplayEventEXT)load(context, "vkRegisterDisplayEventEXT");
+#endif /* defined(VK_EXT_display_control) */
+#if defined(VK_EXT_extended_dynamic_state)
+ table->vkCmdBindVertexBuffers2EXT = (PFN_vkCmdBindVertexBuffers2EXT)load(context, "vkCmdBindVertexBuffers2EXT");
+ table->vkCmdSetCullModeEXT = (PFN_vkCmdSetCullModeEXT)load(context, "vkCmdSetCullModeEXT");
+ table->vkCmdSetDepthBoundsTestEnableEXT = (PFN_vkCmdSetDepthBoundsTestEnableEXT)load(context, "vkCmdSetDepthBoundsTestEnableEXT");
+ table->vkCmdSetDepthCompareOpEXT = (PFN_vkCmdSetDepthCompareOpEXT)load(context, "vkCmdSetDepthCompareOpEXT");
+ table->vkCmdSetDepthTestEnableEXT = (PFN_vkCmdSetDepthTestEnableEXT)load(context, "vkCmdSetDepthTestEnableEXT");
+ table->vkCmdSetDepthWriteEnableEXT = (PFN_vkCmdSetDepthWriteEnableEXT)load(context, "vkCmdSetDepthWriteEnableEXT");
+ table->vkCmdSetFrontFaceEXT = (PFN_vkCmdSetFrontFaceEXT)load(context, "vkCmdSetFrontFaceEXT");
+ table->vkCmdSetPrimitiveTopologyEXT = (PFN_vkCmdSetPrimitiveTopologyEXT)load(context, "vkCmdSetPrimitiveTopologyEXT");
+ table->vkCmdSetScissorWithCountEXT = (PFN_vkCmdSetScissorWithCountEXT)load(context, "vkCmdSetScissorWithCountEXT");
+ table->vkCmdSetStencilOpEXT = (PFN_vkCmdSetStencilOpEXT)load(context, "vkCmdSetStencilOpEXT");
+ table->vkCmdSetStencilTestEnableEXT = (PFN_vkCmdSetStencilTestEnableEXT)load(context, "vkCmdSetStencilTestEnableEXT");
+ table->vkCmdSetViewportWithCountEXT = (PFN_vkCmdSetViewportWithCountEXT)load(context, "vkCmdSetViewportWithCountEXT");
+#endif /* defined(VK_EXT_extended_dynamic_state) */
+#if defined(VK_EXT_extended_dynamic_state2)
+ table->vkCmdSetDepthBiasEnableEXT = (PFN_vkCmdSetDepthBiasEnableEXT)load(context, "vkCmdSetDepthBiasEnableEXT");
+ table->vkCmdSetLogicOpEXT = (PFN_vkCmdSetLogicOpEXT)load(context, "vkCmdSetLogicOpEXT");
+ table->vkCmdSetPatchControlPointsEXT = (PFN_vkCmdSetPatchControlPointsEXT)load(context, "vkCmdSetPatchControlPointsEXT");
+ table->vkCmdSetPrimitiveRestartEnableEXT = (PFN_vkCmdSetPrimitiveRestartEnableEXT)load(context, "vkCmdSetPrimitiveRestartEnableEXT");
+ table->vkCmdSetRasterizerDiscardEnableEXT = (PFN_vkCmdSetRasterizerDiscardEnableEXT)load(context, "vkCmdSetRasterizerDiscardEnableEXT");
+#endif /* defined(VK_EXT_extended_dynamic_state2) */
+#if defined(VK_EXT_external_memory_host)
+ table->vkGetMemoryHostPointerPropertiesEXT = (PFN_vkGetMemoryHostPointerPropertiesEXT)load(context, "vkGetMemoryHostPointerPropertiesEXT");
+#endif /* defined(VK_EXT_external_memory_host) */
+#if defined(VK_EXT_full_screen_exclusive)
+ table->vkAcquireFullScreenExclusiveModeEXT = (PFN_vkAcquireFullScreenExclusiveModeEXT)load(context, "vkAcquireFullScreenExclusiveModeEXT");
+ table->vkReleaseFullScreenExclusiveModeEXT = (PFN_vkReleaseFullScreenExclusiveModeEXT)load(context, "vkReleaseFullScreenExclusiveModeEXT");
+#endif /* defined(VK_EXT_full_screen_exclusive) */
+#if defined(VK_EXT_hdr_metadata)
+ table->vkSetHdrMetadataEXT = (PFN_vkSetHdrMetadataEXT)load(context, "vkSetHdrMetadataEXT");
+#endif /* defined(VK_EXT_hdr_metadata) */
+#if defined(VK_EXT_host_query_reset)
+ table->vkResetQueryPoolEXT = (PFN_vkResetQueryPoolEXT)load(context, "vkResetQueryPoolEXT");
+#endif /* defined(VK_EXT_host_query_reset) */
+#if defined(VK_EXT_image_drm_format_modifier)
+ table->vkGetImageDrmFormatModifierPropertiesEXT = (PFN_vkGetImageDrmFormatModifierPropertiesEXT)load(context, "vkGetImageDrmFormatModifierPropertiesEXT");
+#endif /* defined(VK_EXT_image_drm_format_modifier) */
+#if defined(VK_EXT_line_rasterization)
+ table->vkCmdSetLineStippleEXT = (PFN_vkCmdSetLineStippleEXT)load(context, "vkCmdSetLineStippleEXT");
+#endif /* defined(VK_EXT_line_rasterization) */
+#if defined(VK_EXT_multi_draw)
+ table->vkCmdDrawMultiEXT = (PFN_vkCmdDrawMultiEXT)load(context, "vkCmdDrawMultiEXT");
+ table->vkCmdDrawMultiIndexedEXT = (PFN_vkCmdDrawMultiIndexedEXT)load(context, "vkCmdDrawMultiIndexedEXT");
+#endif /* defined(VK_EXT_multi_draw) */
+#if defined(VK_EXT_private_data)
+ table->vkCreatePrivateDataSlotEXT = (PFN_vkCreatePrivateDataSlotEXT)load(context, "vkCreatePrivateDataSlotEXT");
+ table->vkDestroyPrivateDataSlotEXT = (PFN_vkDestroyPrivateDataSlotEXT)load(context, "vkDestroyPrivateDataSlotEXT");
+ table->vkGetPrivateDataEXT = (PFN_vkGetPrivateDataEXT)load(context, "vkGetPrivateDataEXT");
+ table->vkSetPrivateDataEXT = (PFN_vkSetPrivateDataEXT)load(context, "vkSetPrivateDataEXT");
+#endif /* defined(VK_EXT_private_data) */
+#if defined(VK_EXT_sample_locations)
+ table->vkCmdSetSampleLocationsEXT = (PFN_vkCmdSetSampleLocationsEXT)load(context, "vkCmdSetSampleLocationsEXT");
+#endif /* defined(VK_EXT_sample_locations) */
+#if defined(VK_EXT_transform_feedback)
+ table->vkCmdBeginQueryIndexedEXT = (PFN_vkCmdBeginQueryIndexedEXT)load(context, "vkCmdBeginQueryIndexedEXT");
+ table->vkCmdBeginTransformFeedbackEXT = (PFN_vkCmdBeginTransformFeedbackEXT)load(context, "vkCmdBeginTransformFeedbackEXT");
+ table->vkCmdBindTransformFeedbackBuffersEXT = (PFN_vkCmdBindTransformFeedbackBuffersEXT)load(context, "vkCmdBindTransformFeedbackBuffersEXT");
+ table->vkCmdDrawIndirectByteCountEXT = (PFN_vkCmdDrawIndirectByteCountEXT)load(context, "vkCmdDrawIndirectByteCountEXT");
+ table->vkCmdEndQueryIndexedEXT = (PFN_vkCmdEndQueryIndexedEXT)load(context, "vkCmdEndQueryIndexedEXT");
+ table->vkCmdEndTransformFeedbackEXT = (PFN_vkCmdEndTransformFeedbackEXT)load(context, "vkCmdEndTransformFeedbackEXT");
+#endif /* defined(VK_EXT_transform_feedback) */
+#if defined(VK_EXT_validation_cache)
+ table->vkCreateValidationCacheEXT = (PFN_vkCreateValidationCacheEXT)load(context, "vkCreateValidationCacheEXT");
+ table->vkDestroyValidationCacheEXT = (PFN_vkDestroyValidationCacheEXT)load(context, "vkDestroyValidationCacheEXT");
+ table->vkGetValidationCacheDataEXT = (PFN_vkGetValidationCacheDataEXT)load(context, "vkGetValidationCacheDataEXT");
+ table->vkMergeValidationCachesEXT = (PFN_vkMergeValidationCachesEXT)load(context, "vkMergeValidationCachesEXT");
+#endif /* defined(VK_EXT_validation_cache) */
+#if defined(VK_EXT_vertex_input_dynamic_state)
+ table->vkCmdSetVertexInputEXT = (PFN_vkCmdSetVertexInputEXT)load(context, "vkCmdSetVertexInputEXT");
+#endif /* defined(VK_EXT_vertex_input_dynamic_state) */
+#if defined(VK_FUCHSIA_external_memory)
+ table->vkGetMemoryZirconHandleFUCHSIA = (PFN_vkGetMemoryZirconHandleFUCHSIA)load(context, "vkGetMemoryZirconHandleFUCHSIA");
+ table->vkGetMemoryZirconHandlePropertiesFUCHSIA = (PFN_vkGetMemoryZirconHandlePropertiesFUCHSIA)load(context, "vkGetMemoryZirconHandlePropertiesFUCHSIA");
+#endif /* defined(VK_FUCHSIA_external_memory) */
+#if defined(VK_FUCHSIA_external_semaphore)
+ table->vkGetSemaphoreZirconHandleFUCHSIA = (PFN_vkGetSemaphoreZirconHandleFUCHSIA)load(context, "vkGetSemaphoreZirconHandleFUCHSIA");
+ table->vkImportSemaphoreZirconHandleFUCHSIA = (PFN_vkImportSemaphoreZirconHandleFUCHSIA)load(context, "vkImportSemaphoreZirconHandleFUCHSIA");
+#endif /* defined(VK_FUCHSIA_external_semaphore) */
+#if defined(VK_GOOGLE_display_timing)
+ table->vkGetPastPresentationTimingGOOGLE = (PFN_vkGetPastPresentationTimingGOOGLE)load(context, "vkGetPastPresentationTimingGOOGLE");
+ table->vkGetRefreshCycleDurationGOOGLE = (PFN_vkGetRefreshCycleDurationGOOGLE)load(context, "vkGetRefreshCycleDurationGOOGLE");
+#endif /* defined(VK_GOOGLE_display_timing) */
+#if defined(VK_HUAWEI_subpass_shading)
+ table->vkCmdSubpassShadingHUAWEI = (PFN_vkCmdSubpassShadingHUAWEI)load(context, "vkCmdSubpassShadingHUAWEI");
+ table->vkGetSubpassShadingMaxWorkgroupSizeHUAWEI = (PFN_vkGetSubpassShadingMaxWorkgroupSizeHUAWEI)load(context, "vkGetSubpassShadingMaxWorkgroupSizeHUAWEI");
+#endif /* defined(VK_HUAWEI_subpass_shading) */
+#if defined(VK_INTEL_performance_query)
+ table->vkAcquirePerformanceConfigurationINTEL = (PFN_vkAcquirePerformanceConfigurationINTEL)load(context, "vkAcquirePerformanceConfigurationINTEL");
+ table->vkCmdSetPerformanceMarkerINTEL = (PFN_vkCmdSetPerformanceMarkerINTEL)load(context, "vkCmdSetPerformanceMarkerINTEL");
+ table->vkCmdSetPerformanceOverrideINTEL = (PFN_vkCmdSetPerformanceOverrideINTEL)load(context, "vkCmdSetPerformanceOverrideINTEL");
+ table->vkCmdSetPerformanceStreamMarkerINTEL = (PFN_vkCmdSetPerformanceStreamMarkerINTEL)load(context, "vkCmdSetPerformanceStreamMarkerINTEL");
+ table->vkGetPerformanceParameterINTEL = (PFN_vkGetPerformanceParameterINTEL)load(context, "vkGetPerformanceParameterINTEL");
+ table->vkInitializePerformanceApiINTEL = (PFN_vkInitializePerformanceApiINTEL)load(context, "vkInitializePerformanceApiINTEL");
+ table->vkQueueSetPerformanceConfigurationINTEL = (PFN_vkQueueSetPerformanceConfigurationINTEL)load(context, "vkQueueSetPerformanceConfigurationINTEL");
+ table->vkReleasePerformanceConfigurationINTEL = (PFN_vkReleasePerformanceConfigurationINTEL)load(context, "vkReleasePerformanceConfigurationINTEL");
+ table->vkUninitializePerformanceApiINTEL = (PFN_vkUninitializePerformanceApiINTEL)load(context, "vkUninitializePerformanceApiINTEL");
+#endif /* defined(VK_INTEL_performance_query) */
+#if defined(VK_KHR_acceleration_structure)
+ table->vkBuildAccelerationStructuresKHR = (PFN_vkBuildAccelerationStructuresKHR)load(context, "vkBuildAccelerationStructuresKHR");
+ table->vkCmdBuildAccelerationStructuresIndirectKHR = (PFN_vkCmdBuildAccelerationStructuresIndirectKHR)load(context, "vkCmdBuildAccelerationStructuresIndirectKHR");
+ table->vkCmdBuildAccelerationStructuresKHR = (PFN_vkCmdBuildAccelerationStructuresKHR)load(context, "vkCmdBuildAccelerationStructuresKHR");
+ table->vkCmdCopyAccelerationStructureKHR = (PFN_vkCmdCopyAccelerationStructureKHR)load(context, "vkCmdCopyAccelerationStructureKHR");
+ table->vkCmdCopyAccelerationStructureToMemoryKHR = (PFN_vkCmdCopyAccelerationStructureToMemoryKHR)load(context, "vkCmdCopyAccelerationStructureToMemoryKHR");
+ table->vkCmdCopyMemoryToAccelerationStructureKHR = (PFN_vkCmdCopyMemoryToAccelerationStructureKHR)load(context, "vkCmdCopyMemoryToAccelerationStructureKHR");
+ table->vkCmdWriteAccelerationStructuresPropertiesKHR = (PFN_vkCmdWriteAccelerationStructuresPropertiesKHR)load(context, "vkCmdWriteAccelerationStructuresPropertiesKHR");
+ table->vkCopyAccelerationStructureKHR = (PFN_vkCopyAccelerationStructureKHR)load(context, "vkCopyAccelerationStructureKHR");
+ table->vkCopyAccelerationStructureToMemoryKHR = (PFN_vkCopyAccelerationStructureToMemoryKHR)load(context, "vkCopyAccelerationStructureToMemoryKHR");
+ table->vkCopyMemoryToAccelerationStructureKHR = (PFN_vkCopyMemoryToAccelerationStructureKHR)load(context, "vkCopyMemoryToAccelerationStructureKHR");
+ table->vkCreateAccelerationStructureKHR = (PFN_vkCreateAccelerationStructureKHR)load(context, "vkCreateAccelerationStructureKHR");
+ table->vkDestroyAccelerationStructureKHR = (PFN_vkDestroyAccelerationStructureKHR)load(context, "vkDestroyAccelerationStructureKHR");
+ table->vkGetAccelerationStructureBuildSizesKHR = (PFN_vkGetAccelerationStructureBuildSizesKHR)load(context, "vkGetAccelerationStructureBuildSizesKHR");
+ table->vkGetAccelerationStructureDeviceAddressKHR = (PFN_vkGetAccelerationStructureDeviceAddressKHR)load(context, "vkGetAccelerationStructureDeviceAddressKHR");
+ table->vkGetDeviceAccelerationStructureCompatibilityKHR = (PFN_vkGetDeviceAccelerationStructureCompatibilityKHR)load(context, "vkGetDeviceAccelerationStructureCompatibilityKHR");
+ table->vkWriteAccelerationStructuresPropertiesKHR = (PFN_vkWriteAccelerationStructuresPropertiesKHR)load(context, "vkWriteAccelerationStructuresPropertiesKHR");
+#endif /* defined(VK_KHR_acceleration_structure) */
+#if defined(VK_KHR_bind_memory2)
+ table->vkBindBufferMemory2KHR = (PFN_vkBindBufferMemory2KHR)load(context, "vkBindBufferMemory2KHR");
+ table->vkBindImageMemory2KHR = (PFN_vkBindImageMemory2KHR)load(context, "vkBindImageMemory2KHR");
+#endif /* defined(VK_KHR_bind_memory2) */
+#if defined(VK_KHR_buffer_device_address)
+ table->vkGetBufferDeviceAddressKHR = (PFN_vkGetBufferDeviceAddressKHR)load(context, "vkGetBufferDeviceAddressKHR");
+ table->vkGetBufferOpaqueCaptureAddressKHR = (PFN_vkGetBufferOpaqueCaptureAddressKHR)load(context, "vkGetBufferOpaqueCaptureAddressKHR");
+ table->vkGetDeviceMemoryOpaqueCaptureAddressKHR = (PFN_vkGetDeviceMemoryOpaqueCaptureAddressKHR)load(context, "vkGetDeviceMemoryOpaqueCaptureAddressKHR");
+#endif /* defined(VK_KHR_buffer_device_address) */
+#if defined(VK_KHR_copy_commands2)
+ table->vkCmdBlitImage2KHR = (PFN_vkCmdBlitImage2KHR)load(context, "vkCmdBlitImage2KHR");
+ table->vkCmdCopyBuffer2KHR = (PFN_vkCmdCopyBuffer2KHR)load(context, "vkCmdCopyBuffer2KHR");
+ table->vkCmdCopyBufferToImage2KHR = (PFN_vkCmdCopyBufferToImage2KHR)load(context, "vkCmdCopyBufferToImage2KHR");
+ table->vkCmdCopyImage2KHR = (PFN_vkCmdCopyImage2KHR)load(context, "vkCmdCopyImage2KHR");
+ table->vkCmdCopyImageToBuffer2KHR = (PFN_vkCmdCopyImageToBuffer2KHR)load(context, "vkCmdCopyImageToBuffer2KHR");
+ table->vkCmdResolveImage2KHR = (PFN_vkCmdResolveImage2KHR)load(context, "vkCmdResolveImage2KHR");
+#endif /* defined(VK_KHR_copy_commands2) */
+#if defined(VK_KHR_create_renderpass2)
+ table->vkCmdBeginRenderPass2KHR = (PFN_vkCmdBeginRenderPass2KHR)load(context, "vkCmdBeginRenderPass2KHR");
+ table->vkCmdEndRenderPass2KHR = (PFN_vkCmdEndRenderPass2KHR)load(context, "vkCmdEndRenderPass2KHR");
+ table->vkCmdNextSubpass2KHR = (PFN_vkCmdNextSubpass2KHR)load(context, "vkCmdNextSubpass2KHR");
+ table->vkCreateRenderPass2KHR = (PFN_vkCreateRenderPass2KHR)load(context, "vkCreateRenderPass2KHR");
+#endif /* defined(VK_KHR_create_renderpass2) */
+#if defined(VK_KHR_deferred_host_operations)
+ table->vkCreateDeferredOperationKHR = (PFN_vkCreateDeferredOperationKHR)load(context, "vkCreateDeferredOperationKHR");
+ table->vkDeferredOperationJoinKHR = (PFN_vkDeferredOperationJoinKHR)load(context, "vkDeferredOperationJoinKHR");
+ table->vkDestroyDeferredOperationKHR = (PFN_vkDestroyDeferredOperationKHR)load(context, "vkDestroyDeferredOperationKHR");
+ table->vkGetDeferredOperationMaxConcurrencyKHR = (PFN_vkGetDeferredOperationMaxConcurrencyKHR)load(context, "vkGetDeferredOperationMaxConcurrencyKHR");
+ table->vkGetDeferredOperationResultKHR = (PFN_vkGetDeferredOperationResultKHR)load(context, "vkGetDeferredOperationResultKHR");
+#endif /* defined(VK_KHR_deferred_host_operations) */
+#if defined(VK_KHR_descriptor_update_template)
+ table->vkCreateDescriptorUpdateTemplateKHR = (PFN_vkCreateDescriptorUpdateTemplateKHR)load(context, "vkCreateDescriptorUpdateTemplateKHR");
+ table->vkDestroyDescriptorUpdateTemplateKHR = (PFN_vkDestroyDescriptorUpdateTemplateKHR)load(context, "vkDestroyDescriptorUpdateTemplateKHR");
+ table->vkUpdateDescriptorSetWithTemplateKHR = (PFN_vkUpdateDescriptorSetWithTemplateKHR)load(context, "vkUpdateDescriptorSetWithTemplateKHR");
+#endif /* defined(VK_KHR_descriptor_update_template) */
+#if defined(VK_KHR_device_group)
+ table->vkCmdDispatchBaseKHR = (PFN_vkCmdDispatchBaseKHR)load(context, "vkCmdDispatchBaseKHR");
+ table->vkCmdSetDeviceMaskKHR = (PFN_vkCmdSetDeviceMaskKHR)load(context, "vkCmdSetDeviceMaskKHR");
+ table->vkGetDeviceGroupPeerMemoryFeaturesKHR = (PFN_vkGetDeviceGroupPeerMemoryFeaturesKHR)load(context, "vkGetDeviceGroupPeerMemoryFeaturesKHR");
+#endif /* defined(VK_KHR_device_group) */
+#if defined(VK_KHR_display_swapchain)
+ table->vkCreateSharedSwapchainsKHR = (PFN_vkCreateSharedSwapchainsKHR)load(context, "vkCreateSharedSwapchainsKHR");
+#endif /* defined(VK_KHR_display_swapchain) */
+#if defined(VK_KHR_draw_indirect_count)
+ table->vkCmdDrawIndexedIndirectCountKHR = (PFN_vkCmdDrawIndexedIndirectCountKHR)load(context, "vkCmdDrawIndexedIndirectCountKHR");
+ table->vkCmdDrawIndirectCountKHR = (PFN_vkCmdDrawIndirectCountKHR)load(context, "vkCmdDrawIndirectCountKHR");
+#endif /* defined(VK_KHR_draw_indirect_count) */
+#if defined(VK_KHR_external_fence_fd)
+ table->vkGetFenceFdKHR = (PFN_vkGetFenceFdKHR)load(context, "vkGetFenceFdKHR");
+ table->vkImportFenceFdKHR = (PFN_vkImportFenceFdKHR)load(context, "vkImportFenceFdKHR");
+#endif /* defined(VK_KHR_external_fence_fd) */
+#if defined(VK_KHR_external_fence_win32)
+ table->vkGetFenceWin32HandleKHR = (PFN_vkGetFenceWin32HandleKHR)load(context, "vkGetFenceWin32HandleKHR");
+ table->vkImportFenceWin32HandleKHR = (PFN_vkImportFenceWin32HandleKHR)load(context, "vkImportFenceWin32HandleKHR");
+#endif /* defined(VK_KHR_external_fence_win32) */
+#if defined(VK_KHR_external_memory_fd)
+ table->vkGetMemoryFdKHR = (PFN_vkGetMemoryFdKHR)load(context, "vkGetMemoryFdKHR");
+ table->vkGetMemoryFdPropertiesKHR = (PFN_vkGetMemoryFdPropertiesKHR)load(context, "vkGetMemoryFdPropertiesKHR");
+#endif /* defined(VK_KHR_external_memory_fd) */
+#if defined(VK_KHR_external_memory_win32)
+ table->vkGetMemoryWin32HandleKHR = (PFN_vkGetMemoryWin32HandleKHR)load(context, "vkGetMemoryWin32HandleKHR");
+ table->vkGetMemoryWin32HandlePropertiesKHR = (PFN_vkGetMemoryWin32HandlePropertiesKHR)load(context, "vkGetMemoryWin32HandlePropertiesKHR");
+#endif /* defined(VK_KHR_external_memory_win32) */
+#if defined(VK_KHR_external_semaphore_fd)
+ table->vkGetSemaphoreFdKHR = (PFN_vkGetSemaphoreFdKHR)load(context, "vkGetSemaphoreFdKHR");
+ table->vkImportSemaphoreFdKHR = (PFN_vkImportSemaphoreFdKHR)load(context, "vkImportSemaphoreFdKHR");
+#endif /* defined(VK_KHR_external_semaphore_fd) */
+#if defined(VK_KHR_external_semaphore_win32)
+ table->vkGetSemaphoreWin32HandleKHR = (PFN_vkGetSemaphoreWin32HandleKHR)load(context, "vkGetSemaphoreWin32HandleKHR");
+ table->vkImportSemaphoreWin32HandleKHR = (PFN_vkImportSemaphoreWin32HandleKHR)load(context, "vkImportSemaphoreWin32HandleKHR");
+#endif /* defined(VK_KHR_external_semaphore_win32) */
+#if defined(VK_KHR_fragment_shading_rate)
+ table->vkCmdSetFragmentShadingRateKHR = (PFN_vkCmdSetFragmentShadingRateKHR)load(context, "vkCmdSetFragmentShadingRateKHR");
+#endif /* defined(VK_KHR_fragment_shading_rate) */
+#if defined(VK_KHR_get_memory_requirements2)
+ table->vkGetBufferMemoryRequirements2KHR = (PFN_vkGetBufferMemoryRequirements2KHR)load(context, "vkGetBufferMemoryRequirements2KHR");
+ table->vkGetImageMemoryRequirements2KHR = (PFN_vkGetImageMemoryRequirements2KHR)load(context, "vkGetImageMemoryRequirements2KHR");
+ table->vkGetImageSparseMemoryRequirements2KHR = (PFN_vkGetImageSparseMemoryRequirements2KHR)load(context, "vkGetImageSparseMemoryRequirements2KHR");
+#endif /* defined(VK_KHR_get_memory_requirements2) */
+#if defined(VK_KHR_maintenance1)
+ table->vkTrimCommandPoolKHR = (PFN_vkTrimCommandPoolKHR)load(context, "vkTrimCommandPoolKHR");
+#endif /* defined(VK_KHR_maintenance1) */
+#if defined(VK_KHR_maintenance3)
+ table->vkGetDescriptorSetLayoutSupportKHR = (PFN_vkGetDescriptorSetLayoutSupportKHR)load(context, "vkGetDescriptorSetLayoutSupportKHR");
+#endif /* defined(VK_KHR_maintenance3) */
+#if defined(VK_KHR_performance_query)
+ table->vkAcquireProfilingLockKHR = (PFN_vkAcquireProfilingLockKHR)load(context, "vkAcquireProfilingLockKHR");
+ table->vkReleaseProfilingLockKHR = (PFN_vkReleaseProfilingLockKHR)load(context, "vkReleaseProfilingLockKHR");
+#endif /* defined(VK_KHR_performance_query) */
+#if defined(VK_KHR_pipeline_executable_properties)
+ table->vkGetPipelineExecutableInternalRepresentationsKHR = (PFN_vkGetPipelineExecutableInternalRepresentationsKHR)load(context, "vkGetPipelineExecutableInternalRepresentationsKHR");
+ table->vkGetPipelineExecutablePropertiesKHR = (PFN_vkGetPipelineExecutablePropertiesKHR)load(context, "vkGetPipelineExecutablePropertiesKHR");
+ table->vkGetPipelineExecutableStatisticsKHR = (PFN_vkGetPipelineExecutableStatisticsKHR)load(context, "vkGetPipelineExecutableStatisticsKHR");
+#endif /* defined(VK_KHR_pipeline_executable_properties) */
+#if defined(VK_KHR_push_descriptor)
+ table->vkCmdPushDescriptorSetKHR = (PFN_vkCmdPushDescriptorSetKHR)load(context, "vkCmdPushDescriptorSetKHR");
+#endif /* defined(VK_KHR_push_descriptor) */
+#if defined(VK_KHR_ray_tracing_pipeline)
+ table->vkCmdSetRayTracingPipelineStackSizeKHR = (PFN_vkCmdSetRayTracingPipelineStackSizeKHR)load(context, "vkCmdSetRayTracingPipelineStackSizeKHR");
+ table->vkCmdTraceRaysIndirectKHR = (PFN_vkCmdTraceRaysIndirectKHR)load(context, "vkCmdTraceRaysIndirectKHR");
+ table->vkCmdTraceRaysKHR = (PFN_vkCmdTraceRaysKHR)load(context, "vkCmdTraceRaysKHR");
+ table->vkCreateRayTracingPipelinesKHR = (PFN_vkCreateRayTracingPipelinesKHR)load(context, "vkCreateRayTracingPipelinesKHR");
+ table->vkGetRayTracingCaptureReplayShaderGroupHandlesKHR = (PFN_vkGetRayTracingCaptureReplayShaderGroupHandlesKHR)load(context, "vkGetRayTracingCaptureReplayShaderGroupHandlesKHR");
+ table->vkGetRayTracingShaderGroupHandlesKHR = (PFN_vkGetRayTracingShaderGroupHandlesKHR)load(context, "vkGetRayTracingShaderGroupHandlesKHR");
+ table->vkGetRayTracingShaderGroupStackSizeKHR = (PFN_vkGetRayTracingShaderGroupStackSizeKHR)load(context, "vkGetRayTracingShaderGroupStackSizeKHR");
+#endif /* defined(VK_KHR_ray_tracing_pipeline) */
+#if defined(VK_KHR_sampler_ycbcr_conversion)
+ table->vkCreateSamplerYcbcrConversionKHR = (PFN_vkCreateSamplerYcbcrConversionKHR)load(context, "vkCreateSamplerYcbcrConversionKHR");
+ table->vkDestroySamplerYcbcrConversionKHR = (PFN_vkDestroySamplerYcbcrConversionKHR)load(context, "vkDestroySamplerYcbcrConversionKHR");
+#endif /* defined(VK_KHR_sampler_ycbcr_conversion) */
+#if defined(VK_KHR_shared_presentable_image)
+ table->vkGetSwapchainStatusKHR = (PFN_vkGetSwapchainStatusKHR)load(context, "vkGetSwapchainStatusKHR");
+#endif /* defined(VK_KHR_shared_presentable_image) */
+#if defined(VK_KHR_swapchain)
+ table->vkAcquireNextImageKHR = (PFN_vkAcquireNextImageKHR)load(context, "vkAcquireNextImageKHR");
+ table->vkCreateSwapchainKHR = (PFN_vkCreateSwapchainKHR)load(context, "vkCreateSwapchainKHR");
+ table->vkDestroySwapchainKHR = (PFN_vkDestroySwapchainKHR)load(context, "vkDestroySwapchainKHR");
+ table->vkGetSwapchainImagesKHR = (PFN_vkGetSwapchainImagesKHR)load(context, "vkGetSwapchainImagesKHR");
+ table->vkQueuePresentKHR = (PFN_vkQueuePresentKHR)load(context, "vkQueuePresentKHR");
+#endif /* defined(VK_KHR_swapchain) */
+#if defined(VK_KHR_synchronization2)
+ table->vkCmdPipelineBarrier2KHR = (PFN_vkCmdPipelineBarrier2KHR)load(context, "vkCmdPipelineBarrier2KHR");
+ table->vkCmdResetEvent2KHR = (PFN_vkCmdResetEvent2KHR)load(context, "vkCmdResetEvent2KHR");
+ table->vkCmdSetEvent2KHR = (PFN_vkCmdSetEvent2KHR)load(context, "vkCmdSetEvent2KHR");
+ table->vkCmdWaitEvents2KHR = (PFN_vkCmdWaitEvents2KHR)load(context, "vkCmdWaitEvents2KHR");
+ table->vkCmdWriteTimestamp2KHR = (PFN_vkCmdWriteTimestamp2KHR)load(context, "vkCmdWriteTimestamp2KHR");
+ table->vkQueueSubmit2KHR = (PFN_vkQueueSubmit2KHR)load(context, "vkQueueSubmit2KHR");
+#endif /* defined(VK_KHR_synchronization2) */
+#if defined(VK_KHR_synchronization2) && defined(VK_AMD_buffer_marker)
+ table->vkCmdWriteBufferMarker2AMD = (PFN_vkCmdWriteBufferMarker2AMD)load(context, "vkCmdWriteBufferMarker2AMD");
+#endif /* defined(VK_KHR_synchronization2) && defined(VK_AMD_buffer_marker) */
+#if defined(VK_KHR_synchronization2) && defined(VK_NV_device_diagnostic_checkpoints)
+ table->vkGetQueueCheckpointData2NV = (PFN_vkGetQueueCheckpointData2NV)load(context, "vkGetQueueCheckpointData2NV");
+#endif /* defined(VK_KHR_synchronization2) && defined(VK_NV_device_diagnostic_checkpoints) */
+#if defined(VK_KHR_timeline_semaphore)
+ table->vkGetSemaphoreCounterValueKHR = (PFN_vkGetSemaphoreCounterValueKHR)load(context, "vkGetSemaphoreCounterValueKHR");
+ table->vkSignalSemaphoreKHR = (PFN_vkSignalSemaphoreKHR)load(context, "vkSignalSemaphoreKHR");
+ table->vkWaitSemaphoresKHR = (PFN_vkWaitSemaphoresKHR)load(context, "vkWaitSemaphoresKHR");
+#endif /* defined(VK_KHR_timeline_semaphore) */
+#if defined(VK_KHR_video_decode_queue)
+ table->vkCmdDecodeVideoKHR = (PFN_vkCmdDecodeVideoKHR)load(context, "vkCmdDecodeVideoKHR");
+#endif /* defined(VK_KHR_video_decode_queue) */
+#if defined(VK_KHR_video_encode_queue)
+ table->vkCmdEncodeVideoKHR = (PFN_vkCmdEncodeVideoKHR)load(context, "vkCmdEncodeVideoKHR");
+#endif /* defined(VK_KHR_video_encode_queue) */
+#if defined(VK_KHR_video_queue)
+ table->vkBindVideoSessionMemoryKHR = (PFN_vkBindVideoSessionMemoryKHR)load(context, "vkBindVideoSessionMemoryKHR");
+ table->vkCmdBeginVideoCodingKHR = (PFN_vkCmdBeginVideoCodingKHR)load(context, "vkCmdBeginVideoCodingKHR");
+ table->vkCmdControlVideoCodingKHR = (PFN_vkCmdControlVideoCodingKHR)load(context, "vkCmdControlVideoCodingKHR");
+ table->vkCmdEndVideoCodingKHR = (PFN_vkCmdEndVideoCodingKHR)load(context, "vkCmdEndVideoCodingKHR");
+ table->vkCreateVideoSessionKHR = (PFN_vkCreateVideoSessionKHR)load(context, "vkCreateVideoSessionKHR");
+ table->vkCreateVideoSessionParametersKHR = (PFN_vkCreateVideoSessionParametersKHR)load(context, "vkCreateVideoSessionParametersKHR");
+ table->vkDestroyVideoSessionKHR = (PFN_vkDestroyVideoSessionKHR)load(context, "vkDestroyVideoSessionKHR");
+ table->vkDestroyVideoSessionParametersKHR = (PFN_vkDestroyVideoSessionParametersKHR)load(context, "vkDestroyVideoSessionParametersKHR");
+ table->vkGetVideoSessionMemoryRequirementsKHR = (PFN_vkGetVideoSessionMemoryRequirementsKHR)load(context, "vkGetVideoSessionMemoryRequirementsKHR");
+ table->vkUpdateVideoSessionParametersKHR = (PFN_vkUpdateVideoSessionParametersKHR)load(context, "vkUpdateVideoSessionParametersKHR");
+#endif /* defined(VK_KHR_video_queue) */
+#if defined(VK_NVX_binary_import)
+ table->vkCmdCuLaunchKernelNVX = (PFN_vkCmdCuLaunchKernelNVX)load(context, "vkCmdCuLaunchKernelNVX");
+ table->vkCreateCuFunctionNVX = (PFN_vkCreateCuFunctionNVX)load(context, "vkCreateCuFunctionNVX");
+ table->vkCreateCuModuleNVX = (PFN_vkCreateCuModuleNVX)load(context, "vkCreateCuModuleNVX");
+ table->vkDestroyCuFunctionNVX = (PFN_vkDestroyCuFunctionNVX)load(context, "vkDestroyCuFunctionNVX");
+ table->vkDestroyCuModuleNVX = (PFN_vkDestroyCuModuleNVX)load(context, "vkDestroyCuModuleNVX");
+#endif /* defined(VK_NVX_binary_import) */
+#if defined(VK_NVX_image_view_handle)
+ table->vkGetImageViewAddressNVX = (PFN_vkGetImageViewAddressNVX)load(context, "vkGetImageViewAddressNVX");
+ table->vkGetImageViewHandleNVX = (PFN_vkGetImageViewHandleNVX)load(context, "vkGetImageViewHandleNVX");
+#endif /* defined(VK_NVX_image_view_handle) */
+#if defined(VK_NV_clip_space_w_scaling)
+ table->vkCmdSetViewportWScalingNV = (PFN_vkCmdSetViewportWScalingNV)load(context, "vkCmdSetViewportWScalingNV");
+#endif /* defined(VK_NV_clip_space_w_scaling) */
+#if defined(VK_NV_device_diagnostic_checkpoints)
+ table->vkCmdSetCheckpointNV = (PFN_vkCmdSetCheckpointNV)load(context, "vkCmdSetCheckpointNV");
+ table->vkGetQueueCheckpointDataNV = (PFN_vkGetQueueCheckpointDataNV)load(context, "vkGetQueueCheckpointDataNV");
+#endif /* defined(VK_NV_device_diagnostic_checkpoints) */
+#if defined(VK_NV_device_generated_commands)
+ table->vkCmdBindPipelineShaderGroupNV = (PFN_vkCmdBindPipelineShaderGroupNV)load(context, "vkCmdBindPipelineShaderGroupNV");
+ table->vkCmdExecuteGeneratedCommandsNV = (PFN_vkCmdExecuteGeneratedCommandsNV)load(context, "vkCmdExecuteGeneratedCommandsNV");
+ table->vkCmdPreprocessGeneratedCommandsNV = (PFN_vkCmdPreprocessGeneratedCommandsNV)load(context, "vkCmdPreprocessGeneratedCommandsNV");
+ table->vkCreateIndirectCommandsLayoutNV = (PFN_vkCreateIndirectCommandsLayoutNV)load(context, "vkCreateIndirectCommandsLayoutNV");
+ table->vkDestroyIndirectCommandsLayoutNV = (PFN_vkDestroyIndirectCommandsLayoutNV)load(context, "vkDestroyIndirectCommandsLayoutNV");
+ table->vkGetGeneratedCommandsMemoryRequirementsNV = (PFN_vkGetGeneratedCommandsMemoryRequirementsNV)load(context, "vkGetGeneratedCommandsMemoryRequirementsNV");
+#endif /* defined(VK_NV_device_generated_commands) */
+#if defined(VK_NV_external_memory_win32)
+ table->vkGetMemoryWin32HandleNV = (PFN_vkGetMemoryWin32HandleNV)load(context, "vkGetMemoryWin32HandleNV");
+#endif /* defined(VK_NV_external_memory_win32) */
+#if defined(VK_NV_fragment_shading_rate_enums)
+ table->vkCmdSetFragmentShadingRateEnumNV = (PFN_vkCmdSetFragmentShadingRateEnumNV)load(context, "vkCmdSetFragmentShadingRateEnumNV");
+#endif /* defined(VK_NV_fragment_shading_rate_enums) */
+#if defined(VK_NV_mesh_shader)
+ table->vkCmdDrawMeshTasksIndirectCountNV = (PFN_vkCmdDrawMeshTasksIndirectCountNV)load(context, "vkCmdDrawMeshTasksIndirectCountNV");
+ table->vkCmdDrawMeshTasksIndirectNV = (PFN_vkCmdDrawMeshTasksIndirectNV)load(context, "vkCmdDrawMeshTasksIndirectNV");
+ table->vkCmdDrawMeshTasksNV = (PFN_vkCmdDrawMeshTasksNV)load(context, "vkCmdDrawMeshTasksNV");
+#endif /* defined(VK_NV_mesh_shader) */
+#if defined(VK_NV_ray_tracing)
+ table->vkBindAccelerationStructureMemoryNV = (PFN_vkBindAccelerationStructureMemoryNV)load(context, "vkBindAccelerationStructureMemoryNV");
+ table->vkCmdBuildAccelerationStructureNV = (PFN_vkCmdBuildAccelerationStructureNV)load(context, "vkCmdBuildAccelerationStructureNV");
+ table->vkCmdCopyAccelerationStructureNV = (PFN_vkCmdCopyAccelerationStructureNV)load(context, "vkCmdCopyAccelerationStructureNV");
+ table->vkCmdTraceRaysNV = (PFN_vkCmdTraceRaysNV)load(context, "vkCmdTraceRaysNV");
+ table->vkCmdWriteAccelerationStructuresPropertiesNV = (PFN_vkCmdWriteAccelerationStructuresPropertiesNV)load(context, "vkCmdWriteAccelerationStructuresPropertiesNV");
+ table->vkCompileDeferredNV = (PFN_vkCompileDeferredNV)load(context, "vkCompileDeferredNV");
+ table->vkCreateAccelerationStructureNV = (PFN_vkCreateAccelerationStructureNV)load(context, "vkCreateAccelerationStructureNV");
+ table->vkCreateRayTracingPipelinesNV = (PFN_vkCreateRayTracingPipelinesNV)load(context, "vkCreateRayTracingPipelinesNV");
+ table->vkDestroyAccelerationStructureNV = (PFN_vkDestroyAccelerationStructureNV)load(context, "vkDestroyAccelerationStructureNV");
+ table->vkGetAccelerationStructureHandleNV = (PFN_vkGetAccelerationStructureHandleNV)load(context, "vkGetAccelerationStructureHandleNV");
+ table->vkGetAccelerationStructureMemoryRequirementsNV = (PFN_vkGetAccelerationStructureMemoryRequirementsNV)load(context, "vkGetAccelerationStructureMemoryRequirementsNV");
+ table->vkGetRayTracingShaderGroupHandlesNV = (PFN_vkGetRayTracingShaderGroupHandlesNV)load(context, "vkGetRayTracingShaderGroupHandlesNV");
+#endif /* defined(VK_NV_ray_tracing) */
+#if defined(VK_NV_scissor_exclusive)
+ table->vkCmdSetExclusiveScissorNV = (PFN_vkCmdSetExclusiveScissorNV)load(context, "vkCmdSetExclusiveScissorNV");
+#endif /* defined(VK_NV_scissor_exclusive) */
+#if defined(VK_NV_shading_rate_image)
+ table->vkCmdBindShadingRateImageNV = (PFN_vkCmdBindShadingRateImageNV)load(context, "vkCmdBindShadingRateImageNV");
+ table->vkCmdSetCoarseSampleOrderNV = (PFN_vkCmdSetCoarseSampleOrderNV)load(context, "vkCmdSetCoarseSampleOrderNV");
+ table->vkCmdSetViewportShadingRatePaletteNV = (PFN_vkCmdSetViewportShadingRatePaletteNV)load(context, "vkCmdSetViewportShadingRatePaletteNV");
+#endif /* defined(VK_NV_shading_rate_image) */
+#if (defined(VK_EXT_full_screen_exclusive) && defined(VK_KHR_device_group)) || (defined(VK_EXT_full_screen_exclusive) && defined(VK_VERSION_1_1))
+ table->vkGetDeviceGroupSurfacePresentModes2EXT = (PFN_vkGetDeviceGroupSurfacePresentModes2EXT)load(context, "vkGetDeviceGroupSurfacePresentModes2EXT");
+#endif /* (defined(VK_EXT_full_screen_exclusive) && defined(VK_KHR_device_group)) || (defined(VK_EXT_full_screen_exclusive) && defined(VK_VERSION_1_1)) */
+#if (defined(VK_KHR_descriptor_update_template) && defined(VK_KHR_push_descriptor)) || (defined(VK_KHR_push_descriptor) && defined(VK_VERSION_1_1)) || (defined(VK_KHR_push_descriptor) && defined(VK_KHR_descriptor_update_template))
+ table->vkCmdPushDescriptorSetWithTemplateKHR = (PFN_vkCmdPushDescriptorSetWithTemplateKHR)load(context, "vkCmdPushDescriptorSetWithTemplateKHR");
+#endif /* (defined(VK_KHR_descriptor_update_template) && defined(VK_KHR_push_descriptor)) || (defined(VK_KHR_push_descriptor) && defined(VK_VERSION_1_1)) || (defined(VK_KHR_push_descriptor) && defined(VK_KHR_descriptor_update_template)) */
+#if (defined(VK_KHR_device_group) && defined(VK_KHR_surface)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1))
+ table->vkGetDeviceGroupPresentCapabilitiesKHR = (PFN_vkGetDeviceGroupPresentCapabilitiesKHR)load(context, "vkGetDeviceGroupPresentCapabilitiesKHR");
+ table->vkGetDeviceGroupSurfacePresentModesKHR = (PFN_vkGetDeviceGroupSurfacePresentModesKHR)load(context, "vkGetDeviceGroupSurfacePresentModesKHR");
+#endif /* (defined(VK_KHR_device_group) && defined(VK_KHR_surface)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1)) */
+#if (defined(VK_KHR_device_group) && defined(VK_KHR_swapchain)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1))
+ table->vkAcquireNextImage2KHR = (PFN_vkAcquireNextImage2KHR)load(context, "vkAcquireNextImage2KHR");
+#endif /* (defined(VK_KHR_device_group) && defined(VK_KHR_swapchain)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1)) */
+ /* VOLK_GENERATE_LOAD_DEVICE_TABLE */
+}
+
+#ifdef __GNUC__
+#ifdef VOLK_DEFAULT_VISIBILITY
+# pragma GCC visibility push(default)
+#else
+# pragma GCC visibility push(hidden)
+#endif
+#endif
+
+/* VOLK_GENERATE_PROTOTYPES_C */
+#if defined(VK_VERSION_1_0)
+PFN_vkAllocateCommandBuffers vkAllocateCommandBuffers;
+PFN_vkAllocateDescriptorSets vkAllocateDescriptorSets;
+PFN_vkAllocateMemory vkAllocateMemory;
+PFN_vkBeginCommandBuffer vkBeginCommandBuffer;
+PFN_vkBindBufferMemory vkBindBufferMemory;
+PFN_vkBindImageMemory vkBindImageMemory;
+PFN_vkCmdBeginQuery vkCmdBeginQuery;
+PFN_vkCmdBeginRenderPass vkCmdBeginRenderPass;
+PFN_vkCmdBindDescriptorSets vkCmdBindDescriptorSets;
+PFN_vkCmdBindIndexBuffer vkCmdBindIndexBuffer;
+PFN_vkCmdBindPipeline vkCmdBindPipeline;
+PFN_vkCmdBindVertexBuffers vkCmdBindVertexBuffers;
+PFN_vkCmdBlitImage vkCmdBlitImage;
+PFN_vkCmdClearAttachments vkCmdClearAttachments;
+PFN_vkCmdClearColorImage vkCmdClearColorImage;
+PFN_vkCmdClearDepthStencilImage vkCmdClearDepthStencilImage;
+PFN_vkCmdCopyBuffer vkCmdCopyBuffer;
+PFN_vkCmdCopyBufferToImage vkCmdCopyBufferToImage;
+PFN_vkCmdCopyImage vkCmdCopyImage;
+PFN_vkCmdCopyImageToBuffer vkCmdCopyImageToBuffer;
+PFN_vkCmdCopyQueryPoolResults vkCmdCopyQueryPoolResults;
+PFN_vkCmdDispatch vkCmdDispatch;
+PFN_vkCmdDispatchIndirect vkCmdDispatchIndirect;
+PFN_vkCmdDraw vkCmdDraw;
+PFN_vkCmdDrawIndexed vkCmdDrawIndexed;
+PFN_vkCmdDrawIndexedIndirect vkCmdDrawIndexedIndirect;
+PFN_vkCmdDrawIndirect vkCmdDrawIndirect;
+PFN_vkCmdEndQuery vkCmdEndQuery;
+PFN_vkCmdEndRenderPass vkCmdEndRenderPass;
+PFN_vkCmdExecuteCommands vkCmdExecuteCommands;
+PFN_vkCmdFillBuffer vkCmdFillBuffer;
+PFN_vkCmdNextSubpass vkCmdNextSubpass;
+PFN_vkCmdPipelineBarrier vkCmdPipelineBarrier;
+PFN_vkCmdPushConstants vkCmdPushConstants;
+PFN_vkCmdResetEvent vkCmdResetEvent;
+PFN_vkCmdResetQueryPool vkCmdResetQueryPool;
+PFN_vkCmdResolveImage vkCmdResolveImage;
+PFN_vkCmdSetBlendConstants vkCmdSetBlendConstants;
+PFN_vkCmdSetDepthBias vkCmdSetDepthBias;
+PFN_vkCmdSetDepthBounds vkCmdSetDepthBounds;
+PFN_vkCmdSetEvent vkCmdSetEvent;
+PFN_vkCmdSetLineWidth vkCmdSetLineWidth;
+PFN_vkCmdSetScissor vkCmdSetScissor;
+PFN_vkCmdSetStencilCompareMask vkCmdSetStencilCompareMask;
+PFN_vkCmdSetStencilReference vkCmdSetStencilReference;
+PFN_vkCmdSetStencilWriteMask vkCmdSetStencilWriteMask;
+PFN_vkCmdSetViewport vkCmdSetViewport;
+PFN_vkCmdUpdateBuffer vkCmdUpdateBuffer;
+PFN_vkCmdWaitEvents vkCmdWaitEvents;
+PFN_vkCmdWriteTimestamp vkCmdWriteTimestamp;
+PFN_vkCreateBuffer vkCreateBuffer;
+PFN_vkCreateBufferView vkCreateBufferView;
+PFN_vkCreateCommandPool vkCreateCommandPool;
+PFN_vkCreateComputePipelines vkCreateComputePipelines;
+PFN_vkCreateDescriptorPool vkCreateDescriptorPool;
+PFN_vkCreateDescriptorSetLayout vkCreateDescriptorSetLayout;
+PFN_vkCreateDevice vkCreateDevice;
+PFN_vkCreateEvent vkCreateEvent;
+PFN_vkCreateFence vkCreateFence;
+PFN_vkCreateFramebuffer vkCreateFramebuffer;
+PFN_vkCreateGraphicsPipelines vkCreateGraphicsPipelines;
+PFN_vkCreateImage vkCreateImage;
+PFN_vkCreateImageView vkCreateImageView;
+PFN_vkCreateInstance vkCreateInstance;
+PFN_vkCreatePipelineCache vkCreatePipelineCache;
+PFN_vkCreatePipelineLayout vkCreatePipelineLayout;
+PFN_vkCreateQueryPool vkCreateQueryPool;
+PFN_vkCreateRenderPass vkCreateRenderPass;
+PFN_vkCreateSampler vkCreateSampler;
+PFN_vkCreateSemaphore vkCreateSemaphore;
+PFN_vkCreateShaderModule vkCreateShaderModule;
+PFN_vkDestroyBuffer vkDestroyBuffer;
+PFN_vkDestroyBufferView vkDestroyBufferView;
+PFN_vkDestroyCommandPool vkDestroyCommandPool;
+PFN_vkDestroyDescriptorPool vkDestroyDescriptorPool;
+PFN_vkDestroyDescriptorSetLayout vkDestroyDescriptorSetLayout;
+PFN_vkDestroyDevice vkDestroyDevice;
+PFN_vkDestroyEvent vkDestroyEvent;
+PFN_vkDestroyFence vkDestroyFence;
+PFN_vkDestroyFramebuffer vkDestroyFramebuffer;
+PFN_vkDestroyImage vkDestroyImage;
+PFN_vkDestroyImageView vkDestroyImageView;
+PFN_vkDestroyInstance vkDestroyInstance;
+PFN_vkDestroyPipeline vkDestroyPipeline;
+PFN_vkDestroyPipelineCache vkDestroyPipelineCache;
+PFN_vkDestroyPipelineLayout vkDestroyPipelineLayout;
+PFN_vkDestroyQueryPool vkDestroyQueryPool;
+PFN_vkDestroyRenderPass vkDestroyRenderPass;
+PFN_vkDestroySampler vkDestroySampler;
+PFN_vkDestroySemaphore vkDestroySemaphore;
+PFN_vkDestroyShaderModule vkDestroyShaderModule;
+PFN_vkDeviceWaitIdle vkDeviceWaitIdle;
+PFN_vkEndCommandBuffer vkEndCommandBuffer;
+PFN_vkEnumerateDeviceExtensionProperties vkEnumerateDeviceExtensionProperties;
+PFN_vkEnumerateDeviceLayerProperties vkEnumerateDeviceLayerProperties;
+PFN_vkEnumerateInstanceExtensionProperties vkEnumerateInstanceExtensionProperties;
+PFN_vkEnumerateInstanceLayerProperties vkEnumerateInstanceLayerProperties;
+PFN_vkEnumeratePhysicalDevices vkEnumeratePhysicalDevices;
+PFN_vkFlushMappedMemoryRanges vkFlushMappedMemoryRanges;
+PFN_vkFreeCommandBuffers vkFreeCommandBuffers;
+PFN_vkFreeDescriptorSets vkFreeDescriptorSets;
+PFN_vkFreeMemory vkFreeMemory;
+PFN_vkGetBufferMemoryRequirements vkGetBufferMemoryRequirements;
+PFN_vkGetDeviceMemoryCommitment vkGetDeviceMemoryCommitment;
+PFN_vkGetDeviceProcAddr vkGetDeviceProcAddr;
+PFN_vkGetDeviceQueue vkGetDeviceQueue;
+PFN_vkGetEventStatus vkGetEventStatus;
+PFN_vkGetFenceStatus vkGetFenceStatus;
+PFN_vkGetImageMemoryRequirements vkGetImageMemoryRequirements;
+PFN_vkGetImageSparseMemoryRequirements vkGetImageSparseMemoryRequirements;
+PFN_vkGetImageSubresourceLayout vkGetImageSubresourceLayout;
+PFN_vkGetInstanceProcAddr vkGetInstanceProcAddr;
+PFN_vkGetPhysicalDeviceFeatures vkGetPhysicalDeviceFeatures;
+PFN_vkGetPhysicalDeviceFormatProperties vkGetPhysicalDeviceFormatProperties;
+PFN_vkGetPhysicalDeviceImageFormatProperties vkGetPhysicalDeviceImageFormatProperties;
+PFN_vkGetPhysicalDeviceMemoryProperties vkGetPhysicalDeviceMemoryProperties;
+PFN_vkGetPhysicalDeviceProperties vkGetPhysicalDeviceProperties;
+PFN_vkGetPhysicalDeviceQueueFamilyProperties vkGetPhysicalDeviceQueueFamilyProperties;
+PFN_vkGetPhysicalDeviceSparseImageFormatProperties vkGetPhysicalDeviceSparseImageFormatProperties;
+PFN_vkGetPipelineCacheData vkGetPipelineCacheData;
+PFN_vkGetQueryPoolResults vkGetQueryPoolResults;
+PFN_vkGetRenderAreaGranularity vkGetRenderAreaGranularity;
+PFN_vkInvalidateMappedMemoryRanges vkInvalidateMappedMemoryRanges;
+PFN_vkMapMemory vkMapMemory;
+PFN_vkMergePipelineCaches vkMergePipelineCaches;
+PFN_vkQueueBindSparse vkQueueBindSparse;
+PFN_vkQueueSubmit vkQueueSubmit;
+PFN_vkQueueWaitIdle vkQueueWaitIdle;
+PFN_vkResetCommandBuffer vkResetCommandBuffer;
+PFN_vkResetCommandPool vkResetCommandPool;
+PFN_vkResetDescriptorPool vkResetDescriptorPool;
+PFN_vkResetEvent vkResetEvent;
+PFN_vkResetFences vkResetFences;
+PFN_vkSetEvent vkSetEvent;
+PFN_vkUnmapMemory vkUnmapMemory;
+PFN_vkUpdateDescriptorSets vkUpdateDescriptorSets;
+PFN_vkWaitForFences vkWaitForFences;
+#endif /* defined(VK_VERSION_1_0) */
+#if defined(VK_VERSION_1_1)
+PFN_vkBindBufferMemory2 vkBindBufferMemory2;
+PFN_vkBindImageMemory2 vkBindImageMemory2;
+PFN_vkCmdDispatchBase vkCmdDispatchBase;
+PFN_vkCmdSetDeviceMask vkCmdSetDeviceMask;
+PFN_vkCreateDescriptorUpdateTemplate vkCreateDescriptorUpdateTemplate;
+PFN_vkCreateSamplerYcbcrConversion vkCreateSamplerYcbcrConversion;
+PFN_vkDestroyDescriptorUpdateTemplate vkDestroyDescriptorUpdateTemplate;
+PFN_vkDestroySamplerYcbcrConversion vkDestroySamplerYcbcrConversion;
+PFN_vkEnumerateInstanceVersion vkEnumerateInstanceVersion;
+PFN_vkEnumeratePhysicalDeviceGroups vkEnumeratePhysicalDeviceGroups;
+PFN_vkGetBufferMemoryRequirements2 vkGetBufferMemoryRequirements2;
+PFN_vkGetDescriptorSetLayoutSupport vkGetDescriptorSetLayoutSupport;
+PFN_vkGetDeviceGroupPeerMemoryFeatures vkGetDeviceGroupPeerMemoryFeatures;
+PFN_vkGetDeviceQueue2 vkGetDeviceQueue2;
+PFN_vkGetImageMemoryRequirements2 vkGetImageMemoryRequirements2;
+PFN_vkGetImageSparseMemoryRequirements2 vkGetImageSparseMemoryRequirements2;
+PFN_vkGetPhysicalDeviceExternalBufferProperties vkGetPhysicalDeviceExternalBufferProperties;
+PFN_vkGetPhysicalDeviceExternalFenceProperties vkGetPhysicalDeviceExternalFenceProperties;
+PFN_vkGetPhysicalDeviceExternalSemaphoreProperties vkGetPhysicalDeviceExternalSemaphoreProperties;
+PFN_vkGetPhysicalDeviceFeatures2 vkGetPhysicalDeviceFeatures2;
+PFN_vkGetPhysicalDeviceFormatProperties2 vkGetPhysicalDeviceFormatProperties2;
+PFN_vkGetPhysicalDeviceImageFormatProperties2 vkGetPhysicalDeviceImageFormatProperties2;
+PFN_vkGetPhysicalDeviceMemoryProperties2 vkGetPhysicalDeviceMemoryProperties2;
+PFN_vkGetPhysicalDeviceProperties2 vkGetPhysicalDeviceProperties2;
+PFN_vkGetPhysicalDeviceQueueFamilyProperties2 vkGetPhysicalDeviceQueueFamilyProperties2;
+PFN_vkGetPhysicalDeviceSparseImageFormatProperties2 vkGetPhysicalDeviceSparseImageFormatProperties2;
+PFN_vkTrimCommandPool vkTrimCommandPool;
+PFN_vkUpdateDescriptorSetWithTemplate vkUpdateDescriptorSetWithTemplate;
+#endif /* defined(VK_VERSION_1_1) */
+#if defined(VK_VERSION_1_2)
+PFN_vkCmdBeginRenderPass2 vkCmdBeginRenderPass2;
+PFN_vkCmdDrawIndexedIndirectCount vkCmdDrawIndexedIndirectCount;
+PFN_vkCmdDrawIndirectCount vkCmdDrawIndirectCount;
+PFN_vkCmdEndRenderPass2 vkCmdEndRenderPass2;
+PFN_vkCmdNextSubpass2 vkCmdNextSubpass2;
+PFN_vkCreateRenderPass2 vkCreateRenderPass2;
+PFN_vkGetBufferDeviceAddress vkGetBufferDeviceAddress;
+PFN_vkGetBufferOpaqueCaptureAddress vkGetBufferOpaqueCaptureAddress;
+PFN_vkGetDeviceMemoryOpaqueCaptureAddress vkGetDeviceMemoryOpaqueCaptureAddress;
+PFN_vkGetSemaphoreCounterValue vkGetSemaphoreCounterValue;
+PFN_vkResetQueryPool vkResetQueryPool;
+PFN_vkSignalSemaphore vkSignalSemaphore;
+PFN_vkWaitSemaphores vkWaitSemaphores;
+#endif /* defined(VK_VERSION_1_2) */
+#if defined(VK_AMD_buffer_marker)
+PFN_vkCmdWriteBufferMarkerAMD vkCmdWriteBufferMarkerAMD;
+#endif /* defined(VK_AMD_buffer_marker) */
+#if defined(VK_AMD_display_native_hdr)
+PFN_vkSetLocalDimmingAMD vkSetLocalDimmingAMD;
+#endif /* defined(VK_AMD_display_native_hdr) */
+#if defined(VK_AMD_draw_indirect_count)
+PFN_vkCmdDrawIndexedIndirectCountAMD vkCmdDrawIndexedIndirectCountAMD;
+PFN_vkCmdDrawIndirectCountAMD vkCmdDrawIndirectCountAMD;
+#endif /* defined(VK_AMD_draw_indirect_count) */
+#if defined(VK_AMD_shader_info)
+PFN_vkGetShaderInfoAMD vkGetShaderInfoAMD;
+#endif /* defined(VK_AMD_shader_info) */
+#if defined(VK_ANDROID_external_memory_android_hardware_buffer)
+PFN_vkGetAndroidHardwareBufferPropertiesANDROID vkGetAndroidHardwareBufferPropertiesANDROID;
+PFN_vkGetMemoryAndroidHardwareBufferANDROID vkGetMemoryAndroidHardwareBufferANDROID;
+#endif /* defined(VK_ANDROID_external_memory_android_hardware_buffer) */
+#if defined(VK_EXT_acquire_drm_display)
+PFN_vkAcquireDrmDisplayEXT vkAcquireDrmDisplayEXT;
+PFN_vkGetDrmDisplayEXT vkGetDrmDisplayEXT;
+#endif /* defined(VK_EXT_acquire_drm_display) */
+#if defined(VK_EXT_acquire_xlib_display)
+PFN_vkAcquireXlibDisplayEXT vkAcquireXlibDisplayEXT;
+PFN_vkGetRandROutputDisplayEXT vkGetRandROutputDisplayEXT;
+#endif /* defined(VK_EXT_acquire_xlib_display) */
+#if defined(VK_EXT_buffer_device_address)
+PFN_vkGetBufferDeviceAddressEXT vkGetBufferDeviceAddressEXT;
+#endif /* defined(VK_EXT_buffer_device_address) */
+#if defined(VK_EXT_calibrated_timestamps)
+PFN_vkGetCalibratedTimestampsEXT vkGetCalibratedTimestampsEXT;
+PFN_vkGetPhysicalDeviceCalibrateableTimeDomainsEXT vkGetPhysicalDeviceCalibrateableTimeDomainsEXT;
+#endif /* defined(VK_EXT_calibrated_timestamps) */
+#if defined(VK_EXT_color_write_enable)
+PFN_vkCmdSetColorWriteEnableEXT vkCmdSetColorWriteEnableEXT;
+#endif /* defined(VK_EXT_color_write_enable) */
+#if defined(VK_EXT_conditional_rendering)
+PFN_vkCmdBeginConditionalRenderingEXT vkCmdBeginConditionalRenderingEXT;
+PFN_vkCmdEndConditionalRenderingEXT vkCmdEndConditionalRenderingEXT;
+#endif /* defined(VK_EXT_conditional_rendering) */
+#if defined(VK_EXT_debug_marker)
+PFN_vkCmdDebugMarkerBeginEXT vkCmdDebugMarkerBeginEXT;
+PFN_vkCmdDebugMarkerEndEXT vkCmdDebugMarkerEndEXT;
+PFN_vkCmdDebugMarkerInsertEXT vkCmdDebugMarkerInsertEXT;
+PFN_vkDebugMarkerSetObjectNameEXT vkDebugMarkerSetObjectNameEXT;
+PFN_vkDebugMarkerSetObjectTagEXT vkDebugMarkerSetObjectTagEXT;
+#endif /* defined(VK_EXT_debug_marker) */
+#if defined(VK_EXT_debug_report)
+PFN_vkCreateDebugReportCallbackEXT vkCreateDebugReportCallbackEXT;
+PFN_vkDebugReportMessageEXT vkDebugReportMessageEXT;
+PFN_vkDestroyDebugReportCallbackEXT vkDestroyDebugReportCallbackEXT;
+#endif /* defined(VK_EXT_debug_report) */
+#if defined(VK_EXT_debug_utils)
+PFN_vkCmdBeginDebugUtilsLabelEXT vkCmdBeginDebugUtilsLabelEXT;
+PFN_vkCmdEndDebugUtilsLabelEXT vkCmdEndDebugUtilsLabelEXT;
+PFN_vkCmdInsertDebugUtilsLabelEXT vkCmdInsertDebugUtilsLabelEXT;
+PFN_vkCreateDebugUtilsMessengerEXT vkCreateDebugUtilsMessengerEXT;
+PFN_vkDestroyDebugUtilsMessengerEXT vkDestroyDebugUtilsMessengerEXT;
+PFN_vkQueueBeginDebugUtilsLabelEXT vkQueueBeginDebugUtilsLabelEXT;
+PFN_vkQueueEndDebugUtilsLabelEXT vkQueueEndDebugUtilsLabelEXT;
+PFN_vkQueueInsertDebugUtilsLabelEXT vkQueueInsertDebugUtilsLabelEXT;
+PFN_vkSetDebugUtilsObjectNameEXT vkSetDebugUtilsObjectNameEXT;
+PFN_vkSetDebugUtilsObjectTagEXT vkSetDebugUtilsObjectTagEXT;
+PFN_vkSubmitDebugUtilsMessageEXT vkSubmitDebugUtilsMessageEXT;
+#endif /* defined(VK_EXT_debug_utils) */
+#if defined(VK_EXT_direct_mode_display)
+PFN_vkReleaseDisplayEXT vkReleaseDisplayEXT;
+#endif /* defined(VK_EXT_direct_mode_display) */
+#if defined(VK_EXT_directfb_surface)
+PFN_vkCreateDirectFBSurfaceEXT vkCreateDirectFBSurfaceEXT;
+PFN_vkGetPhysicalDeviceDirectFBPresentationSupportEXT vkGetPhysicalDeviceDirectFBPresentationSupportEXT;
+#endif /* defined(VK_EXT_directfb_surface) */
+#if defined(VK_EXT_discard_rectangles)
+PFN_vkCmdSetDiscardRectangleEXT vkCmdSetDiscardRectangleEXT;
+#endif /* defined(VK_EXT_discard_rectangles) */
+#if defined(VK_EXT_display_control)
+PFN_vkDisplayPowerControlEXT vkDisplayPowerControlEXT;
+PFN_vkGetSwapchainCounterEXT vkGetSwapchainCounterEXT;
+PFN_vkRegisterDeviceEventEXT vkRegisterDeviceEventEXT;
+PFN_vkRegisterDisplayEventEXT vkRegisterDisplayEventEXT;
+#endif /* defined(VK_EXT_display_control) */
+#if defined(VK_EXT_display_surface_counter)
+PFN_vkGetPhysicalDeviceSurfaceCapabilities2EXT vkGetPhysicalDeviceSurfaceCapabilities2EXT;
+#endif /* defined(VK_EXT_display_surface_counter) */
+#if defined(VK_EXT_extended_dynamic_state)
+PFN_vkCmdBindVertexBuffers2EXT vkCmdBindVertexBuffers2EXT;
+PFN_vkCmdSetCullModeEXT vkCmdSetCullModeEXT;
+PFN_vkCmdSetDepthBoundsTestEnableEXT vkCmdSetDepthBoundsTestEnableEXT;
+PFN_vkCmdSetDepthCompareOpEXT vkCmdSetDepthCompareOpEXT;
+PFN_vkCmdSetDepthTestEnableEXT vkCmdSetDepthTestEnableEXT;
+PFN_vkCmdSetDepthWriteEnableEXT vkCmdSetDepthWriteEnableEXT;
+PFN_vkCmdSetFrontFaceEXT vkCmdSetFrontFaceEXT;
+PFN_vkCmdSetPrimitiveTopologyEXT vkCmdSetPrimitiveTopologyEXT;
+PFN_vkCmdSetScissorWithCountEXT vkCmdSetScissorWithCountEXT;
+PFN_vkCmdSetStencilOpEXT vkCmdSetStencilOpEXT;
+PFN_vkCmdSetStencilTestEnableEXT vkCmdSetStencilTestEnableEXT;
+PFN_vkCmdSetViewportWithCountEXT vkCmdSetViewportWithCountEXT;
+#endif /* defined(VK_EXT_extended_dynamic_state) */
+#if defined(VK_EXT_extended_dynamic_state2)
+PFN_vkCmdSetDepthBiasEnableEXT vkCmdSetDepthBiasEnableEXT;
+PFN_vkCmdSetLogicOpEXT vkCmdSetLogicOpEXT;
+PFN_vkCmdSetPatchControlPointsEXT vkCmdSetPatchControlPointsEXT;
+PFN_vkCmdSetPrimitiveRestartEnableEXT vkCmdSetPrimitiveRestartEnableEXT;
+PFN_vkCmdSetRasterizerDiscardEnableEXT vkCmdSetRasterizerDiscardEnableEXT;
+#endif /* defined(VK_EXT_extended_dynamic_state2) */
+#if defined(VK_EXT_external_memory_host)
+PFN_vkGetMemoryHostPointerPropertiesEXT vkGetMemoryHostPointerPropertiesEXT;
+#endif /* defined(VK_EXT_external_memory_host) */
+#if defined(VK_EXT_full_screen_exclusive)
+PFN_vkAcquireFullScreenExclusiveModeEXT vkAcquireFullScreenExclusiveModeEXT;
+PFN_vkGetPhysicalDeviceSurfacePresentModes2EXT vkGetPhysicalDeviceSurfacePresentModes2EXT;
+PFN_vkReleaseFullScreenExclusiveModeEXT vkReleaseFullScreenExclusiveModeEXT;
+#endif /* defined(VK_EXT_full_screen_exclusive) */
+#if defined(VK_EXT_hdr_metadata)
+PFN_vkSetHdrMetadataEXT vkSetHdrMetadataEXT;
+#endif /* defined(VK_EXT_hdr_metadata) */
+#if defined(VK_EXT_headless_surface)
+PFN_vkCreateHeadlessSurfaceEXT vkCreateHeadlessSurfaceEXT;
+#endif /* defined(VK_EXT_headless_surface) */
+#if defined(VK_EXT_host_query_reset)
+PFN_vkResetQueryPoolEXT vkResetQueryPoolEXT;
+#endif /* defined(VK_EXT_host_query_reset) */
+#if defined(VK_EXT_image_drm_format_modifier)
+PFN_vkGetImageDrmFormatModifierPropertiesEXT vkGetImageDrmFormatModifierPropertiesEXT;
+#endif /* defined(VK_EXT_image_drm_format_modifier) */
+#if defined(VK_EXT_line_rasterization)
+PFN_vkCmdSetLineStippleEXT vkCmdSetLineStippleEXT;
+#endif /* defined(VK_EXT_line_rasterization) */
+#if defined(VK_EXT_metal_surface)
+PFN_vkCreateMetalSurfaceEXT vkCreateMetalSurfaceEXT;
+#endif /* defined(VK_EXT_metal_surface) */
+#if defined(VK_EXT_multi_draw)
+PFN_vkCmdDrawMultiEXT vkCmdDrawMultiEXT;
+PFN_vkCmdDrawMultiIndexedEXT vkCmdDrawMultiIndexedEXT;
+#endif /* defined(VK_EXT_multi_draw) */
+#if defined(VK_EXT_private_data)
+PFN_vkCreatePrivateDataSlotEXT vkCreatePrivateDataSlotEXT;
+PFN_vkDestroyPrivateDataSlotEXT vkDestroyPrivateDataSlotEXT;
+PFN_vkGetPrivateDataEXT vkGetPrivateDataEXT;
+PFN_vkSetPrivateDataEXT vkSetPrivateDataEXT;
+#endif /* defined(VK_EXT_private_data) */
+#if defined(VK_EXT_sample_locations)
+PFN_vkCmdSetSampleLocationsEXT vkCmdSetSampleLocationsEXT;
+PFN_vkGetPhysicalDeviceMultisamplePropertiesEXT vkGetPhysicalDeviceMultisamplePropertiesEXT;
+#endif /* defined(VK_EXT_sample_locations) */
+#if defined(VK_EXT_tooling_info)
+PFN_vkGetPhysicalDeviceToolPropertiesEXT vkGetPhysicalDeviceToolPropertiesEXT;
+#endif /* defined(VK_EXT_tooling_info) */
+#if defined(VK_EXT_transform_feedback)
+PFN_vkCmdBeginQueryIndexedEXT vkCmdBeginQueryIndexedEXT;
+PFN_vkCmdBeginTransformFeedbackEXT vkCmdBeginTransformFeedbackEXT;
+PFN_vkCmdBindTransformFeedbackBuffersEXT vkCmdBindTransformFeedbackBuffersEXT;
+PFN_vkCmdDrawIndirectByteCountEXT vkCmdDrawIndirectByteCountEXT;
+PFN_vkCmdEndQueryIndexedEXT vkCmdEndQueryIndexedEXT;
+PFN_vkCmdEndTransformFeedbackEXT vkCmdEndTransformFeedbackEXT;
+#endif /* defined(VK_EXT_transform_feedback) */
+#if defined(VK_EXT_validation_cache)
+PFN_vkCreateValidationCacheEXT vkCreateValidationCacheEXT;
+PFN_vkDestroyValidationCacheEXT vkDestroyValidationCacheEXT;
+PFN_vkGetValidationCacheDataEXT vkGetValidationCacheDataEXT;
+PFN_vkMergeValidationCachesEXT vkMergeValidationCachesEXT;
+#endif /* defined(VK_EXT_validation_cache) */
+#if defined(VK_EXT_vertex_input_dynamic_state)
+PFN_vkCmdSetVertexInputEXT vkCmdSetVertexInputEXT;
+#endif /* defined(VK_EXT_vertex_input_dynamic_state) */
+#if defined(VK_FUCHSIA_external_memory)
+PFN_vkGetMemoryZirconHandleFUCHSIA vkGetMemoryZirconHandleFUCHSIA;
+PFN_vkGetMemoryZirconHandlePropertiesFUCHSIA vkGetMemoryZirconHandlePropertiesFUCHSIA;
+#endif /* defined(VK_FUCHSIA_external_memory) */
+#if defined(VK_FUCHSIA_external_semaphore)
+PFN_vkGetSemaphoreZirconHandleFUCHSIA vkGetSemaphoreZirconHandleFUCHSIA;
+PFN_vkImportSemaphoreZirconHandleFUCHSIA vkImportSemaphoreZirconHandleFUCHSIA;
+#endif /* defined(VK_FUCHSIA_external_semaphore) */
+#if defined(VK_FUCHSIA_imagepipe_surface)
+PFN_vkCreateImagePipeSurfaceFUCHSIA vkCreateImagePipeSurfaceFUCHSIA;
+#endif /* defined(VK_FUCHSIA_imagepipe_surface) */
+#if defined(VK_GGP_stream_descriptor_surface)
+PFN_vkCreateStreamDescriptorSurfaceGGP vkCreateStreamDescriptorSurfaceGGP;
+#endif /* defined(VK_GGP_stream_descriptor_surface) */
+#if defined(VK_GOOGLE_display_timing)
+PFN_vkGetPastPresentationTimingGOOGLE vkGetPastPresentationTimingGOOGLE;
+PFN_vkGetRefreshCycleDurationGOOGLE vkGetRefreshCycleDurationGOOGLE;
+#endif /* defined(VK_GOOGLE_display_timing) */
+#if defined(VK_HUAWEI_subpass_shading)
+PFN_vkCmdSubpassShadingHUAWEI vkCmdSubpassShadingHUAWEI;
+PFN_vkGetSubpassShadingMaxWorkgroupSizeHUAWEI vkGetSubpassShadingMaxWorkgroupSizeHUAWEI;
+#endif /* defined(VK_HUAWEI_subpass_shading) */
+#if defined(VK_INTEL_performance_query)
+PFN_vkAcquirePerformanceConfigurationINTEL vkAcquirePerformanceConfigurationINTEL;
+PFN_vkCmdSetPerformanceMarkerINTEL vkCmdSetPerformanceMarkerINTEL;
+PFN_vkCmdSetPerformanceOverrideINTEL vkCmdSetPerformanceOverrideINTEL;
+PFN_vkCmdSetPerformanceStreamMarkerINTEL vkCmdSetPerformanceStreamMarkerINTEL;
+PFN_vkGetPerformanceParameterINTEL vkGetPerformanceParameterINTEL;
+PFN_vkInitializePerformanceApiINTEL vkInitializePerformanceApiINTEL;
+PFN_vkQueueSetPerformanceConfigurationINTEL vkQueueSetPerformanceConfigurationINTEL;
+PFN_vkReleasePerformanceConfigurationINTEL vkReleasePerformanceConfigurationINTEL;
+PFN_vkUninitializePerformanceApiINTEL vkUninitializePerformanceApiINTEL;
+#endif /* defined(VK_INTEL_performance_query) */
+#if defined(VK_KHR_acceleration_structure)
+PFN_vkBuildAccelerationStructuresKHR vkBuildAccelerationStructuresKHR;
+PFN_vkCmdBuildAccelerationStructuresIndirectKHR vkCmdBuildAccelerationStructuresIndirectKHR;
+PFN_vkCmdBuildAccelerationStructuresKHR vkCmdBuildAccelerationStructuresKHR;
+PFN_vkCmdCopyAccelerationStructureKHR vkCmdCopyAccelerationStructureKHR;
+PFN_vkCmdCopyAccelerationStructureToMemoryKHR vkCmdCopyAccelerationStructureToMemoryKHR;
+PFN_vkCmdCopyMemoryToAccelerationStructureKHR vkCmdCopyMemoryToAccelerationStructureKHR;
+PFN_vkCmdWriteAccelerationStructuresPropertiesKHR vkCmdWriteAccelerationStructuresPropertiesKHR;
+PFN_vkCopyAccelerationStructureKHR vkCopyAccelerationStructureKHR;
+PFN_vkCopyAccelerationStructureToMemoryKHR vkCopyAccelerationStructureToMemoryKHR;
+PFN_vkCopyMemoryToAccelerationStructureKHR vkCopyMemoryToAccelerationStructureKHR;
+PFN_vkCreateAccelerationStructureKHR vkCreateAccelerationStructureKHR;
+PFN_vkDestroyAccelerationStructureKHR vkDestroyAccelerationStructureKHR;
+PFN_vkGetAccelerationStructureBuildSizesKHR vkGetAccelerationStructureBuildSizesKHR;
+PFN_vkGetAccelerationStructureDeviceAddressKHR vkGetAccelerationStructureDeviceAddressKHR;
+PFN_vkGetDeviceAccelerationStructureCompatibilityKHR vkGetDeviceAccelerationStructureCompatibilityKHR;
+PFN_vkWriteAccelerationStructuresPropertiesKHR vkWriteAccelerationStructuresPropertiesKHR;
+#endif /* defined(VK_KHR_acceleration_structure) */
+#if defined(VK_KHR_android_surface)
+PFN_vkCreateAndroidSurfaceKHR vkCreateAndroidSurfaceKHR;
+#endif /* defined(VK_KHR_android_surface) */
+#if defined(VK_KHR_bind_memory2)
+PFN_vkBindBufferMemory2KHR vkBindBufferMemory2KHR;
+PFN_vkBindImageMemory2KHR vkBindImageMemory2KHR;
+#endif /* defined(VK_KHR_bind_memory2) */
+#if defined(VK_KHR_buffer_device_address)
+PFN_vkGetBufferDeviceAddressKHR vkGetBufferDeviceAddressKHR;
+PFN_vkGetBufferOpaqueCaptureAddressKHR vkGetBufferOpaqueCaptureAddressKHR;
+PFN_vkGetDeviceMemoryOpaqueCaptureAddressKHR vkGetDeviceMemoryOpaqueCaptureAddressKHR;
+#endif /* defined(VK_KHR_buffer_device_address) */
+#if defined(VK_KHR_copy_commands2)
+PFN_vkCmdBlitImage2KHR vkCmdBlitImage2KHR;
+PFN_vkCmdCopyBuffer2KHR vkCmdCopyBuffer2KHR;
+PFN_vkCmdCopyBufferToImage2KHR vkCmdCopyBufferToImage2KHR;
+PFN_vkCmdCopyImage2KHR vkCmdCopyImage2KHR;
+PFN_vkCmdCopyImageToBuffer2KHR vkCmdCopyImageToBuffer2KHR;
+PFN_vkCmdResolveImage2KHR vkCmdResolveImage2KHR;
+#endif /* defined(VK_KHR_copy_commands2) */
+#if defined(VK_KHR_create_renderpass2)
+PFN_vkCmdBeginRenderPass2KHR vkCmdBeginRenderPass2KHR;
+PFN_vkCmdEndRenderPass2KHR vkCmdEndRenderPass2KHR;
+PFN_vkCmdNextSubpass2KHR vkCmdNextSubpass2KHR;
+PFN_vkCreateRenderPass2KHR vkCreateRenderPass2KHR;
+#endif /* defined(VK_KHR_create_renderpass2) */
+#if defined(VK_KHR_deferred_host_operations)
+PFN_vkCreateDeferredOperationKHR vkCreateDeferredOperationKHR;
+PFN_vkDeferredOperationJoinKHR vkDeferredOperationJoinKHR;
+PFN_vkDestroyDeferredOperationKHR vkDestroyDeferredOperationKHR;
+PFN_vkGetDeferredOperationMaxConcurrencyKHR vkGetDeferredOperationMaxConcurrencyKHR;
+PFN_vkGetDeferredOperationResultKHR vkGetDeferredOperationResultKHR;
+#endif /* defined(VK_KHR_deferred_host_operations) */
+#if defined(VK_KHR_descriptor_update_template)
+PFN_vkCreateDescriptorUpdateTemplateKHR vkCreateDescriptorUpdateTemplateKHR;
+PFN_vkDestroyDescriptorUpdateTemplateKHR vkDestroyDescriptorUpdateTemplateKHR;
+PFN_vkUpdateDescriptorSetWithTemplateKHR vkUpdateDescriptorSetWithTemplateKHR;
+#endif /* defined(VK_KHR_descriptor_update_template) */
+#if defined(VK_KHR_device_group)
+PFN_vkCmdDispatchBaseKHR vkCmdDispatchBaseKHR;
+PFN_vkCmdSetDeviceMaskKHR vkCmdSetDeviceMaskKHR;
+PFN_vkGetDeviceGroupPeerMemoryFeaturesKHR vkGetDeviceGroupPeerMemoryFeaturesKHR;
+#endif /* defined(VK_KHR_device_group) */
+#if defined(VK_KHR_device_group_creation)
+PFN_vkEnumeratePhysicalDeviceGroupsKHR vkEnumeratePhysicalDeviceGroupsKHR;
+#endif /* defined(VK_KHR_device_group_creation) */
+#if defined(VK_KHR_display)
+PFN_vkCreateDisplayModeKHR vkCreateDisplayModeKHR;
+PFN_vkCreateDisplayPlaneSurfaceKHR vkCreateDisplayPlaneSurfaceKHR;
+PFN_vkGetDisplayModePropertiesKHR vkGetDisplayModePropertiesKHR;
+PFN_vkGetDisplayPlaneCapabilitiesKHR vkGetDisplayPlaneCapabilitiesKHR;
+PFN_vkGetDisplayPlaneSupportedDisplaysKHR vkGetDisplayPlaneSupportedDisplaysKHR;
+PFN_vkGetPhysicalDeviceDisplayPlanePropertiesKHR vkGetPhysicalDeviceDisplayPlanePropertiesKHR;
+PFN_vkGetPhysicalDeviceDisplayPropertiesKHR vkGetPhysicalDeviceDisplayPropertiesKHR;
+#endif /* defined(VK_KHR_display) */
+#if defined(VK_KHR_display_swapchain)
+PFN_vkCreateSharedSwapchainsKHR vkCreateSharedSwapchainsKHR;
+#endif /* defined(VK_KHR_display_swapchain) */
+#if defined(VK_KHR_draw_indirect_count)
+PFN_vkCmdDrawIndexedIndirectCountKHR vkCmdDrawIndexedIndirectCountKHR;
+PFN_vkCmdDrawIndirectCountKHR vkCmdDrawIndirectCountKHR;
+#endif /* defined(VK_KHR_draw_indirect_count) */
+#if defined(VK_KHR_external_fence_capabilities)
+PFN_vkGetPhysicalDeviceExternalFencePropertiesKHR vkGetPhysicalDeviceExternalFencePropertiesKHR;
+#endif /* defined(VK_KHR_external_fence_capabilities) */
+#if defined(VK_KHR_external_fence_fd)
+PFN_vkGetFenceFdKHR vkGetFenceFdKHR;
+PFN_vkImportFenceFdKHR vkImportFenceFdKHR;
+#endif /* defined(VK_KHR_external_fence_fd) */
+#if defined(VK_KHR_external_fence_win32)
+PFN_vkGetFenceWin32HandleKHR vkGetFenceWin32HandleKHR;
+PFN_vkImportFenceWin32HandleKHR vkImportFenceWin32HandleKHR;
+#endif /* defined(VK_KHR_external_fence_win32) */
+#if defined(VK_KHR_external_memory_capabilities)
+PFN_vkGetPhysicalDeviceExternalBufferPropertiesKHR vkGetPhysicalDeviceExternalBufferPropertiesKHR;
+#endif /* defined(VK_KHR_external_memory_capabilities) */
+#if defined(VK_KHR_external_memory_fd)
+PFN_vkGetMemoryFdKHR vkGetMemoryFdKHR;
+PFN_vkGetMemoryFdPropertiesKHR vkGetMemoryFdPropertiesKHR;
+#endif /* defined(VK_KHR_external_memory_fd) */
+#if defined(VK_KHR_external_memory_win32)
+PFN_vkGetMemoryWin32HandleKHR vkGetMemoryWin32HandleKHR;
+PFN_vkGetMemoryWin32HandlePropertiesKHR vkGetMemoryWin32HandlePropertiesKHR;
+#endif /* defined(VK_KHR_external_memory_win32) */
+#if defined(VK_KHR_external_semaphore_capabilities)
+PFN_vkGetPhysicalDeviceExternalSemaphorePropertiesKHR vkGetPhysicalDeviceExternalSemaphorePropertiesKHR;
+#endif /* defined(VK_KHR_external_semaphore_capabilities) */
+#if defined(VK_KHR_external_semaphore_fd)
+PFN_vkGetSemaphoreFdKHR vkGetSemaphoreFdKHR;
+PFN_vkImportSemaphoreFdKHR vkImportSemaphoreFdKHR;
+#endif /* defined(VK_KHR_external_semaphore_fd) */
+#if defined(VK_KHR_external_semaphore_win32)
+PFN_vkGetSemaphoreWin32HandleKHR vkGetSemaphoreWin32HandleKHR;
+PFN_vkImportSemaphoreWin32HandleKHR vkImportSemaphoreWin32HandleKHR;
+#endif /* defined(VK_KHR_external_semaphore_win32) */
+#if defined(VK_KHR_fragment_shading_rate)
+PFN_vkCmdSetFragmentShadingRateKHR vkCmdSetFragmentShadingRateKHR;
+PFN_vkGetPhysicalDeviceFragmentShadingRatesKHR vkGetPhysicalDeviceFragmentShadingRatesKHR;
+#endif /* defined(VK_KHR_fragment_shading_rate) */
+#if defined(VK_KHR_get_display_properties2)
+PFN_vkGetDisplayModeProperties2KHR vkGetDisplayModeProperties2KHR;
+PFN_vkGetDisplayPlaneCapabilities2KHR vkGetDisplayPlaneCapabilities2KHR;
+PFN_vkGetPhysicalDeviceDisplayPlaneProperties2KHR vkGetPhysicalDeviceDisplayPlaneProperties2KHR;
+PFN_vkGetPhysicalDeviceDisplayProperties2KHR vkGetPhysicalDeviceDisplayProperties2KHR;
+#endif /* defined(VK_KHR_get_display_properties2) */
+#if defined(VK_KHR_get_memory_requirements2)
+PFN_vkGetBufferMemoryRequirements2KHR vkGetBufferMemoryRequirements2KHR;
+PFN_vkGetImageMemoryRequirements2KHR vkGetImageMemoryRequirements2KHR;
+PFN_vkGetImageSparseMemoryRequirements2KHR vkGetImageSparseMemoryRequirements2KHR;
+#endif /* defined(VK_KHR_get_memory_requirements2) */
+#if defined(VK_KHR_get_physical_device_properties2)
+PFN_vkGetPhysicalDeviceFeatures2KHR vkGetPhysicalDeviceFeatures2KHR;
+PFN_vkGetPhysicalDeviceFormatProperties2KHR vkGetPhysicalDeviceFormatProperties2KHR;
+PFN_vkGetPhysicalDeviceImageFormatProperties2KHR vkGetPhysicalDeviceImageFormatProperties2KHR;
+PFN_vkGetPhysicalDeviceMemoryProperties2KHR vkGetPhysicalDeviceMemoryProperties2KHR;
+PFN_vkGetPhysicalDeviceProperties2KHR vkGetPhysicalDeviceProperties2KHR;
+PFN_vkGetPhysicalDeviceQueueFamilyProperties2KHR vkGetPhysicalDeviceQueueFamilyProperties2KHR;
+PFN_vkGetPhysicalDeviceSparseImageFormatProperties2KHR vkGetPhysicalDeviceSparseImageFormatProperties2KHR;
+#endif /* defined(VK_KHR_get_physical_device_properties2) */
+#if defined(VK_KHR_get_surface_capabilities2)
+PFN_vkGetPhysicalDeviceSurfaceCapabilities2KHR vkGetPhysicalDeviceSurfaceCapabilities2KHR;
+PFN_vkGetPhysicalDeviceSurfaceFormats2KHR vkGetPhysicalDeviceSurfaceFormats2KHR;
+#endif /* defined(VK_KHR_get_surface_capabilities2) */
+#if defined(VK_KHR_maintenance1)
+PFN_vkTrimCommandPoolKHR vkTrimCommandPoolKHR;
+#endif /* defined(VK_KHR_maintenance1) */
+#if defined(VK_KHR_maintenance3)
+PFN_vkGetDescriptorSetLayoutSupportKHR vkGetDescriptorSetLayoutSupportKHR;
+#endif /* defined(VK_KHR_maintenance3) */
+#if defined(VK_KHR_performance_query)
+PFN_vkAcquireProfilingLockKHR vkAcquireProfilingLockKHR;
+PFN_vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR;
+PFN_vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR;
+PFN_vkReleaseProfilingLockKHR vkReleaseProfilingLockKHR;
+#endif /* defined(VK_KHR_performance_query) */
+#if defined(VK_KHR_pipeline_executable_properties)
+PFN_vkGetPipelineExecutableInternalRepresentationsKHR vkGetPipelineExecutableInternalRepresentationsKHR;
+PFN_vkGetPipelineExecutablePropertiesKHR vkGetPipelineExecutablePropertiesKHR;
+PFN_vkGetPipelineExecutableStatisticsKHR vkGetPipelineExecutableStatisticsKHR;
+#endif /* defined(VK_KHR_pipeline_executable_properties) */
+#if defined(VK_KHR_push_descriptor)
+PFN_vkCmdPushDescriptorSetKHR vkCmdPushDescriptorSetKHR;
+#endif /* defined(VK_KHR_push_descriptor) */
+#if defined(VK_KHR_ray_tracing_pipeline)
+PFN_vkCmdSetRayTracingPipelineStackSizeKHR vkCmdSetRayTracingPipelineStackSizeKHR;
+PFN_vkCmdTraceRaysIndirectKHR vkCmdTraceRaysIndirectKHR;
+PFN_vkCmdTraceRaysKHR vkCmdTraceRaysKHR;
+PFN_vkCreateRayTracingPipelinesKHR vkCreateRayTracingPipelinesKHR;
+PFN_vkGetRayTracingCaptureReplayShaderGroupHandlesKHR vkGetRayTracingCaptureReplayShaderGroupHandlesKHR;
+PFN_vkGetRayTracingShaderGroupHandlesKHR vkGetRayTracingShaderGroupHandlesKHR;
+PFN_vkGetRayTracingShaderGroupStackSizeKHR vkGetRayTracingShaderGroupStackSizeKHR;
+#endif /* defined(VK_KHR_ray_tracing_pipeline) */
+#if defined(VK_KHR_sampler_ycbcr_conversion)
+PFN_vkCreateSamplerYcbcrConversionKHR vkCreateSamplerYcbcrConversionKHR;
+PFN_vkDestroySamplerYcbcrConversionKHR vkDestroySamplerYcbcrConversionKHR;
+#endif /* defined(VK_KHR_sampler_ycbcr_conversion) */
+#if defined(VK_KHR_shared_presentable_image)
+PFN_vkGetSwapchainStatusKHR vkGetSwapchainStatusKHR;
+#endif /* defined(VK_KHR_shared_presentable_image) */
+#if defined(VK_KHR_surface)
+PFN_vkDestroySurfaceKHR vkDestroySurfaceKHR;
+PFN_vkGetPhysicalDeviceSurfaceCapabilitiesKHR vkGetPhysicalDeviceSurfaceCapabilitiesKHR;
+PFN_vkGetPhysicalDeviceSurfaceFormatsKHR vkGetPhysicalDeviceSurfaceFormatsKHR;
+PFN_vkGetPhysicalDeviceSurfacePresentModesKHR vkGetPhysicalDeviceSurfacePresentModesKHR;
+PFN_vkGetPhysicalDeviceSurfaceSupportKHR vkGetPhysicalDeviceSurfaceSupportKHR;
+#endif /* defined(VK_KHR_surface) */
+#if defined(VK_KHR_swapchain)
+PFN_vkAcquireNextImageKHR vkAcquireNextImageKHR;
+PFN_vkCreateSwapchainKHR vkCreateSwapchainKHR;
+PFN_vkDestroySwapchainKHR vkDestroySwapchainKHR;
+PFN_vkGetSwapchainImagesKHR vkGetSwapchainImagesKHR;
+PFN_vkQueuePresentKHR vkQueuePresentKHR;
+#endif /* defined(VK_KHR_swapchain) */
+#if defined(VK_KHR_synchronization2)
+PFN_vkCmdPipelineBarrier2KHR vkCmdPipelineBarrier2KHR;
+PFN_vkCmdResetEvent2KHR vkCmdResetEvent2KHR;
+PFN_vkCmdSetEvent2KHR vkCmdSetEvent2KHR;
+PFN_vkCmdWaitEvents2KHR vkCmdWaitEvents2KHR;
+PFN_vkCmdWriteTimestamp2KHR vkCmdWriteTimestamp2KHR;
+PFN_vkQueueSubmit2KHR vkQueueSubmit2KHR;
+#endif /* defined(VK_KHR_synchronization2) */
+#if defined(VK_KHR_synchronization2) && defined(VK_AMD_buffer_marker)
+PFN_vkCmdWriteBufferMarker2AMD vkCmdWriteBufferMarker2AMD;
+#endif /* defined(VK_KHR_synchronization2) && defined(VK_AMD_buffer_marker) */
+#if defined(VK_KHR_synchronization2) && defined(VK_NV_device_diagnostic_checkpoints)
+PFN_vkGetQueueCheckpointData2NV vkGetQueueCheckpointData2NV;
+#endif /* defined(VK_KHR_synchronization2) && defined(VK_NV_device_diagnostic_checkpoints) */
+#if defined(VK_KHR_timeline_semaphore)
+PFN_vkGetSemaphoreCounterValueKHR vkGetSemaphoreCounterValueKHR;
+PFN_vkSignalSemaphoreKHR vkSignalSemaphoreKHR;
+PFN_vkWaitSemaphoresKHR vkWaitSemaphoresKHR;
+#endif /* defined(VK_KHR_timeline_semaphore) */
+#if defined(VK_KHR_video_decode_queue)
+PFN_vkCmdDecodeVideoKHR vkCmdDecodeVideoKHR;
+#endif /* defined(VK_KHR_video_decode_queue) */
+#if defined(VK_KHR_video_encode_queue)
+PFN_vkCmdEncodeVideoKHR vkCmdEncodeVideoKHR;
+#endif /* defined(VK_KHR_video_encode_queue) */
+#if defined(VK_KHR_video_queue)
+PFN_vkBindVideoSessionMemoryKHR vkBindVideoSessionMemoryKHR;
+PFN_vkCmdBeginVideoCodingKHR vkCmdBeginVideoCodingKHR;
+PFN_vkCmdControlVideoCodingKHR vkCmdControlVideoCodingKHR;
+PFN_vkCmdEndVideoCodingKHR vkCmdEndVideoCodingKHR;
+PFN_vkCreateVideoSessionKHR vkCreateVideoSessionKHR;
+PFN_vkCreateVideoSessionParametersKHR vkCreateVideoSessionParametersKHR;
+PFN_vkDestroyVideoSessionKHR vkDestroyVideoSessionKHR;
+PFN_vkDestroyVideoSessionParametersKHR vkDestroyVideoSessionParametersKHR;
+PFN_vkGetPhysicalDeviceVideoCapabilitiesKHR vkGetPhysicalDeviceVideoCapabilitiesKHR;
+PFN_vkGetPhysicalDeviceVideoFormatPropertiesKHR vkGetPhysicalDeviceVideoFormatPropertiesKHR;
+PFN_vkGetVideoSessionMemoryRequirementsKHR vkGetVideoSessionMemoryRequirementsKHR;
+PFN_vkUpdateVideoSessionParametersKHR vkUpdateVideoSessionParametersKHR;
+#endif /* defined(VK_KHR_video_queue) */
+#if defined(VK_KHR_wayland_surface)
+PFN_vkCreateWaylandSurfaceKHR vkCreateWaylandSurfaceKHR;
+PFN_vkGetPhysicalDeviceWaylandPresentationSupportKHR vkGetPhysicalDeviceWaylandPresentationSupportKHR;
+#endif /* defined(VK_KHR_wayland_surface) */
+#if defined(VK_KHR_win32_surface)
+PFN_vkCreateWin32SurfaceKHR vkCreateWin32SurfaceKHR;
+PFN_vkGetPhysicalDeviceWin32PresentationSupportKHR vkGetPhysicalDeviceWin32PresentationSupportKHR;
+#endif /* defined(VK_KHR_win32_surface) */
+#if defined(VK_KHR_xcb_surface)
+PFN_vkCreateXcbSurfaceKHR vkCreateXcbSurfaceKHR;
+PFN_vkGetPhysicalDeviceXcbPresentationSupportKHR vkGetPhysicalDeviceXcbPresentationSupportKHR;
+#endif /* defined(VK_KHR_xcb_surface) */
+#if defined(VK_KHR_xlib_surface)
+PFN_vkCreateXlibSurfaceKHR vkCreateXlibSurfaceKHR;
+PFN_vkGetPhysicalDeviceXlibPresentationSupportKHR vkGetPhysicalDeviceXlibPresentationSupportKHR;
+#endif /* defined(VK_KHR_xlib_surface) */
+#if defined(VK_MVK_ios_surface)
+PFN_vkCreateIOSSurfaceMVK vkCreateIOSSurfaceMVK;
+#endif /* defined(VK_MVK_ios_surface) */
+#if defined(VK_MVK_macos_surface)
+PFN_vkCreateMacOSSurfaceMVK vkCreateMacOSSurfaceMVK;
+#endif /* defined(VK_MVK_macos_surface) */
+#if defined(VK_NN_vi_surface)
+PFN_vkCreateViSurfaceNN vkCreateViSurfaceNN;
+#endif /* defined(VK_NN_vi_surface) */
+#if defined(VK_NVX_binary_import)
+PFN_vkCmdCuLaunchKernelNVX vkCmdCuLaunchKernelNVX;
+PFN_vkCreateCuFunctionNVX vkCreateCuFunctionNVX;
+PFN_vkCreateCuModuleNVX vkCreateCuModuleNVX;
+PFN_vkDestroyCuFunctionNVX vkDestroyCuFunctionNVX;
+PFN_vkDestroyCuModuleNVX vkDestroyCuModuleNVX;
+#endif /* defined(VK_NVX_binary_import) */
+#if defined(VK_NVX_image_view_handle)
+PFN_vkGetImageViewAddressNVX vkGetImageViewAddressNVX;
+PFN_vkGetImageViewHandleNVX vkGetImageViewHandleNVX;
+#endif /* defined(VK_NVX_image_view_handle) */
+#if defined(VK_NV_acquire_winrt_display)
+PFN_vkAcquireWinrtDisplayNV vkAcquireWinrtDisplayNV;
+PFN_vkGetWinrtDisplayNV vkGetWinrtDisplayNV;
+#endif /* defined(VK_NV_acquire_winrt_display) */
+#if defined(VK_NV_clip_space_w_scaling)
+PFN_vkCmdSetViewportWScalingNV vkCmdSetViewportWScalingNV;
+#endif /* defined(VK_NV_clip_space_w_scaling) */
+#if defined(VK_NV_cooperative_matrix)
+PFN_vkGetPhysicalDeviceCooperativeMatrixPropertiesNV vkGetPhysicalDeviceCooperativeMatrixPropertiesNV;
+#endif /* defined(VK_NV_cooperative_matrix) */
+#if defined(VK_NV_coverage_reduction_mode)
+PFN_vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV;
+#endif /* defined(VK_NV_coverage_reduction_mode) */
+#if defined(VK_NV_device_diagnostic_checkpoints)
+PFN_vkCmdSetCheckpointNV vkCmdSetCheckpointNV;
+PFN_vkGetQueueCheckpointDataNV vkGetQueueCheckpointDataNV;
+#endif /* defined(VK_NV_device_diagnostic_checkpoints) */
+#if defined(VK_NV_device_generated_commands)
+PFN_vkCmdBindPipelineShaderGroupNV vkCmdBindPipelineShaderGroupNV;
+PFN_vkCmdExecuteGeneratedCommandsNV vkCmdExecuteGeneratedCommandsNV;
+PFN_vkCmdPreprocessGeneratedCommandsNV vkCmdPreprocessGeneratedCommandsNV;
+PFN_vkCreateIndirectCommandsLayoutNV vkCreateIndirectCommandsLayoutNV;
+PFN_vkDestroyIndirectCommandsLayoutNV vkDestroyIndirectCommandsLayoutNV;
+PFN_vkGetGeneratedCommandsMemoryRequirementsNV vkGetGeneratedCommandsMemoryRequirementsNV;
+#endif /* defined(VK_NV_device_generated_commands) */
+#if defined(VK_NV_external_memory_capabilities)
+PFN_vkGetPhysicalDeviceExternalImageFormatPropertiesNV vkGetPhysicalDeviceExternalImageFormatPropertiesNV;
+#endif /* defined(VK_NV_external_memory_capabilities) */
+#if defined(VK_NV_external_memory_win32)
+PFN_vkGetMemoryWin32HandleNV vkGetMemoryWin32HandleNV;
+#endif /* defined(VK_NV_external_memory_win32) */
+#if defined(VK_NV_fragment_shading_rate_enums)
+PFN_vkCmdSetFragmentShadingRateEnumNV vkCmdSetFragmentShadingRateEnumNV;
+#endif /* defined(VK_NV_fragment_shading_rate_enums) */
+#if defined(VK_NV_mesh_shader)
+PFN_vkCmdDrawMeshTasksIndirectCountNV vkCmdDrawMeshTasksIndirectCountNV;
+PFN_vkCmdDrawMeshTasksIndirectNV vkCmdDrawMeshTasksIndirectNV;
+PFN_vkCmdDrawMeshTasksNV vkCmdDrawMeshTasksNV;
+#endif /* defined(VK_NV_mesh_shader) */
+#if defined(VK_NV_ray_tracing)
+PFN_vkBindAccelerationStructureMemoryNV vkBindAccelerationStructureMemoryNV;
+PFN_vkCmdBuildAccelerationStructureNV vkCmdBuildAccelerationStructureNV;
+PFN_vkCmdCopyAccelerationStructureNV vkCmdCopyAccelerationStructureNV;
+PFN_vkCmdTraceRaysNV vkCmdTraceRaysNV;
+PFN_vkCmdWriteAccelerationStructuresPropertiesNV vkCmdWriteAccelerationStructuresPropertiesNV;
+PFN_vkCompileDeferredNV vkCompileDeferredNV;
+PFN_vkCreateAccelerationStructureNV vkCreateAccelerationStructureNV;
+PFN_vkCreateRayTracingPipelinesNV vkCreateRayTracingPipelinesNV;
+PFN_vkDestroyAccelerationStructureNV vkDestroyAccelerationStructureNV;
+PFN_vkGetAccelerationStructureHandleNV vkGetAccelerationStructureHandleNV;
+PFN_vkGetAccelerationStructureMemoryRequirementsNV vkGetAccelerationStructureMemoryRequirementsNV;
+PFN_vkGetRayTracingShaderGroupHandlesNV vkGetRayTracingShaderGroupHandlesNV;
+#endif /* defined(VK_NV_ray_tracing) */
+#if defined(VK_NV_scissor_exclusive)
+PFN_vkCmdSetExclusiveScissorNV vkCmdSetExclusiveScissorNV;
+#endif /* defined(VK_NV_scissor_exclusive) */
+#if defined(VK_NV_shading_rate_image)
+PFN_vkCmdBindShadingRateImageNV vkCmdBindShadingRateImageNV;
+PFN_vkCmdSetCoarseSampleOrderNV vkCmdSetCoarseSampleOrderNV;
+PFN_vkCmdSetViewportShadingRatePaletteNV vkCmdSetViewportShadingRatePaletteNV;
+#endif /* defined(VK_NV_shading_rate_image) */
+#if defined(VK_QNX_screen_surface)
+PFN_vkCreateScreenSurfaceQNX vkCreateScreenSurfaceQNX;
+PFN_vkGetPhysicalDeviceScreenPresentationSupportQNX vkGetPhysicalDeviceScreenPresentationSupportQNX;
+#endif /* defined(VK_QNX_screen_surface) */
+#if (defined(VK_EXT_full_screen_exclusive) && defined(VK_KHR_device_group)) || (defined(VK_EXT_full_screen_exclusive) && defined(VK_VERSION_1_1))
+PFN_vkGetDeviceGroupSurfacePresentModes2EXT vkGetDeviceGroupSurfacePresentModes2EXT;
+#endif /* (defined(VK_EXT_full_screen_exclusive) && defined(VK_KHR_device_group)) || (defined(VK_EXT_full_screen_exclusive) && defined(VK_VERSION_1_1)) */
+#if (defined(VK_KHR_descriptor_update_template) && defined(VK_KHR_push_descriptor)) || (defined(VK_KHR_push_descriptor) && defined(VK_VERSION_1_1)) || (defined(VK_KHR_push_descriptor) && defined(VK_KHR_descriptor_update_template))
+PFN_vkCmdPushDescriptorSetWithTemplateKHR vkCmdPushDescriptorSetWithTemplateKHR;
+#endif /* (defined(VK_KHR_descriptor_update_template) && defined(VK_KHR_push_descriptor)) || (defined(VK_KHR_push_descriptor) && defined(VK_VERSION_1_1)) || (defined(VK_KHR_push_descriptor) && defined(VK_KHR_descriptor_update_template)) */
+#if (defined(VK_KHR_device_group) && defined(VK_KHR_surface)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1))
+PFN_vkGetDeviceGroupPresentCapabilitiesKHR vkGetDeviceGroupPresentCapabilitiesKHR;
+PFN_vkGetDeviceGroupSurfacePresentModesKHR vkGetDeviceGroupSurfacePresentModesKHR;
+PFN_vkGetPhysicalDevicePresentRectanglesKHR vkGetPhysicalDevicePresentRectanglesKHR;
+#endif /* (defined(VK_KHR_device_group) && defined(VK_KHR_surface)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1)) */
+#if (defined(VK_KHR_device_group) && defined(VK_KHR_swapchain)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1))
+PFN_vkAcquireNextImage2KHR vkAcquireNextImage2KHR;
+#endif /* (defined(VK_KHR_device_group) && defined(VK_KHR_swapchain)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1)) */
+/* VOLK_GENERATE_PROTOTYPES_C */
+
+#ifdef __GNUC__
+# pragma GCC visibility pop
+#endif
+
+#ifdef __cplusplus
+}
+#endif
+/* clang-format on */
diff --git a/thirdparty/volk/volk.h b/thirdparty/volk/volk.h
new file mode 100644
index 0000000000..15cf4df5cb
--- /dev/null
+++ b/thirdparty/volk/volk.h
@@ -0,0 +1,1442 @@
+/**
+ * volk
+ *
+ * Copyright (C) 2018-2019, by Arseny Kapoulkine (arseny.kapoulkine@gmail.com)
+ * Report bugs and download new versions at https://github.com/zeux/volk
+ *
+ * This library is distributed under the MIT License. See notice at the end of this file.
+ */
+/* clang-format off */
+#ifndef VOLK_H_
+#define VOLK_H_
+
+#if defined(VULKAN_H_) && !defined(VK_NO_PROTOTYPES)
+# error To use volk, you need to define VK_NO_PROTOTYPES before including vulkan.h
+#endif
+
+/* VOLK_GENERATE_VERSION_DEFINE */
+#define VOLK_HEADER_VERSION 182
+/* VOLK_GENERATE_VERSION_DEFINE */
+
+#ifndef VK_NO_PROTOTYPES
+# define VK_NO_PROTOTYPES
+#endif
+
+#ifndef VULKAN_H_
+# ifdef VOLK_VULKAN_H_PATH
+# include VOLK_VULKAN_H_PATH
+# elif defined(VK_USE_PLATFORM_WIN32_KHR)
+# include <vulkan/vk_platform.h>
+# include <vulkan/vulkan_core.h>
+
+ /* When VK_USE_PLATFORM_WIN32_KHR is defined, instead of including vulkan.h directly, we include individual parts of the SDK
+ * This is necessary to avoid including <windows.h> which is very heavy - it takes 200ms to parse without WIN32_LEAN_AND_MEAN
+ * and 100ms to parse with it. vulkan_win32.h only needs a few symbols that are easy to redefine ourselves.
+ */
+ typedef unsigned long DWORD;
+ typedef const wchar_t* LPCWSTR;
+ typedef void* HANDLE;
+ typedef struct HINSTANCE__* HINSTANCE;
+ typedef struct HWND__* HWND;
+ typedef struct HMONITOR__* HMONITOR;
+ typedef struct _SECURITY_ATTRIBUTES SECURITY_ATTRIBUTES;
+
+# include <vulkan/vulkan_win32.h>
+
+# ifdef VK_ENABLE_BETA_EXTENSIONS
+# include <vulkan/vulkan_beta.h>
+# endif
+# else
+# include <vulkan/vulkan.h>
+# endif
+#endif
+
+/* Disable VK_NVX_image_view_handle because SDK 140 introduced a change that can't be used with prior versions */
+#if VK_HEADER_VERSION < 140
+# undef VK_NVX_image_view_handle
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+struct VolkDeviceTable;
+
+/**
+ * Initialize library by loading Vulkan loader; call this function before creating the Vulkan instance.
+ *
+ * Returns VK_SUCCESS on success and VK_ERROR_INITIALIZATION_FAILED otherwise.
+ */
+VkResult volkInitialize(void);
+
+/**
+ * Initialize library by providing a custom handler to load global symbols.
+ *
+ * This function can be used instead of volkInitialize.
+ * The handler function pointer will be asked to load global Vulkan symbols which require no instance
+ * (such as vkCreateInstance, vkEnumerateInstance* and vkEnumerateInstanceVersion if available).
+ */
+void volkInitializeCustom(PFN_vkGetInstanceProcAddr handler);
+
+/**
+ * Get Vulkan instance version supported by the Vulkan loader, or 0 if Vulkan isn't supported
+ *
+ * Returns 0 if volkInitialize wasn't called or failed.
+ */
+uint32_t volkGetInstanceVersion(void);
+
+/**
+ * Load global function pointers using application-created VkInstance; call this function after creating the Vulkan instance.
+ */
+void volkLoadInstance(VkInstance instance);
+
+/**
+ * Load global function pointers using application-created VkInstance; call this function after creating the Vulkan instance.
+ * Skips loading device-based function pointers, requires usage of volkLoadDevice afterwards.
+ */
+void volkLoadInstanceOnly(VkInstance instance);
+
+/**
+ * Load global function pointers using application-created VkDevice; call this function after creating the Vulkan device.
+ *
+ * Note: this is not suitable for applications that want to use multiple VkDevice objects concurrently.
+ */
+void volkLoadDevice(VkDevice device);
+
+/**
+ * Return last VkInstance for which global function pointers have been loaded via volkLoadInstance(),
+ * or VK_NULL_HANDLE if volkLoadInstance() has not been called.
+ */
+VkInstance volkGetLoadedInstance(void);
+
+/**
+ * Return last VkDevice for which global function pointers have been loaded via volkLoadDevice(),
+ * or VK_NULL_HANDLE if volkLoadDevice() has not been called.
+ */
+VkDevice volkGetLoadedDevice(void);
+
+/**
+ * Load function pointers using application-created VkDevice into a table.
+ * Application should use function pointers from that table instead of using global function pointers.
+ */
+void volkLoadDeviceTable(struct VolkDeviceTable* table, VkDevice device);
+
+/**
+ * Device-specific function pointer table
+ */
+struct VolkDeviceTable
+{
+ /* VOLK_GENERATE_DEVICE_TABLE */
+#if defined(VK_VERSION_1_0)
+ PFN_vkAllocateCommandBuffers vkAllocateCommandBuffers;
+ PFN_vkAllocateDescriptorSets vkAllocateDescriptorSets;
+ PFN_vkAllocateMemory vkAllocateMemory;
+ PFN_vkBeginCommandBuffer vkBeginCommandBuffer;
+ PFN_vkBindBufferMemory vkBindBufferMemory;
+ PFN_vkBindImageMemory vkBindImageMemory;
+ PFN_vkCmdBeginQuery vkCmdBeginQuery;
+ PFN_vkCmdBeginRenderPass vkCmdBeginRenderPass;
+ PFN_vkCmdBindDescriptorSets vkCmdBindDescriptorSets;
+ PFN_vkCmdBindIndexBuffer vkCmdBindIndexBuffer;
+ PFN_vkCmdBindPipeline vkCmdBindPipeline;
+ PFN_vkCmdBindVertexBuffers vkCmdBindVertexBuffers;
+ PFN_vkCmdBlitImage vkCmdBlitImage;
+ PFN_vkCmdClearAttachments vkCmdClearAttachments;
+ PFN_vkCmdClearColorImage vkCmdClearColorImage;
+ PFN_vkCmdClearDepthStencilImage vkCmdClearDepthStencilImage;
+ PFN_vkCmdCopyBuffer vkCmdCopyBuffer;
+ PFN_vkCmdCopyBufferToImage vkCmdCopyBufferToImage;
+ PFN_vkCmdCopyImage vkCmdCopyImage;
+ PFN_vkCmdCopyImageToBuffer vkCmdCopyImageToBuffer;
+ PFN_vkCmdCopyQueryPoolResults vkCmdCopyQueryPoolResults;
+ PFN_vkCmdDispatch vkCmdDispatch;
+ PFN_vkCmdDispatchIndirect vkCmdDispatchIndirect;
+ PFN_vkCmdDraw vkCmdDraw;
+ PFN_vkCmdDrawIndexed vkCmdDrawIndexed;
+ PFN_vkCmdDrawIndexedIndirect vkCmdDrawIndexedIndirect;
+ PFN_vkCmdDrawIndirect vkCmdDrawIndirect;
+ PFN_vkCmdEndQuery vkCmdEndQuery;
+ PFN_vkCmdEndRenderPass vkCmdEndRenderPass;
+ PFN_vkCmdExecuteCommands vkCmdExecuteCommands;
+ PFN_vkCmdFillBuffer vkCmdFillBuffer;
+ PFN_vkCmdNextSubpass vkCmdNextSubpass;
+ PFN_vkCmdPipelineBarrier vkCmdPipelineBarrier;
+ PFN_vkCmdPushConstants vkCmdPushConstants;
+ PFN_vkCmdResetEvent vkCmdResetEvent;
+ PFN_vkCmdResetQueryPool vkCmdResetQueryPool;
+ PFN_vkCmdResolveImage vkCmdResolveImage;
+ PFN_vkCmdSetBlendConstants vkCmdSetBlendConstants;
+ PFN_vkCmdSetDepthBias vkCmdSetDepthBias;
+ PFN_vkCmdSetDepthBounds vkCmdSetDepthBounds;
+ PFN_vkCmdSetEvent vkCmdSetEvent;
+ PFN_vkCmdSetLineWidth vkCmdSetLineWidth;
+ PFN_vkCmdSetScissor vkCmdSetScissor;
+ PFN_vkCmdSetStencilCompareMask vkCmdSetStencilCompareMask;
+ PFN_vkCmdSetStencilReference vkCmdSetStencilReference;
+ PFN_vkCmdSetStencilWriteMask vkCmdSetStencilWriteMask;
+ PFN_vkCmdSetViewport vkCmdSetViewport;
+ PFN_vkCmdUpdateBuffer vkCmdUpdateBuffer;
+ PFN_vkCmdWaitEvents vkCmdWaitEvents;
+ PFN_vkCmdWriteTimestamp vkCmdWriteTimestamp;
+ PFN_vkCreateBuffer vkCreateBuffer;
+ PFN_vkCreateBufferView vkCreateBufferView;
+ PFN_vkCreateCommandPool vkCreateCommandPool;
+ PFN_vkCreateComputePipelines vkCreateComputePipelines;
+ PFN_vkCreateDescriptorPool vkCreateDescriptorPool;
+ PFN_vkCreateDescriptorSetLayout vkCreateDescriptorSetLayout;
+ PFN_vkCreateEvent vkCreateEvent;
+ PFN_vkCreateFence vkCreateFence;
+ PFN_vkCreateFramebuffer vkCreateFramebuffer;
+ PFN_vkCreateGraphicsPipelines vkCreateGraphicsPipelines;
+ PFN_vkCreateImage vkCreateImage;
+ PFN_vkCreateImageView vkCreateImageView;
+ PFN_vkCreatePipelineCache vkCreatePipelineCache;
+ PFN_vkCreatePipelineLayout vkCreatePipelineLayout;
+ PFN_vkCreateQueryPool vkCreateQueryPool;
+ PFN_vkCreateRenderPass vkCreateRenderPass;
+ PFN_vkCreateSampler vkCreateSampler;
+ PFN_vkCreateSemaphore vkCreateSemaphore;
+ PFN_vkCreateShaderModule vkCreateShaderModule;
+ PFN_vkDestroyBuffer vkDestroyBuffer;
+ PFN_vkDestroyBufferView vkDestroyBufferView;
+ PFN_vkDestroyCommandPool vkDestroyCommandPool;
+ PFN_vkDestroyDescriptorPool vkDestroyDescriptorPool;
+ PFN_vkDestroyDescriptorSetLayout vkDestroyDescriptorSetLayout;
+ PFN_vkDestroyDevice vkDestroyDevice;
+ PFN_vkDestroyEvent vkDestroyEvent;
+ PFN_vkDestroyFence vkDestroyFence;
+ PFN_vkDestroyFramebuffer vkDestroyFramebuffer;
+ PFN_vkDestroyImage vkDestroyImage;
+ PFN_vkDestroyImageView vkDestroyImageView;
+ PFN_vkDestroyPipeline vkDestroyPipeline;
+ PFN_vkDestroyPipelineCache vkDestroyPipelineCache;
+ PFN_vkDestroyPipelineLayout vkDestroyPipelineLayout;
+ PFN_vkDestroyQueryPool vkDestroyQueryPool;
+ PFN_vkDestroyRenderPass vkDestroyRenderPass;
+ PFN_vkDestroySampler vkDestroySampler;
+ PFN_vkDestroySemaphore vkDestroySemaphore;
+ PFN_vkDestroyShaderModule vkDestroyShaderModule;
+ PFN_vkDeviceWaitIdle vkDeviceWaitIdle;
+ PFN_vkEndCommandBuffer vkEndCommandBuffer;
+ PFN_vkFlushMappedMemoryRanges vkFlushMappedMemoryRanges;
+ PFN_vkFreeCommandBuffers vkFreeCommandBuffers;
+ PFN_vkFreeDescriptorSets vkFreeDescriptorSets;
+ PFN_vkFreeMemory vkFreeMemory;
+ PFN_vkGetBufferMemoryRequirements vkGetBufferMemoryRequirements;
+ PFN_vkGetDeviceMemoryCommitment vkGetDeviceMemoryCommitment;
+ PFN_vkGetDeviceQueue vkGetDeviceQueue;
+ PFN_vkGetEventStatus vkGetEventStatus;
+ PFN_vkGetFenceStatus vkGetFenceStatus;
+ PFN_vkGetImageMemoryRequirements vkGetImageMemoryRequirements;
+ PFN_vkGetImageSparseMemoryRequirements vkGetImageSparseMemoryRequirements;
+ PFN_vkGetImageSubresourceLayout vkGetImageSubresourceLayout;
+ PFN_vkGetPipelineCacheData vkGetPipelineCacheData;
+ PFN_vkGetQueryPoolResults vkGetQueryPoolResults;
+ PFN_vkGetRenderAreaGranularity vkGetRenderAreaGranularity;
+ PFN_vkInvalidateMappedMemoryRanges vkInvalidateMappedMemoryRanges;
+ PFN_vkMapMemory vkMapMemory;
+ PFN_vkMergePipelineCaches vkMergePipelineCaches;
+ PFN_vkQueueBindSparse vkQueueBindSparse;
+ PFN_vkQueueSubmit vkQueueSubmit;
+ PFN_vkQueueWaitIdle vkQueueWaitIdle;
+ PFN_vkResetCommandBuffer vkResetCommandBuffer;
+ PFN_vkResetCommandPool vkResetCommandPool;
+ PFN_vkResetDescriptorPool vkResetDescriptorPool;
+ PFN_vkResetEvent vkResetEvent;
+ PFN_vkResetFences vkResetFences;
+ PFN_vkSetEvent vkSetEvent;
+ PFN_vkUnmapMemory vkUnmapMemory;
+ PFN_vkUpdateDescriptorSets vkUpdateDescriptorSets;
+ PFN_vkWaitForFences vkWaitForFences;
+#endif /* defined(VK_VERSION_1_0) */
+#if defined(VK_VERSION_1_1)
+ PFN_vkBindBufferMemory2 vkBindBufferMemory2;
+ PFN_vkBindImageMemory2 vkBindImageMemory2;
+ PFN_vkCmdDispatchBase vkCmdDispatchBase;
+ PFN_vkCmdSetDeviceMask vkCmdSetDeviceMask;
+ PFN_vkCreateDescriptorUpdateTemplate vkCreateDescriptorUpdateTemplate;
+ PFN_vkCreateSamplerYcbcrConversion vkCreateSamplerYcbcrConversion;
+ PFN_vkDestroyDescriptorUpdateTemplate vkDestroyDescriptorUpdateTemplate;
+ PFN_vkDestroySamplerYcbcrConversion vkDestroySamplerYcbcrConversion;
+ PFN_vkGetBufferMemoryRequirements2 vkGetBufferMemoryRequirements2;
+ PFN_vkGetDescriptorSetLayoutSupport vkGetDescriptorSetLayoutSupport;
+ PFN_vkGetDeviceGroupPeerMemoryFeatures vkGetDeviceGroupPeerMemoryFeatures;
+ PFN_vkGetDeviceQueue2 vkGetDeviceQueue2;
+ PFN_vkGetImageMemoryRequirements2 vkGetImageMemoryRequirements2;
+ PFN_vkGetImageSparseMemoryRequirements2 vkGetImageSparseMemoryRequirements2;
+ PFN_vkTrimCommandPool vkTrimCommandPool;
+ PFN_vkUpdateDescriptorSetWithTemplate vkUpdateDescriptorSetWithTemplate;
+#endif /* defined(VK_VERSION_1_1) */
+#if defined(VK_VERSION_1_2)
+ PFN_vkCmdBeginRenderPass2 vkCmdBeginRenderPass2;
+ PFN_vkCmdDrawIndexedIndirectCount vkCmdDrawIndexedIndirectCount;
+ PFN_vkCmdDrawIndirectCount vkCmdDrawIndirectCount;
+ PFN_vkCmdEndRenderPass2 vkCmdEndRenderPass2;
+ PFN_vkCmdNextSubpass2 vkCmdNextSubpass2;
+ PFN_vkCreateRenderPass2 vkCreateRenderPass2;
+ PFN_vkGetBufferDeviceAddress vkGetBufferDeviceAddress;
+ PFN_vkGetBufferOpaqueCaptureAddress vkGetBufferOpaqueCaptureAddress;
+ PFN_vkGetDeviceMemoryOpaqueCaptureAddress vkGetDeviceMemoryOpaqueCaptureAddress;
+ PFN_vkGetSemaphoreCounterValue vkGetSemaphoreCounterValue;
+ PFN_vkResetQueryPool vkResetQueryPool;
+ PFN_vkSignalSemaphore vkSignalSemaphore;
+ PFN_vkWaitSemaphores vkWaitSemaphores;
+#endif /* defined(VK_VERSION_1_2) */
+#if defined(VK_AMD_buffer_marker)
+ PFN_vkCmdWriteBufferMarkerAMD vkCmdWriteBufferMarkerAMD;
+#endif /* defined(VK_AMD_buffer_marker) */
+#if defined(VK_AMD_display_native_hdr)
+ PFN_vkSetLocalDimmingAMD vkSetLocalDimmingAMD;
+#endif /* defined(VK_AMD_display_native_hdr) */
+#if defined(VK_AMD_draw_indirect_count)
+ PFN_vkCmdDrawIndexedIndirectCountAMD vkCmdDrawIndexedIndirectCountAMD;
+ PFN_vkCmdDrawIndirectCountAMD vkCmdDrawIndirectCountAMD;
+#endif /* defined(VK_AMD_draw_indirect_count) */
+#if defined(VK_AMD_shader_info)
+ PFN_vkGetShaderInfoAMD vkGetShaderInfoAMD;
+#endif /* defined(VK_AMD_shader_info) */
+#if defined(VK_ANDROID_external_memory_android_hardware_buffer)
+ PFN_vkGetAndroidHardwareBufferPropertiesANDROID vkGetAndroidHardwareBufferPropertiesANDROID;
+ PFN_vkGetMemoryAndroidHardwareBufferANDROID vkGetMemoryAndroidHardwareBufferANDROID;
+#endif /* defined(VK_ANDROID_external_memory_android_hardware_buffer) */
+#if defined(VK_EXT_buffer_device_address)
+ PFN_vkGetBufferDeviceAddressEXT vkGetBufferDeviceAddressEXT;
+#endif /* defined(VK_EXT_buffer_device_address) */
+#if defined(VK_EXT_calibrated_timestamps)
+ PFN_vkGetCalibratedTimestampsEXT vkGetCalibratedTimestampsEXT;
+#endif /* defined(VK_EXT_calibrated_timestamps) */
+#if defined(VK_EXT_color_write_enable)
+ PFN_vkCmdSetColorWriteEnableEXT vkCmdSetColorWriteEnableEXT;
+#endif /* defined(VK_EXT_color_write_enable) */
+#if defined(VK_EXT_conditional_rendering)
+ PFN_vkCmdBeginConditionalRenderingEXT vkCmdBeginConditionalRenderingEXT;
+ PFN_vkCmdEndConditionalRenderingEXT vkCmdEndConditionalRenderingEXT;
+#endif /* defined(VK_EXT_conditional_rendering) */
+#if defined(VK_EXT_debug_marker)
+ PFN_vkCmdDebugMarkerBeginEXT vkCmdDebugMarkerBeginEXT;
+ PFN_vkCmdDebugMarkerEndEXT vkCmdDebugMarkerEndEXT;
+ PFN_vkCmdDebugMarkerInsertEXT vkCmdDebugMarkerInsertEXT;
+ PFN_vkDebugMarkerSetObjectNameEXT vkDebugMarkerSetObjectNameEXT;
+ PFN_vkDebugMarkerSetObjectTagEXT vkDebugMarkerSetObjectTagEXT;
+#endif /* defined(VK_EXT_debug_marker) */
+#if defined(VK_EXT_discard_rectangles)
+ PFN_vkCmdSetDiscardRectangleEXT vkCmdSetDiscardRectangleEXT;
+#endif /* defined(VK_EXT_discard_rectangles) */
+#if defined(VK_EXT_display_control)
+ PFN_vkDisplayPowerControlEXT vkDisplayPowerControlEXT;
+ PFN_vkGetSwapchainCounterEXT vkGetSwapchainCounterEXT;
+ PFN_vkRegisterDeviceEventEXT vkRegisterDeviceEventEXT;
+ PFN_vkRegisterDisplayEventEXT vkRegisterDisplayEventEXT;
+#endif /* defined(VK_EXT_display_control) */
+#if defined(VK_EXT_extended_dynamic_state)
+ PFN_vkCmdBindVertexBuffers2EXT vkCmdBindVertexBuffers2EXT;
+ PFN_vkCmdSetCullModeEXT vkCmdSetCullModeEXT;
+ PFN_vkCmdSetDepthBoundsTestEnableEXT vkCmdSetDepthBoundsTestEnableEXT;
+ PFN_vkCmdSetDepthCompareOpEXT vkCmdSetDepthCompareOpEXT;
+ PFN_vkCmdSetDepthTestEnableEXT vkCmdSetDepthTestEnableEXT;
+ PFN_vkCmdSetDepthWriteEnableEXT vkCmdSetDepthWriteEnableEXT;
+ PFN_vkCmdSetFrontFaceEXT vkCmdSetFrontFaceEXT;
+ PFN_vkCmdSetPrimitiveTopologyEXT vkCmdSetPrimitiveTopologyEXT;
+ PFN_vkCmdSetScissorWithCountEXT vkCmdSetScissorWithCountEXT;
+ PFN_vkCmdSetStencilOpEXT vkCmdSetStencilOpEXT;
+ PFN_vkCmdSetStencilTestEnableEXT vkCmdSetStencilTestEnableEXT;
+ PFN_vkCmdSetViewportWithCountEXT vkCmdSetViewportWithCountEXT;
+#endif /* defined(VK_EXT_extended_dynamic_state) */
+#if defined(VK_EXT_extended_dynamic_state2)
+ PFN_vkCmdSetDepthBiasEnableEXT vkCmdSetDepthBiasEnableEXT;
+ PFN_vkCmdSetLogicOpEXT vkCmdSetLogicOpEXT;
+ PFN_vkCmdSetPatchControlPointsEXT vkCmdSetPatchControlPointsEXT;
+ PFN_vkCmdSetPrimitiveRestartEnableEXT vkCmdSetPrimitiveRestartEnableEXT;
+ PFN_vkCmdSetRasterizerDiscardEnableEXT vkCmdSetRasterizerDiscardEnableEXT;
+#endif /* defined(VK_EXT_extended_dynamic_state2) */
+#if defined(VK_EXT_external_memory_host)
+ PFN_vkGetMemoryHostPointerPropertiesEXT vkGetMemoryHostPointerPropertiesEXT;
+#endif /* defined(VK_EXT_external_memory_host) */
+#if defined(VK_EXT_full_screen_exclusive)
+ PFN_vkAcquireFullScreenExclusiveModeEXT vkAcquireFullScreenExclusiveModeEXT;
+ PFN_vkReleaseFullScreenExclusiveModeEXT vkReleaseFullScreenExclusiveModeEXT;
+#endif /* defined(VK_EXT_full_screen_exclusive) */
+#if defined(VK_EXT_hdr_metadata)
+ PFN_vkSetHdrMetadataEXT vkSetHdrMetadataEXT;
+#endif /* defined(VK_EXT_hdr_metadata) */
+#if defined(VK_EXT_host_query_reset)
+ PFN_vkResetQueryPoolEXT vkResetQueryPoolEXT;
+#endif /* defined(VK_EXT_host_query_reset) */
+#if defined(VK_EXT_image_drm_format_modifier)
+ PFN_vkGetImageDrmFormatModifierPropertiesEXT vkGetImageDrmFormatModifierPropertiesEXT;
+#endif /* defined(VK_EXT_image_drm_format_modifier) */
+#if defined(VK_EXT_line_rasterization)
+ PFN_vkCmdSetLineStippleEXT vkCmdSetLineStippleEXT;
+#endif /* defined(VK_EXT_line_rasterization) */
+#if defined(VK_EXT_multi_draw)
+ PFN_vkCmdDrawMultiEXT vkCmdDrawMultiEXT;
+ PFN_vkCmdDrawMultiIndexedEXT vkCmdDrawMultiIndexedEXT;
+#endif /* defined(VK_EXT_multi_draw) */
+#if defined(VK_EXT_private_data)
+ PFN_vkCreatePrivateDataSlotEXT vkCreatePrivateDataSlotEXT;
+ PFN_vkDestroyPrivateDataSlotEXT vkDestroyPrivateDataSlotEXT;
+ PFN_vkGetPrivateDataEXT vkGetPrivateDataEXT;
+ PFN_vkSetPrivateDataEXT vkSetPrivateDataEXT;
+#endif /* defined(VK_EXT_private_data) */
+#if defined(VK_EXT_sample_locations)
+ PFN_vkCmdSetSampleLocationsEXT vkCmdSetSampleLocationsEXT;
+#endif /* defined(VK_EXT_sample_locations) */
+#if defined(VK_EXT_transform_feedback)
+ PFN_vkCmdBeginQueryIndexedEXT vkCmdBeginQueryIndexedEXT;
+ PFN_vkCmdBeginTransformFeedbackEXT vkCmdBeginTransformFeedbackEXT;
+ PFN_vkCmdBindTransformFeedbackBuffersEXT vkCmdBindTransformFeedbackBuffersEXT;
+ PFN_vkCmdDrawIndirectByteCountEXT vkCmdDrawIndirectByteCountEXT;
+ PFN_vkCmdEndQueryIndexedEXT vkCmdEndQueryIndexedEXT;
+ PFN_vkCmdEndTransformFeedbackEXT vkCmdEndTransformFeedbackEXT;
+#endif /* defined(VK_EXT_transform_feedback) */
+#if defined(VK_EXT_validation_cache)
+ PFN_vkCreateValidationCacheEXT vkCreateValidationCacheEXT;
+ PFN_vkDestroyValidationCacheEXT vkDestroyValidationCacheEXT;
+ PFN_vkGetValidationCacheDataEXT vkGetValidationCacheDataEXT;
+ PFN_vkMergeValidationCachesEXT vkMergeValidationCachesEXT;
+#endif /* defined(VK_EXT_validation_cache) */
+#if defined(VK_EXT_vertex_input_dynamic_state)
+ PFN_vkCmdSetVertexInputEXT vkCmdSetVertexInputEXT;
+#endif /* defined(VK_EXT_vertex_input_dynamic_state) */
+#if defined(VK_FUCHSIA_external_memory)
+ PFN_vkGetMemoryZirconHandleFUCHSIA vkGetMemoryZirconHandleFUCHSIA;
+ PFN_vkGetMemoryZirconHandlePropertiesFUCHSIA vkGetMemoryZirconHandlePropertiesFUCHSIA;
+#endif /* defined(VK_FUCHSIA_external_memory) */
+#if defined(VK_FUCHSIA_external_semaphore)
+ PFN_vkGetSemaphoreZirconHandleFUCHSIA vkGetSemaphoreZirconHandleFUCHSIA;
+ PFN_vkImportSemaphoreZirconHandleFUCHSIA vkImportSemaphoreZirconHandleFUCHSIA;
+#endif /* defined(VK_FUCHSIA_external_semaphore) */
+#if defined(VK_GOOGLE_display_timing)
+ PFN_vkGetPastPresentationTimingGOOGLE vkGetPastPresentationTimingGOOGLE;
+ PFN_vkGetRefreshCycleDurationGOOGLE vkGetRefreshCycleDurationGOOGLE;
+#endif /* defined(VK_GOOGLE_display_timing) */
+#if defined(VK_HUAWEI_subpass_shading)
+ PFN_vkCmdSubpassShadingHUAWEI vkCmdSubpassShadingHUAWEI;
+ PFN_vkGetSubpassShadingMaxWorkgroupSizeHUAWEI vkGetSubpassShadingMaxWorkgroupSizeHUAWEI;
+#endif /* defined(VK_HUAWEI_subpass_shading) */
+#if defined(VK_INTEL_performance_query)
+ PFN_vkAcquirePerformanceConfigurationINTEL vkAcquirePerformanceConfigurationINTEL;
+ PFN_vkCmdSetPerformanceMarkerINTEL vkCmdSetPerformanceMarkerINTEL;
+ PFN_vkCmdSetPerformanceOverrideINTEL vkCmdSetPerformanceOverrideINTEL;
+ PFN_vkCmdSetPerformanceStreamMarkerINTEL vkCmdSetPerformanceStreamMarkerINTEL;
+ PFN_vkGetPerformanceParameterINTEL vkGetPerformanceParameterINTEL;
+ PFN_vkInitializePerformanceApiINTEL vkInitializePerformanceApiINTEL;
+ PFN_vkQueueSetPerformanceConfigurationINTEL vkQueueSetPerformanceConfigurationINTEL;
+ PFN_vkReleasePerformanceConfigurationINTEL vkReleasePerformanceConfigurationINTEL;
+ PFN_vkUninitializePerformanceApiINTEL vkUninitializePerformanceApiINTEL;
+#endif /* defined(VK_INTEL_performance_query) */
+#if defined(VK_KHR_acceleration_structure)
+ PFN_vkBuildAccelerationStructuresKHR vkBuildAccelerationStructuresKHR;
+ PFN_vkCmdBuildAccelerationStructuresIndirectKHR vkCmdBuildAccelerationStructuresIndirectKHR;
+ PFN_vkCmdBuildAccelerationStructuresKHR vkCmdBuildAccelerationStructuresKHR;
+ PFN_vkCmdCopyAccelerationStructureKHR vkCmdCopyAccelerationStructureKHR;
+ PFN_vkCmdCopyAccelerationStructureToMemoryKHR vkCmdCopyAccelerationStructureToMemoryKHR;
+ PFN_vkCmdCopyMemoryToAccelerationStructureKHR vkCmdCopyMemoryToAccelerationStructureKHR;
+ PFN_vkCmdWriteAccelerationStructuresPropertiesKHR vkCmdWriteAccelerationStructuresPropertiesKHR;
+ PFN_vkCopyAccelerationStructureKHR vkCopyAccelerationStructureKHR;
+ PFN_vkCopyAccelerationStructureToMemoryKHR vkCopyAccelerationStructureToMemoryKHR;
+ PFN_vkCopyMemoryToAccelerationStructureKHR vkCopyMemoryToAccelerationStructureKHR;
+ PFN_vkCreateAccelerationStructureKHR vkCreateAccelerationStructureKHR;
+ PFN_vkDestroyAccelerationStructureKHR vkDestroyAccelerationStructureKHR;
+ PFN_vkGetAccelerationStructureBuildSizesKHR vkGetAccelerationStructureBuildSizesKHR;
+ PFN_vkGetAccelerationStructureDeviceAddressKHR vkGetAccelerationStructureDeviceAddressKHR;
+ PFN_vkGetDeviceAccelerationStructureCompatibilityKHR vkGetDeviceAccelerationStructureCompatibilityKHR;
+ PFN_vkWriteAccelerationStructuresPropertiesKHR vkWriteAccelerationStructuresPropertiesKHR;
+#endif /* defined(VK_KHR_acceleration_structure) */
+#if defined(VK_KHR_bind_memory2)
+ PFN_vkBindBufferMemory2KHR vkBindBufferMemory2KHR;
+ PFN_vkBindImageMemory2KHR vkBindImageMemory2KHR;
+#endif /* defined(VK_KHR_bind_memory2) */
+#if defined(VK_KHR_buffer_device_address)
+ PFN_vkGetBufferDeviceAddressKHR vkGetBufferDeviceAddressKHR;
+ PFN_vkGetBufferOpaqueCaptureAddressKHR vkGetBufferOpaqueCaptureAddressKHR;
+ PFN_vkGetDeviceMemoryOpaqueCaptureAddressKHR vkGetDeviceMemoryOpaqueCaptureAddressKHR;
+#endif /* defined(VK_KHR_buffer_device_address) */
+#if defined(VK_KHR_copy_commands2)
+ PFN_vkCmdBlitImage2KHR vkCmdBlitImage2KHR;
+ PFN_vkCmdCopyBuffer2KHR vkCmdCopyBuffer2KHR;
+ PFN_vkCmdCopyBufferToImage2KHR vkCmdCopyBufferToImage2KHR;
+ PFN_vkCmdCopyImage2KHR vkCmdCopyImage2KHR;
+ PFN_vkCmdCopyImageToBuffer2KHR vkCmdCopyImageToBuffer2KHR;
+ PFN_vkCmdResolveImage2KHR vkCmdResolveImage2KHR;
+#endif /* defined(VK_KHR_copy_commands2) */
+#if defined(VK_KHR_create_renderpass2)
+ PFN_vkCmdBeginRenderPass2KHR vkCmdBeginRenderPass2KHR;
+ PFN_vkCmdEndRenderPass2KHR vkCmdEndRenderPass2KHR;
+ PFN_vkCmdNextSubpass2KHR vkCmdNextSubpass2KHR;
+ PFN_vkCreateRenderPass2KHR vkCreateRenderPass2KHR;
+#endif /* defined(VK_KHR_create_renderpass2) */
+#if defined(VK_KHR_deferred_host_operations)
+ PFN_vkCreateDeferredOperationKHR vkCreateDeferredOperationKHR;
+ PFN_vkDeferredOperationJoinKHR vkDeferredOperationJoinKHR;
+ PFN_vkDestroyDeferredOperationKHR vkDestroyDeferredOperationKHR;
+ PFN_vkGetDeferredOperationMaxConcurrencyKHR vkGetDeferredOperationMaxConcurrencyKHR;
+ PFN_vkGetDeferredOperationResultKHR vkGetDeferredOperationResultKHR;
+#endif /* defined(VK_KHR_deferred_host_operations) */
+#if defined(VK_KHR_descriptor_update_template)
+ PFN_vkCreateDescriptorUpdateTemplateKHR vkCreateDescriptorUpdateTemplateKHR;
+ PFN_vkDestroyDescriptorUpdateTemplateKHR vkDestroyDescriptorUpdateTemplateKHR;
+ PFN_vkUpdateDescriptorSetWithTemplateKHR vkUpdateDescriptorSetWithTemplateKHR;
+#endif /* defined(VK_KHR_descriptor_update_template) */
+#if defined(VK_KHR_device_group)
+ PFN_vkCmdDispatchBaseKHR vkCmdDispatchBaseKHR;
+ PFN_vkCmdSetDeviceMaskKHR vkCmdSetDeviceMaskKHR;
+ PFN_vkGetDeviceGroupPeerMemoryFeaturesKHR vkGetDeviceGroupPeerMemoryFeaturesKHR;
+#endif /* defined(VK_KHR_device_group) */
+#if defined(VK_KHR_display_swapchain)
+ PFN_vkCreateSharedSwapchainsKHR vkCreateSharedSwapchainsKHR;
+#endif /* defined(VK_KHR_display_swapchain) */
+#if defined(VK_KHR_draw_indirect_count)
+ PFN_vkCmdDrawIndexedIndirectCountKHR vkCmdDrawIndexedIndirectCountKHR;
+ PFN_vkCmdDrawIndirectCountKHR vkCmdDrawIndirectCountKHR;
+#endif /* defined(VK_KHR_draw_indirect_count) */
+#if defined(VK_KHR_external_fence_fd)
+ PFN_vkGetFenceFdKHR vkGetFenceFdKHR;
+ PFN_vkImportFenceFdKHR vkImportFenceFdKHR;
+#endif /* defined(VK_KHR_external_fence_fd) */
+#if defined(VK_KHR_external_fence_win32)
+ PFN_vkGetFenceWin32HandleKHR vkGetFenceWin32HandleKHR;
+ PFN_vkImportFenceWin32HandleKHR vkImportFenceWin32HandleKHR;
+#endif /* defined(VK_KHR_external_fence_win32) */
+#if defined(VK_KHR_external_memory_fd)
+ PFN_vkGetMemoryFdKHR vkGetMemoryFdKHR;
+ PFN_vkGetMemoryFdPropertiesKHR vkGetMemoryFdPropertiesKHR;
+#endif /* defined(VK_KHR_external_memory_fd) */
+#if defined(VK_KHR_external_memory_win32)
+ PFN_vkGetMemoryWin32HandleKHR vkGetMemoryWin32HandleKHR;
+ PFN_vkGetMemoryWin32HandlePropertiesKHR vkGetMemoryWin32HandlePropertiesKHR;
+#endif /* defined(VK_KHR_external_memory_win32) */
+#if defined(VK_KHR_external_semaphore_fd)
+ PFN_vkGetSemaphoreFdKHR vkGetSemaphoreFdKHR;
+ PFN_vkImportSemaphoreFdKHR vkImportSemaphoreFdKHR;
+#endif /* defined(VK_KHR_external_semaphore_fd) */
+#if defined(VK_KHR_external_semaphore_win32)
+ PFN_vkGetSemaphoreWin32HandleKHR vkGetSemaphoreWin32HandleKHR;
+ PFN_vkImportSemaphoreWin32HandleKHR vkImportSemaphoreWin32HandleKHR;
+#endif /* defined(VK_KHR_external_semaphore_win32) */
+#if defined(VK_KHR_fragment_shading_rate)
+ PFN_vkCmdSetFragmentShadingRateKHR vkCmdSetFragmentShadingRateKHR;
+#endif /* defined(VK_KHR_fragment_shading_rate) */
+#if defined(VK_KHR_get_memory_requirements2)
+ PFN_vkGetBufferMemoryRequirements2KHR vkGetBufferMemoryRequirements2KHR;
+ PFN_vkGetImageMemoryRequirements2KHR vkGetImageMemoryRequirements2KHR;
+ PFN_vkGetImageSparseMemoryRequirements2KHR vkGetImageSparseMemoryRequirements2KHR;
+#endif /* defined(VK_KHR_get_memory_requirements2) */
+#if defined(VK_KHR_maintenance1)
+ PFN_vkTrimCommandPoolKHR vkTrimCommandPoolKHR;
+#endif /* defined(VK_KHR_maintenance1) */
+#if defined(VK_KHR_maintenance3)
+ PFN_vkGetDescriptorSetLayoutSupportKHR vkGetDescriptorSetLayoutSupportKHR;
+#endif /* defined(VK_KHR_maintenance3) */
+#if defined(VK_KHR_performance_query)
+ PFN_vkAcquireProfilingLockKHR vkAcquireProfilingLockKHR;
+ PFN_vkReleaseProfilingLockKHR vkReleaseProfilingLockKHR;
+#endif /* defined(VK_KHR_performance_query) */
+#if defined(VK_KHR_pipeline_executable_properties)
+ PFN_vkGetPipelineExecutableInternalRepresentationsKHR vkGetPipelineExecutableInternalRepresentationsKHR;
+ PFN_vkGetPipelineExecutablePropertiesKHR vkGetPipelineExecutablePropertiesKHR;
+ PFN_vkGetPipelineExecutableStatisticsKHR vkGetPipelineExecutableStatisticsKHR;
+#endif /* defined(VK_KHR_pipeline_executable_properties) */
+#if defined(VK_KHR_push_descriptor)
+ PFN_vkCmdPushDescriptorSetKHR vkCmdPushDescriptorSetKHR;
+#endif /* defined(VK_KHR_push_descriptor) */
+#if defined(VK_KHR_ray_tracing_pipeline)
+ PFN_vkCmdSetRayTracingPipelineStackSizeKHR vkCmdSetRayTracingPipelineStackSizeKHR;
+ PFN_vkCmdTraceRaysIndirectKHR vkCmdTraceRaysIndirectKHR;
+ PFN_vkCmdTraceRaysKHR vkCmdTraceRaysKHR;
+ PFN_vkCreateRayTracingPipelinesKHR vkCreateRayTracingPipelinesKHR;
+ PFN_vkGetRayTracingCaptureReplayShaderGroupHandlesKHR vkGetRayTracingCaptureReplayShaderGroupHandlesKHR;
+ PFN_vkGetRayTracingShaderGroupHandlesKHR vkGetRayTracingShaderGroupHandlesKHR;
+ PFN_vkGetRayTracingShaderGroupStackSizeKHR vkGetRayTracingShaderGroupStackSizeKHR;
+#endif /* defined(VK_KHR_ray_tracing_pipeline) */
+#if defined(VK_KHR_sampler_ycbcr_conversion)
+ PFN_vkCreateSamplerYcbcrConversionKHR vkCreateSamplerYcbcrConversionKHR;
+ PFN_vkDestroySamplerYcbcrConversionKHR vkDestroySamplerYcbcrConversionKHR;
+#endif /* defined(VK_KHR_sampler_ycbcr_conversion) */
+#if defined(VK_KHR_shared_presentable_image)
+ PFN_vkGetSwapchainStatusKHR vkGetSwapchainStatusKHR;
+#endif /* defined(VK_KHR_shared_presentable_image) */
+#if defined(VK_KHR_swapchain)
+ PFN_vkAcquireNextImageKHR vkAcquireNextImageKHR;
+ PFN_vkCreateSwapchainKHR vkCreateSwapchainKHR;
+ PFN_vkDestroySwapchainKHR vkDestroySwapchainKHR;
+ PFN_vkGetSwapchainImagesKHR vkGetSwapchainImagesKHR;
+ PFN_vkQueuePresentKHR vkQueuePresentKHR;
+#endif /* defined(VK_KHR_swapchain) */
+#if defined(VK_KHR_synchronization2)
+ PFN_vkCmdPipelineBarrier2KHR vkCmdPipelineBarrier2KHR;
+ PFN_vkCmdResetEvent2KHR vkCmdResetEvent2KHR;
+ PFN_vkCmdSetEvent2KHR vkCmdSetEvent2KHR;
+ PFN_vkCmdWaitEvents2KHR vkCmdWaitEvents2KHR;
+ PFN_vkCmdWriteTimestamp2KHR vkCmdWriteTimestamp2KHR;
+ PFN_vkQueueSubmit2KHR vkQueueSubmit2KHR;
+#endif /* defined(VK_KHR_synchronization2) */
+#if defined(VK_KHR_synchronization2) && defined(VK_AMD_buffer_marker)
+ PFN_vkCmdWriteBufferMarker2AMD vkCmdWriteBufferMarker2AMD;
+#endif /* defined(VK_KHR_synchronization2) && defined(VK_AMD_buffer_marker) */
+#if defined(VK_KHR_synchronization2) && defined(VK_NV_device_diagnostic_checkpoints)
+ PFN_vkGetQueueCheckpointData2NV vkGetQueueCheckpointData2NV;
+#endif /* defined(VK_KHR_synchronization2) && defined(VK_NV_device_diagnostic_checkpoints) */
+#if defined(VK_KHR_timeline_semaphore)
+ PFN_vkGetSemaphoreCounterValueKHR vkGetSemaphoreCounterValueKHR;
+ PFN_vkSignalSemaphoreKHR vkSignalSemaphoreKHR;
+ PFN_vkWaitSemaphoresKHR vkWaitSemaphoresKHR;
+#endif /* defined(VK_KHR_timeline_semaphore) */
+#if defined(VK_KHR_video_decode_queue)
+ PFN_vkCmdDecodeVideoKHR vkCmdDecodeVideoKHR;
+#endif /* defined(VK_KHR_video_decode_queue) */
+#if defined(VK_KHR_video_encode_queue)
+ PFN_vkCmdEncodeVideoKHR vkCmdEncodeVideoKHR;
+#endif /* defined(VK_KHR_video_encode_queue) */
+#if defined(VK_KHR_video_queue)
+ PFN_vkBindVideoSessionMemoryKHR vkBindVideoSessionMemoryKHR;
+ PFN_vkCmdBeginVideoCodingKHR vkCmdBeginVideoCodingKHR;
+ PFN_vkCmdControlVideoCodingKHR vkCmdControlVideoCodingKHR;
+ PFN_vkCmdEndVideoCodingKHR vkCmdEndVideoCodingKHR;
+ PFN_vkCreateVideoSessionKHR vkCreateVideoSessionKHR;
+ PFN_vkCreateVideoSessionParametersKHR vkCreateVideoSessionParametersKHR;
+ PFN_vkDestroyVideoSessionKHR vkDestroyVideoSessionKHR;
+ PFN_vkDestroyVideoSessionParametersKHR vkDestroyVideoSessionParametersKHR;
+ PFN_vkGetVideoSessionMemoryRequirementsKHR vkGetVideoSessionMemoryRequirementsKHR;
+ PFN_vkUpdateVideoSessionParametersKHR vkUpdateVideoSessionParametersKHR;
+#endif /* defined(VK_KHR_video_queue) */
+#if defined(VK_NVX_binary_import)
+ PFN_vkCmdCuLaunchKernelNVX vkCmdCuLaunchKernelNVX;
+ PFN_vkCreateCuFunctionNVX vkCreateCuFunctionNVX;
+ PFN_vkCreateCuModuleNVX vkCreateCuModuleNVX;
+ PFN_vkDestroyCuFunctionNVX vkDestroyCuFunctionNVX;
+ PFN_vkDestroyCuModuleNVX vkDestroyCuModuleNVX;
+#endif /* defined(VK_NVX_binary_import) */
+#if defined(VK_NVX_image_view_handle)
+ PFN_vkGetImageViewAddressNVX vkGetImageViewAddressNVX;
+ PFN_vkGetImageViewHandleNVX vkGetImageViewHandleNVX;
+#endif /* defined(VK_NVX_image_view_handle) */
+#if defined(VK_NV_clip_space_w_scaling)
+ PFN_vkCmdSetViewportWScalingNV vkCmdSetViewportWScalingNV;
+#endif /* defined(VK_NV_clip_space_w_scaling) */
+#if defined(VK_NV_device_diagnostic_checkpoints)
+ PFN_vkCmdSetCheckpointNV vkCmdSetCheckpointNV;
+ PFN_vkGetQueueCheckpointDataNV vkGetQueueCheckpointDataNV;
+#endif /* defined(VK_NV_device_diagnostic_checkpoints) */
+#if defined(VK_NV_device_generated_commands)
+ PFN_vkCmdBindPipelineShaderGroupNV vkCmdBindPipelineShaderGroupNV;
+ PFN_vkCmdExecuteGeneratedCommandsNV vkCmdExecuteGeneratedCommandsNV;
+ PFN_vkCmdPreprocessGeneratedCommandsNV vkCmdPreprocessGeneratedCommandsNV;
+ PFN_vkCreateIndirectCommandsLayoutNV vkCreateIndirectCommandsLayoutNV;
+ PFN_vkDestroyIndirectCommandsLayoutNV vkDestroyIndirectCommandsLayoutNV;
+ PFN_vkGetGeneratedCommandsMemoryRequirementsNV vkGetGeneratedCommandsMemoryRequirementsNV;
+#endif /* defined(VK_NV_device_generated_commands) */
+#if defined(VK_NV_external_memory_win32)
+ PFN_vkGetMemoryWin32HandleNV vkGetMemoryWin32HandleNV;
+#endif /* defined(VK_NV_external_memory_win32) */
+#if defined(VK_NV_fragment_shading_rate_enums)
+ PFN_vkCmdSetFragmentShadingRateEnumNV vkCmdSetFragmentShadingRateEnumNV;
+#endif /* defined(VK_NV_fragment_shading_rate_enums) */
+#if defined(VK_NV_mesh_shader)
+ PFN_vkCmdDrawMeshTasksIndirectCountNV vkCmdDrawMeshTasksIndirectCountNV;
+ PFN_vkCmdDrawMeshTasksIndirectNV vkCmdDrawMeshTasksIndirectNV;
+ PFN_vkCmdDrawMeshTasksNV vkCmdDrawMeshTasksNV;
+#endif /* defined(VK_NV_mesh_shader) */
+#if defined(VK_NV_ray_tracing)
+ PFN_vkBindAccelerationStructureMemoryNV vkBindAccelerationStructureMemoryNV;
+ PFN_vkCmdBuildAccelerationStructureNV vkCmdBuildAccelerationStructureNV;
+ PFN_vkCmdCopyAccelerationStructureNV vkCmdCopyAccelerationStructureNV;
+ PFN_vkCmdTraceRaysNV vkCmdTraceRaysNV;
+ PFN_vkCmdWriteAccelerationStructuresPropertiesNV vkCmdWriteAccelerationStructuresPropertiesNV;
+ PFN_vkCompileDeferredNV vkCompileDeferredNV;
+ PFN_vkCreateAccelerationStructureNV vkCreateAccelerationStructureNV;
+ PFN_vkCreateRayTracingPipelinesNV vkCreateRayTracingPipelinesNV;
+ PFN_vkDestroyAccelerationStructureNV vkDestroyAccelerationStructureNV;
+ PFN_vkGetAccelerationStructureHandleNV vkGetAccelerationStructureHandleNV;
+ PFN_vkGetAccelerationStructureMemoryRequirementsNV vkGetAccelerationStructureMemoryRequirementsNV;
+ PFN_vkGetRayTracingShaderGroupHandlesNV vkGetRayTracingShaderGroupHandlesNV;
+#endif /* defined(VK_NV_ray_tracing) */
+#if defined(VK_NV_scissor_exclusive)
+ PFN_vkCmdSetExclusiveScissorNV vkCmdSetExclusiveScissorNV;
+#endif /* defined(VK_NV_scissor_exclusive) */
+#if defined(VK_NV_shading_rate_image)
+ PFN_vkCmdBindShadingRateImageNV vkCmdBindShadingRateImageNV;
+ PFN_vkCmdSetCoarseSampleOrderNV vkCmdSetCoarseSampleOrderNV;
+ PFN_vkCmdSetViewportShadingRatePaletteNV vkCmdSetViewportShadingRatePaletteNV;
+#endif /* defined(VK_NV_shading_rate_image) */
+#if (defined(VK_EXT_full_screen_exclusive) && defined(VK_KHR_device_group)) || (defined(VK_EXT_full_screen_exclusive) && defined(VK_VERSION_1_1))
+ PFN_vkGetDeviceGroupSurfacePresentModes2EXT vkGetDeviceGroupSurfacePresentModes2EXT;
+#endif /* (defined(VK_EXT_full_screen_exclusive) && defined(VK_KHR_device_group)) || (defined(VK_EXT_full_screen_exclusive) && defined(VK_VERSION_1_1)) */
+#if (defined(VK_KHR_descriptor_update_template) && defined(VK_KHR_push_descriptor)) || (defined(VK_KHR_push_descriptor) && defined(VK_VERSION_1_1)) || (defined(VK_KHR_push_descriptor) && defined(VK_KHR_descriptor_update_template))
+ PFN_vkCmdPushDescriptorSetWithTemplateKHR vkCmdPushDescriptorSetWithTemplateKHR;
+#endif /* (defined(VK_KHR_descriptor_update_template) && defined(VK_KHR_push_descriptor)) || (defined(VK_KHR_push_descriptor) && defined(VK_VERSION_1_1)) || (defined(VK_KHR_push_descriptor) && defined(VK_KHR_descriptor_update_template)) */
+#if (defined(VK_KHR_device_group) && defined(VK_KHR_surface)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1))
+ PFN_vkGetDeviceGroupPresentCapabilitiesKHR vkGetDeviceGroupPresentCapabilitiesKHR;
+ PFN_vkGetDeviceGroupSurfacePresentModesKHR vkGetDeviceGroupSurfacePresentModesKHR;
+#endif /* (defined(VK_KHR_device_group) && defined(VK_KHR_surface)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1)) */
+#if (defined(VK_KHR_device_group) && defined(VK_KHR_swapchain)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1))
+ PFN_vkAcquireNextImage2KHR vkAcquireNextImage2KHR;
+#endif /* (defined(VK_KHR_device_group) && defined(VK_KHR_swapchain)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1)) */
+ /* VOLK_GENERATE_DEVICE_TABLE */
+};
+
+/* VOLK_GENERATE_PROTOTYPES_H */
+#if defined(VK_VERSION_1_0)
+extern PFN_vkAllocateCommandBuffers vkAllocateCommandBuffers;
+extern PFN_vkAllocateDescriptorSets vkAllocateDescriptorSets;
+extern PFN_vkAllocateMemory vkAllocateMemory;
+extern PFN_vkBeginCommandBuffer vkBeginCommandBuffer;
+extern PFN_vkBindBufferMemory vkBindBufferMemory;
+extern PFN_vkBindImageMemory vkBindImageMemory;
+extern PFN_vkCmdBeginQuery vkCmdBeginQuery;
+extern PFN_vkCmdBeginRenderPass vkCmdBeginRenderPass;
+extern PFN_vkCmdBindDescriptorSets vkCmdBindDescriptorSets;
+extern PFN_vkCmdBindIndexBuffer vkCmdBindIndexBuffer;
+extern PFN_vkCmdBindPipeline vkCmdBindPipeline;
+extern PFN_vkCmdBindVertexBuffers vkCmdBindVertexBuffers;
+extern PFN_vkCmdBlitImage vkCmdBlitImage;
+extern PFN_vkCmdClearAttachments vkCmdClearAttachments;
+extern PFN_vkCmdClearColorImage vkCmdClearColorImage;
+extern PFN_vkCmdClearDepthStencilImage vkCmdClearDepthStencilImage;
+extern PFN_vkCmdCopyBuffer vkCmdCopyBuffer;
+extern PFN_vkCmdCopyBufferToImage vkCmdCopyBufferToImage;
+extern PFN_vkCmdCopyImage vkCmdCopyImage;
+extern PFN_vkCmdCopyImageToBuffer vkCmdCopyImageToBuffer;
+extern PFN_vkCmdCopyQueryPoolResults vkCmdCopyQueryPoolResults;
+extern PFN_vkCmdDispatch vkCmdDispatch;
+extern PFN_vkCmdDispatchIndirect vkCmdDispatchIndirect;
+extern PFN_vkCmdDraw vkCmdDraw;
+extern PFN_vkCmdDrawIndexed vkCmdDrawIndexed;
+extern PFN_vkCmdDrawIndexedIndirect vkCmdDrawIndexedIndirect;
+extern PFN_vkCmdDrawIndirect vkCmdDrawIndirect;
+extern PFN_vkCmdEndQuery vkCmdEndQuery;
+extern PFN_vkCmdEndRenderPass vkCmdEndRenderPass;
+extern PFN_vkCmdExecuteCommands vkCmdExecuteCommands;
+extern PFN_vkCmdFillBuffer vkCmdFillBuffer;
+extern PFN_vkCmdNextSubpass vkCmdNextSubpass;
+extern PFN_vkCmdPipelineBarrier vkCmdPipelineBarrier;
+extern PFN_vkCmdPushConstants vkCmdPushConstants;
+extern PFN_vkCmdResetEvent vkCmdResetEvent;
+extern PFN_vkCmdResetQueryPool vkCmdResetQueryPool;
+extern PFN_vkCmdResolveImage vkCmdResolveImage;
+extern PFN_vkCmdSetBlendConstants vkCmdSetBlendConstants;
+extern PFN_vkCmdSetDepthBias vkCmdSetDepthBias;
+extern PFN_vkCmdSetDepthBounds vkCmdSetDepthBounds;
+extern PFN_vkCmdSetEvent vkCmdSetEvent;
+extern PFN_vkCmdSetLineWidth vkCmdSetLineWidth;
+extern PFN_vkCmdSetScissor vkCmdSetScissor;
+extern PFN_vkCmdSetStencilCompareMask vkCmdSetStencilCompareMask;
+extern PFN_vkCmdSetStencilReference vkCmdSetStencilReference;
+extern PFN_vkCmdSetStencilWriteMask vkCmdSetStencilWriteMask;
+extern PFN_vkCmdSetViewport vkCmdSetViewport;
+extern PFN_vkCmdUpdateBuffer vkCmdUpdateBuffer;
+extern PFN_vkCmdWaitEvents vkCmdWaitEvents;
+extern PFN_vkCmdWriteTimestamp vkCmdWriteTimestamp;
+extern PFN_vkCreateBuffer vkCreateBuffer;
+extern PFN_vkCreateBufferView vkCreateBufferView;
+extern PFN_vkCreateCommandPool vkCreateCommandPool;
+extern PFN_vkCreateComputePipelines vkCreateComputePipelines;
+extern PFN_vkCreateDescriptorPool vkCreateDescriptorPool;
+extern PFN_vkCreateDescriptorSetLayout vkCreateDescriptorSetLayout;
+extern PFN_vkCreateDevice vkCreateDevice;
+extern PFN_vkCreateEvent vkCreateEvent;
+extern PFN_vkCreateFence vkCreateFence;
+extern PFN_vkCreateFramebuffer vkCreateFramebuffer;
+extern PFN_vkCreateGraphicsPipelines vkCreateGraphicsPipelines;
+extern PFN_vkCreateImage vkCreateImage;
+extern PFN_vkCreateImageView vkCreateImageView;
+extern PFN_vkCreateInstance vkCreateInstance;
+extern PFN_vkCreatePipelineCache vkCreatePipelineCache;
+extern PFN_vkCreatePipelineLayout vkCreatePipelineLayout;
+extern PFN_vkCreateQueryPool vkCreateQueryPool;
+extern PFN_vkCreateRenderPass vkCreateRenderPass;
+extern PFN_vkCreateSampler vkCreateSampler;
+extern PFN_vkCreateSemaphore vkCreateSemaphore;
+extern PFN_vkCreateShaderModule vkCreateShaderModule;
+extern PFN_vkDestroyBuffer vkDestroyBuffer;
+extern PFN_vkDestroyBufferView vkDestroyBufferView;
+extern PFN_vkDestroyCommandPool vkDestroyCommandPool;
+extern PFN_vkDestroyDescriptorPool vkDestroyDescriptorPool;
+extern PFN_vkDestroyDescriptorSetLayout vkDestroyDescriptorSetLayout;
+extern PFN_vkDestroyDevice vkDestroyDevice;
+extern PFN_vkDestroyEvent vkDestroyEvent;
+extern PFN_vkDestroyFence vkDestroyFence;
+extern PFN_vkDestroyFramebuffer vkDestroyFramebuffer;
+extern PFN_vkDestroyImage vkDestroyImage;
+extern PFN_vkDestroyImageView vkDestroyImageView;
+extern PFN_vkDestroyInstance vkDestroyInstance;
+extern PFN_vkDestroyPipeline vkDestroyPipeline;
+extern PFN_vkDestroyPipelineCache vkDestroyPipelineCache;
+extern PFN_vkDestroyPipelineLayout vkDestroyPipelineLayout;
+extern PFN_vkDestroyQueryPool vkDestroyQueryPool;
+extern PFN_vkDestroyRenderPass vkDestroyRenderPass;
+extern PFN_vkDestroySampler vkDestroySampler;
+extern PFN_vkDestroySemaphore vkDestroySemaphore;
+extern PFN_vkDestroyShaderModule vkDestroyShaderModule;
+extern PFN_vkDeviceWaitIdle vkDeviceWaitIdle;
+extern PFN_vkEndCommandBuffer vkEndCommandBuffer;
+extern PFN_vkEnumerateDeviceExtensionProperties vkEnumerateDeviceExtensionProperties;
+extern PFN_vkEnumerateDeviceLayerProperties vkEnumerateDeviceLayerProperties;
+extern PFN_vkEnumerateInstanceExtensionProperties vkEnumerateInstanceExtensionProperties;
+extern PFN_vkEnumerateInstanceLayerProperties vkEnumerateInstanceLayerProperties;
+extern PFN_vkEnumeratePhysicalDevices vkEnumeratePhysicalDevices;
+extern PFN_vkFlushMappedMemoryRanges vkFlushMappedMemoryRanges;
+extern PFN_vkFreeCommandBuffers vkFreeCommandBuffers;
+extern PFN_vkFreeDescriptorSets vkFreeDescriptorSets;
+extern PFN_vkFreeMemory vkFreeMemory;
+extern PFN_vkGetBufferMemoryRequirements vkGetBufferMemoryRequirements;
+extern PFN_vkGetDeviceMemoryCommitment vkGetDeviceMemoryCommitment;
+extern PFN_vkGetDeviceProcAddr vkGetDeviceProcAddr;
+extern PFN_vkGetDeviceQueue vkGetDeviceQueue;
+extern PFN_vkGetEventStatus vkGetEventStatus;
+extern PFN_vkGetFenceStatus vkGetFenceStatus;
+extern PFN_vkGetImageMemoryRequirements vkGetImageMemoryRequirements;
+extern PFN_vkGetImageSparseMemoryRequirements vkGetImageSparseMemoryRequirements;
+extern PFN_vkGetImageSubresourceLayout vkGetImageSubresourceLayout;
+extern PFN_vkGetInstanceProcAddr vkGetInstanceProcAddr;
+extern PFN_vkGetPhysicalDeviceFeatures vkGetPhysicalDeviceFeatures;
+extern PFN_vkGetPhysicalDeviceFormatProperties vkGetPhysicalDeviceFormatProperties;
+extern PFN_vkGetPhysicalDeviceImageFormatProperties vkGetPhysicalDeviceImageFormatProperties;
+extern PFN_vkGetPhysicalDeviceMemoryProperties vkGetPhysicalDeviceMemoryProperties;
+extern PFN_vkGetPhysicalDeviceProperties vkGetPhysicalDeviceProperties;
+extern PFN_vkGetPhysicalDeviceQueueFamilyProperties vkGetPhysicalDeviceQueueFamilyProperties;
+extern PFN_vkGetPhysicalDeviceSparseImageFormatProperties vkGetPhysicalDeviceSparseImageFormatProperties;
+extern PFN_vkGetPipelineCacheData vkGetPipelineCacheData;
+extern PFN_vkGetQueryPoolResults vkGetQueryPoolResults;
+extern PFN_vkGetRenderAreaGranularity vkGetRenderAreaGranularity;
+extern PFN_vkInvalidateMappedMemoryRanges vkInvalidateMappedMemoryRanges;
+extern PFN_vkMapMemory vkMapMemory;
+extern PFN_vkMergePipelineCaches vkMergePipelineCaches;
+extern PFN_vkQueueBindSparse vkQueueBindSparse;
+extern PFN_vkQueueSubmit vkQueueSubmit;
+extern PFN_vkQueueWaitIdle vkQueueWaitIdle;
+extern PFN_vkResetCommandBuffer vkResetCommandBuffer;
+extern PFN_vkResetCommandPool vkResetCommandPool;
+extern PFN_vkResetDescriptorPool vkResetDescriptorPool;
+extern PFN_vkResetEvent vkResetEvent;
+extern PFN_vkResetFences vkResetFences;
+extern PFN_vkSetEvent vkSetEvent;
+extern PFN_vkUnmapMemory vkUnmapMemory;
+extern PFN_vkUpdateDescriptorSets vkUpdateDescriptorSets;
+extern PFN_vkWaitForFences vkWaitForFences;
+#endif /* defined(VK_VERSION_1_0) */
+#if defined(VK_VERSION_1_1)
+extern PFN_vkBindBufferMemory2 vkBindBufferMemory2;
+extern PFN_vkBindImageMemory2 vkBindImageMemory2;
+extern PFN_vkCmdDispatchBase vkCmdDispatchBase;
+extern PFN_vkCmdSetDeviceMask vkCmdSetDeviceMask;
+extern PFN_vkCreateDescriptorUpdateTemplate vkCreateDescriptorUpdateTemplate;
+extern PFN_vkCreateSamplerYcbcrConversion vkCreateSamplerYcbcrConversion;
+extern PFN_vkDestroyDescriptorUpdateTemplate vkDestroyDescriptorUpdateTemplate;
+extern PFN_vkDestroySamplerYcbcrConversion vkDestroySamplerYcbcrConversion;
+extern PFN_vkEnumerateInstanceVersion vkEnumerateInstanceVersion;
+extern PFN_vkEnumeratePhysicalDeviceGroups vkEnumeratePhysicalDeviceGroups;
+extern PFN_vkGetBufferMemoryRequirements2 vkGetBufferMemoryRequirements2;
+extern PFN_vkGetDescriptorSetLayoutSupport vkGetDescriptorSetLayoutSupport;
+extern PFN_vkGetDeviceGroupPeerMemoryFeatures vkGetDeviceGroupPeerMemoryFeatures;
+extern PFN_vkGetDeviceQueue2 vkGetDeviceQueue2;
+extern PFN_vkGetImageMemoryRequirements2 vkGetImageMemoryRequirements2;
+extern PFN_vkGetImageSparseMemoryRequirements2 vkGetImageSparseMemoryRequirements2;
+extern PFN_vkGetPhysicalDeviceExternalBufferProperties vkGetPhysicalDeviceExternalBufferProperties;
+extern PFN_vkGetPhysicalDeviceExternalFenceProperties vkGetPhysicalDeviceExternalFenceProperties;
+extern PFN_vkGetPhysicalDeviceExternalSemaphoreProperties vkGetPhysicalDeviceExternalSemaphoreProperties;
+extern PFN_vkGetPhysicalDeviceFeatures2 vkGetPhysicalDeviceFeatures2;
+extern PFN_vkGetPhysicalDeviceFormatProperties2 vkGetPhysicalDeviceFormatProperties2;
+extern PFN_vkGetPhysicalDeviceImageFormatProperties2 vkGetPhysicalDeviceImageFormatProperties2;
+extern PFN_vkGetPhysicalDeviceMemoryProperties2 vkGetPhysicalDeviceMemoryProperties2;
+extern PFN_vkGetPhysicalDeviceProperties2 vkGetPhysicalDeviceProperties2;
+extern PFN_vkGetPhysicalDeviceQueueFamilyProperties2 vkGetPhysicalDeviceQueueFamilyProperties2;
+extern PFN_vkGetPhysicalDeviceSparseImageFormatProperties2 vkGetPhysicalDeviceSparseImageFormatProperties2;
+extern PFN_vkTrimCommandPool vkTrimCommandPool;
+extern PFN_vkUpdateDescriptorSetWithTemplate vkUpdateDescriptorSetWithTemplate;
+#endif /* defined(VK_VERSION_1_1) */
+#if defined(VK_VERSION_1_2)
+extern PFN_vkCmdBeginRenderPass2 vkCmdBeginRenderPass2;
+extern PFN_vkCmdDrawIndexedIndirectCount vkCmdDrawIndexedIndirectCount;
+extern PFN_vkCmdDrawIndirectCount vkCmdDrawIndirectCount;
+extern PFN_vkCmdEndRenderPass2 vkCmdEndRenderPass2;
+extern PFN_vkCmdNextSubpass2 vkCmdNextSubpass2;
+extern PFN_vkCreateRenderPass2 vkCreateRenderPass2;
+extern PFN_vkGetBufferDeviceAddress vkGetBufferDeviceAddress;
+extern PFN_vkGetBufferOpaqueCaptureAddress vkGetBufferOpaqueCaptureAddress;
+extern PFN_vkGetDeviceMemoryOpaqueCaptureAddress vkGetDeviceMemoryOpaqueCaptureAddress;
+extern PFN_vkGetSemaphoreCounterValue vkGetSemaphoreCounterValue;
+extern PFN_vkResetQueryPool vkResetQueryPool;
+extern PFN_vkSignalSemaphore vkSignalSemaphore;
+extern PFN_vkWaitSemaphores vkWaitSemaphores;
+#endif /* defined(VK_VERSION_1_2) */
+#if defined(VK_AMD_buffer_marker)
+extern PFN_vkCmdWriteBufferMarkerAMD vkCmdWriteBufferMarkerAMD;
+#endif /* defined(VK_AMD_buffer_marker) */
+#if defined(VK_AMD_display_native_hdr)
+extern PFN_vkSetLocalDimmingAMD vkSetLocalDimmingAMD;
+#endif /* defined(VK_AMD_display_native_hdr) */
+#if defined(VK_AMD_draw_indirect_count)
+extern PFN_vkCmdDrawIndexedIndirectCountAMD vkCmdDrawIndexedIndirectCountAMD;
+extern PFN_vkCmdDrawIndirectCountAMD vkCmdDrawIndirectCountAMD;
+#endif /* defined(VK_AMD_draw_indirect_count) */
+#if defined(VK_AMD_shader_info)
+extern PFN_vkGetShaderInfoAMD vkGetShaderInfoAMD;
+#endif /* defined(VK_AMD_shader_info) */
+#if defined(VK_ANDROID_external_memory_android_hardware_buffer)
+extern PFN_vkGetAndroidHardwareBufferPropertiesANDROID vkGetAndroidHardwareBufferPropertiesANDROID;
+extern PFN_vkGetMemoryAndroidHardwareBufferANDROID vkGetMemoryAndroidHardwareBufferANDROID;
+#endif /* defined(VK_ANDROID_external_memory_android_hardware_buffer) */
+#if defined(VK_EXT_acquire_drm_display)
+extern PFN_vkAcquireDrmDisplayEXT vkAcquireDrmDisplayEXT;
+extern PFN_vkGetDrmDisplayEXT vkGetDrmDisplayEXT;
+#endif /* defined(VK_EXT_acquire_drm_display) */
+#if defined(VK_EXT_acquire_xlib_display)
+extern PFN_vkAcquireXlibDisplayEXT vkAcquireXlibDisplayEXT;
+extern PFN_vkGetRandROutputDisplayEXT vkGetRandROutputDisplayEXT;
+#endif /* defined(VK_EXT_acquire_xlib_display) */
+#if defined(VK_EXT_buffer_device_address)
+extern PFN_vkGetBufferDeviceAddressEXT vkGetBufferDeviceAddressEXT;
+#endif /* defined(VK_EXT_buffer_device_address) */
+#if defined(VK_EXT_calibrated_timestamps)
+extern PFN_vkGetCalibratedTimestampsEXT vkGetCalibratedTimestampsEXT;
+extern PFN_vkGetPhysicalDeviceCalibrateableTimeDomainsEXT vkGetPhysicalDeviceCalibrateableTimeDomainsEXT;
+#endif /* defined(VK_EXT_calibrated_timestamps) */
+#if defined(VK_EXT_color_write_enable)
+extern PFN_vkCmdSetColorWriteEnableEXT vkCmdSetColorWriteEnableEXT;
+#endif /* defined(VK_EXT_color_write_enable) */
+#if defined(VK_EXT_conditional_rendering)
+extern PFN_vkCmdBeginConditionalRenderingEXT vkCmdBeginConditionalRenderingEXT;
+extern PFN_vkCmdEndConditionalRenderingEXT vkCmdEndConditionalRenderingEXT;
+#endif /* defined(VK_EXT_conditional_rendering) */
+#if defined(VK_EXT_debug_marker)
+extern PFN_vkCmdDebugMarkerBeginEXT vkCmdDebugMarkerBeginEXT;
+extern PFN_vkCmdDebugMarkerEndEXT vkCmdDebugMarkerEndEXT;
+extern PFN_vkCmdDebugMarkerInsertEXT vkCmdDebugMarkerInsertEXT;
+extern PFN_vkDebugMarkerSetObjectNameEXT vkDebugMarkerSetObjectNameEXT;
+extern PFN_vkDebugMarkerSetObjectTagEXT vkDebugMarkerSetObjectTagEXT;
+#endif /* defined(VK_EXT_debug_marker) */
+#if defined(VK_EXT_debug_report)
+extern PFN_vkCreateDebugReportCallbackEXT vkCreateDebugReportCallbackEXT;
+extern PFN_vkDebugReportMessageEXT vkDebugReportMessageEXT;
+extern PFN_vkDestroyDebugReportCallbackEXT vkDestroyDebugReportCallbackEXT;
+#endif /* defined(VK_EXT_debug_report) */
+#if defined(VK_EXT_debug_utils)
+extern PFN_vkCmdBeginDebugUtilsLabelEXT vkCmdBeginDebugUtilsLabelEXT;
+extern PFN_vkCmdEndDebugUtilsLabelEXT vkCmdEndDebugUtilsLabelEXT;
+extern PFN_vkCmdInsertDebugUtilsLabelEXT vkCmdInsertDebugUtilsLabelEXT;
+extern PFN_vkCreateDebugUtilsMessengerEXT vkCreateDebugUtilsMessengerEXT;
+extern PFN_vkDestroyDebugUtilsMessengerEXT vkDestroyDebugUtilsMessengerEXT;
+extern PFN_vkQueueBeginDebugUtilsLabelEXT vkQueueBeginDebugUtilsLabelEXT;
+extern PFN_vkQueueEndDebugUtilsLabelEXT vkQueueEndDebugUtilsLabelEXT;
+extern PFN_vkQueueInsertDebugUtilsLabelEXT vkQueueInsertDebugUtilsLabelEXT;
+extern PFN_vkSetDebugUtilsObjectNameEXT vkSetDebugUtilsObjectNameEXT;
+extern PFN_vkSetDebugUtilsObjectTagEXT vkSetDebugUtilsObjectTagEXT;
+extern PFN_vkSubmitDebugUtilsMessageEXT vkSubmitDebugUtilsMessageEXT;
+#endif /* defined(VK_EXT_debug_utils) */
+#if defined(VK_EXT_direct_mode_display)
+extern PFN_vkReleaseDisplayEXT vkReleaseDisplayEXT;
+#endif /* defined(VK_EXT_direct_mode_display) */
+#if defined(VK_EXT_directfb_surface)
+extern PFN_vkCreateDirectFBSurfaceEXT vkCreateDirectFBSurfaceEXT;
+extern PFN_vkGetPhysicalDeviceDirectFBPresentationSupportEXT vkGetPhysicalDeviceDirectFBPresentationSupportEXT;
+#endif /* defined(VK_EXT_directfb_surface) */
+#if defined(VK_EXT_discard_rectangles)
+extern PFN_vkCmdSetDiscardRectangleEXT vkCmdSetDiscardRectangleEXT;
+#endif /* defined(VK_EXT_discard_rectangles) */
+#if defined(VK_EXT_display_control)
+extern PFN_vkDisplayPowerControlEXT vkDisplayPowerControlEXT;
+extern PFN_vkGetSwapchainCounterEXT vkGetSwapchainCounterEXT;
+extern PFN_vkRegisterDeviceEventEXT vkRegisterDeviceEventEXT;
+extern PFN_vkRegisterDisplayEventEXT vkRegisterDisplayEventEXT;
+#endif /* defined(VK_EXT_display_control) */
+#if defined(VK_EXT_display_surface_counter)
+extern PFN_vkGetPhysicalDeviceSurfaceCapabilities2EXT vkGetPhysicalDeviceSurfaceCapabilities2EXT;
+#endif /* defined(VK_EXT_display_surface_counter) */
+#if defined(VK_EXT_extended_dynamic_state)
+extern PFN_vkCmdBindVertexBuffers2EXT vkCmdBindVertexBuffers2EXT;
+extern PFN_vkCmdSetCullModeEXT vkCmdSetCullModeEXT;
+extern PFN_vkCmdSetDepthBoundsTestEnableEXT vkCmdSetDepthBoundsTestEnableEXT;
+extern PFN_vkCmdSetDepthCompareOpEXT vkCmdSetDepthCompareOpEXT;
+extern PFN_vkCmdSetDepthTestEnableEXT vkCmdSetDepthTestEnableEXT;
+extern PFN_vkCmdSetDepthWriteEnableEXT vkCmdSetDepthWriteEnableEXT;
+extern PFN_vkCmdSetFrontFaceEXT vkCmdSetFrontFaceEXT;
+extern PFN_vkCmdSetPrimitiveTopologyEXT vkCmdSetPrimitiveTopologyEXT;
+extern PFN_vkCmdSetScissorWithCountEXT vkCmdSetScissorWithCountEXT;
+extern PFN_vkCmdSetStencilOpEXT vkCmdSetStencilOpEXT;
+extern PFN_vkCmdSetStencilTestEnableEXT vkCmdSetStencilTestEnableEXT;
+extern PFN_vkCmdSetViewportWithCountEXT vkCmdSetViewportWithCountEXT;
+#endif /* defined(VK_EXT_extended_dynamic_state) */
+#if defined(VK_EXT_extended_dynamic_state2)
+extern PFN_vkCmdSetDepthBiasEnableEXT vkCmdSetDepthBiasEnableEXT;
+extern PFN_vkCmdSetLogicOpEXT vkCmdSetLogicOpEXT;
+extern PFN_vkCmdSetPatchControlPointsEXT vkCmdSetPatchControlPointsEXT;
+extern PFN_vkCmdSetPrimitiveRestartEnableEXT vkCmdSetPrimitiveRestartEnableEXT;
+extern PFN_vkCmdSetRasterizerDiscardEnableEXT vkCmdSetRasterizerDiscardEnableEXT;
+#endif /* defined(VK_EXT_extended_dynamic_state2) */
+#if defined(VK_EXT_external_memory_host)
+extern PFN_vkGetMemoryHostPointerPropertiesEXT vkGetMemoryHostPointerPropertiesEXT;
+#endif /* defined(VK_EXT_external_memory_host) */
+#if defined(VK_EXT_full_screen_exclusive)
+extern PFN_vkAcquireFullScreenExclusiveModeEXT vkAcquireFullScreenExclusiveModeEXT;
+extern PFN_vkGetPhysicalDeviceSurfacePresentModes2EXT vkGetPhysicalDeviceSurfacePresentModes2EXT;
+extern PFN_vkReleaseFullScreenExclusiveModeEXT vkReleaseFullScreenExclusiveModeEXT;
+#endif /* defined(VK_EXT_full_screen_exclusive) */
+#if defined(VK_EXT_hdr_metadata)
+extern PFN_vkSetHdrMetadataEXT vkSetHdrMetadataEXT;
+#endif /* defined(VK_EXT_hdr_metadata) */
+#if defined(VK_EXT_headless_surface)
+extern PFN_vkCreateHeadlessSurfaceEXT vkCreateHeadlessSurfaceEXT;
+#endif /* defined(VK_EXT_headless_surface) */
+#if defined(VK_EXT_host_query_reset)
+extern PFN_vkResetQueryPoolEXT vkResetQueryPoolEXT;
+#endif /* defined(VK_EXT_host_query_reset) */
+#if defined(VK_EXT_image_drm_format_modifier)
+extern PFN_vkGetImageDrmFormatModifierPropertiesEXT vkGetImageDrmFormatModifierPropertiesEXT;
+#endif /* defined(VK_EXT_image_drm_format_modifier) */
+#if defined(VK_EXT_line_rasterization)
+extern PFN_vkCmdSetLineStippleEXT vkCmdSetLineStippleEXT;
+#endif /* defined(VK_EXT_line_rasterization) */
+#if defined(VK_EXT_metal_surface)
+extern PFN_vkCreateMetalSurfaceEXT vkCreateMetalSurfaceEXT;
+#endif /* defined(VK_EXT_metal_surface) */
+#if defined(VK_EXT_multi_draw)
+extern PFN_vkCmdDrawMultiEXT vkCmdDrawMultiEXT;
+extern PFN_vkCmdDrawMultiIndexedEXT vkCmdDrawMultiIndexedEXT;
+#endif /* defined(VK_EXT_multi_draw) */
+#if defined(VK_EXT_private_data)
+extern PFN_vkCreatePrivateDataSlotEXT vkCreatePrivateDataSlotEXT;
+extern PFN_vkDestroyPrivateDataSlotEXT vkDestroyPrivateDataSlotEXT;
+extern PFN_vkGetPrivateDataEXT vkGetPrivateDataEXT;
+extern PFN_vkSetPrivateDataEXT vkSetPrivateDataEXT;
+#endif /* defined(VK_EXT_private_data) */
+#if defined(VK_EXT_sample_locations)
+extern PFN_vkCmdSetSampleLocationsEXT vkCmdSetSampleLocationsEXT;
+extern PFN_vkGetPhysicalDeviceMultisamplePropertiesEXT vkGetPhysicalDeviceMultisamplePropertiesEXT;
+#endif /* defined(VK_EXT_sample_locations) */
+#if defined(VK_EXT_tooling_info)
+extern PFN_vkGetPhysicalDeviceToolPropertiesEXT vkGetPhysicalDeviceToolPropertiesEXT;
+#endif /* defined(VK_EXT_tooling_info) */
+#if defined(VK_EXT_transform_feedback)
+extern PFN_vkCmdBeginQueryIndexedEXT vkCmdBeginQueryIndexedEXT;
+extern PFN_vkCmdBeginTransformFeedbackEXT vkCmdBeginTransformFeedbackEXT;
+extern PFN_vkCmdBindTransformFeedbackBuffersEXT vkCmdBindTransformFeedbackBuffersEXT;
+extern PFN_vkCmdDrawIndirectByteCountEXT vkCmdDrawIndirectByteCountEXT;
+extern PFN_vkCmdEndQueryIndexedEXT vkCmdEndQueryIndexedEXT;
+extern PFN_vkCmdEndTransformFeedbackEXT vkCmdEndTransformFeedbackEXT;
+#endif /* defined(VK_EXT_transform_feedback) */
+#if defined(VK_EXT_validation_cache)
+extern PFN_vkCreateValidationCacheEXT vkCreateValidationCacheEXT;
+extern PFN_vkDestroyValidationCacheEXT vkDestroyValidationCacheEXT;
+extern PFN_vkGetValidationCacheDataEXT vkGetValidationCacheDataEXT;
+extern PFN_vkMergeValidationCachesEXT vkMergeValidationCachesEXT;
+#endif /* defined(VK_EXT_validation_cache) */
+#if defined(VK_EXT_vertex_input_dynamic_state)
+extern PFN_vkCmdSetVertexInputEXT vkCmdSetVertexInputEXT;
+#endif /* defined(VK_EXT_vertex_input_dynamic_state) */
+#if defined(VK_FUCHSIA_external_memory)
+extern PFN_vkGetMemoryZirconHandleFUCHSIA vkGetMemoryZirconHandleFUCHSIA;
+extern PFN_vkGetMemoryZirconHandlePropertiesFUCHSIA vkGetMemoryZirconHandlePropertiesFUCHSIA;
+#endif /* defined(VK_FUCHSIA_external_memory) */
+#if defined(VK_FUCHSIA_external_semaphore)
+extern PFN_vkGetSemaphoreZirconHandleFUCHSIA vkGetSemaphoreZirconHandleFUCHSIA;
+extern PFN_vkImportSemaphoreZirconHandleFUCHSIA vkImportSemaphoreZirconHandleFUCHSIA;
+#endif /* defined(VK_FUCHSIA_external_semaphore) */
+#if defined(VK_FUCHSIA_imagepipe_surface)
+extern PFN_vkCreateImagePipeSurfaceFUCHSIA vkCreateImagePipeSurfaceFUCHSIA;
+#endif /* defined(VK_FUCHSIA_imagepipe_surface) */
+#if defined(VK_GGP_stream_descriptor_surface)
+extern PFN_vkCreateStreamDescriptorSurfaceGGP vkCreateStreamDescriptorSurfaceGGP;
+#endif /* defined(VK_GGP_stream_descriptor_surface) */
+#if defined(VK_GOOGLE_display_timing)
+extern PFN_vkGetPastPresentationTimingGOOGLE vkGetPastPresentationTimingGOOGLE;
+extern PFN_vkGetRefreshCycleDurationGOOGLE vkGetRefreshCycleDurationGOOGLE;
+#endif /* defined(VK_GOOGLE_display_timing) */
+#if defined(VK_HUAWEI_subpass_shading)
+extern PFN_vkCmdSubpassShadingHUAWEI vkCmdSubpassShadingHUAWEI;
+extern PFN_vkGetSubpassShadingMaxWorkgroupSizeHUAWEI vkGetSubpassShadingMaxWorkgroupSizeHUAWEI;
+#endif /* defined(VK_HUAWEI_subpass_shading) */
+#if defined(VK_INTEL_performance_query)
+extern PFN_vkAcquirePerformanceConfigurationINTEL vkAcquirePerformanceConfigurationINTEL;
+extern PFN_vkCmdSetPerformanceMarkerINTEL vkCmdSetPerformanceMarkerINTEL;
+extern PFN_vkCmdSetPerformanceOverrideINTEL vkCmdSetPerformanceOverrideINTEL;
+extern PFN_vkCmdSetPerformanceStreamMarkerINTEL vkCmdSetPerformanceStreamMarkerINTEL;
+extern PFN_vkGetPerformanceParameterINTEL vkGetPerformanceParameterINTEL;
+extern PFN_vkInitializePerformanceApiINTEL vkInitializePerformanceApiINTEL;
+extern PFN_vkQueueSetPerformanceConfigurationINTEL vkQueueSetPerformanceConfigurationINTEL;
+extern PFN_vkReleasePerformanceConfigurationINTEL vkReleasePerformanceConfigurationINTEL;
+extern PFN_vkUninitializePerformanceApiINTEL vkUninitializePerformanceApiINTEL;
+#endif /* defined(VK_INTEL_performance_query) */
+#if defined(VK_KHR_acceleration_structure)
+extern PFN_vkBuildAccelerationStructuresKHR vkBuildAccelerationStructuresKHR;
+extern PFN_vkCmdBuildAccelerationStructuresIndirectKHR vkCmdBuildAccelerationStructuresIndirectKHR;
+extern PFN_vkCmdBuildAccelerationStructuresKHR vkCmdBuildAccelerationStructuresKHR;
+extern PFN_vkCmdCopyAccelerationStructureKHR vkCmdCopyAccelerationStructureKHR;
+extern PFN_vkCmdCopyAccelerationStructureToMemoryKHR vkCmdCopyAccelerationStructureToMemoryKHR;
+extern PFN_vkCmdCopyMemoryToAccelerationStructureKHR vkCmdCopyMemoryToAccelerationStructureKHR;
+extern PFN_vkCmdWriteAccelerationStructuresPropertiesKHR vkCmdWriteAccelerationStructuresPropertiesKHR;
+extern PFN_vkCopyAccelerationStructureKHR vkCopyAccelerationStructureKHR;
+extern PFN_vkCopyAccelerationStructureToMemoryKHR vkCopyAccelerationStructureToMemoryKHR;
+extern PFN_vkCopyMemoryToAccelerationStructureKHR vkCopyMemoryToAccelerationStructureKHR;
+extern PFN_vkCreateAccelerationStructureKHR vkCreateAccelerationStructureKHR;
+extern PFN_vkDestroyAccelerationStructureKHR vkDestroyAccelerationStructureKHR;
+extern PFN_vkGetAccelerationStructureBuildSizesKHR vkGetAccelerationStructureBuildSizesKHR;
+extern PFN_vkGetAccelerationStructureDeviceAddressKHR vkGetAccelerationStructureDeviceAddressKHR;
+extern PFN_vkGetDeviceAccelerationStructureCompatibilityKHR vkGetDeviceAccelerationStructureCompatibilityKHR;
+extern PFN_vkWriteAccelerationStructuresPropertiesKHR vkWriteAccelerationStructuresPropertiesKHR;
+#endif /* defined(VK_KHR_acceleration_structure) */
+#if defined(VK_KHR_android_surface)
+extern PFN_vkCreateAndroidSurfaceKHR vkCreateAndroidSurfaceKHR;
+#endif /* defined(VK_KHR_android_surface) */
+#if defined(VK_KHR_bind_memory2)
+extern PFN_vkBindBufferMemory2KHR vkBindBufferMemory2KHR;
+extern PFN_vkBindImageMemory2KHR vkBindImageMemory2KHR;
+#endif /* defined(VK_KHR_bind_memory2) */
+#if defined(VK_KHR_buffer_device_address)
+extern PFN_vkGetBufferDeviceAddressKHR vkGetBufferDeviceAddressKHR;
+extern PFN_vkGetBufferOpaqueCaptureAddressKHR vkGetBufferOpaqueCaptureAddressKHR;
+extern PFN_vkGetDeviceMemoryOpaqueCaptureAddressKHR vkGetDeviceMemoryOpaqueCaptureAddressKHR;
+#endif /* defined(VK_KHR_buffer_device_address) */
+#if defined(VK_KHR_copy_commands2)
+extern PFN_vkCmdBlitImage2KHR vkCmdBlitImage2KHR;
+extern PFN_vkCmdCopyBuffer2KHR vkCmdCopyBuffer2KHR;
+extern PFN_vkCmdCopyBufferToImage2KHR vkCmdCopyBufferToImage2KHR;
+extern PFN_vkCmdCopyImage2KHR vkCmdCopyImage2KHR;
+extern PFN_vkCmdCopyImageToBuffer2KHR vkCmdCopyImageToBuffer2KHR;
+extern PFN_vkCmdResolveImage2KHR vkCmdResolveImage2KHR;
+#endif /* defined(VK_KHR_copy_commands2) */
+#if defined(VK_KHR_create_renderpass2)
+extern PFN_vkCmdBeginRenderPass2KHR vkCmdBeginRenderPass2KHR;
+extern PFN_vkCmdEndRenderPass2KHR vkCmdEndRenderPass2KHR;
+extern PFN_vkCmdNextSubpass2KHR vkCmdNextSubpass2KHR;
+extern PFN_vkCreateRenderPass2KHR vkCreateRenderPass2KHR;
+#endif /* defined(VK_KHR_create_renderpass2) */
+#if defined(VK_KHR_deferred_host_operations)
+extern PFN_vkCreateDeferredOperationKHR vkCreateDeferredOperationKHR;
+extern PFN_vkDeferredOperationJoinKHR vkDeferredOperationJoinKHR;
+extern PFN_vkDestroyDeferredOperationKHR vkDestroyDeferredOperationKHR;
+extern PFN_vkGetDeferredOperationMaxConcurrencyKHR vkGetDeferredOperationMaxConcurrencyKHR;
+extern PFN_vkGetDeferredOperationResultKHR vkGetDeferredOperationResultKHR;
+#endif /* defined(VK_KHR_deferred_host_operations) */
+#if defined(VK_KHR_descriptor_update_template)
+extern PFN_vkCreateDescriptorUpdateTemplateKHR vkCreateDescriptorUpdateTemplateKHR;
+extern PFN_vkDestroyDescriptorUpdateTemplateKHR vkDestroyDescriptorUpdateTemplateKHR;
+extern PFN_vkUpdateDescriptorSetWithTemplateKHR vkUpdateDescriptorSetWithTemplateKHR;
+#endif /* defined(VK_KHR_descriptor_update_template) */
+#if defined(VK_KHR_device_group)
+extern PFN_vkCmdDispatchBaseKHR vkCmdDispatchBaseKHR;
+extern PFN_vkCmdSetDeviceMaskKHR vkCmdSetDeviceMaskKHR;
+extern PFN_vkGetDeviceGroupPeerMemoryFeaturesKHR vkGetDeviceGroupPeerMemoryFeaturesKHR;
+#endif /* defined(VK_KHR_device_group) */
+#if defined(VK_KHR_device_group_creation)
+extern PFN_vkEnumeratePhysicalDeviceGroupsKHR vkEnumeratePhysicalDeviceGroupsKHR;
+#endif /* defined(VK_KHR_device_group_creation) */
+#if defined(VK_KHR_display)
+extern PFN_vkCreateDisplayModeKHR vkCreateDisplayModeKHR;
+extern PFN_vkCreateDisplayPlaneSurfaceKHR vkCreateDisplayPlaneSurfaceKHR;
+extern PFN_vkGetDisplayModePropertiesKHR vkGetDisplayModePropertiesKHR;
+extern PFN_vkGetDisplayPlaneCapabilitiesKHR vkGetDisplayPlaneCapabilitiesKHR;
+extern PFN_vkGetDisplayPlaneSupportedDisplaysKHR vkGetDisplayPlaneSupportedDisplaysKHR;
+extern PFN_vkGetPhysicalDeviceDisplayPlanePropertiesKHR vkGetPhysicalDeviceDisplayPlanePropertiesKHR;
+extern PFN_vkGetPhysicalDeviceDisplayPropertiesKHR vkGetPhysicalDeviceDisplayPropertiesKHR;
+#endif /* defined(VK_KHR_display) */
+#if defined(VK_KHR_display_swapchain)
+extern PFN_vkCreateSharedSwapchainsKHR vkCreateSharedSwapchainsKHR;
+#endif /* defined(VK_KHR_display_swapchain) */
+#if defined(VK_KHR_draw_indirect_count)
+extern PFN_vkCmdDrawIndexedIndirectCountKHR vkCmdDrawIndexedIndirectCountKHR;
+extern PFN_vkCmdDrawIndirectCountKHR vkCmdDrawIndirectCountKHR;
+#endif /* defined(VK_KHR_draw_indirect_count) */
+#if defined(VK_KHR_external_fence_capabilities)
+extern PFN_vkGetPhysicalDeviceExternalFencePropertiesKHR vkGetPhysicalDeviceExternalFencePropertiesKHR;
+#endif /* defined(VK_KHR_external_fence_capabilities) */
+#if defined(VK_KHR_external_fence_fd)
+extern PFN_vkGetFenceFdKHR vkGetFenceFdKHR;
+extern PFN_vkImportFenceFdKHR vkImportFenceFdKHR;
+#endif /* defined(VK_KHR_external_fence_fd) */
+#if defined(VK_KHR_external_fence_win32)
+extern PFN_vkGetFenceWin32HandleKHR vkGetFenceWin32HandleKHR;
+extern PFN_vkImportFenceWin32HandleKHR vkImportFenceWin32HandleKHR;
+#endif /* defined(VK_KHR_external_fence_win32) */
+#if defined(VK_KHR_external_memory_capabilities)
+extern PFN_vkGetPhysicalDeviceExternalBufferPropertiesKHR vkGetPhysicalDeviceExternalBufferPropertiesKHR;
+#endif /* defined(VK_KHR_external_memory_capabilities) */
+#if defined(VK_KHR_external_memory_fd)
+extern PFN_vkGetMemoryFdKHR vkGetMemoryFdKHR;
+extern PFN_vkGetMemoryFdPropertiesKHR vkGetMemoryFdPropertiesKHR;
+#endif /* defined(VK_KHR_external_memory_fd) */
+#if defined(VK_KHR_external_memory_win32)
+extern PFN_vkGetMemoryWin32HandleKHR vkGetMemoryWin32HandleKHR;
+extern PFN_vkGetMemoryWin32HandlePropertiesKHR vkGetMemoryWin32HandlePropertiesKHR;
+#endif /* defined(VK_KHR_external_memory_win32) */
+#if defined(VK_KHR_external_semaphore_capabilities)
+extern PFN_vkGetPhysicalDeviceExternalSemaphorePropertiesKHR vkGetPhysicalDeviceExternalSemaphorePropertiesKHR;
+#endif /* defined(VK_KHR_external_semaphore_capabilities) */
+#if defined(VK_KHR_external_semaphore_fd)
+extern PFN_vkGetSemaphoreFdKHR vkGetSemaphoreFdKHR;
+extern PFN_vkImportSemaphoreFdKHR vkImportSemaphoreFdKHR;
+#endif /* defined(VK_KHR_external_semaphore_fd) */
+#if defined(VK_KHR_external_semaphore_win32)
+extern PFN_vkGetSemaphoreWin32HandleKHR vkGetSemaphoreWin32HandleKHR;
+extern PFN_vkImportSemaphoreWin32HandleKHR vkImportSemaphoreWin32HandleKHR;
+#endif /* defined(VK_KHR_external_semaphore_win32) */
+#if defined(VK_KHR_fragment_shading_rate)
+extern PFN_vkCmdSetFragmentShadingRateKHR vkCmdSetFragmentShadingRateKHR;
+extern PFN_vkGetPhysicalDeviceFragmentShadingRatesKHR vkGetPhysicalDeviceFragmentShadingRatesKHR;
+#endif /* defined(VK_KHR_fragment_shading_rate) */
+#if defined(VK_KHR_get_display_properties2)
+extern PFN_vkGetDisplayModeProperties2KHR vkGetDisplayModeProperties2KHR;
+extern PFN_vkGetDisplayPlaneCapabilities2KHR vkGetDisplayPlaneCapabilities2KHR;
+extern PFN_vkGetPhysicalDeviceDisplayPlaneProperties2KHR vkGetPhysicalDeviceDisplayPlaneProperties2KHR;
+extern PFN_vkGetPhysicalDeviceDisplayProperties2KHR vkGetPhysicalDeviceDisplayProperties2KHR;
+#endif /* defined(VK_KHR_get_display_properties2) */
+#if defined(VK_KHR_get_memory_requirements2)
+extern PFN_vkGetBufferMemoryRequirements2KHR vkGetBufferMemoryRequirements2KHR;
+extern PFN_vkGetImageMemoryRequirements2KHR vkGetImageMemoryRequirements2KHR;
+extern PFN_vkGetImageSparseMemoryRequirements2KHR vkGetImageSparseMemoryRequirements2KHR;
+#endif /* defined(VK_KHR_get_memory_requirements2) */
+#if defined(VK_KHR_get_physical_device_properties2)
+extern PFN_vkGetPhysicalDeviceFeatures2KHR vkGetPhysicalDeviceFeatures2KHR;
+extern PFN_vkGetPhysicalDeviceFormatProperties2KHR vkGetPhysicalDeviceFormatProperties2KHR;
+extern PFN_vkGetPhysicalDeviceImageFormatProperties2KHR vkGetPhysicalDeviceImageFormatProperties2KHR;
+extern PFN_vkGetPhysicalDeviceMemoryProperties2KHR vkGetPhysicalDeviceMemoryProperties2KHR;
+extern PFN_vkGetPhysicalDeviceProperties2KHR vkGetPhysicalDeviceProperties2KHR;
+extern PFN_vkGetPhysicalDeviceQueueFamilyProperties2KHR vkGetPhysicalDeviceQueueFamilyProperties2KHR;
+extern PFN_vkGetPhysicalDeviceSparseImageFormatProperties2KHR vkGetPhysicalDeviceSparseImageFormatProperties2KHR;
+#endif /* defined(VK_KHR_get_physical_device_properties2) */
+#if defined(VK_KHR_get_surface_capabilities2)
+extern PFN_vkGetPhysicalDeviceSurfaceCapabilities2KHR vkGetPhysicalDeviceSurfaceCapabilities2KHR;
+extern PFN_vkGetPhysicalDeviceSurfaceFormats2KHR vkGetPhysicalDeviceSurfaceFormats2KHR;
+#endif /* defined(VK_KHR_get_surface_capabilities2) */
+#if defined(VK_KHR_maintenance1)
+extern PFN_vkTrimCommandPoolKHR vkTrimCommandPoolKHR;
+#endif /* defined(VK_KHR_maintenance1) */
+#if defined(VK_KHR_maintenance3)
+extern PFN_vkGetDescriptorSetLayoutSupportKHR vkGetDescriptorSetLayoutSupportKHR;
+#endif /* defined(VK_KHR_maintenance3) */
+#if defined(VK_KHR_performance_query)
+extern PFN_vkAcquireProfilingLockKHR vkAcquireProfilingLockKHR;
+extern PFN_vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR;
+extern PFN_vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR;
+extern PFN_vkReleaseProfilingLockKHR vkReleaseProfilingLockKHR;
+#endif /* defined(VK_KHR_performance_query) */
+#if defined(VK_KHR_pipeline_executable_properties)
+extern PFN_vkGetPipelineExecutableInternalRepresentationsKHR vkGetPipelineExecutableInternalRepresentationsKHR;
+extern PFN_vkGetPipelineExecutablePropertiesKHR vkGetPipelineExecutablePropertiesKHR;
+extern PFN_vkGetPipelineExecutableStatisticsKHR vkGetPipelineExecutableStatisticsKHR;
+#endif /* defined(VK_KHR_pipeline_executable_properties) */
+#if defined(VK_KHR_push_descriptor)
+extern PFN_vkCmdPushDescriptorSetKHR vkCmdPushDescriptorSetKHR;
+#endif /* defined(VK_KHR_push_descriptor) */
+#if defined(VK_KHR_ray_tracing_pipeline)
+extern PFN_vkCmdSetRayTracingPipelineStackSizeKHR vkCmdSetRayTracingPipelineStackSizeKHR;
+extern PFN_vkCmdTraceRaysIndirectKHR vkCmdTraceRaysIndirectKHR;
+extern PFN_vkCmdTraceRaysKHR vkCmdTraceRaysKHR;
+extern PFN_vkCreateRayTracingPipelinesKHR vkCreateRayTracingPipelinesKHR;
+extern PFN_vkGetRayTracingCaptureReplayShaderGroupHandlesKHR vkGetRayTracingCaptureReplayShaderGroupHandlesKHR;
+extern PFN_vkGetRayTracingShaderGroupHandlesKHR vkGetRayTracingShaderGroupHandlesKHR;
+extern PFN_vkGetRayTracingShaderGroupStackSizeKHR vkGetRayTracingShaderGroupStackSizeKHR;
+#endif /* defined(VK_KHR_ray_tracing_pipeline) */
+#if defined(VK_KHR_sampler_ycbcr_conversion)
+extern PFN_vkCreateSamplerYcbcrConversionKHR vkCreateSamplerYcbcrConversionKHR;
+extern PFN_vkDestroySamplerYcbcrConversionKHR vkDestroySamplerYcbcrConversionKHR;
+#endif /* defined(VK_KHR_sampler_ycbcr_conversion) */
+#if defined(VK_KHR_shared_presentable_image)
+extern PFN_vkGetSwapchainStatusKHR vkGetSwapchainStatusKHR;
+#endif /* defined(VK_KHR_shared_presentable_image) */
+#if defined(VK_KHR_surface)
+extern PFN_vkDestroySurfaceKHR vkDestroySurfaceKHR;
+extern PFN_vkGetPhysicalDeviceSurfaceCapabilitiesKHR vkGetPhysicalDeviceSurfaceCapabilitiesKHR;
+extern PFN_vkGetPhysicalDeviceSurfaceFormatsKHR vkGetPhysicalDeviceSurfaceFormatsKHR;
+extern PFN_vkGetPhysicalDeviceSurfacePresentModesKHR vkGetPhysicalDeviceSurfacePresentModesKHR;
+extern PFN_vkGetPhysicalDeviceSurfaceSupportKHR vkGetPhysicalDeviceSurfaceSupportKHR;
+#endif /* defined(VK_KHR_surface) */
+#if defined(VK_KHR_swapchain)
+extern PFN_vkAcquireNextImageKHR vkAcquireNextImageKHR;
+extern PFN_vkCreateSwapchainKHR vkCreateSwapchainKHR;
+extern PFN_vkDestroySwapchainKHR vkDestroySwapchainKHR;
+extern PFN_vkGetSwapchainImagesKHR vkGetSwapchainImagesKHR;
+extern PFN_vkQueuePresentKHR vkQueuePresentKHR;
+#endif /* defined(VK_KHR_swapchain) */
+#if defined(VK_KHR_synchronization2)
+extern PFN_vkCmdPipelineBarrier2KHR vkCmdPipelineBarrier2KHR;
+extern PFN_vkCmdResetEvent2KHR vkCmdResetEvent2KHR;
+extern PFN_vkCmdSetEvent2KHR vkCmdSetEvent2KHR;
+extern PFN_vkCmdWaitEvents2KHR vkCmdWaitEvents2KHR;
+extern PFN_vkCmdWriteTimestamp2KHR vkCmdWriteTimestamp2KHR;
+extern PFN_vkQueueSubmit2KHR vkQueueSubmit2KHR;
+#endif /* defined(VK_KHR_synchronization2) */
+#if defined(VK_KHR_synchronization2) && defined(VK_AMD_buffer_marker)
+extern PFN_vkCmdWriteBufferMarker2AMD vkCmdWriteBufferMarker2AMD;
+#endif /* defined(VK_KHR_synchronization2) && defined(VK_AMD_buffer_marker) */
+#if defined(VK_KHR_synchronization2) && defined(VK_NV_device_diagnostic_checkpoints)
+extern PFN_vkGetQueueCheckpointData2NV vkGetQueueCheckpointData2NV;
+#endif /* defined(VK_KHR_synchronization2) && defined(VK_NV_device_diagnostic_checkpoints) */
+#if defined(VK_KHR_timeline_semaphore)
+extern PFN_vkGetSemaphoreCounterValueKHR vkGetSemaphoreCounterValueKHR;
+extern PFN_vkSignalSemaphoreKHR vkSignalSemaphoreKHR;
+extern PFN_vkWaitSemaphoresKHR vkWaitSemaphoresKHR;
+#endif /* defined(VK_KHR_timeline_semaphore) */
+#if defined(VK_KHR_video_decode_queue)
+extern PFN_vkCmdDecodeVideoKHR vkCmdDecodeVideoKHR;
+#endif /* defined(VK_KHR_video_decode_queue) */
+#if defined(VK_KHR_video_encode_queue)
+extern PFN_vkCmdEncodeVideoKHR vkCmdEncodeVideoKHR;
+#endif /* defined(VK_KHR_video_encode_queue) */
+#if defined(VK_KHR_video_queue)
+extern PFN_vkBindVideoSessionMemoryKHR vkBindVideoSessionMemoryKHR;
+extern PFN_vkCmdBeginVideoCodingKHR vkCmdBeginVideoCodingKHR;
+extern PFN_vkCmdControlVideoCodingKHR vkCmdControlVideoCodingKHR;
+extern PFN_vkCmdEndVideoCodingKHR vkCmdEndVideoCodingKHR;
+extern PFN_vkCreateVideoSessionKHR vkCreateVideoSessionKHR;
+extern PFN_vkCreateVideoSessionParametersKHR vkCreateVideoSessionParametersKHR;
+extern PFN_vkDestroyVideoSessionKHR vkDestroyVideoSessionKHR;
+extern PFN_vkDestroyVideoSessionParametersKHR vkDestroyVideoSessionParametersKHR;
+extern PFN_vkGetPhysicalDeviceVideoCapabilitiesKHR vkGetPhysicalDeviceVideoCapabilitiesKHR;
+extern PFN_vkGetPhysicalDeviceVideoFormatPropertiesKHR vkGetPhysicalDeviceVideoFormatPropertiesKHR;
+extern PFN_vkGetVideoSessionMemoryRequirementsKHR vkGetVideoSessionMemoryRequirementsKHR;
+extern PFN_vkUpdateVideoSessionParametersKHR vkUpdateVideoSessionParametersKHR;
+#endif /* defined(VK_KHR_video_queue) */
+#if defined(VK_KHR_wayland_surface)
+extern PFN_vkCreateWaylandSurfaceKHR vkCreateWaylandSurfaceKHR;
+extern PFN_vkGetPhysicalDeviceWaylandPresentationSupportKHR vkGetPhysicalDeviceWaylandPresentationSupportKHR;
+#endif /* defined(VK_KHR_wayland_surface) */
+#if defined(VK_KHR_win32_surface)
+extern PFN_vkCreateWin32SurfaceKHR vkCreateWin32SurfaceKHR;
+extern PFN_vkGetPhysicalDeviceWin32PresentationSupportKHR vkGetPhysicalDeviceWin32PresentationSupportKHR;
+#endif /* defined(VK_KHR_win32_surface) */
+#if defined(VK_KHR_xcb_surface)
+extern PFN_vkCreateXcbSurfaceKHR vkCreateXcbSurfaceKHR;
+extern PFN_vkGetPhysicalDeviceXcbPresentationSupportKHR vkGetPhysicalDeviceXcbPresentationSupportKHR;
+#endif /* defined(VK_KHR_xcb_surface) */
+#if defined(VK_KHR_xlib_surface)
+extern PFN_vkCreateXlibSurfaceKHR vkCreateXlibSurfaceKHR;
+extern PFN_vkGetPhysicalDeviceXlibPresentationSupportKHR vkGetPhysicalDeviceXlibPresentationSupportKHR;
+#endif /* defined(VK_KHR_xlib_surface) */
+#if defined(VK_MVK_ios_surface)
+extern PFN_vkCreateIOSSurfaceMVK vkCreateIOSSurfaceMVK;
+#endif /* defined(VK_MVK_ios_surface) */
+#if defined(VK_MVK_macos_surface)
+extern PFN_vkCreateMacOSSurfaceMVK vkCreateMacOSSurfaceMVK;
+#endif /* defined(VK_MVK_macos_surface) */
+#if defined(VK_NN_vi_surface)
+extern PFN_vkCreateViSurfaceNN vkCreateViSurfaceNN;
+#endif /* defined(VK_NN_vi_surface) */
+#if defined(VK_NVX_binary_import)
+extern PFN_vkCmdCuLaunchKernelNVX vkCmdCuLaunchKernelNVX;
+extern PFN_vkCreateCuFunctionNVX vkCreateCuFunctionNVX;
+extern PFN_vkCreateCuModuleNVX vkCreateCuModuleNVX;
+extern PFN_vkDestroyCuFunctionNVX vkDestroyCuFunctionNVX;
+extern PFN_vkDestroyCuModuleNVX vkDestroyCuModuleNVX;
+#endif /* defined(VK_NVX_binary_import) */
+#if defined(VK_NVX_image_view_handle)
+extern PFN_vkGetImageViewAddressNVX vkGetImageViewAddressNVX;
+extern PFN_vkGetImageViewHandleNVX vkGetImageViewHandleNVX;
+#endif /* defined(VK_NVX_image_view_handle) */
+#if defined(VK_NV_acquire_winrt_display)
+extern PFN_vkAcquireWinrtDisplayNV vkAcquireWinrtDisplayNV;
+extern PFN_vkGetWinrtDisplayNV vkGetWinrtDisplayNV;
+#endif /* defined(VK_NV_acquire_winrt_display) */
+#if defined(VK_NV_clip_space_w_scaling)
+extern PFN_vkCmdSetViewportWScalingNV vkCmdSetViewportWScalingNV;
+#endif /* defined(VK_NV_clip_space_w_scaling) */
+#if defined(VK_NV_cooperative_matrix)
+extern PFN_vkGetPhysicalDeviceCooperativeMatrixPropertiesNV vkGetPhysicalDeviceCooperativeMatrixPropertiesNV;
+#endif /* defined(VK_NV_cooperative_matrix) */
+#if defined(VK_NV_coverage_reduction_mode)
+extern PFN_vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV;
+#endif /* defined(VK_NV_coverage_reduction_mode) */
+#if defined(VK_NV_device_diagnostic_checkpoints)
+extern PFN_vkCmdSetCheckpointNV vkCmdSetCheckpointNV;
+extern PFN_vkGetQueueCheckpointDataNV vkGetQueueCheckpointDataNV;
+#endif /* defined(VK_NV_device_diagnostic_checkpoints) */
+#if defined(VK_NV_device_generated_commands)
+extern PFN_vkCmdBindPipelineShaderGroupNV vkCmdBindPipelineShaderGroupNV;
+extern PFN_vkCmdExecuteGeneratedCommandsNV vkCmdExecuteGeneratedCommandsNV;
+extern PFN_vkCmdPreprocessGeneratedCommandsNV vkCmdPreprocessGeneratedCommandsNV;
+extern PFN_vkCreateIndirectCommandsLayoutNV vkCreateIndirectCommandsLayoutNV;
+extern PFN_vkDestroyIndirectCommandsLayoutNV vkDestroyIndirectCommandsLayoutNV;
+extern PFN_vkGetGeneratedCommandsMemoryRequirementsNV vkGetGeneratedCommandsMemoryRequirementsNV;
+#endif /* defined(VK_NV_device_generated_commands) */
+#if defined(VK_NV_external_memory_capabilities)
+extern PFN_vkGetPhysicalDeviceExternalImageFormatPropertiesNV vkGetPhysicalDeviceExternalImageFormatPropertiesNV;
+#endif /* defined(VK_NV_external_memory_capabilities) */
+#if defined(VK_NV_external_memory_win32)
+extern PFN_vkGetMemoryWin32HandleNV vkGetMemoryWin32HandleNV;
+#endif /* defined(VK_NV_external_memory_win32) */
+#if defined(VK_NV_fragment_shading_rate_enums)
+extern PFN_vkCmdSetFragmentShadingRateEnumNV vkCmdSetFragmentShadingRateEnumNV;
+#endif /* defined(VK_NV_fragment_shading_rate_enums) */
+#if defined(VK_NV_mesh_shader)
+extern PFN_vkCmdDrawMeshTasksIndirectCountNV vkCmdDrawMeshTasksIndirectCountNV;
+extern PFN_vkCmdDrawMeshTasksIndirectNV vkCmdDrawMeshTasksIndirectNV;
+extern PFN_vkCmdDrawMeshTasksNV vkCmdDrawMeshTasksNV;
+#endif /* defined(VK_NV_mesh_shader) */
+#if defined(VK_NV_ray_tracing)
+extern PFN_vkBindAccelerationStructureMemoryNV vkBindAccelerationStructureMemoryNV;
+extern PFN_vkCmdBuildAccelerationStructureNV vkCmdBuildAccelerationStructureNV;
+extern PFN_vkCmdCopyAccelerationStructureNV vkCmdCopyAccelerationStructureNV;
+extern PFN_vkCmdTraceRaysNV vkCmdTraceRaysNV;
+extern PFN_vkCmdWriteAccelerationStructuresPropertiesNV vkCmdWriteAccelerationStructuresPropertiesNV;
+extern PFN_vkCompileDeferredNV vkCompileDeferredNV;
+extern PFN_vkCreateAccelerationStructureNV vkCreateAccelerationStructureNV;
+extern PFN_vkCreateRayTracingPipelinesNV vkCreateRayTracingPipelinesNV;
+extern PFN_vkDestroyAccelerationStructureNV vkDestroyAccelerationStructureNV;
+extern PFN_vkGetAccelerationStructureHandleNV vkGetAccelerationStructureHandleNV;
+extern PFN_vkGetAccelerationStructureMemoryRequirementsNV vkGetAccelerationStructureMemoryRequirementsNV;
+extern PFN_vkGetRayTracingShaderGroupHandlesNV vkGetRayTracingShaderGroupHandlesNV;
+#endif /* defined(VK_NV_ray_tracing) */
+#if defined(VK_NV_scissor_exclusive)
+extern PFN_vkCmdSetExclusiveScissorNV vkCmdSetExclusiveScissorNV;
+#endif /* defined(VK_NV_scissor_exclusive) */
+#if defined(VK_NV_shading_rate_image)
+extern PFN_vkCmdBindShadingRateImageNV vkCmdBindShadingRateImageNV;
+extern PFN_vkCmdSetCoarseSampleOrderNV vkCmdSetCoarseSampleOrderNV;
+extern PFN_vkCmdSetViewportShadingRatePaletteNV vkCmdSetViewportShadingRatePaletteNV;
+#endif /* defined(VK_NV_shading_rate_image) */
+#if defined(VK_QNX_screen_surface)
+extern PFN_vkCreateScreenSurfaceQNX vkCreateScreenSurfaceQNX;
+extern PFN_vkGetPhysicalDeviceScreenPresentationSupportQNX vkGetPhysicalDeviceScreenPresentationSupportQNX;
+#endif /* defined(VK_QNX_screen_surface) */
+#if (defined(VK_EXT_full_screen_exclusive) && defined(VK_KHR_device_group)) || (defined(VK_EXT_full_screen_exclusive) && defined(VK_VERSION_1_1))
+extern PFN_vkGetDeviceGroupSurfacePresentModes2EXT vkGetDeviceGroupSurfacePresentModes2EXT;
+#endif /* (defined(VK_EXT_full_screen_exclusive) && defined(VK_KHR_device_group)) || (defined(VK_EXT_full_screen_exclusive) && defined(VK_VERSION_1_1)) */
+#if (defined(VK_KHR_descriptor_update_template) && defined(VK_KHR_push_descriptor)) || (defined(VK_KHR_push_descriptor) && defined(VK_VERSION_1_1)) || (defined(VK_KHR_push_descriptor) && defined(VK_KHR_descriptor_update_template))
+extern PFN_vkCmdPushDescriptorSetWithTemplateKHR vkCmdPushDescriptorSetWithTemplateKHR;
+#endif /* (defined(VK_KHR_descriptor_update_template) && defined(VK_KHR_push_descriptor)) || (defined(VK_KHR_push_descriptor) && defined(VK_VERSION_1_1)) || (defined(VK_KHR_push_descriptor) && defined(VK_KHR_descriptor_update_template)) */
+#if (defined(VK_KHR_device_group) && defined(VK_KHR_surface)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1))
+extern PFN_vkGetDeviceGroupPresentCapabilitiesKHR vkGetDeviceGroupPresentCapabilitiesKHR;
+extern PFN_vkGetDeviceGroupSurfacePresentModesKHR vkGetDeviceGroupSurfacePresentModesKHR;
+extern PFN_vkGetPhysicalDevicePresentRectanglesKHR vkGetPhysicalDevicePresentRectanglesKHR;
+#endif /* (defined(VK_KHR_device_group) && defined(VK_KHR_surface)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1)) */
+#if (defined(VK_KHR_device_group) && defined(VK_KHR_swapchain)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1))
+extern PFN_vkAcquireNextImage2KHR vkAcquireNextImage2KHR;
+#endif /* (defined(VK_KHR_device_group) && defined(VK_KHR_swapchain)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1)) */
+/* VOLK_GENERATE_PROTOTYPES_H */
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif
+
+#ifdef VOLK_IMPLEMENTATION
+#undef VOLK_IMPLEMENTATION
+// Prevent tools like dependency checkers that don't evaluate
+// macros from detecting a cyclic dependency.
+#define VOLK_SOURCE "volk.c"
+#include VOLK_SOURCE
+#endif
+
+/**
+ * Copyright (c) 2018-2019 Arseny Kapoulkine
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in all
+ * copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+ * SOFTWARE.
+*/
+/* clang-format on */
diff --git a/thirdparty/vulkan/LICENSE.txt b/thirdparty/vulkan/LICENSE.txt
index 6599e310a4..d645695673 100644
--- a/thirdparty/vulkan/LICENSE.txt
+++ b/thirdparty/vulkan/LICENSE.txt
@@ -1,8 +1,3 @@
-The majority of files in this project use the Apache 2.0 License.
-There are a few exceptions and their license can be found in the source.
-Any license deviations from Apache 2.0 are "more permissive" licenses.
-
-===========================================================================================
Apache License
Version 2.0, January 2004
diff --git a/thirdparty/vulkan/android/vk_mem_alloc.cpp b/thirdparty/vulkan/android/vk_mem_alloc.cpp
deleted file mode 100644
index a28454cf6e..0000000000
--- a/thirdparty/vulkan/android/vk_mem_alloc.cpp
+++ /dev/null
@@ -1,8 +0,0 @@
-#define VMA_IMPLEMENTATION
-#ifdef DEBUG_ENABLED
-#ifndef _DEBUG
-#define _DEBUG
-#endif
-#endif
-// Include memory allocator from Android NDK
-#include <vk_mem_alloc.h>
diff --git a/thirdparty/vulkan/include/vk_video/vulkan_video_codec_h264std.h b/thirdparty/vulkan/include/vk_video/vulkan_video_codec_h264std.h
new file mode 100644
index 0000000000..f8c0cef49a
--- /dev/null
+++ b/thirdparty/vulkan/include/vk_video/vulkan_video_codec_h264std.h
@@ -0,0 +1,299 @@
+/*
+** Copyright (c) 2019-2021 The Khronos Group Inc.
+**
+** SPDX-License-Identifier: Apache-2.0
+*/
+
+#ifndef VULKAN_VIDEO_CODEC_H264STD_H_
+#define VULKAN_VIDEO_CODEC_H264STD_H_ 1
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#include "vk_video/vulkan_video_codecs_common.h"
+
+// Vulkan 0.9 provisional Vulkan video H.264 encode and decode std specification version number
+#define VK_STD_VULKAN_VIDEO_CODEC_H264_API_VERSION_0_9 VK_MAKE_VIDEO_STD_VERSION(0, 9, 0) // Patch version should always be set to 0
+
+// Format must be in the form XX.XX where the first two digits are the major and the second two, the minor.
+#define VK_STD_VULKAN_VIDEO_CODEC_H264_SPEC_VERSION VK_STD_VULKAN_VIDEO_CODEC_H264_API_VERSION_0_9
+#define VK_STD_VULKAN_VIDEO_CODEC_H264_EXTENSION_NAME "VK_STD_vulkan_video_codec_h264"
+
+// *************************************************
+// Video H.264 common definitions:
+// *************************************************
+
+typedef enum StdVideoH264ChromaFormatIdc {
+ std_video_h264_chroma_format_idc_monochrome = 0,
+ std_video_h264_chroma_format_idc_420 = 1,
+ std_video_h264_chroma_format_idc_422 = 2,
+ std_video_h264_chroma_format_idc_444 = 3,
+} StdVideoH264ChromaFormatIdc;
+
+typedef enum StdVideoH264ProfileIdc {
+ std_video_h264_profile_idc_baseline = 66, /* Only constrained baseline is supported */
+ std_video_h264_profile_idc_main = 77,
+ std_video_h264_profile_idc_high = 100,
+ std_video_h264_profile_idc_high_444_predictive = 244,
+ std_video_h264_profile_idc_invalid = 0x7FFFFFFF
+} StdVideoH264ProfileIdc;
+
+typedef enum StdVideoH264Level {
+ std_video_h264_level_1_0 = 0,
+ std_video_h264_level_1_1 = 1,
+ std_video_h264_level_1_2 = 2,
+ std_video_h264_level_1_3 = 3,
+ std_video_h264_level_2_0 = 4,
+ std_video_h264_level_2_1 = 5,
+ std_video_h264_level_2_2 = 6,
+ std_video_h264_level_3_0 = 7,
+ std_video_h264_level_3_1 = 8,
+ std_video_h264_level_3_2 = 9,
+ std_video_h264_level_4_0 = 10,
+ std_video_h264_level_4_1 = 11,
+ std_video_h264_level_4_2 = 12,
+ std_video_h264_level_5_0 = 13,
+ std_video_h264_level_5_1 = 14,
+ std_video_h264_level_5_2 = 15,
+ std_video_h264_level_6_0 = 16,
+ std_video_h264_level_6_1 = 17,
+ std_video_h264_level_6_2 = 18,
+ std_video_h264_level_invalid = 0x7FFFFFFF
+} StdVideoH264Level;
+
+typedef enum StdVideoH264PocType {
+ std_video_h264_poc_type_0 = 0,
+ std_video_h264_poc_type_1 = 1,
+ std_video_h264_poc_type_2 = 2,
+ std_video_h264_poc_type_invalid = 0x7FFFFFFF
+} StdVideoH264PocType;
+
+typedef enum StdVideoH264AspectRatioIdc {
+ std_video_h264_aspect_ratio_idc_unspecified = 0,
+ std_video_h264_aspect_ratio_idc_square = 1,
+ std_video_h264_aspect_ratio_idc_12_11 = 2,
+ std_video_h264_aspect_ratio_idc_10_11 = 3,
+ std_video_h264_aspect_ratio_idc_16_11 = 4,
+ std_video_h264_aspect_ratio_idc_40_33 = 5,
+ std_video_h264_aspect_ratio_idc_24_11 = 6,
+ std_video_h264_aspect_ratio_idc_20_11 = 7,
+ std_video_h264_aspect_ratio_idc_32_11 = 8,
+ std_video_h264_aspect_ratio_idc_80_33 = 9,
+ std_video_h264_aspect_ratio_idc_18_11 = 10,
+ std_video_h264_aspect_ratio_idc_15_11 = 11,
+ std_video_h264_aspect_ratio_idc_64_33 = 12,
+ std_video_h264_aspect_ratio_idc_160_99 = 13,
+ std_video_h264_aspect_ratio_idc_4_3 = 14,
+ std_video_h264_aspect_ratio_idc_3_2 = 15,
+ std_video_h264_aspect_ratio_idc_2_1 = 16,
+ std_video_h264_aspect_ratio_idc_extended_sar = 255,
+ std_video_h264_aspect_ratio_idc_invalid = 0x7FFFFFFF
+} StdVideoH264AspectRatioIdc;
+
+typedef enum StdVideoH264WeightedBiPredIdc {
+ std_video_h264_default_weighted_b_slices_prediction_idc = 0,
+ std_video_h264_explicit_weighted_b_slices_prediction_idc = 1,
+ std_video_h264_implicit_weighted_b_slices_prediction_idc = 2,
+ std_video_h264_invalid_weighted_b_slices_prediction_idc = 0x7FFFFFFF
+} StdVideoH264WeightedBiPredIdc;
+
+typedef enum StdVideoH264ModificationOfPicNumsIdc {
+ std_video_h264_modification_of_pic_nums_idc_short_term_subtract = 0,
+ std_video_h264_modification_of_pic_nums_idc_short_term_add = 1,
+ std_video_h264_modification_of_pic_nums_idc_long_term = 2,
+ std_video_h264_modification_of_pic_nums_idc_end = 3,
+ std_video_h264_modification_of_pic_nums_idc_invalid = 0x7FFFFFFF
+} StdVideoH264ModificationOfPicNumsIdc;
+
+typedef enum StdVideoH264MemMgmtControlOp {
+ std_video_h264_mem_mgmt_control_op_end = 0,
+ std_video_h264_mem_mgmt_control_op_unmark_short_term = 1,
+ std_video_h264_mem_mgmt_control_op_unmark_long_term = 2,
+ std_video_h264_mem_mgmt_control_op_mark_long_term = 3,
+ std_video_h264_mem_mgmt_control_op_set_max_long_term_index = 4,
+ std_video_h264_mem_mgmt_control_op_unmark_all = 5,
+ std_video_h264_mem_mgmt_control_op_mark_current_as_long_term = 6,
+ std_video_h264_mem_mgmt_control_op_invalid = 0x7FFFFFFF
+} StdVideoH264MemMgmtControlOp;
+
+typedef enum StdVideoH264CabacInitIdc {
+ std_video_h264_cabac_init_idc_0 = 0,
+ std_video_h264_cabac_init_idc_1 = 1,
+ std_video_h264_cabac_init_idc_2 = 2,
+ std_video_h264_cabac_init_idc_invalid = 0x7FFFFFFF
+} StdVideoH264CabacInitIdc;
+
+typedef enum StdVideoH264DisableDeblockingFilterIdc {
+ std_video_h264_disable_deblocking_filter_idc_disabled = 0,
+ std_video_h264_disable_deblocking_filter_idc_enabled = 1,
+ std_video_h264_disable_deblocking_filter_idc_partial = 2,
+ std_video_h264_disable_deblocking_filter_idc_invalid = 0x7FFFFFFF
+} StdVideoH264DisableDeblockingFilterIdc;
+
+typedef enum StdVideoH264PictureType {
+ std_video_h264_picture_type_i = 0,
+ std_video_h264_picture_type_p = 1,
+ std_video_h264_picture_type_b = 2,
+ std_video_h264_picture_type_invalid = 0x7FFFFFFF
+} StdVideoH264PictureType;
+
+typedef enum StdVideoH264SliceType {
+ std_video_h264_slice_type_i = 0,
+ std_video_h264_slice_type_p = 1,
+ std_video_h264_slice_type_b = 2,
+ std_video_h264_slice_type_invalid = 0x7FFFFFFF
+} StdVideoH264SliceType;
+
+typedef enum StdVideoH264NonVclNaluType {
+ std_video_h264_non_vcl_nalu_type_sps = 0,
+ std_video_h264_non_vcl_nalu_type_pps = 1,
+ std_video_h264_non_vcl_nalu_type_aud = 2,
+ std_video_h264_non_vcl_nalu_type_prefix = 3,
+ std_video_h264_non_vcl_nalu_type_end_of_sequence = 4,
+ std_video_h264_non_vcl_nalu_type_end_of_stream = 5,
+ std_video_h264_non_vcl_nalu_type_precoded = 6,
+ std_video_h264_non_vcl_nalu_type_invalid = 0x7FFFFFFF
+} StdVideoH264NonVclNaluType;
+
+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 StdVideoH264HrdParameters {
+ uint8_t cpb_cnt_minus1;
+ uint8_t bit_rate_scale;
+ uint8_t cpb_size_scale;
+ uint32_t bit_rate_value_minus1[32];
+ uint32_t cpb_size_value_minus1[32];
+ uint8_t cbr_flag[32];
+ 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 StdVideoH264SequenceParameterSetVui {
+ StdVideoH264AspectRatioIdc aspect_ratio_idc;
+ uint16_t sar_width;
+ uint16_t sar_height;
+ uint8_t video_format;
+ uint8_t color_primaries;
+ uint8_t transfer_characteristics;
+ uint8_t matrix_coefficients;
+ uint32_t num_units_in_tick;
+ uint32_t time_scale;
+ StdVideoH264HrdParameters hrd_parameters;
+ uint8_t num_reorder_frames;
+ uint8_t max_dec_frame_buffering;
+ StdVideoH264SpsVuiFlags flags;
+} StdVideoH264SequenceParameterSetVui;
+
+typedef struct StdVideoH264SpsFlags {
+ uint32_t constraint_set0_flag:1;
+ uint32_t constraint_set1_flag:1;
+ uint32_t constraint_set2_flag:1;
+ uint32_t constraint_set3_flag:1;
+ uint32_t constraint_set4_flag:1;
+ uint32_t constraint_set5_flag:1;
+ uint32_t direct_8x8_inference_flag:1;
+ uint32_t mb_adaptive_frame_field_flag:1;
+ uint32_t frame_mbs_only_flag:1;
+ uint32_t delta_pic_order_always_zero_flag:1;
+ uint32_t residual_colour_transform_flag:1;
+ uint32_t gaps_in_frame_num_value_allowed_flag:1;
+ uint32_t first_picture_after_seek_flag:1; // where is this being documented?
+ uint32_t qpprime_y_zero_transform_bypass_flag:1;
+ uint32_t frame_cropping_flag:1;
+ uint32_t scaling_matrix_present_flag:1;
+ uint32_t vui_parameters_present_flag:1;
+} StdVideoH264SpsFlags;
+
+typedef struct StdVideoH264ScalingLists
+{
+ // scaling_list_present_mask has one bit for each
+ // seq_scaling_list_present_flag[i] for SPS OR
+ // pic_scaling_list_present_flag[i] for PPS,
+ // bit 0 - 5 are for each entry of ScalingList4x4
+ // bit 6 - 7 are for each entry plus 6 for ScalingList8x8
+ uint8_t scaling_list_present_mask;
+ // use_default_scaling_matrix_mask has one bit for each
+ // UseDefaultScalingMatrix4x4Flag[ i ] and
+ // UseDefaultScalingMatrix8x8Flag[ i - 6 ] for SPS OR PPS
+ // bit 0 - 5 are for each entry of ScalingList4x4
+ // bit 6 - 7 are for each entry plus 6 for ScalingList8x8
+ uint8_t use_default_scaling_matrix_mask;
+ uint8_t ScalingList4x4[6][16];
+ uint8_t ScalingList8x8[2][64];
+} StdVideoH264ScalingLists;
+
+typedef struct StdVideoH264SequenceParameterSet
+{
+ StdVideoH264ProfileIdc profile_idc;
+ StdVideoH264Level level_idc;
+ uint8_t seq_parameter_set_id;
+ StdVideoH264ChromaFormatIdc chroma_format_idc;
+ uint8_t bit_depth_luma_minus8;
+ uint8_t bit_depth_chroma_minus8;
+ uint8_t log2_max_frame_num_minus4;
+ StdVideoH264PocType pic_order_cnt_type;
+ uint8_t log2_max_pic_order_cnt_lsb_minus4;
+ int32_t offset_for_non_ref_pic;
+ int32_t offset_for_top_to_bottom_field;
+ uint8_t num_ref_frames_in_pic_order_cnt_cycle;
+ uint8_t max_num_ref_frames;
+ 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;
+ StdVideoH264SpsFlags flags;
+ int32_t offset_for_ref_frame[255]; // The number of valid values are defined by the num_ref_frames_in_pic_order_cnt_cycle
+ StdVideoH264ScalingLists* pScalingLists; // Must be a valid pointer if scaling_matrix_present_flag is set
+ StdVideoH264SequenceParameterSetVui* pSequenceParameterSetVui; // Must be a valid pointer if StdVideoH264SpsFlags:vui_parameters_present_flag is set
+} StdVideoH264SequenceParameterSet;
+
+typedef struct StdVideoH264PpsFlags {
+ uint32_t transform_8x8_mode_flag:1;
+ uint32_t redundant_pic_cnt_present_flag:1;
+ uint32_t constrained_intra_pred_flag:1;
+ uint32_t deblocking_filter_control_present_flag:1;
+ uint32_t weighted_bipred_idc_flag:1;
+ uint32_t weighted_pred_flag:1;
+ uint32_t pic_order_present_flag:1;
+ uint32_t entropy_coding_mode_flag:1;
+ uint32_t scaling_matrix_present_flag:1;
+} StdVideoH264PpsFlags;
+
+typedef struct StdVideoH264PictureParameterSet
+{
+ 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;
+ StdVideoH264PpsFlags flags;
+ StdVideoH264ScalingLists* pScalingLists; // Must be a valid pointer if StdVideoH264PpsFlags::scaling_matrix_present_flag is set.
+} StdVideoH264PictureParameterSet;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif // VULKAN_VIDEO_CODEC_H264STD_H_
diff --git a/thirdparty/vulkan/include/vk_video/vulkan_video_codec_h264std_decode.h b/thirdparty/vulkan/include/vk_video/vulkan_video_codec_h264std_decode.h
new file mode 100644
index 0000000000..2b4fc64699
--- /dev/null
+++ b/thirdparty/vulkan/include/vk_video/vulkan_video_codec_h264std_decode.h
@@ -0,0 +1,87 @@
+/*
+** Copyright (c) 2019-2020 The Khronos Group Inc.
+**
+** SPDX-License-Identifier: Apache-2.0
+*/
+
+#ifndef VULKAN_VIDEO_CODEC_H264STD_DECODE_H_
+#define VULKAN_VIDEO_CODEC_H264STD_DECODE_H_ 1
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#include "vk_video/vulkan_video_codec_h264std.h"
+
+// *************************************************
+// Video H.264 Decode related parameters:
+// *************************************************
+
+typedef struct StdVideoDecodeH264PictureInfoFlags {
+ uint32_t field_pic_flag:1; // Is field picture
+ uint32_t is_intra:1; // Is intra picture
+ uint32_t bottom_field_flag:1; // bottom (true) or top (false) field if field_pic_flag is set.
+ uint32_t is_reference:1; // This only applies to picture info, and not to the DPB lists.
+ uint32_t complementary_field_pair:1; // complementary field pair, complementary non-reference field pair, complementary reference field pair
+} StdVideoDecodeH264PictureInfoFlags;
+
+typedef struct StdVideoDecodeH264PictureInfo {
+ uint8_t seq_parameter_set_id; // Selecting SPS from the Picture Parameters
+ uint8_t pic_parameter_set_id; // Selecting PPS from the Picture Parameters and the SPS
+ uint16_t reserved; // for structure members 32-bit packing/alignment
+ uint16_t frame_num; // 7.4.3 Slice header semantics
+ uint16_t idr_pic_id; // 7.4.3 Slice header semantics
+ // PicOrderCnt is based on TopFieldOrderCnt and BottomFieldOrderCnt. See 8.2.1 Decoding process for picture order count type 0 - 2
+ int32_t PicOrderCnt[2]; // TopFieldOrderCnt and BottomFieldOrderCnt fields.
+ StdVideoDecodeH264PictureInfoFlags flags;
+} StdVideoDecodeH264PictureInfo;
+
+typedef struct StdVideoDecodeH264ReferenceInfoFlags {
+ uint32_t top_field_flag:1; // Reference is used for top field reference.
+ uint32_t bottom_field_flag:1; // Reference is used for bottom field reference.
+ uint32_t is_long_term:1; // this is a long term reference
+ uint32_t is_non_existing:1; // Must be handled in accordance with 8.2.5.2: Decoding process for gaps in frame_num
+} StdVideoDecodeH264ReferenceInfoFlags;
+
+typedef struct StdVideoDecodeH264ReferenceInfo {
+ // FrameNum = is_long_term ? long_term_frame_idx : frame_num
+ uint16_t FrameNum; // 7.4.3.3 Decoded reference picture marking semantics
+ uint16_t reserved; // for structure members 32-bit packing/alignment
+ int32_t PicOrderCnt[2]; // TopFieldOrderCnt and BottomFieldOrderCnt fields.
+ StdVideoDecodeH264ReferenceInfoFlags flags;
+} StdVideoDecodeH264ReferenceInfo;
+
+typedef struct StdVideoDecodeH264MvcElementFlags {
+ uint32_t non_idr:1;
+ uint32_t anchor_pic:1;
+ uint32_t inter_view:1;
+} StdVideoDecodeH264MvcElementFlags;
+
+typedef struct StdVideoDecodeH264MvcElement {
+ StdVideoDecodeH264MvcElementFlags flags;
+ uint16_t viewOrderIndex;
+ uint16_t viewId;
+ uint16_t temporalId; // move out?
+ uint16_t priorityId; // move out?
+ uint16_t numOfAnchorRefsInL0;
+ uint16_t viewIdOfAnchorRefsInL0[15];
+ uint16_t numOfAnchorRefsInL1;
+ uint16_t viewIdOfAnchorRefsInL1[15];
+ uint16_t numOfNonAnchorRefsInL0;
+ uint16_t viewIdOfNonAnchorRefsInL0[15];
+ uint16_t numOfNonAnchorRefsInL1;
+ uint16_t viewIdOfNonAnchorRefsInL1[15];
+} StdVideoDecodeH264MvcElement;
+
+typedef struct StdVideoDecodeH264Mvc {
+ uint32_t viewId0;
+ uint32_t mvcElementCount;
+ StdVideoDecodeH264MvcElement* pMvcElements;
+} StdVideoDecodeH264Mvc;
+
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif // VULKAN_VIDEO_CODEC_H264STD_DECODE_H_
diff --git a/thirdparty/vulkan/include/vk_video/vulkan_video_codec_h264std_encode.h b/thirdparty/vulkan/include/vk_video/vulkan_video_codec_h264std_encode.h
new file mode 100644
index 0000000000..718456203a
--- /dev/null
+++ b/thirdparty/vulkan/include/vk_video/vulkan_video_codec_h264std_encode.h
@@ -0,0 +1,94 @@
+/*
+** Copyright (c) 2019-2021 The Khronos Group Inc.
+**
+** SPDX-License-Identifier: Apache-2.0
+*/
+
+#ifndef VULKAN_VIDEO_CODEC_H264STD_ENCODE_H_
+#define VULKAN_VIDEO_CODEC_H264STD_ENCODE_H_ 1
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#include "vk_video/vulkan_video_codec_h264std.h"
+
+// *************************************************
+// Video H.264 Encode related parameters:
+// *************************************************
+
+typedef struct StdVideoEncodeH264SliceHeaderFlags {
+ uint32_t idr_flag:1;
+ uint32_t is_reference_flag:1;
+ uint32_t num_ref_idx_active_override_flag: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 no_prior_references_available_flag:1;
+} StdVideoEncodeH264SliceHeaderFlags;
+
+typedef struct StdVideoEncodeH264PictureInfoFlags {
+ uint32_t idr_flag:1;
+ uint32_t is_reference_flag:1;
+ uint32_t long_term_reference_flag:1;
+} StdVideoEncodeH264PictureInfoFlags;
+
+typedef struct StdVideoEncodeH264RefMgmtFlags {
+ uint32_t ref_pic_list_modification_l0_flag:1;
+ uint32_t ref_pic_list_modification_l1_flag:1;
+} StdVideoEncodeH264RefMgmtFlags;
+
+typedef struct StdVideoEncodeH264RefListModEntry {
+ StdVideoH264ModificationOfPicNumsIdc modification_of_pic_nums_idc;
+ uint16_t abs_diff_pic_num_minus1;
+ uint16_t long_term_pic_num;
+} StdVideoEncodeH264RefListModEntry;
+
+typedef struct StdVideoEncodeH264RefPicMarkingEntry {
+ StdVideoH264MemMgmtControlOp operation;
+ uint16_t difference_of_pic_nums_minus1;
+ uint16_t long_term_pic_num;
+ uint16_t long_term_frame_idx;
+ uint16_t max_long_term_frame_idx_plus1;
+} StdVideoEncodeH264RefPicMarkingEntry;
+
+typedef struct StdVideoEncodeH264RefMemMgmtCtrlOperations {
+ StdVideoEncodeH264RefMgmtFlags flags;
+ uint8_t refList0ModOpCount;
+ StdVideoEncodeH264RefListModEntry* pRefList0ModOperations;
+ uint8_t refList1ModOpCount;
+ StdVideoEncodeH264RefListModEntry* pRefList1ModOperations;
+ uint8_t refPicMarkingOpCount;
+ StdVideoEncodeH264RefPicMarkingEntry* pRefPicMarkingOperations;
+} StdVideoEncodeH264RefMemMgmtCtrlOperations;
+
+typedef struct StdVideoEncodeH264PictureInfo {
+ StdVideoEncodeH264PictureInfoFlags flags;
+ StdVideoH264PictureType pictureType;
+ uint32_t frameNum;
+ uint32_t pictureOrderCount;
+ uint16_t long_term_pic_num;
+ uint16_t long_term_frame_idx;
+} StdVideoEncodeH264PictureInfo;
+
+typedef struct StdVideoEncodeH264SliceHeader {
+ StdVideoEncodeH264SliceHeaderFlags flags;
+ StdVideoH264SliceType slice_type;
+ uint8_t seq_parameter_set_id;
+ uint8_t pic_parameter_set_id;
+ uint16_t idr_pic_id;
+ uint8_t num_ref_idx_l0_active_minus1;
+ uint8_t num_ref_idx_l1_active_minus1;
+ StdVideoH264CabacInitIdc cabac_init_idc;
+ StdVideoH264DisableDeblockingFilterIdc disable_deblocking_filter_idc;
+ int8_t slice_alpha_c0_offset_div2;
+ int8_t slice_beta_offset_div2;
+ StdVideoEncodeH264RefMemMgmtCtrlOperations* pMemMgmtCtrlOperations;
+} StdVideoEncodeH264SliceHeader;
+
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif // VULKAN_VIDEO_CODEC_H264STD_ENCODE_H_
diff --git a/thirdparty/vulkan/include/vk_video/vulkan_video_codec_h265std.h b/thirdparty/vulkan/include/vk_video/vulkan_video_codec_h265std.h
new file mode 100644
index 0000000000..185b550412
--- /dev/null
+++ b/thirdparty/vulkan/include/vk_video/vulkan_video_codec_h265std.h
@@ -0,0 +1,341 @@
+/*
+** Copyright (c) 2019-2021 The Khronos Group Inc.
+**
+** SPDX-License-Identifier: Apache-2.0
+*/
+
+#ifndef VULKAN_VIDEO_CODEC_H265STD_H_
+#define VULKAN_VIDEO_CODEC_H265STD_H_ 1
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#include "vk_video/vulkan_video_codecs_common.h"
+
+// Vulkan 0.5 version number WIP
+#define VK_STD_VULKAN_VIDEO_CODEC_H265_API_VERSION_0_5 VK_MAKE_VIDEO_STD_VERSION(0, 5, 0) // Patch version should always be set to 0
+
+// Format must be in the form XX.XX where the first two digits are the major and the second two, the minor.
+#define VK_STD_VULKAN_VIDEO_CODEC_H265_SPEC_VERSION VK_STD_VULKAN_VIDEO_CODEC_H265_API_VERSION_0_5
+#define VK_STD_VULKAN_VIDEO_CODEC_H265_EXTENSION_NAME "VK_STD_vulkan_video_codec_h265"
+
+typedef enum StdVideoH265ChromaFormatIdc {
+ std_video_h265_chroma_format_idc_monochrome = 0,
+ std_video_h265_chroma_format_idc_420 = 1,
+ std_video_h265_chroma_format_idc_422 = 2,
+ std_video_h265_chroma_format_idc_444 = 3,
+} StdVideoH265ChromaFormatIdc;
+
+typedef enum StdVideoH265ProfileIdc {
+ std_video_h265_profile_idc_main = 1,
+ std_video_h265_profile_idc_main_10 = 2,
+ std_video_h265_profile_idc_main_still_picture = 3,
+ std_video_h265_profile_idc_format_range_extensions = 4,
+ std_video_h265_profile_idc_scc_extensions = 9,
+ std_video_h265_profile_idc_invalid = 0x7FFFFFFF
+} StdVideoH265ProfileIdc;
+
+typedef enum StdVideoH265Level {
+ std_video_h265_level_1_0 = 0,
+ std_video_h265_level_2_0 = 1,
+ std_video_h265_level_2_1 = 2,
+ std_video_h265_level_3_0 = 3,
+ std_video_h265_level_3_1 = 4,
+ std_video_h265_level_4_0 = 5,
+ std_video_h265_level_4_1 = 6,
+ std_video_h265_level_5_0 = 7,
+ std_video_h265_level_5_1 = 8,
+ std_video_h265_level_5_2 = 9,
+ std_video_h265_level_6_0 = 10,
+ std_video_h265_level_6_1 = 11,
+ std_video_h265_level_6_2 = 12,
+ std_video_h265_level_invalid = 0x7FFFFFFF
+} StdVideoH265Level;
+
+
+typedef struct StdVideoH265DecPicBufMgr
+{
+ uint32_t max_latency_increase_plus1[7];
+ uint8_t max_dec_pic_buffering_minus1[7];
+ uint8_t max_num_reorder_pics[7];
+} StdVideoH265DecPicBufMgr;
+
+typedef struct StdVideoH265SubLayerHrdParameters {
+ uint32_t bit_rate_value_minus1[32];
+ uint32_t cpb_size_value_minus1[32];
+ uint32_t cpb_size_du_value_minus1[32];
+ uint32_t bit_rate_du_value_minus1[32];
+ uint32_t cbr_flag; // each bit represents a range of CpbCounts (bit 0 - cpb_cnt_minus1) per sub-layer
+} StdVideoH265SubLayerHrdParameters;
+
+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;
+ uint8_t fixed_pic_rate_general_flag; // each bit represents a sublayer, bit 0 - vps_max_sub_layers_minus1
+ uint8_t fixed_pic_rate_within_cvs_flag; // each bit represents a sublayer, bit 0 - vps_max_sub_layers_minus1
+ uint8_t low_delay_hrd_flag; // each bit represents a sublayer, bit 0 - vps_max_sub_layers_minus1
+} StdVideoH265HrdFlags;
+
+typedef struct StdVideoH265HrdParameters {
+ 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[7];
+ uint16_t elemental_duration_in_tc_minus1[7];
+ StdVideoH265SubLayerHrdParameters* SubLayerHrdParametersNal[7];
+ StdVideoH265SubLayerHrdParameters* SubLayerHrdParametersVcl[7];
+ StdVideoH265HrdFlags flags;
+} StdVideoH265HrdParameters;
+
+typedef struct StdVideoH265VpsFlags {
+ uint32_t vps_temporal_id_nesting_flag : 1;
+ uint32_t vps_sub_layer_ordering_info_present_flag : 1;
+ uint32_t vps_timing_info_present_flag : 1;
+ uint32_t vps_poc_proportional_to_timing_flag : 1;
+} StdVideoH265VpsFlags;
+
+typedef struct StdVideoH265VideoParameterSet
+{
+ uint8_t vps_video_parameter_set_id;
+ uint8_t vps_max_sub_layers_minus1;
+ uint32_t vps_num_units_in_tick;
+ uint32_t vps_time_scale;
+ uint32_t vps_num_ticks_poc_diff_one_minus1;
+ StdVideoH265DecPicBufMgr* pDecPicBufMgr;
+ StdVideoH265HrdParameters* hrd_parameters;
+ StdVideoH265VpsFlags flags;
+} StdVideoH265VideoParameterSet;
+
+typedef struct StdVideoH265ScalingLists
+{
+ uint8_t ScalingList4x4[6][16]; // ScalingList[ 0 ][ MatrixID ][ i ] (sizeID = 0)
+ uint8_t ScalingList8x8[6][64]; // ScalingList[ 1 ][ MatrixID ][ i ] (sizeID = 1)
+ uint8_t ScalingList16x16[6][64]; // ScalingList[ 2 ][ MatrixID ][ i ] (sizeID = 2)
+ uint8_t ScalingList32x32[2][64]; // ScalingList[ 3 ][ MatrixID ][ i ] (sizeID = 3)
+ uint8_t ScalingListDCCoef16x16[6]; // scaling_list_dc_coef_minus8[ sizeID - 2 ][ matrixID ] + 8, sizeID = 2
+ uint8_t ScalingListDCCoef32x32[2]; // scaling_list_dc_coef_minus8[ sizeID - 2 ][ matrixID ] + 8. sizeID = 3
+} StdVideoH265ScalingLists;
+
+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 StdVideoH265SequenceParameterSetVui {
+ uint8_t 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;
+ 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;
+ StdVideoH265HrdParameters* hrd_parameters;
+ uint16_t min_spatial_segmentation_idc;
+ 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;
+ StdVideoH265SpsVuiFlags flags;
+} StdVideoH265SequenceParameterSetVui;
+
+typedef struct StdVideoH265PredictorPaletteEntries
+{
+ uint16_t PredictorPaletteEntries[3][128];
+} StdVideoH265PredictorPaletteEntries;
+
+
+typedef struct StdVideoH265SpsFlags {
+ uint32_t sps_temporal_id_nesting_flag : 1;
+ uint32_t separate_colour_plane_flag : 1;
+ uint32_t scaling_list_enabled_flag : 1;
+ uint32_t sps_scaling_list_data_present_flag : 1;
+ uint32_t amp_enabled_flag : 1;
+ uint32_t sample_adaptive_offset_enabled_flag : 1;
+ uint32_t pcm_enabled_flag : 1;
+ uint32_t pcm_loop_filter_disabled_flag : 1;
+ uint32_t long_term_ref_pics_present_flag : 1;
+ uint32_t sps_temporal_mvp_enabled_flag : 1;
+ uint32_t strong_intra_smoothing_enabled_flag : 1;
+ uint32_t vui_parameters_present_flag : 1;
+ uint32_t sps_extension_present_flag : 1;
+ uint32_t sps_range_extension_flag : 1;
+
+ // extension SPS flags, valid when std_video_h265_profile_idc_format_range_extensions is set
+ uint32_t transform_skip_rotation_enabled_flag : 1;
+ uint32_t transform_skip_context_enabled_flag : 1;
+ uint32_t implicit_rdpcm_enabled_flag : 1;
+ uint32_t explicit_rdpcm_enabled_flag : 1;
+ uint32_t extended_precision_processing_flag : 1;
+ uint32_t intra_smoothing_disabled_flag : 1;
+ uint32_t high_precision_offsets_enabled_flag : 1;
+ uint32_t persistent_rice_adaptation_enabled_flag : 1;
+ uint32_t cabac_bypass_alignment_enabled_flag : 1;
+
+ // extension SPS flags, valid when std_video_h265_profile_idc_scc_extensions is set
+ uint32_t sps_curr_pic_ref_enabled_flag : 1;
+ uint32_t palette_mode_enabled_flag : 1;
+ uint32_t sps_palette_predictor_initializer_present_flag : 1;
+ uint32_t intra_boundary_filtering_disabled_flag : 1;
+} StdVideoH265SpsFlags;
+
+typedef struct StdVideoH265SequenceParameterSet
+{
+ StdVideoH265ProfileIdc profile_idc;
+ StdVideoH265Level level_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 chroma_format_idc;
+ uint8_t bit_depth_luma_minus8;
+ uint8_t bit_depth_chroma_minus8;
+ uint8_t log2_max_pic_order_cnt_lsb_minus4;
+ uint8_t sps_max_dec_pic_buffering_minus1;
+ 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;
+ uint32_t conf_win_left_offset;
+ uint32_t conf_win_right_offset;
+ uint32_t conf_win_top_offset;
+ uint32_t conf_win_bottom_offset;
+ StdVideoH265DecPicBufMgr* pDecPicBufMgr;
+ StdVideoH265SpsFlags flags;
+ StdVideoH265ScalingLists* pScalingLists; // Must be a valid pointer if sps_scaling_list_data_present_flag is set
+ StdVideoH265SequenceParameterSetVui* pSequenceParameterSetVui; // Must be a valid pointer if StdVideoH265SpsFlags:vui_parameters_present_flag is set palette_max_size;
+
+ // extension SPS flags, valid when std_video_h265_profile_idc_scc_extensions is set
+ 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_initializer_minus1;
+ StdVideoH265PredictorPaletteEntries* pPredictorPaletteEntries; // Must be a valid pointer if sps_palette_predictor_initializer_present_flag is set
+} StdVideoH265SequenceParameterSet;
+
+
+typedef struct StdVideoH265PpsFlags {
+ uint32_t dependent_slice_segments_enabled_flag : 1;
+ uint32_t output_flag_present_flag : 1;
+ uint32_t sign_data_hiding_enabled_flag : 1;
+ uint32_t cabac_init_present_flag : 1;
+ uint32_t constrained_intra_pred_flag : 1;
+ uint32_t transform_skip_enabled_flag : 1;
+ uint32_t cu_qp_delta_enabled_flag : 1;
+ uint32_t pps_slice_chroma_qp_offsets_present_flag : 1;
+ uint32_t weighted_pred_flag : 1;
+ uint32_t weighted_bipred_flag : 1;
+ uint32_t transquant_bypass_enabled_flag : 1;
+ uint32_t tiles_enabled_flag : 1;
+ uint32_t entropy_coding_sync_enabled_flag : 1;
+ uint32_t uniform_spacing_flag : 1;
+ uint32_t loop_filter_across_tiles_enabled_flag : 1;
+ uint32_t pps_loop_filter_across_slices_enabled_flag : 1;
+ uint32_t deblocking_filter_control_present_flag : 1;
+ uint32_t deblocking_filter_override_enabled_flag : 1;
+ uint32_t pps_deblocking_filter_disabled_flag : 1;
+ uint32_t pps_scaling_list_data_present_flag : 1;
+ uint32_t lists_modification_present_flag : 1;
+ uint32_t slice_segment_header_extension_present_flag : 1;
+ uint32_t pps_extension_present_flag : 1;
+
+ // extension PPS flags, valid when std_video_h265_profile_idc_format_range_extensions is set
+ uint32_t cross_component_prediction_enabled_flag : 1;
+ uint32_t chroma_qp_offset_list_enabled_flag : 1;
+
+ // extension PPS flags, valid when std_video_h265_profile_idc_scc_extensions is set
+ uint32_t pps_curr_pic_ref_enabled_flag : 1;
+ uint32_t residual_adaptive_colour_transform_enabled_flag : 1;
+ uint32_t pps_slice_act_qp_offsets_present_flag : 1;
+ uint32_t pps_palette_predictor_initializer_present_flag : 1;
+ uint32_t monochrome_palette_flag : 1;
+ uint32_t pps_range_extension_flag : 1;
+} StdVideoH265PpsFlags;
+
+typedef struct StdVideoH265PictureParameterSet
+{
+ uint8_t pps_pic_parameter_set_id;
+ uint8_t pps_seq_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;
+ uint8_t num_tile_columns_minus1;
+ uint8_t num_tile_rows_minus1;
+ uint16_t column_width_minus1[19];
+ uint16_t row_height_minus1[21];
+ int8_t pps_beta_offset_div2;
+ int8_t pps_tc_offset_div2;
+ uint8_t log2_parallel_merge_level_minus2;
+ StdVideoH265PpsFlags flags;
+ StdVideoH265ScalingLists* pScalingLists; // Must be a valid pointer if pps_scaling_list_data_present_flag is set
+
+ // extension PPS, valid when std_video_h265_profile_idc_format_range_extensions is set
+ 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[6];
+ int8_t cr_qp_offset_list[6];
+ uint8_t log2_sao_offset_scale_luma;
+ uint8_t log2_sao_offset_scale_chroma;
+
+ // extension PPS, valid when std_video_h265_profile_idc_scc_extensions is set
+ int8_t pps_act_y_qp_offset_plus5;
+ int8_t pps_act_cb_qp_offset_plus5;
+ int8_t pps_act_cr_qp_offset_plus5;
+ uint8_t pps_num_palette_predictor_initializer;
+ uint8_t luma_bit_depth_entry_minus8;
+ uint8_t chroma_bit_depth_entry_minus8;
+ StdVideoH265PredictorPaletteEntries* pPredictorPaletteEntries; // Must be a valid pointer if pps_palette_predictor_initializer_present_flag is set
+} StdVideoH265PictureParameterSet;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif // VULKAN_VIDEO_CODEC_H265STD_H_
diff --git a/thirdparty/vulkan/include/vk_video/vulkan_video_codec_h265std_decode.h b/thirdparty/vulkan/include/vk_video/vulkan_video_codec_h265std_decode.h
new file mode 100644
index 0000000000..4be8b5f1c8
--- /dev/null
+++ b/thirdparty/vulkan/include/vk_video/vulkan_video_codec_h265std_decode.h
@@ -0,0 +1,59 @@
+/*
+** Copyright (c) 2019-2021 The Khronos Group Inc.
+**
+** SPDX-License-Identifier: Apache-2.0
+*/
+
+#ifndef VULKAN_VIDEO_CODEC_H265STD_DECODE_H_
+#define VULKAN_VIDEO_CODEC_H265STD_DECODE_H_ 1
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#include "vk_video/vulkan_video_codec_h265std.h"
+
+// *************************************************
+// Video h265 Decode related parameters:
+// *************************************************
+
+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 StdVideoDecodeH265PictureInfo {
+ uint8_t vps_video_parameter_set_id;
+ uint8_t sps_seq_parameter_set_id;
+ uint8_t pps_pic_parameter_set_id;
+ uint8_t num_short_term_ref_pic_sets;
+ int32_t PicOrderCntVal;
+ uint16_t NumBitsForSTRefPicSetInSlice; // number of bits used in st_ref_pic_set()
+ //when short_term_ref_pic_set_sps_flag is 0; otherwise set to 0.
+ uint8_t NumDeltaPocsOfRefRpsIdx; // NumDeltaPocs[ RefRpsIdx ] when short_term_ref_pic_set_sps_flag = 1, otherwise 0
+ uint8_t RefPicSetStCurrBefore[8]; // slotIndex as used in VkVideoReferenceSlotKHR structures representing
+ //pReferenceSlots in VkVideoDecodeInfoKHR, 0xff for invalid slotIndex
+ uint8_t RefPicSetStCurrAfter[8]; // slotIndex as used in VkVideoReferenceSlotKHR structures representing
+ //pReferenceSlots in VkVideoDecodeInfoKHR, 0xff for invalid slotIndex
+ uint8_t RefPicSetLtCurr[8]; // slotIndex as used in VkVideoReferenceSlotKHR structures representing
+ //pReferenceSlots in VkVideoDecodeInfoKHR, 0xff for invalid slotIndex
+ StdVideoDecodeH265PictureInfoFlags flags;
+} StdVideoDecodeH265PictureInfo;
+
+typedef struct StdVideoDecodeH265ReferenceInfoFlags {
+ uint32_t is_long_term : 1;
+ uint32_t is_non_existing : 1;
+} StdVideoDecodeH265ReferenceInfoFlags;
+
+typedef struct StdVideoDecodeH265ReferenceInfo {
+ int32_t PicOrderCntVal;
+ StdVideoDecodeH265ReferenceInfoFlags flags;
+} StdVideoDecodeH265ReferenceInfo;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif // VULKAN_VIDEO_CODEC_H265STD_DECODE_H_
diff --git a/thirdparty/vulkan/include/vk_video/vulkan_video_codecs_common.h b/thirdparty/vulkan/include/vk_video/vulkan_video_codecs_common.h
new file mode 100644
index 0000000000..8cc227a636
--- /dev/null
+++ b/thirdparty/vulkan/include/vk_video/vulkan_video_codecs_common.h
@@ -0,0 +1,21 @@
+/*
+** Copyright (c) 2019-2021 The Khronos Group Inc.
+**
+** SPDX-License-Identifier: Apache-2.0
+*/
+
+#ifndef VULKAN_VIDEO_CODEC_COMMON_H_
+#define VULKAN_VIDEO_CODEC_COMMON_H_ 1
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#define VK_MAKE_VIDEO_STD_VERSION(major, minor, patch) \
+ ((((uint32_t)(major)) << 22) | (((uint32_t)(minor)) << 12) | ((uint32_t)(patch)))
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif // VULKAN_VIDEO_CODEC_COMMON_H_
diff --git a/thirdparty/vulkan/include/vulkan/vk_icd.h b/thirdparty/vulkan/include/vulkan/vk_icd.h
index 5e29ef5575..ae006d06d1 100644
--- a/thirdparty/vulkan/include/vulkan/vk_icd.h
+++ b/thirdparty/vulkan/include/vulkan/vk_icd.h
@@ -122,6 +122,7 @@ typedef enum {
VK_ICD_WSI_PLATFORM_DIRECTFB,
VK_ICD_WSI_PLATFORM_VI,
VK_ICD_WSI_PLATFORM_GGP,
+ VK_ICD_WSI_PLATFORM_SCREEN,
} VkIcdWsiPlatform;
typedef struct {
@@ -233,4 +234,12 @@ typedef struct {
} VkIcdSurfaceVi;
#endif // VK_USE_PLATFORM_VI_NN
+#ifdef VK_USE_PLATFORM_SCREEN_QNX
+typedef struct {
+ VkIcdSurfaceBase base;
+ struct _screen_context *context;
+ struct _screen_window *window;
+} VkIcdSurfaceScreen;
+#endif // VK_USE_PLATFORM_SCREEN_QNX
+
#endif // VKICD_H
diff --git a/thirdparty/vulkan/include/vulkan/vk_platform.h b/thirdparty/vulkan/include/vulkan/vk_platform.h
index 048322d93b..18b913abc6 100644
--- a/thirdparty/vulkan/include/vulkan/vk_platform.h
+++ b/thirdparty/vulkan/include/vulkan/vk_platform.h
@@ -2,7 +2,7 @@
// File: vk_platform.h
//
/*
-** Copyright (c) 2014-2020 The Khronos Group Inc.
+** Copyright 2014-2021 The Khronos Group Inc.
**
** SPDX-License-Identifier: Apache-2.0
*/
@@ -58,7 +58,9 @@ extern "C"
#define VKAPI_PTR
#endif
-#include <stddef.h>
+#if !defined(VK_NO_STDDEF_H)
+ #include <stddef.h>
+#endif // !defined(VK_NO_STDDEF_H)
#if !defined(VK_NO_STDINT_H)
#if defined(_MSC_VER) && (_MSC_VER < 1600)
diff --git a/thirdparty/vulkan/include/vulkan/vulkan.h b/thirdparty/vulkan/include/vulkan/vulkan.h
index b7716ec8ea..3f7cdba584 100644
--- a/thirdparty/vulkan/include/vulkan/vulkan.h
+++ b/thirdparty/vulkan/include/vulkan/vulkan.h
@@ -2,7 +2,7 @@
#define VULKAN_H_ 1
/*
-** Copyright (c) 2015-2020 The Khronos Group Inc.
+** Copyright 2015-2021 The Khronos Group Inc.
**
** SPDX-License-Identifier: Apache-2.0
*/
@@ -80,6 +80,11 @@
#endif
+#ifdef VK_USE_PLATFORM_SCREEN_QNX
+#include <screen/screen.h>
+#include "vulkan_screen.h"
+#endif
+
#ifdef VK_ENABLE_BETA_EXTENSIONS
#include "vulkan_beta.h"
#endif
diff --git a/thirdparty/vulkan/include/vulkan/vulkan.hpp b/thirdparty/vulkan/include/vulkan/vulkan.hpp
index 8218a3617c..d3bc127203 100644
--- a/thirdparty/vulkan/include/vulkan/vulkan.hpp
+++ b/thirdparty/vulkan/include/vulkan/vulkan.hpp
@@ -1,7 +1,7 @@
-// Copyright (c) 2015-2020 The Khronos Group Inc.
-//
+// Copyright 2015-2021 The Khronos Group Inc.
+//
// SPDX-License-Identifier: Apache-2.0 OR MIT
-//
+//
// This header is generated from the Khronos Vulkan XML API Registry.
@@ -41,33 +41,33 @@
#include <vulkan/vulkan.h>
#if 17 <= VULKAN_HPP_CPP_VERSION
-#include <string_view>
+# include <string_view>
#endif
-#if defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-# if !defined(VULKAN_HPP_NO_SMART_HANDLE)
-# define VULKAN_HPP_NO_SMART_HANDLE
-# endif
+#if defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+# if !defined( VULKAN_HPP_NO_SMART_HANDLE )
+# define VULKAN_HPP_NO_SMART_HANDLE
+# endif
#else
-# include <memory>
-# include <vector>
+# include <memory>
+# include <vector>
#endif
-#if !defined(VULKAN_HPP_ASSERT)
-# include <cassert>
-# define VULKAN_HPP_ASSERT assert
+#if !defined( VULKAN_HPP_ASSERT )
+# include <cassert>
+# define VULKAN_HPP_ASSERT assert
#endif
-#if !defined(VULKAN_HPP_ASSERT_ON_RESULT)
-# define VULKAN_HPP_ASSERT_ON_RESULT VULKAN_HPP_ASSERT
+#if !defined( VULKAN_HPP_ASSERT_ON_RESULT )
+# define VULKAN_HPP_ASSERT_ON_RESULT VULKAN_HPP_ASSERT
#endif
-#if !defined(VULKAN_HPP_ENABLE_DYNAMIC_LOADER_TOOL)
-# define VULKAN_HPP_ENABLE_DYNAMIC_LOADER_TOOL 1
+#if !defined( VULKAN_HPP_ENABLE_DYNAMIC_LOADER_TOOL )
+# define VULKAN_HPP_ENABLE_DYNAMIC_LOADER_TOOL 1
#endif
#if VULKAN_HPP_ENABLE_DYNAMIC_LOADER_TOOL == 1
-# if defined( __linux__ ) || defined( __APPLE__ )
+# if defined( __unix__ ) || defined( __APPLE__ ) || defined( __QNXNTO__ ) || defined( __Fuchsia__ )
# include <dlfcn.h>
# elif defined( _WIN32 )
typedef struct HINSTANCE__ * HINSTANCE;
@@ -82,109 +82,108 @@ extern "C" __declspec( dllimport ) FARPROC __stdcall GetProcAddress( HINSTANCE h
# endif
#endif
-#if !defined(__has_include)
-# define __has_include(x) false
+#if !defined( __has_include )
+# define __has_include( x ) false
#endif
#if ( 201711 <= __cpp_impl_three_way_comparison ) && __has_include( <compare> ) && !defined( VULKAN_HPP_NO_SPACESHIP_OPERATOR )
-# define VULKAN_HPP_HAS_SPACESHIP_OPERATOR
+# define VULKAN_HPP_HAS_SPACESHIP_OPERATOR
#endif
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
-# include <compare>
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+# include <compare>
#endif
-
-static_assert( VK_HEADER_VERSION == 162 , "Wrong VK_HEADER_VERSION!" );
+static_assert( VK_HEADER_VERSION == 182, "Wrong VK_HEADER_VERSION!" );
// 32-bit vulkan is not typesafe for handles, so don't allow copy constructors on this platform by default.
// To enable this feature on 32-bit platforms please define VULKAN_HPP_TYPESAFE_CONVERSION
-#if defined(__LP64__) || defined(_WIN64) || (defined(__x86_64__) && !defined(__ILP32__) ) || defined(_M_X64) || defined(__ia64) || defined (_M_IA64) || defined(__aarch64__) || defined(__powerpc64__)
-# if !defined( VULKAN_HPP_TYPESAFE_CONVERSION )
-# define VULKAN_HPP_TYPESAFE_CONVERSION
-# endif
+#if ( VK_USE_64_BIT_PTR_DEFINES == 1 )
+# if !defined( VULKAN_HPP_TYPESAFE_CONVERSION )
+# define VULKAN_HPP_TYPESAFE_CONVERSION
+# endif
#endif
// <tuple> includes <sys/sysmacros.h> through some other header
// this results in major(x) being resolved to gnu_dev_major(x)
// which is an expression in a constructor initializer list.
-#if defined(major)
- #undef major
+#if defined( major )
+# undef major
#endif
-#if defined(minor)
- #undef minor
+#if defined( minor )
+# undef minor
#endif
// Windows defines MemoryBarrier which is deprecated and collides
// with the VULKAN_HPP_NAMESPACE::MemoryBarrier struct.
-#if defined(MemoryBarrier)
- #undef MemoryBarrier
+#if defined( MemoryBarrier )
+# undef MemoryBarrier
#endif
-#if !defined(VULKAN_HPP_HAS_UNRESTRICTED_UNIONS)
-# if defined(__clang__)
-# if __has_feature(cxx_unrestricted_unions)
-# define VULKAN_HPP_HAS_UNRESTRICTED_UNIONS
-# endif
-# elif defined(__GNUC__)
-# define GCC_VERSION (__GNUC__ * 10000 + __GNUC_MINOR__ * 100 + __GNUC_PATCHLEVEL__)
-# if 40600 <= GCC_VERSION
-# define VULKAN_HPP_HAS_UNRESTRICTED_UNIONS
-# endif
-# elif defined(_MSC_VER)
-# if 1900 <= _MSC_VER
-# define VULKAN_HPP_HAS_UNRESTRICTED_UNIONS
+#if !defined( VULKAN_HPP_HAS_UNRESTRICTED_UNIONS )
+# if defined( __clang__ )
+# if __has_feature( cxx_unrestricted_unions )
+# define VULKAN_HPP_HAS_UNRESTRICTED_UNIONS
+# endif
+# elif defined( __GNUC__ )
+# define GCC_VERSION ( __GNUC__ * 10000 + __GNUC_MINOR__ * 100 + __GNUC_PATCHLEVEL__ )
+# if 40600 <= GCC_VERSION
+# define VULKAN_HPP_HAS_UNRESTRICTED_UNIONS
+# endif
+# elif defined( _MSC_VER )
+# if 1900 <= _MSC_VER
+# define VULKAN_HPP_HAS_UNRESTRICTED_UNIONS
+# endif
# endif
-# endif
#endif
-#if !defined(VULKAN_HPP_INLINE)
-# if defined(__clang__)
-# if __has_attribute(always_inline)
-# define VULKAN_HPP_INLINE __attribute__((always_inline)) __inline__
+#if !defined( VULKAN_HPP_INLINE )
+# if defined( __clang__ )
+# if __has_attribute( always_inline )
+# define VULKAN_HPP_INLINE __attribute__( ( always_inline ) ) __inline__
+# else
+# define VULKAN_HPP_INLINE inline
+# endif
+# elif defined( __GNUC__ )
+# define VULKAN_HPP_INLINE __attribute__( ( always_inline ) ) __inline__
+# elif defined( _MSC_VER )
+# define VULKAN_HPP_INLINE inline
# else
-# define VULKAN_HPP_INLINE inline
+# define VULKAN_HPP_INLINE inline
# endif
-# elif defined(__GNUC__)
-# define VULKAN_HPP_INLINE __attribute__((always_inline)) __inline__
-# elif defined(_MSC_VER)
-# define VULKAN_HPP_INLINE inline
-# else
-# define VULKAN_HPP_INLINE inline
-# endif
#endif
-#if defined(VULKAN_HPP_TYPESAFE_CONVERSION)
-# define VULKAN_HPP_TYPESAFE_EXPLICIT
+#if defined( VULKAN_HPP_TYPESAFE_CONVERSION )
+# define VULKAN_HPP_TYPESAFE_EXPLICIT
#else
-# define VULKAN_HPP_TYPESAFE_EXPLICIT explicit
+# define VULKAN_HPP_TYPESAFE_EXPLICIT explicit
#endif
-#if defined(__cpp_constexpr)
-# define VULKAN_HPP_CONSTEXPR constexpr
-# if __cpp_constexpr >= 201304
-# define VULKAN_HPP_CONSTEXPR_14 constexpr
-# else
-# define VULKAN_HPP_CONSTEXPR_14
-# endif
-# define VULKAN_HPP_CONST_OR_CONSTEXPR constexpr
+#if defined( __cpp_constexpr )
+# define VULKAN_HPP_CONSTEXPR constexpr
+# if __cpp_constexpr >= 201304
+# define VULKAN_HPP_CONSTEXPR_14 constexpr
+# else
+# define VULKAN_HPP_CONSTEXPR_14
+# endif
+# define VULKAN_HPP_CONST_OR_CONSTEXPR constexpr
#else
-# define VULKAN_HPP_CONSTEXPR
-# define VULKAN_HPP_CONSTEXPR_14
-# define VULKAN_HPP_CONST_OR_CONSTEXPR const
+# define VULKAN_HPP_CONSTEXPR
+# define VULKAN_HPP_CONSTEXPR_14
+# define VULKAN_HPP_CONST_OR_CONSTEXPR const
#endif
-#if !defined(VULKAN_HPP_NOEXCEPT)
-# if defined(_MSC_VER) && (_MSC_VER <= 1800)
-# define VULKAN_HPP_NOEXCEPT
-# else
-# define VULKAN_HPP_NOEXCEPT noexcept
-# define VULKAN_HPP_HAS_NOEXCEPT 1
-# if defined(VULKAN_HPP_NO_EXCEPTIONS)
-# define VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS noexcept
+#if !defined( VULKAN_HPP_NOEXCEPT )
+# if defined( _MSC_VER ) && ( _MSC_VER <= 1800 )
+# define VULKAN_HPP_NOEXCEPT
# else
-# define VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS
+# define VULKAN_HPP_NOEXCEPT noexcept
+# define VULKAN_HPP_HAS_NOEXCEPT 1
+# if defined( VULKAN_HPP_NO_EXCEPTIONS )
+# define VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS noexcept
+# else
+# define VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS
+# endif
# endif
-# endif
#endif
#if 14 <= VULKAN_HPP_CPP_VERSION
@@ -195,7 +194,7 @@ static_assert( VK_HEADER_VERSION == 162 , "Wrong VK_HEADER_VERSION!" );
#if ( 17 <= VULKAN_HPP_CPP_VERSION ) && !defined( VULKAN_HPP_NO_NODISCARD_WARNINGS )
# define VULKAN_HPP_NODISCARD [[nodiscard]]
-# if defined(VULKAN_HPP_NO_EXCEPTIONS)
+# if defined( VULKAN_HPP_NO_EXCEPTIONS )
# define VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS [[nodiscard]]
# else
# define VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS
@@ -205,18 +204,17 @@ static_assert( VK_HEADER_VERSION == 162 , "Wrong VK_HEADER_VERSION!" );
# define VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS
#endif
-#if !defined(VULKAN_HPP_NAMESPACE)
-#define VULKAN_HPP_NAMESPACE vk
+#if !defined( VULKAN_HPP_NAMESPACE )
+# define VULKAN_HPP_NAMESPACE vk
#endif
-#define VULKAN_HPP_STRINGIFY2(text) #text
-#define VULKAN_HPP_STRINGIFY(text) VULKAN_HPP_STRINGIFY2(text)
-#define VULKAN_HPP_NAMESPACE_STRING VULKAN_HPP_STRINGIFY(VULKAN_HPP_NAMESPACE)
+#define VULKAN_HPP_STRINGIFY2( text ) #text
+#define VULKAN_HPP_STRINGIFY( text ) VULKAN_HPP_STRINGIFY2( text )
+#define VULKAN_HPP_NAMESPACE_STRING VULKAN_HPP_STRINGIFY( VULKAN_HPP_NAMESPACE )
namespace VULKAN_HPP_NAMESPACE
{
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
template <typename T>
class ArrayProxy
{
@@ -253,6 +251,11 @@ namespace VULKAN_HPP_NAMESPACE
, m_ptr( ptr )
{}
+# if __GNUC__ >= 9
+# pragma GCC diagnostic push
+# pragma GCC diagnostic ignored "-Winit-list-lifetime"
+# endif
+
ArrayProxy( std::initializer_list<T> const & list ) VULKAN_HPP_NOEXCEPT
: m_count( static_cast<uint32_t>( list.size() ) )
, m_ptr( list.begin() )
@@ -275,6 +278,10 @@ namespace VULKAN_HPP_NAMESPACE
, m_ptr( list.begin() )
{}
+# if __GNUC__ >= 9
+# pragma GCC diagnostic pop
+# endif
+
template <size_t N>
ArrayProxy( std::array<T, N> const & data ) VULKAN_HPP_NOEXCEPT
: m_count( N )
@@ -383,12 +390,22 @@ namespace VULKAN_HPP_NAMESPACE
, m_ptr( nullptr )
{}
+ ArrayProxyNoTemporaries( T & value ) VULKAN_HPP_NOEXCEPT
+ : m_count( 1 )
+ , m_ptr( &value )
+ {}
+
+ ArrayProxyNoTemporaries( T && value ) = delete;
+
template <typename B = T, typename std::enable_if<std::is_const<B>::value, int>::type = 0>
ArrayProxyNoTemporaries( typename std::remove_const<T>::type & value ) VULKAN_HPP_NOEXCEPT
: m_count( 1 )
, m_ptr( &value )
{}
+ template <typename B = T, typename std::enable_if<std::is_const<B>::value, int>::type = 0>
+ ArrayProxyNoTemporaries( typename std::remove_const<T>::type && value ) = delete;
+
ArrayProxyNoTemporaries( uint32_t count, T * ptr ) VULKAN_HPP_NOEXCEPT
: m_count( count )
, m_ptr( ptr )
@@ -405,25 +422,33 @@ namespace VULKAN_HPP_NAMESPACE
, m_ptr( list.begin() )
{}
+ ArrayProxyNoTemporaries( std::initializer_list<T> const && list ) = delete;
+
template <typename B = T, typename std::enable_if<std::is_const<B>::value, int>::type = 0>
- ArrayProxyNoTemporaries( std::initializer_list<typename std::remove_const<T>::type> const & list ) VULKAN_HPP_NOEXCEPT
+ ArrayProxyNoTemporaries( std::initializer_list<typename std::remove_const<T>::type> const & list )
+ VULKAN_HPP_NOEXCEPT
: m_count( static_cast<uint32_t>( list.size() ) )
, m_ptr( list.begin() )
{}
+ template <typename B = T, typename std::enable_if<std::is_const<B>::value, int>::type = 0>
+ ArrayProxyNoTemporaries( std::initializer_list<typename std::remove_const<T>::type> const && list ) = delete;
+
ArrayProxyNoTemporaries( std::initializer_list<T> & list ) VULKAN_HPP_NOEXCEPT
: m_count( static_cast<uint32_t>( list.size() ) )
, m_ptr( list.begin() )
{}
+ ArrayProxyNoTemporaries( std::initializer_list<T> && list ) = delete;
+
template <typename B = T, typename std::enable_if<std::is_const<B>::value, int>::type = 0>
ArrayProxyNoTemporaries( std::initializer_list<typename std::remove_const<T>::type> & list ) VULKAN_HPP_NOEXCEPT
: m_count( static_cast<uint32_t>( list.size() ) )
, m_ptr( list.begin() )
{}
- ArrayProxyNoTemporaries( std::initializer_list<T> const && list ) VULKAN_HPP_NOEXCEPT = delete;
- ArrayProxyNoTemporaries( std::initializer_list<T> && list ) VULKAN_HPP_NOEXCEPT = delete;
+ template <typename B = T, typename std::enable_if<std::is_const<B>::value, int>::type = 0>
+ ArrayProxyNoTemporaries( std::initializer_list<typename std::remove_const<T>::type> && list ) = delete;
template <size_t N>
ArrayProxyNoTemporaries( std::array<T, N> const & data ) VULKAN_HPP_NOEXCEPT
@@ -431,28 +456,35 @@ namespace VULKAN_HPP_NAMESPACE
, m_ptr( data.data() )
{}
+ template <size_t N>
+ ArrayProxyNoTemporaries( std::array<T, N> const && data ) = delete;
+
template <size_t N, typename B = T, typename std::enable_if<std::is_const<B>::value, int>::type = 0>
ArrayProxyNoTemporaries( std::array<typename std::remove_const<T>::type, N> const & data ) VULKAN_HPP_NOEXCEPT
: m_count( N )
, m_ptr( data.data() )
{}
+ template <size_t N, typename B = T, typename std::enable_if<std::is_const<B>::value, int>::type = 0>
+ ArrayProxyNoTemporaries( std::array<typename std::remove_const<T>::type, N> const && data ) = delete;
+
template <size_t N>
ArrayProxyNoTemporaries( std::array<T, N> & data ) VULKAN_HPP_NOEXCEPT
: m_count( N )
, m_ptr( data.data() )
{}
+ template <size_t N>
+ ArrayProxyNoTemporaries( std::array<T, N> && data ) = delete;
+
template <size_t N, typename B = T, typename std::enable_if<std::is_const<B>::value, int>::type = 0>
ArrayProxyNoTemporaries( std::array<typename std::remove_const<T>::type, N> & data ) VULKAN_HPP_NOEXCEPT
: m_count( N )
, m_ptr( data.data() )
{}
- template <size_t N>
- ArrayProxyNoTemporaries( std::array<T, N> const && data ) VULKAN_HPP_NOEXCEPT = delete;
- template <size_t N>
- ArrayProxyNoTemporaries( std::array<T, N> && data ) VULKAN_HPP_NOEXCEPT = delete;
+ template <size_t N, typename B = T, typename std::enable_if<std::is_const<B>::value, int>::type = 0>
+ ArrayProxyNoTemporaries( std::array<typename std::remove_const<T>::type, N> && data ) = delete;
template <class Allocator = std::allocator<typename std::remove_const<T>::type>>
ArrayProxyNoTemporaries( std::vector<T, Allocator> const & data ) VULKAN_HPP_NOEXCEPT
@@ -460,20 +492,32 @@ namespace VULKAN_HPP_NAMESPACE
, m_ptr( data.data() )
{}
+ template <class Allocator = std::allocator<typename std::remove_const<T>::type>>
+ ArrayProxyNoTemporaries( std::vector<T, Allocator> const && data ) = delete;
+
template <class Allocator = std::allocator<typename std::remove_const<T>::type>,
typename B = T,
typename std::enable_if<std::is_const<B>::value, int>::type = 0>
- ArrayProxyNoTemporaries( std::vector<typename std::remove_const<T>::type, Allocator> const & data ) VULKAN_HPP_NOEXCEPT
+ ArrayProxyNoTemporaries( std::vector<typename std::remove_const<T>::type, Allocator> const & data )
+ VULKAN_HPP_NOEXCEPT
: m_count( static_cast<uint32_t>( data.size() ) )
, m_ptr( data.data() )
{}
+ template <class Allocator = std::allocator<typename std::remove_const<T>::type>,
+ typename B = T,
+ typename std::enable_if<std::is_const<B>::value, int>::type = 0>
+ ArrayProxyNoTemporaries( std::vector<typename std::remove_const<T>::type, Allocator> const && data ) = delete;
+
template <class Allocator = std::allocator<typename std::remove_const<T>::type>>
ArrayProxyNoTemporaries( std::vector<T, Allocator> & data ) VULKAN_HPP_NOEXCEPT
: m_count( static_cast<uint32_t>( data.size() ) )
, m_ptr( data.data() )
{}
+ template <class Allocator = std::allocator<typename std::remove_const<T>::type>>
+ ArrayProxyNoTemporaries( std::vector<T, Allocator> && data ) = delete;
+
template <class Allocator = std::allocator<typename std::remove_const<T>::type>,
typename B = T,
typename std::enable_if<std::is_const<B>::value, int>::type = 0>
@@ -482,8 +526,10 @@ namespace VULKAN_HPP_NAMESPACE
, m_ptr( data.data() )
{}
- ArrayProxyNoTemporaries( std::vector<T> const && data ) VULKAN_HPP_NOEXCEPT = delete;
- ArrayProxyNoTemporaries( std::vector<T> && data ) VULKAN_HPP_NOEXCEPT = delete;
+ template <class Allocator = std::allocator<typename std::remove_const<T>::type>,
+ typename B = T,
+ typename std::enable_if<std::is_const<B>::value, int>::type = 0>
+ ArrayProxyNoTemporaries( std::vector<typename std::remove_const<T>::type, Allocator> && data ) = delete;
const T * begin() const VULKAN_HPP_NOEXCEPT
{
@@ -529,35 +575,32 @@ namespace VULKAN_HPP_NAMESPACE
#endif
template <typename T, size_t N>
- class ArrayWrapper1D : public std::array<T,N>
+ class ArrayWrapper1D : public std::array<T, N>
{
public:
- VULKAN_HPP_CONSTEXPR ArrayWrapper1D() VULKAN_HPP_NOEXCEPT
- : std::array<T, N>()
- {}
+ VULKAN_HPP_CONSTEXPR ArrayWrapper1D() VULKAN_HPP_NOEXCEPT : std::array<T, N>() {}
- VULKAN_HPP_CONSTEXPR ArrayWrapper1D(std::array<T,N> const& data) VULKAN_HPP_NOEXCEPT
- : std::array<T, N>(data)
+ VULKAN_HPP_CONSTEXPR ArrayWrapper1D( std::array<T, N> const & data ) VULKAN_HPP_NOEXCEPT : std::array<T, N>( data )
{}
-#if defined(_WIN32) && !defined(_WIN64)
- VULKAN_HPP_CONSTEXPR T const& operator[](int index) const VULKAN_HPP_NOEXCEPT
+#if defined( _WIN32 ) && !defined( _WIN64 )
+ VULKAN_HPP_CONSTEXPR T const & operator[]( int index ) const VULKAN_HPP_NOEXCEPT
{
- return std::array<T, N>::operator[](index);
+ return std::array<T, N>::operator[]( index );
}
- T & operator[](int index) VULKAN_HPP_NOEXCEPT
+ T & operator[]( int index ) VULKAN_HPP_NOEXCEPT
{
- return std::array<T, N>::operator[](index);
+ return std::array<T, N>::operator[]( index );
}
#endif
- operator T const* () const VULKAN_HPP_NOEXCEPT
+ operator T const *() const VULKAN_HPP_NOEXCEPT
{
return this->data();
}
- operator T * () VULKAN_HPP_NOEXCEPT
+ operator T *() VULKAN_HPP_NOEXCEPT
{
return this->data();
}
@@ -615,57 +658,59 @@ namespace VULKAN_HPP_NAMESPACE
// specialization of relational operators between std::string and arrays of chars
template <size_t N>
- bool operator<(std::string const& lhs, ArrayWrapper1D<char, N> const& rhs) VULKAN_HPP_NOEXCEPT
+ bool operator<( std::string const & lhs, ArrayWrapper1D<char, N> const & rhs ) VULKAN_HPP_NOEXCEPT
{
return lhs < rhs.data();
}
template <size_t N>
- bool operator<=(std::string const& lhs, ArrayWrapper1D<char, N> const& rhs) VULKAN_HPP_NOEXCEPT
+ bool operator<=( std::string const & lhs, ArrayWrapper1D<char, N> const & rhs ) VULKAN_HPP_NOEXCEPT
{
return lhs <= rhs.data();
}
template <size_t N>
- bool operator>(std::string const& lhs, ArrayWrapper1D<char, N> const& rhs) VULKAN_HPP_NOEXCEPT
+ bool operator>( std::string const & lhs, ArrayWrapper1D<char, N> const & rhs ) VULKAN_HPP_NOEXCEPT
{
return lhs > rhs.data();
}
template <size_t N>
- bool operator>=(std::string const& lhs, ArrayWrapper1D<char, N> const& rhs) VULKAN_HPP_NOEXCEPT
+ bool operator>=( std::string const & lhs, ArrayWrapper1D<char, N> const & rhs ) VULKAN_HPP_NOEXCEPT
{
return lhs >= rhs.data();
}
template <size_t N>
- bool operator==(std::string const& lhs, ArrayWrapper1D<char, N> const& rhs) VULKAN_HPP_NOEXCEPT
+ bool operator==( std::string const & lhs, ArrayWrapper1D<char, N> const & rhs ) VULKAN_HPP_NOEXCEPT
{
return lhs == rhs.data();
}
template <size_t N>
- bool operator!=(std::string const& lhs, ArrayWrapper1D<char, N> const& rhs) VULKAN_HPP_NOEXCEPT
+ bool operator!=( std::string const & lhs, ArrayWrapper1D<char, N> const & rhs ) VULKAN_HPP_NOEXCEPT
{
return lhs != rhs.data();
}
template <typename T, size_t N, size_t M>
- class ArrayWrapper2D : public std::array<ArrayWrapper1D<T,M>,N>
+ class ArrayWrapper2D : public std::array<ArrayWrapper1D<T, M>, N>
{
public:
- VULKAN_HPP_CONSTEXPR ArrayWrapper2D() VULKAN_HPP_NOEXCEPT
- : std::array<ArrayWrapper1D<T,M>, N>()
- {}
+ VULKAN_HPP_CONSTEXPR ArrayWrapper2D() VULKAN_HPP_NOEXCEPT : std::array<ArrayWrapper1D<T, M>, N>() {}
- VULKAN_HPP_CONSTEXPR ArrayWrapper2D(std::array<std::array<T,M>,N> const& data) VULKAN_HPP_NOEXCEPT
- : std::array<ArrayWrapper1D<T,M>, N>(*reinterpret_cast<std::array<ArrayWrapper1D<T,M>,N> const*>(&data))
+ VULKAN_HPP_CONSTEXPR ArrayWrapper2D( std::array<std::array<T, M>, N> const & data ) VULKAN_HPP_NOEXCEPT
+ : std::array<ArrayWrapper1D<T, M>, N>( *reinterpret_cast<std::array<ArrayWrapper1D<T, M>, N> const *>( &data ) )
{}
};
- template <typename FlagBitsType> struct FlagTraits
+ template <typename FlagBitsType>
+ struct FlagTraits
{
- enum { allFlags = 0 };
+ enum
+ {
+ allFlags = 0
+ };
};
template <typename BitType>
@@ -675,50 +720,44 @@ namespace VULKAN_HPP_NAMESPACE
using MaskType = typename std::underlying_type<BitType>::type;
// constructors
- VULKAN_HPP_CONSTEXPR Flags() VULKAN_HPP_NOEXCEPT
- : m_mask(0)
- {}
+ VULKAN_HPP_CONSTEXPR Flags() VULKAN_HPP_NOEXCEPT : m_mask( 0 ) {}
- VULKAN_HPP_CONSTEXPR Flags(BitType bit) VULKAN_HPP_NOEXCEPT
- : m_mask(static_cast<MaskType>(bit))
- {}
+ VULKAN_HPP_CONSTEXPR Flags( BitType bit ) VULKAN_HPP_NOEXCEPT : m_mask( static_cast<MaskType>( bit ) ) {}
- VULKAN_HPP_CONSTEXPR Flags(Flags<BitType> const& rhs) VULKAN_HPP_NOEXCEPT = default;
+ VULKAN_HPP_CONSTEXPR Flags( Flags<BitType> const & rhs ) VULKAN_HPP_NOEXCEPT = default;
- VULKAN_HPP_CONSTEXPR explicit Flags(MaskType flags) VULKAN_HPP_NOEXCEPT
- : m_mask(flags)
- {}
+ VULKAN_HPP_CONSTEXPR explicit Flags( MaskType flags ) VULKAN_HPP_NOEXCEPT : m_mask( flags ) {}
// relational operators
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>(Flags<BitType> const&) const = default;
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( Flags<BitType> const & ) const = default;
#else
- VULKAN_HPP_CONSTEXPR bool operator<(Flags<BitType> const& rhs) const VULKAN_HPP_NOEXCEPT
+ VULKAN_HPP_CONSTEXPR bool operator<( Flags<BitType> const & rhs ) const VULKAN_HPP_NOEXCEPT
{
return m_mask < rhs.m_mask;
}
- VULKAN_HPP_CONSTEXPR bool operator<=(Flags<BitType> const& rhs) const VULKAN_HPP_NOEXCEPT
+ VULKAN_HPP_CONSTEXPR bool operator<=( Flags<BitType> const & rhs ) const VULKAN_HPP_NOEXCEPT
{
return m_mask <= rhs.m_mask;
}
- VULKAN_HPP_CONSTEXPR bool operator>(Flags<BitType> const& rhs) const VULKAN_HPP_NOEXCEPT
+ VULKAN_HPP_CONSTEXPR bool operator>( Flags<BitType> const & rhs ) const VULKAN_HPP_NOEXCEPT
{
return m_mask > rhs.m_mask;
}
- VULKAN_HPP_CONSTEXPR bool operator>=(Flags<BitType> const& rhs) const VULKAN_HPP_NOEXCEPT
+ VULKAN_HPP_CONSTEXPR bool operator>=( Flags<BitType> const & rhs ) const VULKAN_HPP_NOEXCEPT
{
return m_mask >= rhs.m_mask;
}
- VULKAN_HPP_CONSTEXPR bool operator==(Flags<BitType> const& rhs) const VULKAN_HPP_NOEXCEPT
+ VULKAN_HPP_CONSTEXPR bool operator==( Flags<BitType> const & rhs ) const VULKAN_HPP_NOEXCEPT
{
return m_mask == rhs.m_mask;
}
- VULKAN_HPP_CONSTEXPR bool operator!=(Flags<BitType> const& rhs) const VULKAN_HPP_NOEXCEPT
+ VULKAN_HPP_CONSTEXPR bool operator!=( Flags<BitType> const & rhs ) const VULKAN_HPP_NOEXCEPT
{
return m_mask != rhs.m_mask;
}
@@ -731,42 +770,42 @@ namespace VULKAN_HPP_NAMESPACE
}
// bitwise operators
- VULKAN_HPP_CONSTEXPR Flags<BitType> operator&(Flags<BitType> const& rhs) const VULKAN_HPP_NOEXCEPT
+ VULKAN_HPP_CONSTEXPR Flags<BitType> operator&( Flags<BitType> const & rhs ) const VULKAN_HPP_NOEXCEPT
{
- return Flags<BitType>(m_mask & rhs.m_mask);
+ return Flags<BitType>( m_mask & rhs.m_mask );
}
- VULKAN_HPP_CONSTEXPR Flags<BitType> operator|(Flags<BitType> const& rhs) const VULKAN_HPP_NOEXCEPT
+ VULKAN_HPP_CONSTEXPR Flags<BitType> operator|( Flags<BitType> const & rhs ) const VULKAN_HPP_NOEXCEPT
{
- return Flags<BitType>(m_mask | rhs.m_mask);
+ return Flags<BitType>( m_mask | rhs.m_mask );
}
- VULKAN_HPP_CONSTEXPR Flags<BitType> operator^(Flags<BitType> const& rhs) const VULKAN_HPP_NOEXCEPT
+ VULKAN_HPP_CONSTEXPR Flags<BitType> operator^( Flags<BitType> const & rhs ) const VULKAN_HPP_NOEXCEPT
{
- return Flags<BitType>(m_mask ^ rhs.m_mask);
+ return Flags<BitType>( m_mask ^ rhs.m_mask );
}
VULKAN_HPP_CONSTEXPR Flags<BitType> operator~() const VULKAN_HPP_NOEXCEPT
{
- return Flags<BitType>(m_mask ^ FlagTraits<BitType>::allFlags);
+ return Flags<BitType>( m_mask ^ FlagTraits<BitType>::allFlags );
}
// assignment operators
- VULKAN_HPP_CONSTEXPR_14 Flags<BitType> & operator=(Flags<BitType> const& rhs) VULKAN_HPP_NOEXCEPT = default;
+ VULKAN_HPP_CONSTEXPR_14 Flags<BitType> & operator=( Flags<BitType> const & rhs ) VULKAN_HPP_NOEXCEPT = default;
- VULKAN_HPP_CONSTEXPR_14 Flags<BitType> & operator|=(Flags<BitType> const& rhs) VULKAN_HPP_NOEXCEPT
+ VULKAN_HPP_CONSTEXPR_14 Flags<BitType> & operator|=( Flags<BitType> const & rhs ) VULKAN_HPP_NOEXCEPT
{
m_mask |= rhs.m_mask;
return *this;
}
- VULKAN_HPP_CONSTEXPR_14 Flags<BitType> & operator&=(Flags<BitType> const& rhs) VULKAN_HPP_NOEXCEPT
+ VULKAN_HPP_CONSTEXPR_14 Flags<BitType> & operator&=( Flags<BitType> const & rhs ) VULKAN_HPP_NOEXCEPT
{
m_mask &= rhs.m_mask;
return *this;
}
- VULKAN_HPP_CONSTEXPR_14 Flags<BitType> & operator^=(Flags<BitType> const& rhs) VULKAN_HPP_NOEXCEPT
+ VULKAN_HPP_CONSTEXPR_14 Flags<BitType> & operator^=( Flags<BitType> const & rhs ) VULKAN_HPP_NOEXCEPT
{
m_mask ^= rhs.m_mask;
return *this;
@@ -780,47 +819,51 @@ namespace VULKAN_HPP_NAMESPACE
explicit VULKAN_HPP_CONSTEXPR operator MaskType() const VULKAN_HPP_NOEXCEPT
{
- return m_mask;
+ return m_mask;
}
+#if defined( VULKAN_HPP_FLAGS_MASK_TYPE_AS_PUBLIC )
+ public:
+#else
private:
- MaskType m_mask;
+#endif
+ MaskType m_mask;
};
-#if !defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
+#if !defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
// relational operators only needed for pre C++20
template <typename BitType>
- VULKAN_HPP_CONSTEXPR bool operator<(BitType bit, Flags<BitType> const& flags) VULKAN_HPP_NOEXCEPT
+ VULKAN_HPP_CONSTEXPR bool operator<( BitType bit, Flags<BitType> const & flags ) VULKAN_HPP_NOEXCEPT
{
return flags.operator>( bit );
}
template <typename BitType>
- VULKAN_HPP_CONSTEXPR bool operator<=(BitType bit, Flags<BitType> const& flags) VULKAN_HPP_NOEXCEPT
+ VULKAN_HPP_CONSTEXPR bool operator<=( BitType bit, Flags<BitType> const & flags ) VULKAN_HPP_NOEXCEPT
{
return flags.operator>=( bit );
}
template <typename BitType>
- VULKAN_HPP_CONSTEXPR bool operator>(BitType bit, Flags<BitType> const& flags) VULKAN_HPP_NOEXCEPT
+ VULKAN_HPP_CONSTEXPR bool operator>( BitType bit, Flags<BitType> const & flags ) VULKAN_HPP_NOEXCEPT
{
return flags.operator<( bit );
}
template <typename BitType>
- VULKAN_HPP_CONSTEXPR bool operator>=(BitType bit, Flags<BitType> const& flags) VULKAN_HPP_NOEXCEPT
+ VULKAN_HPP_CONSTEXPR bool operator>=( BitType bit, Flags<BitType> const & flags ) VULKAN_HPP_NOEXCEPT
{
- return flags.operator<=(bit);
+ return flags.operator<=( bit );
}
template <typename BitType>
- VULKAN_HPP_CONSTEXPR bool operator==(BitType bit, Flags<BitType> const& flags) VULKAN_HPP_NOEXCEPT
+ VULKAN_HPP_CONSTEXPR bool operator==( BitType bit, Flags<BitType> const & flags ) VULKAN_HPP_NOEXCEPT
{
return flags.operator==( bit );
}
template <typename BitType>
- VULKAN_HPP_CONSTEXPR bool operator!=(BitType bit, Flags<BitType> const& flags) VULKAN_HPP_NOEXCEPT
+ VULKAN_HPP_CONSTEXPR bool operator!=( BitType bit, Flags<BitType> const & flags ) VULKAN_HPP_NOEXCEPT
{
return flags.operator!=( bit );
}
@@ -828,19 +871,19 @@ namespace VULKAN_HPP_NAMESPACE
// bitwise operators
template <typename BitType>
- VULKAN_HPP_CONSTEXPR Flags<BitType> operator&(BitType bit, Flags<BitType> const& flags) VULKAN_HPP_NOEXCEPT
+ VULKAN_HPP_CONSTEXPR Flags<BitType> operator&(BitType bit, Flags<BitType> const & flags)VULKAN_HPP_NOEXCEPT
{
return flags.operator&( bit );
}
template <typename BitType>
- VULKAN_HPP_CONSTEXPR Flags<BitType> operator|(BitType bit, Flags<BitType> const& flags) VULKAN_HPP_NOEXCEPT
+ VULKAN_HPP_CONSTEXPR Flags<BitType> operator|( BitType bit, Flags<BitType> const & flags ) VULKAN_HPP_NOEXCEPT
{
return flags.operator|( bit );
}
template <typename BitType>
- VULKAN_HPP_CONSTEXPR Flags<BitType> operator^(BitType bit, Flags<BitType> const& flags) VULKAN_HPP_NOEXCEPT
+ VULKAN_HPP_CONSTEXPR Flags<BitType> operator^( BitType bit, Flags<BitType> const & flags ) VULKAN_HPP_NOEXCEPT
{
return flags.operator^( bit );
}
@@ -849,27 +892,52 @@ namespace VULKAN_HPP_NAMESPACE
class Optional
{
public:
- Optional(RefType & reference) VULKAN_HPP_NOEXCEPT { m_ptr = &reference; }
- Optional(RefType * ptr) VULKAN_HPP_NOEXCEPT { m_ptr = ptr; }
- Optional(std::nullptr_t) VULKAN_HPP_NOEXCEPT { m_ptr = nullptr; }
+ Optional( RefType & reference ) VULKAN_HPP_NOEXCEPT
+ {
+ m_ptr = &reference;
+ }
+ Optional( RefType * ptr ) VULKAN_HPP_NOEXCEPT
+ {
+ m_ptr = ptr;
+ }
+ Optional( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
+ {
+ m_ptr = nullptr;
+ }
- operator RefType*() const VULKAN_HPP_NOEXCEPT { return m_ptr; }
- RefType const* operator->() const VULKAN_HPP_NOEXCEPT { return m_ptr; }
- explicit operator bool() const VULKAN_HPP_NOEXCEPT { return !!m_ptr; }
+ operator RefType *() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_ptr;
+ }
+ RefType const * operator->() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_ptr;
+ }
+ explicit operator bool() const VULKAN_HPP_NOEXCEPT
+ {
+ return !!m_ptr;
+ }
private:
- RefType *m_ptr;
+ RefType * m_ptr;
};
- template <typename X, typename Y> struct StructExtends { enum { value = false }; };
+ template <typename X, typename Y>
+ struct StructExtends
+ {
+ enum
+ {
+ value = false
+ };
+ };
- template<typename Type, class...>
+ template <typename Type, class...>
struct IsPartOfStructureChain
{
static const bool valid = false;
};
- template<typename Type, typename Head, typename... Tail>
+ template <typename Type, typename Head, typename... Tail>
struct IsPartOfStructureChain<Type, Head, Tail...>
{
static const bool valid = std::is_same<Type, Head>::value || IsPartOfStructureChain<Type, Tail...>::valid;
@@ -878,14 +946,16 @@ namespace VULKAN_HPP_NAMESPACE
template <size_t Index, typename T, typename... ChainElements>
struct StructureChainContains
{
- static const bool value = std::is_same<T, typename std::tuple_element<Index, std::tuple<ChainElements...>>::type>::value ||
- StructureChainContains<Index - 1, T, ChainElements...>::value;
+ static const bool value =
+ std::is_same<T, typename std::tuple_element<Index, std::tuple<ChainElements...>>::type>::value ||
+ StructureChainContains<Index - 1, T, ChainElements...>::value;
};
template <typename T, typename... ChainElements>
struct StructureChainContains<0, T, ChainElements...>
{
- static const bool value = std::is_same<T, typename std::tuple_element<0, std::tuple<ChainElements...>>::type>::value;
+ static const bool value =
+ std::is_same<T, typename std::tuple_element<0, std::tuple<ChainElements...>>::type>::value;
};
template <size_t Index, typename... ChainElements>
@@ -949,13 +1019,15 @@ namespace VULKAN_HPP_NAMESPACE
template <typename T = typename std::tuple_element<0, std::tuple<ChainElements...>>::type, size_t Which = 0>
T & get() VULKAN_HPP_NOEXCEPT
{
- return std::get<ChainElementIndex<0, T, Which, void, ChainElements...>::value>( static_cast<std::tuple<ChainElements...>&>( *this ) );
+ return std::get<ChainElementIndex<0, T, Which, void, ChainElements...>::value>(
+ static_cast<std::tuple<ChainElements...> &>( *this ) );
}
template <typename T = typename std::tuple_element<0, std::tuple<ChainElements...>>::type, size_t Which = 0>
T const & get() const VULKAN_HPP_NOEXCEPT
{
- return std::get<ChainElementIndex<0, T, Which, void, ChainElements...>::value>( static_cast<std::tuple<ChainElements...> const &>( *this ) );
+ return std::get<ChainElementIndex<0, T, Which, void, ChainElements...>::value>(
+ static_cast<std::tuple<ChainElements...> const &>( *this ) );
}
template <typename T0, typename T1, typename... Ts>
@@ -971,31 +1043,53 @@ namespace VULKAN_HPP_NAMESPACE
}
template <typename ClassType, size_t Which = 0>
- void relink() VULKAN_HPP_NOEXCEPT
+ typename std::enable_if<
+ std::is_same<ClassType, typename std::tuple_element<0, std::tuple<ChainElements...>>::type>::value &&
+ ( Which == 0 ),
+ bool>::type
+ isLinked() const VULKAN_HPP_NOEXCEPT
+ {
+ return true;
+ }
+
+ template <typename ClassType, size_t Which = 0>
+ typename std::enable_if<
+ !std::is_same<ClassType, typename std::tuple_element<0, std::tuple<ChainElements...>>::type>::value ||
+ ( Which != 0 ),
+ bool>::type
+ isLinked() const VULKAN_HPP_NOEXCEPT
{
static_assert( IsPartOfStructureChain<ClassType, ChainElements...>::valid,
- "Can't relink Structure that's not part of this StructureChain!" );
- static_assert(
- !std::is_same<ClassType, typename std::tuple_element<0, std::tuple<ChainElements...>>::type>::value || (Which != 0),
- "It's not allowed to have the first element unlinked!" );
+ "Can't unlink Structure that's not part of this StructureChain!" );
+ return isLinked( reinterpret_cast<VkBaseInStructure const *>( &get<ClassType, Which>() ) );
+ }
+ template <typename ClassType, size_t Which = 0>
+ typename std::enable_if<
+ !std::is_same<ClassType, typename std::tuple_element<0, std::tuple<ChainElements...>>::type>::value ||
+ ( Which != 0 ),
+ void>::type
+ relink() VULKAN_HPP_NOEXCEPT
+ {
+ static_assert( IsPartOfStructureChain<ClassType, ChainElements...>::valid,
+ "Can't relink Structure that's not part of this StructureChain!" );
auto pNext = reinterpret_cast<VkBaseInStructure *>( &get<ClassType, Which>() );
VULKAN_HPP_ASSERT( !isLinked( pNext ) );
- auto & headElement = std::get<0>( static_cast<std::tuple<ChainElements...>&>( *this ) );
- pNext->pNext = reinterpret_cast<VkBaseInStructure const*>(headElement.pNext);
+ auto & headElement = std::get<0>( static_cast<std::tuple<ChainElements...> &>( *this ) );
+ pNext->pNext = reinterpret_cast<VkBaseInStructure const *>( headElement.pNext );
headElement.pNext = pNext;
}
template <typename ClassType, size_t Which = 0>
- void unlink() VULKAN_HPP_NOEXCEPT
+ typename std::enable_if<
+ !std::is_same<ClassType, typename std::tuple_element<0, std::tuple<ChainElements...>>::type>::value ||
+ ( Which != 0 ),
+ void>::type
+ unlink() VULKAN_HPP_NOEXCEPT
{
static_assert( IsPartOfStructureChain<ClassType, ChainElements...>::valid,
"Can't unlink Structure that's not part of this StructureChain!" );
- static_assert(
- !std::is_same<ClassType, typename std::tuple_element<0, std::tuple<ChainElements...>>::type>::value || (Which != 0),
- "It's not allowed to unlink the first element!" );
-
- unlink<sizeof...( ChainElements ) - 1>( reinterpret_cast<VkBaseOutStructure const *>( &get<ClassType, Which>() ) );
+ unlink( reinterpret_cast<VkBaseOutStructure const *>( &get<ClassType, Which>() ) );
}
private:
@@ -1030,9 +1124,10 @@ namespace VULKAN_HPP_NAMESPACE
Types...> : std::integral_constant<int, Index>
{};
- bool isLinked( VkBaseInStructure const * pNext )
+ bool isLinked( VkBaseInStructure const * pNext ) const VULKAN_HPP_NOEXCEPT
{
- VkBaseInStructure const * elementPtr = reinterpret_cast<VkBaseInStructure const*>(&std::get<0>( static_cast<std::tuple<ChainElements...>&>( *this ) ) );
+ VkBaseInStructure const * elementPtr = reinterpret_cast<VkBaseInStructure const *>(
+ &std::get<0>( static_cast<std::tuple<ChainElements...> const &>( *this ) ) );
while ( elementPtr )
{
if ( elementPtr->pNext == pNext )
@@ -1047,8 +1142,8 @@ namespace VULKAN_HPP_NAMESPACE
template <size_t Index>
typename std::enable_if<Index != 0, void>::type link() VULKAN_HPP_NOEXCEPT
{
- auto & x = std::get<Index - 1>( static_cast<std::tuple<ChainElements...>&>( *this ) );
- x.pNext = &std::get<Index>( static_cast<std::tuple<ChainElements...>&>( *this ) );
+ auto & x = std::get<Index - 1>( static_cast<std::tuple<ChainElements...> &>( *this ) );
+ x.pNext = &std::get<Index>( static_cast<std::tuple<ChainElements...> &>( *this ) );
link<Index - 1>();
}
@@ -1056,27 +1151,17 @@ namespace VULKAN_HPP_NAMESPACE
typename std::enable_if<Index == 0, void>::type link() VULKAN_HPP_NOEXCEPT
{}
- template <size_t Index>
- typename std::enable_if<Index != 0, void>::type unlink( VkBaseOutStructure const * pNext ) VULKAN_HPP_NOEXCEPT
+ void unlink( VkBaseOutStructure const * pNext ) VULKAN_HPP_NOEXCEPT
{
- auto & element = std::get<Index>( static_cast<std::tuple<ChainElements...>&>( *this ) );
- if ( element.pNext == pNext )
- {
- element.pNext = pNext->pNext;
- }
- else
+ VkBaseOutStructure * elementPtr =
+ reinterpret_cast<VkBaseOutStructure *>( &std::get<0>( static_cast<std::tuple<ChainElements...> &>( *this ) ) );
+ while ( elementPtr && ( elementPtr->pNext != pNext ) )
{
- unlink<Index - 1>( pNext );
+ elementPtr = elementPtr->pNext;
}
- }
-
- template <size_t Index>
- typename std::enable_if<Index == 0, void>::type unlink( VkBaseOutStructure const * pNext ) VULKAN_HPP_NOEXCEPT
- {
- auto & element = std::get<0>( static_cast<std::tuple<ChainElements...>&>( *this ) );
- if ( element.pNext == pNext )
+ if ( elementPtr )
{
- element.pNext = pNext->pNext;
+ elementPtr->pNext = pNext->pNext;
}
else
{
@@ -1085,46 +1170,47 @@ namespace VULKAN_HPP_NAMESPACE
}
};
-#if !defined(VULKAN_HPP_NO_SMART_HANDLE)
- template <typename Type, typename Dispatch> class UniqueHandleTraits;
+#if !defined( VULKAN_HPP_NO_SMART_HANDLE )
+ template <typename Type, typename Dispatch>
+ class UniqueHandleTraits;
template <typename Type, typename Dispatch>
- class UniqueHandle : public UniqueHandleTraits<Type,Dispatch>::deleter
+ class UniqueHandle : public UniqueHandleTraits<Type, Dispatch>::deleter
{
private:
- using Deleter = typename UniqueHandleTraits<Type,Dispatch>::deleter;
+ using Deleter = typename UniqueHandleTraits<Type, Dispatch>::deleter;
public:
using element_type = Type;
- UniqueHandle()
- : Deleter()
- , m_value()
- {}
+ UniqueHandle() : Deleter(), m_value() {}
- explicit UniqueHandle( Type const& value, Deleter const& deleter = Deleter() ) VULKAN_HPP_NOEXCEPT
- : Deleter( deleter)
+ explicit UniqueHandle( Type const & value, Deleter const & deleter = Deleter() ) VULKAN_HPP_NOEXCEPT
+ : Deleter( deleter )
, m_value( value )
{}
- UniqueHandle( UniqueHandle const& ) = delete;
+ UniqueHandle( UniqueHandle const & ) = delete;
UniqueHandle( UniqueHandle && other ) VULKAN_HPP_NOEXCEPT
- : Deleter( std::move( static_cast<Deleter&>( other ) ) )
+ : Deleter( std::move( static_cast<Deleter &>( other ) ) )
, m_value( other.release() )
{}
~UniqueHandle() VULKAN_HPP_NOEXCEPT
{
- if ( m_value ) this->destroy( m_value );
+ if ( m_value )
+ {
+ this->destroy( m_value );
+ }
}
- UniqueHandle & operator=( UniqueHandle const& ) = delete;
+ UniqueHandle & operator=( UniqueHandle const & ) = delete;
UniqueHandle & operator=( UniqueHandle && other ) VULKAN_HPP_NOEXCEPT
{
reset( other.release() );
- *static_cast<Deleter*>(this) = std::move( static_cast<Deleter&>(other) );
+ *static_cast<Deleter *>( this ) = std::move( static_cast<Deleter &>( other ) );
return *this;
}
@@ -1133,7 +1219,7 @@ namespace VULKAN_HPP_NAMESPACE
return m_value.operator bool();
}
- Type const* operator->() const VULKAN_HPP_NOEXCEPT
+ Type const * operator->() const VULKAN_HPP_NOEXCEPT
{
return &m_value;
}
@@ -1143,7 +1229,7 @@ namespace VULKAN_HPP_NAMESPACE
return &m_value;
}
- Type const& operator*() const VULKAN_HPP_NOEXCEPT
+ Type const & operator*() const VULKAN_HPP_NOEXCEPT
{
return m_value;
}
@@ -1163,11 +1249,14 @@ namespace VULKAN_HPP_NAMESPACE
return m_value;
}
- void reset( Type const& value = Type() ) VULKAN_HPP_NOEXCEPT
+ void reset( Type const & value = Type() ) VULKAN_HPP_NOEXCEPT
{
if ( m_value != value )
{
- if ( m_value ) this->destroy( m_value );
+ if ( m_value )
+ {
+ this->destroy( m_value );
+ }
m_value = value;
}
}
@@ -1175,12670 +1264,4444 @@ namespace VULKAN_HPP_NAMESPACE
Type release() VULKAN_HPP_NOEXCEPT
{
Type value = m_value;
- m_value = nullptr;
+ m_value = nullptr;
return value;
}
- void swap( UniqueHandle<Type,Dispatch> & rhs ) VULKAN_HPP_NOEXCEPT
+ void swap( UniqueHandle<Type, Dispatch> & rhs ) VULKAN_HPP_NOEXCEPT
{
- std::swap(m_value, rhs.m_value);
- std::swap(static_cast<Deleter&>(*this), static_cast<Deleter&>(rhs));
+ std::swap( m_value, rhs.m_value );
+ std::swap( static_cast<Deleter &>( *this ), static_cast<Deleter &>( rhs ) );
}
private:
- Type m_value;
+ Type m_value;
};
template <typename UniqueType>
- VULKAN_HPP_INLINE std::vector<typename UniqueType::element_type> uniqueToRaw(std::vector<UniqueType> const& handles)
+ VULKAN_HPP_INLINE std::vector<typename UniqueType::element_type>
+ uniqueToRaw( std::vector<UniqueType> const & handles )
{
- std::vector<typename UniqueType::element_type> newBuffer(handles.size());
- std::transform(handles.begin(), handles.end(), newBuffer.begin(), [](UniqueType const& handle) { return handle.get(); });
+ std::vector<typename UniqueType::element_type> newBuffer( handles.size() );
+ std::transform(
+ handles.begin(), handles.end(), newBuffer.begin(), []( UniqueType const & handle ) { return handle.get(); } );
return newBuffer;
}
template <typename Type, typename Dispatch>
- VULKAN_HPP_INLINE void swap( UniqueHandle<Type,Dispatch> & lhs, UniqueHandle<Type,Dispatch> & rhs ) VULKAN_HPP_NOEXCEPT
+ VULKAN_HPP_INLINE void swap( UniqueHandle<Type, Dispatch> & lhs,
+ UniqueHandle<Type, Dispatch> & rhs ) VULKAN_HPP_NOEXCEPT
{
lhs.swap( rhs );
}
#endif
-#if !defined(VK_NO_PROTOTYPES)
+#if !defined( VK_NO_PROTOTYPES )
class DispatchLoaderStatic
{
public:
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- VkResult vkAcquireFullScreenExclusiveModeEXT( VkDevice device, VkSwapchainKHR swapchain ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkAcquireFullScreenExclusiveModeEXT( device, swapchain );
- }
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+ //=== VK_VERSION_1_0 ===
- VkResult vkAcquireNextImage2KHR( VkDevice device, const VkAcquireNextImageInfoKHR* pAcquireInfo, uint32_t* pImageIndex ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkCreateInstance( const VkInstanceCreateInfo * pCreateInfo,
+ const VkAllocationCallbacks * pAllocator,
+ VkInstance * pInstance ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkAcquireNextImage2KHR( device, pAcquireInfo, pImageIndex );
- }
-
- VkResult vkAcquireNextImageKHR( VkDevice device, VkSwapchainKHR swapchain, uint64_t timeout, VkSemaphore semaphore, VkFence fence, uint32_t* pImageIndex ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkAcquireNextImageKHR( device, swapchain, timeout, semaphore, fence, pImageIndex );
+ return ::vkCreateInstance( pCreateInfo, pAllocator, pInstance );
}
- VkResult vkAcquirePerformanceConfigurationINTEL( VkDevice device, const VkPerformanceConfigurationAcquireInfoINTEL* pAcquireInfo, VkPerformanceConfigurationINTEL* pConfiguration ) const VULKAN_HPP_NOEXCEPT
+ void vkDestroyInstance( VkInstance instance, const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkAcquirePerformanceConfigurationINTEL( device, pAcquireInfo, pConfiguration );
+ return ::vkDestroyInstance( instance, pAllocator );
}
- VkResult vkAcquireProfilingLockKHR( VkDevice device, const VkAcquireProfilingLockInfoKHR* pInfo ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkEnumeratePhysicalDevices( VkInstance instance,
+ uint32_t * pPhysicalDeviceCount,
+ VkPhysicalDevice * pPhysicalDevices ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkAcquireProfilingLockKHR( device, pInfo );
+ return ::vkEnumeratePhysicalDevices( instance, pPhysicalDeviceCount, pPhysicalDevices );
}
-#ifdef VK_USE_PLATFORM_XLIB_XRANDR_EXT
- VkResult vkAcquireXlibDisplayEXT( VkPhysicalDevice physicalDevice, Display* dpy, VkDisplayKHR display ) const VULKAN_HPP_NOEXCEPT
+ void vkGetPhysicalDeviceFeatures( VkPhysicalDevice physicalDevice,
+ VkPhysicalDeviceFeatures * pFeatures ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkAcquireXlibDisplayEXT( physicalDevice, dpy, display );
+ return ::vkGetPhysicalDeviceFeatures( physicalDevice, pFeatures );
}
-#endif /*VK_USE_PLATFORM_XLIB_XRANDR_EXT*/
- VkResult vkAllocateCommandBuffers( VkDevice device, const VkCommandBufferAllocateInfo* pAllocateInfo, VkCommandBuffer* pCommandBuffers ) const VULKAN_HPP_NOEXCEPT
+ void vkGetPhysicalDeviceFormatProperties( VkPhysicalDevice physicalDevice,
+ VkFormat format,
+ VkFormatProperties * pFormatProperties ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkAllocateCommandBuffers( device, pAllocateInfo, pCommandBuffers );
+ return ::vkGetPhysicalDeviceFormatProperties( physicalDevice, format, pFormatProperties );
}
- VkResult vkAllocateDescriptorSets( VkDevice device, const VkDescriptorSetAllocateInfo* pAllocateInfo, VkDescriptorSet* pDescriptorSets ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkGetPhysicalDeviceImageFormatProperties( VkPhysicalDevice physicalDevice,
+ VkFormat format,
+ VkImageType type,
+ VkImageTiling tiling,
+ VkImageUsageFlags usage,
+ VkImageCreateFlags flags,
+ VkImageFormatProperties * pImageFormatProperties ) const
+ VULKAN_HPP_NOEXCEPT
{
- return ::vkAllocateDescriptorSets( device, pAllocateInfo, pDescriptorSets );
+ return ::vkGetPhysicalDeviceImageFormatProperties(
+ physicalDevice, format, type, tiling, usage, flags, pImageFormatProperties );
}
- VkResult vkAllocateMemory( VkDevice device, const VkMemoryAllocateInfo* pAllocateInfo, const VkAllocationCallbacks* pAllocator, VkDeviceMemory* pMemory ) const VULKAN_HPP_NOEXCEPT
+ void vkGetPhysicalDeviceProperties( VkPhysicalDevice physicalDevice,
+ VkPhysicalDeviceProperties * pProperties ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkAllocateMemory( device, pAllocateInfo, pAllocator, pMemory );
+ return ::vkGetPhysicalDeviceProperties( physicalDevice, pProperties );
}
- VkResult vkBeginCommandBuffer( VkCommandBuffer commandBuffer, const VkCommandBufferBeginInfo* pBeginInfo ) const VULKAN_HPP_NOEXCEPT
+ void vkGetPhysicalDeviceQueueFamilyProperties( VkPhysicalDevice physicalDevice,
+ uint32_t * pQueueFamilyPropertyCount,
+ VkQueueFamilyProperties * pQueueFamilyProperties ) const
+ VULKAN_HPP_NOEXCEPT
{
- return ::vkBeginCommandBuffer( commandBuffer, pBeginInfo );
+ return ::vkGetPhysicalDeviceQueueFamilyProperties(
+ physicalDevice, pQueueFamilyPropertyCount, pQueueFamilyProperties );
}
- VkResult vkBindAccelerationStructureMemoryNV( VkDevice device, uint32_t bindInfoCount, const VkBindAccelerationStructureMemoryInfoNV* pBindInfos ) const VULKAN_HPP_NOEXCEPT
+ void vkGetPhysicalDeviceMemoryProperties(
+ VkPhysicalDevice physicalDevice, VkPhysicalDeviceMemoryProperties * pMemoryProperties ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkBindAccelerationStructureMemoryNV( device, bindInfoCount, pBindInfos );
+ return ::vkGetPhysicalDeviceMemoryProperties( physicalDevice, pMemoryProperties );
}
- VkResult vkBindBufferMemory( VkDevice device, VkBuffer buffer, VkDeviceMemory memory, VkDeviceSize memoryOffset ) const VULKAN_HPP_NOEXCEPT
+ PFN_vkVoidFunction vkGetInstanceProcAddr( VkInstance instance, const char * pName ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkBindBufferMemory( device, buffer, memory, memoryOffset );
+ return ::vkGetInstanceProcAddr( instance, pName );
}
- VkResult vkBindBufferMemory2( VkDevice device, uint32_t bindInfoCount, const VkBindBufferMemoryInfo* pBindInfos ) const VULKAN_HPP_NOEXCEPT
+ PFN_vkVoidFunction vkGetDeviceProcAddr( VkDevice device, const char * pName ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkBindBufferMemory2( device, bindInfoCount, pBindInfos );
+ return ::vkGetDeviceProcAddr( device, pName );
}
- VkResult vkBindBufferMemory2KHR( VkDevice device, uint32_t bindInfoCount, const VkBindBufferMemoryInfo* pBindInfos ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkCreateDevice( VkPhysicalDevice physicalDevice,
+ const VkDeviceCreateInfo * pCreateInfo,
+ const VkAllocationCallbacks * pAllocator,
+ VkDevice * pDevice ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkBindBufferMemory2KHR( device, bindInfoCount, pBindInfos );
+ return ::vkCreateDevice( physicalDevice, pCreateInfo, pAllocator, pDevice );
}
- VkResult vkBindImageMemory( VkDevice device, VkImage image, VkDeviceMemory memory, VkDeviceSize memoryOffset ) const VULKAN_HPP_NOEXCEPT
+ void vkDestroyDevice( VkDevice device, const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkBindImageMemory( device, image, memory, memoryOffset );
+ return ::vkDestroyDevice( device, pAllocator );
}
- VkResult vkBindImageMemory2( VkDevice device, uint32_t bindInfoCount, const VkBindImageMemoryInfo* pBindInfos ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkEnumerateInstanceExtensionProperties( const char * pLayerName,
+ uint32_t * pPropertyCount,
+ VkExtensionProperties * pProperties ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkBindImageMemory2( device, bindInfoCount, pBindInfos );
+ return ::vkEnumerateInstanceExtensionProperties( pLayerName, pPropertyCount, pProperties );
}
- VkResult vkBindImageMemory2KHR( VkDevice device, uint32_t bindInfoCount, const VkBindImageMemoryInfo* pBindInfos ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkEnumerateDeviceExtensionProperties( VkPhysicalDevice physicalDevice,
+ const char * pLayerName,
+ uint32_t * pPropertyCount,
+ VkExtensionProperties * pProperties ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkBindImageMemory2KHR( device, bindInfoCount, pBindInfos );
+ return ::vkEnumerateDeviceExtensionProperties( physicalDevice, pLayerName, pPropertyCount, pProperties );
}
- VkResult vkBuildAccelerationStructuresKHR( VkDevice device, VkDeferredOperationKHR deferredOperation, uint32_t infoCount, const VkAccelerationStructureBuildGeometryInfoKHR* pInfos, const VkAccelerationStructureBuildRangeInfoKHR* const * ppBuildRangeInfos ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkEnumerateInstanceLayerProperties( uint32_t * pPropertyCount,
+ VkLayerProperties * pProperties ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkBuildAccelerationStructuresKHR( device, deferredOperation, infoCount, pInfos, ppBuildRangeInfos );
+ return ::vkEnumerateInstanceLayerProperties( pPropertyCount, pProperties );
}
- void vkCmdBeginConditionalRenderingEXT( VkCommandBuffer commandBuffer, const VkConditionalRenderingBeginInfoEXT* pConditionalRenderingBegin ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkEnumerateDeviceLayerProperties( VkPhysicalDevice physicalDevice,
+ uint32_t * pPropertyCount,
+ VkLayerProperties * pProperties ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdBeginConditionalRenderingEXT( commandBuffer, pConditionalRenderingBegin );
+ return ::vkEnumerateDeviceLayerProperties( physicalDevice, pPropertyCount, pProperties );
}
- void vkCmdBeginDebugUtilsLabelEXT( VkCommandBuffer commandBuffer, const VkDebugUtilsLabelEXT* pLabelInfo ) const VULKAN_HPP_NOEXCEPT
+ void vkGetDeviceQueue( VkDevice device,
+ uint32_t queueFamilyIndex,
+ uint32_t queueIndex,
+ VkQueue * pQueue ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdBeginDebugUtilsLabelEXT( commandBuffer, pLabelInfo );
+ return ::vkGetDeviceQueue( device, queueFamilyIndex, queueIndex, pQueue );
}
- void vkCmdBeginQuery( VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t query, VkQueryControlFlags flags ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkQueueSubmit( VkQueue queue,
+ uint32_t submitCount,
+ const VkSubmitInfo * pSubmits,
+ VkFence fence ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdBeginQuery( commandBuffer, queryPool, query, flags );
+ return ::vkQueueSubmit( queue, submitCount, pSubmits, fence );
}
- void vkCmdBeginQueryIndexedEXT( VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t query, VkQueryControlFlags flags, uint32_t index ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkQueueWaitIdle( VkQueue queue ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdBeginQueryIndexedEXT( commandBuffer, queryPool, query, flags, index );
+ return ::vkQueueWaitIdle( queue );
}
- void vkCmdBeginRenderPass( VkCommandBuffer commandBuffer, const VkRenderPassBeginInfo* pRenderPassBegin, VkSubpassContents contents ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkDeviceWaitIdle( VkDevice device ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdBeginRenderPass( commandBuffer, pRenderPassBegin, contents );
+ return ::vkDeviceWaitIdle( device );
}
- void vkCmdBeginRenderPass2( VkCommandBuffer commandBuffer, const VkRenderPassBeginInfo* pRenderPassBegin, const VkSubpassBeginInfo* pSubpassBeginInfo ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkAllocateMemory( VkDevice device,
+ const VkMemoryAllocateInfo * pAllocateInfo,
+ const VkAllocationCallbacks * pAllocator,
+ VkDeviceMemory * pMemory ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdBeginRenderPass2( commandBuffer, pRenderPassBegin, pSubpassBeginInfo );
+ return ::vkAllocateMemory( device, pAllocateInfo, pAllocator, pMemory );
}
- void vkCmdBeginRenderPass2KHR( VkCommandBuffer commandBuffer, const VkRenderPassBeginInfo* pRenderPassBegin, const VkSubpassBeginInfo* pSubpassBeginInfo ) const VULKAN_HPP_NOEXCEPT
+ void vkFreeMemory( VkDevice device,
+ VkDeviceMemory memory,
+ const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdBeginRenderPass2KHR( commandBuffer, pRenderPassBegin, pSubpassBeginInfo );
+ return ::vkFreeMemory( device, memory, pAllocator );
}
- void vkCmdBeginTransformFeedbackEXT( VkCommandBuffer commandBuffer, uint32_t firstCounterBuffer, uint32_t counterBufferCount, const VkBuffer* pCounterBuffers, const VkDeviceSize* pCounterBufferOffsets ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkMapMemory( VkDevice device,
+ VkDeviceMemory memory,
+ VkDeviceSize offset,
+ VkDeviceSize size,
+ VkMemoryMapFlags flags,
+ void ** ppData ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdBeginTransformFeedbackEXT( commandBuffer, firstCounterBuffer, counterBufferCount, pCounterBuffers, pCounterBufferOffsets );
+ return ::vkMapMemory( device, memory, offset, size, flags, ppData );
}
- void vkCmdBindDescriptorSets( VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipelineLayout layout, uint32_t firstSet, uint32_t descriptorSetCount, const VkDescriptorSet* pDescriptorSets, uint32_t dynamicOffsetCount, const uint32_t* pDynamicOffsets ) const VULKAN_HPP_NOEXCEPT
+ void vkUnmapMemory( VkDevice device, VkDeviceMemory memory ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdBindDescriptorSets( commandBuffer, pipelineBindPoint, layout, firstSet, descriptorSetCount, pDescriptorSets, dynamicOffsetCount, pDynamicOffsets );
+ return ::vkUnmapMemory( device, memory );
}
- void vkCmdBindIndexBuffer( VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkIndexType indexType ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkFlushMappedMemoryRanges( VkDevice device,
+ uint32_t memoryRangeCount,
+ const VkMappedMemoryRange * pMemoryRanges ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdBindIndexBuffer( commandBuffer, buffer, offset, indexType );
+ return ::vkFlushMappedMemoryRanges( device, memoryRangeCount, pMemoryRanges );
}
- void vkCmdBindPipeline( VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipeline pipeline ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkInvalidateMappedMemoryRanges( VkDevice device,
+ uint32_t memoryRangeCount,
+ const VkMappedMemoryRange * pMemoryRanges ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdBindPipeline( commandBuffer, pipelineBindPoint, pipeline );
+ return ::vkInvalidateMappedMemoryRanges( device, memoryRangeCount, pMemoryRanges );
}
- void vkCmdBindPipelineShaderGroupNV( VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipeline pipeline, uint32_t groupIndex ) const VULKAN_HPP_NOEXCEPT
+ void vkGetDeviceMemoryCommitment( VkDevice device,
+ VkDeviceMemory memory,
+ VkDeviceSize * pCommittedMemoryInBytes ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdBindPipelineShaderGroupNV( commandBuffer, pipelineBindPoint, pipeline, groupIndex );
+ return ::vkGetDeviceMemoryCommitment( device, memory, pCommittedMemoryInBytes );
}
- void vkCmdBindShadingRateImageNV( VkCommandBuffer commandBuffer, VkImageView imageView, VkImageLayout imageLayout ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkBindBufferMemory( VkDevice device,
+ VkBuffer buffer,
+ VkDeviceMemory memory,
+ VkDeviceSize memoryOffset ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdBindShadingRateImageNV( commandBuffer, imageView, imageLayout );
+ return ::vkBindBufferMemory( device, buffer, memory, memoryOffset );
}
- void vkCmdBindTransformFeedbackBuffersEXT( VkCommandBuffer commandBuffer, uint32_t firstBinding, uint32_t bindingCount, const VkBuffer* pBuffers, const VkDeviceSize* pOffsets, const VkDeviceSize* pSizes ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkBindImageMemory( VkDevice device,
+ VkImage image,
+ VkDeviceMemory memory,
+ VkDeviceSize memoryOffset ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdBindTransformFeedbackBuffersEXT( commandBuffer, firstBinding, bindingCount, pBuffers, pOffsets, pSizes );
+ return ::vkBindImageMemory( device, image, memory, memoryOffset );
}
- void vkCmdBindVertexBuffers( VkCommandBuffer commandBuffer, uint32_t firstBinding, uint32_t bindingCount, const VkBuffer* pBuffers, const VkDeviceSize* pOffsets ) const VULKAN_HPP_NOEXCEPT
+ void vkGetBufferMemoryRequirements( VkDevice device,
+ VkBuffer buffer,
+ VkMemoryRequirements * pMemoryRequirements ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdBindVertexBuffers( commandBuffer, firstBinding, bindingCount, pBuffers, pOffsets );
+ return ::vkGetBufferMemoryRequirements( device, buffer, pMemoryRequirements );
}
- void vkCmdBindVertexBuffers2EXT( VkCommandBuffer commandBuffer, uint32_t firstBinding, uint32_t bindingCount, const VkBuffer* pBuffers, const VkDeviceSize* pOffsets, const VkDeviceSize* pSizes, const VkDeviceSize* pStrides ) const VULKAN_HPP_NOEXCEPT
+ void vkGetImageMemoryRequirements( VkDevice device,
+ VkImage image,
+ VkMemoryRequirements * pMemoryRequirements ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdBindVertexBuffers2EXT( commandBuffer, firstBinding, bindingCount, pBuffers, pOffsets, pSizes, pStrides );
+ return ::vkGetImageMemoryRequirements( device, image, pMemoryRequirements );
}
- void vkCmdBlitImage( VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkImage dstImage, VkImageLayout dstImageLayout, uint32_t regionCount, const VkImageBlit* pRegions, VkFilter filter ) const VULKAN_HPP_NOEXCEPT
+ void vkGetImageSparseMemoryRequirements( VkDevice device,
+ VkImage image,
+ uint32_t * pSparseMemoryRequirementCount,
+ VkSparseImageMemoryRequirements * pSparseMemoryRequirements ) const
+ VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdBlitImage( commandBuffer, srcImage, srcImageLayout, dstImage, dstImageLayout, regionCount, pRegions, filter );
+ return ::vkGetImageSparseMemoryRequirements(
+ device, image, pSparseMemoryRequirementCount, pSparseMemoryRequirements );
}
- void vkCmdBlitImage2KHR( VkCommandBuffer commandBuffer, const VkBlitImageInfo2KHR* pBlitImageInfo ) const VULKAN_HPP_NOEXCEPT
+ void vkGetPhysicalDeviceSparseImageFormatProperties( VkPhysicalDevice physicalDevice,
+ VkFormat format,
+ VkImageType type,
+ VkSampleCountFlagBits samples,
+ VkImageUsageFlags usage,
+ VkImageTiling tiling,
+ uint32_t * pPropertyCount,
+ VkSparseImageFormatProperties * pProperties ) const
+ VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdBlitImage2KHR( commandBuffer, pBlitImageInfo );
+ return ::vkGetPhysicalDeviceSparseImageFormatProperties(
+ physicalDevice, format, type, samples, usage, tiling, pPropertyCount, pProperties );
}
- void vkCmdBuildAccelerationStructureNV( VkCommandBuffer commandBuffer, const VkAccelerationStructureInfoNV* pInfo, VkBuffer instanceData, VkDeviceSize instanceOffset, VkBool32 update, VkAccelerationStructureNV dst, VkAccelerationStructureNV src, VkBuffer scratch, VkDeviceSize scratchOffset ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkQueueBindSparse( VkQueue queue,
+ uint32_t bindInfoCount,
+ const VkBindSparseInfo * pBindInfo,
+ VkFence fence ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdBuildAccelerationStructureNV( commandBuffer, pInfo, instanceData, instanceOffset, update, dst, src, scratch, scratchOffset );
+ return ::vkQueueBindSparse( queue, bindInfoCount, pBindInfo, fence );
}
- void vkCmdBuildAccelerationStructuresIndirectKHR( VkCommandBuffer commandBuffer, uint32_t infoCount, const VkAccelerationStructureBuildGeometryInfoKHR* pInfos, const VkDeviceAddress* pIndirectDeviceAddresses, const uint32_t* pIndirectStrides, const uint32_t* const * ppMaxPrimitiveCounts ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkCreateFence( VkDevice device,
+ const VkFenceCreateInfo * pCreateInfo,
+ const VkAllocationCallbacks * pAllocator,
+ VkFence * pFence ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdBuildAccelerationStructuresIndirectKHR( commandBuffer, infoCount, pInfos, pIndirectDeviceAddresses, pIndirectStrides, ppMaxPrimitiveCounts );
+ return ::vkCreateFence( device, pCreateInfo, pAllocator, pFence );
}
- void vkCmdBuildAccelerationStructuresKHR( VkCommandBuffer commandBuffer, uint32_t infoCount, const VkAccelerationStructureBuildGeometryInfoKHR* pInfos, const VkAccelerationStructureBuildRangeInfoKHR* const * ppBuildRangeInfos ) const VULKAN_HPP_NOEXCEPT
+ void vkDestroyFence( VkDevice device,
+ VkFence fence,
+ const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdBuildAccelerationStructuresKHR( commandBuffer, infoCount, pInfos, ppBuildRangeInfos );
+ return ::vkDestroyFence( device, fence, pAllocator );
}
- void vkCmdClearAttachments( VkCommandBuffer commandBuffer, uint32_t attachmentCount, const VkClearAttachment* pAttachments, uint32_t rectCount, const VkClearRect* pRects ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkResetFences( VkDevice device, uint32_t fenceCount, const VkFence * pFences ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdClearAttachments( commandBuffer, attachmentCount, pAttachments, rectCount, pRects );
+ return ::vkResetFences( device, fenceCount, pFences );
}
- void vkCmdClearColorImage( VkCommandBuffer commandBuffer, VkImage image, VkImageLayout imageLayout, const VkClearColorValue* pColor, uint32_t rangeCount, const VkImageSubresourceRange* pRanges ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkGetFenceStatus( VkDevice device, VkFence fence ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdClearColorImage( commandBuffer, image, imageLayout, pColor, rangeCount, pRanges );
+ return ::vkGetFenceStatus( device, fence );
}
- void vkCmdClearDepthStencilImage( VkCommandBuffer commandBuffer, VkImage image, VkImageLayout imageLayout, const VkClearDepthStencilValue* pDepthStencil, uint32_t rangeCount, const VkImageSubresourceRange* pRanges ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkWaitForFences( VkDevice device,
+ uint32_t fenceCount,
+ const VkFence * pFences,
+ VkBool32 waitAll,
+ uint64_t timeout ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdClearDepthStencilImage( commandBuffer, image, imageLayout, pDepthStencil, rangeCount, pRanges );
+ return ::vkWaitForFences( device, fenceCount, pFences, waitAll, timeout );
}
- void vkCmdCopyAccelerationStructureKHR( VkCommandBuffer commandBuffer, const VkCopyAccelerationStructureInfoKHR* pInfo ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkCreateSemaphore( VkDevice device,
+ const VkSemaphoreCreateInfo * pCreateInfo,
+ const VkAllocationCallbacks * pAllocator,
+ VkSemaphore * pSemaphore ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdCopyAccelerationStructureKHR( commandBuffer, pInfo );
+ return ::vkCreateSemaphore( device, pCreateInfo, pAllocator, pSemaphore );
}
- void vkCmdCopyAccelerationStructureNV( VkCommandBuffer commandBuffer, VkAccelerationStructureNV dst, VkAccelerationStructureNV src, VkCopyAccelerationStructureModeKHR mode ) const VULKAN_HPP_NOEXCEPT
+ void vkDestroySemaphore( VkDevice device,
+ VkSemaphore semaphore,
+ const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdCopyAccelerationStructureNV( commandBuffer, dst, src, mode );
+ return ::vkDestroySemaphore( device, semaphore, pAllocator );
}
- void vkCmdCopyAccelerationStructureToMemoryKHR( VkCommandBuffer commandBuffer, const VkCopyAccelerationStructureToMemoryInfoKHR* pInfo ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkCreateEvent( VkDevice device,
+ const VkEventCreateInfo * pCreateInfo,
+ const VkAllocationCallbacks * pAllocator,
+ VkEvent * pEvent ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdCopyAccelerationStructureToMemoryKHR( commandBuffer, pInfo );
+ return ::vkCreateEvent( device, pCreateInfo, pAllocator, pEvent );
}
- void vkCmdCopyBuffer( VkCommandBuffer commandBuffer, VkBuffer srcBuffer, VkBuffer dstBuffer, uint32_t regionCount, const VkBufferCopy* pRegions ) const VULKAN_HPP_NOEXCEPT
+ void vkDestroyEvent( VkDevice device,
+ VkEvent event,
+ const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdCopyBuffer( commandBuffer, srcBuffer, dstBuffer, regionCount, pRegions );
+ return ::vkDestroyEvent( device, event, pAllocator );
}
- void vkCmdCopyBuffer2KHR( VkCommandBuffer commandBuffer, const VkCopyBufferInfo2KHR* pCopyBufferInfo ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkGetEventStatus( VkDevice device, VkEvent event ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdCopyBuffer2KHR( commandBuffer, pCopyBufferInfo );
+ return ::vkGetEventStatus( device, event );
}
- void vkCmdCopyBufferToImage( VkCommandBuffer commandBuffer, VkBuffer srcBuffer, VkImage dstImage, VkImageLayout dstImageLayout, uint32_t regionCount, const VkBufferImageCopy* pRegions ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkSetEvent( VkDevice device, VkEvent event ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdCopyBufferToImage( commandBuffer, srcBuffer, dstImage, dstImageLayout, regionCount, pRegions );
+ return ::vkSetEvent( device, event );
}
- void vkCmdCopyBufferToImage2KHR( VkCommandBuffer commandBuffer, const VkCopyBufferToImageInfo2KHR* pCopyBufferToImageInfo ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkResetEvent( VkDevice device, VkEvent event ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdCopyBufferToImage2KHR( commandBuffer, pCopyBufferToImageInfo );
+ return ::vkResetEvent( device, event );
}
- void vkCmdCopyImage( VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkImage dstImage, VkImageLayout dstImageLayout, uint32_t regionCount, const VkImageCopy* pRegions ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkCreateQueryPool( VkDevice device,
+ const VkQueryPoolCreateInfo * pCreateInfo,
+ const VkAllocationCallbacks * pAllocator,
+ VkQueryPool * pQueryPool ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdCopyImage( commandBuffer, srcImage, srcImageLayout, dstImage, dstImageLayout, regionCount, pRegions );
+ return ::vkCreateQueryPool( device, pCreateInfo, pAllocator, pQueryPool );
}
- void vkCmdCopyImage2KHR( VkCommandBuffer commandBuffer, const VkCopyImageInfo2KHR* pCopyImageInfo ) const VULKAN_HPP_NOEXCEPT
+ void vkDestroyQueryPool( VkDevice device,
+ VkQueryPool queryPool,
+ const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdCopyImage2KHR( commandBuffer, pCopyImageInfo );
+ return ::vkDestroyQueryPool( device, queryPool, pAllocator );
}
- void vkCmdCopyImageToBuffer( VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkBuffer dstBuffer, uint32_t regionCount, const VkBufferImageCopy* pRegions ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkGetQueryPoolResults( VkDevice device,
+ VkQueryPool queryPool,
+ uint32_t firstQuery,
+ uint32_t queryCount,
+ size_t dataSize,
+ void * pData,
+ VkDeviceSize stride,
+ VkQueryResultFlags flags ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdCopyImageToBuffer( commandBuffer, srcImage, srcImageLayout, dstBuffer, regionCount, pRegions );
+ return ::vkGetQueryPoolResults( device, queryPool, firstQuery, queryCount, dataSize, pData, stride, flags );
}
- void vkCmdCopyImageToBuffer2KHR( VkCommandBuffer commandBuffer, const VkCopyImageToBufferInfo2KHR* pCopyImageToBufferInfo ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkCreateBuffer( VkDevice device,
+ const VkBufferCreateInfo * pCreateInfo,
+ const VkAllocationCallbacks * pAllocator,
+ VkBuffer * pBuffer ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdCopyImageToBuffer2KHR( commandBuffer, pCopyImageToBufferInfo );
+ return ::vkCreateBuffer( device, pCreateInfo, pAllocator, pBuffer );
}
- void vkCmdCopyMemoryToAccelerationStructureKHR( VkCommandBuffer commandBuffer, const VkCopyMemoryToAccelerationStructureInfoKHR* pInfo ) const VULKAN_HPP_NOEXCEPT
+ void vkDestroyBuffer( VkDevice device,
+ VkBuffer buffer,
+ const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdCopyMemoryToAccelerationStructureKHR( commandBuffer, pInfo );
+ return ::vkDestroyBuffer( device, buffer, pAllocator );
}
- void vkCmdCopyQueryPoolResults( VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t firstQuery, uint32_t queryCount, VkBuffer dstBuffer, VkDeviceSize dstOffset, VkDeviceSize stride, VkQueryResultFlags flags ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkCreateBufferView( VkDevice device,
+ const VkBufferViewCreateInfo * pCreateInfo,
+ const VkAllocationCallbacks * pAllocator,
+ VkBufferView * pView ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdCopyQueryPoolResults( commandBuffer, queryPool, firstQuery, queryCount, dstBuffer, dstOffset, stride, flags );
+ return ::vkCreateBufferView( device, pCreateInfo, pAllocator, pView );
}
- void vkCmdDebugMarkerBeginEXT( VkCommandBuffer commandBuffer, const VkDebugMarkerMarkerInfoEXT* pMarkerInfo ) const VULKAN_HPP_NOEXCEPT
+ void vkDestroyBufferView( VkDevice device,
+ VkBufferView bufferView,
+ const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdDebugMarkerBeginEXT( commandBuffer, pMarkerInfo );
+ return ::vkDestroyBufferView( device, bufferView, pAllocator );
}
- void vkCmdDebugMarkerEndEXT( VkCommandBuffer commandBuffer ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkCreateImage( VkDevice device,
+ const VkImageCreateInfo * pCreateInfo,
+ const VkAllocationCallbacks * pAllocator,
+ VkImage * pImage ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdDebugMarkerEndEXT( commandBuffer );
+ return ::vkCreateImage( device, pCreateInfo, pAllocator, pImage );
}
- void vkCmdDebugMarkerInsertEXT( VkCommandBuffer commandBuffer, const VkDebugMarkerMarkerInfoEXT* pMarkerInfo ) const VULKAN_HPP_NOEXCEPT
+ void vkDestroyImage( VkDevice device,
+ VkImage image,
+ const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdDebugMarkerInsertEXT( commandBuffer, pMarkerInfo );
+ return ::vkDestroyImage( device, image, pAllocator );
}
- void vkCmdDispatch( VkCommandBuffer commandBuffer, uint32_t groupCountX, uint32_t groupCountY, uint32_t groupCountZ ) const VULKAN_HPP_NOEXCEPT
+ void vkGetImageSubresourceLayout( VkDevice device,
+ VkImage image,
+ const VkImageSubresource * pSubresource,
+ VkSubresourceLayout * pLayout ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdDispatch( commandBuffer, groupCountX, groupCountY, groupCountZ );
+ return ::vkGetImageSubresourceLayout( device, image, pSubresource, pLayout );
}
- void vkCmdDispatchBase( VkCommandBuffer commandBuffer, uint32_t baseGroupX, uint32_t baseGroupY, uint32_t baseGroupZ, uint32_t groupCountX, uint32_t groupCountY, uint32_t groupCountZ ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkCreateImageView( VkDevice device,
+ const VkImageViewCreateInfo * pCreateInfo,
+ const VkAllocationCallbacks * pAllocator,
+ VkImageView * pView ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdDispatchBase( commandBuffer, baseGroupX, baseGroupY, baseGroupZ, groupCountX, groupCountY, groupCountZ );
+ return ::vkCreateImageView( device, pCreateInfo, pAllocator, pView );
}
- void vkCmdDispatchBaseKHR( VkCommandBuffer commandBuffer, uint32_t baseGroupX, uint32_t baseGroupY, uint32_t baseGroupZ, uint32_t groupCountX, uint32_t groupCountY, uint32_t groupCountZ ) const VULKAN_HPP_NOEXCEPT
+ void vkDestroyImageView( VkDevice device,
+ VkImageView imageView,
+ const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdDispatchBaseKHR( commandBuffer, baseGroupX, baseGroupY, baseGroupZ, groupCountX, groupCountY, groupCountZ );
+ return ::vkDestroyImageView( device, imageView, pAllocator );
}
- void vkCmdDispatchIndirect( VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkCreateShaderModule( VkDevice device,
+ const VkShaderModuleCreateInfo * pCreateInfo,
+ const VkAllocationCallbacks * pAllocator,
+ VkShaderModule * pShaderModule ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdDispatchIndirect( commandBuffer, buffer, offset );
+ return ::vkCreateShaderModule( device, pCreateInfo, pAllocator, pShaderModule );
}
- void vkCmdDraw( VkCommandBuffer commandBuffer, uint32_t vertexCount, uint32_t instanceCount, uint32_t firstVertex, uint32_t firstInstance ) const VULKAN_HPP_NOEXCEPT
+ void vkDestroyShaderModule( VkDevice device,
+ VkShaderModule shaderModule,
+ const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdDraw( commandBuffer, vertexCount, instanceCount, firstVertex, firstInstance );
+ return ::vkDestroyShaderModule( device, shaderModule, pAllocator );
}
- void vkCmdDrawIndexed( VkCommandBuffer commandBuffer, uint32_t indexCount, uint32_t instanceCount, uint32_t firstIndex, int32_t vertexOffset, uint32_t firstInstance ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkCreatePipelineCache( VkDevice device,
+ const VkPipelineCacheCreateInfo * pCreateInfo,
+ const VkAllocationCallbacks * pAllocator,
+ VkPipelineCache * pPipelineCache ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdDrawIndexed( commandBuffer, indexCount, instanceCount, firstIndex, vertexOffset, firstInstance );
+ return ::vkCreatePipelineCache( device, pCreateInfo, pAllocator, pPipelineCache );
}
- void vkCmdDrawIndexedIndirect( VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, uint32_t drawCount, uint32_t stride ) const VULKAN_HPP_NOEXCEPT
+ void vkDestroyPipelineCache( VkDevice device,
+ VkPipelineCache pipelineCache,
+ const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdDrawIndexedIndirect( commandBuffer, buffer, offset, drawCount, stride );
+ return ::vkDestroyPipelineCache( device, pipelineCache, pAllocator );
}
- void vkCmdDrawIndexedIndirectCount( VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkBuffer countBuffer, VkDeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkGetPipelineCacheData( VkDevice device,
+ VkPipelineCache pipelineCache,
+ size_t * pDataSize,
+ void * pData ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdDrawIndexedIndirectCount( commandBuffer, buffer, offset, countBuffer, countBufferOffset, maxDrawCount, stride );
+ return ::vkGetPipelineCacheData( device, pipelineCache, pDataSize, pData );
}
- void vkCmdDrawIndexedIndirectCountAMD( VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkBuffer countBuffer, VkDeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkMergePipelineCaches( VkDevice device,
+ VkPipelineCache dstCache,
+ uint32_t srcCacheCount,
+ const VkPipelineCache * pSrcCaches ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdDrawIndexedIndirectCountAMD( commandBuffer, buffer, offset, countBuffer, countBufferOffset, maxDrawCount, stride );
+ return ::vkMergePipelineCaches( device, dstCache, srcCacheCount, pSrcCaches );
}
- void vkCmdDrawIndexedIndirectCountKHR( VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkBuffer countBuffer, VkDeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkCreateGraphicsPipelines( VkDevice device,
+ VkPipelineCache pipelineCache,
+ uint32_t createInfoCount,
+ const VkGraphicsPipelineCreateInfo * pCreateInfos,
+ const VkAllocationCallbacks * pAllocator,
+ VkPipeline * pPipelines ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdDrawIndexedIndirectCountKHR( commandBuffer, buffer, offset, countBuffer, countBufferOffset, maxDrawCount, stride );
+ return ::vkCreateGraphicsPipelines(
+ device, pipelineCache, createInfoCount, pCreateInfos, pAllocator, pPipelines );
}
- void vkCmdDrawIndirect( VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, uint32_t drawCount, uint32_t stride ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkCreateComputePipelines( VkDevice device,
+ VkPipelineCache pipelineCache,
+ uint32_t createInfoCount,
+ const VkComputePipelineCreateInfo * pCreateInfos,
+ const VkAllocationCallbacks * pAllocator,
+ VkPipeline * pPipelines ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdDrawIndirect( commandBuffer, buffer, offset, drawCount, stride );
+ return ::vkCreateComputePipelines( device, pipelineCache, createInfoCount, pCreateInfos, pAllocator, pPipelines );
}
- void vkCmdDrawIndirectByteCountEXT( VkCommandBuffer commandBuffer, uint32_t instanceCount, uint32_t firstInstance, VkBuffer counterBuffer, VkDeviceSize counterBufferOffset, uint32_t counterOffset, uint32_t vertexStride ) const VULKAN_HPP_NOEXCEPT
+ void vkDestroyPipeline( VkDevice device,
+ VkPipeline pipeline,
+ const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdDrawIndirectByteCountEXT( commandBuffer, instanceCount, firstInstance, counterBuffer, counterBufferOffset, counterOffset, vertexStride );
+ return ::vkDestroyPipeline( device, pipeline, pAllocator );
}
- void vkCmdDrawIndirectCount( VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkBuffer countBuffer, VkDeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkCreatePipelineLayout( VkDevice device,
+ const VkPipelineLayoutCreateInfo * pCreateInfo,
+ const VkAllocationCallbacks * pAllocator,
+ VkPipelineLayout * pPipelineLayout ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdDrawIndirectCount( commandBuffer, buffer, offset, countBuffer, countBufferOffset, maxDrawCount, stride );
+ return ::vkCreatePipelineLayout( device, pCreateInfo, pAllocator, pPipelineLayout );
}
- void vkCmdDrawIndirectCountAMD( VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkBuffer countBuffer, VkDeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride ) const VULKAN_HPP_NOEXCEPT
+ void vkDestroyPipelineLayout( VkDevice device,
+ VkPipelineLayout pipelineLayout,
+ const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdDrawIndirectCountAMD( commandBuffer, buffer, offset, countBuffer, countBufferOffset, maxDrawCount, stride );
+ return ::vkDestroyPipelineLayout( device, pipelineLayout, pAllocator );
}
- void vkCmdDrawIndirectCountKHR( VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkBuffer countBuffer, VkDeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkCreateSampler( VkDevice device,
+ const VkSamplerCreateInfo * pCreateInfo,
+ const VkAllocationCallbacks * pAllocator,
+ VkSampler * pSampler ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdDrawIndirectCountKHR( commandBuffer, buffer, offset, countBuffer, countBufferOffset, maxDrawCount, stride );
+ return ::vkCreateSampler( device, pCreateInfo, pAllocator, pSampler );
}
- void vkCmdDrawMeshTasksIndirectCountNV( VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkBuffer countBuffer, VkDeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride ) const VULKAN_HPP_NOEXCEPT
+ void vkDestroySampler( VkDevice device,
+ VkSampler sampler,
+ const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdDrawMeshTasksIndirectCountNV( commandBuffer, buffer, offset, countBuffer, countBufferOffset, maxDrawCount, stride );
+ return ::vkDestroySampler( device, sampler, pAllocator );
}
- void vkCmdDrawMeshTasksIndirectNV( VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, uint32_t drawCount, uint32_t stride ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkCreateDescriptorSetLayout( VkDevice device,
+ const VkDescriptorSetLayoutCreateInfo * pCreateInfo,
+ const VkAllocationCallbacks * pAllocator,
+ VkDescriptorSetLayout * pSetLayout ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdDrawMeshTasksIndirectNV( commandBuffer, buffer, offset, drawCount, stride );
+ return ::vkCreateDescriptorSetLayout( device, pCreateInfo, pAllocator, pSetLayout );
}
- void vkCmdDrawMeshTasksNV( VkCommandBuffer commandBuffer, uint32_t taskCount, uint32_t firstTask ) const VULKAN_HPP_NOEXCEPT
+ void vkDestroyDescriptorSetLayout( VkDevice device,
+ VkDescriptorSetLayout descriptorSetLayout,
+ const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdDrawMeshTasksNV( commandBuffer, taskCount, firstTask );
+ return ::vkDestroyDescriptorSetLayout( device, descriptorSetLayout, pAllocator );
}
- void vkCmdEndConditionalRenderingEXT( VkCommandBuffer commandBuffer ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkCreateDescriptorPool( VkDevice device,
+ const VkDescriptorPoolCreateInfo * pCreateInfo,
+ const VkAllocationCallbacks * pAllocator,
+ VkDescriptorPool * pDescriptorPool ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdEndConditionalRenderingEXT( commandBuffer );
+ return ::vkCreateDescriptorPool( device, pCreateInfo, pAllocator, pDescriptorPool );
}
- void vkCmdEndDebugUtilsLabelEXT( VkCommandBuffer commandBuffer ) const VULKAN_HPP_NOEXCEPT
+ void vkDestroyDescriptorPool( VkDevice device,
+ VkDescriptorPool descriptorPool,
+ const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdEndDebugUtilsLabelEXT( commandBuffer );
+ return ::vkDestroyDescriptorPool( device, descriptorPool, pAllocator );
}
- void vkCmdEndQuery( VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t query ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkResetDescriptorPool( VkDevice device,
+ VkDescriptorPool descriptorPool,
+ VkDescriptorPoolResetFlags flags ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdEndQuery( commandBuffer, queryPool, query );
+ return ::vkResetDescriptorPool( device, descriptorPool, flags );
}
- void vkCmdEndQueryIndexedEXT( VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t query, uint32_t index ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkAllocateDescriptorSets( VkDevice device,
+ const VkDescriptorSetAllocateInfo * pAllocateInfo,
+ VkDescriptorSet * pDescriptorSets ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdEndQueryIndexedEXT( commandBuffer, queryPool, query, index );
+ return ::vkAllocateDescriptorSets( device, pAllocateInfo, pDescriptorSets );
}
- void vkCmdEndRenderPass( VkCommandBuffer commandBuffer ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkFreeDescriptorSets( VkDevice device,
+ VkDescriptorPool descriptorPool,
+ uint32_t descriptorSetCount,
+ const VkDescriptorSet * pDescriptorSets ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdEndRenderPass( commandBuffer );
+ return ::vkFreeDescriptorSets( device, descriptorPool, descriptorSetCount, pDescriptorSets );
}
- void vkCmdEndRenderPass2( VkCommandBuffer commandBuffer, const VkSubpassEndInfo* pSubpassEndInfo ) const VULKAN_HPP_NOEXCEPT
+ void vkUpdateDescriptorSets( VkDevice device,
+ uint32_t descriptorWriteCount,
+ const VkWriteDescriptorSet * pDescriptorWrites,
+ uint32_t descriptorCopyCount,
+ const VkCopyDescriptorSet * pDescriptorCopies ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdEndRenderPass2( commandBuffer, pSubpassEndInfo );
+ return ::vkUpdateDescriptorSets(
+ device, descriptorWriteCount, pDescriptorWrites, descriptorCopyCount, pDescriptorCopies );
}
- void vkCmdEndRenderPass2KHR( VkCommandBuffer commandBuffer, const VkSubpassEndInfo* pSubpassEndInfo ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkCreateFramebuffer( VkDevice device,
+ const VkFramebufferCreateInfo * pCreateInfo,
+ const VkAllocationCallbacks * pAllocator,
+ VkFramebuffer * pFramebuffer ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdEndRenderPass2KHR( commandBuffer, pSubpassEndInfo );
+ return ::vkCreateFramebuffer( device, pCreateInfo, pAllocator, pFramebuffer );
}
- void vkCmdEndTransformFeedbackEXT( VkCommandBuffer commandBuffer, uint32_t firstCounterBuffer, uint32_t counterBufferCount, const VkBuffer* pCounterBuffers, const VkDeviceSize* pCounterBufferOffsets ) const VULKAN_HPP_NOEXCEPT
+ void vkDestroyFramebuffer( VkDevice device,
+ VkFramebuffer framebuffer,
+ const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdEndTransformFeedbackEXT( commandBuffer, firstCounterBuffer, counterBufferCount, pCounterBuffers, pCounterBufferOffsets );
+ return ::vkDestroyFramebuffer( device, framebuffer, pAllocator );
}
- void vkCmdExecuteCommands( VkCommandBuffer commandBuffer, uint32_t commandBufferCount, const VkCommandBuffer* pCommandBuffers ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkCreateRenderPass( VkDevice device,
+ const VkRenderPassCreateInfo * pCreateInfo,
+ const VkAllocationCallbacks * pAllocator,
+ VkRenderPass * pRenderPass ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdExecuteCommands( commandBuffer, commandBufferCount, pCommandBuffers );
+ return ::vkCreateRenderPass( device, pCreateInfo, pAllocator, pRenderPass );
}
- void vkCmdExecuteGeneratedCommandsNV( VkCommandBuffer commandBuffer, VkBool32 isPreprocessed, const VkGeneratedCommandsInfoNV* pGeneratedCommandsInfo ) const VULKAN_HPP_NOEXCEPT
+ void vkDestroyRenderPass( VkDevice device,
+ VkRenderPass renderPass,
+ const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdExecuteGeneratedCommandsNV( commandBuffer, isPreprocessed, pGeneratedCommandsInfo );
+ return ::vkDestroyRenderPass( device, renderPass, pAllocator );
}
- void vkCmdFillBuffer( VkCommandBuffer commandBuffer, VkBuffer dstBuffer, VkDeviceSize dstOffset, VkDeviceSize size, uint32_t data ) const VULKAN_HPP_NOEXCEPT
+ void vkGetRenderAreaGranularity( VkDevice device,
+ VkRenderPass renderPass,
+ VkExtent2D * pGranularity ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdFillBuffer( commandBuffer, dstBuffer, dstOffset, size, data );
+ return ::vkGetRenderAreaGranularity( device, renderPass, pGranularity );
}
- void vkCmdInsertDebugUtilsLabelEXT( VkCommandBuffer commandBuffer, const VkDebugUtilsLabelEXT* pLabelInfo ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkCreateCommandPool( VkDevice device,
+ const VkCommandPoolCreateInfo * pCreateInfo,
+ const VkAllocationCallbacks * pAllocator,
+ VkCommandPool * pCommandPool ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdInsertDebugUtilsLabelEXT( commandBuffer, pLabelInfo );
+ return ::vkCreateCommandPool( device, pCreateInfo, pAllocator, pCommandPool );
}
- void vkCmdNextSubpass( VkCommandBuffer commandBuffer, VkSubpassContents contents ) const VULKAN_HPP_NOEXCEPT
+ void vkDestroyCommandPool( VkDevice device,
+ VkCommandPool commandPool,
+ const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdNextSubpass( commandBuffer, contents );
+ return ::vkDestroyCommandPool( device, commandPool, pAllocator );
}
- void vkCmdNextSubpass2( VkCommandBuffer commandBuffer, const VkSubpassBeginInfo* pSubpassBeginInfo, const VkSubpassEndInfo* pSubpassEndInfo ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkResetCommandPool( VkDevice device,
+ VkCommandPool commandPool,
+ VkCommandPoolResetFlags flags ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdNextSubpass2( commandBuffer, pSubpassBeginInfo, pSubpassEndInfo );
+ return ::vkResetCommandPool( device, commandPool, flags );
}
- void vkCmdNextSubpass2KHR( VkCommandBuffer commandBuffer, const VkSubpassBeginInfo* pSubpassBeginInfo, const VkSubpassEndInfo* pSubpassEndInfo ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkAllocateCommandBuffers( VkDevice device,
+ const VkCommandBufferAllocateInfo * pAllocateInfo,
+ VkCommandBuffer * pCommandBuffers ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdNextSubpass2KHR( commandBuffer, pSubpassBeginInfo, pSubpassEndInfo );
+ return ::vkAllocateCommandBuffers( device, pAllocateInfo, pCommandBuffers );
}
- void vkCmdPipelineBarrier( VkCommandBuffer commandBuffer, VkPipelineStageFlags srcStageMask, VkPipelineStageFlags dstStageMask, VkDependencyFlags dependencyFlags, uint32_t memoryBarrierCount, const VkMemoryBarrier* pMemoryBarriers, uint32_t bufferMemoryBarrierCount, const VkBufferMemoryBarrier* pBufferMemoryBarriers, uint32_t imageMemoryBarrierCount, const VkImageMemoryBarrier* pImageMemoryBarriers ) const VULKAN_HPP_NOEXCEPT
+ void vkFreeCommandBuffers( VkDevice device,
+ VkCommandPool commandPool,
+ uint32_t commandBufferCount,
+ const VkCommandBuffer * pCommandBuffers ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdPipelineBarrier( commandBuffer, srcStageMask, dstStageMask, dependencyFlags, memoryBarrierCount, pMemoryBarriers, bufferMemoryBarrierCount, pBufferMemoryBarriers, imageMemoryBarrierCount, pImageMemoryBarriers );
+ return ::vkFreeCommandBuffers( device, commandPool, commandBufferCount, pCommandBuffers );
}
- void vkCmdPreprocessGeneratedCommandsNV( VkCommandBuffer commandBuffer, const VkGeneratedCommandsInfoNV* pGeneratedCommandsInfo ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkBeginCommandBuffer( VkCommandBuffer commandBuffer,
+ const VkCommandBufferBeginInfo * pBeginInfo ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdPreprocessGeneratedCommandsNV( commandBuffer, pGeneratedCommandsInfo );
+ return ::vkBeginCommandBuffer( commandBuffer, pBeginInfo );
}
- void vkCmdPushConstants( VkCommandBuffer commandBuffer, VkPipelineLayout layout, VkShaderStageFlags stageFlags, uint32_t offset, uint32_t size, const void* pValues ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkEndCommandBuffer( VkCommandBuffer commandBuffer ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdPushConstants( commandBuffer, layout, stageFlags, offset, size, pValues );
+ return ::vkEndCommandBuffer( commandBuffer );
}
- void vkCmdPushDescriptorSetKHR( VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipelineLayout layout, uint32_t set, uint32_t descriptorWriteCount, const VkWriteDescriptorSet* pDescriptorWrites ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkResetCommandBuffer( VkCommandBuffer commandBuffer,
+ VkCommandBufferResetFlags flags ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdPushDescriptorSetKHR( commandBuffer, pipelineBindPoint, layout, set, descriptorWriteCount, pDescriptorWrites );
+ return ::vkResetCommandBuffer( commandBuffer, flags );
}
- void vkCmdPushDescriptorSetWithTemplateKHR( VkCommandBuffer commandBuffer, VkDescriptorUpdateTemplate descriptorUpdateTemplate, VkPipelineLayout layout, uint32_t set, const void* pData ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdBindPipeline( VkCommandBuffer commandBuffer,
+ VkPipelineBindPoint pipelineBindPoint,
+ VkPipeline pipeline ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdPushDescriptorSetWithTemplateKHR( commandBuffer, descriptorUpdateTemplate, layout, set, pData );
+ return ::vkCmdBindPipeline( commandBuffer, pipelineBindPoint, pipeline );
}
- void vkCmdResetEvent( VkCommandBuffer commandBuffer, VkEvent event, VkPipelineStageFlags stageMask ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdSetViewport( VkCommandBuffer commandBuffer,
+ uint32_t firstViewport,
+ uint32_t viewportCount,
+ const VkViewport * pViewports ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdResetEvent( commandBuffer, event, stageMask );
+ return ::vkCmdSetViewport( commandBuffer, firstViewport, viewportCount, pViewports );
}
- void vkCmdResetQueryPool( VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t firstQuery, uint32_t queryCount ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdSetScissor( VkCommandBuffer commandBuffer,
+ uint32_t firstScissor,
+ uint32_t scissorCount,
+ const VkRect2D * pScissors ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdResetQueryPool( commandBuffer, queryPool, firstQuery, queryCount );
+ return ::vkCmdSetScissor( commandBuffer, firstScissor, scissorCount, pScissors );
}
- void vkCmdResolveImage( VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkImage dstImage, VkImageLayout dstImageLayout, uint32_t regionCount, const VkImageResolve* pRegions ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdSetLineWidth( VkCommandBuffer commandBuffer, float lineWidth ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdResolveImage( commandBuffer, srcImage, srcImageLayout, dstImage, dstImageLayout, regionCount, pRegions );
+ return ::vkCmdSetLineWidth( commandBuffer, lineWidth );
}
- void vkCmdResolveImage2KHR( VkCommandBuffer commandBuffer, const VkResolveImageInfo2KHR* pResolveImageInfo ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdSetDepthBias( VkCommandBuffer commandBuffer,
+ float depthBiasConstantFactor,
+ float depthBiasClamp,
+ float depthBiasSlopeFactor ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdResolveImage2KHR( commandBuffer, pResolveImageInfo );
+ return ::vkCmdSetDepthBias( commandBuffer, depthBiasConstantFactor, depthBiasClamp, depthBiasSlopeFactor );
}
- void vkCmdSetBlendConstants( VkCommandBuffer commandBuffer, const float blendConstants[4] ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdSetBlendConstants( VkCommandBuffer commandBuffer,
+ const float blendConstants[4] ) const VULKAN_HPP_NOEXCEPT
{
return ::vkCmdSetBlendConstants( commandBuffer, blendConstants );
}
- void vkCmdSetCheckpointNV( VkCommandBuffer commandBuffer, const void* pCheckpointMarker ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkCmdSetCheckpointNV( commandBuffer, pCheckpointMarker );
- }
-
- void vkCmdSetCoarseSampleOrderNV( VkCommandBuffer commandBuffer, VkCoarseSampleOrderTypeNV sampleOrderType, uint32_t customSampleOrderCount, const VkCoarseSampleOrderCustomNV* pCustomSampleOrders ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkCmdSetCoarseSampleOrderNV( commandBuffer, sampleOrderType, customSampleOrderCount, pCustomSampleOrders );
- }
-
- void vkCmdSetCullModeEXT( VkCommandBuffer commandBuffer, VkCullModeFlags cullMode ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkCmdSetCullModeEXT( commandBuffer, cullMode );
- }
-
- void vkCmdSetDepthBias( VkCommandBuffer commandBuffer, float depthBiasConstantFactor, float depthBiasClamp, float depthBiasSlopeFactor ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkCmdSetDepthBias( commandBuffer, depthBiasConstantFactor, depthBiasClamp, depthBiasSlopeFactor );
- }
-
- void vkCmdSetDepthBounds( VkCommandBuffer commandBuffer, float minDepthBounds, float maxDepthBounds ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdSetDepthBounds( VkCommandBuffer commandBuffer,
+ float minDepthBounds,
+ float maxDepthBounds ) const VULKAN_HPP_NOEXCEPT
{
return ::vkCmdSetDepthBounds( commandBuffer, minDepthBounds, maxDepthBounds );
}
- void vkCmdSetDepthBoundsTestEnableEXT( VkCommandBuffer commandBuffer, VkBool32 depthBoundsTestEnable ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdSetStencilCompareMask( VkCommandBuffer commandBuffer,
+ VkStencilFaceFlags faceMask,
+ uint32_t compareMask ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdSetDepthBoundsTestEnableEXT( commandBuffer, depthBoundsTestEnable );
- }
-
- void vkCmdSetDepthCompareOpEXT( VkCommandBuffer commandBuffer, VkCompareOp depthCompareOp ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkCmdSetDepthCompareOpEXT( commandBuffer, depthCompareOp );
- }
-
- void vkCmdSetDepthTestEnableEXT( VkCommandBuffer commandBuffer, VkBool32 depthTestEnable ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkCmdSetDepthTestEnableEXT( commandBuffer, depthTestEnable );
- }
-
- void vkCmdSetDepthWriteEnableEXT( VkCommandBuffer commandBuffer, VkBool32 depthWriteEnable ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkCmdSetDepthWriteEnableEXT( commandBuffer, depthWriteEnable );
- }
-
- void vkCmdSetDeviceMask( VkCommandBuffer commandBuffer, uint32_t deviceMask ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkCmdSetDeviceMask( commandBuffer, deviceMask );
- }
-
- void vkCmdSetDeviceMaskKHR( VkCommandBuffer commandBuffer, uint32_t deviceMask ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkCmdSetDeviceMaskKHR( commandBuffer, deviceMask );
- }
-
- void vkCmdSetDiscardRectangleEXT( VkCommandBuffer commandBuffer, uint32_t firstDiscardRectangle, uint32_t discardRectangleCount, const VkRect2D* pDiscardRectangles ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkCmdSetDiscardRectangleEXT( commandBuffer, firstDiscardRectangle, discardRectangleCount, pDiscardRectangles );
+ return ::vkCmdSetStencilCompareMask( commandBuffer, faceMask, compareMask );
}
- void vkCmdSetEvent( VkCommandBuffer commandBuffer, VkEvent event, VkPipelineStageFlags stageMask ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdSetStencilWriteMask( VkCommandBuffer commandBuffer,
+ VkStencilFaceFlags faceMask,
+ uint32_t writeMask ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdSetEvent( commandBuffer, event, stageMask );
+ return ::vkCmdSetStencilWriteMask( commandBuffer, faceMask, writeMask );
}
- void vkCmdSetExclusiveScissorNV( VkCommandBuffer commandBuffer, uint32_t firstExclusiveScissor, uint32_t exclusiveScissorCount, const VkRect2D* pExclusiveScissors ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdSetStencilReference( VkCommandBuffer commandBuffer,
+ VkStencilFaceFlags faceMask,
+ uint32_t reference ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdSetExclusiveScissorNV( commandBuffer, firstExclusiveScissor, exclusiveScissorCount, pExclusiveScissors );
+ return ::vkCmdSetStencilReference( commandBuffer, faceMask, reference );
}
- void vkCmdSetFragmentShadingRateEnumNV( VkCommandBuffer commandBuffer, VkFragmentShadingRateNV shadingRate, const VkFragmentShadingRateCombinerOpKHR combinerOps[2] ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdBindDescriptorSets( VkCommandBuffer commandBuffer,
+ VkPipelineBindPoint pipelineBindPoint,
+ VkPipelineLayout layout,
+ uint32_t firstSet,
+ uint32_t descriptorSetCount,
+ const VkDescriptorSet * pDescriptorSets,
+ uint32_t dynamicOffsetCount,
+ const uint32_t * pDynamicOffsets ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdSetFragmentShadingRateEnumNV( commandBuffer, shadingRate, combinerOps );
+ return ::vkCmdBindDescriptorSets( commandBuffer,
+ pipelineBindPoint,
+ layout,
+ firstSet,
+ descriptorSetCount,
+ pDescriptorSets,
+ dynamicOffsetCount,
+ pDynamicOffsets );
}
- void vkCmdSetFragmentShadingRateKHR( VkCommandBuffer commandBuffer, const VkExtent2D* pFragmentSize, const VkFragmentShadingRateCombinerOpKHR combinerOps[2] ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdBindIndexBuffer( VkCommandBuffer commandBuffer,
+ VkBuffer buffer,
+ VkDeviceSize offset,
+ VkIndexType indexType ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdSetFragmentShadingRateKHR( commandBuffer, pFragmentSize, combinerOps );
+ return ::vkCmdBindIndexBuffer( commandBuffer, buffer, offset, indexType );
}
- void vkCmdSetFrontFaceEXT( VkCommandBuffer commandBuffer, VkFrontFace frontFace ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdBindVertexBuffers( VkCommandBuffer commandBuffer,
+ uint32_t firstBinding,
+ uint32_t bindingCount,
+ const VkBuffer * pBuffers,
+ const VkDeviceSize * pOffsets ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdSetFrontFaceEXT( commandBuffer, frontFace );
+ return ::vkCmdBindVertexBuffers( commandBuffer, firstBinding, bindingCount, pBuffers, pOffsets );
}
- void vkCmdSetLineStippleEXT( VkCommandBuffer commandBuffer, uint32_t lineStippleFactor, uint16_t lineStipplePattern ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdDraw( VkCommandBuffer commandBuffer,
+ uint32_t vertexCount,
+ uint32_t instanceCount,
+ uint32_t firstVertex,
+ uint32_t firstInstance ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdSetLineStippleEXT( commandBuffer, lineStippleFactor, lineStipplePattern );
+ return ::vkCmdDraw( commandBuffer, vertexCount, instanceCount, firstVertex, firstInstance );
}
- void vkCmdSetLineWidth( VkCommandBuffer commandBuffer, float lineWidth ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdDrawIndexed( VkCommandBuffer commandBuffer,
+ uint32_t indexCount,
+ uint32_t instanceCount,
+ uint32_t firstIndex,
+ int32_t vertexOffset,
+ uint32_t firstInstance ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdSetLineWidth( commandBuffer, lineWidth );
+ return ::vkCmdDrawIndexed( commandBuffer, indexCount, instanceCount, firstIndex, vertexOffset, firstInstance );
}
- VkResult vkCmdSetPerformanceMarkerINTEL( VkCommandBuffer commandBuffer, const VkPerformanceMarkerInfoINTEL* pMarkerInfo ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdDrawIndirect( VkCommandBuffer commandBuffer,
+ VkBuffer buffer,
+ VkDeviceSize offset,
+ uint32_t drawCount,
+ uint32_t stride ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdSetPerformanceMarkerINTEL( commandBuffer, pMarkerInfo );
+ return ::vkCmdDrawIndirect( commandBuffer, buffer, offset, drawCount, stride );
}
- VkResult vkCmdSetPerformanceOverrideINTEL( VkCommandBuffer commandBuffer, const VkPerformanceOverrideInfoINTEL* pOverrideInfo ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdDrawIndexedIndirect( VkCommandBuffer commandBuffer,
+ VkBuffer buffer,
+ VkDeviceSize offset,
+ uint32_t drawCount,
+ uint32_t stride ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdSetPerformanceOverrideINTEL( commandBuffer, pOverrideInfo );
+ return ::vkCmdDrawIndexedIndirect( commandBuffer, buffer, offset, drawCount, stride );
}
- VkResult vkCmdSetPerformanceStreamMarkerINTEL( VkCommandBuffer commandBuffer, const VkPerformanceStreamMarkerInfoINTEL* pMarkerInfo ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdDispatch( VkCommandBuffer commandBuffer,
+ uint32_t groupCountX,
+ uint32_t groupCountY,
+ uint32_t groupCountZ ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdSetPerformanceStreamMarkerINTEL( commandBuffer, pMarkerInfo );
+ return ::vkCmdDispatch( commandBuffer, groupCountX, groupCountY, groupCountZ );
}
- void vkCmdSetPrimitiveTopologyEXT( VkCommandBuffer commandBuffer, VkPrimitiveTopology primitiveTopology ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdDispatchIndirect( VkCommandBuffer commandBuffer,
+ VkBuffer buffer,
+ VkDeviceSize offset ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdSetPrimitiveTopologyEXT( commandBuffer, primitiveTopology );
+ return ::vkCmdDispatchIndirect( commandBuffer, buffer, offset );
}
- void vkCmdSetRayTracingPipelineStackSizeKHR( VkCommandBuffer commandBuffer, uint32_t pipelineStackSize ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdCopyBuffer( VkCommandBuffer commandBuffer,
+ VkBuffer srcBuffer,
+ VkBuffer dstBuffer,
+ uint32_t regionCount,
+ const VkBufferCopy * pRegions ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdSetRayTracingPipelineStackSizeKHR( commandBuffer, pipelineStackSize );
+ return ::vkCmdCopyBuffer( commandBuffer, srcBuffer, dstBuffer, regionCount, pRegions );
}
- void vkCmdSetSampleLocationsEXT( VkCommandBuffer commandBuffer, const VkSampleLocationsInfoEXT* pSampleLocationsInfo ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdCopyImage( VkCommandBuffer commandBuffer,
+ VkImage srcImage,
+ VkImageLayout srcImageLayout,
+ VkImage dstImage,
+ VkImageLayout dstImageLayout,
+ uint32_t regionCount,
+ const VkImageCopy * pRegions ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdSetSampleLocationsEXT( commandBuffer, pSampleLocationsInfo );
+ return ::vkCmdCopyImage(
+ commandBuffer, srcImage, srcImageLayout, dstImage, dstImageLayout, regionCount, pRegions );
}
- void vkCmdSetScissor( VkCommandBuffer commandBuffer, uint32_t firstScissor, uint32_t scissorCount, const VkRect2D* pScissors ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdBlitImage( VkCommandBuffer commandBuffer,
+ VkImage srcImage,
+ VkImageLayout srcImageLayout,
+ VkImage dstImage,
+ VkImageLayout dstImageLayout,
+ uint32_t regionCount,
+ const VkImageBlit * pRegions,
+ VkFilter filter ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdSetScissor( commandBuffer, firstScissor, scissorCount, pScissors );
+ return ::vkCmdBlitImage(
+ commandBuffer, srcImage, srcImageLayout, dstImage, dstImageLayout, regionCount, pRegions, filter );
}
- void vkCmdSetScissorWithCountEXT( VkCommandBuffer commandBuffer, uint32_t scissorCount, const VkRect2D* pScissors ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdCopyBufferToImage( VkCommandBuffer commandBuffer,
+ VkBuffer srcBuffer,
+ VkImage dstImage,
+ VkImageLayout dstImageLayout,
+ uint32_t regionCount,
+ const VkBufferImageCopy * pRegions ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdSetScissorWithCountEXT( commandBuffer, scissorCount, pScissors );
+ return ::vkCmdCopyBufferToImage( commandBuffer, srcBuffer, dstImage, dstImageLayout, regionCount, pRegions );
}
- void vkCmdSetStencilCompareMask( VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask, uint32_t compareMask ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdCopyImageToBuffer( VkCommandBuffer commandBuffer,
+ VkImage srcImage,
+ VkImageLayout srcImageLayout,
+ VkBuffer dstBuffer,
+ uint32_t regionCount,
+ const VkBufferImageCopy * pRegions ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdSetStencilCompareMask( commandBuffer, faceMask, compareMask );
+ return ::vkCmdCopyImageToBuffer( commandBuffer, srcImage, srcImageLayout, dstBuffer, regionCount, pRegions );
}
- void vkCmdSetStencilOpEXT( VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask, VkStencilOp failOp, VkStencilOp passOp, VkStencilOp depthFailOp, VkCompareOp compareOp ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdUpdateBuffer( VkCommandBuffer commandBuffer,
+ VkBuffer dstBuffer,
+ VkDeviceSize dstOffset,
+ VkDeviceSize dataSize,
+ const void * pData ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdSetStencilOpEXT( commandBuffer, faceMask, failOp, passOp, depthFailOp, compareOp );
+ return ::vkCmdUpdateBuffer( commandBuffer, dstBuffer, dstOffset, dataSize, pData );
}
- void vkCmdSetStencilReference( VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask, uint32_t reference ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdFillBuffer( VkCommandBuffer commandBuffer,
+ VkBuffer dstBuffer,
+ VkDeviceSize dstOffset,
+ VkDeviceSize size,
+ uint32_t data ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdSetStencilReference( commandBuffer, faceMask, reference );
+ return ::vkCmdFillBuffer( commandBuffer, dstBuffer, dstOffset, size, data );
}
- void vkCmdSetStencilTestEnableEXT( VkCommandBuffer commandBuffer, VkBool32 stencilTestEnable ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdClearColorImage( VkCommandBuffer commandBuffer,
+ VkImage image,
+ VkImageLayout imageLayout,
+ const VkClearColorValue * pColor,
+ uint32_t rangeCount,
+ const VkImageSubresourceRange * pRanges ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdSetStencilTestEnableEXT( commandBuffer, stencilTestEnable );
+ return ::vkCmdClearColorImage( commandBuffer, image, imageLayout, pColor, rangeCount, pRanges );
}
- void vkCmdSetStencilWriteMask( VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask, uint32_t writeMask ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdClearDepthStencilImage( VkCommandBuffer commandBuffer,
+ VkImage image,
+ VkImageLayout imageLayout,
+ const VkClearDepthStencilValue * pDepthStencil,
+ uint32_t rangeCount,
+ const VkImageSubresourceRange * pRanges ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdSetStencilWriteMask( commandBuffer, faceMask, writeMask );
+ return ::vkCmdClearDepthStencilImage( commandBuffer, image, imageLayout, pDepthStencil, rangeCount, pRanges );
}
- void vkCmdSetViewport( VkCommandBuffer commandBuffer, uint32_t firstViewport, uint32_t viewportCount, const VkViewport* pViewports ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdClearAttachments( VkCommandBuffer commandBuffer,
+ uint32_t attachmentCount,
+ const VkClearAttachment * pAttachments,
+ uint32_t rectCount,
+ const VkClearRect * pRects ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdSetViewport( commandBuffer, firstViewport, viewportCount, pViewports );
+ return ::vkCmdClearAttachments( commandBuffer, attachmentCount, pAttachments, rectCount, pRects );
}
- void vkCmdSetViewportShadingRatePaletteNV( VkCommandBuffer commandBuffer, uint32_t firstViewport, uint32_t viewportCount, const VkShadingRatePaletteNV* pShadingRatePalettes ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdResolveImage( VkCommandBuffer commandBuffer,
+ VkImage srcImage,
+ VkImageLayout srcImageLayout,
+ VkImage dstImage,
+ VkImageLayout dstImageLayout,
+ uint32_t regionCount,
+ const VkImageResolve * pRegions ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdSetViewportShadingRatePaletteNV( commandBuffer, firstViewport, viewportCount, pShadingRatePalettes );
+ return ::vkCmdResolveImage(
+ commandBuffer, srcImage, srcImageLayout, dstImage, dstImageLayout, regionCount, pRegions );
}
- void vkCmdSetViewportWScalingNV( VkCommandBuffer commandBuffer, uint32_t firstViewport, uint32_t viewportCount, const VkViewportWScalingNV* pViewportWScalings ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdSetEvent( VkCommandBuffer commandBuffer,
+ VkEvent event,
+ VkPipelineStageFlags stageMask ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdSetViewportWScalingNV( commandBuffer, firstViewport, viewportCount, pViewportWScalings );
+ return ::vkCmdSetEvent( commandBuffer, event, stageMask );
}
- void vkCmdSetViewportWithCountEXT( VkCommandBuffer commandBuffer, uint32_t viewportCount, const VkViewport* pViewports ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdResetEvent( VkCommandBuffer commandBuffer,
+ VkEvent event,
+ VkPipelineStageFlags stageMask ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdSetViewportWithCountEXT( commandBuffer, viewportCount, pViewports );
+ return ::vkCmdResetEvent( commandBuffer, event, stageMask );
}
- void vkCmdTraceRaysIndirectKHR( VkCommandBuffer commandBuffer, const VkStridedDeviceAddressRegionKHR* pRaygenShaderBindingTable, const VkStridedDeviceAddressRegionKHR* pMissShaderBindingTable, const VkStridedDeviceAddressRegionKHR* pHitShaderBindingTable, const VkStridedDeviceAddressRegionKHR* pCallableShaderBindingTable, VkDeviceAddress indirectDeviceAddress ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdWaitEvents( VkCommandBuffer commandBuffer,
+ uint32_t eventCount,
+ const VkEvent * pEvents,
+ VkPipelineStageFlags srcStageMask,
+ VkPipelineStageFlags dstStageMask,
+ uint32_t memoryBarrierCount,
+ const VkMemoryBarrier * pMemoryBarriers,
+ uint32_t bufferMemoryBarrierCount,
+ const VkBufferMemoryBarrier * pBufferMemoryBarriers,
+ uint32_t imageMemoryBarrierCount,
+ const VkImageMemoryBarrier * pImageMemoryBarriers ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ::vkCmdWaitEvents( commandBuffer,
+ eventCount,
+ pEvents,
+ srcStageMask,
+ dstStageMask,
+ memoryBarrierCount,
+ pMemoryBarriers,
+ bufferMemoryBarrierCount,
+ pBufferMemoryBarriers,
+ imageMemoryBarrierCount,
+ pImageMemoryBarriers );
+ }
+
+ void vkCmdPipelineBarrier( VkCommandBuffer commandBuffer,
+ VkPipelineStageFlags srcStageMask,
+ VkPipelineStageFlags dstStageMask,
+ VkDependencyFlags dependencyFlags,
+ uint32_t memoryBarrierCount,
+ const VkMemoryBarrier * pMemoryBarriers,
+ uint32_t bufferMemoryBarrierCount,
+ const VkBufferMemoryBarrier * pBufferMemoryBarriers,
+ uint32_t imageMemoryBarrierCount,
+ const VkImageMemoryBarrier * pImageMemoryBarriers ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ::vkCmdPipelineBarrier( commandBuffer,
+ srcStageMask,
+ dstStageMask,
+ dependencyFlags,
+ memoryBarrierCount,
+ pMemoryBarriers,
+ bufferMemoryBarrierCount,
+ pBufferMemoryBarriers,
+ imageMemoryBarrierCount,
+ pImageMemoryBarriers );
+ }
+
+ void vkCmdBeginQuery( VkCommandBuffer commandBuffer,
+ VkQueryPool queryPool,
+ uint32_t query,
+ VkQueryControlFlags flags ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdTraceRaysIndirectKHR( commandBuffer, pRaygenShaderBindingTable, pMissShaderBindingTable, pHitShaderBindingTable, pCallableShaderBindingTable, indirectDeviceAddress );
+ return ::vkCmdBeginQuery( commandBuffer, queryPool, query, flags );
}
- void vkCmdTraceRaysKHR( VkCommandBuffer commandBuffer, const VkStridedDeviceAddressRegionKHR* pRaygenShaderBindingTable, const VkStridedDeviceAddressRegionKHR* pMissShaderBindingTable, const VkStridedDeviceAddressRegionKHR* pHitShaderBindingTable, const VkStridedDeviceAddressRegionKHR* pCallableShaderBindingTable, uint32_t width, uint32_t height, uint32_t depth ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdEndQuery( VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t query ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdTraceRaysKHR( commandBuffer, pRaygenShaderBindingTable, pMissShaderBindingTable, pHitShaderBindingTable, pCallableShaderBindingTable, width, height, depth );
+ return ::vkCmdEndQuery( commandBuffer, queryPool, query );
}
- void vkCmdTraceRaysNV( VkCommandBuffer commandBuffer, VkBuffer raygenShaderBindingTableBuffer, VkDeviceSize raygenShaderBindingOffset, VkBuffer missShaderBindingTableBuffer, VkDeviceSize missShaderBindingOffset, VkDeviceSize missShaderBindingStride, VkBuffer hitShaderBindingTableBuffer, VkDeviceSize hitShaderBindingOffset, VkDeviceSize hitShaderBindingStride, VkBuffer callableShaderBindingTableBuffer, VkDeviceSize callableShaderBindingOffset, VkDeviceSize callableShaderBindingStride, uint32_t width, uint32_t height, uint32_t depth ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdResetQueryPool( VkCommandBuffer commandBuffer,
+ VkQueryPool queryPool,
+ uint32_t firstQuery,
+ uint32_t queryCount ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdTraceRaysNV( commandBuffer, raygenShaderBindingTableBuffer, raygenShaderBindingOffset, missShaderBindingTableBuffer, missShaderBindingOffset, missShaderBindingStride, hitShaderBindingTableBuffer, hitShaderBindingOffset, hitShaderBindingStride, callableShaderBindingTableBuffer, callableShaderBindingOffset, callableShaderBindingStride, width, height, depth );
+ return ::vkCmdResetQueryPool( commandBuffer, queryPool, firstQuery, queryCount );
}
- void vkCmdUpdateBuffer( VkCommandBuffer commandBuffer, VkBuffer dstBuffer, VkDeviceSize dstOffset, VkDeviceSize dataSize, const void* pData ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdWriteTimestamp( VkCommandBuffer commandBuffer,
+ VkPipelineStageFlagBits pipelineStage,
+ VkQueryPool queryPool,
+ uint32_t query ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdUpdateBuffer( commandBuffer, dstBuffer, dstOffset, dataSize, pData );
+ return ::vkCmdWriteTimestamp( commandBuffer, pipelineStage, queryPool, query );
}
- void vkCmdWaitEvents( VkCommandBuffer commandBuffer, uint32_t eventCount, const VkEvent* pEvents, VkPipelineStageFlags srcStageMask, VkPipelineStageFlags dstStageMask, uint32_t memoryBarrierCount, const VkMemoryBarrier* pMemoryBarriers, uint32_t bufferMemoryBarrierCount, const VkBufferMemoryBarrier* pBufferMemoryBarriers, uint32_t imageMemoryBarrierCount, const VkImageMemoryBarrier* pImageMemoryBarriers ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdCopyQueryPoolResults( VkCommandBuffer commandBuffer,
+ VkQueryPool queryPool,
+ uint32_t firstQuery,
+ uint32_t queryCount,
+ VkBuffer dstBuffer,
+ VkDeviceSize dstOffset,
+ VkDeviceSize stride,
+ VkQueryResultFlags flags ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdWaitEvents( commandBuffer, eventCount, pEvents, srcStageMask, dstStageMask, memoryBarrierCount, pMemoryBarriers, bufferMemoryBarrierCount, pBufferMemoryBarriers, imageMemoryBarrierCount, pImageMemoryBarriers );
+ return ::vkCmdCopyQueryPoolResults(
+ commandBuffer, queryPool, firstQuery, queryCount, dstBuffer, dstOffset, stride, flags );
}
- void vkCmdWriteAccelerationStructuresPropertiesKHR( VkCommandBuffer commandBuffer, uint32_t accelerationStructureCount, const VkAccelerationStructureKHR* pAccelerationStructures, VkQueryType queryType, VkQueryPool queryPool, uint32_t firstQuery ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdPushConstants( VkCommandBuffer commandBuffer,
+ VkPipelineLayout layout,
+ VkShaderStageFlags stageFlags,
+ uint32_t offset,
+ uint32_t size,
+ const void * pValues ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdWriteAccelerationStructuresPropertiesKHR( commandBuffer, accelerationStructureCount, pAccelerationStructures, queryType, queryPool, firstQuery );
+ return ::vkCmdPushConstants( commandBuffer, layout, stageFlags, offset, size, pValues );
}
- void vkCmdWriteAccelerationStructuresPropertiesNV( VkCommandBuffer commandBuffer, uint32_t accelerationStructureCount, const VkAccelerationStructureNV* pAccelerationStructures, VkQueryType queryType, VkQueryPool queryPool, uint32_t firstQuery ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdBeginRenderPass( VkCommandBuffer commandBuffer,
+ const VkRenderPassBeginInfo * pRenderPassBegin,
+ VkSubpassContents contents ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdWriteAccelerationStructuresPropertiesNV( commandBuffer, accelerationStructureCount, pAccelerationStructures, queryType, queryPool, firstQuery );
+ return ::vkCmdBeginRenderPass( commandBuffer, pRenderPassBegin, contents );
}
- void vkCmdWriteBufferMarkerAMD( VkCommandBuffer commandBuffer, VkPipelineStageFlagBits pipelineStage, VkBuffer dstBuffer, VkDeviceSize dstOffset, uint32_t marker ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdNextSubpass( VkCommandBuffer commandBuffer, VkSubpassContents contents ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdWriteBufferMarkerAMD( commandBuffer, pipelineStage, dstBuffer, dstOffset, marker );
+ return ::vkCmdNextSubpass( commandBuffer, contents );
}
- void vkCmdWriteTimestamp( VkCommandBuffer commandBuffer, VkPipelineStageFlagBits pipelineStage, VkQueryPool queryPool, uint32_t query ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdEndRenderPass( VkCommandBuffer commandBuffer ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCmdWriteTimestamp( commandBuffer, pipelineStage, queryPool, query );
+ return ::vkCmdEndRenderPass( commandBuffer );
}
- VkResult vkCompileDeferredNV( VkDevice device, VkPipeline pipeline, uint32_t shader ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdExecuteCommands( VkCommandBuffer commandBuffer,
+ uint32_t commandBufferCount,
+ const VkCommandBuffer * pCommandBuffers ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCompileDeferredNV( device, pipeline, shader );
+ return ::vkCmdExecuteCommands( commandBuffer, commandBufferCount, pCommandBuffers );
}
- VkResult vkCopyAccelerationStructureKHR( VkDevice device, VkDeferredOperationKHR deferredOperation, const VkCopyAccelerationStructureInfoKHR* pInfo ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkCopyAccelerationStructureKHR( device, deferredOperation, pInfo );
- }
+ //=== VK_VERSION_1_1 ===
- VkResult vkCopyAccelerationStructureToMemoryKHR( VkDevice device, VkDeferredOperationKHR deferredOperation, const VkCopyAccelerationStructureToMemoryInfoKHR* pInfo ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkEnumerateInstanceVersion( uint32_t * pApiVersion ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCopyAccelerationStructureToMemoryKHR( device, deferredOperation, pInfo );
+ return ::vkEnumerateInstanceVersion( pApiVersion );
}
- VkResult vkCopyMemoryToAccelerationStructureKHR( VkDevice device, VkDeferredOperationKHR deferredOperation, const VkCopyMemoryToAccelerationStructureInfoKHR* pInfo ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkBindBufferMemory2( VkDevice device,
+ uint32_t bindInfoCount,
+ const VkBindBufferMemoryInfo * pBindInfos ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCopyMemoryToAccelerationStructureKHR( device, deferredOperation, pInfo );
+ return ::vkBindBufferMemory2( device, bindInfoCount, pBindInfos );
}
- VkResult vkCreateAccelerationStructureKHR( VkDevice device, const VkAccelerationStructureCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkAccelerationStructureKHR* pAccelerationStructure ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkBindImageMemory2( VkDevice device,
+ uint32_t bindInfoCount,
+ const VkBindImageMemoryInfo * pBindInfos ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCreateAccelerationStructureKHR( device, pCreateInfo, pAllocator, pAccelerationStructure );
+ return ::vkBindImageMemory2( device, bindInfoCount, pBindInfos );
}
- VkResult vkCreateAccelerationStructureNV( VkDevice device, const VkAccelerationStructureCreateInfoNV* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkAccelerationStructureNV* pAccelerationStructure ) const VULKAN_HPP_NOEXCEPT
+ void vkGetDeviceGroupPeerMemoryFeatures( VkDevice device,
+ uint32_t heapIndex,
+ uint32_t localDeviceIndex,
+ uint32_t remoteDeviceIndex,
+ VkPeerMemoryFeatureFlags * pPeerMemoryFeatures ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCreateAccelerationStructureNV( device, pCreateInfo, pAllocator, pAccelerationStructure );
+ return ::vkGetDeviceGroupPeerMemoryFeatures(
+ device, heapIndex, localDeviceIndex, remoteDeviceIndex, pPeerMemoryFeatures );
}
-#ifdef VK_USE_PLATFORM_ANDROID_KHR
- VkResult vkCreateAndroidSurfaceKHR( VkInstance instance, const VkAndroidSurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdSetDeviceMask( VkCommandBuffer commandBuffer, uint32_t deviceMask ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCreateAndroidSurfaceKHR( instance, pCreateInfo, pAllocator, pSurface );
+ return ::vkCmdSetDeviceMask( commandBuffer, deviceMask );
}
-#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
- VkResult vkCreateBuffer( VkDevice device, const VkBufferCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkBuffer* pBuffer ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdDispatchBase( VkCommandBuffer commandBuffer,
+ uint32_t baseGroupX,
+ uint32_t baseGroupY,
+ uint32_t baseGroupZ,
+ uint32_t groupCountX,
+ uint32_t groupCountY,
+ uint32_t groupCountZ ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCreateBuffer( device, pCreateInfo, pAllocator, pBuffer );
+ return ::vkCmdDispatchBase(
+ commandBuffer, baseGroupX, baseGroupY, baseGroupZ, groupCountX, groupCountY, groupCountZ );
}
- VkResult vkCreateBufferView( VkDevice device, const VkBufferViewCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkBufferView* pView ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkEnumeratePhysicalDeviceGroups( VkInstance instance,
+ uint32_t * pPhysicalDeviceGroupCount,
+ VkPhysicalDeviceGroupProperties * pPhysicalDeviceGroupProperties ) const
+ VULKAN_HPP_NOEXCEPT
{
- return ::vkCreateBufferView( device, pCreateInfo, pAllocator, pView );
+ return ::vkEnumeratePhysicalDeviceGroups( instance, pPhysicalDeviceGroupCount, pPhysicalDeviceGroupProperties );
}
- VkResult vkCreateCommandPool( VkDevice device, const VkCommandPoolCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkCommandPool* pCommandPool ) const VULKAN_HPP_NOEXCEPT
+ void vkGetImageMemoryRequirements2( VkDevice device,
+ const VkImageMemoryRequirementsInfo2 * pInfo,
+ VkMemoryRequirements2 * pMemoryRequirements ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCreateCommandPool( device, pCreateInfo, pAllocator, pCommandPool );
+ return ::vkGetImageMemoryRequirements2( device, pInfo, pMemoryRequirements );
}
- VkResult vkCreateComputePipelines( VkDevice device, VkPipelineCache pipelineCache, uint32_t createInfoCount, const VkComputePipelineCreateInfo* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkPipeline* pPipelines ) const VULKAN_HPP_NOEXCEPT
+ void vkGetBufferMemoryRequirements2( VkDevice device,
+ const VkBufferMemoryRequirementsInfo2 * pInfo,
+ VkMemoryRequirements2 * pMemoryRequirements ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCreateComputePipelines( device, pipelineCache, createInfoCount, pCreateInfos, pAllocator, pPipelines );
+ return ::vkGetBufferMemoryRequirements2( device, pInfo, pMemoryRequirements );
}
- VkResult vkCreateDebugReportCallbackEXT( VkInstance instance, const VkDebugReportCallbackCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDebugReportCallbackEXT* pCallback ) const VULKAN_HPP_NOEXCEPT
+ void vkGetImageSparseMemoryRequirements2( VkDevice device,
+ const VkImageSparseMemoryRequirementsInfo2 * pInfo,
+ uint32_t * pSparseMemoryRequirementCount,
+ VkSparseImageMemoryRequirements2 * pSparseMemoryRequirements ) const
+ VULKAN_HPP_NOEXCEPT
{
- return ::vkCreateDebugReportCallbackEXT( instance, pCreateInfo, pAllocator, pCallback );
+ return ::vkGetImageSparseMemoryRequirements2(
+ device, pInfo, pSparseMemoryRequirementCount, pSparseMemoryRequirements );
}
- VkResult vkCreateDebugUtilsMessengerEXT( VkInstance instance, const VkDebugUtilsMessengerCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDebugUtilsMessengerEXT* pMessenger ) const VULKAN_HPP_NOEXCEPT
+ void vkGetPhysicalDeviceFeatures2( VkPhysicalDevice physicalDevice,
+ VkPhysicalDeviceFeatures2 * pFeatures ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCreateDebugUtilsMessengerEXT( instance, pCreateInfo, pAllocator, pMessenger );
+ return ::vkGetPhysicalDeviceFeatures2( physicalDevice, pFeatures );
}
- VkResult vkCreateDeferredOperationKHR( VkDevice device, const VkAllocationCallbacks* pAllocator, VkDeferredOperationKHR* pDeferredOperation ) const VULKAN_HPP_NOEXCEPT
+ void vkGetPhysicalDeviceProperties2( VkPhysicalDevice physicalDevice,
+ VkPhysicalDeviceProperties2 * pProperties ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCreateDeferredOperationKHR( device, pAllocator, pDeferredOperation );
+ return ::vkGetPhysicalDeviceProperties2( physicalDevice, pProperties );
}
- VkResult vkCreateDescriptorPool( VkDevice device, const VkDescriptorPoolCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDescriptorPool* pDescriptorPool ) const VULKAN_HPP_NOEXCEPT
+ void vkGetPhysicalDeviceFormatProperties2( VkPhysicalDevice physicalDevice,
+ VkFormat format,
+ VkFormatProperties2 * pFormatProperties ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCreateDescriptorPool( device, pCreateInfo, pAllocator, pDescriptorPool );
+ return ::vkGetPhysicalDeviceFormatProperties2( physicalDevice, format, pFormatProperties );
}
- VkResult vkCreateDescriptorSetLayout( VkDevice device, const VkDescriptorSetLayoutCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDescriptorSetLayout* pSetLayout ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkGetPhysicalDeviceImageFormatProperties2( VkPhysicalDevice physicalDevice,
+ const VkPhysicalDeviceImageFormatInfo2 * pImageFormatInfo,
+ VkImageFormatProperties2 * pImageFormatProperties ) const
+ VULKAN_HPP_NOEXCEPT
{
- return ::vkCreateDescriptorSetLayout( device, pCreateInfo, pAllocator, pSetLayout );
+ return ::vkGetPhysicalDeviceImageFormatProperties2( physicalDevice, pImageFormatInfo, pImageFormatProperties );
}
- VkResult vkCreateDescriptorUpdateTemplate( VkDevice device, const VkDescriptorUpdateTemplateCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDescriptorUpdateTemplate* pDescriptorUpdateTemplate ) const VULKAN_HPP_NOEXCEPT
+ void vkGetPhysicalDeviceQueueFamilyProperties2( VkPhysicalDevice physicalDevice,
+ uint32_t * pQueueFamilyPropertyCount,
+ VkQueueFamilyProperties2 * pQueueFamilyProperties ) const
+ VULKAN_HPP_NOEXCEPT
{
- return ::vkCreateDescriptorUpdateTemplate( device, pCreateInfo, pAllocator, pDescriptorUpdateTemplate );
+ return ::vkGetPhysicalDeviceQueueFamilyProperties2(
+ physicalDevice, pQueueFamilyPropertyCount, pQueueFamilyProperties );
}
- VkResult vkCreateDescriptorUpdateTemplateKHR( VkDevice device, const VkDescriptorUpdateTemplateCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDescriptorUpdateTemplate* pDescriptorUpdateTemplate ) const VULKAN_HPP_NOEXCEPT
+ void vkGetPhysicalDeviceMemoryProperties2(
+ VkPhysicalDevice physicalDevice, VkPhysicalDeviceMemoryProperties2 * pMemoryProperties ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCreateDescriptorUpdateTemplateKHR( device, pCreateInfo, pAllocator, pDescriptorUpdateTemplate );
+ return ::vkGetPhysicalDeviceMemoryProperties2( physicalDevice, pMemoryProperties );
}
- VkResult vkCreateDevice( VkPhysicalDevice physicalDevice, const VkDeviceCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDevice* pDevice ) const VULKAN_HPP_NOEXCEPT
+ void vkGetPhysicalDeviceSparseImageFormatProperties2( VkPhysicalDevice physicalDevice,
+ const VkPhysicalDeviceSparseImageFormatInfo2 * pFormatInfo,
+ uint32_t * pPropertyCount,
+ VkSparseImageFormatProperties2 * pProperties ) const
+ VULKAN_HPP_NOEXCEPT
{
- return ::vkCreateDevice( physicalDevice, pCreateInfo, pAllocator, pDevice );
+ return ::vkGetPhysicalDeviceSparseImageFormatProperties2(
+ physicalDevice, pFormatInfo, pPropertyCount, pProperties );
}
-#ifdef VK_USE_PLATFORM_DIRECTFB_EXT
- VkResult vkCreateDirectFBSurfaceEXT( VkInstance instance, const VkDirectFBSurfaceCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface ) const VULKAN_HPP_NOEXCEPT
+ void vkTrimCommandPool( VkDevice device,
+ VkCommandPool commandPool,
+ VkCommandPoolTrimFlags flags ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCreateDirectFBSurfaceEXT( instance, pCreateInfo, pAllocator, pSurface );
+ return ::vkTrimCommandPool( device, commandPool, flags );
}
-#endif /*VK_USE_PLATFORM_DIRECTFB_EXT*/
- VkResult vkCreateDisplayModeKHR( VkPhysicalDevice physicalDevice, VkDisplayKHR display, const VkDisplayModeCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDisplayModeKHR* pMode ) const VULKAN_HPP_NOEXCEPT
+ void vkGetDeviceQueue2( VkDevice device,
+ const VkDeviceQueueInfo2 * pQueueInfo,
+ VkQueue * pQueue ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCreateDisplayModeKHR( physicalDevice, display, pCreateInfo, pAllocator, pMode );
+ return ::vkGetDeviceQueue2( device, pQueueInfo, pQueue );
}
- VkResult vkCreateDisplayPlaneSurfaceKHR( VkInstance instance, const VkDisplaySurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkCreateSamplerYcbcrConversion( VkDevice device,
+ const VkSamplerYcbcrConversionCreateInfo * pCreateInfo,
+ const VkAllocationCallbacks * pAllocator,
+ VkSamplerYcbcrConversion * pYcbcrConversion ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCreateDisplayPlaneSurfaceKHR( instance, pCreateInfo, pAllocator, pSurface );
+ return ::vkCreateSamplerYcbcrConversion( device, pCreateInfo, pAllocator, pYcbcrConversion );
}
- VkResult vkCreateEvent( VkDevice device, const VkEventCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkEvent* pEvent ) const VULKAN_HPP_NOEXCEPT
+ void vkDestroySamplerYcbcrConversion( VkDevice device,
+ VkSamplerYcbcrConversion ycbcrConversion,
+ const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCreateEvent( device, pCreateInfo, pAllocator, pEvent );
+ return ::vkDestroySamplerYcbcrConversion( device, ycbcrConversion, pAllocator );
}
- VkResult vkCreateFence( VkDevice device, const VkFenceCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkFence* pFence ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkCreateDescriptorUpdateTemplate( VkDevice device,
+ const VkDescriptorUpdateTemplateCreateInfo * pCreateInfo,
+ const VkAllocationCallbacks * pAllocator,
+ VkDescriptorUpdateTemplate * pDescriptorUpdateTemplate ) const
+ VULKAN_HPP_NOEXCEPT
{
- return ::vkCreateFence( device, pCreateInfo, pAllocator, pFence );
+ return ::vkCreateDescriptorUpdateTemplate( device, pCreateInfo, pAllocator, pDescriptorUpdateTemplate );
}
- VkResult vkCreateFramebuffer( VkDevice device, const VkFramebufferCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkFramebuffer* pFramebuffer ) const VULKAN_HPP_NOEXCEPT
+ void vkDestroyDescriptorUpdateTemplate( VkDevice device,
+ VkDescriptorUpdateTemplate descriptorUpdateTemplate,
+ const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCreateFramebuffer( device, pCreateInfo, pAllocator, pFramebuffer );
+ return ::vkDestroyDescriptorUpdateTemplate( device, descriptorUpdateTemplate, pAllocator );
}
- VkResult vkCreateGraphicsPipelines( VkDevice device, VkPipelineCache pipelineCache, uint32_t createInfoCount, const VkGraphicsPipelineCreateInfo* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkPipeline* pPipelines ) const VULKAN_HPP_NOEXCEPT
+ void vkUpdateDescriptorSetWithTemplate( VkDevice device,
+ VkDescriptorSet descriptorSet,
+ VkDescriptorUpdateTemplate descriptorUpdateTemplate,
+ const void * pData ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCreateGraphicsPipelines( device, pipelineCache, createInfoCount, pCreateInfos, pAllocator, pPipelines );
+ return ::vkUpdateDescriptorSetWithTemplate( device, descriptorSet, descriptorUpdateTemplate, pData );
}
- VkResult vkCreateHeadlessSurfaceEXT( VkInstance instance, const VkHeadlessSurfaceCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface ) const VULKAN_HPP_NOEXCEPT
+ void vkGetPhysicalDeviceExternalBufferProperties( VkPhysicalDevice physicalDevice,
+ const VkPhysicalDeviceExternalBufferInfo * pExternalBufferInfo,
+ VkExternalBufferProperties * pExternalBufferProperties ) const
+ VULKAN_HPP_NOEXCEPT
{
- return ::vkCreateHeadlessSurfaceEXT( instance, pCreateInfo, pAllocator, pSurface );
+ return ::vkGetPhysicalDeviceExternalBufferProperties(
+ physicalDevice, pExternalBufferInfo, pExternalBufferProperties );
}
-#ifdef VK_USE_PLATFORM_IOS_MVK
- VkResult vkCreateIOSSurfaceMVK( VkInstance instance, const VkIOSSurfaceCreateInfoMVK* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface ) const VULKAN_HPP_NOEXCEPT
+ void vkGetPhysicalDeviceExternalFenceProperties( VkPhysicalDevice physicalDevice,
+ const VkPhysicalDeviceExternalFenceInfo * pExternalFenceInfo,
+ VkExternalFenceProperties * pExternalFenceProperties ) const
+ VULKAN_HPP_NOEXCEPT
{
- return ::vkCreateIOSSurfaceMVK( instance, pCreateInfo, pAllocator, pSurface );
+ return ::vkGetPhysicalDeviceExternalFenceProperties(
+ physicalDevice, pExternalFenceInfo, pExternalFenceProperties );
}
-#endif /*VK_USE_PLATFORM_IOS_MVK*/
- VkResult vkCreateImage( VkDevice device, const VkImageCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkImage* pImage ) const VULKAN_HPP_NOEXCEPT
+ void vkGetPhysicalDeviceExternalSemaphoreProperties(
+ VkPhysicalDevice physicalDevice,
+ const VkPhysicalDeviceExternalSemaphoreInfo * pExternalSemaphoreInfo,
+ VkExternalSemaphoreProperties * pExternalSemaphoreProperties ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCreateImage( device, pCreateInfo, pAllocator, pImage );
+ return ::vkGetPhysicalDeviceExternalSemaphoreProperties(
+ physicalDevice, pExternalSemaphoreInfo, pExternalSemaphoreProperties );
}
-#ifdef VK_USE_PLATFORM_FUCHSIA
- VkResult vkCreateImagePipeSurfaceFUCHSIA( VkInstance instance, const VkImagePipeSurfaceCreateInfoFUCHSIA* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface ) const VULKAN_HPP_NOEXCEPT
+ void vkGetDescriptorSetLayoutSupport( VkDevice device,
+ const VkDescriptorSetLayoutCreateInfo * pCreateInfo,
+ VkDescriptorSetLayoutSupport * pSupport ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCreateImagePipeSurfaceFUCHSIA( instance, pCreateInfo, pAllocator, pSurface );
+ return ::vkGetDescriptorSetLayoutSupport( device, pCreateInfo, pSupport );
}
-#endif /*VK_USE_PLATFORM_FUCHSIA*/
- VkResult vkCreateImageView( VkDevice device, const VkImageViewCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkImageView* pView ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkCreateImageView( device, pCreateInfo, pAllocator, pView );
- }
+ //=== VK_VERSION_1_2 ===
- VkResult vkCreateIndirectCommandsLayoutNV( VkDevice device, const VkIndirectCommandsLayoutCreateInfoNV* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkIndirectCommandsLayoutNV* pIndirectCommandsLayout ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdDrawIndirectCount( VkCommandBuffer commandBuffer,
+ VkBuffer buffer,
+ VkDeviceSize offset,
+ VkBuffer countBuffer,
+ VkDeviceSize countBufferOffset,
+ uint32_t maxDrawCount,
+ uint32_t stride ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCreateIndirectCommandsLayoutNV( device, pCreateInfo, pAllocator, pIndirectCommandsLayout );
+ return ::vkCmdDrawIndirectCount(
+ commandBuffer, buffer, offset, countBuffer, countBufferOffset, maxDrawCount, stride );
}
- VkResult vkCreateInstance( const VkInstanceCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkInstance* pInstance ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdDrawIndexedIndirectCount( VkCommandBuffer commandBuffer,
+ VkBuffer buffer,
+ VkDeviceSize offset,
+ VkBuffer countBuffer,
+ VkDeviceSize countBufferOffset,
+ uint32_t maxDrawCount,
+ uint32_t stride ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCreateInstance( pCreateInfo, pAllocator, pInstance );
+ return ::vkCmdDrawIndexedIndirectCount(
+ commandBuffer, buffer, offset, countBuffer, countBufferOffset, maxDrawCount, stride );
}
-#ifdef VK_USE_PLATFORM_MACOS_MVK
- VkResult vkCreateMacOSSurfaceMVK( VkInstance instance, const VkMacOSSurfaceCreateInfoMVK* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkCreateRenderPass2( VkDevice device,
+ const VkRenderPassCreateInfo2 * pCreateInfo,
+ const VkAllocationCallbacks * pAllocator,
+ VkRenderPass * pRenderPass ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCreateMacOSSurfaceMVK( instance, pCreateInfo, pAllocator, pSurface );
+ return ::vkCreateRenderPass2( device, pCreateInfo, pAllocator, pRenderPass );
}
-#endif /*VK_USE_PLATFORM_MACOS_MVK*/
-#ifdef VK_USE_PLATFORM_METAL_EXT
- VkResult vkCreateMetalSurfaceEXT( VkInstance instance, const VkMetalSurfaceCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdBeginRenderPass2( VkCommandBuffer commandBuffer,
+ const VkRenderPassBeginInfo * pRenderPassBegin,
+ const VkSubpassBeginInfo * pSubpassBeginInfo ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCreateMetalSurfaceEXT( instance, pCreateInfo, pAllocator, pSurface );
+ return ::vkCmdBeginRenderPass2( commandBuffer, pRenderPassBegin, pSubpassBeginInfo );
}
-#endif /*VK_USE_PLATFORM_METAL_EXT*/
- VkResult vkCreatePipelineCache( VkDevice device, const VkPipelineCacheCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkPipelineCache* pPipelineCache ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdNextSubpass2( VkCommandBuffer commandBuffer,
+ const VkSubpassBeginInfo * pSubpassBeginInfo,
+ const VkSubpassEndInfo * pSubpassEndInfo ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCreatePipelineCache( device, pCreateInfo, pAllocator, pPipelineCache );
+ return ::vkCmdNextSubpass2( commandBuffer, pSubpassBeginInfo, pSubpassEndInfo );
}
- VkResult vkCreatePipelineLayout( VkDevice device, const VkPipelineLayoutCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkPipelineLayout* pPipelineLayout ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdEndRenderPass2( VkCommandBuffer commandBuffer,
+ const VkSubpassEndInfo * pSubpassEndInfo ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCreatePipelineLayout( device, pCreateInfo, pAllocator, pPipelineLayout );
+ return ::vkCmdEndRenderPass2( commandBuffer, pSubpassEndInfo );
}
- VkResult vkCreatePrivateDataSlotEXT( VkDevice device, const VkPrivateDataSlotCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkPrivateDataSlotEXT* pPrivateDataSlot ) const VULKAN_HPP_NOEXCEPT
+ void vkResetQueryPool( VkDevice device,
+ VkQueryPool queryPool,
+ uint32_t firstQuery,
+ uint32_t queryCount ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCreatePrivateDataSlotEXT( device, pCreateInfo, pAllocator, pPrivateDataSlot );
+ return ::vkResetQueryPool( device, queryPool, firstQuery, queryCount );
}
- VkResult vkCreateQueryPool( VkDevice device, const VkQueryPoolCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkQueryPool* pQueryPool ) const VULKAN_HPP_NOEXCEPT
+ VkResult
+ vkGetSemaphoreCounterValue( VkDevice device, VkSemaphore semaphore, uint64_t * pValue ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCreateQueryPool( device, pCreateInfo, pAllocator, pQueryPool );
+ return ::vkGetSemaphoreCounterValue( device, semaphore, pValue );
}
- VkResult vkCreateRayTracingPipelinesKHR( VkDevice device, VkDeferredOperationKHR deferredOperation, VkPipelineCache pipelineCache, uint32_t createInfoCount, const VkRayTracingPipelineCreateInfoKHR* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkPipeline* pPipelines ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkWaitSemaphores( VkDevice device,
+ const VkSemaphoreWaitInfo * pWaitInfo,
+ uint64_t timeout ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCreateRayTracingPipelinesKHR( device, deferredOperation, pipelineCache, createInfoCount, pCreateInfos, pAllocator, pPipelines );
+ return ::vkWaitSemaphores( device, pWaitInfo, timeout );
}
- VkResult vkCreateRayTracingPipelinesNV( VkDevice device, VkPipelineCache pipelineCache, uint32_t createInfoCount, const VkRayTracingPipelineCreateInfoNV* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkPipeline* pPipelines ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkSignalSemaphore( VkDevice device, const VkSemaphoreSignalInfo * pSignalInfo ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCreateRayTracingPipelinesNV( device, pipelineCache, createInfoCount, pCreateInfos, pAllocator, pPipelines );
+ return ::vkSignalSemaphore( device, pSignalInfo );
}
- VkResult vkCreateRenderPass( VkDevice device, const VkRenderPassCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkRenderPass* pRenderPass ) const VULKAN_HPP_NOEXCEPT
+ VkDeviceAddress vkGetBufferDeviceAddress( VkDevice device,
+ const VkBufferDeviceAddressInfo * pInfo ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCreateRenderPass( device, pCreateInfo, pAllocator, pRenderPass );
+ return ::vkGetBufferDeviceAddress( device, pInfo );
}
- VkResult vkCreateRenderPass2( VkDevice device, const VkRenderPassCreateInfo2* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkRenderPass* pRenderPass ) const VULKAN_HPP_NOEXCEPT
+ uint64_t vkGetBufferOpaqueCaptureAddress( VkDevice device,
+ const VkBufferDeviceAddressInfo * pInfo ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCreateRenderPass2( device, pCreateInfo, pAllocator, pRenderPass );
+ return ::vkGetBufferOpaqueCaptureAddress( device, pInfo );
}
- VkResult vkCreateRenderPass2KHR( VkDevice device, const VkRenderPassCreateInfo2* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkRenderPass* pRenderPass ) const VULKAN_HPP_NOEXCEPT
+ uint64_t vkGetDeviceMemoryOpaqueCaptureAddress(
+ VkDevice device, const VkDeviceMemoryOpaqueCaptureAddressInfo * pInfo ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCreateRenderPass2KHR( device, pCreateInfo, pAllocator, pRenderPass );
+ return ::vkGetDeviceMemoryOpaqueCaptureAddress( device, pInfo );
}
- VkResult vkCreateSampler( VkDevice device, const VkSamplerCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSampler* pSampler ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkCreateSampler( device, pCreateInfo, pAllocator, pSampler );
- }
+ //=== VK_KHR_surface ===
- VkResult vkCreateSamplerYcbcrConversion( VkDevice device, const VkSamplerYcbcrConversionCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSamplerYcbcrConversion* pYcbcrConversion ) const VULKAN_HPP_NOEXCEPT
+ void vkDestroySurfaceKHR( VkInstance instance,
+ VkSurfaceKHR surface,
+ const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCreateSamplerYcbcrConversion( device, pCreateInfo, pAllocator, pYcbcrConversion );
+ return ::vkDestroySurfaceKHR( instance, surface, pAllocator );
}
- VkResult vkCreateSamplerYcbcrConversionKHR( VkDevice device, const VkSamplerYcbcrConversionCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSamplerYcbcrConversion* pYcbcrConversion ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkGetPhysicalDeviceSurfaceSupportKHR( VkPhysicalDevice physicalDevice,
+ uint32_t queueFamilyIndex,
+ VkSurfaceKHR surface,
+ VkBool32 * pSupported ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCreateSamplerYcbcrConversionKHR( device, pCreateInfo, pAllocator, pYcbcrConversion );
+ return ::vkGetPhysicalDeviceSurfaceSupportKHR( physicalDevice, queueFamilyIndex, surface, pSupported );
}
- VkResult vkCreateSemaphore( VkDevice device, const VkSemaphoreCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSemaphore* pSemaphore ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkGetPhysicalDeviceSurfaceCapabilitiesKHR( VkPhysicalDevice physicalDevice,
+ VkSurfaceKHR surface,
+ VkSurfaceCapabilitiesKHR * pSurfaceCapabilities ) const
+ VULKAN_HPP_NOEXCEPT
{
- return ::vkCreateSemaphore( device, pCreateInfo, pAllocator, pSemaphore );
+ return ::vkGetPhysicalDeviceSurfaceCapabilitiesKHR( physicalDevice, surface, pSurfaceCapabilities );
}
- VkResult vkCreateShaderModule( VkDevice device, const VkShaderModuleCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkShaderModule* pShaderModule ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkGetPhysicalDeviceSurfaceFormatsKHR( VkPhysicalDevice physicalDevice,
+ VkSurfaceKHR surface,
+ uint32_t * pSurfaceFormatCount,
+ VkSurfaceFormatKHR * pSurfaceFormats ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCreateShaderModule( device, pCreateInfo, pAllocator, pShaderModule );
+ return ::vkGetPhysicalDeviceSurfaceFormatsKHR( physicalDevice, surface, pSurfaceFormatCount, pSurfaceFormats );
}
- VkResult vkCreateSharedSwapchainsKHR( VkDevice device, uint32_t swapchainCount, const VkSwapchainCreateInfoKHR* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkSwapchainKHR* pSwapchains ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkGetPhysicalDeviceSurfacePresentModesKHR( VkPhysicalDevice physicalDevice,
+ VkSurfaceKHR surface,
+ uint32_t * pPresentModeCount,
+ VkPresentModeKHR * pPresentModes ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCreateSharedSwapchainsKHR( device, swapchainCount, pCreateInfos, pAllocator, pSwapchains );
+ return ::vkGetPhysicalDeviceSurfacePresentModesKHR( physicalDevice, surface, pPresentModeCount, pPresentModes );
}
-#ifdef VK_USE_PLATFORM_GGP
- VkResult vkCreateStreamDescriptorSurfaceGGP( VkInstance instance, const VkStreamDescriptorSurfaceCreateInfoGGP* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkCreateStreamDescriptorSurfaceGGP( instance, pCreateInfo, pAllocator, pSurface );
- }
-#endif /*VK_USE_PLATFORM_GGP*/
+ //=== VK_KHR_swapchain ===
- VkResult vkCreateSwapchainKHR( VkDevice device, const VkSwapchainCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSwapchainKHR* pSwapchain ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkCreateSwapchainKHR( VkDevice device,
+ const VkSwapchainCreateInfoKHR * pCreateInfo,
+ const VkAllocationCallbacks * pAllocator,
+ VkSwapchainKHR * pSwapchain ) const VULKAN_HPP_NOEXCEPT
{
return ::vkCreateSwapchainKHR( device, pCreateInfo, pAllocator, pSwapchain );
}
- VkResult vkCreateValidationCacheEXT( VkDevice device, const VkValidationCacheCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkValidationCacheEXT* pValidationCache ) const VULKAN_HPP_NOEXCEPT
+ void vkDestroySwapchainKHR( VkDevice device,
+ VkSwapchainKHR swapchain,
+ const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCreateValidationCacheEXT( device, pCreateInfo, pAllocator, pValidationCache );
- }
-
-#ifdef VK_USE_PLATFORM_VI_NN
- VkResult vkCreateViSurfaceNN( VkInstance instance, const VkViSurfaceCreateInfoNN* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkCreateViSurfaceNN( instance, pCreateInfo, pAllocator, pSurface );
- }
-#endif /*VK_USE_PLATFORM_VI_NN*/
-
-#ifdef VK_USE_PLATFORM_WAYLAND_KHR
- VkResult vkCreateWaylandSurfaceKHR( VkInstance instance, const VkWaylandSurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkCreateWaylandSurfaceKHR( instance, pCreateInfo, pAllocator, pSurface );
- }
-#endif /*VK_USE_PLATFORM_WAYLAND_KHR*/
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- VkResult vkCreateWin32SurfaceKHR( VkInstance instance, const VkWin32SurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkCreateWin32SurfaceKHR( instance, pCreateInfo, pAllocator, pSurface );
- }
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-
-#ifdef VK_USE_PLATFORM_XCB_KHR
- VkResult vkCreateXcbSurfaceKHR( VkInstance instance, const VkXcbSurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkCreateXcbSurfaceKHR( instance, pCreateInfo, pAllocator, pSurface );
+ return ::vkDestroySwapchainKHR( device, swapchain, pAllocator );
}
-#endif /*VK_USE_PLATFORM_XCB_KHR*/
-#ifdef VK_USE_PLATFORM_XLIB_KHR
- VkResult vkCreateXlibSurfaceKHR( VkInstance instance, const VkXlibSurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkGetSwapchainImagesKHR( VkDevice device,
+ VkSwapchainKHR swapchain,
+ uint32_t * pSwapchainImageCount,
+ VkImage * pSwapchainImages ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkCreateXlibSurfaceKHR( instance, pCreateInfo, pAllocator, pSurface );
+ return ::vkGetSwapchainImagesKHR( device, swapchain, pSwapchainImageCount, pSwapchainImages );
}
-#endif /*VK_USE_PLATFORM_XLIB_KHR*/
- VkResult vkDebugMarkerSetObjectNameEXT( VkDevice device, const VkDebugMarkerObjectNameInfoEXT* pNameInfo ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkAcquireNextImageKHR( VkDevice device,
+ VkSwapchainKHR swapchain,
+ uint64_t timeout,
+ VkSemaphore semaphore,
+ VkFence fence,
+ uint32_t * pImageIndex ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkDebugMarkerSetObjectNameEXT( device, pNameInfo );
+ return ::vkAcquireNextImageKHR( device, swapchain, timeout, semaphore, fence, pImageIndex );
}
- VkResult vkDebugMarkerSetObjectTagEXT( VkDevice device, const VkDebugMarkerObjectTagInfoEXT* pTagInfo ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkQueuePresentKHR( VkQueue queue, const VkPresentInfoKHR * pPresentInfo ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkDebugMarkerSetObjectTagEXT( device, pTagInfo );
+ return ::vkQueuePresentKHR( queue, pPresentInfo );
}
- void vkDebugReportMessageEXT( VkInstance instance, VkDebugReportFlagsEXT flags, VkDebugReportObjectTypeEXT objectType, uint64_t object, size_t location, int32_t messageCode, const char* pLayerPrefix, const char* pMessage ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkGetDeviceGroupPresentCapabilitiesKHR(
+ VkDevice device, VkDeviceGroupPresentCapabilitiesKHR * pDeviceGroupPresentCapabilities ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkDebugReportMessageEXT( instance, flags, objectType, object, location, messageCode, pLayerPrefix, pMessage );
+ return ::vkGetDeviceGroupPresentCapabilitiesKHR( device, pDeviceGroupPresentCapabilities );
}
- VkResult vkDeferredOperationJoinKHR( VkDevice device, VkDeferredOperationKHR operation ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkGetDeviceGroupSurfacePresentModesKHR(
+ VkDevice device, VkSurfaceKHR surface, VkDeviceGroupPresentModeFlagsKHR * pModes ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkDeferredOperationJoinKHR( device, operation );
+ return ::vkGetDeviceGroupSurfacePresentModesKHR( device, surface, pModes );
}
- void vkDestroyAccelerationStructureKHR( VkDevice device, VkAccelerationStructureKHR accelerationStructure, const VkAllocationCallbacks* pAllocator ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkGetPhysicalDevicePresentRectanglesKHR( VkPhysicalDevice physicalDevice,
+ VkSurfaceKHR surface,
+ uint32_t * pRectCount,
+ VkRect2D * pRects ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkDestroyAccelerationStructureKHR( device, accelerationStructure, pAllocator );
+ return ::vkGetPhysicalDevicePresentRectanglesKHR( physicalDevice, surface, pRectCount, pRects );
}
- void vkDestroyAccelerationStructureNV( VkDevice device, VkAccelerationStructureNV accelerationStructure, const VkAllocationCallbacks* pAllocator ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkAcquireNextImage2KHR( VkDevice device,
+ const VkAcquireNextImageInfoKHR * pAcquireInfo,
+ uint32_t * pImageIndex ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkDestroyAccelerationStructureNV( device, accelerationStructure, pAllocator );
+ return ::vkAcquireNextImage2KHR( device, pAcquireInfo, pImageIndex );
}
- void vkDestroyBuffer( VkDevice device, VkBuffer buffer, const VkAllocationCallbacks* pAllocator ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkDestroyBuffer( device, buffer, pAllocator );
- }
+ //=== VK_KHR_display ===
- void vkDestroyBufferView( VkDevice device, VkBufferView bufferView, const VkAllocationCallbacks* pAllocator ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkGetPhysicalDeviceDisplayPropertiesKHR( VkPhysicalDevice physicalDevice,
+ uint32_t * pPropertyCount,
+ VkDisplayPropertiesKHR * pProperties ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkDestroyBufferView( device, bufferView, pAllocator );
+ return ::vkGetPhysicalDeviceDisplayPropertiesKHR( physicalDevice, pPropertyCount, pProperties );
}
- void vkDestroyCommandPool( VkDevice device, VkCommandPool commandPool, const VkAllocationCallbacks* pAllocator ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkGetPhysicalDeviceDisplayPlanePropertiesKHR( VkPhysicalDevice physicalDevice,
+ uint32_t * pPropertyCount,
+ VkDisplayPlanePropertiesKHR * pProperties ) const
+ VULKAN_HPP_NOEXCEPT
{
- return ::vkDestroyCommandPool( device, commandPool, pAllocator );
+ return ::vkGetPhysicalDeviceDisplayPlanePropertiesKHR( physicalDevice, pPropertyCount, pProperties );
}
- void vkDestroyDebugReportCallbackEXT( VkInstance instance, VkDebugReportCallbackEXT callback, const VkAllocationCallbacks* pAllocator ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkGetDisplayPlaneSupportedDisplaysKHR( VkPhysicalDevice physicalDevice,
+ uint32_t planeIndex,
+ uint32_t * pDisplayCount,
+ VkDisplayKHR * pDisplays ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkDestroyDebugReportCallbackEXT( instance, callback, pAllocator );
+ return ::vkGetDisplayPlaneSupportedDisplaysKHR( physicalDevice, planeIndex, pDisplayCount, pDisplays );
}
- void vkDestroyDebugUtilsMessengerEXT( VkInstance instance, VkDebugUtilsMessengerEXT messenger, const VkAllocationCallbacks* pAllocator ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkGetDisplayModePropertiesKHR( VkPhysicalDevice physicalDevice,
+ VkDisplayKHR display,
+ uint32_t * pPropertyCount,
+ VkDisplayModePropertiesKHR * pProperties ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkDestroyDebugUtilsMessengerEXT( instance, messenger, pAllocator );
+ return ::vkGetDisplayModePropertiesKHR( physicalDevice, display, pPropertyCount, pProperties );
}
- void vkDestroyDeferredOperationKHR( VkDevice device, VkDeferredOperationKHR operation, const VkAllocationCallbacks* pAllocator ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkCreateDisplayModeKHR( VkPhysicalDevice physicalDevice,
+ VkDisplayKHR display,
+ const VkDisplayModeCreateInfoKHR * pCreateInfo,
+ const VkAllocationCallbacks * pAllocator,
+ VkDisplayModeKHR * pMode ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkDestroyDeferredOperationKHR( device, operation, pAllocator );
+ return ::vkCreateDisplayModeKHR( physicalDevice, display, pCreateInfo, pAllocator, pMode );
}
- void vkDestroyDescriptorPool( VkDevice device, VkDescriptorPool descriptorPool, const VkAllocationCallbacks* pAllocator ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkGetDisplayPlaneCapabilitiesKHR( VkPhysicalDevice physicalDevice,
+ VkDisplayModeKHR mode,
+ uint32_t planeIndex,
+ VkDisplayPlaneCapabilitiesKHR * pCapabilities ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkDestroyDescriptorPool( device, descriptorPool, pAllocator );
+ return ::vkGetDisplayPlaneCapabilitiesKHR( physicalDevice, mode, planeIndex, pCapabilities );
}
- void vkDestroyDescriptorSetLayout( VkDevice device, VkDescriptorSetLayout descriptorSetLayout, const VkAllocationCallbacks* pAllocator ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkCreateDisplayPlaneSurfaceKHR( VkInstance instance,
+ const VkDisplaySurfaceCreateInfoKHR * pCreateInfo,
+ const VkAllocationCallbacks * pAllocator,
+ VkSurfaceKHR * pSurface ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkDestroyDescriptorSetLayout( device, descriptorSetLayout, pAllocator );
+ return ::vkCreateDisplayPlaneSurfaceKHR( instance, pCreateInfo, pAllocator, pSurface );
}
- void vkDestroyDescriptorUpdateTemplate( VkDevice device, VkDescriptorUpdateTemplate descriptorUpdateTemplate, const VkAllocationCallbacks* pAllocator ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkDestroyDescriptorUpdateTemplate( device, descriptorUpdateTemplate, pAllocator );
- }
+ //=== VK_KHR_display_swapchain ===
- void vkDestroyDescriptorUpdateTemplateKHR( VkDevice device, VkDescriptorUpdateTemplate descriptorUpdateTemplate, const VkAllocationCallbacks* pAllocator ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkCreateSharedSwapchainsKHR( VkDevice device,
+ uint32_t swapchainCount,
+ const VkSwapchainCreateInfoKHR * pCreateInfos,
+ const VkAllocationCallbacks * pAllocator,
+ VkSwapchainKHR * pSwapchains ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkDestroyDescriptorUpdateTemplateKHR( device, descriptorUpdateTemplate, pAllocator );
+ return ::vkCreateSharedSwapchainsKHR( device, swapchainCount, pCreateInfos, pAllocator, pSwapchains );
}
- void vkDestroyDevice( VkDevice device, const VkAllocationCallbacks* pAllocator ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkDestroyDevice( device, pAllocator );
- }
+# if defined( VK_USE_PLATFORM_XLIB_KHR )
+ //=== VK_KHR_xlib_surface ===
- void vkDestroyEvent( VkDevice device, VkEvent event, const VkAllocationCallbacks* pAllocator ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkCreateXlibSurfaceKHR( VkInstance instance,
+ const VkXlibSurfaceCreateInfoKHR * pCreateInfo,
+ const VkAllocationCallbacks * pAllocator,
+ VkSurfaceKHR * pSurface ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkDestroyEvent( device, event, pAllocator );
+ return ::vkCreateXlibSurfaceKHR( instance, pCreateInfo, pAllocator, pSurface );
}
- void vkDestroyFence( VkDevice device, VkFence fence, const VkAllocationCallbacks* pAllocator ) const VULKAN_HPP_NOEXCEPT
+ VkBool32 vkGetPhysicalDeviceXlibPresentationSupportKHR( VkPhysicalDevice physicalDevice,
+ uint32_t queueFamilyIndex,
+ Display * dpy,
+ VisualID visualID ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkDestroyFence( device, fence, pAllocator );
+ return ::vkGetPhysicalDeviceXlibPresentationSupportKHR( physicalDevice, queueFamilyIndex, dpy, visualID );
}
+# endif /*VK_USE_PLATFORM_XLIB_KHR*/
- void vkDestroyFramebuffer( VkDevice device, VkFramebuffer framebuffer, const VkAllocationCallbacks* pAllocator ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkDestroyFramebuffer( device, framebuffer, pAllocator );
- }
+# if defined( VK_USE_PLATFORM_XCB_KHR )
+ //=== VK_KHR_xcb_surface ===
- void vkDestroyImage( VkDevice device, VkImage image, const VkAllocationCallbacks* pAllocator ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkCreateXcbSurfaceKHR( VkInstance instance,
+ const VkXcbSurfaceCreateInfoKHR * pCreateInfo,
+ const VkAllocationCallbacks * pAllocator,
+ VkSurfaceKHR * pSurface ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkDestroyImage( device, image, pAllocator );
+ return ::vkCreateXcbSurfaceKHR( instance, pCreateInfo, pAllocator, pSurface );
}
- void vkDestroyImageView( VkDevice device, VkImageView imageView, const VkAllocationCallbacks* pAllocator ) const VULKAN_HPP_NOEXCEPT
+ VkBool32 vkGetPhysicalDeviceXcbPresentationSupportKHR( VkPhysicalDevice physicalDevice,
+ uint32_t queueFamilyIndex,
+ xcb_connection_t * connection,
+ xcb_visualid_t visual_id ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkDestroyImageView( device, imageView, pAllocator );
+ return ::vkGetPhysicalDeviceXcbPresentationSupportKHR( physicalDevice, queueFamilyIndex, connection, visual_id );
}
+# endif /*VK_USE_PLATFORM_XCB_KHR*/
- void vkDestroyIndirectCommandsLayoutNV( VkDevice device, VkIndirectCommandsLayoutNV indirectCommandsLayout, const VkAllocationCallbacks* pAllocator ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkDestroyIndirectCommandsLayoutNV( device, indirectCommandsLayout, pAllocator );
- }
+# if defined( VK_USE_PLATFORM_WAYLAND_KHR )
+ //=== VK_KHR_wayland_surface ===
- void vkDestroyInstance( VkInstance instance, const VkAllocationCallbacks* pAllocator ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkCreateWaylandSurfaceKHR( VkInstance instance,
+ const VkWaylandSurfaceCreateInfoKHR * pCreateInfo,
+ const VkAllocationCallbacks * pAllocator,
+ VkSurfaceKHR * pSurface ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkDestroyInstance( instance, pAllocator );
+ return ::vkCreateWaylandSurfaceKHR( instance, pCreateInfo, pAllocator, pSurface );
}
- void vkDestroyPipeline( VkDevice device, VkPipeline pipeline, const VkAllocationCallbacks* pAllocator ) const VULKAN_HPP_NOEXCEPT
+ VkBool32 vkGetPhysicalDeviceWaylandPresentationSupportKHR( VkPhysicalDevice physicalDevice,
+ uint32_t queueFamilyIndex,
+ struct wl_display * display ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkDestroyPipeline( device, pipeline, pAllocator );
+ return ::vkGetPhysicalDeviceWaylandPresentationSupportKHR( physicalDevice, queueFamilyIndex, display );
}
+# endif /*VK_USE_PLATFORM_WAYLAND_KHR*/
- void vkDestroyPipelineCache( VkDevice device, VkPipelineCache pipelineCache, const VkAllocationCallbacks* pAllocator ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkDestroyPipelineCache( device, pipelineCache, pAllocator );
- }
+# if defined( VK_USE_PLATFORM_ANDROID_KHR )
+ //=== VK_KHR_android_surface ===
- void vkDestroyPipelineLayout( VkDevice device, VkPipelineLayout pipelineLayout, const VkAllocationCallbacks* pAllocator ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkCreateAndroidSurfaceKHR( VkInstance instance,
+ const VkAndroidSurfaceCreateInfoKHR * pCreateInfo,
+ const VkAllocationCallbacks * pAllocator,
+ VkSurfaceKHR * pSurface ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkDestroyPipelineLayout( device, pipelineLayout, pAllocator );
+ return ::vkCreateAndroidSurfaceKHR( instance, pCreateInfo, pAllocator, pSurface );
}
+# endif /*VK_USE_PLATFORM_ANDROID_KHR*/
- void vkDestroyPrivateDataSlotEXT( VkDevice device, VkPrivateDataSlotEXT privateDataSlot, const VkAllocationCallbacks* pAllocator ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkDestroyPrivateDataSlotEXT( device, privateDataSlot, pAllocator );
- }
+# if defined( VK_USE_PLATFORM_WIN32_KHR )
+ //=== VK_KHR_win32_surface ===
- void vkDestroyQueryPool( VkDevice device, VkQueryPool queryPool, const VkAllocationCallbacks* pAllocator ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkCreateWin32SurfaceKHR( VkInstance instance,
+ const VkWin32SurfaceCreateInfoKHR * pCreateInfo,
+ const VkAllocationCallbacks * pAllocator,
+ VkSurfaceKHR * pSurface ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkDestroyQueryPool( device, queryPool, pAllocator );
+ return ::vkCreateWin32SurfaceKHR( instance, pCreateInfo, pAllocator, pSurface );
}
- void vkDestroyRenderPass( VkDevice device, VkRenderPass renderPass, const VkAllocationCallbacks* pAllocator ) const VULKAN_HPP_NOEXCEPT
+ VkBool32 vkGetPhysicalDeviceWin32PresentationSupportKHR( VkPhysicalDevice physicalDevice,
+ uint32_t queueFamilyIndex ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkDestroyRenderPass( device, renderPass, pAllocator );
+ return ::vkGetPhysicalDeviceWin32PresentationSupportKHR( physicalDevice, queueFamilyIndex );
}
+# endif /*VK_USE_PLATFORM_WIN32_KHR*/
- void vkDestroySampler( VkDevice device, VkSampler sampler, const VkAllocationCallbacks* pAllocator ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkDestroySampler( device, sampler, pAllocator );
- }
+ //=== VK_EXT_debug_report ===
- void vkDestroySamplerYcbcrConversion( VkDevice device, VkSamplerYcbcrConversion ycbcrConversion, const VkAllocationCallbacks* pAllocator ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkCreateDebugReportCallbackEXT( VkInstance instance,
+ const VkDebugReportCallbackCreateInfoEXT * pCreateInfo,
+ const VkAllocationCallbacks * pAllocator,
+ VkDebugReportCallbackEXT * pCallback ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkDestroySamplerYcbcrConversion( device, ycbcrConversion, pAllocator );
+ return ::vkCreateDebugReportCallbackEXT( instance, pCreateInfo, pAllocator, pCallback );
}
- void vkDestroySamplerYcbcrConversionKHR( VkDevice device, VkSamplerYcbcrConversion ycbcrConversion, const VkAllocationCallbacks* pAllocator ) const VULKAN_HPP_NOEXCEPT
+ void vkDestroyDebugReportCallbackEXT( VkInstance instance,
+ VkDebugReportCallbackEXT callback,
+ const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkDestroySamplerYcbcrConversionKHR( device, ycbcrConversion, pAllocator );
+ return ::vkDestroyDebugReportCallbackEXT( instance, callback, pAllocator );
}
- void vkDestroySemaphore( VkDevice device, VkSemaphore semaphore, const VkAllocationCallbacks* pAllocator ) const VULKAN_HPP_NOEXCEPT
+ void vkDebugReportMessageEXT( VkInstance instance,
+ VkDebugReportFlagsEXT flags,
+ VkDebugReportObjectTypeEXT objectType,
+ uint64_t object,
+ size_t location,
+ int32_t messageCode,
+ const char * pLayerPrefix,
+ const char * pMessage ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkDestroySemaphore( device, semaphore, pAllocator );
+ return ::vkDebugReportMessageEXT(
+ instance, flags, objectType, object, location, messageCode, pLayerPrefix, pMessage );
}
- void vkDestroyShaderModule( VkDevice device, VkShaderModule shaderModule, const VkAllocationCallbacks* pAllocator ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkDestroyShaderModule( device, shaderModule, pAllocator );
- }
+ //=== VK_EXT_debug_marker ===
- void vkDestroySurfaceKHR( VkInstance instance, VkSurfaceKHR surface, const VkAllocationCallbacks* pAllocator ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkDebugMarkerSetObjectTagEXT( VkDevice device,
+ const VkDebugMarkerObjectTagInfoEXT * pTagInfo ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkDestroySurfaceKHR( instance, surface, pAllocator );
+ return ::vkDebugMarkerSetObjectTagEXT( device, pTagInfo );
}
- void vkDestroySwapchainKHR( VkDevice device, VkSwapchainKHR swapchain, const VkAllocationCallbacks* pAllocator ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkDebugMarkerSetObjectNameEXT( VkDevice device,
+ const VkDebugMarkerObjectNameInfoEXT * pNameInfo ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkDestroySwapchainKHR( device, swapchain, pAllocator );
+ return ::vkDebugMarkerSetObjectNameEXT( device, pNameInfo );
}
- void vkDestroyValidationCacheEXT( VkDevice device, VkValidationCacheEXT validationCache, const VkAllocationCallbacks* pAllocator ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdDebugMarkerBeginEXT( VkCommandBuffer commandBuffer,
+ const VkDebugMarkerMarkerInfoEXT * pMarkerInfo ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkDestroyValidationCacheEXT( device, validationCache, pAllocator );
+ return ::vkCmdDebugMarkerBeginEXT( commandBuffer, pMarkerInfo );
}
- VkResult vkDeviceWaitIdle( VkDevice device ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdDebugMarkerEndEXT( VkCommandBuffer commandBuffer ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkDeviceWaitIdle( device );
+ return ::vkCmdDebugMarkerEndEXT( commandBuffer );
}
- VkResult vkDisplayPowerControlEXT( VkDevice device, VkDisplayKHR display, const VkDisplayPowerInfoEXT* pDisplayPowerInfo ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdDebugMarkerInsertEXT( VkCommandBuffer commandBuffer,
+ const VkDebugMarkerMarkerInfoEXT * pMarkerInfo ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkDisplayPowerControlEXT( device, display, pDisplayPowerInfo );
+ return ::vkCmdDebugMarkerInsertEXT( commandBuffer, pMarkerInfo );
}
- VkResult vkEndCommandBuffer( VkCommandBuffer commandBuffer ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkEndCommandBuffer( commandBuffer );
- }
+# if defined( VK_ENABLE_BETA_EXTENSIONS )
+ //=== VK_KHR_video_queue ===
- VkResult vkEnumerateDeviceExtensionProperties( VkPhysicalDevice physicalDevice, const char* pLayerName, uint32_t* pPropertyCount, VkExtensionProperties* pProperties ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkGetPhysicalDeviceVideoCapabilitiesKHR( VkPhysicalDevice physicalDevice,
+ const VkVideoProfileKHR * pVideoProfile,
+ VkVideoCapabilitiesKHR * pCapabilities ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkEnumerateDeviceExtensionProperties( physicalDevice, pLayerName, pPropertyCount, pProperties );
+ return ::vkGetPhysicalDeviceVideoCapabilitiesKHR( physicalDevice, pVideoProfile, pCapabilities );
}
- VkResult vkEnumerateDeviceLayerProperties( VkPhysicalDevice physicalDevice, uint32_t* pPropertyCount, VkLayerProperties* pProperties ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkGetPhysicalDeviceVideoFormatPropertiesKHR( VkPhysicalDevice physicalDevice,
+ const VkPhysicalDeviceVideoFormatInfoKHR * pVideoFormatInfo,
+ uint32_t * pVideoFormatPropertyCount,
+ VkVideoFormatPropertiesKHR * pVideoFormatProperties ) const
+ VULKAN_HPP_NOEXCEPT
{
- return ::vkEnumerateDeviceLayerProperties( physicalDevice, pPropertyCount, pProperties );
+ return ::vkGetPhysicalDeviceVideoFormatPropertiesKHR(
+ physicalDevice, pVideoFormatInfo, pVideoFormatPropertyCount, pVideoFormatProperties );
}
- VkResult vkEnumerateInstanceExtensionProperties( const char* pLayerName, uint32_t* pPropertyCount, VkExtensionProperties* pProperties ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkCreateVideoSessionKHR( VkDevice device,
+ const VkVideoSessionCreateInfoKHR * pCreateInfo,
+ const VkAllocationCallbacks * pAllocator,
+ VkVideoSessionKHR * pVideoSession ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkEnumerateInstanceExtensionProperties( pLayerName, pPropertyCount, pProperties );
+ return ::vkCreateVideoSessionKHR( device, pCreateInfo, pAllocator, pVideoSession );
}
- VkResult vkEnumerateInstanceLayerProperties( uint32_t* pPropertyCount, VkLayerProperties* pProperties ) const VULKAN_HPP_NOEXCEPT
+ void vkDestroyVideoSessionKHR( VkDevice device,
+ VkVideoSessionKHR videoSession,
+ const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkEnumerateInstanceLayerProperties( pPropertyCount, pProperties );
+ return ::vkDestroyVideoSessionKHR( device, videoSession, pAllocator );
}
- VkResult vkEnumerateInstanceVersion( uint32_t* pApiVersion ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkGetVideoSessionMemoryRequirementsKHR(
+ VkDevice device,
+ VkVideoSessionKHR videoSession,
+ uint32_t * pVideoSessionMemoryRequirementsCount,
+ VkVideoGetMemoryPropertiesKHR * pVideoSessionMemoryRequirements ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkEnumerateInstanceVersion( pApiVersion );
+ return ::vkGetVideoSessionMemoryRequirementsKHR(
+ device, videoSession, pVideoSessionMemoryRequirementsCount, pVideoSessionMemoryRequirements );
}
- VkResult vkEnumeratePhysicalDeviceGroups( VkInstance instance, uint32_t* pPhysicalDeviceGroupCount, VkPhysicalDeviceGroupProperties* pPhysicalDeviceGroupProperties ) const VULKAN_HPP_NOEXCEPT
+ VkResult
+ vkBindVideoSessionMemoryKHR( VkDevice device,
+ VkVideoSessionKHR videoSession,
+ uint32_t videoSessionBindMemoryCount,
+ const VkVideoBindMemoryKHR * pVideoSessionBindMemories ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkEnumeratePhysicalDeviceGroups( instance, pPhysicalDeviceGroupCount, pPhysicalDeviceGroupProperties );
+ return ::vkBindVideoSessionMemoryKHR(
+ device, videoSession, videoSessionBindMemoryCount, pVideoSessionBindMemories );
}
- VkResult vkEnumeratePhysicalDeviceGroupsKHR( VkInstance instance, uint32_t* pPhysicalDeviceGroupCount, VkPhysicalDeviceGroupProperties* pPhysicalDeviceGroupProperties ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkCreateVideoSessionParametersKHR( VkDevice device,
+ const VkVideoSessionParametersCreateInfoKHR * pCreateInfo,
+ const VkAllocationCallbacks * pAllocator,
+ VkVideoSessionParametersKHR * pVideoSessionParameters ) const
+ VULKAN_HPP_NOEXCEPT
{
- return ::vkEnumeratePhysicalDeviceGroupsKHR( instance, pPhysicalDeviceGroupCount, pPhysicalDeviceGroupProperties );
+ return ::vkCreateVideoSessionParametersKHR( device, pCreateInfo, pAllocator, pVideoSessionParameters );
}
- VkResult vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR( VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex, uint32_t* pCounterCount, VkPerformanceCounterKHR* pCounters, VkPerformanceCounterDescriptionKHR* pCounterDescriptions ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkUpdateVideoSessionParametersKHR( VkDevice device,
+ VkVideoSessionParametersKHR videoSessionParameters,
+ const VkVideoSessionParametersUpdateInfoKHR * pUpdateInfo ) const
+ VULKAN_HPP_NOEXCEPT
{
- return ::vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR( physicalDevice, queueFamilyIndex, pCounterCount, pCounters, pCounterDescriptions );
+ return ::vkUpdateVideoSessionParametersKHR( device, videoSessionParameters, pUpdateInfo );
}
- VkResult vkEnumeratePhysicalDevices( VkInstance instance, uint32_t* pPhysicalDeviceCount, VkPhysicalDevice* pPhysicalDevices ) const VULKAN_HPP_NOEXCEPT
+ void vkDestroyVideoSessionParametersKHR( VkDevice device,
+ VkVideoSessionParametersKHR videoSessionParameters,
+ const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkEnumeratePhysicalDevices( instance, pPhysicalDeviceCount, pPhysicalDevices );
+ return ::vkDestroyVideoSessionParametersKHR( device, videoSessionParameters, pAllocator );
}
- VkResult vkFlushMappedMemoryRanges( VkDevice device, uint32_t memoryRangeCount, const VkMappedMemoryRange* pMemoryRanges ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdBeginVideoCodingKHR( VkCommandBuffer commandBuffer,
+ const VkVideoBeginCodingInfoKHR * pBeginInfo ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkFlushMappedMemoryRanges( device, memoryRangeCount, pMemoryRanges );
+ return ::vkCmdBeginVideoCodingKHR( commandBuffer, pBeginInfo );
}
- void vkFreeCommandBuffers( VkDevice device, VkCommandPool commandPool, uint32_t commandBufferCount, const VkCommandBuffer* pCommandBuffers ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdEndVideoCodingKHR( VkCommandBuffer commandBuffer,
+ const VkVideoEndCodingInfoKHR * pEndCodingInfo ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkFreeCommandBuffers( device, commandPool, commandBufferCount, pCommandBuffers );
+ return ::vkCmdEndVideoCodingKHR( commandBuffer, pEndCodingInfo );
}
- VkResult vkFreeDescriptorSets( VkDevice device, VkDescriptorPool descriptorPool, uint32_t descriptorSetCount, const VkDescriptorSet* pDescriptorSets ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdControlVideoCodingKHR( VkCommandBuffer commandBuffer,
+ const VkVideoCodingControlInfoKHR * pCodingControlInfo ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkFreeDescriptorSets( device, descriptorPool, descriptorSetCount, pDescriptorSets );
+ return ::vkCmdControlVideoCodingKHR( commandBuffer, pCodingControlInfo );
}
+# endif /*VK_ENABLE_BETA_EXTENSIONS*/
- void vkFreeMemory( VkDevice device, VkDeviceMemory memory, const VkAllocationCallbacks* pAllocator ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkFreeMemory( device, memory, pAllocator );
- }
+# if defined( VK_ENABLE_BETA_EXTENSIONS )
+ //=== VK_KHR_video_decode_queue ===
- void vkGetAccelerationStructureBuildSizesKHR( VkDevice device, VkAccelerationStructureBuildTypeKHR buildType, const VkAccelerationStructureBuildGeometryInfoKHR* pBuildInfo, const uint32_t* pMaxPrimitiveCounts, VkAccelerationStructureBuildSizesInfoKHR* pSizeInfo ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdDecodeVideoKHR( VkCommandBuffer commandBuffer,
+ const VkVideoDecodeInfoKHR * pFrameInfo ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetAccelerationStructureBuildSizesKHR( device, buildType, pBuildInfo, pMaxPrimitiveCounts, pSizeInfo );
+ return ::vkCmdDecodeVideoKHR( commandBuffer, pFrameInfo );
}
+# endif /*VK_ENABLE_BETA_EXTENSIONS*/
- VkDeviceAddress vkGetAccelerationStructureDeviceAddressKHR( VkDevice device, const VkAccelerationStructureDeviceAddressInfoKHR* pInfo ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkGetAccelerationStructureDeviceAddressKHR( device, pInfo );
- }
+ //=== VK_EXT_transform_feedback ===
- VkResult vkGetAccelerationStructureHandleNV( VkDevice device, VkAccelerationStructureNV accelerationStructure, size_t dataSize, void* pData ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdBindTransformFeedbackBuffersEXT( VkCommandBuffer commandBuffer,
+ uint32_t firstBinding,
+ uint32_t bindingCount,
+ const VkBuffer * pBuffers,
+ const VkDeviceSize * pOffsets,
+ const VkDeviceSize * pSizes ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetAccelerationStructureHandleNV( device, accelerationStructure, dataSize, pData );
+ return ::vkCmdBindTransformFeedbackBuffersEXT(
+ commandBuffer, firstBinding, bindingCount, pBuffers, pOffsets, pSizes );
}
- void vkGetAccelerationStructureMemoryRequirementsNV( VkDevice device, const VkAccelerationStructureMemoryRequirementsInfoNV* pInfo, VkMemoryRequirements2KHR* pMemoryRequirements ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdBeginTransformFeedbackEXT( VkCommandBuffer commandBuffer,
+ uint32_t firstCounterBuffer,
+ uint32_t counterBufferCount,
+ const VkBuffer * pCounterBuffers,
+ const VkDeviceSize * pCounterBufferOffsets ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetAccelerationStructureMemoryRequirementsNV( device, pInfo, pMemoryRequirements );
+ return ::vkCmdBeginTransformFeedbackEXT(
+ commandBuffer, firstCounterBuffer, counterBufferCount, pCounterBuffers, pCounterBufferOffsets );
}
-#ifdef VK_USE_PLATFORM_ANDROID_KHR
- VkResult vkGetAndroidHardwareBufferPropertiesANDROID( VkDevice device, const struct AHardwareBuffer* buffer, VkAndroidHardwareBufferPropertiesANDROID* pProperties ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdEndTransformFeedbackEXT( VkCommandBuffer commandBuffer,
+ uint32_t firstCounterBuffer,
+ uint32_t counterBufferCount,
+ const VkBuffer * pCounterBuffers,
+ const VkDeviceSize * pCounterBufferOffsets ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetAndroidHardwareBufferPropertiesANDROID( device, buffer, pProperties );
+ return ::vkCmdEndTransformFeedbackEXT(
+ commandBuffer, firstCounterBuffer, counterBufferCount, pCounterBuffers, pCounterBufferOffsets );
}
-#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
- VkDeviceAddress vkGetBufferDeviceAddress( VkDevice device, const VkBufferDeviceAddressInfo* pInfo ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdBeginQueryIndexedEXT( VkCommandBuffer commandBuffer,
+ VkQueryPool queryPool,
+ uint32_t query,
+ VkQueryControlFlags flags,
+ uint32_t index ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetBufferDeviceAddress( device, pInfo );
+ return ::vkCmdBeginQueryIndexedEXT( commandBuffer, queryPool, query, flags, index );
}
- VkDeviceAddress vkGetBufferDeviceAddressEXT( VkDevice device, const VkBufferDeviceAddressInfo* pInfo ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdEndQueryIndexedEXT( VkCommandBuffer commandBuffer,
+ VkQueryPool queryPool,
+ uint32_t query,
+ uint32_t index ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetBufferDeviceAddressEXT( device, pInfo );
+ return ::vkCmdEndQueryIndexedEXT( commandBuffer, queryPool, query, index );
}
- VkDeviceAddress vkGetBufferDeviceAddressKHR( VkDevice device, const VkBufferDeviceAddressInfo* pInfo ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdDrawIndirectByteCountEXT( VkCommandBuffer commandBuffer,
+ uint32_t instanceCount,
+ uint32_t firstInstance,
+ VkBuffer counterBuffer,
+ VkDeviceSize counterBufferOffset,
+ uint32_t counterOffset,
+ uint32_t vertexStride ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetBufferDeviceAddressKHR( device, pInfo );
+ return ::vkCmdDrawIndirectByteCountEXT(
+ commandBuffer, instanceCount, firstInstance, counterBuffer, counterBufferOffset, counterOffset, vertexStride );
}
- void vkGetBufferMemoryRequirements( VkDevice device, VkBuffer buffer, VkMemoryRequirements* pMemoryRequirements ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkGetBufferMemoryRequirements( device, buffer, pMemoryRequirements );
- }
+ //=== VK_NVX_binary_import ===
- void vkGetBufferMemoryRequirements2( VkDevice device, const VkBufferMemoryRequirementsInfo2* pInfo, VkMemoryRequirements2* pMemoryRequirements ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkCreateCuModuleNVX( VkDevice device,
+ const VkCuModuleCreateInfoNVX * pCreateInfo,
+ const VkAllocationCallbacks * pAllocator,
+ VkCuModuleNVX * pModule ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetBufferMemoryRequirements2( device, pInfo, pMemoryRequirements );
+ return ::vkCreateCuModuleNVX( device, pCreateInfo, pAllocator, pModule );
}
- void vkGetBufferMemoryRequirements2KHR( VkDevice device, const VkBufferMemoryRequirementsInfo2* pInfo, VkMemoryRequirements2* pMemoryRequirements ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkCreateCuFunctionNVX( VkDevice device,
+ const VkCuFunctionCreateInfoNVX * pCreateInfo,
+ const VkAllocationCallbacks * pAllocator,
+ VkCuFunctionNVX * pFunction ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetBufferMemoryRequirements2KHR( device, pInfo, pMemoryRequirements );
+ return ::vkCreateCuFunctionNVX( device, pCreateInfo, pAllocator, pFunction );
}
- uint64_t vkGetBufferOpaqueCaptureAddress( VkDevice device, const VkBufferDeviceAddressInfo* pInfo ) const VULKAN_HPP_NOEXCEPT
+ void vkDestroyCuModuleNVX( VkDevice device,
+ VkCuModuleNVX module,
+ const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetBufferOpaqueCaptureAddress( device, pInfo );
+ return ::vkDestroyCuModuleNVX( device, module, pAllocator );
}
- uint64_t vkGetBufferOpaqueCaptureAddressKHR( VkDevice device, const VkBufferDeviceAddressInfo* pInfo ) const VULKAN_HPP_NOEXCEPT
+ void vkDestroyCuFunctionNVX( VkDevice device,
+ VkCuFunctionNVX function,
+ const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetBufferOpaqueCaptureAddressKHR( device, pInfo );
+ return ::vkDestroyCuFunctionNVX( device, function, pAllocator );
}
- VkResult vkGetCalibratedTimestampsEXT( VkDevice device, uint32_t timestampCount, const VkCalibratedTimestampInfoEXT* pTimestampInfos, uint64_t* pTimestamps, uint64_t* pMaxDeviation ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdCuLaunchKernelNVX( VkCommandBuffer commandBuffer,
+ const VkCuLaunchInfoNVX * pLaunchInfo ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetCalibratedTimestampsEXT( device, timestampCount, pTimestampInfos, pTimestamps, pMaxDeviation );
+ return ::vkCmdCuLaunchKernelNVX( commandBuffer, pLaunchInfo );
}
- uint32_t vkGetDeferredOperationMaxConcurrencyKHR( VkDevice device, VkDeferredOperationKHR operation ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkGetDeferredOperationMaxConcurrencyKHR( device, operation );
- }
+ //=== VK_NVX_image_view_handle ===
- VkResult vkGetDeferredOperationResultKHR( VkDevice device, VkDeferredOperationKHR operation ) const VULKAN_HPP_NOEXCEPT
+ uint32_t vkGetImageViewHandleNVX( VkDevice device,
+ const VkImageViewHandleInfoNVX * pInfo ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetDeferredOperationResultKHR( device, operation );
+ return ::vkGetImageViewHandleNVX( device, pInfo );
}
- void vkGetDescriptorSetLayoutSupport( VkDevice device, const VkDescriptorSetLayoutCreateInfo* pCreateInfo, VkDescriptorSetLayoutSupport* pSupport ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkGetImageViewAddressNVX( VkDevice device,
+ VkImageView imageView,
+ VkImageViewAddressPropertiesNVX * pProperties ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetDescriptorSetLayoutSupport( device, pCreateInfo, pSupport );
+ return ::vkGetImageViewAddressNVX( device, imageView, pProperties );
}
- void vkGetDescriptorSetLayoutSupportKHR( VkDevice device, const VkDescriptorSetLayoutCreateInfo* pCreateInfo, VkDescriptorSetLayoutSupport* pSupport ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkGetDescriptorSetLayoutSupportKHR( device, pCreateInfo, pSupport );
- }
+ //=== VK_AMD_draw_indirect_count ===
- void vkGetDeviceAccelerationStructureCompatibilityKHR( VkDevice device, const VkAccelerationStructureVersionInfoKHR* pVersionInfo, VkAccelerationStructureCompatibilityKHR* pCompatibility ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdDrawIndirectCountAMD( VkCommandBuffer commandBuffer,
+ VkBuffer buffer,
+ VkDeviceSize offset,
+ VkBuffer countBuffer,
+ VkDeviceSize countBufferOffset,
+ uint32_t maxDrawCount,
+ uint32_t stride ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetDeviceAccelerationStructureCompatibilityKHR( device, pVersionInfo, pCompatibility );
+ return ::vkCmdDrawIndirectCountAMD(
+ commandBuffer, buffer, offset, countBuffer, countBufferOffset, maxDrawCount, stride );
}
- void vkGetDeviceGroupPeerMemoryFeatures( VkDevice device, uint32_t heapIndex, uint32_t localDeviceIndex, uint32_t remoteDeviceIndex, VkPeerMemoryFeatureFlags* pPeerMemoryFeatures ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdDrawIndexedIndirectCountAMD( VkCommandBuffer commandBuffer,
+ VkBuffer buffer,
+ VkDeviceSize offset,
+ VkBuffer countBuffer,
+ VkDeviceSize countBufferOffset,
+ uint32_t maxDrawCount,
+ uint32_t stride ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetDeviceGroupPeerMemoryFeatures( device, heapIndex, localDeviceIndex, remoteDeviceIndex, pPeerMemoryFeatures );
+ return ::vkCmdDrawIndexedIndirectCountAMD(
+ commandBuffer, buffer, offset, countBuffer, countBufferOffset, maxDrawCount, stride );
}
- void vkGetDeviceGroupPeerMemoryFeaturesKHR( VkDevice device, uint32_t heapIndex, uint32_t localDeviceIndex, uint32_t remoteDeviceIndex, VkPeerMemoryFeatureFlags* pPeerMemoryFeatures ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkGetDeviceGroupPeerMemoryFeaturesKHR( device, heapIndex, localDeviceIndex, remoteDeviceIndex, pPeerMemoryFeatures );
- }
+ //=== VK_AMD_shader_info ===
- VkResult vkGetDeviceGroupPresentCapabilitiesKHR( VkDevice device, VkDeviceGroupPresentCapabilitiesKHR* pDeviceGroupPresentCapabilities ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkGetShaderInfoAMD( VkDevice device,
+ VkPipeline pipeline,
+ VkShaderStageFlagBits shaderStage,
+ VkShaderInfoTypeAMD infoType,
+ size_t * pInfoSize,
+ void * pInfo ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetDeviceGroupPresentCapabilitiesKHR( device, pDeviceGroupPresentCapabilities );
+ return ::vkGetShaderInfoAMD( device, pipeline, shaderStage, infoType, pInfoSize, pInfo );
}
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- VkResult vkGetDeviceGroupSurfacePresentModes2EXT( VkDevice device, const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo, VkDeviceGroupPresentModeFlagsKHR* pModes ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkGetDeviceGroupSurfacePresentModes2EXT( device, pSurfaceInfo, pModes );
- }
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+# if defined( VK_USE_PLATFORM_GGP )
+ //=== VK_GGP_stream_descriptor_surface ===
- VkResult vkGetDeviceGroupSurfacePresentModesKHR( VkDevice device, VkSurfaceKHR surface, VkDeviceGroupPresentModeFlagsKHR* pModes ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkCreateStreamDescriptorSurfaceGGP( VkInstance instance,
+ const VkStreamDescriptorSurfaceCreateInfoGGP * pCreateInfo,
+ const VkAllocationCallbacks * pAllocator,
+ VkSurfaceKHR * pSurface ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetDeviceGroupSurfacePresentModesKHR( device, surface, pModes );
+ return ::vkCreateStreamDescriptorSurfaceGGP( instance, pCreateInfo, pAllocator, pSurface );
}
+# endif /*VK_USE_PLATFORM_GGP*/
- void vkGetDeviceMemoryCommitment( VkDevice device, VkDeviceMemory memory, VkDeviceSize* pCommittedMemoryInBytes ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkGetDeviceMemoryCommitment( device, memory, pCommittedMemoryInBytes );
- }
+ //=== VK_NV_external_memory_capabilities ===
- uint64_t vkGetDeviceMemoryOpaqueCaptureAddress( VkDevice device, const VkDeviceMemoryOpaqueCaptureAddressInfo* pInfo ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkGetPhysicalDeviceExternalImageFormatPropertiesNV(
+ VkPhysicalDevice physicalDevice,
+ VkFormat format,
+ VkImageType type,
+ VkImageTiling tiling,
+ VkImageUsageFlags usage,
+ VkImageCreateFlags flags,
+ VkExternalMemoryHandleTypeFlagsNV externalHandleType,
+ VkExternalImageFormatPropertiesNV * pExternalImageFormatProperties ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetDeviceMemoryOpaqueCaptureAddress( device, pInfo );
+ return ::vkGetPhysicalDeviceExternalImageFormatPropertiesNV(
+ physicalDevice, format, type, tiling, usage, flags, externalHandleType, pExternalImageFormatProperties );
}
- uint64_t vkGetDeviceMemoryOpaqueCaptureAddressKHR( VkDevice device, const VkDeviceMemoryOpaqueCaptureAddressInfo* pInfo ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkGetDeviceMemoryOpaqueCaptureAddressKHR( device, pInfo );
- }
+# if defined( VK_USE_PLATFORM_WIN32_KHR )
+ //=== VK_NV_external_memory_win32 ===
- PFN_vkVoidFunction vkGetDeviceProcAddr( VkDevice device, const char* pName ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkGetMemoryWin32HandleNV( VkDevice device,
+ VkDeviceMemory memory,
+ VkExternalMemoryHandleTypeFlagsNV handleType,
+ HANDLE * pHandle ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetDeviceProcAddr( device, pName );
+ return ::vkGetMemoryWin32HandleNV( device, memory, handleType, pHandle );
}
+# endif /*VK_USE_PLATFORM_WIN32_KHR*/
- void vkGetDeviceQueue( VkDevice device, uint32_t queueFamilyIndex, uint32_t queueIndex, VkQueue* pQueue ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkGetDeviceQueue( device, queueFamilyIndex, queueIndex, pQueue );
- }
+ //=== VK_KHR_get_physical_device_properties2 ===
- void vkGetDeviceQueue2( VkDevice device, const VkDeviceQueueInfo2* pQueueInfo, VkQueue* pQueue ) const VULKAN_HPP_NOEXCEPT
+ void vkGetPhysicalDeviceFeatures2KHR( VkPhysicalDevice physicalDevice,
+ VkPhysicalDeviceFeatures2 * pFeatures ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetDeviceQueue2( device, pQueueInfo, pQueue );
+ return ::vkGetPhysicalDeviceFeatures2KHR( physicalDevice, pFeatures );
}
- VkResult vkGetDisplayModeProperties2KHR( VkPhysicalDevice physicalDevice, VkDisplayKHR display, uint32_t* pPropertyCount, VkDisplayModeProperties2KHR* pProperties ) const VULKAN_HPP_NOEXCEPT
+ void vkGetPhysicalDeviceProperties2KHR( VkPhysicalDevice physicalDevice,
+ VkPhysicalDeviceProperties2 * pProperties ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetDisplayModeProperties2KHR( physicalDevice, display, pPropertyCount, pProperties );
+ return ::vkGetPhysicalDeviceProperties2KHR( physicalDevice, pProperties );
}
- VkResult vkGetDisplayModePropertiesKHR( VkPhysicalDevice physicalDevice, VkDisplayKHR display, uint32_t* pPropertyCount, VkDisplayModePropertiesKHR* pProperties ) const VULKAN_HPP_NOEXCEPT
+ void vkGetPhysicalDeviceFormatProperties2KHR( VkPhysicalDevice physicalDevice,
+ VkFormat format,
+ VkFormatProperties2 * pFormatProperties ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetDisplayModePropertiesKHR( physicalDevice, display, pPropertyCount, pProperties );
+ return ::vkGetPhysicalDeviceFormatProperties2KHR( physicalDevice, format, pFormatProperties );
}
- VkResult vkGetDisplayPlaneCapabilities2KHR( VkPhysicalDevice physicalDevice, const VkDisplayPlaneInfo2KHR* pDisplayPlaneInfo, VkDisplayPlaneCapabilities2KHR* pCapabilities ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkGetPhysicalDeviceImageFormatProperties2KHR( VkPhysicalDevice physicalDevice,
+ const VkPhysicalDeviceImageFormatInfo2 * pImageFormatInfo,
+ VkImageFormatProperties2 * pImageFormatProperties ) const
+ VULKAN_HPP_NOEXCEPT
{
- return ::vkGetDisplayPlaneCapabilities2KHR( physicalDevice, pDisplayPlaneInfo, pCapabilities );
+ return ::vkGetPhysicalDeviceImageFormatProperties2KHR( physicalDevice, pImageFormatInfo, pImageFormatProperties );
}
- VkResult vkGetDisplayPlaneCapabilitiesKHR( VkPhysicalDevice physicalDevice, VkDisplayModeKHR mode, uint32_t planeIndex, VkDisplayPlaneCapabilitiesKHR* pCapabilities ) const VULKAN_HPP_NOEXCEPT
+ void vkGetPhysicalDeviceQueueFamilyProperties2KHR( VkPhysicalDevice physicalDevice,
+ uint32_t * pQueueFamilyPropertyCount,
+ VkQueueFamilyProperties2 * pQueueFamilyProperties ) const
+ VULKAN_HPP_NOEXCEPT
{
- return ::vkGetDisplayPlaneCapabilitiesKHR( physicalDevice, mode, planeIndex, pCapabilities );
+ return ::vkGetPhysicalDeviceQueueFamilyProperties2KHR(
+ physicalDevice, pQueueFamilyPropertyCount, pQueueFamilyProperties );
}
- VkResult vkGetDisplayPlaneSupportedDisplaysKHR( VkPhysicalDevice physicalDevice, uint32_t planeIndex, uint32_t* pDisplayCount, VkDisplayKHR* pDisplays ) const VULKAN_HPP_NOEXCEPT
+ void vkGetPhysicalDeviceMemoryProperties2KHR(
+ VkPhysicalDevice physicalDevice, VkPhysicalDeviceMemoryProperties2 * pMemoryProperties ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetDisplayPlaneSupportedDisplaysKHR( physicalDevice, planeIndex, pDisplayCount, pDisplays );
+ return ::vkGetPhysicalDeviceMemoryProperties2KHR( physicalDevice, pMemoryProperties );
}
- VkResult vkGetEventStatus( VkDevice device, VkEvent event ) const VULKAN_HPP_NOEXCEPT
+ void vkGetPhysicalDeviceSparseImageFormatProperties2KHR( VkPhysicalDevice physicalDevice,
+ const VkPhysicalDeviceSparseImageFormatInfo2 * pFormatInfo,
+ uint32_t * pPropertyCount,
+ VkSparseImageFormatProperties2 * pProperties ) const
+ VULKAN_HPP_NOEXCEPT
{
- return ::vkGetEventStatus( device, event );
+ return ::vkGetPhysicalDeviceSparseImageFormatProperties2KHR(
+ physicalDevice, pFormatInfo, pPropertyCount, pProperties );
}
- VkResult vkGetFenceFdKHR( VkDevice device, const VkFenceGetFdInfoKHR* pGetFdInfo, int* pFd ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkGetFenceFdKHR( device, pGetFdInfo, pFd );
- }
+ //=== VK_KHR_device_group ===
- VkResult vkGetFenceStatus( VkDevice device, VkFence fence ) const VULKAN_HPP_NOEXCEPT
+ void
+ vkGetDeviceGroupPeerMemoryFeaturesKHR( VkDevice device,
+ uint32_t heapIndex,
+ uint32_t localDeviceIndex,
+ uint32_t remoteDeviceIndex,
+ VkPeerMemoryFeatureFlags * pPeerMemoryFeatures ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetFenceStatus( device, fence );
+ return ::vkGetDeviceGroupPeerMemoryFeaturesKHR(
+ device, heapIndex, localDeviceIndex, remoteDeviceIndex, pPeerMemoryFeatures );
}
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- VkResult vkGetFenceWin32HandleKHR( VkDevice device, const VkFenceGetWin32HandleInfoKHR* pGetWin32HandleInfo, HANDLE* pHandle ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdSetDeviceMaskKHR( VkCommandBuffer commandBuffer, uint32_t deviceMask ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetFenceWin32HandleKHR( device, pGetWin32HandleInfo, pHandle );
+ return ::vkCmdSetDeviceMaskKHR( commandBuffer, deviceMask );
}
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
- void vkGetGeneratedCommandsMemoryRequirementsNV( VkDevice device, const VkGeneratedCommandsMemoryRequirementsInfoNV* pInfo, VkMemoryRequirements2* pMemoryRequirements ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdDispatchBaseKHR( VkCommandBuffer commandBuffer,
+ uint32_t baseGroupX,
+ uint32_t baseGroupY,
+ uint32_t baseGroupZ,
+ uint32_t groupCountX,
+ uint32_t groupCountY,
+ uint32_t groupCountZ ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetGeneratedCommandsMemoryRequirementsNV( device, pInfo, pMemoryRequirements );
+ return ::vkCmdDispatchBaseKHR(
+ commandBuffer, baseGroupX, baseGroupY, baseGroupZ, groupCountX, groupCountY, groupCountZ );
}
- VkResult vkGetImageDrmFormatModifierPropertiesEXT( VkDevice device, VkImage image, VkImageDrmFormatModifierPropertiesEXT* pProperties ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkGetImageDrmFormatModifierPropertiesEXT( device, image, pProperties );
- }
+# if defined( VK_USE_PLATFORM_VI_NN )
+ //=== VK_NN_vi_surface ===
- void vkGetImageMemoryRequirements( VkDevice device, VkImage image, VkMemoryRequirements* pMemoryRequirements ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkCreateViSurfaceNN( VkInstance instance,
+ const VkViSurfaceCreateInfoNN * pCreateInfo,
+ const VkAllocationCallbacks * pAllocator,
+ VkSurfaceKHR * pSurface ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetImageMemoryRequirements( device, image, pMemoryRequirements );
+ return ::vkCreateViSurfaceNN( instance, pCreateInfo, pAllocator, pSurface );
}
+# endif /*VK_USE_PLATFORM_VI_NN*/
- void vkGetImageMemoryRequirements2( VkDevice device, const VkImageMemoryRequirementsInfo2* pInfo, VkMemoryRequirements2* pMemoryRequirements ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkGetImageMemoryRequirements2( device, pInfo, pMemoryRequirements );
- }
+ //=== VK_KHR_maintenance1 ===
- void vkGetImageMemoryRequirements2KHR( VkDevice device, const VkImageMemoryRequirementsInfo2* pInfo, VkMemoryRequirements2* pMemoryRequirements ) const VULKAN_HPP_NOEXCEPT
+ void vkTrimCommandPoolKHR( VkDevice device,
+ VkCommandPool commandPool,
+ VkCommandPoolTrimFlags flags ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetImageMemoryRequirements2KHR( device, pInfo, pMemoryRequirements );
+ return ::vkTrimCommandPoolKHR( device, commandPool, flags );
}
- void vkGetImageSparseMemoryRequirements( VkDevice device, VkImage image, uint32_t* pSparseMemoryRequirementCount, VkSparseImageMemoryRequirements* pSparseMemoryRequirements ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkGetImageSparseMemoryRequirements( device, image, pSparseMemoryRequirementCount, pSparseMemoryRequirements );
- }
+ //=== VK_KHR_device_group_creation ===
- void vkGetImageSparseMemoryRequirements2( VkDevice device, const VkImageSparseMemoryRequirementsInfo2* pInfo, uint32_t* pSparseMemoryRequirementCount, VkSparseImageMemoryRequirements2* pSparseMemoryRequirements ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkEnumeratePhysicalDeviceGroupsKHR(
+ VkInstance instance,
+ uint32_t * pPhysicalDeviceGroupCount,
+ VkPhysicalDeviceGroupProperties * pPhysicalDeviceGroupProperties ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetImageSparseMemoryRequirements2( device, pInfo, pSparseMemoryRequirementCount, pSparseMemoryRequirements );
+ return ::vkEnumeratePhysicalDeviceGroupsKHR(
+ instance, pPhysicalDeviceGroupCount, pPhysicalDeviceGroupProperties );
}
- void vkGetImageSparseMemoryRequirements2KHR( VkDevice device, const VkImageSparseMemoryRequirementsInfo2* pInfo, uint32_t* pSparseMemoryRequirementCount, VkSparseImageMemoryRequirements2* pSparseMemoryRequirements ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkGetImageSparseMemoryRequirements2KHR( device, pInfo, pSparseMemoryRequirementCount, pSparseMemoryRequirements );
- }
+ //=== VK_KHR_external_memory_capabilities ===
- void vkGetImageSubresourceLayout( VkDevice device, VkImage image, const VkImageSubresource* pSubresource, VkSubresourceLayout* pLayout ) const VULKAN_HPP_NOEXCEPT
+ void vkGetPhysicalDeviceExternalBufferPropertiesKHR( VkPhysicalDevice physicalDevice,
+ const VkPhysicalDeviceExternalBufferInfo * pExternalBufferInfo,
+ VkExternalBufferProperties * pExternalBufferProperties ) const
+ VULKAN_HPP_NOEXCEPT
{
- return ::vkGetImageSubresourceLayout( device, image, pSubresource, pLayout );
+ return ::vkGetPhysicalDeviceExternalBufferPropertiesKHR(
+ physicalDevice, pExternalBufferInfo, pExternalBufferProperties );
}
- VkResult vkGetImageViewAddressNVX( VkDevice device, VkImageView imageView, VkImageViewAddressPropertiesNVX* pProperties ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkGetImageViewAddressNVX( device, imageView, pProperties );
- }
+# if defined( VK_USE_PLATFORM_WIN32_KHR )
+ //=== VK_KHR_external_memory_win32 ===
- uint32_t vkGetImageViewHandleNVX( VkDevice device, const VkImageViewHandleInfoNVX* pInfo ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkGetMemoryWin32HandleKHR( VkDevice device,
+ const VkMemoryGetWin32HandleInfoKHR * pGetWin32HandleInfo,
+ HANDLE * pHandle ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetImageViewHandleNVX( device, pInfo );
+ return ::vkGetMemoryWin32HandleKHR( device, pGetWin32HandleInfo, pHandle );
}
- PFN_vkVoidFunction vkGetInstanceProcAddr( VkInstance instance, const char* pName ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkGetMemoryWin32HandlePropertiesKHR(
+ VkDevice device,
+ VkExternalMemoryHandleTypeFlagBits handleType,
+ HANDLE handle,
+ VkMemoryWin32HandlePropertiesKHR * pMemoryWin32HandleProperties ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetInstanceProcAddr( instance, pName );
+ return ::vkGetMemoryWin32HandlePropertiesKHR( device, handleType, handle, pMemoryWin32HandleProperties );
}
+# endif /*VK_USE_PLATFORM_WIN32_KHR*/
-#ifdef VK_USE_PLATFORM_ANDROID_KHR
- VkResult vkGetMemoryAndroidHardwareBufferANDROID( VkDevice device, const VkMemoryGetAndroidHardwareBufferInfoANDROID* pInfo, struct AHardwareBuffer** pBuffer ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkGetMemoryAndroidHardwareBufferANDROID( device, pInfo, pBuffer );
- }
-#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
+ //=== VK_KHR_external_memory_fd ===
- VkResult vkGetMemoryFdKHR( VkDevice device, const VkMemoryGetFdInfoKHR* pGetFdInfo, int* pFd ) const VULKAN_HPP_NOEXCEPT
+ VkResult
+ vkGetMemoryFdKHR( VkDevice device, const VkMemoryGetFdInfoKHR * pGetFdInfo, int * pFd ) const VULKAN_HPP_NOEXCEPT
{
return ::vkGetMemoryFdKHR( device, pGetFdInfo, pFd );
}
- VkResult vkGetMemoryFdPropertiesKHR( VkDevice device, VkExternalMemoryHandleTypeFlagBits handleType, int fd, VkMemoryFdPropertiesKHR* pMemoryFdProperties ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkGetMemoryFdPropertiesKHR( VkDevice device,
+ VkExternalMemoryHandleTypeFlagBits handleType,
+ int fd,
+ VkMemoryFdPropertiesKHR * pMemoryFdProperties ) const VULKAN_HPP_NOEXCEPT
{
return ::vkGetMemoryFdPropertiesKHR( device, handleType, fd, pMemoryFdProperties );
}
- VkResult vkGetMemoryHostPointerPropertiesEXT( VkDevice device, VkExternalMemoryHandleTypeFlagBits handleType, const void* pHostPointer, VkMemoryHostPointerPropertiesEXT* pMemoryHostPointerProperties ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkGetMemoryHostPointerPropertiesEXT( device, handleType, pHostPointer, pMemoryHostPointerProperties );
- }
+ //=== VK_KHR_external_semaphore_capabilities ===
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- VkResult vkGetMemoryWin32HandleKHR( VkDevice device, const VkMemoryGetWin32HandleInfoKHR* pGetWin32HandleInfo, HANDLE* pHandle ) const VULKAN_HPP_NOEXCEPT
+ void vkGetPhysicalDeviceExternalSemaphorePropertiesKHR(
+ VkPhysicalDevice physicalDevice,
+ const VkPhysicalDeviceExternalSemaphoreInfo * pExternalSemaphoreInfo,
+ VkExternalSemaphoreProperties * pExternalSemaphoreProperties ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetMemoryWin32HandleKHR( device, pGetWin32HandleInfo, pHandle );
+ return ::vkGetPhysicalDeviceExternalSemaphorePropertiesKHR(
+ physicalDevice, pExternalSemaphoreInfo, pExternalSemaphoreProperties );
}
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- VkResult vkGetMemoryWin32HandleNV( VkDevice device, VkDeviceMemory memory, VkExternalMemoryHandleTypeFlagsNV handleType, HANDLE* pHandle ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkGetMemoryWin32HandleNV( device, memory, handleType, pHandle );
- }
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+# if defined( VK_USE_PLATFORM_WIN32_KHR )
+ //=== VK_KHR_external_semaphore_win32 ===
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- VkResult vkGetMemoryWin32HandlePropertiesKHR( VkDevice device, VkExternalMemoryHandleTypeFlagBits handleType, HANDLE handle, VkMemoryWin32HandlePropertiesKHR* pMemoryWin32HandleProperties ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkImportSemaphoreWin32HandleKHR(
+ VkDevice device,
+ const VkImportSemaphoreWin32HandleInfoKHR * pImportSemaphoreWin32HandleInfo ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetMemoryWin32HandlePropertiesKHR( device, handleType, handle, pMemoryWin32HandleProperties );
+ return ::vkImportSemaphoreWin32HandleKHR( device, pImportSemaphoreWin32HandleInfo );
}
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
- VkResult vkGetPastPresentationTimingGOOGLE( VkDevice device, VkSwapchainKHR swapchain, uint32_t* pPresentationTimingCount, VkPastPresentationTimingGOOGLE* pPresentationTimings ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkGetSemaphoreWin32HandleKHR( VkDevice device,
+ const VkSemaphoreGetWin32HandleInfoKHR * pGetWin32HandleInfo,
+ HANDLE * pHandle ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetPastPresentationTimingGOOGLE( device, swapchain, pPresentationTimingCount, pPresentationTimings );
+ return ::vkGetSemaphoreWin32HandleKHR( device, pGetWin32HandleInfo, pHandle );
}
+# endif /*VK_USE_PLATFORM_WIN32_KHR*/
- VkResult vkGetPerformanceParameterINTEL( VkDevice device, VkPerformanceParameterTypeINTEL parameter, VkPerformanceValueINTEL* pValue ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkGetPerformanceParameterINTEL( device, parameter, pValue );
- }
+ //=== VK_KHR_external_semaphore_fd ===
- VkResult vkGetPhysicalDeviceCalibrateableTimeDomainsEXT( VkPhysicalDevice physicalDevice, uint32_t* pTimeDomainCount, VkTimeDomainEXT* pTimeDomains ) const VULKAN_HPP_NOEXCEPT
+ VkResult
+ vkImportSemaphoreFdKHR( VkDevice device,
+ const VkImportSemaphoreFdInfoKHR * pImportSemaphoreFdInfo ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetPhysicalDeviceCalibrateableTimeDomainsEXT( physicalDevice, pTimeDomainCount, pTimeDomains );
+ return ::vkImportSemaphoreFdKHR( device, pImportSemaphoreFdInfo );
}
- VkResult vkGetPhysicalDeviceCooperativeMatrixPropertiesNV( VkPhysicalDevice physicalDevice, uint32_t* pPropertyCount, VkCooperativeMatrixPropertiesNV* pProperties ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkGetSemaphoreFdKHR( VkDevice device,
+ const VkSemaphoreGetFdInfoKHR * pGetFdInfo,
+ int * pFd ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetPhysicalDeviceCooperativeMatrixPropertiesNV( physicalDevice, pPropertyCount, pProperties );
+ return ::vkGetSemaphoreFdKHR( device, pGetFdInfo, pFd );
}
-#ifdef VK_USE_PLATFORM_DIRECTFB_EXT
- VkBool32 vkGetPhysicalDeviceDirectFBPresentationSupportEXT( VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex, IDirectFB* dfb ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkGetPhysicalDeviceDirectFBPresentationSupportEXT( physicalDevice, queueFamilyIndex, dfb );
- }
-#endif /*VK_USE_PLATFORM_DIRECTFB_EXT*/
+ //=== VK_KHR_push_descriptor ===
- VkResult vkGetPhysicalDeviceDisplayPlaneProperties2KHR( VkPhysicalDevice physicalDevice, uint32_t* pPropertyCount, VkDisplayPlaneProperties2KHR* pProperties ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdPushDescriptorSetKHR( VkCommandBuffer commandBuffer,
+ VkPipelineBindPoint pipelineBindPoint,
+ VkPipelineLayout layout,
+ uint32_t set,
+ uint32_t descriptorWriteCount,
+ const VkWriteDescriptorSet * pDescriptorWrites ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetPhysicalDeviceDisplayPlaneProperties2KHR( physicalDevice, pPropertyCount, pProperties );
+ return ::vkCmdPushDescriptorSetKHR(
+ commandBuffer, pipelineBindPoint, layout, set, descriptorWriteCount, pDescriptorWrites );
}
- VkResult vkGetPhysicalDeviceDisplayPlanePropertiesKHR( VkPhysicalDevice physicalDevice, uint32_t* pPropertyCount, VkDisplayPlanePropertiesKHR* pProperties ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdPushDescriptorSetWithTemplateKHR( VkCommandBuffer commandBuffer,
+ VkDescriptorUpdateTemplate descriptorUpdateTemplate,
+ VkPipelineLayout layout,
+ uint32_t set,
+ const void * pData ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetPhysicalDeviceDisplayPlanePropertiesKHR( physicalDevice, pPropertyCount, pProperties );
+ return ::vkCmdPushDescriptorSetWithTemplateKHR( commandBuffer, descriptorUpdateTemplate, layout, set, pData );
}
- VkResult vkGetPhysicalDeviceDisplayProperties2KHR( VkPhysicalDevice physicalDevice, uint32_t* pPropertyCount, VkDisplayProperties2KHR* pProperties ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkGetPhysicalDeviceDisplayProperties2KHR( physicalDevice, pPropertyCount, pProperties );
- }
+ //=== VK_EXT_conditional_rendering ===
- VkResult vkGetPhysicalDeviceDisplayPropertiesKHR( VkPhysicalDevice physicalDevice, uint32_t* pPropertyCount, VkDisplayPropertiesKHR* pProperties ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdBeginConditionalRenderingEXT(
+ VkCommandBuffer commandBuffer,
+ const VkConditionalRenderingBeginInfoEXT * pConditionalRenderingBegin ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetPhysicalDeviceDisplayPropertiesKHR( physicalDevice, pPropertyCount, pProperties );
+ return ::vkCmdBeginConditionalRenderingEXT( commandBuffer, pConditionalRenderingBegin );
}
- void vkGetPhysicalDeviceExternalBufferProperties( VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalBufferInfo* pExternalBufferInfo, VkExternalBufferProperties* pExternalBufferProperties ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdEndConditionalRenderingEXT( VkCommandBuffer commandBuffer ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetPhysicalDeviceExternalBufferProperties( physicalDevice, pExternalBufferInfo, pExternalBufferProperties );
+ return ::vkCmdEndConditionalRenderingEXT( commandBuffer );
}
- void vkGetPhysicalDeviceExternalBufferPropertiesKHR( VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalBufferInfo* pExternalBufferInfo, VkExternalBufferProperties* pExternalBufferProperties ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkGetPhysicalDeviceExternalBufferPropertiesKHR( physicalDevice, pExternalBufferInfo, pExternalBufferProperties );
- }
+ //=== VK_KHR_descriptor_update_template ===
- void vkGetPhysicalDeviceExternalFenceProperties( VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalFenceInfo* pExternalFenceInfo, VkExternalFenceProperties* pExternalFenceProperties ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkCreateDescriptorUpdateTemplateKHR( VkDevice device,
+ const VkDescriptorUpdateTemplateCreateInfo * pCreateInfo,
+ const VkAllocationCallbacks * pAllocator,
+ VkDescriptorUpdateTemplate * pDescriptorUpdateTemplate ) const
+ VULKAN_HPP_NOEXCEPT
{
- return ::vkGetPhysicalDeviceExternalFenceProperties( physicalDevice, pExternalFenceInfo, pExternalFenceProperties );
+ return ::vkCreateDescriptorUpdateTemplateKHR( device, pCreateInfo, pAllocator, pDescriptorUpdateTemplate );
}
- void vkGetPhysicalDeviceExternalFencePropertiesKHR( VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalFenceInfo* pExternalFenceInfo, VkExternalFenceProperties* pExternalFenceProperties ) const VULKAN_HPP_NOEXCEPT
+ void vkDestroyDescriptorUpdateTemplateKHR( VkDevice device,
+ VkDescriptorUpdateTemplate descriptorUpdateTemplate,
+ const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetPhysicalDeviceExternalFencePropertiesKHR( physicalDevice, pExternalFenceInfo, pExternalFenceProperties );
+ return ::vkDestroyDescriptorUpdateTemplateKHR( device, descriptorUpdateTemplate, pAllocator );
}
- VkResult vkGetPhysicalDeviceExternalImageFormatPropertiesNV( VkPhysicalDevice physicalDevice, VkFormat format, VkImageType type, VkImageTiling tiling, VkImageUsageFlags usage, VkImageCreateFlags flags, VkExternalMemoryHandleTypeFlagsNV externalHandleType, VkExternalImageFormatPropertiesNV* pExternalImageFormatProperties ) const VULKAN_HPP_NOEXCEPT
+ void vkUpdateDescriptorSetWithTemplateKHR( VkDevice device,
+ VkDescriptorSet descriptorSet,
+ VkDescriptorUpdateTemplate descriptorUpdateTemplate,
+ const void * pData ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetPhysicalDeviceExternalImageFormatPropertiesNV( physicalDevice, format, type, tiling, usage, flags, externalHandleType, pExternalImageFormatProperties );
+ return ::vkUpdateDescriptorSetWithTemplateKHR( device, descriptorSet, descriptorUpdateTemplate, pData );
}
- void vkGetPhysicalDeviceExternalSemaphoreProperties( VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalSemaphoreInfo* pExternalSemaphoreInfo, VkExternalSemaphoreProperties* pExternalSemaphoreProperties ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkGetPhysicalDeviceExternalSemaphoreProperties( physicalDevice, pExternalSemaphoreInfo, pExternalSemaphoreProperties );
- }
+ //=== VK_NV_clip_space_w_scaling ===
- void vkGetPhysicalDeviceExternalSemaphorePropertiesKHR( VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalSemaphoreInfo* pExternalSemaphoreInfo, VkExternalSemaphoreProperties* pExternalSemaphoreProperties ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdSetViewportWScalingNV( VkCommandBuffer commandBuffer,
+ uint32_t firstViewport,
+ uint32_t viewportCount,
+ const VkViewportWScalingNV * pViewportWScalings ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetPhysicalDeviceExternalSemaphorePropertiesKHR( physicalDevice, pExternalSemaphoreInfo, pExternalSemaphoreProperties );
+ return ::vkCmdSetViewportWScalingNV( commandBuffer, firstViewport, viewportCount, pViewportWScalings );
}
- void vkGetPhysicalDeviceFeatures( VkPhysicalDevice physicalDevice, VkPhysicalDeviceFeatures* pFeatures ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkGetPhysicalDeviceFeatures( physicalDevice, pFeatures );
- }
+ //=== VK_EXT_direct_mode_display ===
- void vkGetPhysicalDeviceFeatures2( VkPhysicalDevice physicalDevice, VkPhysicalDeviceFeatures2* pFeatures ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkReleaseDisplayEXT( VkPhysicalDevice physicalDevice, VkDisplayKHR display ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetPhysicalDeviceFeatures2( physicalDevice, pFeatures );
+ return ::vkReleaseDisplayEXT( physicalDevice, display );
}
- void vkGetPhysicalDeviceFeatures2KHR( VkPhysicalDevice physicalDevice, VkPhysicalDeviceFeatures2* pFeatures ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkGetPhysicalDeviceFeatures2KHR( physicalDevice, pFeatures );
- }
+# if defined( VK_USE_PLATFORM_XLIB_XRANDR_EXT )
+ //=== VK_EXT_acquire_xlib_display ===
- void vkGetPhysicalDeviceFormatProperties( VkPhysicalDevice physicalDevice, VkFormat format, VkFormatProperties* pFormatProperties ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkAcquireXlibDisplayEXT( VkPhysicalDevice physicalDevice,
+ Display * dpy,
+ VkDisplayKHR display ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetPhysicalDeviceFormatProperties( physicalDevice, format, pFormatProperties );
+ return ::vkAcquireXlibDisplayEXT( physicalDevice, dpy, display );
}
- void vkGetPhysicalDeviceFormatProperties2( VkPhysicalDevice physicalDevice, VkFormat format, VkFormatProperties2* pFormatProperties ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkGetRandROutputDisplayEXT( VkPhysicalDevice physicalDevice,
+ Display * dpy,
+ RROutput rrOutput,
+ VkDisplayKHR * pDisplay ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetPhysicalDeviceFormatProperties2( physicalDevice, format, pFormatProperties );
+ return ::vkGetRandROutputDisplayEXT( physicalDevice, dpy, rrOutput, pDisplay );
}
+# endif /*VK_USE_PLATFORM_XLIB_XRANDR_EXT*/
- void vkGetPhysicalDeviceFormatProperties2KHR( VkPhysicalDevice physicalDevice, VkFormat format, VkFormatProperties2* pFormatProperties ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkGetPhysicalDeviceFormatProperties2KHR( physicalDevice, format, pFormatProperties );
- }
+ //=== VK_EXT_display_surface_counter ===
- VkResult vkGetPhysicalDeviceFragmentShadingRatesKHR( VkPhysicalDevice physicalDevice, uint32_t* pFragmentShadingRateCount, VkPhysicalDeviceFragmentShadingRateKHR* pFragmentShadingRates ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkGetPhysicalDeviceSurfaceCapabilities2EXT( VkPhysicalDevice physicalDevice,
+ VkSurfaceKHR surface,
+ VkSurfaceCapabilities2EXT * pSurfaceCapabilities ) const
+ VULKAN_HPP_NOEXCEPT
{
- return ::vkGetPhysicalDeviceFragmentShadingRatesKHR( physicalDevice, pFragmentShadingRateCount, pFragmentShadingRates );
+ return ::vkGetPhysicalDeviceSurfaceCapabilities2EXT( physicalDevice, surface, pSurfaceCapabilities );
}
- VkResult vkGetPhysicalDeviceImageFormatProperties( VkPhysicalDevice physicalDevice, VkFormat format, VkImageType type, VkImageTiling tiling, VkImageUsageFlags usage, VkImageCreateFlags flags, VkImageFormatProperties* pImageFormatProperties ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkGetPhysicalDeviceImageFormatProperties( physicalDevice, format, type, tiling, usage, flags, pImageFormatProperties );
- }
+ //=== VK_EXT_display_control ===
- VkResult vkGetPhysicalDeviceImageFormatProperties2( VkPhysicalDevice physicalDevice, const VkPhysicalDeviceImageFormatInfo2* pImageFormatInfo, VkImageFormatProperties2* pImageFormatProperties ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkDisplayPowerControlEXT( VkDevice device,
+ VkDisplayKHR display,
+ const VkDisplayPowerInfoEXT * pDisplayPowerInfo ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetPhysicalDeviceImageFormatProperties2( physicalDevice, pImageFormatInfo, pImageFormatProperties );
+ return ::vkDisplayPowerControlEXT( device, display, pDisplayPowerInfo );
}
- VkResult vkGetPhysicalDeviceImageFormatProperties2KHR( VkPhysicalDevice physicalDevice, const VkPhysicalDeviceImageFormatInfo2* pImageFormatInfo, VkImageFormatProperties2* pImageFormatProperties ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkRegisterDeviceEventEXT( VkDevice device,
+ const VkDeviceEventInfoEXT * pDeviceEventInfo,
+ const VkAllocationCallbacks * pAllocator,
+ VkFence * pFence ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetPhysicalDeviceImageFormatProperties2KHR( physicalDevice, pImageFormatInfo, pImageFormatProperties );
+ return ::vkRegisterDeviceEventEXT( device, pDeviceEventInfo, pAllocator, pFence );
}
- void vkGetPhysicalDeviceMemoryProperties( VkPhysicalDevice physicalDevice, VkPhysicalDeviceMemoryProperties* pMemoryProperties ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkRegisterDisplayEventEXT( VkDevice device,
+ VkDisplayKHR display,
+ const VkDisplayEventInfoEXT * pDisplayEventInfo,
+ const VkAllocationCallbacks * pAllocator,
+ VkFence * pFence ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetPhysicalDeviceMemoryProperties( physicalDevice, pMemoryProperties );
+ return ::vkRegisterDisplayEventEXT( device, display, pDisplayEventInfo, pAllocator, pFence );
}
- void vkGetPhysicalDeviceMemoryProperties2( VkPhysicalDevice physicalDevice, VkPhysicalDeviceMemoryProperties2* pMemoryProperties ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkGetSwapchainCounterEXT( VkDevice device,
+ VkSwapchainKHR swapchain,
+ VkSurfaceCounterFlagBitsEXT counter,
+ uint64_t * pCounterValue ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetPhysicalDeviceMemoryProperties2( physicalDevice, pMemoryProperties );
+ return ::vkGetSwapchainCounterEXT( device, swapchain, counter, pCounterValue );
}
- void vkGetPhysicalDeviceMemoryProperties2KHR( VkPhysicalDevice physicalDevice, VkPhysicalDeviceMemoryProperties2* pMemoryProperties ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkGetPhysicalDeviceMemoryProperties2KHR( physicalDevice, pMemoryProperties );
- }
+ //=== VK_GOOGLE_display_timing ===
- void vkGetPhysicalDeviceMultisamplePropertiesEXT( VkPhysicalDevice physicalDevice, VkSampleCountFlagBits samples, VkMultisamplePropertiesEXT* pMultisampleProperties ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkGetRefreshCycleDurationGOOGLE( VkDevice device,
+ VkSwapchainKHR swapchain,
+ VkRefreshCycleDurationGOOGLE * pDisplayTimingProperties ) const
+ VULKAN_HPP_NOEXCEPT
{
- return ::vkGetPhysicalDeviceMultisamplePropertiesEXT( physicalDevice, samples, pMultisampleProperties );
+ return ::vkGetRefreshCycleDurationGOOGLE( device, swapchain, pDisplayTimingProperties );
}
- VkResult vkGetPhysicalDevicePresentRectanglesKHR( VkPhysicalDevice physicalDevice, VkSurfaceKHR surface, uint32_t* pRectCount, VkRect2D* pRects ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkGetPastPresentationTimingGOOGLE( VkDevice device,
+ VkSwapchainKHR swapchain,
+ uint32_t * pPresentationTimingCount,
+ VkPastPresentationTimingGOOGLE * pPresentationTimings ) const
+ VULKAN_HPP_NOEXCEPT
{
- return ::vkGetPhysicalDevicePresentRectanglesKHR( physicalDevice, surface, pRectCount, pRects );
+ return ::vkGetPastPresentationTimingGOOGLE( device, swapchain, pPresentationTimingCount, pPresentationTimings );
}
- void vkGetPhysicalDeviceProperties( VkPhysicalDevice physicalDevice, VkPhysicalDeviceProperties* pProperties ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkGetPhysicalDeviceProperties( physicalDevice, pProperties );
- }
+ //=== VK_EXT_discard_rectangles ===
- void vkGetPhysicalDeviceProperties2( VkPhysicalDevice physicalDevice, VkPhysicalDeviceProperties2* pProperties ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdSetDiscardRectangleEXT( VkCommandBuffer commandBuffer,
+ uint32_t firstDiscardRectangle,
+ uint32_t discardRectangleCount,
+ const VkRect2D * pDiscardRectangles ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetPhysicalDeviceProperties2( physicalDevice, pProperties );
+ return ::vkCmdSetDiscardRectangleEXT(
+ commandBuffer, firstDiscardRectangle, discardRectangleCount, pDiscardRectangles );
}
- void vkGetPhysicalDeviceProperties2KHR( VkPhysicalDevice physicalDevice, VkPhysicalDeviceProperties2* pProperties ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkGetPhysicalDeviceProperties2KHR( physicalDevice, pProperties );
- }
+ //=== VK_EXT_hdr_metadata ===
- void vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR( VkPhysicalDevice physicalDevice, const VkQueryPoolPerformanceCreateInfoKHR* pPerformanceQueryCreateInfo, uint32_t* pNumPasses ) const VULKAN_HPP_NOEXCEPT
+ void vkSetHdrMetadataEXT( VkDevice device,
+ uint32_t swapchainCount,
+ const VkSwapchainKHR * pSwapchains,
+ const VkHdrMetadataEXT * pMetadata ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR( physicalDevice, pPerformanceQueryCreateInfo, pNumPasses );
+ return ::vkSetHdrMetadataEXT( device, swapchainCount, pSwapchains, pMetadata );
}
- void vkGetPhysicalDeviceQueueFamilyProperties( VkPhysicalDevice physicalDevice, uint32_t* pQueueFamilyPropertyCount, VkQueueFamilyProperties* pQueueFamilyProperties ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkGetPhysicalDeviceQueueFamilyProperties( physicalDevice, pQueueFamilyPropertyCount, pQueueFamilyProperties );
- }
+ //=== VK_KHR_create_renderpass2 ===
- void vkGetPhysicalDeviceQueueFamilyProperties2( VkPhysicalDevice physicalDevice, uint32_t* pQueueFamilyPropertyCount, VkQueueFamilyProperties2* pQueueFamilyProperties ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkCreateRenderPass2KHR( VkDevice device,
+ const VkRenderPassCreateInfo2 * pCreateInfo,
+ const VkAllocationCallbacks * pAllocator,
+ VkRenderPass * pRenderPass ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetPhysicalDeviceQueueFamilyProperties2( physicalDevice, pQueueFamilyPropertyCount, pQueueFamilyProperties );
+ return ::vkCreateRenderPass2KHR( device, pCreateInfo, pAllocator, pRenderPass );
}
- void vkGetPhysicalDeviceQueueFamilyProperties2KHR( VkPhysicalDevice physicalDevice, uint32_t* pQueueFamilyPropertyCount, VkQueueFamilyProperties2* pQueueFamilyProperties ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdBeginRenderPass2KHR( VkCommandBuffer commandBuffer,
+ const VkRenderPassBeginInfo * pRenderPassBegin,
+ const VkSubpassBeginInfo * pSubpassBeginInfo ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetPhysicalDeviceQueueFamilyProperties2KHR( physicalDevice, pQueueFamilyPropertyCount, pQueueFamilyProperties );
+ return ::vkCmdBeginRenderPass2KHR( commandBuffer, pRenderPassBegin, pSubpassBeginInfo );
}
- void vkGetPhysicalDeviceSparseImageFormatProperties( VkPhysicalDevice physicalDevice, VkFormat format, VkImageType type, VkSampleCountFlagBits samples, VkImageUsageFlags usage, VkImageTiling tiling, uint32_t* pPropertyCount, VkSparseImageFormatProperties* pProperties ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdNextSubpass2KHR( VkCommandBuffer commandBuffer,
+ const VkSubpassBeginInfo * pSubpassBeginInfo,
+ const VkSubpassEndInfo * pSubpassEndInfo ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetPhysicalDeviceSparseImageFormatProperties( physicalDevice, format, type, samples, usage, tiling, pPropertyCount, pProperties );
+ return ::vkCmdNextSubpass2KHR( commandBuffer, pSubpassBeginInfo, pSubpassEndInfo );
}
- void vkGetPhysicalDeviceSparseImageFormatProperties2( VkPhysicalDevice physicalDevice, const VkPhysicalDeviceSparseImageFormatInfo2* pFormatInfo, uint32_t* pPropertyCount, VkSparseImageFormatProperties2* pProperties ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdEndRenderPass2KHR( VkCommandBuffer commandBuffer,
+ const VkSubpassEndInfo * pSubpassEndInfo ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetPhysicalDeviceSparseImageFormatProperties2( physicalDevice, pFormatInfo, pPropertyCount, pProperties );
+ return ::vkCmdEndRenderPass2KHR( commandBuffer, pSubpassEndInfo );
}
- void vkGetPhysicalDeviceSparseImageFormatProperties2KHR( VkPhysicalDevice physicalDevice, const VkPhysicalDeviceSparseImageFormatInfo2* pFormatInfo, uint32_t* pPropertyCount, VkSparseImageFormatProperties2* pProperties ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkGetPhysicalDeviceSparseImageFormatProperties2KHR( physicalDevice, pFormatInfo, pPropertyCount, pProperties );
- }
+ //=== VK_KHR_shared_presentable_image ===
- VkResult vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV( VkPhysicalDevice physicalDevice, uint32_t* pCombinationCount, VkFramebufferMixedSamplesCombinationNV* pCombinations ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkGetSwapchainStatusKHR( VkDevice device, VkSwapchainKHR swapchain ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV( physicalDevice, pCombinationCount, pCombinations );
+ return ::vkGetSwapchainStatusKHR( device, swapchain );
}
- VkResult vkGetPhysicalDeviceSurfaceCapabilities2EXT( VkPhysicalDevice physicalDevice, VkSurfaceKHR surface, VkSurfaceCapabilities2EXT* pSurfaceCapabilities ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkGetPhysicalDeviceSurfaceCapabilities2EXT( physicalDevice, surface, pSurfaceCapabilities );
- }
+ //=== VK_KHR_external_fence_capabilities ===
- VkResult vkGetPhysicalDeviceSurfaceCapabilities2KHR( VkPhysicalDevice physicalDevice, const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo, VkSurfaceCapabilities2KHR* pSurfaceCapabilities ) const VULKAN_HPP_NOEXCEPT
+ void vkGetPhysicalDeviceExternalFencePropertiesKHR( VkPhysicalDevice physicalDevice,
+ const VkPhysicalDeviceExternalFenceInfo * pExternalFenceInfo,
+ VkExternalFenceProperties * pExternalFenceProperties ) const
+ VULKAN_HPP_NOEXCEPT
{
- return ::vkGetPhysicalDeviceSurfaceCapabilities2KHR( physicalDevice, pSurfaceInfo, pSurfaceCapabilities );
+ return ::vkGetPhysicalDeviceExternalFencePropertiesKHR(
+ physicalDevice, pExternalFenceInfo, pExternalFenceProperties );
}
- VkResult vkGetPhysicalDeviceSurfaceCapabilitiesKHR( VkPhysicalDevice physicalDevice, VkSurfaceKHR surface, VkSurfaceCapabilitiesKHR* pSurfaceCapabilities ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkGetPhysicalDeviceSurfaceCapabilitiesKHR( physicalDevice, surface, pSurfaceCapabilities );
- }
+# if defined( VK_USE_PLATFORM_WIN32_KHR )
+ //=== VK_KHR_external_fence_win32 ===
- VkResult vkGetPhysicalDeviceSurfaceFormats2KHR( VkPhysicalDevice physicalDevice, const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo, uint32_t* pSurfaceFormatCount, VkSurfaceFormat2KHR* pSurfaceFormats ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkImportFenceWin32HandleKHR(
+ VkDevice device, const VkImportFenceWin32HandleInfoKHR * pImportFenceWin32HandleInfo ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetPhysicalDeviceSurfaceFormats2KHR( physicalDevice, pSurfaceInfo, pSurfaceFormatCount, pSurfaceFormats );
+ return ::vkImportFenceWin32HandleKHR( device, pImportFenceWin32HandleInfo );
}
- VkResult vkGetPhysicalDeviceSurfaceFormatsKHR( VkPhysicalDevice physicalDevice, VkSurfaceKHR surface, uint32_t* pSurfaceFormatCount, VkSurfaceFormatKHR* pSurfaceFormats ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkGetFenceWin32HandleKHR( VkDevice device,
+ const VkFenceGetWin32HandleInfoKHR * pGetWin32HandleInfo,
+ HANDLE * pHandle ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetPhysicalDeviceSurfaceFormatsKHR( physicalDevice, surface, pSurfaceFormatCount, pSurfaceFormats );
+ return ::vkGetFenceWin32HandleKHR( device, pGetWin32HandleInfo, pHandle );
}
+# endif /*VK_USE_PLATFORM_WIN32_KHR*/
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- VkResult vkGetPhysicalDeviceSurfacePresentModes2EXT( VkPhysicalDevice physicalDevice, const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo, uint32_t* pPresentModeCount, VkPresentModeKHR* pPresentModes ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkGetPhysicalDeviceSurfacePresentModes2EXT( physicalDevice, pSurfaceInfo, pPresentModeCount, pPresentModes );
- }
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+ //=== VK_KHR_external_fence_fd ===
- VkResult vkGetPhysicalDeviceSurfacePresentModesKHR( VkPhysicalDevice physicalDevice, VkSurfaceKHR surface, uint32_t* pPresentModeCount, VkPresentModeKHR* pPresentModes ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkImportFenceFdKHR( VkDevice device,
+ const VkImportFenceFdInfoKHR * pImportFenceFdInfo ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetPhysicalDeviceSurfacePresentModesKHR( physicalDevice, surface, pPresentModeCount, pPresentModes );
+ return ::vkImportFenceFdKHR( device, pImportFenceFdInfo );
}
- VkResult vkGetPhysicalDeviceSurfaceSupportKHR( VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex, VkSurfaceKHR surface, VkBool32* pSupported ) const VULKAN_HPP_NOEXCEPT
+ VkResult
+ vkGetFenceFdKHR( VkDevice device, const VkFenceGetFdInfoKHR * pGetFdInfo, int * pFd ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetPhysicalDeviceSurfaceSupportKHR( physicalDevice, queueFamilyIndex, surface, pSupported );
+ return ::vkGetFenceFdKHR( device, pGetFdInfo, pFd );
}
- VkResult vkGetPhysicalDeviceToolPropertiesEXT( VkPhysicalDevice physicalDevice, uint32_t* pToolCount, VkPhysicalDeviceToolPropertiesEXT* pToolProperties ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkGetPhysicalDeviceToolPropertiesEXT( physicalDevice, pToolCount, pToolProperties );
- }
+ //=== VK_KHR_performance_query ===
-#ifdef VK_USE_PLATFORM_WAYLAND_KHR
- VkBool32 vkGetPhysicalDeviceWaylandPresentationSupportKHR( VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex, struct wl_display* display ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR(
+ VkPhysicalDevice physicalDevice,
+ uint32_t queueFamilyIndex,
+ uint32_t * pCounterCount,
+ VkPerformanceCounterKHR * pCounters,
+ VkPerformanceCounterDescriptionKHR * pCounterDescriptions ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetPhysicalDeviceWaylandPresentationSupportKHR( physicalDevice, queueFamilyIndex, display );
+ return ::vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR(
+ physicalDevice, queueFamilyIndex, pCounterCount, pCounters, pCounterDescriptions );
}
-#endif /*VK_USE_PLATFORM_WAYLAND_KHR*/
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- VkBool32 vkGetPhysicalDeviceWin32PresentationSupportKHR( VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex ) const VULKAN_HPP_NOEXCEPT
+ void vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR(
+ VkPhysicalDevice physicalDevice,
+ const VkQueryPoolPerformanceCreateInfoKHR * pPerformanceQueryCreateInfo,
+ uint32_t * pNumPasses ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetPhysicalDeviceWin32PresentationSupportKHR( physicalDevice, queueFamilyIndex );
+ return ::vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR(
+ physicalDevice, pPerformanceQueryCreateInfo, pNumPasses );
}
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-#ifdef VK_USE_PLATFORM_XCB_KHR
- VkBool32 vkGetPhysicalDeviceXcbPresentationSupportKHR( VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex, xcb_connection_t* connection, xcb_visualid_t visual_id ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkAcquireProfilingLockKHR( VkDevice device,
+ const VkAcquireProfilingLockInfoKHR * pInfo ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetPhysicalDeviceXcbPresentationSupportKHR( physicalDevice, queueFamilyIndex, connection, visual_id );
+ return ::vkAcquireProfilingLockKHR( device, pInfo );
}
-#endif /*VK_USE_PLATFORM_XCB_KHR*/
-#ifdef VK_USE_PLATFORM_XLIB_KHR
- VkBool32 vkGetPhysicalDeviceXlibPresentationSupportKHR( VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex, Display* dpy, VisualID visualID ) const VULKAN_HPP_NOEXCEPT
+ void vkReleaseProfilingLockKHR( VkDevice device ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetPhysicalDeviceXlibPresentationSupportKHR( physicalDevice, queueFamilyIndex, dpy, visualID );
+ return ::vkReleaseProfilingLockKHR( device );
}
-#endif /*VK_USE_PLATFORM_XLIB_KHR*/
- VkResult vkGetPipelineCacheData( VkDevice device, VkPipelineCache pipelineCache, size_t* pDataSize, void* pData ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkGetPipelineCacheData( device, pipelineCache, pDataSize, pData );
- }
+ //=== VK_KHR_get_surface_capabilities2 ===
- VkResult vkGetPipelineExecutableInternalRepresentationsKHR( VkDevice device, const VkPipelineExecutableInfoKHR* pExecutableInfo, uint32_t* pInternalRepresentationCount, VkPipelineExecutableInternalRepresentationKHR* pInternalRepresentations ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkGetPhysicalDeviceSurfaceCapabilities2KHR( VkPhysicalDevice physicalDevice,
+ const VkPhysicalDeviceSurfaceInfo2KHR * pSurfaceInfo,
+ VkSurfaceCapabilities2KHR * pSurfaceCapabilities ) const
+ VULKAN_HPP_NOEXCEPT
{
- return ::vkGetPipelineExecutableInternalRepresentationsKHR( device, pExecutableInfo, pInternalRepresentationCount, pInternalRepresentations );
+ return ::vkGetPhysicalDeviceSurfaceCapabilities2KHR( physicalDevice, pSurfaceInfo, pSurfaceCapabilities );
}
- VkResult vkGetPipelineExecutablePropertiesKHR( VkDevice device, const VkPipelineInfoKHR* pPipelineInfo, uint32_t* pExecutableCount, VkPipelineExecutablePropertiesKHR* pProperties ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkGetPhysicalDeviceSurfaceFormats2KHR( VkPhysicalDevice physicalDevice,
+ const VkPhysicalDeviceSurfaceInfo2KHR * pSurfaceInfo,
+ uint32_t * pSurfaceFormatCount,
+ VkSurfaceFormat2KHR * pSurfaceFormats ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetPipelineExecutablePropertiesKHR( device, pPipelineInfo, pExecutableCount, pProperties );
+ return ::vkGetPhysicalDeviceSurfaceFormats2KHR(
+ physicalDevice, pSurfaceInfo, pSurfaceFormatCount, pSurfaceFormats );
}
- VkResult vkGetPipelineExecutableStatisticsKHR( VkDevice device, const VkPipelineExecutableInfoKHR* pExecutableInfo, uint32_t* pStatisticCount, VkPipelineExecutableStatisticKHR* pStatistics ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkGetPipelineExecutableStatisticsKHR( device, pExecutableInfo, pStatisticCount, pStatistics );
- }
+ //=== VK_KHR_get_display_properties2 ===
- void vkGetPrivateDataEXT( VkDevice device, VkObjectType objectType, uint64_t objectHandle, VkPrivateDataSlotEXT privateDataSlot, uint64_t* pData ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkGetPhysicalDeviceDisplayProperties2KHR( VkPhysicalDevice physicalDevice,
+ uint32_t * pPropertyCount,
+ VkDisplayProperties2KHR * pProperties ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetPrivateDataEXT( device, objectType, objectHandle, privateDataSlot, pData );
+ return ::vkGetPhysicalDeviceDisplayProperties2KHR( physicalDevice, pPropertyCount, pProperties );
}
- VkResult vkGetQueryPoolResults( VkDevice device, VkQueryPool queryPool, uint32_t firstQuery, uint32_t queryCount, size_t dataSize, void* pData, VkDeviceSize stride, VkQueryResultFlags flags ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkGetPhysicalDeviceDisplayPlaneProperties2KHR( VkPhysicalDevice physicalDevice,
+ uint32_t * pPropertyCount,
+ VkDisplayPlaneProperties2KHR * pProperties ) const
+ VULKAN_HPP_NOEXCEPT
{
- return ::vkGetQueryPoolResults( device, queryPool, firstQuery, queryCount, dataSize, pData, stride, flags );
+ return ::vkGetPhysicalDeviceDisplayPlaneProperties2KHR( physicalDevice, pPropertyCount, pProperties );
}
- void vkGetQueueCheckpointDataNV( VkQueue queue, uint32_t* pCheckpointDataCount, VkCheckpointDataNV* pCheckpointData ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkGetDisplayModeProperties2KHR( VkPhysicalDevice physicalDevice,
+ VkDisplayKHR display,
+ uint32_t * pPropertyCount,
+ VkDisplayModeProperties2KHR * pProperties ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetQueueCheckpointDataNV( queue, pCheckpointDataCount, pCheckpointData );
+ return ::vkGetDisplayModeProperties2KHR( physicalDevice, display, pPropertyCount, pProperties );
}
-#ifdef VK_USE_PLATFORM_XLIB_XRANDR_EXT
- VkResult vkGetRandROutputDisplayEXT( VkPhysicalDevice physicalDevice, Display* dpy, RROutput rrOutput, VkDisplayKHR* pDisplay ) const VULKAN_HPP_NOEXCEPT
+ VkResult
+ vkGetDisplayPlaneCapabilities2KHR( VkPhysicalDevice physicalDevice,
+ const VkDisplayPlaneInfo2KHR * pDisplayPlaneInfo,
+ VkDisplayPlaneCapabilities2KHR * pCapabilities ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetRandROutputDisplayEXT( physicalDevice, dpy, rrOutput, pDisplay );
+ return ::vkGetDisplayPlaneCapabilities2KHR( physicalDevice, pDisplayPlaneInfo, pCapabilities );
}
-#endif /*VK_USE_PLATFORM_XLIB_XRANDR_EXT*/
- VkResult vkGetRayTracingCaptureReplayShaderGroupHandlesKHR( VkDevice device, VkPipeline pipeline, uint32_t firstGroup, uint32_t groupCount, size_t dataSize, void* pData ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkGetRayTracingCaptureReplayShaderGroupHandlesKHR( device, pipeline, firstGroup, groupCount, dataSize, pData );
- }
+# if defined( VK_USE_PLATFORM_IOS_MVK )
+ //=== VK_MVK_ios_surface ===
- VkResult vkGetRayTracingShaderGroupHandlesKHR( VkDevice device, VkPipeline pipeline, uint32_t firstGroup, uint32_t groupCount, size_t dataSize, void* pData ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkCreateIOSSurfaceMVK( VkInstance instance,
+ const VkIOSSurfaceCreateInfoMVK * pCreateInfo,
+ const VkAllocationCallbacks * pAllocator,
+ VkSurfaceKHR * pSurface ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetRayTracingShaderGroupHandlesKHR( device, pipeline, firstGroup, groupCount, dataSize, pData );
+ return ::vkCreateIOSSurfaceMVK( instance, pCreateInfo, pAllocator, pSurface );
}
+# endif /*VK_USE_PLATFORM_IOS_MVK*/
- VkResult vkGetRayTracingShaderGroupHandlesNV( VkDevice device, VkPipeline pipeline, uint32_t firstGroup, uint32_t groupCount, size_t dataSize, void* pData ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkGetRayTracingShaderGroupHandlesNV( device, pipeline, firstGroup, groupCount, dataSize, pData );
- }
+# if defined( VK_USE_PLATFORM_MACOS_MVK )
+ //=== VK_MVK_macos_surface ===
- VkDeviceSize vkGetRayTracingShaderGroupStackSizeKHR( VkDevice device, VkPipeline pipeline, uint32_t group, VkShaderGroupShaderKHR groupShader ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkCreateMacOSSurfaceMVK( VkInstance instance,
+ const VkMacOSSurfaceCreateInfoMVK * pCreateInfo,
+ const VkAllocationCallbacks * pAllocator,
+ VkSurfaceKHR * pSurface ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetRayTracingShaderGroupStackSizeKHR( device, pipeline, group, groupShader );
+ return ::vkCreateMacOSSurfaceMVK( instance, pCreateInfo, pAllocator, pSurface );
}
+# endif /*VK_USE_PLATFORM_MACOS_MVK*/
- VkResult vkGetRefreshCycleDurationGOOGLE( VkDevice device, VkSwapchainKHR swapchain, VkRefreshCycleDurationGOOGLE* pDisplayTimingProperties ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkGetRefreshCycleDurationGOOGLE( device, swapchain, pDisplayTimingProperties );
- }
+ //=== VK_EXT_debug_utils ===
- void vkGetRenderAreaGranularity( VkDevice device, VkRenderPass renderPass, VkExtent2D* pGranularity ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkSetDebugUtilsObjectNameEXT( VkDevice device,
+ const VkDebugUtilsObjectNameInfoEXT * pNameInfo ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetRenderAreaGranularity( device, renderPass, pGranularity );
+ return ::vkSetDebugUtilsObjectNameEXT( device, pNameInfo );
}
- VkResult vkGetSemaphoreCounterValue( VkDevice device, VkSemaphore semaphore, uint64_t* pValue ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkSetDebugUtilsObjectTagEXT( VkDevice device,
+ const VkDebugUtilsObjectTagInfoEXT * pTagInfo ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetSemaphoreCounterValue( device, semaphore, pValue );
+ return ::vkSetDebugUtilsObjectTagEXT( device, pTagInfo );
}
- VkResult vkGetSemaphoreCounterValueKHR( VkDevice device, VkSemaphore semaphore, uint64_t* pValue ) const VULKAN_HPP_NOEXCEPT
+ void vkQueueBeginDebugUtilsLabelEXT( VkQueue queue,
+ const VkDebugUtilsLabelEXT * pLabelInfo ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetSemaphoreCounterValueKHR( device, semaphore, pValue );
+ return ::vkQueueBeginDebugUtilsLabelEXT( queue, pLabelInfo );
}
- VkResult vkGetSemaphoreFdKHR( VkDevice device, const VkSemaphoreGetFdInfoKHR* pGetFdInfo, int* pFd ) const VULKAN_HPP_NOEXCEPT
+ void vkQueueEndDebugUtilsLabelEXT( VkQueue queue ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetSemaphoreFdKHR( device, pGetFdInfo, pFd );
+ return ::vkQueueEndDebugUtilsLabelEXT( queue );
}
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- VkResult vkGetSemaphoreWin32HandleKHR( VkDevice device, const VkSemaphoreGetWin32HandleInfoKHR* pGetWin32HandleInfo, HANDLE* pHandle ) const VULKAN_HPP_NOEXCEPT
+ void vkQueueInsertDebugUtilsLabelEXT( VkQueue queue,
+ const VkDebugUtilsLabelEXT * pLabelInfo ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetSemaphoreWin32HandleKHR( device, pGetWin32HandleInfo, pHandle );
+ return ::vkQueueInsertDebugUtilsLabelEXT( queue, pLabelInfo );
}
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
- VkResult vkGetShaderInfoAMD( VkDevice device, VkPipeline pipeline, VkShaderStageFlagBits shaderStage, VkShaderInfoTypeAMD infoType, size_t* pInfoSize, void* pInfo ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdBeginDebugUtilsLabelEXT( VkCommandBuffer commandBuffer,
+ const VkDebugUtilsLabelEXT * pLabelInfo ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetShaderInfoAMD( device, pipeline, shaderStage, infoType, pInfoSize, pInfo );
+ return ::vkCmdBeginDebugUtilsLabelEXT( commandBuffer, pLabelInfo );
}
- VkResult vkGetSwapchainCounterEXT( VkDevice device, VkSwapchainKHR swapchain, VkSurfaceCounterFlagBitsEXT counter, uint64_t* pCounterValue ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdEndDebugUtilsLabelEXT( VkCommandBuffer commandBuffer ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetSwapchainCounterEXT( device, swapchain, counter, pCounterValue );
+ return ::vkCmdEndDebugUtilsLabelEXT( commandBuffer );
}
- VkResult vkGetSwapchainImagesKHR( VkDevice device, VkSwapchainKHR swapchain, uint32_t* pSwapchainImageCount, VkImage* pSwapchainImages ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdInsertDebugUtilsLabelEXT( VkCommandBuffer commandBuffer,
+ const VkDebugUtilsLabelEXT * pLabelInfo ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetSwapchainImagesKHR( device, swapchain, pSwapchainImageCount, pSwapchainImages );
+ return ::vkCmdInsertDebugUtilsLabelEXT( commandBuffer, pLabelInfo );
}
- VkResult vkGetSwapchainStatusKHR( VkDevice device, VkSwapchainKHR swapchain ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkCreateDebugUtilsMessengerEXT( VkInstance instance,
+ const VkDebugUtilsMessengerCreateInfoEXT * pCreateInfo,
+ const VkAllocationCallbacks * pAllocator,
+ VkDebugUtilsMessengerEXT * pMessenger ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetSwapchainStatusKHR( device, swapchain );
+ return ::vkCreateDebugUtilsMessengerEXT( instance, pCreateInfo, pAllocator, pMessenger );
}
- VkResult vkGetValidationCacheDataEXT( VkDevice device, VkValidationCacheEXT validationCache, size_t* pDataSize, void* pData ) const VULKAN_HPP_NOEXCEPT
+ void vkDestroyDebugUtilsMessengerEXT( VkInstance instance,
+ VkDebugUtilsMessengerEXT messenger,
+ const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkGetValidationCacheDataEXT( device, validationCache, pDataSize, pData );
+ return ::vkDestroyDebugUtilsMessengerEXT( instance, messenger, pAllocator );
}
- VkResult vkImportFenceFdKHR( VkDevice device, const VkImportFenceFdInfoKHR* pImportFenceFdInfo ) const VULKAN_HPP_NOEXCEPT
+ void vkSubmitDebugUtilsMessageEXT( VkInstance instance,
+ VkDebugUtilsMessageSeverityFlagBitsEXT messageSeverity,
+ VkDebugUtilsMessageTypeFlagsEXT messageTypes,
+ const VkDebugUtilsMessengerCallbackDataEXT * pCallbackData ) const
+ VULKAN_HPP_NOEXCEPT
{
- return ::vkImportFenceFdKHR( device, pImportFenceFdInfo );
+ return ::vkSubmitDebugUtilsMessageEXT( instance, messageSeverity, messageTypes, pCallbackData );
}
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- VkResult vkImportFenceWin32HandleKHR( VkDevice device, const VkImportFenceWin32HandleInfoKHR* pImportFenceWin32HandleInfo ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkImportFenceWin32HandleKHR( device, pImportFenceWin32HandleInfo );
- }
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+# if defined( VK_USE_PLATFORM_ANDROID_KHR )
+ //=== VK_ANDROID_external_memory_android_hardware_buffer ===
- VkResult vkImportSemaphoreFdKHR( VkDevice device, const VkImportSemaphoreFdInfoKHR* pImportSemaphoreFdInfo ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkGetAndroidHardwareBufferPropertiesANDROID( VkDevice device,
+ const struct AHardwareBuffer * buffer,
+ VkAndroidHardwareBufferPropertiesANDROID * pProperties ) const
+ VULKAN_HPP_NOEXCEPT
{
- return ::vkImportSemaphoreFdKHR( device, pImportSemaphoreFdInfo );
+ return ::vkGetAndroidHardwareBufferPropertiesANDROID( device, buffer, pProperties );
}
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- VkResult vkImportSemaphoreWin32HandleKHR( VkDevice device, const VkImportSemaphoreWin32HandleInfoKHR* pImportSemaphoreWin32HandleInfo ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkGetMemoryAndroidHardwareBufferANDROID( VkDevice device,
+ const VkMemoryGetAndroidHardwareBufferInfoANDROID * pInfo,
+ struct AHardwareBuffer ** pBuffer ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkImportSemaphoreWin32HandleKHR( device, pImportSemaphoreWin32HandleInfo );
+ return ::vkGetMemoryAndroidHardwareBufferANDROID( device, pInfo, pBuffer );
}
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+# endif /*VK_USE_PLATFORM_ANDROID_KHR*/
- VkResult vkInitializePerformanceApiINTEL( VkDevice device, const VkInitializePerformanceApiInfoINTEL* pInitializeInfo ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkInitializePerformanceApiINTEL( device, pInitializeInfo );
- }
+ //=== VK_EXT_sample_locations ===
- VkResult vkInvalidateMappedMemoryRanges( VkDevice device, uint32_t memoryRangeCount, const VkMappedMemoryRange* pMemoryRanges ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdSetSampleLocationsEXT( VkCommandBuffer commandBuffer,
+ const VkSampleLocationsInfoEXT * pSampleLocationsInfo ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkInvalidateMappedMemoryRanges( device, memoryRangeCount, pMemoryRanges );
+ return ::vkCmdSetSampleLocationsEXT( commandBuffer, pSampleLocationsInfo );
}
- VkResult vkMapMemory( VkDevice device, VkDeviceMemory memory, VkDeviceSize offset, VkDeviceSize size, VkMemoryMapFlags flags, void** ppData ) const VULKAN_HPP_NOEXCEPT
+ void vkGetPhysicalDeviceMultisamplePropertiesEXT( VkPhysicalDevice physicalDevice,
+ VkSampleCountFlagBits samples,
+ VkMultisamplePropertiesEXT * pMultisampleProperties ) const
+ VULKAN_HPP_NOEXCEPT
{
- return ::vkMapMemory( device, memory, offset, size, flags, ppData );
+ return ::vkGetPhysicalDeviceMultisamplePropertiesEXT( physicalDevice, samples, pMultisampleProperties );
}
- VkResult vkMergePipelineCaches( VkDevice device, VkPipelineCache dstCache, uint32_t srcCacheCount, const VkPipelineCache* pSrcCaches ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkMergePipelineCaches( device, dstCache, srcCacheCount, pSrcCaches );
- }
+ //=== VK_KHR_get_memory_requirements2 ===
- VkResult vkMergeValidationCachesEXT( VkDevice device, VkValidationCacheEXT dstCache, uint32_t srcCacheCount, const VkValidationCacheEXT* pSrcCaches ) const VULKAN_HPP_NOEXCEPT
+ void vkGetImageMemoryRequirements2KHR( VkDevice device,
+ const VkImageMemoryRequirementsInfo2 * pInfo,
+ VkMemoryRequirements2 * pMemoryRequirements ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkMergeValidationCachesEXT( device, dstCache, srcCacheCount, pSrcCaches );
+ return ::vkGetImageMemoryRequirements2KHR( device, pInfo, pMemoryRequirements );
}
- void vkQueueBeginDebugUtilsLabelEXT( VkQueue queue, const VkDebugUtilsLabelEXT* pLabelInfo ) const VULKAN_HPP_NOEXCEPT
+ void vkGetBufferMemoryRequirements2KHR( VkDevice device,
+ const VkBufferMemoryRequirementsInfo2 * pInfo,
+ VkMemoryRequirements2 * pMemoryRequirements ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkQueueBeginDebugUtilsLabelEXT( queue, pLabelInfo );
+ return ::vkGetBufferMemoryRequirements2KHR( device, pInfo, pMemoryRequirements );
}
- VkResult vkQueueBindSparse( VkQueue queue, uint32_t bindInfoCount, const VkBindSparseInfo* pBindInfo, VkFence fence ) const VULKAN_HPP_NOEXCEPT
+ void vkGetImageSparseMemoryRequirements2KHR( VkDevice device,
+ const VkImageSparseMemoryRequirementsInfo2 * pInfo,
+ uint32_t * pSparseMemoryRequirementCount,
+ VkSparseImageMemoryRequirements2 * pSparseMemoryRequirements ) const
+ VULKAN_HPP_NOEXCEPT
{
- return ::vkQueueBindSparse( queue, bindInfoCount, pBindInfo, fence );
+ return ::vkGetImageSparseMemoryRequirements2KHR(
+ device, pInfo, pSparseMemoryRequirementCount, pSparseMemoryRequirements );
}
- void vkQueueEndDebugUtilsLabelEXT( VkQueue queue ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkQueueEndDebugUtilsLabelEXT( queue );
- }
+ //=== VK_KHR_acceleration_structure ===
- void vkQueueInsertDebugUtilsLabelEXT( VkQueue queue, const VkDebugUtilsLabelEXT* pLabelInfo ) const VULKAN_HPP_NOEXCEPT
+ VkResult
+ vkCreateAccelerationStructureKHR( VkDevice device,
+ const VkAccelerationStructureCreateInfoKHR * pCreateInfo,
+ const VkAllocationCallbacks * pAllocator,
+ VkAccelerationStructureKHR * pAccelerationStructure ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkQueueInsertDebugUtilsLabelEXT( queue, pLabelInfo );
+ return ::vkCreateAccelerationStructureKHR( device, pCreateInfo, pAllocator, pAccelerationStructure );
}
- VkResult vkQueuePresentKHR( VkQueue queue, const VkPresentInfoKHR* pPresentInfo ) const VULKAN_HPP_NOEXCEPT
+ void vkDestroyAccelerationStructureKHR( VkDevice device,
+ VkAccelerationStructureKHR accelerationStructure,
+ const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkQueuePresentKHR( queue, pPresentInfo );
+ return ::vkDestroyAccelerationStructureKHR( device, accelerationStructure, pAllocator );
}
- VkResult vkQueueSetPerformanceConfigurationINTEL( VkQueue queue, VkPerformanceConfigurationINTEL configuration ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdBuildAccelerationStructuresKHR(
+ VkCommandBuffer commandBuffer,
+ uint32_t infoCount,
+ const VkAccelerationStructureBuildGeometryInfoKHR * pInfos,
+ const VkAccelerationStructureBuildRangeInfoKHR * const * ppBuildRangeInfos ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkQueueSetPerformanceConfigurationINTEL( queue, configuration );
+ return ::vkCmdBuildAccelerationStructuresKHR( commandBuffer, infoCount, pInfos, ppBuildRangeInfos );
}
- VkResult vkQueueSubmit( VkQueue queue, uint32_t submitCount, const VkSubmitInfo* pSubmits, VkFence fence ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdBuildAccelerationStructuresIndirectKHR( VkCommandBuffer commandBuffer,
+ uint32_t infoCount,
+ const VkAccelerationStructureBuildGeometryInfoKHR * pInfos,
+ const VkDeviceAddress * pIndirectDeviceAddresses,
+ const uint32_t * pIndirectStrides,
+ const uint32_t * const * ppMaxPrimitiveCounts ) const
+ VULKAN_HPP_NOEXCEPT
{
- return ::vkQueueSubmit( queue, submitCount, pSubmits, fence );
+ return ::vkCmdBuildAccelerationStructuresIndirectKHR(
+ commandBuffer, infoCount, pInfos, pIndirectDeviceAddresses, pIndirectStrides, ppMaxPrimitiveCounts );
}
- VkResult vkQueueWaitIdle( VkQueue queue ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkBuildAccelerationStructuresKHR(
+ VkDevice device,
+ VkDeferredOperationKHR deferredOperation,
+ uint32_t infoCount,
+ const VkAccelerationStructureBuildGeometryInfoKHR * pInfos,
+ const VkAccelerationStructureBuildRangeInfoKHR * const * ppBuildRangeInfos ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkQueueWaitIdle( queue );
+ return ::vkBuildAccelerationStructuresKHR( device, deferredOperation, infoCount, pInfos, ppBuildRangeInfos );
}
- VkResult vkRegisterDeviceEventEXT( VkDevice device, const VkDeviceEventInfoEXT* pDeviceEventInfo, const VkAllocationCallbacks* pAllocator, VkFence* pFence ) const VULKAN_HPP_NOEXCEPT
+ VkResult
+ vkCopyAccelerationStructureKHR( VkDevice device,
+ VkDeferredOperationKHR deferredOperation,
+ const VkCopyAccelerationStructureInfoKHR * pInfo ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkRegisterDeviceEventEXT( device, pDeviceEventInfo, pAllocator, pFence );
+ return ::vkCopyAccelerationStructureKHR( device, deferredOperation, pInfo );
}
- VkResult vkRegisterDisplayEventEXT( VkDevice device, VkDisplayKHR display, const VkDisplayEventInfoEXT* pDisplayEventInfo, const VkAllocationCallbacks* pAllocator, VkFence* pFence ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkCopyAccelerationStructureToMemoryKHR( VkDevice device,
+ VkDeferredOperationKHR deferredOperation,
+ const VkCopyAccelerationStructureToMemoryInfoKHR * pInfo ) const
+ VULKAN_HPP_NOEXCEPT
{
- return ::vkRegisterDisplayEventEXT( device, display, pDisplayEventInfo, pAllocator, pFence );
+ return ::vkCopyAccelerationStructureToMemoryKHR( device, deferredOperation, pInfo );
}
- VkResult vkReleaseDisplayEXT( VkPhysicalDevice physicalDevice, VkDisplayKHR display ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkCopyMemoryToAccelerationStructureKHR( VkDevice device,
+ VkDeferredOperationKHR deferredOperation,
+ const VkCopyMemoryToAccelerationStructureInfoKHR * pInfo ) const
+ VULKAN_HPP_NOEXCEPT
{
- return ::vkReleaseDisplayEXT( physicalDevice, display );
+ return ::vkCopyMemoryToAccelerationStructureKHR( device, deferredOperation, pInfo );
}
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- VkResult vkReleaseFullScreenExclusiveModeEXT( VkDevice device, VkSwapchainKHR swapchain ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkWriteAccelerationStructuresPropertiesKHR( VkDevice device,
+ uint32_t accelerationStructureCount,
+ const VkAccelerationStructureKHR * pAccelerationStructures,
+ VkQueryType queryType,
+ size_t dataSize,
+ void * pData,
+ size_t stride ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkReleaseFullScreenExclusiveModeEXT( device, swapchain );
+ return ::vkWriteAccelerationStructuresPropertiesKHR(
+ device, accelerationStructureCount, pAccelerationStructures, queryType, dataSize, pData, stride );
}
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
- VkResult vkReleasePerformanceConfigurationINTEL( VkDevice device, VkPerformanceConfigurationINTEL configuration ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdCopyAccelerationStructureKHR( VkCommandBuffer commandBuffer,
+ const VkCopyAccelerationStructureInfoKHR * pInfo ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkReleasePerformanceConfigurationINTEL( device, configuration );
+ return ::vkCmdCopyAccelerationStructureKHR( commandBuffer, pInfo );
}
- void vkReleaseProfilingLockKHR( VkDevice device ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdCopyAccelerationStructureToMemoryKHR( VkCommandBuffer commandBuffer,
+ const VkCopyAccelerationStructureToMemoryInfoKHR * pInfo ) const
+ VULKAN_HPP_NOEXCEPT
{
- return ::vkReleaseProfilingLockKHR( device );
+ return ::vkCmdCopyAccelerationStructureToMemoryKHR( commandBuffer, pInfo );
}
- VkResult vkResetCommandBuffer( VkCommandBuffer commandBuffer, VkCommandBufferResetFlags flags ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdCopyMemoryToAccelerationStructureKHR( VkCommandBuffer commandBuffer,
+ const VkCopyMemoryToAccelerationStructureInfoKHR * pInfo ) const
+ VULKAN_HPP_NOEXCEPT
{
- return ::vkResetCommandBuffer( commandBuffer, flags );
+ return ::vkCmdCopyMemoryToAccelerationStructureKHR( commandBuffer, pInfo );
}
- VkResult vkResetCommandPool( VkDevice device, VkCommandPool commandPool, VkCommandPoolResetFlags flags ) const VULKAN_HPP_NOEXCEPT
+ VkDeviceAddress vkGetAccelerationStructureDeviceAddressKHR(
+ VkDevice device, const VkAccelerationStructureDeviceAddressInfoKHR * pInfo ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkResetCommandPool( device, commandPool, flags );
+ return ::vkGetAccelerationStructureDeviceAddressKHR( device, pInfo );
}
- VkResult vkResetDescriptorPool( VkDevice device, VkDescriptorPool descriptorPool, VkDescriptorPoolResetFlags flags ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdWriteAccelerationStructuresPropertiesKHR( VkCommandBuffer commandBuffer,
+ uint32_t accelerationStructureCount,
+ const VkAccelerationStructureKHR * pAccelerationStructures,
+ VkQueryType queryType,
+ VkQueryPool queryPool,
+ uint32_t firstQuery ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkResetDescriptorPool( device, descriptorPool, flags );
+ return ::vkCmdWriteAccelerationStructuresPropertiesKHR(
+ commandBuffer, accelerationStructureCount, pAccelerationStructures, queryType, queryPool, firstQuery );
}
- VkResult vkResetEvent( VkDevice device, VkEvent event ) const VULKAN_HPP_NOEXCEPT
+ void vkGetDeviceAccelerationStructureCompatibilityKHR(
+ VkDevice device,
+ const VkAccelerationStructureVersionInfoKHR * pVersionInfo,
+ VkAccelerationStructureCompatibilityKHR * pCompatibility ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkResetEvent( device, event );
+ return ::vkGetDeviceAccelerationStructureCompatibilityKHR( device, pVersionInfo, pCompatibility );
}
- VkResult vkResetFences( VkDevice device, uint32_t fenceCount, const VkFence* pFences ) const VULKAN_HPP_NOEXCEPT
+ void vkGetAccelerationStructureBuildSizesKHR( VkDevice device,
+ VkAccelerationStructureBuildTypeKHR buildType,
+ const VkAccelerationStructureBuildGeometryInfoKHR * pBuildInfo,
+ const uint32_t * pMaxPrimitiveCounts,
+ VkAccelerationStructureBuildSizesInfoKHR * pSizeInfo ) const
+ VULKAN_HPP_NOEXCEPT
{
- return ::vkResetFences( device, fenceCount, pFences );
+ return ::vkGetAccelerationStructureBuildSizesKHR( device, buildType, pBuildInfo, pMaxPrimitiveCounts, pSizeInfo );
}
- void vkResetQueryPool( VkDevice device, VkQueryPool queryPool, uint32_t firstQuery, uint32_t queryCount ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkResetQueryPool( device, queryPool, firstQuery, queryCount );
- }
+ //=== VK_KHR_sampler_ycbcr_conversion ===
- void vkResetQueryPoolEXT( VkDevice device, VkQueryPool queryPool, uint32_t firstQuery, uint32_t queryCount ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkCreateSamplerYcbcrConversionKHR( VkDevice device,
+ const VkSamplerYcbcrConversionCreateInfo * pCreateInfo,
+ const VkAllocationCallbacks * pAllocator,
+ VkSamplerYcbcrConversion * pYcbcrConversion ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkResetQueryPoolEXT( device, queryPool, firstQuery, queryCount );
+ return ::vkCreateSamplerYcbcrConversionKHR( device, pCreateInfo, pAllocator, pYcbcrConversion );
}
- VkResult vkSetDebugUtilsObjectNameEXT( VkDevice device, const VkDebugUtilsObjectNameInfoEXT* pNameInfo ) const VULKAN_HPP_NOEXCEPT
+ void vkDestroySamplerYcbcrConversionKHR( VkDevice device,
+ VkSamplerYcbcrConversion ycbcrConversion,
+ const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkSetDebugUtilsObjectNameEXT( device, pNameInfo );
+ return ::vkDestroySamplerYcbcrConversionKHR( device, ycbcrConversion, pAllocator );
}
- VkResult vkSetDebugUtilsObjectTagEXT( VkDevice device, const VkDebugUtilsObjectTagInfoEXT* pTagInfo ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkSetDebugUtilsObjectTagEXT( device, pTagInfo );
- }
+ //=== VK_KHR_bind_memory2 ===
- VkResult vkSetEvent( VkDevice device, VkEvent event ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkBindBufferMemory2KHR( VkDevice device,
+ uint32_t bindInfoCount,
+ const VkBindBufferMemoryInfo * pBindInfos ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkSetEvent( device, event );
+ return ::vkBindBufferMemory2KHR( device, bindInfoCount, pBindInfos );
}
- void vkSetHdrMetadataEXT( VkDevice device, uint32_t swapchainCount, const VkSwapchainKHR* pSwapchains, const VkHdrMetadataEXT* pMetadata ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkBindImageMemory2KHR( VkDevice device,
+ uint32_t bindInfoCount,
+ const VkBindImageMemoryInfo * pBindInfos ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkSetHdrMetadataEXT( device, swapchainCount, pSwapchains, pMetadata );
+ return ::vkBindImageMemory2KHR( device, bindInfoCount, pBindInfos );
}
- void vkSetLocalDimmingAMD( VkDevice device, VkSwapchainKHR swapChain, VkBool32 localDimmingEnable ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkSetLocalDimmingAMD( device, swapChain, localDimmingEnable );
- }
+ //=== VK_EXT_image_drm_format_modifier ===
- VkResult vkSetPrivateDataEXT( VkDevice device, VkObjectType objectType, uint64_t objectHandle, VkPrivateDataSlotEXT privateDataSlot, uint64_t data ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkGetImageDrmFormatModifierPropertiesEXT(
+ VkDevice device, VkImage image, VkImageDrmFormatModifierPropertiesEXT * pProperties ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkSetPrivateDataEXT( device, objectType, objectHandle, privateDataSlot, data );
+ return ::vkGetImageDrmFormatModifierPropertiesEXT( device, image, pProperties );
}
- VkResult vkSignalSemaphore( VkDevice device, const VkSemaphoreSignalInfo* pSignalInfo ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkSignalSemaphore( device, pSignalInfo );
- }
+ //=== VK_EXT_validation_cache ===
- VkResult vkSignalSemaphoreKHR( VkDevice device, const VkSemaphoreSignalInfo* pSignalInfo ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkCreateValidationCacheEXT( VkDevice device,
+ const VkValidationCacheCreateInfoEXT * pCreateInfo,
+ const VkAllocationCallbacks * pAllocator,
+ VkValidationCacheEXT * pValidationCache ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkSignalSemaphoreKHR( device, pSignalInfo );
+ return ::vkCreateValidationCacheEXT( device, pCreateInfo, pAllocator, pValidationCache );
}
- void vkSubmitDebugUtilsMessageEXT( VkInstance instance, VkDebugUtilsMessageSeverityFlagBitsEXT messageSeverity, VkDebugUtilsMessageTypeFlagsEXT messageTypes, const VkDebugUtilsMessengerCallbackDataEXT* pCallbackData ) const VULKAN_HPP_NOEXCEPT
+ void vkDestroyValidationCacheEXT( VkDevice device,
+ VkValidationCacheEXT validationCache,
+ const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkSubmitDebugUtilsMessageEXT( instance, messageSeverity, messageTypes, pCallbackData );
+ return ::vkDestroyValidationCacheEXT( device, validationCache, pAllocator );
}
- void vkTrimCommandPool( VkDevice device, VkCommandPool commandPool, VkCommandPoolTrimFlags flags ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkMergeValidationCachesEXT( VkDevice device,
+ VkValidationCacheEXT dstCache,
+ uint32_t srcCacheCount,
+ const VkValidationCacheEXT * pSrcCaches ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkTrimCommandPool( device, commandPool, flags );
+ return ::vkMergeValidationCachesEXT( device, dstCache, srcCacheCount, pSrcCaches );
}
- void vkTrimCommandPoolKHR( VkDevice device, VkCommandPool commandPool, VkCommandPoolTrimFlags flags ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkGetValidationCacheDataEXT( VkDevice device,
+ VkValidationCacheEXT validationCache,
+ size_t * pDataSize,
+ void * pData ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkTrimCommandPoolKHR( device, commandPool, flags );
+ return ::vkGetValidationCacheDataEXT( device, validationCache, pDataSize, pData );
}
- void vkUninitializePerformanceApiINTEL( VkDevice device ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkUninitializePerformanceApiINTEL( device );
- }
+ //=== VK_NV_shading_rate_image ===
- void vkUnmapMemory( VkDevice device, VkDeviceMemory memory ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdBindShadingRateImageNV( VkCommandBuffer commandBuffer,
+ VkImageView imageView,
+ VkImageLayout imageLayout ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkUnmapMemory( device, memory );
+ return ::vkCmdBindShadingRateImageNV( commandBuffer, imageView, imageLayout );
}
- void vkUpdateDescriptorSetWithTemplate( VkDevice device, VkDescriptorSet descriptorSet, VkDescriptorUpdateTemplate descriptorUpdateTemplate, const void* pData ) const VULKAN_HPP_NOEXCEPT
+ void vkCmdSetViewportShadingRatePaletteNV( VkCommandBuffer commandBuffer,
+ uint32_t firstViewport,
+ uint32_t viewportCount,
+ const VkShadingRatePaletteNV * pShadingRatePalettes ) const
+ VULKAN_HPP_NOEXCEPT
{
- return ::vkUpdateDescriptorSetWithTemplate( device, descriptorSet, descriptorUpdateTemplate, pData );
+ return ::vkCmdSetViewportShadingRatePaletteNV(
+ commandBuffer, firstViewport, viewportCount, pShadingRatePalettes );
}
- void vkUpdateDescriptorSetWithTemplateKHR( VkDevice device, VkDescriptorSet descriptorSet, VkDescriptorUpdateTemplate descriptorUpdateTemplate, const void* pData ) const VULKAN_HPP_NOEXCEPT
+ void
+ vkCmdSetCoarseSampleOrderNV( VkCommandBuffer commandBuffer,
+ VkCoarseSampleOrderTypeNV sampleOrderType,
+ uint32_t customSampleOrderCount,
+ const VkCoarseSampleOrderCustomNV * pCustomSampleOrders ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkUpdateDescriptorSetWithTemplateKHR( device, descriptorSet, descriptorUpdateTemplate, pData );
+ return ::vkCmdSetCoarseSampleOrderNV(
+ commandBuffer, sampleOrderType, customSampleOrderCount, pCustomSampleOrders );
}
- void vkUpdateDescriptorSets( VkDevice device, uint32_t descriptorWriteCount, const VkWriteDescriptorSet* pDescriptorWrites, uint32_t descriptorCopyCount, const VkCopyDescriptorSet* pDescriptorCopies ) const VULKAN_HPP_NOEXCEPT
- {
- return ::vkUpdateDescriptorSets( device, descriptorWriteCount, pDescriptorWrites, descriptorCopyCount, pDescriptorCopies );
- }
+ //=== VK_NV_ray_tracing ===
- VkResult vkWaitForFences( VkDevice device, uint32_t fenceCount, const VkFence* pFences, VkBool32 waitAll, uint64_t timeout ) const VULKAN_HPP_NOEXCEPT
+ VkResult
+ vkCreateAccelerationStructureNV( VkDevice device,
+ const VkAccelerationStructureCreateInfoNV * pCreateInfo,
+ const VkAllocationCallbacks * pAllocator,
+ VkAccelerationStructureNV * pAccelerationStructure ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkWaitForFences( device, fenceCount, pFences, waitAll, timeout );
+ return ::vkCreateAccelerationStructureNV( device, pCreateInfo, pAllocator, pAccelerationStructure );
}
- VkResult vkWaitSemaphores( VkDevice device, const VkSemaphoreWaitInfo* pWaitInfo, uint64_t timeout ) const VULKAN_HPP_NOEXCEPT
+ void vkDestroyAccelerationStructureNV( VkDevice device,
+ VkAccelerationStructureNV accelerationStructure,
+ const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT
{
- return ::vkWaitSemaphores( device, pWaitInfo, timeout );
+ return ::vkDestroyAccelerationStructureNV( device, accelerationStructure, pAllocator );
}
- VkResult vkWaitSemaphoresKHR( VkDevice device, const VkSemaphoreWaitInfo* pWaitInfo, uint64_t timeout ) const VULKAN_HPP_NOEXCEPT
+ void vkGetAccelerationStructureMemoryRequirementsNV( VkDevice device,
+ const VkAccelerationStructureMemoryRequirementsInfoNV * pInfo,
+ VkMemoryRequirements2KHR * pMemoryRequirements ) const
+ VULKAN_HPP_NOEXCEPT
{
- return ::vkWaitSemaphoresKHR( device, pWaitInfo, timeout );
+ return ::vkGetAccelerationStructureMemoryRequirementsNV( device, pInfo, pMemoryRequirements );
}
- VkResult vkWriteAccelerationStructuresPropertiesKHR( VkDevice device, uint32_t accelerationStructureCount, const VkAccelerationStructureKHR* pAccelerationStructures, VkQueryType queryType, size_t dataSize, void* pData, size_t stride ) const VULKAN_HPP_NOEXCEPT
+ VkResult vkBindAccelerationStructureMemoryNV( VkDevice device,
+ uint32_t bindInfoCount,
+ const VkBindAccelerationStructureMemoryInfoNV * pBindInfos ) const
+ VULKAN_HPP_NOEXCEPT
{
- return ::vkWriteAccelerationStructuresPropertiesKHR( device, accelerationStructureCount, pAccelerationStructures, queryType, dataSize, pData, stride );
+ return ::vkBindAccelerationStructureMemoryNV( device, bindInfoCount, pBindInfos );
}
- };
-#endif
- class DispatchLoaderDynamic;
-#if !defined(VULKAN_HPP_DISPATCH_LOADER_DYNAMIC)
-# if defined(VK_NO_PROTOTYPES)
-# define VULKAN_HPP_DISPATCH_LOADER_DYNAMIC 1
-# else
-# define VULKAN_HPP_DISPATCH_LOADER_DYNAMIC 0
-# endif
-#endif
-
-#if defined(_WIN32) && defined(VULKAN_HPP_STORAGE_SHARED)
-# ifdef VULKAN_HPP_STORAGE_SHARED_EXPORT
-# define VULKAN_HPP_STORAGE_API __declspec( dllexport )
-# else
-# define VULKAN_HPP_STORAGE_API __declspec( dllimport )
-# endif
-#else
-# define VULKAN_HPP_STORAGE_API
-#endif
-
-#if !defined(VULKAN_HPP_DEFAULT_DISPATCHER)
-# if VULKAN_HPP_DISPATCH_LOADER_DYNAMIC == 1
-# define VULKAN_HPP_DEFAULT_DISPATCHER ::VULKAN_HPP_NAMESPACE::defaultDispatchLoaderDynamic
-# define VULKAN_HPP_DEFAULT_DISPATCH_LOADER_DYNAMIC_STORAGE namespace VULKAN_HPP_NAMESPACE { VULKAN_HPP_STORAGE_API DispatchLoaderDynamic defaultDispatchLoaderDynamic; }
- extern VULKAN_HPP_STORAGE_API DispatchLoaderDynamic defaultDispatchLoaderDynamic;
-# else
-# define VULKAN_HPP_DEFAULT_DISPATCHER ::VULKAN_HPP_NAMESPACE::DispatchLoaderStatic()
-# define VULKAN_HPP_DEFAULT_DISPATCH_LOADER_DYNAMIC_STORAGE
-# endif
-#endif
-
-#if !defined(VULKAN_HPP_DEFAULT_DISPATCHER_TYPE)
-# if VULKAN_HPP_DISPATCH_LOADER_DYNAMIC == 1
- #define VULKAN_HPP_DEFAULT_DISPATCHER_TYPE ::VULKAN_HPP_NAMESPACE::DispatchLoaderDynamic
-# else
-# define VULKAN_HPP_DEFAULT_DISPATCHER_TYPE ::VULKAN_HPP_NAMESPACE::DispatchLoaderStatic
-# endif
-#endif
-
-#if defined( VULKAN_HPP_NO_DEFAULT_DISPATCHER )
-# define VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT
-# define VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT
-# define VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT
-#else
-# define VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT = {}
-# define VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT = nullptr
-# define VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT = VULKAN_HPP_DEFAULT_DISPATCHER
-#endif
-
- struct AllocationCallbacks;
-
- template <typename OwnerType, typename Dispatch>
- class ObjectDestroy
- {
- public:
- ObjectDestroy() = default;
-
- ObjectDestroy( OwnerType owner,
- Optional<const AllocationCallbacks> allocationCallbacks
- VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
- Dispatch const & dispatch = VULKAN_HPP_DEFAULT_DISPATCHER ) VULKAN_HPP_NOEXCEPT
- : m_owner( owner )
- , m_allocationCallbacks( allocationCallbacks )
- , m_dispatch( &dispatch )
- {}
-
- OwnerType getOwner() const VULKAN_HPP_NOEXCEPT { return m_owner; }
- Optional<const AllocationCallbacks> getAllocator() const VULKAN_HPP_NOEXCEPT { return m_allocationCallbacks; }
-
- protected:
- template <typename T>
- void destroy(T t) VULKAN_HPP_NOEXCEPT
- {
- VULKAN_HPP_ASSERT( m_owner && m_dispatch );
- m_owner.destroy( t, m_allocationCallbacks, *m_dispatch );
- }
-
- private:
- OwnerType m_owner = {};
- Optional<const AllocationCallbacks> m_allocationCallbacks = nullptr;
- Dispatch const * m_dispatch = nullptr;
- };
-
- class NoParent;
-
- template <typename Dispatch>
- class ObjectDestroy<NoParent,Dispatch>
- {
- public:
- ObjectDestroy() = default;
-
- ObjectDestroy( Optional<const AllocationCallbacks> allocationCallbacks,
- Dispatch const & dispatch = VULKAN_HPP_DEFAULT_DISPATCHER ) VULKAN_HPP_NOEXCEPT
- : m_allocationCallbacks( allocationCallbacks )
- , m_dispatch( &dispatch )
- {}
-
- Optional<const AllocationCallbacks> getAllocator() const VULKAN_HPP_NOEXCEPT { return m_allocationCallbacks; }
-
- protected:
- template <typename T>
- void destroy(T t) VULKAN_HPP_NOEXCEPT
- {
- VULKAN_HPP_ASSERT( m_dispatch );
- t.destroy( m_allocationCallbacks, *m_dispatch );
- }
-
- private:
- Optional<const AllocationCallbacks> m_allocationCallbacks = nullptr;
- Dispatch const * m_dispatch = nullptr;
- };
-
- template <typename OwnerType, typename Dispatch>
- class ObjectFree
- {
- public:
- ObjectFree() = default;
-
- ObjectFree( OwnerType owner,
- Optional<const AllocationCallbacks> allocationCallbacks VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
- Dispatch const & dispatch = VULKAN_HPP_DEFAULT_DISPATCHER ) VULKAN_HPP_NOEXCEPT
- : m_owner( owner )
- , m_allocationCallbacks( allocationCallbacks )
- , m_dispatch( &dispatch )
- {}
-
- OwnerType getOwner() const VULKAN_HPP_NOEXCEPT
+ void vkCmdBuildAccelerationStructureNV( VkCommandBuffer commandBuffer,
+ const VkAccelerationStructureInfoNV * pInfo,
+ VkBuffer instanceData,
+ VkDeviceSize instanceOffset,
+ VkBool32 update,
+ VkAccelerationStructureNV dst,
+ VkAccelerationStructureNV src,
+ VkBuffer scratch,
+ VkDeviceSize scratchOffset ) const VULKAN_HPP_NOEXCEPT
{
- return m_owner;
+ return ::vkCmdBuildAccelerationStructureNV(
+ commandBuffer, pInfo, instanceData, instanceOffset, update, dst, src, scratch, scratchOffset );
}
- Optional<const AllocationCallbacks> getAllocator() const VULKAN_HPP_NOEXCEPT
+ void vkCmdCopyAccelerationStructureNV( VkCommandBuffer commandBuffer,
+ VkAccelerationStructureNV dst,
+ VkAccelerationStructureNV src,
+ VkCopyAccelerationStructureModeKHR mode ) const VULKAN_HPP_NOEXCEPT
{
- return m_allocationCallbacks;
+ return ::vkCmdCopyAccelerationStructureNV( commandBuffer, dst, src, mode );
}
- protected:
- template <typename T>
- void destroy( T t ) VULKAN_HPP_NOEXCEPT
+ void vkCmdTraceRaysNV( VkCommandBuffer commandBuffer,
+ VkBuffer raygenShaderBindingTableBuffer,
+ VkDeviceSize raygenShaderBindingOffset,
+ VkBuffer missShaderBindingTableBuffer,
+ VkDeviceSize missShaderBindingOffset,
+ VkDeviceSize missShaderBindingStride,
+ VkBuffer hitShaderBindingTableBuffer,
+ VkDeviceSize hitShaderBindingOffset,
+ VkDeviceSize hitShaderBindingStride,
+ VkBuffer callableShaderBindingTableBuffer,
+ VkDeviceSize callableShaderBindingOffset,
+ VkDeviceSize callableShaderBindingStride,
+ uint32_t width,
+ uint32_t height,
+ uint32_t depth ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ::vkCmdTraceRaysNV( commandBuffer,
+ raygenShaderBindingTableBuffer,
+ raygenShaderBindingOffset,
+ missShaderBindingTableBuffer,
+ missShaderBindingOffset,
+ missShaderBindingStride,
+ hitShaderBindingTableBuffer,
+ hitShaderBindingOffset,
+ hitShaderBindingStride,
+ callableShaderBindingTableBuffer,
+ callableShaderBindingOffset,
+ callableShaderBindingStride,
+ width,
+ height,
+ depth );
+ }
+
+ VkResult vkCreateRayTracingPipelinesNV( VkDevice device,
+ VkPipelineCache pipelineCache,
+ uint32_t createInfoCount,
+ const VkRayTracingPipelineCreateInfoNV * pCreateInfos,
+ const VkAllocationCallbacks * pAllocator,
+ VkPipeline * pPipelines ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ::vkCreateRayTracingPipelinesNV(
+ device, pipelineCache, createInfoCount, pCreateInfos, pAllocator, pPipelines );
+ }
+
+ VkResult vkGetRayTracingShaderGroupHandlesNV( VkDevice device,
+ VkPipeline pipeline,
+ uint32_t firstGroup,
+ uint32_t groupCount,
+ size_t dataSize,
+ void * pData ) const VULKAN_HPP_NOEXCEPT
{
- VULKAN_HPP_ASSERT( m_owner && m_dispatch );
- m_owner.free( t, m_allocationCallbacks, *m_dispatch );
+ return ::vkGetRayTracingShaderGroupHandlesNV( device, pipeline, firstGroup, groupCount, dataSize, pData );
}
- private:
- OwnerType m_owner = {};
- Optional<const AllocationCallbacks> m_allocationCallbacks = nullptr;
- Dispatch const * m_dispatch = nullptr;
- };
-
- template <typename OwnerType, typename Dispatch>
- class ObjectRelease
- {
- public:
- ObjectRelease() = default;
-
- ObjectRelease( OwnerType owner, Dispatch const & dispatch = VULKAN_HPP_DEFAULT_DISPATCHER ) VULKAN_HPP_NOEXCEPT
- : m_owner( owner )
- , m_dispatch( &dispatch )
- {}
-
- OwnerType getOwner() const VULKAN_HPP_NOEXCEPT
+ VkResult vkGetAccelerationStructureHandleNV( VkDevice device,
+ VkAccelerationStructureNV accelerationStructure,
+ size_t dataSize,
+ void * pData ) const VULKAN_HPP_NOEXCEPT
{
- return m_owner;
+ return ::vkGetAccelerationStructureHandleNV( device, accelerationStructure, dataSize, pData );
}
- protected:
- template <typename T>
- void destroy( T t ) VULKAN_HPP_NOEXCEPT
+ void vkCmdWriteAccelerationStructuresPropertiesNV( VkCommandBuffer commandBuffer,
+ uint32_t accelerationStructureCount,
+ const VkAccelerationStructureNV * pAccelerationStructures,
+ VkQueryType queryType,
+ VkQueryPool queryPool,
+ uint32_t firstQuery ) const VULKAN_HPP_NOEXCEPT
{
- VULKAN_HPP_ASSERT( m_owner && m_dispatch );
- m_owner.release( t, *m_dispatch );
+ return ::vkCmdWriteAccelerationStructuresPropertiesNV(
+ commandBuffer, accelerationStructureCount, pAccelerationStructures, queryType, queryPool, firstQuery );
}
- private:
- OwnerType m_owner = {};
- Dispatch const * m_dispatch = nullptr;
- };
-
- template <typename OwnerType, typename PoolType, typename Dispatch>
- class PoolFree
- {
- public:
- PoolFree() = default;
-
- PoolFree( OwnerType owner,
- PoolType pool,
- Dispatch const & dispatch = VULKAN_HPP_DEFAULT_DISPATCHER ) VULKAN_HPP_NOEXCEPT
- : m_owner( owner )
- , m_pool( pool )
- , m_dispatch( &dispatch )
- {}
-
- OwnerType getOwner() const VULKAN_HPP_NOEXCEPT { return m_owner; }
- PoolType getPool() const VULKAN_HPP_NOEXCEPT { return m_pool; }
-
- protected:
- template <typename T>
- void destroy(T t) VULKAN_HPP_NOEXCEPT
- {
- m_owner.free( m_pool, t, *m_dispatch );
- }
-
- private:
- OwnerType m_owner = OwnerType();
- PoolType m_pool = PoolType();
- Dispatch const * m_dispatch = nullptr;
- };
-
- using Bool32 = uint32_t;
- using DeviceAddress = uint64_t;
- using DeviceSize = uint64_t;
- using SampleMask = uint32_t;
-
- template <typename EnumType, EnumType value>
- struct CppType
- {};
-
- template <typename Type>
- struct isVulkanHandleType
- {
- static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = false;
- };
-
- VULKAN_HPP_INLINE std::string toHexString( uint32_t value )
- {
- std::stringstream stream;
- stream << std::hex << value;
- return stream.str();
- }
-
- enum class AccelerationStructureBuildTypeKHR
- {
- eHost = VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_KHR,
- eDevice = VK_ACCELERATION_STRUCTURE_BUILD_TYPE_DEVICE_KHR,
- eHostOrDevice = VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_OR_DEVICE_KHR
- };
-
- VULKAN_HPP_INLINE std::string to_string( AccelerationStructureBuildTypeKHR value )
- {
- switch ( value )
+ VkResult vkCompileDeferredNV( VkDevice device, VkPipeline pipeline, uint32_t shader ) const VULKAN_HPP_NOEXCEPT
{
- case AccelerationStructureBuildTypeKHR::eHost : return "Host";
- case AccelerationStructureBuildTypeKHR::eDevice : return "Device";
- case AccelerationStructureBuildTypeKHR::eHostOrDevice : return "HostOrDevice";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCompileDeferredNV( device, pipeline, shader );
}
- }
- enum class AccelerationStructureCompatibilityKHR
- {
- eCompatible = VK_ACCELERATION_STRUCTURE_COMPATIBILITY_COMPATIBLE_KHR,
- eIncompatible = VK_ACCELERATION_STRUCTURE_COMPATIBILITY_INCOMPATIBLE_KHR
- };
+ //=== VK_KHR_maintenance3 ===
- VULKAN_HPP_INLINE std::string to_string( AccelerationStructureCompatibilityKHR value )
- {
- switch ( value )
+ void vkGetDescriptorSetLayoutSupportKHR( VkDevice device,
+ const VkDescriptorSetLayoutCreateInfo * pCreateInfo,
+ VkDescriptorSetLayoutSupport * pSupport ) const VULKAN_HPP_NOEXCEPT
{
- case AccelerationStructureCompatibilityKHR::eCompatible : return "Compatible";
- case AccelerationStructureCompatibilityKHR::eIncompatible : return "Incompatible";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkGetDescriptorSetLayoutSupportKHR( device, pCreateInfo, pSupport );
}
- }
- enum class AccelerationStructureCreateFlagBitsKHR : VkAccelerationStructureCreateFlagsKHR
- {
- eDeviceAddressCaptureReplay = VK_ACCELERATION_STRUCTURE_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_KHR
- };
+ //=== VK_KHR_draw_indirect_count ===
- VULKAN_HPP_INLINE std::string to_string( AccelerationStructureCreateFlagBitsKHR value )
- {
- switch ( value )
+ void vkCmdDrawIndirectCountKHR( VkCommandBuffer commandBuffer,
+ VkBuffer buffer,
+ VkDeviceSize offset,
+ VkBuffer countBuffer,
+ VkDeviceSize countBufferOffset,
+ uint32_t maxDrawCount,
+ uint32_t stride ) const VULKAN_HPP_NOEXCEPT
{
- case AccelerationStructureCreateFlagBitsKHR::eDeviceAddressCaptureReplay : return "DeviceAddressCaptureReplay";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCmdDrawIndirectCountKHR(
+ commandBuffer, buffer, offset, countBuffer, countBufferOffset, maxDrawCount, stride );
}
- }
- enum class AccelerationStructureMemoryRequirementsTypeNV
- {
- eObject = VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_OBJECT_NV,
- eBuildScratch = VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BUILD_SCRATCH_NV,
- eUpdateScratch = VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_NV
- };
-
- VULKAN_HPP_INLINE std::string to_string( AccelerationStructureMemoryRequirementsTypeNV value )
- {
- switch ( value )
+ void vkCmdDrawIndexedIndirectCountKHR( VkCommandBuffer commandBuffer,
+ VkBuffer buffer,
+ VkDeviceSize offset,
+ VkBuffer countBuffer,
+ VkDeviceSize countBufferOffset,
+ uint32_t maxDrawCount,
+ uint32_t stride ) const VULKAN_HPP_NOEXCEPT
{
- case AccelerationStructureMemoryRequirementsTypeNV::eObject : return "Object";
- case AccelerationStructureMemoryRequirementsTypeNV::eBuildScratch : return "BuildScratch";
- case AccelerationStructureMemoryRequirementsTypeNV::eUpdateScratch : return "UpdateScratch";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCmdDrawIndexedIndirectCountKHR(
+ commandBuffer, buffer, offset, countBuffer, countBufferOffset, maxDrawCount, stride );
}
- }
- enum class AccelerationStructureTypeKHR
- {
- eTopLevel = VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_KHR,
- eBottomLevel = VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_KHR,
- eGeneric = VK_ACCELERATION_STRUCTURE_TYPE_GENERIC_KHR
- };
- using AccelerationStructureTypeNV = AccelerationStructureTypeKHR;
+ //=== VK_EXT_external_memory_host ===
- VULKAN_HPP_INLINE std::string to_string( AccelerationStructureTypeKHR value )
- {
- switch ( value )
+ VkResult vkGetMemoryHostPointerPropertiesEXT(
+ VkDevice device,
+ VkExternalMemoryHandleTypeFlagBits handleType,
+ const void * pHostPointer,
+ VkMemoryHostPointerPropertiesEXT * pMemoryHostPointerProperties ) const VULKAN_HPP_NOEXCEPT
{
- case AccelerationStructureTypeKHR::eTopLevel : return "TopLevel";
- case AccelerationStructureTypeKHR::eBottomLevel : return "BottomLevel";
- case AccelerationStructureTypeKHR::eGeneric : return "Generic";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
- }
- }
-
- enum class AccessFlagBits : VkAccessFlags
- {
- eIndirectCommandRead = VK_ACCESS_INDIRECT_COMMAND_READ_BIT,
- eIndexRead = VK_ACCESS_INDEX_READ_BIT,
- eVertexAttributeRead = VK_ACCESS_VERTEX_ATTRIBUTE_READ_BIT,
- eUniformRead = VK_ACCESS_UNIFORM_READ_BIT,
- eInputAttachmentRead = VK_ACCESS_INPUT_ATTACHMENT_READ_BIT,
- eShaderRead = VK_ACCESS_SHADER_READ_BIT,
- eShaderWrite = VK_ACCESS_SHADER_WRITE_BIT,
- eColorAttachmentRead = VK_ACCESS_COLOR_ATTACHMENT_READ_BIT,
- eColorAttachmentWrite = VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT,
- eDepthStencilAttachmentRead = VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_READ_BIT,
- eDepthStencilAttachmentWrite = VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT,
- eTransferRead = VK_ACCESS_TRANSFER_READ_BIT,
- eTransferWrite = VK_ACCESS_TRANSFER_WRITE_BIT,
- eHostRead = VK_ACCESS_HOST_READ_BIT,
- eHostWrite = VK_ACCESS_HOST_WRITE_BIT,
- eMemoryRead = VK_ACCESS_MEMORY_READ_BIT,
- eMemoryWrite = VK_ACCESS_MEMORY_WRITE_BIT,
- eTransformFeedbackWriteEXT = VK_ACCESS_TRANSFORM_FEEDBACK_WRITE_BIT_EXT,
- eTransformFeedbackCounterReadEXT = VK_ACCESS_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT,
- eTransformFeedbackCounterWriteEXT = VK_ACCESS_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT,
- eConditionalRenderingReadEXT = VK_ACCESS_CONDITIONAL_RENDERING_READ_BIT_EXT,
- eColorAttachmentReadNoncoherentEXT = VK_ACCESS_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT,
- eAccelerationStructureReadKHR = VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_KHR,
- eAccelerationStructureWriteKHR = VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_KHR,
- eShadingRateImageReadNV = VK_ACCESS_SHADING_RATE_IMAGE_READ_BIT_NV,
- eFragmentDensityMapReadEXT = VK_ACCESS_FRAGMENT_DENSITY_MAP_READ_BIT_EXT,
- eCommandPreprocessReadNV = VK_ACCESS_COMMAND_PREPROCESS_READ_BIT_NV,
- eCommandPreprocessWriteNV = VK_ACCESS_COMMAND_PREPROCESS_WRITE_BIT_NV,
- eAccelerationStructureReadNV = VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_NV,
- eAccelerationStructureWriteNV = VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_NV,
- eFragmentShadingRateAttachmentReadKHR = VK_ACCESS_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR
- };
-
- VULKAN_HPP_INLINE std::string to_string( AccessFlagBits value )
- {
- switch ( value )
- {
- case AccessFlagBits::eIndirectCommandRead : return "IndirectCommandRead";
- case AccessFlagBits::eIndexRead : return "IndexRead";
- case AccessFlagBits::eVertexAttributeRead : return "VertexAttributeRead";
- case AccessFlagBits::eUniformRead : return "UniformRead";
- case AccessFlagBits::eInputAttachmentRead : return "InputAttachmentRead";
- case AccessFlagBits::eShaderRead : return "ShaderRead";
- case AccessFlagBits::eShaderWrite : return "ShaderWrite";
- case AccessFlagBits::eColorAttachmentRead : return "ColorAttachmentRead";
- case AccessFlagBits::eColorAttachmentWrite : return "ColorAttachmentWrite";
- case AccessFlagBits::eDepthStencilAttachmentRead : return "DepthStencilAttachmentRead";
- case AccessFlagBits::eDepthStencilAttachmentWrite : return "DepthStencilAttachmentWrite";
- case AccessFlagBits::eTransferRead : return "TransferRead";
- case AccessFlagBits::eTransferWrite : return "TransferWrite";
- case AccessFlagBits::eHostRead : return "HostRead";
- case AccessFlagBits::eHostWrite : return "HostWrite";
- case AccessFlagBits::eMemoryRead : return "MemoryRead";
- case AccessFlagBits::eMemoryWrite : return "MemoryWrite";
- case AccessFlagBits::eTransformFeedbackWriteEXT : return "TransformFeedbackWriteEXT";
- case AccessFlagBits::eTransformFeedbackCounterReadEXT : return "TransformFeedbackCounterReadEXT";
- case AccessFlagBits::eTransformFeedbackCounterWriteEXT : return "TransformFeedbackCounterWriteEXT";
- case AccessFlagBits::eConditionalRenderingReadEXT : return "ConditionalRenderingReadEXT";
- case AccessFlagBits::eColorAttachmentReadNoncoherentEXT : return "ColorAttachmentReadNoncoherentEXT";
- case AccessFlagBits::eAccelerationStructureReadKHR : return "AccelerationStructureReadKHR";
- case AccessFlagBits::eAccelerationStructureWriteKHR : return "AccelerationStructureWriteKHR";
- case AccessFlagBits::eShadingRateImageReadNV : return "ShadingRateImageReadNV";
- case AccessFlagBits::eFragmentDensityMapReadEXT : return "FragmentDensityMapReadEXT";
- case AccessFlagBits::eCommandPreprocessReadNV : return "CommandPreprocessReadNV";
- case AccessFlagBits::eCommandPreprocessWriteNV : return "CommandPreprocessWriteNV";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkGetMemoryHostPointerPropertiesEXT( device, handleType, pHostPointer, pMemoryHostPointerProperties );
}
- }
- enum class AcquireProfilingLockFlagBitsKHR : VkAcquireProfilingLockFlagsKHR
- {};
+ //=== VK_AMD_buffer_marker ===
- VULKAN_HPP_INLINE std::string to_string( AcquireProfilingLockFlagBitsKHR )
- {
- return "(void)";
- }
-
- enum class AttachmentDescriptionFlagBits : VkAttachmentDescriptionFlags
- {
- eMayAlias = VK_ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT
- };
-
- VULKAN_HPP_INLINE std::string to_string( AttachmentDescriptionFlagBits value )
- {
- switch ( value )
+ void vkCmdWriteBufferMarkerAMD( VkCommandBuffer commandBuffer,
+ VkPipelineStageFlagBits pipelineStage,
+ VkBuffer dstBuffer,
+ VkDeviceSize dstOffset,
+ uint32_t marker ) const VULKAN_HPP_NOEXCEPT
{
- case AttachmentDescriptionFlagBits::eMayAlias : return "MayAlias";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCmdWriteBufferMarkerAMD( commandBuffer, pipelineStage, dstBuffer, dstOffset, marker );
}
- }
- enum class AttachmentLoadOp
- {
- eLoad = VK_ATTACHMENT_LOAD_OP_LOAD,
- eClear = VK_ATTACHMENT_LOAD_OP_CLEAR,
- eDontCare = VK_ATTACHMENT_LOAD_OP_DONT_CARE
- };
+ //=== VK_EXT_calibrated_timestamps ===
- VULKAN_HPP_INLINE std::string to_string( AttachmentLoadOp value )
- {
- switch ( value )
+ VkResult vkGetPhysicalDeviceCalibrateableTimeDomainsEXT( VkPhysicalDevice physicalDevice,
+ uint32_t * pTimeDomainCount,
+ VkTimeDomainEXT * pTimeDomains ) const VULKAN_HPP_NOEXCEPT
{
- case AttachmentLoadOp::eLoad : return "Load";
- case AttachmentLoadOp::eClear : return "Clear";
- case AttachmentLoadOp::eDontCare : return "DontCare";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkGetPhysicalDeviceCalibrateableTimeDomainsEXT( physicalDevice, pTimeDomainCount, pTimeDomains );
}
- }
-
- enum class AttachmentStoreOp
- {
- eStore = VK_ATTACHMENT_STORE_OP_STORE,
- eDontCare = VK_ATTACHMENT_STORE_OP_DONT_CARE,
- eNoneQCOM = VK_ATTACHMENT_STORE_OP_NONE_QCOM
- };
- VULKAN_HPP_INLINE std::string to_string( AttachmentStoreOp value )
- {
- switch ( value )
+ VkResult vkGetCalibratedTimestampsEXT( VkDevice device,
+ uint32_t timestampCount,
+ const VkCalibratedTimestampInfoEXT * pTimestampInfos,
+ uint64_t * pTimestamps,
+ uint64_t * pMaxDeviation ) const VULKAN_HPP_NOEXCEPT
{
- case AttachmentStoreOp::eStore : return "Store";
- case AttachmentStoreOp::eDontCare : return "DontCare";
- case AttachmentStoreOp::eNoneQCOM : return "NoneQCOM";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
- }
- }
-
- enum class BlendFactor
- {
- eZero = VK_BLEND_FACTOR_ZERO,
- eOne = VK_BLEND_FACTOR_ONE,
- eSrcColor = VK_BLEND_FACTOR_SRC_COLOR,
- eOneMinusSrcColor = VK_BLEND_FACTOR_ONE_MINUS_SRC_COLOR,
- eDstColor = VK_BLEND_FACTOR_DST_COLOR,
- eOneMinusDstColor = VK_BLEND_FACTOR_ONE_MINUS_DST_COLOR,
- eSrcAlpha = VK_BLEND_FACTOR_SRC_ALPHA,
- eOneMinusSrcAlpha = VK_BLEND_FACTOR_ONE_MINUS_SRC_ALPHA,
- eDstAlpha = VK_BLEND_FACTOR_DST_ALPHA,
- eOneMinusDstAlpha = VK_BLEND_FACTOR_ONE_MINUS_DST_ALPHA,
- eConstantColor = VK_BLEND_FACTOR_CONSTANT_COLOR,
- eOneMinusConstantColor = VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_COLOR,
- eConstantAlpha = VK_BLEND_FACTOR_CONSTANT_ALPHA,
- eOneMinusConstantAlpha = VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_ALPHA,
- eSrcAlphaSaturate = VK_BLEND_FACTOR_SRC_ALPHA_SATURATE,
- eSrc1Color = VK_BLEND_FACTOR_SRC1_COLOR,
- eOneMinusSrc1Color = VK_BLEND_FACTOR_ONE_MINUS_SRC1_COLOR,
- eSrc1Alpha = VK_BLEND_FACTOR_SRC1_ALPHA,
- eOneMinusSrc1Alpha = VK_BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA
- };
-
- VULKAN_HPP_INLINE std::string to_string( BlendFactor value )
- {
- switch ( value )
- {
- case BlendFactor::eZero : return "Zero";
- case BlendFactor::eOne : return "One";
- case BlendFactor::eSrcColor : return "SrcColor";
- case BlendFactor::eOneMinusSrcColor : return "OneMinusSrcColor";
- case BlendFactor::eDstColor : return "DstColor";
- case BlendFactor::eOneMinusDstColor : return "OneMinusDstColor";
- case BlendFactor::eSrcAlpha : return "SrcAlpha";
- case BlendFactor::eOneMinusSrcAlpha : return "OneMinusSrcAlpha";
- case BlendFactor::eDstAlpha : return "DstAlpha";
- case BlendFactor::eOneMinusDstAlpha : return "OneMinusDstAlpha";
- case BlendFactor::eConstantColor : return "ConstantColor";
- case BlendFactor::eOneMinusConstantColor : return "OneMinusConstantColor";
- case BlendFactor::eConstantAlpha : return "ConstantAlpha";
- case BlendFactor::eOneMinusConstantAlpha : return "OneMinusConstantAlpha";
- case BlendFactor::eSrcAlphaSaturate : return "SrcAlphaSaturate";
- case BlendFactor::eSrc1Color : return "Src1Color";
- case BlendFactor::eOneMinusSrc1Color : return "OneMinusSrc1Color";
- case BlendFactor::eSrc1Alpha : return "Src1Alpha";
- case BlendFactor::eOneMinusSrc1Alpha : return "OneMinusSrc1Alpha";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
- }
- }
-
- enum class BlendOp
- {
- eAdd = VK_BLEND_OP_ADD,
- eSubtract = VK_BLEND_OP_SUBTRACT,
- eReverseSubtract = VK_BLEND_OP_REVERSE_SUBTRACT,
- eMin = VK_BLEND_OP_MIN,
- eMax = VK_BLEND_OP_MAX,
- eZeroEXT = VK_BLEND_OP_ZERO_EXT,
- eSrcEXT = VK_BLEND_OP_SRC_EXT,
- eDstEXT = VK_BLEND_OP_DST_EXT,
- eSrcOverEXT = VK_BLEND_OP_SRC_OVER_EXT,
- eDstOverEXT = VK_BLEND_OP_DST_OVER_EXT,
- eSrcInEXT = VK_BLEND_OP_SRC_IN_EXT,
- eDstInEXT = VK_BLEND_OP_DST_IN_EXT,
- eSrcOutEXT = VK_BLEND_OP_SRC_OUT_EXT,
- eDstOutEXT = VK_BLEND_OP_DST_OUT_EXT,
- eSrcAtopEXT = VK_BLEND_OP_SRC_ATOP_EXT,
- eDstAtopEXT = VK_BLEND_OP_DST_ATOP_EXT,
- eXorEXT = VK_BLEND_OP_XOR_EXT,
- eMultiplyEXT = VK_BLEND_OP_MULTIPLY_EXT,
- eScreenEXT = VK_BLEND_OP_SCREEN_EXT,
- eOverlayEXT = VK_BLEND_OP_OVERLAY_EXT,
- eDarkenEXT = VK_BLEND_OP_DARKEN_EXT,
- eLightenEXT = VK_BLEND_OP_LIGHTEN_EXT,
- eColordodgeEXT = VK_BLEND_OP_COLORDODGE_EXT,
- eColorburnEXT = VK_BLEND_OP_COLORBURN_EXT,
- eHardlightEXT = VK_BLEND_OP_HARDLIGHT_EXT,
- eSoftlightEXT = VK_BLEND_OP_SOFTLIGHT_EXT,
- eDifferenceEXT = VK_BLEND_OP_DIFFERENCE_EXT,
- eExclusionEXT = VK_BLEND_OP_EXCLUSION_EXT,
- eInvertEXT = VK_BLEND_OP_INVERT_EXT,
- eInvertRgbEXT = VK_BLEND_OP_INVERT_RGB_EXT,
- eLineardodgeEXT = VK_BLEND_OP_LINEARDODGE_EXT,
- eLinearburnEXT = VK_BLEND_OP_LINEARBURN_EXT,
- eVividlightEXT = VK_BLEND_OP_VIVIDLIGHT_EXT,
- eLinearlightEXT = VK_BLEND_OP_LINEARLIGHT_EXT,
- ePinlightEXT = VK_BLEND_OP_PINLIGHT_EXT,
- eHardmixEXT = VK_BLEND_OP_HARDMIX_EXT,
- eHslHueEXT = VK_BLEND_OP_HSL_HUE_EXT,
- eHslSaturationEXT = VK_BLEND_OP_HSL_SATURATION_EXT,
- eHslColorEXT = VK_BLEND_OP_HSL_COLOR_EXT,
- eHslLuminosityEXT = VK_BLEND_OP_HSL_LUMINOSITY_EXT,
- ePlusEXT = VK_BLEND_OP_PLUS_EXT,
- ePlusClampedEXT = VK_BLEND_OP_PLUS_CLAMPED_EXT,
- ePlusClampedAlphaEXT = VK_BLEND_OP_PLUS_CLAMPED_ALPHA_EXT,
- ePlusDarkerEXT = VK_BLEND_OP_PLUS_DARKER_EXT,
- eMinusEXT = VK_BLEND_OP_MINUS_EXT,
- eMinusClampedEXT = VK_BLEND_OP_MINUS_CLAMPED_EXT,
- eContrastEXT = VK_BLEND_OP_CONTRAST_EXT,
- eInvertOvgEXT = VK_BLEND_OP_INVERT_OVG_EXT,
- eRedEXT = VK_BLEND_OP_RED_EXT,
- eGreenEXT = VK_BLEND_OP_GREEN_EXT,
- eBlueEXT = VK_BLEND_OP_BLUE_EXT
- };
-
- VULKAN_HPP_INLINE std::string to_string( BlendOp value )
- {
- switch ( value )
- {
- case BlendOp::eAdd : return "Add";
- case BlendOp::eSubtract : return "Subtract";
- case BlendOp::eReverseSubtract : return "ReverseSubtract";
- case BlendOp::eMin : return "Min";
- case BlendOp::eMax : return "Max";
- case BlendOp::eZeroEXT : return "ZeroEXT";
- case BlendOp::eSrcEXT : return "SrcEXT";
- case BlendOp::eDstEXT : return "DstEXT";
- case BlendOp::eSrcOverEXT : return "SrcOverEXT";
- case BlendOp::eDstOverEXT : return "DstOverEXT";
- case BlendOp::eSrcInEXT : return "SrcInEXT";
- case BlendOp::eDstInEXT : return "DstInEXT";
- case BlendOp::eSrcOutEXT : return "SrcOutEXT";
- case BlendOp::eDstOutEXT : return "DstOutEXT";
- case BlendOp::eSrcAtopEXT : return "SrcAtopEXT";
- case BlendOp::eDstAtopEXT : return "DstAtopEXT";
- case BlendOp::eXorEXT : return "XorEXT";
- case BlendOp::eMultiplyEXT : return "MultiplyEXT";
- case BlendOp::eScreenEXT : return "ScreenEXT";
- case BlendOp::eOverlayEXT : return "OverlayEXT";
- case BlendOp::eDarkenEXT : return "DarkenEXT";
- case BlendOp::eLightenEXT : return "LightenEXT";
- case BlendOp::eColordodgeEXT : return "ColordodgeEXT";
- case BlendOp::eColorburnEXT : return "ColorburnEXT";
- case BlendOp::eHardlightEXT : return "HardlightEXT";
- case BlendOp::eSoftlightEXT : return "SoftlightEXT";
- case BlendOp::eDifferenceEXT : return "DifferenceEXT";
- case BlendOp::eExclusionEXT : return "ExclusionEXT";
- case BlendOp::eInvertEXT : return "InvertEXT";
- case BlendOp::eInvertRgbEXT : return "InvertRgbEXT";
- case BlendOp::eLineardodgeEXT : return "LineardodgeEXT";
- case BlendOp::eLinearburnEXT : return "LinearburnEXT";
- case BlendOp::eVividlightEXT : return "VividlightEXT";
- case BlendOp::eLinearlightEXT : return "LinearlightEXT";
- case BlendOp::ePinlightEXT : return "PinlightEXT";
- case BlendOp::eHardmixEXT : return "HardmixEXT";
- case BlendOp::eHslHueEXT : return "HslHueEXT";
- case BlendOp::eHslSaturationEXT : return "HslSaturationEXT";
- case BlendOp::eHslColorEXT : return "HslColorEXT";
- case BlendOp::eHslLuminosityEXT : return "HslLuminosityEXT";
- case BlendOp::ePlusEXT : return "PlusEXT";
- case BlendOp::ePlusClampedEXT : return "PlusClampedEXT";
- case BlendOp::ePlusClampedAlphaEXT : return "PlusClampedAlphaEXT";
- case BlendOp::ePlusDarkerEXT : return "PlusDarkerEXT";
- case BlendOp::eMinusEXT : return "MinusEXT";
- case BlendOp::eMinusClampedEXT : return "MinusClampedEXT";
- case BlendOp::eContrastEXT : return "ContrastEXT";
- case BlendOp::eInvertOvgEXT : return "InvertOvgEXT";
- case BlendOp::eRedEXT : return "RedEXT";
- case BlendOp::eGreenEXT : return "GreenEXT";
- case BlendOp::eBlueEXT : return "BlueEXT";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkGetCalibratedTimestampsEXT( device, timestampCount, pTimestampInfos, pTimestamps, pMaxDeviation );
}
- }
- enum class BlendOverlapEXT
- {
- eUncorrelated = VK_BLEND_OVERLAP_UNCORRELATED_EXT,
- eDisjoint = VK_BLEND_OVERLAP_DISJOINT_EXT,
- eConjoint = VK_BLEND_OVERLAP_CONJOINT_EXT
- };
+ //=== VK_NV_mesh_shader ===
- VULKAN_HPP_INLINE std::string to_string( BlendOverlapEXT value )
- {
- switch ( value )
+ void vkCmdDrawMeshTasksNV( VkCommandBuffer commandBuffer,
+ uint32_t taskCount,
+ uint32_t firstTask ) const VULKAN_HPP_NOEXCEPT
{
- case BlendOverlapEXT::eUncorrelated : return "Uncorrelated";
- case BlendOverlapEXT::eDisjoint : return "Disjoint";
- case BlendOverlapEXT::eConjoint : return "Conjoint";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCmdDrawMeshTasksNV( commandBuffer, taskCount, firstTask );
}
- }
- enum class BorderColor
- {
- eFloatTransparentBlack = VK_BORDER_COLOR_FLOAT_TRANSPARENT_BLACK,
- eIntTransparentBlack = VK_BORDER_COLOR_INT_TRANSPARENT_BLACK,
- eFloatOpaqueBlack = VK_BORDER_COLOR_FLOAT_OPAQUE_BLACK,
- eIntOpaqueBlack = VK_BORDER_COLOR_INT_OPAQUE_BLACK,
- eFloatOpaqueWhite = VK_BORDER_COLOR_FLOAT_OPAQUE_WHITE,
- eIntOpaqueWhite = VK_BORDER_COLOR_INT_OPAQUE_WHITE,
- eFloatCustomEXT = VK_BORDER_COLOR_FLOAT_CUSTOM_EXT,
- eIntCustomEXT = VK_BORDER_COLOR_INT_CUSTOM_EXT
- };
-
- VULKAN_HPP_INLINE std::string to_string( BorderColor value )
- {
- switch ( value )
+ void vkCmdDrawMeshTasksIndirectNV( VkCommandBuffer commandBuffer,
+ VkBuffer buffer,
+ VkDeviceSize offset,
+ uint32_t drawCount,
+ uint32_t stride ) const VULKAN_HPP_NOEXCEPT
{
- case BorderColor::eFloatTransparentBlack : return "FloatTransparentBlack";
- case BorderColor::eIntTransparentBlack : return "IntTransparentBlack";
- case BorderColor::eFloatOpaqueBlack : return "FloatOpaqueBlack";
- case BorderColor::eIntOpaqueBlack : return "IntOpaqueBlack";
- case BorderColor::eFloatOpaqueWhite : return "FloatOpaqueWhite";
- case BorderColor::eIntOpaqueWhite : return "IntOpaqueWhite";
- case BorderColor::eFloatCustomEXT : return "FloatCustomEXT";
- case BorderColor::eIntCustomEXT : return "IntCustomEXT";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCmdDrawMeshTasksIndirectNV( commandBuffer, buffer, offset, drawCount, stride );
}
- }
-
- enum class BufferCreateFlagBits : VkBufferCreateFlags
- {
- eSparseBinding = VK_BUFFER_CREATE_SPARSE_BINDING_BIT,
- eSparseResidency = VK_BUFFER_CREATE_SPARSE_RESIDENCY_BIT,
- eSparseAliased = VK_BUFFER_CREATE_SPARSE_ALIASED_BIT,
- eProtected = VK_BUFFER_CREATE_PROTECTED_BIT,
- eDeviceAddressCaptureReplay = VK_BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT,
- eDeviceAddressCaptureReplayEXT = VK_BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_EXT,
- eDeviceAddressCaptureReplayKHR = VK_BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_KHR
- };
- VULKAN_HPP_INLINE std::string to_string( BufferCreateFlagBits value )
- {
- switch ( value )
+ void vkCmdDrawMeshTasksIndirectCountNV( VkCommandBuffer commandBuffer,
+ VkBuffer buffer,
+ VkDeviceSize offset,
+ VkBuffer countBuffer,
+ VkDeviceSize countBufferOffset,
+ uint32_t maxDrawCount,
+ uint32_t stride ) const VULKAN_HPP_NOEXCEPT
{
- case BufferCreateFlagBits::eSparseBinding : return "SparseBinding";
- case BufferCreateFlagBits::eSparseResidency : return "SparseResidency";
- case BufferCreateFlagBits::eSparseAliased : return "SparseAliased";
- case BufferCreateFlagBits::eProtected : return "Protected";
- case BufferCreateFlagBits::eDeviceAddressCaptureReplay : return "DeviceAddressCaptureReplay";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCmdDrawMeshTasksIndirectCountNV(
+ commandBuffer, buffer, offset, countBuffer, countBufferOffset, maxDrawCount, stride );
}
- }
-
- enum class BufferUsageFlagBits : VkBufferUsageFlags
- {
- eTransferSrc = VK_BUFFER_USAGE_TRANSFER_SRC_BIT,
- eTransferDst = VK_BUFFER_USAGE_TRANSFER_DST_BIT,
- eUniformTexelBuffer = VK_BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT,
- eStorageTexelBuffer = VK_BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT,
- eUniformBuffer = VK_BUFFER_USAGE_UNIFORM_BUFFER_BIT,
- eStorageBuffer = VK_BUFFER_USAGE_STORAGE_BUFFER_BIT,
- eIndexBuffer = VK_BUFFER_USAGE_INDEX_BUFFER_BIT,
- eVertexBuffer = VK_BUFFER_USAGE_VERTEX_BUFFER_BIT,
- eIndirectBuffer = VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT,
- eShaderDeviceAddress = VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT,
- eTransformFeedbackBufferEXT = VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_BUFFER_BIT_EXT,
- eTransformFeedbackCounterBufferEXT = VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_COUNTER_BUFFER_BIT_EXT,
- eConditionalRenderingEXT = VK_BUFFER_USAGE_CONDITIONAL_RENDERING_BIT_EXT,
- eAccelerationStructureBuildInputReadOnlyKHR = VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_BIT_KHR,
- eAccelerationStructureStorageKHR = VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_STORAGE_BIT_KHR,
- eShaderBindingTableKHR = VK_BUFFER_USAGE_SHADER_BINDING_TABLE_BIT_KHR,
- eRayTracingNV = VK_BUFFER_USAGE_RAY_TRACING_BIT_NV,
- eShaderDeviceAddressEXT = VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT_EXT,
- eShaderDeviceAddressKHR = VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT_KHR
- };
-
- VULKAN_HPP_INLINE std::string to_string( BufferUsageFlagBits value )
- {
- switch ( value )
- {
- case BufferUsageFlagBits::eTransferSrc : return "TransferSrc";
- case BufferUsageFlagBits::eTransferDst : return "TransferDst";
- case BufferUsageFlagBits::eUniformTexelBuffer : return "UniformTexelBuffer";
- case BufferUsageFlagBits::eStorageTexelBuffer : return "StorageTexelBuffer";
- case BufferUsageFlagBits::eUniformBuffer : return "UniformBuffer";
- case BufferUsageFlagBits::eStorageBuffer : return "StorageBuffer";
- case BufferUsageFlagBits::eIndexBuffer : return "IndexBuffer";
- case BufferUsageFlagBits::eVertexBuffer : return "VertexBuffer";
- case BufferUsageFlagBits::eIndirectBuffer : return "IndirectBuffer";
- case BufferUsageFlagBits::eShaderDeviceAddress : return "ShaderDeviceAddress";
- case BufferUsageFlagBits::eTransformFeedbackBufferEXT : return "TransformFeedbackBufferEXT";
- case BufferUsageFlagBits::eTransformFeedbackCounterBufferEXT : return "TransformFeedbackCounterBufferEXT";
- case BufferUsageFlagBits::eConditionalRenderingEXT : return "ConditionalRenderingEXT";
- case BufferUsageFlagBits::eAccelerationStructureBuildInputReadOnlyKHR : return "AccelerationStructureBuildInputReadOnlyKHR";
- case BufferUsageFlagBits::eAccelerationStructureStorageKHR : return "AccelerationStructureStorageKHR";
- case BufferUsageFlagBits::eShaderBindingTableKHR : return "ShaderBindingTableKHR";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
- }
- }
- enum class BuildAccelerationStructureFlagBitsKHR : VkBuildAccelerationStructureFlagsKHR
- {
- eAllowUpdate = VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_KHR,
- eAllowCompaction = VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR,
- ePreferFastTrace = VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_KHR,
- ePreferFastBuild = VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_KHR,
- eLowMemory = VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_KHR
- };
- using BuildAccelerationStructureFlagBitsNV = BuildAccelerationStructureFlagBitsKHR;
+ //=== VK_NV_scissor_exclusive ===
- VULKAN_HPP_INLINE std::string to_string( BuildAccelerationStructureFlagBitsKHR value )
- {
- switch ( value )
+ void vkCmdSetExclusiveScissorNV( VkCommandBuffer commandBuffer,
+ uint32_t firstExclusiveScissor,
+ uint32_t exclusiveScissorCount,
+ const VkRect2D * pExclusiveScissors ) const VULKAN_HPP_NOEXCEPT
{
- case BuildAccelerationStructureFlagBitsKHR::eAllowUpdate : return "AllowUpdate";
- case BuildAccelerationStructureFlagBitsKHR::eAllowCompaction : return "AllowCompaction";
- case BuildAccelerationStructureFlagBitsKHR::ePreferFastTrace : return "PreferFastTrace";
- case BuildAccelerationStructureFlagBitsKHR::ePreferFastBuild : return "PreferFastBuild";
- case BuildAccelerationStructureFlagBitsKHR::eLowMemory : return "LowMemory";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCmdSetExclusiveScissorNV(
+ commandBuffer, firstExclusiveScissor, exclusiveScissorCount, pExclusiveScissors );
}
- }
- enum class BuildAccelerationStructureModeKHR
- {
- eBuild = VK_BUILD_ACCELERATION_STRUCTURE_MODE_BUILD_KHR,
- eUpdate = VK_BUILD_ACCELERATION_STRUCTURE_MODE_UPDATE_KHR
- };
+ //=== VK_NV_device_diagnostic_checkpoints ===
- VULKAN_HPP_INLINE std::string to_string( BuildAccelerationStructureModeKHR value )
- {
- switch ( value )
+ void vkCmdSetCheckpointNV( VkCommandBuffer commandBuffer, const void * pCheckpointMarker ) const VULKAN_HPP_NOEXCEPT
{
- case BuildAccelerationStructureModeKHR::eBuild : return "Build";
- case BuildAccelerationStructureModeKHR::eUpdate : return "Update";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCmdSetCheckpointNV( commandBuffer, pCheckpointMarker );
}
- }
-
- enum class ChromaLocation
- {
- eCositedEven = VK_CHROMA_LOCATION_COSITED_EVEN,
- eMidpoint = VK_CHROMA_LOCATION_MIDPOINT
- };
- using ChromaLocationKHR = ChromaLocation;
- VULKAN_HPP_INLINE std::string to_string( ChromaLocation value )
- {
- switch ( value )
+ void vkGetQueueCheckpointDataNV( VkQueue queue,
+ uint32_t * pCheckpointDataCount,
+ VkCheckpointDataNV * pCheckpointData ) const VULKAN_HPP_NOEXCEPT
{
- case ChromaLocation::eCositedEven : return "CositedEven";
- case ChromaLocation::eMidpoint : return "Midpoint";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkGetQueueCheckpointDataNV( queue, pCheckpointDataCount, pCheckpointData );
}
- }
- enum class CoarseSampleOrderTypeNV
- {
- eDefault = VK_COARSE_SAMPLE_ORDER_TYPE_DEFAULT_NV,
- eCustom = VK_COARSE_SAMPLE_ORDER_TYPE_CUSTOM_NV,
- ePixelMajor = VK_COARSE_SAMPLE_ORDER_TYPE_PIXEL_MAJOR_NV,
- eSampleMajor = VK_COARSE_SAMPLE_ORDER_TYPE_SAMPLE_MAJOR_NV
- };
+ //=== VK_KHR_timeline_semaphore ===
- VULKAN_HPP_INLINE std::string to_string( CoarseSampleOrderTypeNV value )
- {
- switch ( value )
+ VkResult vkGetSemaphoreCounterValueKHR( VkDevice device,
+ VkSemaphore semaphore,
+ uint64_t * pValue ) const VULKAN_HPP_NOEXCEPT
{
- case CoarseSampleOrderTypeNV::eDefault : return "Default";
- case CoarseSampleOrderTypeNV::eCustom : return "Custom";
- case CoarseSampleOrderTypeNV::ePixelMajor : return "PixelMajor";
- case CoarseSampleOrderTypeNV::eSampleMajor : return "SampleMajor";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkGetSemaphoreCounterValueKHR( device, semaphore, pValue );
}
- }
- enum class ColorComponentFlagBits : VkColorComponentFlags
- {
- eR = VK_COLOR_COMPONENT_R_BIT,
- eG = VK_COLOR_COMPONENT_G_BIT,
- eB = VK_COLOR_COMPONENT_B_BIT,
- eA = VK_COLOR_COMPONENT_A_BIT
- };
-
- VULKAN_HPP_INLINE std::string to_string( ColorComponentFlagBits value )
- {
- switch ( value )
+ VkResult vkWaitSemaphoresKHR( VkDevice device,
+ const VkSemaphoreWaitInfo * pWaitInfo,
+ uint64_t timeout ) const VULKAN_HPP_NOEXCEPT
{
- case ColorComponentFlagBits::eR : return "R";
- case ColorComponentFlagBits::eG : return "G";
- case ColorComponentFlagBits::eB : return "B";
- case ColorComponentFlagBits::eA : return "A";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkWaitSemaphoresKHR( device, pWaitInfo, timeout );
}
- }
- enum class ColorSpaceKHR
- {
- eSrgbNonlinear = VK_COLOR_SPACE_SRGB_NONLINEAR_KHR,
- eDisplayP3NonlinearEXT = VK_COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT,
- eExtendedSrgbLinearEXT = VK_COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT,
- eDisplayP3LinearEXT = VK_COLOR_SPACE_DISPLAY_P3_LINEAR_EXT,
- eDciP3NonlinearEXT = VK_COLOR_SPACE_DCI_P3_NONLINEAR_EXT,
- eBt709LinearEXT = VK_COLOR_SPACE_BT709_LINEAR_EXT,
- eBt709NonlinearEXT = VK_COLOR_SPACE_BT709_NONLINEAR_EXT,
- eBt2020LinearEXT = VK_COLOR_SPACE_BT2020_LINEAR_EXT,
- eHdr10St2084EXT = VK_COLOR_SPACE_HDR10_ST2084_EXT,
- eDolbyvisionEXT = VK_COLOR_SPACE_DOLBYVISION_EXT,
- eHdr10HlgEXT = VK_COLOR_SPACE_HDR10_HLG_EXT,
- eAdobergbLinearEXT = VK_COLOR_SPACE_ADOBERGB_LINEAR_EXT,
- eAdobergbNonlinearEXT = VK_COLOR_SPACE_ADOBERGB_NONLINEAR_EXT,
- ePassThroughEXT = VK_COLOR_SPACE_PASS_THROUGH_EXT,
- eExtendedSrgbNonlinearEXT = VK_COLOR_SPACE_EXTENDED_SRGB_NONLINEAR_EXT,
- eDisplayNativeAMD = VK_COLOR_SPACE_DISPLAY_NATIVE_AMD,
- eVkColorspaceSrgbNonlinear = VK_COLORSPACE_SRGB_NONLINEAR_KHR,
- eDciP3LinearEXT = VK_COLOR_SPACE_DCI_P3_LINEAR_EXT
- };
-
- VULKAN_HPP_INLINE std::string to_string( ColorSpaceKHR value )
- {
- switch ( value )
- {
- case ColorSpaceKHR::eSrgbNonlinear : return "SrgbNonlinear";
- case ColorSpaceKHR::eDisplayP3NonlinearEXT : return "DisplayP3NonlinearEXT";
- case ColorSpaceKHR::eExtendedSrgbLinearEXT : return "ExtendedSrgbLinearEXT";
- case ColorSpaceKHR::eDisplayP3LinearEXT : return "DisplayP3LinearEXT";
- case ColorSpaceKHR::eDciP3NonlinearEXT : return "DciP3NonlinearEXT";
- case ColorSpaceKHR::eBt709LinearEXT : return "Bt709LinearEXT";
- case ColorSpaceKHR::eBt709NonlinearEXT : return "Bt709NonlinearEXT";
- case ColorSpaceKHR::eBt2020LinearEXT : return "Bt2020LinearEXT";
- case ColorSpaceKHR::eHdr10St2084EXT : return "Hdr10St2084EXT";
- case ColorSpaceKHR::eDolbyvisionEXT : return "DolbyvisionEXT";
- case ColorSpaceKHR::eHdr10HlgEXT : return "Hdr10HlgEXT";
- case ColorSpaceKHR::eAdobergbLinearEXT : return "AdobergbLinearEXT";
- case ColorSpaceKHR::eAdobergbNonlinearEXT : return "AdobergbNonlinearEXT";
- case ColorSpaceKHR::ePassThroughEXT : return "PassThroughEXT";
- case ColorSpaceKHR::eExtendedSrgbNonlinearEXT : return "ExtendedSrgbNonlinearEXT";
- case ColorSpaceKHR::eDisplayNativeAMD : return "DisplayNativeAMD";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
- }
- }
-
- enum class CommandBufferLevel
- {
- ePrimary = VK_COMMAND_BUFFER_LEVEL_PRIMARY,
- eSecondary = VK_COMMAND_BUFFER_LEVEL_SECONDARY
- };
-
- VULKAN_HPP_INLINE std::string to_string( CommandBufferLevel value )
- {
- switch ( value )
+ VkResult vkSignalSemaphoreKHR( VkDevice device,
+ const VkSemaphoreSignalInfo * pSignalInfo ) const VULKAN_HPP_NOEXCEPT
{
- case CommandBufferLevel::ePrimary : return "Primary";
- case CommandBufferLevel::eSecondary : return "Secondary";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkSignalSemaphoreKHR( device, pSignalInfo );
}
- }
- enum class CommandBufferResetFlagBits : VkCommandBufferResetFlags
- {
- eReleaseResources = VK_COMMAND_BUFFER_RESET_RELEASE_RESOURCES_BIT
- };
+ //=== VK_INTEL_performance_query ===
- VULKAN_HPP_INLINE std::string to_string( CommandBufferResetFlagBits value )
- {
- switch ( value )
+ VkResult vkInitializePerformanceApiINTEL(
+ VkDevice device, const VkInitializePerformanceApiInfoINTEL * pInitializeInfo ) const VULKAN_HPP_NOEXCEPT
{
- case CommandBufferResetFlagBits::eReleaseResources : return "ReleaseResources";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkInitializePerformanceApiINTEL( device, pInitializeInfo );
}
- }
-
- enum class CommandBufferUsageFlagBits : VkCommandBufferUsageFlags
- {
- eOneTimeSubmit = VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT,
- eRenderPassContinue = VK_COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT,
- eSimultaneousUse = VK_COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT
- };
- VULKAN_HPP_INLINE std::string to_string( CommandBufferUsageFlagBits value )
- {
- switch ( value )
+ void vkUninitializePerformanceApiINTEL( VkDevice device ) const VULKAN_HPP_NOEXCEPT
{
- case CommandBufferUsageFlagBits::eOneTimeSubmit : return "OneTimeSubmit";
- case CommandBufferUsageFlagBits::eRenderPassContinue : return "RenderPassContinue";
- case CommandBufferUsageFlagBits::eSimultaneousUse : return "SimultaneousUse";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkUninitializePerformanceApiINTEL( device );
}
- }
- enum class CommandPoolCreateFlagBits : VkCommandPoolCreateFlags
- {
- eTransient = VK_COMMAND_POOL_CREATE_TRANSIENT_BIT,
- eResetCommandBuffer = VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT,
- eProtected = VK_COMMAND_POOL_CREATE_PROTECTED_BIT
- };
-
- VULKAN_HPP_INLINE std::string to_string( CommandPoolCreateFlagBits value )
- {
- switch ( value )
+ VkResult
+ vkCmdSetPerformanceMarkerINTEL( VkCommandBuffer commandBuffer,
+ const VkPerformanceMarkerInfoINTEL * pMarkerInfo ) const VULKAN_HPP_NOEXCEPT
{
- case CommandPoolCreateFlagBits::eTransient : return "Transient";
- case CommandPoolCreateFlagBits::eResetCommandBuffer : return "ResetCommandBuffer";
- case CommandPoolCreateFlagBits::eProtected : return "Protected";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCmdSetPerformanceMarkerINTEL( commandBuffer, pMarkerInfo );
}
- }
-
- enum class CommandPoolResetFlagBits : VkCommandPoolResetFlags
- {
- eReleaseResources = VK_COMMAND_POOL_RESET_RELEASE_RESOURCES_BIT
- };
- VULKAN_HPP_INLINE std::string to_string( CommandPoolResetFlagBits value )
- {
- switch ( value )
+ VkResult vkCmdSetPerformanceStreamMarkerINTEL(
+ VkCommandBuffer commandBuffer, const VkPerformanceStreamMarkerInfoINTEL * pMarkerInfo ) const VULKAN_HPP_NOEXCEPT
{
- case CommandPoolResetFlagBits::eReleaseResources : return "ReleaseResources";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCmdSetPerformanceStreamMarkerINTEL( commandBuffer, pMarkerInfo );
}
- }
- enum class CompareOp
- {
- eNever = VK_COMPARE_OP_NEVER,
- eLess = VK_COMPARE_OP_LESS,
- eEqual = VK_COMPARE_OP_EQUAL,
- eLessOrEqual = VK_COMPARE_OP_LESS_OR_EQUAL,
- eGreater = VK_COMPARE_OP_GREATER,
- eNotEqual = VK_COMPARE_OP_NOT_EQUAL,
- eGreaterOrEqual = VK_COMPARE_OP_GREATER_OR_EQUAL,
- eAlways = VK_COMPARE_OP_ALWAYS
- };
-
- VULKAN_HPP_INLINE std::string to_string( CompareOp value )
- {
- switch ( value )
+ VkResult
+ vkCmdSetPerformanceOverrideINTEL( VkCommandBuffer commandBuffer,
+ const VkPerformanceOverrideInfoINTEL * pOverrideInfo ) const VULKAN_HPP_NOEXCEPT
{
- case CompareOp::eNever : return "Never";
- case CompareOp::eLess : return "Less";
- case CompareOp::eEqual : return "Equal";
- case CompareOp::eLessOrEqual : return "LessOrEqual";
- case CompareOp::eGreater : return "Greater";
- case CompareOp::eNotEqual : return "NotEqual";
- case CompareOp::eGreaterOrEqual : return "GreaterOrEqual";
- case CompareOp::eAlways : return "Always";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCmdSetPerformanceOverrideINTEL( commandBuffer, pOverrideInfo );
}
- }
- enum class ComponentSwizzle
- {
- eIdentity = VK_COMPONENT_SWIZZLE_IDENTITY,
- eZero = VK_COMPONENT_SWIZZLE_ZERO,
- eOne = VK_COMPONENT_SWIZZLE_ONE,
- eR = VK_COMPONENT_SWIZZLE_R,
- eG = VK_COMPONENT_SWIZZLE_G,
- eB = VK_COMPONENT_SWIZZLE_B,
- eA = VK_COMPONENT_SWIZZLE_A
- };
-
- VULKAN_HPP_INLINE std::string to_string( ComponentSwizzle value )
- {
- switch ( value )
+ VkResult vkAcquirePerformanceConfigurationINTEL( VkDevice device,
+ const VkPerformanceConfigurationAcquireInfoINTEL * pAcquireInfo,
+ VkPerformanceConfigurationINTEL * pConfiguration ) const
+ VULKAN_HPP_NOEXCEPT
{
- case ComponentSwizzle::eIdentity : return "Identity";
- case ComponentSwizzle::eZero : return "Zero";
- case ComponentSwizzle::eOne : return "One";
- case ComponentSwizzle::eR : return "R";
- case ComponentSwizzle::eG : return "G";
- case ComponentSwizzle::eB : return "B";
- case ComponentSwizzle::eA : return "A";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
- }
- }
-
- enum class ComponentTypeNV
- {
- eFloat16 = VK_COMPONENT_TYPE_FLOAT16_NV,
- eFloat32 = VK_COMPONENT_TYPE_FLOAT32_NV,
- eFloat64 = VK_COMPONENT_TYPE_FLOAT64_NV,
- eSint8 = VK_COMPONENT_TYPE_SINT8_NV,
- eSint16 = VK_COMPONENT_TYPE_SINT16_NV,
- eSint32 = VK_COMPONENT_TYPE_SINT32_NV,
- eSint64 = VK_COMPONENT_TYPE_SINT64_NV,
- eUint8 = VK_COMPONENT_TYPE_UINT8_NV,
- eUint16 = VK_COMPONENT_TYPE_UINT16_NV,
- eUint32 = VK_COMPONENT_TYPE_UINT32_NV,
- eUint64 = VK_COMPONENT_TYPE_UINT64_NV
- };
-
- VULKAN_HPP_INLINE std::string to_string( ComponentTypeNV value )
- {
- switch ( value )
- {
- case ComponentTypeNV::eFloat16 : return "Float16";
- case ComponentTypeNV::eFloat32 : return "Float32";
- case ComponentTypeNV::eFloat64 : return "Float64";
- case ComponentTypeNV::eSint8 : return "Sint8";
- case ComponentTypeNV::eSint16 : return "Sint16";
- case ComponentTypeNV::eSint32 : return "Sint32";
- case ComponentTypeNV::eSint64 : return "Sint64";
- case ComponentTypeNV::eUint8 : return "Uint8";
- case ComponentTypeNV::eUint16 : return "Uint16";
- case ComponentTypeNV::eUint32 : return "Uint32";
- case ComponentTypeNV::eUint64 : return "Uint64";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkAcquirePerformanceConfigurationINTEL( device, pAcquireInfo, pConfiguration );
}
- }
- enum class CompositeAlphaFlagBitsKHR : VkCompositeAlphaFlagsKHR
- {
- eOpaque = VK_COMPOSITE_ALPHA_OPAQUE_BIT_KHR,
- ePreMultiplied = VK_COMPOSITE_ALPHA_PRE_MULTIPLIED_BIT_KHR,
- ePostMultiplied = VK_COMPOSITE_ALPHA_POST_MULTIPLIED_BIT_KHR,
- eInherit = VK_COMPOSITE_ALPHA_INHERIT_BIT_KHR
- };
-
- VULKAN_HPP_INLINE std::string to_string( CompositeAlphaFlagBitsKHR value )
- {
- switch ( value )
+ VkResult
+ vkReleasePerformanceConfigurationINTEL( VkDevice device,
+ VkPerformanceConfigurationINTEL configuration ) const VULKAN_HPP_NOEXCEPT
{
- case CompositeAlphaFlagBitsKHR::eOpaque : return "Opaque";
- case CompositeAlphaFlagBitsKHR::ePreMultiplied : return "PreMultiplied";
- case CompositeAlphaFlagBitsKHR::ePostMultiplied : return "PostMultiplied";
- case CompositeAlphaFlagBitsKHR::eInherit : return "Inherit";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkReleasePerformanceConfigurationINTEL( device, configuration );
}
- }
-
- enum class ConditionalRenderingFlagBitsEXT : VkConditionalRenderingFlagsEXT
- {
- eInverted = VK_CONDITIONAL_RENDERING_INVERTED_BIT_EXT
- };
- VULKAN_HPP_INLINE std::string to_string( ConditionalRenderingFlagBitsEXT value )
- {
- switch ( value )
+ VkResult
+ vkQueueSetPerformanceConfigurationINTEL( VkQueue queue,
+ VkPerformanceConfigurationINTEL configuration ) const VULKAN_HPP_NOEXCEPT
{
- case ConditionalRenderingFlagBitsEXT::eInverted : return "Inverted";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkQueueSetPerformanceConfigurationINTEL( queue, configuration );
}
- }
- enum class ConservativeRasterizationModeEXT
- {
- eDisabled = VK_CONSERVATIVE_RASTERIZATION_MODE_DISABLED_EXT,
- eOverestimate = VK_CONSERVATIVE_RASTERIZATION_MODE_OVERESTIMATE_EXT,
- eUnderestimate = VK_CONSERVATIVE_RASTERIZATION_MODE_UNDERESTIMATE_EXT
- };
-
- VULKAN_HPP_INLINE std::string to_string( ConservativeRasterizationModeEXT value )
- {
- switch ( value )
+ VkResult vkGetPerformanceParameterINTEL( VkDevice device,
+ VkPerformanceParameterTypeINTEL parameter,
+ VkPerformanceValueINTEL * pValue ) const VULKAN_HPP_NOEXCEPT
{
- case ConservativeRasterizationModeEXT::eDisabled : return "Disabled";
- case ConservativeRasterizationModeEXT::eOverestimate : return "Overestimate";
- case ConservativeRasterizationModeEXT::eUnderestimate : return "Underestimate";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkGetPerformanceParameterINTEL( device, parameter, pValue );
}
- }
- enum class CopyAccelerationStructureModeKHR
- {
- eClone = VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_KHR,
- eCompact = VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_KHR,
- eSerialize = VK_COPY_ACCELERATION_STRUCTURE_MODE_SERIALIZE_KHR,
- eDeserialize = VK_COPY_ACCELERATION_STRUCTURE_MODE_DESERIALIZE_KHR
- };
- using CopyAccelerationStructureModeNV = CopyAccelerationStructureModeKHR;
+ //=== VK_AMD_display_native_hdr ===
- VULKAN_HPP_INLINE std::string to_string( CopyAccelerationStructureModeKHR value )
- {
- switch ( value )
+ void vkSetLocalDimmingAMD( VkDevice device,
+ VkSwapchainKHR swapChain,
+ VkBool32 localDimmingEnable ) const VULKAN_HPP_NOEXCEPT
{
- case CopyAccelerationStructureModeKHR::eClone : return "Clone";
- case CopyAccelerationStructureModeKHR::eCompact : return "Compact";
- case CopyAccelerationStructureModeKHR::eSerialize : return "Serialize";
- case CopyAccelerationStructureModeKHR::eDeserialize : return "Deserialize";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkSetLocalDimmingAMD( device, swapChain, localDimmingEnable );
}
- }
- enum class CoverageModulationModeNV
- {
- eNone = VK_COVERAGE_MODULATION_MODE_NONE_NV,
- eRgb = VK_COVERAGE_MODULATION_MODE_RGB_NV,
- eAlpha = VK_COVERAGE_MODULATION_MODE_ALPHA_NV,
- eRgba = VK_COVERAGE_MODULATION_MODE_RGBA_NV
- };
+# if defined( VK_USE_PLATFORM_FUCHSIA )
+ //=== VK_FUCHSIA_imagepipe_surface ===
- VULKAN_HPP_INLINE std::string to_string( CoverageModulationModeNV value )
- {
- switch ( value )
+ VkResult vkCreateImagePipeSurfaceFUCHSIA( VkInstance instance,
+ const VkImagePipeSurfaceCreateInfoFUCHSIA * pCreateInfo,
+ const VkAllocationCallbacks * pAllocator,
+ VkSurfaceKHR * pSurface ) const VULKAN_HPP_NOEXCEPT
{
- case CoverageModulationModeNV::eNone : return "None";
- case CoverageModulationModeNV::eRgb : return "Rgb";
- case CoverageModulationModeNV::eAlpha : return "Alpha";
- case CoverageModulationModeNV::eRgba : return "Rgba";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCreateImagePipeSurfaceFUCHSIA( instance, pCreateInfo, pAllocator, pSurface );
}
- }
+# endif /*VK_USE_PLATFORM_FUCHSIA*/
- enum class CoverageReductionModeNV
- {
- eMerge = VK_COVERAGE_REDUCTION_MODE_MERGE_NV,
- eTruncate = VK_COVERAGE_REDUCTION_MODE_TRUNCATE_NV
- };
+# if defined( VK_USE_PLATFORM_METAL_EXT )
+ //=== VK_EXT_metal_surface ===
- VULKAN_HPP_INLINE std::string to_string( CoverageReductionModeNV value )
- {
- switch ( value )
+ VkResult vkCreateMetalSurfaceEXT( VkInstance instance,
+ const VkMetalSurfaceCreateInfoEXT * pCreateInfo,
+ const VkAllocationCallbacks * pAllocator,
+ VkSurfaceKHR * pSurface ) const VULKAN_HPP_NOEXCEPT
{
- case CoverageReductionModeNV::eMerge : return "Merge";
- case CoverageReductionModeNV::eTruncate : return "Truncate";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCreateMetalSurfaceEXT( instance, pCreateInfo, pAllocator, pSurface );
}
- }
+# endif /*VK_USE_PLATFORM_METAL_EXT*/
- enum class CullModeFlagBits : VkCullModeFlags
- {
- eNone = VK_CULL_MODE_NONE,
- eFront = VK_CULL_MODE_FRONT_BIT,
- eBack = VK_CULL_MODE_BACK_BIT,
- eFrontAndBack = VK_CULL_MODE_FRONT_AND_BACK
- };
+ //=== VK_KHR_fragment_shading_rate ===
- VULKAN_HPP_INLINE std::string to_string( CullModeFlagBits value )
- {
- switch ( value )
+ VkResult vkGetPhysicalDeviceFragmentShadingRatesKHR(
+ VkPhysicalDevice physicalDevice,
+ uint32_t * pFragmentShadingRateCount,
+ VkPhysicalDeviceFragmentShadingRateKHR * pFragmentShadingRates ) const VULKAN_HPP_NOEXCEPT
{
- case CullModeFlagBits::eNone : return "None";
- case CullModeFlagBits::eFront : return "Front";
- case CullModeFlagBits::eBack : return "Back";
- case CullModeFlagBits::eFrontAndBack : return "FrontAndBack";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkGetPhysicalDeviceFragmentShadingRatesKHR(
+ physicalDevice, pFragmentShadingRateCount, pFragmentShadingRates );
}
- }
-
- enum class DebugReportFlagBitsEXT : VkDebugReportFlagsEXT
- {
- eInformation = VK_DEBUG_REPORT_INFORMATION_BIT_EXT,
- eWarning = VK_DEBUG_REPORT_WARNING_BIT_EXT,
- ePerformanceWarning = VK_DEBUG_REPORT_PERFORMANCE_WARNING_BIT_EXT,
- eError = VK_DEBUG_REPORT_ERROR_BIT_EXT,
- eDebug = VK_DEBUG_REPORT_DEBUG_BIT_EXT
- };
- VULKAN_HPP_INLINE std::string to_string( DebugReportFlagBitsEXT value )
- {
- switch ( value )
+ void vkCmdSetFragmentShadingRateKHR( VkCommandBuffer commandBuffer,
+ const VkExtent2D * pFragmentSize,
+ const VkFragmentShadingRateCombinerOpKHR combinerOps[2] ) const
+ VULKAN_HPP_NOEXCEPT
{
- case DebugReportFlagBitsEXT::eInformation : return "Information";
- case DebugReportFlagBitsEXT::eWarning : return "Warning";
- case DebugReportFlagBitsEXT::ePerformanceWarning : return "PerformanceWarning";
- case DebugReportFlagBitsEXT::eError : return "Error";
- case DebugReportFlagBitsEXT::eDebug : return "Debug";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCmdSetFragmentShadingRateKHR( commandBuffer, pFragmentSize, combinerOps );
}
- }
- enum class DebugReportObjectTypeEXT
- {
- eUnknown = VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT,
- eInstance = VK_DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT,
- ePhysicalDevice = VK_DEBUG_REPORT_OBJECT_TYPE_PHYSICAL_DEVICE_EXT,
- eDevice = VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_EXT,
- eQueue = VK_DEBUG_REPORT_OBJECT_TYPE_QUEUE_EXT,
- eSemaphore = VK_DEBUG_REPORT_OBJECT_TYPE_SEMAPHORE_EXT,
- eCommandBuffer = VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT,
- eFence = VK_DEBUG_REPORT_OBJECT_TYPE_FENCE_EXT,
- eDeviceMemory = VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_MEMORY_EXT,
- eBuffer = VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_EXT,
- eImage = VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_EXT,
- eEvent = VK_DEBUG_REPORT_OBJECT_TYPE_EVENT_EXT,
- eQueryPool = VK_DEBUG_REPORT_OBJECT_TYPE_QUERY_POOL_EXT,
- eBufferView = VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_VIEW_EXT,
- eImageView = VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_VIEW_EXT,
- eShaderModule = VK_DEBUG_REPORT_OBJECT_TYPE_SHADER_MODULE_EXT,
- ePipelineCache = VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_CACHE_EXT,
- ePipelineLayout = VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_LAYOUT_EXT,
- eRenderPass = VK_DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT,
- ePipeline = VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT,
- eDescriptorSetLayout = VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT_EXT,
- eSampler = VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_EXT,
- eDescriptorPool = VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_POOL_EXT,
- eDescriptorSet = VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_EXT,
- eFramebuffer = VK_DEBUG_REPORT_OBJECT_TYPE_FRAMEBUFFER_EXT,
- eCommandPool = VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_POOL_EXT,
- eSurfaceKHR = VK_DEBUG_REPORT_OBJECT_TYPE_SURFACE_KHR_EXT,
- eSwapchainKHR = VK_DEBUG_REPORT_OBJECT_TYPE_SWAPCHAIN_KHR_EXT,
- eDebugReportCallbackEXT = VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT_EXT,
- eDisplayKHR = VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_KHR_EXT,
- eDisplayModeKHR = VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_MODE_KHR_EXT,
- eValidationCacheEXT = VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT,
- eSamplerYcbcrConversion = VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_EXT,
- eDescriptorUpdateTemplate = VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_EXT,
- eAccelerationStructureKHR = VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR_EXT,
- eAccelerationStructureNV = VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV_EXT,
- eDebugReport = VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_EXT,
- eDescriptorUpdateTemplateKHR = VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR_EXT,
- eSamplerYcbcrConversionKHR = VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_KHR_EXT,
- eValidationCache = VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT
- };
-
- VULKAN_HPP_INLINE std::string to_string( DebugReportObjectTypeEXT value )
- {
- switch ( value )
- {
- case DebugReportObjectTypeEXT::eUnknown : return "Unknown";
- case DebugReportObjectTypeEXT::eInstance : return "Instance";
- case DebugReportObjectTypeEXT::ePhysicalDevice : return "PhysicalDevice";
- case DebugReportObjectTypeEXT::eDevice : return "Device";
- case DebugReportObjectTypeEXT::eQueue : return "Queue";
- case DebugReportObjectTypeEXT::eSemaphore : return "Semaphore";
- case DebugReportObjectTypeEXT::eCommandBuffer : return "CommandBuffer";
- case DebugReportObjectTypeEXT::eFence : return "Fence";
- case DebugReportObjectTypeEXT::eDeviceMemory : return "DeviceMemory";
- case DebugReportObjectTypeEXT::eBuffer : return "Buffer";
- case DebugReportObjectTypeEXT::eImage : return "Image";
- case DebugReportObjectTypeEXT::eEvent : return "Event";
- case DebugReportObjectTypeEXT::eQueryPool : return "QueryPool";
- case DebugReportObjectTypeEXT::eBufferView : return "BufferView";
- case DebugReportObjectTypeEXT::eImageView : return "ImageView";
- case DebugReportObjectTypeEXT::eShaderModule : return "ShaderModule";
- case DebugReportObjectTypeEXT::ePipelineCache : return "PipelineCache";
- case DebugReportObjectTypeEXT::ePipelineLayout : return "PipelineLayout";
- case DebugReportObjectTypeEXT::eRenderPass : return "RenderPass";
- case DebugReportObjectTypeEXT::ePipeline : return "Pipeline";
- case DebugReportObjectTypeEXT::eDescriptorSetLayout : return "DescriptorSetLayout";
- case DebugReportObjectTypeEXT::eSampler : return "Sampler";
- case DebugReportObjectTypeEXT::eDescriptorPool : return "DescriptorPool";
- case DebugReportObjectTypeEXT::eDescriptorSet : return "DescriptorSet";
- case DebugReportObjectTypeEXT::eFramebuffer : return "Framebuffer";
- case DebugReportObjectTypeEXT::eCommandPool : return "CommandPool";
- case DebugReportObjectTypeEXT::eSurfaceKHR : return "SurfaceKHR";
- case DebugReportObjectTypeEXT::eSwapchainKHR : return "SwapchainKHR";
- case DebugReportObjectTypeEXT::eDebugReportCallbackEXT : return "DebugReportCallbackEXT";
- case DebugReportObjectTypeEXT::eDisplayKHR : return "DisplayKHR";
- case DebugReportObjectTypeEXT::eDisplayModeKHR : return "DisplayModeKHR";
- case DebugReportObjectTypeEXT::eValidationCacheEXT : return "ValidationCacheEXT";
- case DebugReportObjectTypeEXT::eSamplerYcbcrConversion : return "SamplerYcbcrConversion";
- case DebugReportObjectTypeEXT::eDescriptorUpdateTemplate : return "DescriptorUpdateTemplate";
- case DebugReportObjectTypeEXT::eAccelerationStructureKHR : return "AccelerationStructureKHR";
- case DebugReportObjectTypeEXT::eAccelerationStructureNV : return "AccelerationStructureNV";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
- }
- }
+ //=== VK_EXT_buffer_device_address ===
- enum class DebugUtilsMessageSeverityFlagBitsEXT : VkDebugUtilsMessageSeverityFlagsEXT
- {
- eVerbose = VK_DEBUG_UTILS_MESSAGE_SEVERITY_VERBOSE_BIT_EXT,
- eInfo = VK_DEBUG_UTILS_MESSAGE_SEVERITY_INFO_BIT_EXT,
- eWarning = VK_DEBUG_UTILS_MESSAGE_SEVERITY_WARNING_BIT_EXT,
- eError = VK_DEBUG_UTILS_MESSAGE_SEVERITY_ERROR_BIT_EXT
- };
-
- VULKAN_HPP_INLINE std::string to_string( DebugUtilsMessageSeverityFlagBitsEXT value )
- {
- switch ( value )
+ VkDeviceAddress vkGetBufferDeviceAddressEXT( VkDevice device,
+ const VkBufferDeviceAddressInfo * pInfo ) const VULKAN_HPP_NOEXCEPT
{
- case DebugUtilsMessageSeverityFlagBitsEXT::eVerbose : return "Verbose";
- case DebugUtilsMessageSeverityFlagBitsEXT::eInfo : return "Info";
- case DebugUtilsMessageSeverityFlagBitsEXT::eWarning : return "Warning";
- case DebugUtilsMessageSeverityFlagBitsEXT::eError : return "Error";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkGetBufferDeviceAddressEXT( device, pInfo );
}
- }
- enum class DebugUtilsMessageTypeFlagBitsEXT : VkDebugUtilsMessageTypeFlagsEXT
- {
- eGeneral = VK_DEBUG_UTILS_MESSAGE_TYPE_GENERAL_BIT_EXT,
- eValidation = VK_DEBUG_UTILS_MESSAGE_TYPE_VALIDATION_BIT_EXT,
- ePerformance = VK_DEBUG_UTILS_MESSAGE_TYPE_PERFORMANCE_BIT_EXT
- };
+ //=== VK_EXT_tooling_info ===
- VULKAN_HPP_INLINE std::string to_string( DebugUtilsMessageTypeFlagBitsEXT value )
- {
- switch ( value )
+ VkResult vkGetPhysicalDeviceToolPropertiesEXT( VkPhysicalDevice physicalDevice,
+ uint32_t * pToolCount,
+ VkPhysicalDeviceToolPropertiesEXT * pToolProperties ) const
+ VULKAN_HPP_NOEXCEPT
{
- case DebugUtilsMessageTypeFlagBitsEXT::eGeneral : return "General";
- case DebugUtilsMessageTypeFlagBitsEXT::eValidation : return "Validation";
- case DebugUtilsMessageTypeFlagBitsEXT::ePerformance : return "Performance";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkGetPhysicalDeviceToolPropertiesEXT( physicalDevice, pToolCount, pToolProperties );
}
- }
- enum class DependencyFlagBits : VkDependencyFlags
- {
- eByRegion = VK_DEPENDENCY_BY_REGION_BIT,
- eDeviceGroup = VK_DEPENDENCY_DEVICE_GROUP_BIT,
- eViewLocal = VK_DEPENDENCY_VIEW_LOCAL_BIT,
- eDeviceGroupKHR = VK_DEPENDENCY_DEVICE_GROUP_BIT_KHR,
- eViewLocalKHR = VK_DEPENDENCY_VIEW_LOCAL_BIT_KHR
- };
+ //=== VK_NV_cooperative_matrix ===
- VULKAN_HPP_INLINE std::string to_string( DependencyFlagBits value )
- {
- switch ( value )
+ VkResult vkGetPhysicalDeviceCooperativeMatrixPropertiesNV( VkPhysicalDevice physicalDevice,
+ uint32_t * pPropertyCount,
+ VkCooperativeMatrixPropertiesNV * pProperties ) const
+ VULKAN_HPP_NOEXCEPT
{
- case DependencyFlagBits::eByRegion : return "ByRegion";
- case DependencyFlagBits::eDeviceGroup : return "DeviceGroup";
- case DependencyFlagBits::eViewLocal : return "ViewLocal";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkGetPhysicalDeviceCooperativeMatrixPropertiesNV( physicalDevice, pPropertyCount, pProperties );
}
- }
- enum class DescriptorBindingFlagBits : VkDescriptorBindingFlags
- {
- eUpdateAfterBind = VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT,
- eUpdateUnusedWhilePending = VK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT,
- ePartiallyBound = VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT,
- eVariableDescriptorCount = VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT
- };
- using DescriptorBindingFlagBitsEXT = DescriptorBindingFlagBits;
+ //=== VK_NV_coverage_reduction_mode ===
- VULKAN_HPP_INLINE std::string to_string( DescriptorBindingFlagBits value )
- {
- switch ( value )
+ VkResult vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV(
+ VkPhysicalDevice physicalDevice,
+ uint32_t * pCombinationCount,
+ VkFramebufferMixedSamplesCombinationNV * pCombinations ) const VULKAN_HPP_NOEXCEPT
{
- case DescriptorBindingFlagBits::eUpdateAfterBind : return "UpdateAfterBind";
- case DescriptorBindingFlagBits::eUpdateUnusedWhilePending : return "UpdateUnusedWhilePending";
- case DescriptorBindingFlagBits::ePartiallyBound : return "PartiallyBound";
- case DescriptorBindingFlagBits::eVariableDescriptorCount : return "VariableDescriptorCount";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV(
+ physicalDevice, pCombinationCount, pCombinations );
}
- }
- enum class DescriptorPoolCreateFlagBits : VkDescriptorPoolCreateFlags
- {
- eFreeDescriptorSet = VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT,
- eUpdateAfterBind = VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT,
- eUpdateAfterBindEXT = VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT_EXT
- };
+# if defined( VK_USE_PLATFORM_WIN32_KHR )
+ //=== VK_EXT_full_screen_exclusive ===
- VULKAN_HPP_INLINE std::string to_string( DescriptorPoolCreateFlagBits value )
- {
- switch ( value )
+ VkResult vkGetPhysicalDeviceSurfacePresentModes2EXT( VkPhysicalDevice physicalDevice,
+ const VkPhysicalDeviceSurfaceInfo2KHR * pSurfaceInfo,
+ uint32_t * pPresentModeCount,
+ VkPresentModeKHR * pPresentModes ) const VULKAN_HPP_NOEXCEPT
{
- case DescriptorPoolCreateFlagBits::eFreeDescriptorSet : return "FreeDescriptorSet";
- case DescriptorPoolCreateFlagBits::eUpdateAfterBind : return "UpdateAfterBind";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkGetPhysicalDeviceSurfacePresentModes2EXT(
+ physicalDevice, pSurfaceInfo, pPresentModeCount, pPresentModes );
}
- }
-
- enum class DescriptorSetLayoutCreateFlagBits : VkDescriptorSetLayoutCreateFlags
- {
- eUpdateAfterBindPool = VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT,
- ePushDescriptorKHR = VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR,
- eUpdateAfterBindPoolEXT = VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT
- };
- VULKAN_HPP_INLINE std::string to_string( DescriptorSetLayoutCreateFlagBits value )
- {
- switch ( value )
+ VkResult vkAcquireFullScreenExclusiveModeEXT( VkDevice device, VkSwapchainKHR swapchain ) const VULKAN_HPP_NOEXCEPT
{
- case DescriptorSetLayoutCreateFlagBits::eUpdateAfterBindPool : return "UpdateAfterBindPool";
- case DescriptorSetLayoutCreateFlagBits::ePushDescriptorKHR : return "PushDescriptorKHR";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
- }
- }
-
- enum class DescriptorType
- {
- eSampler = VK_DESCRIPTOR_TYPE_SAMPLER,
- eCombinedImageSampler = VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER,
- eSampledImage = VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE,
- eStorageImage = VK_DESCRIPTOR_TYPE_STORAGE_IMAGE,
- eUniformTexelBuffer = VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER,
- eStorageTexelBuffer = VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER,
- eUniformBuffer = VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER,
- eStorageBuffer = VK_DESCRIPTOR_TYPE_STORAGE_BUFFER,
- eUniformBufferDynamic = VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC,
- eStorageBufferDynamic = VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC,
- eInputAttachment = VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT,
- eInlineUniformBlockEXT = VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT,
- eAccelerationStructureKHR = VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR,
- eAccelerationStructureNV = VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NV
- };
-
- VULKAN_HPP_INLINE std::string to_string( DescriptorType value )
- {
- switch ( value )
- {
- case DescriptorType::eSampler : return "Sampler";
- case DescriptorType::eCombinedImageSampler : return "CombinedImageSampler";
- case DescriptorType::eSampledImage : return "SampledImage";
- case DescriptorType::eStorageImage : return "StorageImage";
- case DescriptorType::eUniformTexelBuffer : return "UniformTexelBuffer";
- case DescriptorType::eStorageTexelBuffer : return "StorageTexelBuffer";
- case DescriptorType::eUniformBuffer : return "UniformBuffer";
- case DescriptorType::eStorageBuffer : return "StorageBuffer";
- case DescriptorType::eUniformBufferDynamic : return "UniformBufferDynamic";
- case DescriptorType::eStorageBufferDynamic : return "StorageBufferDynamic";
- case DescriptorType::eInputAttachment : return "InputAttachment";
- case DescriptorType::eInlineUniformBlockEXT : return "InlineUniformBlockEXT";
- case DescriptorType::eAccelerationStructureKHR : return "AccelerationStructureKHR";
- case DescriptorType::eAccelerationStructureNV : return "AccelerationStructureNV";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkAcquireFullScreenExclusiveModeEXT( device, swapchain );
}
- }
-
- enum class DescriptorUpdateTemplateType
- {
- eDescriptorSet = VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET,
- ePushDescriptorsKHR = VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR
- };
- using DescriptorUpdateTemplateTypeKHR = DescriptorUpdateTemplateType;
- VULKAN_HPP_INLINE std::string to_string( DescriptorUpdateTemplateType value )
- {
- switch ( value )
+ VkResult vkReleaseFullScreenExclusiveModeEXT( VkDevice device, VkSwapchainKHR swapchain ) const VULKAN_HPP_NOEXCEPT
{
- case DescriptorUpdateTemplateType::eDescriptorSet : return "DescriptorSet";
- case DescriptorUpdateTemplateType::ePushDescriptorsKHR : return "PushDescriptorsKHR";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkReleaseFullScreenExclusiveModeEXT( device, swapchain );
}
- }
-
- enum class DeviceCreateFlagBits
- {};
- VULKAN_HPP_INLINE std::string to_string( DeviceCreateFlagBits )
- {
- return "(void)";
- }
-
- enum class DeviceDiagnosticsConfigFlagBitsNV : VkDeviceDiagnosticsConfigFlagsNV
- {
- eEnableShaderDebugInfo = VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_SHADER_DEBUG_INFO_BIT_NV,
- eEnableResourceTracking = VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_RESOURCE_TRACKING_BIT_NV,
- eEnableAutomaticCheckpoints = VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_AUTOMATIC_CHECKPOINTS_BIT_NV
- };
-
- VULKAN_HPP_INLINE std::string to_string( DeviceDiagnosticsConfigFlagBitsNV value )
- {
- switch ( value )
+ VkResult
+ vkGetDeviceGroupSurfacePresentModes2EXT( VkDevice device,
+ const VkPhysicalDeviceSurfaceInfo2KHR * pSurfaceInfo,
+ VkDeviceGroupPresentModeFlagsKHR * pModes ) const VULKAN_HPP_NOEXCEPT
{
- case DeviceDiagnosticsConfigFlagBitsNV::eEnableShaderDebugInfo : return "EnableShaderDebugInfo";
- case DeviceDiagnosticsConfigFlagBitsNV::eEnableResourceTracking : return "EnableResourceTracking";
- case DeviceDiagnosticsConfigFlagBitsNV::eEnableAutomaticCheckpoints : return "EnableAutomaticCheckpoints";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkGetDeviceGroupSurfacePresentModes2EXT( device, pSurfaceInfo, pModes );
}
- }
+# endif /*VK_USE_PLATFORM_WIN32_KHR*/
- enum class DeviceEventTypeEXT
- {
- eDisplayHotplug = VK_DEVICE_EVENT_TYPE_DISPLAY_HOTPLUG_EXT
- };
+ //=== VK_EXT_headless_surface ===
- VULKAN_HPP_INLINE std::string to_string( DeviceEventTypeEXT value )
- {
- switch ( value )
+ VkResult vkCreateHeadlessSurfaceEXT( VkInstance instance,
+ const VkHeadlessSurfaceCreateInfoEXT * pCreateInfo,
+ const VkAllocationCallbacks * pAllocator,
+ VkSurfaceKHR * pSurface ) const VULKAN_HPP_NOEXCEPT
{
- case DeviceEventTypeEXT::eDisplayHotplug : return "DisplayHotplug";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCreateHeadlessSurfaceEXT( instance, pCreateInfo, pAllocator, pSurface );
}
- }
- enum class DeviceGroupPresentModeFlagBitsKHR : VkDeviceGroupPresentModeFlagsKHR
- {
- eLocal = VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHR,
- eRemote = VK_DEVICE_GROUP_PRESENT_MODE_REMOTE_BIT_KHR,
- eSum = VK_DEVICE_GROUP_PRESENT_MODE_SUM_BIT_KHR,
- eLocalMultiDevice = VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_MULTI_DEVICE_BIT_KHR
- };
+ //=== VK_KHR_buffer_device_address ===
- VULKAN_HPP_INLINE std::string to_string( DeviceGroupPresentModeFlagBitsKHR value )
- {
- switch ( value )
+ VkDeviceAddress vkGetBufferDeviceAddressKHR( VkDevice device,
+ const VkBufferDeviceAddressInfo * pInfo ) const VULKAN_HPP_NOEXCEPT
{
- case DeviceGroupPresentModeFlagBitsKHR::eLocal : return "Local";
- case DeviceGroupPresentModeFlagBitsKHR::eRemote : return "Remote";
- case DeviceGroupPresentModeFlagBitsKHR::eSum : return "Sum";
- case DeviceGroupPresentModeFlagBitsKHR::eLocalMultiDevice : return "LocalMultiDevice";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkGetBufferDeviceAddressKHR( device, pInfo );
}
- }
-
- enum class DeviceMemoryReportEventTypeEXT
- {
- eAllocate = VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_ALLOCATE_EXT,
- eFree = VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_FREE_EXT,
- eImport = VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_IMPORT_EXT,
- eUnimport = VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_UNIMPORT_EXT,
- eAllocationFailed = VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_ALLOCATION_FAILED_EXT
- };
- VULKAN_HPP_INLINE std::string to_string( DeviceMemoryReportEventTypeEXT value )
- {
- switch ( value )
+ uint64_t vkGetBufferOpaqueCaptureAddressKHR( VkDevice device,
+ const VkBufferDeviceAddressInfo * pInfo ) const VULKAN_HPP_NOEXCEPT
{
- case DeviceMemoryReportEventTypeEXT::eAllocate : return "Allocate";
- case DeviceMemoryReportEventTypeEXT::eFree : return "Free";
- case DeviceMemoryReportEventTypeEXT::eImport : return "Import";
- case DeviceMemoryReportEventTypeEXT::eUnimport : return "Unimport";
- case DeviceMemoryReportEventTypeEXT::eAllocationFailed : return "AllocationFailed";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkGetBufferOpaqueCaptureAddressKHR( device, pInfo );
}
- }
-
- enum class DeviceQueueCreateFlagBits : VkDeviceQueueCreateFlags
- {
- eProtected = VK_DEVICE_QUEUE_CREATE_PROTECTED_BIT
- };
- VULKAN_HPP_INLINE std::string to_string( DeviceQueueCreateFlagBits value )
- {
- switch ( value )
+ uint64_t vkGetDeviceMemoryOpaqueCaptureAddressKHR(
+ VkDevice device, const VkDeviceMemoryOpaqueCaptureAddressInfo * pInfo ) const VULKAN_HPP_NOEXCEPT
{
- case DeviceQueueCreateFlagBits::eProtected : return "Protected";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkGetDeviceMemoryOpaqueCaptureAddressKHR( device, pInfo );
}
- }
- enum class DiscardRectangleModeEXT
- {
- eInclusive = VK_DISCARD_RECTANGLE_MODE_INCLUSIVE_EXT,
- eExclusive = VK_DISCARD_RECTANGLE_MODE_EXCLUSIVE_EXT
- };
+ //=== VK_EXT_line_rasterization ===
- VULKAN_HPP_INLINE std::string to_string( DiscardRectangleModeEXT value )
- {
- switch ( value )
+ void vkCmdSetLineStippleEXT( VkCommandBuffer commandBuffer,
+ uint32_t lineStippleFactor,
+ uint16_t lineStipplePattern ) const VULKAN_HPP_NOEXCEPT
{
- case DiscardRectangleModeEXT::eInclusive : return "Inclusive";
- case DiscardRectangleModeEXT::eExclusive : return "Exclusive";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCmdSetLineStippleEXT( commandBuffer, lineStippleFactor, lineStipplePattern );
}
- }
- enum class DisplayEventTypeEXT
- {
- eFirstPixelOut = VK_DISPLAY_EVENT_TYPE_FIRST_PIXEL_OUT_EXT
- };
+ //=== VK_EXT_host_query_reset ===
- VULKAN_HPP_INLINE std::string to_string( DisplayEventTypeEXT value )
- {
- switch ( value )
+ void vkResetQueryPoolEXT( VkDevice device,
+ VkQueryPool queryPool,
+ uint32_t firstQuery,
+ uint32_t queryCount ) const VULKAN_HPP_NOEXCEPT
{
- case DisplayEventTypeEXT::eFirstPixelOut : return "FirstPixelOut";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkResetQueryPoolEXT( device, queryPool, firstQuery, queryCount );
}
- }
- enum class DisplayPlaneAlphaFlagBitsKHR : VkDisplayPlaneAlphaFlagsKHR
- {
- eOpaque = VK_DISPLAY_PLANE_ALPHA_OPAQUE_BIT_KHR,
- eGlobal = VK_DISPLAY_PLANE_ALPHA_GLOBAL_BIT_KHR,
- ePerPixel = VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_BIT_KHR,
- ePerPixelPremultiplied = VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_PREMULTIPLIED_BIT_KHR
- };
+ //=== VK_EXT_extended_dynamic_state ===
- VULKAN_HPP_INLINE std::string to_string( DisplayPlaneAlphaFlagBitsKHR value )
- {
- switch ( value )
+ void vkCmdSetCullModeEXT( VkCommandBuffer commandBuffer, VkCullModeFlags cullMode ) const VULKAN_HPP_NOEXCEPT
{
- case DisplayPlaneAlphaFlagBitsKHR::eOpaque : return "Opaque";
- case DisplayPlaneAlphaFlagBitsKHR::eGlobal : return "Global";
- case DisplayPlaneAlphaFlagBitsKHR::ePerPixel : return "PerPixel";
- case DisplayPlaneAlphaFlagBitsKHR::ePerPixelPremultiplied : return "PerPixelPremultiplied";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCmdSetCullModeEXT( commandBuffer, cullMode );
}
- }
-
- enum class DisplayPowerStateEXT
- {
- eOff = VK_DISPLAY_POWER_STATE_OFF_EXT,
- eSuspend = VK_DISPLAY_POWER_STATE_SUSPEND_EXT,
- eOn = VK_DISPLAY_POWER_STATE_ON_EXT
- };
- VULKAN_HPP_INLINE std::string to_string( DisplayPowerStateEXT value )
- {
- switch ( value )
+ void vkCmdSetFrontFaceEXT( VkCommandBuffer commandBuffer, VkFrontFace frontFace ) const VULKAN_HPP_NOEXCEPT
{
- case DisplayPowerStateEXT::eOff : return "Off";
- case DisplayPowerStateEXT::eSuspend : return "Suspend";
- case DisplayPowerStateEXT::eOn : return "On";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
- }
- }
-
- enum class DriverId
- {
- eAmdProprietary = VK_DRIVER_ID_AMD_PROPRIETARY,
- eAmdOpenSource = VK_DRIVER_ID_AMD_OPEN_SOURCE,
- eMesaRadv = VK_DRIVER_ID_MESA_RADV,
- eNvidiaProprietary = VK_DRIVER_ID_NVIDIA_PROPRIETARY,
- eIntelProprietaryWindows = VK_DRIVER_ID_INTEL_PROPRIETARY_WINDOWS,
- eIntelOpenSourceMESA = VK_DRIVER_ID_INTEL_OPEN_SOURCE_MESA,
- eImaginationProprietary = VK_DRIVER_ID_IMAGINATION_PROPRIETARY,
- eQualcommProprietary = VK_DRIVER_ID_QUALCOMM_PROPRIETARY,
- eArmProprietary = VK_DRIVER_ID_ARM_PROPRIETARY,
- eGoogleSwiftshader = VK_DRIVER_ID_GOOGLE_SWIFTSHADER,
- eGgpProprietary = VK_DRIVER_ID_GGP_PROPRIETARY,
- eBroadcomProprietary = VK_DRIVER_ID_BROADCOM_PROPRIETARY,
- eMesaLlvmpipe = VK_DRIVER_ID_MESA_LLVMPIPE,
- eMoltenvk = VK_DRIVER_ID_MOLTENVK,
- eIntelOpenSourceMesa = VK_DRIVER_ID_INTEL_OPEN_SOURCE_MESA_KHR
- };
- using DriverIdKHR = DriverId;
-
- VULKAN_HPP_INLINE std::string to_string( DriverId value )
- {
- switch ( value )
- {
- case DriverId::eAmdProprietary : return "AmdProprietary";
- case DriverId::eAmdOpenSource : return "AmdOpenSource";
- case DriverId::eMesaRadv : return "MesaRadv";
- case DriverId::eNvidiaProprietary : return "NvidiaProprietary";
- case DriverId::eIntelProprietaryWindows : return "IntelProprietaryWindows";
- case DriverId::eIntelOpenSourceMESA : return "IntelOpenSourceMESA";
- case DriverId::eImaginationProprietary : return "ImaginationProprietary";
- case DriverId::eQualcommProprietary : return "QualcommProprietary";
- case DriverId::eArmProprietary : return "ArmProprietary";
- case DriverId::eGoogleSwiftshader : return "GoogleSwiftshader";
- case DriverId::eGgpProprietary : return "GgpProprietary";
- case DriverId::eBroadcomProprietary : return "BroadcomProprietary";
- case DriverId::eMesaLlvmpipe : return "MesaLlvmpipe";
- case DriverId::eMoltenvk : return "Moltenvk";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
- }
- }
-
- enum class DynamicState
- {
- eViewport = VK_DYNAMIC_STATE_VIEWPORT,
- eScissor = VK_DYNAMIC_STATE_SCISSOR,
- eLineWidth = VK_DYNAMIC_STATE_LINE_WIDTH,
- eDepthBias = VK_DYNAMIC_STATE_DEPTH_BIAS,
- eBlendConstants = VK_DYNAMIC_STATE_BLEND_CONSTANTS,
- eDepthBounds = VK_DYNAMIC_STATE_DEPTH_BOUNDS,
- eStencilCompareMask = VK_DYNAMIC_STATE_STENCIL_COMPARE_MASK,
- eStencilWriteMask = VK_DYNAMIC_STATE_STENCIL_WRITE_MASK,
- eStencilReference = VK_DYNAMIC_STATE_STENCIL_REFERENCE,
- eViewportWScalingNV = VK_DYNAMIC_STATE_VIEWPORT_W_SCALING_NV,
- eDiscardRectangleEXT = VK_DYNAMIC_STATE_DISCARD_RECTANGLE_EXT,
- eSampleLocationsEXT = VK_DYNAMIC_STATE_SAMPLE_LOCATIONS_EXT,
- eRayTracingPipelineStackSizeKHR = VK_DYNAMIC_STATE_RAY_TRACING_PIPELINE_STACK_SIZE_KHR,
- eViewportShadingRatePaletteNV = VK_DYNAMIC_STATE_VIEWPORT_SHADING_RATE_PALETTE_NV,
- eViewportCoarseSampleOrderNV = VK_DYNAMIC_STATE_VIEWPORT_COARSE_SAMPLE_ORDER_NV,
- eExclusiveScissorNV = VK_DYNAMIC_STATE_EXCLUSIVE_SCISSOR_NV,
- eFragmentShadingRateKHR = VK_DYNAMIC_STATE_FRAGMENT_SHADING_RATE_KHR,
- eLineStippleEXT = VK_DYNAMIC_STATE_LINE_STIPPLE_EXT,
- eCullModeEXT = VK_DYNAMIC_STATE_CULL_MODE_EXT,
- eFrontFaceEXT = VK_DYNAMIC_STATE_FRONT_FACE_EXT,
- ePrimitiveTopologyEXT = VK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGY_EXT,
- eViewportWithCountEXT = VK_DYNAMIC_STATE_VIEWPORT_WITH_COUNT_EXT,
- eScissorWithCountEXT = VK_DYNAMIC_STATE_SCISSOR_WITH_COUNT_EXT,
- eVertexInputBindingStrideEXT = VK_DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE_EXT,
- eDepthTestEnableEXT = VK_DYNAMIC_STATE_DEPTH_TEST_ENABLE_EXT,
- eDepthWriteEnableEXT = VK_DYNAMIC_STATE_DEPTH_WRITE_ENABLE_EXT,
- eDepthCompareOpEXT = VK_DYNAMIC_STATE_DEPTH_COMPARE_OP_EXT,
- eDepthBoundsTestEnableEXT = VK_DYNAMIC_STATE_DEPTH_BOUNDS_TEST_ENABLE_EXT,
- eStencilTestEnableEXT = VK_DYNAMIC_STATE_STENCIL_TEST_ENABLE_EXT,
- eStencilOpEXT = VK_DYNAMIC_STATE_STENCIL_OP_EXT
- };
-
- VULKAN_HPP_INLINE std::string to_string( DynamicState value )
- {
- switch ( value )
- {
- case DynamicState::eViewport : return "Viewport";
- case DynamicState::eScissor : return "Scissor";
- case DynamicState::eLineWidth : return "LineWidth";
- case DynamicState::eDepthBias : return "DepthBias";
- case DynamicState::eBlendConstants : return "BlendConstants";
- case DynamicState::eDepthBounds : return "DepthBounds";
- case DynamicState::eStencilCompareMask : return "StencilCompareMask";
- case DynamicState::eStencilWriteMask : return "StencilWriteMask";
- case DynamicState::eStencilReference : return "StencilReference";
- case DynamicState::eViewportWScalingNV : return "ViewportWScalingNV";
- case DynamicState::eDiscardRectangleEXT : return "DiscardRectangleEXT";
- case DynamicState::eSampleLocationsEXT : return "SampleLocationsEXT";
- case DynamicState::eRayTracingPipelineStackSizeKHR : return "RayTracingPipelineStackSizeKHR";
- case DynamicState::eViewportShadingRatePaletteNV : return "ViewportShadingRatePaletteNV";
- case DynamicState::eViewportCoarseSampleOrderNV : return "ViewportCoarseSampleOrderNV";
- case DynamicState::eExclusiveScissorNV : return "ExclusiveScissorNV";
- case DynamicState::eFragmentShadingRateKHR : return "FragmentShadingRateKHR";
- case DynamicState::eLineStippleEXT : return "LineStippleEXT";
- case DynamicState::eCullModeEXT : return "CullModeEXT";
- case DynamicState::eFrontFaceEXT : return "FrontFaceEXT";
- case DynamicState::ePrimitiveTopologyEXT : return "PrimitiveTopologyEXT";
- case DynamicState::eViewportWithCountEXT : return "ViewportWithCountEXT";
- case DynamicState::eScissorWithCountEXT : return "ScissorWithCountEXT";
- case DynamicState::eVertexInputBindingStrideEXT : return "VertexInputBindingStrideEXT";
- case DynamicState::eDepthTestEnableEXT : return "DepthTestEnableEXT";
- case DynamicState::eDepthWriteEnableEXT : return "DepthWriteEnableEXT";
- case DynamicState::eDepthCompareOpEXT : return "DepthCompareOpEXT";
- case DynamicState::eDepthBoundsTestEnableEXT : return "DepthBoundsTestEnableEXT";
- case DynamicState::eStencilTestEnableEXT : return "StencilTestEnableEXT";
- case DynamicState::eStencilOpEXT : return "StencilOpEXT";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCmdSetFrontFaceEXT( commandBuffer, frontFace );
}
- }
- enum class ExternalFenceFeatureFlagBits : VkExternalFenceFeatureFlags
- {
- eExportable = VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT,
- eImportable = VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT
- };
- using ExternalFenceFeatureFlagBitsKHR = ExternalFenceFeatureFlagBits;
-
- VULKAN_HPP_INLINE std::string to_string( ExternalFenceFeatureFlagBits value )
- {
- switch ( value )
+ void vkCmdSetPrimitiveTopologyEXT( VkCommandBuffer commandBuffer,
+ VkPrimitiveTopology primitiveTopology ) const VULKAN_HPP_NOEXCEPT
{
- case ExternalFenceFeatureFlagBits::eExportable : return "Exportable";
- case ExternalFenceFeatureFlagBits::eImportable : return "Importable";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCmdSetPrimitiveTopologyEXT( commandBuffer, primitiveTopology );
}
- }
-
- enum class ExternalFenceHandleTypeFlagBits : VkExternalFenceHandleTypeFlags
- {
- eOpaqueFd = VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT,
- eOpaqueWin32 = VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT,
- eOpaqueWin32Kmt = VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT,
- eSyncFd = VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT
- };
- using ExternalFenceHandleTypeFlagBitsKHR = ExternalFenceHandleTypeFlagBits;
- VULKAN_HPP_INLINE std::string to_string( ExternalFenceHandleTypeFlagBits value )
- {
- switch ( value )
+ void vkCmdSetViewportWithCountEXT( VkCommandBuffer commandBuffer,
+ uint32_t viewportCount,
+ const VkViewport * pViewports ) const VULKAN_HPP_NOEXCEPT
{
- case ExternalFenceHandleTypeFlagBits::eOpaqueFd : return "OpaqueFd";
- case ExternalFenceHandleTypeFlagBits::eOpaqueWin32 : return "OpaqueWin32";
- case ExternalFenceHandleTypeFlagBits::eOpaqueWin32Kmt : return "OpaqueWin32Kmt";
- case ExternalFenceHandleTypeFlagBits::eSyncFd : return "SyncFd";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCmdSetViewportWithCountEXT( commandBuffer, viewportCount, pViewports );
}
- }
- enum class ExternalMemoryFeatureFlagBits : VkExternalMemoryFeatureFlags
- {
- eDedicatedOnly = VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT,
- eExportable = VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT,
- eImportable = VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT
- };
- using ExternalMemoryFeatureFlagBitsKHR = ExternalMemoryFeatureFlagBits;
-
- VULKAN_HPP_INLINE std::string to_string( ExternalMemoryFeatureFlagBits value )
- {
- switch ( value )
+ void vkCmdSetScissorWithCountEXT( VkCommandBuffer commandBuffer,
+ uint32_t scissorCount,
+ const VkRect2D * pScissors ) const VULKAN_HPP_NOEXCEPT
{
- case ExternalMemoryFeatureFlagBits::eDedicatedOnly : return "DedicatedOnly";
- case ExternalMemoryFeatureFlagBits::eExportable : return "Exportable";
- case ExternalMemoryFeatureFlagBits::eImportable : return "Importable";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCmdSetScissorWithCountEXT( commandBuffer, scissorCount, pScissors );
}
- }
-
- enum class ExternalMemoryFeatureFlagBitsNV : VkExternalMemoryFeatureFlagsNV
- {
- eDedicatedOnly = VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT_NV,
- eExportable = VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT_NV,
- eImportable = VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT_NV
- };
- VULKAN_HPP_INLINE std::string to_string( ExternalMemoryFeatureFlagBitsNV value )
- {
- switch ( value )
+ void vkCmdBindVertexBuffers2EXT( VkCommandBuffer commandBuffer,
+ uint32_t firstBinding,
+ uint32_t bindingCount,
+ const VkBuffer * pBuffers,
+ const VkDeviceSize * pOffsets,
+ const VkDeviceSize * pSizes,
+ const VkDeviceSize * pStrides ) const VULKAN_HPP_NOEXCEPT
{
- case ExternalMemoryFeatureFlagBitsNV::eDedicatedOnly : return "DedicatedOnly";
- case ExternalMemoryFeatureFlagBitsNV::eExportable : return "Exportable";
- case ExternalMemoryFeatureFlagBitsNV::eImportable : return "Importable";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCmdBindVertexBuffers2EXT(
+ commandBuffer, firstBinding, bindingCount, pBuffers, pOffsets, pSizes, pStrides );
}
- }
- enum class ExternalMemoryHandleTypeFlagBits : VkExternalMemoryHandleTypeFlags
- {
- eOpaqueFd = VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT,
- eOpaqueWin32 = VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT,
- eOpaqueWin32Kmt = VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT,
- eD3D11Texture = VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT,
- eD3D11TextureKmt = VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT,
- eD3D12Heap = VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT,
- eD3D12Resource = VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT,
- eDmaBufEXT = VK_EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT,
- eAndroidHardwareBufferANDROID = VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID,
- eHostAllocationEXT = VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT,
- eHostMappedForeignMemoryEXT = VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT
- };
- using ExternalMemoryHandleTypeFlagBitsKHR = ExternalMemoryHandleTypeFlagBits;
-
- VULKAN_HPP_INLINE std::string to_string( ExternalMemoryHandleTypeFlagBits value )
- {
- switch ( value )
- {
- case ExternalMemoryHandleTypeFlagBits::eOpaqueFd : return "OpaqueFd";
- case ExternalMemoryHandleTypeFlagBits::eOpaqueWin32 : return "OpaqueWin32";
- case ExternalMemoryHandleTypeFlagBits::eOpaqueWin32Kmt : return "OpaqueWin32Kmt";
- case ExternalMemoryHandleTypeFlagBits::eD3D11Texture : return "D3D11Texture";
- case ExternalMemoryHandleTypeFlagBits::eD3D11TextureKmt : return "D3D11TextureKmt";
- case ExternalMemoryHandleTypeFlagBits::eD3D12Heap : return "D3D12Heap";
- case ExternalMemoryHandleTypeFlagBits::eD3D12Resource : return "D3D12Resource";
- case ExternalMemoryHandleTypeFlagBits::eDmaBufEXT : return "DmaBufEXT";
- case ExternalMemoryHandleTypeFlagBits::eAndroidHardwareBufferANDROID : return "AndroidHardwareBufferANDROID";
- case ExternalMemoryHandleTypeFlagBits::eHostAllocationEXT : return "HostAllocationEXT";
- case ExternalMemoryHandleTypeFlagBits::eHostMappedForeignMemoryEXT : return "HostMappedForeignMemoryEXT";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
- }
- }
-
- enum class ExternalMemoryHandleTypeFlagBitsNV : VkExternalMemoryHandleTypeFlagsNV
- {
- eOpaqueWin32 = VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_NV,
- eOpaqueWin32Kmt = VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_NV,
- eD3D11Image = VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_BIT_NV,
- eD3D11ImageKmt = VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_KMT_BIT_NV
- };
-
- VULKAN_HPP_INLINE std::string to_string( ExternalMemoryHandleTypeFlagBitsNV value )
- {
- switch ( value )
+ void vkCmdSetDepthTestEnableEXT( VkCommandBuffer commandBuffer, VkBool32 depthTestEnable ) const VULKAN_HPP_NOEXCEPT
{
- case ExternalMemoryHandleTypeFlagBitsNV::eOpaqueWin32 : return "OpaqueWin32";
- case ExternalMemoryHandleTypeFlagBitsNV::eOpaqueWin32Kmt : return "OpaqueWin32Kmt";
- case ExternalMemoryHandleTypeFlagBitsNV::eD3D11Image : return "D3D11Image";
- case ExternalMemoryHandleTypeFlagBitsNV::eD3D11ImageKmt : return "D3D11ImageKmt";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCmdSetDepthTestEnableEXT( commandBuffer, depthTestEnable );
}
- }
- enum class ExternalSemaphoreFeatureFlagBits : VkExternalSemaphoreFeatureFlags
- {
- eExportable = VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT,
- eImportable = VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT
- };
- using ExternalSemaphoreFeatureFlagBitsKHR = ExternalSemaphoreFeatureFlagBits;
-
- VULKAN_HPP_INLINE std::string to_string( ExternalSemaphoreFeatureFlagBits value )
- {
- switch ( value )
+ void vkCmdSetDepthWriteEnableEXT( VkCommandBuffer commandBuffer,
+ VkBool32 depthWriteEnable ) const VULKAN_HPP_NOEXCEPT
{
- case ExternalSemaphoreFeatureFlagBits::eExportable : return "Exportable";
- case ExternalSemaphoreFeatureFlagBits::eImportable : return "Importable";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCmdSetDepthWriteEnableEXT( commandBuffer, depthWriteEnable );
}
- }
-
- enum class ExternalSemaphoreHandleTypeFlagBits : VkExternalSemaphoreHandleTypeFlags
- {
- eOpaqueFd = VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT,
- eOpaqueWin32 = VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT,
- eOpaqueWin32Kmt = VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT,
- eD3D12Fence = VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT,
- eSyncFd = VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT,
- eD3D11Fence = VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D11_FENCE_BIT
- };
- using ExternalSemaphoreHandleTypeFlagBitsKHR = ExternalSemaphoreHandleTypeFlagBits;
- VULKAN_HPP_INLINE std::string to_string( ExternalSemaphoreHandleTypeFlagBits value )
- {
- switch ( value )
+ void vkCmdSetDepthCompareOpEXT( VkCommandBuffer commandBuffer,
+ VkCompareOp depthCompareOp ) const VULKAN_HPP_NOEXCEPT
{
- case ExternalSemaphoreHandleTypeFlagBits::eOpaqueFd : return "OpaqueFd";
- case ExternalSemaphoreHandleTypeFlagBits::eOpaqueWin32 : return "OpaqueWin32";
- case ExternalSemaphoreHandleTypeFlagBits::eOpaqueWin32Kmt : return "OpaqueWin32Kmt";
- case ExternalSemaphoreHandleTypeFlagBits::eD3D12Fence : return "D3D12Fence";
- case ExternalSemaphoreHandleTypeFlagBits::eSyncFd : return "SyncFd";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCmdSetDepthCompareOpEXT( commandBuffer, depthCompareOp );
}
- }
-
- enum class FenceCreateFlagBits : VkFenceCreateFlags
- {
- eSignaled = VK_FENCE_CREATE_SIGNALED_BIT
- };
- VULKAN_HPP_INLINE std::string to_string( FenceCreateFlagBits value )
- {
- switch ( value )
+ void vkCmdSetDepthBoundsTestEnableEXT( VkCommandBuffer commandBuffer,
+ VkBool32 depthBoundsTestEnable ) const VULKAN_HPP_NOEXCEPT
{
- case FenceCreateFlagBits::eSignaled : return "Signaled";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCmdSetDepthBoundsTestEnableEXT( commandBuffer, depthBoundsTestEnable );
}
- }
-
- enum class FenceImportFlagBits : VkFenceImportFlags
- {
- eTemporary = VK_FENCE_IMPORT_TEMPORARY_BIT
- };
- using FenceImportFlagBitsKHR = FenceImportFlagBits;
- VULKAN_HPP_INLINE std::string to_string( FenceImportFlagBits value )
- {
- switch ( value )
+ void vkCmdSetStencilTestEnableEXT( VkCommandBuffer commandBuffer,
+ VkBool32 stencilTestEnable ) const VULKAN_HPP_NOEXCEPT
{
- case FenceImportFlagBits::eTemporary : return "Temporary";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCmdSetStencilTestEnableEXT( commandBuffer, stencilTestEnable );
}
- }
- enum class Filter
- {
- eNearest = VK_FILTER_NEAREST,
- eLinear = VK_FILTER_LINEAR,
- eCubicIMG = VK_FILTER_CUBIC_IMG,
- eCubicEXT = VK_FILTER_CUBIC_EXT
- };
-
- VULKAN_HPP_INLINE std::string to_string( Filter value )
- {
- switch ( value )
+ void vkCmdSetStencilOpEXT( VkCommandBuffer commandBuffer,
+ VkStencilFaceFlags faceMask,
+ VkStencilOp failOp,
+ VkStencilOp passOp,
+ VkStencilOp depthFailOp,
+ VkCompareOp compareOp ) const VULKAN_HPP_NOEXCEPT
{
- case Filter::eNearest : return "Nearest";
- case Filter::eLinear : return "Linear";
- case Filter::eCubicIMG : return "CubicIMG";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCmdSetStencilOpEXT( commandBuffer, faceMask, failOp, passOp, depthFailOp, compareOp );
}
- }
- enum class Format
- {
- eUndefined = VK_FORMAT_UNDEFINED,
- eR4G4UnormPack8 = VK_FORMAT_R4G4_UNORM_PACK8,
- eR4G4B4A4UnormPack16 = VK_FORMAT_R4G4B4A4_UNORM_PACK16,
- eB4G4R4A4UnormPack16 = VK_FORMAT_B4G4R4A4_UNORM_PACK16,
- eR5G6B5UnormPack16 = VK_FORMAT_R5G6B5_UNORM_PACK16,
- eB5G6R5UnormPack16 = VK_FORMAT_B5G6R5_UNORM_PACK16,
- eR5G5B5A1UnormPack16 = VK_FORMAT_R5G5B5A1_UNORM_PACK16,
- eB5G5R5A1UnormPack16 = VK_FORMAT_B5G5R5A1_UNORM_PACK16,
- eA1R5G5B5UnormPack16 = VK_FORMAT_A1R5G5B5_UNORM_PACK16,
- eR8Unorm = VK_FORMAT_R8_UNORM,
- eR8Snorm = VK_FORMAT_R8_SNORM,
- eR8Uscaled = VK_FORMAT_R8_USCALED,
- eR8Sscaled = VK_FORMAT_R8_SSCALED,
- eR8Uint = VK_FORMAT_R8_UINT,
- eR8Sint = VK_FORMAT_R8_SINT,
- eR8Srgb = VK_FORMAT_R8_SRGB,
- eR8G8Unorm = VK_FORMAT_R8G8_UNORM,
- eR8G8Snorm = VK_FORMAT_R8G8_SNORM,
- eR8G8Uscaled = VK_FORMAT_R8G8_USCALED,
- eR8G8Sscaled = VK_FORMAT_R8G8_SSCALED,
- eR8G8Uint = VK_FORMAT_R8G8_UINT,
- eR8G8Sint = VK_FORMAT_R8G8_SINT,
- eR8G8Srgb = VK_FORMAT_R8G8_SRGB,
- eR8G8B8Unorm = VK_FORMAT_R8G8B8_UNORM,
- eR8G8B8Snorm = VK_FORMAT_R8G8B8_SNORM,
- eR8G8B8Uscaled = VK_FORMAT_R8G8B8_USCALED,
- eR8G8B8Sscaled = VK_FORMAT_R8G8B8_SSCALED,
- eR8G8B8Uint = VK_FORMAT_R8G8B8_UINT,
- eR8G8B8Sint = VK_FORMAT_R8G8B8_SINT,
- eR8G8B8Srgb = VK_FORMAT_R8G8B8_SRGB,
- eB8G8R8Unorm = VK_FORMAT_B8G8R8_UNORM,
- eB8G8R8Snorm = VK_FORMAT_B8G8R8_SNORM,
- eB8G8R8Uscaled = VK_FORMAT_B8G8R8_USCALED,
- eB8G8R8Sscaled = VK_FORMAT_B8G8R8_SSCALED,
- eB8G8R8Uint = VK_FORMAT_B8G8R8_UINT,
- eB8G8R8Sint = VK_FORMAT_B8G8R8_SINT,
- eB8G8R8Srgb = VK_FORMAT_B8G8R8_SRGB,
- eR8G8B8A8Unorm = VK_FORMAT_R8G8B8A8_UNORM,
- eR8G8B8A8Snorm = VK_FORMAT_R8G8B8A8_SNORM,
- eR8G8B8A8Uscaled = VK_FORMAT_R8G8B8A8_USCALED,
- eR8G8B8A8Sscaled = VK_FORMAT_R8G8B8A8_SSCALED,
- eR8G8B8A8Uint = VK_FORMAT_R8G8B8A8_UINT,
- eR8G8B8A8Sint = VK_FORMAT_R8G8B8A8_SINT,
- eR8G8B8A8Srgb = VK_FORMAT_R8G8B8A8_SRGB,
- eB8G8R8A8Unorm = VK_FORMAT_B8G8R8A8_UNORM,
- eB8G8R8A8Snorm = VK_FORMAT_B8G8R8A8_SNORM,
- eB8G8R8A8Uscaled = VK_FORMAT_B8G8R8A8_USCALED,
- eB8G8R8A8Sscaled = VK_FORMAT_B8G8R8A8_SSCALED,
- eB8G8R8A8Uint = VK_FORMAT_B8G8R8A8_UINT,
- eB8G8R8A8Sint = VK_FORMAT_B8G8R8A8_SINT,
- eB8G8R8A8Srgb = VK_FORMAT_B8G8R8A8_SRGB,
- eA8B8G8R8UnormPack32 = VK_FORMAT_A8B8G8R8_UNORM_PACK32,
- eA8B8G8R8SnormPack32 = VK_FORMAT_A8B8G8R8_SNORM_PACK32,
- eA8B8G8R8UscaledPack32 = VK_FORMAT_A8B8G8R8_USCALED_PACK32,
- eA8B8G8R8SscaledPack32 = VK_FORMAT_A8B8G8R8_SSCALED_PACK32,
- eA8B8G8R8UintPack32 = VK_FORMAT_A8B8G8R8_UINT_PACK32,
- eA8B8G8R8SintPack32 = VK_FORMAT_A8B8G8R8_SINT_PACK32,
- eA8B8G8R8SrgbPack32 = VK_FORMAT_A8B8G8R8_SRGB_PACK32,
- eA2R10G10B10UnormPack32 = VK_FORMAT_A2R10G10B10_UNORM_PACK32,
- eA2R10G10B10SnormPack32 = VK_FORMAT_A2R10G10B10_SNORM_PACK32,
- eA2R10G10B10UscaledPack32 = VK_FORMAT_A2R10G10B10_USCALED_PACK32,
- eA2R10G10B10SscaledPack32 = VK_FORMAT_A2R10G10B10_SSCALED_PACK32,
- eA2R10G10B10UintPack32 = VK_FORMAT_A2R10G10B10_UINT_PACK32,
- eA2R10G10B10SintPack32 = VK_FORMAT_A2R10G10B10_SINT_PACK32,
- eA2B10G10R10UnormPack32 = VK_FORMAT_A2B10G10R10_UNORM_PACK32,
- eA2B10G10R10SnormPack32 = VK_FORMAT_A2B10G10R10_SNORM_PACK32,
- eA2B10G10R10UscaledPack32 = VK_FORMAT_A2B10G10R10_USCALED_PACK32,
- eA2B10G10R10SscaledPack32 = VK_FORMAT_A2B10G10R10_SSCALED_PACK32,
- eA2B10G10R10UintPack32 = VK_FORMAT_A2B10G10R10_UINT_PACK32,
- eA2B10G10R10SintPack32 = VK_FORMAT_A2B10G10R10_SINT_PACK32,
- eR16Unorm = VK_FORMAT_R16_UNORM,
- eR16Snorm = VK_FORMAT_R16_SNORM,
- eR16Uscaled = VK_FORMAT_R16_USCALED,
- eR16Sscaled = VK_FORMAT_R16_SSCALED,
- eR16Uint = VK_FORMAT_R16_UINT,
- eR16Sint = VK_FORMAT_R16_SINT,
- eR16Sfloat = VK_FORMAT_R16_SFLOAT,
- eR16G16Unorm = VK_FORMAT_R16G16_UNORM,
- eR16G16Snorm = VK_FORMAT_R16G16_SNORM,
- eR16G16Uscaled = VK_FORMAT_R16G16_USCALED,
- eR16G16Sscaled = VK_FORMAT_R16G16_SSCALED,
- eR16G16Uint = VK_FORMAT_R16G16_UINT,
- eR16G16Sint = VK_FORMAT_R16G16_SINT,
- eR16G16Sfloat = VK_FORMAT_R16G16_SFLOAT,
- eR16G16B16Unorm = VK_FORMAT_R16G16B16_UNORM,
- eR16G16B16Snorm = VK_FORMAT_R16G16B16_SNORM,
- eR16G16B16Uscaled = VK_FORMAT_R16G16B16_USCALED,
- eR16G16B16Sscaled = VK_FORMAT_R16G16B16_SSCALED,
- eR16G16B16Uint = VK_FORMAT_R16G16B16_UINT,
- eR16G16B16Sint = VK_FORMAT_R16G16B16_SINT,
- eR16G16B16Sfloat = VK_FORMAT_R16G16B16_SFLOAT,
- eR16G16B16A16Unorm = VK_FORMAT_R16G16B16A16_UNORM,
- eR16G16B16A16Snorm = VK_FORMAT_R16G16B16A16_SNORM,
- eR16G16B16A16Uscaled = VK_FORMAT_R16G16B16A16_USCALED,
- eR16G16B16A16Sscaled = VK_FORMAT_R16G16B16A16_SSCALED,
- eR16G16B16A16Uint = VK_FORMAT_R16G16B16A16_UINT,
- eR16G16B16A16Sint = VK_FORMAT_R16G16B16A16_SINT,
- eR16G16B16A16Sfloat = VK_FORMAT_R16G16B16A16_SFLOAT,
- eR32Uint = VK_FORMAT_R32_UINT,
- eR32Sint = VK_FORMAT_R32_SINT,
- eR32Sfloat = VK_FORMAT_R32_SFLOAT,
- eR32G32Uint = VK_FORMAT_R32G32_UINT,
- eR32G32Sint = VK_FORMAT_R32G32_SINT,
- eR32G32Sfloat = VK_FORMAT_R32G32_SFLOAT,
- eR32G32B32Uint = VK_FORMAT_R32G32B32_UINT,
- eR32G32B32Sint = VK_FORMAT_R32G32B32_SINT,
- eR32G32B32Sfloat = VK_FORMAT_R32G32B32_SFLOAT,
- eR32G32B32A32Uint = VK_FORMAT_R32G32B32A32_UINT,
- eR32G32B32A32Sint = VK_FORMAT_R32G32B32A32_SINT,
- eR32G32B32A32Sfloat = VK_FORMAT_R32G32B32A32_SFLOAT,
- eR64Uint = VK_FORMAT_R64_UINT,
- eR64Sint = VK_FORMAT_R64_SINT,
- eR64Sfloat = VK_FORMAT_R64_SFLOAT,
- eR64G64Uint = VK_FORMAT_R64G64_UINT,
- eR64G64Sint = VK_FORMAT_R64G64_SINT,
- eR64G64Sfloat = VK_FORMAT_R64G64_SFLOAT,
- eR64G64B64Uint = VK_FORMAT_R64G64B64_UINT,
- eR64G64B64Sint = VK_FORMAT_R64G64B64_SINT,
- eR64G64B64Sfloat = VK_FORMAT_R64G64B64_SFLOAT,
- eR64G64B64A64Uint = VK_FORMAT_R64G64B64A64_UINT,
- eR64G64B64A64Sint = VK_FORMAT_R64G64B64A64_SINT,
- eR64G64B64A64Sfloat = VK_FORMAT_R64G64B64A64_SFLOAT,
- eB10G11R11UfloatPack32 = VK_FORMAT_B10G11R11_UFLOAT_PACK32,
- eE5B9G9R9UfloatPack32 = VK_FORMAT_E5B9G9R9_UFLOAT_PACK32,
- eD16Unorm = VK_FORMAT_D16_UNORM,
- eX8D24UnormPack32 = VK_FORMAT_X8_D24_UNORM_PACK32,
- eD32Sfloat = VK_FORMAT_D32_SFLOAT,
- eS8Uint = VK_FORMAT_S8_UINT,
- eD16UnormS8Uint = VK_FORMAT_D16_UNORM_S8_UINT,
- eD24UnormS8Uint = VK_FORMAT_D24_UNORM_S8_UINT,
- eD32SfloatS8Uint = VK_FORMAT_D32_SFLOAT_S8_UINT,
- eBc1RgbUnormBlock = VK_FORMAT_BC1_RGB_UNORM_BLOCK,
- eBc1RgbSrgbBlock = VK_FORMAT_BC1_RGB_SRGB_BLOCK,
- eBc1RgbaUnormBlock = VK_FORMAT_BC1_RGBA_UNORM_BLOCK,
- eBc1RgbaSrgbBlock = VK_FORMAT_BC1_RGBA_SRGB_BLOCK,
- eBc2UnormBlock = VK_FORMAT_BC2_UNORM_BLOCK,
- eBc2SrgbBlock = VK_FORMAT_BC2_SRGB_BLOCK,
- eBc3UnormBlock = VK_FORMAT_BC3_UNORM_BLOCK,
- eBc3SrgbBlock = VK_FORMAT_BC3_SRGB_BLOCK,
- eBc4UnormBlock = VK_FORMAT_BC4_UNORM_BLOCK,
- eBc4SnormBlock = VK_FORMAT_BC4_SNORM_BLOCK,
- eBc5UnormBlock = VK_FORMAT_BC5_UNORM_BLOCK,
- eBc5SnormBlock = VK_FORMAT_BC5_SNORM_BLOCK,
- eBc6HUfloatBlock = VK_FORMAT_BC6H_UFLOAT_BLOCK,
- eBc6HSfloatBlock = VK_FORMAT_BC6H_SFLOAT_BLOCK,
- eBc7UnormBlock = VK_FORMAT_BC7_UNORM_BLOCK,
- eBc7SrgbBlock = VK_FORMAT_BC7_SRGB_BLOCK,
- eEtc2R8G8B8UnormBlock = VK_FORMAT_ETC2_R8G8B8_UNORM_BLOCK,
- eEtc2R8G8B8SrgbBlock = VK_FORMAT_ETC2_R8G8B8_SRGB_BLOCK,
- eEtc2R8G8B8A1UnormBlock = VK_FORMAT_ETC2_R8G8B8A1_UNORM_BLOCK,
- eEtc2R8G8B8A1SrgbBlock = VK_FORMAT_ETC2_R8G8B8A1_SRGB_BLOCK,
- eEtc2R8G8B8A8UnormBlock = VK_FORMAT_ETC2_R8G8B8A8_UNORM_BLOCK,
- eEtc2R8G8B8A8SrgbBlock = VK_FORMAT_ETC2_R8G8B8A8_SRGB_BLOCK,
- eEacR11UnormBlock = VK_FORMAT_EAC_R11_UNORM_BLOCK,
- eEacR11SnormBlock = VK_FORMAT_EAC_R11_SNORM_BLOCK,
- eEacR11G11UnormBlock = VK_FORMAT_EAC_R11G11_UNORM_BLOCK,
- eEacR11G11SnormBlock = VK_FORMAT_EAC_R11G11_SNORM_BLOCK,
- eAstc4x4UnormBlock = VK_FORMAT_ASTC_4x4_UNORM_BLOCK,
- eAstc4x4SrgbBlock = VK_FORMAT_ASTC_4x4_SRGB_BLOCK,
- eAstc5x4UnormBlock = VK_FORMAT_ASTC_5x4_UNORM_BLOCK,
- eAstc5x4SrgbBlock = VK_FORMAT_ASTC_5x4_SRGB_BLOCK,
- eAstc5x5UnormBlock = VK_FORMAT_ASTC_5x5_UNORM_BLOCK,
- eAstc5x5SrgbBlock = VK_FORMAT_ASTC_5x5_SRGB_BLOCK,
- eAstc6x5UnormBlock = VK_FORMAT_ASTC_6x5_UNORM_BLOCK,
- eAstc6x5SrgbBlock = VK_FORMAT_ASTC_6x5_SRGB_BLOCK,
- eAstc6x6UnormBlock = VK_FORMAT_ASTC_6x6_UNORM_BLOCK,
- eAstc6x6SrgbBlock = VK_FORMAT_ASTC_6x6_SRGB_BLOCK,
- eAstc8x5UnormBlock = VK_FORMAT_ASTC_8x5_UNORM_BLOCK,
- eAstc8x5SrgbBlock = VK_FORMAT_ASTC_8x5_SRGB_BLOCK,
- eAstc8x6UnormBlock = VK_FORMAT_ASTC_8x6_UNORM_BLOCK,
- eAstc8x6SrgbBlock = VK_FORMAT_ASTC_8x6_SRGB_BLOCK,
- eAstc8x8UnormBlock = VK_FORMAT_ASTC_8x8_UNORM_BLOCK,
- eAstc8x8SrgbBlock = VK_FORMAT_ASTC_8x8_SRGB_BLOCK,
- eAstc10x5UnormBlock = VK_FORMAT_ASTC_10x5_UNORM_BLOCK,
- eAstc10x5SrgbBlock = VK_FORMAT_ASTC_10x5_SRGB_BLOCK,
- eAstc10x6UnormBlock = VK_FORMAT_ASTC_10x6_UNORM_BLOCK,
- eAstc10x6SrgbBlock = VK_FORMAT_ASTC_10x6_SRGB_BLOCK,
- eAstc10x8UnormBlock = VK_FORMAT_ASTC_10x8_UNORM_BLOCK,
- eAstc10x8SrgbBlock = VK_FORMAT_ASTC_10x8_SRGB_BLOCK,
- eAstc10x10UnormBlock = VK_FORMAT_ASTC_10x10_UNORM_BLOCK,
- eAstc10x10SrgbBlock = VK_FORMAT_ASTC_10x10_SRGB_BLOCK,
- eAstc12x10UnormBlock = VK_FORMAT_ASTC_12x10_UNORM_BLOCK,
- eAstc12x10SrgbBlock = VK_FORMAT_ASTC_12x10_SRGB_BLOCK,
- eAstc12x12UnormBlock = VK_FORMAT_ASTC_12x12_UNORM_BLOCK,
- eAstc12x12SrgbBlock = VK_FORMAT_ASTC_12x12_SRGB_BLOCK,
- eG8B8G8R8422Unorm = VK_FORMAT_G8B8G8R8_422_UNORM,
- eB8G8R8G8422Unorm = VK_FORMAT_B8G8R8G8_422_UNORM,
- eG8B8R83Plane420Unorm = VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM,
- eG8B8R82Plane420Unorm = VK_FORMAT_G8_B8R8_2PLANE_420_UNORM,
- eG8B8R83Plane422Unorm = VK_FORMAT_G8_B8_R8_3PLANE_422_UNORM,
- eG8B8R82Plane422Unorm = VK_FORMAT_G8_B8R8_2PLANE_422_UNORM,
- eG8B8R83Plane444Unorm = VK_FORMAT_G8_B8_R8_3PLANE_444_UNORM,
- eR10X6UnormPack16 = VK_FORMAT_R10X6_UNORM_PACK16,
- eR10X6G10X6Unorm2Pack16 = VK_FORMAT_R10X6G10X6_UNORM_2PACK16,
- eR10X6G10X6B10X6A10X6Unorm4Pack16 = VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16,
- eG10X6B10X6G10X6R10X6422Unorm4Pack16 = VK_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16,
- eB10X6G10X6R10X6G10X6422Unorm4Pack16 = VK_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16,
- eG10X6B10X6R10X63Plane420Unorm3Pack16 = VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16,
- eG10X6B10X6R10X62Plane420Unorm3Pack16 = VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16,
- eG10X6B10X6R10X63Plane422Unorm3Pack16 = VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16,
- eG10X6B10X6R10X62Plane422Unorm3Pack16 = VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16,
- eG10X6B10X6R10X63Plane444Unorm3Pack16 = VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16,
- eR12X4UnormPack16 = VK_FORMAT_R12X4_UNORM_PACK16,
- eR12X4G12X4Unorm2Pack16 = VK_FORMAT_R12X4G12X4_UNORM_2PACK16,
- eR12X4G12X4B12X4A12X4Unorm4Pack16 = VK_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16,
- eG12X4B12X4G12X4R12X4422Unorm4Pack16 = VK_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16,
- eB12X4G12X4R12X4G12X4422Unorm4Pack16 = VK_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16,
- eG12X4B12X4R12X43Plane420Unorm3Pack16 = VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16,
- eG12X4B12X4R12X42Plane420Unorm3Pack16 = VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16,
- eG12X4B12X4R12X43Plane422Unorm3Pack16 = VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16,
- eG12X4B12X4R12X42Plane422Unorm3Pack16 = VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16,
- eG12X4B12X4R12X43Plane444Unorm3Pack16 = VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16,
- eG16B16G16R16422Unorm = VK_FORMAT_G16B16G16R16_422_UNORM,
- eB16G16R16G16422Unorm = VK_FORMAT_B16G16R16G16_422_UNORM,
- eG16B16R163Plane420Unorm = VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM,
- eG16B16R162Plane420Unorm = VK_FORMAT_G16_B16R16_2PLANE_420_UNORM,
- eG16B16R163Plane422Unorm = VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM,
- eG16B16R162Plane422Unorm = VK_FORMAT_G16_B16R16_2PLANE_422_UNORM,
- eG16B16R163Plane444Unorm = VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM,
- ePvrtc12BppUnormBlockIMG = VK_FORMAT_PVRTC1_2BPP_UNORM_BLOCK_IMG,
- ePvrtc14BppUnormBlockIMG = VK_FORMAT_PVRTC1_4BPP_UNORM_BLOCK_IMG,
- ePvrtc22BppUnormBlockIMG = VK_FORMAT_PVRTC2_2BPP_UNORM_BLOCK_IMG,
- ePvrtc24BppUnormBlockIMG = VK_FORMAT_PVRTC2_4BPP_UNORM_BLOCK_IMG,
- ePvrtc12BppSrgbBlockIMG = VK_FORMAT_PVRTC1_2BPP_SRGB_BLOCK_IMG,
- ePvrtc14BppSrgbBlockIMG = VK_FORMAT_PVRTC1_4BPP_SRGB_BLOCK_IMG,
- ePvrtc22BppSrgbBlockIMG = VK_FORMAT_PVRTC2_2BPP_SRGB_BLOCK_IMG,
- ePvrtc24BppSrgbBlockIMG = VK_FORMAT_PVRTC2_4BPP_SRGB_BLOCK_IMG,
- eAstc4x4SfloatBlockEXT = VK_FORMAT_ASTC_4x4_SFLOAT_BLOCK_EXT,
- eAstc5x4SfloatBlockEXT = VK_FORMAT_ASTC_5x4_SFLOAT_BLOCK_EXT,
- eAstc5x5SfloatBlockEXT = VK_FORMAT_ASTC_5x5_SFLOAT_BLOCK_EXT,
- eAstc6x5SfloatBlockEXT = VK_FORMAT_ASTC_6x5_SFLOAT_BLOCK_EXT,
- eAstc6x6SfloatBlockEXT = VK_FORMAT_ASTC_6x6_SFLOAT_BLOCK_EXT,
- eAstc8x5SfloatBlockEXT = VK_FORMAT_ASTC_8x5_SFLOAT_BLOCK_EXT,
- eAstc8x6SfloatBlockEXT = VK_FORMAT_ASTC_8x6_SFLOAT_BLOCK_EXT,
- eAstc8x8SfloatBlockEXT = VK_FORMAT_ASTC_8x8_SFLOAT_BLOCK_EXT,
- eAstc10x5SfloatBlockEXT = VK_FORMAT_ASTC_10x5_SFLOAT_BLOCK_EXT,
- eAstc10x6SfloatBlockEXT = VK_FORMAT_ASTC_10x6_SFLOAT_BLOCK_EXT,
- eAstc10x8SfloatBlockEXT = VK_FORMAT_ASTC_10x8_SFLOAT_BLOCK_EXT,
- eAstc10x10SfloatBlockEXT = VK_FORMAT_ASTC_10x10_SFLOAT_BLOCK_EXT,
- eAstc12x10SfloatBlockEXT = VK_FORMAT_ASTC_12x10_SFLOAT_BLOCK_EXT,
- eAstc12x12SfloatBlockEXT = VK_FORMAT_ASTC_12x12_SFLOAT_BLOCK_EXT,
- eA4R4G4B4UnormPack16EXT = VK_FORMAT_A4R4G4B4_UNORM_PACK16_EXT,
- eA4B4G4R4UnormPack16EXT = VK_FORMAT_A4B4G4R4_UNORM_PACK16_EXT,
- eB10X6G10X6R10X6G10X6422Unorm4Pack16KHR = VK_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16_KHR,
- eB12X4G12X4R12X4G12X4422Unorm4Pack16KHR = VK_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16_KHR,
- eB16G16R16G16422UnormKHR = VK_FORMAT_B16G16R16G16_422_UNORM_KHR,
- eB8G8R8G8422UnormKHR = VK_FORMAT_B8G8R8G8_422_UNORM_KHR,
- eG10X6B10X6G10X6R10X6422Unorm4Pack16KHR = VK_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16_KHR,
- eG10X6B10X6R10X62Plane420Unorm3Pack16KHR = VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16_KHR,
- eG10X6B10X6R10X62Plane422Unorm3Pack16KHR = VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16_KHR,
- eG10X6B10X6R10X63Plane420Unorm3Pack16KHR = VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16_KHR,
- eG10X6B10X6R10X63Plane422Unorm3Pack16KHR = VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16_KHR,
- eG10X6B10X6R10X63Plane444Unorm3Pack16KHR = VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16_KHR,
- eG12X4B12X4G12X4R12X4422Unorm4Pack16KHR = VK_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16_KHR,
- eG12X4B12X4R12X42Plane420Unorm3Pack16KHR = VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16_KHR,
- eG12X4B12X4R12X42Plane422Unorm3Pack16KHR = VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16_KHR,
- eG12X4B12X4R12X43Plane420Unorm3Pack16KHR = VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16_KHR,
- eG12X4B12X4R12X43Plane422Unorm3Pack16KHR = VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16_KHR,
- eG12X4B12X4R12X43Plane444Unorm3Pack16KHR = VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16_KHR,
- eG16B16G16R16422UnormKHR = VK_FORMAT_G16B16G16R16_422_UNORM_KHR,
- eG16B16R162Plane420UnormKHR = VK_FORMAT_G16_B16R16_2PLANE_420_UNORM_KHR,
- eG16B16R162Plane422UnormKHR = VK_FORMAT_G16_B16R16_2PLANE_422_UNORM_KHR,
- eG16B16R163Plane420UnormKHR = VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM_KHR,
- eG16B16R163Plane422UnormKHR = VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM_KHR,
- eG16B16R163Plane444UnormKHR = VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM_KHR,
- eG8B8G8R8422UnormKHR = VK_FORMAT_G8B8G8R8_422_UNORM_KHR,
- eG8B8R82Plane420UnormKHR = VK_FORMAT_G8_B8R8_2PLANE_420_UNORM_KHR,
- eG8B8R82Plane422UnormKHR = VK_FORMAT_G8_B8R8_2PLANE_422_UNORM_KHR,
- eG8B8R83Plane420UnormKHR = VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM_KHR,
- eG8B8R83Plane422UnormKHR = VK_FORMAT_G8_B8_R8_3PLANE_422_UNORM_KHR,
- eG8B8R83Plane444UnormKHR = VK_FORMAT_G8_B8_R8_3PLANE_444_UNORM_KHR,
- eR10X6G10X6B10X6A10X6Unorm4Pack16KHR = VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16_KHR,
- eR10X6G10X6Unorm2Pack16KHR = VK_FORMAT_R10X6G10X6_UNORM_2PACK16_KHR,
- eR10X6UnormPack16KHR = VK_FORMAT_R10X6_UNORM_PACK16_KHR,
- eR12X4G12X4B12X4A12X4Unorm4Pack16KHR = VK_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16_KHR,
- eR12X4G12X4Unorm2Pack16KHR = VK_FORMAT_R12X4G12X4_UNORM_2PACK16_KHR,
- eR12X4UnormPack16KHR = VK_FORMAT_R12X4_UNORM_PACK16_KHR
- };
-
- VULKAN_HPP_INLINE std::string to_string( Format value )
- {
- switch ( value )
- {
- case Format::eUndefined : return "Undefined";
- case Format::eR4G4UnormPack8 : return "R4G4UnormPack8";
- case Format::eR4G4B4A4UnormPack16 : return "R4G4B4A4UnormPack16";
- case Format::eB4G4R4A4UnormPack16 : return "B4G4R4A4UnormPack16";
- case Format::eR5G6B5UnormPack16 : return "R5G6B5UnormPack16";
- case Format::eB5G6R5UnormPack16 : return "B5G6R5UnormPack16";
- case Format::eR5G5B5A1UnormPack16 : return "R5G5B5A1UnormPack16";
- case Format::eB5G5R5A1UnormPack16 : return "B5G5R5A1UnormPack16";
- case Format::eA1R5G5B5UnormPack16 : return "A1R5G5B5UnormPack16";
- case Format::eR8Unorm : return "R8Unorm";
- case Format::eR8Snorm : return "R8Snorm";
- case Format::eR8Uscaled : return "R8Uscaled";
- case Format::eR8Sscaled : return "R8Sscaled";
- case Format::eR8Uint : return "R8Uint";
- case Format::eR8Sint : return "R8Sint";
- case Format::eR8Srgb : return "R8Srgb";
- case Format::eR8G8Unorm : return "R8G8Unorm";
- case Format::eR8G8Snorm : return "R8G8Snorm";
- case Format::eR8G8Uscaled : return "R8G8Uscaled";
- case Format::eR8G8Sscaled : return "R8G8Sscaled";
- case Format::eR8G8Uint : return "R8G8Uint";
- case Format::eR8G8Sint : return "R8G8Sint";
- case Format::eR8G8Srgb : return "R8G8Srgb";
- case Format::eR8G8B8Unorm : return "R8G8B8Unorm";
- case Format::eR8G8B8Snorm : return "R8G8B8Snorm";
- case Format::eR8G8B8Uscaled : return "R8G8B8Uscaled";
- case Format::eR8G8B8Sscaled : return "R8G8B8Sscaled";
- case Format::eR8G8B8Uint : return "R8G8B8Uint";
- case Format::eR8G8B8Sint : return "R8G8B8Sint";
- case Format::eR8G8B8Srgb : return "R8G8B8Srgb";
- case Format::eB8G8R8Unorm : return "B8G8R8Unorm";
- case Format::eB8G8R8Snorm : return "B8G8R8Snorm";
- case Format::eB8G8R8Uscaled : return "B8G8R8Uscaled";
- case Format::eB8G8R8Sscaled : return "B8G8R8Sscaled";
- case Format::eB8G8R8Uint : return "B8G8R8Uint";
- case Format::eB8G8R8Sint : return "B8G8R8Sint";
- case Format::eB8G8R8Srgb : return "B8G8R8Srgb";
- case Format::eR8G8B8A8Unorm : return "R8G8B8A8Unorm";
- case Format::eR8G8B8A8Snorm : return "R8G8B8A8Snorm";
- case Format::eR8G8B8A8Uscaled : return "R8G8B8A8Uscaled";
- case Format::eR8G8B8A8Sscaled : return "R8G8B8A8Sscaled";
- case Format::eR8G8B8A8Uint : return "R8G8B8A8Uint";
- case Format::eR8G8B8A8Sint : return "R8G8B8A8Sint";
- case Format::eR8G8B8A8Srgb : return "R8G8B8A8Srgb";
- case Format::eB8G8R8A8Unorm : return "B8G8R8A8Unorm";
- case Format::eB8G8R8A8Snorm : return "B8G8R8A8Snorm";
- case Format::eB8G8R8A8Uscaled : return "B8G8R8A8Uscaled";
- case Format::eB8G8R8A8Sscaled : return "B8G8R8A8Sscaled";
- case Format::eB8G8R8A8Uint : return "B8G8R8A8Uint";
- case Format::eB8G8R8A8Sint : return "B8G8R8A8Sint";
- case Format::eB8G8R8A8Srgb : return "B8G8R8A8Srgb";
- case Format::eA8B8G8R8UnormPack32 : return "A8B8G8R8UnormPack32";
- case Format::eA8B8G8R8SnormPack32 : return "A8B8G8R8SnormPack32";
- case Format::eA8B8G8R8UscaledPack32 : return "A8B8G8R8UscaledPack32";
- case Format::eA8B8G8R8SscaledPack32 : return "A8B8G8R8SscaledPack32";
- case Format::eA8B8G8R8UintPack32 : return "A8B8G8R8UintPack32";
- case Format::eA8B8G8R8SintPack32 : return "A8B8G8R8SintPack32";
- case Format::eA8B8G8R8SrgbPack32 : return "A8B8G8R8SrgbPack32";
- case Format::eA2R10G10B10UnormPack32 : return "A2R10G10B10UnormPack32";
- case Format::eA2R10G10B10SnormPack32 : return "A2R10G10B10SnormPack32";
- case Format::eA2R10G10B10UscaledPack32 : return "A2R10G10B10UscaledPack32";
- case Format::eA2R10G10B10SscaledPack32 : return "A2R10G10B10SscaledPack32";
- case Format::eA2R10G10B10UintPack32 : return "A2R10G10B10UintPack32";
- case Format::eA2R10G10B10SintPack32 : return "A2R10G10B10SintPack32";
- case Format::eA2B10G10R10UnormPack32 : return "A2B10G10R10UnormPack32";
- case Format::eA2B10G10R10SnormPack32 : return "A2B10G10R10SnormPack32";
- case Format::eA2B10G10R10UscaledPack32 : return "A2B10G10R10UscaledPack32";
- case Format::eA2B10G10R10SscaledPack32 : return "A2B10G10R10SscaledPack32";
- case Format::eA2B10G10R10UintPack32 : return "A2B10G10R10UintPack32";
- case Format::eA2B10G10R10SintPack32 : return "A2B10G10R10SintPack32";
- case Format::eR16Unorm : return "R16Unorm";
- case Format::eR16Snorm : return "R16Snorm";
- case Format::eR16Uscaled : return "R16Uscaled";
- case Format::eR16Sscaled : return "R16Sscaled";
- case Format::eR16Uint : return "R16Uint";
- case Format::eR16Sint : return "R16Sint";
- case Format::eR16Sfloat : return "R16Sfloat";
- case Format::eR16G16Unorm : return "R16G16Unorm";
- case Format::eR16G16Snorm : return "R16G16Snorm";
- case Format::eR16G16Uscaled : return "R16G16Uscaled";
- case Format::eR16G16Sscaled : return "R16G16Sscaled";
- case Format::eR16G16Uint : return "R16G16Uint";
- case Format::eR16G16Sint : return "R16G16Sint";
- case Format::eR16G16Sfloat : return "R16G16Sfloat";
- case Format::eR16G16B16Unorm : return "R16G16B16Unorm";
- case Format::eR16G16B16Snorm : return "R16G16B16Snorm";
- case Format::eR16G16B16Uscaled : return "R16G16B16Uscaled";
- case Format::eR16G16B16Sscaled : return "R16G16B16Sscaled";
- case Format::eR16G16B16Uint : return "R16G16B16Uint";
- case Format::eR16G16B16Sint : return "R16G16B16Sint";
- case Format::eR16G16B16Sfloat : return "R16G16B16Sfloat";
- case Format::eR16G16B16A16Unorm : return "R16G16B16A16Unorm";
- case Format::eR16G16B16A16Snorm : return "R16G16B16A16Snorm";
- case Format::eR16G16B16A16Uscaled : return "R16G16B16A16Uscaled";
- case Format::eR16G16B16A16Sscaled : return "R16G16B16A16Sscaled";
- case Format::eR16G16B16A16Uint : return "R16G16B16A16Uint";
- case Format::eR16G16B16A16Sint : return "R16G16B16A16Sint";
- case Format::eR16G16B16A16Sfloat : return "R16G16B16A16Sfloat";
- case Format::eR32Uint : return "R32Uint";
- case Format::eR32Sint : return "R32Sint";
- case Format::eR32Sfloat : return "R32Sfloat";
- case Format::eR32G32Uint : return "R32G32Uint";
- case Format::eR32G32Sint : return "R32G32Sint";
- case Format::eR32G32Sfloat : return "R32G32Sfloat";
- case Format::eR32G32B32Uint : return "R32G32B32Uint";
- case Format::eR32G32B32Sint : return "R32G32B32Sint";
- case Format::eR32G32B32Sfloat : return "R32G32B32Sfloat";
- case Format::eR32G32B32A32Uint : return "R32G32B32A32Uint";
- case Format::eR32G32B32A32Sint : return "R32G32B32A32Sint";
- case Format::eR32G32B32A32Sfloat : return "R32G32B32A32Sfloat";
- case Format::eR64Uint : return "R64Uint";
- case Format::eR64Sint : return "R64Sint";
- case Format::eR64Sfloat : return "R64Sfloat";
- case Format::eR64G64Uint : return "R64G64Uint";
- case Format::eR64G64Sint : return "R64G64Sint";
- case Format::eR64G64Sfloat : return "R64G64Sfloat";
- case Format::eR64G64B64Uint : return "R64G64B64Uint";
- case Format::eR64G64B64Sint : return "R64G64B64Sint";
- case Format::eR64G64B64Sfloat : return "R64G64B64Sfloat";
- case Format::eR64G64B64A64Uint : return "R64G64B64A64Uint";
- case Format::eR64G64B64A64Sint : return "R64G64B64A64Sint";
- case Format::eR64G64B64A64Sfloat : return "R64G64B64A64Sfloat";
- case Format::eB10G11R11UfloatPack32 : return "B10G11R11UfloatPack32";
- case Format::eE5B9G9R9UfloatPack32 : return "E5B9G9R9UfloatPack32";
- case Format::eD16Unorm : return "D16Unorm";
- case Format::eX8D24UnormPack32 : return "X8D24UnormPack32";
- case Format::eD32Sfloat : return "D32Sfloat";
- case Format::eS8Uint : return "S8Uint";
- case Format::eD16UnormS8Uint : return "D16UnormS8Uint";
- case Format::eD24UnormS8Uint : return "D24UnormS8Uint";
- case Format::eD32SfloatS8Uint : return "D32SfloatS8Uint";
- case Format::eBc1RgbUnormBlock : return "Bc1RgbUnormBlock";
- case Format::eBc1RgbSrgbBlock : return "Bc1RgbSrgbBlock";
- case Format::eBc1RgbaUnormBlock : return "Bc1RgbaUnormBlock";
- case Format::eBc1RgbaSrgbBlock : return "Bc1RgbaSrgbBlock";
- case Format::eBc2UnormBlock : return "Bc2UnormBlock";
- case Format::eBc2SrgbBlock : return "Bc2SrgbBlock";
- case Format::eBc3UnormBlock : return "Bc3UnormBlock";
- case Format::eBc3SrgbBlock : return "Bc3SrgbBlock";
- case Format::eBc4UnormBlock : return "Bc4UnormBlock";
- case Format::eBc4SnormBlock : return "Bc4SnormBlock";
- case Format::eBc5UnormBlock : return "Bc5UnormBlock";
- case Format::eBc5SnormBlock : return "Bc5SnormBlock";
- case Format::eBc6HUfloatBlock : return "Bc6HUfloatBlock";
- case Format::eBc6HSfloatBlock : return "Bc6HSfloatBlock";
- case Format::eBc7UnormBlock : return "Bc7UnormBlock";
- case Format::eBc7SrgbBlock : return "Bc7SrgbBlock";
- case Format::eEtc2R8G8B8UnormBlock : return "Etc2R8G8B8UnormBlock";
- case Format::eEtc2R8G8B8SrgbBlock : return "Etc2R8G8B8SrgbBlock";
- case Format::eEtc2R8G8B8A1UnormBlock : return "Etc2R8G8B8A1UnormBlock";
- case Format::eEtc2R8G8B8A1SrgbBlock : return "Etc2R8G8B8A1SrgbBlock";
- case Format::eEtc2R8G8B8A8UnormBlock : return "Etc2R8G8B8A8UnormBlock";
- case Format::eEtc2R8G8B8A8SrgbBlock : return "Etc2R8G8B8A8SrgbBlock";
- case Format::eEacR11UnormBlock : return "EacR11UnormBlock";
- case Format::eEacR11SnormBlock : return "EacR11SnormBlock";
- case Format::eEacR11G11UnormBlock : return "EacR11G11UnormBlock";
- case Format::eEacR11G11SnormBlock : return "EacR11G11SnormBlock";
- case Format::eAstc4x4UnormBlock : return "Astc4x4UnormBlock";
- case Format::eAstc4x4SrgbBlock : return "Astc4x4SrgbBlock";
- case Format::eAstc5x4UnormBlock : return "Astc5x4UnormBlock";
- case Format::eAstc5x4SrgbBlock : return "Astc5x4SrgbBlock";
- case Format::eAstc5x5UnormBlock : return "Astc5x5UnormBlock";
- case Format::eAstc5x5SrgbBlock : return "Astc5x5SrgbBlock";
- case Format::eAstc6x5UnormBlock : return "Astc6x5UnormBlock";
- case Format::eAstc6x5SrgbBlock : return "Astc6x5SrgbBlock";
- case Format::eAstc6x6UnormBlock : return "Astc6x6UnormBlock";
- case Format::eAstc6x6SrgbBlock : return "Astc6x6SrgbBlock";
- case Format::eAstc8x5UnormBlock : return "Astc8x5UnormBlock";
- case Format::eAstc8x5SrgbBlock : return "Astc8x5SrgbBlock";
- case Format::eAstc8x6UnormBlock : return "Astc8x6UnormBlock";
- case Format::eAstc8x6SrgbBlock : return "Astc8x6SrgbBlock";
- case Format::eAstc8x8UnormBlock : return "Astc8x8UnormBlock";
- case Format::eAstc8x8SrgbBlock : return "Astc8x8SrgbBlock";
- case Format::eAstc10x5UnormBlock : return "Astc10x5UnormBlock";
- case Format::eAstc10x5SrgbBlock : return "Astc10x5SrgbBlock";
- case Format::eAstc10x6UnormBlock : return "Astc10x6UnormBlock";
- case Format::eAstc10x6SrgbBlock : return "Astc10x6SrgbBlock";
- case Format::eAstc10x8UnormBlock : return "Astc10x8UnormBlock";
- case Format::eAstc10x8SrgbBlock : return "Astc10x8SrgbBlock";
- case Format::eAstc10x10UnormBlock : return "Astc10x10UnormBlock";
- case Format::eAstc10x10SrgbBlock : return "Astc10x10SrgbBlock";
- case Format::eAstc12x10UnormBlock : return "Astc12x10UnormBlock";
- case Format::eAstc12x10SrgbBlock : return "Astc12x10SrgbBlock";
- case Format::eAstc12x12UnormBlock : return "Astc12x12UnormBlock";
- case Format::eAstc12x12SrgbBlock : return "Astc12x12SrgbBlock";
- case Format::eG8B8G8R8422Unorm : return "G8B8G8R8422Unorm";
- case Format::eB8G8R8G8422Unorm : return "B8G8R8G8422Unorm";
- case Format::eG8B8R83Plane420Unorm : return "G8B8R83Plane420Unorm";
- case Format::eG8B8R82Plane420Unorm : return "G8B8R82Plane420Unorm";
- case Format::eG8B8R83Plane422Unorm : return "G8B8R83Plane422Unorm";
- case Format::eG8B8R82Plane422Unorm : return "G8B8R82Plane422Unorm";
- case Format::eG8B8R83Plane444Unorm : return "G8B8R83Plane444Unorm";
- case Format::eR10X6UnormPack16 : return "R10X6UnormPack16";
- case Format::eR10X6G10X6Unorm2Pack16 : return "R10X6G10X6Unorm2Pack16";
- case Format::eR10X6G10X6B10X6A10X6Unorm4Pack16 : return "R10X6G10X6B10X6A10X6Unorm4Pack16";
- case Format::eG10X6B10X6G10X6R10X6422Unorm4Pack16 : return "G10X6B10X6G10X6R10X6422Unorm4Pack16";
- case Format::eB10X6G10X6R10X6G10X6422Unorm4Pack16 : return "B10X6G10X6R10X6G10X6422Unorm4Pack16";
- case Format::eG10X6B10X6R10X63Plane420Unorm3Pack16 : return "G10X6B10X6R10X63Plane420Unorm3Pack16";
- case Format::eG10X6B10X6R10X62Plane420Unorm3Pack16 : return "G10X6B10X6R10X62Plane420Unorm3Pack16";
- case Format::eG10X6B10X6R10X63Plane422Unorm3Pack16 : return "G10X6B10X6R10X63Plane422Unorm3Pack16";
- case Format::eG10X6B10X6R10X62Plane422Unorm3Pack16 : return "G10X6B10X6R10X62Plane422Unorm3Pack16";
- case Format::eG10X6B10X6R10X63Plane444Unorm3Pack16 : return "G10X6B10X6R10X63Plane444Unorm3Pack16";
- case Format::eR12X4UnormPack16 : return "R12X4UnormPack16";
- case Format::eR12X4G12X4Unorm2Pack16 : return "R12X4G12X4Unorm2Pack16";
- case Format::eR12X4G12X4B12X4A12X4Unorm4Pack16 : return "R12X4G12X4B12X4A12X4Unorm4Pack16";
- case Format::eG12X4B12X4G12X4R12X4422Unorm4Pack16 : return "G12X4B12X4G12X4R12X4422Unorm4Pack16";
- case Format::eB12X4G12X4R12X4G12X4422Unorm4Pack16 : return "B12X4G12X4R12X4G12X4422Unorm4Pack16";
- case Format::eG12X4B12X4R12X43Plane420Unorm3Pack16 : return "G12X4B12X4R12X43Plane420Unorm3Pack16";
- case Format::eG12X4B12X4R12X42Plane420Unorm3Pack16 : return "G12X4B12X4R12X42Plane420Unorm3Pack16";
- case Format::eG12X4B12X4R12X43Plane422Unorm3Pack16 : return "G12X4B12X4R12X43Plane422Unorm3Pack16";
- case Format::eG12X4B12X4R12X42Plane422Unorm3Pack16 : return "G12X4B12X4R12X42Plane422Unorm3Pack16";
- case Format::eG12X4B12X4R12X43Plane444Unorm3Pack16 : return "G12X4B12X4R12X43Plane444Unorm3Pack16";
- case Format::eG16B16G16R16422Unorm : return "G16B16G16R16422Unorm";
- case Format::eB16G16R16G16422Unorm : return "B16G16R16G16422Unorm";
- case Format::eG16B16R163Plane420Unorm : return "G16B16R163Plane420Unorm";
- case Format::eG16B16R162Plane420Unorm : return "G16B16R162Plane420Unorm";
- case Format::eG16B16R163Plane422Unorm : return "G16B16R163Plane422Unorm";
- case Format::eG16B16R162Plane422Unorm : return "G16B16R162Plane422Unorm";
- case Format::eG16B16R163Plane444Unorm : return "G16B16R163Plane444Unorm";
- case Format::ePvrtc12BppUnormBlockIMG : return "Pvrtc12BppUnormBlockIMG";
- case Format::ePvrtc14BppUnormBlockIMG : return "Pvrtc14BppUnormBlockIMG";
- case Format::ePvrtc22BppUnormBlockIMG : return "Pvrtc22BppUnormBlockIMG";
- case Format::ePvrtc24BppUnormBlockIMG : return "Pvrtc24BppUnormBlockIMG";
- case Format::ePvrtc12BppSrgbBlockIMG : return "Pvrtc12BppSrgbBlockIMG";
- case Format::ePvrtc14BppSrgbBlockIMG : return "Pvrtc14BppSrgbBlockIMG";
- case Format::ePvrtc22BppSrgbBlockIMG : return "Pvrtc22BppSrgbBlockIMG";
- case Format::ePvrtc24BppSrgbBlockIMG : return "Pvrtc24BppSrgbBlockIMG";
- case Format::eAstc4x4SfloatBlockEXT : return "Astc4x4SfloatBlockEXT";
- case Format::eAstc5x4SfloatBlockEXT : return "Astc5x4SfloatBlockEXT";
- case Format::eAstc5x5SfloatBlockEXT : return "Astc5x5SfloatBlockEXT";
- case Format::eAstc6x5SfloatBlockEXT : return "Astc6x5SfloatBlockEXT";
- case Format::eAstc6x6SfloatBlockEXT : return "Astc6x6SfloatBlockEXT";
- case Format::eAstc8x5SfloatBlockEXT : return "Astc8x5SfloatBlockEXT";
- case Format::eAstc8x6SfloatBlockEXT : return "Astc8x6SfloatBlockEXT";
- case Format::eAstc8x8SfloatBlockEXT : return "Astc8x8SfloatBlockEXT";
- case Format::eAstc10x5SfloatBlockEXT : return "Astc10x5SfloatBlockEXT";
- case Format::eAstc10x6SfloatBlockEXT : return "Astc10x6SfloatBlockEXT";
- case Format::eAstc10x8SfloatBlockEXT : return "Astc10x8SfloatBlockEXT";
- case Format::eAstc10x10SfloatBlockEXT : return "Astc10x10SfloatBlockEXT";
- case Format::eAstc12x10SfloatBlockEXT : return "Astc12x10SfloatBlockEXT";
- case Format::eAstc12x12SfloatBlockEXT : return "Astc12x12SfloatBlockEXT";
- case Format::eA4R4G4B4UnormPack16EXT : return "A4R4G4B4UnormPack16EXT";
- case Format::eA4B4G4R4UnormPack16EXT : return "A4B4G4R4UnormPack16EXT";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
- }
- }
+ //=== VK_KHR_deferred_host_operations ===
- enum class FormatFeatureFlagBits : VkFormatFeatureFlags
- {
- eSampledImage = VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT,
- eStorageImage = VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT,
- eStorageImageAtomic = VK_FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT,
- eUniformTexelBuffer = VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT,
- eStorageTexelBuffer = VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT,
- eStorageTexelBufferAtomic = VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_ATOMIC_BIT,
- eVertexBuffer = VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT,
- eColorAttachment = VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT,
- eColorAttachmentBlend = VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT,
- eDepthStencilAttachment = VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT,
- eBlitSrc = VK_FORMAT_FEATURE_BLIT_SRC_BIT,
- eBlitDst = VK_FORMAT_FEATURE_BLIT_DST_BIT,
- eSampledImageFilterLinear = VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT,
- eTransferSrc = VK_FORMAT_FEATURE_TRANSFER_SRC_BIT,
- eTransferDst = VK_FORMAT_FEATURE_TRANSFER_DST_BIT,
- eMidpointChromaSamples = VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT,
- eSampledImageYcbcrConversionLinearFilter = VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT,
- eSampledImageYcbcrConversionSeparateReconstructionFilter = VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT,
- eSampledImageYcbcrConversionChromaReconstructionExplicit = VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT,
- eSampledImageYcbcrConversionChromaReconstructionExplicitForceable = VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT,
- eDisjoint = VK_FORMAT_FEATURE_DISJOINT_BIT,
- eCositedChromaSamples = VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT,
- eSampledImageFilterMinmax = VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT,
- eSampledImageFilterCubicIMG = VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG,
- eAccelerationStructureVertexBufferKHR = VK_FORMAT_FEATURE_ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR,
- eFragmentDensityMapEXT = VK_FORMAT_FEATURE_FRAGMENT_DENSITY_MAP_BIT_EXT,
- eFragmentShadingRateAttachmentKHR = VK_FORMAT_FEATURE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR,
- eCositedChromaSamplesKHR = VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT_KHR,
- eDisjointKHR = VK_FORMAT_FEATURE_DISJOINT_BIT_KHR,
- eMidpointChromaSamplesKHR = VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT_KHR,
- eSampledImageFilterCubicEXT = VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT,
- eSampledImageFilterMinmaxEXT = VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT_EXT,
- eSampledImageYcbcrConversionChromaReconstructionExplicitKHR = VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT_KHR,
- eSampledImageYcbcrConversionChromaReconstructionExplicitForceableKHR = VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT_KHR,
- eSampledImageYcbcrConversionLinearFilterKHR = VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT_KHR,
- eSampledImageYcbcrConversionSeparateReconstructionFilterKHR = VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT_KHR,
- eTransferDstKHR = VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR,
- eTransferSrcKHR = VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
- };
-
- VULKAN_HPP_INLINE std::string to_string( FormatFeatureFlagBits value )
- {
- switch ( value )
- {
- case FormatFeatureFlagBits::eSampledImage : return "SampledImage";
- case FormatFeatureFlagBits::eStorageImage : return "StorageImage";
- case FormatFeatureFlagBits::eStorageImageAtomic : return "StorageImageAtomic";
- case FormatFeatureFlagBits::eUniformTexelBuffer : return "UniformTexelBuffer";
- case FormatFeatureFlagBits::eStorageTexelBuffer : return "StorageTexelBuffer";
- case FormatFeatureFlagBits::eStorageTexelBufferAtomic : return "StorageTexelBufferAtomic";
- case FormatFeatureFlagBits::eVertexBuffer : return "VertexBuffer";
- case FormatFeatureFlagBits::eColorAttachment : return "ColorAttachment";
- case FormatFeatureFlagBits::eColorAttachmentBlend : return "ColorAttachmentBlend";
- case FormatFeatureFlagBits::eDepthStencilAttachment : return "DepthStencilAttachment";
- case FormatFeatureFlagBits::eBlitSrc : return "BlitSrc";
- case FormatFeatureFlagBits::eBlitDst : return "BlitDst";
- case FormatFeatureFlagBits::eSampledImageFilterLinear : return "SampledImageFilterLinear";
- case FormatFeatureFlagBits::eTransferSrc : return "TransferSrc";
- case FormatFeatureFlagBits::eTransferDst : return "TransferDst";
- case FormatFeatureFlagBits::eMidpointChromaSamples : return "MidpointChromaSamples";
- case FormatFeatureFlagBits::eSampledImageYcbcrConversionLinearFilter : return "SampledImageYcbcrConversionLinearFilter";
- case FormatFeatureFlagBits::eSampledImageYcbcrConversionSeparateReconstructionFilter : return "SampledImageYcbcrConversionSeparateReconstructionFilter";
- case FormatFeatureFlagBits::eSampledImageYcbcrConversionChromaReconstructionExplicit : return "SampledImageYcbcrConversionChromaReconstructionExplicit";
- case FormatFeatureFlagBits::eSampledImageYcbcrConversionChromaReconstructionExplicitForceable : return "SampledImageYcbcrConversionChromaReconstructionExplicitForceable";
- case FormatFeatureFlagBits::eDisjoint : return "Disjoint";
- case FormatFeatureFlagBits::eCositedChromaSamples : return "CositedChromaSamples";
- case FormatFeatureFlagBits::eSampledImageFilterMinmax : return "SampledImageFilterMinmax";
- case FormatFeatureFlagBits::eSampledImageFilterCubicIMG : return "SampledImageFilterCubicIMG";
- case FormatFeatureFlagBits::eAccelerationStructureVertexBufferKHR : return "AccelerationStructureVertexBufferKHR";
- case FormatFeatureFlagBits::eFragmentDensityMapEXT : return "FragmentDensityMapEXT";
- case FormatFeatureFlagBits::eFragmentShadingRateAttachmentKHR : return "FragmentShadingRateAttachmentKHR";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
- }
- }
-
- enum class FragmentShadingRateCombinerOpKHR
- {
- eKeep = VK_FRAGMENT_SHADING_RATE_COMBINER_OP_KEEP_KHR,
- eReplace = VK_FRAGMENT_SHADING_RATE_COMBINER_OP_REPLACE_KHR,
- eMin = VK_FRAGMENT_SHADING_RATE_COMBINER_OP_MIN_KHR,
- eMax = VK_FRAGMENT_SHADING_RATE_COMBINER_OP_MAX_KHR,
- eMul = VK_FRAGMENT_SHADING_RATE_COMBINER_OP_MUL_KHR
- };
-
- VULKAN_HPP_INLINE std::string to_string( FragmentShadingRateCombinerOpKHR value )
- {
- switch ( value )
+ VkResult vkCreateDeferredOperationKHR( VkDevice device,
+ const VkAllocationCallbacks * pAllocator,
+ VkDeferredOperationKHR * pDeferredOperation ) const VULKAN_HPP_NOEXCEPT
{
- case FragmentShadingRateCombinerOpKHR::eKeep : return "Keep";
- case FragmentShadingRateCombinerOpKHR::eReplace : return "Replace";
- case FragmentShadingRateCombinerOpKHR::eMin : return "Min";
- case FragmentShadingRateCombinerOpKHR::eMax : return "Max";
- case FragmentShadingRateCombinerOpKHR::eMul : return "Mul";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
- }
- }
-
- enum class FragmentShadingRateNV
- {
- e1InvocationPerPixel = VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_PIXEL_NV,
- e1InvocationPer1X2Pixels = VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_1X2_PIXELS_NV,
- e1InvocationPer2X1Pixels = VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X1_PIXELS_NV,
- e1InvocationPer2X2Pixels = VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X2_PIXELS_NV,
- e1InvocationPer2X4Pixels = VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X4_PIXELS_NV,
- e1InvocationPer4X2Pixels = VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_4X2_PIXELS_NV,
- e1InvocationPer4X4Pixels = VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_4X4_PIXELS_NV,
- e2InvocationsPerPixel = VK_FRAGMENT_SHADING_RATE_2_INVOCATIONS_PER_PIXEL_NV,
- e4InvocationsPerPixel = VK_FRAGMENT_SHADING_RATE_4_INVOCATIONS_PER_PIXEL_NV,
- e8InvocationsPerPixel = VK_FRAGMENT_SHADING_RATE_8_INVOCATIONS_PER_PIXEL_NV,
- e16InvocationsPerPixel = VK_FRAGMENT_SHADING_RATE_16_INVOCATIONS_PER_PIXEL_NV,
- eNoInvocations = VK_FRAGMENT_SHADING_RATE_NO_INVOCATIONS_NV
- };
-
- VULKAN_HPP_INLINE std::string to_string( FragmentShadingRateNV value )
- {
- switch ( value )
- {
- case FragmentShadingRateNV::e1InvocationPerPixel : return "1InvocationPerPixel";
- case FragmentShadingRateNV::e1InvocationPer1X2Pixels : return "1InvocationPer1X2Pixels";
- case FragmentShadingRateNV::e1InvocationPer2X1Pixels : return "1InvocationPer2X1Pixels";
- case FragmentShadingRateNV::e1InvocationPer2X2Pixels : return "1InvocationPer2X2Pixels";
- case FragmentShadingRateNV::e1InvocationPer2X4Pixels : return "1InvocationPer2X4Pixels";
- case FragmentShadingRateNV::e1InvocationPer4X2Pixels : return "1InvocationPer4X2Pixels";
- case FragmentShadingRateNV::e1InvocationPer4X4Pixels : return "1InvocationPer4X4Pixels";
- case FragmentShadingRateNV::e2InvocationsPerPixel : return "2InvocationsPerPixel";
- case FragmentShadingRateNV::e4InvocationsPerPixel : return "4InvocationsPerPixel";
- case FragmentShadingRateNV::e8InvocationsPerPixel : return "8InvocationsPerPixel";
- case FragmentShadingRateNV::e16InvocationsPerPixel : return "16InvocationsPerPixel";
- case FragmentShadingRateNV::eNoInvocations : return "NoInvocations";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCreateDeferredOperationKHR( device, pAllocator, pDeferredOperation );
}
- }
-
- enum class FragmentShadingRateTypeNV
- {
- eFragmentSize = VK_FRAGMENT_SHADING_RATE_TYPE_FRAGMENT_SIZE_NV,
- eEnums = VK_FRAGMENT_SHADING_RATE_TYPE_ENUMS_NV
- };
- VULKAN_HPP_INLINE std::string to_string( FragmentShadingRateTypeNV value )
- {
- switch ( value )
+ void vkDestroyDeferredOperationKHR( VkDevice device,
+ VkDeferredOperationKHR operation,
+ const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT
{
- case FragmentShadingRateTypeNV::eFragmentSize : return "FragmentSize";
- case FragmentShadingRateTypeNV::eEnums : return "Enums";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkDestroyDeferredOperationKHR( device, operation, pAllocator );
}
- }
-
- enum class FramebufferCreateFlagBits : VkFramebufferCreateFlags
- {
- eImageless = VK_FRAMEBUFFER_CREATE_IMAGELESS_BIT,
- eImagelessKHR = VK_FRAMEBUFFER_CREATE_IMAGELESS_BIT_KHR
- };
- VULKAN_HPP_INLINE std::string to_string( FramebufferCreateFlagBits value )
- {
- switch ( value )
+ uint32_t vkGetDeferredOperationMaxConcurrencyKHR( VkDevice device,
+ VkDeferredOperationKHR operation ) const VULKAN_HPP_NOEXCEPT
{
- case FramebufferCreateFlagBits::eImageless : return "Imageless";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkGetDeferredOperationMaxConcurrencyKHR( device, operation );
}
- }
-
- enum class FrontFace
- {
- eCounterClockwise = VK_FRONT_FACE_COUNTER_CLOCKWISE,
- eClockwise = VK_FRONT_FACE_CLOCKWISE
- };
- VULKAN_HPP_INLINE std::string to_string( FrontFace value )
- {
- switch ( value )
+ VkResult vkGetDeferredOperationResultKHR( VkDevice device,
+ VkDeferredOperationKHR operation ) const VULKAN_HPP_NOEXCEPT
{
- case FrontFace::eCounterClockwise : return "CounterClockwise";
- case FrontFace::eClockwise : return "Clockwise";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkGetDeferredOperationResultKHR( device, operation );
}
- }
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- enum class FullScreenExclusiveEXT
- {
- eDefault = VK_FULL_SCREEN_EXCLUSIVE_DEFAULT_EXT,
- eAllowed = VK_FULL_SCREEN_EXCLUSIVE_ALLOWED_EXT,
- eDisallowed = VK_FULL_SCREEN_EXCLUSIVE_DISALLOWED_EXT,
- eApplicationControlled = VK_FULL_SCREEN_EXCLUSIVE_APPLICATION_CONTROLLED_EXT
- };
-
- VULKAN_HPP_INLINE std::string to_string( FullScreenExclusiveEXT value )
- {
- switch ( value )
+ VkResult vkDeferredOperationJoinKHR( VkDevice device, VkDeferredOperationKHR operation ) const VULKAN_HPP_NOEXCEPT
{
- case FullScreenExclusiveEXT::eDefault : return "Default";
- case FullScreenExclusiveEXT::eAllowed : return "Allowed";
- case FullScreenExclusiveEXT::eDisallowed : return "Disallowed";
- case FullScreenExclusiveEXT::eApplicationControlled : return "ApplicationControlled";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkDeferredOperationJoinKHR( device, operation );
}
- }
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
- enum class GeometryFlagBitsKHR : VkGeometryFlagsKHR
- {
- eOpaque = VK_GEOMETRY_OPAQUE_BIT_KHR,
- eNoDuplicateAnyHitInvocation = VK_GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_KHR
- };
- using GeometryFlagBitsNV = GeometryFlagBitsKHR;
+ //=== VK_KHR_pipeline_executable_properties ===
- VULKAN_HPP_INLINE std::string to_string( GeometryFlagBitsKHR value )
- {
- switch ( value )
+ VkResult
+ vkGetPipelineExecutablePropertiesKHR( VkDevice device,
+ const VkPipelineInfoKHR * pPipelineInfo,
+ uint32_t * pExecutableCount,
+ VkPipelineExecutablePropertiesKHR * pProperties ) const VULKAN_HPP_NOEXCEPT
{
- case GeometryFlagBitsKHR::eOpaque : return "Opaque";
- case GeometryFlagBitsKHR::eNoDuplicateAnyHitInvocation : return "NoDuplicateAnyHitInvocation";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkGetPipelineExecutablePropertiesKHR( device, pPipelineInfo, pExecutableCount, pProperties );
}
- }
- enum class GeometryInstanceFlagBitsKHR : VkGeometryInstanceFlagsKHR
- {
- eTriangleFacingCullDisable = VK_GEOMETRY_INSTANCE_TRIANGLE_FACING_CULL_DISABLE_BIT_KHR,
- eTriangleFrontCounterclockwise = VK_GEOMETRY_INSTANCE_TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_KHR,
- eForceOpaque = VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_KHR,
- eForceNoOpaque = VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_KHR,
- eTriangleCullDisable = VK_GEOMETRY_INSTANCE_TRIANGLE_CULL_DISABLE_BIT_NV
- };
- using GeometryInstanceFlagBitsNV = GeometryInstanceFlagBitsKHR;
-
- VULKAN_HPP_INLINE std::string to_string( GeometryInstanceFlagBitsKHR value )
- {
- switch ( value )
+ VkResult
+ vkGetPipelineExecutableStatisticsKHR( VkDevice device,
+ const VkPipelineExecutableInfoKHR * pExecutableInfo,
+ uint32_t * pStatisticCount,
+ VkPipelineExecutableStatisticKHR * pStatistics ) const VULKAN_HPP_NOEXCEPT
{
- case GeometryInstanceFlagBitsKHR::eTriangleFacingCullDisable : return "TriangleFacingCullDisable";
- case GeometryInstanceFlagBitsKHR::eTriangleFrontCounterclockwise : return "TriangleFrontCounterclockwise";
- case GeometryInstanceFlagBitsKHR::eForceOpaque : return "ForceOpaque";
- case GeometryInstanceFlagBitsKHR::eForceNoOpaque : return "ForceNoOpaque";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkGetPipelineExecutableStatisticsKHR( device, pExecutableInfo, pStatisticCount, pStatistics );
}
- }
- enum class GeometryTypeKHR
- {
- eTriangles = VK_GEOMETRY_TYPE_TRIANGLES_KHR,
- eAabbs = VK_GEOMETRY_TYPE_AABBS_KHR,
- eInstances = VK_GEOMETRY_TYPE_INSTANCES_KHR
- };
- using GeometryTypeNV = GeometryTypeKHR;
-
- VULKAN_HPP_INLINE std::string to_string( GeometryTypeKHR value )
- {
- switch ( value )
+ VkResult vkGetPipelineExecutableInternalRepresentationsKHR(
+ VkDevice device,
+ const VkPipelineExecutableInfoKHR * pExecutableInfo,
+ uint32_t * pInternalRepresentationCount,
+ VkPipelineExecutableInternalRepresentationKHR * pInternalRepresentations ) const VULKAN_HPP_NOEXCEPT
{
- case GeometryTypeKHR::eTriangles : return "Triangles";
- case GeometryTypeKHR::eAabbs : return "Aabbs";
- case GeometryTypeKHR::eInstances : return "Instances";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
- }
- }
-
- enum class ImageAspectFlagBits : VkImageAspectFlags
- {
- eColor = VK_IMAGE_ASPECT_COLOR_BIT,
- eDepth = VK_IMAGE_ASPECT_DEPTH_BIT,
- eStencil = VK_IMAGE_ASPECT_STENCIL_BIT,
- eMetadata = VK_IMAGE_ASPECT_METADATA_BIT,
- ePlane0 = VK_IMAGE_ASPECT_PLANE_0_BIT,
- ePlane1 = VK_IMAGE_ASPECT_PLANE_1_BIT,
- ePlane2 = VK_IMAGE_ASPECT_PLANE_2_BIT,
- eMemoryPlane0EXT = VK_IMAGE_ASPECT_MEMORY_PLANE_0_BIT_EXT,
- eMemoryPlane1EXT = VK_IMAGE_ASPECT_MEMORY_PLANE_1_BIT_EXT,
- eMemoryPlane2EXT = VK_IMAGE_ASPECT_MEMORY_PLANE_2_BIT_EXT,
- eMemoryPlane3EXT = VK_IMAGE_ASPECT_MEMORY_PLANE_3_BIT_EXT,
- ePlane0KHR = VK_IMAGE_ASPECT_PLANE_0_BIT_KHR,
- ePlane1KHR = VK_IMAGE_ASPECT_PLANE_1_BIT_KHR,
- ePlane2KHR = VK_IMAGE_ASPECT_PLANE_2_BIT_KHR
- };
-
- VULKAN_HPP_INLINE std::string to_string( ImageAspectFlagBits value )
- {
- switch ( value )
- {
- case ImageAspectFlagBits::eColor : return "Color";
- case ImageAspectFlagBits::eDepth : return "Depth";
- case ImageAspectFlagBits::eStencil : return "Stencil";
- case ImageAspectFlagBits::eMetadata : return "Metadata";
- case ImageAspectFlagBits::ePlane0 : return "Plane0";
- case ImageAspectFlagBits::ePlane1 : return "Plane1";
- case ImageAspectFlagBits::ePlane2 : return "Plane2";
- case ImageAspectFlagBits::eMemoryPlane0EXT : return "MemoryPlane0EXT";
- case ImageAspectFlagBits::eMemoryPlane1EXT : return "MemoryPlane1EXT";
- case ImageAspectFlagBits::eMemoryPlane2EXT : return "MemoryPlane2EXT";
- case ImageAspectFlagBits::eMemoryPlane3EXT : return "MemoryPlane3EXT";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
- }
- }
-
- enum class ImageCreateFlagBits : VkImageCreateFlags
- {
- eSparseBinding = VK_IMAGE_CREATE_SPARSE_BINDING_BIT,
- eSparseResidency = VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT,
- eSparseAliased = VK_IMAGE_CREATE_SPARSE_ALIASED_BIT,
- eMutableFormat = VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT,
- eCubeCompatible = VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT,
- eAlias = VK_IMAGE_CREATE_ALIAS_BIT,
- eSplitInstanceBindRegions = VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT,
- e2DArrayCompatible = VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT,
- eBlockTexelViewCompatible = VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT,
- eExtendedUsage = VK_IMAGE_CREATE_EXTENDED_USAGE_BIT,
- eProtected = VK_IMAGE_CREATE_PROTECTED_BIT,
- eDisjoint = VK_IMAGE_CREATE_DISJOINT_BIT,
- eCornerSampledNV = VK_IMAGE_CREATE_CORNER_SAMPLED_BIT_NV,
- eSampleLocationsCompatibleDepthEXT = VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT,
- eSubsampledEXT = VK_IMAGE_CREATE_SUBSAMPLED_BIT_EXT,
- e2DArrayCompatibleKHR = VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT_KHR,
- eAliasKHR = VK_IMAGE_CREATE_ALIAS_BIT_KHR,
- eBlockTexelViewCompatibleKHR = VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT_KHR,
- eDisjointKHR = VK_IMAGE_CREATE_DISJOINT_BIT_KHR,
- eExtendedUsageKHR = VK_IMAGE_CREATE_EXTENDED_USAGE_BIT_KHR,
- eSplitInstanceBindRegionsKHR = VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR
- };
-
- VULKAN_HPP_INLINE std::string to_string( ImageCreateFlagBits value )
- {
- switch ( value )
- {
- case ImageCreateFlagBits::eSparseBinding : return "SparseBinding";
- case ImageCreateFlagBits::eSparseResidency : return "SparseResidency";
- case ImageCreateFlagBits::eSparseAliased : return "SparseAliased";
- case ImageCreateFlagBits::eMutableFormat : return "MutableFormat";
- case ImageCreateFlagBits::eCubeCompatible : return "CubeCompatible";
- case ImageCreateFlagBits::eAlias : return "Alias";
- case ImageCreateFlagBits::eSplitInstanceBindRegions : return "SplitInstanceBindRegions";
- case ImageCreateFlagBits::e2DArrayCompatible : return "2DArrayCompatible";
- case ImageCreateFlagBits::eBlockTexelViewCompatible : return "BlockTexelViewCompatible";
- case ImageCreateFlagBits::eExtendedUsage : return "ExtendedUsage";
- case ImageCreateFlagBits::eProtected : return "Protected";
- case ImageCreateFlagBits::eDisjoint : return "Disjoint";
- case ImageCreateFlagBits::eCornerSampledNV : return "CornerSampledNV";
- case ImageCreateFlagBits::eSampleLocationsCompatibleDepthEXT : return "SampleLocationsCompatibleDepthEXT";
- case ImageCreateFlagBits::eSubsampledEXT : return "SubsampledEXT";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkGetPipelineExecutableInternalRepresentationsKHR(
+ device, pExecutableInfo, pInternalRepresentationCount, pInternalRepresentations );
}
- }
- enum class ImageLayout
- {
- eUndefined = VK_IMAGE_LAYOUT_UNDEFINED,
- eGeneral = VK_IMAGE_LAYOUT_GENERAL,
- eColorAttachmentOptimal = VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL,
- eDepthStencilAttachmentOptimal = VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL,
- eDepthStencilReadOnlyOptimal = VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL,
- eShaderReadOnlyOptimal = VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL,
- eTransferSrcOptimal = VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL,
- eTransferDstOptimal = VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL,
- ePreinitialized = VK_IMAGE_LAYOUT_PREINITIALIZED,
- eDepthReadOnlyStencilAttachmentOptimal = VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL,
- eDepthAttachmentStencilReadOnlyOptimal = VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL,
- eDepthAttachmentOptimal = VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL,
- eDepthReadOnlyOptimal = VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL,
- eStencilAttachmentOptimal = VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL,
- eStencilReadOnlyOptimal = VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL,
- ePresentSrcKHR = VK_IMAGE_LAYOUT_PRESENT_SRC_KHR,
- eSharedPresentKHR = VK_IMAGE_LAYOUT_SHARED_PRESENT_KHR,
- eShadingRateOptimalNV = VK_IMAGE_LAYOUT_SHADING_RATE_OPTIMAL_NV,
- eFragmentDensityMapOptimalEXT = VK_IMAGE_LAYOUT_FRAGMENT_DENSITY_MAP_OPTIMAL_EXT,
- eDepthAttachmentOptimalKHR = VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL_KHR,
- eDepthAttachmentStencilReadOnlyOptimalKHR = VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL_KHR,
- eDepthReadOnlyOptimalKHR = VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL_KHR,
- eDepthReadOnlyStencilAttachmentOptimalKHR = VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL_KHR,
- eFragmentShadingRateAttachmentOptimalKHR = VK_IMAGE_LAYOUT_FRAGMENT_SHADING_RATE_ATTACHMENT_OPTIMAL_KHR,
- eStencilAttachmentOptimalKHR = VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL_KHR,
- eStencilReadOnlyOptimalKHR = VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL_KHR
- };
-
- VULKAN_HPP_INLINE std::string to_string( ImageLayout value )
- {
- switch ( value )
- {
- case ImageLayout::eUndefined : return "Undefined";
- case ImageLayout::eGeneral : return "General";
- case ImageLayout::eColorAttachmentOptimal : return "ColorAttachmentOptimal";
- case ImageLayout::eDepthStencilAttachmentOptimal : return "DepthStencilAttachmentOptimal";
- case ImageLayout::eDepthStencilReadOnlyOptimal : return "DepthStencilReadOnlyOptimal";
- case ImageLayout::eShaderReadOnlyOptimal : return "ShaderReadOnlyOptimal";
- case ImageLayout::eTransferSrcOptimal : return "TransferSrcOptimal";
- case ImageLayout::eTransferDstOptimal : return "TransferDstOptimal";
- case ImageLayout::ePreinitialized : return "Preinitialized";
- case ImageLayout::eDepthReadOnlyStencilAttachmentOptimal : return "DepthReadOnlyStencilAttachmentOptimal";
- case ImageLayout::eDepthAttachmentStencilReadOnlyOptimal : return "DepthAttachmentStencilReadOnlyOptimal";
- case ImageLayout::eDepthAttachmentOptimal : return "DepthAttachmentOptimal";
- case ImageLayout::eDepthReadOnlyOptimal : return "DepthReadOnlyOptimal";
- case ImageLayout::eStencilAttachmentOptimal : return "StencilAttachmentOptimal";
- case ImageLayout::eStencilReadOnlyOptimal : return "StencilReadOnlyOptimal";
- case ImageLayout::ePresentSrcKHR : return "PresentSrcKHR";
- case ImageLayout::eSharedPresentKHR : return "SharedPresentKHR";
- case ImageLayout::eShadingRateOptimalNV : return "ShadingRateOptimalNV";
- case ImageLayout::eFragmentDensityMapOptimalEXT : return "FragmentDensityMapOptimalEXT";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
- }
- }
+ //=== VK_NV_device_generated_commands ===
- enum class ImageTiling
- {
- eOptimal = VK_IMAGE_TILING_OPTIMAL,
- eLinear = VK_IMAGE_TILING_LINEAR,
- eDrmFormatModifierEXT = VK_IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT
- };
-
- VULKAN_HPP_INLINE std::string to_string( ImageTiling value )
- {
- switch ( value )
+ void vkGetGeneratedCommandsMemoryRequirementsNV( VkDevice device,
+ const VkGeneratedCommandsMemoryRequirementsInfoNV * pInfo,
+ VkMemoryRequirements2 * pMemoryRequirements ) const
+ VULKAN_HPP_NOEXCEPT
{
- case ImageTiling::eOptimal : return "Optimal";
- case ImageTiling::eLinear : return "Linear";
- case ImageTiling::eDrmFormatModifierEXT : return "DrmFormatModifierEXT";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkGetGeneratedCommandsMemoryRequirementsNV( device, pInfo, pMemoryRequirements );
}
- }
-
- enum class ImageType
- {
- e1D = VK_IMAGE_TYPE_1D,
- e2D = VK_IMAGE_TYPE_2D,
- e3D = VK_IMAGE_TYPE_3D
- };
- VULKAN_HPP_INLINE std::string to_string( ImageType value )
- {
- switch ( value )
+ void vkCmdPreprocessGeneratedCommandsNV( VkCommandBuffer commandBuffer,
+ const VkGeneratedCommandsInfoNV * pGeneratedCommandsInfo ) const
+ VULKAN_HPP_NOEXCEPT
{
- case ImageType::e1D : return "1D";
- case ImageType::e2D : return "2D";
- case ImageType::e3D : return "3D";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
- }
- }
-
- enum class ImageUsageFlagBits : VkImageUsageFlags
- {
- eTransferSrc = VK_IMAGE_USAGE_TRANSFER_SRC_BIT,
- eTransferDst = VK_IMAGE_USAGE_TRANSFER_DST_BIT,
- eSampled = VK_IMAGE_USAGE_SAMPLED_BIT,
- eStorage = VK_IMAGE_USAGE_STORAGE_BIT,
- eColorAttachment = VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT,
- eDepthStencilAttachment = VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT,
- eTransientAttachment = VK_IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT,
- eInputAttachment = VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT,
- eShadingRateImageNV = VK_IMAGE_USAGE_SHADING_RATE_IMAGE_BIT_NV,
- eFragmentDensityMapEXT = VK_IMAGE_USAGE_FRAGMENT_DENSITY_MAP_BIT_EXT,
- eFragmentShadingRateAttachmentKHR = VK_IMAGE_USAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR
- };
-
- VULKAN_HPP_INLINE std::string to_string( ImageUsageFlagBits value )
- {
- switch ( value )
- {
- case ImageUsageFlagBits::eTransferSrc : return "TransferSrc";
- case ImageUsageFlagBits::eTransferDst : return "TransferDst";
- case ImageUsageFlagBits::eSampled : return "Sampled";
- case ImageUsageFlagBits::eStorage : return "Storage";
- case ImageUsageFlagBits::eColorAttachment : return "ColorAttachment";
- case ImageUsageFlagBits::eDepthStencilAttachment : return "DepthStencilAttachment";
- case ImageUsageFlagBits::eTransientAttachment : return "TransientAttachment";
- case ImageUsageFlagBits::eInputAttachment : return "InputAttachment";
- case ImageUsageFlagBits::eShadingRateImageNV : return "ShadingRateImageNV";
- case ImageUsageFlagBits::eFragmentDensityMapEXT : return "FragmentDensityMapEXT";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCmdPreprocessGeneratedCommandsNV( commandBuffer, pGeneratedCommandsInfo );
}
- }
-
- enum class ImageViewCreateFlagBits : VkImageViewCreateFlags
- {
- eFragmentDensityMapDynamicEXT = VK_IMAGE_VIEW_CREATE_FRAGMENT_DENSITY_MAP_DYNAMIC_BIT_EXT,
- eFragmentDensityMapDeferredEXT = VK_IMAGE_VIEW_CREATE_FRAGMENT_DENSITY_MAP_DEFERRED_BIT_EXT
- };
- VULKAN_HPP_INLINE std::string to_string( ImageViewCreateFlagBits value )
- {
- switch ( value )
+ void vkCmdExecuteGeneratedCommandsNV( VkCommandBuffer commandBuffer,
+ VkBool32 isPreprocessed,
+ const VkGeneratedCommandsInfoNV * pGeneratedCommandsInfo ) const
+ VULKAN_HPP_NOEXCEPT
{
- case ImageViewCreateFlagBits::eFragmentDensityMapDynamicEXT : return "FragmentDensityMapDynamicEXT";
- case ImageViewCreateFlagBits::eFragmentDensityMapDeferredEXT : return "FragmentDensityMapDeferredEXT";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCmdExecuteGeneratedCommandsNV( commandBuffer, isPreprocessed, pGeneratedCommandsInfo );
}
- }
-
- enum class ImageViewType
- {
- e1D = VK_IMAGE_VIEW_TYPE_1D,
- e2D = VK_IMAGE_VIEW_TYPE_2D,
- e3D = VK_IMAGE_VIEW_TYPE_3D,
- eCube = VK_IMAGE_VIEW_TYPE_CUBE,
- e1DArray = VK_IMAGE_VIEW_TYPE_1D_ARRAY,
- e2DArray = VK_IMAGE_VIEW_TYPE_2D_ARRAY,
- eCubeArray = VK_IMAGE_VIEW_TYPE_CUBE_ARRAY
- };
- VULKAN_HPP_INLINE std::string to_string( ImageViewType value )
- {
- switch ( value )
+ void vkCmdBindPipelineShaderGroupNV( VkCommandBuffer commandBuffer,
+ VkPipelineBindPoint pipelineBindPoint,
+ VkPipeline pipeline,
+ uint32_t groupIndex ) const VULKAN_HPP_NOEXCEPT
{
- case ImageViewType::e1D : return "1D";
- case ImageViewType::e2D : return "2D";
- case ImageViewType::e3D : return "3D";
- case ImageViewType::eCube : return "Cube";
- case ImageViewType::e1DArray : return "1DArray";
- case ImageViewType::e2DArray : return "2DArray";
- case ImageViewType::eCubeArray : return "CubeArray";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCmdBindPipelineShaderGroupNV( commandBuffer, pipelineBindPoint, pipeline, groupIndex );
}
- }
- enum class IndexType
- {
- eUint16 = VK_INDEX_TYPE_UINT16,
- eUint32 = VK_INDEX_TYPE_UINT32,
- eNoneKHR = VK_INDEX_TYPE_NONE_KHR,
- eUint8EXT = VK_INDEX_TYPE_UINT8_EXT,
- eNoneNV = VK_INDEX_TYPE_NONE_NV
- };
-
- VULKAN_HPP_INLINE std::string to_string( IndexType value )
- {
- switch ( value )
+ VkResult
+ vkCreateIndirectCommandsLayoutNV( VkDevice device,
+ const VkIndirectCommandsLayoutCreateInfoNV * pCreateInfo,
+ const VkAllocationCallbacks * pAllocator,
+ VkIndirectCommandsLayoutNV * pIndirectCommandsLayout ) const VULKAN_HPP_NOEXCEPT
{
- case IndexType::eUint16 : return "Uint16";
- case IndexType::eUint32 : return "Uint32";
- case IndexType::eNoneKHR : return "NoneKHR";
- case IndexType::eUint8EXT : return "Uint8EXT";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCreateIndirectCommandsLayoutNV( device, pCreateInfo, pAllocator, pIndirectCommandsLayout );
}
- }
-
- enum class IndirectCommandsLayoutUsageFlagBitsNV : VkIndirectCommandsLayoutUsageFlagsNV
- {
- eExplicitPreprocess = VK_INDIRECT_COMMANDS_LAYOUT_USAGE_EXPLICIT_PREPROCESS_BIT_NV,
- eIndexedSequences = VK_INDIRECT_COMMANDS_LAYOUT_USAGE_INDEXED_SEQUENCES_BIT_NV,
- eUnorderedSequences = VK_INDIRECT_COMMANDS_LAYOUT_USAGE_UNORDERED_SEQUENCES_BIT_NV
- };
- VULKAN_HPP_INLINE std::string to_string( IndirectCommandsLayoutUsageFlagBitsNV value )
- {
- switch ( value )
+ void vkDestroyIndirectCommandsLayoutNV( VkDevice device,
+ VkIndirectCommandsLayoutNV indirectCommandsLayout,
+ const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT
{
- case IndirectCommandsLayoutUsageFlagBitsNV::eExplicitPreprocess : return "ExplicitPreprocess";
- case IndirectCommandsLayoutUsageFlagBitsNV::eIndexedSequences : return "IndexedSequences";
- case IndirectCommandsLayoutUsageFlagBitsNV::eUnorderedSequences : return "UnorderedSequences";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkDestroyIndirectCommandsLayoutNV( device, indirectCommandsLayout, pAllocator );
}
- }
- enum class IndirectCommandsTokenTypeNV
- {
- eShaderGroup = VK_INDIRECT_COMMANDS_TOKEN_TYPE_SHADER_GROUP_NV,
- eStateFlags = VK_INDIRECT_COMMANDS_TOKEN_TYPE_STATE_FLAGS_NV,
- eIndexBuffer = VK_INDIRECT_COMMANDS_TOKEN_TYPE_INDEX_BUFFER_NV,
- eVertexBuffer = VK_INDIRECT_COMMANDS_TOKEN_TYPE_VERTEX_BUFFER_NV,
- ePushConstant = VK_INDIRECT_COMMANDS_TOKEN_TYPE_PUSH_CONSTANT_NV,
- eDrawIndexed = VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_INDEXED_NV,
- eDraw = VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_NV,
- eDrawTasks = VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_TASKS_NV
- };
+ //=== VK_EXT_acquire_drm_display ===
- VULKAN_HPP_INLINE std::string to_string( IndirectCommandsTokenTypeNV value )
- {
- switch ( value )
+ VkResult vkAcquireDrmDisplayEXT( VkPhysicalDevice physicalDevice,
+ int32_t drmFd,
+ VkDisplayKHR display ) const VULKAN_HPP_NOEXCEPT
{
- case IndirectCommandsTokenTypeNV::eShaderGroup : return "ShaderGroup";
- case IndirectCommandsTokenTypeNV::eStateFlags : return "StateFlags";
- case IndirectCommandsTokenTypeNV::eIndexBuffer : return "IndexBuffer";
- case IndirectCommandsTokenTypeNV::eVertexBuffer : return "VertexBuffer";
- case IndirectCommandsTokenTypeNV::ePushConstant : return "PushConstant";
- case IndirectCommandsTokenTypeNV::eDrawIndexed : return "DrawIndexed";
- case IndirectCommandsTokenTypeNV::eDraw : return "Draw";
- case IndirectCommandsTokenTypeNV::eDrawTasks : return "DrawTasks";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkAcquireDrmDisplayEXT( physicalDevice, drmFd, display );
}
- }
- enum class IndirectStateFlagBitsNV : VkIndirectStateFlagsNV
- {
- eFlagFrontface = VK_INDIRECT_STATE_FLAG_FRONTFACE_BIT_NV
- };
-
- VULKAN_HPP_INLINE std::string to_string( IndirectStateFlagBitsNV value )
- {
- switch ( value )
+ VkResult vkGetDrmDisplayEXT( VkPhysicalDevice physicalDevice,
+ int32_t drmFd,
+ uint32_t connectorId,
+ VkDisplayKHR * display ) const VULKAN_HPP_NOEXCEPT
{
- case IndirectStateFlagBitsNV::eFlagFrontface : return "FlagFrontface";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkGetDrmDisplayEXT( physicalDevice, drmFd, connectorId, display );
}
- }
-
- enum class InstanceCreateFlagBits
- {};
- VULKAN_HPP_INLINE std::string to_string( InstanceCreateFlagBits )
- {
- return "(void)";
- }
-
- enum class InternalAllocationType
- {
- eExecutable = VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE
- };
+ //=== VK_EXT_private_data ===
- VULKAN_HPP_INLINE std::string to_string( InternalAllocationType value )
- {
- switch ( value )
+ VkResult vkCreatePrivateDataSlotEXT( VkDevice device,
+ const VkPrivateDataSlotCreateInfoEXT * pCreateInfo,
+ const VkAllocationCallbacks * pAllocator,
+ VkPrivateDataSlotEXT * pPrivateDataSlot ) const VULKAN_HPP_NOEXCEPT
{
- case InternalAllocationType::eExecutable : return "Executable";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCreatePrivateDataSlotEXT( device, pCreateInfo, pAllocator, pPrivateDataSlot );
}
- }
-
- enum class LineRasterizationModeEXT
- {
- eDefault = VK_LINE_RASTERIZATION_MODE_DEFAULT_EXT,
- eRectangular = VK_LINE_RASTERIZATION_MODE_RECTANGULAR_EXT,
- eBresenham = VK_LINE_RASTERIZATION_MODE_BRESENHAM_EXT,
- eRectangularSmooth = VK_LINE_RASTERIZATION_MODE_RECTANGULAR_SMOOTH_EXT
- };
- VULKAN_HPP_INLINE std::string to_string( LineRasterizationModeEXT value )
- {
- switch ( value )
+ void vkDestroyPrivateDataSlotEXT( VkDevice device,
+ VkPrivateDataSlotEXT privateDataSlot,
+ const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT
{
- case LineRasterizationModeEXT::eDefault : return "Default";
- case LineRasterizationModeEXT::eRectangular : return "Rectangular";
- case LineRasterizationModeEXT::eBresenham : return "Bresenham";
- case LineRasterizationModeEXT::eRectangularSmooth : return "RectangularSmooth";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
- }
- }
-
- enum class LogicOp
- {
- eClear = VK_LOGIC_OP_CLEAR,
- eAnd = VK_LOGIC_OP_AND,
- eAndReverse = VK_LOGIC_OP_AND_REVERSE,
- eCopy = VK_LOGIC_OP_COPY,
- eAndInverted = VK_LOGIC_OP_AND_INVERTED,
- eNoOp = VK_LOGIC_OP_NO_OP,
- eXor = VK_LOGIC_OP_XOR,
- eOr = VK_LOGIC_OP_OR,
- eNor = VK_LOGIC_OP_NOR,
- eEquivalent = VK_LOGIC_OP_EQUIVALENT,
- eInvert = VK_LOGIC_OP_INVERT,
- eOrReverse = VK_LOGIC_OP_OR_REVERSE,
- eCopyInverted = VK_LOGIC_OP_COPY_INVERTED,
- eOrInverted = VK_LOGIC_OP_OR_INVERTED,
- eNand = VK_LOGIC_OP_NAND,
- eSet = VK_LOGIC_OP_SET
- };
-
- VULKAN_HPP_INLINE std::string to_string( LogicOp value )
- {
- switch ( value )
- {
- case LogicOp::eClear : return "Clear";
- case LogicOp::eAnd : return "And";
- case LogicOp::eAndReverse : return "AndReverse";
- case LogicOp::eCopy : return "Copy";
- case LogicOp::eAndInverted : return "AndInverted";
- case LogicOp::eNoOp : return "NoOp";
- case LogicOp::eXor : return "Xor";
- case LogicOp::eOr : return "Or";
- case LogicOp::eNor : return "Nor";
- case LogicOp::eEquivalent : return "Equivalent";
- case LogicOp::eInvert : return "Invert";
- case LogicOp::eOrReverse : return "OrReverse";
- case LogicOp::eCopyInverted : return "CopyInverted";
- case LogicOp::eOrInverted : return "OrInverted";
- case LogicOp::eNand : return "Nand";
- case LogicOp::eSet : return "Set";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkDestroyPrivateDataSlotEXT( device, privateDataSlot, pAllocator );
}
- }
- enum class MemoryAllocateFlagBits : VkMemoryAllocateFlags
- {
- eDeviceMask = VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT,
- eDeviceAddress = VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT,
- eDeviceAddressCaptureReplay = VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT
- };
- using MemoryAllocateFlagBitsKHR = MemoryAllocateFlagBits;
-
- VULKAN_HPP_INLINE std::string to_string( MemoryAllocateFlagBits value )
- {
- switch ( value )
+ VkResult vkSetPrivateDataEXT( VkDevice device,
+ VkObjectType objectType,
+ uint64_t objectHandle,
+ VkPrivateDataSlotEXT privateDataSlot,
+ uint64_t data ) const VULKAN_HPP_NOEXCEPT
{
- case MemoryAllocateFlagBits::eDeviceMask : return "DeviceMask";
- case MemoryAllocateFlagBits::eDeviceAddress : return "DeviceAddress";
- case MemoryAllocateFlagBits::eDeviceAddressCaptureReplay : return "DeviceAddressCaptureReplay";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkSetPrivateDataEXT( device, objectType, objectHandle, privateDataSlot, data );
}
- }
- enum class MemoryHeapFlagBits : VkMemoryHeapFlags
- {
- eDeviceLocal = VK_MEMORY_HEAP_DEVICE_LOCAL_BIT,
- eMultiInstance = VK_MEMORY_HEAP_MULTI_INSTANCE_BIT,
- eMultiInstanceKHR = VK_MEMORY_HEAP_MULTI_INSTANCE_BIT_KHR
- };
-
- VULKAN_HPP_INLINE std::string to_string( MemoryHeapFlagBits value )
- {
- switch ( value )
+ void vkGetPrivateDataEXT( VkDevice device,
+ VkObjectType objectType,
+ uint64_t objectHandle,
+ VkPrivateDataSlotEXT privateDataSlot,
+ uint64_t * pData ) const VULKAN_HPP_NOEXCEPT
{
- case MemoryHeapFlagBits::eDeviceLocal : return "DeviceLocal";
- case MemoryHeapFlagBits::eMultiInstance : return "MultiInstance";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkGetPrivateDataEXT( device, objectType, objectHandle, privateDataSlot, pData );
}
- }
- enum class MemoryOverallocationBehaviorAMD
- {
- eDefault = VK_MEMORY_OVERALLOCATION_BEHAVIOR_DEFAULT_AMD,
- eAllowed = VK_MEMORY_OVERALLOCATION_BEHAVIOR_ALLOWED_AMD,
- eDisallowed = VK_MEMORY_OVERALLOCATION_BEHAVIOR_DISALLOWED_AMD
- };
+# if defined( VK_ENABLE_BETA_EXTENSIONS )
+ //=== VK_KHR_video_encode_queue ===
- VULKAN_HPP_INLINE std::string to_string( MemoryOverallocationBehaviorAMD value )
- {
- switch ( value )
+ void vkCmdEncodeVideoKHR( VkCommandBuffer commandBuffer,
+ const VkVideoEncodeInfoKHR * pEncodeInfo ) const VULKAN_HPP_NOEXCEPT
{
- case MemoryOverallocationBehaviorAMD::eDefault : return "Default";
- case MemoryOverallocationBehaviorAMD::eAllowed : return "Allowed";
- case MemoryOverallocationBehaviorAMD::eDisallowed : return "Disallowed";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCmdEncodeVideoKHR( commandBuffer, pEncodeInfo );
}
- }
+# endif /*VK_ENABLE_BETA_EXTENSIONS*/
- enum class MemoryPropertyFlagBits : VkMemoryPropertyFlags
- {
- eDeviceLocal = VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT,
- eHostVisible = VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT,
- eHostCoherent = VK_MEMORY_PROPERTY_HOST_COHERENT_BIT,
- eHostCached = VK_MEMORY_PROPERTY_HOST_CACHED_BIT,
- eLazilyAllocated = VK_MEMORY_PROPERTY_LAZILY_ALLOCATED_BIT,
- eProtected = VK_MEMORY_PROPERTY_PROTECTED_BIT,
- eDeviceCoherentAMD = VK_MEMORY_PROPERTY_DEVICE_COHERENT_BIT_AMD,
- eDeviceUncachedAMD = VK_MEMORY_PROPERTY_DEVICE_UNCACHED_BIT_AMD
- };
+ //=== VK_KHR_synchronization2 ===
- VULKAN_HPP_INLINE std::string to_string( MemoryPropertyFlagBits value )
- {
- switch ( value )
+ void vkCmdSetEvent2KHR( VkCommandBuffer commandBuffer,
+ VkEvent event,
+ const VkDependencyInfoKHR * pDependencyInfo ) const VULKAN_HPP_NOEXCEPT
{
- case MemoryPropertyFlagBits::eDeviceLocal : return "DeviceLocal";
- case MemoryPropertyFlagBits::eHostVisible : return "HostVisible";
- case MemoryPropertyFlagBits::eHostCoherent : return "HostCoherent";
- case MemoryPropertyFlagBits::eHostCached : return "HostCached";
- case MemoryPropertyFlagBits::eLazilyAllocated : return "LazilyAllocated";
- case MemoryPropertyFlagBits::eProtected : return "Protected";
- case MemoryPropertyFlagBits::eDeviceCoherentAMD : return "DeviceCoherentAMD";
- case MemoryPropertyFlagBits::eDeviceUncachedAMD : return "DeviceUncachedAMD";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCmdSetEvent2KHR( commandBuffer, event, pDependencyInfo );
}
- }
-
- enum class ObjectType
- {
- eUnknown = VK_OBJECT_TYPE_UNKNOWN,
- eInstance = VK_OBJECT_TYPE_INSTANCE,
- ePhysicalDevice = VK_OBJECT_TYPE_PHYSICAL_DEVICE,
- eDevice = VK_OBJECT_TYPE_DEVICE,
- eQueue = VK_OBJECT_TYPE_QUEUE,
- eSemaphore = VK_OBJECT_TYPE_SEMAPHORE,
- eCommandBuffer = VK_OBJECT_TYPE_COMMAND_BUFFER,
- eFence = VK_OBJECT_TYPE_FENCE,
- eDeviceMemory = VK_OBJECT_TYPE_DEVICE_MEMORY,
- eBuffer = VK_OBJECT_TYPE_BUFFER,
- eImage = VK_OBJECT_TYPE_IMAGE,
- eEvent = VK_OBJECT_TYPE_EVENT,
- eQueryPool = VK_OBJECT_TYPE_QUERY_POOL,
- eBufferView = VK_OBJECT_TYPE_BUFFER_VIEW,
- eImageView = VK_OBJECT_TYPE_IMAGE_VIEW,
- eShaderModule = VK_OBJECT_TYPE_SHADER_MODULE,
- ePipelineCache = VK_OBJECT_TYPE_PIPELINE_CACHE,
- ePipelineLayout = VK_OBJECT_TYPE_PIPELINE_LAYOUT,
- eRenderPass = VK_OBJECT_TYPE_RENDER_PASS,
- ePipeline = VK_OBJECT_TYPE_PIPELINE,
- eDescriptorSetLayout = VK_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT,
- eSampler = VK_OBJECT_TYPE_SAMPLER,
- eDescriptorPool = VK_OBJECT_TYPE_DESCRIPTOR_POOL,
- eDescriptorSet = VK_OBJECT_TYPE_DESCRIPTOR_SET,
- eFramebuffer = VK_OBJECT_TYPE_FRAMEBUFFER,
- eCommandPool = VK_OBJECT_TYPE_COMMAND_POOL,
- eSamplerYcbcrConversion = VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION,
- eDescriptorUpdateTemplate = VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE,
- eSurfaceKHR = VK_OBJECT_TYPE_SURFACE_KHR,
- eSwapchainKHR = VK_OBJECT_TYPE_SWAPCHAIN_KHR,
- eDisplayKHR = VK_OBJECT_TYPE_DISPLAY_KHR,
- eDisplayModeKHR = VK_OBJECT_TYPE_DISPLAY_MODE_KHR,
- eDebugReportCallbackEXT = VK_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT,
- eDebugUtilsMessengerEXT = VK_OBJECT_TYPE_DEBUG_UTILS_MESSENGER_EXT,
- eAccelerationStructureKHR = VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR,
- eValidationCacheEXT = VK_OBJECT_TYPE_VALIDATION_CACHE_EXT,
- eAccelerationStructureNV = VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV,
- ePerformanceConfigurationINTEL = VK_OBJECT_TYPE_PERFORMANCE_CONFIGURATION_INTEL,
- eDeferredOperationKHR = VK_OBJECT_TYPE_DEFERRED_OPERATION_KHR,
- eIndirectCommandsLayoutNV = VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NV,
- ePrivateDataSlotEXT = VK_OBJECT_TYPE_PRIVATE_DATA_SLOT_EXT,
- eDescriptorUpdateTemplateKHR = VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR,
- eSamplerYcbcrConversionKHR = VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_KHR
- };
-
- VULKAN_HPP_INLINE std::string to_string( ObjectType value )
- {
- switch ( value )
- {
- case ObjectType::eUnknown : return "Unknown";
- case ObjectType::eInstance : return "Instance";
- case ObjectType::ePhysicalDevice : return "PhysicalDevice";
- case ObjectType::eDevice : return "Device";
- case ObjectType::eQueue : return "Queue";
- case ObjectType::eSemaphore : return "Semaphore";
- case ObjectType::eCommandBuffer : return "CommandBuffer";
- case ObjectType::eFence : return "Fence";
- case ObjectType::eDeviceMemory : return "DeviceMemory";
- case ObjectType::eBuffer : return "Buffer";
- case ObjectType::eImage : return "Image";
- case ObjectType::eEvent : return "Event";
- case ObjectType::eQueryPool : return "QueryPool";
- case ObjectType::eBufferView : return "BufferView";
- case ObjectType::eImageView : return "ImageView";
- case ObjectType::eShaderModule : return "ShaderModule";
- case ObjectType::ePipelineCache : return "PipelineCache";
- case ObjectType::ePipelineLayout : return "PipelineLayout";
- case ObjectType::eRenderPass : return "RenderPass";
- case ObjectType::ePipeline : return "Pipeline";
- case ObjectType::eDescriptorSetLayout : return "DescriptorSetLayout";
- case ObjectType::eSampler : return "Sampler";
- case ObjectType::eDescriptorPool : return "DescriptorPool";
- case ObjectType::eDescriptorSet : return "DescriptorSet";
- case ObjectType::eFramebuffer : return "Framebuffer";
- case ObjectType::eCommandPool : return "CommandPool";
- case ObjectType::eSamplerYcbcrConversion : return "SamplerYcbcrConversion";
- case ObjectType::eDescriptorUpdateTemplate : return "DescriptorUpdateTemplate";
- case ObjectType::eSurfaceKHR : return "SurfaceKHR";
- case ObjectType::eSwapchainKHR : return "SwapchainKHR";
- case ObjectType::eDisplayKHR : return "DisplayKHR";
- case ObjectType::eDisplayModeKHR : return "DisplayModeKHR";
- case ObjectType::eDebugReportCallbackEXT : return "DebugReportCallbackEXT";
- case ObjectType::eDebugUtilsMessengerEXT : return "DebugUtilsMessengerEXT";
- case ObjectType::eAccelerationStructureKHR : return "AccelerationStructureKHR";
- case ObjectType::eValidationCacheEXT : return "ValidationCacheEXT";
- case ObjectType::eAccelerationStructureNV : return "AccelerationStructureNV";
- case ObjectType::ePerformanceConfigurationINTEL : return "PerformanceConfigurationINTEL";
- case ObjectType::eDeferredOperationKHR : return "DeferredOperationKHR";
- case ObjectType::eIndirectCommandsLayoutNV : return "IndirectCommandsLayoutNV";
- case ObjectType::ePrivateDataSlotEXT : return "PrivateDataSlotEXT";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
- }
- }
-
- template<ObjectType value>
- struct cpp_type
- {};
-
- enum class PeerMemoryFeatureFlagBits : VkPeerMemoryFeatureFlags
- {
- eCopySrc = VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT,
- eCopyDst = VK_PEER_MEMORY_FEATURE_COPY_DST_BIT,
- eGenericSrc = VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT,
- eGenericDst = VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT
- };
- using PeerMemoryFeatureFlagBitsKHR = PeerMemoryFeatureFlagBits;
- VULKAN_HPP_INLINE std::string to_string( PeerMemoryFeatureFlagBits value )
- {
- switch ( value )
+ void vkCmdResetEvent2KHR( VkCommandBuffer commandBuffer,
+ VkEvent event,
+ VkPipelineStageFlags2KHR stageMask ) const VULKAN_HPP_NOEXCEPT
{
- case PeerMemoryFeatureFlagBits::eCopySrc : return "CopySrc";
- case PeerMemoryFeatureFlagBits::eCopyDst : return "CopyDst";
- case PeerMemoryFeatureFlagBits::eGenericSrc : return "GenericSrc";
- case PeerMemoryFeatureFlagBits::eGenericDst : return "GenericDst";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCmdResetEvent2KHR( commandBuffer, event, stageMask );
}
- }
- enum class PerformanceConfigurationTypeINTEL
- {
- eCommandQueueMetricsDiscoveryActivated = VK_PERFORMANCE_CONFIGURATION_TYPE_COMMAND_QUEUE_METRICS_DISCOVERY_ACTIVATED_INTEL
- };
-
- VULKAN_HPP_INLINE std::string to_string( PerformanceConfigurationTypeINTEL value )
- {
- switch ( value )
+ void vkCmdWaitEvents2KHR( VkCommandBuffer commandBuffer,
+ uint32_t eventCount,
+ const VkEvent * pEvents,
+ const VkDependencyInfoKHR * pDependencyInfos ) const VULKAN_HPP_NOEXCEPT
{
- case PerformanceConfigurationTypeINTEL::eCommandQueueMetricsDiscoveryActivated : return "CommandQueueMetricsDiscoveryActivated";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCmdWaitEvents2KHR( commandBuffer, eventCount, pEvents, pDependencyInfos );
}
- }
- enum class PerformanceCounterDescriptionFlagBitsKHR : VkPerformanceCounterDescriptionFlagsKHR
- {
- ePerformanceImpacting = VK_PERFORMANCE_COUNTER_DESCRIPTION_PERFORMANCE_IMPACTING_BIT_KHR,
- eConcurrentlyImpacted = VK_PERFORMANCE_COUNTER_DESCRIPTION_CONCURRENTLY_IMPACTED_BIT_KHR
- };
-
- VULKAN_HPP_INLINE std::string to_string( PerformanceCounterDescriptionFlagBitsKHR value )
- {
- switch ( value )
+ void vkCmdPipelineBarrier2KHR( VkCommandBuffer commandBuffer,
+ const VkDependencyInfoKHR * pDependencyInfo ) const VULKAN_HPP_NOEXCEPT
{
- case PerformanceCounterDescriptionFlagBitsKHR::ePerformanceImpacting : return "PerformanceImpacting";
- case PerformanceCounterDescriptionFlagBitsKHR::eConcurrentlyImpacted : return "ConcurrentlyImpacted";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCmdPipelineBarrier2KHR( commandBuffer, pDependencyInfo );
}
- }
-
- enum class PerformanceCounterScopeKHR
- {
- eCommandBuffer = VK_PERFORMANCE_COUNTER_SCOPE_COMMAND_BUFFER_KHR,
- eRenderPass = VK_PERFORMANCE_COUNTER_SCOPE_RENDER_PASS_KHR,
- eCommand = VK_PERFORMANCE_COUNTER_SCOPE_COMMAND_KHR,
- eVkQueryScopeCommandBuffer = VK_QUERY_SCOPE_COMMAND_BUFFER_KHR,
- eVkQueryScopeCommand = VK_QUERY_SCOPE_COMMAND_KHR,
- eVkQueryScopeRenderPass = VK_QUERY_SCOPE_RENDER_PASS_KHR
- };
- VULKAN_HPP_INLINE std::string to_string( PerformanceCounterScopeKHR value )
- {
- switch ( value )
+ void vkCmdWriteTimestamp2KHR( VkCommandBuffer commandBuffer,
+ VkPipelineStageFlags2KHR stage,
+ VkQueryPool queryPool,
+ uint32_t query ) const VULKAN_HPP_NOEXCEPT
{
- case PerformanceCounterScopeKHR::eCommandBuffer : return "CommandBuffer";
- case PerformanceCounterScopeKHR::eRenderPass : return "RenderPass";
- case PerformanceCounterScopeKHR::eCommand : return "Command";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCmdWriteTimestamp2KHR( commandBuffer, stage, queryPool, query );
}
- }
-
- enum class PerformanceCounterStorageKHR
- {
- eInt32 = VK_PERFORMANCE_COUNTER_STORAGE_INT32_KHR,
- eInt64 = VK_PERFORMANCE_COUNTER_STORAGE_INT64_KHR,
- eUint32 = VK_PERFORMANCE_COUNTER_STORAGE_UINT32_KHR,
- eUint64 = VK_PERFORMANCE_COUNTER_STORAGE_UINT64_KHR,
- eFloat32 = VK_PERFORMANCE_COUNTER_STORAGE_FLOAT32_KHR,
- eFloat64 = VK_PERFORMANCE_COUNTER_STORAGE_FLOAT64_KHR
- };
- VULKAN_HPP_INLINE std::string to_string( PerformanceCounterStorageKHR value )
- {
- switch ( value )
+ VkResult vkQueueSubmit2KHR( VkQueue queue,
+ uint32_t submitCount,
+ const VkSubmitInfo2KHR * pSubmits,
+ VkFence fence ) const VULKAN_HPP_NOEXCEPT
{
- case PerformanceCounterStorageKHR::eInt32 : return "Int32";
- case PerformanceCounterStorageKHR::eInt64 : return "Int64";
- case PerformanceCounterStorageKHR::eUint32 : return "Uint32";
- case PerformanceCounterStorageKHR::eUint64 : return "Uint64";
- case PerformanceCounterStorageKHR::eFloat32 : return "Float32";
- case PerformanceCounterStorageKHR::eFloat64 : return "Float64";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkQueueSubmit2KHR( queue, submitCount, pSubmits, fence );
}
- }
-
- enum class PerformanceCounterUnitKHR
- {
- eGeneric = VK_PERFORMANCE_COUNTER_UNIT_GENERIC_KHR,
- ePercentage = VK_PERFORMANCE_COUNTER_UNIT_PERCENTAGE_KHR,
- eNanoseconds = VK_PERFORMANCE_COUNTER_UNIT_NANOSECONDS_KHR,
- eBytes = VK_PERFORMANCE_COUNTER_UNIT_BYTES_KHR,
- eBytesPerSecond = VK_PERFORMANCE_COUNTER_UNIT_BYTES_PER_SECOND_KHR,
- eKelvin = VK_PERFORMANCE_COUNTER_UNIT_KELVIN_KHR,
- eWatts = VK_PERFORMANCE_COUNTER_UNIT_WATTS_KHR,
- eVolts = VK_PERFORMANCE_COUNTER_UNIT_VOLTS_KHR,
- eAmps = VK_PERFORMANCE_COUNTER_UNIT_AMPS_KHR,
- eHertz = VK_PERFORMANCE_COUNTER_UNIT_HERTZ_KHR,
- eCycles = VK_PERFORMANCE_COUNTER_UNIT_CYCLES_KHR
- };
-
- VULKAN_HPP_INLINE std::string to_string( PerformanceCounterUnitKHR value )
- {
- switch ( value )
- {
- case PerformanceCounterUnitKHR::eGeneric : return "Generic";
- case PerformanceCounterUnitKHR::ePercentage : return "Percentage";
- case PerformanceCounterUnitKHR::eNanoseconds : return "Nanoseconds";
- case PerformanceCounterUnitKHR::eBytes : return "Bytes";
- case PerformanceCounterUnitKHR::eBytesPerSecond : return "BytesPerSecond";
- case PerformanceCounterUnitKHR::eKelvin : return "Kelvin";
- case PerformanceCounterUnitKHR::eWatts : return "Watts";
- case PerformanceCounterUnitKHR::eVolts : return "Volts";
- case PerformanceCounterUnitKHR::eAmps : return "Amps";
- case PerformanceCounterUnitKHR::eHertz : return "Hertz";
- case PerformanceCounterUnitKHR::eCycles : return "Cycles";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
- }
- }
- enum class PerformanceOverrideTypeINTEL
- {
- eNullHardware = VK_PERFORMANCE_OVERRIDE_TYPE_NULL_HARDWARE_INTEL,
- eFlushGpuCaches = VK_PERFORMANCE_OVERRIDE_TYPE_FLUSH_GPU_CACHES_INTEL
- };
-
- VULKAN_HPP_INLINE std::string to_string( PerformanceOverrideTypeINTEL value )
- {
- switch ( value )
+ void vkCmdWriteBufferMarker2AMD( VkCommandBuffer commandBuffer,
+ VkPipelineStageFlags2KHR stage,
+ VkBuffer dstBuffer,
+ VkDeviceSize dstOffset,
+ uint32_t marker ) const VULKAN_HPP_NOEXCEPT
{
- case PerformanceOverrideTypeINTEL::eNullHardware : return "NullHardware";
- case PerformanceOverrideTypeINTEL::eFlushGpuCaches : return "FlushGpuCaches";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCmdWriteBufferMarker2AMD( commandBuffer, stage, dstBuffer, dstOffset, marker );
}
- }
- enum class PerformanceParameterTypeINTEL
- {
- eHwCountersSupported = VK_PERFORMANCE_PARAMETER_TYPE_HW_COUNTERS_SUPPORTED_INTEL,
- eStreamMarkerValidBits = VK_PERFORMANCE_PARAMETER_TYPE_STREAM_MARKER_VALID_BITS_INTEL
- };
-
- VULKAN_HPP_INLINE std::string to_string( PerformanceParameterTypeINTEL value )
- {
- switch ( value )
+ void vkGetQueueCheckpointData2NV( VkQueue queue,
+ uint32_t * pCheckpointDataCount,
+ VkCheckpointData2NV * pCheckpointData ) const VULKAN_HPP_NOEXCEPT
{
- case PerformanceParameterTypeINTEL::eHwCountersSupported : return "HwCountersSupported";
- case PerformanceParameterTypeINTEL::eStreamMarkerValidBits : return "StreamMarkerValidBits";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkGetQueueCheckpointData2NV( queue, pCheckpointDataCount, pCheckpointData );
}
- }
- enum class PerformanceValueTypeINTEL
- {
- eUint32 = VK_PERFORMANCE_VALUE_TYPE_UINT32_INTEL,
- eUint64 = VK_PERFORMANCE_VALUE_TYPE_UINT64_INTEL,
- eFloat = VK_PERFORMANCE_VALUE_TYPE_FLOAT_INTEL,
- eBool = VK_PERFORMANCE_VALUE_TYPE_BOOL_INTEL,
- eString = VK_PERFORMANCE_VALUE_TYPE_STRING_INTEL
- };
+ //=== VK_NV_fragment_shading_rate_enums ===
- VULKAN_HPP_INLINE std::string to_string( PerformanceValueTypeINTEL value )
- {
- switch ( value )
+ void vkCmdSetFragmentShadingRateEnumNV( VkCommandBuffer commandBuffer,
+ VkFragmentShadingRateNV shadingRate,
+ const VkFragmentShadingRateCombinerOpKHR combinerOps[2] ) const
+ VULKAN_HPP_NOEXCEPT
{
- case PerformanceValueTypeINTEL::eUint32 : return "Uint32";
- case PerformanceValueTypeINTEL::eUint64 : return "Uint64";
- case PerformanceValueTypeINTEL::eFloat : return "Float";
- case PerformanceValueTypeINTEL::eBool : return "Bool";
- case PerformanceValueTypeINTEL::eString : return "String";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCmdSetFragmentShadingRateEnumNV( commandBuffer, shadingRate, combinerOps );
}
- }
- enum class PhysicalDeviceType
- {
- eOther = VK_PHYSICAL_DEVICE_TYPE_OTHER,
- eIntegratedGpu = VK_PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU,
- eDiscreteGpu = VK_PHYSICAL_DEVICE_TYPE_DISCRETE_GPU,
- eVirtualGpu = VK_PHYSICAL_DEVICE_TYPE_VIRTUAL_GPU,
- eCpu = VK_PHYSICAL_DEVICE_TYPE_CPU
- };
+ //=== VK_KHR_copy_commands2 ===
- VULKAN_HPP_INLINE std::string to_string( PhysicalDeviceType value )
- {
- switch ( value )
+ void vkCmdCopyBuffer2KHR( VkCommandBuffer commandBuffer,
+ const VkCopyBufferInfo2KHR * pCopyBufferInfo ) const VULKAN_HPP_NOEXCEPT
{
- case PhysicalDeviceType::eOther : return "Other";
- case PhysicalDeviceType::eIntegratedGpu : return "IntegratedGpu";
- case PhysicalDeviceType::eDiscreteGpu : return "DiscreteGpu";
- case PhysicalDeviceType::eVirtualGpu : return "VirtualGpu";
- case PhysicalDeviceType::eCpu : return "Cpu";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCmdCopyBuffer2KHR( commandBuffer, pCopyBufferInfo );
}
- }
- enum class PipelineBindPoint
- {
- eGraphics = VK_PIPELINE_BIND_POINT_GRAPHICS,
- eCompute = VK_PIPELINE_BIND_POINT_COMPUTE,
- eRayTracingKHR = VK_PIPELINE_BIND_POINT_RAY_TRACING_KHR,
- eRayTracingNV = VK_PIPELINE_BIND_POINT_RAY_TRACING_NV
- };
-
- VULKAN_HPP_INLINE std::string to_string( PipelineBindPoint value )
- {
- switch ( value )
+ void vkCmdCopyImage2KHR( VkCommandBuffer commandBuffer,
+ const VkCopyImageInfo2KHR * pCopyImageInfo ) const VULKAN_HPP_NOEXCEPT
{
- case PipelineBindPoint::eGraphics : return "Graphics";
- case PipelineBindPoint::eCompute : return "Compute";
- case PipelineBindPoint::eRayTracingKHR : return "RayTracingKHR";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCmdCopyImage2KHR( commandBuffer, pCopyImageInfo );
}
- }
-
- enum class PipelineCacheCreateFlagBits : VkPipelineCacheCreateFlags
- {
- eExternallySynchronizedEXT = VK_PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT_EXT
- };
- VULKAN_HPP_INLINE std::string to_string( PipelineCacheCreateFlagBits value )
- {
- switch ( value )
+ void
+ vkCmdCopyBufferToImage2KHR( VkCommandBuffer commandBuffer,
+ const VkCopyBufferToImageInfo2KHR * pCopyBufferToImageInfo ) const VULKAN_HPP_NOEXCEPT
{
- case PipelineCacheCreateFlagBits::eExternallySynchronizedEXT : return "ExternallySynchronizedEXT";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCmdCopyBufferToImage2KHR( commandBuffer, pCopyBufferToImageInfo );
}
- }
- enum class PipelineCacheHeaderVersion
- {
- eOne = VK_PIPELINE_CACHE_HEADER_VERSION_ONE
- };
-
- VULKAN_HPP_INLINE std::string to_string( PipelineCacheHeaderVersion value )
- {
- switch ( value )
+ void
+ vkCmdCopyImageToBuffer2KHR( VkCommandBuffer commandBuffer,
+ const VkCopyImageToBufferInfo2KHR * pCopyImageToBufferInfo ) const VULKAN_HPP_NOEXCEPT
{
- case PipelineCacheHeaderVersion::eOne : return "One";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
- }
- }
-
- enum class PipelineCompilerControlFlagBitsAMD : VkPipelineCompilerControlFlagsAMD
- {};
-
- VULKAN_HPP_INLINE std::string to_string( PipelineCompilerControlFlagBitsAMD )
- {
- return "(void)";
- }
-
- enum class PipelineCreateFlagBits : VkPipelineCreateFlags
- {
- eDisableOptimization = VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT,
- eAllowDerivatives = VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT,
- eDerivative = VK_PIPELINE_CREATE_DERIVATIVE_BIT,
- eViewIndexFromDeviceIndex = VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT,
- eDispatchBase = VK_PIPELINE_CREATE_DISPATCH_BASE_BIT,
- eRayTracingNoNullAnyHitShadersKHR = VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR,
- eRayTracingNoNullClosestHitShadersKHR = VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR,
- eRayTracingNoNullMissShadersKHR = VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHR,
- eRayTracingNoNullIntersectionShadersKHR = VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHR,
- eRayTracingSkipTrianglesKHR = VK_PIPELINE_CREATE_RAY_TRACING_SKIP_TRIANGLES_BIT_KHR,
- eRayTracingSkipAabbsKHR = VK_PIPELINE_CREATE_RAY_TRACING_SKIP_AABBS_BIT_KHR,
- eRayTracingShaderGroupHandleCaptureReplayKHR = VK_PIPELINE_CREATE_RAY_TRACING_SHADER_GROUP_HANDLE_CAPTURE_REPLAY_BIT_KHR,
- eDeferCompileNV = VK_PIPELINE_CREATE_DEFER_COMPILE_BIT_NV,
- eCaptureStatisticsKHR = VK_PIPELINE_CREATE_CAPTURE_STATISTICS_BIT_KHR,
- eCaptureInternalRepresentationsKHR = VK_PIPELINE_CREATE_CAPTURE_INTERNAL_REPRESENTATIONS_BIT_KHR,
- eIndirectBindableNV = VK_PIPELINE_CREATE_INDIRECT_BINDABLE_BIT_NV,
- eLibraryKHR = VK_PIPELINE_CREATE_LIBRARY_BIT_KHR,
- eFailOnPipelineCompileRequiredEXT = VK_PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT_EXT,
- eEarlyReturnOnFailureEXT = VK_PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT_EXT,
- eDispatchBaseKHR = VK_PIPELINE_CREATE_DISPATCH_BASE_KHR,
- eViewIndexFromDeviceIndexKHR = VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT_KHR
- };
-
- VULKAN_HPP_INLINE std::string to_string( PipelineCreateFlagBits value )
- {
- switch ( value )
- {
- case PipelineCreateFlagBits::eDisableOptimization : return "DisableOptimization";
- case PipelineCreateFlagBits::eAllowDerivatives : return "AllowDerivatives";
- case PipelineCreateFlagBits::eDerivative : return "Derivative";
- case PipelineCreateFlagBits::eViewIndexFromDeviceIndex : return "ViewIndexFromDeviceIndex";
- case PipelineCreateFlagBits::eDispatchBase : return "DispatchBase";
- case PipelineCreateFlagBits::eRayTracingNoNullAnyHitShadersKHR : return "RayTracingNoNullAnyHitShadersKHR";
- case PipelineCreateFlagBits::eRayTracingNoNullClosestHitShadersKHR : return "RayTracingNoNullClosestHitShadersKHR";
- case PipelineCreateFlagBits::eRayTracingNoNullMissShadersKHR : return "RayTracingNoNullMissShadersKHR";
- case PipelineCreateFlagBits::eRayTracingNoNullIntersectionShadersKHR : return "RayTracingNoNullIntersectionShadersKHR";
- case PipelineCreateFlagBits::eRayTracingSkipTrianglesKHR : return "RayTracingSkipTrianglesKHR";
- case PipelineCreateFlagBits::eRayTracingSkipAabbsKHR : return "RayTracingSkipAabbsKHR";
- case PipelineCreateFlagBits::eRayTracingShaderGroupHandleCaptureReplayKHR : return "RayTracingShaderGroupHandleCaptureReplayKHR";
- case PipelineCreateFlagBits::eDeferCompileNV : return "DeferCompileNV";
- case PipelineCreateFlagBits::eCaptureStatisticsKHR : return "CaptureStatisticsKHR";
- case PipelineCreateFlagBits::eCaptureInternalRepresentationsKHR : return "CaptureInternalRepresentationsKHR";
- case PipelineCreateFlagBits::eIndirectBindableNV : return "IndirectBindableNV";
- case PipelineCreateFlagBits::eLibraryKHR : return "LibraryKHR";
- case PipelineCreateFlagBits::eFailOnPipelineCompileRequiredEXT : return "FailOnPipelineCompileRequiredEXT";
- case PipelineCreateFlagBits::eEarlyReturnOnFailureEXT : return "EarlyReturnOnFailureEXT";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCmdCopyImageToBuffer2KHR( commandBuffer, pCopyImageToBufferInfo );
}
- }
-
- enum class PipelineCreationFeedbackFlagBitsEXT : VkPipelineCreationFeedbackFlagsEXT
- {
- eValid = VK_PIPELINE_CREATION_FEEDBACK_VALID_BIT_EXT,
- eApplicationPipelineCacheHit = VK_PIPELINE_CREATION_FEEDBACK_APPLICATION_PIPELINE_CACHE_HIT_BIT_EXT,
- eBasePipelineAcceleration = VK_PIPELINE_CREATION_FEEDBACK_BASE_PIPELINE_ACCELERATION_BIT_EXT
- };
- VULKAN_HPP_INLINE std::string to_string( PipelineCreationFeedbackFlagBitsEXT value )
- {
- switch ( value )
+ void vkCmdBlitImage2KHR( VkCommandBuffer commandBuffer,
+ const VkBlitImageInfo2KHR * pBlitImageInfo ) const VULKAN_HPP_NOEXCEPT
{
- case PipelineCreationFeedbackFlagBitsEXT::eValid : return "Valid";
- case PipelineCreationFeedbackFlagBitsEXT::eApplicationPipelineCacheHit : return "ApplicationPipelineCacheHit";
- case PipelineCreationFeedbackFlagBitsEXT::eBasePipelineAcceleration : return "BasePipelineAcceleration";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCmdBlitImage2KHR( commandBuffer, pBlitImageInfo );
}
- }
-
- enum class PipelineExecutableStatisticFormatKHR
- {
- eBool32 = VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_BOOL32_KHR,
- eInt64 = VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_INT64_KHR,
- eUint64 = VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_UINT64_KHR,
- eFloat64 = VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_FLOAT64_KHR
- };
- VULKAN_HPP_INLINE std::string to_string( PipelineExecutableStatisticFormatKHR value )
- {
- switch ( value )
+ void vkCmdResolveImage2KHR( VkCommandBuffer commandBuffer,
+ const VkResolveImageInfo2KHR * pResolveImageInfo ) const VULKAN_HPP_NOEXCEPT
{
- case PipelineExecutableStatisticFormatKHR::eBool32 : return "Bool32";
- case PipelineExecutableStatisticFormatKHR::eInt64 : return "Int64";
- case PipelineExecutableStatisticFormatKHR::eUint64 : return "Uint64";
- case PipelineExecutableStatisticFormatKHR::eFloat64 : return "Float64";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCmdResolveImage2KHR( commandBuffer, pResolveImageInfo );
}
- }
- enum class PipelineShaderStageCreateFlagBits : VkPipelineShaderStageCreateFlags
- {
- eAllowVaryingSubgroupSizeEXT = VK_PIPELINE_SHADER_STAGE_CREATE_ALLOW_VARYING_SUBGROUP_SIZE_BIT_EXT,
- eRequireFullSubgroupsEXT = VK_PIPELINE_SHADER_STAGE_CREATE_REQUIRE_FULL_SUBGROUPS_BIT_EXT
- };
+# if defined( VK_USE_PLATFORM_WIN32_KHR )
+ //=== VK_NV_acquire_winrt_display ===
- VULKAN_HPP_INLINE std::string to_string( PipelineShaderStageCreateFlagBits value )
- {
- switch ( value )
+ VkResult vkAcquireWinrtDisplayNV( VkPhysicalDevice physicalDevice, VkDisplayKHR display ) const VULKAN_HPP_NOEXCEPT
{
- case PipelineShaderStageCreateFlagBits::eAllowVaryingSubgroupSizeEXT : return "AllowVaryingSubgroupSizeEXT";
- case PipelineShaderStageCreateFlagBits::eRequireFullSubgroupsEXT : return "RequireFullSubgroupsEXT";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
- }
- }
-
- enum class PipelineStageFlagBits : VkPipelineStageFlags
- {
- eTopOfPipe = VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT,
- eDrawIndirect = VK_PIPELINE_STAGE_DRAW_INDIRECT_BIT,
- eVertexInput = VK_PIPELINE_STAGE_VERTEX_INPUT_BIT,
- eVertexShader = VK_PIPELINE_STAGE_VERTEX_SHADER_BIT,
- eTessellationControlShader = VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT,
- eTessellationEvaluationShader = VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT,
- eGeometryShader = VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT,
- eFragmentShader = VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT,
- eEarlyFragmentTests = VK_PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT,
- eLateFragmentTests = VK_PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT,
- eColorAttachmentOutput = VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT,
- eComputeShader = VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT,
- eTransfer = VK_PIPELINE_STAGE_TRANSFER_BIT,
- eBottomOfPipe = VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT,
- eHost = VK_PIPELINE_STAGE_HOST_BIT,
- eAllGraphics = VK_PIPELINE_STAGE_ALL_GRAPHICS_BIT,
- eAllCommands = VK_PIPELINE_STAGE_ALL_COMMANDS_BIT,
- eTransformFeedbackEXT = VK_PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT,
- eConditionalRenderingEXT = VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT,
- eAccelerationStructureBuildKHR = VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_KHR,
- eRayTracingShaderKHR = VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_KHR,
- eShadingRateImageNV = VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV,
- eTaskShaderNV = VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV,
- eMeshShaderNV = VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV,
- eFragmentDensityProcessEXT = VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT,
- eCommandPreprocessNV = VK_PIPELINE_STAGE_COMMAND_PREPROCESS_BIT_NV,
- eAccelerationStructureBuildNV = VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_NV,
- eFragmentShadingRateAttachmentKHR = VK_PIPELINE_STAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR,
- eRayTracingShaderNV = VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_NV
- };
-
- VULKAN_HPP_INLINE std::string to_string( PipelineStageFlagBits value )
- {
- switch ( value )
- {
- case PipelineStageFlagBits::eTopOfPipe : return "TopOfPipe";
- case PipelineStageFlagBits::eDrawIndirect : return "DrawIndirect";
- case PipelineStageFlagBits::eVertexInput : return "VertexInput";
- case PipelineStageFlagBits::eVertexShader : return "VertexShader";
- case PipelineStageFlagBits::eTessellationControlShader : return "TessellationControlShader";
- case PipelineStageFlagBits::eTessellationEvaluationShader : return "TessellationEvaluationShader";
- case PipelineStageFlagBits::eGeometryShader : return "GeometryShader";
- case PipelineStageFlagBits::eFragmentShader : return "FragmentShader";
- case PipelineStageFlagBits::eEarlyFragmentTests : return "EarlyFragmentTests";
- case PipelineStageFlagBits::eLateFragmentTests : return "LateFragmentTests";
- case PipelineStageFlagBits::eColorAttachmentOutput : return "ColorAttachmentOutput";
- case PipelineStageFlagBits::eComputeShader : return "ComputeShader";
- case PipelineStageFlagBits::eTransfer : return "Transfer";
- case PipelineStageFlagBits::eBottomOfPipe : return "BottomOfPipe";
- case PipelineStageFlagBits::eHost : return "Host";
- case PipelineStageFlagBits::eAllGraphics : return "AllGraphics";
- case PipelineStageFlagBits::eAllCommands : return "AllCommands";
- case PipelineStageFlagBits::eTransformFeedbackEXT : return "TransformFeedbackEXT";
- case PipelineStageFlagBits::eConditionalRenderingEXT : return "ConditionalRenderingEXT";
- case PipelineStageFlagBits::eAccelerationStructureBuildKHR : return "AccelerationStructureBuildKHR";
- case PipelineStageFlagBits::eRayTracingShaderKHR : return "RayTracingShaderKHR";
- case PipelineStageFlagBits::eShadingRateImageNV : return "ShadingRateImageNV";
- case PipelineStageFlagBits::eTaskShaderNV : return "TaskShaderNV";
- case PipelineStageFlagBits::eMeshShaderNV : return "MeshShaderNV";
- case PipelineStageFlagBits::eFragmentDensityProcessEXT : return "FragmentDensityProcessEXT";
- case PipelineStageFlagBits::eCommandPreprocessNV : return "CommandPreprocessNV";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkAcquireWinrtDisplayNV( physicalDevice, display );
}
- }
- enum class PointClippingBehavior
- {
- eAllClipPlanes = VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES,
- eUserClipPlanesOnly = VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY
- };
- using PointClippingBehaviorKHR = PointClippingBehavior;
-
- VULKAN_HPP_INLINE std::string to_string( PointClippingBehavior value )
- {
- switch ( value )
+ VkResult vkGetWinrtDisplayNV( VkPhysicalDevice physicalDevice,
+ uint32_t deviceRelativeId,
+ VkDisplayKHR * pDisplay ) const VULKAN_HPP_NOEXCEPT
{
- case PointClippingBehavior::eAllClipPlanes : return "AllClipPlanes";
- case PointClippingBehavior::eUserClipPlanesOnly : return "UserClipPlanesOnly";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkGetWinrtDisplayNV( physicalDevice, deviceRelativeId, pDisplay );
}
- }
+# endif /*VK_USE_PLATFORM_WIN32_KHR*/
- enum class PolygonMode
- {
- eFill = VK_POLYGON_MODE_FILL,
- eLine = VK_POLYGON_MODE_LINE,
- ePoint = VK_POLYGON_MODE_POINT,
- eFillRectangleNV = VK_POLYGON_MODE_FILL_RECTANGLE_NV
- };
+# if defined( VK_USE_PLATFORM_DIRECTFB_EXT )
+ //=== VK_EXT_directfb_surface ===
- VULKAN_HPP_INLINE std::string to_string( PolygonMode value )
- {
- switch ( value )
+ VkResult vkCreateDirectFBSurfaceEXT( VkInstance instance,
+ const VkDirectFBSurfaceCreateInfoEXT * pCreateInfo,
+ const VkAllocationCallbacks * pAllocator,
+ VkSurfaceKHR * pSurface ) const VULKAN_HPP_NOEXCEPT
{
- case PolygonMode::eFill : return "Fill";
- case PolygonMode::eLine : return "Line";
- case PolygonMode::ePoint : return "Point";
- case PolygonMode::eFillRectangleNV : return "FillRectangleNV";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCreateDirectFBSurfaceEXT( instance, pCreateInfo, pAllocator, pSurface );
}
- }
- enum class PresentModeKHR
- {
- eImmediate = VK_PRESENT_MODE_IMMEDIATE_KHR,
- eMailbox = VK_PRESENT_MODE_MAILBOX_KHR,
- eFifo = VK_PRESENT_MODE_FIFO_KHR,
- eFifoRelaxed = VK_PRESENT_MODE_FIFO_RELAXED_KHR,
- eSharedDemandRefresh = VK_PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR,
- eSharedContinuousRefresh = VK_PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR
- };
-
- VULKAN_HPP_INLINE std::string to_string( PresentModeKHR value )
- {
- switch ( value )
+ VkBool32 vkGetPhysicalDeviceDirectFBPresentationSupportEXT( VkPhysicalDevice physicalDevice,
+ uint32_t queueFamilyIndex,
+ IDirectFB * dfb ) const VULKAN_HPP_NOEXCEPT
{
- case PresentModeKHR::eImmediate : return "Immediate";
- case PresentModeKHR::eMailbox : return "Mailbox";
- case PresentModeKHR::eFifo : return "Fifo";
- case PresentModeKHR::eFifoRelaxed : return "FifoRelaxed";
- case PresentModeKHR::eSharedDemandRefresh : return "SharedDemandRefresh";
- case PresentModeKHR::eSharedContinuousRefresh : return "SharedContinuousRefresh";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
- }
- }
-
- enum class PrimitiveTopology
- {
- ePointList = VK_PRIMITIVE_TOPOLOGY_POINT_LIST,
- eLineList = VK_PRIMITIVE_TOPOLOGY_LINE_LIST,
- eLineStrip = VK_PRIMITIVE_TOPOLOGY_LINE_STRIP,
- eTriangleList = VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST,
- eTriangleStrip = VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP,
- eTriangleFan = VK_PRIMITIVE_TOPOLOGY_TRIANGLE_FAN,
- eLineListWithAdjacency = VK_PRIMITIVE_TOPOLOGY_LINE_LIST_WITH_ADJACENCY,
- eLineStripWithAdjacency = VK_PRIMITIVE_TOPOLOGY_LINE_STRIP_WITH_ADJACENCY,
- eTriangleListWithAdjacency = VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST_WITH_ADJACENCY,
- eTriangleStripWithAdjacency = VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP_WITH_ADJACENCY,
- ePatchList = VK_PRIMITIVE_TOPOLOGY_PATCH_LIST
- };
-
- VULKAN_HPP_INLINE std::string to_string( PrimitiveTopology value )
- {
- switch ( value )
- {
- case PrimitiveTopology::ePointList : return "PointList";
- case PrimitiveTopology::eLineList : return "LineList";
- case PrimitiveTopology::eLineStrip : return "LineStrip";
- case PrimitiveTopology::eTriangleList : return "TriangleList";
- case PrimitiveTopology::eTriangleStrip : return "TriangleStrip";
- case PrimitiveTopology::eTriangleFan : return "TriangleFan";
- case PrimitiveTopology::eLineListWithAdjacency : return "LineListWithAdjacency";
- case PrimitiveTopology::eLineStripWithAdjacency : return "LineStripWithAdjacency";
- case PrimitiveTopology::eTriangleListWithAdjacency : return "TriangleListWithAdjacency";
- case PrimitiveTopology::eTriangleStripWithAdjacency : return "TriangleStripWithAdjacency";
- case PrimitiveTopology::ePatchList : return "PatchList";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkGetPhysicalDeviceDirectFBPresentationSupportEXT( physicalDevice, queueFamilyIndex, dfb );
}
- }
-
- enum class PrivateDataSlotCreateFlagBitsEXT : VkPrivateDataSlotCreateFlagsEXT
- {};
-
- VULKAN_HPP_INLINE std::string to_string( PrivateDataSlotCreateFlagBitsEXT )
- {
- return "(void)";
- }
+# endif /*VK_USE_PLATFORM_DIRECTFB_EXT*/
- enum class QueryControlFlagBits : VkQueryControlFlags
- {
- ePrecise = VK_QUERY_CONTROL_PRECISE_BIT
- };
+ //=== VK_KHR_ray_tracing_pipeline ===
- VULKAN_HPP_INLINE std::string to_string( QueryControlFlagBits value )
- {
- switch ( value )
+ void vkCmdTraceRaysKHR( VkCommandBuffer commandBuffer,
+ const VkStridedDeviceAddressRegionKHR * pRaygenShaderBindingTable,
+ const VkStridedDeviceAddressRegionKHR * pMissShaderBindingTable,
+ const VkStridedDeviceAddressRegionKHR * pHitShaderBindingTable,
+ const VkStridedDeviceAddressRegionKHR * pCallableShaderBindingTable,
+ uint32_t width,
+ uint32_t height,
+ uint32_t depth ) const VULKAN_HPP_NOEXCEPT
{
- case QueryControlFlagBits::ePrecise : return "Precise";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCmdTraceRaysKHR( commandBuffer,
+ pRaygenShaderBindingTable,
+ pMissShaderBindingTable,
+ pHitShaderBindingTable,
+ pCallableShaderBindingTable,
+ width,
+ height,
+ depth );
}
- }
-
- enum class QueryPipelineStatisticFlagBits : VkQueryPipelineStatisticFlags
- {
- eInputAssemblyVertices = VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_VERTICES_BIT,
- eInputAssemblyPrimitives = VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_PRIMITIVES_BIT,
- eVertexShaderInvocations = VK_QUERY_PIPELINE_STATISTIC_VERTEX_SHADER_INVOCATIONS_BIT,
- eGeometryShaderInvocations = VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_INVOCATIONS_BIT,
- eGeometryShaderPrimitives = VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_PRIMITIVES_BIT,
- eClippingInvocations = VK_QUERY_PIPELINE_STATISTIC_CLIPPING_INVOCATIONS_BIT,
- eClippingPrimitives = VK_QUERY_PIPELINE_STATISTIC_CLIPPING_PRIMITIVES_BIT,
- eFragmentShaderInvocations = VK_QUERY_PIPELINE_STATISTIC_FRAGMENT_SHADER_INVOCATIONS_BIT,
- eTessellationControlShaderPatches = VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_CONTROL_SHADER_PATCHES_BIT,
- eTessellationEvaluationShaderInvocations = VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_EVALUATION_SHADER_INVOCATIONS_BIT,
- eComputeShaderInvocations = VK_QUERY_PIPELINE_STATISTIC_COMPUTE_SHADER_INVOCATIONS_BIT
- };
-
- VULKAN_HPP_INLINE std::string to_string( QueryPipelineStatisticFlagBits value )
- {
- switch ( value )
- {
- case QueryPipelineStatisticFlagBits::eInputAssemblyVertices : return "InputAssemblyVertices";
- case QueryPipelineStatisticFlagBits::eInputAssemblyPrimitives : return "InputAssemblyPrimitives";
- case QueryPipelineStatisticFlagBits::eVertexShaderInvocations : return "VertexShaderInvocations";
- case QueryPipelineStatisticFlagBits::eGeometryShaderInvocations : return "GeometryShaderInvocations";
- case QueryPipelineStatisticFlagBits::eGeometryShaderPrimitives : return "GeometryShaderPrimitives";
- case QueryPipelineStatisticFlagBits::eClippingInvocations : return "ClippingInvocations";
- case QueryPipelineStatisticFlagBits::eClippingPrimitives : return "ClippingPrimitives";
- case QueryPipelineStatisticFlagBits::eFragmentShaderInvocations : return "FragmentShaderInvocations";
- case QueryPipelineStatisticFlagBits::eTessellationControlShaderPatches : return "TessellationControlShaderPatches";
- case QueryPipelineStatisticFlagBits::eTessellationEvaluationShaderInvocations : return "TessellationEvaluationShaderInvocations";
- case QueryPipelineStatisticFlagBits::eComputeShaderInvocations : return "ComputeShaderInvocations";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
- }
- }
-
- enum class QueryPoolCreateFlagBits
- {};
-
- VULKAN_HPP_INLINE std::string to_string( QueryPoolCreateFlagBits )
- {
- return "(void)";
- }
-
- enum class QueryPoolSamplingModeINTEL
- {
- eManual = VK_QUERY_POOL_SAMPLING_MODE_MANUAL_INTEL
- };
- VULKAN_HPP_INLINE std::string to_string( QueryPoolSamplingModeINTEL value )
- {
- switch ( value )
+ VkResult vkCreateRayTracingPipelinesKHR( VkDevice device,
+ VkDeferredOperationKHR deferredOperation,
+ VkPipelineCache pipelineCache,
+ uint32_t createInfoCount,
+ const VkRayTracingPipelineCreateInfoKHR * pCreateInfos,
+ const VkAllocationCallbacks * pAllocator,
+ VkPipeline * pPipelines ) const VULKAN_HPP_NOEXCEPT
{
- case QueryPoolSamplingModeINTEL::eManual : return "Manual";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCreateRayTracingPipelinesKHR(
+ device, deferredOperation, pipelineCache, createInfoCount, pCreateInfos, pAllocator, pPipelines );
}
- }
-
- enum class QueryResultFlagBits : VkQueryResultFlags
- {
- e64 = VK_QUERY_RESULT_64_BIT,
- eWait = VK_QUERY_RESULT_WAIT_BIT,
- eWithAvailability = VK_QUERY_RESULT_WITH_AVAILABILITY_BIT,
- ePartial = VK_QUERY_RESULT_PARTIAL_BIT
- };
- VULKAN_HPP_INLINE std::string to_string( QueryResultFlagBits value )
- {
- switch ( value )
+ VkResult vkGetRayTracingShaderGroupHandlesKHR( VkDevice device,
+ VkPipeline pipeline,
+ uint32_t firstGroup,
+ uint32_t groupCount,
+ size_t dataSize,
+ void * pData ) const VULKAN_HPP_NOEXCEPT
{
- case QueryResultFlagBits::e64 : return "64";
- case QueryResultFlagBits::eWait : return "Wait";
- case QueryResultFlagBits::eWithAvailability : return "WithAvailability";
- case QueryResultFlagBits::ePartial : return "Partial";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkGetRayTracingShaderGroupHandlesKHR( device, pipeline, firstGroup, groupCount, dataSize, pData );
}
- }
- enum class QueryType
- {
- eOcclusion = VK_QUERY_TYPE_OCCLUSION,
- ePipelineStatistics = VK_QUERY_TYPE_PIPELINE_STATISTICS,
- eTimestamp = VK_QUERY_TYPE_TIMESTAMP,
- eTransformFeedbackStreamEXT = VK_QUERY_TYPE_TRANSFORM_FEEDBACK_STREAM_EXT,
- ePerformanceQueryKHR = VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR,
- eAccelerationStructureCompactedSizeKHR = VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR,
- eAccelerationStructureSerializationSizeKHR = VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_SIZE_KHR,
- eAccelerationStructureCompactedSizeNV = VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_NV,
- ePerformanceQueryINTEL = VK_QUERY_TYPE_PERFORMANCE_QUERY_INTEL
- };
-
- VULKAN_HPP_INLINE std::string to_string( QueryType value )
- {
- switch ( value )
+ VkResult vkGetRayTracingCaptureReplayShaderGroupHandlesKHR( VkDevice device,
+ VkPipeline pipeline,
+ uint32_t firstGroup,
+ uint32_t groupCount,
+ size_t dataSize,
+ void * pData ) const VULKAN_HPP_NOEXCEPT
{
- case QueryType::eOcclusion : return "Occlusion";
- case QueryType::ePipelineStatistics : return "PipelineStatistics";
- case QueryType::eTimestamp : return "Timestamp";
- case QueryType::eTransformFeedbackStreamEXT : return "TransformFeedbackStreamEXT";
- case QueryType::ePerformanceQueryKHR : return "PerformanceQueryKHR";
- case QueryType::eAccelerationStructureCompactedSizeKHR : return "AccelerationStructureCompactedSizeKHR";
- case QueryType::eAccelerationStructureSerializationSizeKHR : return "AccelerationStructureSerializationSizeKHR";
- case QueryType::eAccelerationStructureCompactedSizeNV : return "AccelerationStructureCompactedSizeNV";
- case QueryType::ePerformanceQueryINTEL : return "PerformanceQueryINTEL";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkGetRayTracingCaptureReplayShaderGroupHandlesKHR(
+ device, pipeline, firstGroup, groupCount, dataSize, pData );
}
- }
-
- enum class QueueFlagBits : VkQueueFlags
- {
- eGraphics = VK_QUEUE_GRAPHICS_BIT,
- eCompute = VK_QUEUE_COMPUTE_BIT,
- eTransfer = VK_QUEUE_TRANSFER_BIT,
- eSparseBinding = VK_QUEUE_SPARSE_BINDING_BIT,
- eProtected = VK_QUEUE_PROTECTED_BIT
- };
- VULKAN_HPP_INLINE std::string to_string( QueueFlagBits value )
- {
- switch ( value )
+ void vkCmdTraceRaysIndirectKHR( VkCommandBuffer commandBuffer,
+ const VkStridedDeviceAddressRegionKHR * pRaygenShaderBindingTable,
+ const VkStridedDeviceAddressRegionKHR * pMissShaderBindingTable,
+ const VkStridedDeviceAddressRegionKHR * pHitShaderBindingTable,
+ const VkStridedDeviceAddressRegionKHR * pCallableShaderBindingTable,
+ VkDeviceAddress indirectDeviceAddress ) const VULKAN_HPP_NOEXCEPT
{
- case QueueFlagBits::eGraphics : return "Graphics";
- case QueueFlagBits::eCompute : return "Compute";
- case QueueFlagBits::eTransfer : return "Transfer";
- case QueueFlagBits::eSparseBinding : return "SparseBinding";
- case QueueFlagBits::eProtected : return "Protected";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCmdTraceRaysIndirectKHR( commandBuffer,
+ pRaygenShaderBindingTable,
+ pMissShaderBindingTable,
+ pHitShaderBindingTable,
+ pCallableShaderBindingTable,
+ indirectDeviceAddress );
}
- }
-
- enum class QueueGlobalPriorityEXT
- {
- eLow = VK_QUEUE_GLOBAL_PRIORITY_LOW_EXT,
- eMedium = VK_QUEUE_GLOBAL_PRIORITY_MEDIUM_EXT,
- eHigh = VK_QUEUE_GLOBAL_PRIORITY_HIGH_EXT,
- eRealtime = VK_QUEUE_GLOBAL_PRIORITY_REALTIME_EXT
- };
- VULKAN_HPP_INLINE std::string to_string( QueueGlobalPriorityEXT value )
- {
- switch ( value )
+ VkDeviceSize vkGetRayTracingShaderGroupStackSizeKHR( VkDevice device,
+ VkPipeline pipeline,
+ uint32_t group,
+ VkShaderGroupShaderKHR groupShader ) const VULKAN_HPP_NOEXCEPT
{
- case QueueGlobalPriorityEXT::eLow : return "Low";
- case QueueGlobalPriorityEXT::eMedium : return "Medium";
- case QueueGlobalPriorityEXT::eHigh : return "High";
- case QueueGlobalPriorityEXT::eRealtime : return "Realtime";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkGetRayTracingShaderGroupStackSizeKHR( device, pipeline, group, groupShader );
}
- }
-
- enum class RasterizationOrderAMD
- {
- eStrict = VK_RASTERIZATION_ORDER_STRICT_AMD,
- eRelaxed = VK_RASTERIZATION_ORDER_RELAXED_AMD
- };
- VULKAN_HPP_INLINE std::string to_string( RasterizationOrderAMD value )
- {
- switch ( value )
+ void vkCmdSetRayTracingPipelineStackSizeKHR( VkCommandBuffer commandBuffer,
+ uint32_t pipelineStackSize ) const VULKAN_HPP_NOEXCEPT
{
- case RasterizationOrderAMD::eStrict : return "Strict";
- case RasterizationOrderAMD::eRelaxed : return "Relaxed";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCmdSetRayTracingPipelineStackSizeKHR( commandBuffer, pipelineStackSize );
}
- }
- enum class RayTracingShaderGroupTypeKHR
- {
- eGeneral = VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_KHR,
- eTrianglesHitGroup = VK_RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_KHR,
- eProceduralHitGroup = VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_KHR
- };
- using RayTracingShaderGroupTypeNV = RayTracingShaderGroupTypeKHR;
+ //=== VK_EXT_vertex_input_dynamic_state ===
- VULKAN_HPP_INLINE std::string to_string( RayTracingShaderGroupTypeKHR value )
- {
- switch ( value )
+ void vkCmdSetVertexInputEXT( VkCommandBuffer commandBuffer,
+ uint32_t vertexBindingDescriptionCount,
+ const VkVertexInputBindingDescription2EXT * pVertexBindingDescriptions,
+ uint32_t vertexAttributeDescriptionCount,
+ const VkVertexInputAttributeDescription2EXT * pVertexAttributeDescriptions ) const
+ VULKAN_HPP_NOEXCEPT
{
- case RayTracingShaderGroupTypeKHR::eGeneral : return "General";
- case RayTracingShaderGroupTypeKHR::eTrianglesHitGroup : return "TrianglesHitGroup";
- case RayTracingShaderGroupTypeKHR::eProceduralHitGroup : return "ProceduralHitGroup";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCmdSetVertexInputEXT( commandBuffer,
+ vertexBindingDescriptionCount,
+ pVertexBindingDescriptions,
+ vertexAttributeDescriptionCount,
+ pVertexAttributeDescriptions );
}
- }
- enum class RenderPassCreateFlagBits : VkRenderPassCreateFlags
- {
- eTransformQCOM = VK_RENDER_PASS_CREATE_TRANSFORM_BIT_QCOM
- };
+# if defined( VK_USE_PLATFORM_FUCHSIA )
+ //=== VK_FUCHSIA_external_memory ===
- VULKAN_HPP_INLINE std::string to_string( RenderPassCreateFlagBits value )
- {
- switch ( value )
+ VkResult vkGetMemoryZirconHandleFUCHSIA( VkDevice device,
+ const VkMemoryGetZirconHandleInfoFUCHSIA * pGetZirconHandleInfo,
+ zx_handle_t * pZirconHandle ) const VULKAN_HPP_NOEXCEPT
{
- case RenderPassCreateFlagBits::eTransformQCOM : return "TransformQCOM";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkGetMemoryZirconHandleFUCHSIA( device, pGetZirconHandleInfo, pZirconHandle );
}
- }
- enum class ResolveModeFlagBits : VkResolveModeFlags
- {
- eNone = VK_RESOLVE_MODE_NONE,
- eSampleZero = VK_RESOLVE_MODE_SAMPLE_ZERO_BIT,
- eAverage = VK_RESOLVE_MODE_AVERAGE_BIT,
- eMin = VK_RESOLVE_MODE_MIN_BIT,
- eMax = VK_RESOLVE_MODE_MAX_BIT
- };
- using ResolveModeFlagBitsKHR = ResolveModeFlagBits;
-
- VULKAN_HPP_INLINE std::string to_string( ResolveModeFlagBits value )
- {
- switch ( value )
+ VkResult vkGetMemoryZirconHandlePropertiesFUCHSIA(
+ VkDevice device,
+ VkExternalMemoryHandleTypeFlagBits handleType,
+ zx_handle_t zirconHandle,
+ VkMemoryZirconHandlePropertiesFUCHSIA * pMemoryZirconHandleProperties ) const VULKAN_HPP_NOEXCEPT
{
- case ResolveModeFlagBits::eNone : return "None";
- case ResolveModeFlagBits::eSampleZero : return "SampleZero";
- case ResolveModeFlagBits::eAverage : return "Average";
- case ResolveModeFlagBits::eMin : return "Min";
- case ResolveModeFlagBits::eMax : return "Max";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkGetMemoryZirconHandlePropertiesFUCHSIA(
+ device, handleType, zirconHandle, pMemoryZirconHandleProperties );
}
- }
-
- enum class Result
- {
- eSuccess = VK_SUCCESS,
- eNotReady = VK_NOT_READY,
- eTimeout = VK_TIMEOUT,
- eEventSet = VK_EVENT_SET,
- eEventReset = VK_EVENT_RESET,
- eIncomplete = VK_INCOMPLETE,
- eErrorOutOfHostMemory = VK_ERROR_OUT_OF_HOST_MEMORY,
- eErrorOutOfDeviceMemory = VK_ERROR_OUT_OF_DEVICE_MEMORY,
- eErrorInitializationFailed = VK_ERROR_INITIALIZATION_FAILED,
- eErrorDeviceLost = VK_ERROR_DEVICE_LOST,
- eErrorMemoryMapFailed = VK_ERROR_MEMORY_MAP_FAILED,
- eErrorLayerNotPresent = VK_ERROR_LAYER_NOT_PRESENT,
- eErrorExtensionNotPresent = VK_ERROR_EXTENSION_NOT_PRESENT,
- eErrorFeatureNotPresent = VK_ERROR_FEATURE_NOT_PRESENT,
- eErrorIncompatibleDriver = VK_ERROR_INCOMPATIBLE_DRIVER,
- eErrorTooManyObjects = VK_ERROR_TOO_MANY_OBJECTS,
- eErrorFormatNotSupported = VK_ERROR_FORMAT_NOT_SUPPORTED,
- eErrorFragmentedPool = VK_ERROR_FRAGMENTED_POOL,
- eErrorUnknown = VK_ERROR_UNKNOWN,
- eErrorOutOfPoolMemory = VK_ERROR_OUT_OF_POOL_MEMORY,
- eErrorInvalidExternalHandle = VK_ERROR_INVALID_EXTERNAL_HANDLE,
- eErrorFragmentation = VK_ERROR_FRAGMENTATION,
- eErrorInvalidOpaqueCaptureAddress = VK_ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS,
- eErrorSurfaceLostKHR = VK_ERROR_SURFACE_LOST_KHR,
- eErrorNativeWindowInUseKHR = VK_ERROR_NATIVE_WINDOW_IN_USE_KHR,
- eSuboptimalKHR = VK_SUBOPTIMAL_KHR,
- eErrorOutOfDateKHR = VK_ERROR_OUT_OF_DATE_KHR,
- eErrorIncompatibleDisplayKHR = VK_ERROR_INCOMPATIBLE_DISPLAY_KHR,
- eErrorValidationFailedEXT = VK_ERROR_VALIDATION_FAILED_EXT,
- eErrorInvalidShaderNV = VK_ERROR_INVALID_SHADER_NV,
- eErrorInvalidDrmFormatModifierPlaneLayoutEXT = VK_ERROR_INVALID_DRM_FORMAT_MODIFIER_PLANE_LAYOUT_EXT,
- eErrorNotPermittedEXT = VK_ERROR_NOT_PERMITTED_EXT,
- eErrorFullScreenExclusiveModeLostEXT = VK_ERROR_FULL_SCREEN_EXCLUSIVE_MODE_LOST_EXT,
- eThreadIdleKHR = VK_THREAD_IDLE_KHR,
- eThreadDoneKHR = VK_THREAD_DONE_KHR,
- eOperationDeferredKHR = VK_OPERATION_DEFERRED_KHR,
- eOperationNotDeferredKHR = VK_OPERATION_NOT_DEFERRED_KHR,
- ePipelineCompileRequiredEXT = VK_PIPELINE_COMPILE_REQUIRED_EXT,
- eErrorFragmentationEXT = VK_ERROR_FRAGMENTATION_EXT,
- eErrorInvalidDeviceAddressEXT = VK_ERROR_INVALID_DEVICE_ADDRESS_EXT,
- eErrorInvalidExternalHandleKHR = VK_ERROR_INVALID_EXTERNAL_HANDLE_KHR,
- eErrorInvalidOpaqueCaptureAddressKHR = VK_ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS_KHR,
- eErrorOutOfPoolMemoryKHR = VK_ERROR_OUT_OF_POOL_MEMORY_KHR,
- eErrorPipelineCompileRequiredEXT = VK_ERROR_PIPELINE_COMPILE_REQUIRED_EXT
- };
-
- VULKAN_HPP_INLINE std::string to_string( Result value )
- {
- switch ( value )
- {
- case Result::eSuccess : return "Success";
- case Result::eNotReady : return "NotReady";
- case Result::eTimeout : return "Timeout";
- case Result::eEventSet : return "EventSet";
- case Result::eEventReset : return "EventReset";
- case Result::eIncomplete : return "Incomplete";
- case Result::eErrorOutOfHostMemory : return "ErrorOutOfHostMemory";
- case Result::eErrorOutOfDeviceMemory : return "ErrorOutOfDeviceMemory";
- case Result::eErrorInitializationFailed : return "ErrorInitializationFailed";
- case Result::eErrorDeviceLost : return "ErrorDeviceLost";
- case Result::eErrorMemoryMapFailed : return "ErrorMemoryMapFailed";
- case Result::eErrorLayerNotPresent : return "ErrorLayerNotPresent";
- case Result::eErrorExtensionNotPresent : return "ErrorExtensionNotPresent";
- case Result::eErrorFeatureNotPresent : return "ErrorFeatureNotPresent";
- case Result::eErrorIncompatibleDriver : return "ErrorIncompatibleDriver";
- case Result::eErrorTooManyObjects : return "ErrorTooManyObjects";
- case Result::eErrorFormatNotSupported : return "ErrorFormatNotSupported";
- case Result::eErrorFragmentedPool : return "ErrorFragmentedPool";
- case Result::eErrorUnknown : return "ErrorUnknown";
- case Result::eErrorOutOfPoolMemory : return "ErrorOutOfPoolMemory";
- case Result::eErrorInvalidExternalHandle : return "ErrorInvalidExternalHandle";
- case Result::eErrorFragmentation : return "ErrorFragmentation";
- case Result::eErrorInvalidOpaqueCaptureAddress : return "ErrorInvalidOpaqueCaptureAddress";
- case Result::eErrorSurfaceLostKHR : return "ErrorSurfaceLostKHR";
- case Result::eErrorNativeWindowInUseKHR : return "ErrorNativeWindowInUseKHR";
- case Result::eSuboptimalKHR : return "SuboptimalKHR";
- case Result::eErrorOutOfDateKHR : return "ErrorOutOfDateKHR";
- case Result::eErrorIncompatibleDisplayKHR : return "ErrorIncompatibleDisplayKHR";
- case Result::eErrorValidationFailedEXT : return "ErrorValidationFailedEXT";
- case Result::eErrorInvalidShaderNV : return "ErrorInvalidShaderNV";
- case Result::eErrorInvalidDrmFormatModifierPlaneLayoutEXT : return "ErrorInvalidDrmFormatModifierPlaneLayoutEXT";
- case Result::eErrorNotPermittedEXT : return "ErrorNotPermittedEXT";
- case Result::eErrorFullScreenExclusiveModeLostEXT : return "ErrorFullScreenExclusiveModeLostEXT";
- case Result::eThreadIdleKHR : return "ThreadIdleKHR";
- case Result::eThreadDoneKHR : return "ThreadDoneKHR";
- case Result::eOperationDeferredKHR : return "OperationDeferredKHR";
- case Result::eOperationNotDeferredKHR : return "OperationNotDeferredKHR";
- case Result::ePipelineCompileRequiredEXT : return "PipelineCompileRequiredEXT";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
- }
- }
+# endif /*VK_USE_PLATFORM_FUCHSIA*/
- enum class SampleCountFlagBits : VkSampleCountFlags
- {
- e1 = VK_SAMPLE_COUNT_1_BIT,
- e2 = VK_SAMPLE_COUNT_2_BIT,
- e4 = VK_SAMPLE_COUNT_4_BIT,
- e8 = VK_SAMPLE_COUNT_8_BIT,
- e16 = VK_SAMPLE_COUNT_16_BIT,
- e32 = VK_SAMPLE_COUNT_32_BIT,
- e64 = VK_SAMPLE_COUNT_64_BIT
- };
+# if defined( VK_USE_PLATFORM_FUCHSIA )
+ //=== VK_FUCHSIA_external_semaphore ===
- VULKAN_HPP_INLINE std::string to_string( SampleCountFlagBits value )
- {
- switch ( value )
+ VkResult vkImportSemaphoreZirconHandleFUCHSIA(
+ VkDevice device,
+ const VkImportSemaphoreZirconHandleInfoFUCHSIA * pImportSemaphoreZirconHandleInfo ) const VULKAN_HPP_NOEXCEPT
{
- case SampleCountFlagBits::e1 : return "1";
- case SampleCountFlagBits::e2 : return "2";
- case SampleCountFlagBits::e4 : return "4";
- case SampleCountFlagBits::e8 : return "8";
- case SampleCountFlagBits::e16 : return "16";
- case SampleCountFlagBits::e32 : return "32";
- case SampleCountFlagBits::e64 : return "64";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkImportSemaphoreZirconHandleFUCHSIA( device, pImportSemaphoreZirconHandleInfo );
}
- }
-
- enum class SamplerAddressMode
- {
- eRepeat = VK_SAMPLER_ADDRESS_MODE_REPEAT,
- eMirroredRepeat = VK_SAMPLER_ADDRESS_MODE_MIRRORED_REPEAT,
- eClampToEdge = VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE,
- eClampToBorder = VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER,
- eMirrorClampToEdge = VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE,
- eMirrorClampToEdgeKHR = VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE_KHR
- };
- VULKAN_HPP_INLINE std::string to_string( SamplerAddressMode value )
- {
- switch ( value )
+ VkResult vkGetSemaphoreZirconHandleFUCHSIA( VkDevice device,
+ const VkSemaphoreGetZirconHandleInfoFUCHSIA * pGetZirconHandleInfo,
+ zx_handle_t * pZirconHandle ) const VULKAN_HPP_NOEXCEPT
{
- case SamplerAddressMode::eRepeat : return "Repeat";
- case SamplerAddressMode::eMirroredRepeat : return "MirroredRepeat";
- case SamplerAddressMode::eClampToEdge : return "ClampToEdge";
- case SamplerAddressMode::eClampToBorder : return "ClampToBorder";
- case SamplerAddressMode::eMirrorClampToEdge : return "MirrorClampToEdge";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkGetSemaphoreZirconHandleFUCHSIA( device, pGetZirconHandleInfo, pZirconHandle );
}
- }
+# endif /*VK_USE_PLATFORM_FUCHSIA*/
- enum class SamplerCreateFlagBits : VkSamplerCreateFlags
- {
- eSubsampledEXT = VK_SAMPLER_CREATE_SUBSAMPLED_BIT_EXT,
- eSubsampledCoarseReconstructionEXT = VK_SAMPLER_CREATE_SUBSAMPLED_COARSE_RECONSTRUCTION_BIT_EXT
- };
+ //=== VK_HUAWEI_subpass_shading ===
- VULKAN_HPP_INLINE std::string to_string( SamplerCreateFlagBits value )
- {
- switch ( value )
+ VkResult vkGetSubpassShadingMaxWorkgroupSizeHUAWEI( VkRenderPass renderpass,
+ VkExtent2D * pMaxWorkgroupSize ) const VULKAN_HPP_NOEXCEPT
{
- case SamplerCreateFlagBits::eSubsampledEXT : return "SubsampledEXT";
- case SamplerCreateFlagBits::eSubsampledCoarseReconstructionEXT : return "SubsampledCoarseReconstructionEXT";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkGetSubpassShadingMaxWorkgroupSizeHUAWEI( renderpass, pMaxWorkgroupSize );
}
- }
- enum class SamplerMipmapMode
- {
- eNearest = VK_SAMPLER_MIPMAP_MODE_NEAREST,
- eLinear = VK_SAMPLER_MIPMAP_MODE_LINEAR
- };
-
- VULKAN_HPP_INLINE std::string to_string( SamplerMipmapMode value )
- {
- switch ( value )
+ void vkCmdSubpassShadingHUAWEI( VkCommandBuffer commandBuffer ) const VULKAN_HPP_NOEXCEPT
{
- case SamplerMipmapMode::eNearest : return "Nearest";
- case SamplerMipmapMode::eLinear : return "Linear";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCmdSubpassShadingHUAWEI( commandBuffer );
}
- }
- enum class SamplerReductionMode
- {
- eWeightedAverage = VK_SAMPLER_REDUCTION_MODE_WEIGHTED_AVERAGE,
- eMin = VK_SAMPLER_REDUCTION_MODE_MIN,
- eMax = VK_SAMPLER_REDUCTION_MODE_MAX
- };
- using SamplerReductionModeEXT = SamplerReductionMode;
+ //=== VK_EXT_extended_dynamic_state2 ===
- VULKAN_HPP_INLINE std::string to_string( SamplerReductionMode value )
- {
- switch ( value )
+ void vkCmdSetPatchControlPointsEXT( VkCommandBuffer commandBuffer,
+ uint32_t patchControlPoints ) const VULKAN_HPP_NOEXCEPT
{
- case SamplerReductionMode::eWeightedAverage : return "WeightedAverage";
- case SamplerReductionMode::eMin : return "Min";
- case SamplerReductionMode::eMax : return "Max";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCmdSetPatchControlPointsEXT( commandBuffer, patchControlPoints );
}
- }
-
- enum class SamplerYcbcrModelConversion
- {
- eRgbIdentity = VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY,
- eYcbcrIdentity = VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY,
- eYcbcr709 = VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709,
- eYcbcr601 = VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601,
- eYcbcr2020 = VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020
- };
- using SamplerYcbcrModelConversionKHR = SamplerYcbcrModelConversion;
- VULKAN_HPP_INLINE std::string to_string( SamplerYcbcrModelConversion value )
- {
- switch ( value )
+ void vkCmdSetRasterizerDiscardEnableEXT( VkCommandBuffer commandBuffer,
+ VkBool32 rasterizerDiscardEnable ) const VULKAN_HPP_NOEXCEPT
{
- case SamplerYcbcrModelConversion::eRgbIdentity : return "RgbIdentity";
- case SamplerYcbcrModelConversion::eYcbcrIdentity : return "YcbcrIdentity";
- case SamplerYcbcrModelConversion::eYcbcr709 : return "Ycbcr709";
- case SamplerYcbcrModelConversion::eYcbcr601 : return "Ycbcr601";
- case SamplerYcbcrModelConversion::eYcbcr2020 : return "Ycbcr2020";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCmdSetRasterizerDiscardEnableEXT( commandBuffer, rasterizerDiscardEnable );
}
- }
- enum class SamplerYcbcrRange
- {
- eItuFull = VK_SAMPLER_YCBCR_RANGE_ITU_FULL,
- eItuNarrow = VK_SAMPLER_YCBCR_RANGE_ITU_NARROW
- };
- using SamplerYcbcrRangeKHR = SamplerYcbcrRange;
-
- VULKAN_HPP_INLINE std::string to_string( SamplerYcbcrRange value )
- {
- switch ( value )
+ void vkCmdSetDepthBiasEnableEXT( VkCommandBuffer commandBuffer, VkBool32 depthBiasEnable ) const VULKAN_HPP_NOEXCEPT
{
- case SamplerYcbcrRange::eItuFull : return "ItuFull";
- case SamplerYcbcrRange::eItuNarrow : return "ItuNarrow";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCmdSetDepthBiasEnableEXT( commandBuffer, depthBiasEnable );
}
- }
- enum class ScopeNV
- {
- eDevice = VK_SCOPE_DEVICE_NV,
- eWorkgroup = VK_SCOPE_WORKGROUP_NV,
- eSubgroup = VK_SCOPE_SUBGROUP_NV,
- eQueueFamily = VK_SCOPE_QUEUE_FAMILY_NV
- };
-
- VULKAN_HPP_INLINE std::string to_string( ScopeNV value )
- {
- switch ( value )
+ void vkCmdSetLogicOpEXT( VkCommandBuffer commandBuffer, VkLogicOp logicOp ) const VULKAN_HPP_NOEXCEPT
{
- case ScopeNV::eDevice : return "Device";
- case ScopeNV::eWorkgroup : return "Workgroup";
- case ScopeNV::eSubgroup : return "Subgroup";
- case ScopeNV::eQueueFamily : return "QueueFamily";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCmdSetLogicOpEXT( commandBuffer, logicOp );
}
- }
-
- enum class SemaphoreImportFlagBits : VkSemaphoreImportFlags
- {
- eTemporary = VK_SEMAPHORE_IMPORT_TEMPORARY_BIT
- };
- using SemaphoreImportFlagBitsKHR = SemaphoreImportFlagBits;
- VULKAN_HPP_INLINE std::string to_string( SemaphoreImportFlagBits value )
- {
- switch ( value )
+ void vkCmdSetPrimitiveRestartEnableEXT( VkCommandBuffer commandBuffer,
+ VkBool32 primitiveRestartEnable ) const VULKAN_HPP_NOEXCEPT
{
- case SemaphoreImportFlagBits::eTemporary : return "Temporary";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCmdSetPrimitiveRestartEnableEXT( commandBuffer, primitiveRestartEnable );
}
- }
- enum class SemaphoreType
- {
- eBinary = VK_SEMAPHORE_TYPE_BINARY,
- eTimeline = VK_SEMAPHORE_TYPE_TIMELINE
- };
- using SemaphoreTypeKHR = SemaphoreType;
+# if defined( VK_USE_PLATFORM_SCREEN_QNX )
+ //=== VK_QNX_screen_surface ===
- VULKAN_HPP_INLINE std::string to_string( SemaphoreType value )
- {
- switch ( value )
+ VkResult vkCreateScreenSurfaceQNX( VkInstance instance,
+ const VkScreenSurfaceCreateInfoQNX * pCreateInfo,
+ const VkAllocationCallbacks * pAllocator,
+ VkSurfaceKHR * pSurface ) const VULKAN_HPP_NOEXCEPT
{
- case SemaphoreType::eBinary : return "Binary";
- case SemaphoreType::eTimeline : return "Timeline";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCreateScreenSurfaceQNX( instance, pCreateInfo, pAllocator, pSurface );
}
- }
- enum class SemaphoreWaitFlagBits : VkSemaphoreWaitFlags
- {
- eAny = VK_SEMAPHORE_WAIT_ANY_BIT
- };
- using SemaphoreWaitFlagBitsKHR = SemaphoreWaitFlagBits;
-
- VULKAN_HPP_INLINE std::string to_string( SemaphoreWaitFlagBits value )
- {
- switch ( value )
+ VkBool32 vkGetPhysicalDeviceScreenPresentationSupportQNX( VkPhysicalDevice physicalDevice,
+ uint32_t queueFamilyIndex,
+ struct _screen_window * window ) const VULKAN_HPP_NOEXCEPT
{
- case SemaphoreWaitFlagBits::eAny : return "Any";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkGetPhysicalDeviceScreenPresentationSupportQNX( physicalDevice, queueFamilyIndex, window );
}
- }
-
- enum class ShaderCorePropertiesFlagBitsAMD : VkShaderCorePropertiesFlagsAMD
- {};
+# endif /*VK_USE_PLATFORM_SCREEN_QNX*/
- VULKAN_HPP_INLINE std::string to_string( ShaderCorePropertiesFlagBitsAMD )
- {
- return "(void)";
- }
+ //=== VK_EXT_color_write_enable ===
- enum class ShaderFloatControlsIndependence
- {
- e32BitOnly = VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_32_BIT_ONLY,
- eAll = VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_ALL,
- eNone = VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_NONE
- };
- using ShaderFloatControlsIndependenceKHR = ShaderFloatControlsIndependence;
-
- VULKAN_HPP_INLINE std::string to_string( ShaderFloatControlsIndependence value )
- {
- switch ( value )
+ void vkCmdSetColorWriteEnableEXT( VkCommandBuffer commandBuffer,
+ uint32_t attachmentCount,
+ const VkBool32 * pColorWriteEnables ) const VULKAN_HPP_NOEXCEPT
{
- case ShaderFloatControlsIndependence::e32BitOnly : return "32BitOnly";
- case ShaderFloatControlsIndependence::eAll : return "All";
- case ShaderFloatControlsIndependence::eNone : return "None";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCmdSetColorWriteEnableEXT( commandBuffer, attachmentCount, pColorWriteEnables );
}
- }
- enum class ShaderGroupShaderKHR
- {
- eGeneral = VK_SHADER_GROUP_SHADER_GENERAL_KHR,
- eClosestHit = VK_SHADER_GROUP_SHADER_CLOSEST_HIT_KHR,
- eAnyHit = VK_SHADER_GROUP_SHADER_ANY_HIT_KHR,
- eIntersection = VK_SHADER_GROUP_SHADER_INTERSECTION_KHR
- };
+ //=== VK_EXT_multi_draw ===
- VULKAN_HPP_INLINE std::string to_string( ShaderGroupShaderKHR value )
- {
- switch ( value )
+ void vkCmdDrawMultiEXT( VkCommandBuffer commandBuffer,
+ uint32_t drawCount,
+ const VkMultiDrawInfoEXT * pVertexInfo,
+ uint32_t instanceCount,
+ uint32_t firstInstance,
+ uint32_t stride ) const VULKAN_HPP_NOEXCEPT
{
- case ShaderGroupShaderKHR::eGeneral : return "General";
- case ShaderGroupShaderKHR::eClosestHit : return "ClosestHit";
- case ShaderGroupShaderKHR::eAnyHit : return "AnyHit";
- case ShaderGroupShaderKHR::eIntersection : return "Intersection";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCmdDrawMultiEXT( commandBuffer, drawCount, pVertexInfo, instanceCount, firstInstance, stride );
}
- }
-
- enum class ShaderInfoTypeAMD
- {
- eStatistics = VK_SHADER_INFO_TYPE_STATISTICS_AMD,
- eBinary = VK_SHADER_INFO_TYPE_BINARY_AMD,
- eDisassembly = VK_SHADER_INFO_TYPE_DISASSEMBLY_AMD
- };
- VULKAN_HPP_INLINE std::string to_string( ShaderInfoTypeAMD value )
- {
- switch ( value )
+ void vkCmdDrawMultiIndexedEXT( VkCommandBuffer commandBuffer,
+ uint32_t drawCount,
+ const VkMultiDrawIndexedInfoEXT * pIndexInfo,
+ uint32_t instanceCount,
+ uint32_t firstInstance,
+ uint32_t stride,
+ const int32_t * pVertexOffset ) const VULKAN_HPP_NOEXCEPT
{
- case ShaderInfoTypeAMD::eStatistics : return "Statistics";
- case ShaderInfoTypeAMD::eBinary : return "Binary";
- case ShaderInfoTypeAMD::eDisassembly : return "Disassembly";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
- }
- }
-
- enum class ShaderModuleCreateFlagBits : VkShaderModuleCreateFlags
- {};
-
- VULKAN_HPP_INLINE std::string to_string( ShaderModuleCreateFlagBits )
- {
- return "(void)";
- }
-
- enum class ShaderStageFlagBits : VkShaderStageFlags
- {
- eVertex = VK_SHADER_STAGE_VERTEX_BIT,
- eTessellationControl = VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT,
- eTessellationEvaluation = VK_SHADER_STAGE_TESSELLATION_EVALUATION_BIT,
- eGeometry = VK_SHADER_STAGE_GEOMETRY_BIT,
- eFragment = VK_SHADER_STAGE_FRAGMENT_BIT,
- eCompute = VK_SHADER_STAGE_COMPUTE_BIT,
- eAllGraphics = VK_SHADER_STAGE_ALL_GRAPHICS,
- eAll = VK_SHADER_STAGE_ALL,
- eRaygenKHR = VK_SHADER_STAGE_RAYGEN_BIT_KHR,
- eAnyHitKHR = VK_SHADER_STAGE_ANY_HIT_BIT_KHR,
- eClosestHitKHR = VK_SHADER_STAGE_CLOSEST_HIT_BIT_KHR,
- eMissKHR = VK_SHADER_STAGE_MISS_BIT_KHR,
- eIntersectionKHR = VK_SHADER_STAGE_INTERSECTION_BIT_KHR,
- eCallableKHR = VK_SHADER_STAGE_CALLABLE_BIT_KHR,
- eTaskNV = VK_SHADER_STAGE_TASK_BIT_NV,
- eMeshNV = VK_SHADER_STAGE_MESH_BIT_NV,
- eAnyHitNV = VK_SHADER_STAGE_ANY_HIT_BIT_NV,
- eCallableNV = VK_SHADER_STAGE_CALLABLE_BIT_NV,
- eClosestHitNV = VK_SHADER_STAGE_CLOSEST_HIT_BIT_NV,
- eIntersectionNV = VK_SHADER_STAGE_INTERSECTION_BIT_NV,
- eMissNV = VK_SHADER_STAGE_MISS_BIT_NV,
- eRaygenNV = VK_SHADER_STAGE_RAYGEN_BIT_NV
- };
-
- VULKAN_HPP_INLINE std::string to_string( ShaderStageFlagBits value )
- {
- switch ( value )
- {
- case ShaderStageFlagBits::eVertex : return "Vertex";
- case ShaderStageFlagBits::eTessellationControl : return "TessellationControl";
- case ShaderStageFlagBits::eTessellationEvaluation : return "TessellationEvaluation";
- case ShaderStageFlagBits::eGeometry : return "Geometry";
- case ShaderStageFlagBits::eFragment : return "Fragment";
- case ShaderStageFlagBits::eCompute : return "Compute";
- case ShaderStageFlagBits::eAllGraphics : return "AllGraphics";
- case ShaderStageFlagBits::eAll : return "All";
- case ShaderStageFlagBits::eRaygenKHR : return "RaygenKHR";
- case ShaderStageFlagBits::eAnyHitKHR : return "AnyHitKHR";
- case ShaderStageFlagBits::eClosestHitKHR : return "ClosestHitKHR";
- case ShaderStageFlagBits::eMissKHR : return "MissKHR";
- case ShaderStageFlagBits::eIntersectionKHR : return "IntersectionKHR";
- case ShaderStageFlagBits::eCallableKHR : return "CallableKHR";
- case ShaderStageFlagBits::eTaskNV : return "TaskNV";
- case ShaderStageFlagBits::eMeshNV : return "MeshNV";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return ::vkCmdDrawMultiIndexedEXT(
+ commandBuffer, drawCount, pIndexInfo, instanceCount, firstInstance, stride, pVertexOffset );
}
- }
-
- enum class ShadingRatePaletteEntryNV
- {
- eNoInvocations = VK_SHADING_RATE_PALETTE_ENTRY_NO_INVOCATIONS_NV,
- e16InvocationsPerPixel = VK_SHADING_RATE_PALETTE_ENTRY_16_INVOCATIONS_PER_PIXEL_NV,
- e8InvocationsPerPixel = VK_SHADING_RATE_PALETTE_ENTRY_8_INVOCATIONS_PER_PIXEL_NV,
- e4InvocationsPerPixel = VK_SHADING_RATE_PALETTE_ENTRY_4_INVOCATIONS_PER_PIXEL_NV,
- e2InvocationsPerPixel = VK_SHADING_RATE_PALETTE_ENTRY_2_INVOCATIONS_PER_PIXEL_NV,
- e1InvocationPerPixel = VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_PIXEL_NV,
- e1InvocationPer2X1Pixels = VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_2X1_PIXELS_NV,
- e1InvocationPer1X2Pixels = VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_1X2_PIXELS_NV,
- e1InvocationPer2X2Pixels = VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_2X2_PIXELS_NV,
- e1InvocationPer4X2Pixels = VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_4X2_PIXELS_NV,
- e1InvocationPer2X4Pixels = VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_2X4_PIXELS_NV,
- e1InvocationPer4X4Pixels = VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_4X4_PIXELS_NV
- };
-
- VULKAN_HPP_INLINE std::string to_string( ShadingRatePaletteEntryNV value )
- {
- switch ( value )
- {
- case ShadingRatePaletteEntryNV::eNoInvocations : return "NoInvocations";
- case ShadingRatePaletteEntryNV::e16InvocationsPerPixel : return "16InvocationsPerPixel";
- case ShadingRatePaletteEntryNV::e8InvocationsPerPixel : return "8InvocationsPerPixel";
- case ShadingRatePaletteEntryNV::e4InvocationsPerPixel : return "4InvocationsPerPixel";
- case ShadingRatePaletteEntryNV::e2InvocationsPerPixel : return "2InvocationsPerPixel";
- case ShadingRatePaletteEntryNV::e1InvocationPerPixel : return "1InvocationPerPixel";
- case ShadingRatePaletteEntryNV::e1InvocationPer2X1Pixels : return "1InvocationPer2X1Pixels";
- case ShadingRatePaletteEntryNV::e1InvocationPer1X2Pixels : return "1InvocationPer1X2Pixels";
- case ShadingRatePaletteEntryNV::e1InvocationPer2X2Pixels : return "1InvocationPer2X2Pixels";
- case ShadingRatePaletteEntryNV::e1InvocationPer4X2Pixels : return "1InvocationPer4X2Pixels";
- case ShadingRatePaletteEntryNV::e1InvocationPer2X4Pixels : return "1InvocationPer2X4Pixels";
- case ShadingRatePaletteEntryNV::e1InvocationPer4X4Pixels : return "1InvocationPer4X4Pixels";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
- }
- }
-
- enum class SharingMode
- {
- eExclusive = VK_SHARING_MODE_EXCLUSIVE,
- eConcurrent = VK_SHARING_MODE_CONCURRENT
};
+#endif
- VULKAN_HPP_INLINE std::string to_string( SharingMode value )
- {
- switch ( value )
- {
- case SharingMode::eExclusive : return "Exclusive";
- case SharingMode::eConcurrent : return "Concurrent";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
- }
- }
+ class DispatchLoaderDynamic;
+#if !defined( VULKAN_HPP_DISPATCH_LOADER_DYNAMIC )
+# if defined( VK_NO_PROTOTYPES )
+# define VULKAN_HPP_DISPATCH_LOADER_DYNAMIC 1
+# else
+# define VULKAN_HPP_DISPATCH_LOADER_DYNAMIC 0
+# endif
+#endif
- enum class SparseImageFormatFlagBits : VkSparseImageFormatFlags
- {
- eSingleMiptail = VK_SPARSE_IMAGE_FORMAT_SINGLE_MIPTAIL_BIT,
- eAlignedMipSize = VK_SPARSE_IMAGE_FORMAT_ALIGNED_MIP_SIZE_BIT,
- eNonstandardBlockSize = VK_SPARSE_IMAGE_FORMAT_NONSTANDARD_BLOCK_SIZE_BIT
- };
+#if !defined( VULKAN_HPP_STORAGE_API )
+# if defined( VULKAN_HPP_STORAGE_SHARED )
+# if defined( _MSC_VER )
+# if defined( VULKAN_HPP_STORAGE_SHARED_EXPORT )
+# define VULKAN_HPP_STORAGE_API __declspec( dllexport )
+# else
+# define VULKAN_HPP_STORAGE_API __declspec( dllimport )
+# endif
+# elif defined( __clang__ ) || defined( __GNUC__ )
+# if defined( VULKAN_HPP_STORAGE_SHARED_EXPORT )
+# define VULKAN_HPP_STORAGE_API __attribute__( ( visibility( "default" ) ) )
+# else
+# define VULKAN_HPP_STORAGE_API
+# endif
+# else
+# define VULKAN_HPP_STORAGE_API
+# pragma warning Unknown import / export semantics
+# endif
+# else
+# define VULKAN_HPP_STORAGE_API
+# endif
+#endif
- VULKAN_HPP_INLINE std::string to_string( SparseImageFormatFlagBits value )
- {
- switch ( value )
- {
- case SparseImageFormatFlagBits::eSingleMiptail : return "SingleMiptail";
- case SparseImageFormatFlagBits::eAlignedMipSize : return "AlignedMipSize";
- case SparseImageFormatFlagBits::eNonstandardBlockSize : return "NonstandardBlockSize";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
- }
- }
+#if !defined( VULKAN_HPP_DEFAULT_DISPATCHER )
+# if VULKAN_HPP_DISPATCH_LOADER_DYNAMIC == 1
+# define VULKAN_HPP_DEFAULT_DISPATCHER ::VULKAN_HPP_NAMESPACE::defaultDispatchLoaderDynamic
+# define VULKAN_HPP_DEFAULT_DISPATCH_LOADER_DYNAMIC_STORAGE \
+ namespace VULKAN_HPP_NAMESPACE \
+ { \
+ VULKAN_HPP_STORAGE_API DispatchLoaderDynamic defaultDispatchLoaderDynamic; \
+ }
+ extern VULKAN_HPP_STORAGE_API DispatchLoaderDynamic defaultDispatchLoaderDynamic;
+# else
+# define VULKAN_HPP_DEFAULT_DISPATCHER ::VULKAN_HPP_NAMESPACE::DispatchLoaderStatic()
+# define VULKAN_HPP_DEFAULT_DISPATCH_LOADER_DYNAMIC_STORAGE
+# endif
+#endif
- enum class SparseMemoryBindFlagBits : VkSparseMemoryBindFlags
- {
- eMetadata = VK_SPARSE_MEMORY_BIND_METADATA_BIT
- };
+#if !defined( VULKAN_HPP_DEFAULT_DISPATCHER_TYPE )
+# if VULKAN_HPP_DISPATCH_LOADER_DYNAMIC == 1
+# define VULKAN_HPP_DEFAULT_DISPATCHER_TYPE ::VULKAN_HPP_NAMESPACE::DispatchLoaderDynamic
+# else
+# define VULKAN_HPP_DEFAULT_DISPATCHER_TYPE ::VULKAN_HPP_NAMESPACE::DispatchLoaderStatic
+# endif
+#endif
- VULKAN_HPP_INLINE std::string to_string( SparseMemoryBindFlagBits value )
- {
- switch ( value )
- {
- case SparseMemoryBindFlagBits::eMetadata : return "Metadata";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
- }
- }
+#if defined( VULKAN_HPP_NO_DEFAULT_DISPATCHER )
+# define VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT
+# define VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT
+# define VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT
+#else
+# define VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT = {}
+# define VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT = nullptr
+# define VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT = VULKAN_HPP_DEFAULT_DISPATCHER
+#endif
- enum class StencilFaceFlagBits : VkStencilFaceFlags
- {
- eFront = VK_STENCIL_FACE_FRONT_BIT,
- eBack = VK_STENCIL_FACE_BACK_BIT,
- eFrontAndBack = VK_STENCIL_FACE_FRONT_AND_BACK,
- eVkStencilFrontAndBack = VK_STENCIL_FRONT_AND_BACK
- };
+ struct AllocationCallbacks;
- VULKAN_HPP_INLINE std::string to_string( StencilFaceFlagBits value )
+ template <typename OwnerType, typename Dispatch>
+ class ObjectDestroy
{
- switch ( value )
- {
- case StencilFaceFlagBits::eFront : return "Front";
- case StencilFaceFlagBits::eBack : return "Back";
- case StencilFaceFlagBits::eFrontAndBack : return "FrontAndBack";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
- }
- }
+ public:
+ ObjectDestroy() = default;
- enum class StencilOp
- {
- eKeep = VK_STENCIL_OP_KEEP,
- eZero = VK_STENCIL_OP_ZERO,
- eReplace = VK_STENCIL_OP_REPLACE,
- eIncrementAndClamp = VK_STENCIL_OP_INCREMENT_AND_CLAMP,
- eDecrementAndClamp = VK_STENCIL_OP_DECREMENT_AND_CLAMP,
- eInvert = VK_STENCIL_OP_INVERT,
- eIncrementAndWrap = VK_STENCIL_OP_INCREMENT_AND_WRAP,
- eDecrementAndWrap = VK_STENCIL_OP_DECREMENT_AND_WRAP
- };
+ ObjectDestroy( OwnerType owner,
+ Optional<const AllocationCallbacks> allocationCallbacks
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & dispatch = VULKAN_HPP_DEFAULT_DISPATCHER ) VULKAN_HPP_NOEXCEPT
+ : m_owner( owner )
+ , m_allocationCallbacks( allocationCallbacks )
+ , m_dispatch( &dispatch )
+ {}
- VULKAN_HPP_INLINE std::string to_string( StencilOp value )
- {
- switch ( value )
+ OwnerType getOwner() const VULKAN_HPP_NOEXCEPT
{
- case StencilOp::eKeep : return "Keep";
- case StencilOp::eZero : return "Zero";
- case StencilOp::eReplace : return "Replace";
- case StencilOp::eIncrementAndClamp : return "IncrementAndClamp";
- case StencilOp::eDecrementAndClamp : return "DecrementAndClamp";
- case StencilOp::eInvert : return "Invert";
- case StencilOp::eIncrementAndWrap : return "IncrementAndWrap";
- case StencilOp::eDecrementAndWrap : return "DecrementAndWrap";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
- }
- }
-
- enum class StructureType
- {
- eApplicationInfo = VK_STRUCTURE_TYPE_APPLICATION_INFO,
- eInstanceCreateInfo = VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO,
- eDeviceQueueCreateInfo = VK_STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO,
- eDeviceCreateInfo = VK_STRUCTURE_TYPE_DEVICE_CREATE_INFO,
- eSubmitInfo = VK_STRUCTURE_TYPE_SUBMIT_INFO,
- eMemoryAllocateInfo = VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO,
- eMappedMemoryRange = VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE,
- eBindSparseInfo = VK_STRUCTURE_TYPE_BIND_SPARSE_INFO,
- eFenceCreateInfo = VK_STRUCTURE_TYPE_FENCE_CREATE_INFO,
- eSemaphoreCreateInfo = VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO,
- eEventCreateInfo = VK_STRUCTURE_TYPE_EVENT_CREATE_INFO,
- eQueryPoolCreateInfo = VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO,
- eBufferCreateInfo = VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO,
- eBufferViewCreateInfo = VK_STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO,
- eImageCreateInfo = VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO,
- eImageViewCreateInfo = VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO,
- eShaderModuleCreateInfo = VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO,
- ePipelineCacheCreateInfo = VK_STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO,
- ePipelineShaderStageCreateInfo = VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO,
- ePipelineVertexInputStateCreateInfo = VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO,
- ePipelineInputAssemblyStateCreateInfo = VK_STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO,
- ePipelineTessellationStateCreateInfo = VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO,
- ePipelineViewportStateCreateInfo = VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO,
- ePipelineRasterizationStateCreateInfo = VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO,
- ePipelineMultisampleStateCreateInfo = VK_STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO,
- ePipelineDepthStencilStateCreateInfo = VK_STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO,
- ePipelineColorBlendStateCreateInfo = VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO,
- ePipelineDynamicStateCreateInfo = VK_STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO,
- eGraphicsPipelineCreateInfo = VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO,
- eComputePipelineCreateInfo = VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO,
- ePipelineLayoutCreateInfo = VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO,
- eSamplerCreateInfo = VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO,
- eDescriptorSetLayoutCreateInfo = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO,
- eDescriptorPoolCreateInfo = VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO,
- eDescriptorSetAllocateInfo = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO,
- eWriteDescriptorSet = VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET,
- eCopyDescriptorSet = VK_STRUCTURE_TYPE_COPY_DESCRIPTOR_SET,
- eFramebufferCreateInfo = VK_STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO,
- eRenderPassCreateInfo = VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO,
- eCommandPoolCreateInfo = VK_STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO,
- eCommandBufferAllocateInfo = VK_STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO,
- eCommandBufferInheritanceInfo = VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO,
- eCommandBufferBeginInfo = VK_STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO,
- eRenderPassBeginInfo = VK_STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO,
- eBufferMemoryBarrier = VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER,
- eImageMemoryBarrier = VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER,
- eMemoryBarrier = VK_STRUCTURE_TYPE_MEMORY_BARRIER,
- eLoaderInstanceCreateInfo = VK_STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO,
- eLoaderDeviceCreateInfo = VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO,
- ePhysicalDeviceSubgroupProperties = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES,
- eBindBufferMemoryInfo = VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO,
- eBindImageMemoryInfo = VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO,
- ePhysicalDevice16BitStorageFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES,
- eMemoryDedicatedRequirements = VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS,
- eMemoryDedicatedAllocateInfo = VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO,
- eMemoryAllocateFlagsInfo = VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO,
- eDeviceGroupRenderPassBeginInfo = VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO,
- eDeviceGroupCommandBufferBeginInfo = VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO,
- eDeviceGroupSubmitInfo = VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO,
- eDeviceGroupBindSparseInfo = VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO,
- eBindBufferMemoryDeviceGroupInfo = VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO,
- eBindImageMemoryDeviceGroupInfo = VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO,
- ePhysicalDeviceGroupProperties = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES,
- eDeviceGroupDeviceCreateInfo = VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO,
- eBufferMemoryRequirementsInfo2 = VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2,
- eImageMemoryRequirementsInfo2 = VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2,
- eImageSparseMemoryRequirementsInfo2 = VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2,
- eMemoryRequirements2 = VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2,
- eSparseImageMemoryRequirements2 = VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2,
- ePhysicalDeviceFeatures2 = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2,
- ePhysicalDeviceProperties2 = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2,
- eFormatProperties2 = VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2,
- eImageFormatProperties2 = VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2,
- ePhysicalDeviceImageFormatInfo2 = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2,
- eQueueFamilyProperties2 = VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2,
- ePhysicalDeviceMemoryProperties2 = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2,
- eSparseImageFormatProperties2 = VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2,
- ePhysicalDeviceSparseImageFormatInfo2 = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2,
- ePhysicalDevicePointClippingProperties = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES,
- eRenderPassInputAttachmentAspectCreateInfo = VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO,
- eImageViewUsageCreateInfo = VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO,
- ePipelineTessellationDomainOriginStateCreateInfo = VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO,
- eRenderPassMultiviewCreateInfo = VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO,
- ePhysicalDeviceMultiviewFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES,
- ePhysicalDeviceMultiviewProperties = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES,
- ePhysicalDeviceVariablePointersFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES,
- eProtectedSubmitInfo = VK_STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO,
- ePhysicalDeviceProtectedMemoryFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES,
- ePhysicalDeviceProtectedMemoryProperties = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES,
- eDeviceQueueInfo2 = VK_STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2,
- eSamplerYcbcrConversionCreateInfo = VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO,
- eSamplerYcbcrConversionInfo = VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO,
- eBindImagePlaneMemoryInfo = VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO,
- eImagePlaneMemoryRequirementsInfo = VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO,
- ePhysicalDeviceSamplerYcbcrConversionFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES,
- eSamplerYcbcrConversionImageFormatProperties = VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES,
- eDescriptorUpdateTemplateCreateInfo = VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO,
- ePhysicalDeviceExternalImageFormatInfo = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO,
- eExternalImageFormatProperties = VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES,
- ePhysicalDeviceExternalBufferInfo = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO,
- eExternalBufferProperties = VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES,
- ePhysicalDeviceIdProperties = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES,
- eExternalMemoryBufferCreateInfo = VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO,
- eExternalMemoryImageCreateInfo = VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO,
- eExportMemoryAllocateInfo = VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO,
- ePhysicalDeviceExternalFenceInfo = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO,
- eExternalFenceProperties = VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES,
- eExportFenceCreateInfo = VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO,
- eExportSemaphoreCreateInfo = VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO,
- ePhysicalDeviceExternalSemaphoreInfo = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO,
- eExternalSemaphoreProperties = VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES,
- ePhysicalDeviceMaintenance3Properties = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES,
- eDescriptorSetLayoutSupport = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT,
- ePhysicalDeviceShaderDrawParametersFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES,
- ePhysicalDeviceVulkan11Features = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES,
- ePhysicalDeviceVulkan11Properties = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES,
- ePhysicalDeviceVulkan12Features = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES,
- ePhysicalDeviceVulkan12Properties = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES,
- eImageFormatListCreateInfo = VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO,
- eAttachmentDescription2 = VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2,
- eAttachmentReference2 = VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2,
- eSubpassDescription2 = VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2,
- eSubpassDependency2 = VK_STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2,
- eRenderPassCreateInfo2 = VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2,
- eSubpassBeginInfo = VK_STRUCTURE_TYPE_SUBPASS_BEGIN_INFO,
- eSubpassEndInfo = VK_STRUCTURE_TYPE_SUBPASS_END_INFO,
- ePhysicalDevice8BitStorageFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES,
- ePhysicalDeviceDriverProperties = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES,
- ePhysicalDeviceShaderAtomicInt64Features = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES,
- ePhysicalDeviceShaderFloat16Int8Features = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES,
- ePhysicalDeviceFloatControlsProperties = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES,
- eDescriptorSetLayoutBindingFlagsCreateInfo = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO,
- ePhysicalDeviceDescriptorIndexingFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES,
- ePhysicalDeviceDescriptorIndexingProperties = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES,
- eDescriptorSetVariableDescriptorCountAllocateInfo = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO,
- eDescriptorSetVariableDescriptorCountLayoutSupport = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT,
- ePhysicalDeviceDepthStencilResolveProperties = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES,
- eSubpassDescriptionDepthStencilResolve = VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE,
- ePhysicalDeviceScalarBlockLayoutFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES,
- eImageStencilUsageCreateInfo = VK_STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO,
- ePhysicalDeviceSamplerFilterMinmaxProperties = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES,
- eSamplerReductionModeCreateInfo = VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO,
- ePhysicalDeviceVulkanMemoryModelFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES,
- ePhysicalDeviceImagelessFramebufferFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES,
- eFramebufferAttachmentsCreateInfo = VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO,
- eFramebufferAttachmentImageInfo = VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO,
- eRenderPassAttachmentBeginInfo = VK_STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO,
- ePhysicalDeviceUniformBufferStandardLayoutFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES,
- ePhysicalDeviceShaderSubgroupExtendedTypesFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES,
- ePhysicalDeviceSeparateDepthStencilLayoutsFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES,
- eAttachmentReferenceStencilLayout = VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT,
- eAttachmentDescriptionStencilLayout = VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT,
- ePhysicalDeviceHostQueryResetFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES,
- ePhysicalDeviceTimelineSemaphoreFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES,
- ePhysicalDeviceTimelineSemaphoreProperties = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES,
- eSemaphoreTypeCreateInfo = VK_STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO,
- eTimelineSemaphoreSubmitInfo = VK_STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO,
- eSemaphoreWaitInfo = VK_STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO,
- eSemaphoreSignalInfo = VK_STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO,
- ePhysicalDeviceBufferDeviceAddressFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES,
- eBufferDeviceAddressInfo = VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO,
- eBufferOpaqueCaptureAddressCreateInfo = VK_STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO,
- eMemoryOpaqueCaptureAddressAllocateInfo = VK_STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO,
- eDeviceMemoryOpaqueCaptureAddressInfo = VK_STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO,
- eSwapchainCreateInfoKHR = VK_STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR,
- ePresentInfoKHR = VK_STRUCTURE_TYPE_PRESENT_INFO_KHR,
- eDeviceGroupPresentCapabilitiesKHR = VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR,
- eImageSwapchainCreateInfoKHR = VK_STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR,
- eBindImageMemorySwapchainInfoKHR = VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR,
- eAcquireNextImageInfoKHR = VK_STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR,
- eDeviceGroupPresentInfoKHR = VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR,
- eDeviceGroupSwapchainCreateInfoKHR = VK_STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR,
- eDisplayModeCreateInfoKHR = VK_STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR,
- eDisplaySurfaceCreateInfoKHR = VK_STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR,
- eDisplayPresentInfoKHR = VK_STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR,
- eXlibSurfaceCreateInfoKHR = VK_STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR,
- eXcbSurfaceCreateInfoKHR = VK_STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR,
- eWaylandSurfaceCreateInfoKHR = VK_STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR,
- eAndroidSurfaceCreateInfoKHR = VK_STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR,
- eWin32SurfaceCreateInfoKHR = VK_STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR,
- eDebugReportCallbackCreateInfoEXT = VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT,
- ePipelineRasterizationStateRasterizationOrderAMD = VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD,
- eDebugMarkerObjectNameInfoEXT = VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT,
- eDebugMarkerObjectTagInfoEXT = VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT,
- eDebugMarkerMarkerInfoEXT = VK_STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT,
- eDedicatedAllocationImageCreateInfoNV = VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV,
- eDedicatedAllocationBufferCreateInfoNV = VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV,
- eDedicatedAllocationMemoryAllocateInfoNV = VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV,
- ePhysicalDeviceTransformFeedbackFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT,
- ePhysicalDeviceTransformFeedbackPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT,
- ePipelineRasterizationStateStreamCreateInfoEXT = VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT,
- eImageViewHandleInfoNVX = VK_STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX,
- eImageViewAddressPropertiesNVX = VK_STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX,
- eTextureLodGatherFormatPropertiesAMD = VK_STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD,
- eStreamDescriptorSurfaceCreateInfoGGP = VK_STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP,
- ePhysicalDeviceCornerSampledImageFeaturesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV,
- eExternalMemoryImageCreateInfoNV = VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV,
- eExportMemoryAllocateInfoNV = VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV,
- eImportMemoryWin32HandleInfoNV = VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV,
- eExportMemoryWin32HandleInfoNV = VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV,
- eWin32KeyedMutexAcquireReleaseInfoNV = VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV,
- eValidationFlagsEXT = VK_STRUCTURE_TYPE_VALIDATION_FLAGS_EXT,
- eViSurfaceCreateInfoNN = VK_STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN,
- ePhysicalDeviceTextureCompressionAstcHdrFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT,
- eImageViewAstcDecodeModeEXT = VK_STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT,
- ePhysicalDeviceAstcDecodeFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT,
- eImportMemoryWin32HandleInfoKHR = VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR,
- eExportMemoryWin32HandleInfoKHR = VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR,
- eMemoryWin32HandlePropertiesKHR = VK_STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR,
- eMemoryGetWin32HandleInfoKHR = VK_STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR,
- eImportMemoryFdInfoKHR = VK_STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR,
- eMemoryFdPropertiesKHR = VK_STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR,
- eMemoryGetFdInfoKHR = VK_STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR,
- eWin32KeyedMutexAcquireReleaseInfoKHR = VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR,
- eImportSemaphoreWin32HandleInfoKHR = VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR,
- eExportSemaphoreWin32HandleInfoKHR = VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR,
- eD3D12FenceSubmitInfoKHR = VK_STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR,
- eSemaphoreGetWin32HandleInfoKHR = VK_STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR,
- eImportSemaphoreFdInfoKHR = VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR,
- eSemaphoreGetFdInfoKHR = VK_STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR,
- ePhysicalDevicePushDescriptorPropertiesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR,
- eCommandBufferInheritanceConditionalRenderingInfoEXT = VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT,
- ePhysicalDeviceConditionalRenderingFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT,
- eConditionalRenderingBeginInfoEXT = VK_STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT,
- ePresentRegionsKHR = VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR,
- ePipelineViewportWScalingStateCreateInfoNV = VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV,
- eSurfaceCapabilities2EXT = VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT,
- eDisplayPowerInfoEXT = VK_STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT,
- eDeviceEventInfoEXT = VK_STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT,
- eDisplayEventInfoEXT = VK_STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT,
- eSwapchainCounterCreateInfoEXT = VK_STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT,
- ePresentTimesInfoGOOGLE = VK_STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE,
- ePhysicalDeviceMultiviewPerViewAttributesPropertiesNVX = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX,
- ePipelineViewportSwizzleStateCreateInfoNV = VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV,
- ePhysicalDeviceDiscardRectanglePropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT,
- ePipelineDiscardRectangleStateCreateInfoEXT = VK_STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT,
- ePhysicalDeviceConservativeRasterizationPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT,
- ePipelineRasterizationConservativeStateCreateInfoEXT = VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT,
- ePhysicalDeviceDepthClipEnableFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT,
- ePipelineRasterizationDepthClipStateCreateInfoEXT = VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT,
- eHdrMetadataEXT = VK_STRUCTURE_TYPE_HDR_METADATA_EXT,
- eSharedPresentSurfaceCapabilitiesKHR = VK_STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR,
- eImportFenceWin32HandleInfoKHR = VK_STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR,
- eExportFenceWin32HandleInfoKHR = VK_STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR,
- eFenceGetWin32HandleInfoKHR = VK_STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR,
- eImportFenceFdInfoKHR = VK_STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR,
- eFenceGetFdInfoKHR = VK_STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR,
- ePhysicalDevicePerformanceQueryFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR,
- ePhysicalDevicePerformanceQueryPropertiesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR,
- eQueryPoolPerformanceCreateInfoKHR = VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR,
- ePerformanceQuerySubmitInfoKHR = VK_STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR,
- eAcquireProfilingLockInfoKHR = VK_STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR,
- ePerformanceCounterKHR = VK_STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR,
- ePerformanceCounterDescriptionKHR = VK_STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR,
- ePhysicalDeviceSurfaceInfo2KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR,
- eSurfaceCapabilities2KHR = VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR,
- eSurfaceFormat2KHR = VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR,
- eDisplayProperties2KHR = VK_STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR,
- eDisplayPlaneProperties2KHR = VK_STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR,
- eDisplayModeProperties2KHR = VK_STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR,
- eDisplayPlaneInfo2KHR = VK_STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR,
- eDisplayPlaneCapabilities2KHR = VK_STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR,
- eIosSurfaceCreateInfoMVK = VK_STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK,
- eMacosSurfaceCreateInfoMVK = VK_STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK,
- eDebugUtilsObjectNameInfoEXT = VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT,
- eDebugUtilsObjectTagInfoEXT = VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT,
- eDebugUtilsLabelEXT = VK_STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT,
- eDebugUtilsMessengerCallbackDataEXT = VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT,
- eDebugUtilsMessengerCreateInfoEXT = VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT,
- eAndroidHardwareBufferUsageANDROID = VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID,
- eAndroidHardwareBufferPropertiesANDROID = VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID,
- eAndroidHardwareBufferFormatPropertiesANDROID = VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID,
- eImportAndroidHardwareBufferInfoANDROID = VK_STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID,
- eMemoryGetAndroidHardwareBufferInfoANDROID = VK_STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID,
- eExternalFormatANDROID = VK_STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID,
- ePhysicalDeviceInlineUniformBlockFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT,
- ePhysicalDeviceInlineUniformBlockPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT,
- eWriteDescriptorSetInlineUniformBlockEXT = VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT,
- eDescriptorPoolInlineUniformBlockCreateInfoEXT = VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT,
- eSampleLocationsInfoEXT = VK_STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT,
- eRenderPassSampleLocationsBeginInfoEXT = VK_STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT,
- ePipelineSampleLocationsStateCreateInfoEXT = VK_STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT,
- ePhysicalDeviceSampleLocationsPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT,
- eMultisamplePropertiesEXT = VK_STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT,
- ePhysicalDeviceBlendOperationAdvancedFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT,
- ePhysicalDeviceBlendOperationAdvancedPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT,
- ePipelineColorBlendAdvancedStateCreateInfoEXT = VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT,
- ePipelineCoverageToColorStateCreateInfoNV = VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV,
- eWriteDescriptorSetAccelerationStructureKHR = VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR,
- eAccelerationStructureBuildGeometryInfoKHR = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR,
- eAccelerationStructureDeviceAddressInfoKHR = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR,
- eAccelerationStructureGeometryAabbsDataKHR = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR,
- eAccelerationStructureGeometryInstancesDataKHR = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR,
- eAccelerationStructureGeometryTrianglesDataKHR = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR,
- eAccelerationStructureGeometryKHR = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR,
- eAccelerationStructureVersionInfoKHR = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_INFO_KHR,
- eCopyAccelerationStructureInfoKHR = VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR,
- eCopyAccelerationStructureToMemoryInfoKHR = VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR,
- eCopyMemoryToAccelerationStructureInfoKHR = VK_STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR,
- ePhysicalDeviceAccelerationStructureFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_FEATURES_KHR,
- ePhysicalDeviceAccelerationStructurePropertiesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_PROPERTIES_KHR,
- eAccelerationStructureCreateInfoKHR = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR,
- eAccelerationStructureBuildSizesInfoKHR = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_SIZES_INFO_KHR,
- ePhysicalDeviceRayTracingPipelineFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_FEATURES_KHR,
- ePhysicalDeviceRayTracingPipelinePropertiesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_PROPERTIES_KHR,
- eRayTracingPipelineCreateInfoKHR = VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR,
- eRayTracingShaderGroupCreateInfoKHR = VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR,
- eRayTracingPipelineInterfaceCreateInfoKHR = VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR,
- ePhysicalDeviceRayQueryFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_QUERY_FEATURES_KHR,
- ePipelineCoverageModulationStateCreateInfoNV = VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV,
- ePhysicalDeviceShaderSmBuiltinsFeaturesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV,
- ePhysicalDeviceShaderSmBuiltinsPropertiesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV,
- eDrmFormatModifierPropertiesListEXT = VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT,
- ePhysicalDeviceImageDrmFormatModifierInfoEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT,
- eImageDrmFormatModifierListCreateInfoEXT = VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT,
- eImageDrmFormatModifierExplicitCreateInfoEXT = VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT,
- eImageDrmFormatModifierPropertiesEXT = VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT,
- eValidationCacheCreateInfoEXT = VK_STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT,
- eShaderModuleValidationCacheCreateInfoEXT = VK_STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT,
- ePhysicalDevicePortabilitySubsetFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_FEATURES_KHR,
- ePhysicalDevicePortabilitySubsetPropertiesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_PROPERTIES_KHR,
- ePipelineViewportShadingRateImageStateCreateInfoNV = VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV,
- ePhysicalDeviceShadingRateImageFeaturesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV,
- ePhysicalDeviceShadingRateImagePropertiesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV,
- ePipelineViewportCoarseSampleOrderStateCreateInfoNV = VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV,
- eRayTracingPipelineCreateInfoNV = VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV,
- eAccelerationStructureCreateInfoNV = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV,
- eGeometryNV = VK_STRUCTURE_TYPE_GEOMETRY_NV,
- eGeometryTrianglesNV = VK_STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV,
- eGeometryAabbNV = VK_STRUCTURE_TYPE_GEOMETRY_AABB_NV,
- eBindAccelerationStructureMemoryInfoNV = VK_STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_NV,
- eWriteDescriptorSetAccelerationStructureNV = VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_NV,
- eAccelerationStructureMemoryRequirementsInfoNV = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV,
- ePhysicalDeviceRayTracingPropertiesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV,
- eRayTracingShaderGroupCreateInfoNV = VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV,
- eAccelerationStructureInfoNV = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV,
- ePhysicalDeviceRepresentativeFragmentTestFeaturesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV,
- ePipelineRepresentativeFragmentTestStateCreateInfoNV = VK_STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV,
- ePhysicalDeviceImageViewImageFormatInfoEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT,
- eFilterCubicImageViewImageFormatPropertiesEXT = VK_STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT,
- eDeviceQueueGlobalPriorityCreateInfoEXT = VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT,
- eImportMemoryHostPointerInfoEXT = VK_STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT,
- eMemoryHostPointerPropertiesEXT = VK_STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT,
- ePhysicalDeviceExternalMemoryHostPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT,
- ePhysicalDeviceShaderClockFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR,
- ePipelineCompilerControlCreateInfoAMD = VK_STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD,
- eCalibratedTimestampInfoEXT = VK_STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT,
- ePhysicalDeviceShaderCorePropertiesAMD = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD,
- eDeviceMemoryOverallocationCreateInfoAMD = VK_STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD,
- ePhysicalDeviceVertexAttributeDivisorPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT,
- ePipelineVertexInputDivisorStateCreateInfoEXT = VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT,
- ePhysicalDeviceVertexAttributeDivisorFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT,
- ePresentFrameTokenGGP = VK_STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP,
- ePipelineCreationFeedbackCreateInfoEXT = VK_STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT,
- ePhysicalDeviceComputeShaderDerivativesFeaturesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV,
- ePhysicalDeviceMeshShaderFeaturesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV,
- ePhysicalDeviceMeshShaderPropertiesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV,
- ePhysicalDeviceFragmentShaderBarycentricFeaturesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV,
- ePhysicalDeviceShaderImageFootprintFeaturesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV,
- ePipelineViewportExclusiveScissorStateCreateInfoNV = VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV,
- ePhysicalDeviceExclusiveScissorFeaturesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV,
- eCheckpointDataNV = VK_STRUCTURE_TYPE_CHECKPOINT_DATA_NV,
- eQueueFamilyCheckpointPropertiesNV = VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV,
- ePhysicalDeviceShaderIntegerFunctions2FeaturesINTEL = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL,
- eQueryPoolPerformanceQueryCreateInfoINTEL = VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL,
- eInitializePerformanceApiInfoINTEL = VK_STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL,
- ePerformanceMarkerInfoINTEL = VK_STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL,
- ePerformanceStreamMarkerInfoINTEL = VK_STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL,
- ePerformanceOverrideInfoINTEL = VK_STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL,
- ePerformanceConfigurationAcquireInfoINTEL = VK_STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL,
- ePhysicalDevicePciBusInfoPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT,
- eDisplayNativeHdrSurfaceCapabilitiesAMD = VK_STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD,
- eSwapchainDisplayNativeHdrCreateInfoAMD = VK_STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD,
- eImagepipeSurfaceCreateInfoFUCHSIA = VK_STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA,
- ePhysicalDeviceShaderTerminateInvocationFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES_KHR,
- eMetalSurfaceCreateInfoEXT = VK_STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT,
- ePhysicalDeviceFragmentDensityMapFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT,
- ePhysicalDeviceFragmentDensityMapPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT,
- eRenderPassFragmentDensityMapCreateInfoEXT = VK_STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT,
- ePhysicalDeviceSubgroupSizeControlPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT,
- ePipelineShaderStageRequiredSubgroupSizeCreateInfoEXT = VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT,
- ePhysicalDeviceSubgroupSizeControlFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT,
- eFragmentShadingRateAttachmentInfoKHR = VK_STRUCTURE_TYPE_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR,
- ePipelineFragmentShadingRateStateCreateInfoKHR = VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_STATE_CREATE_INFO_KHR,
- ePhysicalDeviceFragmentShadingRatePropertiesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_PROPERTIES_KHR,
- ePhysicalDeviceFragmentShadingRateFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_FEATURES_KHR,
- ePhysicalDeviceFragmentShadingRateKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_KHR,
- ePhysicalDeviceShaderCoreProperties2AMD = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD,
- ePhysicalDeviceCoherentMemoryFeaturesAMD = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD,
- ePhysicalDeviceShaderImageAtomicInt64FeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_ATOMIC_INT64_FEATURES_EXT,
- ePhysicalDeviceMemoryBudgetPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT,
- ePhysicalDeviceMemoryPriorityFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT,
- eMemoryPriorityAllocateInfoEXT = VK_STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT,
- eSurfaceProtectedCapabilitiesKHR = VK_STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR,
- ePhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV,
- ePhysicalDeviceBufferDeviceAddressFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT,
- eBufferDeviceAddressCreateInfoEXT = VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT,
- ePhysicalDeviceToolPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT,
- eValidationFeaturesEXT = VK_STRUCTURE_TYPE_VALIDATION_FEATURES_EXT,
- ePhysicalDeviceCooperativeMatrixFeaturesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV,
- eCooperativeMatrixPropertiesNV = VK_STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV,
- ePhysicalDeviceCooperativeMatrixPropertiesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV,
- ePhysicalDeviceCoverageReductionModeFeaturesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV,
- ePipelineCoverageReductionStateCreateInfoNV = VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV,
- eFramebufferMixedSamplesCombinationNV = VK_STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV,
- ePhysicalDeviceFragmentShaderInterlockFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT,
- ePhysicalDeviceYcbcrImageArraysFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT,
- eSurfaceFullScreenExclusiveInfoEXT = VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT,
- eSurfaceCapabilitiesFullScreenExclusiveEXT = VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT,
- eSurfaceFullScreenExclusiveWin32InfoEXT = VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT,
- eHeadlessSurfaceCreateInfoEXT = VK_STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT,
- ePhysicalDeviceLineRasterizationFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT,
- ePipelineRasterizationLineStateCreateInfoEXT = VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT,
- ePhysicalDeviceLineRasterizationPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT,
- ePhysicalDeviceShaderAtomicFloatFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_FEATURES_EXT,
- ePhysicalDeviceIndexTypeUint8FeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT,
- ePhysicalDeviceExtendedDynamicStateFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_FEATURES_EXT,
- ePhysicalDevicePipelineExecutablePropertiesFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR,
- ePipelineInfoKHR = VK_STRUCTURE_TYPE_PIPELINE_INFO_KHR,
- ePipelineExecutablePropertiesKHR = VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR,
- ePipelineExecutableInfoKHR = VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR,
- ePipelineExecutableStatisticKHR = VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR,
- ePipelineExecutableInternalRepresentationKHR = VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR,
- ePhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT,
- ePhysicalDeviceDeviceGeneratedCommandsPropertiesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV,
- eGraphicsShaderGroupCreateInfoNV = VK_STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV,
- eGraphicsPipelineShaderGroupsCreateInfoNV = VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV,
- eIndirectCommandsLayoutTokenNV = VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV,
- eIndirectCommandsLayoutCreateInfoNV = VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV,
- eGeneratedCommandsInfoNV = VK_STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV,
- eGeneratedCommandsMemoryRequirementsInfoNV = VK_STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV,
- ePhysicalDeviceDeviceGeneratedCommandsFeaturesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV,
- ePhysicalDeviceTexelBufferAlignmentFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT,
- ePhysicalDeviceTexelBufferAlignmentPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT,
- eCommandBufferInheritanceRenderPassTransformInfoQCOM = VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM,
- eRenderPassTransformBeginInfoQCOM = VK_STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM,
- ePhysicalDeviceDeviceMemoryReportFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_MEMORY_REPORT_FEATURES_EXT,
- eDeviceDeviceMemoryReportCreateInfoEXT = VK_STRUCTURE_TYPE_DEVICE_DEVICE_MEMORY_REPORT_CREATE_INFO_EXT,
- eDeviceMemoryReportCallbackDataEXT = VK_STRUCTURE_TYPE_DEVICE_MEMORY_REPORT_CALLBACK_DATA_EXT,
- ePhysicalDeviceRobustness2FeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT,
- ePhysicalDeviceRobustness2PropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT,
- eSamplerCustomBorderColorCreateInfoEXT = VK_STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT,
- ePhysicalDeviceCustomBorderColorPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT,
- ePhysicalDeviceCustomBorderColorFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT,
- ePipelineLibraryCreateInfoKHR = VK_STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR,
- ePhysicalDevicePrivateDataFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT,
- eDevicePrivateDataCreateInfoEXT = VK_STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT,
- ePrivateDataSlotCreateInfoEXT = VK_STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT,
- ePhysicalDevicePipelineCreationCacheControlFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT,
- ePhysicalDeviceDiagnosticsConfigFeaturesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV,
- eDeviceDiagnosticsConfigCreateInfoNV = VK_STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV,
- ePhysicalDeviceFragmentShadingRateEnumsPropertiesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_PROPERTIES_NV,
- ePhysicalDeviceFragmentShadingRateEnumsFeaturesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_FEATURES_NV,
- ePipelineFragmentShadingRateEnumStateCreateInfoNV = VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_ENUM_STATE_CREATE_INFO_NV,
- ePhysicalDeviceFragmentDensityMap2FeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_FEATURES_EXT,
- ePhysicalDeviceFragmentDensityMap2PropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_PROPERTIES_EXT,
- eCopyCommandTransformInfoQCOM = VK_STRUCTURE_TYPE_COPY_COMMAND_TRANSFORM_INFO_QCOM,
- ePhysicalDeviceImageRobustnessFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES_EXT,
- eCopyBufferInfo2KHR = VK_STRUCTURE_TYPE_COPY_BUFFER_INFO_2_KHR,
- eCopyImageInfo2KHR = VK_STRUCTURE_TYPE_COPY_IMAGE_INFO_2_KHR,
- eCopyBufferToImageInfo2KHR = VK_STRUCTURE_TYPE_COPY_BUFFER_TO_IMAGE_INFO_2_KHR,
- eCopyImageToBufferInfo2KHR = VK_STRUCTURE_TYPE_COPY_IMAGE_TO_BUFFER_INFO_2_KHR,
- eBlitImageInfo2KHR = VK_STRUCTURE_TYPE_BLIT_IMAGE_INFO_2_KHR,
- eResolveImageInfo2KHR = VK_STRUCTURE_TYPE_RESOLVE_IMAGE_INFO_2_KHR,
- eBufferCopy2KHR = VK_STRUCTURE_TYPE_BUFFER_COPY_2_KHR,
- eImageCopy2KHR = VK_STRUCTURE_TYPE_IMAGE_COPY_2_KHR,
- eImageBlit2KHR = VK_STRUCTURE_TYPE_IMAGE_BLIT_2_KHR,
- eBufferImageCopy2KHR = VK_STRUCTURE_TYPE_BUFFER_IMAGE_COPY_2_KHR,
- eImageResolve2KHR = VK_STRUCTURE_TYPE_IMAGE_RESOLVE_2_KHR,
- ePhysicalDevice4444FormatsFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_4444_FORMATS_FEATURES_EXT,
- eDirectfbSurfaceCreateInfoEXT = VK_STRUCTURE_TYPE_DIRECTFB_SURFACE_CREATE_INFO_EXT,
- eAttachmentDescription2KHR = VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2_KHR,
- eAttachmentDescriptionStencilLayoutKHR = VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT_KHR,
- eAttachmentReference2KHR = VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2_KHR,
- eAttachmentReferenceStencilLayoutKHR = VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT_KHR,
- eBindBufferMemoryDeviceGroupInfoKHR = VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO_KHR,
- eBindBufferMemoryInfoKHR = VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO_KHR,
- eBindImageMemoryDeviceGroupInfoKHR = VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO_KHR,
- eBindImageMemoryInfoKHR = VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO_KHR,
- eBindImagePlaneMemoryInfoKHR = VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO_KHR,
- eBufferDeviceAddressInfoEXT = VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO_EXT,
- eBufferDeviceAddressInfoKHR = VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO_KHR,
- eBufferMemoryRequirementsInfo2KHR = VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2_KHR,
- eBufferOpaqueCaptureAddressCreateInfoKHR = VK_STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO_KHR,
- eDebugReportCreateInfoEXT = VK_STRUCTURE_TYPE_DEBUG_REPORT_CREATE_INFO_EXT,
- eDescriptorSetLayoutBindingFlagsCreateInfoEXT = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO_EXT,
- eDescriptorSetLayoutSupportKHR = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT_KHR,
- eDescriptorSetVariableDescriptorCountAllocateInfoEXT = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO_EXT,
- eDescriptorSetVariableDescriptorCountLayoutSupportEXT = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT_EXT,
- eDescriptorUpdateTemplateCreateInfoKHR = VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO_KHR,
- eDeviceGroupBindSparseInfoKHR = VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO_KHR,
- eDeviceGroupCommandBufferBeginInfoKHR = VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO_KHR,
- eDeviceGroupDeviceCreateInfoKHR = VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO_KHR,
- eDeviceGroupRenderPassBeginInfoKHR = VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO_KHR,
- eDeviceGroupSubmitInfoKHR = VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO_KHR,
- eDeviceMemoryOpaqueCaptureAddressInfoKHR = VK_STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO_KHR,
- eExportFenceCreateInfoKHR = VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO_KHR,
- eExportMemoryAllocateInfoKHR = VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_KHR,
- eExportSemaphoreCreateInfoKHR = VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO_KHR,
- eExternalBufferPropertiesKHR = VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES_KHR,
- eExternalFencePropertiesKHR = VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES_KHR,
- eExternalImageFormatPropertiesKHR = VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES_KHR,
- eExternalMemoryBufferCreateInfoKHR = VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO_KHR,
- eExternalMemoryImageCreateInfoKHR = VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_KHR,
- eExternalSemaphorePropertiesKHR = VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES_KHR,
- eFormatProperties2KHR = VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2_KHR,
- eFramebufferAttachmentsCreateInfoKHR = VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO_KHR,
- eFramebufferAttachmentImageInfoKHR = VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO_KHR,
- eImageFormatListCreateInfoKHR = VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO_KHR,
- eImageFormatProperties2KHR = VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2_KHR,
- eImageMemoryRequirementsInfo2KHR = VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2_KHR,
- eImagePlaneMemoryRequirementsInfoKHR = VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO_KHR,
- eImageSparseMemoryRequirementsInfo2KHR = VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2_KHR,
- eImageStencilUsageCreateInfoEXT = VK_STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO_EXT,
- eImageViewUsageCreateInfoKHR = VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO_KHR,
- eMemoryAllocateFlagsInfoKHR = VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO_KHR,
- eMemoryDedicatedAllocateInfoKHR = VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO_KHR,
- eMemoryDedicatedRequirementsKHR = VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS_KHR,
- eMemoryOpaqueCaptureAddressAllocateInfoKHR = VK_STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO_KHR,
- eMemoryRequirements2KHR = VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2_KHR,
- ePhysicalDevice16BitStorageFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES_KHR,
- ePhysicalDevice8BitStorageFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES_KHR,
- ePhysicalDeviceBufferAddressFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_ADDRESS_FEATURES_EXT,
- ePhysicalDeviceBufferDeviceAddressFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_KHR,
- ePhysicalDeviceDepthStencilResolvePropertiesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES_KHR,
- ePhysicalDeviceDescriptorIndexingFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES_EXT,
- ePhysicalDeviceDescriptorIndexingPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES_EXT,
- ePhysicalDeviceDriverPropertiesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES_KHR,
- ePhysicalDeviceExternalBufferInfoKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO_KHR,
- ePhysicalDeviceExternalFenceInfoKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO_KHR,
- ePhysicalDeviceExternalImageFormatInfoKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO_KHR,
- ePhysicalDeviceExternalSemaphoreInfoKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO_KHR,
- ePhysicalDeviceFeatures2KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2_KHR,
- ePhysicalDeviceFloat16Int8FeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT16_INT8_FEATURES_KHR,
- ePhysicalDeviceFloatControlsPropertiesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES_KHR,
- ePhysicalDeviceGroupPropertiesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES_KHR,
- ePhysicalDeviceHostQueryResetFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES_EXT,
- ePhysicalDeviceIdPropertiesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES_KHR,
- ePhysicalDeviceImagelessFramebufferFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES_KHR,
- ePhysicalDeviceImageFormatInfo2KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2_KHR,
- ePhysicalDeviceMaintenance3PropertiesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES_KHR,
- ePhysicalDeviceMemoryProperties2KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2_KHR,
- ePhysicalDeviceMultiviewFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES_KHR,
- ePhysicalDeviceMultiviewPropertiesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES_KHR,
- ePhysicalDevicePointClippingPropertiesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES_KHR,
- ePhysicalDeviceProperties2KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2_KHR,
- ePhysicalDeviceSamplerFilterMinmaxPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES_EXT,
- ePhysicalDeviceSamplerYcbcrConversionFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES_KHR,
- ePhysicalDeviceScalarBlockLayoutFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES_EXT,
- ePhysicalDeviceSeparateDepthStencilLayoutsFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES_KHR,
- ePhysicalDeviceShaderAtomicInt64FeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES_KHR,
- ePhysicalDeviceShaderDrawParameterFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETER_FEATURES,
- ePhysicalDeviceShaderFloat16Int8FeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES_KHR,
- ePhysicalDeviceShaderSubgroupExtendedTypesFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES_KHR,
- ePhysicalDeviceSparseImageFormatInfo2KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2_KHR,
- ePhysicalDeviceTimelineSemaphoreFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES_KHR,
- ePhysicalDeviceTimelineSemaphorePropertiesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES_KHR,
- ePhysicalDeviceUniformBufferStandardLayoutFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES_KHR,
- ePhysicalDeviceVariablePointersFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES_KHR,
- ePhysicalDeviceVariablePointerFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES,
- ePhysicalDeviceVariablePointerFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES_KHR,
- ePhysicalDeviceVulkanMemoryModelFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES_KHR,
- ePipelineTessellationDomainOriginStateCreateInfoKHR = VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO_KHR,
- eQueryPoolCreateInfoINTEL = VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO_INTEL,
- eQueueFamilyProperties2KHR = VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2_KHR,
- eRenderPassAttachmentBeginInfoKHR = VK_STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO_KHR,
- eRenderPassCreateInfo2KHR = VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2_KHR,
- eRenderPassInputAttachmentAspectCreateInfoKHR = VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO_KHR,
- eRenderPassMultiviewCreateInfoKHR = VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO_KHR,
- eSamplerReductionModeCreateInfoEXT = VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO_EXT,
- eSamplerYcbcrConversionCreateInfoKHR = VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO_KHR,
- eSamplerYcbcrConversionImageFormatPropertiesKHR = VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES_KHR,
- eSamplerYcbcrConversionInfoKHR = VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO_KHR,
- eSemaphoreSignalInfoKHR = VK_STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO_KHR,
- eSemaphoreTypeCreateInfoKHR = VK_STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO_KHR,
- eSemaphoreWaitInfoKHR = VK_STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO_KHR,
- eSparseImageFormatProperties2KHR = VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2_KHR,
- eSparseImageMemoryRequirements2KHR = VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2_KHR,
- eSubpassBeginInfoKHR = VK_STRUCTURE_TYPE_SUBPASS_BEGIN_INFO_KHR,
- eSubpassDependency2KHR = VK_STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2_KHR,
- eSubpassDescription2KHR = VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2_KHR,
- eSubpassDescriptionDepthStencilResolveKHR = VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE_KHR,
- eSubpassEndInfoKHR = VK_STRUCTURE_TYPE_SUBPASS_END_INFO_KHR,
- eTimelineSemaphoreSubmitInfoKHR = VK_STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO_KHR
- };
-
- VULKAN_HPP_INLINE std::string to_string( StructureType value )
- {
- switch ( value )
- {
- case StructureType::eApplicationInfo : return "ApplicationInfo";
- case StructureType::eInstanceCreateInfo : return "InstanceCreateInfo";
- case StructureType::eDeviceQueueCreateInfo : return "DeviceQueueCreateInfo";
- case StructureType::eDeviceCreateInfo : return "DeviceCreateInfo";
- case StructureType::eSubmitInfo : return "SubmitInfo";
- case StructureType::eMemoryAllocateInfo : return "MemoryAllocateInfo";
- case StructureType::eMappedMemoryRange : return "MappedMemoryRange";
- case StructureType::eBindSparseInfo : return "BindSparseInfo";
- case StructureType::eFenceCreateInfo : return "FenceCreateInfo";
- case StructureType::eSemaphoreCreateInfo : return "SemaphoreCreateInfo";
- case StructureType::eEventCreateInfo : return "EventCreateInfo";
- case StructureType::eQueryPoolCreateInfo : return "QueryPoolCreateInfo";
- case StructureType::eBufferCreateInfo : return "BufferCreateInfo";
- case StructureType::eBufferViewCreateInfo : return "BufferViewCreateInfo";
- case StructureType::eImageCreateInfo : return "ImageCreateInfo";
- case StructureType::eImageViewCreateInfo : return "ImageViewCreateInfo";
- case StructureType::eShaderModuleCreateInfo : return "ShaderModuleCreateInfo";
- case StructureType::ePipelineCacheCreateInfo : return "PipelineCacheCreateInfo";
- case StructureType::ePipelineShaderStageCreateInfo : return "PipelineShaderStageCreateInfo";
- case StructureType::ePipelineVertexInputStateCreateInfo : return "PipelineVertexInputStateCreateInfo";
- case StructureType::ePipelineInputAssemblyStateCreateInfo : return "PipelineInputAssemblyStateCreateInfo";
- case StructureType::ePipelineTessellationStateCreateInfo : return "PipelineTessellationStateCreateInfo";
- case StructureType::ePipelineViewportStateCreateInfo : return "PipelineViewportStateCreateInfo";
- case StructureType::ePipelineRasterizationStateCreateInfo : return "PipelineRasterizationStateCreateInfo";
- case StructureType::ePipelineMultisampleStateCreateInfo : return "PipelineMultisampleStateCreateInfo";
- case StructureType::ePipelineDepthStencilStateCreateInfo : return "PipelineDepthStencilStateCreateInfo";
- case StructureType::ePipelineColorBlendStateCreateInfo : return "PipelineColorBlendStateCreateInfo";
- case StructureType::ePipelineDynamicStateCreateInfo : return "PipelineDynamicStateCreateInfo";
- case StructureType::eGraphicsPipelineCreateInfo : return "GraphicsPipelineCreateInfo";
- case StructureType::eComputePipelineCreateInfo : return "ComputePipelineCreateInfo";
- case StructureType::ePipelineLayoutCreateInfo : return "PipelineLayoutCreateInfo";
- case StructureType::eSamplerCreateInfo : return "SamplerCreateInfo";
- case StructureType::eDescriptorSetLayoutCreateInfo : return "DescriptorSetLayoutCreateInfo";
- case StructureType::eDescriptorPoolCreateInfo : return "DescriptorPoolCreateInfo";
- case StructureType::eDescriptorSetAllocateInfo : return "DescriptorSetAllocateInfo";
- case StructureType::eWriteDescriptorSet : return "WriteDescriptorSet";
- case StructureType::eCopyDescriptorSet : return "CopyDescriptorSet";
- case StructureType::eFramebufferCreateInfo : return "FramebufferCreateInfo";
- case StructureType::eRenderPassCreateInfo : return "RenderPassCreateInfo";
- case StructureType::eCommandPoolCreateInfo : return "CommandPoolCreateInfo";
- case StructureType::eCommandBufferAllocateInfo : return "CommandBufferAllocateInfo";
- case StructureType::eCommandBufferInheritanceInfo : return "CommandBufferInheritanceInfo";
- case StructureType::eCommandBufferBeginInfo : return "CommandBufferBeginInfo";
- case StructureType::eRenderPassBeginInfo : return "RenderPassBeginInfo";
- case StructureType::eBufferMemoryBarrier : return "BufferMemoryBarrier";
- case StructureType::eImageMemoryBarrier : return "ImageMemoryBarrier";
- case StructureType::eMemoryBarrier : return "MemoryBarrier";
- case StructureType::eLoaderInstanceCreateInfo : return "LoaderInstanceCreateInfo";
- case StructureType::eLoaderDeviceCreateInfo : return "LoaderDeviceCreateInfo";
- case StructureType::ePhysicalDeviceSubgroupProperties : return "PhysicalDeviceSubgroupProperties";
- case StructureType::eBindBufferMemoryInfo : return "BindBufferMemoryInfo";
- case StructureType::eBindImageMemoryInfo : return "BindImageMemoryInfo";
- case StructureType::ePhysicalDevice16BitStorageFeatures : return "PhysicalDevice16BitStorageFeatures";
- case StructureType::eMemoryDedicatedRequirements : return "MemoryDedicatedRequirements";
- case StructureType::eMemoryDedicatedAllocateInfo : return "MemoryDedicatedAllocateInfo";
- case StructureType::eMemoryAllocateFlagsInfo : return "MemoryAllocateFlagsInfo";
- case StructureType::eDeviceGroupRenderPassBeginInfo : return "DeviceGroupRenderPassBeginInfo";
- case StructureType::eDeviceGroupCommandBufferBeginInfo : return "DeviceGroupCommandBufferBeginInfo";
- case StructureType::eDeviceGroupSubmitInfo : return "DeviceGroupSubmitInfo";
- case StructureType::eDeviceGroupBindSparseInfo : return "DeviceGroupBindSparseInfo";
- case StructureType::eBindBufferMemoryDeviceGroupInfo : return "BindBufferMemoryDeviceGroupInfo";
- case StructureType::eBindImageMemoryDeviceGroupInfo : return "BindImageMemoryDeviceGroupInfo";
- case StructureType::ePhysicalDeviceGroupProperties : return "PhysicalDeviceGroupProperties";
- case StructureType::eDeviceGroupDeviceCreateInfo : return "DeviceGroupDeviceCreateInfo";
- case StructureType::eBufferMemoryRequirementsInfo2 : return "BufferMemoryRequirementsInfo2";
- case StructureType::eImageMemoryRequirementsInfo2 : return "ImageMemoryRequirementsInfo2";
- case StructureType::eImageSparseMemoryRequirementsInfo2 : return "ImageSparseMemoryRequirementsInfo2";
- case StructureType::eMemoryRequirements2 : return "MemoryRequirements2";
- case StructureType::eSparseImageMemoryRequirements2 : return "SparseImageMemoryRequirements2";
- case StructureType::ePhysicalDeviceFeatures2 : return "PhysicalDeviceFeatures2";
- case StructureType::ePhysicalDeviceProperties2 : return "PhysicalDeviceProperties2";
- case StructureType::eFormatProperties2 : return "FormatProperties2";
- case StructureType::eImageFormatProperties2 : return "ImageFormatProperties2";
- case StructureType::ePhysicalDeviceImageFormatInfo2 : return "PhysicalDeviceImageFormatInfo2";
- case StructureType::eQueueFamilyProperties2 : return "QueueFamilyProperties2";
- case StructureType::ePhysicalDeviceMemoryProperties2 : return "PhysicalDeviceMemoryProperties2";
- case StructureType::eSparseImageFormatProperties2 : return "SparseImageFormatProperties2";
- case StructureType::ePhysicalDeviceSparseImageFormatInfo2 : return "PhysicalDeviceSparseImageFormatInfo2";
- case StructureType::ePhysicalDevicePointClippingProperties : return "PhysicalDevicePointClippingProperties";
- case StructureType::eRenderPassInputAttachmentAspectCreateInfo : return "RenderPassInputAttachmentAspectCreateInfo";
- case StructureType::eImageViewUsageCreateInfo : return "ImageViewUsageCreateInfo";
- case StructureType::ePipelineTessellationDomainOriginStateCreateInfo : return "PipelineTessellationDomainOriginStateCreateInfo";
- case StructureType::eRenderPassMultiviewCreateInfo : return "RenderPassMultiviewCreateInfo";
- case StructureType::ePhysicalDeviceMultiviewFeatures : return "PhysicalDeviceMultiviewFeatures";
- case StructureType::ePhysicalDeviceMultiviewProperties : return "PhysicalDeviceMultiviewProperties";
- case StructureType::ePhysicalDeviceVariablePointersFeatures : return "PhysicalDeviceVariablePointersFeatures";
- case StructureType::eProtectedSubmitInfo : return "ProtectedSubmitInfo";
- case StructureType::ePhysicalDeviceProtectedMemoryFeatures : return "PhysicalDeviceProtectedMemoryFeatures";
- case StructureType::ePhysicalDeviceProtectedMemoryProperties : return "PhysicalDeviceProtectedMemoryProperties";
- case StructureType::eDeviceQueueInfo2 : return "DeviceQueueInfo2";
- case StructureType::eSamplerYcbcrConversionCreateInfo : return "SamplerYcbcrConversionCreateInfo";
- case StructureType::eSamplerYcbcrConversionInfo : return "SamplerYcbcrConversionInfo";
- case StructureType::eBindImagePlaneMemoryInfo : return "BindImagePlaneMemoryInfo";
- case StructureType::eImagePlaneMemoryRequirementsInfo : return "ImagePlaneMemoryRequirementsInfo";
- case StructureType::ePhysicalDeviceSamplerYcbcrConversionFeatures : return "PhysicalDeviceSamplerYcbcrConversionFeatures";
- case StructureType::eSamplerYcbcrConversionImageFormatProperties : return "SamplerYcbcrConversionImageFormatProperties";
- case StructureType::eDescriptorUpdateTemplateCreateInfo : return "DescriptorUpdateTemplateCreateInfo";
- case StructureType::ePhysicalDeviceExternalImageFormatInfo : return "PhysicalDeviceExternalImageFormatInfo";
- case StructureType::eExternalImageFormatProperties : return "ExternalImageFormatProperties";
- case StructureType::ePhysicalDeviceExternalBufferInfo : return "PhysicalDeviceExternalBufferInfo";
- case StructureType::eExternalBufferProperties : return "ExternalBufferProperties";
- case StructureType::ePhysicalDeviceIdProperties : return "PhysicalDeviceIdProperties";
- case StructureType::eExternalMemoryBufferCreateInfo : return "ExternalMemoryBufferCreateInfo";
- case StructureType::eExternalMemoryImageCreateInfo : return "ExternalMemoryImageCreateInfo";
- case StructureType::eExportMemoryAllocateInfo : return "ExportMemoryAllocateInfo";
- case StructureType::ePhysicalDeviceExternalFenceInfo : return "PhysicalDeviceExternalFenceInfo";
- case StructureType::eExternalFenceProperties : return "ExternalFenceProperties";
- case StructureType::eExportFenceCreateInfo : return "ExportFenceCreateInfo";
- case StructureType::eExportSemaphoreCreateInfo : return "ExportSemaphoreCreateInfo";
- case StructureType::ePhysicalDeviceExternalSemaphoreInfo : return "PhysicalDeviceExternalSemaphoreInfo";
- case StructureType::eExternalSemaphoreProperties : return "ExternalSemaphoreProperties";
- case StructureType::ePhysicalDeviceMaintenance3Properties : return "PhysicalDeviceMaintenance3Properties";
- case StructureType::eDescriptorSetLayoutSupport : return "DescriptorSetLayoutSupport";
- case StructureType::ePhysicalDeviceShaderDrawParametersFeatures : return "PhysicalDeviceShaderDrawParametersFeatures";
- case StructureType::ePhysicalDeviceVulkan11Features : return "PhysicalDeviceVulkan11Features";
- case StructureType::ePhysicalDeviceVulkan11Properties : return "PhysicalDeviceVulkan11Properties";
- case StructureType::ePhysicalDeviceVulkan12Features : return "PhysicalDeviceVulkan12Features";
- case StructureType::ePhysicalDeviceVulkan12Properties : return "PhysicalDeviceVulkan12Properties";
- case StructureType::eImageFormatListCreateInfo : return "ImageFormatListCreateInfo";
- case StructureType::eAttachmentDescription2 : return "AttachmentDescription2";
- case StructureType::eAttachmentReference2 : return "AttachmentReference2";
- case StructureType::eSubpassDescription2 : return "SubpassDescription2";
- case StructureType::eSubpassDependency2 : return "SubpassDependency2";
- case StructureType::eRenderPassCreateInfo2 : return "RenderPassCreateInfo2";
- case StructureType::eSubpassBeginInfo : return "SubpassBeginInfo";
- case StructureType::eSubpassEndInfo : return "SubpassEndInfo";
- case StructureType::ePhysicalDevice8BitStorageFeatures : return "PhysicalDevice8BitStorageFeatures";
- case StructureType::ePhysicalDeviceDriverProperties : return "PhysicalDeviceDriverProperties";
- case StructureType::ePhysicalDeviceShaderAtomicInt64Features : return "PhysicalDeviceShaderAtomicInt64Features";
- case StructureType::ePhysicalDeviceShaderFloat16Int8Features : return "PhysicalDeviceShaderFloat16Int8Features";
- case StructureType::ePhysicalDeviceFloatControlsProperties : return "PhysicalDeviceFloatControlsProperties";
- case StructureType::eDescriptorSetLayoutBindingFlagsCreateInfo : return "DescriptorSetLayoutBindingFlagsCreateInfo";
- case StructureType::ePhysicalDeviceDescriptorIndexingFeatures : return "PhysicalDeviceDescriptorIndexingFeatures";
- case StructureType::ePhysicalDeviceDescriptorIndexingProperties : return "PhysicalDeviceDescriptorIndexingProperties";
- case StructureType::eDescriptorSetVariableDescriptorCountAllocateInfo : return "DescriptorSetVariableDescriptorCountAllocateInfo";
- case StructureType::eDescriptorSetVariableDescriptorCountLayoutSupport : return "DescriptorSetVariableDescriptorCountLayoutSupport";
- case StructureType::ePhysicalDeviceDepthStencilResolveProperties : return "PhysicalDeviceDepthStencilResolveProperties";
- case StructureType::eSubpassDescriptionDepthStencilResolve : return "SubpassDescriptionDepthStencilResolve";
- case StructureType::ePhysicalDeviceScalarBlockLayoutFeatures : return "PhysicalDeviceScalarBlockLayoutFeatures";
- case StructureType::eImageStencilUsageCreateInfo : return "ImageStencilUsageCreateInfo";
- case StructureType::ePhysicalDeviceSamplerFilterMinmaxProperties : return "PhysicalDeviceSamplerFilterMinmaxProperties";
- case StructureType::eSamplerReductionModeCreateInfo : return "SamplerReductionModeCreateInfo";
- case StructureType::ePhysicalDeviceVulkanMemoryModelFeatures : return "PhysicalDeviceVulkanMemoryModelFeatures";
- case StructureType::ePhysicalDeviceImagelessFramebufferFeatures : return "PhysicalDeviceImagelessFramebufferFeatures";
- case StructureType::eFramebufferAttachmentsCreateInfo : return "FramebufferAttachmentsCreateInfo";
- case StructureType::eFramebufferAttachmentImageInfo : return "FramebufferAttachmentImageInfo";
- case StructureType::eRenderPassAttachmentBeginInfo : return "RenderPassAttachmentBeginInfo";
- case StructureType::ePhysicalDeviceUniformBufferStandardLayoutFeatures : return "PhysicalDeviceUniformBufferStandardLayoutFeatures";
- case StructureType::ePhysicalDeviceShaderSubgroupExtendedTypesFeatures : return "PhysicalDeviceShaderSubgroupExtendedTypesFeatures";
- case StructureType::ePhysicalDeviceSeparateDepthStencilLayoutsFeatures : return "PhysicalDeviceSeparateDepthStencilLayoutsFeatures";
- case StructureType::eAttachmentReferenceStencilLayout : return "AttachmentReferenceStencilLayout";
- case StructureType::eAttachmentDescriptionStencilLayout : return "AttachmentDescriptionStencilLayout";
- case StructureType::ePhysicalDeviceHostQueryResetFeatures : return "PhysicalDeviceHostQueryResetFeatures";
- case StructureType::ePhysicalDeviceTimelineSemaphoreFeatures : return "PhysicalDeviceTimelineSemaphoreFeatures";
- case StructureType::ePhysicalDeviceTimelineSemaphoreProperties : return "PhysicalDeviceTimelineSemaphoreProperties";
- case StructureType::eSemaphoreTypeCreateInfo : return "SemaphoreTypeCreateInfo";
- case StructureType::eTimelineSemaphoreSubmitInfo : return "TimelineSemaphoreSubmitInfo";
- case StructureType::eSemaphoreWaitInfo : return "SemaphoreWaitInfo";
- case StructureType::eSemaphoreSignalInfo : return "SemaphoreSignalInfo";
- case StructureType::ePhysicalDeviceBufferDeviceAddressFeatures : return "PhysicalDeviceBufferDeviceAddressFeatures";
- case StructureType::eBufferDeviceAddressInfo : return "BufferDeviceAddressInfo";
- case StructureType::eBufferOpaqueCaptureAddressCreateInfo : return "BufferOpaqueCaptureAddressCreateInfo";
- case StructureType::eMemoryOpaqueCaptureAddressAllocateInfo : return "MemoryOpaqueCaptureAddressAllocateInfo";
- case StructureType::eDeviceMemoryOpaqueCaptureAddressInfo : return "DeviceMemoryOpaqueCaptureAddressInfo";
- case StructureType::eSwapchainCreateInfoKHR : return "SwapchainCreateInfoKHR";
- case StructureType::ePresentInfoKHR : return "PresentInfoKHR";
- case StructureType::eDeviceGroupPresentCapabilitiesKHR : return "DeviceGroupPresentCapabilitiesKHR";
- case StructureType::eImageSwapchainCreateInfoKHR : return "ImageSwapchainCreateInfoKHR";
- case StructureType::eBindImageMemorySwapchainInfoKHR : return "BindImageMemorySwapchainInfoKHR";
- case StructureType::eAcquireNextImageInfoKHR : return "AcquireNextImageInfoKHR";
- case StructureType::eDeviceGroupPresentInfoKHR : return "DeviceGroupPresentInfoKHR";
- case StructureType::eDeviceGroupSwapchainCreateInfoKHR : return "DeviceGroupSwapchainCreateInfoKHR";
- case StructureType::eDisplayModeCreateInfoKHR : return "DisplayModeCreateInfoKHR";
- case StructureType::eDisplaySurfaceCreateInfoKHR : return "DisplaySurfaceCreateInfoKHR";
- case StructureType::eDisplayPresentInfoKHR : return "DisplayPresentInfoKHR";
- case StructureType::eXlibSurfaceCreateInfoKHR : return "XlibSurfaceCreateInfoKHR";
- case StructureType::eXcbSurfaceCreateInfoKHR : return "XcbSurfaceCreateInfoKHR";
- case StructureType::eWaylandSurfaceCreateInfoKHR : return "WaylandSurfaceCreateInfoKHR";
- case StructureType::eAndroidSurfaceCreateInfoKHR : return "AndroidSurfaceCreateInfoKHR";
- case StructureType::eWin32SurfaceCreateInfoKHR : return "Win32SurfaceCreateInfoKHR";
- case StructureType::eDebugReportCallbackCreateInfoEXT : return "DebugReportCallbackCreateInfoEXT";
- case StructureType::ePipelineRasterizationStateRasterizationOrderAMD : return "PipelineRasterizationStateRasterizationOrderAMD";
- case StructureType::eDebugMarkerObjectNameInfoEXT : return "DebugMarkerObjectNameInfoEXT";
- case StructureType::eDebugMarkerObjectTagInfoEXT : return "DebugMarkerObjectTagInfoEXT";
- case StructureType::eDebugMarkerMarkerInfoEXT : return "DebugMarkerMarkerInfoEXT";
- case StructureType::eDedicatedAllocationImageCreateInfoNV : return "DedicatedAllocationImageCreateInfoNV";
- case StructureType::eDedicatedAllocationBufferCreateInfoNV : return "DedicatedAllocationBufferCreateInfoNV";
- case StructureType::eDedicatedAllocationMemoryAllocateInfoNV : return "DedicatedAllocationMemoryAllocateInfoNV";
- case StructureType::ePhysicalDeviceTransformFeedbackFeaturesEXT : return "PhysicalDeviceTransformFeedbackFeaturesEXT";
- case StructureType::ePhysicalDeviceTransformFeedbackPropertiesEXT : return "PhysicalDeviceTransformFeedbackPropertiesEXT";
- case StructureType::ePipelineRasterizationStateStreamCreateInfoEXT : return "PipelineRasterizationStateStreamCreateInfoEXT";
- case StructureType::eImageViewHandleInfoNVX : return "ImageViewHandleInfoNVX";
- case StructureType::eImageViewAddressPropertiesNVX : return "ImageViewAddressPropertiesNVX";
- case StructureType::eTextureLodGatherFormatPropertiesAMD : return "TextureLodGatherFormatPropertiesAMD";
- case StructureType::eStreamDescriptorSurfaceCreateInfoGGP : return "StreamDescriptorSurfaceCreateInfoGGP";
- case StructureType::ePhysicalDeviceCornerSampledImageFeaturesNV : return "PhysicalDeviceCornerSampledImageFeaturesNV";
- case StructureType::eExternalMemoryImageCreateInfoNV : return "ExternalMemoryImageCreateInfoNV";
- case StructureType::eExportMemoryAllocateInfoNV : return "ExportMemoryAllocateInfoNV";
- case StructureType::eImportMemoryWin32HandleInfoNV : return "ImportMemoryWin32HandleInfoNV";
- case StructureType::eExportMemoryWin32HandleInfoNV : return "ExportMemoryWin32HandleInfoNV";
- case StructureType::eWin32KeyedMutexAcquireReleaseInfoNV : return "Win32KeyedMutexAcquireReleaseInfoNV";
- case StructureType::eValidationFlagsEXT : return "ValidationFlagsEXT";
- case StructureType::eViSurfaceCreateInfoNN : return "ViSurfaceCreateInfoNN";
- case StructureType::ePhysicalDeviceTextureCompressionAstcHdrFeaturesEXT : return "PhysicalDeviceTextureCompressionAstcHdrFeaturesEXT";
- case StructureType::eImageViewAstcDecodeModeEXT : return "ImageViewAstcDecodeModeEXT";
- case StructureType::ePhysicalDeviceAstcDecodeFeaturesEXT : return "PhysicalDeviceAstcDecodeFeaturesEXT";
- case StructureType::eImportMemoryWin32HandleInfoKHR : return "ImportMemoryWin32HandleInfoKHR";
- case StructureType::eExportMemoryWin32HandleInfoKHR : return "ExportMemoryWin32HandleInfoKHR";
- case StructureType::eMemoryWin32HandlePropertiesKHR : return "MemoryWin32HandlePropertiesKHR";
- case StructureType::eMemoryGetWin32HandleInfoKHR : return "MemoryGetWin32HandleInfoKHR";
- case StructureType::eImportMemoryFdInfoKHR : return "ImportMemoryFdInfoKHR";
- case StructureType::eMemoryFdPropertiesKHR : return "MemoryFdPropertiesKHR";
- case StructureType::eMemoryGetFdInfoKHR : return "MemoryGetFdInfoKHR";
- case StructureType::eWin32KeyedMutexAcquireReleaseInfoKHR : return "Win32KeyedMutexAcquireReleaseInfoKHR";
- case StructureType::eImportSemaphoreWin32HandleInfoKHR : return "ImportSemaphoreWin32HandleInfoKHR";
- case StructureType::eExportSemaphoreWin32HandleInfoKHR : return "ExportSemaphoreWin32HandleInfoKHR";
- case StructureType::eD3D12FenceSubmitInfoKHR : return "D3D12FenceSubmitInfoKHR";
- case StructureType::eSemaphoreGetWin32HandleInfoKHR : return "SemaphoreGetWin32HandleInfoKHR";
- case StructureType::eImportSemaphoreFdInfoKHR : return "ImportSemaphoreFdInfoKHR";
- case StructureType::eSemaphoreGetFdInfoKHR : return "SemaphoreGetFdInfoKHR";
- case StructureType::ePhysicalDevicePushDescriptorPropertiesKHR : return "PhysicalDevicePushDescriptorPropertiesKHR";
- case StructureType::eCommandBufferInheritanceConditionalRenderingInfoEXT : return "CommandBufferInheritanceConditionalRenderingInfoEXT";
- case StructureType::ePhysicalDeviceConditionalRenderingFeaturesEXT : return "PhysicalDeviceConditionalRenderingFeaturesEXT";
- case StructureType::eConditionalRenderingBeginInfoEXT : return "ConditionalRenderingBeginInfoEXT";
- case StructureType::ePresentRegionsKHR : return "PresentRegionsKHR";
- case StructureType::ePipelineViewportWScalingStateCreateInfoNV : return "PipelineViewportWScalingStateCreateInfoNV";
- case StructureType::eSurfaceCapabilities2EXT : return "SurfaceCapabilities2EXT";
- case StructureType::eDisplayPowerInfoEXT : return "DisplayPowerInfoEXT";
- case StructureType::eDeviceEventInfoEXT : return "DeviceEventInfoEXT";
- case StructureType::eDisplayEventInfoEXT : return "DisplayEventInfoEXT";
- case StructureType::eSwapchainCounterCreateInfoEXT : return "SwapchainCounterCreateInfoEXT";
- case StructureType::ePresentTimesInfoGOOGLE : return "PresentTimesInfoGOOGLE";
- case StructureType::ePhysicalDeviceMultiviewPerViewAttributesPropertiesNVX : return "PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX";
- case StructureType::ePipelineViewportSwizzleStateCreateInfoNV : return "PipelineViewportSwizzleStateCreateInfoNV";
- case StructureType::ePhysicalDeviceDiscardRectanglePropertiesEXT : return "PhysicalDeviceDiscardRectanglePropertiesEXT";
- case StructureType::ePipelineDiscardRectangleStateCreateInfoEXT : return "PipelineDiscardRectangleStateCreateInfoEXT";
- case StructureType::ePhysicalDeviceConservativeRasterizationPropertiesEXT : return "PhysicalDeviceConservativeRasterizationPropertiesEXT";
- case StructureType::ePipelineRasterizationConservativeStateCreateInfoEXT : return "PipelineRasterizationConservativeStateCreateInfoEXT";
- case StructureType::ePhysicalDeviceDepthClipEnableFeaturesEXT : return "PhysicalDeviceDepthClipEnableFeaturesEXT";
- case StructureType::ePipelineRasterizationDepthClipStateCreateInfoEXT : return "PipelineRasterizationDepthClipStateCreateInfoEXT";
- case StructureType::eHdrMetadataEXT : return "HdrMetadataEXT";
- case StructureType::eSharedPresentSurfaceCapabilitiesKHR : return "SharedPresentSurfaceCapabilitiesKHR";
- case StructureType::eImportFenceWin32HandleInfoKHR : return "ImportFenceWin32HandleInfoKHR";
- case StructureType::eExportFenceWin32HandleInfoKHR : return "ExportFenceWin32HandleInfoKHR";
- case StructureType::eFenceGetWin32HandleInfoKHR : return "FenceGetWin32HandleInfoKHR";
- case StructureType::eImportFenceFdInfoKHR : return "ImportFenceFdInfoKHR";
- case StructureType::eFenceGetFdInfoKHR : return "FenceGetFdInfoKHR";
- case StructureType::ePhysicalDevicePerformanceQueryFeaturesKHR : return "PhysicalDevicePerformanceQueryFeaturesKHR";
- case StructureType::ePhysicalDevicePerformanceQueryPropertiesKHR : return "PhysicalDevicePerformanceQueryPropertiesKHR";
- case StructureType::eQueryPoolPerformanceCreateInfoKHR : return "QueryPoolPerformanceCreateInfoKHR";
- case StructureType::ePerformanceQuerySubmitInfoKHR : return "PerformanceQuerySubmitInfoKHR";
- case StructureType::eAcquireProfilingLockInfoKHR : return "AcquireProfilingLockInfoKHR";
- case StructureType::ePerformanceCounterKHR : return "PerformanceCounterKHR";
- case StructureType::ePerformanceCounterDescriptionKHR : return "PerformanceCounterDescriptionKHR";
- case StructureType::ePhysicalDeviceSurfaceInfo2KHR : return "PhysicalDeviceSurfaceInfo2KHR";
- case StructureType::eSurfaceCapabilities2KHR : return "SurfaceCapabilities2KHR";
- case StructureType::eSurfaceFormat2KHR : return "SurfaceFormat2KHR";
- case StructureType::eDisplayProperties2KHR : return "DisplayProperties2KHR";
- case StructureType::eDisplayPlaneProperties2KHR : return "DisplayPlaneProperties2KHR";
- case StructureType::eDisplayModeProperties2KHR : return "DisplayModeProperties2KHR";
- case StructureType::eDisplayPlaneInfo2KHR : return "DisplayPlaneInfo2KHR";
- case StructureType::eDisplayPlaneCapabilities2KHR : return "DisplayPlaneCapabilities2KHR";
- case StructureType::eIosSurfaceCreateInfoMVK : return "IosSurfaceCreateInfoMVK";
- case StructureType::eMacosSurfaceCreateInfoMVK : return "MacosSurfaceCreateInfoMVK";
- case StructureType::eDebugUtilsObjectNameInfoEXT : return "DebugUtilsObjectNameInfoEXT";
- case StructureType::eDebugUtilsObjectTagInfoEXT : return "DebugUtilsObjectTagInfoEXT";
- case StructureType::eDebugUtilsLabelEXT : return "DebugUtilsLabelEXT";
- case StructureType::eDebugUtilsMessengerCallbackDataEXT : return "DebugUtilsMessengerCallbackDataEXT";
- case StructureType::eDebugUtilsMessengerCreateInfoEXT : return "DebugUtilsMessengerCreateInfoEXT";
- case StructureType::eAndroidHardwareBufferUsageANDROID : return "AndroidHardwareBufferUsageANDROID";
- case StructureType::eAndroidHardwareBufferPropertiesANDROID : return "AndroidHardwareBufferPropertiesANDROID";
- case StructureType::eAndroidHardwareBufferFormatPropertiesANDROID : return "AndroidHardwareBufferFormatPropertiesANDROID";
- case StructureType::eImportAndroidHardwareBufferInfoANDROID : return "ImportAndroidHardwareBufferInfoANDROID";
- case StructureType::eMemoryGetAndroidHardwareBufferInfoANDROID : return "MemoryGetAndroidHardwareBufferInfoANDROID";
- case StructureType::eExternalFormatANDROID : return "ExternalFormatANDROID";
- case StructureType::ePhysicalDeviceInlineUniformBlockFeaturesEXT : return "PhysicalDeviceInlineUniformBlockFeaturesEXT";
- case StructureType::ePhysicalDeviceInlineUniformBlockPropertiesEXT : return "PhysicalDeviceInlineUniformBlockPropertiesEXT";
- case StructureType::eWriteDescriptorSetInlineUniformBlockEXT : return "WriteDescriptorSetInlineUniformBlockEXT";
- case StructureType::eDescriptorPoolInlineUniformBlockCreateInfoEXT : return "DescriptorPoolInlineUniformBlockCreateInfoEXT";
- case StructureType::eSampleLocationsInfoEXT : return "SampleLocationsInfoEXT";
- case StructureType::eRenderPassSampleLocationsBeginInfoEXT : return "RenderPassSampleLocationsBeginInfoEXT";
- case StructureType::ePipelineSampleLocationsStateCreateInfoEXT : return "PipelineSampleLocationsStateCreateInfoEXT";
- case StructureType::ePhysicalDeviceSampleLocationsPropertiesEXT : return "PhysicalDeviceSampleLocationsPropertiesEXT";
- case StructureType::eMultisamplePropertiesEXT : return "MultisamplePropertiesEXT";
- case StructureType::ePhysicalDeviceBlendOperationAdvancedFeaturesEXT : return "PhysicalDeviceBlendOperationAdvancedFeaturesEXT";
- case StructureType::ePhysicalDeviceBlendOperationAdvancedPropertiesEXT : return "PhysicalDeviceBlendOperationAdvancedPropertiesEXT";
- case StructureType::ePipelineColorBlendAdvancedStateCreateInfoEXT : return "PipelineColorBlendAdvancedStateCreateInfoEXT";
- case StructureType::ePipelineCoverageToColorStateCreateInfoNV : return "PipelineCoverageToColorStateCreateInfoNV";
- case StructureType::eWriteDescriptorSetAccelerationStructureKHR : return "WriteDescriptorSetAccelerationStructureKHR";
- case StructureType::eAccelerationStructureBuildGeometryInfoKHR : return "AccelerationStructureBuildGeometryInfoKHR";
- case StructureType::eAccelerationStructureDeviceAddressInfoKHR : return "AccelerationStructureDeviceAddressInfoKHR";
- case StructureType::eAccelerationStructureGeometryAabbsDataKHR : return "AccelerationStructureGeometryAabbsDataKHR";
- case StructureType::eAccelerationStructureGeometryInstancesDataKHR : return "AccelerationStructureGeometryInstancesDataKHR";
- case StructureType::eAccelerationStructureGeometryTrianglesDataKHR : return "AccelerationStructureGeometryTrianglesDataKHR";
- case StructureType::eAccelerationStructureGeometryKHR : return "AccelerationStructureGeometryKHR";
- case StructureType::eAccelerationStructureVersionInfoKHR : return "AccelerationStructureVersionInfoKHR";
- case StructureType::eCopyAccelerationStructureInfoKHR : return "CopyAccelerationStructureInfoKHR";
- case StructureType::eCopyAccelerationStructureToMemoryInfoKHR : return "CopyAccelerationStructureToMemoryInfoKHR";
- case StructureType::eCopyMemoryToAccelerationStructureInfoKHR : return "CopyMemoryToAccelerationStructureInfoKHR";
- case StructureType::ePhysicalDeviceAccelerationStructureFeaturesKHR : return "PhysicalDeviceAccelerationStructureFeaturesKHR";
- case StructureType::ePhysicalDeviceAccelerationStructurePropertiesKHR : return "PhysicalDeviceAccelerationStructurePropertiesKHR";
- case StructureType::eAccelerationStructureCreateInfoKHR : return "AccelerationStructureCreateInfoKHR";
- case StructureType::eAccelerationStructureBuildSizesInfoKHR : return "AccelerationStructureBuildSizesInfoKHR";
- case StructureType::ePhysicalDeviceRayTracingPipelineFeaturesKHR : return "PhysicalDeviceRayTracingPipelineFeaturesKHR";
- case StructureType::ePhysicalDeviceRayTracingPipelinePropertiesKHR : return "PhysicalDeviceRayTracingPipelinePropertiesKHR";
- case StructureType::eRayTracingPipelineCreateInfoKHR : return "RayTracingPipelineCreateInfoKHR";
- case StructureType::eRayTracingShaderGroupCreateInfoKHR : return "RayTracingShaderGroupCreateInfoKHR";
- case StructureType::eRayTracingPipelineInterfaceCreateInfoKHR : return "RayTracingPipelineInterfaceCreateInfoKHR";
- case StructureType::ePhysicalDeviceRayQueryFeaturesKHR : return "PhysicalDeviceRayQueryFeaturesKHR";
- case StructureType::ePipelineCoverageModulationStateCreateInfoNV : return "PipelineCoverageModulationStateCreateInfoNV";
- case StructureType::ePhysicalDeviceShaderSmBuiltinsFeaturesNV : return "PhysicalDeviceShaderSmBuiltinsFeaturesNV";
- case StructureType::ePhysicalDeviceShaderSmBuiltinsPropertiesNV : return "PhysicalDeviceShaderSmBuiltinsPropertiesNV";
- case StructureType::eDrmFormatModifierPropertiesListEXT : return "DrmFormatModifierPropertiesListEXT";
- case StructureType::ePhysicalDeviceImageDrmFormatModifierInfoEXT : return "PhysicalDeviceImageDrmFormatModifierInfoEXT";
- case StructureType::eImageDrmFormatModifierListCreateInfoEXT : return "ImageDrmFormatModifierListCreateInfoEXT";
- case StructureType::eImageDrmFormatModifierExplicitCreateInfoEXT : return "ImageDrmFormatModifierExplicitCreateInfoEXT";
- case StructureType::eImageDrmFormatModifierPropertiesEXT : return "ImageDrmFormatModifierPropertiesEXT";
- case StructureType::eValidationCacheCreateInfoEXT : return "ValidationCacheCreateInfoEXT";
- case StructureType::eShaderModuleValidationCacheCreateInfoEXT : return "ShaderModuleValidationCacheCreateInfoEXT";
- case StructureType::ePhysicalDevicePortabilitySubsetFeaturesKHR : return "PhysicalDevicePortabilitySubsetFeaturesKHR";
- case StructureType::ePhysicalDevicePortabilitySubsetPropertiesKHR : return "PhysicalDevicePortabilitySubsetPropertiesKHR";
- case StructureType::ePipelineViewportShadingRateImageStateCreateInfoNV : return "PipelineViewportShadingRateImageStateCreateInfoNV";
- case StructureType::ePhysicalDeviceShadingRateImageFeaturesNV : return "PhysicalDeviceShadingRateImageFeaturesNV";
- case StructureType::ePhysicalDeviceShadingRateImagePropertiesNV : return "PhysicalDeviceShadingRateImagePropertiesNV";
- case StructureType::ePipelineViewportCoarseSampleOrderStateCreateInfoNV : return "PipelineViewportCoarseSampleOrderStateCreateInfoNV";
- case StructureType::eRayTracingPipelineCreateInfoNV : return "RayTracingPipelineCreateInfoNV";
- case StructureType::eAccelerationStructureCreateInfoNV : return "AccelerationStructureCreateInfoNV";
- case StructureType::eGeometryNV : return "GeometryNV";
- case StructureType::eGeometryTrianglesNV : return "GeometryTrianglesNV";
- case StructureType::eGeometryAabbNV : return "GeometryAabbNV";
- case StructureType::eBindAccelerationStructureMemoryInfoNV : return "BindAccelerationStructureMemoryInfoNV";
- case StructureType::eWriteDescriptorSetAccelerationStructureNV : return "WriteDescriptorSetAccelerationStructureNV";
- case StructureType::eAccelerationStructureMemoryRequirementsInfoNV : return "AccelerationStructureMemoryRequirementsInfoNV";
- case StructureType::ePhysicalDeviceRayTracingPropertiesNV : return "PhysicalDeviceRayTracingPropertiesNV";
- case StructureType::eRayTracingShaderGroupCreateInfoNV : return "RayTracingShaderGroupCreateInfoNV";
- case StructureType::eAccelerationStructureInfoNV : return "AccelerationStructureInfoNV";
- case StructureType::ePhysicalDeviceRepresentativeFragmentTestFeaturesNV : return "PhysicalDeviceRepresentativeFragmentTestFeaturesNV";
- case StructureType::ePipelineRepresentativeFragmentTestStateCreateInfoNV : return "PipelineRepresentativeFragmentTestStateCreateInfoNV";
- case StructureType::ePhysicalDeviceImageViewImageFormatInfoEXT : return "PhysicalDeviceImageViewImageFormatInfoEXT";
- case StructureType::eFilterCubicImageViewImageFormatPropertiesEXT : return "FilterCubicImageViewImageFormatPropertiesEXT";
- case StructureType::eDeviceQueueGlobalPriorityCreateInfoEXT : return "DeviceQueueGlobalPriorityCreateInfoEXT";
- case StructureType::eImportMemoryHostPointerInfoEXT : return "ImportMemoryHostPointerInfoEXT";
- case StructureType::eMemoryHostPointerPropertiesEXT : return "MemoryHostPointerPropertiesEXT";
- case StructureType::ePhysicalDeviceExternalMemoryHostPropertiesEXT : return "PhysicalDeviceExternalMemoryHostPropertiesEXT";
- case StructureType::ePhysicalDeviceShaderClockFeaturesKHR : return "PhysicalDeviceShaderClockFeaturesKHR";
- case StructureType::ePipelineCompilerControlCreateInfoAMD : return "PipelineCompilerControlCreateInfoAMD";
- case StructureType::eCalibratedTimestampInfoEXT : return "CalibratedTimestampInfoEXT";
- case StructureType::ePhysicalDeviceShaderCorePropertiesAMD : return "PhysicalDeviceShaderCorePropertiesAMD";
- case StructureType::eDeviceMemoryOverallocationCreateInfoAMD : return "DeviceMemoryOverallocationCreateInfoAMD";
- case StructureType::ePhysicalDeviceVertexAttributeDivisorPropertiesEXT : return "PhysicalDeviceVertexAttributeDivisorPropertiesEXT";
- case StructureType::ePipelineVertexInputDivisorStateCreateInfoEXT : return "PipelineVertexInputDivisorStateCreateInfoEXT";
- case StructureType::ePhysicalDeviceVertexAttributeDivisorFeaturesEXT : return "PhysicalDeviceVertexAttributeDivisorFeaturesEXT";
- case StructureType::ePresentFrameTokenGGP : return "PresentFrameTokenGGP";
- case StructureType::ePipelineCreationFeedbackCreateInfoEXT : return "PipelineCreationFeedbackCreateInfoEXT";
- case StructureType::ePhysicalDeviceComputeShaderDerivativesFeaturesNV : return "PhysicalDeviceComputeShaderDerivativesFeaturesNV";
- case StructureType::ePhysicalDeviceMeshShaderFeaturesNV : return "PhysicalDeviceMeshShaderFeaturesNV";
- case StructureType::ePhysicalDeviceMeshShaderPropertiesNV : return "PhysicalDeviceMeshShaderPropertiesNV";
- case StructureType::ePhysicalDeviceFragmentShaderBarycentricFeaturesNV : return "PhysicalDeviceFragmentShaderBarycentricFeaturesNV";
- case StructureType::ePhysicalDeviceShaderImageFootprintFeaturesNV : return "PhysicalDeviceShaderImageFootprintFeaturesNV";
- case StructureType::ePipelineViewportExclusiveScissorStateCreateInfoNV : return "PipelineViewportExclusiveScissorStateCreateInfoNV";
- case StructureType::ePhysicalDeviceExclusiveScissorFeaturesNV : return "PhysicalDeviceExclusiveScissorFeaturesNV";
- case StructureType::eCheckpointDataNV : return "CheckpointDataNV";
- case StructureType::eQueueFamilyCheckpointPropertiesNV : return "QueueFamilyCheckpointPropertiesNV";
- case StructureType::ePhysicalDeviceShaderIntegerFunctions2FeaturesINTEL : return "PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL";
- case StructureType::eQueryPoolPerformanceQueryCreateInfoINTEL : return "QueryPoolPerformanceQueryCreateInfoINTEL";
- case StructureType::eInitializePerformanceApiInfoINTEL : return "InitializePerformanceApiInfoINTEL";
- case StructureType::ePerformanceMarkerInfoINTEL : return "PerformanceMarkerInfoINTEL";
- case StructureType::ePerformanceStreamMarkerInfoINTEL : return "PerformanceStreamMarkerInfoINTEL";
- case StructureType::ePerformanceOverrideInfoINTEL : return "PerformanceOverrideInfoINTEL";
- case StructureType::ePerformanceConfigurationAcquireInfoINTEL : return "PerformanceConfigurationAcquireInfoINTEL";
- case StructureType::ePhysicalDevicePciBusInfoPropertiesEXT : return "PhysicalDevicePciBusInfoPropertiesEXT";
- case StructureType::eDisplayNativeHdrSurfaceCapabilitiesAMD : return "DisplayNativeHdrSurfaceCapabilitiesAMD";
- case StructureType::eSwapchainDisplayNativeHdrCreateInfoAMD : return "SwapchainDisplayNativeHdrCreateInfoAMD";
- case StructureType::eImagepipeSurfaceCreateInfoFUCHSIA : return "ImagepipeSurfaceCreateInfoFUCHSIA";
- case StructureType::ePhysicalDeviceShaderTerminateInvocationFeaturesKHR : return "PhysicalDeviceShaderTerminateInvocationFeaturesKHR";
- case StructureType::eMetalSurfaceCreateInfoEXT : return "MetalSurfaceCreateInfoEXT";
- case StructureType::ePhysicalDeviceFragmentDensityMapFeaturesEXT : return "PhysicalDeviceFragmentDensityMapFeaturesEXT";
- case StructureType::ePhysicalDeviceFragmentDensityMapPropertiesEXT : return "PhysicalDeviceFragmentDensityMapPropertiesEXT";
- case StructureType::eRenderPassFragmentDensityMapCreateInfoEXT : return "RenderPassFragmentDensityMapCreateInfoEXT";
- case StructureType::ePhysicalDeviceSubgroupSizeControlPropertiesEXT : return "PhysicalDeviceSubgroupSizeControlPropertiesEXT";
- case StructureType::ePipelineShaderStageRequiredSubgroupSizeCreateInfoEXT : return "PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT";
- case StructureType::ePhysicalDeviceSubgroupSizeControlFeaturesEXT : return "PhysicalDeviceSubgroupSizeControlFeaturesEXT";
- case StructureType::eFragmentShadingRateAttachmentInfoKHR : return "FragmentShadingRateAttachmentInfoKHR";
- case StructureType::ePipelineFragmentShadingRateStateCreateInfoKHR : return "PipelineFragmentShadingRateStateCreateInfoKHR";
- case StructureType::ePhysicalDeviceFragmentShadingRatePropertiesKHR : return "PhysicalDeviceFragmentShadingRatePropertiesKHR";
- case StructureType::ePhysicalDeviceFragmentShadingRateFeaturesKHR : return "PhysicalDeviceFragmentShadingRateFeaturesKHR";
- case StructureType::ePhysicalDeviceFragmentShadingRateKHR : return "PhysicalDeviceFragmentShadingRateKHR";
- case StructureType::ePhysicalDeviceShaderCoreProperties2AMD : return "PhysicalDeviceShaderCoreProperties2AMD";
- case StructureType::ePhysicalDeviceCoherentMemoryFeaturesAMD : return "PhysicalDeviceCoherentMemoryFeaturesAMD";
- case StructureType::ePhysicalDeviceShaderImageAtomicInt64FeaturesEXT : return "PhysicalDeviceShaderImageAtomicInt64FeaturesEXT";
- case StructureType::ePhysicalDeviceMemoryBudgetPropertiesEXT : return "PhysicalDeviceMemoryBudgetPropertiesEXT";
- case StructureType::ePhysicalDeviceMemoryPriorityFeaturesEXT : return "PhysicalDeviceMemoryPriorityFeaturesEXT";
- case StructureType::eMemoryPriorityAllocateInfoEXT : return "MemoryPriorityAllocateInfoEXT";
- case StructureType::eSurfaceProtectedCapabilitiesKHR : return "SurfaceProtectedCapabilitiesKHR";
- case StructureType::ePhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV : return "PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV";
- case StructureType::ePhysicalDeviceBufferDeviceAddressFeaturesEXT : return "PhysicalDeviceBufferDeviceAddressFeaturesEXT";
- case StructureType::eBufferDeviceAddressCreateInfoEXT : return "BufferDeviceAddressCreateInfoEXT";
- case StructureType::ePhysicalDeviceToolPropertiesEXT : return "PhysicalDeviceToolPropertiesEXT";
- case StructureType::eValidationFeaturesEXT : return "ValidationFeaturesEXT";
- case StructureType::ePhysicalDeviceCooperativeMatrixFeaturesNV : return "PhysicalDeviceCooperativeMatrixFeaturesNV";
- case StructureType::eCooperativeMatrixPropertiesNV : return "CooperativeMatrixPropertiesNV";
- case StructureType::ePhysicalDeviceCooperativeMatrixPropertiesNV : return "PhysicalDeviceCooperativeMatrixPropertiesNV";
- case StructureType::ePhysicalDeviceCoverageReductionModeFeaturesNV : return "PhysicalDeviceCoverageReductionModeFeaturesNV";
- case StructureType::ePipelineCoverageReductionStateCreateInfoNV : return "PipelineCoverageReductionStateCreateInfoNV";
- case StructureType::eFramebufferMixedSamplesCombinationNV : return "FramebufferMixedSamplesCombinationNV";
- case StructureType::ePhysicalDeviceFragmentShaderInterlockFeaturesEXT : return "PhysicalDeviceFragmentShaderInterlockFeaturesEXT";
- case StructureType::ePhysicalDeviceYcbcrImageArraysFeaturesEXT : return "PhysicalDeviceYcbcrImageArraysFeaturesEXT";
- case StructureType::eSurfaceFullScreenExclusiveInfoEXT : return "SurfaceFullScreenExclusiveInfoEXT";
- case StructureType::eSurfaceCapabilitiesFullScreenExclusiveEXT : return "SurfaceCapabilitiesFullScreenExclusiveEXT";
- case StructureType::eSurfaceFullScreenExclusiveWin32InfoEXT : return "SurfaceFullScreenExclusiveWin32InfoEXT";
- case StructureType::eHeadlessSurfaceCreateInfoEXT : return "HeadlessSurfaceCreateInfoEXT";
- case StructureType::ePhysicalDeviceLineRasterizationFeaturesEXT : return "PhysicalDeviceLineRasterizationFeaturesEXT";
- case StructureType::ePipelineRasterizationLineStateCreateInfoEXT : return "PipelineRasterizationLineStateCreateInfoEXT";
- case StructureType::ePhysicalDeviceLineRasterizationPropertiesEXT : return "PhysicalDeviceLineRasterizationPropertiesEXT";
- case StructureType::ePhysicalDeviceShaderAtomicFloatFeaturesEXT : return "PhysicalDeviceShaderAtomicFloatFeaturesEXT";
- case StructureType::ePhysicalDeviceIndexTypeUint8FeaturesEXT : return "PhysicalDeviceIndexTypeUint8FeaturesEXT";
- case StructureType::ePhysicalDeviceExtendedDynamicStateFeaturesEXT : return "PhysicalDeviceExtendedDynamicStateFeaturesEXT";
- case StructureType::ePhysicalDevicePipelineExecutablePropertiesFeaturesKHR : return "PhysicalDevicePipelineExecutablePropertiesFeaturesKHR";
- case StructureType::ePipelineInfoKHR : return "PipelineInfoKHR";
- case StructureType::ePipelineExecutablePropertiesKHR : return "PipelineExecutablePropertiesKHR";
- case StructureType::ePipelineExecutableInfoKHR : return "PipelineExecutableInfoKHR";
- case StructureType::ePipelineExecutableStatisticKHR : return "PipelineExecutableStatisticKHR";
- case StructureType::ePipelineExecutableInternalRepresentationKHR : return "PipelineExecutableInternalRepresentationKHR";
- case StructureType::ePhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT : return "PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT";
- case StructureType::ePhysicalDeviceDeviceGeneratedCommandsPropertiesNV : return "PhysicalDeviceDeviceGeneratedCommandsPropertiesNV";
- case StructureType::eGraphicsShaderGroupCreateInfoNV : return "GraphicsShaderGroupCreateInfoNV";
- case StructureType::eGraphicsPipelineShaderGroupsCreateInfoNV : return "GraphicsPipelineShaderGroupsCreateInfoNV";
- case StructureType::eIndirectCommandsLayoutTokenNV : return "IndirectCommandsLayoutTokenNV";
- case StructureType::eIndirectCommandsLayoutCreateInfoNV : return "IndirectCommandsLayoutCreateInfoNV";
- case StructureType::eGeneratedCommandsInfoNV : return "GeneratedCommandsInfoNV";
- case StructureType::eGeneratedCommandsMemoryRequirementsInfoNV : return "GeneratedCommandsMemoryRequirementsInfoNV";
- case StructureType::ePhysicalDeviceDeviceGeneratedCommandsFeaturesNV : return "PhysicalDeviceDeviceGeneratedCommandsFeaturesNV";
- case StructureType::ePhysicalDeviceTexelBufferAlignmentFeaturesEXT : return "PhysicalDeviceTexelBufferAlignmentFeaturesEXT";
- case StructureType::ePhysicalDeviceTexelBufferAlignmentPropertiesEXT : return "PhysicalDeviceTexelBufferAlignmentPropertiesEXT";
- case StructureType::eCommandBufferInheritanceRenderPassTransformInfoQCOM : return "CommandBufferInheritanceRenderPassTransformInfoQCOM";
- case StructureType::eRenderPassTransformBeginInfoQCOM : return "RenderPassTransformBeginInfoQCOM";
- case StructureType::ePhysicalDeviceDeviceMemoryReportFeaturesEXT : return "PhysicalDeviceDeviceMemoryReportFeaturesEXT";
- case StructureType::eDeviceDeviceMemoryReportCreateInfoEXT : return "DeviceDeviceMemoryReportCreateInfoEXT";
- case StructureType::eDeviceMemoryReportCallbackDataEXT : return "DeviceMemoryReportCallbackDataEXT";
- case StructureType::ePhysicalDeviceRobustness2FeaturesEXT : return "PhysicalDeviceRobustness2FeaturesEXT";
- case StructureType::ePhysicalDeviceRobustness2PropertiesEXT : return "PhysicalDeviceRobustness2PropertiesEXT";
- case StructureType::eSamplerCustomBorderColorCreateInfoEXT : return "SamplerCustomBorderColorCreateInfoEXT";
- case StructureType::ePhysicalDeviceCustomBorderColorPropertiesEXT : return "PhysicalDeviceCustomBorderColorPropertiesEXT";
- case StructureType::ePhysicalDeviceCustomBorderColorFeaturesEXT : return "PhysicalDeviceCustomBorderColorFeaturesEXT";
- case StructureType::ePipelineLibraryCreateInfoKHR : return "PipelineLibraryCreateInfoKHR";
- case StructureType::ePhysicalDevicePrivateDataFeaturesEXT : return "PhysicalDevicePrivateDataFeaturesEXT";
- case StructureType::eDevicePrivateDataCreateInfoEXT : return "DevicePrivateDataCreateInfoEXT";
- case StructureType::ePrivateDataSlotCreateInfoEXT : return "PrivateDataSlotCreateInfoEXT";
- case StructureType::ePhysicalDevicePipelineCreationCacheControlFeaturesEXT : return "PhysicalDevicePipelineCreationCacheControlFeaturesEXT";
- case StructureType::ePhysicalDeviceDiagnosticsConfigFeaturesNV : return "PhysicalDeviceDiagnosticsConfigFeaturesNV";
- case StructureType::eDeviceDiagnosticsConfigCreateInfoNV : return "DeviceDiagnosticsConfigCreateInfoNV";
- case StructureType::ePhysicalDeviceFragmentShadingRateEnumsPropertiesNV : return "PhysicalDeviceFragmentShadingRateEnumsPropertiesNV";
- case StructureType::ePhysicalDeviceFragmentShadingRateEnumsFeaturesNV : return "PhysicalDeviceFragmentShadingRateEnumsFeaturesNV";
- case StructureType::ePipelineFragmentShadingRateEnumStateCreateInfoNV : return "PipelineFragmentShadingRateEnumStateCreateInfoNV";
- case StructureType::ePhysicalDeviceFragmentDensityMap2FeaturesEXT : return "PhysicalDeviceFragmentDensityMap2FeaturesEXT";
- case StructureType::ePhysicalDeviceFragmentDensityMap2PropertiesEXT : return "PhysicalDeviceFragmentDensityMap2PropertiesEXT";
- case StructureType::eCopyCommandTransformInfoQCOM : return "CopyCommandTransformInfoQCOM";
- case StructureType::ePhysicalDeviceImageRobustnessFeaturesEXT : return "PhysicalDeviceImageRobustnessFeaturesEXT";
- case StructureType::eCopyBufferInfo2KHR : return "CopyBufferInfo2KHR";
- case StructureType::eCopyImageInfo2KHR : return "CopyImageInfo2KHR";
- case StructureType::eCopyBufferToImageInfo2KHR : return "CopyBufferToImageInfo2KHR";
- case StructureType::eCopyImageToBufferInfo2KHR : return "CopyImageToBufferInfo2KHR";
- case StructureType::eBlitImageInfo2KHR : return "BlitImageInfo2KHR";
- case StructureType::eResolveImageInfo2KHR : return "ResolveImageInfo2KHR";
- case StructureType::eBufferCopy2KHR : return "BufferCopy2KHR";
- case StructureType::eImageCopy2KHR : return "ImageCopy2KHR";
- case StructureType::eImageBlit2KHR : return "ImageBlit2KHR";
- case StructureType::eBufferImageCopy2KHR : return "BufferImageCopy2KHR";
- case StructureType::eImageResolve2KHR : return "ImageResolve2KHR";
- case StructureType::ePhysicalDevice4444FormatsFeaturesEXT : return "PhysicalDevice4444FormatsFeaturesEXT";
- case StructureType::eDirectfbSurfaceCreateInfoEXT : return "DirectfbSurfaceCreateInfoEXT";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return m_owner;
}
- }
-
- enum class SubgroupFeatureFlagBits : VkSubgroupFeatureFlags
- {
- eBasic = VK_SUBGROUP_FEATURE_BASIC_BIT,
- eVote = VK_SUBGROUP_FEATURE_VOTE_BIT,
- eArithmetic = VK_SUBGROUP_FEATURE_ARITHMETIC_BIT,
- eBallot = VK_SUBGROUP_FEATURE_BALLOT_BIT,
- eShuffle = VK_SUBGROUP_FEATURE_SHUFFLE_BIT,
- eShuffleRelative = VK_SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT,
- eClustered = VK_SUBGROUP_FEATURE_CLUSTERED_BIT,
- eQuad = VK_SUBGROUP_FEATURE_QUAD_BIT,
- ePartitionedNV = VK_SUBGROUP_FEATURE_PARTITIONED_BIT_NV
- };
-
- VULKAN_HPP_INLINE std::string to_string( SubgroupFeatureFlagBits value )
- {
- switch ( value )
+ Optional<const AllocationCallbacks> getAllocator() const VULKAN_HPP_NOEXCEPT
{
- case SubgroupFeatureFlagBits::eBasic : return "Basic";
- case SubgroupFeatureFlagBits::eVote : return "Vote";
- case SubgroupFeatureFlagBits::eArithmetic : return "Arithmetic";
- case SubgroupFeatureFlagBits::eBallot : return "Ballot";
- case SubgroupFeatureFlagBits::eShuffle : return "Shuffle";
- case SubgroupFeatureFlagBits::eShuffleRelative : return "ShuffleRelative";
- case SubgroupFeatureFlagBits::eClustered : return "Clustered";
- case SubgroupFeatureFlagBits::eQuad : return "Quad";
- case SubgroupFeatureFlagBits::ePartitionedNV : return "PartitionedNV";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return m_allocationCallbacks;
}
- }
-
- enum class SubpassContents
- {
- eInline = VK_SUBPASS_CONTENTS_INLINE,
- eSecondaryCommandBuffers = VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS
- };
- VULKAN_HPP_INLINE std::string to_string( SubpassContents value )
- {
- switch ( value )
+ protected:
+ template <typename T>
+ void destroy( T t ) VULKAN_HPP_NOEXCEPT
{
- case SubpassContents::eInline : return "Inline";
- case SubpassContents::eSecondaryCommandBuffers : return "SecondaryCommandBuffers";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ VULKAN_HPP_ASSERT( m_owner && m_dispatch );
+ m_owner.destroy( t, m_allocationCallbacks, *m_dispatch );
}
- }
- enum class SubpassDescriptionFlagBits : VkSubpassDescriptionFlags
- {
- ePerViewAttributesNVX = VK_SUBPASS_DESCRIPTION_PER_VIEW_ATTRIBUTES_BIT_NVX,
- ePerViewPositionXOnlyNVX = VK_SUBPASS_DESCRIPTION_PER_VIEW_POSITION_X_ONLY_BIT_NVX,
- eFragmentRegionQCOM = VK_SUBPASS_DESCRIPTION_FRAGMENT_REGION_BIT_QCOM,
- eShaderResolveQCOM = VK_SUBPASS_DESCRIPTION_SHADER_RESOLVE_BIT_QCOM
+ private:
+ OwnerType m_owner = {};
+ Optional<const AllocationCallbacks> m_allocationCallbacks = nullptr;
+ Dispatch const * m_dispatch = nullptr;
};
- VULKAN_HPP_INLINE std::string to_string( SubpassDescriptionFlagBits value )
- {
- switch ( value )
- {
- case SubpassDescriptionFlagBits::ePerViewAttributesNVX : return "PerViewAttributesNVX";
- case SubpassDescriptionFlagBits::ePerViewPositionXOnlyNVX : return "PerViewPositionXOnlyNVX";
- case SubpassDescriptionFlagBits::eFragmentRegionQCOM : return "FragmentRegionQCOM";
- case SubpassDescriptionFlagBits::eShaderResolveQCOM : return "ShaderResolveQCOM";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
- }
- }
-
- enum class SurfaceCounterFlagBitsEXT : VkSurfaceCounterFlagsEXT
- {
- eVblank = VK_SURFACE_COUNTER_VBLANK_BIT_EXT
- };
+ class NoParent;
- VULKAN_HPP_INLINE std::string to_string( SurfaceCounterFlagBitsEXT value )
+ template <typename Dispatch>
+ class ObjectDestroy<NoParent, Dispatch>
{
- switch ( value )
- {
- case SurfaceCounterFlagBitsEXT::eVblank : return "Vblank";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
- }
- }
+ public:
+ ObjectDestroy() = default;
- enum class SurfaceTransformFlagBitsKHR : VkSurfaceTransformFlagsKHR
- {
- eIdentity = VK_SURFACE_TRANSFORM_IDENTITY_BIT_KHR,
- eRotate90 = VK_SURFACE_TRANSFORM_ROTATE_90_BIT_KHR,
- eRotate180 = VK_SURFACE_TRANSFORM_ROTATE_180_BIT_KHR,
- eRotate270 = VK_SURFACE_TRANSFORM_ROTATE_270_BIT_KHR,
- eHorizontalMirror = VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_BIT_KHR,
- eHorizontalMirrorRotate90 = VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_90_BIT_KHR,
- eHorizontalMirrorRotate180 = VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_180_BIT_KHR,
- eHorizontalMirrorRotate270 = VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_270_BIT_KHR,
- eInherit = VK_SURFACE_TRANSFORM_INHERIT_BIT_KHR
- };
+ ObjectDestroy( Optional<const AllocationCallbacks> allocationCallbacks,
+ Dispatch const & dispatch = VULKAN_HPP_DEFAULT_DISPATCHER ) VULKAN_HPP_NOEXCEPT
+ : m_allocationCallbacks( allocationCallbacks )
+ , m_dispatch( &dispatch )
+ {}
- VULKAN_HPP_INLINE std::string to_string( SurfaceTransformFlagBitsKHR value )
- {
- switch ( value )
+ Optional<const AllocationCallbacks> getAllocator() const VULKAN_HPP_NOEXCEPT
{
- case SurfaceTransformFlagBitsKHR::eIdentity : return "Identity";
- case SurfaceTransformFlagBitsKHR::eRotate90 : return "Rotate90";
- case SurfaceTransformFlagBitsKHR::eRotate180 : return "Rotate180";
- case SurfaceTransformFlagBitsKHR::eRotate270 : return "Rotate270";
- case SurfaceTransformFlagBitsKHR::eHorizontalMirror : return "HorizontalMirror";
- case SurfaceTransformFlagBitsKHR::eHorizontalMirrorRotate90 : return "HorizontalMirrorRotate90";
- case SurfaceTransformFlagBitsKHR::eHorizontalMirrorRotate180 : return "HorizontalMirrorRotate180";
- case SurfaceTransformFlagBitsKHR::eHorizontalMirrorRotate270 : return "HorizontalMirrorRotate270";
- case SurfaceTransformFlagBitsKHR::eInherit : return "Inherit";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return m_allocationCallbacks;
}
- }
-
- enum class SwapchainCreateFlagBitsKHR : VkSwapchainCreateFlagsKHR
- {
- eSplitInstanceBindRegions = VK_SWAPCHAIN_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR,
- eProtected = VK_SWAPCHAIN_CREATE_PROTECTED_BIT_KHR,
- eMutableFormat = VK_SWAPCHAIN_CREATE_MUTABLE_FORMAT_BIT_KHR
- };
- VULKAN_HPP_INLINE std::string to_string( SwapchainCreateFlagBitsKHR value )
- {
- switch ( value )
+ protected:
+ template <typename T>
+ void destroy( T t ) VULKAN_HPP_NOEXCEPT
{
- case SwapchainCreateFlagBitsKHR::eSplitInstanceBindRegions : return "SplitInstanceBindRegions";
- case SwapchainCreateFlagBitsKHR::eProtected : return "Protected";
- case SwapchainCreateFlagBitsKHR::eMutableFormat : return "MutableFormat";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ VULKAN_HPP_ASSERT( m_dispatch );
+ t.destroy( m_allocationCallbacks, *m_dispatch );
}
- }
- enum class SystemAllocationScope
- {
- eCommand = VK_SYSTEM_ALLOCATION_SCOPE_COMMAND,
- eObject = VK_SYSTEM_ALLOCATION_SCOPE_OBJECT,
- eCache = VK_SYSTEM_ALLOCATION_SCOPE_CACHE,
- eDevice = VK_SYSTEM_ALLOCATION_SCOPE_DEVICE,
- eInstance = VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE
+ private:
+ Optional<const AllocationCallbacks> m_allocationCallbacks = nullptr;
+ Dispatch const * m_dispatch = nullptr;
};
- VULKAN_HPP_INLINE std::string to_string( SystemAllocationScope value )
+ template <typename OwnerType, typename Dispatch>
+ class ObjectFree
{
- switch ( value )
- {
- case SystemAllocationScope::eCommand : return "Command";
- case SystemAllocationScope::eObject : return "Object";
- case SystemAllocationScope::eCache : return "Cache";
- case SystemAllocationScope::eDevice : return "Device";
- case SystemAllocationScope::eInstance : return "Instance";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
- }
- }
+ public:
+ ObjectFree() = default;
- enum class TessellationDomainOrigin
- {
- eUpperLeft = VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT,
- eLowerLeft = VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT
- };
- using TessellationDomainOriginKHR = TessellationDomainOrigin;
+ ObjectFree( OwnerType owner,
+ Optional<const AllocationCallbacks> allocationCallbacks VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & dispatch = VULKAN_HPP_DEFAULT_DISPATCHER ) VULKAN_HPP_NOEXCEPT
+ : m_owner( owner )
+ , m_allocationCallbacks( allocationCallbacks )
+ , m_dispatch( &dispatch )
+ {}
- VULKAN_HPP_INLINE std::string to_string( TessellationDomainOrigin value )
- {
- switch ( value )
+ OwnerType getOwner() const VULKAN_HPP_NOEXCEPT
{
- case TessellationDomainOrigin::eUpperLeft : return "UpperLeft";
- case TessellationDomainOrigin::eLowerLeft : return "LowerLeft";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return m_owner;
}
- }
- enum class TimeDomainEXT
- {
- eDevice = VK_TIME_DOMAIN_DEVICE_EXT,
- eClockMonotonic = VK_TIME_DOMAIN_CLOCK_MONOTONIC_EXT,
- eClockMonotonicRaw = VK_TIME_DOMAIN_CLOCK_MONOTONIC_RAW_EXT,
- eQueryPerformanceCounter = VK_TIME_DOMAIN_QUERY_PERFORMANCE_COUNTER_EXT
- };
-
- VULKAN_HPP_INLINE std::string to_string( TimeDomainEXT value )
- {
- switch ( value )
+ Optional<const AllocationCallbacks> getAllocator() const VULKAN_HPP_NOEXCEPT
{
- case TimeDomainEXT::eDevice : return "Device";
- case TimeDomainEXT::eClockMonotonic : return "ClockMonotonic";
- case TimeDomainEXT::eClockMonotonicRaw : return "ClockMonotonicRaw";
- case TimeDomainEXT::eQueryPerformanceCounter : return "QueryPerformanceCounter";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return m_allocationCallbacks;
}
- }
-
- enum class ToolPurposeFlagBitsEXT : VkToolPurposeFlagsEXT
- {
- eValidation = VK_TOOL_PURPOSE_VALIDATION_BIT_EXT,
- eProfiling = VK_TOOL_PURPOSE_PROFILING_BIT_EXT,
- eTracing = VK_TOOL_PURPOSE_TRACING_BIT_EXT,
- eAdditionalFeatures = VK_TOOL_PURPOSE_ADDITIONAL_FEATURES_BIT_EXT,
- eModifyingFeatures = VK_TOOL_PURPOSE_MODIFYING_FEATURES_BIT_EXT,
- eDebugReporting = VK_TOOL_PURPOSE_DEBUG_REPORTING_BIT_EXT,
- eDebugMarkers = VK_TOOL_PURPOSE_DEBUG_MARKERS_BIT_EXT
- };
- VULKAN_HPP_INLINE std::string to_string( ToolPurposeFlagBitsEXT value )
- {
- switch ( value )
+ protected:
+ template <typename T>
+ void destroy( T t ) VULKAN_HPP_NOEXCEPT
{
- case ToolPurposeFlagBitsEXT::eValidation : return "Validation";
- case ToolPurposeFlagBitsEXT::eProfiling : return "Profiling";
- case ToolPurposeFlagBitsEXT::eTracing : return "Tracing";
- case ToolPurposeFlagBitsEXT::eAdditionalFeatures : return "AdditionalFeatures";
- case ToolPurposeFlagBitsEXT::eModifyingFeatures : return "ModifyingFeatures";
- case ToolPurposeFlagBitsEXT::eDebugReporting : return "DebugReporting";
- case ToolPurposeFlagBitsEXT::eDebugMarkers : return "DebugMarkers";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ VULKAN_HPP_ASSERT( m_owner && m_dispatch );
+ m_owner.free( t, m_allocationCallbacks, *m_dispatch );
}
- }
- enum class ValidationCacheHeaderVersionEXT
- {
- eOne = VK_VALIDATION_CACHE_HEADER_VERSION_ONE_EXT
+ private:
+ OwnerType m_owner = {};
+ Optional<const AllocationCallbacks> m_allocationCallbacks = nullptr;
+ Dispatch const * m_dispatch = nullptr;
};
- VULKAN_HPP_INLINE std::string to_string( ValidationCacheHeaderVersionEXT value )
+ template <typename OwnerType, typename Dispatch>
+ class ObjectRelease
{
- switch ( value )
- {
- case ValidationCacheHeaderVersionEXT::eOne : return "One";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
- }
- }
+ public:
+ ObjectRelease() = default;
- enum class ValidationCheckEXT
- {
- eAll = VK_VALIDATION_CHECK_ALL_EXT,
- eShaders = VK_VALIDATION_CHECK_SHADERS_EXT
- };
+ ObjectRelease( OwnerType owner, Dispatch const & dispatch = VULKAN_HPP_DEFAULT_DISPATCHER ) VULKAN_HPP_NOEXCEPT
+ : m_owner( owner )
+ , m_dispatch( &dispatch )
+ {}
- VULKAN_HPP_INLINE std::string to_string( ValidationCheckEXT value )
- {
- switch ( value )
+ OwnerType getOwner() const VULKAN_HPP_NOEXCEPT
{
- case ValidationCheckEXT::eAll : return "All";
- case ValidationCheckEXT::eShaders : return "Shaders";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return m_owner;
}
- }
-
- enum class ValidationFeatureDisableEXT
- {
- eAll = VK_VALIDATION_FEATURE_DISABLE_ALL_EXT,
- eShaders = VK_VALIDATION_FEATURE_DISABLE_SHADERS_EXT,
- eThreadSafety = VK_VALIDATION_FEATURE_DISABLE_THREAD_SAFETY_EXT,
- eApiParameters = VK_VALIDATION_FEATURE_DISABLE_API_PARAMETERS_EXT,
- eObjectLifetimes = VK_VALIDATION_FEATURE_DISABLE_OBJECT_LIFETIMES_EXT,
- eCoreChecks = VK_VALIDATION_FEATURE_DISABLE_CORE_CHECKS_EXT,
- eUniqueHandles = VK_VALIDATION_FEATURE_DISABLE_UNIQUE_HANDLES_EXT
- };
- VULKAN_HPP_INLINE std::string to_string( ValidationFeatureDisableEXT value )
- {
- switch ( value )
+ protected:
+ template <typename T>
+ void destroy( T t ) VULKAN_HPP_NOEXCEPT
{
- case ValidationFeatureDisableEXT::eAll : return "All";
- case ValidationFeatureDisableEXT::eShaders : return "Shaders";
- case ValidationFeatureDisableEXT::eThreadSafety : return "ThreadSafety";
- case ValidationFeatureDisableEXT::eApiParameters : return "ApiParameters";
- case ValidationFeatureDisableEXT::eObjectLifetimes : return "ObjectLifetimes";
- case ValidationFeatureDisableEXT::eCoreChecks : return "CoreChecks";
- case ValidationFeatureDisableEXT::eUniqueHandles : return "UniqueHandles";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ VULKAN_HPP_ASSERT( m_owner && m_dispatch );
+ m_owner.release( t, *m_dispatch );
}
- }
- enum class ValidationFeatureEnableEXT
- {
- eGpuAssisted = VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_EXT,
- eGpuAssistedReserveBindingSlot = VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_RESERVE_BINDING_SLOT_EXT,
- eBestPractices = VK_VALIDATION_FEATURE_ENABLE_BEST_PRACTICES_EXT,
- eDebugPrintf = VK_VALIDATION_FEATURE_ENABLE_DEBUG_PRINTF_EXT,
- eSynchronizationValidation = VK_VALIDATION_FEATURE_ENABLE_SYNCHRONIZATION_VALIDATION_EXT
+ private:
+ OwnerType m_owner = {};
+ Dispatch const * m_dispatch = nullptr;
};
- VULKAN_HPP_INLINE std::string to_string( ValidationFeatureEnableEXT value )
+ template <typename OwnerType, typename PoolType, typename Dispatch>
+ class PoolFree
{
- switch ( value )
- {
- case ValidationFeatureEnableEXT::eGpuAssisted : return "GpuAssisted";
- case ValidationFeatureEnableEXT::eGpuAssistedReserveBindingSlot : return "GpuAssistedReserveBindingSlot";
- case ValidationFeatureEnableEXT::eBestPractices : return "BestPractices";
- case ValidationFeatureEnableEXT::eDebugPrintf : return "DebugPrintf";
- case ValidationFeatureEnableEXT::eSynchronizationValidation : return "SynchronizationValidation";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
- }
- }
+ public:
+ PoolFree() = default;
- enum class VendorId
- {
- eVIV = VK_VENDOR_ID_VIV,
- eVSI = VK_VENDOR_ID_VSI,
- eKazan = VK_VENDOR_ID_KAZAN,
- eCodeplay = VK_VENDOR_ID_CODEPLAY,
- eMESA = VK_VENDOR_ID_MESA
- };
+ PoolFree( OwnerType owner,
+ PoolType pool,
+ Dispatch const & dispatch = VULKAN_HPP_DEFAULT_DISPATCHER ) VULKAN_HPP_NOEXCEPT
+ : m_owner( owner )
+ , m_pool( pool )
+ , m_dispatch( &dispatch )
+ {}
- VULKAN_HPP_INLINE std::string to_string( VendorId value )
- {
- switch ( value )
+ OwnerType getOwner() const VULKAN_HPP_NOEXCEPT
{
- case VendorId::eVIV : return "VIV";
- case VendorId::eVSI : return "VSI";
- case VendorId::eKazan : return "Kazan";
- case VendorId::eCodeplay : return "Codeplay";
- case VendorId::eMESA : return "MESA";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return m_owner;
}
- }
-
- enum class VertexInputRate
- {
- eVertex = VK_VERTEX_INPUT_RATE_VERTEX,
- eInstance = VK_VERTEX_INPUT_RATE_INSTANCE
- };
-
- VULKAN_HPP_INLINE std::string to_string( VertexInputRate value )
- {
- switch ( value )
+ PoolType getPool() const VULKAN_HPP_NOEXCEPT
{
- case VertexInputRate::eVertex : return "Vertex";
- case VertexInputRate::eInstance : return "Instance";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ return m_pool;
}
- }
- enum class ViewportCoordinateSwizzleNV
- {
- ePositiveX = VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_X_NV,
- eNegativeX = VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_X_NV,
- ePositiveY = VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_Y_NV,
- eNegativeY = VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_Y_NV,
- ePositiveZ = VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_Z_NV,
- eNegativeZ = VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_Z_NV,
- ePositiveW = VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_W_NV,
- eNegativeW = VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_W_NV
- };
-
- VULKAN_HPP_INLINE std::string to_string( ViewportCoordinateSwizzleNV value )
- {
- switch ( value )
+ protected:
+ template <typename T>
+ void destroy( T t ) VULKAN_HPP_NOEXCEPT
{
- case ViewportCoordinateSwizzleNV::ePositiveX : return "PositiveX";
- case ViewportCoordinateSwizzleNV::eNegativeX : return "NegativeX";
- case ViewportCoordinateSwizzleNV::ePositiveY : return "PositiveY";
- case ViewportCoordinateSwizzleNV::eNegativeY : return "NegativeY";
- case ViewportCoordinateSwizzleNV::ePositiveZ : return "PositiveZ";
- case ViewportCoordinateSwizzleNV::eNegativeZ : return "NegativeZ";
- case ViewportCoordinateSwizzleNV::ePositiveW : return "PositiveW";
- case ViewportCoordinateSwizzleNV::eNegativeW : return "NegativeW";
- default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ m_owner.free( m_pool, t, *m_dispatch );
}
- }
-
- template<typename T>
- struct IndexTypeValue
- {};
-
- template <>
- struct IndexTypeValue<uint16_t>
- {
- static VULKAN_HPP_CONST_OR_CONSTEXPR IndexType value = IndexType::eUint16;
- };
-
- template <>
- struct CppType<IndexType, IndexType::eUint16>
- {
- using Type = uint16_t;
- };
-
- template <>
- struct IndexTypeValue<uint32_t>
- {
- static VULKAN_HPP_CONST_OR_CONSTEXPR IndexType value = IndexType::eUint32;
- };
-
- template <>
- struct CppType<IndexType, IndexType::eUint32>
- {
- using Type = uint32_t;
- };
-
- template <>
- struct IndexTypeValue<uint8_t>
- {
- static VULKAN_HPP_CONST_OR_CONSTEXPR IndexType value = IndexType::eUint8EXT;
- };
-
- template <>
- struct CppType<IndexType, IndexType::eUint8EXT>
- {
- using Type = uint8_t;
- };
-
-
- using AccelerationStructureCreateFlagsKHR = Flags<AccelerationStructureCreateFlagBitsKHR>;
-
- template <> struct FlagTraits<AccelerationStructureCreateFlagBitsKHR>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(AccelerationStructureCreateFlagBitsKHR::eDeviceAddressCaptureReplay)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR AccelerationStructureCreateFlagsKHR operator|( AccelerationStructureCreateFlagBitsKHR bit0, AccelerationStructureCreateFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return AccelerationStructureCreateFlagsKHR( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR AccelerationStructureCreateFlagsKHR operator&( AccelerationStructureCreateFlagBitsKHR bit0, AccelerationStructureCreateFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return AccelerationStructureCreateFlagsKHR( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR AccelerationStructureCreateFlagsKHR operator^( AccelerationStructureCreateFlagBitsKHR bit0, AccelerationStructureCreateFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return AccelerationStructureCreateFlagsKHR( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR AccelerationStructureCreateFlagsKHR operator~( AccelerationStructureCreateFlagBitsKHR bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( AccelerationStructureCreateFlagsKHR( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( AccelerationStructureCreateFlagsKHR value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & AccelerationStructureCreateFlagBitsKHR::eDeviceAddressCaptureReplay ) result += "DeviceAddressCaptureReplay | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-
- using AccessFlags = Flags<AccessFlagBits>;
-
- template <> struct FlagTraits<AccessFlagBits>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(AccessFlagBits::eIndirectCommandRead) | VkFlags(AccessFlagBits::eIndexRead) | VkFlags(AccessFlagBits::eVertexAttributeRead) | VkFlags(AccessFlagBits::eUniformRead) | VkFlags(AccessFlagBits::eInputAttachmentRead) | VkFlags(AccessFlagBits::eShaderRead) | VkFlags(AccessFlagBits::eShaderWrite) | VkFlags(AccessFlagBits::eColorAttachmentRead) | VkFlags(AccessFlagBits::eColorAttachmentWrite) | VkFlags(AccessFlagBits::eDepthStencilAttachmentRead) | VkFlags(AccessFlagBits::eDepthStencilAttachmentWrite) | VkFlags(AccessFlagBits::eTransferRead) | VkFlags(AccessFlagBits::eTransferWrite) | VkFlags(AccessFlagBits::eHostRead) | VkFlags(AccessFlagBits::eHostWrite) | VkFlags(AccessFlagBits::eMemoryRead) | VkFlags(AccessFlagBits::eMemoryWrite) | VkFlags(AccessFlagBits::eTransformFeedbackWriteEXT) | VkFlags(AccessFlagBits::eTransformFeedbackCounterReadEXT) | VkFlags(AccessFlagBits::eTransformFeedbackCounterWriteEXT) | VkFlags(AccessFlagBits::eConditionalRenderingReadEXT) | VkFlags(AccessFlagBits::eColorAttachmentReadNoncoherentEXT) | VkFlags(AccessFlagBits::eAccelerationStructureReadKHR) | VkFlags(AccessFlagBits::eAccelerationStructureWriteKHR) | VkFlags(AccessFlagBits::eShadingRateImageReadNV) | VkFlags(AccessFlagBits::eFragmentDensityMapReadEXT) | VkFlags(AccessFlagBits::eCommandPreprocessReadNV) | VkFlags(AccessFlagBits::eCommandPreprocessWriteNV)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR AccessFlags operator|( AccessFlagBits bit0, AccessFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return AccessFlags( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR AccessFlags operator&( AccessFlagBits bit0, AccessFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return AccessFlags( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR AccessFlags operator^( AccessFlagBits bit0, AccessFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return AccessFlags( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR AccessFlags operator~( AccessFlagBits bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( AccessFlags( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( AccessFlags value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & AccessFlagBits::eIndirectCommandRead ) result += "IndirectCommandRead | ";
- if ( value & AccessFlagBits::eIndexRead ) result += "IndexRead | ";
- if ( value & AccessFlagBits::eVertexAttributeRead ) result += "VertexAttributeRead | ";
- if ( value & AccessFlagBits::eUniformRead ) result += "UniformRead | ";
- if ( value & AccessFlagBits::eInputAttachmentRead ) result += "InputAttachmentRead | ";
- if ( value & AccessFlagBits::eShaderRead ) result += "ShaderRead | ";
- if ( value & AccessFlagBits::eShaderWrite ) result += "ShaderWrite | ";
- if ( value & AccessFlagBits::eColorAttachmentRead ) result += "ColorAttachmentRead | ";
- if ( value & AccessFlagBits::eColorAttachmentWrite ) result += "ColorAttachmentWrite | ";
- if ( value & AccessFlagBits::eDepthStencilAttachmentRead ) result += "DepthStencilAttachmentRead | ";
- if ( value & AccessFlagBits::eDepthStencilAttachmentWrite ) result += "DepthStencilAttachmentWrite | ";
- if ( value & AccessFlagBits::eTransferRead ) result += "TransferRead | ";
- if ( value & AccessFlagBits::eTransferWrite ) result += "TransferWrite | ";
- if ( value & AccessFlagBits::eHostRead ) result += "HostRead | ";
- if ( value & AccessFlagBits::eHostWrite ) result += "HostWrite | ";
- if ( value & AccessFlagBits::eMemoryRead ) result += "MemoryRead | ";
- if ( value & AccessFlagBits::eMemoryWrite ) result += "MemoryWrite | ";
- if ( value & AccessFlagBits::eTransformFeedbackWriteEXT ) result += "TransformFeedbackWriteEXT | ";
- if ( value & AccessFlagBits::eTransformFeedbackCounterReadEXT ) result += "TransformFeedbackCounterReadEXT | ";
- if ( value & AccessFlagBits::eTransformFeedbackCounterWriteEXT ) result += "TransformFeedbackCounterWriteEXT | ";
- if ( value & AccessFlagBits::eConditionalRenderingReadEXT ) result += "ConditionalRenderingReadEXT | ";
- if ( value & AccessFlagBits::eColorAttachmentReadNoncoherentEXT ) result += "ColorAttachmentReadNoncoherentEXT | ";
- if ( value & AccessFlagBits::eAccelerationStructureReadKHR ) result += "AccelerationStructureReadKHR | ";
- if ( value & AccessFlagBits::eAccelerationStructureWriteKHR ) result += "AccelerationStructureWriteKHR | ";
- if ( value & AccessFlagBits::eShadingRateImageReadNV ) result += "ShadingRateImageReadNV | ";
- if ( value & AccessFlagBits::eFragmentDensityMapReadEXT ) result += "FragmentDensityMapReadEXT | ";
- if ( value & AccessFlagBits::eCommandPreprocessReadNV ) result += "CommandPreprocessReadNV | ";
- if ( value & AccessFlagBits::eCommandPreprocessWriteNV ) result += "CommandPreprocessWriteNV | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-
- using AcquireProfilingLockFlagsKHR = Flags<AcquireProfilingLockFlagBitsKHR>;
-
- VULKAN_HPP_INLINE std::string to_string( AcquireProfilingLockFlagsKHR )
- {
-
- return "{}";
- }
-
-#ifdef VK_USE_PLATFORM_ANDROID_KHR
- enum class AndroidSurfaceCreateFlagBitsKHR : VkFlags
- {};
-
- VULKAN_HPP_INLINE std::string to_string( AndroidSurfaceCreateFlagBitsKHR )
- {
- return "(void)";
- }
-
- using AndroidSurfaceCreateFlagsKHR = Flags<AndroidSurfaceCreateFlagBitsKHR>;
-
- VULKAN_HPP_INLINE std::string to_string( AndroidSurfaceCreateFlagsKHR )
- {
-
- return "{}";
- }
-#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
-
-
- using AttachmentDescriptionFlags = Flags<AttachmentDescriptionFlagBits>;
-
- template <> struct FlagTraits<AttachmentDescriptionFlagBits>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(AttachmentDescriptionFlagBits::eMayAlias)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR AttachmentDescriptionFlags operator|( AttachmentDescriptionFlagBits bit0, AttachmentDescriptionFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return AttachmentDescriptionFlags( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR AttachmentDescriptionFlags operator&( AttachmentDescriptionFlagBits bit0, AttachmentDescriptionFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return AttachmentDescriptionFlags( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR AttachmentDescriptionFlags operator^( AttachmentDescriptionFlagBits bit0, AttachmentDescriptionFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return AttachmentDescriptionFlags( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR AttachmentDescriptionFlags operator~( AttachmentDescriptionFlagBits bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( AttachmentDescriptionFlags( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( AttachmentDescriptionFlags value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & AttachmentDescriptionFlagBits::eMayAlias ) result += "MayAlias | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-
- using BufferCreateFlags = Flags<BufferCreateFlagBits>;
-
- template <> struct FlagTraits<BufferCreateFlagBits>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(BufferCreateFlagBits::eSparseBinding) | VkFlags(BufferCreateFlagBits::eSparseResidency) | VkFlags(BufferCreateFlagBits::eSparseAliased) | VkFlags(BufferCreateFlagBits::eProtected) | VkFlags(BufferCreateFlagBits::eDeviceAddressCaptureReplay)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR BufferCreateFlags operator|( BufferCreateFlagBits bit0, BufferCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return BufferCreateFlags( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR BufferCreateFlags operator&( BufferCreateFlagBits bit0, BufferCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return BufferCreateFlags( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR BufferCreateFlags operator^( BufferCreateFlagBits bit0, BufferCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return BufferCreateFlags( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR BufferCreateFlags operator~( BufferCreateFlagBits bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( BufferCreateFlags( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( BufferCreateFlags value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & BufferCreateFlagBits::eSparseBinding ) result += "SparseBinding | ";
- if ( value & BufferCreateFlagBits::eSparseResidency ) result += "SparseResidency | ";
- if ( value & BufferCreateFlagBits::eSparseAliased ) result += "SparseAliased | ";
- if ( value & BufferCreateFlagBits::eProtected ) result += "Protected | ";
- if ( value & BufferCreateFlagBits::eDeviceAddressCaptureReplay ) result += "DeviceAddressCaptureReplay | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-
- using BufferUsageFlags = Flags<BufferUsageFlagBits>;
-
- template <> struct FlagTraits<BufferUsageFlagBits>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(BufferUsageFlagBits::eTransferSrc) | VkFlags(BufferUsageFlagBits::eTransferDst) | VkFlags(BufferUsageFlagBits::eUniformTexelBuffer) | VkFlags(BufferUsageFlagBits::eStorageTexelBuffer) | VkFlags(BufferUsageFlagBits::eUniformBuffer) | VkFlags(BufferUsageFlagBits::eStorageBuffer) | VkFlags(BufferUsageFlagBits::eIndexBuffer) | VkFlags(BufferUsageFlagBits::eVertexBuffer) | VkFlags(BufferUsageFlagBits::eIndirectBuffer) | VkFlags(BufferUsageFlagBits::eShaderDeviceAddress) | VkFlags(BufferUsageFlagBits::eTransformFeedbackBufferEXT) | VkFlags(BufferUsageFlagBits::eTransformFeedbackCounterBufferEXT) | VkFlags(BufferUsageFlagBits::eConditionalRenderingEXT) | VkFlags(BufferUsageFlagBits::eAccelerationStructureBuildInputReadOnlyKHR) | VkFlags(BufferUsageFlagBits::eAccelerationStructureStorageKHR) | VkFlags(BufferUsageFlagBits::eShaderBindingTableKHR)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR BufferUsageFlags operator|( BufferUsageFlagBits bit0, BufferUsageFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return BufferUsageFlags( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR BufferUsageFlags operator&( BufferUsageFlagBits bit0, BufferUsageFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return BufferUsageFlags( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR BufferUsageFlags operator^( BufferUsageFlagBits bit0, BufferUsageFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return BufferUsageFlags( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR BufferUsageFlags operator~( BufferUsageFlagBits bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( BufferUsageFlags( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( BufferUsageFlags value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & BufferUsageFlagBits::eTransferSrc ) result += "TransferSrc | ";
- if ( value & BufferUsageFlagBits::eTransferDst ) result += "TransferDst | ";
- if ( value & BufferUsageFlagBits::eUniformTexelBuffer ) result += "UniformTexelBuffer | ";
- if ( value & BufferUsageFlagBits::eStorageTexelBuffer ) result += "StorageTexelBuffer | ";
- if ( value & BufferUsageFlagBits::eUniformBuffer ) result += "UniformBuffer | ";
- if ( value & BufferUsageFlagBits::eStorageBuffer ) result += "StorageBuffer | ";
- if ( value & BufferUsageFlagBits::eIndexBuffer ) result += "IndexBuffer | ";
- if ( value & BufferUsageFlagBits::eVertexBuffer ) result += "VertexBuffer | ";
- if ( value & BufferUsageFlagBits::eIndirectBuffer ) result += "IndirectBuffer | ";
- if ( value & BufferUsageFlagBits::eShaderDeviceAddress ) result += "ShaderDeviceAddress | ";
- if ( value & BufferUsageFlagBits::eTransformFeedbackBufferEXT ) result += "TransformFeedbackBufferEXT | ";
- if ( value & BufferUsageFlagBits::eTransformFeedbackCounterBufferEXT ) result += "TransformFeedbackCounterBufferEXT | ";
- if ( value & BufferUsageFlagBits::eConditionalRenderingEXT ) result += "ConditionalRenderingEXT | ";
- if ( value & BufferUsageFlagBits::eAccelerationStructureBuildInputReadOnlyKHR ) result += "AccelerationStructureBuildInputReadOnlyKHR | ";
- if ( value & BufferUsageFlagBits::eAccelerationStructureStorageKHR ) result += "AccelerationStructureStorageKHR | ";
- if ( value & BufferUsageFlagBits::eShaderBindingTableKHR ) result += "ShaderBindingTableKHR | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
- enum class BufferViewCreateFlagBits : VkFlags
- {};
-
- VULKAN_HPP_INLINE std::string to_string( BufferViewCreateFlagBits )
- {
- return "(void)";
- }
-
- using BufferViewCreateFlags = Flags<BufferViewCreateFlagBits>;
-
- VULKAN_HPP_INLINE std::string to_string( BufferViewCreateFlags )
- {
-
- return "{}";
- }
-
-
- using BuildAccelerationStructureFlagsKHR = Flags<BuildAccelerationStructureFlagBitsKHR>;
-
- template <> struct FlagTraits<BuildAccelerationStructureFlagBitsKHR>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(BuildAccelerationStructureFlagBitsKHR::eAllowUpdate) | VkFlags(BuildAccelerationStructureFlagBitsKHR::eAllowCompaction) | VkFlags(BuildAccelerationStructureFlagBitsKHR::ePreferFastTrace) | VkFlags(BuildAccelerationStructureFlagBitsKHR::ePreferFastBuild) | VkFlags(BuildAccelerationStructureFlagBitsKHR::eLowMemory)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR BuildAccelerationStructureFlagsKHR operator|( BuildAccelerationStructureFlagBitsKHR bit0, BuildAccelerationStructureFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return BuildAccelerationStructureFlagsKHR( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR BuildAccelerationStructureFlagsKHR operator&( BuildAccelerationStructureFlagBitsKHR bit0, BuildAccelerationStructureFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return BuildAccelerationStructureFlagsKHR( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR BuildAccelerationStructureFlagsKHR operator^( BuildAccelerationStructureFlagBitsKHR bit0, BuildAccelerationStructureFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return BuildAccelerationStructureFlagsKHR( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR BuildAccelerationStructureFlagsKHR operator~( BuildAccelerationStructureFlagBitsKHR bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( BuildAccelerationStructureFlagsKHR( bits ) );
- }
-
- using BuildAccelerationStructureFlagsNV = BuildAccelerationStructureFlagsKHR;
-
- VULKAN_HPP_INLINE std::string to_string( BuildAccelerationStructureFlagsKHR value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & BuildAccelerationStructureFlagBitsKHR::eAllowUpdate ) result += "AllowUpdate | ";
- if ( value & BuildAccelerationStructureFlagBitsKHR::eAllowCompaction ) result += "AllowCompaction | ";
- if ( value & BuildAccelerationStructureFlagBitsKHR::ePreferFastTrace ) result += "PreferFastTrace | ";
- if ( value & BuildAccelerationStructureFlagBitsKHR::ePreferFastBuild ) result += "PreferFastBuild | ";
- if ( value & BuildAccelerationStructureFlagBitsKHR::eLowMemory ) result += "LowMemory | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-
- using ColorComponentFlags = Flags<ColorComponentFlagBits>;
-
- template <> struct FlagTraits<ColorComponentFlagBits>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(ColorComponentFlagBits::eR) | VkFlags(ColorComponentFlagBits::eG) | VkFlags(ColorComponentFlagBits::eB) | VkFlags(ColorComponentFlagBits::eA)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ColorComponentFlags operator|( ColorComponentFlagBits bit0, ColorComponentFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return ColorComponentFlags( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ColorComponentFlags operator&( ColorComponentFlagBits bit0, ColorComponentFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return ColorComponentFlags( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ColorComponentFlags operator^( ColorComponentFlagBits bit0, ColorComponentFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return ColorComponentFlags( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ColorComponentFlags operator~( ColorComponentFlagBits bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( ColorComponentFlags( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( ColorComponentFlags value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & ColorComponentFlagBits::eR ) result += "R | ";
- if ( value & ColorComponentFlagBits::eG ) result += "G | ";
- if ( value & ColorComponentFlagBits::eB ) result += "B | ";
- if ( value & ColorComponentFlagBits::eA ) result += "A | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-
- using CommandBufferResetFlags = Flags<CommandBufferResetFlagBits>;
-
- template <> struct FlagTraits<CommandBufferResetFlagBits>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(CommandBufferResetFlagBits::eReleaseResources)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CommandBufferResetFlags operator|( CommandBufferResetFlagBits bit0, CommandBufferResetFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return CommandBufferResetFlags( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CommandBufferResetFlags operator&( CommandBufferResetFlagBits bit0, CommandBufferResetFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return CommandBufferResetFlags( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CommandBufferResetFlags operator^( CommandBufferResetFlagBits bit0, CommandBufferResetFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return CommandBufferResetFlags( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CommandBufferResetFlags operator~( CommandBufferResetFlagBits bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( CommandBufferResetFlags( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( CommandBufferResetFlags value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & CommandBufferResetFlagBits::eReleaseResources ) result += "ReleaseResources | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-
- using CommandBufferUsageFlags = Flags<CommandBufferUsageFlagBits>;
-
- template <> struct FlagTraits<CommandBufferUsageFlagBits>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(CommandBufferUsageFlagBits::eOneTimeSubmit) | VkFlags(CommandBufferUsageFlagBits::eRenderPassContinue) | VkFlags(CommandBufferUsageFlagBits::eSimultaneousUse)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CommandBufferUsageFlags operator|( CommandBufferUsageFlagBits bit0, CommandBufferUsageFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return CommandBufferUsageFlags( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CommandBufferUsageFlags operator&( CommandBufferUsageFlagBits bit0, CommandBufferUsageFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return CommandBufferUsageFlags( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CommandBufferUsageFlags operator^( CommandBufferUsageFlagBits bit0, CommandBufferUsageFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return CommandBufferUsageFlags( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CommandBufferUsageFlags operator~( CommandBufferUsageFlagBits bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( CommandBufferUsageFlags( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( CommandBufferUsageFlags value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & CommandBufferUsageFlagBits::eOneTimeSubmit ) result += "OneTimeSubmit | ";
- if ( value & CommandBufferUsageFlagBits::eRenderPassContinue ) result += "RenderPassContinue | ";
- if ( value & CommandBufferUsageFlagBits::eSimultaneousUse ) result += "SimultaneousUse | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-
- using CommandPoolCreateFlags = Flags<CommandPoolCreateFlagBits>;
-
- template <> struct FlagTraits<CommandPoolCreateFlagBits>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(CommandPoolCreateFlagBits::eTransient) | VkFlags(CommandPoolCreateFlagBits::eResetCommandBuffer) | VkFlags(CommandPoolCreateFlagBits::eProtected)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CommandPoolCreateFlags operator|( CommandPoolCreateFlagBits bit0, CommandPoolCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return CommandPoolCreateFlags( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CommandPoolCreateFlags operator&( CommandPoolCreateFlagBits bit0, CommandPoolCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return CommandPoolCreateFlags( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CommandPoolCreateFlags operator^( CommandPoolCreateFlagBits bit0, CommandPoolCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return CommandPoolCreateFlags( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CommandPoolCreateFlags operator~( CommandPoolCreateFlagBits bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( CommandPoolCreateFlags( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( CommandPoolCreateFlags value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & CommandPoolCreateFlagBits::eTransient ) result += "Transient | ";
- if ( value & CommandPoolCreateFlagBits::eResetCommandBuffer ) result += "ResetCommandBuffer | ";
- if ( value & CommandPoolCreateFlagBits::eProtected ) result += "Protected | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-
- using CommandPoolResetFlags = Flags<CommandPoolResetFlagBits>;
-
- template <> struct FlagTraits<CommandPoolResetFlagBits>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(CommandPoolResetFlagBits::eReleaseResources)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CommandPoolResetFlags operator|( CommandPoolResetFlagBits bit0, CommandPoolResetFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return CommandPoolResetFlags( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CommandPoolResetFlags operator&( CommandPoolResetFlagBits bit0, CommandPoolResetFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return CommandPoolResetFlags( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CommandPoolResetFlags operator^( CommandPoolResetFlagBits bit0, CommandPoolResetFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return CommandPoolResetFlags( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CommandPoolResetFlags operator~( CommandPoolResetFlagBits bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( CommandPoolResetFlags( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( CommandPoolResetFlags value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & CommandPoolResetFlagBits::eReleaseResources ) result += "ReleaseResources | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
- enum class CommandPoolTrimFlagBits : VkFlags
- {};
-
- VULKAN_HPP_INLINE std::string to_string( CommandPoolTrimFlagBits )
- {
- return "(void)";
- }
-
- using CommandPoolTrimFlags = Flags<CommandPoolTrimFlagBits>;
-
- using CommandPoolTrimFlagsKHR = CommandPoolTrimFlags;
-
- VULKAN_HPP_INLINE std::string to_string( CommandPoolTrimFlags )
- {
-
- return "{}";
- }
-
-
- using CompositeAlphaFlagsKHR = Flags<CompositeAlphaFlagBitsKHR>;
-
- template <> struct FlagTraits<CompositeAlphaFlagBitsKHR>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(CompositeAlphaFlagBitsKHR::eOpaque) | VkFlags(CompositeAlphaFlagBitsKHR::ePreMultiplied) | VkFlags(CompositeAlphaFlagBitsKHR::ePostMultiplied) | VkFlags(CompositeAlphaFlagBitsKHR::eInherit)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CompositeAlphaFlagsKHR operator|( CompositeAlphaFlagBitsKHR bit0, CompositeAlphaFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return CompositeAlphaFlagsKHR( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CompositeAlphaFlagsKHR operator&( CompositeAlphaFlagBitsKHR bit0, CompositeAlphaFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return CompositeAlphaFlagsKHR( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CompositeAlphaFlagsKHR operator^( CompositeAlphaFlagBitsKHR bit0, CompositeAlphaFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return CompositeAlphaFlagsKHR( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CompositeAlphaFlagsKHR operator~( CompositeAlphaFlagBitsKHR bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( CompositeAlphaFlagsKHR( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( CompositeAlphaFlagsKHR value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & CompositeAlphaFlagBitsKHR::eOpaque ) result += "Opaque | ";
- if ( value & CompositeAlphaFlagBitsKHR::ePreMultiplied ) result += "PreMultiplied | ";
- if ( value & CompositeAlphaFlagBitsKHR::ePostMultiplied ) result += "PostMultiplied | ";
- if ( value & CompositeAlphaFlagBitsKHR::eInherit ) result += "Inherit | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-
- using ConditionalRenderingFlagsEXT = Flags<ConditionalRenderingFlagBitsEXT>;
-
- template <> struct FlagTraits<ConditionalRenderingFlagBitsEXT>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(ConditionalRenderingFlagBitsEXT::eInverted)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ConditionalRenderingFlagsEXT operator|( ConditionalRenderingFlagBitsEXT bit0, ConditionalRenderingFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return ConditionalRenderingFlagsEXT( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ConditionalRenderingFlagsEXT operator&( ConditionalRenderingFlagBitsEXT bit0, ConditionalRenderingFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return ConditionalRenderingFlagsEXT( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ConditionalRenderingFlagsEXT operator^( ConditionalRenderingFlagBitsEXT bit0, ConditionalRenderingFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return ConditionalRenderingFlagsEXT( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ConditionalRenderingFlagsEXT operator~( ConditionalRenderingFlagBitsEXT bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( ConditionalRenderingFlagsEXT( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( ConditionalRenderingFlagsEXT value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & ConditionalRenderingFlagBitsEXT::eInverted ) result += "Inverted | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-
- using CullModeFlags = Flags<CullModeFlagBits>;
-
- template <> struct FlagTraits<CullModeFlagBits>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(CullModeFlagBits::eNone) | VkFlags(CullModeFlagBits::eFront) | VkFlags(CullModeFlagBits::eBack) | VkFlags(CullModeFlagBits::eFrontAndBack)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CullModeFlags operator|( CullModeFlagBits bit0, CullModeFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return CullModeFlags( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CullModeFlags operator&( CullModeFlagBits bit0, CullModeFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return CullModeFlags( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CullModeFlags operator^( CullModeFlagBits bit0, CullModeFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return CullModeFlags( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CullModeFlags operator~( CullModeFlagBits bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( CullModeFlags( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( CullModeFlags value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & CullModeFlagBits::eFront ) result += "Front | ";
- if ( value & CullModeFlagBits::eBack ) result += "Back | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-
- using DebugReportFlagsEXT = Flags<DebugReportFlagBitsEXT>;
-
- template <> struct FlagTraits<DebugReportFlagBitsEXT>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(DebugReportFlagBitsEXT::eInformation) | VkFlags(DebugReportFlagBitsEXT::eWarning) | VkFlags(DebugReportFlagBitsEXT::ePerformanceWarning) | VkFlags(DebugReportFlagBitsEXT::eError) | VkFlags(DebugReportFlagBitsEXT::eDebug)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DebugReportFlagsEXT operator|( DebugReportFlagBitsEXT bit0, DebugReportFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return DebugReportFlagsEXT( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DebugReportFlagsEXT operator&( DebugReportFlagBitsEXT bit0, DebugReportFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return DebugReportFlagsEXT( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DebugReportFlagsEXT operator^( DebugReportFlagBitsEXT bit0, DebugReportFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return DebugReportFlagsEXT( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DebugReportFlagsEXT operator~( DebugReportFlagBitsEXT bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( DebugReportFlagsEXT( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( DebugReportFlagsEXT value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & DebugReportFlagBitsEXT::eInformation ) result += "Information | ";
- if ( value & DebugReportFlagBitsEXT::eWarning ) result += "Warning | ";
- if ( value & DebugReportFlagBitsEXT::ePerformanceWarning ) result += "PerformanceWarning | ";
- if ( value & DebugReportFlagBitsEXT::eError ) result += "Error | ";
- if ( value & DebugReportFlagBitsEXT::eDebug ) result += "Debug | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-
- using DebugUtilsMessageSeverityFlagsEXT = Flags<DebugUtilsMessageSeverityFlagBitsEXT>;
-
- template <> struct FlagTraits<DebugUtilsMessageSeverityFlagBitsEXT>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(DebugUtilsMessageSeverityFlagBitsEXT::eVerbose) | VkFlags(DebugUtilsMessageSeverityFlagBitsEXT::eInfo) | VkFlags(DebugUtilsMessageSeverityFlagBitsEXT::eWarning) | VkFlags(DebugUtilsMessageSeverityFlagBitsEXT::eError)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DebugUtilsMessageSeverityFlagsEXT operator|( DebugUtilsMessageSeverityFlagBitsEXT bit0, DebugUtilsMessageSeverityFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return DebugUtilsMessageSeverityFlagsEXT( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DebugUtilsMessageSeverityFlagsEXT operator&( DebugUtilsMessageSeverityFlagBitsEXT bit0, DebugUtilsMessageSeverityFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return DebugUtilsMessageSeverityFlagsEXT( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DebugUtilsMessageSeverityFlagsEXT operator^( DebugUtilsMessageSeverityFlagBitsEXT bit0, DebugUtilsMessageSeverityFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return DebugUtilsMessageSeverityFlagsEXT( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DebugUtilsMessageSeverityFlagsEXT operator~( DebugUtilsMessageSeverityFlagBitsEXT bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( DebugUtilsMessageSeverityFlagsEXT( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( DebugUtilsMessageSeverityFlagsEXT value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & DebugUtilsMessageSeverityFlagBitsEXT::eVerbose ) result += "Verbose | ";
- if ( value & DebugUtilsMessageSeverityFlagBitsEXT::eInfo ) result += "Info | ";
- if ( value & DebugUtilsMessageSeverityFlagBitsEXT::eWarning ) result += "Warning | ";
- if ( value & DebugUtilsMessageSeverityFlagBitsEXT::eError ) result += "Error | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-
- using DebugUtilsMessageTypeFlagsEXT = Flags<DebugUtilsMessageTypeFlagBitsEXT>;
-
- template <> struct FlagTraits<DebugUtilsMessageTypeFlagBitsEXT>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(DebugUtilsMessageTypeFlagBitsEXT::eGeneral) | VkFlags(DebugUtilsMessageTypeFlagBitsEXT::eValidation) | VkFlags(DebugUtilsMessageTypeFlagBitsEXT::ePerformance)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DebugUtilsMessageTypeFlagsEXT operator|( DebugUtilsMessageTypeFlagBitsEXT bit0, DebugUtilsMessageTypeFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return DebugUtilsMessageTypeFlagsEXT( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DebugUtilsMessageTypeFlagsEXT operator&( DebugUtilsMessageTypeFlagBitsEXT bit0, DebugUtilsMessageTypeFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return DebugUtilsMessageTypeFlagsEXT( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DebugUtilsMessageTypeFlagsEXT operator^( DebugUtilsMessageTypeFlagBitsEXT bit0, DebugUtilsMessageTypeFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return DebugUtilsMessageTypeFlagsEXT( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DebugUtilsMessageTypeFlagsEXT operator~( DebugUtilsMessageTypeFlagBitsEXT bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( DebugUtilsMessageTypeFlagsEXT( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( DebugUtilsMessageTypeFlagsEXT value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & DebugUtilsMessageTypeFlagBitsEXT::eGeneral ) result += "General | ";
- if ( value & DebugUtilsMessageTypeFlagBitsEXT::eValidation ) result += "Validation | ";
- if ( value & DebugUtilsMessageTypeFlagBitsEXT::ePerformance ) result += "Performance | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
- enum class DebugUtilsMessengerCallbackDataFlagBitsEXT : VkFlags
- {};
-
- VULKAN_HPP_INLINE std::string to_string( DebugUtilsMessengerCallbackDataFlagBitsEXT )
- {
- return "(void)";
- }
-
- using DebugUtilsMessengerCallbackDataFlagsEXT = Flags<DebugUtilsMessengerCallbackDataFlagBitsEXT>;
-
- VULKAN_HPP_INLINE std::string to_string( DebugUtilsMessengerCallbackDataFlagsEXT )
- {
-
- return "{}";
- }
-
- enum class DebugUtilsMessengerCreateFlagBitsEXT : VkFlags
- {};
-
- VULKAN_HPP_INLINE std::string to_string( DebugUtilsMessengerCreateFlagBitsEXT )
- {
- return "(void)";
- }
-
- using DebugUtilsMessengerCreateFlagsEXT = Flags<DebugUtilsMessengerCreateFlagBitsEXT>;
-
- VULKAN_HPP_INLINE std::string to_string( DebugUtilsMessengerCreateFlagsEXT )
- {
-
- return "{}";
- }
-
-
- using DependencyFlags = Flags<DependencyFlagBits>;
-
- template <> struct FlagTraits<DependencyFlagBits>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(DependencyFlagBits::eByRegion) | VkFlags(DependencyFlagBits::eDeviceGroup) | VkFlags(DependencyFlagBits::eViewLocal)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DependencyFlags operator|( DependencyFlagBits bit0, DependencyFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return DependencyFlags( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DependencyFlags operator&( DependencyFlagBits bit0, DependencyFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return DependencyFlags( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DependencyFlags operator^( DependencyFlagBits bit0, DependencyFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return DependencyFlags( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DependencyFlags operator~( DependencyFlagBits bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( DependencyFlags( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( DependencyFlags value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & DependencyFlagBits::eByRegion ) result += "ByRegion | ";
- if ( value & DependencyFlagBits::eDeviceGroup ) result += "DeviceGroup | ";
- if ( value & DependencyFlagBits::eViewLocal ) result += "ViewLocal | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-
- using DescriptorBindingFlags = Flags<DescriptorBindingFlagBits>;
-
- template <> struct FlagTraits<DescriptorBindingFlagBits>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(DescriptorBindingFlagBits::eUpdateAfterBind) | VkFlags(DescriptorBindingFlagBits::eUpdateUnusedWhilePending) | VkFlags(DescriptorBindingFlagBits::ePartiallyBound) | VkFlags(DescriptorBindingFlagBits::eVariableDescriptorCount)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DescriptorBindingFlags operator|( DescriptorBindingFlagBits bit0, DescriptorBindingFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return DescriptorBindingFlags( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DescriptorBindingFlags operator&( DescriptorBindingFlagBits bit0, DescriptorBindingFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return DescriptorBindingFlags( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DescriptorBindingFlags operator^( DescriptorBindingFlagBits bit0, DescriptorBindingFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return DescriptorBindingFlags( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DescriptorBindingFlags operator~( DescriptorBindingFlagBits bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( DescriptorBindingFlags( bits ) );
- }
-
- using DescriptorBindingFlagsEXT = DescriptorBindingFlags;
-
- VULKAN_HPP_INLINE std::string to_string( DescriptorBindingFlags value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & DescriptorBindingFlagBits::eUpdateAfterBind ) result += "UpdateAfterBind | ";
- if ( value & DescriptorBindingFlagBits::eUpdateUnusedWhilePending ) result += "UpdateUnusedWhilePending | ";
- if ( value & DescriptorBindingFlagBits::ePartiallyBound ) result += "PartiallyBound | ";
- if ( value & DescriptorBindingFlagBits::eVariableDescriptorCount ) result += "VariableDescriptorCount | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-
- using DescriptorPoolCreateFlags = Flags<DescriptorPoolCreateFlagBits>;
-
- template <> struct FlagTraits<DescriptorPoolCreateFlagBits>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(DescriptorPoolCreateFlagBits::eFreeDescriptorSet) | VkFlags(DescriptorPoolCreateFlagBits::eUpdateAfterBind)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DescriptorPoolCreateFlags operator|( DescriptorPoolCreateFlagBits bit0, DescriptorPoolCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return DescriptorPoolCreateFlags( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DescriptorPoolCreateFlags operator&( DescriptorPoolCreateFlagBits bit0, DescriptorPoolCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return DescriptorPoolCreateFlags( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DescriptorPoolCreateFlags operator^( DescriptorPoolCreateFlagBits bit0, DescriptorPoolCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return DescriptorPoolCreateFlags( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DescriptorPoolCreateFlags operator~( DescriptorPoolCreateFlagBits bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( DescriptorPoolCreateFlags( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( DescriptorPoolCreateFlags value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & DescriptorPoolCreateFlagBits::eFreeDescriptorSet ) result += "FreeDescriptorSet | ";
- if ( value & DescriptorPoolCreateFlagBits::eUpdateAfterBind ) result += "UpdateAfterBind | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
- enum class DescriptorPoolResetFlagBits : VkFlags
- {};
-
- VULKAN_HPP_INLINE std::string to_string( DescriptorPoolResetFlagBits )
- {
- return "(void)";
- }
-
- using DescriptorPoolResetFlags = Flags<DescriptorPoolResetFlagBits>;
-
- VULKAN_HPP_INLINE std::string to_string( DescriptorPoolResetFlags )
- {
-
- return "{}";
- }
-
-
- using DescriptorSetLayoutCreateFlags = Flags<DescriptorSetLayoutCreateFlagBits>;
-
- template <> struct FlagTraits<DescriptorSetLayoutCreateFlagBits>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(DescriptorSetLayoutCreateFlagBits::eUpdateAfterBindPool) | VkFlags(DescriptorSetLayoutCreateFlagBits::ePushDescriptorKHR)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DescriptorSetLayoutCreateFlags operator|( DescriptorSetLayoutCreateFlagBits bit0, DescriptorSetLayoutCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return DescriptorSetLayoutCreateFlags( bit0 ) | bit1;
- }
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DescriptorSetLayoutCreateFlags operator&( DescriptorSetLayoutCreateFlagBits bit0, DescriptorSetLayoutCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return DescriptorSetLayoutCreateFlags( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DescriptorSetLayoutCreateFlags operator^( DescriptorSetLayoutCreateFlagBits bit0, DescriptorSetLayoutCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return DescriptorSetLayoutCreateFlags( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DescriptorSetLayoutCreateFlags operator~( DescriptorSetLayoutCreateFlagBits bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( DescriptorSetLayoutCreateFlags( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( DescriptorSetLayoutCreateFlags value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & DescriptorSetLayoutCreateFlagBits::eUpdateAfterBindPool ) result += "UpdateAfterBindPool | ";
- if ( value & DescriptorSetLayoutCreateFlagBits::ePushDescriptorKHR ) result += "PushDescriptorKHR | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
- enum class DescriptorUpdateTemplateCreateFlagBits : VkFlags
- {};
-
- VULKAN_HPP_INLINE std::string to_string( DescriptorUpdateTemplateCreateFlagBits )
- {
- return "(void)";
- }
-
- using DescriptorUpdateTemplateCreateFlags = Flags<DescriptorUpdateTemplateCreateFlagBits>;
-
- using DescriptorUpdateTemplateCreateFlagsKHR = DescriptorUpdateTemplateCreateFlags;
-
- VULKAN_HPP_INLINE std::string to_string( DescriptorUpdateTemplateCreateFlags )
- {
-
- return "{}";
- }
-
-
- using DeviceCreateFlags = Flags<DeviceCreateFlagBits>;
-
- VULKAN_HPP_INLINE std::string to_string( DeviceCreateFlags )
- {
-
- return "{}";
- }
-
-
- using DeviceDiagnosticsConfigFlagsNV = Flags<DeviceDiagnosticsConfigFlagBitsNV>;
-
- template <> struct FlagTraits<DeviceDiagnosticsConfigFlagBitsNV>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(DeviceDiagnosticsConfigFlagBitsNV::eEnableShaderDebugInfo) | VkFlags(DeviceDiagnosticsConfigFlagBitsNV::eEnableResourceTracking) | VkFlags(DeviceDiagnosticsConfigFlagBitsNV::eEnableAutomaticCheckpoints)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DeviceDiagnosticsConfigFlagsNV operator|( DeviceDiagnosticsConfigFlagBitsNV bit0, DeviceDiagnosticsConfigFlagBitsNV bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return DeviceDiagnosticsConfigFlagsNV( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DeviceDiagnosticsConfigFlagsNV operator&( DeviceDiagnosticsConfigFlagBitsNV bit0, DeviceDiagnosticsConfigFlagBitsNV bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return DeviceDiagnosticsConfigFlagsNV( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DeviceDiagnosticsConfigFlagsNV operator^( DeviceDiagnosticsConfigFlagBitsNV bit0, DeviceDiagnosticsConfigFlagBitsNV bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return DeviceDiagnosticsConfigFlagsNV( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DeviceDiagnosticsConfigFlagsNV operator~( DeviceDiagnosticsConfigFlagBitsNV bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( DeviceDiagnosticsConfigFlagsNV( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( DeviceDiagnosticsConfigFlagsNV value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & DeviceDiagnosticsConfigFlagBitsNV::eEnableShaderDebugInfo ) result += "EnableShaderDebugInfo | ";
- if ( value & DeviceDiagnosticsConfigFlagBitsNV::eEnableResourceTracking ) result += "EnableResourceTracking | ";
- if ( value & DeviceDiagnosticsConfigFlagBitsNV::eEnableAutomaticCheckpoints ) result += "EnableAutomaticCheckpoints | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-
- using DeviceGroupPresentModeFlagsKHR = Flags<DeviceGroupPresentModeFlagBitsKHR>;
-
- template <> struct FlagTraits<DeviceGroupPresentModeFlagBitsKHR>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(DeviceGroupPresentModeFlagBitsKHR::eLocal) | VkFlags(DeviceGroupPresentModeFlagBitsKHR::eRemote) | VkFlags(DeviceGroupPresentModeFlagBitsKHR::eSum) | VkFlags(DeviceGroupPresentModeFlagBitsKHR::eLocalMultiDevice)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DeviceGroupPresentModeFlagsKHR operator|( DeviceGroupPresentModeFlagBitsKHR bit0, DeviceGroupPresentModeFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return DeviceGroupPresentModeFlagsKHR( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DeviceGroupPresentModeFlagsKHR operator&( DeviceGroupPresentModeFlagBitsKHR bit0, DeviceGroupPresentModeFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return DeviceGroupPresentModeFlagsKHR( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DeviceGroupPresentModeFlagsKHR operator^( DeviceGroupPresentModeFlagBitsKHR bit0, DeviceGroupPresentModeFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return DeviceGroupPresentModeFlagsKHR( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DeviceGroupPresentModeFlagsKHR operator~( DeviceGroupPresentModeFlagBitsKHR bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( DeviceGroupPresentModeFlagsKHR( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( DeviceGroupPresentModeFlagsKHR value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & DeviceGroupPresentModeFlagBitsKHR::eLocal ) result += "Local | ";
- if ( value & DeviceGroupPresentModeFlagBitsKHR::eRemote ) result += "Remote | ";
- if ( value & DeviceGroupPresentModeFlagBitsKHR::eSum ) result += "Sum | ";
- if ( value & DeviceGroupPresentModeFlagBitsKHR::eLocalMultiDevice ) result += "LocalMultiDevice | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
- enum class DeviceMemoryReportFlagBitsEXT : VkFlags
- {};
-
- VULKAN_HPP_INLINE std::string to_string( DeviceMemoryReportFlagBitsEXT )
- {
- return "(void)";
- }
-
- using DeviceMemoryReportFlagsEXT = Flags<DeviceMemoryReportFlagBitsEXT>;
-
- VULKAN_HPP_INLINE std::string to_string( DeviceMemoryReportFlagsEXT )
- {
-
- return "{}";
- }
-
-
- using DeviceQueueCreateFlags = Flags<DeviceQueueCreateFlagBits>;
-
- template <> struct FlagTraits<DeviceQueueCreateFlagBits>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(DeviceQueueCreateFlagBits::eProtected)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DeviceQueueCreateFlags operator|( DeviceQueueCreateFlagBits bit0, DeviceQueueCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return DeviceQueueCreateFlags( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DeviceQueueCreateFlags operator&( DeviceQueueCreateFlagBits bit0, DeviceQueueCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return DeviceQueueCreateFlags( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DeviceQueueCreateFlags operator^( DeviceQueueCreateFlagBits bit0, DeviceQueueCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return DeviceQueueCreateFlags( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DeviceQueueCreateFlags operator~( DeviceQueueCreateFlagBits bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( DeviceQueueCreateFlags( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( DeviceQueueCreateFlags value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & DeviceQueueCreateFlagBits::eProtected ) result += "Protected | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-#ifdef VK_USE_PLATFORM_DIRECTFB_EXT
- enum class DirectFBSurfaceCreateFlagBitsEXT : VkFlags
- {};
-
- VULKAN_HPP_INLINE std::string to_string( DirectFBSurfaceCreateFlagBitsEXT )
- {
- return "(void)";
- }
-
- using DirectFBSurfaceCreateFlagsEXT = Flags<DirectFBSurfaceCreateFlagBitsEXT>;
-
- VULKAN_HPP_INLINE std::string to_string( DirectFBSurfaceCreateFlagsEXT )
- {
-
- return "{}";
- }
-#endif /*VK_USE_PLATFORM_DIRECTFB_EXT*/
-
- enum class DisplayModeCreateFlagBitsKHR : VkFlags
- {};
-
- VULKAN_HPP_INLINE std::string to_string( DisplayModeCreateFlagBitsKHR )
- {
- return "(void)";
- }
-
- using DisplayModeCreateFlagsKHR = Flags<DisplayModeCreateFlagBitsKHR>;
-
- VULKAN_HPP_INLINE std::string to_string( DisplayModeCreateFlagsKHR )
- {
-
- return "{}";
- }
-
-
- using DisplayPlaneAlphaFlagsKHR = Flags<DisplayPlaneAlphaFlagBitsKHR>;
-
- template <> struct FlagTraits<DisplayPlaneAlphaFlagBitsKHR>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(DisplayPlaneAlphaFlagBitsKHR::eOpaque) | VkFlags(DisplayPlaneAlphaFlagBitsKHR::eGlobal) | VkFlags(DisplayPlaneAlphaFlagBitsKHR::ePerPixel) | VkFlags(DisplayPlaneAlphaFlagBitsKHR::ePerPixelPremultiplied)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DisplayPlaneAlphaFlagsKHR operator|( DisplayPlaneAlphaFlagBitsKHR bit0, DisplayPlaneAlphaFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return DisplayPlaneAlphaFlagsKHR( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DisplayPlaneAlphaFlagsKHR operator&( DisplayPlaneAlphaFlagBitsKHR bit0, DisplayPlaneAlphaFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return DisplayPlaneAlphaFlagsKHR( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DisplayPlaneAlphaFlagsKHR operator^( DisplayPlaneAlphaFlagBitsKHR bit0, DisplayPlaneAlphaFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return DisplayPlaneAlphaFlagsKHR( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DisplayPlaneAlphaFlagsKHR operator~( DisplayPlaneAlphaFlagBitsKHR bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( DisplayPlaneAlphaFlagsKHR( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( DisplayPlaneAlphaFlagsKHR value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & DisplayPlaneAlphaFlagBitsKHR::eOpaque ) result += "Opaque | ";
- if ( value & DisplayPlaneAlphaFlagBitsKHR::eGlobal ) result += "Global | ";
- if ( value & DisplayPlaneAlphaFlagBitsKHR::ePerPixel ) result += "PerPixel | ";
- if ( value & DisplayPlaneAlphaFlagBitsKHR::ePerPixelPremultiplied ) result += "PerPixelPremultiplied | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
- enum class DisplaySurfaceCreateFlagBitsKHR : VkFlags
- {};
-
- VULKAN_HPP_INLINE std::string to_string( DisplaySurfaceCreateFlagBitsKHR )
- {
- return "(void)";
- }
-
- using DisplaySurfaceCreateFlagsKHR = Flags<DisplaySurfaceCreateFlagBitsKHR>;
-
- VULKAN_HPP_INLINE std::string to_string( DisplaySurfaceCreateFlagsKHR )
- {
-
- return "{}";
- }
-
- enum class EventCreateFlagBits : VkFlags
- {};
-
- VULKAN_HPP_INLINE std::string to_string( EventCreateFlagBits )
- {
- return "(void)";
- }
-
- using EventCreateFlags = Flags<EventCreateFlagBits>;
-
- VULKAN_HPP_INLINE std::string to_string( EventCreateFlags )
- {
-
- return "{}";
- }
-
-
- using ExternalFenceFeatureFlags = Flags<ExternalFenceFeatureFlagBits>;
-
- template <> struct FlagTraits<ExternalFenceFeatureFlagBits>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(ExternalFenceFeatureFlagBits::eExportable) | VkFlags(ExternalFenceFeatureFlagBits::eImportable)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalFenceFeatureFlags operator|( ExternalFenceFeatureFlagBits bit0, ExternalFenceFeatureFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return ExternalFenceFeatureFlags( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalFenceFeatureFlags operator&( ExternalFenceFeatureFlagBits bit0, ExternalFenceFeatureFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return ExternalFenceFeatureFlags( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalFenceFeatureFlags operator^( ExternalFenceFeatureFlagBits bit0, ExternalFenceFeatureFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return ExternalFenceFeatureFlags( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalFenceFeatureFlags operator~( ExternalFenceFeatureFlagBits bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( ExternalFenceFeatureFlags( bits ) );
- }
-
- using ExternalFenceFeatureFlagsKHR = ExternalFenceFeatureFlags;
-
- VULKAN_HPP_INLINE std::string to_string( ExternalFenceFeatureFlags value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & ExternalFenceFeatureFlagBits::eExportable ) result += "Exportable | ";
- if ( value & ExternalFenceFeatureFlagBits::eImportable ) result += "Importable | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-
- using ExternalFenceHandleTypeFlags = Flags<ExternalFenceHandleTypeFlagBits>;
-
- template <> struct FlagTraits<ExternalFenceHandleTypeFlagBits>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(ExternalFenceHandleTypeFlagBits::eOpaqueFd) | VkFlags(ExternalFenceHandleTypeFlagBits::eOpaqueWin32) | VkFlags(ExternalFenceHandleTypeFlagBits::eOpaqueWin32Kmt) | VkFlags(ExternalFenceHandleTypeFlagBits::eSyncFd)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalFenceHandleTypeFlags operator|( ExternalFenceHandleTypeFlagBits bit0, ExternalFenceHandleTypeFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return ExternalFenceHandleTypeFlags( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalFenceHandleTypeFlags operator&( ExternalFenceHandleTypeFlagBits bit0, ExternalFenceHandleTypeFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return ExternalFenceHandleTypeFlags( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalFenceHandleTypeFlags operator^( ExternalFenceHandleTypeFlagBits bit0, ExternalFenceHandleTypeFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return ExternalFenceHandleTypeFlags( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalFenceHandleTypeFlags operator~( ExternalFenceHandleTypeFlagBits bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( ExternalFenceHandleTypeFlags( bits ) );
- }
-
- using ExternalFenceHandleTypeFlagsKHR = ExternalFenceHandleTypeFlags;
-
- VULKAN_HPP_INLINE std::string to_string( ExternalFenceHandleTypeFlags value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & ExternalFenceHandleTypeFlagBits::eOpaqueFd ) result += "OpaqueFd | ";
- if ( value & ExternalFenceHandleTypeFlagBits::eOpaqueWin32 ) result += "OpaqueWin32 | ";
- if ( value & ExternalFenceHandleTypeFlagBits::eOpaqueWin32Kmt ) result += "OpaqueWin32Kmt | ";
- if ( value & ExternalFenceHandleTypeFlagBits::eSyncFd ) result += "SyncFd | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-
- using ExternalMemoryFeatureFlags = Flags<ExternalMemoryFeatureFlagBits>;
-
- template <> struct FlagTraits<ExternalMemoryFeatureFlagBits>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(ExternalMemoryFeatureFlagBits::eDedicatedOnly) | VkFlags(ExternalMemoryFeatureFlagBits::eExportable) | VkFlags(ExternalMemoryFeatureFlagBits::eImportable)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalMemoryFeatureFlags operator|( ExternalMemoryFeatureFlagBits bit0, ExternalMemoryFeatureFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return ExternalMemoryFeatureFlags( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalMemoryFeatureFlags operator&( ExternalMemoryFeatureFlagBits bit0, ExternalMemoryFeatureFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return ExternalMemoryFeatureFlags( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalMemoryFeatureFlags operator^( ExternalMemoryFeatureFlagBits bit0, ExternalMemoryFeatureFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return ExternalMemoryFeatureFlags( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalMemoryFeatureFlags operator~( ExternalMemoryFeatureFlagBits bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( ExternalMemoryFeatureFlags( bits ) );
- }
-
- using ExternalMemoryFeatureFlagsKHR = ExternalMemoryFeatureFlags;
-
- VULKAN_HPP_INLINE std::string to_string( ExternalMemoryFeatureFlags value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & ExternalMemoryFeatureFlagBits::eDedicatedOnly ) result += "DedicatedOnly | ";
- if ( value & ExternalMemoryFeatureFlagBits::eExportable ) result += "Exportable | ";
- if ( value & ExternalMemoryFeatureFlagBits::eImportable ) result += "Importable | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-
- using ExternalMemoryFeatureFlagsNV = Flags<ExternalMemoryFeatureFlagBitsNV>;
-
- template <> struct FlagTraits<ExternalMemoryFeatureFlagBitsNV>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(ExternalMemoryFeatureFlagBitsNV::eDedicatedOnly) | VkFlags(ExternalMemoryFeatureFlagBitsNV::eExportable) | VkFlags(ExternalMemoryFeatureFlagBitsNV::eImportable)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalMemoryFeatureFlagsNV operator|( ExternalMemoryFeatureFlagBitsNV bit0, ExternalMemoryFeatureFlagBitsNV bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return ExternalMemoryFeatureFlagsNV( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalMemoryFeatureFlagsNV operator&( ExternalMemoryFeatureFlagBitsNV bit0, ExternalMemoryFeatureFlagBitsNV bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return ExternalMemoryFeatureFlagsNV( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalMemoryFeatureFlagsNV operator^( ExternalMemoryFeatureFlagBitsNV bit0, ExternalMemoryFeatureFlagBitsNV bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return ExternalMemoryFeatureFlagsNV( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalMemoryFeatureFlagsNV operator~( ExternalMemoryFeatureFlagBitsNV bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( ExternalMemoryFeatureFlagsNV( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( ExternalMemoryFeatureFlagsNV value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & ExternalMemoryFeatureFlagBitsNV::eDedicatedOnly ) result += "DedicatedOnly | ";
- if ( value & ExternalMemoryFeatureFlagBitsNV::eExportable ) result += "Exportable | ";
- if ( value & ExternalMemoryFeatureFlagBitsNV::eImportable ) result += "Importable | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-
- using ExternalMemoryHandleTypeFlags = Flags<ExternalMemoryHandleTypeFlagBits>;
-
- template <> struct FlagTraits<ExternalMemoryHandleTypeFlagBits>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(ExternalMemoryHandleTypeFlagBits::eOpaqueFd) | VkFlags(ExternalMemoryHandleTypeFlagBits::eOpaqueWin32) | VkFlags(ExternalMemoryHandleTypeFlagBits::eOpaqueWin32Kmt) | VkFlags(ExternalMemoryHandleTypeFlagBits::eD3D11Texture) | VkFlags(ExternalMemoryHandleTypeFlagBits::eD3D11TextureKmt) | VkFlags(ExternalMemoryHandleTypeFlagBits::eD3D12Heap) | VkFlags(ExternalMemoryHandleTypeFlagBits::eD3D12Resource) | VkFlags(ExternalMemoryHandleTypeFlagBits::eDmaBufEXT) | VkFlags(ExternalMemoryHandleTypeFlagBits::eAndroidHardwareBufferANDROID) | VkFlags(ExternalMemoryHandleTypeFlagBits::eHostAllocationEXT) | VkFlags(ExternalMemoryHandleTypeFlagBits::eHostMappedForeignMemoryEXT)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalMemoryHandleTypeFlags operator|( ExternalMemoryHandleTypeFlagBits bit0, ExternalMemoryHandleTypeFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return ExternalMemoryHandleTypeFlags( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalMemoryHandleTypeFlags operator&( ExternalMemoryHandleTypeFlagBits bit0, ExternalMemoryHandleTypeFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return ExternalMemoryHandleTypeFlags( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalMemoryHandleTypeFlags operator^( ExternalMemoryHandleTypeFlagBits bit0, ExternalMemoryHandleTypeFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return ExternalMemoryHandleTypeFlags( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalMemoryHandleTypeFlags operator~( ExternalMemoryHandleTypeFlagBits bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( ExternalMemoryHandleTypeFlags( bits ) );
- }
-
- using ExternalMemoryHandleTypeFlagsKHR = ExternalMemoryHandleTypeFlags;
-
- VULKAN_HPP_INLINE std::string to_string( ExternalMemoryHandleTypeFlags value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & ExternalMemoryHandleTypeFlagBits::eOpaqueFd ) result += "OpaqueFd | ";
- if ( value & ExternalMemoryHandleTypeFlagBits::eOpaqueWin32 ) result += "OpaqueWin32 | ";
- if ( value & ExternalMemoryHandleTypeFlagBits::eOpaqueWin32Kmt ) result += "OpaqueWin32Kmt | ";
- if ( value & ExternalMemoryHandleTypeFlagBits::eD3D11Texture ) result += "D3D11Texture | ";
- if ( value & ExternalMemoryHandleTypeFlagBits::eD3D11TextureKmt ) result += "D3D11TextureKmt | ";
- if ( value & ExternalMemoryHandleTypeFlagBits::eD3D12Heap ) result += "D3D12Heap | ";
- if ( value & ExternalMemoryHandleTypeFlagBits::eD3D12Resource ) result += "D3D12Resource | ";
- if ( value & ExternalMemoryHandleTypeFlagBits::eDmaBufEXT ) result += "DmaBufEXT | ";
- if ( value & ExternalMemoryHandleTypeFlagBits::eAndroidHardwareBufferANDROID ) result += "AndroidHardwareBufferANDROID | ";
- if ( value & ExternalMemoryHandleTypeFlagBits::eHostAllocationEXT ) result += "HostAllocationEXT | ";
- if ( value & ExternalMemoryHandleTypeFlagBits::eHostMappedForeignMemoryEXT ) result += "HostMappedForeignMemoryEXT | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-
- using ExternalMemoryHandleTypeFlagsNV = Flags<ExternalMemoryHandleTypeFlagBitsNV>;
-
- template <> struct FlagTraits<ExternalMemoryHandleTypeFlagBitsNV>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(ExternalMemoryHandleTypeFlagBitsNV::eOpaqueWin32) | VkFlags(ExternalMemoryHandleTypeFlagBitsNV::eOpaqueWin32Kmt) | VkFlags(ExternalMemoryHandleTypeFlagBitsNV::eD3D11Image) | VkFlags(ExternalMemoryHandleTypeFlagBitsNV::eD3D11ImageKmt)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalMemoryHandleTypeFlagsNV operator|( ExternalMemoryHandleTypeFlagBitsNV bit0, ExternalMemoryHandleTypeFlagBitsNV bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return ExternalMemoryHandleTypeFlagsNV( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalMemoryHandleTypeFlagsNV operator&( ExternalMemoryHandleTypeFlagBitsNV bit0, ExternalMemoryHandleTypeFlagBitsNV bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return ExternalMemoryHandleTypeFlagsNV( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalMemoryHandleTypeFlagsNV operator^( ExternalMemoryHandleTypeFlagBitsNV bit0, ExternalMemoryHandleTypeFlagBitsNV bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return ExternalMemoryHandleTypeFlagsNV( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalMemoryHandleTypeFlagsNV operator~( ExternalMemoryHandleTypeFlagBitsNV bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( ExternalMemoryHandleTypeFlagsNV( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( ExternalMemoryHandleTypeFlagsNV value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & ExternalMemoryHandleTypeFlagBitsNV::eOpaqueWin32 ) result += "OpaqueWin32 | ";
- if ( value & ExternalMemoryHandleTypeFlagBitsNV::eOpaqueWin32Kmt ) result += "OpaqueWin32Kmt | ";
- if ( value & ExternalMemoryHandleTypeFlagBitsNV::eD3D11Image ) result += "D3D11Image | ";
- if ( value & ExternalMemoryHandleTypeFlagBitsNV::eD3D11ImageKmt ) result += "D3D11ImageKmt | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-
- using ExternalSemaphoreFeatureFlags = Flags<ExternalSemaphoreFeatureFlagBits>;
-
- template <> struct FlagTraits<ExternalSemaphoreFeatureFlagBits>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(ExternalSemaphoreFeatureFlagBits::eExportable) | VkFlags(ExternalSemaphoreFeatureFlagBits::eImportable)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalSemaphoreFeatureFlags operator|( ExternalSemaphoreFeatureFlagBits bit0, ExternalSemaphoreFeatureFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return ExternalSemaphoreFeatureFlags( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalSemaphoreFeatureFlags operator&( ExternalSemaphoreFeatureFlagBits bit0, ExternalSemaphoreFeatureFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return ExternalSemaphoreFeatureFlags( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalSemaphoreFeatureFlags operator^( ExternalSemaphoreFeatureFlagBits bit0, ExternalSemaphoreFeatureFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return ExternalSemaphoreFeatureFlags( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalSemaphoreFeatureFlags operator~( ExternalSemaphoreFeatureFlagBits bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( ExternalSemaphoreFeatureFlags( bits ) );
- }
-
- using ExternalSemaphoreFeatureFlagsKHR = ExternalSemaphoreFeatureFlags;
-
- VULKAN_HPP_INLINE std::string to_string( ExternalSemaphoreFeatureFlags value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & ExternalSemaphoreFeatureFlagBits::eExportable ) result += "Exportable | ";
- if ( value & ExternalSemaphoreFeatureFlagBits::eImportable ) result += "Importable | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-
- using ExternalSemaphoreHandleTypeFlags = Flags<ExternalSemaphoreHandleTypeFlagBits>;
-
- template <> struct FlagTraits<ExternalSemaphoreHandleTypeFlagBits>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(ExternalSemaphoreHandleTypeFlagBits::eOpaqueFd) | VkFlags(ExternalSemaphoreHandleTypeFlagBits::eOpaqueWin32) | VkFlags(ExternalSemaphoreHandleTypeFlagBits::eOpaqueWin32Kmt) | VkFlags(ExternalSemaphoreHandleTypeFlagBits::eD3D12Fence) | VkFlags(ExternalSemaphoreHandleTypeFlagBits::eSyncFd)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalSemaphoreHandleTypeFlags operator|( ExternalSemaphoreHandleTypeFlagBits bit0, ExternalSemaphoreHandleTypeFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return ExternalSemaphoreHandleTypeFlags( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalSemaphoreHandleTypeFlags operator&( ExternalSemaphoreHandleTypeFlagBits bit0, ExternalSemaphoreHandleTypeFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return ExternalSemaphoreHandleTypeFlags( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalSemaphoreHandleTypeFlags operator^( ExternalSemaphoreHandleTypeFlagBits bit0, ExternalSemaphoreHandleTypeFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return ExternalSemaphoreHandleTypeFlags( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalSemaphoreHandleTypeFlags operator~( ExternalSemaphoreHandleTypeFlagBits bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( ExternalSemaphoreHandleTypeFlags( bits ) );
- }
-
- using ExternalSemaphoreHandleTypeFlagsKHR = ExternalSemaphoreHandleTypeFlags;
-
- VULKAN_HPP_INLINE std::string to_string( ExternalSemaphoreHandleTypeFlags value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & ExternalSemaphoreHandleTypeFlagBits::eOpaqueFd ) result += "OpaqueFd | ";
- if ( value & ExternalSemaphoreHandleTypeFlagBits::eOpaqueWin32 ) result += "OpaqueWin32 | ";
- if ( value & ExternalSemaphoreHandleTypeFlagBits::eOpaqueWin32Kmt ) result += "OpaqueWin32Kmt | ";
- if ( value & ExternalSemaphoreHandleTypeFlagBits::eD3D12Fence ) result += "D3D12Fence | ";
- if ( value & ExternalSemaphoreHandleTypeFlagBits::eSyncFd ) result += "SyncFd | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-
- using FenceCreateFlags = Flags<FenceCreateFlagBits>;
-
- template <> struct FlagTraits<FenceCreateFlagBits>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(FenceCreateFlagBits::eSignaled)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR FenceCreateFlags operator|( FenceCreateFlagBits bit0, FenceCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return FenceCreateFlags( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR FenceCreateFlags operator&( FenceCreateFlagBits bit0, FenceCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return FenceCreateFlags( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR FenceCreateFlags operator^( FenceCreateFlagBits bit0, FenceCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return FenceCreateFlags( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR FenceCreateFlags operator~( FenceCreateFlagBits bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( FenceCreateFlags( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( FenceCreateFlags value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & FenceCreateFlagBits::eSignaled ) result += "Signaled | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-
- using FenceImportFlags = Flags<FenceImportFlagBits>;
-
- template <> struct FlagTraits<FenceImportFlagBits>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(FenceImportFlagBits::eTemporary)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR FenceImportFlags operator|( FenceImportFlagBits bit0, FenceImportFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return FenceImportFlags( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR FenceImportFlags operator&( FenceImportFlagBits bit0, FenceImportFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return FenceImportFlags( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR FenceImportFlags operator^( FenceImportFlagBits bit0, FenceImportFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return FenceImportFlags( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR FenceImportFlags operator~( FenceImportFlagBits bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( FenceImportFlags( bits ) );
- }
-
- using FenceImportFlagsKHR = FenceImportFlags;
-
- VULKAN_HPP_INLINE std::string to_string( FenceImportFlags value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & FenceImportFlagBits::eTemporary ) result += "Temporary | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-
- using FormatFeatureFlags = Flags<FormatFeatureFlagBits>;
-
- template <> struct FlagTraits<FormatFeatureFlagBits>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(FormatFeatureFlagBits::eSampledImage) | VkFlags(FormatFeatureFlagBits::eStorageImage) | VkFlags(FormatFeatureFlagBits::eStorageImageAtomic) | VkFlags(FormatFeatureFlagBits::eUniformTexelBuffer) | VkFlags(FormatFeatureFlagBits::eStorageTexelBuffer) | VkFlags(FormatFeatureFlagBits::eStorageTexelBufferAtomic) | VkFlags(FormatFeatureFlagBits::eVertexBuffer) | VkFlags(FormatFeatureFlagBits::eColorAttachment) | VkFlags(FormatFeatureFlagBits::eColorAttachmentBlend) | VkFlags(FormatFeatureFlagBits::eDepthStencilAttachment) | VkFlags(FormatFeatureFlagBits::eBlitSrc) | VkFlags(FormatFeatureFlagBits::eBlitDst) | VkFlags(FormatFeatureFlagBits::eSampledImageFilterLinear) | VkFlags(FormatFeatureFlagBits::eTransferSrc) | VkFlags(FormatFeatureFlagBits::eTransferDst) | VkFlags(FormatFeatureFlagBits::eMidpointChromaSamples) | VkFlags(FormatFeatureFlagBits::eSampledImageYcbcrConversionLinearFilter) | VkFlags(FormatFeatureFlagBits::eSampledImageYcbcrConversionSeparateReconstructionFilter) | VkFlags(FormatFeatureFlagBits::eSampledImageYcbcrConversionChromaReconstructionExplicit) | VkFlags(FormatFeatureFlagBits::eSampledImageYcbcrConversionChromaReconstructionExplicitForceable) | VkFlags(FormatFeatureFlagBits::eDisjoint) | VkFlags(FormatFeatureFlagBits::eCositedChromaSamples) | VkFlags(FormatFeatureFlagBits::eSampledImageFilterMinmax) | VkFlags(FormatFeatureFlagBits::eSampledImageFilterCubicIMG) | VkFlags(FormatFeatureFlagBits::eAccelerationStructureVertexBufferKHR) | VkFlags(FormatFeatureFlagBits::eFragmentDensityMapEXT) | VkFlags(FormatFeatureFlagBits::eFragmentShadingRateAttachmentKHR)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR FormatFeatureFlags operator|( FormatFeatureFlagBits bit0, FormatFeatureFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return FormatFeatureFlags( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR FormatFeatureFlags operator&( FormatFeatureFlagBits bit0, FormatFeatureFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return FormatFeatureFlags( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR FormatFeatureFlags operator^( FormatFeatureFlagBits bit0, FormatFeatureFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return FormatFeatureFlags( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR FormatFeatureFlags operator~( FormatFeatureFlagBits bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( FormatFeatureFlags( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( FormatFeatureFlags value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & FormatFeatureFlagBits::eSampledImage ) result += "SampledImage | ";
- if ( value & FormatFeatureFlagBits::eStorageImage ) result += "StorageImage | ";
- if ( value & FormatFeatureFlagBits::eStorageImageAtomic ) result += "StorageImageAtomic | ";
- if ( value & FormatFeatureFlagBits::eUniformTexelBuffer ) result += "UniformTexelBuffer | ";
- if ( value & FormatFeatureFlagBits::eStorageTexelBuffer ) result += "StorageTexelBuffer | ";
- if ( value & FormatFeatureFlagBits::eStorageTexelBufferAtomic ) result += "StorageTexelBufferAtomic | ";
- if ( value & FormatFeatureFlagBits::eVertexBuffer ) result += "VertexBuffer | ";
- if ( value & FormatFeatureFlagBits::eColorAttachment ) result += "ColorAttachment | ";
- if ( value & FormatFeatureFlagBits::eColorAttachmentBlend ) result += "ColorAttachmentBlend | ";
- if ( value & FormatFeatureFlagBits::eDepthStencilAttachment ) result += "DepthStencilAttachment | ";
- if ( value & FormatFeatureFlagBits::eBlitSrc ) result += "BlitSrc | ";
- if ( value & FormatFeatureFlagBits::eBlitDst ) result += "BlitDst | ";
- if ( value & FormatFeatureFlagBits::eSampledImageFilterLinear ) result += "SampledImageFilterLinear | ";
- if ( value & FormatFeatureFlagBits::eTransferSrc ) result += "TransferSrc | ";
- if ( value & FormatFeatureFlagBits::eTransferDst ) result += "TransferDst | ";
- if ( value & FormatFeatureFlagBits::eMidpointChromaSamples ) result += "MidpointChromaSamples | ";
- if ( value & FormatFeatureFlagBits::eSampledImageYcbcrConversionLinearFilter ) result += "SampledImageYcbcrConversionLinearFilter | ";
- if ( value & FormatFeatureFlagBits::eSampledImageYcbcrConversionSeparateReconstructionFilter ) result += "SampledImageYcbcrConversionSeparateReconstructionFilter | ";
- if ( value & FormatFeatureFlagBits::eSampledImageYcbcrConversionChromaReconstructionExplicit ) result += "SampledImageYcbcrConversionChromaReconstructionExplicit | ";
- if ( value & FormatFeatureFlagBits::eSampledImageYcbcrConversionChromaReconstructionExplicitForceable ) result += "SampledImageYcbcrConversionChromaReconstructionExplicitForceable | ";
- if ( value & FormatFeatureFlagBits::eDisjoint ) result += "Disjoint | ";
- if ( value & FormatFeatureFlagBits::eCositedChromaSamples ) result += "CositedChromaSamples | ";
- if ( value & FormatFeatureFlagBits::eSampledImageFilterMinmax ) result += "SampledImageFilterMinmax | ";
- if ( value & FormatFeatureFlagBits::eSampledImageFilterCubicIMG ) result += "SampledImageFilterCubicIMG | ";
- if ( value & FormatFeatureFlagBits::eAccelerationStructureVertexBufferKHR ) result += "AccelerationStructureVertexBufferKHR | ";
- if ( value & FormatFeatureFlagBits::eFragmentDensityMapEXT ) result += "FragmentDensityMapEXT | ";
- if ( value & FormatFeatureFlagBits::eFragmentShadingRateAttachmentKHR ) result += "FragmentShadingRateAttachmentKHR | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-
- using FramebufferCreateFlags = Flags<FramebufferCreateFlagBits>;
-
- template <> struct FlagTraits<FramebufferCreateFlagBits>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(FramebufferCreateFlagBits::eImageless)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR FramebufferCreateFlags operator|( FramebufferCreateFlagBits bit0, FramebufferCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return FramebufferCreateFlags( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR FramebufferCreateFlags operator&( FramebufferCreateFlagBits bit0, FramebufferCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return FramebufferCreateFlags( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR FramebufferCreateFlags operator^( FramebufferCreateFlagBits bit0, FramebufferCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return FramebufferCreateFlags( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR FramebufferCreateFlags operator~( FramebufferCreateFlagBits bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( FramebufferCreateFlags( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( FramebufferCreateFlags value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & FramebufferCreateFlagBits::eImageless ) result += "Imageless | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-
- using GeometryFlagsKHR = Flags<GeometryFlagBitsKHR>;
-
- template <> struct FlagTraits<GeometryFlagBitsKHR>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(GeometryFlagBitsKHR::eOpaque) | VkFlags(GeometryFlagBitsKHR::eNoDuplicateAnyHitInvocation)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR GeometryFlagsKHR operator|( GeometryFlagBitsKHR bit0, GeometryFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return GeometryFlagsKHR( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR GeometryFlagsKHR operator&( GeometryFlagBitsKHR bit0, GeometryFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return GeometryFlagsKHR( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR GeometryFlagsKHR operator^( GeometryFlagBitsKHR bit0, GeometryFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return GeometryFlagsKHR( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR GeometryFlagsKHR operator~( GeometryFlagBitsKHR bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( GeometryFlagsKHR( bits ) );
- }
-
- using GeometryFlagsNV = GeometryFlagsKHR;
-
- VULKAN_HPP_INLINE std::string to_string( GeometryFlagsKHR value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & GeometryFlagBitsKHR::eOpaque ) result += "Opaque | ";
- if ( value & GeometryFlagBitsKHR::eNoDuplicateAnyHitInvocation ) result += "NoDuplicateAnyHitInvocation | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-
- using GeometryInstanceFlagsKHR = Flags<GeometryInstanceFlagBitsKHR>;
-
- template <> struct FlagTraits<GeometryInstanceFlagBitsKHR>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(GeometryInstanceFlagBitsKHR::eTriangleFacingCullDisable) | VkFlags(GeometryInstanceFlagBitsKHR::eTriangleFrontCounterclockwise) | VkFlags(GeometryInstanceFlagBitsKHR::eForceOpaque) | VkFlags(GeometryInstanceFlagBitsKHR::eForceNoOpaque)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR GeometryInstanceFlagsKHR operator|( GeometryInstanceFlagBitsKHR bit0, GeometryInstanceFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return GeometryInstanceFlagsKHR( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR GeometryInstanceFlagsKHR operator&( GeometryInstanceFlagBitsKHR bit0, GeometryInstanceFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return GeometryInstanceFlagsKHR( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR GeometryInstanceFlagsKHR operator^( GeometryInstanceFlagBitsKHR bit0, GeometryInstanceFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return GeometryInstanceFlagsKHR( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR GeometryInstanceFlagsKHR operator~( GeometryInstanceFlagBitsKHR bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( GeometryInstanceFlagsKHR( bits ) );
- }
-
- using GeometryInstanceFlagsNV = GeometryInstanceFlagsKHR;
-
- VULKAN_HPP_INLINE std::string to_string( GeometryInstanceFlagsKHR value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & GeometryInstanceFlagBitsKHR::eTriangleFacingCullDisable ) result += "TriangleFacingCullDisable | ";
- if ( value & GeometryInstanceFlagBitsKHR::eTriangleFrontCounterclockwise ) result += "TriangleFrontCounterclockwise | ";
- if ( value & GeometryInstanceFlagBitsKHR::eForceOpaque ) result += "ForceOpaque | ";
- if ( value & GeometryInstanceFlagBitsKHR::eForceNoOpaque ) result += "ForceNoOpaque | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
- enum class HeadlessSurfaceCreateFlagBitsEXT : VkFlags
- {};
-
- VULKAN_HPP_INLINE std::string to_string( HeadlessSurfaceCreateFlagBitsEXT )
- {
- return "(void)";
- }
-
- using HeadlessSurfaceCreateFlagsEXT = Flags<HeadlessSurfaceCreateFlagBitsEXT>;
-
- VULKAN_HPP_INLINE std::string to_string( HeadlessSurfaceCreateFlagsEXT )
- {
-
- return "{}";
- }
-
-#ifdef VK_USE_PLATFORM_IOS_MVK
- enum class IOSSurfaceCreateFlagBitsMVK : VkFlags
- {};
-
- VULKAN_HPP_INLINE std::string to_string( IOSSurfaceCreateFlagBitsMVK )
- {
- return "(void)";
- }
-
- using IOSSurfaceCreateFlagsMVK = Flags<IOSSurfaceCreateFlagBitsMVK>;
-
- VULKAN_HPP_INLINE std::string to_string( IOSSurfaceCreateFlagsMVK )
- {
-
- return "{}";
- }
-#endif /*VK_USE_PLATFORM_IOS_MVK*/
-
-
- using ImageAspectFlags = Flags<ImageAspectFlagBits>;
-
- template <> struct FlagTraits<ImageAspectFlagBits>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(ImageAspectFlagBits::eColor) | VkFlags(ImageAspectFlagBits::eDepth) | VkFlags(ImageAspectFlagBits::eStencil) | VkFlags(ImageAspectFlagBits::eMetadata) | VkFlags(ImageAspectFlagBits::ePlane0) | VkFlags(ImageAspectFlagBits::ePlane1) | VkFlags(ImageAspectFlagBits::ePlane2) | VkFlags(ImageAspectFlagBits::eMemoryPlane0EXT) | VkFlags(ImageAspectFlagBits::eMemoryPlane1EXT) | VkFlags(ImageAspectFlagBits::eMemoryPlane2EXT) | VkFlags(ImageAspectFlagBits::eMemoryPlane3EXT)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ImageAspectFlags operator|( ImageAspectFlagBits bit0, ImageAspectFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return ImageAspectFlags( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ImageAspectFlags operator&( ImageAspectFlagBits bit0, ImageAspectFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return ImageAspectFlags( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ImageAspectFlags operator^( ImageAspectFlagBits bit0, ImageAspectFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return ImageAspectFlags( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ImageAspectFlags operator~( ImageAspectFlagBits bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( ImageAspectFlags( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( ImageAspectFlags value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & ImageAspectFlagBits::eColor ) result += "Color | ";
- if ( value & ImageAspectFlagBits::eDepth ) result += "Depth | ";
- if ( value & ImageAspectFlagBits::eStencil ) result += "Stencil | ";
- if ( value & ImageAspectFlagBits::eMetadata ) result += "Metadata | ";
- if ( value & ImageAspectFlagBits::ePlane0 ) result += "Plane0 | ";
- if ( value & ImageAspectFlagBits::ePlane1 ) result += "Plane1 | ";
- if ( value & ImageAspectFlagBits::ePlane2 ) result += "Plane2 | ";
- if ( value & ImageAspectFlagBits::eMemoryPlane0EXT ) result += "MemoryPlane0EXT | ";
- if ( value & ImageAspectFlagBits::eMemoryPlane1EXT ) result += "MemoryPlane1EXT | ";
- if ( value & ImageAspectFlagBits::eMemoryPlane2EXT ) result += "MemoryPlane2EXT | ";
- if ( value & ImageAspectFlagBits::eMemoryPlane3EXT ) result += "MemoryPlane3EXT | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-
- using ImageCreateFlags = Flags<ImageCreateFlagBits>;
-
- template <> struct FlagTraits<ImageCreateFlagBits>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(ImageCreateFlagBits::eSparseBinding) | VkFlags(ImageCreateFlagBits::eSparseResidency) | VkFlags(ImageCreateFlagBits::eSparseAliased) | VkFlags(ImageCreateFlagBits::eMutableFormat) | VkFlags(ImageCreateFlagBits::eCubeCompatible) | VkFlags(ImageCreateFlagBits::eAlias) | VkFlags(ImageCreateFlagBits::eSplitInstanceBindRegions) | VkFlags(ImageCreateFlagBits::e2DArrayCompatible) | VkFlags(ImageCreateFlagBits::eBlockTexelViewCompatible) | VkFlags(ImageCreateFlagBits::eExtendedUsage) | VkFlags(ImageCreateFlagBits::eProtected) | VkFlags(ImageCreateFlagBits::eDisjoint) | VkFlags(ImageCreateFlagBits::eCornerSampledNV) | VkFlags(ImageCreateFlagBits::eSampleLocationsCompatibleDepthEXT) | VkFlags(ImageCreateFlagBits::eSubsampledEXT)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ImageCreateFlags operator|( ImageCreateFlagBits bit0, ImageCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return ImageCreateFlags( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ImageCreateFlags operator&( ImageCreateFlagBits bit0, ImageCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return ImageCreateFlags( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ImageCreateFlags operator^( ImageCreateFlagBits bit0, ImageCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return ImageCreateFlags( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ImageCreateFlags operator~( ImageCreateFlagBits bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( ImageCreateFlags( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( ImageCreateFlags value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & ImageCreateFlagBits::eSparseBinding ) result += "SparseBinding | ";
- if ( value & ImageCreateFlagBits::eSparseResidency ) result += "SparseResidency | ";
- if ( value & ImageCreateFlagBits::eSparseAliased ) result += "SparseAliased | ";
- if ( value & ImageCreateFlagBits::eMutableFormat ) result += "MutableFormat | ";
- if ( value & ImageCreateFlagBits::eCubeCompatible ) result += "CubeCompatible | ";
- if ( value & ImageCreateFlagBits::eAlias ) result += "Alias | ";
- if ( value & ImageCreateFlagBits::eSplitInstanceBindRegions ) result += "SplitInstanceBindRegions | ";
- if ( value & ImageCreateFlagBits::e2DArrayCompatible ) result += "2DArrayCompatible | ";
- if ( value & ImageCreateFlagBits::eBlockTexelViewCompatible ) result += "BlockTexelViewCompatible | ";
- if ( value & ImageCreateFlagBits::eExtendedUsage ) result += "ExtendedUsage | ";
- if ( value & ImageCreateFlagBits::eProtected ) result += "Protected | ";
- if ( value & ImageCreateFlagBits::eDisjoint ) result += "Disjoint | ";
- if ( value & ImageCreateFlagBits::eCornerSampledNV ) result += "CornerSampledNV | ";
- if ( value & ImageCreateFlagBits::eSampleLocationsCompatibleDepthEXT ) result += "SampleLocationsCompatibleDepthEXT | ";
- if ( value & ImageCreateFlagBits::eSubsampledEXT ) result += "SubsampledEXT | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-#ifdef VK_USE_PLATFORM_FUCHSIA
- enum class ImagePipeSurfaceCreateFlagBitsFUCHSIA : VkFlags
- {};
-
- VULKAN_HPP_INLINE std::string to_string( ImagePipeSurfaceCreateFlagBitsFUCHSIA )
- {
- return "(void)";
- }
-
- using ImagePipeSurfaceCreateFlagsFUCHSIA = Flags<ImagePipeSurfaceCreateFlagBitsFUCHSIA>;
-
- VULKAN_HPP_INLINE std::string to_string( ImagePipeSurfaceCreateFlagsFUCHSIA )
- {
-
- return "{}";
- }
-#endif /*VK_USE_PLATFORM_FUCHSIA*/
-
-
- using ImageUsageFlags = Flags<ImageUsageFlagBits>;
-
- template <> struct FlagTraits<ImageUsageFlagBits>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(ImageUsageFlagBits::eTransferSrc) | VkFlags(ImageUsageFlagBits::eTransferDst) | VkFlags(ImageUsageFlagBits::eSampled) | VkFlags(ImageUsageFlagBits::eStorage) | VkFlags(ImageUsageFlagBits::eColorAttachment) | VkFlags(ImageUsageFlagBits::eDepthStencilAttachment) | VkFlags(ImageUsageFlagBits::eTransientAttachment) | VkFlags(ImageUsageFlagBits::eInputAttachment) | VkFlags(ImageUsageFlagBits::eShadingRateImageNV) | VkFlags(ImageUsageFlagBits::eFragmentDensityMapEXT)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ImageUsageFlags operator|( ImageUsageFlagBits bit0, ImageUsageFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return ImageUsageFlags( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ImageUsageFlags operator&( ImageUsageFlagBits bit0, ImageUsageFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return ImageUsageFlags( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ImageUsageFlags operator^( ImageUsageFlagBits bit0, ImageUsageFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return ImageUsageFlags( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ImageUsageFlags operator~( ImageUsageFlagBits bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( ImageUsageFlags( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( ImageUsageFlags value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & ImageUsageFlagBits::eTransferSrc ) result += "TransferSrc | ";
- if ( value & ImageUsageFlagBits::eTransferDst ) result += "TransferDst | ";
- if ( value & ImageUsageFlagBits::eSampled ) result += "Sampled | ";
- if ( value & ImageUsageFlagBits::eStorage ) result += "Storage | ";
- if ( value & ImageUsageFlagBits::eColorAttachment ) result += "ColorAttachment | ";
- if ( value & ImageUsageFlagBits::eDepthStencilAttachment ) result += "DepthStencilAttachment | ";
- if ( value & ImageUsageFlagBits::eTransientAttachment ) result += "TransientAttachment | ";
- if ( value & ImageUsageFlagBits::eInputAttachment ) result += "InputAttachment | ";
- if ( value & ImageUsageFlagBits::eShadingRateImageNV ) result += "ShadingRateImageNV | ";
- if ( value & ImageUsageFlagBits::eFragmentDensityMapEXT ) result += "FragmentDensityMapEXT | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-
- using ImageViewCreateFlags = Flags<ImageViewCreateFlagBits>;
-
- template <> struct FlagTraits<ImageViewCreateFlagBits>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(ImageViewCreateFlagBits::eFragmentDensityMapDynamicEXT) | VkFlags(ImageViewCreateFlagBits::eFragmentDensityMapDeferredEXT)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ImageViewCreateFlags operator|( ImageViewCreateFlagBits bit0, ImageViewCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return ImageViewCreateFlags( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ImageViewCreateFlags operator&( ImageViewCreateFlagBits bit0, ImageViewCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return ImageViewCreateFlags( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ImageViewCreateFlags operator^( ImageViewCreateFlagBits bit0, ImageViewCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return ImageViewCreateFlags( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ImageViewCreateFlags operator~( ImageViewCreateFlagBits bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( ImageViewCreateFlags( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( ImageViewCreateFlags value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & ImageViewCreateFlagBits::eFragmentDensityMapDynamicEXT ) result += "FragmentDensityMapDynamicEXT | ";
- if ( value & ImageViewCreateFlagBits::eFragmentDensityMapDeferredEXT ) result += "FragmentDensityMapDeferredEXT | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-
- using IndirectCommandsLayoutUsageFlagsNV = Flags<IndirectCommandsLayoutUsageFlagBitsNV>;
-
- template <> struct FlagTraits<IndirectCommandsLayoutUsageFlagBitsNV>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(IndirectCommandsLayoutUsageFlagBitsNV::eExplicitPreprocess) | VkFlags(IndirectCommandsLayoutUsageFlagBitsNV::eIndexedSequences) | VkFlags(IndirectCommandsLayoutUsageFlagBitsNV::eUnorderedSequences)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR IndirectCommandsLayoutUsageFlagsNV operator|( IndirectCommandsLayoutUsageFlagBitsNV bit0, IndirectCommandsLayoutUsageFlagBitsNV bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return IndirectCommandsLayoutUsageFlagsNV( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR IndirectCommandsLayoutUsageFlagsNV operator&( IndirectCommandsLayoutUsageFlagBitsNV bit0, IndirectCommandsLayoutUsageFlagBitsNV bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return IndirectCommandsLayoutUsageFlagsNV( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR IndirectCommandsLayoutUsageFlagsNV operator^( IndirectCommandsLayoutUsageFlagBitsNV bit0, IndirectCommandsLayoutUsageFlagBitsNV bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return IndirectCommandsLayoutUsageFlagsNV( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR IndirectCommandsLayoutUsageFlagsNV operator~( IndirectCommandsLayoutUsageFlagBitsNV bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( IndirectCommandsLayoutUsageFlagsNV( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( IndirectCommandsLayoutUsageFlagsNV value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & IndirectCommandsLayoutUsageFlagBitsNV::eExplicitPreprocess ) result += "ExplicitPreprocess | ";
- if ( value & IndirectCommandsLayoutUsageFlagBitsNV::eIndexedSequences ) result += "IndexedSequences | ";
- if ( value & IndirectCommandsLayoutUsageFlagBitsNV::eUnorderedSequences ) result += "UnorderedSequences | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-
- using IndirectStateFlagsNV = Flags<IndirectStateFlagBitsNV>;
-
- template <> struct FlagTraits<IndirectStateFlagBitsNV>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(IndirectStateFlagBitsNV::eFlagFrontface)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR IndirectStateFlagsNV operator|( IndirectStateFlagBitsNV bit0, IndirectStateFlagBitsNV bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return IndirectStateFlagsNV( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR IndirectStateFlagsNV operator&( IndirectStateFlagBitsNV bit0, IndirectStateFlagBitsNV bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return IndirectStateFlagsNV( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR IndirectStateFlagsNV operator^( IndirectStateFlagBitsNV bit0, IndirectStateFlagBitsNV bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return IndirectStateFlagsNV( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR IndirectStateFlagsNV operator~( IndirectStateFlagBitsNV bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( IndirectStateFlagsNV( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( IndirectStateFlagsNV value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & IndirectStateFlagBitsNV::eFlagFrontface ) result += "FlagFrontface | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-
- using InstanceCreateFlags = Flags<InstanceCreateFlagBits>;
-
- VULKAN_HPP_INLINE std::string to_string( InstanceCreateFlags )
- {
-
- return "{}";
- }
-
-#ifdef VK_USE_PLATFORM_MACOS_MVK
- enum class MacOSSurfaceCreateFlagBitsMVK : VkFlags
- {};
-
- VULKAN_HPP_INLINE std::string to_string( MacOSSurfaceCreateFlagBitsMVK )
- {
- return "(void)";
- }
-
- using MacOSSurfaceCreateFlagsMVK = Flags<MacOSSurfaceCreateFlagBitsMVK>;
-
- VULKAN_HPP_INLINE std::string to_string( MacOSSurfaceCreateFlagsMVK )
- {
-
- return "{}";
- }
-#endif /*VK_USE_PLATFORM_MACOS_MVK*/
-
-
- using MemoryAllocateFlags = Flags<MemoryAllocateFlagBits>;
-
- template <> struct FlagTraits<MemoryAllocateFlagBits>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(MemoryAllocateFlagBits::eDeviceMask) | VkFlags(MemoryAllocateFlagBits::eDeviceAddress) | VkFlags(MemoryAllocateFlagBits::eDeviceAddressCaptureReplay)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR MemoryAllocateFlags operator|( MemoryAllocateFlagBits bit0, MemoryAllocateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return MemoryAllocateFlags( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR MemoryAllocateFlags operator&( MemoryAllocateFlagBits bit0, MemoryAllocateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return MemoryAllocateFlags( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR MemoryAllocateFlags operator^( MemoryAllocateFlagBits bit0, MemoryAllocateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return MemoryAllocateFlags( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR MemoryAllocateFlags operator~( MemoryAllocateFlagBits bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( MemoryAllocateFlags( bits ) );
- }
-
- using MemoryAllocateFlagsKHR = MemoryAllocateFlags;
-
- VULKAN_HPP_INLINE std::string to_string( MemoryAllocateFlags value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & MemoryAllocateFlagBits::eDeviceMask ) result += "DeviceMask | ";
- if ( value & MemoryAllocateFlagBits::eDeviceAddress ) result += "DeviceAddress | ";
- if ( value & MemoryAllocateFlagBits::eDeviceAddressCaptureReplay ) result += "DeviceAddressCaptureReplay | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-
- using MemoryHeapFlags = Flags<MemoryHeapFlagBits>;
-
- template <> struct FlagTraits<MemoryHeapFlagBits>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(MemoryHeapFlagBits::eDeviceLocal) | VkFlags(MemoryHeapFlagBits::eMultiInstance)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR MemoryHeapFlags operator|( MemoryHeapFlagBits bit0, MemoryHeapFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return MemoryHeapFlags( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR MemoryHeapFlags operator&( MemoryHeapFlagBits bit0, MemoryHeapFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return MemoryHeapFlags( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR MemoryHeapFlags operator^( MemoryHeapFlagBits bit0, MemoryHeapFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return MemoryHeapFlags( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR MemoryHeapFlags operator~( MemoryHeapFlagBits bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( MemoryHeapFlags( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( MemoryHeapFlags value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & MemoryHeapFlagBits::eDeviceLocal ) result += "DeviceLocal | ";
- if ( value & MemoryHeapFlagBits::eMultiInstance ) result += "MultiInstance | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
- enum class MemoryMapFlagBits : VkFlags
- {};
-
- VULKAN_HPP_INLINE std::string to_string( MemoryMapFlagBits )
- {
- return "(void)";
- }
-
- using MemoryMapFlags = Flags<MemoryMapFlagBits>;
-
- VULKAN_HPP_INLINE std::string to_string( MemoryMapFlags )
- {
-
- return "{}";
- }
-
-
- using MemoryPropertyFlags = Flags<MemoryPropertyFlagBits>;
-
- template <> struct FlagTraits<MemoryPropertyFlagBits>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(MemoryPropertyFlagBits::eDeviceLocal) | VkFlags(MemoryPropertyFlagBits::eHostVisible) | VkFlags(MemoryPropertyFlagBits::eHostCoherent) | VkFlags(MemoryPropertyFlagBits::eHostCached) | VkFlags(MemoryPropertyFlagBits::eLazilyAllocated) | VkFlags(MemoryPropertyFlagBits::eProtected) | VkFlags(MemoryPropertyFlagBits::eDeviceCoherentAMD) | VkFlags(MemoryPropertyFlagBits::eDeviceUncachedAMD)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR MemoryPropertyFlags operator|( MemoryPropertyFlagBits bit0, MemoryPropertyFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return MemoryPropertyFlags( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR MemoryPropertyFlags operator&( MemoryPropertyFlagBits bit0, MemoryPropertyFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return MemoryPropertyFlags( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR MemoryPropertyFlags operator^( MemoryPropertyFlagBits bit0, MemoryPropertyFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return MemoryPropertyFlags( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR MemoryPropertyFlags operator~( MemoryPropertyFlagBits bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( MemoryPropertyFlags( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( MemoryPropertyFlags value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & MemoryPropertyFlagBits::eDeviceLocal ) result += "DeviceLocal | ";
- if ( value & MemoryPropertyFlagBits::eHostVisible ) result += "HostVisible | ";
- if ( value & MemoryPropertyFlagBits::eHostCoherent ) result += "HostCoherent | ";
- if ( value & MemoryPropertyFlagBits::eHostCached ) result += "HostCached | ";
- if ( value & MemoryPropertyFlagBits::eLazilyAllocated ) result += "LazilyAllocated | ";
- if ( value & MemoryPropertyFlagBits::eProtected ) result += "Protected | ";
- if ( value & MemoryPropertyFlagBits::eDeviceCoherentAMD ) result += "DeviceCoherentAMD | ";
- if ( value & MemoryPropertyFlagBits::eDeviceUncachedAMD ) result += "DeviceUncachedAMD | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-#ifdef VK_USE_PLATFORM_METAL_EXT
- enum class MetalSurfaceCreateFlagBitsEXT : VkFlags
- {};
-
- VULKAN_HPP_INLINE std::string to_string( MetalSurfaceCreateFlagBitsEXT )
- {
- return "(void)";
- }
-
- using MetalSurfaceCreateFlagsEXT = Flags<MetalSurfaceCreateFlagBitsEXT>;
-
- VULKAN_HPP_INLINE std::string to_string( MetalSurfaceCreateFlagsEXT )
- {
-
- return "{}";
- }
-#endif /*VK_USE_PLATFORM_METAL_EXT*/
-
-
- using PeerMemoryFeatureFlags = Flags<PeerMemoryFeatureFlagBits>;
-
- template <> struct FlagTraits<PeerMemoryFeatureFlagBits>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(PeerMemoryFeatureFlagBits::eCopySrc) | VkFlags(PeerMemoryFeatureFlagBits::eCopyDst) | VkFlags(PeerMemoryFeatureFlagBits::eGenericSrc) | VkFlags(PeerMemoryFeatureFlagBits::eGenericDst)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PeerMemoryFeatureFlags operator|( PeerMemoryFeatureFlagBits bit0, PeerMemoryFeatureFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return PeerMemoryFeatureFlags( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PeerMemoryFeatureFlags operator&( PeerMemoryFeatureFlagBits bit0, PeerMemoryFeatureFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return PeerMemoryFeatureFlags( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PeerMemoryFeatureFlags operator^( PeerMemoryFeatureFlagBits bit0, PeerMemoryFeatureFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return PeerMemoryFeatureFlags( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PeerMemoryFeatureFlags operator~( PeerMemoryFeatureFlagBits bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( PeerMemoryFeatureFlags( bits ) );
- }
-
- using PeerMemoryFeatureFlagsKHR = PeerMemoryFeatureFlags;
-
- VULKAN_HPP_INLINE std::string to_string( PeerMemoryFeatureFlags value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & PeerMemoryFeatureFlagBits::eCopySrc ) result += "CopySrc | ";
- if ( value & PeerMemoryFeatureFlagBits::eCopyDst ) result += "CopyDst | ";
- if ( value & PeerMemoryFeatureFlagBits::eGenericSrc ) result += "GenericSrc | ";
- if ( value & PeerMemoryFeatureFlagBits::eGenericDst ) result += "GenericDst | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-
- using PerformanceCounterDescriptionFlagsKHR = Flags<PerformanceCounterDescriptionFlagBitsKHR>;
-
- template <> struct FlagTraits<PerformanceCounterDescriptionFlagBitsKHR>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(PerformanceCounterDescriptionFlagBitsKHR::ePerformanceImpacting) | VkFlags(PerformanceCounterDescriptionFlagBitsKHR::eConcurrentlyImpacted)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PerformanceCounterDescriptionFlagsKHR operator|( PerformanceCounterDescriptionFlagBitsKHR bit0, PerformanceCounterDescriptionFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return PerformanceCounterDescriptionFlagsKHR( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PerformanceCounterDescriptionFlagsKHR operator&( PerformanceCounterDescriptionFlagBitsKHR bit0, PerformanceCounterDescriptionFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return PerformanceCounterDescriptionFlagsKHR( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PerformanceCounterDescriptionFlagsKHR operator^( PerformanceCounterDescriptionFlagBitsKHR bit0, PerformanceCounterDescriptionFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return PerformanceCounterDescriptionFlagsKHR( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PerformanceCounterDescriptionFlagsKHR operator~( PerformanceCounterDescriptionFlagBitsKHR bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( PerformanceCounterDescriptionFlagsKHR( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( PerformanceCounterDescriptionFlagsKHR value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & PerformanceCounterDescriptionFlagBitsKHR::ePerformanceImpacting ) result += "PerformanceImpacting | ";
- if ( value & PerformanceCounterDescriptionFlagBitsKHR::eConcurrentlyImpacted ) result += "ConcurrentlyImpacted | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-
- using PipelineCacheCreateFlags = Flags<PipelineCacheCreateFlagBits>;
-
- template <> struct FlagTraits<PipelineCacheCreateFlagBits>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(PipelineCacheCreateFlagBits::eExternallySynchronizedEXT)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineCacheCreateFlags operator|( PipelineCacheCreateFlagBits bit0, PipelineCacheCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return PipelineCacheCreateFlags( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineCacheCreateFlags operator&( PipelineCacheCreateFlagBits bit0, PipelineCacheCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return PipelineCacheCreateFlags( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineCacheCreateFlags operator^( PipelineCacheCreateFlagBits bit0, PipelineCacheCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return PipelineCacheCreateFlags( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineCacheCreateFlags operator~( PipelineCacheCreateFlagBits bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( PipelineCacheCreateFlags( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( PipelineCacheCreateFlags value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & PipelineCacheCreateFlagBits::eExternallySynchronizedEXT ) result += "ExternallySynchronizedEXT | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
- enum class PipelineColorBlendStateCreateFlagBits : VkFlags
- {};
-
- VULKAN_HPP_INLINE std::string to_string( PipelineColorBlendStateCreateFlagBits )
- {
- return "(void)";
- }
-
- using PipelineColorBlendStateCreateFlags = Flags<PipelineColorBlendStateCreateFlagBits>;
-
- VULKAN_HPP_INLINE std::string to_string( PipelineColorBlendStateCreateFlags )
- {
-
- return "{}";
- }
-
-
- using PipelineCompilerControlFlagsAMD = Flags<PipelineCompilerControlFlagBitsAMD>;
-
- VULKAN_HPP_INLINE std::string to_string( PipelineCompilerControlFlagsAMD )
- {
-
- return "{}";
- }
-
- enum class PipelineCoverageModulationStateCreateFlagBitsNV : VkFlags
- {};
-
- VULKAN_HPP_INLINE std::string to_string( PipelineCoverageModulationStateCreateFlagBitsNV )
- {
- return "(void)";
- }
-
- using PipelineCoverageModulationStateCreateFlagsNV = Flags<PipelineCoverageModulationStateCreateFlagBitsNV>;
-
- VULKAN_HPP_INLINE std::string to_string( PipelineCoverageModulationStateCreateFlagsNV )
- {
-
- return "{}";
- }
-
- enum class PipelineCoverageReductionStateCreateFlagBitsNV : VkFlags
- {};
-
- VULKAN_HPP_INLINE std::string to_string( PipelineCoverageReductionStateCreateFlagBitsNV )
- {
- return "(void)";
- }
-
- using PipelineCoverageReductionStateCreateFlagsNV = Flags<PipelineCoverageReductionStateCreateFlagBitsNV>;
-
- VULKAN_HPP_INLINE std::string to_string( PipelineCoverageReductionStateCreateFlagsNV )
- {
-
- return "{}";
- }
-
- enum class PipelineCoverageToColorStateCreateFlagBitsNV : VkFlags
- {};
-
- VULKAN_HPP_INLINE std::string to_string( PipelineCoverageToColorStateCreateFlagBitsNV )
- {
- return "(void)";
- }
-
- using PipelineCoverageToColorStateCreateFlagsNV = Flags<PipelineCoverageToColorStateCreateFlagBitsNV>;
-
- VULKAN_HPP_INLINE std::string to_string( PipelineCoverageToColorStateCreateFlagsNV )
- {
-
- return "{}";
- }
-
-
- using PipelineCreateFlags = Flags<PipelineCreateFlagBits>;
-
- template <> struct FlagTraits<PipelineCreateFlagBits>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(PipelineCreateFlagBits::eDisableOptimization) | VkFlags(PipelineCreateFlagBits::eAllowDerivatives) | VkFlags(PipelineCreateFlagBits::eDerivative) | VkFlags(PipelineCreateFlagBits::eViewIndexFromDeviceIndex) | VkFlags(PipelineCreateFlagBits::eDispatchBase) | VkFlags(PipelineCreateFlagBits::eRayTracingNoNullAnyHitShadersKHR) | VkFlags(PipelineCreateFlagBits::eRayTracingNoNullClosestHitShadersKHR) | VkFlags(PipelineCreateFlagBits::eRayTracingNoNullMissShadersKHR) | VkFlags(PipelineCreateFlagBits::eRayTracingNoNullIntersectionShadersKHR) | VkFlags(PipelineCreateFlagBits::eRayTracingSkipTrianglesKHR) | VkFlags(PipelineCreateFlagBits::eRayTracingSkipAabbsKHR) | VkFlags(PipelineCreateFlagBits::eRayTracingShaderGroupHandleCaptureReplayKHR) | VkFlags(PipelineCreateFlagBits::eDeferCompileNV) | VkFlags(PipelineCreateFlagBits::eCaptureStatisticsKHR) | VkFlags(PipelineCreateFlagBits::eCaptureInternalRepresentationsKHR) | VkFlags(PipelineCreateFlagBits::eIndirectBindableNV) | VkFlags(PipelineCreateFlagBits::eLibraryKHR) | VkFlags(PipelineCreateFlagBits::eFailOnPipelineCompileRequiredEXT) | VkFlags(PipelineCreateFlagBits::eEarlyReturnOnFailureEXT)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineCreateFlags operator|( PipelineCreateFlagBits bit0, PipelineCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return PipelineCreateFlags( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineCreateFlags operator&( PipelineCreateFlagBits bit0, PipelineCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return PipelineCreateFlags( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineCreateFlags operator^( PipelineCreateFlagBits bit0, PipelineCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return PipelineCreateFlags( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineCreateFlags operator~( PipelineCreateFlagBits bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( PipelineCreateFlags( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( PipelineCreateFlags value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & PipelineCreateFlagBits::eDisableOptimization ) result += "DisableOptimization | ";
- if ( value & PipelineCreateFlagBits::eAllowDerivatives ) result += "AllowDerivatives | ";
- if ( value & PipelineCreateFlagBits::eDerivative ) result += "Derivative | ";
- if ( value & PipelineCreateFlagBits::eViewIndexFromDeviceIndex ) result += "ViewIndexFromDeviceIndex | ";
- if ( value & PipelineCreateFlagBits::eDispatchBase ) result += "DispatchBase | ";
- if ( value & PipelineCreateFlagBits::eRayTracingNoNullAnyHitShadersKHR ) result += "RayTracingNoNullAnyHitShadersKHR | ";
- if ( value & PipelineCreateFlagBits::eRayTracingNoNullClosestHitShadersKHR ) result += "RayTracingNoNullClosestHitShadersKHR | ";
- if ( value & PipelineCreateFlagBits::eRayTracingNoNullMissShadersKHR ) result += "RayTracingNoNullMissShadersKHR | ";
- if ( value & PipelineCreateFlagBits::eRayTracingNoNullIntersectionShadersKHR ) result += "RayTracingNoNullIntersectionShadersKHR | ";
- if ( value & PipelineCreateFlagBits::eRayTracingSkipTrianglesKHR ) result += "RayTracingSkipTrianglesKHR | ";
- if ( value & PipelineCreateFlagBits::eRayTracingSkipAabbsKHR ) result += "RayTracingSkipAabbsKHR | ";
- if ( value & PipelineCreateFlagBits::eRayTracingShaderGroupHandleCaptureReplayKHR ) result += "RayTracingShaderGroupHandleCaptureReplayKHR | ";
- if ( value & PipelineCreateFlagBits::eDeferCompileNV ) result += "DeferCompileNV | ";
- if ( value & PipelineCreateFlagBits::eCaptureStatisticsKHR ) result += "CaptureStatisticsKHR | ";
- if ( value & PipelineCreateFlagBits::eCaptureInternalRepresentationsKHR ) result += "CaptureInternalRepresentationsKHR | ";
- if ( value & PipelineCreateFlagBits::eIndirectBindableNV ) result += "IndirectBindableNV | ";
- if ( value & PipelineCreateFlagBits::eLibraryKHR ) result += "LibraryKHR | ";
- if ( value & PipelineCreateFlagBits::eFailOnPipelineCompileRequiredEXT ) result += "FailOnPipelineCompileRequiredEXT | ";
- if ( value & PipelineCreateFlagBits::eEarlyReturnOnFailureEXT ) result += "EarlyReturnOnFailureEXT | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-
- using PipelineCreationFeedbackFlagsEXT = Flags<PipelineCreationFeedbackFlagBitsEXT>;
-
- template <> struct FlagTraits<PipelineCreationFeedbackFlagBitsEXT>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(PipelineCreationFeedbackFlagBitsEXT::eValid) | VkFlags(PipelineCreationFeedbackFlagBitsEXT::eApplicationPipelineCacheHit) | VkFlags(PipelineCreationFeedbackFlagBitsEXT::eBasePipelineAcceleration)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineCreationFeedbackFlagsEXT operator|( PipelineCreationFeedbackFlagBitsEXT bit0, PipelineCreationFeedbackFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return PipelineCreationFeedbackFlagsEXT( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineCreationFeedbackFlagsEXT operator&( PipelineCreationFeedbackFlagBitsEXT bit0, PipelineCreationFeedbackFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return PipelineCreationFeedbackFlagsEXT( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineCreationFeedbackFlagsEXT operator^( PipelineCreationFeedbackFlagBitsEXT bit0, PipelineCreationFeedbackFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return PipelineCreationFeedbackFlagsEXT( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineCreationFeedbackFlagsEXT operator~( PipelineCreationFeedbackFlagBitsEXT bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( PipelineCreationFeedbackFlagsEXT( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( PipelineCreationFeedbackFlagsEXT value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & PipelineCreationFeedbackFlagBitsEXT::eValid ) result += "Valid | ";
- if ( value & PipelineCreationFeedbackFlagBitsEXT::eApplicationPipelineCacheHit ) result += "ApplicationPipelineCacheHit | ";
- if ( value & PipelineCreationFeedbackFlagBitsEXT::eBasePipelineAcceleration ) result += "BasePipelineAcceleration | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
- enum class PipelineDepthStencilStateCreateFlagBits : VkFlags
- {};
-
- VULKAN_HPP_INLINE std::string to_string( PipelineDepthStencilStateCreateFlagBits )
- {
- return "(void)";
- }
-
- using PipelineDepthStencilStateCreateFlags = Flags<PipelineDepthStencilStateCreateFlagBits>;
-
- VULKAN_HPP_INLINE std::string to_string( PipelineDepthStencilStateCreateFlags )
- {
-
- return "{}";
- }
-
- enum class PipelineDiscardRectangleStateCreateFlagBitsEXT : VkFlags
- {};
-
- VULKAN_HPP_INLINE std::string to_string( PipelineDiscardRectangleStateCreateFlagBitsEXT )
- {
- return "(void)";
- }
-
- using PipelineDiscardRectangleStateCreateFlagsEXT = Flags<PipelineDiscardRectangleStateCreateFlagBitsEXT>;
-
- VULKAN_HPP_INLINE std::string to_string( PipelineDiscardRectangleStateCreateFlagsEXT )
- {
-
- return "{}";
- }
-
- enum class PipelineDynamicStateCreateFlagBits : VkFlags
- {};
-
- VULKAN_HPP_INLINE std::string to_string( PipelineDynamicStateCreateFlagBits )
- {
- return "(void)";
- }
-
- using PipelineDynamicStateCreateFlags = Flags<PipelineDynamicStateCreateFlagBits>;
-
- VULKAN_HPP_INLINE std::string to_string( PipelineDynamicStateCreateFlags )
- {
-
- return "{}";
- }
-
- enum class PipelineInputAssemblyStateCreateFlagBits : VkFlags
- {};
-
- VULKAN_HPP_INLINE std::string to_string( PipelineInputAssemblyStateCreateFlagBits )
- {
- return "(void)";
- }
-
- using PipelineInputAssemblyStateCreateFlags = Flags<PipelineInputAssemblyStateCreateFlagBits>;
-
- VULKAN_HPP_INLINE std::string to_string( PipelineInputAssemblyStateCreateFlags )
- {
-
- return "{}";
- }
-
- enum class PipelineLayoutCreateFlagBits : VkFlags
- {};
-
- VULKAN_HPP_INLINE std::string to_string( PipelineLayoutCreateFlagBits )
- {
- return "(void)";
- }
-
- using PipelineLayoutCreateFlags = Flags<PipelineLayoutCreateFlagBits>;
-
- VULKAN_HPP_INLINE std::string to_string( PipelineLayoutCreateFlags )
- {
-
- return "{}";
- }
-
- enum class PipelineMultisampleStateCreateFlagBits : VkFlags
- {};
-
- VULKAN_HPP_INLINE std::string to_string( PipelineMultisampleStateCreateFlagBits )
- {
- return "(void)";
- }
-
- using PipelineMultisampleStateCreateFlags = Flags<PipelineMultisampleStateCreateFlagBits>;
-
- VULKAN_HPP_INLINE std::string to_string( PipelineMultisampleStateCreateFlags )
- {
-
- return "{}";
- }
-
- enum class PipelineRasterizationConservativeStateCreateFlagBitsEXT : VkFlags
- {};
-
- VULKAN_HPP_INLINE std::string to_string( PipelineRasterizationConservativeStateCreateFlagBitsEXT )
- {
- return "(void)";
- }
-
- using PipelineRasterizationConservativeStateCreateFlagsEXT = Flags<PipelineRasterizationConservativeStateCreateFlagBitsEXT>;
-
- VULKAN_HPP_INLINE std::string to_string( PipelineRasterizationConservativeStateCreateFlagsEXT )
- {
-
- return "{}";
- }
-
- enum class PipelineRasterizationDepthClipStateCreateFlagBitsEXT : VkFlags
- {};
-
- VULKAN_HPP_INLINE std::string to_string( PipelineRasterizationDepthClipStateCreateFlagBitsEXT )
- {
- return "(void)";
- }
-
- using PipelineRasterizationDepthClipStateCreateFlagsEXT = Flags<PipelineRasterizationDepthClipStateCreateFlagBitsEXT>;
-
- VULKAN_HPP_INLINE std::string to_string( PipelineRasterizationDepthClipStateCreateFlagsEXT )
- {
-
- return "{}";
- }
-
- enum class PipelineRasterizationStateCreateFlagBits : VkFlags
- {};
-
- VULKAN_HPP_INLINE std::string to_string( PipelineRasterizationStateCreateFlagBits )
- {
- return "(void)";
- }
-
- using PipelineRasterizationStateCreateFlags = Flags<PipelineRasterizationStateCreateFlagBits>;
-
- VULKAN_HPP_INLINE std::string to_string( PipelineRasterizationStateCreateFlags )
- {
-
- return "{}";
- }
-
- enum class PipelineRasterizationStateStreamCreateFlagBitsEXT : VkFlags
- {};
-
- VULKAN_HPP_INLINE std::string to_string( PipelineRasterizationStateStreamCreateFlagBitsEXT )
- {
- return "(void)";
- }
-
- using PipelineRasterizationStateStreamCreateFlagsEXT = Flags<PipelineRasterizationStateStreamCreateFlagBitsEXT>;
-
- VULKAN_HPP_INLINE std::string to_string( PipelineRasterizationStateStreamCreateFlagsEXT )
- {
-
- return "{}";
- }
-
-
- using PipelineShaderStageCreateFlags = Flags<PipelineShaderStageCreateFlagBits>;
-
- template <> struct FlagTraits<PipelineShaderStageCreateFlagBits>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(PipelineShaderStageCreateFlagBits::eAllowVaryingSubgroupSizeEXT) | VkFlags(PipelineShaderStageCreateFlagBits::eRequireFullSubgroupsEXT)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineShaderStageCreateFlags operator|( PipelineShaderStageCreateFlagBits bit0, PipelineShaderStageCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return PipelineShaderStageCreateFlags( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineShaderStageCreateFlags operator&( PipelineShaderStageCreateFlagBits bit0, PipelineShaderStageCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return PipelineShaderStageCreateFlags( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineShaderStageCreateFlags operator^( PipelineShaderStageCreateFlagBits bit0, PipelineShaderStageCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return PipelineShaderStageCreateFlags( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineShaderStageCreateFlags operator~( PipelineShaderStageCreateFlagBits bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( PipelineShaderStageCreateFlags( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( PipelineShaderStageCreateFlags value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & PipelineShaderStageCreateFlagBits::eAllowVaryingSubgroupSizeEXT ) result += "AllowVaryingSubgroupSizeEXT | ";
- if ( value & PipelineShaderStageCreateFlagBits::eRequireFullSubgroupsEXT ) result += "RequireFullSubgroupsEXT | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-
- using PipelineStageFlags = Flags<PipelineStageFlagBits>;
-
- template <> struct FlagTraits<PipelineStageFlagBits>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(PipelineStageFlagBits::eTopOfPipe) | VkFlags(PipelineStageFlagBits::eDrawIndirect) | VkFlags(PipelineStageFlagBits::eVertexInput) | VkFlags(PipelineStageFlagBits::eVertexShader) | VkFlags(PipelineStageFlagBits::eTessellationControlShader) | VkFlags(PipelineStageFlagBits::eTessellationEvaluationShader) | VkFlags(PipelineStageFlagBits::eGeometryShader) | VkFlags(PipelineStageFlagBits::eFragmentShader) | VkFlags(PipelineStageFlagBits::eEarlyFragmentTests) | VkFlags(PipelineStageFlagBits::eLateFragmentTests) | VkFlags(PipelineStageFlagBits::eColorAttachmentOutput) | VkFlags(PipelineStageFlagBits::eComputeShader) | VkFlags(PipelineStageFlagBits::eTransfer) | VkFlags(PipelineStageFlagBits::eBottomOfPipe) | VkFlags(PipelineStageFlagBits::eHost) | VkFlags(PipelineStageFlagBits::eAllGraphics) | VkFlags(PipelineStageFlagBits::eAllCommands) | VkFlags(PipelineStageFlagBits::eTransformFeedbackEXT) | VkFlags(PipelineStageFlagBits::eConditionalRenderingEXT) | VkFlags(PipelineStageFlagBits::eAccelerationStructureBuildKHR) | VkFlags(PipelineStageFlagBits::eRayTracingShaderKHR) | VkFlags(PipelineStageFlagBits::eShadingRateImageNV) | VkFlags(PipelineStageFlagBits::eTaskShaderNV) | VkFlags(PipelineStageFlagBits::eMeshShaderNV) | VkFlags(PipelineStageFlagBits::eFragmentDensityProcessEXT) | VkFlags(PipelineStageFlagBits::eCommandPreprocessNV)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineStageFlags operator|( PipelineStageFlagBits bit0, PipelineStageFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return PipelineStageFlags( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineStageFlags operator&( PipelineStageFlagBits bit0, PipelineStageFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return PipelineStageFlags( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineStageFlags operator^( PipelineStageFlagBits bit0, PipelineStageFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return PipelineStageFlags( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineStageFlags operator~( PipelineStageFlagBits bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( PipelineStageFlags( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( PipelineStageFlags value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & PipelineStageFlagBits::eTopOfPipe ) result += "TopOfPipe | ";
- if ( value & PipelineStageFlagBits::eDrawIndirect ) result += "DrawIndirect | ";
- if ( value & PipelineStageFlagBits::eVertexInput ) result += "VertexInput | ";
- if ( value & PipelineStageFlagBits::eVertexShader ) result += "VertexShader | ";
- if ( value & PipelineStageFlagBits::eTessellationControlShader ) result += "TessellationControlShader | ";
- if ( value & PipelineStageFlagBits::eTessellationEvaluationShader ) result += "TessellationEvaluationShader | ";
- if ( value & PipelineStageFlagBits::eGeometryShader ) result += "GeometryShader | ";
- if ( value & PipelineStageFlagBits::eFragmentShader ) result += "FragmentShader | ";
- if ( value & PipelineStageFlagBits::eEarlyFragmentTests ) result += "EarlyFragmentTests | ";
- if ( value & PipelineStageFlagBits::eLateFragmentTests ) result += "LateFragmentTests | ";
- if ( value & PipelineStageFlagBits::eColorAttachmentOutput ) result += "ColorAttachmentOutput | ";
- if ( value & PipelineStageFlagBits::eComputeShader ) result += "ComputeShader | ";
- if ( value & PipelineStageFlagBits::eTransfer ) result += "Transfer | ";
- if ( value & PipelineStageFlagBits::eBottomOfPipe ) result += "BottomOfPipe | ";
- if ( value & PipelineStageFlagBits::eHost ) result += "Host | ";
- if ( value & PipelineStageFlagBits::eAllGraphics ) result += "AllGraphics | ";
- if ( value & PipelineStageFlagBits::eAllCommands ) result += "AllCommands | ";
- if ( value & PipelineStageFlagBits::eTransformFeedbackEXT ) result += "TransformFeedbackEXT | ";
- if ( value & PipelineStageFlagBits::eConditionalRenderingEXT ) result += "ConditionalRenderingEXT | ";
- if ( value & PipelineStageFlagBits::eAccelerationStructureBuildKHR ) result += "AccelerationStructureBuildKHR | ";
- if ( value & PipelineStageFlagBits::eRayTracingShaderKHR ) result += "RayTracingShaderKHR | ";
- if ( value & PipelineStageFlagBits::eShadingRateImageNV ) result += "ShadingRateImageNV | ";
- if ( value & PipelineStageFlagBits::eTaskShaderNV ) result += "TaskShaderNV | ";
- if ( value & PipelineStageFlagBits::eMeshShaderNV ) result += "MeshShaderNV | ";
- if ( value & PipelineStageFlagBits::eFragmentDensityProcessEXT ) result += "FragmentDensityProcessEXT | ";
- if ( value & PipelineStageFlagBits::eCommandPreprocessNV ) result += "CommandPreprocessNV | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
- enum class PipelineTessellationStateCreateFlagBits : VkFlags
- {};
-
- VULKAN_HPP_INLINE std::string to_string( PipelineTessellationStateCreateFlagBits )
- {
- return "(void)";
- }
-
- using PipelineTessellationStateCreateFlags = Flags<PipelineTessellationStateCreateFlagBits>;
-
- VULKAN_HPP_INLINE std::string to_string( PipelineTessellationStateCreateFlags )
- {
-
- return "{}";
- }
-
- enum class PipelineVertexInputStateCreateFlagBits : VkFlags
- {};
-
- VULKAN_HPP_INLINE std::string to_string( PipelineVertexInputStateCreateFlagBits )
- {
- return "(void)";
- }
-
- using PipelineVertexInputStateCreateFlags = Flags<PipelineVertexInputStateCreateFlagBits>;
-
- VULKAN_HPP_INLINE std::string to_string( PipelineVertexInputStateCreateFlags )
- {
-
- return "{}";
- }
-
- enum class PipelineViewportStateCreateFlagBits : VkFlags
- {};
-
- VULKAN_HPP_INLINE std::string to_string( PipelineViewportStateCreateFlagBits )
- {
- return "(void)";
- }
-
- using PipelineViewportStateCreateFlags = Flags<PipelineViewportStateCreateFlagBits>;
-
- VULKAN_HPP_INLINE std::string to_string( PipelineViewportStateCreateFlags )
- {
-
- return "{}";
- }
-
- enum class PipelineViewportSwizzleStateCreateFlagBitsNV : VkFlags
- {};
-
- VULKAN_HPP_INLINE std::string to_string( PipelineViewportSwizzleStateCreateFlagBitsNV )
- {
- return "(void)";
- }
-
- using PipelineViewportSwizzleStateCreateFlagsNV = Flags<PipelineViewportSwizzleStateCreateFlagBitsNV>;
-
- VULKAN_HPP_INLINE std::string to_string( PipelineViewportSwizzleStateCreateFlagsNV )
- {
-
- return "{}";
- }
-
-
- using PrivateDataSlotCreateFlagsEXT = Flags<PrivateDataSlotCreateFlagBitsEXT>;
-
- VULKAN_HPP_INLINE std::string to_string( PrivateDataSlotCreateFlagsEXT )
- {
-
- return "{}";
- }
-
-
- using QueryControlFlags = Flags<QueryControlFlagBits>;
-
- template <> struct FlagTraits<QueryControlFlagBits>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(QueryControlFlagBits::ePrecise)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR QueryControlFlags operator|( QueryControlFlagBits bit0, QueryControlFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return QueryControlFlags( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR QueryControlFlags operator&( QueryControlFlagBits bit0, QueryControlFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return QueryControlFlags( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR QueryControlFlags operator^( QueryControlFlagBits bit0, QueryControlFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return QueryControlFlags( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR QueryControlFlags operator~( QueryControlFlagBits bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( QueryControlFlags( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( QueryControlFlags value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & QueryControlFlagBits::ePrecise ) result += "Precise | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-
- using QueryPipelineStatisticFlags = Flags<QueryPipelineStatisticFlagBits>;
-
- template <> struct FlagTraits<QueryPipelineStatisticFlagBits>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(QueryPipelineStatisticFlagBits::eInputAssemblyVertices) | VkFlags(QueryPipelineStatisticFlagBits::eInputAssemblyPrimitives) | VkFlags(QueryPipelineStatisticFlagBits::eVertexShaderInvocations) | VkFlags(QueryPipelineStatisticFlagBits::eGeometryShaderInvocations) | VkFlags(QueryPipelineStatisticFlagBits::eGeometryShaderPrimitives) | VkFlags(QueryPipelineStatisticFlagBits::eClippingInvocations) | VkFlags(QueryPipelineStatisticFlagBits::eClippingPrimitives) | VkFlags(QueryPipelineStatisticFlagBits::eFragmentShaderInvocations) | VkFlags(QueryPipelineStatisticFlagBits::eTessellationControlShaderPatches) | VkFlags(QueryPipelineStatisticFlagBits::eTessellationEvaluationShaderInvocations) | VkFlags(QueryPipelineStatisticFlagBits::eComputeShaderInvocations)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR QueryPipelineStatisticFlags operator|( QueryPipelineStatisticFlagBits bit0, QueryPipelineStatisticFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return QueryPipelineStatisticFlags( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR QueryPipelineStatisticFlags operator&( QueryPipelineStatisticFlagBits bit0, QueryPipelineStatisticFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return QueryPipelineStatisticFlags( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR QueryPipelineStatisticFlags operator^( QueryPipelineStatisticFlagBits bit0, QueryPipelineStatisticFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return QueryPipelineStatisticFlags( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR QueryPipelineStatisticFlags operator~( QueryPipelineStatisticFlagBits bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( QueryPipelineStatisticFlags( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( QueryPipelineStatisticFlags value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & QueryPipelineStatisticFlagBits::eInputAssemblyVertices ) result += "InputAssemblyVertices | ";
- if ( value & QueryPipelineStatisticFlagBits::eInputAssemblyPrimitives ) result += "InputAssemblyPrimitives | ";
- if ( value & QueryPipelineStatisticFlagBits::eVertexShaderInvocations ) result += "VertexShaderInvocations | ";
- if ( value & QueryPipelineStatisticFlagBits::eGeometryShaderInvocations ) result += "GeometryShaderInvocations | ";
- if ( value & QueryPipelineStatisticFlagBits::eGeometryShaderPrimitives ) result += "GeometryShaderPrimitives | ";
- if ( value & QueryPipelineStatisticFlagBits::eClippingInvocations ) result += "ClippingInvocations | ";
- if ( value & QueryPipelineStatisticFlagBits::eClippingPrimitives ) result += "ClippingPrimitives | ";
- if ( value & QueryPipelineStatisticFlagBits::eFragmentShaderInvocations ) result += "FragmentShaderInvocations | ";
- if ( value & QueryPipelineStatisticFlagBits::eTessellationControlShaderPatches ) result += "TessellationControlShaderPatches | ";
- if ( value & QueryPipelineStatisticFlagBits::eTessellationEvaluationShaderInvocations ) result += "TessellationEvaluationShaderInvocations | ";
- if ( value & QueryPipelineStatisticFlagBits::eComputeShaderInvocations ) result += "ComputeShaderInvocations | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-
- using QueryPoolCreateFlags = Flags<QueryPoolCreateFlagBits>;
-
- VULKAN_HPP_INLINE std::string to_string( QueryPoolCreateFlags )
- {
-
- return "{}";
- }
-
-
- using QueryResultFlags = Flags<QueryResultFlagBits>;
-
- template <> struct FlagTraits<QueryResultFlagBits>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(QueryResultFlagBits::e64) | VkFlags(QueryResultFlagBits::eWait) | VkFlags(QueryResultFlagBits::eWithAvailability) | VkFlags(QueryResultFlagBits::ePartial)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR QueryResultFlags operator|( QueryResultFlagBits bit0, QueryResultFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return QueryResultFlags( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR QueryResultFlags operator&( QueryResultFlagBits bit0, QueryResultFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return QueryResultFlags( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR QueryResultFlags operator^( QueryResultFlagBits bit0, QueryResultFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return QueryResultFlags( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR QueryResultFlags operator~( QueryResultFlagBits bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( QueryResultFlags( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( QueryResultFlags value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & QueryResultFlagBits::e64 ) result += "64 | ";
- if ( value & QueryResultFlagBits::eWait ) result += "Wait | ";
- if ( value & QueryResultFlagBits::eWithAvailability ) result += "WithAvailability | ";
- if ( value & QueryResultFlagBits::ePartial ) result += "Partial | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-
- using QueueFlags = Flags<QueueFlagBits>;
-
- template <> struct FlagTraits<QueueFlagBits>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(QueueFlagBits::eGraphics) | VkFlags(QueueFlagBits::eCompute) | VkFlags(QueueFlagBits::eTransfer) | VkFlags(QueueFlagBits::eSparseBinding) | VkFlags(QueueFlagBits::eProtected)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR QueueFlags operator|( QueueFlagBits bit0, QueueFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return QueueFlags( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR QueueFlags operator&( QueueFlagBits bit0, QueueFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return QueueFlags( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR QueueFlags operator^( QueueFlagBits bit0, QueueFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return QueueFlags( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR QueueFlags operator~( QueueFlagBits bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( QueueFlags( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( QueueFlags value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & QueueFlagBits::eGraphics ) result += "Graphics | ";
- if ( value & QueueFlagBits::eCompute ) result += "Compute | ";
- if ( value & QueueFlagBits::eTransfer ) result += "Transfer | ";
- if ( value & QueueFlagBits::eSparseBinding ) result += "SparseBinding | ";
- if ( value & QueueFlagBits::eProtected ) result += "Protected | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-
- using RenderPassCreateFlags = Flags<RenderPassCreateFlagBits>;
-
- template <> struct FlagTraits<RenderPassCreateFlagBits>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(RenderPassCreateFlagBits::eTransformQCOM)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR RenderPassCreateFlags operator|( RenderPassCreateFlagBits bit0, RenderPassCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return RenderPassCreateFlags( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR RenderPassCreateFlags operator&( RenderPassCreateFlagBits bit0, RenderPassCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return RenderPassCreateFlags( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR RenderPassCreateFlags operator^( RenderPassCreateFlagBits bit0, RenderPassCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return RenderPassCreateFlags( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR RenderPassCreateFlags operator~( RenderPassCreateFlagBits bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( RenderPassCreateFlags( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( RenderPassCreateFlags value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & RenderPassCreateFlagBits::eTransformQCOM ) result += "TransformQCOM | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-
- using ResolveModeFlags = Flags<ResolveModeFlagBits>;
-
- template <> struct FlagTraits<ResolveModeFlagBits>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(ResolveModeFlagBits::eNone) | VkFlags(ResolveModeFlagBits::eSampleZero) | VkFlags(ResolveModeFlagBits::eAverage) | VkFlags(ResolveModeFlagBits::eMin) | VkFlags(ResolveModeFlagBits::eMax)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ResolveModeFlags operator|( ResolveModeFlagBits bit0, ResolveModeFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return ResolveModeFlags( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ResolveModeFlags operator&( ResolveModeFlagBits bit0, ResolveModeFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return ResolveModeFlags( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ResolveModeFlags operator^( ResolveModeFlagBits bit0, ResolveModeFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return ResolveModeFlags( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ResolveModeFlags operator~( ResolveModeFlagBits bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( ResolveModeFlags( bits ) );
- }
-
- using ResolveModeFlagsKHR = ResolveModeFlags;
-
- VULKAN_HPP_INLINE std::string to_string( ResolveModeFlags value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & ResolveModeFlagBits::eSampleZero ) result += "SampleZero | ";
- if ( value & ResolveModeFlagBits::eAverage ) result += "Average | ";
- if ( value & ResolveModeFlagBits::eMin ) result += "Min | ";
- if ( value & ResolveModeFlagBits::eMax ) result += "Max | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-
- using SampleCountFlags = Flags<SampleCountFlagBits>;
-
- template <> struct FlagTraits<SampleCountFlagBits>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(SampleCountFlagBits::e1) | VkFlags(SampleCountFlagBits::e2) | VkFlags(SampleCountFlagBits::e4) | VkFlags(SampleCountFlagBits::e8) | VkFlags(SampleCountFlagBits::e16) | VkFlags(SampleCountFlagBits::e32) | VkFlags(SampleCountFlagBits::e64)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SampleCountFlags operator|( SampleCountFlagBits bit0, SampleCountFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return SampleCountFlags( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SampleCountFlags operator&( SampleCountFlagBits bit0, SampleCountFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return SampleCountFlags( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SampleCountFlags operator^( SampleCountFlagBits bit0, SampleCountFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return SampleCountFlags( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SampleCountFlags operator~( SampleCountFlagBits bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( SampleCountFlags( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( SampleCountFlags value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & SampleCountFlagBits::e1 ) result += "1 | ";
- if ( value & SampleCountFlagBits::e2 ) result += "2 | ";
- if ( value & SampleCountFlagBits::e4 ) result += "4 | ";
- if ( value & SampleCountFlagBits::e8 ) result += "8 | ";
- if ( value & SampleCountFlagBits::e16 ) result += "16 | ";
- if ( value & SampleCountFlagBits::e32 ) result += "32 | ";
- if ( value & SampleCountFlagBits::e64 ) result += "64 | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-
- using SamplerCreateFlags = Flags<SamplerCreateFlagBits>;
-
- template <> struct FlagTraits<SamplerCreateFlagBits>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(SamplerCreateFlagBits::eSubsampledEXT) | VkFlags(SamplerCreateFlagBits::eSubsampledCoarseReconstructionEXT)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SamplerCreateFlags operator|( SamplerCreateFlagBits bit0, SamplerCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return SamplerCreateFlags( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SamplerCreateFlags operator&( SamplerCreateFlagBits bit0, SamplerCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return SamplerCreateFlags( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SamplerCreateFlags operator^( SamplerCreateFlagBits bit0, SamplerCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return SamplerCreateFlags( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SamplerCreateFlags operator~( SamplerCreateFlagBits bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( SamplerCreateFlags( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( SamplerCreateFlags value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & SamplerCreateFlagBits::eSubsampledEXT ) result += "SubsampledEXT | ";
- if ( value & SamplerCreateFlagBits::eSubsampledCoarseReconstructionEXT ) result += "SubsampledCoarseReconstructionEXT | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
- enum class SemaphoreCreateFlagBits : VkFlags
- {};
-
- VULKAN_HPP_INLINE std::string to_string( SemaphoreCreateFlagBits )
- {
- return "(void)";
- }
-
- using SemaphoreCreateFlags = Flags<SemaphoreCreateFlagBits>;
-
- VULKAN_HPP_INLINE std::string to_string( SemaphoreCreateFlags )
- {
-
- return "{}";
- }
-
-
- using SemaphoreImportFlags = Flags<SemaphoreImportFlagBits>;
-
- template <> struct FlagTraits<SemaphoreImportFlagBits>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(SemaphoreImportFlagBits::eTemporary)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SemaphoreImportFlags operator|( SemaphoreImportFlagBits bit0, SemaphoreImportFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return SemaphoreImportFlags( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SemaphoreImportFlags operator&( SemaphoreImportFlagBits bit0, SemaphoreImportFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return SemaphoreImportFlags( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SemaphoreImportFlags operator^( SemaphoreImportFlagBits bit0, SemaphoreImportFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return SemaphoreImportFlags( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SemaphoreImportFlags operator~( SemaphoreImportFlagBits bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( SemaphoreImportFlags( bits ) );
- }
-
- using SemaphoreImportFlagsKHR = SemaphoreImportFlags;
-
- VULKAN_HPP_INLINE std::string to_string( SemaphoreImportFlags value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & SemaphoreImportFlagBits::eTemporary ) result += "Temporary | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-
- using SemaphoreWaitFlags = Flags<SemaphoreWaitFlagBits>;
-
- template <> struct FlagTraits<SemaphoreWaitFlagBits>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(SemaphoreWaitFlagBits::eAny)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SemaphoreWaitFlags operator|( SemaphoreWaitFlagBits bit0, SemaphoreWaitFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return SemaphoreWaitFlags( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SemaphoreWaitFlags operator&( SemaphoreWaitFlagBits bit0, SemaphoreWaitFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return SemaphoreWaitFlags( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SemaphoreWaitFlags operator^( SemaphoreWaitFlagBits bit0, SemaphoreWaitFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return SemaphoreWaitFlags( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SemaphoreWaitFlags operator~( SemaphoreWaitFlagBits bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( SemaphoreWaitFlags( bits ) );
- }
-
- using SemaphoreWaitFlagsKHR = SemaphoreWaitFlags;
-
- VULKAN_HPP_INLINE std::string to_string( SemaphoreWaitFlags value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & SemaphoreWaitFlagBits::eAny ) result += "Any | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-
- using ShaderCorePropertiesFlagsAMD = Flags<ShaderCorePropertiesFlagBitsAMD>;
-
- VULKAN_HPP_INLINE std::string to_string( ShaderCorePropertiesFlagsAMD )
- {
-
- return "{}";
- }
-
-
- using ShaderModuleCreateFlags = Flags<ShaderModuleCreateFlagBits>;
-
- VULKAN_HPP_INLINE std::string to_string( ShaderModuleCreateFlags )
- {
-
- return "{}";
- }
-
-
- using ShaderStageFlags = Flags<ShaderStageFlagBits>;
-
- template <> struct FlagTraits<ShaderStageFlagBits>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(ShaderStageFlagBits::eVertex) | VkFlags(ShaderStageFlagBits::eTessellationControl) | VkFlags(ShaderStageFlagBits::eTessellationEvaluation) | VkFlags(ShaderStageFlagBits::eGeometry) | VkFlags(ShaderStageFlagBits::eFragment) | VkFlags(ShaderStageFlagBits::eCompute) | VkFlags(ShaderStageFlagBits::eAllGraphics) | VkFlags(ShaderStageFlagBits::eAll) | VkFlags(ShaderStageFlagBits::eRaygenKHR) | VkFlags(ShaderStageFlagBits::eAnyHitKHR) | VkFlags(ShaderStageFlagBits::eClosestHitKHR) | VkFlags(ShaderStageFlagBits::eMissKHR) | VkFlags(ShaderStageFlagBits::eIntersectionKHR) | VkFlags(ShaderStageFlagBits::eCallableKHR) | VkFlags(ShaderStageFlagBits::eTaskNV) | VkFlags(ShaderStageFlagBits::eMeshNV)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ShaderStageFlags operator|( ShaderStageFlagBits bit0, ShaderStageFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return ShaderStageFlags( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ShaderStageFlags operator&( ShaderStageFlagBits bit0, ShaderStageFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return ShaderStageFlags( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ShaderStageFlags operator^( ShaderStageFlagBits bit0, ShaderStageFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return ShaderStageFlags( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ShaderStageFlags operator~( ShaderStageFlagBits bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( ShaderStageFlags( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( ShaderStageFlags value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & ShaderStageFlagBits::eVertex ) result += "Vertex | ";
- if ( value & ShaderStageFlagBits::eTessellationControl ) result += "TessellationControl | ";
- if ( value & ShaderStageFlagBits::eTessellationEvaluation ) result += "TessellationEvaluation | ";
- if ( value & ShaderStageFlagBits::eGeometry ) result += "Geometry | ";
- if ( value & ShaderStageFlagBits::eFragment ) result += "Fragment | ";
- if ( value & ShaderStageFlagBits::eCompute ) result += "Compute | ";
- if ( value & ShaderStageFlagBits::eRaygenKHR ) result += "RaygenKHR | ";
- if ( value & ShaderStageFlagBits::eAnyHitKHR ) result += "AnyHitKHR | ";
- if ( value & ShaderStageFlagBits::eClosestHitKHR ) result += "ClosestHitKHR | ";
- if ( value & ShaderStageFlagBits::eMissKHR ) result += "MissKHR | ";
- if ( value & ShaderStageFlagBits::eIntersectionKHR ) result += "IntersectionKHR | ";
- if ( value & ShaderStageFlagBits::eCallableKHR ) result += "CallableKHR | ";
- if ( value & ShaderStageFlagBits::eTaskNV ) result += "TaskNV | ";
- if ( value & ShaderStageFlagBits::eMeshNV ) result += "MeshNV | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-
- using SparseImageFormatFlags = Flags<SparseImageFormatFlagBits>;
-
- template <> struct FlagTraits<SparseImageFormatFlagBits>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(SparseImageFormatFlagBits::eSingleMiptail) | VkFlags(SparseImageFormatFlagBits::eAlignedMipSize) | VkFlags(SparseImageFormatFlagBits::eNonstandardBlockSize)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SparseImageFormatFlags operator|( SparseImageFormatFlagBits bit0, SparseImageFormatFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return SparseImageFormatFlags( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SparseImageFormatFlags operator&( SparseImageFormatFlagBits bit0, SparseImageFormatFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return SparseImageFormatFlags( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SparseImageFormatFlags operator^( SparseImageFormatFlagBits bit0, SparseImageFormatFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return SparseImageFormatFlags( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SparseImageFormatFlags operator~( SparseImageFormatFlagBits bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( SparseImageFormatFlags( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( SparseImageFormatFlags value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & SparseImageFormatFlagBits::eSingleMiptail ) result += "SingleMiptail | ";
- if ( value & SparseImageFormatFlagBits::eAlignedMipSize ) result += "AlignedMipSize | ";
- if ( value & SparseImageFormatFlagBits::eNonstandardBlockSize ) result += "NonstandardBlockSize | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-
- using SparseMemoryBindFlags = Flags<SparseMemoryBindFlagBits>;
-
- template <> struct FlagTraits<SparseMemoryBindFlagBits>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(SparseMemoryBindFlagBits::eMetadata)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SparseMemoryBindFlags operator|( SparseMemoryBindFlagBits bit0, SparseMemoryBindFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return SparseMemoryBindFlags( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SparseMemoryBindFlags operator&( SparseMemoryBindFlagBits bit0, SparseMemoryBindFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return SparseMemoryBindFlags( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SparseMemoryBindFlags operator^( SparseMemoryBindFlagBits bit0, SparseMemoryBindFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return SparseMemoryBindFlags( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SparseMemoryBindFlags operator~( SparseMemoryBindFlagBits bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( SparseMemoryBindFlags( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( SparseMemoryBindFlags value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & SparseMemoryBindFlagBits::eMetadata ) result += "Metadata | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-
- using StencilFaceFlags = Flags<StencilFaceFlagBits>;
-
- template <> struct FlagTraits<StencilFaceFlagBits>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(StencilFaceFlagBits::eFront) | VkFlags(StencilFaceFlagBits::eBack) | VkFlags(StencilFaceFlagBits::eFrontAndBack)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR StencilFaceFlags operator|( StencilFaceFlagBits bit0, StencilFaceFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return StencilFaceFlags( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR StencilFaceFlags operator&( StencilFaceFlagBits bit0, StencilFaceFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return StencilFaceFlags( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR StencilFaceFlags operator^( StencilFaceFlagBits bit0, StencilFaceFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return StencilFaceFlags( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR StencilFaceFlags operator~( StencilFaceFlagBits bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( StencilFaceFlags( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( StencilFaceFlags value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & StencilFaceFlagBits::eFront ) result += "Front | ";
- if ( value & StencilFaceFlagBits::eBack ) result += "Back | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-#ifdef VK_USE_PLATFORM_GGP
- enum class StreamDescriptorSurfaceCreateFlagBitsGGP : VkFlags
- {};
-
- VULKAN_HPP_INLINE std::string to_string( StreamDescriptorSurfaceCreateFlagBitsGGP )
- {
- return "(void)";
- }
-
- using StreamDescriptorSurfaceCreateFlagsGGP = Flags<StreamDescriptorSurfaceCreateFlagBitsGGP>;
-
- VULKAN_HPP_INLINE std::string to_string( StreamDescriptorSurfaceCreateFlagsGGP )
- {
-
- return "{}";
- }
-#endif /*VK_USE_PLATFORM_GGP*/
-
-
- using SubgroupFeatureFlags = Flags<SubgroupFeatureFlagBits>;
-
- template <> struct FlagTraits<SubgroupFeatureFlagBits>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(SubgroupFeatureFlagBits::eBasic) | VkFlags(SubgroupFeatureFlagBits::eVote) | VkFlags(SubgroupFeatureFlagBits::eArithmetic) | VkFlags(SubgroupFeatureFlagBits::eBallot) | VkFlags(SubgroupFeatureFlagBits::eShuffle) | VkFlags(SubgroupFeatureFlagBits::eShuffleRelative) | VkFlags(SubgroupFeatureFlagBits::eClustered) | VkFlags(SubgroupFeatureFlagBits::eQuad) | VkFlags(SubgroupFeatureFlagBits::ePartitionedNV)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SubgroupFeatureFlags operator|( SubgroupFeatureFlagBits bit0, SubgroupFeatureFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return SubgroupFeatureFlags( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SubgroupFeatureFlags operator&( SubgroupFeatureFlagBits bit0, SubgroupFeatureFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return SubgroupFeatureFlags( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SubgroupFeatureFlags operator^( SubgroupFeatureFlagBits bit0, SubgroupFeatureFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return SubgroupFeatureFlags( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SubgroupFeatureFlags operator~( SubgroupFeatureFlagBits bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( SubgroupFeatureFlags( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( SubgroupFeatureFlags value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & SubgroupFeatureFlagBits::eBasic ) result += "Basic | ";
- if ( value & SubgroupFeatureFlagBits::eVote ) result += "Vote | ";
- if ( value & SubgroupFeatureFlagBits::eArithmetic ) result += "Arithmetic | ";
- if ( value & SubgroupFeatureFlagBits::eBallot ) result += "Ballot | ";
- if ( value & SubgroupFeatureFlagBits::eShuffle ) result += "Shuffle | ";
- if ( value & SubgroupFeatureFlagBits::eShuffleRelative ) result += "ShuffleRelative | ";
- if ( value & SubgroupFeatureFlagBits::eClustered ) result += "Clustered | ";
- if ( value & SubgroupFeatureFlagBits::eQuad ) result += "Quad | ";
- if ( value & SubgroupFeatureFlagBits::ePartitionedNV ) result += "PartitionedNV | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-
- using SubpassDescriptionFlags = Flags<SubpassDescriptionFlagBits>;
-
- template <> struct FlagTraits<SubpassDescriptionFlagBits>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(SubpassDescriptionFlagBits::ePerViewAttributesNVX) | VkFlags(SubpassDescriptionFlagBits::ePerViewPositionXOnlyNVX) | VkFlags(SubpassDescriptionFlagBits::eFragmentRegionQCOM) | VkFlags(SubpassDescriptionFlagBits::eShaderResolveQCOM)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SubpassDescriptionFlags operator|( SubpassDescriptionFlagBits bit0, SubpassDescriptionFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return SubpassDescriptionFlags( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SubpassDescriptionFlags operator&( SubpassDescriptionFlagBits bit0, SubpassDescriptionFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return SubpassDescriptionFlags( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SubpassDescriptionFlags operator^( SubpassDescriptionFlagBits bit0, SubpassDescriptionFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return SubpassDescriptionFlags( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SubpassDescriptionFlags operator~( SubpassDescriptionFlagBits bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( SubpassDescriptionFlags( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( SubpassDescriptionFlags value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & SubpassDescriptionFlagBits::ePerViewAttributesNVX ) result += "PerViewAttributesNVX | ";
- if ( value & SubpassDescriptionFlagBits::ePerViewPositionXOnlyNVX ) result += "PerViewPositionXOnlyNVX | ";
- if ( value & SubpassDescriptionFlagBits::eFragmentRegionQCOM ) result += "FragmentRegionQCOM | ";
- if ( value & SubpassDescriptionFlagBits::eShaderResolveQCOM ) result += "ShaderResolveQCOM | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-
- using SurfaceCounterFlagsEXT = Flags<SurfaceCounterFlagBitsEXT>;
-
- template <> struct FlagTraits<SurfaceCounterFlagBitsEXT>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(SurfaceCounterFlagBitsEXT::eVblank)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SurfaceCounterFlagsEXT operator|( SurfaceCounterFlagBitsEXT bit0, SurfaceCounterFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return SurfaceCounterFlagsEXT( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SurfaceCounterFlagsEXT operator&( SurfaceCounterFlagBitsEXT bit0, SurfaceCounterFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return SurfaceCounterFlagsEXT( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SurfaceCounterFlagsEXT operator^( SurfaceCounterFlagBitsEXT bit0, SurfaceCounterFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return SurfaceCounterFlagsEXT( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SurfaceCounterFlagsEXT operator~( SurfaceCounterFlagBitsEXT bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( SurfaceCounterFlagsEXT( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( SurfaceCounterFlagsEXT value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & SurfaceCounterFlagBitsEXT::eVblank ) result += "Vblank | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-
- using SurfaceTransformFlagsKHR = Flags<SurfaceTransformFlagBitsKHR>;
-
- template <> struct FlagTraits<SurfaceTransformFlagBitsKHR>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(SurfaceTransformFlagBitsKHR::eIdentity) | VkFlags(SurfaceTransformFlagBitsKHR::eRotate90) | VkFlags(SurfaceTransformFlagBitsKHR::eRotate180) | VkFlags(SurfaceTransformFlagBitsKHR::eRotate270) | VkFlags(SurfaceTransformFlagBitsKHR::eHorizontalMirror) | VkFlags(SurfaceTransformFlagBitsKHR::eHorizontalMirrorRotate90) | VkFlags(SurfaceTransformFlagBitsKHR::eHorizontalMirrorRotate180) | VkFlags(SurfaceTransformFlagBitsKHR::eHorizontalMirrorRotate270) | VkFlags(SurfaceTransformFlagBitsKHR::eInherit)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SurfaceTransformFlagsKHR operator|( SurfaceTransformFlagBitsKHR bit0, SurfaceTransformFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return SurfaceTransformFlagsKHR( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SurfaceTransformFlagsKHR operator&( SurfaceTransformFlagBitsKHR bit0, SurfaceTransformFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return SurfaceTransformFlagsKHR( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SurfaceTransformFlagsKHR operator^( SurfaceTransformFlagBitsKHR bit0, SurfaceTransformFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return SurfaceTransformFlagsKHR( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SurfaceTransformFlagsKHR operator~( SurfaceTransformFlagBitsKHR bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( SurfaceTransformFlagsKHR( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( SurfaceTransformFlagsKHR value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & SurfaceTransformFlagBitsKHR::eIdentity ) result += "Identity | ";
- if ( value & SurfaceTransformFlagBitsKHR::eRotate90 ) result += "Rotate90 | ";
- if ( value & SurfaceTransformFlagBitsKHR::eRotate180 ) result += "Rotate180 | ";
- if ( value & SurfaceTransformFlagBitsKHR::eRotate270 ) result += "Rotate270 | ";
- if ( value & SurfaceTransformFlagBitsKHR::eHorizontalMirror ) result += "HorizontalMirror | ";
- if ( value & SurfaceTransformFlagBitsKHR::eHorizontalMirrorRotate90 ) result += "HorizontalMirrorRotate90 | ";
- if ( value & SurfaceTransformFlagBitsKHR::eHorizontalMirrorRotate180 ) result += "HorizontalMirrorRotate180 | ";
- if ( value & SurfaceTransformFlagBitsKHR::eHorizontalMirrorRotate270 ) result += "HorizontalMirrorRotate270 | ";
- if ( value & SurfaceTransformFlagBitsKHR::eInherit ) result += "Inherit | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-
- using SwapchainCreateFlagsKHR = Flags<SwapchainCreateFlagBitsKHR>;
-
- template <> struct FlagTraits<SwapchainCreateFlagBitsKHR>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(SwapchainCreateFlagBitsKHR::eSplitInstanceBindRegions) | VkFlags(SwapchainCreateFlagBitsKHR::eProtected) | VkFlags(SwapchainCreateFlagBitsKHR::eMutableFormat)
- };
- };
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SwapchainCreateFlagsKHR operator|( SwapchainCreateFlagBitsKHR bit0, SwapchainCreateFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return SwapchainCreateFlagsKHR( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SwapchainCreateFlagsKHR operator&( SwapchainCreateFlagBitsKHR bit0, SwapchainCreateFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return SwapchainCreateFlagsKHR( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SwapchainCreateFlagsKHR operator^( SwapchainCreateFlagBitsKHR bit0, SwapchainCreateFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return SwapchainCreateFlagsKHR( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SwapchainCreateFlagsKHR operator~( SwapchainCreateFlagBitsKHR bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( SwapchainCreateFlagsKHR( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( SwapchainCreateFlagsKHR value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & SwapchainCreateFlagBitsKHR::eSplitInstanceBindRegions ) result += "SplitInstanceBindRegions | ";
- if ( value & SwapchainCreateFlagBitsKHR::eProtected ) result += "Protected | ";
- if ( value & SwapchainCreateFlagBitsKHR::eMutableFormat ) result += "MutableFormat | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
-
- using ToolPurposeFlagsEXT = Flags<ToolPurposeFlagBitsEXT>;
-
- template <> struct FlagTraits<ToolPurposeFlagBitsEXT>
- {
- enum : VkFlags
- {
- allFlags = VkFlags(ToolPurposeFlagBitsEXT::eValidation) | VkFlags(ToolPurposeFlagBitsEXT::eProfiling) | VkFlags(ToolPurposeFlagBitsEXT::eTracing) | VkFlags(ToolPurposeFlagBitsEXT::eAdditionalFeatures) | VkFlags(ToolPurposeFlagBitsEXT::eModifyingFeatures) | VkFlags(ToolPurposeFlagBitsEXT::eDebugReporting) | VkFlags(ToolPurposeFlagBitsEXT::eDebugMarkers)
- };
+ private:
+ OwnerType m_owner = OwnerType();
+ PoolType m_pool = PoolType();
+ Dispatch const * m_dispatch = nullptr;
};
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ToolPurposeFlagsEXT operator|( ToolPurposeFlagBitsEXT bit0, ToolPurposeFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return ToolPurposeFlagsEXT( bit0 ) | bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ToolPurposeFlagsEXT operator&( ToolPurposeFlagBitsEXT bit0, ToolPurposeFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return ToolPurposeFlagsEXT( bit0 ) & bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ToolPurposeFlagsEXT operator^( ToolPurposeFlagBitsEXT bit0, ToolPurposeFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
- {
- return ToolPurposeFlagsEXT( bit0 ) ^ bit1;
- }
-
- VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ToolPurposeFlagsEXT operator~( ToolPurposeFlagBitsEXT bits ) VULKAN_HPP_NOEXCEPT
- {
- return ~( ToolPurposeFlagsEXT( bits ) );
- }
-
- VULKAN_HPP_INLINE std::string to_string( ToolPurposeFlagsEXT value )
- {
-
- if ( !value ) return "{}";
- std::string result;
-
- if ( value & ToolPurposeFlagBitsEXT::eValidation ) result += "Validation | ";
- if ( value & ToolPurposeFlagBitsEXT::eProfiling ) result += "Profiling | ";
- if ( value & ToolPurposeFlagBitsEXT::eTracing ) result += "Tracing | ";
- if ( value & ToolPurposeFlagBitsEXT::eAdditionalFeatures ) result += "AdditionalFeatures | ";
- if ( value & ToolPurposeFlagBitsEXT::eModifyingFeatures ) result += "ModifyingFeatures | ";
- if ( value & ToolPurposeFlagBitsEXT::eDebugReporting ) result += "DebugReporting | ";
- if ( value & ToolPurposeFlagBitsEXT::eDebugMarkers ) result += "DebugMarkers | ";
- return "{ " + result.substr(0, result.size() - 3) + " }";
- }
-
- enum class ValidationCacheCreateFlagBitsEXT : VkFlags
- {};
-
- VULKAN_HPP_INLINE std::string to_string( ValidationCacheCreateFlagBitsEXT )
- {
- return "(void)";
- }
-
- using ValidationCacheCreateFlagsEXT = Flags<ValidationCacheCreateFlagBitsEXT>;
-
- VULKAN_HPP_INLINE std::string to_string( ValidationCacheCreateFlagsEXT )
- {
-
- return "{}";
- }
-
-#ifdef VK_USE_PLATFORM_VI_NN
- enum class ViSurfaceCreateFlagBitsNN : VkFlags
- {};
-
- VULKAN_HPP_INLINE std::string to_string( ViSurfaceCreateFlagBitsNN )
- {
- return "(void)";
- }
-
- using ViSurfaceCreateFlagsNN = Flags<ViSurfaceCreateFlagBitsNN>;
-
- VULKAN_HPP_INLINE std::string to_string( ViSurfaceCreateFlagsNN )
- {
-
- return "{}";
- }
-#endif /*VK_USE_PLATFORM_VI_NN*/
-
-#ifdef VK_USE_PLATFORM_WAYLAND_KHR
- enum class WaylandSurfaceCreateFlagBitsKHR : VkFlags
- {};
-
- VULKAN_HPP_INLINE std::string to_string( WaylandSurfaceCreateFlagBitsKHR )
- {
- return "(void)";
- }
-
- using WaylandSurfaceCreateFlagsKHR = Flags<WaylandSurfaceCreateFlagBitsKHR>;
-
- VULKAN_HPP_INLINE std::string to_string( WaylandSurfaceCreateFlagsKHR )
- {
-
- return "{}";
- }
-#endif /*VK_USE_PLATFORM_WAYLAND_KHR*/
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- enum class Win32SurfaceCreateFlagBitsKHR : VkFlags
- {};
-
- VULKAN_HPP_INLINE std::string to_string( Win32SurfaceCreateFlagBitsKHR )
- {
- return "(void)";
- }
-
- using Win32SurfaceCreateFlagsKHR = Flags<Win32SurfaceCreateFlagBitsKHR>;
-
- VULKAN_HPP_INLINE std::string to_string( Win32SurfaceCreateFlagsKHR )
- {
-
- return "{}";
- }
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-
-#ifdef VK_USE_PLATFORM_XCB_KHR
- enum class XcbSurfaceCreateFlagBitsKHR : VkFlags
- {};
-
- VULKAN_HPP_INLINE std::string to_string( XcbSurfaceCreateFlagBitsKHR )
- {
- return "(void)";
- }
-
- using XcbSurfaceCreateFlagsKHR = Flags<XcbSurfaceCreateFlagBitsKHR>;
-
- VULKAN_HPP_INLINE std::string to_string( XcbSurfaceCreateFlagsKHR )
- {
-
- return "{}";
- }
-#endif /*VK_USE_PLATFORM_XCB_KHR*/
-
-#ifdef VK_USE_PLATFORM_XLIB_KHR
- enum class XlibSurfaceCreateFlagBitsKHR : VkFlags
- {};
-
- VULKAN_HPP_INLINE std::string to_string( XlibSurfaceCreateFlagBitsKHR )
- {
- return "(void)";
- }
-
- using XlibSurfaceCreateFlagsKHR = Flags<XlibSurfaceCreateFlagBitsKHR>;
-
- VULKAN_HPP_INLINE std::string to_string( XlibSurfaceCreateFlagsKHR )
- {
+ using Bool32 = uint32_t;
+ using DeviceAddress = uint64_t;
+ using DeviceSize = uint64_t;
+ using SampleMask = uint32_t;
+} // namespace VULKAN_HPP_NAMESPACE
- return "{}";
- }
-#endif /*VK_USE_PLATFORM_XLIB_KHR*/
-} // namespace VULKAN_HPP_NAMESPACE
+#include <vulkan/vulkan_enums.hpp>
#ifndef VULKAN_HPP_NO_EXCEPTIONS
namespace std
@@ -13846,309 +5709,365 @@ namespace std
template <>
struct is_error_code_enum<VULKAN_HPP_NAMESPACE::Result> : public true_type
{};
-}
+} // namespace std
#endif
namespace VULKAN_HPP_NAMESPACE
{
#ifndef VULKAN_HPP_NO_EXCEPTIONS
+
class ErrorCategoryImpl : public std::error_category
{
- public:
- virtual const char* name() const VULKAN_HPP_NOEXCEPT override { return VULKAN_HPP_NAMESPACE_STRING"::Result"; }
- virtual std::string message(int ev) const override { return to_string(static_cast<Result>(ev)); }
+ public:
+ virtual const char * name() const VULKAN_HPP_NOEXCEPT override
+ {
+ return VULKAN_HPP_NAMESPACE_STRING "::Result";
+ }
+ virtual std::string message( int ev ) const override
+ {
+ return to_string( static_cast<Result>( ev ) );
+ }
};
class Error
{
- public:
- Error() VULKAN_HPP_NOEXCEPT = default;
- Error(const Error&) VULKAN_HPP_NOEXCEPT = default;
- virtual ~Error() VULKAN_HPP_NOEXCEPT = default;
+ public:
+ Error() VULKAN_HPP_NOEXCEPT = default;
+ Error( const Error & ) VULKAN_HPP_NOEXCEPT = default;
+ virtual ~Error() VULKAN_HPP_NOEXCEPT = default;
- virtual const char* what() const VULKAN_HPP_NOEXCEPT = 0;
+ virtual const char * what() const VULKAN_HPP_NOEXCEPT = 0;
};
- class LogicError : public Error, public std::logic_error
+ class LogicError
+ : public Error
+ , public std::logic_error
{
- public:
- explicit LogicError( const std::string& what )
- : Error(), std::logic_error(what) {}
- explicit LogicError( char const * what )
- : Error(), std::logic_error(what) {}
+ public:
+ explicit LogicError( const std::string & what ) : Error(), std::logic_error( what ) {}
+ explicit LogicError( char const * what ) : Error(), std::logic_error( what ) {}
- virtual const char* what() const VULKAN_HPP_NOEXCEPT { return std::logic_error::what(); }
+ virtual const char * what() const VULKAN_HPP_NOEXCEPT
+ {
+ return std::logic_error::what();
+ }
};
- class SystemError : public Error, public std::system_error
+ class SystemError
+ : public Error
+ , public std::system_error
{
- public:
- SystemError( std::error_code ec )
- : Error(), std::system_error(ec) {}
- SystemError( std::error_code ec, std::string const& what )
- : Error(), std::system_error(ec, what) {}
- SystemError( std::error_code ec, char const * what )
- : Error(), std::system_error(ec, what) {}
- SystemError( int ev, std::error_category const& ecat )
- : Error(), std::system_error(ev, ecat) {}
- SystemError( int ev, std::error_category const& ecat, std::string const& what)
- : Error(), std::system_error(ev, ecat, what) {}
- SystemError( int ev, std::error_category const& ecat, char const * what)
- : Error(), std::system_error(ev, ecat, what) {}
+ public:
+ SystemError( std::error_code ec ) : Error(), std::system_error( ec ) {}
+ SystemError( std::error_code ec, std::string const & what ) : Error(), std::system_error( ec, what ) {}
+ SystemError( std::error_code ec, char const * what ) : Error(), std::system_error( ec, what ) {}
+ SystemError( int ev, std::error_category const & ecat ) : Error(), std::system_error( ev, ecat ) {}
+ SystemError( int ev, std::error_category const & ecat, std::string const & what )
+ : Error(), std::system_error( ev, ecat, what )
+ {}
+ SystemError( int ev, std::error_category const & ecat, char const * what )
+ : Error(), std::system_error( ev, ecat, what )
+ {}
- virtual const char* what() const VULKAN_HPP_NOEXCEPT { return std::system_error::what(); }
+ virtual const char * what() const VULKAN_HPP_NOEXCEPT
+ {
+ return std::system_error::what();
+ }
};
- VULKAN_HPP_INLINE const std::error_category& errorCategory() VULKAN_HPP_NOEXCEPT
+ VULKAN_HPP_INLINE const std::error_category & errorCategory() VULKAN_HPP_NOEXCEPT
{
static ErrorCategoryImpl instance;
return instance;
}
- VULKAN_HPP_INLINE std::error_code make_error_code(Result e) VULKAN_HPP_NOEXCEPT
+ VULKAN_HPP_INLINE std::error_code make_error_code( Result e ) VULKAN_HPP_NOEXCEPT
{
- return std::error_code(static_cast<int>(e), errorCategory());
+ return std::error_code( static_cast<int>( e ), errorCategory() );
}
- VULKAN_HPP_INLINE std::error_condition make_error_condition(Result e) VULKAN_HPP_NOEXCEPT
+ VULKAN_HPP_INLINE std::error_condition make_error_condition( Result e ) VULKAN_HPP_NOEXCEPT
{
- return std::error_condition(static_cast<int>(e), errorCategory());
+ return std::error_condition( static_cast<int>( e ), errorCategory() );
}
class OutOfHostMemoryError : public SystemError
{
public:
- OutOfHostMemoryError( std::string const& message )
- : SystemError( make_error_code( Result::eErrorOutOfHostMemory ), message ) {}
+ OutOfHostMemoryError( std::string const & message )
+ : SystemError( make_error_code( Result::eErrorOutOfHostMemory ), message )
+ {}
OutOfHostMemoryError( char const * message )
- : SystemError( make_error_code( Result::eErrorOutOfHostMemory ), message ) {}
+ : SystemError( make_error_code( Result::eErrorOutOfHostMemory ), message )
+ {}
};
class OutOfDeviceMemoryError : public SystemError
{
public:
- OutOfDeviceMemoryError( std::string const& message )
- : SystemError( make_error_code( Result::eErrorOutOfDeviceMemory ), message ) {}
+ OutOfDeviceMemoryError( std::string const & message )
+ : SystemError( make_error_code( Result::eErrorOutOfDeviceMemory ), message )
+ {}
OutOfDeviceMemoryError( char const * message )
- : SystemError( make_error_code( Result::eErrorOutOfDeviceMemory ), message ) {}
+ : SystemError( make_error_code( Result::eErrorOutOfDeviceMemory ), message )
+ {}
};
class InitializationFailedError : public SystemError
{
public:
- InitializationFailedError( std::string const& message )
- : SystemError( make_error_code( Result::eErrorInitializationFailed ), message ) {}
+ InitializationFailedError( std::string const & message )
+ : SystemError( make_error_code( Result::eErrorInitializationFailed ), message )
+ {}
InitializationFailedError( char const * message )
- : SystemError( make_error_code( Result::eErrorInitializationFailed ), message ) {}
+ : SystemError( make_error_code( Result::eErrorInitializationFailed ), message )
+ {}
};
class DeviceLostError : public SystemError
{
public:
- DeviceLostError( std::string const& message )
- : SystemError( make_error_code( Result::eErrorDeviceLost ), message ) {}
- DeviceLostError( char const * message )
- : SystemError( make_error_code( Result::eErrorDeviceLost ), message ) {}
+ DeviceLostError( std::string const & message ) : SystemError( make_error_code( Result::eErrorDeviceLost ), message )
+ {}
+ DeviceLostError( char const * message ) : SystemError( make_error_code( Result::eErrorDeviceLost ), message ) {}
};
class MemoryMapFailedError : public SystemError
{
public:
- MemoryMapFailedError( std::string const& message )
- : SystemError( make_error_code( Result::eErrorMemoryMapFailed ), message ) {}
+ MemoryMapFailedError( std::string const & message )
+ : SystemError( make_error_code( Result::eErrorMemoryMapFailed ), message )
+ {}
MemoryMapFailedError( char const * message )
- : SystemError( make_error_code( Result::eErrorMemoryMapFailed ), message ) {}
+ : SystemError( make_error_code( Result::eErrorMemoryMapFailed ), message )
+ {}
};
class LayerNotPresentError : public SystemError
{
public:
- LayerNotPresentError( std::string const& message )
- : SystemError( make_error_code( Result::eErrorLayerNotPresent ), message ) {}
+ LayerNotPresentError( std::string const & message )
+ : SystemError( make_error_code( Result::eErrorLayerNotPresent ), message )
+ {}
LayerNotPresentError( char const * message )
- : SystemError( make_error_code( Result::eErrorLayerNotPresent ), message ) {}
+ : SystemError( make_error_code( Result::eErrorLayerNotPresent ), message )
+ {}
};
class ExtensionNotPresentError : public SystemError
{
public:
- ExtensionNotPresentError( std::string const& message )
- : SystemError( make_error_code( Result::eErrorExtensionNotPresent ), message ) {}
+ ExtensionNotPresentError( std::string const & message )
+ : SystemError( make_error_code( Result::eErrorExtensionNotPresent ), message )
+ {}
ExtensionNotPresentError( char const * message )
- : SystemError( make_error_code( Result::eErrorExtensionNotPresent ), message ) {}
+ : SystemError( make_error_code( Result::eErrorExtensionNotPresent ), message )
+ {}
};
class FeatureNotPresentError : public SystemError
{
public:
- FeatureNotPresentError( std::string const& message )
- : SystemError( make_error_code( Result::eErrorFeatureNotPresent ), message ) {}
+ FeatureNotPresentError( std::string const & message )
+ : SystemError( make_error_code( Result::eErrorFeatureNotPresent ), message )
+ {}
FeatureNotPresentError( char const * message )
- : SystemError( make_error_code( Result::eErrorFeatureNotPresent ), message ) {}
+ : SystemError( make_error_code( Result::eErrorFeatureNotPresent ), message )
+ {}
};
class IncompatibleDriverError : public SystemError
{
public:
- IncompatibleDriverError( std::string const& message )
- : SystemError( make_error_code( Result::eErrorIncompatibleDriver ), message ) {}
+ IncompatibleDriverError( std::string const & message )
+ : SystemError( make_error_code( Result::eErrorIncompatibleDriver ), message )
+ {}
IncompatibleDriverError( char const * message )
- : SystemError( make_error_code( Result::eErrorIncompatibleDriver ), message ) {}
+ : SystemError( make_error_code( Result::eErrorIncompatibleDriver ), message )
+ {}
};
class TooManyObjectsError : public SystemError
{
public:
- TooManyObjectsError( std::string const& message )
- : SystemError( make_error_code( Result::eErrorTooManyObjects ), message ) {}
+ TooManyObjectsError( std::string const & message )
+ : SystemError( make_error_code( Result::eErrorTooManyObjects ), message )
+ {}
TooManyObjectsError( char const * message )
- : SystemError( make_error_code( Result::eErrorTooManyObjects ), message ) {}
+ : SystemError( make_error_code( Result::eErrorTooManyObjects ), message )
+ {}
};
class FormatNotSupportedError : public SystemError
{
public:
- FormatNotSupportedError( std::string const& message )
- : SystemError( make_error_code( Result::eErrorFormatNotSupported ), message ) {}
+ FormatNotSupportedError( std::string const & message )
+ : SystemError( make_error_code( Result::eErrorFormatNotSupported ), message )
+ {}
FormatNotSupportedError( char const * message )
- : SystemError( make_error_code( Result::eErrorFormatNotSupported ), message ) {}
+ : SystemError( make_error_code( Result::eErrorFormatNotSupported ), message )
+ {}
};
class FragmentedPoolError : public SystemError
{
public:
- FragmentedPoolError( std::string const& message )
- : SystemError( make_error_code( Result::eErrorFragmentedPool ), message ) {}
+ FragmentedPoolError( std::string const & message )
+ : SystemError( make_error_code( Result::eErrorFragmentedPool ), message )
+ {}
FragmentedPoolError( char const * message )
- : SystemError( make_error_code( Result::eErrorFragmentedPool ), message ) {}
+ : SystemError( make_error_code( Result::eErrorFragmentedPool ), message )
+ {}
};
class UnknownError : public SystemError
{
public:
- UnknownError( std::string const& message )
- : SystemError( make_error_code( Result::eErrorUnknown ), message ) {}
- UnknownError( char const * message )
- : SystemError( make_error_code( Result::eErrorUnknown ), message ) {}
+ UnknownError( std::string const & message ) : SystemError( make_error_code( Result::eErrorUnknown ), message ) {}
+ UnknownError( char const * message ) : SystemError( make_error_code( Result::eErrorUnknown ), message ) {}
};
class OutOfPoolMemoryError : public SystemError
{
public:
- OutOfPoolMemoryError( std::string const& message )
- : SystemError( make_error_code( Result::eErrorOutOfPoolMemory ), message ) {}
+ OutOfPoolMemoryError( std::string const & message )
+ : SystemError( make_error_code( Result::eErrorOutOfPoolMemory ), message )
+ {}
OutOfPoolMemoryError( char const * message )
- : SystemError( make_error_code( Result::eErrorOutOfPoolMemory ), message ) {}
+ : SystemError( make_error_code( Result::eErrorOutOfPoolMemory ), message )
+ {}
};
class InvalidExternalHandleError : public SystemError
{
public:
- InvalidExternalHandleError( std::string const& message )
- : SystemError( make_error_code( Result::eErrorInvalidExternalHandle ), message ) {}
+ InvalidExternalHandleError( std::string const & message )
+ : SystemError( make_error_code( Result::eErrorInvalidExternalHandle ), message )
+ {}
InvalidExternalHandleError( char const * message )
- : SystemError( make_error_code( Result::eErrorInvalidExternalHandle ), message ) {}
+ : SystemError( make_error_code( Result::eErrorInvalidExternalHandle ), message )
+ {}
};
class FragmentationError : public SystemError
{
public:
- FragmentationError( std::string const& message )
- : SystemError( make_error_code( Result::eErrorFragmentation ), message ) {}
- FragmentationError( char const * message )
- : SystemError( make_error_code( Result::eErrorFragmentation ), message ) {}
+ FragmentationError( std::string const & message )
+ : SystemError( make_error_code( Result::eErrorFragmentation ), message )
+ {}
+ FragmentationError( char const * message ) : SystemError( make_error_code( Result::eErrorFragmentation ), message )
+ {}
};
class InvalidOpaqueCaptureAddressError : public SystemError
{
public:
- InvalidOpaqueCaptureAddressError( std::string const& message )
- : SystemError( make_error_code( Result::eErrorInvalidOpaqueCaptureAddress ), message ) {}
+ InvalidOpaqueCaptureAddressError( std::string const & message )
+ : SystemError( make_error_code( Result::eErrorInvalidOpaqueCaptureAddress ), message )
+ {}
InvalidOpaqueCaptureAddressError( char const * message )
- : SystemError( make_error_code( Result::eErrorInvalidOpaqueCaptureAddress ), message ) {}
+ : SystemError( make_error_code( Result::eErrorInvalidOpaqueCaptureAddress ), message )
+ {}
};
class SurfaceLostKHRError : public SystemError
{
public:
- SurfaceLostKHRError( std::string const& message )
- : SystemError( make_error_code( Result::eErrorSurfaceLostKHR ), message ) {}
+ SurfaceLostKHRError( std::string const & message )
+ : SystemError( make_error_code( Result::eErrorSurfaceLostKHR ), message )
+ {}
SurfaceLostKHRError( char const * message )
- : SystemError( make_error_code( Result::eErrorSurfaceLostKHR ), message ) {}
+ : SystemError( make_error_code( Result::eErrorSurfaceLostKHR ), message )
+ {}
};
class NativeWindowInUseKHRError : public SystemError
{
public:
- NativeWindowInUseKHRError( std::string const& message )
- : SystemError( make_error_code( Result::eErrorNativeWindowInUseKHR ), message ) {}
+ NativeWindowInUseKHRError( std::string const & message )
+ : SystemError( make_error_code( Result::eErrorNativeWindowInUseKHR ), message )
+ {}
NativeWindowInUseKHRError( char const * message )
- : SystemError( make_error_code( Result::eErrorNativeWindowInUseKHR ), message ) {}
+ : SystemError( make_error_code( Result::eErrorNativeWindowInUseKHR ), message )
+ {}
};
class OutOfDateKHRError : public SystemError
{
public:
- OutOfDateKHRError( std::string const& message )
- : SystemError( make_error_code( Result::eErrorOutOfDateKHR ), message ) {}
- OutOfDateKHRError( char const * message )
- : SystemError( make_error_code( Result::eErrorOutOfDateKHR ), message ) {}
+ OutOfDateKHRError( std::string const & message )
+ : SystemError( make_error_code( Result::eErrorOutOfDateKHR ), message )
+ {}
+ OutOfDateKHRError( char const * message ) : SystemError( make_error_code( Result::eErrorOutOfDateKHR ), message ) {}
};
class IncompatibleDisplayKHRError : public SystemError
{
public:
- IncompatibleDisplayKHRError( std::string const& message )
- : SystemError( make_error_code( Result::eErrorIncompatibleDisplayKHR ), message ) {}
+ IncompatibleDisplayKHRError( std::string const & message )
+ : SystemError( make_error_code( Result::eErrorIncompatibleDisplayKHR ), message )
+ {}
IncompatibleDisplayKHRError( char const * message )
- : SystemError( make_error_code( Result::eErrorIncompatibleDisplayKHR ), message ) {}
+ : SystemError( make_error_code( Result::eErrorIncompatibleDisplayKHR ), message )
+ {}
};
class ValidationFailedEXTError : public SystemError
{
public:
- ValidationFailedEXTError( std::string const& message )
- : SystemError( make_error_code( Result::eErrorValidationFailedEXT ), message ) {}
+ ValidationFailedEXTError( std::string const & message )
+ : SystemError( make_error_code( Result::eErrorValidationFailedEXT ), message )
+ {}
ValidationFailedEXTError( char const * message )
- : SystemError( make_error_code( Result::eErrorValidationFailedEXT ), message ) {}
+ : SystemError( make_error_code( Result::eErrorValidationFailedEXT ), message )
+ {}
};
class InvalidShaderNVError : public SystemError
{
public:
- InvalidShaderNVError( std::string const& message )
- : SystemError( make_error_code( Result::eErrorInvalidShaderNV ), message ) {}
+ InvalidShaderNVError( std::string const & message )
+ : SystemError( make_error_code( Result::eErrorInvalidShaderNV ), message )
+ {}
InvalidShaderNVError( char const * message )
- : SystemError( make_error_code( Result::eErrorInvalidShaderNV ), message ) {}
+ : SystemError( make_error_code( Result::eErrorInvalidShaderNV ), message )
+ {}
};
class InvalidDrmFormatModifierPlaneLayoutEXTError : public SystemError
{
public:
- InvalidDrmFormatModifierPlaneLayoutEXTError( std::string const& message )
- : SystemError( make_error_code( Result::eErrorInvalidDrmFormatModifierPlaneLayoutEXT ), message ) {}
+ InvalidDrmFormatModifierPlaneLayoutEXTError( std::string const & message )
+ : SystemError( make_error_code( Result::eErrorInvalidDrmFormatModifierPlaneLayoutEXT ), message )
+ {}
InvalidDrmFormatModifierPlaneLayoutEXTError( char const * message )
- : SystemError( make_error_code( Result::eErrorInvalidDrmFormatModifierPlaneLayoutEXT ), message ) {}
+ : SystemError( make_error_code( Result::eErrorInvalidDrmFormatModifierPlaneLayoutEXT ), message )
+ {}
};
class NotPermittedEXTError : public SystemError
{
public:
- NotPermittedEXTError( std::string const& message )
- : SystemError( make_error_code( Result::eErrorNotPermittedEXT ), message ) {}
+ NotPermittedEXTError( std::string const & message )
+ : SystemError( make_error_code( Result::eErrorNotPermittedEXT ), message )
+ {}
NotPermittedEXTError( char const * message )
- : SystemError( make_error_code( Result::eErrorNotPermittedEXT ), message ) {}
+ : SystemError( make_error_code( Result::eErrorNotPermittedEXT ), message )
+ {}
};
+# if defined( VK_USE_PLATFORM_WIN32_KHR )
class FullScreenExclusiveModeLostEXTError : public SystemError
{
public:
- FullScreenExclusiveModeLostEXTError( std::string const& message )
- : SystemError( make_error_code( Result::eErrorFullScreenExclusiveModeLostEXT ), message ) {}
+ FullScreenExclusiveModeLostEXTError( std::string const & message )
+ : SystemError( make_error_code( Result::eErrorFullScreenExclusiveModeLostEXT ), message )
+ {}
FullScreenExclusiveModeLostEXTError( char const * message )
- : SystemError( make_error_code( Result::eErrorFullScreenExclusiveModeLostEXT ), message ) {}
+ : SystemError( make_error_code( Result::eErrorFullScreenExclusiveModeLostEXT ), message )
+ {}
};
-
+# endif /*VK_USE_PLATFORM_WIN32_KHR*/
[[noreturn]] static void throwResultException( Result result, char const * message )
{
@@ -14177,80 +6096,90 @@ namespace VULKAN_HPP_NAMESPACE
case Result::eErrorIncompatibleDisplayKHR: throw IncompatibleDisplayKHRError( message );
case Result::eErrorValidationFailedEXT: throw ValidationFailedEXTError( message );
case Result::eErrorInvalidShaderNV: throw InvalidShaderNVError( message );
- case Result::eErrorInvalidDrmFormatModifierPlaneLayoutEXT: throw InvalidDrmFormatModifierPlaneLayoutEXTError( message );
+ case Result::eErrorInvalidDrmFormatModifierPlaneLayoutEXT:
+ throw InvalidDrmFormatModifierPlaneLayoutEXTError( message );
case Result::eErrorNotPermittedEXT: throw NotPermittedEXTError( message );
+# if defined( VK_USE_PLATFORM_WIN32_KHR )
case Result::eErrorFullScreenExclusiveModeLostEXT: throw FullScreenExclusiveModeLostEXTError( message );
+# endif /*VK_USE_PLATFORM_WIN32_KHR*/
default: throw SystemError( make_error_code( result ) );
}
}
#endif
- template <typename T> void ignore(T const&) VULKAN_HPP_NOEXCEPT {}
+ template <typename T>
+ void ignore( T const & ) VULKAN_HPP_NOEXCEPT
+ {}
template <typename T>
struct ResultValue
{
#ifdef VULKAN_HPP_HAS_NOEXCEPT
- ResultValue( Result r, T & v ) VULKAN_HPP_NOEXCEPT(VULKAN_HPP_NOEXCEPT(T(v)))
+ ResultValue( Result r, T & v ) VULKAN_HPP_NOEXCEPT( VULKAN_HPP_NOEXCEPT( T( v ) ) )
#else
ResultValue( Result r, T & v )
#endif
- : result( r )
- , value( v )
+ : result( r ), value( v )
{}
#ifdef VULKAN_HPP_HAS_NOEXCEPT
- ResultValue( Result r, T && v ) VULKAN_HPP_NOEXCEPT(VULKAN_HPP_NOEXCEPT(T(std::move(v))))
+ ResultValue( Result r, T && v ) VULKAN_HPP_NOEXCEPT( VULKAN_HPP_NOEXCEPT( T( std::move( v ) ) ) )
#else
ResultValue( Result r, T && v )
#endif
- : result( r )
- , value( std::move( v ) )
+ : result( r ), value( std::move( v ) )
{}
- Result result;
- T value;
+ Result result;
+ T value;
- operator std::tuple<Result&, T&>() VULKAN_HPP_NOEXCEPT { return std::tuple<Result&, T&>(result, value); }
+ operator std::tuple<Result &, T &>() VULKAN_HPP_NOEXCEPT
+ {
+ return std::tuple<Result &, T &>( result, value );
+ }
-#if !defined(VULKAN_HPP_DISABLE_IMPLICIT_RESULT_VALUE_CAST)
- VULKAN_HPP_DEPRECATED("Implicit-cast operators on vk::ResultValue are deprecated. Explicitly access the value as member of ResultValue.")
- operator T const& () const & VULKAN_HPP_NOEXCEPT
+#if !defined( VULKAN_HPP_DISABLE_IMPLICIT_RESULT_VALUE_CAST )
+ VULKAN_HPP_DEPRECATED(
+ "Implicit-cast operators on vk::ResultValue are deprecated. Explicitly access the value as member of ResultValue." )
+ operator T const &() const & VULKAN_HPP_NOEXCEPT
{
return value;
}
- VULKAN_HPP_DEPRECATED("Implicit-cast operators on vk::ResultValue are deprecated. Explicitly access the value as member of ResultValue.")
- operator T& () & VULKAN_HPP_NOEXCEPT
+ VULKAN_HPP_DEPRECATED(
+ "Implicit-cast operators on vk::ResultValue are deprecated. Explicitly access the value as member of ResultValue." )
+ operator T &() & VULKAN_HPP_NOEXCEPT
{
return value;
}
- VULKAN_HPP_DEPRECATED("Implicit-cast operators on vk::ResultValue are deprecated. Explicitly access the value as member of ResultValue.")
- operator T const&& () const && VULKAN_HPP_NOEXCEPT
+ VULKAN_HPP_DEPRECATED(
+ "Implicit-cast operators on vk::ResultValue are deprecated. Explicitly access the value as member of ResultValue." )
+ operator T const &&() const && VULKAN_HPP_NOEXCEPT
{
return std::move( value );
}
- VULKAN_HPP_DEPRECATED("Implicit-cast operators on vk::ResultValue are deprecated. Explicitly access the value as member of ResultValue.")
- operator T&& () && VULKAN_HPP_NOEXCEPT
+ VULKAN_HPP_DEPRECATED(
+ "Implicit-cast operators on vk::ResultValue are deprecated. Explicitly access the value as member of ResultValue." )
+ operator T &&() && VULKAN_HPP_NOEXCEPT
{
return std::move( value );
}
#endif
};
-#if !defined(VULKAN_HPP_NO_SMART_HANDLE)
+#if !defined( VULKAN_HPP_NO_SMART_HANDLE )
template <typename Type, typename Dispatch>
- struct ResultValue<UniqueHandle<Type,Dispatch>>
+ struct ResultValue<UniqueHandle<Type, Dispatch>>
{
-#ifdef VULKAN_HPP_HAS_NOEXCEPT
- ResultValue(Result r, UniqueHandle<Type, Dispatch> && v) VULKAN_HPP_NOEXCEPT
-#else
- ResultValue(Result r, UniqueHandle<Type, Dispatch> && v)
-#endif
- : result(r)
- , value(std::move(v))
+# ifdef VULKAN_HPP_HAS_NOEXCEPT
+ ResultValue( Result r, UniqueHandle<Type, Dispatch> && v ) VULKAN_HPP_NOEXCEPT
+# else
+ ResultValue( Result r, UniqueHandle<Type, Dispatch> && v )
+# endif
+ : result( r )
+ , value( std::move( v ) )
{}
std::tuple<Result, UniqueHandle<Type, Dispatch>> asTuple()
@@ -14258,22 +6187,24 @@ namespace VULKAN_HPP_NAMESPACE
return std::make_tuple( result, std::move( value ) );
}
-# if !defined(VULKAN_HPP_DISABLE_IMPLICIT_RESULT_VALUE_CAST)
- VULKAN_HPP_DEPRECATED("Implicit-cast operators on vk::ResultValue are deprecated. Explicitly access the value as member of ResultValue.")
- operator UniqueHandle<Type, Dispatch>& () & VULKAN_HPP_NOEXCEPT
+# if !defined( VULKAN_HPP_DISABLE_IMPLICIT_RESULT_VALUE_CAST )
+ VULKAN_HPP_DEPRECATED(
+ "Implicit-cast operators on vk::ResultValue are deprecated. Explicitly access the value as member of ResultValue." )
+ operator UniqueHandle<Type, Dispatch> &() & VULKAN_HPP_NOEXCEPT
{
return value;
}
- VULKAN_HPP_DEPRECATED("Implicit-cast operators on vk::ResultValue are deprecated. Explicitly access the value as member of ResultValue.")
+ VULKAN_HPP_DEPRECATED(
+ "Implicit-cast operators on vk::ResultValue are deprecated. Explicitly access the value as member of ResultValue." )
operator UniqueHandle<Type, Dispatch>() VULKAN_HPP_NOEXCEPT
{
- return std::move(value);
+ return std::move( value );
}
# endif
- Result result;
- UniqueHandle<Type, Dispatch> value;
+ Result result;
+ UniqueHandle<Type, Dispatch> value;
};
template <typename Type, typename Dispatch>
@@ -14288,13 +6219,22 @@ namespace VULKAN_HPP_NAMESPACE
, value( std::move( v ) )
{}
+ std::tuple<Result, std::vector<UniqueHandle<Type, Dispatch>>> asTuple()
+ {
+ return std::make_tuple( result, std::move( value ) );
+ }
+
Result result;
std::vector<UniqueHandle<Type, Dispatch>> value;
+# if !defined( VULKAN_HPP_DISABLE_IMPLICIT_RESULT_VALUE_CAST )
+ VULKAN_HPP_DEPRECATED(
+ "Implicit-cast operators on vk::ResultValue are deprecated. Explicitly access the value as member of ResultValue." )
operator std::tuple<Result &, std::vector<UniqueHandle<Type, Dispatch>> &>() VULKAN_HPP_NOEXCEPT
{
return std::tuple<Result &, std::vector<UniqueHandle<Type, Dispatch>> &>( result, value );
}
+# endif
};
#endif
@@ -14302,9 +6242,9 @@ namespace VULKAN_HPP_NAMESPACE
struct ResultValueType
{
#ifdef VULKAN_HPP_NO_EXCEPTIONS
- typedef ResultValue<T> type;
+ typedef ResultValue<T> type;
#else
- typedef T type;
+ typedef T type;
#endif
};
@@ -14314,14 +6254,14 @@ namespace VULKAN_HPP_NAMESPACE
#ifdef VULKAN_HPP_NO_EXCEPTIONS
typedef Result type;
#else
- typedef void type;
+ typedef void type;
#endif
};
VULKAN_HPP_INLINE ResultValueType<void>::type createResultValue( Result result, char const * message )
{
#ifdef VULKAN_HPP_NO_EXCEPTIONS
- ignore(message);
+ ignore( message );
VULKAN_HPP_ASSERT_ON_RESULT( result == Result::eSuccess );
return result;
#else
@@ -14336,7 +6276,7 @@ namespace VULKAN_HPP_NAMESPACE
VULKAN_HPP_INLINE typename ResultValueType<T>::type createResultValue( Result result, T & data, char const * message )
{
#ifdef VULKAN_HPP_NO_EXCEPTIONS
- ignore(message);
+ ignore( message );
VULKAN_HPP_ASSERT_ON_RESULT( result == Result::eSuccess );
return ResultValue<T>( result, std::move( data ) );
#else
@@ -14348,11 +6288,13 @@ namespace VULKAN_HPP_NAMESPACE
#endif
}
- VULKAN_HPP_INLINE Result createResultValue( Result result, char const * message, std::initializer_list<Result> successCodes )
+ VULKAN_HPP_INLINE Result createResultValue( Result result,
+ char const * message,
+ std::initializer_list<Result> successCodes )
{
#ifdef VULKAN_HPP_NO_EXCEPTIONS
- ignore(message);
- ignore(successCodes); // just in case VULKAN_HPP_ASSERT_ON_RESULT is empty
+ ignore( message );
+ ignore( successCodes ); // just in case VULKAN_HPP_ASSERT_ON_RESULT is empty
VULKAN_HPP_ASSERT_ON_RESULT( std::find( successCodes.begin(), successCodes.end(), result ) != successCodes.end() );
#else
if ( std::find( successCodes.begin(), successCodes.end(), result ) == successCodes.end() )
@@ -14364,11 +6306,12 @@ namespace VULKAN_HPP_NAMESPACE
}
template <typename T>
- VULKAN_HPP_INLINE ResultValue<T> createResultValue( Result result, T & data, char const * message, std::initializer_list<Result> successCodes )
+ VULKAN_HPP_INLINE ResultValue<T>
+ createResultValue( Result result, T & data, char const * message, std::initializer_list<Result> successCodes )
{
#ifdef VULKAN_HPP_NO_EXCEPTIONS
- ignore(message);
- ignore(successCodes); // just in case VULKAN_HPP_ASSERT_ON_RESULT is empty
+ ignore( message );
+ ignore( successCodes ); // just in case VULKAN_HPP_ASSERT_ON_RESULT is empty
VULKAN_HPP_ASSERT_ON_RESULT( std::find( successCodes.begin(), successCodes.end(), result ) != successCodes.end() );
#else
if ( std::find( successCodes.begin(), successCodes.end(), result ) == successCodes.end() )
@@ -14376,24 +6319,25 @@ namespace VULKAN_HPP_NAMESPACE
throwResultException( result, message );
}
#endif
- return ResultValue<T>( result, data );
+ return ResultValue<T>( result, std::move( data ) );
}
#ifndef VULKAN_HPP_NO_SMART_HANDLE
template <typename T, typename D>
- VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<T,D>>::type createResultValue( Result result, T & data, char const * message, typename UniqueHandleTraits<T,D>::deleter const& deleter )
+ VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<T, D>>::type createResultValue(
+ Result result, T & data, char const * message, typename UniqueHandleTraits<T, D>::deleter const & deleter )
{
-#ifdef VULKAN_HPP_NO_EXCEPTIONS
- ignore(message);
+# ifdef VULKAN_HPP_NO_EXCEPTIONS
+ ignore( message );
VULKAN_HPP_ASSERT_ON_RESULT( result == Result::eSuccess );
- return ResultValue<UniqueHandle<T,D>>( result, UniqueHandle<T,D>(data, deleter) );
-#else
+ return ResultValue<UniqueHandle<T, D>>( result, UniqueHandle<T, D>( data, deleter ) );
+# else
if ( result != Result::eSuccess )
{
throwResultException( result, message );
}
- return UniqueHandle<T,D>(data, deleter);
-#endif
+ return UniqueHandle<T, D>( data, deleter );
+# endif
}
template <typename T, typename D>
@@ -14406,7 +6350,7 @@ namespace VULKAN_HPP_NAMESPACE
{
# ifdef VULKAN_HPP_NO_EXCEPTIONS
ignore( message );
- ignore(successCodes); // just in case VULKAN_HPP_ASSERT_ON_RESULT is empty
+ ignore( successCodes ); // just in case VULKAN_HPP_ASSERT_ON_RESULT is empty
VULKAN_HPP_ASSERT_ON_RESULT( std::find( successCodes.begin(), successCodes.end(), result ) != successCodes.end() );
# else
if ( std::find( successCodes.begin(), successCodes.end(), result ) == successCodes.end() )
@@ -14443,7 +6387,7 @@ namespace VULKAN_HPP_NAMESPACE
{
# ifdef VULKAN_HPP_NO_EXCEPTIONS
ignore( message );
- ignore(successCodes); // just in case VULKAN_HPP_ASSERT_ON_RESULT is empty
+ ignore( successCodes ); // just in case VULKAN_HPP_ASSERT_ON_RESULT is empty
VULKAN_HPP_ASSERT_ON_RESULT( std::find( successCodes.begin(), successCodes.end(), result ) != successCodes.end() );
# else
if ( std::find( successCodes.begin(), successCodes.end(), result ) == successCodes.end() )
@@ -14454,77882 +6398,3590 @@ namespace VULKAN_HPP_NAMESPACE
return ResultValue<std::vector<UniqueHandle<T, D>>>( result, std::move( data ) );
}
#endif
+} // namespace VULKAN_HPP_NAMESPACE
- struct AabbPositionsKHR
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR AabbPositionsKHR(float minX_ = {}, float minY_ = {}, float minZ_ = {}, float maxX_ = {}, float maxY_ = {}, float maxZ_ = {}) VULKAN_HPP_NOEXCEPT
- : minX( minX_ ), minY( minY_ ), minZ( minZ_ ), maxX( maxX_ ), maxY( maxY_ ), maxZ( maxZ_ )
- {}
-
- VULKAN_HPP_CONSTEXPR AabbPositionsKHR( AabbPositionsKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- AabbPositionsKHR( VkAabbPositionsKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- AabbPositionsKHR & operator=( VkAabbPositionsKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AabbPositionsKHR const *>( &rhs );
- return *this;
- }
-
- AabbPositionsKHR & operator=( AabbPositionsKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( AabbPositionsKHR ) );
- return *this;
- }
-
- AabbPositionsKHR & setMinX( float minX_ ) VULKAN_HPP_NOEXCEPT
- {
- minX = minX_;
- return *this;
- }
-
- AabbPositionsKHR & setMinY( float minY_ ) VULKAN_HPP_NOEXCEPT
- {
- minY = minY_;
- return *this;
- }
-
- AabbPositionsKHR & setMinZ( float minZ_ ) VULKAN_HPP_NOEXCEPT
- {
- minZ = minZ_;
- return *this;
- }
-
- AabbPositionsKHR & setMaxX( float maxX_ ) VULKAN_HPP_NOEXCEPT
- {
- maxX = maxX_;
- return *this;
- }
-
- AabbPositionsKHR & setMaxY( float maxY_ ) VULKAN_HPP_NOEXCEPT
- {
- maxY = maxY_;
- return *this;
- }
-
- AabbPositionsKHR & setMaxZ( float maxZ_ ) VULKAN_HPP_NOEXCEPT
- {
- maxZ = maxZ_;
- return *this;
- }
-
-
- operator VkAabbPositionsKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkAabbPositionsKHR*>( this );
- }
-
- operator VkAabbPositionsKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkAabbPositionsKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( AabbPositionsKHR const& ) const = default;
-#else
- bool operator==( AabbPositionsKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( minX == rhs.minX )
- && ( minY == rhs.minY )
- && ( minZ == rhs.minZ )
- && ( maxX == rhs.maxX )
- && ( maxY == rhs.maxY )
- && ( maxZ == rhs.maxZ );
- }
-
- bool operator!=( AabbPositionsKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- float minX = {};
- float minY = {};
- float minZ = {};
- float maxX = {};
- float maxY = {};
- float maxZ = {};
-
- };
- static_assert( sizeof( AabbPositionsKHR ) == sizeof( VkAabbPositionsKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<AabbPositionsKHR>::value, "struct wrapper is not a standard layout!" );
- using AabbPositionsNV = AabbPositionsKHR;
-
- class AccelerationStructureKHR
- {
- public:
- using CType = VkAccelerationStructureKHR;
-
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::eAccelerationStructureKHR;
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType = VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eAccelerationStructureKHR;
-
- public:
- VULKAN_HPP_CONSTEXPR AccelerationStructureKHR() VULKAN_HPP_NOEXCEPT
- : m_accelerationStructureKHR(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_CONSTEXPR AccelerationStructureKHR( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- : m_accelerationStructureKHR(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_TYPESAFE_EXPLICIT AccelerationStructureKHR( VkAccelerationStructureKHR accelerationStructureKHR ) VULKAN_HPP_NOEXCEPT
- : m_accelerationStructureKHR( accelerationStructureKHR )
- {}
-
-#if defined(VULKAN_HPP_TYPESAFE_CONVERSION)
- AccelerationStructureKHR & operator=(VkAccelerationStructureKHR accelerationStructureKHR) VULKAN_HPP_NOEXCEPT
- {
- m_accelerationStructureKHR = accelerationStructureKHR;
- return *this;
- }
-#endif
-
- AccelerationStructureKHR & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- {
- m_accelerationStructureKHR = VK_NULL_HANDLE;
- return *this;
- }
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( AccelerationStructureKHR const& ) const = default;
-#else
- bool operator==( AccelerationStructureKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_accelerationStructureKHR == rhs.m_accelerationStructureKHR;
- }
-
- bool operator!=(AccelerationStructureKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_accelerationStructureKHR != rhs.m_accelerationStructureKHR;
- }
-
- bool operator<(AccelerationStructureKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_accelerationStructureKHR < rhs.m_accelerationStructureKHR;
- }
-#endif
-
- VULKAN_HPP_TYPESAFE_EXPLICIT operator VkAccelerationStructureKHR() const VULKAN_HPP_NOEXCEPT
- {
- return m_accelerationStructureKHR;
- }
-
- explicit operator bool() const VULKAN_HPP_NOEXCEPT
- {
- return m_accelerationStructureKHR != VK_NULL_HANDLE;
- }
-
- bool operator!() const VULKAN_HPP_NOEXCEPT
- {
- return m_accelerationStructureKHR == VK_NULL_HANDLE;
- }
-
- private:
- VkAccelerationStructureKHR m_accelerationStructureKHR;
- };
- static_assert( sizeof( VULKAN_HPP_NAMESPACE::AccelerationStructureKHR ) == sizeof( VkAccelerationStructureKHR ), "handle and wrapper have different size!" );
-
- template <>
- struct VULKAN_HPP_DEPRECATED("vk::cpp_type is deprecated. Use vk::CppType instead.") cpp_type<ObjectType::eAccelerationStructureKHR>
- {
- using type = VULKAN_HPP_NAMESPACE::AccelerationStructureKHR;
- };
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eAccelerationStructureKHR>
- {
- using Type = VULKAN_HPP_NAMESPACE::AccelerationStructureKHR;
- };
-
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT, VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eAccelerationStructureKHR>
- {
- using Type = VULKAN_HPP_NAMESPACE::AccelerationStructureKHR;
- };
-
-
- template <>
- struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::AccelerationStructureKHR>
- {
- static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
- };
-
- union DeviceOrHostAddressConstKHR
- {
- DeviceOrHostAddressConstKHR( VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR const& rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void*>(this), &rhs, sizeof( VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR ) );
- }
-
- DeviceOrHostAddressConstKHR( VULKAN_HPP_NAMESPACE::DeviceAddress deviceAddress_ = {} )
- : deviceAddress( deviceAddress_ )
- {}
-
- DeviceOrHostAddressConstKHR( const void* hostAddress_ )
- : hostAddress( hostAddress_ )
- {}
-
- DeviceOrHostAddressConstKHR & setDeviceAddress( VULKAN_HPP_NAMESPACE::DeviceAddress deviceAddress_ ) VULKAN_HPP_NOEXCEPT
- {
- deviceAddress = deviceAddress_;
- return *this;
- }
-
- DeviceOrHostAddressConstKHR & setHostAddress( const void* hostAddress_ ) VULKAN_HPP_NOEXCEPT
- {
- hostAddress = hostAddress_;
- return *this;
- }
-
- VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR & operator=( VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void*>(this), &rhs, sizeof( VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR ) );
- return *this;
- }
-
- operator VkDeviceOrHostAddressConstKHR const&() const
- {
- return *reinterpret_cast<const VkDeviceOrHostAddressConstKHR*>(this);
- }
-
- operator VkDeviceOrHostAddressConstKHR &()
- {
- return *reinterpret_cast<VkDeviceOrHostAddressConstKHR*>(this);
- }
-
-#ifdef VULKAN_HPP_HAS_UNRESTRICTED_UNIONS
- VULKAN_HPP_NAMESPACE::DeviceAddress deviceAddress;
- const void* hostAddress;
-#else
- VkDeviceAddress deviceAddress;
- const void* hostAddress;
-#endif /*VULKAN_HPP_HAS_UNRESTRICTED_UNIONS*/
- };
-
- struct AccelerationStructureGeometryTrianglesDataKHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eAccelerationStructureGeometryTrianglesDataKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- AccelerationStructureGeometryTrianglesDataKHR(VULKAN_HPP_NAMESPACE::Format vertexFormat_ = VULKAN_HPP_NAMESPACE::Format::eUndefined, VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR vertexData_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize vertexStride_ = {}, uint32_t maxVertex_ = {}, VULKAN_HPP_NAMESPACE::IndexType indexType_ = VULKAN_HPP_NAMESPACE::IndexType::eUint16, VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR indexData_ = {}, VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR transformData_ = {}) VULKAN_HPP_NOEXCEPT
- : vertexFormat( vertexFormat_ ), vertexData( vertexData_ ), vertexStride( vertexStride_ ), maxVertex( maxVertex_ ), indexType( indexType_ ), indexData( indexData_ ), transformData( transformData_ )
- {}
-
- AccelerationStructureGeometryTrianglesDataKHR( AccelerationStructureGeometryTrianglesDataKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- AccelerationStructureGeometryTrianglesDataKHR( VkAccelerationStructureGeometryTrianglesDataKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- AccelerationStructureGeometryTrianglesDataKHR & operator=( VkAccelerationStructureGeometryTrianglesDataKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryTrianglesDataKHR const *>( &rhs );
- return *this;
- }
-
- AccelerationStructureGeometryTrianglesDataKHR & operator=( AccelerationStructureGeometryTrianglesDataKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( AccelerationStructureGeometryTrianglesDataKHR ) );
- return *this;
- }
-
- AccelerationStructureGeometryTrianglesDataKHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- AccelerationStructureGeometryTrianglesDataKHR & setVertexFormat( VULKAN_HPP_NAMESPACE::Format vertexFormat_ ) VULKAN_HPP_NOEXCEPT
- {
- vertexFormat = vertexFormat_;
- return *this;
- }
-
- AccelerationStructureGeometryTrianglesDataKHR & setVertexData( VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR const & vertexData_ ) VULKAN_HPP_NOEXCEPT
- {
- vertexData = vertexData_;
- return *this;
- }
-
- AccelerationStructureGeometryTrianglesDataKHR & setVertexStride( VULKAN_HPP_NAMESPACE::DeviceSize vertexStride_ ) VULKAN_HPP_NOEXCEPT
- {
- vertexStride = vertexStride_;
- return *this;
- }
-
- AccelerationStructureGeometryTrianglesDataKHR & setMaxVertex( uint32_t maxVertex_ ) VULKAN_HPP_NOEXCEPT
- {
- maxVertex = maxVertex_;
- return *this;
- }
-
- AccelerationStructureGeometryTrianglesDataKHR & setIndexType( VULKAN_HPP_NAMESPACE::IndexType indexType_ ) VULKAN_HPP_NOEXCEPT
- {
- indexType = indexType_;
- return *this;
- }
-
- AccelerationStructureGeometryTrianglesDataKHR & setIndexData( VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR const & indexData_ ) VULKAN_HPP_NOEXCEPT
- {
- indexData = indexData_;
- return *this;
- }
-
- AccelerationStructureGeometryTrianglesDataKHR & setTransformData( VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR const & transformData_ ) VULKAN_HPP_NOEXCEPT
- {
- transformData = transformData_;
- return *this;
- }
-
-
- operator VkAccelerationStructureGeometryTrianglesDataKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkAccelerationStructureGeometryTrianglesDataKHR*>( this );
- }
-
- operator VkAccelerationStructureGeometryTrianglesDataKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkAccelerationStructureGeometryTrianglesDataKHR*>( this );
- }
-
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAccelerationStructureGeometryTrianglesDataKHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::Format vertexFormat = VULKAN_HPP_NAMESPACE::Format::eUndefined;
- VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR vertexData = {};
- VULKAN_HPP_NAMESPACE::DeviceSize vertexStride = {};
- uint32_t maxVertex = {};
- VULKAN_HPP_NAMESPACE::IndexType indexType = VULKAN_HPP_NAMESPACE::IndexType::eUint16;
- VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR indexData = {};
- VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR transformData = {};
-
- };
- static_assert( sizeof( AccelerationStructureGeometryTrianglesDataKHR ) == sizeof( VkAccelerationStructureGeometryTrianglesDataKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<AccelerationStructureGeometryTrianglesDataKHR>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::eAccelerationStructureGeometryTrianglesDataKHR>
- {
- using Type = AccelerationStructureGeometryTrianglesDataKHR;
- };
-
- struct AccelerationStructureGeometryAabbsDataKHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eAccelerationStructureGeometryAabbsDataKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- AccelerationStructureGeometryAabbsDataKHR(VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR data_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize stride_ = {}) VULKAN_HPP_NOEXCEPT
- : data( data_ ), stride( stride_ )
- {}
-
- AccelerationStructureGeometryAabbsDataKHR( AccelerationStructureGeometryAabbsDataKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- AccelerationStructureGeometryAabbsDataKHR( VkAccelerationStructureGeometryAabbsDataKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- AccelerationStructureGeometryAabbsDataKHR & operator=( VkAccelerationStructureGeometryAabbsDataKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryAabbsDataKHR const *>( &rhs );
- return *this;
- }
-
- AccelerationStructureGeometryAabbsDataKHR & operator=( AccelerationStructureGeometryAabbsDataKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( AccelerationStructureGeometryAabbsDataKHR ) );
- return *this;
- }
-
- AccelerationStructureGeometryAabbsDataKHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- AccelerationStructureGeometryAabbsDataKHR & setData( VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR const & data_ ) VULKAN_HPP_NOEXCEPT
- {
- data = data_;
- return *this;
- }
-
- AccelerationStructureGeometryAabbsDataKHR & setStride( VULKAN_HPP_NAMESPACE::DeviceSize stride_ ) VULKAN_HPP_NOEXCEPT
- {
- stride = stride_;
- return *this;
- }
-
-
- operator VkAccelerationStructureGeometryAabbsDataKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkAccelerationStructureGeometryAabbsDataKHR*>( this );
- }
-
- operator VkAccelerationStructureGeometryAabbsDataKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkAccelerationStructureGeometryAabbsDataKHR*>( this );
- }
-
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAccelerationStructureGeometryAabbsDataKHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR data = {};
- VULKAN_HPP_NAMESPACE::DeviceSize stride = {};
-
- };
- static_assert( sizeof( AccelerationStructureGeometryAabbsDataKHR ) == sizeof( VkAccelerationStructureGeometryAabbsDataKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<AccelerationStructureGeometryAabbsDataKHR>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::eAccelerationStructureGeometryAabbsDataKHR>
- {
- using Type = AccelerationStructureGeometryAabbsDataKHR;
- };
-
- struct AccelerationStructureGeometryInstancesDataKHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eAccelerationStructureGeometryInstancesDataKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- AccelerationStructureGeometryInstancesDataKHR(VULKAN_HPP_NAMESPACE::Bool32 arrayOfPointers_ = {}, VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR data_ = {}) VULKAN_HPP_NOEXCEPT
- : arrayOfPointers( arrayOfPointers_ ), data( data_ )
- {}
-
- AccelerationStructureGeometryInstancesDataKHR( AccelerationStructureGeometryInstancesDataKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- AccelerationStructureGeometryInstancesDataKHR( VkAccelerationStructureGeometryInstancesDataKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- AccelerationStructureGeometryInstancesDataKHR & operator=( VkAccelerationStructureGeometryInstancesDataKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryInstancesDataKHR const *>( &rhs );
- return *this;
- }
-
- AccelerationStructureGeometryInstancesDataKHR & operator=( AccelerationStructureGeometryInstancesDataKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( AccelerationStructureGeometryInstancesDataKHR ) );
- return *this;
- }
-
- AccelerationStructureGeometryInstancesDataKHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- AccelerationStructureGeometryInstancesDataKHR & setArrayOfPointers( VULKAN_HPP_NAMESPACE::Bool32 arrayOfPointers_ ) VULKAN_HPP_NOEXCEPT
- {
- arrayOfPointers = arrayOfPointers_;
- return *this;
- }
-
- AccelerationStructureGeometryInstancesDataKHR & setData( VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR const & data_ ) VULKAN_HPP_NOEXCEPT
- {
- data = data_;
- return *this;
- }
-
-
- operator VkAccelerationStructureGeometryInstancesDataKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkAccelerationStructureGeometryInstancesDataKHR*>( this );
- }
-
- operator VkAccelerationStructureGeometryInstancesDataKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkAccelerationStructureGeometryInstancesDataKHR*>( this );
- }
-
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAccelerationStructureGeometryInstancesDataKHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 arrayOfPointers = {};
- VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR data = {};
-
- };
- static_assert( sizeof( AccelerationStructureGeometryInstancesDataKHR ) == sizeof( VkAccelerationStructureGeometryInstancesDataKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<AccelerationStructureGeometryInstancesDataKHR>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::eAccelerationStructureGeometryInstancesDataKHR>
- {
- using Type = AccelerationStructureGeometryInstancesDataKHR;
- };
-
- union AccelerationStructureGeometryDataKHR
- {
- AccelerationStructureGeometryDataKHR( VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryDataKHR const& rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void*>(this), &rhs, sizeof( VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryDataKHR ) );
- }
-
- AccelerationStructureGeometryDataKHR( VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryTrianglesDataKHR triangles_ = {} )
- : triangles( triangles_ )
- {}
-
- AccelerationStructureGeometryDataKHR( VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryAabbsDataKHR aabbs_ )
- : aabbs( aabbs_ )
- {}
-
- AccelerationStructureGeometryDataKHR( VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryInstancesDataKHR instances_ )
- : instances( instances_ )
- {}
-
- AccelerationStructureGeometryDataKHR & setTriangles( VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryTrianglesDataKHR const & triangles_ ) VULKAN_HPP_NOEXCEPT
- {
- triangles = triangles_;
- return *this;
- }
-
- AccelerationStructureGeometryDataKHR & setAabbs( VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryAabbsDataKHR const & aabbs_ ) VULKAN_HPP_NOEXCEPT
- {
- aabbs = aabbs_;
- return *this;
- }
-
- AccelerationStructureGeometryDataKHR & setInstances( VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryInstancesDataKHR const & instances_ ) VULKAN_HPP_NOEXCEPT
- {
- instances = instances_;
- return *this;
- }
-
- VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryDataKHR & operator=( VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryDataKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void*>(this), &rhs, sizeof( VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryDataKHR ) );
- return *this;
- }
-
- operator VkAccelerationStructureGeometryDataKHR const&() const
- {
- return *reinterpret_cast<const VkAccelerationStructureGeometryDataKHR*>(this);
- }
-
- operator VkAccelerationStructureGeometryDataKHR &()
- {
- return *reinterpret_cast<VkAccelerationStructureGeometryDataKHR*>(this);
- }
-
-#ifdef VULKAN_HPP_HAS_UNRESTRICTED_UNIONS
- VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryTrianglesDataKHR triangles;
- VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryAabbsDataKHR aabbs;
- VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryInstancesDataKHR instances;
-#else
- VkAccelerationStructureGeometryTrianglesDataKHR triangles;
- VkAccelerationStructureGeometryAabbsDataKHR aabbs;
- VkAccelerationStructureGeometryInstancesDataKHR instances;
-#endif /*VULKAN_HPP_HAS_UNRESTRICTED_UNIONS*/
- };
-
- struct AccelerationStructureGeometryKHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eAccelerationStructureGeometryKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- AccelerationStructureGeometryKHR(VULKAN_HPP_NAMESPACE::GeometryTypeKHR geometryType_ = VULKAN_HPP_NAMESPACE::GeometryTypeKHR::eTriangles, VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryDataKHR geometry_ = {}, VULKAN_HPP_NAMESPACE::GeometryFlagsKHR flags_ = {}) VULKAN_HPP_NOEXCEPT
- : geometryType( geometryType_ ), geometry( geometry_ ), flags( flags_ )
- {}
-
- AccelerationStructureGeometryKHR( AccelerationStructureGeometryKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- AccelerationStructureGeometryKHR( VkAccelerationStructureGeometryKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- AccelerationStructureGeometryKHR & operator=( VkAccelerationStructureGeometryKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryKHR const *>( &rhs );
- return *this;
- }
-
- AccelerationStructureGeometryKHR & operator=( AccelerationStructureGeometryKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( AccelerationStructureGeometryKHR ) );
- return *this;
- }
-
- AccelerationStructureGeometryKHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- AccelerationStructureGeometryKHR & setGeometryType( VULKAN_HPP_NAMESPACE::GeometryTypeKHR geometryType_ ) VULKAN_HPP_NOEXCEPT
- {
- geometryType = geometryType_;
- return *this;
- }
-
- AccelerationStructureGeometryKHR & setGeometry( VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryDataKHR const & geometry_ ) VULKAN_HPP_NOEXCEPT
- {
- geometry = geometry_;
- return *this;
- }
-
- AccelerationStructureGeometryKHR & setFlags( VULKAN_HPP_NAMESPACE::GeometryFlagsKHR flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
-
- operator VkAccelerationStructureGeometryKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkAccelerationStructureGeometryKHR*>( this );
- }
-
- operator VkAccelerationStructureGeometryKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkAccelerationStructureGeometryKHR*>( this );
- }
-
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAccelerationStructureGeometryKHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::GeometryTypeKHR geometryType = VULKAN_HPP_NAMESPACE::GeometryTypeKHR::eTriangles;
- VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryDataKHR geometry = {};
- VULKAN_HPP_NAMESPACE::GeometryFlagsKHR flags = {};
-
- };
- static_assert( sizeof( AccelerationStructureGeometryKHR ) == sizeof( VkAccelerationStructureGeometryKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<AccelerationStructureGeometryKHR>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::eAccelerationStructureGeometryKHR>
- {
- using Type = AccelerationStructureGeometryKHR;
- };
-
- union DeviceOrHostAddressKHR
- {
- DeviceOrHostAddressKHR( VULKAN_HPP_NAMESPACE::DeviceOrHostAddressKHR const& rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void*>(this), &rhs, sizeof( VULKAN_HPP_NAMESPACE::DeviceOrHostAddressKHR ) );
- }
-
- DeviceOrHostAddressKHR( VULKAN_HPP_NAMESPACE::DeviceAddress deviceAddress_ = {} )
- : deviceAddress( deviceAddress_ )
- {}
-
- DeviceOrHostAddressKHR( void* hostAddress_ )
- : hostAddress( hostAddress_ )
- {}
-
- DeviceOrHostAddressKHR & setDeviceAddress( VULKAN_HPP_NAMESPACE::DeviceAddress deviceAddress_ ) VULKAN_HPP_NOEXCEPT
- {
- deviceAddress = deviceAddress_;
- return *this;
- }
-
- DeviceOrHostAddressKHR & setHostAddress( void* hostAddress_ ) VULKAN_HPP_NOEXCEPT
- {
- hostAddress = hostAddress_;
- return *this;
- }
-
- VULKAN_HPP_NAMESPACE::DeviceOrHostAddressKHR & operator=( VULKAN_HPP_NAMESPACE::DeviceOrHostAddressKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void*>(this), &rhs, sizeof( VULKAN_HPP_NAMESPACE::DeviceOrHostAddressKHR ) );
- return *this;
- }
-
- operator VkDeviceOrHostAddressKHR const&() const
- {
- return *reinterpret_cast<const VkDeviceOrHostAddressKHR*>(this);
- }
-
- operator VkDeviceOrHostAddressKHR &()
- {
- return *reinterpret_cast<VkDeviceOrHostAddressKHR*>(this);
- }
-
-#ifdef VULKAN_HPP_HAS_UNRESTRICTED_UNIONS
- VULKAN_HPP_NAMESPACE::DeviceAddress deviceAddress;
- void* hostAddress;
-#else
- VkDeviceAddress deviceAddress;
- void* hostAddress;
-#endif /*VULKAN_HPP_HAS_UNRESTRICTED_UNIONS*/
- };
-
- struct AccelerationStructureBuildGeometryInfoKHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eAccelerationStructureBuildGeometryInfoKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- AccelerationStructureBuildGeometryInfoKHR(VULKAN_HPP_NAMESPACE::AccelerationStructureTypeKHR type_ = VULKAN_HPP_NAMESPACE::AccelerationStructureTypeKHR::eTopLevel, VULKAN_HPP_NAMESPACE::BuildAccelerationStructureFlagsKHR flags_ = {}, VULKAN_HPP_NAMESPACE::BuildAccelerationStructureModeKHR mode_ = VULKAN_HPP_NAMESPACE::BuildAccelerationStructureModeKHR::eBuild, VULKAN_HPP_NAMESPACE::AccelerationStructureKHR srcAccelerationStructure_ = {}, VULKAN_HPP_NAMESPACE::AccelerationStructureKHR dstAccelerationStructure_ = {}, uint32_t geometryCount_ = {}, const VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryKHR* pGeometries_ = {}, const VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryKHR* const * ppGeometries_ = {}, VULKAN_HPP_NAMESPACE::DeviceOrHostAddressKHR scratchData_ = {}) VULKAN_HPP_NOEXCEPT
- : type( type_ ), flags( flags_ ), mode( mode_ ), srcAccelerationStructure( srcAccelerationStructure_ ), dstAccelerationStructure( dstAccelerationStructure_ ), geometryCount( geometryCount_ ), pGeometries( pGeometries_ ), ppGeometries( ppGeometries_ ), scratchData( scratchData_ )
- {}
-
- AccelerationStructureBuildGeometryInfoKHR( AccelerationStructureBuildGeometryInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- AccelerationStructureBuildGeometryInfoKHR( VkAccelerationStructureBuildGeometryInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- AccelerationStructureBuildGeometryInfoKHR( VULKAN_HPP_NAMESPACE::AccelerationStructureTypeKHR type_, VULKAN_HPP_NAMESPACE::BuildAccelerationStructureFlagsKHR flags_, VULKAN_HPP_NAMESPACE::BuildAccelerationStructureModeKHR mode_, VULKAN_HPP_NAMESPACE::AccelerationStructureKHR srcAccelerationStructure_, VULKAN_HPP_NAMESPACE::AccelerationStructureKHR dstAccelerationStructure_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryKHR> const & geometries_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryKHR* const > const & pGeometries_ = {}, VULKAN_HPP_NAMESPACE::DeviceOrHostAddressKHR scratchData_ = {} )
- : type( type_ ), flags( flags_ ), mode( mode_ ), srcAccelerationStructure( srcAccelerationStructure_ ), dstAccelerationStructure( dstAccelerationStructure_ ), geometryCount( static_cast<uint32_t>( geometries_.size() ) ), pGeometries( geometries_.data() ), ppGeometries( pGeometries_.data() ), scratchData( scratchData_ )
- {
-#ifdef VULKAN_HPP_NO_EXCEPTIONS
- VULKAN_HPP_ASSERT( geometries_.size() == pGeometries_.size() );
-#else
- if ( geometries_.size() != pGeometries_.size() )
- {
- throw LogicError( VULKAN_HPP_NAMESPACE_STRING "::AccelerationStructureBuildGeometryInfoKHR::AccelerationStructureBuildGeometryInfoKHR: geometries_.size() != pGeometries_.size()" );
- }
-#endif /*VULKAN_HPP_NO_EXCEPTIONS*/
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- AccelerationStructureBuildGeometryInfoKHR & operator=( VkAccelerationStructureBuildGeometryInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AccelerationStructureBuildGeometryInfoKHR const *>( &rhs );
- return *this;
- }
-
- AccelerationStructureBuildGeometryInfoKHR & operator=( AccelerationStructureBuildGeometryInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( AccelerationStructureBuildGeometryInfoKHR ) );
- return *this;
- }
-
- AccelerationStructureBuildGeometryInfoKHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- AccelerationStructureBuildGeometryInfoKHR & setType( VULKAN_HPP_NAMESPACE::AccelerationStructureTypeKHR type_ ) VULKAN_HPP_NOEXCEPT
- {
- type = type_;
- return *this;
- }
-
- AccelerationStructureBuildGeometryInfoKHR & setFlags( VULKAN_HPP_NAMESPACE::BuildAccelerationStructureFlagsKHR flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- AccelerationStructureBuildGeometryInfoKHR & setMode( VULKAN_HPP_NAMESPACE::BuildAccelerationStructureModeKHR mode_ ) VULKAN_HPP_NOEXCEPT
- {
- mode = mode_;
- return *this;
- }
-
- AccelerationStructureBuildGeometryInfoKHR & setSrcAccelerationStructure( VULKAN_HPP_NAMESPACE::AccelerationStructureKHR srcAccelerationStructure_ ) VULKAN_HPP_NOEXCEPT
- {
- srcAccelerationStructure = srcAccelerationStructure_;
- return *this;
- }
-
- AccelerationStructureBuildGeometryInfoKHR & setDstAccelerationStructure( VULKAN_HPP_NAMESPACE::AccelerationStructureKHR dstAccelerationStructure_ ) VULKAN_HPP_NOEXCEPT
- {
- dstAccelerationStructure = dstAccelerationStructure_;
- return *this;
- }
-
- AccelerationStructureBuildGeometryInfoKHR & setGeometryCount( uint32_t geometryCount_ ) VULKAN_HPP_NOEXCEPT
- {
- geometryCount = geometryCount_;
- return *this;
- }
-
- AccelerationStructureBuildGeometryInfoKHR & setPGeometries( const VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryKHR* pGeometries_ ) VULKAN_HPP_NOEXCEPT
- {
- pGeometries = pGeometries_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- AccelerationStructureBuildGeometryInfoKHR & setGeometries( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryKHR> const & geometries_ ) VULKAN_HPP_NOEXCEPT
- {
- geometryCount = static_cast<uint32_t>( geometries_.size() );
- pGeometries = geometries_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- AccelerationStructureBuildGeometryInfoKHR & setPpGeometries( const VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryKHR* const * ppGeometries_ ) VULKAN_HPP_NOEXCEPT
- {
- ppGeometries = ppGeometries_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- AccelerationStructureBuildGeometryInfoKHR & setPGeometries( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryKHR* const > const & pGeometries_ ) VULKAN_HPP_NOEXCEPT
- {
- geometryCount = static_cast<uint32_t>( pGeometries_.size() );
- ppGeometries = pGeometries_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- AccelerationStructureBuildGeometryInfoKHR & setScratchData( VULKAN_HPP_NAMESPACE::DeviceOrHostAddressKHR const & scratchData_ ) VULKAN_HPP_NOEXCEPT
- {
- scratchData = scratchData_;
- return *this;
- }
-
-
- operator VkAccelerationStructureBuildGeometryInfoKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkAccelerationStructureBuildGeometryInfoKHR*>( this );
- }
-
- operator VkAccelerationStructureBuildGeometryInfoKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkAccelerationStructureBuildGeometryInfoKHR*>( this );
- }
-
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAccelerationStructureBuildGeometryInfoKHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::AccelerationStructureTypeKHR type = VULKAN_HPP_NAMESPACE::AccelerationStructureTypeKHR::eTopLevel;
- VULKAN_HPP_NAMESPACE::BuildAccelerationStructureFlagsKHR flags = {};
- VULKAN_HPP_NAMESPACE::BuildAccelerationStructureModeKHR mode = VULKAN_HPP_NAMESPACE::BuildAccelerationStructureModeKHR::eBuild;
- VULKAN_HPP_NAMESPACE::AccelerationStructureKHR srcAccelerationStructure = {};
- VULKAN_HPP_NAMESPACE::AccelerationStructureKHR dstAccelerationStructure = {};
- uint32_t geometryCount = {};
- const VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryKHR* pGeometries = {};
- const VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryKHR* const * ppGeometries = {};
- VULKAN_HPP_NAMESPACE::DeviceOrHostAddressKHR scratchData = {};
-
- };
- static_assert( sizeof( AccelerationStructureBuildGeometryInfoKHR ) == sizeof( VkAccelerationStructureBuildGeometryInfoKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<AccelerationStructureBuildGeometryInfoKHR>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::eAccelerationStructureBuildGeometryInfoKHR>
- {
- using Type = AccelerationStructureBuildGeometryInfoKHR;
- };
-
- struct AccelerationStructureBuildRangeInfoKHR
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR AccelerationStructureBuildRangeInfoKHR(uint32_t primitiveCount_ = {}, uint32_t primitiveOffset_ = {}, uint32_t firstVertex_ = {}, uint32_t transformOffset_ = {}) VULKAN_HPP_NOEXCEPT
- : primitiveCount( primitiveCount_ ), primitiveOffset( primitiveOffset_ ), firstVertex( firstVertex_ ), transformOffset( transformOffset_ )
- {}
-
- VULKAN_HPP_CONSTEXPR AccelerationStructureBuildRangeInfoKHR( AccelerationStructureBuildRangeInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- AccelerationStructureBuildRangeInfoKHR( VkAccelerationStructureBuildRangeInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- AccelerationStructureBuildRangeInfoKHR & operator=( VkAccelerationStructureBuildRangeInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AccelerationStructureBuildRangeInfoKHR const *>( &rhs );
- return *this;
- }
-
- AccelerationStructureBuildRangeInfoKHR & operator=( AccelerationStructureBuildRangeInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( AccelerationStructureBuildRangeInfoKHR ) );
- return *this;
- }
-
- AccelerationStructureBuildRangeInfoKHR & setPrimitiveCount( uint32_t primitiveCount_ ) VULKAN_HPP_NOEXCEPT
- {
- primitiveCount = primitiveCount_;
- return *this;
- }
-
- AccelerationStructureBuildRangeInfoKHR & setPrimitiveOffset( uint32_t primitiveOffset_ ) VULKAN_HPP_NOEXCEPT
- {
- primitiveOffset = primitiveOffset_;
- return *this;
- }
-
- AccelerationStructureBuildRangeInfoKHR & setFirstVertex( uint32_t firstVertex_ ) VULKAN_HPP_NOEXCEPT
- {
- firstVertex = firstVertex_;
- return *this;
- }
-
- AccelerationStructureBuildRangeInfoKHR & setTransformOffset( uint32_t transformOffset_ ) VULKAN_HPP_NOEXCEPT
- {
- transformOffset = transformOffset_;
- return *this;
- }
-
-
- operator VkAccelerationStructureBuildRangeInfoKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkAccelerationStructureBuildRangeInfoKHR*>( this );
- }
-
- operator VkAccelerationStructureBuildRangeInfoKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkAccelerationStructureBuildRangeInfoKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( AccelerationStructureBuildRangeInfoKHR const& ) const = default;
-#else
- bool operator==( AccelerationStructureBuildRangeInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( primitiveCount == rhs.primitiveCount )
- && ( primitiveOffset == rhs.primitiveOffset )
- && ( firstVertex == rhs.firstVertex )
- && ( transformOffset == rhs.transformOffset );
- }
-
- bool operator!=( AccelerationStructureBuildRangeInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- uint32_t primitiveCount = {};
- uint32_t primitiveOffset = {};
- uint32_t firstVertex = {};
- uint32_t transformOffset = {};
-
- };
- static_assert( sizeof( AccelerationStructureBuildRangeInfoKHR ) == sizeof( VkAccelerationStructureBuildRangeInfoKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<AccelerationStructureBuildRangeInfoKHR>::value, "struct wrapper is not a standard layout!" );
-
- struct AccelerationStructureBuildSizesInfoKHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eAccelerationStructureBuildSizesInfoKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR AccelerationStructureBuildSizesInfoKHR(VULKAN_HPP_NAMESPACE::DeviceSize accelerationStructureSize_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize updateScratchSize_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize buildScratchSize_ = {}) VULKAN_HPP_NOEXCEPT
- : accelerationStructureSize( accelerationStructureSize_ ), updateScratchSize( updateScratchSize_ ), buildScratchSize( buildScratchSize_ )
- {}
-
- VULKAN_HPP_CONSTEXPR AccelerationStructureBuildSizesInfoKHR( AccelerationStructureBuildSizesInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- AccelerationStructureBuildSizesInfoKHR( VkAccelerationStructureBuildSizesInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- AccelerationStructureBuildSizesInfoKHR & operator=( VkAccelerationStructureBuildSizesInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AccelerationStructureBuildSizesInfoKHR const *>( &rhs );
- return *this;
- }
-
- AccelerationStructureBuildSizesInfoKHR & operator=( AccelerationStructureBuildSizesInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( AccelerationStructureBuildSizesInfoKHR ) );
- return *this;
- }
-
- AccelerationStructureBuildSizesInfoKHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- AccelerationStructureBuildSizesInfoKHR & setAccelerationStructureSize( VULKAN_HPP_NAMESPACE::DeviceSize accelerationStructureSize_ ) VULKAN_HPP_NOEXCEPT
- {
- accelerationStructureSize = accelerationStructureSize_;
- return *this;
- }
-
- AccelerationStructureBuildSizesInfoKHR & setUpdateScratchSize( VULKAN_HPP_NAMESPACE::DeviceSize updateScratchSize_ ) VULKAN_HPP_NOEXCEPT
- {
- updateScratchSize = updateScratchSize_;
- return *this;
- }
-
- AccelerationStructureBuildSizesInfoKHR & setBuildScratchSize( VULKAN_HPP_NAMESPACE::DeviceSize buildScratchSize_ ) VULKAN_HPP_NOEXCEPT
- {
- buildScratchSize = buildScratchSize_;
- return *this;
- }
-
-
- operator VkAccelerationStructureBuildSizesInfoKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkAccelerationStructureBuildSizesInfoKHR*>( this );
- }
-
- operator VkAccelerationStructureBuildSizesInfoKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkAccelerationStructureBuildSizesInfoKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( AccelerationStructureBuildSizesInfoKHR const& ) const = default;
-#else
- bool operator==( AccelerationStructureBuildSizesInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( accelerationStructureSize == rhs.accelerationStructureSize )
- && ( updateScratchSize == rhs.updateScratchSize )
- && ( buildScratchSize == rhs.buildScratchSize );
- }
-
- bool operator!=( AccelerationStructureBuildSizesInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAccelerationStructureBuildSizesInfoKHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::DeviceSize accelerationStructureSize = {};
- VULKAN_HPP_NAMESPACE::DeviceSize updateScratchSize = {};
- VULKAN_HPP_NAMESPACE::DeviceSize buildScratchSize = {};
-
- };
- static_assert( sizeof( AccelerationStructureBuildSizesInfoKHR ) == sizeof( VkAccelerationStructureBuildSizesInfoKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<AccelerationStructureBuildSizesInfoKHR>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::eAccelerationStructureBuildSizesInfoKHR>
- {
- using Type = AccelerationStructureBuildSizesInfoKHR;
- };
-
- class Buffer
- {
- public:
- using CType = VkBuffer;
-
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::eBuffer;
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType = VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eBuffer;
-
- public:
- VULKAN_HPP_CONSTEXPR Buffer() VULKAN_HPP_NOEXCEPT
- : m_buffer(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_CONSTEXPR Buffer( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- : m_buffer(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_TYPESAFE_EXPLICIT Buffer( VkBuffer buffer ) VULKAN_HPP_NOEXCEPT
- : m_buffer( buffer )
- {}
-
-#if defined(VULKAN_HPP_TYPESAFE_CONVERSION)
- Buffer & operator=(VkBuffer buffer) VULKAN_HPP_NOEXCEPT
- {
- m_buffer = buffer;
- return *this;
- }
-#endif
-
- Buffer & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- {
- m_buffer = VK_NULL_HANDLE;
- return *this;
- }
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( Buffer const& ) const = default;
-#else
- bool operator==( Buffer const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_buffer == rhs.m_buffer;
- }
-
- bool operator!=(Buffer const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_buffer != rhs.m_buffer;
- }
-
- bool operator<(Buffer const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_buffer < rhs.m_buffer;
- }
-#endif
-
- VULKAN_HPP_TYPESAFE_EXPLICIT operator VkBuffer() const VULKAN_HPP_NOEXCEPT
- {
- return m_buffer;
- }
-
- explicit operator bool() const VULKAN_HPP_NOEXCEPT
- {
- return m_buffer != VK_NULL_HANDLE;
- }
-
- bool operator!() const VULKAN_HPP_NOEXCEPT
- {
- return m_buffer == VK_NULL_HANDLE;
- }
-
- private:
- VkBuffer m_buffer;
- };
- static_assert( sizeof( VULKAN_HPP_NAMESPACE::Buffer ) == sizeof( VkBuffer ), "handle and wrapper have different size!" );
-
- template <>
- struct VULKAN_HPP_DEPRECATED("vk::cpp_type is deprecated. Use vk::CppType instead.") cpp_type<ObjectType::eBuffer>
- {
- using type = VULKAN_HPP_NAMESPACE::Buffer;
- };
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eBuffer>
- {
- using Type = VULKAN_HPP_NAMESPACE::Buffer;
- };
-
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT, VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eBuffer>
- {
- using Type = VULKAN_HPP_NAMESPACE::Buffer;
- };
-
-
- template <>
- struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::Buffer>
- {
- static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
- };
-
- struct AccelerationStructureCreateInfoKHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eAccelerationStructureCreateInfoKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR AccelerationStructureCreateInfoKHR(VULKAN_HPP_NAMESPACE::AccelerationStructureCreateFlagsKHR createFlags_ = {}, VULKAN_HPP_NAMESPACE::Buffer buffer_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize offset_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize size_ = {}, VULKAN_HPP_NAMESPACE::AccelerationStructureTypeKHR type_ = VULKAN_HPP_NAMESPACE::AccelerationStructureTypeKHR::eTopLevel, VULKAN_HPP_NAMESPACE::DeviceAddress deviceAddress_ = {}) VULKAN_HPP_NOEXCEPT
- : createFlags( createFlags_ ), buffer( buffer_ ), offset( offset_ ), size( size_ ), type( type_ ), deviceAddress( deviceAddress_ )
- {}
-
- VULKAN_HPP_CONSTEXPR AccelerationStructureCreateInfoKHR( AccelerationStructureCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- AccelerationStructureCreateInfoKHR( VkAccelerationStructureCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- AccelerationStructureCreateInfoKHR & operator=( VkAccelerationStructureCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AccelerationStructureCreateInfoKHR const *>( &rhs );
- return *this;
- }
-
- AccelerationStructureCreateInfoKHR & operator=( AccelerationStructureCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( AccelerationStructureCreateInfoKHR ) );
- return *this;
- }
-
- AccelerationStructureCreateInfoKHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- AccelerationStructureCreateInfoKHR & setCreateFlags( VULKAN_HPP_NAMESPACE::AccelerationStructureCreateFlagsKHR createFlags_ ) VULKAN_HPP_NOEXCEPT
- {
- createFlags = createFlags_;
- return *this;
- }
-
- AccelerationStructureCreateInfoKHR & setBuffer( VULKAN_HPP_NAMESPACE::Buffer buffer_ ) VULKAN_HPP_NOEXCEPT
- {
- buffer = buffer_;
- return *this;
- }
-
- AccelerationStructureCreateInfoKHR & setOffset( VULKAN_HPP_NAMESPACE::DeviceSize offset_ ) VULKAN_HPP_NOEXCEPT
- {
- offset = offset_;
- return *this;
- }
-
- AccelerationStructureCreateInfoKHR & setSize( VULKAN_HPP_NAMESPACE::DeviceSize size_ ) VULKAN_HPP_NOEXCEPT
- {
- size = size_;
- return *this;
- }
-
- AccelerationStructureCreateInfoKHR & setType( VULKAN_HPP_NAMESPACE::AccelerationStructureTypeKHR type_ ) VULKAN_HPP_NOEXCEPT
- {
- type = type_;
- return *this;
- }
-
- AccelerationStructureCreateInfoKHR & setDeviceAddress( VULKAN_HPP_NAMESPACE::DeviceAddress deviceAddress_ ) VULKAN_HPP_NOEXCEPT
- {
- deviceAddress = deviceAddress_;
- return *this;
- }
-
-
- operator VkAccelerationStructureCreateInfoKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkAccelerationStructureCreateInfoKHR*>( this );
- }
-
- operator VkAccelerationStructureCreateInfoKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkAccelerationStructureCreateInfoKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( AccelerationStructureCreateInfoKHR const& ) const = default;
-#else
- bool operator==( AccelerationStructureCreateInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( createFlags == rhs.createFlags )
- && ( buffer == rhs.buffer )
- && ( offset == rhs.offset )
- && ( size == rhs.size )
- && ( type == rhs.type )
- && ( deviceAddress == rhs.deviceAddress );
- }
-
- bool operator!=( AccelerationStructureCreateInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAccelerationStructureCreateInfoKHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::AccelerationStructureCreateFlagsKHR createFlags = {};
- VULKAN_HPP_NAMESPACE::Buffer buffer = {};
- VULKAN_HPP_NAMESPACE::DeviceSize offset = {};
- VULKAN_HPP_NAMESPACE::DeviceSize size = {};
- VULKAN_HPP_NAMESPACE::AccelerationStructureTypeKHR type = VULKAN_HPP_NAMESPACE::AccelerationStructureTypeKHR::eTopLevel;
- VULKAN_HPP_NAMESPACE::DeviceAddress deviceAddress = {};
-
- };
- static_assert( sizeof( AccelerationStructureCreateInfoKHR ) == sizeof( VkAccelerationStructureCreateInfoKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<AccelerationStructureCreateInfoKHR>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::eAccelerationStructureCreateInfoKHR>
- {
- using Type = AccelerationStructureCreateInfoKHR;
- };
-
- struct GeometryTrianglesNV
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eGeometryTrianglesNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR GeometryTrianglesNV(VULKAN_HPP_NAMESPACE::Buffer vertexData_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize vertexOffset_ = {}, uint32_t vertexCount_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize vertexStride_ = {}, VULKAN_HPP_NAMESPACE::Format vertexFormat_ = VULKAN_HPP_NAMESPACE::Format::eUndefined, VULKAN_HPP_NAMESPACE::Buffer indexData_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize indexOffset_ = {}, uint32_t indexCount_ = {}, VULKAN_HPP_NAMESPACE::IndexType indexType_ = VULKAN_HPP_NAMESPACE::IndexType::eUint16, VULKAN_HPP_NAMESPACE::Buffer transformData_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize transformOffset_ = {}) VULKAN_HPP_NOEXCEPT
- : vertexData( vertexData_ ), vertexOffset( vertexOffset_ ), vertexCount( vertexCount_ ), vertexStride( vertexStride_ ), vertexFormat( vertexFormat_ ), indexData( indexData_ ), indexOffset( indexOffset_ ), indexCount( indexCount_ ), indexType( indexType_ ), transformData( transformData_ ), transformOffset( transformOffset_ )
- {}
-
- VULKAN_HPP_CONSTEXPR GeometryTrianglesNV( GeometryTrianglesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- GeometryTrianglesNV( VkGeometryTrianglesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- GeometryTrianglesNV & operator=( VkGeometryTrianglesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::GeometryTrianglesNV const *>( &rhs );
- return *this;
- }
-
- GeometryTrianglesNV & operator=( GeometryTrianglesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( GeometryTrianglesNV ) );
- return *this;
- }
-
- GeometryTrianglesNV & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- GeometryTrianglesNV & setVertexData( VULKAN_HPP_NAMESPACE::Buffer vertexData_ ) VULKAN_HPP_NOEXCEPT
- {
- vertexData = vertexData_;
- return *this;
- }
-
- GeometryTrianglesNV & setVertexOffset( VULKAN_HPP_NAMESPACE::DeviceSize vertexOffset_ ) VULKAN_HPP_NOEXCEPT
- {
- vertexOffset = vertexOffset_;
- return *this;
- }
-
- GeometryTrianglesNV & setVertexCount( uint32_t vertexCount_ ) VULKAN_HPP_NOEXCEPT
- {
- vertexCount = vertexCount_;
- return *this;
- }
-
- GeometryTrianglesNV & setVertexStride( VULKAN_HPP_NAMESPACE::DeviceSize vertexStride_ ) VULKAN_HPP_NOEXCEPT
- {
- vertexStride = vertexStride_;
- return *this;
- }
-
- GeometryTrianglesNV & setVertexFormat( VULKAN_HPP_NAMESPACE::Format vertexFormat_ ) VULKAN_HPP_NOEXCEPT
- {
- vertexFormat = vertexFormat_;
- return *this;
- }
-
- GeometryTrianglesNV & setIndexData( VULKAN_HPP_NAMESPACE::Buffer indexData_ ) VULKAN_HPP_NOEXCEPT
- {
- indexData = indexData_;
- return *this;
- }
-
- GeometryTrianglesNV & setIndexOffset( VULKAN_HPP_NAMESPACE::DeviceSize indexOffset_ ) VULKAN_HPP_NOEXCEPT
- {
- indexOffset = indexOffset_;
- return *this;
- }
-
- GeometryTrianglesNV & setIndexCount( uint32_t indexCount_ ) VULKAN_HPP_NOEXCEPT
- {
- indexCount = indexCount_;
- return *this;
- }
-
- GeometryTrianglesNV & setIndexType( VULKAN_HPP_NAMESPACE::IndexType indexType_ ) VULKAN_HPP_NOEXCEPT
- {
- indexType = indexType_;
- return *this;
- }
-
- GeometryTrianglesNV & setTransformData( VULKAN_HPP_NAMESPACE::Buffer transformData_ ) VULKAN_HPP_NOEXCEPT
- {
- transformData = transformData_;
- return *this;
- }
-
- GeometryTrianglesNV & setTransformOffset( VULKAN_HPP_NAMESPACE::DeviceSize transformOffset_ ) VULKAN_HPP_NOEXCEPT
- {
- transformOffset = transformOffset_;
- return *this;
- }
-
-
- operator VkGeometryTrianglesNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkGeometryTrianglesNV*>( this );
- }
-
- operator VkGeometryTrianglesNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkGeometryTrianglesNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( GeometryTrianglesNV const& ) const = default;
-#else
- bool operator==( GeometryTrianglesNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( vertexData == rhs.vertexData )
- && ( vertexOffset == rhs.vertexOffset )
- && ( vertexCount == rhs.vertexCount )
- && ( vertexStride == rhs.vertexStride )
- && ( vertexFormat == rhs.vertexFormat )
- && ( indexData == rhs.indexData )
- && ( indexOffset == rhs.indexOffset )
- && ( indexCount == rhs.indexCount )
- && ( indexType == rhs.indexType )
- && ( transformData == rhs.transformData )
- && ( transformOffset == rhs.transformOffset );
- }
-
- bool operator!=( GeometryTrianglesNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eGeometryTrianglesNV;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::Buffer vertexData = {};
- VULKAN_HPP_NAMESPACE::DeviceSize vertexOffset = {};
- uint32_t vertexCount = {};
- VULKAN_HPP_NAMESPACE::DeviceSize vertexStride = {};
- VULKAN_HPP_NAMESPACE::Format vertexFormat = VULKAN_HPP_NAMESPACE::Format::eUndefined;
- VULKAN_HPP_NAMESPACE::Buffer indexData = {};
- VULKAN_HPP_NAMESPACE::DeviceSize indexOffset = {};
- uint32_t indexCount = {};
- VULKAN_HPP_NAMESPACE::IndexType indexType = VULKAN_HPP_NAMESPACE::IndexType::eUint16;
- VULKAN_HPP_NAMESPACE::Buffer transformData = {};
- VULKAN_HPP_NAMESPACE::DeviceSize transformOffset = {};
-
- };
- static_assert( sizeof( GeometryTrianglesNV ) == sizeof( VkGeometryTrianglesNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<GeometryTrianglesNV>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::eGeometryTrianglesNV>
- {
- using Type = GeometryTrianglesNV;
- };
-
- struct GeometryAABBNV
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eGeometryAabbNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR GeometryAABBNV(VULKAN_HPP_NAMESPACE::Buffer aabbData_ = {}, uint32_t numAABBs_ = {}, uint32_t stride_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize offset_ = {}) VULKAN_HPP_NOEXCEPT
- : aabbData( aabbData_ ), numAABBs( numAABBs_ ), stride( stride_ ), offset( offset_ )
- {}
-
- VULKAN_HPP_CONSTEXPR GeometryAABBNV( GeometryAABBNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- GeometryAABBNV( VkGeometryAABBNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- GeometryAABBNV & operator=( VkGeometryAABBNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::GeometryAABBNV const *>( &rhs );
- return *this;
- }
-
- GeometryAABBNV & operator=( GeometryAABBNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( GeometryAABBNV ) );
- return *this;
- }
-
- GeometryAABBNV & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- GeometryAABBNV & setAabbData( VULKAN_HPP_NAMESPACE::Buffer aabbData_ ) VULKAN_HPP_NOEXCEPT
- {
- aabbData = aabbData_;
- return *this;
- }
-
- GeometryAABBNV & setNumAABBs( uint32_t numAABBs_ ) VULKAN_HPP_NOEXCEPT
- {
- numAABBs = numAABBs_;
- return *this;
- }
-
- GeometryAABBNV & setStride( uint32_t stride_ ) VULKAN_HPP_NOEXCEPT
- {
- stride = stride_;
- return *this;
- }
-
- GeometryAABBNV & setOffset( VULKAN_HPP_NAMESPACE::DeviceSize offset_ ) VULKAN_HPP_NOEXCEPT
- {
- offset = offset_;
- return *this;
- }
-
-
- operator VkGeometryAABBNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkGeometryAABBNV*>( this );
- }
-
- operator VkGeometryAABBNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkGeometryAABBNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( GeometryAABBNV const& ) const = default;
-#else
- bool operator==( GeometryAABBNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( aabbData == rhs.aabbData )
- && ( numAABBs == rhs.numAABBs )
- && ( stride == rhs.stride )
- && ( offset == rhs.offset );
- }
-
- bool operator!=( GeometryAABBNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eGeometryAabbNV;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::Buffer aabbData = {};
- uint32_t numAABBs = {};
- uint32_t stride = {};
- VULKAN_HPP_NAMESPACE::DeviceSize offset = {};
-
- };
- static_assert( sizeof( GeometryAABBNV ) == sizeof( VkGeometryAABBNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<GeometryAABBNV>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::eGeometryAabbNV>
- {
- using Type = GeometryAABBNV;
- };
-
- struct GeometryDataNV
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR GeometryDataNV(VULKAN_HPP_NAMESPACE::GeometryTrianglesNV triangles_ = {}, VULKAN_HPP_NAMESPACE::GeometryAABBNV aabbs_ = {}) VULKAN_HPP_NOEXCEPT
- : triangles( triangles_ ), aabbs( aabbs_ )
- {}
-
- VULKAN_HPP_CONSTEXPR GeometryDataNV( GeometryDataNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- GeometryDataNV( VkGeometryDataNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- GeometryDataNV & operator=( VkGeometryDataNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::GeometryDataNV const *>( &rhs );
- return *this;
- }
-
- GeometryDataNV & operator=( GeometryDataNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( GeometryDataNV ) );
- return *this;
- }
-
- GeometryDataNV & setTriangles( VULKAN_HPP_NAMESPACE::GeometryTrianglesNV const & triangles_ ) VULKAN_HPP_NOEXCEPT
- {
- triangles = triangles_;
- return *this;
- }
-
- GeometryDataNV & setAabbs( VULKAN_HPP_NAMESPACE::GeometryAABBNV const & aabbs_ ) VULKAN_HPP_NOEXCEPT
- {
- aabbs = aabbs_;
- return *this;
- }
-
-
- operator VkGeometryDataNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkGeometryDataNV*>( this );
- }
-
- operator VkGeometryDataNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkGeometryDataNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( GeometryDataNV const& ) const = default;
-#else
- bool operator==( GeometryDataNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( triangles == rhs.triangles )
- && ( aabbs == rhs.aabbs );
- }
-
- bool operator!=( GeometryDataNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::GeometryTrianglesNV triangles = {};
- VULKAN_HPP_NAMESPACE::GeometryAABBNV aabbs = {};
-
- };
- static_assert( sizeof( GeometryDataNV ) == sizeof( VkGeometryDataNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<GeometryDataNV>::value, "struct wrapper is not a standard layout!" );
-
- struct GeometryNV
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eGeometryNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR GeometryNV(VULKAN_HPP_NAMESPACE::GeometryTypeKHR geometryType_ = VULKAN_HPP_NAMESPACE::GeometryTypeKHR::eTriangles, VULKAN_HPP_NAMESPACE::GeometryDataNV geometry_ = {}, VULKAN_HPP_NAMESPACE::GeometryFlagsKHR flags_ = {}) VULKAN_HPP_NOEXCEPT
- : geometryType( geometryType_ ), geometry( geometry_ ), flags( flags_ )
- {}
-
- VULKAN_HPP_CONSTEXPR GeometryNV( GeometryNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- GeometryNV( VkGeometryNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- GeometryNV & operator=( VkGeometryNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::GeometryNV const *>( &rhs );
- return *this;
- }
-
- GeometryNV & operator=( GeometryNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( GeometryNV ) );
- return *this;
- }
-
- GeometryNV & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- GeometryNV & setGeometryType( VULKAN_HPP_NAMESPACE::GeometryTypeKHR geometryType_ ) VULKAN_HPP_NOEXCEPT
- {
- geometryType = geometryType_;
- return *this;
- }
-
- GeometryNV & setGeometry( VULKAN_HPP_NAMESPACE::GeometryDataNV const & geometry_ ) VULKAN_HPP_NOEXCEPT
- {
- geometry = geometry_;
- return *this;
- }
-
- GeometryNV & setFlags( VULKAN_HPP_NAMESPACE::GeometryFlagsKHR flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
-
- operator VkGeometryNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkGeometryNV*>( this );
- }
-
- operator VkGeometryNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkGeometryNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( GeometryNV const& ) const = default;
-#else
- bool operator==( GeometryNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( geometryType == rhs.geometryType )
- && ( geometry == rhs.geometry )
- && ( flags == rhs.flags );
- }
-
- bool operator!=( GeometryNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eGeometryNV;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::GeometryTypeKHR geometryType = VULKAN_HPP_NAMESPACE::GeometryTypeKHR::eTriangles;
- VULKAN_HPP_NAMESPACE::GeometryDataNV geometry = {};
- VULKAN_HPP_NAMESPACE::GeometryFlagsKHR flags = {};
-
- };
- static_assert( sizeof( GeometryNV ) == sizeof( VkGeometryNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<GeometryNV>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::eGeometryNV>
- {
- using Type = GeometryNV;
- };
-
- struct AccelerationStructureInfoNV
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eAccelerationStructureInfoNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR AccelerationStructureInfoNV(VULKAN_HPP_NAMESPACE::AccelerationStructureTypeNV type_ = {}, VULKAN_HPP_NAMESPACE::BuildAccelerationStructureFlagsNV flags_ = {}, uint32_t instanceCount_ = {}, uint32_t geometryCount_ = {}, const VULKAN_HPP_NAMESPACE::GeometryNV* pGeometries_ = {}) VULKAN_HPP_NOEXCEPT
- : type( type_ ), flags( flags_ ), instanceCount( instanceCount_ ), geometryCount( geometryCount_ ), pGeometries( pGeometries_ )
- {}
-
- VULKAN_HPP_CONSTEXPR AccelerationStructureInfoNV( AccelerationStructureInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- AccelerationStructureInfoNV( VkAccelerationStructureInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- AccelerationStructureInfoNV( VULKAN_HPP_NAMESPACE::AccelerationStructureTypeNV type_, VULKAN_HPP_NAMESPACE::BuildAccelerationStructureFlagsNV flags_, uint32_t instanceCount_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::GeometryNV> const & geometries_ )
- : type( type_ ), flags( flags_ ), instanceCount( instanceCount_ ), geometryCount( static_cast<uint32_t>( geometries_.size() ) ), pGeometries( geometries_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- AccelerationStructureInfoNV & operator=( VkAccelerationStructureInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AccelerationStructureInfoNV const *>( &rhs );
- return *this;
- }
-
- AccelerationStructureInfoNV & operator=( AccelerationStructureInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( AccelerationStructureInfoNV ) );
- return *this;
- }
-
- AccelerationStructureInfoNV & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- AccelerationStructureInfoNV & setType( VULKAN_HPP_NAMESPACE::AccelerationStructureTypeNV type_ ) VULKAN_HPP_NOEXCEPT
- {
- type = type_;
- return *this;
- }
-
- AccelerationStructureInfoNV & setFlags( VULKAN_HPP_NAMESPACE::BuildAccelerationStructureFlagsNV flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- AccelerationStructureInfoNV & setInstanceCount( uint32_t instanceCount_ ) VULKAN_HPP_NOEXCEPT
- {
- instanceCount = instanceCount_;
- return *this;
- }
-
- AccelerationStructureInfoNV & setGeometryCount( uint32_t geometryCount_ ) VULKAN_HPP_NOEXCEPT
- {
- geometryCount = geometryCount_;
- return *this;
- }
-
- AccelerationStructureInfoNV & setPGeometries( const VULKAN_HPP_NAMESPACE::GeometryNV* pGeometries_ ) VULKAN_HPP_NOEXCEPT
- {
- pGeometries = pGeometries_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- AccelerationStructureInfoNV & setGeometries( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::GeometryNV> const & geometries_ ) VULKAN_HPP_NOEXCEPT
- {
- geometryCount = static_cast<uint32_t>( geometries_.size() );
- pGeometries = geometries_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkAccelerationStructureInfoNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkAccelerationStructureInfoNV*>( this );
- }
-
- operator VkAccelerationStructureInfoNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkAccelerationStructureInfoNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( AccelerationStructureInfoNV const& ) const = default;
-#else
- bool operator==( AccelerationStructureInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( type == rhs.type )
- && ( flags == rhs.flags )
- && ( instanceCount == rhs.instanceCount )
- && ( geometryCount == rhs.geometryCount )
- && ( pGeometries == rhs.pGeometries );
- }
-
- bool operator!=( AccelerationStructureInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAccelerationStructureInfoNV;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::AccelerationStructureTypeNV type = {};
- VULKAN_HPP_NAMESPACE::BuildAccelerationStructureFlagsNV flags = {};
- uint32_t instanceCount = {};
- uint32_t geometryCount = {};
- const VULKAN_HPP_NAMESPACE::GeometryNV* pGeometries = {};
-
- };
- static_assert( sizeof( AccelerationStructureInfoNV ) == sizeof( VkAccelerationStructureInfoNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<AccelerationStructureInfoNV>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::eAccelerationStructureInfoNV>
- {
- using Type = AccelerationStructureInfoNV;
- };
-
- struct AccelerationStructureCreateInfoNV
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eAccelerationStructureCreateInfoNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR AccelerationStructureCreateInfoNV(VULKAN_HPP_NAMESPACE::DeviceSize compactedSize_ = {}, VULKAN_HPP_NAMESPACE::AccelerationStructureInfoNV info_ = {}) VULKAN_HPP_NOEXCEPT
- : compactedSize( compactedSize_ ), info( info_ )
- {}
-
- VULKAN_HPP_CONSTEXPR AccelerationStructureCreateInfoNV( AccelerationStructureCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- AccelerationStructureCreateInfoNV( VkAccelerationStructureCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- AccelerationStructureCreateInfoNV & operator=( VkAccelerationStructureCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AccelerationStructureCreateInfoNV const *>( &rhs );
- return *this;
- }
-
- AccelerationStructureCreateInfoNV & operator=( AccelerationStructureCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( AccelerationStructureCreateInfoNV ) );
- return *this;
- }
-
- AccelerationStructureCreateInfoNV & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- AccelerationStructureCreateInfoNV & setCompactedSize( VULKAN_HPP_NAMESPACE::DeviceSize compactedSize_ ) VULKAN_HPP_NOEXCEPT
- {
- compactedSize = compactedSize_;
- return *this;
- }
-
- AccelerationStructureCreateInfoNV & setInfo( VULKAN_HPP_NAMESPACE::AccelerationStructureInfoNV const & info_ ) VULKAN_HPP_NOEXCEPT
- {
- info = info_;
- return *this;
- }
-
-
- operator VkAccelerationStructureCreateInfoNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkAccelerationStructureCreateInfoNV*>( this );
- }
-
- operator VkAccelerationStructureCreateInfoNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkAccelerationStructureCreateInfoNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( AccelerationStructureCreateInfoNV const& ) const = default;
-#else
- bool operator==( AccelerationStructureCreateInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( compactedSize == rhs.compactedSize )
- && ( info == rhs.info );
- }
-
- bool operator!=( AccelerationStructureCreateInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAccelerationStructureCreateInfoNV;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::DeviceSize compactedSize = {};
- VULKAN_HPP_NAMESPACE::AccelerationStructureInfoNV info = {};
-
- };
- static_assert( sizeof( AccelerationStructureCreateInfoNV ) == sizeof( VkAccelerationStructureCreateInfoNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<AccelerationStructureCreateInfoNV>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::eAccelerationStructureCreateInfoNV>
- {
- using Type = AccelerationStructureCreateInfoNV;
- };
-
- struct AccelerationStructureDeviceAddressInfoKHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eAccelerationStructureDeviceAddressInfoKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR AccelerationStructureDeviceAddressInfoKHR(VULKAN_HPP_NAMESPACE::AccelerationStructureKHR accelerationStructure_ = {}) VULKAN_HPP_NOEXCEPT
- : accelerationStructure( accelerationStructure_ )
- {}
-
- VULKAN_HPP_CONSTEXPR AccelerationStructureDeviceAddressInfoKHR( AccelerationStructureDeviceAddressInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- AccelerationStructureDeviceAddressInfoKHR( VkAccelerationStructureDeviceAddressInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- AccelerationStructureDeviceAddressInfoKHR & operator=( VkAccelerationStructureDeviceAddressInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AccelerationStructureDeviceAddressInfoKHR const *>( &rhs );
- return *this;
- }
-
- AccelerationStructureDeviceAddressInfoKHR & operator=( AccelerationStructureDeviceAddressInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( AccelerationStructureDeviceAddressInfoKHR ) );
- return *this;
- }
-
- AccelerationStructureDeviceAddressInfoKHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- AccelerationStructureDeviceAddressInfoKHR & setAccelerationStructure( VULKAN_HPP_NAMESPACE::AccelerationStructureKHR accelerationStructure_ ) VULKAN_HPP_NOEXCEPT
- {
- accelerationStructure = accelerationStructure_;
- return *this;
- }
-
-
- operator VkAccelerationStructureDeviceAddressInfoKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkAccelerationStructureDeviceAddressInfoKHR*>( this );
- }
-
- operator VkAccelerationStructureDeviceAddressInfoKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkAccelerationStructureDeviceAddressInfoKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( AccelerationStructureDeviceAddressInfoKHR const& ) const = default;
-#else
- bool operator==( AccelerationStructureDeviceAddressInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( accelerationStructure == rhs.accelerationStructure );
- }
-
- bool operator!=( AccelerationStructureDeviceAddressInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAccelerationStructureDeviceAddressInfoKHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::AccelerationStructureKHR accelerationStructure = {};
-
- };
- static_assert( sizeof( AccelerationStructureDeviceAddressInfoKHR ) == sizeof( VkAccelerationStructureDeviceAddressInfoKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<AccelerationStructureDeviceAddressInfoKHR>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::eAccelerationStructureDeviceAddressInfoKHR>
- {
- using Type = AccelerationStructureDeviceAddressInfoKHR;
- };
-
- struct TransformMatrixKHR
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR_14 TransformMatrixKHR(std::array<std::array<float,4>,3> const& matrix_ = {}) VULKAN_HPP_NOEXCEPT
- : matrix( matrix_ )
- {}
-
- VULKAN_HPP_CONSTEXPR_14 TransformMatrixKHR( TransformMatrixKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- TransformMatrixKHR( VkTransformMatrixKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- TransformMatrixKHR & operator=( VkTransformMatrixKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::TransformMatrixKHR const *>( &rhs );
- return *this;
- }
-
- TransformMatrixKHR & operator=( TransformMatrixKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( TransformMatrixKHR ) );
- return *this;
- }
-
- TransformMatrixKHR & setMatrix( std::array<std::array<float,4>,3> matrix_ ) VULKAN_HPP_NOEXCEPT
- {
- matrix = matrix_;
- return *this;
- }
-
-
- operator VkTransformMatrixKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkTransformMatrixKHR*>( this );
- }
-
- operator VkTransformMatrixKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkTransformMatrixKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( TransformMatrixKHR const& ) const = default;
-#else
- bool operator==( TransformMatrixKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( matrix == rhs.matrix );
- }
-
- bool operator!=( TransformMatrixKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::ArrayWrapper2D<float, 3, 4> matrix = {};
-
- };
- static_assert( sizeof( TransformMatrixKHR ) == sizeof( VkTransformMatrixKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<TransformMatrixKHR>::value, "struct wrapper is not a standard layout!" );
- using TransformMatrixNV = TransformMatrixKHR;
-
- struct AccelerationStructureInstanceKHR
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR_14 AccelerationStructureInstanceKHR(VULKAN_HPP_NAMESPACE::TransformMatrixKHR transform_ = {}, uint32_t instanceCustomIndex_ = {}, uint32_t mask_ = {}, uint32_t instanceShaderBindingTableRecordOffset_ = {}, VULKAN_HPP_NAMESPACE::GeometryInstanceFlagsKHR flags_ = {}, uint64_t accelerationStructureReference_ = {}) VULKAN_HPP_NOEXCEPT
- : transform( transform_ ), instanceCustomIndex( instanceCustomIndex_ ), mask( mask_ ), instanceShaderBindingTableRecordOffset( instanceShaderBindingTableRecordOffset_ ), flags( flags_ ), accelerationStructureReference( accelerationStructureReference_ )
- {}
-
- VULKAN_HPP_CONSTEXPR_14 AccelerationStructureInstanceKHR( AccelerationStructureInstanceKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- AccelerationStructureInstanceKHR( VkAccelerationStructureInstanceKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- AccelerationStructureInstanceKHR & operator=( VkAccelerationStructureInstanceKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AccelerationStructureInstanceKHR const *>( &rhs );
- return *this;
- }
-
- AccelerationStructureInstanceKHR & operator=( AccelerationStructureInstanceKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( AccelerationStructureInstanceKHR ) );
- return *this;
- }
-
- AccelerationStructureInstanceKHR & setTransform( VULKAN_HPP_NAMESPACE::TransformMatrixKHR const & transform_ ) VULKAN_HPP_NOEXCEPT
- {
- transform = transform_;
- return *this;
- }
-
- AccelerationStructureInstanceKHR & setInstanceCustomIndex( uint32_t instanceCustomIndex_ ) VULKAN_HPP_NOEXCEPT
- {
- instanceCustomIndex = instanceCustomIndex_;
- return *this;
- }
-
- AccelerationStructureInstanceKHR & setMask( uint32_t mask_ ) VULKAN_HPP_NOEXCEPT
- {
- mask = mask_;
- return *this;
- }
-
- AccelerationStructureInstanceKHR & setInstanceShaderBindingTableRecordOffset( uint32_t instanceShaderBindingTableRecordOffset_ ) VULKAN_HPP_NOEXCEPT
- {
- instanceShaderBindingTableRecordOffset = instanceShaderBindingTableRecordOffset_;
- return *this;
- }
-
- AccelerationStructureInstanceKHR & setFlags( VULKAN_HPP_NAMESPACE::GeometryInstanceFlagsKHR flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = *reinterpret_cast<VkGeometryInstanceFlagsKHR*>(&flags_);
- return *this;
- }
-
- AccelerationStructureInstanceKHR & setAccelerationStructureReference( uint64_t accelerationStructureReference_ ) VULKAN_HPP_NOEXCEPT
- {
- accelerationStructureReference = accelerationStructureReference_;
- return *this;
- }
-
-
- operator VkAccelerationStructureInstanceKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkAccelerationStructureInstanceKHR*>( this );
- }
-
- operator VkAccelerationStructureInstanceKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkAccelerationStructureInstanceKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( AccelerationStructureInstanceKHR const& ) const = default;
-#else
- bool operator==( AccelerationStructureInstanceKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( transform == rhs.transform )
- && ( instanceCustomIndex == rhs.instanceCustomIndex )
- && ( mask == rhs.mask )
- && ( instanceShaderBindingTableRecordOffset == rhs.instanceShaderBindingTableRecordOffset )
- && ( flags == rhs.flags )
- && ( accelerationStructureReference == rhs.accelerationStructureReference );
- }
-
- bool operator!=( AccelerationStructureInstanceKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::TransformMatrixKHR transform = {};
- uint32_t instanceCustomIndex : 24;
- uint32_t mask : 8;
- uint32_t instanceShaderBindingTableRecordOffset : 24;
- VkGeometryInstanceFlagsKHR flags : 8;
- uint64_t accelerationStructureReference = {};
-
- };
- static_assert( sizeof( AccelerationStructureInstanceKHR ) == sizeof( VkAccelerationStructureInstanceKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<AccelerationStructureInstanceKHR>::value, "struct wrapper is not a standard layout!" );
- using AccelerationStructureInstanceNV = AccelerationStructureInstanceKHR;
-
- class AccelerationStructureNV
- {
- public:
- using CType = VkAccelerationStructureNV;
-
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::eAccelerationStructureNV;
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType = VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eAccelerationStructureNV;
-
- public:
- VULKAN_HPP_CONSTEXPR AccelerationStructureNV() VULKAN_HPP_NOEXCEPT
- : m_accelerationStructureNV(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_CONSTEXPR AccelerationStructureNV( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- : m_accelerationStructureNV(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_TYPESAFE_EXPLICIT AccelerationStructureNV( VkAccelerationStructureNV accelerationStructureNV ) VULKAN_HPP_NOEXCEPT
- : m_accelerationStructureNV( accelerationStructureNV )
- {}
-
-#if defined(VULKAN_HPP_TYPESAFE_CONVERSION)
- AccelerationStructureNV & operator=(VkAccelerationStructureNV accelerationStructureNV) VULKAN_HPP_NOEXCEPT
- {
- m_accelerationStructureNV = accelerationStructureNV;
- return *this;
- }
-#endif
-
- AccelerationStructureNV & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- {
- m_accelerationStructureNV = VK_NULL_HANDLE;
- return *this;
- }
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( AccelerationStructureNV const& ) const = default;
-#else
- bool operator==( AccelerationStructureNV const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_accelerationStructureNV == rhs.m_accelerationStructureNV;
- }
-
- bool operator!=(AccelerationStructureNV const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_accelerationStructureNV != rhs.m_accelerationStructureNV;
- }
-
- bool operator<(AccelerationStructureNV const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_accelerationStructureNV < rhs.m_accelerationStructureNV;
- }
-#endif
-
- VULKAN_HPP_TYPESAFE_EXPLICIT operator VkAccelerationStructureNV() const VULKAN_HPP_NOEXCEPT
- {
- return m_accelerationStructureNV;
- }
-
- explicit operator bool() const VULKAN_HPP_NOEXCEPT
- {
- return m_accelerationStructureNV != VK_NULL_HANDLE;
- }
-
- bool operator!() const VULKAN_HPP_NOEXCEPT
- {
- return m_accelerationStructureNV == VK_NULL_HANDLE;
- }
-
- private:
- VkAccelerationStructureNV m_accelerationStructureNV;
- };
- static_assert( sizeof( VULKAN_HPP_NAMESPACE::AccelerationStructureNV ) == sizeof( VkAccelerationStructureNV ), "handle and wrapper have different size!" );
-
- template <>
- struct VULKAN_HPP_DEPRECATED("vk::cpp_type is deprecated. Use vk::CppType instead.") cpp_type<ObjectType::eAccelerationStructureNV>
- {
- using type = VULKAN_HPP_NAMESPACE::AccelerationStructureNV;
- };
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eAccelerationStructureNV>
- {
- using Type = VULKAN_HPP_NAMESPACE::AccelerationStructureNV;
- };
-
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT, VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eAccelerationStructureNV>
- {
- using Type = VULKAN_HPP_NAMESPACE::AccelerationStructureNV;
- };
-
-
- template <>
- struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::AccelerationStructureNV>
- {
- static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
- };
-
- struct AccelerationStructureMemoryRequirementsInfoNV
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eAccelerationStructureMemoryRequirementsInfoNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR AccelerationStructureMemoryRequirementsInfoNV(VULKAN_HPP_NAMESPACE::AccelerationStructureMemoryRequirementsTypeNV type_ = VULKAN_HPP_NAMESPACE::AccelerationStructureMemoryRequirementsTypeNV::eObject, VULKAN_HPP_NAMESPACE::AccelerationStructureNV accelerationStructure_ = {}) VULKAN_HPP_NOEXCEPT
- : type( type_ ), accelerationStructure( accelerationStructure_ )
- {}
-
- VULKAN_HPP_CONSTEXPR AccelerationStructureMemoryRequirementsInfoNV( AccelerationStructureMemoryRequirementsInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- AccelerationStructureMemoryRequirementsInfoNV( VkAccelerationStructureMemoryRequirementsInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- AccelerationStructureMemoryRequirementsInfoNV & operator=( VkAccelerationStructureMemoryRequirementsInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AccelerationStructureMemoryRequirementsInfoNV const *>( &rhs );
- return *this;
- }
-
- AccelerationStructureMemoryRequirementsInfoNV & operator=( AccelerationStructureMemoryRequirementsInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( AccelerationStructureMemoryRequirementsInfoNV ) );
- return *this;
- }
-
- AccelerationStructureMemoryRequirementsInfoNV & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- AccelerationStructureMemoryRequirementsInfoNV & setType( VULKAN_HPP_NAMESPACE::AccelerationStructureMemoryRequirementsTypeNV type_ ) VULKAN_HPP_NOEXCEPT
- {
- type = type_;
- return *this;
- }
-
- AccelerationStructureMemoryRequirementsInfoNV & setAccelerationStructure( VULKAN_HPP_NAMESPACE::AccelerationStructureNV accelerationStructure_ ) VULKAN_HPP_NOEXCEPT
- {
- accelerationStructure = accelerationStructure_;
- return *this;
- }
-
-
- operator VkAccelerationStructureMemoryRequirementsInfoNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkAccelerationStructureMemoryRequirementsInfoNV*>( this );
- }
-
- operator VkAccelerationStructureMemoryRequirementsInfoNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkAccelerationStructureMemoryRequirementsInfoNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( AccelerationStructureMemoryRequirementsInfoNV const& ) const = default;
-#else
- bool operator==( AccelerationStructureMemoryRequirementsInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( type == rhs.type )
- && ( accelerationStructure == rhs.accelerationStructure );
- }
-
- bool operator!=( AccelerationStructureMemoryRequirementsInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAccelerationStructureMemoryRequirementsInfoNV;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::AccelerationStructureMemoryRequirementsTypeNV type = VULKAN_HPP_NAMESPACE::AccelerationStructureMemoryRequirementsTypeNV::eObject;
- VULKAN_HPP_NAMESPACE::AccelerationStructureNV accelerationStructure = {};
-
- };
- static_assert( sizeof( AccelerationStructureMemoryRequirementsInfoNV ) == sizeof( VkAccelerationStructureMemoryRequirementsInfoNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<AccelerationStructureMemoryRequirementsInfoNV>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::eAccelerationStructureMemoryRequirementsInfoNV>
- {
- using Type = AccelerationStructureMemoryRequirementsInfoNV;
- };
-
- struct AccelerationStructureVersionInfoKHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eAccelerationStructureVersionInfoKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR AccelerationStructureVersionInfoKHR(const uint8_t* pVersionData_ = {}) VULKAN_HPP_NOEXCEPT
- : pVersionData( pVersionData_ )
- {}
-
- VULKAN_HPP_CONSTEXPR AccelerationStructureVersionInfoKHR( AccelerationStructureVersionInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- AccelerationStructureVersionInfoKHR( VkAccelerationStructureVersionInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- AccelerationStructureVersionInfoKHR & operator=( VkAccelerationStructureVersionInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AccelerationStructureVersionInfoKHR const *>( &rhs );
- return *this;
- }
-
- AccelerationStructureVersionInfoKHR & operator=( AccelerationStructureVersionInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( AccelerationStructureVersionInfoKHR ) );
- return *this;
- }
-
- AccelerationStructureVersionInfoKHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- AccelerationStructureVersionInfoKHR & setPVersionData( const uint8_t* pVersionData_ ) VULKAN_HPP_NOEXCEPT
- {
- pVersionData = pVersionData_;
- return *this;
- }
-
-
- operator VkAccelerationStructureVersionInfoKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkAccelerationStructureVersionInfoKHR*>( this );
- }
-
- operator VkAccelerationStructureVersionInfoKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkAccelerationStructureVersionInfoKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( AccelerationStructureVersionInfoKHR const& ) const = default;
-#else
- bool operator==( AccelerationStructureVersionInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( pVersionData == rhs.pVersionData );
- }
-
- bool operator!=( AccelerationStructureVersionInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAccelerationStructureVersionInfoKHR;
- const void* pNext = {};
- const uint8_t* pVersionData = {};
-
- };
- static_assert( sizeof( AccelerationStructureVersionInfoKHR ) == sizeof( VkAccelerationStructureVersionInfoKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<AccelerationStructureVersionInfoKHR>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::eAccelerationStructureVersionInfoKHR>
- {
- using Type = AccelerationStructureVersionInfoKHR;
- };
-
- class SwapchainKHR
- {
- public:
- using CType = VkSwapchainKHR;
-
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::eSwapchainKHR;
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType = VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eSwapchainKHR;
-
- public:
- VULKAN_HPP_CONSTEXPR SwapchainKHR() VULKAN_HPP_NOEXCEPT
- : m_swapchainKHR(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_CONSTEXPR SwapchainKHR( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- : m_swapchainKHR(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_TYPESAFE_EXPLICIT SwapchainKHR( VkSwapchainKHR swapchainKHR ) VULKAN_HPP_NOEXCEPT
- : m_swapchainKHR( swapchainKHR )
- {}
-
-#if defined(VULKAN_HPP_TYPESAFE_CONVERSION)
- SwapchainKHR & operator=(VkSwapchainKHR swapchainKHR) VULKAN_HPP_NOEXCEPT
- {
- m_swapchainKHR = swapchainKHR;
- return *this;
- }
-#endif
-
- SwapchainKHR & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- {
- m_swapchainKHR = VK_NULL_HANDLE;
- return *this;
- }
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( SwapchainKHR const& ) const = default;
-#else
- bool operator==( SwapchainKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_swapchainKHR == rhs.m_swapchainKHR;
- }
-
- bool operator!=(SwapchainKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_swapchainKHR != rhs.m_swapchainKHR;
- }
-
- bool operator<(SwapchainKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_swapchainKHR < rhs.m_swapchainKHR;
- }
-#endif
-
- VULKAN_HPP_TYPESAFE_EXPLICIT operator VkSwapchainKHR() const VULKAN_HPP_NOEXCEPT
- {
- return m_swapchainKHR;
- }
-
- explicit operator bool() const VULKAN_HPP_NOEXCEPT
- {
- return m_swapchainKHR != VK_NULL_HANDLE;
- }
-
- bool operator!() const VULKAN_HPP_NOEXCEPT
- {
- return m_swapchainKHR == VK_NULL_HANDLE;
- }
-
- private:
- VkSwapchainKHR m_swapchainKHR;
- };
- static_assert( sizeof( VULKAN_HPP_NAMESPACE::SwapchainKHR ) == sizeof( VkSwapchainKHR ), "handle and wrapper have different size!" );
-
- template <>
- struct VULKAN_HPP_DEPRECATED("vk::cpp_type is deprecated. Use vk::CppType instead.") cpp_type<ObjectType::eSwapchainKHR>
- {
- using type = VULKAN_HPP_NAMESPACE::SwapchainKHR;
- };
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eSwapchainKHR>
- {
- using Type = VULKAN_HPP_NAMESPACE::SwapchainKHR;
- };
-
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT, VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eSwapchainKHR>
- {
- using Type = VULKAN_HPP_NAMESPACE::SwapchainKHR;
- };
-
-
- template <>
- struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::SwapchainKHR>
- {
- static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
- };
-
- class Semaphore
- {
- public:
- using CType = VkSemaphore;
-
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::eSemaphore;
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType = VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eSemaphore;
-
- public:
- VULKAN_HPP_CONSTEXPR Semaphore() VULKAN_HPP_NOEXCEPT
- : m_semaphore(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_CONSTEXPR Semaphore( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- : m_semaphore(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_TYPESAFE_EXPLICIT Semaphore( VkSemaphore semaphore ) VULKAN_HPP_NOEXCEPT
- : m_semaphore( semaphore )
- {}
-
-#if defined(VULKAN_HPP_TYPESAFE_CONVERSION)
- Semaphore & operator=(VkSemaphore semaphore) VULKAN_HPP_NOEXCEPT
- {
- m_semaphore = semaphore;
- return *this;
- }
-#endif
-
- Semaphore & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- {
- m_semaphore = VK_NULL_HANDLE;
- return *this;
- }
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( Semaphore const& ) const = default;
-#else
- bool operator==( Semaphore const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_semaphore == rhs.m_semaphore;
- }
-
- bool operator!=(Semaphore const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_semaphore != rhs.m_semaphore;
- }
-
- bool operator<(Semaphore const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_semaphore < rhs.m_semaphore;
- }
-#endif
-
- VULKAN_HPP_TYPESAFE_EXPLICIT operator VkSemaphore() const VULKAN_HPP_NOEXCEPT
- {
- return m_semaphore;
- }
-
- explicit operator bool() const VULKAN_HPP_NOEXCEPT
- {
- return m_semaphore != VK_NULL_HANDLE;
- }
-
- bool operator!() const VULKAN_HPP_NOEXCEPT
- {
- return m_semaphore == VK_NULL_HANDLE;
- }
-
- private:
- VkSemaphore m_semaphore;
- };
- static_assert( sizeof( VULKAN_HPP_NAMESPACE::Semaphore ) == sizeof( VkSemaphore ), "handle and wrapper have different size!" );
-
- template <>
- struct VULKAN_HPP_DEPRECATED("vk::cpp_type is deprecated. Use vk::CppType instead.") cpp_type<ObjectType::eSemaphore>
- {
- using type = VULKAN_HPP_NAMESPACE::Semaphore;
- };
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eSemaphore>
- {
- using Type = VULKAN_HPP_NAMESPACE::Semaphore;
- };
-
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT, VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eSemaphore>
- {
- using Type = VULKAN_HPP_NAMESPACE::Semaphore;
- };
-
-
- template <>
- struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::Semaphore>
- {
- static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
- };
-
- class Fence
- {
- public:
- using CType = VkFence;
-
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::eFence;
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType = VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eFence;
-
- public:
- VULKAN_HPP_CONSTEXPR Fence() VULKAN_HPP_NOEXCEPT
- : m_fence(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_CONSTEXPR Fence( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- : m_fence(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_TYPESAFE_EXPLICIT Fence( VkFence fence ) VULKAN_HPP_NOEXCEPT
- : m_fence( fence )
- {}
-
-#if defined(VULKAN_HPP_TYPESAFE_CONVERSION)
- Fence & operator=(VkFence fence) VULKAN_HPP_NOEXCEPT
- {
- m_fence = fence;
- return *this;
- }
-#endif
-
- Fence & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- {
- m_fence = VK_NULL_HANDLE;
- return *this;
- }
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( Fence const& ) const = default;
-#else
- bool operator==( Fence const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_fence == rhs.m_fence;
- }
-
- bool operator!=(Fence const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_fence != rhs.m_fence;
- }
-
- bool operator<(Fence const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_fence < rhs.m_fence;
- }
-#endif
-
- VULKAN_HPP_TYPESAFE_EXPLICIT operator VkFence() const VULKAN_HPP_NOEXCEPT
- {
- return m_fence;
- }
-
- explicit operator bool() const VULKAN_HPP_NOEXCEPT
- {
- return m_fence != VK_NULL_HANDLE;
- }
-
- bool operator!() const VULKAN_HPP_NOEXCEPT
- {
- return m_fence == VK_NULL_HANDLE;
- }
-
- private:
- VkFence m_fence;
- };
- static_assert( sizeof( VULKAN_HPP_NAMESPACE::Fence ) == sizeof( VkFence ), "handle and wrapper have different size!" );
-
- template <>
- struct VULKAN_HPP_DEPRECATED("vk::cpp_type is deprecated. Use vk::CppType instead.") cpp_type<ObjectType::eFence>
- {
- using type = VULKAN_HPP_NAMESPACE::Fence;
- };
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eFence>
- {
- using Type = VULKAN_HPP_NAMESPACE::Fence;
- };
-
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT, VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eFence>
- {
- using Type = VULKAN_HPP_NAMESPACE::Fence;
- };
-
-
- template <>
- struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::Fence>
- {
- static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
- };
-
- struct AcquireNextImageInfoKHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eAcquireNextImageInfoKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR AcquireNextImageInfoKHR(VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain_ = {}, uint64_t timeout_ = {}, VULKAN_HPP_NAMESPACE::Semaphore semaphore_ = {}, VULKAN_HPP_NAMESPACE::Fence fence_ = {}, uint32_t deviceMask_ = {}) VULKAN_HPP_NOEXCEPT
- : swapchain( swapchain_ ), timeout( timeout_ ), semaphore( semaphore_ ), fence( fence_ ), deviceMask( deviceMask_ )
- {}
-
- VULKAN_HPP_CONSTEXPR AcquireNextImageInfoKHR( AcquireNextImageInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- AcquireNextImageInfoKHR( VkAcquireNextImageInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- AcquireNextImageInfoKHR & operator=( VkAcquireNextImageInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AcquireNextImageInfoKHR const *>( &rhs );
- return *this;
- }
-
- AcquireNextImageInfoKHR & operator=( AcquireNextImageInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( AcquireNextImageInfoKHR ) );
- return *this;
- }
-
- AcquireNextImageInfoKHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- AcquireNextImageInfoKHR & setSwapchain( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain_ ) VULKAN_HPP_NOEXCEPT
- {
- swapchain = swapchain_;
- return *this;
- }
-
- AcquireNextImageInfoKHR & setTimeout( uint64_t timeout_ ) VULKAN_HPP_NOEXCEPT
- {
- timeout = timeout_;
- return *this;
- }
-
- AcquireNextImageInfoKHR & setSemaphore( VULKAN_HPP_NAMESPACE::Semaphore semaphore_ ) VULKAN_HPP_NOEXCEPT
- {
- semaphore = semaphore_;
- return *this;
- }
-
- AcquireNextImageInfoKHR & setFence( VULKAN_HPP_NAMESPACE::Fence fence_ ) VULKAN_HPP_NOEXCEPT
- {
- fence = fence_;
- return *this;
- }
-
- AcquireNextImageInfoKHR & setDeviceMask( uint32_t deviceMask_ ) VULKAN_HPP_NOEXCEPT
- {
- deviceMask = deviceMask_;
- return *this;
- }
-
-
- operator VkAcquireNextImageInfoKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkAcquireNextImageInfoKHR*>( this );
- }
-
- operator VkAcquireNextImageInfoKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkAcquireNextImageInfoKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( AcquireNextImageInfoKHR const& ) const = default;
-#else
- bool operator==( AcquireNextImageInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( swapchain == rhs.swapchain )
- && ( timeout == rhs.timeout )
- && ( semaphore == rhs.semaphore )
- && ( fence == rhs.fence )
- && ( deviceMask == rhs.deviceMask );
- }
-
- bool operator!=( AcquireNextImageInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAcquireNextImageInfoKHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain = {};
- uint64_t timeout = {};
- VULKAN_HPP_NAMESPACE::Semaphore semaphore = {};
- VULKAN_HPP_NAMESPACE::Fence fence = {};
- uint32_t deviceMask = {};
-
- };
- static_assert( sizeof( AcquireNextImageInfoKHR ) == sizeof( VkAcquireNextImageInfoKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<AcquireNextImageInfoKHR>::value, "struct wrapper is not a standard layout!" );
+// clang-format off
+#include <vulkan/vulkan_handles.hpp>
+#include <vulkan/vulkan_structs.hpp>
+#include <vulkan/vulkan_funcs.hpp>
+// clang-format on
+namespace VULKAN_HPP_NAMESPACE
+{
template <>
- struct CppType<StructureType, StructureType::eAcquireNextImageInfoKHR>
- {
- using Type = AcquireNextImageInfoKHR;
- };
-
- struct AcquireProfilingLockInfoKHR
+ struct StructExtends<AccelerationStructureGeometryMotionTrianglesDataNV,
+ AccelerationStructureGeometryTrianglesDataKHR>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eAcquireProfilingLockInfoKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR AcquireProfilingLockInfoKHR(VULKAN_HPP_NAMESPACE::AcquireProfilingLockFlagsKHR flags_ = {}, uint64_t timeout_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), timeout( timeout_ )
- {}
-
- VULKAN_HPP_CONSTEXPR AcquireProfilingLockInfoKHR( AcquireProfilingLockInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- AcquireProfilingLockInfoKHR( VkAcquireProfilingLockInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- AcquireProfilingLockInfoKHR & operator=( VkAcquireProfilingLockInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AcquireProfilingLockInfoKHR const *>( &rhs );
- return *this;
- }
-
- AcquireProfilingLockInfoKHR & operator=( AcquireProfilingLockInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( AcquireProfilingLockInfoKHR ) );
- return *this;
- }
-
- AcquireProfilingLockInfoKHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- AcquireProfilingLockInfoKHR & setFlags( VULKAN_HPP_NAMESPACE::AcquireProfilingLockFlagsKHR flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- AcquireProfilingLockInfoKHR & setTimeout( uint64_t timeout_ ) VULKAN_HPP_NOEXCEPT
- {
- timeout = timeout_;
- return *this;
- }
-
-
- operator VkAcquireProfilingLockInfoKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkAcquireProfilingLockInfoKHR*>( this );
- }
-
- operator VkAcquireProfilingLockInfoKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkAcquireProfilingLockInfoKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( AcquireProfilingLockInfoKHR const& ) const = default;
-#else
- bool operator==( AcquireProfilingLockInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( timeout == rhs.timeout );
- }
-
- bool operator!=( AcquireProfilingLockInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAcquireProfilingLockInfoKHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::AcquireProfilingLockFlagsKHR flags = {};
- uint64_t timeout = {};
-
+ value = true
+ };
};
- static_assert( sizeof( AcquireProfilingLockInfoKHR ) == sizeof( VkAcquireProfilingLockInfoKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<AcquireProfilingLockInfoKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eAcquireProfilingLockInfoKHR>
+ struct StructExtends<AccelerationStructureMotionInfoNV, AccelerationStructureCreateInfoKHR>
{
- using Type = AcquireProfilingLockInfoKHR;
- };
-
- struct AllocationCallbacks
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR AllocationCallbacks(void* pUserData_ = {}, PFN_vkAllocationFunction pfnAllocation_ = {}, PFN_vkReallocationFunction pfnReallocation_ = {}, PFN_vkFreeFunction pfnFree_ = {}, PFN_vkInternalAllocationNotification pfnInternalAllocation_ = {}, PFN_vkInternalFreeNotification pfnInternalFree_ = {}) VULKAN_HPP_NOEXCEPT
- : pUserData( pUserData_ ), pfnAllocation( pfnAllocation_ ), pfnReallocation( pfnReallocation_ ), pfnFree( pfnFree_ ), pfnInternalAllocation( pfnInternalAllocation_ ), pfnInternalFree( pfnInternalFree_ )
- {}
-
- VULKAN_HPP_CONSTEXPR AllocationCallbacks( AllocationCallbacks const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- AllocationCallbacks( VkAllocationCallbacks const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- AllocationCallbacks & operator=( VkAllocationCallbacks const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AllocationCallbacks const *>( &rhs );
- return *this;
- }
-
- AllocationCallbacks & operator=( AllocationCallbacks const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( AllocationCallbacks ) );
- return *this;
- }
-
- AllocationCallbacks & setPUserData( void* pUserData_ ) VULKAN_HPP_NOEXCEPT
- {
- pUserData = pUserData_;
- return *this;
- }
-
- AllocationCallbacks & setPfnAllocation( PFN_vkAllocationFunction pfnAllocation_ ) VULKAN_HPP_NOEXCEPT
- {
- pfnAllocation = pfnAllocation_;
- return *this;
- }
-
- AllocationCallbacks & setPfnReallocation( PFN_vkReallocationFunction pfnReallocation_ ) VULKAN_HPP_NOEXCEPT
- {
- pfnReallocation = pfnReallocation_;
- return *this;
- }
-
- AllocationCallbacks & setPfnFree( PFN_vkFreeFunction pfnFree_ ) VULKAN_HPP_NOEXCEPT
- {
- pfnFree = pfnFree_;
- return *this;
- }
-
- AllocationCallbacks & setPfnInternalAllocation( PFN_vkInternalAllocationNotification pfnInternalAllocation_ ) VULKAN_HPP_NOEXCEPT
- {
- pfnInternalAllocation = pfnInternalAllocation_;
- return *this;
- }
-
- AllocationCallbacks & setPfnInternalFree( PFN_vkInternalFreeNotification pfnInternalFree_ ) VULKAN_HPP_NOEXCEPT
- {
- pfnInternalFree = pfnInternalFree_;
- return *this;
- }
-
-
- operator VkAllocationCallbacks const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkAllocationCallbacks*>( this );
- }
-
- operator VkAllocationCallbacks &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkAllocationCallbacks*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( AllocationCallbacks const& ) const = default;
-#else
- bool operator==( AllocationCallbacks const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( pUserData == rhs.pUserData )
- && ( pfnAllocation == rhs.pfnAllocation )
- && ( pfnReallocation == rhs.pfnReallocation )
- && ( pfnFree == rhs.pfnFree )
- && ( pfnInternalAllocation == rhs.pfnInternalAllocation )
- && ( pfnInternalFree == rhs.pfnInternalFree );
- }
-
- bool operator!=( AllocationCallbacks const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- void* pUserData = {};
- PFN_vkAllocationFunction pfnAllocation = {};
- PFN_vkReallocationFunction pfnReallocation = {};
- PFN_vkFreeFunction pfnFree = {};
- PFN_vkInternalAllocationNotification pfnInternalAllocation = {};
- PFN_vkInternalFreeNotification pfnInternalFree = {};
-
- };
- static_assert( sizeof( AllocationCallbacks ) == sizeof( VkAllocationCallbacks ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<AllocationCallbacks>::value, "struct wrapper is not a standard layout!" );
-
- struct ComponentMapping
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ComponentMapping(VULKAN_HPP_NAMESPACE::ComponentSwizzle r_ = VULKAN_HPP_NAMESPACE::ComponentSwizzle::eIdentity, VULKAN_HPP_NAMESPACE::ComponentSwizzle g_ = VULKAN_HPP_NAMESPACE::ComponentSwizzle::eIdentity, VULKAN_HPP_NAMESPACE::ComponentSwizzle b_ = VULKAN_HPP_NAMESPACE::ComponentSwizzle::eIdentity, VULKAN_HPP_NAMESPACE::ComponentSwizzle a_ = VULKAN_HPP_NAMESPACE::ComponentSwizzle::eIdentity) VULKAN_HPP_NOEXCEPT
- : r( r_ ), g( g_ ), b( b_ ), a( a_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ComponentMapping( ComponentMapping const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ComponentMapping( VkComponentMapping const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ComponentMapping & operator=( VkComponentMapping const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ComponentMapping const *>( &rhs );
- return *this;
- }
-
- ComponentMapping & operator=( ComponentMapping const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ComponentMapping ) );
- return *this;
- }
-
- ComponentMapping & setR( VULKAN_HPP_NAMESPACE::ComponentSwizzle r_ ) VULKAN_HPP_NOEXCEPT
- {
- r = r_;
- return *this;
- }
-
- ComponentMapping & setG( VULKAN_HPP_NAMESPACE::ComponentSwizzle g_ ) VULKAN_HPP_NOEXCEPT
- {
- g = g_;
- return *this;
- }
-
- ComponentMapping & setB( VULKAN_HPP_NAMESPACE::ComponentSwizzle b_ ) VULKAN_HPP_NOEXCEPT
- {
- b = b_;
- return *this;
- }
-
- ComponentMapping & setA( VULKAN_HPP_NAMESPACE::ComponentSwizzle a_ ) VULKAN_HPP_NOEXCEPT
- {
- a = a_;
- return *this;
- }
-
-
- operator VkComponentMapping const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkComponentMapping*>( this );
- }
-
- operator VkComponentMapping &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkComponentMapping*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ComponentMapping const& ) const = default;
-#else
- bool operator==( ComponentMapping const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( r == rhs.r )
- && ( g == rhs.g )
- && ( b == rhs.b )
- && ( a == rhs.a );
- }
-
- bool operator!=( ComponentMapping const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::ComponentSwizzle r = VULKAN_HPP_NAMESPACE::ComponentSwizzle::eIdentity;
- VULKAN_HPP_NAMESPACE::ComponentSwizzle g = VULKAN_HPP_NAMESPACE::ComponentSwizzle::eIdentity;
- VULKAN_HPP_NAMESPACE::ComponentSwizzle b = VULKAN_HPP_NAMESPACE::ComponentSwizzle::eIdentity;
- VULKAN_HPP_NAMESPACE::ComponentSwizzle a = VULKAN_HPP_NAMESPACE::ComponentSwizzle::eIdentity;
-
- };
- static_assert( sizeof( ComponentMapping ) == sizeof( VkComponentMapping ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ComponentMapping>::value, "struct wrapper is not a standard layout!" );
-
-#ifdef VK_USE_PLATFORM_ANDROID_KHR
- struct AndroidHardwareBufferFormatPropertiesANDROID
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eAndroidHardwareBufferFormatPropertiesANDROID;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR AndroidHardwareBufferFormatPropertiesANDROID(VULKAN_HPP_NAMESPACE::Format format_ = VULKAN_HPP_NAMESPACE::Format::eUndefined, uint64_t externalFormat_ = {}, VULKAN_HPP_NAMESPACE::FormatFeatureFlags formatFeatures_ = {}, VULKAN_HPP_NAMESPACE::ComponentMapping samplerYcbcrConversionComponents_ = {}, VULKAN_HPP_NAMESPACE::SamplerYcbcrModelConversion suggestedYcbcrModel_ = VULKAN_HPP_NAMESPACE::SamplerYcbcrModelConversion::eRgbIdentity, VULKAN_HPP_NAMESPACE::SamplerYcbcrRange suggestedYcbcrRange_ = VULKAN_HPP_NAMESPACE::SamplerYcbcrRange::eItuFull, VULKAN_HPP_NAMESPACE::ChromaLocation suggestedXChromaOffset_ = VULKAN_HPP_NAMESPACE::ChromaLocation::eCositedEven, VULKAN_HPP_NAMESPACE::ChromaLocation suggestedYChromaOffset_ = VULKAN_HPP_NAMESPACE::ChromaLocation::eCositedEven) VULKAN_HPP_NOEXCEPT
- : format( format_ ), externalFormat( externalFormat_ ), formatFeatures( formatFeatures_ ), samplerYcbcrConversionComponents( samplerYcbcrConversionComponents_ ), suggestedYcbcrModel( suggestedYcbcrModel_ ), suggestedYcbcrRange( suggestedYcbcrRange_ ), suggestedXChromaOffset( suggestedXChromaOffset_ ), suggestedYChromaOffset( suggestedYChromaOffset_ )
- {}
-
- VULKAN_HPP_CONSTEXPR AndroidHardwareBufferFormatPropertiesANDROID( AndroidHardwareBufferFormatPropertiesANDROID const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- AndroidHardwareBufferFormatPropertiesANDROID( VkAndroidHardwareBufferFormatPropertiesANDROID const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- AndroidHardwareBufferFormatPropertiesANDROID & operator=( VkAndroidHardwareBufferFormatPropertiesANDROID const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AndroidHardwareBufferFormatPropertiesANDROID const *>( &rhs );
- return *this;
- }
-
- AndroidHardwareBufferFormatPropertiesANDROID & operator=( AndroidHardwareBufferFormatPropertiesANDROID const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( AndroidHardwareBufferFormatPropertiesANDROID ) );
- return *this;
- }
-
-
- operator VkAndroidHardwareBufferFormatPropertiesANDROID const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkAndroidHardwareBufferFormatPropertiesANDROID*>( this );
- }
-
- operator VkAndroidHardwareBufferFormatPropertiesANDROID &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkAndroidHardwareBufferFormatPropertiesANDROID*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( AndroidHardwareBufferFormatPropertiesANDROID const& ) const = default;
-#else
- bool operator==( AndroidHardwareBufferFormatPropertiesANDROID const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( format == rhs.format )
- && ( externalFormat == rhs.externalFormat )
- && ( formatFeatures == rhs.formatFeatures )
- && ( samplerYcbcrConversionComponents == rhs.samplerYcbcrConversionComponents )
- && ( suggestedYcbcrModel == rhs.suggestedYcbcrModel )
- && ( suggestedYcbcrRange == rhs.suggestedYcbcrRange )
- && ( suggestedXChromaOffset == rhs.suggestedXChromaOffset )
- && ( suggestedYChromaOffset == rhs.suggestedYChromaOffset );
- }
-
- bool operator!=( AndroidHardwareBufferFormatPropertiesANDROID const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAndroidHardwareBufferFormatPropertiesANDROID;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Format format = VULKAN_HPP_NAMESPACE::Format::eUndefined;
- uint64_t externalFormat = {};
- VULKAN_HPP_NAMESPACE::FormatFeatureFlags formatFeatures = {};
- VULKAN_HPP_NAMESPACE::ComponentMapping samplerYcbcrConversionComponents = {};
- VULKAN_HPP_NAMESPACE::SamplerYcbcrModelConversion suggestedYcbcrModel = VULKAN_HPP_NAMESPACE::SamplerYcbcrModelConversion::eRgbIdentity;
- VULKAN_HPP_NAMESPACE::SamplerYcbcrRange suggestedYcbcrRange = VULKAN_HPP_NAMESPACE::SamplerYcbcrRange::eItuFull;
- VULKAN_HPP_NAMESPACE::ChromaLocation suggestedXChromaOffset = VULKAN_HPP_NAMESPACE::ChromaLocation::eCositedEven;
- VULKAN_HPP_NAMESPACE::ChromaLocation suggestedYChromaOffset = VULKAN_HPP_NAMESPACE::ChromaLocation::eCositedEven;
-
+ value = true
+ };
};
- static_assert( sizeof( AndroidHardwareBufferFormatPropertiesANDROID ) == sizeof( VkAndroidHardwareBufferFormatPropertiesANDROID ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<AndroidHardwareBufferFormatPropertiesANDROID>::value, "struct wrapper is not a standard layout!" );
-
+#if defined( VK_USE_PLATFORM_ANDROID_KHR )
template <>
- struct CppType<StructureType, StructureType::eAndroidHardwareBufferFormatPropertiesANDROID>
+ struct StructExtends<AndroidHardwareBufferFormatPropertiesANDROID, AndroidHardwareBufferPropertiesANDROID>
{
- using Type = AndroidHardwareBufferFormatPropertiesANDROID;
- };
-#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
-
-#ifdef VK_USE_PLATFORM_ANDROID_KHR
- struct AndroidHardwareBufferPropertiesANDROID
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eAndroidHardwareBufferPropertiesANDROID;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR AndroidHardwareBufferPropertiesANDROID(VULKAN_HPP_NAMESPACE::DeviceSize allocationSize_ = {}, uint32_t memoryTypeBits_ = {}) VULKAN_HPP_NOEXCEPT
- : allocationSize( allocationSize_ ), memoryTypeBits( memoryTypeBits_ )
- {}
-
- VULKAN_HPP_CONSTEXPR AndroidHardwareBufferPropertiesANDROID( AndroidHardwareBufferPropertiesANDROID const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- AndroidHardwareBufferPropertiesANDROID( VkAndroidHardwareBufferPropertiesANDROID const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- AndroidHardwareBufferPropertiesANDROID & operator=( VkAndroidHardwareBufferPropertiesANDROID const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AndroidHardwareBufferPropertiesANDROID const *>( &rhs );
- return *this;
- }
-
- AndroidHardwareBufferPropertiesANDROID & operator=( AndroidHardwareBufferPropertiesANDROID const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( AndroidHardwareBufferPropertiesANDROID ) );
- return *this;
- }
-
-
- operator VkAndroidHardwareBufferPropertiesANDROID const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkAndroidHardwareBufferPropertiesANDROID*>( this );
- }
-
- operator VkAndroidHardwareBufferPropertiesANDROID &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkAndroidHardwareBufferPropertiesANDROID*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( AndroidHardwareBufferPropertiesANDROID const& ) const = default;
-#else
- bool operator==( AndroidHardwareBufferPropertiesANDROID const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( allocationSize == rhs.allocationSize )
- && ( memoryTypeBits == rhs.memoryTypeBits );
- }
-
- bool operator!=( AndroidHardwareBufferPropertiesANDROID const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAndroidHardwareBufferPropertiesANDROID;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::DeviceSize allocationSize = {};
- uint32_t memoryTypeBits = {};
-
- };
- static_assert( sizeof( AndroidHardwareBufferPropertiesANDROID ) == sizeof( VkAndroidHardwareBufferPropertiesANDROID ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<AndroidHardwareBufferPropertiesANDROID>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::eAndroidHardwareBufferPropertiesANDROID>
- {
- using Type = AndroidHardwareBufferPropertiesANDROID;
+ value = true
+ };
};
#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
-
-#ifdef VK_USE_PLATFORM_ANDROID_KHR
- struct AndroidHardwareBufferUsageANDROID
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eAndroidHardwareBufferUsageANDROID;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR AndroidHardwareBufferUsageANDROID(uint64_t androidHardwareBufferUsage_ = {}) VULKAN_HPP_NOEXCEPT
- : androidHardwareBufferUsage( androidHardwareBufferUsage_ )
- {}
-
- VULKAN_HPP_CONSTEXPR AndroidHardwareBufferUsageANDROID( AndroidHardwareBufferUsageANDROID const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- AndroidHardwareBufferUsageANDROID( VkAndroidHardwareBufferUsageANDROID const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- AndroidHardwareBufferUsageANDROID & operator=( VkAndroidHardwareBufferUsageANDROID const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AndroidHardwareBufferUsageANDROID const *>( &rhs );
- return *this;
- }
-
- AndroidHardwareBufferUsageANDROID & operator=( AndroidHardwareBufferUsageANDROID const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( AndroidHardwareBufferUsageANDROID ) );
- return *this;
- }
-
-
- operator VkAndroidHardwareBufferUsageANDROID const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkAndroidHardwareBufferUsageANDROID*>( this );
- }
-
- operator VkAndroidHardwareBufferUsageANDROID &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkAndroidHardwareBufferUsageANDROID*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( AndroidHardwareBufferUsageANDROID const& ) const = default;
-#else
- bool operator==( AndroidHardwareBufferUsageANDROID const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( androidHardwareBufferUsage == rhs.androidHardwareBufferUsage );
- }
-
- bool operator!=( AndroidHardwareBufferUsageANDROID const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAndroidHardwareBufferUsageANDROID;
- void* pNext = {};
- uint64_t androidHardwareBufferUsage = {};
-
- };
- static_assert( sizeof( AndroidHardwareBufferUsageANDROID ) == sizeof( VkAndroidHardwareBufferUsageANDROID ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<AndroidHardwareBufferUsageANDROID>::value, "struct wrapper is not a standard layout!" );
-
+#if defined( VK_USE_PLATFORM_ANDROID_KHR )
template <>
- struct CppType<StructureType, StructureType::eAndroidHardwareBufferUsageANDROID>
- {
- using Type = AndroidHardwareBufferUsageANDROID;
- };
-#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
-
-#ifdef VK_USE_PLATFORM_ANDROID_KHR
- struct AndroidSurfaceCreateInfoKHR
+ struct StructExtends<AndroidHardwareBufferUsageANDROID, ImageFormatProperties2>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eAndroidSurfaceCreateInfoKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR AndroidSurfaceCreateInfoKHR(VULKAN_HPP_NAMESPACE::AndroidSurfaceCreateFlagsKHR flags_ = {}, struct ANativeWindow* window_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), window( window_ )
- {}
-
- VULKAN_HPP_CONSTEXPR AndroidSurfaceCreateInfoKHR( AndroidSurfaceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- AndroidSurfaceCreateInfoKHR( VkAndroidSurfaceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- AndroidSurfaceCreateInfoKHR & operator=( VkAndroidSurfaceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AndroidSurfaceCreateInfoKHR const *>( &rhs );
- return *this;
- }
-
- AndroidSurfaceCreateInfoKHR & operator=( AndroidSurfaceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- memcpy( static_cast<void *>( this ), &rhs, sizeof( AndroidSurfaceCreateInfoKHR ) );
- return *this;
- }
-
- AndroidSurfaceCreateInfoKHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- AndroidSurfaceCreateInfoKHR & setFlags( VULKAN_HPP_NAMESPACE::AndroidSurfaceCreateFlagsKHR flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- AndroidSurfaceCreateInfoKHR & setWindow( struct ANativeWindow* window_ ) VULKAN_HPP_NOEXCEPT
- {
- window = window_;
- return *this;
- }
-
-
- operator VkAndroidSurfaceCreateInfoKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkAndroidSurfaceCreateInfoKHR*>( this );
- }
-
- operator VkAndroidSurfaceCreateInfoKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkAndroidSurfaceCreateInfoKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( AndroidSurfaceCreateInfoKHR const& ) const = default;
-#else
- bool operator==( AndroidSurfaceCreateInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( window == rhs.window );
- }
-
- bool operator!=( AndroidSurfaceCreateInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAndroidSurfaceCreateInfoKHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::AndroidSurfaceCreateFlagsKHR flags = {};
- struct ANativeWindow* window = {};
-
- };
- static_assert( sizeof( AndroidSurfaceCreateInfoKHR ) == sizeof( VkAndroidSurfaceCreateInfoKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<AndroidSurfaceCreateInfoKHR>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::eAndroidSurfaceCreateInfoKHR>
- {
- using Type = AndroidSurfaceCreateInfoKHR;
+ value = true
+ };
};
#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
-
- struct ApplicationInfo
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eApplicationInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ApplicationInfo(const char* pApplicationName_ = {}, uint32_t applicationVersion_ = {}, const char* pEngineName_ = {}, uint32_t engineVersion_ = {}, uint32_t apiVersion_ = {}) VULKAN_HPP_NOEXCEPT
- : pApplicationName( pApplicationName_ ), applicationVersion( applicationVersion_ ), pEngineName( pEngineName_ ), engineVersion( engineVersion_ ), apiVersion( apiVersion_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ApplicationInfo( ApplicationInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ApplicationInfo( VkApplicationInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ApplicationInfo & operator=( VkApplicationInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ApplicationInfo const *>( &rhs );
- return *this;
- }
-
- ApplicationInfo & operator=( ApplicationInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ApplicationInfo ) );
- return *this;
- }
-
- ApplicationInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- ApplicationInfo & setPApplicationName( const char* pApplicationName_ ) VULKAN_HPP_NOEXCEPT
- {
- pApplicationName = pApplicationName_;
- return *this;
- }
-
- ApplicationInfo & setApplicationVersion( uint32_t applicationVersion_ ) VULKAN_HPP_NOEXCEPT
- {
- applicationVersion = applicationVersion_;
- return *this;
- }
-
- ApplicationInfo & setPEngineName( const char* pEngineName_ ) VULKAN_HPP_NOEXCEPT
- {
- pEngineName = pEngineName_;
- return *this;
- }
-
- ApplicationInfo & setEngineVersion( uint32_t engineVersion_ ) VULKAN_HPP_NOEXCEPT
- {
- engineVersion = engineVersion_;
- return *this;
- }
-
- ApplicationInfo & setApiVersion( uint32_t apiVersion_ ) VULKAN_HPP_NOEXCEPT
- {
- apiVersion = apiVersion_;
- return *this;
- }
-
-
- operator VkApplicationInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkApplicationInfo*>( this );
- }
-
- operator VkApplicationInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkApplicationInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ApplicationInfo const& ) const = default;
-#else
- bool operator==( ApplicationInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( pApplicationName == rhs.pApplicationName )
- && ( applicationVersion == rhs.applicationVersion )
- && ( pEngineName == rhs.pEngineName )
- && ( engineVersion == rhs.engineVersion )
- && ( apiVersion == rhs.apiVersion );
- }
-
- bool operator!=( ApplicationInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eApplicationInfo;
- const void* pNext = {};
- const char* pApplicationName = {};
- uint32_t applicationVersion = {};
- const char* pEngineName = {};
- uint32_t engineVersion = {};
- uint32_t apiVersion = {};
-
- };
- static_assert( sizeof( ApplicationInfo ) == sizeof( VkApplicationInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ApplicationInfo>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::eApplicationInfo>
- {
- using Type = ApplicationInfo;
- };
-
- struct AttachmentDescription
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR AttachmentDescription(VULKAN_HPP_NAMESPACE::AttachmentDescriptionFlags flags_ = {}, VULKAN_HPP_NAMESPACE::Format format_ = VULKAN_HPP_NAMESPACE::Format::eUndefined, VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples_ = VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1, VULKAN_HPP_NAMESPACE::AttachmentLoadOp loadOp_ = VULKAN_HPP_NAMESPACE::AttachmentLoadOp::eLoad, VULKAN_HPP_NAMESPACE::AttachmentStoreOp storeOp_ = VULKAN_HPP_NAMESPACE::AttachmentStoreOp::eStore, VULKAN_HPP_NAMESPACE::AttachmentLoadOp stencilLoadOp_ = VULKAN_HPP_NAMESPACE::AttachmentLoadOp::eLoad, VULKAN_HPP_NAMESPACE::AttachmentStoreOp stencilStoreOp_ = VULKAN_HPP_NAMESPACE::AttachmentStoreOp::eStore, VULKAN_HPP_NAMESPACE::ImageLayout initialLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined, VULKAN_HPP_NAMESPACE::ImageLayout finalLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), format( format_ ), samples( samples_ ), loadOp( loadOp_ ), storeOp( storeOp_ ), stencilLoadOp( stencilLoadOp_ ), stencilStoreOp( stencilStoreOp_ ), initialLayout( initialLayout_ ), finalLayout( finalLayout_ )
- {}
-
- VULKAN_HPP_CONSTEXPR AttachmentDescription( AttachmentDescription const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- AttachmentDescription( VkAttachmentDescription const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- AttachmentDescription & operator=( VkAttachmentDescription const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AttachmentDescription const *>( &rhs );
- return *this;
- }
-
- AttachmentDescription & operator=( AttachmentDescription const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( AttachmentDescription ) );
- return *this;
- }
-
- AttachmentDescription & setFlags( VULKAN_HPP_NAMESPACE::AttachmentDescriptionFlags flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- AttachmentDescription & setFormat( VULKAN_HPP_NAMESPACE::Format format_ ) VULKAN_HPP_NOEXCEPT
- {
- format = format_;
- return *this;
- }
-
- AttachmentDescription & setSamples( VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples_ ) VULKAN_HPP_NOEXCEPT
- {
- samples = samples_;
- return *this;
- }
-
- AttachmentDescription & setLoadOp( VULKAN_HPP_NAMESPACE::AttachmentLoadOp loadOp_ ) VULKAN_HPP_NOEXCEPT
- {
- loadOp = loadOp_;
- return *this;
- }
-
- AttachmentDescription & setStoreOp( VULKAN_HPP_NAMESPACE::AttachmentStoreOp storeOp_ ) VULKAN_HPP_NOEXCEPT
- {
- storeOp = storeOp_;
- return *this;
- }
-
- AttachmentDescription & setStencilLoadOp( VULKAN_HPP_NAMESPACE::AttachmentLoadOp stencilLoadOp_ ) VULKAN_HPP_NOEXCEPT
- {
- stencilLoadOp = stencilLoadOp_;
- return *this;
- }
-
- AttachmentDescription & setStencilStoreOp( VULKAN_HPP_NAMESPACE::AttachmentStoreOp stencilStoreOp_ ) VULKAN_HPP_NOEXCEPT
- {
- stencilStoreOp = stencilStoreOp_;
- return *this;
- }
-
- AttachmentDescription & setInitialLayout( VULKAN_HPP_NAMESPACE::ImageLayout initialLayout_ ) VULKAN_HPP_NOEXCEPT
- {
- initialLayout = initialLayout_;
- return *this;
- }
-
- AttachmentDescription & setFinalLayout( VULKAN_HPP_NAMESPACE::ImageLayout finalLayout_ ) VULKAN_HPP_NOEXCEPT
- {
- finalLayout = finalLayout_;
- return *this;
- }
-
-
- operator VkAttachmentDescription const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkAttachmentDescription*>( this );
- }
-
- operator VkAttachmentDescription &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkAttachmentDescription*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( AttachmentDescription const& ) const = default;
-#else
- bool operator==( AttachmentDescription const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( flags == rhs.flags )
- && ( format == rhs.format )
- && ( samples == rhs.samples )
- && ( loadOp == rhs.loadOp )
- && ( storeOp == rhs.storeOp )
- && ( stencilLoadOp == rhs.stencilLoadOp )
- && ( stencilStoreOp == rhs.stencilStoreOp )
- && ( initialLayout == rhs.initialLayout )
- && ( finalLayout == rhs.finalLayout );
- }
-
- bool operator!=( AttachmentDescription const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::AttachmentDescriptionFlags flags = {};
- VULKAN_HPP_NAMESPACE::Format format = VULKAN_HPP_NAMESPACE::Format::eUndefined;
- VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples = VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1;
- VULKAN_HPP_NAMESPACE::AttachmentLoadOp loadOp = VULKAN_HPP_NAMESPACE::AttachmentLoadOp::eLoad;
- VULKAN_HPP_NAMESPACE::AttachmentStoreOp storeOp = VULKAN_HPP_NAMESPACE::AttachmentStoreOp::eStore;
- VULKAN_HPP_NAMESPACE::AttachmentLoadOp stencilLoadOp = VULKAN_HPP_NAMESPACE::AttachmentLoadOp::eLoad;
- VULKAN_HPP_NAMESPACE::AttachmentStoreOp stencilStoreOp = VULKAN_HPP_NAMESPACE::AttachmentStoreOp::eStore;
- VULKAN_HPP_NAMESPACE::ImageLayout initialLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
- VULKAN_HPP_NAMESPACE::ImageLayout finalLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
-
- };
- static_assert( sizeof( AttachmentDescription ) == sizeof( VkAttachmentDescription ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<AttachmentDescription>::value, "struct wrapper is not a standard layout!" );
-
- struct AttachmentDescription2
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eAttachmentDescription2;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR AttachmentDescription2(VULKAN_HPP_NAMESPACE::AttachmentDescriptionFlags flags_ = {}, VULKAN_HPP_NAMESPACE::Format format_ = VULKAN_HPP_NAMESPACE::Format::eUndefined, VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples_ = VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1, VULKAN_HPP_NAMESPACE::AttachmentLoadOp loadOp_ = VULKAN_HPP_NAMESPACE::AttachmentLoadOp::eLoad, VULKAN_HPP_NAMESPACE::AttachmentStoreOp storeOp_ = VULKAN_HPP_NAMESPACE::AttachmentStoreOp::eStore, VULKAN_HPP_NAMESPACE::AttachmentLoadOp stencilLoadOp_ = VULKAN_HPP_NAMESPACE::AttachmentLoadOp::eLoad, VULKAN_HPP_NAMESPACE::AttachmentStoreOp stencilStoreOp_ = VULKAN_HPP_NAMESPACE::AttachmentStoreOp::eStore, VULKAN_HPP_NAMESPACE::ImageLayout initialLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined, VULKAN_HPP_NAMESPACE::ImageLayout finalLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), format( format_ ), samples( samples_ ), loadOp( loadOp_ ), storeOp( storeOp_ ), stencilLoadOp( stencilLoadOp_ ), stencilStoreOp( stencilStoreOp_ ), initialLayout( initialLayout_ ), finalLayout( finalLayout_ )
- {}
-
- VULKAN_HPP_CONSTEXPR AttachmentDescription2( AttachmentDescription2 const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- AttachmentDescription2( VkAttachmentDescription2 const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- AttachmentDescription2 & operator=( VkAttachmentDescription2 const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AttachmentDescription2 const *>( &rhs );
- return *this;
- }
-
- AttachmentDescription2 & operator=( AttachmentDescription2 const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( AttachmentDescription2 ) );
- return *this;
- }
-
- AttachmentDescription2 & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- AttachmentDescription2 & setFlags( VULKAN_HPP_NAMESPACE::AttachmentDescriptionFlags flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- AttachmentDescription2 & setFormat( VULKAN_HPP_NAMESPACE::Format format_ ) VULKAN_HPP_NOEXCEPT
- {
- format = format_;
- return *this;
- }
-
- AttachmentDescription2 & setSamples( VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples_ ) VULKAN_HPP_NOEXCEPT
- {
- samples = samples_;
- return *this;
- }
-
- AttachmentDescription2 & setLoadOp( VULKAN_HPP_NAMESPACE::AttachmentLoadOp loadOp_ ) VULKAN_HPP_NOEXCEPT
- {
- loadOp = loadOp_;
- return *this;
- }
-
- AttachmentDescription2 & setStoreOp( VULKAN_HPP_NAMESPACE::AttachmentStoreOp storeOp_ ) VULKAN_HPP_NOEXCEPT
- {
- storeOp = storeOp_;
- return *this;
- }
-
- AttachmentDescription2 & setStencilLoadOp( VULKAN_HPP_NAMESPACE::AttachmentLoadOp stencilLoadOp_ ) VULKAN_HPP_NOEXCEPT
- {
- stencilLoadOp = stencilLoadOp_;
- return *this;
- }
-
- AttachmentDescription2 & setStencilStoreOp( VULKAN_HPP_NAMESPACE::AttachmentStoreOp stencilStoreOp_ ) VULKAN_HPP_NOEXCEPT
- {
- stencilStoreOp = stencilStoreOp_;
- return *this;
- }
-
- AttachmentDescription2 & setInitialLayout( VULKAN_HPP_NAMESPACE::ImageLayout initialLayout_ ) VULKAN_HPP_NOEXCEPT
- {
- initialLayout = initialLayout_;
- return *this;
- }
-
- AttachmentDescription2 & setFinalLayout( VULKAN_HPP_NAMESPACE::ImageLayout finalLayout_ ) VULKAN_HPP_NOEXCEPT
- {
- finalLayout = finalLayout_;
- return *this;
- }
-
-
- operator VkAttachmentDescription2 const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkAttachmentDescription2*>( this );
- }
-
- operator VkAttachmentDescription2 &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkAttachmentDescription2*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( AttachmentDescription2 const& ) const = default;
-#else
- bool operator==( AttachmentDescription2 const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( format == rhs.format )
- && ( samples == rhs.samples )
- && ( loadOp == rhs.loadOp )
- && ( storeOp == rhs.storeOp )
- && ( stencilLoadOp == rhs.stencilLoadOp )
- && ( stencilStoreOp == rhs.stencilStoreOp )
- && ( initialLayout == rhs.initialLayout )
- && ( finalLayout == rhs.finalLayout );
- }
-
- bool operator!=( AttachmentDescription2 const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAttachmentDescription2;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::AttachmentDescriptionFlags flags = {};
- VULKAN_HPP_NAMESPACE::Format format = VULKAN_HPP_NAMESPACE::Format::eUndefined;
- VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples = VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1;
- VULKAN_HPP_NAMESPACE::AttachmentLoadOp loadOp = VULKAN_HPP_NAMESPACE::AttachmentLoadOp::eLoad;
- VULKAN_HPP_NAMESPACE::AttachmentStoreOp storeOp = VULKAN_HPP_NAMESPACE::AttachmentStoreOp::eStore;
- VULKAN_HPP_NAMESPACE::AttachmentLoadOp stencilLoadOp = VULKAN_HPP_NAMESPACE::AttachmentLoadOp::eLoad;
- VULKAN_HPP_NAMESPACE::AttachmentStoreOp stencilStoreOp = VULKAN_HPP_NAMESPACE::AttachmentStoreOp::eStore;
- VULKAN_HPP_NAMESPACE::ImageLayout initialLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
- VULKAN_HPP_NAMESPACE::ImageLayout finalLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
-
- };
- static_assert( sizeof( AttachmentDescription2 ) == sizeof( VkAttachmentDescription2 ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<AttachmentDescription2>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::eAttachmentDescription2>
- {
- using Type = AttachmentDescription2;
- };
- using AttachmentDescription2KHR = AttachmentDescription2;
-
- struct AttachmentDescriptionStencilLayout
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eAttachmentDescriptionStencilLayout;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR AttachmentDescriptionStencilLayout(VULKAN_HPP_NAMESPACE::ImageLayout stencilInitialLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined, VULKAN_HPP_NAMESPACE::ImageLayout stencilFinalLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined) VULKAN_HPP_NOEXCEPT
- : stencilInitialLayout( stencilInitialLayout_ ), stencilFinalLayout( stencilFinalLayout_ )
- {}
-
- VULKAN_HPP_CONSTEXPR AttachmentDescriptionStencilLayout( AttachmentDescriptionStencilLayout const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- AttachmentDescriptionStencilLayout( VkAttachmentDescriptionStencilLayout const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- AttachmentDescriptionStencilLayout & operator=( VkAttachmentDescriptionStencilLayout const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AttachmentDescriptionStencilLayout const *>( &rhs );
- return *this;
- }
-
- AttachmentDescriptionStencilLayout & operator=( AttachmentDescriptionStencilLayout const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( AttachmentDescriptionStencilLayout ) );
- return *this;
- }
-
- AttachmentDescriptionStencilLayout & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- AttachmentDescriptionStencilLayout & setStencilInitialLayout( VULKAN_HPP_NAMESPACE::ImageLayout stencilInitialLayout_ ) VULKAN_HPP_NOEXCEPT
- {
- stencilInitialLayout = stencilInitialLayout_;
- return *this;
- }
-
- AttachmentDescriptionStencilLayout & setStencilFinalLayout( VULKAN_HPP_NAMESPACE::ImageLayout stencilFinalLayout_ ) VULKAN_HPP_NOEXCEPT
- {
- stencilFinalLayout = stencilFinalLayout_;
- return *this;
- }
-
-
- operator VkAttachmentDescriptionStencilLayout const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkAttachmentDescriptionStencilLayout*>( this );
- }
-
- operator VkAttachmentDescriptionStencilLayout &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkAttachmentDescriptionStencilLayout*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( AttachmentDescriptionStencilLayout const& ) const = default;
-#else
- bool operator==( AttachmentDescriptionStencilLayout const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( stencilInitialLayout == rhs.stencilInitialLayout )
- && ( stencilFinalLayout == rhs.stencilFinalLayout );
- }
-
- bool operator!=( AttachmentDescriptionStencilLayout const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAttachmentDescriptionStencilLayout;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::ImageLayout stencilInitialLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
- VULKAN_HPP_NAMESPACE::ImageLayout stencilFinalLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
-
- };
- static_assert( sizeof( AttachmentDescriptionStencilLayout ) == sizeof( VkAttachmentDescriptionStencilLayout ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<AttachmentDescriptionStencilLayout>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::eAttachmentDescriptionStencilLayout>
- {
- using Type = AttachmentDescriptionStencilLayout;
- };
- using AttachmentDescriptionStencilLayoutKHR = AttachmentDescriptionStencilLayout;
-
- struct AttachmentReference
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR AttachmentReference(uint32_t attachment_ = {}, VULKAN_HPP_NAMESPACE::ImageLayout layout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined) VULKAN_HPP_NOEXCEPT
- : attachment( attachment_ ), layout( layout_ )
- {}
-
- VULKAN_HPP_CONSTEXPR AttachmentReference( AttachmentReference const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- AttachmentReference( VkAttachmentReference const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- AttachmentReference & operator=( VkAttachmentReference const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AttachmentReference const *>( &rhs );
- return *this;
- }
-
- AttachmentReference & operator=( AttachmentReference const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( AttachmentReference ) );
- return *this;
- }
-
- AttachmentReference & setAttachment( uint32_t attachment_ ) VULKAN_HPP_NOEXCEPT
- {
- attachment = attachment_;
- return *this;
- }
-
- AttachmentReference & setLayout( VULKAN_HPP_NAMESPACE::ImageLayout layout_ ) VULKAN_HPP_NOEXCEPT
- {
- layout = layout_;
- return *this;
- }
-
-
- operator VkAttachmentReference const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkAttachmentReference*>( this );
- }
-
- operator VkAttachmentReference &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkAttachmentReference*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( AttachmentReference const& ) const = default;
-#else
- bool operator==( AttachmentReference const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( attachment == rhs.attachment )
- && ( layout == rhs.layout );
- }
-
- bool operator!=( AttachmentReference const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- uint32_t attachment = {};
- VULKAN_HPP_NAMESPACE::ImageLayout layout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
-
- };
- static_assert( sizeof( AttachmentReference ) == sizeof( VkAttachmentReference ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<AttachmentReference>::value, "struct wrapper is not a standard layout!" );
-
- struct AttachmentReference2
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eAttachmentReference2;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR AttachmentReference2(uint32_t attachment_ = {}, VULKAN_HPP_NAMESPACE::ImageLayout layout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined, VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask_ = {}) VULKAN_HPP_NOEXCEPT
- : attachment( attachment_ ), layout( layout_ ), aspectMask( aspectMask_ )
- {}
-
- VULKAN_HPP_CONSTEXPR AttachmentReference2( AttachmentReference2 const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- AttachmentReference2( VkAttachmentReference2 const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- AttachmentReference2 & operator=( VkAttachmentReference2 const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AttachmentReference2 const *>( &rhs );
- return *this;
- }
-
- AttachmentReference2 & operator=( AttachmentReference2 const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( AttachmentReference2 ) );
- return *this;
- }
-
- AttachmentReference2 & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- AttachmentReference2 & setAttachment( uint32_t attachment_ ) VULKAN_HPP_NOEXCEPT
- {
- attachment = attachment_;
- return *this;
- }
-
- AttachmentReference2 & setLayout( VULKAN_HPP_NAMESPACE::ImageLayout layout_ ) VULKAN_HPP_NOEXCEPT
- {
- layout = layout_;
- return *this;
- }
-
- AttachmentReference2 & setAspectMask( VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask_ ) VULKAN_HPP_NOEXCEPT
- {
- aspectMask = aspectMask_;
- return *this;
- }
-
-
- operator VkAttachmentReference2 const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkAttachmentReference2*>( this );
- }
-
- operator VkAttachmentReference2 &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkAttachmentReference2*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( AttachmentReference2 const& ) const = default;
-#else
- bool operator==( AttachmentReference2 const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( attachment == rhs.attachment )
- && ( layout == rhs.layout )
- && ( aspectMask == rhs.aspectMask );
- }
-
- bool operator!=( AttachmentReference2 const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAttachmentReference2;
- const void* pNext = {};
- uint32_t attachment = {};
- VULKAN_HPP_NAMESPACE::ImageLayout layout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
- VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask = {};
-
- };
- static_assert( sizeof( AttachmentReference2 ) == sizeof( VkAttachmentReference2 ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<AttachmentReference2>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::eAttachmentReference2>
- {
- using Type = AttachmentReference2;
- };
- using AttachmentReference2KHR = AttachmentReference2;
-
- struct AttachmentReferenceStencilLayout
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eAttachmentReferenceStencilLayout;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR AttachmentReferenceStencilLayout(VULKAN_HPP_NAMESPACE::ImageLayout stencilLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined) VULKAN_HPP_NOEXCEPT
- : stencilLayout( stencilLayout_ )
- {}
-
- VULKAN_HPP_CONSTEXPR AttachmentReferenceStencilLayout( AttachmentReferenceStencilLayout const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- AttachmentReferenceStencilLayout( VkAttachmentReferenceStencilLayout const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- AttachmentReferenceStencilLayout & operator=( VkAttachmentReferenceStencilLayout const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AttachmentReferenceStencilLayout const *>( &rhs );
- return *this;
- }
-
- AttachmentReferenceStencilLayout & operator=( AttachmentReferenceStencilLayout const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( AttachmentReferenceStencilLayout ) );
- return *this;
- }
-
- AttachmentReferenceStencilLayout & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- AttachmentReferenceStencilLayout & setStencilLayout( VULKAN_HPP_NAMESPACE::ImageLayout stencilLayout_ ) VULKAN_HPP_NOEXCEPT
- {
- stencilLayout = stencilLayout_;
- return *this;
- }
-
-
- operator VkAttachmentReferenceStencilLayout const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkAttachmentReferenceStencilLayout*>( this );
- }
-
- operator VkAttachmentReferenceStencilLayout &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkAttachmentReferenceStencilLayout*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( AttachmentReferenceStencilLayout const& ) const = default;
-#else
- bool operator==( AttachmentReferenceStencilLayout const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( stencilLayout == rhs.stencilLayout );
- }
-
- bool operator!=( AttachmentReferenceStencilLayout const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAttachmentReferenceStencilLayout;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::ImageLayout stencilLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
-
- };
- static_assert( sizeof( AttachmentReferenceStencilLayout ) == sizeof( VkAttachmentReferenceStencilLayout ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<AttachmentReferenceStencilLayout>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::eAttachmentReferenceStencilLayout>
- {
- using Type = AttachmentReferenceStencilLayout;
- };
- using AttachmentReferenceStencilLayoutKHR = AttachmentReferenceStencilLayout;
-
- struct Extent2D
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR Extent2D(uint32_t width_ = {}, uint32_t height_ = {}) VULKAN_HPP_NOEXCEPT
- : width( width_ ), height( height_ )
- {}
-
- VULKAN_HPP_CONSTEXPR Extent2D( Extent2D const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- Extent2D( VkExtent2D const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- Extent2D & operator=( VkExtent2D const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::Extent2D const *>( &rhs );
- return *this;
- }
-
- Extent2D & operator=( Extent2D const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( Extent2D ) );
- return *this;
- }
-
- Extent2D & setWidth( uint32_t width_ ) VULKAN_HPP_NOEXCEPT
- {
- width = width_;
- return *this;
- }
-
- Extent2D & setHeight( uint32_t height_ ) VULKAN_HPP_NOEXCEPT
- {
- height = height_;
- return *this;
- }
-
-
- operator VkExtent2D const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkExtent2D*>( this );
- }
-
- operator VkExtent2D &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkExtent2D*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( Extent2D const& ) const = default;
-#else
- bool operator==( Extent2D const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( width == rhs.width )
- && ( height == rhs.height );
- }
-
- bool operator!=( Extent2D const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- uint32_t width = {};
- uint32_t height = {};
-
- };
- static_assert( sizeof( Extent2D ) == sizeof( VkExtent2D ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<Extent2D>::value, "struct wrapper is not a standard layout!" );
-
- struct SampleLocationEXT
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR SampleLocationEXT(float x_ = {}, float y_ = {}) VULKAN_HPP_NOEXCEPT
- : x( x_ ), y( y_ )
- {}
-
- VULKAN_HPP_CONSTEXPR SampleLocationEXT( SampleLocationEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- SampleLocationEXT( VkSampleLocationEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- SampleLocationEXT & operator=( VkSampleLocationEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SampleLocationEXT const *>( &rhs );
- return *this;
- }
-
- SampleLocationEXT & operator=( SampleLocationEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( SampleLocationEXT ) );
- return *this;
- }
-
- SampleLocationEXT & setX( float x_ ) VULKAN_HPP_NOEXCEPT
- {
- x = x_;
- return *this;
- }
-
- SampleLocationEXT & setY( float y_ ) VULKAN_HPP_NOEXCEPT
- {
- y = y_;
- return *this;
- }
-
-
- operator VkSampleLocationEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkSampleLocationEXT*>( this );
- }
-
- operator VkSampleLocationEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkSampleLocationEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( SampleLocationEXT const& ) const = default;
-#else
- bool operator==( SampleLocationEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( x == rhs.x )
- && ( y == rhs.y );
- }
-
- bool operator!=( SampleLocationEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- float x = {};
- float y = {};
-
- };
- static_assert( sizeof( SampleLocationEXT ) == sizeof( VkSampleLocationEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<SampleLocationEXT>::value, "struct wrapper is not a standard layout!" );
-
- struct SampleLocationsInfoEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSampleLocationsInfoEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR SampleLocationsInfoEXT(VULKAN_HPP_NAMESPACE::SampleCountFlagBits sampleLocationsPerPixel_ = VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1, VULKAN_HPP_NAMESPACE::Extent2D sampleLocationGridSize_ = {}, uint32_t sampleLocationsCount_ = {}, const VULKAN_HPP_NAMESPACE::SampleLocationEXT* pSampleLocations_ = {}) VULKAN_HPP_NOEXCEPT
- : sampleLocationsPerPixel( sampleLocationsPerPixel_ ), sampleLocationGridSize( sampleLocationGridSize_ ), sampleLocationsCount( sampleLocationsCount_ ), pSampleLocations( pSampleLocations_ )
- {}
-
- VULKAN_HPP_CONSTEXPR SampleLocationsInfoEXT( SampleLocationsInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- SampleLocationsInfoEXT( VkSampleLocationsInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- SampleLocationsInfoEXT( VULKAN_HPP_NAMESPACE::SampleCountFlagBits sampleLocationsPerPixel_, VULKAN_HPP_NAMESPACE::Extent2D sampleLocationGridSize_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SampleLocationEXT> const & sampleLocations_ )
- : sampleLocationsPerPixel( sampleLocationsPerPixel_ ), sampleLocationGridSize( sampleLocationGridSize_ ), sampleLocationsCount( static_cast<uint32_t>( sampleLocations_.size() ) ), pSampleLocations( sampleLocations_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- SampleLocationsInfoEXT & operator=( VkSampleLocationsInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SampleLocationsInfoEXT const *>( &rhs );
- return *this;
- }
-
- SampleLocationsInfoEXT & operator=( SampleLocationsInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( SampleLocationsInfoEXT ) );
- return *this;
- }
-
- SampleLocationsInfoEXT & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- SampleLocationsInfoEXT & setSampleLocationsPerPixel( VULKAN_HPP_NAMESPACE::SampleCountFlagBits sampleLocationsPerPixel_ ) VULKAN_HPP_NOEXCEPT
- {
- sampleLocationsPerPixel = sampleLocationsPerPixel_;
- return *this;
- }
-
- SampleLocationsInfoEXT & setSampleLocationGridSize( VULKAN_HPP_NAMESPACE::Extent2D const & sampleLocationGridSize_ ) VULKAN_HPP_NOEXCEPT
- {
- sampleLocationGridSize = sampleLocationGridSize_;
- return *this;
- }
-
- SampleLocationsInfoEXT & setSampleLocationsCount( uint32_t sampleLocationsCount_ ) VULKAN_HPP_NOEXCEPT
- {
- sampleLocationsCount = sampleLocationsCount_;
- return *this;
- }
-
- SampleLocationsInfoEXT & setPSampleLocations( const VULKAN_HPP_NAMESPACE::SampleLocationEXT* pSampleLocations_ ) VULKAN_HPP_NOEXCEPT
- {
- pSampleLocations = pSampleLocations_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- SampleLocationsInfoEXT & setSampleLocations( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SampleLocationEXT> const & sampleLocations_ ) VULKAN_HPP_NOEXCEPT
- {
- sampleLocationsCount = static_cast<uint32_t>( sampleLocations_.size() );
- pSampleLocations = sampleLocations_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkSampleLocationsInfoEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkSampleLocationsInfoEXT*>( this );
- }
-
- operator VkSampleLocationsInfoEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkSampleLocationsInfoEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( SampleLocationsInfoEXT const& ) const = default;
-#else
- bool operator==( SampleLocationsInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( sampleLocationsPerPixel == rhs.sampleLocationsPerPixel )
- && ( sampleLocationGridSize == rhs.sampleLocationGridSize )
- && ( sampleLocationsCount == rhs.sampleLocationsCount )
- && ( pSampleLocations == rhs.pSampleLocations );
- }
-
- bool operator!=( SampleLocationsInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSampleLocationsInfoEXT;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::SampleCountFlagBits sampleLocationsPerPixel = VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1;
- VULKAN_HPP_NAMESPACE::Extent2D sampleLocationGridSize = {};
- uint32_t sampleLocationsCount = {};
- const VULKAN_HPP_NAMESPACE::SampleLocationEXT* pSampleLocations = {};
-
- };
- static_assert( sizeof( SampleLocationsInfoEXT ) == sizeof( VkSampleLocationsInfoEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<SampleLocationsInfoEXT>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::eSampleLocationsInfoEXT>
- {
- using Type = SampleLocationsInfoEXT;
- };
-
- struct AttachmentSampleLocationsEXT
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR AttachmentSampleLocationsEXT(uint32_t attachmentIndex_ = {}, VULKAN_HPP_NAMESPACE::SampleLocationsInfoEXT sampleLocationsInfo_ = {}) VULKAN_HPP_NOEXCEPT
- : attachmentIndex( attachmentIndex_ ), sampleLocationsInfo( sampleLocationsInfo_ )
- {}
-
- VULKAN_HPP_CONSTEXPR AttachmentSampleLocationsEXT( AttachmentSampleLocationsEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- AttachmentSampleLocationsEXT( VkAttachmentSampleLocationsEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- AttachmentSampleLocationsEXT & operator=( VkAttachmentSampleLocationsEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AttachmentSampleLocationsEXT const *>( &rhs );
- return *this;
- }
-
- AttachmentSampleLocationsEXT & operator=( AttachmentSampleLocationsEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( AttachmentSampleLocationsEXT ) );
- return *this;
- }
-
- AttachmentSampleLocationsEXT & setAttachmentIndex( uint32_t attachmentIndex_ ) VULKAN_HPP_NOEXCEPT
- {
- attachmentIndex = attachmentIndex_;
- return *this;
- }
-
- AttachmentSampleLocationsEXT & setSampleLocationsInfo( VULKAN_HPP_NAMESPACE::SampleLocationsInfoEXT const & sampleLocationsInfo_ ) VULKAN_HPP_NOEXCEPT
- {
- sampleLocationsInfo = sampleLocationsInfo_;
- return *this;
- }
-
-
- operator VkAttachmentSampleLocationsEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkAttachmentSampleLocationsEXT*>( this );
- }
-
- operator VkAttachmentSampleLocationsEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkAttachmentSampleLocationsEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( AttachmentSampleLocationsEXT const& ) const = default;
-#else
- bool operator==( AttachmentSampleLocationsEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( attachmentIndex == rhs.attachmentIndex )
- && ( sampleLocationsInfo == rhs.sampleLocationsInfo );
- }
-
- bool operator!=( AttachmentSampleLocationsEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- uint32_t attachmentIndex = {};
- VULKAN_HPP_NAMESPACE::SampleLocationsInfoEXT sampleLocationsInfo = {};
-
- };
- static_assert( sizeof( AttachmentSampleLocationsEXT ) == sizeof( VkAttachmentSampleLocationsEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<AttachmentSampleLocationsEXT>::value, "struct wrapper is not a standard layout!" );
-
- struct BaseInStructure
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- BaseInStructure(VULKAN_HPP_NAMESPACE::StructureType sType_ = VULKAN_HPP_NAMESPACE::StructureType::eApplicationInfo) VULKAN_HPP_NOEXCEPT
- : sType( sType_ )
- {}
-
- BaseInStructure( BaseInStructure const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- BaseInStructure( VkBaseInStructure const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- BaseInStructure & operator=( VkBaseInStructure const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BaseInStructure const *>( &rhs );
- return *this;
- }
-
- BaseInStructure & operator=( BaseInStructure const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( BaseInStructure ) );
- return *this;
- }
-
- BaseInStructure & setPNext( const struct VULKAN_HPP_NAMESPACE::BaseInStructure* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
-
- operator VkBaseInStructure const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkBaseInStructure*>( this );
- }
-
- operator VkBaseInStructure &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkBaseInStructure*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( BaseInStructure const& ) const = default;
-#else
- bool operator==( BaseInStructure const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext );
- }
-
- bool operator!=( BaseInStructure const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::StructureType sType = VULKAN_HPP_NAMESPACE::StructureType::eApplicationInfo;
- const struct VULKAN_HPP_NAMESPACE::BaseInStructure* pNext = {};
-
- };
- static_assert( sizeof( BaseInStructure ) == sizeof( VkBaseInStructure ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<BaseInStructure>::value, "struct wrapper is not a standard layout!" );
-
- struct BaseOutStructure
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- BaseOutStructure(VULKAN_HPP_NAMESPACE::StructureType sType_ = VULKAN_HPP_NAMESPACE::StructureType::eApplicationInfo) VULKAN_HPP_NOEXCEPT
- : sType( sType_ )
- {}
-
- BaseOutStructure( BaseOutStructure const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- BaseOutStructure( VkBaseOutStructure const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- BaseOutStructure & operator=( VkBaseOutStructure const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BaseOutStructure const *>( &rhs );
- return *this;
- }
-
- BaseOutStructure & operator=( BaseOutStructure const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( BaseOutStructure ) );
- return *this;
- }
-
- BaseOutStructure & setPNext( struct VULKAN_HPP_NAMESPACE::BaseOutStructure* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
-
- operator VkBaseOutStructure const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkBaseOutStructure*>( this );
- }
-
- operator VkBaseOutStructure &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkBaseOutStructure*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( BaseOutStructure const& ) const = default;
-#else
- bool operator==( BaseOutStructure const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext );
- }
-
- bool operator!=( BaseOutStructure const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::StructureType sType = VULKAN_HPP_NAMESPACE::StructureType::eApplicationInfo;
- struct VULKAN_HPP_NAMESPACE::BaseOutStructure* pNext = {};
-
- };
- static_assert( sizeof( BaseOutStructure ) == sizeof( VkBaseOutStructure ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<BaseOutStructure>::value, "struct wrapper is not a standard layout!" );
-
- class DeviceMemory
- {
- public:
- using CType = VkDeviceMemory;
-
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::eDeviceMemory;
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType = VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eDeviceMemory;
-
- public:
- VULKAN_HPP_CONSTEXPR DeviceMemory() VULKAN_HPP_NOEXCEPT
- : m_deviceMemory(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_CONSTEXPR DeviceMemory( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- : m_deviceMemory(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_TYPESAFE_EXPLICIT DeviceMemory( VkDeviceMemory deviceMemory ) VULKAN_HPP_NOEXCEPT
- : m_deviceMemory( deviceMemory )
- {}
-
-#if defined(VULKAN_HPP_TYPESAFE_CONVERSION)
- DeviceMemory & operator=(VkDeviceMemory deviceMemory) VULKAN_HPP_NOEXCEPT
- {
- m_deviceMemory = deviceMemory;
- return *this;
- }
-#endif
-
- DeviceMemory & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- {
- m_deviceMemory = VK_NULL_HANDLE;
- return *this;
- }
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DeviceMemory const& ) const = default;
-#else
- bool operator==( DeviceMemory const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_deviceMemory == rhs.m_deviceMemory;
- }
-
- bool operator!=(DeviceMemory const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_deviceMemory != rhs.m_deviceMemory;
- }
-
- bool operator<(DeviceMemory const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_deviceMemory < rhs.m_deviceMemory;
- }
-#endif
-
- VULKAN_HPP_TYPESAFE_EXPLICIT operator VkDeviceMemory() const VULKAN_HPP_NOEXCEPT
- {
- return m_deviceMemory;
- }
-
- explicit operator bool() const VULKAN_HPP_NOEXCEPT
- {
- return m_deviceMemory != VK_NULL_HANDLE;
- }
-
- bool operator!() const VULKAN_HPP_NOEXCEPT
- {
- return m_deviceMemory == VK_NULL_HANDLE;
- }
-
- private:
- VkDeviceMemory m_deviceMemory;
- };
- static_assert( sizeof( VULKAN_HPP_NAMESPACE::DeviceMemory ) == sizeof( VkDeviceMemory ), "handle and wrapper have different size!" );
-
- template <>
- struct VULKAN_HPP_DEPRECATED("vk::cpp_type is deprecated. Use vk::CppType instead.") cpp_type<ObjectType::eDeviceMemory>
- {
- using type = VULKAN_HPP_NAMESPACE::DeviceMemory;
- };
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eDeviceMemory>
- {
- using Type = VULKAN_HPP_NAMESPACE::DeviceMemory;
- };
-
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT, VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eDeviceMemory>
- {
- using Type = VULKAN_HPP_NAMESPACE::DeviceMemory;
- };
-
-
- template <>
- struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::DeviceMemory>
- {
- static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
- };
-
- struct BindAccelerationStructureMemoryInfoNV
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBindAccelerationStructureMemoryInfoNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR BindAccelerationStructureMemoryInfoNV(VULKAN_HPP_NAMESPACE::AccelerationStructureNV accelerationStructure_ = {}, VULKAN_HPP_NAMESPACE::DeviceMemory memory_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset_ = {}, uint32_t deviceIndexCount_ = {}, const uint32_t* pDeviceIndices_ = {}) VULKAN_HPP_NOEXCEPT
- : accelerationStructure( accelerationStructure_ ), memory( memory_ ), memoryOffset( memoryOffset_ ), deviceIndexCount( deviceIndexCount_ ), pDeviceIndices( pDeviceIndices_ )
- {}
-
- VULKAN_HPP_CONSTEXPR BindAccelerationStructureMemoryInfoNV( BindAccelerationStructureMemoryInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- BindAccelerationStructureMemoryInfoNV( VkBindAccelerationStructureMemoryInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- BindAccelerationStructureMemoryInfoNV( VULKAN_HPP_NAMESPACE::AccelerationStructureNV accelerationStructure_, VULKAN_HPP_NAMESPACE::DeviceMemory memory_, VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & deviceIndices_ )
- : accelerationStructure( accelerationStructure_ ), memory( memory_ ), memoryOffset( memoryOffset_ ), deviceIndexCount( static_cast<uint32_t>( deviceIndices_.size() ) ), pDeviceIndices( deviceIndices_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- BindAccelerationStructureMemoryInfoNV & operator=( VkBindAccelerationStructureMemoryInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BindAccelerationStructureMemoryInfoNV const *>( &rhs );
- return *this;
- }
-
- BindAccelerationStructureMemoryInfoNV & operator=( BindAccelerationStructureMemoryInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( BindAccelerationStructureMemoryInfoNV ) );
- return *this;
- }
-
- BindAccelerationStructureMemoryInfoNV & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- BindAccelerationStructureMemoryInfoNV & setAccelerationStructure( VULKAN_HPP_NAMESPACE::AccelerationStructureNV accelerationStructure_ ) VULKAN_HPP_NOEXCEPT
- {
- accelerationStructure = accelerationStructure_;
- return *this;
- }
-
- BindAccelerationStructureMemoryInfoNV & setMemory( VULKAN_HPP_NAMESPACE::DeviceMemory memory_ ) VULKAN_HPP_NOEXCEPT
- {
- memory = memory_;
- return *this;
- }
-
- BindAccelerationStructureMemoryInfoNV & setMemoryOffset( VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset_ ) VULKAN_HPP_NOEXCEPT
- {
- memoryOffset = memoryOffset_;
- return *this;
- }
-
- BindAccelerationStructureMemoryInfoNV & setDeviceIndexCount( uint32_t deviceIndexCount_ ) VULKAN_HPP_NOEXCEPT
- {
- deviceIndexCount = deviceIndexCount_;
- return *this;
- }
-
- BindAccelerationStructureMemoryInfoNV & setPDeviceIndices( const uint32_t* pDeviceIndices_ ) VULKAN_HPP_NOEXCEPT
- {
- pDeviceIndices = pDeviceIndices_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- BindAccelerationStructureMemoryInfoNV & setDeviceIndices( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & deviceIndices_ ) VULKAN_HPP_NOEXCEPT
- {
- deviceIndexCount = static_cast<uint32_t>( deviceIndices_.size() );
- pDeviceIndices = deviceIndices_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkBindAccelerationStructureMemoryInfoNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkBindAccelerationStructureMemoryInfoNV*>( this );
- }
-
- operator VkBindAccelerationStructureMemoryInfoNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkBindAccelerationStructureMemoryInfoNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( BindAccelerationStructureMemoryInfoNV const& ) const = default;
-#else
- bool operator==( BindAccelerationStructureMemoryInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( accelerationStructure == rhs.accelerationStructure )
- && ( memory == rhs.memory )
- && ( memoryOffset == rhs.memoryOffset )
- && ( deviceIndexCount == rhs.deviceIndexCount )
- && ( pDeviceIndices == rhs.pDeviceIndices );
- }
-
- bool operator!=( BindAccelerationStructureMemoryInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBindAccelerationStructureMemoryInfoNV;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::AccelerationStructureNV accelerationStructure = {};
- VULKAN_HPP_NAMESPACE::DeviceMemory memory = {};
- VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset = {};
- uint32_t deviceIndexCount = {};
- const uint32_t* pDeviceIndices = {};
-
- };
- static_assert( sizeof( BindAccelerationStructureMemoryInfoNV ) == sizeof( VkBindAccelerationStructureMemoryInfoNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<BindAccelerationStructureMemoryInfoNV>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::eBindAccelerationStructureMemoryInfoNV>
- {
- using Type = BindAccelerationStructureMemoryInfoNV;
- };
-
- struct BindBufferMemoryDeviceGroupInfo
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBindBufferMemoryDeviceGroupInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR BindBufferMemoryDeviceGroupInfo(uint32_t deviceIndexCount_ = {}, const uint32_t* pDeviceIndices_ = {}) VULKAN_HPP_NOEXCEPT
- : deviceIndexCount( deviceIndexCount_ ), pDeviceIndices( pDeviceIndices_ )
- {}
-
- VULKAN_HPP_CONSTEXPR BindBufferMemoryDeviceGroupInfo( BindBufferMemoryDeviceGroupInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- BindBufferMemoryDeviceGroupInfo( VkBindBufferMemoryDeviceGroupInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- BindBufferMemoryDeviceGroupInfo( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & deviceIndices_ )
- : deviceIndexCount( static_cast<uint32_t>( deviceIndices_.size() ) ), pDeviceIndices( deviceIndices_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- BindBufferMemoryDeviceGroupInfo & operator=( VkBindBufferMemoryDeviceGroupInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BindBufferMemoryDeviceGroupInfo const *>( &rhs );
- return *this;
- }
-
- BindBufferMemoryDeviceGroupInfo & operator=( BindBufferMemoryDeviceGroupInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( BindBufferMemoryDeviceGroupInfo ) );
- return *this;
- }
-
- BindBufferMemoryDeviceGroupInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- BindBufferMemoryDeviceGroupInfo & setDeviceIndexCount( uint32_t deviceIndexCount_ ) VULKAN_HPP_NOEXCEPT
- {
- deviceIndexCount = deviceIndexCount_;
- return *this;
- }
-
- BindBufferMemoryDeviceGroupInfo & setPDeviceIndices( const uint32_t* pDeviceIndices_ ) VULKAN_HPP_NOEXCEPT
- {
- pDeviceIndices = pDeviceIndices_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- BindBufferMemoryDeviceGroupInfo & setDeviceIndices( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & deviceIndices_ ) VULKAN_HPP_NOEXCEPT
- {
- deviceIndexCount = static_cast<uint32_t>( deviceIndices_.size() );
- pDeviceIndices = deviceIndices_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkBindBufferMemoryDeviceGroupInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkBindBufferMemoryDeviceGroupInfo*>( this );
- }
-
- operator VkBindBufferMemoryDeviceGroupInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkBindBufferMemoryDeviceGroupInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( BindBufferMemoryDeviceGroupInfo const& ) const = default;
-#else
- bool operator==( BindBufferMemoryDeviceGroupInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( deviceIndexCount == rhs.deviceIndexCount )
- && ( pDeviceIndices == rhs.pDeviceIndices );
- }
-
- bool operator!=( BindBufferMemoryDeviceGroupInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBindBufferMemoryDeviceGroupInfo;
- const void* pNext = {};
- uint32_t deviceIndexCount = {};
- const uint32_t* pDeviceIndices = {};
-
- };
- static_assert( sizeof( BindBufferMemoryDeviceGroupInfo ) == sizeof( VkBindBufferMemoryDeviceGroupInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<BindBufferMemoryDeviceGroupInfo>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::eBindBufferMemoryDeviceGroupInfo>
- {
- using Type = BindBufferMemoryDeviceGroupInfo;
- };
- using BindBufferMemoryDeviceGroupInfoKHR = BindBufferMemoryDeviceGroupInfo;
-
- struct BindBufferMemoryInfo
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBindBufferMemoryInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR BindBufferMemoryInfo(VULKAN_HPP_NAMESPACE::Buffer buffer_ = {}, VULKAN_HPP_NAMESPACE::DeviceMemory memory_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset_ = {}) VULKAN_HPP_NOEXCEPT
- : buffer( buffer_ ), memory( memory_ ), memoryOffset( memoryOffset_ )
- {}
-
- VULKAN_HPP_CONSTEXPR BindBufferMemoryInfo( BindBufferMemoryInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- BindBufferMemoryInfo( VkBindBufferMemoryInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- BindBufferMemoryInfo & operator=( VkBindBufferMemoryInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BindBufferMemoryInfo const *>( &rhs );
- return *this;
- }
-
- BindBufferMemoryInfo & operator=( BindBufferMemoryInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( BindBufferMemoryInfo ) );
- return *this;
- }
-
- BindBufferMemoryInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- BindBufferMemoryInfo & setBuffer( VULKAN_HPP_NAMESPACE::Buffer buffer_ ) VULKAN_HPP_NOEXCEPT
- {
- buffer = buffer_;
- return *this;
- }
-
- BindBufferMemoryInfo & setMemory( VULKAN_HPP_NAMESPACE::DeviceMemory memory_ ) VULKAN_HPP_NOEXCEPT
- {
- memory = memory_;
- return *this;
- }
-
- BindBufferMemoryInfo & setMemoryOffset( VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset_ ) VULKAN_HPP_NOEXCEPT
- {
- memoryOffset = memoryOffset_;
- return *this;
- }
-
-
- operator VkBindBufferMemoryInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkBindBufferMemoryInfo*>( this );
- }
-
- operator VkBindBufferMemoryInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkBindBufferMemoryInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( BindBufferMemoryInfo const& ) const = default;
-#else
- bool operator==( BindBufferMemoryInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( buffer == rhs.buffer )
- && ( memory == rhs.memory )
- && ( memoryOffset == rhs.memoryOffset );
- }
-
- bool operator!=( BindBufferMemoryInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBindBufferMemoryInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::Buffer buffer = {};
- VULKAN_HPP_NAMESPACE::DeviceMemory memory = {};
- VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset = {};
-
- };
- static_assert( sizeof( BindBufferMemoryInfo ) == sizeof( VkBindBufferMemoryInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<BindBufferMemoryInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eBindBufferMemoryInfo>
+ struct StructExtends<AttachmentDescriptionStencilLayout, AttachmentDescription2>
{
- using Type = BindBufferMemoryInfo;
- };
- using BindBufferMemoryInfoKHR = BindBufferMemoryInfo;
-
- struct Offset2D
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR Offset2D(int32_t x_ = {}, int32_t y_ = {}) VULKAN_HPP_NOEXCEPT
- : x( x_ ), y( y_ )
- {}
-
- VULKAN_HPP_CONSTEXPR Offset2D( Offset2D const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- Offset2D( VkOffset2D const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- Offset2D & operator=( VkOffset2D const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::Offset2D const *>( &rhs );
- return *this;
- }
-
- Offset2D & operator=( Offset2D const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( Offset2D ) );
- return *this;
- }
-
- Offset2D & setX( int32_t x_ ) VULKAN_HPP_NOEXCEPT
- {
- x = x_;
- return *this;
- }
-
- Offset2D & setY( int32_t y_ ) VULKAN_HPP_NOEXCEPT
- {
- y = y_;
- return *this;
- }
-
-
- operator VkOffset2D const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkOffset2D*>( this );
- }
-
- operator VkOffset2D &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkOffset2D*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( Offset2D const& ) const = default;
-#else
- bool operator==( Offset2D const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( x == rhs.x )
- && ( y == rhs.y );
- }
-
- bool operator!=( Offset2D const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- int32_t x = {};
- int32_t y = {};
-
- };
- static_assert( sizeof( Offset2D ) == sizeof( VkOffset2D ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<Offset2D>::value, "struct wrapper is not a standard layout!" );
-
- struct Rect2D
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR Rect2D(VULKAN_HPP_NAMESPACE::Offset2D offset_ = {}, VULKAN_HPP_NAMESPACE::Extent2D extent_ = {}) VULKAN_HPP_NOEXCEPT
- : offset( offset_ ), extent( extent_ )
- {}
-
- VULKAN_HPP_CONSTEXPR Rect2D( Rect2D const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- Rect2D( VkRect2D const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- Rect2D & operator=( VkRect2D const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::Rect2D const *>( &rhs );
- return *this;
- }
-
- Rect2D & operator=( Rect2D const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( Rect2D ) );
- return *this;
- }
-
- Rect2D & setOffset( VULKAN_HPP_NAMESPACE::Offset2D const & offset_ ) VULKAN_HPP_NOEXCEPT
- {
- offset = offset_;
- return *this;
- }
-
- Rect2D & setExtent( VULKAN_HPP_NAMESPACE::Extent2D const & extent_ ) VULKAN_HPP_NOEXCEPT
- {
- extent = extent_;
- return *this;
- }
-
-
- operator VkRect2D const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkRect2D*>( this );
- }
-
- operator VkRect2D &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkRect2D*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( Rect2D const& ) const = default;
-#else
- bool operator==( Rect2D const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( offset == rhs.offset )
- && ( extent == rhs.extent );
- }
-
- bool operator!=( Rect2D const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::Offset2D offset = {};
- VULKAN_HPP_NAMESPACE::Extent2D extent = {};
-
- };
- static_assert( sizeof( Rect2D ) == sizeof( VkRect2D ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<Rect2D>::value, "struct wrapper is not a standard layout!" );
-
- struct BindImageMemoryDeviceGroupInfo
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBindImageMemoryDeviceGroupInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR BindImageMemoryDeviceGroupInfo(uint32_t deviceIndexCount_ = {}, const uint32_t* pDeviceIndices_ = {}, uint32_t splitInstanceBindRegionCount_ = {}, const VULKAN_HPP_NAMESPACE::Rect2D* pSplitInstanceBindRegions_ = {}) VULKAN_HPP_NOEXCEPT
- : deviceIndexCount( deviceIndexCount_ ), pDeviceIndices( pDeviceIndices_ ), splitInstanceBindRegionCount( splitInstanceBindRegionCount_ ), pSplitInstanceBindRegions( pSplitInstanceBindRegions_ )
- {}
-
- VULKAN_HPP_CONSTEXPR BindImageMemoryDeviceGroupInfo( BindImageMemoryDeviceGroupInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- BindImageMemoryDeviceGroupInfo( VkBindImageMemoryDeviceGroupInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- BindImageMemoryDeviceGroupInfo( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & deviceIndices_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Rect2D> const & splitInstanceBindRegions_ = {} )
- : deviceIndexCount( static_cast<uint32_t>( deviceIndices_.size() ) ), pDeviceIndices( deviceIndices_.data() ), splitInstanceBindRegionCount( static_cast<uint32_t>( splitInstanceBindRegions_.size() ) ), pSplitInstanceBindRegions( splitInstanceBindRegions_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- BindImageMemoryDeviceGroupInfo & operator=( VkBindImageMemoryDeviceGroupInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BindImageMemoryDeviceGroupInfo const *>( &rhs );
- return *this;
- }
-
- BindImageMemoryDeviceGroupInfo & operator=( BindImageMemoryDeviceGroupInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( BindImageMemoryDeviceGroupInfo ) );
- return *this;
- }
-
- BindImageMemoryDeviceGroupInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- BindImageMemoryDeviceGroupInfo & setDeviceIndexCount( uint32_t deviceIndexCount_ ) VULKAN_HPP_NOEXCEPT
- {
- deviceIndexCount = deviceIndexCount_;
- return *this;
- }
-
- BindImageMemoryDeviceGroupInfo & setPDeviceIndices( const uint32_t* pDeviceIndices_ ) VULKAN_HPP_NOEXCEPT
- {
- pDeviceIndices = pDeviceIndices_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- BindImageMemoryDeviceGroupInfo & setDeviceIndices( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & deviceIndices_ ) VULKAN_HPP_NOEXCEPT
- {
- deviceIndexCount = static_cast<uint32_t>( deviceIndices_.size() );
- pDeviceIndices = deviceIndices_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- BindImageMemoryDeviceGroupInfo & setSplitInstanceBindRegionCount( uint32_t splitInstanceBindRegionCount_ ) VULKAN_HPP_NOEXCEPT
- {
- splitInstanceBindRegionCount = splitInstanceBindRegionCount_;
- return *this;
- }
-
- BindImageMemoryDeviceGroupInfo & setPSplitInstanceBindRegions( const VULKAN_HPP_NAMESPACE::Rect2D* pSplitInstanceBindRegions_ ) VULKAN_HPP_NOEXCEPT
- {
- pSplitInstanceBindRegions = pSplitInstanceBindRegions_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- BindImageMemoryDeviceGroupInfo & setSplitInstanceBindRegions( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Rect2D> const & splitInstanceBindRegions_ ) VULKAN_HPP_NOEXCEPT
- {
- splitInstanceBindRegionCount = static_cast<uint32_t>( splitInstanceBindRegions_.size() );
- pSplitInstanceBindRegions = splitInstanceBindRegions_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkBindImageMemoryDeviceGroupInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkBindImageMemoryDeviceGroupInfo*>( this );
- }
-
- operator VkBindImageMemoryDeviceGroupInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkBindImageMemoryDeviceGroupInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( BindImageMemoryDeviceGroupInfo const& ) const = default;
-#else
- bool operator==( BindImageMemoryDeviceGroupInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( deviceIndexCount == rhs.deviceIndexCount )
- && ( pDeviceIndices == rhs.pDeviceIndices )
- && ( splitInstanceBindRegionCount == rhs.splitInstanceBindRegionCount )
- && ( pSplitInstanceBindRegions == rhs.pSplitInstanceBindRegions );
- }
-
- bool operator!=( BindImageMemoryDeviceGroupInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBindImageMemoryDeviceGroupInfo;
- const void* pNext = {};
- uint32_t deviceIndexCount = {};
- const uint32_t* pDeviceIndices = {};
- uint32_t splitInstanceBindRegionCount = {};
- const VULKAN_HPP_NAMESPACE::Rect2D* pSplitInstanceBindRegions = {};
-
- };
- static_assert( sizeof( BindImageMemoryDeviceGroupInfo ) == sizeof( VkBindImageMemoryDeviceGroupInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<BindImageMemoryDeviceGroupInfo>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::eBindImageMemoryDeviceGroupInfo>
- {
- using Type = BindImageMemoryDeviceGroupInfo;
- };
- using BindImageMemoryDeviceGroupInfoKHR = BindImageMemoryDeviceGroupInfo;
-
- class Image
- {
- public:
- using CType = VkImage;
-
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::eImage;
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType = VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eImage;
-
- public:
- VULKAN_HPP_CONSTEXPR Image() VULKAN_HPP_NOEXCEPT
- : m_image(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_CONSTEXPR Image( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- : m_image(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_TYPESAFE_EXPLICIT Image( VkImage image ) VULKAN_HPP_NOEXCEPT
- : m_image( image )
- {}
-
-#if defined(VULKAN_HPP_TYPESAFE_CONVERSION)
- Image & operator=(VkImage image) VULKAN_HPP_NOEXCEPT
- {
- m_image = image;
- return *this;
- }
-#endif
-
- Image & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- {
- m_image = VK_NULL_HANDLE;
- return *this;
- }
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( Image const& ) const = default;
-#else
- bool operator==( Image const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_image == rhs.m_image;
- }
-
- bool operator!=(Image const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_image != rhs.m_image;
- }
-
- bool operator<(Image const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_image < rhs.m_image;
- }
-#endif
-
- VULKAN_HPP_TYPESAFE_EXPLICIT operator VkImage() const VULKAN_HPP_NOEXCEPT
- {
- return m_image;
- }
-
- explicit operator bool() const VULKAN_HPP_NOEXCEPT
- {
- return m_image != VK_NULL_HANDLE;
- }
-
- bool operator!() const VULKAN_HPP_NOEXCEPT
- {
- return m_image == VK_NULL_HANDLE;
- }
-
- private:
- VkImage m_image;
- };
- static_assert( sizeof( VULKAN_HPP_NAMESPACE::Image ) == sizeof( VkImage ), "handle and wrapper have different size!" );
-
- template <>
- struct VULKAN_HPP_DEPRECATED("vk::cpp_type is deprecated. Use vk::CppType instead.") cpp_type<ObjectType::eImage>
- {
- using type = VULKAN_HPP_NAMESPACE::Image;
- };
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eImage>
- {
- using Type = VULKAN_HPP_NAMESPACE::Image;
- };
-
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT, VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eImage>
- {
- using Type = VULKAN_HPP_NAMESPACE::Image;
- };
-
-
- template <>
- struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::Image>
- {
- static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
- };
-
- struct BindImageMemoryInfo
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBindImageMemoryInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR BindImageMemoryInfo(VULKAN_HPP_NAMESPACE::Image image_ = {}, VULKAN_HPP_NAMESPACE::DeviceMemory memory_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset_ = {}) VULKAN_HPP_NOEXCEPT
- : image( image_ ), memory( memory_ ), memoryOffset( memoryOffset_ )
- {}
-
- VULKAN_HPP_CONSTEXPR BindImageMemoryInfo( BindImageMemoryInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- BindImageMemoryInfo( VkBindImageMemoryInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- BindImageMemoryInfo & operator=( VkBindImageMemoryInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BindImageMemoryInfo const *>( &rhs );
- return *this;
- }
-
- BindImageMemoryInfo & operator=( BindImageMemoryInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( BindImageMemoryInfo ) );
- return *this;
- }
-
- BindImageMemoryInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- BindImageMemoryInfo & setImage( VULKAN_HPP_NAMESPACE::Image image_ ) VULKAN_HPP_NOEXCEPT
- {
- image = image_;
- return *this;
- }
-
- BindImageMemoryInfo & setMemory( VULKAN_HPP_NAMESPACE::DeviceMemory memory_ ) VULKAN_HPP_NOEXCEPT
- {
- memory = memory_;
- return *this;
- }
-
- BindImageMemoryInfo & setMemoryOffset( VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset_ ) VULKAN_HPP_NOEXCEPT
- {
- memoryOffset = memoryOffset_;
- return *this;
- }
-
-
- operator VkBindImageMemoryInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkBindImageMemoryInfo*>( this );
- }
-
- operator VkBindImageMemoryInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkBindImageMemoryInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( BindImageMemoryInfo const& ) const = default;
-#else
- bool operator==( BindImageMemoryInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( image == rhs.image )
- && ( memory == rhs.memory )
- && ( memoryOffset == rhs.memoryOffset );
- }
-
- bool operator!=( BindImageMemoryInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBindImageMemoryInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::Image image = {};
- VULKAN_HPP_NAMESPACE::DeviceMemory memory = {};
- VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset = {};
-
- };
- static_assert( sizeof( BindImageMemoryInfo ) == sizeof( VkBindImageMemoryInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<BindImageMemoryInfo>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::eBindImageMemoryInfo>
- {
- using Type = BindImageMemoryInfo;
- };
- using BindImageMemoryInfoKHR = BindImageMemoryInfo;
-
- struct BindImageMemorySwapchainInfoKHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBindImageMemorySwapchainInfoKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR BindImageMemorySwapchainInfoKHR(VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain_ = {}, uint32_t imageIndex_ = {}) VULKAN_HPP_NOEXCEPT
- : swapchain( swapchain_ ), imageIndex( imageIndex_ )
- {}
-
- VULKAN_HPP_CONSTEXPR BindImageMemorySwapchainInfoKHR( BindImageMemorySwapchainInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- BindImageMemorySwapchainInfoKHR( VkBindImageMemorySwapchainInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- BindImageMemorySwapchainInfoKHR & operator=( VkBindImageMemorySwapchainInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BindImageMemorySwapchainInfoKHR const *>( &rhs );
- return *this;
- }
-
- BindImageMemorySwapchainInfoKHR & operator=( BindImageMemorySwapchainInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( BindImageMemorySwapchainInfoKHR ) );
- return *this;
- }
-
- BindImageMemorySwapchainInfoKHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- BindImageMemorySwapchainInfoKHR & setSwapchain( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain_ ) VULKAN_HPP_NOEXCEPT
- {
- swapchain = swapchain_;
- return *this;
- }
-
- BindImageMemorySwapchainInfoKHR & setImageIndex( uint32_t imageIndex_ ) VULKAN_HPP_NOEXCEPT
- {
- imageIndex = imageIndex_;
- return *this;
- }
-
-
- operator VkBindImageMemorySwapchainInfoKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkBindImageMemorySwapchainInfoKHR*>( this );
- }
-
- operator VkBindImageMemorySwapchainInfoKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkBindImageMemorySwapchainInfoKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( BindImageMemorySwapchainInfoKHR const& ) const = default;
-#else
- bool operator==( BindImageMemorySwapchainInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( swapchain == rhs.swapchain )
- && ( imageIndex == rhs.imageIndex );
- }
-
- bool operator!=( BindImageMemorySwapchainInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBindImageMemorySwapchainInfoKHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain = {};
- uint32_t imageIndex = {};
-
+ value = true
+ };
};
- static_assert( sizeof( BindImageMemorySwapchainInfoKHR ) == sizeof( VkBindImageMemorySwapchainInfoKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<BindImageMemorySwapchainInfoKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eBindImageMemorySwapchainInfoKHR>
- {
- using Type = BindImageMemorySwapchainInfoKHR;
- };
-
- struct BindImagePlaneMemoryInfo
+ struct StructExtends<AttachmentReferenceStencilLayout, AttachmentReference2>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBindImagePlaneMemoryInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR BindImagePlaneMemoryInfo(VULKAN_HPP_NAMESPACE::ImageAspectFlagBits planeAspect_ = VULKAN_HPP_NAMESPACE::ImageAspectFlagBits::eColor) VULKAN_HPP_NOEXCEPT
- : planeAspect( planeAspect_ )
- {}
-
- VULKAN_HPP_CONSTEXPR BindImagePlaneMemoryInfo( BindImagePlaneMemoryInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- BindImagePlaneMemoryInfo( VkBindImagePlaneMemoryInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- BindImagePlaneMemoryInfo & operator=( VkBindImagePlaneMemoryInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BindImagePlaneMemoryInfo const *>( &rhs );
- return *this;
- }
-
- BindImagePlaneMemoryInfo & operator=( BindImagePlaneMemoryInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( BindImagePlaneMemoryInfo ) );
- return *this;
- }
-
- BindImagePlaneMemoryInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- BindImagePlaneMemoryInfo & setPlaneAspect( VULKAN_HPP_NAMESPACE::ImageAspectFlagBits planeAspect_ ) VULKAN_HPP_NOEXCEPT
- {
- planeAspect = planeAspect_;
- return *this;
- }
-
-
- operator VkBindImagePlaneMemoryInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkBindImagePlaneMemoryInfo*>( this );
- }
-
- operator VkBindImagePlaneMemoryInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkBindImagePlaneMemoryInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( BindImagePlaneMemoryInfo const& ) const = default;
-#else
- bool operator==( BindImagePlaneMemoryInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( planeAspect == rhs.planeAspect );
- }
-
- bool operator!=( BindImagePlaneMemoryInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBindImagePlaneMemoryInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::ImageAspectFlagBits planeAspect = VULKAN_HPP_NAMESPACE::ImageAspectFlagBits::eColor;
-
+ value = true
+ };
};
- static_assert( sizeof( BindImagePlaneMemoryInfo ) == sizeof( VkBindImagePlaneMemoryInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<BindImagePlaneMemoryInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eBindImagePlaneMemoryInfo>
+ struct StructExtends<BindBufferMemoryDeviceGroupInfo, BindBufferMemoryInfo>
{
- using Type = BindImagePlaneMemoryInfo;
- };
- using BindImagePlaneMemoryInfoKHR = BindImagePlaneMemoryInfo;
-
- struct BindIndexBufferIndirectCommandNV
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR BindIndexBufferIndirectCommandNV(VULKAN_HPP_NAMESPACE::DeviceAddress bufferAddress_ = {}, uint32_t size_ = {}, VULKAN_HPP_NAMESPACE::IndexType indexType_ = VULKAN_HPP_NAMESPACE::IndexType::eUint16) VULKAN_HPP_NOEXCEPT
- : bufferAddress( bufferAddress_ ), size( size_ ), indexType( indexType_ )
- {}
-
- VULKAN_HPP_CONSTEXPR BindIndexBufferIndirectCommandNV( BindIndexBufferIndirectCommandNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- BindIndexBufferIndirectCommandNV( VkBindIndexBufferIndirectCommandNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- BindIndexBufferIndirectCommandNV & operator=( VkBindIndexBufferIndirectCommandNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BindIndexBufferIndirectCommandNV const *>( &rhs );
- return *this;
- }
-
- BindIndexBufferIndirectCommandNV & operator=( BindIndexBufferIndirectCommandNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( BindIndexBufferIndirectCommandNV ) );
- return *this;
- }
-
- BindIndexBufferIndirectCommandNV & setBufferAddress( VULKAN_HPP_NAMESPACE::DeviceAddress bufferAddress_ ) VULKAN_HPP_NOEXCEPT
- {
- bufferAddress = bufferAddress_;
- return *this;
- }
-
- BindIndexBufferIndirectCommandNV & setSize( uint32_t size_ ) VULKAN_HPP_NOEXCEPT
- {
- size = size_;
- return *this;
- }
-
- BindIndexBufferIndirectCommandNV & setIndexType( VULKAN_HPP_NAMESPACE::IndexType indexType_ ) VULKAN_HPP_NOEXCEPT
- {
- indexType = indexType_;
- return *this;
- }
-
-
- operator VkBindIndexBufferIndirectCommandNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkBindIndexBufferIndirectCommandNV*>( this );
- }
-
- operator VkBindIndexBufferIndirectCommandNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkBindIndexBufferIndirectCommandNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( BindIndexBufferIndirectCommandNV const& ) const = default;
-#else
- bool operator==( BindIndexBufferIndirectCommandNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( bufferAddress == rhs.bufferAddress )
- && ( size == rhs.size )
- && ( indexType == rhs.indexType );
- }
-
- bool operator!=( BindIndexBufferIndirectCommandNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::DeviceAddress bufferAddress = {};
- uint32_t size = {};
- VULKAN_HPP_NAMESPACE::IndexType indexType = VULKAN_HPP_NAMESPACE::IndexType::eUint16;
-
- };
- static_assert( sizeof( BindIndexBufferIndirectCommandNV ) == sizeof( VkBindIndexBufferIndirectCommandNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<BindIndexBufferIndirectCommandNV>::value, "struct wrapper is not a standard layout!" );
-
- struct BindShaderGroupIndirectCommandNV
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR BindShaderGroupIndirectCommandNV(uint32_t groupIndex_ = {}) VULKAN_HPP_NOEXCEPT
- : groupIndex( groupIndex_ )
- {}
-
- VULKAN_HPP_CONSTEXPR BindShaderGroupIndirectCommandNV( BindShaderGroupIndirectCommandNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- BindShaderGroupIndirectCommandNV( VkBindShaderGroupIndirectCommandNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- BindShaderGroupIndirectCommandNV & operator=( VkBindShaderGroupIndirectCommandNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BindShaderGroupIndirectCommandNV const *>( &rhs );
- return *this;
- }
-
- BindShaderGroupIndirectCommandNV & operator=( BindShaderGroupIndirectCommandNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( BindShaderGroupIndirectCommandNV ) );
- return *this;
- }
-
- BindShaderGroupIndirectCommandNV & setGroupIndex( uint32_t groupIndex_ ) VULKAN_HPP_NOEXCEPT
- {
- groupIndex = groupIndex_;
- return *this;
- }
-
-
- operator VkBindShaderGroupIndirectCommandNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkBindShaderGroupIndirectCommandNV*>( this );
- }
-
- operator VkBindShaderGroupIndirectCommandNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkBindShaderGroupIndirectCommandNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( BindShaderGroupIndirectCommandNV const& ) const = default;
-#else
- bool operator==( BindShaderGroupIndirectCommandNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( groupIndex == rhs.groupIndex );
- }
-
- bool operator!=( BindShaderGroupIndirectCommandNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- uint32_t groupIndex = {};
-
- };
- static_assert( sizeof( BindShaderGroupIndirectCommandNV ) == sizeof( VkBindShaderGroupIndirectCommandNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<BindShaderGroupIndirectCommandNV>::value, "struct wrapper is not a standard layout!" );
-
- struct SparseMemoryBind
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR SparseMemoryBind(VULKAN_HPP_NAMESPACE::DeviceSize resourceOffset_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize size_ = {}, VULKAN_HPP_NAMESPACE::DeviceMemory memory_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset_ = {}, VULKAN_HPP_NAMESPACE::SparseMemoryBindFlags flags_ = {}) VULKAN_HPP_NOEXCEPT
- : resourceOffset( resourceOffset_ ), size( size_ ), memory( memory_ ), memoryOffset( memoryOffset_ ), flags( flags_ )
- {}
-
- VULKAN_HPP_CONSTEXPR SparseMemoryBind( SparseMemoryBind const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- SparseMemoryBind( VkSparseMemoryBind const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- SparseMemoryBind & operator=( VkSparseMemoryBind const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SparseMemoryBind const *>( &rhs );
- return *this;
- }
-
- SparseMemoryBind & operator=( SparseMemoryBind const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( SparseMemoryBind ) );
- return *this;
- }
-
- SparseMemoryBind & setResourceOffset( VULKAN_HPP_NAMESPACE::DeviceSize resourceOffset_ ) VULKAN_HPP_NOEXCEPT
- {
- resourceOffset = resourceOffset_;
- return *this;
- }
-
- SparseMemoryBind & setSize( VULKAN_HPP_NAMESPACE::DeviceSize size_ ) VULKAN_HPP_NOEXCEPT
- {
- size = size_;
- return *this;
- }
-
- SparseMemoryBind & setMemory( VULKAN_HPP_NAMESPACE::DeviceMemory memory_ ) VULKAN_HPP_NOEXCEPT
- {
- memory = memory_;
- return *this;
- }
-
- SparseMemoryBind & setMemoryOffset( VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset_ ) VULKAN_HPP_NOEXCEPT
- {
- memoryOffset = memoryOffset_;
- return *this;
- }
-
- SparseMemoryBind & setFlags( VULKAN_HPP_NAMESPACE::SparseMemoryBindFlags flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
-
- operator VkSparseMemoryBind const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkSparseMemoryBind*>( this );
- }
-
- operator VkSparseMemoryBind &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkSparseMemoryBind*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( SparseMemoryBind const& ) const = default;
-#else
- bool operator==( SparseMemoryBind const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( resourceOffset == rhs.resourceOffset )
- && ( size == rhs.size )
- && ( memory == rhs.memory )
- && ( memoryOffset == rhs.memoryOffset )
- && ( flags == rhs.flags );
- }
-
- bool operator!=( SparseMemoryBind const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::DeviceSize resourceOffset = {};
- VULKAN_HPP_NAMESPACE::DeviceSize size = {};
- VULKAN_HPP_NAMESPACE::DeviceMemory memory = {};
- VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset = {};
- VULKAN_HPP_NAMESPACE::SparseMemoryBindFlags flags = {};
-
- };
- static_assert( sizeof( SparseMemoryBind ) == sizeof( VkSparseMemoryBind ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<SparseMemoryBind>::value, "struct wrapper is not a standard layout!" );
-
- struct SparseBufferMemoryBindInfo
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR SparseBufferMemoryBindInfo(VULKAN_HPP_NAMESPACE::Buffer buffer_ = {}, uint32_t bindCount_ = {}, const VULKAN_HPP_NAMESPACE::SparseMemoryBind* pBinds_ = {}) VULKAN_HPP_NOEXCEPT
- : buffer( buffer_ ), bindCount( bindCount_ ), pBinds( pBinds_ )
- {}
-
- VULKAN_HPP_CONSTEXPR SparseBufferMemoryBindInfo( SparseBufferMemoryBindInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- SparseBufferMemoryBindInfo( VkSparseBufferMemoryBindInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- SparseBufferMemoryBindInfo( VULKAN_HPP_NAMESPACE::Buffer buffer_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SparseMemoryBind> const & binds_ )
- : buffer( buffer_ ), bindCount( static_cast<uint32_t>( binds_.size() ) ), pBinds( binds_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- SparseBufferMemoryBindInfo & operator=( VkSparseBufferMemoryBindInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SparseBufferMemoryBindInfo const *>( &rhs );
- return *this;
- }
-
- SparseBufferMemoryBindInfo & operator=( SparseBufferMemoryBindInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( SparseBufferMemoryBindInfo ) );
- return *this;
- }
-
- SparseBufferMemoryBindInfo & setBuffer( VULKAN_HPP_NAMESPACE::Buffer buffer_ ) VULKAN_HPP_NOEXCEPT
- {
- buffer = buffer_;
- return *this;
- }
-
- SparseBufferMemoryBindInfo & setBindCount( uint32_t bindCount_ ) VULKAN_HPP_NOEXCEPT
- {
- bindCount = bindCount_;
- return *this;
- }
-
- SparseBufferMemoryBindInfo & setPBinds( const VULKAN_HPP_NAMESPACE::SparseMemoryBind* pBinds_ ) VULKAN_HPP_NOEXCEPT
- {
- pBinds = pBinds_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- SparseBufferMemoryBindInfo & setBinds( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SparseMemoryBind> const & binds_ ) VULKAN_HPP_NOEXCEPT
- {
- bindCount = static_cast<uint32_t>( binds_.size() );
- pBinds = binds_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkSparseBufferMemoryBindInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkSparseBufferMemoryBindInfo*>( this );
- }
-
- operator VkSparseBufferMemoryBindInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkSparseBufferMemoryBindInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( SparseBufferMemoryBindInfo const& ) const = default;
-#else
- bool operator==( SparseBufferMemoryBindInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( buffer == rhs.buffer )
- && ( bindCount == rhs.bindCount )
- && ( pBinds == rhs.pBinds );
- }
-
- bool operator!=( SparseBufferMemoryBindInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::Buffer buffer = {};
- uint32_t bindCount = {};
- const VULKAN_HPP_NAMESPACE::SparseMemoryBind* pBinds = {};
-
- };
- static_assert( sizeof( SparseBufferMemoryBindInfo ) == sizeof( VkSparseBufferMemoryBindInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<SparseBufferMemoryBindInfo>::value, "struct wrapper is not a standard layout!" );
-
- struct SparseImageOpaqueMemoryBindInfo
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR SparseImageOpaqueMemoryBindInfo(VULKAN_HPP_NAMESPACE::Image image_ = {}, uint32_t bindCount_ = {}, const VULKAN_HPP_NAMESPACE::SparseMemoryBind* pBinds_ = {}) VULKAN_HPP_NOEXCEPT
- : image( image_ ), bindCount( bindCount_ ), pBinds( pBinds_ )
- {}
-
- VULKAN_HPP_CONSTEXPR SparseImageOpaqueMemoryBindInfo( SparseImageOpaqueMemoryBindInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- SparseImageOpaqueMemoryBindInfo( VkSparseImageOpaqueMemoryBindInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- SparseImageOpaqueMemoryBindInfo( VULKAN_HPP_NAMESPACE::Image image_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SparseMemoryBind> const & binds_ )
- : image( image_ ), bindCount( static_cast<uint32_t>( binds_.size() ) ), pBinds( binds_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- SparseImageOpaqueMemoryBindInfo & operator=( VkSparseImageOpaqueMemoryBindInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SparseImageOpaqueMemoryBindInfo const *>( &rhs );
- return *this;
- }
-
- SparseImageOpaqueMemoryBindInfo & operator=( SparseImageOpaqueMemoryBindInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( SparseImageOpaqueMemoryBindInfo ) );
- return *this;
- }
-
- SparseImageOpaqueMemoryBindInfo & setImage( VULKAN_HPP_NAMESPACE::Image image_ ) VULKAN_HPP_NOEXCEPT
- {
- image = image_;
- return *this;
- }
-
- SparseImageOpaqueMemoryBindInfo & setBindCount( uint32_t bindCount_ ) VULKAN_HPP_NOEXCEPT
- {
- bindCount = bindCount_;
- return *this;
- }
-
- SparseImageOpaqueMemoryBindInfo & setPBinds( const VULKAN_HPP_NAMESPACE::SparseMemoryBind* pBinds_ ) VULKAN_HPP_NOEXCEPT
- {
- pBinds = pBinds_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- SparseImageOpaqueMemoryBindInfo & setBinds( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SparseMemoryBind> const & binds_ ) VULKAN_HPP_NOEXCEPT
- {
- bindCount = static_cast<uint32_t>( binds_.size() );
- pBinds = binds_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkSparseImageOpaqueMemoryBindInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkSparseImageOpaqueMemoryBindInfo*>( this );
- }
-
- operator VkSparseImageOpaqueMemoryBindInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkSparseImageOpaqueMemoryBindInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( SparseImageOpaqueMemoryBindInfo const& ) const = default;
-#else
- bool operator==( SparseImageOpaqueMemoryBindInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( image == rhs.image )
- && ( bindCount == rhs.bindCount )
- && ( pBinds == rhs.pBinds );
- }
-
- bool operator!=( SparseImageOpaqueMemoryBindInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::Image image = {};
- uint32_t bindCount = {};
- const VULKAN_HPP_NAMESPACE::SparseMemoryBind* pBinds = {};
-
- };
- static_assert( sizeof( SparseImageOpaqueMemoryBindInfo ) == sizeof( VkSparseImageOpaqueMemoryBindInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<SparseImageOpaqueMemoryBindInfo>::value, "struct wrapper is not a standard layout!" );
-
- struct ImageSubresource
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ImageSubresource(VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask_ = {}, uint32_t mipLevel_ = {}, uint32_t arrayLayer_ = {}) VULKAN_HPP_NOEXCEPT
- : aspectMask( aspectMask_ ), mipLevel( mipLevel_ ), arrayLayer( arrayLayer_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ImageSubresource( ImageSubresource const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ImageSubresource( VkImageSubresource const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ImageSubresource & operator=( VkImageSubresource const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageSubresource const *>( &rhs );
- return *this;
- }
-
- ImageSubresource & operator=( ImageSubresource const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ImageSubresource ) );
- return *this;
- }
-
- ImageSubresource & setAspectMask( VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask_ ) VULKAN_HPP_NOEXCEPT
- {
- aspectMask = aspectMask_;
- return *this;
- }
-
- ImageSubresource & setMipLevel( uint32_t mipLevel_ ) VULKAN_HPP_NOEXCEPT
- {
- mipLevel = mipLevel_;
- return *this;
- }
-
- ImageSubresource & setArrayLayer( uint32_t arrayLayer_ ) VULKAN_HPP_NOEXCEPT
- {
- arrayLayer = arrayLayer_;
- return *this;
- }
-
-
- operator VkImageSubresource const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkImageSubresource*>( this );
- }
-
- operator VkImageSubresource &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkImageSubresource*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ImageSubresource const& ) const = default;
-#else
- bool operator==( ImageSubresource const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( aspectMask == rhs.aspectMask )
- && ( mipLevel == rhs.mipLevel )
- && ( arrayLayer == rhs.arrayLayer );
- }
-
- bool operator!=( ImageSubresource const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask = {};
- uint32_t mipLevel = {};
- uint32_t arrayLayer = {};
-
- };
- static_assert( sizeof( ImageSubresource ) == sizeof( VkImageSubresource ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ImageSubresource>::value, "struct wrapper is not a standard layout!" );
-
- struct Offset3D
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR Offset3D(int32_t x_ = {}, int32_t y_ = {}, int32_t z_ = {}) VULKAN_HPP_NOEXCEPT
- : x( x_ ), y( y_ ), z( z_ )
- {}
-
- VULKAN_HPP_CONSTEXPR Offset3D( Offset3D const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- Offset3D( VkOffset3D const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
- explicit Offset3D( Offset2D const& offset2D, int32_t z_ = {} )
- : x( offset2D.x )
- , y( offset2D.y )
- , z( z_ )
- {}
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- Offset3D & operator=( VkOffset3D const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::Offset3D const *>( &rhs );
- return *this;
- }
-
- Offset3D & operator=( Offset3D const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( Offset3D ) );
- return *this;
- }
-
- Offset3D & setX( int32_t x_ ) VULKAN_HPP_NOEXCEPT
- {
- x = x_;
- return *this;
- }
-
- Offset3D & setY( int32_t y_ ) VULKAN_HPP_NOEXCEPT
- {
- y = y_;
- return *this;
- }
-
- Offset3D & setZ( int32_t z_ ) VULKAN_HPP_NOEXCEPT
- {
- z = z_;
- return *this;
- }
-
-
- operator VkOffset3D const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkOffset3D*>( this );
- }
-
- operator VkOffset3D &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkOffset3D*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( Offset3D const& ) const = default;
-#else
- bool operator==( Offset3D const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( x == rhs.x )
- && ( y == rhs.y )
- && ( z == rhs.z );
- }
-
- bool operator!=( Offset3D const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- int32_t x = {};
- int32_t y = {};
- int32_t z = {};
-
- };
- static_assert( sizeof( Offset3D ) == sizeof( VkOffset3D ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<Offset3D>::value, "struct wrapper is not a standard layout!" );
-
- struct Extent3D
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR Extent3D(uint32_t width_ = {}, uint32_t height_ = {}, uint32_t depth_ = {}) VULKAN_HPP_NOEXCEPT
- : width( width_ ), height( height_ ), depth( depth_ )
- {}
-
- VULKAN_HPP_CONSTEXPR Extent3D( Extent3D const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- Extent3D( VkExtent3D const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
- explicit Extent3D( Extent2D const& extent2D, uint32_t depth_ = {} )
- : width( extent2D.width )
- , height( extent2D.height )
- , depth( depth_ )
- {}
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- Extent3D & operator=( VkExtent3D const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::Extent3D const *>( &rhs );
- return *this;
- }
-
- Extent3D & operator=( Extent3D const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( Extent3D ) );
- return *this;
- }
-
- Extent3D & setWidth( uint32_t width_ ) VULKAN_HPP_NOEXCEPT
- {
- width = width_;
- return *this;
- }
-
- Extent3D & setHeight( uint32_t height_ ) VULKAN_HPP_NOEXCEPT
- {
- height = height_;
- return *this;
- }
-
- Extent3D & setDepth( uint32_t depth_ ) VULKAN_HPP_NOEXCEPT
- {
- depth = depth_;
- return *this;
- }
-
-
- operator VkExtent3D const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkExtent3D*>( this );
- }
-
- operator VkExtent3D &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkExtent3D*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( Extent3D const& ) const = default;
-#else
- bool operator==( Extent3D const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( width == rhs.width )
- && ( height == rhs.height )
- && ( depth == rhs.depth );
- }
-
- bool operator!=( Extent3D const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- uint32_t width = {};
- uint32_t height = {};
- uint32_t depth = {};
-
- };
- static_assert( sizeof( Extent3D ) == sizeof( VkExtent3D ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<Extent3D>::value, "struct wrapper is not a standard layout!" );
-
- struct SparseImageMemoryBind
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR SparseImageMemoryBind(VULKAN_HPP_NAMESPACE::ImageSubresource subresource_ = {}, VULKAN_HPP_NAMESPACE::Offset3D offset_ = {}, VULKAN_HPP_NAMESPACE::Extent3D extent_ = {}, VULKAN_HPP_NAMESPACE::DeviceMemory memory_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset_ = {}, VULKAN_HPP_NAMESPACE::SparseMemoryBindFlags flags_ = {}) VULKAN_HPP_NOEXCEPT
- : subresource( subresource_ ), offset( offset_ ), extent( extent_ ), memory( memory_ ), memoryOffset( memoryOffset_ ), flags( flags_ )
- {}
-
- VULKAN_HPP_CONSTEXPR SparseImageMemoryBind( SparseImageMemoryBind const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- SparseImageMemoryBind( VkSparseImageMemoryBind const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- SparseImageMemoryBind & operator=( VkSparseImageMemoryBind const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SparseImageMemoryBind const *>( &rhs );
- return *this;
- }
-
- SparseImageMemoryBind & operator=( SparseImageMemoryBind const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( SparseImageMemoryBind ) );
- return *this;
- }
-
- SparseImageMemoryBind & setSubresource( VULKAN_HPP_NAMESPACE::ImageSubresource const & subresource_ ) VULKAN_HPP_NOEXCEPT
- {
- subresource = subresource_;
- return *this;
- }
-
- SparseImageMemoryBind & setOffset( VULKAN_HPP_NAMESPACE::Offset3D const & offset_ ) VULKAN_HPP_NOEXCEPT
- {
- offset = offset_;
- return *this;
- }
-
- SparseImageMemoryBind & setExtent( VULKAN_HPP_NAMESPACE::Extent3D const & extent_ ) VULKAN_HPP_NOEXCEPT
- {
- extent = extent_;
- return *this;
- }
-
- SparseImageMemoryBind & setMemory( VULKAN_HPP_NAMESPACE::DeviceMemory memory_ ) VULKAN_HPP_NOEXCEPT
- {
- memory = memory_;
- return *this;
- }
-
- SparseImageMemoryBind & setMemoryOffset( VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset_ ) VULKAN_HPP_NOEXCEPT
- {
- memoryOffset = memoryOffset_;
- return *this;
- }
-
- SparseImageMemoryBind & setFlags( VULKAN_HPP_NAMESPACE::SparseMemoryBindFlags flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
-
- operator VkSparseImageMemoryBind const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkSparseImageMemoryBind*>( this );
- }
-
- operator VkSparseImageMemoryBind &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkSparseImageMemoryBind*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( SparseImageMemoryBind const& ) const = default;
-#else
- bool operator==( SparseImageMemoryBind const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( subresource == rhs.subresource )
- && ( offset == rhs.offset )
- && ( extent == rhs.extent )
- && ( memory == rhs.memory )
- && ( memoryOffset == rhs.memoryOffset )
- && ( flags == rhs.flags );
- }
-
- bool operator!=( SparseImageMemoryBind const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::ImageSubresource subresource = {};
- VULKAN_HPP_NAMESPACE::Offset3D offset = {};
- VULKAN_HPP_NAMESPACE::Extent3D extent = {};
- VULKAN_HPP_NAMESPACE::DeviceMemory memory = {};
- VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset = {};
- VULKAN_HPP_NAMESPACE::SparseMemoryBindFlags flags = {};
-
- };
- static_assert( sizeof( SparseImageMemoryBind ) == sizeof( VkSparseImageMemoryBind ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<SparseImageMemoryBind>::value, "struct wrapper is not a standard layout!" );
-
- struct SparseImageMemoryBindInfo
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR SparseImageMemoryBindInfo(VULKAN_HPP_NAMESPACE::Image image_ = {}, uint32_t bindCount_ = {}, const VULKAN_HPP_NAMESPACE::SparseImageMemoryBind* pBinds_ = {}) VULKAN_HPP_NOEXCEPT
- : image( image_ ), bindCount( bindCount_ ), pBinds( pBinds_ )
- {}
-
- VULKAN_HPP_CONSTEXPR SparseImageMemoryBindInfo( SparseImageMemoryBindInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- SparseImageMemoryBindInfo( VkSparseImageMemoryBindInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- SparseImageMemoryBindInfo( VULKAN_HPP_NAMESPACE::Image image_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SparseImageMemoryBind> const & binds_ )
- : image( image_ ), bindCount( static_cast<uint32_t>( binds_.size() ) ), pBinds( binds_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- SparseImageMemoryBindInfo & operator=( VkSparseImageMemoryBindInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SparseImageMemoryBindInfo const *>( &rhs );
- return *this;
- }
-
- SparseImageMemoryBindInfo & operator=( SparseImageMemoryBindInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( SparseImageMemoryBindInfo ) );
- return *this;
- }
-
- SparseImageMemoryBindInfo & setImage( VULKAN_HPP_NAMESPACE::Image image_ ) VULKAN_HPP_NOEXCEPT
- {
- image = image_;
- return *this;
- }
-
- SparseImageMemoryBindInfo & setBindCount( uint32_t bindCount_ ) VULKAN_HPP_NOEXCEPT
- {
- bindCount = bindCount_;
- return *this;
- }
-
- SparseImageMemoryBindInfo & setPBinds( const VULKAN_HPP_NAMESPACE::SparseImageMemoryBind* pBinds_ ) VULKAN_HPP_NOEXCEPT
- {
- pBinds = pBinds_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- SparseImageMemoryBindInfo & setBinds( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SparseImageMemoryBind> const & binds_ ) VULKAN_HPP_NOEXCEPT
- {
- bindCount = static_cast<uint32_t>( binds_.size() );
- pBinds = binds_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkSparseImageMemoryBindInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkSparseImageMemoryBindInfo*>( this );
- }
-
- operator VkSparseImageMemoryBindInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkSparseImageMemoryBindInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( SparseImageMemoryBindInfo const& ) const = default;
-#else
- bool operator==( SparseImageMemoryBindInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( image == rhs.image )
- && ( bindCount == rhs.bindCount )
- && ( pBinds == rhs.pBinds );
- }
-
- bool operator!=( SparseImageMemoryBindInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::Image image = {};
- uint32_t bindCount = {};
- const VULKAN_HPP_NAMESPACE::SparseImageMemoryBind* pBinds = {};
-
+ value = true
+ };
};
- static_assert( sizeof( SparseImageMemoryBindInfo ) == sizeof( VkSparseImageMemoryBindInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<SparseImageMemoryBindInfo>::value, "struct wrapper is not a standard layout!" );
-
- struct BindSparseInfo
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBindSparseInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR BindSparseInfo(uint32_t waitSemaphoreCount_ = {}, const VULKAN_HPP_NAMESPACE::Semaphore* pWaitSemaphores_ = {}, uint32_t bufferBindCount_ = {}, const VULKAN_HPP_NAMESPACE::SparseBufferMemoryBindInfo* pBufferBinds_ = {}, uint32_t imageOpaqueBindCount_ = {}, const VULKAN_HPP_NAMESPACE::SparseImageOpaqueMemoryBindInfo* pImageOpaqueBinds_ = {}, uint32_t imageBindCount_ = {}, const VULKAN_HPP_NAMESPACE::SparseImageMemoryBindInfo* pImageBinds_ = {}, uint32_t signalSemaphoreCount_ = {}, const VULKAN_HPP_NAMESPACE::Semaphore* pSignalSemaphores_ = {}) VULKAN_HPP_NOEXCEPT
- : waitSemaphoreCount( waitSemaphoreCount_ ), pWaitSemaphores( pWaitSemaphores_ ), bufferBindCount( bufferBindCount_ ), pBufferBinds( pBufferBinds_ ), imageOpaqueBindCount( imageOpaqueBindCount_ ), pImageOpaqueBinds( pImageOpaqueBinds_ ), imageBindCount( imageBindCount_ ), pImageBinds( pImageBinds_ ), signalSemaphoreCount( signalSemaphoreCount_ ), pSignalSemaphores( pSignalSemaphores_ )
- {}
-
- VULKAN_HPP_CONSTEXPR BindSparseInfo( BindSparseInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- BindSparseInfo( VkBindSparseInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- BindSparseInfo( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Semaphore> const & waitSemaphores_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SparseBufferMemoryBindInfo> const & bufferBinds_ = {}, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SparseImageOpaqueMemoryBindInfo> const & imageOpaqueBinds_ = {}, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SparseImageMemoryBindInfo> const & imageBinds_ = {}, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Semaphore> const & signalSemaphores_ = {} )
- : waitSemaphoreCount( static_cast<uint32_t>( waitSemaphores_.size() ) ), pWaitSemaphores( waitSemaphores_.data() ), bufferBindCount( static_cast<uint32_t>( bufferBinds_.size() ) ), pBufferBinds( bufferBinds_.data() ), imageOpaqueBindCount( static_cast<uint32_t>( imageOpaqueBinds_.size() ) ), pImageOpaqueBinds( imageOpaqueBinds_.data() ), imageBindCount( static_cast<uint32_t>( imageBinds_.size() ) ), pImageBinds( imageBinds_.data() ), signalSemaphoreCount( static_cast<uint32_t>( signalSemaphores_.size() ) ), pSignalSemaphores( signalSemaphores_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- BindSparseInfo & operator=( VkBindSparseInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BindSparseInfo const *>( &rhs );
- return *this;
- }
-
- BindSparseInfo & operator=( BindSparseInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( BindSparseInfo ) );
- return *this;
- }
-
- BindSparseInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- BindSparseInfo & setWaitSemaphoreCount( uint32_t waitSemaphoreCount_ ) VULKAN_HPP_NOEXCEPT
- {
- waitSemaphoreCount = waitSemaphoreCount_;
- return *this;
- }
-
- BindSparseInfo & setPWaitSemaphores( const VULKAN_HPP_NAMESPACE::Semaphore* pWaitSemaphores_ ) VULKAN_HPP_NOEXCEPT
- {
- pWaitSemaphores = pWaitSemaphores_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- BindSparseInfo & setWaitSemaphores( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Semaphore> const & waitSemaphores_ ) VULKAN_HPP_NOEXCEPT
- {
- waitSemaphoreCount = static_cast<uint32_t>( waitSemaphores_.size() );
- pWaitSemaphores = waitSemaphores_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- BindSparseInfo & setBufferBindCount( uint32_t bufferBindCount_ ) VULKAN_HPP_NOEXCEPT
- {
- bufferBindCount = bufferBindCount_;
- return *this;
- }
-
- BindSparseInfo & setPBufferBinds( const VULKAN_HPP_NAMESPACE::SparseBufferMemoryBindInfo* pBufferBinds_ ) VULKAN_HPP_NOEXCEPT
- {
- pBufferBinds = pBufferBinds_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- BindSparseInfo & setBufferBinds( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SparseBufferMemoryBindInfo> const & bufferBinds_ ) VULKAN_HPP_NOEXCEPT
- {
- bufferBindCount = static_cast<uint32_t>( bufferBinds_.size() );
- pBufferBinds = bufferBinds_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- BindSparseInfo & setImageOpaqueBindCount( uint32_t imageOpaqueBindCount_ ) VULKAN_HPP_NOEXCEPT
- {
- imageOpaqueBindCount = imageOpaqueBindCount_;
- return *this;
- }
-
- BindSparseInfo & setPImageOpaqueBinds( const VULKAN_HPP_NAMESPACE::SparseImageOpaqueMemoryBindInfo* pImageOpaqueBinds_ ) VULKAN_HPP_NOEXCEPT
- {
- pImageOpaqueBinds = pImageOpaqueBinds_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- BindSparseInfo & setImageOpaqueBinds( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SparseImageOpaqueMemoryBindInfo> const & imageOpaqueBinds_ ) VULKAN_HPP_NOEXCEPT
- {
- imageOpaqueBindCount = static_cast<uint32_t>( imageOpaqueBinds_.size() );
- pImageOpaqueBinds = imageOpaqueBinds_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- BindSparseInfo & setImageBindCount( uint32_t imageBindCount_ ) VULKAN_HPP_NOEXCEPT
- {
- imageBindCount = imageBindCount_;
- return *this;
- }
-
- BindSparseInfo & setPImageBinds( const VULKAN_HPP_NAMESPACE::SparseImageMemoryBindInfo* pImageBinds_ ) VULKAN_HPP_NOEXCEPT
- {
- pImageBinds = pImageBinds_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- BindSparseInfo & setImageBinds( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SparseImageMemoryBindInfo> const & imageBinds_ ) VULKAN_HPP_NOEXCEPT
- {
- imageBindCount = static_cast<uint32_t>( imageBinds_.size() );
- pImageBinds = imageBinds_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- BindSparseInfo & setSignalSemaphoreCount( uint32_t signalSemaphoreCount_ ) VULKAN_HPP_NOEXCEPT
- {
- signalSemaphoreCount = signalSemaphoreCount_;
- return *this;
- }
-
- BindSparseInfo & setPSignalSemaphores( const VULKAN_HPP_NAMESPACE::Semaphore* pSignalSemaphores_ ) VULKAN_HPP_NOEXCEPT
- {
- pSignalSemaphores = pSignalSemaphores_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- BindSparseInfo & setSignalSemaphores( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Semaphore> const & signalSemaphores_ ) VULKAN_HPP_NOEXCEPT
- {
- signalSemaphoreCount = static_cast<uint32_t>( signalSemaphores_.size() );
- pSignalSemaphores = signalSemaphores_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkBindSparseInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkBindSparseInfo*>( this );
- }
-
- operator VkBindSparseInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkBindSparseInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( BindSparseInfo const& ) const = default;
-#else
- bool operator==( BindSparseInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( waitSemaphoreCount == rhs.waitSemaphoreCount )
- && ( pWaitSemaphores == rhs.pWaitSemaphores )
- && ( bufferBindCount == rhs.bufferBindCount )
- && ( pBufferBinds == rhs.pBufferBinds )
- && ( imageOpaqueBindCount == rhs.imageOpaqueBindCount )
- && ( pImageOpaqueBinds == rhs.pImageOpaqueBinds )
- && ( imageBindCount == rhs.imageBindCount )
- && ( pImageBinds == rhs.pImageBinds )
- && ( signalSemaphoreCount == rhs.signalSemaphoreCount )
- && ( pSignalSemaphores == rhs.pSignalSemaphores );
- }
-
- bool operator!=( BindSparseInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBindSparseInfo;
- const void* pNext = {};
- uint32_t waitSemaphoreCount = {};
- const VULKAN_HPP_NAMESPACE::Semaphore* pWaitSemaphores = {};
- uint32_t bufferBindCount = {};
- const VULKAN_HPP_NAMESPACE::SparseBufferMemoryBindInfo* pBufferBinds = {};
- uint32_t imageOpaqueBindCount = {};
- const VULKAN_HPP_NAMESPACE::SparseImageOpaqueMemoryBindInfo* pImageOpaqueBinds = {};
- uint32_t imageBindCount = {};
- const VULKAN_HPP_NAMESPACE::SparseImageMemoryBindInfo* pImageBinds = {};
- uint32_t signalSemaphoreCount = {};
- const VULKAN_HPP_NAMESPACE::Semaphore* pSignalSemaphores = {};
-
- };
- static_assert( sizeof( BindSparseInfo ) == sizeof( VkBindSparseInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<BindSparseInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eBindSparseInfo>
- {
- using Type = BindSparseInfo;
- };
-
- struct BindVertexBufferIndirectCommandNV
+ struct StructExtends<BindImageMemoryDeviceGroupInfo, BindImageMemoryInfo>
{
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR BindVertexBufferIndirectCommandNV(VULKAN_HPP_NAMESPACE::DeviceAddress bufferAddress_ = {}, uint32_t size_ = {}, uint32_t stride_ = {}) VULKAN_HPP_NOEXCEPT
- : bufferAddress( bufferAddress_ ), size( size_ ), stride( stride_ )
- {}
-
- VULKAN_HPP_CONSTEXPR BindVertexBufferIndirectCommandNV( BindVertexBufferIndirectCommandNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- BindVertexBufferIndirectCommandNV( VkBindVertexBufferIndirectCommandNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- BindVertexBufferIndirectCommandNV & operator=( VkBindVertexBufferIndirectCommandNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BindVertexBufferIndirectCommandNV const *>( &rhs );
- return *this;
- }
-
- BindVertexBufferIndirectCommandNV & operator=( BindVertexBufferIndirectCommandNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( BindVertexBufferIndirectCommandNV ) );
- return *this;
- }
-
- BindVertexBufferIndirectCommandNV & setBufferAddress( VULKAN_HPP_NAMESPACE::DeviceAddress bufferAddress_ ) VULKAN_HPP_NOEXCEPT
- {
- bufferAddress = bufferAddress_;
- return *this;
- }
-
- BindVertexBufferIndirectCommandNV & setSize( uint32_t size_ ) VULKAN_HPP_NOEXCEPT
- {
- size = size_;
- return *this;
- }
-
- BindVertexBufferIndirectCommandNV & setStride( uint32_t stride_ ) VULKAN_HPP_NOEXCEPT
- {
- stride = stride_;
- return *this;
- }
-
-
- operator VkBindVertexBufferIndirectCommandNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkBindVertexBufferIndirectCommandNV*>( this );
- }
-
- operator VkBindVertexBufferIndirectCommandNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkBindVertexBufferIndirectCommandNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( BindVertexBufferIndirectCommandNV const& ) const = default;
-#else
- bool operator==( BindVertexBufferIndirectCommandNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( bufferAddress == rhs.bufferAddress )
- && ( size == rhs.size )
- && ( stride == rhs.stride );
- }
-
- bool operator!=( BindVertexBufferIndirectCommandNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::DeviceAddress bufferAddress = {};
- uint32_t size = {};
- uint32_t stride = {};
-
- };
- static_assert( sizeof( BindVertexBufferIndirectCommandNV ) == sizeof( VkBindVertexBufferIndirectCommandNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<BindVertexBufferIndirectCommandNV>::value, "struct wrapper is not a standard layout!" );
-
- struct ImageSubresourceLayers
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ImageSubresourceLayers(VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask_ = {}, uint32_t mipLevel_ = {}, uint32_t baseArrayLayer_ = {}, uint32_t layerCount_ = {}) VULKAN_HPP_NOEXCEPT
- : aspectMask( aspectMask_ ), mipLevel( mipLevel_ ), baseArrayLayer( baseArrayLayer_ ), layerCount( layerCount_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ImageSubresourceLayers( ImageSubresourceLayers const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ImageSubresourceLayers( VkImageSubresourceLayers const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ImageSubresourceLayers & operator=( VkImageSubresourceLayers const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const *>( &rhs );
- return *this;
- }
-
- ImageSubresourceLayers & operator=( ImageSubresourceLayers const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ImageSubresourceLayers ) );
- return *this;
- }
-
- ImageSubresourceLayers & setAspectMask( VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask_ ) VULKAN_HPP_NOEXCEPT
- {
- aspectMask = aspectMask_;
- return *this;
- }
-
- ImageSubresourceLayers & setMipLevel( uint32_t mipLevel_ ) VULKAN_HPP_NOEXCEPT
- {
- mipLevel = mipLevel_;
- return *this;
- }
-
- ImageSubresourceLayers & setBaseArrayLayer( uint32_t baseArrayLayer_ ) VULKAN_HPP_NOEXCEPT
- {
- baseArrayLayer = baseArrayLayer_;
- return *this;
- }
-
- ImageSubresourceLayers & setLayerCount( uint32_t layerCount_ ) VULKAN_HPP_NOEXCEPT
- {
- layerCount = layerCount_;
- return *this;
- }
-
-
- operator VkImageSubresourceLayers const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkImageSubresourceLayers*>( this );
- }
-
- operator VkImageSubresourceLayers &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkImageSubresourceLayers*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ImageSubresourceLayers const& ) const = default;
-#else
- bool operator==( ImageSubresourceLayers const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( aspectMask == rhs.aspectMask )
- && ( mipLevel == rhs.mipLevel )
- && ( baseArrayLayer == rhs.baseArrayLayer )
- && ( layerCount == rhs.layerCount );
- }
-
- bool operator!=( ImageSubresourceLayers const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask = {};
- uint32_t mipLevel = {};
- uint32_t baseArrayLayer = {};
- uint32_t layerCount = {};
-
- };
- static_assert( sizeof( ImageSubresourceLayers ) == sizeof( VkImageSubresourceLayers ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ImageSubresourceLayers>::value, "struct wrapper is not a standard layout!" );
-
- struct ImageBlit2KHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImageBlit2KHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR_14 ImageBlit2KHR(VULKAN_HPP_NAMESPACE::ImageSubresourceLayers srcSubresource_ = {}, std::array<VULKAN_HPP_NAMESPACE::Offset3D,2> const& srcOffsets_ = {}, VULKAN_HPP_NAMESPACE::ImageSubresourceLayers dstSubresource_ = {}, std::array<VULKAN_HPP_NAMESPACE::Offset3D,2> const& dstOffsets_ = {}) VULKAN_HPP_NOEXCEPT
- : srcSubresource( srcSubresource_ ), srcOffsets( srcOffsets_ ), dstSubresource( dstSubresource_ ), dstOffsets( dstOffsets_ )
- {}
-
- VULKAN_HPP_CONSTEXPR_14 ImageBlit2KHR( ImageBlit2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ImageBlit2KHR( VkImageBlit2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ImageBlit2KHR & operator=( VkImageBlit2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageBlit2KHR const *>( &rhs );
- return *this;
- }
-
- ImageBlit2KHR & operator=( ImageBlit2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ImageBlit2KHR ) );
- return *this;
- }
-
- ImageBlit2KHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- ImageBlit2KHR & setSrcSubresource( VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const & srcSubresource_ ) VULKAN_HPP_NOEXCEPT
- {
- srcSubresource = srcSubresource_;
- return *this;
- }
-
- ImageBlit2KHR & setSrcOffsets( std::array<VULKAN_HPP_NAMESPACE::Offset3D,2> const & srcOffsets_ ) VULKAN_HPP_NOEXCEPT
- {
- srcOffsets = srcOffsets_;
- return *this;
- }
-
- ImageBlit2KHR & setDstSubresource( VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const & dstSubresource_ ) VULKAN_HPP_NOEXCEPT
- {
- dstSubresource = dstSubresource_;
- return *this;
- }
-
- ImageBlit2KHR & setDstOffsets( std::array<VULKAN_HPP_NAMESPACE::Offset3D,2> const & dstOffsets_ ) VULKAN_HPP_NOEXCEPT
- {
- dstOffsets = dstOffsets_;
- return *this;
- }
-
-
- operator VkImageBlit2KHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkImageBlit2KHR*>( this );
- }
-
- operator VkImageBlit2KHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkImageBlit2KHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ImageBlit2KHR const& ) const = default;
-#else
- bool operator==( ImageBlit2KHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( srcSubresource == rhs.srcSubresource )
- && ( srcOffsets == rhs.srcOffsets )
- && ( dstSubresource == rhs.dstSubresource )
- && ( dstOffsets == rhs.dstOffsets );
- }
-
- bool operator!=( ImageBlit2KHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageBlit2KHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::ImageSubresourceLayers srcSubresource = {};
- VULKAN_HPP_NAMESPACE::ArrayWrapper1D<VULKAN_HPP_NAMESPACE::Offset3D, 2> srcOffsets = {};
- VULKAN_HPP_NAMESPACE::ImageSubresourceLayers dstSubresource = {};
- VULKAN_HPP_NAMESPACE::ArrayWrapper1D<VULKAN_HPP_NAMESPACE::Offset3D, 2> dstOffsets = {};
-
+ value = true
+ };
};
- static_assert( sizeof( ImageBlit2KHR ) == sizeof( VkImageBlit2KHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ImageBlit2KHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eImageBlit2KHR>
+ struct StructExtends<BindImageMemorySwapchainInfoKHR, BindImageMemoryInfo>
{
- using Type = ImageBlit2KHR;
- };
-
- struct BlitImageInfo2KHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBlitImageInfo2KHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR_14 BlitImageInfo2KHR(VULKAN_HPP_NAMESPACE::Image srcImage_ = {}, VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined, VULKAN_HPP_NAMESPACE::Image dstImage_ = {}, VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined, uint32_t regionCount_ = {}, const VULKAN_HPP_NAMESPACE::ImageBlit2KHR* pRegions_ = {}, VULKAN_HPP_NAMESPACE::Filter filter_ = VULKAN_HPP_NAMESPACE::Filter::eNearest) VULKAN_HPP_NOEXCEPT
- : srcImage( srcImage_ ), srcImageLayout( srcImageLayout_ ), dstImage( dstImage_ ), dstImageLayout( dstImageLayout_ ), regionCount( regionCount_ ), pRegions( pRegions_ ), filter( filter_ )
- {}
-
- VULKAN_HPP_CONSTEXPR_14 BlitImageInfo2KHR( BlitImageInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- BlitImageInfo2KHR( VkBlitImageInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- BlitImageInfo2KHR( VULKAN_HPP_NAMESPACE::Image srcImage_, VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout_, VULKAN_HPP_NAMESPACE::Image dstImage_, VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ImageBlit2KHR> const & regions_, VULKAN_HPP_NAMESPACE::Filter filter_ = VULKAN_HPP_NAMESPACE::Filter::eNearest )
- : srcImage( srcImage_ ), srcImageLayout( srcImageLayout_ ), dstImage( dstImage_ ), dstImageLayout( dstImageLayout_ ), regionCount( static_cast<uint32_t>( regions_.size() ) ), pRegions( regions_.data() ), filter( filter_ )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- BlitImageInfo2KHR & operator=( VkBlitImageInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BlitImageInfo2KHR const *>( &rhs );
- return *this;
- }
-
- BlitImageInfo2KHR & operator=( BlitImageInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( BlitImageInfo2KHR ) );
- return *this;
- }
-
- BlitImageInfo2KHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- BlitImageInfo2KHR & setSrcImage( VULKAN_HPP_NAMESPACE::Image srcImage_ ) VULKAN_HPP_NOEXCEPT
- {
- srcImage = srcImage_;
- return *this;
- }
-
- BlitImageInfo2KHR & setSrcImageLayout( VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout_ ) VULKAN_HPP_NOEXCEPT
- {
- srcImageLayout = srcImageLayout_;
- return *this;
- }
-
- BlitImageInfo2KHR & setDstImage( VULKAN_HPP_NAMESPACE::Image dstImage_ ) VULKAN_HPP_NOEXCEPT
- {
- dstImage = dstImage_;
- return *this;
- }
-
- BlitImageInfo2KHR & setDstImageLayout( VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout_ ) VULKAN_HPP_NOEXCEPT
- {
- dstImageLayout = dstImageLayout_;
- return *this;
- }
-
- BlitImageInfo2KHR & setRegionCount( uint32_t regionCount_ ) VULKAN_HPP_NOEXCEPT
- {
- regionCount = regionCount_;
- return *this;
- }
-
- BlitImageInfo2KHR & setPRegions( const VULKAN_HPP_NAMESPACE::ImageBlit2KHR* pRegions_ ) VULKAN_HPP_NOEXCEPT
- {
- pRegions = pRegions_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- BlitImageInfo2KHR & setRegions( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ImageBlit2KHR> const & regions_ ) VULKAN_HPP_NOEXCEPT
- {
- regionCount = static_cast<uint32_t>( regions_.size() );
- pRegions = regions_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- BlitImageInfo2KHR & setFilter( VULKAN_HPP_NAMESPACE::Filter filter_ ) VULKAN_HPP_NOEXCEPT
- {
- filter = filter_;
- return *this;
- }
-
-
- operator VkBlitImageInfo2KHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkBlitImageInfo2KHR*>( this );
- }
-
- operator VkBlitImageInfo2KHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkBlitImageInfo2KHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( BlitImageInfo2KHR const& ) const = default;
-#else
- bool operator==( BlitImageInfo2KHR const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( srcImage == rhs.srcImage )
- && ( srcImageLayout == rhs.srcImageLayout )
- && ( dstImage == rhs.dstImage )
- && ( dstImageLayout == rhs.dstImageLayout )
- && ( regionCount == rhs.regionCount )
- && ( pRegions == rhs.pRegions )
- && ( filter == rhs.filter );
- }
-
- bool operator!=( BlitImageInfo2KHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBlitImageInfo2KHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::Image srcImage = {};
- VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
- VULKAN_HPP_NAMESPACE::Image dstImage = {};
- VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
- uint32_t regionCount = {};
- const VULKAN_HPP_NAMESPACE::ImageBlit2KHR* pRegions = {};
- VULKAN_HPP_NAMESPACE::Filter filter = VULKAN_HPP_NAMESPACE::Filter::eNearest;
-
+ value = true
+ };
};
- static_assert( sizeof( BlitImageInfo2KHR ) == sizeof( VkBlitImageInfo2KHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<BlitImageInfo2KHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eBlitImageInfo2KHR>
- {
- using Type = BlitImageInfo2KHR;
- };
-
- struct BufferCopy
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR BufferCopy(VULKAN_HPP_NAMESPACE::DeviceSize srcOffset_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize dstOffset_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize size_ = {}) VULKAN_HPP_NOEXCEPT
- : srcOffset( srcOffset_ ), dstOffset( dstOffset_ ), size( size_ )
- {}
-
- VULKAN_HPP_CONSTEXPR BufferCopy( BufferCopy const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- BufferCopy( VkBufferCopy const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- BufferCopy & operator=( VkBufferCopy const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BufferCopy const *>( &rhs );
- return *this;
- }
-
- BufferCopy & operator=( BufferCopy const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( BufferCopy ) );
- return *this;
- }
-
- BufferCopy & setSrcOffset( VULKAN_HPP_NAMESPACE::DeviceSize srcOffset_ ) VULKAN_HPP_NOEXCEPT
- {
- srcOffset = srcOffset_;
- return *this;
- }
-
- BufferCopy & setDstOffset( VULKAN_HPP_NAMESPACE::DeviceSize dstOffset_ ) VULKAN_HPP_NOEXCEPT
- {
- dstOffset = dstOffset_;
- return *this;
- }
-
- BufferCopy & setSize( VULKAN_HPP_NAMESPACE::DeviceSize size_ ) VULKAN_HPP_NOEXCEPT
- {
- size = size_;
- return *this;
- }
-
-
- operator VkBufferCopy const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkBufferCopy*>( this );
- }
-
- operator VkBufferCopy &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkBufferCopy*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( BufferCopy const& ) const = default;
-#else
- bool operator==( BufferCopy const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( srcOffset == rhs.srcOffset )
- && ( dstOffset == rhs.dstOffset )
- && ( size == rhs.size );
- }
-
- bool operator!=( BufferCopy const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::DeviceSize srcOffset = {};
- VULKAN_HPP_NAMESPACE::DeviceSize dstOffset = {};
- VULKAN_HPP_NAMESPACE::DeviceSize size = {};
-
- };
- static_assert( sizeof( BufferCopy ) == sizeof( VkBufferCopy ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<BufferCopy>::value, "struct wrapper is not a standard layout!" );
-
- struct BufferCopy2KHR
+ struct StructExtends<BindImagePlaneMemoryInfo, BindImageMemoryInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBufferCopy2KHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR BufferCopy2KHR(VULKAN_HPP_NAMESPACE::DeviceSize srcOffset_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize dstOffset_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize size_ = {}) VULKAN_HPP_NOEXCEPT
- : srcOffset( srcOffset_ ), dstOffset( dstOffset_ ), size( size_ )
- {}
-
- VULKAN_HPP_CONSTEXPR BufferCopy2KHR( BufferCopy2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- BufferCopy2KHR( VkBufferCopy2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- BufferCopy2KHR & operator=( VkBufferCopy2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BufferCopy2KHR const *>( &rhs );
- return *this;
- }
-
- BufferCopy2KHR & operator=( BufferCopy2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( BufferCopy2KHR ) );
- return *this;
- }
-
- BufferCopy2KHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- BufferCopy2KHR & setSrcOffset( VULKAN_HPP_NAMESPACE::DeviceSize srcOffset_ ) VULKAN_HPP_NOEXCEPT
- {
- srcOffset = srcOffset_;
- return *this;
- }
-
- BufferCopy2KHR & setDstOffset( VULKAN_HPP_NAMESPACE::DeviceSize dstOffset_ ) VULKAN_HPP_NOEXCEPT
- {
- dstOffset = dstOffset_;
- return *this;
- }
-
- BufferCopy2KHR & setSize( VULKAN_HPP_NAMESPACE::DeviceSize size_ ) VULKAN_HPP_NOEXCEPT
- {
- size = size_;
- return *this;
- }
-
-
- operator VkBufferCopy2KHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkBufferCopy2KHR*>( this );
- }
-
- operator VkBufferCopy2KHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkBufferCopy2KHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( BufferCopy2KHR const& ) const = default;
-#else
- bool operator==( BufferCopy2KHR const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( srcOffset == rhs.srcOffset )
- && ( dstOffset == rhs.dstOffset )
- && ( size == rhs.size );
- }
-
- bool operator!=( BufferCopy2KHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBufferCopy2KHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::DeviceSize srcOffset = {};
- VULKAN_HPP_NAMESPACE::DeviceSize dstOffset = {};
- VULKAN_HPP_NAMESPACE::DeviceSize size = {};
-
+ value = true
+ };
};
- static_assert( sizeof( BufferCopy2KHR ) == sizeof( VkBufferCopy2KHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<BufferCopy2KHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eBufferCopy2KHR>
+ struct StructExtends<BufferDeviceAddressCreateInfoEXT, BufferCreateInfo>
{
- using Type = BufferCopy2KHR;
- };
-
- struct BufferCreateInfo
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBufferCreateInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR BufferCreateInfo(VULKAN_HPP_NAMESPACE::BufferCreateFlags flags_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize size_ = {}, VULKAN_HPP_NAMESPACE::BufferUsageFlags usage_ = {}, VULKAN_HPP_NAMESPACE::SharingMode sharingMode_ = VULKAN_HPP_NAMESPACE::SharingMode::eExclusive, uint32_t queueFamilyIndexCount_ = {}, const uint32_t* pQueueFamilyIndices_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), size( size_ ), usage( usage_ ), sharingMode( sharingMode_ ), queueFamilyIndexCount( queueFamilyIndexCount_ ), pQueueFamilyIndices( pQueueFamilyIndices_ )
- {}
-
- VULKAN_HPP_CONSTEXPR BufferCreateInfo( BufferCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- BufferCreateInfo( VkBufferCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- BufferCreateInfo( VULKAN_HPP_NAMESPACE::BufferCreateFlags flags_, VULKAN_HPP_NAMESPACE::DeviceSize size_, VULKAN_HPP_NAMESPACE::BufferUsageFlags usage_, VULKAN_HPP_NAMESPACE::SharingMode sharingMode_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & queueFamilyIndices_ )
- : flags( flags_ ), size( size_ ), usage( usage_ ), sharingMode( sharingMode_ ), queueFamilyIndexCount( static_cast<uint32_t>( queueFamilyIndices_.size() ) ), pQueueFamilyIndices( queueFamilyIndices_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- BufferCreateInfo & operator=( VkBufferCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BufferCreateInfo const *>( &rhs );
- return *this;
- }
-
- BufferCreateInfo & operator=( BufferCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( BufferCreateInfo ) );
- return *this;
- }
-
- BufferCreateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- BufferCreateInfo & setFlags( VULKAN_HPP_NAMESPACE::BufferCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- BufferCreateInfo & setSize( VULKAN_HPP_NAMESPACE::DeviceSize size_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- size = size_;
- return *this;
- }
-
- BufferCreateInfo & setUsage( VULKAN_HPP_NAMESPACE::BufferUsageFlags usage_ ) VULKAN_HPP_NOEXCEPT
- {
- usage = usage_;
- return *this;
- }
-
- BufferCreateInfo & setSharingMode( VULKAN_HPP_NAMESPACE::SharingMode sharingMode_ ) VULKAN_HPP_NOEXCEPT
- {
- sharingMode = sharingMode_;
- return *this;
- }
-
- BufferCreateInfo & setQueueFamilyIndexCount( uint32_t queueFamilyIndexCount_ ) VULKAN_HPP_NOEXCEPT
- {
- queueFamilyIndexCount = queueFamilyIndexCount_;
- return *this;
- }
-
- BufferCreateInfo & setPQueueFamilyIndices( const uint32_t* pQueueFamilyIndices_ ) VULKAN_HPP_NOEXCEPT
- {
- pQueueFamilyIndices = pQueueFamilyIndices_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- BufferCreateInfo & setQueueFamilyIndices( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & queueFamilyIndices_ ) VULKAN_HPP_NOEXCEPT
- {
- queueFamilyIndexCount = static_cast<uint32_t>( queueFamilyIndices_.size() );
- pQueueFamilyIndices = queueFamilyIndices_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkBufferCreateInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkBufferCreateInfo*>( this );
- }
-
- operator VkBufferCreateInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkBufferCreateInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( BufferCreateInfo const& ) const = default;
-#else
- bool operator==( BufferCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( size == rhs.size )
- && ( usage == rhs.usage )
- && ( sharingMode == rhs.sharingMode )
- && ( queueFamilyIndexCount == rhs.queueFamilyIndexCount )
- && ( pQueueFamilyIndices == rhs.pQueueFamilyIndices );
- }
-
- bool operator!=( BufferCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBufferCreateInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::BufferCreateFlags flags = {};
- VULKAN_HPP_NAMESPACE::DeviceSize size = {};
- VULKAN_HPP_NAMESPACE::BufferUsageFlags usage = {};
- VULKAN_HPP_NAMESPACE::SharingMode sharingMode = VULKAN_HPP_NAMESPACE::SharingMode::eExclusive;
- uint32_t queueFamilyIndexCount = {};
- const uint32_t* pQueueFamilyIndices = {};
-
+ value = true
+ };
};
- static_assert( sizeof( BufferCreateInfo ) == sizeof( VkBufferCreateInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<BufferCreateInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eBufferCreateInfo>
- {
- using Type = BufferCreateInfo;
- };
-
- struct BufferDeviceAddressCreateInfoEXT
+ struct StructExtends<BufferOpaqueCaptureAddressCreateInfo, BufferCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBufferDeviceAddressCreateInfoEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR BufferDeviceAddressCreateInfoEXT(VULKAN_HPP_NAMESPACE::DeviceAddress deviceAddress_ = {}) VULKAN_HPP_NOEXCEPT
- : deviceAddress( deviceAddress_ )
- {}
-
- VULKAN_HPP_CONSTEXPR BufferDeviceAddressCreateInfoEXT( BufferDeviceAddressCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- BufferDeviceAddressCreateInfoEXT( VkBufferDeviceAddressCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- BufferDeviceAddressCreateInfoEXT & operator=( VkBufferDeviceAddressCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BufferDeviceAddressCreateInfoEXT const *>( &rhs );
- return *this;
- }
-
- BufferDeviceAddressCreateInfoEXT & operator=( BufferDeviceAddressCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( BufferDeviceAddressCreateInfoEXT ) );
- return *this;
- }
-
- BufferDeviceAddressCreateInfoEXT & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- BufferDeviceAddressCreateInfoEXT & setDeviceAddress( VULKAN_HPP_NAMESPACE::DeviceAddress deviceAddress_ ) VULKAN_HPP_NOEXCEPT
- {
- deviceAddress = deviceAddress_;
- return *this;
- }
-
-
- operator VkBufferDeviceAddressCreateInfoEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkBufferDeviceAddressCreateInfoEXT*>( this );
- }
-
- operator VkBufferDeviceAddressCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<VkBufferDeviceAddressCreateInfoEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( BufferDeviceAddressCreateInfoEXT const& ) const = default;
-#else
- bool operator==( BufferDeviceAddressCreateInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( deviceAddress == rhs.deviceAddress );
- }
-
- bool operator!=( BufferDeviceAddressCreateInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBufferDeviceAddressCreateInfoEXT;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::DeviceAddress deviceAddress = {};
-
+ value = true
+ };
};
- static_assert( sizeof( BufferDeviceAddressCreateInfoEXT ) == sizeof( VkBufferDeviceAddressCreateInfoEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<BufferDeviceAddressCreateInfoEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eBufferDeviceAddressCreateInfoEXT>
+ struct StructExtends<CommandBufferInheritanceConditionalRenderingInfoEXT, CommandBufferInheritanceInfo>
{
- using Type = BufferDeviceAddressCreateInfoEXT;
- };
-
- struct BufferDeviceAddressInfo
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBufferDeviceAddressInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR BufferDeviceAddressInfo(VULKAN_HPP_NAMESPACE::Buffer buffer_ = {}) VULKAN_HPP_NOEXCEPT
- : buffer( buffer_ )
- {}
-
- VULKAN_HPP_CONSTEXPR BufferDeviceAddressInfo( BufferDeviceAddressInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- BufferDeviceAddressInfo( VkBufferDeviceAddressInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- BufferDeviceAddressInfo & operator=( VkBufferDeviceAddressInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BufferDeviceAddressInfo const *>( &rhs );
- return *this;
- }
-
- BufferDeviceAddressInfo & operator=( BufferDeviceAddressInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( BufferDeviceAddressInfo ) );
- return *this;
- }
-
- BufferDeviceAddressInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- BufferDeviceAddressInfo & setBuffer( VULKAN_HPP_NAMESPACE::Buffer buffer_ ) VULKAN_HPP_NOEXCEPT
- {
- buffer = buffer_;
- return *this;
- }
-
-
- operator VkBufferDeviceAddressInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkBufferDeviceAddressInfo*>( this );
- }
-
- operator VkBufferDeviceAddressInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkBufferDeviceAddressInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( BufferDeviceAddressInfo const& ) const = default;
-#else
- bool operator==( BufferDeviceAddressInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( buffer == rhs.buffer );
- }
-
- bool operator!=( BufferDeviceAddressInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBufferDeviceAddressInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::Buffer buffer = {};
-
+ value = true
+ };
};
- static_assert( sizeof( BufferDeviceAddressInfo ) == sizeof( VkBufferDeviceAddressInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<BufferDeviceAddressInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eBufferDeviceAddressInfo>
- {
- using Type = BufferDeviceAddressInfo;
- };
- using BufferDeviceAddressInfoEXT = BufferDeviceAddressInfo;
- using BufferDeviceAddressInfoKHR = BufferDeviceAddressInfo;
-
- struct BufferImageCopy
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR BufferImageCopy(VULKAN_HPP_NAMESPACE::DeviceSize bufferOffset_ = {}, uint32_t bufferRowLength_ = {}, uint32_t bufferImageHeight_ = {}, VULKAN_HPP_NAMESPACE::ImageSubresourceLayers imageSubresource_ = {}, VULKAN_HPP_NAMESPACE::Offset3D imageOffset_ = {}, VULKAN_HPP_NAMESPACE::Extent3D imageExtent_ = {}) VULKAN_HPP_NOEXCEPT
- : bufferOffset( bufferOffset_ ), bufferRowLength( bufferRowLength_ ), bufferImageHeight( bufferImageHeight_ ), imageSubresource( imageSubresource_ ), imageOffset( imageOffset_ ), imageExtent( imageExtent_ )
- {}
-
- VULKAN_HPP_CONSTEXPR BufferImageCopy( BufferImageCopy const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- BufferImageCopy( VkBufferImageCopy const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- BufferImageCopy & operator=( VkBufferImageCopy const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BufferImageCopy const *>( &rhs );
- return *this;
- }
-
- BufferImageCopy & operator=( BufferImageCopy const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( BufferImageCopy ) );
- return *this;
- }
-
- BufferImageCopy & setBufferOffset( VULKAN_HPP_NAMESPACE::DeviceSize bufferOffset_ ) VULKAN_HPP_NOEXCEPT
- {
- bufferOffset = bufferOffset_;
- return *this;
- }
-
- BufferImageCopy & setBufferRowLength( uint32_t bufferRowLength_ ) VULKAN_HPP_NOEXCEPT
- {
- bufferRowLength = bufferRowLength_;
- return *this;
- }
-
- BufferImageCopy & setBufferImageHeight( uint32_t bufferImageHeight_ ) VULKAN_HPP_NOEXCEPT
- {
- bufferImageHeight = bufferImageHeight_;
- return *this;
- }
-
- BufferImageCopy & setImageSubresource( VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const & imageSubresource_ ) VULKAN_HPP_NOEXCEPT
- {
- imageSubresource = imageSubresource_;
- return *this;
- }
-
- BufferImageCopy & setImageOffset( VULKAN_HPP_NAMESPACE::Offset3D const & imageOffset_ ) VULKAN_HPP_NOEXCEPT
- {
- imageOffset = imageOffset_;
- return *this;
- }
-
- BufferImageCopy & setImageExtent( VULKAN_HPP_NAMESPACE::Extent3D const & imageExtent_ ) VULKAN_HPP_NOEXCEPT
- {
- imageExtent = imageExtent_;
- return *this;
- }
-
-
- operator VkBufferImageCopy const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkBufferImageCopy*>( this );
- }
-
- operator VkBufferImageCopy &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkBufferImageCopy*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( BufferImageCopy const& ) const = default;
-#else
- bool operator==( BufferImageCopy const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( bufferOffset == rhs.bufferOffset )
- && ( bufferRowLength == rhs.bufferRowLength )
- && ( bufferImageHeight == rhs.bufferImageHeight )
- && ( imageSubresource == rhs.imageSubresource )
- && ( imageOffset == rhs.imageOffset )
- && ( imageExtent == rhs.imageExtent );
- }
-
- bool operator!=( BufferImageCopy const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::DeviceSize bufferOffset = {};
- uint32_t bufferRowLength = {};
- uint32_t bufferImageHeight = {};
- VULKAN_HPP_NAMESPACE::ImageSubresourceLayers imageSubresource = {};
- VULKAN_HPP_NAMESPACE::Offset3D imageOffset = {};
- VULKAN_HPP_NAMESPACE::Extent3D imageExtent = {};
-
- };
- static_assert( sizeof( BufferImageCopy ) == sizeof( VkBufferImageCopy ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<BufferImageCopy>::value, "struct wrapper is not a standard layout!" );
-
- struct BufferImageCopy2KHR
+ struct StructExtends<CommandBufferInheritanceRenderPassTransformInfoQCOM, CommandBufferInheritanceInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBufferImageCopy2KHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR BufferImageCopy2KHR(VULKAN_HPP_NAMESPACE::DeviceSize bufferOffset_ = {}, uint32_t bufferRowLength_ = {}, uint32_t bufferImageHeight_ = {}, VULKAN_HPP_NAMESPACE::ImageSubresourceLayers imageSubresource_ = {}, VULKAN_HPP_NAMESPACE::Offset3D imageOffset_ = {}, VULKAN_HPP_NAMESPACE::Extent3D imageExtent_ = {}) VULKAN_HPP_NOEXCEPT
- : bufferOffset( bufferOffset_ ), bufferRowLength( bufferRowLength_ ), bufferImageHeight( bufferImageHeight_ ), imageSubresource( imageSubresource_ ), imageOffset( imageOffset_ ), imageExtent( imageExtent_ )
- {}
-
- VULKAN_HPP_CONSTEXPR BufferImageCopy2KHR( BufferImageCopy2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- BufferImageCopy2KHR( VkBufferImageCopy2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- BufferImageCopy2KHR & operator=( VkBufferImageCopy2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BufferImageCopy2KHR const *>( &rhs );
- return *this;
- }
-
- BufferImageCopy2KHR & operator=( BufferImageCopy2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( BufferImageCopy2KHR ) );
- return *this;
- }
-
- BufferImageCopy2KHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- BufferImageCopy2KHR & setBufferOffset( VULKAN_HPP_NAMESPACE::DeviceSize bufferOffset_ ) VULKAN_HPP_NOEXCEPT
- {
- bufferOffset = bufferOffset_;
- return *this;
- }
-
- BufferImageCopy2KHR & setBufferRowLength( uint32_t bufferRowLength_ ) VULKAN_HPP_NOEXCEPT
- {
- bufferRowLength = bufferRowLength_;
- return *this;
- }
-
- BufferImageCopy2KHR & setBufferImageHeight( uint32_t bufferImageHeight_ ) VULKAN_HPP_NOEXCEPT
- {
- bufferImageHeight = bufferImageHeight_;
- return *this;
- }
-
- BufferImageCopy2KHR & setImageSubresource( VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const & imageSubresource_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- imageSubresource = imageSubresource_;
- return *this;
- }
-
- BufferImageCopy2KHR & setImageOffset( VULKAN_HPP_NAMESPACE::Offset3D const & imageOffset_ ) VULKAN_HPP_NOEXCEPT
- {
- imageOffset = imageOffset_;
- return *this;
- }
-
- BufferImageCopy2KHR & setImageExtent( VULKAN_HPP_NAMESPACE::Extent3D const & imageExtent_ ) VULKAN_HPP_NOEXCEPT
- {
- imageExtent = imageExtent_;
- return *this;
- }
-
-
- operator VkBufferImageCopy2KHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkBufferImageCopy2KHR*>( this );
- }
-
- operator VkBufferImageCopy2KHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkBufferImageCopy2KHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( BufferImageCopy2KHR const& ) const = default;
-#else
- bool operator==( BufferImageCopy2KHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( bufferOffset == rhs.bufferOffset )
- && ( bufferRowLength == rhs.bufferRowLength )
- && ( bufferImageHeight == rhs.bufferImageHeight )
- && ( imageSubresource == rhs.imageSubresource )
- && ( imageOffset == rhs.imageOffset )
- && ( imageExtent == rhs.imageExtent );
- }
-
- bool operator!=( BufferImageCopy2KHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBufferImageCopy2KHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::DeviceSize bufferOffset = {};
- uint32_t bufferRowLength = {};
- uint32_t bufferImageHeight = {};
- VULKAN_HPP_NAMESPACE::ImageSubresourceLayers imageSubresource = {};
- VULKAN_HPP_NAMESPACE::Offset3D imageOffset = {};
- VULKAN_HPP_NAMESPACE::Extent3D imageExtent = {};
-
+ value = true
+ };
};
- static_assert( sizeof( BufferImageCopy2KHR ) == sizeof( VkBufferImageCopy2KHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<BufferImageCopy2KHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eBufferImageCopy2KHR>
+ struct StructExtends<CommandBufferInheritanceViewportScissorInfoNV, CommandBufferInheritanceInfo>
{
- using Type = BufferImageCopy2KHR;
- };
-
- struct BufferMemoryBarrier
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBufferMemoryBarrier;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR BufferMemoryBarrier(VULKAN_HPP_NAMESPACE::AccessFlags srcAccessMask_ = {}, VULKAN_HPP_NAMESPACE::AccessFlags dstAccessMask_ = {}, uint32_t srcQueueFamilyIndex_ = {}, uint32_t dstQueueFamilyIndex_ = {}, VULKAN_HPP_NAMESPACE::Buffer buffer_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize offset_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize size_ = {}) VULKAN_HPP_NOEXCEPT
- : srcAccessMask( srcAccessMask_ ), dstAccessMask( dstAccessMask_ ), srcQueueFamilyIndex( srcQueueFamilyIndex_ ), dstQueueFamilyIndex( dstQueueFamilyIndex_ ), buffer( buffer_ ), offset( offset_ ), size( size_ )
- {}
-
- VULKAN_HPP_CONSTEXPR BufferMemoryBarrier( BufferMemoryBarrier const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- BufferMemoryBarrier( VkBufferMemoryBarrier const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- BufferMemoryBarrier & operator=( VkBufferMemoryBarrier const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BufferMemoryBarrier const *>( &rhs );
- return *this;
- }
-
- BufferMemoryBarrier & operator=( BufferMemoryBarrier const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( BufferMemoryBarrier ) );
- return *this;
- }
-
- BufferMemoryBarrier & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- BufferMemoryBarrier & setSrcAccessMask( VULKAN_HPP_NAMESPACE::AccessFlags srcAccessMask_ ) VULKAN_HPP_NOEXCEPT
- {
- srcAccessMask = srcAccessMask_;
- return *this;
- }
-
- BufferMemoryBarrier & setDstAccessMask( VULKAN_HPP_NAMESPACE::AccessFlags dstAccessMask_ ) VULKAN_HPP_NOEXCEPT
- {
- dstAccessMask = dstAccessMask_;
- return *this;
- }
-
- BufferMemoryBarrier & setSrcQueueFamilyIndex( uint32_t srcQueueFamilyIndex_ ) VULKAN_HPP_NOEXCEPT
- {
- srcQueueFamilyIndex = srcQueueFamilyIndex_;
- return *this;
- }
-
- BufferMemoryBarrier & setDstQueueFamilyIndex( uint32_t dstQueueFamilyIndex_ ) VULKAN_HPP_NOEXCEPT
- {
- dstQueueFamilyIndex = dstQueueFamilyIndex_;
- return *this;
- }
-
- BufferMemoryBarrier & setBuffer( VULKAN_HPP_NAMESPACE::Buffer buffer_ ) VULKAN_HPP_NOEXCEPT
- {
- buffer = buffer_;
- return *this;
- }
-
- BufferMemoryBarrier & setOffset( VULKAN_HPP_NAMESPACE::DeviceSize offset_ ) VULKAN_HPP_NOEXCEPT
- {
- offset = offset_;
- return *this;
- }
-
- BufferMemoryBarrier & setSize( VULKAN_HPP_NAMESPACE::DeviceSize size_ ) VULKAN_HPP_NOEXCEPT
- {
- size = size_;
- return *this;
- }
-
-
- operator VkBufferMemoryBarrier const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkBufferMemoryBarrier*>( this );
- }
-
- operator VkBufferMemoryBarrier &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkBufferMemoryBarrier*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( BufferMemoryBarrier const& ) const = default;
-#else
- bool operator==( BufferMemoryBarrier const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( srcAccessMask == rhs.srcAccessMask )
- && ( dstAccessMask == rhs.dstAccessMask )
- && ( srcQueueFamilyIndex == rhs.srcQueueFamilyIndex )
- && ( dstQueueFamilyIndex == rhs.dstQueueFamilyIndex )
- && ( buffer == rhs.buffer )
- && ( offset == rhs.offset )
- && ( size == rhs.size );
- }
-
- bool operator!=( BufferMemoryBarrier const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBufferMemoryBarrier;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::AccessFlags srcAccessMask = {};
- VULKAN_HPP_NAMESPACE::AccessFlags dstAccessMask = {};
- uint32_t srcQueueFamilyIndex = {};
- uint32_t dstQueueFamilyIndex = {};
- VULKAN_HPP_NAMESPACE::Buffer buffer = {};
- VULKAN_HPP_NAMESPACE::DeviceSize offset = {};
- VULKAN_HPP_NAMESPACE::DeviceSize size = {};
-
+ value = true
+ };
};
- static_assert( sizeof( BufferMemoryBarrier ) == sizeof( VkBufferMemoryBarrier ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<BufferMemoryBarrier>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eBufferMemoryBarrier>
+ struct StructExtends<CopyCommandTransformInfoQCOM, BufferImageCopy2KHR>
{
- using Type = BufferMemoryBarrier;
- };
-
- struct BufferMemoryRequirementsInfo2
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBufferMemoryRequirementsInfo2;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR BufferMemoryRequirementsInfo2(VULKAN_HPP_NAMESPACE::Buffer buffer_ = {}) VULKAN_HPP_NOEXCEPT
- : buffer( buffer_ )
- {}
-
- VULKAN_HPP_CONSTEXPR BufferMemoryRequirementsInfo2( BufferMemoryRequirementsInfo2 const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- BufferMemoryRequirementsInfo2( VkBufferMemoryRequirementsInfo2 const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- BufferMemoryRequirementsInfo2 & operator=( VkBufferMemoryRequirementsInfo2 const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BufferMemoryRequirementsInfo2 const *>( &rhs );
- return *this;
- }
-
- BufferMemoryRequirementsInfo2 & operator=( BufferMemoryRequirementsInfo2 const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( BufferMemoryRequirementsInfo2 ) );
- return *this;
- }
-
- BufferMemoryRequirementsInfo2 & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- BufferMemoryRequirementsInfo2 & setBuffer( VULKAN_HPP_NAMESPACE::Buffer buffer_ ) VULKAN_HPP_NOEXCEPT
- {
- buffer = buffer_;
- return *this;
- }
-
-
- operator VkBufferMemoryRequirementsInfo2 const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkBufferMemoryRequirementsInfo2*>( this );
- }
-
- operator VkBufferMemoryRequirementsInfo2 &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkBufferMemoryRequirementsInfo2*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( BufferMemoryRequirementsInfo2 const& ) const = default;
-#else
- bool operator==( BufferMemoryRequirementsInfo2 const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( buffer == rhs.buffer );
- }
-
- bool operator!=( BufferMemoryRequirementsInfo2 const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBufferMemoryRequirementsInfo2;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::Buffer buffer = {};
-
+ value = true
+ };
};
- static_assert( sizeof( BufferMemoryRequirementsInfo2 ) == sizeof( VkBufferMemoryRequirementsInfo2 ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<BufferMemoryRequirementsInfo2>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eBufferMemoryRequirementsInfo2>
+ struct StructExtends<CopyCommandTransformInfoQCOM, ImageBlit2KHR>
{
- using Type = BufferMemoryRequirementsInfo2;
- };
- using BufferMemoryRequirementsInfo2KHR = BufferMemoryRequirementsInfo2;
-
- struct BufferOpaqueCaptureAddressCreateInfo
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBufferOpaqueCaptureAddressCreateInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR BufferOpaqueCaptureAddressCreateInfo(uint64_t opaqueCaptureAddress_ = {}) VULKAN_HPP_NOEXCEPT
- : opaqueCaptureAddress( opaqueCaptureAddress_ )
- {}
-
- VULKAN_HPP_CONSTEXPR BufferOpaqueCaptureAddressCreateInfo( BufferOpaqueCaptureAddressCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- BufferOpaqueCaptureAddressCreateInfo( VkBufferOpaqueCaptureAddressCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- BufferOpaqueCaptureAddressCreateInfo & operator=( VkBufferOpaqueCaptureAddressCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BufferOpaqueCaptureAddressCreateInfo const *>( &rhs );
- return *this;
- }
-
- BufferOpaqueCaptureAddressCreateInfo & operator=( BufferOpaqueCaptureAddressCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( BufferOpaqueCaptureAddressCreateInfo ) );
- return *this;
- }
-
- BufferOpaqueCaptureAddressCreateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- BufferOpaqueCaptureAddressCreateInfo & setOpaqueCaptureAddress( uint64_t opaqueCaptureAddress_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- opaqueCaptureAddress = opaqueCaptureAddress_;
- return *this;
- }
-
-
- operator VkBufferOpaqueCaptureAddressCreateInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkBufferOpaqueCaptureAddressCreateInfo*>( this );
- }
-
- operator VkBufferOpaqueCaptureAddressCreateInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkBufferOpaqueCaptureAddressCreateInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( BufferOpaqueCaptureAddressCreateInfo const& ) const = default;
-#else
- bool operator==( BufferOpaqueCaptureAddressCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( opaqueCaptureAddress == rhs.opaqueCaptureAddress );
- }
-
- bool operator!=( BufferOpaqueCaptureAddressCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBufferOpaqueCaptureAddressCreateInfo;
- const void* pNext = {};
- uint64_t opaqueCaptureAddress = {};
-
+ value = true
+ };
};
- static_assert( sizeof( BufferOpaqueCaptureAddressCreateInfo ) == sizeof( VkBufferOpaqueCaptureAddressCreateInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<BufferOpaqueCaptureAddressCreateInfo>::value, "struct wrapper is not a standard layout!" );
-
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
template <>
- struct CppType<StructureType, StructureType::eBufferOpaqueCaptureAddressCreateInfo>
- {
- using Type = BufferOpaqueCaptureAddressCreateInfo;
- };
- using BufferOpaqueCaptureAddressCreateInfoKHR = BufferOpaqueCaptureAddressCreateInfo;
-
- struct BufferViewCreateInfo
+ struct StructExtends<D3D12FenceSubmitInfoKHR, SubmitInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBufferViewCreateInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR BufferViewCreateInfo(VULKAN_HPP_NAMESPACE::BufferViewCreateFlags flags_ = {}, VULKAN_HPP_NAMESPACE::Buffer buffer_ = {}, VULKAN_HPP_NAMESPACE::Format format_ = VULKAN_HPP_NAMESPACE::Format::eUndefined, VULKAN_HPP_NAMESPACE::DeviceSize offset_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize range_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), buffer( buffer_ ), format( format_ ), offset( offset_ ), range( range_ )
- {}
-
- VULKAN_HPP_CONSTEXPR BufferViewCreateInfo( BufferViewCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- BufferViewCreateInfo( VkBufferViewCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- BufferViewCreateInfo & operator=( VkBufferViewCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BufferViewCreateInfo const *>( &rhs );
- return *this;
- }
-
- BufferViewCreateInfo & operator=( BufferViewCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( BufferViewCreateInfo ) );
- return *this;
- }
-
- BufferViewCreateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- pNext = pNext_;
- return *this;
- }
-
- BufferViewCreateInfo & setFlags( VULKAN_HPP_NAMESPACE::BufferViewCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- BufferViewCreateInfo & setBuffer( VULKAN_HPP_NAMESPACE::Buffer buffer_ ) VULKAN_HPP_NOEXCEPT
- {
- buffer = buffer_;
- return *this;
- }
-
- BufferViewCreateInfo & setFormat( VULKAN_HPP_NAMESPACE::Format format_ ) VULKAN_HPP_NOEXCEPT
- {
- format = format_;
- return *this;
- }
-
- BufferViewCreateInfo & setOffset( VULKAN_HPP_NAMESPACE::DeviceSize offset_ ) VULKAN_HPP_NOEXCEPT
- {
- offset = offset_;
- return *this;
- }
-
- BufferViewCreateInfo & setRange( VULKAN_HPP_NAMESPACE::DeviceSize range_ ) VULKAN_HPP_NOEXCEPT
- {
- range = range_;
- return *this;
- }
-
-
- operator VkBufferViewCreateInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkBufferViewCreateInfo*>( this );
- }
-
- operator VkBufferViewCreateInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkBufferViewCreateInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( BufferViewCreateInfo const& ) const = default;
-#else
- bool operator==( BufferViewCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( buffer == rhs.buffer )
- && ( format == rhs.format )
- && ( offset == rhs.offset )
- && ( range == rhs.range );
- }
-
- bool operator!=( BufferViewCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBufferViewCreateInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::BufferViewCreateFlags flags = {};
- VULKAN_HPP_NAMESPACE::Buffer buffer = {};
- VULKAN_HPP_NAMESPACE::Format format = VULKAN_HPP_NAMESPACE::Format::eUndefined;
- VULKAN_HPP_NAMESPACE::DeviceSize offset = {};
- VULKAN_HPP_NAMESPACE::DeviceSize range = {};
-
+ value = true
+ };
};
- static_assert( sizeof( BufferViewCreateInfo ) == sizeof( VkBufferViewCreateInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<BufferViewCreateInfo>::value, "struct wrapper is not a standard layout!" );
-
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
template <>
- struct CppType<StructureType, StructureType::eBufferViewCreateInfo>
- {
- using Type = BufferViewCreateInfo;
- };
-
- struct CalibratedTimestampInfoEXT
+ struct StructExtends<DebugReportCallbackCreateInfoEXT, InstanceCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCalibratedTimestampInfoEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR CalibratedTimestampInfoEXT(VULKAN_HPP_NAMESPACE::TimeDomainEXT timeDomain_ = VULKAN_HPP_NAMESPACE::TimeDomainEXT::eDevice) VULKAN_HPP_NOEXCEPT
- : timeDomain( timeDomain_ )
- {}
-
- VULKAN_HPP_CONSTEXPR CalibratedTimestampInfoEXT( CalibratedTimestampInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- CalibratedTimestampInfoEXT( VkCalibratedTimestampInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- CalibratedTimestampInfoEXT & operator=( VkCalibratedTimestampInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CalibratedTimestampInfoEXT const *>( &rhs );
- return *this;
- }
-
- CalibratedTimestampInfoEXT & operator=( CalibratedTimestampInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- memcpy( static_cast<void *>( this ), &rhs, sizeof( CalibratedTimestampInfoEXT ) );
- return *this;
- }
-
- CalibratedTimestampInfoEXT & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- CalibratedTimestampInfoEXT & setTimeDomain( VULKAN_HPP_NAMESPACE::TimeDomainEXT timeDomain_ ) VULKAN_HPP_NOEXCEPT
- {
- timeDomain = timeDomain_;
- return *this;
- }
-
-
- operator VkCalibratedTimestampInfoEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkCalibratedTimestampInfoEXT*>( this );
- }
-
- operator VkCalibratedTimestampInfoEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkCalibratedTimestampInfoEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( CalibratedTimestampInfoEXT const& ) const = default;
-#else
- bool operator==( CalibratedTimestampInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( timeDomain == rhs.timeDomain );
- }
-
- bool operator!=( CalibratedTimestampInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCalibratedTimestampInfoEXT;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::TimeDomainEXT timeDomain = VULKAN_HPP_NAMESPACE::TimeDomainEXT::eDevice;
-
+ value = true
+ };
};
- static_assert( sizeof( CalibratedTimestampInfoEXT ) == sizeof( VkCalibratedTimestampInfoEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<CalibratedTimestampInfoEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eCalibratedTimestampInfoEXT>
+ struct StructExtends<DebugUtilsMessengerCreateInfoEXT, InstanceCreateInfo>
{
- using Type = CalibratedTimestampInfoEXT;
- };
-
- struct CheckpointDataNV
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCheckpointDataNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR CheckpointDataNV(VULKAN_HPP_NAMESPACE::PipelineStageFlagBits stage_ = VULKAN_HPP_NAMESPACE::PipelineStageFlagBits::eTopOfPipe, void* pCheckpointMarker_ = {}) VULKAN_HPP_NOEXCEPT
- : stage( stage_ ), pCheckpointMarker( pCheckpointMarker_ )
- {}
-
- VULKAN_HPP_CONSTEXPR CheckpointDataNV( CheckpointDataNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- CheckpointDataNV( VkCheckpointDataNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- CheckpointDataNV & operator=( VkCheckpointDataNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CheckpointDataNV const *>( &rhs );
- return *this;
- }
-
- CheckpointDataNV & operator=( CheckpointDataNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( CheckpointDataNV ) );
- return *this;
- }
-
-
- operator VkCheckpointDataNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkCheckpointDataNV*>( this );
- }
-
- operator VkCheckpointDataNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkCheckpointDataNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( CheckpointDataNV const& ) const = default;
-#else
- bool operator==( CheckpointDataNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( stage == rhs.stage )
- && ( pCheckpointMarker == rhs.pCheckpointMarker );
- }
-
- bool operator!=( CheckpointDataNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCheckpointDataNV;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::PipelineStageFlagBits stage = VULKAN_HPP_NAMESPACE::PipelineStageFlagBits::eTopOfPipe;
- void* pCheckpointMarker = {};
-
+ value = true
+ };
};
- static_assert( sizeof( CheckpointDataNV ) == sizeof( VkCheckpointDataNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<CheckpointDataNV>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eCheckpointDataNV>
- {
- using Type = CheckpointDataNV;
- };
-
- union ClearColorValue
+ struct StructExtends<DedicatedAllocationBufferCreateInfoNV, BufferCreateInfo>
{
- ClearColorValue( VULKAN_HPP_NAMESPACE::ClearColorValue const& rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void*>(this), &rhs, sizeof( VULKAN_HPP_NAMESPACE::ClearColorValue ) );
- }
-
- ClearColorValue( const std::array<float,4>& float32_ = {} )
- : float32( float32_ )
- {}
-
- ClearColorValue( const std::array<int32_t,4>& int32_ )
- : int32( int32_ )
- {}
-
- ClearColorValue( const std::array<uint32_t,4>& uint32_ )
- : uint32( uint32_ )
- {}
-
- ClearColorValue & setFloat32( std::array<float,4> float32_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- float32 = float32_;
- return *this;
- }
-
- ClearColorValue & setInt32( std::array<int32_t,4> int32_ ) VULKAN_HPP_NOEXCEPT
- {
- int32 = int32_;
- return *this;
- }
-
- ClearColorValue & setUint32( std::array<uint32_t,4> uint32_ ) VULKAN_HPP_NOEXCEPT
- {
- uint32 = uint32_;
- return *this;
- }
-
- VULKAN_HPP_NAMESPACE::ClearColorValue & operator=( VULKAN_HPP_NAMESPACE::ClearColorValue const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void*>(this), &rhs, sizeof( VULKAN_HPP_NAMESPACE::ClearColorValue ) );
- return *this;
- }
-
- operator VkClearColorValue const&() const
- {
- return *reinterpret_cast<const VkClearColorValue*>(this);
- }
-
- operator VkClearColorValue &()
- {
- return *reinterpret_cast<VkClearColorValue*>(this);
- }
-
- VULKAN_HPP_NAMESPACE::ArrayWrapper1D<float, 4> float32;
- VULKAN_HPP_NAMESPACE::ArrayWrapper1D<int32_t, 4> int32;
- VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint32_t, 4> uint32;
- };
-
- struct ClearDepthStencilValue
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ClearDepthStencilValue(float depth_ = {}, uint32_t stencil_ = {}) VULKAN_HPP_NOEXCEPT
- : depth( depth_ ), stencil( stencil_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ClearDepthStencilValue( ClearDepthStencilValue const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ClearDepthStencilValue( VkClearDepthStencilValue const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ClearDepthStencilValue & operator=( VkClearDepthStencilValue const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ClearDepthStencilValue const *>( &rhs );
- return *this;
- }
-
- ClearDepthStencilValue & operator=( ClearDepthStencilValue const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ClearDepthStencilValue ) );
- return *this;
- }
-
- ClearDepthStencilValue & setDepth( float depth_ ) VULKAN_HPP_NOEXCEPT
- {
- depth = depth_;
- return *this;
- }
-
- ClearDepthStencilValue & setStencil( uint32_t stencil_ ) VULKAN_HPP_NOEXCEPT
- {
- stencil = stencil_;
- return *this;
- }
-
-
- operator VkClearDepthStencilValue const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkClearDepthStencilValue*>( this );
- }
-
- operator VkClearDepthStencilValue &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkClearDepthStencilValue*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ClearDepthStencilValue const& ) const = default;
-#else
- bool operator==( ClearDepthStencilValue const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( depth == rhs.depth )
- && ( stencil == rhs.stencil );
- }
-
- bool operator!=( ClearDepthStencilValue const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- float depth = {};
- uint32_t stencil = {};
-
- };
- static_assert( sizeof( ClearDepthStencilValue ) == sizeof( VkClearDepthStencilValue ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ClearDepthStencilValue>::value, "struct wrapper is not a standard layout!" );
-
- union ClearValue
- {
- ClearValue( VULKAN_HPP_NAMESPACE::ClearValue const& rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void*>(this), &rhs, sizeof( VULKAN_HPP_NAMESPACE::ClearValue ) );
- }
-
- ClearValue( VULKAN_HPP_NAMESPACE::ClearColorValue color_ = {} )
- : color( color_ )
- {}
-
- ClearValue( VULKAN_HPP_NAMESPACE::ClearDepthStencilValue depthStencil_ )
- : depthStencil( depthStencil_ )
- {}
-
- ClearValue & setColor( VULKAN_HPP_NAMESPACE::ClearColorValue const & color_ ) VULKAN_HPP_NOEXCEPT
- {
- color = color_;
- return *this;
- }
-
- ClearValue & setDepthStencil( VULKAN_HPP_NAMESPACE::ClearDepthStencilValue const & depthStencil_ ) VULKAN_HPP_NOEXCEPT
- {
- depthStencil = depthStencil_;
- return *this;
- }
-
- VULKAN_HPP_NAMESPACE::ClearValue & operator=( VULKAN_HPP_NAMESPACE::ClearValue const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void*>(this), &rhs, sizeof( VULKAN_HPP_NAMESPACE::ClearValue ) );
- return *this;
- }
-
- operator VkClearValue const&() const
- {
- return *reinterpret_cast<const VkClearValue*>(this);
- }
-
- operator VkClearValue &()
- {
- return *reinterpret_cast<VkClearValue*>(this);
- }
-
-#ifdef VULKAN_HPP_HAS_UNRESTRICTED_UNIONS
- VULKAN_HPP_NAMESPACE::ClearColorValue color;
- VULKAN_HPP_NAMESPACE::ClearDepthStencilValue depthStencil;
-#else
- VkClearColorValue color;
- VkClearDepthStencilValue depthStencil;
-#endif /*VULKAN_HPP_HAS_UNRESTRICTED_UNIONS*/
- };
-
- struct ClearAttachment
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- ClearAttachment(VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask_ = {}, uint32_t colorAttachment_ = {}, VULKAN_HPP_NAMESPACE::ClearValue clearValue_ = {}) VULKAN_HPP_NOEXCEPT
- : aspectMask( aspectMask_ ), colorAttachment( colorAttachment_ ), clearValue( clearValue_ )
- {}
-
- ClearAttachment( ClearAttachment const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ClearAttachment( VkClearAttachment const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ClearAttachment & operator=( VkClearAttachment const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ClearAttachment const *>( &rhs );
- return *this;
- }
-
- ClearAttachment & operator=( ClearAttachment const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ClearAttachment ) );
- return *this;
- }
-
- ClearAttachment & setAspectMask( VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask_ ) VULKAN_HPP_NOEXCEPT
- {
- aspectMask = aspectMask_;
- return *this;
- }
-
- ClearAttachment & setColorAttachment( uint32_t colorAttachment_ ) VULKAN_HPP_NOEXCEPT
- {
- colorAttachment = colorAttachment_;
- return *this;
- }
-
- ClearAttachment & setClearValue( VULKAN_HPP_NAMESPACE::ClearValue const & clearValue_ ) VULKAN_HPP_NOEXCEPT
- {
- clearValue = clearValue_;
- return *this;
- }
-
-
- operator VkClearAttachment const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkClearAttachment*>( this );
- }
-
- operator VkClearAttachment &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkClearAttachment*>( this );
- }
-
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask = {};
- uint32_t colorAttachment = {};
- VULKAN_HPP_NAMESPACE::ClearValue clearValue = {};
-
- };
- static_assert( sizeof( ClearAttachment ) == sizeof( VkClearAttachment ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ClearAttachment>::value, "struct wrapper is not a standard layout!" );
-
- struct ClearRect
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ClearRect(VULKAN_HPP_NAMESPACE::Rect2D rect_ = {}, uint32_t baseArrayLayer_ = {}, uint32_t layerCount_ = {}) VULKAN_HPP_NOEXCEPT
- : rect( rect_ ), baseArrayLayer( baseArrayLayer_ ), layerCount( layerCount_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ClearRect( ClearRect const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ClearRect( VkClearRect const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ClearRect & operator=( VkClearRect const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ClearRect const *>( &rhs );
- return *this;
- }
-
- ClearRect & operator=( ClearRect const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ClearRect ) );
- return *this;
- }
-
- ClearRect & setRect( VULKAN_HPP_NAMESPACE::Rect2D const & rect_ ) VULKAN_HPP_NOEXCEPT
- {
- rect = rect_;
- return *this;
- }
-
- ClearRect & setBaseArrayLayer( uint32_t baseArrayLayer_ ) VULKAN_HPP_NOEXCEPT
- {
- baseArrayLayer = baseArrayLayer_;
- return *this;
- }
-
- ClearRect & setLayerCount( uint32_t layerCount_ ) VULKAN_HPP_NOEXCEPT
- {
- layerCount = layerCount_;
- return *this;
- }
-
-
- operator VkClearRect const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkClearRect*>( this );
- }
-
- operator VkClearRect &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkClearRect*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ClearRect const& ) const = default;
-#else
- bool operator==( ClearRect const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( rect == rhs.rect )
- && ( baseArrayLayer == rhs.baseArrayLayer )
- && ( layerCount == rhs.layerCount );
- }
-
- bool operator!=( ClearRect const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::Rect2D rect = {};
- uint32_t baseArrayLayer = {};
- uint32_t layerCount = {};
-
- };
- static_assert( sizeof( ClearRect ) == sizeof( VkClearRect ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ClearRect>::value, "struct wrapper is not a standard layout!" );
-
- struct CoarseSampleLocationNV
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR CoarseSampleLocationNV(uint32_t pixelX_ = {}, uint32_t pixelY_ = {}, uint32_t sample_ = {}) VULKAN_HPP_NOEXCEPT
- : pixelX( pixelX_ ), pixelY( pixelY_ ), sample( sample_ )
- {}
-
- VULKAN_HPP_CONSTEXPR CoarseSampleLocationNV( CoarseSampleLocationNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- CoarseSampleLocationNV( VkCoarseSampleLocationNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- CoarseSampleLocationNV & operator=( VkCoarseSampleLocationNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CoarseSampleLocationNV const *>( &rhs );
- return *this;
- }
-
- CoarseSampleLocationNV & operator=( CoarseSampleLocationNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( CoarseSampleLocationNV ) );
- return *this;
- }
-
- CoarseSampleLocationNV & setPixelX( uint32_t pixelX_ ) VULKAN_HPP_NOEXCEPT
- {
- pixelX = pixelX_;
- return *this;
- }
-
- CoarseSampleLocationNV & setPixelY( uint32_t pixelY_ ) VULKAN_HPP_NOEXCEPT
- {
- pixelY = pixelY_;
- return *this;
- }
-
- CoarseSampleLocationNV & setSample( uint32_t sample_ ) VULKAN_HPP_NOEXCEPT
- {
- sample = sample_;
- return *this;
- }
-
-
- operator VkCoarseSampleLocationNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkCoarseSampleLocationNV*>( this );
- }
-
- operator VkCoarseSampleLocationNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkCoarseSampleLocationNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( CoarseSampleLocationNV const& ) const = default;
-#else
- bool operator==( CoarseSampleLocationNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( pixelX == rhs.pixelX )
- && ( pixelY == rhs.pixelY )
- && ( sample == rhs.sample );
- }
-
- bool operator!=( CoarseSampleLocationNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- uint32_t pixelX = {};
- uint32_t pixelY = {};
- uint32_t sample = {};
-
- };
- static_assert( sizeof( CoarseSampleLocationNV ) == sizeof( VkCoarseSampleLocationNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<CoarseSampleLocationNV>::value, "struct wrapper is not a standard layout!" );
-
- struct CoarseSampleOrderCustomNV
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR CoarseSampleOrderCustomNV(VULKAN_HPP_NAMESPACE::ShadingRatePaletteEntryNV shadingRate_ = VULKAN_HPP_NAMESPACE::ShadingRatePaletteEntryNV::eNoInvocations, uint32_t sampleCount_ = {}, uint32_t sampleLocationCount_ = {}, const VULKAN_HPP_NAMESPACE::CoarseSampleLocationNV* pSampleLocations_ = {}) VULKAN_HPP_NOEXCEPT
- : shadingRate( shadingRate_ ), sampleCount( sampleCount_ ), sampleLocationCount( sampleLocationCount_ ), pSampleLocations( pSampleLocations_ )
- {}
-
- VULKAN_HPP_CONSTEXPR CoarseSampleOrderCustomNV( CoarseSampleOrderCustomNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- CoarseSampleOrderCustomNV( VkCoarseSampleOrderCustomNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- CoarseSampleOrderCustomNV( VULKAN_HPP_NAMESPACE::ShadingRatePaletteEntryNV shadingRate_, uint32_t sampleCount_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::CoarseSampleLocationNV> const & sampleLocations_ )
- : shadingRate( shadingRate_ ), sampleCount( sampleCount_ ), sampleLocationCount( static_cast<uint32_t>( sampleLocations_.size() ) ), pSampleLocations( sampleLocations_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- CoarseSampleOrderCustomNV & operator=( VkCoarseSampleOrderCustomNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CoarseSampleOrderCustomNV const *>( &rhs );
- return *this;
- }
-
- CoarseSampleOrderCustomNV & operator=( CoarseSampleOrderCustomNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( CoarseSampleOrderCustomNV ) );
- return *this;
- }
-
- CoarseSampleOrderCustomNV & setShadingRate( VULKAN_HPP_NAMESPACE::ShadingRatePaletteEntryNV shadingRate_ ) VULKAN_HPP_NOEXCEPT
- {
- shadingRate = shadingRate_;
- return *this;
- }
-
- CoarseSampleOrderCustomNV & setSampleCount( uint32_t sampleCount_ ) VULKAN_HPP_NOEXCEPT
- {
- sampleCount = sampleCount_;
- return *this;
- }
-
- CoarseSampleOrderCustomNV & setSampleLocationCount( uint32_t sampleLocationCount_ ) VULKAN_HPP_NOEXCEPT
- {
- sampleLocationCount = sampleLocationCount_;
- return *this;
- }
-
- CoarseSampleOrderCustomNV & setPSampleLocations( const VULKAN_HPP_NAMESPACE::CoarseSampleLocationNV* pSampleLocations_ ) VULKAN_HPP_NOEXCEPT
- {
- pSampleLocations = pSampleLocations_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- CoarseSampleOrderCustomNV & setSampleLocations( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::CoarseSampleLocationNV> const & sampleLocations_ ) VULKAN_HPP_NOEXCEPT
- {
- sampleLocationCount = static_cast<uint32_t>( sampleLocations_.size() );
- pSampleLocations = sampleLocations_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkCoarseSampleOrderCustomNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkCoarseSampleOrderCustomNV*>( this );
- }
-
- operator VkCoarseSampleOrderCustomNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkCoarseSampleOrderCustomNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( CoarseSampleOrderCustomNV const& ) const = default;
-#else
- bool operator==( CoarseSampleOrderCustomNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( shadingRate == rhs.shadingRate )
- && ( sampleCount == rhs.sampleCount )
- && ( sampleLocationCount == rhs.sampleLocationCount )
- && ( pSampleLocations == rhs.pSampleLocations );
- }
-
- bool operator!=( CoarseSampleOrderCustomNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::ShadingRatePaletteEntryNV shadingRate = VULKAN_HPP_NAMESPACE::ShadingRatePaletteEntryNV::eNoInvocations;
- uint32_t sampleCount = {};
- uint32_t sampleLocationCount = {};
- const VULKAN_HPP_NAMESPACE::CoarseSampleLocationNV* pSampleLocations = {};
-
- };
- static_assert( sizeof( CoarseSampleOrderCustomNV ) == sizeof( VkCoarseSampleOrderCustomNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<CoarseSampleOrderCustomNV>::value, "struct wrapper is not a standard layout!" );
-
- class CommandPool
- {
- public:
- using CType = VkCommandPool;
-
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::eCommandPool;
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType = VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eCommandPool;
-
- public:
- VULKAN_HPP_CONSTEXPR CommandPool() VULKAN_HPP_NOEXCEPT
- : m_commandPool(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_CONSTEXPR CommandPool( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- : m_commandPool(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_TYPESAFE_EXPLICIT CommandPool( VkCommandPool commandPool ) VULKAN_HPP_NOEXCEPT
- : m_commandPool( commandPool )
- {}
-
-#if defined(VULKAN_HPP_TYPESAFE_CONVERSION)
- CommandPool & operator=(VkCommandPool commandPool) VULKAN_HPP_NOEXCEPT
- {
- m_commandPool = commandPool;
- return *this;
- }
-#endif
-
- CommandPool & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- {
- m_commandPool = VK_NULL_HANDLE;
- return *this;
- }
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( CommandPool const& ) const = default;
-#else
- bool operator==( CommandPool const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_commandPool == rhs.m_commandPool;
- }
-
- bool operator!=(CommandPool const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_commandPool != rhs.m_commandPool;
- }
-
- bool operator<(CommandPool const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_commandPool < rhs.m_commandPool;
- }
-#endif
-
- VULKAN_HPP_TYPESAFE_EXPLICIT operator VkCommandPool() const VULKAN_HPP_NOEXCEPT
- {
- return m_commandPool;
- }
-
- explicit operator bool() const VULKAN_HPP_NOEXCEPT
- {
- return m_commandPool != VK_NULL_HANDLE;
- }
-
- bool operator!() const VULKAN_HPP_NOEXCEPT
- {
- return m_commandPool == VK_NULL_HANDLE;
- }
-
- private:
- VkCommandPool m_commandPool;
- };
- static_assert( sizeof( VULKAN_HPP_NAMESPACE::CommandPool ) == sizeof( VkCommandPool ), "handle and wrapper have different size!" );
-
- template <>
- struct VULKAN_HPP_DEPRECATED("vk::cpp_type is deprecated. Use vk::CppType instead.") cpp_type<ObjectType::eCommandPool>
- {
- using type = VULKAN_HPP_NAMESPACE::CommandPool;
- };
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eCommandPool>
- {
- using Type = VULKAN_HPP_NAMESPACE::CommandPool;
- };
-
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT, VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eCommandPool>
- {
- using Type = VULKAN_HPP_NAMESPACE::CommandPool;
+ value = true
+ };
};
-
-
template <>
- struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::CommandPool>
+ struct StructExtends<DedicatedAllocationImageCreateInfoNV, ImageCreateInfo>
{
- static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
- };
-
- struct CommandBufferAllocateInfo
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCommandBufferAllocateInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR CommandBufferAllocateInfo(VULKAN_HPP_NAMESPACE::CommandPool commandPool_ = {}, VULKAN_HPP_NAMESPACE::CommandBufferLevel level_ = VULKAN_HPP_NAMESPACE::CommandBufferLevel::ePrimary, uint32_t commandBufferCount_ = {}) VULKAN_HPP_NOEXCEPT
- : commandPool( commandPool_ ), level( level_ ), commandBufferCount( commandBufferCount_ )
- {}
-
- VULKAN_HPP_CONSTEXPR CommandBufferAllocateInfo( CommandBufferAllocateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- CommandBufferAllocateInfo( VkCommandBufferAllocateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- CommandBufferAllocateInfo & operator=( VkCommandBufferAllocateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CommandBufferAllocateInfo const *>( &rhs );
- return *this;
- }
-
- CommandBufferAllocateInfo & operator=( CommandBufferAllocateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( CommandBufferAllocateInfo ) );
- return *this;
- }
-
- CommandBufferAllocateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- CommandBufferAllocateInfo & setCommandPool( VULKAN_HPP_NAMESPACE::CommandPool commandPool_ ) VULKAN_HPP_NOEXCEPT
- {
- commandPool = commandPool_;
- return *this;
- }
-
- CommandBufferAllocateInfo & setLevel( VULKAN_HPP_NAMESPACE::CommandBufferLevel level_ ) VULKAN_HPP_NOEXCEPT
- {
- level = level_;
- return *this;
- }
-
- CommandBufferAllocateInfo & setCommandBufferCount( uint32_t commandBufferCount_ ) VULKAN_HPP_NOEXCEPT
- {
- commandBufferCount = commandBufferCount_;
- return *this;
- }
-
-
- operator VkCommandBufferAllocateInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkCommandBufferAllocateInfo*>( this );
- }
-
- operator VkCommandBufferAllocateInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkCommandBufferAllocateInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( CommandBufferAllocateInfo const& ) const = default;
-#else
- bool operator==( CommandBufferAllocateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( commandPool == rhs.commandPool )
- && ( level == rhs.level )
- && ( commandBufferCount == rhs.commandBufferCount );
- }
-
- bool operator!=( CommandBufferAllocateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCommandBufferAllocateInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::CommandPool commandPool = {};
- VULKAN_HPP_NAMESPACE::CommandBufferLevel level = VULKAN_HPP_NAMESPACE::CommandBufferLevel::ePrimary;
- uint32_t commandBufferCount = {};
-
+ value = true
+ };
};
- static_assert( sizeof( CommandBufferAllocateInfo ) == sizeof( VkCommandBufferAllocateInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<CommandBufferAllocateInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eCommandBufferAllocateInfo>
- {
- using Type = CommandBufferAllocateInfo;
- };
-
- class RenderPass
+ struct StructExtends<DedicatedAllocationMemoryAllocateInfoNV, MemoryAllocateInfo>
{
- public:
- using CType = VkRenderPass;
-
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::eRenderPass;
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType = VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eRenderPass;
-
- public:
- VULKAN_HPP_CONSTEXPR RenderPass() VULKAN_HPP_NOEXCEPT
- : m_renderPass(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_CONSTEXPR RenderPass( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- : m_renderPass(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_TYPESAFE_EXPLICIT RenderPass( VkRenderPass renderPass ) VULKAN_HPP_NOEXCEPT
- : m_renderPass( renderPass )
- {}
-
-#if defined(VULKAN_HPP_TYPESAFE_CONVERSION)
- RenderPass & operator=(VkRenderPass renderPass) VULKAN_HPP_NOEXCEPT
+ enum
{
- m_renderPass = renderPass;
- return *this;
- }
-#endif
-
- RenderPass & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- {
- m_renderPass = VK_NULL_HANDLE;
- return *this;
- }
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( RenderPass const& ) const = default;
-#else
- bool operator==( RenderPass const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_renderPass == rhs.m_renderPass;
- }
-
- bool operator!=(RenderPass const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_renderPass != rhs.m_renderPass;
- }
-
- bool operator<(RenderPass const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_renderPass < rhs.m_renderPass;
- }
-#endif
-
- VULKAN_HPP_TYPESAFE_EXPLICIT operator VkRenderPass() const VULKAN_HPP_NOEXCEPT
- {
- return m_renderPass;
- }
-
- explicit operator bool() const VULKAN_HPP_NOEXCEPT
- {
- return m_renderPass != VK_NULL_HANDLE;
- }
-
- bool operator!() const VULKAN_HPP_NOEXCEPT
- {
- return m_renderPass == VK_NULL_HANDLE;
- }
-
- private:
- VkRenderPass m_renderPass;
- };
- static_assert( sizeof( VULKAN_HPP_NAMESPACE::RenderPass ) == sizeof( VkRenderPass ), "handle and wrapper have different size!" );
-
- template <>
- struct VULKAN_HPP_DEPRECATED("vk::cpp_type is deprecated. Use vk::CppType instead.") cpp_type<ObjectType::eRenderPass>
- {
- using type = VULKAN_HPP_NAMESPACE::RenderPass;
- };
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eRenderPass>
- {
- using Type = VULKAN_HPP_NAMESPACE::RenderPass;
- };
-
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT, VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eRenderPass>
- {
- using Type = VULKAN_HPP_NAMESPACE::RenderPass;
+ value = true
+ };
};
-
-
template <>
- struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::RenderPass>
+ struct StructExtends<DescriptorPoolInlineUniformBlockCreateInfoEXT, DescriptorPoolCreateInfo>
{
- static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
- };
-
- class Framebuffer
- {
- public:
- using CType = VkFramebuffer;
-
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::eFramebuffer;
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType = VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eFramebuffer;
-
- public:
- VULKAN_HPP_CONSTEXPR Framebuffer() VULKAN_HPP_NOEXCEPT
- : m_framebuffer(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_CONSTEXPR Framebuffer( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- : m_framebuffer(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_TYPESAFE_EXPLICIT Framebuffer( VkFramebuffer framebuffer ) VULKAN_HPP_NOEXCEPT
- : m_framebuffer( framebuffer )
- {}
-
-#if defined(VULKAN_HPP_TYPESAFE_CONVERSION)
- Framebuffer & operator=(VkFramebuffer framebuffer) VULKAN_HPP_NOEXCEPT
- {
- m_framebuffer = framebuffer;
- return *this;
- }
-#endif
-
- Framebuffer & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- {
- m_framebuffer = VK_NULL_HANDLE;
- return *this;
- }
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( Framebuffer const& ) const = default;
-#else
- bool operator==( Framebuffer const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_framebuffer == rhs.m_framebuffer;
- }
-
- bool operator!=(Framebuffer const & rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return m_framebuffer != rhs.m_framebuffer;
- }
-
- bool operator<(Framebuffer const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_framebuffer < rhs.m_framebuffer;
- }
-#endif
-
- VULKAN_HPP_TYPESAFE_EXPLICIT operator VkFramebuffer() const VULKAN_HPP_NOEXCEPT
- {
- return m_framebuffer;
- }
-
- explicit operator bool() const VULKAN_HPP_NOEXCEPT
- {
- return m_framebuffer != VK_NULL_HANDLE;
- }
-
- bool operator!() const VULKAN_HPP_NOEXCEPT
- {
- return m_framebuffer == VK_NULL_HANDLE;
- }
-
- private:
- VkFramebuffer m_framebuffer;
- };
- static_assert( sizeof( VULKAN_HPP_NAMESPACE::Framebuffer ) == sizeof( VkFramebuffer ), "handle and wrapper have different size!" );
-
- template <>
- struct VULKAN_HPP_DEPRECATED("vk::cpp_type is deprecated. Use vk::CppType instead.") cpp_type<ObjectType::eFramebuffer>
- {
- using type = VULKAN_HPP_NAMESPACE::Framebuffer;
- };
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eFramebuffer>
- {
- using Type = VULKAN_HPP_NAMESPACE::Framebuffer;
- };
-
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT, VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eFramebuffer>
- {
- using Type = VULKAN_HPP_NAMESPACE::Framebuffer;
+ value = true
+ };
};
-
-
template <>
- struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::Framebuffer>
+ struct StructExtends<DescriptorSetLayoutBindingFlagsCreateInfo, DescriptorSetLayoutCreateInfo>
{
- static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
- };
-
- struct CommandBufferInheritanceInfo
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCommandBufferInheritanceInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR CommandBufferInheritanceInfo(VULKAN_HPP_NAMESPACE::RenderPass renderPass_ = {}, uint32_t subpass_ = {}, VULKAN_HPP_NAMESPACE::Framebuffer framebuffer_ = {}, VULKAN_HPP_NAMESPACE::Bool32 occlusionQueryEnable_ = {}, VULKAN_HPP_NAMESPACE::QueryControlFlags queryFlags_ = {}, VULKAN_HPP_NAMESPACE::QueryPipelineStatisticFlags pipelineStatistics_ = {}) VULKAN_HPP_NOEXCEPT
- : renderPass( renderPass_ ), subpass( subpass_ ), framebuffer( framebuffer_ ), occlusionQueryEnable( occlusionQueryEnable_ ), queryFlags( queryFlags_ ), pipelineStatistics( pipelineStatistics_ )
- {}
-
- VULKAN_HPP_CONSTEXPR CommandBufferInheritanceInfo( CommandBufferInheritanceInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- CommandBufferInheritanceInfo( VkCommandBufferInheritanceInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- CommandBufferInheritanceInfo & operator=( VkCommandBufferInheritanceInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CommandBufferInheritanceInfo const *>( &rhs );
- return *this;
- }
-
- CommandBufferInheritanceInfo & operator=( CommandBufferInheritanceInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( CommandBufferInheritanceInfo ) );
- return *this;
- }
-
- CommandBufferInheritanceInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- CommandBufferInheritanceInfo & setRenderPass( VULKAN_HPP_NAMESPACE::RenderPass renderPass_ ) VULKAN_HPP_NOEXCEPT
- {
- renderPass = renderPass_;
- return *this;
- }
-
- CommandBufferInheritanceInfo & setSubpass( uint32_t subpass_ ) VULKAN_HPP_NOEXCEPT
- {
- subpass = subpass_;
- return *this;
- }
-
- CommandBufferInheritanceInfo & setFramebuffer( VULKAN_HPP_NAMESPACE::Framebuffer framebuffer_ ) VULKAN_HPP_NOEXCEPT
- {
- framebuffer = framebuffer_;
- return *this;
- }
-
- CommandBufferInheritanceInfo & setOcclusionQueryEnable( VULKAN_HPP_NAMESPACE::Bool32 occlusionQueryEnable_ ) VULKAN_HPP_NOEXCEPT
- {
- occlusionQueryEnable = occlusionQueryEnable_;
- return *this;
- }
-
- CommandBufferInheritanceInfo & setQueryFlags( VULKAN_HPP_NAMESPACE::QueryControlFlags queryFlags_ ) VULKAN_HPP_NOEXCEPT
- {
- queryFlags = queryFlags_;
- return *this;
- }
-
- CommandBufferInheritanceInfo & setPipelineStatistics( VULKAN_HPP_NAMESPACE::QueryPipelineStatisticFlags pipelineStatistics_ ) VULKAN_HPP_NOEXCEPT
- {
- pipelineStatistics = pipelineStatistics_;
- return *this;
- }
-
-
- operator VkCommandBufferInheritanceInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkCommandBufferInheritanceInfo*>( this );
- }
-
- operator VkCommandBufferInheritanceInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkCommandBufferInheritanceInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( CommandBufferInheritanceInfo const& ) const = default;
-#else
- bool operator==( CommandBufferInheritanceInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( renderPass == rhs.renderPass )
- && ( subpass == rhs.subpass )
- && ( framebuffer == rhs.framebuffer )
- && ( occlusionQueryEnable == rhs.occlusionQueryEnable )
- && ( queryFlags == rhs.queryFlags )
- && ( pipelineStatistics == rhs.pipelineStatistics );
- }
-
- bool operator!=( CommandBufferInheritanceInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCommandBufferInheritanceInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::RenderPass renderPass = {};
- uint32_t subpass = {};
- VULKAN_HPP_NAMESPACE::Framebuffer framebuffer = {};
- VULKAN_HPP_NAMESPACE::Bool32 occlusionQueryEnable = {};
- VULKAN_HPP_NAMESPACE::QueryControlFlags queryFlags = {};
- VULKAN_HPP_NAMESPACE::QueryPipelineStatisticFlags pipelineStatistics = {};
-
+ value = true
+ };
};
- static_assert( sizeof( CommandBufferInheritanceInfo ) == sizeof( VkCommandBufferInheritanceInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<CommandBufferInheritanceInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eCommandBufferInheritanceInfo>
- {
- using Type = CommandBufferInheritanceInfo;
- };
-
- struct CommandBufferBeginInfo
+ struct StructExtends<DescriptorSetVariableDescriptorCountAllocateInfo, DescriptorSetAllocateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCommandBufferBeginInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR CommandBufferBeginInfo(VULKAN_HPP_NAMESPACE::CommandBufferUsageFlags flags_ = {}, const VULKAN_HPP_NAMESPACE::CommandBufferInheritanceInfo* pInheritanceInfo_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), pInheritanceInfo( pInheritanceInfo_ )
- {}
-
- VULKAN_HPP_CONSTEXPR CommandBufferBeginInfo( CommandBufferBeginInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- CommandBufferBeginInfo( VkCommandBufferBeginInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- CommandBufferBeginInfo & operator=( VkCommandBufferBeginInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CommandBufferBeginInfo const *>( &rhs );
- return *this;
- }
-
- CommandBufferBeginInfo & operator=( CommandBufferBeginInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( CommandBufferBeginInfo ) );
- return *this;
- }
-
- CommandBufferBeginInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- CommandBufferBeginInfo & setFlags( VULKAN_HPP_NAMESPACE::CommandBufferUsageFlags flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- CommandBufferBeginInfo & setPInheritanceInfo( const VULKAN_HPP_NAMESPACE::CommandBufferInheritanceInfo* pInheritanceInfo_ ) VULKAN_HPP_NOEXCEPT
- {
- pInheritanceInfo = pInheritanceInfo_;
- return *this;
- }
-
-
- operator VkCommandBufferBeginInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkCommandBufferBeginInfo*>( this );
- }
-
- operator VkCommandBufferBeginInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkCommandBufferBeginInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( CommandBufferBeginInfo const& ) const = default;
-#else
- bool operator==( CommandBufferBeginInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( pInheritanceInfo == rhs.pInheritanceInfo );
- }
-
- bool operator!=( CommandBufferBeginInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCommandBufferBeginInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::CommandBufferUsageFlags flags = {};
- const VULKAN_HPP_NAMESPACE::CommandBufferInheritanceInfo* pInheritanceInfo = {};
-
+ value = true
+ };
};
- static_assert( sizeof( CommandBufferBeginInfo ) == sizeof( VkCommandBufferBeginInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<CommandBufferBeginInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eCommandBufferBeginInfo>
+ struct StructExtends<DescriptorSetVariableDescriptorCountLayoutSupport, DescriptorSetLayoutSupport>
{
- using Type = CommandBufferBeginInfo;
- };
-
- struct CommandBufferInheritanceConditionalRenderingInfoEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCommandBufferInheritanceConditionalRenderingInfoEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR CommandBufferInheritanceConditionalRenderingInfoEXT(VULKAN_HPP_NAMESPACE::Bool32 conditionalRenderingEnable_ = {}) VULKAN_HPP_NOEXCEPT
- : conditionalRenderingEnable( conditionalRenderingEnable_ )
- {}
-
- VULKAN_HPP_CONSTEXPR CommandBufferInheritanceConditionalRenderingInfoEXT( CommandBufferInheritanceConditionalRenderingInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- CommandBufferInheritanceConditionalRenderingInfoEXT( VkCommandBufferInheritanceConditionalRenderingInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- CommandBufferInheritanceConditionalRenderingInfoEXT & operator=( VkCommandBufferInheritanceConditionalRenderingInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CommandBufferInheritanceConditionalRenderingInfoEXT const *>( &rhs );
- return *this;
- }
-
- CommandBufferInheritanceConditionalRenderingInfoEXT & operator=( CommandBufferInheritanceConditionalRenderingInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( CommandBufferInheritanceConditionalRenderingInfoEXT ) );
- return *this;
- }
-
- CommandBufferInheritanceConditionalRenderingInfoEXT & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- CommandBufferInheritanceConditionalRenderingInfoEXT & setConditionalRenderingEnable( VULKAN_HPP_NAMESPACE::Bool32 conditionalRenderingEnable_ ) VULKAN_HPP_NOEXCEPT
- {
- conditionalRenderingEnable = conditionalRenderingEnable_;
- return *this;
- }
-
-
- operator VkCommandBufferInheritanceConditionalRenderingInfoEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkCommandBufferInheritanceConditionalRenderingInfoEXT*>( this );
- }
-
- operator VkCommandBufferInheritanceConditionalRenderingInfoEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkCommandBufferInheritanceConditionalRenderingInfoEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( CommandBufferInheritanceConditionalRenderingInfoEXT const& ) const = default;
-#else
- bool operator==( CommandBufferInheritanceConditionalRenderingInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( conditionalRenderingEnable == rhs.conditionalRenderingEnable );
- }
-
- bool operator!=( CommandBufferInheritanceConditionalRenderingInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCommandBufferInheritanceConditionalRenderingInfoEXT;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 conditionalRenderingEnable = {};
-
+ value = true
+ };
};
- static_assert( sizeof( CommandBufferInheritanceConditionalRenderingInfoEXT ) == sizeof( VkCommandBufferInheritanceConditionalRenderingInfoEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<CommandBufferInheritanceConditionalRenderingInfoEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eCommandBufferInheritanceConditionalRenderingInfoEXT>
+ struct StructExtends<DeviceDeviceMemoryReportCreateInfoEXT, DeviceCreateInfo>
{
- using Type = CommandBufferInheritanceConditionalRenderingInfoEXT;
- };
-
- struct CommandBufferInheritanceRenderPassTransformInfoQCOM
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCommandBufferInheritanceRenderPassTransformInfoQCOM;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR CommandBufferInheritanceRenderPassTransformInfoQCOM(VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR transform_ = VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR::eIdentity, VULKAN_HPP_NAMESPACE::Rect2D renderArea_ = {}) VULKAN_HPP_NOEXCEPT
- : transform( transform_ ), renderArea( renderArea_ )
- {}
-
- VULKAN_HPP_CONSTEXPR CommandBufferInheritanceRenderPassTransformInfoQCOM( CommandBufferInheritanceRenderPassTransformInfoQCOM const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- CommandBufferInheritanceRenderPassTransformInfoQCOM( VkCommandBufferInheritanceRenderPassTransformInfoQCOM const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- CommandBufferInheritanceRenderPassTransformInfoQCOM & operator=( VkCommandBufferInheritanceRenderPassTransformInfoQCOM const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CommandBufferInheritanceRenderPassTransformInfoQCOM const *>( &rhs );
- return *this;
- }
-
- CommandBufferInheritanceRenderPassTransformInfoQCOM & operator=( CommandBufferInheritanceRenderPassTransformInfoQCOM const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( CommandBufferInheritanceRenderPassTransformInfoQCOM ) );
- return *this;
- }
-
- CommandBufferInheritanceRenderPassTransformInfoQCOM & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- CommandBufferInheritanceRenderPassTransformInfoQCOM & setTransform( VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR transform_ ) VULKAN_HPP_NOEXCEPT
- {
- transform = transform_;
- return *this;
- }
-
- CommandBufferInheritanceRenderPassTransformInfoQCOM & setRenderArea( VULKAN_HPP_NAMESPACE::Rect2D const & renderArea_ ) VULKAN_HPP_NOEXCEPT
- {
- renderArea = renderArea_;
- return *this;
- }
-
-
- operator VkCommandBufferInheritanceRenderPassTransformInfoQCOM const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkCommandBufferInheritanceRenderPassTransformInfoQCOM*>( this );
- }
-
- operator VkCommandBufferInheritanceRenderPassTransformInfoQCOM &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkCommandBufferInheritanceRenderPassTransformInfoQCOM*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( CommandBufferInheritanceRenderPassTransformInfoQCOM const& ) const = default;
-#else
- bool operator==( CommandBufferInheritanceRenderPassTransformInfoQCOM const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( transform == rhs.transform )
- && ( renderArea == rhs.renderArea );
- }
-
- bool operator!=( CommandBufferInheritanceRenderPassTransformInfoQCOM const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCommandBufferInheritanceRenderPassTransformInfoQCOM;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR transform = VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR::eIdentity;
- VULKAN_HPP_NAMESPACE::Rect2D renderArea = {};
-
+ value = true
+ };
};
- static_assert( sizeof( CommandBufferInheritanceRenderPassTransformInfoQCOM ) == sizeof( VkCommandBufferInheritanceRenderPassTransformInfoQCOM ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<CommandBufferInheritanceRenderPassTransformInfoQCOM>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eCommandBufferInheritanceRenderPassTransformInfoQCOM>
- {
- using Type = CommandBufferInheritanceRenderPassTransformInfoQCOM;
- };
-
- struct CommandPoolCreateInfo
+ struct StructExtends<DeviceDiagnosticsConfigCreateInfoNV, DeviceCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCommandPoolCreateInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR CommandPoolCreateInfo(VULKAN_HPP_NAMESPACE::CommandPoolCreateFlags flags_ = {}, uint32_t queueFamilyIndex_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), queueFamilyIndex( queueFamilyIndex_ )
- {}
-
- VULKAN_HPP_CONSTEXPR CommandPoolCreateInfo( CommandPoolCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- CommandPoolCreateInfo( VkCommandPoolCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- CommandPoolCreateInfo & operator=( VkCommandPoolCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CommandPoolCreateInfo const *>( &rhs );
- return *this;
- }
-
- CommandPoolCreateInfo & operator=( CommandPoolCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( CommandPoolCreateInfo ) );
- return *this;
- }
-
- CommandPoolCreateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- CommandPoolCreateInfo & setFlags( VULKAN_HPP_NAMESPACE::CommandPoolCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- CommandPoolCreateInfo & setQueueFamilyIndex( uint32_t queueFamilyIndex_ ) VULKAN_HPP_NOEXCEPT
- {
- queueFamilyIndex = queueFamilyIndex_;
- return *this;
- }
-
-
- operator VkCommandPoolCreateInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkCommandPoolCreateInfo*>( this );
- }
-
- operator VkCommandPoolCreateInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkCommandPoolCreateInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( CommandPoolCreateInfo const& ) const = default;
-#else
- bool operator==( CommandPoolCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( queueFamilyIndex == rhs.queueFamilyIndex );
- }
-
- bool operator!=( CommandPoolCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCommandPoolCreateInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::CommandPoolCreateFlags flags = {};
- uint32_t queueFamilyIndex = {};
-
+ value = true
+ };
};
- static_assert( sizeof( CommandPoolCreateInfo ) == sizeof( VkCommandPoolCreateInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<CommandPoolCreateInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eCommandPoolCreateInfo>
+ struct StructExtends<DeviceGroupBindSparseInfo, BindSparseInfo>
{
- using Type = CommandPoolCreateInfo;
- };
-
- class ShaderModule
- {
- public:
- using CType = VkShaderModule;
-
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::eShaderModule;
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType = VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eShaderModule;
-
- public:
- VULKAN_HPP_CONSTEXPR ShaderModule() VULKAN_HPP_NOEXCEPT
- : m_shaderModule(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_CONSTEXPR ShaderModule( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- : m_shaderModule(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_TYPESAFE_EXPLICIT ShaderModule( VkShaderModule shaderModule ) VULKAN_HPP_NOEXCEPT
- : m_shaderModule( shaderModule )
- {}
-
-#if defined(VULKAN_HPP_TYPESAFE_CONVERSION)
- ShaderModule & operator=(VkShaderModule shaderModule) VULKAN_HPP_NOEXCEPT
+ enum
{
- m_shaderModule = shaderModule;
- return *this;
- }
-#endif
-
- ShaderModule & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- {
- m_shaderModule = VK_NULL_HANDLE;
- return *this;
- }
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ShaderModule const& ) const = default;
-#else
- bool operator==( ShaderModule const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_shaderModule == rhs.m_shaderModule;
- }
-
- bool operator!=(ShaderModule const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_shaderModule != rhs.m_shaderModule;
- }
-
- bool operator<(ShaderModule const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_shaderModule < rhs.m_shaderModule;
- }
-#endif
-
- VULKAN_HPP_TYPESAFE_EXPLICIT operator VkShaderModule() const VULKAN_HPP_NOEXCEPT
- {
- return m_shaderModule;
- }
-
- explicit operator bool() const VULKAN_HPP_NOEXCEPT
- {
- return m_shaderModule != VK_NULL_HANDLE;
- }
-
- bool operator!() const VULKAN_HPP_NOEXCEPT
- {
- return m_shaderModule == VK_NULL_HANDLE;
- }
-
- private:
- VkShaderModule m_shaderModule;
- };
- static_assert( sizeof( VULKAN_HPP_NAMESPACE::ShaderModule ) == sizeof( VkShaderModule ), "handle and wrapper have different size!" );
-
- template <>
- struct VULKAN_HPP_DEPRECATED("vk::cpp_type is deprecated. Use vk::CppType instead.") cpp_type<ObjectType::eShaderModule>
- {
- using type = VULKAN_HPP_NAMESPACE::ShaderModule;
- };
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eShaderModule>
- {
- using Type = VULKAN_HPP_NAMESPACE::ShaderModule;
- };
-
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT, VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eShaderModule>
- {
- using Type = VULKAN_HPP_NAMESPACE::ShaderModule;
+ value = true
+ };
};
-
-
template <>
- struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::ShaderModule>
- {
- static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
- };
-
- struct SpecializationMapEntry
+ struct StructExtends<DeviceGroupCommandBufferBeginInfo, CommandBufferBeginInfo>
{
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR SpecializationMapEntry(uint32_t constantID_ = {}, uint32_t offset_ = {}, size_t size_ = {}) VULKAN_HPP_NOEXCEPT
- : constantID( constantID_ ), offset( offset_ ), size( size_ )
- {}
-
- VULKAN_HPP_CONSTEXPR SpecializationMapEntry( SpecializationMapEntry const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- SpecializationMapEntry( VkSpecializationMapEntry const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- SpecializationMapEntry & operator=( VkSpecializationMapEntry const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SpecializationMapEntry const *>( &rhs );
- return *this;
- }
-
- SpecializationMapEntry & operator=( SpecializationMapEntry const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( SpecializationMapEntry ) );
- return *this;
- }
-
- SpecializationMapEntry & setConstantID( uint32_t constantID_ ) VULKAN_HPP_NOEXCEPT
- {
- constantID = constantID_;
- return *this;
- }
-
- SpecializationMapEntry & setOffset( uint32_t offset_ ) VULKAN_HPP_NOEXCEPT
- {
- offset = offset_;
- return *this;
- }
-
- SpecializationMapEntry & setSize( size_t size_ ) VULKAN_HPP_NOEXCEPT
- {
- size = size_;
- return *this;
- }
-
-
- operator VkSpecializationMapEntry const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkSpecializationMapEntry*>( this );
- }
-
- operator VkSpecializationMapEntry &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkSpecializationMapEntry*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( SpecializationMapEntry const& ) const = default;
-#else
- bool operator==( SpecializationMapEntry const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( constantID == rhs.constantID )
- && ( offset == rhs.offset )
- && ( size == rhs.size );
- }
-
- bool operator!=( SpecializationMapEntry const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- uint32_t constantID = {};
- uint32_t offset = {};
- size_t size = {};
-
- };
- static_assert( sizeof( SpecializationMapEntry ) == sizeof( VkSpecializationMapEntry ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<SpecializationMapEntry>::value, "struct wrapper is not a standard layout!" );
-
- struct SpecializationInfo
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR SpecializationInfo(uint32_t mapEntryCount_ = {}, const VULKAN_HPP_NAMESPACE::SpecializationMapEntry* pMapEntries_ = {}, size_t dataSize_ = {}, const void* pData_ = {}) VULKAN_HPP_NOEXCEPT
- : mapEntryCount( mapEntryCount_ ), pMapEntries( pMapEntries_ ), dataSize( dataSize_ ), pData( pData_ )
- {}
-
- VULKAN_HPP_CONSTEXPR SpecializationInfo( SpecializationInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- SpecializationInfo( VkSpecializationInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- template <typename T>
- SpecializationInfo( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SpecializationMapEntry> const & mapEntries_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const T> const & data_ = {} )
- : mapEntryCount( static_cast<uint32_t>( mapEntries_.size() ) ), pMapEntries( mapEntries_.data() ), dataSize( data_.size() * sizeof(T) ), pData( data_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- SpecializationInfo & operator=( VkSpecializationInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SpecializationInfo const *>( &rhs );
- return *this;
- }
-
- SpecializationInfo & operator=( SpecializationInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( SpecializationInfo ) );
- return *this;
- }
-
- SpecializationInfo & setMapEntryCount( uint32_t mapEntryCount_ ) VULKAN_HPP_NOEXCEPT
- {
- mapEntryCount = mapEntryCount_;
- return *this;
- }
-
- SpecializationInfo & setPMapEntries( const VULKAN_HPP_NAMESPACE::SpecializationMapEntry* pMapEntries_ ) VULKAN_HPP_NOEXCEPT
- {
- pMapEntries = pMapEntries_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- SpecializationInfo & setMapEntries( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SpecializationMapEntry> const & mapEntries_ ) VULKAN_HPP_NOEXCEPT
- {
- mapEntryCount = static_cast<uint32_t>( mapEntries_.size() );
- pMapEntries = mapEntries_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- SpecializationInfo & setDataSize( size_t dataSize_ ) VULKAN_HPP_NOEXCEPT
- {
- dataSize = dataSize_;
- return *this;
- }
-
- SpecializationInfo & setPData( const void* pData_ ) VULKAN_HPP_NOEXCEPT
- {
- pData = pData_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- template <typename T>
- SpecializationInfo & setData( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const T> const & data_ ) VULKAN_HPP_NOEXCEPT
- {
- dataSize = data_.size() * sizeof(T);
- pData = data_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkSpecializationInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkSpecializationInfo*>( this );
- }
-
- operator VkSpecializationInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkSpecializationInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( SpecializationInfo const& ) const = default;
-#else
- bool operator==( SpecializationInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( mapEntryCount == rhs.mapEntryCount )
- && ( pMapEntries == rhs.pMapEntries )
- && ( dataSize == rhs.dataSize )
- && ( pData == rhs.pData );
- }
-
- bool operator!=( SpecializationInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- uint32_t mapEntryCount = {};
- const VULKAN_HPP_NAMESPACE::SpecializationMapEntry* pMapEntries = {};
- size_t dataSize = {};
- const void* pData = {};
-
- };
- static_assert( sizeof( SpecializationInfo ) == sizeof( VkSpecializationInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<SpecializationInfo>::value, "struct wrapper is not a standard layout!" );
-
- struct PipelineShaderStageCreateInfo
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineShaderStageCreateInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PipelineShaderStageCreateInfo(VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateFlags flags_ = {}, VULKAN_HPP_NAMESPACE::ShaderStageFlagBits stage_ = VULKAN_HPP_NAMESPACE::ShaderStageFlagBits::eVertex, VULKAN_HPP_NAMESPACE::ShaderModule module_ = {}, const char* pName_ = {}, const VULKAN_HPP_NAMESPACE::SpecializationInfo* pSpecializationInfo_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), stage( stage_ ), module( module_ ), pName( pName_ ), pSpecializationInfo( pSpecializationInfo_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PipelineShaderStageCreateInfo( PipelineShaderStageCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PipelineShaderStageCreateInfo( VkPipelineShaderStageCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PipelineShaderStageCreateInfo & operator=( VkPipelineShaderStageCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo const *>( &rhs );
- return *this;
- }
-
- PipelineShaderStageCreateInfo & operator=( PipelineShaderStageCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PipelineShaderStageCreateInfo ) );
- return *this;
- }
-
- PipelineShaderStageCreateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PipelineShaderStageCreateInfo & setFlags( VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- PipelineShaderStageCreateInfo & setStage( VULKAN_HPP_NAMESPACE::ShaderStageFlagBits stage_ ) VULKAN_HPP_NOEXCEPT
- {
- stage = stage_;
- return *this;
- }
-
- PipelineShaderStageCreateInfo & setModule( VULKAN_HPP_NAMESPACE::ShaderModule module_ ) VULKAN_HPP_NOEXCEPT
- {
- module = module_;
- return *this;
- }
-
- PipelineShaderStageCreateInfo & setPName( const char* pName_ ) VULKAN_HPP_NOEXCEPT
- {
- pName = pName_;
- return *this;
- }
-
- PipelineShaderStageCreateInfo & setPSpecializationInfo( const VULKAN_HPP_NAMESPACE::SpecializationInfo* pSpecializationInfo_ ) VULKAN_HPP_NOEXCEPT
- {
- pSpecializationInfo = pSpecializationInfo_;
- return *this;
- }
-
-
- operator VkPipelineShaderStageCreateInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPipelineShaderStageCreateInfo*>( this );
- }
-
- operator VkPipelineShaderStageCreateInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPipelineShaderStageCreateInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PipelineShaderStageCreateInfo const& ) const = default;
-#else
- bool operator==( PipelineShaderStageCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( stage == rhs.stage )
- && ( module == rhs.module )
- && ( pName == rhs.pName )
- && ( pSpecializationInfo == rhs.pSpecializationInfo );
- }
-
- bool operator!=( PipelineShaderStageCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineShaderStageCreateInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateFlags flags = {};
- VULKAN_HPP_NAMESPACE::ShaderStageFlagBits stage = VULKAN_HPP_NAMESPACE::ShaderStageFlagBits::eVertex;
- VULKAN_HPP_NAMESPACE::ShaderModule module = {};
- const char* pName = {};
- const VULKAN_HPP_NAMESPACE::SpecializationInfo* pSpecializationInfo = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PipelineShaderStageCreateInfo ) == sizeof( VkPipelineShaderStageCreateInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PipelineShaderStageCreateInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePipelineShaderStageCreateInfo>
- {
- using Type = PipelineShaderStageCreateInfo;
- };
-
- class PipelineLayout
+ struct StructExtends<DeviceGroupDeviceCreateInfo, DeviceCreateInfo>
{
- public:
- using CType = VkPipelineLayout;
-
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::ePipelineLayout;
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType = VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::ePipelineLayout;
-
- public:
- VULKAN_HPP_CONSTEXPR PipelineLayout() VULKAN_HPP_NOEXCEPT
- : m_pipelineLayout(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_CONSTEXPR PipelineLayout( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- : m_pipelineLayout(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_TYPESAFE_EXPLICIT PipelineLayout( VkPipelineLayout pipelineLayout ) VULKAN_HPP_NOEXCEPT
- : m_pipelineLayout( pipelineLayout )
- {}
-
-#if defined(VULKAN_HPP_TYPESAFE_CONVERSION)
- PipelineLayout & operator=(VkPipelineLayout pipelineLayout) VULKAN_HPP_NOEXCEPT
- {
- m_pipelineLayout = pipelineLayout;
- return *this;
- }
-#endif
-
- PipelineLayout & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
+ enum
{
- m_pipelineLayout = VK_NULL_HANDLE;
- return *this;
- }
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PipelineLayout const& ) const = default;
-#else
- bool operator==( PipelineLayout const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_pipelineLayout == rhs.m_pipelineLayout;
- }
-
- bool operator!=(PipelineLayout const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_pipelineLayout != rhs.m_pipelineLayout;
- }
-
- bool operator<(PipelineLayout const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_pipelineLayout < rhs.m_pipelineLayout;
- }
-#endif
-
- VULKAN_HPP_TYPESAFE_EXPLICIT operator VkPipelineLayout() const VULKAN_HPP_NOEXCEPT
- {
- return m_pipelineLayout;
- }
-
- explicit operator bool() const VULKAN_HPP_NOEXCEPT
- {
- return m_pipelineLayout != VK_NULL_HANDLE;
- }
-
- bool operator!() const VULKAN_HPP_NOEXCEPT
- {
- return m_pipelineLayout == VK_NULL_HANDLE;
- }
-
- private:
- VkPipelineLayout m_pipelineLayout;
- };
- static_assert( sizeof( VULKAN_HPP_NAMESPACE::PipelineLayout ) == sizeof( VkPipelineLayout ), "handle and wrapper have different size!" );
-
- template <>
- struct VULKAN_HPP_DEPRECATED("vk::cpp_type is deprecated. Use vk::CppType instead.") cpp_type<ObjectType::ePipelineLayout>
- {
- using type = VULKAN_HPP_NAMESPACE::PipelineLayout;
- };
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::ePipelineLayout>
- {
- using Type = VULKAN_HPP_NAMESPACE::PipelineLayout;
- };
-
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT, VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::ePipelineLayout>
- {
- using Type = VULKAN_HPP_NAMESPACE::PipelineLayout;
+ value = true
+ };
};
-
-
template <>
- struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::PipelineLayout>
+ struct StructExtends<DeviceGroupPresentInfoKHR, PresentInfoKHR>
{
- static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
- };
-
- class Pipeline
- {
- public:
- using CType = VkPipeline;
-
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::ePipeline;
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType = VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::ePipeline;
-
- public:
- VULKAN_HPP_CONSTEXPR Pipeline() VULKAN_HPP_NOEXCEPT
- : m_pipeline(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_CONSTEXPR Pipeline( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- : m_pipeline(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_TYPESAFE_EXPLICIT Pipeline( VkPipeline pipeline ) VULKAN_HPP_NOEXCEPT
- : m_pipeline( pipeline )
- {}
-
-#if defined(VULKAN_HPP_TYPESAFE_CONVERSION)
- Pipeline & operator=(VkPipeline pipeline) VULKAN_HPP_NOEXCEPT
- {
- m_pipeline = pipeline;
- return *this;
- }
-#endif
-
- Pipeline & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- {
- m_pipeline = VK_NULL_HANDLE;
- return *this;
- }
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( Pipeline const& ) const = default;
-#else
- bool operator==( Pipeline const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_pipeline == rhs.m_pipeline;
- }
-
- bool operator!=(Pipeline const & rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return m_pipeline != rhs.m_pipeline;
- }
-
- bool operator<(Pipeline const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_pipeline < rhs.m_pipeline;
- }
-#endif
-
- VULKAN_HPP_TYPESAFE_EXPLICIT operator VkPipeline() const VULKAN_HPP_NOEXCEPT
- {
- return m_pipeline;
- }
-
- explicit operator bool() const VULKAN_HPP_NOEXCEPT
- {
- return m_pipeline != VK_NULL_HANDLE;
- }
-
- bool operator!() const VULKAN_HPP_NOEXCEPT
- {
- return m_pipeline == VK_NULL_HANDLE;
- }
-
- private:
- VkPipeline m_pipeline;
- };
- static_assert( sizeof( VULKAN_HPP_NAMESPACE::Pipeline ) == sizeof( VkPipeline ), "handle and wrapper have different size!" );
-
- template <>
- struct VULKAN_HPP_DEPRECATED("vk::cpp_type is deprecated. Use vk::CppType instead.") cpp_type<ObjectType::ePipeline>
- {
- using type = VULKAN_HPP_NAMESPACE::Pipeline;
- };
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::ePipeline>
- {
- using Type = VULKAN_HPP_NAMESPACE::Pipeline;
- };
-
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT, VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::ePipeline>
- {
- using Type = VULKAN_HPP_NAMESPACE::Pipeline;
+ value = true
+ };
};
-
-
template <>
- struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::Pipeline>
- {
- static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
- };
-
- struct ComputePipelineCreateInfo
+ struct StructExtends<DeviceGroupRenderPassBeginInfo, RenderPassBeginInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eComputePipelineCreateInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ComputePipelineCreateInfo(VULKAN_HPP_NAMESPACE::PipelineCreateFlags flags_ = {}, VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo stage_ = {}, VULKAN_HPP_NAMESPACE::PipelineLayout layout_ = {}, VULKAN_HPP_NAMESPACE::Pipeline basePipelineHandle_ = {}, int32_t basePipelineIndex_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), stage( stage_ ), layout( layout_ ), basePipelineHandle( basePipelineHandle_ ), basePipelineIndex( basePipelineIndex_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ComputePipelineCreateInfo( ComputePipelineCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ComputePipelineCreateInfo( VkComputePipelineCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ComputePipelineCreateInfo & operator=( VkComputePipelineCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ComputePipelineCreateInfo const *>( &rhs );
- return *this;
- }
-
- ComputePipelineCreateInfo & operator=( ComputePipelineCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ComputePipelineCreateInfo ) );
- return *this;
- }
-
- ComputePipelineCreateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- ComputePipelineCreateInfo & setFlags( VULKAN_HPP_NAMESPACE::PipelineCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- ComputePipelineCreateInfo & setStage( VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo const & stage_ ) VULKAN_HPP_NOEXCEPT
- {
- stage = stage_;
- return *this;
- }
-
- ComputePipelineCreateInfo & setLayout( VULKAN_HPP_NAMESPACE::PipelineLayout layout_ ) VULKAN_HPP_NOEXCEPT
- {
- layout = layout_;
- return *this;
- }
-
- ComputePipelineCreateInfo & setBasePipelineHandle( VULKAN_HPP_NAMESPACE::Pipeline basePipelineHandle_ ) VULKAN_HPP_NOEXCEPT
- {
- basePipelineHandle = basePipelineHandle_;
- return *this;
- }
-
- ComputePipelineCreateInfo & setBasePipelineIndex( int32_t basePipelineIndex_ ) VULKAN_HPP_NOEXCEPT
- {
- basePipelineIndex = basePipelineIndex_;
- return *this;
- }
-
-
- operator VkComputePipelineCreateInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkComputePipelineCreateInfo*>( this );
- }
-
- operator VkComputePipelineCreateInfo &() VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<VkComputePipelineCreateInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ComputePipelineCreateInfo const& ) const = default;
-#else
- bool operator==( ComputePipelineCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( stage == rhs.stage )
- && ( layout == rhs.layout )
- && ( basePipelineHandle == rhs.basePipelineHandle )
- && ( basePipelineIndex == rhs.basePipelineIndex );
- }
-
- bool operator!=( ComputePipelineCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eComputePipelineCreateInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::PipelineCreateFlags flags = {};
- VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo stage = {};
- VULKAN_HPP_NAMESPACE::PipelineLayout layout = {};
- VULKAN_HPP_NAMESPACE::Pipeline basePipelineHandle = {};
- int32_t basePipelineIndex = {};
-
+ value = true
+ };
};
- static_assert( sizeof( ComputePipelineCreateInfo ) == sizeof( VkComputePipelineCreateInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ComputePipelineCreateInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eComputePipelineCreateInfo>
+ struct StructExtends<DeviceGroupSubmitInfo, SubmitInfo>
{
- using Type = ComputePipelineCreateInfo;
- };
-
- struct ConditionalRenderingBeginInfoEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eConditionalRenderingBeginInfoEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ConditionalRenderingBeginInfoEXT(VULKAN_HPP_NAMESPACE::Buffer buffer_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize offset_ = {}, VULKAN_HPP_NAMESPACE::ConditionalRenderingFlagsEXT flags_ = {}) VULKAN_HPP_NOEXCEPT
- : buffer( buffer_ ), offset( offset_ ), flags( flags_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ConditionalRenderingBeginInfoEXT( ConditionalRenderingBeginInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ConditionalRenderingBeginInfoEXT( VkConditionalRenderingBeginInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ConditionalRenderingBeginInfoEXT & operator=( VkConditionalRenderingBeginInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ConditionalRenderingBeginInfoEXT const *>( &rhs );
- return *this;
- }
-
- ConditionalRenderingBeginInfoEXT & operator=( ConditionalRenderingBeginInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ConditionalRenderingBeginInfoEXT ) );
- return *this;
- }
-
- ConditionalRenderingBeginInfoEXT & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- ConditionalRenderingBeginInfoEXT & setBuffer( VULKAN_HPP_NAMESPACE::Buffer buffer_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- buffer = buffer_;
- return *this;
- }
-
- ConditionalRenderingBeginInfoEXT & setOffset( VULKAN_HPP_NAMESPACE::DeviceSize offset_ ) VULKAN_HPP_NOEXCEPT
- {
- offset = offset_;
- return *this;
- }
-
- ConditionalRenderingBeginInfoEXT & setFlags( VULKAN_HPP_NAMESPACE::ConditionalRenderingFlagsEXT flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
-
- operator VkConditionalRenderingBeginInfoEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkConditionalRenderingBeginInfoEXT*>( this );
- }
-
- operator VkConditionalRenderingBeginInfoEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkConditionalRenderingBeginInfoEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ConditionalRenderingBeginInfoEXT const& ) const = default;
-#else
- bool operator==( ConditionalRenderingBeginInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( buffer == rhs.buffer )
- && ( offset == rhs.offset )
- && ( flags == rhs.flags );
- }
-
- bool operator!=( ConditionalRenderingBeginInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eConditionalRenderingBeginInfoEXT;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::Buffer buffer = {};
- VULKAN_HPP_NAMESPACE::DeviceSize offset = {};
- VULKAN_HPP_NAMESPACE::ConditionalRenderingFlagsEXT flags = {};
-
+ value = true
+ };
};
- static_assert( sizeof( ConditionalRenderingBeginInfoEXT ) == sizeof( VkConditionalRenderingBeginInfoEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ConditionalRenderingBeginInfoEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eConditionalRenderingBeginInfoEXT>
- {
- using Type = ConditionalRenderingBeginInfoEXT;
- };
-
- struct ConformanceVersion
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ConformanceVersion(uint8_t major_ = {}, uint8_t minor_ = {}, uint8_t subminor_ = {}, uint8_t patch_ = {}) VULKAN_HPP_NOEXCEPT
- : major( major_ ), minor( minor_ ), subminor( subminor_ ), patch( patch_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ConformanceVersion( ConformanceVersion const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ConformanceVersion( VkConformanceVersion const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ConformanceVersion & operator=( VkConformanceVersion const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ConformanceVersion const *>( &rhs );
- return *this;
- }
-
- ConformanceVersion & operator=( ConformanceVersion const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ConformanceVersion ) );
- return *this;
- }
-
- ConformanceVersion & setMajor( uint8_t major_ ) VULKAN_HPP_NOEXCEPT
- {
- major = major_;
- return *this;
- }
-
- ConformanceVersion & setMinor( uint8_t minor_ ) VULKAN_HPP_NOEXCEPT
- {
- minor = minor_;
- return *this;
- }
-
- ConformanceVersion & setSubminor( uint8_t subminor_ ) VULKAN_HPP_NOEXCEPT
- {
- subminor = subminor_;
- return *this;
- }
-
- ConformanceVersion & setPatch( uint8_t patch_ ) VULKAN_HPP_NOEXCEPT
- {
- patch = patch_;
- return *this;
- }
-
-
- operator VkConformanceVersion const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkConformanceVersion*>( this );
- }
-
- operator VkConformanceVersion &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkConformanceVersion*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ConformanceVersion const& ) const = default;
-#else
- bool operator==( ConformanceVersion const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( major == rhs.major )
- && ( minor == rhs.minor )
- && ( subminor == rhs.subminor )
- && ( patch == rhs.patch );
- }
-
- bool operator!=( ConformanceVersion const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- uint8_t major = {};
- uint8_t minor = {};
- uint8_t subminor = {};
- uint8_t patch = {};
-
- };
- static_assert( sizeof( ConformanceVersion ) == sizeof( VkConformanceVersion ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ConformanceVersion>::value, "struct wrapper is not a standard layout!" );
- using ConformanceVersionKHR = ConformanceVersion;
-
- struct CooperativeMatrixPropertiesNV
+ struct StructExtends<DeviceGroupSwapchainCreateInfoKHR, SwapchainCreateInfoKHR>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCooperativeMatrixPropertiesNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR CooperativeMatrixPropertiesNV(uint32_t MSize_ = {}, uint32_t NSize_ = {}, uint32_t KSize_ = {}, VULKAN_HPP_NAMESPACE::ComponentTypeNV AType_ = VULKAN_HPP_NAMESPACE::ComponentTypeNV::eFloat16, VULKAN_HPP_NAMESPACE::ComponentTypeNV BType_ = VULKAN_HPP_NAMESPACE::ComponentTypeNV::eFloat16, VULKAN_HPP_NAMESPACE::ComponentTypeNV CType_ = VULKAN_HPP_NAMESPACE::ComponentTypeNV::eFloat16, VULKAN_HPP_NAMESPACE::ComponentTypeNV DType_ = VULKAN_HPP_NAMESPACE::ComponentTypeNV::eFloat16, VULKAN_HPP_NAMESPACE::ScopeNV scope_ = VULKAN_HPP_NAMESPACE::ScopeNV::eDevice) VULKAN_HPP_NOEXCEPT
- : MSize( MSize_ ), NSize( NSize_ ), KSize( KSize_ ), AType( AType_ ), BType( BType_ ), CType( CType_ ), DType( DType_ ), scope( scope_ )
- {}
-
- VULKAN_HPP_CONSTEXPR CooperativeMatrixPropertiesNV( CooperativeMatrixPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- CooperativeMatrixPropertiesNV( VkCooperativeMatrixPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- CooperativeMatrixPropertiesNV & operator=( VkCooperativeMatrixPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CooperativeMatrixPropertiesNV const *>( &rhs );
- return *this;
- }
-
- CooperativeMatrixPropertiesNV & operator=( CooperativeMatrixPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( CooperativeMatrixPropertiesNV ) );
- return *this;
- }
-
- CooperativeMatrixPropertiesNV & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- CooperativeMatrixPropertiesNV & setMSize( uint32_t MSize_ ) VULKAN_HPP_NOEXCEPT
- {
- MSize = MSize_;
- return *this;
- }
-
- CooperativeMatrixPropertiesNV & setNSize( uint32_t NSize_ ) VULKAN_HPP_NOEXCEPT
- {
- NSize = NSize_;
- return *this;
- }
-
- CooperativeMatrixPropertiesNV & setKSize( uint32_t KSize_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- KSize = KSize_;
- return *this;
- }
-
- CooperativeMatrixPropertiesNV & setAType( VULKAN_HPP_NAMESPACE::ComponentTypeNV AType_ ) VULKAN_HPP_NOEXCEPT
- {
- AType = AType_;
- return *this;
- }
-
- CooperativeMatrixPropertiesNV & setBType( VULKAN_HPP_NAMESPACE::ComponentTypeNV BType_ ) VULKAN_HPP_NOEXCEPT
- {
- BType = BType_;
- return *this;
- }
-
- CooperativeMatrixPropertiesNV & setCType( VULKAN_HPP_NAMESPACE::ComponentTypeNV CType_ ) VULKAN_HPP_NOEXCEPT
- {
- CType = CType_;
- return *this;
- }
-
- CooperativeMatrixPropertiesNV & setDType( VULKAN_HPP_NAMESPACE::ComponentTypeNV DType_ ) VULKAN_HPP_NOEXCEPT
- {
- DType = DType_;
- return *this;
- }
-
- CooperativeMatrixPropertiesNV & setScope( VULKAN_HPP_NAMESPACE::ScopeNV scope_ ) VULKAN_HPP_NOEXCEPT
- {
- scope = scope_;
- return *this;
- }
-
-
- operator VkCooperativeMatrixPropertiesNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkCooperativeMatrixPropertiesNV*>( this );
- }
-
- operator VkCooperativeMatrixPropertiesNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkCooperativeMatrixPropertiesNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( CooperativeMatrixPropertiesNV const& ) const = default;
-#else
- bool operator==( CooperativeMatrixPropertiesNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( MSize == rhs.MSize )
- && ( NSize == rhs.NSize )
- && ( KSize == rhs.KSize )
- && ( AType == rhs.AType )
- && ( BType == rhs.BType )
- && ( CType == rhs.CType )
- && ( DType == rhs.DType )
- && ( scope == rhs.scope );
- }
-
- bool operator!=( CooperativeMatrixPropertiesNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCooperativeMatrixPropertiesNV;
- void* pNext = {};
- uint32_t MSize = {};
- uint32_t NSize = {};
- uint32_t KSize = {};
- VULKAN_HPP_NAMESPACE::ComponentTypeNV AType = VULKAN_HPP_NAMESPACE::ComponentTypeNV::eFloat16;
- VULKAN_HPP_NAMESPACE::ComponentTypeNV BType = VULKAN_HPP_NAMESPACE::ComponentTypeNV::eFloat16;
- VULKAN_HPP_NAMESPACE::ComponentTypeNV CType = VULKAN_HPP_NAMESPACE::ComponentTypeNV::eFloat16;
- VULKAN_HPP_NAMESPACE::ComponentTypeNV DType = VULKAN_HPP_NAMESPACE::ComponentTypeNV::eFloat16;
- VULKAN_HPP_NAMESPACE::ScopeNV scope = VULKAN_HPP_NAMESPACE::ScopeNV::eDevice;
-
+ value = true
+ };
};
- static_assert( sizeof( CooperativeMatrixPropertiesNV ) == sizeof( VkCooperativeMatrixPropertiesNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<CooperativeMatrixPropertiesNV>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eCooperativeMatrixPropertiesNV>
- {
- using Type = CooperativeMatrixPropertiesNV;
- };
-
- struct CopyAccelerationStructureInfoKHR
+ struct StructExtends<DeviceMemoryOverallocationCreateInfoAMD, DeviceCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCopyAccelerationStructureInfoKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR CopyAccelerationStructureInfoKHR(VULKAN_HPP_NAMESPACE::AccelerationStructureKHR src_ = {}, VULKAN_HPP_NAMESPACE::AccelerationStructureKHR dst_ = {}, VULKAN_HPP_NAMESPACE::CopyAccelerationStructureModeKHR mode_ = VULKAN_HPP_NAMESPACE::CopyAccelerationStructureModeKHR::eClone) VULKAN_HPP_NOEXCEPT
- : src( src_ ), dst( dst_ ), mode( mode_ )
- {}
-
- VULKAN_HPP_CONSTEXPR CopyAccelerationStructureInfoKHR( CopyAccelerationStructureInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- CopyAccelerationStructureInfoKHR( VkCopyAccelerationStructureInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- CopyAccelerationStructureInfoKHR & operator=( VkCopyAccelerationStructureInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CopyAccelerationStructureInfoKHR const *>( &rhs );
- return *this;
- }
-
- CopyAccelerationStructureInfoKHR & operator=( CopyAccelerationStructureInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( CopyAccelerationStructureInfoKHR ) );
- return *this;
- }
-
- CopyAccelerationStructureInfoKHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- CopyAccelerationStructureInfoKHR & setSrc( VULKAN_HPP_NAMESPACE::AccelerationStructureKHR src_ ) VULKAN_HPP_NOEXCEPT
- {
- src = src_;
- return *this;
- }
-
- CopyAccelerationStructureInfoKHR & setDst( VULKAN_HPP_NAMESPACE::AccelerationStructureKHR dst_ ) VULKAN_HPP_NOEXCEPT
- {
- dst = dst_;
- return *this;
- }
-
- CopyAccelerationStructureInfoKHR & setMode( VULKAN_HPP_NAMESPACE::CopyAccelerationStructureModeKHR mode_ ) VULKAN_HPP_NOEXCEPT
- {
- mode = mode_;
- return *this;
- }
-
-
- operator VkCopyAccelerationStructureInfoKHR const&() const VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<const VkCopyAccelerationStructureInfoKHR*>( this );
- }
-
- operator VkCopyAccelerationStructureInfoKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkCopyAccelerationStructureInfoKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( CopyAccelerationStructureInfoKHR const& ) const = default;
-#else
- bool operator==( CopyAccelerationStructureInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( src == rhs.src )
- && ( dst == rhs.dst )
- && ( mode == rhs.mode );
- }
-
- bool operator!=( CopyAccelerationStructureInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCopyAccelerationStructureInfoKHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::AccelerationStructureKHR src = {};
- VULKAN_HPP_NAMESPACE::AccelerationStructureKHR dst = {};
- VULKAN_HPP_NAMESPACE::CopyAccelerationStructureModeKHR mode = VULKAN_HPP_NAMESPACE::CopyAccelerationStructureModeKHR::eClone;
-
+ value = true
+ };
};
- static_assert( sizeof( CopyAccelerationStructureInfoKHR ) == sizeof( VkCopyAccelerationStructureInfoKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<CopyAccelerationStructureInfoKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eCopyAccelerationStructureInfoKHR>
- {
- using Type = CopyAccelerationStructureInfoKHR;
- };
-
- struct CopyAccelerationStructureToMemoryInfoKHR
+ struct StructExtends<DevicePrivateDataCreateInfoEXT, DeviceCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCopyAccelerationStructureToMemoryInfoKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- CopyAccelerationStructureToMemoryInfoKHR(VULKAN_HPP_NAMESPACE::AccelerationStructureKHR src_ = {}, VULKAN_HPP_NAMESPACE::DeviceOrHostAddressKHR dst_ = {}, VULKAN_HPP_NAMESPACE::CopyAccelerationStructureModeKHR mode_ = VULKAN_HPP_NAMESPACE::CopyAccelerationStructureModeKHR::eClone) VULKAN_HPP_NOEXCEPT
- : src( src_ ), dst( dst_ ), mode( mode_ )
- {}
-
- CopyAccelerationStructureToMemoryInfoKHR( CopyAccelerationStructureToMemoryInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- CopyAccelerationStructureToMemoryInfoKHR( VkCopyAccelerationStructureToMemoryInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- CopyAccelerationStructureToMemoryInfoKHR & operator=( VkCopyAccelerationStructureToMemoryInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CopyAccelerationStructureToMemoryInfoKHR const *>( &rhs );
- return *this;
- }
-
- CopyAccelerationStructureToMemoryInfoKHR & operator=( CopyAccelerationStructureToMemoryInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( CopyAccelerationStructureToMemoryInfoKHR ) );
- return *this;
- }
-
- CopyAccelerationStructureToMemoryInfoKHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- CopyAccelerationStructureToMemoryInfoKHR & setSrc( VULKAN_HPP_NAMESPACE::AccelerationStructureKHR src_ ) VULKAN_HPP_NOEXCEPT
- {
- src = src_;
- return *this;
- }
-
- CopyAccelerationStructureToMemoryInfoKHR & setDst( VULKAN_HPP_NAMESPACE::DeviceOrHostAddressKHR const & dst_ ) VULKAN_HPP_NOEXCEPT
- {
- dst = dst_;
- return *this;
- }
-
- CopyAccelerationStructureToMemoryInfoKHR & setMode( VULKAN_HPP_NAMESPACE::CopyAccelerationStructureModeKHR mode_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- mode = mode_;
- return *this;
- }
-
-
- operator VkCopyAccelerationStructureToMemoryInfoKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkCopyAccelerationStructureToMemoryInfoKHR*>( this );
- }
-
- operator VkCopyAccelerationStructureToMemoryInfoKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkCopyAccelerationStructureToMemoryInfoKHR*>( this );
- }
-
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCopyAccelerationStructureToMemoryInfoKHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::AccelerationStructureKHR src = {};
- VULKAN_HPP_NAMESPACE::DeviceOrHostAddressKHR dst = {};
- VULKAN_HPP_NAMESPACE::CopyAccelerationStructureModeKHR mode = VULKAN_HPP_NAMESPACE::CopyAccelerationStructureModeKHR::eClone;
-
+ value = true
+ };
};
- static_assert( sizeof( CopyAccelerationStructureToMemoryInfoKHR ) == sizeof( VkCopyAccelerationStructureToMemoryInfoKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<CopyAccelerationStructureToMemoryInfoKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eCopyAccelerationStructureToMemoryInfoKHR>
+ struct StructExtends<DeviceQueueGlobalPriorityCreateInfoEXT, DeviceQueueCreateInfo>
{
- using Type = CopyAccelerationStructureToMemoryInfoKHR;
- };
-
- struct CopyBufferInfo2KHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCopyBufferInfo2KHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR CopyBufferInfo2KHR(VULKAN_HPP_NAMESPACE::Buffer srcBuffer_ = {}, VULKAN_HPP_NAMESPACE::Buffer dstBuffer_ = {}, uint32_t regionCount_ = {}, const VULKAN_HPP_NAMESPACE::BufferCopy2KHR* pRegions_ = {}) VULKAN_HPP_NOEXCEPT
- : srcBuffer( srcBuffer_ ), dstBuffer( dstBuffer_ ), regionCount( regionCount_ ), pRegions( pRegions_ )
- {}
-
- VULKAN_HPP_CONSTEXPR CopyBufferInfo2KHR( CopyBufferInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- CopyBufferInfo2KHR( VkCopyBufferInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- CopyBufferInfo2KHR( VULKAN_HPP_NAMESPACE::Buffer srcBuffer_, VULKAN_HPP_NAMESPACE::Buffer dstBuffer_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::BufferCopy2KHR> const & regions_ )
- : srcBuffer( srcBuffer_ ), dstBuffer( dstBuffer_ ), regionCount( static_cast<uint32_t>( regions_.size() ) ), pRegions( regions_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- CopyBufferInfo2KHR & operator=( VkCopyBufferInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CopyBufferInfo2KHR const *>( &rhs );
- return *this;
- }
-
- CopyBufferInfo2KHR & operator=( CopyBufferInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( CopyBufferInfo2KHR ) );
- return *this;
- }
-
- CopyBufferInfo2KHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- CopyBufferInfo2KHR & setSrcBuffer( VULKAN_HPP_NAMESPACE::Buffer srcBuffer_ ) VULKAN_HPP_NOEXCEPT
- {
- srcBuffer = srcBuffer_;
- return *this;
- }
-
- CopyBufferInfo2KHR & setDstBuffer( VULKAN_HPP_NAMESPACE::Buffer dstBuffer_ ) VULKAN_HPP_NOEXCEPT
- {
- dstBuffer = dstBuffer_;
- return *this;
- }
-
- CopyBufferInfo2KHR & setRegionCount( uint32_t regionCount_ ) VULKAN_HPP_NOEXCEPT
- {
- regionCount = regionCount_;
- return *this;
- }
-
- CopyBufferInfo2KHR & setPRegions( const VULKAN_HPP_NAMESPACE::BufferCopy2KHR* pRegions_ ) VULKAN_HPP_NOEXCEPT
- {
- pRegions = pRegions_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- CopyBufferInfo2KHR & setRegions( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::BufferCopy2KHR> const & regions_ ) VULKAN_HPP_NOEXCEPT
- {
- regionCount = static_cast<uint32_t>( regions_.size() );
- pRegions = regions_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkCopyBufferInfo2KHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkCopyBufferInfo2KHR*>( this );
- }
-
- operator VkCopyBufferInfo2KHR &() VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<VkCopyBufferInfo2KHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( CopyBufferInfo2KHR const& ) const = default;
-#else
- bool operator==( CopyBufferInfo2KHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( srcBuffer == rhs.srcBuffer )
- && ( dstBuffer == rhs.dstBuffer )
- && ( regionCount == rhs.regionCount )
- && ( pRegions == rhs.pRegions );
- }
-
- bool operator!=( CopyBufferInfo2KHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCopyBufferInfo2KHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::Buffer srcBuffer = {};
- VULKAN_HPP_NAMESPACE::Buffer dstBuffer = {};
- uint32_t regionCount = {};
- const VULKAN_HPP_NAMESPACE::BufferCopy2KHR* pRegions = {};
-
+ value = true
+ };
};
- static_assert( sizeof( CopyBufferInfo2KHR ) == sizeof( VkCopyBufferInfo2KHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<CopyBufferInfo2KHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eCopyBufferInfo2KHR>
+ struct StructExtends<DisplayNativeHdrSurfaceCapabilitiesAMD, SurfaceCapabilities2KHR>
{
- using Type = CopyBufferInfo2KHR;
- };
-
- struct CopyBufferToImageInfo2KHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCopyBufferToImageInfo2KHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR CopyBufferToImageInfo2KHR(VULKAN_HPP_NAMESPACE::Buffer srcBuffer_ = {}, VULKAN_HPP_NAMESPACE::Image dstImage_ = {}, VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined, uint32_t regionCount_ = {}, const VULKAN_HPP_NAMESPACE::BufferImageCopy2KHR* pRegions_ = {}) VULKAN_HPP_NOEXCEPT
- : srcBuffer( srcBuffer_ ), dstImage( dstImage_ ), dstImageLayout( dstImageLayout_ ), regionCount( regionCount_ ), pRegions( pRegions_ )
- {}
-
- VULKAN_HPP_CONSTEXPR CopyBufferToImageInfo2KHR( CopyBufferToImageInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- CopyBufferToImageInfo2KHR( VkCopyBufferToImageInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- CopyBufferToImageInfo2KHR( VULKAN_HPP_NAMESPACE::Buffer srcBuffer_, VULKAN_HPP_NAMESPACE::Image dstImage_, VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::BufferImageCopy2KHR> const & regions_ )
- : srcBuffer( srcBuffer_ ), dstImage( dstImage_ ), dstImageLayout( dstImageLayout_ ), regionCount( static_cast<uint32_t>( regions_.size() ) ), pRegions( regions_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- CopyBufferToImageInfo2KHR & operator=( VkCopyBufferToImageInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CopyBufferToImageInfo2KHR const *>( &rhs );
- return *this;
- }
-
- CopyBufferToImageInfo2KHR & operator=( CopyBufferToImageInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( CopyBufferToImageInfo2KHR ) );
- return *this;
- }
-
- CopyBufferToImageInfo2KHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- CopyBufferToImageInfo2KHR & setSrcBuffer( VULKAN_HPP_NAMESPACE::Buffer srcBuffer_ ) VULKAN_HPP_NOEXCEPT
- {
- srcBuffer = srcBuffer_;
- return *this;
- }
-
- CopyBufferToImageInfo2KHR & setDstImage( VULKAN_HPP_NAMESPACE::Image dstImage_ ) VULKAN_HPP_NOEXCEPT
- {
- dstImage = dstImage_;
- return *this;
- }
-
- CopyBufferToImageInfo2KHR & setDstImageLayout( VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout_ ) VULKAN_HPP_NOEXCEPT
- {
- dstImageLayout = dstImageLayout_;
- return *this;
- }
-
- CopyBufferToImageInfo2KHR & setRegionCount( uint32_t regionCount_ ) VULKAN_HPP_NOEXCEPT
- {
- regionCount = regionCount_;
- return *this;
- }
-
- CopyBufferToImageInfo2KHR & setPRegions( const VULKAN_HPP_NAMESPACE::BufferImageCopy2KHR* pRegions_ ) VULKAN_HPP_NOEXCEPT
- {
- pRegions = pRegions_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- CopyBufferToImageInfo2KHR & setRegions( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::BufferImageCopy2KHR> const & regions_ ) VULKAN_HPP_NOEXCEPT
- {
- regionCount = static_cast<uint32_t>( regions_.size() );
- pRegions = regions_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkCopyBufferToImageInfo2KHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkCopyBufferToImageInfo2KHR*>( this );
- }
-
- operator VkCopyBufferToImageInfo2KHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkCopyBufferToImageInfo2KHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( CopyBufferToImageInfo2KHR const& ) const = default;
-#else
- bool operator==( CopyBufferToImageInfo2KHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( srcBuffer == rhs.srcBuffer )
- && ( dstImage == rhs.dstImage )
- && ( dstImageLayout == rhs.dstImageLayout )
- && ( regionCount == rhs.regionCount )
- && ( pRegions == rhs.pRegions );
- }
-
- bool operator!=( CopyBufferToImageInfo2KHR const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCopyBufferToImageInfo2KHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::Buffer srcBuffer = {};
- VULKAN_HPP_NAMESPACE::Image dstImage = {};
- VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
- uint32_t regionCount = {};
- const VULKAN_HPP_NAMESPACE::BufferImageCopy2KHR* pRegions = {};
-
+ value = true
+ };
};
- static_assert( sizeof( CopyBufferToImageInfo2KHR ) == sizeof( VkCopyBufferToImageInfo2KHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<CopyBufferToImageInfo2KHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eCopyBufferToImageInfo2KHR>
+ struct StructExtends<DisplayPresentInfoKHR, PresentInfoKHR>
{
- using Type = CopyBufferToImageInfo2KHR;
- };
-
- struct CopyCommandTransformInfoQCOM
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCopyCommandTransformInfoQCOM;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR CopyCommandTransformInfoQCOM(VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR transform_ = VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR::eIdentity) VULKAN_HPP_NOEXCEPT
- : transform( transform_ )
- {}
-
- VULKAN_HPP_CONSTEXPR CopyCommandTransformInfoQCOM( CopyCommandTransformInfoQCOM const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- CopyCommandTransformInfoQCOM( VkCopyCommandTransformInfoQCOM const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- CopyCommandTransformInfoQCOM & operator=( VkCopyCommandTransformInfoQCOM const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CopyCommandTransformInfoQCOM const *>( &rhs );
- return *this;
- }
-
- CopyCommandTransformInfoQCOM & operator=( CopyCommandTransformInfoQCOM const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( CopyCommandTransformInfoQCOM ) );
- return *this;
- }
-
- CopyCommandTransformInfoQCOM & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- CopyCommandTransformInfoQCOM & setTransform( VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR transform_ ) VULKAN_HPP_NOEXCEPT
- {
- transform = transform_;
- return *this;
- }
-
-
- operator VkCopyCommandTransformInfoQCOM const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkCopyCommandTransformInfoQCOM*>( this );
- }
-
- operator VkCopyCommandTransformInfoQCOM &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkCopyCommandTransformInfoQCOM*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( CopyCommandTransformInfoQCOM const& ) const = default;
-#else
- bool operator==( CopyCommandTransformInfoQCOM const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( transform == rhs.transform );
- }
-
- bool operator!=( CopyCommandTransformInfoQCOM const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCopyCommandTransformInfoQCOM;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR transform = VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR::eIdentity;
-
+ value = true
+ };
};
- static_assert( sizeof( CopyCommandTransformInfoQCOM ) == sizeof( VkCopyCommandTransformInfoQCOM ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<CopyCommandTransformInfoQCOM>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eCopyCommandTransformInfoQCOM>
+ struct StructExtends<DrmFormatModifierPropertiesListEXT, FormatProperties2>
{
- using Type = CopyCommandTransformInfoQCOM;
- };
-
- class DescriptorSet
- {
- public:
- using CType = VkDescriptorSet;
-
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::eDescriptorSet;
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType = VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eDescriptorSet;
-
- public:
- VULKAN_HPP_CONSTEXPR DescriptorSet() VULKAN_HPP_NOEXCEPT
- : m_descriptorSet(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_CONSTEXPR DescriptorSet( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- : m_descriptorSet(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_TYPESAFE_EXPLICIT DescriptorSet( VkDescriptorSet descriptorSet ) VULKAN_HPP_NOEXCEPT
- : m_descriptorSet( descriptorSet )
- {}
-
-#if defined(VULKAN_HPP_TYPESAFE_CONVERSION)
- DescriptorSet & operator=(VkDescriptorSet descriptorSet) VULKAN_HPP_NOEXCEPT
- {
- m_descriptorSet = descriptorSet;
- return *this;
- }
-#endif
-
- DescriptorSet & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- {
- m_descriptorSet = VK_NULL_HANDLE;
- return *this;
- }
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DescriptorSet const& ) const = default;
-#else
- bool operator==( DescriptorSet const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_descriptorSet == rhs.m_descriptorSet;
- }
-
- bool operator!=(DescriptorSet const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_descriptorSet != rhs.m_descriptorSet;
- }
-
- bool operator<(DescriptorSet const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_descriptorSet < rhs.m_descriptorSet;
- }
-#endif
-
- VULKAN_HPP_TYPESAFE_EXPLICIT operator VkDescriptorSet() const VULKAN_HPP_NOEXCEPT
+ enum
{
- return m_descriptorSet;
- }
-
- explicit operator bool() const VULKAN_HPP_NOEXCEPT
- {
- return m_descriptorSet != VK_NULL_HANDLE;
- }
-
- bool operator!() const VULKAN_HPP_NOEXCEPT
- {
- return m_descriptorSet == VK_NULL_HANDLE;
- }
-
- private:
- VkDescriptorSet m_descriptorSet;
- };
- static_assert( sizeof( VULKAN_HPP_NAMESPACE::DescriptorSet ) == sizeof( VkDescriptorSet ), "handle and wrapper have different size!" );
-
- template <>
- struct VULKAN_HPP_DEPRECATED("vk::cpp_type is deprecated. Use vk::CppType instead.") cpp_type<ObjectType::eDescriptorSet>
- {
- using type = VULKAN_HPP_NAMESPACE::DescriptorSet;
- };
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eDescriptorSet>
- {
- using Type = VULKAN_HPP_NAMESPACE::DescriptorSet;
- };
-
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT, VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eDescriptorSet>
- {
- using Type = VULKAN_HPP_NAMESPACE::DescriptorSet;
+ value = true
+ };
};
-
-
template <>
- struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::DescriptorSet>
- {
- static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
- };
-
- struct CopyDescriptorSet
+ struct StructExtends<ExportFenceCreateInfo, FenceCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCopyDescriptorSet;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR CopyDescriptorSet(VULKAN_HPP_NAMESPACE::DescriptorSet srcSet_ = {}, uint32_t srcBinding_ = {}, uint32_t srcArrayElement_ = {}, VULKAN_HPP_NAMESPACE::DescriptorSet dstSet_ = {}, uint32_t dstBinding_ = {}, uint32_t dstArrayElement_ = {}, uint32_t descriptorCount_ = {}) VULKAN_HPP_NOEXCEPT
- : srcSet( srcSet_ ), srcBinding( srcBinding_ ), srcArrayElement( srcArrayElement_ ), dstSet( dstSet_ ), dstBinding( dstBinding_ ), dstArrayElement( dstArrayElement_ ), descriptorCount( descriptorCount_ )
- {}
-
- VULKAN_HPP_CONSTEXPR CopyDescriptorSet( CopyDescriptorSet const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- CopyDescriptorSet( VkCopyDescriptorSet const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- CopyDescriptorSet & operator=( VkCopyDescriptorSet const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CopyDescriptorSet const *>( &rhs );
- return *this;
- }
-
- CopyDescriptorSet & operator=( CopyDescriptorSet const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( CopyDescriptorSet ) );
- return *this;
- }
-
- CopyDescriptorSet & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- CopyDescriptorSet & setSrcSet( VULKAN_HPP_NAMESPACE::DescriptorSet srcSet_ ) VULKAN_HPP_NOEXCEPT
- {
- srcSet = srcSet_;
- return *this;
- }
-
- CopyDescriptorSet & setSrcBinding( uint32_t srcBinding_ ) VULKAN_HPP_NOEXCEPT
- {
- srcBinding = srcBinding_;
- return *this;
- }
-
- CopyDescriptorSet & setSrcArrayElement( uint32_t srcArrayElement_ ) VULKAN_HPP_NOEXCEPT
- {
- srcArrayElement = srcArrayElement_;
- return *this;
- }
-
- CopyDescriptorSet & setDstSet( VULKAN_HPP_NAMESPACE::DescriptorSet dstSet_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- dstSet = dstSet_;
- return *this;
- }
-
- CopyDescriptorSet & setDstBinding( uint32_t dstBinding_ ) VULKAN_HPP_NOEXCEPT
- {
- dstBinding = dstBinding_;
- return *this;
- }
-
- CopyDescriptorSet & setDstArrayElement( uint32_t dstArrayElement_ ) VULKAN_HPP_NOEXCEPT
- {
- dstArrayElement = dstArrayElement_;
- return *this;
- }
-
- CopyDescriptorSet & setDescriptorCount( uint32_t descriptorCount_ ) VULKAN_HPP_NOEXCEPT
- {
- descriptorCount = descriptorCount_;
- return *this;
- }
-
-
- operator VkCopyDescriptorSet const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkCopyDescriptorSet*>( this );
- }
-
- operator VkCopyDescriptorSet &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkCopyDescriptorSet*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( CopyDescriptorSet const& ) const = default;
-#else
- bool operator==( CopyDescriptorSet const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( srcSet == rhs.srcSet )
- && ( srcBinding == rhs.srcBinding )
- && ( srcArrayElement == rhs.srcArrayElement )
- && ( dstSet == rhs.dstSet )
- && ( dstBinding == rhs.dstBinding )
- && ( dstArrayElement == rhs.dstArrayElement )
- && ( descriptorCount == rhs.descriptorCount );
- }
-
- bool operator!=( CopyDescriptorSet const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCopyDescriptorSet;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::DescriptorSet srcSet = {};
- uint32_t srcBinding = {};
- uint32_t srcArrayElement = {};
- VULKAN_HPP_NAMESPACE::DescriptorSet dstSet = {};
- uint32_t dstBinding = {};
- uint32_t dstArrayElement = {};
- uint32_t descriptorCount = {};
-
+ value = true
+ };
};
- static_assert( sizeof( CopyDescriptorSet ) == sizeof( VkCopyDescriptorSet ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<CopyDescriptorSet>::value, "struct wrapper is not a standard layout!" );
-
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
template <>
- struct CppType<StructureType, StructureType::eCopyDescriptorSet>
+ struct StructExtends<ExportFenceWin32HandleInfoKHR, FenceCreateInfo>
{
- using Type = CopyDescriptorSet;
- };
-
- struct ImageCopy2KHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImageCopy2KHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ImageCopy2KHR(VULKAN_HPP_NAMESPACE::ImageSubresourceLayers srcSubresource_ = {}, VULKAN_HPP_NAMESPACE::Offset3D srcOffset_ = {}, VULKAN_HPP_NAMESPACE::ImageSubresourceLayers dstSubresource_ = {}, VULKAN_HPP_NAMESPACE::Offset3D dstOffset_ = {}, VULKAN_HPP_NAMESPACE::Extent3D extent_ = {}) VULKAN_HPP_NOEXCEPT
- : srcSubresource( srcSubresource_ ), srcOffset( srcOffset_ ), dstSubresource( dstSubresource_ ), dstOffset( dstOffset_ ), extent( extent_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ImageCopy2KHR( ImageCopy2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ImageCopy2KHR( VkImageCopy2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ImageCopy2KHR & operator=( VkImageCopy2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageCopy2KHR const *>( &rhs );
- return *this;
- }
-
- ImageCopy2KHR & operator=( ImageCopy2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ImageCopy2KHR ) );
- return *this;
- }
-
- ImageCopy2KHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- ImageCopy2KHR & setSrcSubresource( VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const & srcSubresource_ ) VULKAN_HPP_NOEXCEPT
- {
- srcSubresource = srcSubresource_;
- return *this;
- }
-
- ImageCopy2KHR & setSrcOffset( VULKAN_HPP_NAMESPACE::Offset3D const & srcOffset_ ) VULKAN_HPP_NOEXCEPT
- {
- srcOffset = srcOffset_;
- return *this;
- }
-
- ImageCopy2KHR & setDstSubresource( VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const & dstSubresource_ ) VULKAN_HPP_NOEXCEPT
- {
- dstSubresource = dstSubresource_;
- return *this;
- }
-
- ImageCopy2KHR & setDstOffset( VULKAN_HPP_NAMESPACE::Offset3D const & dstOffset_ ) VULKAN_HPP_NOEXCEPT
- {
- dstOffset = dstOffset_;
- return *this;
- }
-
- ImageCopy2KHR & setExtent( VULKAN_HPP_NAMESPACE::Extent3D const & extent_ ) VULKAN_HPP_NOEXCEPT
- {
- extent = extent_;
- return *this;
- }
-
-
- operator VkImageCopy2KHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkImageCopy2KHR*>( this );
- }
-
- operator VkImageCopy2KHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkImageCopy2KHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ImageCopy2KHR const& ) const = default;
-#else
- bool operator==( ImageCopy2KHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( srcSubresource == rhs.srcSubresource )
- && ( srcOffset == rhs.srcOffset )
- && ( dstSubresource == rhs.dstSubresource )
- && ( dstOffset == rhs.dstOffset )
- && ( extent == rhs.extent );
- }
-
- bool operator!=( ImageCopy2KHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageCopy2KHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::ImageSubresourceLayers srcSubresource = {};
- VULKAN_HPP_NAMESPACE::Offset3D srcOffset = {};
- VULKAN_HPP_NAMESPACE::ImageSubresourceLayers dstSubresource = {};
- VULKAN_HPP_NAMESPACE::Offset3D dstOffset = {};
- VULKAN_HPP_NAMESPACE::Extent3D extent = {};
-
+ value = true
+ };
};
- static_assert( sizeof( ImageCopy2KHR ) == sizeof( VkImageCopy2KHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ImageCopy2KHR>::value, "struct wrapper is not a standard layout!" );
-
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
template <>
- struct CppType<StructureType, StructureType::eImageCopy2KHR>
+ struct StructExtends<ExportMemoryAllocateInfo, MemoryAllocateInfo>
{
- using Type = ImageCopy2KHR;
- };
-
- struct CopyImageInfo2KHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCopyImageInfo2KHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR CopyImageInfo2KHR(VULKAN_HPP_NAMESPACE::Image srcImage_ = {}, VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined, VULKAN_HPP_NAMESPACE::Image dstImage_ = {}, VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined, uint32_t regionCount_ = {}, const VULKAN_HPP_NAMESPACE::ImageCopy2KHR* pRegions_ = {}) VULKAN_HPP_NOEXCEPT
- : srcImage( srcImage_ ), srcImageLayout( srcImageLayout_ ), dstImage( dstImage_ ), dstImageLayout( dstImageLayout_ ), regionCount( regionCount_ ), pRegions( pRegions_ )
- {}
-
- VULKAN_HPP_CONSTEXPR CopyImageInfo2KHR( CopyImageInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- CopyImageInfo2KHR( VkCopyImageInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- CopyImageInfo2KHR( VULKAN_HPP_NAMESPACE::Image srcImage_, VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout_, VULKAN_HPP_NAMESPACE::Image dstImage_, VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ImageCopy2KHR> const & regions_ )
- : srcImage( srcImage_ ), srcImageLayout( srcImageLayout_ ), dstImage( dstImage_ ), dstImageLayout( dstImageLayout_ ), regionCount( static_cast<uint32_t>( regions_.size() ) ), pRegions( regions_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- CopyImageInfo2KHR & operator=( VkCopyImageInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CopyImageInfo2KHR const *>( &rhs );
- return *this;
- }
-
- CopyImageInfo2KHR & operator=( CopyImageInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( CopyImageInfo2KHR ) );
- return *this;
- }
-
- CopyImageInfo2KHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- CopyImageInfo2KHR & setSrcImage( VULKAN_HPP_NAMESPACE::Image srcImage_ ) VULKAN_HPP_NOEXCEPT
- {
- srcImage = srcImage_;
- return *this;
- }
-
- CopyImageInfo2KHR & setSrcImageLayout( VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout_ ) VULKAN_HPP_NOEXCEPT
- {
- srcImageLayout = srcImageLayout_;
- return *this;
- }
-
- CopyImageInfo2KHR & setDstImage( VULKAN_HPP_NAMESPACE::Image dstImage_ ) VULKAN_HPP_NOEXCEPT
- {
- dstImage = dstImage_;
- return *this;
- }
-
- CopyImageInfo2KHR & setDstImageLayout( VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout_ ) VULKAN_HPP_NOEXCEPT
- {
- dstImageLayout = dstImageLayout_;
- return *this;
- }
-
- CopyImageInfo2KHR & setRegionCount( uint32_t regionCount_ ) VULKAN_HPP_NOEXCEPT
- {
- regionCount = regionCount_;
- return *this;
- }
-
- CopyImageInfo2KHR & setPRegions( const VULKAN_HPP_NAMESPACE::ImageCopy2KHR* pRegions_ ) VULKAN_HPP_NOEXCEPT
- {
- pRegions = pRegions_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- CopyImageInfo2KHR & setRegions( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ImageCopy2KHR> const & regions_ ) VULKAN_HPP_NOEXCEPT
- {
- regionCount = static_cast<uint32_t>( regions_.size() );
- pRegions = regions_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkCopyImageInfo2KHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkCopyImageInfo2KHR*>( this );
- }
-
- operator VkCopyImageInfo2KHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkCopyImageInfo2KHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( CopyImageInfo2KHR const& ) const = default;
-#else
- bool operator==( CopyImageInfo2KHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( srcImage == rhs.srcImage )
- && ( srcImageLayout == rhs.srcImageLayout )
- && ( dstImage == rhs.dstImage )
- && ( dstImageLayout == rhs.dstImageLayout )
- && ( regionCount == rhs.regionCount )
- && ( pRegions == rhs.pRegions );
- }
-
- bool operator!=( CopyImageInfo2KHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCopyImageInfo2KHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::Image srcImage = {};
- VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
- VULKAN_HPP_NAMESPACE::Image dstImage = {};
- VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
- uint32_t regionCount = {};
- const VULKAN_HPP_NAMESPACE::ImageCopy2KHR* pRegions = {};
-
+ value = true
+ };
};
- static_assert( sizeof( CopyImageInfo2KHR ) == sizeof( VkCopyImageInfo2KHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<CopyImageInfo2KHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eCopyImageInfo2KHR>
+ struct StructExtends<ExportMemoryAllocateInfoNV, MemoryAllocateInfo>
{
- using Type = CopyImageInfo2KHR;
- };
-
- struct CopyImageToBufferInfo2KHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCopyImageToBufferInfo2KHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR CopyImageToBufferInfo2KHR(VULKAN_HPP_NAMESPACE::Image srcImage_ = {}, VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined, VULKAN_HPP_NAMESPACE::Buffer dstBuffer_ = {}, uint32_t regionCount_ = {}, const VULKAN_HPP_NAMESPACE::BufferImageCopy2KHR* pRegions_ = {}) VULKAN_HPP_NOEXCEPT
- : srcImage( srcImage_ ), srcImageLayout( srcImageLayout_ ), dstBuffer( dstBuffer_ ), regionCount( regionCount_ ), pRegions( pRegions_ )
- {}
-
- VULKAN_HPP_CONSTEXPR CopyImageToBufferInfo2KHR( CopyImageToBufferInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- CopyImageToBufferInfo2KHR( VkCopyImageToBufferInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- CopyImageToBufferInfo2KHR( VULKAN_HPP_NAMESPACE::Image srcImage_, VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout_, VULKAN_HPP_NAMESPACE::Buffer dstBuffer_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::BufferImageCopy2KHR> const & regions_ )
- : srcImage( srcImage_ ), srcImageLayout( srcImageLayout_ ), dstBuffer( dstBuffer_ ), regionCount( static_cast<uint32_t>( regions_.size() ) ), pRegions( regions_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- CopyImageToBufferInfo2KHR & operator=( VkCopyImageToBufferInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CopyImageToBufferInfo2KHR const *>( &rhs );
- return *this;
- }
-
- CopyImageToBufferInfo2KHR & operator=( CopyImageToBufferInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( CopyImageToBufferInfo2KHR ) );
- return *this;
- }
-
- CopyImageToBufferInfo2KHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- CopyImageToBufferInfo2KHR & setSrcImage( VULKAN_HPP_NAMESPACE::Image srcImage_ ) VULKAN_HPP_NOEXCEPT
- {
- srcImage = srcImage_;
- return *this;
- }
-
- CopyImageToBufferInfo2KHR & setSrcImageLayout( VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout_ ) VULKAN_HPP_NOEXCEPT
- {
- srcImageLayout = srcImageLayout_;
- return *this;
- }
-
- CopyImageToBufferInfo2KHR & setDstBuffer( VULKAN_HPP_NAMESPACE::Buffer dstBuffer_ ) VULKAN_HPP_NOEXCEPT
- {
- dstBuffer = dstBuffer_;
- return *this;
- }
-
- CopyImageToBufferInfo2KHR & setRegionCount( uint32_t regionCount_ ) VULKAN_HPP_NOEXCEPT
- {
- regionCount = regionCount_;
- return *this;
- }
-
- CopyImageToBufferInfo2KHR & setPRegions( const VULKAN_HPP_NAMESPACE::BufferImageCopy2KHR* pRegions_ ) VULKAN_HPP_NOEXCEPT
- {
- pRegions = pRegions_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- CopyImageToBufferInfo2KHR & setRegions( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::BufferImageCopy2KHR> const & regions_ ) VULKAN_HPP_NOEXCEPT
- {
- regionCount = static_cast<uint32_t>( regions_.size() );
- pRegions = regions_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkCopyImageToBufferInfo2KHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkCopyImageToBufferInfo2KHR*>( this );
- }
-
- operator VkCopyImageToBufferInfo2KHR &() VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<VkCopyImageToBufferInfo2KHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( CopyImageToBufferInfo2KHR const& ) const = default;
-#else
- bool operator==( CopyImageToBufferInfo2KHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( srcImage == rhs.srcImage )
- && ( srcImageLayout == rhs.srcImageLayout )
- && ( dstBuffer == rhs.dstBuffer )
- && ( regionCount == rhs.regionCount )
- && ( pRegions == rhs.pRegions );
- }
-
- bool operator!=( CopyImageToBufferInfo2KHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCopyImageToBufferInfo2KHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::Image srcImage = {};
- VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
- VULKAN_HPP_NAMESPACE::Buffer dstBuffer = {};
- uint32_t regionCount = {};
- const VULKAN_HPP_NAMESPACE::BufferImageCopy2KHR* pRegions = {};
-
+ value = true
+ };
};
- static_assert( sizeof( CopyImageToBufferInfo2KHR ) == sizeof( VkCopyImageToBufferInfo2KHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<CopyImageToBufferInfo2KHR>::value, "struct wrapper is not a standard layout!" );
-
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
template <>
- struct CppType<StructureType, StructureType::eCopyImageToBufferInfo2KHR>
+ struct StructExtends<ExportMemoryWin32HandleInfoKHR, MemoryAllocateInfo>
{
- using Type = CopyImageToBufferInfo2KHR;
- };
-
- struct CopyMemoryToAccelerationStructureInfoKHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCopyMemoryToAccelerationStructureInfoKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- CopyMemoryToAccelerationStructureInfoKHR(VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR src_ = {}, VULKAN_HPP_NAMESPACE::AccelerationStructureKHR dst_ = {}, VULKAN_HPP_NAMESPACE::CopyAccelerationStructureModeKHR mode_ = VULKAN_HPP_NAMESPACE::CopyAccelerationStructureModeKHR::eClone) VULKAN_HPP_NOEXCEPT
- : src( src_ ), dst( dst_ ), mode( mode_ )
- {}
-
- CopyMemoryToAccelerationStructureInfoKHR( CopyMemoryToAccelerationStructureInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- CopyMemoryToAccelerationStructureInfoKHR( VkCopyMemoryToAccelerationStructureInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- CopyMemoryToAccelerationStructureInfoKHR & operator=( VkCopyMemoryToAccelerationStructureInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CopyMemoryToAccelerationStructureInfoKHR const *>( &rhs );
- return *this;
- }
-
- CopyMemoryToAccelerationStructureInfoKHR & operator=( CopyMemoryToAccelerationStructureInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( CopyMemoryToAccelerationStructureInfoKHR ) );
- return *this;
- }
-
- CopyMemoryToAccelerationStructureInfoKHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- CopyMemoryToAccelerationStructureInfoKHR & setSrc( VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR const & src_ ) VULKAN_HPP_NOEXCEPT
- {
- src = src_;
- return *this;
- }
-
- CopyMemoryToAccelerationStructureInfoKHR & setDst( VULKAN_HPP_NAMESPACE::AccelerationStructureKHR dst_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- dst = dst_;
- return *this;
- }
-
- CopyMemoryToAccelerationStructureInfoKHR & setMode( VULKAN_HPP_NAMESPACE::CopyAccelerationStructureModeKHR mode_ ) VULKAN_HPP_NOEXCEPT
- {
- mode = mode_;
- return *this;
- }
-
-
- operator VkCopyMemoryToAccelerationStructureInfoKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkCopyMemoryToAccelerationStructureInfoKHR*>( this );
- }
-
- operator VkCopyMemoryToAccelerationStructureInfoKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkCopyMemoryToAccelerationStructureInfoKHR*>( this );
- }
-
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCopyMemoryToAccelerationStructureInfoKHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR src = {};
- VULKAN_HPP_NAMESPACE::AccelerationStructureKHR dst = {};
- VULKAN_HPP_NAMESPACE::CopyAccelerationStructureModeKHR mode = VULKAN_HPP_NAMESPACE::CopyAccelerationStructureModeKHR::eClone;
-
+ value = true
+ };
};
- static_assert( sizeof( CopyMemoryToAccelerationStructureInfoKHR ) == sizeof( VkCopyMemoryToAccelerationStructureInfoKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<CopyMemoryToAccelerationStructureInfoKHR>::value, "struct wrapper is not a standard layout!" );
-
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
template <>
- struct CppType<StructureType, StructureType::eCopyMemoryToAccelerationStructureInfoKHR>
+ struct StructExtends<ExportMemoryWin32HandleInfoNV, MemoryAllocateInfo>
{
- using Type = CopyMemoryToAccelerationStructureInfoKHR;
- };
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- struct D3D12FenceSubmitInfoKHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eD3D12FenceSubmitInfoKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR D3D12FenceSubmitInfoKHR(uint32_t waitSemaphoreValuesCount_ = {}, const uint64_t* pWaitSemaphoreValues_ = {}, uint32_t signalSemaphoreValuesCount_ = {}, const uint64_t* pSignalSemaphoreValues_ = {}) VULKAN_HPP_NOEXCEPT
- : waitSemaphoreValuesCount( waitSemaphoreValuesCount_ ), pWaitSemaphoreValues( pWaitSemaphoreValues_ ), signalSemaphoreValuesCount( signalSemaphoreValuesCount_ ), pSignalSemaphoreValues( pSignalSemaphoreValues_ )
- {}
-
- VULKAN_HPP_CONSTEXPR D3D12FenceSubmitInfoKHR( D3D12FenceSubmitInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- D3D12FenceSubmitInfoKHR( VkD3D12FenceSubmitInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- D3D12FenceSubmitInfoKHR( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const & waitSemaphoreValues_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const & signalSemaphoreValues_ = {} )
- : waitSemaphoreValuesCount( static_cast<uint32_t>( waitSemaphoreValues_.size() ) ), pWaitSemaphoreValues( waitSemaphoreValues_.data() ), signalSemaphoreValuesCount( static_cast<uint32_t>( signalSemaphoreValues_.size() ) ), pSignalSemaphoreValues( signalSemaphoreValues_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- D3D12FenceSubmitInfoKHR & operator=( VkD3D12FenceSubmitInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::D3D12FenceSubmitInfoKHR const *>( &rhs );
- return *this;
- }
-
- D3D12FenceSubmitInfoKHR & operator=( D3D12FenceSubmitInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( D3D12FenceSubmitInfoKHR ) );
- return *this;
- }
-
- D3D12FenceSubmitInfoKHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- D3D12FenceSubmitInfoKHR & setWaitSemaphoreValuesCount( uint32_t waitSemaphoreValuesCount_ ) VULKAN_HPP_NOEXCEPT
- {
- waitSemaphoreValuesCount = waitSemaphoreValuesCount_;
- return *this;
- }
-
- D3D12FenceSubmitInfoKHR & setPWaitSemaphoreValues( const uint64_t* pWaitSemaphoreValues_ ) VULKAN_HPP_NOEXCEPT
- {
- pWaitSemaphoreValues = pWaitSemaphoreValues_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- D3D12FenceSubmitInfoKHR & setWaitSemaphoreValues( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const & waitSemaphoreValues_ ) VULKAN_HPP_NOEXCEPT
- {
- waitSemaphoreValuesCount = static_cast<uint32_t>( waitSemaphoreValues_.size() );
- pWaitSemaphoreValues = waitSemaphoreValues_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- D3D12FenceSubmitInfoKHR & setSignalSemaphoreValuesCount( uint32_t signalSemaphoreValuesCount_ ) VULKAN_HPP_NOEXCEPT
- {
- signalSemaphoreValuesCount = signalSemaphoreValuesCount_;
- return *this;
- }
-
- D3D12FenceSubmitInfoKHR & setPSignalSemaphoreValues( const uint64_t* pSignalSemaphoreValues_ ) VULKAN_HPP_NOEXCEPT
- {
- pSignalSemaphoreValues = pSignalSemaphoreValues_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- D3D12FenceSubmitInfoKHR & setSignalSemaphoreValues( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const & signalSemaphoreValues_ ) VULKAN_HPP_NOEXCEPT
- {
- signalSemaphoreValuesCount = static_cast<uint32_t>( signalSemaphoreValues_.size() );
- pSignalSemaphoreValues = signalSemaphoreValues_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkD3D12FenceSubmitInfoKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkD3D12FenceSubmitInfoKHR*>( this );
- }
-
- operator VkD3D12FenceSubmitInfoKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkD3D12FenceSubmitInfoKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( D3D12FenceSubmitInfoKHR const& ) const = default;
-#else
- bool operator==( D3D12FenceSubmitInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( waitSemaphoreValuesCount == rhs.waitSemaphoreValuesCount )
- && ( pWaitSemaphoreValues == rhs.pWaitSemaphoreValues )
- && ( signalSemaphoreValuesCount == rhs.signalSemaphoreValuesCount )
- && ( pSignalSemaphoreValues == rhs.pSignalSemaphoreValues );
- }
-
- bool operator!=( D3D12FenceSubmitInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eD3D12FenceSubmitInfoKHR;
- const void* pNext = {};
- uint32_t waitSemaphoreValuesCount = {};
- const uint64_t* pWaitSemaphoreValues = {};
- uint32_t signalSemaphoreValuesCount = {};
- const uint64_t* pSignalSemaphoreValues = {};
-
- };
- static_assert( sizeof( D3D12FenceSubmitInfoKHR ) == sizeof( VkD3D12FenceSubmitInfoKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<D3D12FenceSubmitInfoKHR>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::eD3D12FenceSubmitInfoKHR>
- {
- using Type = D3D12FenceSubmitInfoKHR;
+ value = true
+ };
};
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-
- struct DebugMarkerMarkerInfoEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDebugMarkerMarkerInfoEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR_14 DebugMarkerMarkerInfoEXT(const char* pMarkerName_ = {}, std::array<float,4> const& color_ = {}) VULKAN_HPP_NOEXCEPT
- : pMarkerName( pMarkerName_ ), color( color_ )
- {}
-
- VULKAN_HPP_CONSTEXPR_14 DebugMarkerMarkerInfoEXT( DebugMarkerMarkerInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DebugMarkerMarkerInfoEXT( VkDebugMarkerMarkerInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DebugMarkerMarkerInfoEXT & operator=( VkDebugMarkerMarkerInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DebugMarkerMarkerInfoEXT const *>( &rhs );
- return *this;
- }
-
- DebugMarkerMarkerInfoEXT & operator=( DebugMarkerMarkerInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DebugMarkerMarkerInfoEXT ) );
- return *this;
- }
-
- DebugMarkerMarkerInfoEXT & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- DebugMarkerMarkerInfoEXT & setPMarkerName( const char* pMarkerName_ ) VULKAN_HPP_NOEXCEPT
- {
- pMarkerName = pMarkerName_;
- return *this;
- }
-
- DebugMarkerMarkerInfoEXT & setColor( std::array<float,4> color_ ) VULKAN_HPP_NOEXCEPT
- {
- color = color_;
- return *this;
- }
-
-
- operator VkDebugMarkerMarkerInfoEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDebugMarkerMarkerInfoEXT*>( this );
- }
-
- operator VkDebugMarkerMarkerInfoEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDebugMarkerMarkerInfoEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DebugMarkerMarkerInfoEXT const& ) const = default;
-#else
- bool operator==( DebugMarkerMarkerInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( pMarkerName == rhs.pMarkerName )
- && ( color == rhs.color );
- }
-
- bool operator!=( DebugMarkerMarkerInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDebugMarkerMarkerInfoEXT;
- const void* pNext = {};
- const char* pMarkerName = {};
- VULKAN_HPP_NAMESPACE::ArrayWrapper1D<float, 4> color = {};
-
- };
- static_assert( sizeof( DebugMarkerMarkerInfoEXT ) == sizeof( VkDebugMarkerMarkerInfoEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DebugMarkerMarkerInfoEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eDebugMarkerMarkerInfoEXT>
+ struct StructExtends<ExportSemaphoreCreateInfo, SemaphoreCreateInfo>
{
- using Type = DebugMarkerMarkerInfoEXT;
- };
-
- struct DebugMarkerObjectNameInfoEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDebugMarkerObjectNameInfoEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DebugMarkerObjectNameInfoEXT(VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT objectType_ = VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eUnknown, uint64_t object_ = {}, const char* pObjectName_ = {}) VULKAN_HPP_NOEXCEPT
- : objectType( objectType_ ), object( object_ ), pObjectName( pObjectName_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DebugMarkerObjectNameInfoEXT( DebugMarkerObjectNameInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DebugMarkerObjectNameInfoEXT( VkDebugMarkerObjectNameInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DebugMarkerObjectNameInfoEXT & operator=( VkDebugMarkerObjectNameInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DebugMarkerObjectNameInfoEXT const *>( &rhs );
- return *this;
- }
-
- DebugMarkerObjectNameInfoEXT & operator=( DebugMarkerObjectNameInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DebugMarkerObjectNameInfoEXT ) );
- return *this;
- }
-
- DebugMarkerObjectNameInfoEXT & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- DebugMarkerObjectNameInfoEXT & setObjectType( VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT objectType_ ) VULKAN_HPP_NOEXCEPT
- {
- objectType = objectType_;
- return *this;
- }
-
- DebugMarkerObjectNameInfoEXT & setObject( uint64_t object_ ) VULKAN_HPP_NOEXCEPT
- {
- object = object_;
- return *this;
- }
-
- DebugMarkerObjectNameInfoEXT & setPObjectName( const char* pObjectName_ ) VULKAN_HPP_NOEXCEPT
- {
- pObjectName = pObjectName_;
- return *this;
- }
-
-
- operator VkDebugMarkerObjectNameInfoEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDebugMarkerObjectNameInfoEXT*>( this );
- }
-
- operator VkDebugMarkerObjectNameInfoEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDebugMarkerObjectNameInfoEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DebugMarkerObjectNameInfoEXT const& ) const = default;
-#else
- bool operator==( DebugMarkerObjectNameInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( objectType == rhs.objectType )
- && ( object == rhs.object )
- && ( pObjectName == rhs.pObjectName );
- }
-
- bool operator!=( DebugMarkerObjectNameInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDebugMarkerObjectNameInfoEXT;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT objectType = VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eUnknown;
- uint64_t object = {};
- const char* pObjectName = {};
-
+ value = true
+ };
};
- static_assert( sizeof( DebugMarkerObjectNameInfoEXT ) == sizeof( VkDebugMarkerObjectNameInfoEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DebugMarkerObjectNameInfoEXT>::value, "struct wrapper is not a standard layout!" );
-
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
template <>
- struct CppType<StructureType, StructureType::eDebugMarkerObjectNameInfoEXT>
+ struct StructExtends<ExportSemaphoreWin32HandleInfoKHR, SemaphoreCreateInfo>
{
- using Type = DebugMarkerObjectNameInfoEXT;
- };
-
- struct DebugMarkerObjectTagInfoEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDebugMarkerObjectTagInfoEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DebugMarkerObjectTagInfoEXT(VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT objectType_ = VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eUnknown, uint64_t object_ = {}, uint64_t tagName_ = {}, size_t tagSize_ = {}, const void* pTag_ = {}) VULKAN_HPP_NOEXCEPT
- : objectType( objectType_ ), object( object_ ), tagName( tagName_ ), tagSize( tagSize_ ), pTag( pTag_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DebugMarkerObjectTagInfoEXT( DebugMarkerObjectTagInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DebugMarkerObjectTagInfoEXT( VkDebugMarkerObjectTagInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- template <typename T>
- DebugMarkerObjectTagInfoEXT( VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT objectType_, uint64_t object_, uint64_t tagName_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const T> const & tag_ )
- : objectType( objectType_ ), object( object_ ), tagName( tagName_ ), tagSize( tag_.size() * sizeof(T) ), pTag( tag_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DebugMarkerObjectTagInfoEXT & operator=( VkDebugMarkerObjectTagInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DebugMarkerObjectTagInfoEXT const *>( &rhs );
- return *this;
- }
-
- DebugMarkerObjectTagInfoEXT & operator=( DebugMarkerObjectTagInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DebugMarkerObjectTagInfoEXT ) );
- return *this;
- }
-
- DebugMarkerObjectTagInfoEXT & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- DebugMarkerObjectTagInfoEXT & setObjectType( VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT objectType_ ) VULKAN_HPP_NOEXCEPT
- {
- objectType = objectType_;
- return *this;
- }
-
- DebugMarkerObjectTagInfoEXT & setObject( uint64_t object_ ) VULKAN_HPP_NOEXCEPT
- {
- object = object_;
- return *this;
- }
-
- DebugMarkerObjectTagInfoEXT & setTagName( uint64_t tagName_ ) VULKAN_HPP_NOEXCEPT
- {
- tagName = tagName_;
- return *this;
- }
-
- DebugMarkerObjectTagInfoEXT & setTagSize( size_t tagSize_ ) VULKAN_HPP_NOEXCEPT
- {
- tagSize = tagSize_;
- return *this;
- }
-
- DebugMarkerObjectTagInfoEXT & setPTag( const void* pTag_ ) VULKAN_HPP_NOEXCEPT
- {
- pTag = pTag_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- template <typename T>
- DebugMarkerObjectTagInfoEXT & setTag( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const T> const & tag_ ) VULKAN_HPP_NOEXCEPT
- {
- tagSize = tag_.size() * sizeof(T);
- pTag = tag_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkDebugMarkerObjectTagInfoEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDebugMarkerObjectTagInfoEXT*>( this );
- }
-
- operator VkDebugMarkerObjectTagInfoEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDebugMarkerObjectTagInfoEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DebugMarkerObjectTagInfoEXT const& ) const = default;
-#else
- bool operator==( DebugMarkerObjectTagInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( objectType == rhs.objectType )
- && ( object == rhs.object )
- && ( tagName == rhs.tagName )
- && ( tagSize == rhs.tagSize )
- && ( pTag == rhs.pTag );
- }
-
- bool operator!=( DebugMarkerObjectTagInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDebugMarkerObjectTagInfoEXT;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT objectType = VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eUnknown;
- uint64_t object = {};
- uint64_t tagName = {};
- size_t tagSize = {};
- const void* pTag = {};
-
+ value = true
+ };
};
- static_assert( sizeof( DebugMarkerObjectTagInfoEXT ) == sizeof( VkDebugMarkerObjectTagInfoEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DebugMarkerObjectTagInfoEXT>::value, "struct wrapper is not a standard layout!" );
-
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+#if defined( VK_USE_PLATFORM_ANDROID_KHR )
template <>
- struct CppType<StructureType, StructureType::eDebugMarkerObjectTagInfoEXT>
- {
- using Type = DebugMarkerObjectTagInfoEXT;
- };
-
- struct DebugReportCallbackCreateInfoEXT
+ struct StructExtends<ExternalFormatANDROID, ImageCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDebugReportCallbackCreateInfoEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DebugReportCallbackCreateInfoEXT(VULKAN_HPP_NAMESPACE::DebugReportFlagsEXT flags_ = {}, PFN_vkDebugReportCallbackEXT pfnCallback_ = {}, void* pUserData_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), pfnCallback( pfnCallback_ ), pUserData( pUserData_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DebugReportCallbackCreateInfoEXT( DebugReportCallbackCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DebugReportCallbackCreateInfoEXT( VkDebugReportCallbackCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DebugReportCallbackCreateInfoEXT & operator=( VkDebugReportCallbackCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DebugReportCallbackCreateInfoEXT const *>( &rhs );
- return *this;
- }
-
- DebugReportCallbackCreateInfoEXT & operator=( DebugReportCallbackCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DebugReportCallbackCreateInfoEXT ) );
- return *this;
- }
-
- DebugReportCallbackCreateInfoEXT & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- DebugReportCallbackCreateInfoEXT & setFlags( VULKAN_HPP_NAMESPACE::DebugReportFlagsEXT flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- DebugReportCallbackCreateInfoEXT & setPfnCallback( PFN_vkDebugReportCallbackEXT pfnCallback_ ) VULKAN_HPP_NOEXCEPT
- {
- pfnCallback = pfnCallback_;
- return *this;
- }
-
- DebugReportCallbackCreateInfoEXT & setPUserData( void* pUserData_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- pUserData = pUserData_;
- return *this;
- }
-
-
- operator VkDebugReportCallbackCreateInfoEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDebugReportCallbackCreateInfoEXT*>( this );
- }
-
- operator VkDebugReportCallbackCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDebugReportCallbackCreateInfoEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DebugReportCallbackCreateInfoEXT const& ) const = default;
-#else
- bool operator==( DebugReportCallbackCreateInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( pfnCallback == rhs.pfnCallback )
- && ( pUserData == rhs.pUserData );
- }
-
- bool operator!=( DebugReportCallbackCreateInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDebugReportCallbackCreateInfoEXT;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::DebugReportFlagsEXT flags = {};
- PFN_vkDebugReportCallbackEXT pfnCallback = {};
- void* pUserData = {};
-
+ value = true
+ };
};
- static_assert( sizeof( DebugReportCallbackCreateInfoEXT ) == sizeof( VkDebugReportCallbackCreateInfoEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DebugReportCallbackCreateInfoEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eDebugReportCallbackCreateInfoEXT>
- {
- using Type = DebugReportCallbackCreateInfoEXT;
- };
-
- struct DebugUtilsLabelEXT
+ struct StructExtends<ExternalFormatANDROID, SamplerYcbcrConversionCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDebugUtilsLabelEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR_14 DebugUtilsLabelEXT(const char* pLabelName_ = {}, std::array<float,4> const& color_ = {}) VULKAN_HPP_NOEXCEPT
- : pLabelName( pLabelName_ ), color( color_ )
- {}
-
- VULKAN_HPP_CONSTEXPR_14 DebugUtilsLabelEXT( DebugUtilsLabelEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DebugUtilsLabelEXT( VkDebugUtilsLabelEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DebugUtilsLabelEXT & operator=( VkDebugUtilsLabelEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DebugUtilsLabelEXT const *>( &rhs );
- return *this;
- }
-
- DebugUtilsLabelEXT & operator=( DebugUtilsLabelEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DebugUtilsLabelEXT ) );
- return *this;
- }
-
- DebugUtilsLabelEXT & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- pNext = pNext_;
- return *this;
- }
-
- DebugUtilsLabelEXT & setPLabelName( const char* pLabelName_ ) VULKAN_HPP_NOEXCEPT
- {
- pLabelName = pLabelName_;
- return *this;
- }
-
- DebugUtilsLabelEXT & setColor( std::array<float,4> color_ ) VULKAN_HPP_NOEXCEPT
- {
- color = color_;
- return *this;
- }
-
-
- operator VkDebugUtilsLabelEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDebugUtilsLabelEXT*>( this );
- }
-
- operator VkDebugUtilsLabelEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDebugUtilsLabelEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DebugUtilsLabelEXT const& ) const = default;
-#else
- bool operator==( DebugUtilsLabelEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( pLabelName == rhs.pLabelName )
- && ( color == rhs.color );
- }
-
- bool operator!=( DebugUtilsLabelEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDebugUtilsLabelEXT;
- const void* pNext = {};
- const char* pLabelName = {};
- VULKAN_HPP_NAMESPACE::ArrayWrapper1D<float, 4> color = {};
-
+ value = true
+ };
};
- static_assert( sizeof( DebugUtilsLabelEXT ) == sizeof( VkDebugUtilsLabelEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DebugUtilsLabelEXT>::value, "struct wrapper is not a standard layout!" );
-
+#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
template <>
- struct CppType<StructureType, StructureType::eDebugUtilsLabelEXT>
+ struct StructExtends<ExternalImageFormatProperties, ImageFormatProperties2>
{
- using Type = DebugUtilsLabelEXT;
- };
-
- struct DebugUtilsObjectNameInfoEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDebugUtilsObjectNameInfoEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DebugUtilsObjectNameInfoEXT(VULKAN_HPP_NAMESPACE::ObjectType objectType_ = VULKAN_HPP_NAMESPACE::ObjectType::eUnknown, uint64_t objectHandle_ = {}, const char* pObjectName_ = {}) VULKAN_HPP_NOEXCEPT
- : objectType( objectType_ ), objectHandle( objectHandle_ ), pObjectName( pObjectName_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DebugUtilsObjectNameInfoEXT( DebugUtilsObjectNameInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DebugUtilsObjectNameInfoEXT( VkDebugUtilsObjectNameInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DebugUtilsObjectNameInfoEXT & operator=( VkDebugUtilsObjectNameInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DebugUtilsObjectNameInfoEXT const *>( &rhs );
- return *this;
- }
-
- DebugUtilsObjectNameInfoEXT & operator=( DebugUtilsObjectNameInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DebugUtilsObjectNameInfoEXT ) );
- return *this;
- }
-
- DebugUtilsObjectNameInfoEXT & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- DebugUtilsObjectNameInfoEXT & setObjectType( VULKAN_HPP_NAMESPACE::ObjectType objectType_ ) VULKAN_HPP_NOEXCEPT
- {
- objectType = objectType_;
- return *this;
- }
-
- DebugUtilsObjectNameInfoEXT & setObjectHandle( uint64_t objectHandle_ ) VULKAN_HPP_NOEXCEPT
- {
- objectHandle = objectHandle_;
- return *this;
- }
-
- DebugUtilsObjectNameInfoEXT & setPObjectName( const char* pObjectName_ ) VULKAN_HPP_NOEXCEPT
- {
- pObjectName = pObjectName_;
- return *this;
- }
-
-
- operator VkDebugUtilsObjectNameInfoEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDebugUtilsObjectNameInfoEXT*>( this );
- }
-
- operator VkDebugUtilsObjectNameInfoEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDebugUtilsObjectNameInfoEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DebugUtilsObjectNameInfoEXT const& ) const = default;
-#else
- bool operator==( DebugUtilsObjectNameInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( objectType == rhs.objectType )
- && ( objectHandle == rhs.objectHandle )
- && ( pObjectName == rhs.pObjectName );
- }
-
- bool operator!=( DebugUtilsObjectNameInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDebugUtilsObjectNameInfoEXT;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::eUnknown;
- uint64_t objectHandle = {};
- const char* pObjectName = {};
-
+ value = true
+ };
};
- static_assert( sizeof( DebugUtilsObjectNameInfoEXT ) == sizeof( VkDebugUtilsObjectNameInfoEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DebugUtilsObjectNameInfoEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eDebugUtilsObjectNameInfoEXT>
- {
- using Type = DebugUtilsObjectNameInfoEXT;
- };
-
- struct DebugUtilsMessengerCallbackDataEXT
+ struct StructExtends<ExternalMemoryBufferCreateInfo, BufferCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDebugUtilsMessengerCallbackDataEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR_14 DebugUtilsMessengerCallbackDataEXT(VULKAN_HPP_NAMESPACE::DebugUtilsMessengerCallbackDataFlagsEXT flags_ = {}, const char* pMessageIdName_ = {}, int32_t messageIdNumber_ = {}, const char* pMessage_ = {}, uint32_t queueLabelCount_ = {}, const VULKAN_HPP_NAMESPACE::DebugUtilsLabelEXT* pQueueLabels_ = {}, uint32_t cmdBufLabelCount_ = {}, const VULKAN_HPP_NAMESPACE::DebugUtilsLabelEXT* pCmdBufLabels_ = {}, uint32_t objectCount_ = {}, const VULKAN_HPP_NAMESPACE::DebugUtilsObjectNameInfoEXT* pObjects_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), pMessageIdName( pMessageIdName_ ), messageIdNumber( messageIdNumber_ ), pMessage( pMessage_ ), queueLabelCount( queueLabelCount_ ), pQueueLabels( pQueueLabels_ ), cmdBufLabelCount( cmdBufLabelCount_ ), pCmdBufLabels( pCmdBufLabels_ ), objectCount( objectCount_ ), pObjects( pObjects_ )
- {}
-
- VULKAN_HPP_CONSTEXPR_14 DebugUtilsMessengerCallbackDataEXT( DebugUtilsMessengerCallbackDataEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DebugUtilsMessengerCallbackDataEXT( VkDebugUtilsMessengerCallbackDataEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- DebugUtilsMessengerCallbackDataEXT( VULKAN_HPP_NAMESPACE::DebugUtilsMessengerCallbackDataFlagsEXT flags_, const char* pMessageIdName_, int32_t messageIdNumber_, const char* pMessage_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DebugUtilsLabelEXT> const & queueLabels_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DebugUtilsLabelEXT> const & cmdBufLabels_ = {}, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DebugUtilsObjectNameInfoEXT> const & objects_ = {} )
- : flags( flags_ ), pMessageIdName( pMessageIdName_ ), messageIdNumber( messageIdNumber_ ), pMessage( pMessage_ ), queueLabelCount( static_cast<uint32_t>( queueLabels_.size() ) ), pQueueLabels( queueLabels_.data() ), cmdBufLabelCount( static_cast<uint32_t>( cmdBufLabels_.size() ) ), pCmdBufLabels( cmdBufLabels_.data() ), objectCount( static_cast<uint32_t>( objects_.size() ) ), pObjects( objects_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DebugUtilsMessengerCallbackDataEXT & operator=( VkDebugUtilsMessengerCallbackDataEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DebugUtilsMessengerCallbackDataEXT const *>( &rhs );
- return *this;
- }
-
- DebugUtilsMessengerCallbackDataEXT & operator=( DebugUtilsMessengerCallbackDataEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DebugUtilsMessengerCallbackDataEXT ) );
- return *this;
- }
-
- DebugUtilsMessengerCallbackDataEXT & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- pNext = pNext_;
- return *this;
- }
-
- DebugUtilsMessengerCallbackDataEXT & setFlags( VULKAN_HPP_NAMESPACE::DebugUtilsMessengerCallbackDataFlagsEXT flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- DebugUtilsMessengerCallbackDataEXT & setPMessageIdName( const char* pMessageIdName_ ) VULKAN_HPP_NOEXCEPT
- {
- pMessageIdName = pMessageIdName_;
- return *this;
- }
-
- DebugUtilsMessengerCallbackDataEXT & setMessageIdNumber( int32_t messageIdNumber_ ) VULKAN_HPP_NOEXCEPT
- {
- messageIdNumber = messageIdNumber_;
- return *this;
- }
-
- DebugUtilsMessengerCallbackDataEXT & setPMessage( const char* pMessage_ ) VULKAN_HPP_NOEXCEPT
- {
- pMessage = pMessage_;
- return *this;
- }
-
- DebugUtilsMessengerCallbackDataEXT & setQueueLabelCount( uint32_t queueLabelCount_ ) VULKAN_HPP_NOEXCEPT
- {
- queueLabelCount = queueLabelCount_;
- return *this;
- }
-
- DebugUtilsMessengerCallbackDataEXT & setPQueueLabels( const VULKAN_HPP_NAMESPACE::DebugUtilsLabelEXT* pQueueLabels_ ) VULKAN_HPP_NOEXCEPT
- {
- pQueueLabels = pQueueLabels_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- DebugUtilsMessengerCallbackDataEXT & setQueueLabels( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DebugUtilsLabelEXT> const & queueLabels_ ) VULKAN_HPP_NOEXCEPT
- {
- queueLabelCount = static_cast<uint32_t>( queueLabels_.size() );
- pQueueLabels = queueLabels_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- DebugUtilsMessengerCallbackDataEXT & setCmdBufLabelCount( uint32_t cmdBufLabelCount_ ) VULKAN_HPP_NOEXCEPT
- {
- cmdBufLabelCount = cmdBufLabelCount_;
- return *this;
- }
-
- DebugUtilsMessengerCallbackDataEXT & setPCmdBufLabels( const VULKAN_HPP_NAMESPACE::DebugUtilsLabelEXT* pCmdBufLabels_ ) VULKAN_HPP_NOEXCEPT
- {
- pCmdBufLabels = pCmdBufLabels_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- DebugUtilsMessengerCallbackDataEXT & setCmdBufLabels( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DebugUtilsLabelEXT> const & cmdBufLabels_ ) VULKAN_HPP_NOEXCEPT
- {
- cmdBufLabelCount = static_cast<uint32_t>( cmdBufLabels_.size() );
- pCmdBufLabels = cmdBufLabels_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- DebugUtilsMessengerCallbackDataEXT & setObjectCount( uint32_t objectCount_ ) VULKAN_HPP_NOEXCEPT
- {
- objectCount = objectCount_;
- return *this;
- }
-
- DebugUtilsMessengerCallbackDataEXT & setPObjects( const VULKAN_HPP_NAMESPACE::DebugUtilsObjectNameInfoEXT* pObjects_ ) VULKAN_HPP_NOEXCEPT
- {
- pObjects = pObjects_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- DebugUtilsMessengerCallbackDataEXT & setObjects( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DebugUtilsObjectNameInfoEXT> const & objects_ ) VULKAN_HPP_NOEXCEPT
- {
- objectCount = static_cast<uint32_t>( objects_.size() );
- pObjects = objects_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkDebugUtilsMessengerCallbackDataEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDebugUtilsMessengerCallbackDataEXT*>( this );
- }
-
- operator VkDebugUtilsMessengerCallbackDataEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDebugUtilsMessengerCallbackDataEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DebugUtilsMessengerCallbackDataEXT const& ) const = default;
-#else
- bool operator==( DebugUtilsMessengerCallbackDataEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( pMessageIdName == rhs.pMessageIdName )
- && ( messageIdNumber == rhs.messageIdNumber )
- && ( pMessage == rhs.pMessage )
- && ( queueLabelCount == rhs.queueLabelCount )
- && ( pQueueLabels == rhs.pQueueLabels )
- && ( cmdBufLabelCount == rhs.cmdBufLabelCount )
- && ( pCmdBufLabels == rhs.pCmdBufLabels )
- && ( objectCount == rhs.objectCount )
- && ( pObjects == rhs.pObjects );
- }
-
- bool operator!=( DebugUtilsMessengerCallbackDataEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDebugUtilsMessengerCallbackDataEXT;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::DebugUtilsMessengerCallbackDataFlagsEXT flags = {};
- const char* pMessageIdName = {};
- int32_t messageIdNumber = {};
- const char* pMessage = {};
- uint32_t queueLabelCount = {};
- const VULKAN_HPP_NAMESPACE::DebugUtilsLabelEXT* pQueueLabels = {};
- uint32_t cmdBufLabelCount = {};
- const VULKAN_HPP_NAMESPACE::DebugUtilsLabelEXT* pCmdBufLabels = {};
- uint32_t objectCount = {};
- const VULKAN_HPP_NAMESPACE::DebugUtilsObjectNameInfoEXT* pObjects = {};
-
- };
- static_assert( sizeof( DebugUtilsMessengerCallbackDataEXT ) == sizeof( VkDebugUtilsMessengerCallbackDataEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DebugUtilsMessengerCallbackDataEXT>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::eDebugUtilsMessengerCallbackDataEXT>
- {
- using Type = DebugUtilsMessengerCallbackDataEXT;
- };
-
- struct DebugUtilsMessengerCreateInfoEXT
- {
- static const bool allowDuplicate = true;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDebugUtilsMessengerCreateInfoEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DebugUtilsMessengerCreateInfoEXT(VULKAN_HPP_NAMESPACE::DebugUtilsMessengerCreateFlagsEXT flags_ = {}, VULKAN_HPP_NAMESPACE::DebugUtilsMessageSeverityFlagsEXT messageSeverity_ = {}, VULKAN_HPP_NAMESPACE::DebugUtilsMessageTypeFlagsEXT messageType_ = {}, PFN_vkDebugUtilsMessengerCallbackEXT pfnUserCallback_ = {}, void* pUserData_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), messageSeverity( messageSeverity_ ), messageType( messageType_ ), pfnUserCallback( pfnUserCallback_ ), pUserData( pUserData_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DebugUtilsMessengerCreateInfoEXT( DebugUtilsMessengerCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DebugUtilsMessengerCreateInfoEXT( VkDebugUtilsMessengerCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DebugUtilsMessengerCreateInfoEXT & operator=( VkDebugUtilsMessengerCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DebugUtilsMessengerCreateInfoEXT const *>( &rhs );
- return *this;
- }
-
- DebugUtilsMessengerCreateInfoEXT & operator=( DebugUtilsMessengerCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DebugUtilsMessengerCreateInfoEXT ) );
- return *this;
- }
-
- DebugUtilsMessengerCreateInfoEXT & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- DebugUtilsMessengerCreateInfoEXT & setFlags( VULKAN_HPP_NAMESPACE::DebugUtilsMessengerCreateFlagsEXT flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- DebugUtilsMessengerCreateInfoEXT & setMessageSeverity( VULKAN_HPP_NAMESPACE::DebugUtilsMessageSeverityFlagsEXT messageSeverity_ ) VULKAN_HPP_NOEXCEPT
- {
- messageSeverity = messageSeverity_;
- return *this;
- }
-
- DebugUtilsMessengerCreateInfoEXT & setMessageType( VULKAN_HPP_NAMESPACE::DebugUtilsMessageTypeFlagsEXT messageType_ ) VULKAN_HPP_NOEXCEPT
- {
- messageType = messageType_;
- return *this;
- }
-
- DebugUtilsMessengerCreateInfoEXT & setPfnUserCallback( PFN_vkDebugUtilsMessengerCallbackEXT pfnUserCallback_ ) VULKAN_HPP_NOEXCEPT
- {
- pfnUserCallback = pfnUserCallback_;
- return *this;
- }
-
- DebugUtilsMessengerCreateInfoEXT & setPUserData( void* pUserData_ ) VULKAN_HPP_NOEXCEPT
- {
- pUserData = pUserData_;
- return *this;
- }
-
-
- operator VkDebugUtilsMessengerCreateInfoEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDebugUtilsMessengerCreateInfoEXT*>( this );
- }
-
- operator VkDebugUtilsMessengerCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDebugUtilsMessengerCreateInfoEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DebugUtilsMessengerCreateInfoEXT const& ) const = default;
-#else
- bool operator==( DebugUtilsMessengerCreateInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( messageSeverity == rhs.messageSeverity )
- && ( messageType == rhs.messageType )
- && ( pfnUserCallback == rhs.pfnUserCallback )
- && ( pUserData == rhs.pUserData );
- }
-
- bool operator!=( DebugUtilsMessengerCreateInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDebugUtilsMessengerCreateInfoEXT;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::DebugUtilsMessengerCreateFlagsEXT flags = {};
- VULKAN_HPP_NAMESPACE::DebugUtilsMessageSeverityFlagsEXT messageSeverity = {};
- VULKAN_HPP_NAMESPACE::DebugUtilsMessageTypeFlagsEXT messageType = {};
- PFN_vkDebugUtilsMessengerCallbackEXT pfnUserCallback = {};
- void* pUserData = {};
-
+ value = true
+ };
};
- static_assert( sizeof( DebugUtilsMessengerCreateInfoEXT ) == sizeof( VkDebugUtilsMessengerCreateInfoEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DebugUtilsMessengerCreateInfoEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eDebugUtilsMessengerCreateInfoEXT>
+ struct StructExtends<ExternalMemoryImageCreateInfo, ImageCreateInfo>
{
- using Type = DebugUtilsMessengerCreateInfoEXT;
- };
-
- struct DebugUtilsObjectTagInfoEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDebugUtilsObjectTagInfoEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DebugUtilsObjectTagInfoEXT(VULKAN_HPP_NAMESPACE::ObjectType objectType_ = VULKAN_HPP_NAMESPACE::ObjectType::eUnknown, uint64_t objectHandle_ = {}, uint64_t tagName_ = {}, size_t tagSize_ = {}, const void* pTag_ = {}) VULKAN_HPP_NOEXCEPT
- : objectType( objectType_ ), objectHandle( objectHandle_ ), tagName( tagName_ ), tagSize( tagSize_ ), pTag( pTag_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DebugUtilsObjectTagInfoEXT( DebugUtilsObjectTagInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DebugUtilsObjectTagInfoEXT( VkDebugUtilsObjectTagInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- template <typename T>
- DebugUtilsObjectTagInfoEXT( VULKAN_HPP_NAMESPACE::ObjectType objectType_, uint64_t objectHandle_, uint64_t tagName_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const T> const & tag_ )
- : objectType( objectType_ ), objectHandle( objectHandle_ ), tagName( tagName_ ), tagSize( tag_.size() * sizeof(T) ), pTag( tag_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DebugUtilsObjectTagInfoEXT & operator=( VkDebugUtilsObjectTagInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DebugUtilsObjectTagInfoEXT const *>( &rhs );
- return *this;
- }
-
- DebugUtilsObjectTagInfoEXT & operator=( DebugUtilsObjectTagInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DebugUtilsObjectTagInfoEXT ) );
- return *this;
- }
-
- DebugUtilsObjectTagInfoEXT & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- DebugUtilsObjectTagInfoEXT & setObjectType( VULKAN_HPP_NAMESPACE::ObjectType objectType_ ) VULKAN_HPP_NOEXCEPT
- {
- objectType = objectType_;
- return *this;
- }
-
- DebugUtilsObjectTagInfoEXT & setObjectHandle( uint64_t objectHandle_ ) VULKAN_HPP_NOEXCEPT
- {
- objectHandle = objectHandle_;
- return *this;
- }
-
- DebugUtilsObjectTagInfoEXT & setTagName( uint64_t tagName_ ) VULKAN_HPP_NOEXCEPT
- {
- tagName = tagName_;
- return *this;
- }
-
- DebugUtilsObjectTagInfoEXT & setTagSize( size_t tagSize_ ) VULKAN_HPP_NOEXCEPT
- {
- tagSize = tagSize_;
- return *this;
- }
-
- DebugUtilsObjectTagInfoEXT & setPTag( const void* pTag_ ) VULKAN_HPP_NOEXCEPT
- {
- pTag = pTag_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- template <typename T>
- DebugUtilsObjectTagInfoEXT & setTag( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const T> const & tag_ ) VULKAN_HPP_NOEXCEPT
- {
- tagSize = tag_.size() * sizeof(T);
- pTag = tag_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkDebugUtilsObjectTagInfoEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDebugUtilsObjectTagInfoEXT*>( this );
- }
-
- operator VkDebugUtilsObjectTagInfoEXT &() VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<VkDebugUtilsObjectTagInfoEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DebugUtilsObjectTagInfoEXT const& ) const = default;
-#else
- bool operator==( DebugUtilsObjectTagInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( objectType == rhs.objectType )
- && ( objectHandle == rhs.objectHandle )
- && ( tagName == rhs.tagName )
- && ( tagSize == rhs.tagSize )
- && ( pTag == rhs.pTag );
- }
-
- bool operator!=( DebugUtilsObjectTagInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDebugUtilsObjectTagInfoEXT;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::eUnknown;
- uint64_t objectHandle = {};
- uint64_t tagName = {};
- size_t tagSize = {};
- const void* pTag = {};
-
+ value = true
+ };
};
- static_assert( sizeof( DebugUtilsObjectTagInfoEXT ) == sizeof( VkDebugUtilsObjectTagInfoEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DebugUtilsObjectTagInfoEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eDebugUtilsObjectTagInfoEXT>
- {
- using Type = DebugUtilsObjectTagInfoEXT;
- };
-
- struct DedicatedAllocationBufferCreateInfoNV
+ struct StructExtends<ExternalMemoryImageCreateInfoNV, ImageCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDedicatedAllocationBufferCreateInfoNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DedicatedAllocationBufferCreateInfoNV(VULKAN_HPP_NAMESPACE::Bool32 dedicatedAllocation_ = {}) VULKAN_HPP_NOEXCEPT
- : dedicatedAllocation( dedicatedAllocation_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DedicatedAllocationBufferCreateInfoNV( DedicatedAllocationBufferCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DedicatedAllocationBufferCreateInfoNV( VkDedicatedAllocationBufferCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DedicatedAllocationBufferCreateInfoNV & operator=( VkDedicatedAllocationBufferCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DedicatedAllocationBufferCreateInfoNV const *>( &rhs );
- return *this;
- }
-
- DedicatedAllocationBufferCreateInfoNV & operator=( DedicatedAllocationBufferCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DedicatedAllocationBufferCreateInfoNV ) );
- return *this;
- }
-
- DedicatedAllocationBufferCreateInfoNV & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- DedicatedAllocationBufferCreateInfoNV & setDedicatedAllocation( VULKAN_HPP_NAMESPACE::Bool32 dedicatedAllocation_ ) VULKAN_HPP_NOEXCEPT
- {
- dedicatedAllocation = dedicatedAllocation_;
- return *this;
- }
-
-
- operator VkDedicatedAllocationBufferCreateInfoNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDedicatedAllocationBufferCreateInfoNV*>( this );
- }
-
- operator VkDedicatedAllocationBufferCreateInfoNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDedicatedAllocationBufferCreateInfoNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DedicatedAllocationBufferCreateInfoNV const& ) const = default;
-#else
- bool operator==( DedicatedAllocationBufferCreateInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( dedicatedAllocation == rhs.dedicatedAllocation );
- }
-
- bool operator!=( DedicatedAllocationBufferCreateInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDedicatedAllocationBufferCreateInfoNV;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 dedicatedAllocation = {};
-
+ value = true
+ };
};
- static_assert( sizeof( DedicatedAllocationBufferCreateInfoNV ) == sizeof( VkDedicatedAllocationBufferCreateInfoNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DedicatedAllocationBufferCreateInfoNV>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eDedicatedAllocationBufferCreateInfoNV>
- {
- using Type = DedicatedAllocationBufferCreateInfoNV;
- };
-
- struct DedicatedAllocationImageCreateInfoNV
+ struct StructExtends<FilterCubicImageViewImageFormatPropertiesEXT, ImageFormatProperties2>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDedicatedAllocationImageCreateInfoNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DedicatedAllocationImageCreateInfoNV(VULKAN_HPP_NAMESPACE::Bool32 dedicatedAllocation_ = {}) VULKAN_HPP_NOEXCEPT
- : dedicatedAllocation( dedicatedAllocation_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DedicatedAllocationImageCreateInfoNV( DedicatedAllocationImageCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DedicatedAllocationImageCreateInfoNV( VkDedicatedAllocationImageCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DedicatedAllocationImageCreateInfoNV & operator=( VkDedicatedAllocationImageCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DedicatedAllocationImageCreateInfoNV const *>( &rhs );
- return *this;
- }
-
- DedicatedAllocationImageCreateInfoNV & operator=( DedicatedAllocationImageCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DedicatedAllocationImageCreateInfoNV ) );
- return *this;
- }
-
- DedicatedAllocationImageCreateInfoNV & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- DedicatedAllocationImageCreateInfoNV & setDedicatedAllocation( VULKAN_HPP_NAMESPACE::Bool32 dedicatedAllocation_ ) VULKAN_HPP_NOEXCEPT
- {
- dedicatedAllocation = dedicatedAllocation_;
- return *this;
- }
-
-
- operator VkDedicatedAllocationImageCreateInfoNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDedicatedAllocationImageCreateInfoNV*>( this );
- }
-
- operator VkDedicatedAllocationImageCreateInfoNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDedicatedAllocationImageCreateInfoNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DedicatedAllocationImageCreateInfoNV const& ) const = default;
-#else
- bool operator==( DedicatedAllocationImageCreateInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( dedicatedAllocation == rhs.dedicatedAllocation );
- }
-
- bool operator!=( DedicatedAllocationImageCreateInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDedicatedAllocationImageCreateInfoNV;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 dedicatedAllocation = {};
-
+ value = true
+ };
};
- static_assert( sizeof( DedicatedAllocationImageCreateInfoNV ) == sizeof( VkDedicatedAllocationImageCreateInfoNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DedicatedAllocationImageCreateInfoNV>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eDedicatedAllocationImageCreateInfoNV>
+ struct StructExtends<FragmentShadingRateAttachmentInfoKHR, SubpassDescription2>
{
- using Type = DedicatedAllocationImageCreateInfoNV;
- };
-
- struct DedicatedAllocationMemoryAllocateInfoNV
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDedicatedAllocationMemoryAllocateInfoNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DedicatedAllocationMemoryAllocateInfoNV(VULKAN_HPP_NAMESPACE::Image image_ = {}, VULKAN_HPP_NAMESPACE::Buffer buffer_ = {}) VULKAN_HPP_NOEXCEPT
- : image( image_ ), buffer( buffer_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DedicatedAllocationMemoryAllocateInfoNV( DedicatedAllocationMemoryAllocateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DedicatedAllocationMemoryAllocateInfoNV( VkDedicatedAllocationMemoryAllocateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DedicatedAllocationMemoryAllocateInfoNV & operator=( VkDedicatedAllocationMemoryAllocateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DedicatedAllocationMemoryAllocateInfoNV const *>( &rhs );
- return *this;
- }
-
- DedicatedAllocationMemoryAllocateInfoNV & operator=( DedicatedAllocationMemoryAllocateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DedicatedAllocationMemoryAllocateInfoNV ) );
- return *this;
- }
-
- DedicatedAllocationMemoryAllocateInfoNV & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- DedicatedAllocationMemoryAllocateInfoNV & setImage( VULKAN_HPP_NAMESPACE::Image image_ ) VULKAN_HPP_NOEXCEPT
- {
- image = image_;
- return *this;
- }
-
- DedicatedAllocationMemoryAllocateInfoNV & setBuffer( VULKAN_HPP_NAMESPACE::Buffer buffer_ ) VULKAN_HPP_NOEXCEPT
- {
- buffer = buffer_;
- return *this;
- }
-
-
- operator VkDedicatedAllocationMemoryAllocateInfoNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDedicatedAllocationMemoryAllocateInfoNV*>( this );
- }
-
- operator VkDedicatedAllocationMemoryAllocateInfoNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDedicatedAllocationMemoryAllocateInfoNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DedicatedAllocationMemoryAllocateInfoNV const& ) const = default;
-#else
- bool operator==( DedicatedAllocationMemoryAllocateInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( image == rhs.image )
- && ( buffer == rhs.buffer );
- }
-
- bool operator!=( DedicatedAllocationMemoryAllocateInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDedicatedAllocationMemoryAllocateInfoNV;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::Image image = {};
- VULKAN_HPP_NAMESPACE::Buffer buffer = {};
-
+ value = true
+ };
};
- static_assert( sizeof( DedicatedAllocationMemoryAllocateInfoNV ) == sizeof( VkDedicatedAllocationMemoryAllocateInfoNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DedicatedAllocationMemoryAllocateInfoNV>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eDedicatedAllocationMemoryAllocateInfoNV>
+ struct StructExtends<FramebufferAttachmentsCreateInfo, FramebufferCreateInfo>
{
- using Type = DedicatedAllocationMemoryAllocateInfoNV;
- };
-
- struct DescriptorBufferInfo
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DescriptorBufferInfo(VULKAN_HPP_NAMESPACE::Buffer buffer_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize offset_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize range_ = {}) VULKAN_HPP_NOEXCEPT
- : buffer( buffer_ ), offset( offset_ ), range( range_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DescriptorBufferInfo( DescriptorBufferInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DescriptorBufferInfo( VkDescriptorBufferInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DescriptorBufferInfo & operator=( VkDescriptorBufferInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DescriptorBufferInfo const *>( &rhs );
- return *this;
- }
-
- DescriptorBufferInfo & operator=( DescriptorBufferInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DescriptorBufferInfo ) );
- return *this;
- }
-
- DescriptorBufferInfo & setBuffer( VULKAN_HPP_NAMESPACE::Buffer buffer_ ) VULKAN_HPP_NOEXCEPT
- {
- buffer = buffer_;
- return *this;
- }
-
- DescriptorBufferInfo & setOffset( VULKAN_HPP_NAMESPACE::DeviceSize offset_ ) VULKAN_HPP_NOEXCEPT
- {
- offset = offset_;
- return *this;
- }
-
- DescriptorBufferInfo & setRange( VULKAN_HPP_NAMESPACE::DeviceSize range_ ) VULKAN_HPP_NOEXCEPT
- {
- range = range_;
- return *this;
- }
-
-
- operator VkDescriptorBufferInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDescriptorBufferInfo*>( this );
- }
-
- operator VkDescriptorBufferInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDescriptorBufferInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DescriptorBufferInfo const& ) const = default;
-#else
- bool operator==( DescriptorBufferInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( buffer == rhs.buffer )
- && ( offset == rhs.offset )
- && ( range == rhs.range );
- }
-
- bool operator!=( DescriptorBufferInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::Buffer buffer = {};
- VULKAN_HPP_NAMESPACE::DeviceSize offset = {};
- VULKAN_HPP_NAMESPACE::DeviceSize range = {};
-
- };
- static_assert( sizeof( DescriptorBufferInfo ) == sizeof( VkDescriptorBufferInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DescriptorBufferInfo>::value, "struct wrapper is not a standard layout!" );
-
- class Sampler
- {
- public:
- using CType = VkSampler;
-
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::eSampler;
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType = VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eSampler;
-
- public:
- VULKAN_HPP_CONSTEXPR Sampler() VULKAN_HPP_NOEXCEPT
- : m_sampler(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_CONSTEXPR Sampler( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- : m_sampler(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_TYPESAFE_EXPLICIT Sampler( VkSampler sampler ) VULKAN_HPP_NOEXCEPT
- : m_sampler( sampler )
- {}
-
-#if defined(VULKAN_HPP_TYPESAFE_CONVERSION)
- Sampler & operator=(VkSampler sampler) VULKAN_HPP_NOEXCEPT
- {
- m_sampler = sampler;
- return *this;
- }
-#endif
-
- Sampler & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- {
- m_sampler = VK_NULL_HANDLE;
- return *this;
- }
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( Sampler const& ) const = default;
-#else
- bool operator==( Sampler const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_sampler == rhs.m_sampler;
- }
-
- bool operator!=(Sampler const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_sampler != rhs.m_sampler;
- }
-
- bool operator<(Sampler const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_sampler < rhs.m_sampler;
- }
-#endif
-
- VULKAN_HPP_TYPESAFE_EXPLICIT operator VkSampler() const VULKAN_HPP_NOEXCEPT
- {
- return m_sampler;
- }
-
- explicit operator bool() const VULKAN_HPP_NOEXCEPT
- {
- return m_sampler != VK_NULL_HANDLE;
- }
-
- bool operator!() const VULKAN_HPP_NOEXCEPT
- {
- return m_sampler == VK_NULL_HANDLE;
- }
-
- private:
- VkSampler m_sampler;
- };
- static_assert( sizeof( VULKAN_HPP_NAMESPACE::Sampler ) == sizeof( VkSampler ), "handle and wrapper have different size!" );
-
- template <>
- struct VULKAN_HPP_DEPRECATED("vk::cpp_type is deprecated. Use vk::CppType instead.") cpp_type<ObjectType::eSampler>
- {
- using type = VULKAN_HPP_NAMESPACE::Sampler;
- };
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eSampler>
- {
- using Type = VULKAN_HPP_NAMESPACE::Sampler;
- };
-
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT, VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eSampler>
- {
- using Type = VULKAN_HPP_NAMESPACE::Sampler;
+ value = true
+ };
};
-
-
template <>
- struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::Sampler>
+ struct StructExtends<GraphicsPipelineShaderGroupsCreateInfoNV, GraphicsPipelineCreateInfo>
{
- static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
- };
-
- class ImageView
- {
- public:
- using CType = VkImageView;
-
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::eImageView;
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType = VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eImageView;
-
- public:
- VULKAN_HPP_CONSTEXPR ImageView() VULKAN_HPP_NOEXCEPT
- : m_imageView(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_CONSTEXPR ImageView( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- : m_imageView(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_TYPESAFE_EXPLICIT ImageView( VkImageView imageView ) VULKAN_HPP_NOEXCEPT
- : m_imageView( imageView )
- {}
-
-#if defined(VULKAN_HPP_TYPESAFE_CONVERSION)
- ImageView & operator=(VkImageView imageView) VULKAN_HPP_NOEXCEPT
- {
- m_imageView = imageView;
- return *this;
- }
-#endif
-
- ImageView & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- {
- m_imageView = VK_NULL_HANDLE;
- return *this;
- }
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ImageView const& ) const = default;
-#else
- bool operator==( ImageView const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_imageView == rhs.m_imageView;
- }
-
- bool operator!=(ImageView const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_imageView != rhs.m_imageView;
- }
-
- bool operator<(ImageView const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_imageView < rhs.m_imageView;
- }
-#endif
-
- VULKAN_HPP_TYPESAFE_EXPLICIT operator VkImageView() const VULKAN_HPP_NOEXCEPT
- {
- return m_imageView;
- }
-
- explicit operator bool() const VULKAN_HPP_NOEXCEPT
- {
- return m_imageView != VK_NULL_HANDLE;
- }
-
- bool operator!() const VULKAN_HPP_NOEXCEPT
+ enum
{
- return m_imageView == VK_NULL_HANDLE;
- }
-
- private:
- VkImageView m_imageView;
- };
- static_assert( sizeof( VULKAN_HPP_NAMESPACE::ImageView ) == sizeof( VkImageView ), "handle and wrapper have different size!" );
-
- template <>
- struct VULKAN_HPP_DEPRECATED("vk::cpp_type is deprecated. Use vk::CppType instead.") cpp_type<ObjectType::eImageView>
- {
- using type = VULKAN_HPP_NAMESPACE::ImageView;
- };
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eImageView>
- {
- using Type = VULKAN_HPP_NAMESPACE::ImageView;
- };
-
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT, VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eImageView>
- {
- using Type = VULKAN_HPP_NAMESPACE::ImageView;
+ value = true
+ };
};
-
-
template <>
- struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::ImageView>
- {
- static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
- };
-
- struct DescriptorImageInfo
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DescriptorImageInfo(VULKAN_HPP_NAMESPACE::Sampler sampler_ = {}, VULKAN_HPP_NAMESPACE::ImageView imageView_ = {}, VULKAN_HPP_NAMESPACE::ImageLayout imageLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined) VULKAN_HPP_NOEXCEPT
- : sampler( sampler_ ), imageView( imageView_ ), imageLayout( imageLayout_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DescriptorImageInfo( DescriptorImageInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DescriptorImageInfo( VkDescriptorImageInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DescriptorImageInfo & operator=( VkDescriptorImageInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DescriptorImageInfo const *>( &rhs );
- return *this;
- }
-
- DescriptorImageInfo & operator=( DescriptorImageInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DescriptorImageInfo ) );
- return *this;
- }
-
- DescriptorImageInfo & setSampler( VULKAN_HPP_NAMESPACE::Sampler sampler_ ) VULKAN_HPP_NOEXCEPT
- {
- sampler = sampler_;
- return *this;
- }
-
- DescriptorImageInfo & setImageView( VULKAN_HPP_NAMESPACE::ImageView imageView_ ) VULKAN_HPP_NOEXCEPT
- {
- imageView = imageView_;
- return *this;
- }
-
- DescriptorImageInfo & setImageLayout( VULKAN_HPP_NAMESPACE::ImageLayout imageLayout_ ) VULKAN_HPP_NOEXCEPT
- {
- imageLayout = imageLayout_;
- return *this;
- }
-
-
- operator VkDescriptorImageInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDescriptorImageInfo*>( this );
- }
-
- operator VkDescriptorImageInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDescriptorImageInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DescriptorImageInfo const& ) const = default;
-#else
- bool operator==( DescriptorImageInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sampler == rhs.sampler )
- && ( imageView == rhs.imageView )
- && ( imageLayout == rhs.imageLayout );
- }
-
- bool operator!=( DescriptorImageInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::Sampler sampler = {};
- VULKAN_HPP_NAMESPACE::ImageView imageView = {};
- VULKAN_HPP_NAMESPACE::ImageLayout imageLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
-
- };
- static_assert( sizeof( DescriptorImageInfo ) == sizeof( VkDescriptorImageInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DescriptorImageInfo>::value, "struct wrapper is not a standard layout!" );
-
- struct DescriptorPoolSize
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DescriptorPoolSize(VULKAN_HPP_NAMESPACE::DescriptorType type_ = VULKAN_HPP_NAMESPACE::DescriptorType::eSampler, uint32_t descriptorCount_ = {}) VULKAN_HPP_NOEXCEPT
- : type( type_ ), descriptorCount( descriptorCount_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DescriptorPoolSize( DescriptorPoolSize const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DescriptorPoolSize( VkDescriptorPoolSize const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DescriptorPoolSize & operator=( VkDescriptorPoolSize const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DescriptorPoolSize const *>( &rhs );
- return *this;
- }
-
- DescriptorPoolSize & operator=( DescriptorPoolSize const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DescriptorPoolSize ) );
- return *this;
- }
-
- DescriptorPoolSize & setType( VULKAN_HPP_NAMESPACE::DescriptorType type_ ) VULKAN_HPP_NOEXCEPT
- {
- type = type_;
- return *this;
- }
-
- DescriptorPoolSize & setDescriptorCount( uint32_t descriptorCount_ ) VULKAN_HPP_NOEXCEPT
- {
- descriptorCount = descriptorCount_;
- return *this;
- }
-
-
- operator VkDescriptorPoolSize const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDescriptorPoolSize*>( this );
- }
-
- operator VkDescriptorPoolSize &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDescriptorPoolSize*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DescriptorPoolSize const& ) const = default;
-#else
- bool operator==( DescriptorPoolSize const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( type == rhs.type )
- && ( descriptorCount == rhs.descriptorCount );
- }
-
- bool operator!=( DescriptorPoolSize const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::DescriptorType type = VULKAN_HPP_NAMESPACE::DescriptorType::eSampler;
- uint32_t descriptorCount = {};
-
- };
- static_assert( sizeof( DescriptorPoolSize ) == sizeof( VkDescriptorPoolSize ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DescriptorPoolSize>::value, "struct wrapper is not a standard layout!" );
-
- struct DescriptorPoolCreateInfo
+ struct StructExtends<ImageDrmFormatModifierExplicitCreateInfoEXT, ImageCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDescriptorPoolCreateInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DescriptorPoolCreateInfo(VULKAN_HPP_NAMESPACE::DescriptorPoolCreateFlags flags_ = {}, uint32_t maxSets_ = {}, uint32_t poolSizeCount_ = {}, const VULKAN_HPP_NAMESPACE::DescriptorPoolSize* pPoolSizes_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), maxSets( maxSets_ ), poolSizeCount( poolSizeCount_ ), pPoolSizes( pPoolSizes_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DescriptorPoolCreateInfo( DescriptorPoolCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DescriptorPoolCreateInfo( VkDescriptorPoolCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- DescriptorPoolCreateInfo( VULKAN_HPP_NAMESPACE::DescriptorPoolCreateFlags flags_, uint32_t maxSets_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DescriptorPoolSize> const & poolSizes_ )
- : flags( flags_ ), maxSets( maxSets_ ), poolSizeCount( static_cast<uint32_t>( poolSizes_.size() ) ), pPoolSizes( poolSizes_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DescriptorPoolCreateInfo & operator=( VkDescriptorPoolCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DescriptorPoolCreateInfo const *>( &rhs );
- return *this;
- }
-
- DescriptorPoolCreateInfo & operator=( DescriptorPoolCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DescriptorPoolCreateInfo ) );
- return *this;
- }
-
- DescriptorPoolCreateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- DescriptorPoolCreateInfo & setFlags( VULKAN_HPP_NAMESPACE::DescriptorPoolCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- DescriptorPoolCreateInfo & setMaxSets( uint32_t maxSets_ ) VULKAN_HPP_NOEXCEPT
- {
- maxSets = maxSets_;
- return *this;
- }
-
- DescriptorPoolCreateInfo & setPoolSizeCount( uint32_t poolSizeCount_ ) VULKAN_HPP_NOEXCEPT
- {
- poolSizeCount = poolSizeCount_;
- return *this;
- }
-
- DescriptorPoolCreateInfo & setPPoolSizes( const VULKAN_HPP_NAMESPACE::DescriptorPoolSize* pPoolSizes_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- pPoolSizes = pPoolSizes_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- DescriptorPoolCreateInfo & setPoolSizes( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DescriptorPoolSize> const & poolSizes_ ) VULKAN_HPP_NOEXCEPT
- {
- poolSizeCount = static_cast<uint32_t>( poolSizes_.size() );
- pPoolSizes = poolSizes_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkDescriptorPoolCreateInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDescriptorPoolCreateInfo*>( this );
- }
-
- operator VkDescriptorPoolCreateInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDescriptorPoolCreateInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DescriptorPoolCreateInfo const& ) const = default;
-#else
- bool operator==( DescriptorPoolCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( maxSets == rhs.maxSets )
- && ( poolSizeCount == rhs.poolSizeCount )
- && ( pPoolSizes == rhs.pPoolSizes );
- }
-
- bool operator!=( DescriptorPoolCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDescriptorPoolCreateInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::DescriptorPoolCreateFlags flags = {};
- uint32_t maxSets = {};
- uint32_t poolSizeCount = {};
- const VULKAN_HPP_NAMESPACE::DescriptorPoolSize* pPoolSizes = {};
-
+ value = true
+ };
};
- static_assert( sizeof( DescriptorPoolCreateInfo ) == sizeof( VkDescriptorPoolCreateInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DescriptorPoolCreateInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eDescriptorPoolCreateInfo>
+ struct StructExtends<ImageDrmFormatModifierListCreateInfoEXT, ImageCreateInfo>
{
- using Type = DescriptorPoolCreateInfo;
- };
-
- struct DescriptorPoolInlineUniformBlockCreateInfoEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDescriptorPoolInlineUniformBlockCreateInfoEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DescriptorPoolInlineUniformBlockCreateInfoEXT(uint32_t maxInlineUniformBlockBindings_ = {}) VULKAN_HPP_NOEXCEPT
- : maxInlineUniformBlockBindings( maxInlineUniformBlockBindings_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DescriptorPoolInlineUniformBlockCreateInfoEXT( DescriptorPoolInlineUniformBlockCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DescriptorPoolInlineUniformBlockCreateInfoEXT( VkDescriptorPoolInlineUniformBlockCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DescriptorPoolInlineUniformBlockCreateInfoEXT & operator=( VkDescriptorPoolInlineUniformBlockCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DescriptorPoolInlineUniformBlockCreateInfoEXT const *>( &rhs );
- return *this;
- }
-
- DescriptorPoolInlineUniformBlockCreateInfoEXT & operator=( DescriptorPoolInlineUniformBlockCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DescriptorPoolInlineUniformBlockCreateInfoEXT ) );
- return *this;
- }
-
- DescriptorPoolInlineUniformBlockCreateInfoEXT & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- DescriptorPoolInlineUniformBlockCreateInfoEXT & setMaxInlineUniformBlockBindings( uint32_t maxInlineUniformBlockBindings_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- maxInlineUniformBlockBindings = maxInlineUniformBlockBindings_;
- return *this;
- }
-
-
- operator VkDescriptorPoolInlineUniformBlockCreateInfoEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDescriptorPoolInlineUniformBlockCreateInfoEXT*>( this );
- }
-
- operator VkDescriptorPoolInlineUniformBlockCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDescriptorPoolInlineUniformBlockCreateInfoEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DescriptorPoolInlineUniformBlockCreateInfoEXT const& ) const = default;
-#else
- bool operator==( DescriptorPoolInlineUniformBlockCreateInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( maxInlineUniformBlockBindings == rhs.maxInlineUniformBlockBindings );
- }
-
- bool operator!=( DescriptorPoolInlineUniformBlockCreateInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDescriptorPoolInlineUniformBlockCreateInfoEXT;
- const void* pNext = {};
- uint32_t maxInlineUniformBlockBindings = {};
-
+ value = true
+ };
};
- static_assert( sizeof( DescriptorPoolInlineUniformBlockCreateInfoEXT ) == sizeof( VkDescriptorPoolInlineUniformBlockCreateInfoEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DescriptorPoolInlineUniformBlockCreateInfoEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eDescriptorPoolInlineUniformBlockCreateInfoEXT>
- {
- using Type = DescriptorPoolInlineUniformBlockCreateInfoEXT;
- };
-
- class DescriptorPool
+ struct StructExtends<ImageFormatListCreateInfo, ImageCreateInfo>
{
- public:
- using CType = VkDescriptorPool;
-
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::eDescriptorPool;
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType = VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eDescriptorPool;
-
- public:
- VULKAN_HPP_CONSTEXPR DescriptorPool() VULKAN_HPP_NOEXCEPT
- : m_descriptorPool(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_CONSTEXPR DescriptorPool( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- : m_descriptorPool(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_TYPESAFE_EXPLICIT DescriptorPool( VkDescriptorPool descriptorPool ) VULKAN_HPP_NOEXCEPT
- : m_descriptorPool( descriptorPool )
- {}
-
-#if defined(VULKAN_HPP_TYPESAFE_CONVERSION)
- DescriptorPool & operator=(VkDescriptorPool descriptorPool) VULKAN_HPP_NOEXCEPT
- {
- m_descriptorPool = descriptorPool;
- return *this;
- }
-#endif
-
- DescriptorPool & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
+ enum
{
- m_descriptorPool = VK_NULL_HANDLE;
- return *this;
- }
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DescriptorPool const& ) const = default;
-#else
- bool operator==( DescriptorPool const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_descriptorPool == rhs.m_descriptorPool;
- }
-
- bool operator!=(DescriptorPool const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_descriptorPool != rhs.m_descriptorPool;
- }
-
- bool operator<(DescriptorPool const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_descriptorPool < rhs.m_descriptorPool;
- }
-#endif
-
- VULKAN_HPP_TYPESAFE_EXPLICIT operator VkDescriptorPool() const VULKAN_HPP_NOEXCEPT
- {
- return m_descriptorPool;
- }
-
- explicit operator bool() const VULKAN_HPP_NOEXCEPT
- {
- return m_descriptorPool != VK_NULL_HANDLE;
- }
-
- bool operator!() const VULKAN_HPP_NOEXCEPT
- {
- return m_descriptorPool == VK_NULL_HANDLE;
- }
-
- private:
- VkDescriptorPool m_descriptorPool;
- };
- static_assert( sizeof( VULKAN_HPP_NAMESPACE::DescriptorPool ) == sizeof( VkDescriptorPool ), "handle and wrapper have different size!" );
-
- template <>
- struct VULKAN_HPP_DEPRECATED("vk::cpp_type is deprecated. Use vk::CppType instead.") cpp_type<ObjectType::eDescriptorPool>
- {
- using type = VULKAN_HPP_NAMESPACE::DescriptorPool;
- };
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eDescriptorPool>
- {
- using Type = VULKAN_HPP_NAMESPACE::DescriptorPool;
- };
-
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT, VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eDescriptorPool>
- {
- using Type = VULKAN_HPP_NAMESPACE::DescriptorPool;
+ value = true
+ };
};
-
-
template <>
- struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::DescriptorPool>
+ struct StructExtends<ImageFormatListCreateInfo, SwapchainCreateInfoKHR>
{
- static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
- };
-
- class DescriptorSetLayout
- {
- public:
- using CType = VkDescriptorSetLayout;
-
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::eDescriptorSetLayout;
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType = VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eDescriptorSetLayout;
-
- public:
- VULKAN_HPP_CONSTEXPR DescriptorSetLayout() VULKAN_HPP_NOEXCEPT
- : m_descriptorSetLayout(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_CONSTEXPR DescriptorSetLayout( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- : m_descriptorSetLayout(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_TYPESAFE_EXPLICIT DescriptorSetLayout( VkDescriptorSetLayout descriptorSetLayout ) VULKAN_HPP_NOEXCEPT
- : m_descriptorSetLayout( descriptorSetLayout )
- {}
-
-#if defined(VULKAN_HPP_TYPESAFE_CONVERSION)
- DescriptorSetLayout & operator=(VkDescriptorSetLayout descriptorSetLayout) VULKAN_HPP_NOEXCEPT
+ enum
{
- m_descriptorSetLayout = descriptorSetLayout;
- return *this;
- }
-#endif
-
- DescriptorSetLayout & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- {
- m_descriptorSetLayout = VK_NULL_HANDLE;
- return *this;
- }
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DescriptorSetLayout const& ) const = default;
-#else
- bool operator==( DescriptorSetLayout const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_descriptorSetLayout == rhs.m_descriptorSetLayout;
- }
-
- bool operator!=(DescriptorSetLayout const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_descriptorSetLayout != rhs.m_descriptorSetLayout;
- }
-
- bool operator<(DescriptorSetLayout const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_descriptorSetLayout < rhs.m_descriptorSetLayout;
- }
-#endif
-
- VULKAN_HPP_TYPESAFE_EXPLICIT operator VkDescriptorSetLayout() const VULKAN_HPP_NOEXCEPT
- {
- return m_descriptorSetLayout;
- }
-
- explicit operator bool() const VULKAN_HPP_NOEXCEPT
- {
- return m_descriptorSetLayout != VK_NULL_HANDLE;
- }
-
- bool operator!() const VULKAN_HPP_NOEXCEPT
- {
- return m_descriptorSetLayout == VK_NULL_HANDLE;
- }
-
- private:
- VkDescriptorSetLayout m_descriptorSetLayout;
- };
- static_assert( sizeof( VULKAN_HPP_NAMESPACE::DescriptorSetLayout ) == sizeof( VkDescriptorSetLayout ), "handle and wrapper have different size!" );
-
- template <>
- struct VULKAN_HPP_DEPRECATED("vk::cpp_type is deprecated. Use vk::CppType instead.") cpp_type<ObjectType::eDescriptorSetLayout>
- {
- using type = VULKAN_HPP_NAMESPACE::DescriptorSetLayout;
- };
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eDescriptorSetLayout>
- {
- using Type = VULKAN_HPP_NAMESPACE::DescriptorSetLayout;
- };
-
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT, VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eDescriptorSetLayout>
- {
- using Type = VULKAN_HPP_NAMESPACE::DescriptorSetLayout;
+ value = true
+ };
};
-
-
template <>
- struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::DescriptorSetLayout>
- {
- static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
- };
-
- struct DescriptorSetAllocateInfo
+ struct StructExtends<ImageFormatListCreateInfo, PhysicalDeviceImageFormatInfo2>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDescriptorSetAllocateInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DescriptorSetAllocateInfo(VULKAN_HPP_NAMESPACE::DescriptorPool descriptorPool_ = {}, uint32_t descriptorSetCount_ = {}, const VULKAN_HPP_NAMESPACE::DescriptorSetLayout* pSetLayouts_ = {}) VULKAN_HPP_NOEXCEPT
- : descriptorPool( descriptorPool_ ), descriptorSetCount( descriptorSetCount_ ), pSetLayouts( pSetLayouts_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DescriptorSetAllocateInfo( DescriptorSetAllocateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DescriptorSetAllocateInfo( VkDescriptorSetAllocateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- DescriptorSetAllocateInfo( VULKAN_HPP_NAMESPACE::DescriptorPool descriptorPool_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DescriptorSetLayout> const & setLayouts_ )
- : descriptorPool( descriptorPool_ ), descriptorSetCount( static_cast<uint32_t>( setLayouts_.size() ) ), pSetLayouts( setLayouts_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DescriptorSetAllocateInfo & operator=( VkDescriptorSetAllocateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DescriptorSetAllocateInfo const *>( &rhs );
- return *this;
- }
-
- DescriptorSetAllocateInfo & operator=( DescriptorSetAllocateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DescriptorSetAllocateInfo ) );
- return *this;
- }
-
- DescriptorSetAllocateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- DescriptorSetAllocateInfo & setDescriptorPool( VULKAN_HPP_NAMESPACE::DescriptorPool descriptorPool_ ) VULKAN_HPP_NOEXCEPT
- {
- descriptorPool = descriptorPool_;
- return *this;
- }
-
- DescriptorSetAllocateInfo & setDescriptorSetCount( uint32_t descriptorSetCount_ ) VULKAN_HPP_NOEXCEPT
- {
- descriptorSetCount = descriptorSetCount_;
- return *this;
- }
-
- DescriptorSetAllocateInfo & setPSetLayouts( const VULKAN_HPP_NAMESPACE::DescriptorSetLayout* pSetLayouts_ ) VULKAN_HPP_NOEXCEPT
- {
- pSetLayouts = pSetLayouts_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- DescriptorSetAllocateInfo & setSetLayouts( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DescriptorSetLayout> const & setLayouts_ ) VULKAN_HPP_NOEXCEPT
- {
- descriptorSetCount = static_cast<uint32_t>( setLayouts_.size() );
- pSetLayouts = setLayouts_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkDescriptorSetAllocateInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDescriptorSetAllocateInfo*>( this );
- }
-
- operator VkDescriptorSetAllocateInfo &() VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<VkDescriptorSetAllocateInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DescriptorSetAllocateInfo const& ) const = default;
-#else
- bool operator==( DescriptorSetAllocateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( descriptorPool == rhs.descriptorPool )
- && ( descriptorSetCount == rhs.descriptorSetCount )
- && ( pSetLayouts == rhs.pSetLayouts );
- }
-
- bool operator!=( DescriptorSetAllocateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDescriptorSetAllocateInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::DescriptorPool descriptorPool = {};
- uint32_t descriptorSetCount = {};
- const VULKAN_HPP_NAMESPACE::DescriptorSetLayout* pSetLayouts = {};
-
+ value = true
+ };
};
- static_assert( sizeof( DescriptorSetAllocateInfo ) == sizeof( VkDescriptorSetAllocateInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DescriptorSetAllocateInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eDescriptorSetAllocateInfo>
- {
- using Type = DescriptorSetAllocateInfo;
- };
-
- struct DescriptorSetLayoutBinding
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DescriptorSetLayoutBinding(uint32_t binding_ = {}, VULKAN_HPP_NAMESPACE::DescriptorType descriptorType_ = VULKAN_HPP_NAMESPACE::DescriptorType::eSampler, uint32_t descriptorCount_ = {}, VULKAN_HPP_NAMESPACE::ShaderStageFlags stageFlags_ = {}, const VULKAN_HPP_NAMESPACE::Sampler* pImmutableSamplers_ = {}) VULKAN_HPP_NOEXCEPT
- : binding( binding_ ), descriptorType( descriptorType_ ), descriptorCount( descriptorCount_ ), stageFlags( stageFlags_ ), pImmutableSamplers( pImmutableSamplers_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DescriptorSetLayoutBinding( DescriptorSetLayoutBinding const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DescriptorSetLayoutBinding( VkDescriptorSetLayoutBinding const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- DescriptorSetLayoutBinding( uint32_t binding_, VULKAN_HPP_NAMESPACE::DescriptorType descriptorType_, VULKAN_HPP_NAMESPACE::ShaderStageFlags stageFlags_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Sampler> const & immutableSamplers_ )
- : binding( binding_ ), descriptorType( descriptorType_ ), descriptorCount( static_cast<uint32_t>( immutableSamplers_.size() ) ), stageFlags( stageFlags_ ), pImmutableSamplers( immutableSamplers_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DescriptorSetLayoutBinding & operator=( VkDescriptorSetLayoutBinding const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DescriptorSetLayoutBinding const *>( &rhs );
- return *this;
- }
-
- DescriptorSetLayoutBinding & operator=( DescriptorSetLayoutBinding const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DescriptorSetLayoutBinding ) );
- return *this;
- }
-
- DescriptorSetLayoutBinding & setBinding( uint32_t binding_ ) VULKAN_HPP_NOEXCEPT
- {
- binding = binding_;
- return *this;
- }
-
- DescriptorSetLayoutBinding & setDescriptorType( VULKAN_HPP_NAMESPACE::DescriptorType descriptorType_ ) VULKAN_HPP_NOEXCEPT
- {
- descriptorType = descriptorType_;
- return *this;
- }
-
- DescriptorSetLayoutBinding & setDescriptorCount( uint32_t descriptorCount_ ) VULKAN_HPP_NOEXCEPT
- {
- descriptorCount = descriptorCount_;
- return *this;
- }
-
- DescriptorSetLayoutBinding & setStageFlags( VULKAN_HPP_NAMESPACE::ShaderStageFlags stageFlags_ ) VULKAN_HPP_NOEXCEPT
- {
- stageFlags = stageFlags_;
- return *this;
- }
-
- DescriptorSetLayoutBinding & setPImmutableSamplers( const VULKAN_HPP_NAMESPACE::Sampler* pImmutableSamplers_ ) VULKAN_HPP_NOEXCEPT
- {
- pImmutableSamplers = pImmutableSamplers_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- DescriptorSetLayoutBinding & setImmutableSamplers( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Sampler> const & immutableSamplers_ ) VULKAN_HPP_NOEXCEPT
- {
- descriptorCount = static_cast<uint32_t>( immutableSamplers_.size() );
- pImmutableSamplers = immutableSamplers_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkDescriptorSetLayoutBinding const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDescriptorSetLayoutBinding*>( this );
- }
-
- operator VkDescriptorSetLayoutBinding &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDescriptorSetLayoutBinding*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DescriptorSetLayoutBinding const& ) const = default;
-#else
- bool operator==( DescriptorSetLayoutBinding const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( binding == rhs.binding )
- && ( descriptorType == rhs.descriptorType )
- && ( descriptorCount == rhs.descriptorCount )
- && ( stageFlags == rhs.stageFlags )
- && ( pImmutableSamplers == rhs.pImmutableSamplers );
- }
-
- bool operator!=( DescriptorSetLayoutBinding const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- uint32_t binding = {};
- VULKAN_HPP_NAMESPACE::DescriptorType descriptorType = VULKAN_HPP_NAMESPACE::DescriptorType::eSampler;
- uint32_t descriptorCount = {};
- VULKAN_HPP_NAMESPACE::ShaderStageFlags stageFlags = {};
- const VULKAN_HPP_NAMESPACE::Sampler* pImmutableSamplers = {};
-
- };
- static_assert( sizeof( DescriptorSetLayoutBinding ) == sizeof( VkDescriptorSetLayoutBinding ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DescriptorSetLayoutBinding>::value, "struct wrapper is not a standard layout!" );
-
- struct DescriptorSetLayoutBindingFlagsCreateInfo
+ struct StructExtends<ImagePlaneMemoryRequirementsInfo, ImageMemoryRequirementsInfo2>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDescriptorSetLayoutBindingFlagsCreateInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DescriptorSetLayoutBindingFlagsCreateInfo(uint32_t bindingCount_ = {}, const VULKAN_HPP_NAMESPACE::DescriptorBindingFlags* pBindingFlags_ = {}) VULKAN_HPP_NOEXCEPT
- : bindingCount( bindingCount_ ), pBindingFlags( pBindingFlags_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DescriptorSetLayoutBindingFlagsCreateInfo( DescriptorSetLayoutBindingFlagsCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DescriptorSetLayoutBindingFlagsCreateInfo( VkDescriptorSetLayoutBindingFlagsCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- DescriptorSetLayoutBindingFlagsCreateInfo( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DescriptorBindingFlags> const & bindingFlags_ )
- : bindingCount( static_cast<uint32_t>( bindingFlags_.size() ) ), pBindingFlags( bindingFlags_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DescriptorSetLayoutBindingFlagsCreateInfo & operator=( VkDescriptorSetLayoutBindingFlagsCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DescriptorSetLayoutBindingFlagsCreateInfo const *>( &rhs );
- return *this;
- }
-
- DescriptorSetLayoutBindingFlagsCreateInfo & operator=( DescriptorSetLayoutBindingFlagsCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DescriptorSetLayoutBindingFlagsCreateInfo ) );
- return *this;
- }
-
- DescriptorSetLayoutBindingFlagsCreateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- DescriptorSetLayoutBindingFlagsCreateInfo & setBindingCount( uint32_t bindingCount_ ) VULKAN_HPP_NOEXCEPT
- {
- bindingCount = bindingCount_;
- return *this;
- }
-
- DescriptorSetLayoutBindingFlagsCreateInfo & setPBindingFlags( const VULKAN_HPP_NAMESPACE::DescriptorBindingFlags* pBindingFlags_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- pBindingFlags = pBindingFlags_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- DescriptorSetLayoutBindingFlagsCreateInfo & setBindingFlags( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DescriptorBindingFlags> const & bindingFlags_ ) VULKAN_HPP_NOEXCEPT
- {
- bindingCount = static_cast<uint32_t>( bindingFlags_.size() );
- pBindingFlags = bindingFlags_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkDescriptorSetLayoutBindingFlagsCreateInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDescriptorSetLayoutBindingFlagsCreateInfo*>( this );
- }
-
- operator VkDescriptorSetLayoutBindingFlagsCreateInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDescriptorSetLayoutBindingFlagsCreateInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DescriptorSetLayoutBindingFlagsCreateInfo const& ) const = default;
-#else
- bool operator==( DescriptorSetLayoutBindingFlagsCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( bindingCount == rhs.bindingCount )
- && ( pBindingFlags == rhs.pBindingFlags );
- }
-
- bool operator!=( DescriptorSetLayoutBindingFlagsCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDescriptorSetLayoutBindingFlagsCreateInfo;
- const void* pNext = {};
- uint32_t bindingCount = {};
- const VULKAN_HPP_NAMESPACE::DescriptorBindingFlags* pBindingFlags = {};
-
+ value = true
+ };
};
- static_assert( sizeof( DescriptorSetLayoutBindingFlagsCreateInfo ) == sizeof( VkDescriptorSetLayoutBindingFlagsCreateInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DescriptorSetLayoutBindingFlagsCreateInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eDescriptorSetLayoutBindingFlagsCreateInfo>
- {
- using Type = DescriptorSetLayoutBindingFlagsCreateInfo;
- };
- using DescriptorSetLayoutBindingFlagsCreateInfoEXT = DescriptorSetLayoutBindingFlagsCreateInfo;
-
- struct DescriptorSetLayoutCreateInfo
+ struct StructExtends<ImageStencilUsageCreateInfo, ImageCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDescriptorSetLayoutCreateInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DescriptorSetLayoutCreateInfo(VULKAN_HPP_NAMESPACE::DescriptorSetLayoutCreateFlags flags_ = {}, uint32_t bindingCount_ = {}, const VULKAN_HPP_NAMESPACE::DescriptorSetLayoutBinding* pBindings_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), bindingCount( bindingCount_ ), pBindings( pBindings_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DescriptorSetLayoutCreateInfo( DescriptorSetLayoutCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DescriptorSetLayoutCreateInfo( VkDescriptorSetLayoutCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- DescriptorSetLayoutCreateInfo( VULKAN_HPP_NAMESPACE::DescriptorSetLayoutCreateFlags flags_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DescriptorSetLayoutBinding> const & bindings_ )
- : flags( flags_ ), bindingCount( static_cast<uint32_t>( bindings_.size() ) ), pBindings( bindings_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DescriptorSetLayoutCreateInfo & operator=( VkDescriptorSetLayoutCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DescriptorSetLayoutCreateInfo const *>( &rhs );
- return *this;
- }
-
- DescriptorSetLayoutCreateInfo & operator=( DescriptorSetLayoutCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DescriptorSetLayoutCreateInfo ) );
- return *this;
- }
-
- DescriptorSetLayoutCreateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- DescriptorSetLayoutCreateInfo & setFlags( VULKAN_HPP_NAMESPACE::DescriptorSetLayoutCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- DescriptorSetLayoutCreateInfo & setBindingCount( uint32_t bindingCount_ ) VULKAN_HPP_NOEXCEPT
- {
- bindingCount = bindingCount_;
- return *this;
- }
-
- DescriptorSetLayoutCreateInfo & setPBindings( const VULKAN_HPP_NAMESPACE::DescriptorSetLayoutBinding* pBindings_ ) VULKAN_HPP_NOEXCEPT
- {
- pBindings = pBindings_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- DescriptorSetLayoutCreateInfo & setBindings( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DescriptorSetLayoutBinding> const & bindings_ ) VULKAN_HPP_NOEXCEPT
- {
- bindingCount = static_cast<uint32_t>( bindings_.size() );
- pBindings = bindings_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkDescriptorSetLayoutCreateInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDescriptorSetLayoutCreateInfo*>( this );
- }
-
- operator VkDescriptorSetLayoutCreateInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDescriptorSetLayoutCreateInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DescriptorSetLayoutCreateInfo const& ) const = default;
-#else
- bool operator==( DescriptorSetLayoutCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( bindingCount == rhs.bindingCount )
- && ( pBindings == rhs.pBindings );
- }
-
- bool operator!=( DescriptorSetLayoutCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDescriptorSetLayoutCreateInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::DescriptorSetLayoutCreateFlags flags = {};
- uint32_t bindingCount = {};
- const VULKAN_HPP_NAMESPACE::DescriptorSetLayoutBinding* pBindings = {};
-
+ value = true
+ };
};
- static_assert( sizeof( DescriptorSetLayoutCreateInfo ) == sizeof( VkDescriptorSetLayoutCreateInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DescriptorSetLayoutCreateInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eDescriptorSetLayoutCreateInfo>
- {
- using Type = DescriptorSetLayoutCreateInfo;
- };
-
- struct DescriptorSetLayoutSupport
+ struct StructExtends<ImageStencilUsageCreateInfo, PhysicalDeviceImageFormatInfo2>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDescriptorSetLayoutSupport;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DescriptorSetLayoutSupport(VULKAN_HPP_NAMESPACE::Bool32 supported_ = {}) VULKAN_HPP_NOEXCEPT
- : supported( supported_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DescriptorSetLayoutSupport( DescriptorSetLayoutSupport const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DescriptorSetLayoutSupport( VkDescriptorSetLayoutSupport const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DescriptorSetLayoutSupport & operator=( VkDescriptorSetLayoutSupport const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DescriptorSetLayoutSupport const *>( &rhs );
- return *this;
- }
-
- DescriptorSetLayoutSupport & operator=( DescriptorSetLayoutSupport const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DescriptorSetLayoutSupport ) );
- return *this;
- }
-
-
- operator VkDescriptorSetLayoutSupport const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDescriptorSetLayoutSupport*>( this );
- }
-
- operator VkDescriptorSetLayoutSupport &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDescriptorSetLayoutSupport*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DescriptorSetLayoutSupport const& ) const = default;
-#else
- bool operator==( DescriptorSetLayoutSupport const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( supported == rhs.supported );
- }
-
- bool operator!=( DescriptorSetLayoutSupport const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDescriptorSetLayoutSupport;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 supported = {};
-
+ value = true
+ };
};
- static_assert( sizeof( DescriptorSetLayoutSupport ) == sizeof( VkDescriptorSetLayoutSupport ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DescriptorSetLayoutSupport>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eDescriptorSetLayoutSupport>
+ struct StructExtends<ImageSwapchainCreateInfoKHR, ImageCreateInfo>
{
- using Type = DescriptorSetLayoutSupport;
- };
- using DescriptorSetLayoutSupportKHR = DescriptorSetLayoutSupport;
-
- struct DescriptorSetVariableDescriptorCountAllocateInfo
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDescriptorSetVariableDescriptorCountAllocateInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DescriptorSetVariableDescriptorCountAllocateInfo(uint32_t descriptorSetCount_ = {}, const uint32_t* pDescriptorCounts_ = {}) VULKAN_HPP_NOEXCEPT
- : descriptorSetCount( descriptorSetCount_ ), pDescriptorCounts( pDescriptorCounts_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DescriptorSetVariableDescriptorCountAllocateInfo( DescriptorSetVariableDescriptorCountAllocateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DescriptorSetVariableDescriptorCountAllocateInfo( VkDescriptorSetVariableDescriptorCountAllocateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- DescriptorSetVariableDescriptorCountAllocateInfo( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & descriptorCounts_ )
- : descriptorSetCount( static_cast<uint32_t>( descriptorCounts_.size() ) ), pDescriptorCounts( descriptorCounts_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DescriptorSetVariableDescriptorCountAllocateInfo & operator=( VkDescriptorSetVariableDescriptorCountAllocateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DescriptorSetVariableDescriptorCountAllocateInfo const *>( &rhs );
- return *this;
- }
-
- DescriptorSetVariableDescriptorCountAllocateInfo & operator=( DescriptorSetVariableDescriptorCountAllocateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DescriptorSetVariableDescriptorCountAllocateInfo ) );
- return *this;
- }
-
- DescriptorSetVariableDescriptorCountAllocateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- DescriptorSetVariableDescriptorCountAllocateInfo & setDescriptorSetCount( uint32_t descriptorSetCount_ ) VULKAN_HPP_NOEXCEPT
- {
- descriptorSetCount = descriptorSetCount_;
- return *this;
- }
-
- DescriptorSetVariableDescriptorCountAllocateInfo & setPDescriptorCounts( const uint32_t* pDescriptorCounts_ ) VULKAN_HPP_NOEXCEPT
- {
- pDescriptorCounts = pDescriptorCounts_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- DescriptorSetVariableDescriptorCountAllocateInfo & setDescriptorCounts( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & descriptorCounts_ ) VULKAN_HPP_NOEXCEPT
- {
- descriptorSetCount = static_cast<uint32_t>( descriptorCounts_.size() );
- pDescriptorCounts = descriptorCounts_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkDescriptorSetVariableDescriptorCountAllocateInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDescriptorSetVariableDescriptorCountAllocateInfo*>( this );
- }
-
- operator VkDescriptorSetVariableDescriptorCountAllocateInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDescriptorSetVariableDescriptorCountAllocateInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DescriptorSetVariableDescriptorCountAllocateInfo const& ) const = default;
-#else
- bool operator==( DescriptorSetVariableDescriptorCountAllocateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( descriptorSetCount == rhs.descriptorSetCount )
- && ( pDescriptorCounts == rhs.pDescriptorCounts );
- }
-
- bool operator!=( DescriptorSetVariableDescriptorCountAllocateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDescriptorSetVariableDescriptorCountAllocateInfo;
- const void* pNext = {};
- uint32_t descriptorSetCount = {};
- const uint32_t* pDescriptorCounts = {};
-
+ value = true
+ };
};
- static_assert( sizeof( DescriptorSetVariableDescriptorCountAllocateInfo ) == sizeof( VkDescriptorSetVariableDescriptorCountAllocateInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DescriptorSetVariableDescriptorCountAllocateInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eDescriptorSetVariableDescriptorCountAllocateInfo>
- {
- using Type = DescriptorSetVariableDescriptorCountAllocateInfo;
- };
- using DescriptorSetVariableDescriptorCountAllocateInfoEXT = DescriptorSetVariableDescriptorCountAllocateInfo;
-
- struct DescriptorSetVariableDescriptorCountLayoutSupport
+ struct StructExtends<ImageViewASTCDecodeModeEXT, ImageViewCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDescriptorSetVariableDescriptorCountLayoutSupport;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DescriptorSetVariableDescriptorCountLayoutSupport(uint32_t maxVariableDescriptorCount_ = {}) VULKAN_HPP_NOEXCEPT
- : maxVariableDescriptorCount( maxVariableDescriptorCount_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DescriptorSetVariableDescriptorCountLayoutSupport( DescriptorSetVariableDescriptorCountLayoutSupport const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DescriptorSetVariableDescriptorCountLayoutSupport( VkDescriptorSetVariableDescriptorCountLayoutSupport const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DescriptorSetVariableDescriptorCountLayoutSupport & operator=( VkDescriptorSetVariableDescriptorCountLayoutSupport const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DescriptorSetVariableDescriptorCountLayoutSupport const *>( &rhs );
- return *this;
- }
-
- DescriptorSetVariableDescriptorCountLayoutSupport & operator=( DescriptorSetVariableDescriptorCountLayoutSupport const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DescriptorSetVariableDescriptorCountLayoutSupport ) );
- return *this;
- }
-
-
- operator VkDescriptorSetVariableDescriptorCountLayoutSupport const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDescriptorSetVariableDescriptorCountLayoutSupport*>( this );
- }
-
- operator VkDescriptorSetVariableDescriptorCountLayoutSupport &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDescriptorSetVariableDescriptorCountLayoutSupport*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DescriptorSetVariableDescriptorCountLayoutSupport const& ) const = default;
-#else
- bool operator==( DescriptorSetVariableDescriptorCountLayoutSupport const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( maxVariableDescriptorCount == rhs.maxVariableDescriptorCount );
- }
-
- bool operator!=( DescriptorSetVariableDescriptorCountLayoutSupport const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDescriptorSetVariableDescriptorCountLayoutSupport;
- void* pNext = {};
- uint32_t maxVariableDescriptorCount = {};
-
+ value = true
+ };
};
- static_assert( sizeof( DescriptorSetVariableDescriptorCountLayoutSupport ) == sizeof( VkDescriptorSetVariableDescriptorCountLayoutSupport ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DescriptorSetVariableDescriptorCountLayoutSupport>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eDescriptorSetVariableDescriptorCountLayoutSupport>
- {
- using Type = DescriptorSetVariableDescriptorCountLayoutSupport;
- };
- using DescriptorSetVariableDescriptorCountLayoutSupportEXT = DescriptorSetVariableDescriptorCountLayoutSupport;
-
- struct DescriptorUpdateTemplateEntry
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DescriptorUpdateTemplateEntry(uint32_t dstBinding_ = {}, uint32_t dstArrayElement_ = {}, uint32_t descriptorCount_ = {}, VULKAN_HPP_NAMESPACE::DescriptorType descriptorType_ = VULKAN_HPP_NAMESPACE::DescriptorType::eSampler, size_t offset_ = {}, size_t stride_ = {}) VULKAN_HPP_NOEXCEPT
- : dstBinding( dstBinding_ ), dstArrayElement( dstArrayElement_ ), descriptorCount( descriptorCount_ ), descriptorType( descriptorType_ ), offset( offset_ ), stride( stride_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DescriptorUpdateTemplateEntry( DescriptorUpdateTemplateEntry const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DescriptorUpdateTemplateEntry( VkDescriptorUpdateTemplateEntry const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DescriptorUpdateTemplateEntry & operator=( VkDescriptorUpdateTemplateEntry const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateEntry const *>( &rhs );
- return *this;
- }
-
- DescriptorUpdateTemplateEntry & operator=( DescriptorUpdateTemplateEntry const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DescriptorUpdateTemplateEntry ) );
- return *this;
- }
-
- DescriptorUpdateTemplateEntry & setDstBinding( uint32_t dstBinding_ ) VULKAN_HPP_NOEXCEPT
- {
- dstBinding = dstBinding_;
- return *this;
- }
-
- DescriptorUpdateTemplateEntry & setDstArrayElement( uint32_t dstArrayElement_ ) VULKAN_HPP_NOEXCEPT
- {
- dstArrayElement = dstArrayElement_;
- return *this;
- }
-
- DescriptorUpdateTemplateEntry & setDescriptorCount( uint32_t descriptorCount_ ) VULKAN_HPP_NOEXCEPT
- {
- descriptorCount = descriptorCount_;
- return *this;
- }
-
- DescriptorUpdateTemplateEntry & setDescriptorType( VULKAN_HPP_NAMESPACE::DescriptorType descriptorType_ ) VULKAN_HPP_NOEXCEPT
- {
- descriptorType = descriptorType_;
- return *this;
- }
-
- DescriptorUpdateTemplateEntry & setOffset( size_t offset_ ) VULKAN_HPP_NOEXCEPT
- {
- offset = offset_;
- return *this;
- }
-
- DescriptorUpdateTemplateEntry & setStride( size_t stride_ ) VULKAN_HPP_NOEXCEPT
- {
- stride = stride_;
- return *this;
- }
-
-
- operator VkDescriptorUpdateTemplateEntry const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDescriptorUpdateTemplateEntry*>( this );
- }
-
- operator VkDescriptorUpdateTemplateEntry &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDescriptorUpdateTemplateEntry*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DescriptorUpdateTemplateEntry const& ) const = default;
-#else
- bool operator==( DescriptorUpdateTemplateEntry const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( dstBinding == rhs.dstBinding )
- && ( dstArrayElement == rhs.dstArrayElement )
- && ( descriptorCount == rhs.descriptorCount )
- && ( descriptorType == rhs.descriptorType )
- && ( offset == rhs.offset )
- && ( stride == rhs.stride );
- }
-
- bool operator!=( DescriptorUpdateTemplateEntry const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- uint32_t dstBinding = {};
- uint32_t dstArrayElement = {};
- uint32_t descriptorCount = {};
- VULKAN_HPP_NAMESPACE::DescriptorType descriptorType = VULKAN_HPP_NAMESPACE::DescriptorType::eSampler;
- size_t offset = {};
- size_t stride = {};
-
- };
- static_assert( sizeof( DescriptorUpdateTemplateEntry ) == sizeof( VkDescriptorUpdateTemplateEntry ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DescriptorUpdateTemplateEntry>::value, "struct wrapper is not a standard layout!" );
- using DescriptorUpdateTemplateEntryKHR = DescriptorUpdateTemplateEntry;
-
- struct DescriptorUpdateTemplateCreateInfo
+ struct StructExtends<ImageViewUsageCreateInfo, ImageViewCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDescriptorUpdateTemplateCreateInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DescriptorUpdateTemplateCreateInfo(VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateCreateFlags flags_ = {}, uint32_t descriptorUpdateEntryCount_ = {}, const VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateEntry* pDescriptorUpdateEntries_ = {}, VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateType templateType_ = VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateType::eDescriptorSet, VULKAN_HPP_NAMESPACE::DescriptorSetLayout descriptorSetLayout_ = {}, VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint_ = VULKAN_HPP_NAMESPACE::PipelineBindPoint::eGraphics, VULKAN_HPP_NAMESPACE::PipelineLayout pipelineLayout_ = {}, uint32_t set_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), descriptorUpdateEntryCount( descriptorUpdateEntryCount_ ), pDescriptorUpdateEntries( pDescriptorUpdateEntries_ ), templateType( templateType_ ), descriptorSetLayout( descriptorSetLayout_ ), pipelineBindPoint( pipelineBindPoint_ ), pipelineLayout( pipelineLayout_ ), set( set_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DescriptorUpdateTemplateCreateInfo( DescriptorUpdateTemplateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DescriptorUpdateTemplateCreateInfo( VkDescriptorUpdateTemplateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- DescriptorUpdateTemplateCreateInfo( VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateCreateFlags flags_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateEntry> const & descriptorUpdateEntries_, VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateType templateType_ = VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateType::eDescriptorSet, VULKAN_HPP_NAMESPACE::DescriptorSetLayout descriptorSetLayout_ = {}, VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint_ = VULKAN_HPP_NAMESPACE::PipelineBindPoint::eGraphics, VULKAN_HPP_NAMESPACE::PipelineLayout pipelineLayout_ = {}, uint32_t set_ = {} )
- : flags( flags_ ), descriptorUpdateEntryCount( static_cast<uint32_t>( descriptorUpdateEntries_.size() ) ), pDescriptorUpdateEntries( descriptorUpdateEntries_.data() ), templateType( templateType_ ), descriptorSetLayout( descriptorSetLayout_ ), pipelineBindPoint( pipelineBindPoint_ ), pipelineLayout( pipelineLayout_ ), set( set_ )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DescriptorUpdateTemplateCreateInfo & operator=( VkDescriptorUpdateTemplateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateCreateInfo const *>( &rhs );
- return *this;
- }
-
- DescriptorUpdateTemplateCreateInfo & operator=( DescriptorUpdateTemplateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DescriptorUpdateTemplateCreateInfo ) );
- return *this;
- }
-
- DescriptorUpdateTemplateCreateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- DescriptorUpdateTemplateCreateInfo & setFlags( VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- DescriptorUpdateTemplateCreateInfo & setDescriptorUpdateEntryCount( uint32_t descriptorUpdateEntryCount_ ) VULKAN_HPP_NOEXCEPT
- {
- descriptorUpdateEntryCount = descriptorUpdateEntryCount_;
- return *this;
- }
-
- DescriptorUpdateTemplateCreateInfo & setPDescriptorUpdateEntries( const VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateEntry* pDescriptorUpdateEntries_ ) VULKAN_HPP_NOEXCEPT
- {
- pDescriptorUpdateEntries = pDescriptorUpdateEntries_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- DescriptorUpdateTemplateCreateInfo & setDescriptorUpdateEntries( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateEntry> const & descriptorUpdateEntries_ ) VULKAN_HPP_NOEXCEPT
- {
- descriptorUpdateEntryCount = static_cast<uint32_t>( descriptorUpdateEntries_.size() );
- pDescriptorUpdateEntries = descriptorUpdateEntries_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- DescriptorUpdateTemplateCreateInfo & setTemplateType( VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateType templateType_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- templateType = templateType_;
- return *this;
- }
-
- DescriptorUpdateTemplateCreateInfo & setDescriptorSetLayout( VULKAN_HPP_NAMESPACE::DescriptorSetLayout descriptorSetLayout_ ) VULKAN_HPP_NOEXCEPT
- {
- descriptorSetLayout = descriptorSetLayout_;
- return *this;
- }
-
- DescriptorUpdateTemplateCreateInfo & setPipelineBindPoint( VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint_ ) VULKAN_HPP_NOEXCEPT
- {
- pipelineBindPoint = pipelineBindPoint_;
- return *this;
- }
-
- DescriptorUpdateTemplateCreateInfo & setPipelineLayout( VULKAN_HPP_NAMESPACE::PipelineLayout pipelineLayout_ ) VULKAN_HPP_NOEXCEPT
- {
- pipelineLayout = pipelineLayout_;
- return *this;
- }
-
- DescriptorUpdateTemplateCreateInfo & setSet( uint32_t set_ ) VULKAN_HPP_NOEXCEPT
- {
- set = set_;
- return *this;
- }
-
-
- operator VkDescriptorUpdateTemplateCreateInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDescriptorUpdateTemplateCreateInfo*>( this );
- }
-
- operator VkDescriptorUpdateTemplateCreateInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDescriptorUpdateTemplateCreateInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DescriptorUpdateTemplateCreateInfo const& ) const = default;
-#else
- bool operator==( DescriptorUpdateTemplateCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( descriptorUpdateEntryCount == rhs.descriptorUpdateEntryCount )
- && ( pDescriptorUpdateEntries == rhs.pDescriptorUpdateEntries )
- && ( templateType == rhs.templateType )
- && ( descriptorSetLayout == rhs.descriptorSetLayout )
- && ( pipelineBindPoint == rhs.pipelineBindPoint )
- && ( pipelineLayout == rhs.pipelineLayout )
- && ( set == rhs.set );
- }
-
- bool operator!=( DescriptorUpdateTemplateCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDescriptorUpdateTemplateCreateInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateCreateFlags flags = {};
- uint32_t descriptorUpdateEntryCount = {};
- const VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateEntry* pDescriptorUpdateEntries = {};
- VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateType templateType = VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateType::eDescriptorSet;
- VULKAN_HPP_NAMESPACE::DescriptorSetLayout descriptorSetLayout = {};
- VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint = VULKAN_HPP_NAMESPACE::PipelineBindPoint::eGraphics;
- VULKAN_HPP_NAMESPACE::PipelineLayout pipelineLayout = {};
- uint32_t set = {};
-
+ value = true
+ };
};
- static_assert( sizeof( DescriptorUpdateTemplateCreateInfo ) == sizeof( VkDescriptorUpdateTemplateCreateInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DescriptorUpdateTemplateCreateInfo>::value, "struct wrapper is not a standard layout!" );
-
+#if defined( VK_USE_PLATFORM_ANDROID_KHR )
template <>
- struct CppType<StructureType, StructureType::eDescriptorUpdateTemplateCreateInfo>
- {
- using Type = DescriptorUpdateTemplateCreateInfo;
- };
- using DescriptorUpdateTemplateCreateInfoKHR = DescriptorUpdateTemplateCreateInfo;
-
- struct DeviceQueueCreateInfo
+ struct StructExtends<ImportAndroidHardwareBufferInfoANDROID, MemoryAllocateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDeviceQueueCreateInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DeviceQueueCreateInfo(VULKAN_HPP_NAMESPACE::DeviceQueueCreateFlags flags_ = {}, uint32_t queueFamilyIndex_ = {}, uint32_t queueCount_ = {}, const float* pQueuePriorities_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), queueFamilyIndex( queueFamilyIndex_ ), queueCount( queueCount_ ), pQueuePriorities( pQueuePriorities_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DeviceQueueCreateInfo( DeviceQueueCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DeviceQueueCreateInfo( VkDeviceQueueCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- DeviceQueueCreateInfo( VULKAN_HPP_NAMESPACE::DeviceQueueCreateFlags flags_, uint32_t queueFamilyIndex_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const float> const & queuePriorities_ )
- : flags( flags_ ), queueFamilyIndex( queueFamilyIndex_ ), queueCount( static_cast<uint32_t>( queuePriorities_.size() ) ), pQueuePriorities( queuePriorities_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DeviceQueueCreateInfo & operator=( VkDeviceQueueCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DeviceQueueCreateInfo const *>( &rhs );
- return *this;
- }
-
- DeviceQueueCreateInfo & operator=( DeviceQueueCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DeviceQueueCreateInfo ) );
- return *this;
- }
-
- DeviceQueueCreateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- DeviceQueueCreateInfo & setFlags( VULKAN_HPP_NAMESPACE::DeviceQueueCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- flags = flags_;
- return *this;
- }
-
- DeviceQueueCreateInfo & setQueueFamilyIndex( uint32_t queueFamilyIndex_ ) VULKAN_HPP_NOEXCEPT
- {
- queueFamilyIndex = queueFamilyIndex_;
- return *this;
- }
-
- DeviceQueueCreateInfo & setQueueCount( uint32_t queueCount_ ) VULKAN_HPP_NOEXCEPT
- {
- queueCount = queueCount_;
- return *this;
- }
-
- DeviceQueueCreateInfo & setPQueuePriorities( const float* pQueuePriorities_ ) VULKAN_HPP_NOEXCEPT
- {
- pQueuePriorities = pQueuePriorities_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- DeviceQueueCreateInfo & setQueuePriorities( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const float> const & queuePriorities_ ) VULKAN_HPP_NOEXCEPT
- {
- queueCount = static_cast<uint32_t>( queuePriorities_.size() );
- pQueuePriorities = queuePriorities_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkDeviceQueueCreateInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDeviceQueueCreateInfo*>( this );
- }
-
- operator VkDeviceQueueCreateInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDeviceQueueCreateInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DeviceQueueCreateInfo const& ) const = default;
-#else
- bool operator==( DeviceQueueCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( queueFamilyIndex == rhs.queueFamilyIndex )
- && ( queueCount == rhs.queueCount )
- && ( pQueuePriorities == rhs.pQueuePriorities );
- }
-
- bool operator!=( DeviceQueueCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDeviceQueueCreateInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::DeviceQueueCreateFlags flags = {};
- uint32_t queueFamilyIndex = {};
- uint32_t queueCount = {};
- const float* pQueuePriorities = {};
-
+ value = true
+ };
};
- static_assert( sizeof( DeviceQueueCreateInfo ) == sizeof( VkDeviceQueueCreateInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DeviceQueueCreateInfo>::value, "struct wrapper is not a standard layout!" );
-
+#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
template <>
- struct CppType<StructureType, StructureType::eDeviceQueueCreateInfo>
- {
- using Type = DeviceQueueCreateInfo;
- };
-
- struct PhysicalDeviceFeatures
+ struct StructExtends<ImportMemoryFdInfoKHR, MemoryAllocateInfo>
{
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceFeatures(VULKAN_HPP_NAMESPACE::Bool32 robustBufferAccess_ = {}, VULKAN_HPP_NAMESPACE::Bool32 fullDrawIndexUint32_ = {}, VULKAN_HPP_NAMESPACE::Bool32 imageCubeArray_ = {}, VULKAN_HPP_NAMESPACE::Bool32 independentBlend_ = {}, VULKAN_HPP_NAMESPACE::Bool32 geometryShader_ = {}, VULKAN_HPP_NAMESPACE::Bool32 tessellationShader_ = {}, VULKAN_HPP_NAMESPACE::Bool32 sampleRateShading_ = {}, VULKAN_HPP_NAMESPACE::Bool32 dualSrcBlend_ = {}, VULKAN_HPP_NAMESPACE::Bool32 logicOp_ = {}, VULKAN_HPP_NAMESPACE::Bool32 multiDrawIndirect_ = {}, VULKAN_HPP_NAMESPACE::Bool32 drawIndirectFirstInstance_ = {}, VULKAN_HPP_NAMESPACE::Bool32 depthClamp_ = {}, VULKAN_HPP_NAMESPACE::Bool32 depthBiasClamp_ = {}, VULKAN_HPP_NAMESPACE::Bool32 fillModeNonSolid_ = {}, VULKAN_HPP_NAMESPACE::Bool32 depthBounds_ = {}, VULKAN_HPP_NAMESPACE::Bool32 wideLines_ = {}, VULKAN_HPP_NAMESPACE::Bool32 largePoints_ = {}, VULKAN_HPP_NAMESPACE::Bool32 alphaToOne_ = {}, VULKAN_HPP_NAMESPACE::Bool32 multiViewport_ = {}, VULKAN_HPP_NAMESPACE::Bool32 samplerAnisotropy_ = {}, VULKAN_HPP_NAMESPACE::Bool32 textureCompressionETC2_ = {}, VULKAN_HPP_NAMESPACE::Bool32 textureCompressionASTC_LDR_ = {}, VULKAN_HPP_NAMESPACE::Bool32 textureCompressionBC_ = {}, VULKAN_HPP_NAMESPACE::Bool32 occlusionQueryPrecise_ = {}, VULKAN_HPP_NAMESPACE::Bool32 pipelineStatisticsQuery_ = {}, VULKAN_HPP_NAMESPACE::Bool32 vertexPipelineStoresAndAtomics_ = {}, VULKAN_HPP_NAMESPACE::Bool32 fragmentStoresAndAtomics_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderTessellationAndGeometryPointSize_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderImageGatherExtended_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageExtendedFormats_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageMultisample_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageReadWithoutFormat_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageWriteWithoutFormat_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderUniformBufferArrayDynamicIndexing_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderSampledImageArrayDynamicIndexing_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderStorageBufferArrayDynamicIndexing_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageArrayDynamicIndexing_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderClipDistance_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderCullDistance_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderFloat64_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderInt64_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderInt16_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderResourceResidency_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderResourceMinLod_ = {}, VULKAN_HPP_NAMESPACE::Bool32 sparseBinding_ = {}, VULKAN_HPP_NAMESPACE::Bool32 sparseResidencyBuffer_ = {}, VULKAN_HPP_NAMESPACE::Bool32 sparseResidencyImage2D_ = {}, VULKAN_HPP_NAMESPACE::Bool32 sparseResidencyImage3D_ = {}, VULKAN_HPP_NAMESPACE::Bool32 sparseResidency2Samples_ = {}, VULKAN_HPP_NAMESPACE::Bool32 sparseResidency4Samples_ = {}, VULKAN_HPP_NAMESPACE::Bool32 sparseResidency8Samples_ = {}, VULKAN_HPP_NAMESPACE::Bool32 sparseResidency16Samples_ = {}, VULKAN_HPP_NAMESPACE::Bool32 sparseResidencyAliased_ = {}, VULKAN_HPP_NAMESPACE::Bool32 variableMultisampleRate_ = {}, VULKAN_HPP_NAMESPACE::Bool32 inheritedQueries_ = {}) VULKAN_HPP_NOEXCEPT
- : robustBufferAccess( robustBufferAccess_ ), fullDrawIndexUint32( fullDrawIndexUint32_ ), imageCubeArray( imageCubeArray_ ), independentBlend( independentBlend_ ), geometryShader( geometryShader_ ), tessellationShader( tessellationShader_ ), sampleRateShading( sampleRateShading_ ), dualSrcBlend( dualSrcBlend_ ), logicOp( logicOp_ ), multiDrawIndirect( multiDrawIndirect_ ), drawIndirectFirstInstance( drawIndirectFirstInstance_ ), depthClamp( depthClamp_ ), depthBiasClamp( depthBiasClamp_ ), fillModeNonSolid( fillModeNonSolid_ ), depthBounds( depthBounds_ ), wideLines( wideLines_ ), largePoints( largePoints_ ), alphaToOne( alphaToOne_ ), multiViewport( multiViewport_ ), samplerAnisotropy( samplerAnisotropy_ ), textureCompressionETC2( textureCompressionETC2_ ), textureCompressionASTC_LDR( textureCompressionASTC_LDR_ ), textureCompressionBC( textureCompressionBC_ ), occlusionQueryPrecise( occlusionQueryPrecise_ ), pipelineStatisticsQuery( pipelineStatisticsQuery_ ), vertexPipelineStoresAndAtomics( vertexPipelineStoresAndAtomics_ ), fragmentStoresAndAtomics( fragmentStoresAndAtomics_ ), shaderTessellationAndGeometryPointSize( shaderTessellationAndGeometryPointSize_ ), shaderImageGatherExtended( shaderImageGatherExtended_ ), shaderStorageImageExtendedFormats( shaderStorageImageExtendedFormats_ ), shaderStorageImageMultisample( shaderStorageImageMultisample_ ), shaderStorageImageReadWithoutFormat( shaderStorageImageReadWithoutFormat_ ), shaderStorageImageWriteWithoutFormat( shaderStorageImageWriteWithoutFormat_ ), shaderUniformBufferArrayDynamicIndexing( shaderUniformBufferArrayDynamicIndexing_ ), shaderSampledImageArrayDynamicIndexing( shaderSampledImageArrayDynamicIndexing_ ), shaderStorageBufferArrayDynamicIndexing( shaderStorageBufferArrayDynamicIndexing_ ), shaderStorageImageArrayDynamicIndexing( shaderStorageImageArrayDynamicIndexing_ ), shaderClipDistance( shaderClipDistance_ ), shaderCullDistance( shaderCullDistance_ ), shaderFloat64( shaderFloat64_ ), shaderInt64( shaderInt64_ ), shaderInt16( shaderInt16_ ), shaderResourceResidency( shaderResourceResidency_ ), shaderResourceMinLod( shaderResourceMinLod_ ), sparseBinding( sparseBinding_ ), sparseResidencyBuffer( sparseResidencyBuffer_ ), sparseResidencyImage2D( sparseResidencyImage2D_ ), sparseResidencyImage3D( sparseResidencyImage3D_ ), sparseResidency2Samples( sparseResidency2Samples_ ), sparseResidency4Samples( sparseResidency4Samples_ ), sparseResidency8Samples( sparseResidency8Samples_ ), sparseResidency16Samples( sparseResidency16Samples_ ), sparseResidencyAliased( sparseResidencyAliased_ ), variableMultisampleRate( variableMultisampleRate_ ), inheritedQueries( inheritedQueries_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceFeatures( PhysicalDeviceFeatures const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceFeatures( VkPhysicalDeviceFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceFeatures & operator=( VkPhysicalDeviceFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceFeatures & operator=( PhysicalDeviceFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceFeatures ) );
- return *this;
- }
-
- PhysicalDeviceFeatures & setRobustBufferAccess( VULKAN_HPP_NAMESPACE::Bool32 robustBufferAccess_ ) VULKAN_HPP_NOEXCEPT
- {
- robustBufferAccess = robustBufferAccess_;
- return *this;
- }
-
- PhysicalDeviceFeatures & setFullDrawIndexUint32( VULKAN_HPP_NAMESPACE::Bool32 fullDrawIndexUint32_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- fullDrawIndexUint32 = fullDrawIndexUint32_;
- return *this;
- }
-
- PhysicalDeviceFeatures & setImageCubeArray( VULKAN_HPP_NAMESPACE::Bool32 imageCubeArray_ ) VULKAN_HPP_NOEXCEPT
- {
- imageCubeArray = imageCubeArray_;
- return *this;
- }
-
- PhysicalDeviceFeatures & setIndependentBlend( VULKAN_HPP_NAMESPACE::Bool32 independentBlend_ ) VULKAN_HPP_NOEXCEPT
- {
- independentBlend = independentBlend_;
- return *this;
- }
-
- PhysicalDeviceFeatures & setGeometryShader( VULKAN_HPP_NAMESPACE::Bool32 geometryShader_ ) VULKAN_HPP_NOEXCEPT
- {
- geometryShader = geometryShader_;
- return *this;
- }
-
- PhysicalDeviceFeatures & setTessellationShader( VULKAN_HPP_NAMESPACE::Bool32 tessellationShader_ ) VULKAN_HPP_NOEXCEPT
- {
- tessellationShader = tessellationShader_;
- return *this;
- }
-
- PhysicalDeviceFeatures & setSampleRateShading( VULKAN_HPP_NAMESPACE::Bool32 sampleRateShading_ ) VULKAN_HPP_NOEXCEPT
- {
- sampleRateShading = sampleRateShading_;
- return *this;
- }
-
- PhysicalDeviceFeatures & setDualSrcBlend( VULKAN_HPP_NAMESPACE::Bool32 dualSrcBlend_ ) VULKAN_HPP_NOEXCEPT
- {
- dualSrcBlend = dualSrcBlend_;
- return *this;
- }
-
- PhysicalDeviceFeatures & setLogicOp( VULKAN_HPP_NAMESPACE::Bool32 logicOp_ ) VULKAN_HPP_NOEXCEPT
- {
- logicOp = logicOp_;
- return *this;
- }
-
- PhysicalDeviceFeatures & setMultiDrawIndirect( VULKAN_HPP_NAMESPACE::Bool32 multiDrawIndirect_ ) VULKAN_HPP_NOEXCEPT
- {
- multiDrawIndirect = multiDrawIndirect_;
- return *this;
- }
-
- PhysicalDeviceFeatures & setDrawIndirectFirstInstance( VULKAN_HPP_NAMESPACE::Bool32 drawIndirectFirstInstance_ ) VULKAN_HPP_NOEXCEPT
- {
- drawIndirectFirstInstance = drawIndirectFirstInstance_;
- return *this;
- }
-
- PhysicalDeviceFeatures & setDepthClamp( VULKAN_HPP_NAMESPACE::Bool32 depthClamp_ ) VULKAN_HPP_NOEXCEPT
- {
- depthClamp = depthClamp_;
- return *this;
- }
-
- PhysicalDeviceFeatures & setDepthBiasClamp( VULKAN_HPP_NAMESPACE::Bool32 depthBiasClamp_ ) VULKAN_HPP_NOEXCEPT
- {
- depthBiasClamp = depthBiasClamp_;
- return *this;
- }
-
- PhysicalDeviceFeatures & setFillModeNonSolid( VULKAN_HPP_NAMESPACE::Bool32 fillModeNonSolid_ ) VULKAN_HPP_NOEXCEPT
- {
- fillModeNonSolid = fillModeNonSolid_;
- return *this;
- }
-
- PhysicalDeviceFeatures & setDepthBounds( VULKAN_HPP_NAMESPACE::Bool32 depthBounds_ ) VULKAN_HPP_NOEXCEPT
- {
- depthBounds = depthBounds_;
- return *this;
- }
-
- PhysicalDeviceFeatures & setWideLines( VULKAN_HPP_NAMESPACE::Bool32 wideLines_ ) VULKAN_HPP_NOEXCEPT
- {
- wideLines = wideLines_;
- return *this;
- }
-
- PhysicalDeviceFeatures & setLargePoints( VULKAN_HPP_NAMESPACE::Bool32 largePoints_ ) VULKAN_HPP_NOEXCEPT
- {
- largePoints = largePoints_;
- return *this;
- }
-
- PhysicalDeviceFeatures & setAlphaToOne( VULKAN_HPP_NAMESPACE::Bool32 alphaToOne_ ) VULKAN_HPP_NOEXCEPT
- {
- alphaToOne = alphaToOne_;
- return *this;
- }
-
- PhysicalDeviceFeatures & setMultiViewport( VULKAN_HPP_NAMESPACE::Bool32 multiViewport_ ) VULKAN_HPP_NOEXCEPT
- {
- multiViewport = multiViewport_;
- return *this;
- }
-
- PhysicalDeviceFeatures & setSamplerAnisotropy( VULKAN_HPP_NAMESPACE::Bool32 samplerAnisotropy_ ) VULKAN_HPP_NOEXCEPT
- {
- samplerAnisotropy = samplerAnisotropy_;
- return *this;
- }
-
- PhysicalDeviceFeatures & setTextureCompressionETC2( VULKAN_HPP_NAMESPACE::Bool32 textureCompressionETC2_ ) VULKAN_HPP_NOEXCEPT
- {
- textureCompressionETC2 = textureCompressionETC2_;
- return *this;
- }
-
- PhysicalDeviceFeatures & setTextureCompressionASTC_LDR( VULKAN_HPP_NAMESPACE::Bool32 textureCompressionASTC_LDR_ ) VULKAN_HPP_NOEXCEPT
- {
- textureCompressionASTC_LDR = textureCompressionASTC_LDR_;
- return *this;
- }
-
- PhysicalDeviceFeatures & setTextureCompressionBC( VULKAN_HPP_NAMESPACE::Bool32 textureCompressionBC_ ) VULKAN_HPP_NOEXCEPT
- {
- textureCompressionBC = textureCompressionBC_;
- return *this;
- }
-
- PhysicalDeviceFeatures & setOcclusionQueryPrecise( VULKAN_HPP_NAMESPACE::Bool32 occlusionQueryPrecise_ ) VULKAN_HPP_NOEXCEPT
- {
- occlusionQueryPrecise = occlusionQueryPrecise_;
- return *this;
- }
-
- PhysicalDeviceFeatures & setPipelineStatisticsQuery( VULKAN_HPP_NAMESPACE::Bool32 pipelineStatisticsQuery_ ) VULKAN_HPP_NOEXCEPT
- {
- pipelineStatisticsQuery = pipelineStatisticsQuery_;
- return *this;
- }
-
- PhysicalDeviceFeatures & setVertexPipelineStoresAndAtomics( VULKAN_HPP_NAMESPACE::Bool32 vertexPipelineStoresAndAtomics_ ) VULKAN_HPP_NOEXCEPT
- {
- vertexPipelineStoresAndAtomics = vertexPipelineStoresAndAtomics_;
- return *this;
- }
-
- PhysicalDeviceFeatures & setFragmentStoresAndAtomics( VULKAN_HPP_NAMESPACE::Bool32 fragmentStoresAndAtomics_ ) VULKAN_HPP_NOEXCEPT
- {
- fragmentStoresAndAtomics = fragmentStoresAndAtomics_;
- return *this;
- }
-
- PhysicalDeviceFeatures & setShaderTessellationAndGeometryPointSize( VULKAN_HPP_NAMESPACE::Bool32 shaderTessellationAndGeometryPointSize_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderTessellationAndGeometryPointSize = shaderTessellationAndGeometryPointSize_;
- return *this;
- }
-
- PhysicalDeviceFeatures & setShaderImageGatherExtended( VULKAN_HPP_NAMESPACE::Bool32 shaderImageGatherExtended_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderImageGatherExtended = shaderImageGatherExtended_;
- return *this;
- }
-
- PhysicalDeviceFeatures & setShaderStorageImageExtendedFormats( VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageExtendedFormats_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderStorageImageExtendedFormats = shaderStorageImageExtendedFormats_;
- return *this;
- }
-
- PhysicalDeviceFeatures & setShaderStorageImageMultisample( VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageMultisample_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderStorageImageMultisample = shaderStorageImageMultisample_;
- return *this;
- }
-
- PhysicalDeviceFeatures & setShaderStorageImageReadWithoutFormat( VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageReadWithoutFormat_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderStorageImageReadWithoutFormat = shaderStorageImageReadWithoutFormat_;
- return *this;
- }
-
- PhysicalDeviceFeatures & setShaderStorageImageWriteWithoutFormat( VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageWriteWithoutFormat_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderStorageImageWriteWithoutFormat = shaderStorageImageWriteWithoutFormat_;
- return *this;
- }
-
- PhysicalDeviceFeatures & setShaderUniformBufferArrayDynamicIndexing( VULKAN_HPP_NAMESPACE::Bool32 shaderUniformBufferArrayDynamicIndexing_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderUniformBufferArrayDynamicIndexing = shaderUniformBufferArrayDynamicIndexing_;
- return *this;
- }
-
- PhysicalDeviceFeatures & setShaderSampledImageArrayDynamicIndexing( VULKAN_HPP_NAMESPACE::Bool32 shaderSampledImageArrayDynamicIndexing_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderSampledImageArrayDynamicIndexing = shaderSampledImageArrayDynamicIndexing_;
- return *this;
- }
-
- PhysicalDeviceFeatures & setShaderStorageBufferArrayDynamicIndexing( VULKAN_HPP_NAMESPACE::Bool32 shaderStorageBufferArrayDynamicIndexing_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderStorageBufferArrayDynamicIndexing = shaderStorageBufferArrayDynamicIndexing_;
- return *this;
- }
-
- PhysicalDeviceFeatures & setShaderStorageImageArrayDynamicIndexing( VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageArrayDynamicIndexing_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderStorageImageArrayDynamicIndexing = shaderStorageImageArrayDynamicIndexing_;
- return *this;
- }
-
- PhysicalDeviceFeatures & setShaderClipDistance( VULKAN_HPP_NAMESPACE::Bool32 shaderClipDistance_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderClipDistance = shaderClipDistance_;
- return *this;
- }
-
- PhysicalDeviceFeatures & setShaderCullDistance( VULKAN_HPP_NAMESPACE::Bool32 shaderCullDistance_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderCullDistance = shaderCullDistance_;
- return *this;
- }
-
- PhysicalDeviceFeatures & setShaderFloat64( VULKAN_HPP_NAMESPACE::Bool32 shaderFloat64_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderFloat64 = shaderFloat64_;
- return *this;
- }
-
- PhysicalDeviceFeatures & setShaderInt64( VULKAN_HPP_NAMESPACE::Bool32 shaderInt64_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderInt64 = shaderInt64_;
- return *this;
- }
-
- PhysicalDeviceFeatures & setShaderInt16( VULKAN_HPP_NAMESPACE::Bool32 shaderInt16_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderInt16 = shaderInt16_;
- return *this;
- }
-
- PhysicalDeviceFeatures & setShaderResourceResidency( VULKAN_HPP_NAMESPACE::Bool32 shaderResourceResidency_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderResourceResidency = shaderResourceResidency_;
- return *this;
- }
-
- PhysicalDeviceFeatures & setShaderResourceMinLod( VULKAN_HPP_NAMESPACE::Bool32 shaderResourceMinLod_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderResourceMinLod = shaderResourceMinLod_;
- return *this;
- }
-
- PhysicalDeviceFeatures & setSparseBinding( VULKAN_HPP_NAMESPACE::Bool32 sparseBinding_ ) VULKAN_HPP_NOEXCEPT
- {
- sparseBinding = sparseBinding_;
- return *this;
- }
-
- PhysicalDeviceFeatures & setSparseResidencyBuffer( VULKAN_HPP_NAMESPACE::Bool32 sparseResidencyBuffer_ ) VULKAN_HPP_NOEXCEPT
- {
- sparseResidencyBuffer = sparseResidencyBuffer_;
- return *this;
- }
-
- PhysicalDeviceFeatures & setSparseResidencyImage2D( VULKAN_HPP_NAMESPACE::Bool32 sparseResidencyImage2D_ ) VULKAN_HPP_NOEXCEPT
- {
- sparseResidencyImage2D = sparseResidencyImage2D_;
- return *this;
- }
-
- PhysicalDeviceFeatures & setSparseResidencyImage3D( VULKAN_HPP_NAMESPACE::Bool32 sparseResidencyImage3D_ ) VULKAN_HPP_NOEXCEPT
- {
- sparseResidencyImage3D = sparseResidencyImage3D_;
- return *this;
- }
-
- PhysicalDeviceFeatures & setSparseResidency2Samples( VULKAN_HPP_NAMESPACE::Bool32 sparseResidency2Samples_ ) VULKAN_HPP_NOEXCEPT
- {
- sparseResidency2Samples = sparseResidency2Samples_;
- return *this;
- }
-
- PhysicalDeviceFeatures & setSparseResidency4Samples( VULKAN_HPP_NAMESPACE::Bool32 sparseResidency4Samples_ ) VULKAN_HPP_NOEXCEPT
- {
- sparseResidency4Samples = sparseResidency4Samples_;
- return *this;
- }
-
- PhysicalDeviceFeatures & setSparseResidency8Samples( VULKAN_HPP_NAMESPACE::Bool32 sparseResidency8Samples_ ) VULKAN_HPP_NOEXCEPT
- {
- sparseResidency8Samples = sparseResidency8Samples_;
- return *this;
- }
-
- PhysicalDeviceFeatures & setSparseResidency16Samples( VULKAN_HPP_NAMESPACE::Bool32 sparseResidency16Samples_ ) VULKAN_HPP_NOEXCEPT
- {
- sparseResidency16Samples = sparseResidency16Samples_;
- return *this;
- }
-
- PhysicalDeviceFeatures & setSparseResidencyAliased( VULKAN_HPP_NAMESPACE::Bool32 sparseResidencyAliased_ ) VULKAN_HPP_NOEXCEPT
- {
- sparseResidencyAliased = sparseResidencyAliased_;
- return *this;
- }
-
- PhysicalDeviceFeatures & setVariableMultisampleRate( VULKAN_HPP_NAMESPACE::Bool32 variableMultisampleRate_ ) VULKAN_HPP_NOEXCEPT
- {
- variableMultisampleRate = variableMultisampleRate_;
- return *this;
- }
-
- PhysicalDeviceFeatures & setInheritedQueries( VULKAN_HPP_NAMESPACE::Bool32 inheritedQueries_ ) VULKAN_HPP_NOEXCEPT
- {
- inheritedQueries = inheritedQueries_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceFeatures const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceFeatures*>( this );
- }
-
- operator VkPhysicalDeviceFeatures &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceFeatures*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceFeatures const& ) const = default;
-#else
- bool operator==( PhysicalDeviceFeatures const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( robustBufferAccess == rhs.robustBufferAccess )
- && ( fullDrawIndexUint32 == rhs.fullDrawIndexUint32 )
- && ( imageCubeArray == rhs.imageCubeArray )
- && ( independentBlend == rhs.independentBlend )
- && ( geometryShader == rhs.geometryShader )
- && ( tessellationShader == rhs.tessellationShader )
- && ( sampleRateShading == rhs.sampleRateShading )
- && ( dualSrcBlend == rhs.dualSrcBlend )
- && ( logicOp == rhs.logicOp )
- && ( multiDrawIndirect == rhs.multiDrawIndirect )
- && ( drawIndirectFirstInstance == rhs.drawIndirectFirstInstance )
- && ( depthClamp == rhs.depthClamp )
- && ( depthBiasClamp == rhs.depthBiasClamp )
- && ( fillModeNonSolid == rhs.fillModeNonSolid )
- && ( depthBounds == rhs.depthBounds )
- && ( wideLines == rhs.wideLines )
- && ( largePoints == rhs.largePoints )
- && ( alphaToOne == rhs.alphaToOne )
- && ( multiViewport == rhs.multiViewport )
- && ( samplerAnisotropy == rhs.samplerAnisotropy )
- && ( textureCompressionETC2 == rhs.textureCompressionETC2 )
- && ( textureCompressionASTC_LDR == rhs.textureCompressionASTC_LDR )
- && ( textureCompressionBC == rhs.textureCompressionBC )
- && ( occlusionQueryPrecise == rhs.occlusionQueryPrecise )
- && ( pipelineStatisticsQuery == rhs.pipelineStatisticsQuery )
- && ( vertexPipelineStoresAndAtomics == rhs.vertexPipelineStoresAndAtomics )
- && ( fragmentStoresAndAtomics == rhs.fragmentStoresAndAtomics )
- && ( shaderTessellationAndGeometryPointSize == rhs.shaderTessellationAndGeometryPointSize )
- && ( shaderImageGatherExtended == rhs.shaderImageGatherExtended )
- && ( shaderStorageImageExtendedFormats == rhs.shaderStorageImageExtendedFormats )
- && ( shaderStorageImageMultisample == rhs.shaderStorageImageMultisample )
- && ( shaderStorageImageReadWithoutFormat == rhs.shaderStorageImageReadWithoutFormat )
- && ( shaderStorageImageWriteWithoutFormat == rhs.shaderStorageImageWriteWithoutFormat )
- && ( shaderUniformBufferArrayDynamicIndexing == rhs.shaderUniformBufferArrayDynamicIndexing )
- && ( shaderSampledImageArrayDynamicIndexing == rhs.shaderSampledImageArrayDynamicIndexing )
- && ( shaderStorageBufferArrayDynamicIndexing == rhs.shaderStorageBufferArrayDynamicIndexing )
- && ( shaderStorageImageArrayDynamicIndexing == rhs.shaderStorageImageArrayDynamicIndexing )
- && ( shaderClipDistance == rhs.shaderClipDistance )
- && ( shaderCullDistance == rhs.shaderCullDistance )
- && ( shaderFloat64 == rhs.shaderFloat64 )
- && ( shaderInt64 == rhs.shaderInt64 )
- && ( shaderInt16 == rhs.shaderInt16 )
- && ( shaderResourceResidency == rhs.shaderResourceResidency )
- && ( shaderResourceMinLod == rhs.shaderResourceMinLod )
- && ( sparseBinding == rhs.sparseBinding )
- && ( sparseResidencyBuffer == rhs.sparseResidencyBuffer )
- && ( sparseResidencyImage2D == rhs.sparseResidencyImage2D )
- && ( sparseResidencyImage3D == rhs.sparseResidencyImage3D )
- && ( sparseResidency2Samples == rhs.sparseResidency2Samples )
- && ( sparseResidency4Samples == rhs.sparseResidency4Samples )
- && ( sparseResidency8Samples == rhs.sparseResidency8Samples )
- && ( sparseResidency16Samples == rhs.sparseResidency16Samples )
- && ( sparseResidencyAliased == rhs.sparseResidencyAliased )
- && ( variableMultisampleRate == rhs.variableMultisampleRate )
- && ( inheritedQueries == rhs.inheritedQueries );
- }
-
- bool operator!=( PhysicalDeviceFeatures const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::Bool32 robustBufferAccess = {};
- VULKAN_HPP_NAMESPACE::Bool32 fullDrawIndexUint32 = {};
- VULKAN_HPP_NAMESPACE::Bool32 imageCubeArray = {};
- VULKAN_HPP_NAMESPACE::Bool32 independentBlend = {};
- VULKAN_HPP_NAMESPACE::Bool32 geometryShader = {};
- VULKAN_HPP_NAMESPACE::Bool32 tessellationShader = {};
- VULKAN_HPP_NAMESPACE::Bool32 sampleRateShading = {};
- VULKAN_HPP_NAMESPACE::Bool32 dualSrcBlend = {};
- VULKAN_HPP_NAMESPACE::Bool32 logicOp = {};
- VULKAN_HPP_NAMESPACE::Bool32 multiDrawIndirect = {};
- VULKAN_HPP_NAMESPACE::Bool32 drawIndirectFirstInstance = {};
- VULKAN_HPP_NAMESPACE::Bool32 depthClamp = {};
- VULKAN_HPP_NAMESPACE::Bool32 depthBiasClamp = {};
- VULKAN_HPP_NAMESPACE::Bool32 fillModeNonSolid = {};
- VULKAN_HPP_NAMESPACE::Bool32 depthBounds = {};
- VULKAN_HPP_NAMESPACE::Bool32 wideLines = {};
- VULKAN_HPP_NAMESPACE::Bool32 largePoints = {};
- VULKAN_HPP_NAMESPACE::Bool32 alphaToOne = {};
- VULKAN_HPP_NAMESPACE::Bool32 multiViewport = {};
- VULKAN_HPP_NAMESPACE::Bool32 samplerAnisotropy = {};
- VULKAN_HPP_NAMESPACE::Bool32 textureCompressionETC2 = {};
- VULKAN_HPP_NAMESPACE::Bool32 textureCompressionASTC_LDR = {};
- VULKAN_HPP_NAMESPACE::Bool32 textureCompressionBC = {};
- VULKAN_HPP_NAMESPACE::Bool32 occlusionQueryPrecise = {};
- VULKAN_HPP_NAMESPACE::Bool32 pipelineStatisticsQuery = {};
- VULKAN_HPP_NAMESPACE::Bool32 vertexPipelineStoresAndAtomics = {};
- VULKAN_HPP_NAMESPACE::Bool32 fragmentStoresAndAtomics = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderTessellationAndGeometryPointSize = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderImageGatherExtended = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageExtendedFormats = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageMultisample = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageReadWithoutFormat = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageWriteWithoutFormat = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderUniformBufferArrayDynamicIndexing = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderSampledImageArrayDynamicIndexing = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderStorageBufferArrayDynamicIndexing = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageArrayDynamicIndexing = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderClipDistance = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderCullDistance = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderFloat64 = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderInt64 = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderInt16 = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderResourceResidency = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderResourceMinLod = {};
- VULKAN_HPP_NAMESPACE::Bool32 sparseBinding = {};
- VULKAN_HPP_NAMESPACE::Bool32 sparseResidencyBuffer = {};
- VULKAN_HPP_NAMESPACE::Bool32 sparseResidencyImage2D = {};
- VULKAN_HPP_NAMESPACE::Bool32 sparseResidencyImage3D = {};
- VULKAN_HPP_NAMESPACE::Bool32 sparseResidency2Samples = {};
- VULKAN_HPP_NAMESPACE::Bool32 sparseResidency4Samples = {};
- VULKAN_HPP_NAMESPACE::Bool32 sparseResidency8Samples = {};
- VULKAN_HPP_NAMESPACE::Bool32 sparseResidency16Samples = {};
- VULKAN_HPP_NAMESPACE::Bool32 sparseResidencyAliased = {};
- VULKAN_HPP_NAMESPACE::Bool32 variableMultisampleRate = {};
- VULKAN_HPP_NAMESPACE::Bool32 inheritedQueries = {};
-
- };
- static_assert( sizeof( PhysicalDeviceFeatures ) == sizeof( VkPhysicalDeviceFeatures ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceFeatures>::value, "struct wrapper is not a standard layout!" );
-
- struct DeviceCreateInfo
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDeviceCreateInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DeviceCreateInfo(VULKAN_HPP_NAMESPACE::DeviceCreateFlags flags_ = {}, uint32_t queueCreateInfoCount_ = {}, const VULKAN_HPP_NAMESPACE::DeviceQueueCreateInfo* pQueueCreateInfos_ = {}, uint32_t enabledLayerCount_ = {}, const char* const * ppEnabledLayerNames_ = {}, uint32_t enabledExtensionCount_ = {}, const char* const * ppEnabledExtensionNames_ = {}, const VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures* pEnabledFeatures_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), queueCreateInfoCount( queueCreateInfoCount_ ), pQueueCreateInfos( pQueueCreateInfos_ ), enabledLayerCount( enabledLayerCount_ ), ppEnabledLayerNames( ppEnabledLayerNames_ ), enabledExtensionCount( enabledExtensionCount_ ), ppEnabledExtensionNames( ppEnabledExtensionNames_ ), pEnabledFeatures( pEnabledFeatures_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DeviceCreateInfo( DeviceCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DeviceCreateInfo( VkDeviceCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- DeviceCreateInfo( VULKAN_HPP_NAMESPACE::DeviceCreateFlags flags_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DeviceQueueCreateInfo> const & queueCreateInfos_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const char* const > const & pEnabledLayerNames_ = {}, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const char* const > const & pEnabledExtensionNames_ = {}, const VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures* pEnabledFeatures_ = {} )
- : flags( flags_ ), queueCreateInfoCount( static_cast<uint32_t>( queueCreateInfos_.size() ) ), pQueueCreateInfos( queueCreateInfos_.data() ), enabledLayerCount( static_cast<uint32_t>( pEnabledLayerNames_.size() ) ), ppEnabledLayerNames( pEnabledLayerNames_.data() ), enabledExtensionCount( static_cast<uint32_t>( pEnabledExtensionNames_.size() ) ), ppEnabledExtensionNames( pEnabledExtensionNames_.data() ), pEnabledFeatures( pEnabledFeatures_ )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DeviceCreateInfo & operator=( VkDeviceCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DeviceCreateInfo const *>( &rhs );
- return *this;
- }
-
- DeviceCreateInfo & operator=( DeviceCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DeviceCreateInfo ) );
- return *this;
- }
-
- DeviceCreateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- DeviceCreateInfo & setFlags( VULKAN_HPP_NAMESPACE::DeviceCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- DeviceCreateInfo & setQueueCreateInfoCount( uint32_t queueCreateInfoCount_ ) VULKAN_HPP_NOEXCEPT
- {
- queueCreateInfoCount = queueCreateInfoCount_;
- return *this;
- }
-
- DeviceCreateInfo & setPQueueCreateInfos( const VULKAN_HPP_NAMESPACE::DeviceQueueCreateInfo* pQueueCreateInfos_ ) VULKAN_HPP_NOEXCEPT
- {
- pQueueCreateInfos = pQueueCreateInfos_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- DeviceCreateInfo & setQueueCreateInfos( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DeviceQueueCreateInfo> const & queueCreateInfos_ ) VULKAN_HPP_NOEXCEPT
- {
- queueCreateInfoCount = static_cast<uint32_t>( queueCreateInfos_.size() );
- pQueueCreateInfos = queueCreateInfos_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- DeviceCreateInfo & setEnabledLayerCount( uint32_t enabledLayerCount_ ) VULKAN_HPP_NOEXCEPT
- {
- enabledLayerCount = enabledLayerCount_;
- return *this;
- }
-
- DeviceCreateInfo & setPpEnabledLayerNames( const char* const * ppEnabledLayerNames_ ) VULKAN_HPP_NOEXCEPT
- {
- ppEnabledLayerNames = ppEnabledLayerNames_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- DeviceCreateInfo & setPEnabledLayerNames( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const char* const > const & pEnabledLayerNames_ ) VULKAN_HPP_NOEXCEPT
- {
- enabledLayerCount = static_cast<uint32_t>( pEnabledLayerNames_.size() );
- ppEnabledLayerNames = pEnabledLayerNames_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- DeviceCreateInfo & setEnabledExtensionCount( uint32_t enabledExtensionCount_ ) VULKAN_HPP_NOEXCEPT
- {
- enabledExtensionCount = enabledExtensionCount_;
- return *this;
- }
-
- DeviceCreateInfo & setPpEnabledExtensionNames( const char* const * ppEnabledExtensionNames_ ) VULKAN_HPP_NOEXCEPT
- {
- ppEnabledExtensionNames = ppEnabledExtensionNames_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- DeviceCreateInfo & setPEnabledExtensionNames( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const char* const > const & pEnabledExtensionNames_ ) VULKAN_HPP_NOEXCEPT
- {
- enabledExtensionCount = static_cast<uint32_t>( pEnabledExtensionNames_.size() );
- ppEnabledExtensionNames = pEnabledExtensionNames_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- DeviceCreateInfo & setPEnabledFeatures( const VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures* pEnabledFeatures_ ) VULKAN_HPP_NOEXCEPT
- {
- pEnabledFeatures = pEnabledFeatures_;
- return *this;
- }
-
-
- operator VkDeviceCreateInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDeviceCreateInfo*>( this );
- }
-
- operator VkDeviceCreateInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDeviceCreateInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DeviceCreateInfo const& ) const = default;
-#else
- bool operator==( DeviceCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( queueCreateInfoCount == rhs.queueCreateInfoCount )
- && ( pQueueCreateInfos == rhs.pQueueCreateInfos )
- && ( enabledLayerCount == rhs.enabledLayerCount )
- && ( ppEnabledLayerNames == rhs.ppEnabledLayerNames )
- && ( enabledExtensionCount == rhs.enabledExtensionCount )
- && ( ppEnabledExtensionNames == rhs.ppEnabledExtensionNames )
- && ( pEnabledFeatures == rhs.pEnabledFeatures );
- }
-
- bool operator!=( DeviceCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDeviceCreateInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::DeviceCreateFlags flags = {};
- uint32_t queueCreateInfoCount = {};
- const VULKAN_HPP_NAMESPACE::DeviceQueueCreateInfo* pQueueCreateInfos = {};
- uint32_t enabledLayerCount = {};
- const char* const * ppEnabledLayerNames = {};
- uint32_t enabledExtensionCount = {};
- const char* const * ppEnabledExtensionNames = {};
- const VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures* pEnabledFeatures = {};
-
+ value = true
+ };
};
- static_assert( sizeof( DeviceCreateInfo ) == sizeof( VkDeviceCreateInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DeviceCreateInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eDeviceCreateInfo>
- {
- using Type = DeviceCreateInfo;
- };
-
- struct DeviceDeviceMemoryReportCreateInfoEXT
+ struct StructExtends<ImportMemoryHostPointerInfoEXT, MemoryAllocateInfo>
{
- static const bool allowDuplicate = true;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDeviceDeviceMemoryReportCreateInfoEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DeviceDeviceMemoryReportCreateInfoEXT(VULKAN_HPP_NAMESPACE::DeviceMemoryReportFlagsEXT flags_ = {}, PFN_vkDeviceMemoryReportCallbackEXT pfnUserCallback_ = {}, void* pUserData_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), pfnUserCallback( pfnUserCallback_ ), pUserData( pUserData_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DeviceDeviceMemoryReportCreateInfoEXT( DeviceDeviceMemoryReportCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DeviceDeviceMemoryReportCreateInfoEXT( VkDeviceDeviceMemoryReportCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DeviceDeviceMemoryReportCreateInfoEXT & operator=( VkDeviceDeviceMemoryReportCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DeviceDeviceMemoryReportCreateInfoEXT const *>( &rhs );
- return *this;
- }
-
- DeviceDeviceMemoryReportCreateInfoEXT & operator=( DeviceDeviceMemoryReportCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DeviceDeviceMemoryReportCreateInfoEXT ) );
- return *this;
- }
-
- DeviceDeviceMemoryReportCreateInfoEXT & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- DeviceDeviceMemoryReportCreateInfoEXT & setFlags( VULKAN_HPP_NAMESPACE::DeviceMemoryReportFlagsEXT flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- DeviceDeviceMemoryReportCreateInfoEXT & setPfnUserCallback( PFN_vkDeviceMemoryReportCallbackEXT pfnUserCallback_ ) VULKAN_HPP_NOEXCEPT
- {
- pfnUserCallback = pfnUserCallback_;
- return *this;
- }
-
- DeviceDeviceMemoryReportCreateInfoEXT & setPUserData( void* pUserData_ ) VULKAN_HPP_NOEXCEPT
- {
- pUserData = pUserData_;
- return *this;
- }
-
-
- operator VkDeviceDeviceMemoryReportCreateInfoEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDeviceDeviceMemoryReportCreateInfoEXT*>( this );
- }
-
- operator VkDeviceDeviceMemoryReportCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDeviceDeviceMemoryReportCreateInfoEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DeviceDeviceMemoryReportCreateInfoEXT const& ) const = default;
-#else
- bool operator==( DeviceDeviceMemoryReportCreateInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( pfnUserCallback == rhs.pfnUserCallback )
- && ( pUserData == rhs.pUserData );
- }
-
- bool operator!=( DeviceDeviceMemoryReportCreateInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDeviceDeviceMemoryReportCreateInfoEXT;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::DeviceMemoryReportFlagsEXT flags = {};
- PFN_vkDeviceMemoryReportCallbackEXT pfnUserCallback = {};
- void* pUserData = {};
-
+ value = true
+ };
};
- static_assert( sizeof( DeviceDeviceMemoryReportCreateInfoEXT ) == sizeof( VkDeviceDeviceMemoryReportCreateInfoEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DeviceDeviceMemoryReportCreateInfoEXT>::value, "struct wrapper is not a standard layout!" );
-
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
template <>
- struct CppType<StructureType, StructureType::eDeviceDeviceMemoryReportCreateInfoEXT>
+ struct StructExtends<ImportMemoryWin32HandleInfoKHR, MemoryAllocateInfo>
{
- using Type = DeviceDeviceMemoryReportCreateInfoEXT;
- };
-
- struct DeviceDiagnosticsConfigCreateInfoNV
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDeviceDiagnosticsConfigCreateInfoNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DeviceDiagnosticsConfigCreateInfoNV(VULKAN_HPP_NAMESPACE::DeviceDiagnosticsConfigFlagsNV flags_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DeviceDiagnosticsConfigCreateInfoNV( DeviceDiagnosticsConfigCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DeviceDiagnosticsConfigCreateInfoNV( VkDeviceDiagnosticsConfigCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DeviceDiagnosticsConfigCreateInfoNV & operator=( VkDeviceDiagnosticsConfigCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DeviceDiagnosticsConfigCreateInfoNV const *>( &rhs );
- return *this;
- }
-
- DeviceDiagnosticsConfigCreateInfoNV & operator=( DeviceDiagnosticsConfigCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DeviceDiagnosticsConfigCreateInfoNV ) );
- return *this;
- }
-
- DeviceDiagnosticsConfigCreateInfoNV & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- DeviceDiagnosticsConfigCreateInfoNV & setFlags( VULKAN_HPP_NAMESPACE::DeviceDiagnosticsConfigFlagsNV flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
-
- operator VkDeviceDiagnosticsConfigCreateInfoNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDeviceDiagnosticsConfigCreateInfoNV*>( this );
- }
-
- operator VkDeviceDiagnosticsConfigCreateInfoNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDeviceDiagnosticsConfigCreateInfoNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DeviceDiagnosticsConfigCreateInfoNV const& ) const = default;
-#else
- bool operator==( DeviceDiagnosticsConfigCreateInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags );
- }
-
- bool operator!=( DeviceDiagnosticsConfigCreateInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDeviceDiagnosticsConfigCreateInfoNV;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::DeviceDiagnosticsConfigFlagsNV flags = {};
-
+ value = true
+ };
};
- static_assert( sizeof( DeviceDiagnosticsConfigCreateInfoNV ) == sizeof( VkDeviceDiagnosticsConfigCreateInfoNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DeviceDiagnosticsConfigCreateInfoNV>::value, "struct wrapper is not a standard layout!" );
-
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
template <>
- struct CppType<StructureType, StructureType::eDeviceDiagnosticsConfigCreateInfoNV>
- {
- using Type = DeviceDiagnosticsConfigCreateInfoNV;
- };
-
- struct DeviceEventInfoEXT
+ struct StructExtends<ImportMemoryWin32HandleInfoNV, MemoryAllocateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDeviceEventInfoEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DeviceEventInfoEXT(VULKAN_HPP_NAMESPACE::DeviceEventTypeEXT deviceEvent_ = VULKAN_HPP_NAMESPACE::DeviceEventTypeEXT::eDisplayHotplug) VULKAN_HPP_NOEXCEPT
- : deviceEvent( deviceEvent_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DeviceEventInfoEXT( DeviceEventInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DeviceEventInfoEXT( VkDeviceEventInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DeviceEventInfoEXT & operator=( VkDeviceEventInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DeviceEventInfoEXT const *>( &rhs );
- return *this;
- }
-
- DeviceEventInfoEXT & operator=( DeviceEventInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DeviceEventInfoEXT ) );
- return *this;
- }
-
- DeviceEventInfoEXT & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- DeviceEventInfoEXT & setDeviceEvent( VULKAN_HPP_NAMESPACE::DeviceEventTypeEXT deviceEvent_ ) VULKAN_HPP_NOEXCEPT
- {
- deviceEvent = deviceEvent_;
- return *this;
- }
-
-
- operator VkDeviceEventInfoEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDeviceEventInfoEXT*>( this );
- }
-
- operator VkDeviceEventInfoEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDeviceEventInfoEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DeviceEventInfoEXT const& ) const = default;
-#else
- bool operator==( DeviceEventInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( deviceEvent == rhs.deviceEvent );
- }
-
- bool operator!=( DeviceEventInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDeviceEventInfoEXT;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::DeviceEventTypeEXT deviceEvent = VULKAN_HPP_NAMESPACE::DeviceEventTypeEXT::eDisplayHotplug;
-
+ value = true
+ };
};
- static_assert( sizeof( DeviceEventInfoEXT ) == sizeof( VkDeviceEventInfoEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DeviceEventInfoEXT>::value, "struct wrapper is not a standard layout!" );
-
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+#if defined( VK_USE_PLATFORM_FUCHSIA )
template <>
- struct CppType<StructureType, StructureType::eDeviceEventInfoEXT>
+ struct StructExtends<ImportMemoryZirconHandleInfoFUCHSIA, MemoryAllocateInfo>
{
- using Type = DeviceEventInfoEXT;
- };
-
- struct DeviceGroupBindSparseInfo
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDeviceGroupBindSparseInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DeviceGroupBindSparseInfo(uint32_t resourceDeviceIndex_ = {}, uint32_t memoryDeviceIndex_ = {}) VULKAN_HPP_NOEXCEPT
- : resourceDeviceIndex( resourceDeviceIndex_ ), memoryDeviceIndex( memoryDeviceIndex_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DeviceGroupBindSparseInfo( DeviceGroupBindSparseInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DeviceGroupBindSparseInfo( VkDeviceGroupBindSparseInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DeviceGroupBindSparseInfo & operator=( VkDeviceGroupBindSparseInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DeviceGroupBindSparseInfo const *>( &rhs );
- return *this;
- }
-
- DeviceGroupBindSparseInfo & operator=( DeviceGroupBindSparseInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DeviceGroupBindSparseInfo ) );
- return *this;
- }
-
- DeviceGroupBindSparseInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- DeviceGroupBindSparseInfo & setResourceDeviceIndex( uint32_t resourceDeviceIndex_ ) VULKAN_HPP_NOEXCEPT
- {
- resourceDeviceIndex = resourceDeviceIndex_;
- return *this;
- }
-
- DeviceGroupBindSparseInfo & setMemoryDeviceIndex( uint32_t memoryDeviceIndex_ ) VULKAN_HPP_NOEXCEPT
- {
- memoryDeviceIndex = memoryDeviceIndex_;
- return *this;
- }
-
-
- operator VkDeviceGroupBindSparseInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDeviceGroupBindSparseInfo*>( this );
- }
-
- operator VkDeviceGroupBindSparseInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDeviceGroupBindSparseInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DeviceGroupBindSparseInfo const& ) const = default;
-#else
- bool operator==( DeviceGroupBindSparseInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( resourceDeviceIndex == rhs.resourceDeviceIndex )
- && ( memoryDeviceIndex == rhs.memoryDeviceIndex );
- }
-
- bool operator!=( DeviceGroupBindSparseInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDeviceGroupBindSparseInfo;
- const void* pNext = {};
- uint32_t resourceDeviceIndex = {};
- uint32_t memoryDeviceIndex = {};
-
+ value = true
+ };
};
- static_assert( sizeof( DeviceGroupBindSparseInfo ) == sizeof( VkDeviceGroupBindSparseInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DeviceGroupBindSparseInfo>::value, "struct wrapper is not a standard layout!" );
-
+#endif /*VK_USE_PLATFORM_FUCHSIA*/
template <>
- struct CppType<StructureType, StructureType::eDeviceGroupBindSparseInfo>
- {
- using Type = DeviceGroupBindSparseInfo;
- };
- using DeviceGroupBindSparseInfoKHR = DeviceGroupBindSparseInfo;
-
- struct DeviceGroupCommandBufferBeginInfo
+ struct StructExtends<MemoryAllocateFlagsInfo, MemoryAllocateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDeviceGroupCommandBufferBeginInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DeviceGroupCommandBufferBeginInfo(uint32_t deviceMask_ = {}) VULKAN_HPP_NOEXCEPT
- : deviceMask( deviceMask_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DeviceGroupCommandBufferBeginInfo( DeviceGroupCommandBufferBeginInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DeviceGroupCommandBufferBeginInfo( VkDeviceGroupCommandBufferBeginInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DeviceGroupCommandBufferBeginInfo & operator=( VkDeviceGroupCommandBufferBeginInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DeviceGroupCommandBufferBeginInfo const *>( &rhs );
- return *this;
- }
-
- DeviceGroupCommandBufferBeginInfo & operator=( DeviceGroupCommandBufferBeginInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DeviceGroupCommandBufferBeginInfo ) );
- return *this;
- }
-
- DeviceGroupCommandBufferBeginInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- DeviceGroupCommandBufferBeginInfo & setDeviceMask( uint32_t deviceMask_ ) VULKAN_HPP_NOEXCEPT
- {
- deviceMask = deviceMask_;
- return *this;
- }
-
-
- operator VkDeviceGroupCommandBufferBeginInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDeviceGroupCommandBufferBeginInfo*>( this );
- }
-
- operator VkDeviceGroupCommandBufferBeginInfo &() VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<VkDeviceGroupCommandBufferBeginInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DeviceGroupCommandBufferBeginInfo const& ) const = default;
-#else
- bool operator==( DeviceGroupCommandBufferBeginInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( deviceMask == rhs.deviceMask );
- }
-
- bool operator!=( DeviceGroupCommandBufferBeginInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDeviceGroupCommandBufferBeginInfo;
- const void* pNext = {};
- uint32_t deviceMask = {};
-
+ value = true
+ };
};
- static_assert( sizeof( DeviceGroupCommandBufferBeginInfo ) == sizeof( VkDeviceGroupCommandBufferBeginInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DeviceGroupCommandBufferBeginInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eDeviceGroupCommandBufferBeginInfo>
+ struct StructExtends<MemoryBarrier2KHR, SubpassDependency2>
{
- using Type = DeviceGroupCommandBufferBeginInfo;
- };
- using DeviceGroupCommandBufferBeginInfoKHR = DeviceGroupCommandBufferBeginInfo;
-
- class DisplayKHR
- {
- public:
- using CType = VkDisplayKHR;
-
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::eDisplayKHR;
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType = VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eDisplayKHR;
-
- public:
- VULKAN_HPP_CONSTEXPR DisplayKHR() VULKAN_HPP_NOEXCEPT
- : m_displayKHR(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_CONSTEXPR DisplayKHR( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- : m_displayKHR(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_TYPESAFE_EXPLICIT DisplayKHR( VkDisplayKHR displayKHR ) VULKAN_HPP_NOEXCEPT
- : m_displayKHR( displayKHR )
- {}
-
-#if defined(VULKAN_HPP_TYPESAFE_CONVERSION)
- DisplayKHR & operator=(VkDisplayKHR displayKHR) VULKAN_HPP_NOEXCEPT
+ enum
{
- m_displayKHR = displayKHR;
- return *this;
- }
-#endif
-
- DisplayKHR & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- {
- m_displayKHR = VK_NULL_HANDLE;
- return *this;
- }
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DisplayKHR const& ) const = default;
-#else
- bool operator==( DisplayKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_displayKHR == rhs.m_displayKHR;
- }
-
- bool operator!=(DisplayKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_displayKHR != rhs.m_displayKHR;
- }
-
- bool operator<(DisplayKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_displayKHR < rhs.m_displayKHR;
- }
-#endif
-
- VULKAN_HPP_TYPESAFE_EXPLICIT operator VkDisplayKHR() const VULKAN_HPP_NOEXCEPT
- {
- return m_displayKHR;
- }
-
- explicit operator bool() const VULKAN_HPP_NOEXCEPT
- {
- return m_displayKHR != VK_NULL_HANDLE;
- }
-
- bool operator!() const VULKAN_HPP_NOEXCEPT
- {
- return m_displayKHR == VK_NULL_HANDLE;
- }
-
- private:
- VkDisplayKHR m_displayKHR;
- };
- static_assert( sizeof( VULKAN_HPP_NAMESPACE::DisplayKHR ) == sizeof( VkDisplayKHR ), "handle and wrapper have different size!" );
-
- template <>
- struct VULKAN_HPP_DEPRECATED("vk::cpp_type is deprecated. Use vk::CppType instead.") cpp_type<ObjectType::eDisplayKHR>
- {
- using type = VULKAN_HPP_NAMESPACE::DisplayKHR;
- };
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eDisplayKHR>
- {
- using Type = VULKAN_HPP_NAMESPACE::DisplayKHR;
- };
-
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT, VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eDisplayKHR>
- {
- using Type = VULKAN_HPP_NAMESPACE::DisplayKHR;
+ value = true
+ };
};
-
-
template <>
- struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::DisplayKHR>
+ struct StructExtends<MemoryDedicatedAllocateInfo, MemoryAllocateInfo>
{
- static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
- };
-
- struct PerformanceConfigurationAcquireInfoINTEL
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePerformanceConfigurationAcquireInfoINTEL;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PerformanceConfigurationAcquireInfoINTEL(VULKAN_HPP_NAMESPACE::PerformanceConfigurationTypeINTEL type_ = VULKAN_HPP_NAMESPACE::PerformanceConfigurationTypeINTEL::eCommandQueueMetricsDiscoveryActivated) VULKAN_HPP_NOEXCEPT
- : type( type_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PerformanceConfigurationAcquireInfoINTEL( PerformanceConfigurationAcquireInfoINTEL const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PerformanceConfigurationAcquireInfoINTEL( VkPerformanceConfigurationAcquireInfoINTEL const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PerformanceConfigurationAcquireInfoINTEL & operator=( VkPerformanceConfigurationAcquireInfoINTEL const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PerformanceConfigurationAcquireInfoINTEL const *>( &rhs );
- return *this;
- }
-
- PerformanceConfigurationAcquireInfoINTEL & operator=( PerformanceConfigurationAcquireInfoINTEL const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PerformanceConfigurationAcquireInfoINTEL ) );
- return *this;
- }
-
- PerformanceConfigurationAcquireInfoINTEL & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PerformanceConfigurationAcquireInfoINTEL & setType( VULKAN_HPP_NAMESPACE::PerformanceConfigurationTypeINTEL type_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- type = type_;
- return *this;
- }
-
-
- operator VkPerformanceConfigurationAcquireInfoINTEL const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPerformanceConfigurationAcquireInfoINTEL*>( this );
- }
-
- operator VkPerformanceConfigurationAcquireInfoINTEL &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPerformanceConfigurationAcquireInfoINTEL*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PerformanceConfigurationAcquireInfoINTEL const& ) const = default;
-#else
- bool operator==( PerformanceConfigurationAcquireInfoINTEL const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( type == rhs.type );
- }
-
- bool operator!=( PerformanceConfigurationAcquireInfoINTEL const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePerformanceConfigurationAcquireInfoINTEL;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::PerformanceConfigurationTypeINTEL type = VULKAN_HPP_NAMESPACE::PerformanceConfigurationTypeINTEL::eCommandQueueMetricsDiscoveryActivated;
-
+ value = true
+ };
};
- static_assert( sizeof( PerformanceConfigurationAcquireInfoINTEL ) == sizeof( VkPerformanceConfigurationAcquireInfoINTEL ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PerformanceConfigurationAcquireInfoINTEL>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePerformanceConfigurationAcquireInfoINTEL>
+ struct StructExtends<MemoryDedicatedRequirements, MemoryRequirements2>
{
- using Type = PerformanceConfigurationAcquireInfoINTEL;
- };
-
- class PerformanceConfigurationINTEL
- {
- public:
- using CType = VkPerformanceConfigurationINTEL;
-
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::ePerformanceConfigurationINTEL;
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType = VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eUnknown;
-
- public:
- VULKAN_HPP_CONSTEXPR PerformanceConfigurationINTEL() VULKAN_HPP_NOEXCEPT
- : m_performanceConfigurationINTEL(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_CONSTEXPR PerformanceConfigurationINTEL( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- : m_performanceConfigurationINTEL(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_TYPESAFE_EXPLICIT PerformanceConfigurationINTEL( VkPerformanceConfigurationINTEL performanceConfigurationINTEL ) VULKAN_HPP_NOEXCEPT
- : m_performanceConfigurationINTEL( performanceConfigurationINTEL )
- {}
-
-#if defined(VULKAN_HPP_TYPESAFE_CONVERSION)
- PerformanceConfigurationINTEL & operator=(VkPerformanceConfigurationINTEL performanceConfigurationINTEL) VULKAN_HPP_NOEXCEPT
- {
- m_performanceConfigurationINTEL = performanceConfigurationINTEL;
- return *this;
- }
-#endif
-
- PerformanceConfigurationINTEL & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
+ enum
{
- m_performanceConfigurationINTEL = VK_NULL_HANDLE;
- return *this;
- }
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PerformanceConfigurationINTEL const& ) const = default;
-#else
- bool operator==( PerformanceConfigurationINTEL const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_performanceConfigurationINTEL == rhs.m_performanceConfigurationINTEL;
- }
-
- bool operator!=(PerformanceConfigurationINTEL const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_performanceConfigurationINTEL != rhs.m_performanceConfigurationINTEL;
- }
-
- bool operator<(PerformanceConfigurationINTEL const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_performanceConfigurationINTEL < rhs.m_performanceConfigurationINTEL;
- }
-#endif
-
- VULKAN_HPP_TYPESAFE_EXPLICIT operator VkPerformanceConfigurationINTEL() const VULKAN_HPP_NOEXCEPT
- {
- return m_performanceConfigurationINTEL;
- }
-
- explicit operator bool() const VULKAN_HPP_NOEXCEPT
- {
- return m_performanceConfigurationINTEL != VK_NULL_HANDLE;
- }
-
- bool operator!() const VULKAN_HPP_NOEXCEPT
- {
- return m_performanceConfigurationINTEL == VK_NULL_HANDLE;
- }
-
- private:
- VkPerformanceConfigurationINTEL m_performanceConfigurationINTEL;
- };
- static_assert( sizeof( VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL ) == sizeof( VkPerformanceConfigurationINTEL ), "handle and wrapper have different size!" );
-
- template <>
- struct VULKAN_HPP_DEPRECATED("vk::cpp_type is deprecated. Use vk::CppType instead.") cpp_type<ObjectType::ePerformanceConfigurationINTEL>
- {
- using type = VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL;
- };
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::ePerformanceConfigurationINTEL>
- {
- using Type = VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL;
+ value = true
+ };
};
-
-
-
template <>
- struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL>
+ struct StructExtends<MemoryOpaqueCaptureAddressAllocateInfo, MemoryAllocateInfo>
{
- static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
- };
-
- class QueryPool
- {
- public:
- using CType = VkQueryPool;
-
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::eQueryPool;
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType = VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eQueryPool;
-
- public:
- VULKAN_HPP_CONSTEXPR QueryPool() VULKAN_HPP_NOEXCEPT
- : m_queryPool(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_CONSTEXPR QueryPool( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- : m_queryPool(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_TYPESAFE_EXPLICIT QueryPool( VkQueryPool queryPool ) VULKAN_HPP_NOEXCEPT
- : m_queryPool( queryPool )
- {}
-
-#if defined(VULKAN_HPP_TYPESAFE_CONVERSION)
- QueryPool & operator=(VkQueryPool queryPool) VULKAN_HPP_NOEXCEPT
- {
- m_queryPool = queryPool;
- return *this;
- }
-#endif
-
- QueryPool & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- {
- m_queryPool = VK_NULL_HANDLE;
- return *this;
- }
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( QueryPool const& ) const = default;
-#else
- bool operator==( QueryPool const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_queryPool == rhs.m_queryPool;
- }
-
- bool operator!=(QueryPool const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_queryPool != rhs.m_queryPool;
- }
-
- bool operator<(QueryPool const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_queryPool < rhs.m_queryPool;
- }
-#endif
-
- VULKAN_HPP_TYPESAFE_EXPLICIT operator VkQueryPool() const VULKAN_HPP_NOEXCEPT
- {
- return m_queryPool;
- }
-
- explicit operator bool() const VULKAN_HPP_NOEXCEPT
- {
- return m_queryPool != VK_NULL_HANDLE;
- }
-
- bool operator!() const VULKAN_HPP_NOEXCEPT
+ enum
{
- return m_queryPool == VK_NULL_HANDLE;
- }
-
- private:
- VkQueryPool m_queryPool;
- };
- static_assert( sizeof( VULKAN_HPP_NAMESPACE::QueryPool ) == sizeof( VkQueryPool ), "handle and wrapper have different size!" );
-
- template <>
- struct VULKAN_HPP_DEPRECATED("vk::cpp_type is deprecated. Use vk::CppType instead.") cpp_type<ObjectType::eQueryPool>
- {
- using type = VULKAN_HPP_NAMESPACE::QueryPool;
- };
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eQueryPool>
- {
- using Type = VULKAN_HPP_NAMESPACE::QueryPool;
- };
-
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT, VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eQueryPool>
- {
- using Type = VULKAN_HPP_NAMESPACE::QueryPool;
+ value = true
+ };
};
-
-
template <>
- struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::QueryPool>
+ struct StructExtends<MemoryPriorityAllocateInfoEXT, MemoryAllocateInfo>
{
- static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
- };
-
- struct RenderPassBeginInfo
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eRenderPassBeginInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR_14 RenderPassBeginInfo(VULKAN_HPP_NAMESPACE::RenderPass renderPass_ = {}, VULKAN_HPP_NAMESPACE::Framebuffer framebuffer_ = {}, VULKAN_HPP_NAMESPACE::Rect2D renderArea_ = {}, uint32_t clearValueCount_ = {}, const VULKAN_HPP_NAMESPACE::ClearValue* pClearValues_ = {}) VULKAN_HPP_NOEXCEPT
- : renderPass( renderPass_ ), framebuffer( framebuffer_ ), renderArea( renderArea_ ), clearValueCount( clearValueCount_ ), pClearValues( pClearValues_ )
- {}
-
- VULKAN_HPP_CONSTEXPR_14 RenderPassBeginInfo( RenderPassBeginInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- RenderPassBeginInfo( VkRenderPassBeginInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- RenderPassBeginInfo( VULKAN_HPP_NAMESPACE::RenderPass renderPass_, VULKAN_HPP_NAMESPACE::Framebuffer framebuffer_, VULKAN_HPP_NAMESPACE::Rect2D renderArea_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ClearValue> const & clearValues_ )
- : renderPass( renderPass_ ), framebuffer( framebuffer_ ), renderArea( renderArea_ ), clearValueCount( static_cast<uint32_t>( clearValues_.size() ) ), pClearValues( clearValues_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- RenderPassBeginInfo & operator=( VkRenderPassBeginInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::RenderPassBeginInfo const *>( &rhs );
- return *this;
- }
-
- RenderPassBeginInfo & operator=( RenderPassBeginInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( RenderPassBeginInfo ) );
- return *this;
- }
-
- RenderPassBeginInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- RenderPassBeginInfo & setRenderPass( VULKAN_HPP_NAMESPACE::RenderPass renderPass_ ) VULKAN_HPP_NOEXCEPT
- {
- renderPass = renderPass_;
- return *this;
- }
-
- RenderPassBeginInfo & setFramebuffer( VULKAN_HPP_NAMESPACE::Framebuffer framebuffer_ ) VULKAN_HPP_NOEXCEPT
- {
- framebuffer = framebuffer_;
- return *this;
- }
-
- RenderPassBeginInfo & setRenderArea( VULKAN_HPP_NAMESPACE::Rect2D const & renderArea_ ) VULKAN_HPP_NOEXCEPT
- {
- renderArea = renderArea_;
- return *this;
- }
-
- RenderPassBeginInfo & setClearValueCount( uint32_t clearValueCount_ ) VULKAN_HPP_NOEXCEPT
- {
- clearValueCount = clearValueCount_;
- return *this;
- }
-
- RenderPassBeginInfo & setPClearValues( const VULKAN_HPP_NAMESPACE::ClearValue* pClearValues_ ) VULKAN_HPP_NOEXCEPT
- {
- pClearValues = pClearValues_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- RenderPassBeginInfo & setClearValues( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ClearValue> const & clearValues_ ) VULKAN_HPP_NOEXCEPT
- {
- clearValueCount = static_cast<uint32_t>( clearValues_.size() );
- pClearValues = clearValues_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkRenderPassBeginInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkRenderPassBeginInfo*>( this );
- }
-
- operator VkRenderPassBeginInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkRenderPassBeginInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( RenderPassBeginInfo const& ) const = default;
-#else
- bool operator==( RenderPassBeginInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( renderPass == rhs.renderPass )
- && ( framebuffer == rhs.framebuffer )
- && ( renderArea == rhs.renderArea )
- && ( clearValueCount == rhs.clearValueCount )
- && ( pClearValues == rhs.pClearValues );
- }
-
- bool operator!=( RenderPassBeginInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eRenderPassBeginInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::RenderPass renderPass = {};
- VULKAN_HPP_NAMESPACE::Framebuffer framebuffer = {};
- VULKAN_HPP_NAMESPACE::Rect2D renderArea = {};
- uint32_t clearValueCount = {};
- const VULKAN_HPP_NAMESPACE::ClearValue* pClearValues = {};
-
+ value = true
+ };
};
- static_assert( sizeof( RenderPassBeginInfo ) == sizeof( VkRenderPassBeginInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<RenderPassBeginInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eRenderPassBeginInfo>
+ struct StructExtends<MutableDescriptorTypeCreateInfoVALVE, DescriptorSetLayoutCreateInfo>
{
- using Type = RenderPassBeginInfo;
- };
-
- struct SubpassBeginInfo
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSubpassBeginInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR SubpassBeginInfo(VULKAN_HPP_NAMESPACE::SubpassContents contents_ = VULKAN_HPP_NAMESPACE::SubpassContents::eInline) VULKAN_HPP_NOEXCEPT
- : contents( contents_ )
- {}
-
- VULKAN_HPP_CONSTEXPR SubpassBeginInfo( SubpassBeginInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- SubpassBeginInfo( VkSubpassBeginInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- SubpassBeginInfo & operator=( VkSubpassBeginInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SubpassBeginInfo const *>( &rhs );
- return *this;
- }
-
- SubpassBeginInfo & operator=( SubpassBeginInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( SubpassBeginInfo ) );
- return *this;
- }
-
- SubpassBeginInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- SubpassBeginInfo & setContents( VULKAN_HPP_NAMESPACE::SubpassContents contents_ ) VULKAN_HPP_NOEXCEPT
- {
- contents = contents_;
- return *this;
- }
-
-
- operator VkSubpassBeginInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkSubpassBeginInfo*>( this );
- }
-
- operator VkSubpassBeginInfo &() VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<VkSubpassBeginInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( SubpassBeginInfo const& ) const = default;
-#else
- bool operator==( SubpassBeginInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( contents == rhs.contents );
- }
-
- bool operator!=( SubpassBeginInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSubpassBeginInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::SubpassContents contents = VULKAN_HPP_NAMESPACE::SubpassContents::eInline;
-
+ value = true
+ };
};
- static_assert( sizeof( SubpassBeginInfo ) == sizeof( VkSubpassBeginInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<SubpassBeginInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eSubpassBeginInfo>
- {
- using Type = SubpassBeginInfo;
- };
- using SubpassBeginInfoKHR = SubpassBeginInfo;
-
- struct ImageBlit
+ struct StructExtends<MutableDescriptorTypeCreateInfoVALVE, DescriptorPoolCreateInfo>
{
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR_14 ImageBlit(VULKAN_HPP_NAMESPACE::ImageSubresourceLayers srcSubresource_ = {}, std::array<VULKAN_HPP_NAMESPACE::Offset3D,2> const& srcOffsets_ = {}, VULKAN_HPP_NAMESPACE::ImageSubresourceLayers dstSubresource_ = {}, std::array<VULKAN_HPP_NAMESPACE::Offset3D,2> const& dstOffsets_ = {}) VULKAN_HPP_NOEXCEPT
- : srcSubresource( srcSubresource_ ), srcOffsets( srcOffsets_ ), dstSubresource( dstSubresource_ ), dstOffsets( dstOffsets_ )
- {}
-
- VULKAN_HPP_CONSTEXPR_14 ImageBlit( ImageBlit const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ImageBlit( VkImageBlit const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ImageBlit & operator=( VkImageBlit const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageBlit const *>( &rhs );
- return *this;
- }
-
- ImageBlit & operator=( ImageBlit const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ImageBlit ) );
- return *this;
- }
-
- ImageBlit & setSrcSubresource( VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const & srcSubresource_ ) VULKAN_HPP_NOEXCEPT
- {
- srcSubresource = srcSubresource_;
- return *this;
- }
-
- ImageBlit & setSrcOffsets( std::array<VULKAN_HPP_NAMESPACE::Offset3D,2> const & srcOffsets_ ) VULKAN_HPP_NOEXCEPT
- {
- srcOffsets = srcOffsets_;
- return *this;
- }
-
- ImageBlit & setDstSubresource( VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const & dstSubresource_ ) VULKAN_HPP_NOEXCEPT
- {
- dstSubresource = dstSubresource_;
- return *this;
- }
-
- ImageBlit & setDstOffsets( std::array<VULKAN_HPP_NAMESPACE::Offset3D,2> const & dstOffsets_ ) VULKAN_HPP_NOEXCEPT
- {
- dstOffsets = dstOffsets_;
- return *this;
- }
-
-
- operator VkImageBlit const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkImageBlit*>( this );
- }
-
- operator VkImageBlit &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkImageBlit*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ImageBlit const& ) const = default;
-#else
- bool operator==( ImageBlit const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( srcSubresource == rhs.srcSubresource )
- && ( srcOffsets == rhs.srcOffsets )
- && ( dstSubresource == rhs.dstSubresource )
- && ( dstOffsets == rhs.dstOffsets );
- }
-
- bool operator!=( ImageBlit const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::ImageSubresourceLayers srcSubresource = {};
- VULKAN_HPP_NAMESPACE::ArrayWrapper1D<VULKAN_HPP_NAMESPACE::Offset3D, 2> srcOffsets = {};
- VULKAN_HPP_NAMESPACE::ImageSubresourceLayers dstSubresource = {};
- VULKAN_HPP_NAMESPACE::ArrayWrapper1D<VULKAN_HPP_NAMESPACE::Offset3D, 2> dstOffsets = {};
-
- };
- static_assert( sizeof( ImageBlit ) == sizeof( VkImageBlit ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ImageBlit>::value, "struct wrapper is not a standard layout!" );
-
- struct ImageSubresourceRange
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ImageSubresourceRange(VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask_ = {}, uint32_t baseMipLevel_ = {}, uint32_t levelCount_ = {}, uint32_t baseArrayLayer_ = {}, uint32_t layerCount_ = {}) VULKAN_HPP_NOEXCEPT
- : aspectMask( aspectMask_ ), baseMipLevel( baseMipLevel_ ), levelCount( levelCount_ ), baseArrayLayer( baseArrayLayer_ ), layerCount( layerCount_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ImageSubresourceRange( ImageSubresourceRange const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ImageSubresourceRange( VkImageSubresourceRange const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ImageSubresourceRange & operator=( VkImageSubresourceRange const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageSubresourceRange const *>( &rhs );
- return *this;
- }
-
- ImageSubresourceRange & operator=( ImageSubresourceRange const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ImageSubresourceRange ) );
- return *this;
- }
-
- ImageSubresourceRange & setAspectMask( VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask_ ) VULKAN_HPP_NOEXCEPT
- {
- aspectMask = aspectMask_;
- return *this;
- }
-
- ImageSubresourceRange & setBaseMipLevel( uint32_t baseMipLevel_ ) VULKAN_HPP_NOEXCEPT
- {
- baseMipLevel = baseMipLevel_;
- return *this;
- }
-
- ImageSubresourceRange & setLevelCount( uint32_t levelCount_ ) VULKAN_HPP_NOEXCEPT
- {
- levelCount = levelCount_;
- return *this;
- }
-
- ImageSubresourceRange & setBaseArrayLayer( uint32_t baseArrayLayer_ ) VULKAN_HPP_NOEXCEPT
- {
- baseArrayLayer = baseArrayLayer_;
- return *this;
- }
-
- ImageSubresourceRange & setLayerCount( uint32_t layerCount_ ) VULKAN_HPP_NOEXCEPT
- {
- layerCount = layerCount_;
- return *this;
- }
-
-
- operator VkImageSubresourceRange const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkImageSubresourceRange*>( this );
- }
-
- operator VkImageSubresourceRange &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkImageSubresourceRange*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ImageSubresourceRange const& ) const = default;
-#else
- bool operator==( ImageSubresourceRange const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( aspectMask == rhs.aspectMask )
- && ( baseMipLevel == rhs.baseMipLevel )
- && ( levelCount == rhs.levelCount )
- && ( baseArrayLayer == rhs.baseArrayLayer )
- && ( layerCount == rhs.layerCount );
- }
-
- bool operator!=( ImageSubresourceRange const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask = {};
- uint32_t baseMipLevel = {};
- uint32_t levelCount = {};
- uint32_t baseArrayLayer = {};
- uint32_t layerCount = {};
-
- };
- static_assert( sizeof( ImageSubresourceRange ) == sizeof( VkImageSubresourceRange ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ImageSubresourceRange>::value, "struct wrapper is not a standard layout!" );
-
- struct ImageCopy
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ImageCopy(VULKAN_HPP_NAMESPACE::ImageSubresourceLayers srcSubresource_ = {}, VULKAN_HPP_NAMESPACE::Offset3D srcOffset_ = {}, VULKAN_HPP_NAMESPACE::ImageSubresourceLayers dstSubresource_ = {}, VULKAN_HPP_NAMESPACE::Offset3D dstOffset_ = {}, VULKAN_HPP_NAMESPACE::Extent3D extent_ = {}) VULKAN_HPP_NOEXCEPT
- : srcSubresource( srcSubresource_ ), srcOffset( srcOffset_ ), dstSubresource( dstSubresource_ ), dstOffset( dstOffset_ ), extent( extent_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ImageCopy( ImageCopy const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ImageCopy( VkImageCopy const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ImageCopy & operator=( VkImageCopy const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageCopy const *>( &rhs );
- return *this;
- }
-
- ImageCopy & operator=( ImageCopy const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ImageCopy ) );
- return *this;
- }
-
- ImageCopy & setSrcSubresource( VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const & srcSubresource_ ) VULKAN_HPP_NOEXCEPT
- {
- srcSubresource = srcSubresource_;
- return *this;
- }
-
- ImageCopy & setSrcOffset( VULKAN_HPP_NAMESPACE::Offset3D const & srcOffset_ ) VULKAN_HPP_NOEXCEPT
- {
- srcOffset = srcOffset_;
- return *this;
- }
-
- ImageCopy & setDstSubresource( VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const & dstSubresource_ ) VULKAN_HPP_NOEXCEPT
- {
- dstSubresource = dstSubresource_;
- return *this;
- }
-
- ImageCopy & setDstOffset( VULKAN_HPP_NAMESPACE::Offset3D const & dstOffset_ ) VULKAN_HPP_NOEXCEPT
- {
- dstOffset = dstOffset_;
- return *this;
- }
-
- ImageCopy & setExtent( VULKAN_HPP_NAMESPACE::Extent3D const & extent_ ) VULKAN_HPP_NOEXCEPT
- {
- extent = extent_;
- return *this;
- }
-
-
- operator VkImageCopy const&() const VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<const VkImageCopy*>( this );
- }
-
- operator VkImageCopy &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkImageCopy*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ImageCopy const& ) const = default;
-#else
- bool operator==( ImageCopy const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( srcSubresource == rhs.srcSubresource )
- && ( srcOffset == rhs.srcOffset )
- && ( dstSubresource == rhs.dstSubresource )
- && ( dstOffset == rhs.dstOffset )
- && ( extent == rhs.extent );
- }
-
- bool operator!=( ImageCopy const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::ImageSubresourceLayers srcSubresource = {};
- VULKAN_HPP_NAMESPACE::Offset3D srcOffset = {};
- VULKAN_HPP_NAMESPACE::ImageSubresourceLayers dstSubresource = {};
- VULKAN_HPP_NAMESPACE::Offset3D dstOffset = {};
- VULKAN_HPP_NAMESPACE::Extent3D extent = {};
-
- };
- static_assert( sizeof( ImageCopy ) == sizeof( VkImageCopy ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ImageCopy>::value, "struct wrapper is not a standard layout!" );
-
- struct SubpassEndInfo
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSubpassEndInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR SubpassEndInfo() VULKAN_HPP_NOEXCEPT
-
- {}
-
- VULKAN_HPP_CONSTEXPR SubpassEndInfo( SubpassEndInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- SubpassEndInfo( VkSubpassEndInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- SubpassEndInfo & operator=( VkSubpassEndInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SubpassEndInfo const *>( &rhs );
- return *this;
- }
-
- SubpassEndInfo & operator=( SubpassEndInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( SubpassEndInfo ) );
- return *this;
- }
-
- SubpassEndInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
-
- operator VkSubpassEndInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkSubpassEndInfo*>( this );
- }
-
- operator VkSubpassEndInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkSubpassEndInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( SubpassEndInfo const& ) const = default;
-#else
- bool operator==( SubpassEndInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext );
- }
-
- bool operator!=( SubpassEndInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSubpassEndInfo;
- const void* pNext = {};
-
+ value = true
+ };
};
- static_assert( sizeof( SubpassEndInfo ) == sizeof( VkSubpassEndInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<SubpassEndInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eSubpassEndInfo>
- {
- using Type = SubpassEndInfo;
- };
- using SubpassEndInfoKHR = SubpassEndInfo;
-
- class IndirectCommandsLayoutNV
+ struct StructExtends<PerformanceQuerySubmitInfoKHR, SubmitInfo>
{
- public:
- using CType = VkIndirectCommandsLayoutNV;
-
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::eIndirectCommandsLayoutNV;
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType = VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eUnknown;
-
- public:
- VULKAN_HPP_CONSTEXPR IndirectCommandsLayoutNV() VULKAN_HPP_NOEXCEPT
- : m_indirectCommandsLayoutNV(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_CONSTEXPR IndirectCommandsLayoutNV( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- : m_indirectCommandsLayoutNV(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_TYPESAFE_EXPLICIT IndirectCommandsLayoutNV( VkIndirectCommandsLayoutNV indirectCommandsLayoutNV ) VULKAN_HPP_NOEXCEPT
- : m_indirectCommandsLayoutNV( indirectCommandsLayoutNV )
- {}
-
-#if defined(VULKAN_HPP_TYPESAFE_CONVERSION)
- IndirectCommandsLayoutNV & operator=(VkIndirectCommandsLayoutNV indirectCommandsLayoutNV) VULKAN_HPP_NOEXCEPT
- {
- m_indirectCommandsLayoutNV = indirectCommandsLayoutNV;
- return *this;
- }
-#endif
-
- IndirectCommandsLayoutNV & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- {
- m_indirectCommandsLayoutNV = VK_NULL_HANDLE;
- return *this;
- }
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( IndirectCommandsLayoutNV const& ) const = default;
-#else
- bool operator==( IndirectCommandsLayoutNV const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_indirectCommandsLayoutNV == rhs.m_indirectCommandsLayoutNV;
- }
-
- bool operator!=(IndirectCommandsLayoutNV const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_indirectCommandsLayoutNV != rhs.m_indirectCommandsLayoutNV;
- }
-
- bool operator<(IndirectCommandsLayoutNV const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_indirectCommandsLayoutNV < rhs.m_indirectCommandsLayoutNV;
- }
-#endif
-
- VULKAN_HPP_TYPESAFE_EXPLICIT operator VkIndirectCommandsLayoutNV() const VULKAN_HPP_NOEXCEPT
- {
- return m_indirectCommandsLayoutNV;
- }
-
- explicit operator bool() const VULKAN_HPP_NOEXCEPT
- {
- return m_indirectCommandsLayoutNV != VK_NULL_HANDLE;
- }
-
- bool operator!() const VULKAN_HPP_NOEXCEPT
+ enum
{
- return m_indirectCommandsLayoutNV == VK_NULL_HANDLE;
- }
-
- private:
- VkIndirectCommandsLayoutNV m_indirectCommandsLayoutNV;
- };
- static_assert( sizeof( VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV ) == sizeof( VkIndirectCommandsLayoutNV ), "handle and wrapper have different size!" );
-
- template <>
- struct VULKAN_HPP_DEPRECATED("vk::cpp_type is deprecated. Use vk::CppType instead.") cpp_type<ObjectType::eIndirectCommandsLayoutNV>
- {
- using type = VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV;
+ value = true
+ };
};
-
template <>
- struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eIndirectCommandsLayoutNV>
+ struct StructExtends<PerformanceQuerySubmitInfoKHR, SubmitInfo2KHR>
{
- using Type = VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV;
- };
-
-
-
- template <>
- struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV>
- {
- static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
- };
-
- struct IndirectCommandsStreamNV
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR IndirectCommandsStreamNV(VULKAN_HPP_NAMESPACE::Buffer buffer_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize offset_ = {}) VULKAN_HPP_NOEXCEPT
- : buffer( buffer_ ), offset( offset_ )
- {}
-
- VULKAN_HPP_CONSTEXPR IndirectCommandsStreamNV( IndirectCommandsStreamNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- IndirectCommandsStreamNV( VkIndirectCommandsStreamNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- IndirectCommandsStreamNV & operator=( VkIndirectCommandsStreamNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::IndirectCommandsStreamNV const *>( &rhs );
- return *this;
- }
-
- IndirectCommandsStreamNV & operator=( IndirectCommandsStreamNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( IndirectCommandsStreamNV ) );
- return *this;
- }
-
- IndirectCommandsStreamNV & setBuffer( VULKAN_HPP_NAMESPACE::Buffer buffer_ ) VULKAN_HPP_NOEXCEPT
- {
- buffer = buffer_;
- return *this;
- }
-
- IndirectCommandsStreamNV & setOffset( VULKAN_HPP_NAMESPACE::DeviceSize offset_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- offset = offset_;
- return *this;
- }
-
-
- operator VkIndirectCommandsStreamNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkIndirectCommandsStreamNV*>( this );
- }
-
- operator VkIndirectCommandsStreamNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkIndirectCommandsStreamNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( IndirectCommandsStreamNV const& ) const = default;
-#else
- bool operator==( IndirectCommandsStreamNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( buffer == rhs.buffer )
- && ( offset == rhs.offset );
- }
-
- bool operator!=( IndirectCommandsStreamNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::Buffer buffer = {};
- VULKAN_HPP_NAMESPACE::DeviceSize offset = {};
-
+ value = true
+ };
};
- static_assert( sizeof( IndirectCommandsStreamNV ) == sizeof( VkIndirectCommandsStreamNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<IndirectCommandsStreamNV>::value, "struct wrapper is not a standard layout!" );
-
- struct GeneratedCommandsInfoNV
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eGeneratedCommandsInfoNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR GeneratedCommandsInfoNV(VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint_ = VULKAN_HPP_NAMESPACE::PipelineBindPoint::eGraphics, VULKAN_HPP_NAMESPACE::Pipeline pipeline_ = {}, VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV indirectCommandsLayout_ = {}, uint32_t streamCount_ = {}, const VULKAN_HPP_NAMESPACE::IndirectCommandsStreamNV* pStreams_ = {}, uint32_t sequencesCount_ = {}, VULKAN_HPP_NAMESPACE::Buffer preprocessBuffer_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize preprocessOffset_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize preprocessSize_ = {}, VULKAN_HPP_NAMESPACE::Buffer sequencesCountBuffer_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize sequencesCountOffset_ = {}, VULKAN_HPP_NAMESPACE::Buffer sequencesIndexBuffer_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize sequencesIndexOffset_ = {}) VULKAN_HPP_NOEXCEPT
- : pipelineBindPoint( pipelineBindPoint_ ), pipeline( pipeline_ ), indirectCommandsLayout( indirectCommandsLayout_ ), streamCount( streamCount_ ), pStreams( pStreams_ ), sequencesCount( sequencesCount_ ), preprocessBuffer( preprocessBuffer_ ), preprocessOffset( preprocessOffset_ ), preprocessSize( preprocessSize_ ), sequencesCountBuffer( sequencesCountBuffer_ ), sequencesCountOffset( sequencesCountOffset_ ), sequencesIndexBuffer( sequencesIndexBuffer_ ), sequencesIndexOffset( sequencesIndexOffset_ )
- {}
-
- VULKAN_HPP_CONSTEXPR GeneratedCommandsInfoNV( GeneratedCommandsInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- GeneratedCommandsInfoNV( VkGeneratedCommandsInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- GeneratedCommandsInfoNV( VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint_, VULKAN_HPP_NAMESPACE::Pipeline pipeline_, VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV indirectCommandsLayout_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::IndirectCommandsStreamNV> const & streams_, uint32_t sequencesCount_ = {}, VULKAN_HPP_NAMESPACE::Buffer preprocessBuffer_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize preprocessOffset_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize preprocessSize_ = {}, VULKAN_HPP_NAMESPACE::Buffer sequencesCountBuffer_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize sequencesCountOffset_ = {}, VULKAN_HPP_NAMESPACE::Buffer sequencesIndexBuffer_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize sequencesIndexOffset_ = {} )
- : pipelineBindPoint( pipelineBindPoint_ ), pipeline( pipeline_ ), indirectCommandsLayout( indirectCommandsLayout_ ), streamCount( static_cast<uint32_t>( streams_.size() ) ), pStreams( streams_.data() ), sequencesCount( sequencesCount_ ), preprocessBuffer( preprocessBuffer_ ), preprocessOffset( preprocessOffset_ ), preprocessSize( preprocessSize_ ), sequencesCountBuffer( sequencesCountBuffer_ ), sequencesCountOffset( sequencesCountOffset_ ), sequencesIndexBuffer( sequencesIndexBuffer_ ), sequencesIndexOffset( sequencesIndexOffset_ )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- GeneratedCommandsInfoNV & operator=( VkGeneratedCommandsInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::GeneratedCommandsInfoNV const *>( &rhs );
- return *this;
- }
-
- GeneratedCommandsInfoNV & operator=( GeneratedCommandsInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( GeneratedCommandsInfoNV ) );
- return *this;
- }
-
- GeneratedCommandsInfoNV & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- GeneratedCommandsInfoNV & setPipelineBindPoint( VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint_ ) VULKAN_HPP_NOEXCEPT
- {
- pipelineBindPoint = pipelineBindPoint_;
- return *this;
- }
-
- GeneratedCommandsInfoNV & setPipeline( VULKAN_HPP_NAMESPACE::Pipeline pipeline_ ) VULKAN_HPP_NOEXCEPT
- {
- pipeline = pipeline_;
- return *this;
- }
-
- GeneratedCommandsInfoNV & setIndirectCommandsLayout( VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV indirectCommandsLayout_ ) VULKAN_HPP_NOEXCEPT
- {
- indirectCommandsLayout = indirectCommandsLayout_;
- return *this;
- }
-
- GeneratedCommandsInfoNV & setStreamCount( uint32_t streamCount_ ) VULKAN_HPP_NOEXCEPT
- {
- streamCount = streamCount_;
- return *this;
- }
-
- GeneratedCommandsInfoNV & setPStreams( const VULKAN_HPP_NAMESPACE::IndirectCommandsStreamNV* pStreams_ ) VULKAN_HPP_NOEXCEPT
- {
- pStreams = pStreams_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- GeneratedCommandsInfoNV & setStreams( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::IndirectCommandsStreamNV> const & streams_ ) VULKAN_HPP_NOEXCEPT
- {
- streamCount = static_cast<uint32_t>( streams_.size() );
- pStreams = streams_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- GeneratedCommandsInfoNV & setSequencesCount( uint32_t sequencesCount_ ) VULKAN_HPP_NOEXCEPT
- {
- sequencesCount = sequencesCount_;
- return *this;
- }
-
- GeneratedCommandsInfoNV & setPreprocessBuffer( VULKAN_HPP_NAMESPACE::Buffer preprocessBuffer_ ) VULKAN_HPP_NOEXCEPT
- {
- preprocessBuffer = preprocessBuffer_;
- return *this;
- }
-
- GeneratedCommandsInfoNV & setPreprocessOffset( VULKAN_HPP_NAMESPACE::DeviceSize preprocessOffset_ ) VULKAN_HPP_NOEXCEPT
- {
- preprocessOffset = preprocessOffset_;
- return *this;
- }
-
- GeneratedCommandsInfoNV & setPreprocessSize( VULKAN_HPP_NAMESPACE::DeviceSize preprocessSize_ ) VULKAN_HPP_NOEXCEPT
- {
- preprocessSize = preprocessSize_;
- return *this;
- }
-
- GeneratedCommandsInfoNV & setSequencesCountBuffer( VULKAN_HPP_NAMESPACE::Buffer sequencesCountBuffer_ ) VULKAN_HPP_NOEXCEPT
- {
- sequencesCountBuffer = sequencesCountBuffer_;
- return *this;
- }
-
- GeneratedCommandsInfoNV & setSequencesCountOffset( VULKAN_HPP_NAMESPACE::DeviceSize sequencesCountOffset_ ) VULKAN_HPP_NOEXCEPT
- {
- sequencesCountOffset = sequencesCountOffset_;
- return *this;
- }
-
- GeneratedCommandsInfoNV & setSequencesIndexBuffer( VULKAN_HPP_NAMESPACE::Buffer sequencesIndexBuffer_ ) VULKAN_HPP_NOEXCEPT
- {
- sequencesIndexBuffer = sequencesIndexBuffer_;
- return *this;
- }
-
- GeneratedCommandsInfoNV & setSequencesIndexOffset( VULKAN_HPP_NAMESPACE::DeviceSize sequencesIndexOffset_ ) VULKAN_HPP_NOEXCEPT
- {
- sequencesIndexOffset = sequencesIndexOffset_;
- return *this;
- }
-
-
- operator VkGeneratedCommandsInfoNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkGeneratedCommandsInfoNV*>( this );
- }
-
- operator VkGeneratedCommandsInfoNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkGeneratedCommandsInfoNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( GeneratedCommandsInfoNV const& ) const = default;
-#else
- bool operator==( GeneratedCommandsInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( pipelineBindPoint == rhs.pipelineBindPoint )
- && ( pipeline == rhs.pipeline )
- && ( indirectCommandsLayout == rhs.indirectCommandsLayout )
- && ( streamCount == rhs.streamCount )
- && ( pStreams == rhs.pStreams )
- && ( sequencesCount == rhs.sequencesCount )
- && ( preprocessBuffer == rhs.preprocessBuffer )
- && ( preprocessOffset == rhs.preprocessOffset )
- && ( preprocessSize == rhs.preprocessSize )
- && ( sequencesCountBuffer == rhs.sequencesCountBuffer )
- && ( sequencesCountOffset == rhs.sequencesCountOffset )
- && ( sequencesIndexBuffer == rhs.sequencesIndexBuffer )
- && ( sequencesIndexOffset == rhs.sequencesIndexOffset );
- }
-
- bool operator!=( GeneratedCommandsInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eGeneratedCommandsInfoNV;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint = VULKAN_HPP_NAMESPACE::PipelineBindPoint::eGraphics;
- VULKAN_HPP_NAMESPACE::Pipeline pipeline = {};
- VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV indirectCommandsLayout = {};
- uint32_t streamCount = {};
- const VULKAN_HPP_NAMESPACE::IndirectCommandsStreamNV* pStreams = {};
- uint32_t sequencesCount = {};
- VULKAN_HPP_NAMESPACE::Buffer preprocessBuffer = {};
- VULKAN_HPP_NAMESPACE::DeviceSize preprocessOffset = {};
- VULKAN_HPP_NAMESPACE::DeviceSize preprocessSize = {};
- VULKAN_HPP_NAMESPACE::Buffer sequencesCountBuffer = {};
- VULKAN_HPP_NAMESPACE::DeviceSize sequencesCountOffset = {};
- VULKAN_HPP_NAMESPACE::Buffer sequencesIndexBuffer = {};
- VULKAN_HPP_NAMESPACE::DeviceSize sequencesIndexOffset = {};
-
- };
- static_assert( sizeof( GeneratedCommandsInfoNV ) == sizeof( VkGeneratedCommandsInfoNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<GeneratedCommandsInfoNV>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eGeneratedCommandsInfoNV>
+ struct StructExtends<PhysicalDevice16BitStorageFeatures, PhysicalDeviceFeatures2>
{
- using Type = GeneratedCommandsInfoNV;
- };
-
- struct MemoryBarrier
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMemoryBarrier;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR MemoryBarrier(VULKAN_HPP_NAMESPACE::AccessFlags srcAccessMask_ = {}, VULKAN_HPP_NAMESPACE::AccessFlags dstAccessMask_ = {}) VULKAN_HPP_NOEXCEPT
- : srcAccessMask( srcAccessMask_ ), dstAccessMask( dstAccessMask_ )
- {}
-
- VULKAN_HPP_CONSTEXPR MemoryBarrier( MemoryBarrier const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- MemoryBarrier( VkMemoryBarrier const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- MemoryBarrier & operator=( VkMemoryBarrier const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MemoryBarrier const *>( &rhs );
- return *this;
- }
-
- MemoryBarrier & operator=( MemoryBarrier const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( MemoryBarrier ) );
- return *this;
- }
-
- MemoryBarrier & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- MemoryBarrier & setSrcAccessMask( VULKAN_HPP_NAMESPACE::AccessFlags srcAccessMask_ ) VULKAN_HPP_NOEXCEPT
- {
- srcAccessMask = srcAccessMask_;
- return *this;
- }
-
- MemoryBarrier & setDstAccessMask( VULKAN_HPP_NAMESPACE::AccessFlags dstAccessMask_ ) VULKAN_HPP_NOEXCEPT
- {
- dstAccessMask = dstAccessMask_;
- return *this;
- }
-
-
- operator VkMemoryBarrier const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkMemoryBarrier*>( this );
- }
-
- operator VkMemoryBarrier &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkMemoryBarrier*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( MemoryBarrier const& ) const = default;
-#else
- bool operator==( MemoryBarrier const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( srcAccessMask == rhs.srcAccessMask )
- && ( dstAccessMask == rhs.dstAccessMask );
- }
-
- bool operator!=( MemoryBarrier const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMemoryBarrier;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::AccessFlags srcAccessMask = {};
- VULKAN_HPP_NAMESPACE::AccessFlags dstAccessMask = {};
-
+ value = true
+ };
};
- static_assert( sizeof( MemoryBarrier ) == sizeof( VkMemoryBarrier ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<MemoryBarrier>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eMemoryBarrier>
- {
- using Type = MemoryBarrier;
- };
-
- struct ImageMemoryBarrier
+ struct StructExtends<PhysicalDevice16BitStorageFeatures, DeviceCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImageMemoryBarrier;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ImageMemoryBarrier(VULKAN_HPP_NAMESPACE::AccessFlags srcAccessMask_ = {}, VULKAN_HPP_NAMESPACE::AccessFlags dstAccessMask_ = {}, VULKAN_HPP_NAMESPACE::ImageLayout oldLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined, VULKAN_HPP_NAMESPACE::ImageLayout newLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined, uint32_t srcQueueFamilyIndex_ = {}, uint32_t dstQueueFamilyIndex_ = {}, VULKAN_HPP_NAMESPACE::Image image_ = {}, VULKAN_HPP_NAMESPACE::ImageSubresourceRange subresourceRange_ = {}) VULKAN_HPP_NOEXCEPT
- : srcAccessMask( srcAccessMask_ ), dstAccessMask( dstAccessMask_ ), oldLayout( oldLayout_ ), newLayout( newLayout_ ), srcQueueFamilyIndex( srcQueueFamilyIndex_ ), dstQueueFamilyIndex( dstQueueFamilyIndex_ ), image( image_ ), subresourceRange( subresourceRange_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ImageMemoryBarrier( ImageMemoryBarrier const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ImageMemoryBarrier( VkImageMemoryBarrier const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ImageMemoryBarrier & operator=( VkImageMemoryBarrier const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageMemoryBarrier const *>( &rhs );
- return *this;
- }
-
- ImageMemoryBarrier & operator=( ImageMemoryBarrier const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ImageMemoryBarrier ) );
- return *this;
- }
-
- ImageMemoryBarrier & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- ImageMemoryBarrier & setSrcAccessMask( VULKAN_HPP_NAMESPACE::AccessFlags srcAccessMask_ ) VULKAN_HPP_NOEXCEPT
- {
- srcAccessMask = srcAccessMask_;
- return *this;
- }
-
- ImageMemoryBarrier & setDstAccessMask( VULKAN_HPP_NAMESPACE::AccessFlags dstAccessMask_ ) VULKAN_HPP_NOEXCEPT
- {
- dstAccessMask = dstAccessMask_;
- return *this;
- }
-
- ImageMemoryBarrier & setOldLayout( VULKAN_HPP_NAMESPACE::ImageLayout oldLayout_ ) VULKAN_HPP_NOEXCEPT
- {
- oldLayout = oldLayout_;
- return *this;
- }
-
- ImageMemoryBarrier & setNewLayout( VULKAN_HPP_NAMESPACE::ImageLayout newLayout_ ) VULKAN_HPP_NOEXCEPT
- {
- newLayout = newLayout_;
- return *this;
- }
-
- ImageMemoryBarrier & setSrcQueueFamilyIndex( uint32_t srcQueueFamilyIndex_ ) VULKAN_HPP_NOEXCEPT
- {
- srcQueueFamilyIndex = srcQueueFamilyIndex_;
- return *this;
- }
-
- ImageMemoryBarrier & setDstQueueFamilyIndex( uint32_t dstQueueFamilyIndex_ ) VULKAN_HPP_NOEXCEPT
- {
- dstQueueFamilyIndex = dstQueueFamilyIndex_;
- return *this;
- }
-
- ImageMemoryBarrier & setImage( VULKAN_HPP_NAMESPACE::Image image_ ) VULKAN_HPP_NOEXCEPT
- {
- image = image_;
- return *this;
- }
-
- ImageMemoryBarrier & setSubresourceRange( VULKAN_HPP_NAMESPACE::ImageSubresourceRange const & subresourceRange_ ) VULKAN_HPP_NOEXCEPT
- {
- subresourceRange = subresourceRange_;
- return *this;
- }
-
-
- operator VkImageMemoryBarrier const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkImageMemoryBarrier*>( this );
- }
-
- operator VkImageMemoryBarrier &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkImageMemoryBarrier*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ImageMemoryBarrier const& ) const = default;
-#else
- bool operator==( ImageMemoryBarrier const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( srcAccessMask == rhs.srcAccessMask )
- && ( dstAccessMask == rhs.dstAccessMask )
- && ( oldLayout == rhs.oldLayout )
- && ( newLayout == rhs.newLayout )
- && ( srcQueueFamilyIndex == rhs.srcQueueFamilyIndex )
- && ( dstQueueFamilyIndex == rhs.dstQueueFamilyIndex )
- && ( image == rhs.image )
- && ( subresourceRange == rhs.subresourceRange );
- }
-
- bool operator!=( ImageMemoryBarrier const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageMemoryBarrier;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::AccessFlags srcAccessMask = {};
- VULKAN_HPP_NAMESPACE::AccessFlags dstAccessMask = {};
- VULKAN_HPP_NAMESPACE::ImageLayout oldLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
- VULKAN_HPP_NAMESPACE::ImageLayout newLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
- uint32_t srcQueueFamilyIndex = {};
- uint32_t dstQueueFamilyIndex = {};
- VULKAN_HPP_NAMESPACE::Image image = {};
- VULKAN_HPP_NAMESPACE::ImageSubresourceRange subresourceRange = {};
-
+ value = true
+ };
};
- static_assert( sizeof( ImageMemoryBarrier ) == sizeof( VkImageMemoryBarrier ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ImageMemoryBarrier>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eImageMemoryBarrier>
- {
- using Type = ImageMemoryBarrier;
- };
-
- class BufferView
+ struct StructExtends<PhysicalDevice4444FormatsFeaturesEXT, PhysicalDeviceFeatures2>
{
- public:
- using CType = VkBufferView;
-
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::eBufferView;
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType = VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eBufferView;
-
- public:
- VULKAN_HPP_CONSTEXPR BufferView() VULKAN_HPP_NOEXCEPT
- : m_bufferView(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_CONSTEXPR BufferView( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- : m_bufferView(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_TYPESAFE_EXPLICIT BufferView( VkBufferView bufferView ) VULKAN_HPP_NOEXCEPT
- : m_bufferView( bufferView )
- {}
-
-#if defined(VULKAN_HPP_TYPESAFE_CONVERSION)
- BufferView & operator=(VkBufferView bufferView) VULKAN_HPP_NOEXCEPT
+ enum
{
- m_bufferView = bufferView;
- return *this;
- }
-#endif
-
- BufferView & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- {
- m_bufferView = VK_NULL_HANDLE;
- return *this;
- }
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( BufferView const& ) const = default;
-#else
- bool operator==( BufferView const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_bufferView == rhs.m_bufferView;
- }
-
- bool operator!=(BufferView const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_bufferView != rhs.m_bufferView;
- }
-
- bool operator<(BufferView const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_bufferView < rhs.m_bufferView;
- }
-#endif
-
- VULKAN_HPP_TYPESAFE_EXPLICIT operator VkBufferView() const VULKAN_HPP_NOEXCEPT
- {
- return m_bufferView;
- }
-
- explicit operator bool() const VULKAN_HPP_NOEXCEPT
- {
- return m_bufferView != VK_NULL_HANDLE;
- }
-
- bool operator!() const VULKAN_HPP_NOEXCEPT
- {
- return m_bufferView == VK_NULL_HANDLE;
- }
-
- private:
- VkBufferView m_bufferView;
- };
- static_assert( sizeof( VULKAN_HPP_NAMESPACE::BufferView ) == sizeof( VkBufferView ), "handle and wrapper have different size!" );
-
- template <>
- struct VULKAN_HPP_DEPRECATED("vk::cpp_type is deprecated. Use vk::CppType instead.") cpp_type<ObjectType::eBufferView>
- {
- using type = VULKAN_HPP_NAMESPACE::BufferView;
- };
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eBufferView>
- {
- using Type = VULKAN_HPP_NAMESPACE::BufferView;
- };
-
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT, VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eBufferView>
- {
- using Type = VULKAN_HPP_NAMESPACE::BufferView;
+ value = true
+ };
};
-
-
template <>
- struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::BufferView>
+ struct StructExtends<PhysicalDevice4444FormatsFeaturesEXT, DeviceCreateInfo>
{
- static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
- };
-
- struct WriteDescriptorSet
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eWriteDescriptorSet;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR WriteDescriptorSet(VULKAN_HPP_NAMESPACE::DescriptorSet dstSet_ = {}, uint32_t dstBinding_ = {}, uint32_t dstArrayElement_ = {}, uint32_t descriptorCount_ = {}, VULKAN_HPP_NAMESPACE::DescriptorType descriptorType_ = VULKAN_HPP_NAMESPACE::DescriptorType::eSampler, const VULKAN_HPP_NAMESPACE::DescriptorImageInfo* pImageInfo_ = {}, const VULKAN_HPP_NAMESPACE::DescriptorBufferInfo* pBufferInfo_ = {}, const VULKAN_HPP_NAMESPACE::BufferView* pTexelBufferView_ = {}) VULKAN_HPP_NOEXCEPT
- : dstSet( dstSet_ ), dstBinding( dstBinding_ ), dstArrayElement( dstArrayElement_ ), descriptorCount( descriptorCount_ ), descriptorType( descriptorType_ ), pImageInfo( pImageInfo_ ), pBufferInfo( pBufferInfo_ ), pTexelBufferView( pTexelBufferView_ )
- {}
-
- VULKAN_HPP_CONSTEXPR WriteDescriptorSet( WriteDescriptorSet const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- WriteDescriptorSet( VkWriteDescriptorSet const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- WriteDescriptorSet( VULKAN_HPP_NAMESPACE::DescriptorSet dstSet_, uint32_t dstBinding_, uint32_t dstArrayElement_, VULKAN_HPP_NAMESPACE::DescriptorType descriptorType_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DescriptorImageInfo> const & imageInfo_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DescriptorBufferInfo> const & bufferInfo_ = {}, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::BufferView> const & texelBufferView_ = {} )
- : dstSet( dstSet_ ), dstBinding( dstBinding_ ), dstArrayElement( dstArrayElement_ ), descriptorCount( static_cast<uint32_t>( !imageInfo_.empty() ? imageInfo_.size() : !bufferInfo_.empty() ? bufferInfo_.size() : texelBufferView_.size() ) ), descriptorType( descriptorType_ ), pImageInfo( imageInfo_.data() ), pBufferInfo( bufferInfo_.data() ), pTexelBufferView( texelBufferView_.data() )
- {
-#ifdef VULKAN_HPP_NO_EXCEPTIONS
- VULKAN_HPP_ASSERT( ( !imageInfo_.empty() + !bufferInfo_.empty() + !texelBufferView_.empty() ) == 1 );
-#else
- if ( ( !imageInfo_.empty() + !bufferInfo_.empty() + !texelBufferView_.empty() ) != 1 )
- {
- throw LogicError( VULKAN_HPP_NAMESPACE_STRING "::WriteDescriptorSet::WriteDescriptorSet: ( !imageInfo_.empty() + !bufferInfo_.empty() + !texelBufferView_.empty() ) != 1" );
- }
-#endif /*VULKAN_HPP_NO_EXCEPTIONS*/
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- WriteDescriptorSet & operator=( VkWriteDescriptorSet const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::WriteDescriptorSet const *>( &rhs );
- return *this;
- }
-
- WriteDescriptorSet & operator=( WriteDescriptorSet const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( WriteDescriptorSet ) );
- return *this;
- }
-
- WriteDescriptorSet & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- WriteDescriptorSet & setDstSet( VULKAN_HPP_NAMESPACE::DescriptorSet dstSet_ ) VULKAN_HPP_NOEXCEPT
- {
- dstSet = dstSet_;
- return *this;
- }
-
- WriteDescriptorSet & setDstBinding( uint32_t dstBinding_ ) VULKAN_HPP_NOEXCEPT
- {
- dstBinding = dstBinding_;
- return *this;
- }
-
- WriteDescriptorSet & setDstArrayElement( uint32_t dstArrayElement_ ) VULKAN_HPP_NOEXCEPT
- {
- dstArrayElement = dstArrayElement_;
- return *this;
- }
-
- WriteDescriptorSet & setDescriptorCount( uint32_t descriptorCount_ ) VULKAN_HPP_NOEXCEPT
- {
- descriptorCount = descriptorCount_;
- return *this;
- }
-
- WriteDescriptorSet & setDescriptorType( VULKAN_HPP_NAMESPACE::DescriptorType descriptorType_ ) VULKAN_HPP_NOEXCEPT
- {
- descriptorType = descriptorType_;
- return *this;
- }
-
- WriteDescriptorSet & setPImageInfo( const VULKAN_HPP_NAMESPACE::DescriptorImageInfo* pImageInfo_ ) VULKAN_HPP_NOEXCEPT
- {
- pImageInfo = pImageInfo_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- WriteDescriptorSet & setImageInfo( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DescriptorImageInfo> const & imageInfo_ ) VULKAN_HPP_NOEXCEPT
- {
- descriptorCount = static_cast<uint32_t>( imageInfo_.size() );
- pImageInfo = imageInfo_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- WriteDescriptorSet & setPBufferInfo( const VULKAN_HPP_NAMESPACE::DescriptorBufferInfo* pBufferInfo_ ) VULKAN_HPP_NOEXCEPT
- {
- pBufferInfo = pBufferInfo_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- WriteDescriptorSet & setBufferInfo( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DescriptorBufferInfo> const & bufferInfo_ ) VULKAN_HPP_NOEXCEPT
- {
- descriptorCount = static_cast<uint32_t>( bufferInfo_.size() );
- pBufferInfo = bufferInfo_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- WriteDescriptorSet & setPTexelBufferView( const VULKAN_HPP_NAMESPACE::BufferView* pTexelBufferView_ ) VULKAN_HPP_NOEXCEPT
- {
- pTexelBufferView = pTexelBufferView_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- WriteDescriptorSet & setTexelBufferView( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::BufferView> const & texelBufferView_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- descriptorCount = static_cast<uint32_t>( texelBufferView_.size() );
- pTexelBufferView = texelBufferView_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkWriteDescriptorSet const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkWriteDescriptorSet*>( this );
- }
-
- operator VkWriteDescriptorSet &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkWriteDescriptorSet*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( WriteDescriptorSet const& ) const = default;
-#else
- bool operator==( WriteDescriptorSet const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( dstSet == rhs.dstSet )
- && ( dstBinding == rhs.dstBinding )
- && ( dstArrayElement == rhs.dstArrayElement )
- && ( descriptorCount == rhs.descriptorCount )
- && ( descriptorType == rhs.descriptorType )
- && ( pImageInfo == rhs.pImageInfo )
- && ( pBufferInfo == rhs.pBufferInfo )
- && ( pTexelBufferView == rhs.pTexelBufferView );
- }
-
- bool operator!=( WriteDescriptorSet const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eWriteDescriptorSet;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::DescriptorSet dstSet = {};
- uint32_t dstBinding = {};
- uint32_t dstArrayElement = {};
- uint32_t descriptorCount = {};
- VULKAN_HPP_NAMESPACE::DescriptorType descriptorType = VULKAN_HPP_NAMESPACE::DescriptorType::eSampler;
- const VULKAN_HPP_NAMESPACE::DescriptorImageInfo* pImageInfo = {};
- const VULKAN_HPP_NAMESPACE::DescriptorBufferInfo* pBufferInfo = {};
- const VULKAN_HPP_NAMESPACE::BufferView* pTexelBufferView = {};
-
+ value = true
+ };
};
- static_assert( sizeof( WriteDescriptorSet ) == sizeof( VkWriteDescriptorSet ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<WriteDescriptorSet>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eWriteDescriptorSet>
- {
- using Type = WriteDescriptorSet;
- };
-
- class DescriptorUpdateTemplate
+ struct StructExtends<PhysicalDevice8BitStorageFeatures, PhysicalDeviceFeatures2>
{
- public:
- using CType = VkDescriptorUpdateTemplate;
-
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::eDescriptorUpdateTemplate;
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType = VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eDescriptorUpdateTemplate;
-
- public:
- VULKAN_HPP_CONSTEXPR DescriptorUpdateTemplate() VULKAN_HPP_NOEXCEPT
- : m_descriptorUpdateTemplate(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_CONSTEXPR DescriptorUpdateTemplate( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- : m_descriptorUpdateTemplate(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_TYPESAFE_EXPLICIT DescriptorUpdateTemplate( VkDescriptorUpdateTemplate descriptorUpdateTemplate ) VULKAN_HPP_NOEXCEPT
- : m_descriptorUpdateTemplate( descriptorUpdateTemplate )
- {}
-
-#if defined(VULKAN_HPP_TYPESAFE_CONVERSION)
- DescriptorUpdateTemplate & operator=(VkDescriptorUpdateTemplate descriptorUpdateTemplate) VULKAN_HPP_NOEXCEPT
+ enum
{
- m_descriptorUpdateTemplate = descriptorUpdateTemplate;
- return *this;
- }
-#endif
-
- DescriptorUpdateTemplate & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- {
- m_descriptorUpdateTemplate = VK_NULL_HANDLE;
- return *this;
- }
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DescriptorUpdateTemplate const& ) const = default;
-#else
- bool operator==( DescriptorUpdateTemplate const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_descriptorUpdateTemplate == rhs.m_descriptorUpdateTemplate;
- }
-
- bool operator!=(DescriptorUpdateTemplate const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_descriptorUpdateTemplate != rhs.m_descriptorUpdateTemplate;
- }
-
- bool operator<(DescriptorUpdateTemplate const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_descriptorUpdateTemplate < rhs.m_descriptorUpdateTemplate;
- }
-#endif
-
- VULKAN_HPP_TYPESAFE_EXPLICIT operator VkDescriptorUpdateTemplate() const VULKAN_HPP_NOEXCEPT
- {
- return m_descriptorUpdateTemplate;
- }
-
- explicit operator bool() const VULKAN_HPP_NOEXCEPT
- {
- return m_descriptorUpdateTemplate != VK_NULL_HANDLE;
- }
-
- bool operator!() const VULKAN_HPP_NOEXCEPT
- {
- return m_descriptorUpdateTemplate == VK_NULL_HANDLE;
- }
-
- private:
- VkDescriptorUpdateTemplate m_descriptorUpdateTemplate;
- };
- static_assert( sizeof( VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate ) == sizeof( VkDescriptorUpdateTemplate ), "handle and wrapper have different size!" );
-
- template <>
- struct VULKAN_HPP_DEPRECATED("vk::cpp_type is deprecated. Use vk::CppType instead.") cpp_type<ObjectType::eDescriptorUpdateTemplate>
- {
- using type = VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate;
- };
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eDescriptorUpdateTemplate>
- {
- using Type = VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate;
- };
-
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT, VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eDescriptorUpdateTemplate>
- {
- using Type = VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate;
+ value = true
+ };
};
-
-
template <>
- struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate>
- {
- static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
- };
- using DescriptorUpdateTemplateKHR = DescriptorUpdateTemplate;
-
- class Event
+ struct StructExtends<PhysicalDevice8BitStorageFeatures, DeviceCreateInfo>
{
- public:
- using CType = VkEvent;
-
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::eEvent;
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType = VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eEvent;
-
- public:
- VULKAN_HPP_CONSTEXPR Event() VULKAN_HPP_NOEXCEPT
- : m_event(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_CONSTEXPR Event( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- : m_event(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_TYPESAFE_EXPLICIT Event( VkEvent event ) VULKAN_HPP_NOEXCEPT
- : m_event( event )
- {}
-
-#if defined(VULKAN_HPP_TYPESAFE_CONVERSION)
- Event & operator=(VkEvent event) VULKAN_HPP_NOEXCEPT
- {
- m_event = event;
- return *this;
- }
-#endif
-
- Event & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
+ enum
{
- m_event = VK_NULL_HANDLE;
- return *this;
- }
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( Event const& ) const = default;
-#else
- bool operator==( Event const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_event == rhs.m_event;
- }
-
- bool operator!=(Event const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_event != rhs.m_event;
- }
-
- bool operator<(Event const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_event < rhs.m_event;
- }
-#endif
-
- VULKAN_HPP_TYPESAFE_EXPLICIT operator VkEvent() const VULKAN_HPP_NOEXCEPT
- {
- return m_event;
- }
-
- explicit operator bool() const VULKAN_HPP_NOEXCEPT
- {
- return m_event != VK_NULL_HANDLE;
- }
-
- bool operator!() const VULKAN_HPP_NOEXCEPT
- {
- return m_event == VK_NULL_HANDLE;
- }
-
- private:
- VkEvent m_event;
- };
- static_assert( sizeof( VULKAN_HPP_NAMESPACE::Event ) == sizeof( VkEvent ), "handle and wrapper have different size!" );
-
- template <>
- struct VULKAN_HPP_DEPRECATED("vk::cpp_type is deprecated. Use vk::CppType instead.") cpp_type<ObjectType::eEvent>
- {
- using type = VULKAN_HPP_NAMESPACE::Event;
- };
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eEvent>
- {
- using Type = VULKAN_HPP_NAMESPACE::Event;
- };
-
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT, VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eEvent>
- {
- using Type = VULKAN_HPP_NAMESPACE::Event;
+ value = true
+ };
};
-
-
template <>
- struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::Event>
- {
- static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
- };
-
- struct ImageResolve
+ struct StructExtends<PhysicalDeviceASTCDecodeFeaturesEXT, PhysicalDeviceFeatures2>
{
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ImageResolve(VULKAN_HPP_NAMESPACE::ImageSubresourceLayers srcSubresource_ = {}, VULKAN_HPP_NAMESPACE::Offset3D srcOffset_ = {}, VULKAN_HPP_NAMESPACE::ImageSubresourceLayers dstSubresource_ = {}, VULKAN_HPP_NAMESPACE::Offset3D dstOffset_ = {}, VULKAN_HPP_NAMESPACE::Extent3D extent_ = {}) VULKAN_HPP_NOEXCEPT
- : srcSubresource( srcSubresource_ ), srcOffset( srcOffset_ ), dstSubresource( dstSubresource_ ), dstOffset( dstOffset_ ), extent( extent_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ImageResolve( ImageResolve const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ImageResolve( VkImageResolve const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ImageResolve & operator=( VkImageResolve const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageResolve const *>( &rhs );
- return *this;
- }
-
- ImageResolve & operator=( ImageResolve const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ImageResolve ) );
- return *this;
- }
-
- ImageResolve & setSrcSubresource( VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const & srcSubresource_ ) VULKAN_HPP_NOEXCEPT
- {
- srcSubresource = srcSubresource_;
- return *this;
- }
-
- ImageResolve & setSrcOffset( VULKAN_HPP_NAMESPACE::Offset3D const & srcOffset_ ) VULKAN_HPP_NOEXCEPT
- {
- srcOffset = srcOffset_;
- return *this;
- }
-
- ImageResolve & setDstSubresource( VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const & dstSubresource_ ) VULKAN_HPP_NOEXCEPT
- {
- dstSubresource = dstSubresource_;
- return *this;
- }
-
- ImageResolve & setDstOffset( VULKAN_HPP_NAMESPACE::Offset3D const & dstOffset_ ) VULKAN_HPP_NOEXCEPT
- {
- dstOffset = dstOffset_;
- return *this;
- }
-
- ImageResolve & setExtent( VULKAN_HPP_NAMESPACE::Extent3D const & extent_ ) VULKAN_HPP_NOEXCEPT
- {
- extent = extent_;
- return *this;
- }
-
-
- operator VkImageResolve const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkImageResolve*>( this );
- }
-
- operator VkImageResolve &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkImageResolve*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ImageResolve const& ) const = default;
-#else
- bool operator==( ImageResolve const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( srcSubresource == rhs.srcSubresource )
- && ( srcOffset == rhs.srcOffset )
- && ( dstSubresource == rhs.dstSubresource )
- && ( dstOffset == rhs.dstOffset )
- && ( extent == rhs.extent );
- }
-
- bool operator!=( ImageResolve const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::ImageSubresourceLayers srcSubresource = {};
- VULKAN_HPP_NAMESPACE::Offset3D srcOffset = {};
- VULKAN_HPP_NAMESPACE::ImageSubresourceLayers dstSubresource = {};
- VULKAN_HPP_NAMESPACE::Offset3D dstOffset = {};
- VULKAN_HPP_NAMESPACE::Extent3D extent = {};
-
- };
- static_assert( sizeof( ImageResolve ) == sizeof( VkImageResolve ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ImageResolve>::value, "struct wrapper is not a standard layout!" );
-
- struct ImageResolve2KHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImageResolve2KHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ImageResolve2KHR(VULKAN_HPP_NAMESPACE::ImageSubresourceLayers srcSubresource_ = {}, VULKAN_HPP_NAMESPACE::Offset3D srcOffset_ = {}, VULKAN_HPP_NAMESPACE::ImageSubresourceLayers dstSubresource_ = {}, VULKAN_HPP_NAMESPACE::Offset3D dstOffset_ = {}, VULKAN_HPP_NAMESPACE::Extent3D extent_ = {}) VULKAN_HPP_NOEXCEPT
- : srcSubresource( srcSubresource_ ), srcOffset( srcOffset_ ), dstSubresource( dstSubresource_ ), dstOffset( dstOffset_ ), extent( extent_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ImageResolve2KHR( ImageResolve2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ImageResolve2KHR( VkImageResolve2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ImageResolve2KHR & operator=( VkImageResolve2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageResolve2KHR const *>( &rhs );
- return *this;
- }
-
- ImageResolve2KHR & operator=( ImageResolve2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ImageResolve2KHR ) );
- return *this;
- }
-
- ImageResolve2KHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- ImageResolve2KHR & setSrcSubresource( VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const & srcSubresource_ ) VULKAN_HPP_NOEXCEPT
- {
- srcSubresource = srcSubresource_;
- return *this;
- }
-
- ImageResolve2KHR & setSrcOffset( VULKAN_HPP_NAMESPACE::Offset3D const & srcOffset_ ) VULKAN_HPP_NOEXCEPT
- {
- srcOffset = srcOffset_;
- return *this;
- }
-
- ImageResolve2KHR & setDstSubresource( VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const & dstSubresource_ ) VULKAN_HPP_NOEXCEPT
- {
- dstSubresource = dstSubresource_;
- return *this;
- }
-
- ImageResolve2KHR & setDstOffset( VULKAN_HPP_NAMESPACE::Offset3D const & dstOffset_ ) VULKAN_HPP_NOEXCEPT
- {
- dstOffset = dstOffset_;
- return *this;
- }
-
- ImageResolve2KHR & setExtent( VULKAN_HPP_NAMESPACE::Extent3D const & extent_ ) VULKAN_HPP_NOEXCEPT
- {
- extent = extent_;
- return *this;
- }
-
-
- operator VkImageResolve2KHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkImageResolve2KHR*>( this );
- }
-
- operator VkImageResolve2KHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkImageResolve2KHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ImageResolve2KHR const& ) const = default;
-#else
- bool operator==( ImageResolve2KHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( srcSubresource == rhs.srcSubresource )
- && ( srcOffset == rhs.srcOffset )
- && ( dstSubresource == rhs.dstSubresource )
- && ( dstOffset == rhs.dstOffset )
- && ( extent == rhs.extent );
- }
-
- bool operator!=( ImageResolve2KHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageResolve2KHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::ImageSubresourceLayers srcSubresource = {};
- VULKAN_HPP_NAMESPACE::Offset3D srcOffset = {};
- VULKAN_HPP_NAMESPACE::ImageSubresourceLayers dstSubresource = {};
- VULKAN_HPP_NAMESPACE::Offset3D dstOffset = {};
- VULKAN_HPP_NAMESPACE::Extent3D extent = {};
-
+ value = true
+ };
};
- static_assert( sizeof( ImageResolve2KHR ) == sizeof( VkImageResolve2KHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ImageResolve2KHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eImageResolve2KHR>
+ struct StructExtends<PhysicalDeviceASTCDecodeFeaturesEXT, DeviceCreateInfo>
{
- using Type = ImageResolve2KHR;
- };
-
- struct ResolveImageInfo2KHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eResolveImageInfo2KHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ResolveImageInfo2KHR(VULKAN_HPP_NAMESPACE::Image srcImage_ = {}, VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined, VULKAN_HPP_NAMESPACE::Image dstImage_ = {}, VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined, uint32_t regionCount_ = {}, const VULKAN_HPP_NAMESPACE::ImageResolve2KHR* pRegions_ = {}) VULKAN_HPP_NOEXCEPT
- : srcImage( srcImage_ ), srcImageLayout( srcImageLayout_ ), dstImage( dstImage_ ), dstImageLayout( dstImageLayout_ ), regionCount( regionCount_ ), pRegions( pRegions_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ResolveImageInfo2KHR( ResolveImageInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ResolveImageInfo2KHR( VkResolveImageInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- ResolveImageInfo2KHR( VULKAN_HPP_NAMESPACE::Image srcImage_, VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout_, VULKAN_HPP_NAMESPACE::Image dstImage_, VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ImageResolve2KHR> const & regions_ )
- : srcImage( srcImage_ ), srcImageLayout( srcImageLayout_ ), dstImage( dstImage_ ), dstImageLayout( dstImageLayout_ ), regionCount( static_cast<uint32_t>( regions_.size() ) ), pRegions( regions_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ResolveImageInfo2KHR & operator=( VkResolveImageInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ResolveImageInfo2KHR const *>( &rhs );
- return *this;
- }
-
- ResolveImageInfo2KHR & operator=( ResolveImageInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ResolveImageInfo2KHR ) );
- return *this;
- }
-
- ResolveImageInfo2KHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- ResolveImageInfo2KHR & setSrcImage( VULKAN_HPP_NAMESPACE::Image srcImage_ ) VULKAN_HPP_NOEXCEPT
- {
- srcImage = srcImage_;
- return *this;
- }
-
- ResolveImageInfo2KHR & setSrcImageLayout( VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout_ ) VULKAN_HPP_NOEXCEPT
- {
- srcImageLayout = srcImageLayout_;
- return *this;
- }
-
- ResolveImageInfo2KHR & setDstImage( VULKAN_HPP_NAMESPACE::Image dstImage_ ) VULKAN_HPP_NOEXCEPT
- {
- dstImage = dstImage_;
- return *this;
- }
-
- ResolveImageInfo2KHR & setDstImageLayout( VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout_ ) VULKAN_HPP_NOEXCEPT
- {
- dstImageLayout = dstImageLayout_;
- return *this;
- }
-
- ResolveImageInfo2KHR & setRegionCount( uint32_t regionCount_ ) VULKAN_HPP_NOEXCEPT
- {
- regionCount = regionCount_;
- return *this;
- }
-
- ResolveImageInfo2KHR & setPRegions( const VULKAN_HPP_NAMESPACE::ImageResolve2KHR* pRegions_ ) VULKAN_HPP_NOEXCEPT
- {
- pRegions = pRegions_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- ResolveImageInfo2KHR & setRegions( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ImageResolve2KHR> const & regions_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- regionCount = static_cast<uint32_t>( regions_.size() );
- pRegions = regions_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkResolveImageInfo2KHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkResolveImageInfo2KHR*>( this );
- }
-
- operator VkResolveImageInfo2KHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkResolveImageInfo2KHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ResolveImageInfo2KHR const& ) const = default;
-#else
- bool operator==( ResolveImageInfo2KHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( srcImage == rhs.srcImage )
- && ( srcImageLayout == rhs.srcImageLayout )
- && ( dstImage == rhs.dstImage )
- && ( dstImageLayout == rhs.dstImageLayout )
- && ( regionCount == rhs.regionCount )
- && ( pRegions == rhs.pRegions );
- }
-
- bool operator!=( ResolveImageInfo2KHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eResolveImageInfo2KHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::Image srcImage = {};
- VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
- VULKAN_HPP_NAMESPACE::Image dstImage = {};
- VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
- uint32_t regionCount = {};
- const VULKAN_HPP_NAMESPACE::ImageResolve2KHR* pRegions = {};
-
+ value = true
+ };
};
- static_assert( sizeof( ResolveImageInfo2KHR ) == sizeof( VkResolveImageInfo2KHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ResolveImageInfo2KHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eResolveImageInfo2KHR>
- {
- using Type = ResolveImageInfo2KHR;
- };
-
- struct PerformanceMarkerInfoINTEL
+ struct StructExtends<PhysicalDeviceAccelerationStructureFeaturesKHR, PhysicalDeviceFeatures2>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePerformanceMarkerInfoINTEL;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PerformanceMarkerInfoINTEL(uint64_t marker_ = {}) VULKAN_HPP_NOEXCEPT
- : marker( marker_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PerformanceMarkerInfoINTEL( PerformanceMarkerInfoINTEL const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PerformanceMarkerInfoINTEL( VkPerformanceMarkerInfoINTEL const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PerformanceMarkerInfoINTEL & operator=( VkPerformanceMarkerInfoINTEL const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PerformanceMarkerInfoINTEL const *>( &rhs );
- return *this;
- }
-
- PerformanceMarkerInfoINTEL & operator=( PerformanceMarkerInfoINTEL const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PerformanceMarkerInfoINTEL ) );
- return *this;
- }
-
- PerformanceMarkerInfoINTEL & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PerformanceMarkerInfoINTEL & setMarker( uint64_t marker_ ) VULKAN_HPP_NOEXCEPT
- {
- marker = marker_;
- return *this;
- }
-
-
- operator VkPerformanceMarkerInfoINTEL const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPerformanceMarkerInfoINTEL*>( this );
- }
-
- operator VkPerformanceMarkerInfoINTEL &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPerformanceMarkerInfoINTEL*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PerformanceMarkerInfoINTEL const& ) const = default;
-#else
- bool operator==( PerformanceMarkerInfoINTEL const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( marker == rhs.marker );
- }
-
- bool operator!=( PerformanceMarkerInfoINTEL const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePerformanceMarkerInfoINTEL;
- const void* pNext = {};
- uint64_t marker = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PerformanceMarkerInfoINTEL ) == sizeof( VkPerformanceMarkerInfoINTEL ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PerformanceMarkerInfoINTEL>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePerformanceMarkerInfoINTEL>
+ struct StructExtends<PhysicalDeviceAccelerationStructureFeaturesKHR, DeviceCreateInfo>
{
- using Type = PerformanceMarkerInfoINTEL;
- };
-
- struct PerformanceOverrideInfoINTEL
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePerformanceOverrideInfoINTEL;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PerformanceOverrideInfoINTEL(VULKAN_HPP_NAMESPACE::PerformanceOverrideTypeINTEL type_ = VULKAN_HPP_NAMESPACE::PerformanceOverrideTypeINTEL::eNullHardware, VULKAN_HPP_NAMESPACE::Bool32 enable_ = {}, uint64_t parameter_ = {}) VULKAN_HPP_NOEXCEPT
- : type( type_ ), enable( enable_ ), parameter( parameter_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PerformanceOverrideInfoINTEL( PerformanceOverrideInfoINTEL const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PerformanceOverrideInfoINTEL( VkPerformanceOverrideInfoINTEL const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PerformanceOverrideInfoINTEL & operator=( VkPerformanceOverrideInfoINTEL const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PerformanceOverrideInfoINTEL const *>( &rhs );
- return *this;
- }
-
- PerformanceOverrideInfoINTEL & operator=( PerformanceOverrideInfoINTEL const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PerformanceOverrideInfoINTEL ) );
- return *this;
- }
-
- PerformanceOverrideInfoINTEL & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PerformanceOverrideInfoINTEL & setType( VULKAN_HPP_NAMESPACE::PerformanceOverrideTypeINTEL type_ ) VULKAN_HPP_NOEXCEPT
- {
- type = type_;
- return *this;
- }
-
- PerformanceOverrideInfoINTEL & setEnable( VULKAN_HPP_NAMESPACE::Bool32 enable_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- enable = enable_;
- return *this;
- }
-
- PerformanceOverrideInfoINTEL & setParameter( uint64_t parameter_ ) VULKAN_HPP_NOEXCEPT
- {
- parameter = parameter_;
- return *this;
- }
-
-
- operator VkPerformanceOverrideInfoINTEL const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPerformanceOverrideInfoINTEL*>( this );
- }
-
- operator VkPerformanceOverrideInfoINTEL &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPerformanceOverrideInfoINTEL*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PerformanceOverrideInfoINTEL const& ) const = default;
-#else
- bool operator==( PerformanceOverrideInfoINTEL const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( type == rhs.type )
- && ( enable == rhs.enable )
- && ( parameter == rhs.parameter );
- }
-
- bool operator!=( PerformanceOverrideInfoINTEL const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePerformanceOverrideInfoINTEL;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::PerformanceOverrideTypeINTEL type = VULKAN_HPP_NAMESPACE::PerformanceOverrideTypeINTEL::eNullHardware;
- VULKAN_HPP_NAMESPACE::Bool32 enable = {};
- uint64_t parameter = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PerformanceOverrideInfoINTEL ) == sizeof( VkPerformanceOverrideInfoINTEL ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PerformanceOverrideInfoINTEL>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePerformanceOverrideInfoINTEL>
- {
- using Type = PerformanceOverrideInfoINTEL;
- };
-
- struct PerformanceStreamMarkerInfoINTEL
+ struct StructExtends<PhysicalDeviceAccelerationStructurePropertiesKHR, PhysicalDeviceProperties2>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePerformanceStreamMarkerInfoINTEL;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PerformanceStreamMarkerInfoINTEL(uint32_t marker_ = {}) VULKAN_HPP_NOEXCEPT
- : marker( marker_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PerformanceStreamMarkerInfoINTEL( PerformanceStreamMarkerInfoINTEL const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PerformanceStreamMarkerInfoINTEL( VkPerformanceStreamMarkerInfoINTEL const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PerformanceStreamMarkerInfoINTEL & operator=( VkPerformanceStreamMarkerInfoINTEL const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PerformanceStreamMarkerInfoINTEL const *>( &rhs );
- return *this;
- }
-
- PerformanceStreamMarkerInfoINTEL & operator=( PerformanceStreamMarkerInfoINTEL const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PerformanceStreamMarkerInfoINTEL ) );
- return *this;
- }
-
- PerformanceStreamMarkerInfoINTEL & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PerformanceStreamMarkerInfoINTEL & setMarker( uint32_t marker_ ) VULKAN_HPP_NOEXCEPT
- {
- marker = marker_;
- return *this;
- }
-
-
- operator VkPerformanceStreamMarkerInfoINTEL const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPerformanceStreamMarkerInfoINTEL*>( this );
- }
-
- operator VkPerformanceStreamMarkerInfoINTEL &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPerformanceStreamMarkerInfoINTEL*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PerformanceStreamMarkerInfoINTEL const& ) const = default;
-#else
- bool operator==( PerformanceStreamMarkerInfoINTEL const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( marker == rhs.marker );
- }
-
- bool operator!=( PerformanceStreamMarkerInfoINTEL const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePerformanceStreamMarkerInfoINTEL;
- const void* pNext = {};
- uint32_t marker = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PerformanceStreamMarkerInfoINTEL ) == sizeof( VkPerformanceStreamMarkerInfoINTEL ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PerformanceStreamMarkerInfoINTEL>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePerformanceStreamMarkerInfoINTEL>
- {
- using Type = PerformanceStreamMarkerInfoINTEL;
- };
-
- struct Viewport
+ struct StructExtends<PhysicalDeviceBlendOperationAdvancedFeaturesEXT, PhysicalDeviceFeatures2>
{
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR Viewport(float x_ = {}, float y_ = {}, float width_ = {}, float height_ = {}, float minDepth_ = {}, float maxDepth_ = {}) VULKAN_HPP_NOEXCEPT
- : x( x_ ), y( y_ ), width( width_ ), height( height_ ), minDepth( minDepth_ ), maxDepth( maxDepth_ )
- {}
-
- VULKAN_HPP_CONSTEXPR Viewport( Viewport const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- Viewport( VkViewport const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- Viewport & operator=( VkViewport const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::Viewport const *>( &rhs );
- return *this;
- }
-
- Viewport & operator=( Viewport const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( Viewport ) );
- return *this;
- }
-
- Viewport & setX( float x_ ) VULKAN_HPP_NOEXCEPT
- {
- x = x_;
- return *this;
- }
-
- Viewport & setY( float y_ ) VULKAN_HPP_NOEXCEPT
- {
- y = y_;
- return *this;
- }
-
- Viewport & setWidth( float width_ ) VULKAN_HPP_NOEXCEPT
- {
- width = width_;
- return *this;
- }
-
- Viewport & setHeight( float height_ ) VULKAN_HPP_NOEXCEPT
- {
- height = height_;
- return *this;
- }
-
- Viewport & setMinDepth( float minDepth_ ) VULKAN_HPP_NOEXCEPT
- {
- minDepth = minDepth_;
- return *this;
- }
-
- Viewport & setMaxDepth( float maxDepth_ ) VULKAN_HPP_NOEXCEPT
- {
- maxDepth = maxDepth_;
- return *this;
- }
-
-
- operator VkViewport const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkViewport*>( this );
- }
-
- operator VkViewport &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkViewport*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( Viewport const& ) const = default;
-#else
- bool operator==( Viewport const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( x == rhs.x )
- && ( y == rhs.y )
- && ( width == rhs.width )
- && ( height == rhs.height )
- && ( minDepth == rhs.minDepth )
- && ( maxDepth == rhs.maxDepth );
- }
-
- bool operator!=( Viewport const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- float x = {};
- float y = {};
- float width = {};
- float height = {};
- float minDepth = {};
- float maxDepth = {};
-
- };
- static_assert( sizeof( Viewport ) == sizeof( VkViewport ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<Viewport>::value, "struct wrapper is not a standard layout!" );
-
- struct ShadingRatePaletteNV
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ShadingRatePaletteNV(uint32_t shadingRatePaletteEntryCount_ = {}, const VULKAN_HPP_NAMESPACE::ShadingRatePaletteEntryNV* pShadingRatePaletteEntries_ = {}) VULKAN_HPP_NOEXCEPT
- : shadingRatePaletteEntryCount( shadingRatePaletteEntryCount_ ), pShadingRatePaletteEntries( pShadingRatePaletteEntries_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ShadingRatePaletteNV( ShadingRatePaletteNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ShadingRatePaletteNV( VkShadingRatePaletteNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- ShadingRatePaletteNV( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ShadingRatePaletteEntryNV> const & shadingRatePaletteEntries_ )
- : shadingRatePaletteEntryCount( static_cast<uint32_t>( shadingRatePaletteEntries_.size() ) ), pShadingRatePaletteEntries( shadingRatePaletteEntries_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ShadingRatePaletteNV & operator=( VkShadingRatePaletteNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ShadingRatePaletteNV const *>( &rhs );
- return *this;
- }
-
- ShadingRatePaletteNV & operator=( ShadingRatePaletteNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ShadingRatePaletteNV ) );
- return *this;
- }
-
- ShadingRatePaletteNV & setShadingRatePaletteEntryCount( uint32_t shadingRatePaletteEntryCount_ ) VULKAN_HPP_NOEXCEPT
- {
- shadingRatePaletteEntryCount = shadingRatePaletteEntryCount_;
- return *this;
- }
-
- ShadingRatePaletteNV & setPShadingRatePaletteEntries( const VULKAN_HPP_NAMESPACE::ShadingRatePaletteEntryNV* pShadingRatePaletteEntries_ ) VULKAN_HPP_NOEXCEPT
- {
- pShadingRatePaletteEntries = pShadingRatePaletteEntries_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- ShadingRatePaletteNV & setShadingRatePaletteEntries( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ShadingRatePaletteEntryNV> const & shadingRatePaletteEntries_ ) VULKAN_HPP_NOEXCEPT
- {
- shadingRatePaletteEntryCount = static_cast<uint32_t>( shadingRatePaletteEntries_.size() );
- pShadingRatePaletteEntries = shadingRatePaletteEntries_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkShadingRatePaletteNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkShadingRatePaletteNV*>( this );
- }
-
- operator VkShadingRatePaletteNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkShadingRatePaletteNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ShadingRatePaletteNV const& ) const = default;
-#else
- bool operator==( ShadingRatePaletteNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( shadingRatePaletteEntryCount == rhs.shadingRatePaletteEntryCount )
- && ( pShadingRatePaletteEntries == rhs.pShadingRatePaletteEntries );
- }
-
- bool operator!=( ShadingRatePaletteNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- uint32_t shadingRatePaletteEntryCount = {};
- const VULKAN_HPP_NAMESPACE::ShadingRatePaletteEntryNV* pShadingRatePaletteEntries = {};
-
- };
- static_assert( sizeof( ShadingRatePaletteNV ) == sizeof( VkShadingRatePaletteNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ShadingRatePaletteNV>::value, "struct wrapper is not a standard layout!" );
-
- struct ViewportWScalingNV
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ViewportWScalingNV(float xcoeff_ = {}, float ycoeff_ = {}) VULKAN_HPP_NOEXCEPT
- : xcoeff( xcoeff_ ), ycoeff( ycoeff_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ViewportWScalingNV( ViewportWScalingNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ViewportWScalingNV( VkViewportWScalingNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ViewportWScalingNV & operator=( VkViewportWScalingNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ViewportWScalingNV const *>( &rhs );
- return *this;
- }
-
- ViewportWScalingNV & operator=( ViewportWScalingNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ViewportWScalingNV ) );
- return *this;
- }
-
- ViewportWScalingNV & setXcoeff( float xcoeff_ ) VULKAN_HPP_NOEXCEPT
- {
- xcoeff = xcoeff_;
- return *this;
- }
-
- ViewportWScalingNV & setYcoeff( float ycoeff_ ) VULKAN_HPP_NOEXCEPT
- {
- ycoeff = ycoeff_;
- return *this;
- }
-
-
- operator VkViewportWScalingNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkViewportWScalingNV*>( this );
- }
-
- operator VkViewportWScalingNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkViewportWScalingNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ViewportWScalingNV const& ) const = default;
-#else
- bool operator==( ViewportWScalingNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( xcoeff == rhs.xcoeff )
- && ( ycoeff == rhs.ycoeff );
- }
-
- bool operator!=( ViewportWScalingNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- float xcoeff = {};
- float ycoeff = {};
-
- };
- static_assert( sizeof( ViewportWScalingNV ) == sizeof( VkViewportWScalingNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ViewportWScalingNV>::value, "struct wrapper is not a standard layout!" );
-
- struct StridedDeviceAddressRegionKHR
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR StridedDeviceAddressRegionKHR(VULKAN_HPP_NAMESPACE::DeviceAddress deviceAddress_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize stride_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize size_ = {}) VULKAN_HPP_NOEXCEPT
- : deviceAddress( deviceAddress_ ), stride( stride_ ), size( size_ )
- {}
-
- VULKAN_HPP_CONSTEXPR StridedDeviceAddressRegionKHR( StridedDeviceAddressRegionKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- StridedDeviceAddressRegionKHR( VkStridedDeviceAddressRegionKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- StridedDeviceAddressRegionKHR & operator=( VkStridedDeviceAddressRegionKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::StridedDeviceAddressRegionKHR const *>( &rhs );
- return *this;
- }
-
- StridedDeviceAddressRegionKHR & operator=( StridedDeviceAddressRegionKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( StridedDeviceAddressRegionKHR ) );
- return *this;
- }
-
- StridedDeviceAddressRegionKHR & setDeviceAddress( VULKAN_HPP_NAMESPACE::DeviceAddress deviceAddress_ ) VULKAN_HPP_NOEXCEPT
- {
- deviceAddress = deviceAddress_;
- return *this;
- }
-
- StridedDeviceAddressRegionKHR & setStride( VULKAN_HPP_NAMESPACE::DeviceSize stride_ ) VULKAN_HPP_NOEXCEPT
- {
- stride = stride_;
- return *this;
- }
-
- StridedDeviceAddressRegionKHR & setSize( VULKAN_HPP_NAMESPACE::DeviceSize size_ ) VULKAN_HPP_NOEXCEPT
- {
- size = size_;
- return *this;
- }
-
-
- operator VkStridedDeviceAddressRegionKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkStridedDeviceAddressRegionKHR*>( this );
- }
-
- operator VkStridedDeviceAddressRegionKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkStridedDeviceAddressRegionKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( StridedDeviceAddressRegionKHR const& ) const = default;
-#else
- bool operator==( StridedDeviceAddressRegionKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return ( deviceAddress == rhs.deviceAddress )
- && ( stride == rhs.stride )
- && ( size == rhs.size );
- }
-
- bool operator!=( StridedDeviceAddressRegionKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::DeviceAddress deviceAddress = {};
- VULKAN_HPP_NAMESPACE::DeviceSize stride = {};
- VULKAN_HPP_NAMESPACE::DeviceSize size = {};
-
- };
- static_assert( sizeof( StridedDeviceAddressRegionKHR ) == sizeof( VkStridedDeviceAddressRegionKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<StridedDeviceAddressRegionKHR>::value, "struct wrapper is not a standard layout!" );
-
- class CommandBuffer
- {
- public:
- using CType = VkCommandBuffer;
-
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::eCommandBuffer;
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType = VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eCommandBuffer;
-
- public:
- VULKAN_HPP_CONSTEXPR CommandBuffer() VULKAN_HPP_NOEXCEPT
- : m_commandBuffer(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_CONSTEXPR CommandBuffer( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- : m_commandBuffer(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_TYPESAFE_EXPLICIT CommandBuffer( VkCommandBuffer commandBuffer ) VULKAN_HPP_NOEXCEPT
- : m_commandBuffer( commandBuffer )
- {}
-
-#if defined(VULKAN_HPP_TYPESAFE_CONVERSION)
- CommandBuffer & operator=(VkCommandBuffer commandBuffer) VULKAN_HPP_NOEXCEPT
- {
- m_commandBuffer = commandBuffer;
- return *this;
- }
-#endif
-
- CommandBuffer & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- {
- m_commandBuffer = VK_NULL_HANDLE;
- return *this;
- }
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( CommandBuffer const& ) const = default;
-#else
- bool operator==( CommandBuffer const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_commandBuffer == rhs.m_commandBuffer;
- }
-
- bool operator!=(CommandBuffer const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_commandBuffer != rhs.m_commandBuffer;
- }
-
- bool operator<(CommandBuffer const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_commandBuffer < rhs.m_commandBuffer;
- }
-#endif
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result begin( const VULKAN_HPP_NAMESPACE::CommandBufferBeginInfo* pBeginInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type begin( const CommandBufferBeginInfo & beginInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void beginConditionalRenderingEXT( const VULKAN_HPP_NAMESPACE::ConditionalRenderingBeginInfoEXT* pConditionalRenderingBegin, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void beginConditionalRenderingEXT( const ConditionalRenderingBeginInfoEXT & conditionalRenderingBegin, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void beginDebugUtilsLabelEXT( const VULKAN_HPP_NAMESPACE::DebugUtilsLabelEXT* pLabelInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void beginDebugUtilsLabelEXT( const DebugUtilsLabelEXT & labelInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void beginQuery( VULKAN_HPP_NAMESPACE::QueryPool queryPool, uint32_t query, VULKAN_HPP_NAMESPACE::QueryControlFlags flags, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void beginQueryIndexedEXT( VULKAN_HPP_NAMESPACE::QueryPool queryPool, uint32_t query, VULKAN_HPP_NAMESPACE::QueryControlFlags flags, uint32_t index, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void beginRenderPass( const VULKAN_HPP_NAMESPACE::RenderPassBeginInfo* pRenderPassBegin, VULKAN_HPP_NAMESPACE::SubpassContents contents, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void beginRenderPass( const RenderPassBeginInfo & renderPassBegin, VULKAN_HPP_NAMESPACE::SubpassContents contents, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void beginRenderPass2( const VULKAN_HPP_NAMESPACE::RenderPassBeginInfo* pRenderPassBegin, const VULKAN_HPP_NAMESPACE::SubpassBeginInfo* pSubpassBeginInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void beginRenderPass2( const RenderPassBeginInfo & renderPassBegin, const SubpassBeginInfo & subpassBeginInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void beginRenderPass2KHR( const VULKAN_HPP_NAMESPACE::RenderPassBeginInfo* pRenderPassBegin, const VULKAN_HPP_NAMESPACE::SubpassBeginInfo* pSubpassBeginInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void beginRenderPass2KHR( const RenderPassBeginInfo & renderPassBegin, const SubpassBeginInfo & subpassBeginInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void beginTransformFeedbackEXT( uint32_t firstCounterBuffer, uint32_t counterBufferCount, const VULKAN_HPP_NAMESPACE::Buffer* pCounterBuffers, const VULKAN_HPP_NAMESPACE::DeviceSize* pCounterBufferOffsets, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void beginTransformFeedbackEXT( uint32_t firstCounterBuffer, ArrayProxy<const VULKAN_HPP_NAMESPACE::Buffer> const & counterBuffers, ArrayProxy<const VULKAN_HPP_NAMESPACE::DeviceSize> const & counterBufferOffsets VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void bindDescriptorSets( VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint, VULKAN_HPP_NAMESPACE::PipelineLayout layout, uint32_t firstSet, uint32_t descriptorSetCount, const VULKAN_HPP_NAMESPACE::DescriptorSet* pDescriptorSets, uint32_t dynamicOffsetCount, const uint32_t* pDynamicOffsets, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void bindDescriptorSets( VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint, VULKAN_HPP_NAMESPACE::PipelineLayout layout, uint32_t firstSet, ArrayProxy<const VULKAN_HPP_NAMESPACE::DescriptorSet> const & descriptorSets, ArrayProxy<const uint32_t> const & dynamicOffsets, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void bindIndexBuffer( VULKAN_HPP_NAMESPACE::Buffer buffer, VULKAN_HPP_NAMESPACE::DeviceSize offset, VULKAN_HPP_NAMESPACE::IndexType indexType, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void bindPipeline( VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint, VULKAN_HPP_NAMESPACE::Pipeline pipeline, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void bindPipelineShaderGroupNV( VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint, VULKAN_HPP_NAMESPACE::Pipeline pipeline, uint32_t groupIndex, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void bindShadingRateImageNV( VULKAN_HPP_NAMESPACE::ImageView imageView, VULKAN_HPP_NAMESPACE::ImageLayout imageLayout, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void bindTransformFeedbackBuffersEXT( uint32_t firstBinding, uint32_t bindingCount, const VULKAN_HPP_NAMESPACE::Buffer* pBuffers, const VULKAN_HPP_NAMESPACE::DeviceSize* pOffsets, const VULKAN_HPP_NAMESPACE::DeviceSize* pSizes, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void bindTransformFeedbackBuffersEXT( uint32_t firstBinding, ArrayProxy<const VULKAN_HPP_NAMESPACE::Buffer> const & buffers, ArrayProxy<const VULKAN_HPP_NAMESPACE::DeviceSize> const & offsets, ArrayProxy<const VULKAN_HPP_NAMESPACE::DeviceSize> const & sizes VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void bindVertexBuffers( uint32_t firstBinding, uint32_t bindingCount, const VULKAN_HPP_NAMESPACE::Buffer* pBuffers, const VULKAN_HPP_NAMESPACE::DeviceSize* pOffsets, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void bindVertexBuffers( uint32_t firstBinding, ArrayProxy<const VULKAN_HPP_NAMESPACE::Buffer> const & buffers, ArrayProxy<const VULKAN_HPP_NAMESPACE::DeviceSize> const & offsets, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void bindVertexBuffers2EXT( uint32_t firstBinding, uint32_t bindingCount, const VULKAN_HPP_NAMESPACE::Buffer* pBuffers, const VULKAN_HPP_NAMESPACE::DeviceSize* pOffsets, const VULKAN_HPP_NAMESPACE::DeviceSize* pSizes, const VULKAN_HPP_NAMESPACE::DeviceSize* pStrides, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void bindVertexBuffers2EXT( uint32_t firstBinding, ArrayProxy<const VULKAN_HPP_NAMESPACE::Buffer> const & buffers, ArrayProxy<const VULKAN_HPP_NAMESPACE::DeviceSize> const & offsets, ArrayProxy<const VULKAN_HPP_NAMESPACE::DeviceSize> const & sizes VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT, ArrayProxy<const VULKAN_HPP_NAMESPACE::DeviceSize> const & strides VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void blitImage( VULKAN_HPP_NAMESPACE::Image srcImage, VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout, VULKAN_HPP_NAMESPACE::Image dstImage, VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout, uint32_t regionCount, const VULKAN_HPP_NAMESPACE::ImageBlit* pRegions, VULKAN_HPP_NAMESPACE::Filter filter, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void blitImage( VULKAN_HPP_NAMESPACE::Image srcImage, VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout, VULKAN_HPP_NAMESPACE::Image dstImage, VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout, ArrayProxy<const VULKAN_HPP_NAMESPACE::ImageBlit> const & regions, VULKAN_HPP_NAMESPACE::Filter filter, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void blitImage2KHR( const VULKAN_HPP_NAMESPACE::BlitImageInfo2KHR* pBlitImageInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void blitImage2KHR( const BlitImageInfo2KHR & blitImageInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void buildAccelerationStructureNV( const VULKAN_HPP_NAMESPACE::AccelerationStructureInfoNV* pInfo, VULKAN_HPP_NAMESPACE::Buffer instanceData, VULKAN_HPP_NAMESPACE::DeviceSize instanceOffset, VULKAN_HPP_NAMESPACE::Bool32 update, VULKAN_HPP_NAMESPACE::AccelerationStructureNV dst, VULKAN_HPP_NAMESPACE::AccelerationStructureNV src, VULKAN_HPP_NAMESPACE::Buffer scratch, VULKAN_HPP_NAMESPACE::DeviceSize scratchOffset, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void buildAccelerationStructureNV( const AccelerationStructureInfoNV & info, VULKAN_HPP_NAMESPACE::Buffer instanceData, VULKAN_HPP_NAMESPACE::DeviceSize instanceOffset, VULKAN_HPP_NAMESPACE::Bool32 update, VULKAN_HPP_NAMESPACE::AccelerationStructureNV dst, VULKAN_HPP_NAMESPACE::AccelerationStructureNV src, VULKAN_HPP_NAMESPACE::Buffer scratch, VULKAN_HPP_NAMESPACE::DeviceSize scratchOffset, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void buildAccelerationStructuresIndirectKHR( uint32_t infoCount, const VULKAN_HPP_NAMESPACE::AccelerationStructureBuildGeometryInfoKHR* pInfos, const VULKAN_HPP_NAMESPACE::DeviceAddress* pIndirectDeviceAddresses, const uint32_t* pIndirectStrides, const uint32_t* const * ppMaxPrimitiveCounts, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void buildAccelerationStructuresIndirectKHR( ArrayProxy<const VULKAN_HPP_NAMESPACE::AccelerationStructureBuildGeometryInfoKHR> const & infos, ArrayProxy<const VULKAN_HPP_NAMESPACE::DeviceAddress> const & indirectDeviceAddresses, ArrayProxy<const uint32_t> const & indirectStrides, ArrayProxy<const uint32_t* const > const & pMaxPrimitiveCounts, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void buildAccelerationStructuresKHR( uint32_t infoCount, const VULKAN_HPP_NAMESPACE::AccelerationStructureBuildGeometryInfoKHR* pInfos, const VULKAN_HPP_NAMESPACE::AccelerationStructureBuildRangeInfoKHR* const * ppBuildRangeInfos, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void buildAccelerationStructuresKHR( ArrayProxy<const VULKAN_HPP_NAMESPACE::AccelerationStructureBuildGeometryInfoKHR> const & infos, ArrayProxy<const VULKAN_HPP_NAMESPACE::AccelerationStructureBuildRangeInfoKHR* const > const & pBuildRangeInfos, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void clearAttachments( uint32_t attachmentCount, const VULKAN_HPP_NAMESPACE::ClearAttachment* pAttachments, uint32_t rectCount, const VULKAN_HPP_NAMESPACE::ClearRect* pRects, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void clearAttachments( ArrayProxy<const VULKAN_HPP_NAMESPACE::ClearAttachment> const & attachments, ArrayProxy<const VULKAN_HPP_NAMESPACE::ClearRect> const & rects, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void clearColorImage( VULKAN_HPP_NAMESPACE::Image image, VULKAN_HPP_NAMESPACE::ImageLayout imageLayout, const VULKAN_HPP_NAMESPACE::ClearColorValue* pColor, uint32_t rangeCount, const VULKAN_HPP_NAMESPACE::ImageSubresourceRange* pRanges, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void clearColorImage( VULKAN_HPP_NAMESPACE::Image image, VULKAN_HPP_NAMESPACE::ImageLayout imageLayout, const ClearColorValue & color, ArrayProxy<const VULKAN_HPP_NAMESPACE::ImageSubresourceRange> const & ranges, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void clearDepthStencilImage( VULKAN_HPP_NAMESPACE::Image image, VULKAN_HPP_NAMESPACE::ImageLayout imageLayout, const VULKAN_HPP_NAMESPACE::ClearDepthStencilValue* pDepthStencil, uint32_t rangeCount, const VULKAN_HPP_NAMESPACE::ImageSubresourceRange* pRanges, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void clearDepthStencilImage( VULKAN_HPP_NAMESPACE::Image image, VULKAN_HPP_NAMESPACE::ImageLayout imageLayout, const ClearDepthStencilValue & depthStencil, ArrayProxy<const VULKAN_HPP_NAMESPACE::ImageSubresourceRange> const & ranges, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void copyAccelerationStructureKHR( const VULKAN_HPP_NAMESPACE::CopyAccelerationStructureInfoKHR* pInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void copyAccelerationStructureKHR( const CopyAccelerationStructureInfoKHR & info, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void copyAccelerationStructureNV( VULKAN_HPP_NAMESPACE::AccelerationStructureNV dst, VULKAN_HPP_NAMESPACE::AccelerationStructureNV src, VULKAN_HPP_NAMESPACE::CopyAccelerationStructureModeKHR mode, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void copyAccelerationStructureToMemoryKHR( const VULKAN_HPP_NAMESPACE::CopyAccelerationStructureToMemoryInfoKHR* pInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void copyAccelerationStructureToMemoryKHR( const CopyAccelerationStructureToMemoryInfoKHR & info, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void copyBuffer( VULKAN_HPP_NAMESPACE::Buffer srcBuffer, VULKAN_HPP_NAMESPACE::Buffer dstBuffer, uint32_t regionCount, const VULKAN_HPP_NAMESPACE::BufferCopy* pRegions, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void copyBuffer( VULKAN_HPP_NAMESPACE::Buffer srcBuffer, VULKAN_HPP_NAMESPACE::Buffer dstBuffer, ArrayProxy<const VULKAN_HPP_NAMESPACE::BufferCopy> const & regions, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void copyBuffer2KHR( const VULKAN_HPP_NAMESPACE::CopyBufferInfo2KHR* pCopyBufferInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void copyBuffer2KHR( const CopyBufferInfo2KHR & copyBufferInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void copyBufferToImage( VULKAN_HPP_NAMESPACE::Buffer srcBuffer, VULKAN_HPP_NAMESPACE::Image dstImage, VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout, uint32_t regionCount, const VULKAN_HPP_NAMESPACE::BufferImageCopy* pRegions, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void copyBufferToImage( VULKAN_HPP_NAMESPACE::Buffer srcBuffer, VULKAN_HPP_NAMESPACE::Image dstImage, VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout, ArrayProxy<const VULKAN_HPP_NAMESPACE::BufferImageCopy> const & regions, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void copyBufferToImage2KHR( const VULKAN_HPP_NAMESPACE::CopyBufferToImageInfo2KHR* pCopyBufferToImageInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void copyBufferToImage2KHR( const CopyBufferToImageInfo2KHR & copyBufferToImageInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void copyImage( VULKAN_HPP_NAMESPACE::Image srcImage, VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout, VULKAN_HPP_NAMESPACE::Image dstImage, VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout, uint32_t regionCount, const VULKAN_HPP_NAMESPACE::ImageCopy* pRegions, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void copyImage( VULKAN_HPP_NAMESPACE::Image srcImage, VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout, VULKAN_HPP_NAMESPACE::Image dstImage, VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout, ArrayProxy<const VULKAN_HPP_NAMESPACE::ImageCopy> const & regions, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void copyImage2KHR( const VULKAN_HPP_NAMESPACE::CopyImageInfo2KHR* pCopyImageInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void copyImage2KHR( const CopyImageInfo2KHR & copyImageInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void copyImageToBuffer( VULKAN_HPP_NAMESPACE::Image srcImage, VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout, VULKAN_HPP_NAMESPACE::Buffer dstBuffer, uint32_t regionCount, const VULKAN_HPP_NAMESPACE::BufferImageCopy* pRegions, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void copyImageToBuffer( VULKAN_HPP_NAMESPACE::Image srcImage, VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout, VULKAN_HPP_NAMESPACE::Buffer dstBuffer, ArrayProxy<const VULKAN_HPP_NAMESPACE::BufferImageCopy> const & regions, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void copyImageToBuffer2KHR( const VULKAN_HPP_NAMESPACE::CopyImageToBufferInfo2KHR* pCopyImageToBufferInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void copyImageToBuffer2KHR( const CopyImageToBufferInfo2KHR & copyImageToBufferInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void copyMemoryToAccelerationStructureKHR( const VULKAN_HPP_NAMESPACE::CopyMemoryToAccelerationStructureInfoKHR* pInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void copyMemoryToAccelerationStructureKHR( const CopyMemoryToAccelerationStructureInfoKHR & info, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void copyQueryPoolResults( VULKAN_HPP_NAMESPACE::QueryPool queryPool, uint32_t firstQuery, uint32_t queryCount, VULKAN_HPP_NAMESPACE::Buffer dstBuffer, VULKAN_HPP_NAMESPACE::DeviceSize dstOffset, VULKAN_HPP_NAMESPACE::DeviceSize stride, VULKAN_HPP_NAMESPACE::QueryResultFlags flags, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void debugMarkerBeginEXT( const VULKAN_HPP_NAMESPACE::DebugMarkerMarkerInfoEXT* pMarkerInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void debugMarkerBeginEXT( const DebugMarkerMarkerInfoEXT & markerInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void debugMarkerEndEXT( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void debugMarkerInsertEXT( const VULKAN_HPP_NAMESPACE::DebugMarkerMarkerInfoEXT* pMarkerInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void debugMarkerInsertEXT( const DebugMarkerMarkerInfoEXT & markerInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void dispatch( uint32_t groupCountX, uint32_t groupCountY, uint32_t groupCountZ, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void dispatchBase( uint32_t baseGroupX, uint32_t baseGroupY, uint32_t baseGroupZ, uint32_t groupCountX, uint32_t groupCountY, uint32_t groupCountZ, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void dispatchBaseKHR( uint32_t baseGroupX, uint32_t baseGroupY, uint32_t baseGroupZ, uint32_t groupCountX, uint32_t groupCountY, uint32_t groupCountZ, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void dispatchIndirect( VULKAN_HPP_NAMESPACE::Buffer buffer, VULKAN_HPP_NAMESPACE::DeviceSize offset, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void draw( uint32_t vertexCount, uint32_t instanceCount, uint32_t firstVertex, uint32_t firstInstance, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void drawIndexed( uint32_t indexCount, uint32_t instanceCount, uint32_t firstIndex, int32_t vertexOffset, uint32_t firstInstance, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void drawIndexedIndirect( VULKAN_HPP_NAMESPACE::Buffer buffer, VULKAN_HPP_NAMESPACE::DeviceSize offset, uint32_t drawCount, uint32_t stride, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void drawIndexedIndirectCount( VULKAN_HPP_NAMESPACE::Buffer buffer, VULKAN_HPP_NAMESPACE::DeviceSize offset, VULKAN_HPP_NAMESPACE::Buffer countBuffer, VULKAN_HPP_NAMESPACE::DeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void drawIndexedIndirectCountAMD( VULKAN_HPP_NAMESPACE::Buffer buffer, VULKAN_HPP_NAMESPACE::DeviceSize offset, VULKAN_HPP_NAMESPACE::Buffer countBuffer, VULKAN_HPP_NAMESPACE::DeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void drawIndexedIndirectCountKHR( VULKAN_HPP_NAMESPACE::Buffer buffer, VULKAN_HPP_NAMESPACE::DeviceSize offset, VULKAN_HPP_NAMESPACE::Buffer countBuffer, VULKAN_HPP_NAMESPACE::DeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void drawIndirect( VULKAN_HPP_NAMESPACE::Buffer buffer, VULKAN_HPP_NAMESPACE::DeviceSize offset, uint32_t drawCount, uint32_t stride, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void drawIndirectByteCountEXT( uint32_t instanceCount, uint32_t firstInstance, VULKAN_HPP_NAMESPACE::Buffer counterBuffer, VULKAN_HPP_NAMESPACE::DeviceSize counterBufferOffset, uint32_t counterOffset, uint32_t vertexStride, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void drawIndirectCount( VULKAN_HPP_NAMESPACE::Buffer buffer, VULKAN_HPP_NAMESPACE::DeviceSize offset, VULKAN_HPP_NAMESPACE::Buffer countBuffer, VULKAN_HPP_NAMESPACE::DeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void drawIndirectCountAMD( VULKAN_HPP_NAMESPACE::Buffer buffer, VULKAN_HPP_NAMESPACE::DeviceSize offset, VULKAN_HPP_NAMESPACE::Buffer countBuffer, VULKAN_HPP_NAMESPACE::DeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void drawIndirectCountKHR( VULKAN_HPP_NAMESPACE::Buffer buffer, VULKAN_HPP_NAMESPACE::DeviceSize offset, VULKAN_HPP_NAMESPACE::Buffer countBuffer, VULKAN_HPP_NAMESPACE::DeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void drawMeshTasksIndirectCountNV( VULKAN_HPP_NAMESPACE::Buffer buffer, VULKAN_HPP_NAMESPACE::DeviceSize offset, VULKAN_HPP_NAMESPACE::Buffer countBuffer, VULKAN_HPP_NAMESPACE::DeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void drawMeshTasksIndirectNV( VULKAN_HPP_NAMESPACE::Buffer buffer, VULKAN_HPP_NAMESPACE::DeviceSize offset, uint32_t drawCount, uint32_t stride, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void drawMeshTasksNV( uint32_t taskCount, uint32_t firstTask, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void endConditionalRenderingEXT( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void endDebugUtilsLabelEXT( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void endQuery( VULKAN_HPP_NAMESPACE::QueryPool queryPool, uint32_t query, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void endQueryIndexedEXT( VULKAN_HPP_NAMESPACE::QueryPool queryPool, uint32_t query, uint32_t index, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void endRenderPass( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void endRenderPass2( const VULKAN_HPP_NAMESPACE::SubpassEndInfo* pSubpassEndInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void endRenderPass2( const SubpassEndInfo & subpassEndInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void endRenderPass2KHR( const VULKAN_HPP_NAMESPACE::SubpassEndInfo* pSubpassEndInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void endRenderPass2KHR( const SubpassEndInfo & subpassEndInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void endTransformFeedbackEXT( uint32_t firstCounterBuffer, uint32_t counterBufferCount, const VULKAN_HPP_NAMESPACE::Buffer* pCounterBuffers, const VULKAN_HPP_NAMESPACE::DeviceSize* pCounterBufferOffsets, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void endTransformFeedbackEXT( uint32_t firstCounterBuffer, ArrayProxy<const VULKAN_HPP_NAMESPACE::Buffer> const & counterBuffers, ArrayProxy<const VULKAN_HPP_NAMESPACE::DeviceSize> const & counterBufferOffsets VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void executeCommands( uint32_t commandBufferCount, const VULKAN_HPP_NAMESPACE::CommandBuffer* pCommandBuffers, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void executeCommands( ArrayProxy<const VULKAN_HPP_NAMESPACE::CommandBuffer> const & commandBuffers, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void executeGeneratedCommandsNV( VULKAN_HPP_NAMESPACE::Bool32 isPreprocessed, const VULKAN_HPP_NAMESPACE::GeneratedCommandsInfoNV* pGeneratedCommandsInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void executeGeneratedCommandsNV( VULKAN_HPP_NAMESPACE::Bool32 isPreprocessed, const GeneratedCommandsInfoNV & generatedCommandsInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void fillBuffer( VULKAN_HPP_NAMESPACE::Buffer dstBuffer, VULKAN_HPP_NAMESPACE::DeviceSize dstOffset, VULKAN_HPP_NAMESPACE::DeviceSize size, uint32_t data, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void insertDebugUtilsLabelEXT( const VULKAN_HPP_NAMESPACE::DebugUtilsLabelEXT* pLabelInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void insertDebugUtilsLabelEXT( const DebugUtilsLabelEXT & labelInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void nextSubpass( VULKAN_HPP_NAMESPACE::SubpassContents contents, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void nextSubpass2( const VULKAN_HPP_NAMESPACE::SubpassBeginInfo* pSubpassBeginInfo, const VULKAN_HPP_NAMESPACE::SubpassEndInfo* pSubpassEndInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void nextSubpass2( const SubpassBeginInfo & subpassBeginInfo, const SubpassEndInfo & subpassEndInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void nextSubpass2KHR( const VULKAN_HPP_NAMESPACE::SubpassBeginInfo* pSubpassBeginInfo, const VULKAN_HPP_NAMESPACE::SubpassEndInfo* pSubpassEndInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void nextSubpass2KHR( const SubpassBeginInfo & subpassBeginInfo, const SubpassEndInfo & subpassEndInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void pipelineBarrier( VULKAN_HPP_NAMESPACE::PipelineStageFlags srcStageMask, VULKAN_HPP_NAMESPACE::PipelineStageFlags dstStageMask, VULKAN_HPP_NAMESPACE::DependencyFlags dependencyFlags, uint32_t memoryBarrierCount, const VULKAN_HPP_NAMESPACE::MemoryBarrier* pMemoryBarriers, uint32_t bufferMemoryBarrierCount, const VULKAN_HPP_NAMESPACE::BufferMemoryBarrier* pBufferMemoryBarriers, uint32_t imageMemoryBarrierCount, const VULKAN_HPP_NAMESPACE::ImageMemoryBarrier* pImageMemoryBarriers, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void pipelineBarrier( VULKAN_HPP_NAMESPACE::PipelineStageFlags srcStageMask, VULKAN_HPP_NAMESPACE::PipelineStageFlags dstStageMask, VULKAN_HPP_NAMESPACE::DependencyFlags dependencyFlags, ArrayProxy<const VULKAN_HPP_NAMESPACE::MemoryBarrier> const & memoryBarriers, ArrayProxy<const VULKAN_HPP_NAMESPACE::BufferMemoryBarrier> const & bufferMemoryBarriers, ArrayProxy<const VULKAN_HPP_NAMESPACE::ImageMemoryBarrier> const & imageMemoryBarriers, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void preprocessGeneratedCommandsNV( const VULKAN_HPP_NAMESPACE::GeneratedCommandsInfoNV* pGeneratedCommandsInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void preprocessGeneratedCommandsNV( const GeneratedCommandsInfoNV & generatedCommandsInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void pushConstants( VULKAN_HPP_NAMESPACE::PipelineLayout layout, VULKAN_HPP_NAMESPACE::ShaderStageFlags stageFlags, uint32_t offset, uint32_t size, const void* pValues, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename T, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void pushConstants( VULKAN_HPP_NAMESPACE::PipelineLayout layout, VULKAN_HPP_NAMESPACE::ShaderStageFlags stageFlags, uint32_t offset, ArrayProxy<const T> const & values, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void pushDescriptorSetKHR( VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint, VULKAN_HPP_NAMESPACE::PipelineLayout layout, uint32_t set, uint32_t descriptorWriteCount, const VULKAN_HPP_NAMESPACE::WriteDescriptorSet* pDescriptorWrites, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void pushDescriptorSetKHR( VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint, VULKAN_HPP_NAMESPACE::PipelineLayout layout, uint32_t set, ArrayProxy<const VULKAN_HPP_NAMESPACE::WriteDescriptorSet> const & descriptorWrites, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void pushDescriptorSetWithTemplateKHR( VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate descriptorUpdateTemplate, VULKAN_HPP_NAMESPACE::PipelineLayout layout, uint32_t set, const void* pData, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void resetEvent( VULKAN_HPP_NAMESPACE::Event event, VULKAN_HPP_NAMESPACE::PipelineStageFlags stageMask, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void resetQueryPool( VULKAN_HPP_NAMESPACE::QueryPool queryPool, uint32_t firstQuery, uint32_t queryCount, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void resolveImage( VULKAN_HPP_NAMESPACE::Image srcImage, VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout, VULKAN_HPP_NAMESPACE::Image dstImage, VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout, uint32_t regionCount, const VULKAN_HPP_NAMESPACE::ImageResolve* pRegions, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void resolveImage( VULKAN_HPP_NAMESPACE::Image srcImage, VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout, VULKAN_HPP_NAMESPACE::Image dstImage, VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout, ArrayProxy<const VULKAN_HPP_NAMESPACE::ImageResolve> const & regions, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void resolveImage2KHR( const VULKAN_HPP_NAMESPACE::ResolveImageInfo2KHR* pResolveImageInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void resolveImage2KHR( const ResolveImageInfo2KHR & resolveImageInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void setBlendConstants( const float blendConstants[4], Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void setCheckpointNV( const void* pCheckpointMarker, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void setCoarseSampleOrderNV( VULKAN_HPP_NAMESPACE::CoarseSampleOrderTypeNV sampleOrderType, uint32_t customSampleOrderCount, const VULKAN_HPP_NAMESPACE::CoarseSampleOrderCustomNV* pCustomSampleOrders, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void setCoarseSampleOrderNV( VULKAN_HPP_NAMESPACE::CoarseSampleOrderTypeNV sampleOrderType, ArrayProxy<const VULKAN_HPP_NAMESPACE::CoarseSampleOrderCustomNV> const & customSampleOrders, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void setCullModeEXT( VULKAN_HPP_NAMESPACE::CullModeFlags cullMode, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void setDepthBias( float depthBiasConstantFactor, float depthBiasClamp, float depthBiasSlopeFactor, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void setDepthBounds( float minDepthBounds, float maxDepthBounds, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void setDepthBoundsTestEnableEXT( VULKAN_HPP_NAMESPACE::Bool32 depthBoundsTestEnable, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void setDepthCompareOpEXT( VULKAN_HPP_NAMESPACE::CompareOp depthCompareOp, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void setDepthTestEnableEXT( VULKAN_HPP_NAMESPACE::Bool32 depthTestEnable, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void setDepthWriteEnableEXT( VULKAN_HPP_NAMESPACE::Bool32 depthWriteEnable, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void setDeviceMask( uint32_t deviceMask, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void setDeviceMaskKHR( uint32_t deviceMask, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void setDiscardRectangleEXT( uint32_t firstDiscardRectangle, uint32_t discardRectangleCount, const VULKAN_HPP_NAMESPACE::Rect2D* pDiscardRectangles, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void setDiscardRectangleEXT( uint32_t firstDiscardRectangle, ArrayProxy<const VULKAN_HPP_NAMESPACE::Rect2D> const & discardRectangles, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void setEvent( VULKAN_HPP_NAMESPACE::Event event, VULKAN_HPP_NAMESPACE::PipelineStageFlags stageMask, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void setExclusiveScissorNV( uint32_t firstExclusiveScissor, uint32_t exclusiveScissorCount, const VULKAN_HPP_NAMESPACE::Rect2D* pExclusiveScissors, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void setExclusiveScissorNV( uint32_t firstExclusiveScissor, ArrayProxy<const VULKAN_HPP_NAMESPACE::Rect2D> const & exclusiveScissors, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void setFragmentShadingRateEnumNV( VULKAN_HPP_NAMESPACE::FragmentShadingRateNV shadingRate, const VULKAN_HPP_NAMESPACE::FragmentShadingRateCombinerOpKHR combinerOps[2], Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void setFragmentShadingRateKHR( const VULKAN_HPP_NAMESPACE::Extent2D* pFragmentSize, const VULKAN_HPP_NAMESPACE::FragmentShadingRateCombinerOpKHR combinerOps[2], Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void setFragmentShadingRateKHR( const Extent2D & fragmentSize, const VULKAN_HPP_NAMESPACE::FragmentShadingRateCombinerOpKHR combinerOps[2], Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void setFrontFaceEXT( VULKAN_HPP_NAMESPACE::FrontFace frontFace, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void setLineStippleEXT( uint32_t lineStippleFactor, uint16_t lineStipplePattern, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void setLineWidth( float lineWidth, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result setPerformanceMarkerINTEL( const VULKAN_HPP_NAMESPACE::PerformanceMarkerInfoINTEL* pMarkerInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type setPerformanceMarkerINTEL( const PerformanceMarkerInfoINTEL & markerInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result setPerformanceOverrideINTEL( const VULKAN_HPP_NAMESPACE::PerformanceOverrideInfoINTEL* pOverrideInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type setPerformanceOverrideINTEL( const PerformanceOverrideInfoINTEL & overrideInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result setPerformanceStreamMarkerINTEL( const VULKAN_HPP_NAMESPACE::PerformanceStreamMarkerInfoINTEL* pMarkerInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type setPerformanceStreamMarkerINTEL( const PerformanceStreamMarkerInfoINTEL & markerInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void setPrimitiveTopologyEXT( VULKAN_HPP_NAMESPACE::PrimitiveTopology primitiveTopology, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void setRayTracingPipelineStackSizeKHR( uint32_t pipelineStackSize, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void setSampleLocationsEXT( const VULKAN_HPP_NAMESPACE::SampleLocationsInfoEXT* pSampleLocationsInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void setSampleLocationsEXT( const SampleLocationsInfoEXT & sampleLocationsInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void setScissor( uint32_t firstScissor, uint32_t scissorCount, const VULKAN_HPP_NAMESPACE::Rect2D* pScissors, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void setScissor( uint32_t firstScissor, ArrayProxy<const VULKAN_HPP_NAMESPACE::Rect2D> const & scissors, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void setScissorWithCountEXT( uint32_t scissorCount, const VULKAN_HPP_NAMESPACE::Rect2D* pScissors, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void setScissorWithCountEXT( ArrayProxy<const VULKAN_HPP_NAMESPACE::Rect2D> const & scissors, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void setStencilCompareMask( VULKAN_HPP_NAMESPACE::StencilFaceFlags faceMask, uint32_t compareMask, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void setStencilOpEXT( VULKAN_HPP_NAMESPACE::StencilFaceFlags faceMask, VULKAN_HPP_NAMESPACE::StencilOp failOp, VULKAN_HPP_NAMESPACE::StencilOp passOp, VULKAN_HPP_NAMESPACE::StencilOp depthFailOp, VULKAN_HPP_NAMESPACE::CompareOp compareOp, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void setStencilReference( VULKAN_HPP_NAMESPACE::StencilFaceFlags faceMask, uint32_t reference, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void setStencilTestEnableEXT( VULKAN_HPP_NAMESPACE::Bool32 stencilTestEnable, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void setStencilWriteMask( VULKAN_HPP_NAMESPACE::StencilFaceFlags faceMask, uint32_t writeMask, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void setViewport( uint32_t firstViewport, uint32_t viewportCount, const VULKAN_HPP_NAMESPACE::Viewport* pViewports, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void setViewport( uint32_t firstViewport, ArrayProxy<const VULKAN_HPP_NAMESPACE::Viewport> const & viewports, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void setViewportShadingRatePaletteNV( uint32_t firstViewport, uint32_t viewportCount, const VULKAN_HPP_NAMESPACE::ShadingRatePaletteNV* pShadingRatePalettes, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void setViewportShadingRatePaletteNV( uint32_t firstViewport, ArrayProxy<const VULKAN_HPP_NAMESPACE::ShadingRatePaletteNV> const & shadingRatePalettes, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void setViewportWScalingNV( uint32_t firstViewport, uint32_t viewportCount, const VULKAN_HPP_NAMESPACE::ViewportWScalingNV* pViewportWScalings, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void setViewportWScalingNV( uint32_t firstViewport, ArrayProxy<const VULKAN_HPP_NAMESPACE::ViewportWScalingNV> const & viewportWScalings, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void setViewportWithCountEXT( uint32_t viewportCount, const VULKAN_HPP_NAMESPACE::Viewport* pViewports, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void setViewportWithCountEXT( ArrayProxy<const VULKAN_HPP_NAMESPACE::Viewport> const & viewports, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void traceRaysIndirectKHR( const VULKAN_HPP_NAMESPACE::StridedDeviceAddressRegionKHR* pRaygenShaderBindingTable, const VULKAN_HPP_NAMESPACE::StridedDeviceAddressRegionKHR* pMissShaderBindingTable, const VULKAN_HPP_NAMESPACE::StridedDeviceAddressRegionKHR* pHitShaderBindingTable, const VULKAN_HPP_NAMESPACE::StridedDeviceAddressRegionKHR* pCallableShaderBindingTable, VULKAN_HPP_NAMESPACE::DeviceAddress indirectDeviceAddress, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void traceRaysIndirectKHR( const StridedDeviceAddressRegionKHR & raygenShaderBindingTable, const StridedDeviceAddressRegionKHR & missShaderBindingTable, const StridedDeviceAddressRegionKHR & hitShaderBindingTable, const StridedDeviceAddressRegionKHR & callableShaderBindingTable, VULKAN_HPP_NAMESPACE::DeviceAddress indirectDeviceAddress, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void traceRaysKHR( const VULKAN_HPP_NAMESPACE::StridedDeviceAddressRegionKHR* pRaygenShaderBindingTable, const VULKAN_HPP_NAMESPACE::StridedDeviceAddressRegionKHR* pMissShaderBindingTable, const VULKAN_HPP_NAMESPACE::StridedDeviceAddressRegionKHR* pHitShaderBindingTable, const VULKAN_HPP_NAMESPACE::StridedDeviceAddressRegionKHR* pCallableShaderBindingTable, uint32_t width, uint32_t height, uint32_t depth, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void traceRaysKHR( const StridedDeviceAddressRegionKHR & raygenShaderBindingTable, const StridedDeviceAddressRegionKHR & missShaderBindingTable, const StridedDeviceAddressRegionKHR & hitShaderBindingTable, const StridedDeviceAddressRegionKHR & callableShaderBindingTable, uint32_t width, uint32_t height, uint32_t depth, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void traceRaysNV( VULKAN_HPP_NAMESPACE::Buffer raygenShaderBindingTableBuffer, VULKAN_HPP_NAMESPACE::DeviceSize raygenShaderBindingOffset, VULKAN_HPP_NAMESPACE::Buffer missShaderBindingTableBuffer, VULKAN_HPP_NAMESPACE::DeviceSize missShaderBindingOffset, VULKAN_HPP_NAMESPACE::DeviceSize missShaderBindingStride, VULKAN_HPP_NAMESPACE::Buffer hitShaderBindingTableBuffer, VULKAN_HPP_NAMESPACE::DeviceSize hitShaderBindingOffset, VULKAN_HPP_NAMESPACE::DeviceSize hitShaderBindingStride, VULKAN_HPP_NAMESPACE::Buffer callableShaderBindingTableBuffer, VULKAN_HPP_NAMESPACE::DeviceSize callableShaderBindingOffset, VULKAN_HPP_NAMESPACE::DeviceSize callableShaderBindingStride, uint32_t width, uint32_t height, uint32_t depth, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void updateBuffer( VULKAN_HPP_NAMESPACE::Buffer dstBuffer, VULKAN_HPP_NAMESPACE::DeviceSize dstOffset, VULKAN_HPP_NAMESPACE::DeviceSize dataSize, const void* pData, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename T, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void updateBuffer( VULKAN_HPP_NAMESPACE::Buffer dstBuffer, VULKAN_HPP_NAMESPACE::DeviceSize dstOffset, ArrayProxy<const T> const & data, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void waitEvents( uint32_t eventCount, const VULKAN_HPP_NAMESPACE::Event* pEvents, VULKAN_HPP_NAMESPACE::PipelineStageFlags srcStageMask, VULKAN_HPP_NAMESPACE::PipelineStageFlags dstStageMask, uint32_t memoryBarrierCount, const VULKAN_HPP_NAMESPACE::MemoryBarrier* pMemoryBarriers, uint32_t bufferMemoryBarrierCount, const VULKAN_HPP_NAMESPACE::BufferMemoryBarrier* pBufferMemoryBarriers, uint32_t imageMemoryBarrierCount, const VULKAN_HPP_NAMESPACE::ImageMemoryBarrier* pImageMemoryBarriers, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void waitEvents( ArrayProxy<const VULKAN_HPP_NAMESPACE::Event> const & events, VULKAN_HPP_NAMESPACE::PipelineStageFlags srcStageMask, VULKAN_HPP_NAMESPACE::PipelineStageFlags dstStageMask, ArrayProxy<const VULKAN_HPP_NAMESPACE::MemoryBarrier> const & memoryBarriers, ArrayProxy<const VULKAN_HPP_NAMESPACE::BufferMemoryBarrier> const & bufferMemoryBarriers, ArrayProxy<const VULKAN_HPP_NAMESPACE::ImageMemoryBarrier> const & imageMemoryBarriers, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void writeAccelerationStructuresPropertiesKHR( uint32_t accelerationStructureCount, const VULKAN_HPP_NAMESPACE::AccelerationStructureKHR* pAccelerationStructures, VULKAN_HPP_NAMESPACE::QueryType queryType, VULKAN_HPP_NAMESPACE::QueryPool queryPool, uint32_t firstQuery, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void writeAccelerationStructuresPropertiesKHR( ArrayProxy<const VULKAN_HPP_NAMESPACE::AccelerationStructureKHR> const & accelerationStructures, VULKAN_HPP_NAMESPACE::QueryType queryType, VULKAN_HPP_NAMESPACE::QueryPool queryPool, uint32_t firstQuery, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void writeAccelerationStructuresPropertiesNV( uint32_t accelerationStructureCount, const VULKAN_HPP_NAMESPACE::AccelerationStructureNV* pAccelerationStructures, VULKAN_HPP_NAMESPACE::QueryType queryType, VULKAN_HPP_NAMESPACE::QueryPool queryPool, uint32_t firstQuery, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void writeAccelerationStructuresPropertiesNV( ArrayProxy<const VULKAN_HPP_NAMESPACE::AccelerationStructureNV> const & accelerationStructures, VULKAN_HPP_NAMESPACE::QueryType queryType, VULKAN_HPP_NAMESPACE::QueryPool queryPool, uint32_t firstQuery, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void writeBufferMarkerAMD( VULKAN_HPP_NAMESPACE::PipelineStageFlagBits pipelineStage, VULKAN_HPP_NAMESPACE::Buffer dstBuffer, VULKAN_HPP_NAMESPACE::DeviceSize dstOffset, uint32_t marker, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void writeTimestamp( VULKAN_HPP_NAMESPACE::PipelineStageFlagBits pipelineStage, VULKAN_HPP_NAMESPACE::QueryPool queryPool, uint32_t query, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
-#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result end( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#else
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type end( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-
-#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result reset( VULKAN_HPP_NAMESPACE::CommandBufferResetFlags flags, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#else
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- typename ResultValueType<void>::type reset( VULKAN_HPP_NAMESPACE::CommandBufferResetFlags flags VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- VULKAN_HPP_TYPESAFE_EXPLICIT operator VkCommandBuffer() const VULKAN_HPP_NOEXCEPT
- {
- return m_commandBuffer;
- }
-
- explicit operator bool() const VULKAN_HPP_NOEXCEPT
- {
- return m_commandBuffer != VK_NULL_HANDLE;
- }
-
- bool operator!() const VULKAN_HPP_NOEXCEPT
- {
- return m_commandBuffer == VK_NULL_HANDLE;
- }
-
- private:
- VkCommandBuffer m_commandBuffer;
- };
- static_assert( sizeof( VULKAN_HPP_NAMESPACE::CommandBuffer ) == sizeof( VkCommandBuffer ), "handle and wrapper have different size!" );
-
- template <>
- struct VULKAN_HPP_DEPRECATED("vk::cpp_type is deprecated. Use vk::CppType instead.") cpp_type<ObjectType::eCommandBuffer>
- {
- using type = VULKAN_HPP_NAMESPACE::CommandBuffer;
- };
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eCommandBuffer>
- {
- using Type = VULKAN_HPP_NAMESPACE::CommandBuffer;
- };
-
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT, VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eCommandBuffer>
- {
- using Type = VULKAN_HPP_NAMESPACE::CommandBuffer;
+ value = true
+ };
};
-
-
template <>
- struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::CommandBuffer>
- {
- static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
- };
-
- struct MemoryAllocateInfo
+ struct StructExtends<PhysicalDeviceBlendOperationAdvancedFeaturesEXT, DeviceCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMemoryAllocateInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR MemoryAllocateInfo(VULKAN_HPP_NAMESPACE::DeviceSize allocationSize_ = {}, uint32_t memoryTypeIndex_ = {}) VULKAN_HPP_NOEXCEPT
- : allocationSize( allocationSize_ ), memoryTypeIndex( memoryTypeIndex_ )
- {}
-
- VULKAN_HPP_CONSTEXPR MemoryAllocateInfo( MemoryAllocateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- MemoryAllocateInfo( VkMemoryAllocateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- MemoryAllocateInfo & operator=( VkMemoryAllocateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MemoryAllocateInfo const *>( &rhs );
- return *this;
- }
-
- MemoryAllocateInfo & operator=( MemoryAllocateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( MemoryAllocateInfo ) );
- return *this;
- }
-
- MemoryAllocateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- pNext = pNext_;
- return *this;
- }
-
- MemoryAllocateInfo & setAllocationSize( VULKAN_HPP_NAMESPACE::DeviceSize allocationSize_ ) VULKAN_HPP_NOEXCEPT
- {
- allocationSize = allocationSize_;
- return *this;
- }
-
- MemoryAllocateInfo & setMemoryTypeIndex( uint32_t memoryTypeIndex_ ) VULKAN_HPP_NOEXCEPT
- {
- memoryTypeIndex = memoryTypeIndex_;
- return *this;
- }
-
-
- operator VkMemoryAllocateInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkMemoryAllocateInfo*>( this );
- }
-
- operator VkMemoryAllocateInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkMemoryAllocateInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( MemoryAllocateInfo const& ) const = default;
-#else
- bool operator==( MemoryAllocateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( allocationSize == rhs.allocationSize )
- && ( memoryTypeIndex == rhs.memoryTypeIndex );
- }
-
- bool operator!=( MemoryAllocateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMemoryAllocateInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::DeviceSize allocationSize = {};
- uint32_t memoryTypeIndex = {};
-
+ value = true
+ };
};
- static_assert( sizeof( MemoryAllocateInfo ) == sizeof( VkMemoryAllocateInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<MemoryAllocateInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eMemoryAllocateInfo>
+ struct StructExtends<PhysicalDeviceBlendOperationAdvancedPropertiesEXT, PhysicalDeviceProperties2>
{
- using Type = MemoryAllocateInfo;
- };
-
- class DeferredOperationKHR
- {
- public:
- using CType = VkDeferredOperationKHR;
-
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::eDeferredOperationKHR;
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType = VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eUnknown;
-
- public:
- VULKAN_HPP_CONSTEXPR DeferredOperationKHR() VULKAN_HPP_NOEXCEPT
- : m_deferredOperationKHR(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_CONSTEXPR DeferredOperationKHR( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- : m_deferredOperationKHR(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_TYPESAFE_EXPLICIT DeferredOperationKHR( VkDeferredOperationKHR deferredOperationKHR ) VULKAN_HPP_NOEXCEPT
- : m_deferredOperationKHR( deferredOperationKHR )
- {}
-
-#if defined(VULKAN_HPP_TYPESAFE_CONVERSION)
- DeferredOperationKHR & operator=(VkDeferredOperationKHR deferredOperationKHR) VULKAN_HPP_NOEXCEPT
- {
- m_deferredOperationKHR = deferredOperationKHR;
- return *this;
- }
-#endif
-
- DeferredOperationKHR & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- {
- m_deferredOperationKHR = VK_NULL_HANDLE;
- return *this;
- }
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DeferredOperationKHR const& ) const = default;
-#else
- bool operator==( DeferredOperationKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_deferredOperationKHR == rhs.m_deferredOperationKHR;
- }
-
- bool operator!=(DeferredOperationKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return m_deferredOperationKHR != rhs.m_deferredOperationKHR;
- }
-
- bool operator<(DeferredOperationKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_deferredOperationKHR < rhs.m_deferredOperationKHR;
- }
-#endif
-
- VULKAN_HPP_TYPESAFE_EXPLICIT operator VkDeferredOperationKHR() const VULKAN_HPP_NOEXCEPT
- {
- return m_deferredOperationKHR;
- }
-
- explicit operator bool() const VULKAN_HPP_NOEXCEPT
- {
- return m_deferredOperationKHR != VK_NULL_HANDLE;
- }
-
- bool operator!() const VULKAN_HPP_NOEXCEPT
- {
- return m_deferredOperationKHR == VK_NULL_HANDLE;
- }
-
- private:
- VkDeferredOperationKHR m_deferredOperationKHR;
- };
- static_assert( sizeof( VULKAN_HPP_NAMESPACE::DeferredOperationKHR ) == sizeof( VkDeferredOperationKHR ), "handle and wrapper have different size!" );
-
- template <>
- struct VULKAN_HPP_DEPRECATED("vk::cpp_type is deprecated. Use vk::CppType instead.") cpp_type<ObjectType::eDeferredOperationKHR>
- {
- using type = VULKAN_HPP_NAMESPACE::DeferredOperationKHR;
- };
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eDeferredOperationKHR>
- {
- using Type = VULKAN_HPP_NAMESPACE::DeferredOperationKHR;
+ value = true
+ };
};
-
-
-
template <>
- struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::DeferredOperationKHR>
- {
- static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
- };
-
- class PipelineCache
+ struct StructExtends<PhysicalDeviceBufferDeviceAddressFeatures, PhysicalDeviceFeatures2>
{
- public:
- using CType = VkPipelineCache;
-
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::ePipelineCache;
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType = VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::ePipelineCache;
-
- public:
- VULKAN_HPP_CONSTEXPR PipelineCache() VULKAN_HPP_NOEXCEPT
- : m_pipelineCache(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_CONSTEXPR PipelineCache( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- : m_pipelineCache(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_TYPESAFE_EXPLICIT PipelineCache( VkPipelineCache pipelineCache ) VULKAN_HPP_NOEXCEPT
- : m_pipelineCache( pipelineCache )
- {}
-
-#if defined(VULKAN_HPP_TYPESAFE_CONVERSION)
- PipelineCache & operator=(VkPipelineCache pipelineCache) VULKAN_HPP_NOEXCEPT
+ enum
{
- m_pipelineCache = pipelineCache;
- return *this;
- }
-#endif
-
- PipelineCache & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- {
- m_pipelineCache = VK_NULL_HANDLE;
- return *this;
- }
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PipelineCache const& ) const = default;
-#else
- bool operator==( PipelineCache const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_pipelineCache == rhs.m_pipelineCache;
- }
-
- bool operator!=(PipelineCache const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_pipelineCache != rhs.m_pipelineCache;
- }
-
- bool operator<(PipelineCache const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_pipelineCache < rhs.m_pipelineCache;
- }
-#endif
-
- VULKAN_HPP_TYPESAFE_EXPLICIT operator VkPipelineCache() const VULKAN_HPP_NOEXCEPT
- {
- return m_pipelineCache;
- }
-
- explicit operator bool() const VULKAN_HPP_NOEXCEPT
- {
- return m_pipelineCache != VK_NULL_HANDLE;
- }
-
- bool operator!() const VULKAN_HPP_NOEXCEPT
- {
- return m_pipelineCache == VK_NULL_HANDLE;
- }
-
- private:
- VkPipelineCache m_pipelineCache;
- };
- static_assert( sizeof( VULKAN_HPP_NAMESPACE::PipelineCache ) == sizeof( VkPipelineCache ), "handle and wrapper have different size!" );
-
- template <>
- struct VULKAN_HPP_DEPRECATED("vk::cpp_type is deprecated. Use vk::CppType instead.") cpp_type<ObjectType::ePipelineCache>
- {
- using type = VULKAN_HPP_NAMESPACE::PipelineCache;
- };
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::ePipelineCache>
- {
- using Type = VULKAN_HPP_NAMESPACE::PipelineCache;
- };
-
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT, VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::ePipelineCache>
- {
- using Type = VULKAN_HPP_NAMESPACE::PipelineCache;
+ value = true
+ };
};
-
-
template <>
- struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::PipelineCache>
+ struct StructExtends<PhysicalDeviceBufferDeviceAddressFeatures, DeviceCreateInfo>
{
- static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
- };
-
- struct EventCreateInfo
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eEventCreateInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR EventCreateInfo(VULKAN_HPP_NAMESPACE::EventCreateFlags flags_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ )
- {}
-
- VULKAN_HPP_CONSTEXPR EventCreateInfo( EventCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- EventCreateInfo( VkEventCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- EventCreateInfo & operator=( VkEventCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::EventCreateInfo const *>( &rhs );
- return *this;
- }
-
- EventCreateInfo & operator=( EventCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( EventCreateInfo ) );
- return *this;
- }
-
- EventCreateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- EventCreateInfo & setFlags( VULKAN_HPP_NAMESPACE::EventCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
-
- operator VkEventCreateInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkEventCreateInfo*>( this );
- }
-
- operator VkEventCreateInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkEventCreateInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( EventCreateInfo const& ) const = default;
-#else
- bool operator==( EventCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags );
- }
-
- bool operator!=( EventCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eEventCreateInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::EventCreateFlags flags = {};
-
+ value = true
+ };
};
- static_assert( sizeof( EventCreateInfo ) == sizeof( VkEventCreateInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<EventCreateInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eEventCreateInfo>
+ struct StructExtends<PhysicalDeviceBufferDeviceAddressFeaturesEXT, PhysicalDeviceFeatures2>
{
- using Type = EventCreateInfo;
- };
-
- struct FenceCreateInfo
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eFenceCreateInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR FenceCreateInfo(VULKAN_HPP_NAMESPACE::FenceCreateFlags flags_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ )
- {}
-
- VULKAN_HPP_CONSTEXPR FenceCreateInfo( FenceCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- FenceCreateInfo( VkFenceCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- FenceCreateInfo & operator=( VkFenceCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::FenceCreateInfo const *>( &rhs );
- return *this;
- }
-
- FenceCreateInfo & operator=( FenceCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( FenceCreateInfo ) );
- return *this;
- }
-
- FenceCreateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- FenceCreateInfo & setFlags( VULKAN_HPP_NAMESPACE::FenceCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
-
- operator VkFenceCreateInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkFenceCreateInfo*>( this );
- }
-
- operator VkFenceCreateInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkFenceCreateInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( FenceCreateInfo const& ) const = default;
-#else
- bool operator==( FenceCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags );
- }
-
- bool operator!=( FenceCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eFenceCreateInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::FenceCreateFlags flags = {};
-
+ value = true
+ };
};
- static_assert( sizeof( FenceCreateInfo ) == sizeof( VkFenceCreateInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<FenceCreateInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eFenceCreateInfo>
+ struct StructExtends<PhysicalDeviceBufferDeviceAddressFeaturesEXT, DeviceCreateInfo>
{
- using Type = FenceCreateInfo;
- };
-
- struct FramebufferCreateInfo
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eFramebufferCreateInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR FramebufferCreateInfo(VULKAN_HPP_NAMESPACE::FramebufferCreateFlags flags_ = {}, VULKAN_HPP_NAMESPACE::RenderPass renderPass_ = {}, uint32_t attachmentCount_ = {}, const VULKAN_HPP_NAMESPACE::ImageView* pAttachments_ = {}, uint32_t width_ = {}, uint32_t height_ = {}, uint32_t layers_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), renderPass( renderPass_ ), attachmentCount( attachmentCount_ ), pAttachments( pAttachments_ ), width( width_ ), height( height_ ), layers( layers_ )
- {}
-
- VULKAN_HPP_CONSTEXPR FramebufferCreateInfo( FramebufferCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- FramebufferCreateInfo( VkFramebufferCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- FramebufferCreateInfo( VULKAN_HPP_NAMESPACE::FramebufferCreateFlags flags_, VULKAN_HPP_NAMESPACE::RenderPass renderPass_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ImageView> const & attachments_, uint32_t width_ = {}, uint32_t height_ = {}, uint32_t layers_ = {} )
- : flags( flags_ ), renderPass( renderPass_ ), attachmentCount( static_cast<uint32_t>( attachments_.size() ) ), pAttachments( attachments_.data() ), width( width_ ), height( height_ ), layers( layers_ )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- FramebufferCreateInfo & operator=( VkFramebufferCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::FramebufferCreateInfo const *>( &rhs );
- return *this;
- }
-
- FramebufferCreateInfo & operator=( FramebufferCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( FramebufferCreateInfo ) );
- return *this;
- }
-
- FramebufferCreateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- FramebufferCreateInfo & setFlags( VULKAN_HPP_NAMESPACE::FramebufferCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- FramebufferCreateInfo & setRenderPass( VULKAN_HPP_NAMESPACE::RenderPass renderPass_ ) VULKAN_HPP_NOEXCEPT
- {
- renderPass = renderPass_;
- return *this;
- }
-
- FramebufferCreateInfo & setAttachmentCount( uint32_t attachmentCount_ ) VULKAN_HPP_NOEXCEPT
- {
- attachmentCount = attachmentCount_;
- return *this;
- }
-
- FramebufferCreateInfo & setPAttachments( const VULKAN_HPP_NAMESPACE::ImageView* pAttachments_ ) VULKAN_HPP_NOEXCEPT
- {
- pAttachments = pAttachments_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- FramebufferCreateInfo & setAttachments( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ImageView> const & attachments_ ) VULKAN_HPP_NOEXCEPT
- {
- attachmentCount = static_cast<uint32_t>( attachments_.size() );
- pAttachments = attachments_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- FramebufferCreateInfo & setWidth( uint32_t width_ ) VULKAN_HPP_NOEXCEPT
- {
- width = width_;
- return *this;
- }
-
- FramebufferCreateInfo & setHeight( uint32_t height_ ) VULKAN_HPP_NOEXCEPT
- {
- height = height_;
- return *this;
- }
-
- FramebufferCreateInfo & setLayers( uint32_t layers_ ) VULKAN_HPP_NOEXCEPT
- {
- layers = layers_;
- return *this;
- }
-
-
- operator VkFramebufferCreateInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkFramebufferCreateInfo*>( this );
- }
-
- operator VkFramebufferCreateInfo &() VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<VkFramebufferCreateInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( FramebufferCreateInfo const& ) const = default;
-#else
- bool operator==( FramebufferCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( renderPass == rhs.renderPass )
- && ( attachmentCount == rhs.attachmentCount )
- && ( pAttachments == rhs.pAttachments )
- && ( width == rhs.width )
- && ( height == rhs.height )
- && ( layers == rhs.layers );
- }
-
- bool operator!=( FramebufferCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eFramebufferCreateInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::FramebufferCreateFlags flags = {};
- VULKAN_HPP_NAMESPACE::RenderPass renderPass = {};
- uint32_t attachmentCount = {};
- const VULKAN_HPP_NAMESPACE::ImageView* pAttachments = {};
- uint32_t width = {};
- uint32_t height = {};
- uint32_t layers = {};
-
+ value = true
+ };
};
- static_assert( sizeof( FramebufferCreateInfo ) == sizeof( VkFramebufferCreateInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<FramebufferCreateInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eFramebufferCreateInfo>
- {
- using Type = FramebufferCreateInfo;
- };
-
- struct VertexInputBindingDescription
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR VertexInputBindingDescription(uint32_t binding_ = {}, uint32_t stride_ = {}, VULKAN_HPP_NAMESPACE::VertexInputRate inputRate_ = VULKAN_HPP_NAMESPACE::VertexInputRate::eVertex) VULKAN_HPP_NOEXCEPT
- : binding( binding_ ), stride( stride_ ), inputRate( inputRate_ )
- {}
-
- VULKAN_HPP_CONSTEXPR VertexInputBindingDescription( VertexInputBindingDescription const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- VertexInputBindingDescription( VkVertexInputBindingDescription const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- VertexInputBindingDescription & operator=( VkVertexInputBindingDescription const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VertexInputBindingDescription const *>( &rhs );
- return *this;
- }
-
- VertexInputBindingDescription & operator=( VertexInputBindingDescription const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( VertexInputBindingDescription ) );
- return *this;
- }
-
- VertexInputBindingDescription & setBinding( uint32_t binding_ ) VULKAN_HPP_NOEXCEPT
- {
- binding = binding_;
- return *this;
- }
-
- VertexInputBindingDescription & setStride( uint32_t stride_ ) VULKAN_HPP_NOEXCEPT
- {
- stride = stride_;
- return *this;
- }
-
- VertexInputBindingDescription & setInputRate( VULKAN_HPP_NAMESPACE::VertexInputRate inputRate_ ) VULKAN_HPP_NOEXCEPT
- {
- inputRate = inputRate_;
- return *this;
- }
-
-
- operator VkVertexInputBindingDescription const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkVertexInputBindingDescription*>( this );
- }
-
- operator VkVertexInputBindingDescription &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkVertexInputBindingDescription*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( VertexInputBindingDescription const& ) const = default;
-#else
- bool operator==( VertexInputBindingDescription const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( binding == rhs.binding )
- && ( stride == rhs.stride )
- && ( inputRate == rhs.inputRate );
- }
-
- bool operator!=( VertexInputBindingDescription const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- uint32_t binding = {};
- uint32_t stride = {};
- VULKAN_HPP_NAMESPACE::VertexInputRate inputRate = VULKAN_HPP_NAMESPACE::VertexInputRate::eVertex;
-
- };
- static_assert( sizeof( VertexInputBindingDescription ) == sizeof( VkVertexInputBindingDescription ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<VertexInputBindingDescription>::value, "struct wrapper is not a standard layout!" );
-
- struct VertexInputAttributeDescription
+ struct StructExtends<PhysicalDeviceCoherentMemoryFeaturesAMD, PhysicalDeviceFeatures2>
{
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR VertexInputAttributeDescription(uint32_t location_ = {}, uint32_t binding_ = {}, VULKAN_HPP_NAMESPACE::Format format_ = VULKAN_HPP_NAMESPACE::Format::eUndefined, uint32_t offset_ = {}) VULKAN_HPP_NOEXCEPT
- : location( location_ ), binding( binding_ ), format( format_ ), offset( offset_ )
- {}
-
- VULKAN_HPP_CONSTEXPR VertexInputAttributeDescription( VertexInputAttributeDescription const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- VertexInputAttributeDescription( VkVertexInputAttributeDescription const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- VertexInputAttributeDescription & operator=( VkVertexInputAttributeDescription const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VertexInputAttributeDescription const *>( &rhs );
- return *this;
- }
-
- VertexInputAttributeDescription & operator=( VertexInputAttributeDescription const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( VertexInputAttributeDescription ) );
- return *this;
- }
-
- VertexInputAttributeDescription & setLocation( uint32_t location_ ) VULKAN_HPP_NOEXCEPT
- {
- location = location_;
- return *this;
- }
-
- VertexInputAttributeDescription & setBinding( uint32_t binding_ ) VULKAN_HPP_NOEXCEPT
- {
- binding = binding_;
- return *this;
- }
-
- VertexInputAttributeDescription & setFormat( VULKAN_HPP_NAMESPACE::Format format_ ) VULKAN_HPP_NOEXCEPT
- {
- format = format_;
- return *this;
- }
-
- VertexInputAttributeDescription & setOffset( uint32_t offset_ ) VULKAN_HPP_NOEXCEPT
- {
- offset = offset_;
- return *this;
- }
-
-
- operator VkVertexInputAttributeDescription const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkVertexInputAttributeDescription*>( this );
- }
-
- operator VkVertexInputAttributeDescription &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkVertexInputAttributeDescription*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( VertexInputAttributeDescription const& ) const = default;
-#else
- bool operator==( VertexInputAttributeDescription const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( location == rhs.location )
- && ( binding == rhs.binding )
- && ( format == rhs.format )
- && ( offset == rhs.offset );
- }
-
- bool operator!=( VertexInputAttributeDescription const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- uint32_t location = {};
- uint32_t binding = {};
- VULKAN_HPP_NAMESPACE::Format format = VULKAN_HPP_NAMESPACE::Format::eUndefined;
- uint32_t offset = {};
-
- };
- static_assert( sizeof( VertexInputAttributeDescription ) == sizeof( VkVertexInputAttributeDescription ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<VertexInputAttributeDescription>::value, "struct wrapper is not a standard layout!" );
-
- struct PipelineVertexInputStateCreateInfo
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineVertexInputStateCreateInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PipelineVertexInputStateCreateInfo(VULKAN_HPP_NAMESPACE::PipelineVertexInputStateCreateFlags flags_ = {}, uint32_t vertexBindingDescriptionCount_ = {}, const VULKAN_HPP_NAMESPACE::VertexInputBindingDescription* pVertexBindingDescriptions_ = {}, uint32_t vertexAttributeDescriptionCount_ = {}, const VULKAN_HPP_NAMESPACE::VertexInputAttributeDescription* pVertexAttributeDescriptions_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), vertexBindingDescriptionCount( vertexBindingDescriptionCount_ ), pVertexBindingDescriptions( pVertexBindingDescriptions_ ), vertexAttributeDescriptionCount( vertexAttributeDescriptionCount_ ), pVertexAttributeDescriptions( pVertexAttributeDescriptions_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PipelineVertexInputStateCreateInfo( PipelineVertexInputStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PipelineVertexInputStateCreateInfo( VkPipelineVertexInputStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- PipelineVertexInputStateCreateInfo( VULKAN_HPP_NAMESPACE::PipelineVertexInputStateCreateFlags flags_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::VertexInputBindingDescription> const & vertexBindingDescriptions_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::VertexInputAttributeDescription> const & vertexAttributeDescriptions_ = {} )
- : flags( flags_ ), vertexBindingDescriptionCount( static_cast<uint32_t>( vertexBindingDescriptions_.size() ) ), pVertexBindingDescriptions( vertexBindingDescriptions_.data() ), vertexAttributeDescriptionCount( static_cast<uint32_t>( vertexAttributeDescriptions_.size() ) ), pVertexAttributeDescriptions( vertexAttributeDescriptions_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PipelineVertexInputStateCreateInfo & operator=( VkPipelineVertexInputStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineVertexInputStateCreateInfo const *>( &rhs );
- return *this;
- }
-
- PipelineVertexInputStateCreateInfo & operator=( PipelineVertexInputStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PipelineVertexInputStateCreateInfo ) );
- return *this;
- }
-
- PipelineVertexInputStateCreateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PipelineVertexInputStateCreateInfo & setFlags( VULKAN_HPP_NAMESPACE::PipelineVertexInputStateCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- PipelineVertexInputStateCreateInfo & setVertexBindingDescriptionCount( uint32_t vertexBindingDescriptionCount_ ) VULKAN_HPP_NOEXCEPT
- {
- vertexBindingDescriptionCount = vertexBindingDescriptionCount_;
- return *this;
- }
-
- PipelineVertexInputStateCreateInfo & setPVertexBindingDescriptions( const VULKAN_HPP_NAMESPACE::VertexInputBindingDescription* pVertexBindingDescriptions_ ) VULKAN_HPP_NOEXCEPT
- {
- pVertexBindingDescriptions = pVertexBindingDescriptions_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- PipelineVertexInputStateCreateInfo & setVertexBindingDescriptions( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::VertexInputBindingDescription> const & vertexBindingDescriptions_ ) VULKAN_HPP_NOEXCEPT
- {
- vertexBindingDescriptionCount = static_cast<uint32_t>( vertexBindingDescriptions_.size() );
- pVertexBindingDescriptions = vertexBindingDescriptions_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- PipelineVertexInputStateCreateInfo & setVertexAttributeDescriptionCount( uint32_t vertexAttributeDescriptionCount_ ) VULKAN_HPP_NOEXCEPT
- {
- vertexAttributeDescriptionCount = vertexAttributeDescriptionCount_;
- return *this;
- }
-
- PipelineVertexInputStateCreateInfo & setPVertexAttributeDescriptions( const VULKAN_HPP_NAMESPACE::VertexInputAttributeDescription* pVertexAttributeDescriptions_ ) VULKAN_HPP_NOEXCEPT
- {
- pVertexAttributeDescriptions = pVertexAttributeDescriptions_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- PipelineVertexInputStateCreateInfo & setVertexAttributeDescriptions( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::VertexInputAttributeDescription> const & vertexAttributeDescriptions_ ) VULKAN_HPP_NOEXCEPT
- {
- vertexAttributeDescriptionCount = static_cast<uint32_t>( vertexAttributeDescriptions_.size() );
- pVertexAttributeDescriptions = vertexAttributeDescriptions_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkPipelineVertexInputStateCreateInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPipelineVertexInputStateCreateInfo*>( this );
- }
-
- operator VkPipelineVertexInputStateCreateInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPipelineVertexInputStateCreateInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PipelineVertexInputStateCreateInfo const& ) const = default;
-#else
- bool operator==( PipelineVertexInputStateCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( vertexBindingDescriptionCount == rhs.vertexBindingDescriptionCount )
- && ( pVertexBindingDescriptions == rhs.pVertexBindingDescriptions )
- && ( vertexAttributeDescriptionCount == rhs.vertexAttributeDescriptionCount )
- && ( pVertexAttributeDescriptions == rhs.pVertexAttributeDescriptions );
- }
-
- bool operator!=( PipelineVertexInputStateCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineVertexInputStateCreateInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::PipelineVertexInputStateCreateFlags flags = {};
- uint32_t vertexBindingDescriptionCount = {};
- const VULKAN_HPP_NAMESPACE::VertexInputBindingDescription* pVertexBindingDescriptions = {};
- uint32_t vertexAttributeDescriptionCount = {};
- const VULKAN_HPP_NAMESPACE::VertexInputAttributeDescription* pVertexAttributeDescriptions = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PipelineVertexInputStateCreateInfo ) == sizeof( VkPipelineVertexInputStateCreateInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PipelineVertexInputStateCreateInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePipelineVertexInputStateCreateInfo>
- {
- using Type = PipelineVertexInputStateCreateInfo;
- };
-
- struct PipelineInputAssemblyStateCreateInfo
+ struct StructExtends<PhysicalDeviceCoherentMemoryFeaturesAMD, DeviceCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineInputAssemblyStateCreateInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PipelineInputAssemblyStateCreateInfo(VULKAN_HPP_NAMESPACE::PipelineInputAssemblyStateCreateFlags flags_ = {}, VULKAN_HPP_NAMESPACE::PrimitiveTopology topology_ = VULKAN_HPP_NAMESPACE::PrimitiveTopology::ePointList, VULKAN_HPP_NAMESPACE::Bool32 primitiveRestartEnable_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), topology( topology_ ), primitiveRestartEnable( primitiveRestartEnable_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PipelineInputAssemblyStateCreateInfo( PipelineInputAssemblyStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PipelineInputAssemblyStateCreateInfo( VkPipelineInputAssemblyStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PipelineInputAssemblyStateCreateInfo & operator=( VkPipelineInputAssemblyStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineInputAssemblyStateCreateInfo const *>( &rhs );
- return *this;
- }
-
- PipelineInputAssemblyStateCreateInfo & operator=( PipelineInputAssemblyStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PipelineInputAssemblyStateCreateInfo ) );
- return *this;
- }
-
- PipelineInputAssemblyStateCreateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PipelineInputAssemblyStateCreateInfo & setFlags( VULKAN_HPP_NAMESPACE::PipelineInputAssemblyStateCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- PipelineInputAssemblyStateCreateInfo & setTopology( VULKAN_HPP_NAMESPACE::PrimitiveTopology topology_ ) VULKAN_HPP_NOEXCEPT
- {
- topology = topology_;
- return *this;
- }
-
- PipelineInputAssemblyStateCreateInfo & setPrimitiveRestartEnable( VULKAN_HPP_NAMESPACE::Bool32 primitiveRestartEnable_ ) VULKAN_HPP_NOEXCEPT
- {
- primitiveRestartEnable = primitiveRestartEnable_;
- return *this;
- }
-
-
- operator VkPipelineInputAssemblyStateCreateInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPipelineInputAssemblyStateCreateInfo*>( this );
- }
-
- operator VkPipelineInputAssemblyStateCreateInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPipelineInputAssemblyStateCreateInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PipelineInputAssemblyStateCreateInfo const& ) const = default;
-#else
- bool operator==( PipelineInputAssemblyStateCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( topology == rhs.topology )
- && ( primitiveRestartEnable == rhs.primitiveRestartEnable );
- }
-
- bool operator!=( PipelineInputAssemblyStateCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineInputAssemblyStateCreateInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::PipelineInputAssemblyStateCreateFlags flags = {};
- VULKAN_HPP_NAMESPACE::PrimitiveTopology topology = VULKAN_HPP_NAMESPACE::PrimitiveTopology::ePointList;
- VULKAN_HPP_NAMESPACE::Bool32 primitiveRestartEnable = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PipelineInputAssemblyStateCreateInfo ) == sizeof( VkPipelineInputAssemblyStateCreateInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PipelineInputAssemblyStateCreateInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePipelineInputAssemblyStateCreateInfo>
- {
- using Type = PipelineInputAssemblyStateCreateInfo;
- };
-
- struct PipelineTessellationStateCreateInfo
+ struct StructExtends<PhysicalDeviceColorWriteEnableFeaturesEXT, PhysicalDeviceFeatures2>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineTessellationStateCreateInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PipelineTessellationStateCreateInfo(VULKAN_HPP_NAMESPACE::PipelineTessellationStateCreateFlags flags_ = {}, uint32_t patchControlPoints_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), patchControlPoints( patchControlPoints_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PipelineTessellationStateCreateInfo( PipelineTessellationStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PipelineTessellationStateCreateInfo( VkPipelineTessellationStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PipelineTessellationStateCreateInfo & operator=( VkPipelineTessellationStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineTessellationStateCreateInfo const *>( &rhs );
- return *this;
- }
-
- PipelineTessellationStateCreateInfo & operator=( PipelineTessellationStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PipelineTessellationStateCreateInfo ) );
- return *this;
- }
-
- PipelineTessellationStateCreateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PipelineTessellationStateCreateInfo & setFlags( VULKAN_HPP_NAMESPACE::PipelineTessellationStateCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- flags = flags_;
- return *this;
- }
-
- PipelineTessellationStateCreateInfo & setPatchControlPoints( uint32_t patchControlPoints_ ) VULKAN_HPP_NOEXCEPT
- {
- patchControlPoints = patchControlPoints_;
- return *this;
- }
-
-
- operator VkPipelineTessellationStateCreateInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPipelineTessellationStateCreateInfo*>( this );
- }
-
- operator VkPipelineTessellationStateCreateInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPipelineTessellationStateCreateInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PipelineTessellationStateCreateInfo const& ) const = default;
-#else
- bool operator==( PipelineTessellationStateCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( patchControlPoints == rhs.patchControlPoints );
- }
-
- bool operator!=( PipelineTessellationStateCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineTessellationStateCreateInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::PipelineTessellationStateCreateFlags flags = {};
- uint32_t patchControlPoints = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PipelineTessellationStateCreateInfo ) == sizeof( VkPipelineTessellationStateCreateInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PipelineTessellationStateCreateInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePipelineTessellationStateCreateInfo>
+ struct StructExtends<PhysicalDeviceColorWriteEnableFeaturesEXT, DeviceCreateInfo>
{
- using Type = PipelineTessellationStateCreateInfo;
- };
-
- struct PipelineViewportStateCreateInfo
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineViewportStateCreateInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PipelineViewportStateCreateInfo(VULKAN_HPP_NAMESPACE::PipelineViewportStateCreateFlags flags_ = {}, uint32_t viewportCount_ = {}, const VULKAN_HPP_NAMESPACE::Viewport* pViewports_ = {}, uint32_t scissorCount_ = {}, const VULKAN_HPP_NAMESPACE::Rect2D* pScissors_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), viewportCount( viewportCount_ ), pViewports( pViewports_ ), scissorCount( scissorCount_ ), pScissors( pScissors_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PipelineViewportStateCreateInfo( PipelineViewportStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PipelineViewportStateCreateInfo( VkPipelineViewportStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- PipelineViewportStateCreateInfo( VULKAN_HPP_NAMESPACE::PipelineViewportStateCreateFlags flags_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Viewport> const & viewports_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Rect2D> const & scissors_ = {} )
- : flags( flags_ ), viewportCount( static_cast<uint32_t>( viewports_.size() ) ), pViewports( viewports_.data() ), scissorCount( static_cast<uint32_t>( scissors_.size() ) ), pScissors( scissors_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PipelineViewportStateCreateInfo & operator=( VkPipelineViewportStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineViewportStateCreateInfo const *>( &rhs );
- return *this;
- }
-
- PipelineViewportStateCreateInfo & operator=( PipelineViewportStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PipelineViewportStateCreateInfo ) );
- return *this;
- }
-
- PipelineViewportStateCreateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PipelineViewportStateCreateInfo & setFlags( VULKAN_HPP_NAMESPACE::PipelineViewportStateCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- PipelineViewportStateCreateInfo & setViewportCount( uint32_t viewportCount_ ) VULKAN_HPP_NOEXCEPT
- {
- viewportCount = viewportCount_;
- return *this;
- }
-
- PipelineViewportStateCreateInfo & setPViewports( const VULKAN_HPP_NAMESPACE::Viewport* pViewports_ ) VULKAN_HPP_NOEXCEPT
- {
- pViewports = pViewports_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- PipelineViewportStateCreateInfo & setViewports( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Viewport> const & viewports_ ) VULKAN_HPP_NOEXCEPT
- {
- viewportCount = static_cast<uint32_t>( viewports_.size() );
- pViewports = viewports_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- PipelineViewportStateCreateInfo & setScissorCount( uint32_t scissorCount_ ) VULKAN_HPP_NOEXCEPT
- {
- scissorCount = scissorCount_;
- return *this;
- }
-
- PipelineViewportStateCreateInfo & setPScissors( const VULKAN_HPP_NAMESPACE::Rect2D* pScissors_ ) VULKAN_HPP_NOEXCEPT
- {
- pScissors = pScissors_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- PipelineViewportStateCreateInfo & setScissors( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Rect2D> const & scissors_ ) VULKAN_HPP_NOEXCEPT
- {
- scissorCount = static_cast<uint32_t>( scissors_.size() );
- pScissors = scissors_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkPipelineViewportStateCreateInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPipelineViewportStateCreateInfo*>( this );
- }
-
- operator VkPipelineViewportStateCreateInfo &() VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<VkPipelineViewportStateCreateInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PipelineViewportStateCreateInfo const& ) const = default;
-#else
- bool operator==( PipelineViewportStateCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( viewportCount == rhs.viewportCount )
- && ( pViewports == rhs.pViewports )
- && ( scissorCount == rhs.scissorCount )
- && ( pScissors == rhs.pScissors );
- }
-
- bool operator!=( PipelineViewportStateCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineViewportStateCreateInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::PipelineViewportStateCreateFlags flags = {};
- uint32_t viewportCount = {};
- const VULKAN_HPP_NAMESPACE::Viewport* pViewports = {};
- uint32_t scissorCount = {};
- const VULKAN_HPP_NAMESPACE::Rect2D* pScissors = {};
-
- };
- static_assert( sizeof( PipelineViewportStateCreateInfo ) == sizeof( VkPipelineViewportStateCreateInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PipelineViewportStateCreateInfo>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::ePipelineViewportStateCreateInfo>
- {
- using Type = PipelineViewportStateCreateInfo;
+ value = true
+ };
};
-
- struct PipelineRasterizationStateCreateInfo
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineRasterizationStateCreateInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PipelineRasterizationStateCreateInfo(VULKAN_HPP_NAMESPACE::PipelineRasterizationStateCreateFlags flags_ = {}, VULKAN_HPP_NAMESPACE::Bool32 depthClampEnable_ = {}, VULKAN_HPP_NAMESPACE::Bool32 rasterizerDiscardEnable_ = {}, VULKAN_HPP_NAMESPACE::PolygonMode polygonMode_ = VULKAN_HPP_NAMESPACE::PolygonMode::eFill, VULKAN_HPP_NAMESPACE::CullModeFlags cullMode_ = {}, VULKAN_HPP_NAMESPACE::FrontFace frontFace_ = VULKAN_HPP_NAMESPACE::FrontFace::eCounterClockwise, VULKAN_HPP_NAMESPACE::Bool32 depthBiasEnable_ = {}, float depthBiasConstantFactor_ = {}, float depthBiasClamp_ = {}, float depthBiasSlopeFactor_ = {}, float lineWidth_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), depthClampEnable( depthClampEnable_ ), rasterizerDiscardEnable( rasterizerDiscardEnable_ ), polygonMode( polygonMode_ ), cullMode( cullMode_ ), frontFace( frontFace_ ), depthBiasEnable( depthBiasEnable_ ), depthBiasConstantFactor( depthBiasConstantFactor_ ), depthBiasClamp( depthBiasClamp_ ), depthBiasSlopeFactor( depthBiasSlopeFactor_ ), lineWidth( lineWidth_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PipelineRasterizationStateCreateInfo( PipelineRasterizationStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PipelineRasterizationStateCreateInfo( VkPipelineRasterizationStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PipelineRasterizationStateCreateInfo & operator=( VkPipelineRasterizationStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineRasterizationStateCreateInfo const *>( &rhs );
- return *this;
- }
-
- PipelineRasterizationStateCreateInfo & operator=( PipelineRasterizationStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PipelineRasterizationStateCreateInfo ) );
- return *this;
- }
-
- PipelineRasterizationStateCreateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PipelineRasterizationStateCreateInfo & setFlags( VULKAN_HPP_NAMESPACE::PipelineRasterizationStateCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- PipelineRasterizationStateCreateInfo & setDepthClampEnable( VULKAN_HPP_NAMESPACE::Bool32 depthClampEnable_ ) VULKAN_HPP_NOEXCEPT
- {
- depthClampEnable = depthClampEnable_;
- return *this;
- }
-
- PipelineRasterizationStateCreateInfo & setRasterizerDiscardEnable( VULKAN_HPP_NAMESPACE::Bool32 rasterizerDiscardEnable_ ) VULKAN_HPP_NOEXCEPT
- {
- rasterizerDiscardEnable = rasterizerDiscardEnable_;
- return *this;
- }
-
- PipelineRasterizationStateCreateInfo & setPolygonMode( VULKAN_HPP_NAMESPACE::PolygonMode polygonMode_ ) VULKAN_HPP_NOEXCEPT
- {
- polygonMode = polygonMode_;
- return *this;
- }
-
- PipelineRasterizationStateCreateInfo & setCullMode( VULKAN_HPP_NAMESPACE::CullModeFlags cullMode_ ) VULKAN_HPP_NOEXCEPT
- {
- cullMode = cullMode_;
- return *this;
- }
-
- PipelineRasterizationStateCreateInfo & setFrontFace( VULKAN_HPP_NAMESPACE::FrontFace frontFace_ ) VULKAN_HPP_NOEXCEPT
- {
- frontFace = frontFace_;
- return *this;
- }
-
- PipelineRasterizationStateCreateInfo & setDepthBiasEnable( VULKAN_HPP_NAMESPACE::Bool32 depthBiasEnable_ ) VULKAN_HPP_NOEXCEPT
- {
- depthBiasEnable = depthBiasEnable_;
- return *this;
- }
-
- PipelineRasterizationStateCreateInfo & setDepthBiasConstantFactor( float depthBiasConstantFactor_ ) VULKAN_HPP_NOEXCEPT
- {
- depthBiasConstantFactor = depthBiasConstantFactor_;
- return *this;
- }
-
- PipelineRasterizationStateCreateInfo & setDepthBiasClamp( float depthBiasClamp_ ) VULKAN_HPP_NOEXCEPT
- {
- depthBiasClamp = depthBiasClamp_;
- return *this;
- }
-
- PipelineRasterizationStateCreateInfo & setDepthBiasSlopeFactor( float depthBiasSlopeFactor_ ) VULKAN_HPP_NOEXCEPT
- {
- depthBiasSlopeFactor = depthBiasSlopeFactor_;
- return *this;
- }
-
- PipelineRasterizationStateCreateInfo & setLineWidth( float lineWidth_ ) VULKAN_HPP_NOEXCEPT
- {
- lineWidth = lineWidth_;
- return *this;
- }
-
-
- operator VkPipelineRasterizationStateCreateInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPipelineRasterizationStateCreateInfo*>( this );
- }
-
- operator VkPipelineRasterizationStateCreateInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPipelineRasterizationStateCreateInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PipelineRasterizationStateCreateInfo const& ) const = default;
-#else
- bool operator==( PipelineRasterizationStateCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( depthClampEnable == rhs.depthClampEnable )
- && ( rasterizerDiscardEnable == rhs.rasterizerDiscardEnable )
- && ( polygonMode == rhs.polygonMode )
- && ( cullMode == rhs.cullMode )
- && ( frontFace == rhs.frontFace )
- && ( depthBiasEnable == rhs.depthBiasEnable )
- && ( depthBiasConstantFactor == rhs.depthBiasConstantFactor )
- && ( depthBiasClamp == rhs.depthBiasClamp )
- && ( depthBiasSlopeFactor == rhs.depthBiasSlopeFactor )
- && ( lineWidth == rhs.lineWidth );
- }
-
- bool operator!=( PipelineRasterizationStateCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineRasterizationStateCreateInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::PipelineRasterizationStateCreateFlags flags = {};
- VULKAN_HPP_NAMESPACE::Bool32 depthClampEnable = {};
- VULKAN_HPP_NAMESPACE::Bool32 rasterizerDiscardEnable = {};
- VULKAN_HPP_NAMESPACE::PolygonMode polygonMode = VULKAN_HPP_NAMESPACE::PolygonMode::eFill;
- VULKAN_HPP_NAMESPACE::CullModeFlags cullMode = {};
- VULKAN_HPP_NAMESPACE::FrontFace frontFace = VULKAN_HPP_NAMESPACE::FrontFace::eCounterClockwise;
- VULKAN_HPP_NAMESPACE::Bool32 depthBiasEnable = {};
- float depthBiasConstantFactor = {};
- float depthBiasClamp = {};
- float depthBiasSlopeFactor = {};
- float lineWidth = {};
-
- };
- static_assert( sizeof( PipelineRasterizationStateCreateInfo ) == sizeof( VkPipelineRasterizationStateCreateInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PipelineRasterizationStateCreateInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePipelineRasterizationStateCreateInfo>
+ struct StructExtends<PhysicalDeviceComputeShaderDerivativesFeaturesNV, PhysicalDeviceFeatures2>
{
- using Type = PipelineRasterizationStateCreateInfo;
- };
-
- struct PipelineMultisampleStateCreateInfo
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineMultisampleStateCreateInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PipelineMultisampleStateCreateInfo(VULKAN_HPP_NAMESPACE::PipelineMultisampleStateCreateFlags flags_ = {}, VULKAN_HPP_NAMESPACE::SampleCountFlagBits rasterizationSamples_ = VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1, VULKAN_HPP_NAMESPACE::Bool32 sampleShadingEnable_ = {}, float minSampleShading_ = {}, const VULKAN_HPP_NAMESPACE::SampleMask* pSampleMask_ = {}, VULKAN_HPP_NAMESPACE::Bool32 alphaToCoverageEnable_ = {}, VULKAN_HPP_NAMESPACE::Bool32 alphaToOneEnable_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), rasterizationSamples( rasterizationSamples_ ), sampleShadingEnable( sampleShadingEnable_ ), minSampleShading( minSampleShading_ ), pSampleMask( pSampleMask_ ), alphaToCoverageEnable( alphaToCoverageEnable_ ), alphaToOneEnable( alphaToOneEnable_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PipelineMultisampleStateCreateInfo( PipelineMultisampleStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PipelineMultisampleStateCreateInfo( VkPipelineMultisampleStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PipelineMultisampleStateCreateInfo & operator=( VkPipelineMultisampleStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineMultisampleStateCreateInfo const *>( &rhs );
- return *this;
- }
-
- PipelineMultisampleStateCreateInfo & operator=( PipelineMultisampleStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PipelineMultisampleStateCreateInfo ) );
- return *this;
- }
-
- PipelineMultisampleStateCreateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PipelineMultisampleStateCreateInfo & setFlags( VULKAN_HPP_NAMESPACE::PipelineMultisampleStateCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- PipelineMultisampleStateCreateInfo & setRasterizationSamples( VULKAN_HPP_NAMESPACE::SampleCountFlagBits rasterizationSamples_ ) VULKAN_HPP_NOEXCEPT
- {
- rasterizationSamples = rasterizationSamples_;
- return *this;
- }
-
- PipelineMultisampleStateCreateInfo & setSampleShadingEnable( VULKAN_HPP_NAMESPACE::Bool32 sampleShadingEnable_ ) VULKAN_HPP_NOEXCEPT
- {
- sampleShadingEnable = sampleShadingEnable_;
- return *this;
- }
-
- PipelineMultisampleStateCreateInfo & setMinSampleShading( float minSampleShading_ ) VULKAN_HPP_NOEXCEPT
- {
- minSampleShading = minSampleShading_;
- return *this;
- }
-
- PipelineMultisampleStateCreateInfo & setPSampleMask( const VULKAN_HPP_NAMESPACE::SampleMask* pSampleMask_ ) VULKAN_HPP_NOEXCEPT
- {
- pSampleMask = pSampleMask_;
- return *this;
- }
-
- PipelineMultisampleStateCreateInfo & setAlphaToCoverageEnable( VULKAN_HPP_NAMESPACE::Bool32 alphaToCoverageEnable_ ) VULKAN_HPP_NOEXCEPT
- {
- alphaToCoverageEnable = alphaToCoverageEnable_;
- return *this;
- }
-
- PipelineMultisampleStateCreateInfo & setAlphaToOneEnable( VULKAN_HPP_NAMESPACE::Bool32 alphaToOneEnable_ ) VULKAN_HPP_NOEXCEPT
- {
- alphaToOneEnable = alphaToOneEnable_;
- return *this;
- }
-
-
- operator VkPipelineMultisampleStateCreateInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPipelineMultisampleStateCreateInfo*>( this );
- }
-
- operator VkPipelineMultisampleStateCreateInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPipelineMultisampleStateCreateInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PipelineMultisampleStateCreateInfo const& ) const = default;
-#else
- bool operator==( PipelineMultisampleStateCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( rasterizationSamples == rhs.rasterizationSamples )
- && ( sampleShadingEnable == rhs.sampleShadingEnable )
- && ( minSampleShading == rhs.minSampleShading )
- && ( pSampleMask == rhs.pSampleMask )
- && ( alphaToCoverageEnable == rhs.alphaToCoverageEnable )
- && ( alphaToOneEnable == rhs.alphaToOneEnable );
- }
-
- bool operator!=( PipelineMultisampleStateCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineMultisampleStateCreateInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::PipelineMultisampleStateCreateFlags flags = {};
- VULKAN_HPP_NAMESPACE::SampleCountFlagBits rasterizationSamples = VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1;
- VULKAN_HPP_NAMESPACE::Bool32 sampleShadingEnable = {};
- float minSampleShading = {};
- const VULKAN_HPP_NAMESPACE::SampleMask* pSampleMask = {};
- VULKAN_HPP_NAMESPACE::Bool32 alphaToCoverageEnable = {};
- VULKAN_HPP_NAMESPACE::Bool32 alphaToOneEnable = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PipelineMultisampleStateCreateInfo ) == sizeof( VkPipelineMultisampleStateCreateInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PipelineMultisampleStateCreateInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePipelineMultisampleStateCreateInfo>
+ struct StructExtends<PhysicalDeviceComputeShaderDerivativesFeaturesNV, DeviceCreateInfo>
{
- using Type = PipelineMultisampleStateCreateInfo;
- };
-
- struct StencilOpState
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR StencilOpState(VULKAN_HPP_NAMESPACE::StencilOp failOp_ = VULKAN_HPP_NAMESPACE::StencilOp::eKeep, VULKAN_HPP_NAMESPACE::StencilOp passOp_ = VULKAN_HPP_NAMESPACE::StencilOp::eKeep, VULKAN_HPP_NAMESPACE::StencilOp depthFailOp_ = VULKAN_HPP_NAMESPACE::StencilOp::eKeep, VULKAN_HPP_NAMESPACE::CompareOp compareOp_ = VULKAN_HPP_NAMESPACE::CompareOp::eNever, uint32_t compareMask_ = {}, uint32_t writeMask_ = {}, uint32_t reference_ = {}) VULKAN_HPP_NOEXCEPT
- : failOp( failOp_ ), passOp( passOp_ ), depthFailOp( depthFailOp_ ), compareOp( compareOp_ ), compareMask( compareMask_ ), writeMask( writeMask_ ), reference( reference_ )
- {}
-
- VULKAN_HPP_CONSTEXPR StencilOpState( StencilOpState const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- StencilOpState( VkStencilOpState const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- StencilOpState & operator=( VkStencilOpState const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::StencilOpState const *>( &rhs );
- return *this;
- }
-
- StencilOpState & operator=( StencilOpState const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( StencilOpState ) );
- return *this;
- }
-
- StencilOpState & setFailOp( VULKAN_HPP_NAMESPACE::StencilOp failOp_ ) VULKAN_HPP_NOEXCEPT
- {
- failOp = failOp_;
- return *this;
- }
-
- StencilOpState & setPassOp( VULKAN_HPP_NAMESPACE::StencilOp passOp_ ) VULKAN_HPP_NOEXCEPT
- {
- passOp = passOp_;
- return *this;
- }
-
- StencilOpState & setDepthFailOp( VULKAN_HPP_NAMESPACE::StencilOp depthFailOp_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- depthFailOp = depthFailOp_;
- return *this;
- }
-
- StencilOpState & setCompareOp( VULKAN_HPP_NAMESPACE::CompareOp compareOp_ ) VULKAN_HPP_NOEXCEPT
- {
- compareOp = compareOp_;
- return *this;
- }
-
- StencilOpState & setCompareMask( uint32_t compareMask_ ) VULKAN_HPP_NOEXCEPT
- {
- compareMask = compareMask_;
- return *this;
- }
-
- StencilOpState & setWriteMask( uint32_t writeMask_ ) VULKAN_HPP_NOEXCEPT
- {
- writeMask = writeMask_;
- return *this;
- }
-
- StencilOpState & setReference( uint32_t reference_ ) VULKAN_HPP_NOEXCEPT
- {
- reference = reference_;
- return *this;
- }
-
-
- operator VkStencilOpState const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkStencilOpState*>( this );
- }
-
- operator VkStencilOpState &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkStencilOpState*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( StencilOpState const& ) const = default;
-#else
- bool operator==( StencilOpState const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( failOp == rhs.failOp )
- && ( passOp == rhs.passOp )
- && ( depthFailOp == rhs.depthFailOp )
- && ( compareOp == rhs.compareOp )
- && ( compareMask == rhs.compareMask )
- && ( writeMask == rhs.writeMask )
- && ( reference == rhs.reference );
- }
-
- bool operator!=( StencilOpState const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::StencilOp failOp = VULKAN_HPP_NAMESPACE::StencilOp::eKeep;
- VULKAN_HPP_NAMESPACE::StencilOp passOp = VULKAN_HPP_NAMESPACE::StencilOp::eKeep;
- VULKAN_HPP_NAMESPACE::StencilOp depthFailOp = VULKAN_HPP_NAMESPACE::StencilOp::eKeep;
- VULKAN_HPP_NAMESPACE::CompareOp compareOp = VULKAN_HPP_NAMESPACE::CompareOp::eNever;
- uint32_t compareMask = {};
- uint32_t writeMask = {};
- uint32_t reference = {};
-
+ value = true
+ };
};
- static_assert( sizeof( StencilOpState ) == sizeof( VkStencilOpState ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<StencilOpState>::value, "struct wrapper is not a standard layout!" );
-
- struct PipelineDepthStencilStateCreateInfo
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineDepthStencilStateCreateInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PipelineDepthStencilStateCreateInfo(VULKAN_HPP_NAMESPACE::PipelineDepthStencilStateCreateFlags flags_ = {}, VULKAN_HPP_NAMESPACE::Bool32 depthTestEnable_ = {}, VULKAN_HPP_NAMESPACE::Bool32 depthWriteEnable_ = {}, VULKAN_HPP_NAMESPACE::CompareOp depthCompareOp_ = VULKAN_HPP_NAMESPACE::CompareOp::eNever, VULKAN_HPP_NAMESPACE::Bool32 depthBoundsTestEnable_ = {}, VULKAN_HPP_NAMESPACE::Bool32 stencilTestEnable_ = {}, VULKAN_HPP_NAMESPACE::StencilOpState front_ = {}, VULKAN_HPP_NAMESPACE::StencilOpState back_ = {}, float minDepthBounds_ = {}, float maxDepthBounds_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), depthTestEnable( depthTestEnable_ ), depthWriteEnable( depthWriteEnable_ ), depthCompareOp( depthCompareOp_ ), depthBoundsTestEnable( depthBoundsTestEnable_ ), stencilTestEnable( stencilTestEnable_ ), front( front_ ), back( back_ ), minDepthBounds( minDepthBounds_ ), maxDepthBounds( maxDepthBounds_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PipelineDepthStencilStateCreateInfo( PipelineDepthStencilStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PipelineDepthStencilStateCreateInfo( VkPipelineDepthStencilStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PipelineDepthStencilStateCreateInfo & operator=( VkPipelineDepthStencilStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineDepthStencilStateCreateInfo const *>( &rhs );
- return *this;
- }
-
- PipelineDepthStencilStateCreateInfo & operator=( PipelineDepthStencilStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PipelineDepthStencilStateCreateInfo ) );
- return *this;
- }
-
- PipelineDepthStencilStateCreateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PipelineDepthStencilStateCreateInfo & setFlags( VULKAN_HPP_NAMESPACE::PipelineDepthStencilStateCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- PipelineDepthStencilStateCreateInfo & setDepthTestEnable( VULKAN_HPP_NAMESPACE::Bool32 depthTestEnable_ ) VULKAN_HPP_NOEXCEPT
- {
- depthTestEnable = depthTestEnable_;
- return *this;
- }
-
- PipelineDepthStencilStateCreateInfo & setDepthWriteEnable( VULKAN_HPP_NAMESPACE::Bool32 depthWriteEnable_ ) VULKAN_HPP_NOEXCEPT
- {
- depthWriteEnable = depthWriteEnable_;
- return *this;
- }
-
- PipelineDepthStencilStateCreateInfo & setDepthCompareOp( VULKAN_HPP_NAMESPACE::CompareOp depthCompareOp_ ) VULKAN_HPP_NOEXCEPT
- {
- depthCompareOp = depthCompareOp_;
- return *this;
- }
-
- PipelineDepthStencilStateCreateInfo & setDepthBoundsTestEnable( VULKAN_HPP_NAMESPACE::Bool32 depthBoundsTestEnable_ ) VULKAN_HPP_NOEXCEPT
- {
- depthBoundsTestEnable = depthBoundsTestEnable_;
- return *this;
- }
-
- PipelineDepthStencilStateCreateInfo & setStencilTestEnable( VULKAN_HPP_NAMESPACE::Bool32 stencilTestEnable_ ) VULKAN_HPP_NOEXCEPT
- {
- stencilTestEnable = stencilTestEnable_;
- return *this;
- }
-
- PipelineDepthStencilStateCreateInfo & setFront( VULKAN_HPP_NAMESPACE::StencilOpState const & front_ ) VULKAN_HPP_NOEXCEPT
- {
- front = front_;
- return *this;
- }
-
- PipelineDepthStencilStateCreateInfo & setBack( VULKAN_HPP_NAMESPACE::StencilOpState const & back_ ) VULKAN_HPP_NOEXCEPT
- {
- back = back_;
- return *this;
- }
-
- PipelineDepthStencilStateCreateInfo & setMinDepthBounds( float minDepthBounds_ ) VULKAN_HPP_NOEXCEPT
- {
- minDepthBounds = minDepthBounds_;
- return *this;
- }
-
- PipelineDepthStencilStateCreateInfo & setMaxDepthBounds( float maxDepthBounds_ ) VULKAN_HPP_NOEXCEPT
- {
- maxDepthBounds = maxDepthBounds_;
- return *this;
- }
-
-
- operator VkPipelineDepthStencilStateCreateInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPipelineDepthStencilStateCreateInfo*>( this );
- }
-
- operator VkPipelineDepthStencilStateCreateInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPipelineDepthStencilStateCreateInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PipelineDepthStencilStateCreateInfo const& ) const = default;
-#else
- bool operator==( PipelineDepthStencilStateCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( depthTestEnable == rhs.depthTestEnable )
- && ( depthWriteEnable == rhs.depthWriteEnable )
- && ( depthCompareOp == rhs.depthCompareOp )
- && ( depthBoundsTestEnable == rhs.depthBoundsTestEnable )
- && ( stencilTestEnable == rhs.stencilTestEnable )
- && ( front == rhs.front )
- && ( back == rhs.back )
- && ( minDepthBounds == rhs.minDepthBounds )
- && ( maxDepthBounds == rhs.maxDepthBounds );
- }
-
- bool operator!=( PipelineDepthStencilStateCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineDepthStencilStateCreateInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::PipelineDepthStencilStateCreateFlags flags = {};
- VULKAN_HPP_NAMESPACE::Bool32 depthTestEnable = {};
- VULKAN_HPP_NAMESPACE::Bool32 depthWriteEnable = {};
- VULKAN_HPP_NAMESPACE::CompareOp depthCompareOp = VULKAN_HPP_NAMESPACE::CompareOp::eNever;
- VULKAN_HPP_NAMESPACE::Bool32 depthBoundsTestEnable = {};
- VULKAN_HPP_NAMESPACE::Bool32 stencilTestEnable = {};
- VULKAN_HPP_NAMESPACE::StencilOpState front = {};
- VULKAN_HPP_NAMESPACE::StencilOpState back = {};
- float minDepthBounds = {};
- float maxDepthBounds = {};
-
- };
- static_assert( sizeof( PipelineDepthStencilStateCreateInfo ) == sizeof( VkPipelineDepthStencilStateCreateInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PipelineDepthStencilStateCreateInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePipelineDepthStencilStateCreateInfo>
- {
- using Type = PipelineDepthStencilStateCreateInfo;
- };
-
- struct PipelineColorBlendAttachmentState
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PipelineColorBlendAttachmentState(VULKAN_HPP_NAMESPACE::Bool32 blendEnable_ = {}, VULKAN_HPP_NAMESPACE::BlendFactor srcColorBlendFactor_ = VULKAN_HPP_NAMESPACE::BlendFactor::eZero, VULKAN_HPP_NAMESPACE::BlendFactor dstColorBlendFactor_ = VULKAN_HPP_NAMESPACE::BlendFactor::eZero, VULKAN_HPP_NAMESPACE::BlendOp colorBlendOp_ = VULKAN_HPP_NAMESPACE::BlendOp::eAdd, VULKAN_HPP_NAMESPACE::BlendFactor srcAlphaBlendFactor_ = VULKAN_HPP_NAMESPACE::BlendFactor::eZero, VULKAN_HPP_NAMESPACE::BlendFactor dstAlphaBlendFactor_ = VULKAN_HPP_NAMESPACE::BlendFactor::eZero, VULKAN_HPP_NAMESPACE::BlendOp alphaBlendOp_ = VULKAN_HPP_NAMESPACE::BlendOp::eAdd, VULKAN_HPP_NAMESPACE::ColorComponentFlags colorWriteMask_ = {}) VULKAN_HPP_NOEXCEPT
- : blendEnable( blendEnable_ ), srcColorBlendFactor( srcColorBlendFactor_ ), dstColorBlendFactor( dstColorBlendFactor_ ), colorBlendOp( colorBlendOp_ ), srcAlphaBlendFactor( srcAlphaBlendFactor_ ), dstAlphaBlendFactor( dstAlphaBlendFactor_ ), alphaBlendOp( alphaBlendOp_ ), colorWriteMask( colorWriteMask_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PipelineColorBlendAttachmentState( PipelineColorBlendAttachmentState const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PipelineColorBlendAttachmentState( VkPipelineColorBlendAttachmentState const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PipelineColorBlendAttachmentState & operator=( VkPipelineColorBlendAttachmentState const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineColorBlendAttachmentState const *>( &rhs );
- return *this;
- }
-
- PipelineColorBlendAttachmentState & operator=( PipelineColorBlendAttachmentState const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PipelineColorBlendAttachmentState ) );
- return *this;
- }
-
- PipelineColorBlendAttachmentState & setBlendEnable( VULKAN_HPP_NAMESPACE::Bool32 blendEnable_ ) VULKAN_HPP_NOEXCEPT
- {
- blendEnable = blendEnable_;
- return *this;
- }
-
- PipelineColorBlendAttachmentState & setSrcColorBlendFactor( VULKAN_HPP_NAMESPACE::BlendFactor srcColorBlendFactor_ ) VULKAN_HPP_NOEXCEPT
- {
- srcColorBlendFactor = srcColorBlendFactor_;
- return *this;
- }
-
- PipelineColorBlendAttachmentState & setDstColorBlendFactor( VULKAN_HPP_NAMESPACE::BlendFactor dstColorBlendFactor_ ) VULKAN_HPP_NOEXCEPT
- {
- dstColorBlendFactor = dstColorBlendFactor_;
- return *this;
- }
-
- PipelineColorBlendAttachmentState & setColorBlendOp( VULKAN_HPP_NAMESPACE::BlendOp colorBlendOp_ ) VULKAN_HPP_NOEXCEPT
- {
- colorBlendOp = colorBlendOp_;
- return *this;
- }
-
- PipelineColorBlendAttachmentState & setSrcAlphaBlendFactor( VULKAN_HPP_NAMESPACE::BlendFactor srcAlphaBlendFactor_ ) VULKAN_HPP_NOEXCEPT
- {
- srcAlphaBlendFactor = srcAlphaBlendFactor_;
- return *this;
- }
-
- PipelineColorBlendAttachmentState & setDstAlphaBlendFactor( VULKAN_HPP_NAMESPACE::BlendFactor dstAlphaBlendFactor_ ) VULKAN_HPP_NOEXCEPT
- {
- dstAlphaBlendFactor = dstAlphaBlendFactor_;
- return *this;
- }
-
- PipelineColorBlendAttachmentState & setAlphaBlendOp( VULKAN_HPP_NAMESPACE::BlendOp alphaBlendOp_ ) VULKAN_HPP_NOEXCEPT
- {
- alphaBlendOp = alphaBlendOp_;
- return *this;
- }
-
- PipelineColorBlendAttachmentState & setColorWriteMask( VULKAN_HPP_NAMESPACE::ColorComponentFlags colorWriteMask_ ) VULKAN_HPP_NOEXCEPT
- {
- colorWriteMask = colorWriteMask_;
- return *this;
- }
-
-
- operator VkPipelineColorBlendAttachmentState const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPipelineColorBlendAttachmentState*>( this );
- }
-
- operator VkPipelineColorBlendAttachmentState &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPipelineColorBlendAttachmentState*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PipelineColorBlendAttachmentState const& ) const = default;
-#else
- bool operator==( PipelineColorBlendAttachmentState const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( blendEnable == rhs.blendEnable )
- && ( srcColorBlendFactor == rhs.srcColorBlendFactor )
- && ( dstColorBlendFactor == rhs.dstColorBlendFactor )
- && ( colorBlendOp == rhs.colorBlendOp )
- && ( srcAlphaBlendFactor == rhs.srcAlphaBlendFactor )
- && ( dstAlphaBlendFactor == rhs.dstAlphaBlendFactor )
- && ( alphaBlendOp == rhs.alphaBlendOp )
- && ( colorWriteMask == rhs.colorWriteMask );
- }
-
- bool operator!=( PipelineColorBlendAttachmentState const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::Bool32 blendEnable = {};
- VULKAN_HPP_NAMESPACE::BlendFactor srcColorBlendFactor = VULKAN_HPP_NAMESPACE::BlendFactor::eZero;
- VULKAN_HPP_NAMESPACE::BlendFactor dstColorBlendFactor = VULKAN_HPP_NAMESPACE::BlendFactor::eZero;
- VULKAN_HPP_NAMESPACE::BlendOp colorBlendOp = VULKAN_HPP_NAMESPACE::BlendOp::eAdd;
- VULKAN_HPP_NAMESPACE::BlendFactor srcAlphaBlendFactor = VULKAN_HPP_NAMESPACE::BlendFactor::eZero;
- VULKAN_HPP_NAMESPACE::BlendFactor dstAlphaBlendFactor = VULKAN_HPP_NAMESPACE::BlendFactor::eZero;
- VULKAN_HPP_NAMESPACE::BlendOp alphaBlendOp = VULKAN_HPP_NAMESPACE::BlendOp::eAdd;
- VULKAN_HPP_NAMESPACE::ColorComponentFlags colorWriteMask = {};
-
- };
- static_assert( sizeof( PipelineColorBlendAttachmentState ) == sizeof( VkPipelineColorBlendAttachmentState ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PipelineColorBlendAttachmentState>::value, "struct wrapper is not a standard layout!" );
-
- struct PipelineColorBlendStateCreateInfo
+ struct StructExtends<PhysicalDeviceConditionalRenderingFeaturesEXT, PhysicalDeviceFeatures2>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineColorBlendStateCreateInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR_14 PipelineColorBlendStateCreateInfo(VULKAN_HPP_NAMESPACE::PipelineColorBlendStateCreateFlags flags_ = {}, VULKAN_HPP_NAMESPACE::Bool32 logicOpEnable_ = {}, VULKAN_HPP_NAMESPACE::LogicOp logicOp_ = VULKAN_HPP_NAMESPACE::LogicOp::eClear, uint32_t attachmentCount_ = {}, const VULKAN_HPP_NAMESPACE::PipelineColorBlendAttachmentState* pAttachments_ = {}, std::array<float,4> const& blendConstants_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), logicOpEnable( logicOpEnable_ ), logicOp( logicOp_ ), attachmentCount( attachmentCount_ ), pAttachments( pAttachments_ ), blendConstants( blendConstants_ )
- {}
-
- VULKAN_HPP_CONSTEXPR_14 PipelineColorBlendStateCreateInfo( PipelineColorBlendStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PipelineColorBlendStateCreateInfo( VkPipelineColorBlendStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- PipelineColorBlendStateCreateInfo( VULKAN_HPP_NAMESPACE::PipelineColorBlendStateCreateFlags flags_, VULKAN_HPP_NAMESPACE::Bool32 logicOpEnable_, VULKAN_HPP_NAMESPACE::LogicOp logicOp_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::PipelineColorBlendAttachmentState> const & attachments_, std::array<float,4> const& blendConstants_ = {} )
- : flags( flags_ ), logicOpEnable( logicOpEnable_ ), logicOp( logicOp_ ), attachmentCount( static_cast<uint32_t>( attachments_.size() ) ), pAttachments( attachments_.data() ), blendConstants( blendConstants_ )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PipelineColorBlendStateCreateInfo & operator=( VkPipelineColorBlendStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineColorBlendStateCreateInfo const *>( &rhs );
- return *this;
- }
-
- PipelineColorBlendStateCreateInfo & operator=( PipelineColorBlendStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PipelineColorBlendStateCreateInfo ) );
- return *this;
- }
-
- PipelineColorBlendStateCreateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PipelineColorBlendStateCreateInfo & setFlags( VULKAN_HPP_NAMESPACE::PipelineColorBlendStateCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- flags = flags_;
- return *this;
- }
-
- PipelineColorBlendStateCreateInfo & setLogicOpEnable( VULKAN_HPP_NAMESPACE::Bool32 logicOpEnable_ ) VULKAN_HPP_NOEXCEPT
- {
- logicOpEnable = logicOpEnable_;
- return *this;
- }
-
- PipelineColorBlendStateCreateInfo & setLogicOp( VULKAN_HPP_NAMESPACE::LogicOp logicOp_ ) VULKAN_HPP_NOEXCEPT
- {
- logicOp = logicOp_;
- return *this;
- }
-
- PipelineColorBlendStateCreateInfo & setAttachmentCount( uint32_t attachmentCount_ ) VULKAN_HPP_NOEXCEPT
- {
- attachmentCount = attachmentCount_;
- return *this;
- }
-
- PipelineColorBlendStateCreateInfo & setPAttachments( const VULKAN_HPP_NAMESPACE::PipelineColorBlendAttachmentState* pAttachments_ ) VULKAN_HPP_NOEXCEPT
- {
- pAttachments = pAttachments_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- PipelineColorBlendStateCreateInfo & setAttachments( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::PipelineColorBlendAttachmentState> const & attachments_ ) VULKAN_HPP_NOEXCEPT
- {
- attachmentCount = static_cast<uint32_t>( attachments_.size() );
- pAttachments = attachments_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- PipelineColorBlendStateCreateInfo & setBlendConstants( std::array<float,4> blendConstants_ ) VULKAN_HPP_NOEXCEPT
- {
- blendConstants = blendConstants_;
- return *this;
- }
-
-
- operator VkPipelineColorBlendStateCreateInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPipelineColorBlendStateCreateInfo*>( this );
- }
-
- operator VkPipelineColorBlendStateCreateInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPipelineColorBlendStateCreateInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PipelineColorBlendStateCreateInfo const& ) const = default;
-#else
- bool operator==( PipelineColorBlendStateCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( logicOpEnable == rhs.logicOpEnable )
- && ( logicOp == rhs.logicOp )
- && ( attachmentCount == rhs.attachmentCount )
- && ( pAttachments == rhs.pAttachments )
- && ( blendConstants == rhs.blendConstants );
- }
-
- bool operator!=( PipelineColorBlendStateCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineColorBlendStateCreateInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::PipelineColorBlendStateCreateFlags flags = {};
- VULKAN_HPP_NAMESPACE::Bool32 logicOpEnable = {};
- VULKAN_HPP_NAMESPACE::LogicOp logicOp = VULKAN_HPP_NAMESPACE::LogicOp::eClear;
- uint32_t attachmentCount = {};
- const VULKAN_HPP_NAMESPACE::PipelineColorBlendAttachmentState* pAttachments = {};
- VULKAN_HPP_NAMESPACE::ArrayWrapper1D<float, 4> blendConstants = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PipelineColorBlendStateCreateInfo ) == sizeof( VkPipelineColorBlendStateCreateInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PipelineColorBlendStateCreateInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePipelineColorBlendStateCreateInfo>
+ struct StructExtends<PhysicalDeviceConditionalRenderingFeaturesEXT, DeviceCreateInfo>
{
- using Type = PipelineColorBlendStateCreateInfo;
- };
-
- struct PipelineDynamicStateCreateInfo
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineDynamicStateCreateInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PipelineDynamicStateCreateInfo(VULKAN_HPP_NAMESPACE::PipelineDynamicStateCreateFlags flags_ = {}, uint32_t dynamicStateCount_ = {}, const VULKAN_HPP_NAMESPACE::DynamicState* pDynamicStates_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), dynamicStateCount( dynamicStateCount_ ), pDynamicStates( pDynamicStates_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PipelineDynamicStateCreateInfo( PipelineDynamicStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PipelineDynamicStateCreateInfo( VkPipelineDynamicStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- PipelineDynamicStateCreateInfo( VULKAN_HPP_NAMESPACE::PipelineDynamicStateCreateFlags flags_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DynamicState> const & dynamicStates_ )
- : flags( flags_ ), dynamicStateCount( static_cast<uint32_t>( dynamicStates_.size() ) ), pDynamicStates( dynamicStates_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PipelineDynamicStateCreateInfo & operator=( VkPipelineDynamicStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineDynamicStateCreateInfo const *>( &rhs );
- return *this;
- }
-
- PipelineDynamicStateCreateInfo & operator=( PipelineDynamicStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PipelineDynamicStateCreateInfo ) );
- return *this;
- }
-
- PipelineDynamicStateCreateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PipelineDynamicStateCreateInfo & setFlags( VULKAN_HPP_NAMESPACE::PipelineDynamicStateCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- PipelineDynamicStateCreateInfo & setDynamicStateCount( uint32_t dynamicStateCount_ ) VULKAN_HPP_NOEXCEPT
- {
- dynamicStateCount = dynamicStateCount_;
- return *this;
- }
-
- PipelineDynamicStateCreateInfo & setPDynamicStates( const VULKAN_HPP_NAMESPACE::DynamicState* pDynamicStates_ ) VULKAN_HPP_NOEXCEPT
- {
- pDynamicStates = pDynamicStates_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- PipelineDynamicStateCreateInfo & setDynamicStates( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DynamicState> const & dynamicStates_ ) VULKAN_HPP_NOEXCEPT
- {
- dynamicStateCount = static_cast<uint32_t>( dynamicStates_.size() );
- pDynamicStates = dynamicStates_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkPipelineDynamicStateCreateInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPipelineDynamicStateCreateInfo*>( this );
- }
-
- operator VkPipelineDynamicStateCreateInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPipelineDynamicStateCreateInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PipelineDynamicStateCreateInfo const& ) const = default;
-#else
- bool operator==( PipelineDynamicStateCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( dynamicStateCount == rhs.dynamicStateCount )
- && ( pDynamicStates == rhs.pDynamicStates );
- }
-
- bool operator!=( PipelineDynamicStateCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineDynamicStateCreateInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::PipelineDynamicStateCreateFlags flags = {};
- uint32_t dynamicStateCount = {};
- const VULKAN_HPP_NAMESPACE::DynamicState* pDynamicStates = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PipelineDynamicStateCreateInfo ) == sizeof( VkPipelineDynamicStateCreateInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PipelineDynamicStateCreateInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePipelineDynamicStateCreateInfo>
- {
- using Type = PipelineDynamicStateCreateInfo;
- };
-
- struct GraphicsPipelineCreateInfo
+ struct StructExtends<PhysicalDeviceConservativeRasterizationPropertiesEXT, PhysicalDeviceProperties2>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eGraphicsPipelineCreateInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR_14 GraphicsPipelineCreateInfo(VULKAN_HPP_NAMESPACE::PipelineCreateFlags flags_ = {}, uint32_t stageCount_ = {}, const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo* pStages_ = {}, const VULKAN_HPP_NAMESPACE::PipelineVertexInputStateCreateInfo* pVertexInputState_ = {}, const VULKAN_HPP_NAMESPACE::PipelineInputAssemblyStateCreateInfo* pInputAssemblyState_ = {}, const VULKAN_HPP_NAMESPACE::PipelineTessellationStateCreateInfo* pTessellationState_ = {}, const VULKAN_HPP_NAMESPACE::PipelineViewportStateCreateInfo* pViewportState_ = {}, const VULKAN_HPP_NAMESPACE::PipelineRasterizationStateCreateInfo* pRasterizationState_ = {}, const VULKAN_HPP_NAMESPACE::PipelineMultisampleStateCreateInfo* pMultisampleState_ = {}, const VULKAN_HPP_NAMESPACE::PipelineDepthStencilStateCreateInfo* pDepthStencilState_ = {}, const VULKAN_HPP_NAMESPACE::PipelineColorBlendStateCreateInfo* pColorBlendState_ = {}, const VULKAN_HPP_NAMESPACE::PipelineDynamicStateCreateInfo* pDynamicState_ = {}, VULKAN_HPP_NAMESPACE::PipelineLayout layout_ = {}, VULKAN_HPP_NAMESPACE::RenderPass renderPass_ = {}, uint32_t subpass_ = {}, VULKAN_HPP_NAMESPACE::Pipeline basePipelineHandle_ = {}, int32_t basePipelineIndex_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), stageCount( stageCount_ ), pStages( pStages_ ), pVertexInputState( pVertexInputState_ ), pInputAssemblyState( pInputAssemblyState_ ), pTessellationState( pTessellationState_ ), pViewportState( pViewportState_ ), pRasterizationState( pRasterizationState_ ), pMultisampleState( pMultisampleState_ ), pDepthStencilState( pDepthStencilState_ ), pColorBlendState( pColorBlendState_ ), pDynamicState( pDynamicState_ ), layout( layout_ ), renderPass( renderPass_ ), subpass( subpass_ ), basePipelineHandle( basePipelineHandle_ ), basePipelineIndex( basePipelineIndex_ )
- {}
-
- VULKAN_HPP_CONSTEXPR_14 GraphicsPipelineCreateInfo( GraphicsPipelineCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- GraphicsPipelineCreateInfo( VkGraphicsPipelineCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- GraphicsPipelineCreateInfo( VULKAN_HPP_NAMESPACE::PipelineCreateFlags flags_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo> const & stages_, const VULKAN_HPP_NAMESPACE::PipelineVertexInputStateCreateInfo* pVertexInputState_ = {}, const VULKAN_HPP_NAMESPACE::PipelineInputAssemblyStateCreateInfo* pInputAssemblyState_ = {}, const VULKAN_HPP_NAMESPACE::PipelineTessellationStateCreateInfo* pTessellationState_ = {}, const VULKAN_HPP_NAMESPACE::PipelineViewportStateCreateInfo* pViewportState_ = {}, const VULKAN_HPP_NAMESPACE::PipelineRasterizationStateCreateInfo* pRasterizationState_ = {}, const VULKAN_HPP_NAMESPACE::PipelineMultisampleStateCreateInfo* pMultisampleState_ = {}, const VULKAN_HPP_NAMESPACE::PipelineDepthStencilStateCreateInfo* pDepthStencilState_ = {}, const VULKAN_HPP_NAMESPACE::PipelineColorBlendStateCreateInfo* pColorBlendState_ = {}, const VULKAN_HPP_NAMESPACE::PipelineDynamicStateCreateInfo* pDynamicState_ = {}, VULKAN_HPP_NAMESPACE::PipelineLayout layout_ = {}, VULKAN_HPP_NAMESPACE::RenderPass renderPass_ = {}, uint32_t subpass_ = {}, VULKAN_HPP_NAMESPACE::Pipeline basePipelineHandle_ = {}, int32_t basePipelineIndex_ = {} )
- : flags( flags_ ), stageCount( static_cast<uint32_t>( stages_.size() ) ), pStages( stages_.data() ), pVertexInputState( pVertexInputState_ ), pInputAssemblyState( pInputAssemblyState_ ), pTessellationState( pTessellationState_ ), pViewportState( pViewportState_ ), pRasterizationState( pRasterizationState_ ), pMultisampleState( pMultisampleState_ ), pDepthStencilState( pDepthStencilState_ ), pColorBlendState( pColorBlendState_ ), pDynamicState( pDynamicState_ ), layout( layout_ ), renderPass( renderPass_ ), subpass( subpass_ ), basePipelineHandle( basePipelineHandle_ ), basePipelineIndex( basePipelineIndex_ )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- GraphicsPipelineCreateInfo & operator=( VkGraphicsPipelineCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::GraphicsPipelineCreateInfo const *>( &rhs );
- return *this;
- }
-
- GraphicsPipelineCreateInfo & operator=( GraphicsPipelineCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( GraphicsPipelineCreateInfo ) );
- return *this;
- }
-
- GraphicsPipelineCreateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- GraphicsPipelineCreateInfo & setFlags( VULKAN_HPP_NAMESPACE::PipelineCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- GraphicsPipelineCreateInfo & setStageCount( uint32_t stageCount_ ) VULKAN_HPP_NOEXCEPT
- {
- stageCount = stageCount_;
- return *this;
- }
-
- GraphicsPipelineCreateInfo & setPStages( const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo* pStages_ ) VULKAN_HPP_NOEXCEPT
- {
- pStages = pStages_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- GraphicsPipelineCreateInfo & setStages( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo> const & stages_ ) VULKAN_HPP_NOEXCEPT
- {
- stageCount = static_cast<uint32_t>( stages_.size() );
- pStages = stages_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- GraphicsPipelineCreateInfo & setPVertexInputState( const VULKAN_HPP_NAMESPACE::PipelineVertexInputStateCreateInfo* pVertexInputState_ ) VULKAN_HPP_NOEXCEPT
- {
- pVertexInputState = pVertexInputState_;
- return *this;
- }
-
- GraphicsPipelineCreateInfo & setPInputAssemblyState( const VULKAN_HPP_NAMESPACE::PipelineInputAssemblyStateCreateInfo* pInputAssemblyState_ ) VULKAN_HPP_NOEXCEPT
- {
- pInputAssemblyState = pInputAssemblyState_;
- return *this;
- }
-
- GraphicsPipelineCreateInfo & setPTessellationState( const VULKAN_HPP_NAMESPACE::PipelineTessellationStateCreateInfo* pTessellationState_ ) VULKAN_HPP_NOEXCEPT
- {
- pTessellationState = pTessellationState_;
- return *this;
- }
-
- GraphicsPipelineCreateInfo & setPViewportState( const VULKAN_HPP_NAMESPACE::PipelineViewportStateCreateInfo* pViewportState_ ) VULKAN_HPP_NOEXCEPT
- {
- pViewportState = pViewportState_;
- return *this;
- }
-
- GraphicsPipelineCreateInfo & setPRasterizationState( const VULKAN_HPP_NAMESPACE::PipelineRasterizationStateCreateInfo* pRasterizationState_ ) VULKAN_HPP_NOEXCEPT
- {
- pRasterizationState = pRasterizationState_;
- return *this;
- }
-
- GraphicsPipelineCreateInfo & setPMultisampleState( const VULKAN_HPP_NAMESPACE::PipelineMultisampleStateCreateInfo* pMultisampleState_ ) VULKAN_HPP_NOEXCEPT
- {
- pMultisampleState = pMultisampleState_;
- return *this;
- }
-
- GraphicsPipelineCreateInfo & setPDepthStencilState( const VULKAN_HPP_NAMESPACE::PipelineDepthStencilStateCreateInfo* pDepthStencilState_ ) VULKAN_HPP_NOEXCEPT
- {
- pDepthStencilState = pDepthStencilState_;
- return *this;
- }
-
- GraphicsPipelineCreateInfo & setPColorBlendState( const VULKAN_HPP_NAMESPACE::PipelineColorBlendStateCreateInfo* pColorBlendState_ ) VULKAN_HPP_NOEXCEPT
- {
- pColorBlendState = pColorBlendState_;
- return *this;
- }
-
- GraphicsPipelineCreateInfo & setPDynamicState( const VULKAN_HPP_NAMESPACE::PipelineDynamicStateCreateInfo* pDynamicState_ ) VULKAN_HPP_NOEXCEPT
- {
- pDynamicState = pDynamicState_;
- return *this;
- }
-
- GraphicsPipelineCreateInfo & setLayout( VULKAN_HPP_NAMESPACE::PipelineLayout layout_ ) VULKAN_HPP_NOEXCEPT
- {
- layout = layout_;
- return *this;
- }
-
- GraphicsPipelineCreateInfo & setRenderPass( VULKAN_HPP_NAMESPACE::RenderPass renderPass_ ) VULKAN_HPP_NOEXCEPT
- {
- renderPass = renderPass_;
- return *this;
- }
-
- GraphicsPipelineCreateInfo & setSubpass( uint32_t subpass_ ) VULKAN_HPP_NOEXCEPT
- {
- subpass = subpass_;
- return *this;
- }
-
- GraphicsPipelineCreateInfo & setBasePipelineHandle( VULKAN_HPP_NAMESPACE::Pipeline basePipelineHandle_ ) VULKAN_HPP_NOEXCEPT
- {
- basePipelineHandle = basePipelineHandle_;
- return *this;
- }
-
- GraphicsPipelineCreateInfo & setBasePipelineIndex( int32_t basePipelineIndex_ ) VULKAN_HPP_NOEXCEPT
- {
- basePipelineIndex = basePipelineIndex_;
- return *this;
- }
-
-
- operator VkGraphicsPipelineCreateInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkGraphicsPipelineCreateInfo*>( this );
- }
-
- operator VkGraphicsPipelineCreateInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkGraphicsPipelineCreateInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( GraphicsPipelineCreateInfo const& ) const = default;
-#else
- bool operator==( GraphicsPipelineCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( stageCount == rhs.stageCount )
- && ( pStages == rhs.pStages )
- && ( pVertexInputState == rhs.pVertexInputState )
- && ( pInputAssemblyState == rhs.pInputAssemblyState )
- && ( pTessellationState == rhs.pTessellationState )
- && ( pViewportState == rhs.pViewportState )
- && ( pRasterizationState == rhs.pRasterizationState )
- && ( pMultisampleState == rhs.pMultisampleState )
- && ( pDepthStencilState == rhs.pDepthStencilState )
- && ( pColorBlendState == rhs.pColorBlendState )
- && ( pDynamicState == rhs.pDynamicState )
- && ( layout == rhs.layout )
- && ( renderPass == rhs.renderPass )
- && ( subpass == rhs.subpass )
- && ( basePipelineHandle == rhs.basePipelineHandle )
- && ( basePipelineIndex == rhs.basePipelineIndex );
- }
-
- bool operator!=( GraphicsPipelineCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eGraphicsPipelineCreateInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::PipelineCreateFlags flags = {};
- uint32_t stageCount = {};
- const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo* pStages = {};
- const VULKAN_HPP_NAMESPACE::PipelineVertexInputStateCreateInfo* pVertexInputState = {};
- const VULKAN_HPP_NAMESPACE::PipelineInputAssemblyStateCreateInfo* pInputAssemblyState = {};
- const VULKAN_HPP_NAMESPACE::PipelineTessellationStateCreateInfo* pTessellationState = {};
- const VULKAN_HPP_NAMESPACE::PipelineViewportStateCreateInfo* pViewportState = {};
- const VULKAN_HPP_NAMESPACE::PipelineRasterizationStateCreateInfo* pRasterizationState = {};
- const VULKAN_HPP_NAMESPACE::PipelineMultisampleStateCreateInfo* pMultisampleState = {};
- const VULKAN_HPP_NAMESPACE::PipelineDepthStencilStateCreateInfo* pDepthStencilState = {};
- const VULKAN_HPP_NAMESPACE::PipelineColorBlendStateCreateInfo* pColorBlendState = {};
- const VULKAN_HPP_NAMESPACE::PipelineDynamicStateCreateInfo* pDynamicState = {};
- VULKAN_HPP_NAMESPACE::PipelineLayout layout = {};
- VULKAN_HPP_NAMESPACE::RenderPass renderPass = {};
- uint32_t subpass = {};
- VULKAN_HPP_NAMESPACE::Pipeline basePipelineHandle = {};
- int32_t basePipelineIndex = {};
-
- };
- static_assert( sizeof( GraphicsPipelineCreateInfo ) == sizeof( VkGraphicsPipelineCreateInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<GraphicsPipelineCreateInfo>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::eGraphicsPipelineCreateInfo>
- {
- using Type = GraphicsPipelineCreateInfo;
+ value = true
+ };
};
-
- struct ImageCreateInfo
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImageCreateInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ImageCreateInfo(VULKAN_HPP_NAMESPACE::ImageCreateFlags flags_ = {}, VULKAN_HPP_NAMESPACE::ImageType imageType_ = VULKAN_HPP_NAMESPACE::ImageType::e1D, VULKAN_HPP_NAMESPACE::Format format_ = VULKAN_HPP_NAMESPACE::Format::eUndefined, VULKAN_HPP_NAMESPACE::Extent3D extent_ = {}, uint32_t mipLevels_ = {}, uint32_t arrayLayers_ = {}, VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples_ = VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1, VULKAN_HPP_NAMESPACE::ImageTiling tiling_ = VULKAN_HPP_NAMESPACE::ImageTiling::eOptimal, VULKAN_HPP_NAMESPACE::ImageUsageFlags usage_ = {}, VULKAN_HPP_NAMESPACE::SharingMode sharingMode_ = VULKAN_HPP_NAMESPACE::SharingMode::eExclusive, uint32_t queueFamilyIndexCount_ = {}, const uint32_t* pQueueFamilyIndices_ = {}, VULKAN_HPP_NAMESPACE::ImageLayout initialLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), imageType( imageType_ ), format( format_ ), extent( extent_ ), mipLevels( mipLevels_ ), arrayLayers( arrayLayers_ ), samples( samples_ ), tiling( tiling_ ), usage( usage_ ), sharingMode( sharingMode_ ), queueFamilyIndexCount( queueFamilyIndexCount_ ), pQueueFamilyIndices( pQueueFamilyIndices_ ), initialLayout( initialLayout_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ImageCreateInfo( ImageCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ImageCreateInfo( VkImageCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- ImageCreateInfo( VULKAN_HPP_NAMESPACE::ImageCreateFlags flags_, VULKAN_HPP_NAMESPACE::ImageType imageType_, VULKAN_HPP_NAMESPACE::Format format_, VULKAN_HPP_NAMESPACE::Extent3D extent_, uint32_t mipLevels_, uint32_t arrayLayers_, VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples_, VULKAN_HPP_NAMESPACE::ImageTiling tiling_, VULKAN_HPP_NAMESPACE::ImageUsageFlags usage_, VULKAN_HPP_NAMESPACE::SharingMode sharingMode_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & queueFamilyIndices_, VULKAN_HPP_NAMESPACE::ImageLayout initialLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined )
- : flags( flags_ ), imageType( imageType_ ), format( format_ ), extent( extent_ ), mipLevels( mipLevels_ ), arrayLayers( arrayLayers_ ), samples( samples_ ), tiling( tiling_ ), usage( usage_ ), sharingMode( sharingMode_ ), queueFamilyIndexCount( static_cast<uint32_t>( queueFamilyIndices_.size() ) ), pQueueFamilyIndices( queueFamilyIndices_.data() ), initialLayout( initialLayout_ )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ImageCreateInfo & operator=( VkImageCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageCreateInfo const *>( &rhs );
- return *this;
- }
-
- ImageCreateInfo & operator=( ImageCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ImageCreateInfo ) );
- return *this;
- }
-
- ImageCreateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- ImageCreateInfo & setFlags( VULKAN_HPP_NAMESPACE::ImageCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- ImageCreateInfo & setImageType( VULKAN_HPP_NAMESPACE::ImageType imageType_ ) VULKAN_HPP_NOEXCEPT
- {
- imageType = imageType_;
- return *this;
- }
-
- ImageCreateInfo & setFormat( VULKAN_HPP_NAMESPACE::Format format_ ) VULKAN_HPP_NOEXCEPT
- {
- format = format_;
- return *this;
- }
-
- ImageCreateInfo & setExtent( VULKAN_HPP_NAMESPACE::Extent3D const & extent_ ) VULKAN_HPP_NOEXCEPT
- {
- extent = extent_;
- return *this;
- }
-
- ImageCreateInfo & setMipLevels( uint32_t mipLevels_ ) VULKAN_HPP_NOEXCEPT
- {
- mipLevels = mipLevels_;
- return *this;
- }
-
- ImageCreateInfo & setArrayLayers( uint32_t arrayLayers_ ) VULKAN_HPP_NOEXCEPT
- {
- arrayLayers = arrayLayers_;
- return *this;
- }
-
- ImageCreateInfo & setSamples( VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples_ ) VULKAN_HPP_NOEXCEPT
- {
- samples = samples_;
- return *this;
- }
-
- ImageCreateInfo & setTiling( VULKAN_HPP_NAMESPACE::ImageTiling tiling_ ) VULKAN_HPP_NOEXCEPT
- {
- tiling = tiling_;
- return *this;
- }
-
- ImageCreateInfo & setUsage( VULKAN_HPP_NAMESPACE::ImageUsageFlags usage_ ) VULKAN_HPP_NOEXCEPT
- {
- usage = usage_;
- return *this;
- }
-
- ImageCreateInfo & setSharingMode( VULKAN_HPP_NAMESPACE::SharingMode sharingMode_ ) VULKAN_HPP_NOEXCEPT
- {
- sharingMode = sharingMode_;
- return *this;
- }
-
- ImageCreateInfo & setQueueFamilyIndexCount( uint32_t queueFamilyIndexCount_ ) VULKAN_HPP_NOEXCEPT
- {
- queueFamilyIndexCount = queueFamilyIndexCount_;
- return *this;
- }
-
- ImageCreateInfo & setPQueueFamilyIndices( const uint32_t* pQueueFamilyIndices_ ) VULKAN_HPP_NOEXCEPT
- {
- pQueueFamilyIndices = pQueueFamilyIndices_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- ImageCreateInfo & setQueueFamilyIndices( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & queueFamilyIndices_ ) VULKAN_HPP_NOEXCEPT
- {
- queueFamilyIndexCount = static_cast<uint32_t>( queueFamilyIndices_.size() );
- pQueueFamilyIndices = queueFamilyIndices_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- ImageCreateInfo & setInitialLayout( VULKAN_HPP_NAMESPACE::ImageLayout initialLayout_ ) VULKAN_HPP_NOEXCEPT
- {
- initialLayout = initialLayout_;
- return *this;
- }
-
-
- operator VkImageCreateInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkImageCreateInfo*>( this );
- }
-
- operator VkImageCreateInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkImageCreateInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ImageCreateInfo const& ) const = default;
-#else
- bool operator==( ImageCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( imageType == rhs.imageType )
- && ( format == rhs.format )
- && ( extent == rhs.extent )
- && ( mipLevels == rhs.mipLevels )
- && ( arrayLayers == rhs.arrayLayers )
- && ( samples == rhs.samples )
- && ( tiling == rhs.tiling )
- && ( usage == rhs.usage )
- && ( sharingMode == rhs.sharingMode )
- && ( queueFamilyIndexCount == rhs.queueFamilyIndexCount )
- && ( pQueueFamilyIndices == rhs.pQueueFamilyIndices )
- && ( initialLayout == rhs.initialLayout );
- }
-
- bool operator!=( ImageCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageCreateInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::ImageCreateFlags flags = {};
- VULKAN_HPP_NAMESPACE::ImageType imageType = VULKAN_HPP_NAMESPACE::ImageType::e1D;
- VULKAN_HPP_NAMESPACE::Format format = VULKAN_HPP_NAMESPACE::Format::eUndefined;
- VULKAN_HPP_NAMESPACE::Extent3D extent = {};
- uint32_t mipLevels = {};
- uint32_t arrayLayers = {};
- VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples = VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1;
- VULKAN_HPP_NAMESPACE::ImageTiling tiling = VULKAN_HPP_NAMESPACE::ImageTiling::eOptimal;
- VULKAN_HPP_NAMESPACE::ImageUsageFlags usage = {};
- VULKAN_HPP_NAMESPACE::SharingMode sharingMode = VULKAN_HPP_NAMESPACE::SharingMode::eExclusive;
- uint32_t queueFamilyIndexCount = {};
- const uint32_t* pQueueFamilyIndices = {};
- VULKAN_HPP_NAMESPACE::ImageLayout initialLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
-
- };
- static_assert( sizeof( ImageCreateInfo ) == sizeof( VkImageCreateInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ImageCreateInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eImageCreateInfo>
+ struct StructExtends<PhysicalDeviceCooperativeMatrixFeaturesNV, PhysicalDeviceFeatures2>
{
- using Type = ImageCreateInfo;
- };
-
- struct ImageViewCreateInfo
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImageViewCreateInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ImageViewCreateInfo(VULKAN_HPP_NAMESPACE::ImageViewCreateFlags flags_ = {}, VULKAN_HPP_NAMESPACE::Image image_ = {}, VULKAN_HPP_NAMESPACE::ImageViewType viewType_ = VULKAN_HPP_NAMESPACE::ImageViewType::e1D, VULKAN_HPP_NAMESPACE::Format format_ = VULKAN_HPP_NAMESPACE::Format::eUndefined, VULKAN_HPP_NAMESPACE::ComponentMapping components_ = {}, VULKAN_HPP_NAMESPACE::ImageSubresourceRange subresourceRange_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), image( image_ ), viewType( viewType_ ), format( format_ ), components( components_ ), subresourceRange( subresourceRange_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ImageViewCreateInfo( ImageViewCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ImageViewCreateInfo( VkImageViewCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ImageViewCreateInfo & operator=( VkImageViewCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageViewCreateInfo const *>( &rhs );
- return *this;
- }
-
- ImageViewCreateInfo & operator=( ImageViewCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ImageViewCreateInfo ) );
- return *this;
- }
-
- ImageViewCreateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- ImageViewCreateInfo & setFlags( VULKAN_HPP_NAMESPACE::ImageViewCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- flags = flags_;
- return *this;
- }
-
- ImageViewCreateInfo & setImage( VULKAN_HPP_NAMESPACE::Image image_ ) VULKAN_HPP_NOEXCEPT
- {
- image = image_;
- return *this;
- }
-
- ImageViewCreateInfo & setViewType( VULKAN_HPP_NAMESPACE::ImageViewType viewType_ ) VULKAN_HPP_NOEXCEPT
- {
- viewType = viewType_;
- return *this;
- }
-
- ImageViewCreateInfo & setFormat( VULKAN_HPP_NAMESPACE::Format format_ ) VULKAN_HPP_NOEXCEPT
- {
- format = format_;
- return *this;
- }
-
- ImageViewCreateInfo & setComponents( VULKAN_HPP_NAMESPACE::ComponentMapping const & components_ ) VULKAN_HPP_NOEXCEPT
- {
- components = components_;
- return *this;
- }
-
- ImageViewCreateInfo & setSubresourceRange( VULKAN_HPP_NAMESPACE::ImageSubresourceRange const & subresourceRange_ ) VULKAN_HPP_NOEXCEPT
- {
- subresourceRange = subresourceRange_;
- return *this;
- }
-
-
- operator VkImageViewCreateInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkImageViewCreateInfo*>( this );
- }
-
- operator VkImageViewCreateInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkImageViewCreateInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ImageViewCreateInfo const& ) const = default;
-#else
- bool operator==( ImageViewCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( image == rhs.image )
- && ( viewType == rhs.viewType )
- && ( format == rhs.format )
- && ( components == rhs.components )
- && ( subresourceRange == rhs.subresourceRange );
- }
-
- bool operator!=( ImageViewCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageViewCreateInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::ImageViewCreateFlags flags = {};
- VULKAN_HPP_NAMESPACE::Image image = {};
- VULKAN_HPP_NAMESPACE::ImageViewType viewType = VULKAN_HPP_NAMESPACE::ImageViewType::e1D;
- VULKAN_HPP_NAMESPACE::Format format = VULKAN_HPP_NAMESPACE::Format::eUndefined;
- VULKAN_HPP_NAMESPACE::ComponentMapping components = {};
- VULKAN_HPP_NAMESPACE::ImageSubresourceRange subresourceRange = {};
-
+ value = true
+ };
};
- static_assert( sizeof( ImageViewCreateInfo ) == sizeof( VkImageViewCreateInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ImageViewCreateInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eImageViewCreateInfo>
- {
- using Type = ImageViewCreateInfo;
- };
-
- struct IndirectCommandsLayoutTokenNV
+ struct StructExtends<PhysicalDeviceCooperativeMatrixFeaturesNV, DeviceCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eIndirectCommandsLayoutTokenNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR IndirectCommandsLayoutTokenNV(VULKAN_HPP_NAMESPACE::IndirectCommandsTokenTypeNV tokenType_ = VULKAN_HPP_NAMESPACE::IndirectCommandsTokenTypeNV::eShaderGroup, uint32_t stream_ = {}, uint32_t offset_ = {}, uint32_t vertexBindingUnit_ = {}, VULKAN_HPP_NAMESPACE::Bool32 vertexDynamicStride_ = {}, VULKAN_HPP_NAMESPACE::PipelineLayout pushconstantPipelineLayout_ = {}, VULKAN_HPP_NAMESPACE::ShaderStageFlags pushconstantShaderStageFlags_ = {}, uint32_t pushconstantOffset_ = {}, uint32_t pushconstantSize_ = {}, VULKAN_HPP_NAMESPACE::IndirectStateFlagsNV indirectStateFlags_ = {}, uint32_t indexTypeCount_ = {}, const VULKAN_HPP_NAMESPACE::IndexType* pIndexTypes_ = {}, const uint32_t* pIndexTypeValues_ = {}) VULKAN_HPP_NOEXCEPT
- : tokenType( tokenType_ ), stream( stream_ ), offset( offset_ ), vertexBindingUnit( vertexBindingUnit_ ), vertexDynamicStride( vertexDynamicStride_ ), pushconstantPipelineLayout( pushconstantPipelineLayout_ ), pushconstantShaderStageFlags( pushconstantShaderStageFlags_ ), pushconstantOffset( pushconstantOffset_ ), pushconstantSize( pushconstantSize_ ), indirectStateFlags( indirectStateFlags_ ), indexTypeCount( indexTypeCount_ ), pIndexTypes( pIndexTypes_ ), pIndexTypeValues( pIndexTypeValues_ )
- {}
-
- VULKAN_HPP_CONSTEXPR IndirectCommandsLayoutTokenNV( IndirectCommandsLayoutTokenNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- IndirectCommandsLayoutTokenNV( VkIndirectCommandsLayoutTokenNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- IndirectCommandsLayoutTokenNV( VULKAN_HPP_NAMESPACE::IndirectCommandsTokenTypeNV tokenType_, uint32_t stream_, uint32_t offset_, uint32_t vertexBindingUnit_, VULKAN_HPP_NAMESPACE::Bool32 vertexDynamicStride_, VULKAN_HPP_NAMESPACE::PipelineLayout pushconstantPipelineLayout_, VULKAN_HPP_NAMESPACE::ShaderStageFlags pushconstantShaderStageFlags_, uint32_t pushconstantOffset_, uint32_t pushconstantSize_, VULKAN_HPP_NAMESPACE::IndirectStateFlagsNV indirectStateFlags_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::IndexType> const & indexTypes_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & indexTypeValues_ = {} )
- : tokenType( tokenType_ ), stream( stream_ ), offset( offset_ ), vertexBindingUnit( vertexBindingUnit_ ), vertexDynamicStride( vertexDynamicStride_ ), pushconstantPipelineLayout( pushconstantPipelineLayout_ ), pushconstantShaderStageFlags( pushconstantShaderStageFlags_ ), pushconstantOffset( pushconstantOffset_ ), pushconstantSize( pushconstantSize_ ), indirectStateFlags( indirectStateFlags_ ), indexTypeCount( static_cast<uint32_t>( indexTypes_.size() ) ), pIndexTypes( indexTypes_.data() ), pIndexTypeValues( indexTypeValues_.data() )
- {
-#ifdef VULKAN_HPP_NO_EXCEPTIONS
- VULKAN_HPP_ASSERT( indexTypes_.size() == indexTypeValues_.size() );
-#else
- if ( indexTypes_.size() != indexTypeValues_.size() )
- {
- throw LogicError( VULKAN_HPP_NAMESPACE_STRING "::IndirectCommandsLayoutTokenNV::IndirectCommandsLayoutTokenNV: indexTypes_.size() != indexTypeValues_.size()" );
- }
-#endif /*VULKAN_HPP_NO_EXCEPTIONS*/
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- IndirectCommandsLayoutTokenNV & operator=( VkIndirectCommandsLayoutTokenNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutTokenNV const *>( &rhs );
- return *this;
- }
-
- IndirectCommandsLayoutTokenNV & operator=( IndirectCommandsLayoutTokenNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( IndirectCommandsLayoutTokenNV ) );
- return *this;
- }
-
- IndirectCommandsLayoutTokenNV & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- IndirectCommandsLayoutTokenNV & setTokenType( VULKAN_HPP_NAMESPACE::IndirectCommandsTokenTypeNV tokenType_ ) VULKAN_HPP_NOEXCEPT
- {
- tokenType = tokenType_;
- return *this;
- }
-
- IndirectCommandsLayoutTokenNV & setStream( uint32_t stream_ ) VULKAN_HPP_NOEXCEPT
- {
- stream = stream_;
- return *this;
- }
-
- IndirectCommandsLayoutTokenNV & setOffset( uint32_t offset_ ) VULKAN_HPP_NOEXCEPT
- {
- offset = offset_;
- return *this;
- }
-
- IndirectCommandsLayoutTokenNV & setVertexBindingUnit( uint32_t vertexBindingUnit_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- vertexBindingUnit = vertexBindingUnit_;
- return *this;
- }
-
- IndirectCommandsLayoutTokenNV & setVertexDynamicStride( VULKAN_HPP_NAMESPACE::Bool32 vertexDynamicStride_ ) VULKAN_HPP_NOEXCEPT
- {
- vertexDynamicStride = vertexDynamicStride_;
- return *this;
- }
-
- IndirectCommandsLayoutTokenNV & setPushconstantPipelineLayout( VULKAN_HPP_NAMESPACE::PipelineLayout pushconstantPipelineLayout_ ) VULKAN_HPP_NOEXCEPT
- {
- pushconstantPipelineLayout = pushconstantPipelineLayout_;
- return *this;
- }
-
- IndirectCommandsLayoutTokenNV & setPushconstantShaderStageFlags( VULKAN_HPP_NAMESPACE::ShaderStageFlags pushconstantShaderStageFlags_ ) VULKAN_HPP_NOEXCEPT
- {
- pushconstantShaderStageFlags = pushconstantShaderStageFlags_;
- return *this;
- }
-
- IndirectCommandsLayoutTokenNV & setPushconstantOffset( uint32_t pushconstantOffset_ ) VULKAN_HPP_NOEXCEPT
- {
- pushconstantOffset = pushconstantOffset_;
- return *this;
- }
-
- IndirectCommandsLayoutTokenNV & setPushconstantSize( uint32_t pushconstantSize_ ) VULKAN_HPP_NOEXCEPT
- {
- pushconstantSize = pushconstantSize_;
- return *this;
- }
-
- IndirectCommandsLayoutTokenNV & setIndirectStateFlags( VULKAN_HPP_NAMESPACE::IndirectStateFlagsNV indirectStateFlags_ ) VULKAN_HPP_NOEXCEPT
- {
- indirectStateFlags = indirectStateFlags_;
- return *this;
- }
-
- IndirectCommandsLayoutTokenNV & setIndexTypeCount( uint32_t indexTypeCount_ ) VULKAN_HPP_NOEXCEPT
- {
- indexTypeCount = indexTypeCount_;
- return *this;
- }
-
- IndirectCommandsLayoutTokenNV & setPIndexTypes( const VULKAN_HPP_NAMESPACE::IndexType* pIndexTypes_ ) VULKAN_HPP_NOEXCEPT
- {
- pIndexTypes = pIndexTypes_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- IndirectCommandsLayoutTokenNV & setIndexTypes( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::IndexType> const & indexTypes_ ) VULKAN_HPP_NOEXCEPT
- {
- indexTypeCount = static_cast<uint32_t>( indexTypes_.size() );
- pIndexTypes = indexTypes_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- IndirectCommandsLayoutTokenNV & setPIndexTypeValues( const uint32_t* pIndexTypeValues_ ) VULKAN_HPP_NOEXCEPT
- {
- pIndexTypeValues = pIndexTypeValues_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- IndirectCommandsLayoutTokenNV & setIndexTypeValues( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & indexTypeValues_ ) VULKAN_HPP_NOEXCEPT
- {
- indexTypeCount = static_cast<uint32_t>( indexTypeValues_.size() );
- pIndexTypeValues = indexTypeValues_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkIndirectCommandsLayoutTokenNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkIndirectCommandsLayoutTokenNV*>( this );
- }
-
- operator VkIndirectCommandsLayoutTokenNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkIndirectCommandsLayoutTokenNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( IndirectCommandsLayoutTokenNV const& ) const = default;
-#else
- bool operator==( IndirectCommandsLayoutTokenNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( tokenType == rhs.tokenType )
- && ( stream == rhs.stream )
- && ( offset == rhs.offset )
- && ( vertexBindingUnit == rhs.vertexBindingUnit )
- && ( vertexDynamicStride == rhs.vertexDynamicStride )
- && ( pushconstantPipelineLayout == rhs.pushconstantPipelineLayout )
- && ( pushconstantShaderStageFlags == rhs.pushconstantShaderStageFlags )
- && ( pushconstantOffset == rhs.pushconstantOffset )
- && ( pushconstantSize == rhs.pushconstantSize )
- && ( indirectStateFlags == rhs.indirectStateFlags )
- && ( indexTypeCount == rhs.indexTypeCount )
- && ( pIndexTypes == rhs.pIndexTypes )
- && ( pIndexTypeValues == rhs.pIndexTypeValues );
- }
-
- bool operator!=( IndirectCommandsLayoutTokenNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eIndirectCommandsLayoutTokenNV;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::IndirectCommandsTokenTypeNV tokenType = VULKAN_HPP_NAMESPACE::IndirectCommandsTokenTypeNV::eShaderGroup;
- uint32_t stream = {};
- uint32_t offset = {};
- uint32_t vertexBindingUnit = {};
- VULKAN_HPP_NAMESPACE::Bool32 vertexDynamicStride = {};
- VULKAN_HPP_NAMESPACE::PipelineLayout pushconstantPipelineLayout = {};
- VULKAN_HPP_NAMESPACE::ShaderStageFlags pushconstantShaderStageFlags = {};
- uint32_t pushconstantOffset = {};
- uint32_t pushconstantSize = {};
- VULKAN_HPP_NAMESPACE::IndirectStateFlagsNV indirectStateFlags = {};
- uint32_t indexTypeCount = {};
- const VULKAN_HPP_NAMESPACE::IndexType* pIndexTypes = {};
- const uint32_t* pIndexTypeValues = {};
-
- };
- static_assert( sizeof( IndirectCommandsLayoutTokenNV ) == sizeof( VkIndirectCommandsLayoutTokenNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<IndirectCommandsLayoutTokenNV>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::eIndirectCommandsLayoutTokenNV>
- {
- using Type = IndirectCommandsLayoutTokenNV;
- };
-
- struct IndirectCommandsLayoutCreateInfoNV
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eIndirectCommandsLayoutCreateInfoNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR IndirectCommandsLayoutCreateInfoNV(VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutUsageFlagsNV flags_ = {}, VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint_ = VULKAN_HPP_NAMESPACE::PipelineBindPoint::eGraphics, uint32_t tokenCount_ = {}, const VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutTokenNV* pTokens_ = {}, uint32_t streamCount_ = {}, const uint32_t* pStreamStrides_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), pipelineBindPoint( pipelineBindPoint_ ), tokenCount( tokenCount_ ), pTokens( pTokens_ ), streamCount( streamCount_ ), pStreamStrides( pStreamStrides_ )
- {}
-
- VULKAN_HPP_CONSTEXPR IndirectCommandsLayoutCreateInfoNV( IndirectCommandsLayoutCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- IndirectCommandsLayoutCreateInfoNV( VkIndirectCommandsLayoutCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- IndirectCommandsLayoutCreateInfoNV( VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutUsageFlagsNV flags_, VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutTokenNV> const & tokens_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & streamStrides_ = {} )
- : flags( flags_ ), pipelineBindPoint( pipelineBindPoint_ ), tokenCount( static_cast<uint32_t>( tokens_.size() ) ), pTokens( tokens_.data() ), streamCount( static_cast<uint32_t>( streamStrides_.size() ) ), pStreamStrides( streamStrides_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- IndirectCommandsLayoutCreateInfoNV & operator=( VkIndirectCommandsLayoutCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutCreateInfoNV const *>( &rhs );
- return *this;
- }
-
- IndirectCommandsLayoutCreateInfoNV & operator=( IndirectCommandsLayoutCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( IndirectCommandsLayoutCreateInfoNV ) );
- return *this;
- }
-
- IndirectCommandsLayoutCreateInfoNV & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- IndirectCommandsLayoutCreateInfoNV & setFlags( VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutUsageFlagsNV flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- IndirectCommandsLayoutCreateInfoNV & setPipelineBindPoint( VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint_ ) VULKAN_HPP_NOEXCEPT
- {
- pipelineBindPoint = pipelineBindPoint_;
- return *this;
- }
-
- IndirectCommandsLayoutCreateInfoNV & setTokenCount( uint32_t tokenCount_ ) VULKAN_HPP_NOEXCEPT
- {
- tokenCount = tokenCount_;
- return *this;
- }
-
- IndirectCommandsLayoutCreateInfoNV & setPTokens( const VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutTokenNV* pTokens_ ) VULKAN_HPP_NOEXCEPT
- {
- pTokens = pTokens_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- IndirectCommandsLayoutCreateInfoNV & setTokens( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutTokenNV> const & tokens_ ) VULKAN_HPP_NOEXCEPT
- {
- tokenCount = static_cast<uint32_t>( tokens_.size() );
- pTokens = tokens_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- IndirectCommandsLayoutCreateInfoNV & setStreamCount( uint32_t streamCount_ ) VULKAN_HPP_NOEXCEPT
- {
- streamCount = streamCount_;
- return *this;
- }
-
- IndirectCommandsLayoutCreateInfoNV & setPStreamStrides( const uint32_t* pStreamStrides_ ) VULKAN_HPP_NOEXCEPT
- {
- pStreamStrides = pStreamStrides_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- IndirectCommandsLayoutCreateInfoNV & setStreamStrides( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & streamStrides_ ) VULKAN_HPP_NOEXCEPT
- {
- streamCount = static_cast<uint32_t>( streamStrides_.size() );
- pStreamStrides = streamStrides_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkIndirectCommandsLayoutCreateInfoNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkIndirectCommandsLayoutCreateInfoNV*>( this );
- }
-
- operator VkIndirectCommandsLayoutCreateInfoNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkIndirectCommandsLayoutCreateInfoNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( IndirectCommandsLayoutCreateInfoNV const& ) const = default;
-#else
- bool operator==( IndirectCommandsLayoutCreateInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( pipelineBindPoint == rhs.pipelineBindPoint )
- && ( tokenCount == rhs.tokenCount )
- && ( pTokens == rhs.pTokens )
- && ( streamCount == rhs.streamCount )
- && ( pStreamStrides == rhs.pStreamStrides );
- }
-
- bool operator!=( IndirectCommandsLayoutCreateInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eIndirectCommandsLayoutCreateInfoNV;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutUsageFlagsNV flags = {};
- VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint = VULKAN_HPP_NAMESPACE::PipelineBindPoint::eGraphics;
- uint32_t tokenCount = {};
- const VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutTokenNV* pTokens = {};
- uint32_t streamCount = {};
- const uint32_t* pStreamStrides = {};
-
+ value = true
+ };
};
- static_assert( sizeof( IndirectCommandsLayoutCreateInfoNV ) == sizeof( VkIndirectCommandsLayoutCreateInfoNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<IndirectCommandsLayoutCreateInfoNV>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eIndirectCommandsLayoutCreateInfoNV>
+ struct StructExtends<PhysicalDeviceCooperativeMatrixPropertiesNV, PhysicalDeviceProperties2>
{
- using Type = IndirectCommandsLayoutCreateInfoNV;
- };
-
- struct PipelineCacheCreateInfo
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineCacheCreateInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PipelineCacheCreateInfo(VULKAN_HPP_NAMESPACE::PipelineCacheCreateFlags flags_ = {}, size_t initialDataSize_ = {}, const void* pInitialData_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), initialDataSize( initialDataSize_ ), pInitialData( pInitialData_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PipelineCacheCreateInfo( PipelineCacheCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PipelineCacheCreateInfo( VkPipelineCacheCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- template <typename T>
- PipelineCacheCreateInfo( VULKAN_HPP_NAMESPACE::PipelineCacheCreateFlags flags_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const T> const & initialData_ )
- : flags( flags_ ), initialDataSize( initialData_.size() * sizeof(T) ), pInitialData( initialData_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PipelineCacheCreateInfo & operator=( VkPipelineCacheCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineCacheCreateInfo const *>( &rhs );
- return *this;
- }
-
- PipelineCacheCreateInfo & operator=( PipelineCacheCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PipelineCacheCreateInfo ) );
- return *this;
- }
-
- PipelineCacheCreateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PipelineCacheCreateInfo & setFlags( VULKAN_HPP_NAMESPACE::PipelineCacheCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- flags = flags_;
- return *this;
- }
-
- PipelineCacheCreateInfo & setInitialDataSize( size_t initialDataSize_ ) VULKAN_HPP_NOEXCEPT
- {
- initialDataSize = initialDataSize_;
- return *this;
- }
-
- PipelineCacheCreateInfo & setPInitialData( const void* pInitialData_ ) VULKAN_HPP_NOEXCEPT
- {
- pInitialData = pInitialData_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- template <typename T>
- PipelineCacheCreateInfo & setInitialData( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const T> const & initialData_ ) VULKAN_HPP_NOEXCEPT
- {
- initialDataSize = initialData_.size() * sizeof(T);
- pInitialData = initialData_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkPipelineCacheCreateInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPipelineCacheCreateInfo*>( this );
- }
-
- operator VkPipelineCacheCreateInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPipelineCacheCreateInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PipelineCacheCreateInfo const& ) const = default;
-#else
- bool operator==( PipelineCacheCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( initialDataSize == rhs.initialDataSize )
- && ( pInitialData == rhs.pInitialData );
- }
-
- bool operator!=( PipelineCacheCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineCacheCreateInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::PipelineCacheCreateFlags flags = {};
- size_t initialDataSize = {};
- const void* pInitialData = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PipelineCacheCreateInfo ) == sizeof( VkPipelineCacheCreateInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PipelineCacheCreateInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePipelineCacheCreateInfo>
- {
- using Type = PipelineCacheCreateInfo;
- };
-
- struct PushConstantRange
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PushConstantRange(VULKAN_HPP_NAMESPACE::ShaderStageFlags stageFlags_ = {}, uint32_t offset_ = {}, uint32_t size_ = {}) VULKAN_HPP_NOEXCEPT
- : stageFlags( stageFlags_ ), offset( offset_ ), size( size_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PushConstantRange( PushConstantRange const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PushConstantRange( VkPushConstantRange const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PushConstantRange & operator=( VkPushConstantRange const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PushConstantRange const *>( &rhs );
- return *this;
- }
-
- PushConstantRange & operator=( PushConstantRange const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PushConstantRange ) );
- return *this;
- }
-
- PushConstantRange & setStageFlags( VULKAN_HPP_NAMESPACE::ShaderStageFlags stageFlags_ ) VULKAN_HPP_NOEXCEPT
- {
- stageFlags = stageFlags_;
- return *this;
- }
-
- PushConstantRange & setOffset( uint32_t offset_ ) VULKAN_HPP_NOEXCEPT
- {
- offset = offset_;
- return *this;
- }
-
- PushConstantRange & setSize( uint32_t size_ ) VULKAN_HPP_NOEXCEPT
- {
- size = size_;
- return *this;
- }
-
-
- operator VkPushConstantRange const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPushConstantRange*>( this );
- }
-
- operator VkPushConstantRange &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPushConstantRange*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PushConstantRange const& ) const = default;
-#else
- bool operator==( PushConstantRange const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( stageFlags == rhs.stageFlags )
- && ( offset == rhs.offset )
- && ( size == rhs.size );
- }
-
- bool operator!=( PushConstantRange const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::ShaderStageFlags stageFlags = {};
- uint32_t offset = {};
- uint32_t size = {};
-
- };
- static_assert( sizeof( PushConstantRange ) == sizeof( VkPushConstantRange ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PushConstantRange>::value, "struct wrapper is not a standard layout!" );
-
- struct PipelineLayoutCreateInfo
+ struct StructExtends<PhysicalDeviceCornerSampledImageFeaturesNV, PhysicalDeviceFeatures2>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineLayoutCreateInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PipelineLayoutCreateInfo(VULKAN_HPP_NAMESPACE::PipelineLayoutCreateFlags flags_ = {}, uint32_t setLayoutCount_ = {}, const VULKAN_HPP_NAMESPACE::DescriptorSetLayout* pSetLayouts_ = {}, uint32_t pushConstantRangeCount_ = {}, const VULKAN_HPP_NAMESPACE::PushConstantRange* pPushConstantRanges_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), setLayoutCount( setLayoutCount_ ), pSetLayouts( pSetLayouts_ ), pushConstantRangeCount( pushConstantRangeCount_ ), pPushConstantRanges( pPushConstantRanges_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PipelineLayoutCreateInfo( PipelineLayoutCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PipelineLayoutCreateInfo( VkPipelineLayoutCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- PipelineLayoutCreateInfo( VULKAN_HPP_NAMESPACE::PipelineLayoutCreateFlags flags_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DescriptorSetLayout> const & setLayouts_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::PushConstantRange> const & pushConstantRanges_ = {} )
- : flags( flags_ ), setLayoutCount( static_cast<uint32_t>( setLayouts_.size() ) ), pSetLayouts( setLayouts_.data() ), pushConstantRangeCount( static_cast<uint32_t>( pushConstantRanges_.size() ) ), pPushConstantRanges( pushConstantRanges_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PipelineLayoutCreateInfo & operator=( VkPipelineLayoutCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineLayoutCreateInfo const *>( &rhs );
- return *this;
- }
-
- PipelineLayoutCreateInfo & operator=( PipelineLayoutCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PipelineLayoutCreateInfo ) );
- return *this;
- }
-
- PipelineLayoutCreateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- pNext = pNext_;
- return *this;
- }
-
- PipelineLayoutCreateInfo & setFlags( VULKAN_HPP_NAMESPACE::PipelineLayoutCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- PipelineLayoutCreateInfo & setSetLayoutCount( uint32_t setLayoutCount_ ) VULKAN_HPP_NOEXCEPT
- {
- setLayoutCount = setLayoutCount_;
- return *this;
- }
-
- PipelineLayoutCreateInfo & setPSetLayouts( const VULKAN_HPP_NAMESPACE::DescriptorSetLayout* pSetLayouts_ ) VULKAN_HPP_NOEXCEPT
- {
- pSetLayouts = pSetLayouts_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- PipelineLayoutCreateInfo & setSetLayouts( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DescriptorSetLayout> const & setLayouts_ ) VULKAN_HPP_NOEXCEPT
- {
- setLayoutCount = static_cast<uint32_t>( setLayouts_.size() );
- pSetLayouts = setLayouts_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- PipelineLayoutCreateInfo & setPushConstantRangeCount( uint32_t pushConstantRangeCount_ ) VULKAN_HPP_NOEXCEPT
- {
- pushConstantRangeCount = pushConstantRangeCount_;
- return *this;
- }
-
- PipelineLayoutCreateInfo & setPPushConstantRanges( const VULKAN_HPP_NAMESPACE::PushConstantRange* pPushConstantRanges_ ) VULKAN_HPP_NOEXCEPT
- {
- pPushConstantRanges = pPushConstantRanges_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- PipelineLayoutCreateInfo & setPushConstantRanges( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::PushConstantRange> const & pushConstantRanges_ ) VULKAN_HPP_NOEXCEPT
- {
- pushConstantRangeCount = static_cast<uint32_t>( pushConstantRanges_.size() );
- pPushConstantRanges = pushConstantRanges_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkPipelineLayoutCreateInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPipelineLayoutCreateInfo*>( this );
- }
-
- operator VkPipelineLayoutCreateInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPipelineLayoutCreateInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PipelineLayoutCreateInfo const& ) const = default;
-#else
- bool operator==( PipelineLayoutCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( setLayoutCount == rhs.setLayoutCount )
- && ( pSetLayouts == rhs.pSetLayouts )
- && ( pushConstantRangeCount == rhs.pushConstantRangeCount )
- && ( pPushConstantRanges == rhs.pPushConstantRanges );
- }
-
- bool operator!=( PipelineLayoutCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineLayoutCreateInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::PipelineLayoutCreateFlags flags = {};
- uint32_t setLayoutCount = {};
- const VULKAN_HPP_NAMESPACE::DescriptorSetLayout* pSetLayouts = {};
- uint32_t pushConstantRangeCount = {};
- const VULKAN_HPP_NAMESPACE::PushConstantRange* pPushConstantRanges = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PipelineLayoutCreateInfo ) == sizeof( VkPipelineLayoutCreateInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PipelineLayoutCreateInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePipelineLayoutCreateInfo>
+ struct StructExtends<PhysicalDeviceCornerSampledImageFeaturesNV, DeviceCreateInfo>
{
- using Type = PipelineLayoutCreateInfo;
- };
-
- struct PrivateDataSlotCreateInfoEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePrivateDataSlotCreateInfoEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PrivateDataSlotCreateInfoEXT(VULKAN_HPP_NAMESPACE::PrivateDataSlotCreateFlagsEXT flags_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PrivateDataSlotCreateInfoEXT( PrivateDataSlotCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PrivateDataSlotCreateInfoEXT( VkPrivateDataSlotCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PrivateDataSlotCreateInfoEXT & operator=( VkPrivateDataSlotCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PrivateDataSlotCreateInfoEXT const *>( &rhs );
- return *this;
- }
-
- PrivateDataSlotCreateInfoEXT & operator=( PrivateDataSlotCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PrivateDataSlotCreateInfoEXT ) );
- return *this;
- }
-
- PrivateDataSlotCreateInfoEXT & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PrivateDataSlotCreateInfoEXT & setFlags( VULKAN_HPP_NAMESPACE::PrivateDataSlotCreateFlagsEXT flags_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- flags = flags_;
- return *this;
- }
-
-
- operator VkPrivateDataSlotCreateInfoEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPrivateDataSlotCreateInfoEXT*>( this );
- }
-
- operator VkPrivateDataSlotCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPrivateDataSlotCreateInfoEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PrivateDataSlotCreateInfoEXT const& ) const = default;
-#else
- bool operator==( PrivateDataSlotCreateInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags );
- }
-
- bool operator!=( PrivateDataSlotCreateInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePrivateDataSlotCreateInfoEXT;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::PrivateDataSlotCreateFlagsEXT flags = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PrivateDataSlotCreateInfoEXT ) == sizeof( VkPrivateDataSlotCreateInfoEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PrivateDataSlotCreateInfoEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePrivateDataSlotCreateInfoEXT>
- {
- using Type = PrivateDataSlotCreateInfoEXT;
- };
-
- class PrivateDataSlotEXT
+ struct StructExtends<PhysicalDeviceCoverageReductionModeFeaturesNV, PhysicalDeviceFeatures2>
{
- public:
- using CType = VkPrivateDataSlotEXT;
-
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::ePrivateDataSlotEXT;
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType = VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eUnknown;
-
- public:
- VULKAN_HPP_CONSTEXPR PrivateDataSlotEXT() VULKAN_HPP_NOEXCEPT
- : m_privateDataSlotEXT(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_CONSTEXPR PrivateDataSlotEXT( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- : m_privateDataSlotEXT(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_TYPESAFE_EXPLICIT PrivateDataSlotEXT( VkPrivateDataSlotEXT privateDataSlotEXT ) VULKAN_HPP_NOEXCEPT
- : m_privateDataSlotEXT( privateDataSlotEXT )
- {}
-
-#if defined(VULKAN_HPP_TYPESAFE_CONVERSION)
- PrivateDataSlotEXT & operator=(VkPrivateDataSlotEXT privateDataSlotEXT) VULKAN_HPP_NOEXCEPT
- {
- m_privateDataSlotEXT = privateDataSlotEXT;
- return *this;
- }
-#endif
-
- PrivateDataSlotEXT & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- {
- m_privateDataSlotEXT = VK_NULL_HANDLE;
- return *this;
- }
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PrivateDataSlotEXT const& ) const = default;
-#else
- bool operator==( PrivateDataSlotEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_privateDataSlotEXT == rhs.m_privateDataSlotEXT;
- }
-
- bool operator!=(PrivateDataSlotEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_privateDataSlotEXT != rhs.m_privateDataSlotEXT;
- }
-
- bool operator<(PrivateDataSlotEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return m_privateDataSlotEXT < rhs.m_privateDataSlotEXT;
- }
-#endif
-
- VULKAN_HPP_TYPESAFE_EXPLICIT operator VkPrivateDataSlotEXT() const VULKAN_HPP_NOEXCEPT
- {
- return m_privateDataSlotEXT;
- }
-
- explicit operator bool() const VULKAN_HPP_NOEXCEPT
- {
- return m_privateDataSlotEXT != VK_NULL_HANDLE;
- }
-
- bool operator!() const VULKAN_HPP_NOEXCEPT
- {
- return m_privateDataSlotEXT == VK_NULL_HANDLE;
- }
-
- private:
- VkPrivateDataSlotEXT m_privateDataSlotEXT;
- };
- static_assert( sizeof( VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT ) == sizeof( VkPrivateDataSlotEXT ), "handle and wrapper have different size!" );
-
- template <>
- struct VULKAN_HPP_DEPRECATED("vk::cpp_type is deprecated. Use vk::CppType instead.") cpp_type<ObjectType::ePrivateDataSlotEXT>
- {
- using type = VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT;
- };
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::ePrivateDataSlotEXT>
- {
- using Type = VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT;
+ value = true
+ };
};
-
-
-
template <>
- struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT>
+ struct StructExtends<PhysicalDeviceCoverageReductionModeFeaturesNV, DeviceCreateInfo>
{
- static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
- };
-
- struct QueryPoolCreateInfo
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eQueryPoolCreateInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR QueryPoolCreateInfo(VULKAN_HPP_NAMESPACE::QueryPoolCreateFlags flags_ = {}, VULKAN_HPP_NAMESPACE::QueryType queryType_ = VULKAN_HPP_NAMESPACE::QueryType::eOcclusion, uint32_t queryCount_ = {}, VULKAN_HPP_NAMESPACE::QueryPipelineStatisticFlags pipelineStatistics_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), queryType( queryType_ ), queryCount( queryCount_ ), pipelineStatistics( pipelineStatistics_ )
- {}
-
- VULKAN_HPP_CONSTEXPR QueryPoolCreateInfo( QueryPoolCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- QueryPoolCreateInfo( VkQueryPoolCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- QueryPoolCreateInfo & operator=( VkQueryPoolCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::QueryPoolCreateInfo const *>( &rhs );
- return *this;
- }
-
- QueryPoolCreateInfo & operator=( QueryPoolCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( QueryPoolCreateInfo ) );
- return *this;
- }
-
- QueryPoolCreateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- QueryPoolCreateInfo & setFlags( VULKAN_HPP_NAMESPACE::QueryPoolCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- QueryPoolCreateInfo & setQueryType( VULKAN_HPP_NAMESPACE::QueryType queryType_ ) VULKAN_HPP_NOEXCEPT
- {
- queryType = queryType_;
- return *this;
- }
-
- QueryPoolCreateInfo & setQueryCount( uint32_t queryCount_ ) VULKAN_HPP_NOEXCEPT
- {
- queryCount = queryCount_;
- return *this;
- }
-
- QueryPoolCreateInfo & setPipelineStatistics( VULKAN_HPP_NAMESPACE::QueryPipelineStatisticFlags pipelineStatistics_ ) VULKAN_HPP_NOEXCEPT
- {
- pipelineStatistics = pipelineStatistics_;
- return *this;
- }
-
-
- operator VkQueryPoolCreateInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkQueryPoolCreateInfo*>( this );
- }
-
- operator VkQueryPoolCreateInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkQueryPoolCreateInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( QueryPoolCreateInfo const& ) const = default;
-#else
- bool operator==( QueryPoolCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( queryType == rhs.queryType )
- && ( queryCount == rhs.queryCount )
- && ( pipelineStatistics == rhs.pipelineStatistics );
- }
-
- bool operator!=( QueryPoolCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eQueryPoolCreateInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::QueryPoolCreateFlags flags = {};
- VULKAN_HPP_NAMESPACE::QueryType queryType = VULKAN_HPP_NAMESPACE::QueryType::eOcclusion;
- uint32_t queryCount = {};
- VULKAN_HPP_NAMESPACE::QueryPipelineStatisticFlags pipelineStatistics = {};
-
+ value = true
+ };
};
- static_assert( sizeof( QueryPoolCreateInfo ) == sizeof( VkQueryPoolCreateInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<QueryPoolCreateInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eQueryPoolCreateInfo>
+ struct StructExtends<PhysicalDeviceCustomBorderColorFeaturesEXT, PhysicalDeviceFeatures2>
{
- using Type = QueryPoolCreateInfo;
- };
-
- struct RayTracingShaderGroupCreateInfoKHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eRayTracingShaderGroupCreateInfoKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR RayTracingShaderGroupCreateInfoKHR(VULKAN_HPP_NAMESPACE::RayTracingShaderGroupTypeKHR type_ = VULKAN_HPP_NAMESPACE::RayTracingShaderGroupTypeKHR::eGeneral, uint32_t generalShader_ = {}, uint32_t closestHitShader_ = {}, uint32_t anyHitShader_ = {}, uint32_t intersectionShader_ = {}, const void* pShaderGroupCaptureReplayHandle_ = {}) VULKAN_HPP_NOEXCEPT
- : type( type_ ), generalShader( generalShader_ ), closestHitShader( closestHitShader_ ), anyHitShader( anyHitShader_ ), intersectionShader( intersectionShader_ ), pShaderGroupCaptureReplayHandle( pShaderGroupCaptureReplayHandle_ )
- {}
-
- VULKAN_HPP_CONSTEXPR RayTracingShaderGroupCreateInfoKHR( RayTracingShaderGroupCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- RayTracingShaderGroupCreateInfoKHR( VkRayTracingShaderGroupCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- RayTracingShaderGroupCreateInfoKHR & operator=( VkRayTracingShaderGroupCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::RayTracingShaderGroupCreateInfoKHR const *>( &rhs );
- return *this;
- }
-
- RayTracingShaderGroupCreateInfoKHR & operator=( RayTracingShaderGroupCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( RayTracingShaderGroupCreateInfoKHR ) );
- return *this;
- }
-
- RayTracingShaderGroupCreateInfoKHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- RayTracingShaderGroupCreateInfoKHR & setType( VULKAN_HPP_NAMESPACE::RayTracingShaderGroupTypeKHR type_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- type = type_;
- return *this;
- }
-
- RayTracingShaderGroupCreateInfoKHR & setGeneralShader( uint32_t generalShader_ ) VULKAN_HPP_NOEXCEPT
- {
- generalShader = generalShader_;
- return *this;
- }
-
- RayTracingShaderGroupCreateInfoKHR & setClosestHitShader( uint32_t closestHitShader_ ) VULKAN_HPP_NOEXCEPT
- {
- closestHitShader = closestHitShader_;
- return *this;
- }
-
- RayTracingShaderGroupCreateInfoKHR & setAnyHitShader( uint32_t anyHitShader_ ) VULKAN_HPP_NOEXCEPT
- {
- anyHitShader = anyHitShader_;
- return *this;
- }
-
- RayTracingShaderGroupCreateInfoKHR & setIntersectionShader( uint32_t intersectionShader_ ) VULKAN_HPP_NOEXCEPT
- {
- intersectionShader = intersectionShader_;
- return *this;
- }
-
- RayTracingShaderGroupCreateInfoKHR & setPShaderGroupCaptureReplayHandle( const void* pShaderGroupCaptureReplayHandle_ ) VULKAN_HPP_NOEXCEPT
- {
- pShaderGroupCaptureReplayHandle = pShaderGroupCaptureReplayHandle_;
- return *this;
- }
-
-
- operator VkRayTracingShaderGroupCreateInfoKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkRayTracingShaderGroupCreateInfoKHR*>( this );
- }
-
- operator VkRayTracingShaderGroupCreateInfoKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkRayTracingShaderGroupCreateInfoKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( RayTracingShaderGroupCreateInfoKHR const& ) const = default;
-#else
- bool operator==( RayTracingShaderGroupCreateInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( type == rhs.type )
- && ( generalShader == rhs.generalShader )
- && ( closestHitShader == rhs.closestHitShader )
- && ( anyHitShader == rhs.anyHitShader )
- && ( intersectionShader == rhs.intersectionShader )
- && ( pShaderGroupCaptureReplayHandle == rhs.pShaderGroupCaptureReplayHandle );
- }
-
- bool operator!=( RayTracingShaderGroupCreateInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eRayTracingShaderGroupCreateInfoKHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::RayTracingShaderGroupTypeKHR type = VULKAN_HPP_NAMESPACE::RayTracingShaderGroupTypeKHR::eGeneral;
- uint32_t generalShader = {};
- uint32_t closestHitShader = {};
- uint32_t anyHitShader = {};
- uint32_t intersectionShader = {};
- const void* pShaderGroupCaptureReplayHandle = {};
-
+ value = true
+ };
};
- static_assert( sizeof( RayTracingShaderGroupCreateInfoKHR ) == sizeof( VkRayTracingShaderGroupCreateInfoKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<RayTracingShaderGroupCreateInfoKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eRayTracingShaderGroupCreateInfoKHR>
- {
- using Type = RayTracingShaderGroupCreateInfoKHR;
- };
-
- struct PipelineLibraryCreateInfoKHR
+ struct StructExtends<PhysicalDeviceCustomBorderColorFeaturesEXT, DeviceCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineLibraryCreateInfoKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PipelineLibraryCreateInfoKHR(uint32_t libraryCount_ = {}, const VULKAN_HPP_NAMESPACE::Pipeline* pLibraries_ = {}) VULKAN_HPP_NOEXCEPT
- : libraryCount( libraryCount_ ), pLibraries( pLibraries_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PipelineLibraryCreateInfoKHR( PipelineLibraryCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PipelineLibraryCreateInfoKHR( VkPipelineLibraryCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- PipelineLibraryCreateInfoKHR( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Pipeline> const & libraries_ )
- : libraryCount( static_cast<uint32_t>( libraries_.size() ) ), pLibraries( libraries_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PipelineLibraryCreateInfoKHR & operator=( VkPipelineLibraryCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineLibraryCreateInfoKHR const *>( &rhs );
- return *this;
- }
-
- PipelineLibraryCreateInfoKHR & operator=( PipelineLibraryCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PipelineLibraryCreateInfoKHR ) );
- return *this;
- }
-
- PipelineLibraryCreateInfoKHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- pNext = pNext_;
- return *this;
- }
-
- PipelineLibraryCreateInfoKHR & setLibraryCount( uint32_t libraryCount_ ) VULKAN_HPP_NOEXCEPT
- {
- libraryCount = libraryCount_;
- return *this;
- }
-
- PipelineLibraryCreateInfoKHR & setPLibraries( const VULKAN_HPP_NAMESPACE::Pipeline* pLibraries_ ) VULKAN_HPP_NOEXCEPT
- {
- pLibraries = pLibraries_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- PipelineLibraryCreateInfoKHR & setLibraries( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Pipeline> const & libraries_ ) VULKAN_HPP_NOEXCEPT
- {
- libraryCount = static_cast<uint32_t>( libraries_.size() );
- pLibraries = libraries_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkPipelineLibraryCreateInfoKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPipelineLibraryCreateInfoKHR*>( this );
- }
-
- operator VkPipelineLibraryCreateInfoKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPipelineLibraryCreateInfoKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PipelineLibraryCreateInfoKHR const& ) const = default;
-#else
- bool operator==( PipelineLibraryCreateInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( libraryCount == rhs.libraryCount )
- && ( pLibraries == rhs.pLibraries );
- }
-
- bool operator!=( PipelineLibraryCreateInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineLibraryCreateInfoKHR;
- const void* pNext = {};
- uint32_t libraryCount = {};
- const VULKAN_HPP_NAMESPACE::Pipeline* pLibraries = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PipelineLibraryCreateInfoKHR ) == sizeof( VkPipelineLibraryCreateInfoKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PipelineLibraryCreateInfoKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePipelineLibraryCreateInfoKHR>
+ struct StructExtends<PhysicalDeviceCustomBorderColorPropertiesEXT, PhysicalDeviceProperties2>
{
- using Type = PipelineLibraryCreateInfoKHR;
- };
-
- struct RayTracingPipelineInterfaceCreateInfoKHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eRayTracingPipelineInterfaceCreateInfoKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR RayTracingPipelineInterfaceCreateInfoKHR(uint32_t maxPipelineRayPayloadSize_ = {}, uint32_t maxPipelineRayHitAttributeSize_ = {}) VULKAN_HPP_NOEXCEPT
- : maxPipelineRayPayloadSize( maxPipelineRayPayloadSize_ ), maxPipelineRayHitAttributeSize( maxPipelineRayHitAttributeSize_ )
- {}
-
- VULKAN_HPP_CONSTEXPR RayTracingPipelineInterfaceCreateInfoKHR( RayTracingPipelineInterfaceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- RayTracingPipelineInterfaceCreateInfoKHR( VkRayTracingPipelineInterfaceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- RayTracingPipelineInterfaceCreateInfoKHR & operator=( VkRayTracingPipelineInterfaceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::RayTracingPipelineInterfaceCreateInfoKHR const *>( &rhs );
- return *this;
- }
-
- RayTracingPipelineInterfaceCreateInfoKHR & operator=( RayTracingPipelineInterfaceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( RayTracingPipelineInterfaceCreateInfoKHR ) );
- return *this;
- }
-
- RayTracingPipelineInterfaceCreateInfoKHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- RayTracingPipelineInterfaceCreateInfoKHR & setMaxPipelineRayPayloadSize( uint32_t maxPipelineRayPayloadSize_ ) VULKAN_HPP_NOEXCEPT
- {
- maxPipelineRayPayloadSize = maxPipelineRayPayloadSize_;
- return *this;
- }
-
- RayTracingPipelineInterfaceCreateInfoKHR & setMaxPipelineRayHitAttributeSize( uint32_t maxPipelineRayHitAttributeSize_ ) VULKAN_HPP_NOEXCEPT
- {
- maxPipelineRayHitAttributeSize = maxPipelineRayHitAttributeSize_;
- return *this;
- }
-
-
- operator VkRayTracingPipelineInterfaceCreateInfoKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkRayTracingPipelineInterfaceCreateInfoKHR*>( this );
- }
-
- operator VkRayTracingPipelineInterfaceCreateInfoKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkRayTracingPipelineInterfaceCreateInfoKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( RayTracingPipelineInterfaceCreateInfoKHR const& ) const = default;
-#else
- bool operator==( RayTracingPipelineInterfaceCreateInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( maxPipelineRayPayloadSize == rhs.maxPipelineRayPayloadSize )
- && ( maxPipelineRayHitAttributeSize == rhs.maxPipelineRayHitAttributeSize );
- }
-
- bool operator!=( RayTracingPipelineInterfaceCreateInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eRayTracingPipelineInterfaceCreateInfoKHR;
- const void* pNext = {};
- uint32_t maxPipelineRayPayloadSize = {};
- uint32_t maxPipelineRayHitAttributeSize = {};
-
+ value = true
+ };
};
- static_assert( sizeof( RayTracingPipelineInterfaceCreateInfoKHR ) == sizeof( VkRayTracingPipelineInterfaceCreateInfoKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<RayTracingPipelineInterfaceCreateInfoKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eRayTracingPipelineInterfaceCreateInfoKHR>
- {
- using Type = RayTracingPipelineInterfaceCreateInfoKHR;
- };
-
- struct RayTracingPipelineCreateInfoKHR
+ struct StructExtends<PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV, PhysicalDeviceFeatures2>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eRayTracingPipelineCreateInfoKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR RayTracingPipelineCreateInfoKHR(VULKAN_HPP_NAMESPACE::PipelineCreateFlags flags_ = {}, uint32_t stageCount_ = {}, const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo* pStages_ = {}, uint32_t groupCount_ = {}, const VULKAN_HPP_NAMESPACE::RayTracingShaderGroupCreateInfoKHR* pGroups_ = {}, uint32_t maxPipelineRayRecursionDepth_ = {}, const VULKAN_HPP_NAMESPACE::PipelineLibraryCreateInfoKHR* pLibraryInfo_ = {}, const VULKAN_HPP_NAMESPACE::RayTracingPipelineInterfaceCreateInfoKHR* pLibraryInterface_ = {}, const VULKAN_HPP_NAMESPACE::PipelineDynamicStateCreateInfo* pDynamicState_ = {}, VULKAN_HPP_NAMESPACE::PipelineLayout layout_ = {}, VULKAN_HPP_NAMESPACE::Pipeline basePipelineHandle_ = {}, int32_t basePipelineIndex_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), stageCount( stageCount_ ), pStages( pStages_ ), groupCount( groupCount_ ), pGroups( pGroups_ ), maxPipelineRayRecursionDepth( maxPipelineRayRecursionDepth_ ), pLibraryInfo( pLibraryInfo_ ), pLibraryInterface( pLibraryInterface_ ), pDynamicState( pDynamicState_ ), layout( layout_ ), basePipelineHandle( basePipelineHandle_ ), basePipelineIndex( basePipelineIndex_ )
- {}
-
- VULKAN_HPP_CONSTEXPR RayTracingPipelineCreateInfoKHR( RayTracingPipelineCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- RayTracingPipelineCreateInfoKHR( VkRayTracingPipelineCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- RayTracingPipelineCreateInfoKHR( VULKAN_HPP_NAMESPACE::PipelineCreateFlags flags_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo> const & stages_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::RayTracingShaderGroupCreateInfoKHR> const & groups_ = {}, uint32_t maxPipelineRayRecursionDepth_ = {}, const VULKAN_HPP_NAMESPACE::PipelineLibraryCreateInfoKHR* pLibraryInfo_ = {}, const VULKAN_HPP_NAMESPACE::RayTracingPipelineInterfaceCreateInfoKHR* pLibraryInterface_ = {}, const VULKAN_HPP_NAMESPACE::PipelineDynamicStateCreateInfo* pDynamicState_ = {}, VULKAN_HPP_NAMESPACE::PipelineLayout layout_ = {}, VULKAN_HPP_NAMESPACE::Pipeline basePipelineHandle_ = {}, int32_t basePipelineIndex_ = {} )
- : flags( flags_ ), stageCount( static_cast<uint32_t>( stages_.size() ) ), pStages( stages_.data() ), groupCount( static_cast<uint32_t>( groups_.size() ) ), pGroups( groups_.data() ), maxPipelineRayRecursionDepth( maxPipelineRayRecursionDepth_ ), pLibraryInfo( pLibraryInfo_ ), pLibraryInterface( pLibraryInterface_ ), pDynamicState( pDynamicState_ ), layout( layout_ ), basePipelineHandle( basePipelineHandle_ ), basePipelineIndex( basePipelineIndex_ )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- RayTracingPipelineCreateInfoKHR & operator=( VkRayTracingPipelineCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoKHR const *>( &rhs );
- return *this;
- }
-
- RayTracingPipelineCreateInfoKHR & operator=( RayTracingPipelineCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( RayTracingPipelineCreateInfoKHR ) );
- return *this;
- }
-
- RayTracingPipelineCreateInfoKHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- pNext = pNext_;
- return *this;
- }
-
- RayTracingPipelineCreateInfoKHR & setFlags( VULKAN_HPP_NAMESPACE::PipelineCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- RayTracingPipelineCreateInfoKHR & setStageCount( uint32_t stageCount_ ) VULKAN_HPP_NOEXCEPT
- {
- stageCount = stageCount_;
- return *this;
- }
-
- RayTracingPipelineCreateInfoKHR & setPStages( const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo* pStages_ ) VULKAN_HPP_NOEXCEPT
- {
- pStages = pStages_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- RayTracingPipelineCreateInfoKHR & setStages( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo> const & stages_ ) VULKAN_HPP_NOEXCEPT
- {
- stageCount = static_cast<uint32_t>( stages_.size() );
- pStages = stages_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- RayTracingPipelineCreateInfoKHR & setGroupCount( uint32_t groupCount_ ) VULKAN_HPP_NOEXCEPT
- {
- groupCount = groupCount_;
- return *this;
- }
-
- RayTracingPipelineCreateInfoKHR & setPGroups( const VULKAN_HPP_NAMESPACE::RayTracingShaderGroupCreateInfoKHR* pGroups_ ) VULKAN_HPP_NOEXCEPT
- {
- pGroups = pGroups_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- RayTracingPipelineCreateInfoKHR & setGroups( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::RayTracingShaderGroupCreateInfoKHR> const & groups_ ) VULKAN_HPP_NOEXCEPT
- {
- groupCount = static_cast<uint32_t>( groups_.size() );
- pGroups = groups_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- RayTracingPipelineCreateInfoKHR & setMaxPipelineRayRecursionDepth( uint32_t maxPipelineRayRecursionDepth_ ) VULKAN_HPP_NOEXCEPT
- {
- maxPipelineRayRecursionDepth = maxPipelineRayRecursionDepth_;
- return *this;
- }
-
- RayTracingPipelineCreateInfoKHR & setPLibraryInfo( const VULKAN_HPP_NAMESPACE::PipelineLibraryCreateInfoKHR* pLibraryInfo_ ) VULKAN_HPP_NOEXCEPT
- {
- pLibraryInfo = pLibraryInfo_;
- return *this;
- }
-
- RayTracingPipelineCreateInfoKHR & setPLibraryInterface( const VULKAN_HPP_NAMESPACE::RayTracingPipelineInterfaceCreateInfoKHR* pLibraryInterface_ ) VULKAN_HPP_NOEXCEPT
- {
- pLibraryInterface = pLibraryInterface_;
- return *this;
- }
-
- RayTracingPipelineCreateInfoKHR & setPDynamicState( const VULKAN_HPP_NAMESPACE::PipelineDynamicStateCreateInfo* pDynamicState_ ) VULKAN_HPP_NOEXCEPT
- {
- pDynamicState = pDynamicState_;
- return *this;
- }
-
- RayTracingPipelineCreateInfoKHR & setLayout( VULKAN_HPP_NAMESPACE::PipelineLayout layout_ ) VULKAN_HPP_NOEXCEPT
- {
- layout = layout_;
- return *this;
- }
-
- RayTracingPipelineCreateInfoKHR & setBasePipelineHandle( VULKAN_HPP_NAMESPACE::Pipeline basePipelineHandle_ ) VULKAN_HPP_NOEXCEPT
- {
- basePipelineHandle = basePipelineHandle_;
- return *this;
- }
-
- RayTracingPipelineCreateInfoKHR & setBasePipelineIndex( int32_t basePipelineIndex_ ) VULKAN_HPP_NOEXCEPT
- {
- basePipelineIndex = basePipelineIndex_;
- return *this;
- }
-
-
- operator VkRayTracingPipelineCreateInfoKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkRayTracingPipelineCreateInfoKHR*>( this );
- }
-
- operator VkRayTracingPipelineCreateInfoKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkRayTracingPipelineCreateInfoKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( RayTracingPipelineCreateInfoKHR const& ) const = default;
-#else
- bool operator==( RayTracingPipelineCreateInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( stageCount == rhs.stageCount )
- && ( pStages == rhs.pStages )
- && ( groupCount == rhs.groupCount )
- && ( pGroups == rhs.pGroups )
- && ( maxPipelineRayRecursionDepth == rhs.maxPipelineRayRecursionDepth )
- && ( pLibraryInfo == rhs.pLibraryInfo )
- && ( pLibraryInterface == rhs.pLibraryInterface )
- && ( pDynamicState == rhs.pDynamicState )
- && ( layout == rhs.layout )
- && ( basePipelineHandle == rhs.basePipelineHandle )
- && ( basePipelineIndex == rhs.basePipelineIndex );
- }
-
- bool operator!=( RayTracingPipelineCreateInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eRayTracingPipelineCreateInfoKHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::PipelineCreateFlags flags = {};
- uint32_t stageCount = {};
- const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo* pStages = {};
- uint32_t groupCount = {};
- const VULKAN_HPP_NAMESPACE::RayTracingShaderGroupCreateInfoKHR* pGroups = {};
- uint32_t maxPipelineRayRecursionDepth = {};
- const VULKAN_HPP_NAMESPACE::PipelineLibraryCreateInfoKHR* pLibraryInfo = {};
- const VULKAN_HPP_NAMESPACE::RayTracingPipelineInterfaceCreateInfoKHR* pLibraryInterface = {};
- const VULKAN_HPP_NAMESPACE::PipelineDynamicStateCreateInfo* pDynamicState = {};
- VULKAN_HPP_NAMESPACE::PipelineLayout layout = {};
- VULKAN_HPP_NAMESPACE::Pipeline basePipelineHandle = {};
- int32_t basePipelineIndex = {};
-
- };
- static_assert( sizeof( RayTracingPipelineCreateInfoKHR ) == sizeof( VkRayTracingPipelineCreateInfoKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<RayTracingPipelineCreateInfoKHR>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::eRayTracingPipelineCreateInfoKHR>
- {
- using Type = RayTracingPipelineCreateInfoKHR;
- };
-
- struct RayTracingShaderGroupCreateInfoNV
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eRayTracingShaderGroupCreateInfoNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR RayTracingShaderGroupCreateInfoNV(VULKAN_HPP_NAMESPACE::RayTracingShaderGroupTypeKHR type_ = VULKAN_HPP_NAMESPACE::RayTracingShaderGroupTypeKHR::eGeneral, uint32_t generalShader_ = {}, uint32_t closestHitShader_ = {}, uint32_t anyHitShader_ = {}, uint32_t intersectionShader_ = {}) VULKAN_HPP_NOEXCEPT
- : type( type_ ), generalShader( generalShader_ ), closestHitShader( closestHitShader_ ), anyHitShader( anyHitShader_ ), intersectionShader( intersectionShader_ )
- {}
-
- VULKAN_HPP_CONSTEXPR RayTracingShaderGroupCreateInfoNV( RayTracingShaderGroupCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- RayTracingShaderGroupCreateInfoNV( VkRayTracingShaderGroupCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- RayTracingShaderGroupCreateInfoNV & operator=( VkRayTracingShaderGroupCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::RayTracingShaderGroupCreateInfoNV const *>( &rhs );
- return *this;
- }
-
- RayTracingShaderGroupCreateInfoNV & operator=( RayTracingShaderGroupCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( RayTracingShaderGroupCreateInfoNV ) );
- return *this;
- }
-
- RayTracingShaderGroupCreateInfoNV & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- RayTracingShaderGroupCreateInfoNV & setType( VULKAN_HPP_NAMESPACE::RayTracingShaderGroupTypeKHR type_ ) VULKAN_HPP_NOEXCEPT
- {
- type = type_;
- return *this;
- }
-
- RayTracingShaderGroupCreateInfoNV & setGeneralShader( uint32_t generalShader_ ) VULKAN_HPP_NOEXCEPT
- {
- generalShader = generalShader_;
- return *this;
- }
-
- RayTracingShaderGroupCreateInfoNV & setClosestHitShader( uint32_t closestHitShader_ ) VULKAN_HPP_NOEXCEPT
- {
- closestHitShader = closestHitShader_;
- return *this;
- }
-
- RayTracingShaderGroupCreateInfoNV & setAnyHitShader( uint32_t anyHitShader_ ) VULKAN_HPP_NOEXCEPT
- {
- anyHitShader = anyHitShader_;
- return *this;
- }
-
- RayTracingShaderGroupCreateInfoNV & setIntersectionShader( uint32_t intersectionShader_ ) VULKAN_HPP_NOEXCEPT
- {
- intersectionShader = intersectionShader_;
- return *this;
- }
-
-
- operator VkRayTracingShaderGroupCreateInfoNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkRayTracingShaderGroupCreateInfoNV*>( this );
- }
-
- operator VkRayTracingShaderGroupCreateInfoNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkRayTracingShaderGroupCreateInfoNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( RayTracingShaderGroupCreateInfoNV const& ) const = default;
-#else
- bool operator==( RayTracingShaderGroupCreateInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( type == rhs.type )
- && ( generalShader == rhs.generalShader )
- && ( closestHitShader == rhs.closestHitShader )
- && ( anyHitShader == rhs.anyHitShader )
- && ( intersectionShader == rhs.intersectionShader );
- }
-
- bool operator!=( RayTracingShaderGroupCreateInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eRayTracingShaderGroupCreateInfoNV;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::RayTracingShaderGroupTypeKHR type = VULKAN_HPP_NAMESPACE::RayTracingShaderGroupTypeKHR::eGeneral;
- uint32_t generalShader = {};
- uint32_t closestHitShader = {};
- uint32_t anyHitShader = {};
- uint32_t intersectionShader = {};
-
- };
- static_assert( sizeof( RayTracingShaderGroupCreateInfoNV ) == sizeof( VkRayTracingShaderGroupCreateInfoNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<RayTracingShaderGroupCreateInfoNV>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::eRayTracingShaderGroupCreateInfoNV>
- {
- using Type = RayTracingShaderGroupCreateInfoNV;
+ value = true
+ };
};
-
- struct RayTracingPipelineCreateInfoNV
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eRayTracingPipelineCreateInfoNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR RayTracingPipelineCreateInfoNV(VULKAN_HPP_NAMESPACE::PipelineCreateFlags flags_ = {}, uint32_t stageCount_ = {}, const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo* pStages_ = {}, uint32_t groupCount_ = {}, const VULKAN_HPP_NAMESPACE::RayTracingShaderGroupCreateInfoNV* pGroups_ = {}, uint32_t maxRecursionDepth_ = {}, VULKAN_HPP_NAMESPACE::PipelineLayout layout_ = {}, VULKAN_HPP_NAMESPACE::Pipeline basePipelineHandle_ = {}, int32_t basePipelineIndex_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), stageCount( stageCount_ ), pStages( pStages_ ), groupCount( groupCount_ ), pGroups( pGroups_ ), maxRecursionDepth( maxRecursionDepth_ ), layout( layout_ ), basePipelineHandle( basePipelineHandle_ ), basePipelineIndex( basePipelineIndex_ )
- {}
-
- VULKAN_HPP_CONSTEXPR RayTracingPipelineCreateInfoNV( RayTracingPipelineCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- RayTracingPipelineCreateInfoNV( VkRayTracingPipelineCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- RayTracingPipelineCreateInfoNV( VULKAN_HPP_NAMESPACE::PipelineCreateFlags flags_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo> const & stages_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::RayTracingShaderGroupCreateInfoNV> const & groups_ = {}, uint32_t maxRecursionDepth_ = {}, VULKAN_HPP_NAMESPACE::PipelineLayout layout_ = {}, VULKAN_HPP_NAMESPACE::Pipeline basePipelineHandle_ = {}, int32_t basePipelineIndex_ = {} )
- : flags( flags_ ), stageCount( static_cast<uint32_t>( stages_.size() ) ), pStages( stages_.data() ), groupCount( static_cast<uint32_t>( groups_.size() ) ), pGroups( groups_.data() ), maxRecursionDepth( maxRecursionDepth_ ), layout( layout_ ), basePipelineHandle( basePipelineHandle_ ), basePipelineIndex( basePipelineIndex_ )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- RayTracingPipelineCreateInfoNV & operator=( VkRayTracingPipelineCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoNV const *>( &rhs );
- return *this;
- }
-
- RayTracingPipelineCreateInfoNV & operator=( RayTracingPipelineCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( RayTracingPipelineCreateInfoNV ) );
- return *this;
- }
-
- RayTracingPipelineCreateInfoNV & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- RayTracingPipelineCreateInfoNV & setFlags( VULKAN_HPP_NAMESPACE::PipelineCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- RayTracingPipelineCreateInfoNV & setStageCount( uint32_t stageCount_ ) VULKAN_HPP_NOEXCEPT
- {
- stageCount = stageCount_;
- return *this;
- }
-
- RayTracingPipelineCreateInfoNV & setPStages( const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo* pStages_ ) VULKAN_HPP_NOEXCEPT
- {
- pStages = pStages_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- RayTracingPipelineCreateInfoNV & setStages( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo> const & stages_ ) VULKAN_HPP_NOEXCEPT
- {
- stageCount = static_cast<uint32_t>( stages_.size() );
- pStages = stages_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- RayTracingPipelineCreateInfoNV & setGroupCount( uint32_t groupCount_ ) VULKAN_HPP_NOEXCEPT
- {
- groupCount = groupCount_;
- return *this;
- }
-
- RayTracingPipelineCreateInfoNV & setPGroups( const VULKAN_HPP_NAMESPACE::RayTracingShaderGroupCreateInfoNV* pGroups_ ) VULKAN_HPP_NOEXCEPT
- {
- pGroups = pGroups_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- RayTracingPipelineCreateInfoNV & setGroups( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::RayTracingShaderGroupCreateInfoNV> const & groups_ ) VULKAN_HPP_NOEXCEPT
- {
- groupCount = static_cast<uint32_t>( groups_.size() );
- pGroups = groups_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- RayTracingPipelineCreateInfoNV & setMaxRecursionDepth( uint32_t maxRecursionDepth_ ) VULKAN_HPP_NOEXCEPT
- {
- maxRecursionDepth = maxRecursionDepth_;
- return *this;
- }
-
- RayTracingPipelineCreateInfoNV & setLayout( VULKAN_HPP_NAMESPACE::PipelineLayout layout_ ) VULKAN_HPP_NOEXCEPT
- {
- layout = layout_;
- return *this;
- }
-
- RayTracingPipelineCreateInfoNV & setBasePipelineHandle( VULKAN_HPP_NAMESPACE::Pipeline basePipelineHandle_ ) VULKAN_HPP_NOEXCEPT
- {
- basePipelineHandle = basePipelineHandle_;
- return *this;
- }
-
- RayTracingPipelineCreateInfoNV & setBasePipelineIndex( int32_t basePipelineIndex_ ) VULKAN_HPP_NOEXCEPT
- {
- basePipelineIndex = basePipelineIndex_;
- return *this;
- }
-
-
- operator VkRayTracingPipelineCreateInfoNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkRayTracingPipelineCreateInfoNV*>( this );
- }
-
- operator VkRayTracingPipelineCreateInfoNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkRayTracingPipelineCreateInfoNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( RayTracingPipelineCreateInfoNV const& ) const = default;
-#else
- bool operator==( RayTracingPipelineCreateInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( stageCount == rhs.stageCount )
- && ( pStages == rhs.pStages )
- && ( groupCount == rhs.groupCount )
- && ( pGroups == rhs.pGroups )
- && ( maxRecursionDepth == rhs.maxRecursionDepth )
- && ( layout == rhs.layout )
- && ( basePipelineHandle == rhs.basePipelineHandle )
- && ( basePipelineIndex == rhs.basePipelineIndex );
- }
-
- bool operator!=( RayTracingPipelineCreateInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eRayTracingPipelineCreateInfoNV;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::PipelineCreateFlags flags = {};
- uint32_t stageCount = {};
- const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo* pStages = {};
- uint32_t groupCount = {};
- const VULKAN_HPP_NAMESPACE::RayTracingShaderGroupCreateInfoNV* pGroups = {};
- uint32_t maxRecursionDepth = {};
- VULKAN_HPP_NAMESPACE::PipelineLayout layout = {};
- VULKAN_HPP_NAMESPACE::Pipeline basePipelineHandle = {};
- int32_t basePipelineIndex = {};
-
- };
- static_assert( sizeof( RayTracingPipelineCreateInfoNV ) == sizeof( VkRayTracingPipelineCreateInfoNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<RayTracingPipelineCreateInfoNV>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eRayTracingPipelineCreateInfoNV>
- {
- using Type = RayTracingPipelineCreateInfoNV;
- };
-
- struct SubpassDescription
+ struct StructExtends<PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV, DeviceCreateInfo>
{
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR SubpassDescription(VULKAN_HPP_NAMESPACE::SubpassDescriptionFlags flags_ = {}, VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint_ = VULKAN_HPP_NAMESPACE::PipelineBindPoint::eGraphics, uint32_t inputAttachmentCount_ = {}, const VULKAN_HPP_NAMESPACE::AttachmentReference* pInputAttachments_ = {}, uint32_t colorAttachmentCount_ = {}, const VULKAN_HPP_NAMESPACE::AttachmentReference* pColorAttachments_ = {}, const VULKAN_HPP_NAMESPACE::AttachmentReference* pResolveAttachments_ = {}, const VULKAN_HPP_NAMESPACE::AttachmentReference* pDepthStencilAttachment_ = {}, uint32_t preserveAttachmentCount_ = {}, const uint32_t* pPreserveAttachments_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), pipelineBindPoint( pipelineBindPoint_ ), inputAttachmentCount( inputAttachmentCount_ ), pInputAttachments( pInputAttachments_ ), colorAttachmentCount( colorAttachmentCount_ ), pColorAttachments( pColorAttachments_ ), pResolveAttachments( pResolveAttachments_ ), pDepthStencilAttachment( pDepthStencilAttachment_ ), preserveAttachmentCount( preserveAttachmentCount_ ), pPreserveAttachments( pPreserveAttachments_ )
- {}
-
- VULKAN_HPP_CONSTEXPR SubpassDescription( SubpassDescription const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- SubpassDescription( VkSubpassDescription const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- SubpassDescription( VULKAN_HPP_NAMESPACE::SubpassDescriptionFlags flags_, VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AttachmentReference> const & inputAttachments_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AttachmentReference> const & colorAttachments_ = {}, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AttachmentReference> const & resolveAttachments_ = {}, const VULKAN_HPP_NAMESPACE::AttachmentReference* pDepthStencilAttachment_ = {}, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & preserveAttachments_ = {} )
- : flags( flags_ ), pipelineBindPoint( pipelineBindPoint_ ), inputAttachmentCount( static_cast<uint32_t>( inputAttachments_.size() ) ), pInputAttachments( inputAttachments_.data() ), colorAttachmentCount( static_cast<uint32_t>( colorAttachments_.size() ) ), pColorAttachments( colorAttachments_.data() ), pResolveAttachments( resolveAttachments_.data() ), pDepthStencilAttachment( pDepthStencilAttachment_ ), preserveAttachmentCount( static_cast<uint32_t>( preserveAttachments_.size() ) ), pPreserveAttachments( preserveAttachments_.data() )
- {
-#ifdef VULKAN_HPP_NO_EXCEPTIONS
- VULKAN_HPP_ASSERT( resolveAttachments_.empty() || ( colorAttachments_.size() == resolveAttachments_.size() ) );
-#else
- if ( !resolveAttachments_.empty() && ( colorAttachments_.size() != resolveAttachments_.size() ) )
- {
- throw LogicError( VULKAN_HPP_NAMESPACE_STRING "::SubpassDescription::SubpassDescription: !resolveAttachments_.empty() && ( colorAttachments_.size() != resolveAttachments_.size() )" );
- }
-#endif /*VULKAN_HPP_NO_EXCEPTIONS*/
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- SubpassDescription & operator=( VkSubpassDescription const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SubpassDescription const *>( &rhs );
- return *this;
- }
-
- SubpassDescription & operator=( SubpassDescription const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( SubpassDescription ) );
- return *this;
- }
-
- SubpassDescription & setFlags( VULKAN_HPP_NAMESPACE::SubpassDescriptionFlags flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- SubpassDescription & setPipelineBindPoint( VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint_ ) VULKAN_HPP_NOEXCEPT
- {
- pipelineBindPoint = pipelineBindPoint_;
- return *this;
- }
-
- SubpassDescription & setInputAttachmentCount( uint32_t inputAttachmentCount_ ) VULKAN_HPP_NOEXCEPT
- {
- inputAttachmentCount = inputAttachmentCount_;
- return *this;
- }
-
- SubpassDescription & setPInputAttachments( const VULKAN_HPP_NAMESPACE::AttachmentReference* pInputAttachments_ ) VULKAN_HPP_NOEXCEPT
- {
- pInputAttachments = pInputAttachments_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- SubpassDescription & setInputAttachments( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AttachmentReference> const & inputAttachments_ ) VULKAN_HPP_NOEXCEPT
- {
- inputAttachmentCount = static_cast<uint32_t>( inputAttachments_.size() );
- pInputAttachments = inputAttachments_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- SubpassDescription & setColorAttachmentCount( uint32_t colorAttachmentCount_ ) VULKAN_HPP_NOEXCEPT
- {
- colorAttachmentCount = colorAttachmentCount_;
- return *this;
- }
-
- SubpassDescription & setPColorAttachments( const VULKAN_HPP_NAMESPACE::AttachmentReference* pColorAttachments_ ) VULKAN_HPP_NOEXCEPT
- {
- pColorAttachments = pColorAttachments_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- SubpassDescription & setColorAttachments( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AttachmentReference> const & colorAttachments_ ) VULKAN_HPP_NOEXCEPT
- {
- colorAttachmentCount = static_cast<uint32_t>( colorAttachments_.size() );
- pColorAttachments = colorAttachments_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- SubpassDescription & setPResolveAttachments( const VULKAN_HPP_NAMESPACE::AttachmentReference* pResolveAttachments_ ) VULKAN_HPP_NOEXCEPT
- {
- pResolveAttachments = pResolveAttachments_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- SubpassDescription & setResolveAttachments( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AttachmentReference> const & resolveAttachments_ ) VULKAN_HPP_NOEXCEPT
- {
- colorAttachmentCount = static_cast<uint32_t>( resolveAttachments_.size() );
- pResolveAttachments = resolveAttachments_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- SubpassDescription & setPDepthStencilAttachment( const VULKAN_HPP_NAMESPACE::AttachmentReference* pDepthStencilAttachment_ ) VULKAN_HPP_NOEXCEPT
- {
- pDepthStencilAttachment = pDepthStencilAttachment_;
- return *this;
- }
-
- SubpassDescription & setPreserveAttachmentCount( uint32_t preserveAttachmentCount_ ) VULKAN_HPP_NOEXCEPT
- {
- preserveAttachmentCount = preserveAttachmentCount_;
- return *this;
- }
-
- SubpassDescription & setPPreserveAttachments( const uint32_t* pPreserveAttachments_ ) VULKAN_HPP_NOEXCEPT
- {
- pPreserveAttachments = pPreserveAttachments_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- SubpassDescription & setPreserveAttachments( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & preserveAttachments_ ) VULKAN_HPP_NOEXCEPT
- {
- preserveAttachmentCount = static_cast<uint32_t>( preserveAttachments_.size() );
- pPreserveAttachments = preserveAttachments_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkSubpassDescription const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkSubpassDescription*>( this );
- }
-
- operator VkSubpassDescription &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkSubpassDescription*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( SubpassDescription const& ) const = default;
-#else
- bool operator==( SubpassDescription const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( flags == rhs.flags )
- && ( pipelineBindPoint == rhs.pipelineBindPoint )
- && ( inputAttachmentCount == rhs.inputAttachmentCount )
- && ( pInputAttachments == rhs.pInputAttachments )
- && ( colorAttachmentCount == rhs.colorAttachmentCount )
- && ( pColorAttachments == rhs.pColorAttachments )
- && ( pResolveAttachments == rhs.pResolveAttachments )
- && ( pDepthStencilAttachment == rhs.pDepthStencilAttachment )
- && ( preserveAttachmentCount == rhs.preserveAttachmentCount )
- && ( pPreserveAttachments == rhs.pPreserveAttachments );
- }
-
- bool operator!=( SubpassDescription const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::SubpassDescriptionFlags flags = {};
- VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint = VULKAN_HPP_NAMESPACE::PipelineBindPoint::eGraphics;
- uint32_t inputAttachmentCount = {};
- const VULKAN_HPP_NAMESPACE::AttachmentReference* pInputAttachments = {};
- uint32_t colorAttachmentCount = {};
- const VULKAN_HPP_NAMESPACE::AttachmentReference* pColorAttachments = {};
- const VULKAN_HPP_NAMESPACE::AttachmentReference* pResolveAttachments = {};
- const VULKAN_HPP_NAMESPACE::AttachmentReference* pDepthStencilAttachment = {};
- uint32_t preserveAttachmentCount = {};
- const uint32_t* pPreserveAttachments = {};
-
- };
- static_assert( sizeof( SubpassDescription ) == sizeof( VkSubpassDescription ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<SubpassDescription>::value, "struct wrapper is not a standard layout!" );
-
- struct SubpassDependency
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR SubpassDependency(uint32_t srcSubpass_ = {}, uint32_t dstSubpass_ = {}, VULKAN_HPP_NAMESPACE::PipelineStageFlags srcStageMask_ = {}, VULKAN_HPP_NAMESPACE::PipelineStageFlags dstStageMask_ = {}, VULKAN_HPP_NAMESPACE::AccessFlags srcAccessMask_ = {}, VULKAN_HPP_NAMESPACE::AccessFlags dstAccessMask_ = {}, VULKAN_HPP_NAMESPACE::DependencyFlags dependencyFlags_ = {}) VULKAN_HPP_NOEXCEPT
- : srcSubpass( srcSubpass_ ), dstSubpass( dstSubpass_ ), srcStageMask( srcStageMask_ ), dstStageMask( dstStageMask_ ), srcAccessMask( srcAccessMask_ ), dstAccessMask( dstAccessMask_ ), dependencyFlags( dependencyFlags_ )
- {}
-
- VULKAN_HPP_CONSTEXPR SubpassDependency( SubpassDependency const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- SubpassDependency( VkSubpassDependency const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- SubpassDependency & operator=( VkSubpassDependency const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SubpassDependency const *>( &rhs );
- return *this;
- }
-
- SubpassDependency & operator=( SubpassDependency const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( SubpassDependency ) );
- return *this;
- }
-
- SubpassDependency & setSrcSubpass( uint32_t srcSubpass_ ) VULKAN_HPP_NOEXCEPT
- {
- srcSubpass = srcSubpass_;
- return *this;
- }
-
- SubpassDependency & setDstSubpass( uint32_t dstSubpass_ ) VULKAN_HPP_NOEXCEPT
- {
- dstSubpass = dstSubpass_;
- return *this;
- }
-
- SubpassDependency & setSrcStageMask( VULKAN_HPP_NAMESPACE::PipelineStageFlags srcStageMask_ ) VULKAN_HPP_NOEXCEPT
- {
- srcStageMask = srcStageMask_;
- return *this;
- }
-
- SubpassDependency & setDstStageMask( VULKAN_HPP_NAMESPACE::PipelineStageFlags dstStageMask_ ) VULKAN_HPP_NOEXCEPT
- {
- dstStageMask = dstStageMask_;
- return *this;
- }
-
- SubpassDependency & setSrcAccessMask( VULKAN_HPP_NAMESPACE::AccessFlags srcAccessMask_ ) VULKAN_HPP_NOEXCEPT
- {
- srcAccessMask = srcAccessMask_;
- return *this;
- }
-
- SubpassDependency & setDstAccessMask( VULKAN_HPP_NAMESPACE::AccessFlags dstAccessMask_ ) VULKAN_HPP_NOEXCEPT
- {
- dstAccessMask = dstAccessMask_;
- return *this;
- }
-
- SubpassDependency & setDependencyFlags( VULKAN_HPP_NAMESPACE::DependencyFlags dependencyFlags_ ) VULKAN_HPP_NOEXCEPT
- {
- dependencyFlags = dependencyFlags_;
- return *this;
- }
-
-
- operator VkSubpassDependency const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkSubpassDependency*>( this );
- }
-
- operator VkSubpassDependency &() VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<VkSubpassDependency*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( SubpassDependency const& ) const = default;
-#else
- bool operator==( SubpassDependency const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( srcSubpass == rhs.srcSubpass )
- && ( dstSubpass == rhs.dstSubpass )
- && ( srcStageMask == rhs.srcStageMask )
- && ( dstStageMask == rhs.dstStageMask )
- && ( srcAccessMask == rhs.srcAccessMask )
- && ( dstAccessMask == rhs.dstAccessMask )
- && ( dependencyFlags == rhs.dependencyFlags );
- }
-
- bool operator!=( SubpassDependency const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- uint32_t srcSubpass = {};
- uint32_t dstSubpass = {};
- VULKAN_HPP_NAMESPACE::PipelineStageFlags srcStageMask = {};
- VULKAN_HPP_NAMESPACE::PipelineStageFlags dstStageMask = {};
- VULKAN_HPP_NAMESPACE::AccessFlags srcAccessMask = {};
- VULKAN_HPP_NAMESPACE::AccessFlags dstAccessMask = {};
- VULKAN_HPP_NAMESPACE::DependencyFlags dependencyFlags = {};
-
- };
- static_assert( sizeof( SubpassDependency ) == sizeof( VkSubpassDependency ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<SubpassDependency>::value, "struct wrapper is not a standard layout!" );
-
- struct RenderPassCreateInfo
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eRenderPassCreateInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR RenderPassCreateInfo(VULKAN_HPP_NAMESPACE::RenderPassCreateFlags flags_ = {}, uint32_t attachmentCount_ = {}, const VULKAN_HPP_NAMESPACE::AttachmentDescription* pAttachments_ = {}, uint32_t subpassCount_ = {}, const VULKAN_HPP_NAMESPACE::SubpassDescription* pSubpasses_ = {}, uint32_t dependencyCount_ = {}, const VULKAN_HPP_NAMESPACE::SubpassDependency* pDependencies_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), attachmentCount( attachmentCount_ ), pAttachments( pAttachments_ ), subpassCount( subpassCount_ ), pSubpasses( pSubpasses_ ), dependencyCount( dependencyCount_ ), pDependencies( pDependencies_ )
- {}
-
- VULKAN_HPP_CONSTEXPR RenderPassCreateInfo( RenderPassCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- RenderPassCreateInfo( VkRenderPassCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- RenderPassCreateInfo( VULKAN_HPP_NAMESPACE::RenderPassCreateFlags flags_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AttachmentDescription> const & attachments_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SubpassDescription> const & subpasses_ = {}, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SubpassDependency> const & dependencies_ = {} )
- : flags( flags_ ), attachmentCount( static_cast<uint32_t>( attachments_.size() ) ), pAttachments( attachments_.data() ), subpassCount( static_cast<uint32_t>( subpasses_.size() ) ), pSubpasses( subpasses_.data() ), dependencyCount( static_cast<uint32_t>( dependencies_.size() ) ), pDependencies( dependencies_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- RenderPassCreateInfo & operator=( VkRenderPassCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::RenderPassCreateInfo const *>( &rhs );
- return *this;
- }
-
- RenderPassCreateInfo & operator=( RenderPassCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( RenderPassCreateInfo ) );
- return *this;
- }
-
- RenderPassCreateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- RenderPassCreateInfo & setFlags( VULKAN_HPP_NAMESPACE::RenderPassCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- RenderPassCreateInfo & setAttachmentCount( uint32_t attachmentCount_ ) VULKAN_HPP_NOEXCEPT
- {
- attachmentCount = attachmentCount_;
- return *this;
- }
-
- RenderPassCreateInfo & setPAttachments( const VULKAN_HPP_NAMESPACE::AttachmentDescription* pAttachments_ ) VULKAN_HPP_NOEXCEPT
- {
- pAttachments = pAttachments_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- RenderPassCreateInfo & setAttachments( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AttachmentDescription> const & attachments_ ) VULKAN_HPP_NOEXCEPT
- {
- attachmentCount = static_cast<uint32_t>( attachments_.size() );
- pAttachments = attachments_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- RenderPassCreateInfo & setSubpassCount( uint32_t subpassCount_ ) VULKAN_HPP_NOEXCEPT
- {
- subpassCount = subpassCount_;
- return *this;
- }
-
- RenderPassCreateInfo & setPSubpasses( const VULKAN_HPP_NAMESPACE::SubpassDescription* pSubpasses_ ) VULKAN_HPP_NOEXCEPT
- {
- pSubpasses = pSubpasses_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- RenderPassCreateInfo & setSubpasses( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SubpassDescription> const & subpasses_ ) VULKAN_HPP_NOEXCEPT
- {
- subpassCount = static_cast<uint32_t>( subpasses_.size() );
- pSubpasses = subpasses_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- RenderPassCreateInfo & setDependencyCount( uint32_t dependencyCount_ ) VULKAN_HPP_NOEXCEPT
- {
- dependencyCount = dependencyCount_;
- return *this;
- }
-
- RenderPassCreateInfo & setPDependencies( const VULKAN_HPP_NAMESPACE::SubpassDependency* pDependencies_ ) VULKAN_HPP_NOEXCEPT
- {
- pDependencies = pDependencies_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- RenderPassCreateInfo & setDependencies( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SubpassDependency> const & dependencies_ ) VULKAN_HPP_NOEXCEPT
- {
- dependencyCount = static_cast<uint32_t>( dependencies_.size() );
- pDependencies = dependencies_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkRenderPassCreateInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkRenderPassCreateInfo*>( this );
- }
-
- operator VkRenderPassCreateInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkRenderPassCreateInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( RenderPassCreateInfo const& ) const = default;
-#else
- bool operator==( RenderPassCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( attachmentCount == rhs.attachmentCount )
- && ( pAttachments == rhs.pAttachments )
- && ( subpassCount == rhs.subpassCount )
- && ( pSubpasses == rhs.pSubpasses )
- && ( dependencyCount == rhs.dependencyCount )
- && ( pDependencies == rhs.pDependencies );
- }
-
- bool operator!=( RenderPassCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eRenderPassCreateInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::RenderPassCreateFlags flags = {};
- uint32_t attachmentCount = {};
- const VULKAN_HPP_NAMESPACE::AttachmentDescription* pAttachments = {};
- uint32_t subpassCount = {};
- const VULKAN_HPP_NAMESPACE::SubpassDescription* pSubpasses = {};
- uint32_t dependencyCount = {};
- const VULKAN_HPP_NAMESPACE::SubpassDependency* pDependencies = {};
-
- };
- static_assert( sizeof( RenderPassCreateInfo ) == sizeof( VkRenderPassCreateInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<RenderPassCreateInfo>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::eRenderPassCreateInfo>
- {
- using Type = RenderPassCreateInfo;
+ value = true
+ };
};
-
- struct SubpassDescription2
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSubpassDescription2;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR SubpassDescription2(VULKAN_HPP_NAMESPACE::SubpassDescriptionFlags flags_ = {}, VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint_ = VULKAN_HPP_NAMESPACE::PipelineBindPoint::eGraphics, uint32_t viewMask_ = {}, uint32_t inputAttachmentCount_ = {}, const VULKAN_HPP_NAMESPACE::AttachmentReference2* pInputAttachments_ = {}, uint32_t colorAttachmentCount_ = {}, const VULKAN_HPP_NAMESPACE::AttachmentReference2* pColorAttachments_ = {}, const VULKAN_HPP_NAMESPACE::AttachmentReference2* pResolveAttachments_ = {}, const VULKAN_HPP_NAMESPACE::AttachmentReference2* pDepthStencilAttachment_ = {}, uint32_t preserveAttachmentCount_ = {}, const uint32_t* pPreserveAttachments_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), pipelineBindPoint( pipelineBindPoint_ ), viewMask( viewMask_ ), inputAttachmentCount( inputAttachmentCount_ ), pInputAttachments( pInputAttachments_ ), colorAttachmentCount( colorAttachmentCount_ ), pColorAttachments( pColorAttachments_ ), pResolveAttachments( pResolveAttachments_ ), pDepthStencilAttachment( pDepthStencilAttachment_ ), preserveAttachmentCount( preserveAttachmentCount_ ), pPreserveAttachments( pPreserveAttachments_ )
- {}
-
- VULKAN_HPP_CONSTEXPR SubpassDescription2( SubpassDescription2 const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- SubpassDescription2( VkSubpassDescription2 const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- SubpassDescription2( VULKAN_HPP_NAMESPACE::SubpassDescriptionFlags flags_, VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint_, uint32_t viewMask_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AttachmentReference2> const & inputAttachments_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AttachmentReference2> const & colorAttachments_ = {}, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AttachmentReference2> const & resolveAttachments_ = {}, const VULKAN_HPP_NAMESPACE::AttachmentReference2* pDepthStencilAttachment_ = {}, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & preserveAttachments_ = {} )
- : flags( flags_ ), pipelineBindPoint( pipelineBindPoint_ ), viewMask( viewMask_ ), inputAttachmentCount( static_cast<uint32_t>( inputAttachments_.size() ) ), pInputAttachments( inputAttachments_.data() ), colorAttachmentCount( static_cast<uint32_t>( colorAttachments_.size() ) ), pColorAttachments( colorAttachments_.data() ), pResolveAttachments( resolveAttachments_.data() ), pDepthStencilAttachment( pDepthStencilAttachment_ ), preserveAttachmentCount( static_cast<uint32_t>( preserveAttachments_.size() ) ), pPreserveAttachments( preserveAttachments_.data() )
- {
-#ifdef VULKAN_HPP_NO_EXCEPTIONS
- VULKAN_HPP_ASSERT( resolveAttachments_.empty() || ( colorAttachments_.size() == resolveAttachments_.size() ) );
-#else
- if ( !resolveAttachments_.empty() && ( colorAttachments_.size() != resolveAttachments_.size() ) )
- {
- throw LogicError( VULKAN_HPP_NAMESPACE_STRING "::SubpassDescription2::SubpassDescription2: !resolveAttachments_.empty() && ( colorAttachments_.size() != resolveAttachments_.size() )" );
- }
-#endif /*VULKAN_HPP_NO_EXCEPTIONS*/
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- SubpassDescription2 & operator=( VkSubpassDescription2 const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SubpassDescription2 const *>( &rhs );
- return *this;
- }
-
- SubpassDescription2 & operator=( SubpassDescription2 const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( SubpassDescription2 ) );
- return *this;
- }
-
- SubpassDescription2 & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- SubpassDescription2 & setFlags( VULKAN_HPP_NAMESPACE::SubpassDescriptionFlags flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- SubpassDescription2 & setPipelineBindPoint( VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint_ ) VULKAN_HPP_NOEXCEPT
- {
- pipelineBindPoint = pipelineBindPoint_;
- return *this;
- }
-
- SubpassDescription2 & setViewMask( uint32_t viewMask_ ) VULKAN_HPP_NOEXCEPT
- {
- viewMask = viewMask_;
- return *this;
- }
-
- SubpassDescription2 & setInputAttachmentCount( uint32_t inputAttachmentCount_ ) VULKAN_HPP_NOEXCEPT
- {
- inputAttachmentCount = inputAttachmentCount_;
- return *this;
- }
-
- SubpassDescription2 & setPInputAttachments( const VULKAN_HPP_NAMESPACE::AttachmentReference2* pInputAttachments_ ) VULKAN_HPP_NOEXCEPT
- {
- pInputAttachments = pInputAttachments_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- SubpassDescription2 & setInputAttachments( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AttachmentReference2> const & inputAttachments_ ) VULKAN_HPP_NOEXCEPT
- {
- inputAttachmentCount = static_cast<uint32_t>( inputAttachments_.size() );
- pInputAttachments = inputAttachments_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- SubpassDescription2 & setColorAttachmentCount( uint32_t colorAttachmentCount_ ) VULKAN_HPP_NOEXCEPT
- {
- colorAttachmentCount = colorAttachmentCount_;
- return *this;
- }
-
- SubpassDescription2 & setPColorAttachments( const VULKAN_HPP_NAMESPACE::AttachmentReference2* pColorAttachments_ ) VULKAN_HPP_NOEXCEPT
- {
- pColorAttachments = pColorAttachments_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- SubpassDescription2 & setColorAttachments( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AttachmentReference2> const & colorAttachments_ ) VULKAN_HPP_NOEXCEPT
- {
- colorAttachmentCount = static_cast<uint32_t>( colorAttachments_.size() );
- pColorAttachments = colorAttachments_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- SubpassDescription2 & setPResolveAttachments( const VULKAN_HPP_NAMESPACE::AttachmentReference2* pResolveAttachments_ ) VULKAN_HPP_NOEXCEPT
- {
- pResolveAttachments = pResolveAttachments_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- SubpassDescription2 & setResolveAttachments( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AttachmentReference2> const & resolveAttachments_ ) VULKAN_HPP_NOEXCEPT
- {
- colorAttachmentCount = static_cast<uint32_t>( resolveAttachments_.size() );
- pResolveAttachments = resolveAttachments_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- SubpassDescription2 & setPDepthStencilAttachment( const VULKAN_HPP_NAMESPACE::AttachmentReference2* pDepthStencilAttachment_ ) VULKAN_HPP_NOEXCEPT
- {
- pDepthStencilAttachment = pDepthStencilAttachment_;
- return *this;
- }
-
- SubpassDescription2 & setPreserveAttachmentCount( uint32_t preserveAttachmentCount_ ) VULKAN_HPP_NOEXCEPT
- {
- preserveAttachmentCount = preserveAttachmentCount_;
- return *this;
- }
-
- SubpassDescription2 & setPPreserveAttachments( const uint32_t* pPreserveAttachments_ ) VULKAN_HPP_NOEXCEPT
- {
- pPreserveAttachments = pPreserveAttachments_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- SubpassDescription2 & setPreserveAttachments( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & preserveAttachments_ ) VULKAN_HPP_NOEXCEPT
- {
- preserveAttachmentCount = static_cast<uint32_t>( preserveAttachments_.size() );
- pPreserveAttachments = preserveAttachments_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkSubpassDescription2 const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkSubpassDescription2*>( this );
- }
-
- operator VkSubpassDescription2 &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkSubpassDescription2*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( SubpassDescription2 const& ) const = default;
-#else
- bool operator==( SubpassDescription2 const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( pipelineBindPoint == rhs.pipelineBindPoint )
- && ( viewMask == rhs.viewMask )
- && ( inputAttachmentCount == rhs.inputAttachmentCount )
- && ( pInputAttachments == rhs.pInputAttachments )
- && ( colorAttachmentCount == rhs.colorAttachmentCount )
- && ( pColorAttachments == rhs.pColorAttachments )
- && ( pResolveAttachments == rhs.pResolveAttachments )
- && ( pDepthStencilAttachment == rhs.pDepthStencilAttachment )
- && ( preserveAttachmentCount == rhs.preserveAttachmentCount )
- && ( pPreserveAttachments == rhs.pPreserveAttachments );
- }
-
- bool operator!=( SubpassDescription2 const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSubpassDescription2;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::SubpassDescriptionFlags flags = {};
- VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint = VULKAN_HPP_NAMESPACE::PipelineBindPoint::eGraphics;
- uint32_t viewMask = {};
- uint32_t inputAttachmentCount = {};
- const VULKAN_HPP_NAMESPACE::AttachmentReference2* pInputAttachments = {};
- uint32_t colorAttachmentCount = {};
- const VULKAN_HPP_NAMESPACE::AttachmentReference2* pColorAttachments = {};
- const VULKAN_HPP_NAMESPACE::AttachmentReference2* pResolveAttachments = {};
- const VULKAN_HPP_NAMESPACE::AttachmentReference2* pDepthStencilAttachment = {};
- uint32_t preserveAttachmentCount = {};
- const uint32_t* pPreserveAttachments = {};
-
- };
- static_assert( sizeof( SubpassDescription2 ) == sizeof( VkSubpassDescription2 ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<SubpassDescription2>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eSubpassDescription2>
+ struct StructExtends<PhysicalDeviceDepthClipEnableFeaturesEXT, PhysicalDeviceFeatures2>
{
- using Type = SubpassDescription2;
- };
- using SubpassDescription2KHR = SubpassDescription2;
-
- struct SubpassDependency2
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSubpassDependency2;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR SubpassDependency2(uint32_t srcSubpass_ = {}, uint32_t dstSubpass_ = {}, VULKAN_HPP_NAMESPACE::PipelineStageFlags srcStageMask_ = {}, VULKAN_HPP_NAMESPACE::PipelineStageFlags dstStageMask_ = {}, VULKAN_HPP_NAMESPACE::AccessFlags srcAccessMask_ = {}, VULKAN_HPP_NAMESPACE::AccessFlags dstAccessMask_ = {}, VULKAN_HPP_NAMESPACE::DependencyFlags dependencyFlags_ = {}, int32_t viewOffset_ = {}) VULKAN_HPP_NOEXCEPT
- : srcSubpass( srcSubpass_ ), dstSubpass( dstSubpass_ ), srcStageMask( srcStageMask_ ), dstStageMask( dstStageMask_ ), srcAccessMask( srcAccessMask_ ), dstAccessMask( dstAccessMask_ ), dependencyFlags( dependencyFlags_ ), viewOffset( viewOffset_ )
- {}
-
- VULKAN_HPP_CONSTEXPR SubpassDependency2( SubpassDependency2 const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- SubpassDependency2( VkSubpassDependency2 const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- SubpassDependency2 & operator=( VkSubpassDependency2 const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SubpassDependency2 const *>( &rhs );
- return *this;
- }
-
- SubpassDependency2 & operator=( SubpassDependency2 const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( SubpassDependency2 ) );
- return *this;
- }
-
- SubpassDependency2 & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- SubpassDependency2 & setSrcSubpass( uint32_t srcSubpass_ ) VULKAN_HPP_NOEXCEPT
- {
- srcSubpass = srcSubpass_;
- return *this;
- }
-
- SubpassDependency2 & setDstSubpass( uint32_t dstSubpass_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- dstSubpass = dstSubpass_;
- return *this;
- }
-
- SubpassDependency2 & setSrcStageMask( VULKAN_HPP_NAMESPACE::PipelineStageFlags srcStageMask_ ) VULKAN_HPP_NOEXCEPT
- {
- srcStageMask = srcStageMask_;
- return *this;
- }
-
- SubpassDependency2 & setDstStageMask( VULKAN_HPP_NAMESPACE::PipelineStageFlags dstStageMask_ ) VULKAN_HPP_NOEXCEPT
- {
- dstStageMask = dstStageMask_;
- return *this;
- }
-
- SubpassDependency2 & setSrcAccessMask( VULKAN_HPP_NAMESPACE::AccessFlags srcAccessMask_ ) VULKAN_HPP_NOEXCEPT
- {
- srcAccessMask = srcAccessMask_;
- return *this;
- }
-
- SubpassDependency2 & setDstAccessMask( VULKAN_HPP_NAMESPACE::AccessFlags dstAccessMask_ ) VULKAN_HPP_NOEXCEPT
- {
- dstAccessMask = dstAccessMask_;
- return *this;
- }
-
- SubpassDependency2 & setDependencyFlags( VULKAN_HPP_NAMESPACE::DependencyFlags dependencyFlags_ ) VULKAN_HPP_NOEXCEPT
- {
- dependencyFlags = dependencyFlags_;
- return *this;
- }
-
- SubpassDependency2 & setViewOffset( int32_t viewOffset_ ) VULKAN_HPP_NOEXCEPT
- {
- viewOffset = viewOffset_;
- return *this;
- }
-
-
- operator VkSubpassDependency2 const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkSubpassDependency2*>( this );
- }
-
- operator VkSubpassDependency2 &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkSubpassDependency2*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( SubpassDependency2 const& ) const = default;
-#else
- bool operator==( SubpassDependency2 const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( srcSubpass == rhs.srcSubpass )
- && ( dstSubpass == rhs.dstSubpass )
- && ( srcStageMask == rhs.srcStageMask )
- && ( dstStageMask == rhs.dstStageMask )
- && ( srcAccessMask == rhs.srcAccessMask )
- && ( dstAccessMask == rhs.dstAccessMask )
- && ( dependencyFlags == rhs.dependencyFlags )
- && ( viewOffset == rhs.viewOffset );
- }
-
- bool operator!=( SubpassDependency2 const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSubpassDependency2;
- const void* pNext = {};
- uint32_t srcSubpass = {};
- uint32_t dstSubpass = {};
- VULKAN_HPP_NAMESPACE::PipelineStageFlags srcStageMask = {};
- VULKAN_HPP_NAMESPACE::PipelineStageFlags dstStageMask = {};
- VULKAN_HPP_NAMESPACE::AccessFlags srcAccessMask = {};
- VULKAN_HPP_NAMESPACE::AccessFlags dstAccessMask = {};
- VULKAN_HPP_NAMESPACE::DependencyFlags dependencyFlags = {};
- int32_t viewOffset = {};
-
+ value = true
+ };
};
- static_assert( sizeof( SubpassDependency2 ) == sizeof( VkSubpassDependency2 ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<SubpassDependency2>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eSubpassDependency2>
+ struct StructExtends<PhysicalDeviceDepthClipEnableFeaturesEXT, DeviceCreateInfo>
{
- using Type = SubpassDependency2;
- };
- using SubpassDependency2KHR = SubpassDependency2;
-
- struct RenderPassCreateInfo2
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eRenderPassCreateInfo2;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR RenderPassCreateInfo2(VULKAN_HPP_NAMESPACE::RenderPassCreateFlags flags_ = {}, uint32_t attachmentCount_ = {}, const VULKAN_HPP_NAMESPACE::AttachmentDescription2* pAttachments_ = {}, uint32_t subpassCount_ = {}, const VULKAN_HPP_NAMESPACE::SubpassDescription2* pSubpasses_ = {}, uint32_t dependencyCount_ = {}, const VULKAN_HPP_NAMESPACE::SubpassDependency2* pDependencies_ = {}, uint32_t correlatedViewMaskCount_ = {}, const uint32_t* pCorrelatedViewMasks_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), attachmentCount( attachmentCount_ ), pAttachments( pAttachments_ ), subpassCount( subpassCount_ ), pSubpasses( pSubpasses_ ), dependencyCount( dependencyCount_ ), pDependencies( pDependencies_ ), correlatedViewMaskCount( correlatedViewMaskCount_ ), pCorrelatedViewMasks( pCorrelatedViewMasks_ )
- {}
-
- VULKAN_HPP_CONSTEXPR RenderPassCreateInfo2( RenderPassCreateInfo2 const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- RenderPassCreateInfo2( VkRenderPassCreateInfo2 const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- RenderPassCreateInfo2( VULKAN_HPP_NAMESPACE::RenderPassCreateFlags flags_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AttachmentDescription2> const & attachments_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SubpassDescription2> const & subpasses_ = {}, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SubpassDependency2> const & dependencies_ = {}, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & correlatedViewMasks_ = {} )
- : flags( flags_ ), attachmentCount( static_cast<uint32_t>( attachments_.size() ) ), pAttachments( attachments_.data() ), subpassCount( static_cast<uint32_t>( subpasses_.size() ) ), pSubpasses( subpasses_.data() ), dependencyCount( static_cast<uint32_t>( dependencies_.size() ) ), pDependencies( dependencies_.data() ), correlatedViewMaskCount( static_cast<uint32_t>( correlatedViewMasks_.size() ) ), pCorrelatedViewMasks( correlatedViewMasks_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- RenderPassCreateInfo2 & operator=( VkRenderPassCreateInfo2 const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::RenderPassCreateInfo2 const *>( &rhs );
- return *this;
- }
-
- RenderPassCreateInfo2 & operator=( RenderPassCreateInfo2 const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( RenderPassCreateInfo2 ) );
- return *this;
- }
-
- RenderPassCreateInfo2 & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- RenderPassCreateInfo2 & setFlags( VULKAN_HPP_NAMESPACE::RenderPassCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- RenderPassCreateInfo2 & setAttachmentCount( uint32_t attachmentCount_ ) VULKAN_HPP_NOEXCEPT
- {
- attachmentCount = attachmentCount_;
- return *this;
- }
-
- RenderPassCreateInfo2 & setPAttachments( const VULKAN_HPP_NAMESPACE::AttachmentDescription2* pAttachments_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- pAttachments = pAttachments_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- RenderPassCreateInfo2 & setAttachments( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AttachmentDescription2> const & attachments_ ) VULKAN_HPP_NOEXCEPT
- {
- attachmentCount = static_cast<uint32_t>( attachments_.size() );
- pAttachments = attachments_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- RenderPassCreateInfo2 & setSubpassCount( uint32_t subpassCount_ ) VULKAN_HPP_NOEXCEPT
- {
- subpassCount = subpassCount_;
- return *this;
- }
-
- RenderPassCreateInfo2 & setPSubpasses( const VULKAN_HPP_NAMESPACE::SubpassDescription2* pSubpasses_ ) VULKAN_HPP_NOEXCEPT
- {
- pSubpasses = pSubpasses_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- RenderPassCreateInfo2 & setSubpasses( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SubpassDescription2> const & subpasses_ ) VULKAN_HPP_NOEXCEPT
- {
- subpassCount = static_cast<uint32_t>( subpasses_.size() );
- pSubpasses = subpasses_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- RenderPassCreateInfo2 & setDependencyCount( uint32_t dependencyCount_ ) VULKAN_HPP_NOEXCEPT
- {
- dependencyCount = dependencyCount_;
- return *this;
- }
-
- RenderPassCreateInfo2 & setPDependencies( const VULKAN_HPP_NAMESPACE::SubpassDependency2* pDependencies_ ) VULKAN_HPP_NOEXCEPT
- {
- pDependencies = pDependencies_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- RenderPassCreateInfo2 & setDependencies( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SubpassDependency2> const & dependencies_ ) VULKAN_HPP_NOEXCEPT
- {
- dependencyCount = static_cast<uint32_t>( dependencies_.size() );
- pDependencies = dependencies_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- RenderPassCreateInfo2 & setCorrelatedViewMaskCount( uint32_t correlatedViewMaskCount_ ) VULKAN_HPP_NOEXCEPT
- {
- correlatedViewMaskCount = correlatedViewMaskCount_;
- return *this;
- }
-
- RenderPassCreateInfo2 & setPCorrelatedViewMasks( const uint32_t* pCorrelatedViewMasks_ ) VULKAN_HPP_NOEXCEPT
- {
- pCorrelatedViewMasks = pCorrelatedViewMasks_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- RenderPassCreateInfo2 & setCorrelatedViewMasks( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & correlatedViewMasks_ ) VULKAN_HPP_NOEXCEPT
- {
- correlatedViewMaskCount = static_cast<uint32_t>( correlatedViewMasks_.size() );
- pCorrelatedViewMasks = correlatedViewMasks_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkRenderPassCreateInfo2 const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkRenderPassCreateInfo2*>( this );
- }
-
- operator VkRenderPassCreateInfo2 &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkRenderPassCreateInfo2*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( RenderPassCreateInfo2 const& ) const = default;
-#else
- bool operator==( RenderPassCreateInfo2 const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( attachmentCount == rhs.attachmentCount )
- && ( pAttachments == rhs.pAttachments )
- && ( subpassCount == rhs.subpassCount )
- && ( pSubpasses == rhs.pSubpasses )
- && ( dependencyCount == rhs.dependencyCount )
- && ( pDependencies == rhs.pDependencies )
- && ( correlatedViewMaskCount == rhs.correlatedViewMaskCount )
- && ( pCorrelatedViewMasks == rhs.pCorrelatedViewMasks );
- }
-
- bool operator!=( RenderPassCreateInfo2 const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eRenderPassCreateInfo2;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::RenderPassCreateFlags flags = {};
- uint32_t attachmentCount = {};
- const VULKAN_HPP_NAMESPACE::AttachmentDescription2* pAttachments = {};
- uint32_t subpassCount = {};
- const VULKAN_HPP_NAMESPACE::SubpassDescription2* pSubpasses = {};
- uint32_t dependencyCount = {};
- const VULKAN_HPP_NAMESPACE::SubpassDependency2* pDependencies = {};
- uint32_t correlatedViewMaskCount = {};
- const uint32_t* pCorrelatedViewMasks = {};
-
- };
- static_assert( sizeof( RenderPassCreateInfo2 ) == sizeof( VkRenderPassCreateInfo2 ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<RenderPassCreateInfo2>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::eRenderPassCreateInfo2>
- {
- using Type = RenderPassCreateInfo2;
+ value = true
+ };
};
- using RenderPassCreateInfo2KHR = RenderPassCreateInfo2;
-
- struct SamplerCreateInfo
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSamplerCreateInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR SamplerCreateInfo(VULKAN_HPP_NAMESPACE::SamplerCreateFlags flags_ = {}, VULKAN_HPP_NAMESPACE::Filter magFilter_ = VULKAN_HPP_NAMESPACE::Filter::eNearest, VULKAN_HPP_NAMESPACE::Filter minFilter_ = VULKAN_HPP_NAMESPACE::Filter::eNearest, VULKAN_HPP_NAMESPACE::SamplerMipmapMode mipmapMode_ = VULKAN_HPP_NAMESPACE::SamplerMipmapMode::eNearest, VULKAN_HPP_NAMESPACE::SamplerAddressMode addressModeU_ = VULKAN_HPP_NAMESPACE::SamplerAddressMode::eRepeat, VULKAN_HPP_NAMESPACE::SamplerAddressMode addressModeV_ = VULKAN_HPP_NAMESPACE::SamplerAddressMode::eRepeat, VULKAN_HPP_NAMESPACE::SamplerAddressMode addressModeW_ = VULKAN_HPP_NAMESPACE::SamplerAddressMode::eRepeat, float mipLodBias_ = {}, VULKAN_HPP_NAMESPACE::Bool32 anisotropyEnable_ = {}, float maxAnisotropy_ = {}, VULKAN_HPP_NAMESPACE::Bool32 compareEnable_ = {}, VULKAN_HPP_NAMESPACE::CompareOp compareOp_ = VULKAN_HPP_NAMESPACE::CompareOp::eNever, float minLod_ = {}, float maxLod_ = {}, VULKAN_HPP_NAMESPACE::BorderColor borderColor_ = VULKAN_HPP_NAMESPACE::BorderColor::eFloatTransparentBlack, VULKAN_HPP_NAMESPACE::Bool32 unnormalizedCoordinates_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), magFilter( magFilter_ ), minFilter( minFilter_ ), mipmapMode( mipmapMode_ ), addressModeU( addressModeU_ ), addressModeV( addressModeV_ ), addressModeW( addressModeW_ ), mipLodBias( mipLodBias_ ), anisotropyEnable( anisotropyEnable_ ), maxAnisotropy( maxAnisotropy_ ), compareEnable( compareEnable_ ), compareOp( compareOp_ ), minLod( minLod_ ), maxLod( maxLod_ ), borderColor( borderColor_ ), unnormalizedCoordinates( unnormalizedCoordinates_ )
- {}
-
- VULKAN_HPP_CONSTEXPR SamplerCreateInfo( SamplerCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- SamplerCreateInfo( VkSamplerCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- SamplerCreateInfo & operator=( VkSamplerCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SamplerCreateInfo const *>( &rhs );
- return *this;
- }
-
- SamplerCreateInfo & operator=( SamplerCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( SamplerCreateInfo ) );
- return *this;
- }
-
- SamplerCreateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- SamplerCreateInfo & setFlags( VULKAN_HPP_NAMESPACE::SamplerCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- SamplerCreateInfo & setMagFilter( VULKAN_HPP_NAMESPACE::Filter magFilter_ ) VULKAN_HPP_NOEXCEPT
- {
- magFilter = magFilter_;
- return *this;
- }
-
- SamplerCreateInfo & setMinFilter( VULKAN_HPP_NAMESPACE::Filter minFilter_ ) VULKAN_HPP_NOEXCEPT
- {
- minFilter = minFilter_;
- return *this;
- }
-
- SamplerCreateInfo & setMipmapMode( VULKAN_HPP_NAMESPACE::SamplerMipmapMode mipmapMode_ ) VULKAN_HPP_NOEXCEPT
- {
- mipmapMode = mipmapMode_;
- return *this;
- }
-
- SamplerCreateInfo & setAddressModeU( VULKAN_HPP_NAMESPACE::SamplerAddressMode addressModeU_ ) VULKAN_HPP_NOEXCEPT
- {
- addressModeU = addressModeU_;
- return *this;
- }
-
- SamplerCreateInfo & setAddressModeV( VULKAN_HPP_NAMESPACE::SamplerAddressMode addressModeV_ ) VULKAN_HPP_NOEXCEPT
- {
- addressModeV = addressModeV_;
- return *this;
- }
-
- SamplerCreateInfo & setAddressModeW( VULKAN_HPP_NAMESPACE::SamplerAddressMode addressModeW_ ) VULKAN_HPP_NOEXCEPT
- {
- addressModeW = addressModeW_;
- return *this;
- }
-
- SamplerCreateInfo & setMipLodBias( float mipLodBias_ ) VULKAN_HPP_NOEXCEPT
- {
- mipLodBias = mipLodBias_;
- return *this;
- }
-
- SamplerCreateInfo & setAnisotropyEnable( VULKAN_HPP_NAMESPACE::Bool32 anisotropyEnable_ ) VULKAN_HPP_NOEXCEPT
- {
- anisotropyEnable = anisotropyEnable_;
- return *this;
- }
-
- SamplerCreateInfo & setMaxAnisotropy( float maxAnisotropy_ ) VULKAN_HPP_NOEXCEPT
- {
- maxAnisotropy = maxAnisotropy_;
- return *this;
- }
-
- SamplerCreateInfo & setCompareEnable( VULKAN_HPP_NAMESPACE::Bool32 compareEnable_ ) VULKAN_HPP_NOEXCEPT
- {
- compareEnable = compareEnable_;
- return *this;
- }
-
- SamplerCreateInfo & setCompareOp( VULKAN_HPP_NAMESPACE::CompareOp compareOp_ ) VULKAN_HPP_NOEXCEPT
- {
- compareOp = compareOp_;
- return *this;
- }
-
- SamplerCreateInfo & setMinLod( float minLod_ ) VULKAN_HPP_NOEXCEPT
- {
- minLod = minLod_;
- return *this;
- }
-
- SamplerCreateInfo & setMaxLod( float maxLod_ ) VULKAN_HPP_NOEXCEPT
- {
- maxLod = maxLod_;
- return *this;
- }
-
- SamplerCreateInfo & setBorderColor( VULKAN_HPP_NAMESPACE::BorderColor borderColor_ ) VULKAN_HPP_NOEXCEPT
- {
- borderColor = borderColor_;
- return *this;
- }
-
- SamplerCreateInfo & setUnnormalizedCoordinates( VULKAN_HPP_NAMESPACE::Bool32 unnormalizedCoordinates_ ) VULKAN_HPP_NOEXCEPT
- {
- unnormalizedCoordinates = unnormalizedCoordinates_;
- return *this;
- }
-
-
- operator VkSamplerCreateInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkSamplerCreateInfo*>( this );
- }
-
- operator VkSamplerCreateInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkSamplerCreateInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( SamplerCreateInfo const& ) const = default;
-#else
- bool operator==( SamplerCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( magFilter == rhs.magFilter )
- && ( minFilter == rhs.minFilter )
- && ( mipmapMode == rhs.mipmapMode )
- && ( addressModeU == rhs.addressModeU )
- && ( addressModeV == rhs.addressModeV )
- && ( addressModeW == rhs.addressModeW )
- && ( mipLodBias == rhs.mipLodBias )
- && ( anisotropyEnable == rhs.anisotropyEnable )
- && ( maxAnisotropy == rhs.maxAnisotropy )
- && ( compareEnable == rhs.compareEnable )
- && ( compareOp == rhs.compareOp )
- && ( minLod == rhs.minLod )
- && ( maxLod == rhs.maxLod )
- && ( borderColor == rhs.borderColor )
- && ( unnormalizedCoordinates == rhs.unnormalizedCoordinates );
- }
-
- bool operator!=( SamplerCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSamplerCreateInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::SamplerCreateFlags flags = {};
- VULKAN_HPP_NAMESPACE::Filter magFilter = VULKAN_HPP_NAMESPACE::Filter::eNearest;
- VULKAN_HPP_NAMESPACE::Filter minFilter = VULKAN_HPP_NAMESPACE::Filter::eNearest;
- VULKAN_HPP_NAMESPACE::SamplerMipmapMode mipmapMode = VULKAN_HPP_NAMESPACE::SamplerMipmapMode::eNearest;
- VULKAN_HPP_NAMESPACE::SamplerAddressMode addressModeU = VULKAN_HPP_NAMESPACE::SamplerAddressMode::eRepeat;
- VULKAN_HPP_NAMESPACE::SamplerAddressMode addressModeV = VULKAN_HPP_NAMESPACE::SamplerAddressMode::eRepeat;
- VULKAN_HPP_NAMESPACE::SamplerAddressMode addressModeW = VULKAN_HPP_NAMESPACE::SamplerAddressMode::eRepeat;
- float mipLodBias = {};
- VULKAN_HPP_NAMESPACE::Bool32 anisotropyEnable = {};
- float maxAnisotropy = {};
- VULKAN_HPP_NAMESPACE::Bool32 compareEnable = {};
- VULKAN_HPP_NAMESPACE::CompareOp compareOp = VULKAN_HPP_NAMESPACE::CompareOp::eNever;
- float minLod = {};
- float maxLod = {};
- VULKAN_HPP_NAMESPACE::BorderColor borderColor = VULKAN_HPP_NAMESPACE::BorderColor::eFloatTransparentBlack;
- VULKAN_HPP_NAMESPACE::Bool32 unnormalizedCoordinates = {};
-
- };
- static_assert( sizeof( SamplerCreateInfo ) == sizeof( VkSamplerCreateInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<SamplerCreateInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eSamplerCreateInfo>
- {
- using Type = SamplerCreateInfo;
- };
-
- struct SamplerYcbcrConversionCreateInfo
+ struct StructExtends<PhysicalDeviceDepthStencilResolveProperties, PhysicalDeviceProperties2>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSamplerYcbcrConversionCreateInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR SamplerYcbcrConversionCreateInfo(VULKAN_HPP_NAMESPACE::Format format_ = VULKAN_HPP_NAMESPACE::Format::eUndefined, VULKAN_HPP_NAMESPACE::SamplerYcbcrModelConversion ycbcrModel_ = VULKAN_HPP_NAMESPACE::SamplerYcbcrModelConversion::eRgbIdentity, VULKAN_HPP_NAMESPACE::SamplerYcbcrRange ycbcrRange_ = VULKAN_HPP_NAMESPACE::SamplerYcbcrRange::eItuFull, VULKAN_HPP_NAMESPACE::ComponentMapping components_ = {}, VULKAN_HPP_NAMESPACE::ChromaLocation xChromaOffset_ = VULKAN_HPP_NAMESPACE::ChromaLocation::eCositedEven, VULKAN_HPP_NAMESPACE::ChromaLocation yChromaOffset_ = VULKAN_HPP_NAMESPACE::ChromaLocation::eCositedEven, VULKAN_HPP_NAMESPACE::Filter chromaFilter_ = VULKAN_HPP_NAMESPACE::Filter::eNearest, VULKAN_HPP_NAMESPACE::Bool32 forceExplicitReconstruction_ = {}) VULKAN_HPP_NOEXCEPT
- : format( format_ ), ycbcrModel( ycbcrModel_ ), ycbcrRange( ycbcrRange_ ), components( components_ ), xChromaOffset( xChromaOffset_ ), yChromaOffset( yChromaOffset_ ), chromaFilter( chromaFilter_ ), forceExplicitReconstruction( forceExplicitReconstruction_ )
- {}
-
- VULKAN_HPP_CONSTEXPR SamplerYcbcrConversionCreateInfo( SamplerYcbcrConversionCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- SamplerYcbcrConversionCreateInfo( VkSamplerYcbcrConversionCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- SamplerYcbcrConversionCreateInfo & operator=( VkSamplerYcbcrConversionCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SamplerYcbcrConversionCreateInfo const *>( &rhs );
- return *this;
- }
-
- SamplerYcbcrConversionCreateInfo & operator=( SamplerYcbcrConversionCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( SamplerYcbcrConversionCreateInfo ) );
- return *this;
- }
-
- SamplerYcbcrConversionCreateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- SamplerYcbcrConversionCreateInfo & setFormat( VULKAN_HPP_NAMESPACE::Format format_ ) VULKAN_HPP_NOEXCEPT
- {
- format = format_;
- return *this;
- }
-
- SamplerYcbcrConversionCreateInfo & setYcbcrModel( VULKAN_HPP_NAMESPACE::SamplerYcbcrModelConversion ycbcrModel_ ) VULKAN_HPP_NOEXCEPT
- {
- ycbcrModel = ycbcrModel_;
- return *this;
- }
-
- SamplerYcbcrConversionCreateInfo & setYcbcrRange( VULKAN_HPP_NAMESPACE::SamplerYcbcrRange ycbcrRange_ ) VULKAN_HPP_NOEXCEPT
- {
- ycbcrRange = ycbcrRange_;
- return *this;
- }
-
- SamplerYcbcrConversionCreateInfo & setComponents( VULKAN_HPP_NAMESPACE::ComponentMapping const & components_ ) VULKAN_HPP_NOEXCEPT
- {
- components = components_;
- return *this;
- }
-
- SamplerYcbcrConversionCreateInfo & setXChromaOffset( VULKAN_HPP_NAMESPACE::ChromaLocation xChromaOffset_ ) VULKAN_HPP_NOEXCEPT
- {
- xChromaOffset = xChromaOffset_;
- return *this;
- }
-
- SamplerYcbcrConversionCreateInfo & setYChromaOffset( VULKAN_HPP_NAMESPACE::ChromaLocation yChromaOffset_ ) VULKAN_HPP_NOEXCEPT
- {
- yChromaOffset = yChromaOffset_;
- return *this;
- }
-
- SamplerYcbcrConversionCreateInfo & setChromaFilter( VULKAN_HPP_NAMESPACE::Filter chromaFilter_ ) VULKAN_HPP_NOEXCEPT
- {
- chromaFilter = chromaFilter_;
- return *this;
- }
-
- SamplerYcbcrConversionCreateInfo & setForceExplicitReconstruction( VULKAN_HPP_NAMESPACE::Bool32 forceExplicitReconstruction_ ) VULKAN_HPP_NOEXCEPT
- {
- forceExplicitReconstruction = forceExplicitReconstruction_;
- return *this;
- }
-
-
- operator VkSamplerYcbcrConversionCreateInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkSamplerYcbcrConversionCreateInfo*>( this );
- }
-
- operator VkSamplerYcbcrConversionCreateInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkSamplerYcbcrConversionCreateInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( SamplerYcbcrConversionCreateInfo const& ) const = default;
-#else
- bool operator==( SamplerYcbcrConversionCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( format == rhs.format )
- && ( ycbcrModel == rhs.ycbcrModel )
- && ( ycbcrRange == rhs.ycbcrRange )
- && ( components == rhs.components )
- && ( xChromaOffset == rhs.xChromaOffset )
- && ( yChromaOffset == rhs.yChromaOffset )
- && ( chromaFilter == rhs.chromaFilter )
- && ( forceExplicitReconstruction == rhs.forceExplicitReconstruction );
- }
-
- bool operator!=( SamplerYcbcrConversionCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSamplerYcbcrConversionCreateInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::Format format = VULKAN_HPP_NAMESPACE::Format::eUndefined;
- VULKAN_HPP_NAMESPACE::SamplerYcbcrModelConversion ycbcrModel = VULKAN_HPP_NAMESPACE::SamplerYcbcrModelConversion::eRgbIdentity;
- VULKAN_HPP_NAMESPACE::SamplerYcbcrRange ycbcrRange = VULKAN_HPP_NAMESPACE::SamplerYcbcrRange::eItuFull;
- VULKAN_HPP_NAMESPACE::ComponentMapping components = {};
- VULKAN_HPP_NAMESPACE::ChromaLocation xChromaOffset = VULKAN_HPP_NAMESPACE::ChromaLocation::eCositedEven;
- VULKAN_HPP_NAMESPACE::ChromaLocation yChromaOffset = VULKAN_HPP_NAMESPACE::ChromaLocation::eCositedEven;
- VULKAN_HPP_NAMESPACE::Filter chromaFilter = VULKAN_HPP_NAMESPACE::Filter::eNearest;
- VULKAN_HPP_NAMESPACE::Bool32 forceExplicitReconstruction = {};
-
+ value = true
+ };
};
- static_assert( sizeof( SamplerYcbcrConversionCreateInfo ) == sizeof( VkSamplerYcbcrConversionCreateInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<SamplerYcbcrConversionCreateInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eSamplerYcbcrConversionCreateInfo>
+ struct StructExtends<PhysicalDeviceDescriptorIndexingFeatures, PhysicalDeviceFeatures2>
{
- using Type = SamplerYcbcrConversionCreateInfo;
- };
- using SamplerYcbcrConversionCreateInfoKHR = SamplerYcbcrConversionCreateInfo;
-
- class SamplerYcbcrConversion
- {
- public:
- using CType = VkSamplerYcbcrConversion;
-
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::eSamplerYcbcrConversion;
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType = VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eSamplerYcbcrConversion;
-
- public:
- VULKAN_HPP_CONSTEXPR SamplerYcbcrConversion() VULKAN_HPP_NOEXCEPT
- : m_samplerYcbcrConversion(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_CONSTEXPR SamplerYcbcrConversion( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- : m_samplerYcbcrConversion(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_TYPESAFE_EXPLICIT SamplerYcbcrConversion( VkSamplerYcbcrConversion samplerYcbcrConversion ) VULKAN_HPP_NOEXCEPT
- : m_samplerYcbcrConversion( samplerYcbcrConversion )
- {}
-
-#if defined(VULKAN_HPP_TYPESAFE_CONVERSION)
- SamplerYcbcrConversion & operator=(VkSamplerYcbcrConversion samplerYcbcrConversion) VULKAN_HPP_NOEXCEPT
+ enum
{
- m_samplerYcbcrConversion = samplerYcbcrConversion;
- return *this;
- }
-#endif
-
- SamplerYcbcrConversion & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- {
- m_samplerYcbcrConversion = VK_NULL_HANDLE;
- return *this;
- }
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( SamplerYcbcrConversion const& ) const = default;
-#else
- bool operator==( SamplerYcbcrConversion const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_samplerYcbcrConversion == rhs.m_samplerYcbcrConversion;
- }
-
- bool operator!=(SamplerYcbcrConversion const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_samplerYcbcrConversion != rhs.m_samplerYcbcrConversion;
- }
-
- bool operator<(SamplerYcbcrConversion const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_samplerYcbcrConversion < rhs.m_samplerYcbcrConversion;
- }
-#endif
-
- VULKAN_HPP_TYPESAFE_EXPLICIT operator VkSamplerYcbcrConversion() const VULKAN_HPP_NOEXCEPT
- {
- return m_samplerYcbcrConversion;
- }
-
- explicit operator bool() const VULKAN_HPP_NOEXCEPT
- {
- return m_samplerYcbcrConversion != VK_NULL_HANDLE;
- }
-
- bool operator!() const VULKAN_HPP_NOEXCEPT
- {
- return m_samplerYcbcrConversion == VK_NULL_HANDLE;
- }
-
- private:
- VkSamplerYcbcrConversion m_samplerYcbcrConversion;
- };
- static_assert( sizeof( VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion ) == sizeof( VkSamplerYcbcrConversion ), "handle and wrapper have different size!" );
-
- template <>
- struct VULKAN_HPP_DEPRECATED("vk::cpp_type is deprecated. Use vk::CppType instead.") cpp_type<ObjectType::eSamplerYcbcrConversion>
- {
- using type = VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion;
- };
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eSamplerYcbcrConversion>
- {
- using Type = VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion;
- };
-
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT, VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eSamplerYcbcrConversion>
- {
- using Type = VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion;
+ value = true
+ };
};
-
-
template <>
- struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion>
+ struct StructExtends<PhysicalDeviceDescriptorIndexingFeatures, DeviceCreateInfo>
{
- static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
- };
- using SamplerYcbcrConversionKHR = SamplerYcbcrConversion;
-
- struct SemaphoreCreateInfo
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSemaphoreCreateInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR SemaphoreCreateInfo(VULKAN_HPP_NAMESPACE::SemaphoreCreateFlags flags_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ )
- {}
-
- VULKAN_HPP_CONSTEXPR SemaphoreCreateInfo( SemaphoreCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- SemaphoreCreateInfo( VkSemaphoreCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- SemaphoreCreateInfo & operator=( VkSemaphoreCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SemaphoreCreateInfo const *>( &rhs );
- return *this;
- }
-
- SemaphoreCreateInfo & operator=( SemaphoreCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( SemaphoreCreateInfo ) );
- return *this;
- }
-
- SemaphoreCreateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- SemaphoreCreateInfo & setFlags( VULKAN_HPP_NAMESPACE::SemaphoreCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
-
- operator VkSemaphoreCreateInfo const&() const VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<const VkSemaphoreCreateInfo*>( this );
- }
-
- operator VkSemaphoreCreateInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkSemaphoreCreateInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( SemaphoreCreateInfo const& ) const = default;
-#else
- bool operator==( SemaphoreCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags );
- }
-
- bool operator!=( SemaphoreCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSemaphoreCreateInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::SemaphoreCreateFlags flags = {};
-
+ value = true
+ };
};
- static_assert( sizeof( SemaphoreCreateInfo ) == sizeof( VkSemaphoreCreateInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<SemaphoreCreateInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eSemaphoreCreateInfo>
+ struct StructExtends<PhysicalDeviceDescriptorIndexingProperties, PhysicalDeviceProperties2>
{
- using Type = SemaphoreCreateInfo;
- };
-
- struct ShaderModuleCreateInfo
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eShaderModuleCreateInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ShaderModuleCreateInfo(VULKAN_HPP_NAMESPACE::ShaderModuleCreateFlags flags_ = {}, size_t codeSize_ = {}, const uint32_t* pCode_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), codeSize( codeSize_ ), pCode( pCode_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ShaderModuleCreateInfo( ShaderModuleCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ShaderModuleCreateInfo( VkShaderModuleCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- ShaderModuleCreateInfo( VULKAN_HPP_NAMESPACE::ShaderModuleCreateFlags flags_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & code_ )
- : flags( flags_ ), codeSize( code_.size() * 4 ), pCode( code_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ShaderModuleCreateInfo & operator=( VkShaderModuleCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ShaderModuleCreateInfo const *>( &rhs );
- return *this;
- }
-
- ShaderModuleCreateInfo & operator=( ShaderModuleCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ShaderModuleCreateInfo ) );
- return *this;
- }
-
- ShaderModuleCreateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- ShaderModuleCreateInfo & setFlags( VULKAN_HPP_NAMESPACE::ShaderModuleCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- ShaderModuleCreateInfo & setCodeSize( size_t codeSize_ ) VULKAN_HPP_NOEXCEPT
- {
- codeSize = codeSize_;
- return *this;
- }
-
- ShaderModuleCreateInfo & setPCode( const uint32_t* pCode_ ) VULKAN_HPP_NOEXCEPT
- {
- pCode = pCode_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- ShaderModuleCreateInfo & setCode( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & code_ ) VULKAN_HPP_NOEXCEPT
- {
- codeSize = code_.size() * 4;
- pCode = code_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkShaderModuleCreateInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkShaderModuleCreateInfo*>( this );
- }
-
- operator VkShaderModuleCreateInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkShaderModuleCreateInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ShaderModuleCreateInfo const& ) const = default;
-#else
- bool operator==( ShaderModuleCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( codeSize == rhs.codeSize )
- && ( pCode == rhs.pCode );
- }
-
- bool operator!=( ShaderModuleCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eShaderModuleCreateInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::ShaderModuleCreateFlags flags = {};
- size_t codeSize = {};
- const uint32_t* pCode = {};
-
+ value = true
+ };
};
- static_assert( sizeof( ShaderModuleCreateInfo ) == sizeof( VkShaderModuleCreateInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ShaderModuleCreateInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eShaderModuleCreateInfo>
+ struct StructExtends<PhysicalDeviceDeviceGeneratedCommandsFeaturesNV, PhysicalDeviceFeatures2>
{
- using Type = ShaderModuleCreateInfo;
- };
-
- class SurfaceKHR
- {
- public:
- using CType = VkSurfaceKHR;
-
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::eSurfaceKHR;
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType = VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eSurfaceKHR;
-
- public:
- VULKAN_HPP_CONSTEXPR SurfaceKHR() VULKAN_HPP_NOEXCEPT
- : m_surfaceKHR(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_CONSTEXPR SurfaceKHR( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- : m_surfaceKHR(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_TYPESAFE_EXPLICIT SurfaceKHR( VkSurfaceKHR surfaceKHR ) VULKAN_HPP_NOEXCEPT
- : m_surfaceKHR( surfaceKHR )
- {}
-
-#if defined(VULKAN_HPP_TYPESAFE_CONVERSION)
- SurfaceKHR & operator=(VkSurfaceKHR surfaceKHR) VULKAN_HPP_NOEXCEPT
- {
- m_surfaceKHR = surfaceKHR;
- return *this;
- }
-#endif
-
- SurfaceKHR & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
+ enum
{
- m_surfaceKHR = VK_NULL_HANDLE;
- return *this;
- }
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( SurfaceKHR const& ) const = default;
-#else
- bool operator==( SurfaceKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_surfaceKHR == rhs.m_surfaceKHR;
- }
-
- bool operator!=(SurfaceKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_surfaceKHR != rhs.m_surfaceKHR;
- }
-
- bool operator<(SurfaceKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_surfaceKHR < rhs.m_surfaceKHR;
- }
-#endif
-
- VULKAN_HPP_TYPESAFE_EXPLICIT operator VkSurfaceKHR() const VULKAN_HPP_NOEXCEPT
- {
- return m_surfaceKHR;
- }
-
- explicit operator bool() const VULKAN_HPP_NOEXCEPT
- {
- return m_surfaceKHR != VK_NULL_HANDLE;
- }
-
- bool operator!() const VULKAN_HPP_NOEXCEPT
- {
- return m_surfaceKHR == VK_NULL_HANDLE;
- }
-
- private:
- VkSurfaceKHR m_surfaceKHR;
- };
- static_assert( sizeof( VULKAN_HPP_NAMESPACE::SurfaceKHR ) == sizeof( VkSurfaceKHR ), "handle and wrapper have different size!" );
-
- template <>
- struct VULKAN_HPP_DEPRECATED("vk::cpp_type is deprecated. Use vk::CppType instead.") cpp_type<ObjectType::eSurfaceKHR>
- {
- using type = VULKAN_HPP_NAMESPACE::SurfaceKHR;
- };
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eSurfaceKHR>
- {
- using Type = VULKAN_HPP_NAMESPACE::SurfaceKHR;
- };
-
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT, VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eSurfaceKHR>
- {
- using Type = VULKAN_HPP_NAMESPACE::SurfaceKHR;
- };
-
-
- template <>
- struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::SurfaceKHR>
- {
- static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
+ value = true
+ };
};
-
- struct SwapchainCreateInfoKHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSwapchainCreateInfoKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR SwapchainCreateInfoKHR(VULKAN_HPP_NAMESPACE::SwapchainCreateFlagsKHR flags_ = {}, VULKAN_HPP_NAMESPACE::SurfaceKHR surface_ = {}, uint32_t minImageCount_ = {}, VULKAN_HPP_NAMESPACE::Format imageFormat_ = VULKAN_HPP_NAMESPACE::Format::eUndefined, VULKAN_HPP_NAMESPACE::ColorSpaceKHR imageColorSpace_ = VULKAN_HPP_NAMESPACE::ColorSpaceKHR::eSrgbNonlinear, VULKAN_HPP_NAMESPACE::Extent2D imageExtent_ = {}, uint32_t imageArrayLayers_ = {}, VULKAN_HPP_NAMESPACE::ImageUsageFlags imageUsage_ = {}, VULKAN_HPP_NAMESPACE::SharingMode imageSharingMode_ = VULKAN_HPP_NAMESPACE::SharingMode::eExclusive, uint32_t queueFamilyIndexCount_ = {}, const uint32_t* pQueueFamilyIndices_ = {}, VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR preTransform_ = VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR::eIdentity, VULKAN_HPP_NAMESPACE::CompositeAlphaFlagBitsKHR compositeAlpha_ = VULKAN_HPP_NAMESPACE::CompositeAlphaFlagBitsKHR::eOpaque, VULKAN_HPP_NAMESPACE::PresentModeKHR presentMode_ = VULKAN_HPP_NAMESPACE::PresentModeKHR::eImmediate, VULKAN_HPP_NAMESPACE::Bool32 clipped_ = {}, VULKAN_HPP_NAMESPACE::SwapchainKHR oldSwapchain_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), surface( surface_ ), minImageCount( minImageCount_ ), imageFormat( imageFormat_ ), imageColorSpace( imageColorSpace_ ), imageExtent( imageExtent_ ), imageArrayLayers( imageArrayLayers_ ), imageUsage( imageUsage_ ), imageSharingMode( imageSharingMode_ ), queueFamilyIndexCount( queueFamilyIndexCount_ ), pQueueFamilyIndices( pQueueFamilyIndices_ ), preTransform( preTransform_ ), compositeAlpha( compositeAlpha_ ), presentMode( presentMode_ ), clipped( clipped_ ), oldSwapchain( oldSwapchain_ )
- {}
-
- VULKAN_HPP_CONSTEXPR SwapchainCreateInfoKHR( SwapchainCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- SwapchainCreateInfoKHR( VkSwapchainCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- SwapchainCreateInfoKHR( VULKAN_HPP_NAMESPACE::SwapchainCreateFlagsKHR flags_, VULKAN_HPP_NAMESPACE::SurfaceKHR surface_, uint32_t minImageCount_, VULKAN_HPP_NAMESPACE::Format imageFormat_, VULKAN_HPP_NAMESPACE::ColorSpaceKHR imageColorSpace_, VULKAN_HPP_NAMESPACE::Extent2D imageExtent_, uint32_t imageArrayLayers_, VULKAN_HPP_NAMESPACE::ImageUsageFlags imageUsage_, VULKAN_HPP_NAMESPACE::SharingMode imageSharingMode_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & queueFamilyIndices_, VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR preTransform_ = VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR::eIdentity, VULKAN_HPP_NAMESPACE::CompositeAlphaFlagBitsKHR compositeAlpha_ = VULKAN_HPP_NAMESPACE::CompositeAlphaFlagBitsKHR::eOpaque, VULKAN_HPP_NAMESPACE::PresentModeKHR presentMode_ = VULKAN_HPP_NAMESPACE::PresentModeKHR::eImmediate, VULKAN_HPP_NAMESPACE::Bool32 clipped_ = {}, VULKAN_HPP_NAMESPACE::SwapchainKHR oldSwapchain_ = {} )
- : flags( flags_ ), surface( surface_ ), minImageCount( minImageCount_ ), imageFormat( imageFormat_ ), imageColorSpace( imageColorSpace_ ), imageExtent( imageExtent_ ), imageArrayLayers( imageArrayLayers_ ), imageUsage( imageUsage_ ), imageSharingMode( imageSharingMode_ ), queueFamilyIndexCount( static_cast<uint32_t>( queueFamilyIndices_.size() ) ), pQueueFamilyIndices( queueFamilyIndices_.data() ), preTransform( preTransform_ ), compositeAlpha( compositeAlpha_ ), presentMode( presentMode_ ), clipped( clipped_ ), oldSwapchain( oldSwapchain_ )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- SwapchainCreateInfoKHR & operator=( VkSwapchainCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SwapchainCreateInfoKHR const *>( &rhs );
- return *this;
- }
-
- SwapchainCreateInfoKHR & operator=( SwapchainCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( SwapchainCreateInfoKHR ) );
- return *this;
- }
-
- SwapchainCreateInfoKHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- SwapchainCreateInfoKHR & setFlags( VULKAN_HPP_NAMESPACE::SwapchainCreateFlagsKHR flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- SwapchainCreateInfoKHR & setSurface( VULKAN_HPP_NAMESPACE::SurfaceKHR surface_ ) VULKAN_HPP_NOEXCEPT
- {
- surface = surface_;
- return *this;
- }
-
- SwapchainCreateInfoKHR & setMinImageCount( uint32_t minImageCount_ ) VULKAN_HPP_NOEXCEPT
- {
- minImageCount = minImageCount_;
- return *this;
- }
-
- SwapchainCreateInfoKHR & setImageFormat( VULKAN_HPP_NAMESPACE::Format imageFormat_ ) VULKAN_HPP_NOEXCEPT
- {
- imageFormat = imageFormat_;
- return *this;
- }
-
- SwapchainCreateInfoKHR & setImageColorSpace( VULKAN_HPP_NAMESPACE::ColorSpaceKHR imageColorSpace_ ) VULKAN_HPP_NOEXCEPT
- {
- imageColorSpace = imageColorSpace_;
- return *this;
- }
-
- SwapchainCreateInfoKHR & setImageExtent( VULKAN_HPP_NAMESPACE::Extent2D const & imageExtent_ ) VULKAN_HPP_NOEXCEPT
- {
- imageExtent = imageExtent_;
- return *this;
- }
-
- SwapchainCreateInfoKHR & setImageArrayLayers( uint32_t imageArrayLayers_ ) VULKAN_HPP_NOEXCEPT
- {
- imageArrayLayers = imageArrayLayers_;
- return *this;
- }
-
- SwapchainCreateInfoKHR & setImageUsage( VULKAN_HPP_NAMESPACE::ImageUsageFlags imageUsage_ ) VULKAN_HPP_NOEXCEPT
- {
- imageUsage = imageUsage_;
- return *this;
- }
-
- SwapchainCreateInfoKHR & setImageSharingMode( VULKAN_HPP_NAMESPACE::SharingMode imageSharingMode_ ) VULKAN_HPP_NOEXCEPT
- {
- imageSharingMode = imageSharingMode_;
- return *this;
- }
-
- SwapchainCreateInfoKHR & setQueueFamilyIndexCount( uint32_t queueFamilyIndexCount_ ) VULKAN_HPP_NOEXCEPT
- {
- queueFamilyIndexCount = queueFamilyIndexCount_;
- return *this;
- }
-
- SwapchainCreateInfoKHR & setPQueueFamilyIndices( const uint32_t* pQueueFamilyIndices_ ) VULKAN_HPP_NOEXCEPT
- {
- pQueueFamilyIndices = pQueueFamilyIndices_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- SwapchainCreateInfoKHR & setQueueFamilyIndices( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & queueFamilyIndices_ ) VULKAN_HPP_NOEXCEPT
- {
- queueFamilyIndexCount = static_cast<uint32_t>( queueFamilyIndices_.size() );
- pQueueFamilyIndices = queueFamilyIndices_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- SwapchainCreateInfoKHR & setPreTransform( VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR preTransform_ ) VULKAN_HPP_NOEXCEPT
- {
- preTransform = preTransform_;
- return *this;
- }
-
- SwapchainCreateInfoKHR & setCompositeAlpha( VULKAN_HPP_NAMESPACE::CompositeAlphaFlagBitsKHR compositeAlpha_ ) VULKAN_HPP_NOEXCEPT
- {
- compositeAlpha = compositeAlpha_;
- return *this;
- }
-
- SwapchainCreateInfoKHR & setPresentMode( VULKAN_HPP_NAMESPACE::PresentModeKHR presentMode_ ) VULKAN_HPP_NOEXCEPT
- {
- presentMode = presentMode_;
- return *this;
- }
-
- SwapchainCreateInfoKHR & setClipped( VULKAN_HPP_NAMESPACE::Bool32 clipped_ ) VULKAN_HPP_NOEXCEPT
- {
- clipped = clipped_;
- return *this;
- }
-
- SwapchainCreateInfoKHR & setOldSwapchain( VULKAN_HPP_NAMESPACE::SwapchainKHR oldSwapchain_ ) VULKAN_HPP_NOEXCEPT
- {
- oldSwapchain = oldSwapchain_;
- return *this;
- }
-
-
- operator VkSwapchainCreateInfoKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkSwapchainCreateInfoKHR*>( this );
- }
-
- operator VkSwapchainCreateInfoKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkSwapchainCreateInfoKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( SwapchainCreateInfoKHR const& ) const = default;
-#else
- bool operator==( SwapchainCreateInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( surface == rhs.surface )
- && ( minImageCount == rhs.minImageCount )
- && ( imageFormat == rhs.imageFormat )
- && ( imageColorSpace == rhs.imageColorSpace )
- && ( imageExtent == rhs.imageExtent )
- && ( imageArrayLayers == rhs.imageArrayLayers )
- && ( imageUsage == rhs.imageUsage )
- && ( imageSharingMode == rhs.imageSharingMode )
- && ( queueFamilyIndexCount == rhs.queueFamilyIndexCount )
- && ( pQueueFamilyIndices == rhs.pQueueFamilyIndices )
- && ( preTransform == rhs.preTransform )
- && ( compositeAlpha == rhs.compositeAlpha )
- && ( presentMode == rhs.presentMode )
- && ( clipped == rhs.clipped )
- && ( oldSwapchain == rhs.oldSwapchain );
- }
-
- bool operator!=( SwapchainCreateInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSwapchainCreateInfoKHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::SwapchainCreateFlagsKHR flags = {};
- VULKAN_HPP_NAMESPACE::SurfaceKHR surface = {};
- uint32_t minImageCount = {};
- VULKAN_HPP_NAMESPACE::Format imageFormat = VULKAN_HPP_NAMESPACE::Format::eUndefined;
- VULKAN_HPP_NAMESPACE::ColorSpaceKHR imageColorSpace = VULKAN_HPP_NAMESPACE::ColorSpaceKHR::eSrgbNonlinear;
- VULKAN_HPP_NAMESPACE::Extent2D imageExtent = {};
- uint32_t imageArrayLayers = {};
- VULKAN_HPP_NAMESPACE::ImageUsageFlags imageUsage = {};
- VULKAN_HPP_NAMESPACE::SharingMode imageSharingMode = VULKAN_HPP_NAMESPACE::SharingMode::eExclusive;
- uint32_t queueFamilyIndexCount = {};
- const uint32_t* pQueueFamilyIndices = {};
- VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR preTransform = VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR::eIdentity;
- VULKAN_HPP_NAMESPACE::CompositeAlphaFlagBitsKHR compositeAlpha = VULKAN_HPP_NAMESPACE::CompositeAlphaFlagBitsKHR::eOpaque;
- VULKAN_HPP_NAMESPACE::PresentModeKHR presentMode = VULKAN_HPP_NAMESPACE::PresentModeKHR::eImmediate;
- VULKAN_HPP_NAMESPACE::Bool32 clipped = {};
- VULKAN_HPP_NAMESPACE::SwapchainKHR oldSwapchain = {};
-
- };
- static_assert( sizeof( SwapchainCreateInfoKHR ) == sizeof( VkSwapchainCreateInfoKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<SwapchainCreateInfoKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eSwapchainCreateInfoKHR>
- {
- using Type = SwapchainCreateInfoKHR;
- };
-
- struct ValidationCacheCreateInfoEXT
+ struct StructExtends<PhysicalDeviceDeviceGeneratedCommandsFeaturesNV, DeviceCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eValidationCacheCreateInfoEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ValidationCacheCreateInfoEXT(VULKAN_HPP_NAMESPACE::ValidationCacheCreateFlagsEXT flags_ = {}, size_t initialDataSize_ = {}, const void* pInitialData_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), initialDataSize( initialDataSize_ ), pInitialData( pInitialData_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ValidationCacheCreateInfoEXT( ValidationCacheCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ValidationCacheCreateInfoEXT( VkValidationCacheCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- template <typename T>
- ValidationCacheCreateInfoEXT( VULKAN_HPP_NAMESPACE::ValidationCacheCreateFlagsEXT flags_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const T> const & initialData_ )
- : flags( flags_ ), initialDataSize( initialData_.size() * sizeof(T) ), pInitialData( initialData_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ValidationCacheCreateInfoEXT & operator=( VkValidationCacheCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ValidationCacheCreateInfoEXT const *>( &rhs );
- return *this;
- }
-
- ValidationCacheCreateInfoEXT & operator=( ValidationCacheCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ValidationCacheCreateInfoEXT ) );
- return *this;
- }
-
- ValidationCacheCreateInfoEXT & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- ValidationCacheCreateInfoEXT & setFlags( VULKAN_HPP_NAMESPACE::ValidationCacheCreateFlagsEXT flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- ValidationCacheCreateInfoEXT & setInitialDataSize( size_t initialDataSize_ ) VULKAN_HPP_NOEXCEPT
- {
- initialDataSize = initialDataSize_;
- return *this;
- }
-
- ValidationCacheCreateInfoEXT & setPInitialData( const void* pInitialData_ ) VULKAN_HPP_NOEXCEPT
- {
- pInitialData = pInitialData_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- template <typename T>
- ValidationCacheCreateInfoEXT & setInitialData( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const T> const & initialData_ ) VULKAN_HPP_NOEXCEPT
- {
- initialDataSize = initialData_.size() * sizeof(T);
- pInitialData = initialData_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkValidationCacheCreateInfoEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkValidationCacheCreateInfoEXT*>( this );
- }
-
- operator VkValidationCacheCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkValidationCacheCreateInfoEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ValidationCacheCreateInfoEXT const& ) const = default;
-#else
- bool operator==( ValidationCacheCreateInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( initialDataSize == rhs.initialDataSize )
- && ( pInitialData == rhs.pInitialData );
- }
-
- bool operator!=( ValidationCacheCreateInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eValidationCacheCreateInfoEXT;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::ValidationCacheCreateFlagsEXT flags = {};
- size_t initialDataSize = {};
- const void* pInitialData = {};
-
+ value = true
+ };
};
- static_assert( sizeof( ValidationCacheCreateInfoEXT ) == sizeof( VkValidationCacheCreateInfoEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ValidationCacheCreateInfoEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eValidationCacheCreateInfoEXT>
+ struct StructExtends<PhysicalDeviceDeviceGeneratedCommandsPropertiesNV, PhysicalDeviceProperties2>
{
- using Type = ValidationCacheCreateInfoEXT;
- };
-
- class ValidationCacheEXT
- {
- public:
- using CType = VkValidationCacheEXT;
-
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::eValidationCacheEXT;
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType = VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eValidationCacheEXT;
-
- public:
- VULKAN_HPP_CONSTEXPR ValidationCacheEXT() VULKAN_HPP_NOEXCEPT
- : m_validationCacheEXT(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_CONSTEXPR ValidationCacheEXT( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- : m_validationCacheEXT(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_TYPESAFE_EXPLICIT ValidationCacheEXT( VkValidationCacheEXT validationCacheEXT ) VULKAN_HPP_NOEXCEPT
- : m_validationCacheEXT( validationCacheEXT )
- {}
-
-#if defined(VULKAN_HPP_TYPESAFE_CONVERSION)
- ValidationCacheEXT & operator=(VkValidationCacheEXT validationCacheEXT) VULKAN_HPP_NOEXCEPT
- {
- m_validationCacheEXT = validationCacheEXT;
- return *this;
- }
-#endif
-
- ValidationCacheEXT & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- {
- m_validationCacheEXT = VK_NULL_HANDLE;
- return *this;
- }
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ValidationCacheEXT const& ) const = default;
-#else
- bool operator==( ValidationCacheEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_validationCacheEXT == rhs.m_validationCacheEXT;
- }
-
- bool operator!=(ValidationCacheEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_validationCacheEXT != rhs.m_validationCacheEXT;
- }
-
- bool operator<(ValidationCacheEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_validationCacheEXT < rhs.m_validationCacheEXT;
- }
-#endif
-
- VULKAN_HPP_TYPESAFE_EXPLICIT operator VkValidationCacheEXT() const VULKAN_HPP_NOEXCEPT
- {
- return m_validationCacheEXT;
- }
-
- explicit operator bool() const VULKAN_HPP_NOEXCEPT
+ enum
{
- return m_validationCacheEXT != VK_NULL_HANDLE;
- }
-
- bool operator!() const VULKAN_HPP_NOEXCEPT
- {
- return m_validationCacheEXT == VK_NULL_HANDLE;
- }
-
- private:
- VkValidationCacheEXT m_validationCacheEXT;
- };
- static_assert( sizeof( VULKAN_HPP_NAMESPACE::ValidationCacheEXT ) == sizeof( VkValidationCacheEXT ), "handle and wrapper have different size!" );
-
- template <>
- struct VULKAN_HPP_DEPRECATED("vk::cpp_type is deprecated. Use vk::CppType instead.") cpp_type<ObjectType::eValidationCacheEXT>
- {
- using type = VULKAN_HPP_NAMESPACE::ValidationCacheEXT;
- };
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eValidationCacheEXT>
- {
- using Type = VULKAN_HPP_NAMESPACE::ValidationCacheEXT;
- };
-
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT, VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eValidationCacheEXT>
- {
- using Type = VULKAN_HPP_NAMESPACE::ValidationCacheEXT;
+ value = true
+ };
};
-
-
template <>
- struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::ValidationCacheEXT>
+ struct StructExtends<PhysicalDeviceDeviceMemoryReportFeaturesEXT, PhysicalDeviceFeatures2>
{
- static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
- };
-
- struct DisplayPowerInfoEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDisplayPowerInfoEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DisplayPowerInfoEXT(VULKAN_HPP_NAMESPACE::DisplayPowerStateEXT powerState_ = VULKAN_HPP_NAMESPACE::DisplayPowerStateEXT::eOff) VULKAN_HPP_NOEXCEPT
- : powerState( powerState_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DisplayPowerInfoEXT( DisplayPowerInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DisplayPowerInfoEXT( VkDisplayPowerInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DisplayPowerInfoEXT & operator=( VkDisplayPowerInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DisplayPowerInfoEXT const *>( &rhs );
- return *this;
- }
-
- DisplayPowerInfoEXT & operator=( DisplayPowerInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DisplayPowerInfoEXT ) );
- return *this;
- }
-
- DisplayPowerInfoEXT & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- DisplayPowerInfoEXT & setPowerState( VULKAN_HPP_NAMESPACE::DisplayPowerStateEXT powerState_ ) VULKAN_HPP_NOEXCEPT
- {
- powerState = powerState_;
- return *this;
- }
-
-
- operator VkDisplayPowerInfoEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDisplayPowerInfoEXT*>( this );
- }
-
- operator VkDisplayPowerInfoEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDisplayPowerInfoEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DisplayPowerInfoEXT const& ) const = default;
-#else
- bool operator==( DisplayPowerInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( powerState == rhs.powerState );
- }
-
- bool operator!=( DisplayPowerInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDisplayPowerInfoEXT;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::DisplayPowerStateEXT powerState = VULKAN_HPP_NAMESPACE::DisplayPowerStateEXT::eOff;
-
+ value = true
+ };
};
- static_assert( sizeof( DisplayPowerInfoEXT ) == sizeof( VkDisplayPowerInfoEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DisplayPowerInfoEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eDisplayPowerInfoEXT>
+ struct StructExtends<PhysicalDeviceDeviceMemoryReportFeaturesEXT, DeviceCreateInfo>
{
- using Type = DisplayPowerInfoEXT;
- };
-
- struct MappedMemoryRange
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMappedMemoryRange;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR MappedMemoryRange(VULKAN_HPP_NAMESPACE::DeviceMemory memory_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize offset_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize size_ = {}) VULKAN_HPP_NOEXCEPT
- : memory( memory_ ), offset( offset_ ), size( size_ )
- {}
-
- VULKAN_HPP_CONSTEXPR MappedMemoryRange( MappedMemoryRange const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- MappedMemoryRange( VkMappedMemoryRange const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- MappedMemoryRange & operator=( VkMappedMemoryRange const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MappedMemoryRange const *>( &rhs );
- return *this;
- }
-
- MappedMemoryRange & operator=( MappedMemoryRange const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( MappedMemoryRange ) );
- return *this;
- }
-
- MappedMemoryRange & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- MappedMemoryRange & setMemory( VULKAN_HPP_NAMESPACE::DeviceMemory memory_ ) VULKAN_HPP_NOEXCEPT
- {
- memory = memory_;
- return *this;
- }
-
- MappedMemoryRange & setOffset( VULKAN_HPP_NAMESPACE::DeviceSize offset_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- offset = offset_;
- return *this;
- }
-
- MappedMemoryRange & setSize( VULKAN_HPP_NAMESPACE::DeviceSize size_ ) VULKAN_HPP_NOEXCEPT
- {
- size = size_;
- return *this;
- }
-
-
- operator VkMappedMemoryRange const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkMappedMemoryRange*>( this );
- }
-
- operator VkMappedMemoryRange &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkMappedMemoryRange*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( MappedMemoryRange const& ) const = default;
-#else
- bool operator==( MappedMemoryRange const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( memory == rhs.memory )
- && ( offset == rhs.offset )
- && ( size == rhs.size );
- }
-
- bool operator!=( MappedMemoryRange const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMappedMemoryRange;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::DeviceMemory memory = {};
- VULKAN_HPP_NAMESPACE::DeviceSize offset = {};
- VULKAN_HPP_NAMESPACE::DeviceSize size = {};
-
+ value = true
+ };
};
- static_assert( sizeof( MappedMemoryRange ) == sizeof( VkMappedMemoryRange ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<MappedMemoryRange>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eMappedMemoryRange>
+ struct StructExtends<PhysicalDeviceDiagnosticsConfigFeaturesNV, PhysicalDeviceFeatures2>
{
- using Type = MappedMemoryRange;
- };
-
- struct MemoryRequirements
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR MemoryRequirements(VULKAN_HPP_NAMESPACE::DeviceSize size_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize alignment_ = {}, uint32_t memoryTypeBits_ = {}) VULKAN_HPP_NOEXCEPT
- : size( size_ ), alignment( alignment_ ), memoryTypeBits( memoryTypeBits_ )
- {}
-
- VULKAN_HPP_CONSTEXPR MemoryRequirements( MemoryRequirements const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- MemoryRequirements( VkMemoryRequirements const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- MemoryRequirements & operator=( VkMemoryRequirements const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MemoryRequirements const *>( &rhs );
- return *this;
- }
-
- MemoryRequirements & operator=( MemoryRequirements const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( MemoryRequirements ) );
- return *this;
- }
-
-
- operator VkMemoryRequirements const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkMemoryRequirements*>( this );
- }
-
- operator VkMemoryRequirements &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkMemoryRequirements*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( MemoryRequirements const& ) const = default;
-#else
- bool operator==( MemoryRequirements const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( size == rhs.size )
- && ( alignment == rhs.alignment )
- && ( memoryTypeBits == rhs.memoryTypeBits );
- }
-
- bool operator!=( MemoryRequirements const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::DeviceSize size = {};
- VULKAN_HPP_NAMESPACE::DeviceSize alignment = {};
- uint32_t memoryTypeBits = {};
-
- };
- static_assert( sizeof( MemoryRequirements ) == sizeof( VkMemoryRequirements ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<MemoryRequirements>::value, "struct wrapper is not a standard layout!" );
-
- struct MemoryRequirements2
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMemoryRequirements2;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR MemoryRequirements2(VULKAN_HPP_NAMESPACE::MemoryRequirements memoryRequirements_ = {}) VULKAN_HPP_NOEXCEPT
- : memoryRequirements( memoryRequirements_ )
- {}
-
- VULKAN_HPP_CONSTEXPR MemoryRequirements2( MemoryRequirements2 const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- MemoryRequirements2( VkMemoryRequirements2 const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- MemoryRequirements2 & operator=( VkMemoryRequirements2 const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MemoryRequirements2 const *>( &rhs );
- return *this;
- }
-
- MemoryRequirements2 & operator=( MemoryRequirements2 const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( MemoryRequirements2 ) );
- return *this;
- }
-
-
- operator VkMemoryRequirements2 const&() const VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<const VkMemoryRequirements2*>( this );
- }
-
- operator VkMemoryRequirements2 &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkMemoryRequirements2*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( MemoryRequirements2 const& ) const = default;
-#else
- bool operator==( MemoryRequirements2 const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( memoryRequirements == rhs.memoryRequirements );
- }
-
- bool operator!=( MemoryRequirements2 const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMemoryRequirements2;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::MemoryRequirements memoryRequirements = {};
-
+ value = true
+ };
};
- static_assert( sizeof( MemoryRequirements2 ) == sizeof( VkMemoryRequirements2 ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<MemoryRequirements2>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eMemoryRequirements2>
- {
- using Type = MemoryRequirements2;
- };
- using MemoryRequirements2KHR = MemoryRequirements2;
-
- struct DeviceGroupPresentCapabilitiesKHR
+ struct StructExtends<PhysicalDeviceDiagnosticsConfigFeaturesNV, DeviceCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDeviceGroupPresentCapabilitiesKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR_14 DeviceGroupPresentCapabilitiesKHR(std::array<uint32_t,VK_MAX_DEVICE_GROUP_SIZE> const& presentMask_ = {}, VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagsKHR modes_ = {}) VULKAN_HPP_NOEXCEPT
- : presentMask( presentMask_ ), modes( modes_ )
- {}
-
- VULKAN_HPP_CONSTEXPR_14 DeviceGroupPresentCapabilitiesKHR( DeviceGroupPresentCapabilitiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DeviceGroupPresentCapabilitiesKHR( VkDeviceGroupPresentCapabilitiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DeviceGroupPresentCapabilitiesKHR & operator=( VkDeviceGroupPresentCapabilitiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DeviceGroupPresentCapabilitiesKHR const *>( &rhs );
- return *this;
- }
-
- DeviceGroupPresentCapabilitiesKHR & operator=( DeviceGroupPresentCapabilitiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DeviceGroupPresentCapabilitiesKHR ) );
- return *this;
- }
-
-
- operator VkDeviceGroupPresentCapabilitiesKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDeviceGroupPresentCapabilitiesKHR*>( this );
- }
-
- operator VkDeviceGroupPresentCapabilitiesKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDeviceGroupPresentCapabilitiesKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DeviceGroupPresentCapabilitiesKHR const& ) const = default;
-#else
- bool operator==( DeviceGroupPresentCapabilitiesKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( presentMask == rhs.presentMask )
- && ( modes == rhs.modes );
- }
-
- bool operator!=( DeviceGroupPresentCapabilitiesKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDeviceGroupPresentCapabilitiesKHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint32_t, VK_MAX_DEVICE_GROUP_SIZE> presentMask = {};
- VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagsKHR modes = {};
-
+ value = true
+ };
};
- static_assert( sizeof( DeviceGroupPresentCapabilitiesKHR ) == sizeof( VkDeviceGroupPresentCapabilitiesKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DeviceGroupPresentCapabilitiesKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eDeviceGroupPresentCapabilitiesKHR>
- {
- using Type = DeviceGroupPresentCapabilitiesKHR;
- };
-
- struct PhysicalDeviceSurfaceInfo2KHR
+ struct StructExtends<PhysicalDeviceDiscardRectanglePropertiesEXT, PhysicalDeviceProperties2>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceSurfaceInfo2KHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceSurfaceInfo2KHR(VULKAN_HPP_NAMESPACE::SurfaceKHR surface_ = {}) VULKAN_HPP_NOEXCEPT
- : surface( surface_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceSurfaceInfo2KHR( PhysicalDeviceSurfaceInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceSurfaceInfo2KHR( VkPhysicalDeviceSurfaceInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceSurfaceInfo2KHR & operator=( VkPhysicalDeviceSurfaceInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceSurfaceInfo2KHR const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceSurfaceInfo2KHR & operator=( PhysicalDeviceSurfaceInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceSurfaceInfo2KHR ) );
- return *this;
- }
-
- PhysicalDeviceSurfaceInfo2KHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceSurfaceInfo2KHR & setSurface( VULKAN_HPP_NAMESPACE::SurfaceKHR surface_ ) VULKAN_HPP_NOEXCEPT
- {
- surface = surface_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceSurfaceInfo2KHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceSurfaceInfo2KHR*>( this );
- }
-
- operator VkPhysicalDeviceSurfaceInfo2KHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceSurfaceInfo2KHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceSurfaceInfo2KHR const& ) const = default;
-#else
- bool operator==( PhysicalDeviceSurfaceInfo2KHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( surface == rhs.surface );
- }
-
- bool operator!=( PhysicalDeviceSurfaceInfo2KHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceSurfaceInfo2KHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::SurfaceKHR surface = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceSurfaceInfo2KHR ) == sizeof( VkPhysicalDeviceSurfaceInfo2KHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceSurfaceInfo2KHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceSurfaceInfo2KHR>
+ struct StructExtends<PhysicalDeviceDriverProperties, PhysicalDeviceProperties2>
{
- using Type = PhysicalDeviceSurfaceInfo2KHR;
- };
-
- struct DeviceMemoryOpaqueCaptureAddressInfo
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDeviceMemoryOpaqueCaptureAddressInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DeviceMemoryOpaqueCaptureAddressInfo(VULKAN_HPP_NAMESPACE::DeviceMemory memory_ = {}) VULKAN_HPP_NOEXCEPT
- : memory( memory_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DeviceMemoryOpaqueCaptureAddressInfo( DeviceMemoryOpaqueCaptureAddressInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DeviceMemoryOpaqueCaptureAddressInfo( VkDeviceMemoryOpaqueCaptureAddressInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DeviceMemoryOpaqueCaptureAddressInfo & operator=( VkDeviceMemoryOpaqueCaptureAddressInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DeviceMemoryOpaqueCaptureAddressInfo const *>( &rhs );
- return *this;
- }
-
- DeviceMemoryOpaqueCaptureAddressInfo & operator=( DeviceMemoryOpaqueCaptureAddressInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DeviceMemoryOpaqueCaptureAddressInfo ) );
- return *this;
- }
-
- DeviceMemoryOpaqueCaptureAddressInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- DeviceMemoryOpaqueCaptureAddressInfo & setMemory( VULKAN_HPP_NAMESPACE::DeviceMemory memory_ ) VULKAN_HPP_NOEXCEPT
- {
- memory = memory_;
- return *this;
- }
-
-
- operator VkDeviceMemoryOpaqueCaptureAddressInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDeviceMemoryOpaqueCaptureAddressInfo*>( this );
- }
-
- operator VkDeviceMemoryOpaqueCaptureAddressInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDeviceMemoryOpaqueCaptureAddressInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DeviceMemoryOpaqueCaptureAddressInfo const& ) const = default;
-#else
- bool operator==( DeviceMemoryOpaqueCaptureAddressInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( memory == rhs.memory );
- }
-
- bool operator!=( DeviceMemoryOpaqueCaptureAddressInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDeviceMemoryOpaqueCaptureAddressInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::DeviceMemory memory = {};
-
+ value = true
+ };
};
- static_assert( sizeof( DeviceMemoryOpaqueCaptureAddressInfo ) == sizeof( VkDeviceMemoryOpaqueCaptureAddressInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DeviceMemoryOpaqueCaptureAddressInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eDeviceMemoryOpaqueCaptureAddressInfo>
+ struct StructExtends<PhysicalDeviceDrmPropertiesEXT, PhysicalDeviceProperties2>
{
- using Type = DeviceMemoryOpaqueCaptureAddressInfo;
- };
- using DeviceMemoryOpaqueCaptureAddressInfoKHR = DeviceMemoryOpaqueCaptureAddressInfo;
-
- struct PresentInfoKHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePresentInfoKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PresentInfoKHR(uint32_t waitSemaphoreCount_ = {}, const VULKAN_HPP_NAMESPACE::Semaphore* pWaitSemaphores_ = {}, uint32_t swapchainCount_ = {}, const VULKAN_HPP_NAMESPACE::SwapchainKHR* pSwapchains_ = {}, const uint32_t* pImageIndices_ = {}, VULKAN_HPP_NAMESPACE::Result* pResults_ = {}) VULKAN_HPP_NOEXCEPT
- : waitSemaphoreCount( waitSemaphoreCount_ ), pWaitSemaphores( pWaitSemaphores_ ), swapchainCount( swapchainCount_ ), pSwapchains( pSwapchains_ ), pImageIndices( pImageIndices_ ), pResults( pResults_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PresentInfoKHR( PresentInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PresentInfoKHR( VkPresentInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- PresentInfoKHR( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Semaphore> const & waitSemaphores_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SwapchainKHR> const & swapchains_ = {}, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & imageIndices_ = {}, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<VULKAN_HPP_NAMESPACE::Result> const & results_ = {} )
- : waitSemaphoreCount( static_cast<uint32_t>( waitSemaphores_.size() ) ), pWaitSemaphores( waitSemaphores_.data() ), swapchainCount( static_cast<uint32_t>( swapchains_.size() ) ), pSwapchains( swapchains_.data() ), pImageIndices( imageIndices_.data() ), pResults( results_.data() )
- {
-#ifdef VULKAN_HPP_NO_EXCEPTIONS
- VULKAN_HPP_ASSERT( swapchains_.size() == imageIndices_.size() );
- VULKAN_HPP_ASSERT( results_.empty() || ( swapchains_.size() == results_.size() ) );
- VULKAN_HPP_ASSERT( results_.empty() || ( imageIndices_.size() == results_.size() ) );
-#else
- if ( swapchains_.size() != imageIndices_.size() )
- {
- throw LogicError( VULKAN_HPP_NAMESPACE_STRING "::PresentInfoKHR::PresentInfoKHR: swapchains_.size() != imageIndices_.size()" );
- }
- if ( !results_.empty() && ( swapchains_.size() != results_.size() ) )
- {
- throw LogicError( VULKAN_HPP_NAMESPACE_STRING "::PresentInfoKHR::PresentInfoKHR: !results_.empty() && ( swapchains_.size() != results_.size() )" );
- }
- if ( !results_.empty() && ( imageIndices_.size() != results_.size() ) )
- {
- throw LogicError( VULKAN_HPP_NAMESPACE_STRING "::PresentInfoKHR::PresentInfoKHR: !results_.empty() && ( imageIndices_.size() != results_.size() )" );
- }
-#endif /*VULKAN_HPP_NO_EXCEPTIONS*/
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PresentInfoKHR & operator=( VkPresentInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PresentInfoKHR const *>( &rhs );
- return *this;
- }
-
- PresentInfoKHR & operator=( PresentInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PresentInfoKHR ) );
- return *this;
- }
-
- PresentInfoKHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PresentInfoKHR & setWaitSemaphoreCount( uint32_t waitSemaphoreCount_ ) VULKAN_HPP_NOEXCEPT
- {
- waitSemaphoreCount = waitSemaphoreCount_;
- return *this;
- }
-
- PresentInfoKHR & setPWaitSemaphores( const VULKAN_HPP_NAMESPACE::Semaphore* pWaitSemaphores_ ) VULKAN_HPP_NOEXCEPT
- {
- pWaitSemaphores = pWaitSemaphores_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- PresentInfoKHR & setWaitSemaphores( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Semaphore> const & waitSemaphores_ ) VULKAN_HPP_NOEXCEPT
- {
- waitSemaphoreCount = static_cast<uint32_t>( waitSemaphores_.size() );
- pWaitSemaphores = waitSemaphores_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- PresentInfoKHR & setSwapchainCount( uint32_t swapchainCount_ ) VULKAN_HPP_NOEXCEPT
- {
- swapchainCount = swapchainCount_;
- return *this;
- }
-
- PresentInfoKHR & setPSwapchains( const VULKAN_HPP_NAMESPACE::SwapchainKHR* pSwapchains_ ) VULKAN_HPP_NOEXCEPT
- {
- pSwapchains = pSwapchains_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- PresentInfoKHR & setSwapchains( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SwapchainKHR> const & swapchains_ ) VULKAN_HPP_NOEXCEPT
- {
- swapchainCount = static_cast<uint32_t>( swapchains_.size() );
- pSwapchains = swapchains_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- PresentInfoKHR & setPImageIndices( const uint32_t* pImageIndices_ ) VULKAN_HPP_NOEXCEPT
- {
- pImageIndices = pImageIndices_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- PresentInfoKHR & setImageIndices( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & imageIndices_ ) VULKAN_HPP_NOEXCEPT
- {
- swapchainCount = static_cast<uint32_t>( imageIndices_.size() );
- pImageIndices = imageIndices_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- PresentInfoKHR & setPResults( VULKAN_HPP_NAMESPACE::Result* pResults_ ) VULKAN_HPP_NOEXCEPT
- {
- pResults = pResults_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- PresentInfoKHR & setResults( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<VULKAN_HPP_NAMESPACE::Result> const & results_ ) VULKAN_HPP_NOEXCEPT
- {
- swapchainCount = static_cast<uint32_t>( results_.size() );
- pResults = results_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkPresentInfoKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPresentInfoKHR*>( this );
- }
-
- operator VkPresentInfoKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPresentInfoKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PresentInfoKHR const& ) const = default;
-#else
- bool operator==( PresentInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( waitSemaphoreCount == rhs.waitSemaphoreCount )
- && ( pWaitSemaphores == rhs.pWaitSemaphores )
- && ( swapchainCount == rhs.swapchainCount )
- && ( pSwapchains == rhs.pSwapchains )
- && ( pImageIndices == rhs.pImageIndices )
- && ( pResults == rhs.pResults );
- }
-
- bool operator!=( PresentInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePresentInfoKHR;
- const void* pNext = {};
- uint32_t waitSemaphoreCount = {};
- const VULKAN_HPP_NAMESPACE::Semaphore* pWaitSemaphores = {};
- uint32_t swapchainCount = {};
- const VULKAN_HPP_NAMESPACE::SwapchainKHR* pSwapchains = {};
- const uint32_t* pImageIndices = {};
- VULKAN_HPP_NAMESPACE::Result* pResults = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PresentInfoKHR ) == sizeof( VkPresentInfoKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PresentInfoKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePresentInfoKHR>
- {
- using Type = PresentInfoKHR;
- };
-
- struct SubmitInfo
+ struct StructExtends<PhysicalDeviceExclusiveScissorFeaturesNV, PhysicalDeviceFeatures2>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSubmitInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR SubmitInfo(uint32_t waitSemaphoreCount_ = {}, const VULKAN_HPP_NAMESPACE::Semaphore* pWaitSemaphores_ = {}, const VULKAN_HPP_NAMESPACE::PipelineStageFlags* pWaitDstStageMask_ = {}, uint32_t commandBufferCount_ = {}, const VULKAN_HPP_NAMESPACE::CommandBuffer* pCommandBuffers_ = {}, uint32_t signalSemaphoreCount_ = {}, const VULKAN_HPP_NAMESPACE::Semaphore* pSignalSemaphores_ = {}) VULKAN_HPP_NOEXCEPT
- : waitSemaphoreCount( waitSemaphoreCount_ ), pWaitSemaphores( pWaitSemaphores_ ), pWaitDstStageMask( pWaitDstStageMask_ ), commandBufferCount( commandBufferCount_ ), pCommandBuffers( pCommandBuffers_ ), signalSemaphoreCount( signalSemaphoreCount_ ), pSignalSemaphores( pSignalSemaphores_ )
- {}
-
- VULKAN_HPP_CONSTEXPR SubmitInfo( SubmitInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- SubmitInfo( VkSubmitInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- SubmitInfo( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Semaphore> const & waitSemaphores_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::PipelineStageFlags> const & waitDstStageMask_ = {}, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::CommandBuffer> const & commandBuffers_ = {}, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Semaphore> const & signalSemaphores_ = {} )
- : waitSemaphoreCount( static_cast<uint32_t>( waitSemaphores_.size() ) ), pWaitSemaphores( waitSemaphores_.data() ), pWaitDstStageMask( waitDstStageMask_.data() ), commandBufferCount( static_cast<uint32_t>( commandBuffers_.size() ) ), pCommandBuffers( commandBuffers_.data() ), signalSemaphoreCount( static_cast<uint32_t>( signalSemaphores_.size() ) ), pSignalSemaphores( signalSemaphores_.data() )
- {
-#ifdef VULKAN_HPP_NO_EXCEPTIONS
- VULKAN_HPP_ASSERT( waitSemaphores_.size() == waitDstStageMask_.size() );
-#else
- if ( waitSemaphores_.size() != waitDstStageMask_.size() )
- {
- throw LogicError( VULKAN_HPP_NAMESPACE_STRING "::SubmitInfo::SubmitInfo: waitSemaphores_.size() != waitDstStageMask_.size()" );
- }
-#endif /*VULKAN_HPP_NO_EXCEPTIONS*/
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- SubmitInfo & operator=( VkSubmitInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SubmitInfo const *>( &rhs );
- return *this;
- }
-
- SubmitInfo & operator=( SubmitInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( SubmitInfo ) );
- return *this;
- }
-
- SubmitInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- SubmitInfo & setWaitSemaphoreCount( uint32_t waitSemaphoreCount_ ) VULKAN_HPP_NOEXCEPT
- {
- waitSemaphoreCount = waitSemaphoreCount_;
- return *this;
- }
-
- SubmitInfo & setPWaitSemaphores( const VULKAN_HPP_NAMESPACE::Semaphore* pWaitSemaphores_ ) VULKAN_HPP_NOEXCEPT
- {
- pWaitSemaphores = pWaitSemaphores_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- SubmitInfo & setWaitSemaphores( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Semaphore> const & waitSemaphores_ ) VULKAN_HPP_NOEXCEPT
- {
- waitSemaphoreCount = static_cast<uint32_t>( waitSemaphores_.size() );
- pWaitSemaphores = waitSemaphores_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- SubmitInfo & setPWaitDstStageMask( const VULKAN_HPP_NAMESPACE::PipelineStageFlags* pWaitDstStageMask_ ) VULKAN_HPP_NOEXCEPT
- {
- pWaitDstStageMask = pWaitDstStageMask_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- SubmitInfo & setWaitDstStageMask( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::PipelineStageFlags> const & waitDstStageMask_ ) VULKAN_HPP_NOEXCEPT
- {
- waitSemaphoreCount = static_cast<uint32_t>( waitDstStageMask_.size() );
- pWaitDstStageMask = waitDstStageMask_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- SubmitInfo & setCommandBufferCount( uint32_t commandBufferCount_ ) VULKAN_HPP_NOEXCEPT
- {
- commandBufferCount = commandBufferCount_;
- return *this;
- }
-
- SubmitInfo & setPCommandBuffers( const VULKAN_HPP_NAMESPACE::CommandBuffer* pCommandBuffers_ ) VULKAN_HPP_NOEXCEPT
- {
- pCommandBuffers = pCommandBuffers_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- SubmitInfo & setCommandBuffers( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::CommandBuffer> const & commandBuffers_ ) VULKAN_HPP_NOEXCEPT
- {
- commandBufferCount = static_cast<uint32_t>( commandBuffers_.size() );
- pCommandBuffers = commandBuffers_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- SubmitInfo & setSignalSemaphoreCount( uint32_t signalSemaphoreCount_ ) VULKAN_HPP_NOEXCEPT
- {
- signalSemaphoreCount = signalSemaphoreCount_;
- return *this;
- }
-
- SubmitInfo & setPSignalSemaphores( const VULKAN_HPP_NAMESPACE::Semaphore* pSignalSemaphores_ ) VULKAN_HPP_NOEXCEPT
- {
- pSignalSemaphores = pSignalSemaphores_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- SubmitInfo & setSignalSemaphores( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Semaphore> const & signalSemaphores_ ) VULKAN_HPP_NOEXCEPT
- {
- signalSemaphoreCount = static_cast<uint32_t>( signalSemaphores_.size() );
- pSignalSemaphores = signalSemaphores_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkSubmitInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkSubmitInfo*>( this );
- }
-
- operator VkSubmitInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkSubmitInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( SubmitInfo const& ) const = default;
-#else
- bool operator==( SubmitInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( waitSemaphoreCount == rhs.waitSemaphoreCount )
- && ( pWaitSemaphores == rhs.pWaitSemaphores )
- && ( pWaitDstStageMask == rhs.pWaitDstStageMask )
- && ( commandBufferCount == rhs.commandBufferCount )
- && ( pCommandBuffers == rhs.pCommandBuffers )
- && ( signalSemaphoreCount == rhs.signalSemaphoreCount )
- && ( pSignalSemaphores == rhs.pSignalSemaphores );
- }
-
- bool operator!=( SubmitInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSubmitInfo;
- const void* pNext = {};
- uint32_t waitSemaphoreCount = {};
- const VULKAN_HPP_NAMESPACE::Semaphore* pWaitSemaphores = {};
- const VULKAN_HPP_NAMESPACE::PipelineStageFlags* pWaitDstStageMask = {};
- uint32_t commandBufferCount = {};
- const VULKAN_HPP_NAMESPACE::CommandBuffer* pCommandBuffers = {};
- uint32_t signalSemaphoreCount = {};
- const VULKAN_HPP_NAMESPACE::Semaphore* pSignalSemaphores = {};
-
+ value = true
+ };
};
- static_assert( sizeof( SubmitInfo ) == sizeof( VkSubmitInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<SubmitInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eSubmitInfo>
+ struct StructExtends<PhysicalDeviceExclusiveScissorFeaturesNV, DeviceCreateInfo>
{
- using Type = SubmitInfo;
- };
-
- class Queue
- {
- public:
- using CType = VkQueue;
-
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::eQueue;
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType = VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eQueue;
-
- public:
- VULKAN_HPP_CONSTEXPR Queue() VULKAN_HPP_NOEXCEPT
- : m_queue(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_CONSTEXPR Queue( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- : m_queue(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_TYPESAFE_EXPLICIT Queue( VkQueue queue ) VULKAN_HPP_NOEXCEPT
- : m_queue( queue )
- {}
-
-#if defined(VULKAN_HPP_TYPESAFE_CONVERSION)
- Queue & operator=(VkQueue queue) VULKAN_HPP_NOEXCEPT
- {
- m_queue = queue;
- return *this;
- }
-#endif
-
- Queue & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- {
- m_queue = VK_NULL_HANDLE;
- return *this;
- }
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( Queue const& ) const = default;
-#else
- bool operator==( Queue const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_queue == rhs.m_queue;
- }
-
- bool operator!=(Queue const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_queue != rhs.m_queue;
- }
-
- bool operator<(Queue const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_queue < rhs.m_queue;
- }
-#endif
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void getCheckpointDataNV( uint32_t* pCheckpointDataCount, VULKAN_HPP_NAMESPACE::CheckpointDataNV* pCheckpointData, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename CheckpointDataNVAllocator = std::allocator<CheckpointDataNV>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD std::vector<CheckpointDataNV, CheckpointDataNVAllocator> getCheckpointDataNV( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename CheckpointDataNVAllocator = std::allocator<CheckpointDataNV>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename B = CheckpointDataNVAllocator, typename std::enable_if<std::is_same<typename B::value_type, CheckpointDataNV>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD std::vector<CheckpointDataNV, CheckpointDataNVAllocator> getCheckpointDataNV( CheckpointDataNVAllocator & checkpointDataNVAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void beginDebugUtilsLabelEXT( const VULKAN_HPP_NAMESPACE::DebugUtilsLabelEXT* pLabelInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void beginDebugUtilsLabelEXT( const DebugUtilsLabelEXT & labelInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result bindSparse( uint32_t bindInfoCount, const VULKAN_HPP_NAMESPACE::BindSparseInfo* pBindInfo, VULKAN_HPP_NAMESPACE::Fence fence, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type bindSparse( ArrayProxy<const VULKAN_HPP_NAMESPACE::BindSparseInfo> const & bindInfo, VULKAN_HPP_NAMESPACE::Fence fence VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void endDebugUtilsLabelEXT( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void insertDebugUtilsLabelEXT( const VULKAN_HPP_NAMESPACE::DebugUtilsLabelEXT* pLabelInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void insertDebugUtilsLabelEXT( const DebugUtilsLabelEXT & labelInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result presentKHR( const VULKAN_HPP_NAMESPACE::PresentInfoKHR* pPresentInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result presentKHR( const PresentInfoKHR & presentInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result setPerformanceConfigurationINTEL( VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL configuration, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#else
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type setPerformanceConfigurationINTEL( VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL configuration, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result submit( uint32_t submitCount, const VULKAN_HPP_NAMESPACE::SubmitInfo* pSubmits, VULKAN_HPP_NAMESPACE::Fence fence, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type submit( ArrayProxy<const VULKAN_HPP_NAMESPACE::SubmitInfo> const & submits, VULKAN_HPP_NAMESPACE::Fence fence VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result waitIdle( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#else
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type waitIdle( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- VULKAN_HPP_TYPESAFE_EXPLICIT operator VkQueue() const VULKAN_HPP_NOEXCEPT
- {
- return m_queue;
- }
-
- explicit operator bool() const VULKAN_HPP_NOEXCEPT
+ enum
{
- return m_queue != VK_NULL_HANDLE;
- }
-
- bool operator!() const VULKAN_HPP_NOEXCEPT
- {
- return m_queue == VK_NULL_HANDLE;
- }
-
- private:
- VkQueue m_queue;
- };
- static_assert( sizeof( VULKAN_HPP_NAMESPACE::Queue ) == sizeof( VkQueue ), "handle and wrapper have different size!" );
-
- template <>
- struct VULKAN_HPP_DEPRECATED("vk::cpp_type is deprecated. Use vk::CppType instead.") cpp_type<ObjectType::eQueue>
- {
- using type = VULKAN_HPP_NAMESPACE::Queue;
- };
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eQueue>
- {
- using Type = VULKAN_HPP_NAMESPACE::Queue;
- };
-
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT, VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eQueue>
- {
- using Type = VULKAN_HPP_NAMESPACE::Queue;
+ value = true
+ };
};
-
-
template <>
- struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::Queue>
+ struct StructExtends<PhysicalDeviceExtendedDynamicState2FeaturesEXT, PhysicalDeviceFeatures2>
{
- static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
- };
-
- struct DeviceQueueInfo2
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDeviceQueueInfo2;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DeviceQueueInfo2(VULKAN_HPP_NAMESPACE::DeviceQueueCreateFlags flags_ = {}, uint32_t queueFamilyIndex_ = {}, uint32_t queueIndex_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), queueFamilyIndex( queueFamilyIndex_ ), queueIndex( queueIndex_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DeviceQueueInfo2( DeviceQueueInfo2 const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DeviceQueueInfo2( VkDeviceQueueInfo2 const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DeviceQueueInfo2 & operator=( VkDeviceQueueInfo2 const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DeviceQueueInfo2 const *>( &rhs );
- return *this;
- }
-
- DeviceQueueInfo2 & operator=( DeviceQueueInfo2 const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DeviceQueueInfo2 ) );
- return *this;
- }
-
- DeviceQueueInfo2 & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- DeviceQueueInfo2 & setFlags( VULKAN_HPP_NAMESPACE::DeviceQueueCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- DeviceQueueInfo2 & setQueueFamilyIndex( uint32_t queueFamilyIndex_ ) VULKAN_HPP_NOEXCEPT
- {
- queueFamilyIndex = queueFamilyIndex_;
- return *this;
- }
-
- DeviceQueueInfo2 & setQueueIndex( uint32_t queueIndex_ ) VULKAN_HPP_NOEXCEPT
- {
- queueIndex = queueIndex_;
- return *this;
- }
-
-
- operator VkDeviceQueueInfo2 const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDeviceQueueInfo2*>( this );
- }
-
- operator VkDeviceQueueInfo2 &() VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<VkDeviceQueueInfo2*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DeviceQueueInfo2 const& ) const = default;
-#else
- bool operator==( DeviceQueueInfo2 const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( queueFamilyIndex == rhs.queueFamilyIndex )
- && ( queueIndex == rhs.queueIndex );
- }
-
- bool operator!=( DeviceQueueInfo2 const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDeviceQueueInfo2;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::DeviceQueueCreateFlags flags = {};
- uint32_t queueFamilyIndex = {};
- uint32_t queueIndex = {};
-
+ value = true
+ };
};
- static_assert( sizeof( DeviceQueueInfo2 ) == sizeof( VkDeviceQueueInfo2 ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DeviceQueueInfo2>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eDeviceQueueInfo2>
+ struct StructExtends<PhysicalDeviceExtendedDynamicState2FeaturesEXT, DeviceCreateInfo>
{
- using Type = DeviceQueueInfo2;
- };
-
- struct FenceGetFdInfoKHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eFenceGetFdInfoKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR FenceGetFdInfoKHR(VULKAN_HPP_NAMESPACE::Fence fence_ = {}, VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits handleType_ = VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits::eOpaqueFd) VULKAN_HPP_NOEXCEPT
- : fence( fence_ ), handleType( handleType_ )
- {}
-
- VULKAN_HPP_CONSTEXPR FenceGetFdInfoKHR( FenceGetFdInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- FenceGetFdInfoKHR( VkFenceGetFdInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- FenceGetFdInfoKHR & operator=( VkFenceGetFdInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::FenceGetFdInfoKHR const *>( &rhs );
- return *this;
- }
-
- FenceGetFdInfoKHR & operator=( FenceGetFdInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( FenceGetFdInfoKHR ) );
- return *this;
- }
-
- FenceGetFdInfoKHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- FenceGetFdInfoKHR & setFence( VULKAN_HPP_NAMESPACE::Fence fence_ ) VULKAN_HPP_NOEXCEPT
- {
- fence = fence_;
- return *this;
- }
-
- FenceGetFdInfoKHR & setHandleType( VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits handleType_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- handleType = handleType_;
- return *this;
- }
-
-
- operator VkFenceGetFdInfoKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkFenceGetFdInfoKHR*>( this );
- }
-
- operator VkFenceGetFdInfoKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkFenceGetFdInfoKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( FenceGetFdInfoKHR const& ) const = default;
-#else
- bool operator==( FenceGetFdInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( fence == rhs.fence )
- && ( handleType == rhs.handleType );
- }
-
- bool operator!=( FenceGetFdInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eFenceGetFdInfoKHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::Fence fence = {};
- VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits handleType = VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits::eOpaqueFd;
-
+ value = true
+ };
};
- static_assert( sizeof( FenceGetFdInfoKHR ) == sizeof( VkFenceGetFdInfoKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<FenceGetFdInfoKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eFenceGetFdInfoKHR>
- {
- using Type = FenceGetFdInfoKHR;
- };
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- struct FenceGetWin32HandleInfoKHR
+ struct StructExtends<PhysicalDeviceExtendedDynamicStateFeaturesEXT, PhysicalDeviceFeatures2>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eFenceGetWin32HandleInfoKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR FenceGetWin32HandleInfoKHR(VULKAN_HPP_NAMESPACE::Fence fence_ = {}, VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits handleType_ = VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits::eOpaqueFd) VULKAN_HPP_NOEXCEPT
- : fence( fence_ ), handleType( handleType_ )
- {}
-
- VULKAN_HPP_CONSTEXPR FenceGetWin32HandleInfoKHR( FenceGetWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- FenceGetWin32HandleInfoKHR( VkFenceGetWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- FenceGetWin32HandleInfoKHR & operator=( VkFenceGetWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::FenceGetWin32HandleInfoKHR const *>( &rhs );
- return *this;
- }
-
- FenceGetWin32HandleInfoKHR & operator=( FenceGetWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( FenceGetWin32HandleInfoKHR ) );
- return *this;
- }
-
- FenceGetWin32HandleInfoKHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- pNext = pNext_;
- return *this;
- }
-
- FenceGetWin32HandleInfoKHR & setFence( VULKAN_HPP_NAMESPACE::Fence fence_ ) VULKAN_HPP_NOEXCEPT
- {
- fence = fence_;
- return *this;
- }
-
- FenceGetWin32HandleInfoKHR & setHandleType( VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits handleType_ ) VULKAN_HPP_NOEXCEPT
- {
- handleType = handleType_;
- return *this;
- }
-
-
- operator VkFenceGetWin32HandleInfoKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkFenceGetWin32HandleInfoKHR*>( this );
- }
-
- operator VkFenceGetWin32HandleInfoKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkFenceGetWin32HandleInfoKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( FenceGetWin32HandleInfoKHR const& ) const = default;
-#else
- bool operator==( FenceGetWin32HandleInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( fence == rhs.fence )
- && ( handleType == rhs.handleType );
- }
-
- bool operator!=( FenceGetWin32HandleInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eFenceGetWin32HandleInfoKHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::Fence fence = {};
- VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits handleType = VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits::eOpaqueFd;
-
+ value = true
+ };
};
- static_assert( sizeof( FenceGetWin32HandleInfoKHR ) == sizeof( VkFenceGetWin32HandleInfoKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<FenceGetWin32HandleInfoKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eFenceGetWin32HandleInfoKHR>
+ struct StructExtends<PhysicalDeviceExtendedDynamicStateFeaturesEXT, DeviceCreateInfo>
{
- using Type = FenceGetWin32HandleInfoKHR;
- };
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-
- struct GeneratedCommandsMemoryRequirementsInfoNV
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eGeneratedCommandsMemoryRequirementsInfoNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR GeneratedCommandsMemoryRequirementsInfoNV(VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint_ = VULKAN_HPP_NAMESPACE::PipelineBindPoint::eGraphics, VULKAN_HPP_NAMESPACE::Pipeline pipeline_ = {}, VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV indirectCommandsLayout_ = {}, uint32_t maxSequencesCount_ = {}) VULKAN_HPP_NOEXCEPT
- : pipelineBindPoint( pipelineBindPoint_ ), pipeline( pipeline_ ), indirectCommandsLayout( indirectCommandsLayout_ ), maxSequencesCount( maxSequencesCount_ )
- {}
-
- VULKAN_HPP_CONSTEXPR GeneratedCommandsMemoryRequirementsInfoNV( GeneratedCommandsMemoryRequirementsInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- GeneratedCommandsMemoryRequirementsInfoNV( VkGeneratedCommandsMemoryRequirementsInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- GeneratedCommandsMemoryRequirementsInfoNV & operator=( VkGeneratedCommandsMemoryRequirementsInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::GeneratedCommandsMemoryRequirementsInfoNV const *>( &rhs );
- return *this;
- }
-
- GeneratedCommandsMemoryRequirementsInfoNV & operator=( GeneratedCommandsMemoryRequirementsInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( GeneratedCommandsMemoryRequirementsInfoNV ) );
- return *this;
- }
-
- GeneratedCommandsMemoryRequirementsInfoNV & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- GeneratedCommandsMemoryRequirementsInfoNV & setPipelineBindPoint( VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint_ ) VULKAN_HPP_NOEXCEPT
- {
- pipelineBindPoint = pipelineBindPoint_;
- return *this;
- }
-
- GeneratedCommandsMemoryRequirementsInfoNV & setPipeline( VULKAN_HPP_NAMESPACE::Pipeline pipeline_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- pipeline = pipeline_;
- return *this;
- }
-
- GeneratedCommandsMemoryRequirementsInfoNV & setIndirectCommandsLayout( VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV indirectCommandsLayout_ ) VULKAN_HPP_NOEXCEPT
- {
- indirectCommandsLayout = indirectCommandsLayout_;
- return *this;
- }
-
- GeneratedCommandsMemoryRequirementsInfoNV & setMaxSequencesCount( uint32_t maxSequencesCount_ ) VULKAN_HPP_NOEXCEPT
- {
- maxSequencesCount = maxSequencesCount_;
- return *this;
- }
-
-
- operator VkGeneratedCommandsMemoryRequirementsInfoNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkGeneratedCommandsMemoryRequirementsInfoNV*>( this );
- }
-
- operator VkGeneratedCommandsMemoryRequirementsInfoNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkGeneratedCommandsMemoryRequirementsInfoNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( GeneratedCommandsMemoryRequirementsInfoNV const& ) const = default;
-#else
- bool operator==( GeneratedCommandsMemoryRequirementsInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( pipelineBindPoint == rhs.pipelineBindPoint )
- && ( pipeline == rhs.pipeline )
- && ( indirectCommandsLayout == rhs.indirectCommandsLayout )
- && ( maxSequencesCount == rhs.maxSequencesCount );
- }
-
- bool operator!=( GeneratedCommandsMemoryRequirementsInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eGeneratedCommandsMemoryRequirementsInfoNV;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint = VULKAN_HPP_NAMESPACE::PipelineBindPoint::eGraphics;
- VULKAN_HPP_NAMESPACE::Pipeline pipeline = {};
- VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV indirectCommandsLayout = {};
- uint32_t maxSequencesCount = {};
-
+ value = true
+ };
};
- static_assert( sizeof( GeneratedCommandsMemoryRequirementsInfoNV ) == sizeof( VkGeneratedCommandsMemoryRequirementsInfoNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<GeneratedCommandsMemoryRequirementsInfoNV>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eGeneratedCommandsMemoryRequirementsInfoNV>
+ struct StructExtends<PhysicalDeviceExternalImageFormatInfo, PhysicalDeviceImageFormatInfo2>
{
- using Type = GeneratedCommandsMemoryRequirementsInfoNV;
- };
-
- struct ImageDrmFormatModifierPropertiesEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImageDrmFormatModifierPropertiesEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ImageDrmFormatModifierPropertiesEXT(uint64_t drmFormatModifier_ = {}) VULKAN_HPP_NOEXCEPT
- : drmFormatModifier( drmFormatModifier_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ImageDrmFormatModifierPropertiesEXT( ImageDrmFormatModifierPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ImageDrmFormatModifierPropertiesEXT( VkImageDrmFormatModifierPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ImageDrmFormatModifierPropertiesEXT & operator=( VkImageDrmFormatModifierPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageDrmFormatModifierPropertiesEXT const *>( &rhs );
- return *this;
- }
-
- ImageDrmFormatModifierPropertiesEXT & operator=( ImageDrmFormatModifierPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ImageDrmFormatModifierPropertiesEXT ) );
- return *this;
- }
-
-
- operator VkImageDrmFormatModifierPropertiesEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkImageDrmFormatModifierPropertiesEXT*>( this );
- }
-
- operator VkImageDrmFormatModifierPropertiesEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkImageDrmFormatModifierPropertiesEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ImageDrmFormatModifierPropertiesEXT const& ) const = default;
-#else
- bool operator==( ImageDrmFormatModifierPropertiesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( drmFormatModifier == rhs.drmFormatModifier );
- }
-
- bool operator!=( ImageDrmFormatModifierPropertiesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageDrmFormatModifierPropertiesEXT;
- void* pNext = {};
- uint64_t drmFormatModifier = {};
-
+ value = true
+ };
};
- static_assert( sizeof( ImageDrmFormatModifierPropertiesEXT ) == sizeof( VkImageDrmFormatModifierPropertiesEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ImageDrmFormatModifierPropertiesEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eImageDrmFormatModifierPropertiesEXT>
- {
- using Type = ImageDrmFormatModifierPropertiesEXT;
- };
-
- struct ImageMemoryRequirementsInfo2
+ struct StructExtends<PhysicalDeviceExternalMemoryHostPropertiesEXT, PhysicalDeviceProperties2>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImageMemoryRequirementsInfo2;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ImageMemoryRequirementsInfo2(VULKAN_HPP_NAMESPACE::Image image_ = {}) VULKAN_HPP_NOEXCEPT
- : image( image_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ImageMemoryRequirementsInfo2( ImageMemoryRequirementsInfo2 const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ImageMemoryRequirementsInfo2( VkImageMemoryRequirementsInfo2 const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ImageMemoryRequirementsInfo2 & operator=( VkImageMemoryRequirementsInfo2 const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageMemoryRequirementsInfo2 const *>( &rhs );
- return *this;
- }
-
- ImageMemoryRequirementsInfo2 & operator=( ImageMemoryRequirementsInfo2 const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ImageMemoryRequirementsInfo2 ) );
- return *this;
- }
-
- ImageMemoryRequirementsInfo2 & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- ImageMemoryRequirementsInfo2 & setImage( VULKAN_HPP_NAMESPACE::Image image_ ) VULKAN_HPP_NOEXCEPT
- {
- image = image_;
- return *this;
- }
-
-
- operator VkImageMemoryRequirementsInfo2 const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkImageMemoryRequirementsInfo2*>( this );
- }
-
- operator VkImageMemoryRequirementsInfo2 &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkImageMemoryRequirementsInfo2*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ImageMemoryRequirementsInfo2 const& ) const = default;
-#else
- bool operator==( ImageMemoryRequirementsInfo2 const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( image == rhs.image );
- }
-
- bool operator!=( ImageMemoryRequirementsInfo2 const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageMemoryRequirementsInfo2;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::Image image = {};
-
+ value = true
+ };
};
- static_assert( sizeof( ImageMemoryRequirementsInfo2 ) == sizeof( VkImageMemoryRequirementsInfo2 ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ImageMemoryRequirementsInfo2>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eImageMemoryRequirementsInfo2>
+ struct StructExtends<PhysicalDeviceFeatures2, DeviceCreateInfo>
{
- using Type = ImageMemoryRequirementsInfo2;
- };
- using ImageMemoryRequirementsInfo2KHR = ImageMemoryRequirementsInfo2;
-
- struct SparseImageFormatProperties
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR SparseImageFormatProperties(VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask_ = {}, VULKAN_HPP_NAMESPACE::Extent3D imageGranularity_ = {}, VULKAN_HPP_NAMESPACE::SparseImageFormatFlags flags_ = {}) VULKAN_HPP_NOEXCEPT
- : aspectMask( aspectMask_ ), imageGranularity( imageGranularity_ ), flags( flags_ )
- {}
-
- VULKAN_HPP_CONSTEXPR SparseImageFormatProperties( SparseImageFormatProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- SparseImageFormatProperties( VkSparseImageFormatProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- SparseImageFormatProperties & operator=( VkSparseImageFormatProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SparseImageFormatProperties const *>( &rhs );
- return *this;
- }
-
- SparseImageFormatProperties & operator=( SparseImageFormatProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- memcpy( static_cast<void *>( this ), &rhs, sizeof( SparseImageFormatProperties ) );
- return *this;
- }
-
-
- operator VkSparseImageFormatProperties const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkSparseImageFormatProperties*>( this );
- }
-
- operator VkSparseImageFormatProperties &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkSparseImageFormatProperties*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( SparseImageFormatProperties const& ) const = default;
-#else
- bool operator==( SparseImageFormatProperties const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( aspectMask == rhs.aspectMask )
- && ( imageGranularity == rhs.imageGranularity )
- && ( flags == rhs.flags );
- }
-
- bool operator!=( SparseImageFormatProperties const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask = {};
- VULKAN_HPP_NAMESPACE::Extent3D imageGranularity = {};
- VULKAN_HPP_NAMESPACE::SparseImageFormatFlags flags = {};
-
- };
- static_assert( sizeof( SparseImageFormatProperties ) == sizeof( VkSparseImageFormatProperties ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<SparseImageFormatProperties>::value, "struct wrapper is not a standard layout!" );
-
- struct SparseImageMemoryRequirements
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR SparseImageMemoryRequirements(VULKAN_HPP_NAMESPACE::SparseImageFormatProperties formatProperties_ = {}, uint32_t imageMipTailFirstLod_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize imageMipTailSize_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize imageMipTailOffset_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize imageMipTailStride_ = {}) VULKAN_HPP_NOEXCEPT
- : formatProperties( formatProperties_ ), imageMipTailFirstLod( imageMipTailFirstLod_ ), imageMipTailSize( imageMipTailSize_ ), imageMipTailOffset( imageMipTailOffset_ ), imageMipTailStride( imageMipTailStride_ )
- {}
-
- VULKAN_HPP_CONSTEXPR SparseImageMemoryRequirements( SparseImageMemoryRequirements const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- SparseImageMemoryRequirements( VkSparseImageMemoryRequirements const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- SparseImageMemoryRequirements & operator=( VkSparseImageMemoryRequirements const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SparseImageMemoryRequirements const *>( &rhs );
- return *this;
- }
-
- SparseImageMemoryRequirements & operator=( SparseImageMemoryRequirements const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( SparseImageMemoryRequirements ) );
- return *this;
- }
-
-
- operator VkSparseImageMemoryRequirements const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkSparseImageMemoryRequirements*>( this );
- }
-
- operator VkSparseImageMemoryRequirements &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkSparseImageMemoryRequirements*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( SparseImageMemoryRequirements const& ) const = default;
-#else
- bool operator==( SparseImageMemoryRequirements const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( formatProperties == rhs.formatProperties )
- && ( imageMipTailFirstLod == rhs.imageMipTailFirstLod )
- && ( imageMipTailSize == rhs.imageMipTailSize )
- && ( imageMipTailOffset == rhs.imageMipTailOffset )
- && ( imageMipTailStride == rhs.imageMipTailStride );
- }
-
- bool operator!=( SparseImageMemoryRequirements const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::SparseImageFormatProperties formatProperties = {};
- uint32_t imageMipTailFirstLod = {};
- VULKAN_HPP_NAMESPACE::DeviceSize imageMipTailSize = {};
- VULKAN_HPP_NAMESPACE::DeviceSize imageMipTailOffset = {};
- VULKAN_HPP_NAMESPACE::DeviceSize imageMipTailStride = {};
-
- };
- static_assert( sizeof( SparseImageMemoryRequirements ) == sizeof( VkSparseImageMemoryRequirements ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<SparseImageMemoryRequirements>::value, "struct wrapper is not a standard layout!" );
-
- struct ImageSparseMemoryRequirementsInfo2
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImageSparseMemoryRequirementsInfo2;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ImageSparseMemoryRequirementsInfo2(VULKAN_HPP_NAMESPACE::Image image_ = {}) VULKAN_HPP_NOEXCEPT
- : image( image_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ImageSparseMemoryRequirementsInfo2( ImageSparseMemoryRequirementsInfo2 const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ImageSparseMemoryRequirementsInfo2( VkImageSparseMemoryRequirementsInfo2 const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ImageSparseMemoryRequirementsInfo2 & operator=( VkImageSparseMemoryRequirementsInfo2 const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageSparseMemoryRequirementsInfo2 const *>( &rhs );
- return *this;
- }
-
- ImageSparseMemoryRequirementsInfo2 & operator=( ImageSparseMemoryRequirementsInfo2 const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ImageSparseMemoryRequirementsInfo2 ) );
- return *this;
- }
-
- ImageSparseMemoryRequirementsInfo2 & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- ImageSparseMemoryRequirementsInfo2 & setImage( VULKAN_HPP_NAMESPACE::Image image_ ) VULKAN_HPP_NOEXCEPT
- {
- image = image_;
- return *this;
- }
-
-
- operator VkImageSparseMemoryRequirementsInfo2 const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkImageSparseMemoryRequirementsInfo2*>( this );
- }
-
- operator VkImageSparseMemoryRequirementsInfo2 &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkImageSparseMemoryRequirementsInfo2*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ImageSparseMemoryRequirementsInfo2 const& ) const = default;
-#else
- bool operator==( ImageSparseMemoryRequirementsInfo2 const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( image == rhs.image );
- }
-
- bool operator!=( ImageSparseMemoryRequirementsInfo2 const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageSparseMemoryRequirementsInfo2;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::Image image = {};
-
+ value = true
+ };
};
- static_assert( sizeof( ImageSparseMemoryRequirementsInfo2 ) == sizeof( VkImageSparseMemoryRequirementsInfo2 ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ImageSparseMemoryRequirementsInfo2>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eImageSparseMemoryRequirementsInfo2>
- {
- using Type = ImageSparseMemoryRequirementsInfo2;
- };
- using ImageSparseMemoryRequirementsInfo2KHR = ImageSparseMemoryRequirementsInfo2;
-
- struct SparseImageMemoryRequirements2
+ struct StructExtends<PhysicalDeviceFloatControlsProperties, PhysicalDeviceProperties2>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSparseImageMemoryRequirements2;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR SparseImageMemoryRequirements2(VULKAN_HPP_NAMESPACE::SparseImageMemoryRequirements memoryRequirements_ = {}) VULKAN_HPP_NOEXCEPT
- : memoryRequirements( memoryRequirements_ )
- {}
-
- VULKAN_HPP_CONSTEXPR SparseImageMemoryRequirements2( SparseImageMemoryRequirements2 const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- SparseImageMemoryRequirements2( VkSparseImageMemoryRequirements2 const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- SparseImageMemoryRequirements2 & operator=( VkSparseImageMemoryRequirements2 const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SparseImageMemoryRequirements2 const *>( &rhs );
- return *this;
- }
-
- SparseImageMemoryRequirements2 & operator=( SparseImageMemoryRequirements2 const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- memcpy( static_cast<void *>( this ), &rhs, sizeof( SparseImageMemoryRequirements2 ) );
- return *this;
- }
-
-
- operator VkSparseImageMemoryRequirements2 const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkSparseImageMemoryRequirements2*>( this );
- }
-
- operator VkSparseImageMemoryRequirements2 &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkSparseImageMemoryRequirements2*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( SparseImageMemoryRequirements2 const& ) const = default;
-#else
- bool operator==( SparseImageMemoryRequirements2 const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( memoryRequirements == rhs.memoryRequirements );
- }
-
- bool operator!=( SparseImageMemoryRequirements2 const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSparseImageMemoryRequirements2;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::SparseImageMemoryRequirements memoryRequirements = {};
-
+ value = true
+ };
};
- static_assert( sizeof( SparseImageMemoryRequirements2 ) == sizeof( VkSparseImageMemoryRequirements2 ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<SparseImageMemoryRequirements2>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eSparseImageMemoryRequirements2>
+ struct StructExtends<PhysicalDeviceFragmentDensityMap2FeaturesEXT, PhysicalDeviceFeatures2>
{
- using Type = SparseImageMemoryRequirements2;
- };
- using SparseImageMemoryRequirements2KHR = SparseImageMemoryRequirements2;
-
- struct SubresourceLayout
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR SubresourceLayout(VULKAN_HPP_NAMESPACE::DeviceSize offset_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize size_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize rowPitch_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize arrayPitch_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize depthPitch_ = {}) VULKAN_HPP_NOEXCEPT
- : offset( offset_ ), size( size_ ), rowPitch( rowPitch_ ), arrayPitch( arrayPitch_ ), depthPitch( depthPitch_ )
- {}
-
- VULKAN_HPP_CONSTEXPR SubresourceLayout( SubresourceLayout const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- SubresourceLayout( VkSubresourceLayout const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- SubresourceLayout & operator=( VkSubresourceLayout const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SubresourceLayout const *>( &rhs );
- return *this;
- }
-
- SubresourceLayout & operator=( SubresourceLayout const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( SubresourceLayout ) );
- return *this;
- }
-
-
- operator VkSubresourceLayout const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkSubresourceLayout*>( this );
- }
-
- operator VkSubresourceLayout &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkSubresourceLayout*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( SubresourceLayout const& ) const = default;
-#else
- bool operator==( SubresourceLayout const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( offset == rhs.offset )
- && ( size == rhs.size )
- && ( rowPitch == rhs.rowPitch )
- && ( arrayPitch == rhs.arrayPitch )
- && ( depthPitch == rhs.depthPitch );
- }
-
- bool operator!=( SubresourceLayout const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::DeviceSize offset = {};
- VULKAN_HPP_NAMESPACE::DeviceSize size = {};
- VULKAN_HPP_NAMESPACE::DeviceSize rowPitch = {};
- VULKAN_HPP_NAMESPACE::DeviceSize arrayPitch = {};
- VULKAN_HPP_NAMESPACE::DeviceSize depthPitch = {};
-
- };
- static_assert( sizeof( SubresourceLayout ) == sizeof( VkSubresourceLayout ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<SubresourceLayout>::value, "struct wrapper is not a standard layout!" );
-
- struct ImageViewAddressPropertiesNVX
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImageViewAddressPropertiesNVX;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ImageViewAddressPropertiesNVX(VULKAN_HPP_NAMESPACE::DeviceAddress deviceAddress_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize size_ = {}) VULKAN_HPP_NOEXCEPT
- : deviceAddress( deviceAddress_ ), size( size_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ImageViewAddressPropertiesNVX( ImageViewAddressPropertiesNVX const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ImageViewAddressPropertiesNVX( VkImageViewAddressPropertiesNVX const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ImageViewAddressPropertiesNVX & operator=( VkImageViewAddressPropertiesNVX const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageViewAddressPropertiesNVX const *>( &rhs );
- return *this;
- }
-
- ImageViewAddressPropertiesNVX & operator=( ImageViewAddressPropertiesNVX const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ImageViewAddressPropertiesNVX ) );
- return *this;
- }
-
-
- operator VkImageViewAddressPropertiesNVX const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkImageViewAddressPropertiesNVX*>( this );
- }
-
- operator VkImageViewAddressPropertiesNVX &() VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<VkImageViewAddressPropertiesNVX*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ImageViewAddressPropertiesNVX const& ) const = default;
-#else
- bool operator==( ImageViewAddressPropertiesNVX const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( deviceAddress == rhs.deviceAddress )
- && ( size == rhs.size );
- }
-
- bool operator!=( ImageViewAddressPropertiesNVX const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageViewAddressPropertiesNVX;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::DeviceAddress deviceAddress = {};
- VULKAN_HPP_NAMESPACE::DeviceSize size = {};
-
+ value = true
+ };
};
- static_assert( sizeof( ImageViewAddressPropertiesNVX ) == sizeof( VkImageViewAddressPropertiesNVX ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ImageViewAddressPropertiesNVX>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eImageViewAddressPropertiesNVX>
+ struct StructExtends<PhysicalDeviceFragmentDensityMap2FeaturesEXT, DeviceCreateInfo>
{
- using Type = ImageViewAddressPropertiesNVX;
- };
-
- struct ImageViewHandleInfoNVX
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImageViewHandleInfoNVX;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ImageViewHandleInfoNVX(VULKAN_HPP_NAMESPACE::ImageView imageView_ = {}, VULKAN_HPP_NAMESPACE::DescriptorType descriptorType_ = VULKAN_HPP_NAMESPACE::DescriptorType::eSampler, VULKAN_HPP_NAMESPACE::Sampler sampler_ = {}) VULKAN_HPP_NOEXCEPT
- : imageView( imageView_ ), descriptorType( descriptorType_ ), sampler( sampler_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ImageViewHandleInfoNVX( ImageViewHandleInfoNVX const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ImageViewHandleInfoNVX( VkImageViewHandleInfoNVX const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ImageViewHandleInfoNVX & operator=( VkImageViewHandleInfoNVX const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageViewHandleInfoNVX const *>( &rhs );
- return *this;
- }
-
- ImageViewHandleInfoNVX & operator=( ImageViewHandleInfoNVX const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ImageViewHandleInfoNVX ) );
- return *this;
- }
-
- ImageViewHandleInfoNVX & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- ImageViewHandleInfoNVX & setImageView( VULKAN_HPP_NAMESPACE::ImageView imageView_ ) VULKAN_HPP_NOEXCEPT
- {
- imageView = imageView_;
- return *this;
- }
-
- ImageViewHandleInfoNVX & setDescriptorType( VULKAN_HPP_NAMESPACE::DescriptorType descriptorType_ ) VULKAN_HPP_NOEXCEPT
- {
- descriptorType = descriptorType_;
- return *this;
- }
-
- ImageViewHandleInfoNVX & setSampler( VULKAN_HPP_NAMESPACE::Sampler sampler_ ) VULKAN_HPP_NOEXCEPT
- {
- sampler = sampler_;
- return *this;
- }
-
-
- operator VkImageViewHandleInfoNVX const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkImageViewHandleInfoNVX*>( this );
- }
-
- operator VkImageViewHandleInfoNVX &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkImageViewHandleInfoNVX*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ImageViewHandleInfoNVX const& ) const = default;
-#else
- bool operator==( ImageViewHandleInfoNVX const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( imageView == rhs.imageView )
- && ( descriptorType == rhs.descriptorType )
- && ( sampler == rhs.sampler );
- }
-
- bool operator!=( ImageViewHandleInfoNVX const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageViewHandleInfoNVX;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::ImageView imageView = {};
- VULKAN_HPP_NAMESPACE::DescriptorType descriptorType = VULKAN_HPP_NAMESPACE::DescriptorType::eSampler;
- VULKAN_HPP_NAMESPACE::Sampler sampler = {};
-
+ value = true
+ };
};
- static_assert( sizeof( ImageViewHandleInfoNVX ) == sizeof( VkImageViewHandleInfoNVX ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ImageViewHandleInfoNVX>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eImageViewHandleInfoNVX>
- {
- using Type = ImageViewHandleInfoNVX;
- };
-
-#ifdef VK_USE_PLATFORM_ANDROID_KHR
- struct MemoryGetAndroidHardwareBufferInfoANDROID
+ struct StructExtends<PhysicalDeviceFragmentDensityMap2PropertiesEXT, PhysicalDeviceProperties2>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMemoryGetAndroidHardwareBufferInfoANDROID;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR MemoryGetAndroidHardwareBufferInfoANDROID(VULKAN_HPP_NAMESPACE::DeviceMemory memory_ = {}) VULKAN_HPP_NOEXCEPT
- : memory( memory_ )
- {}
-
- VULKAN_HPP_CONSTEXPR MemoryGetAndroidHardwareBufferInfoANDROID( MemoryGetAndroidHardwareBufferInfoANDROID const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- MemoryGetAndroidHardwareBufferInfoANDROID( VkMemoryGetAndroidHardwareBufferInfoANDROID const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- MemoryGetAndroidHardwareBufferInfoANDROID & operator=( VkMemoryGetAndroidHardwareBufferInfoANDROID const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MemoryGetAndroidHardwareBufferInfoANDROID const *>( &rhs );
- return *this;
- }
-
- MemoryGetAndroidHardwareBufferInfoANDROID & operator=( MemoryGetAndroidHardwareBufferInfoANDROID const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- memcpy( static_cast<void *>( this ), &rhs, sizeof( MemoryGetAndroidHardwareBufferInfoANDROID ) );
- return *this;
- }
-
- MemoryGetAndroidHardwareBufferInfoANDROID & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- MemoryGetAndroidHardwareBufferInfoANDROID & setMemory( VULKAN_HPP_NAMESPACE::DeviceMemory memory_ ) VULKAN_HPP_NOEXCEPT
- {
- memory = memory_;
- return *this;
- }
-
-
- operator VkMemoryGetAndroidHardwareBufferInfoANDROID const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkMemoryGetAndroidHardwareBufferInfoANDROID*>( this );
- }
-
- operator VkMemoryGetAndroidHardwareBufferInfoANDROID &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkMemoryGetAndroidHardwareBufferInfoANDROID*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( MemoryGetAndroidHardwareBufferInfoANDROID const& ) const = default;
-#else
- bool operator==( MemoryGetAndroidHardwareBufferInfoANDROID const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( memory == rhs.memory );
- }
-
- bool operator!=( MemoryGetAndroidHardwareBufferInfoANDROID const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMemoryGetAndroidHardwareBufferInfoANDROID;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::DeviceMemory memory = {};
-
+ value = true
+ };
};
- static_assert( sizeof( MemoryGetAndroidHardwareBufferInfoANDROID ) == sizeof( VkMemoryGetAndroidHardwareBufferInfoANDROID ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<MemoryGetAndroidHardwareBufferInfoANDROID>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eMemoryGetAndroidHardwareBufferInfoANDROID>
+ struct StructExtends<PhysicalDeviceFragmentDensityMapFeaturesEXT, PhysicalDeviceFeatures2>
{
- using Type = MemoryGetAndroidHardwareBufferInfoANDROID;
- };
-#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
-
- struct MemoryGetFdInfoKHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMemoryGetFdInfoKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR MemoryGetFdInfoKHR(VULKAN_HPP_NAMESPACE::DeviceMemory memory_ = {}, VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType_ = VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits::eOpaqueFd) VULKAN_HPP_NOEXCEPT
- : memory( memory_ ), handleType( handleType_ )
- {}
-
- VULKAN_HPP_CONSTEXPR MemoryGetFdInfoKHR( MemoryGetFdInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- MemoryGetFdInfoKHR( VkMemoryGetFdInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- MemoryGetFdInfoKHR & operator=( VkMemoryGetFdInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MemoryGetFdInfoKHR const *>( &rhs );
- return *this;
- }
-
- MemoryGetFdInfoKHR & operator=( MemoryGetFdInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( MemoryGetFdInfoKHR ) );
- return *this;
- }
-
- MemoryGetFdInfoKHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- MemoryGetFdInfoKHR & setMemory( VULKAN_HPP_NAMESPACE::DeviceMemory memory_ ) VULKAN_HPP_NOEXCEPT
- {
- memory = memory_;
- return *this;
- }
-
- MemoryGetFdInfoKHR & setHandleType( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- handleType = handleType_;
- return *this;
- }
-
-
- operator VkMemoryGetFdInfoKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkMemoryGetFdInfoKHR*>( this );
- }
-
- operator VkMemoryGetFdInfoKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkMemoryGetFdInfoKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( MemoryGetFdInfoKHR const& ) const = default;
-#else
- bool operator==( MemoryGetFdInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( memory == rhs.memory )
- && ( handleType == rhs.handleType );
- }
-
- bool operator!=( MemoryGetFdInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMemoryGetFdInfoKHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::DeviceMemory memory = {};
- VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType = VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits::eOpaqueFd;
-
+ value = true
+ };
};
- static_assert( sizeof( MemoryGetFdInfoKHR ) == sizeof( VkMemoryGetFdInfoKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<MemoryGetFdInfoKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eMemoryGetFdInfoKHR>
- {
- using Type = MemoryGetFdInfoKHR;
- };
-
- struct MemoryFdPropertiesKHR
+ struct StructExtends<PhysicalDeviceFragmentDensityMapFeaturesEXT, DeviceCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMemoryFdPropertiesKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR MemoryFdPropertiesKHR(uint32_t memoryTypeBits_ = {}) VULKAN_HPP_NOEXCEPT
- : memoryTypeBits( memoryTypeBits_ )
- {}
-
- VULKAN_HPP_CONSTEXPR MemoryFdPropertiesKHR( MemoryFdPropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- MemoryFdPropertiesKHR( VkMemoryFdPropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- MemoryFdPropertiesKHR & operator=( VkMemoryFdPropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MemoryFdPropertiesKHR const *>( &rhs );
- return *this;
- }
-
- MemoryFdPropertiesKHR & operator=( MemoryFdPropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( MemoryFdPropertiesKHR ) );
- return *this;
- }
-
-
- operator VkMemoryFdPropertiesKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkMemoryFdPropertiesKHR*>( this );
- }
-
- operator VkMemoryFdPropertiesKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkMemoryFdPropertiesKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( MemoryFdPropertiesKHR const& ) const = default;
-#else
- bool operator==( MemoryFdPropertiesKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( memoryTypeBits == rhs.memoryTypeBits );
- }
-
- bool operator!=( MemoryFdPropertiesKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMemoryFdPropertiesKHR;
- void* pNext = {};
- uint32_t memoryTypeBits = {};
-
+ value = true
+ };
};
- static_assert( sizeof( MemoryFdPropertiesKHR ) == sizeof( VkMemoryFdPropertiesKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<MemoryFdPropertiesKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eMemoryFdPropertiesKHR>
- {
- using Type = MemoryFdPropertiesKHR;
- };
-
- struct MemoryHostPointerPropertiesEXT
+ struct StructExtends<PhysicalDeviceFragmentDensityMapPropertiesEXT, PhysicalDeviceProperties2>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMemoryHostPointerPropertiesEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR MemoryHostPointerPropertiesEXT(uint32_t memoryTypeBits_ = {}) VULKAN_HPP_NOEXCEPT
- : memoryTypeBits( memoryTypeBits_ )
- {}
-
- VULKAN_HPP_CONSTEXPR MemoryHostPointerPropertiesEXT( MemoryHostPointerPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- MemoryHostPointerPropertiesEXT( VkMemoryHostPointerPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- MemoryHostPointerPropertiesEXT & operator=( VkMemoryHostPointerPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MemoryHostPointerPropertiesEXT const *>( &rhs );
- return *this;
- }
-
- MemoryHostPointerPropertiesEXT & operator=( MemoryHostPointerPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( MemoryHostPointerPropertiesEXT ) );
- return *this;
- }
-
-
- operator VkMemoryHostPointerPropertiesEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkMemoryHostPointerPropertiesEXT*>( this );
- }
-
- operator VkMemoryHostPointerPropertiesEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkMemoryHostPointerPropertiesEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( MemoryHostPointerPropertiesEXT const& ) const = default;
-#else
- bool operator==( MemoryHostPointerPropertiesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( memoryTypeBits == rhs.memoryTypeBits );
- }
-
- bool operator!=( MemoryHostPointerPropertiesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMemoryHostPointerPropertiesEXT;
- void* pNext = {};
- uint32_t memoryTypeBits = {};
-
+ value = true
+ };
};
- static_assert( sizeof( MemoryHostPointerPropertiesEXT ) == sizeof( VkMemoryHostPointerPropertiesEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<MemoryHostPointerPropertiesEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eMemoryHostPointerPropertiesEXT>
+ struct StructExtends<PhysicalDeviceFragmentShaderBarycentricFeaturesNV, PhysicalDeviceFeatures2>
{
- using Type = MemoryHostPointerPropertiesEXT;
- };
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- struct MemoryGetWin32HandleInfoKHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMemoryGetWin32HandleInfoKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR MemoryGetWin32HandleInfoKHR(VULKAN_HPP_NAMESPACE::DeviceMemory memory_ = {}, VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType_ = VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits::eOpaqueFd) VULKAN_HPP_NOEXCEPT
- : memory( memory_ ), handleType( handleType_ )
- {}
-
- VULKAN_HPP_CONSTEXPR MemoryGetWin32HandleInfoKHR( MemoryGetWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- MemoryGetWin32HandleInfoKHR( VkMemoryGetWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- MemoryGetWin32HandleInfoKHR & operator=( VkMemoryGetWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MemoryGetWin32HandleInfoKHR const *>( &rhs );
- return *this;
- }
-
- MemoryGetWin32HandleInfoKHR & operator=( MemoryGetWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( MemoryGetWin32HandleInfoKHR ) );
- return *this;
- }
-
- MemoryGetWin32HandleInfoKHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- MemoryGetWin32HandleInfoKHR & setMemory( VULKAN_HPP_NAMESPACE::DeviceMemory memory_ ) VULKAN_HPP_NOEXCEPT
- {
- memory = memory_;
- return *this;
- }
-
- MemoryGetWin32HandleInfoKHR & setHandleType( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType_ ) VULKAN_HPP_NOEXCEPT
- {
- handleType = handleType_;
- return *this;
- }
-
-
- operator VkMemoryGetWin32HandleInfoKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkMemoryGetWin32HandleInfoKHR*>( this );
- }
-
- operator VkMemoryGetWin32HandleInfoKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkMemoryGetWin32HandleInfoKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( MemoryGetWin32HandleInfoKHR const& ) const = default;
-#else
- bool operator==( MemoryGetWin32HandleInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( memory == rhs.memory )
- && ( handleType == rhs.handleType );
- }
-
- bool operator!=( MemoryGetWin32HandleInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMemoryGetWin32HandleInfoKHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::DeviceMemory memory = {};
- VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType = VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits::eOpaqueFd;
-
+ value = true
+ };
};
- static_assert( sizeof( MemoryGetWin32HandleInfoKHR ) == sizeof( VkMemoryGetWin32HandleInfoKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<MemoryGetWin32HandleInfoKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eMemoryGetWin32HandleInfoKHR>
+ struct StructExtends<PhysicalDeviceFragmentShaderBarycentricFeaturesNV, DeviceCreateInfo>
{
- using Type = MemoryGetWin32HandleInfoKHR;
- };
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- struct MemoryWin32HandlePropertiesKHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMemoryWin32HandlePropertiesKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR MemoryWin32HandlePropertiesKHR(uint32_t memoryTypeBits_ = {}) VULKAN_HPP_NOEXCEPT
- : memoryTypeBits( memoryTypeBits_ )
- {}
-
- VULKAN_HPP_CONSTEXPR MemoryWin32HandlePropertiesKHR( MemoryWin32HandlePropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- MemoryWin32HandlePropertiesKHR( VkMemoryWin32HandlePropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- MemoryWin32HandlePropertiesKHR & operator=( VkMemoryWin32HandlePropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MemoryWin32HandlePropertiesKHR const *>( &rhs );
- return *this;
- }
-
- MemoryWin32HandlePropertiesKHR & operator=( MemoryWin32HandlePropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( MemoryWin32HandlePropertiesKHR ) );
- return *this;
- }
-
-
- operator VkMemoryWin32HandlePropertiesKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkMemoryWin32HandlePropertiesKHR*>( this );
- }
-
- operator VkMemoryWin32HandlePropertiesKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkMemoryWin32HandlePropertiesKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( MemoryWin32HandlePropertiesKHR const& ) const = default;
-#else
- bool operator==( MemoryWin32HandlePropertiesKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( memoryTypeBits == rhs.memoryTypeBits );
- }
-
- bool operator!=( MemoryWin32HandlePropertiesKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMemoryWin32HandlePropertiesKHR;
- void* pNext = {};
- uint32_t memoryTypeBits = {};
-
+ value = true
+ };
};
- static_assert( sizeof( MemoryWin32HandlePropertiesKHR ) == sizeof( VkMemoryWin32HandlePropertiesKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<MemoryWin32HandlePropertiesKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eMemoryWin32HandlePropertiesKHR>
- {
- using Type = MemoryWin32HandlePropertiesKHR;
- };
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-
- struct PastPresentationTimingGOOGLE
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PastPresentationTimingGOOGLE(uint32_t presentID_ = {}, uint64_t desiredPresentTime_ = {}, uint64_t actualPresentTime_ = {}, uint64_t earliestPresentTime_ = {}, uint64_t presentMargin_ = {}) VULKAN_HPP_NOEXCEPT
- : presentID( presentID_ ), desiredPresentTime( desiredPresentTime_ ), actualPresentTime( actualPresentTime_ ), earliestPresentTime( earliestPresentTime_ ), presentMargin( presentMargin_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PastPresentationTimingGOOGLE( PastPresentationTimingGOOGLE const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PastPresentationTimingGOOGLE( VkPastPresentationTimingGOOGLE const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PastPresentationTimingGOOGLE & operator=( VkPastPresentationTimingGOOGLE const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PastPresentationTimingGOOGLE const *>( &rhs );
- return *this;
- }
-
- PastPresentationTimingGOOGLE & operator=( PastPresentationTimingGOOGLE const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PastPresentationTimingGOOGLE ) );
- return *this;
- }
-
-
- operator VkPastPresentationTimingGOOGLE const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPastPresentationTimingGOOGLE*>( this );
- }
-
- operator VkPastPresentationTimingGOOGLE &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPastPresentationTimingGOOGLE*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PastPresentationTimingGOOGLE const& ) const = default;
-#else
- bool operator==( PastPresentationTimingGOOGLE const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( presentID == rhs.presentID )
- && ( desiredPresentTime == rhs.desiredPresentTime )
- && ( actualPresentTime == rhs.actualPresentTime )
- && ( earliestPresentTime == rhs.earliestPresentTime )
- && ( presentMargin == rhs.presentMargin );
- }
-
- bool operator!=( PastPresentationTimingGOOGLE const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- uint32_t presentID = {};
- uint64_t desiredPresentTime = {};
- uint64_t actualPresentTime = {};
- uint64_t earliestPresentTime = {};
- uint64_t presentMargin = {};
-
- };
- static_assert( sizeof( PastPresentationTimingGOOGLE ) == sizeof( VkPastPresentationTimingGOOGLE ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PastPresentationTimingGOOGLE>::value, "struct wrapper is not a standard layout!" );
-
- union PerformanceValueDataINTEL
- {
- PerformanceValueDataINTEL( VULKAN_HPP_NAMESPACE::PerformanceValueDataINTEL const& rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void*>(this), &rhs, sizeof( VULKAN_HPP_NAMESPACE::PerformanceValueDataINTEL ) );
- }
-
- PerformanceValueDataINTEL( uint32_t value32_ = {} )
- : value32( value32_ )
- {}
-
- PerformanceValueDataINTEL( uint64_t value64_ )
- : value64( value64_ )
- {}
-
- PerformanceValueDataINTEL( float valueFloat_ )
- : valueFloat( valueFloat_ )
- {}
-
- PerformanceValueDataINTEL( const char* valueString_ )
- : valueString( valueString_ )
- {}
-
- PerformanceValueDataINTEL & setValue32( uint32_t value32_ ) VULKAN_HPP_NOEXCEPT
- {
- value32 = value32_;
- return *this;
- }
-
- PerformanceValueDataINTEL & setValue64( uint64_t value64_ ) VULKAN_HPP_NOEXCEPT
- {
- value64 = value64_;
- return *this;
- }
-
- PerformanceValueDataINTEL & setValueFloat( float valueFloat_ ) VULKAN_HPP_NOEXCEPT
- {
- valueFloat = valueFloat_;
- return *this;
- }
-
- PerformanceValueDataINTEL & setValueBool( VULKAN_HPP_NAMESPACE::Bool32 valueBool_ ) VULKAN_HPP_NOEXCEPT
- {
- valueBool = valueBool_;
- return *this;
- }
-
- PerformanceValueDataINTEL & setValueString( const char* valueString_ ) VULKAN_HPP_NOEXCEPT
- {
- valueString = valueString_;
- return *this;
- }
-
- VULKAN_HPP_NAMESPACE::PerformanceValueDataINTEL & operator=( VULKAN_HPP_NAMESPACE::PerformanceValueDataINTEL const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void*>(this), &rhs, sizeof( VULKAN_HPP_NAMESPACE::PerformanceValueDataINTEL ) );
- return *this;
- }
-
- operator VkPerformanceValueDataINTEL const&() const
- {
- return *reinterpret_cast<const VkPerformanceValueDataINTEL*>(this);
- }
-
- operator VkPerformanceValueDataINTEL &()
- {
- return *reinterpret_cast<VkPerformanceValueDataINTEL*>(this);
- }
-
-#ifdef VULKAN_HPP_HAS_UNRESTRICTED_UNIONS
- uint32_t value32;
- uint64_t value64;
- float valueFloat;
- VULKAN_HPP_NAMESPACE::Bool32 valueBool;
- const char* valueString;
-#else
- uint32_t value32;
- uint64_t value64;
- float valueFloat;
- VkBool32 valueBool;
- const char* valueString;
-#endif /*VULKAN_HPP_HAS_UNRESTRICTED_UNIONS*/
- };
-
- struct PerformanceValueINTEL
+ struct StructExtends<PhysicalDeviceFragmentShaderInterlockFeaturesEXT, PhysicalDeviceFeatures2>
{
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- PerformanceValueINTEL(VULKAN_HPP_NAMESPACE::PerformanceValueTypeINTEL type_ = VULKAN_HPP_NAMESPACE::PerformanceValueTypeINTEL::eUint32, VULKAN_HPP_NAMESPACE::PerformanceValueDataINTEL data_ = {}) VULKAN_HPP_NOEXCEPT
- : type( type_ ), data( data_ )
- {}
-
- PerformanceValueINTEL( PerformanceValueINTEL const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PerformanceValueINTEL( VkPerformanceValueINTEL const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PerformanceValueINTEL & operator=( VkPerformanceValueINTEL const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PerformanceValueINTEL const *>( &rhs );
- return *this;
- }
-
- PerformanceValueINTEL & operator=( PerformanceValueINTEL const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PerformanceValueINTEL ) );
- return *this;
- }
-
- PerformanceValueINTEL & setType( VULKAN_HPP_NAMESPACE::PerformanceValueTypeINTEL type_ ) VULKAN_HPP_NOEXCEPT
- {
- type = type_;
- return *this;
- }
-
- PerformanceValueINTEL & setData( VULKAN_HPP_NAMESPACE::PerformanceValueDataINTEL const & data_ ) VULKAN_HPP_NOEXCEPT
- {
- data = data_;
- return *this;
- }
-
-
- operator VkPerformanceValueINTEL const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPerformanceValueINTEL*>( this );
- }
-
- operator VkPerformanceValueINTEL &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPerformanceValueINTEL*>( this );
- }
-
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::PerformanceValueTypeINTEL type = VULKAN_HPP_NAMESPACE::PerformanceValueTypeINTEL::eUint32;
- VULKAN_HPP_NAMESPACE::PerformanceValueDataINTEL data = {};
-
- };
- static_assert( sizeof( PerformanceValueINTEL ) == sizeof( VkPerformanceValueINTEL ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PerformanceValueINTEL>::value, "struct wrapper is not a standard layout!" );
-
- struct PipelineExecutableInfoKHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineExecutableInfoKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PipelineExecutableInfoKHR(VULKAN_HPP_NAMESPACE::Pipeline pipeline_ = {}, uint32_t executableIndex_ = {}) VULKAN_HPP_NOEXCEPT
- : pipeline( pipeline_ ), executableIndex( executableIndex_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PipelineExecutableInfoKHR( PipelineExecutableInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PipelineExecutableInfoKHR( VkPipelineExecutableInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PipelineExecutableInfoKHR & operator=( VkPipelineExecutableInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineExecutableInfoKHR const *>( &rhs );
- return *this;
- }
-
- PipelineExecutableInfoKHR & operator=( PipelineExecutableInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PipelineExecutableInfoKHR ) );
- return *this;
- }
-
- PipelineExecutableInfoKHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PipelineExecutableInfoKHR & setPipeline( VULKAN_HPP_NAMESPACE::Pipeline pipeline_ ) VULKAN_HPP_NOEXCEPT
- {
- pipeline = pipeline_;
- return *this;
- }
-
- PipelineExecutableInfoKHR & setExecutableIndex( uint32_t executableIndex_ ) VULKAN_HPP_NOEXCEPT
- {
- executableIndex = executableIndex_;
- return *this;
- }
-
-
- operator VkPipelineExecutableInfoKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPipelineExecutableInfoKHR*>( this );
- }
-
- operator VkPipelineExecutableInfoKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPipelineExecutableInfoKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PipelineExecutableInfoKHR const& ) const = default;
-#else
- bool operator==( PipelineExecutableInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( pipeline == rhs.pipeline )
- && ( executableIndex == rhs.executableIndex );
- }
-
- bool operator!=( PipelineExecutableInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineExecutableInfoKHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::Pipeline pipeline = {};
- uint32_t executableIndex = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PipelineExecutableInfoKHR ) == sizeof( VkPipelineExecutableInfoKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PipelineExecutableInfoKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePipelineExecutableInfoKHR>
- {
- using Type = PipelineExecutableInfoKHR;
- };
-
- struct PipelineExecutableInternalRepresentationKHR
+ struct StructExtends<PhysicalDeviceFragmentShaderInterlockFeaturesEXT, DeviceCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineExecutableInternalRepresentationKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR_14 PipelineExecutableInternalRepresentationKHR(std::array<char,VK_MAX_DESCRIPTION_SIZE> const& name_ = {}, std::array<char,VK_MAX_DESCRIPTION_SIZE> const& description_ = {}, VULKAN_HPP_NAMESPACE::Bool32 isText_ = {}, size_t dataSize_ = {}, void* pData_ = {}) VULKAN_HPP_NOEXCEPT
- : name( name_ ), description( description_ ), isText( isText_ ), dataSize( dataSize_ ), pData( pData_ )
- {}
-
- VULKAN_HPP_CONSTEXPR_14 PipelineExecutableInternalRepresentationKHR( PipelineExecutableInternalRepresentationKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PipelineExecutableInternalRepresentationKHR( VkPipelineExecutableInternalRepresentationKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- template <typename T>
- PipelineExecutableInternalRepresentationKHR( std::array<char,VK_MAX_DESCRIPTION_SIZE> const& name_, std::array<char,VK_MAX_DESCRIPTION_SIZE> const& description_, VULKAN_HPP_NAMESPACE::Bool32 isText_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<T> const & data_ )
- : name( name_ ), description( description_ ), isText( isText_ ), dataSize( data_.size() * sizeof(T) ), pData( data_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PipelineExecutableInternalRepresentationKHR & operator=( VkPipelineExecutableInternalRepresentationKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineExecutableInternalRepresentationKHR const *>( &rhs );
- return *this;
- }
-
- PipelineExecutableInternalRepresentationKHR & operator=( PipelineExecutableInternalRepresentationKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PipelineExecutableInternalRepresentationKHR ) );
- return *this;
- }
-
-
- operator VkPipelineExecutableInternalRepresentationKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPipelineExecutableInternalRepresentationKHR*>( this );
- }
-
- operator VkPipelineExecutableInternalRepresentationKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPipelineExecutableInternalRepresentationKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PipelineExecutableInternalRepresentationKHR const& ) const = default;
-#else
- bool operator==( PipelineExecutableInternalRepresentationKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( name == rhs.name )
- && ( description == rhs.description )
- && ( isText == rhs.isText )
- && ( dataSize == rhs.dataSize )
- && ( pData == rhs.pData );
- }
-
- bool operator!=( PipelineExecutableInternalRepresentationKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineExecutableInternalRepresentationKHR;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DESCRIPTION_SIZE> name = {};
- VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DESCRIPTION_SIZE> description = {};
- VULKAN_HPP_NAMESPACE::Bool32 isText = {};
- size_t dataSize = {};
- void* pData = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PipelineExecutableInternalRepresentationKHR ) == sizeof( VkPipelineExecutableInternalRepresentationKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PipelineExecutableInternalRepresentationKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePipelineExecutableInternalRepresentationKHR>
- {
- using Type = PipelineExecutableInternalRepresentationKHR;
- };
-
- struct PipelineInfoKHR
+ struct StructExtends<PhysicalDeviceFragmentShadingRateEnumsFeaturesNV, PhysicalDeviceFeatures2>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineInfoKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PipelineInfoKHR(VULKAN_HPP_NAMESPACE::Pipeline pipeline_ = {}) VULKAN_HPP_NOEXCEPT
- : pipeline( pipeline_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PipelineInfoKHR( PipelineInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PipelineInfoKHR( VkPipelineInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PipelineInfoKHR & operator=( VkPipelineInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineInfoKHR const *>( &rhs );
- return *this;
- }
-
- PipelineInfoKHR & operator=( PipelineInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PipelineInfoKHR ) );
- return *this;
- }
-
- PipelineInfoKHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PipelineInfoKHR & setPipeline( VULKAN_HPP_NAMESPACE::Pipeline pipeline_ ) VULKAN_HPP_NOEXCEPT
- {
- pipeline = pipeline_;
- return *this;
- }
-
-
- operator VkPipelineInfoKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPipelineInfoKHR*>( this );
- }
-
- operator VkPipelineInfoKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPipelineInfoKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PipelineInfoKHR const& ) const = default;
-#else
- bool operator==( PipelineInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( pipeline == rhs.pipeline );
- }
-
- bool operator!=( PipelineInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineInfoKHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::Pipeline pipeline = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PipelineInfoKHR ) == sizeof( VkPipelineInfoKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PipelineInfoKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePipelineInfoKHR>
+ struct StructExtends<PhysicalDeviceFragmentShadingRateEnumsFeaturesNV, DeviceCreateInfo>
{
- using Type = PipelineInfoKHR;
- };
-
- struct PipelineExecutablePropertiesKHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineExecutablePropertiesKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR_14 PipelineExecutablePropertiesKHR(VULKAN_HPP_NAMESPACE::ShaderStageFlags stages_ = {}, std::array<char,VK_MAX_DESCRIPTION_SIZE> const& name_ = {}, std::array<char,VK_MAX_DESCRIPTION_SIZE> const& description_ = {}, uint32_t subgroupSize_ = {}) VULKAN_HPP_NOEXCEPT
- : stages( stages_ ), name( name_ ), description( description_ ), subgroupSize( subgroupSize_ )
- {}
-
- VULKAN_HPP_CONSTEXPR_14 PipelineExecutablePropertiesKHR( PipelineExecutablePropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PipelineExecutablePropertiesKHR( VkPipelineExecutablePropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PipelineExecutablePropertiesKHR & operator=( VkPipelineExecutablePropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineExecutablePropertiesKHR const *>( &rhs );
- return *this;
- }
-
- PipelineExecutablePropertiesKHR & operator=( PipelineExecutablePropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PipelineExecutablePropertiesKHR ) );
- return *this;
- }
-
-
- operator VkPipelineExecutablePropertiesKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPipelineExecutablePropertiesKHR*>( this );
- }
-
- operator VkPipelineExecutablePropertiesKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPipelineExecutablePropertiesKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PipelineExecutablePropertiesKHR const& ) const = default;
-#else
- bool operator==( PipelineExecutablePropertiesKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( stages == rhs.stages )
- && ( name == rhs.name )
- && ( description == rhs.description )
- && ( subgroupSize == rhs.subgroupSize );
- }
-
- bool operator!=( PipelineExecutablePropertiesKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineExecutablePropertiesKHR;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::ShaderStageFlags stages = {};
- VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DESCRIPTION_SIZE> name = {};
- VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DESCRIPTION_SIZE> description = {};
- uint32_t subgroupSize = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PipelineExecutablePropertiesKHR ) == sizeof( VkPipelineExecutablePropertiesKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PipelineExecutablePropertiesKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePipelineExecutablePropertiesKHR>
- {
- using Type = PipelineExecutablePropertiesKHR;
- };
-
- union PipelineExecutableStatisticValueKHR
- {
- PipelineExecutableStatisticValueKHR( VULKAN_HPP_NAMESPACE::PipelineExecutableStatisticValueKHR const& rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void*>(this), &rhs, sizeof( VULKAN_HPP_NAMESPACE::PipelineExecutableStatisticValueKHR ) );
- }
-
- PipelineExecutableStatisticValueKHR( VULKAN_HPP_NAMESPACE::Bool32 b32_ = {} )
- : b32( b32_ )
- {}
-
- PipelineExecutableStatisticValueKHR( int64_t i64_ )
- : i64( i64_ )
- {}
-
- PipelineExecutableStatisticValueKHR( uint64_t u64_ )
- : u64( u64_ )
- {}
-
- PipelineExecutableStatisticValueKHR( double f64_ )
- : f64( f64_ )
- {}
-
- PipelineExecutableStatisticValueKHR & setB32( VULKAN_HPP_NAMESPACE::Bool32 b32_ ) VULKAN_HPP_NOEXCEPT
- {
- b32 = b32_;
- return *this;
- }
-
- PipelineExecutableStatisticValueKHR & setI64( int64_t i64_ ) VULKAN_HPP_NOEXCEPT
- {
- i64 = i64_;
- return *this;
- }
-
- PipelineExecutableStatisticValueKHR & setU64( uint64_t u64_ ) VULKAN_HPP_NOEXCEPT
- {
- u64 = u64_;
- return *this;
- }
-
- PipelineExecutableStatisticValueKHR & setF64( double f64_ ) VULKAN_HPP_NOEXCEPT
- {
- f64 = f64_;
- return *this;
- }
-
- VULKAN_HPP_NAMESPACE::PipelineExecutableStatisticValueKHR & operator=( VULKAN_HPP_NAMESPACE::PipelineExecutableStatisticValueKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void*>(this), &rhs, sizeof( VULKAN_HPP_NAMESPACE::PipelineExecutableStatisticValueKHR ) );
- return *this;
- }
-
- operator VkPipelineExecutableStatisticValueKHR const&() const
- {
- return *reinterpret_cast<const VkPipelineExecutableStatisticValueKHR*>(this);
- }
-
- operator VkPipelineExecutableStatisticValueKHR &()
- {
- return *reinterpret_cast<VkPipelineExecutableStatisticValueKHR*>(this);
- }
-
-#ifdef VULKAN_HPP_HAS_UNRESTRICTED_UNIONS
- VULKAN_HPP_NAMESPACE::Bool32 b32;
- int64_t i64;
- uint64_t u64;
- double f64;
-#else
- VkBool32 b32;
- int64_t i64;
- uint64_t u64;
- double f64;
-#endif /*VULKAN_HPP_HAS_UNRESTRICTED_UNIONS*/
- };
-
- struct PipelineExecutableStatisticKHR
+ struct StructExtends<PhysicalDeviceFragmentShadingRateEnumsPropertiesNV, PhysicalDeviceProperties2>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineExecutableStatisticKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- PipelineExecutableStatisticKHR(std::array<char,VK_MAX_DESCRIPTION_SIZE> const& name_ = {}, std::array<char,VK_MAX_DESCRIPTION_SIZE> const& description_ = {}, VULKAN_HPP_NAMESPACE::PipelineExecutableStatisticFormatKHR format_ = VULKAN_HPP_NAMESPACE::PipelineExecutableStatisticFormatKHR::eBool32, VULKAN_HPP_NAMESPACE::PipelineExecutableStatisticValueKHR value_ = {}) VULKAN_HPP_NOEXCEPT
- : name( name_ ), description( description_ ), format( format_ ), value( value_ )
- {}
-
- PipelineExecutableStatisticKHR( PipelineExecutableStatisticKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PipelineExecutableStatisticKHR( VkPipelineExecutableStatisticKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PipelineExecutableStatisticKHR & operator=( VkPipelineExecutableStatisticKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineExecutableStatisticKHR const *>( &rhs );
- return *this;
- }
-
- PipelineExecutableStatisticKHR & operator=( PipelineExecutableStatisticKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PipelineExecutableStatisticKHR ) );
- return *this;
- }
-
-
- operator VkPipelineExecutableStatisticKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPipelineExecutableStatisticKHR*>( this );
- }
-
- operator VkPipelineExecutableStatisticKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPipelineExecutableStatisticKHR*>( this );
- }
-
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineExecutableStatisticKHR;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DESCRIPTION_SIZE> name = {};
- VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DESCRIPTION_SIZE> description = {};
- VULKAN_HPP_NAMESPACE::PipelineExecutableStatisticFormatKHR format = VULKAN_HPP_NAMESPACE::PipelineExecutableStatisticFormatKHR::eBool32;
- VULKAN_HPP_NAMESPACE::PipelineExecutableStatisticValueKHR value = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PipelineExecutableStatisticKHR ) == sizeof( VkPipelineExecutableStatisticKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PipelineExecutableStatisticKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePipelineExecutableStatisticKHR>
- {
- using Type = PipelineExecutableStatisticKHR;
- };
-
- struct RefreshCycleDurationGOOGLE
+ struct StructExtends<PhysicalDeviceFragmentShadingRateFeaturesKHR, PhysicalDeviceFeatures2>
{
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR RefreshCycleDurationGOOGLE(uint64_t refreshDuration_ = {}) VULKAN_HPP_NOEXCEPT
- : refreshDuration( refreshDuration_ )
- {}
-
- VULKAN_HPP_CONSTEXPR RefreshCycleDurationGOOGLE( RefreshCycleDurationGOOGLE const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- RefreshCycleDurationGOOGLE( VkRefreshCycleDurationGOOGLE const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- RefreshCycleDurationGOOGLE & operator=( VkRefreshCycleDurationGOOGLE const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::RefreshCycleDurationGOOGLE const *>( &rhs );
- return *this;
- }
-
- RefreshCycleDurationGOOGLE & operator=( RefreshCycleDurationGOOGLE const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( RefreshCycleDurationGOOGLE ) );
- return *this;
- }
-
-
- operator VkRefreshCycleDurationGOOGLE const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkRefreshCycleDurationGOOGLE*>( this );
- }
-
- operator VkRefreshCycleDurationGOOGLE &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkRefreshCycleDurationGOOGLE*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( RefreshCycleDurationGOOGLE const& ) const = default;
-#else
- bool operator==( RefreshCycleDurationGOOGLE const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( refreshDuration == rhs.refreshDuration );
- }
-
- bool operator!=( RefreshCycleDurationGOOGLE const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- uint64_t refreshDuration = {};
-
- };
- static_assert( sizeof( RefreshCycleDurationGOOGLE ) == sizeof( VkRefreshCycleDurationGOOGLE ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<RefreshCycleDurationGOOGLE>::value, "struct wrapper is not a standard layout!" );
-
- struct SemaphoreGetFdInfoKHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSemaphoreGetFdInfoKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR SemaphoreGetFdInfoKHR(VULKAN_HPP_NAMESPACE::Semaphore semaphore_ = {}, VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits handleType_ = VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits::eOpaqueFd) VULKAN_HPP_NOEXCEPT
- : semaphore( semaphore_ ), handleType( handleType_ )
- {}
-
- VULKAN_HPP_CONSTEXPR SemaphoreGetFdInfoKHR( SemaphoreGetFdInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- SemaphoreGetFdInfoKHR( VkSemaphoreGetFdInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- SemaphoreGetFdInfoKHR & operator=( VkSemaphoreGetFdInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SemaphoreGetFdInfoKHR const *>( &rhs );
- return *this;
- }
-
- SemaphoreGetFdInfoKHR & operator=( SemaphoreGetFdInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( SemaphoreGetFdInfoKHR ) );
- return *this;
- }
-
- SemaphoreGetFdInfoKHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- SemaphoreGetFdInfoKHR & setSemaphore( VULKAN_HPP_NAMESPACE::Semaphore semaphore_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- semaphore = semaphore_;
- return *this;
- }
-
- SemaphoreGetFdInfoKHR & setHandleType( VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits handleType_ ) VULKAN_HPP_NOEXCEPT
- {
- handleType = handleType_;
- return *this;
- }
-
-
- operator VkSemaphoreGetFdInfoKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkSemaphoreGetFdInfoKHR*>( this );
- }
-
- operator VkSemaphoreGetFdInfoKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkSemaphoreGetFdInfoKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( SemaphoreGetFdInfoKHR const& ) const = default;
-#else
- bool operator==( SemaphoreGetFdInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( semaphore == rhs.semaphore )
- && ( handleType == rhs.handleType );
- }
-
- bool operator!=( SemaphoreGetFdInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSemaphoreGetFdInfoKHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::Semaphore semaphore = {};
- VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits handleType = VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits::eOpaqueFd;
-
+ value = true
+ };
};
- static_assert( sizeof( SemaphoreGetFdInfoKHR ) == sizeof( VkSemaphoreGetFdInfoKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<SemaphoreGetFdInfoKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eSemaphoreGetFdInfoKHR>
- {
- using Type = SemaphoreGetFdInfoKHR;
- };
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- struct SemaphoreGetWin32HandleInfoKHR
+ struct StructExtends<PhysicalDeviceFragmentShadingRateFeaturesKHR, DeviceCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSemaphoreGetWin32HandleInfoKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR SemaphoreGetWin32HandleInfoKHR(VULKAN_HPP_NAMESPACE::Semaphore semaphore_ = {}, VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits handleType_ = VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits::eOpaqueFd) VULKAN_HPP_NOEXCEPT
- : semaphore( semaphore_ ), handleType( handleType_ )
- {}
-
- VULKAN_HPP_CONSTEXPR SemaphoreGetWin32HandleInfoKHR( SemaphoreGetWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- SemaphoreGetWin32HandleInfoKHR( VkSemaphoreGetWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- SemaphoreGetWin32HandleInfoKHR & operator=( VkSemaphoreGetWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SemaphoreGetWin32HandleInfoKHR const *>( &rhs );
- return *this;
- }
-
- SemaphoreGetWin32HandleInfoKHR & operator=( SemaphoreGetWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( SemaphoreGetWin32HandleInfoKHR ) );
- return *this;
- }
-
- SemaphoreGetWin32HandleInfoKHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- SemaphoreGetWin32HandleInfoKHR & setSemaphore( VULKAN_HPP_NAMESPACE::Semaphore semaphore_ ) VULKAN_HPP_NOEXCEPT
- {
- semaphore = semaphore_;
- return *this;
- }
-
- SemaphoreGetWin32HandleInfoKHR & setHandleType( VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits handleType_ ) VULKAN_HPP_NOEXCEPT
- {
- handleType = handleType_;
- return *this;
- }
-
-
- operator VkSemaphoreGetWin32HandleInfoKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkSemaphoreGetWin32HandleInfoKHR*>( this );
- }
-
- operator VkSemaphoreGetWin32HandleInfoKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkSemaphoreGetWin32HandleInfoKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( SemaphoreGetWin32HandleInfoKHR const& ) const = default;
-#else
- bool operator==( SemaphoreGetWin32HandleInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( semaphore == rhs.semaphore )
- && ( handleType == rhs.handleType );
- }
-
- bool operator!=( SemaphoreGetWin32HandleInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSemaphoreGetWin32HandleInfoKHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::Semaphore semaphore = {};
- VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits handleType = VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits::eOpaqueFd;
-
+ value = true
+ };
};
- static_assert( sizeof( SemaphoreGetWin32HandleInfoKHR ) == sizeof( VkSemaphoreGetWin32HandleInfoKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<SemaphoreGetWin32HandleInfoKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eSemaphoreGetWin32HandleInfoKHR>
- {
- using Type = SemaphoreGetWin32HandleInfoKHR;
- };
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-
- struct ImportFenceFdInfoKHR
+ struct StructExtends<PhysicalDeviceFragmentShadingRatePropertiesKHR, PhysicalDeviceProperties2>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImportFenceFdInfoKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ImportFenceFdInfoKHR(VULKAN_HPP_NAMESPACE::Fence fence_ = {}, VULKAN_HPP_NAMESPACE::FenceImportFlags flags_ = {}, VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits handleType_ = VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits::eOpaqueFd, int fd_ = {}) VULKAN_HPP_NOEXCEPT
- : fence( fence_ ), flags( flags_ ), handleType( handleType_ ), fd( fd_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ImportFenceFdInfoKHR( ImportFenceFdInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ImportFenceFdInfoKHR( VkImportFenceFdInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ImportFenceFdInfoKHR & operator=( VkImportFenceFdInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImportFenceFdInfoKHR const *>( &rhs );
- return *this;
- }
-
- ImportFenceFdInfoKHR & operator=( ImportFenceFdInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ImportFenceFdInfoKHR ) );
- return *this;
- }
-
- ImportFenceFdInfoKHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- ImportFenceFdInfoKHR & setFence( VULKAN_HPP_NAMESPACE::Fence fence_ ) VULKAN_HPP_NOEXCEPT
- {
- fence = fence_;
- return *this;
- }
-
- ImportFenceFdInfoKHR & setFlags( VULKAN_HPP_NAMESPACE::FenceImportFlags flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- ImportFenceFdInfoKHR & setHandleType( VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits handleType_ ) VULKAN_HPP_NOEXCEPT
- {
- handleType = handleType_;
- return *this;
- }
-
- ImportFenceFdInfoKHR & setFd( int fd_ ) VULKAN_HPP_NOEXCEPT
- {
- fd = fd_;
- return *this;
- }
-
-
- operator VkImportFenceFdInfoKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkImportFenceFdInfoKHR*>( this );
- }
-
- operator VkImportFenceFdInfoKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkImportFenceFdInfoKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ImportFenceFdInfoKHR const& ) const = default;
-#else
- bool operator==( ImportFenceFdInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( fence == rhs.fence )
- && ( flags == rhs.flags )
- && ( handleType == rhs.handleType )
- && ( fd == rhs.fd );
- }
-
- bool operator!=( ImportFenceFdInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImportFenceFdInfoKHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::Fence fence = {};
- VULKAN_HPP_NAMESPACE::FenceImportFlags flags = {};
- VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits handleType = VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits::eOpaqueFd;
- int fd = {};
-
+ value = true
+ };
};
- static_assert( sizeof( ImportFenceFdInfoKHR ) == sizeof( VkImportFenceFdInfoKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ImportFenceFdInfoKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eImportFenceFdInfoKHR>
+ struct StructExtends<PhysicalDeviceGlobalPriorityQueryFeaturesEXT, PhysicalDeviceFeatures2>
{
- using Type = ImportFenceFdInfoKHR;
- };
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- struct ImportFenceWin32HandleInfoKHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImportFenceWin32HandleInfoKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ImportFenceWin32HandleInfoKHR(VULKAN_HPP_NAMESPACE::Fence fence_ = {}, VULKAN_HPP_NAMESPACE::FenceImportFlags flags_ = {}, VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits handleType_ = VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits::eOpaqueFd, HANDLE handle_ = {}, LPCWSTR name_ = {}) VULKAN_HPP_NOEXCEPT
- : fence( fence_ ), flags( flags_ ), handleType( handleType_ ), handle( handle_ ), name( name_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ImportFenceWin32HandleInfoKHR( ImportFenceWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ImportFenceWin32HandleInfoKHR( VkImportFenceWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ImportFenceWin32HandleInfoKHR & operator=( VkImportFenceWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImportFenceWin32HandleInfoKHR const *>( &rhs );
- return *this;
- }
-
- ImportFenceWin32HandleInfoKHR & operator=( ImportFenceWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ImportFenceWin32HandleInfoKHR ) );
- return *this;
- }
-
- ImportFenceWin32HandleInfoKHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- ImportFenceWin32HandleInfoKHR & setFence( VULKAN_HPP_NAMESPACE::Fence fence_ ) VULKAN_HPP_NOEXCEPT
- {
- fence = fence_;
- return *this;
- }
-
- ImportFenceWin32HandleInfoKHR & setFlags( VULKAN_HPP_NAMESPACE::FenceImportFlags flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- ImportFenceWin32HandleInfoKHR & setHandleType( VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits handleType_ ) VULKAN_HPP_NOEXCEPT
- {
- handleType = handleType_;
- return *this;
- }
-
- ImportFenceWin32HandleInfoKHR & setHandle( HANDLE handle_ ) VULKAN_HPP_NOEXCEPT
- {
- handle = handle_;
- return *this;
- }
-
- ImportFenceWin32HandleInfoKHR & setName( LPCWSTR name_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- name = name_;
- return *this;
- }
-
-
- operator VkImportFenceWin32HandleInfoKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkImportFenceWin32HandleInfoKHR*>( this );
- }
-
- operator VkImportFenceWin32HandleInfoKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkImportFenceWin32HandleInfoKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ImportFenceWin32HandleInfoKHR const& ) const = default;
-#else
- bool operator==( ImportFenceWin32HandleInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( fence == rhs.fence )
- && ( flags == rhs.flags )
- && ( handleType == rhs.handleType )
- && ( handle == rhs.handle )
- && ( name == rhs.name );
- }
-
- bool operator!=( ImportFenceWin32HandleInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImportFenceWin32HandleInfoKHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::Fence fence = {};
- VULKAN_HPP_NAMESPACE::FenceImportFlags flags = {};
- VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits handleType = VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits::eOpaqueFd;
- HANDLE handle = {};
- LPCWSTR name = {};
-
+ value = true
+ };
};
- static_assert( sizeof( ImportFenceWin32HandleInfoKHR ) == sizeof( VkImportFenceWin32HandleInfoKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ImportFenceWin32HandleInfoKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eImportFenceWin32HandleInfoKHR>
+ struct StructExtends<PhysicalDeviceHostQueryResetFeatures, PhysicalDeviceFeatures2>
{
- using Type = ImportFenceWin32HandleInfoKHR;
- };
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-
- struct ImportSemaphoreFdInfoKHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImportSemaphoreFdInfoKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ImportSemaphoreFdInfoKHR(VULKAN_HPP_NAMESPACE::Semaphore semaphore_ = {}, VULKAN_HPP_NAMESPACE::SemaphoreImportFlags flags_ = {}, VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits handleType_ = VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits::eOpaqueFd, int fd_ = {}) VULKAN_HPP_NOEXCEPT
- : semaphore( semaphore_ ), flags( flags_ ), handleType( handleType_ ), fd( fd_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ImportSemaphoreFdInfoKHR( ImportSemaphoreFdInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ImportSemaphoreFdInfoKHR( VkImportSemaphoreFdInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ImportSemaphoreFdInfoKHR & operator=( VkImportSemaphoreFdInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImportSemaphoreFdInfoKHR const *>( &rhs );
- return *this;
- }
-
- ImportSemaphoreFdInfoKHR & operator=( ImportSemaphoreFdInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ImportSemaphoreFdInfoKHR ) );
- return *this;
- }
-
- ImportSemaphoreFdInfoKHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- ImportSemaphoreFdInfoKHR & setSemaphore( VULKAN_HPP_NAMESPACE::Semaphore semaphore_ ) VULKAN_HPP_NOEXCEPT
- {
- semaphore = semaphore_;
- return *this;
- }
-
- ImportSemaphoreFdInfoKHR & setFlags( VULKAN_HPP_NAMESPACE::SemaphoreImportFlags flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- ImportSemaphoreFdInfoKHR & setHandleType( VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits handleType_ ) VULKAN_HPP_NOEXCEPT
- {
- handleType = handleType_;
- return *this;
- }
-
- ImportSemaphoreFdInfoKHR & setFd( int fd_ ) VULKAN_HPP_NOEXCEPT
- {
- fd = fd_;
- return *this;
- }
-
-
- operator VkImportSemaphoreFdInfoKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkImportSemaphoreFdInfoKHR*>( this );
- }
-
- operator VkImportSemaphoreFdInfoKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkImportSemaphoreFdInfoKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ImportSemaphoreFdInfoKHR const& ) const = default;
-#else
- bool operator==( ImportSemaphoreFdInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( semaphore == rhs.semaphore )
- && ( flags == rhs.flags )
- && ( handleType == rhs.handleType )
- && ( fd == rhs.fd );
- }
-
- bool operator!=( ImportSemaphoreFdInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImportSemaphoreFdInfoKHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::Semaphore semaphore = {};
- VULKAN_HPP_NAMESPACE::SemaphoreImportFlags flags = {};
- VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits handleType = VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits::eOpaqueFd;
- int fd = {};
-
+ value = true
+ };
};
- static_assert( sizeof( ImportSemaphoreFdInfoKHR ) == sizeof( VkImportSemaphoreFdInfoKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ImportSemaphoreFdInfoKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eImportSemaphoreFdInfoKHR>
+ struct StructExtends<PhysicalDeviceHostQueryResetFeatures, DeviceCreateInfo>
{
- using Type = ImportSemaphoreFdInfoKHR;
- };
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- struct ImportSemaphoreWin32HandleInfoKHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImportSemaphoreWin32HandleInfoKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ImportSemaphoreWin32HandleInfoKHR(VULKAN_HPP_NAMESPACE::Semaphore semaphore_ = {}, VULKAN_HPP_NAMESPACE::SemaphoreImportFlags flags_ = {}, VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits handleType_ = VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits::eOpaqueFd, HANDLE handle_ = {}, LPCWSTR name_ = {}) VULKAN_HPP_NOEXCEPT
- : semaphore( semaphore_ ), flags( flags_ ), handleType( handleType_ ), handle( handle_ ), name( name_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ImportSemaphoreWin32HandleInfoKHR( ImportSemaphoreWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ImportSemaphoreWin32HandleInfoKHR( VkImportSemaphoreWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ImportSemaphoreWin32HandleInfoKHR & operator=( VkImportSemaphoreWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImportSemaphoreWin32HandleInfoKHR const *>( &rhs );
- return *this;
- }
-
- ImportSemaphoreWin32HandleInfoKHR & operator=( ImportSemaphoreWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ImportSemaphoreWin32HandleInfoKHR ) );
- return *this;
- }
-
- ImportSemaphoreWin32HandleInfoKHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- ImportSemaphoreWin32HandleInfoKHR & setSemaphore( VULKAN_HPP_NAMESPACE::Semaphore semaphore_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- semaphore = semaphore_;
- return *this;
- }
-
- ImportSemaphoreWin32HandleInfoKHR & setFlags( VULKAN_HPP_NAMESPACE::SemaphoreImportFlags flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- ImportSemaphoreWin32HandleInfoKHR & setHandleType( VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits handleType_ ) VULKAN_HPP_NOEXCEPT
- {
- handleType = handleType_;
- return *this;
- }
-
- ImportSemaphoreWin32HandleInfoKHR & setHandle( HANDLE handle_ ) VULKAN_HPP_NOEXCEPT
- {
- handle = handle_;
- return *this;
- }
-
- ImportSemaphoreWin32HandleInfoKHR & setName( LPCWSTR name_ ) VULKAN_HPP_NOEXCEPT
- {
- name = name_;
- return *this;
- }
-
-
- operator VkImportSemaphoreWin32HandleInfoKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkImportSemaphoreWin32HandleInfoKHR*>( this );
- }
-
- operator VkImportSemaphoreWin32HandleInfoKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkImportSemaphoreWin32HandleInfoKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ImportSemaphoreWin32HandleInfoKHR const& ) const = default;
-#else
- bool operator==( ImportSemaphoreWin32HandleInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( semaphore == rhs.semaphore )
- && ( flags == rhs.flags )
- && ( handleType == rhs.handleType )
- && ( handle == rhs.handle )
- && ( name == rhs.name );
- }
-
- bool operator!=( ImportSemaphoreWin32HandleInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImportSemaphoreWin32HandleInfoKHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::Semaphore semaphore = {};
- VULKAN_HPP_NAMESPACE::SemaphoreImportFlags flags = {};
- VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits handleType = VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits::eOpaqueFd;
- HANDLE handle = {};
- LPCWSTR name = {};
-
+ value = true
+ };
};
- static_assert( sizeof( ImportSemaphoreWin32HandleInfoKHR ) == sizeof( VkImportSemaphoreWin32HandleInfoKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ImportSemaphoreWin32HandleInfoKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eImportSemaphoreWin32HandleInfoKHR>
- {
- using Type = ImportSemaphoreWin32HandleInfoKHR;
- };
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-
- struct InitializePerformanceApiInfoINTEL
+ struct StructExtends<PhysicalDeviceIDProperties, PhysicalDeviceProperties2>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eInitializePerformanceApiInfoINTEL;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR InitializePerformanceApiInfoINTEL(void* pUserData_ = {}) VULKAN_HPP_NOEXCEPT
- : pUserData( pUserData_ )
- {}
-
- VULKAN_HPP_CONSTEXPR InitializePerformanceApiInfoINTEL( InitializePerformanceApiInfoINTEL const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- InitializePerformanceApiInfoINTEL( VkInitializePerformanceApiInfoINTEL const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- InitializePerformanceApiInfoINTEL & operator=( VkInitializePerformanceApiInfoINTEL const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::InitializePerformanceApiInfoINTEL const *>( &rhs );
- return *this;
- }
-
- InitializePerformanceApiInfoINTEL & operator=( InitializePerformanceApiInfoINTEL const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( InitializePerformanceApiInfoINTEL ) );
- return *this;
- }
-
- InitializePerformanceApiInfoINTEL & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- pNext = pNext_;
- return *this;
- }
-
- InitializePerformanceApiInfoINTEL & setPUserData( void* pUserData_ ) VULKAN_HPP_NOEXCEPT
- {
- pUserData = pUserData_;
- return *this;
- }
-
-
- operator VkInitializePerformanceApiInfoINTEL const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkInitializePerformanceApiInfoINTEL*>( this );
- }
-
- operator VkInitializePerformanceApiInfoINTEL &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkInitializePerformanceApiInfoINTEL*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( InitializePerformanceApiInfoINTEL const& ) const = default;
-#else
- bool operator==( InitializePerformanceApiInfoINTEL const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( pUserData == rhs.pUserData );
- }
-
- bool operator!=( InitializePerformanceApiInfoINTEL const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eInitializePerformanceApiInfoINTEL;
- const void* pNext = {};
- void* pUserData = {};
-
+ value = true
+ };
};
- static_assert( sizeof( InitializePerformanceApiInfoINTEL ) == sizeof( VkInitializePerformanceApiInfoINTEL ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<InitializePerformanceApiInfoINTEL>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eInitializePerformanceApiInfoINTEL>
- {
- using Type = InitializePerformanceApiInfoINTEL;
- };
-
- struct DisplayEventInfoEXT
+ struct StructExtends<PhysicalDeviceImageDrmFormatModifierInfoEXT, PhysicalDeviceImageFormatInfo2>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDisplayEventInfoEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DisplayEventInfoEXT(VULKAN_HPP_NAMESPACE::DisplayEventTypeEXT displayEvent_ = VULKAN_HPP_NAMESPACE::DisplayEventTypeEXT::eFirstPixelOut) VULKAN_HPP_NOEXCEPT
- : displayEvent( displayEvent_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DisplayEventInfoEXT( DisplayEventInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DisplayEventInfoEXT( VkDisplayEventInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DisplayEventInfoEXT & operator=( VkDisplayEventInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DisplayEventInfoEXT const *>( &rhs );
- return *this;
- }
-
- DisplayEventInfoEXT & operator=( DisplayEventInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DisplayEventInfoEXT ) );
- return *this;
- }
-
- DisplayEventInfoEXT & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- DisplayEventInfoEXT & setDisplayEvent( VULKAN_HPP_NAMESPACE::DisplayEventTypeEXT displayEvent_ ) VULKAN_HPP_NOEXCEPT
- {
- displayEvent = displayEvent_;
- return *this;
- }
-
-
- operator VkDisplayEventInfoEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDisplayEventInfoEXT*>( this );
- }
-
- operator VkDisplayEventInfoEXT &() VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<VkDisplayEventInfoEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DisplayEventInfoEXT const& ) const = default;
-#else
- bool operator==( DisplayEventInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( displayEvent == rhs.displayEvent );
- }
-
- bool operator!=( DisplayEventInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDisplayEventInfoEXT;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::DisplayEventTypeEXT displayEvent = VULKAN_HPP_NAMESPACE::DisplayEventTypeEXT::eFirstPixelOut;
-
+ value = true
+ };
};
- static_assert( sizeof( DisplayEventInfoEXT ) == sizeof( VkDisplayEventInfoEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DisplayEventInfoEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eDisplayEventInfoEXT>
+ struct StructExtends<PhysicalDeviceImageRobustnessFeaturesEXT, PhysicalDeviceFeatures2>
{
- using Type = DisplayEventInfoEXT;
- };
-
- struct XYColorEXT
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR XYColorEXT(float x_ = {}, float y_ = {}) VULKAN_HPP_NOEXCEPT
- : x( x_ ), y( y_ )
- {}
-
- VULKAN_HPP_CONSTEXPR XYColorEXT( XYColorEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- XYColorEXT( VkXYColorEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- XYColorEXT & operator=( VkXYColorEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::XYColorEXT const *>( &rhs );
- return *this;
- }
-
- XYColorEXT & operator=( XYColorEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( XYColorEXT ) );
- return *this;
- }
-
- XYColorEXT & setX( float x_ ) VULKAN_HPP_NOEXCEPT
- {
- x = x_;
- return *this;
- }
-
- XYColorEXT & setY( float y_ ) VULKAN_HPP_NOEXCEPT
- {
- y = y_;
- return *this;
- }
-
-
- operator VkXYColorEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkXYColorEXT*>( this );
- }
-
- operator VkXYColorEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkXYColorEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( XYColorEXT const& ) const = default;
-#else
- bool operator==( XYColorEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( x == rhs.x )
- && ( y == rhs.y );
- }
-
- bool operator!=( XYColorEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- float x = {};
- float y = {};
-
- };
- static_assert( sizeof( XYColorEXT ) == sizeof( VkXYColorEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<XYColorEXT>::value, "struct wrapper is not a standard layout!" );
-
- struct HdrMetadataEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eHdrMetadataEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR HdrMetadataEXT(VULKAN_HPP_NAMESPACE::XYColorEXT displayPrimaryRed_ = {}, VULKAN_HPP_NAMESPACE::XYColorEXT displayPrimaryGreen_ = {}, VULKAN_HPP_NAMESPACE::XYColorEXT displayPrimaryBlue_ = {}, VULKAN_HPP_NAMESPACE::XYColorEXT whitePoint_ = {}, float maxLuminance_ = {}, float minLuminance_ = {}, float maxContentLightLevel_ = {}, float maxFrameAverageLightLevel_ = {}) VULKAN_HPP_NOEXCEPT
- : displayPrimaryRed( displayPrimaryRed_ ), displayPrimaryGreen( displayPrimaryGreen_ ), displayPrimaryBlue( displayPrimaryBlue_ ), whitePoint( whitePoint_ ), maxLuminance( maxLuminance_ ), minLuminance( minLuminance_ ), maxContentLightLevel( maxContentLightLevel_ ), maxFrameAverageLightLevel( maxFrameAverageLightLevel_ )
- {}
-
- VULKAN_HPP_CONSTEXPR HdrMetadataEXT( HdrMetadataEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- HdrMetadataEXT( VkHdrMetadataEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- HdrMetadataEXT & operator=( VkHdrMetadataEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::HdrMetadataEXT const *>( &rhs );
- return *this;
- }
-
- HdrMetadataEXT & operator=( HdrMetadataEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( HdrMetadataEXT ) );
- return *this;
- }
-
- HdrMetadataEXT & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- HdrMetadataEXT & setDisplayPrimaryRed( VULKAN_HPP_NAMESPACE::XYColorEXT const & displayPrimaryRed_ ) VULKAN_HPP_NOEXCEPT
- {
- displayPrimaryRed = displayPrimaryRed_;
- return *this;
- }
-
- HdrMetadataEXT & setDisplayPrimaryGreen( VULKAN_HPP_NAMESPACE::XYColorEXT const & displayPrimaryGreen_ ) VULKAN_HPP_NOEXCEPT
- {
- displayPrimaryGreen = displayPrimaryGreen_;
- return *this;
- }
-
- HdrMetadataEXT & setDisplayPrimaryBlue( VULKAN_HPP_NAMESPACE::XYColorEXT const & displayPrimaryBlue_ ) VULKAN_HPP_NOEXCEPT
- {
- displayPrimaryBlue = displayPrimaryBlue_;
- return *this;
- }
-
- HdrMetadataEXT & setWhitePoint( VULKAN_HPP_NAMESPACE::XYColorEXT const & whitePoint_ ) VULKAN_HPP_NOEXCEPT
- {
- whitePoint = whitePoint_;
- return *this;
- }
-
- HdrMetadataEXT & setMaxLuminance( float maxLuminance_ ) VULKAN_HPP_NOEXCEPT
- {
- maxLuminance = maxLuminance_;
- return *this;
- }
-
- HdrMetadataEXT & setMinLuminance( float minLuminance_ ) VULKAN_HPP_NOEXCEPT
- {
- minLuminance = minLuminance_;
- return *this;
- }
-
- HdrMetadataEXT & setMaxContentLightLevel( float maxContentLightLevel_ ) VULKAN_HPP_NOEXCEPT
- {
- maxContentLightLevel = maxContentLightLevel_;
- return *this;
- }
-
- HdrMetadataEXT & setMaxFrameAverageLightLevel( float maxFrameAverageLightLevel_ ) VULKAN_HPP_NOEXCEPT
- {
- maxFrameAverageLightLevel = maxFrameAverageLightLevel_;
- return *this;
- }
-
-
- operator VkHdrMetadataEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkHdrMetadataEXT*>( this );
- }
-
- operator VkHdrMetadataEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkHdrMetadataEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( HdrMetadataEXT const& ) const = default;
-#else
- bool operator==( HdrMetadataEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( displayPrimaryRed == rhs.displayPrimaryRed )
- && ( displayPrimaryGreen == rhs.displayPrimaryGreen )
- && ( displayPrimaryBlue == rhs.displayPrimaryBlue )
- && ( whitePoint == rhs.whitePoint )
- && ( maxLuminance == rhs.maxLuminance )
- && ( minLuminance == rhs.minLuminance )
- && ( maxContentLightLevel == rhs.maxContentLightLevel )
- && ( maxFrameAverageLightLevel == rhs.maxFrameAverageLightLevel );
- }
-
- bool operator!=( HdrMetadataEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eHdrMetadataEXT;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::XYColorEXT displayPrimaryRed = {};
- VULKAN_HPP_NAMESPACE::XYColorEXT displayPrimaryGreen = {};
- VULKAN_HPP_NAMESPACE::XYColorEXT displayPrimaryBlue = {};
- VULKAN_HPP_NAMESPACE::XYColorEXT whitePoint = {};
- float maxLuminance = {};
- float minLuminance = {};
- float maxContentLightLevel = {};
- float maxFrameAverageLightLevel = {};
-
+ value = true
+ };
};
- static_assert( sizeof( HdrMetadataEXT ) == sizeof( VkHdrMetadataEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<HdrMetadataEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eHdrMetadataEXT>
+ struct StructExtends<PhysicalDeviceImageRobustnessFeaturesEXT, DeviceCreateInfo>
{
- using Type = HdrMetadataEXT;
- };
-
- struct SemaphoreSignalInfo
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSemaphoreSignalInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR SemaphoreSignalInfo(VULKAN_HPP_NAMESPACE::Semaphore semaphore_ = {}, uint64_t value_ = {}) VULKAN_HPP_NOEXCEPT
- : semaphore( semaphore_ ), value( value_ )
- {}
-
- VULKAN_HPP_CONSTEXPR SemaphoreSignalInfo( SemaphoreSignalInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- SemaphoreSignalInfo( VkSemaphoreSignalInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- SemaphoreSignalInfo & operator=( VkSemaphoreSignalInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SemaphoreSignalInfo const *>( &rhs );
- return *this;
- }
-
- SemaphoreSignalInfo & operator=( SemaphoreSignalInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( SemaphoreSignalInfo ) );
- return *this;
- }
-
- SemaphoreSignalInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- pNext = pNext_;
- return *this;
- }
-
- SemaphoreSignalInfo & setSemaphore( VULKAN_HPP_NAMESPACE::Semaphore semaphore_ ) VULKAN_HPP_NOEXCEPT
- {
- semaphore = semaphore_;
- return *this;
- }
-
- SemaphoreSignalInfo & setValue( uint64_t value_ ) VULKAN_HPP_NOEXCEPT
- {
- value = value_;
- return *this;
- }
-
-
- operator VkSemaphoreSignalInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkSemaphoreSignalInfo*>( this );
- }
-
- operator VkSemaphoreSignalInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkSemaphoreSignalInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( SemaphoreSignalInfo const& ) const = default;
-#else
- bool operator==( SemaphoreSignalInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( semaphore == rhs.semaphore )
- && ( value == rhs.value );
- }
-
- bool operator!=( SemaphoreSignalInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSemaphoreSignalInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::Semaphore semaphore = {};
- uint64_t value = {};
-
+ value = true
+ };
};
- static_assert( sizeof( SemaphoreSignalInfo ) == sizeof( VkSemaphoreSignalInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<SemaphoreSignalInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eSemaphoreSignalInfo>
+ struct StructExtends<PhysicalDeviceImageViewImageFormatInfoEXT, PhysicalDeviceImageFormatInfo2>
{
- using Type = SemaphoreSignalInfo;
- };
- using SemaphoreSignalInfoKHR = SemaphoreSignalInfo;
-
- struct SemaphoreWaitInfo
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSemaphoreWaitInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR SemaphoreWaitInfo(VULKAN_HPP_NAMESPACE::SemaphoreWaitFlags flags_ = {}, uint32_t semaphoreCount_ = {}, const VULKAN_HPP_NAMESPACE::Semaphore* pSemaphores_ = {}, const uint64_t* pValues_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), semaphoreCount( semaphoreCount_ ), pSemaphores( pSemaphores_ ), pValues( pValues_ )
- {}
-
- VULKAN_HPP_CONSTEXPR SemaphoreWaitInfo( SemaphoreWaitInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- SemaphoreWaitInfo( VkSemaphoreWaitInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- SemaphoreWaitInfo( VULKAN_HPP_NAMESPACE::SemaphoreWaitFlags flags_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Semaphore> const & semaphores_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const & values_ = {} )
- : flags( flags_ ), semaphoreCount( static_cast<uint32_t>( semaphores_.size() ) ), pSemaphores( semaphores_.data() ), pValues( values_.data() )
- {
-#ifdef VULKAN_HPP_NO_EXCEPTIONS
- VULKAN_HPP_ASSERT( semaphores_.size() == values_.size() );
-#else
- if ( semaphores_.size() != values_.size() )
- {
- throw LogicError( VULKAN_HPP_NAMESPACE_STRING "::SemaphoreWaitInfo::SemaphoreWaitInfo: semaphores_.size() != values_.size()" );
- }
-#endif /*VULKAN_HPP_NO_EXCEPTIONS*/
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- SemaphoreWaitInfo & operator=( VkSemaphoreWaitInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SemaphoreWaitInfo const *>( &rhs );
- return *this;
- }
-
- SemaphoreWaitInfo & operator=( SemaphoreWaitInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( SemaphoreWaitInfo ) );
- return *this;
- }
-
- SemaphoreWaitInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- SemaphoreWaitInfo & setFlags( VULKAN_HPP_NAMESPACE::SemaphoreWaitFlags flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- SemaphoreWaitInfo & setSemaphoreCount( uint32_t semaphoreCount_ ) VULKAN_HPP_NOEXCEPT
- {
- semaphoreCount = semaphoreCount_;
- return *this;
- }
-
- SemaphoreWaitInfo & setPSemaphores( const VULKAN_HPP_NAMESPACE::Semaphore* pSemaphores_ ) VULKAN_HPP_NOEXCEPT
- {
- pSemaphores = pSemaphores_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- SemaphoreWaitInfo & setSemaphores( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Semaphore> const & semaphores_ ) VULKAN_HPP_NOEXCEPT
- {
- semaphoreCount = static_cast<uint32_t>( semaphores_.size() );
- pSemaphores = semaphores_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- SemaphoreWaitInfo & setPValues( const uint64_t* pValues_ ) VULKAN_HPP_NOEXCEPT
- {
- pValues = pValues_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- SemaphoreWaitInfo & setValues( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const & values_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- semaphoreCount = static_cast<uint32_t>( values_.size() );
- pValues = values_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkSemaphoreWaitInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkSemaphoreWaitInfo*>( this );
- }
-
- operator VkSemaphoreWaitInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkSemaphoreWaitInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( SemaphoreWaitInfo const& ) const = default;
-#else
- bool operator==( SemaphoreWaitInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( semaphoreCount == rhs.semaphoreCount )
- && ( pSemaphores == rhs.pSemaphores )
- && ( pValues == rhs.pValues );
- }
-
- bool operator!=( SemaphoreWaitInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSemaphoreWaitInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::SemaphoreWaitFlags flags = {};
- uint32_t semaphoreCount = {};
- const VULKAN_HPP_NAMESPACE::Semaphore* pSemaphores = {};
- const uint64_t* pValues = {};
-
+ value = true
+ };
};
- static_assert( sizeof( SemaphoreWaitInfo ) == sizeof( VkSemaphoreWaitInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<SemaphoreWaitInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eSemaphoreWaitInfo>
+ struct StructExtends<PhysicalDeviceImagelessFramebufferFeatures, PhysicalDeviceFeatures2>
{
- using Type = SemaphoreWaitInfo;
- };
- using SemaphoreWaitInfoKHR = SemaphoreWaitInfo;
-
-#ifndef VULKAN_HPP_NO_SMART_HANDLE
- class Device;
- template <typename Dispatch> class UniqueHandleTraits<AccelerationStructureKHR, Dispatch> { public: using deleter = ObjectDestroy<Device, Dispatch>; };
- using UniqueAccelerationStructureKHR = UniqueHandle<AccelerationStructureKHR, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
- template <typename Dispatch> class UniqueHandleTraits<AccelerationStructureNV, Dispatch> { public: using deleter = ObjectDestroy<Device, Dispatch>; };
- using UniqueAccelerationStructureNV = UniqueHandle<AccelerationStructureNV, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
- template <typename Dispatch> class UniqueHandleTraits<Buffer, Dispatch> { public: using deleter = ObjectDestroy<Device, Dispatch>; };
- using UniqueBuffer = UniqueHandle<Buffer, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
- template <typename Dispatch> class UniqueHandleTraits<BufferView, Dispatch> { public: using deleter = ObjectDestroy<Device, Dispatch>; };
- using UniqueBufferView = UniqueHandle<BufferView, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
- template <typename Dispatch> class UniqueHandleTraits<CommandBuffer, Dispatch> { public: using deleter = PoolFree<Device, CommandPool, Dispatch>; };
- using UniqueCommandBuffer = UniqueHandle<CommandBuffer, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
- template <typename Dispatch> class UniqueHandleTraits<CommandPool, Dispatch> { public: using deleter = ObjectDestroy<Device, Dispatch>; };
- using UniqueCommandPool = UniqueHandle<CommandPool, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
- template <typename Dispatch> class UniqueHandleTraits<DeferredOperationKHR, Dispatch> { public: using deleter = ObjectDestroy<Device, Dispatch>; };
- using UniqueDeferredOperationKHR = UniqueHandle<DeferredOperationKHR, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
- template <typename Dispatch> class UniqueHandleTraits<DescriptorPool, Dispatch> { public: using deleter = ObjectDestroy<Device, Dispatch>; };
- using UniqueDescriptorPool = UniqueHandle<DescriptorPool, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
- template <typename Dispatch> class UniqueHandleTraits<DescriptorSet, Dispatch> { public: using deleter = PoolFree<Device, DescriptorPool, Dispatch>; };
- using UniqueDescriptorSet = UniqueHandle<DescriptorSet, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
- template <typename Dispatch> class UniqueHandleTraits<DescriptorSetLayout, Dispatch> { public: using deleter = ObjectDestroy<Device, Dispatch>; };
- using UniqueDescriptorSetLayout = UniqueHandle<DescriptorSetLayout, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
- template <typename Dispatch> class UniqueHandleTraits<DescriptorUpdateTemplate, Dispatch> { public: using deleter = ObjectDestroy<Device, Dispatch>; };
- using UniqueDescriptorUpdateTemplate = UniqueHandle<DescriptorUpdateTemplate, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
- using UniqueDescriptorUpdateTemplateKHR = UniqueHandle<DescriptorUpdateTemplate, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
- template <typename Dispatch> class UniqueHandleTraits<DeviceMemory, Dispatch> { public: using deleter = ObjectFree<Device, Dispatch>; };
- using UniqueDeviceMemory = UniqueHandle<DeviceMemory, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
- template <typename Dispatch> class UniqueHandleTraits<Event, Dispatch> { public: using deleter = ObjectDestroy<Device, Dispatch>; };
- using UniqueEvent = UniqueHandle<Event, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
- template <typename Dispatch> class UniqueHandleTraits<Fence, Dispatch> { public: using deleter = ObjectDestroy<Device, Dispatch>; };
- using UniqueFence = UniqueHandle<Fence, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
- template <typename Dispatch> class UniqueHandleTraits<Framebuffer, Dispatch> { public: using deleter = ObjectDestroy<Device, Dispatch>; };
- using UniqueFramebuffer = UniqueHandle<Framebuffer, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
- template <typename Dispatch> class UniqueHandleTraits<Image, Dispatch> { public: using deleter = ObjectDestroy<Device, Dispatch>; };
- using UniqueImage = UniqueHandle<Image, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
- template <typename Dispatch> class UniqueHandleTraits<ImageView, Dispatch> { public: using deleter = ObjectDestroy<Device, Dispatch>; };
- using UniqueImageView = UniqueHandle<ImageView, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
- template <typename Dispatch> class UniqueHandleTraits<IndirectCommandsLayoutNV, Dispatch> { public: using deleter = ObjectDestroy<Device, Dispatch>; };
- using UniqueIndirectCommandsLayoutNV = UniqueHandle<IndirectCommandsLayoutNV, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
- template <typename Dispatch> class UniqueHandleTraits<Pipeline, Dispatch> { public: using deleter = ObjectDestroy<Device, Dispatch>; };
- using UniquePipeline = UniqueHandle<Pipeline, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
- template <typename Dispatch> class UniqueHandleTraits<PipelineCache, Dispatch> { public: using deleter = ObjectDestroy<Device, Dispatch>; };
- using UniquePipelineCache = UniqueHandle<PipelineCache, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
- template <typename Dispatch> class UniqueHandleTraits<PipelineLayout, Dispatch> { public: using deleter = ObjectDestroy<Device, Dispatch>; };
- using UniquePipelineLayout = UniqueHandle<PipelineLayout, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
- template <typename Dispatch> class UniqueHandleTraits<PrivateDataSlotEXT, Dispatch> { public: using deleter = ObjectDestroy<Device, Dispatch>; };
- using UniquePrivateDataSlotEXT = UniqueHandle<PrivateDataSlotEXT, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
- template <typename Dispatch> class UniqueHandleTraits<QueryPool, Dispatch> { public: using deleter = ObjectDestroy<Device, Dispatch>; };
- using UniqueQueryPool = UniqueHandle<QueryPool, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
- template <typename Dispatch> class UniqueHandleTraits<RenderPass, Dispatch> { public: using deleter = ObjectDestroy<Device, Dispatch>; };
- using UniqueRenderPass = UniqueHandle<RenderPass, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
- template <typename Dispatch> class UniqueHandleTraits<Sampler, Dispatch> { public: using deleter = ObjectDestroy<Device, Dispatch>; };
- using UniqueSampler = UniqueHandle<Sampler, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
- template <typename Dispatch> class UniqueHandleTraits<SamplerYcbcrConversion, Dispatch> { public: using deleter = ObjectDestroy<Device, Dispatch>; };
- using UniqueSamplerYcbcrConversion = UniqueHandle<SamplerYcbcrConversion, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
- using UniqueSamplerYcbcrConversionKHR = UniqueHandle<SamplerYcbcrConversion, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
- template <typename Dispatch> class UniqueHandleTraits<Semaphore, Dispatch> { public: using deleter = ObjectDestroy<Device, Dispatch>; };
- using UniqueSemaphore = UniqueHandle<Semaphore, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
- template <typename Dispatch> class UniqueHandleTraits<ShaderModule, Dispatch> { public: using deleter = ObjectDestroy<Device, Dispatch>; };
- using UniqueShaderModule = UniqueHandle<ShaderModule, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
- template <typename Dispatch> class UniqueHandleTraits<SwapchainKHR, Dispatch> { public: using deleter = ObjectDestroy<Device, Dispatch>; };
- using UniqueSwapchainKHR = UniqueHandle<SwapchainKHR, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
- template <typename Dispatch> class UniqueHandleTraits<ValidationCacheEXT, Dispatch> { public: using deleter = ObjectDestroy<Device, Dispatch>; };
- using UniqueValidationCacheEXT = UniqueHandle<ValidationCacheEXT, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
-#endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-
- class Device
- {
- public:
- using CType = VkDevice;
-
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::eDevice;
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType = VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eDevice;
-
- public:
- VULKAN_HPP_CONSTEXPR Device() VULKAN_HPP_NOEXCEPT
- : m_device(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_CONSTEXPR Device( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- : m_device(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_TYPESAFE_EXPLICIT Device( VkDevice device ) VULKAN_HPP_NOEXCEPT
- : m_device( device )
- {}
-
-#if defined(VULKAN_HPP_TYPESAFE_CONVERSION)
- Device & operator=(VkDevice device) VULKAN_HPP_NOEXCEPT
- {
- m_device = device;
- return *this;
- }
-#endif
-
- Device & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- {
- m_device = VK_NULL_HANDLE;
- return *this;
- }
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( Device const& ) const = default;
-#else
- bool operator==( Device const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_device == rhs.m_device;
- }
-
- bool operator!=(Device const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_device != rhs.m_device;
- }
-
- bool operator<(Device const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_device < rhs.m_device;
- }
-#endif
-
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
-#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result acquireFullScreenExclusiveModeEXT( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#else
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type acquireFullScreenExclusiveModeEXT( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result acquireNextImage2KHR( const VULKAN_HPP_NAMESPACE::AcquireNextImageInfoKHR* pAcquireInfo, uint32_t* pImageIndex, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD ResultValue<uint32_t> acquireNextImage2KHR( const AcquireNextImageInfoKHR & acquireInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result acquireNextImageKHR( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain, uint64_t timeout, VULKAN_HPP_NAMESPACE::Semaphore semaphore, VULKAN_HPP_NAMESPACE::Fence fence, uint32_t* pImageIndex, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD ResultValue<uint32_t> acquireNextImageKHR( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain, uint64_t timeout, VULKAN_HPP_NAMESPACE::Semaphore semaphore VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT, VULKAN_HPP_NAMESPACE::Fence fence VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result acquirePerformanceConfigurationINTEL( const VULKAN_HPP_NAMESPACE::PerformanceConfigurationAcquireInfoINTEL* pAcquireInfo, VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL* pConfiguration, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL>::type acquirePerformanceConfigurationINTEL( const PerformanceConfigurationAcquireInfoINTEL & acquireInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL, Dispatch>>::type acquirePerformanceConfigurationINTELUnique( const PerformanceConfigurationAcquireInfoINTEL & acquireInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result acquireProfilingLockKHR( const VULKAN_HPP_NAMESPACE::AcquireProfilingLockInfoKHR* pInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type acquireProfilingLockKHR( const AcquireProfilingLockInfoKHR & info, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result allocateCommandBuffers( const VULKAN_HPP_NAMESPACE::CommandBufferAllocateInfo* pAllocateInfo, VULKAN_HPP_NAMESPACE::CommandBuffer* pCommandBuffers, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename CommandBufferAllocator = std::allocator<CommandBuffer>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<std::vector<CommandBuffer, CommandBufferAllocator>>::type allocateCommandBuffers( const CommandBufferAllocateInfo & allocateInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename CommandBufferAllocator = std::allocator<CommandBuffer>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename B = CommandBufferAllocator, typename std::enable_if<std::is_same<typename B::value_type, CommandBuffer>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<std::vector<CommandBuffer, CommandBufferAllocator>>::type allocateCommandBuffers( const CommandBufferAllocateInfo & allocateInfo, CommandBufferAllocator & commandBufferAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename CommandBufferAllocator = std::allocator<UniqueHandle<CommandBuffer, Dispatch>>>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<std::vector<UniqueHandle<CommandBuffer, Dispatch>, CommandBufferAllocator>>::type allocateCommandBuffersUnique( const CommandBufferAllocateInfo & allocateInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename CommandBufferAllocator = std::allocator<UniqueHandle<CommandBuffer, Dispatch>>, typename B = CommandBufferAllocator, typename std::enable_if<std::is_same<typename B::value_type, UniqueHandle<CommandBuffer, Dispatch>>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<std::vector<UniqueHandle<CommandBuffer, Dispatch>, CommandBufferAllocator>>::type allocateCommandBuffersUnique( const CommandBufferAllocateInfo & allocateInfo, CommandBufferAllocator & commandBufferAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result allocateDescriptorSets( const VULKAN_HPP_NAMESPACE::DescriptorSetAllocateInfo* pAllocateInfo, VULKAN_HPP_NAMESPACE::DescriptorSet* pDescriptorSets, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename DescriptorSetAllocator = std::allocator<DescriptorSet>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<std::vector<DescriptorSet, DescriptorSetAllocator>>::type allocateDescriptorSets( const DescriptorSetAllocateInfo & allocateInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename DescriptorSetAllocator = std::allocator<DescriptorSet>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename B = DescriptorSetAllocator, typename std::enable_if<std::is_same<typename B::value_type, DescriptorSet>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<std::vector<DescriptorSet, DescriptorSetAllocator>>::type allocateDescriptorSets( const DescriptorSetAllocateInfo & allocateInfo, DescriptorSetAllocator & descriptorSetAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename DescriptorSetAllocator = std::allocator<UniqueHandle<DescriptorSet, Dispatch>>>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<std::vector<UniqueHandle<DescriptorSet, Dispatch>, DescriptorSetAllocator>>::type allocateDescriptorSetsUnique( const DescriptorSetAllocateInfo & allocateInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename DescriptorSetAllocator = std::allocator<UniqueHandle<DescriptorSet, Dispatch>>, typename B = DescriptorSetAllocator, typename std::enable_if<std::is_same<typename B::value_type, UniqueHandle<DescriptorSet, Dispatch>>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<std::vector<UniqueHandle<DescriptorSet, Dispatch>, DescriptorSetAllocator>>::type allocateDescriptorSetsUnique( const DescriptorSetAllocateInfo & allocateInfo, DescriptorSetAllocator & descriptorSetAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result allocateMemory( const VULKAN_HPP_NAMESPACE::MemoryAllocateInfo* pAllocateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::DeviceMemory* pMemory, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::DeviceMemory>::type allocateMemory( const MemoryAllocateInfo & allocateInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::DeviceMemory, Dispatch>>::type allocateMemoryUnique( const MemoryAllocateInfo & allocateInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result bindAccelerationStructureMemoryNV( uint32_t bindInfoCount, const VULKAN_HPP_NAMESPACE::BindAccelerationStructureMemoryInfoNV* pBindInfos, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type bindAccelerationStructureMemoryNV( ArrayProxy<const VULKAN_HPP_NAMESPACE::BindAccelerationStructureMemoryInfoNV> const & bindInfos, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result bindBufferMemory( VULKAN_HPP_NAMESPACE::Buffer buffer, VULKAN_HPP_NAMESPACE::DeviceMemory memory, VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#else
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type bindBufferMemory( VULKAN_HPP_NAMESPACE::Buffer buffer, VULKAN_HPP_NAMESPACE::DeviceMemory memory, VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result bindBufferMemory2( uint32_t bindInfoCount, const VULKAN_HPP_NAMESPACE::BindBufferMemoryInfo* pBindInfos, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type bindBufferMemory2( ArrayProxy<const VULKAN_HPP_NAMESPACE::BindBufferMemoryInfo> const & bindInfos, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result bindBufferMemory2KHR( uint32_t bindInfoCount, const VULKAN_HPP_NAMESPACE::BindBufferMemoryInfo* pBindInfos, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type bindBufferMemory2KHR( ArrayProxy<const VULKAN_HPP_NAMESPACE::BindBufferMemoryInfo> const & bindInfos, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result bindImageMemory( VULKAN_HPP_NAMESPACE::Image image, VULKAN_HPP_NAMESPACE::DeviceMemory memory, VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#else
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type bindImageMemory( VULKAN_HPP_NAMESPACE::Image image, VULKAN_HPP_NAMESPACE::DeviceMemory memory, VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result bindImageMemory2( uint32_t bindInfoCount, const VULKAN_HPP_NAMESPACE::BindImageMemoryInfo* pBindInfos, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type bindImageMemory2( ArrayProxy<const VULKAN_HPP_NAMESPACE::BindImageMemoryInfo> const & bindInfos, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result bindImageMemory2KHR( uint32_t bindInfoCount, const VULKAN_HPP_NAMESPACE::BindImageMemoryInfo* pBindInfos, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type bindImageMemory2KHR( ArrayProxy<const VULKAN_HPP_NAMESPACE::BindImageMemoryInfo> const & bindInfos, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result buildAccelerationStructuresKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation, uint32_t infoCount, const VULKAN_HPP_NAMESPACE::AccelerationStructureBuildGeometryInfoKHR* pInfos, const VULKAN_HPP_NAMESPACE::AccelerationStructureBuildRangeInfoKHR* const * ppBuildRangeInfos, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- Result buildAccelerationStructuresKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation, ArrayProxy<const VULKAN_HPP_NAMESPACE::AccelerationStructureBuildGeometryInfoKHR> const & infos, ArrayProxy<const VULKAN_HPP_NAMESPACE::AccelerationStructureBuildRangeInfoKHR* const > const & pBuildRangeInfos, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result compileDeferredNV( VULKAN_HPP_NAMESPACE::Pipeline pipeline, uint32_t shader, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#else
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type compileDeferredNV( VULKAN_HPP_NAMESPACE::Pipeline pipeline, uint32_t shader, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result copyAccelerationStructureKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation, const VULKAN_HPP_NAMESPACE::CopyAccelerationStructureInfoKHR* pInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result copyAccelerationStructureKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation, const CopyAccelerationStructureInfoKHR & info, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result copyAccelerationStructureToMemoryKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation, const VULKAN_HPP_NAMESPACE::CopyAccelerationStructureToMemoryInfoKHR* pInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result copyAccelerationStructureToMemoryKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation, const CopyAccelerationStructureToMemoryInfoKHR & info, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result copyMemoryToAccelerationStructureKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation, const VULKAN_HPP_NAMESPACE::CopyMemoryToAccelerationStructureInfoKHR* pInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result copyMemoryToAccelerationStructureKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation, const CopyMemoryToAccelerationStructureInfoKHR & info, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result createAccelerationStructureKHR( const VULKAN_HPP_NAMESPACE::AccelerationStructureCreateInfoKHR* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::AccelerationStructureKHR* pAccelerationStructure, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::AccelerationStructureKHR>::type createAccelerationStructureKHR( const AccelerationStructureCreateInfoKHR & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::AccelerationStructureKHR, Dispatch>>::type createAccelerationStructureKHRUnique( const AccelerationStructureCreateInfoKHR & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result createAccelerationStructureNV( const VULKAN_HPP_NAMESPACE::AccelerationStructureCreateInfoNV* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::AccelerationStructureNV* pAccelerationStructure, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- typename ResultValueType<VULKAN_HPP_NAMESPACE::AccelerationStructureNV>::type createAccelerationStructureNV( const AccelerationStructureCreateInfoNV & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::AccelerationStructureNV, Dispatch>>::type createAccelerationStructureNVUnique( const AccelerationStructureCreateInfoNV & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result createBuffer( const VULKAN_HPP_NAMESPACE::BufferCreateInfo* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::Buffer* pBuffer, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::Buffer>::type createBuffer( const BufferCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::Buffer, Dispatch>>::type createBufferUnique( const BufferCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result createBufferView( const VULKAN_HPP_NAMESPACE::BufferViewCreateInfo* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::BufferView* pView, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::BufferView>::type createBufferView( const BufferViewCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::BufferView, Dispatch>>::type createBufferViewUnique( const BufferViewCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result createCommandPool( const VULKAN_HPP_NAMESPACE::CommandPoolCreateInfo* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::CommandPool* pCommandPool, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::CommandPool>::type createCommandPool( const CommandPoolCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::CommandPool, Dispatch>>::type createCommandPoolUnique( const CommandPoolCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result createComputePipelines( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, uint32_t createInfoCount, const VULKAN_HPP_NAMESPACE::ComputePipelineCreateInfo* pCreateInfos, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::Pipeline* pPipelines, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename PipelineAllocator = std::allocator<Pipeline>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD ResultValue<std::vector<Pipeline, PipelineAllocator>> createComputePipelines( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, ArrayProxy<const VULKAN_HPP_NAMESPACE::ComputePipelineCreateInfo> const & createInfos, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename PipelineAllocator = std::allocator<Pipeline>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename B = PipelineAllocator, typename std::enable_if<std::is_same<typename B::value_type, Pipeline>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD ResultValue<std::vector<Pipeline, PipelineAllocator>> createComputePipelines( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, ArrayProxy<const VULKAN_HPP_NAMESPACE::ComputePipelineCreateInfo> const & createInfos, Optional<const AllocationCallbacks> allocator, PipelineAllocator & pipelineAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD ResultValue<Pipeline> createComputePipeline( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, const ComputePipelineCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename PipelineAllocator = std::allocator<UniqueHandle<Pipeline, Dispatch>>>
- VULKAN_HPP_NODISCARD ResultValue<std::vector<UniqueHandle<Pipeline, Dispatch>, PipelineAllocator>> createComputePipelinesUnique( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, ArrayProxy<const VULKAN_HPP_NAMESPACE::ComputePipelineCreateInfo> const & createInfos, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename PipelineAllocator = std::allocator<UniqueHandle<Pipeline, Dispatch>>, typename B = PipelineAllocator, typename std::enable_if<std::is_same<typename B::value_type, UniqueHandle<Pipeline, Dispatch>>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD ResultValue<std::vector<UniqueHandle<Pipeline, Dispatch>, PipelineAllocator>> createComputePipelinesUnique( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, ArrayProxy<const VULKAN_HPP_NAMESPACE::ComputePipelineCreateInfo> const & createInfos, Optional<const AllocationCallbacks> allocator, PipelineAllocator & pipelineAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD ResultValue<UniqueHandle<Pipeline, Dispatch>> createComputePipelineUnique( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, const ComputePipelineCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result createDeferredOperationKHR( const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::DeferredOperationKHR* pDeferredOperation, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- typename ResultValueType<VULKAN_HPP_NAMESPACE::DeferredOperationKHR>::type createDeferredOperationKHR( Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::DeferredOperationKHR, Dispatch>>::type createDeferredOperationKHRUnique( Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result createDescriptorPool( const VULKAN_HPP_NAMESPACE::DescriptorPoolCreateInfo* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::DescriptorPool* pDescriptorPool, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::DescriptorPool>::type createDescriptorPool( const DescriptorPoolCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::DescriptorPool, Dispatch>>::type createDescriptorPoolUnique( const DescriptorPoolCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result createDescriptorSetLayout( const VULKAN_HPP_NAMESPACE::DescriptorSetLayoutCreateInfo* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::DescriptorSetLayout* pSetLayout, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::DescriptorSetLayout>::type createDescriptorSetLayout( const DescriptorSetLayoutCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::DescriptorSetLayout, Dispatch>>::type createDescriptorSetLayoutUnique( const DescriptorSetLayoutCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result createDescriptorUpdateTemplate( const VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateCreateInfo* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate* pDescriptorUpdateTemplate, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate>::type createDescriptorUpdateTemplate( const DescriptorUpdateTemplateCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate, Dispatch>>::type createDescriptorUpdateTemplateUnique( const DescriptorUpdateTemplateCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result createDescriptorUpdateTemplateKHR( const VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateCreateInfo* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate* pDescriptorUpdateTemplate, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate>::type createDescriptorUpdateTemplateKHR( const DescriptorUpdateTemplateCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate, Dispatch>>::type createDescriptorUpdateTemplateKHRUnique( const DescriptorUpdateTemplateCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result createEvent( const VULKAN_HPP_NAMESPACE::EventCreateInfo* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::Event* pEvent, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::Event>::type createEvent( const EventCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::Event, Dispatch>>::type createEventUnique( const EventCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result createFence( const VULKAN_HPP_NAMESPACE::FenceCreateInfo* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::Fence* pFence, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::Fence>::type createFence( const FenceCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::Fence, Dispatch>>::type createFenceUnique( const FenceCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result createFramebuffer( const VULKAN_HPP_NAMESPACE::FramebufferCreateInfo* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::Framebuffer* pFramebuffer, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::Framebuffer>::type createFramebuffer( const FramebufferCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::Framebuffer, Dispatch>>::type createFramebufferUnique( const FramebufferCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result createGraphicsPipelines( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, uint32_t createInfoCount, const VULKAN_HPP_NAMESPACE::GraphicsPipelineCreateInfo* pCreateInfos, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::Pipeline* pPipelines, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename PipelineAllocator = std::allocator<Pipeline>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD ResultValue<std::vector<Pipeline, PipelineAllocator>> createGraphicsPipelines( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, ArrayProxy<const VULKAN_HPP_NAMESPACE::GraphicsPipelineCreateInfo> const & createInfos, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename PipelineAllocator = std::allocator<Pipeline>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename B = PipelineAllocator, typename std::enable_if<std::is_same<typename B::value_type, Pipeline>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD ResultValue<std::vector<Pipeline, PipelineAllocator>> createGraphicsPipelines( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, ArrayProxy<const VULKAN_HPP_NAMESPACE::GraphicsPipelineCreateInfo> const & createInfos, Optional<const AllocationCallbacks> allocator, PipelineAllocator & pipelineAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD ResultValue<Pipeline> createGraphicsPipeline( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, const GraphicsPipelineCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename PipelineAllocator = std::allocator<UniqueHandle<Pipeline, Dispatch>>>
- VULKAN_HPP_NODISCARD ResultValue<std::vector<UniqueHandle<Pipeline, Dispatch>, PipelineAllocator>> createGraphicsPipelinesUnique( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, ArrayProxy<const VULKAN_HPP_NAMESPACE::GraphicsPipelineCreateInfo> const & createInfos, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename PipelineAllocator = std::allocator<UniqueHandle<Pipeline, Dispatch>>, typename B = PipelineAllocator, typename std::enable_if<std::is_same<typename B::value_type, UniqueHandle<Pipeline, Dispatch>>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD ResultValue<std::vector<UniqueHandle<Pipeline, Dispatch>, PipelineAllocator>> createGraphicsPipelinesUnique( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, ArrayProxy<const VULKAN_HPP_NAMESPACE::GraphicsPipelineCreateInfo> const & createInfos, Optional<const AllocationCallbacks> allocator, PipelineAllocator & pipelineAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD ResultValue<UniqueHandle<Pipeline, Dispatch>> createGraphicsPipelineUnique( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, const GraphicsPipelineCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result createImage( const VULKAN_HPP_NAMESPACE::ImageCreateInfo* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::Image* pImage, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::Image>::type createImage( const ImageCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::Image, Dispatch>>::type createImageUnique( const ImageCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result createImageView( const VULKAN_HPP_NAMESPACE::ImageViewCreateInfo* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::ImageView* pView, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::ImageView>::type createImageView( const ImageViewCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::ImageView, Dispatch>>::type createImageViewUnique( const ImageViewCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result createIndirectCommandsLayoutNV( const VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutCreateInfoNV* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV* pIndirectCommandsLayout, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV>::type createIndirectCommandsLayoutNV( const IndirectCommandsLayoutCreateInfoNV & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV, Dispatch>>::type createIndirectCommandsLayoutNVUnique( const IndirectCommandsLayoutCreateInfoNV & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result createPipelineCache( const VULKAN_HPP_NAMESPACE::PipelineCacheCreateInfo* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::PipelineCache* pPipelineCache, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::PipelineCache>::type createPipelineCache( const PipelineCacheCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::PipelineCache, Dispatch>>::type createPipelineCacheUnique( const PipelineCacheCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result createPipelineLayout( const VULKAN_HPP_NAMESPACE::PipelineLayoutCreateInfo* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::PipelineLayout* pPipelineLayout, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::PipelineLayout>::type createPipelineLayout( const PipelineLayoutCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::PipelineLayout, Dispatch>>::type createPipelineLayoutUnique( const PipelineLayoutCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result createPrivateDataSlotEXT( const VULKAN_HPP_NAMESPACE::PrivateDataSlotCreateInfoEXT* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT* pPrivateDataSlot, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- typename ResultValueType<VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT>::type createPrivateDataSlotEXT( const PrivateDataSlotCreateInfoEXT & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT, Dispatch>>::type createPrivateDataSlotEXTUnique( const PrivateDataSlotCreateInfoEXT & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result createQueryPool( const VULKAN_HPP_NAMESPACE::QueryPoolCreateInfo* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::QueryPool* pQueryPool, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::QueryPool>::type createQueryPool( const QueryPoolCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::QueryPool, Dispatch>>::type createQueryPoolUnique( const QueryPoolCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result createRayTracingPipelinesKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation, VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, uint32_t createInfoCount, const VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoKHR* pCreateInfos, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::Pipeline* pPipelines, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename PipelineAllocator = std::allocator<Pipeline>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD ResultValue<std::vector<Pipeline, PipelineAllocator>> createRayTracingPipelinesKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation, VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, ArrayProxy<const VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoKHR> const & createInfos, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename PipelineAllocator = std::allocator<Pipeline>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename B = PipelineAllocator, typename std::enable_if<std::is_same<typename B::value_type, Pipeline>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD ResultValue<std::vector<Pipeline, PipelineAllocator>> createRayTracingPipelinesKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation, VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, ArrayProxy<const VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoKHR> const & createInfos, Optional<const AllocationCallbacks> allocator, PipelineAllocator & pipelineAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD ResultValue<Pipeline> createRayTracingPipelineKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation, VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, const RayTracingPipelineCreateInfoKHR & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename PipelineAllocator = std::allocator<UniqueHandle<Pipeline, Dispatch>>>
- VULKAN_HPP_NODISCARD ResultValue<std::vector<UniqueHandle<Pipeline, Dispatch>, PipelineAllocator>> createRayTracingPipelinesKHRUnique( VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation, VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, ArrayProxy<const VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoKHR> const & createInfos, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename PipelineAllocator = std::allocator<UniqueHandle<Pipeline, Dispatch>>, typename B = PipelineAllocator, typename std::enable_if<std::is_same<typename B::value_type, UniqueHandle<Pipeline, Dispatch>>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD ResultValue<std::vector<UniqueHandle<Pipeline, Dispatch>, PipelineAllocator>> createRayTracingPipelinesKHRUnique( VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation, VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, ArrayProxy<const VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoKHR> const & createInfos, Optional<const AllocationCallbacks> allocator, PipelineAllocator & pipelineAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD ResultValue<UniqueHandle<Pipeline, Dispatch>> createRayTracingPipelineKHRUnique( VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation, VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, const RayTracingPipelineCreateInfoKHR & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result createRayTracingPipelinesNV( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, uint32_t createInfoCount, const VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoNV* pCreateInfos, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::Pipeline* pPipelines, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename PipelineAllocator = std::allocator<Pipeline>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD ResultValue<std::vector<Pipeline, PipelineAllocator>> createRayTracingPipelinesNV( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, ArrayProxy<const VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoNV> const & createInfos, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename PipelineAllocator = std::allocator<Pipeline>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename B = PipelineAllocator, typename std::enable_if<std::is_same<typename B::value_type, Pipeline>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD ResultValue<std::vector<Pipeline, PipelineAllocator>> createRayTracingPipelinesNV( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, ArrayProxy<const VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoNV> const & createInfos, Optional<const AllocationCallbacks> allocator, PipelineAllocator & pipelineAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD ResultValue<Pipeline> createRayTracingPipelineNV( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, const RayTracingPipelineCreateInfoNV & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename PipelineAllocator = std::allocator<UniqueHandle<Pipeline, Dispatch>>>
- VULKAN_HPP_NODISCARD ResultValue<std::vector<UniqueHandle<Pipeline, Dispatch>, PipelineAllocator>> createRayTracingPipelinesNVUnique( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, ArrayProxy<const VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoNV> const & createInfos, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename PipelineAllocator = std::allocator<UniqueHandle<Pipeline, Dispatch>>, typename B = PipelineAllocator, typename std::enable_if<std::is_same<typename B::value_type, UniqueHandle<Pipeline, Dispatch>>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD ResultValue<std::vector<UniqueHandle<Pipeline, Dispatch>, PipelineAllocator>> createRayTracingPipelinesNVUnique( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, ArrayProxy<const VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoNV> const & createInfos, Optional<const AllocationCallbacks> allocator, PipelineAllocator & pipelineAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD ResultValue<UniqueHandle<Pipeline, Dispatch>> createRayTracingPipelineNVUnique( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, const RayTracingPipelineCreateInfoNV & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result createRenderPass( const VULKAN_HPP_NAMESPACE::RenderPassCreateInfo* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::RenderPass* pRenderPass, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::RenderPass>::type createRenderPass( const RenderPassCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::RenderPass, Dispatch>>::type createRenderPassUnique( const RenderPassCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result createRenderPass2( const VULKAN_HPP_NAMESPACE::RenderPassCreateInfo2* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::RenderPass* pRenderPass, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::RenderPass>::type createRenderPass2( const RenderPassCreateInfo2 & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::RenderPass, Dispatch>>::type createRenderPass2Unique( const RenderPassCreateInfo2 & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result createRenderPass2KHR( const VULKAN_HPP_NAMESPACE::RenderPassCreateInfo2* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::RenderPass* pRenderPass, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::RenderPass>::type createRenderPass2KHR( const RenderPassCreateInfo2 & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::RenderPass, Dispatch>>::type createRenderPass2KHRUnique( const RenderPassCreateInfo2 & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result createSampler( const VULKAN_HPP_NAMESPACE::SamplerCreateInfo* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::Sampler* pSampler, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::Sampler>::type createSampler( const SamplerCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::Sampler, Dispatch>>::type createSamplerUnique( const SamplerCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result createSamplerYcbcrConversion( const VULKAN_HPP_NAMESPACE::SamplerYcbcrConversionCreateInfo* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion* pYcbcrConversion, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion>::type createSamplerYcbcrConversion( const SamplerYcbcrConversionCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion, Dispatch>>::type createSamplerYcbcrConversionUnique( const SamplerYcbcrConversionCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result createSamplerYcbcrConversionKHR( const VULKAN_HPP_NAMESPACE::SamplerYcbcrConversionCreateInfo* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion* pYcbcrConversion, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion>::type createSamplerYcbcrConversionKHR( const SamplerYcbcrConversionCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion, Dispatch>>::type createSamplerYcbcrConversionKHRUnique( const SamplerYcbcrConversionCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result createSemaphore( const VULKAN_HPP_NAMESPACE::SemaphoreCreateInfo* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::Semaphore* pSemaphore, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::Semaphore>::type createSemaphore( const SemaphoreCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::Semaphore, Dispatch>>::type createSemaphoreUnique( const SemaphoreCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result createShaderModule( const VULKAN_HPP_NAMESPACE::ShaderModuleCreateInfo* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::ShaderModule* pShaderModule, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::ShaderModule>::type createShaderModule( const ShaderModuleCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::ShaderModule, Dispatch>>::type createShaderModuleUnique( const ShaderModuleCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result createSharedSwapchainsKHR( uint32_t swapchainCount, const VULKAN_HPP_NAMESPACE::SwapchainCreateInfoKHR* pCreateInfos, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::SwapchainKHR* pSwapchains, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename SwapchainKHRAllocator = std::allocator<SwapchainKHR>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<std::vector<SwapchainKHR, SwapchainKHRAllocator>>::type createSharedSwapchainsKHR( ArrayProxy<const VULKAN_HPP_NAMESPACE::SwapchainCreateInfoKHR> const & createInfos, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename SwapchainKHRAllocator = std::allocator<SwapchainKHR>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename B = SwapchainKHRAllocator, typename std::enable_if<std::is_same<typename B::value_type, SwapchainKHR>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<std::vector<SwapchainKHR, SwapchainKHRAllocator>>::type createSharedSwapchainsKHR( ArrayProxy<const VULKAN_HPP_NAMESPACE::SwapchainCreateInfoKHR> const & createInfos, Optional<const AllocationCallbacks> allocator, SwapchainKHRAllocator & swapchainKHRAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<SwapchainKHR>::type createSharedSwapchainKHR( const SwapchainCreateInfoKHR & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename SwapchainKHRAllocator = std::allocator<UniqueHandle<SwapchainKHR, Dispatch>>>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<std::vector<UniqueHandle<SwapchainKHR, Dispatch>, SwapchainKHRAllocator>>::type createSharedSwapchainsKHRUnique( ArrayProxy<const VULKAN_HPP_NAMESPACE::SwapchainCreateInfoKHR> const & createInfos, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename SwapchainKHRAllocator = std::allocator<UniqueHandle<SwapchainKHR, Dispatch>>, typename B = SwapchainKHRAllocator, typename std::enable_if<std::is_same<typename B::value_type, UniqueHandle<SwapchainKHR, Dispatch>>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<std::vector<UniqueHandle<SwapchainKHR, Dispatch>, SwapchainKHRAllocator>>::type createSharedSwapchainsKHRUnique( ArrayProxy<const VULKAN_HPP_NAMESPACE::SwapchainCreateInfoKHR> const & createInfos, Optional<const AllocationCallbacks> allocator, SwapchainKHRAllocator & swapchainKHRAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<UniqueHandle<SwapchainKHR, Dispatch>>::type createSharedSwapchainKHRUnique( const SwapchainCreateInfoKHR & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result createSwapchainKHR( const VULKAN_HPP_NAMESPACE::SwapchainCreateInfoKHR* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::SwapchainKHR* pSwapchain, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::SwapchainKHR>::type createSwapchainKHR( const SwapchainCreateInfoKHR & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SwapchainKHR, Dispatch>>::type createSwapchainKHRUnique( const SwapchainCreateInfoKHR & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result createValidationCacheEXT( const VULKAN_HPP_NAMESPACE::ValidationCacheCreateInfoEXT* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::ValidationCacheEXT* pValidationCache, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- typename ResultValueType<VULKAN_HPP_NAMESPACE::ValidationCacheEXT>::type createValidationCacheEXT( const ValidationCacheCreateInfoEXT & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::ValidationCacheEXT, Dispatch>>::type createValidationCacheEXTUnique( const ValidationCacheCreateInfoEXT & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result debugMarkerSetObjectNameEXT( const VULKAN_HPP_NAMESPACE::DebugMarkerObjectNameInfoEXT* pNameInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type debugMarkerSetObjectNameEXT( const DebugMarkerObjectNameInfoEXT & nameInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result debugMarkerSetObjectTagEXT( const VULKAN_HPP_NAMESPACE::DebugMarkerObjectTagInfoEXT* pTagInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type debugMarkerSetObjectTagEXT( const DebugMarkerObjectTagInfoEXT & tagInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result deferredOperationJoinKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR operation, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#else
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result deferredOperationJoinKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR operation, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroyAccelerationStructureKHR( VULKAN_HPP_NAMESPACE::AccelerationStructureKHR accelerationStructure, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroyAccelerationStructureKHR( VULKAN_HPP_NAMESPACE::AccelerationStructureKHR accelerationStructure VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::AccelerationStructureKHR accelerationStructure, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::AccelerationStructureKHR accelerationStructure, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroyAccelerationStructureNV( VULKAN_HPP_NAMESPACE::AccelerationStructureNV accelerationStructure, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroyAccelerationStructureNV( VULKAN_HPP_NAMESPACE::AccelerationStructureNV accelerationStructure VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::AccelerationStructureNV accelerationStructure, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::AccelerationStructureNV accelerationStructure, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroyBuffer( VULKAN_HPP_NAMESPACE::Buffer buffer, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroyBuffer( VULKAN_HPP_NAMESPACE::Buffer buffer VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::Buffer buffer, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::Buffer buffer, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroyBufferView( VULKAN_HPP_NAMESPACE::BufferView bufferView, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroyBufferView( VULKAN_HPP_NAMESPACE::BufferView bufferView VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::BufferView bufferView, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::BufferView bufferView, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroyCommandPool( VULKAN_HPP_NAMESPACE::CommandPool commandPool, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroyCommandPool( VULKAN_HPP_NAMESPACE::CommandPool commandPool VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::CommandPool commandPool, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::CommandPool commandPool, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroyDeferredOperationKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR operation, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroyDeferredOperationKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR operation VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::DeferredOperationKHR operation, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::DeferredOperationKHR operation, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroyDescriptorPool( VULKAN_HPP_NAMESPACE::DescriptorPool descriptorPool, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroyDescriptorPool( VULKAN_HPP_NAMESPACE::DescriptorPool descriptorPool VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::DescriptorPool descriptorPool, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::DescriptorPool descriptorPool, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroyDescriptorSetLayout( VULKAN_HPP_NAMESPACE::DescriptorSetLayout descriptorSetLayout, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroyDescriptorSetLayout( VULKAN_HPP_NAMESPACE::DescriptorSetLayout descriptorSetLayout VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::DescriptorSetLayout descriptorSetLayout, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::DescriptorSetLayout descriptorSetLayout, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroyDescriptorUpdateTemplate( VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate descriptorUpdateTemplate, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroyDescriptorUpdateTemplate( VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate descriptorUpdateTemplate VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroyDescriptorUpdateTemplateKHR( VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate descriptorUpdateTemplate, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroyDescriptorUpdateTemplateKHR( VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate descriptorUpdateTemplate VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate descriptorUpdateTemplate, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate descriptorUpdateTemplate, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroyEvent( VULKAN_HPP_NAMESPACE::Event event, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroyEvent( VULKAN_HPP_NAMESPACE::Event event VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::Event event, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::Event event, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroyFence( VULKAN_HPP_NAMESPACE::Fence fence, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroyFence( VULKAN_HPP_NAMESPACE::Fence fence VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::Fence fence, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::Fence fence, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroyFramebuffer( VULKAN_HPP_NAMESPACE::Framebuffer framebuffer, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroyFramebuffer( VULKAN_HPP_NAMESPACE::Framebuffer framebuffer VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::Framebuffer framebuffer, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::Framebuffer framebuffer, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroyImage( VULKAN_HPP_NAMESPACE::Image image, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroyImage( VULKAN_HPP_NAMESPACE::Image image VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::Image image, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::Image image, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroyImageView( VULKAN_HPP_NAMESPACE::ImageView imageView, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroyImageView( VULKAN_HPP_NAMESPACE::ImageView imageView VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::ImageView imageView, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::ImageView imageView, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroyIndirectCommandsLayoutNV( VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV indirectCommandsLayout, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroyIndirectCommandsLayoutNV( VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV indirectCommandsLayout VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV indirectCommandsLayout, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV indirectCommandsLayout, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroyPipeline( VULKAN_HPP_NAMESPACE::Pipeline pipeline, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroyPipeline( VULKAN_HPP_NAMESPACE::Pipeline pipeline VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::Pipeline pipeline, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::Pipeline pipeline, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroyPipelineCache( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroyPipelineCache( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroyPipelineLayout( VULKAN_HPP_NAMESPACE::PipelineLayout pipelineLayout, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroyPipelineLayout( VULKAN_HPP_NAMESPACE::PipelineLayout pipelineLayout VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::PipelineLayout pipelineLayout, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::PipelineLayout pipelineLayout, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroyPrivateDataSlotEXT( VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT privateDataSlot, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroyPrivateDataSlotEXT( VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT privateDataSlot VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT privateDataSlot, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT privateDataSlot, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroyQueryPool( VULKAN_HPP_NAMESPACE::QueryPool queryPool, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroyQueryPool( VULKAN_HPP_NAMESPACE::QueryPool queryPool VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::QueryPool queryPool, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::QueryPool queryPool, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroyRenderPass( VULKAN_HPP_NAMESPACE::RenderPass renderPass, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroyRenderPass( VULKAN_HPP_NAMESPACE::RenderPass renderPass VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::RenderPass renderPass, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::RenderPass renderPass, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroySampler( VULKAN_HPP_NAMESPACE::Sampler sampler, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroySampler( VULKAN_HPP_NAMESPACE::Sampler sampler VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::Sampler sampler, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::Sampler sampler, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroySamplerYcbcrConversion( VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion ycbcrConversion, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroySamplerYcbcrConversion( VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion ycbcrConversion VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroySamplerYcbcrConversionKHR( VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion ycbcrConversion, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroySamplerYcbcrConversionKHR( VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion ycbcrConversion VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion ycbcrConversion, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion ycbcrConversion, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroySemaphore( VULKAN_HPP_NAMESPACE::Semaphore semaphore, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroySemaphore( VULKAN_HPP_NAMESPACE::Semaphore semaphore VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::Semaphore semaphore, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::Semaphore semaphore, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroyShaderModule( VULKAN_HPP_NAMESPACE::ShaderModule shaderModule, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroyShaderModule( VULKAN_HPP_NAMESPACE::ShaderModule shaderModule VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::ShaderModule shaderModule, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::ShaderModule shaderModule, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroySwapchainKHR( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroySwapchainKHR( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroyValidationCacheEXT( VULKAN_HPP_NAMESPACE::ValidationCacheEXT validationCache, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroyValidationCacheEXT( VULKAN_HPP_NAMESPACE::ValidationCacheEXT validationCache VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::ValidationCacheEXT validationCache, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::ValidationCacheEXT validationCache, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result waitIdle( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#else
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type waitIdle( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result displayPowerControlEXT( VULKAN_HPP_NAMESPACE::DisplayKHR display, const VULKAN_HPP_NAMESPACE::DisplayPowerInfoEXT* pDisplayPowerInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- typename ResultValueType<void>::type displayPowerControlEXT( VULKAN_HPP_NAMESPACE::DisplayKHR display, const DisplayPowerInfoEXT & displayPowerInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result flushMappedMemoryRanges( uint32_t memoryRangeCount, const VULKAN_HPP_NAMESPACE::MappedMemoryRange* pMemoryRanges, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type flushMappedMemoryRanges( ArrayProxy<const VULKAN_HPP_NAMESPACE::MappedMemoryRange> const & memoryRanges, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void freeCommandBuffers( VULKAN_HPP_NAMESPACE::CommandPool commandPool, uint32_t commandBufferCount, const VULKAN_HPP_NAMESPACE::CommandBuffer* pCommandBuffers, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void freeCommandBuffers( VULKAN_HPP_NAMESPACE::CommandPool commandPool, ArrayProxy<const VULKAN_HPP_NAMESPACE::CommandBuffer> const & commandBuffers, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void free( VULKAN_HPP_NAMESPACE::CommandPool commandPool, uint32_t commandBufferCount, const VULKAN_HPP_NAMESPACE::CommandBuffer* pCommandBuffers, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void free( VULKAN_HPP_NAMESPACE::CommandPool commandPool, ArrayProxy<const VULKAN_HPP_NAMESPACE::CommandBuffer> const & commandBuffers, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- Result freeDescriptorSets( VULKAN_HPP_NAMESPACE::DescriptorPool descriptorPool, uint32_t descriptorSetCount, const VULKAN_HPP_NAMESPACE::DescriptorSet* pDescriptorSets, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- typename ResultValueType<void>::type freeDescriptorSets( VULKAN_HPP_NAMESPACE::DescriptorPool descriptorPool, ArrayProxy<const VULKAN_HPP_NAMESPACE::DescriptorSet> const & descriptorSets, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- Result free( VULKAN_HPP_NAMESPACE::DescriptorPool descriptorPool, uint32_t descriptorSetCount, const VULKAN_HPP_NAMESPACE::DescriptorSet* pDescriptorSets, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- typename ResultValueType<void>::type free( VULKAN_HPP_NAMESPACE::DescriptorPool descriptorPool, ArrayProxy<const VULKAN_HPP_NAMESPACE::DescriptorSet> const & descriptorSets, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void freeMemory( VULKAN_HPP_NAMESPACE::DeviceMemory memory, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void freeMemory( VULKAN_HPP_NAMESPACE::DeviceMemory memory VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void free( VULKAN_HPP_NAMESPACE::DeviceMemory memory, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void free( VULKAN_HPP_NAMESPACE::DeviceMemory memory, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void getAccelerationStructureBuildSizesKHR( VULKAN_HPP_NAMESPACE::AccelerationStructureBuildTypeKHR buildType, const VULKAN_HPP_NAMESPACE::AccelerationStructureBuildGeometryInfoKHR* pBuildInfo, const uint32_t* pMaxPrimitiveCounts, VULKAN_HPP_NAMESPACE::AccelerationStructureBuildSizesInfoKHR* pSizeInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::AccelerationStructureBuildSizesInfoKHR getAccelerationStructureBuildSizesKHR( VULKAN_HPP_NAMESPACE::AccelerationStructureBuildTypeKHR buildType, const AccelerationStructureBuildGeometryInfoKHR & buildInfo, ArrayProxy<const uint32_t> const & maxPrimitiveCounts, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- DeviceAddress getAccelerationStructureAddressKHR( const VULKAN_HPP_NAMESPACE::AccelerationStructureDeviceAddressInfoKHR* pInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- DeviceAddress getAccelerationStructureAddressKHR( const AccelerationStructureDeviceAddressInfoKHR & info, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getAccelerationStructureHandleNV( VULKAN_HPP_NAMESPACE::AccelerationStructureNV accelerationStructure, size_t dataSize, void* pData, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename T, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type getAccelerationStructureHandleNV( VULKAN_HPP_NAMESPACE::AccelerationStructureNV accelerationStructure, ArrayProxy<T> const &data, Dispatch const &d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename T, typename Allocator = std::allocator<T>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<std::vector<T,Allocator>>::type getAccelerationStructureHandleNV( VULKAN_HPP_NAMESPACE::AccelerationStructureNV accelerationStructure, size_t dataSize, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename T, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<T>::type getAccelerationStructureHandleNV( VULKAN_HPP_NAMESPACE::AccelerationStructureNV accelerationStructure, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void getAccelerationStructureMemoryRequirementsNV( const VULKAN_HPP_NAMESPACE::AccelerationStructureMemoryRequirementsInfoNV* pInfo, VULKAN_HPP_NAMESPACE::MemoryRequirements2KHR* pMemoryRequirements, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::MemoryRequirements2KHR getAccelerationStructureMemoryRequirementsNV( const AccelerationStructureMemoryRequirementsInfoNV & info, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
- template <typename X, typename Y, typename... Z, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD StructureChain<X, Y, Z...> getAccelerationStructureMemoryRequirementsNV( const AccelerationStructureMemoryRequirementsInfoNV & info, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-#ifdef VK_USE_PLATFORM_ANDROID_KHR
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getAndroidHardwareBufferPropertiesANDROID( const struct AHardwareBuffer* buffer, VULKAN_HPP_NAMESPACE::AndroidHardwareBufferPropertiesANDROID* pProperties, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::AndroidHardwareBufferPropertiesANDROID>::type getAndroidHardwareBufferPropertiesANDROID( const struct AHardwareBuffer & buffer, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename X, typename Y, typename... Z, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<StructureChain<X, Y, Z...>>::type getAndroidHardwareBufferPropertiesANDROID( const struct AHardwareBuffer & buffer, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- DeviceAddress getBufferAddress( const VULKAN_HPP_NAMESPACE::BufferDeviceAddressInfo* pInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- DeviceAddress getBufferAddress( const BufferDeviceAddressInfo & info, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- DeviceAddress getBufferAddressEXT( const VULKAN_HPP_NAMESPACE::BufferDeviceAddressInfo* pInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- DeviceAddress getBufferAddressEXT( const BufferDeviceAddressInfo & info, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- DeviceAddress getBufferAddressKHR( const VULKAN_HPP_NAMESPACE::BufferDeviceAddressInfo* pInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- DeviceAddress getBufferAddressKHR( const BufferDeviceAddressInfo & info, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void getBufferMemoryRequirements( VULKAN_HPP_NAMESPACE::Buffer buffer, VULKAN_HPP_NAMESPACE::MemoryRequirements* pMemoryRequirements, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::MemoryRequirements getBufferMemoryRequirements( VULKAN_HPP_NAMESPACE::Buffer buffer, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void getBufferMemoryRequirements2( const VULKAN_HPP_NAMESPACE::BufferMemoryRequirementsInfo2* pInfo, VULKAN_HPP_NAMESPACE::MemoryRequirements2* pMemoryRequirements, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::MemoryRequirements2 getBufferMemoryRequirements2( const BufferMemoryRequirementsInfo2 & info, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
- template <typename X, typename Y, typename... Z, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD StructureChain<X, Y, Z...> getBufferMemoryRequirements2( const BufferMemoryRequirementsInfo2 & info, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void getBufferMemoryRequirements2KHR( const VULKAN_HPP_NAMESPACE::BufferMemoryRequirementsInfo2* pInfo, VULKAN_HPP_NAMESPACE::MemoryRequirements2* pMemoryRequirements, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::MemoryRequirements2 getBufferMemoryRequirements2KHR( const BufferMemoryRequirementsInfo2 & info, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
- template <typename X, typename Y, typename... Z, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD StructureChain<X, Y, Z...> getBufferMemoryRequirements2KHR( const BufferMemoryRequirementsInfo2 & info, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- uint64_t getBufferOpaqueCaptureAddress( const VULKAN_HPP_NAMESPACE::BufferDeviceAddressInfo* pInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- uint64_t getBufferOpaqueCaptureAddress( const BufferDeviceAddressInfo & info, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- uint64_t getBufferOpaqueCaptureAddressKHR( const VULKAN_HPP_NAMESPACE::BufferDeviceAddressInfo* pInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- uint64_t getBufferOpaqueCaptureAddressKHR( const BufferDeviceAddressInfo & info, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getCalibratedTimestampsEXT( uint32_t timestampCount, const VULKAN_HPP_NAMESPACE::CalibratedTimestampInfoEXT* pTimestampInfos, uint64_t* pTimestamps, uint64_t* pMaxDeviation, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<uint64_t>::type getCalibratedTimestampsEXT( ArrayProxy<const VULKAN_HPP_NAMESPACE::CalibratedTimestampInfoEXT> const &timestampInfos, ArrayProxy<uint64_t> const &timestamps, Dispatch const &d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename Uint64_tAllocator = std::allocator<uint64_t>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<std::pair<std::vector<uint64_t, Uint64_tAllocator>, uint64_t>>::type getCalibratedTimestampsEXT( ArrayProxy<const VULKAN_HPP_NAMESPACE::CalibratedTimestampInfoEXT> const & timestampInfos, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename Uint64_tAllocator = std::allocator<uint64_t>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename B = Uint64_tAllocator, typename std::enable_if<std::is_same<typename B::value_type, uint64_t>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<std::pair<std::vector<uint64_t, Uint64_tAllocator>, uint64_t>>::type getCalibratedTimestampsEXT( ArrayProxy<const VULKAN_HPP_NAMESPACE::CalibratedTimestampInfoEXT> const & timestampInfos, Uint64_tAllocator & uint64_tAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- uint32_t getDeferredOperationMaxConcurrencyKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR operation, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
-#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getDeferredOperationResultKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR operation, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#else
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getDeferredOperationResultKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR operation, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void getDescriptorSetLayoutSupport( const VULKAN_HPP_NAMESPACE::DescriptorSetLayoutCreateInfo* pCreateInfo, VULKAN_HPP_NAMESPACE::DescriptorSetLayoutSupport* pSupport, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::DescriptorSetLayoutSupport getDescriptorSetLayoutSupport( const DescriptorSetLayoutCreateInfo & createInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
- template <typename X, typename Y, typename... Z, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD StructureChain<X, Y, Z...> getDescriptorSetLayoutSupport( const DescriptorSetLayoutCreateInfo & createInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void getDescriptorSetLayoutSupportKHR( const VULKAN_HPP_NAMESPACE::DescriptorSetLayoutCreateInfo* pCreateInfo, VULKAN_HPP_NAMESPACE::DescriptorSetLayoutSupport* pSupport, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::DescriptorSetLayoutSupport getDescriptorSetLayoutSupportKHR( const DescriptorSetLayoutCreateInfo & createInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
- template <typename X, typename Y, typename... Z, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD StructureChain<X, Y, Z...> getDescriptorSetLayoutSupportKHR( const DescriptorSetLayoutCreateInfo & createInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void getAccelerationStructureCompatibilityKHR( const VULKAN_HPP_NAMESPACE::AccelerationStructureVersionInfoKHR* pVersionInfo, VULKAN_HPP_NAMESPACE::AccelerationStructureCompatibilityKHR* pCompatibility, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::AccelerationStructureCompatibilityKHR getAccelerationStructureCompatibilityKHR( const AccelerationStructureVersionInfoKHR & versionInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void getGroupPeerMemoryFeatures( uint32_t heapIndex, uint32_t localDeviceIndex, uint32_t remoteDeviceIndex, VULKAN_HPP_NAMESPACE::PeerMemoryFeatureFlags* pPeerMemoryFeatures, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::PeerMemoryFeatureFlags getGroupPeerMemoryFeatures( uint32_t heapIndex, uint32_t localDeviceIndex, uint32_t remoteDeviceIndex, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void getGroupPeerMemoryFeaturesKHR( uint32_t heapIndex, uint32_t localDeviceIndex, uint32_t remoteDeviceIndex, VULKAN_HPP_NAMESPACE::PeerMemoryFeatureFlags* pPeerMemoryFeatures, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::PeerMemoryFeatureFlags getGroupPeerMemoryFeaturesKHR( uint32_t heapIndex, uint32_t localDeviceIndex, uint32_t remoteDeviceIndex, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getGroupPresentCapabilitiesKHR( VULKAN_HPP_NAMESPACE::DeviceGroupPresentCapabilitiesKHR* pDeviceGroupPresentCapabilities, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::DeviceGroupPresentCapabilitiesKHR>::type getGroupPresentCapabilitiesKHR( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getGroupSurfacePresentModes2EXT( const VULKAN_HPP_NAMESPACE::PhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo, VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagsKHR* pModes, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagsKHR>::type getGroupSurfacePresentModes2EXT( const PhysicalDeviceSurfaceInfo2KHR & surfaceInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getGroupSurfacePresentModesKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface, VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagsKHR* pModes, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagsKHR>::type getGroupSurfacePresentModesKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void getMemoryCommitment( VULKAN_HPP_NAMESPACE::DeviceMemory memory, VULKAN_HPP_NAMESPACE::DeviceSize* pCommittedMemoryInBytes, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::DeviceSize getMemoryCommitment( VULKAN_HPP_NAMESPACE::DeviceMemory memory, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- uint64_t getMemoryOpaqueCaptureAddress( const VULKAN_HPP_NAMESPACE::DeviceMemoryOpaqueCaptureAddressInfo* pInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- uint64_t getMemoryOpaqueCaptureAddress( const DeviceMemoryOpaqueCaptureAddressInfo & info, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- uint64_t getMemoryOpaqueCaptureAddressKHR( const VULKAN_HPP_NAMESPACE::DeviceMemoryOpaqueCaptureAddressInfo* pInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- uint64_t getMemoryOpaqueCaptureAddressKHR( const DeviceMemoryOpaqueCaptureAddressInfo & info, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- PFN_vkVoidFunction getProcAddr( const char* pName, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- PFN_vkVoidFunction getProcAddr( const std::string & name, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void getQueue( uint32_t queueFamilyIndex, uint32_t queueIndex, VULKAN_HPP_NAMESPACE::Queue* pQueue, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::Queue getQueue( uint32_t queueFamilyIndex, uint32_t queueIndex, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void getQueue2( const VULKAN_HPP_NAMESPACE::DeviceQueueInfo2* pQueueInfo, VULKAN_HPP_NAMESPACE::Queue* pQueue, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::Queue getQueue2( const DeviceQueueInfo2 & queueInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getEventStatus( VULKAN_HPP_NAMESPACE::Event event, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#else
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getEventStatus( VULKAN_HPP_NAMESPACE::Event event, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getFenceFdKHR( const VULKAN_HPP_NAMESPACE::FenceGetFdInfoKHR* pGetFdInfo, int* pFd, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<int>::type getFenceFdKHR( const FenceGetFdInfoKHR & getFdInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getFenceStatus( VULKAN_HPP_NAMESPACE::Fence fence, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#else
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getFenceStatus( VULKAN_HPP_NAMESPACE::Fence fence, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getFenceWin32HandleKHR( const VULKAN_HPP_NAMESPACE::FenceGetWin32HandleInfoKHR* pGetWin32HandleInfo, HANDLE* pHandle, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<HANDLE>::type getFenceWin32HandleKHR( const FenceGetWin32HandleInfoKHR & getWin32HandleInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void getGeneratedCommandsMemoryRequirementsNV( const VULKAN_HPP_NAMESPACE::GeneratedCommandsMemoryRequirementsInfoNV* pInfo, VULKAN_HPP_NAMESPACE::MemoryRequirements2* pMemoryRequirements, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::MemoryRequirements2 getGeneratedCommandsMemoryRequirementsNV( const GeneratedCommandsMemoryRequirementsInfoNV & info, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
- template <typename X, typename Y, typename... Z, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD StructureChain<X, Y, Z...> getGeneratedCommandsMemoryRequirementsNV( const GeneratedCommandsMemoryRequirementsInfoNV & info, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getImageDrmFormatModifierPropertiesEXT( VULKAN_HPP_NAMESPACE::Image image, VULKAN_HPP_NAMESPACE::ImageDrmFormatModifierPropertiesEXT* pProperties, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- typename ResultValueType<VULKAN_HPP_NAMESPACE::ImageDrmFormatModifierPropertiesEXT>::type getImageDrmFormatModifierPropertiesEXT( VULKAN_HPP_NAMESPACE::Image image, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void getImageMemoryRequirements( VULKAN_HPP_NAMESPACE::Image image, VULKAN_HPP_NAMESPACE::MemoryRequirements* pMemoryRequirements, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::MemoryRequirements getImageMemoryRequirements( VULKAN_HPP_NAMESPACE::Image image, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void getImageMemoryRequirements2( const VULKAN_HPP_NAMESPACE::ImageMemoryRequirementsInfo2* pInfo, VULKAN_HPP_NAMESPACE::MemoryRequirements2* pMemoryRequirements, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::MemoryRequirements2 getImageMemoryRequirements2( const ImageMemoryRequirementsInfo2 & info, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
- template <typename X, typename Y, typename... Z, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD StructureChain<X, Y, Z...> getImageMemoryRequirements2( const ImageMemoryRequirementsInfo2 & info, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void getImageMemoryRequirements2KHR( const VULKAN_HPP_NAMESPACE::ImageMemoryRequirementsInfo2* pInfo, VULKAN_HPP_NAMESPACE::MemoryRequirements2* pMemoryRequirements, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::MemoryRequirements2 getImageMemoryRequirements2KHR( const ImageMemoryRequirementsInfo2 & info, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
- template <typename X, typename Y, typename... Z, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD StructureChain<X, Y, Z...> getImageMemoryRequirements2KHR( const ImageMemoryRequirementsInfo2 & info, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void getImageSparseMemoryRequirements( VULKAN_HPP_NAMESPACE::Image image, uint32_t* pSparseMemoryRequirementCount, VULKAN_HPP_NAMESPACE::SparseImageMemoryRequirements* pSparseMemoryRequirements, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename SparseImageMemoryRequirementsAllocator = std::allocator<SparseImageMemoryRequirements>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD std::vector<SparseImageMemoryRequirements, SparseImageMemoryRequirementsAllocator> getImageSparseMemoryRequirements( VULKAN_HPP_NAMESPACE::Image image, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename SparseImageMemoryRequirementsAllocator = std::allocator<SparseImageMemoryRequirements>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename B = SparseImageMemoryRequirementsAllocator, typename std::enable_if<std::is_same<typename B::value_type, SparseImageMemoryRequirements>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD std::vector<SparseImageMemoryRequirements, SparseImageMemoryRequirementsAllocator> getImageSparseMemoryRequirements( VULKAN_HPP_NAMESPACE::Image image, SparseImageMemoryRequirementsAllocator & sparseImageMemoryRequirementsAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void getImageSparseMemoryRequirements2( const VULKAN_HPP_NAMESPACE::ImageSparseMemoryRequirementsInfo2* pInfo, uint32_t* pSparseMemoryRequirementCount, VULKAN_HPP_NAMESPACE::SparseImageMemoryRequirements2* pSparseMemoryRequirements, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename SparseImageMemoryRequirements2Allocator = std::allocator<SparseImageMemoryRequirements2>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD std::vector<SparseImageMemoryRequirements2, SparseImageMemoryRequirements2Allocator> getImageSparseMemoryRequirements2( const ImageSparseMemoryRequirementsInfo2 & info, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename SparseImageMemoryRequirements2Allocator = std::allocator<SparseImageMemoryRequirements2>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename B = SparseImageMemoryRequirements2Allocator, typename std::enable_if<std::is_same<typename B::value_type, SparseImageMemoryRequirements2>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD std::vector<SparseImageMemoryRequirements2, SparseImageMemoryRequirements2Allocator> getImageSparseMemoryRequirements2( const ImageSparseMemoryRequirementsInfo2 & info, SparseImageMemoryRequirements2Allocator & sparseImageMemoryRequirements2Allocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void getImageSparseMemoryRequirements2KHR( const VULKAN_HPP_NAMESPACE::ImageSparseMemoryRequirementsInfo2* pInfo, uint32_t* pSparseMemoryRequirementCount, VULKAN_HPP_NAMESPACE::SparseImageMemoryRequirements2* pSparseMemoryRequirements, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename SparseImageMemoryRequirements2Allocator = std::allocator<SparseImageMemoryRequirements2>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD std::vector<SparseImageMemoryRequirements2, SparseImageMemoryRequirements2Allocator> getImageSparseMemoryRequirements2KHR( const ImageSparseMemoryRequirementsInfo2 & info, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename SparseImageMemoryRequirements2Allocator = std::allocator<SparseImageMemoryRequirements2>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename B = SparseImageMemoryRequirements2Allocator, typename std::enable_if<std::is_same<typename B::value_type, SparseImageMemoryRequirements2>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD std::vector<SparseImageMemoryRequirements2, SparseImageMemoryRequirements2Allocator> getImageSparseMemoryRequirements2KHR( const ImageSparseMemoryRequirementsInfo2 & info, SparseImageMemoryRequirements2Allocator & sparseImageMemoryRequirements2Allocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void getImageSubresourceLayout( VULKAN_HPP_NAMESPACE::Image image, const VULKAN_HPP_NAMESPACE::ImageSubresource* pSubresource, VULKAN_HPP_NAMESPACE::SubresourceLayout* pLayout, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::SubresourceLayout getImageSubresourceLayout( VULKAN_HPP_NAMESPACE::Image image, const ImageSubresource & subresource, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getImageViewAddressNVX( VULKAN_HPP_NAMESPACE::ImageView imageView, VULKAN_HPP_NAMESPACE::ImageViewAddressPropertiesNVX* pProperties, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::ImageViewAddressPropertiesNVX>::type getImageViewAddressNVX( VULKAN_HPP_NAMESPACE::ImageView imageView, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- uint32_t getImageViewHandleNVX( const VULKAN_HPP_NAMESPACE::ImageViewHandleInfoNVX* pInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- uint32_t getImageViewHandleNVX( const ImageViewHandleInfoNVX & info, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-#ifdef VK_USE_PLATFORM_ANDROID_KHR
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getMemoryAndroidHardwareBufferANDROID( const VULKAN_HPP_NAMESPACE::MemoryGetAndroidHardwareBufferInfoANDROID* pInfo, struct AHardwareBuffer** pBuffer, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<struct AHardwareBuffer*>::type getMemoryAndroidHardwareBufferANDROID( const MemoryGetAndroidHardwareBufferInfoANDROID & info, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getMemoryFdKHR( const VULKAN_HPP_NAMESPACE::MemoryGetFdInfoKHR* pGetFdInfo, int* pFd, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<int>::type getMemoryFdKHR( const MemoryGetFdInfoKHR & getFdInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getMemoryFdPropertiesKHR( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType, int fd, VULKAN_HPP_NAMESPACE::MemoryFdPropertiesKHR* pMemoryFdProperties, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::MemoryFdPropertiesKHR>::type getMemoryFdPropertiesKHR( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType, int fd, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getMemoryHostPointerPropertiesEXT( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType, const void* pHostPointer, VULKAN_HPP_NAMESPACE::MemoryHostPointerPropertiesEXT* pMemoryHostPointerProperties, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::MemoryHostPointerPropertiesEXT>::type getMemoryHostPointerPropertiesEXT( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType, const void* pHostPointer, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getMemoryWin32HandleKHR( const VULKAN_HPP_NAMESPACE::MemoryGetWin32HandleInfoKHR* pGetWin32HandleInfo, HANDLE* pHandle, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<HANDLE>::type getMemoryWin32HandleKHR( const MemoryGetWin32HandleInfoKHR & getWin32HandleInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getMemoryWin32HandleNV( VULKAN_HPP_NAMESPACE::DeviceMemory memory, VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV handleType, HANDLE* pHandle, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<HANDLE>::type getMemoryWin32HandleNV( VULKAN_HPP_NAMESPACE::DeviceMemory memory, VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV handleType, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getMemoryWin32HandlePropertiesKHR( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType, HANDLE handle, VULKAN_HPP_NAMESPACE::MemoryWin32HandlePropertiesKHR* pMemoryWin32HandleProperties, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::MemoryWin32HandlePropertiesKHR>::type getMemoryWin32HandlePropertiesKHR( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType, HANDLE handle, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getPastPresentationTimingGOOGLE( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain, uint32_t* pPresentationTimingCount, VULKAN_HPP_NAMESPACE::PastPresentationTimingGOOGLE* pPresentationTimings, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename PastPresentationTimingGOOGLEAllocator = std::allocator<PastPresentationTimingGOOGLE>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<PastPresentationTimingGOOGLE, PastPresentationTimingGOOGLEAllocator>>::type getPastPresentationTimingGOOGLE( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename PastPresentationTimingGOOGLEAllocator = std::allocator<PastPresentationTimingGOOGLE>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename B = PastPresentationTimingGOOGLEAllocator, typename std::enable_if<std::is_same<typename B::value_type, PastPresentationTimingGOOGLE>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<PastPresentationTimingGOOGLE, PastPresentationTimingGOOGLEAllocator>>::type getPastPresentationTimingGOOGLE( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain, PastPresentationTimingGOOGLEAllocator & pastPresentationTimingGOOGLEAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getPerformanceParameterINTEL( VULKAN_HPP_NAMESPACE::PerformanceParameterTypeINTEL parameter, VULKAN_HPP_NAMESPACE::PerformanceValueINTEL* pValue, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::PerformanceValueINTEL>::type getPerformanceParameterINTEL( VULKAN_HPP_NAMESPACE::PerformanceParameterTypeINTEL parameter, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getPipelineCacheData( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, size_t* pDataSize, void* pData, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Uint8_tAllocator = std::allocator<uint8_t>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<uint8_t, Uint8_tAllocator>>::type getPipelineCacheData( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename Uint8_tAllocator = std::allocator<uint8_t>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename B = Uint8_tAllocator, typename std::enable_if<std::is_same<typename B::value_type, uint8_t>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<uint8_t, Uint8_tAllocator>>::type getPipelineCacheData( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, Uint8_tAllocator & uint8_tAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getPipelineExecutableInternalRepresentationsKHR( const VULKAN_HPP_NAMESPACE::PipelineExecutableInfoKHR* pExecutableInfo, uint32_t* pInternalRepresentationCount, VULKAN_HPP_NAMESPACE::PipelineExecutableInternalRepresentationKHR* pInternalRepresentations, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename PipelineExecutableInternalRepresentationKHRAllocator = std::allocator<PipelineExecutableInternalRepresentationKHR>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<PipelineExecutableInternalRepresentationKHR, PipelineExecutableInternalRepresentationKHRAllocator>>::type getPipelineExecutableInternalRepresentationsKHR( const PipelineExecutableInfoKHR & executableInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename PipelineExecutableInternalRepresentationKHRAllocator = std::allocator<PipelineExecutableInternalRepresentationKHR>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename B = PipelineExecutableInternalRepresentationKHRAllocator, typename std::enable_if<std::is_same<typename B::value_type, PipelineExecutableInternalRepresentationKHR>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<PipelineExecutableInternalRepresentationKHR, PipelineExecutableInternalRepresentationKHRAllocator>>::type getPipelineExecutableInternalRepresentationsKHR( const PipelineExecutableInfoKHR & executableInfo, PipelineExecutableInternalRepresentationKHRAllocator & pipelineExecutableInternalRepresentationKHRAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getPipelineExecutablePropertiesKHR( const VULKAN_HPP_NAMESPACE::PipelineInfoKHR* pPipelineInfo, uint32_t* pExecutableCount, VULKAN_HPP_NAMESPACE::PipelineExecutablePropertiesKHR* pProperties, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename PipelineExecutablePropertiesKHRAllocator = std::allocator<PipelineExecutablePropertiesKHR>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<PipelineExecutablePropertiesKHR, PipelineExecutablePropertiesKHRAllocator>>::type getPipelineExecutablePropertiesKHR( const PipelineInfoKHR & pipelineInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename PipelineExecutablePropertiesKHRAllocator = std::allocator<PipelineExecutablePropertiesKHR>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename B = PipelineExecutablePropertiesKHRAllocator, typename std::enable_if<std::is_same<typename B::value_type, PipelineExecutablePropertiesKHR>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<PipelineExecutablePropertiesKHR, PipelineExecutablePropertiesKHRAllocator>>::type getPipelineExecutablePropertiesKHR( const PipelineInfoKHR & pipelineInfo, PipelineExecutablePropertiesKHRAllocator & pipelineExecutablePropertiesKHRAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getPipelineExecutableStatisticsKHR( const VULKAN_HPP_NAMESPACE::PipelineExecutableInfoKHR* pExecutableInfo, uint32_t* pStatisticCount, VULKAN_HPP_NAMESPACE::PipelineExecutableStatisticKHR* pStatistics, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename PipelineExecutableStatisticKHRAllocator = std::allocator<PipelineExecutableStatisticKHR>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<PipelineExecutableStatisticKHR, PipelineExecutableStatisticKHRAllocator>>::type getPipelineExecutableStatisticsKHR( const PipelineExecutableInfoKHR & executableInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename PipelineExecutableStatisticKHRAllocator = std::allocator<PipelineExecutableStatisticKHR>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename B = PipelineExecutableStatisticKHRAllocator, typename std::enable_if<std::is_same<typename B::value_type, PipelineExecutableStatisticKHR>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<PipelineExecutableStatisticKHR, PipelineExecutableStatisticKHRAllocator>>::type getPipelineExecutableStatisticsKHR( const PipelineExecutableInfoKHR & executableInfo, PipelineExecutableStatisticKHRAllocator & pipelineExecutableStatisticKHRAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void getPrivateDataEXT( VULKAN_HPP_NAMESPACE::ObjectType objectType, uint64_t objectHandle, VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT privateDataSlot, uint64_t* pData, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD uint64_t getPrivateDataEXT( VULKAN_HPP_NAMESPACE::ObjectType objectType, uint64_t objectHandle, VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT privateDataSlot, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getQueryPoolResults( VULKAN_HPP_NAMESPACE::QueryPool queryPool, uint32_t firstQuery, uint32_t queryCount, size_t dataSize, void* pData, VULKAN_HPP_NAMESPACE::DeviceSize stride, VULKAN_HPP_NAMESPACE::QueryResultFlags flags, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename T, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getQueryPoolResults( VULKAN_HPP_NAMESPACE::QueryPool queryPool, uint32_t firstQuery, uint32_t queryCount, ArrayProxy<T> const &data, VULKAN_HPP_NAMESPACE::DeviceSize stride, VULKAN_HPP_NAMESPACE::QueryResultFlags flags, Dispatch const &d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename T, typename Allocator = std::allocator<T>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD ResultValue<std::vector<T,Allocator>> getQueryPoolResults( VULKAN_HPP_NAMESPACE::QueryPool queryPool, uint32_t firstQuery, uint32_t queryCount, size_t dataSize, VULKAN_HPP_NAMESPACE::DeviceSize stride, VULKAN_HPP_NAMESPACE::QueryResultFlags flags VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename T, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD ResultValue<T> getQueryPoolResult( VULKAN_HPP_NAMESPACE::QueryPool queryPool, uint32_t firstQuery, uint32_t queryCount, VULKAN_HPP_NAMESPACE::DeviceSize stride, VULKAN_HPP_NAMESPACE::QueryResultFlags flags VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getRayTracingCaptureReplayShaderGroupHandlesKHR( VULKAN_HPP_NAMESPACE::Pipeline pipeline, uint32_t firstGroup, uint32_t groupCount, size_t dataSize, void* pData, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename T, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type getRayTracingCaptureReplayShaderGroupHandlesKHR( VULKAN_HPP_NAMESPACE::Pipeline pipeline, uint32_t firstGroup, uint32_t groupCount, ArrayProxy<T> const &data, Dispatch const &d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename T, typename Allocator = std::allocator<T>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<std::vector<T,Allocator>>::type getRayTracingCaptureReplayShaderGroupHandlesKHR( VULKAN_HPP_NAMESPACE::Pipeline pipeline, uint32_t firstGroup, uint32_t groupCount, size_t dataSize, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename T, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<T>::type getRayTracingCaptureReplayShaderGroupHandleKHR( VULKAN_HPP_NAMESPACE::Pipeline pipeline, uint32_t firstGroup, uint32_t groupCount, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getRayTracingShaderGroupHandlesKHR( VULKAN_HPP_NAMESPACE::Pipeline pipeline, uint32_t firstGroup, uint32_t groupCount, size_t dataSize, void* pData, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename T, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type getRayTracingShaderGroupHandlesKHR( VULKAN_HPP_NAMESPACE::Pipeline pipeline, uint32_t firstGroup, uint32_t groupCount, ArrayProxy<T> const &data, Dispatch const &d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename T, typename Allocator = std::allocator<T>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<std::vector<T,Allocator>>::type getRayTracingShaderGroupHandlesKHR( VULKAN_HPP_NAMESPACE::Pipeline pipeline, uint32_t firstGroup, uint32_t groupCount, size_t dataSize, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename T, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<T>::type getRayTracingShaderGroupHandleKHR( VULKAN_HPP_NAMESPACE::Pipeline pipeline, uint32_t firstGroup, uint32_t groupCount, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getRayTracingShaderGroupHandlesNV( VULKAN_HPP_NAMESPACE::Pipeline pipeline, uint32_t firstGroup, uint32_t groupCount, size_t dataSize, void* pData, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename T, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type getRayTracingShaderGroupHandlesNV( VULKAN_HPP_NAMESPACE::Pipeline pipeline, uint32_t firstGroup, uint32_t groupCount, ArrayProxy<T> const &data, Dispatch const &d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename T, typename Allocator = std::allocator<T>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<std::vector<T,Allocator>>::type getRayTracingShaderGroupHandlesNV( VULKAN_HPP_NAMESPACE::Pipeline pipeline, uint32_t firstGroup, uint32_t groupCount, size_t dataSize, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename T, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<T>::type getRayTracingShaderGroupHandleNV( VULKAN_HPP_NAMESPACE::Pipeline pipeline, uint32_t firstGroup, uint32_t groupCount, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- DeviceSize getRayTracingShaderGroupStackSizeKHR( VULKAN_HPP_NAMESPACE::Pipeline pipeline, uint32_t group, VULKAN_HPP_NAMESPACE::ShaderGroupShaderKHR groupShader, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getRefreshCycleDurationGOOGLE( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain, VULKAN_HPP_NAMESPACE::RefreshCycleDurationGOOGLE* pDisplayTimingProperties, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::RefreshCycleDurationGOOGLE>::type getRefreshCycleDurationGOOGLE( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void getRenderAreaGranularity( VULKAN_HPP_NAMESPACE::RenderPass renderPass, VULKAN_HPP_NAMESPACE::Extent2D* pGranularity, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::Extent2D getRenderAreaGranularity( VULKAN_HPP_NAMESPACE::RenderPass renderPass, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getSemaphoreCounterValue( VULKAN_HPP_NAMESPACE::Semaphore semaphore, uint64_t* pValue, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<uint64_t>::type getSemaphoreCounterValue( VULKAN_HPP_NAMESPACE::Semaphore semaphore, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getSemaphoreCounterValueKHR( VULKAN_HPP_NAMESPACE::Semaphore semaphore, uint64_t* pValue, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<uint64_t>::type getSemaphoreCounterValueKHR( VULKAN_HPP_NAMESPACE::Semaphore semaphore, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getSemaphoreFdKHR( const VULKAN_HPP_NAMESPACE::SemaphoreGetFdInfoKHR* pGetFdInfo, int* pFd, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<int>::type getSemaphoreFdKHR( const SemaphoreGetFdInfoKHR & getFdInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getSemaphoreWin32HandleKHR( const VULKAN_HPP_NAMESPACE::SemaphoreGetWin32HandleInfoKHR* pGetWin32HandleInfo, HANDLE* pHandle, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<HANDLE>::type getSemaphoreWin32HandleKHR( const SemaphoreGetWin32HandleInfoKHR & getWin32HandleInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getShaderInfoAMD( VULKAN_HPP_NAMESPACE::Pipeline pipeline, VULKAN_HPP_NAMESPACE::ShaderStageFlagBits shaderStage, VULKAN_HPP_NAMESPACE::ShaderInfoTypeAMD infoType, size_t* pInfoSize, void* pInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Uint8_tAllocator = std::allocator<uint8_t>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<uint8_t, Uint8_tAllocator>>::type getShaderInfoAMD( VULKAN_HPP_NAMESPACE::Pipeline pipeline, VULKAN_HPP_NAMESPACE::ShaderStageFlagBits shaderStage, VULKAN_HPP_NAMESPACE::ShaderInfoTypeAMD infoType, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename Uint8_tAllocator = std::allocator<uint8_t>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename B = Uint8_tAllocator, typename std::enable_if<std::is_same<typename B::value_type, uint8_t>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<uint8_t, Uint8_tAllocator>>::type getShaderInfoAMD( VULKAN_HPP_NAMESPACE::Pipeline pipeline, VULKAN_HPP_NAMESPACE::ShaderStageFlagBits shaderStage, VULKAN_HPP_NAMESPACE::ShaderInfoTypeAMD infoType, Uint8_tAllocator & uint8_tAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getSwapchainCounterEXT( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain, VULKAN_HPP_NAMESPACE::SurfaceCounterFlagBitsEXT counter, uint64_t* pCounterValue, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<uint64_t>::type getSwapchainCounterEXT( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain, VULKAN_HPP_NAMESPACE::SurfaceCounterFlagBitsEXT counter, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getSwapchainImagesKHR( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain, uint32_t* pSwapchainImageCount, VULKAN_HPP_NAMESPACE::Image* pSwapchainImages, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename ImageAllocator = std::allocator<Image>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<Image, ImageAllocator>>::type getSwapchainImagesKHR( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename ImageAllocator = std::allocator<Image>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename B = ImageAllocator, typename std::enable_if<std::is_same<typename B::value_type, Image>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<Image, ImageAllocator>>::type getSwapchainImagesKHR( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain, ImageAllocator & imageAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getSwapchainStatusKHR( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#else
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getSwapchainStatusKHR( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getValidationCacheDataEXT( VULKAN_HPP_NAMESPACE::ValidationCacheEXT validationCache, size_t* pDataSize, void* pData, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Uint8_tAllocator = std::allocator<uint8_t>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<uint8_t, Uint8_tAllocator>>::type getValidationCacheDataEXT( VULKAN_HPP_NAMESPACE::ValidationCacheEXT validationCache, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename Uint8_tAllocator = std::allocator<uint8_t>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename B = Uint8_tAllocator, typename std::enable_if<std::is_same<typename B::value_type, uint8_t>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<uint8_t, Uint8_tAllocator>>::type getValidationCacheDataEXT( VULKAN_HPP_NAMESPACE::ValidationCacheEXT validationCache, Uint8_tAllocator & uint8_tAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result importFenceFdKHR( const VULKAN_HPP_NAMESPACE::ImportFenceFdInfoKHR* pImportFenceFdInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type importFenceFdKHR( const ImportFenceFdInfoKHR & importFenceFdInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result importFenceWin32HandleKHR( const VULKAN_HPP_NAMESPACE::ImportFenceWin32HandleInfoKHR* pImportFenceWin32HandleInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type importFenceWin32HandleKHR( const ImportFenceWin32HandleInfoKHR & importFenceWin32HandleInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result importSemaphoreFdKHR( const VULKAN_HPP_NAMESPACE::ImportSemaphoreFdInfoKHR* pImportSemaphoreFdInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type importSemaphoreFdKHR( const ImportSemaphoreFdInfoKHR & importSemaphoreFdInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result importSemaphoreWin32HandleKHR( const VULKAN_HPP_NAMESPACE::ImportSemaphoreWin32HandleInfoKHR* pImportSemaphoreWin32HandleInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type importSemaphoreWin32HandleKHR( const ImportSemaphoreWin32HandleInfoKHR & importSemaphoreWin32HandleInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result initializePerformanceApiINTEL( const VULKAN_HPP_NAMESPACE::InitializePerformanceApiInfoINTEL* pInitializeInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type initializePerformanceApiINTEL( const InitializePerformanceApiInfoINTEL & initializeInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result invalidateMappedMemoryRanges( uint32_t memoryRangeCount, const VULKAN_HPP_NAMESPACE::MappedMemoryRange* pMemoryRanges, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type invalidateMappedMemoryRanges( ArrayProxy<const VULKAN_HPP_NAMESPACE::MappedMemoryRange> const & memoryRanges, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result mapMemory( VULKAN_HPP_NAMESPACE::DeviceMemory memory, VULKAN_HPP_NAMESPACE::DeviceSize offset, VULKAN_HPP_NAMESPACE::DeviceSize size, VULKAN_HPP_NAMESPACE::MemoryMapFlags flags, void** ppData, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void*>::type mapMemory( VULKAN_HPP_NAMESPACE::DeviceMemory memory, VULKAN_HPP_NAMESPACE::DeviceSize offset, VULKAN_HPP_NAMESPACE::DeviceSize size, VULKAN_HPP_NAMESPACE::MemoryMapFlags flags VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result mergePipelineCaches( VULKAN_HPP_NAMESPACE::PipelineCache dstCache, uint32_t srcCacheCount, const VULKAN_HPP_NAMESPACE::PipelineCache* pSrcCaches, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type mergePipelineCaches( VULKAN_HPP_NAMESPACE::PipelineCache dstCache, ArrayProxy<const VULKAN_HPP_NAMESPACE::PipelineCache> const & srcCaches, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result mergeValidationCachesEXT( VULKAN_HPP_NAMESPACE::ValidationCacheEXT dstCache, uint32_t srcCacheCount, const VULKAN_HPP_NAMESPACE::ValidationCacheEXT* pSrcCaches, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type mergeValidationCachesEXT( VULKAN_HPP_NAMESPACE::ValidationCacheEXT dstCache, ArrayProxy<const VULKAN_HPP_NAMESPACE::ValidationCacheEXT> const & srcCaches, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result registerEventEXT( const VULKAN_HPP_NAMESPACE::DeviceEventInfoEXT* pDeviceEventInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::Fence* pFence, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- typename ResultValueType<VULKAN_HPP_NAMESPACE::Fence>::type registerEventEXT( const DeviceEventInfoEXT & deviceEventInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::Fence, Dispatch>>::type registerEventEXTUnique( const DeviceEventInfoEXT & deviceEventInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result registerDisplayEventEXT( VULKAN_HPP_NAMESPACE::DisplayKHR display, const VULKAN_HPP_NAMESPACE::DisplayEventInfoEXT* pDisplayEventInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::Fence* pFence, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- typename ResultValueType<VULKAN_HPP_NAMESPACE::Fence>::type registerDisplayEventEXT( VULKAN_HPP_NAMESPACE::DisplayKHR display, const DisplayEventInfoEXT & displayEventInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::Fence, Dispatch>>::type registerDisplayEventEXTUnique( VULKAN_HPP_NAMESPACE::DisplayKHR display, const DisplayEventInfoEXT & displayEventInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
-#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result releaseFullScreenExclusiveModeEXT( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#else
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type releaseFullScreenExclusiveModeEXT( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-
-
-
-#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result releasePerformanceConfigurationINTEL( VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL configuration, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#else
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type releasePerformanceConfigurationINTEL( VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL configuration VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-
-#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result release( VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL configuration, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#else
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type release( VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL configuration, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void releaseProfilingLockKHR( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
-#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result resetCommandPool( VULKAN_HPP_NAMESPACE::CommandPool commandPool, VULKAN_HPP_NAMESPACE::CommandPoolResetFlags flags, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#else
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- typename ResultValueType<void>::type resetCommandPool( VULKAN_HPP_NAMESPACE::CommandPool commandPool, VULKAN_HPP_NAMESPACE::CommandPoolResetFlags flags VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-
-#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- Result resetDescriptorPool( VULKAN_HPP_NAMESPACE::DescriptorPool descriptorPool, VULKAN_HPP_NAMESPACE::DescriptorPoolResetFlags flags, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#else
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- typename ResultValueType<void>::type resetDescriptorPool( VULKAN_HPP_NAMESPACE::DescriptorPool descriptorPool, VULKAN_HPP_NAMESPACE::DescriptorPoolResetFlags flags VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-
-#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result resetEvent( VULKAN_HPP_NAMESPACE::Event event, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#else
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- typename ResultValueType<void>::type resetEvent( VULKAN_HPP_NAMESPACE::Event event, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result resetFences( uint32_t fenceCount, const VULKAN_HPP_NAMESPACE::Fence* pFences, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- typename ResultValueType<void>::type resetFences( ArrayProxy<const VULKAN_HPP_NAMESPACE::Fence> const & fences, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void resetQueryPool( VULKAN_HPP_NAMESPACE::QueryPool queryPool, uint32_t firstQuery, uint32_t queryCount, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void resetQueryPoolEXT( VULKAN_HPP_NAMESPACE::QueryPool queryPool, uint32_t firstQuery, uint32_t queryCount, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result setDebugUtilsObjectNameEXT( const VULKAN_HPP_NAMESPACE::DebugUtilsObjectNameInfoEXT* pNameInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type setDebugUtilsObjectNameEXT( const DebugUtilsObjectNameInfoEXT & nameInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result setDebugUtilsObjectTagEXT( const VULKAN_HPP_NAMESPACE::DebugUtilsObjectTagInfoEXT* pTagInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type setDebugUtilsObjectTagEXT( const DebugUtilsObjectTagInfoEXT & tagInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result setEvent( VULKAN_HPP_NAMESPACE::Event event, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#else
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type setEvent( VULKAN_HPP_NAMESPACE::Event event, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void setHdrMetadataEXT( uint32_t swapchainCount, const VULKAN_HPP_NAMESPACE::SwapchainKHR* pSwapchains, const VULKAN_HPP_NAMESPACE::HdrMetadataEXT* pMetadata, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void setHdrMetadataEXT( ArrayProxy<const VULKAN_HPP_NAMESPACE::SwapchainKHR> const & swapchains, ArrayProxy<const VULKAN_HPP_NAMESPACE::HdrMetadataEXT> const & metadata, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void setLocalDimmingAMD( VULKAN_HPP_NAMESPACE::SwapchainKHR swapChain, VULKAN_HPP_NAMESPACE::Bool32 localDimmingEnable, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
-#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result setPrivateDataEXT( VULKAN_HPP_NAMESPACE::ObjectType objectType, uint64_t objectHandle, VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT privateDataSlot, uint64_t data, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#else
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- typename ResultValueType<void>::type setPrivateDataEXT( VULKAN_HPP_NAMESPACE::ObjectType objectType, uint64_t objectHandle, VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT privateDataSlot, uint64_t data, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result signalSemaphore( const VULKAN_HPP_NAMESPACE::SemaphoreSignalInfo* pSignalInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type signalSemaphore( const SemaphoreSignalInfo & signalInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result signalSemaphoreKHR( const VULKAN_HPP_NAMESPACE::SemaphoreSignalInfo* pSignalInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type signalSemaphoreKHR( const SemaphoreSignalInfo & signalInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void trimCommandPool( VULKAN_HPP_NAMESPACE::CommandPool commandPool, VULKAN_HPP_NAMESPACE::CommandPoolTrimFlags flags, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void trimCommandPoolKHR( VULKAN_HPP_NAMESPACE::CommandPool commandPool, VULKAN_HPP_NAMESPACE::CommandPoolTrimFlags flags, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void uninitializePerformanceApiINTEL( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void unmapMemory( VULKAN_HPP_NAMESPACE::DeviceMemory memory, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void updateDescriptorSetWithTemplate( VULKAN_HPP_NAMESPACE::DescriptorSet descriptorSet, VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate descriptorUpdateTemplate, const void* pData, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void updateDescriptorSetWithTemplateKHR( VULKAN_HPP_NAMESPACE::DescriptorSet descriptorSet, VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate descriptorUpdateTemplate, const void* pData, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void updateDescriptorSets( uint32_t descriptorWriteCount, const VULKAN_HPP_NAMESPACE::WriteDescriptorSet* pDescriptorWrites, uint32_t descriptorCopyCount, const VULKAN_HPP_NAMESPACE::CopyDescriptorSet* pDescriptorCopies, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void updateDescriptorSets( ArrayProxy<const VULKAN_HPP_NAMESPACE::WriteDescriptorSet> const & descriptorWrites, ArrayProxy<const VULKAN_HPP_NAMESPACE::CopyDescriptorSet> const & descriptorCopies, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result waitForFences( uint32_t fenceCount, const VULKAN_HPP_NAMESPACE::Fence* pFences, VULKAN_HPP_NAMESPACE::Bool32 waitAll, uint64_t timeout, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result waitForFences( ArrayProxy<const VULKAN_HPP_NAMESPACE::Fence> const & fences, VULKAN_HPP_NAMESPACE::Bool32 waitAll, uint64_t timeout, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result waitSemaphores( const VULKAN_HPP_NAMESPACE::SemaphoreWaitInfo* pWaitInfo, uint64_t timeout, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result waitSemaphores( const SemaphoreWaitInfo & waitInfo, uint64_t timeout, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result waitSemaphoresKHR( const VULKAN_HPP_NAMESPACE::SemaphoreWaitInfo* pWaitInfo, uint64_t timeout, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result waitSemaphoresKHR( const SemaphoreWaitInfo & waitInfo, uint64_t timeout, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result writeAccelerationStructuresPropertiesKHR( uint32_t accelerationStructureCount, const VULKAN_HPP_NAMESPACE::AccelerationStructureKHR* pAccelerationStructures, VULKAN_HPP_NAMESPACE::QueryType queryType, size_t dataSize, void* pData, size_t stride, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename T, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type writeAccelerationStructuresPropertiesKHR( ArrayProxy<const VULKAN_HPP_NAMESPACE::AccelerationStructureKHR> const &accelerationStructures, VULKAN_HPP_NAMESPACE::QueryType queryType, ArrayProxy<T> const &data, size_t stride, Dispatch const &d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename T, typename Allocator = std::allocator<T>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<std::vector<T,Allocator>>::type writeAccelerationStructuresPropertiesKHR( ArrayProxy<const VULKAN_HPP_NAMESPACE::AccelerationStructureKHR> const & accelerationStructures, VULKAN_HPP_NAMESPACE::QueryType queryType, size_t dataSize, size_t stride, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename T, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<T>::type writeAccelerationStructuresPropertyKHR( ArrayProxy<const VULKAN_HPP_NAMESPACE::AccelerationStructureKHR> const & accelerationStructures, VULKAN_HPP_NAMESPACE::QueryType queryType, size_t stride, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- VULKAN_HPP_TYPESAFE_EXPLICIT operator VkDevice() const VULKAN_HPP_NOEXCEPT
+ enum
{
- return m_device;
- }
-
- explicit operator bool() const VULKAN_HPP_NOEXCEPT
- {
- return m_device != VK_NULL_HANDLE;
- }
-
- bool operator!() const VULKAN_HPP_NOEXCEPT
- {
- return m_device == VK_NULL_HANDLE;
- }
-
- private:
- VkDevice m_device;
- };
- static_assert( sizeof( VULKAN_HPP_NAMESPACE::Device ) == sizeof( VkDevice ), "handle and wrapper have different size!" );
-
- template <>
- struct VULKAN_HPP_DEPRECATED("vk::cpp_type is deprecated. Use vk::CppType instead.") cpp_type<ObjectType::eDevice>
- {
- using type = VULKAN_HPP_NAMESPACE::Device;
- };
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eDevice>
- {
- using Type = VULKAN_HPP_NAMESPACE::Device;
- };
-
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT, VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eDevice>
- {
- using Type = VULKAN_HPP_NAMESPACE::Device;
+ value = true
+ };
};
-
-
template <>
- struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::Device>
- {
- static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
- };
-
- struct DisplayModeParametersKHR
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DisplayModeParametersKHR(VULKAN_HPP_NAMESPACE::Extent2D visibleRegion_ = {}, uint32_t refreshRate_ = {}) VULKAN_HPP_NOEXCEPT
- : visibleRegion( visibleRegion_ ), refreshRate( refreshRate_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DisplayModeParametersKHR( DisplayModeParametersKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DisplayModeParametersKHR( VkDisplayModeParametersKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DisplayModeParametersKHR & operator=( VkDisplayModeParametersKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DisplayModeParametersKHR const *>( &rhs );
- return *this;
- }
-
- DisplayModeParametersKHR & operator=( DisplayModeParametersKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DisplayModeParametersKHR ) );
- return *this;
- }
-
- DisplayModeParametersKHR & setVisibleRegion( VULKAN_HPP_NAMESPACE::Extent2D const & visibleRegion_ ) VULKAN_HPP_NOEXCEPT
- {
- visibleRegion = visibleRegion_;
- return *this;
- }
-
- DisplayModeParametersKHR & setRefreshRate( uint32_t refreshRate_ ) VULKAN_HPP_NOEXCEPT
- {
- refreshRate = refreshRate_;
- return *this;
- }
-
-
- operator VkDisplayModeParametersKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDisplayModeParametersKHR*>( this );
- }
-
- operator VkDisplayModeParametersKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDisplayModeParametersKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DisplayModeParametersKHR const& ) const = default;
-#else
- bool operator==( DisplayModeParametersKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( visibleRegion == rhs.visibleRegion )
- && ( refreshRate == rhs.refreshRate );
- }
-
- bool operator!=( DisplayModeParametersKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::Extent2D visibleRegion = {};
- uint32_t refreshRate = {};
-
- };
- static_assert( sizeof( DisplayModeParametersKHR ) == sizeof( VkDisplayModeParametersKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DisplayModeParametersKHR>::value, "struct wrapper is not a standard layout!" );
-
- struct DisplayModeCreateInfoKHR
+ struct StructExtends<PhysicalDeviceImagelessFramebufferFeatures, DeviceCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDisplayModeCreateInfoKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DisplayModeCreateInfoKHR(VULKAN_HPP_NAMESPACE::DisplayModeCreateFlagsKHR flags_ = {}, VULKAN_HPP_NAMESPACE::DisplayModeParametersKHR parameters_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), parameters( parameters_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DisplayModeCreateInfoKHR( DisplayModeCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DisplayModeCreateInfoKHR( VkDisplayModeCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DisplayModeCreateInfoKHR & operator=( VkDisplayModeCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DisplayModeCreateInfoKHR const *>( &rhs );
- return *this;
- }
-
- DisplayModeCreateInfoKHR & operator=( DisplayModeCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DisplayModeCreateInfoKHR ) );
- return *this;
- }
-
- DisplayModeCreateInfoKHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- DisplayModeCreateInfoKHR & setFlags( VULKAN_HPP_NAMESPACE::DisplayModeCreateFlagsKHR flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- DisplayModeCreateInfoKHR & setParameters( VULKAN_HPP_NAMESPACE::DisplayModeParametersKHR const & parameters_ ) VULKAN_HPP_NOEXCEPT
- {
- parameters = parameters_;
- return *this;
- }
-
-
- operator VkDisplayModeCreateInfoKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDisplayModeCreateInfoKHR*>( this );
- }
-
- operator VkDisplayModeCreateInfoKHR &() VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<VkDisplayModeCreateInfoKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DisplayModeCreateInfoKHR const& ) const = default;
-#else
- bool operator==( DisplayModeCreateInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( parameters == rhs.parameters );
- }
-
- bool operator!=( DisplayModeCreateInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDisplayModeCreateInfoKHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::DisplayModeCreateFlagsKHR flags = {};
- VULKAN_HPP_NAMESPACE::DisplayModeParametersKHR parameters = {};
-
+ value = true
+ };
};
- static_assert( sizeof( DisplayModeCreateInfoKHR ) == sizeof( VkDisplayModeCreateInfoKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DisplayModeCreateInfoKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eDisplayModeCreateInfoKHR>
+ struct StructExtends<PhysicalDeviceIndexTypeUint8FeaturesEXT, PhysicalDeviceFeatures2>
{
- using Type = DisplayModeCreateInfoKHR;
- };
-
- class DisplayModeKHR
- {
- public:
- using CType = VkDisplayModeKHR;
-
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::eDisplayModeKHR;
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType = VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eDisplayModeKHR;
-
- public:
- VULKAN_HPP_CONSTEXPR DisplayModeKHR() VULKAN_HPP_NOEXCEPT
- : m_displayModeKHR(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_CONSTEXPR DisplayModeKHR( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- : m_displayModeKHR(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_TYPESAFE_EXPLICIT DisplayModeKHR( VkDisplayModeKHR displayModeKHR ) VULKAN_HPP_NOEXCEPT
- : m_displayModeKHR( displayModeKHR )
- {}
-
-#if defined(VULKAN_HPP_TYPESAFE_CONVERSION)
- DisplayModeKHR & operator=(VkDisplayModeKHR displayModeKHR) VULKAN_HPP_NOEXCEPT
- {
- m_displayModeKHR = displayModeKHR;
- return *this;
- }
-#endif
-
- DisplayModeKHR & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- {
- m_displayModeKHR = VK_NULL_HANDLE;
- return *this;
- }
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DisplayModeKHR const& ) const = default;
-#else
- bool operator==( DisplayModeKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_displayModeKHR == rhs.m_displayModeKHR;
- }
-
- bool operator!=(DisplayModeKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return m_displayModeKHR != rhs.m_displayModeKHR;
- }
-
- bool operator<(DisplayModeKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_displayModeKHR < rhs.m_displayModeKHR;
- }
-#endif
-
- VULKAN_HPP_TYPESAFE_EXPLICIT operator VkDisplayModeKHR() const VULKAN_HPP_NOEXCEPT
- {
- return m_displayModeKHR;
- }
-
- explicit operator bool() const VULKAN_HPP_NOEXCEPT
- {
- return m_displayModeKHR != VK_NULL_HANDLE;
- }
-
- bool operator!() const VULKAN_HPP_NOEXCEPT
- {
- return m_displayModeKHR == VK_NULL_HANDLE;
- }
-
- private:
- VkDisplayModeKHR m_displayModeKHR;
- };
- static_assert( sizeof( VULKAN_HPP_NAMESPACE::DisplayModeKHR ) == sizeof( VkDisplayModeKHR ), "handle and wrapper have different size!" );
-
- template <>
- struct VULKAN_HPP_DEPRECATED("vk::cpp_type is deprecated. Use vk::CppType instead.") cpp_type<ObjectType::eDisplayModeKHR>
- {
- using type = VULKAN_HPP_NAMESPACE::DisplayModeKHR;
- };
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eDisplayModeKHR>
- {
- using Type = VULKAN_HPP_NAMESPACE::DisplayModeKHR;
- };
-
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT, VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eDisplayModeKHR>
- {
- using Type = VULKAN_HPP_NAMESPACE::DisplayModeKHR;
+ value = true
+ };
};
-
-
template <>
- struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::DisplayModeKHR>
+ struct StructExtends<PhysicalDeviceIndexTypeUint8FeaturesEXT, DeviceCreateInfo>
{
- static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
- };
-
- struct ExtensionProperties
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR_14 ExtensionProperties(std::array<char,VK_MAX_EXTENSION_NAME_SIZE> const& extensionName_ = {}, uint32_t specVersion_ = {}) VULKAN_HPP_NOEXCEPT
- : extensionName( extensionName_ ), specVersion( specVersion_ )
- {}
-
- VULKAN_HPP_CONSTEXPR_14 ExtensionProperties( ExtensionProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ExtensionProperties( VkExtensionProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ExtensionProperties & operator=( VkExtensionProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ExtensionProperties const *>( &rhs );
- return *this;
- }
-
- ExtensionProperties & operator=( ExtensionProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ExtensionProperties ) );
- return *this;
- }
-
-
- operator VkExtensionProperties const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkExtensionProperties*>( this );
- }
-
- operator VkExtensionProperties &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkExtensionProperties*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ExtensionProperties const& ) const = default;
-#else
- bool operator==( ExtensionProperties const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( extensionName == rhs.extensionName )
- && ( specVersion == rhs.specVersion );
- }
-
- bool operator!=( ExtensionProperties const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_EXTENSION_NAME_SIZE> extensionName = {};
- uint32_t specVersion = {};
-
- };
- static_assert( sizeof( ExtensionProperties ) == sizeof( VkExtensionProperties ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ExtensionProperties>::value, "struct wrapper is not a standard layout!" );
-
- struct LayerProperties
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR_14 LayerProperties(std::array<char,VK_MAX_EXTENSION_NAME_SIZE> const& layerName_ = {}, uint32_t specVersion_ = {}, uint32_t implementationVersion_ = {}, std::array<char,VK_MAX_DESCRIPTION_SIZE> const& description_ = {}) VULKAN_HPP_NOEXCEPT
- : layerName( layerName_ ), specVersion( specVersion_ ), implementationVersion( implementationVersion_ ), description( description_ )
- {}
-
- VULKAN_HPP_CONSTEXPR_14 LayerProperties( LayerProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- LayerProperties( VkLayerProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- LayerProperties & operator=( VkLayerProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::LayerProperties const *>( &rhs );
- return *this;
- }
-
- LayerProperties & operator=( LayerProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- memcpy( static_cast<void *>( this ), &rhs, sizeof( LayerProperties ) );
- return *this;
- }
-
-
- operator VkLayerProperties const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkLayerProperties*>( this );
- }
-
- operator VkLayerProperties &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkLayerProperties*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( LayerProperties const& ) const = default;
-#else
- bool operator==( LayerProperties const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( layerName == rhs.layerName )
- && ( specVersion == rhs.specVersion )
- && ( implementationVersion == rhs.implementationVersion )
- && ( description == rhs.description );
- }
-
- bool operator!=( LayerProperties const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_EXTENSION_NAME_SIZE> layerName = {};
- uint32_t specVersion = {};
- uint32_t implementationVersion = {};
- VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DESCRIPTION_SIZE> description = {};
-
- };
- static_assert( sizeof( LayerProperties ) == sizeof( VkLayerProperties ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<LayerProperties>::value, "struct wrapper is not a standard layout!" );
-
- struct PerformanceCounterKHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePerformanceCounterKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR_14 PerformanceCounterKHR(VULKAN_HPP_NAMESPACE::PerformanceCounterUnitKHR unit_ = VULKAN_HPP_NAMESPACE::PerformanceCounterUnitKHR::eGeneric, VULKAN_HPP_NAMESPACE::PerformanceCounterScopeKHR scope_ = VULKAN_HPP_NAMESPACE::PerformanceCounterScopeKHR::eCommandBuffer, VULKAN_HPP_NAMESPACE::PerformanceCounterStorageKHR storage_ = VULKAN_HPP_NAMESPACE::PerformanceCounterStorageKHR::eInt32, std::array<uint8_t,VK_UUID_SIZE> const& uuid_ = {}) VULKAN_HPP_NOEXCEPT
- : unit( unit_ ), scope( scope_ ), storage( storage_ ), uuid( uuid_ )
- {}
-
- VULKAN_HPP_CONSTEXPR_14 PerformanceCounterKHR( PerformanceCounterKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PerformanceCounterKHR( VkPerformanceCounterKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PerformanceCounterKHR & operator=( VkPerformanceCounterKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PerformanceCounterKHR const *>( &rhs );
- return *this;
- }
-
- PerformanceCounterKHR & operator=( PerformanceCounterKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PerformanceCounterKHR ) );
- return *this;
- }
-
-
- operator VkPerformanceCounterKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPerformanceCounterKHR*>( this );
- }
-
- operator VkPerformanceCounterKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPerformanceCounterKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PerformanceCounterKHR const& ) const = default;
-#else
- bool operator==( PerformanceCounterKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( unit == rhs.unit )
- && ( scope == rhs.scope )
- && ( storage == rhs.storage )
- && ( uuid == rhs.uuid );
- }
-
- bool operator!=( PerformanceCounterKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePerformanceCounterKHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::PerformanceCounterUnitKHR unit = VULKAN_HPP_NAMESPACE::PerformanceCounterUnitKHR::eGeneric;
- VULKAN_HPP_NAMESPACE::PerformanceCounterScopeKHR scope = VULKAN_HPP_NAMESPACE::PerformanceCounterScopeKHR::eCommandBuffer;
- VULKAN_HPP_NAMESPACE::PerformanceCounterStorageKHR storage = VULKAN_HPP_NAMESPACE::PerformanceCounterStorageKHR::eInt32;
- VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, VK_UUID_SIZE> uuid = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PerformanceCounterKHR ) == sizeof( VkPerformanceCounterKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PerformanceCounterKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePerformanceCounterKHR>
+ struct StructExtends<PhysicalDeviceInheritedViewportScissorFeaturesNV, PhysicalDeviceFeatures2>
{
- using Type = PerformanceCounterKHR;
- };
-
- struct PerformanceCounterDescriptionKHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePerformanceCounterDescriptionKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR_14 PerformanceCounterDescriptionKHR(VULKAN_HPP_NAMESPACE::PerformanceCounterDescriptionFlagsKHR flags_ = {}, std::array<char,VK_MAX_DESCRIPTION_SIZE> const& name_ = {}, std::array<char,VK_MAX_DESCRIPTION_SIZE> const& category_ = {}, std::array<char,VK_MAX_DESCRIPTION_SIZE> const& description_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), name( name_ ), category( category_ ), description( description_ )
- {}
-
- VULKAN_HPP_CONSTEXPR_14 PerformanceCounterDescriptionKHR( PerformanceCounterDescriptionKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PerformanceCounterDescriptionKHR( VkPerformanceCounterDescriptionKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PerformanceCounterDescriptionKHR & operator=( VkPerformanceCounterDescriptionKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PerformanceCounterDescriptionKHR const *>( &rhs );
- return *this;
- }
-
- PerformanceCounterDescriptionKHR & operator=( PerformanceCounterDescriptionKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PerformanceCounterDescriptionKHR ) );
- return *this;
- }
-
-
- operator VkPerformanceCounterDescriptionKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPerformanceCounterDescriptionKHR*>( this );
- }
-
- operator VkPerformanceCounterDescriptionKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPerformanceCounterDescriptionKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PerformanceCounterDescriptionKHR const& ) const = default;
-#else
- bool operator==( PerformanceCounterDescriptionKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( name == rhs.name )
- && ( category == rhs.category )
- && ( description == rhs.description );
- }
-
- bool operator!=( PerformanceCounterDescriptionKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePerformanceCounterDescriptionKHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::PerformanceCounterDescriptionFlagsKHR flags = {};
- VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DESCRIPTION_SIZE> name = {};
- VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DESCRIPTION_SIZE> category = {};
- VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DESCRIPTION_SIZE> description = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PerformanceCounterDescriptionKHR ) == sizeof( VkPerformanceCounterDescriptionKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PerformanceCounterDescriptionKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePerformanceCounterDescriptionKHR>
- {
- using Type = PerformanceCounterDescriptionKHR;
- };
-
- struct DisplayModePropertiesKHR
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DisplayModePropertiesKHR(VULKAN_HPP_NAMESPACE::DisplayModeKHR displayMode_ = {}, VULKAN_HPP_NAMESPACE::DisplayModeParametersKHR parameters_ = {}) VULKAN_HPP_NOEXCEPT
- : displayMode( displayMode_ ), parameters( parameters_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DisplayModePropertiesKHR( DisplayModePropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DisplayModePropertiesKHR( VkDisplayModePropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DisplayModePropertiesKHR & operator=( VkDisplayModePropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DisplayModePropertiesKHR const *>( &rhs );
- return *this;
- }
-
- DisplayModePropertiesKHR & operator=( DisplayModePropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DisplayModePropertiesKHR ) );
- return *this;
- }
-
-
- operator VkDisplayModePropertiesKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDisplayModePropertiesKHR*>( this );
- }
-
- operator VkDisplayModePropertiesKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDisplayModePropertiesKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DisplayModePropertiesKHR const& ) const = default;
-#else
- bool operator==( DisplayModePropertiesKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( displayMode == rhs.displayMode )
- && ( parameters == rhs.parameters );
- }
-
- bool operator!=( DisplayModePropertiesKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::DisplayModeKHR displayMode = {};
- VULKAN_HPP_NAMESPACE::DisplayModeParametersKHR parameters = {};
-
- };
- static_assert( sizeof( DisplayModePropertiesKHR ) == sizeof( VkDisplayModePropertiesKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DisplayModePropertiesKHR>::value, "struct wrapper is not a standard layout!" );
-
- struct DisplayModeProperties2KHR
+ struct StructExtends<PhysicalDeviceInheritedViewportScissorFeaturesNV, DeviceCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDisplayModeProperties2KHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DisplayModeProperties2KHR(VULKAN_HPP_NAMESPACE::DisplayModePropertiesKHR displayModeProperties_ = {}) VULKAN_HPP_NOEXCEPT
- : displayModeProperties( displayModeProperties_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DisplayModeProperties2KHR( DisplayModeProperties2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DisplayModeProperties2KHR( VkDisplayModeProperties2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DisplayModeProperties2KHR & operator=( VkDisplayModeProperties2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DisplayModeProperties2KHR const *>( &rhs );
- return *this;
- }
-
- DisplayModeProperties2KHR & operator=( DisplayModeProperties2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DisplayModeProperties2KHR ) );
- return *this;
- }
-
-
- operator VkDisplayModeProperties2KHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDisplayModeProperties2KHR*>( this );
- }
-
- operator VkDisplayModeProperties2KHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDisplayModeProperties2KHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DisplayModeProperties2KHR const& ) const = default;
-#else
- bool operator==( DisplayModeProperties2KHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( displayModeProperties == rhs.displayModeProperties );
- }
-
- bool operator!=( DisplayModeProperties2KHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDisplayModeProperties2KHR;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::DisplayModePropertiesKHR displayModeProperties = {};
-
+ value = true
+ };
};
- static_assert( sizeof( DisplayModeProperties2KHR ) == sizeof( VkDisplayModeProperties2KHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DisplayModeProperties2KHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eDisplayModeProperties2KHR>
- {
- using Type = DisplayModeProperties2KHR;
- };
-
- struct DisplayPlaneInfo2KHR
+ struct StructExtends<PhysicalDeviceInlineUniformBlockFeaturesEXT, PhysicalDeviceFeatures2>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDisplayPlaneInfo2KHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DisplayPlaneInfo2KHR(VULKAN_HPP_NAMESPACE::DisplayModeKHR mode_ = {}, uint32_t planeIndex_ = {}) VULKAN_HPP_NOEXCEPT
- : mode( mode_ ), planeIndex( planeIndex_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DisplayPlaneInfo2KHR( DisplayPlaneInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DisplayPlaneInfo2KHR( VkDisplayPlaneInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DisplayPlaneInfo2KHR & operator=( VkDisplayPlaneInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DisplayPlaneInfo2KHR const *>( &rhs );
- return *this;
- }
-
- DisplayPlaneInfo2KHR & operator=( DisplayPlaneInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DisplayPlaneInfo2KHR ) );
- return *this;
- }
-
- DisplayPlaneInfo2KHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- DisplayPlaneInfo2KHR & setMode( VULKAN_HPP_NAMESPACE::DisplayModeKHR mode_ ) VULKAN_HPP_NOEXCEPT
- {
- mode = mode_;
- return *this;
- }
-
- DisplayPlaneInfo2KHR & setPlaneIndex( uint32_t planeIndex_ ) VULKAN_HPP_NOEXCEPT
- {
- planeIndex = planeIndex_;
- return *this;
- }
-
-
- operator VkDisplayPlaneInfo2KHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDisplayPlaneInfo2KHR*>( this );
- }
-
- operator VkDisplayPlaneInfo2KHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDisplayPlaneInfo2KHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DisplayPlaneInfo2KHR const& ) const = default;
-#else
- bool operator==( DisplayPlaneInfo2KHR const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( mode == rhs.mode )
- && ( planeIndex == rhs.planeIndex );
- }
-
- bool operator!=( DisplayPlaneInfo2KHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDisplayPlaneInfo2KHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::DisplayModeKHR mode = {};
- uint32_t planeIndex = {};
-
+ value = true
+ };
};
- static_assert( sizeof( DisplayPlaneInfo2KHR ) == sizeof( VkDisplayPlaneInfo2KHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DisplayPlaneInfo2KHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eDisplayPlaneInfo2KHR>
- {
- using Type = DisplayPlaneInfo2KHR;
- };
-
- struct DisplayPlaneCapabilitiesKHR
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DisplayPlaneCapabilitiesKHR(VULKAN_HPP_NAMESPACE::DisplayPlaneAlphaFlagsKHR supportedAlpha_ = {}, VULKAN_HPP_NAMESPACE::Offset2D minSrcPosition_ = {}, VULKAN_HPP_NAMESPACE::Offset2D maxSrcPosition_ = {}, VULKAN_HPP_NAMESPACE::Extent2D minSrcExtent_ = {}, VULKAN_HPP_NAMESPACE::Extent2D maxSrcExtent_ = {}, VULKAN_HPP_NAMESPACE::Offset2D minDstPosition_ = {}, VULKAN_HPP_NAMESPACE::Offset2D maxDstPosition_ = {}, VULKAN_HPP_NAMESPACE::Extent2D minDstExtent_ = {}, VULKAN_HPP_NAMESPACE::Extent2D maxDstExtent_ = {}) VULKAN_HPP_NOEXCEPT
- : supportedAlpha( supportedAlpha_ ), minSrcPosition( minSrcPosition_ ), maxSrcPosition( maxSrcPosition_ ), minSrcExtent( minSrcExtent_ ), maxSrcExtent( maxSrcExtent_ ), minDstPosition( minDstPosition_ ), maxDstPosition( maxDstPosition_ ), minDstExtent( minDstExtent_ ), maxDstExtent( maxDstExtent_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DisplayPlaneCapabilitiesKHR( DisplayPlaneCapabilitiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DisplayPlaneCapabilitiesKHR( VkDisplayPlaneCapabilitiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DisplayPlaneCapabilitiesKHR & operator=( VkDisplayPlaneCapabilitiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DisplayPlaneCapabilitiesKHR const *>( &rhs );
- return *this;
- }
-
- DisplayPlaneCapabilitiesKHR & operator=( DisplayPlaneCapabilitiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DisplayPlaneCapabilitiesKHR ) );
- return *this;
- }
-
-
- operator VkDisplayPlaneCapabilitiesKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDisplayPlaneCapabilitiesKHR*>( this );
- }
-
- operator VkDisplayPlaneCapabilitiesKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDisplayPlaneCapabilitiesKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DisplayPlaneCapabilitiesKHR const& ) const = default;
-#else
- bool operator==( DisplayPlaneCapabilitiesKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( supportedAlpha == rhs.supportedAlpha )
- && ( minSrcPosition == rhs.minSrcPosition )
- && ( maxSrcPosition == rhs.maxSrcPosition )
- && ( minSrcExtent == rhs.minSrcExtent )
- && ( maxSrcExtent == rhs.maxSrcExtent )
- && ( minDstPosition == rhs.minDstPosition )
- && ( maxDstPosition == rhs.maxDstPosition )
- && ( minDstExtent == rhs.minDstExtent )
- && ( maxDstExtent == rhs.maxDstExtent );
- }
-
- bool operator!=( DisplayPlaneCapabilitiesKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::DisplayPlaneAlphaFlagsKHR supportedAlpha = {};
- VULKAN_HPP_NAMESPACE::Offset2D minSrcPosition = {};
- VULKAN_HPP_NAMESPACE::Offset2D maxSrcPosition = {};
- VULKAN_HPP_NAMESPACE::Extent2D minSrcExtent = {};
- VULKAN_HPP_NAMESPACE::Extent2D maxSrcExtent = {};
- VULKAN_HPP_NAMESPACE::Offset2D minDstPosition = {};
- VULKAN_HPP_NAMESPACE::Offset2D maxDstPosition = {};
- VULKAN_HPP_NAMESPACE::Extent2D minDstExtent = {};
- VULKAN_HPP_NAMESPACE::Extent2D maxDstExtent = {};
-
- };
- static_assert( sizeof( DisplayPlaneCapabilitiesKHR ) == sizeof( VkDisplayPlaneCapabilitiesKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DisplayPlaneCapabilitiesKHR>::value, "struct wrapper is not a standard layout!" );
-
- struct DisplayPlaneCapabilities2KHR
+ struct StructExtends<PhysicalDeviceInlineUniformBlockFeaturesEXT, DeviceCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDisplayPlaneCapabilities2KHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DisplayPlaneCapabilities2KHR(VULKAN_HPP_NAMESPACE::DisplayPlaneCapabilitiesKHR capabilities_ = {}) VULKAN_HPP_NOEXCEPT
- : capabilities( capabilities_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DisplayPlaneCapabilities2KHR( DisplayPlaneCapabilities2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DisplayPlaneCapabilities2KHR( VkDisplayPlaneCapabilities2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DisplayPlaneCapabilities2KHR & operator=( VkDisplayPlaneCapabilities2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DisplayPlaneCapabilities2KHR const *>( &rhs );
- return *this;
- }
-
- DisplayPlaneCapabilities2KHR & operator=( DisplayPlaneCapabilities2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DisplayPlaneCapabilities2KHR ) );
- return *this;
- }
-
-
- operator VkDisplayPlaneCapabilities2KHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDisplayPlaneCapabilities2KHR*>( this );
- }
-
- operator VkDisplayPlaneCapabilities2KHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDisplayPlaneCapabilities2KHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DisplayPlaneCapabilities2KHR const& ) const = default;
-#else
- bool operator==( DisplayPlaneCapabilities2KHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( capabilities == rhs.capabilities );
- }
-
- bool operator!=( DisplayPlaneCapabilities2KHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDisplayPlaneCapabilities2KHR;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::DisplayPlaneCapabilitiesKHR capabilities = {};
-
+ value = true
+ };
};
- static_assert( sizeof( DisplayPlaneCapabilities2KHR ) == sizeof( VkDisplayPlaneCapabilities2KHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DisplayPlaneCapabilities2KHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eDisplayPlaneCapabilities2KHR>
+ struct StructExtends<PhysicalDeviceInlineUniformBlockPropertiesEXT, PhysicalDeviceProperties2>
{
- using Type = DisplayPlaneCapabilities2KHR;
- };
-
- struct DisplayPlanePropertiesKHR
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DisplayPlanePropertiesKHR(VULKAN_HPP_NAMESPACE::DisplayKHR currentDisplay_ = {}, uint32_t currentStackIndex_ = {}) VULKAN_HPP_NOEXCEPT
- : currentDisplay( currentDisplay_ ), currentStackIndex( currentStackIndex_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DisplayPlanePropertiesKHR( DisplayPlanePropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DisplayPlanePropertiesKHR( VkDisplayPlanePropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DisplayPlanePropertiesKHR & operator=( VkDisplayPlanePropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DisplayPlanePropertiesKHR const *>( &rhs );
- return *this;
- }
-
- DisplayPlanePropertiesKHR & operator=( DisplayPlanePropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DisplayPlanePropertiesKHR ) );
- return *this;
- }
-
-
- operator VkDisplayPlanePropertiesKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDisplayPlanePropertiesKHR*>( this );
- }
-
- operator VkDisplayPlanePropertiesKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDisplayPlanePropertiesKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DisplayPlanePropertiesKHR const& ) const = default;
-#else
- bool operator==( DisplayPlanePropertiesKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( currentDisplay == rhs.currentDisplay )
- && ( currentStackIndex == rhs.currentStackIndex );
- }
-
- bool operator!=( DisplayPlanePropertiesKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::DisplayKHR currentDisplay = {};
- uint32_t currentStackIndex = {};
-
- };
- static_assert( sizeof( DisplayPlanePropertiesKHR ) == sizeof( VkDisplayPlanePropertiesKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DisplayPlanePropertiesKHR>::value, "struct wrapper is not a standard layout!" );
-
- struct DisplayPlaneProperties2KHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDisplayPlaneProperties2KHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DisplayPlaneProperties2KHR(VULKAN_HPP_NAMESPACE::DisplayPlanePropertiesKHR displayPlaneProperties_ = {}) VULKAN_HPP_NOEXCEPT
- : displayPlaneProperties( displayPlaneProperties_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DisplayPlaneProperties2KHR( DisplayPlaneProperties2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DisplayPlaneProperties2KHR( VkDisplayPlaneProperties2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DisplayPlaneProperties2KHR & operator=( VkDisplayPlaneProperties2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DisplayPlaneProperties2KHR const *>( &rhs );
- return *this;
- }
-
- DisplayPlaneProperties2KHR & operator=( DisplayPlaneProperties2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DisplayPlaneProperties2KHR ) );
- return *this;
- }
-
-
- operator VkDisplayPlaneProperties2KHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDisplayPlaneProperties2KHR*>( this );
- }
-
- operator VkDisplayPlaneProperties2KHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDisplayPlaneProperties2KHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DisplayPlaneProperties2KHR const& ) const = default;
-#else
- bool operator==( DisplayPlaneProperties2KHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( displayPlaneProperties == rhs.displayPlaneProperties );
- }
-
- bool operator!=( DisplayPlaneProperties2KHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDisplayPlaneProperties2KHR;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::DisplayPlanePropertiesKHR displayPlaneProperties = {};
-
+ value = true
+ };
};
- static_assert( sizeof( DisplayPlaneProperties2KHR ) == sizeof( VkDisplayPlaneProperties2KHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DisplayPlaneProperties2KHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eDisplayPlaneProperties2KHR>
- {
- using Type = DisplayPlaneProperties2KHR;
- };
-
- struct DisplayPropertiesKHR
+ struct StructExtends<PhysicalDeviceLineRasterizationFeaturesEXT, PhysicalDeviceFeatures2>
{
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DisplayPropertiesKHR(VULKAN_HPP_NAMESPACE::DisplayKHR display_ = {}, const char* displayName_ = {}, VULKAN_HPP_NAMESPACE::Extent2D physicalDimensions_ = {}, VULKAN_HPP_NAMESPACE::Extent2D physicalResolution_ = {}, VULKAN_HPP_NAMESPACE::SurfaceTransformFlagsKHR supportedTransforms_ = {}, VULKAN_HPP_NAMESPACE::Bool32 planeReorderPossible_ = {}, VULKAN_HPP_NAMESPACE::Bool32 persistentContent_ = {}) VULKAN_HPP_NOEXCEPT
- : display( display_ ), displayName( displayName_ ), physicalDimensions( physicalDimensions_ ), physicalResolution( physicalResolution_ ), supportedTransforms( supportedTransforms_ ), planeReorderPossible( planeReorderPossible_ ), persistentContent( persistentContent_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DisplayPropertiesKHR( DisplayPropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DisplayPropertiesKHR( VkDisplayPropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DisplayPropertiesKHR & operator=( VkDisplayPropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DisplayPropertiesKHR const *>( &rhs );
- return *this;
- }
-
- DisplayPropertiesKHR & operator=( DisplayPropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DisplayPropertiesKHR ) );
- return *this;
- }
-
-
- operator VkDisplayPropertiesKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDisplayPropertiesKHR*>( this );
- }
-
- operator VkDisplayPropertiesKHR &() VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<VkDisplayPropertiesKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DisplayPropertiesKHR const& ) const = default;
-#else
- bool operator==( DisplayPropertiesKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( display == rhs.display )
- && ( displayName == rhs.displayName )
- && ( physicalDimensions == rhs.physicalDimensions )
- && ( physicalResolution == rhs.physicalResolution )
- && ( supportedTransforms == rhs.supportedTransforms )
- && ( planeReorderPossible == rhs.planeReorderPossible )
- && ( persistentContent == rhs.persistentContent );
- }
-
- bool operator!=( DisplayPropertiesKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::DisplayKHR display = {};
- const char* displayName = {};
- VULKAN_HPP_NAMESPACE::Extent2D physicalDimensions = {};
- VULKAN_HPP_NAMESPACE::Extent2D physicalResolution = {};
- VULKAN_HPP_NAMESPACE::SurfaceTransformFlagsKHR supportedTransforms = {};
- VULKAN_HPP_NAMESPACE::Bool32 planeReorderPossible = {};
- VULKAN_HPP_NAMESPACE::Bool32 persistentContent = {};
-
- };
- static_assert( sizeof( DisplayPropertiesKHR ) == sizeof( VkDisplayPropertiesKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DisplayPropertiesKHR>::value, "struct wrapper is not a standard layout!" );
-
- struct DisplayProperties2KHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDisplayProperties2KHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DisplayProperties2KHR(VULKAN_HPP_NAMESPACE::DisplayPropertiesKHR displayProperties_ = {}) VULKAN_HPP_NOEXCEPT
- : displayProperties( displayProperties_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DisplayProperties2KHR( DisplayProperties2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DisplayProperties2KHR( VkDisplayProperties2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DisplayProperties2KHR & operator=( VkDisplayProperties2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DisplayProperties2KHR const *>( &rhs );
- return *this;
- }
-
- DisplayProperties2KHR & operator=( DisplayProperties2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DisplayProperties2KHR ) );
- return *this;
- }
-
-
- operator VkDisplayProperties2KHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDisplayProperties2KHR*>( this );
- }
-
- operator VkDisplayProperties2KHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDisplayProperties2KHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DisplayProperties2KHR const& ) const = default;
-#else
- bool operator==( DisplayProperties2KHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( displayProperties == rhs.displayProperties );
- }
-
- bool operator!=( DisplayProperties2KHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDisplayProperties2KHR;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::DisplayPropertiesKHR displayProperties = {};
-
+ value = true
+ };
};
- static_assert( sizeof( DisplayProperties2KHR ) == sizeof( VkDisplayProperties2KHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DisplayProperties2KHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eDisplayProperties2KHR>
+ struct StructExtends<PhysicalDeviceLineRasterizationFeaturesEXT, DeviceCreateInfo>
{
- using Type = DisplayProperties2KHR;
- };
-
- struct PhysicalDeviceExternalBufferInfo
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceExternalBufferInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceExternalBufferInfo(VULKAN_HPP_NAMESPACE::BufferCreateFlags flags_ = {}, VULKAN_HPP_NAMESPACE::BufferUsageFlags usage_ = {}, VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType_ = VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits::eOpaqueFd) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), usage( usage_ ), handleType( handleType_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceExternalBufferInfo( PhysicalDeviceExternalBufferInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceExternalBufferInfo( VkPhysicalDeviceExternalBufferInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceExternalBufferInfo & operator=( VkPhysicalDeviceExternalBufferInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceExternalBufferInfo const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceExternalBufferInfo & operator=( PhysicalDeviceExternalBufferInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceExternalBufferInfo ) );
- return *this;
- }
-
- PhysicalDeviceExternalBufferInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceExternalBufferInfo & setFlags( VULKAN_HPP_NAMESPACE::BufferCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- PhysicalDeviceExternalBufferInfo & setUsage( VULKAN_HPP_NAMESPACE::BufferUsageFlags usage_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- usage = usage_;
- return *this;
- }
-
- PhysicalDeviceExternalBufferInfo & setHandleType( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType_ ) VULKAN_HPP_NOEXCEPT
- {
- handleType = handleType_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceExternalBufferInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceExternalBufferInfo*>( this );
- }
-
- operator VkPhysicalDeviceExternalBufferInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceExternalBufferInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceExternalBufferInfo const& ) const = default;
-#else
- bool operator==( PhysicalDeviceExternalBufferInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( usage == rhs.usage )
- && ( handleType == rhs.handleType );
- }
-
- bool operator!=( PhysicalDeviceExternalBufferInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceExternalBufferInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::BufferCreateFlags flags = {};
- VULKAN_HPP_NAMESPACE::BufferUsageFlags usage = {};
- VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType = VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits::eOpaqueFd;
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceExternalBufferInfo ) == sizeof( VkPhysicalDeviceExternalBufferInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceExternalBufferInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceExternalBufferInfo>
- {
- using Type = PhysicalDeviceExternalBufferInfo;
- };
- using PhysicalDeviceExternalBufferInfoKHR = PhysicalDeviceExternalBufferInfo;
-
- struct ExternalMemoryProperties
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ExternalMemoryProperties(VULKAN_HPP_NAMESPACE::ExternalMemoryFeatureFlags externalMemoryFeatures_ = {}, VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlags exportFromImportedHandleTypes_ = {}, VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlags compatibleHandleTypes_ = {}) VULKAN_HPP_NOEXCEPT
- : externalMemoryFeatures( externalMemoryFeatures_ ), exportFromImportedHandleTypes( exportFromImportedHandleTypes_ ), compatibleHandleTypes( compatibleHandleTypes_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ExternalMemoryProperties( ExternalMemoryProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ExternalMemoryProperties( VkExternalMemoryProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ExternalMemoryProperties & operator=( VkExternalMemoryProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ExternalMemoryProperties const *>( &rhs );
- return *this;
- }
-
- ExternalMemoryProperties & operator=( ExternalMemoryProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ExternalMemoryProperties ) );
- return *this;
- }
-
-
- operator VkExternalMemoryProperties const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkExternalMemoryProperties*>( this );
- }
-
- operator VkExternalMemoryProperties &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkExternalMemoryProperties*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ExternalMemoryProperties const& ) const = default;
-#else
- bool operator==( ExternalMemoryProperties const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( externalMemoryFeatures == rhs.externalMemoryFeatures )
- && ( exportFromImportedHandleTypes == rhs.exportFromImportedHandleTypes )
- && ( compatibleHandleTypes == rhs.compatibleHandleTypes );
- }
-
- bool operator!=( ExternalMemoryProperties const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::ExternalMemoryFeatureFlags externalMemoryFeatures = {};
- VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlags exportFromImportedHandleTypes = {};
- VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlags compatibleHandleTypes = {};
-
- };
- static_assert( sizeof( ExternalMemoryProperties ) == sizeof( VkExternalMemoryProperties ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ExternalMemoryProperties>::value, "struct wrapper is not a standard layout!" );
- using ExternalMemoryPropertiesKHR = ExternalMemoryProperties;
-
- struct ExternalBufferProperties
+ struct StructExtends<PhysicalDeviceLineRasterizationPropertiesEXT, PhysicalDeviceProperties2>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eExternalBufferProperties;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ExternalBufferProperties(VULKAN_HPP_NAMESPACE::ExternalMemoryProperties externalMemoryProperties_ = {}) VULKAN_HPP_NOEXCEPT
- : externalMemoryProperties( externalMemoryProperties_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ExternalBufferProperties( ExternalBufferProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ExternalBufferProperties( VkExternalBufferProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ExternalBufferProperties & operator=( VkExternalBufferProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ExternalBufferProperties const *>( &rhs );
- return *this;
- }
-
- ExternalBufferProperties & operator=( ExternalBufferProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ExternalBufferProperties ) );
- return *this;
- }
-
-
- operator VkExternalBufferProperties const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkExternalBufferProperties*>( this );
- }
-
- operator VkExternalBufferProperties &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkExternalBufferProperties*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ExternalBufferProperties const& ) const = default;
-#else
- bool operator==( ExternalBufferProperties const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( externalMemoryProperties == rhs.externalMemoryProperties );
- }
-
- bool operator!=( ExternalBufferProperties const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eExternalBufferProperties;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::ExternalMemoryProperties externalMemoryProperties = {};
-
+ value = true
+ };
};
- static_assert( sizeof( ExternalBufferProperties ) == sizeof( VkExternalBufferProperties ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ExternalBufferProperties>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eExternalBufferProperties>
+ struct StructExtends<PhysicalDeviceMaintenance3Properties, PhysicalDeviceProperties2>
{
- using Type = ExternalBufferProperties;
- };
- using ExternalBufferPropertiesKHR = ExternalBufferProperties;
-
- struct PhysicalDeviceExternalFenceInfo
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceExternalFenceInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceExternalFenceInfo(VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits handleType_ = VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits::eOpaqueFd) VULKAN_HPP_NOEXCEPT
- : handleType( handleType_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceExternalFenceInfo( PhysicalDeviceExternalFenceInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceExternalFenceInfo( VkPhysicalDeviceExternalFenceInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceExternalFenceInfo & operator=( VkPhysicalDeviceExternalFenceInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceExternalFenceInfo const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceExternalFenceInfo & operator=( PhysicalDeviceExternalFenceInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceExternalFenceInfo ) );
- return *this;
- }
-
- PhysicalDeviceExternalFenceInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceExternalFenceInfo & setHandleType( VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits handleType_ ) VULKAN_HPP_NOEXCEPT
- {
- handleType = handleType_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceExternalFenceInfo const&() const VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<const VkPhysicalDeviceExternalFenceInfo*>( this );
- }
-
- operator VkPhysicalDeviceExternalFenceInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceExternalFenceInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceExternalFenceInfo const& ) const = default;
-#else
- bool operator==( PhysicalDeviceExternalFenceInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( handleType == rhs.handleType );
- }
-
- bool operator!=( PhysicalDeviceExternalFenceInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceExternalFenceInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits handleType = VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits::eOpaqueFd;
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceExternalFenceInfo ) == sizeof( VkPhysicalDeviceExternalFenceInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceExternalFenceInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceExternalFenceInfo>
+ struct StructExtends<PhysicalDeviceMemoryBudgetPropertiesEXT, PhysicalDeviceMemoryProperties2>
{
- using Type = PhysicalDeviceExternalFenceInfo;
- };
- using PhysicalDeviceExternalFenceInfoKHR = PhysicalDeviceExternalFenceInfo;
-
- struct ExternalFenceProperties
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eExternalFenceProperties;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ExternalFenceProperties(VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlags exportFromImportedHandleTypes_ = {}, VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlags compatibleHandleTypes_ = {}, VULKAN_HPP_NAMESPACE::ExternalFenceFeatureFlags externalFenceFeatures_ = {}) VULKAN_HPP_NOEXCEPT
- : exportFromImportedHandleTypes( exportFromImportedHandleTypes_ ), compatibleHandleTypes( compatibleHandleTypes_ ), externalFenceFeatures( externalFenceFeatures_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ExternalFenceProperties( ExternalFenceProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ExternalFenceProperties( VkExternalFenceProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ExternalFenceProperties & operator=( VkExternalFenceProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ExternalFenceProperties const *>( &rhs );
- return *this;
- }
-
- ExternalFenceProperties & operator=( ExternalFenceProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ExternalFenceProperties ) );
- return *this;
- }
-
-
- operator VkExternalFenceProperties const&() const VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<const VkExternalFenceProperties*>( this );
- }
-
- operator VkExternalFenceProperties &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkExternalFenceProperties*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ExternalFenceProperties const& ) const = default;
-#else
- bool operator==( ExternalFenceProperties const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( exportFromImportedHandleTypes == rhs.exportFromImportedHandleTypes )
- && ( compatibleHandleTypes == rhs.compatibleHandleTypes )
- && ( externalFenceFeatures == rhs.externalFenceFeatures );
- }
-
- bool operator!=( ExternalFenceProperties const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eExternalFenceProperties;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlags exportFromImportedHandleTypes = {};
- VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlags compatibleHandleTypes = {};
- VULKAN_HPP_NAMESPACE::ExternalFenceFeatureFlags externalFenceFeatures = {};
-
+ value = true
+ };
};
- static_assert( sizeof( ExternalFenceProperties ) == sizeof( VkExternalFenceProperties ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ExternalFenceProperties>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eExternalFenceProperties>
- {
- using Type = ExternalFenceProperties;
- };
- using ExternalFencePropertiesKHR = ExternalFenceProperties;
-
- struct ImageFormatProperties
+ struct StructExtends<PhysicalDeviceMemoryPriorityFeaturesEXT, PhysicalDeviceFeatures2>
{
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ImageFormatProperties(VULKAN_HPP_NAMESPACE::Extent3D maxExtent_ = {}, uint32_t maxMipLevels_ = {}, uint32_t maxArrayLayers_ = {}, VULKAN_HPP_NAMESPACE::SampleCountFlags sampleCounts_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize maxResourceSize_ = {}) VULKAN_HPP_NOEXCEPT
- : maxExtent( maxExtent_ ), maxMipLevels( maxMipLevels_ ), maxArrayLayers( maxArrayLayers_ ), sampleCounts( sampleCounts_ ), maxResourceSize( maxResourceSize_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ImageFormatProperties( ImageFormatProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ImageFormatProperties( VkImageFormatProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ImageFormatProperties & operator=( VkImageFormatProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageFormatProperties const *>( &rhs );
- return *this;
- }
-
- ImageFormatProperties & operator=( ImageFormatProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ImageFormatProperties ) );
- return *this;
- }
-
-
- operator VkImageFormatProperties const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkImageFormatProperties*>( this );
- }
-
- operator VkImageFormatProperties &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkImageFormatProperties*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ImageFormatProperties const& ) const = default;
-#else
- bool operator==( ImageFormatProperties const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( maxExtent == rhs.maxExtent )
- && ( maxMipLevels == rhs.maxMipLevels )
- && ( maxArrayLayers == rhs.maxArrayLayers )
- && ( sampleCounts == rhs.sampleCounts )
- && ( maxResourceSize == rhs.maxResourceSize );
- }
-
- bool operator!=( ImageFormatProperties const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::Extent3D maxExtent = {};
- uint32_t maxMipLevels = {};
- uint32_t maxArrayLayers = {};
- VULKAN_HPP_NAMESPACE::SampleCountFlags sampleCounts = {};
- VULKAN_HPP_NAMESPACE::DeviceSize maxResourceSize = {};
-
- };
- static_assert( sizeof( ImageFormatProperties ) == sizeof( VkImageFormatProperties ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ImageFormatProperties>::value, "struct wrapper is not a standard layout!" );
-
- struct ExternalImageFormatPropertiesNV
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ExternalImageFormatPropertiesNV(VULKAN_HPP_NAMESPACE::ImageFormatProperties imageFormatProperties_ = {}, VULKAN_HPP_NAMESPACE::ExternalMemoryFeatureFlagsNV externalMemoryFeatures_ = {}, VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV exportFromImportedHandleTypes_ = {}, VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV compatibleHandleTypes_ = {}) VULKAN_HPP_NOEXCEPT
- : imageFormatProperties( imageFormatProperties_ ), externalMemoryFeatures( externalMemoryFeatures_ ), exportFromImportedHandleTypes( exportFromImportedHandleTypes_ ), compatibleHandleTypes( compatibleHandleTypes_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ExternalImageFormatPropertiesNV( ExternalImageFormatPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ExternalImageFormatPropertiesNV( VkExternalImageFormatPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ExternalImageFormatPropertiesNV & operator=( VkExternalImageFormatPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ExternalImageFormatPropertiesNV const *>( &rhs );
- return *this;
- }
-
- ExternalImageFormatPropertiesNV & operator=( ExternalImageFormatPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ExternalImageFormatPropertiesNV ) );
- return *this;
- }
-
-
- operator VkExternalImageFormatPropertiesNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkExternalImageFormatPropertiesNV*>( this );
- }
-
- operator VkExternalImageFormatPropertiesNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkExternalImageFormatPropertiesNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ExternalImageFormatPropertiesNV const& ) const = default;
-#else
- bool operator==( ExternalImageFormatPropertiesNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( imageFormatProperties == rhs.imageFormatProperties )
- && ( externalMemoryFeatures == rhs.externalMemoryFeatures )
- && ( exportFromImportedHandleTypes == rhs.exportFromImportedHandleTypes )
- && ( compatibleHandleTypes == rhs.compatibleHandleTypes );
- }
-
- bool operator!=( ExternalImageFormatPropertiesNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::ImageFormatProperties imageFormatProperties = {};
- VULKAN_HPP_NAMESPACE::ExternalMemoryFeatureFlagsNV externalMemoryFeatures = {};
- VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV exportFromImportedHandleTypes = {};
- VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV compatibleHandleTypes = {};
-
- };
- static_assert( sizeof( ExternalImageFormatPropertiesNV ) == sizeof( VkExternalImageFormatPropertiesNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ExternalImageFormatPropertiesNV>::value, "struct wrapper is not a standard layout!" );
-
- struct PhysicalDeviceExternalSemaphoreInfo
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceExternalSemaphoreInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceExternalSemaphoreInfo(VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits handleType_ = VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits::eOpaqueFd) VULKAN_HPP_NOEXCEPT
- : handleType( handleType_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceExternalSemaphoreInfo( PhysicalDeviceExternalSemaphoreInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceExternalSemaphoreInfo( VkPhysicalDeviceExternalSemaphoreInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceExternalSemaphoreInfo & operator=( VkPhysicalDeviceExternalSemaphoreInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceExternalSemaphoreInfo const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceExternalSemaphoreInfo & operator=( PhysicalDeviceExternalSemaphoreInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceExternalSemaphoreInfo ) );
- return *this;
- }
-
- PhysicalDeviceExternalSemaphoreInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceExternalSemaphoreInfo & setHandleType( VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits handleType_ ) VULKAN_HPP_NOEXCEPT
- {
- handleType = handleType_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceExternalSemaphoreInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceExternalSemaphoreInfo*>( this );
- }
-
- operator VkPhysicalDeviceExternalSemaphoreInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceExternalSemaphoreInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceExternalSemaphoreInfo const& ) const = default;
-#else
- bool operator==( PhysicalDeviceExternalSemaphoreInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( handleType == rhs.handleType );
- }
-
- bool operator!=( PhysicalDeviceExternalSemaphoreInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceExternalSemaphoreInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits handleType = VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits::eOpaqueFd;
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceExternalSemaphoreInfo ) == sizeof( VkPhysicalDeviceExternalSemaphoreInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceExternalSemaphoreInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceExternalSemaphoreInfo>
+ struct StructExtends<PhysicalDeviceMemoryPriorityFeaturesEXT, DeviceCreateInfo>
{
- using Type = PhysicalDeviceExternalSemaphoreInfo;
- };
- using PhysicalDeviceExternalSemaphoreInfoKHR = PhysicalDeviceExternalSemaphoreInfo;
-
- struct ExternalSemaphoreProperties
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eExternalSemaphoreProperties;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ExternalSemaphoreProperties(VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlags exportFromImportedHandleTypes_ = {}, VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlags compatibleHandleTypes_ = {}, VULKAN_HPP_NAMESPACE::ExternalSemaphoreFeatureFlags externalSemaphoreFeatures_ = {}) VULKAN_HPP_NOEXCEPT
- : exportFromImportedHandleTypes( exportFromImportedHandleTypes_ ), compatibleHandleTypes( compatibleHandleTypes_ ), externalSemaphoreFeatures( externalSemaphoreFeatures_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ExternalSemaphoreProperties( ExternalSemaphoreProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ExternalSemaphoreProperties( VkExternalSemaphoreProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ExternalSemaphoreProperties & operator=( VkExternalSemaphoreProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ExternalSemaphoreProperties const *>( &rhs );
- return *this;
- }
-
- ExternalSemaphoreProperties & operator=( ExternalSemaphoreProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ExternalSemaphoreProperties ) );
- return *this;
- }
-
-
- operator VkExternalSemaphoreProperties const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkExternalSemaphoreProperties*>( this );
- }
-
- operator VkExternalSemaphoreProperties &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkExternalSemaphoreProperties*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ExternalSemaphoreProperties const& ) const = default;
-#else
- bool operator==( ExternalSemaphoreProperties const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( exportFromImportedHandleTypes == rhs.exportFromImportedHandleTypes )
- && ( compatibleHandleTypes == rhs.compatibleHandleTypes )
- && ( externalSemaphoreFeatures == rhs.externalSemaphoreFeatures );
- }
-
- bool operator!=( ExternalSemaphoreProperties const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eExternalSemaphoreProperties;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlags exportFromImportedHandleTypes = {};
- VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlags compatibleHandleTypes = {};
- VULKAN_HPP_NAMESPACE::ExternalSemaphoreFeatureFlags externalSemaphoreFeatures = {};
-
+ value = true
+ };
};
- static_assert( sizeof( ExternalSemaphoreProperties ) == sizeof( VkExternalSemaphoreProperties ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ExternalSemaphoreProperties>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eExternalSemaphoreProperties>
+ struct StructExtends<PhysicalDeviceMeshShaderFeaturesNV, PhysicalDeviceFeatures2>
{
- using Type = ExternalSemaphoreProperties;
- };
- using ExternalSemaphorePropertiesKHR = ExternalSemaphoreProperties;
-
- struct PhysicalDeviceFeatures2
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceFeatures2;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceFeatures2(VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures features_ = {}) VULKAN_HPP_NOEXCEPT
- : features( features_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceFeatures2( PhysicalDeviceFeatures2 const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceFeatures2( VkPhysicalDeviceFeatures2 const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceFeatures2 & operator=( VkPhysicalDeviceFeatures2 const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures2 const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceFeatures2 & operator=( PhysicalDeviceFeatures2 const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceFeatures2 ) );
- return *this;
- }
-
- PhysicalDeviceFeatures2 & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceFeatures2 & setFeatures( VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures const & features_ ) VULKAN_HPP_NOEXCEPT
- {
- features = features_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceFeatures2 const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceFeatures2*>( this );
- }
-
- operator VkPhysicalDeviceFeatures2 &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceFeatures2*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceFeatures2 const& ) const = default;
-#else
- bool operator==( PhysicalDeviceFeatures2 const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( features == rhs.features );
- }
-
- bool operator!=( PhysicalDeviceFeatures2 const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceFeatures2;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures features = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceFeatures2 ) == sizeof( VkPhysicalDeviceFeatures2 ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceFeatures2>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceFeatures2>
- {
- using Type = PhysicalDeviceFeatures2;
- };
- using PhysicalDeviceFeatures2KHR = PhysicalDeviceFeatures2;
-
- struct FormatProperties
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR FormatProperties(VULKAN_HPP_NAMESPACE::FormatFeatureFlags linearTilingFeatures_ = {}, VULKAN_HPP_NAMESPACE::FormatFeatureFlags optimalTilingFeatures_ = {}, VULKAN_HPP_NAMESPACE::FormatFeatureFlags bufferFeatures_ = {}) VULKAN_HPP_NOEXCEPT
- : linearTilingFeatures( linearTilingFeatures_ ), optimalTilingFeatures( optimalTilingFeatures_ ), bufferFeatures( bufferFeatures_ )
- {}
-
- VULKAN_HPP_CONSTEXPR FormatProperties( FormatProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- FormatProperties( VkFormatProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- FormatProperties & operator=( VkFormatProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::FormatProperties const *>( &rhs );
- return *this;
- }
-
- FormatProperties & operator=( FormatProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( FormatProperties ) );
- return *this;
- }
-
-
- operator VkFormatProperties const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkFormatProperties*>( this );
- }
-
- operator VkFormatProperties &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkFormatProperties*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( FormatProperties const& ) const = default;
-#else
- bool operator==( FormatProperties const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( linearTilingFeatures == rhs.linearTilingFeatures )
- && ( optimalTilingFeatures == rhs.optimalTilingFeatures )
- && ( bufferFeatures == rhs.bufferFeatures );
- }
-
- bool operator!=( FormatProperties const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::FormatFeatureFlags linearTilingFeatures = {};
- VULKAN_HPP_NAMESPACE::FormatFeatureFlags optimalTilingFeatures = {};
- VULKAN_HPP_NAMESPACE::FormatFeatureFlags bufferFeatures = {};
-
- };
- static_assert( sizeof( FormatProperties ) == sizeof( VkFormatProperties ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<FormatProperties>::value, "struct wrapper is not a standard layout!" );
-
- struct FormatProperties2
+ struct StructExtends<PhysicalDeviceMeshShaderFeaturesNV, DeviceCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eFormatProperties2;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR FormatProperties2(VULKAN_HPP_NAMESPACE::FormatProperties formatProperties_ = {}) VULKAN_HPP_NOEXCEPT
- : formatProperties( formatProperties_ )
- {}
-
- VULKAN_HPP_CONSTEXPR FormatProperties2( FormatProperties2 const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- FormatProperties2( VkFormatProperties2 const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- FormatProperties2 & operator=( VkFormatProperties2 const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::FormatProperties2 const *>( &rhs );
- return *this;
- }
-
- FormatProperties2 & operator=( FormatProperties2 const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- memcpy( static_cast<void *>( this ), &rhs, sizeof( FormatProperties2 ) );
- return *this;
- }
-
-
- operator VkFormatProperties2 const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkFormatProperties2*>( this );
- }
-
- operator VkFormatProperties2 &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkFormatProperties2*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( FormatProperties2 const& ) const = default;
-#else
- bool operator==( FormatProperties2 const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( formatProperties == rhs.formatProperties );
- }
-
- bool operator!=( FormatProperties2 const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eFormatProperties2;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::FormatProperties formatProperties = {};
-
+ value = true
+ };
};
- static_assert( sizeof( FormatProperties2 ) == sizeof( VkFormatProperties2 ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<FormatProperties2>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eFormatProperties2>
- {
- using Type = FormatProperties2;
- };
- using FormatProperties2KHR = FormatProperties2;
-
- struct PhysicalDeviceFragmentShadingRateKHR
+ struct StructExtends<PhysicalDeviceMeshShaderPropertiesNV, PhysicalDeviceProperties2>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceFragmentShadingRateKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentShadingRateKHR(VULKAN_HPP_NAMESPACE::SampleCountFlags sampleCounts_ = {}, VULKAN_HPP_NAMESPACE::Extent2D fragmentSize_ = {}) VULKAN_HPP_NOEXCEPT
- : sampleCounts( sampleCounts_ ), fragmentSize( fragmentSize_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentShadingRateKHR( PhysicalDeviceFragmentShadingRateKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceFragmentShadingRateKHR( VkPhysicalDeviceFragmentShadingRateKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceFragmentShadingRateKHR & operator=( VkPhysicalDeviceFragmentShadingRateKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentShadingRateKHR const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceFragmentShadingRateKHR & operator=( PhysicalDeviceFragmentShadingRateKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceFragmentShadingRateKHR ) );
- return *this;
- }
-
-
- operator VkPhysicalDeviceFragmentShadingRateKHR const&() const VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<const VkPhysicalDeviceFragmentShadingRateKHR*>( this );
- }
-
- operator VkPhysicalDeviceFragmentShadingRateKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceFragmentShadingRateKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceFragmentShadingRateKHR const& ) const = default;
-#else
- bool operator==( PhysicalDeviceFragmentShadingRateKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( sampleCounts == rhs.sampleCounts )
- && ( fragmentSize == rhs.fragmentSize );
- }
-
- bool operator!=( PhysicalDeviceFragmentShadingRateKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceFragmentShadingRateKHR;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::SampleCountFlags sampleCounts = {};
- VULKAN_HPP_NAMESPACE::Extent2D fragmentSize = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceFragmentShadingRateKHR ) == sizeof( VkPhysicalDeviceFragmentShadingRateKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceFragmentShadingRateKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceFragmentShadingRateKHR>
+ struct StructExtends<PhysicalDeviceMultiDrawFeaturesEXT, PhysicalDeviceFeatures2>
{
- using Type = PhysicalDeviceFragmentShadingRateKHR;
- };
-
- struct PhysicalDeviceImageFormatInfo2
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceImageFormatInfo2;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceImageFormatInfo2(VULKAN_HPP_NAMESPACE::Format format_ = VULKAN_HPP_NAMESPACE::Format::eUndefined, VULKAN_HPP_NAMESPACE::ImageType type_ = VULKAN_HPP_NAMESPACE::ImageType::e1D, VULKAN_HPP_NAMESPACE::ImageTiling tiling_ = VULKAN_HPP_NAMESPACE::ImageTiling::eOptimal, VULKAN_HPP_NAMESPACE::ImageUsageFlags usage_ = {}, VULKAN_HPP_NAMESPACE::ImageCreateFlags flags_ = {}) VULKAN_HPP_NOEXCEPT
- : format( format_ ), type( type_ ), tiling( tiling_ ), usage( usage_ ), flags( flags_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceImageFormatInfo2( PhysicalDeviceImageFormatInfo2 const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceImageFormatInfo2( VkPhysicalDeviceImageFormatInfo2 const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceImageFormatInfo2 & operator=( VkPhysicalDeviceImageFormatInfo2 const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceImageFormatInfo2 const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceImageFormatInfo2 & operator=( PhysicalDeviceImageFormatInfo2 const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceImageFormatInfo2 ) );
- return *this;
- }
-
- PhysicalDeviceImageFormatInfo2 & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceImageFormatInfo2 & setFormat( VULKAN_HPP_NAMESPACE::Format format_ ) VULKAN_HPP_NOEXCEPT
- {
- format = format_;
- return *this;
- }
-
- PhysicalDeviceImageFormatInfo2 & setType( VULKAN_HPP_NAMESPACE::ImageType type_ ) VULKAN_HPP_NOEXCEPT
- {
- type = type_;
- return *this;
- }
-
- PhysicalDeviceImageFormatInfo2 & setTiling( VULKAN_HPP_NAMESPACE::ImageTiling tiling_ ) VULKAN_HPP_NOEXCEPT
- {
- tiling = tiling_;
- return *this;
- }
-
- PhysicalDeviceImageFormatInfo2 & setUsage( VULKAN_HPP_NAMESPACE::ImageUsageFlags usage_ ) VULKAN_HPP_NOEXCEPT
- {
- usage = usage_;
- return *this;
- }
-
- PhysicalDeviceImageFormatInfo2 & setFlags( VULKAN_HPP_NAMESPACE::ImageCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceImageFormatInfo2 const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceImageFormatInfo2*>( this );
- }
-
- operator VkPhysicalDeviceImageFormatInfo2 &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceImageFormatInfo2*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceImageFormatInfo2 const& ) const = default;
-#else
- bool operator==( PhysicalDeviceImageFormatInfo2 const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( format == rhs.format )
- && ( type == rhs.type )
- && ( tiling == rhs.tiling )
- && ( usage == rhs.usage )
- && ( flags == rhs.flags );
- }
-
- bool operator!=( PhysicalDeviceImageFormatInfo2 const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceImageFormatInfo2;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::Format format = VULKAN_HPP_NAMESPACE::Format::eUndefined;
- VULKAN_HPP_NAMESPACE::ImageType type = VULKAN_HPP_NAMESPACE::ImageType::e1D;
- VULKAN_HPP_NAMESPACE::ImageTiling tiling = VULKAN_HPP_NAMESPACE::ImageTiling::eOptimal;
- VULKAN_HPP_NAMESPACE::ImageUsageFlags usage = {};
- VULKAN_HPP_NAMESPACE::ImageCreateFlags flags = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceImageFormatInfo2 ) == sizeof( VkPhysicalDeviceImageFormatInfo2 ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceImageFormatInfo2>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceImageFormatInfo2>
- {
- using Type = PhysicalDeviceImageFormatInfo2;
- };
- using PhysicalDeviceImageFormatInfo2KHR = PhysicalDeviceImageFormatInfo2;
-
- struct ImageFormatProperties2
+ struct StructExtends<PhysicalDeviceMultiDrawFeaturesEXT, DeviceCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImageFormatProperties2;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ImageFormatProperties2(VULKAN_HPP_NAMESPACE::ImageFormatProperties imageFormatProperties_ = {}) VULKAN_HPP_NOEXCEPT
- : imageFormatProperties( imageFormatProperties_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ImageFormatProperties2( ImageFormatProperties2 const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ImageFormatProperties2( VkImageFormatProperties2 const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ImageFormatProperties2 & operator=( VkImageFormatProperties2 const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageFormatProperties2 const *>( &rhs );
- return *this;
- }
-
- ImageFormatProperties2 & operator=( ImageFormatProperties2 const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ImageFormatProperties2 ) );
- return *this;
- }
-
-
- operator VkImageFormatProperties2 const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkImageFormatProperties2*>( this );
- }
-
- operator VkImageFormatProperties2 &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkImageFormatProperties2*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ImageFormatProperties2 const& ) const = default;
-#else
- bool operator==( ImageFormatProperties2 const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( imageFormatProperties == rhs.imageFormatProperties );
- }
-
- bool operator!=( ImageFormatProperties2 const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageFormatProperties2;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::ImageFormatProperties imageFormatProperties = {};
-
+ value = true
+ };
};
- static_assert( sizeof( ImageFormatProperties2 ) == sizeof( VkImageFormatProperties2 ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ImageFormatProperties2>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eImageFormatProperties2>
- {
- using Type = ImageFormatProperties2;
- };
- using ImageFormatProperties2KHR = ImageFormatProperties2;
-
- struct MemoryType
+ struct StructExtends<PhysicalDeviceMultiDrawPropertiesEXT, PhysicalDeviceProperties2>
{
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR MemoryType(VULKAN_HPP_NAMESPACE::MemoryPropertyFlags propertyFlags_ = {}, uint32_t heapIndex_ = {}) VULKAN_HPP_NOEXCEPT
- : propertyFlags( propertyFlags_ ), heapIndex( heapIndex_ )
- {}
-
- VULKAN_HPP_CONSTEXPR MemoryType( MemoryType const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- MemoryType( VkMemoryType const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- MemoryType & operator=( VkMemoryType const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MemoryType const *>( &rhs );
- return *this;
- }
-
- MemoryType & operator=( MemoryType const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( MemoryType ) );
- return *this;
- }
-
-
- operator VkMemoryType const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkMemoryType*>( this );
- }
-
- operator VkMemoryType &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkMemoryType*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( MemoryType const& ) const = default;
-#else
- bool operator==( MemoryType const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( propertyFlags == rhs.propertyFlags )
- && ( heapIndex == rhs.heapIndex );
- }
-
- bool operator!=( MemoryType const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::MemoryPropertyFlags propertyFlags = {};
- uint32_t heapIndex = {};
-
- };
- static_assert( sizeof( MemoryType ) == sizeof( VkMemoryType ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<MemoryType>::value, "struct wrapper is not a standard layout!" );
-
- struct MemoryHeap
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR MemoryHeap(VULKAN_HPP_NAMESPACE::DeviceSize size_ = {}, VULKAN_HPP_NAMESPACE::MemoryHeapFlags flags_ = {}) VULKAN_HPP_NOEXCEPT
- : size( size_ ), flags( flags_ )
- {}
-
- VULKAN_HPP_CONSTEXPR MemoryHeap( MemoryHeap const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- MemoryHeap( VkMemoryHeap const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- MemoryHeap & operator=( VkMemoryHeap const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MemoryHeap const *>( &rhs );
- return *this;
- }
-
- MemoryHeap & operator=( MemoryHeap const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( MemoryHeap ) );
- return *this;
- }
-
-
- operator VkMemoryHeap const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkMemoryHeap*>( this );
- }
-
- operator VkMemoryHeap &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkMemoryHeap*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( MemoryHeap const& ) const = default;
-#else
- bool operator==( MemoryHeap const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( size == rhs.size )
- && ( flags == rhs.flags );
- }
-
- bool operator!=( MemoryHeap const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::DeviceSize size = {};
- VULKAN_HPP_NAMESPACE::MemoryHeapFlags flags = {};
-
- };
- static_assert( sizeof( MemoryHeap ) == sizeof( VkMemoryHeap ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<MemoryHeap>::value, "struct wrapper is not a standard layout!" );
-
- struct PhysicalDeviceMemoryProperties
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceMemoryProperties(uint32_t memoryTypeCount_ = {}, std::array<VULKAN_HPP_NAMESPACE::MemoryType,VK_MAX_MEMORY_TYPES> const& memoryTypes_ = {}, uint32_t memoryHeapCount_ = {}, std::array<VULKAN_HPP_NAMESPACE::MemoryHeap,VK_MAX_MEMORY_HEAPS> const& memoryHeaps_ = {}) VULKAN_HPP_NOEXCEPT
- : memoryTypeCount( memoryTypeCount_ ), memoryTypes( memoryTypes_ ), memoryHeapCount( memoryHeapCount_ ), memoryHeaps( memoryHeaps_ )
- {}
-
- VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceMemoryProperties( PhysicalDeviceMemoryProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceMemoryProperties( VkPhysicalDeviceMemoryProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceMemoryProperties & operator=( VkPhysicalDeviceMemoryProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceMemoryProperties & operator=( PhysicalDeviceMemoryProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceMemoryProperties ) );
- return *this;
- }
-
-
- operator VkPhysicalDeviceMemoryProperties const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceMemoryProperties*>( this );
- }
-
- operator VkPhysicalDeviceMemoryProperties &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceMemoryProperties*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceMemoryProperties const& ) const = default;
-#else
- bool operator==( PhysicalDeviceMemoryProperties const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( memoryTypeCount == rhs.memoryTypeCount )
- && ( memoryTypes == rhs.memoryTypes )
- && ( memoryHeapCount == rhs.memoryHeapCount )
- && ( memoryHeaps == rhs.memoryHeaps );
- }
-
- bool operator!=( PhysicalDeviceMemoryProperties const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- uint32_t memoryTypeCount = {};
- VULKAN_HPP_NAMESPACE::ArrayWrapper1D<VULKAN_HPP_NAMESPACE::MemoryType, VK_MAX_MEMORY_TYPES> memoryTypes = {};
- uint32_t memoryHeapCount = {};
- VULKAN_HPP_NAMESPACE::ArrayWrapper1D<VULKAN_HPP_NAMESPACE::MemoryHeap, VK_MAX_MEMORY_HEAPS> memoryHeaps = {};
-
- };
- static_assert( sizeof( PhysicalDeviceMemoryProperties ) == sizeof( VkPhysicalDeviceMemoryProperties ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceMemoryProperties>::value, "struct wrapper is not a standard layout!" );
-
- struct PhysicalDeviceMemoryProperties2
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceMemoryProperties2;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceMemoryProperties2(VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties memoryProperties_ = {}) VULKAN_HPP_NOEXCEPT
- : memoryProperties( memoryProperties_ )
- {}
-
- VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceMemoryProperties2( PhysicalDeviceMemoryProperties2 const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceMemoryProperties2( VkPhysicalDeviceMemoryProperties2 const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceMemoryProperties2 & operator=( VkPhysicalDeviceMemoryProperties2 const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties2 const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceMemoryProperties2 & operator=( PhysicalDeviceMemoryProperties2 const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceMemoryProperties2 ) );
- return *this;
- }
-
-
- operator VkPhysicalDeviceMemoryProperties2 const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceMemoryProperties2*>( this );
- }
-
- operator VkPhysicalDeviceMemoryProperties2 &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceMemoryProperties2*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceMemoryProperties2 const& ) const = default;
-#else
- bool operator==( PhysicalDeviceMemoryProperties2 const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( memoryProperties == rhs.memoryProperties );
- }
-
- bool operator!=( PhysicalDeviceMemoryProperties2 const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceMemoryProperties2;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties memoryProperties = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceMemoryProperties2 ) == sizeof( VkPhysicalDeviceMemoryProperties2 ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceMemoryProperties2>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceMemoryProperties2>
+ struct StructExtends<PhysicalDeviceMultiviewFeatures, PhysicalDeviceFeatures2>
{
- using Type = PhysicalDeviceMemoryProperties2;
- };
- using PhysicalDeviceMemoryProperties2KHR = PhysicalDeviceMemoryProperties2;
-
- struct MultisamplePropertiesEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMultisamplePropertiesEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR MultisamplePropertiesEXT(VULKAN_HPP_NAMESPACE::Extent2D maxSampleLocationGridSize_ = {}) VULKAN_HPP_NOEXCEPT
- : maxSampleLocationGridSize( maxSampleLocationGridSize_ )
- {}
-
- VULKAN_HPP_CONSTEXPR MultisamplePropertiesEXT( MultisamplePropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- MultisamplePropertiesEXT( VkMultisamplePropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- MultisamplePropertiesEXT & operator=( VkMultisamplePropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MultisamplePropertiesEXT const *>( &rhs );
- return *this;
- }
-
- MultisamplePropertiesEXT & operator=( MultisamplePropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( MultisamplePropertiesEXT ) );
- return *this;
- }
-
-
- operator VkMultisamplePropertiesEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkMultisamplePropertiesEXT*>( this );
- }
-
- operator VkMultisamplePropertiesEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkMultisamplePropertiesEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( MultisamplePropertiesEXT const& ) const = default;
-#else
- bool operator==( MultisamplePropertiesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( maxSampleLocationGridSize == rhs.maxSampleLocationGridSize );
- }
-
- bool operator!=( MultisamplePropertiesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMultisamplePropertiesEXT;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Extent2D maxSampleLocationGridSize = {};
-
+ value = true
+ };
};
- static_assert( sizeof( MultisamplePropertiesEXT ) == sizeof( VkMultisamplePropertiesEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<MultisamplePropertiesEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eMultisamplePropertiesEXT>
+ struct StructExtends<PhysicalDeviceMultiviewFeatures, DeviceCreateInfo>
{
- using Type = MultisamplePropertiesEXT;
- };
-
- struct PhysicalDeviceLimits
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceLimits(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_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize bufferImageGranularity_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize 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_ = {}, std::array<uint32_t,3> const& maxComputeWorkGroupCount_ = {}, uint32_t maxComputeWorkGroupInvocations_ = {}, std::array<uint32_t,3> const& maxComputeWorkGroupSize_ = {}, uint32_t subPixelPrecisionBits_ = {}, uint32_t subTexelPrecisionBits_ = {}, uint32_t mipmapPrecisionBits_ = {}, uint32_t maxDrawIndexedIndexValue_ = {}, uint32_t maxDrawIndirectCount_ = {}, float maxSamplerLodBias_ = {}, float maxSamplerAnisotropy_ = {}, uint32_t maxViewports_ = {}, std::array<uint32_t,2> const& maxViewportDimensions_ = {}, std::array<float,2> const& viewportBoundsRange_ = {}, uint32_t viewportSubPixelBits_ = {}, size_t minMemoryMapAlignment_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize minTexelBufferOffsetAlignment_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize minUniformBufferOffsetAlignment_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize 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_ = {}, VULKAN_HPP_NAMESPACE::SampleCountFlags framebufferColorSampleCounts_ = {}, VULKAN_HPP_NAMESPACE::SampleCountFlags framebufferDepthSampleCounts_ = {}, VULKAN_HPP_NAMESPACE::SampleCountFlags framebufferStencilSampleCounts_ = {}, VULKAN_HPP_NAMESPACE::SampleCountFlags framebufferNoAttachmentsSampleCounts_ = {}, uint32_t maxColorAttachments_ = {}, VULKAN_HPP_NAMESPACE::SampleCountFlags sampledImageColorSampleCounts_ = {}, VULKAN_HPP_NAMESPACE::SampleCountFlags sampledImageIntegerSampleCounts_ = {}, VULKAN_HPP_NAMESPACE::SampleCountFlags sampledImageDepthSampleCounts_ = {}, VULKAN_HPP_NAMESPACE::SampleCountFlags sampledImageStencilSampleCounts_ = {}, VULKAN_HPP_NAMESPACE::SampleCountFlags storageImageSampleCounts_ = {}, uint32_t maxSampleMaskWords_ = {}, VULKAN_HPP_NAMESPACE::Bool32 timestampComputeAndGraphics_ = {}, float timestampPeriod_ = {}, uint32_t maxClipDistances_ = {}, uint32_t maxCullDistances_ = {}, uint32_t maxCombinedClipAndCullDistances_ = {}, uint32_t discreteQueuePriorities_ = {}, std::array<float,2> const& pointSizeRange_ = {}, std::array<float,2> const& lineWidthRange_ = {}, float pointSizeGranularity_ = {}, float lineWidthGranularity_ = {}, VULKAN_HPP_NAMESPACE::Bool32 strictLines_ = {}, VULKAN_HPP_NAMESPACE::Bool32 standardSampleLocations_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize optimalBufferCopyOffsetAlignment_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize optimalBufferCopyRowPitchAlignment_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize nonCoherentAtomSize_ = {}) VULKAN_HPP_NOEXCEPT
- : maxImageDimension1D( maxImageDimension1D_ ), maxImageDimension2D( maxImageDimension2D_ ), maxImageDimension3D( maxImageDimension3D_ ), maxImageDimensionCube( maxImageDimensionCube_ ), maxImageArrayLayers( maxImageArrayLayers_ ), maxTexelBufferElements( maxTexelBufferElements_ ), maxUniformBufferRange( maxUniformBufferRange_ ), maxStorageBufferRange( maxStorageBufferRange_ ), maxPushConstantsSize( maxPushConstantsSize_ ), maxMemoryAllocationCount( maxMemoryAllocationCount_ ), maxSamplerAllocationCount( maxSamplerAllocationCount_ ), bufferImageGranularity( bufferImageGranularity_ ), sparseAddressSpaceSize( sparseAddressSpaceSize_ ), maxBoundDescriptorSets( maxBoundDescriptorSets_ ), maxPerStageDescriptorSamplers( maxPerStageDescriptorSamplers_ ), maxPerStageDescriptorUniformBuffers( maxPerStageDescriptorUniformBuffers_ ), maxPerStageDescriptorStorageBuffers( maxPerStageDescriptorStorageBuffers_ ), maxPerStageDescriptorSampledImages( maxPerStageDescriptorSampledImages_ ), maxPerStageDescriptorStorageImages( maxPerStageDescriptorStorageImages_ ), maxPerStageDescriptorInputAttachments( maxPerStageDescriptorInputAttachments_ ), maxPerStageResources( maxPerStageResources_ ), maxDescriptorSetSamplers( maxDescriptorSetSamplers_ ), maxDescriptorSetUniformBuffers( maxDescriptorSetUniformBuffers_ ), maxDescriptorSetUniformBuffersDynamic( maxDescriptorSetUniformBuffersDynamic_ ), maxDescriptorSetStorageBuffers( maxDescriptorSetStorageBuffers_ ), maxDescriptorSetStorageBuffersDynamic( maxDescriptorSetStorageBuffersDynamic_ ), maxDescriptorSetSampledImages( maxDescriptorSetSampledImages_ ), maxDescriptorSetStorageImages( maxDescriptorSetStorageImages_ ), maxDescriptorSetInputAttachments( maxDescriptorSetInputAttachments_ ), maxVertexInputAttributes( maxVertexInputAttributes_ ), maxVertexInputBindings( maxVertexInputBindings_ ), maxVertexInputAttributeOffset( maxVertexInputAttributeOffset_ ), maxVertexInputBindingStride( maxVertexInputBindingStride_ ), maxVertexOutputComponents( maxVertexOutputComponents_ ), maxTessellationGenerationLevel( maxTessellationGenerationLevel_ ), maxTessellationPatchSize( maxTessellationPatchSize_ ), maxTessellationControlPerVertexInputComponents( maxTessellationControlPerVertexInputComponents_ ), maxTessellationControlPerVertexOutputComponents( maxTessellationControlPerVertexOutputComponents_ ), maxTessellationControlPerPatchOutputComponents( maxTessellationControlPerPatchOutputComponents_ ), maxTessellationControlTotalOutputComponents( maxTessellationControlTotalOutputComponents_ ), maxTessellationEvaluationInputComponents( maxTessellationEvaluationInputComponents_ ), maxTessellationEvaluationOutputComponents( maxTessellationEvaluationOutputComponents_ ), maxGeometryShaderInvocations( maxGeometryShaderInvocations_ ), maxGeometryInputComponents( maxGeometryInputComponents_ ), maxGeometryOutputComponents( maxGeometryOutputComponents_ ), maxGeometryOutputVertices( maxGeometryOutputVertices_ ), maxGeometryTotalOutputComponents( maxGeometryTotalOutputComponents_ ), maxFragmentInputComponents( maxFragmentInputComponents_ ), maxFragmentOutputAttachments( maxFragmentOutputAttachments_ ), maxFragmentDualSrcAttachments( maxFragmentDualSrcAttachments_ ), maxFragmentCombinedOutputResources( maxFragmentCombinedOutputResources_ ), maxComputeSharedMemorySize( maxComputeSharedMemorySize_ ), maxComputeWorkGroupCount( maxComputeWorkGroupCount_ ), maxComputeWorkGroupInvocations( maxComputeWorkGroupInvocations_ ), maxComputeWorkGroupSize( maxComputeWorkGroupSize_ ), subPixelPrecisionBits( subPixelPrecisionBits_ ), subTexelPrecisionBits( subTexelPrecisionBits_ ), mipmapPrecisionBits( mipmapPrecisionBits_ ), maxDrawIndexedIndexValue( maxDrawIndexedIndexValue_ ), maxDrawIndirectCount( maxDrawIndirectCount_ ), maxSamplerLodBias( maxSamplerLodBias_ ), maxSamplerAnisotropy( maxSamplerAnisotropy_ ), maxViewports( maxViewports_ ), maxViewportDimensions( maxViewportDimensions_ ), viewportBoundsRange( viewportBoundsRange_ ), viewportSubPixelBits( viewportSubPixelBits_ ), minMemoryMapAlignment( minMemoryMapAlignment_ ), minTexelBufferOffsetAlignment( minTexelBufferOffsetAlignment_ ), minUniformBufferOffsetAlignment( minUniformBufferOffsetAlignment_ ), minStorageBufferOffsetAlignment( minStorageBufferOffsetAlignment_ ), minTexelOffset( minTexelOffset_ ), maxTexelOffset( maxTexelOffset_ ), minTexelGatherOffset( minTexelGatherOffset_ ), maxTexelGatherOffset( maxTexelGatherOffset_ ), minInterpolationOffset( minInterpolationOffset_ ), maxInterpolationOffset( maxInterpolationOffset_ ), subPixelInterpolationOffsetBits( subPixelInterpolationOffsetBits_ ), maxFramebufferWidth( maxFramebufferWidth_ ), maxFramebufferHeight( maxFramebufferHeight_ ), maxFramebufferLayers( maxFramebufferLayers_ ), framebufferColorSampleCounts( framebufferColorSampleCounts_ ), framebufferDepthSampleCounts( framebufferDepthSampleCounts_ ), framebufferStencilSampleCounts( framebufferStencilSampleCounts_ ), framebufferNoAttachmentsSampleCounts( framebufferNoAttachmentsSampleCounts_ ), maxColorAttachments( maxColorAttachments_ ), sampledImageColorSampleCounts( sampledImageColorSampleCounts_ ), sampledImageIntegerSampleCounts( sampledImageIntegerSampleCounts_ ), sampledImageDepthSampleCounts( sampledImageDepthSampleCounts_ ), sampledImageStencilSampleCounts( sampledImageStencilSampleCounts_ ), storageImageSampleCounts( storageImageSampleCounts_ ), maxSampleMaskWords( maxSampleMaskWords_ ), timestampComputeAndGraphics( timestampComputeAndGraphics_ ), timestampPeriod( timestampPeriod_ ), maxClipDistances( maxClipDistances_ ), maxCullDistances( maxCullDistances_ ), maxCombinedClipAndCullDistances( maxCombinedClipAndCullDistances_ ), discreteQueuePriorities( discreteQueuePriorities_ ), pointSizeRange( pointSizeRange_ ), lineWidthRange( lineWidthRange_ ), pointSizeGranularity( pointSizeGranularity_ ), lineWidthGranularity( lineWidthGranularity_ ), strictLines( strictLines_ ), standardSampleLocations( standardSampleLocations_ ), optimalBufferCopyOffsetAlignment( optimalBufferCopyOffsetAlignment_ ), optimalBufferCopyRowPitchAlignment( optimalBufferCopyRowPitchAlignment_ ), nonCoherentAtomSize( nonCoherentAtomSize_ )
- {}
-
- VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceLimits( PhysicalDeviceLimits const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceLimits( VkPhysicalDeviceLimits const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceLimits & operator=( VkPhysicalDeviceLimits const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceLimits const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceLimits & operator=( PhysicalDeviceLimits const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceLimits ) );
- return *this;
- }
-
-
- operator VkPhysicalDeviceLimits const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceLimits*>( this );
- }
-
- operator VkPhysicalDeviceLimits &() VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<VkPhysicalDeviceLimits*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceLimits const& ) const = default;
-#else
- bool operator==( PhysicalDeviceLimits const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( maxImageDimension1D == rhs.maxImageDimension1D )
- && ( maxImageDimension2D == rhs.maxImageDimension2D )
- && ( maxImageDimension3D == rhs.maxImageDimension3D )
- && ( maxImageDimensionCube == rhs.maxImageDimensionCube )
- && ( maxImageArrayLayers == rhs.maxImageArrayLayers )
- && ( maxTexelBufferElements == rhs.maxTexelBufferElements )
- && ( maxUniformBufferRange == rhs.maxUniformBufferRange )
- && ( maxStorageBufferRange == rhs.maxStorageBufferRange )
- && ( maxPushConstantsSize == rhs.maxPushConstantsSize )
- && ( maxMemoryAllocationCount == rhs.maxMemoryAllocationCount )
- && ( maxSamplerAllocationCount == rhs.maxSamplerAllocationCount )
- && ( bufferImageGranularity == rhs.bufferImageGranularity )
- && ( sparseAddressSpaceSize == rhs.sparseAddressSpaceSize )
- && ( maxBoundDescriptorSets == rhs.maxBoundDescriptorSets )
- && ( maxPerStageDescriptorSamplers == rhs.maxPerStageDescriptorSamplers )
- && ( maxPerStageDescriptorUniformBuffers == rhs.maxPerStageDescriptorUniformBuffers )
- && ( maxPerStageDescriptorStorageBuffers == rhs.maxPerStageDescriptorStorageBuffers )
- && ( maxPerStageDescriptorSampledImages == rhs.maxPerStageDescriptorSampledImages )
- && ( maxPerStageDescriptorStorageImages == rhs.maxPerStageDescriptorStorageImages )
- && ( maxPerStageDescriptorInputAttachments == rhs.maxPerStageDescriptorInputAttachments )
- && ( maxPerStageResources == rhs.maxPerStageResources )
- && ( maxDescriptorSetSamplers == rhs.maxDescriptorSetSamplers )
- && ( maxDescriptorSetUniformBuffers == rhs.maxDescriptorSetUniformBuffers )
- && ( maxDescriptorSetUniformBuffersDynamic == rhs.maxDescriptorSetUniformBuffersDynamic )
- && ( maxDescriptorSetStorageBuffers == rhs.maxDescriptorSetStorageBuffers )
- && ( maxDescriptorSetStorageBuffersDynamic == rhs.maxDescriptorSetStorageBuffersDynamic )
- && ( maxDescriptorSetSampledImages == rhs.maxDescriptorSetSampledImages )
- && ( maxDescriptorSetStorageImages == rhs.maxDescriptorSetStorageImages )
- && ( maxDescriptorSetInputAttachments == rhs.maxDescriptorSetInputAttachments )
- && ( maxVertexInputAttributes == rhs.maxVertexInputAttributes )
- && ( maxVertexInputBindings == rhs.maxVertexInputBindings )
- && ( maxVertexInputAttributeOffset == rhs.maxVertexInputAttributeOffset )
- && ( maxVertexInputBindingStride == rhs.maxVertexInputBindingStride )
- && ( maxVertexOutputComponents == rhs.maxVertexOutputComponents )
- && ( maxTessellationGenerationLevel == rhs.maxTessellationGenerationLevel )
- && ( maxTessellationPatchSize == rhs.maxTessellationPatchSize )
- && ( maxTessellationControlPerVertexInputComponents == rhs.maxTessellationControlPerVertexInputComponents )
- && ( maxTessellationControlPerVertexOutputComponents == rhs.maxTessellationControlPerVertexOutputComponents )
- && ( maxTessellationControlPerPatchOutputComponents == rhs.maxTessellationControlPerPatchOutputComponents )
- && ( maxTessellationControlTotalOutputComponents == rhs.maxTessellationControlTotalOutputComponents )
- && ( maxTessellationEvaluationInputComponents == rhs.maxTessellationEvaluationInputComponents )
- && ( maxTessellationEvaluationOutputComponents == rhs.maxTessellationEvaluationOutputComponents )
- && ( maxGeometryShaderInvocations == rhs.maxGeometryShaderInvocations )
- && ( maxGeometryInputComponents == rhs.maxGeometryInputComponents )
- && ( maxGeometryOutputComponents == rhs.maxGeometryOutputComponents )
- && ( maxGeometryOutputVertices == rhs.maxGeometryOutputVertices )
- && ( maxGeometryTotalOutputComponents == rhs.maxGeometryTotalOutputComponents )
- && ( maxFragmentInputComponents == rhs.maxFragmentInputComponents )
- && ( maxFragmentOutputAttachments == rhs.maxFragmentOutputAttachments )
- && ( maxFragmentDualSrcAttachments == rhs.maxFragmentDualSrcAttachments )
- && ( maxFragmentCombinedOutputResources == rhs.maxFragmentCombinedOutputResources )
- && ( maxComputeSharedMemorySize == rhs.maxComputeSharedMemorySize )
- && ( maxComputeWorkGroupCount == rhs.maxComputeWorkGroupCount )
- && ( maxComputeWorkGroupInvocations == rhs.maxComputeWorkGroupInvocations )
- && ( maxComputeWorkGroupSize == rhs.maxComputeWorkGroupSize )
- && ( subPixelPrecisionBits == rhs.subPixelPrecisionBits )
- && ( subTexelPrecisionBits == rhs.subTexelPrecisionBits )
- && ( mipmapPrecisionBits == rhs.mipmapPrecisionBits )
- && ( maxDrawIndexedIndexValue == rhs.maxDrawIndexedIndexValue )
- && ( maxDrawIndirectCount == rhs.maxDrawIndirectCount )
- && ( maxSamplerLodBias == rhs.maxSamplerLodBias )
- && ( maxSamplerAnisotropy == rhs.maxSamplerAnisotropy )
- && ( maxViewports == rhs.maxViewports )
- && ( maxViewportDimensions == rhs.maxViewportDimensions )
- && ( viewportBoundsRange == rhs.viewportBoundsRange )
- && ( viewportSubPixelBits == rhs.viewportSubPixelBits )
- && ( minMemoryMapAlignment == rhs.minMemoryMapAlignment )
- && ( minTexelBufferOffsetAlignment == rhs.minTexelBufferOffsetAlignment )
- && ( minUniformBufferOffsetAlignment == rhs.minUniformBufferOffsetAlignment )
- && ( minStorageBufferOffsetAlignment == rhs.minStorageBufferOffsetAlignment )
- && ( minTexelOffset == rhs.minTexelOffset )
- && ( maxTexelOffset == rhs.maxTexelOffset )
- && ( minTexelGatherOffset == rhs.minTexelGatherOffset )
- && ( maxTexelGatherOffset == rhs.maxTexelGatherOffset )
- && ( minInterpolationOffset == rhs.minInterpolationOffset )
- && ( maxInterpolationOffset == rhs.maxInterpolationOffset )
- && ( subPixelInterpolationOffsetBits == rhs.subPixelInterpolationOffsetBits )
- && ( maxFramebufferWidth == rhs.maxFramebufferWidth )
- && ( maxFramebufferHeight == rhs.maxFramebufferHeight )
- && ( maxFramebufferLayers == rhs.maxFramebufferLayers )
- && ( framebufferColorSampleCounts == rhs.framebufferColorSampleCounts )
- && ( framebufferDepthSampleCounts == rhs.framebufferDepthSampleCounts )
- && ( framebufferStencilSampleCounts == rhs.framebufferStencilSampleCounts )
- && ( framebufferNoAttachmentsSampleCounts == rhs.framebufferNoAttachmentsSampleCounts )
- && ( maxColorAttachments == rhs.maxColorAttachments )
- && ( sampledImageColorSampleCounts == rhs.sampledImageColorSampleCounts )
- && ( sampledImageIntegerSampleCounts == rhs.sampledImageIntegerSampleCounts )
- && ( sampledImageDepthSampleCounts == rhs.sampledImageDepthSampleCounts )
- && ( sampledImageStencilSampleCounts == rhs.sampledImageStencilSampleCounts )
- && ( storageImageSampleCounts == rhs.storageImageSampleCounts )
- && ( maxSampleMaskWords == rhs.maxSampleMaskWords )
- && ( timestampComputeAndGraphics == rhs.timestampComputeAndGraphics )
- && ( timestampPeriod == rhs.timestampPeriod )
- && ( maxClipDistances == rhs.maxClipDistances )
- && ( maxCullDistances == rhs.maxCullDistances )
- && ( maxCombinedClipAndCullDistances == rhs.maxCombinedClipAndCullDistances )
- && ( discreteQueuePriorities == rhs.discreteQueuePriorities )
- && ( pointSizeRange == rhs.pointSizeRange )
- && ( lineWidthRange == rhs.lineWidthRange )
- && ( pointSizeGranularity == rhs.pointSizeGranularity )
- && ( lineWidthGranularity == rhs.lineWidthGranularity )
- && ( strictLines == rhs.strictLines )
- && ( standardSampleLocations == rhs.standardSampleLocations )
- && ( optimalBufferCopyOffsetAlignment == rhs.optimalBufferCopyOffsetAlignment )
- && ( optimalBufferCopyRowPitchAlignment == rhs.optimalBufferCopyRowPitchAlignment )
- && ( nonCoherentAtomSize == rhs.nonCoherentAtomSize );
- }
-
- bool operator!=( PhysicalDeviceLimits const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- 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 = {};
- VULKAN_HPP_NAMESPACE::DeviceSize bufferImageGranularity = {};
- VULKAN_HPP_NAMESPACE::DeviceSize 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 = {};
- VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint32_t, 3> maxComputeWorkGroupCount = {};
- uint32_t maxComputeWorkGroupInvocations = {};
- VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint32_t, 3> maxComputeWorkGroupSize = {};
- uint32_t subPixelPrecisionBits = {};
- uint32_t subTexelPrecisionBits = {};
- uint32_t mipmapPrecisionBits = {};
- uint32_t maxDrawIndexedIndexValue = {};
- uint32_t maxDrawIndirectCount = {};
- float maxSamplerLodBias = {};
- float maxSamplerAnisotropy = {};
- uint32_t maxViewports = {};
- VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint32_t, 2> maxViewportDimensions = {};
- VULKAN_HPP_NAMESPACE::ArrayWrapper1D<float, 2> viewportBoundsRange = {};
- uint32_t viewportSubPixelBits = {};
- size_t minMemoryMapAlignment = {};
- VULKAN_HPP_NAMESPACE::DeviceSize minTexelBufferOffsetAlignment = {};
- VULKAN_HPP_NAMESPACE::DeviceSize minUniformBufferOffsetAlignment = {};
- VULKAN_HPP_NAMESPACE::DeviceSize 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 = {};
- VULKAN_HPP_NAMESPACE::SampleCountFlags framebufferColorSampleCounts = {};
- VULKAN_HPP_NAMESPACE::SampleCountFlags framebufferDepthSampleCounts = {};
- VULKAN_HPP_NAMESPACE::SampleCountFlags framebufferStencilSampleCounts = {};
- VULKAN_HPP_NAMESPACE::SampleCountFlags framebufferNoAttachmentsSampleCounts = {};
- uint32_t maxColorAttachments = {};
- VULKAN_HPP_NAMESPACE::SampleCountFlags sampledImageColorSampleCounts = {};
- VULKAN_HPP_NAMESPACE::SampleCountFlags sampledImageIntegerSampleCounts = {};
- VULKAN_HPP_NAMESPACE::SampleCountFlags sampledImageDepthSampleCounts = {};
- VULKAN_HPP_NAMESPACE::SampleCountFlags sampledImageStencilSampleCounts = {};
- VULKAN_HPP_NAMESPACE::SampleCountFlags storageImageSampleCounts = {};
- uint32_t maxSampleMaskWords = {};
- VULKAN_HPP_NAMESPACE::Bool32 timestampComputeAndGraphics = {};
- float timestampPeriod = {};
- uint32_t maxClipDistances = {};
- uint32_t maxCullDistances = {};
- uint32_t maxCombinedClipAndCullDistances = {};
- uint32_t discreteQueuePriorities = {};
- VULKAN_HPP_NAMESPACE::ArrayWrapper1D<float, 2> pointSizeRange = {};
- VULKAN_HPP_NAMESPACE::ArrayWrapper1D<float, 2> lineWidthRange = {};
- float pointSizeGranularity = {};
- float lineWidthGranularity = {};
- VULKAN_HPP_NAMESPACE::Bool32 strictLines = {};
- VULKAN_HPP_NAMESPACE::Bool32 standardSampleLocations = {};
- VULKAN_HPP_NAMESPACE::DeviceSize optimalBufferCopyOffsetAlignment = {};
- VULKAN_HPP_NAMESPACE::DeviceSize optimalBufferCopyRowPitchAlignment = {};
- VULKAN_HPP_NAMESPACE::DeviceSize nonCoherentAtomSize = {};
-
- };
- static_assert( sizeof( PhysicalDeviceLimits ) == sizeof( VkPhysicalDeviceLimits ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceLimits>::value, "struct wrapper is not a standard layout!" );
-
- struct PhysicalDeviceSparseProperties
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceSparseProperties(VULKAN_HPP_NAMESPACE::Bool32 residencyStandard2DBlockShape_ = {}, VULKAN_HPP_NAMESPACE::Bool32 residencyStandard2DMultisampleBlockShape_ = {}, VULKAN_HPP_NAMESPACE::Bool32 residencyStandard3DBlockShape_ = {}, VULKAN_HPP_NAMESPACE::Bool32 residencyAlignedMipSize_ = {}, VULKAN_HPP_NAMESPACE::Bool32 residencyNonResidentStrict_ = {}) VULKAN_HPP_NOEXCEPT
- : residencyStandard2DBlockShape( residencyStandard2DBlockShape_ ), residencyStandard2DMultisampleBlockShape( residencyStandard2DMultisampleBlockShape_ ), residencyStandard3DBlockShape( residencyStandard3DBlockShape_ ), residencyAlignedMipSize( residencyAlignedMipSize_ ), residencyNonResidentStrict( residencyNonResidentStrict_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceSparseProperties( PhysicalDeviceSparseProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceSparseProperties( VkPhysicalDeviceSparseProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceSparseProperties & operator=( VkPhysicalDeviceSparseProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceSparseProperties const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceSparseProperties & operator=( PhysicalDeviceSparseProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceSparseProperties ) );
- return *this;
- }
-
-
- operator VkPhysicalDeviceSparseProperties const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceSparseProperties*>( this );
- }
-
- operator VkPhysicalDeviceSparseProperties &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceSparseProperties*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceSparseProperties const& ) const = default;
-#else
- bool operator==( PhysicalDeviceSparseProperties const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( residencyStandard2DBlockShape == rhs.residencyStandard2DBlockShape )
- && ( residencyStandard2DMultisampleBlockShape == rhs.residencyStandard2DMultisampleBlockShape )
- && ( residencyStandard3DBlockShape == rhs.residencyStandard3DBlockShape )
- && ( residencyAlignedMipSize == rhs.residencyAlignedMipSize )
- && ( residencyNonResidentStrict == rhs.residencyNonResidentStrict );
- }
-
- bool operator!=( PhysicalDeviceSparseProperties const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::Bool32 residencyStandard2DBlockShape = {};
- VULKAN_HPP_NAMESPACE::Bool32 residencyStandard2DMultisampleBlockShape = {};
- VULKAN_HPP_NAMESPACE::Bool32 residencyStandard3DBlockShape = {};
- VULKAN_HPP_NAMESPACE::Bool32 residencyAlignedMipSize = {};
- VULKAN_HPP_NAMESPACE::Bool32 residencyNonResidentStrict = {};
-
- };
- static_assert( sizeof( PhysicalDeviceSparseProperties ) == sizeof( VkPhysicalDeviceSparseProperties ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceSparseProperties>::value, "struct wrapper is not a standard layout!" );
-
- struct PhysicalDeviceProperties
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceProperties(uint32_t apiVersion_ = {}, uint32_t driverVersion_ = {}, uint32_t vendorID_ = {}, uint32_t deviceID_ = {}, VULKAN_HPP_NAMESPACE::PhysicalDeviceType deviceType_ = VULKAN_HPP_NAMESPACE::PhysicalDeviceType::eOther, std::array<char,VK_MAX_PHYSICAL_DEVICE_NAME_SIZE> const& deviceName_ = {}, std::array<uint8_t,VK_UUID_SIZE> const& pipelineCacheUUID_ = {}, VULKAN_HPP_NAMESPACE::PhysicalDeviceLimits limits_ = {}, VULKAN_HPP_NAMESPACE::PhysicalDeviceSparseProperties sparseProperties_ = {}) VULKAN_HPP_NOEXCEPT
- : apiVersion( apiVersion_ ), driverVersion( driverVersion_ ), vendorID( vendorID_ ), deviceID( deviceID_ ), deviceType( deviceType_ ), deviceName( deviceName_ ), pipelineCacheUUID( pipelineCacheUUID_ ), limits( limits_ ), sparseProperties( sparseProperties_ )
- {}
-
- VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceProperties( PhysicalDeviceProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceProperties( VkPhysicalDeviceProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceProperties & operator=( VkPhysicalDeviceProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceProperties & operator=( PhysicalDeviceProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceProperties ) );
- return *this;
- }
-
-
- operator VkPhysicalDeviceProperties const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceProperties*>( this );
- }
-
- operator VkPhysicalDeviceProperties &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceProperties*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceProperties const& ) const = default;
-#else
- bool operator==( PhysicalDeviceProperties const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( apiVersion == rhs.apiVersion )
- && ( driverVersion == rhs.driverVersion )
- && ( vendorID == rhs.vendorID )
- && ( deviceID == rhs.deviceID )
- && ( deviceType == rhs.deviceType )
- && ( deviceName == rhs.deviceName )
- && ( pipelineCacheUUID == rhs.pipelineCacheUUID )
- && ( limits == rhs.limits )
- && ( sparseProperties == rhs.sparseProperties );
- }
-
- bool operator!=( PhysicalDeviceProperties const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- uint32_t apiVersion = {};
- uint32_t driverVersion = {};
- uint32_t vendorID = {};
- uint32_t deviceID = {};
- VULKAN_HPP_NAMESPACE::PhysicalDeviceType deviceType = VULKAN_HPP_NAMESPACE::PhysicalDeviceType::eOther;
- VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_PHYSICAL_DEVICE_NAME_SIZE> deviceName = {};
- VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, VK_UUID_SIZE> pipelineCacheUUID = {};
- VULKAN_HPP_NAMESPACE::PhysicalDeviceLimits limits = {};
- VULKAN_HPP_NAMESPACE::PhysicalDeviceSparseProperties sparseProperties = {};
-
- };
- static_assert( sizeof( PhysicalDeviceProperties ) == sizeof( VkPhysicalDeviceProperties ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceProperties>::value, "struct wrapper is not a standard layout!" );
-
- struct PhysicalDeviceProperties2
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceProperties2;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceProperties2(VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties properties_ = {}) VULKAN_HPP_NOEXCEPT
- : properties( properties_ )
- {}
-
- VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceProperties2( PhysicalDeviceProperties2 const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceProperties2( VkPhysicalDeviceProperties2 const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceProperties2 & operator=( VkPhysicalDeviceProperties2 const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties2 const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceProperties2 & operator=( PhysicalDeviceProperties2 const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceProperties2 ) );
- return *this;
- }
-
-
- operator VkPhysicalDeviceProperties2 const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceProperties2*>( this );
- }
-
- operator VkPhysicalDeviceProperties2 &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceProperties2*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceProperties2 const& ) const = default;
-#else
- bool operator==( PhysicalDeviceProperties2 const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( properties == rhs.properties );
- }
-
- bool operator!=( PhysicalDeviceProperties2 const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceProperties2;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties properties = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceProperties2 ) == sizeof( VkPhysicalDeviceProperties2 ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceProperties2>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceProperties2>
+ struct StructExtends<PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX, PhysicalDeviceProperties2>
{
- using Type = PhysicalDeviceProperties2;
- };
- using PhysicalDeviceProperties2KHR = PhysicalDeviceProperties2;
-
- struct QueryPoolPerformanceCreateInfoKHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eQueryPoolPerformanceCreateInfoKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR QueryPoolPerformanceCreateInfoKHR(uint32_t queueFamilyIndex_ = {}, uint32_t counterIndexCount_ = {}, const uint32_t* pCounterIndices_ = {}) VULKAN_HPP_NOEXCEPT
- : queueFamilyIndex( queueFamilyIndex_ ), counterIndexCount( counterIndexCount_ ), pCounterIndices( pCounterIndices_ )
- {}
-
- VULKAN_HPP_CONSTEXPR QueryPoolPerformanceCreateInfoKHR( QueryPoolPerformanceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- QueryPoolPerformanceCreateInfoKHR( VkQueryPoolPerformanceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- QueryPoolPerformanceCreateInfoKHR( uint32_t queueFamilyIndex_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & counterIndices_ )
- : queueFamilyIndex( queueFamilyIndex_ ), counterIndexCount( static_cast<uint32_t>( counterIndices_.size() ) ), pCounterIndices( counterIndices_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- QueryPoolPerformanceCreateInfoKHR & operator=( VkQueryPoolPerformanceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::QueryPoolPerformanceCreateInfoKHR const *>( &rhs );
- return *this;
- }
-
- QueryPoolPerformanceCreateInfoKHR & operator=( QueryPoolPerformanceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( QueryPoolPerformanceCreateInfoKHR ) );
- return *this;
- }
-
- QueryPoolPerformanceCreateInfoKHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- QueryPoolPerformanceCreateInfoKHR & setQueueFamilyIndex( uint32_t queueFamilyIndex_ ) VULKAN_HPP_NOEXCEPT
- {
- queueFamilyIndex = queueFamilyIndex_;
- return *this;
- }
-
- QueryPoolPerformanceCreateInfoKHR & setCounterIndexCount( uint32_t counterIndexCount_ ) VULKAN_HPP_NOEXCEPT
- {
- counterIndexCount = counterIndexCount_;
- return *this;
- }
-
- QueryPoolPerformanceCreateInfoKHR & setPCounterIndices( const uint32_t* pCounterIndices_ ) VULKAN_HPP_NOEXCEPT
- {
- pCounterIndices = pCounterIndices_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- QueryPoolPerformanceCreateInfoKHR & setCounterIndices( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & counterIndices_ ) VULKAN_HPP_NOEXCEPT
- {
- counterIndexCount = static_cast<uint32_t>( counterIndices_.size() );
- pCounterIndices = counterIndices_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkQueryPoolPerformanceCreateInfoKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkQueryPoolPerformanceCreateInfoKHR*>( this );
- }
-
- operator VkQueryPoolPerformanceCreateInfoKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkQueryPoolPerformanceCreateInfoKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( QueryPoolPerformanceCreateInfoKHR const& ) const = default;
-#else
- bool operator==( QueryPoolPerformanceCreateInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( queueFamilyIndex == rhs.queueFamilyIndex )
- && ( counterIndexCount == rhs.counterIndexCount )
- && ( pCounterIndices == rhs.pCounterIndices );
- }
-
- bool operator!=( QueryPoolPerformanceCreateInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eQueryPoolPerformanceCreateInfoKHR;
- const void* pNext = {};
- uint32_t queueFamilyIndex = {};
- uint32_t counterIndexCount = {};
- const uint32_t* pCounterIndices = {};
-
+ value = true
+ };
};
- static_assert( sizeof( QueryPoolPerformanceCreateInfoKHR ) == sizeof( VkQueryPoolPerformanceCreateInfoKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<QueryPoolPerformanceCreateInfoKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eQueryPoolPerformanceCreateInfoKHR>
- {
- using Type = QueryPoolPerformanceCreateInfoKHR;
- };
-
- struct QueueFamilyProperties
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR QueueFamilyProperties(VULKAN_HPP_NAMESPACE::QueueFlags queueFlags_ = {}, uint32_t queueCount_ = {}, uint32_t timestampValidBits_ = {}, VULKAN_HPP_NAMESPACE::Extent3D minImageTransferGranularity_ = {}) VULKAN_HPP_NOEXCEPT
- : queueFlags( queueFlags_ ), queueCount( queueCount_ ), timestampValidBits( timestampValidBits_ ), minImageTransferGranularity( minImageTransferGranularity_ )
- {}
-
- VULKAN_HPP_CONSTEXPR QueueFamilyProperties( QueueFamilyProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- QueueFamilyProperties( VkQueueFamilyProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- QueueFamilyProperties & operator=( VkQueueFamilyProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::QueueFamilyProperties const *>( &rhs );
- return *this;
- }
-
- QueueFamilyProperties & operator=( QueueFamilyProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( QueueFamilyProperties ) );
- return *this;
- }
-
-
- operator VkQueueFamilyProperties const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkQueueFamilyProperties*>( this );
- }
-
- operator VkQueueFamilyProperties &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkQueueFamilyProperties*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( QueueFamilyProperties const& ) const = default;
-#else
- bool operator==( QueueFamilyProperties const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( queueFlags == rhs.queueFlags )
- && ( queueCount == rhs.queueCount )
- && ( timestampValidBits == rhs.timestampValidBits )
- && ( minImageTransferGranularity == rhs.minImageTransferGranularity );
- }
-
- bool operator!=( QueueFamilyProperties const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::QueueFlags queueFlags = {};
- uint32_t queueCount = {};
- uint32_t timestampValidBits = {};
- VULKAN_HPP_NAMESPACE::Extent3D minImageTransferGranularity = {};
-
- };
- static_assert( sizeof( QueueFamilyProperties ) == sizeof( VkQueueFamilyProperties ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<QueueFamilyProperties>::value, "struct wrapper is not a standard layout!" );
-
- struct QueueFamilyProperties2
+ struct StructExtends<PhysicalDeviceMultiviewProperties, PhysicalDeviceProperties2>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eQueueFamilyProperties2;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR QueueFamilyProperties2(VULKAN_HPP_NAMESPACE::QueueFamilyProperties queueFamilyProperties_ = {}) VULKAN_HPP_NOEXCEPT
- : queueFamilyProperties( queueFamilyProperties_ )
- {}
-
- VULKAN_HPP_CONSTEXPR QueueFamilyProperties2( QueueFamilyProperties2 const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- QueueFamilyProperties2( VkQueueFamilyProperties2 const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- QueueFamilyProperties2 & operator=( VkQueueFamilyProperties2 const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::QueueFamilyProperties2 const *>( &rhs );
- return *this;
- }
-
- QueueFamilyProperties2 & operator=( QueueFamilyProperties2 const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( QueueFamilyProperties2 ) );
- return *this;
- }
-
-
- operator VkQueueFamilyProperties2 const&() const VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<const VkQueueFamilyProperties2*>( this );
- }
-
- operator VkQueueFamilyProperties2 &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkQueueFamilyProperties2*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( QueueFamilyProperties2 const& ) const = default;
-#else
- bool operator==( QueueFamilyProperties2 const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( queueFamilyProperties == rhs.queueFamilyProperties );
- }
-
- bool operator!=( QueueFamilyProperties2 const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eQueueFamilyProperties2;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::QueueFamilyProperties queueFamilyProperties = {};
-
+ value = true
+ };
};
- static_assert( sizeof( QueueFamilyProperties2 ) == sizeof( VkQueueFamilyProperties2 ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<QueueFamilyProperties2>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eQueueFamilyProperties2>
- {
- using Type = QueueFamilyProperties2;
- };
- using QueueFamilyProperties2KHR = QueueFamilyProperties2;
-
- struct PhysicalDeviceSparseImageFormatInfo2
+ struct StructExtends<PhysicalDeviceMutableDescriptorTypeFeaturesVALVE, PhysicalDeviceFeatures2>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceSparseImageFormatInfo2;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceSparseImageFormatInfo2(VULKAN_HPP_NAMESPACE::Format format_ = VULKAN_HPP_NAMESPACE::Format::eUndefined, VULKAN_HPP_NAMESPACE::ImageType type_ = VULKAN_HPP_NAMESPACE::ImageType::e1D, VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples_ = VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1, VULKAN_HPP_NAMESPACE::ImageUsageFlags usage_ = {}, VULKAN_HPP_NAMESPACE::ImageTiling tiling_ = VULKAN_HPP_NAMESPACE::ImageTiling::eOptimal) VULKAN_HPP_NOEXCEPT
- : format( format_ ), type( type_ ), samples( samples_ ), usage( usage_ ), tiling( tiling_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceSparseImageFormatInfo2( PhysicalDeviceSparseImageFormatInfo2 const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceSparseImageFormatInfo2( VkPhysicalDeviceSparseImageFormatInfo2 const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceSparseImageFormatInfo2 & operator=( VkPhysicalDeviceSparseImageFormatInfo2 const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceSparseImageFormatInfo2 const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceSparseImageFormatInfo2 & operator=( PhysicalDeviceSparseImageFormatInfo2 const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceSparseImageFormatInfo2 ) );
- return *this;
- }
-
- PhysicalDeviceSparseImageFormatInfo2 & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceSparseImageFormatInfo2 & setFormat( VULKAN_HPP_NAMESPACE::Format format_ ) VULKAN_HPP_NOEXCEPT
- {
- format = format_;
- return *this;
- }
-
- PhysicalDeviceSparseImageFormatInfo2 & setType( VULKAN_HPP_NAMESPACE::ImageType type_ ) VULKAN_HPP_NOEXCEPT
- {
- type = type_;
- return *this;
- }
-
- PhysicalDeviceSparseImageFormatInfo2 & setSamples( VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples_ ) VULKAN_HPP_NOEXCEPT
- {
- samples = samples_;
- return *this;
- }
-
- PhysicalDeviceSparseImageFormatInfo2 & setUsage( VULKAN_HPP_NAMESPACE::ImageUsageFlags usage_ ) VULKAN_HPP_NOEXCEPT
- {
- usage = usage_;
- return *this;
- }
-
- PhysicalDeviceSparseImageFormatInfo2 & setTiling( VULKAN_HPP_NAMESPACE::ImageTiling tiling_ ) VULKAN_HPP_NOEXCEPT
- {
- tiling = tiling_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceSparseImageFormatInfo2 const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceSparseImageFormatInfo2*>( this );
- }
-
- operator VkPhysicalDeviceSparseImageFormatInfo2 &() VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<VkPhysicalDeviceSparseImageFormatInfo2*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceSparseImageFormatInfo2 const& ) const = default;
-#else
- bool operator==( PhysicalDeviceSparseImageFormatInfo2 const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( format == rhs.format )
- && ( type == rhs.type )
- && ( samples == rhs.samples )
- && ( usage == rhs.usage )
- && ( tiling == rhs.tiling );
- }
-
- bool operator!=( PhysicalDeviceSparseImageFormatInfo2 const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceSparseImageFormatInfo2;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::Format format = VULKAN_HPP_NAMESPACE::Format::eUndefined;
- VULKAN_HPP_NAMESPACE::ImageType type = VULKAN_HPP_NAMESPACE::ImageType::e1D;
- VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples = VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1;
- VULKAN_HPP_NAMESPACE::ImageUsageFlags usage = {};
- VULKAN_HPP_NAMESPACE::ImageTiling tiling = VULKAN_HPP_NAMESPACE::ImageTiling::eOptimal;
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceSparseImageFormatInfo2 ) == sizeof( VkPhysicalDeviceSparseImageFormatInfo2 ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceSparseImageFormatInfo2>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceSparseImageFormatInfo2>
- {
- using Type = PhysicalDeviceSparseImageFormatInfo2;
- };
- using PhysicalDeviceSparseImageFormatInfo2KHR = PhysicalDeviceSparseImageFormatInfo2;
-
- struct SparseImageFormatProperties2
+ struct StructExtends<PhysicalDeviceMutableDescriptorTypeFeaturesVALVE, DeviceCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSparseImageFormatProperties2;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR SparseImageFormatProperties2(VULKAN_HPP_NAMESPACE::SparseImageFormatProperties properties_ = {}) VULKAN_HPP_NOEXCEPT
- : properties( properties_ )
- {}
-
- VULKAN_HPP_CONSTEXPR SparseImageFormatProperties2( SparseImageFormatProperties2 const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- SparseImageFormatProperties2( VkSparseImageFormatProperties2 const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- SparseImageFormatProperties2 & operator=( VkSparseImageFormatProperties2 const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SparseImageFormatProperties2 const *>( &rhs );
- return *this;
- }
-
- SparseImageFormatProperties2 & operator=( SparseImageFormatProperties2 const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- memcpy( static_cast<void *>( this ), &rhs, sizeof( SparseImageFormatProperties2 ) );
- return *this;
- }
-
-
- operator VkSparseImageFormatProperties2 const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkSparseImageFormatProperties2*>( this );
- }
-
- operator VkSparseImageFormatProperties2 &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkSparseImageFormatProperties2*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( SparseImageFormatProperties2 const& ) const = default;
-#else
- bool operator==( SparseImageFormatProperties2 const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( properties == rhs.properties );
- }
-
- bool operator!=( SparseImageFormatProperties2 const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSparseImageFormatProperties2;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::SparseImageFormatProperties properties = {};
-
+ value = true
+ };
};
- static_assert( sizeof( SparseImageFormatProperties2 ) == sizeof( VkSparseImageFormatProperties2 ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<SparseImageFormatProperties2>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eSparseImageFormatProperties2>
- {
- using Type = SparseImageFormatProperties2;
- };
- using SparseImageFormatProperties2KHR = SparseImageFormatProperties2;
-
- struct FramebufferMixedSamplesCombinationNV
+ struct StructExtends<PhysicalDevicePCIBusInfoPropertiesEXT, PhysicalDeviceProperties2>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eFramebufferMixedSamplesCombinationNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR FramebufferMixedSamplesCombinationNV(VULKAN_HPP_NAMESPACE::CoverageReductionModeNV coverageReductionMode_ = VULKAN_HPP_NAMESPACE::CoverageReductionModeNV::eMerge, VULKAN_HPP_NAMESPACE::SampleCountFlagBits rasterizationSamples_ = VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1, VULKAN_HPP_NAMESPACE::SampleCountFlags depthStencilSamples_ = {}, VULKAN_HPP_NAMESPACE::SampleCountFlags colorSamples_ = {}) VULKAN_HPP_NOEXCEPT
- : coverageReductionMode( coverageReductionMode_ ), rasterizationSamples( rasterizationSamples_ ), depthStencilSamples( depthStencilSamples_ ), colorSamples( colorSamples_ )
- {}
-
- VULKAN_HPP_CONSTEXPR FramebufferMixedSamplesCombinationNV( FramebufferMixedSamplesCombinationNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- FramebufferMixedSamplesCombinationNV( VkFramebufferMixedSamplesCombinationNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- FramebufferMixedSamplesCombinationNV & operator=( VkFramebufferMixedSamplesCombinationNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::FramebufferMixedSamplesCombinationNV const *>( &rhs );
- return *this;
- }
-
- FramebufferMixedSamplesCombinationNV & operator=( FramebufferMixedSamplesCombinationNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( FramebufferMixedSamplesCombinationNV ) );
- return *this;
- }
-
-
- operator VkFramebufferMixedSamplesCombinationNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkFramebufferMixedSamplesCombinationNV*>( this );
- }
-
- operator VkFramebufferMixedSamplesCombinationNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkFramebufferMixedSamplesCombinationNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( FramebufferMixedSamplesCombinationNV const& ) const = default;
-#else
- bool operator==( FramebufferMixedSamplesCombinationNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( coverageReductionMode == rhs.coverageReductionMode )
- && ( rasterizationSamples == rhs.rasterizationSamples )
- && ( depthStencilSamples == rhs.depthStencilSamples )
- && ( colorSamples == rhs.colorSamples );
- }
-
- bool operator!=( FramebufferMixedSamplesCombinationNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eFramebufferMixedSamplesCombinationNV;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::CoverageReductionModeNV coverageReductionMode = VULKAN_HPP_NAMESPACE::CoverageReductionModeNV::eMerge;
- VULKAN_HPP_NAMESPACE::SampleCountFlagBits rasterizationSamples = VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1;
- VULKAN_HPP_NAMESPACE::SampleCountFlags depthStencilSamples = {};
- VULKAN_HPP_NAMESPACE::SampleCountFlags colorSamples = {};
-
- };
- static_assert( sizeof( FramebufferMixedSamplesCombinationNV ) == sizeof( VkFramebufferMixedSamplesCombinationNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<FramebufferMixedSamplesCombinationNV>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::eFramebufferMixedSamplesCombinationNV>
- {
- using Type = FramebufferMixedSamplesCombinationNV;
+ value = true
+ };
};
-
- struct SurfaceCapabilities2EXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSurfaceCapabilities2EXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR SurfaceCapabilities2EXT(uint32_t minImageCount_ = {}, uint32_t maxImageCount_ = {}, VULKAN_HPP_NAMESPACE::Extent2D currentExtent_ = {}, VULKAN_HPP_NAMESPACE::Extent2D minImageExtent_ = {}, VULKAN_HPP_NAMESPACE::Extent2D maxImageExtent_ = {}, uint32_t maxImageArrayLayers_ = {}, VULKAN_HPP_NAMESPACE::SurfaceTransformFlagsKHR supportedTransforms_ = {}, VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR currentTransform_ = VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR::eIdentity, VULKAN_HPP_NAMESPACE::CompositeAlphaFlagsKHR supportedCompositeAlpha_ = {}, VULKAN_HPP_NAMESPACE::ImageUsageFlags supportedUsageFlags_ = {}, VULKAN_HPP_NAMESPACE::SurfaceCounterFlagsEXT supportedSurfaceCounters_ = {}) VULKAN_HPP_NOEXCEPT
- : minImageCount( minImageCount_ ), maxImageCount( maxImageCount_ ), currentExtent( currentExtent_ ), minImageExtent( minImageExtent_ ), maxImageExtent( maxImageExtent_ ), maxImageArrayLayers( maxImageArrayLayers_ ), supportedTransforms( supportedTransforms_ ), currentTransform( currentTransform_ ), supportedCompositeAlpha( supportedCompositeAlpha_ ), supportedUsageFlags( supportedUsageFlags_ ), supportedSurfaceCounters( supportedSurfaceCounters_ )
- {}
-
- VULKAN_HPP_CONSTEXPR SurfaceCapabilities2EXT( SurfaceCapabilities2EXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- SurfaceCapabilities2EXT( VkSurfaceCapabilities2EXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- SurfaceCapabilities2EXT & operator=( VkSurfaceCapabilities2EXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SurfaceCapabilities2EXT const *>( &rhs );
- return *this;
- }
-
- SurfaceCapabilities2EXT & operator=( SurfaceCapabilities2EXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( SurfaceCapabilities2EXT ) );
- return *this;
- }
-
-
- operator VkSurfaceCapabilities2EXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkSurfaceCapabilities2EXT*>( this );
- }
-
- operator VkSurfaceCapabilities2EXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkSurfaceCapabilities2EXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( SurfaceCapabilities2EXT const& ) const = default;
-#else
- bool operator==( SurfaceCapabilities2EXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( minImageCount == rhs.minImageCount )
- && ( maxImageCount == rhs.maxImageCount )
- && ( currentExtent == rhs.currentExtent )
- && ( minImageExtent == rhs.minImageExtent )
- && ( maxImageExtent == rhs.maxImageExtent )
- && ( maxImageArrayLayers == rhs.maxImageArrayLayers )
- && ( supportedTransforms == rhs.supportedTransforms )
- && ( currentTransform == rhs.currentTransform )
- && ( supportedCompositeAlpha == rhs.supportedCompositeAlpha )
- && ( supportedUsageFlags == rhs.supportedUsageFlags )
- && ( supportedSurfaceCounters == rhs.supportedSurfaceCounters );
- }
-
- bool operator!=( SurfaceCapabilities2EXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSurfaceCapabilities2EXT;
- void* pNext = {};
- uint32_t minImageCount = {};
- uint32_t maxImageCount = {};
- VULKAN_HPP_NAMESPACE::Extent2D currentExtent = {};
- VULKAN_HPP_NAMESPACE::Extent2D minImageExtent = {};
- VULKAN_HPP_NAMESPACE::Extent2D maxImageExtent = {};
- uint32_t maxImageArrayLayers = {};
- VULKAN_HPP_NAMESPACE::SurfaceTransformFlagsKHR supportedTransforms = {};
- VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR currentTransform = VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR::eIdentity;
- VULKAN_HPP_NAMESPACE::CompositeAlphaFlagsKHR supportedCompositeAlpha = {};
- VULKAN_HPP_NAMESPACE::ImageUsageFlags supportedUsageFlags = {};
- VULKAN_HPP_NAMESPACE::SurfaceCounterFlagsEXT supportedSurfaceCounters = {};
-
- };
- static_assert( sizeof( SurfaceCapabilities2EXT ) == sizeof( VkSurfaceCapabilities2EXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<SurfaceCapabilities2EXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eSurfaceCapabilities2EXT>
+ struct StructExtends<PhysicalDevicePerformanceQueryFeaturesKHR, PhysicalDeviceFeatures2>
{
- using Type = SurfaceCapabilities2EXT;
- };
-
- struct SurfaceCapabilitiesKHR
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR SurfaceCapabilitiesKHR(uint32_t minImageCount_ = {}, uint32_t maxImageCount_ = {}, VULKAN_HPP_NAMESPACE::Extent2D currentExtent_ = {}, VULKAN_HPP_NAMESPACE::Extent2D minImageExtent_ = {}, VULKAN_HPP_NAMESPACE::Extent2D maxImageExtent_ = {}, uint32_t maxImageArrayLayers_ = {}, VULKAN_HPP_NAMESPACE::SurfaceTransformFlagsKHR supportedTransforms_ = {}, VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR currentTransform_ = VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR::eIdentity, VULKAN_HPP_NAMESPACE::CompositeAlphaFlagsKHR supportedCompositeAlpha_ = {}, VULKAN_HPP_NAMESPACE::ImageUsageFlags supportedUsageFlags_ = {}) VULKAN_HPP_NOEXCEPT
- : minImageCount( minImageCount_ ), maxImageCount( maxImageCount_ ), currentExtent( currentExtent_ ), minImageExtent( minImageExtent_ ), maxImageExtent( maxImageExtent_ ), maxImageArrayLayers( maxImageArrayLayers_ ), supportedTransforms( supportedTransforms_ ), currentTransform( currentTransform_ ), supportedCompositeAlpha( supportedCompositeAlpha_ ), supportedUsageFlags( supportedUsageFlags_ )
- {}
-
- VULKAN_HPP_CONSTEXPR SurfaceCapabilitiesKHR( SurfaceCapabilitiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- SurfaceCapabilitiesKHR( VkSurfaceCapabilitiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- SurfaceCapabilitiesKHR & operator=( VkSurfaceCapabilitiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SurfaceCapabilitiesKHR const *>( &rhs );
- return *this;
- }
-
- SurfaceCapabilitiesKHR & operator=( SurfaceCapabilitiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- memcpy( static_cast<void *>( this ), &rhs, sizeof( SurfaceCapabilitiesKHR ) );
- return *this;
- }
-
-
- operator VkSurfaceCapabilitiesKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkSurfaceCapabilitiesKHR*>( this );
- }
-
- operator VkSurfaceCapabilitiesKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkSurfaceCapabilitiesKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( SurfaceCapabilitiesKHR const& ) const = default;
-#else
- bool operator==( SurfaceCapabilitiesKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( minImageCount == rhs.minImageCount )
- && ( maxImageCount == rhs.maxImageCount )
- && ( currentExtent == rhs.currentExtent )
- && ( minImageExtent == rhs.minImageExtent )
- && ( maxImageExtent == rhs.maxImageExtent )
- && ( maxImageArrayLayers == rhs.maxImageArrayLayers )
- && ( supportedTransforms == rhs.supportedTransforms )
- && ( currentTransform == rhs.currentTransform )
- && ( supportedCompositeAlpha == rhs.supportedCompositeAlpha )
- && ( supportedUsageFlags == rhs.supportedUsageFlags );
- }
-
- bool operator!=( SurfaceCapabilitiesKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- uint32_t minImageCount = {};
- uint32_t maxImageCount = {};
- VULKAN_HPP_NAMESPACE::Extent2D currentExtent = {};
- VULKAN_HPP_NAMESPACE::Extent2D minImageExtent = {};
- VULKAN_HPP_NAMESPACE::Extent2D maxImageExtent = {};
- uint32_t maxImageArrayLayers = {};
- VULKAN_HPP_NAMESPACE::SurfaceTransformFlagsKHR supportedTransforms = {};
- VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR currentTransform = VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR::eIdentity;
- VULKAN_HPP_NAMESPACE::CompositeAlphaFlagsKHR supportedCompositeAlpha = {};
- VULKAN_HPP_NAMESPACE::ImageUsageFlags supportedUsageFlags = {};
-
- };
- static_assert( sizeof( SurfaceCapabilitiesKHR ) == sizeof( VkSurfaceCapabilitiesKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<SurfaceCapabilitiesKHR>::value, "struct wrapper is not a standard layout!" );
-
- struct SurfaceCapabilities2KHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSurfaceCapabilities2KHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR SurfaceCapabilities2KHR(VULKAN_HPP_NAMESPACE::SurfaceCapabilitiesKHR surfaceCapabilities_ = {}) VULKAN_HPP_NOEXCEPT
- : surfaceCapabilities( surfaceCapabilities_ )
- {}
-
- VULKAN_HPP_CONSTEXPR SurfaceCapabilities2KHR( SurfaceCapabilities2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- SurfaceCapabilities2KHR( VkSurfaceCapabilities2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- SurfaceCapabilities2KHR & operator=( VkSurfaceCapabilities2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SurfaceCapabilities2KHR const *>( &rhs );
- return *this;
- }
-
- SurfaceCapabilities2KHR & operator=( SurfaceCapabilities2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( SurfaceCapabilities2KHR ) );
- return *this;
- }
-
-
- operator VkSurfaceCapabilities2KHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkSurfaceCapabilities2KHR*>( this );
- }
-
- operator VkSurfaceCapabilities2KHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkSurfaceCapabilities2KHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( SurfaceCapabilities2KHR const& ) const = default;
-#else
- bool operator==( SurfaceCapabilities2KHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( surfaceCapabilities == rhs.surfaceCapabilities );
- }
-
- bool operator!=( SurfaceCapabilities2KHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSurfaceCapabilities2KHR;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::SurfaceCapabilitiesKHR surfaceCapabilities = {};
-
+ value = true
+ };
};
- static_assert( sizeof( SurfaceCapabilities2KHR ) == sizeof( VkSurfaceCapabilities2KHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<SurfaceCapabilities2KHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eSurfaceCapabilities2KHR>
- {
- using Type = SurfaceCapabilities2KHR;
- };
-
- struct SurfaceFormatKHR
+ struct StructExtends<PhysicalDevicePerformanceQueryFeaturesKHR, DeviceCreateInfo>
{
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR SurfaceFormatKHR(VULKAN_HPP_NAMESPACE::Format format_ = VULKAN_HPP_NAMESPACE::Format::eUndefined, VULKAN_HPP_NAMESPACE::ColorSpaceKHR colorSpace_ = VULKAN_HPP_NAMESPACE::ColorSpaceKHR::eSrgbNonlinear) VULKAN_HPP_NOEXCEPT
- : format( format_ ), colorSpace( colorSpace_ )
- {}
-
- VULKAN_HPP_CONSTEXPR SurfaceFormatKHR( SurfaceFormatKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- SurfaceFormatKHR( VkSurfaceFormatKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- SurfaceFormatKHR & operator=( VkSurfaceFormatKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SurfaceFormatKHR const *>( &rhs );
- return *this;
- }
-
- SurfaceFormatKHR & operator=( SurfaceFormatKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( SurfaceFormatKHR ) );
- return *this;
- }
-
-
- operator VkSurfaceFormatKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkSurfaceFormatKHR*>( this );
- }
-
- operator VkSurfaceFormatKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkSurfaceFormatKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( SurfaceFormatKHR const& ) const = default;
-#else
- bool operator==( SurfaceFormatKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( format == rhs.format )
- && ( colorSpace == rhs.colorSpace );
- }
-
- bool operator!=( SurfaceFormatKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::Format format = VULKAN_HPP_NAMESPACE::Format::eUndefined;
- VULKAN_HPP_NAMESPACE::ColorSpaceKHR colorSpace = VULKAN_HPP_NAMESPACE::ColorSpaceKHR::eSrgbNonlinear;
-
- };
- static_assert( sizeof( SurfaceFormatKHR ) == sizeof( VkSurfaceFormatKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<SurfaceFormatKHR>::value, "struct wrapper is not a standard layout!" );
-
- struct SurfaceFormat2KHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSurfaceFormat2KHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR SurfaceFormat2KHR(VULKAN_HPP_NAMESPACE::SurfaceFormatKHR surfaceFormat_ = {}) VULKAN_HPP_NOEXCEPT
- : surfaceFormat( surfaceFormat_ )
- {}
-
- VULKAN_HPP_CONSTEXPR SurfaceFormat2KHR( SurfaceFormat2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- SurfaceFormat2KHR( VkSurfaceFormat2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- SurfaceFormat2KHR & operator=( VkSurfaceFormat2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SurfaceFormat2KHR const *>( &rhs );
- return *this;
- }
-
- SurfaceFormat2KHR & operator=( SurfaceFormat2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( SurfaceFormat2KHR ) );
- return *this;
- }
-
-
- operator VkSurfaceFormat2KHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkSurfaceFormat2KHR*>( this );
- }
-
- operator VkSurfaceFormat2KHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkSurfaceFormat2KHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( SurfaceFormat2KHR const& ) const = default;
-#else
- bool operator==( SurfaceFormat2KHR const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( surfaceFormat == rhs.surfaceFormat );
- }
-
- bool operator!=( SurfaceFormat2KHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSurfaceFormat2KHR;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::SurfaceFormatKHR surfaceFormat = {};
-
+ value = true
+ };
};
- static_assert( sizeof( SurfaceFormat2KHR ) == sizeof( VkSurfaceFormat2KHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<SurfaceFormat2KHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eSurfaceFormat2KHR>
+ struct StructExtends<PhysicalDevicePerformanceQueryPropertiesKHR, PhysicalDeviceProperties2>
{
- using Type = SurfaceFormat2KHR;
- };
-
- struct PhysicalDeviceToolPropertiesEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceToolPropertiesEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceToolPropertiesEXT(std::array<char,VK_MAX_EXTENSION_NAME_SIZE> const& name_ = {}, std::array<char,VK_MAX_EXTENSION_NAME_SIZE> const& version_ = {}, VULKAN_HPP_NAMESPACE::ToolPurposeFlagsEXT purposes_ = {}, std::array<char,VK_MAX_DESCRIPTION_SIZE> const& description_ = {}, std::array<char,VK_MAX_EXTENSION_NAME_SIZE> const& layer_ = {}) VULKAN_HPP_NOEXCEPT
- : name( name_ ), version( version_ ), purposes( purposes_ ), description( description_ ), layer( layer_ )
- {}
-
- VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceToolPropertiesEXT( PhysicalDeviceToolPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceToolPropertiesEXT( VkPhysicalDeviceToolPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceToolPropertiesEXT & operator=( VkPhysicalDeviceToolPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceToolPropertiesEXT const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceToolPropertiesEXT & operator=( PhysicalDeviceToolPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceToolPropertiesEXT ) );
- return *this;
- }
-
-
- operator VkPhysicalDeviceToolPropertiesEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceToolPropertiesEXT*>( this );
- }
-
- operator VkPhysicalDeviceToolPropertiesEXT &() VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<VkPhysicalDeviceToolPropertiesEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceToolPropertiesEXT const& ) const = default;
-#else
- bool operator==( PhysicalDeviceToolPropertiesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( name == rhs.name )
- && ( version == rhs.version )
- && ( purposes == rhs.purposes )
- && ( description == rhs.description )
- && ( layer == rhs.layer );
- }
-
- bool operator!=( PhysicalDeviceToolPropertiesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceToolPropertiesEXT;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_EXTENSION_NAME_SIZE> name = {};
- VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_EXTENSION_NAME_SIZE> version = {};
- VULKAN_HPP_NAMESPACE::ToolPurposeFlagsEXT purposes = {};
- VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DESCRIPTION_SIZE> description = {};
- VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_EXTENSION_NAME_SIZE> layer = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceToolPropertiesEXT ) == sizeof( VkPhysicalDeviceToolPropertiesEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceToolPropertiesEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceToolPropertiesEXT>
+ struct StructExtends<PhysicalDevicePipelineCreationCacheControlFeaturesEXT, PhysicalDeviceFeatures2>
{
- using Type = PhysicalDeviceToolPropertiesEXT;
- };
-
-#ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch> class UniqueHandleTraits<Device, Dispatch> { public: using deleter = ObjectDestroy<NoParent, Dispatch>; };
- using UniqueDevice = UniqueHandle<Device, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
-#endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-
- class PhysicalDevice
- {
- public:
- using CType = VkPhysicalDevice;
-
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::ePhysicalDevice;
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType = VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::ePhysicalDevice;
-
- public:
- VULKAN_HPP_CONSTEXPR PhysicalDevice() VULKAN_HPP_NOEXCEPT
- : m_physicalDevice(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDevice( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- : m_physicalDevice(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_TYPESAFE_EXPLICIT PhysicalDevice( VkPhysicalDevice physicalDevice ) VULKAN_HPP_NOEXCEPT
- : m_physicalDevice( physicalDevice )
- {}
-
-#if defined(VULKAN_HPP_TYPESAFE_CONVERSION)
- PhysicalDevice & operator=(VkPhysicalDevice physicalDevice) VULKAN_HPP_NOEXCEPT
- {
- m_physicalDevice = physicalDevice;
- return *this;
- }
-#endif
-
- PhysicalDevice & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- {
- m_physicalDevice = VK_NULL_HANDLE;
- return *this;
- }
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDevice const& ) const = default;
-#else
- bool operator==( PhysicalDevice const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_physicalDevice == rhs.m_physicalDevice;
- }
-
- bool operator!=(PhysicalDevice const & rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return m_physicalDevice != rhs.m_physicalDevice;
- }
-
- bool operator<(PhysicalDevice const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_physicalDevice < rhs.m_physicalDevice;
- }
-#endif
-
-
-#ifdef VK_USE_PLATFORM_XLIB_XRANDR_EXT
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result acquireXlibDisplayEXT( Display* dpy, VULKAN_HPP_NAMESPACE::DisplayKHR display, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type acquireXlibDisplayEXT( Display & dpy, VULKAN_HPP_NAMESPACE::DisplayKHR display, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_XLIB_XRANDR_EXT*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result createDevice( const VULKAN_HPP_NAMESPACE::DeviceCreateInfo* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::Device* pDevice, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::Device>::type createDevice( const DeviceCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::Device, Dispatch>>::type createDeviceUnique( const DeviceCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result createDisplayModeKHR( VULKAN_HPP_NAMESPACE::DisplayKHR display, const VULKAN_HPP_NAMESPACE::DisplayModeCreateInfoKHR* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::DisplayModeKHR* pMode, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::DisplayModeKHR>::type createDisplayModeKHR( VULKAN_HPP_NAMESPACE::DisplayKHR display, const DisplayModeCreateInfoKHR & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::DisplayModeKHR, Dispatch>>::type createDisplayModeKHRUnique( VULKAN_HPP_NAMESPACE::DisplayKHR display, const DisplayModeCreateInfoKHR & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result enumerateDeviceExtensionProperties( const char* pLayerName, uint32_t* pPropertyCount, VULKAN_HPP_NAMESPACE::ExtensionProperties* pProperties, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename ExtensionPropertiesAllocator = std::allocator<ExtensionProperties>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<ExtensionProperties, ExtensionPropertiesAllocator>>::type enumerateDeviceExtensionProperties( Optional<const std::string> layerName VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename ExtensionPropertiesAllocator = std::allocator<ExtensionProperties>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename B = ExtensionPropertiesAllocator, typename std::enable_if<std::is_same<typename B::value_type, ExtensionProperties>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<ExtensionProperties, ExtensionPropertiesAllocator>>::type enumerateDeviceExtensionProperties( Optional<const std::string> layerName, ExtensionPropertiesAllocator & extensionPropertiesAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result enumerateDeviceLayerProperties( uint32_t* pPropertyCount, VULKAN_HPP_NAMESPACE::LayerProperties* pProperties, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename LayerPropertiesAllocator = std::allocator<LayerProperties>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<LayerProperties, LayerPropertiesAllocator>>::type enumerateDeviceLayerProperties( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename LayerPropertiesAllocator = std::allocator<LayerProperties>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename B = LayerPropertiesAllocator, typename std::enable_if<std::is_same<typename B::value_type, LayerProperties>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<LayerProperties, LayerPropertiesAllocator>>::type enumerateDeviceLayerProperties( LayerPropertiesAllocator & layerPropertiesAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result enumerateQueueFamilyPerformanceQueryCountersKHR( uint32_t queueFamilyIndex, uint32_t* pCounterCount, VULKAN_HPP_NAMESPACE::PerformanceCounterKHR* pCounters, VULKAN_HPP_NAMESPACE::PerformanceCounterDescriptionKHR* pCounterDescriptions, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Allocator = std::allocator<PerformanceCounterDescriptionKHR>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<PerformanceCounterDescriptionKHR,Allocator>>::type enumerateQueueFamilyPerformanceQueryCountersKHR( uint32_t queueFamilyIndex, ArrayProxy<VULKAN_HPP_NAMESPACE::PerformanceCounterKHR> const &counters, Dispatch const &d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename Allocator = std::allocator<PerformanceCounterDescriptionKHR>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename B = Allocator, typename std::enable_if<std::is_same<typename B::value_type, PerformanceCounterDescriptionKHR>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<PerformanceCounterDescriptionKHR,Allocator>>::type enumerateQueueFamilyPerformanceQueryCountersKHR( uint32_t queueFamilyIndex, ArrayProxy<VULKAN_HPP_NAMESPACE::PerformanceCounterKHR> const &counters, Allocator const& vectorAllocator, Dispatch const &d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename PerformanceCounterKHRAllocator = std::allocator<PerformanceCounterKHR>, typename PerformanceCounterDescriptionKHRAllocator = std::allocator<PerformanceCounterDescriptionKHR>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::pair<std::vector<PerformanceCounterKHR, PerformanceCounterKHRAllocator>, std::vector<PerformanceCounterDescriptionKHR, PerformanceCounterDescriptionKHRAllocator>>>::type enumerateQueueFamilyPerformanceQueryCountersKHR( uint32_t queueFamilyIndex, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename PerformanceCounterKHRAllocator = std::allocator<PerformanceCounterKHR>, typename PerformanceCounterDescriptionKHRAllocator = std::allocator<PerformanceCounterDescriptionKHR>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename B1 = PerformanceCounterKHRAllocator, typename B2 = PerformanceCounterDescriptionKHRAllocator, typename std::enable_if<std::is_same<typename B1::value_type, PerformanceCounterKHR>::value && std::is_same<typename B2::value_type, PerformanceCounterDescriptionKHR>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::pair<std::vector<PerformanceCounterKHR, PerformanceCounterKHRAllocator>, std::vector<PerformanceCounterDescriptionKHR, PerformanceCounterDescriptionKHRAllocator>>>::type enumerateQueueFamilyPerformanceQueryCountersKHR( uint32_t queueFamilyIndex, PerformanceCounterKHRAllocator & performanceCounterKHRAllocator, PerformanceCounterDescriptionKHRAllocator & performanceCounterDescriptionKHRAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getDisplayModeProperties2KHR( VULKAN_HPP_NAMESPACE::DisplayKHR display, uint32_t* pPropertyCount, VULKAN_HPP_NAMESPACE::DisplayModeProperties2KHR* pProperties, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename DisplayModeProperties2KHRAllocator = std::allocator<DisplayModeProperties2KHR>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<DisplayModeProperties2KHR, DisplayModeProperties2KHRAllocator>>::type getDisplayModeProperties2KHR( VULKAN_HPP_NAMESPACE::DisplayKHR display, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename DisplayModeProperties2KHRAllocator = std::allocator<DisplayModeProperties2KHR>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename B = DisplayModeProperties2KHRAllocator, typename std::enable_if<std::is_same<typename B::value_type, DisplayModeProperties2KHR>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<DisplayModeProperties2KHR, DisplayModeProperties2KHRAllocator>>::type getDisplayModeProperties2KHR( VULKAN_HPP_NAMESPACE::DisplayKHR display, DisplayModeProperties2KHRAllocator & displayModeProperties2KHRAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getDisplayModePropertiesKHR( VULKAN_HPP_NAMESPACE::DisplayKHR display, uint32_t* pPropertyCount, VULKAN_HPP_NAMESPACE::DisplayModePropertiesKHR* pProperties, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename DisplayModePropertiesKHRAllocator = std::allocator<DisplayModePropertiesKHR>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<DisplayModePropertiesKHR, DisplayModePropertiesKHRAllocator>>::type getDisplayModePropertiesKHR( VULKAN_HPP_NAMESPACE::DisplayKHR display, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename DisplayModePropertiesKHRAllocator = std::allocator<DisplayModePropertiesKHR>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename B = DisplayModePropertiesKHRAllocator, typename std::enable_if<std::is_same<typename B::value_type, DisplayModePropertiesKHR>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<DisplayModePropertiesKHR, DisplayModePropertiesKHRAllocator>>::type getDisplayModePropertiesKHR( VULKAN_HPP_NAMESPACE::DisplayKHR display, DisplayModePropertiesKHRAllocator & displayModePropertiesKHRAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getDisplayPlaneCapabilities2KHR( const VULKAN_HPP_NAMESPACE::DisplayPlaneInfo2KHR* pDisplayPlaneInfo, VULKAN_HPP_NAMESPACE::DisplayPlaneCapabilities2KHR* pCapabilities, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::DisplayPlaneCapabilities2KHR>::type getDisplayPlaneCapabilities2KHR( const DisplayPlaneInfo2KHR & displayPlaneInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getDisplayPlaneCapabilitiesKHR( VULKAN_HPP_NAMESPACE::DisplayModeKHR mode, uint32_t planeIndex, VULKAN_HPP_NAMESPACE::DisplayPlaneCapabilitiesKHR* pCapabilities, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::DisplayPlaneCapabilitiesKHR>::type getDisplayPlaneCapabilitiesKHR( VULKAN_HPP_NAMESPACE::DisplayModeKHR mode, uint32_t planeIndex, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getDisplayPlaneSupportedDisplaysKHR( uint32_t planeIndex, uint32_t* pDisplayCount, VULKAN_HPP_NAMESPACE::DisplayKHR* pDisplays, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename DisplayKHRAllocator = std::allocator<DisplayKHR>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<DisplayKHR, DisplayKHRAllocator>>::type getDisplayPlaneSupportedDisplaysKHR( uint32_t planeIndex, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename DisplayKHRAllocator = std::allocator<DisplayKHR>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename B = DisplayKHRAllocator, typename std::enable_if<std::is_same<typename B::value_type, DisplayKHR>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<DisplayKHR, DisplayKHRAllocator>>::type getDisplayPlaneSupportedDisplaysKHR( uint32_t planeIndex, DisplayKHRAllocator & displayKHRAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getCalibrateableTimeDomainsEXT( uint32_t* pTimeDomainCount, VULKAN_HPP_NAMESPACE::TimeDomainEXT* pTimeDomains, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename TimeDomainEXTAllocator = std::allocator<TimeDomainEXT>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<TimeDomainEXT, TimeDomainEXTAllocator>>::type getCalibrateableTimeDomainsEXT( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename TimeDomainEXTAllocator = std::allocator<TimeDomainEXT>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename B = TimeDomainEXTAllocator, typename std::enable_if<std::is_same<typename B::value_type, TimeDomainEXT>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<TimeDomainEXT, TimeDomainEXTAllocator>>::type getCalibrateableTimeDomainsEXT( TimeDomainEXTAllocator & timeDomainEXTAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getCooperativeMatrixPropertiesNV( uint32_t* pPropertyCount, VULKAN_HPP_NAMESPACE::CooperativeMatrixPropertiesNV* pProperties, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename CooperativeMatrixPropertiesNVAllocator = std::allocator<CooperativeMatrixPropertiesNV>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<CooperativeMatrixPropertiesNV, CooperativeMatrixPropertiesNVAllocator>>::type getCooperativeMatrixPropertiesNV( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename CooperativeMatrixPropertiesNVAllocator = std::allocator<CooperativeMatrixPropertiesNV>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename B = CooperativeMatrixPropertiesNVAllocator, typename std::enable_if<std::is_same<typename B::value_type, CooperativeMatrixPropertiesNV>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<CooperativeMatrixPropertiesNV, CooperativeMatrixPropertiesNVAllocator>>::type getCooperativeMatrixPropertiesNV( CooperativeMatrixPropertiesNVAllocator & cooperativeMatrixPropertiesNVAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-#ifdef VK_USE_PLATFORM_DIRECTFB_EXT
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- Bool32 getDirectFBPresentationSupportEXT( uint32_t queueFamilyIndex, IDirectFB* dfb, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- Bool32 getDirectFBPresentationSupportEXT( uint32_t queueFamilyIndex, IDirectFB & dfb, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_DIRECTFB_EXT*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getDisplayPlaneProperties2KHR( uint32_t* pPropertyCount, VULKAN_HPP_NAMESPACE::DisplayPlaneProperties2KHR* pProperties, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename DisplayPlaneProperties2KHRAllocator = std::allocator<DisplayPlaneProperties2KHR>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<DisplayPlaneProperties2KHR, DisplayPlaneProperties2KHRAllocator>>::type getDisplayPlaneProperties2KHR( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename DisplayPlaneProperties2KHRAllocator = std::allocator<DisplayPlaneProperties2KHR>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename B = DisplayPlaneProperties2KHRAllocator, typename std::enable_if<std::is_same<typename B::value_type, DisplayPlaneProperties2KHR>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<DisplayPlaneProperties2KHR, DisplayPlaneProperties2KHRAllocator>>::type getDisplayPlaneProperties2KHR( DisplayPlaneProperties2KHRAllocator & displayPlaneProperties2KHRAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getDisplayPlanePropertiesKHR( uint32_t* pPropertyCount, VULKAN_HPP_NAMESPACE::DisplayPlanePropertiesKHR* pProperties, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename DisplayPlanePropertiesKHRAllocator = std::allocator<DisplayPlanePropertiesKHR>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<DisplayPlanePropertiesKHR, DisplayPlanePropertiesKHRAllocator>>::type getDisplayPlanePropertiesKHR( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename DisplayPlanePropertiesKHRAllocator = std::allocator<DisplayPlanePropertiesKHR>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename B = DisplayPlanePropertiesKHRAllocator, typename std::enable_if<std::is_same<typename B::value_type, DisplayPlanePropertiesKHR>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<DisplayPlanePropertiesKHR, DisplayPlanePropertiesKHRAllocator>>::type getDisplayPlanePropertiesKHR( DisplayPlanePropertiesKHRAllocator & displayPlanePropertiesKHRAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getDisplayProperties2KHR( uint32_t* pPropertyCount, VULKAN_HPP_NAMESPACE::DisplayProperties2KHR* pProperties, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename DisplayProperties2KHRAllocator = std::allocator<DisplayProperties2KHR>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<DisplayProperties2KHR, DisplayProperties2KHRAllocator>>::type getDisplayProperties2KHR( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename DisplayProperties2KHRAllocator = std::allocator<DisplayProperties2KHR>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename B = DisplayProperties2KHRAllocator, typename std::enable_if<std::is_same<typename B::value_type, DisplayProperties2KHR>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<DisplayProperties2KHR, DisplayProperties2KHRAllocator>>::type getDisplayProperties2KHR( DisplayProperties2KHRAllocator & displayProperties2KHRAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getDisplayPropertiesKHR( uint32_t* pPropertyCount, VULKAN_HPP_NAMESPACE::DisplayPropertiesKHR* pProperties, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename DisplayPropertiesKHRAllocator = std::allocator<DisplayPropertiesKHR>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<DisplayPropertiesKHR, DisplayPropertiesKHRAllocator>>::type getDisplayPropertiesKHR( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename DisplayPropertiesKHRAllocator = std::allocator<DisplayPropertiesKHR>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename B = DisplayPropertiesKHRAllocator, typename std::enable_if<std::is_same<typename B::value_type, DisplayPropertiesKHR>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<DisplayPropertiesKHR, DisplayPropertiesKHRAllocator>>::type getDisplayPropertiesKHR( DisplayPropertiesKHRAllocator & displayPropertiesKHRAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void getExternalBufferProperties( const VULKAN_HPP_NAMESPACE::PhysicalDeviceExternalBufferInfo* pExternalBufferInfo, VULKAN_HPP_NAMESPACE::ExternalBufferProperties* pExternalBufferProperties, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::ExternalBufferProperties getExternalBufferProperties( const PhysicalDeviceExternalBufferInfo & externalBufferInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void getExternalBufferPropertiesKHR( const VULKAN_HPP_NAMESPACE::PhysicalDeviceExternalBufferInfo* pExternalBufferInfo, VULKAN_HPP_NAMESPACE::ExternalBufferProperties* pExternalBufferProperties, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::ExternalBufferProperties getExternalBufferPropertiesKHR( const PhysicalDeviceExternalBufferInfo & externalBufferInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void getExternalFenceProperties( const VULKAN_HPP_NAMESPACE::PhysicalDeviceExternalFenceInfo* pExternalFenceInfo, VULKAN_HPP_NAMESPACE::ExternalFenceProperties* pExternalFenceProperties, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::ExternalFenceProperties getExternalFenceProperties( const PhysicalDeviceExternalFenceInfo & externalFenceInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void getExternalFencePropertiesKHR( const VULKAN_HPP_NAMESPACE::PhysicalDeviceExternalFenceInfo* pExternalFenceInfo, VULKAN_HPP_NAMESPACE::ExternalFenceProperties* pExternalFenceProperties, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::ExternalFenceProperties getExternalFencePropertiesKHR( const PhysicalDeviceExternalFenceInfo & externalFenceInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getExternalImageFormatPropertiesNV( VULKAN_HPP_NAMESPACE::Format format, VULKAN_HPP_NAMESPACE::ImageType type, VULKAN_HPP_NAMESPACE::ImageTiling tiling, VULKAN_HPP_NAMESPACE::ImageUsageFlags usage, VULKAN_HPP_NAMESPACE::ImageCreateFlags flags, VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV externalHandleType, VULKAN_HPP_NAMESPACE::ExternalImageFormatPropertiesNV* pExternalImageFormatProperties, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::ExternalImageFormatPropertiesNV>::type getExternalImageFormatPropertiesNV( VULKAN_HPP_NAMESPACE::Format format, VULKAN_HPP_NAMESPACE::ImageType type, VULKAN_HPP_NAMESPACE::ImageTiling tiling, VULKAN_HPP_NAMESPACE::ImageUsageFlags usage, VULKAN_HPP_NAMESPACE::ImageCreateFlags flags VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT, VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV externalHandleType VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void getExternalSemaphoreProperties( const VULKAN_HPP_NAMESPACE::PhysicalDeviceExternalSemaphoreInfo* pExternalSemaphoreInfo, VULKAN_HPP_NAMESPACE::ExternalSemaphoreProperties* pExternalSemaphoreProperties, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::ExternalSemaphoreProperties getExternalSemaphoreProperties( const PhysicalDeviceExternalSemaphoreInfo & externalSemaphoreInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void getExternalSemaphorePropertiesKHR( const VULKAN_HPP_NAMESPACE::PhysicalDeviceExternalSemaphoreInfo* pExternalSemaphoreInfo, VULKAN_HPP_NAMESPACE::ExternalSemaphoreProperties* pExternalSemaphoreProperties, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::ExternalSemaphoreProperties getExternalSemaphorePropertiesKHR( const PhysicalDeviceExternalSemaphoreInfo & externalSemaphoreInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void getFeatures( VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures* pFeatures, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures getFeatures( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void getFeatures2( VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures2* pFeatures, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures2 getFeatures2( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
- template <typename X, typename Y, typename... Z, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD StructureChain<X, Y, Z...> getFeatures2( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void getFeatures2KHR( VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures2* pFeatures, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures2 getFeatures2KHR( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
- template <typename X, typename Y, typename... Z, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD StructureChain<X, Y, Z...> getFeatures2KHR( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void getFormatProperties( VULKAN_HPP_NAMESPACE::Format format, VULKAN_HPP_NAMESPACE::FormatProperties* pFormatProperties, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::FormatProperties getFormatProperties( VULKAN_HPP_NAMESPACE::Format format, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void getFormatProperties2( VULKAN_HPP_NAMESPACE::Format format, VULKAN_HPP_NAMESPACE::FormatProperties2* pFormatProperties, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::FormatProperties2 getFormatProperties2( VULKAN_HPP_NAMESPACE::Format format, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
- template <typename X, typename Y, typename... Z, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD StructureChain<X, Y, Z...> getFormatProperties2( VULKAN_HPP_NAMESPACE::Format format, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void getFormatProperties2KHR( VULKAN_HPP_NAMESPACE::Format format, VULKAN_HPP_NAMESPACE::FormatProperties2* pFormatProperties, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::FormatProperties2 getFormatProperties2KHR( VULKAN_HPP_NAMESPACE::Format format, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
- template <typename X, typename Y, typename... Z, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD StructureChain<X, Y, Z...> getFormatProperties2KHR( VULKAN_HPP_NAMESPACE::Format format, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getFragmentShadingRatesKHR( uint32_t* pFragmentShadingRateCount, VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentShadingRateKHR* pFragmentShadingRates, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename PhysicalDeviceFragmentShadingRateKHRAllocator = std::allocator<PhysicalDeviceFragmentShadingRateKHR>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<PhysicalDeviceFragmentShadingRateKHR, PhysicalDeviceFragmentShadingRateKHRAllocator>>::type getFragmentShadingRatesKHR( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename PhysicalDeviceFragmentShadingRateKHRAllocator = std::allocator<PhysicalDeviceFragmentShadingRateKHR>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename B = PhysicalDeviceFragmentShadingRateKHRAllocator, typename std::enable_if<std::is_same<typename B::value_type, PhysicalDeviceFragmentShadingRateKHR>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<PhysicalDeviceFragmentShadingRateKHR, PhysicalDeviceFragmentShadingRateKHRAllocator>>::type getFragmentShadingRatesKHR( PhysicalDeviceFragmentShadingRateKHRAllocator & physicalDeviceFragmentShadingRateKHRAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getImageFormatProperties( VULKAN_HPP_NAMESPACE::Format format, VULKAN_HPP_NAMESPACE::ImageType type, VULKAN_HPP_NAMESPACE::ImageTiling tiling, VULKAN_HPP_NAMESPACE::ImageUsageFlags usage, VULKAN_HPP_NAMESPACE::ImageCreateFlags flags, VULKAN_HPP_NAMESPACE::ImageFormatProperties* pImageFormatProperties, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::ImageFormatProperties>::type getImageFormatProperties( VULKAN_HPP_NAMESPACE::Format format, VULKAN_HPP_NAMESPACE::ImageType type, VULKAN_HPP_NAMESPACE::ImageTiling tiling, VULKAN_HPP_NAMESPACE::ImageUsageFlags usage, VULKAN_HPP_NAMESPACE::ImageCreateFlags flags VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getImageFormatProperties2( const VULKAN_HPP_NAMESPACE::PhysicalDeviceImageFormatInfo2* pImageFormatInfo, VULKAN_HPP_NAMESPACE::ImageFormatProperties2* pImageFormatProperties, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::ImageFormatProperties2>::type getImageFormatProperties2( const PhysicalDeviceImageFormatInfo2 & imageFormatInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename X, typename Y, typename... Z, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<StructureChain<X, Y, Z...>>::type getImageFormatProperties2( const PhysicalDeviceImageFormatInfo2 & imageFormatInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getImageFormatProperties2KHR( const VULKAN_HPP_NAMESPACE::PhysicalDeviceImageFormatInfo2* pImageFormatInfo, VULKAN_HPP_NAMESPACE::ImageFormatProperties2* pImageFormatProperties, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::ImageFormatProperties2>::type getImageFormatProperties2KHR( const PhysicalDeviceImageFormatInfo2 & imageFormatInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename X, typename Y, typename... Z, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<StructureChain<X, Y, Z...>>::type getImageFormatProperties2KHR( const PhysicalDeviceImageFormatInfo2 & imageFormatInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void getMemoryProperties( VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties* pMemoryProperties, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties getMemoryProperties( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void getMemoryProperties2( VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties2* pMemoryProperties, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties2 getMemoryProperties2( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
- template <typename X, typename Y, typename... Z, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD StructureChain<X, Y, Z...> getMemoryProperties2( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void getMemoryProperties2KHR( VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties2* pMemoryProperties, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties2 getMemoryProperties2KHR( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
- template <typename X, typename Y, typename... Z, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD StructureChain<X, Y, Z...> getMemoryProperties2KHR( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void getMultisamplePropertiesEXT( VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples, VULKAN_HPP_NAMESPACE::MultisamplePropertiesEXT* pMultisampleProperties, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::MultisamplePropertiesEXT getMultisamplePropertiesEXT( VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getPresentRectanglesKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface, uint32_t* pRectCount, VULKAN_HPP_NAMESPACE::Rect2D* pRects, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Rect2DAllocator = std::allocator<Rect2D>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<Rect2D, Rect2DAllocator>>::type getPresentRectanglesKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename Rect2DAllocator = std::allocator<Rect2D>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename B = Rect2DAllocator, typename std::enable_if<std::is_same<typename B::value_type, Rect2D>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<Rect2D, Rect2DAllocator>>::type getPresentRectanglesKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface, Rect2DAllocator & rect2DAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void getProperties( VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties* pProperties, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties getProperties( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void getProperties2( VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties2* pProperties, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties2 getProperties2( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
- template <typename X, typename Y, typename... Z, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD StructureChain<X, Y, Z...> getProperties2( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void getProperties2KHR( VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties2* pProperties, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties2 getProperties2KHR( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
- template <typename X, typename Y, typename... Z, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD StructureChain<X, Y, Z...> getProperties2KHR( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void getQueueFamilyPerformanceQueryPassesKHR( const VULKAN_HPP_NAMESPACE::QueryPoolPerformanceCreateInfoKHR* pPerformanceQueryCreateInfo, uint32_t* pNumPasses, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD uint32_t getQueueFamilyPerformanceQueryPassesKHR( const QueryPoolPerformanceCreateInfoKHR & performanceQueryCreateInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void getQueueFamilyProperties( uint32_t* pQueueFamilyPropertyCount, VULKAN_HPP_NAMESPACE::QueueFamilyProperties* pQueueFamilyProperties, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename QueueFamilyPropertiesAllocator = std::allocator<QueueFamilyProperties>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD std::vector<QueueFamilyProperties, QueueFamilyPropertiesAllocator> getQueueFamilyProperties( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename QueueFamilyPropertiesAllocator = std::allocator<QueueFamilyProperties>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename B = QueueFamilyPropertiesAllocator, typename std::enable_if<std::is_same<typename B::value_type, QueueFamilyProperties>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD std::vector<QueueFamilyProperties, QueueFamilyPropertiesAllocator> getQueueFamilyProperties( QueueFamilyPropertiesAllocator & queueFamilyPropertiesAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void getQueueFamilyProperties2( uint32_t* pQueueFamilyPropertyCount, VULKAN_HPP_NAMESPACE::QueueFamilyProperties2* pQueueFamilyProperties, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename QueueFamilyProperties2Allocator = std::allocator<QueueFamilyProperties2>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD std::vector<QueueFamilyProperties2, QueueFamilyProperties2Allocator> getQueueFamilyProperties2( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename QueueFamilyProperties2Allocator = std::allocator<QueueFamilyProperties2>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename B = QueueFamilyProperties2Allocator, typename std::enable_if<std::is_same<typename B::value_type, QueueFamilyProperties2>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD std::vector<QueueFamilyProperties2, QueueFamilyProperties2Allocator> getQueueFamilyProperties2( QueueFamilyProperties2Allocator & queueFamilyProperties2Allocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename StructureChain, typename StructureChainAllocator = std::allocator<StructureChain>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD std::vector<StructureChain, StructureChainAllocator> getQueueFamilyProperties2( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename StructureChain, typename StructureChainAllocator = std::allocator<StructureChain>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename B = StructureChainAllocator, typename std::enable_if<std::is_same<typename B::value_type, StructureChain>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD std::vector<StructureChain, StructureChainAllocator> getQueueFamilyProperties2( StructureChainAllocator & structureChainAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void getQueueFamilyProperties2KHR( uint32_t* pQueueFamilyPropertyCount, VULKAN_HPP_NAMESPACE::QueueFamilyProperties2* pQueueFamilyProperties, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename QueueFamilyProperties2Allocator = std::allocator<QueueFamilyProperties2>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD std::vector<QueueFamilyProperties2, QueueFamilyProperties2Allocator> getQueueFamilyProperties2KHR( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename QueueFamilyProperties2Allocator = std::allocator<QueueFamilyProperties2>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename B = QueueFamilyProperties2Allocator, typename std::enable_if<std::is_same<typename B::value_type, QueueFamilyProperties2>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD std::vector<QueueFamilyProperties2, QueueFamilyProperties2Allocator> getQueueFamilyProperties2KHR( QueueFamilyProperties2Allocator & queueFamilyProperties2Allocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename StructureChain, typename StructureChainAllocator = std::allocator<StructureChain>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD std::vector<StructureChain, StructureChainAllocator> getQueueFamilyProperties2KHR( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename StructureChain, typename StructureChainAllocator = std::allocator<StructureChain>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename B = StructureChainAllocator, typename std::enable_if<std::is_same<typename B::value_type, StructureChain>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD std::vector<StructureChain, StructureChainAllocator> getQueueFamilyProperties2KHR( StructureChainAllocator & structureChainAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void getSparseImageFormatProperties( VULKAN_HPP_NAMESPACE::Format format, VULKAN_HPP_NAMESPACE::ImageType type, VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples, VULKAN_HPP_NAMESPACE::ImageUsageFlags usage, VULKAN_HPP_NAMESPACE::ImageTiling tiling, uint32_t* pPropertyCount, VULKAN_HPP_NAMESPACE::SparseImageFormatProperties* pProperties, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename SparseImageFormatPropertiesAllocator = std::allocator<SparseImageFormatProperties>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD std::vector<SparseImageFormatProperties, SparseImageFormatPropertiesAllocator> getSparseImageFormatProperties( VULKAN_HPP_NAMESPACE::Format format, VULKAN_HPP_NAMESPACE::ImageType type, VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples, VULKAN_HPP_NAMESPACE::ImageUsageFlags usage, VULKAN_HPP_NAMESPACE::ImageTiling tiling, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename SparseImageFormatPropertiesAllocator = std::allocator<SparseImageFormatProperties>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename B = SparseImageFormatPropertiesAllocator, typename std::enable_if<std::is_same<typename B::value_type, SparseImageFormatProperties>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD std::vector<SparseImageFormatProperties, SparseImageFormatPropertiesAllocator> getSparseImageFormatProperties( VULKAN_HPP_NAMESPACE::Format format, VULKAN_HPP_NAMESPACE::ImageType type, VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples, VULKAN_HPP_NAMESPACE::ImageUsageFlags usage, VULKAN_HPP_NAMESPACE::ImageTiling tiling, SparseImageFormatPropertiesAllocator & sparseImageFormatPropertiesAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void getSparseImageFormatProperties2( const VULKAN_HPP_NAMESPACE::PhysicalDeviceSparseImageFormatInfo2* pFormatInfo, uint32_t* pPropertyCount, VULKAN_HPP_NAMESPACE::SparseImageFormatProperties2* pProperties, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename SparseImageFormatProperties2Allocator = std::allocator<SparseImageFormatProperties2>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD std::vector<SparseImageFormatProperties2, SparseImageFormatProperties2Allocator> getSparseImageFormatProperties2( const PhysicalDeviceSparseImageFormatInfo2 & formatInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename SparseImageFormatProperties2Allocator = std::allocator<SparseImageFormatProperties2>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename B = SparseImageFormatProperties2Allocator, typename std::enable_if<std::is_same<typename B::value_type, SparseImageFormatProperties2>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD std::vector<SparseImageFormatProperties2, SparseImageFormatProperties2Allocator> getSparseImageFormatProperties2( const PhysicalDeviceSparseImageFormatInfo2 & formatInfo, SparseImageFormatProperties2Allocator & sparseImageFormatProperties2Allocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void getSparseImageFormatProperties2KHR( const VULKAN_HPP_NAMESPACE::PhysicalDeviceSparseImageFormatInfo2* pFormatInfo, uint32_t* pPropertyCount, VULKAN_HPP_NAMESPACE::SparseImageFormatProperties2* pProperties, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename SparseImageFormatProperties2Allocator = std::allocator<SparseImageFormatProperties2>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD std::vector<SparseImageFormatProperties2, SparseImageFormatProperties2Allocator> getSparseImageFormatProperties2KHR( const PhysicalDeviceSparseImageFormatInfo2 & formatInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename SparseImageFormatProperties2Allocator = std::allocator<SparseImageFormatProperties2>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename B = SparseImageFormatProperties2Allocator, typename std::enable_if<std::is_same<typename B::value_type, SparseImageFormatProperties2>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD std::vector<SparseImageFormatProperties2, SparseImageFormatProperties2Allocator> getSparseImageFormatProperties2KHR( const PhysicalDeviceSparseImageFormatInfo2 & formatInfo, SparseImageFormatProperties2Allocator & sparseImageFormatProperties2Allocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getSupportedFramebufferMixedSamplesCombinationsNV( uint32_t* pCombinationCount, VULKAN_HPP_NAMESPACE::FramebufferMixedSamplesCombinationNV* pCombinations, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename FramebufferMixedSamplesCombinationNVAllocator = std::allocator<FramebufferMixedSamplesCombinationNV>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<FramebufferMixedSamplesCombinationNV, FramebufferMixedSamplesCombinationNVAllocator>>::type getSupportedFramebufferMixedSamplesCombinationsNV( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename FramebufferMixedSamplesCombinationNVAllocator = std::allocator<FramebufferMixedSamplesCombinationNV>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename B = FramebufferMixedSamplesCombinationNVAllocator, typename std::enable_if<std::is_same<typename B::value_type, FramebufferMixedSamplesCombinationNV>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<FramebufferMixedSamplesCombinationNV, FramebufferMixedSamplesCombinationNVAllocator>>::type getSupportedFramebufferMixedSamplesCombinationsNV( FramebufferMixedSamplesCombinationNVAllocator & framebufferMixedSamplesCombinationNVAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getSurfaceCapabilities2EXT( VULKAN_HPP_NAMESPACE::SurfaceKHR surface, VULKAN_HPP_NAMESPACE::SurfaceCapabilities2EXT* pSurfaceCapabilities, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceCapabilities2EXT>::type getSurfaceCapabilities2EXT( VULKAN_HPP_NAMESPACE::SurfaceKHR surface, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getSurfaceCapabilities2KHR( const VULKAN_HPP_NAMESPACE::PhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo, VULKAN_HPP_NAMESPACE::SurfaceCapabilities2KHR* pSurfaceCapabilities, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceCapabilities2KHR>::type getSurfaceCapabilities2KHR( const PhysicalDeviceSurfaceInfo2KHR & surfaceInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename X, typename Y, typename... Z, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<StructureChain<X, Y, Z...>>::type getSurfaceCapabilities2KHR( const PhysicalDeviceSurfaceInfo2KHR & surfaceInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getSurfaceCapabilitiesKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface, VULKAN_HPP_NAMESPACE::SurfaceCapabilitiesKHR* pSurfaceCapabilities, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceCapabilitiesKHR>::type getSurfaceCapabilitiesKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getSurfaceFormats2KHR( const VULKAN_HPP_NAMESPACE::PhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo, uint32_t* pSurfaceFormatCount, VULKAN_HPP_NAMESPACE::SurfaceFormat2KHR* pSurfaceFormats, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename SurfaceFormat2KHRAllocator = std::allocator<SurfaceFormat2KHR>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<SurfaceFormat2KHR, SurfaceFormat2KHRAllocator>>::type getSurfaceFormats2KHR( const PhysicalDeviceSurfaceInfo2KHR & surfaceInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename SurfaceFormat2KHRAllocator = std::allocator<SurfaceFormat2KHR>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename B = SurfaceFormat2KHRAllocator, typename std::enable_if<std::is_same<typename B::value_type, SurfaceFormat2KHR>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<SurfaceFormat2KHR, SurfaceFormat2KHRAllocator>>::type getSurfaceFormats2KHR( const PhysicalDeviceSurfaceInfo2KHR & surfaceInfo, SurfaceFormat2KHRAllocator & surfaceFormat2KHRAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getSurfaceFormatsKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface, uint32_t* pSurfaceFormatCount, VULKAN_HPP_NAMESPACE::SurfaceFormatKHR* pSurfaceFormats, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename SurfaceFormatKHRAllocator = std::allocator<SurfaceFormatKHR>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<SurfaceFormatKHR, SurfaceFormatKHRAllocator>>::type getSurfaceFormatsKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename SurfaceFormatKHRAllocator = std::allocator<SurfaceFormatKHR>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename B = SurfaceFormatKHRAllocator, typename std::enable_if<std::is_same<typename B::value_type, SurfaceFormatKHR>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<SurfaceFormatKHR, SurfaceFormatKHRAllocator>>::type getSurfaceFormatsKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface, SurfaceFormatKHRAllocator & surfaceFormatKHRAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getSurfacePresentModes2EXT( const VULKAN_HPP_NAMESPACE::PhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo, uint32_t* pPresentModeCount, VULKAN_HPP_NAMESPACE::PresentModeKHR* pPresentModes, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename PresentModeKHRAllocator = std::allocator<PresentModeKHR>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<PresentModeKHR, PresentModeKHRAllocator>>::type getSurfacePresentModes2EXT( const PhysicalDeviceSurfaceInfo2KHR & surfaceInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename PresentModeKHRAllocator = std::allocator<PresentModeKHR>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename B = PresentModeKHRAllocator, typename std::enable_if<std::is_same<typename B::value_type, PresentModeKHR>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<PresentModeKHR, PresentModeKHRAllocator>>::type getSurfacePresentModes2EXT( const PhysicalDeviceSurfaceInfo2KHR & surfaceInfo, PresentModeKHRAllocator & presentModeKHRAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getSurfacePresentModesKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface, uint32_t* pPresentModeCount, VULKAN_HPP_NAMESPACE::PresentModeKHR* pPresentModes, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename PresentModeKHRAllocator = std::allocator<PresentModeKHR>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<PresentModeKHR, PresentModeKHRAllocator>>::type getSurfacePresentModesKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename PresentModeKHRAllocator = std::allocator<PresentModeKHR>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename B = PresentModeKHRAllocator, typename std::enable_if<std::is_same<typename B::value_type, PresentModeKHR>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<PresentModeKHR, PresentModeKHRAllocator>>::type getSurfacePresentModesKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface, PresentModeKHRAllocator & presentModeKHRAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getSurfaceSupportKHR( uint32_t queueFamilyIndex, VULKAN_HPP_NAMESPACE::SurfaceKHR surface, VULKAN_HPP_NAMESPACE::Bool32* pSupported, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::Bool32>::type getSurfaceSupportKHR( uint32_t queueFamilyIndex, VULKAN_HPP_NAMESPACE::SurfaceKHR surface, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getToolPropertiesEXT( uint32_t* pToolCount, VULKAN_HPP_NAMESPACE::PhysicalDeviceToolPropertiesEXT* pToolProperties, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename PhysicalDeviceToolPropertiesEXTAllocator = std::allocator<PhysicalDeviceToolPropertiesEXT>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<PhysicalDeviceToolPropertiesEXT, PhysicalDeviceToolPropertiesEXTAllocator>>::type getToolPropertiesEXT( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename PhysicalDeviceToolPropertiesEXTAllocator = std::allocator<PhysicalDeviceToolPropertiesEXT>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename B = PhysicalDeviceToolPropertiesEXTAllocator, typename std::enable_if<std::is_same<typename B::value_type, PhysicalDeviceToolPropertiesEXT>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<PhysicalDeviceToolPropertiesEXT, PhysicalDeviceToolPropertiesEXTAllocator>>::type getToolPropertiesEXT( PhysicalDeviceToolPropertiesEXTAllocator & physicalDeviceToolPropertiesEXTAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-#ifdef VK_USE_PLATFORM_WAYLAND_KHR
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- Bool32 getWaylandPresentationSupportKHR( uint32_t queueFamilyIndex, struct wl_display* display, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- Bool32 getWaylandPresentationSupportKHR( uint32_t queueFamilyIndex, struct wl_display & display, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_WAYLAND_KHR*/
-
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- Bool32 getWin32PresentationSupportKHR( uint32_t queueFamilyIndex, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-
-
-#ifdef VK_USE_PLATFORM_XCB_KHR
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- Bool32 getXcbPresentationSupportKHR( uint32_t queueFamilyIndex, xcb_connection_t* connection, xcb_visualid_t visual_id, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- Bool32 getXcbPresentationSupportKHR( uint32_t queueFamilyIndex, xcb_connection_t & connection, xcb_visualid_t visual_id, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_XCB_KHR*/
-
-
-#ifdef VK_USE_PLATFORM_XLIB_KHR
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- Bool32 getXlibPresentationSupportKHR( uint32_t queueFamilyIndex, Display* dpy, VisualID visualID, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- Bool32 getXlibPresentationSupportKHR( uint32_t queueFamilyIndex, Display & dpy, VisualID visualID, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_XLIB_KHR*/
-
-
-#ifdef VK_USE_PLATFORM_XLIB_XRANDR_EXT
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result getRandROutputDisplayEXT( Display* dpy, RROutput rrOutput, VULKAN_HPP_NAMESPACE::DisplayKHR* pDisplay, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- typename ResultValueType<VULKAN_HPP_NAMESPACE::DisplayKHR>::type getRandROutputDisplayEXT( Display & dpy, RROutput rrOutput, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::DisplayKHR, Dispatch>>::type getRandROutputDisplayEXTUnique( Display & dpy, RROutput rrOutput, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_XLIB_XRANDR_EXT*/
-
-
-#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- Result releaseDisplayEXT( VULKAN_HPP_NAMESPACE::DisplayKHR display, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#else
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- typename ResultValueType<void>::type releaseDisplayEXT( VULKAN_HPP_NAMESPACE::DisplayKHR display, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- VULKAN_HPP_TYPESAFE_EXPLICIT operator VkPhysicalDevice() const VULKAN_HPP_NOEXCEPT
- {
- return m_physicalDevice;
- }
-
- explicit operator bool() const VULKAN_HPP_NOEXCEPT
- {
- return m_physicalDevice != VK_NULL_HANDLE;
- }
-
- bool operator!() const VULKAN_HPP_NOEXCEPT
- {
- return m_physicalDevice == VK_NULL_HANDLE;
- }
-
- private:
- VkPhysicalDevice m_physicalDevice;
- };
- static_assert( sizeof( VULKAN_HPP_NAMESPACE::PhysicalDevice ) == sizeof( VkPhysicalDevice ), "handle and wrapper have different size!" );
-
- template <>
- struct VULKAN_HPP_DEPRECATED("vk::cpp_type is deprecated. Use vk::CppType instead.") cpp_type<ObjectType::ePhysicalDevice>
- {
- using type = VULKAN_HPP_NAMESPACE::PhysicalDevice;
- };
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::ePhysicalDevice>
- {
- using Type = VULKAN_HPP_NAMESPACE::PhysicalDevice;
- };
-
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT, VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::ePhysicalDevice>
- {
- using Type = VULKAN_HPP_NAMESPACE::PhysicalDevice;
+ value = true
+ };
};
-
-
template <>
- struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::PhysicalDevice>
+ struct StructExtends<PhysicalDevicePipelineCreationCacheControlFeaturesEXT, DeviceCreateInfo>
{
- static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
- };
-
- struct DeviceGroupDeviceCreateInfo
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDeviceGroupDeviceCreateInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DeviceGroupDeviceCreateInfo(uint32_t physicalDeviceCount_ = {}, const VULKAN_HPP_NAMESPACE::PhysicalDevice* pPhysicalDevices_ = {}) VULKAN_HPP_NOEXCEPT
- : physicalDeviceCount( physicalDeviceCount_ ), pPhysicalDevices( pPhysicalDevices_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DeviceGroupDeviceCreateInfo( DeviceGroupDeviceCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DeviceGroupDeviceCreateInfo( VkDeviceGroupDeviceCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- DeviceGroupDeviceCreateInfo( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::PhysicalDevice> const & physicalDevices_ )
- : physicalDeviceCount( static_cast<uint32_t>( physicalDevices_.size() ) ), pPhysicalDevices( physicalDevices_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DeviceGroupDeviceCreateInfo & operator=( VkDeviceGroupDeviceCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DeviceGroupDeviceCreateInfo const *>( &rhs );
- return *this;
- }
-
- DeviceGroupDeviceCreateInfo & operator=( DeviceGroupDeviceCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DeviceGroupDeviceCreateInfo ) );
- return *this;
- }
-
- DeviceGroupDeviceCreateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- DeviceGroupDeviceCreateInfo & setPhysicalDeviceCount( uint32_t physicalDeviceCount_ ) VULKAN_HPP_NOEXCEPT
- {
- physicalDeviceCount = physicalDeviceCount_;
- return *this;
- }
-
- DeviceGroupDeviceCreateInfo & setPPhysicalDevices( const VULKAN_HPP_NAMESPACE::PhysicalDevice* pPhysicalDevices_ ) VULKAN_HPP_NOEXCEPT
- {
- pPhysicalDevices = pPhysicalDevices_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- DeviceGroupDeviceCreateInfo & setPhysicalDevices( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::PhysicalDevice> const & physicalDevices_ ) VULKAN_HPP_NOEXCEPT
- {
- physicalDeviceCount = static_cast<uint32_t>( physicalDevices_.size() );
- pPhysicalDevices = physicalDevices_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkDeviceGroupDeviceCreateInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDeviceGroupDeviceCreateInfo*>( this );
- }
-
- operator VkDeviceGroupDeviceCreateInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDeviceGroupDeviceCreateInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DeviceGroupDeviceCreateInfo const& ) const = default;
-#else
- bool operator==( DeviceGroupDeviceCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( physicalDeviceCount == rhs.physicalDeviceCount )
- && ( pPhysicalDevices == rhs.pPhysicalDevices );
- }
-
- bool operator!=( DeviceGroupDeviceCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDeviceGroupDeviceCreateInfo;
- const void* pNext = {};
- uint32_t physicalDeviceCount = {};
- const VULKAN_HPP_NAMESPACE::PhysicalDevice* pPhysicalDevices = {};
-
+ value = true
+ };
};
- static_assert( sizeof( DeviceGroupDeviceCreateInfo ) == sizeof( VkDeviceGroupDeviceCreateInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DeviceGroupDeviceCreateInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eDeviceGroupDeviceCreateInfo>
- {
- using Type = DeviceGroupDeviceCreateInfo;
- };
- using DeviceGroupDeviceCreateInfoKHR = DeviceGroupDeviceCreateInfo;
-
- struct DeviceGroupPresentInfoKHR
+ struct StructExtends<PhysicalDevicePipelineExecutablePropertiesFeaturesKHR, PhysicalDeviceFeatures2>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDeviceGroupPresentInfoKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DeviceGroupPresentInfoKHR(uint32_t swapchainCount_ = {}, const uint32_t* pDeviceMasks_ = {}, VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagBitsKHR mode_ = VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagBitsKHR::eLocal) VULKAN_HPP_NOEXCEPT
- : swapchainCount( swapchainCount_ ), pDeviceMasks( pDeviceMasks_ ), mode( mode_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DeviceGroupPresentInfoKHR( DeviceGroupPresentInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DeviceGroupPresentInfoKHR( VkDeviceGroupPresentInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- DeviceGroupPresentInfoKHR( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & deviceMasks_, VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagBitsKHR mode_ = VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagBitsKHR::eLocal )
- : swapchainCount( static_cast<uint32_t>( deviceMasks_.size() ) ), pDeviceMasks( deviceMasks_.data() ), mode( mode_ )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DeviceGroupPresentInfoKHR & operator=( VkDeviceGroupPresentInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DeviceGroupPresentInfoKHR const *>( &rhs );
- return *this;
- }
-
- DeviceGroupPresentInfoKHR & operator=( DeviceGroupPresentInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DeviceGroupPresentInfoKHR ) );
- return *this;
- }
-
- DeviceGroupPresentInfoKHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- DeviceGroupPresentInfoKHR & setSwapchainCount( uint32_t swapchainCount_ ) VULKAN_HPP_NOEXCEPT
- {
- swapchainCount = swapchainCount_;
- return *this;
- }
-
- DeviceGroupPresentInfoKHR & setPDeviceMasks( const uint32_t* pDeviceMasks_ ) VULKAN_HPP_NOEXCEPT
- {
- pDeviceMasks = pDeviceMasks_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- DeviceGroupPresentInfoKHR & setDeviceMasks( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & deviceMasks_ ) VULKAN_HPP_NOEXCEPT
- {
- swapchainCount = static_cast<uint32_t>( deviceMasks_.size() );
- pDeviceMasks = deviceMasks_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- DeviceGroupPresentInfoKHR & setMode( VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagBitsKHR mode_ ) VULKAN_HPP_NOEXCEPT
- {
- mode = mode_;
- return *this;
- }
-
-
- operator VkDeviceGroupPresentInfoKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDeviceGroupPresentInfoKHR*>( this );
- }
-
- operator VkDeviceGroupPresentInfoKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDeviceGroupPresentInfoKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DeviceGroupPresentInfoKHR const& ) const = default;
-#else
- bool operator==( DeviceGroupPresentInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( swapchainCount == rhs.swapchainCount )
- && ( pDeviceMasks == rhs.pDeviceMasks )
- && ( mode == rhs.mode );
- }
-
- bool operator!=( DeviceGroupPresentInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDeviceGroupPresentInfoKHR;
- const void* pNext = {};
- uint32_t swapchainCount = {};
- const uint32_t* pDeviceMasks = {};
- VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagBitsKHR mode = VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagBitsKHR::eLocal;
-
+ value = true
+ };
};
- static_assert( sizeof( DeviceGroupPresentInfoKHR ) == sizeof( VkDeviceGroupPresentInfoKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DeviceGroupPresentInfoKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eDeviceGroupPresentInfoKHR>
+ struct StructExtends<PhysicalDevicePipelineExecutablePropertiesFeaturesKHR, DeviceCreateInfo>
{
- using Type = DeviceGroupPresentInfoKHR;
- };
-
- struct DeviceGroupRenderPassBeginInfo
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDeviceGroupRenderPassBeginInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DeviceGroupRenderPassBeginInfo(uint32_t deviceMask_ = {}, uint32_t deviceRenderAreaCount_ = {}, const VULKAN_HPP_NAMESPACE::Rect2D* pDeviceRenderAreas_ = {}) VULKAN_HPP_NOEXCEPT
- : deviceMask( deviceMask_ ), deviceRenderAreaCount( deviceRenderAreaCount_ ), pDeviceRenderAreas( pDeviceRenderAreas_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DeviceGroupRenderPassBeginInfo( DeviceGroupRenderPassBeginInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DeviceGroupRenderPassBeginInfo( VkDeviceGroupRenderPassBeginInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- DeviceGroupRenderPassBeginInfo( uint32_t deviceMask_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Rect2D> const & deviceRenderAreas_ )
- : deviceMask( deviceMask_ ), deviceRenderAreaCount( static_cast<uint32_t>( deviceRenderAreas_.size() ) ), pDeviceRenderAreas( deviceRenderAreas_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DeviceGroupRenderPassBeginInfo & operator=( VkDeviceGroupRenderPassBeginInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DeviceGroupRenderPassBeginInfo const *>( &rhs );
- return *this;
- }
-
- DeviceGroupRenderPassBeginInfo & operator=( DeviceGroupRenderPassBeginInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DeviceGroupRenderPassBeginInfo ) );
- return *this;
- }
-
- DeviceGroupRenderPassBeginInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- DeviceGroupRenderPassBeginInfo & setDeviceMask( uint32_t deviceMask_ ) VULKAN_HPP_NOEXCEPT
- {
- deviceMask = deviceMask_;
- return *this;
- }
-
- DeviceGroupRenderPassBeginInfo & setDeviceRenderAreaCount( uint32_t deviceRenderAreaCount_ ) VULKAN_HPP_NOEXCEPT
- {
- deviceRenderAreaCount = deviceRenderAreaCount_;
- return *this;
- }
-
- DeviceGroupRenderPassBeginInfo & setPDeviceRenderAreas( const VULKAN_HPP_NAMESPACE::Rect2D* pDeviceRenderAreas_ ) VULKAN_HPP_NOEXCEPT
- {
- pDeviceRenderAreas = pDeviceRenderAreas_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- DeviceGroupRenderPassBeginInfo & setDeviceRenderAreas( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Rect2D> const & deviceRenderAreas_ ) VULKAN_HPP_NOEXCEPT
- {
- deviceRenderAreaCount = static_cast<uint32_t>( deviceRenderAreas_.size() );
- pDeviceRenderAreas = deviceRenderAreas_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkDeviceGroupRenderPassBeginInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDeviceGroupRenderPassBeginInfo*>( this );
- }
-
- operator VkDeviceGroupRenderPassBeginInfo &() VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<VkDeviceGroupRenderPassBeginInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DeviceGroupRenderPassBeginInfo const& ) const = default;
-#else
- bool operator==( DeviceGroupRenderPassBeginInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( deviceMask == rhs.deviceMask )
- && ( deviceRenderAreaCount == rhs.deviceRenderAreaCount )
- && ( pDeviceRenderAreas == rhs.pDeviceRenderAreas );
- }
-
- bool operator!=( DeviceGroupRenderPassBeginInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDeviceGroupRenderPassBeginInfo;
- const void* pNext = {};
- uint32_t deviceMask = {};
- uint32_t deviceRenderAreaCount = {};
- const VULKAN_HPP_NAMESPACE::Rect2D* pDeviceRenderAreas = {};
-
+ value = true
+ };
};
- static_assert( sizeof( DeviceGroupRenderPassBeginInfo ) == sizeof( VkDeviceGroupRenderPassBeginInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DeviceGroupRenderPassBeginInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eDeviceGroupRenderPassBeginInfo>
+ struct StructExtends<PhysicalDevicePointClippingProperties, PhysicalDeviceProperties2>
{
- using Type = DeviceGroupRenderPassBeginInfo;
- };
- using DeviceGroupRenderPassBeginInfoKHR = DeviceGroupRenderPassBeginInfo;
-
- struct DeviceGroupSubmitInfo
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDeviceGroupSubmitInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DeviceGroupSubmitInfo(uint32_t waitSemaphoreCount_ = {}, const uint32_t* pWaitSemaphoreDeviceIndices_ = {}, uint32_t commandBufferCount_ = {}, const uint32_t* pCommandBufferDeviceMasks_ = {}, uint32_t signalSemaphoreCount_ = {}, const uint32_t* pSignalSemaphoreDeviceIndices_ = {}) VULKAN_HPP_NOEXCEPT
- : waitSemaphoreCount( waitSemaphoreCount_ ), pWaitSemaphoreDeviceIndices( pWaitSemaphoreDeviceIndices_ ), commandBufferCount( commandBufferCount_ ), pCommandBufferDeviceMasks( pCommandBufferDeviceMasks_ ), signalSemaphoreCount( signalSemaphoreCount_ ), pSignalSemaphoreDeviceIndices( pSignalSemaphoreDeviceIndices_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DeviceGroupSubmitInfo( DeviceGroupSubmitInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DeviceGroupSubmitInfo( VkDeviceGroupSubmitInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- DeviceGroupSubmitInfo( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & waitSemaphoreDeviceIndices_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & commandBufferDeviceMasks_ = {}, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & signalSemaphoreDeviceIndices_ = {} )
- : waitSemaphoreCount( static_cast<uint32_t>( waitSemaphoreDeviceIndices_.size() ) ), pWaitSemaphoreDeviceIndices( waitSemaphoreDeviceIndices_.data() ), commandBufferCount( static_cast<uint32_t>( commandBufferDeviceMasks_.size() ) ), pCommandBufferDeviceMasks( commandBufferDeviceMasks_.data() ), signalSemaphoreCount( static_cast<uint32_t>( signalSemaphoreDeviceIndices_.size() ) ), pSignalSemaphoreDeviceIndices( signalSemaphoreDeviceIndices_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DeviceGroupSubmitInfo & operator=( VkDeviceGroupSubmitInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DeviceGroupSubmitInfo const *>( &rhs );
- return *this;
- }
-
- DeviceGroupSubmitInfo & operator=( DeviceGroupSubmitInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DeviceGroupSubmitInfo ) );
- return *this;
- }
-
- DeviceGroupSubmitInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- DeviceGroupSubmitInfo & setWaitSemaphoreCount( uint32_t waitSemaphoreCount_ ) VULKAN_HPP_NOEXCEPT
- {
- waitSemaphoreCount = waitSemaphoreCount_;
- return *this;
- }
-
- DeviceGroupSubmitInfo & setPWaitSemaphoreDeviceIndices( const uint32_t* pWaitSemaphoreDeviceIndices_ ) VULKAN_HPP_NOEXCEPT
- {
- pWaitSemaphoreDeviceIndices = pWaitSemaphoreDeviceIndices_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- DeviceGroupSubmitInfo & setWaitSemaphoreDeviceIndices( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & waitSemaphoreDeviceIndices_ ) VULKAN_HPP_NOEXCEPT
- {
- waitSemaphoreCount = static_cast<uint32_t>( waitSemaphoreDeviceIndices_.size() );
- pWaitSemaphoreDeviceIndices = waitSemaphoreDeviceIndices_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- DeviceGroupSubmitInfo & setCommandBufferCount( uint32_t commandBufferCount_ ) VULKAN_HPP_NOEXCEPT
- {
- commandBufferCount = commandBufferCount_;
- return *this;
- }
-
- DeviceGroupSubmitInfo & setPCommandBufferDeviceMasks( const uint32_t* pCommandBufferDeviceMasks_ ) VULKAN_HPP_NOEXCEPT
- {
- pCommandBufferDeviceMasks = pCommandBufferDeviceMasks_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- DeviceGroupSubmitInfo & setCommandBufferDeviceMasks( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & commandBufferDeviceMasks_ ) VULKAN_HPP_NOEXCEPT
- {
- commandBufferCount = static_cast<uint32_t>( commandBufferDeviceMasks_.size() );
- pCommandBufferDeviceMasks = commandBufferDeviceMasks_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- DeviceGroupSubmitInfo & setSignalSemaphoreCount( uint32_t signalSemaphoreCount_ ) VULKAN_HPP_NOEXCEPT
- {
- signalSemaphoreCount = signalSemaphoreCount_;
- return *this;
- }
-
- DeviceGroupSubmitInfo & setPSignalSemaphoreDeviceIndices( const uint32_t* pSignalSemaphoreDeviceIndices_ ) VULKAN_HPP_NOEXCEPT
- {
- pSignalSemaphoreDeviceIndices = pSignalSemaphoreDeviceIndices_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- DeviceGroupSubmitInfo & setSignalSemaphoreDeviceIndices( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & signalSemaphoreDeviceIndices_ ) VULKAN_HPP_NOEXCEPT
- {
- signalSemaphoreCount = static_cast<uint32_t>( signalSemaphoreDeviceIndices_.size() );
- pSignalSemaphoreDeviceIndices = signalSemaphoreDeviceIndices_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkDeviceGroupSubmitInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDeviceGroupSubmitInfo*>( this );
- }
-
- operator VkDeviceGroupSubmitInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDeviceGroupSubmitInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DeviceGroupSubmitInfo const& ) const = default;
-#else
- bool operator==( DeviceGroupSubmitInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( waitSemaphoreCount == rhs.waitSemaphoreCount )
- && ( pWaitSemaphoreDeviceIndices == rhs.pWaitSemaphoreDeviceIndices )
- && ( commandBufferCount == rhs.commandBufferCount )
- && ( pCommandBufferDeviceMasks == rhs.pCommandBufferDeviceMasks )
- && ( signalSemaphoreCount == rhs.signalSemaphoreCount )
- && ( pSignalSemaphoreDeviceIndices == rhs.pSignalSemaphoreDeviceIndices );
- }
-
- bool operator!=( DeviceGroupSubmitInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDeviceGroupSubmitInfo;
- const void* pNext = {};
- uint32_t waitSemaphoreCount = {};
- const uint32_t* pWaitSemaphoreDeviceIndices = {};
- uint32_t commandBufferCount = {};
- const uint32_t* pCommandBufferDeviceMasks = {};
- uint32_t signalSemaphoreCount = {};
- const uint32_t* pSignalSemaphoreDeviceIndices = {};
-
+ value = true
+ };
};
- static_assert( sizeof( DeviceGroupSubmitInfo ) == sizeof( VkDeviceGroupSubmitInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DeviceGroupSubmitInfo>::value, "struct wrapper is not a standard layout!" );
-
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
template <>
- struct CppType<StructureType, StructureType::eDeviceGroupSubmitInfo>
+ struct StructExtends<PhysicalDevicePortabilitySubsetFeaturesKHR, PhysicalDeviceFeatures2>
{
- using Type = DeviceGroupSubmitInfo;
- };
- using DeviceGroupSubmitInfoKHR = DeviceGroupSubmitInfo;
-
- struct DeviceGroupSwapchainCreateInfoKHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDeviceGroupSwapchainCreateInfoKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DeviceGroupSwapchainCreateInfoKHR(VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagsKHR modes_ = {}) VULKAN_HPP_NOEXCEPT
- : modes( modes_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DeviceGroupSwapchainCreateInfoKHR( DeviceGroupSwapchainCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DeviceGroupSwapchainCreateInfoKHR( VkDeviceGroupSwapchainCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DeviceGroupSwapchainCreateInfoKHR & operator=( VkDeviceGroupSwapchainCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DeviceGroupSwapchainCreateInfoKHR const *>( &rhs );
- return *this;
- }
-
- DeviceGroupSwapchainCreateInfoKHR & operator=( DeviceGroupSwapchainCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DeviceGroupSwapchainCreateInfoKHR ) );
- return *this;
- }
-
- DeviceGroupSwapchainCreateInfoKHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- DeviceGroupSwapchainCreateInfoKHR & setModes( VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagsKHR modes_ ) VULKAN_HPP_NOEXCEPT
- {
- modes = modes_;
- return *this;
- }
-
-
- operator VkDeviceGroupSwapchainCreateInfoKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDeviceGroupSwapchainCreateInfoKHR*>( this );
- }
-
- operator VkDeviceGroupSwapchainCreateInfoKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDeviceGroupSwapchainCreateInfoKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DeviceGroupSwapchainCreateInfoKHR const& ) const = default;
-#else
- bool operator==( DeviceGroupSwapchainCreateInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( modes == rhs.modes );
- }
-
- bool operator!=( DeviceGroupSwapchainCreateInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDeviceGroupSwapchainCreateInfoKHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagsKHR modes = {};
-
+ value = true
+ };
};
- static_assert( sizeof( DeviceGroupSwapchainCreateInfoKHR ) == sizeof( VkDeviceGroupSwapchainCreateInfoKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DeviceGroupSwapchainCreateInfoKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eDeviceGroupSwapchainCreateInfoKHR>
+ struct StructExtends<PhysicalDevicePortabilitySubsetFeaturesKHR, DeviceCreateInfo>
{
- using Type = DeviceGroupSwapchainCreateInfoKHR;
- };
-
- struct DeviceMemoryOverallocationCreateInfoAMD
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDeviceMemoryOverallocationCreateInfoAMD;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DeviceMemoryOverallocationCreateInfoAMD(VULKAN_HPP_NAMESPACE::MemoryOverallocationBehaviorAMD overallocationBehavior_ = VULKAN_HPP_NAMESPACE::MemoryOverallocationBehaviorAMD::eDefault) VULKAN_HPP_NOEXCEPT
- : overallocationBehavior( overallocationBehavior_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DeviceMemoryOverallocationCreateInfoAMD( DeviceMemoryOverallocationCreateInfoAMD const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DeviceMemoryOverallocationCreateInfoAMD( VkDeviceMemoryOverallocationCreateInfoAMD const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DeviceMemoryOverallocationCreateInfoAMD & operator=( VkDeviceMemoryOverallocationCreateInfoAMD const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DeviceMemoryOverallocationCreateInfoAMD const *>( &rhs );
- return *this;
- }
-
- DeviceMemoryOverallocationCreateInfoAMD & operator=( DeviceMemoryOverallocationCreateInfoAMD const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DeviceMemoryOverallocationCreateInfoAMD ) );
- return *this;
- }
-
- DeviceMemoryOverallocationCreateInfoAMD & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- DeviceMemoryOverallocationCreateInfoAMD & setOverallocationBehavior( VULKAN_HPP_NAMESPACE::MemoryOverallocationBehaviorAMD overallocationBehavior_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- overallocationBehavior = overallocationBehavior_;
- return *this;
- }
-
-
- operator VkDeviceMemoryOverallocationCreateInfoAMD const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDeviceMemoryOverallocationCreateInfoAMD*>( this );
- }
-
- operator VkDeviceMemoryOverallocationCreateInfoAMD &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDeviceMemoryOverallocationCreateInfoAMD*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DeviceMemoryOverallocationCreateInfoAMD const& ) const = default;
-#else
- bool operator==( DeviceMemoryOverallocationCreateInfoAMD const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( overallocationBehavior == rhs.overallocationBehavior );
- }
-
- bool operator!=( DeviceMemoryOverallocationCreateInfoAMD const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDeviceMemoryOverallocationCreateInfoAMD;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::MemoryOverallocationBehaviorAMD overallocationBehavior = VULKAN_HPP_NAMESPACE::MemoryOverallocationBehaviorAMD::eDefault;
-
+ value = true
+ };
};
- static_assert( sizeof( DeviceMemoryOverallocationCreateInfoAMD ) == sizeof( VkDeviceMemoryOverallocationCreateInfoAMD ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DeviceMemoryOverallocationCreateInfoAMD>::value, "struct wrapper is not a standard layout!" );
-
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
template <>
- struct CppType<StructureType, StructureType::eDeviceMemoryOverallocationCreateInfoAMD>
+ struct StructExtends<PhysicalDevicePortabilitySubsetPropertiesKHR, PhysicalDeviceProperties2>
{
- using Type = DeviceMemoryOverallocationCreateInfoAMD;
- };
-
- struct DeviceMemoryReportCallbackDataEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDeviceMemoryReportCallbackDataEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DeviceMemoryReportCallbackDataEXT(VULKAN_HPP_NAMESPACE::DeviceMemoryReportFlagsEXT flags_ = {}, VULKAN_HPP_NAMESPACE::DeviceMemoryReportEventTypeEXT type_ = VULKAN_HPP_NAMESPACE::DeviceMemoryReportEventTypeEXT::eAllocate, uint64_t memoryObjectId_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize size_ = {}, VULKAN_HPP_NAMESPACE::ObjectType objectType_ = VULKAN_HPP_NAMESPACE::ObjectType::eUnknown, uint64_t objectHandle_ = {}, uint32_t heapIndex_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), type( type_ ), memoryObjectId( memoryObjectId_ ), size( size_ ), objectType( objectType_ ), objectHandle( objectHandle_ ), heapIndex( heapIndex_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DeviceMemoryReportCallbackDataEXT( DeviceMemoryReportCallbackDataEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DeviceMemoryReportCallbackDataEXT( VkDeviceMemoryReportCallbackDataEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DeviceMemoryReportCallbackDataEXT & operator=( VkDeviceMemoryReportCallbackDataEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DeviceMemoryReportCallbackDataEXT const *>( &rhs );
- return *this;
- }
-
- DeviceMemoryReportCallbackDataEXT & operator=( DeviceMemoryReportCallbackDataEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DeviceMemoryReportCallbackDataEXT ) );
- return *this;
- }
-
-
- operator VkDeviceMemoryReportCallbackDataEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDeviceMemoryReportCallbackDataEXT*>( this );
- }
-
- operator VkDeviceMemoryReportCallbackDataEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDeviceMemoryReportCallbackDataEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DeviceMemoryReportCallbackDataEXT const& ) const = default;
-#else
- bool operator==( DeviceMemoryReportCallbackDataEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( type == rhs.type )
- && ( memoryObjectId == rhs.memoryObjectId )
- && ( size == rhs.size )
- && ( objectType == rhs.objectType )
- && ( objectHandle == rhs.objectHandle )
- && ( heapIndex == rhs.heapIndex );
- }
-
- bool operator!=( DeviceMemoryReportCallbackDataEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDeviceMemoryReportCallbackDataEXT;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::DeviceMemoryReportFlagsEXT flags = {};
- VULKAN_HPP_NAMESPACE::DeviceMemoryReportEventTypeEXT type = VULKAN_HPP_NAMESPACE::DeviceMemoryReportEventTypeEXT::eAllocate;
- uint64_t memoryObjectId = {};
- VULKAN_HPP_NAMESPACE::DeviceSize size = {};
- VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::eUnknown;
- uint64_t objectHandle = {};
- uint32_t heapIndex = {};
-
+ value = true
+ };
};
- static_assert( sizeof( DeviceMemoryReportCallbackDataEXT ) == sizeof( VkDeviceMemoryReportCallbackDataEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DeviceMemoryReportCallbackDataEXT>::value, "struct wrapper is not a standard layout!" );
-
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
template <>
- struct CppType<StructureType, StructureType::eDeviceMemoryReportCallbackDataEXT>
+ struct StructExtends<PhysicalDevicePrivateDataFeaturesEXT, PhysicalDeviceFeatures2>
{
- using Type = DeviceMemoryReportCallbackDataEXT;
- };
-
- struct DevicePrivateDataCreateInfoEXT
- {
- static const bool allowDuplicate = true;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDevicePrivateDataCreateInfoEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DevicePrivateDataCreateInfoEXT(uint32_t privateDataSlotRequestCount_ = {}) VULKAN_HPP_NOEXCEPT
- : privateDataSlotRequestCount( privateDataSlotRequestCount_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DevicePrivateDataCreateInfoEXT( DevicePrivateDataCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DevicePrivateDataCreateInfoEXT( VkDevicePrivateDataCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DevicePrivateDataCreateInfoEXT & operator=( VkDevicePrivateDataCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DevicePrivateDataCreateInfoEXT const *>( &rhs );
- return *this;
- }
-
- DevicePrivateDataCreateInfoEXT & operator=( DevicePrivateDataCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DevicePrivateDataCreateInfoEXT ) );
- return *this;
- }
-
- DevicePrivateDataCreateInfoEXT & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- pNext = pNext_;
- return *this;
- }
-
- DevicePrivateDataCreateInfoEXT & setPrivateDataSlotRequestCount( uint32_t privateDataSlotRequestCount_ ) VULKAN_HPP_NOEXCEPT
- {
- privateDataSlotRequestCount = privateDataSlotRequestCount_;
- return *this;
- }
-
-
- operator VkDevicePrivateDataCreateInfoEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDevicePrivateDataCreateInfoEXT*>( this );
- }
-
- operator VkDevicePrivateDataCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDevicePrivateDataCreateInfoEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DevicePrivateDataCreateInfoEXT const& ) const = default;
-#else
- bool operator==( DevicePrivateDataCreateInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( privateDataSlotRequestCount == rhs.privateDataSlotRequestCount );
- }
-
- bool operator!=( DevicePrivateDataCreateInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDevicePrivateDataCreateInfoEXT;
- const void* pNext = {};
- uint32_t privateDataSlotRequestCount = {};
-
+ value = true
+ };
};
- static_assert( sizeof( DevicePrivateDataCreateInfoEXT ) == sizeof( VkDevicePrivateDataCreateInfoEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DevicePrivateDataCreateInfoEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eDevicePrivateDataCreateInfoEXT>
+ struct StructExtends<PhysicalDevicePrivateDataFeaturesEXT, DeviceCreateInfo>
{
- using Type = DevicePrivateDataCreateInfoEXT;
- };
-
- struct DeviceQueueGlobalPriorityCreateInfoEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDeviceQueueGlobalPriorityCreateInfoEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DeviceQueueGlobalPriorityCreateInfoEXT(VULKAN_HPP_NAMESPACE::QueueGlobalPriorityEXT globalPriority_ = VULKAN_HPP_NAMESPACE::QueueGlobalPriorityEXT::eLow) VULKAN_HPP_NOEXCEPT
- : globalPriority( globalPriority_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DeviceQueueGlobalPriorityCreateInfoEXT( DeviceQueueGlobalPriorityCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DeviceQueueGlobalPriorityCreateInfoEXT( VkDeviceQueueGlobalPriorityCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DeviceQueueGlobalPriorityCreateInfoEXT & operator=( VkDeviceQueueGlobalPriorityCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DeviceQueueGlobalPriorityCreateInfoEXT const *>( &rhs );
- return *this;
- }
-
- DeviceQueueGlobalPriorityCreateInfoEXT & operator=( DeviceQueueGlobalPriorityCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DeviceQueueGlobalPriorityCreateInfoEXT ) );
- return *this;
- }
-
- DeviceQueueGlobalPriorityCreateInfoEXT & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- DeviceQueueGlobalPriorityCreateInfoEXT & setGlobalPriority( VULKAN_HPP_NAMESPACE::QueueGlobalPriorityEXT globalPriority_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- globalPriority = globalPriority_;
- return *this;
- }
-
-
- operator VkDeviceQueueGlobalPriorityCreateInfoEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDeviceQueueGlobalPriorityCreateInfoEXT*>( this );
- }
-
- operator VkDeviceQueueGlobalPriorityCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDeviceQueueGlobalPriorityCreateInfoEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DeviceQueueGlobalPriorityCreateInfoEXT const& ) const = default;
-#else
- bool operator==( DeviceQueueGlobalPriorityCreateInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( globalPriority == rhs.globalPriority );
- }
-
- bool operator!=( DeviceQueueGlobalPriorityCreateInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDeviceQueueGlobalPriorityCreateInfoEXT;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::QueueGlobalPriorityEXT globalPriority = VULKAN_HPP_NAMESPACE::QueueGlobalPriorityEXT::eLow;
-
+ value = true
+ };
};
- static_assert( sizeof( DeviceQueueGlobalPriorityCreateInfoEXT ) == sizeof( VkDeviceQueueGlobalPriorityCreateInfoEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DeviceQueueGlobalPriorityCreateInfoEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eDeviceQueueGlobalPriorityCreateInfoEXT>
+ struct StructExtends<PhysicalDeviceProtectedMemoryFeatures, PhysicalDeviceFeatures2>
{
- using Type = DeviceQueueGlobalPriorityCreateInfoEXT;
- };
-
-#ifdef VK_USE_PLATFORM_DIRECTFB_EXT
- struct DirectFBSurfaceCreateInfoEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDirectfbSurfaceCreateInfoEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DirectFBSurfaceCreateInfoEXT(VULKAN_HPP_NAMESPACE::DirectFBSurfaceCreateFlagsEXT flags_ = {}, IDirectFB* dfb_ = {}, IDirectFBSurface* surface_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), dfb( dfb_ ), surface( surface_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DirectFBSurfaceCreateInfoEXT( DirectFBSurfaceCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DirectFBSurfaceCreateInfoEXT( VkDirectFBSurfaceCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DirectFBSurfaceCreateInfoEXT & operator=( VkDirectFBSurfaceCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DirectFBSurfaceCreateInfoEXT const *>( &rhs );
- return *this;
- }
-
- DirectFBSurfaceCreateInfoEXT & operator=( DirectFBSurfaceCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DirectFBSurfaceCreateInfoEXT ) );
- return *this;
- }
-
- DirectFBSurfaceCreateInfoEXT & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- DirectFBSurfaceCreateInfoEXT & setFlags( VULKAN_HPP_NAMESPACE::DirectFBSurfaceCreateFlagsEXT flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- DirectFBSurfaceCreateInfoEXT & setDfb( IDirectFB* dfb_ ) VULKAN_HPP_NOEXCEPT
- {
- dfb = dfb_;
- return *this;
- }
-
- DirectFBSurfaceCreateInfoEXT & setSurface( IDirectFBSurface* surface_ ) VULKAN_HPP_NOEXCEPT
- {
- surface = surface_;
- return *this;
- }
-
-
- operator VkDirectFBSurfaceCreateInfoEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDirectFBSurfaceCreateInfoEXT*>( this );
- }
-
- operator VkDirectFBSurfaceCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDirectFBSurfaceCreateInfoEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DirectFBSurfaceCreateInfoEXT const& ) const = default;
-#else
- bool operator==( DirectFBSurfaceCreateInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( dfb == rhs.dfb )
- && ( surface == rhs.surface );
- }
-
- bool operator!=( DirectFBSurfaceCreateInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDirectfbSurfaceCreateInfoEXT;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::DirectFBSurfaceCreateFlagsEXT flags = {};
- IDirectFB* dfb = {};
- IDirectFBSurface* surface = {};
-
+ value = true
+ };
};
- static_assert( sizeof( DirectFBSurfaceCreateInfoEXT ) == sizeof( VkDirectFBSurfaceCreateInfoEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DirectFBSurfaceCreateInfoEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eDirectfbSurfaceCreateInfoEXT>
- {
- using Type = DirectFBSurfaceCreateInfoEXT;
- };
-#endif /*VK_USE_PLATFORM_DIRECTFB_EXT*/
-
- struct DispatchIndirectCommand
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DispatchIndirectCommand(uint32_t x_ = {}, uint32_t y_ = {}, uint32_t z_ = {}) VULKAN_HPP_NOEXCEPT
- : x( x_ ), y( y_ ), z( z_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DispatchIndirectCommand( DispatchIndirectCommand const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DispatchIndirectCommand( VkDispatchIndirectCommand const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DispatchIndirectCommand & operator=( VkDispatchIndirectCommand const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DispatchIndirectCommand const *>( &rhs );
- return *this;
- }
-
- DispatchIndirectCommand & operator=( DispatchIndirectCommand const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DispatchIndirectCommand ) );
- return *this;
- }
-
- DispatchIndirectCommand & setX( uint32_t x_ ) VULKAN_HPP_NOEXCEPT
- {
- x = x_;
- return *this;
- }
-
- DispatchIndirectCommand & setY( uint32_t y_ ) VULKAN_HPP_NOEXCEPT
- {
- y = y_;
- return *this;
- }
-
- DispatchIndirectCommand & setZ( uint32_t z_ ) VULKAN_HPP_NOEXCEPT
- {
- z = z_;
- return *this;
- }
-
-
- operator VkDispatchIndirectCommand const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDispatchIndirectCommand*>( this );
- }
-
- operator VkDispatchIndirectCommand &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDispatchIndirectCommand*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DispatchIndirectCommand const& ) const = default;
-#else
- bool operator==( DispatchIndirectCommand const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( x == rhs.x )
- && ( y == rhs.y )
- && ( z == rhs.z );
- }
-
- bool operator!=( DispatchIndirectCommand const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- uint32_t x = {};
- uint32_t y = {};
- uint32_t z = {};
-
- };
- static_assert( sizeof( DispatchIndirectCommand ) == sizeof( VkDispatchIndirectCommand ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DispatchIndirectCommand>::value, "struct wrapper is not a standard layout!" );
-
- struct DisplayNativeHdrSurfaceCapabilitiesAMD
+ struct StructExtends<PhysicalDeviceProtectedMemoryFeatures, DeviceCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDisplayNativeHdrSurfaceCapabilitiesAMD;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DisplayNativeHdrSurfaceCapabilitiesAMD(VULKAN_HPP_NAMESPACE::Bool32 localDimmingSupport_ = {}) VULKAN_HPP_NOEXCEPT
- : localDimmingSupport( localDimmingSupport_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DisplayNativeHdrSurfaceCapabilitiesAMD( DisplayNativeHdrSurfaceCapabilitiesAMD const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DisplayNativeHdrSurfaceCapabilitiesAMD( VkDisplayNativeHdrSurfaceCapabilitiesAMD const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DisplayNativeHdrSurfaceCapabilitiesAMD & operator=( VkDisplayNativeHdrSurfaceCapabilitiesAMD const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DisplayNativeHdrSurfaceCapabilitiesAMD const *>( &rhs );
- return *this;
- }
-
- DisplayNativeHdrSurfaceCapabilitiesAMD & operator=( DisplayNativeHdrSurfaceCapabilitiesAMD const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DisplayNativeHdrSurfaceCapabilitiesAMD ) );
- return *this;
- }
-
-
- operator VkDisplayNativeHdrSurfaceCapabilitiesAMD const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDisplayNativeHdrSurfaceCapabilitiesAMD*>( this );
- }
-
- operator VkDisplayNativeHdrSurfaceCapabilitiesAMD &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDisplayNativeHdrSurfaceCapabilitiesAMD*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DisplayNativeHdrSurfaceCapabilitiesAMD const& ) const = default;
-#else
- bool operator==( DisplayNativeHdrSurfaceCapabilitiesAMD const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( localDimmingSupport == rhs.localDimmingSupport );
- }
-
- bool operator!=( DisplayNativeHdrSurfaceCapabilitiesAMD const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDisplayNativeHdrSurfaceCapabilitiesAMD;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 localDimmingSupport = {};
-
+ value = true
+ };
};
- static_assert( sizeof( DisplayNativeHdrSurfaceCapabilitiesAMD ) == sizeof( VkDisplayNativeHdrSurfaceCapabilitiesAMD ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DisplayNativeHdrSurfaceCapabilitiesAMD>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eDisplayNativeHdrSurfaceCapabilitiesAMD>
- {
- using Type = DisplayNativeHdrSurfaceCapabilitiesAMD;
- };
-
- struct DisplayPresentInfoKHR
+ struct StructExtends<PhysicalDeviceProtectedMemoryProperties, PhysicalDeviceProperties2>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDisplayPresentInfoKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DisplayPresentInfoKHR(VULKAN_HPP_NAMESPACE::Rect2D srcRect_ = {}, VULKAN_HPP_NAMESPACE::Rect2D dstRect_ = {}, VULKAN_HPP_NAMESPACE::Bool32 persistent_ = {}) VULKAN_HPP_NOEXCEPT
- : srcRect( srcRect_ ), dstRect( dstRect_ ), persistent( persistent_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DisplayPresentInfoKHR( DisplayPresentInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DisplayPresentInfoKHR( VkDisplayPresentInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DisplayPresentInfoKHR & operator=( VkDisplayPresentInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DisplayPresentInfoKHR const *>( &rhs );
- return *this;
- }
-
- DisplayPresentInfoKHR & operator=( DisplayPresentInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DisplayPresentInfoKHR ) );
- return *this;
- }
-
- DisplayPresentInfoKHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- pNext = pNext_;
- return *this;
- }
-
- DisplayPresentInfoKHR & setSrcRect( VULKAN_HPP_NAMESPACE::Rect2D const & srcRect_ ) VULKAN_HPP_NOEXCEPT
- {
- srcRect = srcRect_;
- return *this;
- }
-
- DisplayPresentInfoKHR & setDstRect( VULKAN_HPP_NAMESPACE::Rect2D const & dstRect_ ) VULKAN_HPP_NOEXCEPT
- {
- dstRect = dstRect_;
- return *this;
- }
-
- DisplayPresentInfoKHR & setPersistent( VULKAN_HPP_NAMESPACE::Bool32 persistent_ ) VULKAN_HPP_NOEXCEPT
- {
- persistent = persistent_;
- return *this;
- }
-
-
- operator VkDisplayPresentInfoKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDisplayPresentInfoKHR*>( this );
- }
-
- operator VkDisplayPresentInfoKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDisplayPresentInfoKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DisplayPresentInfoKHR const& ) const = default;
-#else
- bool operator==( DisplayPresentInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( srcRect == rhs.srcRect )
- && ( dstRect == rhs.dstRect )
- && ( persistent == rhs.persistent );
- }
-
- bool operator!=( DisplayPresentInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDisplayPresentInfoKHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::Rect2D srcRect = {};
- VULKAN_HPP_NAMESPACE::Rect2D dstRect = {};
- VULKAN_HPP_NAMESPACE::Bool32 persistent = {};
-
+ value = true
+ };
};
- static_assert( sizeof( DisplayPresentInfoKHR ) == sizeof( VkDisplayPresentInfoKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DisplayPresentInfoKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eDisplayPresentInfoKHR>
+ struct StructExtends<PhysicalDeviceProvokingVertexFeaturesEXT, PhysicalDeviceFeatures2>
{
- using Type = DisplayPresentInfoKHR;
- };
-
- struct DisplaySurfaceCreateInfoKHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDisplaySurfaceCreateInfoKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DisplaySurfaceCreateInfoKHR(VULKAN_HPP_NAMESPACE::DisplaySurfaceCreateFlagsKHR flags_ = {}, VULKAN_HPP_NAMESPACE::DisplayModeKHR displayMode_ = {}, uint32_t planeIndex_ = {}, uint32_t planeStackIndex_ = {}, VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR transform_ = VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR::eIdentity, float globalAlpha_ = {}, VULKAN_HPP_NAMESPACE::DisplayPlaneAlphaFlagBitsKHR alphaMode_ = VULKAN_HPP_NAMESPACE::DisplayPlaneAlphaFlagBitsKHR::eOpaque, VULKAN_HPP_NAMESPACE::Extent2D imageExtent_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), displayMode( displayMode_ ), planeIndex( planeIndex_ ), planeStackIndex( planeStackIndex_ ), transform( transform_ ), globalAlpha( globalAlpha_ ), alphaMode( alphaMode_ ), imageExtent( imageExtent_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DisplaySurfaceCreateInfoKHR( DisplaySurfaceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DisplaySurfaceCreateInfoKHR( VkDisplaySurfaceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DisplaySurfaceCreateInfoKHR & operator=( VkDisplaySurfaceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DisplaySurfaceCreateInfoKHR const *>( &rhs );
- return *this;
- }
-
- DisplaySurfaceCreateInfoKHR & operator=( DisplaySurfaceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DisplaySurfaceCreateInfoKHR ) );
- return *this;
- }
-
- DisplaySurfaceCreateInfoKHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- DisplaySurfaceCreateInfoKHR & setFlags( VULKAN_HPP_NAMESPACE::DisplaySurfaceCreateFlagsKHR flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- DisplaySurfaceCreateInfoKHR & setDisplayMode( VULKAN_HPP_NAMESPACE::DisplayModeKHR displayMode_ ) VULKAN_HPP_NOEXCEPT
- {
- displayMode = displayMode_;
- return *this;
- }
-
- DisplaySurfaceCreateInfoKHR & setPlaneIndex( uint32_t planeIndex_ ) VULKAN_HPP_NOEXCEPT
- {
- planeIndex = planeIndex_;
- return *this;
- }
-
- DisplaySurfaceCreateInfoKHR & setPlaneStackIndex( uint32_t planeStackIndex_ ) VULKAN_HPP_NOEXCEPT
- {
- planeStackIndex = planeStackIndex_;
- return *this;
- }
-
- DisplaySurfaceCreateInfoKHR & setTransform( VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR transform_ ) VULKAN_HPP_NOEXCEPT
- {
- transform = transform_;
- return *this;
- }
-
- DisplaySurfaceCreateInfoKHR & setGlobalAlpha( float globalAlpha_ ) VULKAN_HPP_NOEXCEPT
- {
- globalAlpha = globalAlpha_;
- return *this;
- }
-
- DisplaySurfaceCreateInfoKHR & setAlphaMode( VULKAN_HPP_NAMESPACE::DisplayPlaneAlphaFlagBitsKHR alphaMode_ ) VULKAN_HPP_NOEXCEPT
- {
- alphaMode = alphaMode_;
- return *this;
- }
-
- DisplaySurfaceCreateInfoKHR & setImageExtent( VULKAN_HPP_NAMESPACE::Extent2D const & imageExtent_ ) VULKAN_HPP_NOEXCEPT
- {
- imageExtent = imageExtent_;
- return *this;
- }
-
-
- operator VkDisplaySurfaceCreateInfoKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDisplaySurfaceCreateInfoKHR*>( this );
- }
-
- operator VkDisplaySurfaceCreateInfoKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDisplaySurfaceCreateInfoKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DisplaySurfaceCreateInfoKHR const& ) const = default;
-#else
- bool operator==( DisplaySurfaceCreateInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( displayMode == rhs.displayMode )
- && ( planeIndex == rhs.planeIndex )
- && ( planeStackIndex == rhs.planeStackIndex )
- && ( transform == rhs.transform )
- && ( globalAlpha == rhs.globalAlpha )
- && ( alphaMode == rhs.alphaMode )
- && ( imageExtent == rhs.imageExtent );
- }
-
- bool operator!=( DisplaySurfaceCreateInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDisplaySurfaceCreateInfoKHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::DisplaySurfaceCreateFlagsKHR flags = {};
- VULKAN_HPP_NAMESPACE::DisplayModeKHR displayMode = {};
- uint32_t planeIndex = {};
- uint32_t planeStackIndex = {};
- VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR transform = VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR::eIdentity;
- float globalAlpha = {};
- VULKAN_HPP_NAMESPACE::DisplayPlaneAlphaFlagBitsKHR alphaMode = VULKAN_HPP_NAMESPACE::DisplayPlaneAlphaFlagBitsKHR::eOpaque;
- VULKAN_HPP_NAMESPACE::Extent2D imageExtent = {};
-
+ value = true
+ };
};
- static_assert( sizeof( DisplaySurfaceCreateInfoKHR ) == sizeof( VkDisplaySurfaceCreateInfoKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DisplaySurfaceCreateInfoKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eDisplaySurfaceCreateInfoKHR>
- {
- using Type = DisplaySurfaceCreateInfoKHR;
- };
-
- struct DrawIndexedIndirectCommand
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DrawIndexedIndirectCommand(uint32_t indexCount_ = {}, uint32_t instanceCount_ = {}, uint32_t firstIndex_ = {}, int32_t vertexOffset_ = {}, uint32_t firstInstance_ = {}) VULKAN_HPP_NOEXCEPT
- : indexCount( indexCount_ ), instanceCount( instanceCount_ ), firstIndex( firstIndex_ ), vertexOffset( vertexOffset_ ), firstInstance( firstInstance_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DrawIndexedIndirectCommand( DrawIndexedIndirectCommand const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DrawIndexedIndirectCommand( VkDrawIndexedIndirectCommand const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DrawIndexedIndirectCommand & operator=( VkDrawIndexedIndirectCommand const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DrawIndexedIndirectCommand const *>( &rhs );
- return *this;
- }
-
- DrawIndexedIndirectCommand & operator=( DrawIndexedIndirectCommand const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DrawIndexedIndirectCommand ) );
- return *this;
- }
-
- DrawIndexedIndirectCommand & setIndexCount( uint32_t indexCount_ ) VULKAN_HPP_NOEXCEPT
- {
- indexCount = indexCount_;
- return *this;
- }
-
- DrawIndexedIndirectCommand & setInstanceCount( uint32_t instanceCount_ ) VULKAN_HPP_NOEXCEPT
- {
- instanceCount = instanceCount_;
- return *this;
- }
-
- DrawIndexedIndirectCommand & setFirstIndex( uint32_t firstIndex_ ) VULKAN_HPP_NOEXCEPT
- {
- firstIndex = firstIndex_;
- return *this;
- }
-
- DrawIndexedIndirectCommand & setVertexOffset( int32_t vertexOffset_ ) VULKAN_HPP_NOEXCEPT
- {
- vertexOffset = vertexOffset_;
- return *this;
- }
-
- DrawIndexedIndirectCommand & setFirstInstance( uint32_t firstInstance_ ) VULKAN_HPP_NOEXCEPT
- {
- firstInstance = firstInstance_;
- return *this;
- }
-
-
- operator VkDrawIndexedIndirectCommand const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDrawIndexedIndirectCommand*>( this );
- }
-
- operator VkDrawIndexedIndirectCommand &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDrawIndexedIndirectCommand*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DrawIndexedIndirectCommand const& ) const = default;
-#else
- bool operator==( DrawIndexedIndirectCommand const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( indexCount == rhs.indexCount )
- && ( instanceCount == rhs.instanceCount )
- && ( firstIndex == rhs.firstIndex )
- && ( vertexOffset == rhs.vertexOffset )
- && ( firstInstance == rhs.firstInstance );
- }
-
- bool operator!=( DrawIndexedIndirectCommand const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- uint32_t indexCount = {};
- uint32_t instanceCount = {};
- uint32_t firstIndex = {};
- int32_t vertexOffset = {};
- uint32_t firstInstance = {};
-
- };
- static_assert( sizeof( DrawIndexedIndirectCommand ) == sizeof( VkDrawIndexedIndirectCommand ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DrawIndexedIndirectCommand>::value, "struct wrapper is not a standard layout!" );
-
- struct DrawIndirectCommand
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DrawIndirectCommand(uint32_t vertexCount_ = {}, uint32_t instanceCount_ = {}, uint32_t firstVertex_ = {}, uint32_t firstInstance_ = {}) VULKAN_HPP_NOEXCEPT
- : vertexCount( vertexCount_ ), instanceCount( instanceCount_ ), firstVertex( firstVertex_ ), firstInstance( firstInstance_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DrawIndirectCommand( DrawIndirectCommand const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DrawIndirectCommand( VkDrawIndirectCommand const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DrawIndirectCommand & operator=( VkDrawIndirectCommand const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DrawIndirectCommand const *>( &rhs );
- return *this;
- }
-
- DrawIndirectCommand & operator=( DrawIndirectCommand const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DrawIndirectCommand ) );
- return *this;
- }
-
- DrawIndirectCommand & setVertexCount( uint32_t vertexCount_ ) VULKAN_HPP_NOEXCEPT
- {
- vertexCount = vertexCount_;
- return *this;
- }
-
- DrawIndirectCommand & setInstanceCount( uint32_t instanceCount_ ) VULKAN_HPP_NOEXCEPT
- {
- instanceCount = instanceCount_;
- return *this;
- }
-
- DrawIndirectCommand & setFirstVertex( uint32_t firstVertex_ ) VULKAN_HPP_NOEXCEPT
- {
- firstVertex = firstVertex_;
- return *this;
- }
-
- DrawIndirectCommand & setFirstInstance( uint32_t firstInstance_ ) VULKAN_HPP_NOEXCEPT
- {
- firstInstance = firstInstance_;
- return *this;
- }
-
-
- operator VkDrawIndirectCommand const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDrawIndirectCommand*>( this );
- }
-
- operator VkDrawIndirectCommand &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDrawIndirectCommand*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DrawIndirectCommand const& ) const = default;
-#else
- bool operator==( DrawIndirectCommand const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( vertexCount == rhs.vertexCount )
- && ( instanceCount == rhs.instanceCount )
- && ( firstVertex == rhs.firstVertex )
- && ( firstInstance == rhs.firstInstance );
- }
-
- bool operator!=( DrawIndirectCommand const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- uint32_t vertexCount = {};
- uint32_t instanceCount = {};
- uint32_t firstVertex = {};
- uint32_t firstInstance = {};
-
- };
- static_assert( sizeof( DrawIndirectCommand ) == sizeof( VkDrawIndirectCommand ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DrawIndirectCommand>::value, "struct wrapper is not a standard layout!" );
-
- struct DrawMeshTasksIndirectCommandNV
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DrawMeshTasksIndirectCommandNV(uint32_t taskCount_ = {}, uint32_t firstTask_ = {}) VULKAN_HPP_NOEXCEPT
- : taskCount( taskCount_ ), firstTask( firstTask_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DrawMeshTasksIndirectCommandNV( DrawMeshTasksIndirectCommandNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DrawMeshTasksIndirectCommandNV( VkDrawMeshTasksIndirectCommandNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DrawMeshTasksIndirectCommandNV & operator=( VkDrawMeshTasksIndirectCommandNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DrawMeshTasksIndirectCommandNV const *>( &rhs );
- return *this;
- }
-
- DrawMeshTasksIndirectCommandNV & operator=( DrawMeshTasksIndirectCommandNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DrawMeshTasksIndirectCommandNV ) );
- return *this;
- }
-
- DrawMeshTasksIndirectCommandNV & setTaskCount( uint32_t taskCount_ ) VULKAN_HPP_NOEXCEPT
- {
- taskCount = taskCount_;
- return *this;
- }
-
- DrawMeshTasksIndirectCommandNV & setFirstTask( uint32_t firstTask_ ) VULKAN_HPP_NOEXCEPT
- {
- firstTask = firstTask_;
- return *this;
- }
-
-
- operator VkDrawMeshTasksIndirectCommandNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDrawMeshTasksIndirectCommandNV*>( this );
- }
-
- operator VkDrawMeshTasksIndirectCommandNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDrawMeshTasksIndirectCommandNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DrawMeshTasksIndirectCommandNV const& ) const = default;
-#else
- bool operator==( DrawMeshTasksIndirectCommandNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( taskCount == rhs.taskCount )
- && ( firstTask == rhs.firstTask );
- }
-
- bool operator!=( DrawMeshTasksIndirectCommandNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- uint32_t taskCount = {};
- uint32_t firstTask = {};
-
- };
- static_assert( sizeof( DrawMeshTasksIndirectCommandNV ) == sizeof( VkDrawMeshTasksIndirectCommandNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DrawMeshTasksIndirectCommandNV>::value, "struct wrapper is not a standard layout!" );
-
- struct DrmFormatModifierPropertiesEXT
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DrmFormatModifierPropertiesEXT(uint64_t drmFormatModifier_ = {}, uint32_t drmFormatModifierPlaneCount_ = {}, VULKAN_HPP_NAMESPACE::FormatFeatureFlags drmFormatModifierTilingFeatures_ = {}) VULKAN_HPP_NOEXCEPT
- : drmFormatModifier( drmFormatModifier_ ), drmFormatModifierPlaneCount( drmFormatModifierPlaneCount_ ), drmFormatModifierTilingFeatures( drmFormatModifierTilingFeatures_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DrmFormatModifierPropertiesEXT( DrmFormatModifierPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DrmFormatModifierPropertiesEXT( VkDrmFormatModifierPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DrmFormatModifierPropertiesEXT & operator=( VkDrmFormatModifierPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DrmFormatModifierPropertiesEXT const *>( &rhs );
- return *this;
- }
-
- DrmFormatModifierPropertiesEXT & operator=( DrmFormatModifierPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DrmFormatModifierPropertiesEXT ) );
- return *this;
- }
-
-
- operator VkDrmFormatModifierPropertiesEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDrmFormatModifierPropertiesEXT*>( this );
- }
-
- operator VkDrmFormatModifierPropertiesEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDrmFormatModifierPropertiesEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DrmFormatModifierPropertiesEXT const& ) const = default;
-#else
- bool operator==( DrmFormatModifierPropertiesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( drmFormatModifier == rhs.drmFormatModifier )
- && ( drmFormatModifierPlaneCount == rhs.drmFormatModifierPlaneCount )
- && ( drmFormatModifierTilingFeatures == rhs.drmFormatModifierTilingFeatures );
- }
-
- bool operator!=( DrmFormatModifierPropertiesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- uint64_t drmFormatModifier = {};
- uint32_t drmFormatModifierPlaneCount = {};
- VULKAN_HPP_NAMESPACE::FormatFeatureFlags drmFormatModifierTilingFeatures = {};
-
- };
- static_assert( sizeof( DrmFormatModifierPropertiesEXT ) == sizeof( VkDrmFormatModifierPropertiesEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DrmFormatModifierPropertiesEXT>::value, "struct wrapper is not a standard layout!" );
-
- struct DrmFormatModifierPropertiesListEXT
+ struct StructExtends<PhysicalDeviceProvokingVertexFeaturesEXT, DeviceCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDrmFormatModifierPropertiesListEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR DrmFormatModifierPropertiesListEXT(uint32_t drmFormatModifierCount_ = {}, VULKAN_HPP_NAMESPACE::DrmFormatModifierPropertiesEXT* pDrmFormatModifierProperties_ = {}) VULKAN_HPP_NOEXCEPT
- : drmFormatModifierCount( drmFormatModifierCount_ ), pDrmFormatModifierProperties( pDrmFormatModifierProperties_ )
- {}
-
- VULKAN_HPP_CONSTEXPR DrmFormatModifierPropertiesListEXT( DrmFormatModifierPropertiesListEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- DrmFormatModifierPropertiesListEXT( VkDrmFormatModifierPropertiesListEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- DrmFormatModifierPropertiesListEXT( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<VULKAN_HPP_NAMESPACE::DrmFormatModifierPropertiesEXT> const & drmFormatModifierProperties_ )
- : drmFormatModifierCount( static_cast<uint32_t>( drmFormatModifierProperties_.size() ) ), pDrmFormatModifierProperties( drmFormatModifierProperties_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- DrmFormatModifierPropertiesListEXT & operator=( VkDrmFormatModifierPropertiesListEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DrmFormatModifierPropertiesListEXT const *>( &rhs );
- return *this;
- }
-
- DrmFormatModifierPropertiesListEXT & operator=( DrmFormatModifierPropertiesListEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- memcpy( static_cast<void *>( this ), &rhs, sizeof( DrmFormatModifierPropertiesListEXT ) );
- return *this;
- }
-
-
- operator VkDrmFormatModifierPropertiesListEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkDrmFormatModifierPropertiesListEXT*>( this );
- }
-
- operator VkDrmFormatModifierPropertiesListEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkDrmFormatModifierPropertiesListEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DrmFormatModifierPropertiesListEXT const& ) const = default;
-#else
- bool operator==( DrmFormatModifierPropertiesListEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( drmFormatModifierCount == rhs.drmFormatModifierCount )
- && ( pDrmFormatModifierProperties == rhs.pDrmFormatModifierProperties );
- }
-
- bool operator!=( DrmFormatModifierPropertiesListEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDrmFormatModifierPropertiesListEXT;
- void* pNext = {};
- uint32_t drmFormatModifierCount = {};
- VULKAN_HPP_NAMESPACE::DrmFormatModifierPropertiesEXT* pDrmFormatModifierProperties = {};
-
+ value = true
+ };
};
- static_assert( sizeof( DrmFormatModifierPropertiesListEXT ) == sizeof( VkDrmFormatModifierPropertiesListEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<DrmFormatModifierPropertiesListEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eDrmFormatModifierPropertiesListEXT>
- {
- using Type = DrmFormatModifierPropertiesListEXT;
- };
-
- struct ExportFenceCreateInfo
+ struct StructExtends<PhysicalDeviceProvokingVertexPropertiesEXT, PhysicalDeviceProperties2>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eExportFenceCreateInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ExportFenceCreateInfo(VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlags handleTypes_ = {}) VULKAN_HPP_NOEXCEPT
- : handleTypes( handleTypes_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ExportFenceCreateInfo( ExportFenceCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ExportFenceCreateInfo( VkExportFenceCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ExportFenceCreateInfo & operator=( VkExportFenceCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ExportFenceCreateInfo const *>( &rhs );
- return *this;
- }
-
- ExportFenceCreateInfo & operator=( ExportFenceCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ExportFenceCreateInfo ) );
- return *this;
- }
-
- ExportFenceCreateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- ExportFenceCreateInfo & setHandleTypes( VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlags handleTypes_ ) VULKAN_HPP_NOEXCEPT
- {
- handleTypes = handleTypes_;
- return *this;
- }
-
-
- operator VkExportFenceCreateInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkExportFenceCreateInfo*>( this );
- }
-
- operator VkExportFenceCreateInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkExportFenceCreateInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ExportFenceCreateInfo const& ) const = default;
-#else
- bool operator==( ExportFenceCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( handleTypes == rhs.handleTypes );
- }
-
- bool operator!=( ExportFenceCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eExportFenceCreateInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlags handleTypes = {};
-
+ value = true
+ };
};
- static_assert( sizeof( ExportFenceCreateInfo ) == sizeof( VkExportFenceCreateInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ExportFenceCreateInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eExportFenceCreateInfo>
+ struct StructExtends<PhysicalDevicePushDescriptorPropertiesKHR, PhysicalDeviceProperties2>
{
- using Type = ExportFenceCreateInfo;
- };
- using ExportFenceCreateInfoKHR = ExportFenceCreateInfo;
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- struct ExportFenceWin32HandleInfoKHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eExportFenceWin32HandleInfoKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ExportFenceWin32HandleInfoKHR(const SECURITY_ATTRIBUTES* pAttributes_ = {}, DWORD dwAccess_ = {}, LPCWSTR name_ = {}) VULKAN_HPP_NOEXCEPT
- : pAttributes( pAttributes_ ), dwAccess( dwAccess_ ), name( name_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ExportFenceWin32HandleInfoKHR( ExportFenceWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ExportFenceWin32HandleInfoKHR( VkExportFenceWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ExportFenceWin32HandleInfoKHR & operator=( VkExportFenceWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ExportFenceWin32HandleInfoKHR const *>( &rhs );
- return *this;
- }
-
- ExportFenceWin32HandleInfoKHR & operator=( ExportFenceWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ExportFenceWin32HandleInfoKHR ) );
- return *this;
- }
-
- ExportFenceWin32HandleInfoKHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- ExportFenceWin32HandleInfoKHR & setPAttributes( const SECURITY_ATTRIBUTES* pAttributes_ ) VULKAN_HPP_NOEXCEPT
- {
- pAttributes = pAttributes_;
- return *this;
- }
-
- ExportFenceWin32HandleInfoKHR & setDwAccess( DWORD dwAccess_ ) VULKAN_HPP_NOEXCEPT
- {
- dwAccess = dwAccess_;
- return *this;
- }
-
- ExportFenceWin32HandleInfoKHR & setName( LPCWSTR name_ ) VULKAN_HPP_NOEXCEPT
- {
- name = name_;
- return *this;
- }
-
-
- operator VkExportFenceWin32HandleInfoKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkExportFenceWin32HandleInfoKHR*>( this );
- }
-
- operator VkExportFenceWin32HandleInfoKHR &() VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<VkExportFenceWin32HandleInfoKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ExportFenceWin32HandleInfoKHR const& ) const = default;
-#else
- bool operator==( ExportFenceWin32HandleInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( pAttributes == rhs.pAttributes )
- && ( dwAccess == rhs.dwAccess )
- && ( name == rhs.name );
- }
-
- bool operator!=( ExportFenceWin32HandleInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eExportFenceWin32HandleInfoKHR;
- const void* pNext = {};
- const SECURITY_ATTRIBUTES* pAttributes = {};
- DWORD dwAccess = {};
- LPCWSTR name = {};
-
+ value = true
+ };
};
- static_assert( sizeof( ExportFenceWin32HandleInfoKHR ) == sizeof( VkExportFenceWin32HandleInfoKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ExportFenceWin32HandleInfoKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eExportFenceWin32HandleInfoKHR>
+ struct StructExtends<PhysicalDeviceRayQueryFeaturesKHR, PhysicalDeviceFeatures2>
{
- using Type = ExportFenceWin32HandleInfoKHR;
- };
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-
- struct ExportMemoryAllocateInfo
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eExportMemoryAllocateInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ExportMemoryAllocateInfo(VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlags handleTypes_ = {}) VULKAN_HPP_NOEXCEPT
- : handleTypes( handleTypes_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ExportMemoryAllocateInfo( ExportMemoryAllocateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ExportMemoryAllocateInfo( VkExportMemoryAllocateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ExportMemoryAllocateInfo & operator=( VkExportMemoryAllocateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ExportMemoryAllocateInfo const *>( &rhs );
- return *this;
- }
-
- ExportMemoryAllocateInfo & operator=( ExportMemoryAllocateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ExportMemoryAllocateInfo ) );
- return *this;
- }
-
- ExportMemoryAllocateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- ExportMemoryAllocateInfo & setHandleTypes( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlags handleTypes_ ) VULKAN_HPP_NOEXCEPT
- {
- handleTypes = handleTypes_;
- return *this;
- }
-
-
- operator VkExportMemoryAllocateInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkExportMemoryAllocateInfo*>( this );
- }
-
- operator VkExportMemoryAllocateInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkExportMemoryAllocateInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ExportMemoryAllocateInfo const& ) const = default;
-#else
- bool operator==( ExportMemoryAllocateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( handleTypes == rhs.handleTypes );
- }
-
- bool operator!=( ExportMemoryAllocateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eExportMemoryAllocateInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlags handleTypes = {};
-
+ value = true
+ };
};
- static_assert( sizeof( ExportMemoryAllocateInfo ) == sizeof( VkExportMemoryAllocateInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ExportMemoryAllocateInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eExportMemoryAllocateInfo>
- {
- using Type = ExportMemoryAllocateInfo;
- };
- using ExportMemoryAllocateInfoKHR = ExportMemoryAllocateInfo;
-
- struct ExportMemoryAllocateInfoNV
+ struct StructExtends<PhysicalDeviceRayQueryFeaturesKHR, DeviceCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eExportMemoryAllocateInfoNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ExportMemoryAllocateInfoNV(VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV handleTypes_ = {}) VULKAN_HPP_NOEXCEPT
- : handleTypes( handleTypes_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ExportMemoryAllocateInfoNV( ExportMemoryAllocateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ExportMemoryAllocateInfoNV( VkExportMemoryAllocateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ExportMemoryAllocateInfoNV & operator=( VkExportMemoryAllocateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ExportMemoryAllocateInfoNV const *>( &rhs );
- return *this;
- }
-
- ExportMemoryAllocateInfoNV & operator=( ExportMemoryAllocateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ExportMemoryAllocateInfoNV ) );
- return *this;
- }
-
- ExportMemoryAllocateInfoNV & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- ExportMemoryAllocateInfoNV & setHandleTypes( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV handleTypes_ ) VULKAN_HPP_NOEXCEPT
- {
- handleTypes = handleTypes_;
- return *this;
- }
-
-
- operator VkExportMemoryAllocateInfoNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkExportMemoryAllocateInfoNV*>( this );
- }
-
- operator VkExportMemoryAllocateInfoNV &() VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<VkExportMemoryAllocateInfoNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ExportMemoryAllocateInfoNV const& ) const = default;
-#else
- bool operator==( ExportMemoryAllocateInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( handleTypes == rhs.handleTypes );
- }
-
- bool operator!=( ExportMemoryAllocateInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eExportMemoryAllocateInfoNV;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV handleTypes = {};
-
+ value = true
+ };
};
- static_assert( sizeof( ExportMemoryAllocateInfoNV ) == sizeof( VkExportMemoryAllocateInfoNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ExportMemoryAllocateInfoNV>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eExportMemoryAllocateInfoNV>
+ struct StructExtends<PhysicalDeviceRayTracingMotionBlurFeaturesNV, PhysicalDeviceProperties2>
{
- using Type = ExportMemoryAllocateInfoNV;
- };
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- struct ExportMemoryWin32HandleInfoKHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eExportMemoryWin32HandleInfoKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ExportMemoryWin32HandleInfoKHR(const SECURITY_ATTRIBUTES* pAttributes_ = {}, DWORD dwAccess_ = {}, LPCWSTR name_ = {}) VULKAN_HPP_NOEXCEPT
- : pAttributes( pAttributes_ ), dwAccess( dwAccess_ ), name( name_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ExportMemoryWin32HandleInfoKHR( ExportMemoryWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ExportMemoryWin32HandleInfoKHR( VkExportMemoryWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ExportMemoryWin32HandleInfoKHR & operator=( VkExportMemoryWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ExportMemoryWin32HandleInfoKHR const *>( &rhs );
- return *this;
- }
-
- ExportMemoryWin32HandleInfoKHR & operator=( ExportMemoryWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ExportMemoryWin32HandleInfoKHR ) );
- return *this;
- }
-
- ExportMemoryWin32HandleInfoKHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- ExportMemoryWin32HandleInfoKHR & setPAttributes( const SECURITY_ATTRIBUTES* pAttributes_ ) VULKAN_HPP_NOEXCEPT
- {
- pAttributes = pAttributes_;
- return *this;
- }
-
- ExportMemoryWin32HandleInfoKHR & setDwAccess( DWORD dwAccess_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- dwAccess = dwAccess_;
- return *this;
- }
-
- ExportMemoryWin32HandleInfoKHR & setName( LPCWSTR name_ ) VULKAN_HPP_NOEXCEPT
- {
- name = name_;
- return *this;
- }
-
-
- operator VkExportMemoryWin32HandleInfoKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkExportMemoryWin32HandleInfoKHR*>( this );
- }
-
- operator VkExportMemoryWin32HandleInfoKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkExportMemoryWin32HandleInfoKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ExportMemoryWin32HandleInfoKHR const& ) const = default;
-#else
- bool operator==( ExportMemoryWin32HandleInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( pAttributes == rhs.pAttributes )
- && ( dwAccess == rhs.dwAccess )
- && ( name == rhs.name );
- }
-
- bool operator!=( ExportMemoryWin32HandleInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eExportMemoryWin32HandleInfoKHR;
- const void* pNext = {};
- const SECURITY_ATTRIBUTES* pAttributes = {};
- DWORD dwAccess = {};
- LPCWSTR name = {};
-
+ value = true
+ };
};
- static_assert( sizeof( ExportMemoryWin32HandleInfoKHR ) == sizeof( VkExportMemoryWin32HandleInfoKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ExportMemoryWin32HandleInfoKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eExportMemoryWin32HandleInfoKHR>
- {
- using Type = ExportMemoryWin32HandleInfoKHR;
- };
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- struct ExportMemoryWin32HandleInfoNV
+ struct StructExtends<PhysicalDeviceRayTracingMotionBlurFeaturesNV, DeviceCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eExportMemoryWin32HandleInfoNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ExportMemoryWin32HandleInfoNV(const SECURITY_ATTRIBUTES* pAttributes_ = {}, DWORD dwAccess_ = {}) VULKAN_HPP_NOEXCEPT
- : pAttributes( pAttributes_ ), dwAccess( dwAccess_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ExportMemoryWin32HandleInfoNV( ExportMemoryWin32HandleInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ExportMemoryWin32HandleInfoNV( VkExportMemoryWin32HandleInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ExportMemoryWin32HandleInfoNV & operator=( VkExportMemoryWin32HandleInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ExportMemoryWin32HandleInfoNV const *>( &rhs );
- return *this;
- }
-
- ExportMemoryWin32HandleInfoNV & operator=( ExportMemoryWin32HandleInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ExportMemoryWin32HandleInfoNV ) );
- return *this;
- }
-
- ExportMemoryWin32HandleInfoNV & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- pNext = pNext_;
- return *this;
- }
-
- ExportMemoryWin32HandleInfoNV & setPAttributes( const SECURITY_ATTRIBUTES* pAttributes_ ) VULKAN_HPP_NOEXCEPT
- {
- pAttributes = pAttributes_;
- return *this;
- }
-
- ExportMemoryWin32HandleInfoNV & setDwAccess( DWORD dwAccess_ ) VULKAN_HPP_NOEXCEPT
- {
- dwAccess = dwAccess_;
- return *this;
- }
-
-
- operator VkExportMemoryWin32HandleInfoNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkExportMemoryWin32HandleInfoNV*>( this );
- }
-
- operator VkExportMemoryWin32HandleInfoNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkExportMemoryWin32HandleInfoNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ExportMemoryWin32HandleInfoNV const& ) const = default;
-#else
- bool operator==( ExportMemoryWin32HandleInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( pAttributes == rhs.pAttributes )
- && ( dwAccess == rhs.dwAccess );
- }
-
- bool operator!=( ExportMemoryWin32HandleInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eExportMemoryWin32HandleInfoNV;
- const void* pNext = {};
- const SECURITY_ATTRIBUTES* pAttributes = {};
- DWORD dwAccess = {};
-
+ value = true
+ };
};
- static_assert( sizeof( ExportMemoryWin32HandleInfoNV ) == sizeof( VkExportMemoryWin32HandleInfoNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ExportMemoryWin32HandleInfoNV>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eExportMemoryWin32HandleInfoNV>
+ struct StructExtends<PhysicalDeviceRayTracingPipelineFeaturesKHR, PhysicalDeviceFeatures2>
{
- using Type = ExportMemoryWin32HandleInfoNV;
- };
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-
- struct ExportSemaphoreCreateInfo
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eExportSemaphoreCreateInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ExportSemaphoreCreateInfo(VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlags handleTypes_ = {}) VULKAN_HPP_NOEXCEPT
- : handleTypes( handleTypes_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ExportSemaphoreCreateInfo( ExportSemaphoreCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ExportSemaphoreCreateInfo( VkExportSemaphoreCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ExportSemaphoreCreateInfo & operator=( VkExportSemaphoreCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ExportSemaphoreCreateInfo const *>( &rhs );
- return *this;
- }
-
- ExportSemaphoreCreateInfo & operator=( ExportSemaphoreCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ExportSemaphoreCreateInfo ) );
- return *this;
- }
-
- ExportSemaphoreCreateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- ExportSemaphoreCreateInfo & setHandleTypes( VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlags handleTypes_ ) VULKAN_HPP_NOEXCEPT
- {
- handleTypes = handleTypes_;
- return *this;
- }
-
-
- operator VkExportSemaphoreCreateInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkExportSemaphoreCreateInfo*>( this );
- }
-
- operator VkExportSemaphoreCreateInfo &() VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<VkExportSemaphoreCreateInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ExportSemaphoreCreateInfo const& ) const = default;
-#else
- bool operator==( ExportSemaphoreCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( handleTypes == rhs.handleTypes );
- }
-
- bool operator!=( ExportSemaphoreCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eExportSemaphoreCreateInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlags handleTypes = {};
-
+ value = true
+ };
};
- static_assert( sizeof( ExportSemaphoreCreateInfo ) == sizeof( VkExportSemaphoreCreateInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ExportSemaphoreCreateInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eExportSemaphoreCreateInfo>
- {
- using Type = ExportSemaphoreCreateInfo;
- };
- using ExportSemaphoreCreateInfoKHR = ExportSemaphoreCreateInfo;
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- struct ExportSemaphoreWin32HandleInfoKHR
+ struct StructExtends<PhysicalDeviceRayTracingPipelineFeaturesKHR, DeviceCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eExportSemaphoreWin32HandleInfoKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ExportSemaphoreWin32HandleInfoKHR(const SECURITY_ATTRIBUTES* pAttributes_ = {}, DWORD dwAccess_ = {}, LPCWSTR name_ = {}) VULKAN_HPP_NOEXCEPT
- : pAttributes( pAttributes_ ), dwAccess( dwAccess_ ), name( name_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ExportSemaphoreWin32HandleInfoKHR( ExportSemaphoreWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ExportSemaphoreWin32HandleInfoKHR( VkExportSemaphoreWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ExportSemaphoreWin32HandleInfoKHR & operator=( VkExportSemaphoreWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ExportSemaphoreWin32HandleInfoKHR const *>( &rhs );
- return *this;
- }
-
- ExportSemaphoreWin32HandleInfoKHR & operator=( ExportSemaphoreWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ExportSemaphoreWin32HandleInfoKHR ) );
- return *this;
- }
-
- ExportSemaphoreWin32HandleInfoKHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- ExportSemaphoreWin32HandleInfoKHR & setPAttributes( const SECURITY_ATTRIBUTES* pAttributes_ ) VULKAN_HPP_NOEXCEPT
- {
- pAttributes = pAttributes_;
- return *this;
- }
-
- ExportSemaphoreWin32HandleInfoKHR & setDwAccess( DWORD dwAccess_ ) VULKAN_HPP_NOEXCEPT
- {
- dwAccess = dwAccess_;
- return *this;
- }
-
- ExportSemaphoreWin32HandleInfoKHR & setName( LPCWSTR name_ ) VULKAN_HPP_NOEXCEPT
- {
- name = name_;
- return *this;
- }
-
-
- operator VkExportSemaphoreWin32HandleInfoKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkExportSemaphoreWin32HandleInfoKHR*>( this );
- }
-
- operator VkExportSemaphoreWin32HandleInfoKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkExportSemaphoreWin32HandleInfoKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ExportSemaphoreWin32HandleInfoKHR const& ) const = default;
-#else
- bool operator==( ExportSemaphoreWin32HandleInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( pAttributes == rhs.pAttributes )
- && ( dwAccess == rhs.dwAccess )
- && ( name == rhs.name );
- }
-
- bool operator!=( ExportSemaphoreWin32HandleInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eExportSemaphoreWin32HandleInfoKHR;
- const void* pNext = {};
- const SECURITY_ATTRIBUTES* pAttributes = {};
- DWORD dwAccess = {};
- LPCWSTR name = {};
-
+ value = true
+ };
};
- static_assert( sizeof( ExportSemaphoreWin32HandleInfoKHR ) == sizeof( VkExportSemaphoreWin32HandleInfoKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ExportSemaphoreWin32HandleInfoKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eExportSemaphoreWin32HandleInfoKHR>
+ struct StructExtends<PhysicalDeviceRayTracingPipelinePropertiesKHR, PhysicalDeviceProperties2>
{
- using Type = ExportSemaphoreWin32HandleInfoKHR;
- };
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-
-#ifdef VK_USE_PLATFORM_ANDROID_KHR
- struct ExternalFormatANDROID
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eExternalFormatANDROID;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ExternalFormatANDROID(uint64_t externalFormat_ = {}) VULKAN_HPP_NOEXCEPT
- : externalFormat( externalFormat_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ExternalFormatANDROID( ExternalFormatANDROID const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ExternalFormatANDROID( VkExternalFormatANDROID const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ExternalFormatANDROID & operator=( VkExternalFormatANDROID const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ExternalFormatANDROID const *>( &rhs );
- return *this;
- }
-
- ExternalFormatANDROID & operator=( ExternalFormatANDROID const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ExternalFormatANDROID ) );
- return *this;
- }
-
- ExternalFormatANDROID & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- ExternalFormatANDROID & setExternalFormat( uint64_t externalFormat_ ) VULKAN_HPP_NOEXCEPT
- {
- externalFormat = externalFormat_;
- return *this;
- }
-
-
- operator VkExternalFormatANDROID const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkExternalFormatANDROID*>( this );
- }
-
- operator VkExternalFormatANDROID &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkExternalFormatANDROID*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ExternalFormatANDROID const& ) const = default;
-#else
- bool operator==( ExternalFormatANDROID const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( externalFormat == rhs.externalFormat );
- }
-
- bool operator!=( ExternalFormatANDROID const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eExternalFormatANDROID;
- void* pNext = {};
- uint64_t externalFormat = {};
-
+ value = true
+ };
};
- static_assert( sizeof( ExternalFormatANDROID ) == sizeof( VkExternalFormatANDROID ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ExternalFormatANDROID>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eExternalFormatANDROID>
+ struct StructExtends<PhysicalDeviceRayTracingPropertiesNV, PhysicalDeviceProperties2>
{
- using Type = ExternalFormatANDROID;
- };
-#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
-
- struct ExternalImageFormatProperties
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eExternalImageFormatProperties;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ExternalImageFormatProperties(VULKAN_HPP_NAMESPACE::ExternalMemoryProperties externalMemoryProperties_ = {}) VULKAN_HPP_NOEXCEPT
- : externalMemoryProperties( externalMemoryProperties_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ExternalImageFormatProperties( ExternalImageFormatProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ExternalImageFormatProperties( VkExternalImageFormatProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ExternalImageFormatProperties & operator=( VkExternalImageFormatProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ExternalImageFormatProperties const *>( &rhs );
- return *this;
- }
-
- ExternalImageFormatProperties & operator=( ExternalImageFormatProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ExternalImageFormatProperties ) );
- return *this;
- }
-
-
- operator VkExternalImageFormatProperties const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkExternalImageFormatProperties*>( this );
- }
-
- operator VkExternalImageFormatProperties &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkExternalImageFormatProperties*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ExternalImageFormatProperties const& ) const = default;
-#else
- bool operator==( ExternalImageFormatProperties const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( externalMemoryProperties == rhs.externalMemoryProperties );
- }
-
- bool operator!=( ExternalImageFormatProperties const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eExternalImageFormatProperties;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::ExternalMemoryProperties externalMemoryProperties = {};
-
+ value = true
+ };
};
- static_assert( sizeof( ExternalImageFormatProperties ) == sizeof( VkExternalImageFormatProperties ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ExternalImageFormatProperties>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eExternalImageFormatProperties>
- {
- using Type = ExternalImageFormatProperties;
- };
- using ExternalImageFormatPropertiesKHR = ExternalImageFormatProperties;
-
- struct ExternalMemoryBufferCreateInfo
+ struct StructExtends<PhysicalDeviceRepresentativeFragmentTestFeaturesNV, PhysicalDeviceFeatures2>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eExternalMemoryBufferCreateInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ExternalMemoryBufferCreateInfo(VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlags handleTypes_ = {}) VULKAN_HPP_NOEXCEPT
- : handleTypes( handleTypes_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ExternalMemoryBufferCreateInfo( ExternalMemoryBufferCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ExternalMemoryBufferCreateInfo( VkExternalMemoryBufferCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ExternalMemoryBufferCreateInfo & operator=( VkExternalMemoryBufferCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ExternalMemoryBufferCreateInfo const *>( &rhs );
- return *this;
- }
-
- ExternalMemoryBufferCreateInfo & operator=( ExternalMemoryBufferCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ExternalMemoryBufferCreateInfo ) );
- return *this;
- }
-
- ExternalMemoryBufferCreateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- ExternalMemoryBufferCreateInfo & setHandleTypes( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlags handleTypes_ ) VULKAN_HPP_NOEXCEPT
- {
- handleTypes = handleTypes_;
- return *this;
- }
-
-
- operator VkExternalMemoryBufferCreateInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkExternalMemoryBufferCreateInfo*>( this );
- }
-
- operator VkExternalMemoryBufferCreateInfo &() VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<VkExternalMemoryBufferCreateInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ExternalMemoryBufferCreateInfo const& ) const = default;
-#else
- bool operator==( ExternalMemoryBufferCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( handleTypes == rhs.handleTypes );
- }
-
- bool operator!=( ExternalMemoryBufferCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eExternalMemoryBufferCreateInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlags handleTypes = {};
-
+ value = true
+ };
};
- static_assert( sizeof( ExternalMemoryBufferCreateInfo ) == sizeof( VkExternalMemoryBufferCreateInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ExternalMemoryBufferCreateInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eExternalMemoryBufferCreateInfo>
+ struct StructExtends<PhysicalDeviceRepresentativeFragmentTestFeaturesNV, DeviceCreateInfo>
{
- using Type = ExternalMemoryBufferCreateInfo;
- };
- using ExternalMemoryBufferCreateInfoKHR = ExternalMemoryBufferCreateInfo;
-
- struct ExternalMemoryImageCreateInfo
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eExternalMemoryImageCreateInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ExternalMemoryImageCreateInfo(VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlags handleTypes_ = {}) VULKAN_HPP_NOEXCEPT
- : handleTypes( handleTypes_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ExternalMemoryImageCreateInfo( ExternalMemoryImageCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ExternalMemoryImageCreateInfo( VkExternalMemoryImageCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ExternalMemoryImageCreateInfo & operator=( VkExternalMemoryImageCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ExternalMemoryImageCreateInfo const *>( &rhs );
- return *this;
- }
-
- ExternalMemoryImageCreateInfo & operator=( ExternalMemoryImageCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ExternalMemoryImageCreateInfo ) );
- return *this;
- }
-
- ExternalMemoryImageCreateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- ExternalMemoryImageCreateInfo & setHandleTypes( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlags handleTypes_ ) VULKAN_HPP_NOEXCEPT
- {
- handleTypes = handleTypes_;
- return *this;
- }
-
-
- operator VkExternalMemoryImageCreateInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkExternalMemoryImageCreateInfo*>( this );
- }
-
- operator VkExternalMemoryImageCreateInfo &() VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<VkExternalMemoryImageCreateInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ExternalMemoryImageCreateInfo const& ) const = default;
-#else
- bool operator==( ExternalMemoryImageCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( handleTypes == rhs.handleTypes );
- }
-
- bool operator!=( ExternalMemoryImageCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eExternalMemoryImageCreateInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlags handleTypes = {};
-
+ value = true
+ };
};
- static_assert( sizeof( ExternalMemoryImageCreateInfo ) == sizeof( VkExternalMemoryImageCreateInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ExternalMemoryImageCreateInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eExternalMemoryImageCreateInfo>
+ struct StructExtends<PhysicalDeviceRobustness2FeaturesEXT, PhysicalDeviceFeatures2>
{
- using Type = ExternalMemoryImageCreateInfo;
- };
- using ExternalMemoryImageCreateInfoKHR = ExternalMemoryImageCreateInfo;
-
- struct ExternalMemoryImageCreateInfoNV
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eExternalMemoryImageCreateInfoNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ExternalMemoryImageCreateInfoNV(VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV handleTypes_ = {}) VULKAN_HPP_NOEXCEPT
- : handleTypes( handleTypes_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ExternalMemoryImageCreateInfoNV( ExternalMemoryImageCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ExternalMemoryImageCreateInfoNV( VkExternalMemoryImageCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ExternalMemoryImageCreateInfoNV & operator=( VkExternalMemoryImageCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ExternalMemoryImageCreateInfoNV const *>( &rhs );
- return *this;
- }
-
- ExternalMemoryImageCreateInfoNV & operator=( ExternalMemoryImageCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ExternalMemoryImageCreateInfoNV ) );
- return *this;
- }
-
- ExternalMemoryImageCreateInfoNV & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- ExternalMemoryImageCreateInfoNV & setHandleTypes( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV handleTypes_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- handleTypes = handleTypes_;
- return *this;
- }
-
-
- operator VkExternalMemoryImageCreateInfoNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkExternalMemoryImageCreateInfoNV*>( this );
- }
-
- operator VkExternalMemoryImageCreateInfoNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkExternalMemoryImageCreateInfoNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ExternalMemoryImageCreateInfoNV const& ) const = default;
-#else
- bool operator==( ExternalMemoryImageCreateInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( handleTypes == rhs.handleTypes );
- }
-
- bool operator!=( ExternalMemoryImageCreateInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eExternalMemoryImageCreateInfoNV;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV handleTypes = {};
-
+ value = true
+ };
};
- static_assert( sizeof( ExternalMemoryImageCreateInfoNV ) == sizeof( VkExternalMemoryImageCreateInfoNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ExternalMemoryImageCreateInfoNV>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eExternalMemoryImageCreateInfoNV>
- {
- using Type = ExternalMemoryImageCreateInfoNV;
- };
-
- struct FilterCubicImageViewImageFormatPropertiesEXT
+ struct StructExtends<PhysicalDeviceRobustness2FeaturesEXT, DeviceCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eFilterCubicImageViewImageFormatPropertiesEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR FilterCubicImageViewImageFormatPropertiesEXT(VULKAN_HPP_NAMESPACE::Bool32 filterCubic_ = {}, VULKAN_HPP_NAMESPACE::Bool32 filterCubicMinmax_ = {}) VULKAN_HPP_NOEXCEPT
- : filterCubic( filterCubic_ ), filterCubicMinmax( filterCubicMinmax_ )
- {}
-
- VULKAN_HPP_CONSTEXPR FilterCubicImageViewImageFormatPropertiesEXT( FilterCubicImageViewImageFormatPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- FilterCubicImageViewImageFormatPropertiesEXT( VkFilterCubicImageViewImageFormatPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- FilterCubicImageViewImageFormatPropertiesEXT & operator=( VkFilterCubicImageViewImageFormatPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::FilterCubicImageViewImageFormatPropertiesEXT const *>( &rhs );
- return *this;
- }
-
- FilterCubicImageViewImageFormatPropertiesEXT & operator=( FilterCubicImageViewImageFormatPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( FilterCubicImageViewImageFormatPropertiesEXT ) );
- return *this;
- }
-
-
- operator VkFilterCubicImageViewImageFormatPropertiesEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkFilterCubicImageViewImageFormatPropertiesEXT*>( this );
- }
-
- operator VkFilterCubicImageViewImageFormatPropertiesEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkFilterCubicImageViewImageFormatPropertiesEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( FilterCubicImageViewImageFormatPropertiesEXT const& ) const = default;
-#else
- bool operator==( FilterCubicImageViewImageFormatPropertiesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( filterCubic == rhs.filterCubic )
- && ( filterCubicMinmax == rhs.filterCubicMinmax );
- }
-
- bool operator!=( FilterCubicImageViewImageFormatPropertiesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eFilterCubicImageViewImageFormatPropertiesEXT;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 filterCubic = {};
- VULKAN_HPP_NAMESPACE::Bool32 filterCubicMinmax = {};
-
+ value = true
+ };
};
- static_assert( sizeof( FilterCubicImageViewImageFormatPropertiesEXT ) == sizeof( VkFilterCubicImageViewImageFormatPropertiesEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<FilterCubicImageViewImageFormatPropertiesEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eFilterCubicImageViewImageFormatPropertiesEXT>
- {
- using Type = FilterCubicImageViewImageFormatPropertiesEXT;
- };
-
- struct FragmentShadingRateAttachmentInfoKHR
+ struct StructExtends<PhysicalDeviceRobustness2PropertiesEXT, PhysicalDeviceProperties2>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eFragmentShadingRateAttachmentInfoKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR FragmentShadingRateAttachmentInfoKHR(const VULKAN_HPP_NAMESPACE::AttachmentReference2* pFragmentShadingRateAttachment_ = {}, VULKAN_HPP_NAMESPACE::Extent2D shadingRateAttachmentTexelSize_ = {}) VULKAN_HPP_NOEXCEPT
- : pFragmentShadingRateAttachment( pFragmentShadingRateAttachment_ ), shadingRateAttachmentTexelSize( shadingRateAttachmentTexelSize_ )
- {}
-
- VULKAN_HPP_CONSTEXPR FragmentShadingRateAttachmentInfoKHR( FragmentShadingRateAttachmentInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- FragmentShadingRateAttachmentInfoKHR( VkFragmentShadingRateAttachmentInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- FragmentShadingRateAttachmentInfoKHR & operator=( VkFragmentShadingRateAttachmentInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::FragmentShadingRateAttachmentInfoKHR const *>( &rhs );
- return *this;
- }
-
- FragmentShadingRateAttachmentInfoKHR & operator=( FragmentShadingRateAttachmentInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( FragmentShadingRateAttachmentInfoKHR ) );
- return *this;
- }
-
- FragmentShadingRateAttachmentInfoKHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- FragmentShadingRateAttachmentInfoKHR & setPFragmentShadingRateAttachment( const VULKAN_HPP_NAMESPACE::AttachmentReference2* pFragmentShadingRateAttachment_ ) VULKAN_HPP_NOEXCEPT
- {
- pFragmentShadingRateAttachment = pFragmentShadingRateAttachment_;
- return *this;
- }
-
- FragmentShadingRateAttachmentInfoKHR & setShadingRateAttachmentTexelSize( VULKAN_HPP_NAMESPACE::Extent2D const & shadingRateAttachmentTexelSize_ ) VULKAN_HPP_NOEXCEPT
- {
- shadingRateAttachmentTexelSize = shadingRateAttachmentTexelSize_;
- return *this;
- }
-
-
- operator VkFragmentShadingRateAttachmentInfoKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkFragmentShadingRateAttachmentInfoKHR*>( this );
- }
-
- operator VkFragmentShadingRateAttachmentInfoKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkFragmentShadingRateAttachmentInfoKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( FragmentShadingRateAttachmentInfoKHR const& ) const = default;
-#else
- bool operator==( FragmentShadingRateAttachmentInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( pFragmentShadingRateAttachment == rhs.pFragmentShadingRateAttachment )
- && ( shadingRateAttachmentTexelSize == rhs.shadingRateAttachmentTexelSize );
- }
-
- bool operator!=( FragmentShadingRateAttachmentInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eFragmentShadingRateAttachmentInfoKHR;
- const void* pNext = {};
- const VULKAN_HPP_NAMESPACE::AttachmentReference2* pFragmentShadingRateAttachment = {};
- VULKAN_HPP_NAMESPACE::Extent2D shadingRateAttachmentTexelSize = {};
-
+ value = true
+ };
};
- static_assert( sizeof( FragmentShadingRateAttachmentInfoKHR ) == sizeof( VkFragmentShadingRateAttachmentInfoKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<FragmentShadingRateAttachmentInfoKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eFragmentShadingRateAttachmentInfoKHR>
+ struct StructExtends<PhysicalDeviceSampleLocationsPropertiesEXT, PhysicalDeviceProperties2>
{
- using Type = FragmentShadingRateAttachmentInfoKHR;
- };
-
- struct FramebufferAttachmentImageInfo
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eFramebufferAttachmentImageInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR FramebufferAttachmentImageInfo(VULKAN_HPP_NAMESPACE::ImageCreateFlags flags_ = {}, VULKAN_HPP_NAMESPACE::ImageUsageFlags usage_ = {}, uint32_t width_ = {}, uint32_t height_ = {}, uint32_t layerCount_ = {}, uint32_t viewFormatCount_ = {}, const VULKAN_HPP_NAMESPACE::Format* pViewFormats_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), usage( usage_ ), width( width_ ), height( height_ ), layerCount( layerCount_ ), viewFormatCount( viewFormatCount_ ), pViewFormats( pViewFormats_ )
- {}
-
- VULKAN_HPP_CONSTEXPR FramebufferAttachmentImageInfo( FramebufferAttachmentImageInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- FramebufferAttachmentImageInfo( VkFramebufferAttachmentImageInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- FramebufferAttachmentImageInfo( VULKAN_HPP_NAMESPACE::ImageCreateFlags flags_, VULKAN_HPP_NAMESPACE::ImageUsageFlags usage_, uint32_t width_, uint32_t height_, uint32_t layerCount_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Format> const & viewFormats_ )
- : flags( flags_ ), usage( usage_ ), width( width_ ), height( height_ ), layerCount( layerCount_ ), viewFormatCount( static_cast<uint32_t>( viewFormats_.size() ) ), pViewFormats( viewFormats_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- FramebufferAttachmentImageInfo & operator=( VkFramebufferAttachmentImageInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::FramebufferAttachmentImageInfo const *>( &rhs );
- return *this;
- }
-
- FramebufferAttachmentImageInfo & operator=( FramebufferAttachmentImageInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( FramebufferAttachmentImageInfo ) );
- return *this;
- }
-
- FramebufferAttachmentImageInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- FramebufferAttachmentImageInfo & setFlags( VULKAN_HPP_NAMESPACE::ImageCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- FramebufferAttachmentImageInfo & setUsage( VULKAN_HPP_NAMESPACE::ImageUsageFlags usage_ ) VULKAN_HPP_NOEXCEPT
- {
- usage = usage_;
- return *this;
- }
-
- FramebufferAttachmentImageInfo & setWidth( uint32_t width_ ) VULKAN_HPP_NOEXCEPT
- {
- width = width_;
- return *this;
- }
-
- FramebufferAttachmentImageInfo & setHeight( uint32_t height_ ) VULKAN_HPP_NOEXCEPT
- {
- height = height_;
- return *this;
- }
-
- FramebufferAttachmentImageInfo & setLayerCount( uint32_t layerCount_ ) VULKAN_HPP_NOEXCEPT
- {
- layerCount = layerCount_;
- return *this;
- }
-
- FramebufferAttachmentImageInfo & setViewFormatCount( uint32_t viewFormatCount_ ) VULKAN_HPP_NOEXCEPT
- {
- viewFormatCount = viewFormatCount_;
- return *this;
- }
-
- FramebufferAttachmentImageInfo & setPViewFormats( const VULKAN_HPP_NAMESPACE::Format* pViewFormats_ ) VULKAN_HPP_NOEXCEPT
- {
- pViewFormats = pViewFormats_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- FramebufferAttachmentImageInfo & setViewFormats( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Format> const & viewFormats_ ) VULKAN_HPP_NOEXCEPT
- {
- viewFormatCount = static_cast<uint32_t>( viewFormats_.size() );
- pViewFormats = viewFormats_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkFramebufferAttachmentImageInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkFramebufferAttachmentImageInfo*>( this );
- }
-
- operator VkFramebufferAttachmentImageInfo &() VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<VkFramebufferAttachmentImageInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( FramebufferAttachmentImageInfo const& ) const = default;
-#else
- bool operator==( FramebufferAttachmentImageInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( usage == rhs.usage )
- && ( width == rhs.width )
- && ( height == rhs.height )
- && ( layerCount == rhs.layerCount )
- && ( viewFormatCount == rhs.viewFormatCount )
- && ( pViewFormats == rhs.pViewFormats );
- }
-
- bool operator!=( FramebufferAttachmentImageInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eFramebufferAttachmentImageInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::ImageCreateFlags flags = {};
- VULKAN_HPP_NAMESPACE::ImageUsageFlags usage = {};
- uint32_t width = {};
- uint32_t height = {};
- uint32_t layerCount = {};
- uint32_t viewFormatCount = {};
- const VULKAN_HPP_NAMESPACE::Format* pViewFormats = {};
-
+ value = true
+ };
};
- static_assert( sizeof( FramebufferAttachmentImageInfo ) == sizeof( VkFramebufferAttachmentImageInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<FramebufferAttachmentImageInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eFramebufferAttachmentImageInfo>
- {
- using Type = FramebufferAttachmentImageInfo;
- };
- using FramebufferAttachmentImageInfoKHR = FramebufferAttachmentImageInfo;
-
- struct FramebufferAttachmentsCreateInfo
+ struct StructExtends<PhysicalDeviceSamplerFilterMinmaxProperties, PhysicalDeviceProperties2>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eFramebufferAttachmentsCreateInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR FramebufferAttachmentsCreateInfo(uint32_t attachmentImageInfoCount_ = {}, const VULKAN_HPP_NAMESPACE::FramebufferAttachmentImageInfo* pAttachmentImageInfos_ = {}) VULKAN_HPP_NOEXCEPT
- : attachmentImageInfoCount( attachmentImageInfoCount_ ), pAttachmentImageInfos( pAttachmentImageInfos_ )
- {}
-
- VULKAN_HPP_CONSTEXPR FramebufferAttachmentsCreateInfo( FramebufferAttachmentsCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- FramebufferAttachmentsCreateInfo( VkFramebufferAttachmentsCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- FramebufferAttachmentsCreateInfo( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::FramebufferAttachmentImageInfo> const & attachmentImageInfos_ )
- : attachmentImageInfoCount( static_cast<uint32_t>( attachmentImageInfos_.size() ) ), pAttachmentImageInfos( attachmentImageInfos_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- FramebufferAttachmentsCreateInfo & operator=( VkFramebufferAttachmentsCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::FramebufferAttachmentsCreateInfo const *>( &rhs );
- return *this;
- }
-
- FramebufferAttachmentsCreateInfo & operator=( FramebufferAttachmentsCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( FramebufferAttachmentsCreateInfo ) );
- return *this;
- }
-
- FramebufferAttachmentsCreateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- FramebufferAttachmentsCreateInfo & setAttachmentImageInfoCount( uint32_t attachmentImageInfoCount_ ) VULKAN_HPP_NOEXCEPT
- {
- attachmentImageInfoCount = attachmentImageInfoCount_;
- return *this;
- }
-
- FramebufferAttachmentsCreateInfo & setPAttachmentImageInfos( const VULKAN_HPP_NAMESPACE::FramebufferAttachmentImageInfo* pAttachmentImageInfos_ ) VULKAN_HPP_NOEXCEPT
- {
- pAttachmentImageInfos = pAttachmentImageInfos_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- FramebufferAttachmentsCreateInfo & setAttachmentImageInfos( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::FramebufferAttachmentImageInfo> const & attachmentImageInfos_ ) VULKAN_HPP_NOEXCEPT
- {
- attachmentImageInfoCount = static_cast<uint32_t>( attachmentImageInfos_.size() );
- pAttachmentImageInfos = attachmentImageInfos_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkFramebufferAttachmentsCreateInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkFramebufferAttachmentsCreateInfo*>( this );
- }
-
- operator VkFramebufferAttachmentsCreateInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkFramebufferAttachmentsCreateInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( FramebufferAttachmentsCreateInfo const& ) const = default;
-#else
- bool operator==( FramebufferAttachmentsCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( attachmentImageInfoCount == rhs.attachmentImageInfoCount )
- && ( pAttachmentImageInfos == rhs.pAttachmentImageInfos );
- }
-
- bool operator!=( FramebufferAttachmentsCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eFramebufferAttachmentsCreateInfo;
- const void* pNext = {};
- uint32_t attachmentImageInfoCount = {};
- const VULKAN_HPP_NAMESPACE::FramebufferAttachmentImageInfo* pAttachmentImageInfos = {};
-
+ value = true
+ };
};
- static_assert( sizeof( FramebufferAttachmentsCreateInfo ) == sizeof( VkFramebufferAttachmentsCreateInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<FramebufferAttachmentsCreateInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eFramebufferAttachmentsCreateInfo>
- {
- using Type = FramebufferAttachmentsCreateInfo;
- };
- using FramebufferAttachmentsCreateInfoKHR = FramebufferAttachmentsCreateInfo;
-
- struct GraphicsShaderGroupCreateInfoNV
+ struct StructExtends<PhysicalDeviceSamplerYcbcrConversionFeatures, PhysicalDeviceFeatures2>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eGraphicsShaderGroupCreateInfoNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR GraphicsShaderGroupCreateInfoNV(uint32_t stageCount_ = {}, const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo* pStages_ = {}, const VULKAN_HPP_NAMESPACE::PipelineVertexInputStateCreateInfo* pVertexInputState_ = {}, const VULKAN_HPP_NAMESPACE::PipelineTessellationStateCreateInfo* pTessellationState_ = {}) VULKAN_HPP_NOEXCEPT
- : stageCount( stageCount_ ), pStages( pStages_ ), pVertexInputState( pVertexInputState_ ), pTessellationState( pTessellationState_ )
- {}
-
- VULKAN_HPP_CONSTEXPR GraphicsShaderGroupCreateInfoNV( GraphicsShaderGroupCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- GraphicsShaderGroupCreateInfoNV( VkGraphicsShaderGroupCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- GraphicsShaderGroupCreateInfoNV( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo> const & stages_, const VULKAN_HPP_NAMESPACE::PipelineVertexInputStateCreateInfo* pVertexInputState_ = {}, const VULKAN_HPP_NAMESPACE::PipelineTessellationStateCreateInfo* pTessellationState_ = {} )
- : stageCount( static_cast<uint32_t>( stages_.size() ) ), pStages( stages_.data() ), pVertexInputState( pVertexInputState_ ), pTessellationState( pTessellationState_ )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- GraphicsShaderGroupCreateInfoNV & operator=( VkGraphicsShaderGroupCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::GraphicsShaderGroupCreateInfoNV const *>( &rhs );
- return *this;
- }
-
- GraphicsShaderGroupCreateInfoNV & operator=( GraphicsShaderGroupCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( GraphicsShaderGroupCreateInfoNV ) );
- return *this;
- }
-
- GraphicsShaderGroupCreateInfoNV & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- GraphicsShaderGroupCreateInfoNV & setStageCount( uint32_t stageCount_ ) VULKAN_HPP_NOEXCEPT
- {
- stageCount = stageCount_;
- return *this;
- }
-
- GraphicsShaderGroupCreateInfoNV & setPStages( const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo* pStages_ ) VULKAN_HPP_NOEXCEPT
- {
- pStages = pStages_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- GraphicsShaderGroupCreateInfoNV & setStages( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo> const & stages_ ) VULKAN_HPP_NOEXCEPT
- {
- stageCount = static_cast<uint32_t>( stages_.size() );
- pStages = stages_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- GraphicsShaderGroupCreateInfoNV & setPVertexInputState( const VULKAN_HPP_NAMESPACE::PipelineVertexInputStateCreateInfo* pVertexInputState_ ) VULKAN_HPP_NOEXCEPT
- {
- pVertexInputState = pVertexInputState_;
- return *this;
- }
-
- GraphicsShaderGroupCreateInfoNV & setPTessellationState( const VULKAN_HPP_NAMESPACE::PipelineTessellationStateCreateInfo* pTessellationState_ ) VULKAN_HPP_NOEXCEPT
- {
- pTessellationState = pTessellationState_;
- return *this;
- }
-
-
- operator VkGraphicsShaderGroupCreateInfoNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkGraphicsShaderGroupCreateInfoNV*>( this );
- }
-
- operator VkGraphicsShaderGroupCreateInfoNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkGraphicsShaderGroupCreateInfoNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( GraphicsShaderGroupCreateInfoNV const& ) const = default;
-#else
- bool operator==( GraphicsShaderGroupCreateInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( stageCount == rhs.stageCount )
- && ( pStages == rhs.pStages )
- && ( pVertexInputState == rhs.pVertexInputState )
- && ( pTessellationState == rhs.pTessellationState );
- }
-
- bool operator!=( GraphicsShaderGroupCreateInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eGraphicsShaderGroupCreateInfoNV;
- const void* pNext = {};
- uint32_t stageCount = {};
- const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo* pStages = {};
- const VULKAN_HPP_NAMESPACE::PipelineVertexInputStateCreateInfo* pVertexInputState = {};
- const VULKAN_HPP_NAMESPACE::PipelineTessellationStateCreateInfo* pTessellationState = {};
-
+ value = true
+ };
};
- static_assert( sizeof( GraphicsShaderGroupCreateInfoNV ) == sizeof( VkGraphicsShaderGroupCreateInfoNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<GraphicsShaderGroupCreateInfoNV>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eGraphicsShaderGroupCreateInfoNV>
- {
- using Type = GraphicsShaderGroupCreateInfoNV;
- };
-
- struct GraphicsPipelineShaderGroupsCreateInfoNV
+ struct StructExtends<PhysicalDeviceSamplerYcbcrConversionFeatures, DeviceCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eGraphicsPipelineShaderGroupsCreateInfoNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR GraphicsPipelineShaderGroupsCreateInfoNV(uint32_t groupCount_ = {}, const VULKAN_HPP_NAMESPACE::GraphicsShaderGroupCreateInfoNV* pGroups_ = {}, uint32_t pipelineCount_ = {}, const VULKAN_HPP_NAMESPACE::Pipeline* pPipelines_ = {}) VULKAN_HPP_NOEXCEPT
- : groupCount( groupCount_ ), pGroups( pGroups_ ), pipelineCount( pipelineCount_ ), pPipelines( pPipelines_ )
- {}
-
- VULKAN_HPP_CONSTEXPR GraphicsPipelineShaderGroupsCreateInfoNV( GraphicsPipelineShaderGroupsCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- GraphicsPipelineShaderGroupsCreateInfoNV( VkGraphicsPipelineShaderGroupsCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- GraphicsPipelineShaderGroupsCreateInfoNV( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::GraphicsShaderGroupCreateInfoNV> const & groups_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Pipeline> const & pipelines_ = {} )
- : groupCount( static_cast<uint32_t>( groups_.size() ) ), pGroups( groups_.data() ), pipelineCount( static_cast<uint32_t>( pipelines_.size() ) ), pPipelines( pipelines_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- GraphicsPipelineShaderGroupsCreateInfoNV & operator=( VkGraphicsPipelineShaderGroupsCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::GraphicsPipelineShaderGroupsCreateInfoNV const *>( &rhs );
- return *this;
- }
-
- GraphicsPipelineShaderGroupsCreateInfoNV & operator=( GraphicsPipelineShaderGroupsCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( GraphicsPipelineShaderGroupsCreateInfoNV ) );
- return *this;
- }
-
- GraphicsPipelineShaderGroupsCreateInfoNV & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- pNext = pNext_;
- return *this;
- }
-
- GraphicsPipelineShaderGroupsCreateInfoNV & setGroupCount( uint32_t groupCount_ ) VULKAN_HPP_NOEXCEPT
- {
- groupCount = groupCount_;
- return *this;
- }
-
- GraphicsPipelineShaderGroupsCreateInfoNV & setPGroups( const VULKAN_HPP_NAMESPACE::GraphicsShaderGroupCreateInfoNV* pGroups_ ) VULKAN_HPP_NOEXCEPT
- {
- pGroups = pGroups_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- GraphicsPipelineShaderGroupsCreateInfoNV & setGroups( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::GraphicsShaderGroupCreateInfoNV> const & groups_ ) VULKAN_HPP_NOEXCEPT
- {
- groupCount = static_cast<uint32_t>( groups_.size() );
- pGroups = groups_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- GraphicsPipelineShaderGroupsCreateInfoNV & setPipelineCount( uint32_t pipelineCount_ ) VULKAN_HPP_NOEXCEPT
- {
- pipelineCount = pipelineCount_;
- return *this;
- }
-
- GraphicsPipelineShaderGroupsCreateInfoNV & setPPipelines( const VULKAN_HPP_NAMESPACE::Pipeline* pPipelines_ ) VULKAN_HPP_NOEXCEPT
- {
- pPipelines = pPipelines_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- GraphicsPipelineShaderGroupsCreateInfoNV & setPipelines( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Pipeline> const & pipelines_ ) VULKAN_HPP_NOEXCEPT
- {
- pipelineCount = static_cast<uint32_t>( pipelines_.size() );
- pPipelines = pipelines_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkGraphicsPipelineShaderGroupsCreateInfoNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkGraphicsPipelineShaderGroupsCreateInfoNV*>( this );
- }
-
- operator VkGraphicsPipelineShaderGroupsCreateInfoNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkGraphicsPipelineShaderGroupsCreateInfoNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( GraphicsPipelineShaderGroupsCreateInfoNV const& ) const = default;
-#else
- bool operator==( GraphicsPipelineShaderGroupsCreateInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( groupCount == rhs.groupCount )
- && ( pGroups == rhs.pGroups )
- && ( pipelineCount == rhs.pipelineCount )
- && ( pPipelines == rhs.pPipelines );
- }
-
- bool operator!=( GraphicsPipelineShaderGroupsCreateInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eGraphicsPipelineShaderGroupsCreateInfoNV;
- const void* pNext = {};
- uint32_t groupCount = {};
- const VULKAN_HPP_NAMESPACE::GraphicsShaderGroupCreateInfoNV* pGroups = {};
- uint32_t pipelineCount = {};
- const VULKAN_HPP_NAMESPACE::Pipeline* pPipelines = {};
-
+ value = true
+ };
};
- static_assert( sizeof( GraphicsPipelineShaderGroupsCreateInfoNV ) == sizeof( VkGraphicsPipelineShaderGroupsCreateInfoNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<GraphicsPipelineShaderGroupsCreateInfoNV>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eGraphicsPipelineShaderGroupsCreateInfoNV>
+ struct StructExtends<PhysicalDeviceScalarBlockLayoutFeatures, PhysicalDeviceFeatures2>
{
- using Type = GraphicsPipelineShaderGroupsCreateInfoNV;
- };
-
- struct HeadlessSurfaceCreateInfoEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eHeadlessSurfaceCreateInfoEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR HeadlessSurfaceCreateInfoEXT(VULKAN_HPP_NAMESPACE::HeadlessSurfaceCreateFlagsEXT flags_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ )
- {}
-
- VULKAN_HPP_CONSTEXPR HeadlessSurfaceCreateInfoEXT( HeadlessSurfaceCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- HeadlessSurfaceCreateInfoEXT( VkHeadlessSurfaceCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- HeadlessSurfaceCreateInfoEXT & operator=( VkHeadlessSurfaceCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::HeadlessSurfaceCreateInfoEXT const *>( &rhs );
- return *this;
- }
-
- HeadlessSurfaceCreateInfoEXT & operator=( HeadlessSurfaceCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( HeadlessSurfaceCreateInfoEXT ) );
- return *this;
- }
-
- HeadlessSurfaceCreateInfoEXT & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- HeadlessSurfaceCreateInfoEXT & setFlags( VULKAN_HPP_NAMESPACE::HeadlessSurfaceCreateFlagsEXT flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
-
- operator VkHeadlessSurfaceCreateInfoEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkHeadlessSurfaceCreateInfoEXT*>( this );
- }
-
- operator VkHeadlessSurfaceCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkHeadlessSurfaceCreateInfoEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( HeadlessSurfaceCreateInfoEXT const& ) const = default;
-#else
- bool operator==( HeadlessSurfaceCreateInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags );
- }
-
- bool operator!=( HeadlessSurfaceCreateInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eHeadlessSurfaceCreateInfoEXT;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::HeadlessSurfaceCreateFlagsEXT flags = {};
-
+ value = true
+ };
};
- static_assert( sizeof( HeadlessSurfaceCreateInfoEXT ) == sizeof( VkHeadlessSurfaceCreateInfoEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<HeadlessSurfaceCreateInfoEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eHeadlessSurfaceCreateInfoEXT>
- {
- using Type = HeadlessSurfaceCreateInfoEXT;
- };
-
-#ifdef VK_USE_PLATFORM_IOS_MVK
- struct IOSSurfaceCreateInfoMVK
+ struct StructExtends<PhysicalDeviceScalarBlockLayoutFeatures, DeviceCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eIosSurfaceCreateInfoMVK;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR IOSSurfaceCreateInfoMVK(VULKAN_HPP_NAMESPACE::IOSSurfaceCreateFlagsMVK flags_ = {}, const void* pView_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), pView( pView_ )
- {}
-
- VULKAN_HPP_CONSTEXPR IOSSurfaceCreateInfoMVK( IOSSurfaceCreateInfoMVK const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- IOSSurfaceCreateInfoMVK( VkIOSSurfaceCreateInfoMVK const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- IOSSurfaceCreateInfoMVK & operator=( VkIOSSurfaceCreateInfoMVK const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::IOSSurfaceCreateInfoMVK const *>( &rhs );
- return *this;
- }
-
- IOSSurfaceCreateInfoMVK & operator=( IOSSurfaceCreateInfoMVK const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( IOSSurfaceCreateInfoMVK ) );
- return *this;
- }
-
- IOSSurfaceCreateInfoMVK & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- IOSSurfaceCreateInfoMVK & setFlags( VULKAN_HPP_NAMESPACE::IOSSurfaceCreateFlagsMVK flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- IOSSurfaceCreateInfoMVK & setPView( const void* pView_ ) VULKAN_HPP_NOEXCEPT
- {
- pView = pView_;
- return *this;
- }
-
-
- operator VkIOSSurfaceCreateInfoMVK const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkIOSSurfaceCreateInfoMVK*>( this );
- }
-
- operator VkIOSSurfaceCreateInfoMVK &() VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<VkIOSSurfaceCreateInfoMVK*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( IOSSurfaceCreateInfoMVK const& ) const = default;
-#else
- bool operator==( IOSSurfaceCreateInfoMVK const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( pView == rhs.pView );
- }
-
- bool operator!=( IOSSurfaceCreateInfoMVK const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eIosSurfaceCreateInfoMVK;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::IOSSurfaceCreateFlagsMVK flags = {};
- const void* pView = {};
-
+ value = true
+ };
};
- static_assert( sizeof( IOSSurfaceCreateInfoMVK ) == sizeof( VkIOSSurfaceCreateInfoMVK ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<IOSSurfaceCreateInfoMVK>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eIosSurfaceCreateInfoMVK>
+ struct StructExtends<PhysicalDeviceSeparateDepthStencilLayoutsFeatures, PhysicalDeviceFeatures2>
{
- using Type = IOSSurfaceCreateInfoMVK;
- };
-#endif /*VK_USE_PLATFORM_IOS_MVK*/
-
- struct ImageDrmFormatModifierExplicitCreateInfoEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImageDrmFormatModifierExplicitCreateInfoEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ImageDrmFormatModifierExplicitCreateInfoEXT(uint64_t drmFormatModifier_ = {}, uint32_t drmFormatModifierPlaneCount_ = {}, const VULKAN_HPP_NAMESPACE::SubresourceLayout* pPlaneLayouts_ = {}) VULKAN_HPP_NOEXCEPT
- : drmFormatModifier( drmFormatModifier_ ), drmFormatModifierPlaneCount( drmFormatModifierPlaneCount_ ), pPlaneLayouts( pPlaneLayouts_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ImageDrmFormatModifierExplicitCreateInfoEXT( ImageDrmFormatModifierExplicitCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ImageDrmFormatModifierExplicitCreateInfoEXT( VkImageDrmFormatModifierExplicitCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- ImageDrmFormatModifierExplicitCreateInfoEXT( uint64_t drmFormatModifier_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SubresourceLayout> const & planeLayouts_ )
- : drmFormatModifier( drmFormatModifier_ ), drmFormatModifierPlaneCount( static_cast<uint32_t>( planeLayouts_.size() ) ), pPlaneLayouts( planeLayouts_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ImageDrmFormatModifierExplicitCreateInfoEXT & operator=( VkImageDrmFormatModifierExplicitCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageDrmFormatModifierExplicitCreateInfoEXT const *>( &rhs );
- return *this;
- }
-
- ImageDrmFormatModifierExplicitCreateInfoEXT & operator=( ImageDrmFormatModifierExplicitCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ImageDrmFormatModifierExplicitCreateInfoEXT ) );
- return *this;
- }
-
- ImageDrmFormatModifierExplicitCreateInfoEXT & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- ImageDrmFormatModifierExplicitCreateInfoEXT & setDrmFormatModifier( uint64_t drmFormatModifier_ ) VULKAN_HPP_NOEXCEPT
- {
- drmFormatModifier = drmFormatModifier_;
- return *this;
- }
-
- ImageDrmFormatModifierExplicitCreateInfoEXT & setDrmFormatModifierPlaneCount( uint32_t drmFormatModifierPlaneCount_ ) VULKAN_HPP_NOEXCEPT
- {
- drmFormatModifierPlaneCount = drmFormatModifierPlaneCount_;
- return *this;
- }
-
- ImageDrmFormatModifierExplicitCreateInfoEXT & setPPlaneLayouts( const VULKAN_HPP_NAMESPACE::SubresourceLayout* pPlaneLayouts_ ) VULKAN_HPP_NOEXCEPT
- {
- pPlaneLayouts = pPlaneLayouts_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- ImageDrmFormatModifierExplicitCreateInfoEXT & setPlaneLayouts( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SubresourceLayout> const & planeLayouts_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- drmFormatModifierPlaneCount = static_cast<uint32_t>( planeLayouts_.size() );
- pPlaneLayouts = planeLayouts_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkImageDrmFormatModifierExplicitCreateInfoEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkImageDrmFormatModifierExplicitCreateInfoEXT*>( this );
- }
-
- operator VkImageDrmFormatModifierExplicitCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkImageDrmFormatModifierExplicitCreateInfoEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ImageDrmFormatModifierExplicitCreateInfoEXT const& ) const = default;
-#else
- bool operator==( ImageDrmFormatModifierExplicitCreateInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( drmFormatModifier == rhs.drmFormatModifier )
- && ( drmFormatModifierPlaneCount == rhs.drmFormatModifierPlaneCount )
- && ( pPlaneLayouts == rhs.pPlaneLayouts );
- }
-
- bool operator!=( ImageDrmFormatModifierExplicitCreateInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageDrmFormatModifierExplicitCreateInfoEXT;
- const void* pNext = {};
- uint64_t drmFormatModifier = {};
- uint32_t drmFormatModifierPlaneCount = {};
- const VULKAN_HPP_NAMESPACE::SubresourceLayout* pPlaneLayouts = {};
-
+ value = true
+ };
};
- static_assert( sizeof( ImageDrmFormatModifierExplicitCreateInfoEXT ) == sizeof( VkImageDrmFormatModifierExplicitCreateInfoEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ImageDrmFormatModifierExplicitCreateInfoEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eImageDrmFormatModifierExplicitCreateInfoEXT>
- {
- using Type = ImageDrmFormatModifierExplicitCreateInfoEXT;
- };
-
- struct ImageDrmFormatModifierListCreateInfoEXT
+ struct StructExtends<PhysicalDeviceSeparateDepthStencilLayoutsFeatures, DeviceCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImageDrmFormatModifierListCreateInfoEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ImageDrmFormatModifierListCreateInfoEXT(uint32_t drmFormatModifierCount_ = {}, const uint64_t* pDrmFormatModifiers_ = {}) VULKAN_HPP_NOEXCEPT
- : drmFormatModifierCount( drmFormatModifierCount_ ), pDrmFormatModifiers( pDrmFormatModifiers_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ImageDrmFormatModifierListCreateInfoEXT( ImageDrmFormatModifierListCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ImageDrmFormatModifierListCreateInfoEXT( VkImageDrmFormatModifierListCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- ImageDrmFormatModifierListCreateInfoEXT( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const & drmFormatModifiers_ )
- : drmFormatModifierCount( static_cast<uint32_t>( drmFormatModifiers_.size() ) ), pDrmFormatModifiers( drmFormatModifiers_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ImageDrmFormatModifierListCreateInfoEXT & operator=( VkImageDrmFormatModifierListCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageDrmFormatModifierListCreateInfoEXT const *>( &rhs );
- return *this;
- }
-
- ImageDrmFormatModifierListCreateInfoEXT & operator=( ImageDrmFormatModifierListCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ImageDrmFormatModifierListCreateInfoEXT ) );
- return *this;
- }
-
- ImageDrmFormatModifierListCreateInfoEXT & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- ImageDrmFormatModifierListCreateInfoEXT & setDrmFormatModifierCount( uint32_t drmFormatModifierCount_ ) VULKAN_HPP_NOEXCEPT
- {
- drmFormatModifierCount = drmFormatModifierCount_;
- return *this;
- }
-
- ImageDrmFormatModifierListCreateInfoEXT & setPDrmFormatModifiers( const uint64_t* pDrmFormatModifiers_ ) VULKAN_HPP_NOEXCEPT
- {
- pDrmFormatModifiers = pDrmFormatModifiers_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- ImageDrmFormatModifierListCreateInfoEXT & setDrmFormatModifiers( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const & drmFormatModifiers_ ) VULKAN_HPP_NOEXCEPT
- {
- drmFormatModifierCount = static_cast<uint32_t>( drmFormatModifiers_.size() );
- pDrmFormatModifiers = drmFormatModifiers_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkImageDrmFormatModifierListCreateInfoEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkImageDrmFormatModifierListCreateInfoEXT*>( this );
- }
-
- operator VkImageDrmFormatModifierListCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkImageDrmFormatModifierListCreateInfoEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ImageDrmFormatModifierListCreateInfoEXT const& ) const = default;
-#else
- bool operator==( ImageDrmFormatModifierListCreateInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( drmFormatModifierCount == rhs.drmFormatModifierCount )
- && ( pDrmFormatModifiers == rhs.pDrmFormatModifiers );
- }
-
- bool operator!=( ImageDrmFormatModifierListCreateInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageDrmFormatModifierListCreateInfoEXT;
- const void* pNext = {};
- uint32_t drmFormatModifierCount = {};
- const uint64_t* pDrmFormatModifiers = {};
-
+ value = true
+ };
};
- static_assert( sizeof( ImageDrmFormatModifierListCreateInfoEXT ) == sizeof( VkImageDrmFormatModifierListCreateInfoEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ImageDrmFormatModifierListCreateInfoEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eImageDrmFormatModifierListCreateInfoEXT>
+ struct StructExtends<PhysicalDeviceShaderAtomicFloatFeaturesEXT, PhysicalDeviceFeatures2>
{
- using Type = ImageDrmFormatModifierListCreateInfoEXT;
- };
-
- struct ImageFormatListCreateInfo
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImageFormatListCreateInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ImageFormatListCreateInfo(uint32_t viewFormatCount_ = {}, const VULKAN_HPP_NAMESPACE::Format* pViewFormats_ = {}) VULKAN_HPP_NOEXCEPT
- : viewFormatCount( viewFormatCount_ ), pViewFormats( pViewFormats_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ImageFormatListCreateInfo( ImageFormatListCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ImageFormatListCreateInfo( VkImageFormatListCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- ImageFormatListCreateInfo( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Format> const & viewFormats_ )
- : viewFormatCount( static_cast<uint32_t>( viewFormats_.size() ) ), pViewFormats( viewFormats_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ImageFormatListCreateInfo & operator=( VkImageFormatListCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageFormatListCreateInfo const *>( &rhs );
- return *this;
- }
-
- ImageFormatListCreateInfo & operator=( ImageFormatListCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ImageFormatListCreateInfo ) );
- return *this;
- }
-
- ImageFormatListCreateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- ImageFormatListCreateInfo & setViewFormatCount( uint32_t viewFormatCount_ ) VULKAN_HPP_NOEXCEPT
- {
- viewFormatCount = viewFormatCount_;
- return *this;
- }
-
- ImageFormatListCreateInfo & setPViewFormats( const VULKAN_HPP_NAMESPACE::Format* pViewFormats_ ) VULKAN_HPP_NOEXCEPT
- {
- pViewFormats = pViewFormats_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- ImageFormatListCreateInfo & setViewFormats( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Format> const & viewFormats_ ) VULKAN_HPP_NOEXCEPT
- {
- viewFormatCount = static_cast<uint32_t>( viewFormats_.size() );
- pViewFormats = viewFormats_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkImageFormatListCreateInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkImageFormatListCreateInfo*>( this );
- }
-
- operator VkImageFormatListCreateInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkImageFormatListCreateInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ImageFormatListCreateInfo const& ) const = default;
-#else
- bool operator==( ImageFormatListCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( viewFormatCount == rhs.viewFormatCount )
- && ( pViewFormats == rhs.pViewFormats );
- }
-
- bool operator!=( ImageFormatListCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageFormatListCreateInfo;
- const void* pNext = {};
- uint32_t viewFormatCount = {};
- const VULKAN_HPP_NAMESPACE::Format* pViewFormats = {};
-
+ value = true
+ };
};
- static_assert( sizeof( ImageFormatListCreateInfo ) == sizeof( VkImageFormatListCreateInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ImageFormatListCreateInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eImageFormatListCreateInfo>
+ struct StructExtends<PhysicalDeviceShaderAtomicFloatFeaturesEXT, DeviceCreateInfo>
{
- using Type = ImageFormatListCreateInfo;
- };
- using ImageFormatListCreateInfoKHR = ImageFormatListCreateInfo;
-
-#ifdef VK_USE_PLATFORM_FUCHSIA
- struct ImagePipeSurfaceCreateInfoFUCHSIA
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImagepipeSurfaceCreateInfoFUCHSIA;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ImagePipeSurfaceCreateInfoFUCHSIA(VULKAN_HPP_NAMESPACE::ImagePipeSurfaceCreateFlagsFUCHSIA flags_ = {}, zx_handle_t imagePipeHandle_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), imagePipeHandle( imagePipeHandle_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ImagePipeSurfaceCreateInfoFUCHSIA( ImagePipeSurfaceCreateInfoFUCHSIA const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ImagePipeSurfaceCreateInfoFUCHSIA( VkImagePipeSurfaceCreateInfoFUCHSIA const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ImagePipeSurfaceCreateInfoFUCHSIA & operator=( VkImagePipeSurfaceCreateInfoFUCHSIA const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImagePipeSurfaceCreateInfoFUCHSIA const *>( &rhs );
- return *this;
- }
-
- ImagePipeSurfaceCreateInfoFUCHSIA & operator=( ImagePipeSurfaceCreateInfoFUCHSIA const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ImagePipeSurfaceCreateInfoFUCHSIA ) );
- return *this;
- }
-
- ImagePipeSurfaceCreateInfoFUCHSIA & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- ImagePipeSurfaceCreateInfoFUCHSIA & setFlags( VULKAN_HPP_NAMESPACE::ImagePipeSurfaceCreateFlagsFUCHSIA flags_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- flags = flags_;
- return *this;
- }
-
- ImagePipeSurfaceCreateInfoFUCHSIA & setImagePipeHandle( zx_handle_t imagePipeHandle_ ) VULKAN_HPP_NOEXCEPT
- {
- imagePipeHandle = imagePipeHandle_;
- return *this;
- }
-
-
- operator VkImagePipeSurfaceCreateInfoFUCHSIA const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkImagePipeSurfaceCreateInfoFUCHSIA*>( this );
- }
-
- operator VkImagePipeSurfaceCreateInfoFUCHSIA &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkImagePipeSurfaceCreateInfoFUCHSIA*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ImagePipeSurfaceCreateInfoFUCHSIA const& ) const = default;
-#else
- bool operator==( ImagePipeSurfaceCreateInfoFUCHSIA const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( memcmp( &imagePipeHandle, &rhs.imagePipeHandle, sizeof( zx_handle_t ) ) == 0 );
- }
-
- bool operator!=( ImagePipeSurfaceCreateInfoFUCHSIA const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImagepipeSurfaceCreateInfoFUCHSIA;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::ImagePipeSurfaceCreateFlagsFUCHSIA flags = {};
- zx_handle_t imagePipeHandle = {};
-
+ value = true
+ };
};
- static_assert( sizeof( ImagePipeSurfaceCreateInfoFUCHSIA ) == sizeof( VkImagePipeSurfaceCreateInfoFUCHSIA ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ImagePipeSurfaceCreateInfoFUCHSIA>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eImagepipeSurfaceCreateInfoFUCHSIA>
- {
- using Type = ImagePipeSurfaceCreateInfoFUCHSIA;
- };
-#endif /*VK_USE_PLATFORM_FUCHSIA*/
-
- struct ImagePlaneMemoryRequirementsInfo
+ struct StructExtends<PhysicalDeviceShaderAtomicInt64Features, PhysicalDeviceFeatures2>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImagePlaneMemoryRequirementsInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ImagePlaneMemoryRequirementsInfo(VULKAN_HPP_NAMESPACE::ImageAspectFlagBits planeAspect_ = VULKAN_HPP_NAMESPACE::ImageAspectFlagBits::eColor) VULKAN_HPP_NOEXCEPT
- : planeAspect( planeAspect_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ImagePlaneMemoryRequirementsInfo( ImagePlaneMemoryRequirementsInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ImagePlaneMemoryRequirementsInfo( VkImagePlaneMemoryRequirementsInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ImagePlaneMemoryRequirementsInfo & operator=( VkImagePlaneMemoryRequirementsInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImagePlaneMemoryRequirementsInfo const *>( &rhs );
- return *this;
- }
-
- ImagePlaneMemoryRequirementsInfo & operator=( ImagePlaneMemoryRequirementsInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ImagePlaneMemoryRequirementsInfo ) );
- return *this;
- }
-
- ImagePlaneMemoryRequirementsInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- ImagePlaneMemoryRequirementsInfo & setPlaneAspect( VULKAN_HPP_NAMESPACE::ImageAspectFlagBits planeAspect_ ) VULKAN_HPP_NOEXCEPT
- {
- planeAspect = planeAspect_;
- return *this;
- }
-
-
- operator VkImagePlaneMemoryRequirementsInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkImagePlaneMemoryRequirementsInfo*>( this );
- }
-
- operator VkImagePlaneMemoryRequirementsInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkImagePlaneMemoryRequirementsInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ImagePlaneMemoryRequirementsInfo const& ) const = default;
-#else
- bool operator==( ImagePlaneMemoryRequirementsInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( planeAspect == rhs.planeAspect );
- }
-
- bool operator!=( ImagePlaneMemoryRequirementsInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImagePlaneMemoryRequirementsInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::ImageAspectFlagBits planeAspect = VULKAN_HPP_NAMESPACE::ImageAspectFlagBits::eColor;
-
+ value = true
+ };
};
- static_assert( sizeof( ImagePlaneMemoryRequirementsInfo ) == sizeof( VkImagePlaneMemoryRequirementsInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ImagePlaneMemoryRequirementsInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eImagePlaneMemoryRequirementsInfo>
- {
- using Type = ImagePlaneMemoryRequirementsInfo;
- };
- using ImagePlaneMemoryRequirementsInfoKHR = ImagePlaneMemoryRequirementsInfo;
-
- struct ImageStencilUsageCreateInfo
+ struct StructExtends<PhysicalDeviceShaderAtomicInt64Features, DeviceCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImageStencilUsageCreateInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ImageStencilUsageCreateInfo(VULKAN_HPP_NAMESPACE::ImageUsageFlags stencilUsage_ = {}) VULKAN_HPP_NOEXCEPT
- : stencilUsage( stencilUsage_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ImageStencilUsageCreateInfo( ImageStencilUsageCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ImageStencilUsageCreateInfo( VkImageStencilUsageCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ImageStencilUsageCreateInfo & operator=( VkImageStencilUsageCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageStencilUsageCreateInfo const *>( &rhs );
- return *this;
- }
-
- ImageStencilUsageCreateInfo & operator=( ImageStencilUsageCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ImageStencilUsageCreateInfo ) );
- return *this;
- }
-
- ImageStencilUsageCreateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- ImageStencilUsageCreateInfo & setStencilUsage( VULKAN_HPP_NAMESPACE::ImageUsageFlags stencilUsage_ ) VULKAN_HPP_NOEXCEPT
- {
- stencilUsage = stencilUsage_;
- return *this;
- }
-
-
- operator VkImageStencilUsageCreateInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkImageStencilUsageCreateInfo*>( this );
- }
-
- operator VkImageStencilUsageCreateInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkImageStencilUsageCreateInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ImageStencilUsageCreateInfo const& ) const = default;
-#else
- bool operator==( ImageStencilUsageCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( stencilUsage == rhs.stencilUsage );
- }
-
- bool operator!=( ImageStencilUsageCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageStencilUsageCreateInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::ImageUsageFlags stencilUsage = {};
-
+ value = true
+ };
};
- static_assert( sizeof( ImageStencilUsageCreateInfo ) == sizeof( VkImageStencilUsageCreateInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ImageStencilUsageCreateInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eImageStencilUsageCreateInfo>
- {
- using Type = ImageStencilUsageCreateInfo;
- };
- using ImageStencilUsageCreateInfoEXT = ImageStencilUsageCreateInfo;
-
- struct ImageSwapchainCreateInfoKHR
+ struct StructExtends<PhysicalDeviceShaderClockFeaturesKHR, PhysicalDeviceFeatures2>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImageSwapchainCreateInfoKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ImageSwapchainCreateInfoKHR(VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain_ = {}) VULKAN_HPP_NOEXCEPT
- : swapchain( swapchain_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ImageSwapchainCreateInfoKHR( ImageSwapchainCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ImageSwapchainCreateInfoKHR( VkImageSwapchainCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ImageSwapchainCreateInfoKHR & operator=( VkImageSwapchainCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageSwapchainCreateInfoKHR const *>( &rhs );
- return *this;
- }
-
- ImageSwapchainCreateInfoKHR & operator=( ImageSwapchainCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ImageSwapchainCreateInfoKHR ) );
- return *this;
- }
-
- ImageSwapchainCreateInfoKHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- ImageSwapchainCreateInfoKHR & setSwapchain( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- swapchain = swapchain_;
- return *this;
- }
-
-
- operator VkImageSwapchainCreateInfoKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkImageSwapchainCreateInfoKHR*>( this );
- }
-
- operator VkImageSwapchainCreateInfoKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkImageSwapchainCreateInfoKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ImageSwapchainCreateInfoKHR const& ) const = default;
-#else
- bool operator==( ImageSwapchainCreateInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( swapchain == rhs.swapchain );
- }
-
- bool operator!=( ImageSwapchainCreateInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageSwapchainCreateInfoKHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain = {};
-
+ value = true
+ };
};
- static_assert( sizeof( ImageSwapchainCreateInfoKHR ) == sizeof( VkImageSwapchainCreateInfoKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ImageSwapchainCreateInfoKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eImageSwapchainCreateInfoKHR>
- {
- using Type = ImageSwapchainCreateInfoKHR;
- };
-
- struct ImageViewASTCDecodeModeEXT
+ struct StructExtends<PhysicalDeviceShaderClockFeaturesKHR, DeviceCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImageViewAstcDecodeModeEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ImageViewASTCDecodeModeEXT(VULKAN_HPP_NAMESPACE::Format decodeMode_ = VULKAN_HPP_NAMESPACE::Format::eUndefined) VULKAN_HPP_NOEXCEPT
- : decodeMode( decodeMode_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ImageViewASTCDecodeModeEXT( ImageViewASTCDecodeModeEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ImageViewASTCDecodeModeEXT( VkImageViewASTCDecodeModeEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ImageViewASTCDecodeModeEXT & operator=( VkImageViewASTCDecodeModeEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageViewASTCDecodeModeEXT const *>( &rhs );
- return *this;
- }
-
- ImageViewASTCDecodeModeEXT & operator=( ImageViewASTCDecodeModeEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ImageViewASTCDecodeModeEXT ) );
- return *this;
- }
-
- ImageViewASTCDecodeModeEXT & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- pNext = pNext_;
- return *this;
- }
-
- ImageViewASTCDecodeModeEXT & setDecodeMode( VULKAN_HPP_NAMESPACE::Format decodeMode_ ) VULKAN_HPP_NOEXCEPT
- {
- decodeMode = decodeMode_;
- return *this;
- }
-
-
- operator VkImageViewASTCDecodeModeEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkImageViewASTCDecodeModeEXT*>( this );
- }
-
- operator VkImageViewASTCDecodeModeEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkImageViewASTCDecodeModeEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ImageViewASTCDecodeModeEXT const& ) const = default;
-#else
- bool operator==( ImageViewASTCDecodeModeEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( decodeMode == rhs.decodeMode );
- }
-
- bool operator!=( ImageViewASTCDecodeModeEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageViewAstcDecodeModeEXT;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::Format decodeMode = VULKAN_HPP_NAMESPACE::Format::eUndefined;
-
+ value = true
+ };
};
- static_assert( sizeof( ImageViewASTCDecodeModeEXT ) == sizeof( VkImageViewASTCDecodeModeEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ImageViewASTCDecodeModeEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eImageViewAstcDecodeModeEXT>
- {
- using Type = ImageViewASTCDecodeModeEXT;
- };
-
- struct ImageViewUsageCreateInfo
+ struct StructExtends<PhysicalDeviceShaderCoreProperties2AMD, PhysicalDeviceProperties2>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImageViewUsageCreateInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ImageViewUsageCreateInfo(VULKAN_HPP_NAMESPACE::ImageUsageFlags usage_ = {}) VULKAN_HPP_NOEXCEPT
- : usage( usage_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ImageViewUsageCreateInfo( ImageViewUsageCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ImageViewUsageCreateInfo( VkImageViewUsageCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ImageViewUsageCreateInfo & operator=( VkImageViewUsageCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageViewUsageCreateInfo const *>( &rhs );
- return *this;
- }
-
- ImageViewUsageCreateInfo & operator=( ImageViewUsageCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ImageViewUsageCreateInfo ) );
- return *this;
- }
-
- ImageViewUsageCreateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- ImageViewUsageCreateInfo & setUsage( VULKAN_HPP_NAMESPACE::ImageUsageFlags usage_ ) VULKAN_HPP_NOEXCEPT
- {
- usage = usage_;
- return *this;
- }
-
-
- operator VkImageViewUsageCreateInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkImageViewUsageCreateInfo*>( this );
- }
-
- operator VkImageViewUsageCreateInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkImageViewUsageCreateInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ImageViewUsageCreateInfo const& ) const = default;
-#else
- bool operator==( ImageViewUsageCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( usage == rhs.usage );
- }
-
- bool operator!=( ImageViewUsageCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageViewUsageCreateInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::ImageUsageFlags usage = {};
-
+ value = true
+ };
};
- static_assert( sizeof( ImageViewUsageCreateInfo ) == sizeof( VkImageViewUsageCreateInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ImageViewUsageCreateInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eImageViewUsageCreateInfo>
+ struct StructExtends<PhysicalDeviceShaderCorePropertiesAMD, PhysicalDeviceProperties2>
{
- using Type = ImageViewUsageCreateInfo;
- };
- using ImageViewUsageCreateInfoKHR = ImageViewUsageCreateInfo;
-
-#ifdef VK_USE_PLATFORM_ANDROID_KHR
- struct ImportAndroidHardwareBufferInfoANDROID
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImportAndroidHardwareBufferInfoANDROID;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ImportAndroidHardwareBufferInfoANDROID(struct AHardwareBuffer* buffer_ = {}) VULKAN_HPP_NOEXCEPT
- : buffer( buffer_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ImportAndroidHardwareBufferInfoANDROID( ImportAndroidHardwareBufferInfoANDROID const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ImportAndroidHardwareBufferInfoANDROID( VkImportAndroidHardwareBufferInfoANDROID const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ImportAndroidHardwareBufferInfoANDROID & operator=( VkImportAndroidHardwareBufferInfoANDROID const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImportAndroidHardwareBufferInfoANDROID const *>( &rhs );
- return *this;
- }
-
- ImportAndroidHardwareBufferInfoANDROID & operator=( ImportAndroidHardwareBufferInfoANDROID const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ImportAndroidHardwareBufferInfoANDROID ) );
- return *this;
- }
-
- ImportAndroidHardwareBufferInfoANDROID & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- ImportAndroidHardwareBufferInfoANDROID & setBuffer( struct AHardwareBuffer* buffer_ ) VULKAN_HPP_NOEXCEPT
- {
- buffer = buffer_;
- return *this;
- }
-
-
- operator VkImportAndroidHardwareBufferInfoANDROID const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkImportAndroidHardwareBufferInfoANDROID*>( this );
- }
-
- operator VkImportAndroidHardwareBufferInfoANDROID &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkImportAndroidHardwareBufferInfoANDROID*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ImportAndroidHardwareBufferInfoANDROID const& ) const = default;
-#else
- bool operator==( ImportAndroidHardwareBufferInfoANDROID const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( buffer == rhs.buffer );
- }
-
- bool operator!=( ImportAndroidHardwareBufferInfoANDROID const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImportAndroidHardwareBufferInfoANDROID;
- const void* pNext = {};
- struct AHardwareBuffer* buffer = {};
-
+ value = true
+ };
};
- static_assert( sizeof( ImportAndroidHardwareBufferInfoANDROID ) == sizeof( VkImportAndroidHardwareBufferInfoANDROID ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ImportAndroidHardwareBufferInfoANDROID>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eImportAndroidHardwareBufferInfoANDROID>
- {
- using Type = ImportAndroidHardwareBufferInfoANDROID;
- };
-#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
-
- struct ImportMemoryFdInfoKHR
+ struct StructExtends<PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT, PhysicalDeviceFeatures2>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImportMemoryFdInfoKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ImportMemoryFdInfoKHR(VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType_ = VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits::eOpaqueFd, int fd_ = {}) VULKAN_HPP_NOEXCEPT
- : handleType( handleType_ ), fd( fd_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ImportMemoryFdInfoKHR( ImportMemoryFdInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ImportMemoryFdInfoKHR( VkImportMemoryFdInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ImportMemoryFdInfoKHR & operator=( VkImportMemoryFdInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImportMemoryFdInfoKHR const *>( &rhs );
- return *this;
- }
-
- ImportMemoryFdInfoKHR & operator=( ImportMemoryFdInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ImportMemoryFdInfoKHR ) );
- return *this;
- }
-
- ImportMemoryFdInfoKHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- ImportMemoryFdInfoKHR & setHandleType( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType_ ) VULKAN_HPP_NOEXCEPT
- {
- handleType = handleType_;
- return *this;
- }
-
- ImportMemoryFdInfoKHR & setFd( int fd_ ) VULKAN_HPP_NOEXCEPT
- {
- fd = fd_;
- return *this;
- }
-
-
- operator VkImportMemoryFdInfoKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkImportMemoryFdInfoKHR*>( this );
- }
-
- operator VkImportMemoryFdInfoKHR &() VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<VkImportMemoryFdInfoKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ImportMemoryFdInfoKHR const& ) const = default;
-#else
- bool operator==( ImportMemoryFdInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( handleType == rhs.handleType )
- && ( fd == rhs.fd );
- }
-
- bool operator!=( ImportMemoryFdInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImportMemoryFdInfoKHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType = VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits::eOpaqueFd;
- int fd = {};
-
+ value = true
+ };
};
- static_assert( sizeof( ImportMemoryFdInfoKHR ) == sizeof( VkImportMemoryFdInfoKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ImportMemoryFdInfoKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eImportMemoryFdInfoKHR>
- {
- using Type = ImportMemoryFdInfoKHR;
- };
-
- struct ImportMemoryHostPointerInfoEXT
+ struct StructExtends<PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT, DeviceCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImportMemoryHostPointerInfoEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ImportMemoryHostPointerInfoEXT(VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType_ = VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits::eOpaqueFd, void* pHostPointer_ = {}) VULKAN_HPP_NOEXCEPT
- : handleType( handleType_ ), pHostPointer( pHostPointer_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ImportMemoryHostPointerInfoEXT( ImportMemoryHostPointerInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ImportMemoryHostPointerInfoEXT( VkImportMemoryHostPointerInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ImportMemoryHostPointerInfoEXT & operator=( VkImportMemoryHostPointerInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImportMemoryHostPointerInfoEXT const *>( &rhs );
- return *this;
- }
-
- ImportMemoryHostPointerInfoEXT & operator=( ImportMemoryHostPointerInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ImportMemoryHostPointerInfoEXT ) );
- return *this;
- }
-
- ImportMemoryHostPointerInfoEXT & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- ImportMemoryHostPointerInfoEXT & setHandleType( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType_ ) VULKAN_HPP_NOEXCEPT
- {
- handleType = handleType_;
- return *this;
- }
-
- ImportMemoryHostPointerInfoEXT & setPHostPointer( void* pHostPointer_ ) VULKAN_HPP_NOEXCEPT
- {
- pHostPointer = pHostPointer_;
- return *this;
- }
-
-
- operator VkImportMemoryHostPointerInfoEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkImportMemoryHostPointerInfoEXT*>( this );
- }
-
- operator VkImportMemoryHostPointerInfoEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkImportMemoryHostPointerInfoEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ImportMemoryHostPointerInfoEXT const& ) const = default;
-#else
- bool operator==( ImportMemoryHostPointerInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( handleType == rhs.handleType )
- && ( pHostPointer == rhs.pHostPointer );
- }
-
- bool operator!=( ImportMemoryHostPointerInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImportMemoryHostPointerInfoEXT;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType = VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits::eOpaqueFd;
- void* pHostPointer = {};
-
+ value = true
+ };
};
- static_assert( sizeof( ImportMemoryHostPointerInfoEXT ) == sizeof( VkImportMemoryHostPointerInfoEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ImportMemoryHostPointerInfoEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eImportMemoryHostPointerInfoEXT>
+ struct StructExtends<PhysicalDeviceShaderDrawParametersFeatures, PhysicalDeviceFeatures2>
{
- using Type = ImportMemoryHostPointerInfoEXT;
- };
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- struct ImportMemoryWin32HandleInfoKHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImportMemoryWin32HandleInfoKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ImportMemoryWin32HandleInfoKHR(VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType_ = VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits::eOpaqueFd, HANDLE handle_ = {}, LPCWSTR name_ = {}) VULKAN_HPP_NOEXCEPT
- : handleType( handleType_ ), handle( handle_ ), name( name_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ImportMemoryWin32HandleInfoKHR( ImportMemoryWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ImportMemoryWin32HandleInfoKHR( VkImportMemoryWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ImportMemoryWin32HandleInfoKHR & operator=( VkImportMemoryWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImportMemoryWin32HandleInfoKHR const *>( &rhs );
- return *this;
- }
-
- ImportMemoryWin32HandleInfoKHR & operator=( ImportMemoryWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ImportMemoryWin32HandleInfoKHR ) );
- return *this;
- }
-
- ImportMemoryWin32HandleInfoKHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- ImportMemoryWin32HandleInfoKHR & setHandleType( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType_ ) VULKAN_HPP_NOEXCEPT
- {
- handleType = handleType_;
- return *this;
- }
-
- ImportMemoryWin32HandleInfoKHR & setHandle( HANDLE handle_ ) VULKAN_HPP_NOEXCEPT
- {
- handle = handle_;
- return *this;
- }
-
- ImportMemoryWin32HandleInfoKHR & setName( LPCWSTR name_ ) VULKAN_HPP_NOEXCEPT
- {
- name = name_;
- return *this;
- }
-
-
- operator VkImportMemoryWin32HandleInfoKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkImportMemoryWin32HandleInfoKHR*>( this );
- }
-
- operator VkImportMemoryWin32HandleInfoKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkImportMemoryWin32HandleInfoKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ImportMemoryWin32HandleInfoKHR const& ) const = default;
-#else
- bool operator==( ImportMemoryWin32HandleInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( handleType == rhs.handleType )
- && ( handle == rhs.handle )
- && ( name == rhs.name );
- }
-
- bool operator!=( ImportMemoryWin32HandleInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImportMemoryWin32HandleInfoKHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType = VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits::eOpaqueFd;
- HANDLE handle = {};
- LPCWSTR name = {};
-
+ value = true
+ };
};
- static_assert( sizeof( ImportMemoryWin32HandleInfoKHR ) == sizeof( VkImportMemoryWin32HandleInfoKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ImportMemoryWin32HandleInfoKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eImportMemoryWin32HandleInfoKHR>
+ struct StructExtends<PhysicalDeviceShaderDrawParametersFeatures, DeviceCreateInfo>
{
- using Type = ImportMemoryWin32HandleInfoKHR;
- };
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- struct ImportMemoryWin32HandleInfoNV
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImportMemoryWin32HandleInfoNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ImportMemoryWin32HandleInfoNV(VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV handleType_ = {}, HANDLE handle_ = {}) VULKAN_HPP_NOEXCEPT
- : handleType( handleType_ ), handle( handle_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ImportMemoryWin32HandleInfoNV( ImportMemoryWin32HandleInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ImportMemoryWin32HandleInfoNV( VkImportMemoryWin32HandleInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ImportMemoryWin32HandleInfoNV & operator=( VkImportMemoryWin32HandleInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImportMemoryWin32HandleInfoNV const *>( &rhs );
- return *this;
- }
-
- ImportMemoryWin32HandleInfoNV & operator=( ImportMemoryWin32HandleInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ImportMemoryWin32HandleInfoNV ) );
- return *this;
- }
-
- ImportMemoryWin32HandleInfoNV & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- ImportMemoryWin32HandleInfoNV & setHandleType( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV handleType_ ) VULKAN_HPP_NOEXCEPT
- {
- handleType = handleType_;
- return *this;
- }
-
- ImportMemoryWin32HandleInfoNV & setHandle( HANDLE handle_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- handle = handle_;
- return *this;
- }
-
-
- operator VkImportMemoryWin32HandleInfoNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkImportMemoryWin32HandleInfoNV*>( this );
- }
-
- operator VkImportMemoryWin32HandleInfoNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkImportMemoryWin32HandleInfoNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ImportMemoryWin32HandleInfoNV const& ) const = default;
-#else
- bool operator==( ImportMemoryWin32HandleInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( handleType == rhs.handleType )
- && ( handle == rhs.handle );
- }
-
- bool operator!=( ImportMemoryWin32HandleInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImportMemoryWin32HandleInfoNV;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV handleType = {};
- HANDLE handle = {};
-
+ value = true
+ };
};
- static_assert( sizeof( ImportMemoryWin32HandleInfoNV ) == sizeof( VkImportMemoryWin32HandleInfoNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ImportMemoryWin32HandleInfoNV>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eImportMemoryWin32HandleInfoNV>
+ struct StructExtends<PhysicalDeviceShaderFloat16Int8Features, PhysicalDeviceFeatures2>
{
- using Type = ImportMemoryWin32HandleInfoNV;
- };
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-
- struct InputAttachmentAspectReference
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR InputAttachmentAspectReference(uint32_t subpass_ = {}, uint32_t inputAttachmentIndex_ = {}, VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask_ = {}) VULKAN_HPP_NOEXCEPT
- : subpass( subpass_ ), inputAttachmentIndex( inputAttachmentIndex_ ), aspectMask( aspectMask_ )
- {}
-
- VULKAN_HPP_CONSTEXPR InputAttachmentAspectReference( InputAttachmentAspectReference const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- InputAttachmentAspectReference( VkInputAttachmentAspectReference const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- InputAttachmentAspectReference & operator=( VkInputAttachmentAspectReference const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::InputAttachmentAspectReference const *>( &rhs );
- return *this;
- }
-
- InputAttachmentAspectReference & operator=( InputAttachmentAspectReference const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( InputAttachmentAspectReference ) );
- return *this;
- }
-
- InputAttachmentAspectReference & setSubpass( uint32_t subpass_ ) VULKAN_HPP_NOEXCEPT
- {
- subpass = subpass_;
- return *this;
- }
-
- InputAttachmentAspectReference & setInputAttachmentIndex( uint32_t inputAttachmentIndex_ ) VULKAN_HPP_NOEXCEPT
- {
- inputAttachmentIndex = inputAttachmentIndex_;
- return *this;
- }
-
- InputAttachmentAspectReference & setAspectMask( VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask_ ) VULKAN_HPP_NOEXCEPT
- {
- aspectMask = aspectMask_;
- return *this;
- }
-
-
- operator VkInputAttachmentAspectReference const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkInputAttachmentAspectReference*>( this );
- }
-
- operator VkInputAttachmentAspectReference &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkInputAttachmentAspectReference*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( InputAttachmentAspectReference const& ) const = default;
-#else
- bool operator==( InputAttachmentAspectReference const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( subpass == rhs.subpass )
- && ( inputAttachmentIndex == rhs.inputAttachmentIndex )
- && ( aspectMask == rhs.aspectMask );
- }
-
- bool operator!=( InputAttachmentAspectReference const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- uint32_t subpass = {};
- uint32_t inputAttachmentIndex = {};
- VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask = {};
-
- };
- static_assert( sizeof( InputAttachmentAspectReference ) == sizeof( VkInputAttachmentAspectReference ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<InputAttachmentAspectReference>::value, "struct wrapper is not a standard layout!" );
- using InputAttachmentAspectReferenceKHR = InputAttachmentAspectReference;
-
- struct InstanceCreateInfo
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eInstanceCreateInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR InstanceCreateInfo(VULKAN_HPP_NAMESPACE::InstanceCreateFlags flags_ = {}, const VULKAN_HPP_NAMESPACE::ApplicationInfo* pApplicationInfo_ = {}, uint32_t enabledLayerCount_ = {}, const char* const * ppEnabledLayerNames_ = {}, uint32_t enabledExtensionCount_ = {}, const char* const * ppEnabledExtensionNames_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), pApplicationInfo( pApplicationInfo_ ), enabledLayerCount( enabledLayerCount_ ), ppEnabledLayerNames( ppEnabledLayerNames_ ), enabledExtensionCount( enabledExtensionCount_ ), ppEnabledExtensionNames( ppEnabledExtensionNames_ )
- {}
-
- VULKAN_HPP_CONSTEXPR InstanceCreateInfo( InstanceCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- InstanceCreateInfo( VkInstanceCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- InstanceCreateInfo( VULKAN_HPP_NAMESPACE::InstanceCreateFlags flags_, const VULKAN_HPP_NAMESPACE::ApplicationInfo* pApplicationInfo_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const char* const > const & pEnabledLayerNames_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const char* const > const & pEnabledExtensionNames_ = {} )
- : flags( flags_ ), pApplicationInfo( pApplicationInfo_ ), enabledLayerCount( static_cast<uint32_t>( pEnabledLayerNames_.size() ) ), ppEnabledLayerNames( pEnabledLayerNames_.data() ), enabledExtensionCount( static_cast<uint32_t>( pEnabledExtensionNames_.size() ) ), ppEnabledExtensionNames( pEnabledExtensionNames_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- InstanceCreateInfo & operator=( VkInstanceCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::InstanceCreateInfo const *>( &rhs );
- return *this;
- }
-
- InstanceCreateInfo & operator=( InstanceCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( InstanceCreateInfo ) );
- return *this;
- }
-
- InstanceCreateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- InstanceCreateInfo & setFlags( VULKAN_HPP_NAMESPACE::InstanceCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- InstanceCreateInfo & setPApplicationInfo( const VULKAN_HPP_NAMESPACE::ApplicationInfo* pApplicationInfo_ ) VULKAN_HPP_NOEXCEPT
- {
- pApplicationInfo = pApplicationInfo_;
- return *this;
- }
-
- InstanceCreateInfo & setEnabledLayerCount( uint32_t enabledLayerCount_ ) VULKAN_HPP_NOEXCEPT
- {
- enabledLayerCount = enabledLayerCount_;
- return *this;
- }
-
- InstanceCreateInfo & setPpEnabledLayerNames( const char* const * ppEnabledLayerNames_ ) VULKAN_HPP_NOEXCEPT
- {
- ppEnabledLayerNames = ppEnabledLayerNames_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- InstanceCreateInfo & setPEnabledLayerNames( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const char* const > const & pEnabledLayerNames_ ) VULKAN_HPP_NOEXCEPT
- {
- enabledLayerCount = static_cast<uint32_t>( pEnabledLayerNames_.size() );
- ppEnabledLayerNames = pEnabledLayerNames_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- InstanceCreateInfo & setEnabledExtensionCount( uint32_t enabledExtensionCount_ ) VULKAN_HPP_NOEXCEPT
- {
- enabledExtensionCount = enabledExtensionCount_;
- return *this;
- }
-
- InstanceCreateInfo & setPpEnabledExtensionNames( const char* const * ppEnabledExtensionNames_ ) VULKAN_HPP_NOEXCEPT
- {
- ppEnabledExtensionNames = ppEnabledExtensionNames_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- InstanceCreateInfo & setPEnabledExtensionNames( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const char* const > const & pEnabledExtensionNames_ ) VULKAN_HPP_NOEXCEPT
- {
- enabledExtensionCount = static_cast<uint32_t>( pEnabledExtensionNames_.size() );
- ppEnabledExtensionNames = pEnabledExtensionNames_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkInstanceCreateInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkInstanceCreateInfo*>( this );
- }
-
- operator VkInstanceCreateInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkInstanceCreateInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( InstanceCreateInfo const& ) const = default;
-#else
- bool operator==( InstanceCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( pApplicationInfo == rhs.pApplicationInfo )
- && ( enabledLayerCount == rhs.enabledLayerCount )
- && ( ppEnabledLayerNames == rhs.ppEnabledLayerNames )
- && ( enabledExtensionCount == rhs.enabledExtensionCount )
- && ( ppEnabledExtensionNames == rhs.ppEnabledExtensionNames );
- }
-
- bool operator!=( InstanceCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eInstanceCreateInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::InstanceCreateFlags flags = {};
- const VULKAN_HPP_NAMESPACE::ApplicationInfo* pApplicationInfo = {};
- uint32_t enabledLayerCount = {};
- const char* const * ppEnabledLayerNames = {};
- uint32_t enabledExtensionCount = {};
- const char* const * ppEnabledExtensionNames = {};
-
+ value = true
+ };
};
- static_assert( sizeof( InstanceCreateInfo ) == sizeof( VkInstanceCreateInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<InstanceCreateInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eInstanceCreateInfo>
+ struct StructExtends<PhysicalDeviceShaderFloat16Int8Features, DeviceCreateInfo>
{
- using Type = InstanceCreateInfo;
- };
-
-#ifdef VK_USE_PLATFORM_MACOS_MVK
- struct MacOSSurfaceCreateInfoMVK
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMacosSurfaceCreateInfoMVK;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR MacOSSurfaceCreateInfoMVK(VULKAN_HPP_NAMESPACE::MacOSSurfaceCreateFlagsMVK flags_ = {}, const void* pView_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), pView( pView_ )
- {}
-
- VULKAN_HPP_CONSTEXPR MacOSSurfaceCreateInfoMVK( MacOSSurfaceCreateInfoMVK const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- MacOSSurfaceCreateInfoMVK( VkMacOSSurfaceCreateInfoMVK const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- MacOSSurfaceCreateInfoMVK & operator=( VkMacOSSurfaceCreateInfoMVK const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MacOSSurfaceCreateInfoMVK const *>( &rhs );
- return *this;
- }
-
- MacOSSurfaceCreateInfoMVK & operator=( MacOSSurfaceCreateInfoMVK const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( MacOSSurfaceCreateInfoMVK ) );
- return *this;
- }
-
- MacOSSurfaceCreateInfoMVK & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- MacOSSurfaceCreateInfoMVK & setFlags( VULKAN_HPP_NAMESPACE::MacOSSurfaceCreateFlagsMVK flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- MacOSSurfaceCreateInfoMVK & setPView( const void* pView_ ) VULKAN_HPP_NOEXCEPT
- {
- pView = pView_;
- return *this;
- }
-
-
- operator VkMacOSSurfaceCreateInfoMVK const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkMacOSSurfaceCreateInfoMVK*>( this );
- }
-
- operator VkMacOSSurfaceCreateInfoMVK &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkMacOSSurfaceCreateInfoMVK*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( MacOSSurfaceCreateInfoMVK const& ) const = default;
-#else
- bool operator==( MacOSSurfaceCreateInfoMVK const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( pView == rhs.pView );
- }
-
- bool operator!=( MacOSSurfaceCreateInfoMVK const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMacosSurfaceCreateInfoMVK;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::MacOSSurfaceCreateFlagsMVK flags = {};
- const void* pView = {};
-
+ value = true
+ };
};
- static_assert( sizeof( MacOSSurfaceCreateInfoMVK ) == sizeof( VkMacOSSurfaceCreateInfoMVK ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<MacOSSurfaceCreateInfoMVK>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eMacosSurfaceCreateInfoMVK>
- {
- using Type = MacOSSurfaceCreateInfoMVK;
- };
-#endif /*VK_USE_PLATFORM_MACOS_MVK*/
-
- struct MemoryAllocateFlagsInfo
+ struct StructExtends<PhysicalDeviceShaderImageAtomicInt64FeaturesEXT, PhysicalDeviceFeatures2>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMemoryAllocateFlagsInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR MemoryAllocateFlagsInfo(VULKAN_HPP_NAMESPACE::MemoryAllocateFlags flags_ = {}, uint32_t deviceMask_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), deviceMask( deviceMask_ )
- {}
-
- VULKAN_HPP_CONSTEXPR MemoryAllocateFlagsInfo( MemoryAllocateFlagsInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- MemoryAllocateFlagsInfo( VkMemoryAllocateFlagsInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- MemoryAllocateFlagsInfo & operator=( VkMemoryAllocateFlagsInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MemoryAllocateFlagsInfo const *>( &rhs );
- return *this;
- }
-
- MemoryAllocateFlagsInfo & operator=( MemoryAllocateFlagsInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( MemoryAllocateFlagsInfo ) );
- return *this;
- }
-
- MemoryAllocateFlagsInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- MemoryAllocateFlagsInfo & setFlags( VULKAN_HPP_NAMESPACE::MemoryAllocateFlags flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- MemoryAllocateFlagsInfo & setDeviceMask( uint32_t deviceMask_ ) VULKAN_HPP_NOEXCEPT
- {
- deviceMask = deviceMask_;
- return *this;
- }
-
-
- operator VkMemoryAllocateFlagsInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkMemoryAllocateFlagsInfo*>( this );
- }
-
- operator VkMemoryAllocateFlagsInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkMemoryAllocateFlagsInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( MemoryAllocateFlagsInfo const& ) const = default;
-#else
- bool operator==( MemoryAllocateFlagsInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( deviceMask == rhs.deviceMask );
- }
-
- bool operator!=( MemoryAllocateFlagsInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMemoryAllocateFlagsInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::MemoryAllocateFlags flags = {};
- uint32_t deviceMask = {};
-
+ value = true
+ };
};
- static_assert( sizeof( MemoryAllocateFlagsInfo ) == sizeof( VkMemoryAllocateFlagsInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<MemoryAllocateFlagsInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eMemoryAllocateFlagsInfo>
- {
- using Type = MemoryAllocateFlagsInfo;
- };
- using MemoryAllocateFlagsInfoKHR = MemoryAllocateFlagsInfo;
-
- struct MemoryDedicatedAllocateInfo
+ struct StructExtends<PhysicalDeviceShaderImageAtomicInt64FeaturesEXT, DeviceCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMemoryDedicatedAllocateInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR MemoryDedicatedAllocateInfo(VULKAN_HPP_NAMESPACE::Image image_ = {}, VULKAN_HPP_NAMESPACE::Buffer buffer_ = {}) VULKAN_HPP_NOEXCEPT
- : image( image_ ), buffer( buffer_ )
- {}
-
- VULKAN_HPP_CONSTEXPR MemoryDedicatedAllocateInfo( MemoryDedicatedAllocateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- MemoryDedicatedAllocateInfo( VkMemoryDedicatedAllocateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- MemoryDedicatedAllocateInfo & operator=( VkMemoryDedicatedAllocateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MemoryDedicatedAllocateInfo const *>( &rhs );
- return *this;
- }
-
- MemoryDedicatedAllocateInfo & operator=( MemoryDedicatedAllocateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( MemoryDedicatedAllocateInfo ) );
- return *this;
- }
-
- MemoryDedicatedAllocateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- pNext = pNext_;
- return *this;
- }
-
- MemoryDedicatedAllocateInfo & setImage( VULKAN_HPP_NAMESPACE::Image image_ ) VULKAN_HPP_NOEXCEPT
- {
- image = image_;
- return *this;
- }
-
- MemoryDedicatedAllocateInfo & setBuffer( VULKAN_HPP_NAMESPACE::Buffer buffer_ ) VULKAN_HPP_NOEXCEPT
- {
- buffer = buffer_;
- return *this;
- }
-
-
- operator VkMemoryDedicatedAllocateInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkMemoryDedicatedAllocateInfo*>( this );
- }
-
- operator VkMemoryDedicatedAllocateInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkMemoryDedicatedAllocateInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( MemoryDedicatedAllocateInfo const& ) const = default;
-#else
- bool operator==( MemoryDedicatedAllocateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( image == rhs.image )
- && ( buffer == rhs.buffer );
- }
-
- bool operator!=( MemoryDedicatedAllocateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMemoryDedicatedAllocateInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::Image image = {};
- VULKAN_HPP_NAMESPACE::Buffer buffer = {};
-
+ value = true
+ };
};
- static_assert( sizeof( MemoryDedicatedAllocateInfo ) == sizeof( VkMemoryDedicatedAllocateInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<MemoryDedicatedAllocateInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eMemoryDedicatedAllocateInfo>
+ struct StructExtends<PhysicalDeviceShaderImageFootprintFeaturesNV, PhysicalDeviceFeatures2>
{
- using Type = MemoryDedicatedAllocateInfo;
- };
- using MemoryDedicatedAllocateInfoKHR = MemoryDedicatedAllocateInfo;
-
- struct MemoryDedicatedRequirements
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMemoryDedicatedRequirements;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR MemoryDedicatedRequirements(VULKAN_HPP_NAMESPACE::Bool32 prefersDedicatedAllocation_ = {}, VULKAN_HPP_NAMESPACE::Bool32 requiresDedicatedAllocation_ = {}) VULKAN_HPP_NOEXCEPT
- : prefersDedicatedAllocation( prefersDedicatedAllocation_ ), requiresDedicatedAllocation( requiresDedicatedAllocation_ )
- {}
-
- VULKAN_HPP_CONSTEXPR MemoryDedicatedRequirements( MemoryDedicatedRequirements const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- MemoryDedicatedRequirements( VkMemoryDedicatedRequirements const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- MemoryDedicatedRequirements & operator=( VkMemoryDedicatedRequirements const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MemoryDedicatedRequirements const *>( &rhs );
- return *this;
- }
-
- MemoryDedicatedRequirements & operator=( MemoryDedicatedRequirements const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( MemoryDedicatedRequirements ) );
- return *this;
- }
-
-
- operator VkMemoryDedicatedRequirements const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkMemoryDedicatedRequirements*>( this );
- }
-
- operator VkMemoryDedicatedRequirements &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkMemoryDedicatedRequirements*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( MemoryDedicatedRequirements const& ) const = default;
-#else
- bool operator==( MemoryDedicatedRequirements const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( prefersDedicatedAllocation == rhs.prefersDedicatedAllocation )
- && ( requiresDedicatedAllocation == rhs.requiresDedicatedAllocation );
- }
-
- bool operator!=( MemoryDedicatedRequirements const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMemoryDedicatedRequirements;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 prefersDedicatedAllocation = {};
- VULKAN_HPP_NAMESPACE::Bool32 requiresDedicatedAllocation = {};
-
+ value = true
+ };
};
- static_assert( sizeof( MemoryDedicatedRequirements ) == sizeof( VkMemoryDedicatedRequirements ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<MemoryDedicatedRequirements>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eMemoryDedicatedRequirements>
- {
- using Type = MemoryDedicatedRequirements;
- };
- using MemoryDedicatedRequirementsKHR = MemoryDedicatedRequirements;
-
- struct MemoryOpaqueCaptureAddressAllocateInfo
+ struct StructExtends<PhysicalDeviceShaderImageFootprintFeaturesNV, DeviceCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMemoryOpaqueCaptureAddressAllocateInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR MemoryOpaqueCaptureAddressAllocateInfo(uint64_t opaqueCaptureAddress_ = {}) VULKAN_HPP_NOEXCEPT
- : opaqueCaptureAddress( opaqueCaptureAddress_ )
- {}
-
- VULKAN_HPP_CONSTEXPR MemoryOpaqueCaptureAddressAllocateInfo( MemoryOpaqueCaptureAddressAllocateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- MemoryOpaqueCaptureAddressAllocateInfo( VkMemoryOpaqueCaptureAddressAllocateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- MemoryOpaqueCaptureAddressAllocateInfo & operator=( VkMemoryOpaqueCaptureAddressAllocateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MemoryOpaqueCaptureAddressAllocateInfo const *>( &rhs );
- return *this;
- }
-
- MemoryOpaqueCaptureAddressAllocateInfo & operator=( MemoryOpaqueCaptureAddressAllocateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( MemoryOpaqueCaptureAddressAllocateInfo ) );
- return *this;
- }
-
- MemoryOpaqueCaptureAddressAllocateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- MemoryOpaqueCaptureAddressAllocateInfo & setOpaqueCaptureAddress( uint64_t opaqueCaptureAddress_ ) VULKAN_HPP_NOEXCEPT
- {
- opaqueCaptureAddress = opaqueCaptureAddress_;
- return *this;
- }
-
-
- operator VkMemoryOpaqueCaptureAddressAllocateInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkMemoryOpaqueCaptureAddressAllocateInfo*>( this );
- }
-
- operator VkMemoryOpaqueCaptureAddressAllocateInfo &() VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<VkMemoryOpaqueCaptureAddressAllocateInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( MemoryOpaqueCaptureAddressAllocateInfo const& ) const = default;
-#else
- bool operator==( MemoryOpaqueCaptureAddressAllocateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( opaqueCaptureAddress == rhs.opaqueCaptureAddress );
- }
-
- bool operator!=( MemoryOpaqueCaptureAddressAllocateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMemoryOpaqueCaptureAddressAllocateInfo;
- const void* pNext = {};
- uint64_t opaqueCaptureAddress = {};
-
+ value = true
+ };
};
- static_assert( sizeof( MemoryOpaqueCaptureAddressAllocateInfo ) == sizeof( VkMemoryOpaqueCaptureAddressAllocateInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<MemoryOpaqueCaptureAddressAllocateInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eMemoryOpaqueCaptureAddressAllocateInfo>
+ struct StructExtends<PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL, PhysicalDeviceFeatures2>
{
- using Type = MemoryOpaqueCaptureAddressAllocateInfo;
- };
- using MemoryOpaqueCaptureAddressAllocateInfoKHR = MemoryOpaqueCaptureAddressAllocateInfo;
-
- struct MemoryPriorityAllocateInfoEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMemoryPriorityAllocateInfoEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR MemoryPriorityAllocateInfoEXT(float priority_ = {}) VULKAN_HPP_NOEXCEPT
- : priority( priority_ )
- {}
-
- VULKAN_HPP_CONSTEXPR MemoryPriorityAllocateInfoEXT( MemoryPriorityAllocateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- MemoryPriorityAllocateInfoEXT( VkMemoryPriorityAllocateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- MemoryPriorityAllocateInfoEXT & operator=( VkMemoryPriorityAllocateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MemoryPriorityAllocateInfoEXT const *>( &rhs );
- return *this;
- }
-
- MemoryPriorityAllocateInfoEXT & operator=( MemoryPriorityAllocateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( MemoryPriorityAllocateInfoEXT ) );
- return *this;
- }
-
- MemoryPriorityAllocateInfoEXT & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- MemoryPriorityAllocateInfoEXT & setPriority( float priority_ ) VULKAN_HPP_NOEXCEPT
- {
- priority = priority_;
- return *this;
- }
-
-
- operator VkMemoryPriorityAllocateInfoEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkMemoryPriorityAllocateInfoEXT*>( this );
- }
-
- operator VkMemoryPriorityAllocateInfoEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkMemoryPriorityAllocateInfoEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( MemoryPriorityAllocateInfoEXT const& ) const = default;
-#else
- bool operator==( MemoryPriorityAllocateInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( priority == rhs.priority );
- }
-
- bool operator!=( MemoryPriorityAllocateInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMemoryPriorityAllocateInfoEXT;
- const void* pNext = {};
- float priority = {};
-
+ value = true
+ };
};
- static_assert( sizeof( MemoryPriorityAllocateInfoEXT ) == sizeof( VkMemoryPriorityAllocateInfoEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<MemoryPriorityAllocateInfoEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eMemoryPriorityAllocateInfoEXT>
+ struct StructExtends<PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL, DeviceCreateInfo>
{
- using Type = MemoryPriorityAllocateInfoEXT;
- };
-
-#ifdef VK_USE_PLATFORM_METAL_EXT
- struct MetalSurfaceCreateInfoEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMetalSurfaceCreateInfoEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR MetalSurfaceCreateInfoEXT(VULKAN_HPP_NAMESPACE::MetalSurfaceCreateFlagsEXT flags_ = {}, const CAMetalLayer* pLayer_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), pLayer( pLayer_ )
- {}
-
- VULKAN_HPP_CONSTEXPR MetalSurfaceCreateInfoEXT( MetalSurfaceCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- MetalSurfaceCreateInfoEXT( VkMetalSurfaceCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- MetalSurfaceCreateInfoEXT & operator=( VkMetalSurfaceCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MetalSurfaceCreateInfoEXT const *>( &rhs );
- return *this;
- }
-
- MetalSurfaceCreateInfoEXT & operator=( MetalSurfaceCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( MetalSurfaceCreateInfoEXT ) );
- return *this;
- }
-
- MetalSurfaceCreateInfoEXT & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- MetalSurfaceCreateInfoEXT & setFlags( VULKAN_HPP_NAMESPACE::MetalSurfaceCreateFlagsEXT flags_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- flags = flags_;
- return *this;
- }
-
- MetalSurfaceCreateInfoEXT & setPLayer( const CAMetalLayer* pLayer_ ) VULKAN_HPP_NOEXCEPT
- {
- pLayer = pLayer_;
- return *this;
- }
-
-
- operator VkMetalSurfaceCreateInfoEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkMetalSurfaceCreateInfoEXT*>( this );
- }
-
- operator VkMetalSurfaceCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkMetalSurfaceCreateInfoEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( MetalSurfaceCreateInfoEXT const& ) const = default;
-#else
- bool operator==( MetalSurfaceCreateInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( pLayer == rhs.pLayer );
- }
-
- bool operator!=( MetalSurfaceCreateInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMetalSurfaceCreateInfoEXT;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::MetalSurfaceCreateFlagsEXT flags = {};
- const CAMetalLayer* pLayer = {};
-
+ value = true
+ };
};
- static_assert( sizeof( MetalSurfaceCreateInfoEXT ) == sizeof( VkMetalSurfaceCreateInfoEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<MetalSurfaceCreateInfoEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eMetalSurfaceCreateInfoEXT>
- {
- using Type = MetalSurfaceCreateInfoEXT;
- };
-#endif /*VK_USE_PLATFORM_METAL_EXT*/
-
- union PerformanceCounterResultKHR
- {
- PerformanceCounterResultKHR( VULKAN_HPP_NAMESPACE::PerformanceCounterResultKHR const& rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void*>(this), &rhs, sizeof( VULKAN_HPP_NAMESPACE::PerformanceCounterResultKHR ) );
- }
-
- PerformanceCounterResultKHR( int32_t int32_ = {} )
- : int32( int32_ )
- {}
-
- PerformanceCounterResultKHR( int64_t int64_ )
- : int64( int64_ )
- {}
-
- PerformanceCounterResultKHR( uint32_t uint32_ )
- : uint32( uint32_ )
- {}
-
- PerformanceCounterResultKHR( uint64_t uint64_ )
- : uint64( uint64_ )
- {}
-
- PerformanceCounterResultKHR( float float32_ )
- : float32( float32_ )
- {}
-
- PerformanceCounterResultKHR( double float64_ )
- : float64( float64_ )
- {}
-
- PerformanceCounterResultKHR & setInt32( int32_t int32_ ) VULKAN_HPP_NOEXCEPT
- {
- int32 = int32_;
- return *this;
- }
-
- PerformanceCounterResultKHR & setInt64( int64_t int64_ ) VULKAN_HPP_NOEXCEPT
- {
- int64 = int64_;
- return *this;
- }
-
- PerformanceCounterResultKHR & setUint32( uint32_t uint32_ ) VULKAN_HPP_NOEXCEPT
- {
- uint32 = uint32_;
- return *this;
- }
-
- PerformanceCounterResultKHR & setUint64( uint64_t uint64_ ) VULKAN_HPP_NOEXCEPT
- {
- uint64 = uint64_;
- return *this;
- }
-
- PerformanceCounterResultKHR & setFloat32( float float32_ ) VULKAN_HPP_NOEXCEPT
- {
- float32 = float32_;
- return *this;
- }
-
- PerformanceCounterResultKHR & setFloat64( double float64_ ) VULKAN_HPP_NOEXCEPT
- {
- float64 = float64_;
- return *this;
- }
-
- VULKAN_HPP_NAMESPACE::PerformanceCounterResultKHR & operator=( VULKAN_HPP_NAMESPACE::PerformanceCounterResultKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void*>(this), &rhs, sizeof( VULKAN_HPP_NAMESPACE::PerformanceCounterResultKHR ) );
- return *this;
- }
-
- operator VkPerformanceCounterResultKHR const&() const
- {
- return *reinterpret_cast<const VkPerformanceCounterResultKHR*>(this);
- }
-
- operator VkPerformanceCounterResultKHR &()
- {
- return *reinterpret_cast<VkPerformanceCounterResultKHR*>(this);
- }
-
- int32_t int32;
- int64_t int64;
- uint32_t uint32;
- uint64_t uint64;
- float float32;
- double float64;
- };
-
- struct PerformanceQuerySubmitInfoKHR
+ struct StructExtends<PhysicalDeviceShaderSMBuiltinsFeaturesNV, PhysicalDeviceFeatures2>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePerformanceQuerySubmitInfoKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PerformanceQuerySubmitInfoKHR(uint32_t counterPassIndex_ = {}) VULKAN_HPP_NOEXCEPT
- : counterPassIndex( counterPassIndex_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PerformanceQuerySubmitInfoKHR( PerformanceQuerySubmitInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PerformanceQuerySubmitInfoKHR( VkPerformanceQuerySubmitInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PerformanceQuerySubmitInfoKHR & operator=( VkPerformanceQuerySubmitInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PerformanceQuerySubmitInfoKHR const *>( &rhs );
- return *this;
- }
-
- PerformanceQuerySubmitInfoKHR & operator=( PerformanceQuerySubmitInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PerformanceQuerySubmitInfoKHR ) );
- return *this;
- }
-
- PerformanceQuerySubmitInfoKHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PerformanceQuerySubmitInfoKHR & setCounterPassIndex( uint32_t counterPassIndex_ ) VULKAN_HPP_NOEXCEPT
- {
- counterPassIndex = counterPassIndex_;
- return *this;
- }
-
-
- operator VkPerformanceQuerySubmitInfoKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPerformanceQuerySubmitInfoKHR*>( this );
- }
-
- operator VkPerformanceQuerySubmitInfoKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPerformanceQuerySubmitInfoKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PerformanceQuerySubmitInfoKHR const& ) const = default;
-#else
- bool operator==( PerformanceQuerySubmitInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( counterPassIndex == rhs.counterPassIndex );
- }
-
- bool operator!=( PerformanceQuerySubmitInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePerformanceQuerySubmitInfoKHR;
- const void* pNext = {};
- uint32_t counterPassIndex = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PerformanceQuerySubmitInfoKHR ) == sizeof( VkPerformanceQuerySubmitInfoKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PerformanceQuerySubmitInfoKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePerformanceQuerySubmitInfoKHR>
+ struct StructExtends<PhysicalDeviceShaderSMBuiltinsFeaturesNV, DeviceCreateInfo>
{
- using Type = PerformanceQuerySubmitInfoKHR;
- };
-
- struct PhysicalDevice16BitStorageFeatures
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDevice16BitStorageFeatures;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDevice16BitStorageFeatures(VULKAN_HPP_NAMESPACE::Bool32 storageBuffer16BitAccess_ = {}, VULKAN_HPP_NAMESPACE::Bool32 uniformAndStorageBuffer16BitAccess_ = {}, VULKAN_HPP_NAMESPACE::Bool32 storagePushConstant16_ = {}, VULKAN_HPP_NAMESPACE::Bool32 storageInputOutput16_ = {}) VULKAN_HPP_NOEXCEPT
- : storageBuffer16BitAccess( storageBuffer16BitAccess_ ), uniformAndStorageBuffer16BitAccess( uniformAndStorageBuffer16BitAccess_ ), storagePushConstant16( storagePushConstant16_ ), storageInputOutput16( storageInputOutput16_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDevice16BitStorageFeatures( PhysicalDevice16BitStorageFeatures const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDevice16BitStorageFeatures( VkPhysicalDevice16BitStorageFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDevice16BitStorageFeatures & operator=( VkPhysicalDevice16BitStorageFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDevice16BitStorageFeatures const *>( &rhs );
- return *this;
- }
-
- PhysicalDevice16BitStorageFeatures & operator=( PhysicalDevice16BitStorageFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDevice16BitStorageFeatures ) );
- return *this;
- }
-
- PhysicalDevice16BitStorageFeatures & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDevice16BitStorageFeatures & setStorageBuffer16BitAccess( VULKAN_HPP_NAMESPACE::Bool32 storageBuffer16BitAccess_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- storageBuffer16BitAccess = storageBuffer16BitAccess_;
- return *this;
- }
-
- PhysicalDevice16BitStorageFeatures & setUniformAndStorageBuffer16BitAccess( VULKAN_HPP_NAMESPACE::Bool32 uniformAndStorageBuffer16BitAccess_ ) VULKAN_HPP_NOEXCEPT
- {
- uniformAndStorageBuffer16BitAccess = uniformAndStorageBuffer16BitAccess_;
- return *this;
- }
-
- PhysicalDevice16BitStorageFeatures & setStoragePushConstant16( VULKAN_HPP_NAMESPACE::Bool32 storagePushConstant16_ ) VULKAN_HPP_NOEXCEPT
- {
- storagePushConstant16 = storagePushConstant16_;
- return *this;
- }
-
- PhysicalDevice16BitStorageFeatures & setStorageInputOutput16( VULKAN_HPP_NAMESPACE::Bool32 storageInputOutput16_ ) VULKAN_HPP_NOEXCEPT
- {
- storageInputOutput16 = storageInputOutput16_;
- return *this;
- }
-
-
- operator VkPhysicalDevice16BitStorageFeatures const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDevice16BitStorageFeatures*>( this );
- }
-
- operator VkPhysicalDevice16BitStorageFeatures &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDevice16BitStorageFeatures*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDevice16BitStorageFeatures const& ) const = default;
-#else
- bool operator==( PhysicalDevice16BitStorageFeatures const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( storageBuffer16BitAccess == rhs.storageBuffer16BitAccess )
- && ( uniformAndStorageBuffer16BitAccess == rhs.uniformAndStorageBuffer16BitAccess )
- && ( storagePushConstant16 == rhs.storagePushConstant16 )
- && ( storageInputOutput16 == rhs.storageInputOutput16 );
- }
-
- bool operator!=( PhysicalDevice16BitStorageFeatures const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDevice16BitStorageFeatures;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 storageBuffer16BitAccess = {};
- VULKAN_HPP_NAMESPACE::Bool32 uniformAndStorageBuffer16BitAccess = {};
- VULKAN_HPP_NAMESPACE::Bool32 storagePushConstant16 = {};
- VULKAN_HPP_NAMESPACE::Bool32 storageInputOutput16 = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDevice16BitStorageFeatures ) == sizeof( VkPhysicalDevice16BitStorageFeatures ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDevice16BitStorageFeatures>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDevice16BitStorageFeatures>
+ struct StructExtends<PhysicalDeviceShaderSMBuiltinsPropertiesNV, PhysicalDeviceProperties2>
{
- using Type = PhysicalDevice16BitStorageFeatures;
- };
- using PhysicalDevice16BitStorageFeaturesKHR = PhysicalDevice16BitStorageFeatures;
-
- struct PhysicalDevice4444FormatsFeaturesEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDevice4444FormatsFeaturesEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDevice4444FormatsFeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 formatA4R4G4B4_ = {}, VULKAN_HPP_NAMESPACE::Bool32 formatA4B4G4R4_ = {}) VULKAN_HPP_NOEXCEPT
- : formatA4R4G4B4( formatA4R4G4B4_ ), formatA4B4G4R4( formatA4B4G4R4_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDevice4444FormatsFeaturesEXT( PhysicalDevice4444FormatsFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDevice4444FormatsFeaturesEXT( VkPhysicalDevice4444FormatsFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDevice4444FormatsFeaturesEXT & operator=( VkPhysicalDevice4444FormatsFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDevice4444FormatsFeaturesEXT const *>( &rhs );
- return *this;
- }
-
- PhysicalDevice4444FormatsFeaturesEXT & operator=( PhysicalDevice4444FormatsFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDevice4444FormatsFeaturesEXT ) );
- return *this;
- }
-
- PhysicalDevice4444FormatsFeaturesEXT & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDevice4444FormatsFeaturesEXT & setFormatA4R4G4B4( VULKAN_HPP_NAMESPACE::Bool32 formatA4R4G4B4_ ) VULKAN_HPP_NOEXCEPT
- {
- formatA4R4G4B4 = formatA4R4G4B4_;
- return *this;
- }
-
- PhysicalDevice4444FormatsFeaturesEXT & setFormatA4B4G4R4( VULKAN_HPP_NAMESPACE::Bool32 formatA4B4G4R4_ ) VULKAN_HPP_NOEXCEPT
- {
- formatA4B4G4R4 = formatA4B4G4R4_;
- return *this;
- }
-
-
- operator VkPhysicalDevice4444FormatsFeaturesEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDevice4444FormatsFeaturesEXT*>( this );
- }
-
- operator VkPhysicalDevice4444FormatsFeaturesEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDevice4444FormatsFeaturesEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDevice4444FormatsFeaturesEXT const& ) const = default;
-#else
- bool operator==( PhysicalDevice4444FormatsFeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( formatA4R4G4B4 == rhs.formatA4R4G4B4 )
- && ( formatA4B4G4R4 == rhs.formatA4B4G4R4 );
- }
-
- bool operator!=( PhysicalDevice4444FormatsFeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDevice4444FormatsFeaturesEXT;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 formatA4R4G4B4 = {};
- VULKAN_HPP_NAMESPACE::Bool32 formatA4B4G4R4 = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDevice4444FormatsFeaturesEXT ) == sizeof( VkPhysicalDevice4444FormatsFeaturesEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDevice4444FormatsFeaturesEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDevice4444FormatsFeaturesEXT>
+ struct StructExtends<PhysicalDeviceShaderSubgroupExtendedTypesFeatures, PhysicalDeviceFeatures2>
{
- using Type = PhysicalDevice4444FormatsFeaturesEXT;
- };
-
- struct PhysicalDevice8BitStorageFeatures
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDevice8BitStorageFeatures;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDevice8BitStorageFeatures(VULKAN_HPP_NAMESPACE::Bool32 storageBuffer8BitAccess_ = {}, VULKAN_HPP_NAMESPACE::Bool32 uniformAndStorageBuffer8BitAccess_ = {}, VULKAN_HPP_NAMESPACE::Bool32 storagePushConstant8_ = {}) VULKAN_HPP_NOEXCEPT
- : storageBuffer8BitAccess( storageBuffer8BitAccess_ ), uniformAndStorageBuffer8BitAccess( uniformAndStorageBuffer8BitAccess_ ), storagePushConstant8( storagePushConstant8_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDevice8BitStorageFeatures( PhysicalDevice8BitStorageFeatures const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDevice8BitStorageFeatures( VkPhysicalDevice8BitStorageFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDevice8BitStorageFeatures & operator=( VkPhysicalDevice8BitStorageFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDevice8BitStorageFeatures const *>( &rhs );
- return *this;
- }
-
- PhysicalDevice8BitStorageFeatures & operator=( PhysicalDevice8BitStorageFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDevice8BitStorageFeatures ) );
- return *this;
- }
-
- PhysicalDevice8BitStorageFeatures & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDevice8BitStorageFeatures & setStorageBuffer8BitAccess( VULKAN_HPP_NAMESPACE::Bool32 storageBuffer8BitAccess_ ) VULKAN_HPP_NOEXCEPT
- {
- storageBuffer8BitAccess = storageBuffer8BitAccess_;
- return *this;
- }
-
- PhysicalDevice8BitStorageFeatures & setUniformAndStorageBuffer8BitAccess( VULKAN_HPP_NAMESPACE::Bool32 uniformAndStorageBuffer8BitAccess_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- uniformAndStorageBuffer8BitAccess = uniformAndStorageBuffer8BitAccess_;
- return *this;
- }
-
- PhysicalDevice8BitStorageFeatures & setStoragePushConstant8( VULKAN_HPP_NAMESPACE::Bool32 storagePushConstant8_ ) VULKAN_HPP_NOEXCEPT
- {
- storagePushConstant8 = storagePushConstant8_;
- return *this;
- }
-
-
- operator VkPhysicalDevice8BitStorageFeatures const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDevice8BitStorageFeatures*>( this );
- }
-
- operator VkPhysicalDevice8BitStorageFeatures &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDevice8BitStorageFeatures*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDevice8BitStorageFeatures const& ) const = default;
-#else
- bool operator==( PhysicalDevice8BitStorageFeatures const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( storageBuffer8BitAccess == rhs.storageBuffer8BitAccess )
- && ( uniformAndStorageBuffer8BitAccess == rhs.uniformAndStorageBuffer8BitAccess )
- && ( storagePushConstant8 == rhs.storagePushConstant8 );
- }
-
- bool operator!=( PhysicalDevice8BitStorageFeatures const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDevice8BitStorageFeatures;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 storageBuffer8BitAccess = {};
- VULKAN_HPP_NAMESPACE::Bool32 uniformAndStorageBuffer8BitAccess = {};
- VULKAN_HPP_NAMESPACE::Bool32 storagePushConstant8 = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDevice8BitStorageFeatures ) == sizeof( VkPhysicalDevice8BitStorageFeatures ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDevice8BitStorageFeatures>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDevice8BitStorageFeatures>
- {
- using Type = PhysicalDevice8BitStorageFeatures;
- };
- using PhysicalDevice8BitStorageFeaturesKHR = PhysicalDevice8BitStorageFeatures;
-
- struct PhysicalDeviceASTCDecodeFeaturesEXT
+ struct StructExtends<PhysicalDeviceShaderSubgroupExtendedTypesFeatures, DeviceCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceAstcDecodeFeaturesEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceASTCDecodeFeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 decodeModeSharedExponent_ = {}) VULKAN_HPP_NOEXCEPT
- : decodeModeSharedExponent( decodeModeSharedExponent_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceASTCDecodeFeaturesEXT( PhysicalDeviceASTCDecodeFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceASTCDecodeFeaturesEXT( VkPhysicalDeviceASTCDecodeFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceASTCDecodeFeaturesEXT & operator=( VkPhysicalDeviceASTCDecodeFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceASTCDecodeFeaturesEXT const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceASTCDecodeFeaturesEXT & operator=( PhysicalDeviceASTCDecodeFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceASTCDecodeFeaturesEXT ) );
- return *this;
- }
-
- PhysicalDeviceASTCDecodeFeaturesEXT & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceASTCDecodeFeaturesEXT & setDecodeModeSharedExponent( VULKAN_HPP_NAMESPACE::Bool32 decodeModeSharedExponent_ ) VULKAN_HPP_NOEXCEPT
- {
- decodeModeSharedExponent = decodeModeSharedExponent_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceASTCDecodeFeaturesEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceASTCDecodeFeaturesEXT*>( this );
- }
-
- operator VkPhysicalDeviceASTCDecodeFeaturesEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceASTCDecodeFeaturesEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceASTCDecodeFeaturesEXT const& ) const = default;
-#else
- bool operator==( PhysicalDeviceASTCDecodeFeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( decodeModeSharedExponent == rhs.decodeModeSharedExponent );
- }
-
- bool operator!=( PhysicalDeviceASTCDecodeFeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceAstcDecodeFeaturesEXT;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 decodeModeSharedExponent = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceASTCDecodeFeaturesEXT ) == sizeof( VkPhysicalDeviceASTCDecodeFeaturesEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceASTCDecodeFeaturesEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceAstcDecodeFeaturesEXT>
+ struct StructExtends<PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR, PhysicalDeviceFeatures2>
{
- using Type = PhysicalDeviceASTCDecodeFeaturesEXT;
- };
-
- struct PhysicalDeviceAccelerationStructureFeaturesKHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceAccelerationStructureFeaturesKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceAccelerationStructureFeaturesKHR(VULKAN_HPP_NAMESPACE::Bool32 accelerationStructure_ = {}, VULKAN_HPP_NAMESPACE::Bool32 accelerationStructureCaptureReplay_ = {}, VULKAN_HPP_NAMESPACE::Bool32 accelerationStructureIndirectBuild_ = {}, VULKAN_HPP_NAMESPACE::Bool32 accelerationStructureHostCommands_ = {}, VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingAccelerationStructureUpdateAfterBind_ = {}) VULKAN_HPP_NOEXCEPT
- : accelerationStructure( accelerationStructure_ ), accelerationStructureCaptureReplay( accelerationStructureCaptureReplay_ ), accelerationStructureIndirectBuild( accelerationStructureIndirectBuild_ ), accelerationStructureHostCommands( accelerationStructureHostCommands_ ), descriptorBindingAccelerationStructureUpdateAfterBind( descriptorBindingAccelerationStructureUpdateAfterBind_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceAccelerationStructureFeaturesKHR( PhysicalDeviceAccelerationStructureFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceAccelerationStructureFeaturesKHR( VkPhysicalDeviceAccelerationStructureFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceAccelerationStructureFeaturesKHR & operator=( VkPhysicalDeviceAccelerationStructureFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceAccelerationStructureFeaturesKHR const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceAccelerationStructureFeaturesKHR & operator=( PhysicalDeviceAccelerationStructureFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceAccelerationStructureFeaturesKHR ) );
- return *this;
- }
-
- PhysicalDeviceAccelerationStructureFeaturesKHR & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceAccelerationStructureFeaturesKHR & setAccelerationStructure( VULKAN_HPP_NAMESPACE::Bool32 accelerationStructure_ ) VULKAN_HPP_NOEXCEPT
- {
- accelerationStructure = accelerationStructure_;
- return *this;
- }
-
- PhysicalDeviceAccelerationStructureFeaturesKHR & setAccelerationStructureCaptureReplay( VULKAN_HPP_NAMESPACE::Bool32 accelerationStructureCaptureReplay_ ) VULKAN_HPP_NOEXCEPT
- {
- accelerationStructureCaptureReplay = accelerationStructureCaptureReplay_;
- return *this;
- }
-
- PhysicalDeviceAccelerationStructureFeaturesKHR & setAccelerationStructureIndirectBuild( VULKAN_HPP_NAMESPACE::Bool32 accelerationStructureIndirectBuild_ ) VULKAN_HPP_NOEXCEPT
- {
- accelerationStructureIndirectBuild = accelerationStructureIndirectBuild_;
- return *this;
- }
-
- PhysicalDeviceAccelerationStructureFeaturesKHR & setAccelerationStructureHostCommands( VULKAN_HPP_NAMESPACE::Bool32 accelerationStructureHostCommands_ ) VULKAN_HPP_NOEXCEPT
- {
- accelerationStructureHostCommands = accelerationStructureHostCommands_;
- return *this;
- }
-
- PhysicalDeviceAccelerationStructureFeaturesKHR & setDescriptorBindingAccelerationStructureUpdateAfterBind( VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingAccelerationStructureUpdateAfterBind_ ) VULKAN_HPP_NOEXCEPT
- {
- descriptorBindingAccelerationStructureUpdateAfterBind = descriptorBindingAccelerationStructureUpdateAfterBind_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceAccelerationStructureFeaturesKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceAccelerationStructureFeaturesKHR*>( this );
- }
-
- operator VkPhysicalDeviceAccelerationStructureFeaturesKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceAccelerationStructureFeaturesKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceAccelerationStructureFeaturesKHR const& ) const = default;
-#else
- bool operator==( PhysicalDeviceAccelerationStructureFeaturesKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( accelerationStructure == rhs.accelerationStructure )
- && ( accelerationStructureCaptureReplay == rhs.accelerationStructureCaptureReplay )
- && ( accelerationStructureIndirectBuild == rhs.accelerationStructureIndirectBuild )
- && ( accelerationStructureHostCommands == rhs.accelerationStructureHostCommands )
- && ( descriptorBindingAccelerationStructureUpdateAfterBind == rhs.descriptorBindingAccelerationStructureUpdateAfterBind );
- }
-
- bool operator!=( PhysicalDeviceAccelerationStructureFeaturesKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceAccelerationStructureFeaturesKHR;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 accelerationStructure = {};
- VULKAN_HPP_NAMESPACE::Bool32 accelerationStructureCaptureReplay = {};
- VULKAN_HPP_NAMESPACE::Bool32 accelerationStructureIndirectBuild = {};
- VULKAN_HPP_NAMESPACE::Bool32 accelerationStructureHostCommands = {};
- VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingAccelerationStructureUpdateAfterBind = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceAccelerationStructureFeaturesKHR ) == sizeof( VkPhysicalDeviceAccelerationStructureFeaturesKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceAccelerationStructureFeaturesKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceAccelerationStructureFeaturesKHR>
+ struct StructExtends<PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR, DeviceCreateInfo>
{
- using Type = PhysicalDeviceAccelerationStructureFeaturesKHR;
- };
-
- struct PhysicalDeviceAccelerationStructurePropertiesKHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceAccelerationStructurePropertiesKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceAccelerationStructurePropertiesKHR(uint64_t maxGeometryCount_ = {}, uint64_t maxInstanceCount_ = {}, uint64_t maxPrimitiveCount_ = {}, uint32_t maxPerStageDescriptorAccelerationStructures_ = {}, uint32_t maxPerStageDescriptorUpdateAfterBindAccelerationStructures_ = {}, uint32_t maxDescriptorSetAccelerationStructures_ = {}, uint32_t maxDescriptorSetUpdateAfterBindAccelerationStructures_ = {}, uint32_t minAccelerationStructureScratchOffsetAlignment_ = {}) VULKAN_HPP_NOEXCEPT
- : maxGeometryCount( maxGeometryCount_ ), maxInstanceCount( maxInstanceCount_ ), maxPrimitiveCount( maxPrimitiveCount_ ), maxPerStageDescriptorAccelerationStructures( maxPerStageDescriptorAccelerationStructures_ ), maxPerStageDescriptorUpdateAfterBindAccelerationStructures( maxPerStageDescriptorUpdateAfterBindAccelerationStructures_ ), maxDescriptorSetAccelerationStructures( maxDescriptorSetAccelerationStructures_ ), maxDescriptorSetUpdateAfterBindAccelerationStructures( maxDescriptorSetUpdateAfterBindAccelerationStructures_ ), minAccelerationStructureScratchOffsetAlignment( minAccelerationStructureScratchOffsetAlignment_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceAccelerationStructurePropertiesKHR( PhysicalDeviceAccelerationStructurePropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceAccelerationStructurePropertiesKHR( VkPhysicalDeviceAccelerationStructurePropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceAccelerationStructurePropertiesKHR & operator=( VkPhysicalDeviceAccelerationStructurePropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceAccelerationStructurePropertiesKHR const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceAccelerationStructurePropertiesKHR & operator=( PhysicalDeviceAccelerationStructurePropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceAccelerationStructurePropertiesKHR ) );
- return *this;
- }
-
-
- operator VkPhysicalDeviceAccelerationStructurePropertiesKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceAccelerationStructurePropertiesKHR*>( this );
- }
-
- operator VkPhysicalDeviceAccelerationStructurePropertiesKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceAccelerationStructurePropertiesKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceAccelerationStructurePropertiesKHR const& ) const = default;
-#else
- bool operator==( PhysicalDeviceAccelerationStructurePropertiesKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( maxGeometryCount == rhs.maxGeometryCount )
- && ( maxInstanceCount == rhs.maxInstanceCount )
- && ( maxPrimitiveCount == rhs.maxPrimitiveCount )
- && ( maxPerStageDescriptorAccelerationStructures == rhs.maxPerStageDescriptorAccelerationStructures )
- && ( maxPerStageDescriptorUpdateAfterBindAccelerationStructures == rhs.maxPerStageDescriptorUpdateAfterBindAccelerationStructures )
- && ( maxDescriptorSetAccelerationStructures == rhs.maxDescriptorSetAccelerationStructures )
- && ( maxDescriptorSetUpdateAfterBindAccelerationStructures == rhs.maxDescriptorSetUpdateAfterBindAccelerationStructures )
- && ( minAccelerationStructureScratchOffsetAlignment == rhs.minAccelerationStructureScratchOffsetAlignment );
- }
-
- bool operator!=( PhysicalDeviceAccelerationStructurePropertiesKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceAccelerationStructurePropertiesKHR;
- void* pNext = {};
- uint64_t maxGeometryCount = {};
- uint64_t maxInstanceCount = {};
- uint64_t maxPrimitiveCount = {};
- uint32_t maxPerStageDescriptorAccelerationStructures = {};
- uint32_t maxPerStageDescriptorUpdateAfterBindAccelerationStructures = {};
- uint32_t maxDescriptorSetAccelerationStructures = {};
- uint32_t maxDescriptorSetUpdateAfterBindAccelerationStructures = {};
- uint32_t minAccelerationStructureScratchOffsetAlignment = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceAccelerationStructurePropertiesKHR ) == sizeof( VkPhysicalDeviceAccelerationStructurePropertiesKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceAccelerationStructurePropertiesKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceAccelerationStructurePropertiesKHR>
- {
- using Type = PhysicalDeviceAccelerationStructurePropertiesKHR;
- };
-
- struct PhysicalDeviceBlendOperationAdvancedFeaturesEXT
+ struct StructExtends<PhysicalDeviceShaderTerminateInvocationFeaturesKHR, PhysicalDeviceFeatures2>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceBlendOperationAdvancedFeaturesEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceBlendOperationAdvancedFeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 advancedBlendCoherentOperations_ = {}) VULKAN_HPP_NOEXCEPT
- : advancedBlendCoherentOperations( advancedBlendCoherentOperations_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceBlendOperationAdvancedFeaturesEXT( PhysicalDeviceBlendOperationAdvancedFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceBlendOperationAdvancedFeaturesEXT( VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceBlendOperationAdvancedFeaturesEXT & operator=( VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceBlendOperationAdvancedFeaturesEXT const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceBlendOperationAdvancedFeaturesEXT & operator=( PhysicalDeviceBlendOperationAdvancedFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceBlendOperationAdvancedFeaturesEXT ) );
- return *this;
- }
-
- PhysicalDeviceBlendOperationAdvancedFeaturesEXT & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceBlendOperationAdvancedFeaturesEXT & setAdvancedBlendCoherentOperations( VULKAN_HPP_NAMESPACE::Bool32 advancedBlendCoherentOperations_ ) VULKAN_HPP_NOEXCEPT
- {
- advancedBlendCoherentOperations = advancedBlendCoherentOperations_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT*>( this );
- }
-
- operator VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceBlendOperationAdvancedFeaturesEXT const& ) const = default;
-#else
- bool operator==( PhysicalDeviceBlendOperationAdvancedFeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( advancedBlendCoherentOperations == rhs.advancedBlendCoherentOperations );
- }
-
- bool operator!=( PhysicalDeviceBlendOperationAdvancedFeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceBlendOperationAdvancedFeaturesEXT;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 advancedBlendCoherentOperations = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceBlendOperationAdvancedFeaturesEXT ) == sizeof( VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceBlendOperationAdvancedFeaturesEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceBlendOperationAdvancedFeaturesEXT>
+ struct StructExtends<PhysicalDeviceShaderTerminateInvocationFeaturesKHR, DeviceCreateInfo>
{
- using Type = PhysicalDeviceBlendOperationAdvancedFeaturesEXT;
- };
-
- struct PhysicalDeviceBlendOperationAdvancedPropertiesEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceBlendOperationAdvancedPropertiesEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceBlendOperationAdvancedPropertiesEXT(uint32_t advancedBlendMaxColorAttachments_ = {}, VULKAN_HPP_NAMESPACE::Bool32 advancedBlendIndependentBlend_ = {}, VULKAN_HPP_NAMESPACE::Bool32 advancedBlendNonPremultipliedSrcColor_ = {}, VULKAN_HPP_NAMESPACE::Bool32 advancedBlendNonPremultipliedDstColor_ = {}, VULKAN_HPP_NAMESPACE::Bool32 advancedBlendCorrelatedOverlap_ = {}, VULKAN_HPP_NAMESPACE::Bool32 advancedBlendAllOperations_ = {}) VULKAN_HPP_NOEXCEPT
- : advancedBlendMaxColorAttachments( advancedBlendMaxColorAttachments_ ), advancedBlendIndependentBlend( advancedBlendIndependentBlend_ ), advancedBlendNonPremultipliedSrcColor( advancedBlendNonPremultipliedSrcColor_ ), advancedBlendNonPremultipliedDstColor( advancedBlendNonPremultipliedDstColor_ ), advancedBlendCorrelatedOverlap( advancedBlendCorrelatedOverlap_ ), advancedBlendAllOperations( advancedBlendAllOperations_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceBlendOperationAdvancedPropertiesEXT( PhysicalDeviceBlendOperationAdvancedPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceBlendOperationAdvancedPropertiesEXT( VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceBlendOperationAdvancedPropertiesEXT & operator=( VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceBlendOperationAdvancedPropertiesEXT const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceBlendOperationAdvancedPropertiesEXT & operator=( PhysicalDeviceBlendOperationAdvancedPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceBlendOperationAdvancedPropertiesEXT ) );
- return *this;
- }
-
-
- operator VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT*>( this );
- }
-
- operator VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceBlendOperationAdvancedPropertiesEXT const& ) const = default;
-#else
- bool operator==( PhysicalDeviceBlendOperationAdvancedPropertiesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( advancedBlendMaxColorAttachments == rhs.advancedBlendMaxColorAttachments )
- && ( advancedBlendIndependentBlend == rhs.advancedBlendIndependentBlend )
- && ( advancedBlendNonPremultipliedSrcColor == rhs.advancedBlendNonPremultipliedSrcColor )
- && ( advancedBlendNonPremultipliedDstColor == rhs.advancedBlendNonPremultipliedDstColor )
- && ( advancedBlendCorrelatedOverlap == rhs.advancedBlendCorrelatedOverlap )
- && ( advancedBlendAllOperations == rhs.advancedBlendAllOperations );
- }
-
- bool operator!=( PhysicalDeviceBlendOperationAdvancedPropertiesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceBlendOperationAdvancedPropertiesEXT;
- void* pNext = {};
- uint32_t advancedBlendMaxColorAttachments = {};
- VULKAN_HPP_NAMESPACE::Bool32 advancedBlendIndependentBlend = {};
- VULKAN_HPP_NAMESPACE::Bool32 advancedBlendNonPremultipliedSrcColor = {};
- VULKAN_HPP_NAMESPACE::Bool32 advancedBlendNonPremultipliedDstColor = {};
- VULKAN_HPP_NAMESPACE::Bool32 advancedBlendCorrelatedOverlap = {};
- VULKAN_HPP_NAMESPACE::Bool32 advancedBlendAllOperations = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceBlendOperationAdvancedPropertiesEXT ) == sizeof( VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceBlendOperationAdvancedPropertiesEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceBlendOperationAdvancedPropertiesEXT>
+ struct StructExtends<PhysicalDeviceShadingRateImageFeaturesNV, PhysicalDeviceFeatures2>
{
- using Type = PhysicalDeviceBlendOperationAdvancedPropertiesEXT;
- };
-
- struct PhysicalDeviceBufferDeviceAddressFeatures
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceBufferDeviceAddressFeatures;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceBufferDeviceAddressFeatures(VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddress_ = {}, VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddressCaptureReplay_ = {}, VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddressMultiDevice_ = {}) VULKAN_HPP_NOEXCEPT
- : bufferDeviceAddress( bufferDeviceAddress_ ), bufferDeviceAddressCaptureReplay( bufferDeviceAddressCaptureReplay_ ), bufferDeviceAddressMultiDevice( bufferDeviceAddressMultiDevice_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceBufferDeviceAddressFeatures( PhysicalDeviceBufferDeviceAddressFeatures const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceBufferDeviceAddressFeatures( VkPhysicalDeviceBufferDeviceAddressFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceBufferDeviceAddressFeatures & operator=( VkPhysicalDeviceBufferDeviceAddressFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceBufferDeviceAddressFeatures const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceBufferDeviceAddressFeatures & operator=( PhysicalDeviceBufferDeviceAddressFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceBufferDeviceAddressFeatures ) );
- return *this;
- }
-
- PhysicalDeviceBufferDeviceAddressFeatures & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceBufferDeviceAddressFeatures & setBufferDeviceAddress( VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddress_ ) VULKAN_HPP_NOEXCEPT
- {
- bufferDeviceAddress = bufferDeviceAddress_;
- return *this;
- }
-
- PhysicalDeviceBufferDeviceAddressFeatures & setBufferDeviceAddressCaptureReplay( VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddressCaptureReplay_ ) VULKAN_HPP_NOEXCEPT
- {
- bufferDeviceAddressCaptureReplay = bufferDeviceAddressCaptureReplay_;
- return *this;
- }
-
- PhysicalDeviceBufferDeviceAddressFeatures & setBufferDeviceAddressMultiDevice( VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddressMultiDevice_ ) VULKAN_HPP_NOEXCEPT
- {
- bufferDeviceAddressMultiDevice = bufferDeviceAddressMultiDevice_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceBufferDeviceAddressFeatures const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceBufferDeviceAddressFeatures*>( this );
- }
-
- operator VkPhysicalDeviceBufferDeviceAddressFeatures &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceBufferDeviceAddressFeatures*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceBufferDeviceAddressFeatures const& ) const = default;
-#else
- bool operator==( PhysicalDeviceBufferDeviceAddressFeatures const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( bufferDeviceAddress == rhs.bufferDeviceAddress )
- && ( bufferDeviceAddressCaptureReplay == rhs.bufferDeviceAddressCaptureReplay )
- && ( bufferDeviceAddressMultiDevice == rhs.bufferDeviceAddressMultiDevice );
- }
-
- bool operator!=( PhysicalDeviceBufferDeviceAddressFeatures const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceBufferDeviceAddressFeatures;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddress = {};
- VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddressCaptureReplay = {};
- VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddressMultiDevice = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceBufferDeviceAddressFeatures ) == sizeof( VkPhysicalDeviceBufferDeviceAddressFeatures ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceBufferDeviceAddressFeatures>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceBufferDeviceAddressFeatures>
+ struct StructExtends<PhysicalDeviceShadingRateImageFeaturesNV, DeviceCreateInfo>
{
- using Type = PhysicalDeviceBufferDeviceAddressFeatures;
- };
- using PhysicalDeviceBufferDeviceAddressFeaturesKHR = PhysicalDeviceBufferDeviceAddressFeatures;
-
- struct PhysicalDeviceBufferDeviceAddressFeaturesEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceBufferDeviceAddressFeaturesEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceBufferDeviceAddressFeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddress_ = {}, VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddressCaptureReplay_ = {}, VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddressMultiDevice_ = {}) VULKAN_HPP_NOEXCEPT
- : bufferDeviceAddress( bufferDeviceAddress_ ), bufferDeviceAddressCaptureReplay( bufferDeviceAddressCaptureReplay_ ), bufferDeviceAddressMultiDevice( bufferDeviceAddressMultiDevice_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceBufferDeviceAddressFeaturesEXT( PhysicalDeviceBufferDeviceAddressFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceBufferDeviceAddressFeaturesEXT( VkPhysicalDeviceBufferDeviceAddressFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceBufferDeviceAddressFeaturesEXT & operator=( VkPhysicalDeviceBufferDeviceAddressFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceBufferDeviceAddressFeaturesEXT const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceBufferDeviceAddressFeaturesEXT & operator=( PhysicalDeviceBufferDeviceAddressFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceBufferDeviceAddressFeaturesEXT ) );
- return *this;
- }
-
- PhysicalDeviceBufferDeviceAddressFeaturesEXT & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceBufferDeviceAddressFeaturesEXT & setBufferDeviceAddress( VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddress_ ) VULKAN_HPP_NOEXCEPT
- {
- bufferDeviceAddress = bufferDeviceAddress_;
- return *this;
- }
-
- PhysicalDeviceBufferDeviceAddressFeaturesEXT & setBufferDeviceAddressCaptureReplay( VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddressCaptureReplay_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- bufferDeviceAddressCaptureReplay = bufferDeviceAddressCaptureReplay_;
- return *this;
- }
-
- PhysicalDeviceBufferDeviceAddressFeaturesEXT & setBufferDeviceAddressMultiDevice( VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddressMultiDevice_ ) VULKAN_HPP_NOEXCEPT
- {
- bufferDeviceAddressMultiDevice = bufferDeviceAddressMultiDevice_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceBufferDeviceAddressFeaturesEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceBufferDeviceAddressFeaturesEXT*>( this );
- }
-
- operator VkPhysicalDeviceBufferDeviceAddressFeaturesEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceBufferDeviceAddressFeaturesEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceBufferDeviceAddressFeaturesEXT const& ) const = default;
-#else
- bool operator==( PhysicalDeviceBufferDeviceAddressFeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( bufferDeviceAddress == rhs.bufferDeviceAddress )
- && ( bufferDeviceAddressCaptureReplay == rhs.bufferDeviceAddressCaptureReplay )
- && ( bufferDeviceAddressMultiDevice == rhs.bufferDeviceAddressMultiDevice );
- }
-
- bool operator!=( PhysicalDeviceBufferDeviceAddressFeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceBufferDeviceAddressFeaturesEXT;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddress = {};
- VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddressCaptureReplay = {};
- VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddressMultiDevice = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceBufferDeviceAddressFeaturesEXT ) == sizeof( VkPhysicalDeviceBufferDeviceAddressFeaturesEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceBufferDeviceAddressFeaturesEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceBufferDeviceAddressFeaturesEXT>
- {
- using Type = PhysicalDeviceBufferDeviceAddressFeaturesEXT;
- };
- using PhysicalDeviceBufferAddressFeaturesEXT = PhysicalDeviceBufferDeviceAddressFeaturesEXT;
-
- struct PhysicalDeviceCoherentMemoryFeaturesAMD
+ struct StructExtends<PhysicalDeviceShadingRateImagePropertiesNV, PhysicalDeviceProperties2>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceCoherentMemoryFeaturesAMD;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceCoherentMemoryFeaturesAMD(VULKAN_HPP_NAMESPACE::Bool32 deviceCoherentMemory_ = {}) VULKAN_HPP_NOEXCEPT
- : deviceCoherentMemory( deviceCoherentMemory_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceCoherentMemoryFeaturesAMD( PhysicalDeviceCoherentMemoryFeaturesAMD const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceCoherentMemoryFeaturesAMD( VkPhysicalDeviceCoherentMemoryFeaturesAMD const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceCoherentMemoryFeaturesAMD & operator=( VkPhysicalDeviceCoherentMemoryFeaturesAMD const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceCoherentMemoryFeaturesAMD const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceCoherentMemoryFeaturesAMD & operator=( PhysicalDeviceCoherentMemoryFeaturesAMD const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceCoherentMemoryFeaturesAMD ) );
- return *this;
- }
-
- PhysicalDeviceCoherentMemoryFeaturesAMD & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceCoherentMemoryFeaturesAMD & setDeviceCoherentMemory( VULKAN_HPP_NAMESPACE::Bool32 deviceCoherentMemory_ ) VULKAN_HPP_NOEXCEPT
- {
- deviceCoherentMemory = deviceCoherentMemory_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceCoherentMemoryFeaturesAMD const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceCoherentMemoryFeaturesAMD*>( this );
- }
-
- operator VkPhysicalDeviceCoherentMemoryFeaturesAMD &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceCoherentMemoryFeaturesAMD*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceCoherentMemoryFeaturesAMD const& ) const = default;
-#else
- bool operator==( PhysicalDeviceCoherentMemoryFeaturesAMD const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( deviceCoherentMemory == rhs.deviceCoherentMemory );
- }
-
- bool operator!=( PhysicalDeviceCoherentMemoryFeaturesAMD const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceCoherentMemoryFeaturesAMD;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 deviceCoherentMemory = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceCoherentMemoryFeaturesAMD ) == sizeof( VkPhysicalDeviceCoherentMemoryFeaturesAMD ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceCoherentMemoryFeaturesAMD>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceCoherentMemoryFeaturesAMD>
+ struct StructExtends<PhysicalDeviceSubgroupProperties, PhysicalDeviceProperties2>
{
- using Type = PhysicalDeviceCoherentMemoryFeaturesAMD;
- };
-
- struct PhysicalDeviceComputeShaderDerivativesFeaturesNV
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceComputeShaderDerivativesFeaturesNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceComputeShaderDerivativesFeaturesNV(VULKAN_HPP_NAMESPACE::Bool32 computeDerivativeGroupQuads_ = {}, VULKAN_HPP_NAMESPACE::Bool32 computeDerivativeGroupLinear_ = {}) VULKAN_HPP_NOEXCEPT
- : computeDerivativeGroupQuads( computeDerivativeGroupQuads_ ), computeDerivativeGroupLinear( computeDerivativeGroupLinear_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceComputeShaderDerivativesFeaturesNV( PhysicalDeviceComputeShaderDerivativesFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceComputeShaderDerivativesFeaturesNV( VkPhysicalDeviceComputeShaderDerivativesFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceComputeShaderDerivativesFeaturesNV & operator=( VkPhysicalDeviceComputeShaderDerivativesFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceComputeShaderDerivativesFeaturesNV const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceComputeShaderDerivativesFeaturesNV & operator=( PhysicalDeviceComputeShaderDerivativesFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceComputeShaderDerivativesFeaturesNV ) );
- return *this;
- }
-
- PhysicalDeviceComputeShaderDerivativesFeaturesNV & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceComputeShaderDerivativesFeaturesNV & setComputeDerivativeGroupQuads( VULKAN_HPP_NAMESPACE::Bool32 computeDerivativeGroupQuads_ ) VULKAN_HPP_NOEXCEPT
- {
- computeDerivativeGroupQuads = computeDerivativeGroupQuads_;
- return *this;
- }
-
- PhysicalDeviceComputeShaderDerivativesFeaturesNV & setComputeDerivativeGroupLinear( VULKAN_HPP_NAMESPACE::Bool32 computeDerivativeGroupLinear_ ) VULKAN_HPP_NOEXCEPT
- {
- computeDerivativeGroupLinear = computeDerivativeGroupLinear_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceComputeShaderDerivativesFeaturesNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceComputeShaderDerivativesFeaturesNV*>( this );
- }
-
- operator VkPhysicalDeviceComputeShaderDerivativesFeaturesNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceComputeShaderDerivativesFeaturesNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceComputeShaderDerivativesFeaturesNV const& ) const = default;
-#else
- bool operator==( PhysicalDeviceComputeShaderDerivativesFeaturesNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( computeDerivativeGroupQuads == rhs.computeDerivativeGroupQuads )
- && ( computeDerivativeGroupLinear == rhs.computeDerivativeGroupLinear );
- }
-
- bool operator!=( PhysicalDeviceComputeShaderDerivativesFeaturesNV const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceComputeShaderDerivativesFeaturesNV;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 computeDerivativeGroupQuads = {};
- VULKAN_HPP_NAMESPACE::Bool32 computeDerivativeGroupLinear = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceComputeShaderDerivativesFeaturesNV ) == sizeof( VkPhysicalDeviceComputeShaderDerivativesFeaturesNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceComputeShaderDerivativesFeaturesNV>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceComputeShaderDerivativesFeaturesNV>
+ struct StructExtends<PhysicalDeviceSubgroupSizeControlFeaturesEXT, PhysicalDeviceFeatures2>
{
- using Type = PhysicalDeviceComputeShaderDerivativesFeaturesNV;
- };
-
- struct PhysicalDeviceConditionalRenderingFeaturesEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceConditionalRenderingFeaturesEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceConditionalRenderingFeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 conditionalRendering_ = {}, VULKAN_HPP_NAMESPACE::Bool32 inheritedConditionalRendering_ = {}) VULKAN_HPP_NOEXCEPT
- : conditionalRendering( conditionalRendering_ ), inheritedConditionalRendering( inheritedConditionalRendering_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceConditionalRenderingFeaturesEXT( PhysicalDeviceConditionalRenderingFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceConditionalRenderingFeaturesEXT( VkPhysicalDeviceConditionalRenderingFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceConditionalRenderingFeaturesEXT & operator=( VkPhysicalDeviceConditionalRenderingFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceConditionalRenderingFeaturesEXT const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceConditionalRenderingFeaturesEXT & operator=( PhysicalDeviceConditionalRenderingFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceConditionalRenderingFeaturesEXT ) );
- return *this;
- }
-
- PhysicalDeviceConditionalRenderingFeaturesEXT & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceConditionalRenderingFeaturesEXT & setConditionalRendering( VULKAN_HPP_NAMESPACE::Bool32 conditionalRendering_ ) VULKAN_HPP_NOEXCEPT
- {
- conditionalRendering = conditionalRendering_;
- return *this;
- }
-
- PhysicalDeviceConditionalRenderingFeaturesEXT & setInheritedConditionalRendering( VULKAN_HPP_NAMESPACE::Bool32 inheritedConditionalRendering_ ) VULKAN_HPP_NOEXCEPT
- {
- inheritedConditionalRendering = inheritedConditionalRendering_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceConditionalRenderingFeaturesEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceConditionalRenderingFeaturesEXT*>( this );
- }
-
- operator VkPhysicalDeviceConditionalRenderingFeaturesEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceConditionalRenderingFeaturesEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceConditionalRenderingFeaturesEXT const& ) const = default;
-#else
- bool operator==( PhysicalDeviceConditionalRenderingFeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( conditionalRendering == rhs.conditionalRendering )
- && ( inheritedConditionalRendering == rhs.inheritedConditionalRendering );
- }
-
- bool operator!=( PhysicalDeviceConditionalRenderingFeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceConditionalRenderingFeaturesEXT;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 conditionalRendering = {};
- VULKAN_HPP_NAMESPACE::Bool32 inheritedConditionalRendering = {};
-
- };
- static_assert( sizeof( PhysicalDeviceConditionalRenderingFeaturesEXT ) == sizeof( VkPhysicalDeviceConditionalRenderingFeaturesEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceConditionalRenderingFeaturesEXT>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceConditionalRenderingFeaturesEXT>
- {
- using Type = PhysicalDeviceConditionalRenderingFeaturesEXT;
+ value = true
+ };
};
-
- struct PhysicalDeviceConservativeRasterizationPropertiesEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceConservativeRasterizationPropertiesEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceConservativeRasterizationPropertiesEXT(float primitiveOverestimationSize_ = {}, float maxExtraPrimitiveOverestimationSize_ = {}, float extraPrimitiveOverestimationSizeGranularity_ = {}, VULKAN_HPP_NAMESPACE::Bool32 primitiveUnderestimation_ = {}, VULKAN_HPP_NAMESPACE::Bool32 conservativePointAndLineRasterization_ = {}, VULKAN_HPP_NAMESPACE::Bool32 degenerateTrianglesRasterized_ = {}, VULKAN_HPP_NAMESPACE::Bool32 degenerateLinesRasterized_ = {}, VULKAN_HPP_NAMESPACE::Bool32 fullyCoveredFragmentShaderInputVariable_ = {}, VULKAN_HPP_NAMESPACE::Bool32 conservativeRasterizationPostDepthCoverage_ = {}) VULKAN_HPP_NOEXCEPT
- : primitiveOverestimationSize( primitiveOverestimationSize_ ), maxExtraPrimitiveOverestimationSize( maxExtraPrimitiveOverestimationSize_ ), extraPrimitiveOverestimationSizeGranularity( extraPrimitiveOverestimationSizeGranularity_ ), primitiveUnderestimation( primitiveUnderestimation_ ), conservativePointAndLineRasterization( conservativePointAndLineRasterization_ ), degenerateTrianglesRasterized( degenerateTrianglesRasterized_ ), degenerateLinesRasterized( degenerateLinesRasterized_ ), fullyCoveredFragmentShaderInputVariable( fullyCoveredFragmentShaderInputVariable_ ), conservativeRasterizationPostDepthCoverage( conservativeRasterizationPostDepthCoverage_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceConservativeRasterizationPropertiesEXT( PhysicalDeviceConservativeRasterizationPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceConservativeRasterizationPropertiesEXT( VkPhysicalDeviceConservativeRasterizationPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceConservativeRasterizationPropertiesEXT & operator=( VkPhysicalDeviceConservativeRasterizationPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceConservativeRasterizationPropertiesEXT const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceConservativeRasterizationPropertiesEXT & operator=( PhysicalDeviceConservativeRasterizationPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceConservativeRasterizationPropertiesEXT ) );
- return *this;
- }
-
-
- operator VkPhysicalDeviceConservativeRasterizationPropertiesEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceConservativeRasterizationPropertiesEXT*>( this );
- }
-
- operator VkPhysicalDeviceConservativeRasterizationPropertiesEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceConservativeRasterizationPropertiesEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceConservativeRasterizationPropertiesEXT const& ) const = default;
-#else
- bool operator==( PhysicalDeviceConservativeRasterizationPropertiesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( primitiveOverestimationSize == rhs.primitiveOverestimationSize )
- && ( maxExtraPrimitiveOverestimationSize == rhs.maxExtraPrimitiveOverestimationSize )
- && ( extraPrimitiveOverestimationSizeGranularity == rhs.extraPrimitiveOverestimationSizeGranularity )
- && ( primitiveUnderestimation == rhs.primitiveUnderestimation )
- && ( conservativePointAndLineRasterization == rhs.conservativePointAndLineRasterization )
- && ( degenerateTrianglesRasterized == rhs.degenerateTrianglesRasterized )
- && ( degenerateLinesRasterized == rhs.degenerateLinesRasterized )
- && ( fullyCoveredFragmentShaderInputVariable == rhs.fullyCoveredFragmentShaderInputVariable )
- && ( conservativeRasterizationPostDepthCoverage == rhs.conservativeRasterizationPostDepthCoverage );
- }
-
- bool operator!=( PhysicalDeviceConservativeRasterizationPropertiesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceConservativeRasterizationPropertiesEXT;
- void* pNext = {};
- float primitiveOverestimationSize = {};
- float maxExtraPrimitiveOverestimationSize = {};
- float extraPrimitiveOverestimationSizeGranularity = {};
- VULKAN_HPP_NAMESPACE::Bool32 primitiveUnderestimation = {};
- VULKAN_HPP_NAMESPACE::Bool32 conservativePointAndLineRasterization = {};
- VULKAN_HPP_NAMESPACE::Bool32 degenerateTrianglesRasterized = {};
- VULKAN_HPP_NAMESPACE::Bool32 degenerateLinesRasterized = {};
- VULKAN_HPP_NAMESPACE::Bool32 fullyCoveredFragmentShaderInputVariable = {};
- VULKAN_HPP_NAMESPACE::Bool32 conservativeRasterizationPostDepthCoverage = {};
-
- };
- static_assert( sizeof( PhysicalDeviceConservativeRasterizationPropertiesEXT ) == sizeof( VkPhysicalDeviceConservativeRasterizationPropertiesEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceConservativeRasterizationPropertiesEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceConservativeRasterizationPropertiesEXT>
- {
- using Type = PhysicalDeviceConservativeRasterizationPropertiesEXT;
- };
-
- struct PhysicalDeviceCooperativeMatrixFeaturesNV
+ struct StructExtends<PhysicalDeviceSubgroupSizeControlFeaturesEXT, DeviceCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceCooperativeMatrixFeaturesNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceCooperativeMatrixFeaturesNV(VULKAN_HPP_NAMESPACE::Bool32 cooperativeMatrix_ = {}, VULKAN_HPP_NAMESPACE::Bool32 cooperativeMatrixRobustBufferAccess_ = {}) VULKAN_HPP_NOEXCEPT
- : cooperativeMatrix( cooperativeMatrix_ ), cooperativeMatrixRobustBufferAccess( cooperativeMatrixRobustBufferAccess_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceCooperativeMatrixFeaturesNV( PhysicalDeviceCooperativeMatrixFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceCooperativeMatrixFeaturesNV( VkPhysicalDeviceCooperativeMatrixFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceCooperativeMatrixFeaturesNV & operator=( VkPhysicalDeviceCooperativeMatrixFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceCooperativeMatrixFeaturesNV const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceCooperativeMatrixFeaturesNV & operator=( PhysicalDeviceCooperativeMatrixFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceCooperativeMatrixFeaturesNV ) );
- return *this;
- }
-
- PhysicalDeviceCooperativeMatrixFeaturesNV & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceCooperativeMatrixFeaturesNV & setCooperativeMatrix( VULKAN_HPP_NAMESPACE::Bool32 cooperativeMatrix_ ) VULKAN_HPP_NOEXCEPT
- {
- cooperativeMatrix = cooperativeMatrix_;
- return *this;
- }
-
- PhysicalDeviceCooperativeMatrixFeaturesNV & setCooperativeMatrixRobustBufferAccess( VULKAN_HPP_NAMESPACE::Bool32 cooperativeMatrixRobustBufferAccess_ ) VULKAN_HPP_NOEXCEPT
- {
- cooperativeMatrixRobustBufferAccess = cooperativeMatrixRobustBufferAccess_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceCooperativeMatrixFeaturesNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceCooperativeMatrixFeaturesNV*>( this );
- }
-
- operator VkPhysicalDeviceCooperativeMatrixFeaturesNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceCooperativeMatrixFeaturesNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceCooperativeMatrixFeaturesNV const& ) const = default;
-#else
- bool operator==( PhysicalDeviceCooperativeMatrixFeaturesNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( cooperativeMatrix == rhs.cooperativeMatrix )
- && ( cooperativeMatrixRobustBufferAccess == rhs.cooperativeMatrixRobustBufferAccess );
- }
-
- bool operator!=( PhysicalDeviceCooperativeMatrixFeaturesNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceCooperativeMatrixFeaturesNV;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 cooperativeMatrix = {};
- VULKAN_HPP_NAMESPACE::Bool32 cooperativeMatrixRobustBufferAccess = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceCooperativeMatrixFeaturesNV ) == sizeof( VkPhysicalDeviceCooperativeMatrixFeaturesNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceCooperativeMatrixFeaturesNV>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceCooperativeMatrixFeaturesNV>
+ struct StructExtends<PhysicalDeviceSubgroupSizeControlPropertiesEXT, PhysicalDeviceProperties2>
{
- using Type = PhysicalDeviceCooperativeMatrixFeaturesNV;
- };
-
- struct PhysicalDeviceCooperativeMatrixPropertiesNV
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceCooperativeMatrixPropertiesNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceCooperativeMatrixPropertiesNV(VULKAN_HPP_NAMESPACE::ShaderStageFlags cooperativeMatrixSupportedStages_ = {}) VULKAN_HPP_NOEXCEPT
- : cooperativeMatrixSupportedStages( cooperativeMatrixSupportedStages_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceCooperativeMatrixPropertiesNV( PhysicalDeviceCooperativeMatrixPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceCooperativeMatrixPropertiesNV( VkPhysicalDeviceCooperativeMatrixPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceCooperativeMatrixPropertiesNV & operator=( VkPhysicalDeviceCooperativeMatrixPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceCooperativeMatrixPropertiesNV const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceCooperativeMatrixPropertiesNV & operator=( PhysicalDeviceCooperativeMatrixPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceCooperativeMatrixPropertiesNV ) );
- return *this;
- }
-
-
- operator VkPhysicalDeviceCooperativeMatrixPropertiesNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceCooperativeMatrixPropertiesNV*>( this );
- }
-
- operator VkPhysicalDeviceCooperativeMatrixPropertiesNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceCooperativeMatrixPropertiesNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceCooperativeMatrixPropertiesNV const& ) const = default;
-#else
- bool operator==( PhysicalDeviceCooperativeMatrixPropertiesNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( cooperativeMatrixSupportedStages == rhs.cooperativeMatrixSupportedStages );
- }
-
- bool operator!=( PhysicalDeviceCooperativeMatrixPropertiesNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceCooperativeMatrixPropertiesNV;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::ShaderStageFlags cooperativeMatrixSupportedStages = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceCooperativeMatrixPropertiesNV ) == sizeof( VkPhysicalDeviceCooperativeMatrixPropertiesNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceCooperativeMatrixPropertiesNV>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceCooperativeMatrixPropertiesNV>
- {
- using Type = PhysicalDeviceCooperativeMatrixPropertiesNV;
- };
-
- struct PhysicalDeviceCornerSampledImageFeaturesNV
+ struct StructExtends<PhysicalDeviceSubpassShadingFeaturesHUAWEI, PhysicalDeviceFeatures2>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceCornerSampledImageFeaturesNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceCornerSampledImageFeaturesNV(VULKAN_HPP_NAMESPACE::Bool32 cornerSampledImage_ = {}) VULKAN_HPP_NOEXCEPT
- : cornerSampledImage( cornerSampledImage_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceCornerSampledImageFeaturesNV( PhysicalDeviceCornerSampledImageFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceCornerSampledImageFeaturesNV( VkPhysicalDeviceCornerSampledImageFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceCornerSampledImageFeaturesNV & operator=( VkPhysicalDeviceCornerSampledImageFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceCornerSampledImageFeaturesNV const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceCornerSampledImageFeaturesNV & operator=( PhysicalDeviceCornerSampledImageFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceCornerSampledImageFeaturesNV ) );
- return *this;
- }
-
- PhysicalDeviceCornerSampledImageFeaturesNV & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceCornerSampledImageFeaturesNV & setCornerSampledImage( VULKAN_HPP_NAMESPACE::Bool32 cornerSampledImage_ ) VULKAN_HPP_NOEXCEPT
- {
- cornerSampledImage = cornerSampledImage_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceCornerSampledImageFeaturesNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceCornerSampledImageFeaturesNV*>( this );
- }
-
- operator VkPhysicalDeviceCornerSampledImageFeaturesNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceCornerSampledImageFeaturesNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceCornerSampledImageFeaturesNV const& ) const = default;
-#else
- bool operator==( PhysicalDeviceCornerSampledImageFeaturesNV const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( cornerSampledImage == rhs.cornerSampledImage );
- }
-
- bool operator!=( PhysicalDeviceCornerSampledImageFeaturesNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceCornerSampledImageFeaturesNV;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 cornerSampledImage = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceCornerSampledImageFeaturesNV ) == sizeof( VkPhysicalDeviceCornerSampledImageFeaturesNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceCornerSampledImageFeaturesNV>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceCornerSampledImageFeaturesNV>
+ struct StructExtends<PhysicalDeviceSubpassShadingFeaturesHUAWEI, DeviceCreateInfo>
{
- using Type = PhysicalDeviceCornerSampledImageFeaturesNV;
- };
-
- struct PhysicalDeviceCoverageReductionModeFeaturesNV
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceCoverageReductionModeFeaturesNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceCoverageReductionModeFeaturesNV(VULKAN_HPP_NAMESPACE::Bool32 coverageReductionMode_ = {}) VULKAN_HPP_NOEXCEPT
- : coverageReductionMode( coverageReductionMode_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceCoverageReductionModeFeaturesNV( PhysicalDeviceCoverageReductionModeFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceCoverageReductionModeFeaturesNV( VkPhysicalDeviceCoverageReductionModeFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceCoverageReductionModeFeaturesNV & operator=( VkPhysicalDeviceCoverageReductionModeFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceCoverageReductionModeFeaturesNV const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceCoverageReductionModeFeaturesNV & operator=( PhysicalDeviceCoverageReductionModeFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceCoverageReductionModeFeaturesNV ) );
- return *this;
- }
-
- PhysicalDeviceCoverageReductionModeFeaturesNV & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceCoverageReductionModeFeaturesNV & setCoverageReductionMode( VULKAN_HPP_NAMESPACE::Bool32 coverageReductionMode_ ) VULKAN_HPP_NOEXCEPT
- {
- coverageReductionMode = coverageReductionMode_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceCoverageReductionModeFeaturesNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceCoverageReductionModeFeaturesNV*>( this );
- }
-
- operator VkPhysicalDeviceCoverageReductionModeFeaturesNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceCoverageReductionModeFeaturesNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceCoverageReductionModeFeaturesNV const& ) const = default;
-#else
- bool operator==( PhysicalDeviceCoverageReductionModeFeaturesNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( coverageReductionMode == rhs.coverageReductionMode );
- }
-
- bool operator!=( PhysicalDeviceCoverageReductionModeFeaturesNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceCoverageReductionModeFeaturesNV;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 coverageReductionMode = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceCoverageReductionModeFeaturesNV ) == sizeof( VkPhysicalDeviceCoverageReductionModeFeaturesNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceCoverageReductionModeFeaturesNV>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceCoverageReductionModeFeaturesNV>
+ struct StructExtends<PhysicalDeviceSubpassShadingPropertiesHUAWEI, PhysicalDeviceProperties2>
{
- using Type = PhysicalDeviceCoverageReductionModeFeaturesNV;
- };
-
- struct PhysicalDeviceCustomBorderColorFeaturesEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceCustomBorderColorFeaturesEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceCustomBorderColorFeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 customBorderColors_ = {}, VULKAN_HPP_NAMESPACE::Bool32 customBorderColorWithoutFormat_ = {}) VULKAN_HPP_NOEXCEPT
- : customBorderColors( customBorderColors_ ), customBorderColorWithoutFormat( customBorderColorWithoutFormat_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceCustomBorderColorFeaturesEXT( PhysicalDeviceCustomBorderColorFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceCustomBorderColorFeaturesEXT( VkPhysicalDeviceCustomBorderColorFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceCustomBorderColorFeaturesEXT & operator=( VkPhysicalDeviceCustomBorderColorFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceCustomBorderColorFeaturesEXT const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceCustomBorderColorFeaturesEXT & operator=( PhysicalDeviceCustomBorderColorFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceCustomBorderColorFeaturesEXT ) );
- return *this;
- }
-
- PhysicalDeviceCustomBorderColorFeaturesEXT & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceCustomBorderColorFeaturesEXT & setCustomBorderColors( VULKAN_HPP_NAMESPACE::Bool32 customBorderColors_ ) VULKAN_HPP_NOEXCEPT
- {
- customBorderColors = customBorderColors_;
- return *this;
- }
-
- PhysicalDeviceCustomBorderColorFeaturesEXT & setCustomBorderColorWithoutFormat( VULKAN_HPP_NAMESPACE::Bool32 customBorderColorWithoutFormat_ ) VULKAN_HPP_NOEXCEPT
- {
- customBorderColorWithoutFormat = customBorderColorWithoutFormat_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceCustomBorderColorFeaturesEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceCustomBorderColorFeaturesEXT*>( this );
- }
-
- operator VkPhysicalDeviceCustomBorderColorFeaturesEXT &() VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<VkPhysicalDeviceCustomBorderColorFeaturesEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceCustomBorderColorFeaturesEXT const& ) const = default;
-#else
- bool operator==( PhysicalDeviceCustomBorderColorFeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( customBorderColors == rhs.customBorderColors )
- && ( customBorderColorWithoutFormat == rhs.customBorderColorWithoutFormat );
- }
-
- bool operator!=( PhysicalDeviceCustomBorderColorFeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceCustomBorderColorFeaturesEXT;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 customBorderColors = {};
- VULKAN_HPP_NAMESPACE::Bool32 customBorderColorWithoutFormat = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceCustomBorderColorFeaturesEXT ) == sizeof( VkPhysicalDeviceCustomBorderColorFeaturesEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceCustomBorderColorFeaturesEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceCustomBorderColorFeaturesEXT>
+ struct StructExtends<PhysicalDeviceSynchronization2FeaturesKHR, PhysicalDeviceFeatures2>
{
- using Type = PhysicalDeviceCustomBorderColorFeaturesEXT;
- };
-
- struct PhysicalDeviceCustomBorderColorPropertiesEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceCustomBorderColorPropertiesEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceCustomBorderColorPropertiesEXT(uint32_t maxCustomBorderColorSamplers_ = {}) VULKAN_HPP_NOEXCEPT
- : maxCustomBorderColorSamplers( maxCustomBorderColorSamplers_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceCustomBorderColorPropertiesEXT( PhysicalDeviceCustomBorderColorPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceCustomBorderColorPropertiesEXT( VkPhysicalDeviceCustomBorderColorPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceCustomBorderColorPropertiesEXT & operator=( VkPhysicalDeviceCustomBorderColorPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceCustomBorderColorPropertiesEXT const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceCustomBorderColorPropertiesEXT & operator=( PhysicalDeviceCustomBorderColorPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceCustomBorderColorPropertiesEXT ) );
- return *this;
- }
-
-
- operator VkPhysicalDeviceCustomBorderColorPropertiesEXT const&() const VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<const VkPhysicalDeviceCustomBorderColorPropertiesEXT*>( this );
- }
-
- operator VkPhysicalDeviceCustomBorderColorPropertiesEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceCustomBorderColorPropertiesEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceCustomBorderColorPropertiesEXT const& ) const = default;
-#else
- bool operator==( PhysicalDeviceCustomBorderColorPropertiesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( maxCustomBorderColorSamplers == rhs.maxCustomBorderColorSamplers );
- }
-
- bool operator!=( PhysicalDeviceCustomBorderColorPropertiesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceCustomBorderColorPropertiesEXT;
- void* pNext = {};
- uint32_t maxCustomBorderColorSamplers = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceCustomBorderColorPropertiesEXT ) == sizeof( VkPhysicalDeviceCustomBorderColorPropertiesEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceCustomBorderColorPropertiesEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceCustomBorderColorPropertiesEXT>
- {
- using Type = PhysicalDeviceCustomBorderColorPropertiesEXT;
- };
-
- struct PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV
+ struct StructExtends<PhysicalDeviceSynchronization2FeaturesKHR, DeviceCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV(VULKAN_HPP_NAMESPACE::Bool32 dedicatedAllocationImageAliasing_ = {}) VULKAN_HPP_NOEXCEPT
- : dedicatedAllocationImageAliasing( dedicatedAllocationImageAliasing_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV( PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV( VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV & operator=( VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV & operator=( PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV ) );
- return *this;
- }
-
- PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV & setDedicatedAllocationImageAliasing( VULKAN_HPP_NAMESPACE::Bool32 dedicatedAllocationImageAliasing_ ) VULKAN_HPP_NOEXCEPT
- {
- dedicatedAllocationImageAliasing = dedicatedAllocationImageAliasing_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV*>( this );
- }
-
- operator VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV &() VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV const& ) const = default;
-#else
- bool operator==( PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( dedicatedAllocationImageAliasing == rhs.dedicatedAllocationImageAliasing );
- }
-
- bool operator!=( PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 dedicatedAllocationImageAliasing = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV ) == sizeof( VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV>
+ struct StructExtends<PhysicalDeviceTexelBufferAlignmentFeaturesEXT, PhysicalDeviceFeatures2>
{
- using Type = PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV;
- };
-
- struct PhysicalDeviceDepthClipEnableFeaturesEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceDepthClipEnableFeaturesEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceDepthClipEnableFeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 depthClipEnable_ = {}) VULKAN_HPP_NOEXCEPT
- : depthClipEnable( depthClipEnable_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceDepthClipEnableFeaturesEXT( PhysicalDeviceDepthClipEnableFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceDepthClipEnableFeaturesEXT( VkPhysicalDeviceDepthClipEnableFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceDepthClipEnableFeaturesEXT & operator=( VkPhysicalDeviceDepthClipEnableFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceDepthClipEnableFeaturesEXT const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceDepthClipEnableFeaturesEXT & operator=( PhysicalDeviceDepthClipEnableFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceDepthClipEnableFeaturesEXT ) );
- return *this;
- }
-
- PhysicalDeviceDepthClipEnableFeaturesEXT & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceDepthClipEnableFeaturesEXT & setDepthClipEnable( VULKAN_HPP_NAMESPACE::Bool32 depthClipEnable_ ) VULKAN_HPP_NOEXCEPT
- {
- depthClipEnable = depthClipEnable_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceDepthClipEnableFeaturesEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceDepthClipEnableFeaturesEXT*>( this );
- }
-
- operator VkPhysicalDeviceDepthClipEnableFeaturesEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceDepthClipEnableFeaturesEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceDepthClipEnableFeaturesEXT const& ) const = default;
-#else
- bool operator==( PhysicalDeviceDepthClipEnableFeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( depthClipEnable == rhs.depthClipEnable );
- }
-
- bool operator!=( PhysicalDeviceDepthClipEnableFeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceDepthClipEnableFeaturesEXT;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 depthClipEnable = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceDepthClipEnableFeaturesEXT ) == sizeof( VkPhysicalDeviceDepthClipEnableFeaturesEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceDepthClipEnableFeaturesEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceDepthClipEnableFeaturesEXT>
+ struct StructExtends<PhysicalDeviceTexelBufferAlignmentFeaturesEXT, DeviceCreateInfo>
{
- using Type = PhysicalDeviceDepthClipEnableFeaturesEXT;
- };
-
- struct PhysicalDeviceDepthStencilResolveProperties
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceDepthStencilResolveProperties;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceDepthStencilResolveProperties(VULKAN_HPP_NAMESPACE::ResolveModeFlags supportedDepthResolveModes_ = {}, VULKAN_HPP_NAMESPACE::ResolveModeFlags supportedStencilResolveModes_ = {}, VULKAN_HPP_NAMESPACE::Bool32 independentResolveNone_ = {}, VULKAN_HPP_NAMESPACE::Bool32 independentResolve_ = {}) VULKAN_HPP_NOEXCEPT
- : supportedDepthResolveModes( supportedDepthResolveModes_ ), supportedStencilResolveModes( supportedStencilResolveModes_ ), independentResolveNone( independentResolveNone_ ), independentResolve( independentResolve_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceDepthStencilResolveProperties( PhysicalDeviceDepthStencilResolveProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceDepthStencilResolveProperties( VkPhysicalDeviceDepthStencilResolveProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceDepthStencilResolveProperties & operator=( VkPhysicalDeviceDepthStencilResolveProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceDepthStencilResolveProperties const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceDepthStencilResolveProperties & operator=( PhysicalDeviceDepthStencilResolveProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceDepthStencilResolveProperties ) );
- return *this;
- }
-
-
- operator VkPhysicalDeviceDepthStencilResolveProperties const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceDepthStencilResolveProperties*>( this );
- }
-
- operator VkPhysicalDeviceDepthStencilResolveProperties &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceDepthStencilResolveProperties*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceDepthStencilResolveProperties const& ) const = default;
-#else
- bool operator==( PhysicalDeviceDepthStencilResolveProperties const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( supportedDepthResolveModes == rhs.supportedDepthResolveModes )
- && ( supportedStencilResolveModes == rhs.supportedStencilResolveModes )
- && ( independentResolveNone == rhs.independentResolveNone )
- && ( independentResolve == rhs.independentResolve );
- }
-
- bool operator!=( PhysicalDeviceDepthStencilResolveProperties const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceDepthStencilResolveProperties;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::ResolveModeFlags supportedDepthResolveModes = {};
- VULKAN_HPP_NAMESPACE::ResolveModeFlags supportedStencilResolveModes = {};
- VULKAN_HPP_NAMESPACE::Bool32 independentResolveNone = {};
- VULKAN_HPP_NAMESPACE::Bool32 independentResolve = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceDepthStencilResolveProperties ) == sizeof( VkPhysicalDeviceDepthStencilResolveProperties ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceDepthStencilResolveProperties>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceDepthStencilResolveProperties>
+ struct StructExtends<PhysicalDeviceTexelBufferAlignmentPropertiesEXT, PhysicalDeviceProperties2>
{
- using Type = PhysicalDeviceDepthStencilResolveProperties;
- };
- using PhysicalDeviceDepthStencilResolvePropertiesKHR = PhysicalDeviceDepthStencilResolveProperties;
-
- struct PhysicalDeviceDescriptorIndexingFeatures
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceDescriptorIndexingFeatures;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceDescriptorIndexingFeatures(VULKAN_HPP_NAMESPACE::Bool32 shaderInputAttachmentArrayDynamicIndexing_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderUniformTexelBufferArrayDynamicIndexing_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderStorageTexelBufferArrayDynamicIndexing_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderUniformBufferArrayNonUniformIndexing_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderSampledImageArrayNonUniformIndexing_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderStorageBufferArrayNonUniformIndexing_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageArrayNonUniformIndexing_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderInputAttachmentArrayNonUniformIndexing_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderUniformTexelBufferArrayNonUniformIndexing_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderStorageTexelBufferArrayNonUniformIndexing_ = {}, VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingUniformBufferUpdateAfterBind_ = {}, VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingSampledImageUpdateAfterBind_ = {}, VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingStorageImageUpdateAfterBind_ = {}, VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingStorageBufferUpdateAfterBind_ = {}, VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingUniformTexelBufferUpdateAfterBind_ = {}, VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingStorageTexelBufferUpdateAfterBind_ = {}, VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingUpdateUnusedWhilePending_ = {}, VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingPartiallyBound_ = {}, VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingVariableDescriptorCount_ = {}, VULKAN_HPP_NAMESPACE::Bool32 runtimeDescriptorArray_ = {}) VULKAN_HPP_NOEXCEPT
- : shaderInputAttachmentArrayDynamicIndexing( shaderInputAttachmentArrayDynamicIndexing_ ), shaderUniformTexelBufferArrayDynamicIndexing( shaderUniformTexelBufferArrayDynamicIndexing_ ), shaderStorageTexelBufferArrayDynamicIndexing( shaderStorageTexelBufferArrayDynamicIndexing_ ), shaderUniformBufferArrayNonUniformIndexing( shaderUniformBufferArrayNonUniformIndexing_ ), shaderSampledImageArrayNonUniformIndexing( shaderSampledImageArrayNonUniformIndexing_ ), shaderStorageBufferArrayNonUniformIndexing( shaderStorageBufferArrayNonUniformIndexing_ ), shaderStorageImageArrayNonUniformIndexing( shaderStorageImageArrayNonUniformIndexing_ ), shaderInputAttachmentArrayNonUniformIndexing( shaderInputAttachmentArrayNonUniformIndexing_ ), shaderUniformTexelBufferArrayNonUniformIndexing( shaderUniformTexelBufferArrayNonUniformIndexing_ ), shaderStorageTexelBufferArrayNonUniformIndexing( shaderStorageTexelBufferArrayNonUniformIndexing_ ), descriptorBindingUniformBufferUpdateAfterBind( descriptorBindingUniformBufferUpdateAfterBind_ ), descriptorBindingSampledImageUpdateAfterBind( descriptorBindingSampledImageUpdateAfterBind_ ), descriptorBindingStorageImageUpdateAfterBind( descriptorBindingStorageImageUpdateAfterBind_ ), descriptorBindingStorageBufferUpdateAfterBind( descriptorBindingStorageBufferUpdateAfterBind_ ), descriptorBindingUniformTexelBufferUpdateAfterBind( descriptorBindingUniformTexelBufferUpdateAfterBind_ ), descriptorBindingStorageTexelBufferUpdateAfterBind( descriptorBindingStorageTexelBufferUpdateAfterBind_ ), descriptorBindingUpdateUnusedWhilePending( descriptorBindingUpdateUnusedWhilePending_ ), descriptorBindingPartiallyBound( descriptorBindingPartiallyBound_ ), descriptorBindingVariableDescriptorCount( descriptorBindingVariableDescriptorCount_ ), runtimeDescriptorArray( runtimeDescriptorArray_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceDescriptorIndexingFeatures( PhysicalDeviceDescriptorIndexingFeatures const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceDescriptorIndexingFeatures( VkPhysicalDeviceDescriptorIndexingFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceDescriptorIndexingFeatures & operator=( VkPhysicalDeviceDescriptorIndexingFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceDescriptorIndexingFeatures const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceDescriptorIndexingFeatures & operator=( PhysicalDeviceDescriptorIndexingFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceDescriptorIndexingFeatures ) );
- return *this;
- }
-
- PhysicalDeviceDescriptorIndexingFeatures & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceDescriptorIndexingFeatures & setShaderInputAttachmentArrayDynamicIndexing( VULKAN_HPP_NAMESPACE::Bool32 shaderInputAttachmentArrayDynamicIndexing_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderInputAttachmentArrayDynamicIndexing = shaderInputAttachmentArrayDynamicIndexing_;
- return *this;
- }
-
- PhysicalDeviceDescriptorIndexingFeatures & setShaderUniformTexelBufferArrayDynamicIndexing( VULKAN_HPP_NAMESPACE::Bool32 shaderUniformTexelBufferArrayDynamicIndexing_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderUniformTexelBufferArrayDynamicIndexing = shaderUniformTexelBufferArrayDynamicIndexing_;
- return *this;
- }
-
- PhysicalDeviceDescriptorIndexingFeatures & setShaderStorageTexelBufferArrayDynamicIndexing( VULKAN_HPP_NAMESPACE::Bool32 shaderStorageTexelBufferArrayDynamicIndexing_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderStorageTexelBufferArrayDynamicIndexing = shaderStorageTexelBufferArrayDynamicIndexing_;
- return *this;
- }
-
- PhysicalDeviceDescriptorIndexingFeatures & setShaderUniformBufferArrayNonUniformIndexing( VULKAN_HPP_NAMESPACE::Bool32 shaderUniformBufferArrayNonUniformIndexing_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderUniformBufferArrayNonUniformIndexing = shaderUniformBufferArrayNonUniformIndexing_;
- return *this;
- }
-
- PhysicalDeviceDescriptorIndexingFeatures & setShaderSampledImageArrayNonUniformIndexing( VULKAN_HPP_NAMESPACE::Bool32 shaderSampledImageArrayNonUniformIndexing_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderSampledImageArrayNonUniformIndexing = shaderSampledImageArrayNonUniformIndexing_;
- return *this;
- }
-
- PhysicalDeviceDescriptorIndexingFeatures & setShaderStorageBufferArrayNonUniformIndexing( VULKAN_HPP_NAMESPACE::Bool32 shaderStorageBufferArrayNonUniformIndexing_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderStorageBufferArrayNonUniformIndexing = shaderStorageBufferArrayNonUniformIndexing_;
- return *this;
- }
-
- PhysicalDeviceDescriptorIndexingFeatures & setShaderStorageImageArrayNonUniformIndexing( VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageArrayNonUniformIndexing_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderStorageImageArrayNonUniformIndexing = shaderStorageImageArrayNonUniformIndexing_;
- return *this;
- }
-
- PhysicalDeviceDescriptorIndexingFeatures & setShaderInputAttachmentArrayNonUniformIndexing( VULKAN_HPP_NAMESPACE::Bool32 shaderInputAttachmentArrayNonUniformIndexing_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderInputAttachmentArrayNonUniformIndexing = shaderInputAttachmentArrayNonUniformIndexing_;
- return *this;
- }
-
- PhysicalDeviceDescriptorIndexingFeatures & setShaderUniformTexelBufferArrayNonUniformIndexing( VULKAN_HPP_NAMESPACE::Bool32 shaderUniformTexelBufferArrayNonUniformIndexing_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderUniformTexelBufferArrayNonUniformIndexing = shaderUniformTexelBufferArrayNonUniformIndexing_;
- return *this;
- }
-
- PhysicalDeviceDescriptorIndexingFeatures & setShaderStorageTexelBufferArrayNonUniformIndexing( VULKAN_HPP_NAMESPACE::Bool32 shaderStorageTexelBufferArrayNonUniformIndexing_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderStorageTexelBufferArrayNonUniformIndexing = shaderStorageTexelBufferArrayNonUniformIndexing_;
- return *this;
- }
-
- PhysicalDeviceDescriptorIndexingFeatures & setDescriptorBindingUniformBufferUpdateAfterBind( VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingUniformBufferUpdateAfterBind_ ) VULKAN_HPP_NOEXCEPT
- {
- descriptorBindingUniformBufferUpdateAfterBind = descriptorBindingUniformBufferUpdateAfterBind_;
- return *this;
- }
-
- PhysicalDeviceDescriptorIndexingFeatures & setDescriptorBindingSampledImageUpdateAfterBind( VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingSampledImageUpdateAfterBind_ ) VULKAN_HPP_NOEXCEPT
- {
- descriptorBindingSampledImageUpdateAfterBind = descriptorBindingSampledImageUpdateAfterBind_;
- return *this;
- }
-
- PhysicalDeviceDescriptorIndexingFeatures & setDescriptorBindingStorageImageUpdateAfterBind( VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingStorageImageUpdateAfterBind_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- descriptorBindingStorageImageUpdateAfterBind = descriptorBindingStorageImageUpdateAfterBind_;
- return *this;
- }
-
- PhysicalDeviceDescriptorIndexingFeatures & setDescriptorBindingStorageBufferUpdateAfterBind( VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingStorageBufferUpdateAfterBind_ ) VULKAN_HPP_NOEXCEPT
- {
- descriptorBindingStorageBufferUpdateAfterBind = descriptorBindingStorageBufferUpdateAfterBind_;
- return *this;
- }
-
- PhysicalDeviceDescriptorIndexingFeatures & setDescriptorBindingUniformTexelBufferUpdateAfterBind( VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingUniformTexelBufferUpdateAfterBind_ ) VULKAN_HPP_NOEXCEPT
- {
- descriptorBindingUniformTexelBufferUpdateAfterBind = descriptorBindingUniformTexelBufferUpdateAfterBind_;
- return *this;
- }
-
- PhysicalDeviceDescriptorIndexingFeatures & setDescriptorBindingStorageTexelBufferUpdateAfterBind( VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingStorageTexelBufferUpdateAfterBind_ ) VULKAN_HPP_NOEXCEPT
- {
- descriptorBindingStorageTexelBufferUpdateAfterBind = descriptorBindingStorageTexelBufferUpdateAfterBind_;
- return *this;
- }
-
- PhysicalDeviceDescriptorIndexingFeatures & setDescriptorBindingUpdateUnusedWhilePending( VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingUpdateUnusedWhilePending_ ) VULKAN_HPP_NOEXCEPT
- {
- descriptorBindingUpdateUnusedWhilePending = descriptorBindingUpdateUnusedWhilePending_;
- return *this;
- }
-
- PhysicalDeviceDescriptorIndexingFeatures & setDescriptorBindingPartiallyBound( VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingPartiallyBound_ ) VULKAN_HPP_NOEXCEPT
- {
- descriptorBindingPartiallyBound = descriptorBindingPartiallyBound_;
- return *this;
- }
-
- PhysicalDeviceDescriptorIndexingFeatures & setDescriptorBindingVariableDescriptorCount( VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingVariableDescriptorCount_ ) VULKAN_HPP_NOEXCEPT
- {
- descriptorBindingVariableDescriptorCount = descriptorBindingVariableDescriptorCount_;
- return *this;
- }
-
- PhysicalDeviceDescriptorIndexingFeatures & setRuntimeDescriptorArray( VULKAN_HPP_NAMESPACE::Bool32 runtimeDescriptorArray_ ) VULKAN_HPP_NOEXCEPT
- {
- runtimeDescriptorArray = runtimeDescriptorArray_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceDescriptorIndexingFeatures const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceDescriptorIndexingFeatures*>( this );
- }
-
- operator VkPhysicalDeviceDescriptorIndexingFeatures &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceDescriptorIndexingFeatures*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceDescriptorIndexingFeatures const& ) const = default;
-#else
- bool operator==( PhysicalDeviceDescriptorIndexingFeatures const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( shaderInputAttachmentArrayDynamicIndexing == rhs.shaderInputAttachmentArrayDynamicIndexing )
- && ( shaderUniformTexelBufferArrayDynamicIndexing == rhs.shaderUniformTexelBufferArrayDynamicIndexing )
- && ( shaderStorageTexelBufferArrayDynamicIndexing == rhs.shaderStorageTexelBufferArrayDynamicIndexing )
- && ( shaderUniformBufferArrayNonUniformIndexing == rhs.shaderUniformBufferArrayNonUniformIndexing )
- && ( shaderSampledImageArrayNonUniformIndexing == rhs.shaderSampledImageArrayNonUniformIndexing )
- && ( shaderStorageBufferArrayNonUniformIndexing == rhs.shaderStorageBufferArrayNonUniformIndexing )
- && ( shaderStorageImageArrayNonUniformIndexing == rhs.shaderStorageImageArrayNonUniformIndexing )
- && ( shaderInputAttachmentArrayNonUniformIndexing == rhs.shaderInputAttachmentArrayNonUniformIndexing )
- && ( shaderUniformTexelBufferArrayNonUniformIndexing == rhs.shaderUniformTexelBufferArrayNonUniformIndexing )
- && ( shaderStorageTexelBufferArrayNonUniformIndexing == rhs.shaderStorageTexelBufferArrayNonUniformIndexing )
- && ( descriptorBindingUniformBufferUpdateAfterBind == rhs.descriptorBindingUniformBufferUpdateAfterBind )
- && ( descriptorBindingSampledImageUpdateAfterBind == rhs.descriptorBindingSampledImageUpdateAfterBind )
- && ( descriptorBindingStorageImageUpdateAfterBind == rhs.descriptorBindingStorageImageUpdateAfterBind )
- && ( descriptorBindingStorageBufferUpdateAfterBind == rhs.descriptorBindingStorageBufferUpdateAfterBind )
- && ( descriptorBindingUniformTexelBufferUpdateAfterBind == rhs.descriptorBindingUniformTexelBufferUpdateAfterBind )
- && ( descriptorBindingStorageTexelBufferUpdateAfterBind == rhs.descriptorBindingStorageTexelBufferUpdateAfterBind )
- && ( descriptorBindingUpdateUnusedWhilePending == rhs.descriptorBindingUpdateUnusedWhilePending )
- && ( descriptorBindingPartiallyBound == rhs.descriptorBindingPartiallyBound )
- && ( descriptorBindingVariableDescriptorCount == rhs.descriptorBindingVariableDescriptorCount )
- && ( runtimeDescriptorArray == rhs.runtimeDescriptorArray );
- }
-
- bool operator!=( PhysicalDeviceDescriptorIndexingFeatures const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceDescriptorIndexingFeatures;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderInputAttachmentArrayDynamicIndexing = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderUniformTexelBufferArrayDynamicIndexing = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderStorageTexelBufferArrayDynamicIndexing = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderUniformBufferArrayNonUniformIndexing = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderSampledImageArrayNonUniformIndexing = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderStorageBufferArrayNonUniformIndexing = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageArrayNonUniformIndexing = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderInputAttachmentArrayNonUniformIndexing = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderUniformTexelBufferArrayNonUniformIndexing = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderStorageTexelBufferArrayNonUniformIndexing = {};
- VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingUniformBufferUpdateAfterBind = {};
- VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingSampledImageUpdateAfterBind = {};
- VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingStorageImageUpdateAfterBind = {};
- VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingStorageBufferUpdateAfterBind = {};
- VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingUniformTexelBufferUpdateAfterBind = {};
- VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingStorageTexelBufferUpdateAfterBind = {};
- VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingUpdateUnusedWhilePending = {};
- VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingPartiallyBound = {};
- VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingVariableDescriptorCount = {};
- VULKAN_HPP_NAMESPACE::Bool32 runtimeDescriptorArray = {};
-
- };
- static_assert( sizeof( PhysicalDeviceDescriptorIndexingFeatures ) == sizeof( VkPhysicalDeviceDescriptorIndexingFeatures ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceDescriptorIndexingFeatures>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceDescriptorIndexingFeatures>
- {
- using Type = PhysicalDeviceDescriptorIndexingFeatures;
+ value = true
+ };
};
- using PhysicalDeviceDescriptorIndexingFeaturesEXT = PhysicalDeviceDescriptorIndexingFeatures;
-
- struct PhysicalDeviceDescriptorIndexingProperties
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceDescriptorIndexingProperties;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceDescriptorIndexingProperties(uint32_t maxUpdateAfterBindDescriptorsInAllPools_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderUniformBufferArrayNonUniformIndexingNative_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderSampledImageArrayNonUniformIndexingNative_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderStorageBufferArrayNonUniformIndexingNative_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageArrayNonUniformIndexingNative_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderInputAttachmentArrayNonUniformIndexingNative_ = {}, VULKAN_HPP_NAMESPACE::Bool32 robustBufferAccessUpdateAfterBind_ = {}, VULKAN_HPP_NAMESPACE::Bool32 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_ = {}) VULKAN_HPP_NOEXCEPT
- : maxUpdateAfterBindDescriptorsInAllPools( maxUpdateAfterBindDescriptorsInAllPools_ ), shaderUniformBufferArrayNonUniformIndexingNative( shaderUniformBufferArrayNonUniformIndexingNative_ ), shaderSampledImageArrayNonUniformIndexingNative( shaderSampledImageArrayNonUniformIndexingNative_ ), shaderStorageBufferArrayNonUniformIndexingNative( shaderStorageBufferArrayNonUniformIndexingNative_ ), shaderStorageImageArrayNonUniformIndexingNative( shaderStorageImageArrayNonUniformIndexingNative_ ), shaderInputAttachmentArrayNonUniformIndexingNative( shaderInputAttachmentArrayNonUniformIndexingNative_ ), robustBufferAccessUpdateAfterBind( robustBufferAccessUpdateAfterBind_ ), quadDivergentImplicitLod( quadDivergentImplicitLod_ ), maxPerStageDescriptorUpdateAfterBindSamplers( maxPerStageDescriptorUpdateAfterBindSamplers_ ), maxPerStageDescriptorUpdateAfterBindUniformBuffers( maxPerStageDescriptorUpdateAfterBindUniformBuffers_ ), maxPerStageDescriptorUpdateAfterBindStorageBuffers( maxPerStageDescriptorUpdateAfterBindStorageBuffers_ ), maxPerStageDescriptorUpdateAfterBindSampledImages( maxPerStageDescriptorUpdateAfterBindSampledImages_ ), maxPerStageDescriptorUpdateAfterBindStorageImages( maxPerStageDescriptorUpdateAfterBindStorageImages_ ), maxPerStageDescriptorUpdateAfterBindInputAttachments( maxPerStageDescriptorUpdateAfterBindInputAttachments_ ), maxPerStageUpdateAfterBindResources( maxPerStageUpdateAfterBindResources_ ), maxDescriptorSetUpdateAfterBindSamplers( maxDescriptorSetUpdateAfterBindSamplers_ ), maxDescriptorSetUpdateAfterBindUniformBuffers( maxDescriptorSetUpdateAfterBindUniformBuffers_ ), maxDescriptorSetUpdateAfterBindUniformBuffersDynamic( maxDescriptorSetUpdateAfterBindUniformBuffersDynamic_ ), maxDescriptorSetUpdateAfterBindStorageBuffers( maxDescriptorSetUpdateAfterBindStorageBuffers_ ), maxDescriptorSetUpdateAfterBindStorageBuffersDynamic( maxDescriptorSetUpdateAfterBindStorageBuffersDynamic_ ), maxDescriptorSetUpdateAfterBindSampledImages( maxDescriptorSetUpdateAfterBindSampledImages_ ), maxDescriptorSetUpdateAfterBindStorageImages( maxDescriptorSetUpdateAfterBindStorageImages_ ), maxDescriptorSetUpdateAfterBindInputAttachments( maxDescriptorSetUpdateAfterBindInputAttachments_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceDescriptorIndexingProperties( PhysicalDeviceDescriptorIndexingProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceDescriptorIndexingProperties( VkPhysicalDeviceDescriptorIndexingProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceDescriptorIndexingProperties & operator=( VkPhysicalDeviceDescriptorIndexingProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceDescriptorIndexingProperties const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceDescriptorIndexingProperties & operator=( PhysicalDeviceDescriptorIndexingProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceDescriptorIndexingProperties ) );
- return *this;
- }
-
-
- operator VkPhysicalDeviceDescriptorIndexingProperties const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceDescriptorIndexingProperties*>( this );
- }
-
- operator VkPhysicalDeviceDescriptorIndexingProperties &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceDescriptorIndexingProperties*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceDescriptorIndexingProperties const& ) const = default;
-#else
- bool operator==( PhysicalDeviceDescriptorIndexingProperties const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( maxUpdateAfterBindDescriptorsInAllPools == rhs.maxUpdateAfterBindDescriptorsInAllPools )
- && ( shaderUniformBufferArrayNonUniformIndexingNative == rhs.shaderUniformBufferArrayNonUniformIndexingNative )
- && ( shaderSampledImageArrayNonUniformIndexingNative == rhs.shaderSampledImageArrayNonUniformIndexingNative )
- && ( shaderStorageBufferArrayNonUniformIndexingNative == rhs.shaderStorageBufferArrayNonUniformIndexingNative )
- && ( shaderStorageImageArrayNonUniformIndexingNative == rhs.shaderStorageImageArrayNonUniformIndexingNative )
- && ( shaderInputAttachmentArrayNonUniformIndexingNative == rhs.shaderInputAttachmentArrayNonUniformIndexingNative )
- && ( robustBufferAccessUpdateAfterBind == rhs.robustBufferAccessUpdateAfterBind )
- && ( quadDivergentImplicitLod == rhs.quadDivergentImplicitLod )
- && ( maxPerStageDescriptorUpdateAfterBindSamplers == rhs.maxPerStageDescriptorUpdateAfterBindSamplers )
- && ( maxPerStageDescriptorUpdateAfterBindUniformBuffers == rhs.maxPerStageDescriptorUpdateAfterBindUniformBuffers )
- && ( maxPerStageDescriptorUpdateAfterBindStorageBuffers == rhs.maxPerStageDescriptorUpdateAfterBindStorageBuffers )
- && ( maxPerStageDescriptorUpdateAfterBindSampledImages == rhs.maxPerStageDescriptorUpdateAfterBindSampledImages )
- && ( maxPerStageDescriptorUpdateAfterBindStorageImages == rhs.maxPerStageDescriptorUpdateAfterBindStorageImages )
- && ( maxPerStageDescriptorUpdateAfterBindInputAttachments == rhs.maxPerStageDescriptorUpdateAfterBindInputAttachments )
- && ( maxPerStageUpdateAfterBindResources == rhs.maxPerStageUpdateAfterBindResources )
- && ( maxDescriptorSetUpdateAfterBindSamplers == rhs.maxDescriptorSetUpdateAfterBindSamplers )
- && ( maxDescriptorSetUpdateAfterBindUniformBuffers == rhs.maxDescriptorSetUpdateAfterBindUniformBuffers )
- && ( maxDescriptorSetUpdateAfterBindUniformBuffersDynamic == rhs.maxDescriptorSetUpdateAfterBindUniformBuffersDynamic )
- && ( maxDescriptorSetUpdateAfterBindStorageBuffers == rhs.maxDescriptorSetUpdateAfterBindStorageBuffers )
- && ( maxDescriptorSetUpdateAfterBindStorageBuffersDynamic == rhs.maxDescriptorSetUpdateAfterBindStorageBuffersDynamic )
- && ( maxDescriptorSetUpdateAfterBindSampledImages == rhs.maxDescriptorSetUpdateAfterBindSampledImages )
- && ( maxDescriptorSetUpdateAfterBindStorageImages == rhs.maxDescriptorSetUpdateAfterBindStorageImages )
- && ( maxDescriptorSetUpdateAfterBindInputAttachments == rhs.maxDescriptorSetUpdateAfterBindInputAttachments );
- }
-
- bool operator!=( PhysicalDeviceDescriptorIndexingProperties const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceDescriptorIndexingProperties;
- void* pNext = {};
- uint32_t maxUpdateAfterBindDescriptorsInAllPools = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderUniformBufferArrayNonUniformIndexingNative = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderSampledImageArrayNonUniformIndexingNative = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderStorageBufferArrayNonUniformIndexingNative = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageArrayNonUniformIndexingNative = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderInputAttachmentArrayNonUniformIndexingNative = {};
- VULKAN_HPP_NAMESPACE::Bool32 robustBufferAccessUpdateAfterBind = {};
- VULKAN_HPP_NAMESPACE::Bool32 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 = {};
-
- };
- static_assert( sizeof( PhysicalDeviceDescriptorIndexingProperties ) == sizeof( VkPhysicalDeviceDescriptorIndexingProperties ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceDescriptorIndexingProperties>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceDescriptorIndexingProperties>
- {
- using Type = PhysicalDeviceDescriptorIndexingProperties;
- };
- using PhysicalDeviceDescriptorIndexingPropertiesEXT = PhysicalDeviceDescriptorIndexingProperties;
-
- struct PhysicalDeviceDeviceGeneratedCommandsFeaturesNV
+ struct StructExtends<PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT, PhysicalDeviceFeatures2>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceDeviceGeneratedCommandsFeaturesNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceDeviceGeneratedCommandsFeaturesNV(VULKAN_HPP_NAMESPACE::Bool32 deviceGeneratedCommands_ = {}) VULKAN_HPP_NOEXCEPT
- : deviceGeneratedCommands( deviceGeneratedCommands_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceDeviceGeneratedCommandsFeaturesNV( PhysicalDeviceDeviceGeneratedCommandsFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceDeviceGeneratedCommandsFeaturesNV( VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceDeviceGeneratedCommandsFeaturesNV & operator=( VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceDeviceGeneratedCommandsFeaturesNV const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceDeviceGeneratedCommandsFeaturesNV & operator=( PhysicalDeviceDeviceGeneratedCommandsFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceDeviceGeneratedCommandsFeaturesNV ) );
- return *this;
- }
-
- PhysicalDeviceDeviceGeneratedCommandsFeaturesNV & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceDeviceGeneratedCommandsFeaturesNV & setDeviceGeneratedCommands( VULKAN_HPP_NAMESPACE::Bool32 deviceGeneratedCommands_ ) VULKAN_HPP_NOEXCEPT
- {
- deviceGeneratedCommands = deviceGeneratedCommands_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV*>( this );
- }
-
- operator VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceDeviceGeneratedCommandsFeaturesNV const& ) const = default;
-#else
- bool operator==( PhysicalDeviceDeviceGeneratedCommandsFeaturesNV const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( deviceGeneratedCommands == rhs.deviceGeneratedCommands );
- }
-
- bool operator!=( PhysicalDeviceDeviceGeneratedCommandsFeaturesNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceDeviceGeneratedCommandsFeaturesNV;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 deviceGeneratedCommands = {};
-
- };
- static_assert( sizeof( PhysicalDeviceDeviceGeneratedCommandsFeaturesNV ) == sizeof( VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceDeviceGeneratedCommandsFeaturesNV>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceDeviceGeneratedCommandsFeaturesNV>
- {
- using Type = PhysicalDeviceDeviceGeneratedCommandsFeaturesNV;
+ value = true
+ };
};
-
- struct PhysicalDeviceDeviceGeneratedCommandsPropertiesNV
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceDeviceGeneratedCommandsPropertiesNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceDeviceGeneratedCommandsPropertiesNV(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_ = {}) VULKAN_HPP_NOEXCEPT
- : maxGraphicsShaderGroupCount( maxGraphicsShaderGroupCount_ ), maxIndirectSequenceCount( maxIndirectSequenceCount_ ), maxIndirectCommandsTokenCount( maxIndirectCommandsTokenCount_ ), maxIndirectCommandsStreamCount( maxIndirectCommandsStreamCount_ ), maxIndirectCommandsTokenOffset( maxIndirectCommandsTokenOffset_ ), maxIndirectCommandsStreamStride( maxIndirectCommandsStreamStride_ ), minSequencesCountBufferOffsetAlignment( minSequencesCountBufferOffsetAlignment_ ), minSequencesIndexBufferOffsetAlignment( minSequencesIndexBufferOffsetAlignment_ ), minIndirectCommandsBufferOffsetAlignment( minIndirectCommandsBufferOffsetAlignment_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceDeviceGeneratedCommandsPropertiesNV( PhysicalDeviceDeviceGeneratedCommandsPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceDeviceGeneratedCommandsPropertiesNV( VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceDeviceGeneratedCommandsPropertiesNV & operator=( VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceDeviceGeneratedCommandsPropertiesNV const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceDeviceGeneratedCommandsPropertiesNV & operator=( PhysicalDeviceDeviceGeneratedCommandsPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceDeviceGeneratedCommandsPropertiesNV ) );
- return *this;
- }
-
-
- operator VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV*>( this );
- }
-
- operator VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceDeviceGeneratedCommandsPropertiesNV const& ) const = default;
-#else
- bool operator==( PhysicalDeviceDeviceGeneratedCommandsPropertiesNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( maxGraphicsShaderGroupCount == rhs.maxGraphicsShaderGroupCount )
- && ( maxIndirectSequenceCount == rhs.maxIndirectSequenceCount )
- && ( maxIndirectCommandsTokenCount == rhs.maxIndirectCommandsTokenCount )
- && ( maxIndirectCommandsStreamCount == rhs.maxIndirectCommandsStreamCount )
- && ( maxIndirectCommandsTokenOffset == rhs.maxIndirectCommandsTokenOffset )
- && ( maxIndirectCommandsStreamStride == rhs.maxIndirectCommandsStreamStride )
- && ( minSequencesCountBufferOffsetAlignment == rhs.minSequencesCountBufferOffsetAlignment )
- && ( minSequencesIndexBufferOffsetAlignment == rhs.minSequencesIndexBufferOffsetAlignment )
- && ( minIndirectCommandsBufferOffsetAlignment == rhs.minIndirectCommandsBufferOffsetAlignment );
- }
-
- bool operator!=( PhysicalDeviceDeviceGeneratedCommandsPropertiesNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceDeviceGeneratedCommandsPropertiesNV;
- 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 = {};
-
- };
- static_assert( sizeof( PhysicalDeviceDeviceGeneratedCommandsPropertiesNV ) == sizeof( VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceDeviceGeneratedCommandsPropertiesNV>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceDeviceGeneratedCommandsPropertiesNV>
+ struct StructExtends<PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT, DeviceCreateInfo>
{
- using Type = PhysicalDeviceDeviceGeneratedCommandsPropertiesNV;
- };
-
- struct PhysicalDeviceDeviceMemoryReportFeaturesEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceDeviceMemoryReportFeaturesEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceDeviceMemoryReportFeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 deviceMemoryReport_ = {}) VULKAN_HPP_NOEXCEPT
- : deviceMemoryReport( deviceMemoryReport_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceDeviceMemoryReportFeaturesEXT( PhysicalDeviceDeviceMemoryReportFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceDeviceMemoryReportFeaturesEXT( VkPhysicalDeviceDeviceMemoryReportFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceDeviceMemoryReportFeaturesEXT & operator=( VkPhysicalDeviceDeviceMemoryReportFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceDeviceMemoryReportFeaturesEXT const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceDeviceMemoryReportFeaturesEXT & operator=( PhysicalDeviceDeviceMemoryReportFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceDeviceMemoryReportFeaturesEXT ) );
- return *this;
- }
-
- PhysicalDeviceDeviceMemoryReportFeaturesEXT & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceDeviceMemoryReportFeaturesEXT & setDeviceMemoryReport( VULKAN_HPP_NAMESPACE::Bool32 deviceMemoryReport_ ) VULKAN_HPP_NOEXCEPT
- {
- deviceMemoryReport = deviceMemoryReport_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceDeviceMemoryReportFeaturesEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceDeviceMemoryReportFeaturesEXT*>( this );
- }
-
- operator VkPhysicalDeviceDeviceMemoryReportFeaturesEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceDeviceMemoryReportFeaturesEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceDeviceMemoryReportFeaturesEXT const& ) const = default;
-#else
- bool operator==( PhysicalDeviceDeviceMemoryReportFeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( deviceMemoryReport == rhs.deviceMemoryReport );
- }
-
- bool operator!=( PhysicalDeviceDeviceMemoryReportFeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceDeviceMemoryReportFeaturesEXT;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 deviceMemoryReport = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceDeviceMemoryReportFeaturesEXT ) == sizeof( VkPhysicalDeviceDeviceMemoryReportFeaturesEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceDeviceMemoryReportFeaturesEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceDeviceMemoryReportFeaturesEXT>
- {
- using Type = PhysicalDeviceDeviceMemoryReportFeaturesEXT;
- };
-
- struct PhysicalDeviceDiagnosticsConfigFeaturesNV
+ struct StructExtends<PhysicalDeviceTimelineSemaphoreFeatures, PhysicalDeviceFeatures2>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceDiagnosticsConfigFeaturesNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceDiagnosticsConfigFeaturesNV(VULKAN_HPP_NAMESPACE::Bool32 diagnosticsConfig_ = {}) VULKAN_HPP_NOEXCEPT
- : diagnosticsConfig( diagnosticsConfig_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceDiagnosticsConfigFeaturesNV( PhysicalDeviceDiagnosticsConfigFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceDiagnosticsConfigFeaturesNV( VkPhysicalDeviceDiagnosticsConfigFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceDiagnosticsConfigFeaturesNV & operator=( VkPhysicalDeviceDiagnosticsConfigFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceDiagnosticsConfigFeaturesNV const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceDiagnosticsConfigFeaturesNV & operator=( PhysicalDeviceDiagnosticsConfigFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceDiagnosticsConfigFeaturesNV ) );
- return *this;
- }
-
- PhysicalDeviceDiagnosticsConfigFeaturesNV & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceDiagnosticsConfigFeaturesNV & setDiagnosticsConfig( VULKAN_HPP_NAMESPACE::Bool32 diagnosticsConfig_ ) VULKAN_HPP_NOEXCEPT
- {
- diagnosticsConfig = diagnosticsConfig_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceDiagnosticsConfigFeaturesNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceDiagnosticsConfigFeaturesNV*>( this );
- }
-
- operator VkPhysicalDeviceDiagnosticsConfigFeaturesNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceDiagnosticsConfigFeaturesNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceDiagnosticsConfigFeaturesNV const& ) const = default;
-#else
- bool operator==( PhysicalDeviceDiagnosticsConfigFeaturesNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( diagnosticsConfig == rhs.diagnosticsConfig );
- }
-
- bool operator!=( PhysicalDeviceDiagnosticsConfigFeaturesNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceDiagnosticsConfigFeaturesNV;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 diagnosticsConfig = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceDiagnosticsConfigFeaturesNV ) == sizeof( VkPhysicalDeviceDiagnosticsConfigFeaturesNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceDiagnosticsConfigFeaturesNV>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceDiagnosticsConfigFeaturesNV>
+ struct StructExtends<PhysicalDeviceTimelineSemaphoreFeatures, DeviceCreateInfo>
{
- using Type = PhysicalDeviceDiagnosticsConfigFeaturesNV;
- };
-
- struct PhysicalDeviceDiscardRectanglePropertiesEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceDiscardRectanglePropertiesEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceDiscardRectanglePropertiesEXT(uint32_t maxDiscardRectangles_ = {}) VULKAN_HPP_NOEXCEPT
- : maxDiscardRectangles( maxDiscardRectangles_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceDiscardRectanglePropertiesEXT( PhysicalDeviceDiscardRectanglePropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceDiscardRectanglePropertiesEXT( VkPhysicalDeviceDiscardRectanglePropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceDiscardRectanglePropertiesEXT & operator=( VkPhysicalDeviceDiscardRectanglePropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceDiscardRectanglePropertiesEXT const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceDiscardRectanglePropertiesEXT & operator=( PhysicalDeviceDiscardRectanglePropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceDiscardRectanglePropertiesEXT ) );
- return *this;
- }
-
-
- operator VkPhysicalDeviceDiscardRectanglePropertiesEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceDiscardRectanglePropertiesEXT*>( this );
- }
-
- operator VkPhysicalDeviceDiscardRectanglePropertiesEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceDiscardRectanglePropertiesEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceDiscardRectanglePropertiesEXT const& ) const = default;
-#else
- bool operator==( PhysicalDeviceDiscardRectanglePropertiesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( maxDiscardRectangles == rhs.maxDiscardRectangles );
- }
-
- bool operator!=( PhysicalDeviceDiscardRectanglePropertiesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceDiscardRectanglePropertiesEXT;
- void* pNext = {};
- uint32_t maxDiscardRectangles = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceDiscardRectanglePropertiesEXT ) == sizeof( VkPhysicalDeviceDiscardRectanglePropertiesEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceDiscardRectanglePropertiesEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceDiscardRectanglePropertiesEXT>
- {
- using Type = PhysicalDeviceDiscardRectanglePropertiesEXT;
- };
-
- struct PhysicalDeviceDriverProperties
+ struct StructExtends<PhysicalDeviceTimelineSemaphoreProperties, PhysicalDeviceProperties2>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceDriverProperties;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDriverProperties(VULKAN_HPP_NAMESPACE::DriverId driverID_ = VULKAN_HPP_NAMESPACE::DriverId::eAmdProprietary, std::array<char,VK_MAX_DRIVER_NAME_SIZE> const& driverName_ = {}, std::array<char,VK_MAX_DRIVER_INFO_SIZE> const& driverInfo_ = {}, VULKAN_HPP_NAMESPACE::ConformanceVersion conformanceVersion_ = {}) VULKAN_HPP_NOEXCEPT
- : driverID( driverID_ ), driverName( driverName_ ), driverInfo( driverInfo_ ), conformanceVersion( conformanceVersion_ )
- {}
-
- VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDriverProperties( PhysicalDeviceDriverProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceDriverProperties( VkPhysicalDeviceDriverProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceDriverProperties & operator=( VkPhysicalDeviceDriverProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceDriverProperties const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceDriverProperties & operator=( PhysicalDeviceDriverProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceDriverProperties ) );
- return *this;
- }
-
-
- operator VkPhysicalDeviceDriverProperties const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceDriverProperties*>( this );
- }
-
- operator VkPhysicalDeviceDriverProperties &() VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<VkPhysicalDeviceDriverProperties*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceDriverProperties const& ) const = default;
-#else
- bool operator==( PhysicalDeviceDriverProperties const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( driverID == rhs.driverID )
- && ( driverName == rhs.driverName )
- && ( driverInfo == rhs.driverInfo )
- && ( conformanceVersion == rhs.conformanceVersion );
- }
-
- bool operator!=( PhysicalDeviceDriverProperties const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceDriverProperties;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::DriverId driverID = VULKAN_HPP_NAMESPACE::DriverId::eAmdProprietary;
- VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DRIVER_NAME_SIZE> driverName = {};
- VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DRIVER_INFO_SIZE> driverInfo = {};
- VULKAN_HPP_NAMESPACE::ConformanceVersion conformanceVersion = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceDriverProperties ) == sizeof( VkPhysicalDeviceDriverProperties ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceDriverProperties>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceDriverProperties>
- {
- using Type = PhysicalDeviceDriverProperties;
- };
- using PhysicalDeviceDriverPropertiesKHR = PhysicalDeviceDriverProperties;
-
- struct PhysicalDeviceExclusiveScissorFeaturesNV
+ struct StructExtends<PhysicalDeviceTransformFeedbackFeaturesEXT, PhysicalDeviceFeatures2>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceExclusiveScissorFeaturesNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceExclusiveScissorFeaturesNV(VULKAN_HPP_NAMESPACE::Bool32 exclusiveScissor_ = {}) VULKAN_HPP_NOEXCEPT
- : exclusiveScissor( exclusiveScissor_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceExclusiveScissorFeaturesNV( PhysicalDeviceExclusiveScissorFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceExclusiveScissorFeaturesNV( VkPhysicalDeviceExclusiveScissorFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceExclusiveScissorFeaturesNV & operator=( VkPhysicalDeviceExclusiveScissorFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceExclusiveScissorFeaturesNV const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceExclusiveScissorFeaturesNV & operator=( PhysicalDeviceExclusiveScissorFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceExclusiveScissorFeaturesNV ) );
- return *this;
- }
-
- PhysicalDeviceExclusiveScissorFeaturesNV & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceExclusiveScissorFeaturesNV & setExclusiveScissor( VULKAN_HPP_NAMESPACE::Bool32 exclusiveScissor_ ) VULKAN_HPP_NOEXCEPT
- {
- exclusiveScissor = exclusiveScissor_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceExclusiveScissorFeaturesNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceExclusiveScissorFeaturesNV*>( this );
- }
-
- operator VkPhysicalDeviceExclusiveScissorFeaturesNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceExclusiveScissorFeaturesNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceExclusiveScissorFeaturesNV const& ) const = default;
-#else
- bool operator==( PhysicalDeviceExclusiveScissorFeaturesNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( exclusiveScissor == rhs.exclusiveScissor );
- }
-
- bool operator!=( PhysicalDeviceExclusiveScissorFeaturesNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceExclusiveScissorFeaturesNV;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 exclusiveScissor = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceExclusiveScissorFeaturesNV ) == sizeof( VkPhysicalDeviceExclusiveScissorFeaturesNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceExclusiveScissorFeaturesNV>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceExclusiveScissorFeaturesNV>
- {
- using Type = PhysicalDeviceExclusiveScissorFeaturesNV;
- };
-
- struct PhysicalDeviceExtendedDynamicStateFeaturesEXT
+ struct StructExtends<PhysicalDeviceTransformFeedbackFeaturesEXT, DeviceCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceExtendedDynamicStateFeaturesEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceExtendedDynamicStateFeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 extendedDynamicState_ = {}) VULKAN_HPP_NOEXCEPT
- : extendedDynamicState( extendedDynamicState_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceExtendedDynamicStateFeaturesEXT( PhysicalDeviceExtendedDynamicStateFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceExtendedDynamicStateFeaturesEXT( VkPhysicalDeviceExtendedDynamicStateFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceExtendedDynamicStateFeaturesEXT & operator=( VkPhysicalDeviceExtendedDynamicStateFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceExtendedDynamicStateFeaturesEXT const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceExtendedDynamicStateFeaturesEXT & operator=( PhysicalDeviceExtendedDynamicStateFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceExtendedDynamicStateFeaturesEXT ) );
- return *this;
- }
-
- PhysicalDeviceExtendedDynamicStateFeaturesEXT & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceExtendedDynamicStateFeaturesEXT & setExtendedDynamicState( VULKAN_HPP_NAMESPACE::Bool32 extendedDynamicState_ ) VULKAN_HPP_NOEXCEPT
- {
- extendedDynamicState = extendedDynamicState_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceExtendedDynamicStateFeaturesEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceExtendedDynamicStateFeaturesEXT*>( this );
- }
-
- operator VkPhysicalDeviceExtendedDynamicStateFeaturesEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceExtendedDynamicStateFeaturesEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceExtendedDynamicStateFeaturesEXT const& ) const = default;
-#else
- bool operator==( PhysicalDeviceExtendedDynamicStateFeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( extendedDynamicState == rhs.extendedDynamicState );
- }
-
- bool operator!=( PhysicalDeviceExtendedDynamicStateFeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceExtendedDynamicStateFeaturesEXT;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 extendedDynamicState = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceExtendedDynamicStateFeaturesEXT ) == sizeof( VkPhysicalDeviceExtendedDynamicStateFeaturesEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceExtendedDynamicStateFeaturesEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceExtendedDynamicStateFeaturesEXT>
+ struct StructExtends<PhysicalDeviceTransformFeedbackPropertiesEXT, PhysicalDeviceProperties2>
{
- using Type = PhysicalDeviceExtendedDynamicStateFeaturesEXT;
- };
-
- struct PhysicalDeviceExternalImageFormatInfo
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceExternalImageFormatInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceExternalImageFormatInfo(VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType_ = VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits::eOpaqueFd) VULKAN_HPP_NOEXCEPT
- : handleType( handleType_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceExternalImageFormatInfo( PhysicalDeviceExternalImageFormatInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceExternalImageFormatInfo( VkPhysicalDeviceExternalImageFormatInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceExternalImageFormatInfo & operator=( VkPhysicalDeviceExternalImageFormatInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceExternalImageFormatInfo const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceExternalImageFormatInfo & operator=( PhysicalDeviceExternalImageFormatInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceExternalImageFormatInfo ) );
- return *this;
- }
-
- PhysicalDeviceExternalImageFormatInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceExternalImageFormatInfo & setHandleType( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType_ ) VULKAN_HPP_NOEXCEPT
- {
- handleType = handleType_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceExternalImageFormatInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceExternalImageFormatInfo*>( this );
- }
-
- operator VkPhysicalDeviceExternalImageFormatInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceExternalImageFormatInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceExternalImageFormatInfo const& ) const = default;
-#else
- bool operator==( PhysicalDeviceExternalImageFormatInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( handleType == rhs.handleType );
- }
-
- bool operator!=( PhysicalDeviceExternalImageFormatInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceExternalImageFormatInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType = VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits::eOpaqueFd;
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceExternalImageFormatInfo ) == sizeof( VkPhysicalDeviceExternalImageFormatInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceExternalImageFormatInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceExternalImageFormatInfo>
+ struct StructExtends<PhysicalDeviceUniformBufferStandardLayoutFeatures, PhysicalDeviceFeatures2>
{
- using Type = PhysicalDeviceExternalImageFormatInfo;
- };
- using PhysicalDeviceExternalImageFormatInfoKHR = PhysicalDeviceExternalImageFormatInfo;
-
- struct PhysicalDeviceExternalMemoryHostPropertiesEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceExternalMemoryHostPropertiesEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceExternalMemoryHostPropertiesEXT(VULKAN_HPP_NAMESPACE::DeviceSize minImportedHostPointerAlignment_ = {}) VULKAN_HPP_NOEXCEPT
- : minImportedHostPointerAlignment( minImportedHostPointerAlignment_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceExternalMemoryHostPropertiesEXT( PhysicalDeviceExternalMemoryHostPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceExternalMemoryHostPropertiesEXT( VkPhysicalDeviceExternalMemoryHostPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceExternalMemoryHostPropertiesEXT & operator=( VkPhysicalDeviceExternalMemoryHostPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceExternalMemoryHostPropertiesEXT const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceExternalMemoryHostPropertiesEXT & operator=( PhysicalDeviceExternalMemoryHostPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceExternalMemoryHostPropertiesEXT ) );
- return *this;
- }
-
-
- operator VkPhysicalDeviceExternalMemoryHostPropertiesEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceExternalMemoryHostPropertiesEXT*>( this );
- }
-
- operator VkPhysicalDeviceExternalMemoryHostPropertiesEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceExternalMemoryHostPropertiesEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceExternalMemoryHostPropertiesEXT const& ) const = default;
-#else
- bool operator==( PhysicalDeviceExternalMemoryHostPropertiesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( minImportedHostPointerAlignment == rhs.minImportedHostPointerAlignment );
- }
-
- bool operator!=( PhysicalDeviceExternalMemoryHostPropertiesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceExternalMemoryHostPropertiesEXT;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::DeviceSize minImportedHostPointerAlignment = {};
-
- };
- static_assert( sizeof( PhysicalDeviceExternalMemoryHostPropertiesEXT ) == sizeof( VkPhysicalDeviceExternalMemoryHostPropertiesEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceExternalMemoryHostPropertiesEXT>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceExternalMemoryHostPropertiesEXT>
- {
- using Type = PhysicalDeviceExternalMemoryHostPropertiesEXT;
+ value = true
+ };
};
-
- struct PhysicalDeviceFloatControlsProperties
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceFloatControlsProperties;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceFloatControlsProperties(VULKAN_HPP_NAMESPACE::ShaderFloatControlsIndependence denormBehaviorIndependence_ = VULKAN_HPP_NAMESPACE::ShaderFloatControlsIndependence::e32BitOnly, VULKAN_HPP_NAMESPACE::ShaderFloatControlsIndependence roundingModeIndependence_ = VULKAN_HPP_NAMESPACE::ShaderFloatControlsIndependence::e32BitOnly, VULKAN_HPP_NAMESPACE::Bool32 shaderSignedZeroInfNanPreserveFloat16_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderSignedZeroInfNanPreserveFloat32_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderSignedZeroInfNanPreserveFloat64_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderDenormPreserveFloat16_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderDenormPreserveFloat32_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderDenormPreserveFloat64_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderDenormFlushToZeroFloat16_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderDenormFlushToZeroFloat32_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderDenormFlushToZeroFloat64_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTEFloat16_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTEFloat32_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTEFloat64_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTZFloat16_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTZFloat32_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTZFloat64_ = {}) VULKAN_HPP_NOEXCEPT
- : denormBehaviorIndependence( denormBehaviorIndependence_ ), roundingModeIndependence( roundingModeIndependence_ ), shaderSignedZeroInfNanPreserveFloat16( shaderSignedZeroInfNanPreserveFloat16_ ), shaderSignedZeroInfNanPreserveFloat32( shaderSignedZeroInfNanPreserveFloat32_ ), shaderSignedZeroInfNanPreserveFloat64( shaderSignedZeroInfNanPreserveFloat64_ ), shaderDenormPreserveFloat16( shaderDenormPreserveFloat16_ ), shaderDenormPreserveFloat32( shaderDenormPreserveFloat32_ ), shaderDenormPreserveFloat64( shaderDenormPreserveFloat64_ ), shaderDenormFlushToZeroFloat16( shaderDenormFlushToZeroFloat16_ ), shaderDenormFlushToZeroFloat32( shaderDenormFlushToZeroFloat32_ ), shaderDenormFlushToZeroFloat64( shaderDenormFlushToZeroFloat64_ ), shaderRoundingModeRTEFloat16( shaderRoundingModeRTEFloat16_ ), shaderRoundingModeRTEFloat32( shaderRoundingModeRTEFloat32_ ), shaderRoundingModeRTEFloat64( shaderRoundingModeRTEFloat64_ ), shaderRoundingModeRTZFloat16( shaderRoundingModeRTZFloat16_ ), shaderRoundingModeRTZFloat32( shaderRoundingModeRTZFloat32_ ), shaderRoundingModeRTZFloat64( shaderRoundingModeRTZFloat64_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceFloatControlsProperties( PhysicalDeviceFloatControlsProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceFloatControlsProperties( VkPhysicalDeviceFloatControlsProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceFloatControlsProperties & operator=( VkPhysicalDeviceFloatControlsProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceFloatControlsProperties const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceFloatControlsProperties & operator=( PhysicalDeviceFloatControlsProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceFloatControlsProperties ) );
- return *this;
- }
-
-
- operator VkPhysicalDeviceFloatControlsProperties const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceFloatControlsProperties*>( this );
- }
-
- operator VkPhysicalDeviceFloatControlsProperties &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceFloatControlsProperties*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceFloatControlsProperties const& ) const = default;
-#else
- bool operator==( PhysicalDeviceFloatControlsProperties const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( denormBehaviorIndependence == rhs.denormBehaviorIndependence )
- && ( roundingModeIndependence == rhs.roundingModeIndependence )
- && ( shaderSignedZeroInfNanPreserveFloat16 == rhs.shaderSignedZeroInfNanPreserveFloat16 )
- && ( shaderSignedZeroInfNanPreserveFloat32 == rhs.shaderSignedZeroInfNanPreserveFloat32 )
- && ( shaderSignedZeroInfNanPreserveFloat64 == rhs.shaderSignedZeroInfNanPreserveFloat64 )
- && ( shaderDenormPreserveFloat16 == rhs.shaderDenormPreserveFloat16 )
- && ( shaderDenormPreserveFloat32 == rhs.shaderDenormPreserveFloat32 )
- && ( shaderDenormPreserveFloat64 == rhs.shaderDenormPreserveFloat64 )
- && ( shaderDenormFlushToZeroFloat16 == rhs.shaderDenormFlushToZeroFloat16 )
- && ( shaderDenormFlushToZeroFloat32 == rhs.shaderDenormFlushToZeroFloat32 )
- && ( shaderDenormFlushToZeroFloat64 == rhs.shaderDenormFlushToZeroFloat64 )
- && ( shaderRoundingModeRTEFloat16 == rhs.shaderRoundingModeRTEFloat16 )
- && ( shaderRoundingModeRTEFloat32 == rhs.shaderRoundingModeRTEFloat32 )
- && ( shaderRoundingModeRTEFloat64 == rhs.shaderRoundingModeRTEFloat64 )
- && ( shaderRoundingModeRTZFloat16 == rhs.shaderRoundingModeRTZFloat16 )
- && ( shaderRoundingModeRTZFloat32 == rhs.shaderRoundingModeRTZFloat32 )
- && ( shaderRoundingModeRTZFloat64 == rhs.shaderRoundingModeRTZFloat64 );
- }
-
- bool operator!=( PhysicalDeviceFloatControlsProperties const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceFloatControlsProperties;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::ShaderFloatControlsIndependence denormBehaviorIndependence = VULKAN_HPP_NAMESPACE::ShaderFloatControlsIndependence::e32BitOnly;
- VULKAN_HPP_NAMESPACE::ShaderFloatControlsIndependence roundingModeIndependence = VULKAN_HPP_NAMESPACE::ShaderFloatControlsIndependence::e32BitOnly;
- VULKAN_HPP_NAMESPACE::Bool32 shaderSignedZeroInfNanPreserveFloat16 = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderSignedZeroInfNanPreserveFloat32 = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderSignedZeroInfNanPreserveFloat64 = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderDenormPreserveFloat16 = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderDenormPreserveFloat32 = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderDenormPreserveFloat64 = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderDenormFlushToZeroFloat16 = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderDenormFlushToZeroFloat32 = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderDenormFlushToZeroFloat64 = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTEFloat16 = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTEFloat32 = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTEFloat64 = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTZFloat16 = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTZFloat32 = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTZFloat64 = {};
-
- };
- static_assert( sizeof( PhysicalDeviceFloatControlsProperties ) == sizeof( VkPhysicalDeviceFloatControlsProperties ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceFloatControlsProperties>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceFloatControlsProperties>
- {
- using Type = PhysicalDeviceFloatControlsProperties;
- };
- using PhysicalDeviceFloatControlsPropertiesKHR = PhysicalDeviceFloatControlsProperties;
-
- struct PhysicalDeviceFragmentDensityMap2FeaturesEXT
+ struct StructExtends<PhysicalDeviceUniformBufferStandardLayoutFeatures, DeviceCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceFragmentDensityMap2FeaturesEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentDensityMap2FeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 fragmentDensityMapDeferred_ = {}) VULKAN_HPP_NOEXCEPT
- : fragmentDensityMapDeferred( fragmentDensityMapDeferred_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentDensityMap2FeaturesEXT( PhysicalDeviceFragmentDensityMap2FeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceFragmentDensityMap2FeaturesEXT( VkPhysicalDeviceFragmentDensityMap2FeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceFragmentDensityMap2FeaturesEXT & operator=( VkPhysicalDeviceFragmentDensityMap2FeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentDensityMap2FeaturesEXT const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceFragmentDensityMap2FeaturesEXT & operator=( PhysicalDeviceFragmentDensityMap2FeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceFragmentDensityMap2FeaturesEXT ) );
- return *this;
- }
-
- PhysicalDeviceFragmentDensityMap2FeaturesEXT & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceFragmentDensityMap2FeaturesEXT & setFragmentDensityMapDeferred( VULKAN_HPP_NAMESPACE::Bool32 fragmentDensityMapDeferred_ ) VULKAN_HPP_NOEXCEPT
- {
- fragmentDensityMapDeferred = fragmentDensityMapDeferred_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceFragmentDensityMap2FeaturesEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceFragmentDensityMap2FeaturesEXT*>( this );
- }
-
- operator VkPhysicalDeviceFragmentDensityMap2FeaturesEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceFragmentDensityMap2FeaturesEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceFragmentDensityMap2FeaturesEXT const& ) const = default;
-#else
- bool operator==( PhysicalDeviceFragmentDensityMap2FeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( fragmentDensityMapDeferred == rhs.fragmentDensityMapDeferred );
- }
-
- bool operator!=( PhysicalDeviceFragmentDensityMap2FeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceFragmentDensityMap2FeaturesEXT;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 fragmentDensityMapDeferred = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceFragmentDensityMap2FeaturesEXT ) == sizeof( VkPhysicalDeviceFragmentDensityMap2FeaturesEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceFragmentDensityMap2FeaturesEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceFragmentDensityMap2FeaturesEXT>
- {
- using Type = PhysicalDeviceFragmentDensityMap2FeaturesEXT;
- };
-
- struct PhysicalDeviceFragmentDensityMap2PropertiesEXT
+ struct StructExtends<PhysicalDeviceVariablePointersFeatures, PhysicalDeviceFeatures2>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceFragmentDensityMap2PropertiesEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentDensityMap2PropertiesEXT(VULKAN_HPP_NAMESPACE::Bool32 subsampledLoads_ = {}, VULKAN_HPP_NAMESPACE::Bool32 subsampledCoarseReconstructionEarlyAccess_ = {}, uint32_t maxSubsampledArrayLayers_ = {}, uint32_t maxDescriptorSetSubsampledSamplers_ = {}) VULKAN_HPP_NOEXCEPT
- : subsampledLoads( subsampledLoads_ ), subsampledCoarseReconstructionEarlyAccess( subsampledCoarseReconstructionEarlyAccess_ ), maxSubsampledArrayLayers( maxSubsampledArrayLayers_ ), maxDescriptorSetSubsampledSamplers( maxDescriptorSetSubsampledSamplers_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentDensityMap2PropertiesEXT( PhysicalDeviceFragmentDensityMap2PropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceFragmentDensityMap2PropertiesEXT( VkPhysicalDeviceFragmentDensityMap2PropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceFragmentDensityMap2PropertiesEXT & operator=( VkPhysicalDeviceFragmentDensityMap2PropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentDensityMap2PropertiesEXT const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceFragmentDensityMap2PropertiesEXT & operator=( PhysicalDeviceFragmentDensityMap2PropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceFragmentDensityMap2PropertiesEXT ) );
- return *this;
- }
-
-
- operator VkPhysicalDeviceFragmentDensityMap2PropertiesEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceFragmentDensityMap2PropertiesEXT*>( this );
- }
-
- operator VkPhysicalDeviceFragmentDensityMap2PropertiesEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceFragmentDensityMap2PropertiesEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceFragmentDensityMap2PropertiesEXT const& ) const = default;
-#else
- bool operator==( PhysicalDeviceFragmentDensityMap2PropertiesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( subsampledLoads == rhs.subsampledLoads )
- && ( subsampledCoarseReconstructionEarlyAccess == rhs.subsampledCoarseReconstructionEarlyAccess )
- && ( maxSubsampledArrayLayers == rhs.maxSubsampledArrayLayers )
- && ( maxDescriptorSetSubsampledSamplers == rhs.maxDescriptorSetSubsampledSamplers );
- }
-
- bool operator!=( PhysicalDeviceFragmentDensityMap2PropertiesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceFragmentDensityMap2PropertiesEXT;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 subsampledLoads = {};
- VULKAN_HPP_NAMESPACE::Bool32 subsampledCoarseReconstructionEarlyAccess = {};
- uint32_t maxSubsampledArrayLayers = {};
- uint32_t maxDescriptorSetSubsampledSamplers = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceFragmentDensityMap2PropertiesEXT ) == sizeof( VkPhysicalDeviceFragmentDensityMap2PropertiesEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceFragmentDensityMap2PropertiesEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceFragmentDensityMap2PropertiesEXT>
- {
- using Type = PhysicalDeviceFragmentDensityMap2PropertiesEXT;
- };
-
- struct PhysicalDeviceFragmentDensityMapFeaturesEXT
+ struct StructExtends<PhysicalDeviceVariablePointersFeatures, DeviceCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceFragmentDensityMapFeaturesEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentDensityMapFeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 fragmentDensityMap_ = {}, VULKAN_HPP_NAMESPACE::Bool32 fragmentDensityMapDynamic_ = {}, VULKAN_HPP_NAMESPACE::Bool32 fragmentDensityMapNonSubsampledImages_ = {}) VULKAN_HPP_NOEXCEPT
- : fragmentDensityMap( fragmentDensityMap_ ), fragmentDensityMapDynamic( fragmentDensityMapDynamic_ ), fragmentDensityMapNonSubsampledImages( fragmentDensityMapNonSubsampledImages_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentDensityMapFeaturesEXT( PhysicalDeviceFragmentDensityMapFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceFragmentDensityMapFeaturesEXT( VkPhysicalDeviceFragmentDensityMapFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceFragmentDensityMapFeaturesEXT & operator=( VkPhysicalDeviceFragmentDensityMapFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentDensityMapFeaturesEXT const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceFragmentDensityMapFeaturesEXT & operator=( PhysicalDeviceFragmentDensityMapFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceFragmentDensityMapFeaturesEXT ) );
- return *this;
- }
-
- PhysicalDeviceFragmentDensityMapFeaturesEXT & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceFragmentDensityMapFeaturesEXT & setFragmentDensityMap( VULKAN_HPP_NAMESPACE::Bool32 fragmentDensityMap_ ) VULKAN_HPP_NOEXCEPT
- {
- fragmentDensityMap = fragmentDensityMap_;
- return *this;
- }
-
- PhysicalDeviceFragmentDensityMapFeaturesEXT & setFragmentDensityMapDynamic( VULKAN_HPP_NAMESPACE::Bool32 fragmentDensityMapDynamic_ ) VULKAN_HPP_NOEXCEPT
- {
- fragmentDensityMapDynamic = fragmentDensityMapDynamic_;
- return *this;
- }
-
- PhysicalDeviceFragmentDensityMapFeaturesEXT & setFragmentDensityMapNonSubsampledImages( VULKAN_HPP_NAMESPACE::Bool32 fragmentDensityMapNonSubsampledImages_ ) VULKAN_HPP_NOEXCEPT
- {
- fragmentDensityMapNonSubsampledImages = fragmentDensityMapNonSubsampledImages_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceFragmentDensityMapFeaturesEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceFragmentDensityMapFeaturesEXT*>( this );
- }
-
- operator VkPhysicalDeviceFragmentDensityMapFeaturesEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceFragmentDensityMapFeaturesEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceFragmentDensityMapFeaturesEXT const& ) const = default;
-#else
- bool operator==( PhysicalDeviceFragmentDensityMapFeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( fragmentDensityMap == rhs.fragmentDensityMap )
- && ( fragmentDensityMapDynamic == rhs.fragmentDensityMapDynamic )
- && ( fragmentDensityMapNonSubsampledImages == rhs.fragmentDensityMapNonSubsampledImages );
- }
-
- bool operator!=( PhysicalDeviceFragmentDensityMapFeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceFragmentDensityMapFeaturesEXT;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 fragmentDensityMap = {};
- VULKAN_HPP_NAMESPACE::Bool32 fragmentDensityMapDynamic = {};
- VULKAN_HPP_NAMESPACE::Bool32 fragmentDensityMapNonSubsampledImages = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceFragmentDensityMapFeaturesEXT ) == sizeof( VkPhysicalDeviceFragmentDensityMapFeaturesEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceFragmentDensityMapFeaturesEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceFragmentDensityMapFeaturesEXT>
+ struct StructExtends<PhysicalDeviceVertexAttributeDivisorFeaturesEXT, PhysicalDeviceFeatures2>
{
- using Type = PhysicalDeviceFragmentDensityMapFeaturesEXT;
- };
-
- struct PhysicalDeviceFragmentDensityMapPropertiesEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceFragmentDensityMapPropertiesEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentDensityMapPropertiesEXT(VULKAN_HPP_NAMESPACE::Extent2D minFragmentDensityTexelSize_ = {}, VULKAN_HPP_NAMESPACE::Extent2D maxFragmentDensityTexelSize_ = {}, VULKAN_HPP_NAMESPACE::Bool32 fragmentDensityInvocations_ = {}) VULKAN_HPP_NOEXCEPT
- : minFragmentDensityTexelSize( minFragmentDensityTexelSize_ ), maxFragmentDensityTexelSize( maxFragmentDensityTexelSize_ ), fragmentDensityInvocations( fragmentDensityInvocations_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentDensityMapPropertiesEXT( PhysicalDeviceFragmentDensityMapPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceFragmentDensityMapPropertiesEXT( VkPhysicalDeviceFragmentDensityMapPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceFragmentDensityMapPropertiesEXT & operator=( VkPhysicalDeviceFragmentDensityMapPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentDensityMapPropertiesEXT const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceFragmentDensityMapPropertiesEXT & operator=( PhysicalDeviceFragmentDensityMapPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceFragmentDensityMapPropertiesEXT ) );
- return *this;
- }
-
-
- operator VkPhysicalDeviceFragmentDensityMapPropertiesEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceFragmentDensityMapPropertiesEXT*>( this );
- }
-
- operator VkPhysicalDeviceFragmentDensityMapPropertiesEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceFragmentDensityMapPropertiesEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceFragmentDensityMapPropertiesEXT const& ) const = default;
-#else
- bool operator==( PhysicalDeviceFragmentDensityMapPropertiesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( minFragmentDensityTexelSize == rhs.minFragmentDensityTexelSize )
- && ( maxFragmentDensityTexelSize == rhs.maxFragmentDensityTexelSize )
- && ( fragmentDensityInvocations == rhs.fragmentDensityInvocations );
- }
-
- bool operator!=( PhysicalDeviceFragmentDensityMapPropertiesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceFragmentDensityMapPropertiesEXT;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Extent2D minFragmentDensityTexelSize = {};
- VULKAN_HPP_NAMESPACE::Extent2D maxFragmentDensityTexelSize = {};
- VULKAN_HPP_NAMESPACE::Bool32 fragmentDensityInvocations = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceFragmentDensityMapPropertiesEXT ) == sizeof( VkPhysicalDeviceFragmentDensityMapPropertiesEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceFragmentDensityMapPropertiesEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceFragmentDensityMapPropertiesEXT>
+ struct StructExtends<PhysicalDeviceVertexAttributeDivisorFeaturesEXT, DeviceCreateInfo>
{
- using Type = PhysicalDeviceFragmentDensityMapPropertiesEXT;
- };
-
- struct PhysicalDeviceFragmentShaderBarycentricFeaturesNV
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceFragmentShaderBarycentricFeaturesNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentShaderBarycentricFeaturesNV(VULKAN_HPP_NAMESPACE::Bool32 fragmentShaderBarycentric_ = {}) VULKAN_HPP_NOEXCEPT
- : fragmentShaderBarycentric( fragmentShaderBarycentric_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentShaderBarycentricFeaturesNV( PhysicalDeviceFragmentShaderBarycentricFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceFragmentShaderBarycentricFeaturesNV( VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceFragmentShaderBarycentricFeaturesNV & operator=( VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentShaderBarycentricFeaturesNV const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceFragmentShaderBarycentricFeaturesNV & operator=( PhysicalDeviceFragmentShaderBarycentricFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceFragmentShaderBarycentricFeaturesNV ) );
- return *this;
- }
-
- PhysicalDeviceFragmentShaderBarycentricFeaturesNV & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceFragmentShaderBarycentricFeaturesNV & setFragmentShaderBarycentric( VULKAN_HPP_NAMESPACE::Bool32 fragmentShaderBarycentric_ ) VULKAN_HPP_NOEXCEPT
- {
- fragmentShaderBarycentric = fragmentShaderBarycentric_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV*>( this );
- }
-
- operator VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceFragmentShaderBarycentricFeaturesNV const& ) const = default;
-#else
- bool operator==( PhysicalDeviceFragmentShaderBarycentricFeaturesNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( fragmentShaderBarycentric == rhs.fragmentShaderBarycentric );
- }
-
- bool operator!=( PhysicalDeviceFragmentShaderBarycentricFeaturesNV const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceFragmentShaderBarycentricFeaturesNV;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 fragmentShaderBarycentric = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceFragmentShaderBarycentricFeaturesNV ) == sizeof( VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceFragmentShaderBarycentricFeaturesNV>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceFragmentShaderBarycentricFeaturesNV>
+ struct StructExtends<PhysicalDeviceVertexAttributeDivisorPropertiesEXT, PhysicalDeviceProperties2>
{
- using Type = PhysicalDeviceFragmentShaderBarycentricFeaturesNV;
- };
-
- struct PhysicalDeviceFragmentShaderInterlockFeaturesEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceFragmentShaderInterlockFeaturesEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentShaderInterlockFeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 fragmentShaderSampleInterlock_ = {}, VULKAN_HPP_NAMESPACE::Bool32 fragmentShaderPixelInterlock_ = {}, VULKAN_HPP_NAMESPACE::Bool32 fragmentShaderShadingRateInterlock_ = {}) VULKAN_HPP_NOEXCEPT
- : fragmentShaderSampleInterlock( fragmentShaderSampleInterlock_ ), fragmentShaderPixelInterlock( fragmentShaderPixelInterlock_ ), fragmentShaderShadingRateInterlock( fragmentShaderShadingRateInterlock_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentShaderInterlockFeaturesEXT( PhysicalDeviceFragmentShaderInterlockFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceFragmentShaderInterlockFeaturesEXT( VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceFragmentShaderInterlockFeaturesEXT & operator=( VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentShaderInterlockFeaturesEXT const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceFragmentShaderInterlockFeaturesEXT & operator=( PhysicalDeviceFragmentShaderInterlockFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceFragmentShaderInterlockFeaturesEXT ) );
- return *this;
- }
-
- PhysicalDeviceFragmentShaderInterlockFeaturesEXT & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceFragmentShaderInterlockFeaturesEXT & setFragmentShaderSampleInterlock( VULKAN_HPP_NAMESPACE::Bool32 fragmentShaderSampleInterlock_ ) VULKAN_HPP_NOEXCEPT
- {
- fragmentShaderSampleInterlock = fragmentShaderSampleInterlock_;
- return *this;
- }
-
- PhysicalDeviceFragmentShaderInterlockFeaturesEXT & setFragmentShaderPixelInterlock( VULKAN_HPP_NAMESPACE::Bool32 fragmentShaderPixelInterlock_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- fragmentShaderPixelInterlock = fragmentShaderPixelInterlock_;
- return *this;
- }
-
- PhysicalDeviceFragmentShaderInterlockFeaturesEXT & setFragmentShaderShadingRateInterlock( VULKAN_HPP_NAMESPACE::Bool32 fragmentShaderShadingRateInterlock_ ) VULKAN_HPP_NOEXCEPT
- {
- fragmentShaderShadingRateInterlock = fragmentShaderShadingRateInterlock_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT*>( this );
- }
-
- operator VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceFragmentShaderInterlockFeaturesEXT const& ) const = default;
-#else
- bool operator==( PhysicalDeviceFragmentShaderInterlockFeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( fragmentShaderSampleInterlock == rhs.fragmentShaderSampleInterlock )
- && ( fragmentShaderPixelInterlock == rhs.fragmentShaderPixelInterlock )
- && ( fragmentShaderShadingRateInterlock == rhs.fragmentShaderShadingRateInterlock );
- }
-
- bool operator!=( PhysicalDeviceFragmentShaderInterlockFeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceFragmentShaderInterlockFeaturesEXT;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 fragmentShaderSampleInterlock = {};
- VULKAN_HPP_NAMESPACE::Bool32 fragmentShaderPixelInterlock = {};
- VULKAN_HPP_NAMESPACE::Bool32 fragmentShaderShadingRateInterlock = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceFragmentShaderInterlockFeaturesEXT ) == sizeof( VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceFragmentShaderInterlockFeaturesEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceFragmentShaderInterlockFeaturesEXT>
+ struct StructExtends<PhysicalDeviceVertexInputDynamicStateFeaturesEXT, PhysicalDeviceFeatures2>
{
- using Type = PhysicalDeviceFragmentShaderInterlockFeaturesEXT;
- };
-
- struct PhysicalDeviceFragmentShadingRateEnumsFeaturesNV
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceFragmentShadingRateEnumsFeaturesNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentShadingRateEnumsFeaturesNV(VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateEnums_ = {}, VULKAN_HPP_NAMESPACE::Bool32 supersampleFragmentShadingRates_ = {}, VULKAN_HPP_NAMESPACE::Bool32 noInvocationFragmentShadingRates_ = {}) VULKAN_HPP_NOEXCEPT
- : fragmentShadingRateEnums( fragmentShadingRateEnums_ ), supersampleFragmentShadingRates( supersampleFragmentShadingRates_ ), noInvocationFragmentShadingRates( noInvocationFragmentShadingRates_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentShadingRateEnumsFeaturesNV( PhysicalDeviceFragmentShadingRateEnumsFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceFragmentShadingRateEnumsFeaturesNV( VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceFragmentShadingRateEnumsFeaturesNV & operator=( VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentShadingRateEnumsFeaturesNV const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceFragmentShadingRateEnumsFeaturesNV & operator=( PhysicalDeviceFragmentShadingRateEnumsFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceFragmentShadingRateEnumsFeaturesNV ) );
- return *this;
- }
-
- PhysicalDeviceFragmentShadingRateEnumsFeaturesNV & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceFragmentShadingRateEnumsFeaturesNV & setFragmentShadingRateEnums( VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateEnums_ ) VULKAN_HPP_NOEXCEPT
- {
- fragmentShadingRateEnums = fragmentShadingRateEnums_;
- return *this;
- }
-
- PhysicalDeviceFragmentShadingRateEnumsFeaturesNV & setSupersampleFragmentShadingRates( VULKAN_HPP_NAMESPACE::Bool32 supersampleFragmentShadingRates_ ) VULKAN_HPP_NOEXCEPT
- {
- supersampleFragmentShadingRates = supersampleFragmentShadingRates_;
- return *this;
- }
-
- PhysicalDeviceFragmentShadingRateEnumsFeaturesNV & setNoInvocationFragmentShadingRates( VULKAN_HPP_NAMESPACE::Bool32 noInvocationFragmentShadingRates_ ) VULKAN_HPP_NOEXCEPT
- {
- noInvocationFragmentShadingRates = noInvocationFragmentShadingRates_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV*>( this );
- }
-
- operator VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceFragmentShadingRateEnumsFeaturesNV const& ) const = default;
-#else
- bool operator==( PhysicalDeviceFragmentShadingRateEnumsFeaturesNV const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( fragmentShadingRateEnums == rhs.fragmentShadingRateEnums )
- && ( supersampleFragmentShadingRates == rhs.supersampleFragmentShadingRates )
- && ( noInvocationFragmentShadingRates == rhs.noInvocationFragmentShadingRates );
- }
-
- bool operator!=( PhysicalDeviceFragmentShadingRateEnumsFeaturesNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceFragmentShadingRateEnumsFeaturesNV;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateEnums = {};
- VULKAN_HPP_NAMESPACE::Bool32 supersampleFragmentShadingRates = {};
- VULKAN_HPP_NAMESPACE::Bool32 noInvocationFragmentShadingRates = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceFragmentShadingRateEnumsFeaturesNV ) == sizeof( VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceFragmentShadingRateEnumsFeaturesNV>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceFragmentShadingRateEnumsFeaturesNV>
- {
- using Type = PhysicalDeviceFragmentShadingRateEnumsFeaturesNV;
- };
-
- struct PhysicalDeviceFragmentShadingRateEnumsPropertiesNV
+ struct StructExtends<PhysicalDeviceVertexInputDynamicStateFeaturesEXT, DeviceCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceFragmentShadingRateEnumsPropertiesNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentShadingRateEnumsPropertiesNV(VULKAN_HPP_NAMESPACE::SampleCountFlagBits maxFragmentShadingRateInvocationCount_ = VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1) VULKAN_HPP_NOEXCEPT
- : maxFragmentShadingRateInvocationCount( maxFragmentShadingRateInvocationCount_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentShadingRateEnumsPropertiesNV( PhysicalDeviceFragmentShadingRateEnumsPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceFragmentShadingRateEnumsPropertiesNV( VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceFragmentShadingRateEnumsPropertiesNV & operator=( VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentShadingRateEnumsPropertiesNV const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceFragmentShadingRateEnumsPropertiesNV & operator=( PhysicalDeviceFragmentShadingRateEnumsPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceFragmentShadingRateEnumsPropertiesNV ) );
- return *this;
- }
-
- PhysicalDeviceFragmentShadingRateEnumsPropertiesNV & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceFragmentShadingRateEnumsPropertiesNV & setMaxFragmentShadingRateInvocationCount( VULKAN_HPP_NAMESPACE::SampleCountFlagBits maxFragmentShadingRateInvocationCount_ ) VULKAN_HPP_NOEXCEPT
- {
- maxFragmentShadingRateInvocationCount = maxFragmentShadingRateInvocationCount_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV*>( this );
- }
-
- operator VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceFragmentShadingRateEnumsPropertiesNV const& ) const = default;
-#else
- bool operator==( PhysicalDeviceFragmentShadingRateEnumsPropertiesNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( maxFragmentShadingRateInvocationCount == rhs.maxFragmentShadingRateInvocationCount );
- }
-
- bool operator!=( PhysicalDeviceFragmentShadingRateEnumsPropertiesNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceFragmentShadingRateEnumsPropertiesNV;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::SampleCountFlagBits maxFragmentShadingRateInvocationCount = VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1;
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceFragmentShadingRateEnumsPropertiesNV ) == sizeof( VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceFragmentShadingRateEnumsPropertiesNV>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceFragmentShadingRateEnumsPropertiesNV>
+ struct StructExtends<PhysicalDeviceVulkan11Features, PhysicalDeviceFeatures2>
{
- using Type = PhysicalDeviceFragmentShadingRateEnumsPropertiesNV;
- };
-
- struct PhysicalDeviceFragmentShadingRateFeaturesKHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceFragmentShadingRateFeaturesKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentShadingRateFeaturesKHR(VULKAN_HPP_NAMESPACE::Bool32 pipelineFragmentShadingRate_ = {}, VULKAN_HPP_NAMESPACE::Bool32 primitiveFragmentShadingRate_ = {}, VULKAN_HPP_NAMESPACE::Bool32 attachmentFragmentShadingRate_ = {}) VULKAN_HPP_NOEXCEPT
- : pipelineFragmentShadingRate( pipelineFragmentShadingRate_ ), primitiveFragmentShadingRate( primitiveFragmentShadingRate_ ), attachmentFragmentShadingRate( attachmentFragmentShadingRate_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentShadingRateFeaturesKHR( PhysicalDeviceFragmentShadingRateFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceFragmentShadingRateFeaturesKHR( VkPhysicalDeviceFragmentShadingRateFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceFragmentShadingRateFeaturesKHR & operator=( VkPhysicalDeviceFragmentShadingRateFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentShadingRateFeaturesKHR const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceFragmentShadingRateFeaturesKHR & operator=( PhysicalDeviceFragmentShadingRateFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceFragmentShadingRateFeaturesKHR ) );
- return *this;
- }
-
- PhysicalDeviceFragmentShadingRateFeaturesKHR & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceFragmentShadingRateFeaturesKHR & setPipelineFragmentShadingRate( VULKAN_HPP_NAMESPACE::Bool32 pipelineFragmentShadingRate_ ) VULKAN_HPP_NOEXCEPT
- {
- pipelineFragmentShadingRate = pipelineFragmentShadingRate_;
- return *this;
- }
-
- PhysicalDeviceFragmentShadingRateFeaturesKHR & setPrimitiveFragmentShadingRate( VULKAN_HPP_NAMESPACE::Bool32 primitiveFragmentShadingRate_ ) VULKAN_HPP_NOEXCEPT
- {
- primitiveFragmentShadingRate = primitiveFragmentShadingRate_;
- return *this;
- }
-
- PhysicalDeviceFragmentShadingRateFeaturesKHR & setAttachmentFragmentShadingRate( VULKAN_HPP_NAMESPACE::Bool32 attachmentFragmentShadingRate_ ) VULKAN_HPP_NOEXCEPT
- {
- attachmentFragmentShadingRate = attachmentFragmentShadingRate_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceFragmentShadingRateFeaturesKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceFragmentShadingRateFeaturesKHR*>( this );
- }
-
- operator VkPhysicalDeviceFragmentShadingRateFeaturesKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceFragmentShadingRateFeaturesKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceFragmentShadingRateFeaturesKHR const& ) const = default;
-#else
- bool operator==( PhysicalDeviceFragmentShadingRateFeaturesKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( pipelineFragmentShadingRate == rhs.pipelineFragmentShadingRate )
- && ( primitiveFragmentShadingRate == rhs.primitiveFragmentShadingRate )
- && ( attachmentFragmentShadingRate == rhs.attachmentFragmentShadingRate );
- }
-
- bool operator!=( PhysicalDeviceFragmentShadingRateFeaturesKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceFragmentShadingRateFeaturesKHR;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 pipelineFragmentShadingRate = {};
- VULKAN_HPP_NAMESPACE::Bool32 primitiveFragmentShadingRate = {};
- VULKAN_HPP_NAMESPACE::Bool32 attachmentFragmentShadingRate = {};
-
- };
- static_assert( sizeof( PhysicalDeviceFragmentShadingRateFeaturesKHR ) == sizeof( VkPhysicalDeviceFragmentShadingRateFeaturesKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceFragmentShadingRateFeaturesKHR>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceFragmentShadingRateFeaturesKHR>
- {
- using Type = PhysicalDeviceFragmentShadingRateFeaturesKHR;
+ value = true
+ };
};
-
- struct PhysicalDeviceFragmentShadingRatePropertiesKHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceFragmentShadingRatePropertiesKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentShadingRatePropertiesKHR(VULKAN_HPP_NAMESPACE::Extent2D minFragmentShadingRateAttachmentTexelSize_ = {}, VULKAN_HPP_NAMESPACE::Extent2D maxFragmentShadingRateAttachmentTexelSize_ = {}, uint32_t maxFragmentShadingRateAttachmentTexelSizeAspectRatio_ = {}, VULKAN_HPP_NAMESPACE::Bool32 primitiveFragmentShadingRateWithMultipleViewports_ = {}, VULKAN_HPP_NAMESPACE::Bool32 layeredShadingRateAttachments_ = {}, VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateNonTrivialCombinerOps_ = {}, VULKAN_HPP_NAMESPACE::Extent2D maxFragmentSize_ = {}, uint32_t maxFragmentSizeAspectRatio_ = {}, uint32_t maxFragmentShadingRateCoverageSamples_ = {}, VULKAN_HPP_NAMESPACE::SampleCountFlagBits maxFragmentShadingRateRasterizationSamples_ = VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1, VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateWithShaderDepthStencilWrites_ = {}, VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateWithSampleMask_ = {}, VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateWithShaderSampleMask_ = {}, VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateWithConservativeRasterization_ = {}, VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateWithFragmentShaderInterlock_ = {}, VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateWithCustomSampleLocations_ = {}, VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateStrictMultiplyCombiner_ = {}) VULKAN_HPP_NOEXCEPT
- : minFragmentShadingRateAttachmentTexelSize( minFragmentShadingRateAttachmentTexelSize_ ), maxFragmentShadingRateAttachmentTexelSize( maxFragmentShadingRateAttachmentTexelSize_ ), maxFragmentShadingRateAttachmentTexelSizeAspectRatio( maxFragmentShadingRateAttachmentTexelSizeAspectRatio_ ), primitiveFragmentShadingRateWithMultipleViewports( primitiveFragmentShadingRateWithMultipleViewports_ ), layeredShadingRateAttachments( layeredShadingRateAttachments_ ), fragmentShadingRateNonTrivialCombinerOps( fragmentShadingRateNonTrivialCombinerOps_ ), maxFragmentSize( maxFragmentSize_ ), maxFragmentSizeAspectRatio( maxFragmentSizeAspectRatio_ ), maxFragmentShadingRateCoverageSamples( maxFragmentShadingRateCoverageSamples_ ), maxFragmentShadingRateRasterizationSamples( maxFragmentShadingRateRasterizationSamples_ ), fragmentShadingRateWithShaderDepthStencilWrites( fragmentShadingRateWithShaderDepthStencilWrites_ ), fragmentShadingRateWithSampleMask( fragmentShadingRateWithSampleMask_ ), fragmentShadingRateWithShaderSampleMask( fragmentShadingRateWithShaderSampleMask_ ), fragmentShadingRateWithConservativeRasterization( fragmentShadingRateWithConservativeRasterization_ ), fragmentShadingRateWithFragmentShaderInterlock( fragmentShadingRateWithFragmentShaderInterlock_ ), fragmentShadingRateWithCustomSampleLocations( fragmentShadingRateWithCustomSampleLocations_ ), fragmentShadingRateStrictMultiplyCombiner( fragmentShadingRateStrictMultiplyCombiner_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentShadingRatePropertiesKHR( PhysicalDeviceFragmentShadingRatePropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceFragmentShadingRatePropertiesKHR( VkPhysicalDeviceFragmentShadingRatePropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceFragmentShadingRatePropertiesKHR & operator=( VkPhysicalDeviceFragmentShadingRatePropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentShadingRatePropertiesKHR const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceFragmentShadingRatePropertiesKHR & operator=( PhysicalDeviceFragmentShadingRatePropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceFragmentShadingRatePropertiesKHR ) );
- return *this;
- }
-
-
- operator VkPhysicalDeviceFragmentShadingRatePropertiesKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceFragmentShadingRatePropertiesKHR*>( this );
- }
-
- operator VkPhysicalDeviceFragmentShadingRatePropertiesKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceFragmentShadingRatePropertiesKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceFragmentShadingRatePropertiesKHR const& ) const = default;
-#else
- bool operator==( PhysicalDeviceFragmentShadingRatePropertiesKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( minFragmentShadingRateAttachmentTexelSize == rhs.minFragmentShadingRateAttachmentTexelSize )
- && ( maxFragmentShadingRateAttachmentTexelSize == rhs.maxFragmentShadingRateAttachmentTexelSize )
- && ( maxFragmentShadingRateAttachmentTexelSizeAspectRatio == rhs.maxFragmentShadingRateAttachmentTexelSizeAspectRatio )
- && ( primitiveFragmentShadingRateWithMultipleViewports == rhs.primitiveFragmentShadingRateWithMultipleViewports )
- && ( layeredShadingRateAttachments == rhs.layeredShadingRateAttachments )
- && ( fragmentShadingRateNonTrivialCombinerOps == rhs.fragmentShadingRateNonTrivialCombinerOps )
- && ( maxFragmentSize == rhs.maxFragmentSize )
- && ( maxFragmentSizeAspectRatio == rhs.maxFragmentSizeAspectRatio )
- && ( maxFragmentShadingRateCoverageSamples == rhs.maxFragmentShadingRateCoverageSamples )
- && ( maxFragmentShadingRateRasterizationSamples == rhs.maxFragmentShadingRateRasterizationSamples )
- && ( fragmentShadingRateWithShaderDepthStencilWrites == rhs.fragmentShadingRateWithShaderDepthStencilWrites )
- && ( fragmentShadingRateWithSampleMask == rhs.fragmentShadingRateWithSampleMask )
- && ( fragmentShadingRateWithShaderSampleMask == rhs.fragmentShadingRateWithShaderSampleMask )
- && ( fragmentShadingRateWithConservativeRasterization == rhs.fragmentShadingRateWithConservativeRasterization )
- && ( fragmentShadingRateWithFragmentShaderInterlock == rhs.fragmentShadingRateWithFragmentShaderInterlock )
- && ( fragmentShadingRateWithCustomSampleLocations == rhs.fragmentShadingRateWithCustomSampleLocations )
- && ( fragmentShadingRateStrictMultiplyCombiner == rhs.fragmentShadingRateStrictMultiplyCombiner );
- }
-
- bool operator!=( PhysicalDeviceFragmentShadingRatePropertiesKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceFragmentShadingRatePropertiesKHR;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Extent2D minFragmentShadingRateAttachmentTexelSize = {};
- VULKAN_HPP_NAMESPACE::Extent2D maxFragmentShadingRateAttachmentTexelSize = {};
- uint32_t maxFragmentShadingRateAttachmentTexelSizeAspectRatio = {};
- VULKAN_HPP_NAMESPACE::Bool32 primitiveFragmentShadingRateWithMultipleViewports = {};
- VULKAN_HPP_NAMESPACE::Bool32 layeredShadingRateAttachments = {};
- VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateNonTrivialCombinerOps = {};
- VULKAN_HPP_NAMESPACE::Extent2D maxFragmentSize = {};
- uint32_t maxFragmentSizeAspectRatio = {};
- uint32_t maxFragmentShadingRateCoverageSamples = {};
- VULKAN_HPP_NAMESPACE::SampleCountFlagBits maxFragmentShadingRateRasterizationSamples = VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1;
- VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateWithShaderDepthStencilWrites = {};
- VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateWithSampleMask = {};
- VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateWithShaderSampleMask = {};
- VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateWithConservativeRasterization = {};
- VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateWithFragmentShaderInterlock = {};
- VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateWithCustomSampleLocations = {};
- VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateStrictMultiplyCombiner = {};
-
- };
- static_assert( sizeof( PhysicalDeviceFragmentShadingRatePropertiesKHR ) == sizeof( VkPhysicalDeviceFragmentShadingRatePropertiesKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceFragmentShadingRatePropertiesKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceFragmentShadingRatePropertiesKHR>
+ struct StructExtends<PhysicalDeviceVulkan11Features, DeviceCreateInfo>
{
- using Type = PhysicalDeviceFragmentShadingRatePropertiesKHR;
- };
-
- struct PhysicalDeviceGroupProperties
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceGroupProperties;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceGroupProperties(uint32_t physicalDeviceCount_ = {}, std::array<VULKAN_HPP_NAMESPACE::PhysicalDevice,VK_MAX_DEVICE_GROUP_SIZE> const& physicalDevices_ = {}, VULKAN_HPP_NAMESPACE::Bool32 subsetAllocation_ = {}) VULKAN_HPP_NOEXCEPT
- : physicalDeviceCount( physicalDeviceCount_ ), physicalDevices( physicalDevices_ ), subsetAllocation( subsetAllocation_ )
- {}
-
- VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceGroupProperties( PhysicalDeviceGroupProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceGroupProperties( VkPhysicalDeviceGroupProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceGroupProperties & operator=( VkPhysicalDeviceGroupProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceGroupProperties const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceGroupProperties & operator=( PhysicalDeviceGroupProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceGroupProperties ) );
- return *this;
- }
-
-
- operator VkPhysicalDeviceGroupProperties const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceGroupProperties*>( this );
- }
-
- operator VkPhysicalDeviceGroupProperties &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceGroupProperties*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceGroupProperties const& ) const = default;
-#else
- bool operator==( PhysicalDeviceGroupProperties const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( physicalDeviceCount == rhs.physicalDeviceCount )
- && ( physicalDevices == rhs.physicalDevices )
- && ( subsetAllocation == rhs.subsetAllocation );
- }
-
- bool operator!=( PhysicalDeviceGroupProperties const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceGroupProperties;
- void* pNext = {};
- uint32_t physicalDeviceCount = {};
- VULKAN_HPP_NAMESPACE::ArrayWrapper1D<VULKAN_HPP_NAMESPACE::PhysicalDevice, VK_MAX_DEVICE_GROUP_SIZE> physicalDevices = {};
- VULKAN_HPP_NAMESPACE::Bool32 subsetAllocation = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceGroupProperties ) == sizeof( VkPhysicalDeviceGroupProperties ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceGroupProperties>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceGroupProperties>
+ struct StructExtends<PhysicalDeviceVulkan11Properties, PhysicalDeviceProperties2>
{
- using Type = PhysicalDeviceGroupProperties;
- };
- using PhysicalDeviceGroupPropertiesKHR = PhysicalDeviceGroupProperties;
-
- struct PhysicalDeviceHostQueryResetFeatures
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceHostQueryResetFeatures;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceHostQueryResetFeatures(VULKAN_HPP_NAMESPACE::Bool32 hostQueryReset_ = {}) VULKAN_HPP_NOEXCEPT
- : hostQueryReset( hostQueryReset_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceHostQueryResetFeatures( PhysicalDeviceHostQueryResetFeatures const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceHostQueryResetFeatures( VkPhysicalDeviceHostQueryResetFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceHostQueryResetFeatures & operator=( VkPhysicalDeviceHostQueryResetFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceHostQueryResetFeatures const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceHostQueryResetFeatures & operator=( PhysicalDeviceHostQueryResetFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceHostQueryResetFeatures ) );
- return *this;
- }
-
- PhysicalDeviceHostQueryResetFeatures & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceHostQueryResetFeatures & setHostQueryReset( VULKAN_HPP_NAMESPACE::Bool32 hostQueryReset_ ) VULKAN_HPP_NOEXCEPT
- {
- hostQueryReset = hostQueryReset_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceHostQueryResetFeatures const&() const VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<const VkPhysicalDeviceHostQueryResetFeatures*>( this );
- }
-
- operator VkPhysicalDeviceHostQueryResetFeatures &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceHostQueryResetFeatures*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceHostQueryResetFeatures const& ) const = default;
-#else
- bool operator==( PhysicalDeviceHostQueryResetFeatures const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( hostQueryReset == rhs.hostQueryReset );
- }
-
- bool operator!=( PhysicalDeviceHostQueryResetFeatures const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceHostQueryResetFeatures;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 hostQueryReset = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceHostQueryResetFeatures ) == sizeof( VkPhysicalDeviceHostQueryResetFeatures ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceHostQueryResetFeatures>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceHostQueryResetFeatures>
+ struct StructExtends<PhysicalDeviceVulkan12Features, PhysicalDeviceFeatures2>
{
- using Type = PhysicalDeviceHostQueryResetFeatures;
- };
- using PhysicalDeviceHostQueryResetFeaturesEXT = PhysicalDeviceHostQueryResetFeatures;
-
- struct PhysicalDeviceIDProperties
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceIdProperties;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceIDProperties(std::array<uint8_t,VK_UUID_SIZE> const& deviceUUID_ = {}, std::array<uint8_t,VK_UUID_SIZE> const& driverUUID_ = {}, std::array<uint8_t,VK_LUID_SIZE> const& deviceLUID_ = {}, uint32_t deviceNodeMask_ = {}, VULKAN_HPP_NAMESPACE::Bool32 deviceLUIDValid_ = {}) VULKAN_HPP_NOEXCEPT
- : deviceUUID( deviceUUID_ ), driverUUID( driverUUID_ ), deviceLUID( deviceLUID_ ), deviceNodeMask( deviceNodeMask_ ), deviceLUIDValid( deviceLUIDValid_ )
- {}
-
- VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceIDProperties( PhysicalDeviceIDProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceIDProperties( VkPhysicalDeviceIDProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceIDProperties & operator=( VkPhysicalDeviceIDProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceIDProperties const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceIDProperties & operator=( PhysicalDeviceIDProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceIDProperties ) );
- return *this;
- }
-
-
- operator VkPhysicalDeviceIDProperties const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceIDProperties*>( this );
- }
-
- operator VkPhysicalDeviceIDProperties &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceIDProperties*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceIDProperties const& ) const = default;
-#else
- bool operator==( PhysicalDeviceIDProperties const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( deviceUUID == rhs.deviceUUID )
- && ( driverUUID == rhs.driverUUID )
- && ( deviceLUID == rhs.deviceLUID )
- && ( deviceNodeMask == rhs.deviceNodeMask )
- && ( deviceLUIDValid == rhs.deviceLUIDValid );
- }
-
- bool operator!=( PhysicalDeviceIDProperties const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceIdProperties;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, VK_UUID_SIZE> deviceUUID = {};
- VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, VK_UUID_SIZE> driverUUID = {};
- VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, VK_LUID_SIZE> deviceLUID = {};
- uint32_t deviceNodeMask = {};
- VULKAN_HPP_NAMESPACE::Bool32 deviceLUIDValid = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceIDProperties ) == sizeof( VkPhysicalDeviceIDProperties ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceIDProperties>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceIdProperties>
+ struct StructExtends<PhysicalDeviceVulkan12Features, DeviceCreateInfo>
{
- using Type = PhysicalDeviceIDProperties;
- };
- using PhysicalDeviceIDPropertiesKHR = PhysicalDeviceIDProperties;
-
- struct PhysicalDeviceImageDrmFormatModifierInfoEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceImageDrmFormatModifierInfoEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceImageDrmFormatModifierInfoEXT(uint64_t drmFormatModifier_ = {}, VULKAN_HPP_NAMESPACE::SharingMode sharingMode_ = VULKAN_HPP_NAMESPACE::SharingMode::eExclusive, uint32_t queueFamilyIndexCount_ = {}, const uint32_t* pQueueFamilyIndices_ = {}) VULKAN_HPP_NOEXCEPT
- : drmFormatModifier( drmFormatModifier_ ), sharingMode( sharingMode_ ), queueFamilyIndexCount( queueFamilyIndexCount_ ), pQueueFamilyIndices( pQueueFamilyIndices_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceImageDrmFormatModifierInfoEXT( PhysicalDeviceImageDrmFormatModifierInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceImageDrmFormatModifierInfoEXT( VkPhysicalDeviceImageDrmFormatModifierInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- PhysicalDeviceImageDrmFormatModifierInfoEXT( uint64_t drmFormatModifier_, VULKAN_HPP_NAMESPACE::SharingMode sharingMode_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & queueFamilyIndices_ )
- : drmFormatModifier( drmFormatModifier_ ), sharingMode( sharingMode_ ), queueFamilyIndexCount( static_cast<uint32_t>( queueFamilyIndices_.size() ) ), pQueueFamilyIndices( queueFamilyIndices_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceImageDrmFormatModifierInfoEXT & operator=( VkPhysicalDeviceImageDrmFormatModifierInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceImageDrmFormatModifierInfoEXT const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceImageDrmFormatModifierInfoEXT & operator=( PhysicalDeviceImageDrmFormatModifierInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceImageDrmFormatModifierInfoEXT ) );
- return *this;
- }
-
- PhysicalDeviceImageDrmFormatModifierInfoEXT & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceImageDrmFormatModifierInfoEXT & setDrmFormatModifier( uint64_t drmFormatModifier_ ) VULKAN_HPP_NOEXCEPT
- {
- drmFormatModifier = drmFormatModifier_;
- return *this;
- }
-
- PhysicalDeviceImageDrmFormatModifierInfoEXT & setSharingMode( VULKAN_HPP_NAMESPACE::SharingMode sharingMode_ ) VULKAN_HPP_NOEXCEPT
- {
- sharingMode = sharingMode_;
- return *this;
- }
-
- PhysicalDeviceImageDrmFormatModifierInfoEXT & setQueueFamilyIndexCount( uint32_t queueFamilyIndexCount_ ) VULKAN_HPP_NOEXCEPT
- {
- queueFamilyIndexCount = queueFamilyIndexCount_;
- return *this;
- }
-
- PhysicalDeviceImageDrmFormatModifierInfoEXT & setPQueueFamilyIndices( const uint32_t* pQueueFamilyIndices_ ) VULKAN_HPP_NOEXCEPT
- {
- pQueueFamilyIndices = pQueueFamilyIndices_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- PhysicalDeviceImageDrmFormatModifierInfoEXT & setQueueFamilyIndices( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & queueFamilyIndices_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- queueFamilyIndexCount = static_cast<uint32_t>( queueFamilyIndices_.size() );
- pQueueFamilyIndices = queueFamilyIndices_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkPhysicalDeviceImageDrmFormatModifierInfoEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceImageDrmFormatModifierInfoEXT*>( this );
- }
-
- operator VkPhysicalDeviceImageDrmFormatModifierInfoEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceImageDrmFormatModifierInfoEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceImageDrmFormatModifierInfoEXT const& ) const = default;
-#else
- bool operator==( PhysicalDeviceImageDrmFormatModifierInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( drmFormatModifier == rhs.drmFormatModifier )
- && ( sharingMode == rhs.sharingMode )
- && ( queueFamilyIndexCount == rhs.queueFamilyIndexCount )
- && ( pQueueFamilyIndices == rhs.pQueueFamilyIndices );
- }
-
- bool operator!=( PhysicalDeviceImageDrmFormatModifierInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceImageDrmFormatModifierInfoEXT;
- const void* pNext = {};
- uint64_t drmFormatModifier = {};
- VULKAN_HPP_NAMESPACE::SharingMode sharingMode = VULKAN_HPP_NAMESPACE::SharingMode::eExclusive;
- uint32_t queueFamilyIndexCount = {};
- const uint32_t* pQueueFamilyIndices = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceImageDrmFormatModifierInfoEXT ) == sizeof( VkPhysicalDeviceImageDrmFormatModifierInfoEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceImageDrmFormatModifierInfoEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceImageDrmFormatModifierInfoEXT>
+ struct StructExtends<PhysicalDeviceVulkan12Properties, PhysicalDeviceProperties2>
{
- using Type = PhysicalDeviceImageDrmFormatModifierInfoEXT;
- };
-
- struct PhysicalDeviceImageRobustnessFeaturesEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceImageRobustnessFeaturesEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceImageRobustnessFeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 robustImageAccess_ = {}) VULKAN_HPP_NOEXCEPT
- : robustImageAccess( robustImageAccess_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceImageRobustnessFeaturesEXT( PhysicalDeviceImageRobustnessFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceImageRobustnessFeaturesEXT( VkPhysicalDeviceImageRobustnessFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceImageRobustnessFeaturesEXT & operator=( VkPhysicalDeviceImageRobustnessFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceImageRobustnessFeaturesEXT const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceImageRobustnessFeaturesEXT & operator=( PhysicalDeviceImageRobustnessFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceImageRobustnessFeaturesEXT ) );
- return *this;
- }
-
- PhysicalDeviceImageRobustnessFeaturesEXT & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceImageRobustnessFeaturesEXT & setRobustImageAccess( VULKAN_HPP_NAMESPACE::Bool32 robustImageAccess_ ) VULKAN_HPP_NOEXCEPT
- {
- robustImageAccess = robustImageAccess_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceImageRobustnessFeaturesEXT const&() const VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<const VkPhysicalDeviceImageRobustnessFeaturesEXT*>( this );
- }
-
- operator VkPhysicalDeviceImageRobustnessFeaturesEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceImageRobustnessFeaturesEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceImageRobustnessFeaturesEXT const& ) const = default;
-#else
- bool operator==( PhysicalDeviceImageRobustnessFeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( robustImageAccess == rhs.robustImageAccess );
- }
-
- bool operator!=( PhysicalDeviceImageRobustnessFeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceImageRobustnessFeaturesEXT;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 robustImageAccess = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceImageRobustnessFeaturesEXT ) == sizeof( VkPhysicalDeviceImageRobustnessFeaturesEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceImageRobustnessFeaturesEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceImageRobustnessFeaturesEXT>
+ struct StructExtends<PhysicalDeviceVulkanMemoryModelFeatures, PhysicalDeviceFeatures2>
{
- using Type = PhysicalDeviceImageRobustnessFeaturesEXT;
- };
-
- struct PhysicalDeviceImageViewImageFormatInfoEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceImageViewImageFormatInfoEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceImageViewImageFormatInfoEXT(VULKAN_HPP_NAMESPACE::ImageViewType imageViewType_ = VULKAN_HPP_NAMESPACE::ImageViewType::e1D) VULKAN_HPP_NOEXCEPT
- : imageViewType( imageViewType_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceImageViewImageFormatInfoEXT( PhysicalDeviceImageViewImageFormatInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceImageViewImageFormatInfoEXT( VkPhysicalDeviceImageViewImageFormatInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceImageViewImageFormatInfoEXT & operator=( VkPhysicalDeviceImageViewImageFormatInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceImageViewImageFormatInfoEXT const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceImageViewImageFormatInfoEXT & operator=( PhysicalDeviceImageViewImageFormatInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceImageViewImageFormatInfoEXT ) );
- return *this;
- }
-
- PhysicalDeviceImageViewImageFormatInfoEXT & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceImageViewImageFormatInfoEXT & setImageViewType( VULKAN_HPP_NAMESPACE::ImageViewType imageViewType_ ) VULKAN_HPP_NOEXCEPT
- {
- imageViewType = imageViewType_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceImageViewImageFormatInfoEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceImageViewImageFormatInfoEXT*>( this );
- }
-
- operator VkPhysicalDeviceImageViewImageFormatInfoEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceImageViewImageFormatInfoEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceImageViewImageFormatInfoEXT const& ) const = default;
-#else
- bool operator==( PhysicalDeviceImageViewImageFormatInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( imageViewType == rhs.imageViewType );
- }
-
- bool operator!=( PhysicalDeviceImageViewImageFormatInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceImageViewImageFormatInfoEXT;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::ImageViewType imageViewType = VULKAN_HPP_NAMESPACE::ImageViewType::e1D;
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceImageViewImageFormatInfoEXT ) == sizeof( VkPhysicalDeviceImageViewImageFormatInfoEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceImageViewImageFormatInfoEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceImageViewImageFormatInfoEXT>
- {
- using Type = PhysicalDeviceImageViewImageFormatInfoEXT;
- };
-
- struct PhysicalDeviceImagelessFramebufferFeatures
+ struct StructExtends<PhysicalDeviceVulkanMemoryModelFeatures, DeviceCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceImagelessFramebufferFeatures;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceImagelessFramebufferFeatures(VULKAN_HPP_NAMESPACE::Bool32 imagelessFramebuffer_ = {}) VULKAN_HPP_NOEXCEPT
- : imagelessFramebuffer( imagelessFramebuffer_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceImagelessFramebufferFeatures( PhysicalDeviceImagelessFramebufferFeatures const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceImagelessFramebufferFeatures( VkPhysicalDeviceImagelessFramebufferFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceImagelessFramebufferFeatures & operator=( VkPhysicalDeviceImagelessFramebufferFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceImagelessFramebufferFeatures const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceImagelessFramebufferFeatures & operator=( PhysicalDeviceImagelessFramebufferFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceImagelessFramebufferFeatures ) );
- return *this;
- }
-
- PhysicalDeviceImagelessFramebufferFeatures & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceImagelessFramebufferFeatures & setImagelessFramebuffer( VULKAN_HPP_NAMESPACE::Bool32 imagelessFramebuffer_ ) VULKAN_HPP_NOEXCEPT
- {
- imagelessFramebuffer = imagelessFramebuffer_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceImagelessFramebufferFeatures const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceImagelessFramebufferFeatures*>( this );
- }
-
- operator VkPhysicalDeviceImagelessFramebufferFeatures &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceImagelessFramebufferFeatures*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceImagelessFramebufferFeatures const& ) const = default;
-#else
- bool operator==( PhysicalDeviceImagelessFramebufferFeatures const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( imagelessFramebuffer == rhs.imagelessFramebuffer );
- }
-
- bool operator!=( PhysicalDeviceImagelessFramebufferFeatures const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceImagelessFramebufferFeatures;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 imagelessFramebuffer = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceImagelessFramebufferFeatures ) == sizeof( VkPhysicalDeviceImagelessFramebufferFeatures ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceImagelessFramebufferFeatures>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceImagelessFramebufferFeatures>
+ struct StructExtends<PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR, PhysicalDeviceFeatures2>
{
- using Type = PhysicalDeviceImagelessFramebufferFeatures;
- };
- using PhysicalDeviceImagelessFramebufferFeaturesKHR = PhysicalDeviceImagelessFramebufferFeatures;
-
- struct PhysicalDeviceIndexTypeUint8FeaturesEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceIndexTypeUint8FeaturesEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceIndexTypeUint8FeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 indexTypeUint8_ = {}) VULKAN_HPP_NOEXCEPT
- : indexTypeUint8( indexTypeUint8_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceIndexTypeUint8FeaturesEXT( PhysicalDeviceIndexTypeUint8FeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceIndexTypeUint8FeaturesEXT( VkPhysicalDeviceIndexTypeUint8FeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceIndexTypeUint8FeaturesEXT & operator=( VkPhysicalDeviceIndexTypeUint8FeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceIndexTypeUint8FeaturesEXT const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceIndexTypeUint8FeaturesEXT & operator=( PhysicalDeviceIndexTypeUint8FeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceIndexTypeUint8FeaturesEXT ) );
- return *this;
- }
-
- PhysicalDeviceIndexTypeUint8FeaturesEXT & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceIndexTypeUint8FeaturesEXT & setIndexTypeUint8( VULKAN_HPP_NAMESPACE::Bool32 indexTypeUint8_ ) VULKAN_HPP_NOEXCEPT
- {
- indexTypeUint8 = indexTypeUint8_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceIndexTypeUint8FeaturesEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceIndexTypeUint8FeaturesEXT*>( this );
- }
-
- operator VkPhysicalDeviceIndexTypeUint8FeaturesEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceIndexTypeUint8FeaturesEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceIndexTypeUint8FeaturesEXT const& ) const = default;
-#else
- bool operator==( PhysicalDeviceIndexTypeUint8FeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( indexTypeUint8 == rhs.indexTypeUint8 );
- }
-
- bool operator!=( PhysicalDeviceIndexTypeUint8FeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceIndexTypeUint8FeaturesEXT;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 indexTypeUint8 = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceIndexTypeUint8FeaturesEXT ) == sizeof( VkPhysicalDeviceIndexTypeUint8FeaturesEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceIndexTypeUint8FeaturesEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceIndexTypeUint8FeaturesEXT>
- {
- using Type = PhysicalDeviceIndexTypeUint8FeaturesEXT;
- };
-
- struct PhysicalDeviceInlineUniformBlockFeaturesEXT
+ struct StructExtends<PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR, DeviceCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceInlineUniformBlockFeaturesEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceInlineUniformBlockFeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 inlineUniformBlock_ = {}, VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingInlineUniformBlockUpdateAfterBind_ = {}) VULKAN_HPP_NOEXCEPT
- : inlineUniformBlock( inlineUniformBlock_ ), descriptorBindingInlineUniformBlockUpdateAfterBind( descriptorBindingInlineUniformBlockUpdateAfterBind_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceInlineUniformBlockFeaturesEXT( PhysicalDeviceInlineUniformBlockFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceInlineUniformBlockFeaturesEXT( VkPhysicalDeviceInlineUniformBlockFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceInlineUniformBlockFeaturesEXT & operator=( VkPhysicalDeviceInlineUniformBlockFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceInlineUniformBlockFeaturesEXT const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceInlineUniformBlockFeaturesEXT & operator=( PhysicalDeviceInlineUniformBlockFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceInlineUniformBlockFeaturesEXT ) );
- return *this;
- }
-
- PhysicalDeviceInlineUniformBlockFeaturesEXT & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceInlineUniformBlockFeaturesEXT & setInlineUniformBlock( VULKAN_HPP_NAMESPACE::Bool32 inlineUniformBlock_ ) VULKAN_HPP_NOEXCEPT
- {
- inlineUniformBlock = inlineUniformBlock_;
- return *this;
- }
-
- PhysicalDeviceInlineUniformBlockFeaturesEXT & setDescriptorBindingInlineUniformBlockUpdateAfterBind( VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingInlineUniformBlockUpdateAfterBind_ ) VULKAN_HPP_NOEXCEPT
- {
- descriptorBindingInlineUniformBlockUpdateAfterBind = descriptorBindingInlineUniformBlockUpdateAfterBind_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceInlineUniformBlockFeaturesEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceInlineUniformBlockFeaturesEXT*>( this );
- }
-
- operator VkPhysicalDeviceInlineUniformBlockFeaturesEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceInlineUniformBlockFeaturesEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceInlineUniformBlockFeaturesEXT const& ) const = default;
-#else
- bool operator==( PhysicalDeviceInlineUniformBlockFeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( inlineUniformBlock == rhs.inlineUniformBlock )
- && ( descriptorBindingInlineUniformBlockUpdateAfterBind == rhs.descriptorBindingInlineUniformBlockUpdateAfterBind );
- }
-
- bool operator!=( PhysicalDeviceInlineUniformBlockFeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceInlineUniformBlockFeaturesEXT;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 inlineUniformBlock = {};
- VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingInlineUniformBlockUpdateAfterBind = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceInlineUniformBlockFeaturesEXT ) == sizeof( VkPhysicalDeviceInlineUniformBlockFeaturesEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceInlineUniformBlockFeaturesEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceInlineUniformBlockFeaturesEXT>
+ struct StructExtends<PhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT, PhysicalDeviceFeatures2>
{
- using Type = PhysicalDeviceInlineUniformBlockFeaturesEXT;
- };
-
- struct PhysicalDeviceInlineUniformBlockPropertiesEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceInlineUniformBlockPropertiesEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceInlineUniformBlockPropertiesEXT(uint32_t maxInlineUniformBlockSize_ = {}, uint32_t maxPerStageDescriptorInlineUniformBlocks_ = {}, uint32_t maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks_ = {}, uint32_t maxDescriptorSetInlineUniformBlocks_ = {}, uint32_t maxDescriptorSetUpdateAfterBindInlineUniformBlocks_ = {}) VULKAN_HPP_NOEXCEPT
- : maxInlineUniformBlockSize( maxInlineUniformBlockSize_ ), maxPerStageDescriptorInlineUniformBlocks( maxPerStageDescriptorInlineUniformBlocks_ ), maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks( maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks_ ), maxDescriptorSetInlineUniformBlocks( maxDescriptorSetInlineUniformBlocks_ ), maxDescriptorSetUpdateAfterBindInlineUniformBlocks( maxDescriptorSetUpdateAfterBindInlineUniformBlocks_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceInlineUniformBlockPropertiesEXT( PhysicalDeviceInlineUniformBlockPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceInlineUniformBlockPropertiesEXT( VkPhysicalDeviceInlineUniformBlockPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceInlineUniformBlockPropertiesEXT & operator=( VkPhysicalDeviceInlineUniformBlockPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceInlineUniformBlockPropertiesEXT const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceInlineUniformBlockPropertiesEXT & operator=( PhysicalDeviceInlineUniformBlockPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceInlineUniformBlockPropertiesEXT ) );
- return *this;
- }
-
-
- operator VkPhysicalDeviceInlineUniformBlockPropertiesEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceInlineUniformBlockPropertiesEXT*>( this );
- }
-
- operator VkPhysicalDeviceInlineUniformBlockPropertiesEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceInlineUniformBlockPropertiesEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceInlineUniformBlockPropertiesEXT const& ) const = default;
-#else
- bool operator==( PhysicalDeviceInlineUniformBlockPropertiesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( maxInlineUniformBlockSize == rhs.maxInlineUniformBlockSize )
- && ( maxPerStageDescriptorInlineUniformBlocks == rhs.maxPerStageDescriptorInlineUniformBlocks )
- && ( maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks == rhs.maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks )
- && ( maxDescriptorSetInlineUniformBlocks == rhs.maxDescriptorSetInlineUniformBlocks )
- && ( maxDescriptorSetUpdateAfterBindInlineUniformBlocks == rhs.maxDescriptorSetUpdateAfterBindInlineUniformBlocks );
- }
-
- bool operator!=( PhysicalDeviceInlineUniformBlockPropertiesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceInlineUniformBlockPropertiesEXT;
- void* pNext = {};
- uint32_t maxInlineUniformBlockSize = {};
- uint32_t maxPerStageDescriptorInlineUniformBlocks = {};
- uint32_t maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks = {};
- uint32_t maxDescriptorSetInlineUniformBlocks = {};
- uint32_t maxDescriptorSetUpdateAfterBindInlineUniformBlocks = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceInlineUniformBlockPropertiesEXT ) == sizeof( VkPhysicalDeviceInlineUniformBlockPropertiesEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceInlineUniformBlockPropertiesEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceInlineUniformBlockPropertiesEXT>
- {
- using Type = PhysicalDeviceInlineUniformBlockPropertiesEXT;
- };
-
- struct PhysicalDeviceLineRasterizationFeaturesEXT
+ struct StructExtends<PhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT, DeviceCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceLineRasterizationFeaturesEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceLineRasterizationFeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 rectangularLines_ = {}, VULKAN_HPP_NAMESPACE::Bool32 bresenhamLines_ = {}, VULKAN_HPP_NAMESPACE::Bool32 smoothLines_ = {}, VULKAN_HPP_NAMESPACE::Bool32 stippledRectangularLines_ = {}, VULKAN_HPP_NAMESPACE::Bool32 stippledBresenhamLines_ = {}, VULKAN_HPP_NAMESPACE::Bool32 stippledSmoothLines_ = {}) VULKAN_HPP_NOEXCEPT
- : rectangularLines( rectangularLines_ ), bresenhamLines( bresenhamLines_ ), smoothLines( smoothLines_ ), stippledRectangularLines( stippledRectangularLines_ ), stippledBresenhamLines( stippledBresenhamLines_ ), stippledSmoothLines( stippledSmoothLines_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceLineRasterizationFeaturesEXT( PhysicalDeviceLineRasterizationFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceLineRasterizationFeaturesEXT( VkPhysicalDeviceLineRasterizationFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceLineRasterizationFeaturesEXT & operator=( VkPhysicalDeviceLineRasterizationFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceLineRasterizationFeaturesEXT const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceLineRasterizationFeaturesEXT & operator=( PhysicalDeviceLineRasterizationFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceLineRasterizationFeaturesEXT ) );
- return *this;
- }
-
- PhysicalDeviceLineRasterizationFeaturesEXT & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceLineRasterizationFeaturesEXT & setRectangularLines( VULKAN_HPP_NAMESPACE::Bool32 rectangularLines_ ) VULKAN_HPP_NOEXCEPT
- {
- rectangularLines = rectangularLines_;
- return *this;
- }
-
- PhysicalDeviceLineRasterizationFeaturesEXT & setBresenhamLines( VULKAN_HPP_NAMESPACE::Bool32 bresenhamLines_ ) VULKAN_HPP_NOEXCEPT
- {
- bresenhamLines = bresenhamLines_;
- return *this;
- }
-
- PhysicalDeviceLineRasterizationFeaturesEXT & setSmoothLines( VULKAN_HPP_NAMESPACE::Bool32 smoothLines_ ) VULKAN_HPP_NOEXCEPT
- {
- smoothLines = smoothLines_;
- return *this;
- }
-
- PhysicalDeviceLineRasterizationFeaturesEXT & setStippledRectangularLines( VULKAN_HPP_NAMESPACE::Bool32 stippledRectangularLines_ ) VULKAN_HPP_NOEXCEPT
- {
- stippledRectangularLines = stippledRectangularLines_;
- return *this;
- }
-
- PhysicalDeviceLineRasterizationFeaturesEXT & setStippledBresenhamLines( VULKAN_HPP_NAMESPACE::Bool32 stippledBresenhamLines_ ) VULKAN_HPP_NOEXCEPT
- {
- stippledBresenhamLines = stippledBresenhamLines_;
- return *this;
- }
-
- PhysicalDeviceLineRasterizationFeaturesEXT & setStippledSmoothLines( VULKAN_HPP_NAMESPACE::Bool32 stippledSmoothLines_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- stippledSmoothLines = stippledSmoothLines_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceLineRasterizationFeaturesEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceLineRasterizationFeaturesEXT*>( this );
- }
-
- operator VkPhysicalDeviceLineRasterizationFeaturesEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceLineRasterizationFeaturesEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceLineRasterizationFeaturesEXT const& ) const = default;
-#else
- bool operator==( PhysicalDeviceLineRasterizationFeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( rectangularLines == rhs.rectangularLines )
- && ( bresenhamLines == rhs.bresenhamLines )
- && ( smoothLines == rhs.smoothLines )
- && ( stippledRectangularLines == rhs.stippledRectangularLines )
- && ( stippledBresenhamLines == rhs.stippledBresenhamLines )
- && ( stippledSmoothLines == rhs.stippledSmoothLines );
- }
-
- bool operator!=( PhysicalDeviceLineRasterizationFeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceLineRasterizationFeaturesEXT;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 rectangularLines = {};
- VULKAN_HPP_NAMESPACE::Bool32 bresenhamLines = {};
- VULKAN_HPP_NAMESPACE::Bool32 smoothLines = {};
- VULKAN_HPP_NAMESPACE::Bool32 stippledRectangularLines = {};
- VULKAN_HPP_NAMESPACE::Bool32 stippledBresenhamLines = {};
- VULKAN_HPP_NAMESPACE::Bool32 stippledSmoothLines = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceLineRasterizationFeaturesEXT ) == sizeof( VkPhysicalDeviceLineRasterizationFeaturesEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceLineRasterizationFeaturesEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceLineRasterizationFeaturesEXT>
+ struct StructExtends<PhysicalDeviceYcbcrImageArraysFeaturesEXT, PhysicalDeviceFeatures2>
{
- using Type = PhysicalDeviceLineRasterizationFeaturesEXT;
- };
-
- struct PhysicalDeviceLineRasterizationPropertiesEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceLineRasterizationPropertiesEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceLineRasterizationPropertiesEXT(uint32_t lineSubPixelPrecisionBits_ = {}) VULKAN_HPP_NOEXCEPT
- : lineSubPixelPrecisionBits( lineSubPixelPrecisionBits_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceLineRasterizationPropertiesEXT( PhysicalDeviceLineRasterizationPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceLineRasterizationPropertiesEXT( VkPhysicalDeviceLineRasterizationPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceLineRasterizationPropertiesEXT & operator=( VkPhysicalDeviceLineRasterizationPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceLineRasterizationPropertiesEXT const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceLineRasterizationPropertiesEXT & operator=( PhysicalDeviceLineRasterizationPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceLineRasterizationPropertiesEXT ) );
- return *this;
- }
-
-
- operator VkPhysicalDeviceLineRasterizationPropertiesEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceLineRasterizationPropertiesEXT*>( this );
- }
-
- operator VkPhysicalDeviceLineRasterizationPropertiesEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceLineRasterizationPropertiesEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceLineRasterizationPropertiesEXT const& ) const = default;
-#else
- bool operator==( PhysicalDeviceLineRasterizationPropertiesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( lineSubPixelPrecisionBits == rhs.lineSubPixelPrecisionBits );
- }
-
- bool operator!=( PhysicalDeviceLineRasterizationPropertiesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceLineRasterizationPropertiesEXT;
- void* pNext = {};
- uint32_t lineSubPixelPrecisionBits = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceLineRasterizationPropertiesEXT ) == sizeof( VkPhysicalDeviceLineRasterizationPropertiesEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceLineRasterizationPropertiesEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceLineRasterizationPropertiesEXT>
- {
- using Type = PhysicalDeviceLineRasterizationPropertiesEXT;
- };
-
- struct PhysicalDeviceMaintenance3Properties
+ struct StructExtends<PhysicalDeviceYcbcrImageArraysFeaturesEXT, DeviceCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceMaintenance3Properties;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceMaintenance3Properties(uint32_t maxPerSetDescriptors_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize maxMemoryAllocationSize_ = {}) VULKAN_HPP_NOEXCEPT
- : maxPerSetDescriptors( maxPerSetDescriptors_ ), maxMemoryAllocationSize( maxMemoryAllocationSize_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceMaintenance3Properties( PhysicalDeviceMaintenance3Properties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceMaintenance3Properties( VkPhysicalDeviceMaintenance3Properties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceMaintenance3Properties & operator=( VkPhysicalDeviceMaintenance3Properties const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceMaintenance3Properties const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceMaintenance3Properties & operator=( PhysicalDeviceMaintenance3Properties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceMaintenance3Properties ) );
- return *this;
- }
-
-
- operator VkPhysicalDeviceMaintenance3Properties const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceMaintenance3Properties*>( this );
- }
-
- operator VkPhysicalDeviceMaintenance3Properties &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceMaintenance3Properties*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceMaintenance3Properties const& ) const = default;
-#else
- bool operator==( PhysicalDeviceMaintenance3Properties const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( maxPerSetDescriptors == rhs.maxPerSetDescriptors )
- && ( maxMemoryAllocationSize == rhs.maxMemoryAllocationSize );
- }
-
- bool operator!=( PhysicalDeviceMaintenance3Properties const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceMaintenance3Properties;
- void* pNext = {};
- uint32_t maxPerSetDescriptors = {};
- VULKAN_HPP_NAMESPACE::DeviceSize maxMemoryAllocationSize = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceMaintenance3Properties ) == sizeof( VkPhysicalDeviceMaintenance3Properties ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceMaintenance3Properties>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceMaintenance3Properties>
+ struct StructExtends<PhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR, PhysicalDeviceFeatures2>
{
- using Type = PhysicalDeviceMaintenance3Properties;
- };
- using PhysicalDeviceMaintenance3PropertiesKHR = PhysicalDeviceMaintenance3Properties;
-
- struct PhysicalDeviceMemoryBudgetPropertiesEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceMemoryBudgetPropertiesEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceMemoryBudgetPropertiesEXT(std::array<VULKAN_HPP_NAMESPACE::DeviceSize,VK_MAX_MEMORY_HEAPS> const& heapBudget_ = {}, std::array<VULKAN_HPP_NAMESPACE::DeviceSize,VK_MAX_MEMORY_HEAPS> const& heapUsage_ = {}) VULKAN_HPP_NOEXCEPT
- : heapBudget( heapBudget_ ), heapUsage( heapUsage_ )
- {}
-
- VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceMemoryBudgetPropertiesEXT( PhysicalDeviceMemoryBudgetPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceMemoryBudgetPropertiesEXT( VkPhysicalDeviceMemoryBudgetPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceMemoryBudgetPropertiesEXT & operator=( VkPhysicalDeviceMemoryBudgetPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryBudgetPropertiesEXT const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceMemoryBudgetPropertiesEXT & operator=( PhysicalDeviceMemoryBudgetPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceMemoryBudgetPropertiesEXT ) );
- return *this;
- }
-
-
- operator VkPhysicalDeviceMemoryBudgetPropertiesEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceMemoryBudgetPropertiesEXT*>( this );
- }
-
- operator VkPhysicalDeviceMemoryBudgetPropertiesEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceMemoryBudgetPropertiesEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceMemoryBudgetPropertiesEXT const& ) const = default;
-#else
- bool operator==( PhysicalDeviceMemoryBudgetPropertiesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( heapBudget == rhs.heapBudget )
- && ( heapUsage == rhs.heapUsage );
- }
-
- bool operator!=( PhysicalDeviceMemoryBudgetPropertiesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceMemoryBudgetPropertiesEXT;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::ArrayWrapper1D<VULKAN_HPP_NAMESPACE::DeviceSize, VK_MAX_MEMORY_HEAPS> heapBudget = {};
- VULKAN_HPP_NAMESPACE::ArrayWrapper1D<VULKAN_HPP_NAMESPACE::DeviceSize, VK_MAX_MEMORY_HEAPS> heapUsage = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceMemoryBudgetPropertiesEXT ) == sizeof( VkPhysicalDeviceMemoryBudgetPropertiesEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceMemoryBudgetPropertiesEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceMemoryBudgetPropertiesEXT>
- {
- using Type = PhysicalDeviceMemoryBudgetPropertiesEXT;
- };
-
- struct PhysicalDeviceMemoryPriorityFeaturesEXT
+ struct StructExtends<PhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR, DeviceCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceMemoryPriorityFeaturesEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceMemoryPriorityFeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 memoryPriority_ = {}) VULKAN_HPP_NOEXCEPT
- : memoryPriority( memoryPriority_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceMemoryPriorityFeaturesEXT( PhysicalDeviceMemoryPriorityFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceMemoryPriorityFeaturesEXT( VkPhysicalDeviceMemoryPriorityFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceMemoryPriorityFeaturesEXT & operator=( VkPhysicalDeviceMemoryPriorityFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryPriorityFeaturesEXT const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceMemoryPriorityFeaturesEXT & operator=( PhysicalDeviceMemoryPriorityFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceMemoryPriorityFeaturesEXT ) );
- return *this;
- }
-
- PhysicalDeviceMemoryPriorityFeaturesEXT & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceMemoryPriorityFeaturesEXT & setMemoryPriority( VULKAN_HPP_NAMESPACE::Bool32 memoryPriority_ ) VULKAN_HPP_NOEXCEPT
- {
- memoryPriority = memoryPriority_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceMemoryPriorityFeaturesEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceMemoryPriorityFeaturesEXT*>( this );
- }
-
- operator VkPhysicalDeviceMemoryPriorityFeaturesEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceMemoryPriorityFeaturesEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceMemoryPriorityFeaturesEXT const& ) const = default;
-#else
- bool operator==( PhysicalDeviceMemoryPriorityFeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( memoryPriority == rhs.memoryPriority );
- }
-
- bool operator!=( PhysicalDeviceMemoryPriorityFeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceMemoryPriorityFeaturesEXT;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 memoryPriority = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceMemoryPriorityFeaturesEXT ) == sizeof( VkPhysicalDeviceMemoryPriorityFeaturesEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceMemoryPriorityFeaturesEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceMemoryPriorityFeaturesEXT>
+ struct StructExtends<PipelineColorBlendAdvancedStateCreateInfoEXT, PipelineColorBlendStateCreateInfo>
{
- using Type = PhysicalDeviceMemoryPriorityFeaturesEXT;
- };
-
- struct PhysicalDeviceMeshShaderFeaturesNV
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceMeshShaderFeaturesNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceMeshShaderFeaturesNV(VULKAN_HPP_NAMESPACE::Bool32 taskShader_ = {}, VULKAN_HPP_NAMESPACE::Bool32 meshShader_ = {}) VULKAN_HPP_NOEXCEPT
- : taskShader( taskShader_ ), meshShader( meshShader_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceMeshShaderFeaturesNV( PhysicalDeviceMeshShaderFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceMeshShaderFeaturesNV( VkPhysicalDeviceMeshShaderFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceMeshShaderFeaturesNV & operator=( VkPhysicalDeviceMeshShaderFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceMeshShaderFeaturesNV const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceMeshShaderFeaturesNV & operator=( PhysicalDeviceMeshShaderFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceMeshShaderFeaturesNV ) );
- return *this;
- }
-
- PhysicalDeviceMeshShaderFeaturesNV & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceMeshShaderFeaturesNV & setTaskShader( VULKAN_HPP_NAMESPACE::Bool32 taskShader_ ) VULKAN_HPP_NOEXCEPT
- {
- taskShader = taskShader_;
- return *this;
- }
-
- PhysicalDeviceMeshShaderFeaturesNV & setMeshShader( VULKAN_HPP_NAMESPACE::Bool32 meshShader_ ) VULKAN_HPP_NOEXCEPT
- {
- meshShader = meshShader_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceMeshShaderFeaturesNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceMeshShaderFeaturesNV*>( this );
- }
-
- operator VkPhysicalDeviceMeshShaderFeaturesNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceMeshShaderFeaturesNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceMeshShaderFeaturesNV const& ) const = default;
-#else
- bool operator==( PhysicalDeviceMeshShaderFeaturesNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( taskShader == rhs.taskShader )
- && ( meshShader == rhs.meshShader );
- }
-
- bool operator!=( PhysicalDeviceMeshShaderFeaturesNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceMeshShaderFeaturesNV;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 taskShader = {};
- VULKAN_HPP_NAMESPACE::Bool32 meshShader = {};
-
- };
- static_assert( sizeof( PhysicalDeviceMeshShaderFeaturesNV ) == sizeof( VkPhysicalDeviceMeshShaderFeaturesNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceMeshShaderFeaturesNV>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceMeshShaderFeaturesNV>
- {
- using Type = PhysicalDeviceMeshShaderFeaturesNV;
+ value = true
+ };
};
-
- struct PhysicalDeviceMeshShaderPropertiesNV
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceMeshShaderPropertiesNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceMeshShaderPropertiesNV(uint32_t maxDrawMeshTasksCount_ = {}, uint32_t maxTaskWorkGroupInvocations_ = {}, std::array<uint32_t,3> const& maxTaskWorkGroupSize_ = {}, uint32_t maxTaskTotalMemorySize_ = {}, uint32_t maxTaskOutputCount_ = {}, uint32_t maxMeshWorkGroupInvocations_ = {}, std::array<uint32_t,3> const& maxMeshWorkGroupSize_ = {}, uint32_t maxMeshTotalMemorySize_ = {}, uint32_t maxMeshOutputVertices_ = {}, uint32_t maxMeshOutputPrimitives_ = {}, uint32_t maxMeshMultiviewViewCount_ = {}, uint32_t meshOutputPerVertexGranularity_ = {}, uint32_t meshOutputPerPrimitiveGranularity_ = {}) VULKAN_HPP_NOEXCEPT
- : maxDrawMeshTasksCount( maxDrawMeshTasksCount_ ), maxTaskWorkGroupInvocations( maxTaskWorkGroupInvocations_ ), maxTaskWorkGroupSize( maxTaskWorkGroupSize_ ), maxTaskTotalMemorySize( maxTaskTotalMemorySize_ ), maxTaskOutputCount( maxTaskOutputCount_ ), maxMeshWorkGroupInvocations( maxMeshWorkGroupInvocations_ ), maxMeshWorkGroupSize( maxMeshWorkGroupSize_ ), maxMeshTotalMemorySize( maxMeshTotalMemorySize_ ), maxMeshOutputVertices( maxMeshOutputVertices_ ), maxMeshOutputPrimitives( maxMeshOutputPrimitives_ ), maxMeshMultiviewViewCount( maxMeshMultiviewViewCount_ ), meshOutputPerVertexGranularity( meshOutputPerVertexGranularity_ ), meshOutputPerPrimitiveGranularity( meshOutputPerPrimitiveGranularity_ )
- {}
-
- VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceMeshShaderPropertiesNV( PhysicalDeviceMeshShaderPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceMeshShaderPropertiesNV( VkPhysicalDeviceMeshShaderPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceMeshShaderPropertiesNV & operator=( VkPhysicalDeviceMeshShaderPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceMeshShaderPropertiesNV const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceMeshShaderPropertiesNV & operator=( PhysicalDeviceMeshShaderPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceMeshShaderPropertiesNV ) );
- return *this;
- }
-
-
- operator VkPhysicalDeviceMeshShaderPropertiesNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceMeshShaderPropertiesNV*>( this );
- }
-
- operator VkPhysicalDeviceMeshShaderPropertiesNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceMeshShaderPropertiesNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceMeshShaderPropertiesNV const& ) const = default;
-#else
- bool operator==( PhysicalDeviceMeshShaderPropertiesNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( maxDrawMeshTasksCount == rhs.maxDrawMeshTasksCount )
- && ( maxTaskWorkGroupInvocations == rhs.maxTaskWorkGroupInvocations )
- && ( maxTaskWorkGroupSize == rhs.maxTaskWorkGroupSize )
- && ( maxTaskTotalMemorySize == rhs.maxTaskTotalMemorySize )
- && ( maxTaskOutputCount == rhs.maxTaskOutputCount )
- && ( maxMeshWorkGroupInvocations == rhs.maxMeshWorkGroupInvocations )
- && ( maxMeshWorkGroupSize == rhs.maxMeshWorkGroupSize )
- && ( maxMeshTotalMemorySize == rhs.maxMeshTotalMemorySize )
- && ( maxMeshOutputVertices == rhs.maxMeshOutputVertices )
- && ( maxMeshOutputPrimitives == rhs.maxMeshOutputPrimitives )
- && ( maxMeshMultiviewViewCount == rhs.maxMeshMultiviewViewCount )
- && ( meshOutputPerVertexGranularity == rhs.meshOutputPerVertexGranularity )
- && ( meshOutputPerPrimitiveGranularity == rhs.meshOutputPerPrimitiveGranularity );
- }
-
- bool operator!=( PhysicalDeviceMeshShaderPropertiesNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceMeshShaderPropertiesNV;
- void* pNext = {};
- uint32_t maxDrawMeshTasksCount = {};
- uint32_t maxTaskWorkGroupInvocations = {};
- VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint32_t, 3> maxTaskWorkGroupSize = {};
- uint32_t maxTaskTotalMemorySize = {};
- uint32_t maxTaskOutputCount = {};
- uint32_t maxMeshWorkGroupInvocations = {};
- VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint32_t, 3> maxMeshWorkGroupSize = {};
- uint32_t maxMeshTotalMemorySize = {};
- uint32_t maxMeshOutputVertices = {};
- uint32_t maxMeshOutputPrimitives = {};
- uint32_t maxMeshMultiviewViewCount = {};
- uint32_t meshOutputPerVertexGranularity = {};
- uint32_t meshOutputPerPrimitiveGranularity = {};
-
- };
- static_assert( sizeof( PhysicalDeviceMeshShaderPropertiesNV ) == sizeof( VkPhysicalDeviceMeshShaderPropertiesNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceMeshShaderPropertiesNV>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceMeshShaderPropertiesNV>
+ struct StructExtends<PipelineColorWriteCreateInfoEXT, PipelineColorBlendStateCreateInfo>
{
- using Type = PhysicalDeviceMeshShaderPropertiesNV;
- };
-
- struct PhysicalDeviceMultiviewFeatures
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceMultiviewFeatures;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceMultiviewFeatures(VULKAN_HPP_NAMESPACE::Bool32 multiview_ = {}, VULKAN_HPP_NAMESPACE::Bool32 multiviewGeometryShader_ = {}, VULKAN_HPP_NAMESPACE::Bool32 multiviewTessellationShader_ = {}) VULKAN_HPP_NOEXCEPT
- : multiview( multiview_ ), multiviewGeometryShader( multiviewGeometryShader_ ), multiviewTessellationShader( multiviewTessellationShader_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceMultiviewFeatures( PhysicalDeviceMultiviewFeatures const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceMultiviewFeatures( VkPhysicalDeviceMultiviewFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceMultiviewFeatures & operator=( VkPhysicalDeviceMultiviewFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceMultiviewFeatures const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceMultiviewFeatures & operator=( PhysicalDeviceMultiviewFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceMultiviewFeatures ) );
- return *this;
- }
-
- PhysicalDeviceMultiviewFeatures & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceMultiviewFeatures & setMultiview( VULKAN_HPP_NAMESPACE::Bool32 multiview_ ) VULKAN_HPP_NOEXCEPT
- {
- multiview = multiview_;
- return *this;
- }
-
- PhysicalDeviceMultiviewFeatures & setMultiviewGeometryShader( VULKAN_HPP_NAMESPACE::Bool32 multiviewGeometryShader_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- multiviewGeometryShader = multiviewGeometryShader_;
- return *this;
- }
-
- PhysicalDeviceMultiviewFeatures & setMultiviewTessellationShader( VULKAN_HPP_NAMESPACE::Bool32 multiviewTessellationShader_ ) VULKAN_HPP_NOEXCEPT
- {
- multiviewTessellationShader = multiviewTessellationShader_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceMultiviewFeatures const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceMultiviewFeatures*>( this );
- }
-
- operator VkPhysicalDeviceMultiviewFeatures &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceMultiviewFeatures*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceMultiviewFeatures const& ) const = default;
-#else
- bool operator==( PhysicalDeviceMultiviewFeatures const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( multiview == rhs.multiview )
- && ( multiviewGeometryShader == rhs.multiviewGeometryShader )
- && ( multiviewTessellationShader == rhs.multiviewTessellationShader );
- }
-
- bool operator!=( PhysicalDeviceMultiviewFeatures const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceMultiviewFeatures;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 multiview = {};
- VULKAN_HPP_NAMESPACE::Bool32 multiviewGeometryShader = {};
- VULKAN_HPP_NAMESPACE::Bool32 multiviewTessellationShader = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceMultiviewFeatures ) == sizeof( VkPhysicalDeviceMultiviewFeatures ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceMultiviewFeatures>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceMultiviewFeatures>
- {
- using Type = PhysicalDeviceMultiviewFeatures;
- };
- using PhysicalDeviceMultiviewFeaturesKHR = PhysicalDeviceMultiviewFeatures;
-
- struct PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX
+ struct StructExtends<PipelineCompilerControlCreateInfoAMD, GraphicsPipelineCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceMultiviewPerViewAttributesPropertiesNVX;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX(VULKAN_HPP_NAMESPACE::Bool32 perViewPositionAllComponents_ = {}) VULKAN_HPP_NOEXCEPT
- : perViewPositionAllComponents( perViewPositionAllComponents_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX( PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX( VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX & operator=( VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX & operator=( PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX ) );
- return *this;
- }
-
-
- operator VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX const&() const VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<const VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX*>( this );
- }
-
- operator VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX const& ) const = default;
-#else
- bool operator==( PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( perViewPositionAllComponents == rhs.perViewPositionAllComponents );
- }
-
- bool operator!=( PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceMultiviewPerViewAttributesPropertiesNVX;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 perViewPositionAllComponents = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX ) == sizeof( VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceMultiviewPerViewAttributesPropertiesNVX>
- {
- using Type = PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX;
- };
-
- struct PhysicalDeviceMultiviewProperties
+ struct StructExtends<PipelineCompilerControlCreateInfoAMD, ComputePipelineCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceMultiviewProperties;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceMultiviewProperties(uint32_t maxMultiviewViewCount_ = {}, uint32_t maxMultiviewInstanceIndex_ = {}) VULKAN_HPP_NOEXCEPT
- : maxMultiviewViewCount( maxMultiviewViewCount_ ), maxMultiviewInstanceIndex( maxMultiviewInstanceIndex_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceMultiviewProperties( PhysicalDeviceMultiviewProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceMultiviewProperties( VkPhysicalDeviceMultiviewProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceMultiviewProperties & operator=( VkPhysicalDeviceMultiviewProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceMultiviewProperties const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceMultiviewProperties & operator=( PhysicalDeviceMultiviewProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceMultiviewProperties ) );
- return *this;
- }
-
-
- operator VkPhysicalDeviceMultiviewProperties const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceMultiviewProperties*>( this );
- }
-
- operator VkPhysicalDeviceMultiviewProperties &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceMultiviewProperties*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceMultiviewProperties const& ) const = default;
-#else
- bool operator==( PhysicalDeviceMultiviewProperties const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( maxMultiviewViewCount == rhs.maxMultiviewViewCount )
- && ( maxMultiviewInstanceIndex == rhs.maxMultiviewInstanceIndex );
- }
-
- bool operator!=( PhysicalDeviceMultiviewProperties const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceMultiviewProperties;
- void* pNext = {};
- uint32_t maxMultiviewViewCount = {};
- uint32_t maxMultiviewInstanceIndex = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceMultiviewProperties ) == sizeof( VkPhysicalDeviceMultiviewProperties ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceMultiviewProperties>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceMultiviewProperties>
+ struct StructExtends<PipelineCoverageModulationStateCreateInfoNV, PipelineMultisampleStateCreateInfo>
{
- using Type = PhysicalDeviceMultiviewProperties;
- };
- using PhysicalDeviceMultiviewPropertiesKHR = PhysicalDeviceMultiviewProperties;
-
- struct PhysicalDevicePCIBusInfoPropertiesEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDevicePciBusInfoPropertiesEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDevicePCIBusInfoPropertiesEXT(uint32_t pciDomain_ = {}, uint32_t pciBus_ = {}, uint32_t pciDevice_ = {}, uint32_t pciFunction_ = {}) VULKAN_HPP_NOEXCEPT
- : pciDomain( pciDomain_ ), pciBus( pciBus_ ), pciDevice( pciDevice_ ), pciFunction( pciFunction_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDevicePCIBusInfoPropertiesEXT( PhysicalDevicePCIBusInfoPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDevicePCIBusInfoPropertiesEXT( VkPhysicalDevicePCIBusInfoPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDevicePCIBusInfoPropertiesEXT & operator=( VkPhysicalDevicePCIBusInfoPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDevicePCIBusInfoPropertiesEXT const *>( &rhs );
- return *this;
- }
-
- PhysicalDevicePCIBusInfoPropertiesEXT & operator=( PhysicalDevicePCIBusInfoPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDevicePCIBusInfoPropertiesEXT ) );
- return *this;
- }
-
-
- operator VkPhysicalDevicePCIBusInfoPropertiesEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDevicePCIBusInfoPropertiesEXT*>( this );
- }
-
- operator VkPhysicalDevicePCIBusInfoPropertiesEXT &() VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<VkPhysicalDevicePCIBusInfoPropertiesEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDevicePCIBusInfoPropertiesEXT const& ) const = default;
-#else
- bool operator==( PhysicalDevicePCIBusInfoPropertiesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( pciDomain == rhs.pciDomain )
- && ( pciBus == rhs.pciBus )
- && ( pciDevice == rhs.pciDevice )
- && ( pciFunction == rhs.pciFunction );
- }
-
- bool operator!=( PhysicalDevicePCIBusInfoPropertiesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDevicePciBusInfoPropertiesEXT;
- void* pNext = {};
- uint32_t pciDomain = {};
- uint32_t pciBus = {};
- uint32_t pciDevice = {};
- uint32_t pciFunction = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDevicePCIBusInfoPropertiesEXT ) == sizeof( VkPhysicalDevicePCIBusInfoPropertiesEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDevicePCIBusInfoPropertiesEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDevicePciBusInfoPropertiesEXT>
+ struct StructExtends<PipelineCoverageReductionStateCreateInfoNV, PipelineMultisampleStateCreateInfo>
{
- using Type = PhysicalDevicePCIBusInfoPropertiesEXT;
- };
-
- struct PhysicalDevicePerformanceQueryFeaturesKHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDevicePerformanceQueryFeaturesKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDevicePerformanceQueryFeaturesKHR(VULKAN_HPP_NAMESPACE::Bool32 performanceCounterQueryPools_ = {}, VULKAN_HPP_NAMESPACE::Bool32 performanceCounterMultipleQueryPools_ = {}) VULKAN_HPP_NOEXCEPT
- : performanceCounterQueryPools( performanceCounterQueryPools_ ), performanceCounterMultipleQueryPools( performanceCounterMultipleQueryPools_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDevicePerformanceQueryFeaturesKHR( PhysicalDevicePerformanceQueryFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDevicePerformanceQueryFeaturesKHR( VkPhysicalDevicePerformanceQueryFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDevicePerformanceQueryFeaturesKHR & operator=( VkPhysicalDevicePerformanceQueryFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDevicePerformanceQueryFeaturesKHR const *>( &rhs );
- return *this;
- }
-
- PhysicalDevicePerformanceQueryFeaturesKHR & operator=( PhysicalDevicePerformanceQueryFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDevicePerformanceQueryFeaturesKHR ) );
- return *this;
- }
-
- PhysicalDevicePerformanceQueryFeaturesKHR & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDevicePerformanceQueryFeaturesKHR & setPerformanceCounterQueryPools( VULKAN_HPP_NAMESPACE::Bool32 performanceCounterQueryPools_ ) VULKAN_HPP_NOEXCEPT
- {
- performanceCounterQueryPools = performanceCounterQueryPools_;
- return *this;
- }
-
- PhysicalDevicePerformanceQueryFeaturesKHR & setPerformanceCounterMultipleQueryPools( VULKAN_HPP_NAMESPACE::Bool32 performanceCounterMultipleQueryPools_ ) VULKAN_HPP_NOEXCEPT
- {
- performanceCounterMultipleQueryPools = performanceCounterMultipleQueryPools_;
- return *this;
- }
-
-
- operator VkPhysicalDevicePerformanceQueryFeaturesKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDevicePerformanceQueryFeaturesKHR*>( this );
- }
-
- operator VkPhysicalDevicePerformanceQueryFeaturesKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDevicePerformanceQueryFeaturesKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDevicePerformanceQueryFeaturesKHR const& ) const = default;
-#else
- bool operator==( PhysicalDevicePerformanceQueryFeaturesKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( performanceCounterQueryPools == rhs.performanceCounterQueryPools )
- && ( performanceCounterMultipleQueryPools == rhs.performanceCounterMultipleQueryPools );
- }
-
- bool operator!=( PhysicalDevicePerformanceQueryFeaturesKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDevicePerformanceQueryFeaturesKHR;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 performanceCounterQueryPools = {};
- VULKAN_HPP_NAMESPACE::Bool32 performanceCounterMultipleQueryPools = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDevicePerformanceQueryFeaturesKHR ) == sizeof( VkPhysicalDevicePerformanceQueryFeaturesKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDevicePerformanceQueryFeaturesKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDevicePerformanceQueryFeaturesKHR>
- {
- using Type = PhysicalDevicePerformanceQueryFeaturesKHR;
- };
-
- struct PhysicalDevicePerformanceQueryPropertiesKHR
+ struct StructExtends<PipelineCoverageToColorStateCreateInfoNV, PipelineMultisampleStateCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDevicePerformanceQueryPropertiesKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDevicePerformanceQueryPropertiesKHR(VULKAN_HPP_NAMESPACE::Bool32 allowCommandBufferQueryCopies_ = {}) VULKAN_HPP_NOEXCEPT
- : allowCommandBufferQueryCopies( allowCommandBufferQueryCopies_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDevicePerformanceQueryPropertiesKHR( PhysicalDevicePerformanceQueryPropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDevicePerformanceQueryPropertiesKHR( VkPhysicalDevicePerformanceQueryPropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDevicePerformanceQueryPropertiesKHR & operator=( VkPhysicalDevicePerformanceQueryPropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDevicePerformanceQueryPropertiesKHR const *>( &rhs );
- return *this;
- }
-
- PhysicalDevicePerformanceQueryPropertiesKHR & operator=( PhysicalDevicePerformanceQueryPropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDevicePerformanceQueryPropertiesKHR ) );
- return *this;
- }
-
-
- operator VkPhysicalDevicePerformanceQueryPropertiesKHR const&() const VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<const VkPhysicalDevicePerformanceQueryPropertiesKHR*>( this );
- }
-
- operator VkPhysicalDevicePerformanceQueryPropertiesKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDevicePerformanceQueryPropertiesKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDevicePerformanceQueryPropertiesKHR const& ) const = default;
-#else
- bool operator==( PhysicalDevicePerformanceQueryPropertiesKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( allowCommandBufferQueryCopies == rhs.allowCommandBufferQueryCopies );
- }
-
- bool operator!=( PhysicalDevicePerformanceQueryPropertiesKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDevicePerformanceQueryPropertiesKHR;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 allowCommandBufferQueryCopies = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDevicePerformanceQueryPropertiesKHR ) == sizeof( VkPhysicalDevicePerformanceQueryPropertiesKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDevicePerformanceQueryPropertiesKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDevicePerformanceQueryPropertiesKHR>
- {
- using Type = PhysicalDevicePerformanceQueryPropertiesKHR;
- };
-
- struct PhysicalDevicePipelineCreationCacheControlFeaturesEXT
+ struct StructExtends<PipelineCreationFeedbackCreateInfoEXT, GraphicsPipelineCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDevicePipelineCreationCacheControlFeaturesEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDevicePipelineCreationCacheControlFeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 pipelineCreationCacheControl_ = {}) VULKAN_HPP_NOEXCEPT
- : pipelineCreationCacheControl( pipelineCreationCacheControl_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDevicePipelineCreationCacheControlFeaturesEXT( PhysicalDevicePipelineCreationCacheControlFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDevicePipelineCreationCacheControlFeaturesEXT( VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDevicePipelineCreationCacheControlFeaturesEXT & operator=( VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDevicePipelineCreationCacheControlFeaturesEXT const *>( &rhs );
- return *this;
- }
-
- PhysicalDevicePipelineCreationCacheControlFeaturesEXT & operator=( PhysicalDevicePipelineCreationCacheControlFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDevicePipelineCreationCacheControlFeaturesEXT ) );
- return *this;
- }
-
- PhysicalDevicePipelineCreationCacheControlFeaturesEXT & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDevicePipelineCreationCacheControlFeaturesEXT & setPipelineCreationCacheControl( VULKAN_HPP_NAMESPACE::Bool32 pipelineCreationCacheControl_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- pipelineCreationCacheControl = pipelineCreationCacheControl_;
- return *this;
- }
-
-
- operator VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT*>( this );
- }
-
- operator VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDevicePipelineCreationCacheControlFeaturesEXT const& ) const = default;
-#else
- bool operator==( PhysicalDevicePipelineCreationCacheControlFeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( pipelineCreationCacheControl == rhs.pipelineCreationCacheControl );
- }
-
- bool operator!=( PhysicalDevicePipelineCreationCacheControlFeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDevicePipelineCreationCacheControlFeaturesEXT;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 pipelineCreationCacheControl = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDevicePipelineCreationCacheControlFeaturesEXT ) == sizeof( VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDevicePipelineCreationCacheControlFeaturesEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDevicePipelineCreationCacheControlFeaturesEXT>
- {
- using Type = PhysicalDevicePipelineCreationCacheControlFeaturesEXT;
- };
-
- struct PhysicalDevicePipelineExecutablePropertiesFeaturesKHR
+ struct StructExtends<PipelineCreationFeedbackCreateInfoEXT, ComputePipelineCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDevicePipelineExecutablePropertiesFeaturesKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDevicePipelineExecutablePropertiesFeaturesKHR(VULKAN_HPP_NAMESPACE::Bool32 pipelineExecutableInfo_ = {}) VULKAN_HPP_NOEXCEPT
- : pipelineExecutableInfo( pipelineExecutableInfo_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDevicePipelineExecutablePropertiesFeaturesKHR( PhysicalDevicePipelineExecutablePropertiesFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDevicePipelineExecutablePropertiesFeaturesKHR( VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDevicePipelineExecutablePropertiesFeaturesKHR & operator=( VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDevicePipelineExecutablePropertiesFeaturesKHR const *>( &rhs );
- return *this;
- }
-
- PhysicalDevicePipelineExecutablePropertiesFeaturesKHR & operator=( PhysicalDevicePipelineExecutablePropertiesFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDevicePipelineExecutablePropertiesFeaturesKHR ) );
- return *this;
- }
-
- PhysicalDevicePipelineExecutablePropertiesFeaturesKHR & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDevicePipelineExecutablePropertiesFeaturesKHR & setPipelineExecutableInfo( VULKAN_HPP_NAMESPACE::Bool32 pipelineExecutableInfo_ ) VULKAN_HPP_NOEXCEPT
- {
- pipelineExecutableInfo = pipelineExecutableInfo_;
- return *this;
- }
-
-
- operator VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR*>( this );
- }
-
- operator VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDevicePipelineExecutablePropertiesFeaturesKHR const& ) const = default;
-#else
- bool operator==( PhysicalDevicePipelineExecutablePropertiesFeaturesKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( pipelineExecutableInfo == rhs.pipelineExecutableInfo );
- }
-
- bool operator!=( PhysicalDevicePipelineExecutablePropertiesFeaturesKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDevicePipelineExecutablePropertiesFeaturesKHR;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 pipelineExecutableInfo = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDevicePipelineExecutablePropertiesFeaturesKHR ) == sizeof( VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDevicePipelineExecutablePropertiesFeaturesKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDevicePipelineExecutablePropertiesFeaturesKHR>
- {
- using Type = PhysicalDevicePipelineExecutablePropertiesFeaturesKHR;
- };
-
- struct PhysicalDevicePointClippingProperties
+ struct StructExtends<PipelineCreationFeedbackCreateInfoEXT, RayTracingPipelineCreateInfoNV>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDevicePointClippingProperties;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDevicePointClippingProperties(VULKAN_HPP_NAMESPACE::PointClippingBehavior pointClippingBehavior_ = VULKAN_HPP_NAMESPACE::PointClippingBehavior::eAllClipPlanes) VULKAN_HPP_NOEXCEPT
- : pointClippingBehavior( pointClippingBehavior_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDevicePointClippingProperties( PhysicalDevicePointClippingProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDevicePointClippingProperties( VkPhysicalDevicePointClippingProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDevicePointClippingProperties & operator=( VkPhysicalDevicePointClippingProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDevicePointClippingProperties const *>( &rhs );
- return *this;
- }
-
- PhysicalDevicePointClippingProperties & operator=( PhysicalDevicePointClippingProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDevicePointClippingProperties ) );
- return *this;
- }
-
-
- operator VkPhysicalDevicePointClippingProperties const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDevicePointClippingProperties*>( this );
- }
-
- operator VkPhysicalDevicePointClippingProperties &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDevicePointClippingProperties*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDevicePointClippingProperties const& ) const = default;
-#else
- bool operator==( PhysicalDevicePointClippingProperties const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( pointClippingBehavior == rhs.pointClippingBehavior );
- }
-
- bool operator!=( PhysicalDevicePointClippingProperties const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDevicePointClippingProperties;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::PointClippingBehavior pointClippingBehavior = VULKAN_HPP_NAMESPACE::PointClippingBehavior::eAllClipPlanes;
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDevicePointClippingProperties ) == sizeof( VkPhysicalDevicePointClippingProperties ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDevicePointClippingProperties>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDevicePointClippingProperties>
- {
- using Type = PhysicalDevicePointClippingProperties;
- };
- using PhysicalDevicePointClippingPropertiesKHR = PhysicalDevicePointClippingProperties;
-
-#ifdef VK_ENABLE_BETA_EXTENSIONS
- struct PhysicalDevicePortabilitySubsetFeaturesKHR
+ struct StructExtends<PipelineCreationFeedbackCreateInfoEXT, RayTracingPipelineCreateInfoKHR>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDevicePortabilitySubsetFeaturesKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDevicePortabilitySubsetFeaturesKHR(VULKAN_HPP_NAMESPACE::Bool32 constantAlphaColorBlendFactors_ = {}, VULKAN_HPP_NAMESPACE::Bool32 events_ = {}, VULKAN_HPP_NAMESPACE::Bool32 imageViewFormatReinterpretation_ = {}, VULKAN_HPP_NAMESPACE::Bool32 imageViewFormatSwizzle_ = {}, VULKAN_HPP_NAMESPACE::Bool32 imageView2DOn3DImage_ = {}, VULKAN_HPP_NAMESPACE::Bool32 multisampleArrayImage_ = {}, VULKAN_HPP_NAMESPACE::Bool32 mutableComparisonSamplers_ = {}, VULKAN_HPP_NAMESPACE::Bool32 pointPolygons_ = {}, VULKAN_HPP_NAMESPACE::Bool32 samplerMipLodBias_ = {}, VULKAN_HPP_NAMESPACE::Bool32 separateStencilMaskRef_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderSampleRateInterpolationFunctions_ = {}, VULKAN_HPP_NAMESPACE::Bool32 tessellationIsolines_ = {}, VULKAN_HPP_NAMESPACE::Bool32 tessellationPointMode_ = {}, VULKAN_HPP_NAMESPACE::Bool32 triangleFans_ = {}, VULKAN_HPP_NAMESPACE::Bool32 vertexAttributeAccessBeyondStride_ = {}) VULKAN_HPP_NOEXCEPT
- : constantAlphaColorBlendFactors( constantAlphaColorBlendFactors_ ), events( events_ ), imageViewFormatReinterpretation( imageViewFormatReinterpretation_ ), imageViewFormatSwizzle( imageViewFormatSwizzle_ ), imageView2DOn3DImage( imageView2DOn3DImage_ ), multisampleArrayImage( multisampleArrayImage_ ), mutableComparisonSamplers( mutableComparisonSamplers_ ), pointPolygons( pointPolygons_ ), samplerMipLodBias( samplerMipLodBias_ ), separateStencilMaskRef( separateStencilMaskRef_ ), shaderSampleRateInterpolationFunctions( shaderSampleRateInterpolationFunctions_ ), tessellationIsolines( tessellationIsolines_ ), tessellationPointMode( tessellationPointMode_ ), triangleFans( triangleFans_ ), vertexAttributeAccessBeyondStride( vertexAttributeAccessBeyondStride_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDevicePortabilitySubsetFeaturesKHR( PhysicalDevicePortabilitySubsetFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDevicePortabilitySubsetFeaturesKHR( VkPhysicalDevicePortabilitySubsetFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDevicePortabilitySubsetFeaturesKHR & operator=( VkPhysicalDevicePortabilitySubsetFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDevicePortabilitySubsetFeaturesKHR const *>( &rhs );
- return *this;
- }
-
- PhysicalDevicePortabilitySubsetFeaturesKHR & operator=( PhysicalDevicePortabilitySubsetFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDevicePortabilitySubsetFeaturesKHR ) );
- return *this;
- }
-
- PhysicalDevicePortabilitySubsetFeaturesKHR & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDevicePortabilitySubsetFeaturesKHR & setConstantAlphaColorBlendFactors( VULKAN_HPP_NAMESPACE::Bool32 constantAlphaColorBlendFactors_ ) VULKAN_HPP_NOEXCEPT
- {
- constantAlphaColorBlendFactors = constantAlphaColorBlendFactors_;
- return *this;
- }
-
- PhysicalDevicePortabilitySubsetFeaturesKHR & setEvents( VULKAN_HPP_NAMESPACE::Bool32 events_ ) VULKAN_HPP_NOEXCEPT
- {
- events = events_;
- return *this;
- }
-
- PhysicalDevicePortabilitySubsetFeaturesKHR & setImageViewFormatReinterpretation( VULKAN_HPP_NAMESPACE::Bool32 imageViewFormatReinterpretation_ ) VULKAN_HPP_NOEXCEPT
- {
- imageViewFormatReinterpretation = imageViewFormatReinterpretation_;
- return *this;
- }
-
- PhysicalDevicePortabilitySubsetFeaturesKHR & setImageViewFormatSwizzle( VULKAN_HPP_NAMESPACE::Bool32 imageViewFormatSwizzle_ ) VULKAN_HPP_NOEXCEPT
- {
- imageViewFormatSwizzle = imageViewFormatSwizzle_;
- return *this;
- }
-
- PhysicalDevicePortabilitySubsetFeaturesKHR & setImageView2DOn3DImage( VULKAN_HPP_NAMESPACE::Bool32 imageView2DOn3DImage_ ) VULKAN_HPP_NOEXCEPT
- {
- imageView2DOn3DImage = imageView2DOn3DImage_;
- return *this;
- }
-
- PhysicalDevicePortabilitySubsetFeaturesKHR & setMultisampleArrayImage( VULKAN_HPP_NAMESPACE::Bool32 multisampleArrayImage_ ) VULKAN_HPP_NOEXCEPT
- {
- multisampleArrayImage = multisampleArrayImage_;
- return *this;
- }
-
- PhysicalDevicePortabilitySubsetFeaturesKHR & setMutableComparisonSamplers( VULKAN_HPP_NAMESPACE::Bool32 mutableComparisonSamplers_ ) VULKAN_HPP_NOEXCEPT
- {
- mutableComparisonSamplers = mutableComparisonSamplers_;
- return *this;
- }
-
- PhysicalDevicePortabilitySubsetFeaturesKHR & setPointPolygons( VULKAN_HPP_NAMESPACE::Bool32 pointPolygons_ ) VULKAN_HPP_NOEXCEPT
- {
- pointPolygons = pointPolygons_;
- return *this;
- }
-
- PhysicalDevicePortabilitySubsetFeaturesKHR & setSamplerMipLodBias( VULKAN_HPP_NAMESPACE::Bool32 samplerMipLodBias_ ) VULKAN_HPP_NOEXCEPT
- {
- samplerMipLodBias = samplerMipLodBias_;
- return *this;
- }
-
- PhysicalDevicePortabilitySubsetFeaturesKHR & setSeparateStencilMaskRef( VULKAN_HPP_NAMESPACE::Bool32 separateStencilMaskRef_ ) VULKAN_HPP_NOEXCEPT
- {
- separateStencilMaskRef = separateStencilMaskRef_;
- return *this;
- }
-
- PhysicalDevicePortabilitySubsetFeaturesKHR & setShaderSampleRateInterpolationFunctions( VULKAN_HPP_NAMESPACE::Bool32 shaderSampleRateInterpolationFunctions_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderSampleRateInterpolationFunctions = shaderSampleRateInterpolationFunctions_;
- return *this;
- }
-
- PhysicalDevicePortabilitySubsetFeaturesKHR & setTessellationIsolines( VULKAN_HPP_NAMESPACE::Bool32 tessellationIsolines_ ) VULKAN_HPP_NOEXCEPT
- {
- tessellationIsolines = tessellationIsolines_;
- return *this;
- }
-
- PhysicalDevicePortabilitySubsetFeaturesKHR & setTessellationPointMode( VULKAN_HPP_NAMESPACE::Bool32 tessellationPointMode_ ) VULKAN_HPP_NOEXCEPT
- {
- tessellationPointMode = tessellationPointMode_;
- return *this;
- }
-
- PhysicalDevicePortabilitySubsetFeaturesKHR & setTriangleFans( VULKAN_HPP_NAMESPACE::Bool32 triangleFans_ ) VULKAN_HPP_NOEXCEPT
- {
- triangleFans = triangleFans_;
- return *this;
- }
-
- PhysicalDevicePortabilitySubsetFeaturesKHR & setVertexAttributeAccessBeyondStride( VULKAN_HPP_NAMESPACE::Bool32 vertexAttributeAccessBeyondStride_ ) VULKAN_HPP_NOEXCEPT
- {
- vertexAttributeAccessBeyondStride = vertexAttributeAccessBeyondStride_;
- return *this;
- }
-
-
- operator VkPhysicalDevicePortabilitySubsetFeaturesKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDevicePortabilitySubsetFeaturesKHR*>( this );
- }
-
- operator VkPhysicalDevicePortabilitySubsetFeaturesKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDevicePortabilitySubsetFeaturesKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDevicePortabilitySubsetFeaturesKHR const& ) const = default;
-#else
- bool operator==( PhysicalDevicePortabilitySubsetFeaturesKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( constantAlphaColorBlendFactors == rhs.constantAlphaColorBlendFactors )
- && ( events == rhs.events )
- && ( imageViewFormatReinterpretation == rhs.imageViewFormatReinterpretation )
- && ( imageViewFormatSwizzle == rhs.imageViewFormatSwizzle )
- && ( imageView2DOn3DImage == rhs.imageView2DOn3DImage )
- && ( multisampleArrayImage == rhs.multisampleArrayImage )
- && ( mutableComparisonSamplers == rhs.mutableComparisonSamplers )
- && ( pointPolygons == rhs.pointPolygons )
- && ( samplerMipLodBias == rhs.samplerMipLodBias )
- && ( separateStencilMaskRef == rhs.separateStencilMaskRef )
- && ( shaderSampleRateInterpolationFunctions == rhs.shaderSampleRateInterpolationFunctions )
- && ( tessellationIsolines == rhs.tessellationIsolines )
- && ( tessellationPointMode == rhs.tessellationPointMode )
- && ( triangleFans == rhs.triangleFans )
- && ( vertexAttributeAccessBeyondStride == rhs.vertexAttributeAccessBeyondStride );
- }
-
- bool operator!=( PhysicalDevicePortabilitySubsetFeaturesKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDevicePortabilitySubsetFeaturesKHR;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 constantAlphaColorBlendFactors = {};
- VULKAN_HPP_NAMESPACE::Bool32 events = {};
- VULKAN_HPP_NAMESPACE::Bool32 imageViewFormatReinterpretation = {};
- VULKAN_HPP_NAMESPACE::Bool32 imageViewFormatSwizzle = {};
- VULKAN_HPP_NAMESPACE::Bool32 imageView2DOn3DImage = {};
- VULKAN_HPP_NAMESPACE::Bool32 multisampleArrayImage = {};
- VULKAN_HPP_NAMESPACE::Bool32 mutableComparisonSamplers = {};
- VULKAN_HPP_NAMESPACE::Bool32 pointPolygons = {};
- VULKAN_HPP_NAMESPACE::Bool32 samplerMipLodBias = {};
- VULKAN_HPP_NAMESPACE::Bool32 separateStencilMaskRef = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderSampleRateInterpolationFunctions = {};
- VULKAN_HPP_NAMESPACE::Bool32 tessellationIsolines = {};
- VULKAN_HPP_NAMESPACE::Bool32 tessellationPointMode = {};
- VULKAN_HPP_NAMESPACE::Bool32 triangleFans = {};
- VULKAN_HPP_NAMESPACE::Bool32 vertexAttributeAccessBeyondStride = {};
-
- };
- static_assert( sizeof( PhysicalDevicePortabilitySubsetFeaturesKHR ) == sizeof( VkPhysicalDevicePortabilitySubsetFeaturesKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDevicePortabilitySubsetFeaturesKHR>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::ePhysicalDevicePortabilitySubsetFeaturesKHR>
- {
- using Type = PhysicalDevicePortabilitySubsetFeaturesKHR;
- };
-#endif /*VK_ENABLE_BETA_EXTENSIONS*/
-
-#ifdef VK_ENABLE_BETA_EXTENSIONS
- struct PhysicalDevicePortabilitySubsetPropertiesKHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDevicePortabilitySubsetPropertiesKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDevicePortabilitySubsetPropertiesKHR(uint32_t minVertexInputBindingStrideAlignment_ = {}) VULKAN_HPP_NOEXCEPT
- : minVertexInputBindingStrideAlignment( minVertexInputBindingStrideAlignment_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDevicePortabilitySubsetPropertiesKHR( PhysicalDevicePortabilitySubsetPropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDevicePortabilitySubsetPropertiesKHR( VkPhysicalDevicePortabilitySubsetPropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDevicePortabilitySubsetPropertiesKHR & operator=( VkPhysicalDevicePortabilitySubsetPropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDevicePortabilitySubsetPropertiesKHR const *>( &rhs );
- return *this;
- }
-
- PhysicalDevicePortabilitySubsetPropertiesKHR & operator=( PhysicalDevicePortabilitySubsetPropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDevicePortabilitySubsetPropertiesKHR ) );
- return *this;
- }
-
- PhysicalDevicePortabilitySubsetPropertiesKHR & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDevicePortabilitySubsetPropertiesKHR & setMinVertexInputBindingStrideAlignment( uint32_t minVertexInputBindingStrideAlignment_ ) VULKAN_HPP_NOEXCEPT
- {
- minVertexInputBindingStrideAlignment = minVertexInputBindingStrideAlignment_;
- return *this;
- }
-
-
- operator VkPhysicalDevicePortabilitySubsetPropertiesKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDevicePortabilitySubsetPropertiesKHR*>( this );
- }
-
- operator VkPhysicalDevicePortabilitySubsetPropertiesKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDevicePortabilitySubsetPropertiesKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDevicePortabilitySubsetPropertiesKHR const& ) const = default;
-#else
- bool operator==( PhysicalDevicePortabilitySubsetPropertiesKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( minVertexInputBindingStrideAlignment == rhs.minVertexInputBindingStrideAlignment );
- }
-
- bool operator!=( PhysicalDevicePortabilitySubsetPropertiesKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDevicePortabilitySubsetPropertiesKHR;
- void* pNext = {};
- uint32_t minVertexInputBindingStrideAlignment = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDevicePortabilitySubsetPropertiesKHR ) == sizeof( VkPhysicalDevicePortabilitySubsetPropertiesKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDevicePortabilitySubsetPropertiesKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDevicePortabilitySubsetPropertiesKHR>
+ struct StructExtends<PipelineDiscardRectangleStateCreateInfoEXT, GraphicsPipelineCreateInfo>
{
- using Type = PhysicalDevicePortabilitySubsetPropertiesKHR;
- };
-#endif /*VK_ENABLE_BETA_EXTENSIONS*/
-
- struct PhysicalDevicePrivateDataFeaturesEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDevicePrivateDataFeaturesEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDevicePrivateDataFeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 privateData_ = {}) VULKAN_HPP_NOEXCEPT
- : privateData( privateData_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDevicePrivateDataFeaturesEXT( PhysicalDevicePrivateDataFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDevicePrivateDataFeaturesEXT( VkPhysicalDevicePrivateDataFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDevicePrivateDataFeaturesEXT & operator=( VkPhysicalDevicePrivateDataFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDevicePrivateDataFeaturesEXT const *>( &rhs );
- return *this;
- }
-
- PhysicalDevicePrivateDataFeaturesEXT & operator=( PhysicalDevicePrivateDataFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDevicePrivateDataFeaturesEXT ) );
- return *this;
- }
-
- PhysicalDevicePrivateDataFeaturesEXT & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDevicePrivateDataFeaturesEXT & setPrivateData( VULKAN_HPP_NAMESPACE::Bool32 privateData_ ) VULKAN_HPP_NOEXCEPT
- {
- privateData = privateData_;
- return *this;
- }
-
-
- operator VkPhysicalDevicePrivateDataFeaturesEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDevicePrivateDataFeaturesEXT*>( this );
- }
-
- operator VkPhysicalDevicePrivateDataFeaturesEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDevicePrivateDataFeaturesEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDevicePrivateDataFeaturesEXT const& ) const = default;
-#else
- bool operator==( PhysicalDevicePrivateDataFeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( privateData == rhs.privateData );
- }
-
- bool operator!=( PhysicalDevicePrivateDataFeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDevicePrivateDataFeaturesEXT;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 privateData = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDevicePrivateDataFeaturesEXT ) == sizeof( VkPhysicalDevicePrivateDataFeaturesEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDevicePrivateDataFeaturesEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDevicePrivateDataFeaturesEXT>
+ struct StructExtends<PipelineFragmentShadingRateEnumStateCreateInfoNV, GraphicsPipelineCreateInfo>
{
- using Type = PhysicalDevicePrivateDataFeaturesEXT;
- };
-
- struct PhysicalDeviceProtectedMemoryFeatures
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceProtectedMemoryFeatures;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceProtectedMemoryFeatures(VULKAN_HPP_NAMESPACE::Bool32 protectedMemory_ = {}) VULKAN_HPP_NOEXCEPT
- : protectedMemory( protectedMemory_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceProtectedMemoryFeatures( PhysicalDeviceProtectedMemoryFeatures const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceProtectedMemoryFeatures( VkPhysicalDeviceProtectedMemoryFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceProtectedMemoryFeatures & operator=( VkPhysicalDeviceProtectedMemoryFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceProtectedMemoryFeatures const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceProtectedMemoryFeatures & operator=( PhysicalDeviceProtectedMemoryFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceProtectedMemoryFeatures ) );
- return *this;
- }
-
- PhysicalDeviceProtectedMemoryFeatures & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceProtectedMemoryFeatures & setProtectedMemory( VULKAN_HPP_NAMESPACE::Bool32 protectedMemory_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- protectedMemory = protectedMemory_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceProtectedMemoryFeatures const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceProtectedMemoryFeatures*>( this );
- }
-
- operator VkPhysicalDeviceProtectedMemoryFeatures &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceProtectedMemoryFeatures*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceProtectedMemoryFeatures const& ) const = default;
-#else
- bool operator==( PhysicalDeviceProtectedMemoryFeatures const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( protectedMemory == rhs.protectedMemory );
- }
-
- bool operator!=( PhysicalDeviceProtectedMemoryFeatures const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceProtectedMemoryFeatures;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 protectedMemory = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceProtectedMemoryFeatures ) == sizeof( VkPhysicalDeviceProtectedMemoryFeatures ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceProtectedMemoryFeatures>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceProtectedMemoryFeatures>
- {
- using Type = PhysicalDeviceProtectedMemoryFeatures;
- };
-
- struct PhysicalDeviceProtectedMemoryProperties
+ struct StructExtends<PipelineFragmentShadingRateStateCreateInfoKHR, GraphicsPipelineCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceProtectedMemoryProperties;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceProtectedMemoryProperties(VULKAN_HPP_NAMESPACE::Bool32 protectedNoFault_ = {}) VULKAN_HPP_NOEXCEPT
- : protectedNoFault( protectedNoFault_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceProtectedMemoryProperties( PhysicalDeviceProtectedMemoryProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceProtectedMemoryProperties( VkPhysicalDeviceProtectedMemoryProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceProtectedMemoryProperties & operator=( VkPhysicalDeviceProtectedMemoryProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceProtectedMemoryProperties const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceProtectedMemoryProperties & operator=( PhysicalDeviceProtectedMemoryProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceProtectedMemoryProperties ) );
- return *this;
- }
-
-
- operator VkPhysicalDeviceProtectedMemoryProperties const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceProtectedMemoryProperties*>( this );
- }
-
- operator VkPhysicalDeviceProtectedMemoryProperties &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceProtectedMemoryProperties*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceProtectedMemoryProperties const& ) const = default;
-#else
- bool operator==( PhysicalDeviceProtectedMemoryProperties const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( protectedNoFault == rhs.protectedNoFault );
- }
-
- bool operator!=( PhysicalDeviceProtectedMemoryProperties const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceProtectedMemoryProperties;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 protectedNoFault = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceProtectedMemoryProperties ) == sizeof( VkPhysicalDeviceProtectedMemoryProperties ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceProtectedMemoryProperties>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceProtectedMemoryProperties>
+ struct StructExtends<PipelineRasterizationConservativeStateCreateInfoEXT, PipelineRasterizationStateCreateInfo>
{
- using Type = PhysicalDeviceProtectedMemoryProperties;
- };
-
- struct PhysicalDevicePushDescriptorPropertiesKHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDevicePushDescriptorPropertiesKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDevicePushDescriptorPropertiesKHR(uint32_t maxPushDescriptors_ = {}) VULKAN_HPP_NOEXCEPT
- : maxPushDescriptors( maxPushDescriptors_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDevicePushDescriptorPropertiesKHR( PhysicalDevicePushDescriptorPropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDevicePushDescriptorPropertiesKHR( VkPhysicalDevicePushDescriptorPropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDevicePushDescriptorPropertiesKHR & operator=( VkPhysicalDevicePushDescriptorPropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDevicePushDescriptorPropertiesKHR const *>( &rhs );
- return *this;
- }
-
- PhysicalDevicePushDescriptorPropertiesKHR & operator=( PhysicalDevicePushDescriptorPropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDevicePushDescriptorPropertiesKHR ) );
- return *this;
- }
-
-
- operator VkPhysicalDevicePushDescriptorPropertiesKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDevicePushDescriptorPropertiesKHR*>( this );
- }
-
- operator VkPhysicalDevicePushDescriptorPropertiesKHR &() VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<VkPhysicalDevicePushDescriptorPropertiesKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDevicePushDescriptorPropertiesKHR const& ) const = default;
-#else
- bool operator==( PhysicalDevicePushDescriptorPropertiesKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( maxPushDescriptors == rhs.maxPushDescriptors );
- }
-
- bool operator!=( PhysicalDevicePushDescriptorPropertiesKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDevicePushDescriptorPropertiesKHR;
- void* pNext = {};
- uint32_t maxPushDescriptors = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDevicePushDescriptorPropertiesKHR ) == sizeof( VkPhysicalDevicePushDescriptorPropertiesKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDevicePushDescriptorPropertiesKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDevicePushDescriptorPropertiesKHR>
+ struct StructExtends<PipelineRasterizationDepthClipStateCreateInfoEXT, PipelineRasterizationStateCreateInfo>
{
- using Type = PhysicalDevicePushDescriptorPropertiesKHR;
- };
-
- struct PhysicalDeviceRayQueryFeaturesKHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceRayQueryFeaturesKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceRayQueryFeaturesKHR(VULKAN_HPP_NAMESPACE::Bool32 rayQuery_ = {}) VULKAN_HPP_NOEXCEPT
- : rayQuery( rayQuery_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceRayQueryFeaturesKHR( PhysicalDeviceRayQueryFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceRayQueryFeaturesKHR( VkPhysicalDeviceRayQueryFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceRayQueryFeaturesKHR & operator=( VkPhysicalDeviceRayQueryFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceRayQueryFeaturesKHR const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceRayQueryFeaturesKHR & operator=( PhysicalDeviceRayQueryFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceRayQueryFeaturesKHR ) );
- return *this;
- }
-
- PhysicalDeviceRayQueryFeaturesKHR & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceRayQueryFeaturesKHR & setRayQuery( VULKAN_HPP_NAMESPACE::Bool32 rayQuery_ ) VULKAN_HPP_NOEXCEPT
- {
- rayQuery = rayQuery_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceRayQueryFeaturesKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceRayQueryFeaturesKHR*>( this );
- }
-
- operator VkPhysicalDeviceRayQueryFeaturesKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceRayQueryFeaturesKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceRayQueryFeaturesKHR const& ) const = default;
-#else
- bool operator==( PhysicalDeviceRayQueryFeaturesKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( rayQuery == rhs.rayQuery );
- }
-
- bool operator!=( PhysicalDeviceRayQueryFeaturesKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceRayQueryFeaturesKHR;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 rayQuery = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceRayQueryFeaturesKHR ) == sizeof( VkPhysicalDeviceRayQueryFeaturesKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceRayQueryFeaturesKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceRayQueryFeaturesKHR>
+ struct StructExtends<PipelineRasterizationLineStateCreateInfoEXT, PipelineRasterizationStateCreateInfo>
{
- using Type = PhysicalDeviceRayQueryFeaturesKHR;
- };
-
- struct PhysicalDeviceRayTracingPipelineFeaturesKHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceRayTracingPipelineFeaturesKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceRayTracingPipelineFeaturesKHR(VULKAN_HPP_NAMESPACE::Bool32 rayTracingPipeline_ = {}, VULKAN_HPP_NAMESPACE::Bool32 rayTracingPipelineShaderGroupHandleCaptureReplay_ = {}, VULKAN_HPP_NAMESPACE::Bool32 rayTracingPipelineShaderGroupHandleCaptureReplayMixed_ = {}, VULKAN_HPP_NAMESPACE::Bool32 rayTracingPipelineTraceRaysIndirect_ = {}, VULKAN_HPP_NAMESPACE::Bool32 rayTraversalPrimitiveCulling_ = {}) VULKAN_HPP_NOEXCEPT
- : rayTracingPipeline( rayTracingPipeline_ ), rayTracingPipelineShaderGroupHandleCaptureReplay( rayTracingPipelineShaderGroupHandleCaptureReplay_ ), rayTracingPipelineShaderGroupHandleCaptureReplayMixed( rayTracingPipelineShaderGroupHandleCaptureReplayMixed_ ), rayTracingPipelineTraceRaysIndirect( rayTracingPipelineTraceRaysIndirect_ ), rayTraversalPrimitiveCulling( rayTraversalPrimitiveCulling_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceRayTracingPipelineFeaturesKHR( PhysicalDeviceRayTracingPipelineFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceRayTracingPipelineFeaturesKHR( VkPhysicalDeviceRayTracingPipelineFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceRayTracingPipelineFeaturesKHR & operator=( VkPhysicalDeviceRayTracingPipelineFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceRayTracingPipelineFeaturesKHR const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceRayTracingPipelineFeaturesKHR & operator=( PhysicalDeviceRayTracingPipelineFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceRayTracingPipelineFeaturesKHR ) );
- return *this;
- }
-
- PhysicalDeviceRayTracingPipelineFeaturesKHR & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceRayTracingPipelineFeaturesKHR & setRayTracingPipeline( VULKAN_HPP_NAMESPACE::Bool32 rayTracingPipeline_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- rayTracingPipeline = rayTracingPipeline_;
- return *this;
- }
-
- PhysicalDeviceRayTracingPipelineFeaturesKHR & setRayTracingPipelineShaderGroupHandleCaptureReplay( VULKAN_HPP_NAMESPACE::Bool32 rayTracingPipelineShaderGroupHandleCaptureReplay_ ) VULKAN_HPP_NOEXCEPT
- {
- rayTracingPipelineShaderGroupHandleCaptureReplay = rayTracingPipelineShaderGroupHandleCaptureReplay_;
- return *this;
- }
-
- PhysicalDeviceRayTracingPipelineFeaturesKHR & setRayTracingPipelineShaderGroupHandleCaptureReplayMixed( VULKAN_HPP_NAMESPACE::Bool32 rayTracingPipelineShaderGroupHandleCaptureReplayMixed_ ) VULKAN_HPP_NOEXCEPT
- {
- rayTracingPipelineShaderGroupHandleCaptureReplayMixed = rayTracingPipelineShaderGroupHandleCaptureReplayMixed_;
- return *this;
- }
-
- PhysicalDeviceRayTracingPipelineFeaturesKHR & setRayTracingPipelineTraceRaysIndirect( VULKAN_HPP_NAMESPACE::Bool32 rayTracingPipelineTraceRaysIndirect_ ) VULKAN_HPP_NOEXCEPT
- {
- rayTracingPipelineTraceRaysIndirect = rayTracingPipelineTraceRaysIndirect_;
- return *this;
- }
-
- PhysicalDeviceRayTracingPipelineFeaturesKHR & setRayTraversalPrimitiveCulling( VULKAN_HPP_NAMESPACE::Bool32 rayTraversalPrimitiveCulling_ ) VULKAN_HPP_NOEXCEPT
- {
- rayTraversalPrimitiveCulling = rayTraversalPrimitiveCulling_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceRayTracingPipelineFeaturesKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceRayTracingPipelineFeaturesKHR*>( this );
- }
-
- operator VkPhysicalDeviceRayTracingPipelineFeaturesKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceRayTracingPipelineFeaturesKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceRayTracingPipelineFeaturesKHR const& ) const = default;
-#else
- bool operator==( PhysicalDeviceRayTracingPipelineFeaturesKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( rayTracingPipeline == rhs.rayTracingPipeline )
- && ( rayTracingPipelineShaderGroupHandleCaptureReplay == rhs.rayTracingPipelineShaderGroupHandleCaptureReplay )
- && ( rayTracingPipelineShaderGroupHandleCaptureReplayMixed == rhs.rayTracingPipelineShaderGroupHandleCaptureReplayMixed )
- && ( rayTracingPipelineTraceRaysIndirect == rhs.rayTracingPipelineTraceRaysIndirect )
- && ( rayTraversalPrimitiveCulling == rhs.rayTraversalPrimitiveCulling );
- }
-
- bool operator!=( PhysicalDeviceRayTracingPipelineFeaturesKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceRayTracingPipelineFeaturesKHR;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 rayTracingPipeline = {};
- VULKAN_HPP_NAMESPACE::Bool32 rayTracingPipelineShaderGroupHandleCaptureReplay = {};
- VULKAN_HPP_NAMESPACE::Bool32 rayTracingPipelineShaderGroupHandleCaptureReplayMixed = {};
- VULKAN_HPP_NAMESPACE::Bool32 rayTracingPipelineTraceRaysIndirect = {};
- VULKAN_HPP_NAMESPACE::Bool32 rayTraversalPrimitiveCulling = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceRayTracingPipelineFeaturesKHR ) == sizeof( VkPhysicalDeviceRayTracingPipelineFeaturesKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceRayTracingPipelineFeaturesKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceRayTracingPipelineFeaturesKHR>
- {
- using Type = PhysicalDeviceRayTracingPipelineFeaturesKHR;
- };
-
- struct PhysicalDeviceRayTracingPipelinePropertiesKHR
+ struct StructExtends<PipelineRasterizationProvokingVertexStateCreateInfoEXT, PipelineRasterizationStateCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceRayTracingPipelinePropertiesKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceRayTracingPipelinePropertiesKHR(uint32_t shaderGroupHandleSize_ = {}, uint32_t maxRayRecursionDepth_ = {}, uint32_t maxShaderGroupStride_ = {}, uint32_t shaderGroupBaseAlignment_ = {}, uint32_t shaderGroupHandleCaptureReplaySize_ = {}, uint32_t maxRayDispatchInvocationCount_ = {}, uint32_t shaderGroupHandleAlignment_ = {}, uint32_t maxRayHitAttributeSize_ = {}) VULKAN_HPP_NOEXCEPT
- : shaderGroupHandleSize( shaderGroupHandleSize_ ), maxRayRecursionDepth( maxRayRecursionDepth_ ), maxShaderGroupStride( maxShaderGroupStride_ ), shaderGroupBaseAlignment( shaderGroupBaseAlignment_ ), shaderGroupHandleCaptureReplaySize( shaderGroupHandleCaptureReplaySize_ ), maxRayDispatchInvocationCount( maxRayDispatchInvocationCount_ ), shaderGroupHandleAlignment( shaderGroupHandleAlignment_ ), maxRayHitAttributeSize( maxRayHitAttributeSize_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceRayTracingPipelinePropertiesKHR( PhysicalDeviceRayTracingPipelinePropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceRayTracingPipelinePropertiesKHR( VkPhysicalDeviceRayTracingPipelinePropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceRayTracingPipelinePropertiesKHR & operator=( VkPhysicalDeviceRayTracingPipelinePropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceRayTracingPipelinePropertiesKHR const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceRayTracingPipelinePropertiesKHR & operator=( PhysicalDeviceRayTracingPipelinePropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceRayTracingPipelinePropertiesKHR ) );
- return *this;
- }
-
-
- operator VkPhysicalDeviceRayTracingPipelinePropertiesKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceRayTracingPipelinePropertiesKHR*>( this );
- }
-
- operator VkPhysicalDeviceRayTracingPipelinePropertiesKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceRayTracingPipelinePropertiesKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceRayTracingPipelinePropertiesKHR const& ) const = default;
-#else
- bool operator==( PhysicalDeviceRayTracingPipelinePropertiesKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( shaderGroupHandleSize == rhs.shaderGroupHandleSize )
- && ( maxRayRecursionDepth == rhs.maxRayRecursionDepth )
- && ( maxShaderGroupStride == rhs.maxShaderGroupStride )
- && ( shaderGroupBaseAlignment == rhs.shaderGroupBaseAlignment )
- && ( shaderGroupHandleCaptureReplaySize == rhs.shaderGroupHandleCaptureReplaySize )
- && ( maxRayDispatchInvocationCount == rhs.maxRayDispatchInvocationCount )
- && ( shaderGroupHandleAlignment == rhs.shaderGroupHandleAlignment )
- && ( maxRayHitAttributeSize == rhs.maxRayHitAttributeSize );
- }
-
- bool operator!=( PhysicalDeviceRayTracingPipelinePropertiesKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceRayTracingPipelinePropertiesKHR;
- 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 = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceRayTracingPipelinePropertiesKHR ) == sizeof( VkPhysicalDeviceRayTracingPipelinePropertiesKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceRayTracingPipelinePropertiesKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceRayTracingPipelinePropertiesKHR>
- {
- using Type = PhysicalDeviceRayTracingPipelinePropertiesKHR;
- };
-
- struct PhysicalDeviceRayTracingPropertiesNV
+ struct StructExtends<PipelineRasterizationStateRasterizationOrderAMD, PipelineRasterizationStateCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceRayTracingPropertiesNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceRayTracingPropertiesNV(uint32_t shaderGroupHandleSize_ = {}, uint32_t maxRecursionDepth_ = {}, uint32_t maxShaderGroupStride_ = {}, uint32_t shaderGroupBaseAlignment_ = {}, uint64_t maxGeometryCount_ = {}, uint64_t maxInstanceCount_ = {}, uint64_t maxTriangleCount_ = {}, uint32_t maxDescriptorSetAccelerationStructures_ = {}) VULKAN_HPP_NOEXCEPT
- : shaderGroupHandleSize( shaderGroupHandleSize_ ), maxRecursionDepth( maxRecursionDepth_ ), maxShaderGroupStride( maxShaderGroupStride_ ), shaderGroupBaseAlignment( shaderGroupBaseAlignment_ ), maxGeometryCount( maxGeometryCount_ ), maxInstanceCount( maxInstanceCount_ ), maxTriangleCount( maxTriangleCount_ ), maxDescriptorSetAccelerationStructures( maxDescriptorSetAccelerationStructures_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceRayTracingPropertiesNV( PhysicalDeviceRayTracingPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceRayTracingPropertiesNV( VkPhysicalDeviceRayTracingPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceRayTracingPropertiesNV & operator=( VkPhysicalDeviceRayTracingPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceRayTracingPropertiesNV const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceRayTracingPropertiesNV & operator=( PhysicalDeviceRayTracingPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceRayTracingPropertiesNV ) );
- return *this;
- }
-
-
- operator VkPhysicalDeviceRayTracingPropertiesNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceRayTracingPropertiesNV*>( this );
- }
-
- operator VkPhysicalDeviceRayTracingPropertiesNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceRayTracingPropertiesNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceRayTracingPropertiesNV const& ) const = default;
-#else
- bool operator==( PhysicalDeviceRayTracingPropertiesNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( shaderGroupHandleSize == rhs.shaderGroupHandleSize )
- && ( maxRecursionDepth == rhs.maxRecursionDepth )
- && ( maxShaderGroupStride == rhs.maxShaderGroupStride )
- && ( shaderGroupBaseAlignment == rhs.shaderGroupBaseAlignment )
- && ( maxGeometryCount == rhs.maxGeometryCount )
- && ( maxInstanceCount == rhs.maxInstanceCount )
- && ( maxTriangleCount == rhs.maxTriangleCount )
- && ( maxDescriptorSetAccelerationStructures == rhs.maxDescriptorSetAccelerationStructures );
- }
-
- bool operator!=( PhysicalDeviceRayTracingPropertiesNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceRayTracingPropertiesNV;
- void* pNext = {};
- uint32_t shaderGroupHandleSize = {};
- uint32_t maxRecursionDepth = {};
- uint32_t maxShaderGroupStride = {};
- uint32_t shaderGroupBaseAlignment = {};
- uint64_t maxGeometryCount = {};
- uint64_t maxInstanceCount = {};
- uint64_t maxTriangleCount = {};
- uint32_t maxDescriptorSetAccelerationStructures = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceRayTracingPropertiesNV ) == sizeof( VkPhysicalDeviceRayTracingPropertiesNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceRayTracingPropertiesNV>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceRayTracingPropertiesNV>
+ struct StructExtends<PipelineRasterizationStateStreamCreateInfoEXT, PipelineRasterizationStateCreateInfo>
{
- using Type = PhysicalDeviceRayTracingPropertiesNV;
- };
-
- struct PhysicalDeviceRepresentativeFragmentTestFeaturesNV
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceRepresentativeFragmentTestFeaturesNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceRepresentativeFragmentTestFeaturesNV(VULKAN_HPP_NAMESPACE::Bool32 representativeFragmentTest_ = {}) VULKAN_HPP_NOEXCEPT
- : representativeFragmentTest( representativeFragmentTest_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceRepresentativeFragmentTestFeaturesNV( PhysicalDeviceRepresentativeFragmentTestFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceRepresentativeFragmentTestFeaturesNV( VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceRepresentativeFragmentTestFeaturesNV & operator=( VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceRepresentativeFragmentTestFeaturesNV const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceRepresentativeFragmentTestFeaturesNV & operator=( PhysicalDeviceRepresentativeFragmentTestFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceRepresentativeFragmentTestFeaturesNV ) );
- return *this;
- }
-
- PhysicalDeviceRepresentativeFragmentTestFeaturesNV & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceRepresentativeFragmentTestFeaturesNV & setRepresentativeFragmentTest( VULKAN_HPP_NAMESPACE::Bool32 representativeFragmentTest_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- representativeFragmentTest = representativeFragmentTest_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV*>( this );
- }
-
- operator VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceRepresentativeFragmentTestFeaturesNV const& ) const = default;
-#else
- bool operator==( PhysicalDeviceRepresentativeFragmentTestFeaturesNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( representativeFragmentTest == rhs.representativeFragmentTest );
- }
-
- bool operator!=( PhysicalDeviceRepresentativeFragmentTestFeaturesNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceRepresentativeFragmentTestFeaturesNV;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 representativeFragmentTest = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceRepresentativeFragmentTestFeaturesNV ) == sizeof( VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceRepresentativeFragmentTestFeaturesNV>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceRepresentativeFragmentTestFeaturesNV>
- {
- using Type = PhysicalDeviceRepresentativeFragmentTestFeaturesNV;
- };
-
- struct PhysicalDeviceRobustness2FeaturesEXT
+ struct StructExtends<PipelineRepresentativeFragmentTestStateCreateInfoNV, GraphicsPipelineCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceRobustness2FeaturesEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceRobustness2FeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 robustBufferAccess2_ = {}, VULKAN_HPP_NAMESPACE::Bool32 robustImageAccess2_ = {}, VULKAN_HPP_NAMESPACE::Bool32 nullDescriptor_ = {}) VULKAN_HPP_NOEXCEPT
- : robustBufferAccess2( robustBufferAccess2_ ), robustImageAccess2( robustImageAccess2_ ), nullDescriptor( nullDescriptor_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceRobustness2FeaturesEXT( PhysicalDeviceRobustness2FeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceRobustness2FeaturesEXT( VkPhysicalDeviceRobustness2FeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceRobustness2FeaturesEXT & operator=( VkPhysicalDeviceRobustness2FeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceRobustness2FeaturesEXT const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceRobustness2FeaturesEXT & operator=( PhysicalDeviceRobustness2FeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceRobustness2FeaturesEXT ) );
- return *this;
- }
-
- PhysicalDeviceRobustness2FeaturesEXT & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceRobustness2FeaturesEXT & setRobustBufferAccess2( VULKAN_HPP_NAMESPACE::Bool32 robustBufferAccess2_ ) VULKAN_HPP_NOEXCEPT
- {
- robustBufferAccess2 = robustBufferAccess2_;
- return *this;
- }
-
- PhysicalDeviceRobustness2FeaturesEXT & setRobustImageAccess2( VULKAN_HPP_NAMESPACE::Bool32 robustImageAccess2_ ) VULKAN_HPP_NOEXCEPT
- {
- robustImageAccess2 = robustImageAccess2_;
- return *this;
- }
-
- PhysicalDeviceRobustness2FeaturesEXT & setNullDescriptor( VULKAN_HPP_NAMESPACE::Bool32 nullDescriptor_ ) VULKAN_HPP_NOEXCEPT
- {
- nullDescriptor = nullDescriptor_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceRobustness2FeaturesEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceRobustness2FeaturesEXT*>( this );
- }
-
- operator VkPhysicalDeviceRobustness2FeaturesEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceRobustness2FeaturesEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceRobustness2FeaturesEXT const& ) const = default;
-#else
- bool operator==( PhysicalDeviceRobustness2FeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( robustBufferAccess2 == rhs.robustBufferAccess2 )
- && ( robustImageAccess2 == rhs.robustImageAccess2 )
- && ( nullDescriptor == rhs.nullDescriptor );
- }
-
- bool operator!=( PhysicalDeviceRobustness2FeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceRobustness2FeaturesEXT;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 robustBufferAccess2 = {};
- VULKAN_HPP_NAMESPACE::Bool32 robustImageAccess2 = {};
- VULKAN_HPP_NAMESPACE::Bool32 nullDescriptor = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceRobustness2FeaturesEXT ) == sizeof( VkPhysicalDeviceRobustness2FeaturesEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceRobustness2FeaturesEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceRobustness2FeaturesEXT>
+ struct StructExtends<PipelineSampleLocationsStateCreateInfoEXT, PipelineMultisampleStateCreateInfo>
{
- using Type = PhysicalDeviceRobustness2FeaturesEXT;
- };
-
- struct PhysicalDeviceRobustness2PropertiesEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceRobustness2PropertiesEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceRobustness2PropertiesEXT(VULKAN_HPP_NAMESPACE::DeviceSize robustStorageBufferAccessSizeAlignment_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize robustUniformBufferAccessSizeAlignment_ = {}) VULKAN_HPP_NOEXCEPT
- : robustStorageBufferAccessSizeAlignment( robustStorageBufferAccessSizeAlignment_ ), robustUniformBufferAccessSizeAlignment( robustUniformBufferAccessSizeAlignment_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceRobustness2PropertiesEXT( PhysicalDeviceRobustness2PropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceRobustness2PropertiesEXT( VkPhysicalDeviceRobustness2PropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceRobustness2PropertiesEXT & operator=( VkPhysicalDeviceRobustness2PropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceRobustness2PropertiesEXT const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceRobustness2PropertiesEXT & operator=( PhysicalDeviceRobustness2PropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceRobustness2PropertiesEXT ) );
- return *this;
- }
-
-
- operator VkPhysicalDeviceRobustness2PropertiesEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceRobustness2PropertiesEXT*>( this );
- }
-
- operator VkPhysicalDeviceRobustness2PropertiesEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceRobustness2PropertiesEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceRobustness2PropertiesEXT const& ) const = default;
-#else
- bool operator==( PhysicalDeviceRobustness2PropertiesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( robustStorageBufferAccessSizeAlignment == rhs.robustStorageBufferAccessSizeAlignment )
- && ( robustUniformBufferAccessSizeAlignment == rhs.robustUniformBufferAccessSizeAlignment );
- }
-
- bool operator!=( PhysicalDeviceRobustness2PropertiesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceRobustness2PropertiesEXT;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::DeviceSize robustStorageBufferAccessSizeAlignment = {};
- VULKAN_HPP_NAMESPACE::DeviceSize robustUniformBufferAccessSizeAlignment = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceRobustness2PropertiesEXT ) == sizeof( VkPhysicalDeviceRobustness2PropertiesEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceRobustness2PropertiesEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceRobustness2PropertiesEXT>
- {
- using Type = PhysicalDeviceRobustness2PropertiesEXT;
- };
-
- struct PhysicalDeviceSampleLocationsPropertiesEXT
+ struct StructExtends<PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT, PipelineShaderStageCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceSampleLocationsPropertiesEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceSampleLocationsPropertiesEXT(VULKAN_HPP_NAMESPACE::SampleCountFlags sampleLocationSampleCounts_ = {}, VULKAN_HPP_NAMESPACE::Extent2D maxSampleLocationGridSize_ = {}, std::array<float,2> const& sampleLocationCoordinateRange_ = {}, uint32_t sampleLocationSubPixelBits_ = {}, VULKAN_HPP_NAMESPACE::Bool32 variableSampleLocations_ = {}) VULKAN_HPP_NOEXCEPT
- : sampleLocationSampleCounts( sampleLocationSampleCounts_ ), maxSampleLocationGridSize( maxSampleLocationGridSize_ ), sampleLocationCoordinateRange( sampleLocationCoordinateRange_ ), sampleLocationSubPixelBits( sampleLocationSubPixelBits_ ), variableSampleLocations( variableSampleLocations_ )
- {}
-
- VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceSampleLocationsPropertiesEXT( PhysicalDeviceSampleLocationsPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceSampleLocationsPropertiesEXT( VkPhysicalDeviceSampleLocationsPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceSampleLocationsPropertiesEXT & operator=( VkPhysicalDeviceSampleLocationsPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceSampleLocationsPropertiesEXT const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceSampleLocationsPropertiesEXT & operator=( PhysicalDeviceSampleLocationsPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceSampleLocationsPropertiesEXT ) );
- return *this;
- }
-
-
- operator VkPhysicalDeviceSampleLocationsPropertiesEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceSampleLocationsPropertiesEXT*>( this );
- }
-
- operator VkPhysicalDeviceSampleLocationsPropertiesEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceSampleLocationsPropertiesEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceSampleLocationsPropertiesEXT const& ) const = default;
-#else
- bool operator==( PhysicalDeviceSampleLocationsPropertiesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( sampleLocationSampleCounts == rhs.sampleLocationSampleCounts )
- && ( maxSampleLocationGridSize == rhs.maxSampleLocationGridSize )
- && ( sampleLocationCoordinateRange == rhs.sampleLocationCoordinateRange )
- && ( sampleLocationSubPixelBits == rhs.sampleLocationSubPixelBits )
- && ( variableSampleLocations == rhs.variableSampleLocations );
- }
-
- bool operator!=( PhysicalDeviceSampleLocationsPropertiesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceSampleLocationsPropertiesEXT;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::SampleCountFlags sampleLocationSampleCounts = {};
- VULKAN_HPP_NAMESPACE::Extent2D maxSampleLocationGridSize = {};
- VULKAN_HPP_NAMESPACE::ArrayWrapper1D<float, 2> sampleLocationCoordinateRange = {};
- uint32_t sampleLocationSubPixelBits = {};
- VULKAN_HPP_NAMESPACE::Bool32 variableSampleLocations = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceSampleLocationsPropertiesEXT ) == sizeof( VkPhysicalDeviceSampleLocationsPropertiesEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceSampleLocationsPropertiesEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceSampleLocationsPropertiesEXT>
- {
- using Type = PhysicalDeviceSampleLocationsPropertiesEXT;
- };
-
- struct PhysicalDeviceSamplerFilterMinmaxProperties
+ struct StructExtends<PipelineTessellationDomainOriginStateCreateInfo, PipelineTessellationStateCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceSamplerFilterMinmaxProperties;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceSamplerFilterMinmaxProperties(VULKAN_HPP_NAMESPACE::Bool32 filterMinmaxSingleComponentFormats_ = {}, VULKAN_HPP_NAMESPACE::Bool32 filterMinmaxImageComponentMapping_ = {}) VULKAN_HPP_NOEXCEPT
- : filterMinmaxSingleComponentFormats( filterMinmaxSingleComponentFormats_ ), filterMinmaxImageComponentMapping( filterMinmaxImageComponentMapping_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceSamplerFilterMinmaxProperties( PhysicalDeviceSamplerFilterMinmaxProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceSamplerFilterMinmaxProperties( VkPhysicalDeviceSamplerFilterMinmaxProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceSamplerFilterMinmaxProperties & operator=( VkPhysicalDeviceSamplerFilterMinmaxProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceSamplerFilterMinmaxProperties const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceSamplerFilterMinmaxProperties & operator=( PhysicalDeviceSamplerFilterMinmaxProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceSamplerFilterMinmaxProperties ) );
- return *this;
- }
-
-
- operator VkPhysicalDeviceSamplerFilterMinmaxProperties const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceSamplerFilterMinmaxProperties*>( this );
- }
-
- operator VkPhysicalDeviceSamplerFilterMinmaxProperties &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceSamplerFilterMinmaxProperties*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceSamplerFilterMinmaxProperties const& ) const = default;
-#else
- bool operator==( PhysicalDeviceSamplerFilterMinmaxProperties const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( filterMinmaxSingleComponentFormats == rhs.filterMinmaxSingleComponentFormats )
- && ( filterMinmaxImageComponentMapping == rhs.filterMinmaxImageComponentMapping );
- }
-
- bool operator!=( PhysicalDeviceSamplerFilterMinmaxProperties const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceSamplerFilterMinmaxProperties;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 filterMinmaxSingleComponentFormats = {};
- VULKAN_HPP_NAMESPACE::Bool32 filterMinmaxImageComponentMapping = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceSamplerFilterMinmaxProperties ) == sizeof( VkPhysicalDeviceSamplerFilterMinmaxProperties ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceSamplerFilterMinmaxProperties>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceSamplerFilterMinmaxProperties>
- {
- using Type = PhysicalDeviceSamplerFilterMinmaxProperties;
- };
- using PhysicalDeviceSamplerFilterMinmaxPropertiesEXT = PhysicalDeviceSamplerFilterMinmaxProperties;
-
- struct PhysicalDeviceSamplerYcbcrConversionFeatures
+ struct StructExtends<PipelineVertexInputDivisorStateCreateInfoEXT, PipelineVertexInputStateCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceSamplerYcbcrConversionFeatures;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceSamplerYcbcrConversionFeatures(VULKAN_HPP_NAMESPACE::Bool32 samplerYcbcrConversion_ = {}) VULKAN_HPP_NOEXCEPT
- : samplerYcbcrConversion( samplerYcbcrConversion_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceSamplerYcbcrConversionFeatures( PhysicalDeviceSamplerYcbcrConversionFeatures const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceSamplerYcbcrConversionFeatures( VkPhysicalDeviceSamplerYcbcrConversionFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceSamplerYcbcrConversionFeatures & operator=( VkPhysicalDeviceSamplerYcbcrConversionFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceSamplerYcbcrConversionFeatures const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceSamplerYcbcrConversionFeatures & operator=( PhysicalDeviceSamplerYcbcrConversionFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceSamplerYcbcrConversionFeatures ) );
- return *this;
- }
-
- PhysicalDeviceSamplerYcbcrConversionFeatures & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceSamplerYcbcrConversionFeatures & setSamplerYcbcrConversion( VULKAN_HPP_NAMESPACE::Bool32 samplerYcbcrConversion_ ) VULKAN_HPP_NOEXCEPT
- {
- samplerYcbcrConversion = samplerYcbcrConversion_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceSamplerYcbcrConversionFeatures const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceSamplerYcbcrConversionFeatures*>( this );
- }
-
- operator VkPhysicalDeviceSamplerYcbcrConversionFeatures &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceSamplerYcbcrConversionFeatures*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceSamplerYcbcrConversionFeatures const& ) const = default;
-#else
- bool operator==( PhysicalDeviceSamplerYcbcrConversionFeatures const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( samplerYcbcrConversion == rhs.samplerYcbcrConversion );
- }
-
- bool operator!=( PhysicalDeviceSamplerYcbcrConversionFeatures const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceSamplerYcbcrConversionFeatures;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 samplerYcbcrConversion = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceSamplerYcbcrConversionFeatures ) == sizeof( VkPhysicalDeviceSamplerYcbcrConversionFeatures ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceSamplerYcbcrConversionFeatures>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceSamplerYcbcrConversionFeatures>
+ struct StructExtends<PipelineViewportCoarseSampleOrderStateCreateInfoNV, PipelineViewportStateCreateInfo>
{
- using Type = PhysicalDeviceSamplerYcbcrConversionFeatures;
- };
- using PhysicalDeviceSamplerYcbcrConversionFeaturesKHR = PhysicalDeviceSamplerYcbcrConversionFeatures;
-
- struct PhysicalDeviceScalarBlockLayoutFeatures
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceScalarBlockLayoutFeatures;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceScalarBlockLayoutFeatures(VULKAN_HPP_NAMESPACE::Bool32 scalarBlockLayout_ = {}) VULKAN_HPP_NOEXCEPT
- : scalarBlockLayout( scalarBlockLayout_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceScalarBlockLayoutFeatures( PhysicalDeviceScalarBlockLayoutFeatures const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceScalarBlockLayoutFeatures( VkPhysicalDeviceScalarBlockLayoutFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceScalarBlockLayoutFeatures & operator=( VkPhysicalDeviceScalarBlockLayoutFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceScalarBlockLayoutFeatures const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceScalarBlockLayoutFeatures & operator=( PhysicalDeviceScalarBlockLayoutFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceScalarBlockLayoutFeatures ) );
- return *this;
- }
-
- PhysicalDeviceScalarBlockLayoutFeatures & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceScalarBlockLayoutFeatures & setScalarBlockLayout( VULKAN_HPP_NAMESPACE::Bool32 scalarBlockLayout_ ) VULKAN_HPP_NOEXCEPT
- {
- scalarBlockLayout = scalarBlockLayout_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceScalarBlockLayoutFeatures const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceScalarBlockLayoutFeatures*>( this );
- }
-
- operator VkPhysicalDeviceScalarBlockLayoutFeatures &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceScalarBlockLayoutFeatures*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceScalarBlockLayoutFeatures const& ) const = default;
-#else
- bool operator==( PhysicalDeviceScalarBlockLayoutFeatures const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( scalarBlockLayout == rhs.scalarBlockLayout );
- }
-
- bool operator!=( PhysicalDeviceScalarBlockLayoutFeatures const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceScalarBlockLayoutFeatures;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 scalarBlockLayout = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceScalarBlockLayoutFeatures ) == sizeof( VkPhysicalDeviceScalarBlockLayoutFeatures ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceScalarBlockLayoutFeatures>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceScalarBlockLayoutFeatures>
+ struct StructExtends<PipelineViewportExclusiveScissorStateCreateInfoNV, PipelineViewportStateCreateInfo>
{
- using Type = PhysicalDeviceScalarBlockLayoutFeatures;
- };
- using PhysicalDeviceScalarBlockLayoutFeaturesEXT = PhysicalDeviceScalarBlockLayoutFeatures;
-
- struct PhysicalDeviceSeparateDepthStencilLayoutsFeatures
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceSeparateDepthStencilLayoutsFeatures;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceSeparateDepthStencilLayoutsFeatures(VULKAN_HPP_NAMESPACE::Bool32 separateDepthStencilLayouts_ = {}) VULKAN_HPP_NOEXCEPT
- : separateDepthStencilLayouts( separateDepthStencilLayouts_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceSeparateDepthStencilLayoutsFeatures( PhysicalDeviceSeparateDepthStencilLayoutsFeatures const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceSeparateDepthStencilLayoutsFeatures( VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceSeparateDepthStencilLayoutsFeatures & operator=( VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceSeparateDepthStencilLayoutsFeatures const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceSeparateDepthStencilLayoutsFeatures & operator=( PhysicalDeviceSeparateDepthStencilLayoutsFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceSeparateDepthStencilLayoutsFeatures ) );
- return *this;
- }
-
- PhysicalDeviceSeparateDepthStencilLayoutsFeatures & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceSeparateDepthStencilLayoutsFeatures & setSeparateDepthStencilLayouts( VULKAN_HPP_NAMESPACE::Bool32 separateDepthStencilLayouts_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- separateDepthStencilLayouts = separateDepthStencilLayouts_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures*>( this );
- }
-
- operator VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceSeparateDepthStencilLayoutsFeatures const& ) const = default;
-#else
- bool operator==( PhysicalDeviceSeparateDepthStencilLayoutsFeatures const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( separateDepthStencilLayouts == rhs.separateDepthStencilLayouts );
- }
-
- bool operator!=( PhysicalDeviceSeparateDepthStencilLayoutsFeatures const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceSeparateDepthStencilLayoutsFeatures;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 separateDepthStencilLayouts = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceSeparateDepthStencilLayoutsFeatures ) == sizeof( VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceSeparateDepthStencilLayoutsFeatures>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceSeparateDepthStencilLayoutsFeatures>
+ struct StructExtends<PipelineViewportShadingRateImageStateCreateInfoNV, PipelineViewportStateCreateInfo>
{
- using Type = PhysicalDeviceSeparateDepthStencilLayoutsFeatures;
- };
- using PhysicalDeviceSeparateDepthStencilLayoutsFeaturesKHR = PhysicalDeviceSeparateDepthStencilLayoutsFeatures;
-
- struct PhysicalDeviceShaderAtomicFloatFeaturesEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceShaderAtomicFloatFeaturesEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderAtomicFloatFeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 shaderBufferFloat32Atomics_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderBufferFloat32AtomicAdd_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderBufferFloat64Atomics_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderBufferFloat64AtomicAdd_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderSharedFloat32Atomics_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderSharedFloat32AtomicAdd_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderSharedFloat64Atomics_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderSharedFloat64AtomicAdd_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderImageFloat32Atomics_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderImageFloat32AtomicAdd_ = {}, VULKAN_HPP_NAMESPACE::Bool32 sparseImageFloat32Atomics_ = {}, VULKAN_HPP_NAMESPACE::Bool32 sparseImageFloat32AtomicAdd_ = {}) VULKAN_HPP_NOEXCEPT
- : shaderBufferFloat32Atomics( shaderBufferFloat32Atomics_ ), shaderBufferFloat32AtomicAdd( shaderBufferFloat32AtomicAdd_ ), shaderBufferFloat64Atomics( shaderBufferFloat64Atomics_ ), shaderBufferFloat64AtomicAdd( shaderBufferFloat64AtomicAdd_ ), shaderSharedFloat32Atomics( shaderSharedFloat32Atomics_ ), shaderSharedFloat32AtomicAdd( shaderSharedFloat32AtomicAdd_ ), shaderSharedFloat64Atomics( shaderSharedFloat64Atomics_ ), shaderSharedFloat64AtomicAdd( shaderSharedFloat64AtomicAdd_ ), shaderImageFloat32Atomics( shaderImageFloat32Atomics_ ), shaderImageFloat32AtomicAdd( shaderImageFloat32AtomicAdd_ ), sparseImageFloat32Atomics( sparseImageFloat32Atomics_ ), sparseImageFloat32AtomicAdd( sparseImageFloat32AtomicAdd_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderAtomicFloatFeaturesEXT( PhysicalDeviceShaderAtomicFloatFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceShaderAtomicFloatFeaturesEXT( VkPhysicalDeviceShaderAtomicFloatFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceShaderAtomicFloatFeaturesEXT & operator=( VkPhysicalDeviceShaderAtomicFloatFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderAtomicFloatFeaturesEXT const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceShaderAtomicFloatFeaturesEXT & operator=( PhysicalDeviceShaderAtomicFloatFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceShaderAtomicFloatFeaturesEXT ) );
- return *this;
- }
-
- PhysicalDeviceShaderAtomicFloatFeaturesEXT & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceShaderAtomicFloatFeaturesEXT & setShaderBufferFloat32Atomics( VULKAN_HPP_NAMESPACE::Bool32 shaderBufferFloat32Atomics_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderBufferFloat32Atomics = shaderBufferFloat32Atomics_;
- return *this;
- }
-
- PhysicalDeviceShaderAtomicFloatFeaturesEXT & setShaderBufferFloat32AtomicAdd( VULKAN_HPP_NAMESPACE::Bool32 shaderBufferFloat32AtomicAdd_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderBufferFloat32AtomicAdd = shaderBufferFloat32AtomicAdd_;
- return *this;
- }
-
- PhysicalDeviceShaderAtomicFloatFeaturesEXT & setShaderBufferFloat64Atomics( VULKAN_HPP_NAMESPACE::Bool32 shaderBufferFloat64Atomics_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderBufferFloat64Atomics = shaderBufferFloat64Atomics_;
- return *this;
- }
-
- PhysicalDeviceShaderAtomicFloatFeaturesEXT & setShaderBufferFloat64AtomicAdd( VULKAN_HPP_NAMESPACE::Bool32 shaderBufferFloat64AtomicAdd_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderBufferFloat64AtomicAdd = shaderBufferFloat64AtomicAdd_;
- return *this;
- }
-
- PhysicalDeviceShaderAtomicFloatFeaturesEXT & setShaderSharedFloat32Atomics( VULKAN_HPP_NAMESPACE::Bool32 shaderSharedFloat32Atomics_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderSharedFloat32Atomics = shaderSharedFloat32Atomics_;
- return *this;
- }
-
- PhysicalDeviceShaderAtomicFloatFeaturesEXT & setShaderSharedFloat32AtomicAdd( VULKAN_HPP_NAMESPACE::Bool32 shaderSharedFloat32AtomicAdd_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderSharedFloat32AtomicAdd = shaderSharedFloat32AtomicAdd_;
- return *this;
- }
-
- PhysicalDeviceShaderAtomicFloatFeaturesEXT & setShaderSharedFloat64Atomics( VULKAN_HPP_NAMESPACE::Bool32 shaderSharedFloat64Atomics_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderSharedFloat64Atomics = shaderSharedFloat64Atomics_;
- return *this;
- }
-
- PhysicalDeviceShaderAtomicFloatFeaturesEXT & setShaderSharedFloat64AtomicAdd( VULKAN_HPP_NAMESPACE::Bool32 shaderSharedFloat64AtomicAdd_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderSharedFloat64AtomicAdd = shaderSharedFloat64AtomicAdd_;
- return *this;
- }
-
- PhysicalDeviceShaderAtomicFloatFeaturesEXT & setShaderImageFloat32Atomics( VULKAN_HPP_NAMESPACE::Bool32 shaderImageFloat32Atomics_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderImageFloat32Atomics = shaderImageFloat32Atomics_;
- return *this;
- }
-
- PhysicalDeviceShaderAtomicFloatFeaturesEXT & setShaderImageFloat32AtomicAdd( VULKAN_HPP_NAMESPACE::Bool32 shaderImageFloat32AtomicAdd_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderImageFloat32AtomicAdd = shaderImageFloat32AtomicAdd_;
- return *this;
- }
-
- PhysicalDeviceShaderAtomicFloatFeaturesEXT & setSparseImageFloat32Atomics( VULKAN_HPP_NAMESPACE::Bool32 sparseImageFloat32Atomics_ ) VULKAN_HPP_NOEXCEPT
- {
- sparseImageFloat32Atomics = sparseImageFloat32Atomics_;
- return *this;
- }
-
- PhysicalDeviceShaderAtomicFloatFeaturesEXT & setSparseImageFloat32AtomicAdd( VULKAN_HPP_NAMESPACE::Bool32 sparseImageFloat32AtomicAdd_ ) VULKAN_HPP_NOEXCEPT
- {
- sparseImageFloat32AtomicAdd = sparseImageFloat32AtomicAdd_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceShaderAtomicFloatFeaturesEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceShaderAtomicFloatFeaturesEXT*>( this );
- }
-
- operator VkPhysicalDeviceShaderAtomicFloatFeaturesEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceShaderAtomicFloatFeaturesEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceShaderAtomicFloatFeaturesEXT const& ) const = default;
-#else
- bool operator==( PhysicalDeviceShaderAtomicFloatFeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( shaderBufferFloat32Atomics == rhs.shaderBufferFloat32Atomics )
- && ( shaderBufferFloat32AtomicAdd == rhs.shaderBufferFloat32AtomicAdd )
- && ( shaderBufferFloat64Atomics == rhs.shaderBufferFloat64Atomics )
- && ( shaderBufferFloat64AtomicAdd == rhs.shaderBufferFloat64AtomicAdd )
- && ( shaderSharedFloat32Atomics == rhs.shaderSharedFloat32Atomics )
- && ( shaderSharedFloat32AtomicAdd == rhs.shaderSharedFloat32AtomicAdd )
- && ( shaderSharedFloat64Atomics == rhs.shaderSharedFloat64Atomics )
- && ( shaderSharedFloat64AtomicAdd == rhs.shaderSharedFloat64AtomicAdd )
- && ( shaderImageFloat32Atomics == rhs.shaderImageFloat32Atomics )
- && ( shaderImageFloat32AtomicAdd == rhs.shaderImageFloat32AtomicAdd )
- && ( sparseImageFloat32Atomics == rhs.sparseImageFloat32Atomics )
- && ( sparseImageFloat32AtomicAdd == rhs.sparseImageFloat32AtomicAdd );
- }
-
- bool operator!=( PhysicalDeviceShaderAtomicFloatFeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceShaderAtomicFloatFeaturesEXT;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderBufferFloat32Atomics = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderBufferFloat32AtomicAdd = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderBufferFloat64Atomics = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderBufferFloat64AtomicAdd = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderSharedFloat32Atomics = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderSharedFloat32AtomicAdd = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderSharedFloat64Atomics = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderSharedFloat64AtomicAdd = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderImageFloat32Atomics = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderImageFloat32AtomicAdd = {};
- VULKAN_HPP_NAMESPACE::Bool32 sparseImageFloat32Atomics = {};
- VULKAN_HPP_NAMESPACE::Bool32 sparseImageFloat32AtomicAdd = {};
-
- };
- static_assert( sizeof( PhysicalDeviceShaderAtomicFloatFeaturesEXT ) == sizeof( VkPhysicalDeviceShaderAtomicFloatFeaturesEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceShaderAtomicFloatFeaturesEXT>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceShaderAtomicFloatFeaturesEXT>
- {
- using Type = PhysicalDeviceShaderAtomicFloatFeaturesEXT;
- };
-
- struct PhysicalDeviceShaderAtomicInt64Features
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceShaderAtomicInt64Features;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderAtomicInt64Features(VULKAN_HPP_NAMESPACE::Bool32 shaderBufferInt64Atomics_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderSharedInt64Atomics_ = {}) VULKAN_HPP_NOEXCEPT
- : shaderBufferInt64Atomics( shaderBufferInt64Atomics_ ), shaderSharedInt64Atomics( shaderSharedInt64Atomics_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderAtomicInt64Features( PhysicalDeviceShaderAtomicInt64Features const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceShaderAtomicInt64Features( VkPhysicalDeviceShaderAtomicInt64Features const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceShaderAtomicInt64Features & operator=( VkPhysicalDeviceShaderAtomicInt64Features const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderAtomicInt64Features const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceShaderAtomicInt64Features & operator=( PhysicalDeviceShaderAtomicInt64Features const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceShaderAtomicInt64Features ) );
- return *this;
- }
-
- PhysicalDeviceShaderAtomicInt64Features & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceShaderAtomicInt64Features & setShaderBufferInt64Atomics( VULKAN_HPP_NAMESPACE::Bool32 shaderBufferInt64Atomics_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderBufferInt64Atomics = shaderBufferInt64Atomics_;
- return *this;
- }
-
- PhysicalDeviceShaderAtomicInt64Features & setShaderSharedInt64Atomics( VULKAN_HPP_NAMESPACE::Bool32 shaderSharedInt64Atomics_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderSharedInt64Atomics = shaderSharedInt64Atomics_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceShaderAtomicInt64Features const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceShaderAtomicInt64Features*>( this );
- }
-
- operator VkPhysicalDeviceShaderAtomicInt64Features &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceShaderAtomicInt64Features*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceShaderAtomicInt64Features const& ) const = default;
-#else
- bool operator==( PhysicalDeviceShaderAtomicInt64Features const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( shaderBufferInt64Atomics == rhs.shaderBufferInt64Atomics )
- && ( shaderSharedInt64Atomics == rhs.shaderSharedInt64Atomics );
- }
-
- bool operator!=( PhysicalDeviceShaderAtomicInt64Features const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceShaderAtomicInt64Features;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderBufferInt64Atomics = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderSharedInt64Atomics = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceShaderAtomicInt64Features ) == sizeof( VkPhysicalDeviceShaderAtomicInt64Features ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceShaderAtomicInt64Features>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceShaderAtomicInt64Features>
+ struct StructExtends<PipelineViewportSwizzleStateCreateInfoNV, PipelineViewportStateCreateInfo>
{
- using Type = PhysicalDeviceShaderAtomicInt64Features;
- };
- using PhysicalDeviceShaderAtomicInt64FeaturesKHR = PhysicalDeviceShaderAtomicInt64Features;
-
- struct PhysicalDeviceShaderClockFeaturesKHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceShaderClockFeaturesKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderClockFeaturesKHR(VULKAN_HPP_NAMESPACE::Bool32 shaderSubgroupClock_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderDeviceClock_ = {}) VULKAN_HPP_NOEXCEPT
- : shaderSubgroupClock( shaderSubgroupClock_ ), shaderDeviceClock( shaderDeviceClock_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderClockFeaturesKHR( PhysicalDeviceShaderClockFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceShaderClockFeaturesKHR( VkPhysicalDeviceShaderClockFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceShaderClockFeaturesKHR & operator=( VkPhysicalDeviceShaderClockFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderClockFeaturesKHR const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceShaderClockFeaturesKHR & operator=( PhysicalDeviceShaderClockFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceShaderClockFeaturesKHR ) );
- return *this;
- }
-
- PhysicalDeviceShaderClockFeaturesKHR & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceShaderClockFeaturesKHR & setShaderSubgroupClock( VULKAN_HPP_NAMESPACE::Bool32 shaderSubgroupClock_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderSubgroupClock = shaderSubgroupClock_;
- return *this;
- }
-
- PhysicalDeviceShaderClockFeaturesKHR & setShaderDeviceClock( VULKAN_HPP_NAMESPACE::Bool32 shaderDeviceClock_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderDeviceClock = shaderDeviceClock_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceShaderClockFeaturesKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceShaderClockFeaturesKHR*>( this );
- }
-
- operator VkPhysicalDeviceShaderClockFeaturesKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceShaderClockFeaturesKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceShaderClockFeaturesKHR const& ) const = default;
-#else
- bool operator==( PhysicalDeviceShaderClockFeaturesKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( shaderSubgroupClock == rhs.shaderSubgroupClock )
- && ( shaderDeviceClock == rhs.shaderDeviceClock );
- }
-
- bool operator!=( PhysicalDeviceShaderClockFeaturesKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceShaderClockFeaturesKHR;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderSubgroupClock = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderDeviceClock = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceShaderClockFeaturesKHR ) == sizeof( VkPhysicalDeviceShaderClockFeaturesKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceShaderClockFeaturesKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceShaderClockFeaturesKHR>
+ struct StructExtends<PipelineViewportWScalingStateCreateInfoNV, PipelineViewportStateCreateInfo>
{
- using Type = PhysicalDeviceShaderClockFeaturesKHR;
- };
-
- struct PhysicalDeviceShaderCoreProperties2AMD
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceShaderCoreProperties2AMD;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderCoreProperties2AMD(VULKAN_HPP_NAMESPACE::ShaderCorePropertiesFlagsAMD shaderCoreFeatures_ = {}, uint32_t activeComputeUnitCount_ = {}) VULKAN_HPP_NOEXCEPT
- : shaderCoreFeatures( shaderCoreFeatures_ ), activeComputeUnitCount( activeComputeUnitCount_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderCoreProperties2AMD( PhysicalDeviceShaderCoreProperties2AMD const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceShaderCoreProperties2AMD( VkPhysicalDeviceShaderCoreProperties2AMD const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceShaderCoreProperties2AMD & operator=( VkPhysicalDeviceShaderCoreProperties2AMD const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderCoreProperties2AMD const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceShaderCoreProperties2AMD & operator=( PhysicalDeviceShaderCoreProperties2AMD const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceShaderCoreProperties2AMD ) );
- return *this;
- }
-
-
- operator VkPhysicalDeviceShaderCoreProperties2AMD const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceShaderCoreProperties2AMD*>( this );
- }
-
- operator VkPhysicalDeviceShaderCoreProperties2AMD &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceShaderCoreProperties2AMD*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceShaderCoreProperties2AMD const& ) const = default;
-#else
- bool operator==( PhysicalDeviceShaderCoreProperties2AMD const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( shaderCoreFeatures == rhs.shaderCoreFeatures )
- && ( activeComputeUnitCount == rhs.activeComputeUnitCount );
- }
-
- bool operator!=( PhysicalDeviceShaderCoreProperties2AMD const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceShaderCoreProperties2AMD;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::ShaderCorePropertiesFlagsAMD shaderCoreFeatures = {};
- uint32_t activeComputeUnitCount = {};
-
- };
- static_assert( sizeof( PhysicalDeviceShaderCoreProperties2AMD ) == sizeof( VkPhysicalDeviceShaderCoreProperties2AMD ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceShaderCoreProperties2AMD>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceShaderCoreProperties2AMD>
- {
- using Type = PhysicalDeviceShaderCoreProperties2AMD;
+ value = true
+ };
};
-
- struct PhysicalDeviceShaderCorePropertiesAMD
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceShaderCorePropertiesAMD;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderCorePropertiesAMD(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_ = {}) VULKAN_HPP_NOEXCEPT
- : shaderEngineCount( shaderEngineCount_ ), shaderArraysPerEngineCount( shaderArraysPerEngineCount_ ), computeUnitsPerShaderArray( computeUnitsPerShaderArray_ ), simdPerComputeUnit( simdPerComputeUnit_ ), wavefrontsPerSimd( wavefrontsPerSimd_ ), wavefrontSize( wavefrontSize_ ), sgprsPerSimd( sgprsPerSimd_ ), minSgprAllocation( minSgprAllocation_ ), maxSgprAllocation( maxSgprAllocation_ ), sgprAllocationGranularity( sgprAllocationGranularity_ ), vgprsPerSimd( vgprsPerSimd_ ), minVgprAllocation( minVgprAllocation_ ), maxVgprAllocation( maxVgprAllocation_ ), vgprAllocationGranularity( vgprAllocationGranularity_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderCorePropertiesAMD( PhysicalDeviceShaderCorePropertiesAMD const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceShaderCorePropertiesAMD( VkPhysicalDeviceShaderCorePropertiesAMD const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceShaderCorePropertiesAMD & operator=( VkPhysicalDeviceShaderCorePropertiesAMD const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderCorePropertiesAMD const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceShaderCorePropertiesAMD & operator=( PhysicalDeviceShaderCorePropertiesAMD const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceShaderCorePropertiesAMD ) );
- return *this;
- }
-
-
- operator VkPhysicalDeviceShaderCorePropertiesAMD const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceShaderCorePropertiesAMD*>( this );
- }
-
- operator VkPhysicalDeviceShaderCorePropertiesAMD &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceShaderCorePropertiesAMD*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceShaderCorePropertiesAMD const& ) const = default;
-#else
- bool operator==( PhysicalDeviceShaderCorePropertiesAMD const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( shaderEngineCount == rhs.shaderEngineCount )
- && ( shaderArraysPerEngineCount == rhs.shaderArraysPerEngineCount )
- && ( computeUnitsPerShaderArray == rhs.computeUnitsPerShaderArray )
- && ( simdPerComputeUnit == rhs.simdPerComputeUnit )
- && ( wavefrontsPerSimd == rhs.wavefrontsPerSimd )
- && ( wavefrontSize == rhs.wavefrontSize )
- && ( sgprsPerSimd == rhs.sgprsPerSimd )
- && ( minSgprAllocation == rhs.minSgprAllocation )
- && ( maxSgprAllocation == rhs.maxSgprAllocation )
- && ( sgprAllocationGranularity == rhs.sgprAllocationGranularity )
- && ( vgprsPerSimd == rhs.vgprsPerSimd )
- && ( minVgprAllocation == rhs.minVgprAllocation )
- && ( maxVgprAllocation == rhs.maxVgprAllocation )
- && ( vgprAllocationGranularity == rhs.vgprAllocationGranularity );
- }
-
- bool operator!=( PhysicalDeviceShaderCorePropertiesAMD const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceShaderCorePropertiesAMD;
- 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 = {};
-
- };
- static_assert( sizeof( PhysicalDeviceShaderCorePropertiesAMD ) == sizeof( VkPhysicalDeviceShaderCorePropertiesAMD ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceShaderCorePropertiesAMD>::value, "struct wrapper is not a standard layout!" );
-
+#if defined( VK_USE_PLATFORM_GGP )
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceShaderCorePropertiesAMD>
+ struct StructExtends<PresentFrameTokenGGP, PresentInfoKHR>
{
- using Type = PhysicalDeviceShaderCorePropertiesAMD;
- };
-
- struct PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 shaderDemoteToHelperInvocation_ = {}) VULKAN_HPP_NOEXCEPT
- : shaderDemoteToHelperInvocation( shaderDemoteToHelperInvocation_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT( PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT( VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT & operator=( VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT & operator=( PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT ) );
- return *this;
- }
-
- PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT & setShaderDemoteToHelperInvocation( VULKAN_HPP_NAMESPACE::Bool32 shaderDemoteToHelperInvocation_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderDemoteToHelperInvocation = shaderDemoteToHelperInvocation_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT*>( this );
- }
-
- operator VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT &() VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT const& ) const = default;
-#else
- bool operator==( PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( shaderDemoteToHelperInvocation == rhs.shaderDemoteToHelperInvocation );
- }
-
- bool operator!=( PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderDemoteToHelperInvocation = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT ) == sizeof( VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT>::value, "struct wrapper is not a standard layout!" );
-
+#endif /*VK_USE_PLATFORM_GGP*/
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT>
+ struct StructExtends<PresentRegionsKHR, PresentInfoKHR>
{
- using Type = PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT;
- };
-
- struct PhysicalDeviceShaderDrawParametersFeatures
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceShaderDrawParametersFeatures;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderDrawParametersFeatures(VULKAN_HPP_NAMESPACE::Bool32 shaderDrawParameters_ = {}) VULKAN_HPP_NOEXCEPT
- : shaderDrawParameters( shaderDrawParameters_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderDrawParametersFeatures( PhysicalDeviceShaderDrawParametersFeatures const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceShaderDrawParametersFeatures( VkPhysicalDeviceShaderDrawParametersFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceShaderDrawParametersFeatures & operator=( VkPhysicalDeviceShaderDrawParametersFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderDrawParametersFeatures const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceShaderDrawParametersFeatures & operator=( PhysicalDeviceShaderDrawParametersFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceShaderDrawParametersFeatures ) );
- return *this;
- }
-
- PhysicalDeviceShaderDrawParametersFeatures & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceShaderDrawParametersFeatures & setShaderDrawParameters( VULKAN_HPP_NAMESPACE::Bool32 shaderDrawParameters_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderDrawParameters = shaderDrawParameters_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceShaderDrawParametersFeatures const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceShaderDrawParametersFeatures*>( this );
- }
-
- operator VkPhysicalDeviceShaderDrawParametersFeatures &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceShaderDrawParametersFeatures*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceShaderDrawParametersFeatures const& ) const = default;
-#else
- bool operator==( PhysicalDeviceShaderDrawParametersFeatures const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( shaderDrawParameters == rhs.shaderDrawParameters );
- }
-
- bool operator!=( PhysicalDeviceShaderDrawParametersFeatures const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceShaderDrawParametersFeatures;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderDrawParameters = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceShaderDrawParametersFeatures ) == sizeof( VkPhysicalDeviceShaderDrawParametersFeatures ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceShaderDrawParametersFeatures>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceShaderDrawParametersFeatures>
- {
- using Type = PhysicalDeviceShaderDrawParametersFeatures;
- };
- using PhysicalDeviceShaderDrawParameterFeatures = PhysicalDeviceShaderDrawParametersFeatures;
-
- struct PhysicalDeviceShaderFloat16Int8Features
+ struct StructExtends<PresentTimesInfoGOOGLE, PresentInfoKHR>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceShaderFloat16Int8Features;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderFloat16Int8Features(VULKAN_HPP_NAMESPACE::Bool32 shaderFloat16_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderInt8_ = {}) VULKAN_HPP_NOEXCEPT
- : shaderFloat16( shaderFloat16_ ), shaderInt8( shaderInt8_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderFloat16Int8Features( PhysicalDeviceShaderFloat16Int8Features const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceShaderFloat16Int8Features( VkPhysicalDeviceShaderFloat16Int8Features const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceShaderFloat16Int8Features & operator=( VkPhysicalDeviceShaderFloat16Int8Features const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderFloat16Int8Features const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceShaderFloat16Int8Features & operator=( PhysicalDeviceShaderFloat16Int8Features const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceShaderFloat16Int8Features ) );
- return *this;
- }
-
- PhysicalDeviceShaderFloat16Int8Features & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceShaderFloat16Int8Features & setShaderFloat16( VULKAN_HPP_NAMESPACE::Bool32 shaderFloat16_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderFloat16 = shaderFloat16_;
- return *this;
- }
-
- PhysicalDeviceShaderFloat16Int8Features & setShaderInt8( VULKAN_HPP_NAMESPACE::Bool32 shaderInt8_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderInt8 = shaderInt8_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceShaderFloat16Int8Features const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceShaderFloat16Int8Features*>( this );
- }
-
- operator VkPhysicalDeviceShaderFloat16Int8Features &() VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<VkPhysicalDeviceShaderFloat16Int8Features*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceShaderFloat16Int8Features const& ) const = default;
-#else
- bool operator==( PhysicalDeviceShaderFloat16Int8Features const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( shaderFloat16 == rhs.shaderFloat16 )
- && ( shaderInt8 == rhs.shaderInt8 );
- }
-
- bool operator!=( PhysicalDeviceShaderFloat16Int8Features const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceShaderFloat16Int8Features;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderFloat16 = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderInt8 = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceShaderFloat16Int8Features ) == sizeof( VkPhysicalDeviceShaderFloat16Int8Features ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceShaderFloat16Int8Features>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceShaderFloat16Int8Features>
+ struct StructExtends<ProtectedSubmitInfo, SubmitInfo>
{
- using Type = PhysicalDeviceShaderFloat16Int8Features;
- };
- using PhysicalDeviceFloat16Int8FeaturesKHR = PhysicalDeviceShaderFloat16Int8Features;
- using PhysicalDeviceShaderFloat16Int8FeaturesKHR = PhysicalDeviceShaderFloat16Int8Features;
-
- struct PhysicalDeviceShaderImageAtomicInt64FeaturesEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceShaderImageAtomicInt64FeaturesEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderImageAtomicInt64FeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 shaderImageInt64Atomics_ = {}, VULKAN_HPP_NAMESPACE::Bool32 sparseImageInt64Atomics_ = {}) VULKAN_HPP_NOEXCEPT
- : shaderImageInt64Atomics( shaderImageInt64Atomics_ ), sparseImageInt64Atomics( sparseImageInt64Atomics_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderImageAtomicInt64FeaturesEXT( PhysicalDeviceShaderImageAtomicInt64FeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceShaderImageAtomicInt64FeaturesEXT( VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceShaderImageAtomicInt64FeaturesEXT & operator=( VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderImageAtomicInt64FeaturesEXT const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceShaderImageAtomicInt64FeaturesEXT & operator=( PhysicalDeviceShaderImageAtomicInt64FeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceShaderImageAtomicInt64FeaturesEXT ) );
- return *this;
- }
-
- PhysicalDeviceShaderImageAtomicInt64FeaturesEXT & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceShaderImageAtomicInt64FeaturesEXT & setShaderImageInt64Atomics( VULKAN_HPP_NAMESPACE::Bool32 shaderImageInt64Atomics_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- shaderImageInt64Atomics = shaderImageInt64Atomics_;
- return *this;
- }
-
- PhysicalDeviceShaderImageAtomicInt64FeaturesEXT & setSparseImageInt64Atomics( VULKAN_HPP_NAMESPACE::Bool32 sparseImageInt64Atomics_ ) VULKAN_HPP_NOEXCEPT
- {
- sparseImageInt64Atomics = sparseImageInt64Atomics_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT*>( this );
- }
-
- operator VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceShaderImageAtomicInt64FeaturesEXT const& ) const = default;
-#else
- bool operator==( PhysicalDeviceShaderImageAtomicInt64FeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( shaderImageInt64Atomics == rhs.shaderImageInt64Atomics )
- && ( sparseImageInt64Atomics == rhs.sparseImageInt64Atomics );
- }
-
- bool operator!=( PhysicalDeviceShaderImageAtomicInt64FeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceShaderImageAtomicInt64FeaturesEXT;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderImageInt64Atomics = {};
- VULKAN_HPP_NAMESPACE::Bool32 sparseImageInt64Atomics = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceShaderImageAtomicInt64FeaturesEXT ) == sizeof( VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceShaderImageAtomicInt64FeaturesEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceShaderImageAtomicInt64FeaturesEXT>
- {
- using Type = PhysicalDeviceShaderImageAtomicInt64FeaturesEXT;
- };
-
- struct PhysicalDeviceShaderImageFootprintFeaturesNV
+ struct StructExtends<QueryPoolPerformanceCreateInfoKHR, QueryPoolCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceShaderImageFootprintFeaturesNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderImageFootprintFeaturesNV(VULKAN_HPP_NAMESPACE::Bool32 imageFootprint_ = {}) VULKAN_HPP_NOEXCEPT
- : imageFootprint( imageFootprint_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderImageFootprintFeaturesNV( PhysicalDeviceShaderImageFootprintFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceShaderImageFootprintFeaturesNV( VkPhysicalDeviceShaderImageFootprintFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceShaderImageFootprintFeaturesNV & operator=( VkPhysicalDeviceShaderImageFootprintFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderImageFootprintFeaturesNV const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceShaderImageFootprintFeaturesNV & operator=( PhysicalDeviceShaderImageFootprintFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceShaderImageFootprintFeaturesNV ) );
- return *this;
- }
-
- PhysicalDeviceShaderImageFootprintFeaturesNV & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceShaderImageFootprintFeaturesNV & setImageFootprint( VULKAN_HPP_NAMESPACE::Bool32 imageFootprint_ ) VULKAN_HPP_NOEXCEPT
- {
- imageFootprint = imageFootprint_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceShaderImageFootprintFeaturesNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceShaderImageFootprintFeaturesNV*>( this );
- }
-
- operator VkPhysicalDeviceShaderImageFootprintFeaturesNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceShaderImageFootprintFeaturesNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceShaderImageFootprintFeaturesNV const& ) const = default;
-#else
- bool operator==( PhysicalDeviceShaderImageFootprintFeaturesNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( imageFootprint == rhs.imageFootprint );
- }
-
- bool operator!=( PhysicalDeviceShaderImageFootprintFeaturesNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceShaderImageFootprintFeaturesNV;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 imageFootprint = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceShaderImageFootprintFeaturesNV ) == sizeof( VkPhysicalDeviceShaderImageFootprintFeaturesNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceShaderImageFootprintFeaturesNV>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceShaderImageFootprintFeaturesNV>
- {
- using Type = PhysicalDeviceShaderImageFootprintFeaturesNV;
- };
-
- struct PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL
+ struct StructExtends<QueryPoolPerformanceQueryCreateInfoINTEL, QueryPoolCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceShaderIntegerFunctions2FeaturesINTEL;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL(VULKAN_HPP_NAMESPACE::Bool32 shaderIntegerFunctions2_ = {}) VULKAN_HPP_NOEXCEPT
- : shaderIntegerFunctions2( shaderIntegerFunctions2_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL( PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL( VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL & operator=( VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL & operator=( PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL ) );
- return *this;
- }
-
- PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL & setShaderIntegerFunctions2( VULKAN_HPP_NAMESPACE::Bool32 shaderIntegerFunctions2_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderIntegerFunctions2 = shaderIntegerFunctions2_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL*>( this );
- }
-
- operator VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL const& ) const = default;
-#else
- bool operator==( PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( shaderIntegerFunctions2 == rhs.shaderIntegerFunctions2 );
- }
-
- bool operator!=( PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceShaderIntegerFunctions2FeaturesINTEL;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderIntegerFunctions2 = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL ) == sizeof( VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceShaderIntegerFunctions2FeaturesINTEL>
+ struct StructExtends<QueueFamilyCheckpointProperties2NV, QueueFamilyProperties2>
{
- using Type = PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL;
- };
-
- struct PhysicalDeviceShaderSMBuiltinsFeaturesNV
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceShaderSmBuiltinsFeaturesNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderSMBuiltinsFeaturesNV(VULKAN_HPP_NAMESPACE::Bool32 shaderSMBuiltins_ = {}) VULKAN_HPP_NOEXCEPT
- : shaderSMBuiltins( shaderSMBuiltins_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderSMBuiltinsFeaturesNV( PhysicalDeviceShaderSMBuiltinsFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceShaderSMBuiltinsFeaturesNV( VkPhysicalDeviceShaderSMBuiltinsFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceShaderSMBuiltinsFeaturesNV & operator=( VkPhysicalDeviceShaderSMBuiltinsFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderSMBuiltinsFeaturesNV const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceShaderSMBuiltinsFeaturesNV & operator=( PhysicalDeviceShaderSMBuiltinsFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceShaderSMBuiltinsFeaturesNV ) );
- return *this;
- }
-
- PhysicalDeviceShaderSMBuiltinsFeaturesNV & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceShaderSMBuiltinsFeaturesNV & setShaderSMBuiltins( VULKAN_HPP_NAMESPACE::Bool32 shaderSMBuiltins_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderSMBuiltins = shaderSMBuiltins_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceShaderSMBuiltinsFeaturesNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceShaderSMBuiltinsFeaturesNV*>( this );
- }
-
- operator VkPhysicalDeviceShaderSMBuiltinsFeaturesNV &() VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<VkPhysicalDeviceShaderSMBuiltinsFeaturesNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceShaderSMBuiltinsFeaturesNV const& ) const = default;
-#else
- bool operator==( PhysicalDeviceShaderSMBuiltinsFeaturesNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( shaderSMBuiltins == rhs.shaderSMBuiltins );
- }
-
- bool operator!=( PhysicalDeviceShaderSMBuiltinsFeaturesNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceShaderSmBuiltinsFeaturesNV;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderSMBuiltins = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceShaderSMBuiltinsFeaturesNV ) == sizeof( VkPhysicalDeviceShaderSMBuiltinsFeaturesNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceShaderSMBuiltinsFeaturesNV>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceShaderSmBuiltinsFeaturesNV>
- {
- using Type = PhysicalDeviceShaderSMBuiltinsFeaturesNV;
- };
-
- struct PhysicalDeviceShaderSMBuiltinsPropertiesNV
+ struct StructExtends<QueueFamilyCheckpointPropertiesNV, QueueFamilyProperties2>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceShaderSmBuiltinsPropertiesNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderSMBuiltinsPropertiesNV(uint32_t shaderSMCount_ = {}, uint32_t shaderWarpsPerSM_ = {}) VULKAN_HPP_NOEXCEPT
- : shaderSMCount( shaderSMCount_ ), shaderWarpsPerSM( shaderWarpsPerSM_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderSMBuiltinsPropertiesNV( PhysicalDeviceShaderSMBuiltinsPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceShaderSMBuiltinsPropertiesNV( VkPhysicalDeviceShaderSMBuiltinsPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceShaderSMBuiltinsPropertiesNV & operator=( VkPhysicalDeviceShaderSMBuiltinsPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderSMBuiltinsPropertiesNV const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceShaderSMBuiltinsPropertiesNV & operator=( PhysicalDeviceShaderSMBuiltinsPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceShaderSMBuiltinsPropertiesNV ) );
- return *this;
- }
-
-
- operator VkPhysicalDeviceShaderSMBuiltinsPropertiesNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceShaderSMBuiltinsPropertiesNV*>( this );
- }
-
- operator VkPhysicalDeviceShaderSMBuiltinsPropertiesNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceShaderSMBuiltinsPropertiesNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceShaderSMBuiltinsPropertiesNV const& ) const = default;
-#else
- bool operator==( PhysicalDeviceShaderSMBuiltinsPropertiesNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( shaderSMCount == rhs.shaderSMCount )
- && ( shaderWarpsPerSM == rhs.shaderWarpsPerSM );
- }
-
- bool operator!=( PhysicalDeviceShaderSMBuiltinsPropertiesNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceShaderSmBuiltinsPropertiesNV;
- void* pNext = {};
- uint32_t shaderSMCount = {};
- uint32_t shaderWarpsPerSM = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceShaderSMBuiltinsPropertiesNV ) == sizeof( VkPhysicalDeviceShaderSMBuiltinsPropertiesNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceShaderSMBuiltinsPropertiesNV>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceShaderSmBuiltinsPropertiesNV>
+ struct StructExtends<QueueFamilyGlobalPriorityPropertiesEXT, QueueFamilyProperties2>
{
- using Type = PhysicalDeviceShaderSMBuiltinsPropertiesNV;
- };
-
- struct PhysicalDeviceShaderSubgroupExtendedTypesFeatures
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceShaderSubgroupExtendedTypesFeatures;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderSubgroupExtendedTypesFeatures(VULKAN_HPP_NAMESPACE::Bool32 shaderSubgroupExtendedTypes_ = {}) VULKAN_HPP_NOEXCEPT
- : shaderSubgroupExtendedTypes( shaderSubgroupExtendedTypes_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderSubgroupExtendedTypesFeatures( PhysicalDeviceShaderSubgroupExtendedTypesFeatures const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceShaderSubgroupExtendedTypesFeatures( VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceShaderSubgroupExtendedTypesFeatures & operator=( VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderSubgroupExtendedTypesFeatures const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceShaderSubgroupExtendedTypesFeatures & operator=( PhysicalDeviceShaderSubgroupExtendedTypesFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceShaderSubgroupExtendedTypesFeatures ) );
- return *this;
- }
-
- PhysicalDeviceShaderSubgroupExtendedTypesFeatures & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceShaderSubgroupExtendedTypesFeatures & setShaderSubgroupExtendedTypes( VULKAN_HPP_NAMESPACE::Bool32 shaderSubgroupExtendedTypes_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderSubgroupExtendedTypes = shaderSubgroupExtendedTypes_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures*>( this );
- }
-
- operator VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceShaderSubgroupExtendedTypesFeatures const& ) const = default;
-#else
- bool operator==( PhysicalDeviceShaderSubgroupExtendedTypesFeatures const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( shaderSubgroupExtendedTypes == rhs.shaderSubgroupExtendedTypes );
- }
-
- bool operator!=( PhysicalDeviceShaderSubgroupExtendedTypesFeatures const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceShaderSubgroupExtendedTypesFeatures;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderSubgroupExtendedTypes = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceShaderSubgroupExtendedTypesFeatures ) == sizeof( VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceShaderSubgroupExtendedTypesFeatures>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceShaderSubgroupExtendedTypesFeatures>
- {
- using Type = PhysicalDeviceShaderSubgroupExtendedTypesFeatures;
- };
- using PhysicalDeviceShaderSubgroupExtendedTypesFeaturesKHR = PhysicalDeviceShaderSubgroupExtendedTypesFeatures;
-
- struct PhysicalDeviceShaderTerminateInvocationFeaturesKHR
+ struct StructExtends<RenderPassAttachmentBeginInfo, RenderPassBeginInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceShaderTerminateInvocationFeaturesKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderTerminateInvocationFeaturesKHR(VULKAN_HPP_NAMESPACE::Bool32 shaderTerminateInvocation_ = {}) VULKAN_HPP_NOEXCEPT
- : shaderTerminateInvocation( shaderTerminateInvocation_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderTerminateInvocationFeaturesKHR( PhysicalDeviceShaderTerminateInvocationFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceShaderTerminateInvocationFeaturesKHR( VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceShaderTerminateInvocationFeaturesKHR & operator=( VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderTerminateInvocationFeaturesKHR const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceShaderTerminateInvocationFeaturesKHR & operator=( PhysicalDeviceShaderTerminateInvocationFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceShaderTerminateInvocationFeaturesKHR ) );
- return *this;
- }
-
- PhysicalDeviceShaderTerminateInvocationFeaturesKHR & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceShaderTerminateInvocationFeaturesKHR & setShaderTerminateInvocation( VULKAN_HPP_NAMESPACE::Bool32 shaderTerminateInvocation_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderTerminateInvocation = shaderTerminateInvocation_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR*>( this );
- }
-
- operator VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceShaderTerminateInvocationFeaturesKHR const& ) const = default;
-#else
- bool operator==( PhysicalDeviceShaderTerminateInvocationFeaturesKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( shaderTerminateInvocation == rhs.shaderTerminateInvocation );
- }
-
- bool operator!=( PhysicalDeviceShaderTerminateInvocationFeaturesKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceShaderTerminateInvocationFeaturesKHR;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderTerminateInvocation = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceShaderTerminateInvocationFeaturesKHR ) == sizeof( VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceShaderTerminateInvocationFeaturesKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceShaderTerminateInvocationFeaturesKHR>
- {
- using Type = PhysicalDeviceShaderTerminateInvocationFeaturesKHR;
- };
-
- struct PhysicalDeviceShadingRateImageFeaturesNV
+ struct StructExtends<RenderPassFragmentDensityMapCreateInfoEXT, RenderPassCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceShadingRateImageFeaturesNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceShadingRateImageFeaturesNV(VULKAN_HPP_NAMESPACE::Bool32 shadingRateImage_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shadingRateCoarseSampleOrder_ = {}) VULKAN_HPP_NOEXCEPT
- : shadingRateImage( shadingRateImage_ ), shadingRateCoarseSampleOrder( shadingRateCoarseSampleOrder_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceShadingRateImageFeaturesNV( PhysicalDeviceShadingRateImageFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceShadingRateImageFeaturesNV( VkPhysicalDeviceShadingRateImageFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceShadingRateImageFeaturesNV & operator=( VkPhysicalDeviceShadingRateImageFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceShadingRateImageFeaturesNV const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceShadingRateImageFeaturesNV & operator=( PhysicalDeviceShadingRateImageFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceShadingRateImageFeaturesNV ) );
- return *this;
- }
-
- PhysicalDeviceShadingRateImageFeaturesNV & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceShadingRateImageFeaturesNV & setShadingRateImage( VULKAN_HPP_NAMESPACE::Bool32 shadingRateImage_ ) VULKAN_HPP_NOEXCEPT
- {
- shadingRateImage = shadingRateImage_;
- return *this;
- }
-
- PhysicalDeviceShadingRateImageFeaturesNV & setShadingRateCoarseSampleOrder( VULKAN_HPP_NAMESPACE::Bool32 shadingRateCoarseSampleOrder_ ) VULKAN_HPP_NOEXCEPT
- {
- shadingRateCoarseSampleOrder = shadingRateCoarseSampleOrder_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceShadingRateImageFeaturesNV const&() const VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<const VkPhysicalDeviceShadingRateImageFeaturesNV*>( this );
- }
-
- operator VkPhysicalDeviceShadingRateImageFeaturesNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceShadingRateImageFeaturesNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceShadingRateImageFeaturesNV const& ) const = default;
-#else
- bool operator==( PhysicalDeviceShadingRateImageFeaturesNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( shadingRateImage == rhs.shadingRateImage )
- && ( shadingRateCoarseSampleOrder == rhs.shadingRateCoarseSampleOrder );
- }
-
- bool operator!=( PhysicalDeviceShadingRateImageFeaturesNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceShadingRateImageFeaturesNV;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 shadingRateImage = {};
- VULKAN_HPP_NAMESPACE::Bool32 shadingRateCoarseSampleOrder = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceShadingRateImageFeaturesNV ) == sizeof( VkPhysicalDeviceShadingRateImageFeaturesNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceShadingRateImageFeaturesNV>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceShadingRateImageFeaturesNV>
+ struct StructExtends<RenderPassFragmentDensityMapCreateInfoEXT, RenderPassCreateInfo2>
{
- using Type = PhysicalDeviceShadingRateImageFeaturesNV;
- };
-
- struct PhysicalDeviceShadingRateImagePropertiesNV
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceShadingRateImagePropertiesNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceShadingRateImagePropertiesNV(VULKAN_HPP_NAMESPACE::Extent2D shadingRateTexelSize_ = {}, uint32_t shadingRatePaletteSize_ = {}, uint32_t shadingRateMaxCoarseSamples_ = {}) VULKAN_HPP_NOEXCEPT
- : shadingRateTexelSize( shadingRateTexelSize_ ), shadingRatePaletteSize( shadingRatePaletteSize_ ), shadingRateMaxCoarseSamples( shadingRateMaxCoarseSamples_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceShadingRateImagePropertiesNV( PhysicalDeviceShadingRateImagePropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceShadingRateImagePropertiesNV( VkPhysicalDeviceShadingRateImagePropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceShadingRateImagePropertiesNV & operator=( VkPhysicalDeviceShadingRateImagePropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceShadingRateImagePropertiesNV const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceShadingRateImagePropertiesNV & operator=( PhysicalDeviceShadingRateImagePropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceShadingRateImagePropertiesNV ) );
- return *this;
- }
-
-
- operator VkPhysicalDeviceShadingRateImagePropertiesNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceShadingRateImagePropertiesNV*>( this );
- }
-
- operator VkPhysicalDeviceShadingRateImagePropertiesNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceShadingRateImagePropertiesNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceShadingRateImagePropertiesNV const& ) const = default;
-#else
- bool operator==( PhysicalDeviceShadingRateImagePropertiesNV const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( shadingRateTexelSize == rhs.shadingRateTexelSize )
- && ( shadingRatePaletteSize == rhs.shadingRatePaletteSize )
- && ( shadingRateMaxCoarseSamples == rhs.shadingRateMaxCoarseSamples );
- }
-
- bool operator!=( PhysicalDeviceShadingRateImagePropertiesNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceShadingRateImagePropertiesNV;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Extent2D shadingRateTexelSize = {};
- uint32_t shadingRatePaletteSize = {};
- uint32_t shadingRateMaxCoarseSamples = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceShadingRateImagePropertiesNV ) == sizeof( VkPhysicalDeviceShadingRateImagePropertiesNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceShadingRateImagePropertiesNV>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceShadingRateImagePropertiesNV>
+ struct StructExtends<RenderPassInputAttachmentAspectCreateInfo, RenderPassCreateInfo>
{
- using Type = PhysicalDeviceShadingRateImagePropertiesNV;
- };
-
- struct PhysicalDeviceSubgroupProperties
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceSubgroupProperties;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceSubgroupProperties(uint32_t subgroupSize_ = {}, VULKAN_HPP_NAMESPACE::ShaderStageFlags supportedStages_ = {}, VULKAN_HPP_NAMESPACE::SubgroupFeatureFlags supportedOperations_ = {}, VULKAN_HPP_NAMESPACE::Bool32 quadOperationsInAllStages_ = {}) VULKAN_HPP_NOEXCEPT
- : subgroupSize( subgroupSize_ ), supportedStages( supportedStages_ ), supportedOperations( supportedOperations_ ), quadOperationsInAllStages( quadOperationsInAllStages_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceSubgroupProperties( PhysicalDeviceSubgroupProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceSubgroupProperties( VkPhysicalDeviceSubgroupProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceSubgroupProperties & operator=( VkPhysicalDeviceSubgroupProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceSubgroupProperties const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceSubgroupProperties & operator=( PhysicalDeviceSubgroupProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceSubgroupProperties ) );
- return *this;
- }
-
-
- operator VkPhysicalDeviceSubgroupProperties const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceSubgroupProperties*>( this );
- }
-
- operator VkPhysicalDeviceSubgroupProperties &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceSubgroupProperties*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceSubgroupProperties const& ) const = default;
-#else
- bool operator==( PhysicalDeviceSubgroupProperties const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( subgroupSize == rhs.subgroupSize )
- && ( supportedStages == rhs.supportedStages )
- && ( supportedOperations == rhs.supportedOperations )
- && ( quadOperationsInAllStages == rhs.quadOperationsInAllStages );
- }
-
- bool operator!=( PhysicalDeviceSubgroupProperties const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceSubgroupProperties;
- void* pNext = {};
- uint32_t subgroupSize = {};
- VULKAN_HPP_NAMESPACE::ShaderStageFlags supportedStages = {};
- VULKAN_HPP_NAMESPACE::SubgroupFeatureFlags supportedOperations = {};
- VULKAN_HPP_NAMESPACE::Bool32 quadOperationsInAllStages = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceSubgroupProperties ) == sizeof( VkPhysicalDeviceSubgroupProperties ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceSubgroupProperties>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceSubgroupProperties>
- {
- using Type = PhysicalDeviceSubgroupProperties;
- };
-
- struct PhysicalDeviceSubgroupSizeControlFeaturesEXT
+ struct StructExtends<RenderPassMultiviewCreateInfo, RenderPassCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceSubgroupSizeControlFeaturesEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceSubgroupSizeControlFeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 subgroupSizeControl_ = {}, VULKAN_HPP_NAMESPACE::Bool32 computeFullSubgroups_ = {}) VULKAN_HPP_NOEXCEPT
- : subgroupSizeControl( subgroupSizeControl_ ), computeFullSubgroups( computeFullSubgroups_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceSubgroupSizeControlFeaturesEXT( PhysicalDeviceSubgroupSizeControlFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceSubgroupSizeControlFeaturesEXT( VkPhysicalDeviceSubgroupSizeControlFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceSubgroupSizeControlFeaturesEXT & operator=( VkPhysicalDeviceSubgroupSizeControlFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceSubgroupSizeControlFeaturesEXT const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceSubgroupSizeControlFeaturesEXT & operator=( PhysicalDeviceSubgroupSizeControlFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceSubgroupSizeControlFeaturesEXT ) );
- return *this;
- }
-
- PhysicalDeviceSubgroupSizeControlFeaturesEXT & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceSubgroupSizeControlFeaturesEXT & setSubgroupSizeControl( VULKAN_HPP_NAMESPACE::Bool32 subgroupSizeControl_ ) VULKAN_HPP_NOEXCEPT
- {
- subgroupSizeControl = subgroupSizeControl_;
- return *this;
- }
-
- PhysicalDeviceSubgroupSizeControlFeaturesEXT & setComputeFullSubgroups( VULKAN_HPP_NAMESPACE::Bool32 computeFullSubgroups_ ) VULKAN_HPP_NOEXCEPT
- {
- computeFullSubgroups = computeFullSubgroups_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceSubgroupSizeControlFeaturesEXT const&() const VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<const VkPhysicalDeviceSubgroupSizeControlFeaturesEXT*>( this );
- }
-
- operator VkPhysicalDeviceSubgroupSizeControlFeaturesEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceSubgroupSizeControlFeaturesEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceSubgroupSizeControlFeaturesEXT const& ) const = default;
-#else
- bool operator==( PhysicalDeviceSubgroupSizeControlFeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( subgroupSizeControl == rhs.subgroupSizeControl )
- && ( computeFullSubgroups == rhs.computeFullSubgroups );
- }
-
- bool operator!=( PhysicalDeviceSubgroupSizeControlFeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceSubgroupSizeControlFeaturesEXT;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 subgroupSizeControl = {};
- VULKAN_HPP_NAMESPACE::Bool32 computeFullSubgroups = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceSubgroupSizeControlFeaturesEXT ) == sizeof( VkPhysicalDeviceSubgroupSizeControlFeaturesEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceSubgroupSizeControlFeaturesEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceSubgroupSizeControlFeaturesEXT>
- {
- using Type = PhysicalDeviceSubgroupSizeControlFeaturesEXT;
- };
-
- struct PhysicalDeviceSubgroupSizeControlPropertiesEXT
+ struct StructExtends<RenderPassSampleLocationsBeginInfoEXT, RenderPassBeginInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceSubgroupSizeControlPropertiesEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceSubgroupSizeControlPropertiesEXT(uint32_t minSubgroupSize_ = {}, uint32_t maxSubgroupSize_ = {}, uint32_t maxComputeWorkgroupSubgroups_ = {}, VULKAN_HPP_NAMESPACE::ShaderStageFlags requiredSubgroupSizeStages_ = {}) VULKAN_HPP_NOEXCEPT
- : minSubgroupSize( minSubgroupSize_ ), maxSubgroupSize( maxSubgroupSize_ ), maxComputeWorkgroupSubgroups( maxComputeWorkgroupSubgroups_ ), requiredSubgroupSizeStages( requiredSubgroupSizeStages_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceSubgroupSizeControlPropertiesEXT( PhysicalDeviceSubgroupSizeControlPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceSubgroupSizeControlPropertiesEXT( VkPhysicalDeviceSubgroupSizeControlPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceSubgroupSizeControlPropertiesEXT & operator=( VkPhysicalDeviceSubgroupSizeControlPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceSubgroupSizeControlPropertiesEXT const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceSubgroupSizeControlPropertiesEXT & operator=( PhysicalDeviceSubgroupSizeControlPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceSubgroupSizeControlPropertiesEXT ) );
- return *this;
- }
-
-
- operator VkPhysicalDeviceSubgroupSizeControlPropertiesEXT const&() const VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<const VkPhysicalDeviceSubgroupSizeControlPropertiesEXT*>( this );
- }
-
- operator VkPhysicalDeviceSubgroupSizeControlPropertiesEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceSubgroupSizeControlPropertiesEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceSubgroupSizeControlPropertiesEXT const& ) const = default;
-#else
- bool operator==( PhysicalDeviceSubgroupSizeControlPropertiesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( minSubgroupSize == rhs.minSubgroupSize )
- && ( maxSubgroupSize == rhs.maxSubgroupSize )
- && ( maxComputeWorkgroupSubgroups == rhs.maxComputeWorkgroupSubgroups )
- && ( requiredSubgroupSizeStages == rhs.requiredSubgroupSizeStages );
- }
-
- bool operator!=( PhysicalDeviceSubgroupSizeControlPropertiesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceSubgroupSizeControlPropertiesEXT;
- void* pNext = {};
- uint32_t minSubgroupSize = {};
- uint32_t maxSubgroupSize = {};
- uint32_t maxComputeWorkgroupSubgroups = {};
- VULKAN_HPP_NAMESPACE::ShaderStageFlags requiredSubgroupSizeStages = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceSubgroupSizeControlPropertiesEXT ) == sizeof( VkPhysicalDeviceSubgroupSizeControlPropertiesEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceSubgroupSizeControlPropertiesEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceSubgroupSizeControlPropertiesEXT>
+ struct StructExtends<RenderPassTransformBeginInfoQCOM, RenderPassBeginInfo>
{
- using Type = PhysicalDeviceSubgroupSizeControlPropertiesEXT;
- };
-
- struct PhysicalDeviceTexelBufferAlignmentFeaturesEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceTexelBufferAlignmentFeaturesEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceTexelBufferAlignmentFeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 texelBufferAlignment_ = {}) VULKAN_HPP_NOEXCEPT
- : texelBufferAlignment( texelBufferAlignment_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceTexelBufferAlignmentFeaturesEXT( PhysicalDeviceTexelBufferAlignmentFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceTexelBufferAlignmentFeaturesEXT( VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceTexelBufferAlignmentFeaturesEXT & operator=( VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceTexelBufferAlignmentFeaturesEXT const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceTexelBufferAlignmentFeaturesEXT & operator=( PhysicalDeviceTexelBufferAlignmentFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceTexelBufferAlignmentFeaturesEXT ) );
- return *this;
- }
-
- PhysicalDeviceTexelBufferAlignmentFeaturesEXT & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceTexelBufferAlignmentFeaturesEXT & setTexelBufferAlignment( VULKAN_HPP_NAMESPACE::Bool32 texelBufferAlignment_ ) VULKAN_HPP_NOEXCEPT
- {
- texelBufferAlignment = texelBufferAlignment_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT*>( this );
- }
-
- operator VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceTexelBufferAlignmentFeaturesEXT const& ) const = default;
-#else
- bool operator==( PhysicalDeviceTexelBufferAlignmentFeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( texelBufferAlignment == rhs.texelBufferAlignment );
- }
-
- bool operator!=( PhysicalDeviceTexelBufferAlignmentFeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceTexelBufferAlignmentFeaturesEXT;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 texelBufferAlignment = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceTexelBufferAlignmentFeaturesEXT ) == sizeof( VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceTexelBufferAlignmentFeaturesEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceTexelBufferAlignmentFeaturesEXT>
- {
- using Type = PhysicalDeviceTexelBufferAlignmentFeaturesEXT;
- };
-
- struct PhysicalDeviceTexelBufferAlignmentPropertiesEXT
+ struct StructExtends<SampleLocationsInfoEXT, ImageMemoryBarrier>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceTexelBufferAlignmentPropertiesEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceTexelBufferAlignmentPropertiesEXT(VULKAN_HPP_NAMESPACE::DeviceSize storageTexelBufferOffsetAlignmentBytes_ = {}, VULKAN_HPP_NAMESPACE::Bool32 storageTexelBufferOffsetSingleTexelAlignment_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize uniformTexelBufferOffsetAlignmentBytes_ = {}, VULKAN_HPP_NAMESPACE::Bool32 uniformTexelBufferOffsetSingleTexelAlignment_ = {}) VULKAN_HPP_NOEXCEPT
- : storageTexelBufferOffsetAlignmentBytes( storageTexelBufferOffsetAlignmentBytes_ ), storageTexelBufferOffsetSingleTexelAlignment( storageTexelBufferOffsetSingleTexelAlignment_ ), uniformTexelBufferOffsetAlignmentBytes( uniformTexelBufferOffsetAlignmentBytes_ ), uniformTexelBufferOffsetSingleTexelAlignment( uniformTexelBufferOffsetSingleTexelAlignment_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceTexelBufferAlignmentPropertiesEXT( PhysicalDeviceTexelBufferAlignmentPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceTexelBufferAlignmentPropertiesEXT( VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceTexelBufferAlignmentPropertiesEXT & operator=( VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceTexelBufferAlignmentPropertiesEXT const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceTexelBufferAlignmentPropertiesEXT & operator=( PhysicalDeviceTexelBufferAlignmentPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceTexelBufferAlignmentPropertiesEXT ) );
- return *this;
- }
-
-
- operator VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT*>( this );
- }
-
- operator VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceTexelBufferAlignmentPropertiesEXT const& ) const = default;
-#else
- bool operator==( PhysicalDeviceTexelBufferAlignmentPropertiesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( storageTexelBufferOffsetAlignmentBytes == rhs.storageTexelBufferOffsetAlignmentBytes )
- && ( storageTexelBufferOffsetSingleTexelAlignment == rhs.storageTexelBufferOffsetSingleTexelAlignment )
- && ( uniformTexelBufferOffsetAlignmentBytes == rhs.uniformTexelBufferOffsetAlignmentBytes )
- && ( uniformTexelBufferOffsetSingleTexelAlignment == rhs.uniformTexelBufferOffsetSingleTexelAlignment );
- }
-
- bool operator!=( PhysicalDeviceTexelBufferAlignmentPropertiesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceTexelBufferAlignmentPropertiesEXT;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::DeviceSize storageTexelBufferOffsetAlignmentBytes = {};
- VULKAN_HPP_NAMESPACE::Bool32 storageTexelBufferOffsetSingleTexelAlignment = {};
- VULKAN_HPP_NAMESPACE::DeviceSize uniformTexelBufferOffsetAlignmentBytes = {};
- VULKAN_HPP_NAMESPACE::Bool32 uniformTexelBufferOffsetSingleTexelAlignment = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceTexelBufferAlignmentPropertiesEXT ) == sizeof( VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceTexelBufferAlignmentPropertiesEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceTexelBufferAlignmentPropertiesEXT>
+ struct StructExtends<SampleLocationsInfoEXT, ImageMemoryBarrier2KHR>
{
- using Type = PhysicalDeviceTexelBufferAlignmentPropertiesEXT;
- };
-
- struct PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceTextureCompressionAstcHdrFeaturesEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 textureCompressionASTC_HDR_ = {}) VULKAN_HPP_NOEXCEPT
- : textureCompressionASTC_HDR( textureCompressionASTC_HDR_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT( PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT( VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT & operator=( VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT & operator=( PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT ) );
- return *this;
- }
-
- PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT & setTextureCompressionASTC_HDR( VULKAN_HPP_NAMESPACE::Bool32 textureCompressionASTC_HDR_ ) VULKAN_HPP_NOEXCEPT
- {
- textureCompressionASTC_HDR = textureCompressionASTC_HDR_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT*>( this );
- }
-
- operator VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT const& ) const = default;
-#else
- bool operator==( PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( textureCompressionASTC_HDR == rhs.textureCompressionASTC_HDR );
- }
-
- bool operator!=( PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceTextureCompressionAstcHdrFeaturesEXT;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 textureCompressionASTC_HDR = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT ) == sizeof( VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceTextureCompressionAstcHdrFeaturesEXT>
- {
- using Type = PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT;
- };
-
- struct PhysicalDeviceTimelineSemaphoreFeatures
+ struct StructExtends<SamplerCustomBorderColorCreateInfoEXT, SamplerCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceTimelineSemaphoreFeatures;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceTimelineSemaphoreFeatures(VULKAN_HPP_NAMESPACE::Bool32 timelineSemaphore_ = {}) VULKAN_HPP_NOEXCEPT
- : timelineSemaphore( timelineSemaphore_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceTimelineSemaphoreFeatures( PhysicalDeviceTimelineSemaphoreFeatures const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceTimelineSemaphoreFeatures( VkPhysicalDeviceTimelineSemaphoreFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceTimelineSemaphoreFeatures & operator=( VkPhysicalDeviceTimelineSemaphoreFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceTimelineSemaphoreFeatures const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceTimelineSemaphoreFeatures & operator=( PhysicalDeviceTimelineSemaphoreFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceTimelineSemaphoreFeatures ) );
- return *this;
- }
-
- PhysicalDeviceTimelineSemaphoreFeatures & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceTimelineSemaphoreFeatures & setTimelineSemaphore( VULKAN_HPP_NAMESPACE::Bool32 timelineSemaphore_ ) VULKAN_HPP_NOEXCEPT
- {
- timelineSemaphore = timelineSemaphore_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceTimelineSemaphoreFeatures const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceTimelineSemaphoreFeatures*>( this );
- }
-
- operator VkPhysicalDeviceTimelineSemaphoreFeatures &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceTimelineSemaphoreFeatures*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceTimelineSemaphoreFeatures const& ) const = default;
-#else
- bool operator==( PhysicalDeviceTimelineSemaphoreFeatures const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( timelineSemaphore == rhs.timelineSemaphore );
- }
-
- bool operator!=( PhysicalDeviceTimelineSemaphoreFeatures const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceTimelineSemaphoreFeatures;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 timelineSemaphore = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceTimelineSemaphoreFeatures ) == sizeof( VkPhysicalDeviceTimelineSemaphoreFeatures ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceTimelineSemaphoreFeatures>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceTimelineSemaphoreFeatures>
- {
- using Type = PhysicalDeviceTimelineSemaphoreFeatures;
- };
- using PhysicalDeviceTimelineSemaphoreFeaturesKHR = PhysicalDeviceTimelineSemaphoreFeatures;
-
- struct PhysicalDeviceTimelineSemaphoreProperties
+ struct StructExtends<SamplerReductionModeCreateInfo, SamplerCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceTimelineSemaphoreProperties;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceTimelineSemaphoreProperties(uint64_t maxTimelineSemaphoreValueDifference_ = {}) VULKAN_HPP_NOEXCEPT
- : maxTimelineSemaphoreValueDifference( maxTimelineSemaphoreValueDifference_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceTimelineSemaphoreProperties( PhysicalDeviceTimelineSemaphoreProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceTimelineSemaphoreProperties( VkPhysicalDeviceTimelineSemaphoreProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceTimelineSemaphoreProperties & operator=( VkPhysicalDeviceTimelineSemaphoreProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceTimelineSemaphoreProperties const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceTimelineSemaphoreProperties & operator=( PhysicalDeviceTimelineSemaphoreProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceTimelineSemaphoreProperties ) );
- return *this;
- }
-
-
- operator VkPhysicalDeviceTimelineSemaphoreProperties const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceTimelineSemaphoreProperties*>( this );
- }
-
- operator VkPhysicalDeviceTimelineSemaphoreProperties &() VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<VkPhysicalDeviceTimelineSemaphoreProperties*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceTimelineSemaphoreProperties const& ) const = default;
-#else
- bool operator==( PhysicalDeviceTimelineSemaphoreProperties const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( maxTimelineSemaphoreValueDifference == rhs.maxTimelineSemaphoreValueDifference );
- }
-
- bool operator!=( PhysicalDeviceTimelineSemaphoreProperties const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceTimelineSemaphoreProperties;
- void* pNext = {};
- uint64_t maxTimelineSemaphoreValueDifference = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceTimelineSemaphoreProperties ) == sizeof( VkPhysicalDeviceTimelineSemaphoreProperties ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceTimelineSemaphoreProperties>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceTimelineSemaphoreProperties>
- {
- using Type = PhysicalDeviceTimelineSemaphoreProperties;
- };
- using PhysicalDeviceTimelineSemaphorePropertiesKHR = PhysicalDeviceTimelineSemaphoreProperties;
-
- struct PhysicalDeviceTransformFeedbackFeaturesEXT
+ struct StructExtends<SamplerYcbcrConversionImageFormatProperties, ImageFormatProperties2>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceTransformFeedbackFeaturesEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceTransformFeedbackFeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 transformFeedback_ = {}, VULKAN_HPP_NAMESPACE::Bool32 geometryStreams_ = {}) VULKAN_HPP_NOEXCEPT
- : transformFeedback( transformFeedback_ ), geometryStreams( geometryStreams_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceTransformFeedbackFeaturesEXT( PhysicalDeviceTransformFeedbackFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceTransformFeedbackFeaturesEXT( VkPhysicalDeviceTransformFeedbackFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceTransformFeedbackFeaturesEXT & operator=( VkPhysicalDeviceTransformFeedbackFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceTransformFeedbackFeaturesEXT const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceTransformFeedbackFeaturesEXT & operator=( PhysicalDeviceTransformFeedbackFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceTransformFeedbackFeaturesEXT ) );
- return *this;
- }
-
- PhysicalDeviceTransformFeedbackFeaturesEXT & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceTransformFeedbackFeaturesEXT & setTransformFeedback( VULKAN_HPP_NAMESPACE::Bool32 transformFeedback_ ) VULKAN_HPP_NOEXCEPT
- {
- transformFeedback = transformFeedback_;
- return *this;
- }
-
- PhysicalDeviceTransformFeedbackFeaturesEXT & setGeometryStreams( VULKAN_HPP_NAMESPACE::Bool32 geometryStreams_ ) VULKAN_HPP_NOEXCEPT
- {
- geometryStreams = geometryStreams_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceTransformFeedbackFeaturesEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceTransformFeedbackFeaturesEXT*>( this );
- }
-
- operator VkPhysicalDeviceTransformFeedbackFeaturesEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceTransformFeedbackFeaturesEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceTransformFeedbackFeaturesEXT const& ) const = default;
-#else
- bool operator==( PhysicalDeviceTransformFeedbackFeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( transformFeedback == rhs.transformFeedback )
- && ( geometryStreams == rhs.geometryStreams );
- }
-
- bool operator!=( PhysicalDeviceTransformFeedbackFeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceTransformFeedbackFeaturesEXT;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 transformFeedback = {};
- VULKAN_HPP_NAMESPACE::Bool32 geometryStreams = {};
-
- };
- static_assert( sizeof( PhysicalDeviceTransformFeedbackFeaturesEXT ) == sizeof( VkPhysicalDeviceTransformFeedbackFeaturesEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceTransformFeedbackFeaturesEXT>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceTransformFeedbackFeaturesEXT>
- {
- using Type = PhysicalDeviceTransformFeedbackFeaturesEXT;
+ value = true
+ };
};
-
- struct PhysicalDeviceTransformFeedbackPropertiesEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceTransformFeedbackPropertiesEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceTransformFeedbackPropertiesEXT(uint32_t maxTransformFeedbackStreams_ = {}, uint32_t maxTransformFeedbackBuffers_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize maxTransformFeedbackBufferSize_ = {}, uint32_t maxTransformFeedbackStreamDataSize_ = {}, uint32_t maxTransformFeedbackBufferDataSize_ = {}, uint32_t maxTransformFeedbackBufferDataStride_ = {}, VULKAN_HPP_NAMESPACE::Bool32 transformFeedbackQueries_ = {}, VULKAN_HPP_NAMESPACE::Bool32 transformFeedbackStreamsLinesTriangles_ = {}, VULKAN_HPP_NAMESPACE::Bool32 transformFeedbackRasterizationStreamSelect_ = {}, VULKAN_HPP_NAMESPACE::Bool32 transformFeedbackDraw_ = {}) VULKAN_HPP_NOEXCEPT
- : maxTransformFeedbackStreams( maxTransformFeedbackStreams_ ), maxTransformFeedbackBuffers( maxTransformFeedbackBuffers_ ), maxTransformFeedbackBufferSize( maxTransformFeedbackBufferSize_ ), maxTransformFeedbackStreamDataSize( maxTransformFeedbackStreamDataSize_ ), maxTransformFeedbackBufferDataSize( maxTransformFeedbackBufferDataSize_ ), maxTransformFeedbackBufferDataStride( maxTransformFeedbackBufferDataStride_ ), transformFeedbackQueries( transformFeedbackQueries_ ), transformFeedbackStreamsLinesTriangles( transformFeedbackStreamsLinesTriangles_ ), transformFeedbackRasterizationStreamSelect( transformFeedbackRasterizationStreamSelect_ ), transformFeedbackDraw( transformFeedbackDraw_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceTransformFeedbackPropertiesEXT( PhysicalDeviceTransformFeedbackPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceTransformFeedbackPropertiesEXT( VkPhysicalDeviceTransformFeedbackPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceTransformFeedbackPropertiesEXT & operator=( VkPhysicalDeviceTransformFeedbackPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceTransformFeedbackPropertiesEXT const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceTransformFeedbackPropertiesEXT & operator=( PhysicalDeviceTransformFeedbackPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceTransformFeedbackPropertiesEXT ) );
- return *this;
- }
-
-
- operator VkPhysicalDeviceTransformFeedbackPropertiesEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceTransformFeedbackPropertiesEXT*>( this );
- }
-
- operator VkPhysicalDeviceTransformFeedbackPropertiesEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceTransformFeedbackPropertiesEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceTransformFeedbackPropertiesEXT const& ) const = default;
-#else
- bool operator==( PhysicalDeviceTransformFeedbackPropertiesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( maxTransformFeedbackStreams == rhs.maxTransformFeedbackStreams )
- && ( maxTransformFeedbackBuffers == rhs.maxTransformFeedbackBuffers )
- && ( maxTransformFeedbackBufferSize == rhs.maxTransformFeedbackBufferSize )
- && ( maxTransformFeedbackStreamDataSize == rhs.maxTransformFeedbackStreamDataSize )
- && ( maxTransformFeedbackBufferDataSize == rhs.maxTransformFeedbackBufferDataSize )
- && ( maxTransformFeedbackBufferDataStride == rhs.maxTransformFeedbackBufferDataStride )
- && ( transformFeedbackQueries == rhs.transformFeedbackQueries )
- && ( transformFeedbackStreamsLinesTriangles == rhs.transformFeedbackStreamsLinesTriangles )
- && ( transformFeedbackRasterizationStreamSelect == rhs.transformFeedbackRasterizationStreamSelect )
- && ( transformFeedbackDraw == rhs.transformFeedbackDraw );
- }
-
- bool operator!=( PhysicalDeviceTransformFeedbackPropertiesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceTransformFeedbackPropertiesEXT;
- void* pNext = {};
- uint32_t maxTransformFeedbackStreams = {};
- uint32_t maxTransformFeedbackBuffers = {};
- VULKAN_HPP_NAMESPACE::DeviceSize maxTransformFeedbackBufferSize = {};
- uint32_t maxTransformFeedbackStreamDataSize = {};
- uint32_t maxTransformFeedbackBufferDataSize = {};
- uint32_t maxTransformFeedbackBufferDataStride = {};
- VULKAN_HPP_NAMESPACE::Bool32 transformFeedbackQueries = {};
- VULKAN_HPP_NAMESPACE::Bool32 transformFeedbackStreamsLinesTriangles = {};
- VULKAN_HPP_NAMESPACE::Bool32 transformFeedbackRasterizationStreamSelect = {};
- VULKAN_HPP_NAMESPACE::Bool32 transformFeedbackDraw = {};
-
- };
- static_assert( sizeof( PhysicalDeviceTransformFeedbackPropertiesEXT ) == sizeof( VkPhysicalDeviceTransformFeedbackPropertiesEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceTransformFeedbackPropertiesEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceTransformFeedbackPropertiesEXT>
- {
- using Type = PhysicalDeviceTransformFeedbackPropertiesEXT;
- };
-
- struct PhysicalDeviceUniformBufferStandardLayoutFeatures
+ struct StructExtends<SamplerYcbcrConversionInfo, SamplerCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceUniformBufferStandardLayoutFeatures;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceUniformBufferStandardLayoutFeatures(VULKAN_HPP_NAMESPACE::Bool32 uniformBufferStandardLayout_ = {}) VULKAN_HPP_NOEXCEPT
- : uniformBufferStandardLayout( uniformBufferStandardLayout_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceUniformBufferStandardLayoutFeatures( PhysicalDeviceUniformBufferStandardLayoutFeatures const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceUniformBufferStandardLayoutFeatures( VkPhysicalDeviceUniformBufferStandardLayoutFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceUniformBufferStandardLayoutFeatures & operator=( VkPhysicalDeviceUniformBufferStandardLayoutFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceUniformBufferStandardLayoutFeatures const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceUniformBufferStandardLayoutFeatures & operator=( PhysicalDeviceUniformBufferStandardLayoutFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceUniformBufferStandardLayoutFeatures ) );
- return *this;
- }
-
- PhysicalDeviceUniformBufferStandardLayoutFeatures & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceUniformBufferStandardLayoutFeatures & setUniformBufferStandardLayout( VULKAN_HPP_NAMESPACE::Bool32 uniformBufferStandardLayout_ ) VULKAN_HPP_NOEXCEPT
- {
- uniformBufferStandardLayout = uniformBufferStandardLayout_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceUniformBufferStandardLayoutFeatures const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceUniformBufferStandardLayoutFeatures*>( this );
- }
-
- operator VkPhysicalDeviceUniformBufferStandardLayoutFeatures &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceUniformBufferStandardLayoutFeatures*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceUniformBufferStandardLayoutFeatures const& ) const = default;
-#else
- bool operator==( PhysicalDeviceUniformBufferStandardLayoutFeatures const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( uniformBufferStandardLayout == rhs.uniformBufferStandardLayout );
- }
-
- bool operator!=( PhysicalDeviceUniformBufferStandardLayoutFeatures const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceUniformBufferStandardLayoutFeatures;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 uniformBufferStandardLayout = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceUniformBufferStandardLayoutFeatures ) == sizeof( VkPhysicalDeviceUniformBufferStandardLayoutFeatures ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceUniformBufferStandardLayoutFeatures>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceUniformBufferStandardLayoutFeatures>
+ struct StructExtends<SamplerYcbcrConversionInfo, ImageViewCreateInfo>
{
- using Type = PhysicalDeviceUniformBufferStandardLayoutFeatures;
- };
- using PhysicalDeviceUniformBufferStandardLayoutFeaturesKHR = PhysicalDeviceUniformBufferStandardLayoutFeatures;
-
- struct PhysicalDeviceVariablePointersFeatures
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceVariablePointersFeatures;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceVariablePointersFeatures(VULKAN_HPP_NAMESPACE::Bool32 variablePointersStorageBuffer_ = {}, VULKAN_HPP_NAMESPACE::Bool32 variablePointers_ = {}) VULKAN_HPP_NOEXCEPT
- : variablePointersStorageBuffer( variablePointersStorageBuffer_ ), variablePointers( variablePointers_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceVariablePointersFeatures( PhysicalDeviceVariablePointersFeatures const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceVariablePointersFeatures( VkPhysicalDeviceVariablePointersFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceVariablePointersFeatures & operator=( VkPhysicalDeviceVariablePointersFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceVariablePointersFeatures const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceVariablePointersFeatures & operator=( PhysicalDeviceVariablePointersFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceVariablePointersFeatures ) );
- return *this;
- }
-
- PhysicalDeviceVariablePointersFeatures & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceVariablePointersFeatures & setVariablePointersStorageBuffer( VULKAN_HPP_NAMESPACE::Bool32 variablePointersStorageBuffer_ ) VULKAN_HPP_NOEXCEPT
- {
- variablePointersStorageBuffer = variablePointersStorageBuffer_;
- return *this;
- }
-
- PhysicalDeviceVariablePointersFeatures & setVariablePointers( VULKAN_HPP_NAMESPACE::Bool32 variablePointers_ ) VULKAN_HPP_NOEXCEPT
- {
- variablePointers = variablePointers_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceVariablePointersFeatures const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceVariablePointersFeatures*>( this );
- }
-
- operator VkPhysicalDeviceVariablePointersFeatures &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceVariablePointersFeatures*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceVariablePointersFeatures const& ) const = default;
-#else
- bool operator==( PhysicalDeviceVariablePointersFeatures const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( variablePointersStorageBuffer == rhs.variablePointersStorageBuffer )
- && ( variablePointers == rhs.variablePointers );
- }
-
- bool operator!=( PhysicalDeviceVariablePointersFeatures const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceVariablePointersFeatures;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 variablePointersStorageBuffer = {};
- VULKAN_HPP_NAMESPACE::Bool32 variablePointers = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceVariablePointersFeatures ) == sizeof( VkPhysicalDeviceVariablePointersFeatures ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceVariablePointersFeatures>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceVariablePointersFeatures>
- {
- using Type = PhysicalDeviceVariablePointersFeatures;
- };
- using PhysicalDeviceVariablePointerFeatures = PhysicalDeviceVariablePointersFeatures;
- using PhysicalDeviceVariablePointerFeaturesKHR = PhysicalDeviceVariablePointersFeatures;
- using PhysicalDeviceVariablePointersFeaturesKHR = PhysicalDeviceVariablePointersFeatures;
-
- struct PhysicalDeviceVertexAttributeDivisorFeaturesEXT
+ struct StructExtends<SemaphoreTypeCreateInfo, SemaphoreCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceVertexAttributeDivisorFeaturesEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceVertexAttributeDivisorFeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 vertexAttributeInstanceRateDivisor_ = {}, VULKAN_HPP_NAMESPACE::Bool32 vertexAttributeInstanceRateZeroDivisor_ = {}) VULKAN_HPP_NOEXCEPT
- : vertexAttributeInstanceRateDivisor( vertexAttributeInstanceRateDivisor_ ), vertexAttributeInstanceRateZeroDivisor( vertexAttributeInstanceRateZeroDivisor_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceVertexAttributeDivisorFeaturesEXT( PhysicalDeviceVertexAttributeDivisorFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceVertexAttributeDivisorFeaturesEXT( VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceVertexAttributeDivisorFeaturesEXT & operator=( VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceVertexAttributeDivisorFeaturesEXT const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceVertexAttributeDivisorFeaturesEXT & operator=( PhysicalDeviceVertexAttributeDivisorFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceVertexAttributeDivisorFeaturesEXT ) );
- return *this;
- }
-
- PhysicalDeviceVertexAttributeDivisorFeaturesEXT & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceVertexAttributeDivisorFeaturesEXT & setVertexAttributeInstanceRateDivisor( VULKAN_HPP_NAMESPACE::Bool32 vertexAttributeInstanceRateDivisor_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- vertexAttributeInstanceRateDivisor = vertexAttributeInstanceRateDivisor_;
- return *this;
- }
-
- PhysicalDeviceVertexAttributeDivisorFeaturesEXT & setVertexAttributeInstanceRateZeroDivisor( VULKAN_HPP_NAMESPACE::Bool32 vertexAttributeInstanceRateZeroDivisor_ ) VULKAN_HPP_NOEXCEPT
- {
- vertexAttributeInstanceRateZeroDivisor = vertexAttributeInstanceRateZeroDivisor_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT*>( this );
- }
-
- operator VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceVertexAttributeDivisorFeaturesEXT const& ) const = default;
-#else
- bool operator==( PhysicalDeviceVertexAttributeDivisorFeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( vertexAttributeInstanceRateDivisor == rhs.vertexAttributeInstanceRateDivisor )
- && ( vertexAttributeInstanceRateZeroDivisor == rhs.vertexAttributeInstanceRateZeroDivisor );
- }
-
- bool operator!=( PhysicalDeviceVertexAttributeDivisorFeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceVertexAttributeDivisorFeaturesEXT;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 vertexAttributeInstanceRateDivisor = {};
- VULKAN_HPP_NAMESPACE::Bool32 vertexAttributeInstanceRateZeroDivisor = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceVertexAttributeDivisorFeaturesEXT ) == sizeof( VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceVertexAttributeDivisorFeaturesEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceVertexAttributeDivisorFeaturesEXT>
+ struct StructExtends<SemaphoreTypeCreateInfo, PhysicalDeviceExternalSemaphoreInfo>
{
- using Type = PhysicalDeviceVertexAttributeDivisorFeaturesEXT;
- };
-
- struct PhysicalDeviceVertexAttributeDivisorPropertiesEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceVertexAttributeDivisorPropertiesEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceVertexAttributeDivisorPropertiesEXT(uint32_t maxVertexAttribDivisor_ = {}) VULKAN_HPP_NOEXCEPT
- : maxVertexAttribDivisor( maxVertexAttribDivisor_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceVertexAttributeDivisorPropertiesEXT( PhysicalDeviceVertexAttributeDivisorPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceVertexAttributeDivisorPropertiesEXT( VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceVertexAttributeDivisorPropertiesEXT & operator=( VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceVertexAttributeDivisorPropertiesEXT const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceVertexAttributeDivisorPropertiesEXT & operator=( PhysicalDeviceVertexAttributeDivisorPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceVertexAttributeDivisorPropertiesEXT ) );
- return *this;
- }
-
-
- operator VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT*>( this );
- }
-
- operator VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT &() VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceVertexAttributeDivisorPropertiesEXT const& ) const = default;
-#else
- bool operator==( PhysicalDeviceVertexAttributeDivisorPropertiesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( maxVertexAttribDivisor == rhs.maxVertexAttribDivisor );
- }
-
- bool operator!=( PhysicalDeviceVertexAttributeDivisorPropertiesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceVertexAttributeDivisorPropertiesEXT;
- void* pNext = {};
- uint32_t maxVertexAttribDivisor = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceVertexAttributeDivisorPropertiesEXT ) == sizeof( VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceVertexAttributeDivisorPropertiesEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceVertexAttributeDivisorPropertiesEXT>
+ struct StructExtends<ShaderModuleValidationCacheCreateInfoEXT, ShaderModuleCreateInfo>
{
- using Type = PhysicalDeviceVertexAttributeDivisorPropertiesEXT;
- };
-
- struct PhysicalDeviceVulkan11Features
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceVulkan11Features;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceVulkan11Features(VULKAN_HPP_NAMESPACE::Bool32 storageBuffer16BitAccess_ = {}, VULKAN_HPP_NAMESPACE::Bool32 uniformAndStorageBuffer16BitAccess_ = {}, VULKAN_HPP_NAMESPACE::Bool32 storagePushConstant16_ = {}, VULKAN_HPP_NAMESPACE::Bool32 storageInputOutput16_ = {}, VULKAN_HPP_NAMESPACE::Bool32 multiview_ = {}, VULKAN_HPP_NAMESPACE::Bool32 multiviewGeometryShader_ = {}, VULKAN_HPP_NAMESPACE::Bool32 multiviewTessellationShader_ = {}, VULKAN_HPP_NAMESPACE::Bool32 variablePointersStorageBuffer_ = {}, VULKAN_HPP_NAMESPACE::Bool32 variablePointers_ = {}, VULKAN_HPP_NAMESPACE::Bool32 protectedMemory_ = {}, VULKAN_HPP_NAMESPACE::Bool32 samplerYcbcrConversion_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderDrawParameters_ = {}) VULKAN_HPP_NOEXCEPT
- : storageBuffer16BitAccess( storageBuffer16BitAccess_ ), uniformAndStorageBuffer16BitAccess( uniformAndStorageBuffer16BitAccess_ ), storagePushConstant16( storagePushConstant16_ ), storageInputOutput16( storageInputOutput16_ ), multiview( multiview_ ), multiviewGeometryShader( multiviewGeometryShader_ ), multiviewTessellationShader( multiviewTessellationShader_ ), variablePointersStorageBuffer( variablePointersStorageBuffer_ ), variablePointers( variablePointers_ ), protectedMemory( protectedMemory_ ), samplerYcbcrConversion( samplerYcbcrConversion_ ), shaderDrawParameters( shaderDrawParameters_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceVulkan11Features( PhysicalDeviceVulkan11Features const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceVulkan11Features( VkPhysicalDeviceVulkan11Features const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceVulkan11Features & operator=( VkPhysicalDeviceVulkan11Features const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceVulkan11Features const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceVulkan11Features & operator=( PhysicalDeviceVulkan11Features const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceVulkan11Features ) );
- return *this;
- }
-
- PhysicalDeviceVulkan11Features & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceVulkan11Features & setStorageBuffer16BitAccess( VULKAN_HPP_NAMESPACE::Bool32 storageBuffer16BitAccess_ ) VULKAN_HPP_NOEXCEPT
- {
- storageBuffer16BitAccess = storageBuffer16BitAccess_;
- return *this;
- }
-
- PhysicalDeviceVulkan11Features & setUniformAndStorageBuffer16BitAccess( VULKAN_HPP_NAMESPACE::Bool32 uniformAndStorageBuffer16BitAccess_ ) VULKAN_HPP_NOEXCEPT
- {
- uniformAndStorageBuffer16BitAccess = uniformAndStorageBuffer16BitAccess_;
- return *this;
- }
-
- PhysicalDeviceVulkan11Features & setStoragePushConstant16( VULKAN_HPP_NAMESPACE::Bool32 storagePushConstant16_ ) VULKAN_HPP_NOEXCEPT
- {
- storagePushConstant16 = storagePushConstant16_;
- return *this;
- }
-
- PhysicalDeviceVulkan11Features & setStorageInputOutput16( VULKAN_HPP_NAMESPACE::Bool32 storageInputOutput16_ ) VULKAN_HPP_NOEXCEPT
- {
- storageInputOutput16 = storageInputOutput16_;
- return *this;
- }
-
- PhysicalDeviceVulkan11Features & setMultiview( VULKAN_HPP_NAMESPACE::Bool32 multiview_ ) VULKAN_HPP_NOEXCEPT
- {
- multiview = multiview_;
- return *this;
- }
-
- PhysicalDeviceVulkan11Features & setMultiviewGeometryShader( VULKAN_HPP_NAMESPACE::Bool32 multiviewGeometryShader_ ) VULKAN_HPP_NOEXCEPT
- {
- multiviewGeometryShader = multiviewGeometryShader_;
- return *this;
- }
-
- PhysicalDeviceVulkan11Features & setMultiviewTessellationShader( VULKAN_HPP_NAMESPACE::Bool32 multiviewTessellationShader_ ) VULKAN_HPP_NOEXCEPT
- {
- multiviewTessellationShader = multiviewTessellationShader_;
- return *this;
- }
-
- PhysicalDeviceVulkan11Features & setVariablePointersStorageBuffer( VULKAN_HPP_NAMESPACE::Bool32 variablePointersStorageBuffer_ ) VULKAN_HPP_NOEXCEPT
- {
- variablePointersStorageBuffer = variablePointersStorageBuffer_;
- return *this;
- }
-
- PhysicalDeviceVulkan11Features & setVariablePointers( VULKAN_HPP_NAMESPACE::Bool32 variablePointers_ ) VULKAN_HPP_NOEXCEPT
- {
- variablePointers = variablePointers_;
- return *this;
- }
-
- PhysicalDeviceVulkan11Features & setProtectedMemory( VULKAN_HPP_NAMESPACE::Bool32 protectedMemory_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- protectedMemory = protectedMemory_;
- return *this;
- }
-
- PhysicalDeviceVulkan11Features & setSamplerYcbcrConversion( VULKAN_HPP_NAMESPACE::Bool32 samplerYcbcrConversion_ ) VULKAN_HPP_NOEXCEPT
- {
- samplerYcbcrConversion = samplerYcbcrConversion_;
- return *this;
- }
-
- PhysicalDeviceVulkan11Features & setShaderDrawParameters( VULKAN_HPP_NAMESPACE::Bool32 shaderDrawParameters_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderDrawParameters = shaderDrawParameters_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceVulkan11Features const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceVulkan11Features*>( this );
- }
-
- operator VkPhysicalDeviceVulkan11Features &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceVulkan11Features*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceVulkan11Features const& ) const = default;
-#else
- bool operator==( PhysicalDeviceVulkan11Features const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( storageBuffer16BitAccess == rhs.storageBuffer16BitAccess )
- && ( uniformAndStorageBuffer16BitAccess == rhs.uniformAndStorageBuffer16BitAccess )
- && ( storagePushConstant16 == rhs.storagePushConstant16 )
- && ( storageInputOutput16 == rhs.storageInputOutput16 )
- && ( multiview == rhs.multiview )
- && ( multiviewGeometryShader == rhs.multiviewGeometryShader )
- && ( multiviewTessellationShader == rhs.multiviewTessellationShader )
- && ( variablePointersStorageBuffer == rhs.variablePointersStorageBuffer )
- && ( variablePointers == rhs.variablePointers )
- && ( protectedMemory == rhs.protectedMemory )
- && ( samplerYcbcrConversion == rhs.samplerYcbcrConversion )
- && ( shaderDrawParameters == rhs.shaderDrawParameters );
- }
-
- bool operator!=( PhysicalDeviceVulkan11Features const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceVulkan11Features;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 storageBuffer16BitAccess = {};
- VULKAN_HPP_NAMESPACE::Bool32 uniformAndStorageBuffer16BitAccess = {};
- VULKAN_HPP_NAMESPACE::Bool32 storagePushConstant16 = {};
- VULKAN_HPP_NAMESPACE::Bool32 storageInputOutput16 = {};
- VULKAN_HPP_NAMESPACE::Bool32 multiview = {};
- VULKAN_HPP_NAMESPACE::Bool32 multiviewGeometryShader = {};
- VULKAN_HPP_NAMESPACE::Bool32 multiviewTessellationShader = {};
- VULKAN_HPP_NAMESPACE::Bool32 variablePointersStorageBuffer = {};
- VULKAN_HPP_NAMESPACE::Bool32 variablePointers = {};
- VULKAN_HPP_NAMESPACE::Bool32 protectedMemory = {};
- VULKAN_HPP_NAMESPACE::Bool32 samplerYcbcrConversion = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderDrawParameters = {};
-
- };
- static_assert( sizeof( PhysicalDeviceVulkan11Features ) == sizeof( VkPhysicalDeviceVulkan11Features ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceVulkan11Features>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceVulkan11Features>
- {
- using Type = PhysicalDeviceVulkan11Features;
+ value = true
+ };
};
-
- struct PhysicalDeviceVulkan11Properties
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceVulkan11Properties;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan11Properties(std::array<uint8_t,VK_UUID_SIZE> const& deviceUUID_ = {}, std::array<uint8_t,VK_UUID_SIZE> const& driverUUID_ = {}, std::array<uint8_t,VK_LUID_SIZE> const& deviceLUID_ = {}, uint32_t deviceNodeMask_ = {}, VULKAN_HPP_NAMESPACE::Bool32 deviceLUIDValid_ = {}, uint32_t subgroupSize_ = {}, VULKAN_HPP_NAMESPACE::ShaderStageFlags subgroupSupportedStages_ = {}, VULKAN_HPP_NAMESPACE::SubgroupFeatureFlags subgroupSupportedOperations_ = {}, VULKAN_HPP_NAMESPACE::Bool32 subgroupQuadOperationsInAllStages_ = {}, VULKAN_HPP_NAMESPACE::PointClippingBehavior pointClippingBehavior_ = VULKAN_HPP_NAMESPACE::PointClippingBehavior::eAllClipPlanes, uint32_t maxMultiviewViewCount_ = {}, uint32_t maxMultiviewInstanceIndex_ = {}, VULKAN_HPP_NAMESPACE::Bool32 protectedNoFault_ = {}, uint32_t maxPerSetDescriptors_ = {}, VULKAN_HPP_NAMESPACE::DeviceSize maxMemoryAllocationSize_ = {}) VULKAN_HPP_NOEXCEPT
- : deviceUUID( deviceUUID_ ), driverUUID( driverUUID_ ), deviceLUID( deviceLUID_ ), deviceNodeMask( deviceNodeMask_ ), deviceLUIDValid( deviceLUIDValid_ ), subgroupSize( subgroupSize_ ), subgroupSupportedStages( subgroupSupportedStages_ ), subgroupSupportedOperations( subgroupSupportedOperations_ ), subgroupQuadOperationsInAllStages( subgroupQuadOperationsInAllStages_ ), pointClippingBehavior( pointClippingBehavior_ ), maxMultiviewViewCount( maxMultiviewViewCount_ ), maxMultiviewInstanceIndex( maxMultiviewInstanceIndex_ ), protectedNoFault( protectedNoFault_ ), maxPerSetDescriptors( maxPerSetDescriptors_ ), maxMemoryAllocationSize( maxMemoryAllocationSize_ )
- {}
-
- VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan11Properties( PhysicalDeviceVulkan11Properties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceVulkan11Properties( VkPhysicalDeviceVulkan11Properties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceVulkan11Properties & operator=( VkPhysicalDeviceVulkan11Properties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceVulkan11Properties const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceVulkan11Properties & operator=( PhysicalDeviceVulkan11Properties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceVulkan11Properties ) );
- return *this;
- }
-
-
- operator VkPhysicalDeviceVulkan11Properties const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceVulkan11Properties*>( this );
- }
-
- operator VkPhysicalDeviceVulkan11Properties &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceVulkan11Properties*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceVulkan11Properties const& ) const = default;
-#else
- bool operator==( PhysicalDeviceVulkan11Properties const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( deviceUUID == rhs.deviceUUID )
- && ( driverUUID == rhs.driverUUID )
- && ( deviceLUID == rhs.deviceLUID )
- && ( deviceNodeMask == rhs.deviceNodeMask )
- && ( deviceLUIDValid == rhs.deviceLUIDValid )
- && ( subgroupSize == rhs.subgroupSize )
- && ( subgroupSupportedStages == rhs.subgroupSupportedStages )
- && ( subgroupSupportedOperations == rhs.subgroupSupportedOperations )
- && ( subgroupQuadOperationsInAllStages == rhs.subgroupQuadOperationsInAllStages )
- && ( pointClippingBehavior == rhs.pointClippingBehavior )
- && ( maxMultiviewViewCount == rhs.maxMultiviewViewCount )
- && ( maxMultiviewInstanceIndex == rhs.maxMultiviewInstanceIndex )
- && ( protectedNoFault == rhs.protectedNoFault )
- && ( maxPerSetDescriptors == rhs.maxPerSetDescriptors )
- && ( maxMemoryAllocationSize == rhs.maxMemoryAllocationSize );
- }
-
- bool operator!=( PhysicalDeviceVulkan11Properties const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceVulkan11Properties;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, VK_UUID_SIZE> deviceUUID = {};
- VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, VK_UUID_SIZE> driverUUID = {};
- VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, VK_LUID_SIZE> deviceLUID = {};
- uint32_t deviceNodeMask = {};
- VULKAN_HPP_NAMESPACE::Bool32 deviceLUIDValid = {};
- uint32_t subgroupSize = {};
- VULKAN_HPP_NAMESPACE::ShaderStageFlags subgroupSupportedStages = {};
- VULKAN_HPP_NAMESPACE::SubgroupFeatureFlags subgroupSupportedOperations = {};
- VULKAN_HPP_NAMESPACE::Bool32 subgroupQuadOperationsInAllStages = {};
- VULKAN_HPP_NAMESPACE::PointClippingBehavior pointClippingBehavior = VULKAN_HPP_NAMESPACE::PointClippingBehavior::eAllClipPlanes;
- uint32_t maxMultiviewViewCount = {};
- uint32_t maxMultiviewInstanceIndex = {};
- VULKAN_HPP_NAMESPACE::Bool32 protectedNoFault = {};
- uint32_t maxPerSetDescriptors = {};
- VULKAN_HPP_NAMESPACE::DeviceSize maxMemoryAllocationSize = {};
-
- };
- static_assert( sizeof( PhysicalDeviceVulkan11Properties ) == sizeof( VkPhysicalDeviceVulkan11Properties ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceVulkan11Properties>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceVulkan11Properties>
- {
- using Type = PhysicalDeviceVulkan11Properties;
- };
-
- struct PhysicalDeviceVulkan12Features
+ struct StructExtends<SharedPresentSurfaceCapabilitiesKHR, SurfaceCapabilities2KHR>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceVulkan12Features;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceVulkan12Features(VULKAN_HPP_NAMESPACE::Bool32 samplerMirrorClampToEdge_ = {}, VULKAN_HPP_NAMESPACE::Bool32 drawIndirectCount_ = {}, VULKAN_HPP_NAMESPACE::Bool32 storageBuffer8BitAccess_ = {}, VULKAN_HPP_NAMESPACE::Bool32 uniformAndStorageBuffer8BitAccess_ = {}, VULKAN_HPP_NAMESPACE::Bool32 storagePushConstant8_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderBufferInt64Atomics_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderSharedInt64Atomics_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderFloat16_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderInt8_ = {}, VULKAN_HPP_NAMESPACE::Bool32 descriptorIndexing_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderInputAttachmentArrayDynamicIndexing_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderUniformTexelBufferArrayDynamicIndexing_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderStorageTexelBufferArrayDynamicIndexing_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderUniformBufferArrayNonUniformIndexing_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderSampledImageArrayNonUniformIndexing_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderStorageBufferArrayNonUniformIndexing_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageArrayNonUniformIndexing_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderInputAttachmentArrayNonUniformIndexing_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderUniformTexelBufferArrayNonUniformIndexing_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderStorageTexelBufferArrayNonUniformIndexing_ = {}, VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingUniformBufferUpdateAfterBind_ = {}, VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingSampledImageUpdateAfterBind_ = {}, VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingStorageImageUpdateAfterBind_ = {}, VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingStorageBufferUpdateAfterBind_ = {}, VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingUniformTexelBufferUpdateAfterBind_ = {}, VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingStorageTexelBufferUpdateAfterBind_ = {}, VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingUpdateUnusedWhilePending_ = {}, VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingPartiallyBound_ = {}, VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingVariableDescriptorCount_ = {}, VULKAN_HPP_NAMESPACE::Bool32 runtimeDescriptorArray_ = {}, VULKAN_HPP_NAMESPACE::Bool32 samplerFilterMinmax_ = {}, VULKAN_HPP_NAMESPACE::Bool32 scalarBlockLayout_ = {}, VULKAN_HPP_NAMESPACE::Bool32 imagelessFramebuffer_ = {}, VULKAN_HPP_NAMESPACE::Bool32 uniformBufferStandardLayout_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderSubgroupExtendedTypes_ = {}, VULKAN_HPP_NAMESPACE::Bool32 separateDepthStencilLayouts_ = {}, VULKAN_HPP_NAMESPACE::Bool32 hostQueryReset_ = {}, VULKAN_HPP_NAMESPACE::Bool32 timelineSemaphore_ = {}, VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddress_ = {}, VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddressCaptureReplay_ = {}, VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddressMultiDevice_ = {}, VULKAN_HPP_NAMESPACE::Bool32 vulkanMemoryModel_ = {}, VULKAN_HPP_NAMESPACE::Bool32 vulkanMemoryModelDeviceScope_ = {}, VULKAN_HPP_NAMESPACE::Bool32 vulkanMemoryModelAvailabilityVisibilityChains_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderOutputViewportIndex_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderOutputLayer_ = {}, VULKAN_HPP_NAMESPACE::Bool32 subgroupBroadcastDynamicId_ = {}) VULKAN_HPP_NOEXCEPT
- : samplerMirrorClampToEdge( samplerMirrorClampToEdge_ ), drawIndirectCount( drawIndirectCount_ ), storageBuffer8BitAccess( storageBuffer8BitAccess_ ), uniformAndStorageBuffer8BitAccess( uniformAndStorageBuffer8BitAccess_ ), storagePushConstant8( storagePushConstant8_ ), shaderBufferInt64Atomics( shaderBufferInt64Atomics_ ), shaderSharedInt64Atomics( shaderSharedInt64Atomics_ ), shaderFloat16( shaderFloat16_ ), shaderInt8( shaderInt8_ ), descriptorIndexing( descriptorIndexing_ ), shaderInputAttachmentArrayDynamicIndexing( shaderInputAttachmentArrayDynamicIndexing_ ), shaderUniformTexelBufferArrayDynamicIndexing( shaderUniformTexelBufferArrayDynamicIndexing_ ), shaderStorageTexelBufferArrayDynamicIndexing( shaderStorageTexelBufferArrayDynamicIndexing_ ), shaderUniformBufferArrayNonUniformIndexing( shaderUniformBufferArrayNonUniformIndexing_ ), shaderSampledImageArrayNonUniformIndexing( shaderSampledImageArrayNonUniformIndexing_ ), shaderStorageBufferArrayNonUniformIndexing( shaderStorageBufferArrayNonUniformIndexing_ ), shaderStorageImageArrayNonUniformIndexing( shaderStorageImageArrayNonUniformIndexing_ ), shaderInputAttachmentArrayNonUniformIndexing( shaderInputAttachmentArrayNonUniformIndexing_ ), shaderUniformTexelBufferArrayNonUniformIndexing( shaderUniformTexelBufferArrayNonUniformIndexing_ ), shaderStorageTexelBufferArrayNonUniformIndexing( shaderStorageTexelBufferArrayNonUniformIndexing_ ), descriptorBindingUniformBufferUpdateAfterBind( descriptorBindingUniformBufferUpdateAfterBind_ ), descriptorBindingSampledImageUpdateAfterBind( descriptorBindingSampledImageUpdateAfterBind_ ), descriptorBindingStorageImageUpdateAfterBind( descriptorBindingStorageImageUpdateAfterBind_ ), descriptorBindingStorageBufferUpdateAfterBind( descriptorBindingStorageBufferUpdateAfterBind_ ), descriptorBindingUniformTexelBufferUpdateAfterBind( descriptorBindingUniformTexelBufferUpdateAfterBind_ ), descriptorBindingStorageTexelBufferUpdateAfterBind( descriptorBindingStorageTexelBufferUpdateAfterBind_ ), descriptorBindingUpdateUnusedWhilePending( descriptorBindingUpdateUnusedWhilePending_ ), descriptorBindingPartiallyBound( descriptorBindingPartiallyBound_ ), descriptorBindingVariableDescriptorCount( descriptorBindingVariableDescriptorCount_ ), runtimeDescriptorArray( runtimeDescriptorArray_ ), samplerFilterMinmax( samplerFilterMinmax_ ), scalarBlockLayout( scalarBlockLayout_ ), imagelessFramebuffer( imagelessFramebuffer_ ), uniformBufferStandardLayout( uniformBufferStandardLayout_ ), shaderSubgroupExtendedTypes( shaderSubgroupExtendedTypes_ ), separateDepthStencilLayouts( separateDepthStencilLayouts_ ), hostQueryReset( hostQueryReset_ ), timelineSemaphore( timelineSemaphore_ ), bufferDeviceAddress( bufferDeviceAddress_ ), bufferDeviceAddressCaptureReplay( bufferDeviceAddressCaptureReplay_ ), bufferDeviceAddressMultiDevice( bufferDeviceAddressMultiDevice_ ), vulkanMemoryModel( vulkanMemoryModel_ ), vulkanMemoryModelDeviceScope( vulkanMemoryModelDeviceScope_ ), vulkanMemoryModelAvailabilityVisibilityChains( vulkanMemoryModelAvailabilityVisibilityChains_ ), shaderOutputViewportIndex( shaderOutputViewportIndex_ ), shaderOutputLayer( shaderOutputLayer_ ), subgroupBroadcastDynamicId( subgroupBroadcastDynamicId_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceVulkan12Features( PhysicalDeviceVulkan12Features const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceVulkan12Features( VkPhysicalDeviceVulkan12Features const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceVulkan12Features & operator=( VkPhysicalDeviceVulkan12Features const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceVulkan12Features const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceVulkan12Features & operator=( PhysicalDeviceVulkan12Features const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceVulkan12Features ) );
- return *this;
- }
-
- PhysicalDeviceVulkan12Features & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceVulkan12Features & setSamplerMirrorClampToEdge( VULKAN_HPP_NAMESPACE::Bool32 samplerMirrorClampToEdge_ ) VULKAN_HPP_NOEXCEPT
- {
- samplerMirrorClampToEdge = samplerMirrorClampToEdge_;
- return *this;
- }
-
- PhysicalDeviceVulkan12Features & setDrawIndirectCount( VULKAN_HPP_NAMESPACE::Bool32 drawIndirectCount_ ) VULKAN_HPP_NOEXCEPT
- {
- drawIndirectCount = drawIndirectCount_;
- return *this;
- }
-
- PhysicalDeviceVulkan12Features & setStorageBuffer8BitAccess( VULKAN_HPP_NAMESPACE::Bool32 storageBuffer8BitAccess_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- storageBuffer8BitAccess = storageBuffer8BitAccess_;
- return *this;
- }
-
- PhysicalDeviceVulkan12Features & setUniformAndStorageBuffer8BitAccess( VULKAN_HPP_NAMESPACE::Bool32 uniformAndStorageBuffer8BitAccess_ ) VULKAN_HPP_NOEXCEPT
- {
- uniformAndStorageBuffer8BitAccess = uniformAndStorageBuffer8BitAccess_;
- return *this;
- }
-
- PhysicalDeviceVulkan12Features & setStoragePushConstant8( VULKAN_HPP_NAMESPACE::Bool32 storagePushConstant8_ ) VULKAN_HPP_NOEXCEPT
- {
- storagePushConstant8 = storagePushConstant8_;
- return *this;
- }
-
- PhysicalDeviceVulkan12Features & setShaderBufferInt64Atomics( VULKAN_HPP_NAMESPACE::Bool32 shaderBufferInt64Atomics_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderBufferInt64Atomics = shaderBufferInt64Atomics_;
- return *this;
- }
-
- PhysicalDeviceVulkan12Features & setShaderSharedInt64Atomics( VULKAN_HPP_NAMESPACE::Bool32 shaderSharedInt64Atomics_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderSharedInt64Atomics = shaderSharedInt64Atomics_;
- return *this;
- }
-
- PhysicalDeviceVulkan12Features & setShaderFloat16( VULKAN_HPP_NAMESPACE::Bool32 shaderFloat16_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderFloat16 = shaderFloat16_;
- return *this;
- }
-
- PhysicalDeviceVulkan12Features & setShaderInt8( VULKAN_HPP_NAMESPACE::Bool32 shaderInt8_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderInt8 = shaderInt8_;
- return *this;
- }
-
- PhysicalDeviceVulkan12Features & setDescriptorIndexing( VULKAN_HPP_NAMESPACE::Bool32 descriptorIndexing_ ) VULKAN_HPP_NOEXCEPT
- {
- descriptorIndexing = descriptorIndexing_;
- return *this;
- }
-
- PhysicalDeviceVulkan12Features & setShaderInputAttachmentArrayDynamicIndexing( VULKAN_HPP_NAMESPACE::Bool32 shaderInputAttachmentArrayDynamicIndexing_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderInputAttachmentArrayDynamicIndexing = shaderInputAttachmentArrayDynamicIndexing_;
- return *this;
- }
-
- PhysicalDeviceVulkan12Features & setShaderUniformTexelBufferArrayDynamicIndexing( VULKAN_HPP_NAMESPACE::Bool32 shaderUniformTexelBufferArrayDynamicIndexing_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderUniformTexelBufferArrayDynamicIndexing = shaderUniformTexelBufferArrayDynamicIndexing_;
- return *this;
- }
-
- PhysicalDeviceVulkan12Features & setShaderStorageTexelBufferArrayDynamicIndexing( VULKAN_HPP_NAMESPACE::Bool32 shaderStorageTexelBufferArrayDynamicIndexing_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderStorageTexelBufferArrayDynamicIndexing = shaderStorageTexelBufferArrayDynamicIndexing_;
- return *this;
- }
-
- PhysicalDeviceVulkan12Features & setShaderUniformBufferArrayNonUniformIndexing( VULKAN_HPP_NAMESPACE::Bool32 shaderUniformBufferArrayNonUniformIndexing_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderUniformBufferArrayNonUniformIndexing = shaderUniformBufferArrayNonUniformIndexing_;
- return *this;
- }
-
- PhysicalDeviceVulkan12Features & setShaderSampledImageArrayNonUniformIndexing( VULKAN_HPP_NAMESPACE::Bool32 shaderSampledImageArrayNonUniformIndexing_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderSampledImageArrayNonUniformIndexing = shaderSampledImageArrayNonUniformIndexing_;
- return *this;
- }
-
- PhysicalDeviceVulkan12Features & setShaderStorageBufferArrayNonUniformIndexing( VULKAN_HPP_NAMESPACE::Bool32 shaderStorageBufferArrayNonUniformIndexing_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderStorageBufferArrayNonUniformIndexing = shaderStorageBufferArrayNonUniformIndexing_;
- return *this;
- }
-
- PhysicalDeviceVulkan12Features & setShaderStorageImageArrayNonUniformIndexing( VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageArrayNonUniformIndexing_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderStorageImageArrayNonUniformIndexing = shaderStorageImageArrayNonUniformIndexing_;
- return *this;
- }
-
- PhysicalDeviceVulkan12Features & setShaderInputAttachmentArrayNonUniformIndexing( VULKAN_HPP_NAMESPACE::Bool32 shaderInputAttachmentArrayNonUniformIndexing_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderInputAttachmentArrayNonUniformIndexing = shaderInputAttachmentArrayNonUniformIndexing_;
- return *this;
- }
-
- PhysicalDeviceVulkan12Features & setShaderUniformTexelBufferArrayNonUniformIndexing( VULKAN_HPP_NAMESPACE::Bool32 shaderUniformTexelBufferArrayNonUniformIndexing_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderUniformTexelBufferArrayNonUniformIndexing = shaderUniformTexelBufferArrayNonUniformIndexing_;
- return *this;
- }
-
- PhysicalDeviceVulkan12Features & setShaderStorageTexelBufferArrayNonUniformIndexing( VULKAN_HPP_NAMESPACE::Bool32 shaderStorageTexelBufferArrayNonUniformIndexing_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderStorageTexelBufferArrayNonUniformIndexing = shaderStorageTexelBufferArrayNonUniformIndexing_;
- return *this;
- }
-
- PhysicalDeviceVulkan12Features & setDescriptorBindingUniformBufferUpdateAfterBind( VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingUniformBufferUpdateAfterBind_ ) VULKAN_HPP_NOEXCEPT
- {
- descriptorBindingUniformBufferUpdateAfterBind = descriptorBindingUniformBufferUpdateAfterBind_;
- return *this;
- }
-
- PhysicalDeviceVulkan12Features & setDescriptorBindingSampledImageUpdateAfterBind( VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingSampledImageUpdateAfterBind_ ) VULKAN_HPP_NOEXCEPT
- {
- descriptorBindingSampledImageUpdateAfterBind = descriptorBindingSampledImageUpdateAfterBind_;
- return *this;
- }
-
- PhysicalDeviceVulkan12Features & setDescriptorBindingStorageImageUpdateAfterBind( VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingStorageImageUpdateAfterBind_ ) VULKAN_HPP_NOEXCEPT
- {
- descriptorBindingStorageImageUpdateAfterBind = descriptorBindingStorageImageUpdateAfterBind_;
- return *this;
- }
-
- PhysicalDeviceVulkan12Features & setDescriptorBindingStorageBufferUpdateAfterBind( VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingStorageBufferUpdateAfterBind_ ) VULKAN_HPP_NOEXCEPT
- {
- descriptorBindingStorageBufferUpdateAfterBind = descriptorBindingStorageBufferUpdateAfterBind_;
- return *this;
- }
-
- PhysicalDeviceVulkan12Features & setDescriptorBindingUniformTexelBufferUpdateAfterBind( VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingUniformTexelBufferUpdateAfterBind_ ) VULKAN_HPP_NOEXCEPT
- {
- descriptorBindingUniformTexelBufferUpdateAfterBind = descriptorBindingUniformTexelBufferUpdateAfterBind_;
- return *this;
- }
-
- PhysicalDeviceVulkan12Features & setDescriptorBindingStorageTexelBufferUpdateAfterBind( VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingStorageTexelBufferUpdateAfterBind_ ) VULKAN_HPP_NOEXCEPT
- {
- descriptorBindingStorageTexelBufferUpdateAfterBind = descriptorBindingStorageTexelBufferUpdateAfterBind_;
- return *this;
- }
-
- PhysicalDeviceVulkan12Features & setDescriptorBindingUpdateUnusedWhilePending( VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingUpdateUnusedWhilePending_ ) VULKAN_HPP_NOEXCEPT
- {
- descriptorBindingUpdateUnusedWhilePending = descriptorBindingUpdateUnusedWhilePending_;
- return *this;
- }
-
- PhysicalDeviceVulkan12Features & setDescriptorBindingPartiallyBound( VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingPartiallyBound_ ) VULKAN_HPP_NOEXCEPT
- {
- descriptorBindingPartiallyBound = descriptorBindingPartiallyBound_;
- return *this;
- }
-
- PhysicalDeviceVulkan12Features & setDescriptorBindingVariableDescriptorCount( VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingVariableDescriptorCount_ ) VULKAN_HPP_NOEXCEPT
- {
- descriptorBindingVariableDescriptorCount = descriptorBindingVariableDescriptorCount_;
- return *this;
- }
-
- PhysicalDeviceVulkan12Features & setRuntimeDescriptorArray( VULKAN_HPP_NAMESPACE::Bool32 runtimeDescriptorArray_ ) VULKAN_HPP_NOEXCEPT
- {
- runtimeDescriptorArray = runtimeDescriptorArray_;
- return *this;
- }
-
- PhysicalDeviceVulkan12Features & setSamplerFilterMinmax( VULKAN_HPP_NAMESPACE::Bool32 samplerFilterMinmax_ ) VULKAN_HPP_NOEXCEPT
- {
- samplerFilterMinmax = samplerFilterMinmax_;
- return *this;
- }
-
- PhysicalDeviceVulkan12Features & setScalarBlockLayout( VULKAN_HPP_NAMESPACE::Bool32 scalarBlockLayout_ ) VULKAN_HPP_NOEXCEPT
- {
- scalarBlockLayout = scalarBlockLayout_;
- return *this;
- }
-
- PhysicalDeviceVulkan12Features & setImagelessFramebuffer( VULKAN_HPP_NAMESPACE::Bool32 imagelessFramebuffer_ ) VULKAN_HPP_NOEXCEPT
- {
- imagelessFramebuffer = imagelessFramebuffer_;
- return *this;
- }
-
- PhysicalDeviceVulkan12Features & setUniformBufferStandardLayout( VULKAN_HPP_NAMESPACE::Bool32 uniformBufferStandardLayout_ ) VULKAN_HPP_NOEXCEPT
- {
- uniformBufferStandardLayout = uniformBufferStandardLayout_;
- return *this;
- }
-
- PhysicalDeviceVulkan12Features & setShaderSubgroupExtendedTypes( VULKAN_HPP_NAMESPACE::Bool32 shaderSubgroupExtendedTypes_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderSubgroupExtendedTypes = shaderSubgroupExtendedTypes_;
- return *this;
- }
-
- PhysicalDeviceVulkan12Features & setSeparateDepthStencilLayouts( VULKAN_HPP_NAMESPACE::Bool32 separateDepthStencilLayouts_ ) VULKAN_HPP_NOEXCEPT
- {
- separateDepthStencilLayouts = separateDepthStencilLayouts_;
- return *this;
- }
-
- PhysicalDeviceVulkan12Features & setHostQueryReset( VULKAN_HPP_NAMESPACE::Bool32 hostQueryReset_ ) VULKAN_HPP_NOEXCEPT
- {
- hostQueryReset = hostQueryReset_;
- return *this;
- }
-
- PhysicalDeviceVulkan12Features & setTimelineSemaphore( VULKAN_HPP_NAMESPACE::Bool32 timelineSemaphore_ ) VULKAN_HPP_NOEXCEPT
- {
- timelineSemaphore = timelineSemaphore_;
- return *this;
- }
-
- PhysicalDeviceVulkan12Features & setBufferDeviceAddress( VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddress_ ) VULKAN_HPP_NOEXCEPT
- {
- bufferDeviceAddress = bufferDeviceAddress_;
- return *this;
- }
-
- PhysicalDeviceVulkan12Features & setBufferDeviceAddressCaptureReplay( VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddressCaptureReplay_ ) VULKAN_HPP_NOEXCEPT
- {
- bufferDeviceAddressCaptureReplay = bufferDeviceAddressCaptureReplay_;
- return *this;
- }
-
- PhysicalDeviceVulkan12Features & setBufferDeviceAddressMultiDevice( VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddressMultiDevice_ ) VULKAN_HPP_NOEXCEPT
- {
- bufferDeviceAddressMultiDevice = bufferDeviceAddressMultiDevice_;
- return *this;
- }
-
- PhysicalDeviceVulkan12Features & setVulkanMemoryModel( VULKAN_HPP_NAMESPACE::Bool32 vulkanMemoryModel_ ) VULKAN_HPP_NOEXCEPT
- {
- vulkanMemoryModel = vulkanMemoryModel_;
- return *this;
- }
-
- PhysicalDeviceVulkan12Features & setVulkanMemoryModelDeviceScope( VULKAN_HPP_NAMESPACE::Bool32 vulkanMemoryModelDeviceScope_ ) VULKAN_HPP_NOEXCEPT
- {
- vulkanMemoryModelDeviceScope = vulkanMemoryModelDeviceScope_;
- return *this;
- }
-
- PhysicalDeviceVulkan12Features & setVulkanMemoryModelAvailabilityVisibilityChains( VULKAN_HPP_NAMESPACE::Bool32 vulkanMemoryModelAvailabilityVisibilityChains_ ) VULKAN_HPP_NOEXCEPT
- {
- vulkanMemoryModelAvailabilityVisibilityChains = vulkanMemoryModelAvailabilityVisibilityChains_;
- return *this;
- }
-
- PhysicalDeviceVulkan12Features & setShaderOutputViewportIndex( VULKAN_HPP_NAMESPACE::Bool32 shaderOutputViewportIndex_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderOutputViewportIndex = shaderOutputViewportIndex_;
- return *this;
- }
-
- PhysicalDeviceVulkan12Features & setShaderOutputLayer( VULKAN_HPP_NAMESPACE::Bool32 shaderOutputLayer_ ) VULKAN_HPP_NOEXCEPT
- {
- shaderOutputLayer = shaderOutputLayer_;
- return *this;
- }
-
- PhysicalDeviceVulkan12Features & setSubgroupBroadcastDynamicId( VULKAN_HPP_NAMESPACE::Bool32 subgroupBroadcastDynamicId_ ) VULKAN_HPP_NOEXCEPT
- {
- subgroupBroadcastDynamicId = subgroupBroadcastDynamicId_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceVulkan12Features const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceVulkan12Features*>( this );
- }
-
- operator VkPhysicalDeviceVulkan12Features &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceVulkan12Features*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceVulkan12Features const& ) const = default;
-#else
- bool operator==( PhysicalDeviceVulkan12Features const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( samplerMirrorClampToEdge == rhs.samplerMirrorClampToEdge )
- && ( drawIndirectCount == rhs.drawIndirectCount )
- && ( storageBuffer8BitAccess == rhs.storageBuffer8BitAccess )
- && ( uniformAndStorageBuffer8BitAccess == rhs.uniformAndStorageBuffer8BitAccess )
- && ( storagePushConstant8 == rhs.storagePushConstant8 )
- && ( shaderBufferInt64Atomics == rhs.shaderBufferInt64Atomics )
- && ( shaderSharedInt64Atomics == rhs.shaderSharedInt64Atomics )
- && ( shaderFloat16 == rhs.shaderFloat16 )
- && ( shaderInt8 == rhs.shaderInt8 )
- && ( descriptorIndexing == rhs.descriptorIndexing )
- && ( shaderInputAttachmentArrayDynamicIndexing == rhs.shaderInputAttachmentArrayDynamicIndexing )
- && ( shaderUniformTexelBufferArrayDynamicIndexing == rhs.shaderUniformTexelBufferArrayDynamicIndexing )
- && ( shaderStorageTexelBufferArrayDynamicIndexing == rhs.shaderStorageTexelBufferArrayDynamicIndexing )
- && ( shaderUniformBufferArrayNonUniformIndexing == rhs.shaderUniformBufferArrayNonUniformIndexing )
- && ( shaderSampledImageArrayNonUniformIndexing == rhs.shaderSampledImageArrayNonUniformIndexing )
- && ( shaderStorageBufferArrayNonUniformIndexing == rhs.shaderStorageBufferArrayNonUniformIndexing )
- && ( shaderStorageImageArrayNonUniformIndexing == rhs.shaderStorageImageArrayNonUniformIndexing )
- && ( shaderInputAttachmentArrayNonUniformIndexing == rhs.shaderInputAttachmentArrayNonUniformIndexing )
- && ( shaderUniformTexelBufferArrayNonUniformIndexing == rhs.shaderUniformTexelBufferArrayNonUniformIndexing )
- && ( shaderStorageTexelBufferArrayNonUniformIndexing == rhs.shaderStorageTexelBufferArrayNonUniformIndexing )
- && ( descriptorBindingUniformBufferUpdateAfterBind == rhs.descriptorBindingUniformBufferUpdateAfterBind )
- && ( descriptorBindingSampledImageUpdateAfterBind == rhs.descriptorBindingSampledImageUpdateAfterBind )
- && ( descriptorBindingStorageImageUpdateAfterBind == rhs.descriptorBindingStorageImageUpdateAfterBind )
- && ( descriptorBindingStorageBufferUpdateAfterBind == rhs.descriptorBindingStorageBufferUpdateAfterBind )
- && ( descriptorBindingUniformTexelBufferUpdateAfterBind == rhs.descriptorBindingUniformTexelBufferUpdateAfterBind )
- && ( descriptorBindingStorageTexelBufferUpdateAfterBind == rhs.descriptorBindingStorageTexelBufferUpdateAfterBind )
- && ( descriptorBindingUpdateUnusedWhilePending == rhs.descriptorBindingUpdateUnusedWhilePending )
- && ( descriptorBindingPartiallyBound == rhs.descriptorBindingPartiallyBound )
- && ( descriptorBindingVariableDescriptorCount == rhs.descriptorBindingVariableDescriptorCount )
- && ( runtimeDescriptorArray == rhs.runtimeDescriptorArray )
- && ( samplerFilterMinmax == rhs.samplerFilterMinmax )
- && ( scalarBlockLayout == rhs.scalarBlockLayout )
- && ( imagelessFramebuffer == rhs.imagelessFramebuffer )
- && ( uniformBufferStandardLayout == rhs.uniformBufferStandardLayout )
- && ( shaderSubgroupExtendedTypes == rhs.shaderSubgroupExtendedTypes )
- && ( separateDepthStencilLayouts == rhs.separateDepthStencilLayouts )
- && ( hostQueryReset == rhs.hostQueryReset )
- && ( timelineSemaphore == rhs.timelineSemaphore )
- && ( bufferDeviceAddress == rhs.bufferDeviceAddress )
- && ( bufferDeviceAddressCaptureReplay == rhs.bufferDeviceAddressCaptureReplay )
- && ( bufferDeviceAddressMultiDevice == rhs.bufferDeviceAddressMultiDevice )
- && ( vulkanMemoryModel == rhs.vulkanMemoryModel )
- && ( vulkanMemoryModelDeviceScope == rhs.vulkanMemoryModelDeviceScope )
- && ( vulkanMemoryModelAvailabilityVisibilityChains == rhs.vulkanMemoryModelAvailabilityVisibilityChains )
- && ( shaderOutputViewportIndex == rhs.shaderOutputViewportIndex )
- && ( shaderOutputLayer == rhs.shaderOutputLayer )
- && ( subgroupBroadcastDynamicId == rhs.subgroupBroadcastDynamicId );
- }
-
- bool operator!=( PhysicalDeviceVulkan12Features const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceVulkan12Features;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 samplerMirrorClampToEdge = {};
- VULKAN_HPP_NAMESPACE::Bool32 drawIndirectCount = {};
- VULKAN_HPP_NAMESPACE::Bool32 storageBuffer8BitAccess = {};
- VULKAN_HPP_NAMESPACE::Bool32 uniformAndStorageBuffer8BitAccess = {};
- VULKAN_HPP_NAMESPACE::Bool32 storagePushConstant8 = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderBufferInt64Atomics = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderSharedInt64Atomics = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderFloat16 = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderInt8 = {};
- VULKAN_HPP_NAMESPACE::Bool32 descriptorIndexing = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderInputAttachmentArrayDynamicIndexing = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderUniformTexelBufferArrayDynamicIndexing = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderStorageTexelBufferArrayDynamicIndexing = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderUniformBufferArrayNonUniformIndexing = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderSampledImageArrayNonUniformIndexing = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderStorageBufferArrayNonUniformIndexing = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageArrayNonUniformIndexing = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderInputAttachmentArrayNonUniformIndexing = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderUniformTexelBufferArrayNonUniformIndexing = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderStorageTexelBufferArrayNonUniformIndexing = {};
- VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingUniformBufferUpdateAfterBind = {};
- VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingSampledImageUpdateAfterBind = {};
- VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingStorageImageUpdateAfterBind = {};
- VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingStorageBufferUpdateAfterBind = {};
- VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingUniformTexelBufferUpdateAfterBind = {};
- VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingStorageTexelBufferUpdateAfterBind = {};
- VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingUpdateUnusedWhilePending = {};
- VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingPartiallyBound = {};
- VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingVariableDescriptorCount = {};
- VULKAN_HPP_NAMESPACE::Bool32 runtimeDescriptorArray = {};
- VULKAN_HPP_NAMESPACE::Bool32 samplerFilterMinmax = {};
- VULKAN_HPP_NAMESPACE::Bool32 scalarBlockLayout = {};
- VULKAN_HPP_NAMESPACE::Bool32 imagelessFramebuffer = {};
- VULKAN_HPP_NAMESPACE::Bool32 uniformBufferStandardLayout = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderSubgroupExtendedTypes = {};
- VULKAN_HPP_NAMESPACE::Bool32 separateDepthStencilLayouts = {};
- VULKAN_HPP_NAMESPACE::Bool32 hostQueryReset = {};
- VULKAN_HPP_NAMESPACE::Bool32 timelineSemaphore = {};
- VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddress = {};
- VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddressCaptureReplay = {};
- VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddressMultiDevice = {};
- VULKAN_HPP_NAMESPACE::Bool32 vulkanMemoryModel = {};
- VULKAN_HPP_NAMESPACE::Bool32 vulkanMemoryModelDeviceScope = {};
- VULKAN_HPP_NAMESPACE::Bool32 vulkanMemoryModelAvailabilityVisibilityChains = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderOutputViewportIndex = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderOutputLayer = {};
- VULKAN_HPP_NAMESPACE::Bool32 subgroupBroadcastDynamicId = {};
-
- };
- static_assert( sizeof( PhysicalDeviceVulkan12Features ) == sizeof( VkPhysicalDeviceVulkan12Features ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceVulkan12Features>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceVulkan12Features>
- {
- using Type = PhysicalDeviceVulkan12Features;
+ value = true
+ };
};
-
- struct PhysicalDeviceVulkan12Properties
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceVulkan12Properties;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan12Properties(VULKAN_HPP_NAMESPACE::DriverId driverID_ = VULKAN_HPP_NAMESPACE::DriverId::eAmdProprietary, std::array<char,VK_MAX_DRIVER_NAME_SIZE> const& driverName_ = {}, std::array<char,VK_MAX_DRIVER_INFO_SIZE> const& driverInfo_ = {}, VULKAN_HPP_NAMESPACE::ConformanceVersion conformanceVersion_ = {}, VULKAN_HPP_NAMESPACE::ShaderFloatControlsIndependence denormBehaviorIndependence_ = VULKAN_HPP_NAMESPACE::ShaderFloatControlsIndependence::e32BitOnly, VULKAN_HPP_NAMESPACE::ShaderFloatControlsIndependence roundingModeIndependence_ = VULKAN_HPP_NAMESPACE::ShaderFloatControlsIndependence::e32BitOnly, VULKAN_HPP_NAMESPACE::Bool32 shaderSignedZeroInfNanPreserveFloat16_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderSignedZeroInfNanPreserveFloat32_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderSignedZeroInfNanPreserveFloat64_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderDenormPreserveFloat16_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderDenormPreserveFloat32_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderDenormPreserveFloat64_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderDenormFlushToZeroFloat16_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderDenormFlushToZeroFloat32_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderDenormFlushToZeroFloat64_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTEFloat16_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTEFloat32_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTEFloat64_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTZFloat16_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTZFloat32_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTZFloat64_ = {}, uint32_t maxUpdateAfterBindDescriptorsInAllPools_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderUniformBufferArrayNonUniformIndexingNative_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderSampledImageArrayNonUniformIndexingNative_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderStorageBufferArrayNonUniformIndexingNative_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageArrayNonUniformIndexingNative_ = {}, VULKAN_HPP_NAMESPACE::Bool32 shaderInputAttachmentArrayNonUniformIndexingNative_ = {}, VULKAN_HPP_NAMESPACE::Bool32 robustBufferAccessUpdateAfterBind_ = {}, VULKAN_HPP_NAMESPACE::Bool32 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_ = {}, VULKAN_HPP_NAMESPACE::ResolveModeFlags supportedDepthResolveModes_ = {}, VULKAN_HPP_NAMESPACE::ResolveModeFlags supportedStencilResolveModes_ = {}, VULKAN_HPP_NAMESPACE::Bool32 independentResolveNone_ = {}, VULKAN_HPP_NAMESPACE::Bool32 independentResolve_ = {}, VULKAN_HPP_NAMESPACE::Bool32 filterMinmaxSingleComponentFormats_ = {}, VULKAN_HPP_NAMESPACE::Bool32 filterMinmaxImageComponentMapping_ = {}, uint64_t maxTimelineSemaphoreValueDifference_ = {}, VULKAN_HPP_NAMESPACE::SampleCountFlags framebufferIntegerColorSampleCounts_ = {}) VULKAN_HPP_NOEXCEPT
- : driverID( driverID_ ), driverName( driverName_ ), driverInfo( driverInfo_ ), conformanceVersion( conformanceVersion_ ), denormBehaviorIndependence( denormBehaviorIndependence_ ), roundingModeIndependence( roundingModeIndependence_ ), shaderSignedZeroInfNanPreserveFloat16( shaderSignedZeroInfNanPreserveFloat16_ ), shaderSignedZeroInfNanPreserveFloat32( shaderSignedZeroInfNanPreserveFloat32_ ), shaderSignedZeroInfNanPreserveFloat64( shaderSignedZeroInfNanPreserveFloat64_ ), shaderDenormPreserveFloat16( shaderDenormPreserveFloat16_ ), shaderDenormPreserveFloat32( shaderDenormPreserveFloat32_ ), shaderDenormPreserveFloat64( shaderDenormPreserveFloat64_ ), shaderDenormFlushToZeroFloat16( shaderDenormFlushToZeroFloat16_ ), shaderDenormFlushToZeroFloat32( shaderDenormFlushToZeroFloat32_ ), shaderDenormFlushToZeroFloat64( shaderDenormFlushToZeroFloat64_ ), shaderRoundingModeRTEFloat16( shaderRoundingModeRTEFloat16_ ), shaderRoundingModeRTEFloat32( shaderRoundingModeRTEFloat32_ ), shaderRoundingModeRTEFloat64( shaderRoundingModeRTEFloat64_ ), shaderRoundingModeRTZFloat16( shaderRoundingModeRTZFloat16_ ), shaderRoundingModeRTZFloat32( shaderRoundingModeRTZFloat32_ ), shaderRoundingModeRTZFloat64( shaderRoundingModeRTZFloat64_ ), maxUpdateAfterBindDescriptorsInAllPools( maxUpdateAfterBindDescriptorsInAllPools_ ), shaderUniformBufferArrayNonUniformIndexingNative( shaderUniformBufferArrayNonUniformIndexingNative_ ), shaderSampledImageArrayNonUniformIndexingNative( shaderSampledImageArrayNonUniformIndexingNative_ ), shaderStorageBufferArrayNonUniformIndexingNative( shaderStorageBufferArrayNonUniformIndexingNative_ ), shaderStorageImageArrayNonUniformIndexingNative( shaderStorageImageArrayNonUniformIndexingNative_ ), shaderInputAttachmentArrayNonUniformIndexingNative( shaderInputAttachmentArrayNonUniformIndexingNative_ ), robustBufferAccessUpdateAfterBind( robustBufferAccessUpdateAfterBind_ ), quadDivergentImplicitLod( quadDivergentImplicitLod_ ), maxPerStageDescriptorUpdateAfterBindSamplers( maxPerStageDescriptorUpdateAfterBindSamplers_ ), maxPerStageDescriptorUpdateAfterBindUniformBuffers( maxPerStageDescriptorUpdateAfterBindUniformBuffers_ ), maxPerStageDescriptorUpdateAfterBindStorageBuffers( maxPerStageDescriptorUpdateAfterBindStorageBuffers_ ), maxPerStageDescriptorUpdateAfterBindSampledImages( maxPerStageDescriptorUpdateAfterBindSampledImages_ ), maxPerStageDescriptorUpdateAfterBindStorageImages( maxPerStageDescriptorUpdateAfterBindStorageImages_ ), maxPerStageDescriptorUpdateAfterBindInputAttachments( maxPerStageDescriptorUpdateAfterBindInputAttachments_ ), maxPerStageUpdateAfterBindResources( maxPerStageUpdateAfterBindResources_ ), maxDescriptorSetUpdateAfterBindSamplers( maxDescriptorSetUpdateAfterBindSamplers_ ), maxDescriptorSetUpdateAfterBindUniformBuffers( maxDescriptorSetUpdateAfterBindUniformBuffers_ ), maxDescriptorSetUpdateAfterBindUniformBuffersDynamic( maxDescriptorSetUpdateAfterBindUniformBuffersDynamic_ ), maxDescriptorSetUpdateAfterBindStorageBuffers( maxDescriptorSetUpdateAfterBindStorageBuffers_ ), maxDescriptorSetUpdateAfterBindStorageBuffersDynamic( maxDescriptorSetUpdateAfterBindStorageBuffersDynamic_ ), maxDescriptorSetUpdateAfterBindSampledImages( maxDescriptorSetUpdateAfterBindSampledImages_ ), maxDescriptorSetUpdateAfterBindStorageImages( maxDescriptorSetUpdateAfterBindStorageImages_ ), maxDescriptorSetUpdateAfterBindInputAttachments( maxDescriptorSetUpdateAfterBindInputAttachments_ ), supportedDepthResolveModes( supportedDepthResolveModes_ ), supportedStencilResolveModes( supportedStencilResolveModes_ ), independentResolveNone( independentResolveNone_ ), independentResolve( independentResolve_ ), filterMinmaxSingleComponentFormats( filterMinmaxSingleComponentFormats_ ), filterMinmaxImageComponentMapping( filterMinmaxImageComponentMapping_ ), maxTimelineSemaphoreValueDifference( maxTimelineSemaphoreValueDifference_ ), framebufferIntegerColorSampleCounts( framebufferIntegerColorSampleCounts_ )
- {}
-
- VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan12Properties( PhysicalDeviceVulkan12Properties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceVulkan12Properties( VkPhysicalDeviceVulkan12Properties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceVulkan12Properties & operator=( VkPhysicalDeviceVulkan12Properties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceVulkan12Properties const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceVulkan12Properties & operator=( PhysicalDeviceVulkan12Properties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceVulkan12Properties ) );
- return *this;
- }
-
-
- operator VkPhysicalDeviceVulkan12Properties const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceVulkan12Properties*>( this );
- }
-
- operator VkPhysicalDeviceVulkan12Properties &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceVulkan12Properties*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceVulkan12Properties const& ) const = default;
-#else
- bool operator==( PhysicalDeviceVulkan12Properties const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( driverID == rhs.driverID )
- && ( driverName == rhs.driverName )
- && ( driverInfo == rhs.driverInfo )
- && ( conformanceVersion == rhs.conformanceVersion )
- && ( denormBehaviorIndependence == rhs.denormBehaviorIndependence )
- && ( roundingModeIndependence == rhs.roundingModeIndependence )
- && ( shaderSignedZeroInfNanPreserveFloat16 == rhs.shaderSignedZeroInfNanPreserveFloat16 )
- && ( shaderSignedZeroInfNanPreserveFloat32 == rhs.shaderSignedZeroInfNanPreserveFloat32 )
- && ( shaderSignedZeroInfNanPreserveFloat64 == rhs.shaderSignedZeroInfNanPreserveFloat64 )
- && ( shaderDenormPreserveFloat16 == rhs.shaderDenormPreserveFloat16 )
- && ( shaderDenormPreserveFloat32 == rhs.shaderDenormPreserveFloat32 )
- && ( shaderDenormPreserveFloat64 == rhs.shaderDenormPreserveFloat64 )
- && ( shaderDenormFlushToZeroFloat16 == rhs.shaderDenormFlushToZeroFloat16 )
- && ( shaderDenormFlushToZeroFloat32 == rhs.shaderDenormFlushToZeroFloat32 )
- && ( shaderDenormFlushToZeroFloat64 == rhs.shaderDenormFlushToZeroFloat64 )
- && ( shaderRoundingModeRTEFloat16 == rhs.shaderRoundingModeRTEFloat16 )
- && ( shaderRoundingModeRTEFloat32 == rhs.shaderRoundingModeRTEFloat32 )
- && ( shaderRoundingModeRTEFloat64 == rhs.shaderRoundingModeRTEFloat64 )
- && ( shaderRoundingModeRTZFloat16 == rhs.shaderRoundingModeRTZFloat16 )
- && ( shaderRoundingModeRTZFloat32 == rhs.shaderRoundingModeRTZFloat32 )
- && ( shaderRoundingModeRTZFloat64 == rhs.shaderRoundingModeRTZFloat64 )
- && ( maxUpdateAfterBindDescriptorsInAllPools == rhs.maxUpdateAfterBindDescriptorsInAllPools )
- && ( shaderUniformBufferArrayNonUniformIndexingNative == rhs.shaderUniformBufferArrayNonUniformIndexingNative )
- && ( shaderSampledImageArrayNonUniformIndexingNative == rhs.shaderSampledImageArrayNonUniformIndexingNative )
- && ( shaderStorageBufferArrayNonUniformIndexingNative == rhs.shaderStorageBufferArrayNonUniformIndexingNative )
- && ( shaderStorageImageArrayNonUniformIndexingNative == rhs.shaderStorageImageArrayNonUniformIndexingNative )
- && ( shaderInputAttachmentArrayNonUniformIndexingNative == rhs.shaderInputAttachmentArrayNonUniformIndexingNative )
- && ( robustBufferAccessUpdateAfterBind == rhs.robustBufferAccessUpdateAfterBind )
- && ( quadDivergentImplicitLod == rhs.quadDivergentImplicitLod )
- && ( maxPerStageDescriptorUpdateAfterBindSamplers == rhs.maxPerStageDescriptorUpdateAfterBindSamplers )
- && ( maxPerStageDescriptorUpdateAfterBindUniformBuffers == rhs.maxPerStageDescriptorUpdateAfterBindUniformBuffers )
- && ( maxPerStageDescriptorUpdateAfterBindStorageBuffers == rhs.maxPerStageDescriptorUpdateAfterBindStorageBuffers )
- && ( maxPerStageDescriptorUpdateAfterBindSampledImages == rhs.maxPerStageDescriptorUpdateAfterBindSampledImages )
- && ( maxPerStageDescriptorUpdateAfterBindStorageImages == rhs.maxPerStageDescriptorUpdateAfterBindStorageImages )
- && ( maxPerStageDescriptorUpdateAfterBindInputAttachments == rhs.maxPerStageDescriptorUpdateAfterBindInputAttachments )
- && ( maxPerStageUpdateAfterBindResources == rhs.maxPerStageUpdateAfterBindResources )
- && ( maxDescriptorSetUpdateAfterBindSamplers == rhs.maxDescriptorSetUpdateAfterBindSamplers )
- && ( maxDescriptorSetUpdateAfterBindUniformBuffers == rhs.maxDescriptorSetUpdateAfterBindUniformBuffers )
- && ( maxDescriptorSetUpdateAfterBindUniformBuffersDynamic == rhs.maxDescriptorSetUpdateAfterBindUniformBuffersDynamic )
- && ( maxDescriptorSetUpdateAfterBindStorageBuffers == rhs.maxDescriptorSetUpdateAfterBindStorageBuffers )
- && ( maxDescriptorSetUpdateAfterBindStorageBuffersDynamic == rhs.maxDescriptorSetUpdateAfterBindStorageBuffersDynamic )
- && ( maxDescriptorSetUpdateAfterBindSampledImages == rhs.maxDescriptorSetUpdateAfterBindSampledImages )
- && ( maxDescriptorSetUpdateAfterBindStorageImages == rhs.maxDescriptorSetUpdateAfterBindStorageImages )
- && ( maxDescriptorSetUpdateAfterBindInputAttachments == rhs.maxDescriptorSetUpdateAfterBindInputAttachments )
- && ( supportedDepthResolveModes == rhs.supportedDepthResolveModes )
- && ( supportedStencilResolveModes == rhs.supportedStencilResolveModes )
- && ( independentResolveNone == rhs.independentResolveNone )
- && ( independentResolve == rhs.independentResolve )
- && ( filterMinmaxSingleComponentFormats == rhs.filterMinmaxSingleComponentFormats )
- && ( filterMinmaxImageComponentMapping == rhs.filterMinmaxImageComponentMapping )
- && ( maxTimelineSemaphoreValueDifference == rhs.maxTimelineSemaphoreValueDifference )
- && ( framebufferIntegerColorSampleCounts == rhs.framebufferIntegerColorSampleCounts );
- }
-
- bool operator!=( PhysicalDeviceVulkan12Properties const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceVulkan12Properties;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::DriverId driverID = VULKAN_HPP_NAMESPACE::DriverId::eAmdProprietary;
- VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DRIVER_NAME_SIZE> driverName = {};
- VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DRIVER_INFO_SIZE> driverInfo = {};
- VULKAN_HPP_NAMESPACE::ConformanceVersion conformanceVersion = {};
- VULKAN_HPP_NAMESPACE::ShaderFloatControlsIndependence denormBehaviorIndependence = VULKAN_HPP_NAMESPACE::ShaderFloatControlsIndependence::e32BitOnly;
- VULKAN_HPP_NAMESPACE::ShaderFloatControlsIndependence roundingModeIndependence = VULKAN_HPP_NAMESPACE::ShaderFloatControlsIndependence::e32BitOnly;
- VULKAN_HPP_NAMESPACE::Bool32 shaderSignedZeroInfNanPreserveFloat16 = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderSignedZeroInfNanPreserveFloat32 = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderSignedZeroInfNanPreserveFloat64 = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderDenormPreserveFloat16 = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderDenormPreserveFloat32 = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderDenormPreserveFloat64 = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderDenormFlushToZeroFloat16 = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderDenormFlushToZeroFloat32 = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderDenormFlushToZeroFloat64 = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTEFloat16 = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTEFloat32 = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTEFloat64 = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTZFloat16 = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTZFloat32 = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTZFloat64 = {};
- uint32_t maxUpdateAfterBindDescriptorsInAllPools = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderUniformBufferArrayNonUniformIndexingNative = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderSampledImageArrayNonUniformIndexingNative = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderStorageBufferArrayNonUniformIndexingNative = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageArrayNonUniformIndexingNative = {};
- VULKAN_HPP_NAMESPACE::Bool32 shaderInputAttachmentArrayNonUniformIndexingNative = {};
- VULKAN_HPP_NAMESPACE::Bool32 robustBufferAccessUpdateAfterBind = {};
- VULKAN_HPP_NAMESPACE::Bool32 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 = {};
- VULKAN_HPP_NAMESPACE::ResolveModeFlags supportedDepthResolveModes = {};
- VULKAN_HPP_NAMESPACE::ResolveModeFlags supportedStencilResolveModes = {};
- VULKAN_HPP_NAMESPACE::Bool32 independentResolveNone = {};
- VULKAN_HPP_NAMESPACE::Bool32 independentResolve = {};
- VULKAN_HPP_NAMESPACE::Bool32 filterMinmaxSingleComponentFormats = {};
- VULKAN_HPP_NAMESPACE::Bool32 filterMinmaxImageComponentMapping = {};
- uint64_t maxTimelineSemaphoreValueDifference = {};
- VULKAN_HPP_NAMESPACE::SampleCountFlags framebufferIntegerColorSampleCounts = {};
-
- };
- static_assert( sizeof( PhysicalDeviceVulkan12Properties ) == sizeof( VkPhysicalDeviceVulkan12Properties ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceVulkan12Properties>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceVulkan12Properties>
- {
- using Type = PhysicalDeviceVulkan12Properties;
- };
-
- struct PhysicalDeviceVulkanMemoryModelFeatures
+ struct StructExtends<SubpassDescriptionDepthStencilResolve, SubpassDescription2>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceVulkanMemoryModelFeatures;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceVulkanMemoryModelFeatures(VULKAN_HPP_NAMESPACE::Bool32 vulkanMemoryModel_ = {}, VULKAN_HPP_NAMESPACE::Bool32 vulkanMemoryModelDeviceScope_ = {}, VULKAN_HPP_NAMESPACE::Bool32 vulkanMemoryModelAvailabilityVisibilityChains_ = {}) VULKAN_HPP_NOEXCEPT
- : vulkanMemoryModel( vulkanMemoryModel_ ), vulkanMemoryModelDeviceScope( vulkanMemoryModelDeviceScope_ ), vulkanMemoryModelAvailabilityVisibilityChains( vulkanMemoryModelAvailabilityVisibilityChains_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceVulkanMemoryModelFeatures( PhysicalDeviceVulkanMemoryModelFeatures const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceVulkanMemoryModelFeatures( VkPhysicalDeviceVulkanMemoryModelFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceVulkanMemoryModelFeatures & operator=( VkPhysicalDeviceVulkanMemoryModelFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceVulkanMemoryModelFeatures const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceVulkanMemoryModelFeatures & operator=( PhysicalDeviceVulkanMemoryModelFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceVulkanMemoryModelFeatures ) );
- return *this;
- }
-
- PhysicalDeviceVulkanMemoryModelFeatures & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceVulkanMemoryModelFeatures & setVulkanMemoryModel( VULKAN_HPP_NAMESPACE::Bool32 vulkanMemoryModel_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- vulkanMemoryModel = vulkanMemoryModel_;
- return *this;
- }
-
- PhysicalDeviceVulkanMemoryModelFeatures & setVulkanMemoryModelDeviceScope( VULKAN_HPP_NAMESPACE::Bool32 vulkanMemoryModelDeviceScope_ ) VULKAN_HPP_NOEXCEPT
- {
- vulkanMemoryModelDeviceScope = vulkanMemoryModelDeviceScope_;
- return *this;
- }
-
- PhysicalDeviceVulkanMemoryModelFeatures & setVulkanMemoryModelAvailabilityVisibilityChains( VULKAN_HPP_NAMESPACE::Bool32 vulkanMemoryModelAvailabilityVisibilityChains_ ) VULKAN_HPP_NOEXCEPT
- {
- vulkanMemoryModelAvailabilityVisibilityChains = vulkanMemoryModelAvailabilityVisibilityChains_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceVulkanMemoryModelFeatures const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceVulkanMemoryModelFeatures*>( this );
- }
-
- operator VkPhysicalDeviceVulkanMemoryModelFeatures &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceVulkanMemoryModelFeatures*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceVulkanMemoryModelFeatures const& ) const = default;
-#else
- bool operator==( PhysicalDeviceVulkanMemoryModelFeatures const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( vulkanMemoryModel == rhs.vulkanMemoryModel )
- && ( vulkanMemoryModelDeviceScope == rhs.vulkanMemoryModelDeviceScope )
- && ( vulkanMemoryModelAvailabilityVisibilityChains == rhs.vulkanMemoryModelAvailabilityVisibilityChains );
- }
-
- bool operator!=( PhysicalDeviceVulkanMemoryModelFeatures const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceVulkanMemoryModelFeatures;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 vulkanMemoryModel = {};
- VULKAN_HPP_NAMESPACE::Bool32 vulkanMemoryModelDeviceScope = {};
- VULKAN_HPP_NAMESPACE::Bool32 vulkanMemoryModelAvailabilityVisibilityChains = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceVulkanMemoryModelFeatures ) == sizeof( VkPhysicalDeviceVulkanMemoryModelFeatures ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceVulkanMemoryModelFeatures>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceVulkanMemoryModelFeatures>
+ struct StructExtends<SubpassShadingPipelineCreateInfoHUAWEI, ComputePipelineCreateInfo>
{
- using Type = PhysicalDeviceVulkanMemoryModelFeatures;
- };
- using PhysicalDeviceVulkanMemoryModelFeaturesKHR = PhysicalDeviceVulkanMemoryModelFeatures;
-
- struct PhysicalDeviceYcbcrImageArraysFeaturesEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceYcbcrImageArraysFeaturesEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PhysicalDeviceYcbcrImageArraysFeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 ycbcrImageArrays_ = {}) VULKAN_HPP_NOEXCEPT
- : ycbcrImageArrays( ycbcrImageArrays_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PhysicalDeviceYcbcrImageArraysFeaturesEXT( PhysicalDeviceYcbcrImageArraysFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PhysicalDeviceYcbcrImageArraysFeaturesEXT( VkPhysicalDeviceYcbcrImageArraysFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PhysicalDeviceYcbcrImageArraysFeaturesEXT & operator=( VkPhysicalDeviceYcbcrImageArraysFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceYcbcrImageArraysFeaturesEXT const *>( &rhs );
- return *this;
- }
-
- PhysicalDeviceYcbcrImageArraysFeaturesEXT & operator=( PhysicalDeviceYcbcrImageArraysFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceYcbcrImageArraysFeaturesEXT ) );
- return *this;
- }
-
- PhysicalDeviceYcbcrImageArraysFeaturesEXT & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PhysicalDeviceYcbcrImageArraysFeaturesEXT & setYcbcrImageArrays( VULKAN_HPP_NAMESPACE::Bool32 ycbcrImageArrays_ ) VULKAN_HPP_NOEXCEPT
- {
- ycbcrImageArrays = ycbcrImageArrays_;
- return *this;
- }
-
-
- operator VkPhysicalDeviceYcbcrImageArraysFeaturesEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPhysicalDeviceYcbcrImageArraysFeaturesEXT*>( this );
- }
-
- operator VkPhysicalDeviceYcbcrImageArraysFeaturesEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPhysicalDeviceYcbcrImageArraysFeaturesEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PhysicalDeviceYcbcrImageArraysFeaturesEXT const& ) const = default;
-#else
- bool operator==( PhysicalDeviceYcbcrImageArraysFeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( ycbcrImageArrays == rhs.ycbcrImageArrays );
- }
-
- bool operator!=( PhysicalDeviceYcbcrImageArraysFeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceYcbcrImageArraysFeaturesEXT;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 ycbcrImageArrays = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PhysicalDeviceYcbcrImageArraysFeaturesEXT ) == sizeof( VkPhysicalDeviceYcbcrImageArraysFeaturesEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PhysicalDeviceYcbcrImageArraysFeaturesEXT>::value, "struct wrapper is not a standard layout!" );
-
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
template <>
- struct CppType<StructureType, StructureType::ePhysicalDeviceYcbcrImageArraysFeaturesEXT>
- {
- using Type = PhysicalDeviceYcbcrImageArraysFeaturesEXT;
- };
-
- struct PipelineColorBlendAdvancedStateCreateInfoEXT
+ struct StructExtends<SurfaceCapabilitiesFullScreenExclusiveEXT, SurfaceCapabilities2KHR>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineColorBlendAdvancedStateCreateInfoEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PipelineColorBlendAdvancedStateCreateInfoEXT(VULKAN_HPP_NAMESPACE::Bool32 srcPremultiplied_ = {}, VULKAN_HPP_NAMESPACE::Bool32 dstPremultiplied_ = {}, VULKAN_HPP_NAMESPACE::BlendOverlapEXT blendOverlap_ = VULKAN_HPP_NAMESPACE::BlendOverlapEXT::eUncorrelated) VULKAN_HPP_NOEXCEPT
- : srcPremultiplied( srcPremultiplied_ ), dstPremultiplied( dstPremultiplied_ ), blendOverlap( blendOverlap_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PipelineColorBlendAdvancedStateCreateInfoEXT( PipelineColorBlendAdvancedStateCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PipelineColorBlendAdvancedStateCreateInfoEXT( VkPipelineColorBlendAdvancedStateCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PipelineColorBlendAdvancedStateCreateInfoEXT & operator=( VkPipelineColorBlendAdvancedStateCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineColorBlendAdvancedStateCreateInfoEXT const *>( &rhs );
- return *this;
- }
-
- PipelineColorBlendAdvancedStateCreateInfoEXT & operator=( PipelineColorBlendAdvancedStateCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PipelineColorBlendAdvancedStateCreateInfoEXT ) );
- return *this;
- }
-
- PipelineColorBlendAdvancedStateCreateInfoEXT & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PipelineColorBlendAdvancedStateCreateInfoEXT & setSrcPremultiplied( VULKAN_HPP_NAMESPACE::Bool32 srcPremultiplied_ ) VULKAN_HPP_NOEXCEPT
- {
- srcPremultiplied = srcPremultiplied_;
- return *this;
- }
-
- PipelineColorBlendAdvancedStateCreateInfoEXT & setDstPremultiplied( VULKAN_HPP_NAMESPACE::Bool32 dstPremultiplied_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- dstPremultiplied = dstPremultiplied_;
- return *this;
- }
-
- PipelineColorBlendAdvancedStateCreateInfoEXT & setBlendOverlap( VULKAN_HPP_NAMESPACE::BlendOverlapEXT blendOverlap_ ) VULKAN_HPP_NOEXCEPT
- {
- blendOverlap = blendOverlap_;
- return *this;
- }
-
-
- operator VkPipelineColorBlendAdvancedStateCreateInfoEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPipelineColorBlendAdvancedStateCreateInfoEXT*>( this );
- }
-
- operator VkPipelineColorBlendAdvancedStateCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPipelineColorBlendAdvancedStateCreateInfoEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PipelineColorBlendAdvancedStateCreateInfoEXT const& ) const = default;
-#else
- bool operator==( PipelineColorBlendAdvancedStateCreateInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( srcPremultiplied == rhs.srcPremultiplied )
- && ( dstPremultiplied == rhs.dstPremultiplied )
- && ( blendOverlap == rhs.blendOverlap );
- }
-
- bool operator!=( PipelineColorBlendAdvancedStateCreateInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineColorBlendAdvancedStateCreateInfoEXT;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 srcPremultiplied = {};
- VULKAN_HPP_NAMESPACE::Bool32 dstPremultiplied = {};
- VULKAN_HPP_NAMESPACE::BlendOverlapEXT blendOverlap = VULKAN_HPP_NAMESPACE::BlendOverlapEXT::eUncorrelated;
-
+ value = true
+ };
};
- static_assert( sizeof( PipelineColorBlendAdvancedStateCreateInfoEXT ) == sizeof( VkPipelineColorBlendAdvancedStateCreateInfoEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PipelineColorBlendAdvancedStateCreateInfoEXT>::value, "struct wrapper is not a standard layout!" );
-
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
template <>
- struct CppType<StructureType, StructureType::ePipelineColorBlendAdvancedStateCreateInfoEXT>
+ struct StructExtends<SurfaceFullScreenExclusiveInfoEXT, PhysicalDeviceSurfaceInfo2KHR>
{
- using Type = PipelineColorBlendAdvancedStateCreateInfoEXT;
- };
-
- struct PipelineCompilerControlCreateInfoAMD
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineCompilerControlCreateInfoAMD;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PipelineCompilerControlCreateInfoAMD(VULKAN_HPP_NAMESPACE::PipelineCompilerControlFlagsAMD compilerControlFlags_ = {}) VULKAN_HPP_NOEXCEPT
- : compilerControlFlags( compilerControlFlags_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PipelineCompilerControlCreateInfoAMD( PipelineCompilerControlCreateInfoAMD const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PipelineCompilerControlCreateInfoAMD( VkPipelineCompilerControlCreateInfoAMD const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PipelineCompilerControlCreateInfoAMD & operator=( VkPipelineCompilerControlCreateInfoAMD const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineCompilerControlCreateInfoAMD const *>( &rhs );
- return *this;
- }
-
- PipelineCompilerControlCreateInfoAMD & operator=( PipelineCompilerControlCreateInfoAMD const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PipelineCompilerControlCreateInfoAMD ) );
- return *this;
- }
-
- PipelineCompilerControlCreateInfoAMD & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PipelineCompilerControlCreateInfoAMD & setCompilerControlFlags( VULKAN_HPP_NAMESPACE::PipelineCompilerControlFlagsAMD compilerControlFlags_ ) VULKAN_HPP_NOEXCEPT
- {
- compilerControlFlags = compilerControlFlags_;
- return *this;
- }
-
-
- operator VkPipelineCompilerControlCreateInfoAMD const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPipelineCompilerControlCreateInfoAMD*>( this );
- }
-
- operator VkPipelineCompilerControlCreateInfoAMD &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPipelineCompilerControlCreateInfoAMD*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PipelineCompilerControlCreateInfoAMD const& ) const = default;
-#else
- bool operator==( PipelineCompilerControlCreateInfoAMD const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( compilerControlFlags == rhs.compilerControlFlags );
- }
-
- bool operator!=( PipelineCompilerControlCreateInfoAMD const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineCompilerControlCreateInfoAMD;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::PipelineCompilerControlFlagsAMD compilerControlFlags = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PipelineCompilerControlCreateInfoAMD ) == sizeof( VkPipelineCompilerControlCreateInfoAMD ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PipelineCompilerControlCreateInfoAMD>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePipelineCompilerControlCreateInfoAMD>
+ struct StructExtends<SurfaceFullScreenExclusiveInfoEXT, SwapchainCreateInfoKHR>
{
- using Type = PipelineCompilerControlCreateInfoAMD;
- };
-
- struct PipelineCoverageModulationStateCreateInfoNV
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineCoverageModulationStateCreateInfoNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PipelineCoverageModulationStateCreateInfoNV(VULKAN_HPP_NAMESPACE::PipelineCoverageModulationStateCreateFlagsNV flags_ = {}, VULKAN_HPP_NAMESPACE::CoverageModulationModeNV coverageModulationMode_ = VULKAN_HPP_NAMESPACE::CoverageModulationModeNV::eNone, VULKAN_HPP_NAMESPACE::Bool32 coverageModulationTableEnable_ = {}, uint32_t coverageModulationTableCount_ = {}, const float* pCoverageModulationTable_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), coverageModulationMode( coverageModulationMode_ ), coverageModulationTableEnable( coverageModulationTableEnable_ ), coverageModulationTableCount( coverageModulationTableCount_ ), pCoverageModulationTable( pCoverageModulationTable_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PipelineCoverageModulationStateCreateInfoNV( PipelineCoverageModulationStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PipelineCoverageModulationStateCreateInfoNV( VkPipelineCoverageModulationStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- PipelineCoverageModulationStateCreateInfoNV( VULKAN_HPP_NAMESPACE::PipelineCoverageModulationStateCreateFlagsNV flags_, VULKAN_HPP_NAMESPACE::CoverageModulationModeNV coverageModulationMode_, VULKAN_HPP_NAMESPACE::Bool32 coverageModulationTableEnable_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const float> const & coverageModulationTable_ )
- : flags( flags_ ), coverageModulationMode( coverageModulationMode_ ), coverageModulationTableEnable( coverageModulationTableEnable_ ), coverageModulationTableCount( static_cast<uint32_t>( coverageModulationTable_.size() ) ), pCoverageModulationTable( coverageModulationTable_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PipelineCoverageModulationStateCreateInfoNV & operator=( VkPipelineCoverageModulationStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineCoverageModulationStateCreateInfoNV const *>( &rhs );
- return *this;
- }
-
- PipelineCoverageModulationStateCreateInfoNV & operator=( PipelineCoverageModulationStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PipelineCoverageModulationStateCreateInfoNV ) );
- return *this;
- }
-
- PipelineCoverageModulationStateCreateInfoNV & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PipelineCoverageModulationStateCreateInfoNV & setFlags( VULKAN_HPP_NAMESPACE::PipelineCoverageModulationStateCreateFlagsNV flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- PipelineCoverageModulationStateCreateInfoNV & setCoverageModulationMode( VULKAN_HPP_NAMESPACE::CoverageModulationModeNV coverageModulationMode_ ) VULKAN_HPP_NOEXCEPT
- {
- coverageModulationMode = coverageModulationMode_;
- return *this;
- }
-
- PipelineCoverageModulationStateCreateInfoNV & setCoverageModulationTableEnable( VULKAN_HPP_NAMESPACE::Bool32 coverageModulationTableEnable_ ) VULKAN_HPP_NOEXCEPT
- {
- coverageModulationTableEnable = coverageModulationTableEnable_;
- return *this;
- }
-
- PipelineCoverageModulationStateCreateInfoNV & setCoverageModulationTableCount( uint32_t coverageModulationTableCount_ ) VULKAN_HPP_NOEXCEPT
- {
- coverageModulationTableCount = coverageModulationTableCount_;
- return *this;
- }
-
- PipelineCoverageModulationStateCreateInfoNV & setPCoverageModulationTable( const float* pCoverageModulationTable_ ) VULKAN_HPP_NOEXCEPT
- {
- pCoverageModulationTable = pCoverageModulationTable_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- PipelineCoverageModulationStateCreateInfoNV & setCoverageModulationTable( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const float> const & coverageModulationTable_ ) VULKAN_HPP_NOEXCEPT
- {
- coverageModulationTableCount = static_cast<uint32_t>( coverageModulationTable_.size() );
- pCoverageModulationTable = coverageModulationTable_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkPipelineCoverageModulationStateCreateInfoNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPipelineCoverageModulationStateCreateInfoNV*>( this );
- }
-
- operator VkPipelineCoverageModulationStateCreateInfoNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPipelineCoverageModulationStateCreateInfoNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PipelineCoverageModulationStateCreateInfoNV const& ) const = default;
-#else
- bool operator==( PipelineCoverageModulationStateCreateInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( coverageModulationMode == rhs.coverageModulationMode )
- && ( coverageModulationTableEnable == rhs.coverageModulationTableEnable )
- && ( coverageModulationTableCount == rhs.coverageModulationTableCount )
- && ( pCoverageModulationTable == rhs.pCoverageModulationTable );
- }
-
- bool operator!=( PipelineCoverageModulationStateCreateInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineCoverageModulationStateCreateInfoNV;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::PipelineCoverageModulationStateCreateFlagsNV flags = {};
- VULKAN_HPP_NAMESPACE::CoverageModulationModeNV coverageModulationMode = VULKAN_HPP_NAMESPACE::CoverageModulationModeNV::eNone;
- VULKAN_HPP_NAMESPACE::Bool32 coverageModulationTableEnable = {};
- uint32_t coverageModulationTableCount = {};
- const float* pCoverageModulationTable = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PipelineCoverageModulationStateCreateInfoNV ) == sizeof( VkPipelineCoverageModulationStateCreateInfoNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PipelineCoverageModulationStateCreateInfoNV>::value, "struct wrapper is not a standard layout!" );
-
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
template <>
- struct CppType<StructureType, StructureType::ePipelineCoverageModulationStateCreateInfoNV>
- {
- using Type = PipelineCoverageModulationStateCreateInfoNV;
- };
-
- struct PipelineCoverageReductionStateCreateInfoNV
+ struct StructExtends<SurfaceFullScreenExclusiveWin32InfoEXT, PhysicalDeviceSurfaceInfo2KHR>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineCoverageReductionStateCreateInfoNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PipelineCoverageReductionStateCreateInfoNV(VULKAN_HPP_NAMESPACE::PipelineCoverageReductionStateCreateFlagsNV flags_ = {}, VULKAN_HPP_NAMESPACE::CoverageReductionModeNV coverageReductionMode_ = VULKAN_HPP_NAMESPACE::CoverageReductionModeNV::eMerge) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), coverageReductionMode( coverageReductionMode_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PipelineCoverageReductionStateCreateInfoNV( PipelineCoverageReductionStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PipelineCoverageReductionStateCreateInfoNV( VkPipelineCoverageReductionStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PipelineCoverageReductionStateCreateInfoNV & operator=( VkPipelineCoverageReductionStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineCoverageReductionStateCreateInfoNV const *>( &rhs );
- return *this;
- }
-
- PipelineCoverageReductionStateCreateInfoNV & operator=( PipelineCoverageReductionStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PipelineCoverageReductionStateCreateInfoNV ) );
- return *this;
- }
-
- PipelineCoverageReductionStateCreateInfoNV & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PipelineCoverageReductionStateCreateInfoNV & setFlags( VULKAN_HPP_NAMESPACE::PipelineCoverageReductionStateCreateFlagsNV flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- PipelineCoverageReductionStateCreateInfoNV & setCoverageReductionMode( VULKAN_HPP_NAMESPACE::CoverageReductionModeNV coverageReductionMode_ ) VULKAN_HPP_NOEXCEPT
- {
- coverageReductionMode = coverageReductionMode_;
- return *this;
- }
-
-
- operator VkPipelineCoverageReductionStateCreateInfoNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPipelineCoverageReductionStateCreateInfoNV*>( this );
- }
-
- operator VkPipelineCoverageReductionStateCreateInfoNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPipelineCoverageReductionStateCreateInfoNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PipelineCoverageReductionStateCreateInfoNV const& ) const = default;
-#else
- bool operator==( PipelineCoverageReductionStateCreateInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( coverageReductionMode == rhs.coverageReductionMode );
- }
-
- bool operator!=( PipelineCoverageReductionStateCreateInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineCoverageReductionStateCreateInfoNV;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::PipelineCoverageReductionStateCreateFlagsNV flags = {};
- VULKAN_HPP_NAMESPACE::CoverageReductionModeNV coverageReductionMode = VULKAN_HPP_NAMESPACE::CoverageReductionModeNV::eMerge;
-
+ value = true
+ };
};
- static_assert( sizeof( PipelineCoverageReductionStateCreateInfoNV ) == sizeof( VkPipelineCoverageReductionStateCreateInfoNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PipelineCoverageReductionStateCreateInfoNV>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePipelineCoverageReductionStateCreateInfoNV>
+ struct StructExtends<SurfaceFullScreenExclusiveWin32InfoEXT, SwapchainCreateInfoKHR>
{
- using Type = PipelineCoverageReductionStateCreateInfoNV;
- };
-
- struct PipelineCoverageToColorStateCreateInfoNV
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineCoverageToColorStateCreateInfoNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PipelineCoverageToColorStateCreateInfoNV(VULKAN_HPP_NAMESPACE::PipelineCoverageToColorStateCreateFlagsNV flags_ = {}, VULKAN_HPP_NAMESPACE::Bool32 coverageToColorEnable_ = {}, uint32_t coverageToColorLocation_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), coverageToColorEnable( coverageToColorEnable_ ), coverageToColorLocation( coverageToColorLocation_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PipelineCoverageToColorStateCreateInfoNV( PipelineCoverageToColorStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PipelineCoverageToColorStateCreateInfoNV( VkPipelineCoverageToColorStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PipelineCoverageToColorStateCreateInfoNV & operator=( VkPipelineCoverageToColorStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineCoverageToColorStateCreateInfoNV const *>( &rhs );
- return *this;
- }
-
- PipelineCoverageToColorStateCreateInfoNV & operator=( PipelineCoverageToColorStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PipelineCoverageToColorStateCreateInfoNV ) );
- return *this;
- }
-
- PipelineCoverageToColorStateCreateInfoNV & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PipelineCoverageToColorStateCreateInfoNV & setFlags( VULKAN_HPP_NAMESPACE::PipelineCoverageToColorStateCreateFlagsNV flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- PipelineCoverageToColorStateCreateInfoNV & setCoverageToColorEnable( VULKAN_HPP_NAMESPACE::Bool32 coverageToColorEnable_ ) VULKAN_HPP_NOEXCEPT
- {
- coverageToColorEnable = coverageToColorEnable_;
- return *this;
- }
-
- PipelineCoverageToColorStateCreateInfoNV & setCoverageToColorLocation( uint32_t coverageToColorLocation_ ) VULKAN_HPP_NOEXCEPT
- {
- coverageToColorLocation = coverageToColorLocation_;
- return *this;
- }
-
-
- operator VkPipelineCoverageToColorStateCreateInfoNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPipelineCoverageToColorStateCreateInfoNV*>( this );
- }
-
- operator VkPipelineCoverageToColorStateCreateInfoNV &() VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<VkPipelineCoverageToColorStateCreateInfoNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PipelineCoverageToColorStateCreateInfoNV const& ) const = default;
-#else
- bool operator==( PipelineCoverageToColorStateCreateInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( coverageToColorEnable == rhs.coverageToColorEnable )
- && ( coverageToColorLocation == rhs.coverageToColorLocation );
- }
-
- bool operator!=( PipelineCoverageToColorStateCreateInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineCoverageToColorStateCreateInfoNV;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::PipelineCoverageToColorStateCreateFlagsNV flags = {};
- VULKAN_HPP_NAMESPACE::Bool32 coverageToColorEnable = {};
- uint32_t coverageToColorLocation = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PipelineCoverageToColorStateCreateInfoNV ) == sizeof( VkPipelineCoverageToColorStateCreateInfoNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PipelineCoverageToColorStateCreateInfoNV>::value, "struct wrapper is not a standard layout!" );
-
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
template <>
- struct CppType<StructureType, StructureType::ePipelineCoverageToColorStateCreateInfoNV>
- {
- using Type = PipelineCoverageToColorStateCreateInfoNV;
- };
-
- struct PipelineCreationFeedbackEXT
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PipelineCreationFeedbackEXT(VULKAN_HPP_NAMESPACE::PipelineCreationFeedbackFlagsEXT flags_ = {}, uint64_t duration_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), duration( duration_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PipelineCreationFeedbackEXT( PipelineCreationFeedbackEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PipelineCreationFeedbackEXT( VkPipelineCreationFeedbackEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PipelineCreationFeedbackEXT & operator=( VkPipelineCreationFeedbackEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineCreationFeedbackEXT const *>( &rhs );
- return *this;
- }
-
- PipelineCreationFeedbackEXT & operator=( PipelineCreationFeedbackEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PipelineCreationFeedbackEXT ) );
- return *this;
- }
-
-
- operator VkPipelineCreationFeedbackEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPipelineCreationFeedbackEXT*>( this );
- }
-
- operator VkPipelineCreationFeedbackEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPipelineCreationFeedbackEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PipelineCreationFeedbackEXT const& ) const = default;
-#else
- bool operator==( PipelineCreationFeedbackEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( flags == rhs.flags )
- && ( duration == rhs.duration );
- }
-
- bool operator!=( PipelineCreationFeedbackEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::PipelineCreationFeedbackFlagsEXT flags = {};
- uint64_t duration = {};
-
- };
- static_assert( sizeof( PipelineCreationFeedbackEXT ) == sizeof( VkPipelineCreationFeedbackEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PipelineCreationFeedbackEXT>::value, "struct wrapper is not a standard layout!" );
-
- struct PipelineCreationFeedbackCreateInfoEXT
+ struct StructExtends<SurfaceProtectedCapabilitiesKHR, SurfaceCapabilities2KHR>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineCreationFeedbackCreateInfoEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PipelineCreationFeedbackCreateInfoEXT(VULKAN_HPP_NAMESPACE::PipelineCreationFeedbackEXT* pPipelineCreationFeedback_ = {}, uint32_t pipelineStageCreationFeedbackCount_ = {}, VULKAN_HPP_NAMESPACE::PipelineCreationFeedbackEXT* pPipelineStageCreationFeedbacks_ = {}) VULKAN_HPP_NOEXCEPT
- : pPipelineCreationFeedback( pPipelineCreationFeedback_ ), pipelineStageCreationFeedbackCount( pipelineStageCreationFeedbackCount_ ), pPipelineStageCreationFeedbacks( pPipelineStageCreationFeedbacks_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PipelineCreationFeedbackCreateInfoEXT( PipelineCreationFeedbackCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PipelineCreationFeedbackCreateInfoEXT( VkPipelineCreationFeedbackCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- PipelineCreationFeedbackCreateInfoEXT( VULKAN_HPP_NAMESPACE::PipelineCreationFeedbackEXT* pPipelineCreationFeedback_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<VULKAN_HPP_NAMESPACE::PipelineCreationFeedbackEXT> const & pipelineStageCreationFeedbacks_ )
- : pPipelineCreationFeedback( pPipelineCreationFeedback_ ), pipelineStageCreationFeedbackCount( static_cast<uint32_t>( pipelineStageCreationFeedbacks_.size() ) ), pPipelineStageCreationFeedbacks( pipelineStageCreationFeedbacks_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PipelineCreationFeedbackCreateInfoEXT & operator=( VkPipelineCreationFeedbackCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineCreationFeedbackCreateInfoEXT const *>( &rhs );
- return *this;
- }
-
- PipelineCreationFeedbackCreateInfoEXT & operator=( PipelineCreationFeedbackCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PipelineCreationFeedbackCreateInfoEXT ) );
- return *this;
- }
-
- PipelineCreationFeedbackCreateInfoEXT & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PipelineCreationFeedbackCreateInfoEXT & setPPipelineCreationFeedback( VULKAN_HPP_NAMESPACE::PipelineCreationFeedbackEXT* pPipelineCreationFeedback_ ) VULKAN_HPP_NOEXCEPT
- {
- pPipelineCreationFeedback = pPipelineCreationFeedback_;
- return *this;
- }
-
- PipelineCreationFeedbackCreateInfoEXT & setPipelineStageCreationFeedbackCount( uint32_t pipelineStageCreationFeedbackCount_ ) VULKAN_HPP_NOEXCEPT
- {
- pipelineStageCreationFeedbackCount = pipelineStageCreationFeedbackCount_;
- return *this;
- }
-
- PipelineCreationFeedbackCreateInfoEXT & setPPipelineStageCreationFeedbacks( VULKAN_HPP_NAMESPACE::PipelineCreationFeedbackEXT* pPipelineStageCreationFeedbacks_ ) VULKAN_HPP_NOEXCEPT
- {
- pPipelineStageCreationFeedbacks = pPipelineStageCreationFeedbacks_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- PipelineCreationFeedbackCreateInfoEXT & setPipelineStageCreationFeedbacks( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<VULKAN_HPP_NAMESPACE::PipelineCreationFeedbackEXT> const & pipelineStageCreationFeedbacks_ ) VULKAN_HPP_NOEXCEPT
- {
- pipelineStageCreationFeedbackCount = static_cast<uint32_t>( pipelineStageCreationFeedbacks_.size() );
- pPipelineStageCreationFeedbacks = pipelineStageCreationFeedbacks_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkPipelineCreationFeedbackCreateInfoEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPipelineCreationFeedbackCreateInfoEXT*>( this );
- }
-
- operator VkPipelineCreationFeedbackCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPipelineCreationFeedbackCreateInfoEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PipelineCreationFeedbackCreateInfoEXT const& ) const = default;
-#else
- bool operator==( PipelineCreationFeedbackCreateInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( pPipelineCreationFeedback == rhs.pPipelineCreationFeedback )
- && ( pipelineStageCreationFeedbackCount == rhs.pipelineStageCreationFeedbackCount )
- && ( pPipelineStageCreationFeedbacks == rhs.pPipelineStageCreationFeedbacks );
- }
-
- bool operator!=( PipelineCreationFeedbackCreateInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineCreationFeedbackCreateInfoEXT;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::PipelineCreationFeedbackEXT* pPipelineCreationFeedback = {};
- uint32_t pipelineStageCreationFeedbackCount = {};
- VULKAN_HPP_NAMESPACE::PipelineCreationFeedbackEXT* pPipelineStageCreationFeedbacks = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PipelineCreationFeedbackCreateInfoEXT ) == sizeof( VkPipelineCreationFeedbackCreateInfoEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PipelineCreationFeedbackCreateInfoEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePipelineCreationFeedbackCreateInfoEXT>
- {
- using Type = PipelineCreationFeedbackCreateInfoEXT;
- };
-
- struct PipelineDiscardRectangleStateCreateInfoEXT
+ struct StructExtends<SwapchainCounterCreateInfoEXT, SwapchainCreateInfoKHR>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineDiscardRectangleStateCreateInfoEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PipelineDiscardRectangleStateCreateInfoEXT(VULKAN_HPP_NAMESPACE::PipelineDiscardRectangleStateCreateFlagsEXT flags_ = {}, VULKAN_HPP_NAMESPACE::DiscardRectangleModeEXT discardRectangleMode_ = VULKAN_HPP_NAMESPACE::DiscardRectangleModeEXT::eInclusive, uint32_t discardRectangleCount_ = {}, const VULKAN_HPP_NAMESPACE::Rect2D* pDiscardRectangles_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), discardRectangleMode( discardRectangleMode_ ), discardRectangleCount( discardRectangleCount_ ), pDiscardRectangles( pDiscardRectangles_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PipelineDiscardRectangleStateCreateInfoEXT( PipelineDiscardRectangleStateCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PipelineDiscardRectangleStateCreateInfoEXT( VkPipelineDiscardRectangleStateCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- PipelineDiscardRectangleStateCreateInfoEXT( VULKAN_HPP_NAMESPACE::PipelineDiscardRectangleStateCreateFlagsEXT flags_, VULKAN_HPP_NAMESPACE::DiscardRectangleModeEXT discardRectangleMode_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Rect2D> const & discardRectangles_ )
- : flags( flags_ ), discardRectangleMode( discardRectangleMode_ ), discardRectangleCount( static_cast<uint32_t>( discardRectangles_.size() ) ), pDiscardRectangles( discardRectangles_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PipelineDiscardRectangleStateCreateInfoEXT & operator=( VkPipelineDiscardRectangleStateCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineDiscardRectangleStateCreateInfoEXT const *>( &rhs );
- return *this;
- }
-
- PipelineDiscardRectangleStateCreateInfoEXT & operator=( PipelineDiscardRectangleStateCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PipelineDiscardRectangleStateCreateInfoEXT ) );
- return *this;
- }
-
- PipelineDiscardRectangleStateCreateInfoEXT & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PipelineDiscardRectangleStateCreateInfoEXT & setFlags( VULKAN_HPP_NAMESPACE::PipelineDiscardRectangleStateCreateFlagsEXT flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- PipelineDiscardRectangleStateCreateInfoEXT & setDiscardRectangleMode( VULKAN_HPP_NAMESPACE::DiscardRectangleModeEXT discardRectangleMode_ ) VULKAN_HPP_NOEXCEPT
- {
- discardRectangleMode = discardRectangleMode_;
- return *this;
- }
-
- PipelineDiscardRectangleStateCreateInfoEXT & setDiscardRectangleCount( uint32_t discardRectangleCount_ ) VULKAN_HPP_NOEXCEPT
- {
- discardRectangleCount = discardRectangleCount_;
- return *this;
- }
-
- PipelineDiscardRectangleStateCreateInfoEXT & setPDiscardRectangles( const VULKAN_HPP_NAMESPACE::Rect2D* pDiscardRectangles_ ) VULKAN_HPP_NOEXCEPT
- {
- pDiscardRectangles = pDiscardRectangles_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- PipelineDiscardRectangleStateCreateInfoEXT & setDiscardRectangles( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Rect2D> const & discardRectangles_ ) VULKAN_HPP_NOEXCEPT
- {
- discardRectangleCount = static_cast<uint32_t>( discardRectangles_.size() );
- pDiscardRectangles = discardRectangles_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkPipelineDiscardRectangleStateCreateInfoEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPipelineDiscardRectangleStateCreateInfoEXT*>( this );
- }
-
- operator VkPipelineDiscardRectangleStateCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPipelineDiscardRectangleStateCreateInfoEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PipelineDiscardRectangleStateCreateInfoEXT const& ) const = default;
-#else
- bool operator==( PipelineDiscardRectangleStateCreateInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( discardRectangleMode == rhs.discardRectangleMode )
- && ( discardRectangleCount == rhs.discardRectangleCount )
- && ( pDiscardRectangles == rhs.pDiscardRectangles );
- }
-
- bool operator!=( PipelineDiscardRectangleStateCreateInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineDiscardRectangleStateCreateInfoEXT;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::PipelineDiscardRectangleStateCreateFlagsEXT flags = {};
- VULKAN_HPP_NAMESPACE::DiscardRectangleModeEXT discardRectangleMode = VULKAN_HPP_NAMESPACE::DiscardRectangleModeEXT::eInclusive;
- uint32_t discardRectangleCount = {};
- const VULKAN_HPP_NAMESPACE::Rect2D* pDiscardRectangles = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PipelineDiscardRectangleStateCreateInfoEXT ) == sizeof( VkPipelineDiscardRectangleStateCreateInfoEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PipelineDiscardRectangleStateCreateInfoEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePipelineDiscardRectangleStateCreateInfoEXT>
- {
- using Type = PipelineDiscardRectangleStateCreateInfoEXT;
- };
-
- struct PipelineFragmentShadingRateEnumStateCreateInfoNV
+ struct StructExtends<SwapchainDisplayNativeHdrCreateInfoAMD, SwapchainCreateInfoKHR>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineFragmentShadingRateEnumStateCreateInfoNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR_14 PipelineFragmentShadingRateEnumStateCreateInfoNV(VULKAN_HPP_NAMESPACE::FragmentShadingRateTypeNV shadingRateType_ = VULKAN_HPP_NAMESPACE::FragmentShadingRateTypeNV::eFragmentSize, VULKAN_HPP_NAMESPACE::FragmentShadingRateNV shadingRate_ = VULKAN_HPP_NAMESPACE::FragmentShadingRateNV::e1InvocationPerPixel, std::array<VULKAN_HPP_NAMESPACE::FragmentShadingRateCombinerOpKHR,2> const& combinerOps_ = { { VULKAN_HPP_NAMESPACE::FragmentShadingRateCombinerOpKHR::eKeep, VULKAN_HPP_NAMESPACE::FragmentShadingRateCombinerOpKHR::eKeep } }) VULKAN_HPP_NOEXCEPT
- : shadingRateType( shadingRateType_ ), shadingRate( shadingRate_ ), combinerOps( combinerOps_ )
- {}
-
- VULKAN_HPP_CONSTEXPR_14 PipelineFragmentShadingRateEnumStateCreateInfoNV( PipelineFragmentShadingRateEnumStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PipelineFragmentShadingRateEnumStateCreateInfoNV( VkPipelineFragmentShadingRateEnumStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PipelineFragmentShadingRateEnumStateCreateInfoNV & operator=( VkPipelineFragmentShadingRateEnumStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineFragmentShadingRateEnumStateCreateInfoNV const *>( &rhs );
- return *this;
- }
-
- PipelineFragmentShadingRateEnumStateCreateInfoNV & operator=( PipelineFragmentShadingRateEnumStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PipelineFragmentShadingRateEnumStateCreateInfoNV ) );
- return *this;
- }
-
- PipelineFragmentShadingRateEnumStateCreateInfoNV & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PipelineFragmentShadingRateEnumStateCreateInfoNV & setShadingRateType( VULKAN_HPP_NAMESPACE::FragmentShadingRateTypeNV shadingRateType_ ) VULKAN_HPP_NOEXCEPT
- {
- shadingRateType = shadingRateType_;
- return *this;
- }
-
- PipelineFragmentShadingRateEnumStateCreateInfoNV & setShadingRate( VULKAN_HPP_NAMESPACE::FragmentShadingRateNV shadingRate_ ) VULKAN_HPP_NOEXCEPT
- {
- shadingRate = shadingRate_;
- return *this;
- }
-
- PipelineFragmentShadingRateEnumStateCreateInfoNV & setCombinerOps( std::array<VULKAN_HPP_NAMESPACE::FragmentShadingRateCombinerOpKHR,2> combinerOps_ ) VULKAN_HPP_NOEXCEPT
- {
- combinerOps = combinerOps_;
- return *this;
- }
-
-
- operator VkPipelineFragmentShadingRateEnumStateCreateInfoNV const&() const VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<const VkPipelineFragmentShadingRateEnumStateCreateInfoNV*>( this );
- }
-
- operator VkPipelineFragmentShadingRateEnumStateCreateInfoNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPipelineFragmentShadingRateEnumStateCreateInfoNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PipelineFragmentShadingRateEnumStateCreateInfoNV const& ) const = default;
-#else
- bool operator==( PipelineFragmentShadingRateEnumStateCreateInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( shadingRateType == rhs.shadingRateType )
- && ( shadingRate == rhs.shadingRate )
- && ( combinerOps == rhs.combinerOps );
- }
-
- bool operator!=( PipelineFragmentShadingRateEnumStateCreateInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineFragmentShadingRateEnumStateCreateInfoNV;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::FragmentShadingRateTypeNV shadingRateType = VULKAN_HPP_NAMESPACE::FragmentShadingRateTypeNV::eFragmentSize;
- VULKAN_HPP_NAMESPACE::FragmentShadingRateNV shadingRate = VULKAN_HPP_NAMESPACE::FragmentShadingRateNV::e1InvocationPerPixel;
- VULKAN_HPP_NAMESPACE::ArrayWrapper1D<VULKAN_HPP_NAMESPACE::FragmentShadingRateCombinerOpKHR, 2> combinerOps = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PipelineFragmentShadingRateEnumStateCreateInfoNV ) == sizeof( VkPipelineFragmentShadingRateEnumStateCreateInfoNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PipelineFragmentShadingRateEnumStateCreateInfoNV>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePipelineFragmentShadingRateEnumStateCreateInfoNV>
- {
- using Type = PipelineFragmentShadingRateEnumStateCreateInfoNV;
- };
-
- struct PipelineFragmentShadingRateStateCreateInfoKHR
+ struct StructExtends<TextureLODGatherFormatPropertiesAMD, ImageFormatProperties2>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineFragmentShadingRateStateCreateInfoKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR_14 PipelineFragmentShadingRateStateCreateInfoKHR(VULKAN_HPP_NAMESPACE::Extent2D fragmentSize_ = {}, std::array<VULKAN_HPP_NAMESPACE::FragmentShadingRateCombinerOpKHR,2> const& combinerOps_ = { { VULKAN_HPP_NAMESPACE::FragmentShadingRateCombinerOpKHR::eKeep, VULKAN_HPP_NAMESPACE::FragmentShadingRateCombinerOpKHR::eKeep } }) VULKAN_HPP_NOEXCEPT
- : fragmentSize( fragmentSize_ ), combinerOps( combinerOps_ )
- {}
-
- VULKAN_HPP_CONSTEXPR_14 PipelineFragmentShadingRateStateCreateInfoKHR( PipelineFragmentShadingRateStateCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PipelineFragmentShadingRateStateCreateInfoKHR( VkPipelineFragmentShadingRateStateCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PipelineFragmentShadingRateStateCreateInfoKHR & operator=( VkPipelineFragmentShadingRateStateCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineFragmentShadingRateStateCreateInfoKHR const *>( &rhs );
- return *this;
- }
-
- PipelineFragmentShadingRateStateCreateInfoKHR & operator=( PipelineFragmentShadingRateStateCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PipelineFragmentShadingRateStateCreateInfoKHR ) );
- return *this;
- }
-
- PipelineFragmentShadingRateStateCreateInfoKHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PipelineFragmentShadingRateStateCreateInfoKHR & setFragmentSize( VULKAN_HPP_NAMESPACE::Extent2D const & fragmentSize_ ) VULKAN_HPP_NOEXCEPT
- {
- fragmentSize = fragmentSize_;
- return *this;
- }
-
- PipelineFragmentShadingRateStateCreateInfoKHR & setCombinerOps( std::array<VULKAN_HPP_NAMESPACE::FragmentShadingRateCombinerOpKHR,2> combinerOps_ ) VULKAN_HPP_NOEXCEPT
- {
- combinerOps = combinerOps_;
- return *this;
- }
-
-
- operator VkPipelineFragmentShadingRateStateCreateInfoKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPipelineFragmentShadingRateStateCreateInfoKHR*>( this );
- }
-
- operator VkPipelineFragmentShadingRateStateCreateInfoKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPipelineFragmentShadingRateStateCreateInfoKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PipelineFragmentShadingRateStateCreateInfoKHR const& ) const = default;
-#else
- bool operator==( PipelineFragmentShadingRateStateCreateInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( fragmentSize == rhs.fragmentSize )
- && ( combinerOps == rhs.combinerOps );
- }
-
- bool operator!=( PipelineFragmentShadingRateStateCreateInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineFragmentShadingRateStateCreateInfoKHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::Extent2D fragmentSize = {};
- VULKAN_HPP_NAMESPACE::ArrayWrapper1D<VULKAN_HPP_NAMESPACE::FragmentShadingRateCombinerOpKHR, 2> combinerOps = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PipelineFragmentShadingRateStateCreateInfoKHR ) == sizeof( VkPipelineFragmentShadingRateStateCreateInfoKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PipelineFragmentShadingRateStateCreateInfoKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePipelineFragmentShadingRateStateCreateInfoKHR>
+ struct StructExtends<TimelineSemaphoreSubmitInfo, SubmitInfo>
{
- using Type = PipelineFragmentShadingRateStateCreateInfoKHR;
- };
-
- struct PipelineRasterizationConservativeStateCreateInfoEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineRasterizationConservativeStateCreateInfoEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PipelineRasterizationConservativeStateCreateInfoEXT(VULKAN_HPP_NAMESPACE::PipelineRasterizationConservativeStateCreateFlagsEXT flags_ = {}, VULKAN_HPP_NAMESPACE::ConservativeRasterizationModeEXT conservativeRasterizationMode_ = VULKAN_HPP_NAMESPACE::ConservativeRasterizationModeEXT::eDisabled, float extraPrimitiveOverestimationSize_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), conservativeRasterizationMode( conservativeRasterizationMode_ ), extraPrimitiveOverestimationSize( extraPrimitiveOverestimationSize_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PipelineRasterizationConservativeStateCreateInfoEXT( PipelineRasterizationConservativeStateCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PipelineRasterizationConservativeStateCreateInfoEXT( VkPipelineRasterizationConservativeStateCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PipelineRasterizationConservativeStateCreateInfoEXT & operator=( VkPipelineRasterizationConservativeStateCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineRasterizationConservativeStateCreateInfoEXT const *>( &rhs );
- return *this;
- }
-
- PipelineRasterizationConservativeStateCreateInfoEXT & operator=( PipelineRasterizationConservativeStateCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PipelineRasterizationConservativeStateCreateInfoEXT ) );
- return *this;
- }
-
- PipelineRasterizationConservativeStateCreateInfoEXT & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PipelineRasterizationConservativeStateCreateInfoEXT & setFlags( VULKAN_HPP_NAMESPACE::PipelineRasterizationConservativeStateCreateFlagsEXT flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- PipelineRasterizationConservativeStateCreateInfoEXT & setConservativeRasterizationMode( VULKAN_HPP_NAMESPACE::ConservativeRasterizationModeEXT conservativeRasterizationMode_ ) VULKAN_HPP_NOEXCEPT
- {
- conservativeRasterizationMode = conservativeRasterizationMode_;
- return *this;
- }
-
- PipelineRasterizationConservativeStateCreateInfoEXT & setExtraPrimitiveOverestimationSize( float extraPrimitiveOverestimationSize_ ) VULKAN_HPP_NOEXCEPT
- {
- extraPrimitiveOverestimationSize = extraPrimitiveOverestimationSize_;
- return *this;
- }
-
-
- operator VkPipelineRasterizationConservativeStateCreateInfoEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPipelineRasterizationConservativeStateCreateInfoEXT*>( this );
- }
-
- operator VkPipelineRasterizationConservativeStateCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPipelineRasterizationConservativeStateCreateInfoEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PipelineRasterizationConservativeStateCreateInfoEXT const& ) const = default;
-#else
- bool operator==( PipelineRasterizationConservativeStateCreateInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( conservativeRasterizationMode == rhs.conservativeRasterizationMode )
- && ( extraPrimitiveOverestimationSize == rhs.extraPrimitiveOverestimationSize );
- }
-
- bool operator!=( PipelineRasterizationConservativeStateCreateInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineRasterizationConservativeStateCreateInfoEXT;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::PipelineRasterizationConservativeStateCreateFlagsEXT flags = {};
- VULKAN_HPP_NAMESPACE::ConservativeRasterizationModeEXT conservativeRasterizationMode = VULKAN_HPP_NAMESPACE::ConservativeRasterizationModeEXT::eDisabled;
- float extraPrimitiveOverestimationSize = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PipelineRasterizationConservativeStateCreateInfoEXT ) == sizeof( VkPipelineRasterizationConservativeStateCreateInfoEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PipelineRasterizationConservativeStateCreateInfoEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePipelineRasterizationConservativeStateCreateInfoEXT>
- {
- using Type = PipelineRasterizationConservativeStateCreateInfoEXT;
- };
-
- struct PipelineRasterizationDepthClipStateCreateInfoEXT
+ struct StructExtends<TimelineSemaphoreSubmitInfo, BindSparseInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineRasterizationDepthClipStateCreateInfoEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PipelineRasterizationDepthClipStateCreateInfoEXT(VULKAN_HPP_NAMESPACE::PipelineRasterizationDepthClipStateCreateFlagsEXT flags_ = {}, VULKAN_HPP_NAMESPACE::Bool32 depthClipEnable_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), depthClipEnable( depthClipEnable_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PipelineRasterizationDepthClipStateCreateInfoEXT( PipelineRasterizationDepthClipStateCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PipelineRasterizationDepthClipStateCreateInfoEXT( VkPipelineRasterizationDepthClipStateCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PipelineRasterizationDepthClipStateCreateInfoEXT & operator=( VkPipelineRasterizationDepthClipStateCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineRasterizationDepthClipStateCreateInfoEXT const *>( &rhs );
- return *this;
- }
-
- PipelineRasterizationDepthClipStateCreateInfoEXT & operator=( PipelineRasterizationDepthClipStateCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PipelineRasterizationDepthClipStateCreateInfoEXT ) );
- return *this;
- }
-
- PipelineRasterizationDepthClipStateCreateInfoEXT & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PipelineRasterizationDepthClipStateCreateInfoEXT & setFlags( VULKAN_HPP_NAMESPACE::PipelineRasterizationDepthClipStateCreateFlagsEXT flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- PipelineRasterizationDepthClipStateCreateInfoEXT & setDepthClipEnable( VULKAN_HPP_NAMESPACE::Bool32 depthClipEnable_ ) VULKAN_HPP_NOEXCEPT
- {
- depthClipEnable = depthClipEnable_;
- return *this;
- }
-
-
- operator VkPipelineRasterizationDepthClipStateCreateInfoEXT const&() const VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<const VkPipelineRasterizationDepthClipStateCreateInfoEXT*>( this );
- }
-
- operator VkPipelineRasterizationDepthClipStateCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPipelineRasterizationDepthClipStateCreateInfoEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PipelineRasterizationDepthClipStateCreateInfoEXT const& ) const = default;
-#else
- bool operator==( PipelineRasterizationDepthClipStateCreateInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( depthClipEnable == rhs.depthClipEnable );
- }
-
- bool operator!=( PipelineRasterizationDepthClipStateCreateInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineRasterizationDepthClipStateCreateInfoEXT;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::PipelineRasterizationDepthClipStateCreateFlagsEXT flags = {};
- VULKAN_HPP_NAMESPACE::Bool32 depthClipEnable = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PipelineRasterizationDepthClipStateCreateInfoEXT ) == sizeof( VkPipelineRasterizationDepthClipStateCreateInfoEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PipelineRasterizationDepthClipStateCreateInfoEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePipelineRasterizationDepthClipStateCreateInfoEXT>
+ struct StructExtends<ValidationFeaturesEXT, InstanceCreateInfo>
{
- using Type = PipelineRasterizationDepthClipStateCreateInfoEXT;
- };
-
- struct PipelineRasterizationLineStateCreateInfoEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineRasterizationLineStateCreateInfoEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PipelineRasterizationLineStateCreateInfoEXT(VULKAN_HPP_NAMESPACE::LineRasterizationModeEXT lineRasterizationMode_ = VULKAN_HPP_NAMESPACE::LineRasterizationModeEXT::eDefault, VULKAN_HPP_NAMESPACE::Bool32 stippledLineEnable_ = {}, uint32_t lineStippleFactor_ = {}, uint16_t lineStipplePattern_ = {}) VULKAN_HPP_NOEXCEPT
- : lineRasterizationMode( lineRasterizationMode_ ), stippledLineEnable( stippledLineEnable_ ), lineStippleFactor( lineStippleFactor_ ), lineStipplePattern( lineStipplePattern_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PipelineRasterizationLineStateCreateInfoEXT( PipelineRasterizationLineStateCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PipelineRasterizationLineStateCreateInfoEXT( VkPipelineRasterizationLineStateCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PipelineRasterizationLineStateCreateInfoEXT & operator=( VkPipelineRasterizationLineStateCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineRasterizationLineStateCreateInfoEXT const *>( &rhs );
- return *this;
- }
-
- PipelineRasterizationLineStateCreateInfoEXT & operator=( PipelineRasterizationLineStateCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PipelineRasterizationLineStateCreateInfoEXT ) );
- return *this;
- }
-
- PipelineRasterizationLineStateCreateInfoEXT & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PipelineRasterizationLineStateCreateInfoEXT & setLineRasterizationMode( VULKAN_HPP_NAMESPACE::LineRasterizationModeEXT lineRasterizationMode_ ) VULKAN_HPP_NOEXCEPT
- {
- lineRasterizationMode = lineRasterizationMode_;
- return *this;
- }
-
- PipelineRasterizationLineStateCreateInfoEXT & setStippledLineEnable( VULKAN_HPP_NAMESPACE::Bool32 stippledLineEnable_ ) VULKAN_HPP_NOEXCEPT
- {
- stippledLineEnable = stippledLineEnable_;
- return *this;
- }
-
- PipelineRasterizationLineStateCreateInfoEXT & setLineStippleFactor( uint32_t lineStippleFactor_ ) VULKAN_HPP_NOEXCEPT
- {
- lineStippleFactor = lineStippleFactor_;
- return *this;
- }
-
- PipelineRasterizationLineStateCreateInfoEXT & setLineStipplePattern( uint16_t lineStipplePattern_ ) VULKAN_HPP_NOEXCEPT
- {
- lineStipplePattern = lineStipplePattern_;
- return *this;
- }
-
-
- operator VkPipelineRasterizationLineStateCreateInfoEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPipelineRasterizationLineStateCreateInfoEXT*>( this );
- }
-
- operator VkPipelineRasterizationLineStateCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPipelineRasterizationLineStateCreateInfoEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PipelineRasterizationLineStateCreateInfoEXT const& ) const = default;
-#else
- bool operator==( PipelineRasterizationLineStateCreateInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( lineRasterizationMode == rhs.lineRasterizationMode )
- && ( stippledLineEnable == rhs.stippledLineEnable )
- && ( lineStippleFactor == rhs.lineStippleFactor )
- && ( lineStipplePattern == rhs.lineStipplePattern );
- }
-
- bool operator!=( PipelineRasterizationLineStateCreateInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineRasterizationLineStateCreateInfoEXT;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::LineRasterizationModeEXT lineRasterizationMode = VULKAN_HPP_NAMESPACE::LineRasterizationModeEXT::eDefault;
- VULKAN_HPP_NAMESPACE::Bool32 stippledLineEnable = {};
- uint32_t lineStippleFactor = {};
- uint16_t lineStipplePattern = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PipelineRasterizationLineStateCreateInfoEXT ) == sizeof( VkPipelineRasterizationLineStateCreateInfoEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PipelineRasterizationLineStateCreateInfoEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::ePipelineRasterizationLineStateCreateInfoEXT>
- {
- using Type = PipelineRasterizationLineStateCreateInfoEXT;
- };
-
- struct PipelineRasterizationStateRasterizationOrderAMD
+ struct StructExtends<ValidationFlagsEXT, InstanceCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineRasterizationStateRasterizationOrderAMD;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PipelineRasterizationStateRasterizationOrderAMD(VULKAN_HPP_NAMESPACE::RasterizationOrderAMD rasterizationOrder_ = VULKAN_HPP_NAMESPACE::RasterizationOrderAMD::eStrict) VULKAN_HPP_NOEXCEPT
- : rasterizationOrder( rasterizationOrder_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PipelineRasterizationStateRasterizationOrderAMD( PipelineRasterizationStateRasterizationOrderAMD const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PipelineRasterizationStateRasterizationOrderAMD( VkPipelineRasterizationStateRasterizationOrderAMD const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PipelineRasterizationStateRasterizationOrderAMD & operator=( VkPipelineRasterizationStateRasterizationOrderAMD const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineRasterizationStateRasterizationOrderAMD const *>( &rhs );
- return *this;
- }
-
- PipelineRasterizationStateRasterizationOrderAMD & operator=( PipelineRasterizationStateRasterizationOrderAMD const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PipelineRasterizationStateRasterizationOrderAMD ) );
- return *this;
- }
-
- PipelineRasterizationStateRasterizationOrderAMD & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PipelineRasterizationStateRasterizationOrderAMD & setRasterizationOrder( VULKAN_HPP_NAMESPACE::RasterizationOrderAMD rasterizationOrder_ ) VULKAN_HPP_NOEXCEPT
- {
- rasterizationOrder = rasterizationOrder_;
- return *this;
- }
-
-
- operator VkPipelineRasterizationStateRasterizationOrderAMD const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPipelineRasterizationStateRasterizationOrderAMD*>( this );
- }
-
- operator VkPipelineRasterizationStateRasterizationOrderAMD &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPipelineRasterizationStateRasterizationOrderAMD*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PipelineRasterizationStateRasterizationOrderAMD const& ) const = default;
-#else
- bool operator==( PipelineRasterizationStateRasterizationOrderAMD const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( rasterizationOrder == rhs.rasterizationOrder );
- }
-
- bool operator!=( PipelineRasterizationStateRasterizationOrderAMD const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineRasterizationStateRasterizationOrderAMD;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::RasterizationOrderAMD rasterizationOrder = VULKAN_HPP_NAMESPACE::RasterizationOrderAMD::eStrict;
-
+ value = true
+ };
};
- static_assert( sizeof( PipelineRasterizationStateRasterizationOrderAMD ) == sizeof( VkPipelineRasterizationStateRasterizationOrderAMD ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PipelineRasterizationStateRasterizationOrderAMD>::value, "struct wrapper is not a standard layout!" );
-
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
template <>
- struct CppType<StructureType, StructureType::ePipelineRasterizationStateRasterizationOrderAMD>
+ struct StructExtends<VideoDecodeH264CapabilitiesEXT, VideoCapabilitiesKHR>
{
- using Type = PipelineRasterizationStateRasterizationOrderAMD;
- };
-
- struct PipelineRasterizationStateStreamCreateInfoEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineRasterizationStateStreamCreateInfoEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PipelineRasterizationStateStreamCreateInfoEXT(VULKAN_HPP_NAMESPACE::PipelineRasterizationStateStreamCreateFlagsEXT flags_ = {}, uint32_t rasterizationStream_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), rasterizationStream( rasterizationStream_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PipelineRasterizationStateStreamCreateInfoEXT( PipelineRasterizationStateStreamCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PipelineRasterizationStateStreamCreateInfoEXT( VkPipelineRasterizationStateStreamCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PipelineRasterizationStateStreamCreateInfoEXT & operator=( VkPipelineRasterizationStateStreamCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineRasterizationStateStreamCreateInfoEXT const *>( &rhs );
- return *this;
- }
-
- PipelineRasterizationStateStreamCreateInfoEXT & operator=( PipelineRasterizationStateStreamCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PipelineRasterizationStateStreamCreateInfoEXT ) );
- return *this;
- }
-
- PipelineRasterizationStateStreamCreateInfoEXT & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PipelineRasterizationStateStreamCreateInfoEXT & setFlags( VULKAN_HPP_NAMESPACE::PipelineRasterizationStateStreamCreateFlagsEXT flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- PipelineRasterizationStateStreamCreateInfoEXT & setRasterizationStream( uint32_t rasterizationStream_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- rasterizationStream = rasterizationStream_;
- return *this;
- }
-
-
- operator VkPipelineRasterizationStateStreamCreateInfoEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPipelineRasterizationStateStreamCreateInfoEXT*>( this );
- }
-
- operator VkPipelineRasterizationStateStreamCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPipelineRasterizationStateStreamCreateInfoEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PipelineRasterizationStateStreamCreateInfoEXT const& ) const = default;
-#else
- bool operator==( PipelineRasterizationStateStreamCreateInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( rasterizationStream == rhs.rasterizationStream );
- }
-
- bool operator!=( PipelineRasterizationStateStreamCreateInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineRasterizationStateStreamCreateInfoEXT;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::PipelineRasterizationStateStreamCreateFlagsEXT flags = {};
- uint32_t rasterizationStream = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PipelineRasterizationStateStreamCreateInfoEXT ) == sizeof( VkPipelineRasterizationStateStreamCreateInfoEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PipelineRasterizationStateStreamCreateInfoEXT>::value, "struct wrapper is not a standard layout!" );
-
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
template <>
- struct CppType<StructureType, StructureType::ePipelineRasterizationStateStreamCreateInfoEXT>
+ struct StructExtends<VideoDecodeH264DpbSlotInfoEXT, VideoReferenceSlotKHR>
{
- using Type = PipelineRasterizationStateStreamCreateInfoEXT;
- };
-
- struct PipelineRepresentativeFragmentTestStateCreateInfoNV
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineRepresentativeFragmentTestStateCreateInfoNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PipelineRepresentativeFragmentTestStateCreateInfoNV(VULKAN_HPP_NAMESPACE::Bool32 representativeFragmentTestEnable_ = {}) VULKAN_HPP_NOEXCEPT
- : representativeFragmentTestEnable( representativeFragmentTestEnable_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PipelineRepresentativeFragmentTestStateCreateInfoNV( PipelineRepresentativeFragmentTestStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PipelineRepresentativeFragmentTestStateCreateInfoNV( VkPipelineRepresentativeFragmentTestStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PipelineRepresentativeFragmentTestStateCreateInfoNV & operator=( VkPipelineRepresentativeFragmentTestStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineRepresentativeFragmentTestStateCreateInfoNV const *>( &rhs );
- return *this;
- }
-
- PipelineRepresentativeFragmentTestStateCreateInfoNV & operator=( PipelineRepresentativeFragmentTestStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PipelineRepresentativeFragmentTestStateCreateInfoNV ) );
- return *this;
- }
-
- PipelineRepresentativeFragmentTestStateCreateInfoNV & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PipelineRepresentativeFragmentTestStateCreateInfoNV & setRepresentativeFragmentTestEnable( VULKAN_HPP_NAMESPACE::Bool32 representativeFragmentTestEnable_ ) VULKAN_HPP_NOEXCEPT
- {
- representativeFragmentTestEnable = representativeFragmentTestEnable_;
- return *this;
- }
-
-
- operator VkPipelineRepresentativeFragmentTestStateCreateInfoNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPipelineRepresentativeFragmentTestStateCreateInfoNV*>( this );
- }
-
- operator VkPipelineRepresentativeFragmentTestStateCreateInfoNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPipelineRepresentativeFragmentTestStateCreateInfoNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PipelineRepresentativeFragmentTestStateCreateInfoNV const& ) const = default;
-#else
- bool operator==( PipelineRepresentativeFragmentTestStateCreateInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( representativeFragmentTestEnable == rhs.representativeFragmentTestEnable );
- }
-
- bool operator!=( PipelineRepresentativeFragmentTestStateCreateInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineRepresentativeFragmentTestStateCreateInfoNV;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 representativeFragmentTestEnable = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PipelineRepresentativeFragmentTestStateCreateInfoNV ) == sizeof( VkPipelineRepresentativeFragmentTestStateCreateInfoNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PipelineRepresentativeFragmentTestStateCreateInfoNV>::value, "struct wrapper is not a standard layout!" );
-
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
template <>
- struct CppType<StructureType, StructureType::ePipelineRepresentativeFragmentTestStateCreateInfoNV>
- {
- using Type = PipelineRepresentativeFragmentTestStateCreateInfoNV;
- };
-
- struct PipelineSampleLocationsStateCreateInfoEXT
+ struct StructExtends<VideoDecodeH264MvcEXT, VideoDecodeH264PictureInfoEXT>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineSampleLocationsStateCreateInfoEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PipelineSampleLocationsStateCreateInfoEXT(VULKAN_HPP_NAMESPACE::Bool32 sampleLocationsEnable_ = {}, VULKAN_HPP_NAMESPACE::SampleLocationsInfoEXT sampleLocationsInfo_ = {}) VULKAN_HPP_NOEXCEPT
- : sampleLocationsEnable( sampleLocationsEnable_ ), sampleLocationsInfo( sampleLocationsInfo_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PipelineSampleLocationsStateCreateInfoEXT( PipelineSampleLocationsStateCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PipelineSampleLocationsStateCreateInfoEXT( VkPipelineSampleLocationsStateCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PipelineSampleLocationsStateCreateInfoEXT & operator=( VkPipelineSampleLocationsStateCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineSampleLocationsStateCreateInfoEXT const *>( &rhs );
- return *this;
- }
-
- PipelineSampleLocationsStateCreateInfoEXT & operator=( PipelineSampleLocationsStateCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PipelineSampleLocationsStateCreateInfoEXT ) );
- return *this;
- }
-
- PipelineSampleLocationsStateCreateInfoEXT & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PipelineSampleLocationsStateCreateInfoEXT & setSampleLocationsEnable( VULKAN_HPP_NAMESPACE::Bool32 sampleLocationsEnable_ ) VULKAN_HPP_NOEXCEPT
- {
- sampleLocationsEnable = sampleLocationsEnable_;
- return *this;
- }
-
- PipelineSampleLocationsStateCreateInfoEXT & setSampleLocationsInfo( VULKAN_HPP_NAMESPACE::SampleLocationsInfoEXT const & sampleLocationsInfo_ ) VULKAN_HPP_NOEXCEPT
- {
- sampleLocationsInfo = sampleLocationsInfo_;
- return *this;
- }
-
-
- operator VkPipelineSampleLocationsStateCreateInfoEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPipelineSampleLocationsStateCreateInfoEXT*>( this );
- }
-
- operator VkPipelineSampleLocationsStateCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPipelineSampleLocationsStateCreateInfoEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PipelineSampleLocationsStateCreateInfoEXT const& ) const = default;
-#else
- bool operator==( PipelineSampleLocationsStateCreateInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( sampleLocationsEnable == rhs.sampleLocationsEnable )
- && ( sampleLocationsInfo == rhs.sampleLocationsInfo );
- }
-
- bool operator!=( PipelineSampleLocationsStateCreateInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineSampleLocationsStateCreateInfoEXT;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 sampleLocationsEnable = {};
- VULKAN_HPP_NAMESPACE::SampleLocationsInfoEXT sampleLocationsInfo = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PipelineSampleLocationsStateCreateInfoEXT ) == sizeof( VkPipelineSampleLocationsStateCreateInfoEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PipelineSampleLocationsStateCreateInfoEXT>::value, "struct wrapper is not a standard layout!" );
-
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
template <>
- struct CppType<StructureType, StructureType::ePipelineSampleLocationsStateCreateInfoEXT>
- {
- using Type = PipelineSampleLocationsStateCreateInfoEXT;
- };
-
- struct PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT
+ struct StructExtends<VideoDecodeH264PictureInfoEXT, VideoDecodeInfoKHR>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineShaderStageRequiredSubgroupSizeCreateInfoEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT(uint32_t requiredSubgroupSize_ = {}) VULKAN_HPP_NOEXCEPT
- : requiredSubgroupSize( requiredSubgroupSize_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT( PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT( VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT & operator=( VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT const *>( &rhs );
- return *this;
- }
-
- PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT & operator=( PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT ) );
- return *this;
- }
-
-
- operator VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT*>( this );
- }
-
- operator VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT const& ) const = default;
-#else
- bool operator==( PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( requiredSubgroupSize == rhs.requiredSubgroupSize );
- }
-
- bool operator!=( PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineShaderStageRequiredSubgroupSizeCreateInfoEXT;
- void* pNext = {};
- uint32_t requiredSubgroupSize = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT ) == sizeof( VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT>::value, "struct wrapper is not a standard layout!" );
-
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
template <>
- struct CppType<StructureType, StructureType::ePipelineShaderStageRequiredSubgroupSizeCreateInfoEXT>
+ struct StructExtends<VideoDecodeH264ProfileEXT, VideoProfileKHR>
{
- using Type = PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT;
- };
-
- struct PipelineTessellationDomainOriginStateCreateInfo
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineTessellationDomainOriginStateCreateInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PipelineTessellationDomainOriginStateCreateInfo(VULKAN_HPP_NAMESPACE::TessellationDomainOrigin domainOrigin_ = VULKAN_HPP_NAMESPACE::TessellationDomainOrigin::eUpperLeft) VULKAN_HPP_NOEXCEPT
- : domainOrigin( domainOrigin_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PipelineTessellationDomainOriginStateCreateInfo( PipelineTessellationDomainOriginStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PipelineTessellationDomainOriginStateCreateInfo( VkPipelineTessellationDomainOriginStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PipelineTessellationDomainOriginStateCreateInfo & operator=( VkPipelineTessellationDomainOriginStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineTessellationDomainOriginStateCreateInfo const *>( &rhs );
- return *this;
- }
-
- PipelineTessellationDomainOriginStateCreateInfo & operator=( PipelineTessellationDomainOriginStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PipelineTessellationDomainOriginStateCreateInfo ) );
- return *this;
- }
-
- PipelineTessellationDomainOriginStateCreateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PipelineTessellationDomainOriginStateCreateInfo & setDomainOrigin( VULKAN_HPP_NAMESPACE::TessellationDomainOrigin domainOrigin_ ) VULKAN_HPP_NOEXCEPT
- {
- domainOrigin = domainOrigin_;
- return *this;
- }
-
-
- operator VkPipelineTessellationDomainOriginStateCreateInfo const&() const VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<const VkPipelineTessellationDomainOriginStateCreateInfo*>( this );
- }
-
- operator VkPipelineTessellationDomainOriginStateCreateInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPipelineTessellationDomainOriginStateCreateInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PipelineTessellationDomainOriginStateCreateInfo const& ) const = default;
-#else
- bool operator==( PipelineTessellationDomainOriginStateCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( domainOrigin == rhs.domainOrigin );
- }
-
- bool operator!=( PipelineTessellationDomainOriginStateCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineTessellationDomainOriginStateCreateInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::TessellationDomainOrigin domainOrigin = VULKAN_HPP_NAMESPACE::TessellationDomainOrigin::eUpperLeft;
-
+ value = true
+ };
};
- static_assert( sizeof( PipelineTessellationDomainOriginStateCreateInfo ) == sizeof( VkPipelineTessellationDomainOriginStateCreateInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PipelineTessellationDomainOriginStateCreateInfo>::value, "struct wrapper is not a standard layout!" );
-
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
template <>
- struct CppType<StructureType, StructureType::ePipelineTessellationDomainOriginStateCreateInfo>
- {
- using Type = PipelineTessellationDomainOriginStateCreateInfo;
- };
- using PipelineTessellationDomainOriginStateCreateInfoKHR = PipelineTessellationDomainOriginStateCreateInfo;
-
- struct VertexInputBindingDivisorDescriptionEXT
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR VertexInputBindingDivisorDescriptionEXT(uint32_t binding_ = {}, uint32_t divisor_ = {}) VULKAN_HPP_NOEXCEPT
- : binding( binding_ ), divisor( divisor_ )
- {}
-
- VULKAN_HPP_CONSTEXPR VertexInputBindingDivisorDescriptionEXT( VertexInputBindingDivisorDescriptionEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- VertexInputBindingDivisorDescriptionEXT( VkVertexInputBindingDivisorDescriptionEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- VertexInputBindingDivisorDescriptionEXT & operator=( VkVertexInputBindingDivisorDescriptionEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VertexInputBindingDivisorDescriptionEXT const *>( &rhs );
- return *this;
- }
-
- VertexInputBindingDivisorDescriptionEXT & operator=( VertexInputBindingDivisorDescriptionEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( VertexInputBindingDivisorDescriptionEXT ) );
- return *this;
- }
-
- VertexInputBindingDivisorDescriptionEXT & setBinding( uint32_t binding_ ) VULKAN_HPP_NOEXCEPT
- {
- binding = binding_;
- return *this;
- }
-
- VertexInputBindingDivisorDescriptionEXT & setDivisor( uint32_t divisor_ ) VULKAN_HPP_NOEXCEPT
- {
- divisor = divisor_;
- return *this;
- }
-
-
- operator VkVertexInputBindingDivisorDescriptionEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkVertexInputBindingDivisorDescriptionEXT*>( this );
- }
-
- operator VkVertexInputBindingDivisorDescriptionEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkVertexInputBindingDivisorDescriptionEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( VertexInputBindingDivisorDescriptionEXT const& ) const = default;
-#else
- bool operator==( VertexInputBindingDivisorDescriptionEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( binding == rhs.binding )
- && ( divisor == rhs.divisor );
- }
-
- bool operator!=( VertexInputBindingDivisorDescriptionEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- uint32_t binding = {};
- uint32_t divisor = {};
-
- };
- static_assert( sizeof( VertexInputBindingDivisorDescriptionEXT ) == sizeof( VkVertexInputBindingDivisorDescriptionEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<VertexInputBindingDivisorDescriptionEXT>::value, "struct wrapper is not a standard layout!" );
-
- struct PipelineVertexInputDivisorStateCreateInfoEXT
+ struct StructExtends<VideoDecodeH264SessionCreateInfoEXT, VideoSessionCreateInfoKHR>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineVertexInputDivisorStateCreateInfoEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PipelineVertexInputDivisorStateCreateInfoEXT(uint32_t vertexBindingDivisorCount_ = {}, const VULKAN_HPP_NAMESPACE::VertexInputBindingDivisorDescriptionEXT* pVertexBindingDivisors_ = {}) VULKAN_HPP_NOEXCEPT
- : vertexBindingDivisorCount( vertexBindingDivisorCount_ ), pVertexBindingDivisors( pVertexBindingDivisors_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PipelineVertexInputDivisorStateCreateInfoEXT( PipelineVertexInputDivisorStateCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PipelineVertexInputDivisorStateCreateInfoEXT( VkPipelineVertexInputDivisorStateCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- PipelineVertexInputDivisorStateCreateInfoEXT( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::VertexInputBindingDivisorDescriptionEXT> const & vertexBindingDivisors_ )
- : vertexBindingDivisorCount( static_cast<uint32_t>( vertexBindingDivisors_.size() ) ), pVertexBindingDivisors( vertexBindingDivisors_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PipelineVertexInputDivisorStateCreateInfoEXT & operator=( VkPipelineVertexInputDivisorStateCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineVertexInputDivisorStateCreateInfoEXT const *>( &rhs );
- return *this;
- }
-
- PipelineVertexInputDivisorStateCreateInfoEXT & operator=( PipelineVertexInputDivisorStateCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PipelineVertexInputDivisorStateCreateInfoEXT ) );
- return *this;
- }
-
- PipelineVertexInputDivisorStateCreateInfoEXT & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PipelineVertexInputDivisorStateCreateInfoEXT & setVertexBindingDivisorCount( uint32_t vertexBindingDivisorCount_ ) VULKAN_HPP_NOEXCEPT
- {
- vertexBindingDivisorCount = vertexBindingDivisorCount_;
- return *this;
- }
-
- PipelineVertexInputDivisorStateCreateInfoEXT & setPVertexBindingDivisors( const VULKAN_HPP_NAMESPACE::VertexInputBindingDivisorDescriptionEXT* pVertexBindingDivisors_ ) VULKAN_HPP_NOEXCEPT
- {
- pVertexBindingDivisors = pVertexBindingDivisors_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- PipelineVertexInputDivisorStateCreateInfoEXT & setVertexBindingDivisors( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::VertexInputBindingDivisorDescriptionEXT> const & vertexBindingDivisors_ ) VULKAN_HPP_NOEXCEPT
- {
- vertexBindingDivisorCount = static_cast<uint32_t>( vertexBindingDivisors_.size() );
- pVertexBindingDivisors = vertexBindingDivisors_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkPipelineVertexInputDivisorStateCreateInfoEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPipelineVertexInputDivisorStateCreateInfoEXT*>( this );
- }
-
- operator VkPipelineVertexInputDivisorStateCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPipelineVertexInputDivisorStateCreateInfoEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PipelineVertexInputDivisorStateCreateInfoEXT const& ) const = default;
-#else
- bool operator==( PipelineVertexInputDivisorStateCreateInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( vertexBindingDivisorCount == rhs.vertexBindingDivisorCount )
- && ( pVertexBindingDivisors == rhs.pVertexBindingDivisors );
- }
-
- bool operator!=( PipelineVertexInputDivisorStateCreateInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineVertexInputDivisorStateCreateInfoEXT;
- const void* pNext = {};
- uint32_t vertexBindingDivisorCount = {};
- const VULKAN_HPP_NAMESPACE::VertexInputBindingDivisorDescriptionEXT* pVertexBindingDivisors = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PipelineVertexInputDivisorStateCreateInfoEXT ) == sizeof( VkPipelineVertexInputDivisorStateCreateInfoEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PipelineVertexInputDivisorStateCreateInfoEXT>::value, "struct wrapper is not a standard layout!" );
-
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
template <>
- struct CppType<StructureType, StructureType::ePipelineVertexInputDivisorStateCreateInfoEXT>
+ struct StructExtends<VideoDecodeH264SessionParametersAddInfoEXT, VideoSessionParametersUpdateInfoKHR>
{
- using Type = PipelineVertexInputDivisorStateCreateInfoEXT;
- };
-
- struct PipelineViewportCoarseSampleOrderStateCreateInfoNV
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineViewportCoarseSampleOrderStateCreateInfoNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PipelineViewportCoarseSampleOrderStateCreateInfoNV(VULKAN_HPP_NAMESPACE::CoarseSampleOrderTypeNV sampleOrderType_ = VULKAN_HPP_NAMESPACE::CoarseSampleOrderTypeNV::eDefault, uint32_t customSampleOrderCount_ = {}, const VULKAN_HPP_NAMESPACE::CoarseSampleOrderCustomNV* pCustomSampleOrders_ = {}) VULKAN_HPP_NOEXCEPT
- : sampleOrderType( sampleOrderType_ ), customSampleOrderCount( customSampleOrderCount_ ), pCustomSampleOrders( pCustomSampleOrders_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PipelineViewportCoarseSampleOrderStateCreateInfoNV( PipelineViewportCoarseSampleOrderStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PipelineViewportCoarseSampleOrderStateCreateInfoNV( VkPipelineViewportCoarseSampleOrderStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- PipelineViewportCoarseSampleOrderStateCreateInfoNV( VULKAN_HPP_NAMESPACE::CoarseSampleOrderTypeNV sampleOrderType_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::CoarseSampleOrderCustomNV> const & customSampleOrders_ )
- : sampleOrderType( sampleOrderType_ ), customSampleOrderCount( static_cast<uint32_t>( customSampleOrders_.size() ) ), pCustomSampleOrders( customSampleOrders_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PipelineViewportCoarseSampleOrderStateCreateInfoNV & operator=( VkPipelineViewportCoarseSampleOrderStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineViewportCoarseSampleOrderStateCreateInfoNV const *>( &rhs );
- return *this;
- }
-
- PipelineViewportCoarseSampleOrderStateCreateInfoNV & operator=( PipelineViewportCoarseSampleOrderStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PipelineViewportCoarseSampleOrderStateCreateInfoNV ) );
- return *this;
- }
-
- PipelineViewportCoarseSampleOrderStateCreateInfoNV & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PipelineViewportCoarseSampleOrderStateCreateInfoNV & setSampleOrderType( VULKAN_HPP_NAMESPACE::CoarseSampleOrderTypeNV sampleOrderType_ ) VULKAN_HPP_NOEXCEPT
- {
- sampleOrderType = sampleOrderType_;
- return *this;
- }
-
- PipelineViewportCoarseSampleOrderStateCreateInfoNV & setCustomSampleOrderCount( uint32_t customSampleOrderCount_ ) VULKAN_HPP_NOEXCEPT
- {
- customSampleOrderCount = customSampleOrderCount_;
- return *this;
- }
-
- PipelineViewportCoarseSampleOrderStateCreateInfoNV & setPCustomSampleOrders( const VULKAN_HPP_NAMESPACE::CoarseSampleOrderCustomNV* pCustomSampleOrders_ ) VULKAN_HPP_NOEXCEPT
- {
- pCustomSampleOrders = pCustomSampleOrders_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- PipelineViewportCoarseSampleOrderStateCreateInfoNV & setCustomSampleOrders( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::CoarseSampleOrderCustomNV> const & customSampleOrders_ ) VULKAN_HPP_NOEXCEPT
- {
- customSampleOrderCount = static_cast<uint32_t>( customSampleOrders_.size() );
- pCustomSampleOrders = customSampleOrders_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkPipelineViewportCoarseSampleOrderStateCreateInfoNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPipelineViewportCoarseSampleOrderStateCreateInfoNV*>( this );
- }
-
- operator VkPipelineViewportCoarseSampleOrderStateCreateInfoNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPipelineViewportCoarseSampleOrderStateCreateInfoNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PipelineViewportCoarseSampleOrderStateCreateInfoNV const& ) const = default;
-#else
- bool operator==( PipelineViewportCoarseSampleOrderStateCreateInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( sampleOrderType == rhs.sampleOrderType )
- && ( customSampleOrderCount == rhs.customSampleOrderCount )
- && ( pCustomSampleOrders == rhs.pCustomSampleOrders );
- }
-
- bool operator!=( PipelineViewportCoarseSampleOrderStateCreateInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineViewportCoarseSampleOrderStateCreateInfoNV;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::CoarseSampleOrderTypeNV sampleOrderType = VULKAN_HPP_NAMESPACE::CoarseSampleOrderTypeNV::eDefault;
- uint32_t customSampleOrderCount = {};
- const VULKAN_HPP_NAMESPACE::CoarseSampleOrderCustomNV* pCustomSampleOrders = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PipelineViewportCoarseSampleOrderStateCreateInfoNV ) == sizeof( VkPipelineViewportCoarseSampleOrderStateCreateInfoNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PipelineViewportCoarseSampleOrderStateCreateInfoNV>::value, "struct wrapper is not a standard layout!" );
-
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
template <>
- struct CppType<StructureType, StructureType::ePipelineViewportCoarseSampleOrderStateCreateInfoNV>
+ struct StructExtends<VideoDecodeH264SessionParametersCreateInfoEXT, VideoSessionParametersCreateInfoKHR>
{
- using Type = PipelineViewportCoarseSampleOrderStateCreateInfoNV;
- };
-
- struct PipelineViewportExclusiveScissorStateCreateInfoNV
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineViewportExclusiveScissorStateCreateInfoNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PipelineViewportExclusiveScissorStateCreateInfoNV(uint32_t exclusiveScissorCount_ = {}, const VULKAN_HPP_NAMESPACE::Rect2D* pExclusiveScissors_ = {}) VULKAN_HPP_NOEXCEPT
- : exclusiveScissorCount( exclusiveScissorCount_ ), pExclusiveScissors( pExclusiveScissors_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PipelineViewportExclusiveScissorStateCreateInfoNV( PipelineViewportExclusiveScissorStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PipelineViewportExclusiveScissorStateCreateInfoNV( VkPipelineViewportExclusiveScissorStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- PipelineViewportExclusiveScissorStateCreateInfoNV( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Rect2D> const & exclusiveScissors_ )
- : exclusiveScissorCount( static_cast<uint32_t>( exclusiveScissors_.size() ) ), pExclusiveScissors( exclusiveScissors_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PipelineViewportExclusiveScissorStateCreateInfoNV & operator=( VkPipelineViewportExclusiveScissorStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineViewportExclusiveScissorStateCreateInfoNV const *>( &rhs );
- return *this;
- }
-
- PipelineViewportExclusiveScissorStateCreateInfoNV & operator=( PipelineViewportExclusiveScissorStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PipelineViewportExclusiveScissorStateCreateInfoNV ) );
- return *this;
- }
-
- PipelineViewportExclusiveScissorStateCreateInfoNV & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PipelineViewportExclusiveScissorStateCreateInfoNV & setExclusiveScissorCount( uint32_t exclusiveScissorCount_ ) VULKAN_HPP_NOEXCEPT
- {
- exclusiveScissorCount = exclusiveScissorCount_;
- return *this;
- }
-
- PipelineViewportExclusiveScissorStateCreateInfoNV & setPExclusiveScissors( const VULKAN_HPP_NAMESPACE::Rect2D* pExclusiveScissors_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- pExclusiveScissors = pExclusiveScissors_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- PipelineViewportExclusiveScissorStateCreateInfoNV & setExclusiveScissors( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Rect2D> const & exclusiveScissors_ ) VULKAN_HPP_NOEXCEPT
- {
- exclusiveScissorCount = static_cast<uint32_t>( exclusiveScissors_.size() );
- pExclusiveScissors = exclusiveScissors_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkPipelineViewportExclusiveScissorStateCreateInfoNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPipelineViewportExclusiveScissorStateCreateInfoNV*>( this );
- }
-
- operator VkPipelineViewportExclusiveScissorStateCreateInfoNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPipelineViewportExclusiveScissorStateCreateInfoNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PipelineViewportExclusiveScissorStateCreateInfoNV const& ) const = default;
-#else
- bool operator==( PipelineViewportExclusiveScissorStateCreateInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( exclusiveScissorCount == rhs.exclusiveScissorCount )
- && ( pExclusiveScissors == rhs.pExclusiveScissors );
- }
-
- bool operator!=( PipelineViewportExclusiveScissorStateCreateInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineViewportExclusiveScissorStateCreateInfoNV;
- const void* pNext = {};
- uint32_t exclusiveScissorCount = {};
- const VULKAN_HPP_NAMESPACE::Rect2D* pExclusiveScissors = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PipelineViewportExclusiveScissorStateCreateInfoNV ) == sizeof( VkPipelineViewportExclusiveScissorStateCreateInfoNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PipelineViewportExclusiveScissorStateCreateInfoNV>::value, "struct wrapper is not a standard layout!" );
-
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
template <>
- struct CppType<StructureType, StructureType::ePipelineViewportExclusiveScissorStateCreateInfoNV>
- {
- using Type = PipelineViewportExclusiveScissorStateCreateInfoNV;
- };
-
- struct PipelineViewportShadingRateImageStateCreateInfoNV
+ struct StructExtends<VideoDecodeH265CapabilitiesEXT, VideoCapabilitiesKHR>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineViewportShadingRateImageStateCreateInfoNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PipelineViewportShadingRateImageStateCreateInfoNV(VULKAN_HPP_NAMESPACE::Bool32 shadingRateImageEnable_ = {}, uint32_t viewportCount_ = {}, const VULKAN_HPP_NAMESPACE::ShadingRatePaletteNV* pShadingRatePalettes_ = {}) VULKAN_HPP_NOEXCEPT
- : shadingRateImageEnable( shadingRateImageEnable_ ), viewportCount( viewportCount_ ), pShadingRatePalettes( pShadingRatePalettes_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PipelineViewportShadingRateImageStateCreateInfoNV( PipelineViewportShadingRateImageStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PipelineViewportShadingRateImageStateCreateInfoNV( VkPipelineViewportShadingRateImageStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- PipelineViewportShadingRateImageStateCreateInfoNV( VULKAN_HPP_NAMESPACE::Bool32 shadingRateImageEnable_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ShadingRatePaletteNV> const & shadingRatePalettes_ )
- : shadingRateImageEnable( shadingRateImageEnable_ ), viewportCount( static_cast<uint32_t>( shadingRatePalettes_.size() ) ), pShadingRatePalettes( shadingRatePalettes_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PipelineViewportShadingRateImageStateCreateInfoNV & operator=( VkPipelineViewportShadingRateImageStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineViewportShadingRateImageStateCreateInfoNV const *>( &rhs );
- return *this;
- }
-
- PipelineViewportShadingRateImageStateCreateInfoNV & operator=( PipelineViewportShadingRateImageStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PipelineViewportShadingRateImageStateCreateInfoNV ) );
- return *this;
- }
-
- PipelineViewportShadingRateImageStateCreateInfoNV & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PipelineViewportShadingRateImageStateCreateInfoNV & setShadingRateImageEnable( VULKAN_HPP_NAMESPACE::Bool32 shadingRateImageEnable_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- shadingRateImageEnable = shadingRateImageEnable_;
- return *this;
- }
-
- PipelineViewportShadingRateImageStateCreateInfoNV & setViewportCount( uint32_t viewportCount_ ) VULKAN_HPP_NOEXCEPT
- {
- viewportCount = viewportCount_;
- return *this;
- }
-
- PipelineViewportShadingRateImageStateCreateInfoNV & setPShadingRatePalettes( const VULKAN_HPP_NAMESPACE::ShadingRatePaletteNV* pShadingRatePalettes_ ) VULKAN_HPP_NOEXCEPT
- {
- pShadingRatePalettes = pShadingRatePalettes_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- PipelineViewportShadingRateImageStateCreateInfoNV & setShadingRatePalettes( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ShadingRatePaletteNV> const & shadingRatePalettes_ ) VULKAN_HPP_NOEXCEPT
- {
- viewportCount = static_cast<uint32_t>( shadingRatePalettes_.size() );
- pShadingRatePalettes = shadingRatePalettes_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkPipelineViewportShadingRateImageStateCreateInfoNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPipelineViewportShadingRateImageStateCreateInfoNV*>( this );
- }
-
- operator VkPipelineViewportShadingRateImageStateCreateInfoNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPipelineViewportShadingRateImageStateCreateInfoNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PipelineViewportShadingRateImageStateCreateInfoNV const& ) const = default;
-#else
- bool operator==( PipelineViewportShadingRateImageStateCreateInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( shadingRateImageEnable == rhs.shadingRateImageEnable )
- && ( viewportCount == rhs.viewportCount )
- && ( pShadingRatePalettes == rhs.pShadingRatePalettes );
- }
-
- bool operator!=( PipelineViewportShadingRateImageStateCreateInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineViewportShadingRateImageStateCreateInfoNV;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 shadingRateImageEnable = {};
- uint32_t viewportCount = {};
- const VULKAN_HPP_NAMESPACE::ShadingRatePaletteNV* pShadingRatePalettes = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PipelineViewportShadingRateImageStateCreateInfoNV ) == sizeof( VkPipelineViewportShadingRateImageStateCreateInfoNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PipelineViewportShadingRateImageStateCreateInfoNV>::value, "struct wrapper is not a standard layout!" );
-
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
template <>
- struct CppType<StructureType, StructureType::ePipelineViewportShadingRateImageStateCreateInfoNV>
- {
- using Type = PipelineViewportShadingRateImageStateCreateInfoNV;
- };
-
- struct ViewportSwizzleNV
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ViewportSwizzleNV(VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV x_ = VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV::ePositiveX, VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV y_ = VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV::ePositiveX, VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV z_ = VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV::ePositiveX, VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV w_ = VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV::ePositiveX) VULKAN_HPP_NOEXCEPT
- : x( x_ ), y( y_ ), z( z_ ), w( w_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ViewportSwizzleNV( ViewportSwizzleNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ViewportSwizzleNV( VkViewportSwizzleNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ViewportSwizzleNV & operator=( VkViewportSwizzleNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ViewportSwizzleNV const *>( &rhs );
- return *this;
- }
-
- ViewportSwizzleNV & operator=( ViewportSwizzleNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ViewportSwizzleNV ) );
- return *this;
- }
-
- ViewportSwizzleNV & setX( VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV x_ ) VULKAN_HPP_NOEXCEPT
- {
- x = x_;
- return *this;
- }
-
- ViewportSwizzleNV & setY( VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV y_ ) VULKAN_HPP_NOEXCEPT
- {
- y = y_;
- return *this;
- }
-
- ViewportSwizzleNV & setZ( VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV z_ ) VULKAN_HPP_NOEXCEPT
- {
- z = z_;
- return *this;
- }
-
- ViewportSwizzleNV & setW( VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV w_ ) VULKAN_HPP_NOEXCEPT
- {
- w = w_;
- return *this;
- }
-
-
- operator VkViewportSwizzleNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkViewportSwizzleNV*>( this );
- }
-
- operator VkViewportSwizzleNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkViewportSwizzleNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ViewportSwizzleNV const& ) const = default;
-#else
- bool operator==( ViewportSwizzleNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( x == rhs.x )
- && ( y == rhs.y )
- && ( z == rhs.z )
- && ( w == rhs.w );
- }
-
- bool operator!=( ViewportSwizzleNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV x = VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV::ePositiveX;
- VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV y = VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV::ePositiveX;
- VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV z = VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV::ePositiveX;
- VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV w = VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV::ePositiveX;
-
- };
- static_assert( sizeof( ViewportSwizzleNV ) == sizeof( VkViewportSwizzleNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ViewportSwizzleNV>::value, "struct wrapper is not a standard layout!" );
-
- struct PipelineViewportSwizzleStateCreateInfoNV
+ struct StructExtends<VideoDecodeH265DpbSlotInfoEXT, VideoReferenceSlotKHR>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineViewportSwizzleStateCreateInfoNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PipelineViewportSwizzleStateCreateInfoNV(VULKAN_HPP_NAMESPACE::PipelineViewportSwizzleStateCreateFlagsNV flags_ = {}, uint32_t viewportCount_ = {}, const VULKAN_HPP_NAMESPACE::ViewportSwizzleNV* pViewportSwizzles_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), viewportCount( viewportCount_ ), pViewportSwizzles( pViewportSwizzles_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PipelineViewportSwizzleStateCreateInfoNV( PipelineViewportSwizzleStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PipelineViewportSwizzleStateCreateInfoNV( VkPipelineViewportSwizzleStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- PipelineViewportSwizzleStateCreateInfoNV( VULKAN_HPP_NAMESPACE::PipelineViewportSwizzleStateCreateFlagsNV flags_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ViewportSwizzleNV> const & viewportSwizzles_ )
- : flags( flags_ ), viewportCount( static_cast<uint32_t>( viewportSwizzles_.size() ) ), pViewportSwizzles( viewportSwizzles_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PipelineViewportSwizzleStateCreateInfoNV & operator=( VkPipelineViewportSwizzleStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineViewportSwizzleStateCreateInfoNV const *>( &rhs );
- return *this;
- }
-
- PipelineViewportSwizzleStateCreateInfoNV & operator=( PipelineViewportSwizzleStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PipelineViewportSwizzleStateCreateInfoNV ) );
- return *this;
- }
-
- PipelineViewportSwizzleStateCreateInfoNV & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PipelineViewportSwizzleStateCreateInfoNV & setFlags( VULKAN_HPP_NAMESPACE::PipelineViewportSwizzleStateCreateFlagsNV flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- PipelineViewportSwizzleStateCreateInfoNV & setViewportCount( uint32_t viewportCount_ ) VULKAN_HPP_NOEXCEPT
- {
- viewportCount = viewportCount_;
- return *this;
- }
-
- PipelineViewportSwizzleStateCreateInfoNV & setPViewportSwizzles( const VULKAN_HPP_NAMESPACE::ViewportSwizzleNV* pViewportSwizzles_ ) VULKAN_HPP_NOEXCEPT
- {
- pViewportSwizzles = pViewportSwizzles_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- PipelineViewportSwizzleStateCreateInfoNV & setViewportSwizzles( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ViewportSwizzleNV> const & viewportSwizzles_ ) VULKAN_HPP_NOEXCEPT
- {
- viewportCount = static_cast<uint32_t>( viewportSwizzles_.size() );
- pViewportSwizzles = viewportSwizzles_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkPipelineViewportSwizzleStateCreateInfoNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPipelineViewportSwizzleStateCreateInfoNV*>( this );
- }
-
- operator VkPipelineViewportSwizzleStateCreateInfoNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPipelineViewportSwizzleStateCreateInfoNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PipelineViewportSwizzleStateCreateInfoNV const& ) const = default;
-#else
- bool operator==( PipelineViewportSwizzleStateCreateInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( viewportCount == rhs.viewportCount )
- && ( pViewportSwizzles == rhs.pViewportSwizzles );
- }
-
- bool operator!=( PipelineViewportSwizzleStateCreateInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineViewportSwizzleStateCreateInfoNV;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::PipelineViewportSwizzleStateCreateFlagsNV flags = {};
- uint32_t viewportCount = {};
- const VULKAN_HPP_NAMESPACE::ViewportSwizzleNV* pViewportSwizzles = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PipelineViewportSwizzleStateCreateInfoNV ) == sizeof( VkPipelineViewportSwizzleStateCreateInfoNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PipelineViewportSwizzleStateCreateInfoNV>::value, "struct wrapper is not a standard layout!" );
-
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
template <>
- struct CppType<StructureType, StructureType::ePipelineViewportSwizzleStateCreateInfoNV>
+ struct StructExtends<VideoDecodeH265PictureInfoEXT, VideoDecodeInfoKHR>
{
- using Type = PipelineViewportSwizzleStateCreateInfoNV;
- };
-
- struct PipelineViewportWScalingStateCreateInfoNV
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineViewportWScalingStateCreateInfoNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PipelineViewportWScalingStateCreateInfoNV(VULKAN_HPP_NAMESPACE::Bool32 viewportWScalingEnable_ = {}, uint32_t viewportCount_ = {}, const VULKAN_HPP_NAMESPACE::ViewportWScalingNV* pViewportWScalings_ = {}) VULKAN_HPP_NOEXCEPT
- : viewportWScalingEnable( viewportWScalingEnable_ ), viewportCount( viewportCount_ ), pViewportWScalings( pViewportWScalings_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PipelineViewportWScalingStateCreateInfoNV( PipelineViewportWScalingStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PipelineViewportWScalingStateCreateInfoNV( VkPipelineViewportWScalingStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- PipelineViewportWScalingStateCreateInfoNV( VULKAN_HPP_NAMESPACE::Bool32 viewportWScalingEnable_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ViewportWScalingNV> const & viewportWScalings_ )
- : viewportWScalingEnable( viewportWScalingEnable_ ), viewportCount( static_cast<uint32_t>( viewportWScalings_.size() ) ), pViewportWScalings( viewportWScalings_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PipelineViewportWScalingStateCreateInfoNV & operator=( VkPipelineViewportWScalingStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineViewportWScalingStateCreateInfoNV const *>( &rhs );
- return *this;
- }
-
- PipelineViewportWScalingStateCreateInfoNV & operator=( PipelineViewportWScalingStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PipelineViewportWScalingStateCreateInfoNV ) );
- return *this;
- }
-
- PipelineViewportWScalingStateCreateInfoNV & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PipelineViewportWScalingStateCreateInfoNV & setViewportWScalingEnable( VULKAN_HPP_NAMESPACE::Bool32 viewportWScalingEnable_ ) VULKAN_HPP_NOEXCEPT
- {
- viewportWScalingEnable = viewportWScalingEnable_;
- return *this;
- }
-
- PipelineViewportWScalingStateCreateInfoNV & setViewportCount( uint32_t viewportCount_ ) VULKAN_HPP_NOEXCEPT
- {
- viewportCount = viewportCount_;
- return *this;
- }
-
- PipelineViewportWScalingStateCreateInfoNV & setPViewportWScalings( const VULKAN_HPP_NAMESPACE::ViewportWScalingNV* pViewportWScalings_ ) VULKAN_HPP_NOEXCEPT
- {
- pViewportWScalings = pViewportWScalings_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- PipelineViewportWScalingStateCreateInfoNV & setViewportWScalings( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ViewportWScalingNV> const & viewportWScalings_ ) VULKAN_HPP_NOEXCEPT
- {
- viewportCount = static_cast<uint32_t>( viewportWScalings_.size() );
- pViewportWScalings = viewportWScalings_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkPipelineViewportWScalingStateCreateInfoNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPipelineViewportWScalingStateCreateInfoNV*>( this );
- }
-
- operator VkPipelineViewportWScalingStateCreateInfoNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPipelineViewportWScalingStateCreateInfoNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PipelineViewportWScalingStateCreateInfoNV const& ) const = default;
-#else
- bool operator==( PipelineViewportWScalingStateCreateInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( viewportWScalingEnable == rhs.viewportWScalingEnable )
- && ( viewportCount == rhs.viewportCount )
- && ( pViewportWScalings == rhs.pViewportWScalings );
- }
-
- bool operator!=( PipelineViewportWScalingStateCreateInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineViewportWScalingStateCreateInfoNV;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 viewportWScalingEnable = {};
- uint32_t viewportCount = {};
- const VULKAN_HPP_NAMESPACE::ViewportWScalingNV* pViewportWScalings = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PipelineViewportWScalingStateCreateInfoNV ) == sizeof( VkPipelineViewportWScalingStateCreateInfoNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PipelineViewportWScalingStateCreateInfoNV>::value, "struct wrapper is not a standard layout!" );
-
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
template <>
- struct CppType<StructureType, StructureType::ePipelineViewportWScalingStateCreateInfoNV>
- {
- using Type = PipelineViewportWScalingStateCreateInfoNV;
- };
-
-#ifdef VK_USE_PLATFORM_GGP
- struct PresentFrameTokenGGP
+ struct StructExtends<VideoDecodeH265ProfileEXT, VideoProfileKHR>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePresentFrameTokenGGP;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PresentFrameTokenGGP(GgpFrameToken frameToken_ = {}) VULKAN_HPP_NOEXCEPT
- : frameToken( frameToken_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PresentFrameTokenGGP( PresentFrameTokenGGP const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PresentFrameTokenGGP( VkPresentFrameTokenGGP const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PresentFrameTokenGGP & operator=( VkPresentFrameTokenGGP const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PresentFrameTokenGGP const *>( &rhs );
- return *this;
- }
-
- PresentFrameTokenGGP & operator=( PresentFrameTokenGGP const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PresentFrameTokenGGP ) );
- return *this;
- }
-
- PresentFrameTokenGGP & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PresentFrameTokenGGP & setFrameToken( GgpFrameToken frameToken_ ) VULKAN_HPP_NOEXCEPT
- {
- frameToken = frameToken_;
- return *this;
- }
-
-
- operator VkPresentFrameTokenGGP const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPresentFrameTokenGGP*>( this );
- }
-
- operator VkPresentFrameTokenGGP &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPresentFrameTokenGGP*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PresentFrameTokenGGP const& ) const = default;
-#else
- bool operator==( PresentFrameTokenGGP const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( memcmp( &frameToken, &rhs.frameToken, sizeof( GgpFrameToken ) ) == 0 );
- }
-
- bool operator!=( PresentFrameTokenGGP const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePresentFrameTokenGGP;
- const void* pNext = {};
- GgpFrameToken frameToken = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PresentFrameTokenGGP ) == sizeof( VkPresentFrameTokenGGP ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PresentFrameTokenGGP>::value, "struct wrapper is not a standard layout!" );
-
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
template <>
- struct CppType<StructureType, StructureType::ePresentFrameTokenGGP>
+ struct StructExtends<VideoDecodeH265SessionCreateInfoEXT, VideoSessionCreateInfoKHR>
{
- using Type = PresentFrameTokenGGP;
- };
-#endif /*VK_USE_PLATFORM_GGP*/
-
- struct RectLayerKHR
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR RectLayerKHR(VULKAN_HPP_NAMESPACE::Offset2D offset_ = {}, VULKAN_HPP_NAMESPACE::Extent2D extent_ = {}, uint32_t layer_ = {}) VULKAN_HPP_NOEXCEPT
- : offset( offset_ ), extent( extent_ ), layer( layer_ )
- {}
-
- VULKAN_HPP_CONSTEXPR RectLayerKHR( RectLayerKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- RectLayerKHR( VkRectLayerKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
- explicit RectLayerKHR( Rect2D const& rect2D, uint32_t layer_ = {} )
- : offset( rect2D.offset )
- , extent( rect2D.extent )
- , layer( layer_ )
- {}
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- RectLayerKHR & operator=( VkRectLayerKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::RectLayerKHR const *>( &rhs );
- return *this;
- }
-
- RectLayerKHR & operator=( RectLayerKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( RectLayerKHR ) );
- return *this;
- }
-
- RectLayerKHR & setOffset( VULKAN_HPP_NAMESPACE::Offset2D const & offset_ ) VULKAN_HPP_NOEXCEPT
- {
- offset = offset_;
- return *this;
- }
-
- RectLayerKHR & setExtent( VULKAN_HPP_NAMESPACE::Extent2D const & extent_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- extent = extent_;
- return *this;
- }
-
- RectLayerKHR & setLayer( uint32_t layer_ ) VULKAN_HPP_NOEXCEPT
- {
- layer = layer_;
- return *this;
- }
-
-
- operator VkRectLayerKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkRectLayerKHR*>( this );
- }
-
- operator VkRectLayerKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkRectLayerKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( RectLayerKHR const& ) const = default;
-#else
- bool operator==( RectLayerKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( offset == rhs.offset )
- && ( extent == rhs.extent )
- && ( layer == rhs.layer );
- }
-
- bool operator!=( RectLayerKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::Offset2D offset = {};
- VULKAN_HPP_NAMESPACE::Extent2D extent = {};
- uint32_t layer = {};
-
- };
- static_assert( sizeof( RectLayerKHR ) == sizeof( VkRectLayerKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<RectLayerKHR>::value, "struct wrapper is not a standard layout!" );
-
- struct PresentRegionKHR
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PresentRegionKHR(uint32_t rectangleCount_ = {}, const VULKAN_HPP_NAMESPACE::RectLayerKHR* pRectangles_ = {}) VULKAN_HPP_NOEXCEPT
- : rectangleCount( rectangleCount_ ), pRectangles( pRectangles_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PresentRegionKHR( PresentRegionKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PresentRegionKHR( VkPresentRegionKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- PresentRegionKHR( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::RectLayerKHR> const & rectangles_ )
- : rectangleCount( static_cast<uint32_t>( rectangles_.size() ) ), pRectangles( rectangles_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PresentRegionKHR & operator=( VkPresentRegionKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PresentRegionKHR const *>( &rhs );
- return *this;
- }
-
- PresentRegionKHR & operator=( PresentRegionKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PresentRegionKHR ) );
- return *this;
- }
-
- PresentRegionKHR & setRectangleCount( uint32_t rectangleCount_ ) VULKAN_HPP_NOEXCEPT
- {
- rectangleCount = rectangleCount_;
- return *this;
- }
-
- PresentRegionKHR & setPRectangles( const VULKAN_HPP_NAMESPACE::RectLayerKHR* pRectangles_ ) VULKAN_HPP_NOEXCEPT
- {
- pRectangles = pRectangles_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- PresentRegionKHR & setRectangles( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::RectLayerKHR> const & rectangles_ ) VULKAN_HPP_NOEXCEPT
- {
- rectangleCount = static_cast<uint32_t>( rectangles_.size() );
- pRectangles = rectangles_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkPresentRegionKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPresentRegionKHR*>( this );
- }
-
- operator VkPresentRegionKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPresentRegionKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PresentRegionKHR const& ) const = default;
-#else
- bool operator==( PresentRegionKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( rectangleCount == rhs.rectangleCount )
- && ( pRectangles == rhs.pRectangles );
- }
-
- bool operator!=( PresentRegionKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- uint32_t rectangleCount = {};
- const VULKAN_HPP_NAMESPACE::RectLayerKHR* pRectangles = {};
-
- };
- static_assert( sizeof( PresentRegionKHR ) == sizeof( VkPresentRegionKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PresentRegionKHR>::value, "struct wrapper is not a standard layout!" );
-
- struct PresentRegionsKHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePresentRegionsKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PresentRegionsKHR(uint32_t swapchainCount_ = {}, const VULKAN_HPP_NAMESPACE::PresentRegionKHR* pRegions_ = {}) VULKAN_HPP_NOEXCEPT
- : swapchainCount( swapchainCount_ ), pRegions( pRegions_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PresentRegionsKHR( PresentRegionsKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PresentRegionsKHR( VkPresentRegionsKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- PresentRegionsKHR( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::PresentRegionKHR> const & regions_ )
- : swapchainCount( static_cast<uint32_t>( regions_.size() ) ), pRegions( regions_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PresentRegionsKHR & operator=( VkPresentRegionsKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PresentRegionsKHR const *>( &rhs );
- return *this;
- }
-
- PresentRegionsKHR & operator=( PresentRegionsKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PresentRegionsKHR ) );
- return *this;
- }
-
- PresentRegionsKHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PresentRegionsKHR & setSwapchainCount( uint32_t swapchainCount_ ) VULKAN_HPP_NOEXCEPT
- {
- swapchainCount = swapchainCount_;
- return *this;
- }
-
- PresentRegionsKHR & setPRegions( const VULKAN_HPP_NAMESPACE::PresentRegionKHR* pRegions_ ) VULKAN_HPP_NOEXCEPT
- {
- pRegions = pRegions_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- PresentRegionsKHR & setRegions( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::PresentRegionKHR> const & regions_ ) VULKAN_HPP_NOEXCEPT
- {
- swapchainCount = static_cast<uint32_t>( regions_.size() );
- pRegions = regions_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkPresentRegionsKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPresentRegionsKHR*>( this );
- }
-
- operator VkPresentRegionsKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPresentRegionsKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PresentRegionsKHR const& ) const = default;
-#else
- bool operator==( PresentRegionsKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( swapchainCount == rhs.swapchainCount )
- && ( pRegions == rhs.pRegions );
- }
-
- bool operator!=( PresentRegionsKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePresentRegionsKHR;
- const void* pNext = {};
- uint32_t swapchainCount = {};
- const VULKAN_HPP_NAMESPACE::PresentRegionKHR* pRegions = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PresentRegionsKHR ) == sizeof( VkPresentRegionsKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PresentRegionsKHR>::value, "struct wrapper is not a standard layout!" );
-
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
template <>
- struct CppType<StructureType, StructureType::ePresentRegionsKHR>
- {
- using Type = PresentRegionsKHR;
- };
-
- struct PresentTimeGOOGLE
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PresentTimeGOOGLE(uint32_t presentID_ = {}, uint64_t desiredPresentTime_ = {}) VULKAN_HPP_NOEXCEPT
- : presentID( presentID_ ), desiredPresentTime( desiredPresentTime_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PresentTimeGOOGLE( PresentTimeGOOGLE const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PresentTimeGOOGLE( VkPresentTimeGOOGLE const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PresentTimeGOOGLE & operator=( VkPresentTimeGOOGLE const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PresentTimeGOOGLE const *>( &rhs );
- return *this;
- }
-
- PresentTimeGOOGLE & operator=( PresentTimeGOOGLE const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PresentTimeGOOGLE ) );
- return *this;
- }
-
- PresentTimeGOOGLE & setPresentID( uint32_t presentID_ ) VULKAN_HPP_NOEXCEPT
- {
- presentID = presentID_;
- return *this;
- }
-
- PresentTimeGOOGLE & setDesiredPresentTime( uint64_t desiredPresentTime_ ) VULKAN_HPP_NOEXCEPT
- {
- desiredPresentTime = desiredPresentTime_;
- return *this;
- }
-
-
- operator VkPresentTimeGOOGLE const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPresentTimeGOOGLE*>( this );
- }
-
- operator VkPresentTimeGOOGLE &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPresentTimeGOOGLE*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PresentTimeGOOGLE const& ) const = default;
-#else
- bool operator==( PresentTimeGOOGLE const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( presentID == rhs.presentID )
- && ( desiredPresentTime == rhs.desiredPresentTime );
- }
-
- bool operator!=( PresentTimeGOOGLE const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- uint32_t presentID = {};
- uint64_t desiredPresentTime = {};
-
- };
- static_assert( sizeof( PresentTimeGOOGLE ) == sizeof( VkPresentTimeGOOGLE ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PresentTimeGOOGLE>::value, "struct wrapper is not a standard layout!" );
-
- struct PresentTimesInfoGOOGLE
+ struct StructExtends<VideoDecodeH265SessionParametersAddInfoEXT, VideoSessionParametersUpdateInfoKHR>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePresentTimesInfoGOOGLE;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR PresentTimesInfoGOOGLE(uint32_t swapchainCount_ = {}, const VULKAN_HPP_NAMESPACE::PresentTimeGOOGLE* pTimes_ = {}) VULKAN_HPP_NOEXCEPT
- : swapchainCount( swapchainCount_ ), pTimes( pTimes_ )
- {}
-
- VULKAN_HPP_CONSTEXPR PresentTimesInfoGOOGLE( PresentTimesInfoGOOGLE const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- PresentTimesInfoGOOGLE( VkPresentTimesInfoGOOGLE const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- PresentTimesInfoGOOGLE( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::PresentTimeGOOGLE> const & times_ )
- : swapchainCount( static_cast<uint32_t>( times_.size() ) ), pTimes( times_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- PresentTimesInfoGOOGLE & operator=( VkPresentTimesInfoGOOGLE const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PresentTimesInfoGOOGLE const *>( &rhs );
- return *this;
- }
-
- PresentTimesInfoGOOGLE & operator=( PresentTimesInfoGOOGLE const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( PresentTimesInfoGOOGLE ) );
- return *this;
- }
-
- PresentTimesInfoGOOGLE & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- PresentTimesInfoGOOGLE & setSwapchainCount( uint32_t swapchainCount_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- swapchainCount = swapchainCount_;
- return *this;
- }
-
- PresentTimesInfoGOOGLE & setPTimes( const VULKAN_HPP_NAMESPACE::PresentTimeGOOGLE* pTimes_ ) VULKAN_HPP_NOEXCEPT
- {
- pTimes = pTimes_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- PresentTimesInfoGOOGLE & setTimes( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::PresentTimeGOOGLE> const & times_ ) VULKAN_HPP_NOEXCEPT
- {
- swapchainCount = static_cast<uint32_t>( times_.size() );
- pTimes = times_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkPresentTimesInfoGOOGLE const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkPresentTimesInfoGOOGLE*>( this );
- }
-
- operator VkPresentTimesInfoGOOGLE &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkPresentTimesInfoGOOGLE*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( PresentTimesInfoGOOGLE const& ) const = default;
-#else
- bool operator==( PresentTimesInfoGOOGLE const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( swapchainCount == rhs.swapchainCount )
- && ( pTimes == rhs.pTimes );
- }
-
- bool operator!=( PresentTimesInfoGOOGLE const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePresentTimesInfoGOOGLE;
- const void* pNext = {};
- uint32_t swapchainCount = {};
- const VULKAN_HPP_NAMESPACE::PresentTimeGOOGLE* pTimes = {};
-
+ value = true
+ };
};
- static_assert( sizeof( PresentTimesInfoGOOGLE ) == sizeof( VkPresentTimesInfoGOOGLE ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<PresentTimesInfoGOOGLE>::value, "struct wrapper is not a standard layout!" );
-
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
template <>
- struct CppType<StructureType, StructureType::ePresentTimesInfoGOOGLE>
+ struct StructExtends<VideoDecodeH265SessionParametersCreateInfoEXT, VideoSessionParametersCreateInfoKHR>
{
- using Type = PresentTimesInfoGOOGLE;
- };
-
- struct ProtectedSubmitInfo
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eProtectedSubmitInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ProtectedSubmitInfo(VULKAN_HPP_NAMESPACE::Bool32 protectedSubmit_ = {}) VULKAN_HPP_NOEXCEPT
- : protectedSubmit( protectedSubmit_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ProtectedSubmitInfo( ProtectedSubmitInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ProtectedSubmitInfo( VkProtectedSubmitInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ProtectedSubmitInfo & operator=( VkProtectedSubmitInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ProtectedSubmitInfo const *>( &rhs );
- return *this;
- }
-
- ProtectedSubmitInfo & operator=( ProtectedSubmitInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ProtectedSubmitInfo ) );
- return *this;
- }
-
- ProtectedSubmitInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- ProtectedSubmitInfo & setProtectedSubmit( VULKAN_HPP_NAMESPACE::Bool32 protectedSubmit_ ) VULKAN_HPP_NOEXCEPT
- {
- protectedSubmit = protectedSubmit_;
- return *this;
- }
-
-
- operator VkProtectedSubmitInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkProtectedSubmitInfo*>( this );
- }
-
- operator VkProtectedSubmitInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkProtectedSubmitInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ProtectedSubmitInfo const& ) const = default;
-#else
- bool operator==( ProtectedSubmitInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( protectedSubmit == rhs.protectedSubmit );
- }
-
- bool operator!=( ProtectedSubmitInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eProtectedSubmitInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 protectedSubmit = {};
-
+ value = true
+ };
};
- static_assert( sizeof( ProtectedSubmitInfo ) == sizeof( VkProtectedSubmitInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ProtectedSubmitInfo>::value, "struct wrapper is not a standard layout!" );
-
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
template <>
- struct CppType<StructureType, StructureType::eProtectedSubmitInfo>
+ struct StructExtends<VideoEncodeH264CapabilitiesEXT, VideoCapabilitiesKHR>
{
- using Type = ProtectedSubmitInfo;
- };
-
- struct QueryPoolPerformanceQueryCreateInfoINTEL
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eQueryPoolPerformanceQueryCreateInfoINTEL;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR QueryPoolPerformanceQueryCreateInfoINTEL(VULKAN_HPP_NAMESPACE::QueryPoolSamplingModeINTEL performanceCountersSampling_ = VULKAN_HPP_NAMESPACE::QueryPoolSamplingModeINTEL::eManual) VULKAN_HPP_NOEXCEPT
- : performanceCountersSampling( performanceCountersSampling_ )
- {}
-
- VULKAN_HPP_CONSTEXPR QueryPoolPerformanceQueryCreateInfoINTEL( QueryPoolPerformanceQueryCreateInfoINTEL const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- QueryPoolPerformanceQueryCreateInfoINTEL( VkQueryPoolPerformanceQueryCreateInfoINTEL const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- QueryPoolPerformanceQueryCreateInfoINTEL & operator=( VkQueryPoolPerformanceQueryCreateInfoINTEL const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::QueryPoolPerformanceQueryCreateInfoINTEL const *>( &rhs );
- return *this;
- }
-
- QueryPoolPerformanceQueryCreateInfoINTEL & operator=( QueryPoolPerformanceQueryCreateInfoINTEL const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( QueryPoolPerformanceQueryCreateInfoINTEL ) );
- return *this;
- }
-
- QueryPoolPerformanceQueryCreateInfoINTEL & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- QueryPoolPerformanceQueryCreateInfoINTEL & setPerformanceCountersSampling( VULKAN_HPP_NAMESPACE::QueryPoolSamplingModeINTEL performanceCountersSampling_ ) VULKAN_HPP_NOEXCEPT
- {
- performanceCountersSampling = performanceCountersSampling_;
- return *this;
- }
-
-
- operator VkQueryPoolPerformanceQueryCreateInfoINTEL const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkQueryPoolPerformanceQueryCreateInfoINTEL*>( this );
- }
-
- operator VkQueryPoolPerformanceQueryCreateInfoINTEL &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkQueryPoolPerformanceQueryCreateInfoINTEL*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( QueryPoolPerformanceQueryCreateInfoINTEL const& ) const = default;
-#else
- bool operator==( QueryPoolPerformanceQueryCreateInfoINTEL const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( performanceCountersSampling == rhs.performanceCountersSampling );
- }
-
- bool operator!=( QueryPoolPerformanceQueryCreateInfoINTEL const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eQueryPoolPerformanceQueryCreateInfoINTEL;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::QueryPoolSamplingModeINTEL performanceCountersSampling = VULKAN_HPP_NAMESPACE::QueryPoolSamplingModeINTEL::eManual;
-
+ value = true
+ };
};
- static_assert( sizeof( QueryPoolPerformanceQueryCreateInfoINTEL ) == sizeof( VkQueryPoolPerformanceQueryCreateInfoINTEL ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<QueryPoolPerformanceQueryCreateInfoINTEL>::value, "struct wrapper is not a standard layout!" );
-
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
template <>
- struct CppType<StructureType, StructureType::eQueryPoolPerformanceQueryCreateInfoINTEL>
+ struct StructExtends<VideoEncodeH264EmitPictureParametersEXT, VideoEncodeInfoKHR>
{
- using Type = QueryPoolPerformanceQueryCreateInfoINTEL;
- };
- using QueryPoolCreateInfoINTEL = QueryPoolPerformanceQueryCreateInfoINTEL;
-
- struct QueueFamilyCheckpointPropertiesNV
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eQueueFamilyCheckpointPropertiesNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR QueueFamilyCheckpointPropertiesNV(VULKAN_HPP_NAMESPACE::PipelineStageFlags checkpointExecutionStageMask_ = {}) VULKAN_HPP_NOEXCEPT
- : checkpointExecutionStageMask( checkpointExecutionStageMask_ )
- {}
-
- VULKAN_HPP_CONSTEXPR QueueFamilyCheckpointPropertiesNV( QueueFamilyCheckpointPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- QueueFamilyCheckpointPropertiesNV( VkQueueFamilyCheckpointPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- QueueFamilyCheckpointPropertiesNV & operator=( VkQueueFamilyCheckpointPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::QueueFamilyCheckpointPropertiesNV const *>( &rhs );
- return *this;
- }
-
- QueueFamilyCheckpointPropertiesNV & operator=( QueueFamilyCheckpointPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( QueueFamilyCheckpointPropertiesNV ) );
- return *this;
- }
-
-
- operator VkQueueFamilyCheckpointPropertiesNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkQueueFamilyCheckpointPropertiesNV*>( this );
- }
-
- operator VkQueueFamilyCheckpointPropertiesNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkQueueFamilyCheckpointPropertiesNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( QueueFamilyCheckpointPropertiesNV const& ) const = default;
-#else
- bool operator==( QueueFamilyCheckpointPropertiesNV const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( checkpointExecutionStageMask == rhs.checkpointExecutionStageMask );
- }
-
- bool operator!=( QueueFamilyCheckpointPropertiesNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eQueueFamilyCheckpointPropertiesNV;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::PipelineStageFlags checkpointExecutionStageMask = {};
-
+ value = true
+ };
};
- static_assert( sizeof( QueueFamilyCheckpointPropertiesNV ) == sizeof( VkQueueFamilyCheckpointPropertiesNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<QueueFamilyCheckpointPropertiesNV>::value, "struct wrapper is not a standard layout!" );
-
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
template <>
- struct CppType<StructureType, StructureType::eQueueFamilyCheckpointPropertiesNV>
- {
- using Type = QueueFamilyCheckpointPropertiesNV;
- };
-
- struct RenderPassAttachmentBeginInfo
+ struct StructExtends<VideoEncodeH264ProfileEXT, VideoProfileKHR>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eRenderPassAttachmentBeginInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR RenderPassAttachmentBeginInfo(uint32_t attachmentCount_ = {}, const VULKAN_HPP_NAMESPACE::ImageView* pAttachments_ = {}) VULKAN_HPP_NOEXCEPT
- : attachmentCount( attachmentCount_ ), pAttachments( pAttachments_ )
- {}
-
- VULKAN_HPP_CONSTEXPR RenderPassAttachmentBeginInfo( RenderPassAttachmentBeginInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- RenderPassAttachmentBeginInfo( VkRenderPassAttachmentBeginInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- RenderPassAttachmentBeginInfo( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ImageView> const & attachments_ )
- : attachmentCount( static_cast<uint32_t>( attachments_.size() ) ), pAttachments( attachments_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- RenderPassAttachmentBeginInfo & operator=( VkRenderPassAttachmentBeginInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::RenderPassAttachmentBeginInfo const *>( &rhs );
- return *this;
- }
-
- RenderPassAttachmentBeginInfo & operator=( RenderPassAttachmentBeginInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( RenderPassAttachmentBeginInfo ) );
- return *this;
- }
-
- RenderPassAttachmentBeginInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- RenderPassAttachmentBeginInfo & setAttachmentCount( uint32_t attachmentCount_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- attachmentCount = attachmentCount_;
- return *this;
- }
-
- RenderPassAttachmentBeginInfo & setPAttachments( const VULKAN_HPP_NAMESPACE::ImageView* pAttachments_ ) VULKAN_HPP_NOEXCEPT
- {
- pAttachments = pAttachments_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- RenderPassAttachmentBeginInfo & setAttachments( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ImageView> const & attachments_ ) VULKAN_HPP_NOEXCEPT
- {
- attachmentCount = static_cast<uint32_t>( attachments_.size() );
- pAttachments = attachments_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkRenderPassAttachmentBeginInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkRenderPassAttachmentBeginInfo*>( this );
- }
-
- operator VkRenderPassAttachmentBeginInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkRenderPassAttachmentBeginInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( RenderPassAttachmentBeginInfo const& ) const = default;
-#else
- bool operator==( RenderPassAttachmentBeginInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( attachmentCount == rhs.attachmentCount )
- && ( pAttachments == rhs.pAttachments );
- }
-
- bool operator!=( RenderPassAttachmentBeginInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eRenderPassAttachmentBeginInfo;
- const void* pNext = {};
- uint32_t attachmentCount = {};
- const VULKAN_HPP_NAMESPACE::ImageView* pAttachments = {};
-
+ value = true
+ };
};
- static_assert( sizeof( RenderPassAttachmentBeginInfo ) == sizeof( VkRenderPassAttachmentBeginInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<RenderPassAttachmentBeginInfo>::value, "struct wrapper is not a standard layout!" );
-
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
template <>
- struct CppType<StructureType, StructureType::eRenderPassAttachmentBeginInfo>
+ struct StructExtends<VideoEncodeH264SessionCreateInfoEXT, VideoSessionCreateInfoKHR>
{
- using Type = RenderPassAttachmentBeginInfo;
- };
- using RenderPassAttachmentBeginInfoKHR = RenderPassAttachmentBeginInfo;
-
- struct RenderPassFragmentDensityMapCreateInfoEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eRenderPassFragmentDensityMapCreateInfoEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR RenderPassFragmentDensityMapCreateInfoEXT(VULKAN_HPP_NAMESPACE::AttachmentReference fragmentDensityMapAttachment_ = {}) VULKAN_HPP_NOEXCEPT
- : fragmentDensityMapAttachment( fragmentDensityMapAttachment_ )
- {}
-
- VULKAN_HPP_CONSTEXPR RenderPassFragmentDensityMapCreateInfoEXT( RenderPassFragmentDensityMapCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- RenderPassFragmentDensityMapCreateInfoEXT( VkRenderPassFragmentDensityMapCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- RenderPassFragmentDensityMapCreateInfoEXT & operator=( VkRenderPassFragmentDensityMapCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::RenderPassFragmentDensityMapCreateInfoEXT const *>( &rhs );
- return *this;
- }
-
- RenderPassFragmentDensityMapCreateInfoEXT & operator=( RenderPassFragmentDensityMapCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( RenderPassFragmentDensityMapCreateInfoEXT ) );
- return *this;
- }
-
- RenderPassFragmentDensityMapCreateInfoEXT & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- RenderPassFragmentDensityMapCreateInfoEXT & setFragmentDensityMapAttachment( VULKAN_HPP_NAMESPACE::AttachmentReference const & fragmentDensityMapAttachment_ ) VULKAN_HPP_NOEXCEPT
- {
- fragmentDensityMapAttachment = fragmentDensityMapAttachment_;
- return *this;
- }
-
-
- operator VkRenderPassFragmentDensityMapCreateInfoEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkRenderPassFragmentDensityMapCreateInfoEXT*>( this );
- }
-
- operator VkRenderPassFragmentDensityMapCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkRenderPassFragmentDensityMapCreateInfoEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( RenderPassFragmentDensityMapCreateInfoEXT const& ) const = default;
-#else
- bool operator==( RenderPassFragmentDensityMapCreateInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( fragmentDensityMapAttachment == rhs.fragmentDensityMapAttachment );
- }
-
- bool operator!=( RenderPassFragmentDensityMapCreateInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eRenderPassFragmentDensityMapCreateInfoEXT;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::AttachmentReference fragmentDensityMapAttachment = {};
-
+ value = true
+ };
};
- static_assert( sizeof( RenderPassFragmentDensityMapCreateInfoEXT ) == sizeof( VkRenderPassFragmentDensityMapCreateInfoEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<RenderPassFragmentDensityMapCreateInfoEXT>::value, "struct wrapper is not a standard layout!" );
-
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
template <>
- struct CppType<StructureType, StructureType::eRenderPassFragmentDensityMapCreateInfoEXT>
- {
- using Type = RenderPassFragmentDensityMapCreateInfoEXT;
- };
-
- struct RenderPassInputAttachmentAspectCreateInfo
+ struct StructExtends<VideoEncodeH264SessionParametersAddInfoEXT, VideoSessionParametersUpdateInfoKHR>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eRenderPassInputAttachmentAspectCreateInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR RenderPassInputAttachmentAspectCreateInfo(uint32_t aspectReferenceCount_ = {}, const VULKAN_HPP_NAMESPACE::InputAttachmentAspectReference* pAspectReferences_ = {}) VULKAN_HPP_NOEXCEPT
- : aspectReferenceCount( aspectReferenceCount_ ), pAspectReferences( pAspectReferences_ )
- {}
-
- VULKAN_HPP_CONSTEXPR RenderPassInputAttachmentAspectCreateInfo( RenderPassInputAttachmentAspectCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- RenderPassInputAttachmentAspectCreateInfo( VkRenderPassInputAttachmentAspectCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- RenderPassInputAttachmentAspectCreateInfo( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::InputAttachmentAspectReference> const & aspectReferences_ )
- : aspectReferenceCount( static_cast<uint32_t>( aspectReferences_.size() ) ), pAspectReferences( aspectReferences_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- RenderPassInputAttachmentAspectCreateInfo & operator=( VkRenderPassInputAttachmentAspectCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::RenderPassInputAttachmentAspectCreateInfo const *>( &rhs );
- return *this;
- }
-
- RenderPassInputAttachmentAspectCreateInfo & operator=( RenderPassInputAttachmentAspectCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( RenderPassInputAttachmentAspectCreateInfo ) );
- return *this;
- }
-
- RenderPassInputAttachmentAspectCreateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- RenderPassInputAttachmentAspectCreateInfo & setAspectReferenceCount( uint32_t aspectReferenceCount_ ) VULKAN_HPP_NOEXCEPT
- {
- aspectReferenceCount = aspectReferenceCount_;
- return *this;
- }
-
- RenderPassInputAttachmentAspectCreateInfo & setPAspectReferences( const VULKAN_HPP_NAMESPACE::InputAttachmentAspectReference* pAspectReferences_ ) VULKAN_HPP_NOEXCEPT
- {
- pAspectReferences = pAspectReferences_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- RenderPassInputAttachmentAspectCreateInfo & setAspectReferences( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::InputAttachmentAspectReference> const & aspectReferences_ ) VULKAN_HPP_NOEXCEPT
- {
- aspectReferenceCount = static_cast<uint32_t>( aspectReferences_.size() );
- pAspectReferences = aspectReferences_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkRenderPassInputAttachmentAspectCreateInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkRenderPassInputAttachmentAspectCreateInfo*>( this );
- }
-
- operator VkRenderPassInputAttachmentAspectCreateInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkRenderPassInputAttachmentAspectCreateInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( RenderPassInputAttachmentAspectCreateInfo const& ) const = default;
-#else
- bool operator==( RenderPassInputAttachmentAspectCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( aspectReferenceCount == rhs.aspectReferenceCount )
- && ( pAspectReferences == rhs.pAspectReferences );
- }
-
- bool operator!=( RenderPassInputAttachmentAspectCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eRenderPassInputAttachmentAspectCreateInfo;
- const void* pNext = {};
- uint32_t aspectReferenceCount = {};
- const VULKAN_HPP_NAMESPACE::InputAttachmentAspectReference* pAspectReferences = {};
-
+ value = true
+ };
};
- static_assert( sizeof( RenderPassInputAttachmentAspectCreateInfo ) == sizeof( VkRenderPassInputAttachmentAspectCreateInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<RenderPassInputAttachmentAspectCreateInfo>::value, "struct wrapper is not a standard layout!" );
-
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
template <>
- struct CppType<StructureType, StructureType::eRenderPassInputAttachmentAspectCreateInfo>
+ struct StructExtends<VideoEncodeH264SessionParametersCreateInfoEXT, VideoSessionParametersCreateInfoKHR>
{
- using Type = RenderPassInputAttachmentAspectCreateInfo;
- };
- using RenderPassInputAttachmentAspectCreateInfoKHR = RenderPassInputAttachmentAspectCreateInfo;
-
- struct RenderPassMultiviewCreateInfo
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eRenderPassMultiviewCreateInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR RenderPassMultiviewCreateInfo(uint32_t subpassCount_ = {}, const uint32_t* pViewMasks_ = {}, uint32_t dependencyCount_ = {}, const int32_t* pViewOffsets_ = {}, uint32_t correlationMaskCount_ = {}, const uint32_t* pCorrelationMasks_ = {}) VULKAN_HPP_NOEXCEPT
- : subpassCount( subpassCount_ ), pViewMasks( pViewMasks_ ), dependencyCount( dependencyCount_ ), pViewOffsets( pViewOffsets_ ), correlationMaskCount( correlationMaskCount_ ), pCorrelationMasks( pCorrelationMasks_ )
- {}
-
- VULKAN_HPP_CONSTEXPR RenderPassMultiviewCreateInfo( RenderPassMultiviewCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- RenderPassMultiviewCreateInfo( VkRenderPassMultiviewCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- RenderPassMultiviewCreateInfo( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & viewMasks_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const int32_t> const & viewOffsets_ = {}, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & correlationMasks_ = {} )
- : subpassCount( static_cast<uint32_t>( viewMasks_.size() ) ), pViewMasks( viewMasks_.data() ), dependencyCount( static_cast<uint32_t>( viewOffsets_.size() ) ), pViewOffsets( viewOffsets_.data() ), correlationMaskCount( static_cast<uint32_t>( correlationMasks_.size() ) ), pCorrelationMasks( correlationMasks_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- RenderPassMultiviewCreateInfo & operator=( VkRenderPassMultiviewCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::RenderPassMultiviewCreateInfo const *>( &rhs );
- return *this;
- }
-
- RenderPassMultiviewCreateInfo & operator=( RenderPassMultiviewCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( RenderPassMultiviewCreateInfo ) );
- return *this;
- }
-
- RenderPassMultiviewCreateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- RenderPassMultiviewCreateInfo & setSubpassCount( uint32_t subpassCount_ ) VULKAN_HPP_NOEXCEPT
- {
- subpassCount = subpassCount_;
- return *this;
- }
-
- RenderPassMultiviewCreateInfo & setPViewMasks( const uint32_t* pViewMasks_ ) VULKAN_HPP_NOEXCEPT
- {
- pViewMasks = pViewMasks_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- RenderPassMultiviewCreateInfo & setViewMasks( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & viewMasks_ ) VULKAN_HPP_NOEXCEPT
- {
- subpassCount = static_cast<uint32_t>( viewMasks_.size() );
- pViewMasks = viewMasks_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- RenderPassMultiviewCreateInfo & setDependencyCount( uint32_t dependencyCount_ ) VULKAN_HPP_NOEXCEPT
- {
- dependencyCount = dependencyCount_;
- return *this;
- }
-
- RenderPassMultiviewCreateInfo & setPViewOffsets( const int32_t* pViewOffsets_ ) VULKAN_HPP_NOEXCEPT
- {
- pViewOffsets = pViewOffsets_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- RenderPassMultiviewCreateInfo & setViewOffsets( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const int32_t> const & viewOffsets_ ) VULKAN_HPP_NOEXCEPT
- {
- dependencyCount = static_cast<uint32_t>( viewOffsets_.size() );
- pViewOffsets = viewOffsets_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- RenderPassMultiviewCreateInfo & setCorrelationMaskCount( uint32_t correlationMaskCount_ ) VULKAN_HPP_NOEXCEPT
- {
- correlationMaskCount = correlationMaskCount_;
- return *this;
- }
-
- RenderPassMultiviewCreateInfo & setPCorrelationMasks( const uint32_t* pCorrelationMasks_ ) VULKAN_HPP_NOEXCEPT
- {
- pCorrelationMasks = pCorrelationMasks_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- RenderPassMultiviewCreateInfo & setCorrelationMasks( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & correlationMasks_ ) VULKAN_HPP_NOEXCEPT
- {
- correlationMaskCount = static_cast<uint32_t>( correlationMasks_.size() );
- pCorrelationMasks = correlationMasks_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkRenderPassMultiviewCreateInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkRenderPassMultiviewCreateInfo*>( this );
- }
-
- operator VkRenderPassMultiviewCreateInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkRenderPassMultiviewCreateInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( RenderPassMultiviewCreateInfo const& ) const = default;
-#else
- bool operator==( RenderPassMultiviewCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( subpassCount == rhs.subpassCount )
- && ( pViewMasks == rhs.pViewMasks )
- && ( dependencyCount == rhs.dependencyCount )
- && ( pViewOffsets == rhs.pViewOffsets )
- && ( correlationMaskCount == rhs.correlationMaskCount )
- && ( pCorrelationMasks == rhs.pCorrelationMasks );
- }
-
- bool operator!=( RenderPassMultiviewCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eRenderPassMultiviewCreateInfo;
- const void* pNext = {};
- uint32_t subpassCount = {};
- const uint32_t* pViewMasks = {};
- uint32_t dependencyCount = {};
- const int32_t* pViewOffsets = {};
- uint32_t correlationMaskCount = {};
- const uint32_t* pCorrelationMasks = {};
-
+ value = true
+ };
};
- static_assert( sizeof( RenderPassMultiviewCreateInfo ) == sizeof( VkRenderPassMultiviewCreateInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<RenderPassMultiviewCreateInfo>::value, "struct wrapper is not a standard layout!" );
-
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
template <>
- struct CppType<StructureType, StructureType::eRenderPassMultiviewCreateInfo>
- {
- using Type = RenderPassMultiviewCreateInfo;
- };
- using RenderPassMultiviewCreateInfoKHR = RenderPassMultiviewCreateInfo;
-
- struct SubpassSampleLocationsEXT
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR SubpassSampleLocationsEXT(uint32_t subpassIndex_ = {}, VULKAN_HPP_NAMESPACE::SampleLocationsInfoEXT sampleLocationsInfo_ = {}) VULKAN_HPP_NOEXCEPT
- : subpassIndex( subpassIndex_ ), sampleLocationsInfo( sampleLocationsInfo_ )
- {}
-
- VULKAN_HPP_CONSTEXPR SubpassSampleLocationsEXT( SubpassSampleLocationsEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- SubpassSampleLocationsEXT( VkSubpassSampleLocationsEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- SubpassSampleLocationsEXT & operator=( VkSubpassSampleLocationsEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SubpassSampleLocationsEXT const *>( &rhs );
- return *this;
- }
-
- SubpassSampleLocationsEXT & operator=( SubpassSampleLocationsEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( SubpassSampleLocationsEXT ) );
- return *this;
- }
-
- SubpassSampleLocationsEXT & setSubpassIndex( uint32_t subpassIndex_ ) VULKAN_HPP_NOEXCEPT
- {
- subpassIndex = subpassIndex_;
- return *this;
- }
-
- SubpassSampleLocationsEXT & setSampleLocationsInfo( VULKAN_HPP_NAMESPACE::SampleLocationsInfoEXT const & sampleLocationsInfo_ ) VULKAN_HPP_NOEXCEPT
- {
- sampleLocationsInfo = sampleLocationsInfo_;
- return *this;
- }
-
-
- operator VkSubpassSampleLocationsEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkSubpassSampleLocationsEXT*>( this );
- }
-
- operator VkSubpassSampleLocationsEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkSubpassSampleLocationsEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( SubpassSampleLocationsEXT const& ) const = default;
-#else
- bool operator==( SubpassSampleLocationsEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( subpassIndex == rhs.subpassIndex )
- && ( sampleLocationsInfo == rhs.sampleLocationsInfo );
- }
-
- bool operator!=( SubpassSampleLocationsEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- uint32_t subpassIndex = {};
- VULKAN_HPP_NAMESPACE::SampleLocationsInfoEXT sampleLocationsInfo = {};
-
- };
- static_assert( sizeof( SubpassSampleLocationsEXT ) == sizeof( VkSubpassSampleLocationsEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<SubpassSampleLocationsEXT>::value, "struct wrapper is not a standard layout!" );
-
- struct RenderPassSampleLocationsBeginInfoEXT
+ struct StructExtends<VideoEncodeH264VclFrameInfoEXT, VideoEncodeInfoKHR>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eRenderPassSampleLocationsBeginInfoEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR RenderPassSampleLocationsBeginInfoEXT(uint32_t attachmentInitialSampleLocationsCount_ = {}, const VULKAN_HPP_NAMESPACE::AttachmentSampleLocationsEXT* pAttachmentInitialSampleLocations_ = {}, uint32_t postSubpassSampleLocationsCount_ = {}, const VULKAN_HPP_NAMESPACE::SubpassSampleLocationsEXT* pPostSubpassSampleLocations_ = {}) VULKAN_HPP_NOEXCEPT
- : attachmentInitialSampleLocationsCount( attachmentInitialSampleLocationsCount_ ), pAttachmentInitialSampleLocations( pAttachmentInitialSampleLocations_ ), postSubpassSampleLocationsCount( postSubpassSampleLocationsCount_ ), pPostSubpassSampleLocations( pPostSubpassSampleLocations_ )
- {}
-
- VULKAN_HPP_CONSTEXPR RenderPassSampleLocationsBeginInfoEXT( RenderPassSampleLocationsBeginInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- RenderPassSampleLocationsBeginInfoEXT( VkRenderPassSampleLocationsBeginInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- RenderPassSampleLocationsBeginInfoEXT( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AttachmentSampleLocationsEXT> const & attachmentInitialSampleLocations_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SubpassSampleLocationsEXT> const & postSubpassSampleLocations_ = {} )
- : attachmentInitialSampleLocationsCount( static_cast<uint32_t>( attachmentInitialSampleLocations_.size() ) ), pAttachmentInitialSampleLocations( attachmentInitialSampleLocations_.data() ), postSubpassSampleLocationsCount( static_cast<uint32_t>( postSubpassSampleLocations_.size() ) ), pPostSubpassSampleLocations( postSubpassSampleLocations_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- RenderPassSampleLocationsBeginInfoEXT & operator=( VkRenderPassSampleLocationsBeginInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::RenderPassSampleLocationsBeginInfoEXT const *>( &rhs );
- return *this;
- }
-
- RenderPassSampleLocationsBeginInfoEXT & operator=( RenderPassSampleLocationsBeginInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( RenderPassSampleLocationsBeginInfoEXT ) );
- return *this;
- }
-
- RenderPassSampleLocationsBeginInfoEXT & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- RenderPassSampleLocationsBeginInfoEXT & setAttachmentInitialSampleLocationsCount( uint32_t attachmentInitialSampleLocationsCount_ ) VULKAN_HPP_NOEXCEPT
- {
- attachmentInitialSampleLocationsCount = attachmentInitialSampleLocationsCount_;
- return *this;
- }
-
- RenderPassSampleLocationsBeginInfoEXT & setPAttachmentInitialSampleLocations( const VULKAN_HPP_NAMESPACE::AttachmentSampleLocationsEXT* pAttachmentInitialSampleLocations_ ) VULKAN_HPP_NOEXCEPT
- {
- pAttachmentInitialSampleLocations = pAttachmentInitialSampleLocations_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- RenderPassSampleLocationsBeginInfoEXT & setAttachmentInitialSampleLocations( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AttachmentSampleLocationsEXT> const & attachmentInitialSampleLocations_ ) VULKAN_HPP_NOEXCEPT
- {
- attachmentInitialSampleLocationsCount = static_cast<uint32_t>( attachmentInitialSampleLocations_.size() );
- pAttachmentInitialSampleLocations = attachmentInitialSampleLocations_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- RenderPassSampleLocationsBeginInfoEXT & setPostSubpassSampleLocationsCount( uint32_t postSubpassSampleLocationsCount_ ) VULKAN_HPP_NOEXCEPT
- {
- postSubpassSampleLocationsCount = postSubpassSampleLocationsCount_;
- return *this;
- }
-
- RenderPassSampleLocationsBeginInfoEXT & setPPostSubpassSampleLocations( const VULKAN_HPP_NAMESPACE::SubpassSampleLocationsEXT* pPostSubpassSampleLocations_ ) VULKAN_HPP_NOEXCEPT
- {
- pPostSubpassSampleLocations = pPostSubpassSampleLocations_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- RenderPassSampleLocationsBeginInfoEXT & setPostSubpassSampleLocations( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SubpassSampleLocationsEXT> const & postSubpassSampleLocations_ ) VULKAN_HPP_NOEXCEPT
- {
- postSubpassSampleLocationsCount = static_cast<uint32_t>( postSubpassSampleLocations_.size() );
- pPostSubpassSampleLocations = postSubpassSampleLocations_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkRenderPassSampleLocationsBeginInfoEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkRenderPassSampleLocationsBeginInfoEXT*>( this );
- }
-
- operator VkRenderPassSampleLocationsBeginInfoEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkRenderPassSampleLocationsBeginInfoEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( RenderPassSampleLocationsBeginInfoEXT const& ) const = default;
-#else
- bool operator==( RenderPassSampleLocationsBeginInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( attachmentInitialSampleLocationsCount == rhs.attachmentInitialSampleLocationsCount )
- && ( pAttachmentInitialSampleLocations == rhs.pAttachmentInitialSampleLocations )
- && ( postSubpassSampleLocationsCount == rhs.postSubpassSampleLocationsCount )
- && ( pPostSubpassSampleLocations == rhs.pPostSubpassSampleLocations );
- }
-
- bool operator!=( RenderPassSampleLocationsBeginInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eRenderPassSampleLocationsBeginInfoEXT;
- const void* pNext = {};
- uint32_t attachmentInitialSampleLocationsCount = {};
- const VULKAN_HPP_NAMESPACE::AttachmentSampleLocationsEXT* pAttachmentInitialSampleLocations = {};
- uint32_t postSubpassSampleLocationsCount = {};
- const VULKAN_HPP_NAMESPACE::SubpassSampleLocationsEXT* pPostSubpassSampleLocations = {};
-
+ value = true
+ };
};
- static_assert( sizeof( RenderPassSampleLocationsBeginInfoEXT ) == sizeof( VkRenderPassSampleLocationsBeginInfoEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<RenderPassSampleLocationsBeginInfoEXT>::value, "struct wrapper is not a standard layout!" );
-
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
template <>
- struct CppType<StructureType, StructureType::eRenderPassSampleLocationsBeginInfoEXT>
- {
- using Type = RenderPassSampleLocationsBeginInfoEXT;
- };
-
- struct RenderPassTransformBeginInfoQCOM
+ struct StructExtends<VideoEncodeRateControlInfoKHR, VideoCodingControlInfoKHR>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eRenderPassTransformBeginInfoQCOM;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR RenderPassTransformBeginInfoQCOM(VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR transform_ = VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR::eIdentity) VULKAN_HPP_NOEXCEPT
- : transform( transform_ )
- {}
-
- VULKAN_HPP_CONSTEXPR RenderPassTransformBeginInfoQCOM( RenderPassTransformBeginInfoQCOM const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- RenderPassTransformBeginInfoQCOM( VkRenderPassTransformBeginInfoQCOM const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- RenderPassTransformBeginInfoQCOM & operator=( VkRenderPassTransformBeginInfoQCOM const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::RenderPassTransformBeginInfoQCOM const *>( &rhs );
- return *this;
- }
-
- RenderPassTransformBeginInfoQCOM & operator=( RenderPassTransformBeginInfoQCOM const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( RenderPassTransformBeginInfoQCOM ) );
- return *this;
- }
-
- RenderPassTransformBeginInfoQCOM & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- RenderPassTransformBeginInfoQCOM & setTransform( VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR transform_ ) VULKAN_HPP_NOEXCEPT
- {
- transform = transform_;
- return *this;
- }
-
-
- operator VkRenderPassTransformBeginInfoQCOM const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkRenderPassTransformBeginInfoQCOM*>( this );
- }
-
- operator VkRenderPassTransformBeginInfoQCOM &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkRenderPassTransformBeginInfoQCOM*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( RenderPassTransformBeginInfoQCOM const& ) const = default;
-#else
- bool operator==( RenderPassTransformBeginInfoQCOM const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( transform == rhs.transform );
- }
-
- bool operator!=( RenderPassTransformBeginInfoQCOM const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eRenderPassTransformBeginInfoQCOM;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR transform = VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR::eIdentity;
-
+ value = true
+ };
};
- static_assert( sizeof( RenderPassTransformBeginInfoQCOM ) == sizeof( VkRenderPassTransformBeginInfoQCOM ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<RenderPassTransformBeginInfoQCOM>::value, "struct wrapper is not a standard layout!" );
-
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
template <>
- struct CppType<StructureType, StructureType::eRenderPassTransformBeginInfoQCOM>
+ struct StructExtends<VideoProfileKHR, QueryPoolCreateInfo>
{
- using Type = RenderPassTransformBeginInfoQCOM;
- };
-
- struct SamplerCustomBorderColorCreateInfoEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSamplerCustomBorderColorCreateInfoEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- SamplerCustomBorderColorCreateInfoEXT(VULKAN_HPP_NAMESPACE::ClearColorValue customBorderColor_ = {}, VULKAN_HPP_NAMESPACE::Format format_ = VULKAN_HPP_NAMESPACE::Format::eUndefined) VULKAN_HPP_NOEXCEPT
- : customBorderColor( customBorderColor_ ), format( format_ )
- {}
-
- SamplerCustomBorderColorCreateInfoEXT( SamplerCustomBorderColorCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- SamplerCustomBorderColorCreateInfoEXT( VkSamplerCustomBorderColorCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- SamplerCustomBorderColorCreateInfoEXT & operator=( VkSamplerCustomBorderColorCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SamplerCustomBorderColorCreateInfoEXT const *>( &rhs );
- return *this;
- }
-
- SamplerCustomBorderColorCreateInfoEXT & operator=( SamplerCustomBorderColorCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( SamplerCustomBorderColorCreateInfoEXT ) );
- return *this;
- }
-
- SamplerCustomBorderColorCreateInfoEXT & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- SamplerCustomBorderColorCreateInfoEXT & setCustomBorderColor( VULKAN_HPP_NAMESPACE::ClearColorValue const & customBorderColor_ ) VULKAN_HPP_NOEXCEPT
- {
- customBorderColor = customBorderColor_;
- return *this;
- }
-
- SamplerCustomBorderColorCreateInfoEXT & setFormat( VULKAN_HPP_NAMESPACE::Format format_ ) VULKAN_HPP_NOEXCEPT
- {
- format = format_;
- return *this;
- }
-
-
- operator VkSamplerCustomBorderColorCreateInfoEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkSamplerCustomBorderColorCreateInfoEXT*>( this );
- }
-
- operator VkSamplerCustomBorderColorCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<VkSamplerCustomBorderColorCreateInfoEXT*>( this );
- }
-
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSamplerCustomBorderColorCreateInfoEXT;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::ClearColorValue customBorderColor = {};
- VULKAN_HPP_NAMESPACE::Format format = VULKAN_HPP_NAMESPACE::Format::eUndefined;
-
+ value = true
+ };
};
- static_assert( sizeof( SamplerCustomBorderColorCreateInfoEXT ) == sizeof( VkSamplerCustomBorderColorCreateInfoEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<SamplerCustomBorderColorCreateInfoEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eSamplerCustomBorderColorCreateInfoEXT>
+ struct StructExtends<VideoProfileKHR, FormatProperties2>
{
- using Type = SamplerCustomBorderColorCreateInfoEXT;
- };
-
- struct SamplerReductionModeCreateInfo
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSamplerReductionModeCreateInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR SamplerReductionModeCreateInfo(VULKAN_HPP_NAMESPACE::SamplerReductionMode reductionMode_ = VULKAN_HPP_NAMESPACE::SamplerReductionMode::eWeightedAverage) VULKAN_HPP_NOEXCEPT
- : reductionMode( reductionMode_ )
- {}
-
- VULKAN_HPP_CONSTEXPR SamplerReductionModeCreateInfo( SamplerReductionModeCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- SamplerReductionModeCreateInfo( VkSamplerReductionModeCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- SamplerReductionModeCreateInfo & operator=( VkSamplerReductionModeCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SamplerReductionModeCreateInfo const *>( &rhs );
- return *this;
- }
-
- SamplerReductionModeCreateInfo & operator=( SamplerReductionModeCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( SamplerReductionModeCreateInfo ) );
- return *this;
- }
-
- SamplerReductionModeCreateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- SamplerReductionModeCreateInfo & setReductionMode( VULKAN_HPP_NAMESPACE::SamplerReductionMode reductionMode_ ) VULKAN_HPP_NOEXCEPT
- {
- reductionMode = reductionMode_;
- return *this;
- }
-
-
- operator VkSamplerReductionModeCreateInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkSamplerReductionModeCreateInfo*>( this );
- }
-
- operator VkSamplerReductionModeCreateInfo &() VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<VkSamplerReductionModeCreateInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( SamplerReductionModeCreateInfo const& ) const = default;
-#else
- bool operator==( SamplerReductionModeCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( reductionMode == rhs.reductionMode );
- }
-
- bool operator!=( SamplerReductionModeCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSamplerReductionModeCreateInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::SamplerReductionMode reductionMode = VULKAN_HPP_NAMESPACE::SamplerReductionMode::eWeightedAverage;
-
+ value = true
+ };
};
- static_assert( sizeof( SamplerReductionModeCreateInfo ) == sizeof( VkSamplerReductionModeCreateInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<SamplerReductionModeCreateInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eSamplerReductionModeCreateInfo>
- {
- using Type = SamplerReductionModeCreateInfo;
- };
- using SamplerReductionModeCreateInfoEXT = SamplerReductionModeCreateInfo;
-
- struct SamplerYcbcrConversionImageFormatProperties
+ struct StructExtends<VideoProfileKHR, ImageCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSamplerYcbcrConversionImageFormatProperties;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR SamplerYcbcrConversionImageFormatProperties(uint32_t combinedImageSamplerDescriptorCount_ = {}) VULKAN_HPP_NOEXCEPT
- : combinedImageSamplerDescriptorCount( combinedImageSamplerDescriptorCount_ )
- {}
-
- VULKAN_HPP_CONSTEXPR SamplerYcbcrConversionImageFormatProperties( SamplerYcbcrConversionImageFormatProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- SamplerYcbcrConversionImageFormatProperties( VkSamplerYcbcrConversionImageFormatProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- SamplerYcbcrConversionImageFormatProperties & operator=( VkSamplerYcbcrConversionImageFormatProperties const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SamplerYcbcrConversionImageFormatProperties const *>( &rhs );
- return *this;
- }
-
- SamplerYcbcrConversionImageFormatProperties & operator=( SamplerYcbcrConversionImageFormatProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- memcpy( static_cast<void *>( this ), &rhs, sizeof( SamplerYcbcrConversionImageFormatProperties ) );
- return *this;
- }
-
-
- operator VkSamplerYcbcrConversionImageFormatProperties const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkSamplerYcbcrConversionImageFormatProperties*>( this );
- }
-
- operator VkSamplerYcbcrConversionImageFormatProperties &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkSamplerYcbcrConversionImageFormatProperties*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( SamplerYcbcrConversionImageFormatProperties const& ) const = default;
-#else
- bool operator==( SamplerYcbcrConversionImageFormatProperties const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( combinedImageSamplerDescriptorCount == rhs.combinedImageSamplerDescriptorCount );
- }
-
- bool operator!=( SamplerYcbcrConversionImageFormatProperties const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSamplerYcbcrConversionImageFormatProperties;
- void* pNext = {};
- uint32_t combinedImageSamplerDescriptorCount = {};
-
+ value = true
+ };
};
- static_assert( sizeof( SamplerYcbcrConversionImageFormatProperties ) == sizeof( VkSamplerYcbcrConversionImageFormatProperties ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<SamplerYcbcrConversionImageFormatProperties>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eSamplerYcbcrConversionImageFormatProperties>
- {
- using Type = SamplerYcbcrConversionImageFormatProperties;
- };
- using SamplerYcbcrConversionImageFormatPropertiesKHR = SamplerYcbcrConversionImageFormatProperties;
-
- struct SamplerYcbcrConversionInfo
+ struct StructExtends<VideoProfileKHR, ImageViewCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSamplerYcbcrConversionInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR SamplerYcbcrConversionInfo(VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion conversion_ = {}) VULKAN_HPP_NOEXCEPT
- : conversion( conversion_ )
- {}
-
- VULKAN_HPP_CONSTEXPR SamplerYcbcrConversionInfo( SamplerYcbcrConversionInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- SamplerYcbcrConversionInfo( VkSamplerYcbcrConversionInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- SamplerYcbcrConversionInfo & operator=( VkSamplerYcbcrConversionInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SamplerYcbcrConversionInfo const *>( &rhs );
- return *this;
- }
-
- SamplerYcbcrConversionInfo & operator=( SamplerYcbcrConversionInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( SamplerYcbcrConversionInfo ) );
- return *this;
- }
-
- SamplerYcbcrConversionInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- SamplerYcbcrConversionInfo & setConversion( VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion conversion_ ) VULKAN_HPP_NOEXCEPT
- {
- conversion = conversion_;
- return *this;
- }
-
-
- operator VkSamplerYcbcrConversionInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkSamplerYcbcrConversionInfo*>( this );
- }
-
- operator VkSamplerYcbcrConversionInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkSamplerYcbcrConversionInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( SamplerYcbcrConversionInfo const& ) const = default;
-#else
- bool operator==( SamplerYcbcrConversionInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( conversion == rhs.conversion );
- }
-
- bool operator!=( SamplerYcbcrConversionInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSamplerYcbcrConversionInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion conversion = {};
-
+ value = true
+ };
};
- static_assert( sizeof( SamplerYcbcrConversionInfo ) == sizeof( VkSamplerYcbcrConversionInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<SamplerYcbcrConversionInfo>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eSamplerYcbcrConversionInfo>
+ struct StructExtends<VideoProfileKHR, BufferCreateInfo>
{
- using Type = SamplerYcbcrConversionInfo;
- };
- using SamplerYcbcrConversionInfoKHR = SamplerYcbcrConversionInfo;
-
- struct SemaphoreTypeCreateInfo
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSemaphoreTypeCreateInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR SemaphoreTypeCreateInfo(VULKAN_HPP_NAMESPACE::SemaphoreType semaphoreType_ = VULKAN_HPP_NAMESPACE::SemaphoreType::eBinary, uint64_t initialValue_ = {}) VULKAN_HPP_NOEXCEPT
- : semaphoreType( semaphoreType_ ), initialValue( initialValue_ )
- {}
-
- VULKAN_HPP_CONSTEXPR SemaphoreTypeCreateInfo( SemaphoreTypeCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- SemaphoreTypeCreateInfo( VkSemaphoreTypeCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- SemaphoreTypeCreateInfo & operator=( VkSemaphoreTypeCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SemaphoreTypeCreateInfo const *>( &rhs );
- return *this;
- }
-
- SemaphoreTypeCreateInfo & operator=( SemaphoreTypeCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( SemaphoreTypeCreateInfo ) );
- return *this;
- }
-
- SemaphoreTypeCreateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- SemaphoreTypeCreateInfo & setSemaphoreType( VULKAN_HPP_NAMESPACE::SemaphoreType semaphoreType_ ) VULKAN_HPP_NOEXCEPT
- {
- semaphoreType = semaphoreType_;
- return *this;
- }
-
- SemaphoreTypeCreateInfo & setInitialValue( uint64_t initialValue_ ) VULKAN_HPP_NOEXCEPT
- {
- initialValue = initialValue_;
- return *this;
- }
-
-
- operator VkSemaphoreTypeCreateInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkSemaphoreTypeCreateInfo*>( this );
- }
-
- operator VkSemaphoreTypeCreateInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkSemaphoreTypeCreateInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( SemaphoreTypeCreateInfo const& ) const = default;
-#else
- bool operator==( SemaphoreTypeCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( semaphoreType == rhs.semaphoreType )
- && ( initialValue == rhs.initialValue );
- }
-
- bool operator!=( SemaphoreTypeCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSemaphoreTypeCreateInfo;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::SemaphoreType semaphoreType = VULKAN_HPP_NAMESPACE::SemaphoreType::eBinary;
- uint64_t initialValue = {};
-
+ value = true
+ };
};
- static_assert( sizeof( SemaphoreTypeCreateInfo ) == sizeof( VkSemaphoreTypeCreateInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<SemaphoreTypeCreateInfo>::value, "struct wrapper is not a standard layout!" );
-
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
template <>
- struct CppType<StructureType, StructureType::eSemaphoreTypeCreateInfo>
+ struct StructExtends<VideoProfilesKHR, FormatProperties2>
{
- using Type = SemaphoreTypeCreateInfo;
- };
- using SemaphoreTypeCreateInfoKHR = SemaphoreTypeCreateInfo;
-
- struct SetStateFlagsIndirectCommandNV
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR SetStateFlagsIndirectCommandNV(uint32_t data_ = {}) VULKAN_HPP_NOEXCEPT
- : data( data_ )
- {}
-
- VULKAN_HPP_CONSTEXPR SetStateFlagsIndirectCommandNV( SetStateFlagsIndirectCommandNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- SetStateFlagsIndirectCommandNV( VkSetStateFlagsIndirectCommandNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- SetStateFlagsIndirectCommandNV & operator=( VkSetStateFlagsIndirectCommandNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SetStateFlagsIndirectCommandNV const *>( &rhs );
- return *this;
- }
-
- SetStateFlagsIndirectCommandNV & operator=( SetStateFlagsIndirectCommandNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( SetStateFlagsIndirectCommandNV ) );
- return *this;
- }
-
- SetStateFlagsIndirectCommandNV & setData( uint32_t data_ ) VULKAN_HPP_NOEXCEPT
- {
- data = data_;
- return *this;
- }
-
-
- operator VkSetStateFlagsIndirectCommandNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkSetStateFlagsIndirectCommandNV*>( this );
- }
-
- operator VkSetStateFlagsIndirectCommandNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkSetStateFlagsIndirectCommandNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( SetStateFlagsIndirectCommandNV const& ) const = default;
-#else
- bool operator==( SetStateFlagsIndirectCommandNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( data == rhs.data );
- }
-
- bool operator!=( SetStateFlagsIndirectCommandNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- uint32_t data = {};
-
- };
- static_assert( sizeof( SetStateFlagsIndirectCommandNV ) == sizeof( VkSetStateFlagsIndirectCommandNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<SetStateFlagsIndirectCommandNV>::value, "struct wrapper is not a standard layout!" );
-
- struct ShaderModuleValidationCacheCreateInfoEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eShaderModuleValidationCacheCreateInfoEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ShaderModuleValidationCacheCreateInfoEXT(VULKAN_HPP_NAMESPACE::ValidationCacheEXT validationCache_ = {}) VULKAN_HPP_NOEXCEPT
- : validationCache( validationCache_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ShaderModuleValidationCacheCreateInfoEXT( ShaderModuleValidationCacheCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ShaderModuleValidationCacheCreateInfoEXT( VkShaderModuleValidationCacheCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ShaderModuleValidationCacheCreateInfoEXT & operator=( VkShaderModuleValidationCacheCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ShaderModuleValidationCacheCreateInfoEXT const *>( &rhs );
- return *this;
- }
-
- ShaderModuleValidationCacheCreateInfoEXT & operator=( ShaderModuleValidationCacheCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ShaderModuleValidationCacheCreateInfoEXT ) );
- return *this;
- }
-
- ShaderModuleValidationCacheCreateInfoEXT & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- ShaderModuleValidationCacheCreateInfoEXT & setValidationCache( VULKAN_HPP_NAMESPACE::ValidationCacheEXT validationCache_ ) VULKAN_HPP_NOEXCEPT
- {
- validationCache = validationCache_;
- return *this;
- }
-
-
- operator VkShaderModuleValidationCacheCreateInfoEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkShaderModuleValidationCacheCreateInfoEXT*>( this );
- }
-
- operator VkShaderModuleValidationCacheCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkShaderModuleValidationCacheCreateInfoEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ShaderModuleValidationCacheCreateInfoEXT const& ) const = default;
-#else
- bool operator==( ShaderModuleValidationCacheCreateInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( validationCache == rhs.validationCache );
- }
-
- bool operator!=( ShaderModuleValidationCacheCreateInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eShaderModuleValidationCacheCreateInfoEXT;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::ValidationCacheEXT validationCache = {};
-
+ value = true
+ };
};
- static_assert( sizeof( ShaderModuleValidationCacheCreateInfoEXT ) == sizeof( VkShaderModuleValidationCacheCreateInfoEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ShaderModuleValidationCacheCreateInfoEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eShaderModuleValidationCacheCreateInfoEXT>
- {
- using Type = ShaderModuleValidationCacheCreateInfoEXT;
- };
-
- struct ShaderResourceUsageAMD
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ShaderResourceUsageAMD(uint32_t numUsedVgprs_ = {}, uint32_t numUsedSgprs_ = {}, uint32_t ldsSizePerLocalWorkGroup_ = {}, size_t ldsUsageSizeInBytes_ = {}, size_t scratchMemUsageInBytes_ = {}) VULKAN_HPP_NOEXCEPT
- : numUsedVgprs( numUsedVgprs_ ), numUsedSgprs( numUsedSgprs_ ), ldsSizePerLocalWorkGroup( ldsSizePerLocalWorkGroup_ ), ldsUsageSizeInBytes( ldsUsageSizeInBytes_ ), scratchMemUsageInBytes( scratchMemUsageInBytes_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ShaderResourceUsageAMD( ShaderResourceUsageAMD const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ShaderResourceUsageAMD( VkShaderResourceUsageAMD const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ShaderResourceUsageAMD & operator=( VkShaderResourceUsageAMD const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ShaderResourceUsageAMD const *>( &rhs );
- return *this;
- }
-
- ShaderResourceUsageAMD & operator=( ShaderResourceUsageAMD const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ShaderResourceUsageAMD ) );
- return *this;
- }
-
-
- operator VkShaderResourceUsageAMD const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkShaderResourceUsageAMD*>( this );
- }
-
- operator VkShaderResourceUsageAMD &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkShaderResourceUsageAMD*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ShaderResourceUsageAMD const& ) const = default;
-#else
- bool operator==( ShaderResourceUsageAMD const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( numUsedVgprs == rhs.numUsedVgprs )
- && ( numUsedSgprs == rhs.numUsedSgprs )
- && ( ldsSizePerLocalWorkGroup == rhs.ldsSizePerLocalWorkGroup )
- && ( ldsUsageSizeInBytes == rhs.ldsUsageSizeInBytes )
- && ( scratchMemUsageInBytes == rhs.scratchMemUsageInBytes );
- }
-
- bool operator!=( ShaderResourceUsageAMD const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- uint32_t numUsedVgprs = {};
- uint32_t numUsedSgprs = {};
- uint32_t ldsSizePerLocalWorkGroup = {};
- size_t ldsUsageSizeInBytes = {};
- size_t scratchMemUsageInBytes = {};
-
- };
- static_assert( sizeof( ShaderResourceUsageAMD ) == sizeof( VkShaderResourceUsageAMD ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ShaderResourceUsageAMD>::value, "struct wrapper is not a standard layout!" );
-
- struct ShaderStatisticsInfoAMD
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR_14 ShaderStatisticsInfoAMD(VULKAN_HPP_NAMESPACE::ShaderStageFlags shaderStageMask_ = {}, VULKAN_HPP_NAMESPACE::ShaderResourceUsageAMD resourceUsage_ = {}, uint32_t numPhysicalVgprs_ = {}, uint32_t numPhysicalSgprs_ = {}, uint32_t numAvailableVgprs_ = {}, uint32_t numAvailableSgprs_ = {}, std::array<uint32_t,3> const& computeWorkGroupSize_ = {}) VULKAN_HPP_NOEXCEPT
- : shaderStageMask( shaderStageMask_ ), resourceUsage( resourceUsage_ ), numPhysicalVgprs( numPhysicalVgprs_ ), numPhysicalSgprs( numPhysicalSgprs_ ), numAvailableVgprs( numAvailableVgprs_ ), numAvailableSgprs( numAvailableSgprs_ ), computeWorkGroupSize( computeWorkGroupSize_ )
- {}
-
- VULKAN_HPP_CONSTEXPR_14 ShaderStatisticsInfoAMD( ShaderStatisticsInfoAMD const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ShaderStatisticsInfoAMD( VkShaderStatisticsInfoAMD const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ShaderStatisticsInfoAMD & operator=( VkShaderStatisticsInfoAMD const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ShaderStatisticsInfoAMD const *>( &rhs );
- return *this;
- }
-
- ShaderStatisticsInfoAMD & operator=( ShaderStatisticsInfoAMD const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ShaderStatisticsInfoAMD ) );
- return *this;
- }
-
-
- operator VkShaderStatisticsInfoAMD const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkShaderStatisticsInfoAMD*>( this );
- }
-
- operator VkShaderStatisticsInfoAMD &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkShaderStatisticsInfoAMD*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ShaderStatisticsInfoAMD const& ) const = default;
-#else
- bool operator==( ShaderStatisticsInfoAMD const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( shaderStageMask == rhs.shaderStageMask )
- && ( resourceUsage == rhs.resourceUsage )
- && ( numPhysicalVgprs == rhs.numPhysicalVgprs )
- && ( numPhysicalSgprs == rhs.numPhysicalSgprs )
- && ( numAvailableVgprs == rhs.numAvailableVgprs )
- && ( numAvailableSgprs == rhs.numAvailableSgprs )
- && ( computeWorkGroupSize == rhs.computeWorkGroupSize );
- }
-
- bool operator!=( ShaderStatisticsInfoAMD const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- VULKAN_HPP_NAMESPACE::ShaderStageFlags shaderStageMask = {};
- VULKAN_HPP_NAMESPACE::ShaderResourceUsageAMD resourceUsage = {};
- uint32_t numPhysicalVgprs = {};
- uint32_t numPhysicalSgprs = {};
- uint32_t numAvailableVgprs = {};
- uint32_t numAvailableSgprs = {};
- VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint32_t, 3> computeWorkGroupSize = {};
-
- };
- static_assert( sizeof( ShaderStatisticsInfoAMD ) == sizeof( VkShaderStatisticsInfoAMD ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ShaderStatisticsInfoAMD>::value, "struct wrapper is not a standard layout!" );
-
- struct SharedPresentSurfaceCapabilitiesKHR
+ struct StructExtends<VideoProfilesKHR, ImageCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSharedPresentSurfaceCapabilitiesKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR SharedPresentSurfaceCapabilitiesKHR(VULKAN_HPP_NAMESPACE::ImageUsageFlags sharedPresentSupportedUsageFlags_ = {}) VULKAN_HPP_NOEXCEPT
- : sharedPresentSupportedUsageFlags( sharedPresentSupportedUsageFlags_ )
- {}
-
- VULKAN_HPP_CONSTEXPR SharedPresentSurfaceCapabilitiesKHR( SharedPresentSurfaceCapabilitiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- SharedPresentSurfaceCapabilitiesKHR( VkSharedPresentSurfaceCapabilitiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- SharedPresentSurfaceCapabilitiesKHR & operator=( VkSharedPresentSurfaceCapabilitiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SharedPresentSurfaceCapabilitiesKHR const *>( &rhs );
- return *this;
- }
-
- SharedPresentSurfaceCapabilitiesKHR & operator=( SharedPresentSurfaceCapabilitiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( SharedPresentSurfaceCapabilitiesKHR ) );
- return *this;
- }
-
-
- operator VkSharedPresentSurfaceCapabilitiesKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkSharedPresentSurfaceCapabilitiesKHR*>( this );
- }
-
- operator VkSharedPresentSurfaceCapabilitiesKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkSharedPresentSurfaceCapabilitiesKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( SharedPresentSurfaceCapabilitiesKHR const& ) const = default;
-#else
- bool operator==( SharedPresentSurfaceCapabilitiesKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( sharedPresentSupportedUsageFlags == rhs.sharedPresentSupportedUsageFlags );
- }
-
- bool operator!=( SharedPresentSurfaceCapabilitiesKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSharedPresentSurfaceCapabilitiesKHR;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::ImageUsageFlags sharedPresentSupportedUsageFlags = {};
-
+ value = true
+ };
};
- static_assert( sizeof( SharedPresentSurfaceCapabilitiesKHR ) == sizeof( VkSharedPresentSurfaceCapabilitiesKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<SharedPresentSurfaceCapabilitiesKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eSharedPresentSurfaceCapabilitiesKHR>
- {
- using Type = SharedPresentSurfaceCapabilitiesKHR;
- };
-
-#ifdef VK_USE_PLATFORM_GGP
- struct StreamDescriptorSurfaceCreateInfoGGP
+ struct StructExtends<VideoProfilesKHR, ImageViewCreateInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eStreamDescriptorSurfaceCreateInfoGGP;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR StreamDescriptorSurfaceCreateInfoGGP(VULKAN_HPP_NAMESPACE::StreamDescriptorSurfaceCreateFlagsGGP flags_ = {}, GgpStreamDescriptor streamDescriptor_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), streamDescriptor( streamDescriptor_ )
- {}
-
- VULKAN_HPP_CONSTEXPR StreamDescriptorSurfaceCreateInfoGGP( StreamDescriptorSurfaceCreateInfoGGP const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- StreamDescriptorSurfaceCreateInfoGGP( VkStreamDescriptorSurfaceCreateInfoGGP const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- StreamDescriptorSurfaceCreateInfoGGP & operator=( VkStreamDescriptorSurfaceCreateInfoGGP const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::StreamDescriptorSurfaceCreateInfoGGP const *>( &rhs );
- return *this;
- }
-
- StreamDescriptorSurfaceCreateInfoGGP & operator=( StreamDescriptorSurfaceCreateInfoGGP const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- memcpy( static_cast<void *>( this ), &rhs, sizeof( StreamDescriptorSurfaceCreateInfoGGP ) );
- return *this;
- }
-
- StreamDescriptorSurfaceCreateInfoGGP & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- StreamDescriptorSurfaceCreateInfoGGP & setFlags( VULKAN_HPP_NAMESPACE::StreamDescriptorSurfaceCreateFlagsGGP flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- StreamDescriptorSurfaceCreateInfoGGP & setStreamDescriptor( GgpStreamDescriptor streamDescriptor_ ) VULKAN_HPP_NOEXCEPT
- {
- streamDescriptor = streamDescriptor_;
- return *this;
- }
-
-
- operator VkStreamDescriptorSurfaceCreateInfoGGP const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkStreamDescriptorSurfaceCreateInfoGGP*>( this );
- }
-
- operator VkStreamDescriptorSurfaceCreateInfoGGP &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkStreamDescriptorSurfaceCreateInfoGGP*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( StreamDescriptorSurfaceCreateInfoGGP const& ) const = default;
-#else
- bool operator==( StreamDescriptorSurfaceCreateInfoGGP const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( memcmp( &streamDescriptor, &rhs.streamDescriptor, sizeof( GgpStreamDescriptor ) ) == 0 );
- }
-
- bool operator!=( StreamDescriptorSurfaceCreateInfoGGP const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eStreamDescriptorSurfaceCreateInfoGGP;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::StreamDescriptorSurfaceCreateFlagsGGP flags = {};
- GgpStreamDescriptor streamDescriptor = {};
-
+ value = true
+ };
};
- static_assert( sizeof( StreamDescriptorSurfaceCreateInfoGGP ) == sizeof( VkStreamDescriptorSurfaceCreateInfoGGP ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<StreamDescriptorSurfaceCreateInfoGGP>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eStreamDescriptorSurfaceCreateInfoGGP>
+ struct StructExtends<VideoProfilesKHR, BufferCreateInfo>
{
- using Type = StreamDescriptorSurfaceCreateInfoGGP;
- };
-#endif /*VK_USE_PLATFORM_GGP*/
-
- struct SubpassDescriptionDepthStencilResolve
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSubpassDescriptionDepthStencilResolve;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR SubpassDescriptionDepthStencilResolve(VULKAN_HPP_NAMESPACE::ResolveModeFlagBits depthResolveMode_ = VULKAN_HPP_NAMESPACE::ResolveModeFlagBits::eNone, VULKAN_HPP_NAMESPACE::ResolveModeFlagBits stencilResolveMode_ = VULKAN_HPP_NAMESPACE::ResolveModeFlagBits::eNone, const VULKAN_HPP_NAMESPACE::AttachmentReference2* pDepthStencilResolveAttachment_ = {}) VULKAN_HPP_NOEXCEPT
- : depthResolveMode( depthResolveMode_ ), stencilResolveMode( stencilResolveMode_ ), pDepthStencilResolveAttachment( pDepthStencilResolveAttachment_ )
- {}
-
- VULKAN_HPP_CONSTEXPR SubpassDescriptionDepthStencilResolve( SubpassDescriptionDepthStencilResolve const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- SubpassDescriptionDepthStencilResolve( VkSubpassDescriptionDepthStencilResolve const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- SubpassDescriptionDepthStencilResolve & operator=( VkSubpassDescriptionDepthStencilResolve const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SubpassDescriptionDepthStencilResolve const *>( &rhs );
- return *this;
- }
-
- SubpassDescriptionDepthStencilResolve & operator=( SubpassDescriptionDepthStencilResolve const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- memcpy( static_cast<void *>( this ), &rhs, sizeof( SubpassDescriptionDepthStencilResolve ) );
- return *this;
- }
-
- SubpassDescriptionDepthStencilResolve & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- SubpassDescriptionDepthStencilResolve & setDepthResolveMode( VULKAN_HPP_NAMESPACE::ResolveModeFlagBits depthResolveMode_ ) VULKAN_HPP_NOEXCEPT
- {
- depthResolveMode = depthResolveMode_;
- return *this;
- }
-
- SubpassDescriptionDepthStencilResolve & setStencilResolveMode( VULKAN_HPP_NAMESPACE::ResolveModeFlagBits stencilResolveMode_ ) VULKAN_HPP_NOEXCEPT
- {
- stencilResolveMode = stencilResolveMode_;
- return *this;
- }
-
- SubpassDescriptionDepthStencilResolve & setPDepthStencilResolveAttachment( const VULKAN_HPP_NAMESPACE::AttachmentReference2* pDepthStencilResolveAttachment_ ) VULKAN_HPP_NOEXCEPT
- {
- pDepthStencilResolveAttachment = pDepthStencilResolveAttachment_;
- return *this;
- }
-
-
- operator VkSubpassDescriptionDepthStencilResolve const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkSubpassDescriptionDepthStencilResolve*>( this );
- }
-
- operator VkSubpassDescriptionDepthStencilResolve &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkSubpassDescriptionDepthStencilResolve*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( SubpassDescriptionDepthStencilResolve const& ) const = default;
-#else
- bool operator==( SubpassDescriptionDepthStencilResolve const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( depthResolveMode == rhs.depthResolveMode )
- && ( stencilResolveMode == rhs.stencilResolveMode )
- && ( pDepthStencilResolveAttachment == rhs.pDepthStencilResolveAttachment );
- }
-
- bool operator!=( SubpassDescriptionDepthStencilResolve const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSubpassDescriptionDepthStencilResolve;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::ResolveModeFlagBits depthResolveMode = VULKAN_HPP_NAMESPACE::ResolveModeFlagBits::eNone;
- VULKAN_HPP_NAMESPACE::ResolveModeFlagBits stencilResolveMode = VULKAN_HPP_NAMESPACE::ResolveModeFlagBits::eNone;
- const VULKAN_HPP_NAMESPACE::AttachmentReference2* pDepthStencilResolveAttachment = {};
-
+ value = true
+ };
};
- static_assert( sizeof( SubpassDescriptionDepthStencilResolve ) == sizeof( VkSubpassDescriptionDepthStencilResolve ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<SubpassDescriptionDepthStencilResolve>::value, "struct wrapper is not a standard layout!" );
-
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
template <>
- struct CppType<StructureType, StructureType::eSubpassDescriptionDepthStencilResolve>
- {
- using Type = SubpassDescriptionDepthStencilResolve;
- };
- using SubpassDescriptionDepthStencilResolveKHR = SubpassDescriptionDepthStencilResolve;
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- struct SurfaceCapabilitiesFullScreenExclusiveEXT
+ struct StructExtends<VideoQueueFamilyProperties2KHR, QueueFamilyProperties2>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSurfaceCapabilitiesFullScreenExclusiveEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR SurfaceCapabilitiesFullScreenExclusiveEXT(VULKAN_HPP_NAMESPACE::Bool32 fullScreenExclusiveSupported_ = {}) VULKAN_HPP_NOEXCEPT
- : fullScreenExclusiveSupported( fullScreenExclusiveSupported_ )
- {}
-
- VULKAN_HPP_CONSTEXPR SurfaceCapabilitiesFullScreenExclusiveEXT( SurfaceCapabilitiesFullScreenExclusiveEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- SurfaceCapabilitiesFullScreenExclusiveEXT( VkSurfaceCapabilitiesFullScreenExclusiveEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- SurfaceCapabilitiesFullScreenExclusiveEXT & operator=( VkSurfaceCapabilitiesFullScreenExclusiveEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SurfaceCapabilitiesFullScreenExclusiveEXT const *>( &rhs );
- return *this;
- }
-
- SurfaceCapabilitiesFullScreenExclusiveEXT & operator=( SurfaceCapabilitiesFullScreenExclusiveEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- memcpy( static_cast<void *>( this ), &rhs, sizeof( SurfaceCapabilitiesFullScreenExclusiveEXT ) );
- return *this;
- }
-
- SurfaceCapabilitiesFullScreenExclusiveEXT & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- SurfaceCapabilitiesFullScreenExclusiveEXT & setFullScreenExclusiveSupported( VULKAN_HPP_NAMESPACE::Bool32 fullScreenExclusiveSupported_ ) VULKAN_HPP_NOEXCEPT
- {
- fullScreenExclusiveSupported = fullScreenExclusiveSupported_;
- return *this;
- }
-
-
- operator VkSurfaceCapabilitiesFullScreenExclusiveEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkSurfaceCapabilitiesFullScreenExclusiveEXT*>( this );
- }
-
- operator VkSurfaceCapabilitiesFullScreenExclusiveEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkSurfaceCapabilitiesFullScreenExclusiveEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( SurfaceCapabilitiesFullScreenExclusiveEXT const& ) const = default;
-#else
- bool operator==( SurfaceCapabilitiesFullScreenExclusiveEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( fullScreenExclusiveSupported == rhs.fullScreenExclusiveSupported );
- }
-
- bool operator!=( SurfaceCapabilitiesFullScreenExclusiveEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSurfaceCapabilitiesFullScreenExclusiveEXT;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 fullScreenExclusiveSupported = {};
-
+ value = true
+ };
};
- static_assert( sizeof( SurfaceCapabilitiesFullScreenExclusiveEXT ) == sizeof( VkSurfaceCapabilitiesFullScreenExclusiveEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<SurfaceCapabilitiesFullScreenExclusiveEXT>::value, "struct wrapper is not a standard layout!" );
-
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
template <>
- struct CppType<StructureType, StructureType::eSurfaceCapabilitiesFullScreenExclusiveEXT>
- {
- using Type = SurfaceCapabilitiesFullScreenExclusiveEXT;
- };
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- struct SurfaceFullScreenExclusiveInfoEXT
+ struct StructExtends<Win32KeyedMutexAcquireReleaseInfoKHR, SubmitInfo>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSurfaceFullScreenExclusiveInfoEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR SurfaceFullScreenExclusiveInfoEXT(VULKAN_HPP_NAMESPACE::FullScreenExclusiveEXT fullScreenExclusive_ = VULKAN_HPP_NAMESPACE::FullScreenExclusiveEXT::eDefault) VULKAN_HPP_NOEXCEPT
- : fullScreenExclusive( fullScreenExclusive_ )
- {}
-
- VULKAN_HPP_CONSTEXPR SurfaceFullScreenExclusiveInfoEXT( SurfaceFullScreenExclusiveInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- SurfaceFullScreenExclusiveInfoEXT( VkSurfaceFullScreenExclusiveInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- SurfaceFullScreenExclusiveInfoEXT & operator=( VkSurfaceFullScreenExclusiveInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SurfaceFullScreenExclusiveInfoEXT const *>( &rhs );
- return *this;
- }
-
- SurfaceFullScreenExclusiveInfoEXT & operator=( SurfaceFullScreenExclusiveInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ enum
{
- memcpy( static_cast<void *>( this ), &rhs, sizeof( SurfaceFullScreenExclusiveInfoEXT ) );
- return *this;
- }
-
- SurfaceFullScreenExclusiveInfoEXT & setPNext( void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- SurfaceFullScreenExclusiveInfoEXT & setFullScreenExclusive( VULKAN_HPP_NAMESPACE::FullScreenExclusiveEXT fullScreenExclusive_ ) VULKAN_HPP_NOEXCEPT
- {
- fullScreenExclusive = fullScreenExclusive_;
- return *this;
- }
-
-
- operator VkSurfaceFullScreenExclusiveInfoEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkSurfaceFullScreenExclusiveInfoEXT*>( this );
- }
-
- operator VkSurfaceFullScreenExclusiveInfoEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkSurfaceFullScreenExclusiveInfoEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( SurfaceFullScreenExclusiveInfoEXT const& ) const = default;
-#else
- bool operator==( SurfaceFullScreenExclusiveInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( fullScreenExclusive == rhs.fullScreenExclusive );
- }
-
- bool operator!=( SurfaceFullScreenExclusiveInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSurfaceFullScreenExclusiveInfoEXT;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::FullScreenExclusiveEXT fullScreenExclusive = VULKAN_HPP_NAMESPACE::FullScreenExclusiveEXT::eDefault;
-
+ value = true
+ };
};
- static_assert( sizeof( SurfaceFullScreenExclusiveInfoEXT ) == sizeof( VkSurfaceFullScreenExclusiveInfoEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<SurfaceFullScreenExclusiveInfoEXT>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eSurfaceFullScreenExclusiveInfoEXT>
- {
- using Type = SurfaceFullScreenExclusiveInfoEXT;
- };
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- struct SurfaceFullScreenExclusiveWin32InfoEXT
+ struct StructExtends<Win32KeyedMutexAcquireReleaseInfoKHR, SubmitInfo2KHR>
{
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSurfaceFullScreenExclusiveWin32InfoEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR SurfaceFullScreenExclusiveWin32InfoEXT(HMONITOR hmonitor_ = {}) VULKAN_HPP_NOEXCEPT
- : hmonitor( hmonitor_ )
- {}
-
- VULKAN_HPP_CONSTEXPR SurfaceFullScreenExclusiveWin32InfoEXT( SurfaceFullScreenExclusiveWin32InfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- SurfaceFullScreenExclusiveWin32InfoEXT( VkSurfaceFullScreenExclusiveWin32InfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- SurfaceFullScreenExclusiveWin32InfoEXT & operator=( VkSurfaceFullScreenExclusiveWin32InfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SurfaceFullScreenExclusiveWin32InfoEXT const *>( &rhs );
- return *this;
- }
-
- SurfaceFullScreenExclusiveWin32InfoEXT & operator=( SurfaceFullScreenExclusiveWin32InfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( SurfaceFullScreenExclusiveWin32InfoEXT ) );
- return *this;
- }
-
- SurfaceFullScreenExclusiveWin32InfoEXT & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- SurfaceFullScreenExclusiveWin32InfoEXT & setHmonitor( HMONITOR hmonitor_ ) VULKAN_HPP_NOEXCEPT
- {
- hmonitor = hmonitor_;
- return *this;
- }
-
-
- operator VkSurfaceFullScreenExclusiveWin32InfoEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkSurfaceFullScreenExclusiveWin32InfoEXT*>( this );
- }
-
- operator VkSurfaceFullScreenExclusiveWin32InfoEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkSurfaceFullScreenExclusiveWin32InfoEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( SurfaceFullScreenExclusiveWin32InfoEXT const& ) const = default;
-#else
- bool operator==( SurfaceFullScreenExclusiveWin32InfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( hmonitor == rhs.hmonitor );
- }
-
- bool operator!=( SurfaceFullScreenExclusiveWin32InfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSurfaceFullScreenExclusiveWin32InfoEXT;
- const void* pNext = {};
- HMONITOR hmonitor = {};
-
- };
- static_assert( sizeof( SurfaceFullScreenExclusiveWin32InfoEXT ) == sizeof( VkSurfaceFullScreenExclusiveWin32InfoEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<SurfaceFullScreenExclusiveWin32InfoEXT>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::eSurfaceFullScreenExclusiveWin32InfoEXT>
- {
- using Type = SurfaceFullScreenExclusiveWin32InfoEXT;
+ value = true
+ };
};
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-
- struct SurfaceProtectedCapabilitiesKHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSurfaceProtectedCapabilitiesKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR SurfaceProtectedCapabilitiesKHR(VULKAN_HPP_NAMESPACE::Bool32 supportsProtected_ = {}) VULKAN_HPP_NOEXCEPT
- : supportsProtected( supportsProtected_ )
- {}
-
- VULKAN_HPP_CONSTEXPR SurfaceProtectedCapabilitiesKHR( SurfaceProtectedCapabilitiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- SurfaceProtectedCapabilitiesKHR( VkSurfaceProtectedCapabilitiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- SurfaceProtectedCapabilitiesKHR & operator=( VkSurfaceProtectedCapabilitiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SurfaceProtectedCapabilitiesKHR const *>( &rhs );
- return *this;
- }
-
- SurfaceProtectedCapabilitiesKHR & operator=( SurfaceProtectedCapabilitiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( SurfaceProtectedCapabilitiesKHR ) );
- return *this;
- }
-
- SurfaceProtectedCapabilitiesKHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- SurfaceProtectedCapabilitiesKHR & setSupportsProtected( VULKAN_HPP_NAMESPACE::Bool32 supportsProtected_ ) VULKAN_HPP_NOEXCEPT
- {
- supportsProtected = supportsProtected_;
- return *this;
- }
-
-
- operator VkSurfaceProtectedCapabilitiesKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkSurfaceProtectedCapabilitiesKHR*>( this );
- }
-
- operator VkSurfaceProtectedCapabilitiesKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkSurfaceProtectedCapabilitiesKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( SurfaceProtectedCapabilitiesKHR const& ) const = default;
-#else
- bool operator==( SurfaceProtectedCapabilitiesKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( supportsProtected == rhs.supportsProtected );
- }
-
- bool operator!=( SurfaceProtectedCapabilitiesKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSurfaceProtectedCapabilitiesKHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 supportsProtected = {};
-
- };
- static_assert( sizeof( SurfaceProtectedCapabilitiesKHR ) == sizeof( VkSurfaceProtectedCapabilitiesKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<SurfaceProtectedCapabilitiesKHR>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::eSurfaceProtectedCapabilitiesKHR>
- {
- using Type = SurfaceProtectedCapabilitiesKHR;
- };
-
- struct SwapchainCounterCreateInfoEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSwapchainCounterCreateInfoEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR SwapchainCounterCreateInfoEXT(VULKAN_HPP_NAMESPACE::SurfaceCounterFlagsEXT surfaceCounters_ = {}) VULKAN_HPP_NOEXCEPT
- : surfaceCounters( surfaceCounters_ )
- {}
-
- VULKAN_HPP_CONSTEXPR SwapchainCounterCreateInfoEXT( SwapchainCounterCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- SwapchainCounterCreateInfoEXT( VkSwapchainCounterCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- SwapchainCounterCreateInfoEXT & operator=( VkSwapchainCounterCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SwapchainCounterCreateInfoEXT const *>( &rhs );
- return *this;
- }
-
- SwapchainCounterCreateInfoEXT & operator=( SwapchainCounterCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( SwapchainCounterCreateInfoEXT ) );
- return *this;
- }
-
- SwapchainCounterCreateInfoEXT & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- SwapchainCounterCreateInfoEXT & setSurfaceCounters( VULKAN_HPP_NAMESPACE::SurfaceCounterFlagsEXT surfaceCounters_ ) VULKAN_HPP_NOEXCEPT
- {
- surfaceCounters = surfaceCounters_;
- return *this;
- }
-
-
- operator VkSwapchainCounterCreateInfoEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkSwapchainCounterCreateInfoEXT*>( this );
- }
-
- operator VkSwapchainCounterCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkSwapchainCounterCreateInfoEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( SwapchainCounterCreateInfoEXT const& ) const = default;
-#else
- bool operator==( SwapchainCounterCreateInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( surfaceCounters == rhs.surfaceCounters );
- }
-
- bool operator!=( SwapchainCounterCreateInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSwapchainCounterCreateInfoEXT;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::SurfaceCounterFlagsEXT surfaceCounters = {};
-
- };
- static_assert( sizeof( SwapchainCounterCreateInfoEXT ) == sizeof( VkSwapchainCounterCreateInfoEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<SwapchainCounterCreateInfoEXT>::value, "struct wrapper is not a standard layout!" );
-
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
template <>
- struct CppType<StructureType, StructureType::eSwapchainCounterCreateInfoEXT>
+ struct StructExtends<Win32KeyedMutexAcquireReleaseInfoNV, SubmitInfo>
{
- using Type = SwapchainCounterCreateInfoEXT;
- };
-
- struct SwapchainDisplayNativeHdrCreateInfoAMD
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSwapchainDisplayNativeHdrCreateInfoAMD;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR SwapchainDisplayNativeHdrCreateInfoAMD(VULKAN_HPP_NAMESPACE::Bool32 localDimmingEnable_ = {}) VULKAN_HPP_NOEXCEPT
- : localDimmingEnable( localDimmingEnable_ )
- {}
-
- VULKAN_HPP_CONSTEXPR SwapchainDisplayNativeHdrCreateInfoAMD( SwapchainDisplayNativeHdrCreateInfoAMD const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- SwapchainDisplayNativeHdrCreateInfoAMD( VkSwapchainDisplayNativeHdrCreateInfoAMD const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- SwapchainDisplayNativeHdrCreateInfoAMD & operator=( VkSwapchainDisplayNativeHdrCreateInfoAMD const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SwapchainDisplayNativeHdrCreateInfoAMD const *>( &rhs );
- return *this;
- }
-
- SwapchainDisplayNativeHdrCreateInfoAMD & operator=( SwapchainDisplayNativeHdrCreateInfoAMD const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( SwapchainDisplayNativeHdrCreateInfoAMD ) );
- return *this;
- }
-
- SwapchainDisplayNativeHdrCreateInfoAMD & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
+ enum
{
- pNext = pNext_;
- return *this;
- }
-
- SwapchainDisplayNativeHdrCreateInfoAMD & setLocalDimmingEnable( VULKAN_HPP_NAMESPACE::Bool32 localDimmingEnable_ ) VULKAN_HPP_NOEXCEPT
- {
- localDimmingEnable = localDimmingEnable_;
- return *this;
- }
-
-
- operator VkSwapchainDisplayNativeHdrCreateInfoAMD const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkSwapchainDisplayNativeHdrCreateInfoAMD*>( this );
- }
-
- operator VkSwapchainDisplayNativeHdrCreateInfoAMD &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkSwapchainDisplayNativeHdrCreateInfoAMD*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( SwapchainDisplayNativeHdrCreateInfoAMD const& ) const = default;
-#else
- bool operator==( SwapchainDisplayNativeHdrCreateInfoAMD const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( localDimmingEnable == rhs.localDimmingEnable );
- }
-
- bool operator!=( SwapchainDisplayNativeHdrCreateInfoAMD const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSwapchainDisplayNativeHdrCreateInfoAMD;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 localDimmingEnable = {};
-
- };
- static_assert( sizeof( SwapchainDisplayNativeHdrCreateInfoAMD ) == sizeof( VkSwapchainDisplayNativeHdrCreateInfoAMD ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<SwapchainDisplayNativeHdrCreateInfoAMD>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::eSwapchainDisplayNativeHdrCreateInfoAMD>
- {
- using Type = SwapchainDisplayNativeHdrCreateInfoAMD;
- };
-
- struct TextureLODGatherFormatPropertiesAMD
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eTextureLodGatherFormatPropertiesAMD;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR TextureLODGatherFormatPropertiesAMD(VULKAN_HPP_NAMESPACE::Bool32 supportsTextureGatherLODBiasAMD_ = {}) VULKAN_HPP_NOEXCEPT
- : supportsTextureGatherLODBiasAMD( supportsTextureGatherLODBiasAMD_ )
- {}
-
- VULKAN_HPP_CONSTEXPR TextureLODGatherFormatPropertiesAMD( TextureLODGatherFormatPropertiesAMD const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- TextureLODGatherFormatPropertiesAMD( VkTextureLODGatherFormatPropertiesAMD const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- TextureLODGatherFormatPropertiesAMD & operator=( VkTextureLODGatherFormatPropertiesAMD const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::TextureLODGatherFormatPropertiesAMD const *>( &rhs );
- return *this;
- }
-
- TextureLODGatherFormatPropertiesAMD & operator=( TextureLODGatherFormatPropertiesAMD const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( TextureLODGatherFormatPropertiesAMD ) );
- return *this;
- }
-
-
- operator VkTextureLODGatherFormatPropertiesAMD const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkTextureLODGatherFormatPropertiesAMD*>( this );
- }
-
- operator VkTextureLODGatherFormatPropertiesAMD &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkTextureLODGatherFormatPropertiesAMD*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( TextureLODGatherFormatPropertiesAMD const& ) const = default;
-#else
- bool operator==( TextureLODGatherFormatPropertiesAMD const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( supportsTextureGatherLODBiasAMD == rhs.supportsTextureGatherLODBiasAMD );
- }
-
- bool operator!=( TextureLODGatherFormatPropertiesAMD const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eTextureLodGatherFormatPropertiesAMD;
- void* pNext = {};
- VULKAN_HPP_NAMESPACE::Bool32 supportsTextureGatherLODBiasAMD = {};
-
- };
- static_assert( sizeof( TextureLODGatherFormatPropertiesAMD ) == sizeof( VkTextureLODGatherFormatPropertiesAMD ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<TextureLODGatherFormatPropertiesAMD>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::eTextureLodGatherFormatPropertiesAMD>
- {
- using Type = TextureLODGatherFormatPropertiesAMD;
- };
-
- struct TimelineSemaphoreSubmitInfo
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eTimelineSemaphoreSubmitInfo;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR TimelineSemaphoreSubmitInfo(uint32_t waitSemaphoreValueCount_ = {}, const uint64_t* pWaitSemaphoreValues_ = {}, uint32_t signalSemaphoreValueCount_ = {}, const uint64_t* pSignalSemaphoreValues_ = {}) VULKAN_HPP_NOEXCEPT
- : waitSemaphoreValueCount( waitSemaphoreValueCount_ ), pWaitSemaphoreValues( pWaitSemaphoreValues_ ), signalSemaphoreValueCount( signalSemaphoreValueCount_ ), pSignalSemaphoreValues( pSignalSemaphoreValues_ )
- {}
-
- VULKAN_HPP_CONSTEXPR TimelineSemaphoreSubmitInfo( TimelineSemaphoreSubmitInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- TimelineSemaphoreSubmitInfo( VkTimelineSemaphoreSubmitInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- TimelineSemaphoreSubmitInfo( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const & waitSemaphoreValues_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const & signalSemaphoreValues_ = {} )
- : waitSemaphoreValueCount( static_cast<uint32_t>( waitSemaphoreValues_.size() ) ), pWaitSemaphoreValues( waitSemaphoreValues_.data() ), signalSemaphoreValueCount( static_cast<uint32_t>( signalSemaphoreValues_.size() ) ), pSignalSemaphoreValues( signalSemaphoreValues_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- TimelineSemaphoreSubmitInfo & operator=( VkTimelineSemaphoreSubmitInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::TimelineSemaphoreSubmitInfo const *>( &rhs );
- return *this;
- }
-
- TimelineSemaphoreSubmitInfo & operator=( TimelineSemaphoreSubmitInfo const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( TimelineSemaphoreSubmitInfo ) );
- return *this;
- }
-
- TimelineSemaphoreSubmitInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- TimelineSemaphoreSubmitInfo & setWaitSemaphoreValueCount( uint32_t waitSemaphoreValueCount_ ) VULKAN_HPP_NOEXCEPT
- {
- waitSemaphoreValueCount = waitSemaphoreValueCount_;
- return *this;
- }
-
- TimelineSemaphoreSubmitInfo & setPWaitSemaphoreValues( const uint64_t* pWaitSemaphoreValues_ ) VULKAN_HPP_NOEXCEPT
- {
- pWaitSemaphoreValues = pWaitSemaphoreValues_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- TimelineSemaphoreSubmitInfo & setWaitSemaphoreValues( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const & waitSemaphoreValues_ ) VULKAN_HPP_NOEXCEPT
- {
- waitSemaphoreValueCount = static_cast<uint32_t>( waitSemaphoreValues_.size() );
- pWaitSemaphoreValues = waitSemaphoreValues_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- TimelineSemaphoreSubmitInfo & setSignalSemaphoreValueCount( uint32_t signalSemaphoreValueCount_ ) VULKAN_HPP_NOEXCEPT
- {
- signalSemaphoreValueCount = signalSemaphoreValueCount_;
- return *this;
- }
-
- TimelineSemaphoreSubmitInfo & setPSignalSemaphoreValues( const uint64_t* pSignalSemaphoreValues_ ) VULKAN_HPP_NOEXCEPT
- {
- pSignalSemaphoreValues = pSignalSemaphoreValues_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- TimelineSemaphoreSubmitInfo & setSignalSemaphoreValues( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const & signalSemaphoreValues_ ) VULKAN_HPP_NOEXCEPT
- {
- signalSemaphoreValueCount = static_cast<uint32_t>( signalSemaphoreValues_.size() );
- pSignalSemaphoreValues = signalSemaphoreValues_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkTimelineSemaphoreSubmitInfo const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkTimelineSemaphoreSubmitInfo*>( this );
- }
-
- operator VkTimelineSemaphoreSubmitInfo &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkTimelineSemaphoreSubmitInfo*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( TimelineSemaphoreSubmitInfo const& ) const = default;
-#else
- bool operator==( TimelineSemaphoreSubmitInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( waitSemaphoreValueCount == rhs.waitSemaphoreValueCount )
- && ( pWaitSemaphoreValues == rhs.pWaitSemaphoreValues )
- && ( signalSemaphoreValueCount == rhs.signalSemaphoreValueCount )
- && ( pSignalSemaphoreValues == rhs.pSignalSemaphoreValues );
- }
-
- bool operator!=( TimelineSemaphoreSubmitInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eTimelineSemaphoreSubmitInfo;
- const void* pNext = {};
- uint32_t waitSemaphoreValueCount = {};
- const uint64_t* pWaitSemaphoreValues = {};
- uint32_t signalSemaphoreValueCount = {};
- const uint64_t* pSignalSemaphoreValues = {};
-
- };
- static_assert( sizeof( TimelineSemaphoreSubmitInfo ) == sizeof( VkTimelineSemaphoreSubmitInfo ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<TimelineSemaphoreSubmitInfo>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::eTimelineSemaphoreSubmitInfo>
- {
- using Type = TimelineSemaphoreSubmitInfo;
- };
- using TimelineSemaphoreSubmitInfoKHR = TimelineSemaphoreSubmitInfo;
-
- struct TraceRaysIndirectCommandKHR
- {
-
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR TraceRaysIndirectCommandKHR(uint32_t width_ = {}, uint32_t height_ = {}, uint32_t depth_ = {}) VULKAN_HPP_NOEXCEPT
- : width( width_ ), height( height_ ), depth( depth_ )
- {}
-
- VULKAN_HPP_CONSTEXPR TraceRaysIndirectCommandKHR( TraceRaysIndirectCommandKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- TraceRaysIndirectCommandKHR( VkTraceRaysIndirectCommandKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
- explicit TraceRaysIndirectCommandKHR( Extent2D const& extent2D, uint32_t depth_ = {} )
- : width( extent2D.width )
- , height( extent2D.height )
- , depth( depth_ )
- {}
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- TraceRaysIndirectCommandKHR & operator=( VkTraceRaysIndirectCommandKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::TraceRaysIndirectCommandKHR const *>( &rhs );
- return *this;
- }
-
- TraceRaysIndirectCommandKHR & operator=( TraceRaysIndirectCommandKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( TraceRaysIndirectCommandKHR ) );
- return *this;
- }
-
- TraceRaysIndirectCommandKHR & setWidth( uint32_t width_ ) VULKAN_HPP_NOEXCEPT
- {
- width = width_;
- return *this;
- }
-
- TraceRaysIndirectCommandKHR & setHeight( uint32_t height_ ) VULKAN_HPP_NOEXCEPT
- {
- height = height_;
- return *this;
- }
-
- TraceRaysIndirectCommandKHR & setDepth( uint32_t depth_ ) VULKAN_HPP_NOEXCEPT
- {
- depth = depth_;
- return *this;
- }
-
-
- operator VkTraceRaysIndirectCommandKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkTraceRaysIndirectCommandKHR*>( this );
- }
-
- operator VkTraceRaysIndirectCommandKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkTraceRaysIndirectCommandKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( TraceRaysIndirectCommandKHR const& ) const = default;
-#else
- bool operator==( TraceRaysIndirectCommandKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( width == rhs.width )
- && ( height == rhs.height )
- && ( depth == rhs.depth );
- }
-
- bool operator!=( TraceRaysIndirectCommandKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- uint32_t width = {};
- uint32_t height = {};
- uint32_t depth = {};
-
- };
- static_assert( sizeof( TraceRaysIndirectCommandKHR ) == sizeof( VkTraceRaysIndirectCommandKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<TraceRaysIndirectCommandKHR>::value, "struct wrapper is not a standard layout!" );
-
- struct ValidationFeaturesEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eValidationFeaturesEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ValidationFeaturesEXT(uint32_t enabledValidationFeatureCount_ = {}, const VULKAN_HPP_NAMESPACE::ValidationFeatureEnableEXT* pEnabledValidationFeatures_ = {}, uint32_t disabledValidationFeatureCount_ = {}, const VULKAN_HPP_NAMESPACE::ValidationFeatureDisableEXT* pDisabledValidationFeatures_ = {}) VULKAN_HPP_NOEXCEPT
- : enabledValidationFeatureCount( enabledValidationFeatureCount_ ), pEnabledValidationFeatures( pEnabledValidationFeatures_ ), disabledValidationFeatureCount( disabledValidationFeatureCount_ ), pDisabledValidationFeatures( pDisabledValidationFeatures_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ValidationFeaturesEXT( ValidationFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ValidationFeaturesEXT( VkValidationFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- ValidationFeaturesEXT( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ValidationFeatureEnableEXT> const & enabledValidationFeatures_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ValidationFeatureDisableEXT> const & disabledValidationFeatures_ = {} )
- : enabledValidationFeatureCount( static_cast<uint32_t>( enabledValidationFeatures_.size() ) ), pEnabledValidationFeatures( enabledValidationFeatures_.data() ), disabledValidationFeatureCount( static_cast<uint32_t>( disabledValidationFeatures_.size() ) ), pDisabledValidationFeatures( disabledValidationFeatures_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ValidationFeaturesEXT & operator=( VkValidationFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ValidationFeaturesEXT const *>( &rhs );
- return *this;
- }
-
- ValidationFeaturesEXT & operator=( ValidationFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ValidationFeaturesEXT ) );
- return *this;
- }
-
- ValidationFeaturesEXT & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- ValidationFeaturesEXT & setEnabledValidationFeatureCount( uint32_t enabledValidationFeatureCount_ ) VULKAN_HPP_NOEXCEPT
- {
- enabledValidationFeatureCount = enabledValidationFeatureCount_;
- return *this;
- }
-
- ValidationFeaturesEXT & setPEnabledValidationFeatures( const VULKAN_HPP_NAMESPACE::ValidationFeatureEnableEXT* pEnabledValidationFeatures_ ) VULKAN_HPP_NOEXCEPT
- {
- pEnabledValidationFeatures = pEnabledValidationFeatures_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- ValidationFeaturesEXT & setEnabledValidationFeatures( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ValidationFeatureEnableEXT> const & enabledValidationFeatures_ ) VULKAN_HPP_NOEXCEPT
- {
- enabledValidationFeatureCount = static_cast<uint32_t>( enabledValidationFeatures_.size() );
- pEnabledValidationFeatures = enabledValidationFeatures_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- ValidationFeaturesEXT & setDisabledValidationFeatureCount( uint32_t disabledValidationFeatureCount_ ) VULKAN_HPP_NOEXCEPT
- {
- disabledValidationFeatureCount = disabledValidationFeatureCount_;
- return *this;
- }
-
- ValidationFeaturesEXT & setPDisabledValidationFeatures( const VULKAN_HPP_NAMESPACE::ValidationFeatureDisableEXT* pDisabledValidationFeatures_ ) VULKAN_HPP_NOEXCEPT
- {
- pDisabledValidationFeatures = pDisabledValidationFeatures_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- ValidationFeaturesEXT & setDisabledValidationFeatures( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ValidationFeatureDisableEXT> const & disabledValidationFeatures_ ) VULKAN_HPP_NOEXCEPT
- {
- disabledValidationFeatureCount = static_cast<uint32_t>( disabledValidationFeatures_.size() );
- pDisabledValidationFeatures = disabledValidationFeatures_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkValidationFeaturesEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkValidationFeaturesEXT*>( this );
- }
-
- operator VkValidationFeaturesEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkValidationFeaturesEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ValidationFeaturesEXT const& ) const = default;
-#else
- bool operator==( ValidationFeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( enabledValidationFeatureCount == rhs.enabledValidationFeatureCount )
- && ( pEnabledValidationFeatures == rhs.pEnabledValidationFeatures )
- && ( disabledValidationFeatureCount == rhs.disabledValidationFeatureCount )
- && ( pDisabledValidationFeatures == rhs.pDisabledValidationFeatures );
- }
-
- bool operator!=( ValidationFeaturesEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eValidationFeaturesEXT;
- const void* pNext = {};
- uint32_t enabledValidationFeatureCount = {};
- const VULKAN_HPP_NAMESPACE::ValidationFeatureEnableEXT* pEnabledValidationFeatures = {};
- uint32_t disabledValidationFeatureCount = {};
- const VULKAN_HPP_NAMESPACE::ValidationFeatureDisableEXT* pDisabledValidationFeatures = {};
-
- };
- static_assert( sizeof( ValidationFeaturesEXT ) == sizeof( VkValidationFeaturesEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ValidationFeaturesEXT>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::eValidationFeaturesEXT>
- {
- using Type = ValidationFeaturesEXT;
- };
-
- struct ValidationFlagsEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eValidationFlagsEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ValidationFlagsEXT(uint32_t disabledValidationCheckCount_ = {}, const VULKAN_HPP_NAMESPACE::ValidationCheckEXT* pDisabledValidationChecks_ = {}) VULKAN_HPP_NOEXCEPT
- : disabledValidationCheckCount( disabledValidationCheckCount_ ), pDisabledValidationChecks( pDisabledValidationChecks_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ValidationFlagsEXT( ValidationFlagsEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ValidationFlagsEXT( VkValidationFlagsEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- ValidationFlagsEXT( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ValidationCheckEXT> const & disabledValidationChecks_ )
- : disabledValidationCheckCount( static_cast<uint32_t>( disabledValidationChecks_.size() ) ), pDisabledValidationChecks( disabledValidationChecks_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ValidationFlagsEXT & operator=( VkValidationFlagsEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ValidationFlagsEXT const *>( &rhs );
- return *this;
- }
-
- ValidationFlagsEXT & operator=( ValidationFlagsEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ValidationFlagsEXT ) );
- return *this;
- }
-
- ValidationFlagsEXT & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- ValidationFlagsEXT & setDisabledValidationCheckCount( uint32_t disabledValidationCheckCount_ ) VULKAN_HPP_NOEXCEPT
- {
- disabledValidationCheckCount = disabledValidationCheckCount_;
- return *this;
- }
-
- ValidationFlagsEXT & setPDisabledValidationChecks( const VULKAN_HPP_NAMESPACE::ValidationCheckEXT* pDisabledValidationChecks_ ) VULKAN_HPP_NOEXCEPT
- {
- pDisabledValidationChecks = pDisabledValidationChecks_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- ValidationFlagsEXT & setDisabledValidationChecks( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ValidationCheckEXT> const & disabledValidationChecks_ ) VULKAN_HPP_NOEXCEPT
- {
- disabledValidationCheckCount = static_cast<uint32_t>( disabledValidationChecks_.size() );
- pDisabledValidationChecks = disabledValidationChecks_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkValidationFlagsEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkValidationFlagsEXT*>( this );
- }
-
- operator VkValidationFlagsEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkValidationFlagsEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ValidationFlagsEXT const& ) const = default;
-#else
- bool operator==( ValidationFlagsEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( disabledValidationCheckCount == rhs.disabledValidationCheckCount )
- && ( pDisabledValidationChecks == rhs.pDisabledValidationChecks );
- }
-
- bool operator!=( ValidationFlagsEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eValidationFlagsEXT;
- const void* pNext = {};
- uint32_t disabledValidationCheckCount = {};
- const VULKAN_HPP_NAMESPACE::ValidationCheckEXT* pDisabledValidationChecks = {};
-
- };
- static_assert( sizeof( ValidationFlagsEXT ) == sizeof( VkValidationFlagsEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ValidationFlagsEXT>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::eValidationFlagsEXT>
- {
- using Type = ValidationFlagsEXT;
- };
-
-#ifdef VK_USE_PLATFORM_VI_NN
- struct ViSurfaceCreateInfoNN
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eViSurfaceCreateInfoNN;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR ViSurfaceCreateInfoNN(VULKAN_HPP_NAMESPACE::ViSurfaceCreateFlagsNN flags_ = {}, void* window_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), window( window_ )
- {}
-
- VULKAN_HPP_CONSTEXPR ViSurfaceCreateInfoNN( ViSurfaceCreateInfoNN const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- ViSurfaceCreateInfoNN( VkViSurfaceCreateInfoNN const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- ViSurfaceCreateInfoNN & operator=( VkViSurfaceCreateInfoNN const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ViSurfaceCreateInfoNN const *>( &rhs );
- return *this;
- }
-
- ViSurfaceCreateInfoNN & operator=( ViSurfaceCreateInfoNN const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( ViSurfaceCreateInfoNN ) );
- return *this;
- }
-
- ViSurfaceCreateInfoNN & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- ViSurfaceCreateInfoNN & setFlags( VULKAN_HPP_NAMESPACE::ViSurfaceCreateFlagsNN flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- ViSurfaceCreateInfoNN & setWindow( void* window_ ) VULKAN_HPP_NOEXCEPT
- {
- window = window_;
- return *this;
- }
-
-
- operator VkViSurfaceCreateInfoNN const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkViSurfaceCreateInfoNN*>( this );
- }
-
- operator VkViSurfaceCreateInfoNN &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkViSurfaceCreateInfoNN*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( ViSurfaceCreateInfoNN const& ) const = default;
-#else
- bool operator==( ViSurfaceCreateInfoNN const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( window == rhs.window );
- }
-
- bool operator!=( ViSurfaceCreateInfoNN const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eViSurfaceCreateInfoNN;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::ViSurfaceCreateFlagsNN flags = {};
- void* window = {};
-
- };
- static_assert( sizeof( ViSurfaceCreateInfoNN ) == sizeof( VkViSurfaceCreateInfoNN ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<ViSurfaceCreateInfoNN>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::eViSurfaceCreateInfoNN>
- {
- using Type = ViSurfaceCreateInfoNN;
- };
-#endif /*VK_USE_PLATFORM_VI_NN*/
-
-#ifdef VK_USE_PLATFORM_WAYLAND_KHR
- struct WaylandSurfaceCreateInfoKHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eWaylandSurfaceCreateInfoKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR WaylandSurfaceCreateInfoKHR(VULKAN_HPP_NAMESPACE::WaylandSurfaceCreateFlagsKHR flags_ = {}, struct wl_display* display_ = {}, struct wl_surface* surface_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), display( display_ ), surface( surface_ )
- {}
-
- VULKAN_HPP_CONSTEXPR WaylandSurfaceCreateInfoKHR( WaylandSurfaceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- WaylandSurfaceCreateInfoKHR( VkWaylandSurfaceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- WaylandSurfaceCreateInfoKHR & operator=( VkWaylandSurfaceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::WaylandSurfaceCreateInfoKHR const *>( &rhs );
- return *this;
- }
-
- WaylandSurfaceCreateInfoKHR & operator=( WaylandSurfaceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( WaylandSurfaceCreateInfoKHR ) );
- return *this;
- }
-
- WaylandSurfaceCreateInfoKHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- WaylandSurfaceCreateInfoKHR & setFlags( VULKAN_HPP_NAMESPACE::WaylandSurfaceCreateFlagsKHR flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- WaylandSurfaceCreateInfoKHR & setDisplay( struct wl_display* display_ ) VULKAN_HPP_NOEXCEPT
- {
- display = display_;
- return *this;
- }
-
- WaylandSurfaceCreateInfoKHR & setSurface( struct wl_surface* surface_ ) VULKAN_HPP_NOEXCEPT
- {
- surface = surface_;
- return *this;
- }
-
-
- operator VkWaylandSurfaceCreateInfoKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkWaylandSurfaceCreateInfoKHR*>( this );
- }
-
- operator VkWaylandSurfaceCreateInfoKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkWaylandSurfaceCreateInfoKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( WaylandSurfaceCreateInfoKHR const& ) const = default;
-#else
- bool operator==( WaylandSurfaceCreateInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( display == rhs.display )
- && ( surface == rhs.surface );
- }
-
- bool operator!=( WaylandSurfaceCreateInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eWaylandSurfaceCreateInfoKHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::WaylandSurfaceCreateFlagsKHR flags = {};
- struct wl_display* display = {};
- struct wl_surface* surface = {};
-
- };
- static_assert( sizeof( WaylandSurfaceCreateInfoKHR ) == sizeof( VkWaylandSurfaceCreateInfoKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<WaylandSurfaceCreateInfoKHR>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::eWaylandSurfaceCreateInfoKHR>
- {
- using Type = WaylandSurfaceCreateInfoKHR;
- };
-#endif /*VK_USE_PLATFORM_WAYLAND_KHR*/
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- struct Win32KeyedMutexAcquireReleaseInfoKHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eWin32KeyedMutexAcquireReleaseInfoKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR Win32KeyedMutexAcquireReleaseInfoKHR(uint32_t acquireCount_ = {}, const VULKAN_HPP_NAMESPACE::DeviceMemory* pAcquireSyncs_ = {}, const uint64_t* pAcquireKeys_ = {}, const uint32_t* pAcquireTimeouts_ = {}, uint32_t releaseCount_ = {}, const VULKAN_HPP_NAMESPACE::DeviceMemory* pReleaseSyncs_ = {}, const uint64_t* pReleaseKeys_ = {}) VULKAN_HPP_NOEXCEPT
- : acquireCount( acquireCount_ ), pAcquireSyncs( pAcquireSyncs_ ), pAcquireKeys( pAcquireKeys_ ), pAcquireTimeouts( pAcquireTimeouts_ ), releaseCount( releaseCount_ ), pReleaseSyncs( pReleaseSyncs_ ), pReleaseKeys( pReleaseKeys_ )
- {}
-
- VULKAN_HPP_CONSTEXPR Win32KeyedMutexAcquireReleaseInfoKHR( Win32KeyedMutexAcquireReleaseInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- Win32KeyedMutexAcquireReleaseInfoKHR( VkWin32KeyedMutexAcquireReleaseInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- Win32KeyedMutexAcquireReleaseInfoKHR( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DeviceMemory> const & acquireSyncs_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const & acquireKeys_ = {}, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & acquireTimeouts_ = {}, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DeviceMemory> const & releaseSyncs_ = {}, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const & releaseKeys_ = {} )
- : acquireCount( static_cast<uint32_t>( acquireSyncs_.size() ) ), pAcquireSyncs( acquireSyncs_.data() ), pAcquireKeys( acquireKeys_.data() ), pAcquireTimeouts( acquireTimeouts_.data() ), releaseCount( static_cast<uint32_t>( releaseSyncs_.size() ) ), pReleaseSyncs( releaseSyncs_.data() ), pReleaseKeys( releaseKeys_.data() )
- {
-#ifdef VULKAN_HPP_NO_EXCEPTIONS
- VULKAN_HPP_ASSERT( acquireSyncs_.size() == acquireKeys_.size() );
- VULKAN_HPP_ASSERT( acquireSyncs_.size() == acquireTimeouts_.size() );
- VULKAN_HPP_ASSERT( acquireKeys_.size() == acquireTimeouts_.size() );
-#else
- if ( acquireSyncs_.size() != acquireKeys_.size() )
- {
- throw LogicError( VULKAN_HPP_NAMESPACE_STRING "::Win32KeyedMutexAcquireReleaseInfoKHR::Win32KeyedMutexAcquireReleaseInfoKHR: acquireSyncs_.size() != acquireKeys_.size()" );
- }
- if ( acquireSyncs_.size() != acquireTimeouts_.size() )
- {
- throw LogicError( VULKAN_HPP_NAMESPACE_STRING "::Win32KeyedMutexAcquireReleaseInfoKHR::Win32KeyedMutexAcquireReleaseInfoKHR: acquireSyncs_.size() != acquireTimeouts_.size()" );
- }
- if ( acquireKeys_.size() != acquireTimeouts_.size() )
- {
- throw LogicError( VULKAN_HPP_NAMESPACE_STRING "::Win32KeyedMutexAcquireReleaseInfoKHR::Win32KeyedMutexAcquireReleaseInfoKHR: acquireKeys_.size() != acquireTimeouts_.size()" );
- }
-#endif /*VULKAN_HPP_NO_EXCEPTIONS*/
-
-#ifdef VULKAN_HPP_NO_EXCEPTIONS
- VULKAN_HPP_ASSERT( releaseSyncs_.size() == releaseKeys_.size() );
-#else
- if ( releaseSyncs_.size() != releaseKeys_.size() )
- {
- throw LogicError( VULKAN_HPP_NAMESPACE_STRING "::Win32KeyedMutexAcquireReleaseInfoKHR::Win32KeyedMutexAcquireReleaseInfoKHR: releaseSyncs_.size() != releaseKeys_.size()" );
- }
-#endif /*VULKAN_HPP_NO_EXCEPTIONS*/
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- Win32KeyedMutexAcquireReleaseInfoKHR & operator=( VkWin32KeyedMutexAcquireReleaseInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::Win32KeyedMutexAcquireReleaseInfoKHR const *>( &rhs );
- return *this;
- }
-
- Win32KeyedMutexAcquireReleaseInfoKHR & operator=( Win32KeyedMutexAcquireReleaseInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( Win32KeyedMutexAcquireReleaseInfoKHR ) );
- return *this;
- }
-
- Win32KeyedMutexAcquireReleaseInfoKHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- Win32KeyedMutexAcquireReleaseInfoKHR & setAcquireCount( uint32_t acquireCount_ ) VULKAN_HPP_NOEXCEPT
- {
- acquireCount = acquireCount_;
- return *this;
- }
-
- Win32KeyedMutexAcquireReleaseInfoKHR & setPAcquireSyncs( const VULKAN_HPP_NAMESPACE::DeviceMemory* pAcquireSyncs_ ) VULKAN_HPP_NOEXCEPT
- {
- pAcquireSyncs = pAcquireSyncs_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- Win32KeyedMutexAcquireReleaseInfoKHR & setAcquireSyncs( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DeviceMemory> const & acquireSyncs_ ) VULKAN_HPP_NOEXCEPT
- {
- acquireCount = static_cast<uint32_t>( acquireSyncs_.size() );
- pAcquireSyncs = acquireSyncs_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- Win32KeyedMutexAcquireReleaseInfoKHR & setPAcquireKeys( const uint64_t* pAcquireKeys_ ) VULKAN_HPP_NOEXCEPT
- {
- pAcquireKeys = pAcquireKeys_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- Win32KeyedMutexAcquireReleaseInfoKHR & setAcquireKeys( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const & acquireKeys_ ) VULKAN_HPP_NOEXCEPT
- {
- acquireCount = static_cast<uint32_t>( acquireKeys_.size() );
- pAcquireKeys = acquireKeys_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- Win32KeyedMutexAcquireReleaseInfoKHR & setPAcquireTimeouts( const uint32_t* pAcquireTimeouts_ ) VULKAN_HPP_NOEXCEPT
- {
- pAcquireTimeouts = pAcquireTimeouts_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- Win32KeyedMutexAcquireReleaseInfoKHR & setAcquireTimeouts( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & acquireTimeouts_ ) VULKAN_HPP_NOEXCEPT
- {
- acquireCount = static_cast<uint32_t>( acquireTimeouts_.size() );
- pAcquireTimeouts = acquireTimeouts_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- Win32KeyedMutexAcquireReleaseInfoKHR & setReleaseCount( uint32_t releaseCount_ ) VULKAN_HPP_NOEXCEPT
- {
- releaseCount = releaseCount_;
- return *this;
- }
-
- Win32KeyedMutexAcquireReleaseInfoKHR & setPReleaseSyncs( const VULKAN_HPP_NAMESPACE::DeviceMemory* pReleaseSyncs_ ) VULKAN_HPP_NOEXCEPT
- {
- pReleaseSyncs = pReleaseSyncs_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- Win32KeyedMutexAcquireReleaseInfoKHR & setReleaseSyncs( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DeviceMemory> const & releaseSyncs_ ) VULKAN_HPP_NOEXCEPT
- {
- releaseCount = static_cast<uint32_t>( releaseSyncs_.size() );
- pReleaseSyncs = releaseSyncs_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- Win32KeyedMutexAcquireReleaseInfoKHR & setPReleaseKeys( const uint64_t* pReleaseKeys_ ) VULKAN_HPP_NOEXCEPT
- {
- pReleaseKeys = pReleaseKeys_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- Win32KeyedMutexAcquireReleaseInfoKHR & setReleaseKeys( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const & releaseKeys_ ) VULKAN_HPP_NOEXCEPT
- {
- releaseCount = static_cast<uint32_t>( releaseKeys_.size() );
- pReleaseKeys = releaseKeys_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkWin32KeyedMutexAcquireReleaseInfoKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkWin32KeyedMutexAcquireReleaseInfoKHR*>( this );
- }
-
- operator VkWin32KeyedMutexAcquireReleaseInfoKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkWin32KeyedMutexAcquireReleaseInfoKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( Win32KeyedMutexAcquireReleaseInfoKHR const& ) const = default;
-#else
- bool operator==( Win32KeyedMutexAcquireReleaseInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( acquireCount == rhs.acquireCount )
- && ( pAcquireSyncs == rhs.pAcquireSyncs )
- && ( pAcquireKeys == rhs.pAcquireKeys )
- && ( pAcquireTimeouts == rhs.pAcquireTimeouts )
- && ( releaseCount == rhs.releaseCount )
- && ( pReleaseSyncs == rhs.pReleaseSyncs )
- && ( pReleaseKeys == rhs.pReleaseKeys );
- }
-
- bool operator!=( Win32KeyedMutexAcquireReleaseInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eWin32KeyedMutexAcquireReleaseInfoKHR;
- const void* pNext = {};
- uint32_t acquireCount = {};
- const VULKAN_HPP_NAMESPACE::DeviceMemory* pAcquireSyncs = {};
- const uint64_t* pAcquireKeys = {};
- const uint32_t* pAcquireTimeouts = {};
- uint32_t releaseCount = {};
- const VULKAN_HPP_NAMESPACE::DeviceMemory* pReleaseSyncs = {};
- const uint64_t* pReleaseKeys = {};
-
- };
- static_assert( sizeof( Win32KeyedMutexAcquireReleaseInfoKHR ) == sizeof( VkWin32KeyedMutexAcquireReleaseInfoKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<Win32KeyedMutexAcquireReleaseInfoKHR>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::eWin32KeyedMutexAcquireReleaseInfoKHR>
- {
- using Type = Win32KeyedMutexAcquireReleaseInfoKHR;
- };
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- struct Win32KeyedMutexAcquireReleaseInfoNV
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eWin32KeyedMutexAcquireReleaseInfoNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR Win32KeyedMutexAcquireReleaseInfoNV(uint32_t acquireCount_ = {}, const VULKAN_HPP_NAMESPACE::DeviceMemory* pAcquireSyncs_ = {}, const uint64_t* pAcquireKeys_ = {}, const uint32_t* pAcquireTimeoutMilliseconds_ = {}, uint32_t releaseCount_ = {}, const VULKAN_HPP_NAMESPACE::DeviceMemory* pReleaseSyncs_ = {}, const uint64_t* pReleaseKeys_ = {}) VULKAN_HPP_NOEXCEPT
- : acquireCount( acquireCount_ ), pAcquireSyncs( pAcquireSyncs_ ), pAcquireKeys( pAcquireKeys_ ), pAcquireTimeoutMilliseconds( pAcquireTimeoutMilliseconds_ ), releaseCount( releaseCount_ ), pReleaseSyncs( pReleaseSyncs_ ), pReleaseKeys( pReleaseKeys_ )
- {}
-
- VULKAN_HPP_CONSTEXPR Win32KeyedMutexAcquireReleaseInfoNV( Win32KeyedMutexAcquireReleaseInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- Win32KeyedMutexAcquireReleaseInfoNV( VkWin32KeyedMutexAcquireReleaseInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- Win32KeyedMutexAcquireReleaseInfoNV( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DeviceMemory> const & acquireSyncs_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const & acquireKeys_ = {}, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & acquireTimeoutMilliseconds_ = {}, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DeviceMemory> const & releaseSyncs_ = {}, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const & releaseKeys_ = {} )
- : acquireCount( static_cast<uint32_t>( acquireSyncs_.size() ) ), pAcquireSyncs( acquireSyncs_.data() ), pAcquireKeys( acquireKeys_.data() ), pAcquireTimeoutMilliseconds( acquireTimeoutMilliseconds_.data() ), releaseCount( static_cast<uint32_t>( releaseSyncs_.size() ) ), pReleaseSyncs( releaseSyncs_.data() ), pReleaseKeys( releaseKeys_.data() )
- {
-#ifdef VULKAN_HPP_NO_EXCEPTIONS
- VULKAN_HPP_ASSERT( acquireSyncs_.size() == acquireKeys_.size() );
- VULKAN_HPP_ASSERT( acquireSyncs_.size() == acquireTimeoutMilliseconds_.size() );
- VULKAN_HPP_ASSERT( acquireKeys_.size() == acquireTimeoutMilliseconds_.size() );
-#else
- if ( acquireSyncs_.size() != acquireKeys_.size() )
- {
- throw LogicError( VULKAN_HPP_NAMESPACE_STRING "::Win32KeyedMutexAcquireReleaseInfoNV::Win32KeyedMutexAcquireReleaseInfoNV: acquireSyncs_.size() != acquireKeys_.size()" );
- }
- if ( acquireSyncs_.size() != acquireTimeoutMilliseconds_.size() )
- {
- throw LogicError( VULKAN_HPP_NAMESPACE_STRING "::Win32KeyedMutexAcquireReleaseInfoNV::Win32KeyedMutexAcquireReleaseInfoNV: acquireSyncs_.size() != acquireTimeoutMilliseconds_.size()" );
- }
- if ( acquireKeys_.size() != acquireTimeoutMilliseconds_.size() )
- {
- throw LogicError( VULKAN_HPP_NAMESPACE_STRING "::Win32KeyedMutexAcquireReleaseInfoNV::Win32KeyedMutexAcquireReleaseInfoNV: acquireKeys_.size() != acquireTimeoutMilliseconds_.size()" );
- }
-#endif /*VULKAN_HPP_NO_EXCEPTIONS*/
-
-#ifdef VULKAN_HPP_NO_EXCEPTIONS
- VULKAN_HPP_ASSERT( releaseSyncs_.size() == releaseKeys_.size() );
-#else
- if ( releaseSyncs_.size() != releaseKeys_.size() )
- {
- throw LogicError( VULKAN_HPP_NAMESPACE_STRING "::Win32KeyedMutexAcquireReleaseInfoNV::Win32KeyedMutexAcquireReleaseInfoNV: releaseSyncs_.size() != releaseKeys_.size()" );
- }
-#endif /*VULKAN_HPP_NO_EXCEPTIONS*/
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- Win32KeyedMutexAcquireReleaseInfoNV & operator=( VkWin32KeyedMutexAcquireReleaseInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::Win32KeyedMutexAcquireReleaseInfoNV const *>( &rhs );
- return *this;
- }
-
- Win32KeyedMutexAcquireReleaseInfoNV & operator=( Win32KeyedMutexAcquireReleaseInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( Win32KeyedMutexAcquireReleaseInfoNV ) );
- return *this;
- }
-
- Win32KeyedMutexAcquireReleaseInfoNV & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- Win32KeyedMutexAcquireReleaseInfoNV & setAcquireCount( uint32_t acquireCount_ ) VULKAN_HPP_NOEXCEPT
- {
- acquireCount = acquireCount_;
- return *this;
- }
-
- Win32KeyedMutexAcquireReleaseInfoNV & setPAcquireSyncs( const VULKAN_HPP_NAMESPACE::DeviceMemory* pAcquireSyncs_ ) VULKAN_HPP_NOEXCEPT
- {
- pAcquireSyncs = pAcquireSyncs_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- Win32KeyedMutexAcquireReleaseInfoNV & setAcquireSyncs( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DeviceMemory> const & acquireSyncs_ ) VULKAN_HPP_NOEXCEPT
- {
- acquireCount = static_cast<uint32_t>( acquireSyncs_.size() );
- pAcquireSyncs = acquireSyncs_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- Win32KeyedMutexAcquireReleaseInfoNV & setPAcquireKeys( const uint64_t* pAcquireKeys_ ) VULKAN_HPP_NOEXCEPT
- {
- pAcquireKeys = pAcquireKeys_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- Win32KeyedMutexAcquireReleaseInfoNV & setAcquireKeys( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const & acquireKeys_ ) VULKAN_HPP_NOEXCEPT
- {
- acquireCount = static_cast<uint32_t>( acquireKeys_.size() );
- pAcquireKeys = acquireKeys_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- Win32KeyedMutexAcquireReleaseInfoNV & setPAcquireTimeoutMilliseconds( const uint32_t* pAcquireTimeoutMilliseconds_ ) VULKAN_HPP_NOEXCEPT
- {
- pAcquireTimeoutMilliseconds = pAcquireTimeoutMilliseconds_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- Win32KeyedMutexAcquireReleaseInfoNV & setAcquireTimeoutMilliseconds( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & acquireTimeoutMilliseconds_ ) VULKAN_HPP_NOEXCEPT
- {
- acquireCount = static_cast<uint32_t>( acquireTimeoutMilliseconds_.size() );
- pAcquireTimeoutMilliseconds = acquireTimeoutMilliseconds_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- Win32KeyedMutexAcquireReleaseInfoNV & setReleaseCount( uint32_t releaseCount_ ) VULKAN_HPP_NOEXCEPT
- {
- releaseCount = releaseCount_;
- return *this;
- }
-
- Win32KeyedMutexAcquireReleaseInfoNV & setPReleaseSyncs( const VULKAN_HPP_NAMESPACE::DeviceMemory* pReleaseSyncs_ ) VULKAN_HPP_NOEXCEPT
- {
- pReleaseSyncs = pReleaseSyncs_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- Win32KeyedMutexAcquireReleaseInfoNV & setReleaseSyncs( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DeviceMemory> const & releaseSyncs_ ) VULKAN_HPP_NOEXCEPT
- {
- releaseCount = static_cast<uint32_t>( releaseSyncs_.size() );
- pReleaseSyncs = releaseSyncs_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
- Win32KeyedMutexAcquireReleaseInfoNV & setPReleaseKeys( const uint64_t* pReleaseKeys_ ) VULKAN_HPP_NOEXCEPT
- {
- pReleaseKeys = pReleaseKeys_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- Win32KeyedMutexAcquireReleaseInfoNV & setReleaseKeys( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const & releaseKeys_ ) VULKAN_HPP_NOEXCEPT
- {
- releaseCount = static_cast<uint32_t>( releaseKeys_.size() );
- pReleaseKeys = releaseKeys_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkWin32KeyedMutexAcquireReleaseInfoNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkWin32KeyedMutexAcquireReleaseInfoNV*>( this );
- }
-
- operator VkWin32KeyedMutexAcquireReleaseInfoNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkWin32KeyedMutexAcquireReleaseInfoNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( Win32KeyedMutexAcquireReleaseInfoNV const& ) const = default;
-#else
- bool operator==( Win32KeyedMutexAcquireReleaseInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( acquireCount == rhs.acquireCount )
- && ( pAcquireSyncs == rhs.pAcquireSyncs )
- && ( pAcquireKeys == rhs.pAcquireKeys )
- && ( pAcquireTimeoutMilliseconds == rhs.pAcquireTimeoutMilliseconds )
- && ( releaseCount == rhs.releaseCount )
- && ( pReleaseSyncs == rhs.pReleaseSyncs )
- && ( pReleaseKeys == rhs.pReleaseKeys );
- }
-
- bool operator!=( Win32KeyedMutexAcquireReleaseInfoNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eWin32KeyedMutexAcquireReleaseInfoNV;
- const void* pNext = {};
- uint32_t acquireCount = {};
- const VULKAN_HPP_NAMESPACE::DeviceMemory* pAcquireSyncs = {};
- const uint64_t* pAcquireKeys = {};
- const uint32_t* pAcquireTimeoutMilliseconds = {};
- uint32_t releaseCount = {};
- const VULKAN_HPP_NAMESPACE::DeviceMemory* pReleaseSyncs = {};
- const uint64_t* pReleaseKeys = {};
-
+ value = true
+ };
};
- static_assert( sizeof( Win32KeyedMutexAcquireReleaseInfoNV ) == sizeof( VkWin32KeyedMutexAcquireReleaseInfoNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<Win32KeyedMutexAcquireReleaseInfoNV>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eWin32KeyedMutexAcquireReleaseInfoNV>
+ struct StructExtends<Win32KeyedMutexAcquireReleaseInfoNV, SubmitInfo2KHR>
{
- using Type = Win32KeyedMutexAcquireReleaseInfoNV;
- };
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- struct Win32SurfaceCreateInfoKHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eWin32SurfaceCreateInfoKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR Win32SurfaceCreateInfoKHR(VULKAN_HPP_NAMESPACE::Win32SurfaceCreateFlagsKHR flags_ = {}, HINSTANCE hinstance_ = {}, HWND hwnd_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), hinstance( hinstance_ ), hwnd( hwnd_ )
- {}
-
- VULKAN_HPP_CONSTEXPR Win32SurfaceCreateInfoKHR( Win32SurfaceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- Win32SurfaceCreateInfoKHR( VkWin32SurfaceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- Win32SurfaceCreateInfoKHR & operator=( VkWin32SurfaceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::Win32SurfaceCreateInfoKHR const *>( &rhs );
- return *this;
- }
-
- Win32SurfaceCreateInfoKHR & operator=( Win32SurfaceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( Win32SurfaceCreateInfoKHR ) );
- return *this;
- }
-
- Win32SurfaceCreateInfoKHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- Win32SurfaceCreateInfoKHR & setFlags( VULKAN_HPP_NAMESPACE::Win32SurfaceCreateFlagsKHR flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- Win32SurfaceCreateInfoKHR & setHinstance( HINSTANCE hinstance_ ) VULKAN_HPP_NOEXCEPT
- {
- hinstance = hinstance_;
- return *this;
- }
-
- Win32SurfaceCreateInfoKHR & setHwnd( HWND hwnd_ ) VULKAN_HPP_NOEXCEPT
- {
- hwnd = hwnd_;
- return *this;
- }
-
-
- operator VkWin32SurfaceCreateInfoKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkWin32SurfaceCreateInfoKHR*>( this );
- }
-
- operator VkWin32SurfaceCreateInfoKHR &() VULKAN_HPP_NOEXCEPT
+ enum
{
- return *reinterpret_cast<VkWin32SurfaceCreateInfoKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( Win32SurfaceCreateInfoKHR const& ) const = default;
-#else
- bool operator==( Win32SurfaceCreateInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( hinstance == rhs.hinstance )
- && ( hwnd == rhs.hwnd );
- }
-
- bool operator!=( Win32SurfaceCreateInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eWin32SurfaceCreateInfoKHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::Win32SurfaceCreateFlagsKHR flags = {};
- HINSTANCE hinstance = {};
- HWND hwnd = {};
-
- };
- static_assert( sizeof( Win32SurfaceCreateInfoKHR ) == sizeof( VkWin32SurfaceCreateInfoKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<Win32SurfaceCreateInfoKHR>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::eWin32SurfaceCreateInfoKHR>
- {
- using Type = Win32SurfaceCreateInfoKHR;
+ value = true
+ };
};
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-
- struct WriteDescriptorSetAccelerationStructureKHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eWriteDescriptorSetAccelerationStructureKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR WriteDescriptorSetAccelerationStructureKHR(uint32_t accelerationStructureCount_ = {}, const VULKAN_HPP_NAMESPACE::AccelerationStructureKHR* pAccelerationStructures_ = {}) VULKAN_HPP_NOEXCEPT
- : accelerationStructureCount( accelerationStructureCount_ ), pAccelerationStructures( pAccelerationStructures_ )
- {}
-
- VULKAN_HPP_CONSTEXPR WriteDescriptorSetAccelerationStructureKHR( WriteDescriptorSetAccelerationStructureKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- WriteDescriptorSetAccelerationStructureKHR( VkWriteDescriptorSetAccelerationStructureKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- WriteDescriptorSetAccelerationStructureKHR( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AccelerationStructureKHR> const & accelerationStructures_ )
- : accelerationStructureCount( static_cast<uint32_t>( accelerationStructures_.size() ) ), pAccelerationStructures( accelerationStructures_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- WriteDescriptorSetAccelerationStructureKHR & operator=( VkWriteDescriptorSetAccelerationStructureKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::WriteDescriptorSetAccelerationStructureKHR const *>( &rhs );
- return *this;
- }
-
- WriteDescriptorSetAccelerationStructureKHR & operator=( WriteDescriptorSetAccelerationStructureKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( WriteDescriptorSetAccelerationStructureKHR ) );
- return *this;
- }
-
- WriteDescriptorSetAccelerationStructureKHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- WriteDescriptorSetAccelerationStructureKHR & setAccelerationStructureCount( uint32_t accelerationStructureCount_ ) VULKAN_HPP_NOEXCEPT
- {
- accelerationStructureCount = accelerationStructureCount_;
- return *this;
- }
-
- WriteDescriptorSetAccelerationStructureKHR & setPAccelerationStructures( const VULKAN_HPP_NAMESPACE::AccelerationStructureKHR* pAccelerationStructures_ ) VULKAN_HPP_NOEXCEPT
- {
- pAccelerationStructures = pAccelerationStructures_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- WriteDescriptorSetAccelerationStructureKHR & setAccelerationStructures( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AccelerationStructureKHR> const & accelerationStructures_ ) VULKAN_HPP_NOEXCEPT
- {
- accelerationStructureCount = static_cast<uint32_t>( accelerationStructures_.size() );
- pAccelerationStructures = accelerationStructures_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkWriteDescriptorSetAccelerationStructureKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkWriteDescriptorSetAccelerationStructureKHR*>( this );
- }
-
- operator VkWriteDescriptorSetAccelerationStructureKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkWriteDescriptorSetAccelerationStructureKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( WriteDescriptorSetAccelerationStructureKHR const& ) const = default;
-#else
- bool operator==( WriteDescriptorSetAccelerationStructureKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( accelerationStructureCount == rhs.accelerationStructureCount )
- && ( pAccelerationStructures == rhs.pAccelerationStructures );
- }
-
- bool operator!=( WriteDescriptorSetAccelerationStructureKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eWriteDescriptorSetAccelerationStructureKHR;
- const void* pNext = {};
- uint32_t accelerationStructureCount = {};
- const VULKAN_HPP_NAMESPACE::AccelerationStructureKHR* pAccelerationStructures = {};
-
- };
- static_assert( sizeof( WriteDescriptorSetAccelerationStructureKHR ) == sizeof( VkWriteDescriptorSetAccelerationStructureKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<WriteDescriptorSetAccelerationStructureKHR>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::eWriteDescriptorSetAccelerationStructureKHR>
- {
- using Type = WriteDescriptorSetAccelerationStructureKHR;
- };
-
- struct WriteDescriptorSetAccelerationStructureNV
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eWriteDescriptorSetAccelerationStructureNV;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR WriteDescriptorSetAccelerationStructureNV(uint32_t accelerationStructureCount_ = {}, const VULKAN_HPP_NAMESPACE::AccelerationStructureNV* pAccelerationStructures_ = {}) VULKAN_HPP_NOEXCEPT
- : accelerationStructureCount( accelerationStructureCount_ ), pAccelerationStructures( pAccelerationStructures_ )
- {}
-
- VULKAN_HPP_CONSTEXPR WriteDescriptorSetAccelerationStructureNV( WriteDescriptorSetAccelerationStructureNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- WriteDescriptorSetAccelerationStructureNV( VkWriteDescriptorSetAccelerationStructureNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- WriteDescriptorSetAccelerationStructureNV( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AccelerationStructureNV> const & accelerationStructures_ )
- : accelerationStructureCount( static_cast<uint32_t>( accelerationStructures_.size() ) ), pAccelerationStructures( accelerationStructures_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- WriteDescriptorSetAccelerationStructureNV & operator=( VkWriteDescriptorSetAccelerationStructureNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::WriteDescriptorSetAccelerationStructureNV const *>( &rhs );
- return *this;
- }
-
- WriteDescriptorSetAccelerationStructureNV & operator=( WriteDescriptorSetAccelerationStructureNV const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( WriteDescriptorSetAccelerationStructureNV ) );
- return *this;
- }
-
- WriteDescriptorSetAccelerationStructureNV & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- WriteDescriptorSetAccelerationStructureNV & setAccelerationStructureCount( uint32_t accelerationStructureCount_ ) VULKAN_HPP_NOEXCEPT
- {
- accelerationStructureCount = accelerationStructureCount_;
- return *this;
- }
-
- WriteDescriptorSetAccelerationStructureNV & setPAccelerationStructures( const VULKAN_HPP_NAMESPACE::AccelerationStructureNV* pAccelerationStructures_ ) VULKAN_HPP_NOEXCEPT
- {
- pAccelerationStructures = pAccelerationStructures_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- WriteDescriptorSetAccelerationStructureNV & setAccelerationStructures( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AccelerationStructureNV> const & accelerationStructures_ ) VULKAN_HPP_NOEXCEPT
- {
- accelerationStructureCount = static_cast<uint32_t>( accelerationStructures_.size() );
- pAccelerationStructures = accelerationStructures_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkWriteDescriptorSetAccelerationStructureNV const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkWriteDescriptorSetAccelerationStructureNV*>( this );
- }
-
- operator VkWriteDescriptorSetAccelerationStructureNV &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkWriteDescriptorSetAccelerationStructureNV*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( WriteDescriptorSetAccelerationStructureNV const& ) const = default;
-#else
- bool operator==( WriteDescriptorSetAccelerationStructureNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( accelerationStructureCount == rhs.accelerationStructureCount )
- && ( pAccelerationStructures == rhs.pAccelerationStructures );
- }
-
- bool operator!=( WriteDescriptorSetAccelerationStructureNV const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eWriteDescriptorSetAccelerationStructureNV;
- const void* pNext = {};
- uint32_t accelerationStructureCount = {};
- const VULKAN_HPP_NAMESPACE::AccelerationStructureNV* pAccelerationStructures = {};
-
- };
- static_assert( sizeof( WriteDescriptorSetAccelerationStructureNV ) == sizeof( VkWriteDescriptorSetAccelerationStructureNV ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<WriteDescriptorSetAccelerationStructureNV>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::eWriteDescriptorSetAccelerationStructureNV>
- {
- using Type = WriteDescriptorSetAccelerationStructureNV;
- };
-
- struct WriteDescriptorSetInlineUniformBlockEXT
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eWriteDescriptorSetInlineUniformBlockEXT;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR WriteDescriptorSetInlineUniformBlockEXT(uint32_t dataSize_ = {}, const void* pData_ = {}) VULKAN_HPP_NOEXCEPT
- : dataSize( dataSize_ ), pData( pData_ )
- {}
-
- VULKAN_HPP_CONSTEXPR WriteDescriptorSetInlineUniformBlockEXT( WriteDescriptorSetInlineUniformBlockEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- WriteDescriptorSetInlineUniformBlockEXT( VkWriteDescriptorSetInlineUniformBlockEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- template <typename T>
- WriteDescriptorSetInlineUniformBlockEXT( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const T> const & data_ )
- : dataSize( static_cast<uint32_t>( data_.size() * sizeof(T) ) ), pData( data_.data() )
- {}
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- WriteDescriptorSetInlineUniformBlockEXT & operator=( VkWriteDescriptorSetInlineUniformBlockEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::WriteDescriptorSetInlineUniformBlockEXT const *>( &rhs );
- return *this;
- }
-
- WriteDescriptorSetInlineUniformBlockEXT & operator=( WriteDescriptorSetInlineUniformBlockEXT const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( WriteDescriptorSetInlineUniformBlockEXT ) );
- return *this;
- }
-
- WriteDescriptorSetInlineUniformBlockEXT & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- WriteDescriptorSetInlineUniformBlockEXT & setDataSize( uint32_t dataSize_ ) VULKAN_HPP_NOEXCEPT
- {
- dataSize = dataSize_;
- return *this;
- }
-
- WriteDescriptorSetInlineUniformBlockEXT & setPData( const void* pData_ ) VULKAN_HPP_NOEXCEPT
- {
- pData = pData_;
- return *this;
- }
-
-#if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
- template <typename T>
- WriteDescriptorSetInlineUniformBlockEXT & setData( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const T> const & data_ ) VULKAN_HPP_NOEXCEPT
- {
- dataSize = static_cast<uint32_t>( data_.size() * sizeof(T) );
- pData = data_.data();
- return *this;
- }
-#endif // !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
-
-
- operator VkWriteDescriptorSetInlineUniformBlockEXT const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkWriteDescriptorSetInlineUniformBlockEXT*>( this );
- }
-
- operator VkWriteDescriptorSetInlineUniformBlockEXT &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkWriteDescriptorSetInlineUniformBlockEXT*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( WriteDescriptorSetInlineUniformBlockEXT const& ) const = default;
-#else
- bool operator==( WriteDescriptorSetInlineUniformBlockEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( dataSize == rhs.dataSize )
- && ( pData == rhs.pData );
- }
-
- bool operator!=( WriteDescriptorSetInlineUniformBlockEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eWriteDescriptorSetInlineUniformBlockEXT;
- const void* pNext = {};
- uint32_t dataSize = {};
- const void* pData = {};
-
- };
- static_assert( sizeof( WriteDescriptorSetInlineUniformBlockEXT ) == sizeof( VkWriteDescriptorSetInlineUniformBlockEXT ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<WriteDescriptorSetInlineUniformBlockEXT>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::eWriteDescriptorSetInlineUniformBlockEXT>
- {
- using Type = WriteDescriptorSetInlineUniformBlockEXT;
- };
-
-#ifdef VK_USE_PLATFORM_XCB_KHR
- struct XcbSurfaceCreateInfoKHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eXcbSurfaceCreateInfoKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR XcbSurfaceCreateInfoKHR(VULKAN_HPP_NAMESPACE::XcbSurfaceCreateFlagsKHR flags_ = {}, xcb_connection_t* connection_ = {}, xcb_window_t window_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), connection( connection_ ), window( window_ )
- {}
-
- VULKAN_HPP_CONSTEXPR XcbSurfaceCreateInfoKHR( XcbSurfaceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- XcbSurfaceCreateInfoKHR( VkXcbSurfaceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- XcbSurfaceCreateInfoKHR & operator=( VkXcbSurfaceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::XcbSurfaceCreateInfoKHR const *>( &rhs );
- return *this;
- }
-
- XcbSurfaceCreateInfoKHR & operator=( XcbSurfaceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( XcbSurfaceCreateInfoKHR ) );
- return *this;
- }
-
- XcbSurfaceCreateInfoKHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- XcbSurfaceCreateInfoKHR & setFlags( VULKAN_HPP_NAMESPACE::XcbSurfaceCreateFlagsKHR flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- XcbSurfaceCreateInfoKHR & setConnection( xcb_connection_t* connection_ ) VULKAN_HPP_NOEXCEPT
- {
- connection = connection_;
- return *this;
- }
-
- XcbSurfaceCreateInfoKHR & setWindow( xcb_window_t window_ ) VULKAN_HPP_NOEXCEPT
- {
- window = window_;
- return *this;
- }
-
-
- operator VkXcbSurfaceCreateInfoKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkXcbSurfaceCreateInfoKHR*>( this );
- }
-
- operator VkXcbSurfaceCreateInfoKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkXcbSurfaceCreateInfoKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( XcbSurfaceCreateInfoKHR const& ) const = default;
-#else
- bool operator==( XcbSurfaceCreateInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( connection == rhs.connection )
- && ( memcmp( &window, &rhs.window, sizeof( xcb_window_t ) ) == 0 );
- }
-
- bool operator!=( XcbSurfaceCreateInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eXcbSurfaceCreateInfoKHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::XcbSurfaceCreateFlagsKHR flags = {};
- xcb_connection_t* connection = {};
- xcb_window_t window = {};
-
- };
- static_assert( sizeof( XcbSurfaceCreateInfoKHR ) == sizeof( VkXcbSurfaceCreateInfoKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<XcbSurfaceCreateInfoKHR>::value, "struct wrapper is not a standard layout!" );
-
- template <>
- struct CppType<StructureType, StructureType::eXcbSurfaceCreateInfoKHR>
- {
- using Type = XcbSurfaceCreateInfoKHR;
- };
-#endif /*VK_USE_PLATFORM_XCB_KHR*/
-
-#ifdef VK_USE_PLATFORM_XLIB_KHR
- struct XlibSurfaceCreateInfoKHR
- {
- static const bool allowDuplicate = false;
- static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eXlibSurfaceCreateInfoKHR;
-
-#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
- VULKAN_HPP_CONSTEXPR XlibSurfaceCreateInfoKHR(VULKAN_HPP_NAMESPACE::XlibSurfaceCreateFlagsKHR flags_ = {}, Display* dpy_ = {}, Window window_ = {}) VULKAN_HPP_NOEXCEPT
- : flags( flags_ ), dpy( dpy_ ), window( window_ )
- {}
-
- VULKAN_HPP_CONSTEXPR XlibSurfaceCreateInfoKHR( XlibSurfaceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-
- XlibSurfaceCreateInfoKHR( VkXlibSurfaceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = rhs;
- }
-#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
-
- XlibSurfaceCreateInfoKHR & operator=( VkXlibSurfaceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::XlibSurfaceCreateInfoKHR const *>( &rhs );
- return *this;
- }
-
- XlibSurfaceCreateInfoKHR & operator=( XlibSurfaceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
- {
- memcpy( static_cast<void *>( this ), &rhs, sizeof( XlibSurfaceCreateInfoKHR ) );
- return *this;
- }
-
- XlibSurfaceCreateInfoKHR & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
- {
- pNext = pNext_;
- return *this;
- }
-
- XlibSurfaceCreateInfoKHR & setFlags( VULKAN_HPP_NAMESPACE::XlibSurfaceCreateFlagsKHR flags_ ) VULKAN_HPP_NOEXCEPT
- {
- flags = flags_;
- return *this;
- }
-
- XlibSurfaceCreateInfoKHR & setDpy( Display* dpy_ ) VULKAN_HPP_NOEXCEPT
- {
- dpy = dpy_;
- return *this;
- }
-
- XlibSurfaceCreateInfoKHR & setWindow( Window window_ ) VULKAN_HPP_NOEXCEPT
- {
- window = window_;
- return *this;
- }
-
-
- operator VkXlibSurfaceCreateInfoKHR const&() const VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<const VkXlibSurfaceCreateInfoKHR*>( this );
- }
-
- operator VkXlibSurfaceCreateInfoKHR &() VULKAN_HPP_NOEXCEPT
- {
- return *reinterpret_cast<VkXlibSurfaceCreateInfoKHR*>( this );
- }
-
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( XlibSurfaceCreateInfoKHR const& ) const = default;
-#else
- bool operator==( XlibSurfaceCreateInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return ( sType == rhs.sType )
- && ( pNext == rhs.pNext )
- && ( flags == rhs.flags )
- && ( dpy == rhs.dpy )
- && ( memcmp( &window, &rhs.window, sizeof( Window ) ) == 0 );
- }
-
- bool operator!=( XlibSurfaceCreateInfoKHR const& rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return !operator==( rhs );
- }
-#endif
-
-
-
- public:
- const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eXlibSurfaceCreateInfoKHR;
- const void* pNext = {};
- VULKAN_HPP_NAMESPACE::XlibSurfaceCreateFlagsKHR flags = {};
- Display* dpy = {};
- Window window = {};
-
- };
- static_assert( sizeof( XlibSurfaceCreateInfoKHR ) == sizeof( VkXlibSurfaceCreateInfoKHR ), "struct and wrapper have different size!" );
- static_assert( std::is_standard_layout<XlibSurfaceCreateInfoKHR>::value, "struct wrapper is not a standard layout!" );
-
template <>
- struct CppType<StructureType, StructureType::eXlibSurfaceCreateInfoKHR>
+ struct StructExtends<WriteDescriptorSetAccelerationStructureKHR, WriteDescriptorSet>
{
- using Type = XlibSurfaceCreateInfoKHR;
- };
-#endif /*VK_USE_PLATFORM_XLIB_KHR*/
-
- class DebugReportCallbackEXT
- {
- public:
- using CType = VkDebugReportCallbackEXT;
-
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::eDebugReportCallbackEXT;
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType = VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eDebugReportCallbackEXT;
-
- public:
- VULKAN_HPP_CONSTEXPR DebugReportCallbackEXT() VULKAN_HPP_NOEXCEPT
- : m_debugReportCallbackEXT(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_CONSTEXPR DebugReportCallbackEXT( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- : m_debugReportCallbackEXT(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_TYPESAFE_EXPLICIT DebugReportCallbackEXT( VkDebugReportCallbackEXT debugReportCallbackEXT ) VULKAN_HPP_NOEXCEPT
- : m_debugReportCallbackEXT( debugReportCallbackEXT )
- {}
-
-#if defined(VULKAN_HPP_TYPESAFE_CONVERSION)
- DebugReportCallbackEXT & operator=(VkDebugReportCallbackEXT debugReportCallbackEXT) VULKAN_HPP_NOEXCEPT
+ enum
{
- m_debugReportCallbackEXT = debugReportCallbackEXT;
- return *this;
- }
-#endif
-
- DebugReportCallbackEXT & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- {
- m_debugReportCallbackEXT = VK_NULL_HANDLE;
- return *this;
- }
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DebugReportCallbackEXT const& ) const = default;
-#else
- bool operator==( DebugReportCallbackEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_debugReportCallbackEXT == rhs.m_debugReportCallbackEXT;
- }
-
- bool operator!=(DebugReportCallbackEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_debugReportCallbackEXT != rhs.m_debugReportCallbackEXT;
- }
-
- bool operator<(DebugReportCallbackEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_debugReportCallbackEXT < rhs.m_debugReportCallbackEXT;
- }
-#endif
-
- VULKAN_HPP_TYPESAFE_EXPLICIT operator VkDebugReportCallbackEXT() const VULKAN_HPP_NOEXCEPT
- {
- return m_debugReportCallbackEXT;
- }
-
- explicit operator bool() const VULKAN_HPP_NOEXCEPT
- {
- return m_debugReportCallbackEXT != VK_NULL_HANDLE;
- }
-
- bool operator!() const VULKAN_HPP_NOEXCEPT
- {
- return m_debugReportCallbackEXT == VK_NULL_HANDLE;
- }
-
- private:
- VkDebugReportCallbackEXT m_debugReportCallbackEXT;
- };
- static_assert( sizeof( VULKAN_HPP_NAMESPACE::DebugReportCallbackEXT ) == sizeof( VkDebugReportCallbackEXT ), "handle and wrapper have different size!" );
-
- template <>
- struct VULKAN_HPP_DEPRECATED("vk::cpp_type is deprecated. Use vk::CppType instead.") cpp_type<ObjectType::eDebugReportCallbackEXT>
- {
- using type = VULKAN_HPP_NAMESPACE::DebugReportCallbackEXT;
- };
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eDebugReportCallbackEXT>
- {
- using Type = VULKAN_HPP_NAMESPACE::DebugReportCallbackEXT;
- };
-
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT, VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eDebugReportCallbackEXT>
- {
- using Type = VULKAN_HPP_NAMESPACE::DebugReportCallbackEXT;
+ value = true
+ };
};
-
-
template <>
- struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::DebugReportCallbackEXT>
+ struct StructExtends<WriteDescriptorSetAccelerationStructureNV, WriteDescriptorSet>
{
- static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
- };
-
- class DebugUtilsMessengerEXT
- {
- public:
- using CType = VkDebugUtilsMessengerEXT;
-
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::eDebugUtilsMessengerEXT;
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType = VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eUnknown;
-
- public:
- VULKAN_HPP_CONSTEXPR DebugUtilsMessengerEXT() VULKAN_HPP_NOEXCEPT
- : m_debugUtilsMessengerEXT(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_CONSTEXPR DebugUtilsMessengerEXT( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- : m_debugUtilsMessengerEXT(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_TYPESAFE_EXPLICIT DebugUtilsMessengerEXT( VkDebugUtilsMessengerEXT debugUtilsMessengerEXT ) VULKAN_HPP_NOEXCEPT
- : m_debugUtilsMessengerEXT( debugUtilsMessengerEXT )
- {}
-
-#if defined(VULKAN_HPP_TYPESAFE_CONVERSION)
- DebugUtilsMessengerEXT & operator=(VkDebugUtilsMessengerEXT debugUtilsMessengerEXT) VULKAN_HPP_NOEXCEPT
- {
- m_debugUtilsMessengerEXT = debugUtilsMessengerEXT;
- return *this;
- }
-#endif
-
- DebugUtilsMessengerEXT & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- {
- m_debugUtilsMessengerEXT = VK_NULL_HANDLE;
- return *this;
- }
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( DebugUtilsMessengerEXT const& ) const = default;
-#else
- bool operator==( DebugUtilsMessengerEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ enum
{
- return m_debugUtilsMessengerEXT == rhs.m_debugUtilsMessengerEXT;
- }
-
- bool operator!=(DebugUtilsMessengerEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_debugUtilsMessengerEXT != rhs.m_debugUtilsMessengerEXT;
- }
-
- bool operator<(DebugUtilsMessengerEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_debugUtilsMessengerEXT < rhs.m_debugUtilsMessengerEXT;
- }
-#endif
-
- VULKAN_HPP_TYPESAFE_EXPLICIT operator VkDebugUtilsMessengerEXT() const VULKAN_HPP_NOEXCEPT
- {
- return m_debugUtilsMessengerEXT;
- }
-
- explicit operator bool() const VULKAN_HPP_NOEXCEPT
- {
- return m_debugUtilsMessengerEXT != VK_NULL_HANDLE;
- }
-
- bool operator!() const VULKAN_HPP_NOEXCEPT
- {
- return m_debugUtilsMessengerEXT == VK_NULL_HANDLE;
- }
-
- private:
- VkDebugUtilsMessengerEXT m_debugUtilsMessengerEXT;
- };
- static_assert( sizeof( VULKAN_HPP_NAMESPACE::DebugUtilsMessengerEXT ) == sizeof( VkDebugUtilsMessengerEXT ), "handle and wrapper have different size!" );
-
- template <>
- struct VULKAN_HPP_DEPRECATED("vk::cpp_type is deprecated. Use vk::CppType instead.") cpp_type<ObjectType::eDebugUtilsMessengerEXT>
- {
- using type = VULKAN_HPP_NAMESPACE::DebugUtilsMessengerEXT;
- };
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eDebugUtilsMessengerEXT>
- {
- using Type = VULKAN_HPP_NAMESPACE::DebugUtilsMessengerEXT;
+ value = true
+ };
};
-
-
-
template <>
- struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::DebugUtilsMessengerEXT>
+ struct StructExtends<WriteDescriptorSetInlineUniformBlockEXT, WriteDescriptorSet>
{
- static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
- };
-
-#ifndef VULKAN_HPP_NO_SMART_HANDLE
- class Instance;
- template <typename Dispatch> class UniqueHandleTraits<DebugReportCallbackEXT, Dispatch> { public: using deleter = ObjectDestroy<Instance, Dispatch>; };
- using UniqueDebugReportCallbackEXT = UniqueHandle<DebugReportCallbackEXT, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
- template <typename Dispatch> class UniqueHandleTraits<DebugUtilsMessengerEXT, Dispatch> { public: using deleter = ObjectDestroy<Instance, Dispatch>; };
- using UniqueDebugUtilsMessengerEXT = UniqueHandle<DebugUtilsMessengerEXT, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
- template <typename Dispatch> class UniqueHandleTraits<SurfaceKHR, Dispatch> { public: using deleter = ObjectDestroy<Instance, Dispatch>; };
- using UniqueSurfaceKHR = UniqueHandle<SurfaceKHR, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
-#endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-
- class Instance
- {
- public:
- using CType = VkInstance;
-
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::eInstance;
- static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType = VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eInstance;
-
- public:
- VULKAN_HPP_CONSTEXPR Instance() VULKAN_HPP_NOEXCEPT
- : m_instance(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_CONSTEXPR Instance( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- : m_instance(VK_NULL_HANDLE)
- {}
-
- VULKAN_HPP_TYPESAFE_EXPLICIT Instance( VkInstance instance ) VULKAN_HPP_NOEXCEPT
- : m_instance( instance )
- {}
-
-#if defined(VULKAN_HPP_TYPESAFE_CONVERSION)
- Instance & operator=(VkInstance instance) VULKAN_HPP_NOEXCEPT
+ enum
{
- m_instance = instance;
- return *this;
- }
-#endif
-
- Instance & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
- {
- m_instance = VK_NULL_HANDLE;
- return *this;
- }
-
-#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
- auto operator<=>( Instance const& ) const = default;
-#else
- bool operator==( Instance const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_instance == rhs.m_instance;
- }
-
- bool operator!=(Instance const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_instance != rhs.m_instance;
- }
-
- bool operator<(Instance const & rhs ) const VULKAN_HPP_NOEXCEPT
- {
- return m_instance < rhs.m_instance;
- }
-#endif
-
-
-#ifdef VK_USE_PLATFORM_ANDROID_KHR
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result createAndroidSurfaceKHR( const VULKAN_HPP_NAMESPACE::AndroidSurfaceCreateInfoKHR* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::SurfaceKHR* pSurface, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceKHR>::type createAndroidSurfaceKHR( const AndroidSurfaceCreateInfoKHR & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>>::type createAndroidSurfaceKHRUnique( const AndroidSurfaceCreateInfoKHR & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result createDebugReportCallbackEXT( const VULKAN_HPP_NAMESPACE::DebugReportCallbackCreateInfoEXT* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::DebugReportCallbackEXT* pCallback, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- typename ResultValueType<VULKAN_HPP_NAMESPACE::DebugReportCallbackEXT>::type createDebugReportCallbackEXT( const DebugReportCallbackCreateInfoEXT & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::DebugReportCallbackEXT, Dispatch>>::type createDebugReportCallbackEXTUnique( const DebugReportCallbackCreateInfoEXT & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result createDebugUtilsMessengerEXT( const VULKAN_HPP_NAMESPACE::DebugUtilsMessengerCreateInfoEXT* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::DebugUtilsMessengerEXT* pMessenger, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- typename ResultValueType<VULKAN_HPP_NAMESPACE::DebugUtilsMessengerEXT>::type createDebugUtilsMessengerEXT( const DebugUtilsMessengerCreateInfoEXT & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::DebugUtilsMessengerEXT, Dispatch>>::type createDebugUtilsMessengerEXTUnique( const DebugUtilsMessengerCreateInfoEXT & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-#ifdef VK_USE_PLATFORM_DIRECTFB_EXT
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result createDirectFBSurfaceEXT( const VULKAN_HPP_NAMESPACE::DirectFBSurfaceCreateInfoEXT* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::SurfaceKHR* pSurface, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceKHR>::type createDirectFBSurfaceEXT( const DirectFBSurfaceCreateInfoEXT & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>>::type createDirectFBSurfaceEXTUnique( const DirectFBSurfaceCreateInfoEXT & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_DIRECTFB_EXT*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result createDisplayPlaneSurfaceKHR( const VULKAN_HPP_NAMESPACE::DisplaySurfaceCreateInfoKHR* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::SurfaceKHR* pSurface, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceKHR>::type createDisplayPlaneSurfaceKHR( const DisplaySurfaceCreateInfoKHR & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>>::type createDisplayPlaneSurfaceKHRUnique( const DisplaySurfaceCreateInfoKHR & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result createHeadlessSurfaceEXT( const VULKAN_HPP_NAMESPACE::HeadlessSurfaceCreateInfoEXT* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::SurfaceKHR* pSurface, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceKHR>::type createHeadlessSurfaceEXT( const HeadlessSurfaceCreateInfoEXT & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>>::type createHeadlessSurfaceEXTUnique( const HeadlessSurfaceCreateInfoEXT & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-#ifdef VK_USE_PLATFORM_IOS_MVK
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result createIOSSurfaceMVK( const VULKAN_HPP_NAMESPACE::IOSSurfaceCreateInfoMVK* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::SurfaceKHR* pSurface, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceKHR>::type createIOSSurfaceMVK( const IOSSurfaceCreateInfoMVK & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>>::type createIOSSurfaceMVKUnique( const IOSSurfaceCreateInfoMVK & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_IOS_MVK*/
-
-
-#ifdef VK_USE_PLATFORM_FUCHSIA
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result createImagePipeSurfaceFUCHSIA( const VULKAN_HPP_NAMESPACE::ImagePipeSurfaceCreateInfoFUCHSIA* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::SurfaceKHR* pSurface, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceKHR>::type createImagePipeSurfaceFUCHSIA( const ImagePipeSurfaceCreateInfoFUCHSIA & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>>::type createImagePipeSurfaceFUCHSIAUnique( const ImagePipeSurfaceCreateInfoFUCHSIA & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_FUCHSIA*/
-
-
-#ifdef VK_USE_PLATFORM_MACOS_MVK
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result createMacOSSurfaceMVK( const VULKAN_HPP_NAMESPACE::MacOSSurfaceCreateInfoMVK* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::SurfaceKHR* pSurface, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceKHR>::type createMacOSSurfaceMVK( const MacOSSurfaceCreateInfoMVK & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>>::type createMacOSSurfaceMVKUnique( const MacOSSurfaceCreateInfoMVK & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_MACOS_MVK*/
-
-
-#ifdef VK_USE_PLATFORM_METAL_EXT
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result createMetalSurfaceEXT( const VULKAN_HPP_NAMESPACE::MetalSurfaceCreateInfoEXT* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::SurfaceKHR* pSurface, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceKHR>::type createMetalSurfaceEXT( const MetalSurfaceCreateInfoEXT & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>>::type createMetalSurfaceEXTUnique( const MetalSurfaceCreateInfoEXT & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_METAL_EXT*/
-
-
-#ifdef VK_USE_PLATFORM_GGP
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result createStreamDescriptorSurfaceGGP( const VULKAN_HPP_NAMESPACE::StreamDescriptorSurfaceCreateInfoGGP* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::SurfaceKHR* pSurface, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceKHR>::type createStreamDescriptorSurfaceGGP( const StreamDescriptorSurfaceCreateInfoGGP & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>>::type createStreamDescriptorSurfaceGGPUnique( const StreamDescriptorSurfaceCreateInfoGGP & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_GGP*/
-
-
-#ifdef VK_USE_PLATFORM_VI_NN
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result createViSurfaceNN( const VULKAN_HPP_NAMESPACE::ViSurfaceCreateInfoNN* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::SurfaceKHR* pSurface, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceKHR>::type createViSurfaceNN( const ViSurfaceCreateInfoNN & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>>::type createViSurfaceNNUnique( const ViSurfaceCreateInfoNN & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_VI_NN*/
-
-
-#ifdef VK_USE_PLATFORM_WAYLAND_KHR
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result createWaylandSurfaceKHR( const VULKAN_HPP_NAMESPACE::WaylandSurfaceCreateInfoKHR* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::SurfaceKHR* pSurface, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceKHR>::type createWaylandSurfaceKHR( const WaylandSurfaceCreateInfoKHR & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>>::type createWaylandSurfaceKHRUnique( const WaylandSurfaceCreateInfoKHR & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_WAYLAND_KHR*/
-
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result createWin32SurfaceKHR( const VULKAN_HPP_NAMESPACE::Win32SurfaceCreateInfoKHR* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::SurfaceKHR* pSurface, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceKHR>::type createWin32SurfaceKHR( const Win32SurfaceCreateInfoKHR & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>>::type createWin32SurfaceKHRUnique( const Win32SurfaceCreateInfoKHR & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-
-
-#ifdef VK_USE_PLATFORM_XCB_KHR
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result createXcbSurfaceKHR( const VULKAN_HPP_NAMESPACE::XcbSurfaceCreateInfoKHR* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::SurfaceKHR* pSurface, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceKHR>::type createXcbSurfaceKHR( const XcbSurfaceCreateInfoKHR & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>>::type createXcbSurfaceKHRUnique( const XcbSurfaceCreateInfoKHR & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_XCB_KHR*/
-
-
-#ifdef VK_USE_PLATFORM_XLIB_KHR
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result createXlibSurfaceKHR( const VULKAN_HPP_NAMESPACE::XlibSurfaceCreateInfoKHR* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::SurfaceKHR* pSurface, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceKHR>::type createXlibSurfaceKHR( const XlibSurfaceCreateInfoKHR & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>>::type createXlibSurfaceKHRUnique( const XlibSurfaceCreateInfoKHR & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_XLIB_KHR*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void debugReportMessageEXT( VULKAN_HPP_NAMESPACE::DebugReportFlagsEXT flags, VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT objectType, uint64_t object, size_t location, int32_t messageCode, const char* pLayerPrefix, const char* pMessage, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void debugReportMessageEXT( VULKAN_HPP_NAMESPACE::DebugReportFlagsEXT flags, VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT objectType, uint64_t object, size_t location, int32_t messageCode, const std::string & layerPrefix, const std::string & message, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroyDebugReportCallbackEXT( VULKAN_HPP_NAMESPACE::DebugReportCallbackEXT callback, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroyDebugReportCallbackEXT( VULKAN_HPP_NAMESPACE::DebugReportCallbackEXT callback VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::DebugReportCallbackEXT callback, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::DebugReportCallbackEXT callback, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroyDebugUtilsMessengerEXT( VULKAN_HPP_NAMESPACE::DebugUtilsMessengerEXT messenger, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroyDebugUtilsMessengerEXT( VULKAN_HPP_NAMESPACE::DebugUtilsMessengerEXT messenger VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::DebugUtilsMessengerEXT messenger, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::DebugUtilsMessengerEXT messenger, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroySurfaceKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroySurfaceKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::SurfaceKHR surface, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void destroy( VULKAN_HPP_NAMESPACE::SurfaceKHR surface, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result enumeratePhysicalDeviceGroups( uint32_t* pPhysicalDeviceGroupCount, VULKAN_HPP_NAMESPACE::PhysicalDeviceGroupProperties* pPhysicalDeviceGroupProperties, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename PhysicalDeviceGroupPropertiesAllocator = std::allocator<PhysicalDeviceGroupProperties>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<PhysicalDeviceGroupProperties, PhysicalDeviceGroupPropertiesAllocator>>::type enumeratePhysicalDeviceGroups( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename PhysicalDeviceGroupPropertiesAllocator = std::allocator<PhysicalDeviceGroupProperties>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename B = PhysicalDeviceGroupPropertiesAllocator, typename std::enable_if<std::is_same<typename B::value_type, PhysicalDeviceGroupProperties>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<PhysicalDeviceGroupProperties, PhysicalDeviceGroupPropertiesAllocator>>::type enumeratePhysicalDeviceGroups( PhysicalDeviceGroupPropertiesAllocator & physicalDeviceGroupPropertiesAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result enumeratePhysicalDeviceGroupsKHR( uint32_t* pPhysicalDeviceGroupCount, VULKAN_HPP_NAMESPACE::PhysicalDeviceGroupProperties* pPhysicalDeviceGroupProperties, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename PhysicalDeviceGroupPropertiesAllocator = std::allocator<PhysicalDeviceGroupProperties>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<PhysicalDeviceGroupProperties, PhysicalDeviceGroupPropertiesAllocator>>::type enumeratePhysicalDeviceGroupsKHR( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename PhysicalDeviceGroupPropertiesAllocator = std::allocator<PhysicalDeviceGroupProperties>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename B = PhysicalDeviceGroupPropertiesAllocator, typename std::enable_if<std::is_same<typename B::value_type, PhysicalDeviceGroupProperties>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<PhysicalDeviceGroupProperties, PhysicalDeviceGroupPropertiesAllocator>>::type enumeratePhysicalDeviceGroupsKHR( PhysicalDeviceGroupPropertiesAllocator & physicalDeviceGroupPropertiesAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result enumeratePhysicalDevices( uint32_t* pPhysicalDeviceCount, VULKAN_HPP_NAMESPACE::PhysicalDevice* pPhysicalDevices, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename PhysicalDeviceAllocator = std::allocator<PhysicalDevice>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<PhysicalDevice, PhysicalDeviceAllocator>>::type enumeratePhysicalDevices( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
- template <typename PhysicalDeviceAllocator = std::allocator<PhysicalDevice>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename B = PhysicalDeviceAllocator, typename std::enable_if<std::is_same<typename B::value_type, PhysicalDevice>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<PhysicalDevice, PhysicalDeviceAllocator>>::type enumeratePhysicalDevices( PhysicalDeviceAllocator & physicalDeviceAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- PFN_vkVoidFunction getProcAddr( const char* pName, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- PFN_vkVoidFunction getProcAddr( const std::string & name, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void submitDebugUtilsMessageEXT( VULKAN_HPP_NAMESPACE::DebugUtilsMessageSeverityFlagBitsEXT messageSeverity, VULKAN_HPP_NAMESPACE::DebugUtilsMessageTypeFlagsEXT messageTypes, const VULKAN_HPP_NAMESPACE::DebugUtilsMessengerCallbackDataEXT* pCallbackData, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- void submitDebugUtilsMessageEXT( VULKAN_HPP_NAMESPACE::DebugUtilsMessageSeverityFlagBitsEXT messageSeverity, VULKAN_HPP_NAMESPACE::DebugUtilsMessageTypeFlagsEXT messageTypes, const DebugUtilsMessengerCallbackDataEXT & callbackData, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- VULKAN_HPP_TYPESAFE_EXPLICIT operator VkInstance() const VULKAN_HPP_NOEXCEPT
- {
- return m_instance;
- }
-
- explicit operator bool() const VULKAN_HPP_NOEXCEPT
- {
- return m_instance != VK_NULL_HANDLE;
- }
-
- bool operator!() const VULKAN_HPP_NOEXCEPT
- {
- return m_instance == VK_NULL_HANDLE;
- }
-
- private:
- VkInstance m_instance;
- };
- static_assert( sizeof( VULKAN_HPP_NAMESPACE::Instance ) == sizeof( VkInstance ), "handle and wrapper have different size!" );
-
- template <>
- struct VULKAN_HPP_DEPRECATED("vk::cpp_type is deprecated. Use vk::CppType instead.") cpp_type<ObjectType::eInstance>
- {
- using type = VULKAN_HPP_NAMESPACE::Instance;
- };
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eInstance>
- {
- using Type = VULKAN_HPP_NAMESPACE::Instance;
- };
-
-
- template <>
- struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT, VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eInstance>
- {
- using Type = VULKAN_HPP_NAMESPACE::Instance;
- };
-
-
- template <>
- struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::Instance>
- {
- static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
+ value = true
+ };
};
-#ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch> class UniqueHandleTraits<Instance, Dispatch> { public: using deleter = ObjectDestroy<NoParent, Dispatch>; };
- using UniqueInstance = UniqueHandle<Instance, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
-#endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result createInstance( const VULKAN_HPP_NAMESPACE::InstanceCreateInfo* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::Instance* pInstance, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::Instance>::type createInstance( const InstanceCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT );
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::Instance, Dispatch>>::type createInstanceUnique( const InstanceCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT );
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result enumerateInstanceExtensionProperties( const char* pLayerName, uint32_t* pPropertyCount, VULKAN_HPP_NAMESPACE::ExtensionProperties* pProperties, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename ExtensionPropertiesAllocator = std::allocator<ExtensionProperties>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<ExtensionProperties, ExtensionPropertiesAllocator>>::type enumerateInstanceExtensionProperties( Optional<const std::string> layerName VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT );
- template <typename ExtensionPropertiesAllocator = std::allocator<ExtensionProperties>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename B = ExtensionPropertiesAllocator, typename std::enable_if<std::is_same<typename B::value_type, ExtensionProperties>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<ExtensionProperties, ExtensionPropertiesAllocator>>::type enumerateInstanceExtensionProperties( Optional<const std::string> layerName, ExtensionPropertiesAllocator & extensionPropertiesAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT );
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result enumerateInstanceLayerProperties( uint32_t* pPropertyCount, VULKAN_HPP_NAMESPACE::LayerProperties* pProperties, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename LayerPropertiesAllocator = std::allocator<LayerProperties>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<LayerProperties, LayerPropertiesAllocator>>::type enumerateInstanceLayerProperties( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT );
- template <typename LayerPropertiesAllocator = std::allocator<LayerProperties>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename B = LayerPropertiesAllocator, typename std::enable_if<std::is_same<typename B::value_type, LayerProperties>::value, int>::type = 0>
- VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<LayerProperties, LayerPropertiesAllocator>>::type enumerateInstanceLayerProperties( LayerPropertiesAllocator & layerPropertiesAllocator, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT );
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- VULKAN_HPP_NODISCARD Result enumerateInstanceVersion( uint32_t* pApiVersion, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) VULKAN_HPP_NOEXCEPT;
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
- typename ResultValueType<uint32_t>::type enumerateInstanceVersion( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT );
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result createInstance( const VULKAN_HPP_NAMESPACE::InstanceCreateInfo* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::Instance* pInstance, Dispatch const & d ) VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCreateInstance( reinterpret_cast<const VkInstanceCreateInfo *>( pCreateInfo ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ), reinterpret_cast< VkInstance *>( pInstance ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::Instance>::type createInstance( const InstanceCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d )
- {
- VULKAN_HPP_NAMESPACE::Instance instance;
- Result result = static_cast<Result>( d.vkCreateInstance( reinterpret_cast<const VkInstanceCreateInfo *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkInstance *>( &instance ) ) );
- return createResultValue( result, instance, VULKAN_HPP_NAMESPACE_STRING "::createInstance" );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::Instance, Dispatch>>::type createInstanceUnique( const InstanceCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d )
- {
- VULKAN_HPP_NAMESPACE::Instance instance;
- Result result = static_cast<Result>( d.vkCreateInstance( reinterpret_cast<const VkInstanceCreateInfo *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkInstance *>( &instance ) ) );
- ObjectDestroy<NoParent, Dispatch> deleter( allocator, d );
- return createResultValue<VULKAN_HPP_NAMESPACE::Instance, Dispatch>( result, instance, VULKAN_HPP_NAMESPACE_STRING "::createInstanceUnique", deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result enumerateInstanceExtensionProperties( const char* pLayerName, uint32_t* pPropertyCount, VULKAN_HPP_NAMESPACE::ExtensionProperties* pProperties, Dispatch const & d ) VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkEnumerateInstanceExtensionProperties( pLayerName, pPropertyCount, reinterpret_cast< VkExtensionProperties *>( pProperties ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename ExtensionPropertiesAllocator, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<ExtensionProperties, ExtensionPropertiesAllocator>>::type enumerateInstanceExtensionProperties( Optional<const std::string> layerName, Dispatch const & d )
- {
- std::vector<ExtensionProperties, ExtensionPropertiesAllocator> properties;
- uint32_t propertyCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkEnumerateInstanceExtensionProperties( layerName ? layerName->c_str() : nullptr, &propertyCount, nullptr ) );
- if ( ( result == Result::eSuccess ) && propertyCount )
- {
- properties.resize( propertyCount );
- result = static_cast<Result>( d.vkEnumerateInstanceExtensionProperties( layerName ? layerName->c_str() : nullptr, &propertyCount, reinterpret_cast<VkExtensionProperties *>( properties.data() ) ) );
- VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( propertyCount < properties.size() ) )
- {
- properties.resize( propertyCount );
- }
- return createResultValue( result, properties, VULKAN_HPP_NAMESPACE_STRING"::enumerateInstanceExtensionProperties" );
- }
-
- template <typename ExtensionPropertiesAllocator, typename Dispatch, typename B, typename std::enable_if<std::is_same<typename B::value_type, ExtensionProperties>::value, int>::type >
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<ExtensionProperties, ExtensionPropertiesAllocator>>::type enumerateInstanceExtensionProperties( Optional<const std::string> layerName, ExtensionPropertiesAllocator & extensionPropertiesAllocator, Dispatch const & d )
- {
- std::vector<ExtensionProperties, ExtensionPropertiesAllocator> properties( extensionPropertiesAllocator );
- uint32_t propertyCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkEnumerateInstanceExtensionProperties( layerName ? layerName->c_str() : nullptr, &propertyCount, nullptr ) );
- if ( ( result == Result::eSuccess ) && propertyCount )
- {
- properties.resize( propertyCount );
- result = static_cast<Result>( d.vkEnumerateInstanceExtensionProperties( layerName ? layerName->c_str() : nullptr, &propertyCount, reinterpret_cast<VkExtensionProperties *>( properties.data() ) ) );
- VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( propertyCount < properties.size() ) )
- {
- properties.resize( propertyCount );
- }
- return createResultValue( result, properties, VULKAN_HPP_NAMESPACE_STRING"::enumerateInstanceExtensionProperties" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result enumerateInstanceLayerProperties( uint32_t* pPropertyCount, VULKAN_HPP_NAMESPACE::LayerProperties* pProperties, Dispatch const & d ) VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkEnumerateInstanceLayerProperties( pPropertyCount, reinterpret_cast< VkLayerProperties *>( pProperties ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename LayerPropertiesAllocator, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<LayerProperties, LayerPropertiesAllocator>>::type enumerateInstanceLayerProperties( Dispatch const & d )
- {
- std::vector<LayerProperties, LayerPropertiesAllocator> properties;
- uint32_t propertyCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkEnumerateInstanceLayerProperties( &propertyCount, nullptr ) );
- if ( ( result == Result::eSuccess ) && propertyCount )
- {
- properties.resize( propertyCount );
- result = static_cast<Result>( d.vkEnumerateInstanceLayerProperties( &propertyCount, reinterpret_cast<VkLayerProperties *>( properties.data() ) ) );
- VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( propertyCount < properties.size() ) )
- {
- properties.resize( propertyCount );
- }
- return createResultValue( result, properties, VULKAN_HPP_NAMESPACE_STRING"::enumerateInstanceLayerProperties" );
- }
-
- template <typename LayerPropertiesAllocator, typename Dispatch, typename B, typename std::enable_if<std::is_same<typename B::value_type, LayerProperties>::value, int>::type >
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<LayerProperties, LayerPropertiesAllocator>>::type enumerateInstanceLayerProperties( LayerPropertiesAllocator & layerPropertiesAllocator, Dispatch const & d )
- {
- std::vector<LayerProperties, LayerPropertiesAllocator> properties( layerPropertiesAllocator );
- uint32_t propertyCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkEnumerateInstanceLayerProperties( &propertyCount, nullptr ) );
- if ( ( result == Result::eSuccess ) && propertyCount )
- {
- properties.resize( propertyCount );
- result = static_cast<Result>( d.vkEnumerateInstanceLayerProperties( &propertyCount, reinterpret_cast<VkLayerProperties *>( properties.data() ) ) );
- VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( propertyCount < properties.size() ) )
- {
- properties.resize( propertyCount );
- }
- return createResultValue( result, properties, VULKAN_HPP_NAMESPACE_STRING"::enumerateInstanceLayerProperties" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result enumerateInstanceVersion( uint32_t* pApiVersion, Dispatch const & d ) VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkEnumerateInstanceVersion( pApiVersion ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE typename ResultValueType<uint32_t>::type enumerateInstanceVersion( Dispatch const & d )
- {
- uint32_t apiVersion;
- Result result = static_cast<Result>( d.vkEnumerateInstanceVersion( &apiVersion ) );
- return createResultValue( result, apiVersion, VULKAN_HPP_NAMESPACE_STRING "::enumerateInstanceVersion" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result CommandBuffer::begin( const VULKAN_HPP_NAMESPACE::CommandBufferBeginInfo* pBeginInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkBeginCommandBuffer( m_commandBuffer, reinterpret_cast<const VkCommandBufferBeginInfo *>( pBeginInfo ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type CommandBuffer::begin( const CommandBufferBeginInfo & beginInfo, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkBeginCommandBuffer( m_commandBuffer, reinterpret_cast<const VkCommandBufferBeginInfo *>( &beginInfo ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::CommandBuffer::begin" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::beginConditionalRenderingEXT( const VULKAN_HPP_NAMESPACE::ConditionalRenderingBeginInfoEXT* pConditionalRenderingBegin, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdBeginConditionalRenderingEXT( m_commandBuffer, reinterpret_cast<const VkConditionalRenderingBeginInfoEXT *>( pConditionalRenderingBegin ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::beginConditionalRenderingEXT( const ConditionalRenderingBeginInfoEXT & conditionalRenderingBegin, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdBeginConditionalRenderingEXT( m_commandBuffer, reinterpret_cast<const VkConditionalRenderingBeginInfoEXT *>( &conditionalRenderingBegin ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::beginDebugUtilsLabelEXT( const VULKAN_HPP_NAMESPACE::DebugUtilsLabelEXT* pLabelInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdBeginDebugUtilsLabelEXT( m_commandBuffer, reinterpret_cast<const VkDebugUtilsLabelEXT *>( pLabelInfo ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::beginDebugUtilsLabelEXT( const DebugUtilsLabelEXT & labelInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdBeginDebugUtilsLabelEXT( m_commandBuffer, reinterpret_cast<const VkDebugUtilsLabelEXT *>( &labelInfo ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::beginQuery( VULKAN_HPP_NAMESPACE::QueryPool queryPool, uint32_t query, VULKAN_HPP_NAMESPACE::QueryControlFlags flags, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdBeginQuery( m_commandBuffer, static_cast<VkQueryPool>( queryPool ), query, static_cast<VkQueryControlFlags>( flags ) );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::beginQueryIndexedEXT( VULKAN_HPP_NAMESPACE::QueryPool queryPool, uint32_t query, VULKAN_HPP_NAMESPACE::QueryControlFlags flags, uint32_t index, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdBeginQueryIndexedEXT( m_commandBuffer, static_cast<VkQueryPool>( queryPool ), query, static_cast<VkQueryControlFlags>( flags ), index );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::beginRenderPass( const VULKAN_HPP_NAMESPACE::RenderPassBeginInfo* pRenderPassBegin, VULKAN_HPP_NAMESPACE::SubpassContents contents, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdBeginRenderPass( m_commandBuffer, reinterpret_cast<const VkRenderPassBeginInfo *>( pRenderPassBegin ), static_cast<VkSubpassContents>( contents ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::beginRenderPass( const RenderPassBeginInfo & renderPassBegin, VULKAN_HPP_NAMESPACE::SubpassContents contents, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdBeginRenderPass( m_commandBuffer, reinterpret_cast<const VkRenderPassBeginInfo *>( &renderPassBegin ), static_cast<VkSubpassContents>( contents ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::beginRenderPass2( const VULKAN_HPP_NAMESPACE::RenderPassBeginInfo* pRenderPassBegin, const VULKAN_HPP_NAMESPACE::SubpassBeginInfo* pSubpassBeginInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdBeginRenderPass2( m_commandBuffer, reinterpret_cast<const VkRenderPassBeginInfo *>( pRenderPassBegin ), reinterpret_cast<const VkSubpassBeginInfo *>( pSubpassBeginInfo ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::beginRenderPass2( const RenderPassBeginInfo & renderPassBegin, const SubpassBeginInfo & subpassBeginInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdBeginRenderPass2( m_commandBuffer, reinterpret_cast<const VkRenderPassBeginInfo *>( &renderPassBegin ), reinterpret_cast<const VkSubpassBeginInfo *>( &subpassBeginInfo ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::beginRenderPass2KHR( const VULKAN_HPP_NAMESPACE::RenderPassBeginInfo* pRenderPassBegin, const VULKAN_HPP_NAMESPACE::SubpassBeginInfo* pSubpassBeginInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdBeginRenderPass2KHR( m_commandBuffer, reinterpret_cast<const VkRenderPassBeginInfo *>( pRenderPassBegin ), reinterpret_cast<const VkSubpassBeginInfo *>( pSubpassBeginInfo ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::beginRenderPass2KHR( const RenderPassBeginInfo & renderPassBegin, const SubpassBeginInfo & subpassBeginInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdBeginRenderPass2KHR( m_commandBuffer, reinterpret_cast<const VkRenderPassBeginInfo *>( &renderPassBegin ), reinterpret_cast<const VkSubpassBeginInfo *>( &subpassBeginInfo ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::beginTransformFeedbackEXT( uint32_t firstCounterBuffer, uint32_t counterBufferCount, const VULKAN_HPP_NAMESPACE::Buffer* pCounterBuffers, const VULKAN_HPP_NAMESPACE::DeviceSize* pCounterBufferOffsets, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdBeginTransformFeedbackEXT( m_commandBuffer, firstCounterBuffer, counterBufferCount, reinterpret_cast<const VkBuffer *>( pCounterBuffers ), reinterpret_cast<const VkDeviceSize *>( pCounterBufferOffsets ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::beginTransformFeedbackEXT( uint32_t firstCounterBuffer, ArrayProxy<const VULKAN_HPP_NAMESPACE::Buffer> const & counterBuffers, ArrayProxy<const VULKAN_HPP_NAMESPACE::DeviceSize> const & counterBufferOffsets, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS
- {
-#ifdef VULKAN_HPP_NO_EXCEPTIONS
- VULKAN_HPP_ASSERT( counterBufferOffsets.empty() || counterBuffers.size() == counterBufferOffsets.size() );
-#else
- if ( !counterBufferOffsets.empty() && counterBuffers.size() != counterBufferOffsets.size() )
- {
- throw LogicError( VULKAN_HPP_NAMESPACE_STRING "::CommandBuffer::beginTransformFeedbackEXT: counterBuffers.size() != counterBufferOffsets.size()" );
- }
-#endif /*VULKAN_HPP_NO_EXCEPTIONS*/
-
- d.vkCmdBeginTransformFeedbackEXT( m_commandBuffer, firstCounterBuffer, counterBuffers.size(), reinterpret_cast<const VkBuffer *>( counterBuffers.data() ), reinterpret_cast<const VkDeviceSize *>( counterBufferOffsets.data() ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::bindDescriptorSets( VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint, VULKAN_HPP_NAMESPACE::PipelineLayout layout, uint32_t firstSet, uint32_t descriptorSetCount, const VULKAN_HPP_NAMESPACE::DescriptorSet* pDescriptorSets, uint32_t dynamicOffsetCount, const uint32_t* pDynamicOffsets, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdBindDescriptorSets( m_commandBuffer, static_cast<VkPipelineBindPoint>( pipelineBindPoint ), static_cast<VkPipelineLayout>( layout ), firstSet, descriptorSetCount, reinterpret_cast<const VkDescriptorSet *>( pDescriptorSets ), dynamicOffsetCount, pDynamicOffsets );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::bindDescriptorSets( VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint, VULKAN_HPP_NAMESPACE::PipelineLayout layout, uint32_t firstSet, ArrayProxy<const VULKAN_HPP_NAMESPACE::DescriptorSet> const & descriptorSets, ArrayProxy<const uint32_t> const & dynamicOffsets, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdBindDescriptorSets( m_commandBuffer, static_cast<VkPipelineBindPoint>( pipelineBindPoint ), static_cast<VkPipelineLayout>( layout ), firstSet, descriptorSets.size(), reinterpret_cast<const VkDescriptorSet *>( descriptorSets.data() ), dynamicOffsets.size(), dynamicOffsets.data() );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::bindIndexBuffer( VULKAN_HPP_NAMESPACE::Buffer buffer, VULKAN_HPP_NAMESPACE::DeviceSize offset, VULKAN_HPP_NAMESPACE::IndexType indexType, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdBindIndexBuffer( m_commandBuffer, static_cast<VkBuffer>( buffer ), static_cast<VkDeviceSize>( offset ), static_cast<VkIndexType>( indexType ) );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::bindPipeline( VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint, VULKAN_HPP_NAMESPACE::Pipeline pipeline, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdBindPipeline( m_commandBuffer, static_cast<VkPipelineBindPoint>( pipelineBindPoint ), static_cast<VkPipeline>( pipeline ) );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::bindPipelineShaderGroupNV( VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint, VULKAN_HPP_NAMESPACE::Pipeline pipeline, uint32_t groupIndex, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdBindPipelineShaderGroupNV( m_commandBuffer, static_cast<VkPipelineBindPoint>( pipelineBindPoint ), static_cast<VkPipeline>( pipeline ), groupIndex );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::bindShadingRateImageNV( VULKAN_HPP_NAMESPACE::ImageView imageView, VULKAN_HPP_NAMESPACE::ImageLayout imageLayout, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdBindShadingRateImageNV( m_commandBuffer, static_cast<VkImageView>( imageView ), static_cast<VkImageLayout>( imageLayout ) );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::bindTransformFeedbackBuffersEXT( uint32_t firstBinding, uint32_t bindingCount, const VULKAN_HPP_NAMESPACE::Buffer* pBuffers, const VULKAN_HPP_NAMESPACE::DeviceSize* pOffsets, const VULKAN_HPP_NAMESPACE::DeviceSize* pSizes, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdBindTransformFeedbackBuffersEXT( m_commandBuffer, firstBinding, bindingCount, reinterpret_cast<const VkBuffer *>( pBuffers ), reinterpret_cast<const VkDeviceSize *>( pOffsets ), reinterpret_cast<const VkDeviceSize *>( pSizes ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::bindTransformFeedbackBuffersEXT( uint32_t firstBinding, ArrayProxy<const VULKAN_HPP_NAMESPACE::Buffer> const & buffers, ArrayProxy<const VULKAN_HPP_NAMESPACE::DeviceSize> const & offsets, ArrayProxy<const VULKAN_HPP_NAMESPACE::DeviceSize> const & sizes, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS
- {
-#ifdef VULKAN_HPP_NO_EXCEPTIONS
- VULKAN_HPP_ASSERT( buffers.size() == offsets.size() );
- VULKAN_HPP_ASSERT( sizes.empty() || buffers.size() == sizes.size() );
-#else
- if ( buffers.size() != offsets.size() )
- {
- throw LogicError( VULKAN_HPP_NAMESPACE_STRING "::CommandBuffer::bindTransformFeedbackBuffersEXT: buffers.size() != offsets.size()" );
- }
- if ( !sizes.empty() && buffers.size() != sizes.size() )
- {
- throw LogicError( VULKAN_HPP_NAMESPACE_STRING "::CommandBuffer::bindTransformFeedbackBuffersEXT: buffers.size() != sizes.size()" );
- }
-#endif /*VULKAN_HPP_NO_EXCEPTIONS*/
-
- d.vkCmdBindTransformFeedbackBuffersEXT( m_commandBuffer, firstBinding, buffers.size(), reinterpret_cast<const VkBuffer *>( buffers.data() ), reinterpret_cast<const VkDeviceSize *>( offsets.data() ), reinterpret_cast<const VkDeviceSize *>( sizes.data() ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::bindVertexBuffers( uint32_t firstBinding, uint32_t bindingCount, const VULKAN_HPP_NAMESPACE::Buffer* pBuffers, const VULKAN_HPP_NAMESPACE::DeviceSize* pOffsets, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdBindVertexBuffers( m_commandBuffer, firstBinding, bindingCount, reinterpret_cast<const VkBuffer *>( pBuffers ), reinterpret_cast<const VkDeviceSize *>( pOffsets ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::bindVertexBuffers( uint32_t firstBinding, ArrayProxy<const VULKAN_HPP_NAMESPACE::Buffer> const & buffers, ArrayProxy<const VULKAN_HPP_NAMESPACE::DeviceSize> const & offsets, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS
- {
-#ifdef VULKAN_HPP_NO_EXCEPTIONS
- VULKAN_HPP_ASSERT( buffers.size() == offsets.size() );
-#else
- if ( buffers.size() != offsets.size() )
- {
- throw LogicError( VULKAN_HPP_NAMESPACE_STRING "::CommandBuffer::bindVertexBuffers: buffers.size() != offsets.size()" );
- }
-#endif /*VULKAN_HPP_NO_EXCEPTIONS*/
-
- d.vkCmdBindVertexBuffers( m_commandBuffer, firstBinding, buffers.size(), reinterpret_cast<const VkBuffer *>( buffers.data() ), reinterpret_cast<const VkDeviceSize *>( offsets.data() ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::bindVertexBuffers2EXT( uint32_t firstBinding, uint32_t bindingCount, const VULKAN_HPP_NAMESPACE::Buffer* pBuffers, const VULKAN_HPP_NAMESPACE::DeviceSize* pOffsets, const VULKAN_HPP_NAMESPACE::DeviceSize* pSizes, const VULKAN_HPP_NAMESPACE::DeviceSize* pStrides, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdBindVertexBuffers2EXT( m_commandBuffer, firstBinding, bindingCount, reinterpret_cast<const VkBuffer *>( pBuffers ), reinterpret_cast<const VkDeviceSize *>( pOffsets ), reinterpret_cast<const VkDeviceSize *>( pSizes ), reinterpret_cast<const VkDeviceSize *>( pStrides ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::bindVertexBuffers2EXT( uint32_t firstBinding, ArrayProxy<const VULKAN_HPP_NAMESPACE::Buffer> const & buffers, ArrayProxy<const VULKAN_HPP_NAMESPACE::DeviceSize> const & offsets, ArrayProxy<const VULKAN_HPP_NAMESPACE::DeviceSize> const & sizes, ArrayProxy<const VULKAN_HPP_NAMESPACE::DeviceSize> const & strides, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS
- {
-#ifdef VULKAN_HPP_NO_EXCEPTIONS
- VULKAN_HPP_ASSERT( buffers.size() == offsets.size() );
- VULKAN_HPP_ASSERT( sizes.empty() || buffers.size() == sizes.size() );
- VULKAN_HPP_ASSERT( strides.empty() || buffers.size() == strides.size() );
-#else
- if ( buffers.size() != offsets.size() )
- {
- throw LogicError( VULKAN_HPP_NAMESPACE_STRING "::CommandBuffer::bindVertexBuffers2EXT: buffers.size() != offsets.size()" );
- }
- if ( !sizes.empty() && buffers.size() != sizes.size() )
- {
- throw LogicError( VULKAN_HPP_NAMESPACE_STRING "::CommandBuffer::bindVertexBuffers2EXT: buffers.size() != sizes.size()" );
- }
- if ( !strides.empty() && buffers.size() != strides.size() )
- {
- throw LogicError( VULKAN_HPP_NAMESPACE_STRING "::CommandBuffer::bindVertexBuffers2EXT: buffers.size() != strides.size()" );
- }
-#endif /*VULKAN_HPP_NO_EXCEPTIONS*/
-
- d.vkCmdBindVertexBuffers2EXT( m_commandBuffer, firstBinding, buffers.size(), reinterpret_cast<const VkBuffer *>( buffers.data() ), reinterpret_cast<const VkDeviceSize *>( offsets.data() ), reinterpret_cast<const VkDeviceSize *>( sizes.data() ), reinterpret_cast<const VkDeviceSize *>( strides.data() ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::blitImage( VULKAN_HPP_NAMESPACE::Image srcImage, VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout, VULKAN_HPP_NAMESPACE::Image dstImage, VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout, uint32_t regionCount, const VULKAN_HPP_NAMESPACE::ImageBlit* pRegions, VULKAN_HPP_NAMESPACE::Filter filter, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdBlitImage( m_commandBuffer, static_cast<VkImage>( srcImage ), static_cast<VkImageLayout>( srcImageLayout ), static_cast<VkImage>( dstImage ), static_cast<VkImageLayout>( dstImageLayout ), regionCount, reinterpret_cast<const VkImageBlit *>( pRegions ), static_cast<VkFilter>( filter ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::blitImage( VULKAN_HPP_NAMESPACE::Image srcImage, VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout, VULKAN_HPP_NAMESPACE::Image dstImage, VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout, ArrayProxy<const VULKAN_HPP_NAMESPACE::ImageBlit> const & regions, VULKAN_HPP_NAMESPACE::Filter filter, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdBlitImage( m_commandBuffer, static_cast<VkImage>( srcImage ), static_cast<VkImageLayout>( srcImageLayout ), static_cast<VkImage>( dstImage ), static_cast<VkImageLayout>( dstImageLayout ), regions.size(), reinterpret_cast<const VkImageBlit *>( regions.data() ), static_cast<VkFilter>( filter ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::blitImage2KHR( const VULKAN_HPP_NAMESPACE::BlitImageInfo2KHR* pBlitImageInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdBlitImage2KHR( m_commandBuffer, reinterpret_cast<const VkBlitImageInfo2KHR *>( pBlitImageInfo ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::blitImage2KHR( const BlitImageInfo2KHR & blitImageInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdBlitImage2KHR( m_commandBuffer, reinterpret_cast<const VkBlitImageInfo2KHR *>( &blitImageInfo ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::buildAccelerationStructureNV( const VULKAN_HPP_NAMESPACE::AccelerationStructureInfoNV* pInfo, VULKAN_HPP_NAMESPACE::Buffer instanceData, VULKAN_HPP_NAMESPACE::DeviceSize instanceOffset, VULKAN_HPP_NAMESPACE::Bool32 update, VULKAN_HPP_NAMESPACE::AccelerationStructureNV dst, VULKAN_HPP_NAMESPACE::AccelerationStructureNV src, VULKAN_HPP_NAMESPACE::Buffer scratch, VULKAN_HPP_NAMESPACE::DeviceSize scratchOffset, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdBuildAccelerationStructureNV( m_commandBuffer, reinterpret_cast<const VkAccelerationStructureInfoNV *>( pInfo ), static_cast<VkBuffer>( instanceData ), static_cast<VkDeviceSize>( instanceOffset ), static_cast<VkBool32>( update ), static_cast<VkAccelerationStructureNV>( dst ), static_cast<VkAccelerationStructureNV>( src ), static_cast<VkBuffer>( scratch ), static_cast<VkDeviceSize>( scratchOffset ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::buildAccelerationStructureNV( const AccelerationStructureInfoNV & info, VULKAN_HPP_NAMESPACE::Buffer instanceData, VULKAN_HPP_NAMESPACE::DeviceSize instanceOffset, VULKAN_HPP_NAMESPACE::Bool32 update, VULKAN_HPP_NAMESPACE::AccelerationStructureNV dst, VULKAN_HPP_NAMESPACE::AccelerationStructureNV src, VULKAN_HPP_NAMESPACE::Buffer scratch, VULKAN_HPP_NAMESPACE::DeviceSize scratchOffset, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdBuildAccelerationStructureNV( m_commandBuffer, reinterpret_cast<const VkAccelerationStructureInfoNV *>( &info ), static_cast<VkBuffer>( instanceData ), static_cast<VkDeviceSize>( instanceOffset ), static_cast<VkBool32>( update ), static_cast<VkAccelerationStructureNV>( dst ), static_cast<VkAccelerationStructureNV>( src ), static_cast<VkBuffer>( scratch ), static_cast<VkDeviceSize>( scratchOffset ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::buildAccelerationStructuresIndirectKHR( uint32_t infoCount, const VULKAN_HPP_NAMESPACE::AccelerationStructureBuildGeometryInfoKHR* pInfos, const VULKAN_HPP_NAMESPACE::DeviceAddress* pIndirectDeviceAddresses, const uint32_t* pIndirectStrides, const uint32_t* const * ppMaxPrimitiveCounts, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdBuildAccelerationStructuresIndirectKHR( m_commandBuffer, infoCount, reinterpret_cast<const VkAccelerationStructureBuildGeometryInfoKHR *>( pInfos ), reinterpret_cast<const VkDeviceAddress *>( pIndirectDeviceAddresses ), pIndirectStrides, ppMaxPrimitiveCounts );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::buildAccelerationStructuresIndirectKHR( ArrayProxy<const VULKAN_HPP_NAMESPACE::AccelerationStructureBuildGeometryInfoKHR> const & infos, ArrayProxy<const VULKAN_HPP_NAMESPACE::DeviceAddress> const & indirectDeviceAddresses, ArrayProxy<const uint32_t> const & indirectStrides, ArrayProxy<const uint32_t* const > const & pMaxPrimitiveCounts, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS
- {
-#ifdef VULKAN_HPP_NO_EXCEPTIONS
- VULKAN_HPP_ASSERT( infos.size() == indirectDeviceAddresses.size() );
- VULKAN_HPP_ASSERT( infos.size() == indirectStrides.size() );
- VULKAN_HPP_ASSERT( infos.size() == pMaxPrimitiveCounts.size() );
-#else
- if ( infos.size() != indirectDeviceAddresses.size() )
- {
- throw LogicError( VULKAN_HPP_NAMESPACE_STRING "::CommandBuffer::buildAccelerationStructuresIndirectKHR: infos.size() != indirectDeviceAddresses.size()" );
- }
- if ( infos.size() != indirectStrides.size() )
- {
- throw LogicError( VULKAN_HPP_NAMESPACE_STRING "::CommandBuffer::buildAccelerationStructuresIndirectKHR: infos.size() != indirectStrides.size()" );
- }
- if ( infos.size() != pMaxPrimitiveCounts.size() )
- {
- throw LogicError( VULKAN_HPP_NAMESPACE_STRING "::CommandBuffer::buildAccelerationStructuresIndirectKHR: infos.size() != pMaxPrimitiveCounts.size()" );
- }
-#endif /*VULKAN_HPP_NO_EXCEPTIONS*/
-
- d.vkCmdBuildAccelerationStructuresIndirectKHR( m_commandBuffer, infos.size(), reinterpret_cast<const VkAccelerationStructureBuildGeometryInfoKHR *>( infos.data() ), reinterpret_cast<const VkDeviceAddress *>( indirectDeviceAddresses.data() ), indirectStrides.data(), pMaxPrimitiveCounts.data() );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::buildAccelerationStructuresKHR( uint32_t infoCount, const VULKAN_HPP_NAMESPACE::AccelerationStructureBuildGeometryInfoKHR* pInfos, const VULKAN_HPP_NAMESPACE::AccelerationStructureBuildRangeInfoKHR* const * ppBuildRangeInfos, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdBuildAccelerationStructuresKHR( m_commandBuffer, infoCount, reinterpret_cast<const VkAccelerationStructureBuildGeometryInfoKHR *>( pInfos ), reinterpret_cast<const VkAccelerationStructureBuildRangeInfoKHR * const *>( ppBuildRangeInfos ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::buildAccelerationStructuresKHR( ArrayProxy<const VULKAN_HPP_NAMESPACE::AccelerationStructureBuildGeometryInfoKHR> const & infos, ArrayProxy<const VULKAN_HPP_NAMESPACE::AccelerationStructureBuildRangeInfoKHR* const > const & pBuildRangeInfos, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS
- {
-#ifdef VULKAN_HPP_NO_EXCEPTIONS
- VULKAN_HPP_ASSERT( infos.size() == pBuildRangeInfos.size() );
-#else
- if ( infos.size() != pBuildRangeInfos.size() )
- {
- throw LogicError( VULKAN_HPP_NAMESPACE_STRING "::CommandBuffer::buildAccelerationStructuresKHR: infos.size() != pBuildRangeInfos.size()" );
- }
-#endif /*VULKAN_HPP_NO_EXCEPTIONS*/
-
- d.vkCmdBuildAccelerationStructuresKHR( m_commandBuffer, infos.size(), reinterpret_cast<const VkAccelerationStructureBuildGeometryInfoKHR *>( infos.data() ), reinterpret_cast<const VkAccelerationStructureBuildRangeInfoKHR * const *>( pBuildRangeInfos.data() ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::clearAttachments( uint32_t attachmentCount, const VULKAN_HPP_NAMESPACE::ClearAttachment* pAttachments, uint32_t rectCount, const VULKAN_HPP_NAMESPACE::ClearRect* pRects, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdClearAttachments( m_commandBuffer, attachmentCount, reinterpret_cast<const VkClearAttachment *>( pAttachments ), rectCount, reinterpret_cast<const VkClearRect *>( pRects ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::clearAttachments( ArrayProxy<const VULKAN_HPP_NAMESPACE::ClearAttachment> const & attachments, ArrayProxy<const VULKAN_HPP_NAMESPACE::ClearRect> const & rects, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdClearAttachments( m_commandBuffer, attachments.size(), reinterpret_cast<const VkClearAttachment *>( attachments.data() ), rects.size(), reinterpret_cast<const VkClearRect *>( rects.data() ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::clearColorImage( VULKAN_HPP_NAMESPACE::Image image, VULKAN_HPP_NAMESPACE::ImageLayout imageLayout, const VULKAN_HPP_NAMESPACE::ClearColorValue* pColor, uint32_t rangeCount, const VULKAN_HPP_NAMESPACE::ImageSubresourceRange* pRanges, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdClearColorImage( m_commandBuffer, static_cast<VkImage>( image ), static_cast<VkImageLayout>( imageLayout ), reinterpret_cast<const VkClearColorValue *>( pColor ), rangeCount, reinterpret_cast<const VkImageSubresourceRange *>( pRanges ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::clearColorImage( VULKAN_HPP_NAMESPACE::Image image, VULKAN_HPP_NAMESPACE::ImageLayout imageLayout, const ClearColorValue & color, ArrayProxy<const VULKAN_HPP_NAMESPACE::ImageSubresourceRange> const & ranges, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdClearColorImage( m_commandBuffer, static_cast<VkImage>( image ), static_cast<VkImageLayout>( imageLayout ), reinterpret_cast<const VkClearColorValue *>( &color ), ranges.size(), reinterpret_cast<const VkImageSubresourceRange *>( ranges.data() ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::clearDepthStencilImage( VULKAN_HPP_NAMESPACE::Image image, VULKAN_HPP_NAMESPACE::ImageLayout imageLayout, const VULKAN_HPP_NAMESPACE::ClearDepthStencilValue* pDepthStencil, uint32_t rangeCount, const VULKAN_HPP_NAMESPACE::ImageSubresourceRange* pRanges, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdClearDepthStencilImage( m_commandBuffer, static_cast<VkImage>( image ), static_cast<VkImageLayout>( imageLayout ), reinterpret_cast<const VkClearDepthStencilValue *>( pDepthStencil ), rangeCount, reinterpret_cast<const VkImageSubresourceRange *>( pRanges ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::clearDepthStencilImage( VULKAN_HPP_NAMESPACE::Image image, VULKAN_HPP_NAMESPACE::ImageLayout imageLayout, const ClearDepthStencilValue & depthStencil, ArrayProxy<const VULKAN_HPP_NAMESPACE::ImageSubresourceRange> const & ranges, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdClearDepthStencilImage( m_commandBuffer, static_cast<VkImage>( image ), static_cast<VkImageLayout>( imageLayout ), reinterpret_cast<const VkClearDepthStencilValue *>( &depthStencil ), ranges.size(), reinterpret_cast<const VkImageSubresourceRange *>( ranges.data() ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::copyAccelerationStructureKHR( const VULKAN_HPP_NAMESPACE::CopyAccelerationStructureInfoKHR* pInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdCopyAccelerationStructureKHR( m_commandBuffer, reinterpret_cast<const VkCopyAccelerationStructureInfoKHR *>( pInfo ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::copyAccelerationStructureKHR( const CopyAccelerationStructureInfoKHR & info, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdCopyAccelerationStructureKHR( m_commandBuffer, reinterpret_cast<const VkCopyAccelerationStructureInfoKHR *>( &info ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::copyAccelerationStructureNV( VULKAN_HPP_NAMESPACE::AccelerationStructureNV dst, VULKAN_HPP_NAMESPACE::AccelerationStructureNV src, VULKAN_HPP_NAMESPACE::CopyAccelerationStructureModeKHR mode, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdCopyAccelerationStructureNV( m_commandBuffer, static_cast<VkAccelerationStructureNV>( dst ), static_cast<VkAccelerationStructureNV>( src ), static_cast<VkCopyAccelerationStructureModeKHR>( mode ) );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::copyAccelerationStructureToMemoryKHR( const VULKAN_HPP_NAMESPACE::CopyAccelerationStructureToMemoryInfoKHR* pInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdCopyAccelerationStructureToMemoryKHR( m_commandBuffer, reinterpret_cast<const VkCopyAccelerationStructureToMemoryInfoKHR *>( pInfo ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::copyAccelerationStructureToMemoryKHR( const CopyAccelerationStructureToMemoryInfoKHR & info, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdCopyAccelerationStructureToMemoryKHR( m_commandBuffer, reinterpret_cast<const VkCopyAccelerationStructureToMemoryInfoKHR *>( &info ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::copyBuffer( VULKAN_HPP_NAMESPACE::Buffer srcBuffer, VULKAN_HPP_NAMESPACE::Buffer dstBuffer, uint32_t regionCount, const VULKAN_HPP_NAMESPACE::BufferCopy* pRegions, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdCopyBuffer( m_commandBuffer, static_cast<VkBuffer>( srcBuffer ), static_cast<VkBuffer>( dstBuffer ), regionCount, reinterpret_cast<const VkBufferCopy *>( pRegions ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::copyBuffer( VULKAN_HPP_NAMESPACE::Buffer srcBuffer, VULKAN_HPP_NAMESPACE::Buffer dstBuffer, ArrayProxy<const VULKAN_HPP_NAMESPACE::BufferCopy> const & regions, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdCopyBuffer( m_commandBuffer, static_cast<VkBuffer>( srcBuffer ), static_cast<VkBuffer>( dstBuffer ), regions.size(), reinterpret_cast<const VkBufferCopy *>( regions.data() ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::copyBuffer2KHR( const VULKAN_HPP_NAMESPACE::CopyBufferInfo2KHR* pCopyBufferInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdCopyBuffer2KHR( m_commandBuffer, reinterpret_cast<const VkCopyBufferInfo2KHR *>( pCopyBufferInfo ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::copyBuffer2KHR( const CopyBufferInfo2KHR & copyBufferInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdCopyBuffer2KHR( m_commandBuffer, reinterpret_cast<const VkCopyBufferInfo2KHR *>( &copyBufferInfo ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::copyBufferToImage( VULKAN_HPP_NAMESPACE::Buffer srcBuffer, VULKAN_HPP_NAMESPACE::Image dstImage, VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout, uint32_t regionCount, const VULKAN_HPP_NAMESPACE::BufferImageCopy* pRegions, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdCopyBufferToImage( m_commandBuffer, static_cast<VkBuffer>( srcBuffer ), static_cast<VkImage>( dstImage ), static_cast<VkImageLayout>( dstImageLayout ), regionCount, reinterpret_cast<const VkBufferImageCopy *>( pRegions ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::copyBufferToImage( VULKAN_HPP_NAMESPACE::Buffer srcBuffer, VULKAN_HPP_NAMESPACE::Image dstImage, VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout, ArrayProxy<const VULKAN_HPP_NAMESPACE::BufferImageCopy> const & regions, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdCopyBufferToImage( m_commandBuffer, static_cast<VkBuffer>( srcBuffer ), static_cast<VkImage>( dstImage ), static_cast<VkImageLayout>( dstImageLayout ), regions.size(), reinterpret_cast<const VkBufferImageCopy *>( regions.data() ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::copyBufferToImage2KHR( const VULKAN_HPP_NAMESPACE::CopyBufferToImageInfo2KHR* pCopyBufferToImageInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdCopyBufferToImage2KHR( m_commandBuffer, reinterpret_cast<const VkCopyBufferToImageInfo2KHR *>( pCopyBufferToImageInfo ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::copyBufferToImage2KHR( const CopyBufferToImageInfo2KHR & copyBufferToImageInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdCopyBufferToImage2KHR( m_commandBuffer, reinterpret_cast<const VkCopyBufferToImageInfo2KHR *>( &copyBufferToImageInfo ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::copyImage( VULKAN_HPP_NAMESPACE::Image srcImage, VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout, VULKAN_HPP_NAMESPACE::Image dstImage, VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout, uint32_t regionCount, const VULKAN_HPP_NAMESPACE::ImageCopy* pRegions, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdCopyImage( m_commandBuffer, static_cast<VkImage>( srcImage ), static_cast<VkImageLayout>( srcImageLayout ), static_cast<VkImage>( dstImage ), static_cast<VkImageLayout>( dstImageLayout ), regionCount, reinterpret_cast<const VkImageCopy *>( pRegions ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::copyImage( VULKAN_HPP_NAMESPACE::Image srcImage, VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout, VULKAN_HPP_NAMESPACE::Image dstImage, VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout, ArrayProxy<const VULKAN_HPP_NAMESPACE::ImageCopy> const & regions, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdCopyImage( m_commandBuffer, static_cast<VkImage>( srcImage ), static_cast<VkImageLayout>( srcImageLayout ), static_cast<VkImage>( dstImage ), static_cast<VkImageLayout>( dstImageLayout ), regions.size(), reinterpret_cast<const VkImageCopy *>( regions.data() ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::copyImage2KHR( const VULKAN_HPP_NAMESPACE::CopyImageInfo2KHR* pCopyImageInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdCopyImage2KHR( m_commandBuffer, reinterpret_cast<const VkCopyImageInfo2KHR *>( pCopyImageInfo ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::copyImage2KHR( const CopyImageInfo2KHR & copyImageInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdCopyImage2KHR( m_commandBuffer, reinterpret_cast<const VkCopyImageInfo2KHR *>( &copyImageInfo ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::copyImageToBuffer( VULKAN_HPP_NAMESPACE::Image srcImage, VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout, VULKAN_HPP_NAMESPACE::Buffer dstBuffer, uint32_t regionCount, const VULKAN_HPP_NAMESPACE::BufferImageCopy* pRegions, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdCopyImageToBuffer( m_commandBuffer, static_cast<VkImage>( srcImage ), static_cast<VkImageLayout>( srcImageLayout ), static_cast<VkBuffer>( dstBuffer ), regionCount, reinterpret_cast<const VkBufferImageCopy *>( pRegions ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::copyImageToBuffer( VULKAN_HPP_NAMESPACE::Image srcImage, VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout, VULKAN_HPP_NAMESPACE::Buffer dstBuffer, ArrayProxy<const VULKAN_HPP_NAMESPACE::BufferImageCopy> const & regions, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdCopyImageToBuffer( m_commandBuffer, static_cast<VkImage>( srcImage ), static_cast<VkImageLayout>( srcImageLayout ), static_cast<VkBuffer>( dstBuffer ), regions.size(), reinterpret_cast<const VkBufferImageCopy *>( regions.data() ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::copyImageToBuffer2KHR( const VULKAN_HPP_NAMESPACE::CopyImageToBufferInfo2KHR* pCopyImageToBufferInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdCopyImageToBuffer2KHR( m_commandBuffer, reinterpret_cast<const VkCopyImageToBufferInfo2KHR *>( pCopyImageToBufferInfo ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::copyImageToBuffer2KHR( const CopyImageToBufferInfo2KHR & copyImageToBufferInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdCopyImageToBuffer2KHR( m_commandBuffer, reinterpret_cast<const VkCopyImageToBufferInfo2KHR *>( &copyImageToBufferInfo ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::copyMemoryToAccelerationStructureKHR( const VULKAN_HPP_NAMESPACE::CopyMemoryToAccelerationStructureInfoKHR* pInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdCopyMemoryToAccelerationStructureKHR( m_commandBuffer, reinterpret_cast<const VkCopyMemoryToAccelerationStructureInfoKHR *>( pInfo ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::copyMemoryToAccelerationStructureKHR( const CopyMemoryToAccelerationStructureInfoKHR & info, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdCopyMemoryToAccelerationStructureKHR( m_commandBuffer, reinterpret_cast<const VkCopyMemoryToAccelerationStructureInfoKHR *>( &info ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::copyQueryPoolResults( VULKAN_HPP_NAMESPACE::QueryPool queryPool, uint32_t firstQuery, uint32_t queryCount, VULKAN_HPP_NAMESPACE::Buffer dstBuffer, VULKAN_HPP_NAMESPACE::DeviceSize dstOffset, VULKAN_HPP_NAMESPACE::DeviceSize stride, VULKAN_HPP_NAMESPACE::QueryResultFlags flags, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdCopyQueryPoolResults( m_commandBuffer, static_cast<VkQueryPool>( queryPool ), firstQuery, queryCount, static_cast<VkBuffer>( dstBuffer ), static_cast<VkDeviceSize>( dstOffset ), static_cast<VkDeviceSize>( stride ), static_cast<VkQueryResultFlags>( flags ) );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::debugMarkerBeginEXT( const VULKAN_HPP_NAMESPACE::DebugMarkerMarkerInfoEXT* pMarkerInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdDebugMarkerBeginEXT( m_commandBuffer, reinterpret_cast<const VkDebugMarkerMarkerInfoEXT *>( pMarkerInfo ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::debugMarkerBeginEXT( const DebugMarkerMarkerInfoEXT & markerInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdDebugMarkerBeginEXT( m_commandBuffer, reinterpret_cast<const VkDebugMarkerMarkerInfoEXT *>( &markerInfo ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::debugMarkerEndEXT( Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdDebugMarkerEndEXT( m_commandBuffer );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::debugMarkerInsertEXT( const VULKAN_HPP_NAMESPACE::DebugMarkerMarkerInfoEXT* pMarkerInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdDebugMarkerInsertEXT( m_commandBuffer, reinterpret_cast<const VkDebugMarkerMarkerInfoEXT *>( pMarkerInfo ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::debugMarkerInsertEXT( const DebugMarkerMarkerInfoEXT & markerInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdDebugMarkerInsertEXT( m_commandBuffer, reinterpret_cast<const VkDebugMarkerMarkerInfoEXT *>( &markerInfo ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::dispatch( uint32_t groupCountX, uint32_t groupCountY, uint32_t groupCountZ, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdDispatch( m_commandBuffer, groupCountX, groupCountY, groupCountZ );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::dispatchBase( uint32_t baseGroupX, uint32_t baseGroupY, uint32_t baseGroupZ, uint32_t groupCountX, uint32_t groupCountY, uint32_t groupCountZ, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdDispatchBase( m_commandBuffer, baseGroupX, baseGroupY, baseGroupZ, groupCountX, groupCountY, groupCountZ );
- }
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::dispatchBaseKHR( uint32_t baseGroupX, uint32_t baseGroupY, uint32_t baseGroupZ, uint32_t groupCountX, uint32_t groupCountY, uint32_t groupCountZ, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdDispatchBaseKHR( m_commandBuffer, baseGroupX, baseGroupY, baseGroupZ, groupCountX, groupCountY, groupCountZ );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::dispatchIndirect( VULKAN_HPP_NAMESPACE::Buffer buffer, VULKAN_HPP_NAMESPACE::DeviceSize offset, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdDispatchIndirect( m_commandBuffer, static_cast<VkBuffer>( buffer ), static_cast<VkDeviceSize>( offset ) );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::draw( uint32_t vertexCount, uint32_t instanceCount, uint32_t firstVertex, uint32_t firstInstance, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdDraw( m_commandBuffer, vertexCount, instanceCount, firstVertex, firstInstance );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::drawIndexed( uint32_t indexCount, uint32_t instanceCount, uint32_t firstIndex, int32_t vertexOffset, uint32_t firstInstance, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdDrawIndexed( m_commandBuffer, indexCount, instanceCount, firstIndex, vertexOffset, firstInstance );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::drawIndexedIndirect( VULKAN_HPP_NAMESPACE::Buffer buffer, VULKAN_HPP_NAMESPACE::DeviceSize offset, uint32_t drawCount, uint32_t stride, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdDrawIndexedIndirect( m_commandBuffer, static_cast<VkBuffer>( buffer ), static_cast<VkDeviceSize>( offset ), drawCount, stride );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::drawIndexedIndirectCount( VULKAN_HPP_NAMESPACE::Buffer buffer, VULKAN_HPP_NAMESPACE::DeviceSize offset, VULKAN_HPP_NAMESPACE::Buffer countBuffer, VULKAN_HPP_NAMESPACE::DeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdDrawIndexedIndirectCount( m_commandBuffer, static_cast<VkBuffer>( buffer ), static_cast<VkDeviceSize>( offset ), static_cast<VkBuffer>( countBuffer ), static_cast<VkDeviceSize>( countBufferOffset ), maxDrawCount, stride );
- }
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::drawIndexedIndirectCountAMD( VULKAN_HPP_NAMESPACE::Buffer buffer, VULKAN_HPP_NAMESPACE::DeviceSize offset, VULKAN_HPP_NAMESPACE::Buffer countBuffer, VULKAN_HPP_NAMESPACE::DeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdDrawIndexedIndirectCountAMD( m_commandBuffer, static_cast<VkBuffer>( buffer ), static_cast<VkDeviceSize>( offset ), static_cast<VkBuffer>( countBuffer ), static_cast<VkDeviceSize>( countBufferOffset ), maxDrawCount, stride );
- }
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::drawIndexedIndirectCountKHR( VULKAN_HPP_NAMESPACE::Buffer buffer, VULKAN_HPP_NAMESPACE::DeviceSize offset, VULKAN_HPP_NAMESPACE::Buffer countBuffer, VULKAN_HPP_NAMESPACE::DeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdDrawIndexedIndirectCountKHR( m_commandBuffer, static_cast<VkBuffer>( buffer ), static_cast<VkDeviceSize>( offset ), static_cast<VkBuffer>( countBuffer ), static_cast<VkDeviceSize>( countBufferOffset ), maxDrawCount, stride );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::drawIndirect( VULKAN_HPP_NAMESPACE::Buffer buffer, VULKAN_HPP_NAMESPACE::DeviceSize offset, uint32_t drawCount, uint32_t stride, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdDrawIndirect( m_commandBuffer, static_cast<VkBuffer>( buffer ), static_cast<VkDeviceSize>( offset ), drawCount, stride );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::drawIndirectByteCountEXT( uint32_t instanceCount, uint32_t firstInstance, VULKAN_HPP_NAMESPACE::Buffer counterBuffer, VULKAN_HPP_NAMESPACE::DeviceSize counterBufferOffset, uint32_t counterOffset, uint32_t vertexStride, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdDrawIndirectByteCountEXT( m_commandBuffer, instanceCount, firstInstance, static_cast<VkBuffer>( counterBuffer ), static_cast<VkDeviceSize>( counterBufferOffset ), counterOffset, vertexStride );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::drawIndirectCount( VULKAN_HPP_NAMESPACE::Buffer buffer, VULKAN_HPP_NAMESPACE::DeviceSize offset, VULKAN_HPP_NAMESPACE::Buffer countBuffer, VULKAN_HPP_NAMESPACE::DeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdDrawIndirectCount( m_commandBuffer, static_cast<VkBuffer>( buffer ), static_cast<VkDeviceSize>( offset ), static_cast<VkBuffer>( countBuffer ), static_cast<VkDeviceSize>( countBufferOffset ), maxDrawCount, stride );
- }
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::drawIndirectCountAMD( VULKAN_HPP_NAMESPACE::Buffer buffer, VULKAN_HPP_NAMESPACE::DeviceSize offset, VULKAN_HPP_NAMESPACE::Buffer countBuffer, VULKAN_HPP_NAMESPACE::DeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdDrawIndirectCountAMD( m_commandBuffer, static_cast<VkBuffer>( buffer ), static_cast<VkDeviceSize>( offset ), static_cast<VkBuffer>( countBuffer ), static_cast<VkDeviceSize>( countBufferOffset ), maxDrawCount, stride );
- }
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::drawIndirectCountKHR( VULKAN_HPP_NAMESPACE::Buffer buffer, VULKAN_HPP_NAMESPACE::DeviceSize offset, VULKAN_HPP_NAMESPACE::Buffer countBuffer, VULKAN_HPP_NAMESPACE::DeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdDrawIndirectCountKHR( m_commandBuffer, static_cast<VkBuffer>( buffer ), static_cast<VkDeviceSize>( offset ), static_cast<VkBuffer>( countBuffer ), static_cast<VkDeviceSize>( countBufferOffset ), maxDrawCount, stride );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::drawMeshTasksIndirectCountNV( VULKAN_HPP_NAMESPACE::Buffer buffer, VULKAN_HPP_NAMESPACE::DeviceSize offset, VULKAN_HPP_NAMESPACE::Buffer countBuffer, VULKAN_HPP_NAMESPACE::DeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdDrawMeshTasksIndirectCountNV( m_commandBuffer, static_cast<VkBuffer>( buffer ), static_cast<VkDeviceSize>( offset ), static_cast<VkBuffer>( countBuffer ), static_cast<VkDeviceSize>( countBufferOffset ), maxDrawCount, stride );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::drawMeshTasksIndirectNV( VULKAN_HPP_NAMESPACE::Buffer buffer, VULKAN_HPP_NAMESPACE::DeviceSize offset, uint32_t drawCount, uint32_t stride, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdDrawMeshTasksIndirectNV( m_commandBuffer, static_cast<VkBuffer>( buffer ), static_cast<VkDeviceSize>( offset ), drawCount, stride );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::drawMeshTasksNV( uint32_t taskCount, uint32_t firstTask, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdDrawMeshTasksNV( m_commandBuffer, taskCount, firstTask );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::endConditionalRenderingEXT( Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdEndConditionalRenderingEXT( m_commandBuffer );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::endDebugUtilsLabelEXT( Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdEndDebugUtilsLabelEXT( m_commandBuffer );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::endQuery( VULKAN_HPP_NAMESPACE::QueryPool queryPool, uint32_t query, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdEndQuery( m_commandBuffer, static_cast<VkQueryPool>( queryPool ), query );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::endQueryIndexedEXT( VULKAN_HPP_NAMESPACE::QueryPool queryPool, uint32_t query, uint32_t index, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdEndQueryIndexedEXT( m_commandBuffer, static_cast<VkQueryPool>( queryPool ), query, index );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::endRenderPass( Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdEndRenderPass( m_commandBuffer );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::endRenderPass2( const VULKAN_HPP_NAMESPACE::SubpassEndInfo* pSubpassEndInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdEndRenderPass2( m_commandBuffer, reinterpret_cast<const VkSubpassEndInfo *>( pSubpassEndInfo ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::endRenderPass2( const SubpassEndInfo & subpassEndInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdEndRenderPass2( m_commandBuffer, reinterpret_cast<const VkSubpassEndInfo *>( &subpassEndInfo ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::endRenderPass2KHR( const VULKAN_HPP_NAMESPACE::SubpassEndInfo* pSubpassEndInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdEndRenderPass2KHR( m_commandBuffer, reinterpret_cast<const VkSubpassEndInfo *>( pSubpassEndInfo ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::endRenderPass2KHR( const SubpassEndInfo & subpassEndInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdEndRenderPass2KHR( m_commandBuffer, reinterpret_cast<const VkSubpassEndInfo *>( &subpassEndInfo ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::endTransformFeedbackEXT( uint32_t firstCounterBuffer, uint32_t counterBufferCount, const VULKAN_HPP_NAMESPACE::Buffer* pCounterBuffers, const VULKAN_HPP_NAMESPACE::DeviceSize* pCounterBufferOffsets, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdEndTransformFeedbackEXT( m_commandBuffer, firstCounterBuffer, counterBufferCount, reinterpret_cast<const VkBuffer *>( pCounterBuffers ), reinterpret_cast<const VkDeviceSize *>( pCounterBufferOffsets ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::endTransformFeedbackEXT( uint32_t firstCounterBuffer, ArrayProxy<const VULKAN_HPP_NAMESPACE::Buffer> const & counterBuffers, ArrayProxy<const VULKAN_HPP_NAMESPACE::DeviceSize> const & counterBufferOffsets, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS
- {
-#ifdef VULKAN_HPP_NO_EXCEPTIONS
- VULKAN_HPP_ASSERT( counterBufferOffsets.empty() || counterBuffers.size() == counterBufferOffsets.size() );
-#else
- if ( !counterBufferOffsets.empty() && counterBuffers.size() != counterBufferOffsets.size() )
- {
- throw LogicError( VULKAN_HPP_NAMESPACE_STRING "::CommandBuffer::endTransformFeedbackEXT: counterBuffers.size() != counterBufferOffsets.size()" );
- }
-#endif /*VULKAN_HPP_NO_EXCEPTIONS*/
-
- d.vkCmdEndTransformFeedbackEXT( m_commandBuffer, firstCounterBuffer, counterBuffers.size(), reinterpret_cast<const VkBuffer *>( counterBuffers.data() ), reinterpret_cast<const VkDeviceSize *>( counterBufferOffsets.data() ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::executeCommands( uint32_t commandBufferCount, const VULKAN_HPP_NAMESPACE::CommandBuffer* pCommandBuffers, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdExecuteCommands( m_commandBuffer, commandBufferCount, reinterpret_cast<const VkCommandBuffer *>( pCommandBuffers ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::executeCommands( ArrayProxy<const VULKAN_HPP_NAMESPACE::CommandBuffer> const & commandBuffers, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdExecuteCommands( m_commandBuffer, commandBuffers.size(), reinterpret_cast<const VkCommandBuffer *>( commandBuffers.data() ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::executeGeneratedCommandsNV( VULKAN_HPP_NAMESPACE::Bool32 isPreprocessed, const VULKAN_HPP_NAMESPACE::GeneratedCommandsInfoNV* pGeneratedCommandsInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdExecuteGeneratedCommandsNV( m_commandBuffer, static_cast<VkBool32>( isPreprocessed ), reinterpret_cast<const VkGeneratedCommandsInfoNV *>( pGeneratedCommandsInfo ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::executeGeneratedCommandsNV( VULKAN_HPP_NAMESPACE::Bool32 isPreprocessed, const GeneratedCommandsInfoNV & generatedCommandsInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdExecuteGeneratedCommandsNV( m_commandBuffer, static_cast<VkBool32>( isPreprocessed ), reinterpret_cast<const VkGeneratedCommandsInfoNV *>( &generatedCommandsInfo ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::fillBuffer( VULKAN_HPP_NAMESPACE::Buffer dstBuffer, VULKAN_HPP_NAMESPACE::DeviceSize dstOffset, VULKAN_HPP_NAMESPACE::DeviceSize size, uint32_t data, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdFillBuffer( m_commandBuffer, static_cast<VkBuffer>( dstBuffer ), static_cast<VkDeviceSize>( dstOffset ), static_cast<VkDeviceSize>( size ), data );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::insertDebugUtilsLabelEXT( const VULKAN_HPP_NAMESPACE::DebugUtilsLabelEXT* pLabelInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdInsertDebugUtilsLabelEXT( m_commandBuffer, reinterpret_cast<const VkDebugUtilsLabelEXT *>( pLabelInfo ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::insertDebugUtilsLabelEXT( const DebugUtilsLabelEXT & labelInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdInsertDebugUtilsLabelEXT( m_commandBuffer, reinterpret_cast<const VkDebugUtilsLabelEXT *>( &labelInfo ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::nextSubpass( VULKAN_HPP_NAMESPACE::SubpassContents contents, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdNextSubpass( m_commandBuffer, static_cast<VkSubpassContents>( contents ) );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::nextSubpass2( const VULKAN_HPP_NAMESPACE::SubpassBeginInfo* pSubpassBeginInfo, const VULKAN_HPP_NAMESPACE::SubpassEndInfo* pSubpassEndInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdNextSubpass2( m_commandBuffer, reinterpret_cast<const VkSubpassBeginInfo *>( pSubpassBeginInfo ), reinterpret_cast<const VkSubpassEndInfo *>( pSubpassEndInfo ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::nextSubpass2( const SubpassBeginInfo & subpassBeginInfo, const SubpassEndInfo & subpassEndInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdNextSubpass2( m_commandBuffer, reinterpret_cast<const VkSubpassBeginInfo *>( &subpassBeginInfo ), reinterpret_cast<const VkSubpassEndInfo *>( &subpassEndInfo ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::nextSubpass2KHR( const VULKAN_HPP_NAMESPACE::SubpassBeginInfo* pSubpassBeginInfo, const VULKAN_HPP_NAMESPACE::SubpassEndInfo* pSubpassEndInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdNextSubpass2KHR( m_commandBuffer, reinterpret_cast<const VkSubpassBeginInfo *>( pSubpassBeginInfo ), reinterpret_cast<const VkSubpassEndInfo *>( pSubpassEndInfo ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::nextSubpass2KHR( const SubpassBeginInfo & subpassBeginInfo, const SubpassEndInfo & subpassEndInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdNextSubpass2KHR( m_commandBuffer, reinterpret_cast<const VkSubpassBeginInfo *>( &subpassBeginInfo ), reinterpret_cast<const VkSubpassEndInfo *>( &subpassEndInfo ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::pipelineBarrier( VULKAN_HPP_NAMESPACE::PipelineStageFlags srcStageMask, VULKAN_HPP_NAMESPACE::PipelineStageFlags dstStageMask, VULKAN_HPP_NAMESPACE::DependencyFlags dependencyFlags, uint32_t memoryBarrierCount, const VULKAN_HPP_NAMESPACE::MemoryBarrier* pMemoryBarriers, uint32_t bufferMemoryBarrierCount, const VULKAN_HPP_NAMESPACE::BufferMemoryBarrier* pBufferMemoryBarriers, uint32_t imageMemoryBarrierCount, const VULKAN_HPP_NAMESPACE::ImageMemoryBarrier* pImageMemoryBarriers, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdPipelineBarrier( m_commandBuffer, static_cast<VkPipelineStageFlags>( srcStageMask ), static_cast<VkPipelineStageFlags>( dstStageMask ), static_cast<VkDependencyFlags>( dependencyFlags ), memoryBarrierCount, reinterpret_cast<const VkMemoryBarrier *>( pMemoryBarriers ), bufferMemoryBarrierCount, reinterpret_cast<const VkBufferMemoryBarrier *>( pBufferMemoryBarriers ), imageMemoryBarrierCount, reinterpret_cast<const VkImageMemoryBarrier *>( pImageMemoryBarriers ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::pipelineBarrier( VULKAN_HPP_NAMESPACE::PipelineStageFlags srcStageMask, VULKAN_HPP_NAMESPACE::PipelineStageFlags dstStageMask, VULKAN_HPP_NAMESPACE::DependencyFlags dependencyFlags, ArrayProxy<const VULKAN_HPP_NAMESPACE::MemoryBarrier> const & memoryBarriers, ArrayProxy<const VULKAN_HPP_NAMESPACE::BufferMemoryBarrier> const & bufferMemoryBarriers, ArrayProxy<const VULKAN_HPP_NAMESPACE::ImageMemoryBarrier> const & imageMemoryBarriers, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdPipelineBarrier( m_commandBuffer, static_cast<VkPipelineStageFlags>( srcStageMask ), static_cast<VkPipelineStageFlags>( dstStageMask ), static_cast<VkDependencyFlags>( dependencyFlags ), memoryBarriers.size(), reinterpret_cast<const VkMemoryBarrier *>( memoryBarriers.data() ), bufferMemoryBarriers.size(), reinterpret_cast<const VkBufferMemoryBarrier *>( bufferMemoryBarriers.data() ), imageMemoryBarriers.size(), reinterpret_cast<const VkImageMemoryBarrier *>( imageMemoryBarriers.data() ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::preprocessGeneratedCommandsNV( const VULKAN_HPP_NAMESPACE::GeneratedCommandsInfoNV* pGeneratedCommandsInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdPreprocessGeneratedCommandsNV( m_commandBuffer, reinterpret_cast<const VkGeneratedCommandsInfoNV *>( pGeneratedCommandsInfo ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::preprocessGeneratedCommandsNV( const GeneratedCommandsInfoNV & generatedCommandsInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdPreprocessGeneratedCommandsNV( m_commandBuffer, reinterpret_cast<const VkGeneratedCommandsInfoNV *>( &generatedCommandsInfo ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::pushConstants( VULKAN_HPP_NAMESPACE::PipelineLayout layout, VULKAN_HPP_NAMESPACE::ShaderStageFlags stageFlags, uint32_t offset, uint32_t size, const void* pValues, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdPushConstants( m_commandBuffer, static_cast<VkPipelineLayout>( layout ), static_cast<VkShaderStageFlags>( stageFlags ), offset, size, pValues );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename T, typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::pushConstants( VULKAN_HPP_NAMESPACE::PipelineLayout layout, VULKAN_HPP_NAMESPACE::ShaderStageFlags stageFlags, uint32_t offset, ArrayProxy<const T> const & values, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdPushConstants( m_commandBuffer, static_cast<VkPipelineLayout>( layout ), static_cast<VkShaderStageFlags>( stageFlags ), offset, values.size() * sizeof( T ), reinterpret_cast<const void *>( values.data() ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::pushDescriptorSetKHR( VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint, VULKAN_HPP_NAMESPACE::PipelineLayout layout, uint32_t set, uint32_t descriptorWriteCount, const VULKAN_HPP_NAMESPACE::WriteDescriptorSet* pDescriptorWrites, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdPushDescriptorSetKHR( m_commandBuffer, static_cast<VkPipelineBindPoint>( pipelineBindPoint ), static_cast<VkPipelineLayout>( layout ), set, descriptorWriteCount, reinterpret_cast<const VkWriteDescriptorSet *>( pDescriptorWrites ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::pushDescriptorSetKHR( VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint, VULKAN_HPP_NAMESPACE::PipelineLayout layout, uint32_t set, ArrayProxy<const VULKAN_HPP_NAMESPACE::WriteDescriptorSet> const & descriptorWrites, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdPushDescriptorSetKHR( m_commandBuffer, static_cast<VkPipelineBindPoint>( pipelineBindPoint ), static_cast<VkPipelineLayout>( layout ), set, descriptorWrites.size(), reinterpret_cast<const VkWriteDescriptorSet *>( descriptorWrites.data() ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::pushDescriptorSetWithTemplateKHR( VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate descriptorUpdateTemplate, VULKAN_HPP_NAMESPACE::PipelineLayout layout, uint32_t set, const void* pData, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdPushDescriptorSetWithTemplateKHR( m_commandBuffer, static_cast<VkDescriptorUpdateTemplate>( descriptorUpdateTemplate ), static_cast<VkPipelineLayout>( layout ), set, pData );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::resetEvent( VULKAN_HPP_NAMESPACE::Event event, VULKAN_HPP_NAMESPACE::PipelineStageFlags stageMask, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdResetEvent( m_commandBuffer, static_cast<VkEvent>( event ), static_cast<VkPipelineStageFlags>( stageMask ) );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::resetQueryPool( VULKAN_HPP_NAMESPACE::QueryPool queryPool, uint32_t firstQuery, uint32_t queryCount, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdResetQueryPool( m_commandBuffer, static_cast<VkQueryPool>( queryPool ), firstQuery, queryCount );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::resolveImage( VULKAN_HPP_NAMESPACE::Image srcImage, VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout, VULKAN_HPP_NAMESPACE::Image dstImage, VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout, uint32_t regionCount, const VULKAN_HPP_NAMESPACE::ImageResolve* pRegions, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdResolveImage( m_commandBuffer, static_cast<VkImage>( srcImage ), static_cast<VkImageLayout>( srcImageLayout ), static_cast<VkImage>( dstImage ), static_cast<VkImageLayout>( dstImageLayout ), regionCount, reinterpret_cast<const VkImageResolve *>( pRegions ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::resolveImage( VULKAN_HPP_NAMESPACE::Image srcImage, VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout, VULKAN_HPP_NAMESPACE::Image dstImage, VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout, ArrayProxy<const VULKAN_HPP_NAMESPACE::ImageResolve> const & regions, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdResolveImage( m_commandBuffer, static_cast<VkImage>( srcImage ), static_cast<VkImageLayout>( srcImageLayout ), static_cast<VkImage>( dstImage ), static_cast<VkImageLayout>( dstImageLayout ), regions.size(), reinterpret_cast<const VkImageResolve *>( regions.data() ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::resolveImage2KHR( const VULKAN_HPP_NAMESPACE::ResolveImageInfo2KHR* pResolveImageInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdResolveImage2KHR( m_commandBuffer, reinterpret_cast<const VkResolveImageInfo2KHR *>( pResolveImageInfo ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::resolveImage2KHR( const ResolveImageInfo2KHR & resolveImageInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdResolveImage2KHR( m_commandBuffer, reinterpret_cast<const VkResolveImageInfo2KHR *>( &resolveImageInfo ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::setBlendConstants( const float blendConstants[4], Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdSetBlendConstants( m_commandBuffer, blendConstants );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::setCheckpointNV( const void* pCheckpointMarker, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdSetCheckpointNV( m_commandBuffer, pCheckpointMarker );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::setCoarseSampleOrderNV( VULKAN_HPP_NAMESPACE::CoarseSampleOrderTypeNV sampleOrderType, uint32_t customSampleOrderCount, const VULKAN_HPP_NAMESPACE::CoarseSampleOrderCustomNV* pCustomSampleOrders, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdSetCoarseSampleOrderNV( m_commandBuffer, static_cast<VkCoarseSampleOrderTypeNV>( sampleOrderType ), customSampleOrderCount, reinterpret_cast<const VkCoarseSampleOrderCustomNV *>( pCustomSampleOrders ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::setCoarseSampleOrderNV( VULKAN_HPP_NAMESPACE::CoarseSampleOrderTypeNV sampleOrderType, ArrayProxy<const VULKAN_HPP_NAMESPACE::CoarseSampleOrderCustomNV> const & customSampleOrders, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdSetCoarseSampleOrderNV( m_commandBuffer, static_cast<VkCoarseSampleOrderTypeNV>( sampleOrderType ), customSampleOrders.size(), reinterpret_cast<const VkCoarseSampleOrderCustomNV *>( customSampleOrders.data() ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::setCullModeEXT( VULKAN_HPP_NAMESPACE::CullModeFlags cullMode, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdSetCullModeEXT( m_commandBuffer, static_cast<VkCullModeFlags>( cullMode ) );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::setDepthBias( float depthBiasConstantFactor, float depthBiasClamp, float depthBiasSlopeFactor, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdSetDepthBias( m_commandBuffer, depthBiasConstantFactor, depthBiasClamp, depthBiasSlopeFactor );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::setDepthBounds( float minDepthBounds, float maxDepthBounds, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdSetDepthBounds( m_commandBuffer, minDepthBounds, maxDepthBounds );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::setDepthBoundsTestEnableEXT( VULKAN_HPP_NAMESPACE::Bool32 depthBoundsTestEnable, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdSetDepthBoundsTestEnableEXT( m_commandBuffer, static_cast<VkBool32>( depthBoundsTestEnable ) );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::setDepthCompareOpEXT( VULKAN_HPP_NAMESPACE::CompareOp depthCompareOp, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdSetDepthCompareOpEXT( m_commandBuffer, static_cast<VkCompareOp>( depthCompareOp ) );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::setDepthTestEnableEXT( VULKAN_HPP_NAMESPACE::Bool32 depthTestEnable, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdSetDepthTestEnableEXT( m_commandBuffer, static_cast<VkBool32>( depthTestEnable ) );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::setDepthWriteEnableEXT( VULKAN_HPP_NAMESPACE::Bool32 depthWriteEnable, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdSetDepthWriteEnableEXT( m_commandBuffer, static_cast<VkBool32>( depthWriteEnable ) );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::setDeviceMask( uint32_t deviceMask, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdSetDeviceMask( m_commandBuffer, deviceMask );
- }
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::setDeviceMaskKHR( uint32_t deviceMask, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdSetDeviceMaskKHR( m_commandBuffer, deviceMask );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::setDiscardRectangleEXT( uint32_t firstDiscardRectangle, uint32_t discardRectangleCount, const VULKAN_HPP_NAMESPACE::Rect2D* pDiscardRectangles, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdSetDiscardRectangleEXT( m_commandBuffer, firstDiscardRectangle, discardRectangleCount, reinterpret_cast<const VkRect2D *>( pDiscardRectangles ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::setDiscardRectangleEXT( uint32_t firstDiscardRectangle, ArrayProxy<const VULKAN_HPP_NAMESPACE::Rect2D> const & discardRectangles, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdSetDiscardRectangleEXT( m_commandBuffer, firstDiscardRectangle, discardRectangles.size(), reinterpret_cast<const VkRect2D *>( discardRectangles.data() ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::setEvent( VULKAN_HPP_NAMESPACE::Event event, VULKAN_HPP_NAMESPACE::PipelineStageFlags stageMask, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdSetEvent( m_commandBuffer, static_cast<VkEvent>( event ), static_cast<VkPipelineStageFlags>( stageMask ) );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::setExclusiveScissorNV( uint32_t firstExclusiveScissor, uint32_t exclusiveScissorCount, const VULKAN_HPP_NAMESPACE::Rect2D* pExclusiveScissors, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdSetExclusiveScissorNV( m_commandBuffer, firstExclusiveScissor, exclusiveScissorCount, reinterpret_cast<const VkRect2D *>( pExclusiveScissors ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::setExclusiveScissorNV( uint32_t firstExclusiveScissor, ArrayProxy<const VULKAN_HPP_NAMESPACE::Rect2D> const & exclusiveScissors, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdSetExclusiveScissorNV( m_commandBuffer, firstExclusiveScissor, exclusiveScissors.size(), reinterpret_cast<const VkRect2D *>( exclusiveScissors.data() ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::setFragmentShadingRateEnumNV( VULKAN_HPP_NAMESPACE::FragmentShadingRateNV shadingRate, const VULKAN_HPP_NAMESPACE::FragmentShadingRateCombinerOpKHR combinerOps[2], Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdSetFragmentShadingRateEnumNV( m_commandBuffer, static_cast<VkFragmentShadingRateNV>( shadingRate ), reinterpret_cast<const VkFragmentShadingRateCombinerOpKHR*>( combinerOps ) );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::setFragmentShadingRateKHR( const VULKAN_HPP_NAMESPACE::Extent2D* pFragmentSize, const VULKAN_HPP_NAMESPACE::FragmentShadingRateCombinerOpKHR combinerOps[2], Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdSetFragmentShadingRateKHR( m_commandBuffer, reinterpret_cast<const VkExtent2D *>( pFragmentSize ), reinterpret_cast<const VkFragmentShadingRateCombinerOpKHR*>( combinerOps ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::setFragmentShadingRateKHR( const Extent2D & fragmentSize, const VULKAN_HPP_NAMESPACE::FragmentShadingRateCombinerOpKHR combinerOps[2], Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdSetFragmentShadingRateKHR( m_commandBuffer, reinterpret_cast<const VkExtent2D *>( &fragmentSize ), reinterpret_cast<const VkFragmentShadingRateCombinerOpKHR *>( combinerOps ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::setFrontFaceEXT( VULKAN_HPP_NAMESPACE::FrontFace frontFace, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdSetFrontFaceEXT( m_commandBuffer, static_cast<VkFrontFace>( frontFace ) );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::setLineStippleEXT( uint32_t lineStippleFactor, uint16_t lineStipplePattern, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdSetLineStippleEXT( m_commandBuffer, lineStippleFactor, lineStipplePattern );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::setLineWidth( float lineWidth, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdSetLineWidth( m_commandBuffer, lineWidth );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result CommandBuffer::setPerformanceMarkerINTEL( const VULKAN_HPP_NAMESPACE::PerformanceMarkerInfoINTEL* pMarkerInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCmdSetPerformanceMarkerINTEL( m_commandBuffer, reinterpret_cast<const VkPerformanceMarkerInfoINTEL *>( pMarkerInfo ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type CommandBuffer::setPerformanceMarkerINTEL( const PerformanceMarkerInfoINTEL & markerInfo, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkCmdSetPerformanceMarkerINTEL( m_commandBuffer, reinterpret_cast<const VkPerformanceMarkerInfoINTEL *>( &markerInfo ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::CommandBuffer::setPerformanceMarkerINTEL" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result CommandBuffer::setPerformanceOverrideINTEL( const VULKAN_HPP_NAMESPACE::PerformanceOverrideInfoINTEL* pOverrideInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCmdSetPerformanceOverrideINTEL( m_commandBuffer, reinterpret_cast<const VkPerformanceOverrideInfoINTEL *>( pOverrideInfo ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type CommandBuffer::setPerformanceOverrideINTEL( const PerformanceOverrideInfoINTEL & overrideInfo, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkCmdSetPerformanceOverrideINTEL( m_commandBuffer, reinterpret_cast<const VkPerformanceOverrideInfoINTEL *>( &overrideInfo ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::CommandBuffer::setPerformanceOverrideINTEL" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result CommandBuffer::setPerformanceStreamMarkerINTEL( const VULKAN_HPP_NAMESPACE::PerformanceStreamMarkerInfoINTEL* pMarkerInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCmdSetPerformanceStreamMarkerINTEL( m_commandBuffer, reinterpret_cast<const VkPerformanceStreamMarkerInfoINTEL *>( pMarkerInfo ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type CommandBuffer::setPerformanceStreamMarkerINTEL( const PerformanceStreamMarkerInfoINTEL & markerInfo, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkCmdSetPerformanceStreamMarkerINTEL( m_commandBuffer, reinterpret_cast<const VkPerformanceStreamMarkerInfoINTEL *>( &markerInfo ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::CommandBuffer::setPerformanceStreamMarkerINTEL" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::setPrimitiveTopologyEXT( VULKAN_HPP_NAMESPACE::PrimitiveTopology primitiveTopology, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdSetPrimitiveTopologyEXT( m_commandBuffer, static_cast<VkPrimitiveTopology>( primitiveTopology ) );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::setRayTracingPipelineStackSizeKHR( uint32_t pipelineStackSize, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdSetRayTracingPipelineStackSizeKHR( m_commandBuffer, pipelineStackSize );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::setSampleLocationsEXT( const VULKAN_HPP_NAMESPACE::SampleLocationsInfoEXT* pSampleLocationsInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdSetSampleLocationsEXT( m_commandBuffer, reinterpret_cast<const VkSampleLocationsInfoEXT *>( pSampleLocationsInfo ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::setSampleLocationsEXT( const SampleLocationsInfoEXT & sampleLocationsInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdSetSampleLocationsEXT( m_commandBuffer, reinterpret_cast<const VkSampleLocationsInfoEXT *>( &sampleLocationsInfo ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::setScissor( uint32_t firstScissor, uint32_t scissorCount, const VULKAN_HPP_NAMESPACE::Rect2D* pScissors, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdSetScissor( m_commandBuffer, firstScissor, scissorCount, reinterpret_cast<const VkRect2D *>( pScissors ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::setScissor( uint32_t firstScissor, ArrayProxy<const VULKAN_HPP_NAMESPACE::Rect2D> const & scissors, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdSetScissor( m_commandBuffer, firstScissor, scissors.size(), reinterpret_cast<const VkRect2D *>( scissors.data() ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::setScissorWithCountEXT( uint32_t scissorCount, const VULKAN_HPP_NAMESPACE::Rect2D* pScissors, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdSetScissorWithCountEXT( m_commandBuffer, scissorCount, reinterpret_cast<const VkRect2D *>( pScissors ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::setScissorWithCountEXT( ArrayProxy<const VULKAN_HPP_NAMESPACE::Rect2D> const & scissors, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdSetScissorWithCountEXT( m_commandBuffer, scissors.size(), reinterpret_cast<const VkRect2D *>( scissors.data() ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::setStencilCompareMask( VULKAN_HPP_NAMESPACE::StencilFaceFlags faceMask, uint32_t compareMask, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdSetStencilCompareMask( m_commandBuffer, static_cast<VkStencilFaceFlags>( faceMask ), compareMask );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::setStencilOpEXT( VULKAN_HPP_NAMESPACE::StencilFaceFlags faceMask, VULKAN_HPP_NAMESPACE::StencilOp failOp, VULKAN_HPP_NAMESPACE::StencilOp passOp, VULKAN_HPP_NAMESPACE::StencilOp depthFailOp, VULKAN_HPP_NAMESPACE::CompareOp compareOp, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdSetStencilOpEXT( m_commandBuffer, static_cast<VkStencilFaceFlags>( faceMask ), static_cast<VkStencilOp>( failOp ), static_cast<VkStencilOp>( passOp ), static_cast<VkStencilOp>( depthFailOp ), static_cast<VkCompareOp>( compareOp ) );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::setStencilReference( VULKAN_HPP_NAMESPACE::StencilFaceFlags faceMask, uint32_t reference, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdSetStencilReference( m_commandBuffer, static_cast<VkStencilFaceFlags>( faceMask ), reference );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::setStencilTestEnableEXT( VULKAN_HPP_NAMESPACE::Bool32 stencilTestEnable, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdSetStencilTestEnableEXT( m_commandBuffer, static_cast<VkBool32>( stencilTestEnable ) );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::setStencilWriteMask( VULKAN_HPP_NAMESPACE::StencilFaceFlags faceMask, uint32_t writeMask, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdSetStencilWriteMask( m_commandBuffer, static_cast<VkStencilFaceFlags>( faceMask ), writeMask );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::setViewport( uint32_t firstViewport, uint32_t viewportCount, const VULKAN_HPP_NAMESPACE::Viewport* pViewports, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdSetViewport( m_commandBuffer, firstViewport, viewportCount, reinterpret_cast<const VkViewport *>( pViewports ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::setViewport( uint32_t firstViewport, ArrayProxy<const VULKAN_HPP_NAMESPACE::Viewport> const & viewports, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdSetViewport( m_commandBuffer, firstViewport, viewports.size(), reinterpret_cast<const VkViewport *>( viewports.data() ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::setViewportShadingRatePaletteNV( uint32_t firstViewport, uint32_t viewportCount, const VULKAN_HPP_NAMESPACE::ShadingRatePaletteNV* pShadingRatePalettes, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdSetViewportShadingRatePaletteNV( m_commandBuffer, firstViewport, viewportCount, reinterpret_cast<const VkShadingRatePaletteNV *>( pShadingRatePalettes ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::setViewportShadingRatePaletteNV( uint32_t firstViewport, ArrayProxy<const VULKAN_HPP_NAMESPACE::ShadingRatePaletteNV> const & shadingRatePalettes, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdSetViewportShadingRatePaletteNV( m_commandBuffer, firstViewport, shadingRatePalettes.size(), reinterpret_cast<const VkShadingRatePaletteNV *>( shadingRatePalettes.data() ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::setViewportWScalingNV( uint32_t firstViewport, uint32_t viewportCount, const VULKAN_HPP_NAMESPACE::ViewportWScalingNV* pViewportWScalings, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdSetViewportWScalingNV( m_commandBuffer, firstViewport, viewportCount, reinterpret_cast<const VkViewportWScalingNV *>( pViewportWScalings ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::setViewportWScalingNV( uint32_t firstViewport, ArrayProxy<const VULKAN_HPP_NAMESPACE::ViewportWScalingNV> const & viewportWScalings, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdSetViewportWScalingNV( m_commandBuffer, firstViewport, viewportWScalings.size(), reinterpret_cast<const VkViewportWScalingNV *>( viewportWScalings.data() ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::setViewportWithCountEXT( uint32_t viewportCount, const VULKAN_HPP_NAMESPACE::Viewport* pViewports, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdSetViewportWithCountEXT( m_commandBuffer, viewportCount, reinterpret_cast<const VkViewport *>( pViewports ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::setViewportWithCountEXT( ArrayProxy<const VULKAN_HPP_NAMESPACE::Viewport> const & viewports, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdSetViewportWithCountEXT( m_commandBuffer, viewports.size(), reinterpret_cast<const VkViewport *>( viewports.data() ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::traceRaysIndirectKHR( const VULKAN_HPP_NAMESPACE::StridedDeviceAddressRegionKHR* pRaygenShaderBindingTable, const VULKAN_HPP_NAMESPACE::StridedDeviceAddressRegionKHR* pMissShaderBindingTable, const VULKAN_HPP_NAMESPACE::StridedDeviceAddressRegionKHR* pHitShaderBindingTable, const VULKAN_HPP_NAMESPACE::StridedDeviceAddressRegionKHR* pCallableShaderBindingTable, VULKAN_HPP_NAMESPACE::DeviceAddress indirectDeviceAddress, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdTraceRaysIndirectKHR( m_commandBuffer, reinterpret_cast<const VkStridedDeviceAddressRegionKHR *>( pRaygenShaderBindingTable ), reinterpret_cast<const VkStridedDeviceAddressRegionKHR *>( pMissShaderBindingTable ), reinterpret_cast<const VkStridedDeviceAddressRegionKHR *>( pHitShaderBindingTable ), reinterpret_cast<const VkStridedDeviceAddressRegionKHR *>( pCallableShaderBindingTable ), static_cast<VkDeviceAddress>( indirectDeviceAddress ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::traceRaysIndirectKHR( const StridedDeviceAddressRegionKHR & raygenShaderBindingTable, const StridedDeviceAddressRegionKHR & missShaderBindingTable, const StridedDeviceAddressRegionKHR & hitShaderBindingTable, const StridedDeviceAddressRegionKHR & callableShaderBindingTable, VULKAN_HPP_NAMESPACE::DeviceAddress indirectDeviceAddress, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdTraceRaysIndirectKHR( m_commandBuffer, reinterpret_cast<const VkStridedDeviceAddressRegionKHR *>( &raygenShaderBindingTable ), reinterpret_cast<const VkStridedDeviceAddressRegionKHR *>( &missShaderBindingTable ), reinterpret_cast<const VkStridedDeviceAddressRegionKHR *>( &hitShaderBindingTable ), reinterpret_cast<const VkStridedDeviceAddressRegionKHR *>( &callableShaderBindingTable ), static_cast<VkDeviceAddress>( indirectDeviceAddress ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::traceRaysKHR( const VULKAN_HPP_NAMESPACE::StridedDeviceAddressRegionKHR* pRaygenShaderBindingTable, const VULKAN_HPP_NAMESPACE::StridedDeviceAddressRegionKHR* pMissShaderBindingTable, const VULKAN_HPP_NAMESPACE::StridedDeviceAddressRegionKHR* pHitShaderBindingTable, const VULKAN_HPP_NAMESPACE::StridedDeviceAddressRegionKHR* pCallableShaderBindingTable, uint32_t width, uint32_t height, uint32_t depth, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdTraceRaysKHR( m_commandBuffer, reinterpret_cast<const VkStridedDeviceAddressRegionKHR *>( pRaygenShaderBindingTable ), reinterpret_cast<const VkStridedDeviceAddressRegionKHR *>( pMissShaderBindingTable ), reinterpret_cast<const VkStridedDeviceAddressRegionKHR *>( pHitShaderBindingTable ), reinterpret_cast<const VkStridedDeviceAddressRegionKHR *>( pCallableShaderBindingTable ), width, height, depth );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::traceRaysKHR( const StridedDeviceAddressRegionKHR & raygenShaderBindingTable, const StridedDeviceAddressRegionKHR & missShaderBindingTable, const StridedDeviceAddressRegionKHR & hitShaderBindingTable, const StridedDeviceAddressRegionKHR & callableShaderBindingTable, uint32_t width, uint32_t height, uint32_t depth, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdTraceRaysKHR( m_commandBuffer, reinterpret_cast<const VkStridedDeviceAddressRegionKHR *>( &raygenShaderBindingTable ), reinterpret_cast<const VkStridedDeviceAddressRegionKHR *>( &missShaderBindingTable ), reinterpret_cast<const VkStridedDeviceAddressRegionKHR *>( &hitShaderBindingTable ), reinterpret_cast<const VkStridedDeviceAddressRegionKHR *>( &callableShaderBindingTable ), width, height, depth );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::traceRaysNV( VULKAN_HPP_NAMESPACE::Buffer raygenShaderBindingTableBuffer, VULKAN_HPP_NAMESPACE::DeviceSize raygenShaderBindingOffset, VULKAN_HPP_NAMESPACE::Buffer missShaderBindingTableBuffer, VULKAN_HPP_NAMESPACE::DeviceSize missShaderBindingOffset, VULKAN_HPP_NAMESPACE::DeviceSize missShaderBindingStride, VULKAN_HPP_NAMESPACE::Buffer hitShaderBindingTableBuffer, VULKAN_HPP_NAMESPACE::DeviceSize hitShaderBindingOffset, VULKAN_HPP_NAMESPACE::DeviceSize hitShaderBindingStride, VULKAN_HPP_NAMESPACE::Buffer callableShaderBindingTableBuffer, VULKAN_HPP_NAMESPACE::DeviceSize callableShaderBindingOffset, VULKAN_HPP_NAMESPACE::DeviceSize callableShaderBindingStride, uint32_t width, uint32_t height, uint32_t depth, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdTraceRaysNV( m_commandBuffer, static_cast<VkBuffer>( raygenShaderBindingTableBuffer ), static_cast<VkDeviceSize>( raygenShaderBindingOffset ), static_cast<VkBuffer>( missShaderBindingTableBuffer ), static_cast<VkDeviceSize>( missShaderBindingOffset ), static_cast<VkDeviceSize>( missShaderBindingStride ), static_cast<VkBuffer>( hitShaderBindingTableBuffer ), static_cast<VkDeviceSize>( hitShaderBindingOffset ), static_cast<VkDeviceSize>( hitShaderBindingStride ), static_cast<VkBuffer>( callableShaderBindingTableBuffer ), static_cast<VkDeviceSize>( callableShaderBindingOffset ), static_cast<VkDeviceSize>( callableShaderBindingStride ), width, height, depth );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::updateBuffer( VULKAN_HPP_NAMESPACE::Buffer dstBuffer, VULKAN_HPP_NAMESPACE::DeviceSize dstOffset, VULKAN_HPP_NAMESPACE::DeviceSize dataSize, const void* pData, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdUpdateBuffer( m_commandBuffer, static_cast<VkBuffer>( dstBuffer ), static_cast<VkDeviceSize>( dstOffset ), static_cast<VkDeviceSize>( dataSize ), pData );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename T, typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::updateBuffer( VULKAN_HPP_NAMESPACE::Buffer dstBuffer, VULKAN_HPP_NAMESPACE::DeviceSize dstOffset, ArrayProxy<const T> const & data, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdUpdateBuffer( m_commandBuffer, static_cast<VkBuffer>( dstBuffer ), static_cast<VkDeviceSize>( dstOffset ), data.size() * sizeof( T ), reinterpret_cast<const void *>( data.data() ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::waitEvents( uint32_t eventCount, const VULKAN_HPP_NAMESPACE::Event* pEvents, VULKAN_HPP_NAMESPACE::PipelineStageFlags srcStageMask, VULKAN_HPP_NAMESPACE::PipelineStageFlags dstStageMask, uint32_t memoryBarrierCount, const VULKAN_HPP_NAMESPACE::MemoryBarrier* pMemoryBarriers, uint32_t bufferMemoryBarrierCount, const VULKAN_HPP_NAMESPACE::BufferMemoryBarrier* pBufferMemoryBarriers, uint32_t imageMemoryBarrierCount, const VULKAN_HPP_NAMESPACE::ImageMemoryBarrier* pImageMemoryBarriers, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdWaitEvents( m_commandBuffer, eventCount, reinterpret_cast<const VkEvent *>( pEvents ), static_cast<VkPipelineStageFlags>( srcStageMask ), static_cast<VkPipelineStageFlags>( dstStageMask ), memoryBarrierCount, reinterpret_cast<const VkMemoryBarrier *>( pMemoryBarriers ), bufferMemoryBarrierCount, reinterpret_cast<const VkBufferMemoryBarrier *>( pBufferMemoryBarriers ), imageMemoryBarrierCount, reinterpret_cast<const VkImageMemoryBarrier *>( pImageMemoryBarriers ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::waitEvents( ArrayProxy<const VULKAN_HPP_NAMESPACE::Event> const & events, VULKAN_HPP_NAMESPACE::PipelineStageFlags srcStageMask, VULKAN_HPP_NAMESPACE::PipelineStageFlags dstStageMask, ArrayProxy<const VULKAN_HPP_NAMESPACE::MemoryBarrier> const & memoryBarriers, ArrayProxy<const VULKAN_HPP_NAMESPACE::BufferMemoryBarrier> const & bufferMemoryBarriers, ArrayProxy<const VULKAN_HPP_NAMESPACE::ImageMemoryBarrier> const & imageMemoryBarriers, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdWaitEvents( m_commandBuffer, events.size(), reinterpret_cast<const VkEvent *>( events.data() ), static_cast<VkPipelineStageFlags>( srcStageMask ), static_cast<VkPipelineStageFlags>( dstStageMask ), memoryBarriers.size(), reinterpret_cast<const VkMemoryBarrier *>( memoryBarriers.data() ), bufferMemoryBarriers.size(), reinterpret_cast<const VkBufferMemoryBarrier *>( bufferMemoryBarriers.data() ), imageMemoryBarriers.size(), reinterpret_cast<const VkImageMemoryBarrier *>( imageMemoryBarriers.data() ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::writeAccelerationStructuresPropertiesKHR( uint32_t accelerationStructureCount, const VULKAN_HPP_NAMESPACE::AccelerationStructureKHR* pAccelerationStructures, VULKAN_HPP_NAMESPACE::QueryType queryType, VULKAN_HPP_NAMESPACE::QueryPool queryPool, uint32_t firstQuery, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdWriteAccelerationStructuresPropertiesKHR( m_commandBuffer, accelerationStructureCount, reinterpret_cast<const VkAccelerationStructureKHR *>( pAccelerationStructures ), static_cast<VkQueryType>( queryType ), static_cast<VkQueryPool>( queryPool ), firstQuery );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::writeAccelerationStructuresPropertiesKHR( ArrayProxy<const VULKAN_HPP_NAMESPACE::AccelerationStructureKHR> const & accelerationStructures, VULKAN_HPP_NAMESPACE::QueryType queryType, VULKAN_HPP_NAMESPACE::QueryPool queryPool, uint32_t firstQuery, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdWriteAccelerationStructuresPropertiesKHR( m_commandBuffer, accelerationStructures.size(), reinterpret_cast<const VkAccelerationStructureKHR *>( accelerationStructures.data() ), static_cast<VkQueryType>( queryType ), static_cast<VkQueryPool>( queryPool ), firstQuery );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::writeAccelerationStructuresPropertiesNV( uint32_t accelerationStructureCount, const VULKAN_HPP_NAMESPACE::AccelerationStructureNV* pAccelerationStructures, VULKAN_HPP_NAMESPACE::QueryType queryType, VULKAN_HPP_NAMESPACE::QueryPool queryPool, uint32_t firstQuery, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdWriteAccelerationStructuresPropertiesNV( m_commandBuffer, accelerationStructureCount, reinterpret_cast<const VkAccelerationStructureNV *>( pAccelerationStructures ), static_cast<VkQueryType>( queryType ), static_cast<VkQueryPool>( queryPool ), firstQuery );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::writeAccelerationStructuresPropertiesNV( ArrayProxy<const VULKAN_HPP_NAMESPACE::AccelerationStructureNV> const & accelerationStructures, VULKAN_HPP_NAMESPACE::QueryType queryType, VULKAN_HPP_NAMESPACE::QueryPool queryPool, uint32_t firstQuery, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdWriteAccelerationStructuresPropertiesNV( m_commandBuffer, accelerationStructures.size(), reinterpret_cast<const VkAccelerationStructureNV *>( accelerationStructures.data() ), static_cast<VkQueryType>( queryType ), static_cast<VkQueryPool>( queryPool ), firstQuery );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::writeBufferMarkerAMD( VULKAN_HPP_NAMESPACE::PipelineStageFlagBits pipelineStage, VULKAN_HPP_NAMESPACE::Buffer dstBuffer, VULKAN_HPP_NAMESPACE::DeviceSize dstOffset, uint32_t marker, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdWriteBufferMarkerAMD( m_commandBuffer, static_cast<VkPipelineStageFlagBits>( pipelineStage ), static_cast<VkBuffer>( dstBuffer ), static_cast<VkDeviceSize>( dstOffset ), marker );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void CommandBuffer::writeTimestamp( VULKAN_HPP_NAMESPACE::PipelineStageFlagBits pipelineStage, VULKAN_HPP_NAMESPACE::QueryPool queryPool, uint32_t query, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkCmdWriteTimestamp( m_commandBuffer, static_cast<VkPipelineStageFlagBits>( pipelineStage ), static_cast<VkQueryPool>( queryPool ), query );
- }
-
-
-#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result CommandBuffer::end( Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkEndCommandBuffer( m_commandBuffer ) );
- }
-#else
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type CommandBuffer::end( Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkEndCommandBuffer( m_commandBuffer ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::CommandBuffer::end" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-
-#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result CommandBuffer::reset( VULKAN_HPP_NAMESPACE::CommandBufferResetFlags flags, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkResetCommandBuffer( m_commandBuffer, static_cast<VkCommandBufferResetFlags>( flags ) ) );
- }
-#else
- template <typename Dispatch>
- VULKAN_HPP_INLINE typename ResultValueType<void>::type CommandBuffer::reset( VULKAN_HPP_NAMESPACE::CommandBufferResetFlags flags, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkResetCommandBuffer( m_commandBuffer, static_cast<VkCommandBufferResetFlags>( flags ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::CommandBuffer::reset" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
-#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::acquireFullScreenExclusiveModeEXT( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkAcquireFullScreenExclusiveModeEXT( m_device, static_cast<VkSwapchainKHR>( swapchain ) ) );
- }
-#else
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type Device::acquireFullScreenExclusiveModeEXT( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkAcquireFullScreenExclusiveModeEXT( m_device, static_cast<VkSwapchainKHR>( swapchain ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::acquireFullScreenExclusiveModeEXT" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::acquireNextImage2KHR( const VULKAN_HPP_NAMESPACE::AcquireNextImageInfoKHR* pAcquireInfo, uint32_t* pImageIndex, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkAcquireNextImage2KHR( m_device, reinterpret_cast<const VkAcquireNextImageInfoKHR *>( pAcquireInfo ), pImageIndex ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE ResultValue<uint32_t> Device::acquireNextImage2KHR( const AcquireNextImageInfoKHR & acquireInfo, Dispatch const & d ) const
- {
- uint32_t imageIndex;
- Result result = static_cast<Result>( d.vkAcquireNextImage2KHR( m_device, reinterpret_cast<const VkAcquireNextImageInfoKHR *>( &acquireInfo ), &imageIndex ) );
- return createResultValue( result, imageIndex, VULKAN_HPP_NAMESPACE_STRING "::Device::acquireNextImage2KHR", { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::eTimeout, VULKAN_HPP_NAMESPACE::Result::eNotReady, VULKAN_HPP_NAMESPACE::Result::eSuboptimalKHR } );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::acquireNextImageKHR( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain, uint64_t timeout, VULKAN_HPP_NAMESPACE::Semaphore semaphore, VULKAN_HPP_NAMESPACE::Fence fence, uint32_t* pImageIndex, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkAcquireNextImageKHR( m_device, static_cast<VkSwapchainKHR>( swapchain ), timeout, static_cast<VkSemaphore>( semaphore ), static_cast<VkFence>( fence ), pImageIndex ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE ResultValue<uint32_t> Device::acquireNextImageKHR( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain, uint64_t timeout, VULKAN_HPP_NAMESPACE::Semaphore semaphore, VULKAN_HPP_NAMESPACE::Fence fence, Dispatch const & d ) const
- {
- uint32_t imageIndex;
- Result result = static_cast<Result>( d.vkAcquireNextImageKHR( m_device, static_cast<VkSwapchainKHR>( swapchain ), timeout, static_cast<VkSemaphore>( semaphore ), static_cast<VkFence>( fence ), &imageIndex ) );
- return createResultValue( result, imageIndex, VULKAN_HPP_NAMESPACE_STRING "::Device::acquireNextImageKHR", { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::eTimeout, VULKAN_HPP_NAMESPACE::Result::eNotReady, VULKAN_HPP_NAMESPACE::Result::eSuboptimalKHR } );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::acquirePerformanceConfigurationINTEL( const VULKAN_HPP_NAMESPACE::PerformanceConfigurationAcquireInfoINTEL* pAcquireInfo, VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL* pConfiguration, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkAcquirePerformanceConfigurationINTEL( m_device, reinterpret_cast<const VkPerformanceConfigurationAcquireInfoINTEL *>( pAcquireInfo ), reinterpret_cast< VkPerformanceConfigurationINTEL *>( pConfiguration ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL>::type Device::acquirePerformanceConfigurationINTEL( const PerformanceConfigurationAcquireInfoINTEL & acquireInfo, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL configuration;
- Result result = static_cast<Result>( d.vkAcquirePerformanceConfigurationINTEL( m_device, reinterpret_cast<const VkPerformanceConfigurationAcquireInfoINTEL *>( &acquireInfo ), reinterpret_cast<VkPerformanceConfigurationINTEL *>( &configuration ) ) );
- return createResultValue( result, configuration, VULKAN_HPP_NAMESPACE_STRING "::Device::acquirePerformanceConfigurationINTEL" );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL, Dispatch>>::type Device::acquirePerformanceConfigurationINTELUnique( const PerformanceConfigurationAcquireInfoINTEL & acquireInfo, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL configuration;
- Result result = static_cast<Result>( d.vkAcquirePerformanceConfigurationINTEL( m_device, reinterpret_cast<const VkPerformanceConfigurationAcquireInfoINTEL *>( &acquireInfo ), reinterpret_cast<VkPerformanceConfigurationINTEL *>( &configuration ) ) );
- ObjectRelease<Device, Dispatch> deleter( *this, d );
- return createResultValue<VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL, Dispatch>( result, configuration, VULKAN_HPP_NAMESPACE_STRING "::Device::acquirePerformanceConfigurationINTELUnique", deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::acquireProfilingLockKHR( const VULKAN_HPP_NAMESPACE::AcquireProfilingLockInfoKHR* pInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkAcquireProfilingLockKHR( m_device, reinterpret_cast<const VkAcquireProfilingLockInfoKHR *>( pInfo ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type Device::acquireProfilingLockKHR( const AcquireProfilingLockInfoKHR & info, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkAcquireProfilingLockKHR( m_device, reinterpret_cast<const VkAcquireProfilingLockInfoKHR *>( &info ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::acquireProfilingLockKHR" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::allocateCommandBuffers( const VULKAN_HPP_NAMESPACE::CommandBufferAllocateInfo* pAllocateInfo, VULKAN_HPP_NAMESPACE::CommandBuffer* pCommandBuffers, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkAllocateCommandBuffers( m_device, reinterpret_cast<const VkCommandBufferAllocateInfo *>( pAllocateInfo ), reinterpret_cast< VkCommandBuffer *>( pCommandBuffers ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename CommandBufferAllocator, typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<std::vector<CommandBuffer, CommandBufferAllocator>>::type Device::allocateCommandBuffers( const CommandBufferAllocateInfo & allocateInfo, Dispatch const & d ) const
- {
- std::vector<CommandBuffer, CommandBufferAllocator> commandBuffers( allocateInfo.commandBufferCount );
- Result result = static_cast<Result>( d.vkAllocateCommandBuffers( m_device, reinterpret_cast<const VkCommandBufferAllocateInfo *>( &allocateInfo ), reinterpret_cast<VkCommandBuffer *>( commandBuffers.data() ) ) );
- return createResultValue( result, commandBuffers, VULKAN_HPP_NAMESPACE_STRING "::Device::allocateCommandBuffers" );
- }
-
- template <typename CommandBufferAllocator, typename Dispatch, typename B, typename std::enable_if<std::is_same<typename B::value_type, CommandBuffer>::value, int>::type >
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<std::vector<CommandBuffer, CommandBufferAllocator>>::type Device::allocateCommandBuffers( const CommandBufferAllocateInfo & allocateInfo, CommandBufferAllocator & commandBufferAllocator, Dispatch const & d ) const
- {
- std::vector<CommandBuffer, CommandBufferAllocator> commandBuffers( allocateInfo.commandBufferCount, commandBufferAllocator );
- Result result = static_cast<Result>( d.vkAllocateCommandBuffers( m_device, reinterpret_cast<const VkCommandBufferAllocateInfo *>( &allocateInfo ), reinterpret_cast<VkCommandBuffer *>( commandBuffers.data() ) ) );
- return createResultValue( result, commandBuffers, VULKAN_HPP_NAMESPACE_STRING "::Device::allocateCommandBuffers" );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch, typename CommandBufferAllocator>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<std::vector<UniqueHandle<CommandBuffer, Dispatch>, CommandBufferAllocator>>::type Device::allocateCommandBuffersUnique( const CommandBufferAllocateInfo & allocateInfo, Dispatch const & d ) const
- {
- std::vector<UniqueHandle<CommandBuffer, Dispatch>, CommandBufferAllocator> uniqueCommandBuffers;
- std::vector<CommandBuffer> commandBuffers( allocateInfo.commandBufferCount );
- Result result = static_cast<Result>( d.vkAllocateCommandBuffers( m_device, reinterpret_cast<const VkCommandBufferAllocateInfo *>( &allocateInfo ), reinterpret_cast<VkCommandBuffer *>( commandBuffers.data() ) ) );
- if ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess )
- {
- uniqueCommandBuffers.reserve( allocateInfo.commandBufferCount );
- PoolFree<Device, CommandPool, Dispatch> deleter( *this, allocateInfo.commandPool, d );
- for ( size_t i=0; i < allocateInfo.commandBufferCount; i++ )
- {
- uniqueCommandBuffers.push_back( UniqueHandle<CommandBuffer, Dispatch>( commandBuffers[i], deleter ) );
- }
- }
- return createResultValue( result, std::move( uniqueCommandBuffers ), VULKAN_HPP_NAMESPACE_STRING "::Device::allocateCommandBuffersUnique" );
- }
-
- template <typename Dispatch, typename CommandBufferAllocator, typename B, typename std::enable_if<std::is_same<typename B::value_type, UniqueHandle<CommandBuffer, Dispatch>>::value, int>::type >
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<std::vector<UniqueHandle<CommandBuffer, Dispatch>, CommandBufferAllocator>>::type Device::allocateCommandBuffersUnique( const CommandBufferAllocateInfo & allocateInfo, CommandBufferAllocator & commandBufferAllocator, Dispatch const & d ) const
- {
- std::vector<UniqueHandle<CommandBuffer, Dispatch>, CommandBufferAllocator> uniqueCommandBuffers( commandBufferAllocator );
- std::vector<CommandBuffer> commandBuffers( allocateInfo.commandBufferCount );
- Result result = static_cast<Result>( d.vkAllocateCommandBuffers( m_device, reinterpret_cast<const VkCommandBufferAllocateInfo *>( &allocateInfo ), reinterpret_cast<VkCommandBuffer *>( commandBuffers.data() ) ) );
- if ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess )
- {
- uniqueCommandBuffers.reserve( allocateInfo.commandBufferCount );
- PoolFree<Device, CommandPool, Dispatch> deleter( *this, allocateInfo.commandPool, d );
- for ( size_t i=0; i < allocateInfo.commandBufferCount; i++ )
- {
- uniqueCommandBuffers.push_back( UniqueHandle<CommandBuffer, Dispatch>( commandBuffers[i], deleter ) );
- }
- }
- return createResultValue( result, std::move( uniqueCommandBuffers ), VULKAN_HPP_NAMESPACE_STRING "::Device::allocateCommandBuffersUnique" );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::allocateDescriptorSets( const VULKAN_HPP_NAMESPACE::DescriptorSetAllocateInfo* pAllocateInfo, VULKAN_HPP_NAMESPACE::DescriptorSet* pDescriptorSets, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkAllocateDescriptorSets( m_device, reinterpret_cast<const VkDescriptorSetAllocateInfo *>( pAllocateInfo ), reinterpret_cast< VkDescriptorSet *>( pDescriptorSets ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename DescriptorSetAllocator, typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<std::vector<DescriptorSet, DescriptorSetAllocator>>::type Device::allocateDescriptorSets( const DescriptorSetAllocateInfo & allocateInfo, Dispatch const & d ) const
- {
- std::vector<DescriptorSet, DescriptorSetAllocator> descriptorSets( allocateInfo.descriptorSetCount );
- Result result = static_cast<Result>( d.vkAllocateDescriptorSets( m_device, reinterpret_cast<const VkDescriptorSetAllocateInfo *>( &allocateInfo ), reinterpret_cast<VkDescriptorSet *>( descriptorSets.data() ) ) );
- return createResultValue( result, descriptorSets, VULKAN_HPP_NAMESPACE_STRING "::Device::allocateDescriptorSets" );
- }
-
- template <typename DescriptorSetAllocator, typename Dispatch, typename B, typename std::enable_if<std::is_same<typename B::value_type, DescriptorSet>::value, int>::type >
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<std::vector<DescriptorSet, DescriptorSetAllocator>>::type Device::allocateDescriptorSets( const DescriptorSetAllocateInfo & allocateInfo, DescriptorSetAllocator & descriptorSetAllocator, Dispatch const & d ) const
- {
- std::vector<DescriptorSet, DescriptorSetAllocator> descriptorSets( allocateInfo.descriptorSetCount, descriptorSetAllocator );
- Result result = static_cast<Result>( d.vkAllocateDescriptorSets( m_device, reinterpret_cast<const VkDescriptorSetAllocateInfo *>( &allocateInfo ), reinterpret_cast<VkDescriptorSet *>( descriptorSets.data() ) ) );
- return createResultValue( result, descriptorSets, VULKAN_HPP_NAMESPACE_STRING "::Device::allocateDescriptorSets" );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch, typename DescriptorSetAllocator>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<std::vector<UniqueHandle<DescriptorSet, Dispatch>, DescriptorSetAllocator>>::type Device::allocateDescriptorSetsUnique( const DescriptorSetAllocateInfo & allocateInfo, Dispatch const & d ) const
- {
- std::vector<UniqueHandle<DescriptorSet, Dispatch>, DescriptorSetAllocator> uniqueDescriptorSets;
- std::vector<DescriptorSet> descriptorSets( allocateInfo.descriptorSetCount );
- Result result = static_cast<Result>( d.vkAllocateDescriptorSets( m_device, reinterpret_cast<const VkDescriptorSetAllocateInfo *>( &allocateInfo ), reinterpret_cast<VkDescriptorSet *>( descriptorSets.data() ) ) );
- if ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess )
- {
- uniqueDescriptorSets.reserve( allocateInfo.descriptorSetCount );
- PoolFree<Device, DescriptorPool, Dispatch> deleter( *this, allocateInfo.descriptorPool, d );
- for ( size_t i=0; i < allocateInfo.descriptorSetCount; i++ )
- {
- uniqueDescriptorSets.push_back( UniqueHandle<DescriptorSet, Dispatch>( descriptorSets[i], deleter ) );
- }
- }
- return createResultValue( result, std::move( uniqueDescriptorSets ), VULKAN_HPP_NAMESPACE_STRING "::Device::allocateDescriptorSetsUnique" );
- }
-
- template <typename Dispatch, typename DescriptorSetAllocator, typename B, typename std::enable_if<std::is_same<typename B::value_type, UniqueHandle<DescriptorSet, Dispatch>>::value, int>::type >
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<std::vector<UniqueHandle<DescriptorSet, Dispatch>, DescriptorSetAllocator>>::type Device::allocateDescriptorSetsUnique( const DescriptorSetAllocateInfo & allocateInfo, DescriptorSetAllocator & descriptorSetAllocator, Dispatch const & d ) const
- {
- std::vector<UniqueHandle<DescriptorSet, Dispatch>, DescriptorSetAllocator> uniqueDescriptorSets( descriptorSetAllocator );
- std::vector<DescriptorSet> descriptorSets( allocateInfo.descriptorSetCount );
- Result result = static_cast<Result>( d.vkAllocateDescriptorSets( m_device, reinterpret_cast<const VkDescriptorSetAllocateInfo *>( &allocateInfo ), reinterpret_cast<VkDescriptorSet *>( descriptorSets.data() ) ) );
- if ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess )
- {
- uniqueDescriptorSets.reserve( allocateInfo.descriptorSetCount );
- PoolFree<Device, DescriptorPool, Dispatch> deleter( *this, allocateInfo.descriptorPool, d );
- for ( size_t i=0; i < allocateInfo.descriptorSetCount; i++ )
- {
- uniqueDescriptorSets.push_back( UniqueHandle<DescriptorSet, Dispatch>( descriptorSets[i], deleter ) );
- }
- }
- return createResultValue( result, std::move( uniqueDescriptorSets ), VULKAN_HPP_NAMESPACE_STRING "::Device::allocateDescriptorSetsUnique" );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::allocateMemory( const VULKAN_HPP_NAMESPACE::MemoryAllocateInfo* pAllocateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::DeviceMemory* pMemory, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkAllocateMemory( m_device, reinterpret_cast<const VkMemoryAllocateInfo *>( pAllocateInfo ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ), reinterpret_cast< VkDeviceMemory *>( pMemory ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::DeviceMemory>::type Device::allocateMemory( const MemoryAllocateInfo & allocateInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::DeviceMemory memory;
- Result result = static_cast<Result>( d.vkAllocateMemory( m_device, reinterpret_cast<const VkMemoryAllocateInfo *>( &allocateInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkDeviceMemory *>( &memory ) ) );
- return createResultValue( result, memory, VULKAN_HPP_NAMESPACE_STRING "::Device::allocateMemory" );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::DeviceMemory, Dispatch>>::type Device::allocateMemoryUnique( const MemoryAllocateInfo & allocateInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::DeviceMemory memory;
- Result result = static_cast<Result>( d.vkAllocateMemory( m_device, reinterpret_cast<const VkMemoryAllocateInfo *>( &allocateInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkDeviceMemory *>( &memory ) ) );
- ObjectFree<Device, Dispatch> deleter( *this, allocator, d );
- return createResultValue<VULKAN_HPP_NAMESPACE::DeviceMemory, Dispatch>( result, memory, VULKAN_HPP_NAMESPACE_STRING "::Device::allocateMemoryUnique", deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::bindAccelerationStructureMemoryNV( uint32_t bindInfoCount, const VULKAN_HPP_NAMESPACE::BindAccelerationStructureMemoryInfoNV* pBindInfos, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkBindAccelerationStructureMemoryNV( m_device, bindInfoCount, reinterpret_cast<const VkBindAccelerationStructureMemoryInfoNV *>( pBindInfos ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type Device::bindAccelerationStructureMemoryNV( ArrayProxy<const VULKAN_HPP_NAMESPACE::BindAccelerationStructureMemoryInfoNV> const & bindInfos, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkBindAccelerationStructureMemoryNV( m_device, bindInfos.size(), reinterpret_cast<const VkBindAccelerationStructureMemoryInfoNV *>( bindInfos.data() ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::bindAccelerationStructureMemoryNV" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::bindBufferMemory( VULKAN_HPP_NAMESPACE::Buffer buffer, VULKAN_HPP_NAMESPACE::DeviceMemory memory, VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkBindBufferMemory( m_device, static_cast<VkBuffer>( buffer ), static_cast<VkDeviceMemory>( memory ), static_cast<VkDeviceSize>( memoryOffset ) ) );
- }
-#else
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type Device::bindBufferMemory( VULKAN_HPP_NAMESPACE::Buffer buffer, VULKAN_HPP_NAMESPACE::DeviceMemory memory, VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkBindBufferMemory( m_device, static_cast<VkBuffer>( buffer ), static_cast<VkDeviceMemory>( memory ), static_cast<VkDeviceSize>( memoryOffset ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::bindBufferMemory" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::bindBufferMemory2( uint32_t bindInfoCount, const VULKAN_HPP_NAMESPACE::BindBufferMemoryInfo* pBindInfos, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkBindBufferMemory2( m_device, bindInfoCount, reinterpret_cast<const VkBindBufferMemoryInfo *>( pBindInfos ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type Device::bindBufferMemory2( ArrayProxy<const VULKAN_HPP_NAMESPACE::BindBufferMemoryInfo> const & bindInfos, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkBindBufferMemory2( m_device, bindInfos.size(), reinterpret_cast<const VkBindBufferMemoryInfo *>( bindInfos.data() ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::bindBufferMemory2" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::bindBufferMemory2KHR( uint32_t bindInfoCount, const VULKAN_HPP_NAMESPACE::BindBufferMemoryInfo* pBindInfos, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkBindBufferMemory2KHR( m_device, bindInfoCount, reinterpret_cast<const VkBindBufferMemoryInfo *>( pBindInfos ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type Device::bindBufferMemory2KHR( ArrayProxy<const VULKAN_HPP_NAMESPACE::BindBufferMemoryInfo> const & bindInfos, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkBindBufferMemory2KHR( m_device, bindInfos.size(), reinterpret_cast<const VkBindBufferMemoryInfo *>( bindInfos.data() ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::bindBufferMemory2KHR" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::bindImageMemory( VULKAN_HPP_NAMESPACE::Image image, VULKAN_HPP_NAMESPACE::DeviceMemory memory, VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkBindImageMemory( m_device, static_cast<VkImage>( image ), static_cast<VkDeviceMemory>( memory ), static_cast<VkDeviceSize>( memoryOffset ) ) );
- }
-#else
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type Device::bindImageMemory( VULKAN_HPP_NAMESPACE::Image image, VULKAN_HPP_NAMESPACE::DeviceMemory memory, VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkBindImageMemory( m_device, static_cast<VkImage>( image ), static_cast<VkDeviceMemory>( memory ), static_cast<VkDeviceSize>( memoryOffset ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::bindImageMemory" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::bindImageMemory2( uint32_t bindInfoCount, const VULKAN_HPP_NAMESPACE::BindImageMemoryInfo* pBindInfos, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkBindImageMemory2( m_device, bindInfoCount, reinterpret_cast<const VkBindImageMemoryInfo *>( pBindInfos ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type Device::bindImageMemory2( ArrayProxy<const VULKAN_HPP_NAMESPACE::BindImageMemoryInfo> const & bindInfos, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkBindImageMemory2( m_device, bindInfos.size(), reinterpret_cast<const VkBindImageMemoryInfo *>( bindInfos.data() ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::bindImageMemory2" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::bindImageMemory2KHR( uint32_t bindInfoCount, const VULKAN_HPP_NAMESPACE::BindImageMemoryInfo* pBindInfos, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkBindImageMemory2KHR( m_device, bindInfoCount, reinterpret_cast<const VkBindImageMemoryInfo *>( pBindInfos ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type Device::bindImageMemory2KHR( ArrayProxy<const VULKAN_HPP_NAMESPACE::BindImageMemoryInfo> const & bindInfos, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkBindImageMemory2KHR( m_device, bindInfos.size(), reinterpret_cast<const VkBindImageMemoryInfo *>( bindInfos.data() ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::bindImageMemory2KHR" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::buildAccelerationStructuresKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation, uint32_t infoCount, const VULKAN_HPP_NAMESPACE::AccelerationStructureBuildGeometryInfoKHR* pInfos, const VULKAN_HPP_NAMESPACE::AccelerationStructureBuildRangeInfoKHR* const * ppBuildRangeInfos, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkBuildAccelerationStructuresKHR( m_device, static_cast<VkDeferredOperationKHR>( deferredOperation ), infoCount, reinterpret_cast<const VkAccelerationStructureBuildGeometryInfoKHR *>( pInfos ), reinterpret_cast<const VkAccelerationStructureBuildRangeInfoKHR * const *>( ppBuildRangeInfos ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE Result Device::buildAccelerationStructuresKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation, ArrayProxy<const VULKAN_HPP_NAMESPACE::AccelerationStructureBuildGeometryInfoKHR> const & infos, ArrayProxy<const VULKAN_HPP_NAMESPACE::AccelerationStructureBuildRangeInfoKHR* const > const & pBuildRangeInfos, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS
- {
-#ifdef VULKAN_HPP_NO_EXCEPTIONS
- VULKAN_HPP_ASSERT( infos.size() == pBuildRangeInfos.size() );
-#else
- if ( infos.size() != pBuildRangeInfos.size() )
- {
- throw LogicError( VULKAN_HPP_NAMESPACE_STRING "::Device::buildAccelerationStructuresKHR: infos.size() != pBuildRangeInfos.size()" );
- }
-#endif /*VULKAN_HPP_NO_EXCEPTIONS*/
-
- Result result = static_cast<Result>( d.vkBuildAccelerationStructuresKHR( m_device, static_cast<VkDeferredOperationKHR>( deferredOperation ), infos.size(), reinterpret_cast<const VkAccelerationStructureBuildGeometryInfoKHR *>( infos.data() ), reinterpret_cast<const VkAccelerationStructureBuildRangeInfoKHR * const *>( pBuildRangeInfos.data() ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::buildAccelerationStructuresKHR", { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::eOperationDeferredKHR, VULKAN_HPP_NAMESPACE::Result::eOperationNotDeferredKHR } );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::compileDeferredNV( VULKAN_HPP_NAMESPACE::Pipeline pipeline, uint32_t shader, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCompileDeferredNV( m_device, static_cast<VkPipeline>( pipeline ), shader ) );
- }
-#else
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type Device::compileDeferredNV( VULKAN_HPP_NAMESPACE::Pipeline pipeline, uint32_t shader, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkCompileDeferredNV( m_device, static_cast<VkPipeline>( pipeline ), shader ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::compileDeferredNV" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::copyAccelerationStructureKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation, const VULKAN_HPP_NAMESPACE::CopyAccelerationStructureInfoKHR* pInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCopyAccelerationStructureKHR( m_device, static_cast<VkDeferredOperationKHR>( deferredOperation ), reinterpret_cast<const VkCopyAccelerationStructureInfoKHR *>( pInfo ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::copyAccelerationStructureKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation, const CopyAccelerationStructureInfoKHR & info, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkCopyAccelerationStructureKHR( m_device, static_cast<VkDeferredOperationKHR>( deferredOperation ), reinterpret_cast<const VkCopyAccelerationStructureInfoKHR *>( &info ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::copyAccelerationStructureKHR", { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::eOperationDeferredKHR, VULKAN_HPP_NAMESPACE::Result::eOperationNotDeferredKHR } );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::copyAccelerationStructureToMemoryKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation, const VULKAN_HPP_NAMESPACE::CopyAccelerationStructureToMemoryInfoKHR* pInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCopyAccelerationStructureToMemoryKHR( m_device, static_cast<VkDeferredOperationKHR>( deferredOperation ), reinterpret_cast<const VkCopyAccelerationStructureToMemoryInfoKHR *>( pInfo ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::copyAccelerationStructureToMemoryKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation, const CopyAccelerationStructureToMemoryInfoKHR & info, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkCopyAccelerationStructureToMemoryKHR( m_device, static_cast<VkDeferredOperationKHR>( deferredOperation ), reinterpret_cast<const VkCopyAccelerationStructureToMemoryInfoKHR *>( &info ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::copyAccelerationStructureToMemoryKHR", { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::eOperationDeferredKHR, VULKAN_HPP_NAMESPACE::Result::eOperationNotDeferredKHR } );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::copyMemoryToAccelerationStructureKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation, const VULKAN_HPP_NAMESPACE::CopyMemoryToAccelerationStructureInfoKHR* pInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCopyMemoryToAccelerationStructureKHR( m_device, static_cast<VkDeferredOperationKHR>( deferredOperation ), reinterpret_cast<const VkCopyMemoryToAccelerationStructureInfoKHR *>( pInfo ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::copyMemoryToAccelerationStructureKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation, const CopyMemoryToAccelerationStructureInfoKHR & info, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkCopyMemoryToAccelerationStructureKHR( m_device, static_cast<VkDeferredOperationKHR>( deferredOperation ), reinterpret_cast<const VkCopyMemoryToAccelerationStructureInfoKHR *>( &info ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::copyMemoryToAccelerationStructureKHR", { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::eOperationDeferredKHR, VULKAN_HPP_NAMESPACE::Result::eOperationNotDeferredKHR } );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::createAccelerationStructureKHR( const VULKAN_HPP_NAMESPACE::AccelerationStructureCreateInfoKHR* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::AccelerationStructureKHR* pAccelerationStructure, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCreateAccelerationStructureKHR( m_device, reinterpret_cast<const VkAccelerationStructureCreateInfoKHR *>( pCreateInfo ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ), reinterpret_cast< VkAccelerationStructureKHR *>( pAccelerationStructure ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::AccelerationStructureKHR>::type Device::createAccelerationStructureKHR( const AccelerationStructureCreateInfoKHR & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::AccelerationStructureKHR accelerationStructure;
- Result result = static_cast<Result>( d.vkCreateAccelerationStructureKHR( m_device, reinterpret_cast<const VkAccelerationStructureCreateInfoKHR *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkAccelerationStructureKHR *>( &accelerationStructure ) ) );
- return createResultValue( result, accelerationStructure, VULKAN_HPP_NAMESPACE_STRING "::Device::createAccelerationStructureKHR" );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::AccelerationStructureKHR, Dispatch>>::type Device::createAccelerationStructureKHRUnique( const AccelerationStructureCreateInfoKHR & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::AccelerationStructureKHR accelerationStructure;
- Result result = static_cast<Result>( d.vkCreateAccelerationStructureKHR( m_device, reinterpret_cast<const VkAccelerationStructureCreateInfoKHR *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkAccelerationStructureKHR *>( &accelerationStructure ) ) );
- ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
- return createResultValue<VULKAN_HPP_NAMESPACE::AccelerationStructureKHR, Dispatch>( result, accelerationStructure, VULKAN_HPP_NAMESPACE_STRING "::Device::createAccelerationStructureKHRUnique", deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::createAccelerationStructureNV( const VULKAN_HPP_NAMESPACE::AccelerationStructureCreateInfoNV* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::AccelerationStructureNV* pAccelerationStructure, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCreateAccelerationStructureNV( m_device, reinterpret_cast<const VkAccelerationStructureCreateInfoNV *>( pCreateInfo ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ), reinterpret_cast< VkAccelerationStructureNV *>( pAccelerationStructure ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::AccelerationStructureNV>::type Device::createAccelerationStructureNV( const AccelerationStructureCreateInfoNV & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::AccelerationStructureNV accelerationStructure;
- Result result = static_cast<Result>( d.vkCreateAccelerationStructureNV( m_device, reinterpret_cast<const VkAccelerationStructureCreateInfoNV *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkAccelerationStructureNV *>( &accelerationStructure ) ) );
- return createResultValue( result, accelerationStructure, VULKAN_HPP_NAMESPACE_STRING "::Device::createAccelerationStructureNV" );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch>
- VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::AccelerationStructureNV, Dispatch>>::type Device::createAccelerationStructureNVUnique( const AccelerationStructureCreateInfoNV & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::AccelerationStructureNV accelerationStructure;
- Result result = static_cast<Result>( d.vkCreateAccelerationStructureNV( m_device, reinterpret_cast<const VkAccelerationStructureCreateInfoNV *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkAccelerationStructureNV *>( &accelerationStructure ) ) );
- ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
- return createResultValue<VULKAN_HPP_NAMESPACE::AccelerationStructureNV, Dispatch>( result, accelerationStructure, VULKAN_HPP_NAMESPACE_STRING "::Device::createAccelerationStructureNVUnique", deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::createBuffer( const VULKAN_HPP_NAMESPACE::BufferCreateInfo* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::Buffer* pBuffer, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCreateBuffer( m_device, reinterpret_cast<const VkBufferCreateInfo *>( pCreateInfo ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ), reinterpret_cast< VkBuffer *>( pBuffer ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::Buffer>::type Device::createBuffer( const BufferCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::Buffer buffer;
- Result result = static_cast<Result>( d.vkCreateBuffer( m_device, reinterpret_cast<const VkBufferCreateInfo *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkBuffer *>( &buffer ) ) );
- return createResultValue( result, buffer, VULKAN_HPP_NAMESPACE_STRING "::Device::createBuffer" );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::Buffer, Dispatch>>::type Device::createBufferUnique( const BufferCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::Buffer buffer;
- Result result = static_cast<Result>( d.vkCreateBuffer( m_device, reinterpret_cast<const VkBufferCreateInfo *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkBuffer *>( &buffer ) ) );
- ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
- return createResultValue<VULKAN_HPP_NAMESPACE::Buffer, Dispatch>( result, buffer, VULKAN_HPP_NAMESPACE_STRING "::Device::createBufferUnique", deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::createBufferView( const VULKAN_HPP_NAMESPACE::BufferViewCreateInfo* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::BufferView* pView, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCreateBufferView( m_device, reinterpret_cast<const VkBufferViewCreateInfo *>( pCreateInfo ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ), reinterpret_cast< VkBufferView *>( pView ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::BufferView>::type Device::createBufferView( const BufferViewCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::BufferView view;
- Result result = static_cast<Result>( d.vkCreateBufferView( m_device, reinterpret_cast<const VkBufferViewCreateInfo *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkBufferView *>( &view ) ) );
- return createResultValue( result, view, VULKAN_HPP_NAMESPACE_STRING "::Device::createBufferView" );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::BufferView, Dispatch>>::type Device::createBufferViewUnique( const BufferViewCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::BufferView view;
- Result result = static_cast<Result>( d.vkCreateBufferView( m_device, reinterpret_cast<const VkBufferViewCreateInfo *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkBufferView *>( &view ) ) );
- ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
- return createResultValue<VULKAN_HPP_NAMESPACE::BufferView, Dispatch>( result, view, VULKAN_HPP_NAMESPACE_STRING "::Device::createBufferViewUnique", deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::createCommandPool( const VULKAN_HPP_NAMESPACE::CommandPoolCreateInfo* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::CommandPool* pCommandPool, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCreateCommandPool( m_device, reinterpret_cast<const VkCommandPoolCreateInfo *>( pCreateInfo ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ), reinterpret_cast< VkCommandPool *>( pCommandPool ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::CommandPool>::type Device::createCommandPool( const CommandPoolCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::CommandPool commandPool;
- Result result = static_cast<Result>( d.vkCreateCommandPool( m_device, reinterpret_cast<const VkCommandPoolCreateInfo *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkCommandPool *>( &commandPool ) ) );
- return createResultValue( result, commandPool, VULKAN_HPP_NAMESPACE_STRING "::Device::createCommandPool" );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::CommandPool, Dispatch>>::type Device::createCommandPoolUnique( const CommandPoolCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::CommandPool commandPool;
- Result result = static_cast<Result>( d.vkCreateCommandPool( m_device, reinterpret_cast<const VkCommandPoolCreateInfo *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkCommandPool *>( &commandPool ) ) );
- ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
- return createResultValue<VULKAN_HPP_NAMESPACE::CommandPool, Dispatch>( result, commandPool, VULKAN_HPP_NAMESPACE_STRING "::Device::createCommandPoolUnique", deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::createComputePipelines( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, uint32_t createInfoCount, const VULKAN_HPP_NAMESPACE::ComputePipelineCreateInfo* pCreateInfos, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::Pipeline* pPipelines, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCreateComputePipelines( m_device, static_cast<VkPipelineCache>( pipelineCache ), createInfoCount, reinterpret_cast<const VkComputePipelineCreateInfo *>( pCreateInfos ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ), reinterpret_cast< VkPipeline *>( pPipelines ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename PipelineAllocator, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE ResultValue<std::vector<Pipeline, PipelineAllocator>> Device::createComputePipelines( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, ArrayProxy<const VULKAN_HPP_NAMESPACE::ComputePipelineCreateInfo> const & createInfos, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- std::vector<Pipeline, PipelineAllocator> pipelines( createInfos.size() );
- Result result = static_cast<Result>( d.vkCreateComputePipelines( m_device, static_cast<VkPipelineCache>( pipelineCache ), createInfos.size(), reinterpret_cast<const VkComputePipelineCreateInfo *>( createInfos.data() ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkPipeline *>( pipelines.data() ) ) );
- return createResultValue( result, pipelines, VULKAN_HPP_NAMESPACE_STRING "::Device::createComputePipelines", { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT } );
- }
-
- template <typename PipelineAllocator, typename Dispatch, typename B, typename std::enable_if<std::is_same<typename B::value_type, Pipeline>::value, int>::type >
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE ResultValue<std::vector<Pipeline, PipelineAllocator>> Device::createComputePipelines( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, ArrayProxy<const VULKAN_HPP_NAMESPACE::ComputePipelineCreateInfo> const & createInfos, Optional<const AllocationCallbacks> allocator, PipelineAllocator & pipelineAllocator, Dispatch const & d ) const
- {
- std::vector<Pipeline, PipelineAllocator> pipelines( createInfos.size(), pipelineAllocator );
- Result result = static_cast<Result>( d.vkCreateComputePipelines( m_device, static_cast<VkPipelineCache>( pipelineCache ), createInfos.size(), reinterpret_cast<const VkComputePipelineCreateInfo *>( createInfos.data() ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkPipeline *>( pipelines.data() ) ) );
- return createResultValue( result, pipelines, VULKAN_HPP_NAMESPACE_STRING "::Device::createComputePipelines", { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT } );
- }
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE ResultValue<Pipeline> Device::createComputePipeline( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, const ComputePipelineCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- Pipeline pipeline;
- Result result = static_cast<Result>( d.vkCreateComputePipelines( m_device, static_cast<VkPipelineCache>( pipelineCache ), 1, reinterpret_cast<const VkComputePipelineCreateInfo *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkPipeline *>( &pipeline ) ) );
- return createResultValue( result, pipeline, VULKAN_HPP_NAMESPACE_STRING "::Device::createComputePipeline", { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT } );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch, typename PipelineAllocator>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE ResultValue<std::vector<UniqueHandle<Pipeline, Dispatch>, PipelineAllocator>> Device::createComputePipelinesUnique( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, ArrayProxy<const VULKAN_HPP_NAMESPACE::ComputePipelineCreateInfo> const & createInfos, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- std::vector<UniqueHandle<Pipeline, Dispatch>, PipelineAllocator> uniquePipelines;
- std::vector<Pipeline> pipelines( createInfos.size() );
- Result result = static_cast<Result>( d.vkCreateComputePipelines( m_device, static_cast<VkPipelineCache>( pipelineCache ), createInfos.size(), reinterpret_cast<const VkComputePipelineCreateInfo *>( createInfos.data() ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkPipeline *>( pipelines.data() ) ) );
- if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess )|| ( result == VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT ) )
- {
- uniquePipelines.reserve( createInfos.size() );
- ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
- for ( size_t i=0; i < createInfos.size(); i++ )
- {
- uniquePipelines.push_back( UniqueHandle<Pipeline, Dispatch>( pipelines[i], deleter ) );
- }
- }
- return createResultValue( result, std::move( uniquePipelines ), VULKAN_HPP_NAMESPACE_STRING "::Device::createComputePipelinesUnique", { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT } );
- }
-
- template <typename Dispatch, typename PipelineAllocator, typename B, typename std::enable_if<std::is_same<typename B::value_type, UniqueHandle<Pipeline, Dispatch>>::value, int>::type >
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE ResultValue<std::vector<UniqueHandle<Pipeline, Dispatch>, PipelineAllocator>> Device::createComputePipelinesUnique( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, ArrayProxy<const VULKAN_HPP_NAMESPACE::ComputePipelineCreateInfo> const & createInfos, Optional<const AllocationCallbacks> allocator, PipelineAllocator & pipelineAllocator, Dispatch const & d ) const
- {
- std::vector<UniqueHandle<Pipeline, Dispatch>, PipelineAllocator> uniquePipelines( pipelineAllocator );
- std::vector<Pipeline> pipelines( createInfos.size() );
- Result result = static_cast<Result>( d.vkCreateComputePipelines( m_device, static_cast<VkPipelineCache>( pipelineCache ), createInfos.size(), reinterpret_cast<const VkComputePipelineCreateInfo *>( createInfos.data() ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkPipeline *>( pipelines.data() ) ) );
- if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess )|| ( result == VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT ) )
- {
- uniquePipelines.reserve( createInfos.size() );
- ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
- for ( size_t i=0; i < createInfos.size(); i++ )
- {
- uniquePipelines.push_back( UniqueHandle<Pipeline, Dispatch>( pipelines[i], deleter ) );
- }
- }
- return createResultValue( result, std::move( uniquePipelines ), VULKAN_HPP_NAMESPACE_STRING "::Device::createComputePipelinesUnique", { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT } );
- }
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE ResultValue<UniqueHandle<Pipeline, Dispatch>> Device::createComputePipelineUnique( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, const ComputePipelineCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- Pipeline pipeline;
- Result result = static_cast<Result>( d.vkCreateComputePipelines( m_device, static_cast<VkPipelineCache>( pipelineCache ), 1, reinterpret_cast<const VkComputePipelineCreateInfo *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkPipeline *>( &pipeline ) ) );
- ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
- return createResultValue<Pipeline, Dispatch>( result, pipeline, VULKAN_HPP_NAMESPACE_STRING "::Device::createComputePipelineUnique", { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT }, deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::createDeferredOperationKHR( const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::DeferredOperationKHR* pDeferredOperation, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCreateDeferredOperationKHR( m_device, reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ), reinterpret_cast< VkDeferredOperationKHR *>( pDeferredOperation ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::DeferredOperationKHR>::type Device::createDeferredOperationKHR( Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation;
- Result result = static_cast<Result>( d.vkCreateDeferredOperationKHR( m_device, reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkDeferredOperationKHR *>( &deferredOperation ) ) );
- return createResultValue( result, deferredOperation, VULKAN_HPP_NAMESPACE_STRING "::Device::createDeferredOperationKHR" );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch>
- VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::DeferredOperationKHR, Dispatch>>::type Device::createDeferredOperationKHRUnique( Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation;
- Result result = static_cast<Result>( d.vkCreateDeferredOperationKHR( m_device, reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkDeferredOperationKHR *>( &deferredOperation ) ) );
- ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
- return createResultValue<VULKAN_HPP_NAMESPACE::DeferredOperationKHR, Dispatch>( result, deferredOperation, VULKAN_HPP_NAMESPACE_STRING "::Device::createDeferredOperationKHRUnique", deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::createDescriptorPool( const VULKAN_HPP_NAMESPACE::DescriptorPoolCreateInfo* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::DescriptorPool* pDescriptorPool, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCreateDescriptorPool( m_device, reinterpret_cast<const VkDescriptorPoolCreateInfo *>( pCreateInfo ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ), reinterpret_cast< VkDescriptorPool *>( pDescriptorPool ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::DescriptorPool>::type Device::createDescriptorPool( const DescriptorPoolCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::DescriptorPool descriptorPool;
- Result result = static_cast<Result>( d.vkCreateDescriptorPool( m_device, reinterpret_cast<const VkDescriptorPoolCreateInfo *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkDescriptorPool *>( &descriptorPool ) ) );
- return createResultValue( result, descriptorPool, VULKAN_HPP_NAMESPACE_STRING "::Device::createDescriptorPool" );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::DescriptorPool, Dispatch>>::type Device::createDescriptorPoolUnique( const DescriptorPoolCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::DescriptorPool descriptorPool;
- Result result = static_cast<Result>( d.vkCreateDescriptorPool( m_device, reinterpret_cast<const VkDescriptorPoolCreateInfo *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkDescriptorPool *>( &descriptorPool ) ) );
- ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
- return createResultValue<VULKAN_HPP_NAMESPACE::DescriptorPool, Dispatch>( result, descriptorPool, VULKAN_HPP_NAMESPACE_STRING "::Device::createDescriptorPoolUnique", deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::createDescriptorSetLayout( const VULKAN_HPP_NAMESPACE::DescriptorSetLayoutCreateInfo* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::DescriptorSetLayout* pSetLayout, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCreateDescriptorSetLayout( m_device, reinterpret_cast<const VkDescriptorSetLayoutCreateInfo *>( pCreateInfo ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ), reinterpret_cast< VkDescriptorSetLayout *>( pSetLayout ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::DescriptorSetLayout>::type Device::createDescriptorSetLayout( const DescriptorSetLayoutCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::DescriptorSetLayout setLayout;
- Result result = static_cast<Result>( d.vkCreateDescriptorSetLayout( m_device, reinterpret_cast<const VkDescriptorSetLayoutCreateInfo *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkDescriptorSetLayout *>( &setLayout ) ) );
- return createResultValue( result, setLayout, VULKAN_HPP_NAMESPACE_STRING "::Device::createDescriptorSetLayout" );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::DescriptorSetLayout, Dispatch>>::type Device::createDescriptorSetLayoutUnique( const DescriptorSetLayoutCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::DescriptorSetLayout setLayout;
- Result result = static_cast<Result>( d.vkCreateDescriptorSetLayout( m_device, reinterpret_cast<const VkDescriptorSetLayoutCreateInfo *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkDescriptorSetLayout *>( &setLayout ) ) );
- ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
- return createResultValue<VULKAN_HPP_NAMESPACE::DescriptorSetLayout, Dispatch>( result, setLayout, VULKAN_HPP_NAMESPACE_STRING "::Device::createDescriptorSetLayoutUnique", deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::createDescriptorUpdateTemplate( const VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateCreateInfo* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate* pDescriptorUpdateTemplate, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCreateDescriptorUpdateTemplate( m_device, reinterpret_cast<const VkDescriptorUpdateTemplateCreateInfo *>( pCreateInfo ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ), reinterpret_cast< VkDescriptorUpdateTemplate *>( pDescriptorUpdateTemplate ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate>::type Device::createDescriptorUpdateTemplate( const DescriptorUpdateTemplateCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate descriptorUpdateTemplate;
- Result result = static_cast<Result>( d.vkCreateDescriptorUpdateTemplate( m_device, reinterpret_cast<const VkDescriptorUpdateTemplateCreateInfo *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkDescriptorUpdateTemplate *>( &descriptorUpdateTemplate ) ) );
- return createResultValue( result, descriptorUpdateTemplate, VULKAN_HPP_NAMESPACE_STRING "::Device::createDescriptorUpdateTemplate" );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate, Dispatch>>::type Device::createDescriptorUpdateTemplateUnique( const DescriptorUpdateTemplateCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate descriptorUpdateTemplate;
- Result result = static_cast<Result>( d.vkCreateDescriptorUpdateTemplate( m_device, reinterpret_cast<const VkDescriptorUpdateTemplateCreateInfo *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkDescriptorUpdateTemplate *>( &descriptorUpdateTemplate ) ) );
- ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
- return createResultValue<VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate, Dispatch>( result, descriptorUpdateTemplate, VULKAN_HPP_NAMESPACE_STRING "::Device::createDescriptorUpdateTemplateUnique", deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::createDescriptorUpdateTemplateKHR( const VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateCreateInfo* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate* pDescriptorUpdateTemplate, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCreateDescriptorUpdateTemplateKHR( m_device, reinterpret_cast<const VkDescriptorUpdateTemplateCreateInfo *>( pCreateInfo ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ), reinterpret_cast< VkDescriptorUpdateTemplate *>( pDescriptorUpdateTemplate ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate>::type Device::createDescriptorUpdateTemplateKHR( const DescriptorUpdateTemplateCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate descriptorUpdateTemplate;
- Result result = static_cast<Result>( d.vkCreateDescriptorUpdateTemplateKHR( m_device, reinterpret_cast<const VkDescriptorUpdateTemplateCreateInfo *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkDescriptorUpdateTemplate *>( &descriptorUpdateTemplate ) ) );
- return createResultValue( result, descriptorUpdateTemplate, VULKAN_HPP_NAMESPACE_STRING "::Device::createDescriptorUpdateTemplateKHR" );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate, Dispatch>>::type Device::createDescriptorUpdateTemplateKHRUnique( const DescriptorUpdateTemplateCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate descriptorUpdateTemplate;
- Result result = static_cast<Result>( d.vkCreateDescriptorUpdateTemplateKHR( m_device, reinterpret_cast<const VkDescriptorUpdateTemplateCreateInfo *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkDescriptorUpdateTemplate *>( &descriptorUpdateTemplate ) ) );
- ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
- return createResultValue<VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate, Dispatch>( result, descriptorUpdateTemplate, VULKAN_HPP_NAMESPACE_STRING "::Device::createDescriptorUpdateTemplateKHRUnique", deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::createEvent( const VULKAN_HPP_NAMESPACE::EventCreateInfo* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::Event* pEvent, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCreateEvent( m_device, reinterpret_cast<const VkEventCreateInfo *>( pCreateInfo ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ), reinterpret_cast< VkEvent *>( pEvent ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::Event>::type Device::createEvent( const EventCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::Event event;
- Result result = static_cast<Result>( d.vkCreateEvent( m_device, reinterpret_cast<const VkEventCreateInfo *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkEvent *>( &event ) ) );
- return createResultValue( result, event, VULKAN_HPP_NAMESPACE_STRING "::Device::createEvent" );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::Event, Dispatch>>::type Device::createEventUnique( const EventCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::Event event;
- Result result = static_cast<Result>( d.vkCreateEvent( m_device, reinterpret_cast<const VkEventCreateInfo *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkEvent *>( &event ) ) );
- ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
- return createResultValue<VULKAN_HPP_NAMESPACE::Event, Dispatch>( result, event, VULKAN_HPP_NAMESPACE_STRING "::Device::createEventUnique", deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::createFence( const VULKAN_HPP_NAMESPACE::FenceCreateInfo* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::Fence* pFence, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCreateFence( m_device, reinterpret_cast<const VkFenceCreateInfo *>( pCreateInfo ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ), reinterpret_cast< VkFence *>( pFence ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::Fence>::type Device::createFence( const FenceCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::Fence fence;
- Result result = static_cast<Result>( d.vkCreateFence( m_device, reinterpret_cast<const VkFenceCreateInfo *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkFence *>( &fence ) ) );
- return createResultValue( result, fence, VULKAN_HPP_NAMESPACE_STRING "::Device::createFence" );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::Fence, Dispatch>>::type Device::createFenceUnique( const FenceCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::Fence fence;
- Result result = static_cast<Result>( d.vkCreateFence( m_device, reinterpret_cast<const VkFenceCreateInfo *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkFence *>( &fence ) ) );
- ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
- return createResultValue<VULKAN_HPP_NAMESPACE::Fence, Dispatch>( result, fence, VULKAN_HPP_NAMESPACE_STRING "::Device::createFenceUnique", deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::createFramebuffer( const VULKAN_HPP_NAMESPACE::FramebufferCreateInfo* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::Framebuffer* pFramebuffer, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCreateFramebuffer( m_device, reinterpret_cast<const VkFramebufferCreateInfo *>( pCreateInfo ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ), reinterpret_cast< VkFramebuffer *>( pFramebuffer ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::Framebuffer>::type Device::createFramebuffer( const FramebufferCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::Framebuffer framebuffer;
- Result result = static_cast<Result>( d.vkCreateFramebuffer( m_device, reinterpret_cast<const VkFramebufferCreateInfo *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkFramebuffer *>( &framebuffer ) ) );
- return createResultValue( result, framebuffer, VULKAN_HPP_NAMESPACE_STRING "::Device::createFramebuffer" );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::Framebuffer, Dispatch>>::type Device::createFramebufferUnique( const FramebufferCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::Framebuffer framebuffer;
- Result result = static_cast<Result>( d.vkCreateFramebuffer( m_device, reinterpret_cast<const VkFramebufferCreateInfo *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkFramebuffer *>( &framebuffer ) ) );
- ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
- return createResultValue<VULKAN_HPP_NAMESPACE::Framebuffer, Dispatch>( result, framebuffer, VULKAN_HPP_NAMESPACE_STRING "::Device::createFramebufferUnique", deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::createGraphicsPipelines( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, uint32_t createInfoCount, const VULKAN_HPP_NAMESPACE::GraphicsPipelineCreateInfo* pCreateInfos, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::Pipeline* pPipelines, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCreateGraphicsPipelines( m_device, static_cast<VkPipelineCache>( pipelineCache ), createInfoCount, reinterpret_cast<const VkGraphicsPipelineCreateInfo *>( pCreateInfos ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ), reinterpret_cast< VkPipeline *>( pPipelines ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename PipelineAllocator, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE ResultValue<std::vector<Pipeline, PipelineAllocator>> Device::createGraphicsPipelines( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, ArrayProxy<const VULKAN_HPP_NAMESPACE::GraphicsPipelineCreateInfo> const & createInfos, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- std::vector<Pipeline, PipelineAllocator> pipelines( createInfos.size() );
- Result result = static_cast<Result>( d.vkCreateGraphicsPipelines( m_device, static_cast<VkPipelineCache>( pipelineCache ), createInfos.size(), reinterpret_cast<const VkGraphicsPipelineCreateInfo *>( createInfos.data() ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkPipeline *>( pipelines.data() ) ) );
- return createResultValue( result, pipelines, VULKAN_HPP_NAMESPACE_STRING "::Device::createGraphicsPipelines", { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT } );
- }
-
- template <typename PipelineAllocator, typename Dispatch, typename B, typename std::enable_if<std::is_same<typename B::value_type, Pipeline>::value, int>::type >
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE ResultValue<std::vector<Pipeline, PipelineAllocator>> Device::createGraphicsPipelines( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, ArrayProxy<const VULKAN_HPP_NAMESPACE::GraphicsPipelineCreateInfo> const & createInfos, Optional<const AllocationCallbacks> allocator, PipelineAllocator & pipelineAllocator, Dispatch const & d ) const
- {
- std::vector<Pipeline, PipelineAllocator> pipelines( createInfos.size(), pipelineAllocator );
- Result result = static_cast<Result>( d.vkCreateGraphicsPipelines( m_device, static_cast<VkPipelineCache>( pipelineCache ), createInfos.size(), reinterpret_cast<const VkGraphicsPipelineCreateInfo *>( createInfos.data() ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkPipeline *>( pipelines.data() ) ) );
- return createResultValue( result, pipelines, VULKAN_HPP_NAMESPACE_STRING "::Device::createGraphicsPipelines", { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT } );
- }
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE ResultValue<Pipeline> Device::createGraphicsPipeline( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, const GraphicsPipelineCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- Pipeline pipeline;
- Result result = static_cast<Result>( d.vkCreateGraphicsPipelines( m_device, static_cast<VkPipelineCache>( pipelineCache ), 1, reinterpret_cast<const VkGraphicsPipelineCreateInfo *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkPipeline *>( &pipeline ) ) );
- return createResultValue( result, pipeline, VULKAN_HPP_NAMESPACE_STRING "::Device::createGraphicsPipeline", { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT } );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch, typename PipelineAllocator>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE ResultValue<std::vector<UniqueHandle<Pipeline, Dispatch>, PipelineAllocator>> Device::createGraphicsPipelinesUnique( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, ArrayProxy<const VULKAN_HPP_NAMESPACE::GraphicsPipelineCreateInfo> const & createInfos, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- std::vector<UniqueHandle<Pipeline, Dispatch>, PipelineAllocator> uniquePipelines;
- std::vector<Pipeline> pipelines( createInfos.size() );
- Result result = static_cast<Result>( d.vkCreateGraphicsPipelines( m_device, static_cast<VkPipelineCache>( pipelineCache ), createInfos.size(), reinterpret_cast<const VkGraphicsPipelineCreateInfo *>( createInfos.data() ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkPipeline *>( pipelines.data() ) ) );
- if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess )|| ( result == VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT ) )
- {
- uniquePipelines.reserve( createInfos.size() );
- ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
- for ( size_t i=0; i < createInfos.size(); i++ )
- {
- uniquePipelines.push_back( UniqueHandle<Pipeline, Dispatch>( pipelines[i], deleter ) );
- }
- }
- return createResultValue( result, std::move( uniquePipelines ), VULKAN_HPP_NAMESPACE_STRING "::Device::createGraphicsPipelinesUnique", { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT } );
- }
-
- template <typename Dispatch, typename PipelineAllocator, typename B, typename std::enable_if<std::is_same<typename B::value_type, UniqueHandle<Pipeline, Dispatch>>::value, int>::type >
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE ResultValue<std::vector<UniqueHandle<Pipeline, Dispatch>, PipelineAllocator>> Device::createGraphicsPipelinesUnique( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, ArrayProxy<const VULKAN_HPP_NAMESPACE::GraphicsPipelineCreateInfo> const & createInfos, Optional<const AllocationCallbacks> allocator, PipelineAllocator & pipelineAllocator, Dispatch const & d ) const
- {
- std::vector<UniqueHandle<Pipeline, Dispatch>, PipelineAllocator> uniquePipelines( pipelineAllocator );
- std::vector<Pipeline> pipelines( createInfos.size() );
- Result result = static_cast<Result>( d.vkCreateGraphicsPipelines( m_device, static_cast<VkPipelineCache>( pipelineCache ), createInfos.size(), reinterpret_cast<const VkGraphicsPipelineCreateInfo *>( createInfos.data() ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkPipeline *>( pipelines.data() ) ) );
- if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess )|| ( result == VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT ) )
- {
- uniquePipelines.reserve( createInfos.size() );
- ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
- for ( size_t i=0; i < createInfos.size(); i++ )
- {
- uniquePipelines.push_back( UniqueHandle<Pipeline, Dispatch>( pipelines[i], deleter ) );
- }
- }
- return createResultValue( result, std::move( uniquePipelines ), VULKAN_HPP_NAMESPACE_STRING "::Device::createGraphicsPipelinesUnique", { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT } );
- }
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE ResultValue<UniqueHandle<Pipeline, Dispatch>> Device::createGraphicsPipelineUnique( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, const GraphicsPipelineCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- Pipeline pipeline;
- Result result = static_cast<Result>( d.vkCreateGraphicsPipelines( m_device, static_cast<VkPipelineCache>( pipelineCache ), 1, reinterpret_cast<const VkGraphicsPipelineCreateInfo *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkPipeline *>( &pipeline ) ) );
- ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
- return createResultValue<Pipeline, Dispatch>( result, pipeline, VULKAN_HPP_NAMESPACE_STRING "::Device::createGraphicsPipelineUnique", { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT }, deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::createImage( const VULKAN_HPP_NAMESPACE::ImageCreateInfo* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::Image* pImage, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCreateImage( m_device, reinterpret_cast<const VkImageCreateInfo *>( pCreateInfo ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ), reinterpret_cast< VkImage *>( pImage ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::Image>::type Device::createImage( const ImageCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::Image image;
- Result result = static_cast<Result>( d.vkCreateImage( m_device, reinterpret_cast<const VkImageCreateInfo *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkImage *>( &image ) ) );
- return createResultValue( result, image, VULKAN_HPP_NAMESPACE_STRING "::Device::createImage" );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::Image, Dispatch>>::type Device::createImageUnique( const ImageCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::Image image;
- Result result = static_cast<Result>( d.vkCreateImage( m_device, reinterpret_cast<const VkImageCreateInfo *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkImage *>( &image ) ) );
- ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
- return createResultValue<VULKAN_HPP_NAMESPACE::Image, Dispatch>( result, image, VULKAN_HPP_NAMESPACE_STRING "::Device::createImageUnique", deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::createImageView( const VULKAN_HPP_NAMESPACE::ImageViewCreateInfo* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::ImageView* pView, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCreateImageView( m_device, reinterpret_cast<const VkImageViewCreateInfo *>( pCreateInfo ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ), reinterpret_cast< VkImageView *>( pView ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::ImageView>::type Device::createImageView( const ImageViewCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::ImageView view;
- Result result = static_cast<Result>( d.vkCreateImageView( m_device, reinterpret_cast<const VkImageViewCreateInfo *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkImageView *>( &view ) ) );
- return createResultValue( result, view, VULKAN_HPP_NAMESPACE_STRING "::Device::createImageView" );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::ImageView, Dispatch>>::type Device::createImageViewUnique( const ImageViewCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::ImageView view;
- Result result = static_cast<Result>( d.vkCreateImageView( m_device, reinterpret_cast<const VkImageViewCreateInfo *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkImageView *>( &view ) ) );
- ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
- return createResultValue<VULKAN_HPP_NAMESPACE::ImageView, Dispatch>( result, view, VULKAN_HPP_NAMESPACE_STRING "::Device::createImageViewUnique", deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::createIndirectCommandsLayoutNV( const VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutCreateInfoNV* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV* pIndirectCommandsLayout, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCreateIndirectCommandsLayoutNV( m_device, reinterpret_cast<const VkIndirectCommandsLayoutCreateInfoNV *>( pCreateInfo ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ), reinterpret_cast< VkIndirectCommandsLayoutNV *>( pIndirectCommandsLayout ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV>::type Device::createIndirectCommandsLayoutNV( const IndirectCommandsLayoutCreateInfoNV & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV indirectCommandsLayout;
- Result result = static_cast<Result>( d.vkCreateIndirectCommandsLayoutNV( m_device, reinterpret_cast<const VkIndirectCommandsLayoutCreateInfoNV *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkIndirectCommandsLayoutNV *>( &indirectCommandsLayout ) ) );
- return createResultValue( result, indirectCommandsLayout, VULKAN_HPP_NAMESPACE_STRING "::Device::createIndirectCommandsLayoutNV" );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV, Dispatch>>::type Device::createIndirectCommandsLayoutNVUnique( const IndirectCommandsLayoutCreateInfoNV & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV indirectCommandsLayout;
- Result result = static_cast<Result>( d.vkCreateIndirectCommandsLayoutNV( m_device, reinterpret_cast<const VkIndirectCommandsLayoutCreateInfoNV *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkIndirectCommandsLayoutNV *>( &indirectCommandsLayout ) ) );
- ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
- return createResultValue<VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV, Dispatch>( result, indirectCommandsLayout, VULKAN_HPP_NAMESPACE_STRING "::Device::createIndirectCommandsLayoutNVUnique", deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::createPipelineCache( const VULKAN_HPP_NAMESPACE::PipelineCacheCreateInfo* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::PipelineCache* pPipelineCache, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCreatePipelineCache( m_device, reinterpret_cast<const VkPipelineCacheCreateInfo *>( pCreateInfo ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ), reinterpret_cast< VkPipelineCache *>( pPipelineCache ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::PipelineCache>::type Device::createPipelineCache( const PipelineCacheCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache;
- Result result = static_cast<Result>( d.vkCreatePipelineCache( m_device, reinterpret_cast<const VkPipelineCacheCreateInfo *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkPipelineCache *>( &pipelineCache ) ) );
- return createResultValue( result, pipelineCache, VULKAN_HPP_NAMESPACE_STRING "::Device::createPipelineCache" );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::PipelineCache, Dispatch>>::type Device::createPipelineCacheUnique( const PipelineCacheCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache;
- Result result = static_cast<Result>( d.vkCreatePipelineCache( m_device, reinterpret_cast<const VkPipelineCacheCreateInfo *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkPipelineCache *>( &pipelineCache ) ) );
- ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
- return createResultValue<VULKAN_HPP_NAMESPACE::PipelineCache, Dispatch>( result, pipelineCache, VULKAN_HPP_NAMESPACE_STRING "::Device::createPipelineCacheUnique", deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::createPipelineLayout( const VULKAN_HPP_NAMESPACE::PipelineLayoutCreateInfo* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::PipelineLayout* pPipelineLayout, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCreatePipelineLayout( m_device, reinterpret_cast<const VkPipelineLayoutCreateInfo *>( pCreateInfo ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ), reinterpret_cast< VkPipelineLayout *>( pPipelineLayout ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::PipelineLayout>::type Device::createPipelineLayout( const PipelineLayoutCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::PipelineLayout pipelineLayout;
- Result result = static_cast<Result>( d.vkCreatePipelineLayout( m_device, reinterpret_cast<const VkPipelineLayoutCreateInfo *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkPipelineLayout *>( &pipelineLayout ) ) );
- return createResultValue( result, pipelineLayout, VULKAN_HPP_NAMESPACE_STRING "::Device::createPipelineLayout" );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::PipelineLayout, Dispatch>>::type Device::createPipelineLayoutUnique( const PipelineLayoutCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::PipelineLayout pipelineLayout;
- Result result = static_cast<Result>( d.vkCreatePipelineLayout( m_device, reinterpret_cast<const VkPipelineLayoutCreateInfo *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkPipelineLayout *>( &pipelineLayout ) ) );
- ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
- return createResultValue<VULKAN_HPP_NAMESPACE::PipelineLayout, Dispatch>( result, pipelineLayout, VULKAN_HPP_NAMESPACE_STRING "::Device::createPipelineLayoutUnique", deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::createPrivateDataSlotEXT( const VULKAN_HPP_NAMESPACE::PrivateDataSlotCreateInfoEXT* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT* pPrivateDataSlot, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCreatePrivateDataSlotEXT( m_device, reinterpret_cast<const VkPrivateDataSlotCreateInfoEXT *>( pCreateInfo ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ), reinterpret_cast< VkPrivateDataSlotEXT *>( pPrivateDataSlot ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT>::type Device::createPrivateDataSlotEXT( const PrivateDataSlotCreateInfoEXT & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT privateDataSlot;
- Result result = static_cast<Result>( d.vkCreatePrivateDataSlotEXT( m_device, reinterpret_cast<const VkPrivateDataSlotCreateInfoEXT *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkPrivateDataSlotEXT *>( &privateDataSlot ) ) );
- return createResultValue( result, privateDataSlot, VULKAN_HPP_NAMESPACE_STRING "::Device::createPrivateDataSlotEXT" );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch>
- VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT, Dispatch>>::type Device::createPrivateDataSlotEXTUnique( const PrivateDataSlotCreateInfoEXT & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT privateDataSlot;
- Result result = static_cast<Result>( d.vkCreatePrivateDataSlotEXT( m_device, reinterpret_cast<const VkPrivateDataSlotCreateInfoEXT *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkPrivateDataSlotEXT *>( &privateDataSlot ) ) );
- ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
- return createResultValue<VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT, Dispatch>( result, privateDataSlot, VULKAN_HPP_NAMESPACE_STRING "::Device::createPrivateDataSlotEXTUnique", deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::createQueryPool( const VULKAN_HPP_NAMESPACE::QueryPoolCreateInfo* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::QueryPool* pQueryPool, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCreateQueryPool( m_device, reinterpret_cast<const VkQueryPoolCreateInfo *>( pCreateInfo ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ), reinterpret_cast< VkQueryPool *>( pQueryPool ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::QueryPool>::type Device::createQueryPool( const QueryPoolCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::QueryPool queryPool;
- Result result = static_cast<Result>( d.vkCreateQueryPool( m_device, reinterpret_cast<const VkQueryPoolCreateInfo *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkQueryPool *>( &queryPool ) ) );
- return createResultValue( result, queryPool, VULKAN_HPP_NAMESPACE_STRING "::Device::createQueryPool" );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::QueryPool, Dispatch>>::type Device::createQueryPoolUnique( const QueryPoolCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::QueryPool queryPool;
- Result result = static_cast<Result>( d.vkCreateQueryPool( m_device, reinterpret_cast<const VkQueryPoolCreateInfo *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkQueryPool *>( &queryPool ) ) );
- ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
- return createResultValue<VULKAN_HPP_NAMESPACE::QueryPool, Dispatch>( result, queryPool, VULKAN_HPP_NAMESPACE_STRING "::Device::createQueryPoolUnique", deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::createRayTracingPipelinesKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation, VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, uint32_t createInfoCount, const VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoKHR* pCreateInfos, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::Pipeline* pPipelines, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCreateRayTracingPipelinesKHR( m_device, static_cast<VkDeferredOperationKHR>( deferredOperation ), static_cast<VkPipelineCache>( pipelineCache ), createInfoCount, reinterpret_cast<const VkRayTracingPipelineCreateInfoKHR *>( pCreateInfos ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ), reinterpret_cast< VkPipeline *>( pPipelines ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename PipelineAllocator, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE ResultValue<std::vector<Pipeline, PipelineAllocator>> Device::createRayTracingPipelinesKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation, VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, ArrayProxy<const VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoKHR> const & createInfos, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- std::vector<Pipeline, PipelineAllocator> pipelines( createInfos.size() );
- Result result = static_cast<Result>( d.vkCreateRayTracingPipelinesKHR( m_device, static_cast<VkDeferredOperationKHR>( deferredOperation ), static_cast<VkPipelineCache>( pipelineCache ), createInfos.size(), reinterpret_cast<const VkRayTracingPipelineCreateInfoKHR *>( createInfos.data() ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkPipeline *>( pipelines.data() ) ) );
- return createResultValue( result, pipelines, VULKAN_HPP_NAMESPACE_STRING "::Device::createRayTracingPipelinesKHR", { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::eOperationDeferredKHR, VULKAN_HPP_NAMESPACE::Result::eOperationNotDeferredKHR, VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT } );
- }
-
- template <typename PipelineAllocator, typename Dispatch, typename B, typename std::enable_if<std::is_same<typename B::value_type, Pipeline>::value, int>::type >
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE ResultValue<std::vector<Pipeline, PipelineAllocator>> Device::createRayTracingPipelinesKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation, VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, ArrayProxy<const VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoKHR> const & createInfos, Optional<const AllocationCallbacks> allocator, PipelineAllocator & pipelineAllocator, Dispatch const & d ) const
- {
- std::vector<Pipeline, PipelineAllocator> pipelines( createInfos.size(), pipelineAllocator );
- Result result = static_cast<Result>( d.vkCreateRayTracingPipelinesKHR( m_device, static_cast<VkDeferredOperationKHR>( deferredOperation ), static_cast<VkPipelineCache>( pipelineCache ), createInfos.size(), reinterpret_cast<const VkRayTracingPipelineCreateInfoKHR *>( createInfos.data() ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkPipeline *>( pipelines.data() ) ) );
- return createResultValue( result, pipelines, VULKAN_HPP_NAMESPACE_STRING "::Device::createRayTracingPipelinesKHR", { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::eOperationDeferredKHR, VULKAN_HPP_NAMESPACE::Result::eOperationNotDeferredKHR, VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT } );
- }
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE ResultValue<Pipeline> Device::createRayTracingPipelineKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation, VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, const RayTracingPipelineCreateInfoKHR & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- Pipeline pipeline;
- Result result = static_cast<Result>( d.vkCreateRayTracingPipelinesKHR( m_device, static_cast<VkDeferredOperationKHR>( deferredOperation ), static_cast<VkPipelineCache>( pipelineCache ), 1, reinterpret_cast<const VkRayTracingPipelineCreateInfoKHR *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkPipeline *>( &pipeline ) ) );
- return createResultValue( result, pipeline, VULKAN_HPP_NAMESPACE_STRING "::Device::createRayTracingPipelineKHR", { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::eOperationDeferredKHR, VULKAN_HPP_NAMESPACE::Result::eOperationNotDeferredKHR, VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT } );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch, typename PipelineAllocator>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE ResultValue<std::vector<UniqueHandle<Pipeline, Dispatch>, PipelineAllocator>> Device::createRayTracingPipelinesKHRUnique( VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation, VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, ArrayProxy<const VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoKHR> const & createInfos, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- std::vector<UniqueHandle<Pipeline, Dispatch>, PipelineAllocator> uniquePipelines;
- std::vector<Pipeline> pipelines( createInfos.size() );
- Result result = static_cast<Result>( d.vkCreateRayTracingPipelinesKHR( m_device, static_cast<VkDeferredOperationKHR>( deferredOperation ), static_cast<VkPipelineCache>( pipelineCache ), createInfos.size(), reinterpret_cast<const VkRayTracingPipelineCreateInfoKHR *>( createInfos.data() ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkPipeline *>( pipelines.data() ) ) );
- if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess )|| ( result == VULKAN_HPP_NAMESPACE::Result::eOperationDeferredKHR )|| ( result == VULKAN_HPP_NAMESPACE::Result::eOperationNotDeferredKHR )|| ( result == VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT ) )
- {
- uniquePipelines.reserve( createInfos.size() );
- ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
- for ( size_t i=0; i < createInfos.size(); i++ )
- {
- uniquePipelines.push_back( UniqueHandle<Pipeline, Dispatch>( pipelines[i], deleter ) );
- }
- }
- return createResultValue( result, std::move( uniquePipelines ), VULKAN_HPP_NAMESPACE_STRING "::Device::createRayTracingPipelinesKHRUnique", { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::eOperationDeferredKHR, VULKAN_HPP_NAMESPACE::Result::eOperationNotDeferredKHR, VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT } );
- }
-
- template <typename Dispatch, typename PipelineAllocator, typename B, typename std::enable_if<std::is_same<typename B::value_type, UniqueHandle<Pipeline, Dispatch>>::value, int>::type >
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE ResultValue<std::vector<UniqueHandle<Pipeline, Dispatch>, PipelineAllocator>> Device::createRayTracingPipelinesKHRUnique( VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation, VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, ArrayProxy<const VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoKHR> const & createInfos, Optional<const AllocationCallbacks> allocator, PipelineAllocator & pipelineAllocator, Dispatch const & d ) const
- {
- std::vector<UniqueHandle<Pipeline, Dispatch>, PipelineAllocator> uniquePipelines( pipelineAllocator );
- std::vector<Pipeline> pipelines( createInfos.size() );
- Result result = static_cast<Result>( d.vkCreateRayTracingPipelinesKHR( m_device, static_cast<VkDeferredOperationKHR>( deferredOperation ), static_cast<VkPipelineCache>( pipelineCache ), createInfos.size(), reinterpret_cast<const VkRayTracingPipelineCreateInfoKHR *>( createInfos.data() ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkPipeline *>( pipelines.data() ) ) );
- if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess )|| ( result == VULKAN_HPP_NAMESPACE::Result::eOperationDeferredKHR )|| ( result == VULKAN_HPP_NAMESPACE::Result::eOperationNotDeferredKHR )|| ( result == VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT ) )
- {
- uniquePipelines.reserve( createInfos.size() );
- ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
- for ( size_t i=0; i < createInfos.size(); i++ )
- {
- uniquePipelines.push_back( UniqueHandle<Pipeline, Dispatch>( pipelines[i], deleter ) );
- }
- }
- return createResultValue( result, std::move( uniquePipelines ), VULKAN_HPP_NAMESPACE_STRING "::Device::createRayTracingPipelinesKHRUnique", { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::eOperationDeferredKHR, VULKAN_HPP_NAMESPACE::Result::eOperationNotDeferredKHR, VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT } );
- }
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE ResultValue<UniqueHandle<Pipeline, Dispatch>> Device::createRayTracingPipelineKHRUnique( VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation, VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, const RayTracingPipelineCreateInfoKHR & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- Pipeline pipeline;
- Result result = static_cast<Result>( d.vkCreateRayTracingPipelinesKHR( m_device, static_cast<VkDeferredOperationKHR>( deferredOperation ), static_cast<VkPipelineCache>( pipelineCache ), 1, reinterpret_cast<const VkRayTracingPipelineCreateInfoKHR *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkPipeline *>( &pipeline ) ) );
- ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
- return createResultValue<Pipeline, Dispatch>( result, pipeline, VULKAN_HPP_NAMESPACE_STRING "::Device::createRayTracingPipelineKHRUnique", { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::eOperationDeferredKHR, VULKAN_HPP_NAMESPACE::Result::eOperationNotDeferredKHR, VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT }, deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::createRayTracingPipelinesNV( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, uint32_t createInfoCount, const VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoNV* pCreateInfos, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::Pipeline* pPipelines, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCreateRayTracingPipelinesNV( m_device, static_cast<VkPipelineCache>( pipelineCache ), createInfoCount, reinterpret_cast<const VkRayTracingPipelineCreateInfoNV *>( pCreateInfos ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ), reinterpret_cast< VkPipeline *>( pPipelines ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename PipelineAllocator, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE ResultValue<std::vector<Pipeline, PipelineAllocator>> Device::createRayTracingPipelinesNV( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, ArrayProxy<const VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoNV> const & createInfos, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- std::vector<Pipeline, PipelineAllocator> pipelines( createInfos.size() );
- Result result = static_cast<Result>( d.vkCreateRayTracingPipelinesNV( m_device, static_cast<VkPipelineCache>( pipelineCache ), createInfos.size(), reinterpret_cast<const VkRayTracingPipelineCreateInfoNV *>( createInfos.data() ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkPipeline *>( pipelines.data() ) ) );
- return createResultValue( result, pipelines, VULKAN_HPP_NAMESPACE_STRING "::Device::createRayTracingPipelinesNV", { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT } );
- }
-
- template <typename PipelineAllocator, typename Dispatch, typename B, typename std::enable_if<std::is_same<typename B::value_type, Pipeline>::value, int>::type >
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE ResultValue<std::vector<Pipeline, PipelineAllocator>> Device::createRayTracingPipelinesNV( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, ArrayProxy<const VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoNV> const & createInfos, Optional<const AllocationCallbacks> allocator, PipelineAllocator & pipelineAllocator, Dispatch const & d ) const
- {
- std::vector<Pipeline, PipelineAllocator> pipelines( createInfos.size(), pipelineAllocator );
- Result result = static_cast<Result>( d.vkCreateRayTracingPipelinesNV( m_device, static_cast<VkPipelineCache>( pipelineCache ), createInfos.size(), reinterpret_cast<const VkRayTracingPipelineCreateInfoNV *>( createInfos.data() ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkPipeline *>( pipelines.data() ) ) );
- return createResultValue( result, pipelines, VULKAN_HPP_NAMESPACE_STRING "::Device::createRayTracingPipelinesNV", { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT } );
- }
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE ResultValue<Pipeline> Device::createRayTracingPipelineNV( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, const RayTracingPipelineCreateInfoNV & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- Pipeline pipeline;
- Result result = static_cast<Result>( d.vkCreateRayTracingPipelinesNV( m_device, static_cast<VkPipelineCache>( pipelineCache ), 1, reinterpret_cast<const VkRayTracingPipelineCreateInfoNV *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkPipeline *>( &pipeline ) ) );
- return createResultValue( result, pipeline, VULKAN_HPP_NAMESPACE_STRING "::Device::createRayTracingPipelineNV", { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT } );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch, typename PipelineAllocator>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE ResultValue<std::vector<UniqueHandle<Pipeline, Dispatch>, PipelineAllocator>> Device::createRayTracingPipelinesNVUnique( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, ArrayProxy<const VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoNV> const & createInfos, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- std::vector<UniqueHandle<Pipeline, Dispatch>, PipelineAllocator> uniquePipelines;
- std::vector<Pipeline> pipelines( createInfos.size() );
- Result result = static_cast<Result>( d.vkCreateRayTracingPipelinesNV( m_device, static_cast<VkPipelineCache>( pipelineCache ), createInfos.size(), reinterpret_cast<const VkRayTracingPipelineCreateInfoNV *>( createInfos.data() ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkPipeline *>( pipelines.data() ) ) );
- if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess )|| ( result == VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT ) )
- {
- uniquePipelines.reserve( createInfos.size() );
- ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
- for ( size_t i=0; i < createInfos.size(); i++ )
- {
- uniquePipelines.push_back( UniqueHandle<Pipeline, Dispatch>( pipelines[i], deleter ) );
- }
- }
- return createResultValue( result, std::move( uniquePipelines ), VULKAN_HPP_NAMESPACE_STRING "::Device::createRayTracingPipelinesNVUnique", { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT } );
- }
-
- template <typename Dispatch, typename PipelineAllocator, typename B, typename std::enable_if<std::is_same<typename B::value_type, UniqueHandle<Pipeline, Dispatch>>::value, int>::type >
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE ResultValue<std::vector<UniqueHandle<Pipeline, Dispatch>, PipelineAllocator>> Device::createRayTracingPipelinesNVUnique( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, ArrayProxy<const VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoNV> const & createInfos, Optional<const AllocationCallbacks> allocator, PipelineAllocator & pipelineAllocator, Dispatch const & d ) const
- {
- std::vector<UniqueHandle<Pipeline, Dispatch>, PipelineAllocator> uniquePipelines( pipelineAllocator );
- std::vector<Pipeline> pipelines( createInfos.size() );
- Result result = static_cast<Result>( d.vkCreateRayTracingPipelinesNV( m_device, static_cast<VkPipelineCache>( pipelineCache ), createInfos.size(), reinterpret_cast<const VkRayTracingPipelineCreateInfoNV *>( createInfos.data() ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkPipeline *>( pipelines.data() ) ) );
- if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess )|| ( result == VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT ) )
- {
- uniquePipelines.reserve( createInfos.size() );
- ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
- for ( size_t i=0; i < createInfos.size(); i++ )
- {
- uniquePipelines.push_back( UniqueHandle<Pipeline, Dispatch>( pipelines[i], deleter ) );
- }
- }
- return createResultValue( result, std::move( uniquePipelines ), VULKAN_HPP_NAMESPACE_STRING "::Device::createRayTracingPipelinesNVUnique", { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT } );
- }
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE ResultValue<UniqueHandle<Pipeline, Dispatch>> Device::createRayTracingPipelineNVUnique( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, const RayTracingPipelineCreateInfoNV & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- Pipeline pipeline;
- Result result = static_cast<Result>( d.vkCreateRayTracingPipelinesNV( m_device, static_cast<VkPipelineCache>( pipelineCache ), 1, reinterpret_cast<const VkRayTracingPipelineCreateInfoNV *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkPipeline *>( &pipeline ) ) );
- ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
- return createResultValue<Pipeline, Dispatch>( result, pipeline, VULKAN_HPP_NAMESPACE_STRING "::Device::createRayTracingPipelineNVUnique", { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT }, deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::createRenderPass( const VULKAN_HPP_NAMESPACE::RenderPassCreateInfo* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::RenderPass* pRenderPass, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCreateRenderPass( m_device, reinterpret_cast<const VkRenderPassCreateInfo *>( pCreateInfo ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ), reinterpret_cast< VkRenderPass *>( pRenderPass ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::RenderPass>::type Device::createRenderPass( const RenderPassCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::RenderPass renderPass;
- Result result = static_cast<Result>( d.vkCreateRenderPass( m_device, reinterpret_cast<const VkRenderPassCreateInfo *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkRenderPass *>( &renderPass ) ) );
- return createResultValue( result, renderPass, VULKAN_HPP_NAMESPACE_STRING "::Device::createRenderPass" );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::RenderPass, Dispatch>>::type Device::createRenderPassUnique( const RenderPassCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::RenderPass renderPass;
- Result result = static_cast<Result>( d.vkCreateRenderPass( m_device, reinterpret_cast<const VkRenderPassCreateInfo *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkRenderPass *>( &renderPass ) ) );
- ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
- return createResultValue<VULKAN_HPP_NAMESPACE::RenderPass, Dispatch>( result, renderPass, VULKAN_HPP_NAMESPACE_STRING "::Device::createRenderPassUnique", deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::createRenderPass2( const VULKAN_HPP_NAMESPACE::RenderPassCreateInfo2* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::RenderPass* pRenderPass, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCreateRenderPass2( m_device, reinterpret_cast<const VkRenderPassCreateInfo2 *>( pCreateInfo ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ), reinterpret_cast< VkRenderPass *>( pRenderPass ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::RenderPass>::type Device::createRenderPass2( const RenderPassCreateInfo2 & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::RenderPass renderPass;
- Result result = static_cast<Result>( d.vkCreateRenderPass2( m_device, reinterpret_cast<const VkRenderPassCreateInfo2 *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkRenderPass *>( &renderPass ) ) );
- return createResultValue( result, renderPass, VULKAN_HPP_NAMESPACE_STRING "::Device::createRenderPass2" );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::RenderPass, Dispatch>>::type Device::createRenderPass2Unique( const RenderPassCreateInfo2 & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::RenderPass renderPass;
- Result result = static_cast<Result>( d.vkCreateRenderPass2( m_device, reinterpret_cast<const VkRenderPassCreateInfo2 *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkRenderPass *>( &renderPass ) ) );
- ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
- return createResultValue<VULKAN_HPP_NAMESPACE::RenderPass, Dispatch>( result, renderPass, VULKAN_HPP_NAMESPACE_STRING "::Device::createRenderPass2Unique", deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::createRenderPass2KHR( const VULKAN_HPP_NAMESPACE::RenderPassCreateInfo2* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::RenderPass* pRenderPass, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCreateRenderPass2KHR( m_device, reinterpret_cast<const VkRenderPassCreateInfo2 *>( pCreateInfo ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ), reinterpret_cast< VkRenderPass *>( pRenderPass ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::RenderPass>::type Device::createRenderPass2KHR( const RenderPassCreateInfo2 & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::RenderPass renderPass;
- Result result = static_cast<Result>( d.vkCreateRenderPass2KHR( m_device, reinterpret_cast<const VkRenderPassCreateInfo2 *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkRenderPass *>( &renderPass ) ) );
- return createResultValue( result, renderPass, VULKAN_HPP_NAMESPACE_STRING "::Device::createRenderPass2KHR" );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::RenderPass, Dispatch>>::type Device::createRenderPass2KHRUnique( const RenderPassCreateInfo2 & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::RenderPass renderPass;
- Result result = static_cast<Result>( d.vkCreateRenderPass2KHR( m_device, reinterpret_cast<const VkRenderPassCreateInfo2 *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkRenderPass *>( &renderPass ) ) );
- ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
- return createResultValue<VULKAN_HPP_NAMESPACE::RenderPass, Dispatch>( result, renderPass, VULKAN_HPP_NAMESPACE_STRING "::Device::createRenderPass2KHRUnique", deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::createSampler( const VULKAN_HPP_NAMESPACE::SamplerCreateInfo* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::Sampler* pSampler, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCreateSampler( m_device, reinterpret_cast<const VkSamplerCreateInfo *>( pCreateInfo ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ), reinterpret_cast< VkSampler *>( pSampler ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::Sampler>::type Device::createSampler( const SamplerCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::Sampler sampler;
- Result result = static_cast<Result>( d.vkCreateSampler( m_device, reinterpret_cast<const VkSamplerCreateInfo *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkSampler *>( &sampler ) ) );
- return createResultValue( result, sampler, VULKAN_HPP_NAMESPACE_STRING "::Device::createSampler" );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::Sampler, Dispatch>>::type Device::createSamplerUnique( const SamplerCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::Sampler sampler;
- Result result = static_cast<Result>( d.vkCreateSampler( m_device, reinterpret_cast<const VkSamplerCreateInfo *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkSampler *>( &sampler ) ) );
- ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
- return createResultValue<VULKAN_HPP_NAMESPACE::Sampler, Dispatch>( result, sampler, VULKAN_HPP_NAMESPACE_STRING "::Device::createSamplerUnique", deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::createSamplerYcbcrConversion( const VULKAN_HPP_NAMESPACE::SamplerYcbcrConversionCreateInfo* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion* pYcbcrConversion, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCreateSamplerYcbcrConversion( m_device, reinterpret_cast<const VkSamplerYcbcrConversionCreateInfo *>( pCreateInfo ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ), reinterpret_cast< VkSamplerYcbcrConversion *>( pYcbcrConversion ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion>::type Device::createSamplerYcbcrConversion( const SamplerYcbcrConversionCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion ycbcrConversion;
- Result result = static_cast<Result>( d.vkCreateSamplerYcbcrConversion( m_device, reinterpret_cast<const VkSamplerYcbcrConversionCreateInfo *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkSamplerYcbcrConversion *>( &ycbcrConversion ) ) );
- return createResultValue( result, ycbcrConversion, VULKAN_HPP_NAMESPACE_STRING "::Device::createSamplerYcbcrConversion" );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion, Dispatch>>::type Device::createSamplerYcbcrConversionUnique( const SamplerYcbcrConversionCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion ycbcrConversion;
- Result result = static_cast<Result>( d.vkCreateSamplerYcbcrConversion( m_device, reinterpret_cast<const VkSamplerYcbcrConversionCreateInfo *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkSamplerYcbcrConversion *>( &ycbcrConversion ) ) );
- ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
- return createResultValue<VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion, Dispatch>( result, ycbcrConversion, VULKAN_HPP_NAMESPACE_STRING "::Device::createSamplerYcbcrConversionUnique", deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::createSamplerYcbcrConversionKHR( const VULKAN_HPP_NAMESPACE::SamplerYcbcrConversionCreateInfo* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion* pYcbcrConversion, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCreateSamplerYcbcrConversionKHR( m_device, reinterpret_cast<const VkSamplerYcbcrConversionCreateInfo *>( pCreateInfo ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ), reinterpret_cast< VkSamplerYcbcrConversion *>( pYcbcrConversion ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion>::type Device::createSamplerYcbcrConversionKHR( const SamplerYcbcrConversionCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion ycbcrConversion;
- Result result = static_cast<Result>( d.vkCreateSamplerYcbcrConversionKHR( m_device, reinterpret_cast<const VkSamplerYcbcrConversionCreateInfo *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkSamplerYcbcrConversion *>( &ycbcrConversion ) ) );
- return createResultValue( result, ycbcrConversion, VULKAN_HPP_NAMESPACE_STRING "::Device::createSamplerYcbcrConversionKHR" );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion, Dispatch>>::type Device::createSamplerYcbcrConversionKHRUnique( const SamplerYcbcrConversionCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion ycbcrConversion;
- Result result = static_cast<Result>( d.vkCreateSamplerYcbcrConversionKHR( m_device, reinterpret_cast<const VkSamplerYcbcrConversionCreateInfo *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkSamplerYcbcrConversion *>( &ycbcrConversion ) ) );
- ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
- return createResultValue<VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion, Dispatch>( result, ycbcrConversion, VULKAN_HPP_NAMESPACE_STRING "::Device::createSamplerYcbcrConversionKHRUnique", deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::createSemaphore( const VULKAN_HPP_NAMESPACE::SemaphoreCreateInfo* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::Semaphore* pSemaphore, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCreateSemaphore( m_device, reinterpret_cast<const VkSemaphoreCreateInfo *>( pCreateInfo ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ), reinterpret_cast< VkSemaphore *>( pSemaphore ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::Semaphore>::type Device::createSemaphore( const SemaphoreCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::Semaphore semaphore;
- Result result = static_cast<Result>( d.vkCreateSemaphore( m_device, reinterpret_cast<const VkSemaphoreCreateInfo *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkSemaphore *>( &semaphore ) ) );
- return createResultValue( result, semaphore, VULKAN_HPP_NAMESPACE_STRING "::Device::createSemaphore" );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::Semaphore, Dispatch>>::type Device::createSemaphoreUnique( const SemaphoreCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::Semaphore semaphore;
- Result result = static_cast<Result>( d.vkCreateSemaphore( m_device, reinterpret_cast<const VkSemaphoreCreateInfo *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkSemaphore *>( &semaphore ) ) );
- ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
- return createResultValue<VULKAN_HPP_NAMESPACE::Semaphore, Dispatch>( result, semaphore, VULKAN_HPP_NAMESPACE_STRING "::Device::createSemaphoreUnique", deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::createShaderModule( const VULKAN_HPP_NAMESPACE::ShaderModuleCreateInfo* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::ShaderModule* pShaderModule, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCreateShaderModule( m_device, reinterpret_cast<const VkShaderModuleCreateInfo *>( pCreateInfo ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ), reinterpret_cast< VkShaderModule *>( pShaderModule ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::ShaderModule>::type Device::createShaderModule( const ShaderModuleCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::ShaderModule shaderModule;
- Result result = static_cast<Result>( d.vkCreateShaderModule( m_device, reinterpret_cast<const VkShaderModuleCreateInfo *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkShaderModule *>( &shaderModule ) ) );
- return createResultValue( result, shaderModule, VULKAN_HPP_NAMESPACE_STRING "::Device::createShaderModule" );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::ShaderModule, Dispatch>>::type Device::createShaderModuleUnique( const ShaderModuleCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::ShaderModule shaderModule;
- Result result = static_cast<Result>( d.vkCreateShaderModule( m_device, reinterpret_cast<const VkShaderModuleCreateInfo *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkShaderModule *>( &shaderModule ) ) );
- ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
- return createResultValue<VULKAN_HPP_NAMESPACE::ShaderModule, Dispatch>( result, shaderModule, VULKAN_HPP_NAMESPACE_STRING "::Device::createShaderModuleUnique", deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::createSharedSwapchainsKHR( uint32_t swapchainCount, const VULKAN_HPP_NAMESPACE::SwapchainCreateInfoKHR* pCreateInfos, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::SwapchainKHR* pSwapchains, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCreateSharedSwapchainsKHR( m_device, swapchainCount, reinterpret_cast<const VkSwapchainCreateInfoKHR *>( pCreateInfos ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ), reinterpret_cast< VkSwapchainKHR *>( pSwapchains ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename SwapchainKHRAllocator, typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<std::vector<SwapchainKHR, SwapchainKHRAllocator>>::type Device::createSharedSwapchainsKHR( ArrayProxy<const VULKAN_HPP_NAMESPACE::SwapchainCreateInfoKHR> const & createInfos, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- std::vector<SwapchainKHR, SwapchainKHRAllocator> swapchains( createInfos.size() );
- Result result = static_cast<Result>( d.vkCreateSharedSwapchainsKHR( m_device, createInfos.size(), reinterpret_cast<const VkSwapchainCreateInfoKHR *>( createInfos.data() ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkSwapchainKHR *>( swapchains.data() ) ) );
- return createResultValue( result, swapchains, VULKAN_HPP_NAMESPACE_STRING "::Device::createSharedSwapchainsKHR" );
- }
-
- template <typename SwapchainKHRAllocator, typename Dispatch, typename B, typename std::enable_if<std::is_same<typename B::value_type, SwapchainKHR>::value, int>::type >
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<std::vector<SwapchainKHR, SwapchainKHRAllocator>>::type Device::createSharedSwapchainsKHR( ArrayProxy<const VULKAN_HPP_NAMESPACE::SwapchainCreateInfoKHR> const & createInfos, Optional<const AllocationCallbacks> allocator, SwapchainKHRAllocator & swapchainKHRAllocator, Dispatch const & d ) const
- {
- std::vector<SwapchainKHR, SwapchainKHRAllocator> swapchains( createInfos.size(), swapchainKHRAllocator );
- Result result = static_cast<Result>( d.vkCreateSharedSwapchainsKHR( m_device, createInfos.size(), reinterpret_cast<const VkSwapchainCreateInfoKHR *>( createInfos.data() ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkSwapchainKHR *>( swapchains.data() ) ) );
- return createResultValue( result, swapchains, VULKAN_HPP_NAMESPACE_STRING "::Device::createSharedSwapchainsKHR" );
- }
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<SwapchainKHR>::type Device::createSharedSwapchainKHR( const SwapchainCreateInfoKHR & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- SwapchainKHR swapchain;
- Result result = static_cast<Result>( d.vkCreateSharedSwapchainsKHR( m_device, 1, reinterpret_cast<const VkSwapchainCreateInfoKHR *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkSwapchainKHR *>( &swapchain ) ) );
- return createResultValue( result, swapchain, VULKAN_HPP_NAMESPACE_STRING "::Device::createSharedSwapchainKHR" );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch, typename SwapchainKHRAllocator>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<std::vector<UniqueHandle<SwapchainKHR, Dispatch>, SwapchainKHRAllocator>>::type Device::createSharedSwapchainsKHRUnique( ArrayProxy<const VULKAN_HPP_NAMESPACE::SwapchainCreateInfoKHR> const & createInfos, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- std::vector<UniqueHandle<SwapchainKHR, Dispatch>, SwapchainKHRAllocator> uniqueSwapchains;
- std::vector<SwapchainKHR> swapchains( createInfos.size() );
- Result result = static_cast<Result>( d.vkCreateSharedSwapchainsKHR( m_device, createInfos.size(), reinterpret_cast<const VkSwapchainCreateInfoKHR *>( createInfos.data() ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkSwapchainKHR *>( swapchains.data() ) ) );
- if ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess )
- {
- uniqueSwapchains.reserve( createInfos.size() );
- ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
- for ( size_t i=0; i < createInfos.size(); i++ )
- {
- uniqueSwapchains.push_back( UniqueHandle<SwapchainKHR, Dispatch>( swapchains[i], deleter ) );
- }
- }
- return createResultValue( result, std::move( uniqueSwapchains ), VULKAN_HPP_NAMESPACE_STRING "::Device::createSharedSwapchainsKHRUnique" );
- }
-
- template <typename Dispatch, typename SwapchainKHRAllocator, typename B, typename std::enable_if<std::is_same<typename B::value_type, UniqueHandle<SwapchainKHR, Dispatch>>::value, int>::type >
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<std::vector<UniqueHandle<SwapchainKHR, Dispatch>, SwapchainKHRAllocator>>::type Device::createSharedSwapchainsKHRUnique( ArrayProxy<const VULKAN_HPP_NAMESPACE::SwapchainCreateInfoKHR> const & createInfos, Optional<const AllocationCallbacks> allocator, SwapchainKHRAllocator & swapchainKHRAllocator, Dispatch const & d ) const
- {
- std::vector<UniqueHandle<SwapchainKHR, Dispatch>, SwapchainKHRAllocator> uniqueSwapchains( swapchainKHRAllocator );
- std::vector<SwapchainKHR> swapchains( createInfos.size() );
- Result result = static_cast<Result>( d.vkCreateSharedSwapchainsKHR( m_device, createInfos.size(), reinterpret_cast<const VkSwapchainCreateInfoKHR *>( createInfos.data() ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkSwapchainKHR *>( swapchains.data() ) ) );
- if ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess )
- {
- uniqueSwapchains.reserve( createInfos.size() );
- ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
- for ( size_t i=0; i < createInfos.size(); i++ )
- {
- uniqueSwapchains.push_back( UniqueHandle<SwapchainKHR, Dispatch>( swapchains[i], deleter ) );
- }
- }
- return createResultValue( result, std::move( uniqueSwapchains ), VULKAN_HPP_NAMESPACE_STRING "::Device::createSharedSwapchainsKHRUnique" );
- }
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<SwapchainKHR, Dispatch>>::type Device::createSharedSwapchainKHRUnique( const SwapchainCreateInfoKHR & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- SwapchainKHR swapchain;
- Result result = static_cast<Result>( d.vkCreateSharedSwapchainsKHR( m_device, 1, reinterpret_cast<const VkSwapchainCreateInfoKHR *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkSwapchainKHR *>( &swapchain ) ) );
- ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
- return createResultValue<SwapchainKHR, Dispatch>( result, swapchain, VULKAN_HPP_NAMESPACE_STRING "::Device::createSharedSwapchainKHRUnique", deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::createSwapchainKHR( const VULKAN_HPP_NAMESPACE::SwapchainCreateInfoKHR* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::SwapchainKHR* pSwapchain, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCreateSwapchainKHR( m_device, reinterpret_cast<const VkSwapchainCreateInfoKHR *>( pCreateInfo ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ), reinterpret_cast< VkSwapchainKHR *>( pSwapchain ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::SwapchainKHR>::type Device::createSwapchainKHR( const SwapchainCreateInfoKHR & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain;
- Result result = static_cast<Result>( d.vkCreateSwapchainKHR( m_device, reinterpret_cast<const VkSwapchainCreateInfoKHR *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkSwapchainKHR *>( &swapchain ) ) );
- return createResultValue( result, swapchain, VULKAN_HPP_NAMESPACE_STRING "::Device::createSwapchainKHR" );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SwapchainKHR, Dispatch>>::type Device::createSwapchainKHRUnique( const SwapchainCreateInfoKHR & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain;
- Result result = static_cast<Result>( d.vkCreateSwapchainKHR( m_device, reinterpret_cast<const VkSwapchainCreateInfoKHR *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkSwapchainKHR *>( &swapchain ) ) );
- ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
- return createResultValue<VULKAN_HPP_NAMESPACE::SwapchainKHR, Dispatch>( result, swapchain, VULKAN_HPP_NAMESPACE_STRING "::Device::createSwapchainKHRUnique", deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::createValidationCacheEXT( const VULKAN_HPP_NAMESPACE::ValidationCacheCreateInfoEXT* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::ValidationCacheEXT* pValidationCache, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCreateValidationCacheEXT( m_device, reinterpret_cast<const VkValidationCacheCreateInfoEXT *>( pCreateInfo ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ), reinterpret_cast< VkValidationCacheEXT *>( pValidationCache ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::ValidationCacheEXT>::type Device::createValidationCacheEXT( const ValidationCacheCreateInfoEXT & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::ValidationCacheEXT validationCache;
- Result result = static_cast<Result>( d.vkCreateValidationCacheEXT( m_device, reinterpret_cast<const VkValidationCacheCreateInfoEXT *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkValidationCacheEXT *>( &validationCache ) ) );
- return createResultValue( result, validationCache, VULKAN_HPP_NAMESPACE_STRING "::Device::createValidationCacheEXT" );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch>
- VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::ValidationCacheEXT, Dispatch>>::type Device::createValidationCacheEXTUnique( const ValidationCacheCreateInfoEXT & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::ValidationCacheEXT validationCache;
- Result result = static_cast<Result>( d.vkCreateValidationCacheEXT( m_device, reinterpret_cast<const VkValidationCacheCreateInfoEXT *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkValidationCacheEXT *>( &validationCache ) ) );
- ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
- return createResultValue<VULKAN_HPP_NAMESPACE::ValidationCacheEXT, Dispatch>( result, validationCache, VULKAN_HPP_NAMESPACE_STRING "::Device::createValidationCacheEXTUnique", deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::debugMarkerSetObjectNameEXT( const VULKAN_HPP_NAMESPACE::DebugMarkerObjectNameInfoEXT* pNameInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkDebugMarkerSetObjectNameEXT( m_device, reinterpret_cast<const VkDebugMarkerObjectNameInfoEXT *>( pNameInfo ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type Device::debugMarkerSetObjectNameEXT( const DebugMarkerObjectNameInfoEXT & nameInfo, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkDebugMarkerSetObjectNameEXT( m_device, reinterpret_cast<const VkDebugMarkerObjectNameInfoEXT *>( &nameInfo ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::debugMarkerSetObjectNameEXT" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::debugMarkerSetObjectTagEXT( const VULKAN_HPP_NAMESPACE::DebugMarkerObjectTagInfoEXT* pTagInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkDebugMarkerSetObjectTagEXT( m_device, reinterpret_cast<const VkDebugMarkerObjectTagInfoEXT *>( pTagInfo ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type Device::debugMarkerSetObjectTagEXT( const DebugMarkerObjectTagInfoEXT & tagInfo, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkDebugMarkerSetObjectTagEXT( m_device, reinterpret_cast<const VkDebugMarkerObjectTagInfoEXT *>( &tagInfo ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::debugMarkerSetObjectTagEXT" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::deferredOperationJoinKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR operation, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkDeferredOperationJoinKHR( m_device, static_cast<VkDeferredOperationKHR>( operation ) ) );
- }
-#else
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::deferredOperationJoinKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR operation, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkDeferredOperationJoinKHR( m_device, static_cast<VkDeferredOperationKHR>( operation ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::deferredOperationJoinKHR", { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::eThreadDoneKHR, VULKAN_HPP_NAMESPACE::Result::eThreadIdleKHR } );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroyAccelerationStructureKHR( VULKAN_HPP_NAMESPACE::AccelerationStructureKHR accelerationStructure, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyAccelerationStructureKHR( m_device, static_cast<VkAccelerationStructureKHR>( accelerationStructure ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroyAccelerationStructureKHR( VULKAN_HPP_NAMESPACE::AccelerationStructureKHR accelerationStructure, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyAccelerationStructureKHR( m_device, static_cast<VkAccelerationStructureKHR>( accelerationStructure ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::AccelerationStructureKHR accelerationStructure, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyAccelerationStructureKHR( m_device, static_cast<VkAccelerationStructureKHR>( accelerationStructure ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::AccelerationStructureKHR accelerationStructure, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyAccelerationStructureKHR( m_device, static_cast<VkAccelerationStructureKHR>( accelerationStructure ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroyAccelerationStructureNV( VULKAN_HPP_NAMESPACE::AccelerationStructureNV accelerationStructure, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyAccelerationStructureNV( m_device, static_cast<VkAccelerationStructureNV>( accelerationStructure ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroyAccelerationStructureNV( VULKAN_HPP_NAMESPACE::AccelerationStructureNV accelerationStructure, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyAccelerationStructureNV( m_device, static_cast<VkAccelerationStructureNV>( accelerationStructure ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::AccelerationStructureNV accelerationStructure, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyAccelerationStructureNV( m_device, static_cast<VkAccelerationStructureNV>( accelerationStructure ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::AccelerationStructureNV accelerationStructure, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyAccelerationStructureNV( m_device, static_cast<VkAccelerationStructureNV>( accelerationStructure ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroyBuffer( VULKAN_HPP_NAMESPACE::Buffer buffer, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyBuffer( m_device, static_cast<VkBuffer>( buffer ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroyBuffer( VULKAN_HPP_NAMESPACE::Buffer buffer, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyBuffer( m_device, static_cast<VkBuffer>( buffer ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::Buffer buffer, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyBuffer( m_device, static_cast<VkBuffer>( buffer ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::Buffer buffer, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyBuffer( m_device, static_cast<VkBuffer>( buffer ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroyBufferView( VULKAN_HPP_NAMESPACE::BufferView bufferView, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyBufferView( m_device, static_cast<VkBufferView>( bufferView ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroyBufferView( VULKAN_HPP_NAMESPACE::BufferView bufferView, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyBufferView( m_device, static_cast<VkBufferView>( bufferView ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::BufferView bufferView, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyBufferView( m_device, static_cast<VkBufferView>( bufferView ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::BufferView bufferView, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyBufferView( m_device, static_cast<VkBufferView>( bufferView ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroyCommandPool( VULKAN_HPP_NAMESPACE::CommandPool commandPool, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyCommandPool( m_device, static_cast<VkCommandPool>( commandPool ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroyCommandPool( VULKAN_HPP_NAMESPACE::CommandPool commandPool, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyCommandPool( m_device, static_cast<VkCommandPool>( commandPool ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::CommandPool commandPool, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyCommandPool( m_device, static_cast<VkCommandPool>( commandPool ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::CommandPool commandPool, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyCommandPool( m_device, static_cast<VkCommandPool>( commandPool ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroyDeferredOperationKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR operation, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyDeferredOperationKHR( m_device, static_cast<VkDeferredOperationKHR>( operation ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroyDeferredOperationKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR operation, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyDeferredOperationKHR( m_device, static_cast<VkDeferredOperationKHR>( operation ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::DeferredOperationKHR operation, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyDeferredOperationKHR( m_device, static_cast<VkDeferredOperationKHR>( operation ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::DeferredOperationKHR operation, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyDeferredOperationKHR( m_device, static_cast<VkDeferredOperationKHR>( operation ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroyDescriptorPool( VULKAN_HPP_NAMESPACE::DescriptorPool descriptorPool, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyDescriptorPool( m_device, static_cast<VkDescriptorPool>( descriptorPool ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroyDescriptorPool( VULKAN_HPP_NAMESPACE::DescriptorPool descriptorPool, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyDescriptorPool( m_device, static_cast<VkDescriptorPool>( descriptorPool ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::DescriptorPool descriptorPool, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyDescriptorPool( m_device, static_cast<VkDescriptorPool>( descriptorPool ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::DescriptorPool descriptorPool, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyDescriptorPool( m_device, static_cast<VkDescriptorPool>( descriptorPool ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroyDescriptorSetLayout( VULKAN_HPP_NAMESPACE::DescriptorSetLayout descriptorSetLayout, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyDescriptorSetLayout( m_device, static_cast<VkDescriptorSetLayout>( descriptorSetLayout ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroyDescriptorSetLayout( VULKAN_HPP_NAMESPACE::DescriptorSetLayout descriptorSetLayout, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyDescriptorSetLayout( m_device, static_cast<VkDescriptorSetLayout>( descriptorSetLayout ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::DescriptorSetLayout descriptorSetLayout, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyDescriptorSetLayout( m_device, static_cast<VkDescriptorSetLayout>( descriptorSetLayout ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::DescriptorSetLayout descriptorSetLayout, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyDescriptorSetLayout( m_device, static_cast<VkDescriptorSetLayout>( descriptorSetLayout ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroyDescriptorUpdateTemplate( VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate descriptorUpdateTemplate, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyDescriptorUpdateTemplate( m_device, static_cast<VkDescriptorUpdateTemplate>( descriptorUpdateTemplate ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroyDescriptorUpdateTemplate( VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate descriptorUpdateTemplate, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyDescriptorUpdateTemplate( m_device, static_cast<VkDescriptorUpdateTemplate>( descriptorUpdateTemplate ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroyDescriptorUpdateTemplateKHR( VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate descriptorUpdateTemplate, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyDescriptorUpdateTemplateKHR( m_device, static_cast<VkDescriptorUpdateTemplate>( descriptorUpdateTemplate ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroyDescriptorUpdateTemplateKHR( VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate descriptorUpdateTemplate, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyDescriptorUpdateTemplateKHR( m_device, static_cast<VkDescriptorUpdateTemplate>( descriptorUpdateTemplate ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate descriptorUpdateTemplate, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyDescriptorUpdateTemplate( m_device, static_cast<VkDescriptorUpdateTemplate>( descriptorUpdateTemplate ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate descriptorUpdateTemplate, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyDescriptorUpdateTemplate( m_device, static_cast<VkDescriptorUpdateTemplate>( descriptorUpdateTemplate ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroy( const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyDevice( m_device, reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroy( Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyDevice( m_device, reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroyEvent( VULKAN_HPP_NAMESPACE::Event event, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyEvent( m_device, static_cast<VkEvent>( event ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroyEvent( VULKAN_HPP_NAMESPACE::Event event, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyEvent( m_device, static_cast<VkEvent>( event ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::Event event, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyEvent( m_device, static_cast<VkEvent>( event ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::Event event, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyEvent( m_device, static_cast<VkEvent>( event ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroyFence( VULKAN_HPP_NAMESPACE::Fence fence, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyFence( m_device, static_cast<VkFence>( fence ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroyFence( VULKAN_HPP_NAMESPACE::Fence fence, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyFence( m_device, static_cast<VkFence>( fence ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::Fence fence, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyFence( m_device, static_cast<VkFence>( fence ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::Fence fence, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyFence( m_device, static_cast<VkFence>( fence ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroyFramebuffer( VULKAN_HPP_NAMESPACE::Framebuffer framebuffer, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyFramebuffer( m_device, static_cast<VkFramebuffer>( framebuffer ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroyFramebuffer( VULKAN_HPP_NAMESPACE::Framebuffer framebuffer, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyFramebuffer( m_device, static_cast<VkFramebuffer>( framebuffer ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::Framebuffer framebuffer, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyFramebuffer( m_device, static_cast<VkFramebuffer>( framebuffer ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::Framebuffer framebuffer, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyFramebuffer( m_device, static_cast<VkFramebuffer>( framebuffer ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroyImage( VULKAN_HPP_NAMESPACE::Image image, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyImage( m_device, static_cast<VkImage>( image ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroyImage( VULKAN_HPP_NAMESPACE::Image image, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyImage( m_device, static_cast<VkImage>( image ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::Image image, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyImage( m_device, static_cast<VkImage>( image ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::Image image, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyImage( m_device, static_cast<VkImage>( image ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroyImageView( VULKAN_HPP_NAMESPACE::ImageView imageView, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyImageView( m_device, static_cast<VkImageView>( imageView ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroyImageView( VULKAN_HPP_NAMESPACE::ImageView imageView, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyImageView( m_device, static_cast<VkImageView>( imageView ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::ImageView imageView, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyImageView( m_device, static_cast<VkImageView>( imageView ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::ImageView imageView, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyImageView( m_device, static_cast<VkImageView>( imageView ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroyIndirectCommandsLayoutNV( VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV indirectCommandsLayout, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyIndirectCommandsLayoutNV( m_device, static_cast<VkIndirectCommandsLayoutNV>( indirectCommandsLayout ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroyIndirectCommandsLayoutNV( VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV indirectCommandsLayout, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyIndirectCommandsLayoutNV( m_device, static_cast<VkIndirectCommandsLayoutNV>( indirectCommandsLayout ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV indirectCommandsLayout, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyIndirectCommandsLayoutNV( m_device, static_cast<VkIndirectCommandsLayoutNV>( indirectCommandsLayout ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV indirectCommandsLayout, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyIndirectCommandsLayoutNV( m_device, static_cast<VkIndirectCommandsLayoutNV>( indirectCommandsLayout ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroyPipeline( VULKAN_HPP_NAMESPACE::Pipeline pipeline, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyPipeline( m_device, static_cast<VkPipeline>( pipeline ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroyPipeline( VULKAN_HPP_NAMESPACE::Pipeline pipeline, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyPipeline( m_device, static_cast<VkPipeline>( pipeline ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::Pipeline pipeline, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyPipeline( m_device, static_cast<VkPipeline>( pipeline ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::Pipeline pipeline, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyPipeline( m_device, static_cast<VkPipeline>( pipeline ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroyPipelineCache( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyPipelineCache( m_device, static_cast<VkPipelineCache>( pipelineCache ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroyPipelineCache( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyPipelineCache( m_device, static_cast<VkPipelineCache>( pipelineCache ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyPipelineCache( m_device, static_cast<VkPipelineCache>( pipelineCache ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyPipelineCache( m_device, static_cast<VkPipelineCache>( pipelineCache ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroyPipelineLayout( VULKAN_HPP_NAMESPACE::PipelineLayout pipelineLayout, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyPipelineLayout( m_device, static_cast<VkPipelineLayout>( pipelineLayout ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroyPipelineLayout( VULKAN_HPP_NAMESPACE::PipelineLayout pipelineLayout, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyPipelineLayout( m_device, static_cast<VkPipelineLayout>( pipelineLayout ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::PipelineLayout pipelineLayout, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyPipelineLayout( m_device, static_cast<VkPipelineLayout>( pipelineLayout ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::PipelineLayout pipelineLayout, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyPipelineLayout( m_device, static_cast<VkPipelineLayout>( pipelineLayout ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroyPrivateDataSlotEXT( VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT privateDataSlot, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyPrivateDataSlotEXT( m_device, static_cast<VkPrivateDataSlotEXT>( privateDataSlot ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroyPrivateDataSlotEXT( VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT privateDataSlot, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyPrivateDataSlotEXT( m_device, static_cast<VkPrivateDataSlotEXT>( privateDataSlot ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT privateDataSlot, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyPrivateDataSlotEXT( m_device, static_cast<VkPrivateDataSlotEXT>( privateDataSlot ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT privateDataSlot, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyPrivateDataSlotEXT( m_device, static_cast<VkPrivateDataSlotEXT>( privateDataSlot ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroyQueryPool( VULKAN_HPP_NAMESPACE::QueryPool queryPool, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyQueryPool( m_device, static_cast<VkQueryPool>( queryPool ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroyQueryPool( VULKAN_HPP_NAMESPACE::QueryPool queryPool, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyQueryPool( m_device, static_cast<VkQueryPool>( queryPool ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::QueryPool queryPool, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyQueryPool( m_device, static_cast<VkQueryPool>( queryPool ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::QueryPool queryPool, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyQueryPool( m_device, static_cast<VkQueryPool>( queryPool ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroyRenderPass( VULKAN_HPP_NAMESPACE::RenderPass renderPass, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyRenderPass( m_device, static_cast<VkRenderPass>( renderPass ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroyRenderPass( VULKAN_HPP_NAMESPACE::RenderPass renderPass, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyRenderPass( m_device, static_cast<VkRenderPass>( renderPass ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::RenderPass renderPass, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyRenderPass( m_device, static_cast<VkRenderPass>( renderPass ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::RenderPass renderPass, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyRenderPass( m_device, static_cast<VkRenderPass>( renderPass ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroySampler( VULKAN_HPP_NAMESPACE::Sampler sampler, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroySampler( m_device, static_cast<VkSampler>( sampler ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroySampler( VULKAN_HPP_NAMESPACE::Sampler sampler, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroySampler( m_device, static_cast<VkSampler>( sampler ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::Sampler sampler, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroySampler( m_device, static_cast<VkSampler>( sampler ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::Sampler sampler, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroySampler( m_device, static_cast<VkSampler>( sampler ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroySamplerYcbcrConversion( VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion ycbcrConversion, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroySamplerYcbcrConversion( m_device, static_cast<VkSamplerYcbcrConversion>( ycbcrConversion ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroySamplerYcbcrConversion( VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion ycbcrConversion, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroySamplerYcbcrConversion( m_device, static_cast<VkSamplerYcbcrConversion>( ycbcrConversion ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroySamplerYcbcrConversionKHR( VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion ycbcrConversion, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroySamplerYcbcrConversionKHR( m_device, static_cast<VkSamplerYcbcrConversion>( ycbcrConversion ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroySamplerYcbcrConversionKHR( VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion ycbcrConversion, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroySamplerYcbcrConversionKHR( m_device, static_cast<VkSamplerYcbcrConversion>( ycbcrConversion ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion ycbcrConversion, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroySamplerYcbcrConversion( m_device, static_cast<VkSamplerYcbcrConversion>( ycbcrConversion ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion ycbcrConversion, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroySamplerYcbcrConversion( m_device, static_cast<VkSamplerYcbcrConversion>( ycbcrConversion ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroySemaphore( VULKAN_HPP_NAMESPACE::Semaphore semaphore, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroySemaphore( m_device, static_cast<VkSemaphore>( semaphore ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroySemaphore( VULKAN_HPP_NAMESPACE::Semaphore semaphore, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroySemaphore( m_device, static_cast<VkSemaphore>( semaphore ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::Semaphore semaphore, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroySemaphore( m_device, static_cast<VkSemaphore>( semaphore ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::Semaphore semaphore, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroySemaphore( m_device, static_cast<VkSemaphore>( semaphore ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroyShaderModule( VULKAN_HPP_NAMESPACE::ShaderModule shaderModule, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyShaderModule( m_device, static_cast<VkShaderModule>( shaderModule ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroyShaderModule( VULKAN_HPP_NAMESPACE::ShaderModule shaderModule, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyShaderModule( m_device, static_cast<VkShaderModule>( shaderModule ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::ShaderModule shaderModule, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyShaderModule( m_device, static_cast<VkShaderModule>( shaderModule ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::ShaderModule shaderModule, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyShaderModule( m_device, static_cast<VkShaderModule>( shaderModule ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroySwapchainKHR( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroySwapchainKHR( m_device, static_cast<VkSwapchainKHR>( swapchain ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroySwapchainKHR( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroySwapchainKHR( m_device, static_cast<VkSwapchainKHR>( swapchain ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroySwapchainKHR( m_device, static_cast<VkSwapchainKHR>( swapchain ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroySwapchainKHR( m_device, static_cast<VkSwapchainKHR>( swapchain ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroyValidationCacheEXT( VULKAN_HPP_NAMESPACE::ValidationCacheEXT validationCache, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyValidationCacheEXT( m_device, static_cast<VkValidationCacheEXT>( validationCache ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroyValidationCacheEXT( VULKAN_HPP_NAMESPACE::ValidationCacheEXT validationCache, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyValidationCacheEXT( m_device, static_cast<VkValidationCacheEXT>( validationCache ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::ValidationCacheEXT validationCache, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyValidationCacheEXT( m_device, static_cast<VkValidationCacheEXT>( validationCache ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::ValidationCacheEXT validationCache, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyValidationCacheEXT( m_device, static_cast<VkValidationCacheEXT>( validationCache ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::waitIdle( Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkDeviceWaitIdle( m_device ) );
- }
-#else
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type Device::waitIdle( Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkDeviceWaitIdle( m_device ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::waitIdle" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::displayPowerControlEXT( VULKAN_HPP_NAMESPACE::DisplayKHR display, const VULKAN_HPP_NAMESPACE::DisplayPowerInfoEXT* pDisplayPowerInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkDisplayPowerControlEXT( m_device, static_cast<VkDisplayKHR>( display ), reinterpret_cast<const VkDisplayPowerInfoEXT *>( pDisplayPowerInfo ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE typename ResultValueType<void>::type Device::displayPowerControlEXT( VULKAN_HPP_NAMESPACE::DisplayKHR display, const DisplayPowerInfoEXT & displayPowerInfo, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkDisplayPowerControlEXT( m_device, static_cast<VkDisplayKHR>( display ), reinterpret_cast<const VkDisplayPowerInfoEXT *>( &displayPowerInfo ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::displayPowerControlEXT" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::flushMappedMemoryRanges( uint32_t memoryRangeCount, const VULKAN_HPP_NAMESPACE::MappedMemoryRange* pMemoryRanges, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkFlushMappedMemoryRanges( m_device, memoryRangeCount, reinterpret_cast<const VkMappedMemoryRange *>( pMemoryRanges ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type Device::flushMappedMemoryRanges( ArrayProxy<const VULKAN_HPP_NAMESPACE::MappedMemoryRange> const & memoryRanges, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkFlushMappedMemoryRanges( m_device, memoryRanges.size(), reinterpret_cast<const VkMappedMemoryRange *>( memoryRanges.data() ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::flushMappedMemoryRanges" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::freeCommandBuffers( VULKAN_HPP_NAMESPACE::CommandPool commandPool, uint32_t commandBufferCount, const VULKAN_HPP_NAMESPACE::CommandBuffer* pCommandBuffers, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkFreeCommandBuffers( m_device, static_cast<VkCommandPool>( commandPool ), commandBufferCount, reinterpret_cast<const VkCommandBuffer *>( pCommandBuffers ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::freeCommandBuffers( VULKAN_HPP_NAMESPACE::CommandPool commandPool, ArrayProxy<const VULKAN_HPP_NAMESPACE::CommandBuffer> const & commandBuffers, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkFreeCommandBuffers( m_device, static_cast<VkCommandPool>( commandPool ), commandBuffers.size(), reinterpret_cast<const VkCommandBuffer *>( commandBuffers.data() ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::free( VULKAN_HPP_NAMESPACE::CommandPool commandPool, uint32_t commandBufferCount, const VULKAN_HPP_NAMESPACE::CommandBuffer* pCommandBuffers, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkFreeCommandBuffers( m_device, static_cast<VkCommandPool>( commandPool ), commandBufferCount, reinterpret_cast<const VkCommandBuffer *>( pCommandBuffers ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::free( VULKAN_HPP_NAMESPACE::CommandPool commandPool, ArrayProxy<const VULKAN_HPP_NAMESPACE::CommandBuffer> const & commandBuffers, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkFreeCommandBuffers( m_device, static_cast<VkCommandPool>( commandPool ), commandBuffers.size(), reinterpret_cast<const VkCommandBuffer *>( commandBuffers.data() ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE Result Device::freeDescriptorSets( VULKAN_HPP_NAMESPACE::DescriptorPool descriptorPool, uint32_t descriptorSetCount, const VULKAN_HPP_NAMESPACE::DescriptorSet* pDescriptorSets, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkFreeDescriptorSets( m_device, static_cast<VkDescriptorPool>( descriptorPool ), descriptorSetCount, reinterpret_cast<const VkDescriptorSet *>( pDescriptorSets ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE typename ResultValueType<void>::type Device::freeDescriptorSets( VULKAN_HPP_NAMESPACE::DescriptorPool descriptorPool, ArrayProxy<const VULKAN_HPP_NAMESPACE::DescriptorSet> const & descriptorSets, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkFreeDescriptorSets( m_device, static_cast<VkDescriptorPool>( descriptorPool ), descriptorSets.size(), reinterpret_cast<const VkDescriptorSet *>( descriptorSets.data() ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::freeDescriptorSets" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE Result Device::free( VULKAN_HPP_NAMESPACE::DescriptorPool descriptorPool, uint32_t descriptorSetCount, const VULKAN_HPP_NAMESPACE::DescriptorSet* pDescriptorSets, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkFreeDescriptorSets( m_device, static_cast<VkDescriptorPool>( descriptorPool ), descriptorSetCount, reinterpret_cast<const VkDescriptorSet *>( pDescriptorSets ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE typename ResultValueType<void>::type Device::free( VULKAN_HPP_NAMESPACE::DescriptorPool descriptorPool, ArrayProxy<const VULKAN_HPP_NAMESPACE::DescriptorSet> const & descriptorSets, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkFreeDescriptorSets( m_device, static_cast<VkDescriptorPool>( descriptorPool ), descriptorSets.size(), reinterpret_cast<const VkDescriptorSet *>( descriptorSets.data() ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::free" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::freeMemory( VULKAN_HPP_NAMESPACE::DeviceMemory memory, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkFreeMemory( m_device, static_cast<VkDeviceMemory>( memory ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::freeMemory( VULKAN_HPP_NAMESPACE::DeviceMemory memory, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkFreeMemory( m_device, static_cast<VkDeviceMemory>( memory ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::free( VULKAN_HPP_NAMESPACE::DeviceMemory memory, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkFreeMemory( m_device, static_cast<VkDeviceMemory>( memory ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::free( VULKAN_HPP_NAMESPACE::DeviceMemory memory, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkFreeMemory( m_device, static_cast<VkDeviceMemory>( memory ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::getAccelerationStructureBuildSizesKHR( VULKAN_HPP_NAMESPACE::AccelerationStructureBuildTypeKHR buildType, const VULKAN_HPP_NAMESPACE::AccelerationStructureBuildGeometryInfoKHR* pBuildInfo, const uint32_t* pMaxPrimitiveCounts, VULKAN_HPP_NAMESPACE::AccelerationStructureBuildSizesInfoKHR* pSizeInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkGetAccelerationStructureBuildSizesKHR( m_device, static_cast<VkAccelerationStructureBuildTypeKHR>( buildType ), reinterpret_cast<const VkAccelerationStructureBuildGeometryInfoKHR *>( pBuildInfo ), pMaxPrimitiveCounts, reinterpret_cast< VkAccelerationStructureBuildSizesInfoKHR *>( pSizeInfo ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::AccelerationStructureBuildSizesInfoKHR Device::getAccelerationStructureBuildSizesKHR( VULKAN_HPP_NAMESPACE::AccelerationStructureBuildTypeKHR buildType, const AccelerationStructureBuildGeometryInfoKHR & buildInfo, ArrayProxy<const uint32_t> const & maxPrimitiveCounts, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS
- {
-#ifdef VULKAN_HPP_NO_EXCEPTIONS
- VULKAN_HPP_ASSERT( maxPrimitiveCounts.size() == buildInfo.geometryCount );
-#else
- if ( maxPrimitiveCounts.size() != buildInfo.geometryCount )
- {
- throw LogicError( VULKAN_HPP_NAMESPACE_STRING "::Device::getAccelerationStructureBuildSizesKHR: maxPrimitiveCounts.size() != buildInfo.geometryCount" );
- }
-#endif /*VULKAN_HPP_NO_EXCEPTIONS*/
- VULKAN_HPP_NAMESPACE::AccelerationStructureBuildSizesInfoKHR sizeInfo;
- d.vkGetAccelerationStructureBuildSizesKHR( m_device, static_cast<VkAccelerationStructureBuildTypeKHR>( buildType ), reinterpret_cast<const VkAccelerationStructureBuildGeometryInfoKHR *>( &buildInfo ), maxPrimitiveCounts.data(), reinterpret_cast<VkAccelerationStructureBuildSizesInfoKHR *>( &sizeInfo ) );
- return sizeInfo;
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE DeviceAddress Device::getAccelerationStructureAddressKHR( const VULKAN_HPP_NAMESPACE::AccelerationStructureDeviceAddressInfoKHR* pInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<DeviceAddress>( d.vkGetAccelerationStructureDeviceAddressKHR( m_device, reinterpret_cast<const VkAccelerationStructureDeviceAddressInfoKHR *>( pInfo ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE DeviceAddress Device::getAccelerationStructureAddressKHR( const AccelerationStructureDeviceAddressInfoKHR & info, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return d.vkGetAccelerationStructureDeviceAddressKHR( m_device, reinterpret_cast<const VkAccelerationStructureDeviceAddressInfoKHR *>( &info ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getAccelerationStructureHandleNV( VULKAN_HPP_NAMESPACE::AccelerationStructureNV accelerationStructure, size_t dataSize, void* pData, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetAccelerationStructureHandleNV( m_device, static_cast<VkAccelerationStructureNV>( accelerationStructure ), dataSize, pData ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename T, typename Dispatch>
- VULKAN_HPP_DEPRECATED( "This function is deprecated. Use one of the other flavours of it.")
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type Device::getAccelerationStructureHandleNV( VULKAN_HPP_NAMESPACE::AccelerationStructureNV accelerationStructure, ArrayProxy<T> const &data, Dispatch const &d ) const
- {
- Result result = static_cast<Result>( d.vkGetAccelerationStructureHandleNV( m_device, static_cast<VkAccelerationStructureNV>( accelerationStructure ), data.size() * sizeof( T ) , reinterpret_cast<void*>( data.data() ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING"::Device::getAccelerationStructureHandleNV" );
-
- }
-
- template <typename T, typename Allocator, typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<std::vector<T,Allocator>>::type Device::getAccelerationStructureHandleNV( VULKAN_HPP_NAMESPACE::AccelerationStructureNV accelerationStructure, size_t dataSize, Dispatch const & d ) const
- {
- VULKAN_HPP_ASSERT( dataSize % sizeof( T ) == 0 );
- std::vector<T,Allocator> data( dataSize / sizeof( T ) );
- Result result = static_cast<Result>( d.vkGetAccelerationStructureHandleNV( m_device, static_cast<VkAccelerationStructureNV>( accelerationStructure ), data.size() * sizeof( T ), reinterpret_cast<void *>( data.data() ) ) );
- return createResultValue( result, data, VULKAN_HPP_NAMESPACE_STRING "::Device::getAccelerationStructureHandleNV" );
- }
-
- template <typename T, typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<T>::type Device::getAccelerationStructureHandleNV( VULKAN_HPP_NAMESPACE::AccelerationStructureNV accelerationStructure, Dispatch const & d ) const
- {
- T data;
- Result result = static_cast<Result>( d.vkGetAccelerationStructureHandleNV( m_device, static_cast<VkAccelerationStructureNV>( accelerationStructure ), sizeof( T ), reinterpret_cast<void *>( &data ) ) );
- return createResultValue( result, data, VULKAN_HPP_NAMESPACE_STRING "::Device::getAccelerationStructureHandleNV" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::getAccelerationStructureMemoryRequirementsNV( const VULKAN_HPP_NAMESPACE::AccelerationStructureMemoryRequirementsInfoNV* pInfo, VULKAN_HPP_NAMESPACE::MemoryRequirements2KHR* pMemoryRequirements, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkGetAccelerationStructureMemoryRequirementsNV( m_device, reinterpret_cast<const VkAccelerationStructureMemoryRequirementsInfoNV *>( pInfo ), reinterpret_cast< VkMemoryRequirements2KHR *>( pMemoryRequirements ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::MemoryRequirements2KHR Device::getAccelerationStructureMemoryRequirementsNV( const AccelerationStructureMemoryRequirementsInfoNV & info, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- VULKAN_HPP_NAMESPACE::MemoryRequirements2KHR memoryRequirements;
- d.vkGetAccelerationStructureMemoryRequirementsNV( m_device, reinterpret_cast<const VkAccelerationStructureMemoryRequirementsInfoNV *>( &info ), reinterpret_cast<VkMemoryRequirements2KHR *>( &memoryRequirements ) );
- return memoryRequirements;
- }
-
- template <typename X, typename Y, typename... Z, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE StructureChain<X, Y, Z...> Device::getAccelerationStructureMemoryRequirementsNV( const AccelerationStructureMemoryRequirementsInfoNV & info, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- StructureChain<X, Y, Z...> structureChain;
- VULKAN_HPP_NAMESPACE::MemoryRequirements2KHR & memoryRequirements = structureChain.template get<VULKAN_HPP_NAMESPACE::MemoryRequirements2KHR>();
- d.vkGetAccelerationStructureMemoryRequirementsNV( m_device, reinterpret_cast<const VkAccelerationStructureMemoryRequirementsInfoNV *>( &info ), reinterpret_cast<VkMemoryRequirements2KHR *>( &memoryRequirements ) );
- return structureChain;
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-#ifdef VK_USE_PLATFORM_ANDROID_KHR
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getAndroidHardwareBufferPropertiesANDROID( const struct AHardwareBuffer* buffer, VULKAN_HPP_NAMESPACE::AndroidHardwareBufferPropertiesANDROID* pProperties, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetAndroidHardwareBufferPropertiesANDROID( m_device, buffer, reinterpret_cast< VkAndroidHardwareBufferPropertiesANDROID *>( pProperties ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::AndroidHardwareBufferPropertiesANDROID>::type Device::getAndroidHardwareBufferPropertiesANDROID( const struct AHardwareBuffer & buffer, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::AndroidHardwareBufferPropertiesANDROID properties;
- Result result = static_cast<Result>( d.vkGetAndroidHardwareBufferPropertiesANDROID( m_device, &buffer, reinterpret_cast<VkAndroidHardwareBufferPropertiesANDROID *>( &properties ) ) );
- return createResultValue( result, properties, VULKAN_HPP_NAMESPACE_STRING "::Device::getAndroidHardwareBufferPropertiesANDROID" );
- }
-
- template <typename X, typename Y, typename... Z, typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<StructureChain<X, Y, Z...>>::type Device::getAndroidHardwareBufferPropertiesANDROID( const struct AHardwareBuffer & buffer, Dispatch const & d ) const
- {
- StructureChain<X, Y, Z...> structureChain;
- VULKAN_HPP_NAMESPACE::AndroidHardwareBufferPropertiesANDROID & properties = structureChain.template get<VULKAN_HPP_NAMESPACE::AndroidHardwareBufferPropertiesANDROID>();
- Result result = static_cast<Result>( d.vkGetAndroidHardwareBufferPropertiesANDROID( m_device, &buffer, reinterpret_cast<VkAndroidHardwareBufferPropertiesANDROID *>( &properties ) ) );
- return createResultValue( result, structureChain, VULKAN_HPP_NAMESPACE_STRING"::Device::getAndroidHardwareBufferPropertiesANDROID" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE DeviceAddress Device::getBufferAddress( const VULKAN_HPP_NAMESPACE::BufferDeviceAddressInfo* pInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<DeviceAddress>( d.vkGetBufferDeviceAddress( m_device, reinterpret_cast<const VkBufferDeviceAddressInfo *>( pInfo ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE DeviceAddress Device::getBufferAddress( const BufferDeviceAddressInfo & info, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return d.vkGetBufferDeviceAddress( m_device, reinterpret_cast<const VkBufferDeviceAddressInfo *>( &info ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE DeviceAddress Device::getBufferAddressEXT( const VULKAN_HPP_NAMESPACE::BufferDeviceAddressInfo* pInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<DeviceAddress>( d.vkGetBufferDeviceAddressEXT( m_device, reinterpret_cast<const VkBufferDeviceAddressInfo *>( pInfo ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE DeviceAddress Device::getBufferAddressEXT( const BufferDeviceAddressInfo & info, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return d.vkGetBufferDeviceAddressEXT( m_device, reinterpret_cast<const VkBufferDeviceAddressInfo *>( &info ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE DeviceAddress Device::getBufferAddressKHR( const VULKAN_HPP_NAMESPACE::BufferDeviceAddressInfo* pInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<DeviceAddress>( d.vkGetBufferDeviceAddressKHR( m_device, reinterpret_cast<const VkBufferDeviceAddressInfo *>( pInfo ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE DeviceAddress Device::getBufferAddressKHR( const BufferDeviceAddressInfo & info, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return d.vkGetBufferDeviceAddressKHR( m_device, reinterpret_cast<const VkBufferDeviceAddressInfo *>( &info ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::getBufferMemoryRequirements( VULKAN_HPP_NAMESPACE::Buffer buffer, VULKAN_HPP_NAMESPACE::MemoryRequirements* pMemoryRequirements, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkGetBufferMemoryRequirements( m_device, static_cast<VkBuffer>( buffer ), reinterpret_cast< VkMemoryRequirements *>( pMemoryRequirements ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::MemoryRequirements Device::getBufferMemoryRequirements( VULKAN_HPP_NAMESPACE::Buffer buffer, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- VULKAN_HPP_NAMESPACE::MemoryRequirements memoryRequirements;
- d.vkGetBufferMemoryRequirements( m_device, static_cast<VkBuffer>( buffer ), reinterpret_cast<VkMemoryRequirements *>( &memoryRequirements ) );
- return memoryRequirements;
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::getBufferMemoryRequirements2( const VULKAN_HPP_NAMESPACE::BufferMemoryRequirementsInfo2* pInfo, VULKAN_HPP_NAMESPACE::MemoryRequirements2* pMemoryRequirements, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkGetBufferMemoryRequirements2( m_device, reinterpret_cast<const VkBufferMemoryRequirementsInfo2 *>( pInfo ), reinterpret_cast< VkMemoryRequirements2 *>( pMemoryRequirements ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::MemoryRequirements2 Device::getBufferMemoryRequirements2( const BufferMemoryRequirementsInfo2 & info, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- VULKAN_HPP_NAMESPACE::MemoryRequirements2 memoryRequirements;
- d.vkGetBufferMemoryRequirements2( m_device, reinterpret_cast<const VkBufferMemoryRequirementsInfo2 *>( &info ), reinterpret_cast<VkMemoryRequirements2 *>( &memoryRequirements ) );
- return memoryRequirements;
- }
-
- template <typename X, typename Y, typename... Z, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE StructureChain<X, Y, Z...> Device::getBufferMemoryRequirements2( const BufferMemoryRequirementsInfo2 & info, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- StructureChain<X, Y, Z...> structureChain;
- VULKAN_HPP_NAMESPACE::MemoryRequirements2 & memoryRequirements = structureChain.template get<VULKAN_HPP_NAMESPACE::MemoryRequirements2>();
- d.vkGetBufferMemoryRequirements2( m_device, reinterpret_cast<const VkBufferMemoryRequirementsInfo2 *>( &info ), reinterpret_cast<VkMemoryRequirements2 *>( &memoryRequirements ) );
- return structureChain;
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::getBufferMemoryRequirements2KHR( const VULKAN_HPP_NAMESPACE::BufferMemoryRequirementsInfo2* pInfo, VULKAN_HPP_NAMESPACE::MemoryRequirements2* pMemoryRequirements, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkGetBufferMemoryRequirements2KHR( m_device, reinterpret_cast<const VkBufferMemoryRequirementsInfo2 *>( pInfo ), reinterpret_cast< VkMemoryRequirements2 *>( pMemoryRequirements ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::MemoryRequirements2 Device::getBufferMemoryRequirements2KHR( const BufferMemoryRequirementsInfo2 & info, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- VULKAN_HPP_NAMESPACE::MemoryRequirements2 memoryRequirements;
- d.vkGetBufferMemoryRequirements2KHR( m_device, reinterpret_cast<const VkBufferMemoryRequirementsInfo2 *>( &info ), reinterpret_cast<VkMemoryRequirements2 *>( &memoryRequirements ) );
- return memoryRequirements;
- }
-
- template <typename X, typename Y, typename... Z, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE StructureChain<X, Y, Z...> Device::getBufferMemoryRequirements2KHR( const BufferMemoryRequirementsInfo2 & info, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- StructureChain<X, Y, Z...> structureChain;
- VULKAN_HPP_NAMESPACE::MemoryRequirements2 & memoryRequirements = structureChain.template get<VULKAN_HPP_NAMESPACE::MemoryRequirements2>();
- d.vkGetBufferMemoryRequirements2KHR( m_device, reinterpret_cast<const VkBufferMemoryRequirementsInfo2 *>( &info ), reinterpret_cast<VkMemoryRequirements2 *>( &memoryRequirements ) );
- return structureChain;
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE uint64_t Device::getBufferOpaqueCaptureAddress( const VULKAN_HPP_NAMESPACE::BufferDeviceAddressInfo* pInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return d.vkGetBufferOpaqueCaptureAddress( m_device, reinterpret_cast<const VkBufferDeviceAddressInfo *>( pInfo ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE uint64_t Device::getBufferOpaqueCaptureAddress( const BufferDeviceAddressInfo & info, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return d.vkGetBufferOpaqueCaptureAddress( m_device, reinterpret_cast<const VkBufferDeviceAddressInfo *>( &info ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE uint64_t Device::getBufferOpaqueCaptureAddressKHR( const VULKAN_HPP_NAMESPACE::BufferDeviceAddressInfo* pInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return d.vkGetBufferOpaqueCaptureAddressKHR( m_device, reinterpret_cast<const VkBufferDeviceAddressInfo *>( pInfo ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE uint64_t Device::getBufferOpaqueCaptureAddressKHR( const BufferDeviceAddressInfo & info, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return d.vkGetBufferOpaqueCaptureAddressKHR( m_device, reinterpret_cast<const VkBufferDeviceAddressInfo *>( &info ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getCalibratedTimestampsEXT( uint32_t timestampCount, const VULKAN_HPP_NAMESPACE::CalibratedTimestampInfoEXT* pTimestampInfos, uint64_t* pTimestamps, uint64_t* pMaxDeviation, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetCalibratedTimestampsEXT( m_device, timestampCount, reinterpret_cast<const VkCalibratedTimestampInfoEXT *>( pTimestampInfos ), pTimestamps, pMaxDeviation ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_DEPRECATED( "This function is deprecated. Use one of the other flavours of it.")
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<uint64_t>::type Device::getCalibratedTimestampsEXT( ArrayProxy<const VULKAN_HPP_NAMESPACE::CalibratedTimestampInfoEXT> const &timestampInfos, ArrayProxy<uint64_t> const &timestamps, Dispatch const &d ) const
- {
- #ifdef VULKAN_HPP_NO_EXCEPTIONS
- VULKAN_HPP_ASSERT( timestampInfos.size() == timestamps.size() );
-#else
- if ( timestampInfos.size() != timestamps.size() )
- {
- throw LogicError( VULKAN_HPP_NAMESPACE_STRING "::VkDevice::getCalibratedTimestampsEXT: timestampInfos.size() != timestamps.size()" );
- }
-#endif /*VULKAN_HPP_NO_EXCEPTIONS*/
- uint64_t maxDeviation;
- Result result = static_cast<Result>( d.vkGetCalibratedTimestampsEXT( m_device, timestampInfos.size() , reinterpret_cast<const VkCalibratedTimestampInfoEXT*>( timestampInfos.data() ), timestamps.data(), &maxDeviation ) );
- return createResultValue( result, maxDeviation, VULKAN_HPP_NAMESPACE_STRING"::Device::getCalibratedTimestampsEXT" );
-
- }
-
- template <typename Uint64_tAllocator, typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<std::pair<std::vector<uint64_t, Uint64_tAllocator>, uint64_t>>::type Device::getCalibratedTimestampsEXT( ArrayProxy<const VULKAN_HPP_NAMESPACE::CalibratedTimestampInfoEXT> const & timestampInfos, Dispatch const & d ) const
- {
- std::pair<std::vector<uint64_t, Uint64_tAllocator>,uint64_t> data( std::piecewise_construct, std::forward_as_tuple( timestampInfos.size() ), std::forward_as_tuple( 0 ) );
- std::vector<uint64_t, Uint64_tAllocator> & timestamps = data.first;
- uint64_t & maxDeviation = data.second;
- Result result = static_cast<Result>( d.vkGetCalibratedTimestampsEXT( m_device, timestampInfos.size(), reinterpret_cast<const VkCalibratedTimestampInfoEXT *>( timestampInfos.data() ), timestamps.data(), &maxDeviation ) );
- return createResultValue( result, data, VULKAN_HPP_NAMESPACE_STRING "::Device::getCalibratedTimestampsEXT" );
- }
-
- template <typename Uint64_tAllocator, typename Dispatch, typename B, typename std::enable_if<std::is_same<typename B::value_type, uint64_t>::value, int>::type >
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<std::pair<std::vector<uint64_t, Uint64_tAllocator>, uint64_t>>::type Device::getCalibratedTimestampsEXT( ArrayProxy<const VULKAN_HPP_NAMESPACE::CalibratedTimestampInfoEXT> const & timestampInfos, Uint64_tAllocator & uint64_tAllocator, Dispatch const & d ) const
- {
- std::pair<std::vector<uint64_t, Uint64_tAllocator>,uint64_t> data( std::piecewise_construct, std::forward_as_tuple( timestampInfos.size(), uint64_tAllocator ), std::forward_as_tuple( 0 ) );
- std::vector<uint64_t, Uint64_tAllocator> & timestamps = data.first;
- uint64_t & maxDeviation = data.second;
- Result result = static_cast<Result>( d.vkGetCalibratedTimestampsEXT( m_device, timestampInfos.size(), reinterpret_cast<const VkCalibratedTimestampInfoEXT *>( timestampInfos.data() ), timestamps.data(), &maxDeviation ) );
- return createResultValue( result, data, VULKAN_HPP_NAMESPACE_STRING "::Device::getCalibratedTimestampsEXT" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE uint32_t Device::getDeferredOperationMaxConcurrencyKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR operation, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return d.vkGetDeferredOperationMaxConcurrencyKHR( m_device, static_cast<VkDeferredOperationKHR>( operation ) );
- }
-
-
-#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getDeferredOperationResultKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR operation, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetDeferredOperationResultKHR( m_device, static_cast<VkDeferredOperationKHR>( operation ) ) );
- }
-#else
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getDeferredOperationResultKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR operation, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkGetDeferredOperationResultKHR( m_device, static_cast<VkDeferredOperationKHR>( operation ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::getDeferredOperationResultKHR", { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::eNotReady } );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::getDescriptorSetLayoutSupport( const VULKAN_HPP_NAMESPACE::DescriptorSetLayoutCreateInfo* pCreateInfo, VULKAN_HPP_NAMESPACE::DescriptorSetLayoutSupport* pSupport, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkGetDescriptorSetLayoutSupport( m_device, reinterpret_cast<const VkDescriptorSetLayoutCreateInfo *>( pCreateInfo ), reinterpret_cast< VkDescriptorSetLayoutSupport *>( pSupport ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::DescriptorSetLayoutSupport Device::getDescriptorSetLayoutSupport( const DescriptorSetLayoutCreateInfo & createInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- VULKAN_HPP_NAMESPACE::DescriptorSetLayoutSupport support;
- d.vkGetDescriptorSetLayoutSupport( m_device, reinterpret_cast<const VkDescriptorSetLayoutCreateInfo *>( &createInfo ), reinterpret_cast<VkDescriptorSetLayoutSupport *>( &support ) );
- return support;
- }
-
- template <typename X, typename Y, typename... Z, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE StructureChain<X, Y, Z...> Device::getDescriptorSetLayoutSupport( const DescriptorSetLayoutCreateInfo & createInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- StructureChain<X, Y, Z...> structureChain;
- VULKAN_HPP_NAMESPACE::DescriptorSetLayoutSupport & support = structureChain.template get<VULKAN_HPP_NAMESPACE::DescriptorSetLayoutSupport>();
- d.vkGetDescriptorSetLayoutSupport( m_device, reinterpret_cast<const VkDescriptorSetLayoutCreateInfo *>( &createInfo ), reinterpret_cast<VkDescriptorSetLayoutSupport *>( &support ) );
- return structureChain;
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::getDescriptorSetLayoutSupportKHR( const VULKAN_HPP_NAMESPACE::DescriptorSetLayoutCreateInfo* pCreateInfo, VULKAN_HPP_NAMESPACE::DescriptorSetLayoutSupport* pSupport, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkGetDescriptorSetLayoutSupportKHR( m_device, reinterpret_cast<const VkDescriptorSetLayoutCreateInfo *>( pCreateInfo ), reinterpret_cast< VkDescriptorSetLayoutSupport *>( pSupport ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::DescriptorSetLayoutSupport Device::getDescriptorSetLayoutSupportKHR( const DescriptorSetLayoutCreateInfo & createInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- VULKAN_HPP_NAMESPACE::DescriptorSetLayoutSupport support;
- d.vkGetDescriptorSetLayoutSupportKHR( m_device, reinterpret_cast<const VkDescriptorSetLayoutCreateInfo *>( &createInfo ), reinterpret_cast<VkDescriptorSetLayoutSupport *>( &support ) );
- return support;
- }
-
- template <typename X, typename Y, typename... Z, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE StructureChain<X, Y, Z...> Device::getDescriptorSetLayoutSupportKHR( const DescriptorSetLayoutCreateInfo & createInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- StructureChain<X, Y, Z...> structureChain;
- VULKAN_HPP_NAMESPACE::DescriptorSetLayoutSupport & support = structureChain.template get<VULKAN_HPP_NAMESPACE::DescriptorSetLayoutSupport>();
- d.vkGetDescriptorSetLayoutSupportKHR( m_device, reinterpret_cast<const VkDescriptorSetLayoutCreateInfo *>( &createInfo ), reinterpret_cast<VkDescriptorSetLayoutSupport *>( &support ) );
- return structureChain;
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::getAccelerationStructureCompatibilityKHR( const VULKAN_HPP_NAMESPACE::AccelerationStructureVersionInfoKHR* pVersionInfo, VULKAN_HPP_NAMESPACE::AccelerationStructureCompatibilityKHR* pCompatibility, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkGetDeviceAccelerationStructureCompatibilityKHR( m_device, reinterpret_cast<const VkAccelerationStructureVersionInfoKHR *>( pVersionInfo ), reinterpret_cast< VkAccelerationStructureCompatibilityKHR *>( pCompatibility ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::AccelerationStructureCompatibilityKHR Device::getAccelerationStructureCompatibilityKHR( const AccelerationStructureVersionInfoKHR & versionInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- VULKAN_HPP_NAMESPACE::AccelerationStructureCompatibilityKHR compatibility;
- d.vkGetDeviceAccelerationStructureCompatibilityKHR( m_device, reinterpret_cast<const VkAccelerationStructureVersionInfoKHR *>( &versionInfo ), reinterpret_cast<VkAccelerationStructureCompatibilityKHR *>( &compatibility ) );
- return compatibility;
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::getGroupPeerMemoryFeatures( uint32_t heapIndex, uint32_t localDeviceIndex, uint32_t remoteDeviceIndex, VULKAN_HPP_NAMESPACE::PeerMemoryFeatureFlags* pPeerMemoryFeatures, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkGetDeviceGroupPeerMemoryFeatures( m_device, heapIndex, localDeviceIndex, remoteDeviceIndex, reinterpret_cast< VkPeerMemoryFeatureFlags *>( pPeerMemoryFeatures ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::PeerMemoryFeatureFlags Device::getGroupPeerMemoryFeatures( uint32_t heapIndex, uint32_t localDeviceIndex, uint32_t remoteDeviceIndex, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- VULKAN_HPP_NAMESPACE::PeerMemoryFeatureFlags peerMemoryFeatures;
- d.vkGetDeviceGroupPeerMemoryFeatures( m_device, heapIndex, localDeviceIndex, remoteDeviceIndex, reinterpret_cast<VkPeerMemoryFeatureFlags *>( &peerMemoryFeatures ) );
- return peerMemoryFeatures;
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::getGroupPeerMemoryFeaturesKHR( uint32_t heapIndex, uint32_t localDeviceIndex, uint32_t remoteDeviceIndex, VULKAN_HPP_NAMESPACE::PeerMemoryFeatureFlags* pPeerMemoryFeatures, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkGetDeviceGroupPeerMemoryFeaturesKHR( m_device, heapIndex, localDeviceIndex, remoteDeviceIndex, reinterpret_cast< VkPeerMemoryFeatureFlags *>( pPeerMemoryFeatures ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::PeerMemoryFeatureFlags Device::getGroupPeerMemoryFeaturesKHR( uint32_t heapIndex, uint32_t localDeviceIndex, uint32_t remoteDeviceIndex, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- VULKAN_HPP_NAMESPACE::PeerMemoryFeatureFlags peerMemoryFeatures;
- d.vkGetDeviceGroupPeerMemoryFeaturesKHR( m_device, heapIndex, localDeviceIndex, remoteDeviceIndex, reinterpret_cast<VkPeerMemoryFeatureFlags *>( &peerMemoryFeatures ) );
- return peerMemoryFeatures;
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getGroupPresentCapabilitiesKHR( VULKAN_HPP_NAMESPACE::DeviceGroupPresentCapabilitiesKHR* pDeviceGroupPresentCapabilities, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetDeviceGroupPresentCapabilitiesKHR( m_device, reinterpret_cast< VkDeviceGroupPresentCapabilitiesKHR *>( pDeviceGroupPresentCapabilities ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::DeviceGroupPresentCapabilitiesKHR>::type Device::getGroupPresentCapabilitiesKHR( Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::DeviceGroupPresentCapabilitiesKHR deviceGroupPresentCapabilities;
- Result result = static_cast<Result>( d.vkGetDeviceGroupPresentCapabilitiesKHR( m_device, reinterpret_cast<VkDeviceGroupPresentCapabilitiesKHR *>( &deviceGroupPresentCapabilities ) ) );
- return createResultValue( result, deviceGroupPresentCapabilities, VULKAN_HPP_NAMESPACE_STRING "::Device::getGroupPresentCapabilitiesKHR" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getGroupSurfacePresentModes2EXT( const VULKAN_HPP_NAMESPACE::PhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo, VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagsKHR* pModes, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetDeviceGroupSurfacePresentModes2EXT( m_device, reinterpret_cast<const VkPhysicalDeviceSurfaceInfo2KHR *>( pSurfaceInfo ), reinterpret_cast< VkDeviceGroupPresentModeFlagsKHR *>( pModes ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagsKHR>::type Device::getGroupSurfacePresentModes2EXT( const PhysicalDeviceSurfaceInfo2KHR & surfaceInfo, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagsKHR modes;
- Result result = static_cast<Result>( d.vkGetDeviceGroupSurfacePresentModes2EXT( m_device, reinterpret_cast<const VkPhysicalDeviceSurfaceInfo2KHR *>( &surfaceInfo ), reinterpret_cast<VkDeviceGroupPresentModeFlagsKHR *>( &modes ) ) );
- return createResultValue( result, modes, VULKAN_HPP_NAMESPACE_STRING "::Device::getGroupSurfacePresentModes2EXT" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getGroupSurfacePresentModesKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface, VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagsKHR* pModes, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetDeviceGroupSurfacePresentModesKHR( m_device, static_cast<VkSurfaceKHR>( surface ), reinterpret_cast< VkDeviceGroupPresentModeFlagsKHR *>( pModes ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagsKHR>::type Device::getGroupSurfacePresentModesKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagsKHR modes;
- Result result = static_cast<Result>( d.vkGetDeviceGroupSurfacePresentModesKHR( m_device, static_cast<VkSurfaceKHR>( surface ), reinterpret_cast<VkDeviceGroupPresentModeFlagsKHR *>( &modes ) ) );
- return createResultValue( result, modes, VULKAN_HPP_NAMESPACE_STRING "::Device::getGroupSurfacePresentModesKHR" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::getMemoryCommitment( VULKAN_HPP_NAMESPACE::DeviceMemory memory, VULKAN_HPP_NAMESPACE::DeviceSize* pCommittedMemoryInBytes, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkGetDeviceMemoryCommitment( m_device, static_cast<VkDeviceMemory>( memory ), reinterpret_cast< VkDeviceSize *>( pCommittedMemoryInBytes ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::DeviceSize Device::getMemoryCommitment( VULKAN_HPP_NAMESPACE::DeviceMemory memory, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- VULKAN_HPP_NAMESPACE::DeviceSize committedMemoryInBytes;
- d.vkGetDeviceMemoryCommitment( m_device, static_cast<VkDeviceMemory>( memory ), reinterpret_cast<VkDeviceSize *>( &committedMemoryInBytes ) );
- return committedMemoryInBytes;
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE uint64_t Device::getMemoryOpaqueCaptureAddress( const VULKAN_HPP_NAMESPACE::DeviceMemoryOpaqueCaptureAddressInfo* pInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return d.vkGetDeviceMemoryOpaqueCaptureAddress( m_device, reinterpret_cast<const VkDeviceMemoryOpaqueCaptureAddressInfo *>( pInfo ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE uint64_t Device::getMemoryOpaqueCaptureAddress( const DeviceMemoryOpaqueCaptureAddressInfo & info, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return d.vkGetDeviceMemoryOpaqueCaptureAddress( m_device, reinterpret_cast<const VkDeviceMemoryOpaqueCaptureAddressInfo *>( &info ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE uint64_t Device::getMemoryOpaqueCaptureAddressKHR( const VULKAN_HPP_NAMESPACE::DeviceMemoryOpaqueCaptureAddressInfo* pInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return d.vkGetDeviceMemoryOpaqueCaptureAddressKHR( m_device, reinterpret_cast<const VkDeviceMemoryOpaqueCaptureAddressInfo *>( pInfo ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE uint64_t Device::getMemoryOpaqueCaptureAddressKHR( const DeviceMemoryOpaqueCaptureAddressInfo & info, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return d.vkGetDeviceMemoryOpaqueCaptureAddressKHR( m_device, reinterpret_cast<const VkDeviceMemoryOpaqueCaptureAddressInfo *>( &info ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE PFN_vkVoidFunction Device::getProcAddr( const char* pName, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return d.vkGetDeviceProcAddr( m_device, pName );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE PFN_vkVoidFunction Device::getProcAddr( const std::string & name, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return d.vkGetDeviceProcAddr( m_device, name.c_str() );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::getQueue( uint32_t queueFamilyIndex, uint32_t queueIndex, VULKAN_HPP_NAMESPACE::Queue* pQueue, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkGetDeviceQueue( m_device, queueFamilyIndex, queueIndex, reinterpret_cast< VkQueue *>( pQueue ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::Queue Device::getQueue( uint32_t queueFamilyIndex, uint32_t queueIndex, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- VULKAN_HPP_NAMESPACE::Queue queue;
- d.vkGetDeviceQueue( m_device, queueFamilyIndex, queueIndex, reinterpret_cast<VkQueue *>( &queue ) );
- return queue;
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::getQueue2( const VULKAN_HPP_NAMESPACE::DeviceQueueInfo2* pQueueInfo, VULKAN_HPP_NAMESPACE::Queue* pQueue, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkGetDeviceQueue2( m_device, reinterpret_cast<const VkDeviceQueueInfo2 *>( pQueueInfo ), reinterpret_cast< VkQueue *>( pQueue ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::Queue Device::getQueue2( const DeviceQueueInfo2 & queueInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- VULKAN_HPP_NAMESPACE::Queue queue;
- d.vkGetDeviceQueue2( m_device, reinterpret_cast<const VkDeviceQueueInfo2 *>( &queueInfo ), reinterpret_cast<VkQueue *>( &queue ) );
- return queue;
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getEventStatus( VULKAN_HPP_NAMESPACE::Event event, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetEventStatus( m_device, static_cast<VkEvent>( event ) ) );
- }
-#else
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getEventStatus( VULKAN_HPP_NAMESPACE::Event event, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkGetEventStatus( m_device, static_cast<VkEvent>( event ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::getEventStatus", { VULKAN_HPP_NAMESPACE::Result::eEventSet, VULKAN_HPP_NAMESPACE::Result::eEventReset } );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getFenceFdKHR( const VULKAN_HPP_NAMESPACE::FenceGetFdInfoKHR* pGetFdInfo, int* pFd, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetFenceFdKHR( m_device, reinterpret_cast<const VkFenceGetFdInfoKHR *>( pGetFdInfo ), pFd ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<int>::type Device::getFenceFdKHR( const FenceGetFdInfoKHR & getFdInfo, Dispatch const & d ) const
- {
- int fd;
- Result result = static_cast<Result>( d.vkGetFenceFdKHR( m_device, reinterpret_cast<const VkFenceGetFdInfoKHR *>( &getFdInfo ), &fd ) );
- return createResultValue( result, fd, VULKAN_HPP_NAMESPACE_STRING "::Device::getFenceFdKHR" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getFenceStatus( VULKAN_HPP_NAMESPACE::Fence fence, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetFenceStatus( m_device, static_cast<VkFence>( fence ) ) );
- }
-#else
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getFenceStatus( VULKAN_HPP_NAMESPACE::Fence fence, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkGetFenceStatus( m_device, static_cast<VkFence>( fence ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::getFenceStatus", { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::eNotReady } );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getFenceWin32HandleKHR( const VULKAN_HPP_NAMESPACE::FenceGetWin32HandleInfoKHR* pGetWin32HandleInfo, HANDLE* pHandle, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetFenceWin32HandleKHR( m_device, reinterpret_cast<const VkFenceGetWin32HandleInfoKHR *>( pGetWin32HandleInfo ), pHandle ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<HANDLE>::type Device::getFenceWin32HandleKHR( const FenceGetWin32HandleInfoKHR & getWin32HandleInfo, Dispatch const & d ) const
- {
- HANDLE handle;
- Result result = static_cast<Result>( d.vkGetFenceWin32HandleKHR( m_device, reinterpret_cast<const VkFenceGetWin32HandleInfoKHR *>( &getWin32HandleInfo ), &handle ) );
- return createResultValue( result, handle, VULKAN_HPP_NAMESPACE_STRING "::Device::getFenceWin32HandleKHR" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::getGeneratedCommandsMemoryRequirementsNV( const VULKAN_HPP_NAMESPACE::GeneratedCommandsMemoryRequirementsInfoNV* pInfo, VULKAN_HPP_NAMESPACE::MemoryRequirements2* pMemoryRequirements, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkGetGeneratedCommandsMemoryRequirementsNV( m_device, reinterpret_cast<const VkGeneratedCommandsMemoryRequirementsInfoNV *>( pInfo ), reinterpret_cast< VkMemoryRequirements2 *>( pMemoryRequirements ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::MemoryRequirements2 Device::getGeneratedCommandsMemoryRequirementsNV( const GeneratedCommandsMemoryRequirementsInfoNV & info, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- VULKAN_HPP_NAMESPACE::MemoryRequirements2 memoryRequirements;
- d.vkGetGeneratedCommandsMemoryRequirementsNV( m_device, reinterpret_cast<const VkGeneratedCommandsMemoryRequirementsInfoNV *>( &info ), reinterpret_cast<VkMemoryRequirements2 *>( &memoryRequirements ) );
- return memoryRequirements;
- }
-
- template <typename X, typename Y, typename... Z, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE StructureChain<X, Y, Z...> Device::getGeneratedCommandsMemoryRequirementsNV( const GeneratedCommandsMemoryRequirementsInfoNV & info, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- StructureChain<X, Y, Z...> structureChain;
- VULKAN_HPP_NAMESPACE::MemoryRequirements2 & memoryRequirements = structureChain.template get<VULKAN_HPP_NAMESPACE::MemoryRequirements2>();
- d.vkGetGeneratedCommandsMemoryRequirementsNV( m_device, reinterpret_cast<const VkGeneratedCommandsMemoryRequirementsInfoNV *>( &info ), reinterpret_cast<VkMemoryRequirements2 *>( &memoryRequirements ) );
- return structureChain;
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getImageDrmFormatModifierPropertiesEXT( VULKAN_HPP_NAMESPACE::Image image, VULKAN_HPP_NAMESPACE::ImageDrmFormatModifierPropertiesEXT* pProperties, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetImageDrmFormatModifierPropertiesEXT( m_device, static_cast<VkImage>( image ), reinterpret_cast< VkImageDrmFormatModifierPropertiesEXT *>( pProperties ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::ImageDrmFormatModifierPropertiesEXT>::type Device::getImageDrmFormatModifierPropertiesEXT( VULKAN_HPP_NAMESPACE::Image image, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::ImageDrmFormatModifierPropertiesEXT properties;
- Result result = static_cast<Result>( d.vkGetImageDrmFormatModifierPropertiesEXT( m_device, static_cast<VkImage>( image ), reinterpret_cast<VkImageDrmFormatModifierPropertiesEXT *>( &properties ) ) );
- return createResultValue( result, properties, VULKAN_HPP_NAMESPACE_STRING "::Device::getImageDrmFormatModifierPropertiesEXT" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::getImageMemoryRequirements( VULKAN_HPP_NAMESPACE::Image image, VULKAN_HPP_NAMESPACE::MemoryRequirements* pMemoryRequirements, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkGetImageMemoryRequirements( m_device, static_cast<VkImage>( image ), reinterpret_cast< VkMemoryRequirements *>( pMemoryRequirements ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::MemoryRequirements Device::getImageMemoryRequirements( VULKAN_HPP_NAMESPACE::Image image, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- VULKAN_HPP_NAMESPACE::MemoryRequirements memoryRequirements;
- d.vkGetImageMemoryRequirements( m_device, static_cast<VkImage>( image ), reinterpret_cast<VkMemoryRequirements *>( &memoryRequirements ) );
- return memoryRequirements;
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::getImageMemoryRequirements2( const VULKAN_HPP_NAMESPACE::ImageMemoryRequirementsInfo2* pInfo, VULKAN_HPP_NAMESPACE::MemoryRequirements2* pMemoryRequirements, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkGetImageMemoryRequirements2( m_device, reinterpret_cast<const VkImageMemoryRequirementsInfo2 *>( pInfo ), reinterpret_cast< VkMemoryRequirements2 *>( pMemoryRequirements ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::MemoryRequirements2 Device::getImageMemoryRequirements2( const ImageMemoryRequirementsInfo2 & info, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- VULKAN_HPP_NAMESPACE::MemoryRequirements2 memoryRequirements;
- d.vkGetImageMemoryRequirements2( m_device, reinterpret_cast<const VkImageMemoryRequirementsInfo2 *>( &info ), reinterpret_cast<VkMemoryRequirements2 *>( &memoryRequirements ) );
- return memoryRequirements;
- }
-
- template <typename X, typename Y, typename... Z, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE StructureChain<X, Y, Z...> Device::getImageMemoryRequirements2( const ImageMemoryRequirementsInfo2 & info, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- StructureChain<X, Y, Z...> structureChain;
- VULKAN_HPP_NAMESPACE::MemoryRequirements2 & memoryRequirements = structureChain.template get<VULKAN_HPP_NAMESPACE::MemoryRequirements2>();
- d.vkGetImageMemoryRequirements2( m_device, reinterpret_cast<const VkImageMemoryRequirementsInfo2 *>( &info ), reinterpret_cast<VkMemoryRequirements2 *>( &memoryRequirements ) );
- return structureChain;
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::getImageMemoryRequirements2KHR( const VULKAN_HPP_NAMESPACE::ImageMemoryRequirementsInfo2* pInfo, VULKAN_HPP_NAMESPACE::MemoryRequirements2* pMemoryRequirements, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkGetImageMemoryRequirements2KHR( m_device, reinterpret_cast<const VkImageMemoryRequirementsInfo2 *>( pInfo ), reinterpret_cast< VkMemoryRequirements2 *>( pMemoryRequirements ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::MemoryRequirements2 Device::getImageMemoryRequirements2KHR( const ImageMemoryRequirementsInfo2 & info, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- VULKAN_HPP_NAMESPACE::MemoryRequirements2 memoryRequirements;
- d.vkGetImageMemoryRequirements2KHR( m_device, reinterpret_cast<const VkImageMemoryRequirementsInfo2 *>( &info ), reinterpret_cast<VkMemoryRequirements2 *>( &memoryRequirements ) );
- return memoryRequirements;
- }
-
- template <typename X, typename Y, typename... Z, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE StructureChain<X, Y, Z...> Device::getImageMemoryRequirements2KHR( const ImageMemoryRequirementsInfo2 & info, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- StructureChain<X, Y, Z...> structureChain;
- VULKAN_HPP_NAMESPACE::MemoryRequirements2 & memoryRequirements = structureChain.template get<VULKAN_HPP_NAMESPACE::MemoryRequirements2>();
- d.vkGetImageMemoryRequirements2KHR( m_device, reinterpret_cast<const VkImageMemoryRequirementsInfo2 *>( &info ), reinterpret_cast<VkMemoryRequirements2 *>( &memoryRequirements ) );
- return structureChain;
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::getImageSparseMemoryRequirements( VULKAN_HPP_NAMESPACE::Image image, uint32_t* pSparseMemoryRequirementCount, VULKAN_HPP_NAMESPACE::SparseImageMemoryRequirements* pSparseMemoryRequirements, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkGetImageSparseMemoryRequirements( m_device, static_cast<VkImage>( image ), pSparseMemoryRequirementCount, reinterpret_cast< VkSparseImageMemoryRequirements *>( pSparseMemoryRequirements ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename SparseImageMemoryRequirementsAllocator, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<SparseImageMemoryRequirements, SparseImageMemoryRequirementsAllocator> Device::getImageSparseMemoryRequirements( VULKAN_HPP_NAMESPACE::Image image, Dispatch const & d ) const
- {
- std::vector<SparseImageMemoryRequirements, SparseImageMemoryRequirementsAllocator> sparseMemoryRequirements;
- uint32_t sparseMemoryRequirementCount;
- d.vkGetImageSparseMemoryRequirements( m_device, static_cast<VkImage>( image ), &sparseMemoryRequirementCount, nullptr );
- sparseMemoryRequirements.resize( sparseMemoryRequirementCount );
- d.vkGetImageSparseMemoryRequirements( m_device, static_cast<VkImage>( image ), &sparseMemoryRequirementCount, reinterpret_cast<VkSparseImageMemoryRequirements *>( sparseMemoryRequirements.data() ) );
- VULKAN_HPP_ASSERT( sparseMemoryRequirementCount <= sparseMemoryRequirements.size() );
- return sparseMemoryRequirements;
- }
-
- template <typename SparseImageMemoryRequirementsAllocator, typename Dispatch, typename B, typename std::enable_if<std::is_same<typename B::value_type, SparseImageMemoryRequirements>::value, int>::type >
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<SparseImageMemoryRequirements, SparseImageMemoryRequirementsAllocator> Device::getImageSparseMemoryRequirements( VULKAN_HPP_NAMESPACE::Image image, SparseImageMemoryRequirementsAllocator & sparseImageMemoryRequirementsAllocator, Dispatch const & d ) const
- {
- std::vector<SparseImageMemoryRequirements, SparseImageMemoryRequirementsAllocator> sparseMemoryRequirements( sparseImageMemoryRequirementsAllocator );
- uint32_t sparseMemoryRequirementCount;
- d.vkGetImageSparseMemoryRequirements( m_device, static_cast<VkImage>( image ), &sparseMemoryRequirementCount, nullptr );
- sparseMemoryRequirements.resize( sparseMemoryRequirementCount );
- d.vkGetImageSparseMemoryRequirements( m_device, static_cast<VkImage>( image ), &sparseMemoryRequirementCount, reinterpret_cast<VkSparseImageMemoryRequirements *>( sparseMemoryRequirements.data() ) );
- VULKAN_HPP_ASSERT( sparseMemoryRequirementCount <= sparseMemoryRequirements.size() );
- return sparseMemoryRequirements;
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::getImageSparseMemoryRequirements2( const VULKAN_HPP_NAMESPACE::ImageSparseMemoryRequirementsInfo2* pInfo, uint32_t* pSparseMemoryRequirementCount, VULKAN_HPP_NAMESPACE::SparseImageMemoryRequirements2* pSparseMemoryRequirements, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkGetImageSparseMemoryRequirements2( m_device, reinterpret_cast<const VkImageSparseMemoryRequirementsInfo2 *>( pInfo ), pSparseMemoryRequirementCount, reinterpret_cast< VkSparseImageMemoryRequirements2 *>( pSparseMemoryRequirements ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename SparseImageMemoryRequirements2Allocator, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<SparseImageMemoryRequirements2, SparseImageMemoryRequirements2Allocator> Device::getImageSparseMemoryRequirements2( const ImageSparseMemoryRequirementsInfo2 & info, Dispatch const & d ) const
- {
- std::vector<SparseImageMemoryRequirements2, SparseImageMemoryRequirements2Allocator> sparseMemoryRequirements;
- uint32_t sparseMemoryRequirementCount;
- d.vkGetImageSparseMemoryRequirements2( m_device, reinterpret_cast<const VkImageSparseMemoryRequirementsInfo2 *>( &info ), &sparseMemoryRequirementCount, nullptr );
- sparseMemoryRequirements.resize( sparseMemoryRequirementCount );
- d.vkGetImageSparseMemoryRequirements2( m_device, reinterpret_cast<const VkImageSparseMemoryRequirementsInfo2 *>( &info ), &sparseMemoryRequirementCount, reinterpret_cast<VkSparseImageMemoryRequirements2 *>( sparseMemoryRequirements.data() ) );
- VULKAN_HPP_ASSERT( sparseMemoryRequirementCount <= sparseMemoryRequirements.size() );
- return sparseMemoryRequirements;
- }
-
- template <typename SparseImageMemoryRequirements2Allocator, typename Dispatch, typename B, typename std::enable_if<std::is_same<typename B::value_type, SparseImageMemoryRequirements2>::value, int>::type >
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<SparseImageMemoryRequirements2, SparseImageMemoryRequirements2Allocator> Device::getImageSparseMemoryRequirements2( const ImageSparseMemoryRequirementsInfo2 & info, SparseImageMemoryRequirements2Allocator & sparseImageMemoryRequirements2Allocator, Dispatch const & d ) const
- {
- std::vector<SparseImageMemoryRequirements2, SparseImageMemoryRequirements2Allocator> sparseMemoryRequirements( sparseImageMemoryRequirements2Allocator );
- uint32_t sparseMemoryRequirementCount;
- d.vkGetImageSparseMemoryRequirements2( m_device, reinterpret_cast<const VkImageSparseMemoryRequirementsInfo2 *>( &info ), &sparseMemoryRequirementCount, nullptr );
- sparseMemoryRequirements.resize( sparseMemoryRequirementCount );
- d.vkGetImageSparseMemoryRequirements2( m_device, reinterpret_cast<const VkImageSparseMemoryRequirementsInfo2 *>( &info ), &sparseMemoryRequirementCount, reinterpret_cast<VkSparseImageMemoryRequirements2 *>( sparseMemoryRequirements.data() ) );
- VULKAN_HPP_ASSERT( sparseMemoryRequirementCount <= sparseMemoryRequirements.size() );
- return sparseMemoryRequirements;
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::getImageSparseMemoryRequirements2KHR( const VULKAN_HPP_NAMESPACE::ImageSparseMemoryRequirementsInfo2* pInfo, uint32_t* pSparseMemoryRequirementCount, VULKAN_HPP_NAMESPACE::SparseImageMemoryRequirements2* pSparseMemoryRequirements, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkGetImageSparseMemoryRequirements2KHR( m_device, reinterpret_cast<const VkImageSparseMemoryRequirementsInfo2 *>( pInfo ), pSparseMemoryRequirementCount, reinterpret_cast< VkSparseImageMemoryRequirements2 *>( pSparseMemoryRequirements ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename SparseImageMemoryRequirements2Allocator, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<SparseImageMemoryRequirements2, SparseImageMemoryRequirements2Allocator> Device::getImageSparseMemoryRequirements2KHR( const ImageSparseMemoryRequirementsInfo2 & info, Dispatch const & d ) const
- {
- std::vector<SparseImageMemoryRequirements2, SparseImageMemoryRequirements2Allocator> sparseMemoryRequirements;
- uint32_t sparseMemoryRequirementCount;
- d.vkGetImageSparseMemoryRequirements2KHR( m_device, reinterpret_cast<const VkImageSparseMemoryRequirementsInfo2 *>( &info ), &sparseMemoryRequirementCount, nullptr );
- sparseMemoryRequirements.resize( sparseMemoryRequirementCount );
- d.vkGetImageSparseMemoryRequirements2KHR( m_device, reinterpret_cast<const VkImageSparseMemoryRequirementsInfo2 *>( &info ), &sparseMemoryRequirementCount, reinterpret_cast<VkSparseImageMemoryRequirements2 *>( sparseMemoryRequirements.data() ) );
- VULKAN_HPP_ASSERT( sparseMemoryRequirementCount <= sparseMemoryRequirements.size() );
- return sparseMemoryRequirements;
- }
-
- template <typename SparseImageMemoryRequirements2Allocator, typename Dispatch, typename B, typename std::enable_if<std::is_same<typename B::value_type, SparseImageMemoryRequirements2>::value, int>::type >
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<SparseImageMemoryRequirements2, SparseImageMemoryRequirements2Allocator> Device::getImageSparseMemoryRequirements2KHR( const ImageSparseMemoryRequirementsInfo2 & info, SparseImageMemoryRequirements2Allocator & sparseImageMemoryRequirements2Allocator, Dispatch const & d ) const
- {
- std::vector<SparseImageMemoryRequirements2, SparseImageMemoryRequirements2Allocator> sparseMemoryRequirements( sparseImageMemoryRequirements2Allocator );
- uint32_t sparseMemoryRequirementCount;
- d.vkGetImageSparseMemoryRequirements2KHR( m_device, reinterpret_cast<const VkImageSparseMemoryRequirementsInfo2 *>( &info ), &sparseMemoryRequirementCount, nullptr );
- sparseMemoryRequirements.resize( sparseMemoryRequirementCount );
- d.vkGetImageSparseMemoryRequirements2KHR( m_device, reinterpret_cast<const VkImageSparseMemoryRequirementsInfo2 *>( &info ), &sparseMemoryRequirementCount, reinterpret_cast<VkSparseImageMemoryRequirements2 *>( sparseMemoryRequirements.data() ) );
- VULKAN_HPP_ASSERT( sparseMemoryRequirementCount <= sparseMemoryRequirements.size() );
- return sparseMemoryRequirements;
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::getImageSubresourceLayout( VULKAN_HPP_NAMESPACE::Image image, const VULKAN_HPP_NAMESPACE::ImageSubresource* pSubresource, VULKAN_HPP_NAMESPACE::SubresourceLayout* pLayout, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkGetImageSubresourceLayout( m_device, static_cast<VkImage>( image ), reinterpret_cast<const VkImageSubresource *>( pSubresource ), reinterpret_cast< VkSubresourceLayout *>( pLayout ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::SubresourceLayout Device::getImageSubresourceLayout( VULKAN_HPP_NAMESPACE::Image image, const ImageSubresource & subresource, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- VULKAN_HPP_NAMESPACE::SubresourceLayout layout;
- d.vkGetImageSubresourceLayout( m_device, static_cast<VkImage>( image ), reinterpret_cast<const VkImageSubresource *>( &subresource ), reinterpret_cast<VkSubresourceLayout *>( &layout ) );
- return layout;
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getImageViewAddressNVX( VULKAN_HPP_NAMESPACE::ImageView imageView, VULKAN_HPP_NAMESPACE::ImageViewAddressPropertiesNVX* pProperties, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetImageViewAddressNVX( m_device, static_cast<VkImageView>( imageView ), reinterpret_cast< VkImageViewAddressPropertiesNVX *>( pProperties ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::ImageViewAddressPropertiesNVX>::type Device::getImageViewAddressNVX( VULKAN_HPP_NAMESPACE::ImageView imageView, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::ImageViewAddressPropertiesNVX properties;
- Result result = static_cast<Result>( d.vkGetImageViewAddressNVX( m_device, static_cast<VkImageView>( imageView ), reinterpret_cast<VkImageViewAddressPropertiesNVX *>( &properties ) ) );
- return createResultValue( result, properties, VULKAN_HPP_NAMESPACE_STRING "::Device::getImageViewAddressNVX" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE uint32_t Device::getImageViewHandleNVX( const VULKAN_HPP_NAMESPACE::ImageViewHandleInfoNVX* pInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return d.vkGetImageViewHandleNVX( m_device, reinterpret_cast<const VkImageViewHandleInfoNVX *>( pInfo ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE uint32_t Device::getImageViewHandleNVX( const ImageViewHandleInfoNVX & info, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return d.vkGetImageViewHandleNVX( m_device, reinterpret_cast<const VkImageViewHandleInfoNVX *>( &info ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-#ifdef VK_USE_PLATFORM_ANDROID_KHR
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getMemoryAndroidHardwareBufferANDROID( const VULKAN_HPP_NAMESPACE::MemoryGetAndroidHardwareBufferInfoANDROID* pInfo, struct AHardwareBuffer** pBuffer, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetMemoryAndroidHardwareBufferANDROID( m_device, reinterpret_cast<const VkMemoryGetAndroidHardwareBufferInfoANDROID *>( pInfo ), pBuffer ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<struct AHardwareBuffer*>::type Device::getMemoryAndroidHardwareBufferANDROID( const MemoryGetAndroidHardwareBufferInfoANDROID & info, Dispatch const & d ) const
- {
- struct AHardwareBuffer* buffer;
- Result result = static_cast<Result>( d.vkGetMemoryAndroidHardwareBufferANDROID( m_device, reinterpret_cast<const VkMemoryGetAndroidHardwareBufferInfoANDROID *>( &info ), &buffer ) );
- return createResultValue( result, buffer, VULKAN_HPP_NAMESPACE_STRING "::Device::getMemoryAndroidHardwareBufferANDROID" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getMemoryFdKHR( const VULKAN_HPP_NAMESPACE::MemoryGetFdInfoKHR* pGetFdInfo, int* pFd, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetMemoryFdKHR( m_device, reinterpret_cast<const VkMemoryGetFdInfoKHR *>( pGetFdInfo ), pFd ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<int>::type Device::getMemoryFdKHR( const MemoryGetFdInfoKHR & getFdInfo, Dispatch const & d ) const
- {
- int fd;
- Result result = static_cast<Result>( d.vkGetMemoryFdKHR( m_device, reinterpret_cast<const VkMemoryGetFdInfoKHR *>( &getFdInfo ), &fd ) );
- return createResultValue( result, fd, VULKAN_HPP_NAMESPACE_STRING "::Device::getMemoryFdKHR" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getMemoryFdPropertiesKHR( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType, int fd, VULKAN_HPP_NAMESPACE::MemoryFdPropertiesKHR* pMemoryFdProperties, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetMemoryFdPropertiesKHR( m_device, static_cast<VkExternalMemoryHandleTypeFlagBits>( handleType ), fd, reinterpret_cast< VkMemoryFdPropertiesKHR *>( pMemoryFdProperties ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::MemoryFdPropertiesKHR>::type Device::getMemoryFdPropertiesKHR( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType, int fd, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::MemoryFdPropertiesKHR memoryFdProperties;
- Result result = static_cast<Result>( d.vkGetMemoryFdPropertiesKHR( m_device, static_cast<VkExternalMemoryHandleTypeFlagBits>( handleType ), fd, reinterpret_cast<VkMemoryFdPropertiesKHR *>( &memoryFdProperties ) ) );
- return createResultValue( result, memoryFdProperties, VULKAN_HPP_NAMESPACE_STRING "::Device::getMemoryFdPropertiesKHR" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getMemoryHostPointerPropertiesEXT( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType, const void* pHostPointer, VULKAN_HPP_NAMESPACE::MemoryHostPointerPropertiesEXT* pMemoryHostPointerProperties, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetMemoryHostPointerPropertiesEXT( m_device, static_cast<VkExternalMemoryHandleTypeFlagBits>( handleType ), pHostPointer, reinterpret_cast< VkMemoryHostPointerPropertiesEXT *>( pMemoryHostPointerProperties ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::MemoryHostPointerPropertiesEXT>::type Device::getMemoryHostPointerPropertiesEXT( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType, const void* pHostPointer, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::MemoryHostPointerPropertiesEXT memoryHostPointerProperties;
- Result result = static_cast<Result>( d.vkGetMemoryHostPointerPropertiesEXT( m_device, static_cast<VkExternalMemoryHandleTypeFlagBits>( handleType ), pHostPointer, reinterpret_cast<VkMemoryHostPointerPropertiesEXT *>( &memoryHostPointerProperties ) ) );
- return createResultValue( result, memoryHostPointerProperties, VULKAN_HPP_NAMESPACE_STRING "::Device::getMemoryHostPointerPropertiesEXT" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getMemoryWin32HandleKHR( const VULKAN_HPP_NAMESPACE::MemoryGetWin32HandleInfoKHR* pGetWin32HandleInfo, HANDLE* pHandle, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetMemoryWin32HandleKHR( m_device, reinterpret_cast<const VkMemoryGetWin32HandleInfoKHR *>( pGetWin32HandleInfo ), pHandle ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<HANDLE>::type Device::getMemoryWin32HandleKHR( const MemoryGetWin32HandleInfoKHR & getWin32HandleInfo, Dispatch const & d ) const
- {
- HANDLE handle;
- Result result = static_cast<Result>( d.vkGetMemoryWin32HandleKHR( m_device, reinterpret_cast<const VkMemoryGetWin32HandleInfoKHR *>( &getWin32HandleInfo ), &handle ) );
- return createResultValue( result, handle, VULKAN_HPP_NAMESPACE_STRING "::Device::getMemoryWin32HandleKHR" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getMemoryWin32HandleNV( VULKAN_HPP_NAMESPACE::DeviceMemory memory, VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV handleType, HANDLE* pHandle, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetMemoryWin32HandleNV( m_device, static_cast<VkDeviceMemory>( memory ), static_cast<VkExternalMemoryHandleTypeFlagsNV>( handleType ), pHandle ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<HANDLE>::type Device::getMemoryWin32HandleNV( VULKAN_HPP_NAMESPACE::DeviceMemory memory, VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV handleType, Dispatch const & d ) const
- {
- HANDLE handle;
- Result result = static_cast<Result>( d.vkGetMemoryWin32HandleNV( m_device, static_cast<VkDeviceMemory>( memory ), static_cast<VkExternalMemoryHandleTypeFlagsNV>( handleType ), &handle ) );
- return createResultValue( result, handle, VULKAN_HPP_NAMESPACE_STRING "::Device::getMemoryWin32HandleNV" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getMemoryWin32HandlePropertiesKHR( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType, HANDLE handle, VULKAN_HPP_NAMESPACE::MemoryWin32HandlePropertiesKHR* pMemoryWin32HandleProperties, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetMemoryWin32HandlePropertiesKHR( m_device, static_cast<VkExternalMemoryHandleTypeFlagBits>( handleType ), handle, reinterpret_cast< VkMemoryWin32HandlePropertiesKHR *>( pMemoryWin32HandleProperties ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::MemoryWin32HandlePropertiesKHR>::type Device::getMemoryWin32HandlePropertiesKHR( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType, HANDLE handle, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::MemoryWin32HandlePropertiesKHR memoryWin32HandleProperties;
- Result result = static_cast<Result>( d.vkGetMemoryWin32HandlePropertiesKHR( m_device, static_cast<VkExternalMemoryHandleTypeFlagBits>( handleType ), handle, reinterpret_cast<VkMemoryWin32HandlePropertiesKHR *>( &memoryWin32HandleProperties ) ) );
- return createResultValue( result, memoryWin32HandleProperties, VULKAN_HPP_NAMESPACE_STRING "::Device::getMemoryWin32HandlePropertiesKHR" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getPastPresentationTimingGOOGLE( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain, uint32_t* pPresentationTimingCount, VULKAN_HPP_NAMESPACE::PastPresentationTimingGOOGLE* pPresentationTimings, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetPastPresentationTimingGOOGLE( m_device, static_cast<VkSwapchainKHR>( swapchain ), pPresentationTimingCount, reinterpret_cast< VkPastPresentationTimingGOOGLE *>( pPresentationTimings ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename PastPresentationTimingGOOGLEAllocator, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<PastPresentationTimingGOOGLE, PastPresentationTimingGOOGLEAllocator>>::type Device::getPastPresentationTimingGOOGLE( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain, Dispatch const & d ) const
- {
- std::vector<PastPresentationTimingGOOGLE, PastPresentationTimingGOOGLEAllocator> presentationTimings;
- uint32_t presentationTimingCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkGetPastPresentationTimingGOOGLE( m_device, static_cast<VkSwapchainKHR>( swapchain ), &presentationTimingCount, nullptr ) );
- if ( ( result == Result::eSuccess ) && presentationTimingCount )
- {
- presentationTimings.resize( presentationTimingCount );
- result = static_cast<Result>( d.vkGetPastPresentationTimingGOOGLE( m_device, static_cast<VkSwapchainKHR>( swapchain ), &presentationTimingCount, reinterpret_cast<VkPastPresentationTimingGOOGLE *>( presentationTimings.data() ) ) );
- VULKAN_HPP_ASSERT( presentationTimingCount <= presentationTimings.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( presentationTimingCount < presentationTimings.size() ) )
- {
- presentationTimings.resize( presentationTimingCount );
- }
- return createResultValue( result, presentationTimings, VULKAN_HPP_NAMESPACE_STRING"::Device::getPastPresentationTimingGOOGLE" );
- }
-
- template <typename PastPresentationTimingGOOGLEAllocator, typename Dispatch, typename B, typename std::enable_if<std::is_same<typename B::value_type, PastPresentationTimingGOOGLE>::value, int>::type >
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<PastPresentationTimingGOOGLE, PastPresentationTimingGOOGLEAllocator>>::type Device::getPastPresentationTimingGOOGLE( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain, PastPresentationTimingGOOGLEAllocator & pastPresentationTimingGOOGLEAllocator, Dispatch const & d ) const
- {
- std::vector<PastPresentationTimingGOOGLE, PastPresentationTimingGOOGLEAllocator> presentationTimings( pastPresentationTimingGOOGLEAllocator );
- uint32_t presentationTimingCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkGetPastPresentationTimingGOOGLE( m_device, static_cast<VkSwapchainKHR>( swapchain ), &presentationTimingCount, nullptr ) );
- if ( ( result == Result::eSuccess ) && presentationTimingCount )
- {
- presentationTimings.resize( presentationTimingCount );
- result = static_cast<Result>( d.vkGetPastPresentationTimingGOOGLE( m_device, static_cast<VkSwapchainKHR>( swapchain ), &presentationTimingCount, reinterpret_cast<VkPastPresentationTimingGOOGLE *>( presentationTimings.data() ) ) );
- VULKAN_HPP_ASSERT( presentationTimingCount <= presentationTimings.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( presentationTimingCount < presentationTimings.size() ) )
- {
- presentationTimings.resize( presentationTimingCount );
- }
- return createResultValue( result, presentationTimings, VULKAN_HPP_NAMESPACE_STRING"::Device::getPastPresentationTimingGOOGLE" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getPerformanceParameterINTEL( VULKAN_HPP_NAMESPACE::PerformanceParameterTypeINTEL parameter, VULKAN_HPP_NAMESPACE::PerformanceValueINTEL* pValue, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetPerformanceParameterINTEL( m_device, static_cast<VkPerformanceParameterTypeINTEL>( parameter ), reinterpret_cast< VkPerformanceValueINTEL *>( pValue ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::PerformanceValueINTEL>::type Device::getPerformanceParameterINTEL( VULKAN_HPP_NAMESPACE::PerformanceParameterTypeINTEL parameter, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::PerformanceValueINTEL value;
- Result result = static_cast<Result>( d.vkGetPerformanceParameterINTEL( m_device, static_cast<VkPerformanceParameterTypeINTEL>( parameter ), reinterpret_cast<VkPerformanceValueINTEL *>( &value ) ) );
- return createResultValue( result, value, VULKAN_HPP_NAMESPACE_STRING "::Device::getPerformanceParameterINTEL" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getPipelineCacheData( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, size_t* pDataSize, void* pData, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetPipelineCacheData( m_device, static_cast<VkPipelineCache>( pipelineCache ), pDataSize, pData ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Uint8_tAllocator, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<uint8_t, Uint8_tAllocator>>::type Device::getPipelineCacheData( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, Dispatch const & d ) const
- {
- std::vector<uint8_t, Uint8_tAllocator> data;
- size_t dataSize;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkGetPipelineCacheData( m_device, static_cast<VkPipelineCache>( pipelineCache ), &dataSize, nullptr ) );
- if ( ( result == Result::eSuccess ) && dataSize )
- {
- data.resize( dataSize );
- result = static_cast<Result>( d.vkGetPipelineCacheData( m_device, static_cast<VkPipelineCache>( pipelineCache ), &dataSize, reinterpret_cast<void *>( data.data() ) ) );
- VULKAN_HPP_ASSERT( dataSize <= data.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( dataSize < data.size() ) )
- {
- data.resize( dataSize );
- }
- return createResultValue( result, data, VULKAN_HPP_NAMESPACE_STRING"::Device::getPipelineCacheData" );
- }
-
- template <typename Uint8_tAllocator, typename Dispatch, typename B, typename std::enable_if<std::is_same<typename B::value_type, uint8_t>::value, int>::type >
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<uint8_t, Uint8_tAllocator>>::type Device::getPipelineCacheData( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, Uint8_tAllocator & uint8_tAllocator, Dispatch const & d ) const
- {
- std::vector<uint8_t, Uint8_tAllocator> data( uint8_tAllocator );
- size_t dataSize;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkGetPipelineCacheData( m_device, static_cast<VkPipelineCache>( pipelineCache ), &dataSize, nullptr ) );
- if ( ( result == Result::eSuccess ) && dataSize )
- {
- data.resize( dataSize );
- result = static_cast<Result>( d.vkGetPipelineCacheData( m_device, static_cast<VkPipelineCache>( pipelineCache ), &dataSize, reinterpret_cast<void *>( data.data() ) ) );
- VULKAN_HPP_ASSERT( dataSize <= data.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( dataSize < data.size() ) )
- {
- data.resize( dataSize );
- }
- return createResultValue( result, data, VULKAN_HPP_NAMESPACE_STRING"::Device::getPipelineCacheData" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getPipelineExecutableInternalRepresentationsKHR( const VULKAN_HPP_NAMESPACE::PipelineExecutableInfoKHR* pExecutableInfo, uint32_t* pInternalRepresentationCount, VULKAN_HPP_NAMESPACE::PipelineExecutableInternalRepresentationKHR* pInternalRepresentations, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetPipelineExecutableInternalRepresentationsKHR( m_device, reinterpret_cast<const VkPipelineExecutableInfoKHR *>( pExecutableInfo ), pInternalRepresentationCount, reinterpret_cast< VkPipelineExecutableInternalRepresentationKHR *>( pInternalRepresentations ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename PipelineExecutableInternalRepresentationKHRAllocator, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<PipelineExecutableInternalRepresentationKHR, PipelineExecutableInternalRepresentationKHRAllocator>>::type Device::getPipelineExecutableInternalRepresentationsKHR( const PipelineExecutableInfoKHR & executableInfo, Dispatch const & d ) const
- {
- std::vector<PipelineExecutableInternalRepresentationKHR, PipelineExecutableInternalRepresentationKHRAllocator> internalRepresentations;
- uint32_t internalRepresentationCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkGetPipelineExecutableInternalRepresentationsKHR( m_device, reinterpret_cast<const VkPipelineExecutableInfoKHR *>( &executableInfo ), &internalRepresentationCount, nullptr ) );
- if ( ( result == Result::eSuccess ) && internalRepresentationCount )
- {
- internalRepresentations.resize( internalRepresentationCount );
- result = static_cast<Result>( d.vkGetPipelineExecutableInternalRepresentationsKHR( m_device, reinterpret_cast<const VkPipelineExecutableInfoKHR *>( &executableInfo ), &internalRepresentationCount, reinterpret_cast<VkPipelineExecutableInternalRepresentationKHR *>( internalRepresentations.data() ) ) );
- VULKAN_HPP_ASSERT( internalRepresentationCount <= internalRepresentations.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( internalRepresentationCount < internalRepresentations.size() ) )
- {
- internalRepresentations.resize( internalRepresentationCount );
- }
- return createResultValue( result, internalRepresentations, VULKAN_HPP_NAMESPACE_STRING"::Device::getPipelineExecutableInternalRepresentationsKHR" );
- }
-
- template <typename PipelineExecutableInternalRepresentationKHRAllocator, typename Dispatch, typename B, typename std::enable_if<std::is_same<typename B::value_type, PipelineExecutableInternalRepresentationKHR>::value, int>::type >
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<PipelineExecutableInternalRepresentationKHR, PipelineExecutableInternalRepresentationKHRAllocator>>::type Device::getPipelineExecutableInternalRepresentationsKHR( const PipelineExecutableInfoKHR & executableInfo, PipelineExecutableInternalRepresentationKHRAllocator & pipelineExecutableInternalRepresentationKHRAllocator, Dispatch const & d ) const
- {
- std::vector<PipelineExecutableInternalRepresentationKHR, PipelineExecutableInternalRepresentationKHRAllocator> internalRepresentations( pipelineExecutableInternalRepresentationKHRAllocator );
- uint32_t internalRepresentationCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkGetPipelineExecutableInternalRepresentationsKHR( m_device, reinterpret_cast<const VkPipelineExecutableInfoKHR *>( &executableInfo ), &internalRepresentationCount, nullptr ) );
- if ( ( result == Result::eSuccess ) && internalRepresentationCount )
- {
- internalRepresentations.resize( internalRepresentationCount );
- result = static_cast<Result>( d.vkGetPipelineExecutableInternalRepresentationsKHR( m_device, reinterpret_cast<const VkPipelineExecutableInfoKHR *>( &executableInfo ), &internalRepresentationCount, reinterpret_cast<VkPipelineExecutableInternalRepresentationKHR *>( internalRepresentations.data() ) ) );
- VULKAN_HPP_ASSERT( internalRepresentationCount <= internalRepresentations.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( internalRepresentationCount < internalRepresentations.size() ) )
- {
- internalRepresentations.resize( internalRepresentationCount );
- }
- return createResultValue( result, internalRepresentations, VULKAN_HPP_NAMESPACE_STRING"::Device::getPipelineExecutableInternalRepresentationsKHR" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getPipelineExecutablePropertiesKHR( const VULKAN_HPP_NAMESPACE::PipelineInfoKHR* pPipelineInfo, uint32_t* pExecutableCount, VULKAN_HPP_NAMESPACE::PipelineExecutablePropertiesKHR* pProperties, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetPipelineExecutablePropertiesKHR( m_device, reinterpret_cast<const VkPipelineInfoKHR *>( pPipelineInfo ), pExecutableCount, reinterpret_cast< VkPipelineExecutablePropertiesKHR *>( pProperties ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename PipelineExecutablePropertiesKHRAllocator, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<PipelineExecutablePropertiesKHR, PipelineExecutablePropertiesKHRAllocator>>::type Device::getPipelineExecutablePropertiesKHR( const PipelineInfoKHR & pipelineInfo, Dispatch const & d ) const
- {
- std::vector<PipelineExecutablePropertiesKHR, PipelineExecutablePropertiesKHRAllocator> properties;
- uint32_t executableCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkGetPipelineExecutablePropertiesKHR( m_device, reinterpret_cast<const VkPipelineInfoKHR *>( &pipelineInfo ), &executableCount, nullptr ) );
- if ( ( result == Result::eSuccess ) && executableCount )
- {
- properties.resize( executableCount );
- result = static_cast<Result>( d.vkGetPipelineExecutablePropertiesKHR( m_device, reinterpret_cast<const VkPipelineInfoKHR *>( &pipelineInfo ), &executableCount, reinterpret_cast<VkPipelineExecutablePropertiesKHR *>( properties.data() ) ) );
- VULKAN_HPP_ASSERT( executableCount <= properties.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( executableCount < properties.size() ) )
- {
- properties.resize( executableCount );
- }
- return createResultValue( result, properties, VULKAN_HPP_NAMESPACE_STRING"::Device::getPipelineExecutablePropertiesKHR" );
- }
-
- template <typename PipelineExecutablePropertiesKHRAllocator, typename Dispatch, typename B, typename std::enable_if<std::is_same<typename B::value_type, PipelineExecutablePropertiesKHR>::value, int>::type >
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<PipelineExecutablePropertiesKHR, PipelineExecutablePropertiesKHRAllocator>>::type Device::getPipelineExecutablePropertiesKHR( const PipelineInfoKHR & pipelineInfo, PipelineExecutablePropertiesKHRAllocator & pipelineExecutablePropertiesKHRAllocator, Dispatch const & d ) const
- {
- std::vector<PipelineExecutablePropertiesKHR, PipelineExecutablePropertiesKHRAllocator> properties( pipelineExecutablePropertiesKHRAllocator );
- uint32_t executableCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkGetPipelineExecutablePropertiesKHR( m_device, reinterpret_cast<const VkPipelineInfoKHR *>( &pipelineInfo ), &executableCount, nullptr ) );
- if ( ( result == Result::eSuccess ) && executableCount )
- {
- properties.resize( executableCount );
- result = static_cast<Result>( d.vkGetPipelineExecutablePropertiesKHR( m_device, reinterpret_cast<const VkPipelineInfoKHR *>( &pipelineInfo ), &executableCount, reinterpret_cast<VkPipelineExecutablePropertiesKHR *>( properties.data() ) ) );
- VULKAN_HPP_ASSERT( executableCount <= properties.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( executableCount < properties.size() ) )
- {
- properties.resize( executableCount );
- }
- return createResultValue( result, properties, VULKAN_HPP_NAMESPACE_STRING"::Device::getPipelineExecutablePropertiesKHR" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getPipelineExecutableStatisticsKHR( const VULKAN_HPP_NAMESPACE::PipelineExecutableInfoKHR* pExecutableInfo, uint32_t* pStatisticCount, VULKAN_HPP_NAMESPACE::PipelineExecutableStatisticKHR* pStatistics, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetPipelineExecutableStatisticsKHR( m_device, reinterpret_cast<const VkPipelineExecutableInfoKHR *>( pExecutableInfo ), pStatisticCount, reinterpret_cast< VkPipelineExecutableStatisticKHR *>( pStatistics ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename PipelineExecutableStatisticKHRAllocator, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<PipelineExecutableStatisticKHR, PipelineExecutableStatisticKHRAllocator>>::type Device::getPipelineExecutableStatisticsKHR( const PipelineExecutableInfoKHR & executableInfo, Dispatch const & d ) const
- {
- std::vector<PipelineExecutableStatisticKHR, PipelineExecutableStatisticKHRAllocator> statistics;
- uint32_t statisticCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkGetPipelineExecutableStatisticsKHR( m_device, reinterpret_cast<const VkPipelineExecutableInfoKHR *>( &executableInfo ), &statisticCount, nullptr ) );
- if ( ( result == Result::eSuccess ) && statisticCount )
- {
- statistics.resize( statisticCount );
- result = static_cast<Result>( d.vkGetPipelineExecutableStatisticsKHR( m_device, reinterpret_cast<const VkPipelineExecutableInfoKHR *>( &executableInfo ), &statisticCount, reinterpret_cast<VkPipelineExecutableStatisticKHR *>( statistics.data() ) ) );
- VULKAN_HPP_ASSERT( statisticCount <= statistics.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( statisticCount < statistics.size() ) )
- {
- statistics.resize( statisticCount );
- }
- return createResultValue( result, statistics, VULKAN_HPP_NAMESPACE_STRING"::Device::getPipelineExecutableStatisticsKHR" );
- }
-
- template <typename PipelineExecutableStatisticKHRAllocator, typename Dispatch, typename B, typename std::enable_if<std::is_same<typename B::value_type, PipelineExecutableStatisticKHR>::value, int>::type >
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<PipelineExecutableStatisticKHR, PipelineExecutableStatisticKHRAllocator>>::type Device::getPipelineExecutableStatisticsKHR( const PipelineExecutableInfoKHR & executableInfo, PipelineExecutableStatisticKHRAllocator & pipelineExecutableStatisticKHRAllocator, Dispatch const & d ) const
- {
- std::vector<PipelineExecutableStatisticKHR, PipelineExecutableStatisticKHRAllocator> statistics( pipelineExecutableStatisticKHRAllocator );
- uint32_t statisticCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkGetPipelineExecutableStatisticsKHR( m_device, reinterpret_cast<const VkPipelineExecutableInfoKHR *>( &executableInfo ), &statisticCount, nullptr ) );
- if ( ( result == Result::eSuccess ) && statisticCount )
- {
- statistics.resize( statisticCount );
- result = static_cast<Result>( d.vkGetPipelineExecutableStatisticsKHR( m_device, reinterpret_cast<const VkPipelineExecutableInfoKHR *>( &executableInfo ), &statisticCount, reinterpret_cast<VkPipelineExecutableStatisticKHR *>( statistics.data() ) ) );
- VULKAN_HPP_ASSERT( statisticCount <= statistics.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( statisticCount < statistics.size() ) )
- {
- statistics.resize( statisticCount );
- }
- return createResultValue( result, statistics, VULKAN_HPP_NAMESPACE_STRING"::Device::getPipelineExecutableStatisticsKHR" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::getPrivateDataEXT( VULKAN_HPP_NAMESPACE::ObjectType objectType, uint64_t objectHandle, VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT privateDataSlot, uint64_t* pData, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkGetPrivateDataEXT( m_device, static_cast<VkObjectType>( objectType ), objectHandle, static_cast<VkPrivateDataSlotEXT>( privateDataSlot ), pData );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE uint64_t Device::getPrivateDataEXT( VULKAN_HPP_NAMESPACE::ObjectType objectType, uint64_t objectHandle, VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT privateDataSlot, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- uint64_t data;
- d.vkGetPrivateDataEXT( m_device, static_cast<VkObjectType>( objectType ), objectHandle, static_cast<VkPrivateDataSlotEXT>( privateDataSlot ), &data );
- return data;
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getQueryPoolResults( VULKAN_HPP_NAMESPACE::QueryPool queryPool, uint32_t firstQuery, uint32_t queryCount, size_t dataSize, void* pData, VULKAN_HPP_NAMESPACE::DeviceSize stride, VULKAN_HPP_NAMESPACE::QueryResultFlags flags, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetQueryPoolResults( m_device, static_cast<VkQueryPool>( queryPool ), firstQuery, queryCount, dataSize, pData, static_cast<VkDeviceSize>( stride ), static_cast<VkQueryResultFlags>( flags ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename T, typename Dispatch>
- VULKAN_HPP_DEPRECATED( "This function is deprecated. Use one of the other flavours of it.")
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getQueryPoolResults( VULKAN_HPP_NAMESPACE::QueryPool queryPool, uint32_t firstQuery, uint32_t queryCount, ArrayProxy<T> const &data, VULKAN_HPP_NAMESPACE::DeviceSize stride, VULKAN_HPP_NAMESPACE::QueryResultFlags flags, Dispatch const &d ) const
- {
- Result result = static_cast<Result>( d.vkGetQueryPoolResults( m_device, static_cast<VkQueryPool>( queryPool ), firstQuery, queryCount, data.size() * sizeof( T ) , reinterpret_cast<void*>( data.data() ), static_cast<VkDeviceSize>( stride ), static_cast<VkQueryResultFlags>( flags ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING"::Device::getQueryPoolResults", { Result::eSuccess, Result::eNotReady } );
-
- }
-
- template <typename T, typename Allocator, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE ResultValue<std::vector<T,Allocator>> Device::getQueryPoolResults( VULKAN_HPP_NAMESPACE::QueryPool queryPool, uint32_t firstQuery, uint32_t queryCount, size_t dataSize, VULKAN_HPP_NAMESPACE::DeviceSize stride, VULKAN_HPP_NAMESPACE::QueryResultFlags flags, Dispatch const & d ) const
- {
- VULKAN_HPP_ASSERT( dataSize % sizeof( T ) == 0 );
- std::vector<T,Allocator> data( dataSize / sizeof( T ) );
- Result result = static_cast<Result>( d.vkGetQueryPoolResults( m_device, static_cast<VkQueryPool>( queryPool ), firstQuery, queryCount, data.size() * sizeof( T ), reinterpret_cast<void *>( data.data() ), static_cast<VkDeviceSize>( stride ), static_cast<VkQueryResultFlags>( flags ) ) );
- return createResultValue( result, data, VULKAN_HPP_NAMESPACE_STRING "::Device::getQueryPoolResults", { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::eNotReady } );
- }
-
- template <typename T, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE ResultValue<T> Device::getQueryPoolResult( VULKAN_HPP_NAMESPACE::QueryPool queryPool, uint32_t firstQuery, uint32_t queryCount, VULKAN_HPP_NAMESPACE::DeviceSize stride, VULKAN_HPP_NAMESPACE::QueryResultFlags flags, Dispatch const & d ) const
- {
- T data;
- Result result = static_cast<Result>( d.vkGetQueryPoolResults( m_device, static_cast<VkQueryPool>( queryPool ), firstQuery, queryCount, sizeof( T ), reinterpret_cast<void *>( &data ), static_cast<VkDeviceSize>( stride ), static_cast<VkQueryResultFlags>( flags ) ) );
- return createResultValue( result, data, VULKAN_HPP_NAMESPACE_STRING "::Device::getQueryPoolResult", { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::eNotReady } );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getRayTracingCaptureReplayShaderGroupHandlesKHR( VULKAN_HPP_NAMESPACE::Pipeline pipeline, uint32_t firstGroup, uint32_t groupCount, size_t dataSize, void* pData, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetRayTracingCaptureReplayShaderGroupHandlesKHR( m_device, static_cast<VkPipeline>( pipeline ), firstGroup, groupCount, dataSize, pData ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename T, typename Dispatch>
- VULKAN_HPP_DEPRECATED( "This function is deprecated. Use one of the other flavours of it.")
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type Device::getRayTracingCaptureReplayShaderGroupHandlesKHR( VULKAN_HPP_NAMESPACE::Pipeline pipeline, uint32_t firstGroup, uint32_t groupCount, ArrayProxy<T> const &data, Dispatch const &d ) const
- {
- Result result = static_cast<Result>( d.vkGetRayTracingCaptureReplayShaderGroupHandlesKHR( m_device, static_cast<VkPipeline>( pipeline ), firstGroup, groupCount, data.size() * sizeof( T ) , reinterpret_cast<void*>( data.data() ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING"::Device::getRayTracingCaptureReplayShaderGroupHandlesKHR" );
-
- }
-
- template <typename T, typename Allocator, typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<std::vector<T,Allocator>>::type Device::getRayTracingCaptureReplayShaderGroupHandlesKHR( VULKAN_HPP_NAMESPACE::Pipeline pipeline, uint32_t firstGroup, uint32_t groupCount, size_t dataSize, Dispatch const & d ) const
- {
- VULKAN_HPP_ASSERT( dataSize % sizeof( T ) == 0 );
- std::vector<T,Allocator> data( dataSize / sizeof( T ) );
- Result result = static_cast<Result>( d.vkGetRayTracingCaptureReplayShaderGroupHandlesKHR( m_device, static_cast<VkPipeline>( pipeline ), firstGroup, groupCount, data.size() * sizeof( T ), reinterpret_cast<void *>( data.data() ) ) );
- return createResultValue( result, data, VULKAN_HPP_NAMESPACE_STRING "::Device::getRayTracingCaptureReplayShaderGroupHandlesKHR" );
- }
-
- template <typename T, typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<T>::type Device::getRayTracingCaptureReplayShaderGroupHandleKHR( VULKAN_HPP_NAMESPACE::Pipeline pipeline, uint32_t firstGroup, uint32_t groupCount, Dispatch const & d ) const
- {
- T data;
- Result result = static_cast<Result>( d.vkGetRayTracingCaptureReplayShaderGroupHandlesKHR( m_device, static_cast<VkPipeline>( pipeline ), firstGroup, groupCount, sizeof( T ), reinterpret_cast<void *>( &data ) ) );
- return createResultValue( result, data, VULKAN_HPP_NAMESPACE_STRING "::Device::getRayTracingCaptureReplayShaderGroupHandleKHR" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getRayTracingShaderGroupHandlesKHR( VULKAN_HPP_NAMESPACE::Pipeline pipeline, uint32_t firstGroup, uint32_t groupCount, size_t dataSize, void* pData, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetRayTracingShaderGroupHandlesKHR( m_device, static_cast<VkPipeline>( pipeline ), firstGroup, groupCount, dataSize, pData ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename T, typename Dispatch>
- VULKAN_HPP_DEPRECATED( "This function is deprecated. Use one of the other flavours of it.")
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type Device::getRayTracingShaderGroupHandlesKHR( VULKAN_HPP_NAMESPACE::Pipeline pipeline, uint32_t firstGroup, uint32_t groupCount, ArrayProxy<T> const &data, Dispatch const &d ) const
- {
- Result result = static_cast<Result>( d.vkGetRayTracingShaderGroupHandlesKHR( m_device, static_cast<VkPipeline>( pipeline ), firstGroup, groupCount, data.size() * sizeof( T ) , reinterpret_cast<void*>( data.data() ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING"::Device::getRayTracingShaderGroupHandlesKHR" );
-
- }
-
- template <typename T, typename Allocator, typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<std::vector<T,Allocator>>::type Device::getRayTracingShaderGroupHandlesKHR( VULKAN_HPP_NAMESPACE::Pipeline pipeline, uint32_t firstGroup, uint32_t groupCount, size_t dataSize, Dispatch const & d ) const
- {
- VULKAN_HPP_ASSERT( dataSize % sizeof( T ) == 0 );
- std::vector<T,Allocator> data( dataSize / sizeof( T ) );
- Result result = static_cast<Result>( d.vkGetRayTracingShaderGroupHandlesKHR( m_device, static_cast<VkPipeline>( pipeline ), firstGroup, groupCount, data.size() * sizeof( T ), reinterpret_cast<void *>( data.data() ) ) );
- return createResultValue( result, data, VULKAN_HPP_NAMESPACE_STRING "::Device::getRayTracingShaderGroupHandlesKHR" );
- }
-
- template <typename T, typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<T>::type Device::getRayTracingShaderGroupHandleKHR( VULKAN_HPP_NAMESPACE::Pipeline pipeline, uint32_t firstGroup, uint32_t groupCount, Dispatch const & d ) const
- {
- T data;
- Result result = static_cast<Result>( d.vkGetRayTracingShaderGroupHandlesKHR( m_device, static_cast<VkPipeline>( pipeline ), firstGroup, groupCount, sizeof( T ), reinterpret_cast<void *>( &data ) ) );
- return createResultValue( result, data, VULKAN_HPP_NAMESPACE_STRING "::Device::getRayTracingShaderGroupHandleKHR" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getRayTracingShaderGroupHandlesNV( VULKAN_HPP_NAMESPACE::Pipeline pipeline, uint32_t firstGroup, uint32_t groupCount, size_t dataSize, void* pData, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetRayTracingShaderGroupHandlesNV( m_device, static_cast<VkPipeline>( pipeline ), firstGroup, groupCount, dataSize, pData ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename T, typename Dispatch>
- VULKAN_HPP_DEPRECATED( "This function is deprecated. Use one of the other flavours of it.")
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type Device::getRayTracingShaderGroupHandlesNV( VULKAN_HPP_NAMESPACE::Pipeline pipeline, uint32_t firstGroup, uint32_t groupCount, ArrayProxy<T> const &data, Dispatch const &d ) const
- {
- Result result = static_cast<Result>( d.vkGetRayTracingShaderGroupHandlesNV( m_device, static_cast<VkPipeline>( pipeline ), firstGroup, groupCount, data.size() * sizeof( T ) , reinterpret_cast<void*>( data.data() ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING"::Device::getRayTracingShaderGroupHandlesNV" );
-
- }
-
- template <typename T, typename Allocator, typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<std::vector<T,Allocator>>::type Device::getRayTracingShaderGroupHandlesNV( VULKAN_HPP_NAMESPACE::Pipeline pipeline, uint32_t firstGroup, uint32_t groupCount, size_t dataSize, Dispatch const & d ) const
- {
- VULKAN_HPP_ASSERT( dataSize % sizeof( T ) == 0 );
- std::vector<T,Allocator> data( dataSize / sizeof( T ) );
- Result result = static_cast<Result>( d.vkGetRayTracingShaderGroupHandlesNV( m_device, static_cast<VkPipeline>( pipeline ), firstGroup, groupCount, data.size() * sizeof( T ), reinterpret_cast<void *>( data.data() ) ) );
- return createResultValue( result, data, VULKAN_HPP_NAMESPACE_STRING "::Device::getRayTracingShaderGroupHandlesNV" );
- }
-
- template <typename T, typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<T>::type Device::getRayTracingShaderGroupHandleNV( VULKAN_HPP_NAMESPACE::Pipeline pipeline, uint32_t firstGroup, uint32_t groupCount, Dispatch const & d ) const
- {
- T data;
- Result result = static_cast<Result>( d.vkGetRayTracingShaderGroupHandlesNV( m_device, static_cast<VkPipeline>( pipeline ), firstGroup, groupCount, sizeof( T ), reinterpret_cast<void *>( &data ) ) );
- return createResultValue( result, data, VULKAN_HPP_NAMESPACE_STRING "::Device::getRayTracingShaderGroupHandleNV" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE DeviceSize Device::getRayTracingShaderGroupStackSizeKHR( VULKAN_HPP_NAMESPACE::Pipeline pipeline, uint32_t group, VULKAN_HPP_NAMESPACE::ShaderGroupShaderKHR groupShader, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<DeviceSize>( d.vkGetRayTracingShaderGroupStackSizeKHR( m_device, static_cast<VkPipeline>( pipeline ), group, static_cast<VkShaderGroupShaderKHR>( groupShader ) ) );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getRefreshCycleDurationGOOGLE( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain, VULKAN_HPP_NAMESPACE::RefreshCycleDurationGOOGLE* pDisplayTimingProperties, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetRefreshCycleDurationGOOGLE( m_device, static_cast<VkSwapchainKHR>( swapchain ), reinterpret_cast< VkRefreshCycleDurationGOOGLE *>( pDisplayTimingProperties ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::RefreshCycleDurationGOOGLE>::type Device::getRefreshCycleDurationGOOGLE( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::RefreshCycleDurationGOOGLE displayTimingProperties;
- Result result = static_cast<Result>( d.vkGetRefreshCycleDurationGOOGLE( m_device, static_cast<VkSwapchainKHR>( swapchain ), reinterpret_cast<VkRefreshCycleDurationGOOGLE *>( &displayTimingProperties ) ) );
- return createResultValue( result, displayTimingProperties, VULKAN_HPP_NAMESPACE_STRING "::Device::getRefreshCycleDurationGOOGLE" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::getRenderAreaGranularity( VULKAN_HPP_NAMESPACE::RenderPass renderPass, VULKAN_HPP_NAMESPACE::Extent2D* pGranularity, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkGetRenderAreaGranularity( m_device, static_cast<VkRenderPass>( renderPass ), reinterpret_cast< VkExtent2D *>( pGranularity ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::Extent2D Device::getRenderAreaGranularity( VULKAN_HPP_NAMESPACE::RenderPass renderPass, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- VULKAN_HPP_NAMESPACE::Extent2D granularity;
- d.vkGetRenderAreaGranularity( m_device, static_cast<VkRenderPass>( renderPass ), reinterpret_cast<VkExtent2D *>( &granularity ) );
- return granularity;
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getSemaphoreCounterValue( VULKAN_HPP_NAMESPACE::Semaphore semaphore, uint64_t* pValue, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetSemaphoreCounterValue( m_device, static_cast<VkSemaphore>( semaphore ), pValue ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<uint64_t>::type Device::getSemaphoreCounterValue( VULKAN_HPP_NAMESPACE::Semaphore semaphore, Dispatch const & d ) const
- {
- uint64_t value;
- Result result = static_cast<Result>( d.vkGetSemaphoreCounterValue( m_device, static_cast<VkSemaphore>( semaphore ), &value ) );
- return createResultValue( result, value, VULKAN_HPP_NAMESPACE_STRING "::Device::getSemaphoreCounterValue" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getSemaphoreCounterValueKHR( VULKAN_HPP_NAMESPACE::Semaphore semaphore, uint64_t* pValue, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetSemaphoreCounterValueKHR( m_device, static_cast<VkSemaphore>( semaphore ), pValue ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<uint64_t>::type Device::getSemaphoreCounterValueKHR( VULKAN_HPP_NAMESPACE::Semaphore semaphore, Dispatch const & d ) const
- {
- uint64_t value;
- Result result = static_cast<Result>( d.vkGetSemaphoreCounterValueKHR( m_device, static_cast<VkSemaphore>( semaphore ), &value ) );
- return createResultValue( result, value, VULKAN_HPP_NAMESPACE_STRING "::Device::getSemaphoreCounterValueKHR" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getSemaphoreFdKHR( const VULKAN_HPP_NAMESPACE::SemaphoreGetFdInfoKHR* pGetFdInfo, int* pFd, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetSemaphoreFdKHR( m_device, reinterpret_cast<const VkSemaphoreGetFdInfoKHR *>( pGetFdInfo ), pFd ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<int>::type Device::getSemaphoreFdKHR( const SemaphoreGetFdInfoKHR & getFdInfo, Dispatch const & d ) const
- {
- int fd;
- Result result = static_cast<Result>( d.vkGetSemaphoreFdKHR( m_device, reinterpret_cast<const VkSemaphoreGetFdInfoKHR *>( &getFdInfo ), &fd ) );
- return createResultValue( result, fd, VULKAN_HPP_NAMESPACE_STRING "::Device::getSemaphoreFdKHR" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getSemaphoreWin32HandleKHR( const VULKAN_HPP_NAMESPACE::SemaphoreGetWin32HandleInfoKHR* pGetWin32HandleInfo, HANDLE* pHandle, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetSemaphoreWin32HandleKHR( m_device, reinterpret_cast<const VkSemaphoreGetWin32HandleInfoKHR *>( pGetWin32HandleInfo ), pHandle ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<HANDLE>::type Device::getSemaphoreWin32HandleKHR( const SemaphoreGetWin32HandleInfoKHR & getWin32HandleInfo, Dispatch const & d ) const
- {
- HANDLE handle;
- Result result = static_cast<Result>( d.vkGetSemaphoreWin32HandleKHR( m_device, reinterpret_cast<const VkSemaphoreGetWin32HandleInfoKHR *>( &getWin32HandleInfo ), &handle ) );
- return createResultValue( result, handle, VULKAN_HPP_NAMESPACE_STRING "::Device::getSemaphoreWin32HandleKHR" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getShaderInfoAMD( VULKAN_HPP_NAMESPACE::Pipeline pipeline, VULKAN_HPP_NAMESPACE::ShaderStageFlagBits shaderStage, VULKAN_HPP_NAMESPACE::ShaderInfoTypeAMD infoType, size_t* pInfoSize, void* pInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetShaderInfoAMD( m_device, static_cast<VkPipeline>( pipeline ), static_cast<VkShaderStageFlagBits>( shaderStage ), static_cast<VkShaderInfoTypeAMD>( infoType ), pInfoSize, pInfo ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Uint8_tAllocator, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<uint8_t, Uint8_tAllocator>>::type Device::getShaderInfoAMD( VULKAN_HPP_NAMESPACE::Pipeline pipeline, VULKAN_HPP_NAMESPACE::ShaderStageFlagBits shaderStage, VULKAN_HPP_NAMESPACE::ShaderInfoTypeAMD infoType, Dispatch const & d ) const
- {
- std::vector<uint8_t, Uint8_tAllocator> info;
- size_t infoSize;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkGetShaderInfoAMD( m_device, static_cast<VkPipeline>( pipeline ), static_cast<VkShaderStageFlagBits>( shaderStage ), static_cast<VkShaderInfoTypeAMD>( infoType ), &infoSize, nullptr ) );
- if ( ( result == Result::eSuccess ) && infoSize )
- {
- info.resize( infoSize );
- result = static_cast<Result>( d.vkGetShaderInfoAMD( m_device, static_cast<VkPipeline>( pipeline ), static_cast<VkShaderStageFlagBits>( shaderStage ), static_cast<VkShaderInfoTypeAMD>( infoType ), &infoSize, reinterpret_cast<void *>( info.data() ) ) );
- VULKAN_HPP_ASSERT( infoSize <= info.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( infoSize < info.size() ) )
- {
- info.resize( infoSize );
- }
- return createResultValue( result, info, VULKAN_HPP_NAMESPACE_STRING"::Device::getShaderInfoAMD" );
- }
-
- template <typename Uint8_tAllocator, typename Dispatch, typename B, typename std::enable_if<std::is_same<typename B::value_type, uint8_t>::value, int>::type >
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<uint8_t, Uint8_tAllocator>>::type Device::getShaderInfoAMD( VULKAN_HPP_NAMESPACE::Pipeline pipeline, VULKAN_HPP_NAMESPACE::ShaderStageFlagBits shaderStage, VULKAN_HPP_NAMESPACE::ShaderInfoTypeAMD infoType, Uint8_tAllocator & uint8_tAllocator, Dispatch const & d ) const
- {
- std::vector<uint8_t, Uint8_tAllocator> info( uint8_tAllocator );
- size_t infoSize;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkGetShaderInfoAMD( m_device, static_cast<VkPipeline>( pipeline ), static_cast<VkShaderStageFlagBits>( shaderStage ), static_cast<VkShaderInfoTypeAMD>( infoType ), &infoSize, nullptr ) );
- if ( ( result == Result::eSuccess ) && infoSize )
- {
- info.resize( infoSize );
- result = static_cast<Result>( d.vkGetShaderInfoAMD( m_device, static_cast<VkPipeline>( pipeline ), static_cast<VkShaderStageFlagBits>( shaderStage ), static_cast<VkShaderInfoTypeAMD>( infoType ), &infoSize, reinterpret_cast<void *>( info.data() ) ) );
- VULKAN_HPP_ASSERT( infoSize <= info.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( infoSize < info.size() ) )
- {
- info.resize( infoSize );
- }
- return createResultValue( result, info, VULKAN_HPP_NAMESPACE_STRING"::Device::getShaderInfoAMD" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getSwapchainCounterEXT( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain, VULKAN_HPP_NAMESPACE::SurfaceCounterFlagBitsEXT counter, uint64_t* pCounterValue, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetSwapchainCounterEXT( m_device, static_cast<VkSwapchainKHR>( swapchain ), static_cast<VkSurfaceCounterFlagBitsEXT>( counter ), pCounterValue ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<uint64_t>::type Device::getSwapchainCounterEXT( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain, VULKAN_HPP_NAMESPACE::SurfaceCounterFlagBitsEXT counter, Dispatch const & d ) const
- {
- uint64_t counterValue;
- Result result = static_cast<Result>( d.vkGetSwapchainCounterEXT( m_device, static_cast<VkSwapchainKHR>( swapchain ), static_cast<VkSurfaceCounterFlagBitsEXT>( counter ), &counterValue ) );
- return createResultValue( result, counterValue, VULKAN_HPP_NAMESPACE_STRING "::Device::getSwapchainCounterEXT" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getSwapchainImagesKHR( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain, uint32_t* pSwapchainImageCount, VULKAN_HPP_NAMESPACE::Image* pSwapchainImages, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetSwapchainImagesKHR( m_device, static_cast<VkSwapchainKHR>( swapchain ), pSwapchainImageCount, reinterpret_cast< VkImage *>( pSwapchainImages ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename ImageAllocator, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<Image, ImageAllocator>>::type Device::getSwapchainImagesKHR( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain, Dispatch const & d ) const
- {
- std::vector<Image, ImageAllocator> swapchainImages;
- uint32_t swapchainImageCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkGetSwapchainImagesKHR( m_device, static_cast<VkSwapchainKHR>( swapchain ), &swapchainImageCount, nullptr ) );
- if ( ( result == Result::eSuccess ) && swapchainImageCount )
- {
- swapchainImages.resize( swapchainImageCount );
- result = static_cast<Result>( d.vkGetSwapchainImagesKHR( m_device, static_cast<VkSwapchainKHR>( swapchain ), &swapchainImageCount, reinterpret_cast<VkImage *>( swapchainImages.data() ) ) );
- VULKAN_HPP_ASSERT( swapchainImageCount <= swapchainImages.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( swapchainImageCount < swapchainImages.size() ) )
- {
- swapchainImages.resize( swapchainImageCount );
- }
- return createResultValue( result, swapchainImages, VULKAN_HPP_NAMESPACE_STRING"::Device::getSwapchainImagesKHR" );
- }
-
- template <typename ImageAllocator, typename Dispatch, typename B, typename std::enable_if<std::is_same<typename B::value_type, Image>::value, int>::type >
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<Image, ImageAllocator>>::type Device::getSwapchainImagesKHR( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain, ImageAllocator & imageAllocator, Dispatch const & d ) const
- {
- std::vector<Image, ImageAllocator> swapchainImages( imageAllocator );
- uint32_t swapchainImageCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkGetSwapchainImagesKHR( m_device, static_cast<VkSwapchainKHR>( swapchain ), &swapchainImageCount, nullptr ) );
- if ( ( result == Result::eSuccess ) && swapchainImageCount )
- {
- swapchainImages.resize( swapchainImageCount );
- result = static_cast<Result>( d.vkGetSwapchainImagesKHR( m_device, static_cast<VkSwapchainKHR>( swapchain ), &swapchainImageCount, reinterpret_cast<VkImage *>( swapchainImages.data() ) ) );
- VULKAN_HPP_ASSERT( swapchainImageCount <= swapchainImages.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( swapchainImageCount < swapchainImages.size() ) )
- {
- swapchainImages.resize( swapchainImageCount );
- }
- return createResultValue( result, swapchainImages, VULKAN_HPP_NAMESPACE_STRING"::Device::getSwapchainImagesKHR" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getSwapchainStatusKHR( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetSwapchainStatusKHR( m_device, static_cast<VkSwapchainKHR>( swapchain ) ) );
- }
-#else
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getSwapchainStatusKHR( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkGetSwapchainStatusKHR( m_device, static_cast<VkSwapchainKHR>( swapchain ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::getSwapchainStatusKHR", { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::eSuboptimalKHR } );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getValidationCacheDataEXT( VULKAN_HPP_NAMESPACE::ValidationCacheEXT validationCache, size_t* pDataSize, void* pData, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetValidationCacheDataEXT( m_device, static_cast<VkValidationCacheEXT>( validationCache ), pDataSize, pData ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Uint8_tAllocator, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<uint8_t, Uint8_tAllocator>>::type Device::getValidationCacheDataEXT( VULKAN_HPP_NAMESPACE::ValidationCacheEXT validationCache, Dispatch const & d ) const
- {
- std::vector<uint8_t, Uint8_tAllocator> data;
- size_t dataSize;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkGetValidationCacheDataEXT( m_device, static_cast<VkValidationCacheEXT>( validationCache ), &dataSize, nullptr ) );
- if ( ( result == Result::eSuccess ) && dataSize )
- {
- data.resize( dataSize );
- result = static_cast<Result>( d.vkGetValidationCacheDataEXT( m_device, static_cast<VkValidationCacheEXT>( validationCache ), &dataSize, reinterpret_cast<void *>( data.data() ) ) );
- VULKAN_HPP_ASSERT( dataSize <= data.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( dataSize < data.size() ) )
- {
- data.resize( dataSize );
- }
- return createResultValue( result, data, VULKAN_HPP_NAMESPACE_STRING"::Device::getValidationCacheDataEXT" );
- }
-
- template <typename Uint8_tAllocator, typename Dispatch, typename B, typename std::enable_if<std::is_same<typename B::value_type, uint8_t>::value, int>::type >
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<uint8_t, Uint8_tAllocator>>::type Device::getValidationCacheDataEXT( VULKAN_HPP_NAMESPACE::ValidationCacheEXT validationCache, Uint8_tAllocator & uint8_tAllocator, Dispatch const & d ) const
- {
- std::vector<uint8_t, Uint8_tAllocator> data( uint8_tAllocator );
- size_t dataSize;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkGetValidationCacheDataEXT( m_device, static_cast<VkValidationCacheEXT>( validationCache ), &dataSize, nullptr ) );
- if ( ( result == Result::eSuccess ) && dataSize )
- {
- data.resize( dataSize );
- result = static_cast<Result>( d.vkGetValidationCacheDataEXT( m_device, static_cast<VkValidationCacheEXT>( validationCache ), &dataSize, reinterpret_cast<void *>( data.data() ) ) );
- VULKAN_HPP_ASSERT( dataSize <= data.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( dataSize < data.size() ) )
- {
- data.resize( dataSize );
- }
- return createResultValue( result, data, VULKAN_HPP_NAMESPACE_STRING"::Device::getValidationCacheDataEXT" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::importFenceFdKHR( const VULKAN_HPP_NAMESPACE::ImportFenceFdInfoKHR* pImportFenceFdInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkImportFenceFdKHR( m_device, reinterpret_cast<const VkImportFenceFdInfoKHR *>( pImportFenceFdInfo ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type Device::importFenceFdKHR( const ImportFenceFdInfoKHR & importFenceFdInfo, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkImportFenceFdKHR( m_device, reinterpret_cast<const VkImportFenceFdInfoKHR *>( &importFenceFdInfo ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::importFenceFdKHR" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::importFenceWin32HandleKHR( const VULKAN_HPP_NAMESPACE::ImportFenceWin32HandleInfoKHR* pImportFenceWin32HandleInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkImportFenceWin32HandleKHR( m_device, reinterpret_cast<const VkImportFenceWin32HandleInfoKHR *>( pImportFenceWin32HandleInfo ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type Device::importFenceWin32HandleKHR( const ImportFenceWin32HandleInfoKHR & importFenceWin32HandleInfo, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkImportFenceWin32HandleKHR( m_device, reinterpret_cast<const VkImportFenceWin32HandleInfoKHR *>( &importFenceWin32HandleInfo ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::importFenceWin32HandleKHR" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::importSemaphoreFdKHR( const VULKAN_HPP_NAMESPACE::ImportSemaphoreFdInfoKHR* pImportSemaphoreFdInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkImportSemaphoreFdKHR( m_device, reinterpret_cast<const VkImportSemaphoreFdInfoKHR *>( pImportSemaphoreFdInfo ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type Device::importSemaphoreFdKHR( const ImportSemaphoreFdInfoKHR & importSemaphoreFdInfo, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkImportSemaphoreFdKHR( m_device, reinterpret_cast<const VkImportSemaphoreFdInfoKHR *>( &importSemaphoreFdInfo ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::importSemaphoreFdKHR" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::importSemaphoreWin32HandleKHR( const VULKAN_HPP_NAMESPACE::ImportSemaphoreWin32HandleInfoKHR* pImportSemaphoreWin32HandleInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkImportSemaphoreWin32HandleKHR( m_device, reinterpret_cast<const VkImportSemaphoreWin32HandleInfoKHR *>( pImportSemaphoreWin32HandleInfo ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type Device::importSemaphoreWin32HandleKHR( const ImportSemaphoreWin32HandleInfoKHR & importSemaphoreWin32HandleInfo, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkImportSemaphoreWin32HandleKHR( m_device, reinterpret_cast<const VkImportSemaphoreWin32HandleInfoKHR *>( &importSemaphoreWin32HandleInfo ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::importSemaphoreWin32HandleKHR" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::initializePerformanceApiINTEL( const VULKAN_HPP_NAMESPACE::InitializePerformanceApiInfoINTEL* pInitializeInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkInitializePerformanceApiINTEL( m_device, reinterpret_cast<const VkInitializePerformanceApiInfoINTEL *>( pInitializeInfo ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type Device::initializePerformanceApiINTEL( const InitializePerformanceApiInfoINTEL & initializeInfo, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkInitializePerformanceApiINTEL( m_device, reinterpret_cast<const VkInitializePerformanceApiInfoINTEL *>( &initializeInfo ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::initializePerformanceApiINTEL" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::invalidateMappedMemoryRanges( uint32_t memoryRangeCount, const VULKAN_HPP_NAMESPACE::MappedMemoryRange* pMemoryRanges, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkInvalidateMappedMemoryRanges( m_device, memoryRangeCount, reinterpret_cast<const VkMappedMemoryRange *>( pMemoryRanges ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type Device::invalidateMappedMemoryRanges( ArrayProxy<const VULKAN_HPP_NAMESPACE::MappedMemoryRange> const & memoryRanges, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkInvalidateMappedMemoryRanges( m_device, memoryRanges.size(), reinterpret_cast<const VkMappedMemoryRange *>( memoryRanges.data() ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::invalidateMappedMemoryRanges" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::mapMemory( VULKAN_HPP_NAMESPACE::DeviceMemory memory, VULKAN_HPP_NAMESPACE::DeviceSize offset, VULKAN_HPP_NAMESPACE::DeviceSize size, VULKAN_HPP_NAMESPACE::MemoryMapFlags flags, void** ppData, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkMapMemory( m_device, static_cast<VkDeviceMemory>( memory ), static_cast<VkDeviceSize>( offset ), static_cast<VkDeviceSize>( size ), static_cast<VkMemoryMapFlags>( flags ), ppData ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void*>::type Device::mapMemory( VULKAN_HPP_NAMESPACE::DeviceMemory memory, VULKAN_HPP_NAMESPACE::DeviceSize offset, VULKAN_HPP_NAMESPACE::DeviceSize size, VULKAN_HPP_NAMESPACE::MemoryMapFlags flags, Dispatch const & d ) const
- {
- void* pData;
- Result result = static_cast<Result>( d.vkMapMemory( m_device, static_cast<VkDeviceMemory>( memory ), static_cast<VkDeviceSize>( offset ), static_cast<VkDeviceSize>( size ), static_cast<VkMemoryMapFlags>( flags ), &pData ) );
- return createResultValue( result, pData, VULKAN_HPP_NAMESPACE_STRING "::Device::mapMemory" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::mergePipelineCaches( VULKAN_HPP_NAMESPACE::PipelineCache dstCache, uint32_t srcCacheCount, const VULKAN_HPP_NAMESPACE::PipelineCache* pSrcCaches, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkMergePipelineCaches( m_device, static_cast<VkPipelineCache>( dstCache ), srcCacheCount, reinterpret_cast<const VkPipelineCache *>( pSrcCaches ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type Device::mergePipelineCaches( VULKAN_HPP_NAMESPACE::PipelineCache dstCache, ArrayProxy<const VULKAN_HPP_NAMESPACE::PipelineCache> const & srcCaches, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkMergePipelineCaches( m_device, static_cast<VkPipelineCache>( dstCache ), srcCaches.size(), reinterpret_cast<const VkPipelineCache *>( srcCaches.data() ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::mergePipelineCaches" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::mergeValidationCachesEXT( VULKAN_HPP_NAMESPACE::ValidationCacheEXT dstCache, uint32_t srcCacheCount, const VULKAN_HPP_NAMESPACE::ValidationCacheEXT* pSrcCaches, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkMergeValidationCachesEXT( m_device, static_cast<VkValidationCacheEXT>( dstCache ), srcCacheCount, reinterpret_cast<const VkValidationCacheEXT *>( pSrcCaches ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type Device::mergeValidationCachesEXT( VULKAN_HPP_NAMESPACE::ValidationCacheEXT dstCache, ArrayProxy<const VULKAN_HPP_NAMESPACE::ValidationCacheEXT> const & srcCaches, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkMergeValidationCachesEXT( m_device, static_cast<VkValidationCacheEXT>( dstCache ), srcCaches.size(), reinterpret_cast<const VkValidationCacheEXT *>( srcCaches.data() ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::mergeValidationCachesEXT" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::registerEventEXT( const VULKAN_HPP_NAMESPACE::DeviceEventInfoEXT* pDeviceEventInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::Fence* pFence, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkRegisterDeviceEventEXT( m_device, reinterpret_cast<const VkDeviceEventInfoEXT *>( pDeviceEventInfo ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ), reinterpret_cast< VkFence *>( pFence ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::Fence>::type Device::registerEventEXT( const DeviceEventInfoEXT & deviceEventInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::Fence fence;
- Result result = static_cast<Result>( d.vkRegisterDeviceEventEXT( m_device, reinterpret_cast<const VkDeviceEventInfoEXT *>( &deviceEventInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkFence *>( &fence ) ) );
- return createResultValue( result, fence, VULKAN_HPP_NAMESPACE_STRING "::Device::registerEventEXT" );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch>
- VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::Fence, Dispatch>>::type Device::registerEventEXTUnique( const DeviceEventInfoEXT & deviceEventInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::Fence fence;
- Result result = static_cast<Result>( d.vkRegisterDeviceEventEXT( m_device, reinterpret_cast<const VkDeviceEventInfoEXT *>( &deviceEventInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkFence *>( &fence ) ) );
- ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
- return createResultValue<VULKAN_HPP_NAMESPACE::Fence, Dispatch>( result, fence, VULKAN_HPP_NAMESPACE_STRING "::Device::registerEventEXTUnique", deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::registerDisplayEventEXT( VULKAN_HPP_NAMESPACE::DisplayKHR display, const VULKAN_HPP_NAMESPACE::DisplayEventInfoEXT* pDisplayEventInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::Fence* pFence, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkRegisterDisplayEventEXT( m_device, static_cast<VkDisplayKHR>( display ), reinterpret_cast<const VkDisplayEventInfoEXT *>( pDisplayEventInfo ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ), reinterpret_cast< VkFence *>( pFence ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::Fence>::type Device::registerDisplayEventEXT( VULKAN_HPP_NAMESPACE::DisplayKHR display, const DisplayEventInfoEXT & displayEventInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::Fence fence;
- Result result = static_cast<Result>( d.vkRegisterDisplayEventEXT( m_device, static_cast<VkDisplayKHR>( display ), reinterpret_cast<const VkDisplayEventInfoEXT *>( &displayEventInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkFence *>( &fence ) ) );
- return createResultValue( result, fence, VULKAN_HPP_NAMESPACE_STRING "::Device::registerDisplayEventEXT" );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch>
- VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::Fence, Dispatch>>::type Device::registerDisplayEventEXTUnique( VULKAN_HPP_NAMESPACE::DisplayKHR display, const DisplayEventInfoEXT & displayEventInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::Fence fence;
- Result result = static_cast<Result>( d.vkRegisterDisplayEventEXT( m_device, static_cast<VkDisplayKHR>( display ), reinterpret_cast<const VkDisplayEventInfoEXT *>( &displayEventInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkFence *>( &fence ) ) );
- ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
- return createResultValue<VULKAN_HPP_NAMESPACE::Fence, Dispatch>( result, fence, VULKAN_HPP_NAMESPACE_STRING "::Device::registerDisplayEventEXTUnique", deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
-#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::releaseFullScreenExclusiveModeEXT( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkReleaseFullScreenExclusiveModeEXT( m_device, static_cast<VkSwapchainKHR>( swapchain ) ) );
- }
-#else
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type Device::releaseFullScreenExclusiveModeEXT( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkReleaseFullScreenExclusiveModeEXT( m_device, static_cast<VkSwapchainKHR>( swapchain ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::releaseFullScreenExclusiveModeEXT" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-
-
-
-#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::releasePerformanceConfigurationINTEL( VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL configuration, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkReleasePerformanceConfigurationINTEL( m_device, static_cast<VkPerformanceConfigurationINTEL>( configuration ) ) );
- }
-#else
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type Device::releasePerformanceConfigurationINTEL( VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL configuration, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkReleasePerformanceConfigurationINTEL( m_device, static_cast<VkPerformanceConfigurationINTEL>( configuration ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::releasePerformanceConfigurationINTEL" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-
-#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::release( VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL configuration, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkReleasePerformanceConfigurationINTEL( m_device, static_cast<VkPerformanceConfigurationINTEL>( configuration ) ) );
- }
-#else
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type Device::release( VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL configuration, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkReleasePerformanceConfigurationINTEL( m_device, static_cast<VkPerformanceConfigurationINTEL>( configuration ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::release" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::releaseProfilingLockKHR( Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkReleaseProfilingLockKHR( m_device );
- }
-
-
-#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::resetCommandPool( VULKAN_HPP_NAMESPACE::CommandPool commandPool, VULKAN_HPP_NAMESPACE::CommandPoolResetFlags flags, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkResetCommandPool( m_device, static_cast<VkCommandPool>( commandPool ), static_cast<VkCommandPoolResetFlags>( flags ) ) );
- }
-#else
- template <typename Dispatch>
- VULKAN_HPP_INLINE typename ResultValueType<void>::type Device::resetCommandPool( VULKAN_HPP_NAMESPACE::CommandPool commandPool, VULKAN_HPP_NAMESPACE::CommandPoolResetFlags flags, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkResetCommandPool( m_device, static_cast<VkCommandPool>( commandPool ), static_cast<VkCommandPoolResetFlags>( flags ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::resetCommandPool" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-
-#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE Result Device::resetDescriptorPool( VULKAN_HPP_NAMESPACE::DescriptorPool descriptorPool, VULKAN_HPP_NAMESPACE::DescriptorPoolResetFlags flags, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkResetDescriptorPool( m_device, static_cast<VkDescriptorPool>( descriptorPool ), static_cast<VkDescriptorPoolResetFlags>( flags ) ) );
- }
-#else
- template <typename Dispatch>
- VULKAN_HPP_INLINE typename ResultValueType<void>::type Device::resetDescriptorPool( VULKAN_HPP_NAMESPACE::DescriptorPool descriptorPool, VULKAN_HPP_NAMESPACE::DescriptorPoolResetFlags flags, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkResetDescriptorPool( m_device, static_cast<VkDescriptorPool>( descriptorPool ), static_cast<VkDescriptorPoolResetFlags>( flags ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::resetDescriptorPool" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-
-#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::resetEvent( VULKAN_HPP_NAMESPACE::Event event, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkResetEvent( m_device, static_cast<VkEvent>( event ) ) );
- }
-#else
- template <typename Dispatch>
- VULKAN_HPP_INLINE typename ResultValueType<void>::type Device::resetEvent( VULKAN_HPP_NAMESPACE::Event event, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkResetEvent( m_device, static_cast<VkEvent>( event ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::resetEvent" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::resetFences( uint32_t fenceCount, const VULKAN_HPP_NAMESPACE::Fence* pFences, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkResetFences( m_device, fenceCount, reinterpret_cast<const VkFence *>( pFences ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE typename ResultValueType<void>::type Device::resetFences( ArrayProxy<const VULKAN_HPP_NAMESPACE::Fence> const & fences, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkResetFences( m_device, fences.size(), reinterpret_cast<const VkFence *>( fences.data() ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::resetFences" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::resetQueryPool( VULKAN_HPP_NAMESPACE::QueryPool queryPool, uint32_t firstQuery, uint32_t queryCount, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkResetQueryPool( m_device, static_cast<VkQueryPool>( queryPool ), firstQuery, queryCount );
- }
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::resetQueryPoolEXT( VULKAN_HPP_NAMESPACE::QueryPool queryPool, uint32_t firstQuery, uint32_t queryCount, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkResetQueryPoolEXT( m_device, static_cast<VkQueryPool>( queryPool ), firstQuery, queryCount );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::setDebugUtilsObjectNameEXT( const VULKAN_HPP_NAMESPACE::DebugUtilsObjectNameInfoEXT* pNameInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkSetDebugUtilsObjectNameEXT( m_device, reinterpret_cast<const VkDebugUtilsObjectNameInfoEXT *>( pNameInfo ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type Device::setDebugUtilsObjectNameEXT( const DebugUtilsObjectNameInfoEXT & nameInfo, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkSetDebugUtilsObjectNameEXT( m_device, reinterpret_cast<const VkDebugUtilsObjectNameInfoEXT *>( &nameInfo ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::setDebugUtilsObjectNameEXT" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::setDebugUtilsObjectTagEXT( const VULKAN_HPP_NAMESPACE::DebugUtilsObjectTagInfoEXT* pTagInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkSetDebugUtilsObjectTagEXT( m_device, reinterpret_cast<const VkDebugUtilsObjectTagInfoEXT *>( pTagInfo ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type Device::setDebugUtilsObjectTagEXT( const DebugUtilsObjectTagInfoEXT & tagInfo, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkSetDebugUtilsObjectTagEXT( m_device, reinterpret_cast<const VkDebugUtilsObjectTagInfoEXT *>( &tagInfo ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::setDebugUtilsObjectTagEXT" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::setEvent( VULKAN_HPP_NAMESPACE::Event event, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkSetEvent( m_device, static_cast<VkEvent>( event ) ) );
- }
-#else
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type Device::setEvent( VULKAN_HPP_NAMESPACE::Event event, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkSetEvent( m_device, static_cast<VkEvent>( event ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::setEvent" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::setHdrMetadataEXT( uint32_t swapchainCount, const VULKAN_HPP_NAMESPACE::SwapchainKHR* pSwapchains, const VULKAN_HPP_NAMESPACE::HdrMetadataEXT* pMetadata, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkSetHdrMetadataEXT( m_device, swapchainCount, reinterpret_cast<const VkSwapchainKHR *>( pSwapchains ), reinterpret_cast<const VkHdrMetadataEXT *>( pMetadata ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::setHdrMetadataEXT( ArrayProxy<const VULKAN_HPP_NAMESPACE::SwapchainKHR> const & swapchains, ArrayProxy<const VULKAN_HPP_NAMESPACE::HdrMetadataEXT> const & metadata, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS
- {
-#ifdef VULKAN_HPP_NO_EXCEPTIONS
- VULKAN_HPP_ASSERT( swapchains.size() == metadata.size() );
-#else
- if ( swapchains.size() != metadata.size() )
- {
- throw LogicError( VULKAN_HPP_NAMESPACE_STRING "::Device::setHdrMetadataEXT: swapchains.size() != metadata.size()" );
- }
-#endif /*VULKAN_HPP_NO_EXCEPTIONS*/
-
- d.vkSetHdrMetadataEXT( m_device, swapchains.size(), reinterpret_cast<const VkSwapchainKHR *>( swapchains.data() ), reinterpret_cast<const VkHdrMetadataEXT *>( metadata.data() ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::setLocalDimmingAMD( VULKAN_HPP_NAMESPACE::SwapchainKHR swapChain, VULKAN_HPP_NAMESPACE::Bool32 localDimmingEnable, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkSetLocalDimmingAMD( m_device, static_cast<VkSwapchainKHR>( swapChain ), static_cast<VkBool32>( localDimmingEnable ) );
- }
-
-
-#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::setPrivateDataEXT( VULKAN_HPP_NAMESPACE::ObjectType objectType, uint64_t objectHandle, VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT privateDataSlot, uint64_t data, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkSetPrivateDataEXT( m_device, static_cast<VkObjectType>( objectType ), objectHandle, static_cast<VkPrivateDataSlotEXT>( privateDataSlot ), data ) );
- }
-#else
- template <typename Dispatch>
- VULKAN_HPP_INLINE typename ResultValueType<void>::type Device::setPrivateDataEXT( VULKAN_HPP_NAMESPACE::ObjectType objectType, uint64_t objectHandle, VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT privateDataSlot, uint64_t data, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkSetPrivateDataEXT( m_device, static_cast<VkObjectType>( objectType ), objectHandle, static_cast<VkPrivateDataSlotEXT>( privateDataSlot ), data ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::setPrivateDataEXT" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::signalSemaphore( const VULKAN_HPP_NAMESPACE::SemaphoreSignalInfo* pSignalInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkSignalSemaphore( m_device, reinterpret_cast<const VkSemaphoreSignalInfo *>( pSignalInfo ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type Device::signalSemaphore( const SemaphoreSignalInfo & signalInfo, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkSignalSemaphore( m_device, reinterpret_cast<const VkSemaphoreSignalInfo *>( &signalInfo ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::signalSemaphore" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::signalSemaphoreKHR( const VULKAN_HPP_NAMESPACE::SemaphoreSignalInfo* pSignalInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkSignalSemaphoreKHR( m_device, reinterpret_cast<const VkSemaphoreSignalInfo *>( pSignalInfo ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type Device::signalSemaphoreKHR( const SemaphoreSignalInfo & signalInfo, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkSignalSemaphoreKHR( m_device, reinterpret_cast<const VkSemaphoreSignalInfo *>( &signalInfo ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::signalSemaphoreKHR" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::trimCommandPool( VULKAN_HPP_NAMESPACE::CommandPool commandPool, VULKAN_HPP_NAMESPACE::CommandPoolTrimFlags flags, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkTrimCommandPool( m_device, static_cast<VkCommandPool>( commandPool ), static_cast<VkCommandPoolTrimFlags>( flags ) );
- }
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::trimCommandPoolKHR( VULKAN_HPP_NAMESPACE::CommandPool commandPool, VULKAN_HPP_NAMESPACE::CommandPoolTrimFlags flags, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkTrimCommandPoolKHR( m_device, static_cast<VkCommandPool>( commandPool ), static_cast<VkCommandPoolTrimFlags>( flags ) );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::uninitializePerformanceApiINTEL( Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkUninitializePerformanceApiINTEL( m_device );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::unmapMemory( VULKAN_HPP_NAMESPACE::DeviceMemory memory, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkUnmapMemory( m_device, static_cast<VkDeviceMemory>( memory ) );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::updateDescriptorSetWithTemplate( VULKAN_HPP_NAMESPACE::DescriptorSet descriptorSet, VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate descriptorUpdateTemplate, const void* pData, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkUpdateDescriptorSetWithTemplate( m_device, static_cast<VkDescriptorSet>( descriptorSet ), static_cast<VkDescriptorUpdateTemplate>( descriptorUpdateTemplate ), pData );
- }
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::updateDescriptorSetWithTemplateKHR( VULKAN_HPP_NAMESPACE::DescriptorSet descriptorSet, VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate descriptorUpdateTemplate, const void* pData, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkUpdateDescriptorSetWithTemplateKHR( m_device, static_cast<VkDescriptorSet>( descriptorSet ), static_cast<VkDescriptorUpdateTemplate>( descriptorUpdateTemplate ), pData );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::updateDescriptorSets( uint32_t descriptorWriteCount, const VULKAN_HPP_NAMESPACE::WriteDescriptorSet* pDescriptorWrites, uint32_t descriptorCopyCount, const VULKAN_HPP_NAMESPACE::CopyDescriptorSet* pDescriptorCopies, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkUpdateDescriptorSets( m_device, descriptorWriteCount, reinterpret_cast<const VkWriteDescriptorSet *>( pDescriptorWrites ), descriptorCopyCount, reinterpret_cast<const VkCopyDescriptorSet *>( pDescriptorCopies ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Device::updateDescriptorSets( ArrayProxy<const VULKAN_HPP_NAMESPACE::WriteDescriptorSet> const & descriptorWrites, ArrayProxy<const VULKAN_HPP_NAMESPACE::CopyDescriptorSet> const & descriptorCopies, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkUpdateDescriptorSets( m_device, descriptorWrites.size(), reinterpret_cast<const VkWriteDescriptorSet *>( descriptorWrites.data() ), descriptorCopies.size(), reinterpret_cast<const VkCopyDescriptorSet *>( descriptorCopies.data() ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::waitForFences( uint32_t fenceCount, const VULKAN_HPP_NAMESPACE::Fence* pFences, VULKAN_HPP_NAMESPACE::Bool32 waitAll, uint64_t timeout, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkWaitForFences( m_device, fenceCount, reinterpret_cast<const VkFence *>( pFences ), static_cast<VkBool32>( waitAll ), timeout ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::waitForFences( ArrayProxy<const VULKAN_HPP_NAMESPACE::Fence> const & fences, VULKAN_HPP_NAMESPACE::Bool32 waitAll, uint64_t timeout, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkWaitForFences( m_device, fences.size(), reinterpret_cast<const VkFence *>( fences.data() ), static_cast<VkBool32>( waitAll ), timeout ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::waitForFences", { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::eTimeout } );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::waitSemaphores( const VULKAN_HPP_NAMESPACE::SemaphoreWaitInfo* pWaitInfo, uint64_t timeout, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkWaitSemaphores( m_device, reinterpret_cast<const VkSemaphoreWaitInfo *>( pWaitInfo ), timeout ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::waitSemaphores( const SemaphoreWaitInfo & waitInfo, uint64_t timeout, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkWaitSemaphores( m_device, reinterpret_cast<const VkSemaphoreWaitInfo *>( &waitInfo ), timeout ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::waitSemaphores", { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::eTimeout } );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::waitSemaphoresKHR( const VULKAN_HPP_NAMESPACE::SemaphoreWaitInfo* pWaitInfo, uint64_t timeout, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkWaitSemaphoresKHR( m_device, reinterpret_cast<const VkSemaphoreWaitInfo *>( pWaitInfo ), timeout ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::waitSemaphoresKHR( const SemaphoreWaitInfo & waitInfo, uint64_t timeout, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkWaitSemaphoresKHR( m_device, reinterpret_cast<const VkSemaphoreWaitInfo *>( &waitInfo ), timeout ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::waitSemaphoresKHR", { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::eTimeout } );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::writeAccelerationStructuresPropertiesKHR( uint32_t accelerationStructureCount, const VULKAN_HPP_NAMESPACE::AccelerationStructureKHR* pAccelerationStructures, VULKAN_HPP_NAMESPACE::QueryType queryType, size_t dataSize, void* pData, size_t stride, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkWriteAccelerationStructuresPropertiesKHR( m_device, accelerationStructureCount, reinterpret_cast<const VkAccelerationStructureKHR *>( pAccelerationStructures ), static_cast<VkQueryType>( queryType ), dataSize, pData, stride ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename T, typename Dispatch>
- VULKAN_HPP_DEPRECATED( "This function is deprecated. Use one of the other flavours of it.")
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type Device::writeAccelerationStructuresPropertiesKHR( ArrayProxy<const VULKAN_HPP_NAMESPACE::AccelerationStructureKHR> const &accelerationStructures, VULKAN_HPP_NAMESPACE::QueryType queryType, ArrayProxy<T> const &data, size_t stride, Dispatch const &d ) const
- {
- Result result = static_cast<Result>( d.vkWriteAccelerationStructuresPropertiesKHR( m_device, accelerationStructures.size() , reinterpret_cast<const VkAccelerationStructureKHR*>( accelerationStructures.data() ), static_cast<VkQueryType>( queryType ), data.size() * sizeof( T ) , reinterpret_cast<void*>( data.data() ), stride ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING"::Device::writeAccelerationStructuresPropertiesKHR" );
-
- }
-
- template <typename T, typename Allocator, typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<std::vector<T,Allocator>>::type Device::writeAccelerationStructuresPropertiesKHR( ArrayProxy<const VULKAN_HPP_NAMESPACE::AccelerationStructureKHR> const & accelerationStructures, VULKAN_HPP_NAMESPACE::QueryType queryType, size_t dataSize, size_t stride, Dispatch const & d ) const
- {
- VULKAN_HPP_ASSERT( dataSize % sizeof( T ) == 0 );
- std::vector<T,Allocator> data( dataSize / sizeof( T ) );
- Result result = static_cast<Result>( d.vkWriteAccelerationStructuresPropertiesKHR( m_device, accelerationStructures.size(), reinterpret_cast<const VkAccelerationStructureKHR *>( accelerationStructures.data() ), static_cast<VkQueryType>( queryType ), data.size() * sizeof( T ), reinterpret_cast<void *>( data.data() ), stride ) );
- return createResultValue( result, data, VULKAN_HPP_NAMESPACE_STRING "::Device::writeAccelerationStructuresPropertiesKHR" );
- }
-
- template <typename T, typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<T>::type Device::writeAccelerationStructuresPropertyKHR( ArrayProxy<const VULKAN_HPP_NAMESPACE::AccelerationStructureKHR> const & accelerationStructures, VULKAN_HPP_NAMESPACE::QueryType queryType, size_t stride, Dispatch const & d ) const
- {
- T data;
- Result result = static_cast<Result>( d.vkWriteAccelerationStructuresPropertiesKHR( m_device, accelerationStructures.size(), reinterpret_cast<const VkAccelerationStructureKHR *>( accelerationStructures.data() ), static_cast<VkQueryType>( queryType ), sizeof( T ), reinterpret_cast<void *>( &data ), stride ) );
- return createResultValue( result, data, VULKAN_HPP_NAMESPACE_STRING "::Device::writeAccelerationStructuresPropertyKHR" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-#ifdef VK_USE_PLATFORM_ANDROID_KHR
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Instance::createAndroidSurfaceKHR( const VULKAN_HPP_NAMESPACE::AndroidSurfaceCreateInfoKHR* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::SurfaceKHR* pSurface, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCreateAndroidSurfaceKHR( m_instance, reinterpret_cast<const VkAndroidSurfaceCreateInfoKHR *>( pCreateInfo ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ), reinterpret_cast< VkSurfaceKHR *>( pSurface ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceKHR>::type Instance::createAndroidSurfaceKHR( const AndroidSurfaceCreateInfoKHR & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::SurfaceKHR surface;
- Result result = static_cast<Result>( d.vkCreateAndroidSurfaceKHR( m_instance, reinterpret_cast<const VkAndroidSurfaceCreateInfoKHR *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkSurfaceKHR *>( &surface ) ) );
- return createResultValue( result, surface, VULKAN_HPP_NAMESPACE_STRING "::Instance::createAndroidSurfaceKHR" );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>>::type Instance::createAndroidSurfaceKHRUnique( const AndroidSurfaceCreateInfoKHR & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::SurfaceKHR surface;
- Result result = static_cast<Result>( d.vkCreateAndroidSurfaceKHR( m_instance, reinterpret_cast<const VkAndroidSurfaceCreateInfoKHR *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkSurfaceKHR *>( &surface ) ) );
- ObjectDestroy<Instance, Dispatch> deleter( *this, allocator, d );
- return createResultValue<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>( result, surface, VULKAN_HPP_NAMESPACE_STRING "::Instance::createAndroidSurfaceKHRUnique", deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Instance::createDebugReportCallbackEXT( const VULKAN_HPP_NAMESPACE::DebugReportCallbackCreateInfoEXT* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::DebugReportCallbackEXT* pCallback, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCreateDebugReportCallbackEXT( m_instance, reinterpret_cast<const VkDebugReportCallbackCreateInfoEXT *>( pCreateInfo ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ), reinterpret_cast< VkDebugReportCallbackEXT *>( pCallback ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::DebugReportCallbackEXT>::type Instance::createDebugReportCallbackEXT( const DebugReportCallbackCreateInfoEXT & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::DebugReportCallbackEXT callback;
- Result result = static_cast<Result>( d.vkCreateDebugReportCallbackEXT( m_instance, reinterpret_cast<const VkDebugReportCallbackCreateInfoEXT *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkDebugReportCallbackEXT *>( &callback ) ) );
- return createResultValue( result, callback, VULKAN_HPP_NAMESPACE_STRING "::Instance::createDebugReportCallbackEXT" );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch>
- VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::DebugReportCallbackEXT, Dispatch>>::type Instance::createDebugReportCallbackEXTUnique( const DebugReportCallbackCreateInfoEXT & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::DebugReportCallbackEXT callback;
- Result result = static_cast<Result>( d.vkCreateDebugReportCallbackEXT( m_instance, reinterpret_cast<const VkDebugReportCallbackCreateInfoEXT *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkDebugReportCallbackEXT *>( &callback ) ) );
- ObjectDestroy<Instance, Dispatch> deleter( *this, allocator, d );
- return createResultValue<VULKAN_HPP_NAMESPACE::DebugReportCallbackEXT, Dispatch>( result, callback, VULKAN_HPP_NAMESPACE_STRING "::Instance::createDebugReportCallbackEXTUnique", deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Instance::createDebugUtilsMessengerEXT( const VULKAN_HPP_NAMESPACE::DebugUtilsMessengerCreateInfoEXT* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::DebugUtilsMessengerEXT* pMessenger, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCreateDebugUtilsMessengerEXT( m_instance, reinterpret_cast<const VkDebugUtilsMessengerCreateInfoEXT *>( pCreateInfo ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ), reinterpret_cast< VkDebugUtilsMessengerEXT *>( pMessenger ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::DebugUtilsMessengerEXT>::type Instance::createDebugUtilsMessengerEXT( const DebugUtilsMessengerCreateInfoEXT & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::DebugUtilsMessengerEXT messenger;
- Result result = static_cast<Result>( d.vkCreateDebugUtilsMessengerEXT( m_instance, reinterpret_cast<const VkDebugUtilsMessengerCreateInfoEXT *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkDebugUtilsMessengerEXT *>( &messenger ) ) );
- return createResultValue( result, messenger, VULKAN_HPP_NAMESPACE_STRING "::Instance::createDebugUtilsMessengerEXT" );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch>
- VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::DebugUtilsMessengerEXT, Dispatch>>::type Instance::createDebugUtilsMessengerEXTUnique( const DebugUtilsMessengerCreateInfoEXT & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::DebugUtilsMessengerEXT messenger;
- Result result = static_cast<Result>( d.vkCreateDebugUtilsMessengerEXT( m_instance, reinterpret_cast<const VkDebugUtilsMessengerCreateInfoEXT *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkDebugUtilsMessengerEXT *>( &messenger ) ) );
- ObjectDestroy<Instance, Dispatch> deleter( *this, allocator, d );
- return createResultValue<VULKAN_HPP_NAMESPACE::DebugUtilsMessengerEXT, Dispatch>( result, messenger, VULKAN_HPP_NAMESPACE_STRING "::Instance::createDebugUtilsMessengerEXTUnique", deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-#ifdef VK_USE_PLATFORM_DIRECTFB_EXT
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Instance::createDirectFBSurfaceEXT( const VULKAN_HPP_NAMESPACE::DirectFBSurfaceCreateInfoEXT* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::SurfaceKHR* pSurface, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCreateDirectFBSurfaceEXT( m_instance, reinterpret_cast<const VkDirectFBSurfaceCreateInfoEXT *>( pCreateInfo ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ), reinterpret_cast< VkSurfaceKHR *>( pSurface ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceKHR>::type Instance::createDirectFBSurfaceEXT( const DirectFBSurfaceCreateInfoEXT & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::SurfaceKHR surface;
- Result result = static_cast<Result>( d.vkCreateDirectFBSurfaceEXT( m_instance, reinterpret_cast<const VkDirectFBSurfaceCreateInfoEXT *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkSurfaceKHR *>( &surface ) ) );
- return createResultValue( result, surface, VULKAN_HPP_NAMESPACE_STRING "::Instance::createDirectFBSurfaceEXT" );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>>::type Instance::createDirectFBSurfaceEXTUnique( const DirectFBSurfaceCreateInfoEXT & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::SurfaceKHR surface;
- Result result = static_cast<Result>( d.vkCreateDirectFBSurfaceEXT( m_instance, reinterpret_cast<const VkDirectFBSurfaceCreateInfoEXT *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkSurfaceKHR *>( &surface ) ) );
- ObjectDestroy<Instance, Dispatch> deleter( *this, allocator, d );
- return createResultValue<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>( result, surface, VULKAN_HPP_NAMESPACE_STRING "::Instance::createDirectFBSurfaceEXTUnique", deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_DIRECTFB_EXT*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Instance::createDisplayPlaneSurfaceKHR( const VULKAN_HPP_NAMESPACE::DisplaySurfaceCreateInfoKHR* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::SurfaceKHR* pSurface, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCreateDisplayPlaneSurfaceKHR( m_instance, reinterpret_cast<const VkDisplaySurfaceCreateInfoKHR *>( pCreateInfo ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ), reinterpret_cast< VkSurfaceKHR *>( pSurface ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceKHR>::type Instance::createDisplayPlaneSurfaceKHR( const DisplaySurfaceCreateInfoKHR & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::SurfaceKHR surface;
- Result result = static_cast<Result>( d.vkCreateDisplayPlaneSurfaceKHR( m_instance, reinterpret_cast<const VkDisplaySurfaceCreateInfoKHR *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkSurfaceKHR *>( &surface ) ) );
- return createResultValue( result, surface, VULKAN_HPP_NAMESPACE_STRING "::Instance::createDisplayPlaneSurfaceKHR" );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>>::type Instance::createDisplayPlaneSurfaceKHRUnique( const DisplaySurfaceCreateInfoKHR & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::SurfaceKHR surface;
- Result result = static_cast<Result>( d.vkCreateDisplayPlaneSurfaceKHR( m_instance, reinterpret_cast<const VkDisplaySurfaceCreateInfoKHR *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkSurfaceKHR *>( &surface ) ) );
- ObjectDestroy<Instance, Dispatch> deleter( *this, allocator, d );
- return createResultValue<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>( result, surface, VULKAN_HPP_NAMESPACE_STRING "::Instance::createDisplayPlaneSurfaceKHRUnique", deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Instance::createHeadlessSurfaceEXT( const VULKAN_HPP_NAMESPACE::HeadlessSurfaceCreateInfoEXT* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::SurfaceKHR* pSurface, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCreateHeadlessSurfaceEXT( m_instance, reinterpret_cast<const VkHeadlessSurfaceCreateInfoEXT *>( pCreateInfo ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ), reinterpret_cast< VkSurfaceKHR *>( pSurface ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceKHR>::type Instance::createHeadlessSurfaceEXT( const HeadlessSurfaceCreateInfoEXT & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::SurfaceKHR surface;
- Result result = static_cast<Result>( d.vkCreateHeadlessSurfaceEXT( m_instance, reinterpret_cast<const VkHeadlessSurfaceCreateInfoEXT *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkSurfaceKHR *>( &surface ) ) );
- return createResultValue( result, surface, VULKAN_HPP_NAMESPACE_STRING "::Instance::createHeadlessSurfaceEXT" );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>>::type Instance::createHeadlessSurfaceEXTUnique( const HeadlessSurfaceCreateInfoEXT & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::SurfaceKHR surface;
- Result result = static_cast<Result>( d.vkCreateHeadlessSurfaceEXT( m_instance, reinterpret_cast<const VkHeadlessSurfaceCreateInfoEXT *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkSurfaceKHR *>( &surface ) ) );
- ObjectDestroy<Instance, Dispatch> deleter( *this, allocator, d );
- return createResultValue<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>( result, surface, VULKAN_HPP_NAMESPACE_STRING "::Instance::createHeadlessSurfaceEXTUnique", deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-#ifdef VK_USE_PLATFORM_IOS_MVK
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Instance::createIOSSurfaceMVK( const VULKAN_HPP_NAMESPACE::IOSSurfaceCreateInfoMVK* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::SurfaceKHR* pSurface, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCreateIOSSurfaceMVK( m_instance, reinterpret_cast<const VkIOSSurfaceCreateInfoMVK *>( pCreateInfo ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ), reinterpret_cast< VkSurfaceKHR *>( pSurface ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceKHR>::type Instance::createIOSSurfaceMVK( const IOSSurfaceCreateInfoMVK & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::SurfaceKHR surface;
- Result result = static_cast<Result>( d.vkCreateIOSSurfaceMVK( m_instance, reinterpret_cast<const VkIOSSurfaceCreateInfoMVK *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkSurfaceKHR *>( &surface ) ) );
- return createResultValue( result, surface, VULKAN_HPP_NAMESPACE_STRING "::Instance::createIOSSurfaceMVK" );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>>::type Instance::createIOSSurfaceMVKUnique( const IOSSurfaceCreateInfoMVK & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::SurfaceKHR surface;
- Result result = static_cast<Result>( d.vkCreateIOSSurfaceMVK( m_instance, reinterpret_cast<const VkIOSSurfaceCreateInfoMVK *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkSurfaceKHR *>( &surface ) ) );
- ObjectDestroy<Instance, Dispatch> deleter( *this, allocator, d );
- return createResultValue<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>( result, surface, VULKAN_HPP_NAMESPACE_STRING "::Instance::createIOSSurfaceMVKUnique", deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_IOS_MVK*/
-
-
-#ifdef VK_USE_PLATFORM_FUCHSIA
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Instance::createImagePipeSurfaceFUCHSIA( const VULKAN_HPP_NAMESPACE::ImagePipeSurfaceCreateInfoFUCHSIA* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::SurfaceKHR* pSurface, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCreateImagePipeSurfaceFUCHSIA( m_instance, reinterpret_cast<const VkImagePipeSurfaceCreateInfoFUCHSIA *>( pCreateInfo ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ), reinterpret_cast< VkSurfaceKHR *>( pSurface ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceKHR>::type Instance::createImagePipeSurfaceFUCHSIA( const ImagePipeSurfaceCreateInfoFUCHSIA & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::SurfaceKHR surface;
- Result result = static_cast<Result>( d.vkCreateImagePipeSurfaceFUCHSIA( m_instance, reinterpret_cast<const VkImagePipeSurfaceCreateInfoFUCHSIA *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkSurfaceKHR *>( &surface ) ) );
- return createResultValue( result, surface, VULKAN_HPP_NAMESPACE_STRING "::Instance::createImagePipeSurfaceFUCHSIA" );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>>::type Instance::createImagePipeSurfaceFUCHSIAUnique( const ImagePipeSurfaceCreateInfoFUCHSIA & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::SurfaceKHR surface;
- Result result = static_cast<Result>( d.vkCreateImagePipeSurfaceFUCHSIA( m_instance, reinterpret_cast<const VkImagePipeSurfaceCreateInfoFUCHSIA *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkSurfaceKHR *>( &surface ) ) );
- ObjectDestroy<Instance, Dispatch> deleter( *this, allocator, d );
- return createResultValue<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>( result, surface, VULKAN_HPP_NAMESPACE_STRING "::Instance::createImagePipeSurfaceFUCHSIAUnique", deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_FUCHSIA*/
-
-
-#ifdef VK_USE_PLATFORM_MACOS_MVK
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Instance::createMacOSSurfaceMVK( const VULKAN_HPP_NAMESPACE::MacOSSurfaceCreateInfoMVK* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::SurfaceKHR* pSurface, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCreateMacOSSurfaceMVK( m_instance, reinterpret_cast<const VkMacOSSurfaceCreateInfoMVK *>( pCreateInfo ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ), reinterpret_cast< VkSurfaceKHR *>( pSurface ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceKHR>::type Instance::createMacOSSurfaceMVK( const MacOSSurfaceCreateInfoMVK & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::SurfaceKHR surface;
- Result result = static_cast<Result>( d.vkCreateMacOSSurfaceMVK( m_instance, reinterpret_cast<const VkMacOSSurfaceCreateInfoMVK *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkSurfaceKHR *>( &surface ) ) );
- return createResultValue( result, surface, VULKAN_HPP_NAMESPACE_STRING "::Instance::createMacOSSurfaceMVK" );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>>::type Instance::createMacOSSurfaceMVKUnique( const MacOSSurfaceCreateInfoMVK & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::SurfaceKHR surface;
- Result result = static_cast<Result>( d.vkCreateMacOSSurfaceMVK( m_instance, reinterpret_cast<const VkMacOSSurfaceCreateInfoMVK *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkSurfaceKHR *>( &surface ) ) );
- ObjectDestroy<Instance, Dispatch> deleter( *this, allocator, d );
- return createResultValue<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>( result, surface, VULKAN_HPP_NAMESPACE_STRING "::Instance::createMacOSSurfaceMVKUnique", deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_MACOS_MVK*/
-
-
-#ifdef VK_USE_PLATFORM_METAL_EXT
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Instance::createMetalSurfaceEXT( const VULKAN_HPP_NAMESPACE::MetalSurfaceCreateInfoEXT* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::SurfaceKHR* pSurface, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCreateMetalSurfaceEXT( m_instance, reinterpret_cast<const VkMetalSurfaceCreateInfoEXT *>( pCreateInfo ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ), reinterpret_cast< VkSurfaceKHR *>( pSurface ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceKHR>::type Instance::createMetalSurfaceEXT( const MetalSurfaceCreateInfoEXT & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::SurfaceKHR surface;
- Result result = static_cast<Result>( d.vkCreateMetalSurfaceEXT( m_instance, reinterpret_cast<const VkMetalSurfaceCreateInfoEXT *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkSurfaceKHR *>( &surface ) ) );
- return createResultValue( result, surface, VULKAN_HPP_NAMESPACE_STRING "::Instance::createMetalSurfaceEXT" );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>>::type Instance::createMetalSurfaceEXTUnique( const MetalSurfaceCreateInfoEXT & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::SurfaceKHR surface;
- Result result = static_cast<Result>( d.vkCreateMetalSurfaceEXT( m_instance, reinterpret_cast<const VkMetalSurfaceCreateInfoEXT *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkSurfaceKHR *>( &surface ) ) );
- ObjectDestroy<Instance, Dispatch> deleter( *this, allocator, d );
- return createResultValue<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>( result, surface, VULKAN_HPP_NAMESPACE_STRING "::Instance::createMetalSurfaceEXTUnique", deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_METAL_EXT*/
-
-
-#ifdef VK_USE_PLATFORM_GGP
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Instance::createStreamDescriptorSurfaceGGP( const VULKAN_HPP_NAMESPACE::StreamDescriptorSurfaceCreateInfoGGP* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::SurfaceKHR* pSurface, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCreateStreamDescriptorSurfaceGGP( m_instance, reinterpret_cast<const VkStreamDescriptorSurfaceCreateInfoGGP *>( pCreateInfo ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ), reinterpret_cast< VkSurfaceKHR *>( pSurface ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceKHR>::type Instance::createStreamDescriptorSurfaceGGP( const StreamDescriptorSurfaceCreateInfoGGP & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::SurfaceKHR surface;
- Result result = static_cast<Result>( d.vkCreateStreamDescriptorSurfaceGGP( m_instance, reinterpret_cast<const VkStreamDescriptorSurfaceCreateInfoGGP *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkSurfaceKHR *>( &surface ) ) );
- return createResultValue( result, surface, VULKAN_HPP_NAMESPACE_STRING "::Instance::createStreamDescriptorSurfaceGGP" );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>>::type Instance::createStreamDescriptorSurfaceGGPUnique( const StreamDescriptorSurfaceCreateInfoGGP & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::SurfaceKHR surface;
- Result result = static_cast<Result>( d.vkCreateStreamDescriptorSurfaceGGP( m_instance, reinterpret_cast<const VkStreamDescriptorSurfaceCreateInfoGGP *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkSurfaceKHR *>( &surface ) ) );
- ObjectDestroy<Instance, Dispatch> deleter( *this, allocator, d );
- return createResultValue<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>( result, surface, VULKAN_HPP_NAMESPACE_STRING "::Instance::createStreamDescriptorSurfaceGGPUnique", deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_GGP*/
-
-
-#ifdef VK_USE_PLATFORM_VI_NN
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Instance::createViSurfaceNN( const VULKAN_HPP_NAMESPACE::ViSurfaceCreateInfoNN* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::SurfaceKHR* pSurface, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCreateViSurfaceNN( m_instance, reinterpret_cast<const VkViSurfaceCreateInfoNN *>( pCreateInfo ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ), reinterpret_cast< VkSurfaceKHR *>( pSurface ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceKHR>::type Instance::createViSurfaceNN( const ViSurfaceCreateInfoNN & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::SurfaceKHR surface;
- Result result = static_cast<Result>( d.vkCreateViSurfaceNN( m_instance, reinterpret_cast<const VkViSurfaceCreateInfoNN *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkSurfaceKHR *>( &surface ) ) );
- return createResultValue( result, surface, VULKAN_HPP_NAMESPACE_STRING "::Instance::createViSurfaceNN" );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>>::type Instance::createViSurfaceNNUnique( const ViSurfaceCreateInfoNN & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::SurfaceKHR surface;
- Result result = static_cast<Result>( d.vkCreateViSurfaceNN( m_instance, reinterpret_cast<const VkViSurfaceCreateInfoNN *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkSurfaceKHR *>( &surface ) ) );
- ObjectDestroy<Instance, Dispatch> deleter( *this, allocator, d );
- return createResultValue<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>( result, surface, VULKAN_HPP_NAMESPACE_STRING "::Instance::createViSurfaceNNUnique", deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_VI_NN*/
-
-
-#ifdef VK_USE_PLATFORM_WAYLAND_KHR
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Instance::createWaylandSurfaceKHR( const VULKAN_HPP_NAMESPACE::WaylandSurfaceCreateInfoKHR* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::SurfaceKHR* pSurface, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCreateWaylandSurfaceKHR( m_instance, reinterpret_cast<const VkWaylandSurfaceCreateInfoKHR *>( pCreateInfo ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ), reinterpret_cast< VkSurfaceKHR *>( pSurface ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceKHR>::type Instance::createWaylandSurfaceKHR( const WaylandSurfaceCreateInfoKHR & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::SurfaceKHR surface;
- Result result = static_cast<Result>( d.vkCreateWaylandSurfaceKHR( m_instance, reinterpret_cast<const VkWaylandSurfaceCreateInfoKHR *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkSurfaceKHR *>( &surface ) ) );
- return createResultValue( result, surface, VULKAN_HPP_NAMESPACE_STRING "::Instance::createWaylandSurfaceKHR" );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>>::type Instance::createWaylandSurfaceKHRUnique( const WaylandSurfaceCreateInfoKHR & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::SurfaceKHR surface;
- Result result = static_cast<Result>( d.vkCreateWaylandSurfaceKHR( m_instance, reinterpret_cast<const VkWaylandSurfaceCreateInfoKHR *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkSurfaceKHR *>( &surface ) ) );
- ObjectDestroy<Instance, Dispatch> deleter( *this, allocator, d );
- return createResultValue<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>( result, surface, VULKAN_HPP_NAMESPACE_STRING "::Instance::createWaylandSurfaceKHRUnique", deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_WAYLAND_KHR*/
-
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Instance::createWin32SurfaceKHR( const VULKAN_HPP_NAMESPACE::Win32SurfaceCreateInfoKHR* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::SurfaceKHR* pSurface, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCreateWin32SurfaceKHR( m_instance, reinterpret_cast<const VkWin32SurfaceCreateInfoKHR *>( pCreateInfo ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ), reinterpret_cast< VkSurfaceKHR *>( pSurface ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceKHR>::type Instance::createWin32SurfaceKHR( const Win32SurfaceCreateInfoKHR & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::SurfaceKHR surface;
- Result result = static_cast<Result>( d.vkCreateWin32SurfaceKHR( m_instance, reinterpret_cast<const VkWin32SurfaceCreateInfoKHR *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkSurfaceKHR *>( &surface ) ) );
- return createResultValue( result, surface, VULKAN_HPP_NAMESPACE_STRING "::Instance::createWin32SurfaceKHR" );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>>::type Instance::createWin32SurfaceKHRUnique( const Win32SurfaceCreateInfoKHR & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::SurfaceKHR surface;
- Result result = static_cast<Result>( d.vkCreateWin32SurfaceKHR( m_instance, reinterpret_cast<const VkWin32SurfaceCreateInfoKHR *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkSurfaceKHR *>( &surface ) ) );
- ObjectDestroy<Instance, Dispatch> deleter( *this, allocator, d );
- return createResultValue<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>( result, surface, VULKAN_HPP_NAMESPACE_STRING "::Instance::createWin32SurfaceKHRUnique", deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-
-
-#ifdef VK_USE_PLATFORM_XCB_KHR
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Instance::createXcbSurfaceKHR( const VULKAN_HPP_NAMESPACE::XcbSurfaceCreateInfoKHR* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::SurfaceKHR* pSurface, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCreateXcbSurfaceKHR( m_instance, reinterpret_cast<const VkXcbSurfaceCreateInfoKHR *>( pCreateInfo ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ), reinterpret_cast< VkSurfaceKHR *>( pSurface ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceKHR>::type Instance::createXcbSurfaceKHR( const XcbSurfaceCreateInfoKHR & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::SurfaceKHR surface;
- Result result = static_cast<Result>( d.vkCreateXcbSurfaceKHR( m_instance, reinterpret_cast<const VkXcbSurfaceCreateInfoKHR *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkSurfaceKHR *>( &surface ) ) );
- return createResultValue( result, surface, VULKAN_HPP_NAMESPACE_STRING "::Instance::createXcbSurfaceKHR" );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>>::type Instance::createXcbSurfaceKHRUnique( const XcbSurfaceCreateInfoKHR & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::SurfaceKHR surface;
- Result result = static_cast<Result>( d.vkCreateXcbSurfaceKHR( m_instance, reinterpret_cast<const VkXcbSurfaceCreateInfoKHR *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkSurfaceKHR *>( &surface ) ) );
- ObjectDestroy<Instance, Dispatch> deleter( *this, allocator, d );
- return createResultValue<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>( result, surface, VULKAN_HPP_NAMESPACE_STRING "::Instance::createXcbSurfaceKHRUnique", deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_XCB_KHR*/
-
-
-#ifdef VK_USE_PLATFORM_XLIB_KHR
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Instance::createXlibSurfaceKHR( const VULKAN_HPP_NAMESPACE::XlibSurfaceCreateInfoKHR* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::SurfaceKHR* pSurface, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCreateXlibSurfaceKHR( m_instance, reinterpret_cast<const VkXlibSurfaceCreateInfoKHR *>( pCreateInfo ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ), reinterpret_cast< VkSurfaceKHR *>( pSurface ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceKHR>::type Instance::createXlibSurfaceKHR( const XlibSurfaceCreateInfoKHR & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::SurfaceKHR surface;
- Result result = static_cast<Result>( d.vkCreateXlibSurfaceKHR( m_instance, reinterpret_cast<const VkXlibSurfaceCreateInfoKHR *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkSurfaceKHR *>( &surface ) ) );
- return createResultValue( result, surface, VULKAN_HPP_NAMESPACE_STRING "::Instance::createXlibSurfaceKHR" );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>>::type Instance::createXlibSurfaceKHRUnique( const XlibSurfaceCreateInfoKHR & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::SurfaceKHR surface;
- Result result = static_cast<Result>( d.vkCreateXlibSurfaceKHR( m_instance, reinterpret_cast<const VkXlibSurfaceCreateInfoKHR *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkSurfaceKHR *>( &surface ) ) );
- ObjectDestroy<Instance, Dispatch> deleter( *this, allocator, d );
- return createResultValue<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>( result, surface, VULKAN_HPP_NAMESPACE_STRING "::Instance::createXlibSurfaceKHRUnique", deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_XLIB_KHR*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Instance::debugReportMessageEXT( VULKAN_HPP_NAMESPACE::DebugReportFlagsEXT flags, VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT objectType, uint64_t object, size_t location, int32_t messageCode, const char* pLayerPrefix, const char* pMessage, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDebugReportMessageEXT( m_instance, static_cast<VkDebugReportFlagsEXT>( flags ), static_cast<VkDebugReportObjectTypeEXT>( objectType ), object, location, messageCode, pLayerPrefix, pMessage );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Instance::debugReportMessageEXT( VULKAN_HPP_NAMESPACE::DebugReportFlagsEXT flags, VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT objectType, uint64_t object, size_t location, int32_t messageCode, const std::string & layerPrefix, const std::string & message, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDebugReportMessageEXT( m_instance, static_cast<VkDebugReportFlagsEXT>( flags ), static_cast<VkDebugReportObjectTypeEXT>( objectType ), object, location, messageCode, layerPrefix.c_str(), message.c_str() );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Instance::destroyDebugReportCallbackEXT( VULKAN_HPP_NAMESPACE::DebugReportCallbackEXT callback, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyDebugReportCallbackEXT( m_instance, static_cast<VkDebugReportCallbackEXT>( callback ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Instance::destroyDebugReportCallbackEXT( VULKAN_HPP_NAMESPACE::DebugReportCallbackEXT callback, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyDebugReportCallbackEXT( m_instance, static_cast<VkDebugReportCallbackEXT>( callback ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Instance::destroy( VULKAN_HPP_NAMESPACE::DebugReportCallbackEXT callback, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyDebugReportCallbackEXT( m_instance, static_cast<VkDebugReportCallbackEXT>( callback ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Instance::destroy( VULKAN_HPP_NAMESPACE::DebugReportCallbackEXT callback, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyDebugReportCallbackEXT( m_instance, static_cast<VkDebugReportCallbackEXT>( callback ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Instance::destroyDebugUtilsMessengerEXT( VULKAN_HPP_NAMESPACE::DebugUtilsMessengerEXT messenger, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyDebugUtilsMessengerEXT( m_instance, static_cast<VkDebugUtilsMessengerEXT>( messenger ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Instance::destroyDebugUtilsMessengerEXT( VULKAN_HPP_NAMESPACE::DebugUtilsMessengerEXT messenger, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyDebugUtilsMessengerEXT( m_instance, static_cast<VkDebugUtilsMessengerEXT>( messenger ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Instance::destroy( VULKAN_HPP_NAMESPACE::DebugUtilsMessengerEXT messenger, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyDebugUtilsMessengerEXT( m_instance, static_cast<VkDebugUtilsMessengerEXT>( messenger ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Instance::destroy( VULKAN_HPP_NAMESPACE::DebugUtilsMessengerEXT messenger, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyDebugUtilsMessengerEXT( m_instance, static_cast<VkDebugUtilsMessengerEXT>( messenger ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Instance::destroy( const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyInstance( m_instance, reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Instance::destroy( Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroyInstance( m_instance, reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Instance::destroySurfaceKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroySurfaceKHR( m_instance, static_cast<VkSurfaceKHR>( surface ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Instance::destroySurfaceKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroySurfaceKHR( m_instance, static_cast<VkSurfaceKHR>( surface ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Instance::destroy( VULKAN_HPP_NAMESPACE::SurfaceKHR surface, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroySurfaceKHR( m_instance, static_cast<VkSurfaceKHR>( surface ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Instance::destroy( VULKAN_HPP_NAMESPACE::SurfaceKHR surface, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkDestroySurfaceKHR( m_instance, static_cast<VkSurfaceKHR>( surface ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Instance::enumeratePhysicalDeviceGroups( uint32_t* pPhysicalDeviceGroupCount, VULKAN_HPP_NAMESPACE::PhysicalDeviceGroupProperties* pPhysicalDeviceGroupProperties, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkEnumeratePhysicalDeviceGroups( m_instance, pPhysicalDeviceGroupCount, reinterpret_cast< VkPhysicalDeviceGroupProperties *>( pPhysicalDeviceGroupProperties ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename PhysicalDeviceGroupPropertiesAllocator, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<PhysicalDeviceGroupProperties, PhysicalDeviceGroupPropertiesAllocator>>::type Instance::enumeratePhysicalDeviceGroups( Dispatch const & d ) const
- {
- std::vector<PhysicalDeviceGroupProperties, PhysicalDeviceGroupPropertiesAllocator> physicalDeviceGroupProperties;
- uint32_t physicalDeviceGroupCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkEnumeratePhysicalDeviceGroups( m_instance, &physicalDeviceGroupCount, nullptr ) );
- if ( ( result == Result::eSuccess ) && physicalDeviceGroupCount )
- {
- physicalDeviceGroupProperties.resize( physicalDeviceGroupCount );
- result = static_cast<Result>( d.vkEnumeratePhysicalDeviceGroups( m_instance, &physicalDeviceGroupCount, reinterpret_cast<VkPhysicalDeviceGroupProperties *>( physicalDeviceGroupProperties.data() ) ) );
- VULKAN_HPP_ASSERT( physicalDeviceGroupCount <= physicalDeviceGroupProperties.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( physicalDeviceGroupCount < physicalDeviceGroupProperties.size() ) )
- {
- physicalDeviceGroupProperties.resize( physicalDeviceGroupCount );
- }
- return createResultValue( result, physicalDeviceGroupProperties, VULKAN_HPP_NAMESPACE_STRING"::Instance::enumeratePhysicalDeviceGroups" );
- }
-
- template <typename PhysicalDeviceGroupPropertiesAllocator, typename Dispatch, typename B, typename std::enable_if<std::is_same<typename B::value_type, PhysicalDeviceGroupProperties>::value, int>::type >
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<PhysicalDeviceGroupProperties, PhysicalDeviceGroupPropertiesAllocator>>::type Instance::enumeratePhysicalDeviceGroups( PhysicalDeviceGroupPropertiesAllocator & physicalDeviceGroupPropertiesAllocator, Dispatch const & d ) const
- {
- std::vector<PhysicalDeviceGroupProperties, PhysicalDeviceGroupPropertiesAllocator> physicalDeviceGroupProperties( physicalDeviceGroupPropertiesAllocator );
- uint32_t physicalDeviceGroupCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkEnumeratePhysicalDeviceGroups( m_instance, &physicalDeviceGroupCount, nullptr ) );
- if ( ( result == Result::eSuccess ) && physicalDeviceGroupCount )
- {
- physicalDeviceGroupProperties.resize( physicalDeviceGroupCount );
- result = static_cast<Result>( d.vkEnumeratePhysicalDeviceGroups( m_instance, &physicalDeviceGroupCount, reinterpret_cast<VkPhysicalDeviceGroupProperties *>( physicalDeviceGroupProperties.data() ) ) );
- VULKAN_HPP_ASSERT( physicalDeviceGroupCount <= physicalDeviceGroupProperties.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( physicalDeviceGroupCount < physicalDeviceGroupProperties.size() ) )
- {
- physicalDeviceGroupProperties.resize( physicalDeviceGroupCount );
- }
- return createResultValue( result, physicalDeviceGroupProperties, VULKAN_HPP_NAMESPACE_STRING"::Instance::enumeratePhysicalDeviceGroups" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Instance::enumeratePhysicalDeviceGroupsKHR( uint32_t* pPhysicalDeviceGroupCount, VULKAN_HPP_NAMESPACE::PhysicalDeviceGroupProperties* pPhysicalDeviceGroupProperties, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkEnumeratePhysicalDeviceGroupsKHR( m_instance, pPhysicalDeviceGroupCount, reinterpret_cast< VkPhysicalDeviceGroupProperties *>( pPhysicalDeviceGroupProperties ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename PhysicalDeviceGroupPropertiesAllocator, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<PhysicalDeviceGroupProperties, PhysicalDeviceGroupPropertiesAllocator>>::type Instance::enumeratePhysicalDeviceGroupsKHR( Dispatch const & d ) const
- {
- std::vector<PhysicalDeviceGroupProperties, PhysicalDeviceGroupPropertiesAllocator> physicalDeviceGroupProperties;
- uint32_t physicalDeviceGroupCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkEnumeratePhysicalDeviceGroupsKHR( m_instance, &physicalDeviceGroupCount, nullptr ) );
- if ( ( result == Result::eSuccess ) && physicalDeviceGroupCount )
- {
- physicalDeviceGroupProperties.resize( physicalDeviceGroupCount );
- result = static_cast<Result>( d.vkEnumeratePhysicalDeviceGroupsKHR( m_instance, &physicalDeviceGroupCount, reinterpret_cast<VkPhysicalDeviceGroupProperties *>( physicalDeviceGroupProperties.data() ) ) );
- VULKAN_HPP_ASSERT( physicalDeviceGroupCount <= physicalDeviceGroupProperties.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( physicalDeviceGroupCount < physicalDeviceGroupProperties.size() ) )
- {
- physicalDeviceGroupProperties.resize( physicalDeviceGroupCount );
- }
- return createResultValue( result, physicalDeviceGroupProperties, VULKAN_HPP_NAMESPACE_STRING"::Instance::enumeratePhysicalDeviceGroupsKHR" );
- }
-
- template <typename PhysicalDeviceGroupPropertiesAllocator, typename Dispatch, typename B, typename std::enable_if<std::is_same<typename B::value_type, PhysicalDeviceGroupProperties>::value, int>::type >
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<PhysicalDeviceGroupProperties, PhysicalDeviceGroupPropertiesAllocator>>::type Instance::enumeratePhysicalDeviceGroupsKHR( PhysicalDeviceGroupPropertiesAllocator & physicalDeviceGroupPropertiesAllocator, Dispatch const & d ) const
- {
- std::vector<PhysicalDeviceGroupProperties, PhysicalDeviceGroupPropertiesAllocator> physicalDeviceGroupProperties( physicalDeviceGroupPropertiesAllocator );
- uint32_t physicalDeviceGroupCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkEnumeratePhysicalDeviceGroupsKHR( m_instance, &physicalDeviceGroupCount, nullptr ) );
- if ( ( result == Result::eSuccess ) && physicalDeviceGroupCount )
- {
- physicalDeviceGroupProperties.resize( physicalDeviceGroupCount );
- result = static_cast<Result>( d.vkEnumeratePhysicalDeviceGroupsKHR( m_instance, &physicalDeviceGroupCount, reinterpret_cast<VkPhysicalDeviceGroupProperties *>( physicalDeviceGroupProperties.data() ) ) );
- VULKAN_HPP_ASSERT( physicalDeviceGroupCount <= physicalDeviceGroupProperties.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( physicalDeviceGroupCount < physicalDeviceGroupProperties.size() ) )
- {
- physicalDeviceGroupProperties.resize( physicalDeviceGroupCount );
- }
- return createResultValue( result, physicalDeviceGroupProperties, VULKAN_HPP_NAMESPACE_STRING"::Instance::enumeratePhysicalDeviceGroupsKHR" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Instance::enumeratePhysicalDevices( uint32_t* pPhysicalDeviceCount, VULKAN_HPP_NAMESPACE::PhysicalDevice* pPhysicalDevices, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkEnumeratePhysicalDevices( m_instance, pPhysicalDeviceCount, reinterpret_cast< VkPhysicalDevice *>( pPhysicalDevices ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename PhysicalDeviceAllocator, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<PhysicalDevice, PhysicalDeviceAllocator>>::type Instance::enumeratePhysicalDevices( Dispatch const & d ) const
- {
- std::vector<PhysicalDevice, PhysicalDeviceAllocator> physicalDevices;
- uint32_t physicalDeviceCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkEnumeratePhysicalDevices( m_instance, &physicalDeviceCount, nullptr ) );
- if ( ( result == Result::eSuccess ) && physicalDeviceCount )
- {
- physicalDevices.resize( physicalDeviceCount );
- result = static_cast<Result>( d.vkEnumeratePhysicalDevices( m_instance, &physicalDeviceCount, reinterpret_cast<VkPhysicalDevice *>( physicalDevices.data() ) ) );
- VULKAN_HPP_ASSERT( physicalDeviceCount <= physicalDevices.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( physicalDeviceCount < physicalDevices.size() ) )
- {
- physicalDevices.resize( physicalDeviceCount );
- }
- return createResultValue( result, physicalDevices, VULKAN_HPP_NAMESPACE_STRING"::Instance::enumeratePhysicalDevices" );
- }
-
- template <typename PhysicalDeviceAllocator, typename Dispatch, typename B, typename std::enable_if<std::is_same<typename B::value_type, PhysicalDevice>::value, int>::type >
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<PhysicalDevice, PhysicalDeviceAllocator>>::type Instance::enumeratePhysicalDevices( PhysicalDeviceAllocator & physicalDeviceAllocator, Dispatch const & d ) const
- {
- std::vector<PhysicalDevice, PhysicalDeviceAllocator> physicalDevices( physicalDeviceAllocator );
- uint32_t physicalDeviceCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkEnumeratePhysicalDevices( m_instance, &physicalDeviceCount, nullptr ) );
- if ( ( result == Result::eSuccess ) && physicalDeviceCount )
- {
- physicalDevices.resize( physicalDeviceCount );
- result = static_cast<Result>( d.vkEnumeratePhysicalDevices( m_instance, &physicalDeviceCount, reinterpret_cast<VkPhysicalDevice *>( physicalDevices.data() ) ) );
- VULKAN_HPP_ASSERT( physicalDeviceCount <= physicalDevices.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( physicalDeviceCount < physicalDevices.size() ) )
- {
- physicalDevices.resize( physicalDeviceCount );
- }
- return createResultValue( result, physicalDevices, VULKAN_HPP_NAMESPACE_STRING"::Instance::enumeratePhysicalDevices" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE PFN_vkVoidFunction Instance::getProcAddr( const char* pName, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return d.vkGetInstanceProcAddr( m_instance, pName );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE PFN_vkVoidFunction Instance::getProcAddr( const std::string & name, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return d.vkGetInstanceProcAddr( m_instance, name.c_str() );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Instance::submitDebugUtilsMessageEXT( VULKAN_HPP_NAMESPACE::DebugUtilsMessageSeverityFlagBitsEXT messageSeverity, VULKAN_HPP_NAMESPACE::DebugUtilsMessageTypeFlagsEXT messageTypes, const VULKAN_HPP_NAMESPACE::DebugUtilsMessengerCallbackDataEXT* pCallbackData, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkSubmitDebugUtilsMessageEXT( m_instance, static_cast<VkDebugUtilsMessageSeverityFlagBitsEXT>( messageSeverity ), static_cast<VkDebugUtilsMessageTypeFlagsEXT>( messageTypes ), reinterpret_cast<const VkDebugUtilsMessengerCallbackDataEXT *>( pCallbackData ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Instance::submitDebugUtilsMessageEXT( VULKAN_HPP_NAMESPACE::DebugUtilsMessageSeverityFlagBitsEXT messageSeverity, VULKAN_HPP_NAMESPACE::DebugUtilsMessageTypeFlagsEXT messageTypes, const DebugUtilsMessengerCallbackDataEXT & callbackData, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkSubmitDebugUtilsMessageEXT( m_instance, static_cast<VkDebugUtilsMessageSeverityFlagBitsEXT>( messageSeverity ), static_cast<VkDebugUtilsMessageTypeFlagsEXT>( messageTypes ), reinterpret_cast<const VkDebugUtilsMessengerCallbackDataEXT *>( &callbackData ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-#ifdef VK_USE_PLATFORM_XLIB_XRANDR_EXT
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result PhysicalDevice::acquireXlibDisplayEXT( Display* dpy, VULKAN_HPP_NAMESPACE::DisplayKHR display, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkAcquireXlibDisplayEXT( m_physicalDevice, dpy, static_cast<VkDisplayKHR>( display ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type PhysicalDevice::acquireXlibDisplayEXT( Display & dpy, VULKAN_HPP_NAMESPACE::DisplayKHR display, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkAcquireXlibDisplayEXT( m_physicalDevice, &dpy, static_cast<VkDisplayKHR>( display ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::acquireXlibDisplayEXT" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_XLIB_XRANDR_EXT*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result PhysicalDevice::createDevice( const VULKAN_HPP_NAMESPACE::DeviceCreateInfo* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::Device* pDevice, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCreateDevice( m_physicalDevice, reinterpret_cast<const VkDeviceCreateInfo *>( pCreateInfo ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ), reinterpret_cast< VkDevice *>( pDevice ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::Device>::type PhysicalDevice::createDevice( const DeviceCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::Device device;
- Result result = static_cast<Result>( d.vkCreateDevice( m_physicalDevice, reinterpret_cast<const VkDeviceCreateInfo *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkDevice *>( &device ) ) );
- return createResultValue( result, device, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::createDevice" );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::Device, Dispatch>>::type PhysicalDevice::createDeviceUnique( const DeviceCreateInfo & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::Device device;
- Result result = static_cast<Result>( d.vkCreateDevice( m_physicalDevice, reinterpret_cast<const VkDeviceCreateInfo *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkDevice *>( &device ) ) );
- ObjectDestroy<NoParent, Dispatch> deleter( allocator, d );
- return createResultValue<VULKAN_HPP_NAMESPACE::Device, Dispatch>( result, device, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::createDeviceUnique", deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result PhysicalDevice::createDisplayModeKHR( VULKAN_HPP_NAMESPACE::DisplayKHR display, const VULKAN_HPP_NAMESPACE::DisplayModeCreateInfoKHR* pCreateInfo, const VULKAN_HPP_NAMESPACE::AllocationCallbacks* pAllocator, VULKAN_HPP_NAMESPACE::DisplayModeKHR* pMode, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkCreateDisplayModeKHR( m_physicalDevice, static_cast<VkDisplayKHR>( display ), reinterpret_cast<const VkDisplayModeCreateInfoKHR *>( pCreateInfo ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ), reinterpret_cast< VkDisplayModeKHR *>( pMode ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::DisplayModeKHR>::type PhysicalDevice::createDisplayModeKHR( VULKAN_HPP_NAMESPACE::DisplayKHR display, const DisplayModeCreateInfoKHR & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::DisplayModeKHR mode;
- Result result = static_cast<Result>( d.vkCreateDisplayModeKHR( m_physicalDevice, static_cast<VkDisplayKHR>( display ), reinterpret_cast<const VkDisplayModeCreateInfoKHR *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkDisplayModeKHR *>( &mode ) ) );
- return createResultValue( result, mode, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::createDisplayModeKHR" );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::DisplayModeKHR, Dispatch>>::type PhysicalDevice::createDisplayModeKHRUnique( VULKAN_HPP_NAMESPACE::DisplayKHR display, const DisplayModeCreateInfoKHR & createInfo, Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::DisplayModeKHR mode;
- Result result = static_cast<Result>( d.vkCreateDisplayModeKHR( m_physicalDevice, static_cast<VkDisplayKHR>( display ), reinterpret_cast<const VkDisplayModeCreateInfoKHR *>( &createInfo ), reinterpret_cast<const VkAllocationCallbacks *>( static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks*>( allocator ) ), reinterpret_cast<VkDisplayModeKHR *>( &mode ) ) );
- ObjectDestroy<PhysicalDevice, Dispatch> deleter( *this, allocator, d );
- return createResultValue<VULKAN_HPP_NAMESPACE::DisplayModeKHR, Dispatch>( result, mode, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::createDisplayModeKHRUnique", deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result PhysicalDevice::enumerateDeviceExtensionProperties( const char* pLayerName, uint32_t* pPropertyCount, VULKAN_HPP_NAMESPACE::ExtensionProperties* pProperties, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkEnumerateDeviceExtensionProperties( m_physicalDevice, pLayerName, pPropertyCount, reinterpret_cast< VkExtensionProperties *>( pProperties ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename ExtensionPropertiesAllocator, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<ExtensionProperties, ExtensionPropertiesAllocator>>::type PhysicalDevice::enumerateDeviceExtensionProperties( Optional<const std::string> layerName, Dispatch const & d ) const
- {
- std::vector<ExtensionProperties, ExtensionPropertiesAllocator> properties;
- uint32_t propertyCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkEnumerateDeviceExtensionProperties( m_physicalDevice, layerName ? layerName->c_str() : nullptr, &propertyCount, nullptr ) );
- if ( ( result == Result::eSuccess ) && propertyCount )
- {
- properties.resize( propertyCount );
- result = static_cast<Result>( d.vkEnumerateDeviceExtensionProperties( m_physicalDevice, layerName ? layerName->c_str() : nullptr, &propertyCount, reinterpret_cast<VkExtensionProperties *>( properties.data() ) ) );
- VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( propertyCount < properties.size() ) )
- {
- properties.resize( propertyCount );
- }
- return createResultValue( result, properties, VULKAN_HPP_NAMESPACE_STRING"::PhysicalDevice::enumerateDeviceExtensionProperties" );
- }
-
- template <typename ExtensionPropertiesAllocator, typename Dispatch, typename B, typename std::enable_if<std::is_same<typename B::value_type, ExtensionProperties>::value, int>::type >
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<ExtensionProperties, ExtensionPropertiesAllocator>>::type PhysicalDevice::enumerateDeviceExtensionProperties( Optional<const std::string> layerName, ExtensionPropertiesAllocator & extensionPropertiesAllocator, Dispatch const & d ) const
- {
- std::vector<ExtensionProperties, ExtensionPropertiesAllocator> properties( extensionPropertiesAllocator );
- uint32_t propertyCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkEnumerateDeviceExtensionProperties( m_physicalDevice, layerName ? layerName->c_str() : nullptr, &propertyCount, nullptr ) );
- if ( ( result == Result::eSuccess ) && propertyCount )
- {
- properties.resize( propertyCount );
- result = static_cast<Result>( d.vkEnumerateDeviceExtensionProperties( m_physicalDevice, layerName ? layerName->c_str() : nullptr, &propertyCount, reinterpret_cast<VkExtensionProperties *>( properties.data() ) ) );
- VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( propertyCount < properties.size() ) )
- {
- properties.resize( propertyCount );
- }
- return createResultValue( result, properties, VULKAN_HPP_NAMESPACE_STRING"::PhysicalDevice::enumerateDeviceExtensionProperties" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result PhysicalDevice::enumerateDeviceLayerProperties( uint32_t* pPropertyCount, VULKAN_HPP_NAMESPACE::LayerProperties* pProperties, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkEnumerateDeviceLayerProperties( m_physicalDevice, pPropertyCount, reinterpret_cast< VkLayerProperties *>( pProperties ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename LayerPropertiesAllocator, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<LayerProperties, LayerPropertiesAllocator>>::type PhysicalDevice::enumerateDeviceLayerProperties( Dispatch const & d ) const
- {
- std::vector<LayerProperties, LayerPropertiesAllocator> properties;
- uint32_t propertyCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkEnumerateDeviceLayerProperties( m_physicalDevice, &propertyCount, nullptr ) );
- if ( ( result == Result::eSuccess ) && propertyCount )
- {
- properties.resize( propertyCount );
- result = static_cast<Result>( d.vkEnumerateDeviceLayerProperties( m_physicalDevice, &propertyCount, reinterpret_cast<VkLayerProperties *>( properties.data() ) ) );
- VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( propertyCount < properties.size() ) )
- {
- properties.resize( propertyCount );
- }
- return createResultValue( result, properties, VULKAN_HPP_NAMESPACE_STRING"::PhysicalDevice::enumerateDeviceLayerProperties" );
- }
-
- template <typename LayerPropertiesAllocator, typename Dispatch, typename B, typename std::enable_if<std::is_same<typename B::value_type, LayerProperties>::value, int>::type >
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<LayerProperties, LayerPropertiesAllocator>>::type PhysicalDevice::enumerateDeviceLayerProperties( LayerPropertiesAllocator & layerPropertiesAllocator, Dispatch const & d ) const
- {
- std::vector<LayerProperties, LayerPropertiesAllocator> properties( layerPropertiesAllocator );
- uint32_t propertyCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkEnumerateDeviceLayerProperties( m_physicalDevice, &propertyCount, nullptr ) );
- if ( ( result == Result::eSuccess ) && propertyCount )
- {
- properties.resize( propertyCount );
- result = static_cast<Result>( d.vkEnumerateDeviceLayerProperties( m_physicalDevice, &propertyCount, reinterpret_cast<VkLayerProperties *>( properties.data() ) ) );
- VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( propertyCount < properties.size() ) )
- {
- properties.resize( propertyCount );
- }
- return createResultValue( result, properties, VULKAN_HPP_NAMESPACE_STRING"::PhysicalDevice::enumerateDeviceLayerProperties" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result PhysicalDevice::enumerateQueueFamilyPerformanceQueryCountersKHR( uint32_t queueFamilyIndex, uint32_t* pCounterCount, VULKAN_HPP_NAMESPACE::PerformanceCounterKHR* pCounters, VULKAN_HPP_NAMESPACE::PerformanceCounterDescriptionKHR* pCounterDescriptions, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR( m_physicalDevice, queueFamilyIndex, pCounterCount, reinterpret_cast< VkPerformanceCounterKHR *>( pCounters ), reinterpret_cast< VkPerformanceCounterDescriptionKHR *>( pCounterDescriptions ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Allocator, typename Dispatch>
- VULKAN_HPP_DEPRECATED( "This function is deprecated. Use one of the other flavours of it.")
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<PerformanceCounterDescriptionKHR,Allocator>>::type PhysicalDevice::enumerateQueueFamilyPerformanceQueryCountersKHR( uint32_t queueFamilyIndex, ArrayProxy<VULKAN_HPP_NAMESPACE::PerformanceCounterKHR> const &counters, Dispatch const &d ) const
- {
- std::vector<PerformanceCounterDescriptionKHR,Allocator> counterDescriptions;
- uint32_t counterCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR( m_physicalDevice, queueFamilyIndex, counters.size() , reinterpret_cast<VkPerformanceCounterKHR*>( counters.data() ), nullptr ) );
- if ( ( result == Result::eSuccess ) && counterCount )
- {
- counterDescriptions.resize( counterCount );
- result = static_cast<Result>( d.vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR( m_physicalDevice, queueFamilyIndex, counters.size() , reinterpret_cast<VkPerformanceCounterKHR*>( counters.data() ), reinterpret_cast<VkPerformanceCounterDescriptionKHR*>( counterDescriptions.data() ) ) );
- }
- } while ( result == Result::eIncomplete );
- if ( result == Result::eSuccess )
- {
- VULKAN_HPP_ASSERT( counterCount <= counterDescriptions.size() );
- counterDescriptions.resize( counterCount );
- }
- return createResultValue( result, counterDescriptions, VULKAN_HPP_NAMESPACE_STRING"::PhysicalDevice::enumerateQueueFamilyPerformanceQueryCountersKHR" );
-
- }
-
- template <typename Allocator, typename Dispatch, typename B, typename std::enable_if<std::is_same<typename B::value_type, PerformanceCounterDescriptionKHR>::value, int>::type>
- VULKAN_HPP_DEPRECATED( "This function is deprecated. Use one of the other flavours of it.")
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<PerformanceCounterDescriptionKHR,Allocator>>::type PhysicalDevice::enumerateQueueFamilyPerformanceQueryCountersKHR( uint32_t queueFamilyIndex, ArrayProxy<VULKAN_HPP_NAMESPACE::PerformanceCounterKHR> const &counters, Allocator const& vectorAllocator, Dispatch const &d ) const
- {
- std::vector<PerformanceCounterDescriptionKHR,Allocator> counterDescriptions( vectorAllocator );
- uint32_t counterCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR( m_physicalDevice, queueFamilyIndex, counters.size() , reinterpret_cast<VkPerformanceCounterKHR*>( counters.data() ), nullptr ) );
- if ( ( result == Result::eSuccess ) && counterCount )
- {
- counterDescriptions.resize( counterCount );
- result = static_cast<Result>( d.vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR( m_physicalDevice, queueFamilyIndex, counters.size() , reinterpret_cast<VkPerformanceCounterKHR*>( counters.data() ), reinterpret_cast<VkPerformanceCounterDescriptionKHR*>( counterDescriptions.data() ) ) );
- }
- } while ( result == Result::eIncomplete );
- if ( result == Result::eSuccess )
- {
- VULKAN_HPP_ASSERT( counterCount <= counterDescriptions.size() );
- counterDescriptions.resize( counterCount );
- }
- return createResultValue( result, counterDescriptions, VULKAN_HPP_NAMESPACE_STRING"::PhysicalDevice::enumerateQueueFamilyPerformanceQueryCountersKHR" );
-
- }
-
- template <typename PerformanceCounterKHRAllocator, typename PerformanceCounterDescriptionKHRAllocator, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::pair<std::vector<PerformanceCounterKHR, PerformanceCounterKHRAllocator>, std::vector<PerformanceCounterDescriptionKHR, PerformanceCounterDescriptionKHRAllocator>>>::type PhysicalDevice::enumerateQueueFamilyPerformanceQueryCountersKHR( uint32_t queueFamilyIndex, Dispatch const & d ) const
- {
- std::pair<std::vector<PerformanceCounterKHR, PerformanceCounterKHRAllocator>, std::vector<PerformanceCounterDescriptionKHR, PerformanceCounterDescriptionKHRAllocator>> data;
- std::vector<PerformanceCounterKHR, PerformanceCounterKHRAllocator> & counters = data.first;
- std::vector<PerformanceCounterDescriptionKHR, PerformanceCounterDescriptionKHRAllocator> & counterDescriptions = data.second;
- uint32_t counterCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR( m_physicalDevice, queueFamilyIndex, &counterCount, nullptr, nullptr ) );
- if ( ( result == Result::eSuccess ) && counterCount )
- {
- counters.resize( counterCount );
- counterDescriptions.resize( counterCount );
- result = static_cast<Result>( d.vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR( m_physicalDevice, queueFamilyIndex, &counterCount, reinterpret_cast<VkPerformanceCounterKHR *>( counters.data() ), reinterpret_cast<VkPerformanceCounterDescriptionKHR *>( counterDescriptions.data() ) ) );
- VULKAN_HPP_ASSERT( counterCount <= counters.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( counterCount < counters.size() ) )
- {
- counters.resize( counterCount );
- counterDescriptions.resize( counterCount );
- }
- return createResultValue( result, data, VULKAN_HPP_NAMESPACE_STRING"::PhysicalDevice::enumerateQueueFamilyPerformanceQueryCountersKHR" );
- }
-
- template <typename PerformanceCounterKHRAllocator, typename PerformanceCounterDescriptionKHRAllocator, typename Dispatch, typename B1, typename B2, typename std::enable_if<std::is_same<typename B1::value_type, PerformanceCounterKHR>::value && std::is_same<typename B2::value_type, PerformanceCounterDescriptionKHR>::value, int>::type >
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::pair<std::vector<PerformanceCounterKHR, PerformanceCounterKHRAllocator>, std::vector<PerformanceCounterDescriptionKHR, PerformanceCounterDescriptionKHRAllocator>>>::type PhysicalDevice::enumerateQueueFamilyPerformanceQueryCountersKHR( uint32_t queueFamilyIndex, PerformanceCounterKHRAllocator & performanceCounterKHRAllocator, PerformanceCounterDescriptionKHRAllocator & performanceCounterDescriptionKHRAllocator, Dispatch const & d ) const
- {
- std::pair<std::vector<PerformanceCounterKHR, PerformanceCounterKHRAllocator>, std::vector<PerformanceCounterDescriptionKHR, PerformanceCounterDescriptionKHRAllocator>> data( std::piecewise_construct, std::forward_as_tuple( performanceCounterKHRAllocator ), std::forward_as_tuple( performanceCounterDescriptionKHRAllocator ) );
- std::vector<PerformanceCounterKHR, PerformanceCounterKHRAllocator> & counters = data.first;
- std::vector<PerformanceCounterDescriptionKHR, PerformanceCounterDescriptionKHRAllocator> & counterDescriptions = data.second;
- uint32_t counterCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR( m_physicalDevice, queueFamilyIndex, &counterCount, nullptr, nullptr ) );
- if ( ( result == Result::eSuccess ) && counterCount )
- {
- counters.resize( counterCount );
- counterDescriptions.resize( counterCount );
- result = static_cast<Result>( d.vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR( m_physicalDevice, queueFamilyIndex, &counterCount, reinterpret_cast<VkPerformanceCounterKHR *>( counters.data() ), reinterpret_cast<VkPerformanceCounterDescriptionKHR *>( counterDescriptions.data() ) ) );
- VULKAN_HPP_ASSERT( counterCount <= counters.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( counterCount < counters.size() ) )
- {
- counters.resize( counterCount );
- counterDescriptions.resize( counterCount );
- }
- return createResultValue( result, data, VULKAN_HPP_NAMESPACE_STRING"::PhysicalDevice::enumerateQueueFamilyPerformanceQueryCountersKHR" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result PhysicalDevice::getDisplayModeProperties2KHR( VULKAN_HPP_NAMESPACE::DisplayKHR display, uint32_t* pPropertyCount, VULKAN_HPP_NAMESPACE::DisplayModeProperties2KHR* pProperties, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetDisplayModeProperties2KHR( m_physicalDevice, static_cast<VkDisplayKHR>( display ), pPropertyCount, reinterpret_cast< VkDisplayModeProperties2KHR *>( pProperties ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename DisplayModeProperties2KHRAllocator, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<DisplayModeProperties2KHR, DisplayModeProperties2KHRAllocator>>::type PhysicalDevice::getDisplayModeProperties2KHR( VULKAN_HPP_NAMESPACE::DisplayKHR display, Dispatch const & d ) const
- {
- std::vector<DisplayModeProperties2KHR, DisplayModeProperties2KHRAllocator> properties;
- uint32_t propertyCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkGetDisplayModeProperties2KHR( m_physicalDevice, static_cast<VkDisplayKHR>( display ), &propertyCount, nullptr ) );
- if ( ( result == Result::eSuccess ) && propertyCount )
- {
- properties.resize( propertyCount );
- result = static_cast<Result>( d.vkGetDisplayModeProperties2KHR( m_physicalDevice, static_cast<VkDisplayKHR>( display ), &propertyCount, reinterpret_cast<VkDisplayModeProperties2KHR *>( properties.data() ) ) );
- VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( propertyCount < properties.size() ) )
- {
- properties.resize( propertyCount );
- }
- return createResultValue( result, properties, VULKAN_HPP_NAMESPACE_STRING"::PhysicalDevice::getDisplayModeProperties2KHR" );
- }
-
- template <typename DisplayModeProperties2KHRAllocator, typename Dispatch, typename B, typename std::enable_if<std::is_same<typename B::value_type, DisplayModeProperties2KHR>::value, int>::type >
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<DisplayModeProperties2KHR, DisplayModeProperties2KHRAllocator>>::type PhysicalDevice::getDisplayModeProperties2KHR( VULKAN_HPP_NAMESPACE::DisplayKHR display, DisplayModeProperties2KHRAllocator & displayModeProperties2KHRAllocator, Dispatch const & d ) const
- {
- std::vector<DisplayModeProperties2KHR, DisplayModeProperties2KHRAllocator> properties( displayModeProperties2KHRAllocator );
- uint32_t propertyCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkGetDisplayModeProperties2KHR( m_physicalDevice, static_cast<VkDisplayKHR>( display ), &propertyCount, nullptr ) );
- if ( ( result == Result::eSuccess ) && propertyCount )
- {
- properties.resize( propertyCount );
- result = static_cast<Result>( d.vkGetDisplayModeProperties2KHR( m_physicalDevice, static_cast<VkDisplayKHR>( display ), &propertyCount, reinterpret_cast<VkDisplayModeProperties2KHR *>( properties.data() ) ) );
- VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( propertyCount < properties.size() ) )
- {
- properties.resize( propertyCount );
- }
- return createResultValue( result, properties, VULKAN_HPP_NAMESPACE_STRING"::PhysicalDevice::getDisplayModeProperties2KHR" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result PhysicalDevice::getDisplayModePropertiesKHR( VULKAN_HPP_NAMESPACE::DisplayKHR display, uint32_t* pPropertyCount, VULKAN_HPP_NAMESPACE::DisplayModePropertiesKHR* pProperties, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetDisplayModePropertiesKHR( m_physicalDevice, static_cast<VkDisplayKHR>( display ), pPropertyCount, reinterpret_cast< VkDisplayModePropertiesKHR *>( pProperties ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename DisplayModePropertiesKHRAllocator, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<DisplayModePropertiesKHR, DisplayModePropertiesKHRAllocator>>::type PhysicalDevice::getDisplayModePropertiesKHR( VULKAN_HPP_NAMESPACE::DisplayKHR display, Dispatch const & d ) const
- {
- std::vector<DisplayModePropertiesKHR, DisplayModePropertiesKHRAllocator> properties;
- uint32_t propertyCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkGetDisplayModePropertiesKHR( m_physicalDevice, static_cast<VkDisplayKHR>( display ), &propertyCount, nullptr ) );
- if ( ( result == Result::eSuccess ) && propertyCount )
- {
- properties.resize( propertyCount );
- result = static_cast<Result>( d.vkGetDisplayModePropertiesKHR( m_physicalDevice, static_cast<VkDisplayKHR>( display ), &propertyCount, reinterpret_cast<VkDisplayModePropertiesKHR *>( properties.data() ) ) );
- VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( propertyCount < properties.size() ) )
- {
- properties.resize( propertyCount );
- }
- return createResultValue( result, properties, VULKAN_HPP_NAMESPACE_STRING"::PhysicalDevice::getDisplayModePropertiesKHR" );
- }
-
- template <typename DisplayModePropertiesKHRAllocator, typename Dispatch, typename B, typename std::enable_if<std::is_same<typename B::value_type, DisplayModePropertiesKHR>::value, int>::type >
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<DisplayModePropertiesKHR, DisplayModePropertiesKHRAllocator>>::type PhysicalDevice::getDisplayModePropertiesKHR( VULKAN_HPP_NAMESPACE::DisplayKHR display, DisplayModePropertiesKHRAllocator & displayModePropertiesKHRAllocator, Dispatch const & d ) const
- {
- std::vector<DisplayModePropertiesKHR, DisplayModePropertiesKHRAllocator> properties( displayModePropertiesKHRAllocator );
- uint32_t propertyCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkGetDisplayModePropertiesKHR( m_physicalDevice, static_cast<VkDisplayKHR>( display ), &propertyCount, nullptr ) );
- if ( ( result == Result::eSuccess ) && propertyCount )
- {
- properties.resize( propertyCount );
- result = static_cast<Result>( d.vkGetDisplayModePropertiesKHR( m_physicalDevice, static_cast<VkDisplayKHR>( display ), &propertyCount, reinterpret_cast<VkDisplayModePropertiesKHR *>( properties.data() ) ) );
- VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( propertyCount < properties.size() ) )
- {
- properties.resize( propertyCount );
- }
- return createResultValue( result, properties, VULKAN_HPP_NAMESPACE_STRING"::PhysicalDevice::getDisplayModePropertiesKHR" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result PhysicalDevice::getDisplayPlaneCapabilities2KHR( const VULKAN_HPP_NAMESPACE::DisplayPlaneInfo2KHR* pDisplayPlaneInfo, VULKAN_HPP_NAMESPACE::DisplayPlaneCapabilities2KHR* pCapabilities, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetDisplayPlaneCapabilities2KHR( m_physicalDevice, reinterpret_cast<const VkDisplayPlaneInfo2KHR *>( pDisplayPlaneInfo ), reinterpret_cast< VkDisplayPlaneCapabilities2KHR *>( pCapabilities ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::DisplayPlaneCapabilities2KHR>::type PhysicalDevice::getDisplayPlaneCapabilities2KHR( const DisplayPlaneInfo2KHR & displayPlaneInfo, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::DisplayPlaneCapabilities2KHR capabilities;
- Result result = static_cast<Result>( d.vkGetDisplayPlaneCapabilities2KHR( m_physicalDevice, reinterpret_cast<const VkDisplayPlaneInfo2KHR *>( &displayPlaneInfo ), reinterpret_cast<VkDisplayPlaneCapabilities2KHR *>( &capabilities ) ) );
- return createResultValue( result, capabilities, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getDisplayPlaneCapabilities2KHR" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result PhysicalDevice::getDisplayPlaneCapabilitiesKHR( VULKAN_HPP_NAMESPACE::DisplayModeKHR mode, uint32_t planeIndex, VULKAN_HPP_NAMESPACE::DisplayPlaneCapabilitiesKHR* pCapabilities, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetDisplayPlaneCapabilitiesKHR( m_physicalDevice, static_cast<VkDisplayModeKHR>( mode ), planeIndex, reinterpret_cast< VkDisplayPlaneCapabilitiesKHR *>( pCapabilities ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::DisplayPlaneCapabilitiesKHR>::type PhysicalDevice::getDisplayPlaneCapabilitiesKHR( VULKAN_HPP_NAMESPACE::DisplayModeKHR mode, uint32_t planeIndex, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::DisplayPlaneCapabilitiesKHR capabilities;
- Result result = static_cast<Result>( d.vkGetDisplayPlaneCapabilitiesKHR( m_physicalDevice, static_cast<VkDisplayModeKHR>( mode ), planeIndex, reinterpret_cast<VkDisplayPlaneCapabilitiesKHR *>( &capabilities ) ) );
- return createResultValue( result, capabilities, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getDisplayPlaneCapabilitiesKHR" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result PhysicalDevice::getDisplayPlaneSupportedDisplaysKHR( uint32_t planeIndex, uint32_t* pDisplayCount, VULKAN_HPP_NAMESPACE::DisplayKHR* pDisplays, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetDisplayPlaneSupportedDisplaysKHR( m_physicalDevice, planeIndex, pDisplayCount, reinterpret_cast< VkDisplayKHR *>( pDisplays ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename DisplayKHRAllocator, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<DisplayKHR, DisplayKHRAllocator>>::type PhysicalDevice::getDisplayPlaneSupportedDisplaysKHR( uint32_t planeIndex, Dispatch const & d ) const
- {
- std::vector<DisplayKHR, DisplayKHRAllocator> displays;
- uint32_t displayCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkGetDisplayPlaneSupportedDisplaysKHR( m_physicalDevice, planeIndex, &displayCount, nullptr ) );
- if ( ( result == Result::eSuccess ) && displayCount )
- {
- displays.resize( displayCount );
- result = static_cast<Result>( d.vkGetDisplayPlaneSupportedDisplaysKHR( m_physicalDevice, planeIndex, &displayCount, reinterpret_cast<VkDisplayKHR *>( displays.data() ) ) );
- VULKAN_HPP_ASSERT( displayCount <= displays.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( displayCount < displays.size() ) )
- {
- displays.resize( displayCount );
- }
- return createResultValue( result, displays, VULKAN_HPP_NAMESPACE_STRING"::PhysicalDevice::getDisplayPlaneSupportedDisplaysKHR" );
- }
-
- template <typename DisplayKHRAllocator, typename Dispatch, typename B, typename std::enable_if<std::is_same<typename B::value_type, DisplayKHR>::value, int>::type >
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<DisplayKHR, DisplayKHRAllocator>>::type PhysicalDevice::getDisplayPlaneSupportedDisplaysKHR( uint32_t planeIndex, DisplayKHRAllocator & displayKHRAllocator, Dispatch const & d ) const
- {
- std::vector<DisplayKHR, DisplayKHRAllocator> displays( displayKHRAllocator );
- uint32_t displayCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkGetDisplayPlaneSupportedDisplaysKHR( m_physicalDevice, planeIndex, &displayCount, nullptr ) );
- if ( ( result == Result::eSuccess ) && displayCount )
- {
- displays.resize( displayCount );
- result = static_cast<Result>( d.vkGetDisplayPlaneSupportedDisplaysKHR( m_physicalDevice, planeIndex, &displayCount, reinterpret_cast<VkDisplayKHR *>( displays.data() ) ) );
- VULKAN_HPP_ASSERT( displayCount <= displays.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( displayCount < displays.size() ) )
- {
- displays.resize( displayCount );
- }
- return createResultValue( result, displays, VULKAN_HPP_NAMESPACE_STRING"::PhysicalDevice::getDisplayPlaneSupportedDisplaysKHR" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result PhysicalDevice::getCalibrateableTimeDomainsEXT( uint32_t* pTimeDomainCount, VULKAN_HPP_NAMESPACE::TimeDomainEXT* pTimeDomains, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetPhysicalDeviceCalibrateableTimeDomainsEXT( m_physicalDevice, pTimeDomainCount, reinterpret_cast< VkTimeDomainEXT *>( pTimeDomains ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename TimeDomainEXTAllocator, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<TimeDomainEXT, TimeDomainEXTAllocator>>::type PhysicalDevice::getCalibrateableTimeDomainsEXT( Dispatch const & d ) const
- {
- std::vector<TimeDomainEXT, TimeDomainEXTAllocator> timeDomains;
- uint32_t timeDomainCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkGetPhysicalDeviceCalibrateableTimeDomainsEXT( m_physicalDevice, &timeDomainCount, nullptr ) );
- if ( ( result == Result::eSuccess ) && timeDomainCount )
- {
- timeDomains.resize( timeDomainCount );
- result = static_cast<Result>( d.vkGetPhysicalDeviceCalibrateableTimeDomainsEXT( m_physicalDevice, &timeDomainCount, reinterpret_cast<VkTimeDomainEXT *>( timeDomains.data() ) ) );
- VULKAN_HPP_ASSERT( timeDomainCount <= timeDomains.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( timeDomainCount < timeDomains.size() ) )
- {
- timeDomains.resize( timeDomainCount );
- }
- return createResultValue( result, timeDomains, VULKAN_HPP_NAMESPACE_STRING"::PhysicalDevice::getCalibrateableTimeDomainsEXT" );
- }
-
- template <typename TimeDomainEXTAllocator, typename Dispatch, typename B, typename std::enable_if<std::is_same<typename B::value_type, TimeDomainEXT>::value, int>::type >
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<TimeDomainEXT, TimeDomainEXTAllocator>>::type PhysicalDevice::getCalibrateableTimeDomainsEXT( TimeDomainEXTAllocator & timeDomainEXTAllocator, Dispatch const & d ) const
- {
- std::vector<TimeDomainEXT, TimeDomainEXTAllocator> timeDomains( timeDomainEXTAllocator );
- uint32_t timeDomainCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkGetPhysicalDeviceCalibrateableTimeDomainsEXT( m_physicalDevice, &timeDomainCount, nullptr ) );
- if ( ( result == Result::eSuccess ) && timeDomainCount )
- {
- timeDomains.resize( timeDomainCount );
- result = static_cast<Result>( d.vkGetPhysicalDeviceCalibrateableTimeDomainsEXT( m_physicalDevice, &timeDomainCount, reinterpret_cast<VkTimeDomainEXT *>( timeDomains.data() ) ) );
- VULKAN_HPP_ASSERT( timeDomainCount <= timeDomains.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( timeDomainCount < timeDomains.size() ) )
- {
- timeDomains.resize( timeDomainCount );
- }
- return createResultValue( result, timeDomains, VULKAN_HPP_NAMESPACE_STRING"::PhysicalDevice::getCalibrateableTimeDomainsEXT" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result PhysicalDevice::getCooperativeMatrixPropertiesNV( uint32_t* pPropertyCount, VULKAN_HPP_NAMESPACE::CooperativeMatrixPropertiesNV* pProperties, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetPhysicalDeviceCooperativeMatrixPropertiesNV( m_physicalDevice, pPropertyCount, reinterpret_cast< VkCooperativeMatrixPropertiesNV *>( pProperties ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename CooperativeMatrixPropertiesNVAllocator, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<CooperativeMatrixPropertiesNV, CooperativeMatrixPropertiesNVAllocator>>::type PhysicalDevice::getCooperativeMatrixPropertiesNV( Dispatch const & d ) const
- {
- std::vector<CooperativeMatrixPropertiesNV, CooperativeMatrixPropertiesNVAllocator> properties;
- uint32_t propertyCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkGetPhysicalDeviceCooperativeMatrixPropertiesNV( m_physicalDevice, &propertyCount, nullptr ) );
- if ( ( result == Result::eSuccess ) && propertyCount )
- {
- properties.resize( propertyCount );
- result = static_cast<Result>( d.vkGetPhysicalDeviceCooperativeMatrixPropertiesNV( m_physicalDevice, &propertyCount, reinterpret_cast<VkCooperativeMatrixPropertiesNV *>( properties.data() ) ) );
- VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( propertyCount < properties.size() ) )
- {
- properties.resize( propertyCount );
- }
- return createResultValue( result, properties, VULKAN_HPP_NAMESPACE_STRING"::PhysicalDevice::getCooperativeMatrixPropertiesNV" );
- }
-
- template <typename CooperativeMatrixPropertiesNVAllocator, typename Dispatch, typename B, typename std::enable_if<std::is_same<typename B::value_type, CooperativeMatrixPropertiesNV>::value, int>::type >
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<CooperativeMatrixPropertiesNV, CooperativeMatrixPropertiesNVAllocator>>::type PhysicalDevice::getCooperativeMatrixPropertiesNV( CooperativeMatrixPropertiesNVAllocator & cooperativeMatrixPropertiesNVAllocator, Dispatch const & d ) const
- {
- std::vector<CooperativeMatrixPropertiesNV, CooperativeMatrixPropertiesNVAllocator> properties( cooperativeMatrixPropertiesNVAllocator );
- uint32_t propertyCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkGetPhysicalDeviceCooperativeMatrixPropertiesNV( m_physicalDevice, &propertyCount, nullptr ) );
- if ( ( result == Result::eSuccess ) && propertyCount )
- {
- properties.resize( propertyCount );
- result = static_cast<Result>( d.vkGetPhysicalDeviceCooperativeMatrixPropertiesNV( m_physicalDevice, &propertyCount, reinterpret_cast<VkCooperativeMatrixPropertiesNV *>( properties.data() ) ) );
- VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( propertyCount < properties.size() ) )
- {
- properties.resize( propertyCount );
- }
- return createResultValue( result, properties, VULKAN_HPP_NAMESPACE_STRING"::PhysicalDevice::getCooperativeMatrixPropertiesNV" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-#ifdef VK_USE_PLATFORM_DIRECTFB_EXT
- template <typename Dispatch>
- VULKAN_HPP_INLINE Bool32 PhysicalDevice::getDirectFBPresentationSupportEXT( uint32_t queueFamilyIndex, IDirectFB* dfb, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Bool32>( d.vkGetPhysicalDeviceDirectFBPresentationSupportEXT( m_physicalDevice, queueFamilyIndex, dfb ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE Bool32 PhysicalDevice::getDirectFBPresentationSupportEXT( uint32_t queueFamilyIndex, IDirectFB & dfb, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return d.vkGetPhysicalDeviceDirectFBPresentationSupportEXT( m_physicalDevice, queueFamilyIndex, &dfb );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_DIRECTFB_EXT*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result PhysicalDevice::getDisplayPlaneProperties2KHR( uint32_t* pPropertyCount, VULKAN_HPP_NAMESPACE::DisplayPlaneProperties2KHR* pProperties, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetPhysicalDeviceDisplayPlaneProperties2KHR( m_physicalDevice, pPropertyCount, reinterpret_cast< VkDisplayPlaneProperties2KHR *>( pProperties ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename DisplayPlaneProperties2KHRAllocator, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<DisplayPlaneProperties2KHR, DisplayPlaneProperties2KHRAllocator>>::type PhysicalDevice::getDisplayPlaneProperties2KHR( Dispatch const & d ) const
- {
- std::vector<DisplayPlaneProperties2KHR, DisplayPlaneProperties2KHRAllocator> properties;
- uint32_t propertyCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkGetPhysicalDeviceDisplayPlaneProperties2KHR( m_physicalDevice, &propertyCount, nullptr ) );
- if ( ( result == Result::eSuccess ) && propertyCount )
- {
- properties.resize( propertyCount );
- result = static_cast<Result>( d.vkGetPhysicalDeviceDisplayPlaneProperties2KHR( m_physicalDevice, &propertyCount, reinterpret_cast<VkDisplayPlaneProperties2KHR *>( properties.data() ) ) );
- VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( propertyCount < properties.size() ) )
- {
- properties.resize( propertyCount );
- }
- return createResultValue( result, properties, VULKAN_HPP_NAMESPACE_STRING"::PhysicalDevice::getDisplayPlaneProperties2KHR" );
- }
-
- template <typename DisplayPlaneProperties2KHRAllocator, typename Dispatch, typename B, typename std::enable_if<std::is_same<typename B::value_type, DisplayPlaneProperties2KHR>::value, int>::type >
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<DisplayPlaneProperties2KHR, DisplayPlaneProperties2KHRAllocator>>::type PhysicalDevice::getDisplayPlaneProperties2KHR( DisplayPlaneProperties2KHRAllocator & displayPlaneProperties2KHRAllocator, Dispatch const & d ) const
- {
- std::vector<DisplayPlaneProperties2KHR, DisplayPlaneProperties2KHRAllocator> properties( displayPlaneProperties2KHRAllocator );
- uint32_t propertyCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkGetPhysicalDeviceDisplayPlaneProperties2KHR( m_physicalDevice, &propertyCount, nullptr ) );
- if ( ( result == Result::eSuccess ) && propertyCount )
- {
- properties.resize( propertyCount );
- result = static_cast<Result>( d.vkGetPhysicalDeviceDisplayPlaneProperties2KHR( m_physicalDevice, &propertyCount, reinterpret_cast<VkDisplayPlaneProperties2KHR *>( properties.data() ) ) );
- VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( propertyCount < properties.size() ) )
- {
- properties.resize( propertyCount );
- }
- return createResultValue( result, properties, VULKAN_HPP_NAMESPACE_STRING"::PhysicalDevice::getDisplayPlaneProperties2KHR" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result PhysicalDevice::getDisplayPlanePropertiesKHR( uint32_t* pPropertyCount, VULKAN_HPP_NAMESPACE::DisplayPlanePropertiesKHR* pProperties, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetPhysicalDeviceDisplayPlanePropertiesKHR( m_physicalDevice, pPropertyCount, reinterpret_cast< VkDisplayPlanePropertiesKHR *>( pProperties ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename DisplayPlanePropertiesKHRAllocator, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<DisplayPlanePropertiesKHR, DisplayPlanePropertiesKHRAllocator>>::type PhysicalDevice::getDisplayPlanePropertiesKHR( Dispatch const & d ) const
- {
- std::vector<DisplayPlanePropertiesKHR, DisplayPlanePropertiesKHRAllocator> properties;
- uint32_t propertyCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkGetPhysicalDeviceDisplayPlanePropertiesKHR( m_physicalDevice, &propertyCount, nullptr ) );
- if ( ( result == Result::eSuccess ) && propertyCount )
- {
- properties.resize( propertyCount );
- result = static_cast<Result>( d.vkGetPhysicalDeviceDisplayPlanePropertiesKHR( m_physicalDevice, &propertyCount, reinterpret_cast<VkDisplayPlanePropertiesKHR *>( properties.data() ) ) );
- VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( propertyCount < properties.size() ) )
- {
- properties.resize( propertyCount );
- }
- return createResultValue( result, properties, VULKAN_HPP_NAMESPACE_STRING"::PhysicalDevice::getDisplayPlanePropertiesKHR" );
- }
-
- template <typename DisplayPlanePropertiesKHRAllocator, typename Dispatch, typename B, typename std::enable_if<std::is_same<typename B::value_type, DisplayPlanePropertiesKHR>::value, int>::type >
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<DisplayPlanePropertiesKHR, DisplayPlanePropertiesKHRAllocator>>::type PhysicalDevice::getDisplayPlanePropertiesKHR( DisplayPlanePropertiesKHRAllocator & displayPlanePropertiesKHRAllocator, Dispatch const & d ) const
- {
- std::vector<DisplayPlanePropertiesKHR, DisplayPlanePropertiesKHRAllocator> properties( displayPlanePropertiesKHRAllocator );
- uint32_t propertyCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkGetPhysicalDeviceDisplayPlanePropertiesKHR( m_physicalDevice, &propertyCount, nullptr ) );
- if ( ( result == Result::eSuccess ) && propertyCount )
- {
- properties.resize( propertyCount );
- result = static_cast<Result>( d.vkGetPhysicalDeviceDisplayPlanePropertiesKHR( m_physicalDevice, &propertyCount, reinterpret_cast<VkDisplayPlanePropertiesKHR *>( properties.data() ) ) );
- VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( propertyCount < properties.size() ) )
- {
- properties.resize( propertyCount );
- }
- return createResultValue( result, properties, VULKAN_HPP_NAMESPACE_STRING"::PhysicalDevice::getDisplayPlanePropertiesKHR" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result PhysicalDevice::getDisplayProperties2KHR( uint32_t* pPropertyCount, VULKAN_HPP_NAMESPACE::DisplayProperties2KHR* pProperties, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetPhysicalDeviceDisplayProperties2KHR( m_physicalDevice, pPropertyCount, reinterpret_cast< VkDisplayProperties2KHR *>( pProperties ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename DisplayProperties2KHRAllocator, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<DisplayProperties2KHR, DisplayProperties2KHRAllocator>>::type PhysicalDevice::getDisplayProperties2KHR( Dispatch const & d ) const
- {
- std::vector<DisplayProperties2KHR, DisplayProperties2KHRAllocator> properties;
- uint32_t propertyCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkGetPhysicalDeviceDisplayProperties2KHR( m_physicalDevice, &propertyCount, nullptr ) );
- if ( ( result == Result::eSuccess ) && propertyCount )
- {
- properties.resize( propertyCount );
- result = static_cast<Result>( d.vkGetPhysicalDeviceDisplayProperties2KHR( m_physicalDevice, &propertyCount, reinterpret_cast<VkDisplayProperties2KHR *>( properties.data() ) ) );
- VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( propertyCount < properties.size() ) )
- {
- properties.resize( propertyCount );
- }
- return createResultValue( result, properties, VULKAN_HPP_NAMESPACE_STRING"::PhysicalDevice::getDisplayProperties2KHR" );
- }
-
- template <typename DisplayProperties2KHRAllocator, typename Dispatch, typename B, typename std::enable_if<std::is_same<typename B::value_type, DisplayProperties2KHR>::value, int>::type >
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<DisplayProperties2KHR, DisplayProperties2KHRAllocator>>::type PhysicalDevice::getDisplayProperties2KHR( DisplayProperties2KHRAllocator & displayProperties2KHRAllocator, Dispatch const & d ) const
- {
- std::vector<DisplayProperties2KHR, DisplayProperties2KHRAllocator> properties( displayProperties2KHRAllocator );
- uint32_t propertyCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkGetPhysicalDeviceDisplayProperties2KHR( m_physicalDevice, &propertyCount, nullptr ) );
- if ( ( result == Result::eSuccess ) && propertyCount )
- {
- properties.resize( propertyCount );
- result = static_cast<Result>( d.vkGetPhysicalDeviceDisplayProperties2KHR( m_physicalDevice, &propertyCount, reinterpret_cast<VkDisplayProperties2KHR *>( properties.data() ) ) );
- VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( propertyCount < properties.size() ) )
- {
- properties.resize( propertyCount );
- }
- return createResultValue( result, properties, VULKAN_HPP_NAMESPACE_STRING"::PhysicalDevice::getDisplayProperties2KHR" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result PhysicalDevice::getDisplayPropertiesKHR( uint32_t* pPropertyCount, VULKAN_HPP_NAMESPACE::DisplayPropertiesKHR* pProperties, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetPhysicalDeviceDisplayPropertiesKHR( m_physicalDevice, pPropertyCount, reinterpret_cast< VkDisplayPropertiesKHR *>( pProperties ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename DisplayPropertiesKHRAllocator, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<DisplayPropertiesKHR, DisplayPropertiesKHRAllocator>>::type PhysicalDevice::getDisplayPropertiesKHR( Dispatch const & d ) const
- {
- std::vector<DisplayPropertiesKHR, DisplayPropertiesKHRAllocator> properties;
- uint32_t propertyCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkGetPhysicalDeviceDisplayPropertiesKHR( m_physicalDevice, &propertyCount, nullptr ) );
- if ( ( result == Result::eSuccess ) && propertyCount )
- {
- properties.resize( propertyCount );
- result = static_cast<Result>( d.vkGetPhysicalDeviceDisplayPropertiesKHR( m_physicalDevice, &propertyCount, reinterpret_cast<VkDisplayPropertiesKHR *>( properties.data() ) ) );
- VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( propertyCount < properties.size() ) )
- {
- properties.resize( propertyCount );
- }
- return createResultValue( result, properties, VULKAN_HPP_NAMESPACE_STRING"::PhysicalDevice::getDisplayPropertiesKHR" );
- }
-
- template <typename DisplayPropertiesKHRAllocator, typename Dispatch, typename B, typename std::enable_if<std::is_same<typename B::value_type, DisplayPropertiesKHR>::value, int>::type >
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<DisplayPropertiesKHR, DisplayPropertiesKHRAllocator>>::type PhysicalDevice::getDisplayPropertiesKHR( DisplayPropertiesKHRAllocator & displayPropertiesKHRAllocator, Dispatch const & d ) const
- {
- std::vector<DisplayPropertiesKHR, DisplayPropertiesKHRAllocator> properties( displayPropertiesKHRAllocator );
- uint32_t propertyCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkGetPhysicalDeviceDisplayPropertiesKHR( m_physicalDevice, &propertyCount, nullptr ) );
- if ( ( result == Result::eSuccess ) && propertyCount )
- {
- properties.resize( propertyCount );
- result = static_cast<Result>( d.vkGetPhysicalDeviceDisplayPropertiesKHR( m_physicalDevice, &propertyCount, reinterpret_cast<VkDisplayPropertiesKHR *>( properties.data() ) ) );
- VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( propertyCount < properties.size() ) )
- {
- properties.resize( propertyCount );
- }
- return createResultValue( result, properties, VULKAN_HPP_NAMESPACE_STRING"::PhysicalDevice::getDisplayPropertiesKHR" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void PhysicalDevice::getExternalBufferProperties( const VULKAN_HPP_NAMESPACE::PhysicalDeviceExternalBufferInfo* pExternalBufferInfo, VULKAN_HPP_NAMESPACE::ExternalBufferProperties* pExternalBufferProperties, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkGetPhysicalDeviceExternalBufferProperties( m_physicalDevice, reinterpret_cast<const VkPhysicalDeviceExternalBufferInfo *>( pExternalBufferInfo ), reinterpret_cast< VkExternalBufferProperties *>( pExternalBufferProperties ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::ExternalBufferProperties PhysicalDevice::getExternalBufferProperties( const PhysicalDeviceExternalBufferInfo & externalBufferInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- VULKAN_HPP_NAMESPACE::ExternalBufferProperties externalBufferProperties;
- d.vkGetPhysicalDeviceExternalBufferProperties( m_physicalDevice, reinterpret_cast<const VkPhysicalDeviceExternalBufferInfo *>( &externalBufferInfo ), reinterpret_cast<VkExternalBufferProperties *>( &externalBufferProperties ) );
- return externalBufferProperties;
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void PhysicalDevice::getExternalBufferPropertiesKHR( const VULKAN_HPP_NAMESPACE::PhysicalDeviceExternalBufferInfo* pExternalBufferInfo, VULKAN_HPP_NAMESPACE::ExternalBufferProperties* pExternalBufferProperties, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkGetPhysicalDeviceExternalBufferPropertiesKHR( m_physicalDevice, reinterpret_cast<const VkPhysicalDeviceExternalBufferInfo *>( pExternalBufferInfo ), reinterpret_cast< VkExternalBufferProperties *>( pExternalBufferProperties ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::ExternalBufferProperties PhysicalDevice::getExternalBufferPropertiesKHR( const PhysicalDeviceExternalBufferInfo & externalBufferInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- VULKAN_HPP_NAMESPACE::ExternalBufferProperties externalBufferProperties;
- d.vkGetPhysicalDeviceExternalBufferPropertiesKHR( m_physicalDevice, reinterpret_cast<const VkPhysicalDeviceExternalBufferInfo *>( &externalBufferInfo ), reinterpret_cast<VkExternalBufferProperties *>( &externalBufferProperties ) );
- return externalBufferProperties;
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void PhysicalDevice::getExternalFenceProperties( const VULKAN_HPP_NAMESPACE::PhysicalDeviceExternalFenceInfo* pExternalFenceInfo, VULKAN_HPP_NAMESPACE::ExternalFenceProperties* pExternalFenceProperties, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkGetPhysicalDeviceExternalFenceProperties( m_physicalDevice, reinterpret_cast<const VkPhysicalDeviceExternalFenceInfo *>( pExternalFenceInfo ), reinterpret_cast< VkExternalFenceProperties *>( pExternalFenceProperties ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::ExternalFenceProperties PhysicalDevice::getExternalFenceProperties( const PhysicalDeviceExternalFenceInfo & externalFenceInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- VULKAN_HPP_NAMESPACE::ExternalFenceProperties externalFenceProperties;
- d.vkGetPhysicalDeviceExternalFenceProperties( m_physicalDevice, reinterpret_cast<const VkPhysicalDeviceExternalFenceInfo *>( &externalFenceInfo ), reinterpret_cast<VkExternalFenceProperties *>( &externalFenceProperties ) );
- return externalFenceProperties;
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void PhysicalDevice::getExternalFencePropertiesKHR( const VULKAN_HPP_NAMESPACE::PhysicalDeviceExternalFenceInfo* pExternalFenceInfo, VULKAN_HPP_NAMESPACE::ExternalFenceProperties* pExternalFenceProperties, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkGetPhysicalDeviceExternalFencePropertiesKHR( m_physicalDevice, reinterpret_cast<const VkPhysicalDeviceExternalFenceInfo *>( pExternalFenceInfo ), reinterpret_cast< VkExternalFenceProperties *>( pExternalFenceProperties ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::ExternalFenceProperties PhysicalDevice::getExternalFencePropertiesKHR( const PhysicalDeviceExternalFenceInfo & externalFenceInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- VULKAN_HPP_NAMESPACE::ExternalFenceProperties externalFenceProperties;
- d.vkGetPhysicalDeviceExternalFencePropertiesKHR( m_physicalDevice, reinterpret_cast<const VkPhysicalDeviceExternalFenceInfo *>( &externalFenceInfo ), reinterpret_cast<VkExternalFenceProperties *>( &externalFenceProperties ) );
- return externalFenceProperties;
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result PhysicalDevice::getExternalImageFormatPropertiesNV( VULKAN_HPP_NAMESPACE::Format format, VULKAN_HPP_NAMESPACE::ImageType type, VULKAN_HPP_NAMESPACE::ImageTiling tiling, VULKAN_HPP_NAMESPACE::ImageUsageFlags usage, VULKAN_HPP_NAMESPACE::ImageCreateFlags flags, VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV externalHandleType, VULKAN_HPP_NAMESPACE::ExternalImageFormatPropertiesNV* pExternalImageFormatProperties, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetPhysicalDeviceExternalImageFormatPropertiesNV( m_physicalDevice, static_cast<VkFormat>( format ), static_cast<VkImageType>( type ), static_cast<VkImageTiling>( tiling ), static_cast<VkImageUsageFlags>( usage ), static_cast<VkImageCreateFlags>( flags ), static_cast<VkExternalMemoryHandleTypeFlagsNV>( externalHandleType ), reinterpret_cast< VkExternalImageFormatPropertiesNV *>( pExternalImageFormatProperties ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::ExternalImageFormatPropertiesNV>::type PhysicalDevice::getExternalImageFormatPropertiesNV( VULKAN_HPP_NAMESPACE::Format format, VULKAN_HPP_NAMESPACE::ImageType type, VULKAN_HPP_NAMESPACE::ImageTiling tiling, VULKAN_HPP_NAMESPACE::ImageUsageFlags usage, VULKAN_HPP_NAMESPACE::ImageCreateFlags flags, VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV externalHandleType, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::ExternalImageFormatPropertiesNV externalImageFormatProperties;
- Result result = static_cast<Result>( d.vkGetPhysicalDeviceExternalImageFormatPropertiesNV( m_physicalDevice, static_cast<VkFormat>( format ), static_cast<VkImageType>( type ), static_cast<VkImageTiling>( tiling ), static_cast<VkImageUsageFlags>( usage ), static_cast<VkImageCreateFlags>( flags ), static_cast<VkExternalMemoryHandleTypeFlagsNV>( externalHandleType ), reinterpret_cast<VkExternalImageFormatPropertiesNV *>( &externalImageFormatProperties ) ) );
- return createResultValue( result, externalImageFormatProperties, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getExternalImageFormatPropertiesNV" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void PhysicalDevice::getExternalSemaphoreProperties( const VULKAN_HPP_NAMESPACE::PhysicalDeviceExternalSemaphoreInfo* pExternalSemaphoreInfo, VULKAN_HPP_NAMESPACE::ExternalSemaphoreProperties* pExternalSemaphoreProperties, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkGetPhysicalDeviceExternalSemaphoreProperties( m_physicalDevice, reinterpret_cast<const VkPhysicalDeviceExternalSemaphoreInfo *>( pExternalSemaphoreInfo ), reinterpret_cast< VkExternalSemaphoreProperties *>( pExternalSemaphoreProperties ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::ExternalSemaphoreProperties PhysicalDevice::getExternalSemaphoreProperties( const PhysicalDeviceExternalSemaphoreInfo & externalSemaphoreInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- VULKAN_HPP_NAMESPACE::ExternalSemaphoreProperties externalSemaphoreProperties;
- d.vkGetPhysicalDeviceExternalSemaphoreProperties( m_physicalDevice, reinterpret_cast<const VkPhysicalDeviceExternalSemaphoreInfo *>( &externalSemaphoreInfo ), reinterpret_cast<VkExternalSemaphoreProperties *>( &externalSemaphoreProperties ) );
- return externalSemaphoreProperties;
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void PhysicalDevice::getExternalSemaphorePropertiesKHR( const VULKAN_HPP_NAMESPACE::PhysicalDeviceExternalSemaphoreInfo* pExternalSemaphoreInfo, VULKAN_HPP_NAMESPACE::ExternalSemaphoreProperties* pExternalSemaphoreProperties, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkGetPhysicalDeviceExternalSemaphorePropertiesKHR( m_physicalDevice, reinterpret_cast<const VkPhysicalDeviceExternalSemaphoreInfo *>( pExternalSemaphoreInfo ), reinterpret_cast< VkExternalSemaphoreProperties *>( pExternalSemaphoreProperties ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::ExternalSemaphoreProperties PhysicalDevice::getExternalSemaphorePropertiesKHR( const PhysicalDeviceExternalSemaphoreInfo & externalSemaphoreInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- VULKAN_HPP_NAMESPACE::ExternalSemaphoreProperties externalSemaphoreProperties;
- d.vkGetPhysicalDeviceExternalSemaphorePropertiesKHR( m_physicalDevice, reinterpret_cast<const VkPhysicalDeviceExternalSemaphoreInfo *>( &externalSemaphoreInfo ), reinterpret_cast<VkExternalSemaphoreProperties *>( &externalSemaphoreProperties ) );
- return externalSemaphoreProperties;
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void PhysicalDevice::getFeatures( VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures* pFeatures, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkGetPhysicalDeviceFeatures( m_physicalDevice, reinterpret_cast< VkPhysicalDeviceFeatures *>( pFeatures ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures PhysicalDevice::getFeatures( Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures features;
- d.vkGetPhysicalDeviceFeatures( m_physicalDevice, reinterpret_cast<VkPhysicalDeviceFeatures *>( &features ) );
- return features;
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void PhysicalDevice::getFeatures2( VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures2* pFeatures, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkGetPhysicalDeviceFeatures2( m_physicalDevice, reinterpret_cast< VkPhysicalDeviceFeatures2 *>( pFeatures ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures2 PhysicalDevice::getFeatures2( Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures2 features;
- d.vkGetPhysicalDeviceFeatures2( m_physicalDevice, reinterpret_cast<VkPhysicalDeviceFeatures2 *>( &features ) );
- return features;
- }
-
- template <typename X, typename Y, typename... Z, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE StructureChain<X, Y, Z...> PhysicalDevice::getFeatures2( Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- StructureChain<X, Y, Z...> structureChain;
- VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures2 & features = structureChain.template get<VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures2>();
- d.vkGetPhysicalDeviceFeatures2( m_physicalDevice, reinterpret_cast<VkPhysicalDeviceFeatures2 *>( &features ) );
- return structureChain;
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void PhysicalDevice::getFeatures2KHR( VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures2* pFeatures, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkGetPhysicalDeviceFeatures2KHR( m_physicalDevice, reinterpret_cast< VkPhysicalDeviceFeatures2 *>( pFeatures ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures2 PhysicalDevice::getFeatures2KHR( Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures2 features;
- d.vkGetPhysicalDeviceFeatures2KHR( m_physicalDevice, reinterpret_cast<VkPhysicalDeviceFeatures2 *>( &features ) );
- return features;
- }
-
- template <typename X, typename Y, typename... Z, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE StructureChain<X, Y, Z...> PhysicalDevice::getFeatures2KHR( Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- StructureChain<X, Y, Z...> structureChain;
- VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures2 & features = structureChain.template get<VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures2>();
- d.vkGetPhysicalDeviceFeatures2KHR( m_physicalDevice, reinterpret_cast<VkPhysicalDeviceFeatures2 *>( &features ) );
- return structureChain;
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void PhysicalDevice::getFormatProperties( VULKAN_HPP_NAMESPACE::Format format, VULKAN_HPP_NAMESPACE::FormatProperties* pFormatProperties, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkGetPhysicalDeviceFormatProperties( m_physicalDevice, static_cast<VkFormat>( format ), reinterpret_cast< VkFormatProperties *>( pFormatProperties ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::FormatProperties PhysicalDevice::getFormatProperties( VULKAN_HPP_NAMESPACE::Format format, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- VULKAN_HPP_NAMESPACE::FormatProperties formatProperties;
- d.vkGetPhysicalDeviceFormatProperties( m_physicalDevice, static_cast<VkFormat>( format ), reinterpret_cast<VkFormatProperties *>( &formatProperties ) );
- return formatProperties;
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void PhysicalDevice::getFormatProperties2( VULKAN_HPP_NAMESPACE::Format format, VULKAN_HPP_NAMESPACE::FormatProperties2* pFormatProperties, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkGetPhysicalDeviceFormatProperties2( m_physicalDevice, static_cast<VkFormat>( format ), reinterpret_cast< VkFormatProperties2 *>( pFormatProperties ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::FormatProperties2 PhysicalDevice::getFormatProperties2( VULKAN_HPP_NAMESPACE::Format format, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- VULKAN_HPP_NAMESPACE::FormatProperties2 formatProperties;
- d.vkGetPhysicalDeviceFormatProperties2( m_physicalDevice, static_cast<VkFormat>( format ), reinterpret_cast<VkFormatProperties2 *>( &formatProperties ) );
- return formatProperties;
- }
-
- template <typename X, typename Y, typename... Z, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE StructureChain<X, Y, Z...> PhysicalDevice::getFormatProperties2( VULKAN_HPP_NAMESPACE::Format format, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- StructureChain<X, Y, Z...> structureChain;
- VULKAN_HPP_NAMESPACE::FormatProperties2 & formatProperties = structureChain.template get<VULKAN_HPP_NAMESPACE::FormatProperties2>();
- d.vkGetPhysicalDeviceFormatProperties2( m_physicalDevice, static_cast<VkFormat>( format ), reinterpret_cast<VkFormatProperties2 *>( &formatProperties ) );
- return structureChain;
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void PhysicalDevice::getFormatProperties2KHR( VULKAN_HPP_NAMESPACE::Format format, VULKAN_HPP_NAMESPACE::FormatProperties2* pFormatProperties, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkGetPhysicalDeviceFormatProperties2KHR( m_physicalDevice, static_cast<VkFormat>( format ), reinterpret_cast< VkFormatProperties2 *>( pFormatProperties ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::FormatProperties2 PhysicalDevice::getFormatProperties2KHR( VULKAN_HPP_NAMESPACE::Format format, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- VULKAN_HPP_NAMESPACE::FormatProperties2 formatProperties;
- d.vkGetPhysicalDeviceFormatProperties2KHR( m_physicalDevice, static_cast<VkFormat>( format ), reinterpret_cast<VkFormatProperties2 *>( &formatProperties ) );
- return formatProperties;
- }
-
- template <typename X, typename Y, typename... Z, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE StructureChain<X, Y, Z...> PhysicalDevice::getFormatProperties2KHR( VULKAN_HPP_NAMESPACE::Format format, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- StructureChain<X, Y, Z...> structureChain;
- VULKAN_HPP_NAMESPACE::FormatProperties2 & formatProperties = structureChain.template get<VULKAN_HPP_NAMESPACE::FormatProperties2>();
- d.vkGetPhysicalDeviceFormatProperties2KHR( m_physicalDevice, static_cast<VkFormat>( format ), reinterpret_cast<VkFormatProperties2 *>( &formatProperties ) );
- return structureChain;
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result PhysicalDevice::getFragmentShadingRatesKHR( uint32_t* pFragmentShadingRateCount, VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentShadingRateKHR* pFragmentShadingRates, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetPhysicalDeviceFragmentShadingRatesKHR( m_physicalDevice, pFragmentShadingRateCount, reinterpret_cast< VkPhysicalDeviceFragmentShadingRateKHR *>( pFragmentShadingRates ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename PhysicalDeviceFragmentShadingRateKHRAllocator, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<PhysicalDeviceFragmentShadingRateKHR, PhysicalDeviceFragmentShadingRateKHRAllocator>>::type PhysicalDevice::getFragmentShadingRatesKHR( Dispatch const & d ) const
- {
- std::vector<PhysicalDeviceFragmentShadingRateKHR, PhysicalDeviceFragmentShadingRateKHRAllocator> fragmentShadingRates;
- uint32_t fragmentShadingRateCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkGetPhysicalDeviceFragmentShadingRatesKHR( m_physicalDevice, &fragmentShadingRateCount, nullptr ) );
- if ( ( result == Result::eSuccess ) && fragmentShadingRateCount )
- {
- fragmentShadingRates.resize( fragmentShadingRateCount );
- result = static_cast<Result>( d.vkGetPhysicalDeviceFragmentShadingRatesKHR( m_physicalDevice, &fragmentShadingRateCount, reinterpret_cast<VkPhysicalDeviceFragmentShadingRateKHR *>( fragmentShadingRates.data() ) ) );
- VULKAN_HPP_ASSERT( fragmentShadingRateCount <= fragmentShadingRates.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( fragmentShadingRateCount < fragmentShadingRates.size() ) )
- {
- fragmentShadingRates.resize( fragmentShadingRateCount );
- }
- return createResultValue( result, fragmentShadingRates, VULKAN_HPP_NAMESPACE_STRING"::PhysicalDevice::getFragmentShadingRatesKHR" );
- }
-
- template <typename PhysicalDeviceFragmentShadingRateKHRAllocator, typename Dispatch, typename B, typename std::enable_if<std::is_same<typename B::value_type, PhysicalDeviceFragmentShadingRateKHR>::value, int>::type >
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<PhysicalDeviceFragmentShadingRateKHR, PhysicalDeviceFragmentShadingRateKHRAllocator>>::type PhysicalDevice::getFragmentShadingRatesKHR( PhysicalDeviceFragmentShadingRateKHRAllocator & physicalDeviceFragmentShadingRateKHRAllocator, Dispatch const & d ) const
- {
- std::vector<PhysicalDeviceFragmentShadingRateKHR, PhysicalDeviceFragmentShadingRateKHRAllocator> fragmentShadingRates( physicalDeviceFragmentShadingRateKHRAllocator );
- uint32_t fragmentShadingRateCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkGetPhysicalDeviceFragmentShadingRatesKHR( m_physicalDevice, &fragmentShadingRateCount, nullptr ) );
- if ( ( result == Result::eSuccess ) && fragmentShadingRateCount )
- {
- fragmentShadingRates.resize( fragmentShadingRateCount );
- result = static_cast<Result>( d.vkGetPhysicalDeviceFragmentShadingRatesKHR( m_physicalDevice, &fragmentShadingRateCount, reinterpret_cast<VkPhysicalDeviceFragmentShadingRateKHR *>( fragmentShadingRates.data() ) ) );
- VULKAN_HPP_ASSERT( fragmentShadingRateCount <= fragmentShadingRates.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( fragmentShadingRateCount < fragmentShadingRates.size() ) )
- {
- fragmentShadingRates.resize( fragmentShadingRateCount );
- }
- return createResultValue( result, fragmentShadingRates, VULKAN_HPP_NAMESPACE_STRING"::PhysicalDevice::getFragmentShadingRatesKHR" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result PhysicalDevice::getImageFormatProperties( VULKAN_HPP_NAMESPACE::Format format, VULKAN_HPP_NAMESPACE::ImageType type, VULKAN_HPP_NAMESPACE::ImageTiling tiling, VULKAN_HPP_NAMESPACE::ImageUsageFlags usage, VULKAN_HPP_NAMESPACE::ImageCreateFlags flags, VULKAN_HPP_NAMESPACE::ImageFormatProperties* pImageFormatProperties, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetPhysicalDeviceImageFormatProperties( m_physicalDevice, static_cast<VkFormat>( format ), static_cast<VkImageType>( type ), static_cast<VkImageTiling>( tiling ), static_cast<VkImageUsageFlags>( usage ), static_cast<VkImageCreateFlags>( flags ), reinterpret_cast< VkImageFormatProperties *>( pImageFormatProperties ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::ImageFormatProperties>::type PhysicalDevice::getImageFormatProperties( VULKAN_HPP_NAMESPACE::Format format, VULKAN_HPP_NAMESPACE::ImageType type, VULKAN_HPP_NAMESPACE::ImageTiling tiling, VULKAN_HPP_NAMESPACE::ImageUsageFlags usage, VULKAN_HPP_NAMESPACE::ImageCreateFlags flags, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::ImageFormatProperties imageFormatProperties;
- Result result = static_cast<Result>( d.vkGetPhysicalDeviceImageFormatProperties( m_physicalDevice, static_cast<VkFormat>( format ), static_cast<VkImageType>( type ), static_cast<VkImageTiling>( tiling ), static_cast<VkImageUsageFlags>( usage ), static_cast<VkImageCreateFlags>( flags ), reinterpret_cast<VkImageFormatProperties *>( &imageFormatProperties ) ) );
- return createResultValue( result, imageFormatProperties, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getImageFormatProperties" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result PhysicalDevice::getImageFormatProperties2( const VULKAN_HPP_NAMESPACE::PhysicalDeviceImageFormatInfo2* pImageFormatInfo, VULKAN_HPP_NAMESPACE::ImageFormatProperties2* pImageFormatProperties, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetPhysicalDeviceImageFormatProperties2( m_physicalDevice, reinterpret_cast<const VkPhysicalDeviceImageFormatInfo2 *>( pImageFormatInfo ), reinterpret_cast< VkImageFormatProperties2 *>( pImageFormatProperties ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::ImageFormatProperties2>::type PhysicalDevice::getImageFormatProperties2( const PhysicalDeviceImageFormatInfo2 & imageFormatInfo, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::ImageFormatProperties2 imageFormatProperties;
- Result result = static_cast<Result>( d.vkGetPhysicalDeviceImageFormatProperties2( m_physicalDevice, reinterpret_cast<const VkPhysicalDeviceImageFormatInfo2 *>( &imageFormatInfo ), reinterpret_cast<VkImageFormatProperties2 *>( &imageFormatProperties ) ) );
- return createResultValue( result, imageFormatProperties, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getImageFormatProperties2" );
- }
-
- template <typename X, typename Y, typename... Z, typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<StructureChain<X, Y, Z...>>::type PhysicalDevice::getImageFormatProperties2( const PhysicalDeviceImageFormatInfo2 & imageFormatInfo, Dispatch const & d ) const
- {
- StructureChain<X, Y, Z...> structureChain;
- VULKAN_HPP_NAMESPACE::ImageFormatProperties2 & imageFormatProperties = structureChain.template get<VULKAN_HPP_NAMESPACE::ImageFormatProperties2>();
- Result result = static_cast<Result>( d.vkGetPhysicalDeviceImageFormatProperties2( m_physicalDevice, reinterpret_cast<const VkPhysicalDeviceImageFormatInfo2 *>( &imageFormatInfo ), reinterpret_cast<VkImageFormatProperties2 *>( &imageFormatProperties ) ) );
- return createResultValue( result, structureChain, VULKAN_HPP_NAMESPACE_STRING"::PhysicalDevice::getImageFormatProperties2" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result PhysicalDevice::getImageFormatProperties2KHR( const VULKAN_HPP_NAMESPACE::PhysicalDeviceImageFormatInfo2* pImageFormatInfo, VULKAN_HPP_NAMESPACE::ImageFormatProperties2* pImageFormatProperties, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetPhysicalDeviceImageFormatProperties2KHR( m_physicalDevice, reinterpret_cast<const VkPhysicalDeviceImageFormatInfo2 *>( pImageFormatInfo ), reinterpret_cast< VkImageFormatProperties2 *>( pImageFormatProperties ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::ImageFormatProperties2>::type PhysicalDevice::getImageFormatProperties2KHR( const PhysicalDeviceImageFormatInfo2 & imageFormatInfo, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::ImageFormatProperties2 imageFormatProperties;
- Result result = static_cast<Result>( d.vkGetPhysicalDeviceImageFormatProperties2KHR( m_physicalDevice, reinterpret_cast<const VkPhysicalDeviceImageFormatInfo2 *>( &imageFormatInfo ), reinterpret_cast<VkImageFormatProperties2 *>( &imageFormatProperties ) ) );
- return createResultValue( result, imageFormatProperties, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getImageFormatProperties2KHR" );
- }
-
- template <typename X, typename Y, typename... Z, typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<StructureChain<X, Y, Z...>>::type PhysicalDevice::getImageFormatProperties2KHR( const PhysicalDeviceImageFormatInfo2 & imageFormatInfo, Dispatch const & d ) const
- {
- StructureChain<X, Y, Z...> structureChain;
- VULKAN_HPP_NAMESPACE::ImageFormatProperties2 & imageFormatProperties = structureChain.template get<VULKAN_HPP_NAMESPACE::ImageFormatProperties2>();
- Result result = static_cast<Result>( d.vkGetPhysicalDeviceImageFormatProperties2KHR( m_physicalDevice, reinterpret_cast<const VkPhysicalDeviceImageFormatInfo2 *>( &imageFormatInfo ), reinterpret_cast<VkImageFormatProperties2 *>( &imageFormatProperties ) ) );
- return createResultValue( result, structureChain, VULKAN_HPP_NAMESPACE_STRING"::PhysicalDevice::getImageFormatProperties2KHR" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void PhysicalDevice::getMemoryProperties( VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties* pMemoryProperties, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkGetPhysicalDeviceMemoryProperties( m_physicalDevice, reinterpret_cast< VkPhysicalDeviceMemoryProperties *>( pMemoryProperties ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties PhysicalDevice::getMemoryProperties( Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties memoryProperties;
- d.vkGetPhysicalDeviceMemoryProperties( m_physicalDevice, reinterpret_cast<VkPhysicalDeviceMemoryProperties *>( &memoryProperties ) );
- return memoryProperties;
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void PhysicalDevice::getMemoryProperties2( VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties2* pMemoryProperties, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkGetPhysicalDeviceMemoryProperties2( m_physicalDevice, reinterpret_cast< VkPhysicalDeviceMemoryProperties2 *>( pMemoryProperties ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties2 PhysicalDevice::getMemoryProperties2( Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties2 memoryProperties;
- d.vkGetPhysicalDeviceMemoryProperties2( m_physicalDevice, reinterpret_cast<VkPhysicalDeviceMemoryProperties2 *>( &memoryProperties ) );
- return memoryProperties;
- }
-
- template <typename X, typename Y, typename... Z, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE StructureChain<X, Y, Z...> PhysicalDevice::getMemoryProperties2( Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- StructureChain<X, Y, Z...> structureChain;
- VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties2 & memoryProperties = structureChain.template get<VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties2>();
- d.vkGetPhysicalDeviceMemoryProperties2( m_physicalDevice, reinterpret_cast<VkPhysicalDeviceMemoryProperties2 *>( &memoryProperties ) );
- return structureChain;
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void PhysicalDevice::getMemoryProperties2KHR( VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties2* pMemoryProperties, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkGetPhysicalDeviceMemoryProperties2KHR( m_physicalDevice, reinterpret_cast< VkPhysicalDeviceMemoryProperties2 *>( pMemoryProperties ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties2 PhysicalDevice::getMemoryProperties2KHR( Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties2 memoryProperties;
- d.vkGetPhysicalDeviceMemoryProperties2KHR( m_physicalDevice, reinterpret_cast<VkPhysicalDeviceMemoryProperties2 *>( &memoryProperties ) );
- return memoryProperties;
- }
-
- template <typename X, typename Y, typename... Z, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE StructureChain<X, Y, Z...> PhysicalDevice::getMemoryProperties2KHR( Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- StructureChain<X, Y, Z...> structureChain;
- VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties2 & memoryProperties = structureChain.template get<VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties2>();
- d.vkGetPhysicalDeviceMemoryProperties2KHR( m_physicalDevice, reinterpret_cast<VkPhysicalDeviceMemoryProperties2 *>( &memoryProperties ) );
- return structureChain;
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void PhysicalDevice::getMultisamplePropertiesEXT( VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples, VULKAN_HPP_NAMESPACE::MultisamplePropertiesEXT* pMultisampleProperties, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkGetPhysicalDeviceMultisamplePropertiesEXT( m_physicalDevice, static_cast<VkSampleCountFlagBits>( samples ), reinterpret_cast< VkMultisamplePropertiesEXT *>( pMultisampleProperties ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::MultisamplePropertiesEXT PhysicalDevice::getMultisamplePropertiesEXT( VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- VULKAN_HPP_NAMESPACE::MultisamplePropertiesEXT multisampleProperties;
- d.vkGetPhysicalDeviceMultisamplePropertiesEXT( m_physicalDevice, static_cast<VkSampleCountFlagBits>( samples ), reinterpret_cast<VkMultisamplePropertiesEXT *>( &multisampleProperties ) );
- return multisampleProperties;
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result PhysicalDevice::getPresentRectanglesKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface, uint32_t* pRectCount, VULKAN_HPP_NAMESPACE::Rect2D* pRects, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetPhysicalDevicePresentRectanglesKHR( m_physicalDevice, static_cast<VkSurfaceKHR>( surface ), pRectCount, reinterpret_cast< VkRect2D *>( pRects ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Rect2DAllocator, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<Rect2D, Rect2DAllocator>>::type PhysicalDevice::getPresentRectanglesKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface, Dispatch const & d ) const
- {
- std::vector<Rect2D, Rect2DAllocator> rects;
- uint32_t rectCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkGetPhysicalDevicePresentRectanglesKHR( m_physicalDevice, static_cast<VkSurfaceKHR>( surface ), &rectCount, nullptr ) );
- if ( ( result == Result::eSuccess ) && rectCount )
- {
- rects.resize( rectCount );
- result = static_cast<Result>( d.vkGetPhysicalDevicePresentRectanglesKHR( m_physicalDevice, static_cast<VkSurfaceKHR>( surface ), &rectCount, reinterpret_cast<VkRect2D *>( rects.data() ) ) );
- VULKAN_HPP_ASSERT( rectCount <= rects.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( rectCount < rects.size() ) )
- {
- rects.resize( rectCount );
- }
- return createResultValue( result, rects, VULKAN_HPP_NAMESPACE_STRING"::PhysicalDevice::getPresentRectanglesKHR" );
- }
-
- template <typename Rect2DAllocator, typename Dispatch, typename B, typename std::enable_if<std::is_same<typename B::value_type, Rect2D>::value, int>::type >
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<Rect2D, Rect2DAllocator>>::type PhysicalDevice::getPresentRectanglesKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface, Rect2DAllocator & rect2DAllocator, Dispatch const & d ) const
- {
- std::vector<Rect2D, Rect2DAllocator> rects( rect2DAllocator );
- uint32_t rectCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkGetPhysicalDevicePresentRectanglesKHR( m_physicalDevice, static_cast<VkSurfaceKHR>( surface ), &rectCount, nullptr ) );
- if ( ( result == Result::eSuccess ) && rectCount )
- {
- rects.resize( rectCount );
- result = static_cast<Result>( d.vkGetPhysicalDevicePresentRectanglesKHR( m_physicalDevice, static_cast<VkSurfaceKHR>( surface ), &rectCount, reinterpret_cast<VkRect2D *>( rects.data() ) ) );
- VULKAN_HPP_ASSERT( rectCount <= rects.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( rectCount < rects.size() ) )
- {
- rects.resize( rectCount );
- }
- return createResultValue( result, rects, VULKAN_HPP_NAMESPACE_STRING"::PhysicalDevice::getPresentRectanglesKHR" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void PhysicalDevice::getProperties( VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties* pProperties, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkGetPhysicalDeviceProperties( m_physicalDevice, reinterpret_cast< VkPhysicalDeviceProperties *>( pProperties ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties PhysicalDevice::getProperties( Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties properties;
- d.vkGetPhysicalDeviceProperties( m_physicalDevice, reinterpret_cast<VkPhysicalDeviceProperties *>( &properties ) );
- return properties;
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void PhysicalDevice::getProperties2( VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties2* pProperties, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkGetPhysicalDeviceProperties2( m_physicalDevice, reinterpret_cast< VkPhysicalDeviceProperties2 *>( pProperties ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties2 PhysicalDevice::getProperties2( Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties2 properties;
- d.vkGetPhysicalDeviceProperties2( m_physicalDevice, reinterpret_cast<VkPhysicalDeviceProperties2 *>( &properties ) );
- return properties;
- }
-
- template <typename X, typename Y, typename... Z, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE StructureChain<X, Y, Z...> PhysicalDevice::getProperties2( Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- StructureChain<X, Y, Z...> structureChain;
- VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties2 & properties = structureChain.template get<VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties2>();
- d.vkGetPhysicalDeviceProperties2( m_physicalDevice, reinterpret_cast<VkPhysicalDeviceProperties2 *>( &properties ) );
- return structureChain;
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void PhysicalDevice::getProperties2KHR( VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties2* pProperties, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkGetPhysicalDeviceProperties2KHR( m_physicalDevice, reinterpret_cast< VkPhysicalDeviceProperties2 *>( pProperties ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties2 PhysicalDevice::getProperties2KHR( Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties2 properties;
- d.vkGetPhysicalDeviceProperties2KHR( m_physicalDevice, reinterpret_cast<VkPhysicalDeviceProperties2 *>( &properties ) );
- return properties;
- }
-
- template <typename X, typename Y, typename... Z, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE StructureChain<X, Y, Z...> PhysicalDevice::getProperties2KHR( Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- StructureChain<X, Y, Z...> structureChain;
- VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties2 & properties = structureChain.template get<VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties2>();
- d.vkGetPhysicalDeviceProperties2KHR( m_physicalDevice, reinterpret_cast<VkPhysicalDeviceProperties2 *>( &properties ) );
- return structureChain;
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void PhysicalDevice::getQueueFamilyPerformanceQueryPassesKHR( const VULKAN_HPP_NAMESPACE::QueryPoolPerformanceCreateInfoKHR* pPerformanceQueryCreateInfo, uint32_t* pNumPasses, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR( m_physicalDevice, reinterpret_cast<const VkQueryPoolPerformanceCreateInfoKHR *>( pPerformanceQueryCreateInfo ), pNumPasses );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE uint32_t PhysicalDevice::getQueueFamilyPerformanceQueryPassesKHR( const QueryPoolPerformanceCreateInfoKHR & performanceQueryCreateInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- uint32_t numPasses;
- d.vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR( m_physicalDevice, reinterpret_cast<const VkQueryPoolPerformanceCreateInfoKHR *>( &performanceQueryCreateInfo ), &numPasses );
- return numPasses;
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void PhysicalDevice::getQueueFamilyProperties( uint32_t* pQueueFamilyPropertyCount, VULKAN_HPP_NAMESPACE::QueueFamilyProperties* pQueueFamilyProperties, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkGetPhysicalDeviceQueueFamilyProperties( m_physicalDevice, pQueueFamilyPropertyCount, reinterpret_cast< VkQueueFamilyProperties *>( pQueueFamilyProperties ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename QueueFamilyPropertiesAllocator, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<QueueFamilyProperties, QueueFamilyPropertiesAllocator> PhysicalDevice::getQueueFamilyProperties( Dispatch const & d ) const
- {
- std::vector<QueueFamilyProperties, QueueFamilyPropertiesAllocator> queueFamilyProperties;
- uint32_t queueFamilyPropertyCount;
- d.vkGetPhysicalDeviceQueueFamilyProperties( m_physicalDevice, &queueFamilyPropertyCount, nullptr );
- queueFamilyProperties.resize( queueFamilyPropertyCount );
- d.vkGetPhysicalDeviceQueueFamilyProperties( m_physicalDevice, &queueFamilyPropertyCount, reinterpret_cast<VkQueueFamilyProperties *>( queueFamilyProperties.data() ) );
- VULKAN_HPP_ASSERT( queueFamilyPropertyCount <= queueFamilyProperties.size() );
- return queueFamilyProperties;
- }
-
- template <typename QueueFamilyPropertiesAllocator, typename Dispatch, typename B, typename std::enable_if<std::is_same<typename B::value_type, QueueFamilyProperties>::value, int>::type >
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<QueueFamilyProperties, QueueFamilyPropertiesAllocator> PhysicalDevice::getQueueFamilyProperties( QueueFamilyPropertiesAllocator & queueFamilyPropertiesAllocator, Dispatch const & d ) const
- {
- std::vector<QueueFamilyProperties, QueueFamilyPropertiesAllocator> queueFamilyProperties( queueFamilyPropertiesAllocator );
- uint32_t queueFamilyPropertyCount;
- d.vkGetPhysicalDeviceQueueFamilyProperties( m_physicalDevice, &queueFamilyPropertyCount, nullptr );
- queueFamilyProperties.resize( queueFamilyPropertyCount );
- d.vkGetPhysicalDeviceQueueFamilyProperties( m_physicalDevice, &queueFamilyPropertyCount, reinterpret_cast<VkQueueFamilyProperties *>( queueFamilyProperties.data() ) );
- VULKAN_HPP_ASSERT( queueFamilyPropertyCount <= queueFamilyProperties.size() );
- return queueFamilyProperties;
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void PhysicalDevice::getQueueFamilyProperties2( uint32_t* pQueueFamilyPropertyCount, VULKAN_HPP_NAMESPACE::QueueFamilyProperties2* pQueueFamilyProperties, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkGetPhysicalDeviceQueueFamilyProperties2( m_physicalDevice, pQueueFamilyPropertyCount, reinterpret_cast< VkQueueFamilyProperties2 *>( pQueueFamilyProperties ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename QueueFamilyProperties2Allocator, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<QueueFamilyProperties2, QueueFamilyProperties2Allocator> PhysicalDevice::getQueueFamilyProperties2( Dispatch const & d ) const
- {
- std::vector<QueueFamilyProperties2, QueueFamilyProperties2Allocator> queueFamilyProperties;
- uint32_t queueFamilyPropertyCount;
- d.vkGetPhysicalDeviceQueueFamilyProperties2( m_physicalDevice, &queueFamilyPropertyCount, nullptr );
- queueFamilyProperties.resize( queueFamilyPropertyCount );
- d.vkGetPhysicalDeviceQueueFamilyProperties2( m_physicalDevice, &queueFamilyPropertyCount, reinterpret_cast<VkQueueFamilyProperties2 *>( queueFamilyProperties.data() ) );
- VULKAN_HPP_ASSERT( queueFamilyPropertyCount <= queueFamilyProperties.size() );
- return queueFamilyProperties;
- }
-
- template <typename QueueFamilyProperties2Allocator, typename Dispatch, typename B, typename std::enable_if<std::is_same<typename B::value_type, QueueFamilyProperties2>::value, int>::type >
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<QueueFamilyProperties2, QueueFamilyProperties2Allocator> PhysicalDevice::getQueueFamilyProperties2( QueueFamilyProperties2Allocator & queueFamilyProperties2Allocator, Dispatch const & d ) const
- {
- std::vector<QueueFamilyProperties2, QueueFamilyProperties2Allocator> queueFamilyProperties( queueFamilyProperties2Allocator );
- uint32_t queueFamilyPropertyCount;
- d.vkGetPhysicalDeviceQueueFamilyProperties2( m_physicalDevice, &queueFamilyPropertyCount, nullptr );
- queueFamilyProperties.resize( queueFamilyPropertyCount );
- d.vkGetPhysicalDeviceQueueFamilyProperties2( m_physicalDevice, &queueFamilyPropertyCount, reinterpret_cast<VkQueueFamilyProperties2 *>( queueFamilyProperties.data() ) );
- VULKAN_HPP_ASSERT( queueFamilyPropertyCount <= queueFamilyProperties.size() );
- return queueFamilyProperties;
- }
-
- template <typename StructureChain, typename StructureChainAllocator, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<StructureChain, StructureChainAllocator> PhysicalDevice::getQueueFamilyProperties2( Dispatch const & d ) const
- {
- uint32_t queueFamilyPropertyCount;
- d.vkGetPhysicalDeviceQueueFamilyProperties2( m_physicalDevice, &queueFamilyPropertyCount, nullptr );
- std::vector<StructureChain, StructureChainAllocator> returnVector( queueFamilyPropertyCount );
- std::vector<VULKAN_HPP_NAMESPACE::QueueFamilyProperties2> queueFamilyProperties( queueFamilyPropertyCount );
- for ( uint32_t i = 0; i < queueFamilyPropertyCount; i++ )
- {
- queueFamilyProperties[i].pNext =
- returnVector[i].template get<VULKAN_HPP_NAMESPACE::QueueFamilyProperties2>().pNext;
- }
- d.vkGetPhysicalDeviceQueueFamilyProperties2( m_physicalDevice, &queueFamilyPropertyCount, reinterpret_cast<VkQueueFamilyProperties2 *>( queueFamilyProperties.data() ) );
- VULKAN_HPP_ASSERT( queueFamilyPropertyCount <= queueFamilyProperties.size() );
- for ( uint32_t i = 0; i < queueFamilyPropertyCount; i++ )
- {
- returnVector[i].template get<VULKAN_HPP_NAMESPACE::QueueFamilyProperties2>() = queueFamilyProperties[i];
- }
- return returnVector;
- }
-
- template <typename StructureChain, typename StructureChainAllocator, typename Dispatch, typename B, typename std::enable_if<std::is_same<typename B::value_type, StructureChain>::value, int>::type>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<StructureChain, StructureChainAllocator> PhysicalDevice::getQueueFamilyProperties2( StructureChainAllocator & structureChainAllocator, Dispatch const & d ) const
- {
- uint32_t queueFamilyPropertyCount;
- d.vkGetPhysicalDeviceQueueFamilyProperties2( m_physicalDevice, &queueFamilyPropertyCount, nullptr );
- std::vector<StructureChain, StructureChainAllocator> returnVector( queueFamilyPropertyCount, structureChainAllocator );
- std::vector<VULKAN_HPP_NAMESPACE::QueueFamilyProperties2> queueFamilyProperties( queueFamilyPropertyCount );
- for ( uint32_t i = 0; i < queueFamilyPropertyCount; i++ )
- {
- queueFamilyProperties[i].pNext =
- returnVector[i].template get<VULKAN_HPP_NAMESPACE::QueueFamilyProperties2>().pNext;
- }
- d.vkGetPhysicalDeviceQueueFamilyProperties2( m_physicalDevice, &queueFamilyPropertyCount, reinterpret_cast<VkQueueFamilyProperties2 *>( queueFamilyProperties.data() ) );
- VULKAN_HPP_ASSERT( queueFamilyPropertyCount <= queueFamilyProperties.size() );
- for ( uint32_t i = 0; i < queueFamilyPropertyCount; i++ )
- {
- returnVector[i].template get<VULKAN_HPP_NAMESPACE::QueueFamilyProperties2>() = queueFamilyProperties[i];
- }
- return returnVector;
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void PhysicalDevice::getQueueFamilyProperties2KHR( uint32_t* pQueueFamilyPropertyCount, VULKAN_HPP_NAMESPACE::QueueFamilyProperties2* pQueueFamilyProperties, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkGetPhysicalDeviceQueueFamilyProperties2KHR( m_physicalDevice, pQueueFamilyPropertyCount, reinterpret_cast< VkQueueFamilyProperties2 *>( pQueueFamilyProperties ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename QueueFamilyProperties2Allocator, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<QueueFamilyProperties2, QueueFamilyProperties2Allocator> PhysicalDevice::getQueueFamilyProperties2KHR( Dispatch const & d ) const
- {
- std::vector<QueueFamilyProperties2, QueueFamilyProperties2Allocator> queueFamilyProperties;
- uint32_t queueFamilyPropertyCount;
- d.vkGetPhysicalDeviceQueueFamilyProperties2KHR( m_physicalDevice, &queueFamilyPropertyCount, nullptr );
- queueFamilyProperties.resize( queueFamilyPropertyCount );
- d.vkGetPhysicalDeviceQueueFamilyProperties2KHR( m_physicalDevice, &queueFamilyPropertyCount, reinterpret_cast<VkQueueFamilyProperties2 *>( queueFamilyProperties.data() ) );
- VULKAN_HPP_ASSERT( queueFamilyPropertyCount <= queueFamilyProperties.size() );
- return queueFamilyProperties;
- }
-
- template <typename QueueFamilyProperties2Allocator, typename Dispatch, typename B, typename std::enable_if<std::is_same<typename B::value_type, QueueFamilyProperties2>::value, int>::type >
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<QueueFamilyProperties2, QueueFamilyProperties2Allocator> PhysicalDevice::getQueueFamilyProperties2KHR( QueueFamilyProperties2Allocator & queueFamilyProperties2Allocator, Dispatch const & d ) const
- {
- std::vector<QueueFamilyProperties2, QueueFamilyProperties2Allocator> queueFamilyProperties( queueFamilyProperties2Allocator );
- uint32_t queueFamilyPropertyCount;
- d.vkGetPhysicalDeviceQueueFamilyProperties2KHR( m_physicalDevice, &queueFamilyPropertyCount, nullptr );
- queueFamilyProperties.resize( queueFamilyPropertyCount );
- d.vkGetPhysicalDeviceQueueFamilyProperties2KHR( m_physicalDevice, &queueFamilyPropertyCount, reinterpret_cast<VkQueueFamilyProperties2 *>( queueFamilyProperties.data() ) );
- VULKAN_HPP_ASSERT( queueFamilyPropertyCount <= queueFamilyProperties.size() );
- return queueFamilyProperties;
- }
-
- template <typename StructureChain, typename StructureChainAllocator, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<StructureChain, StructureChainAllocator> PhysicalDevice::getQueueFamilyProperties2KHR( Dispatch const & d ) const
- {
- uint32_t queueFamilyPropertyCount;
- d.vkGetPhysicalDeviceQueueFamilyProperties2KHR( m_physicalDevice, &queueFamilyPropertyCount, nullptr );
- std::vector<StructureChain, StructureChainAllocator> returnVector( queueFamilyPropertyCount );
- std::vector<VULKAN_HPP_NAMESPACE::QueueFamilyProperties2> queueFamilyProperties( queueFamilyPropertyCount );
- for ( uint32_t i = 0; i < queueFamilyPropertyCount; i++ )
- {
- queueFamilyProperties[i].pNext =
- returnVector[i].template get<VULKAN_HPP_NAMESPACE::QueueFamilyProperties2>().pNext;
- }
- d.vkGetPhysicalDeviceQueueFamilyProperties2KHR( m_physicalDevice, &queueFamilyPropertyCount, reinterpret_cast<VkQueueFamilyProperties2 *>( queueFamilyProperties.data() ) );
- VULKAN_HPP_ASSERT( queueFamilyPropertyCount <= queueFamilyProperties.size() );
- for ( uint32_t i = 0; i < queueFamilyPropertyCount; i++ )
- {
- returnVector[i].template get<VULKAN_HPP_NAMESPACE::QueueFamilyProperties2>() = queueFamilyProperties[i];
- }
- return returnVector;
- }
-
- template <typename StructureChain, typename StructureChainAllocator, typename Dispatch, typename B, typename std::enable_if<std::is_same<typename B::value_type, StructureChain>::value, int>::type>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<StructureChain, StructureChainAllocator> PhysicalDevice::getQueueFamilyProperties2KHR( StructureChainAllocator & structureChainAllocator, Dispatch const & d ) const
- {
- uint32_t queueFamilyPropertyCount;
- d.vkGetPhysicalDeviceQueueFamilyProperties2KHR( m_physicalDevice, &queueFamilyPropertyCount, nullptr );
- std::vector<StructureChain, StructureChainAllocator> returnVector( queueFamilyPropertyCount, structureChainAllocator );
- std::vector<VULKAN_HPP_NAMESPACE::QueueFamilyProperties2> queueFamilyProperties( queueFamilyPropertyCount );
- for ( uint32_t i = 0; i < queueFamilyPropertyCount; i++ )
- {
- queueFamilyProperties[i].pNext =
- returnVector[i].template get<VULKAN_HPP_NAMESPACE::QueueFamilyProperties2>().pNext;
- }
- d.vkGetPhysicalDeviceQueueFamilyProperties2KHR( m_physicalDevice, &queueFamilyPropertyCount, reinterpret_cast<VkQueueFamilyProperties2 *>( queueFamilyProperties.data() ) );
- VULKAN_HPP_ASSERT( queueFamilyPropertyCount <= queueFamilyProperties.size() );
- for ( uint32_t i = 0; i < queueFamilyPropertyCount; i++ )
- {
- returnVector[i].template get<VULKAN_HPP_NAMESPACE::QueueFamilyProperties2>() = queueFamilyProperties[i];
- }
- return returnVector;
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void PhysicalDevice::getSparseImageFormatProperties( VULKAN_HPP_NAMESPACE::Format format, VULKAN_HPP_NAMESPACE::ImageType type, VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples, VULKAN_HPP_NAMESPACE::ImageUsageFlags usage, VULKAN_HPP_NAMESPACE::ImageTiling tiling, uint32_t* pPropertyCount, VULKAN_HPP_NAMESPACE::SparseImageFormatProperties* pProperties, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkGetPhysicalDeviceSparseImageFormatProperties( m_physicalDevice, static_cast<VkFormat>( format ), static_cast<VkImageType>( type ), static_cast<VkSampleCountFlagBits>( samples ), static_cast<VkImageUsageFlags>( usage ), static_cast<VkImageTiling>( tiling ), pPropertyCount, reinterpret_cast< VkSparseImageFormatProperties *>( pProperties ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename SparseImageFormatPropertiesAllocator, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<SparseImageFormatProperties, SparseImageFormatPropertiesAllocator> PhysicalDevice::getSparseImageFormatProperties( VULKAN_HPP_NAMESPACE::Format format, VULKAN_HPP_NAMESPACE::ImageType type, VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples, VULKAN_HPP_NAMESPACE::ImageUsageFlags usage, VULKAN_HPP_NAMESPACE::ImageTiling tiling, Dispatch const & d ) const
- {
- std::vector<SparseImageFormatProperties, SparseImageFormatPropertiesAllocator> properties;
- uint32_t propertyCount;
- d.vkGetPhysicalDeviceSparseImageFormatProperties( m_physicalDevice, static_cast<VkFormat>( format ), static_cast<VkImageType>( type ), static_cast<VkSampleCountFlagBits>( samples ), static_cast<VkImageUsageFlags>( usage ), static_cast<VkImageTiling>( tiling ), &propertyCount, nullptr );
- properties.resize( propertyCount );
- d.vkGetPhysicalDeviceSparseImageFormatProperties( m_physicalDevice, static_cast<VkFormat>( format ), static_cast<VkImageType>( type ), static_cast<VkSampleCountFlagBits>( samples ), static_cast<VkImageUsageFlags>( usage ), static_cast<VkImageTiling>( tiling ), &propertyCount, reinterpret_cast<VkSparseImageFormatProperties *>( properties.data() ) );
- VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
- return properties;
- }
-
- template <typename SparseImageFormatPropertiesAllocator, typename Dispatch, typename B, typename std::enable_if<std::is_same<typename B::value_type, SparseImageFormatProperties>::value, int>::type >
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<SparseImageFormatProperties, SparseImageFormatPropertiesAllocator> PhysicalDevice::getSparseImageFormatProperties( VULKAN_HPP_NAMESPACE::Format format, VULKAN_HPP_NAMESPACE::ImageType type, VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples, VULKAN_HPP_NAMESPACE::ImageUsageFlags usage, VULKAN_HPP_NAMESPACE::ImageTiling tiling, SparseImageFormatPropertiesAllocator & sparseImageFormatPropertiesAllocator, Dispatch const & d ) const
- {
- std::vector<SparseImageFormatProperties, SparseImageFormatPropertiesAllocator> properties( sparseImageFormatPropertiesAllocator );
- uint32_t propertyCount;
- d.vkGetPhysicalDeviceSparseImageFormatProperties( m_physicalDevice, static_cast<VkFormat>( format ), static_cast<VkImageType>( type ), static_cast<VkSampleCountFlagBits>( samples ), static_cast<VkImageUsageFlags>( usage ), static_cast<VkImageTiling>( tiling ), &propertyCount, nullptr );
- properties.resize( propertyCount );
- d.vkGetPhysicalDeviceSparseImageFormatProperties( m_physicalDevice, static_cast<VkFormat>( format ), static_cast<VkImageType>( type ), static_cast<VkSampleCountFlagBits>( samples ), static_cast<VkImageUsageFlags>( usage ), static_cast<VkImageTiling>( tiling ), &propertyCount, reinterpret_cast<VkSparseImageFormatProperties *>( properties.data() ) );
- VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
- return properties;
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void PhysicalDevice::getSparseImageFormatProperties2( const VULKAN_HPP_NAMESPACE::PhysicalDeviceSparseImageFormatInfo2* pFormatInfo, uint32_t* pPropertyCount, VULKAN_HPP_NAMESPACE::SparseImageFormatProperties2* pProperties, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkGetPhysicalDeviceSparseImageFormatProperties2( m_physicalDevice, reinterpret_cast<const VkPhysicalDeviceSparseImageFormatInfo2 *>( pFormatInfo ), pPropertyCount, reinterpret_cast< VkSparseImageFormatProperties2 *>( pProperties ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename SparseImageFormatProperties2Allocator, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<SparseImageFormatProperties2, SparseImageFormatProperties2Allocator> PhysicalDevice::getSparseImageFormatProperties2( const PhysicalDeviceSparseImageFormatInfo2 & formatInfo, Dispatch const & d ) const
- {
- std::vector<SparseImageFormatProperties2, SparseImageFormatProperties2Allocator> properties;
- uint32_t propertyCount;
- d.vkGetPhysicalDeviceSparseImageFormatProperties2( m_physicalDevice, reinterpret_cast<const VkPhysicalDeviceSparseImageFormatInfo2 *>( &formatInfo ), &propertyCount, nullptr );
- properties.resize( propertyCount );
- d.vkGetPhysicalDeviceSparseImageFormatProperties2( m_physicalDevice, reinterpret_cast<const VkPhysicalDeviceSparseImageFormatInfo2 *>( &formatInfo ), &propertyCount, reinterpret_cast<VkSparseImageFormatProperties2 *>( properties.data() ) );
- VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
- return properties;
- }
-
- template <typename SparseImageFormatProperties2Allocator, typename Dispatch, typename B, typename std::enable_if<std::is_same<typename B::value_type, SparseImageFormatProperties2>::value, int>::type >
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<SparseImageFormatProperties2, SparseImageFormatProperties2Allocator> PhysicalDevice::getSparseImageFormatProperties2( const PhysicalDeviceSparseImageFormatInfo2 & formatInfo, SparseImageFormatProperties2Allocator & sparseImageFormatProperties2Allocator, Dispatch const & d ) const
- {
- std::vector<SparseImageFormatProperties2, SparseImageFormatProperties2Allocator> properties( sparseImageFormatProperties2Allocator );
- uint32_t propertyCount;
- d.vkGetPhysicalDeviceSparseImageFormatProperties2( m_physicalDevice, reinterpret_cast<const VkPhysicalDeviceSparseImageFormatInfo2 *>( &formatInfo ), &propertyCount, nullptr );
- properties.resize( propertyCount );
- d.vkGetPhysicalDeviceSparseImageFormatProperties2( m_physicalDevice, reinterpret_cast<const VkPhysicalDeviceSparseImageFormatInfo2 *>( &formatInfo ), &propertyCount, reinterpret_cast<VkSparseImageFormatProperties2 *>( properties.data() ) );
- VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
- return properties;
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void PhysicalDevice::getSparseImageFormatProperties2KHR( const VULKAN_HPP_NAMESPACE::PhysicalDeviceSparseImageFormatInfo2* pFormatInfo, uint32_t* pPropertyCount, VULKAN_HPP_NAMESPACE::SparseImageFormatProperties2* pProperties, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkGetPhysicalDeviceSparseImageFormatProperties2KHR( m_physicalDevice, reinterpret_cast<const VkPhysicalDeviceSparseImageFormatInfo2 *>( pFormatInfo ), pPropertyCount, reinterpret_cast< VkSparseImageFormatProperties2 *>( pProperties ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename SparseImageFormatProperties2Allocator, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<SparseImageFormatProperties2, SparseImageFormatProperties2Allocator> PhysicalDevice::getSparseImageFormatProperties2KHR( const PhysicalDeviceSparseImageFormatInfo2 & formatInfo, Dispatch const & d ) const
- {
- std::vector<SparseImageFormatProperties2, SparseImageFormatProperties2Allocator> properties;
- uint32_t propertyCount;
- d.vkGetPhysicalDeviceSparseImageFormatProperties2KHR( m_physicalDevice, reinterpret_cast<const VkPhysicalDeviceSparseImageFormatInfo2 *>( &formatInfo ), &propertyCount, nullptr );
- properties.resize( propertyCount );
- d.vkGetPhysicalDeviceSparseImageFormatProperties2KHR( m_physicalDevice, reinterpret_cast<const VkPhysicalDeviceSparseImageFormatInfo2 *>( &formatInfo ), &propertyCount, reinterpret_cast<VkSparseImageFormatProperties2 *>( properties.data() ) );
- VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
- return properties;
- }
-
- template <typename SparseImageFormatProperties2Allocator, typename Dispatch, typename B, typename std::enable_if<std::is_same<typename B::value_type, SparseImageFormatProperties2>::value, int>::type >
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<SparseImageFormatProperties2, SparseImageFormatProperties2Allocator> PhysicalDevice::getSparseImageFormatProperties2KHR( const PhysicalDeviceSparseImageFormatInfo2 & formatInfo, SparseImageFormatProperties2Allocator & sparseImageFormatProperties2Allocator, Dispatch const & d ) const
- {
- std::vector<SparseImageFormatProperties2, SparseImageFormatProperties2Allocator> properties( sparseImageFormatProperties2Allocator );
- uint32_t propertyCount;
- d.vkGetPhysicalDeviceSparseImageFormatProperties2KHR( m_physicalDevice, reinterpret_cast<const VkPhysicalDeviceSparseImageFormatInfo2 *>( &formatInfo ), &propertyCount, nullptr );
- properties.resize( propertyCount );
- d.vkGetPhysicalDeviceSparseImageFormatProperties2KHR( m_physicalDevice, reinterpret_cast<const VkPhysicalDeviceSparseImageFormatInfo2 *>( &formatInfo ), &propertyCount, reinterpret_cast<VkSparseImageFormatProperties2 *>( properties.data() ) );
- VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
- return properties;
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result PhysicalDevice::getSupportedFramebufferMixedSamplesCombinationsNV( uint32_t* pCombinationCount, VULKAN_HPP_NAMESPACE::FramebufferMixedSamplesCombinationNV* pCombinations, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV( m_physicalDevice, pCombinationCount, reinterpret_cast< VkFramebufferMixedSamplesCombinationNV *>( pCombinations ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename FramebufferMixedSamplesCombinationNVAllocator, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<FramebufferMixedSamplesCombinationNV, FramebufferMixedSamplesCombinationNVAllocator>>::type PhysicalDevice::getSupportedFramebufferMixedSamplesCombinationsNV( Dispatch const & d ) const
- {
- std::vector<FramebufferMixedSamplesCombinationNV, FramebufferMixedSamplesCombinationNVAllocator> combinations;
- uint32_t combinationCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV( m_physicalDevice, &combinationCount, nullptr ) );
- if ( ( result == Result::eSuccess ) && combinationCount )
- {
- combinations.resize( combinationCount );
- result = static_cast<Result>( d.vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV( m_physicalDevice, &combinationCount, reinterpret_cast<VkFramebufferMixedSamplesCombinationNV *>( combinations.data() ) ) );
- VULKAN_HPP_ASSERT( combinationCount <= combinations.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( combinationCount < combinations.size() ) )
- {
- combinations.resize( combinationCount );
- }
- return createResultValue( result, combinations, VULKAN_HPP_NAMESPACE_STRING"::PhysicalDevice::getSupportedFramebufferMixedSamplesCombinationsNV" );
- }
-
- template <typename FramebufferMixedSamplesCombinationNVAllocator, typename Dispatch, typename B, typename std::enable_if<std::is_same<typename B::value_type, FramebufferMixedSamplesCombinationNV>::value, int>::type >
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<FramebufferMixedSamplesCombinationNV, FramebufferMixedSamplesCombinationNVAllocator>>::type PhysicalDevice::getSupportedFramebufferMixedSamplesCombinationsNV( FramebufferMixedSamplesCombinationNVAllocator & framebufferMixedSamplesCombinationNVAllocator, Dispatch const & d ) const
- {
- std::vector<FramebufferMixedSamplesCombinationNV, FramebufferMixedSamplesCombinationNVAllocator> combinations( framebufferMixedSamplesCombinationNVAllocator );
- uint32_t combinationCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV( m_physicalDevice, &combinationCount, nullptr ) );
- if ( ( result == Result::eSuccess ) && combinationCount )
- {
- combinations.resize( combinationCount );
- result = static_cast<Result>( d.vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV( m_physicalDevice, &combinationCount, reinterpret_cast<VkFramebufferMixedSamplesCombinationNV *>( combinations.data() ) ) );
- VULKAN_HPP_ASSERT( combinationCount <= combinations.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( combinationCount < combinations.size() ) )
- {
- combinations.resize( combinationCount );
- }
- return createResultValue( result, combinations, VULKAN_HPP_NAMESPACE_STRING"::PhysicalDevice::getSupportedFramebufferMixedSamplesCombinationsNV" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result PhysicalDevice::getSurfaceCapabilities2EXT( VULKAN_HPP_NAMESPACE::SurfaceKHR surface, VULKAN_HPP_NAMESPACE::SurfaceCapabilities2EXT* pSurfaceCapabilities, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetPhysicalDeviceSurfaceCapabilities2EXT( m_physicalDevice, static_cast<VkSurfaceKHR>( surface ), reinterpret_cast< VkSurfaceCapabilities2EXT *>( pSurfaceCapabilities ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceCapabilities2EXT>::type PhysicalDevice::getSurfaceCapabilities2EXT( VULKAN_HPP_NAMESPACE::SurfaceKHR surface, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::SurfaceCapabilities2EXT surfaceCapabilities;
- Result result = static_cast<Result>( d.vkGetPhysicalDeviceSurfaceCapabilities2EXT( m_physicalDevice, static_cast<VkSurfaceKHR>( surface ), reinterpret_cast<VkSurfaceCapabilities2EXT *>( &surfaceCapabilities ) ) );
- return createResultValue( result, surfaceCapabilities, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getSurfaceCapabilities2EXT" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result PhysicalDevice::getSurfaceCapabilities2KHR( const VULKAN_HPP_NAMESPACE::PhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo, VULKAN_HPP_NAMESPACE::SurfaceCapabilities2KHR* pSurfaceCapabilities, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetPhysicalDeviceSurfaceCapabilities2KHR( m_physicalDevice, reinterpret_cast<const VkPhysicalDeviceSurfaceInfo2KHR *>( pSurfaceInfo ), reinterpret_cast< VkSurfaceCapabilities2KHR *>( pSurfaceCapabilities ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceCapabilities2KHR>::type PhysicalDevice::getSurfaceCapabilities2KHR( const PhysicalDeviceSurfaceInfo2KHR & surfaceInfo, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::SurfaceCapabilities2KHR surfaceCapabilities;
- Result result = static_cast<Result>( d.vkGetPhysicalDeviceSurfaceCapabilities2KHR( m_physicalDevice, reinterpret_cast<const VkPhysicalDeviceSurfaceInfo2KHR *>( &surfaceInfo ), reinterpret_cast<VkSurfaceCapabilities2KHR *>( &surfaceCapabilities ) ) );
- return createResultValue( result, surfaceCapabilities, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getSurfaceCapabilities2KHR" );
- }
-
- template <typename X, typename Y, typename... Z, typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<StructureChain<X, Y, Z...>>::type PhysicalDevice::getSurfaceCapabilities2KHR( const PhysicalDeviceSurfaceInfo2KHR & surfaceInfo, Dispatch const & d ) const
- {
- StructureChain<X, Y, Z...> structureChain;
- VULKAN_HPP_NAMESPACE::SurfaceCapabilities2KHR & surfaceCapabilities = structureChain.template get<VULKAN_HPP_NAMESPACE::SurfaceCapabilities2KHR>();
- Result result = static_cast<Result>( d.vkGetPhysicalDeviceSurfaceCapabilities2KHR( m_physicalDevice, reinterpret_cast<const VkPhysicalDeviceSurfaceInfo2KHR *>( &surfaceInfo ), reinterpret_cast<VkSurfaceCapabilities2KHR *>( &surfaceCapabilities ) ) );
- return createResultValue( result, structureChain, VULKAN_HPP_NAMESPACE_STRING"::PhysicalDevice::getSurfaceCapabilities2KHR" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result PhysicalDevice::getSurfaceCapabilitiesKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface, VULKAN_HPP_NAMESPACE::SurfaceCapabilitiesKHR* pSurfaceCapabilities, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetPhysicalDeviceSurfaceCapabilitiesKHR( m_physicalDevice, static_cast<VkSurfaceKHR>( surface ), reinterpret_cast< VkSurfaceCapabilitiesKHR *>( pSurfaceCapabilities ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceCapabilitiesKHR>::type PhysicalDevice::getSurfaceCapabilitiesKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::SurfaceCapabilitiesKHR surfaceCapabilities;
- Result result = static_cast<Result>( d.vkGetPhysicalDeviceSurfaceCapabilitiesKHR( m_physicalDevice, static_cast<VkSurfaceKHR>( surface ), reinterpret_cast<VkSurfaceCapabilitiesKHR *>( &surfaceCapabilities ) ) );
- return createResultValue( result, surfaceCapabilities, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getSurfaceCapabilitiesKHR" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result PhysicalDevice::getSurfaceFormats2KHR( const VULKAN_HPP_NAMESPACE::PhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo, uint32_t* pSurfaceFormatCount, VULKAN_HPP_NAMESPACE::SurfaceFormat2KHR* pSurfaceFormats, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetPhysicalDeviceSurfaceFormats2KHR( m_physicalDevice, reinterpret_cast<const VkPhysicalDeviceSurfaceInfo2KHR *>( pSurfaceInfo ), pSurfaceFormatCount, reinterpret_cast< VkSurfaceFormat2KHR *>( pSurfaceFormats ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename SurfaceFormat2KHRAllocator, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<SurfaceFormat2KHR, SurfaceFormat2KHRAllocator>>::type PhysicalDevice::getSurfaceFormats2KHR( const PhysicalDeviceSurfaceInfo2KHR & surfaceInfo, Dispatch const & d ) const
- {
- std::vector<SurfaceFormat2KHR, SurfaceFormat2KHRAllocator> surfaceFormats;
- uint32_t surfaceFormatCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkGetPhysicalDeviceSurfaceFormats2KHR( m_physicalDevice, reinterpret_cast<const VkPhysicalDeviceSurfaceInfo2KHR *>( &surfaceInfo ), &surfaceFormatCount, nullptr ) );
- if ( ( result == Result::eSuccess ) && surfaceFormatCount )
- {
- surfaceFormats.resize( surfaceFormatCount );
- result = static_cast<Result>( d.vkGetPhysicalDeviceSurfaceFormats2KHR( m_physicalDevice, reinterpret_cast<const VkPhysicalDeviceSurfaceInfo2KHR *>( &surfaceInfo ), &surfaceFormatCount, reinterpret_cast<VkSurfaceFormat2KHR *>( surfaceFormats.data() ) ) );
- VULKAN_HPP_ASSERT( surfaceFormatCount <= surfaceFormats.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( surfaceFormatCount < surfaceFormats.size() ) )
- {
- surfaceFormats.resize( surfaceFormatCount );
- }
- return createResultValue( result, surfaceFormats, VULKAN_HPP_NAMESPACE_STRING"::PhysicalDevice::getSurfaceFormats2KHR" );
- }
-
- template <typename SurfaceFormat2KHRAllocator, typename Dispatch, typename B, typename std::enable_if<std::is_same<typename B::value_type, SurfaceFormat2KHR>::value, int>::type >
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<SurfaceFormat2KHR, SurfaceFormat2KHRAllocator>>::type PhysicalDevice::getSurfaceFormats2KHR( const PhysicalDeviceSurfaceInfo2KHR & surfaceInfo, SurfaceFormat2KHRAllocator & surfaceFormat2KHRAllocator, Dispatch const & d ) const
- {
- std::vector<SurfaceFormat2KHR, SurfaceFormat2KHRAllocator> surfaceFormats( surfaceFormat2KHRAllocator );
- uint32_t surfaceFormatCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkGetPhysicalDeviceSurfaceFormats2KHR( m_physicalDevice, reinterpret_cast<const VkPhysicalDeviceSurfaceInfo2KHR *>( &surfaceInfo ), &surfaceFormatCount, nullptr ) );
- if ( ( result == Result::eSuccess ) && surfaceFormatCount )
- {
- surfaceFormats.resize( surfaceFormatCount );
- result = static_cast<Result>( d.vkGetPhysicalDeviceSurfaceFormats2KHR( m_physicalDevice, reinterpret_cast<const VkPhysicalDeviceSurfaceInfo2KHR *>( &surfaceInfo ), &surfaceFormatCount, reinterpret_cast<VkSurfaceFormat2KHR *>( surfaceFormats.data() ) ) );
- VULKAN_HPP_ASSERT( surfaceFormatCount <= surfaceFormats.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( surfaceFormatCount < surfaceFormats.size() ) )
- {
- surfaceFormats.resize( surfaceFormatCount );
- }
- return createResultValue( result, surfaceFormats, VULKAN_HPP_NAMESPACE_STRING"::PhysicalDevice::getSurfaceFormats2KHR" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result PhysicalDevice::getSurfaceFormatsKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface, uint32_t* pSurfaceFormatCount, VULKAN_HPP_NAMESPACE::SurfaceFormatKHR* pSurfaceFormats, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetPhysicalDeviceSurfaceFormatsKHR( m_physicalDevice, static_cast<VkSurfaceKHR>( surface ), pSurfaceFormatCount, reinterpret_cast< VkSurfaceFormatKHR *>( pSurfaceFormats ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename SurfaceFormatKHRAllocator, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<SurfaceFormatKHR, SurfaceFormatKHRAllocator>>::type PhysicalDevice::getSurfaceFormatsKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface, Dispatch const & d ) const
- {
- std::vector<SurfaceFormatKHR, SurfaceFormatKHRAllocator> surfaceFormats;
- uint32_t surfaceFormatCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkGetPhysicalDeviceSurfaceFormatsKHR( m_physicalDevice, static_cast<VkSurfaceKHR>( surface ), &surfaceFormatCount, nullptr ) );
- if ( ( result == Result::eSuccess ) && surfaceFormatCount )
- {
- surfaceFormats.resize( surfaceFormatCount );
- result = static_cast<Result>( d.vkGetPhysicalDeviceSurfaceFormatsKHR( m_physicalDevice, static_cast<VkSurfaceKHR>( surface ), &surfaceFormatCount, reinterpret_cast<VkSurfaceFormatKHR *>( surfaceFormats.data() ) ) );
- VULKAN_HPP_ASSERT( surfaceFormatCount <= surfaceFormats.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( surfaceFormatCount < surfaceFormats.size() ) )
- {
- surfaceFormats.resize( surfaceFormatCount );
- }
- return createResultValue( result, surfaceFormats, VULKAN_HPP_NAMESPACE_STRING"::PhysicalDevice::getSurfaceFormatsKHR" );
- }
-
- template <typename SurfaceFormatKHRAllocator, typename Dispatch, typename B, typename std::enable_if<std::is_same<typename B::value_type, SurfaceFormatKHR>::value, int>::type >
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<SurfaceFormatKHR, SurfaceFormatKHRAllocator>>::type PhysicalDevice::getSurfaceFormatsKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface, SurfaceFormatKHRAllocator & surfaceFormatKHRAllocator, Dispatch const & d ) const
- {
- std::vector<SurfaceFormatKHR, SurfaceFormatKHRAllocator> surfaceFormats( surfaceFormatKHRAllocator );
- uint32_t surfaceFormatCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkGetPhysicalDeviceSurfaceFormatsKHR( m_physicalDevice, static_cast<VkSurfaceKHR>( surface ), &surfaceFormatCount, nullptr ) );
- if ( ( result == Result::eSuccess ) && surfaceFormatCount )
- {
- surfaceFormats.resize( surfaceFormatCount );
- result = static_cast<Result>( d.vkGetPhysicalDeviceSurfaceFormatsKHR( m_physicalDevice, static_cast<VkSurfaceKHR>( surface ), &surfaceFormatCount, reinterpret_cast<VkSurfaceFormatKHR *>( surfaceFormats.data() ) ) );
- VULKAN_HPP_ASSERT( surfaceFormatCount <= surfaceFormats.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( surfaceFormatCount < surfaceFormats.size() ) )
- {
- surfaceFormats.resize( surfaceFormatCount );
- }
- return createResultValue( result, surfaceFormats, VULKAN_HPP_NAMESPACE_STRING"::PhysicalDevice::getSurfaceFormatsKHR" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result PhysicalDevice::getSurfacePresentModes2EXT( const VULKAN_HPP_NAMESPACE::PhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo, uint32_t* pPresentModeCount, VULKAN_HPP_NAMESPACE::PresentModeKHR* pPresentModes, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetPhysicalDeviceSurfacePresentModes2EXT( m_physicalDevice, reinterpret_cast<const VkPhysicalDeviceSurfaceInfo2KHR *>( pSurfaceInfo ), pPresentModeCount, reinterpret_cast< VkPresentModeKHR *>( pPresentModes ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename PresentModeKHRAllocator, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<PresentModeKHR, PresentModeKHRAllocator>>::type PhysicalDevice::getSurfacePresentModes2EXT( const PhysicalDeviceSurfaceInfo2KHR & surfaceInfo, Dispatch const & d ) const
- {
- std::vector<PresentModeKHR, PresentModeKHRAllocator> presentModes;
- uint32_t presentModeCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkGetPhysicalDeviceSurfacePresentModes2EXT( m_physicalDevice, reinterpret_cast<const VkPhysicalDeviceSurfaceInfo2KHR *>( &surfaceInfo ), &presentModeCount, nullptr ) );
- if ( ( result == Result::eSuccess ) && presentModeCount )
- {
- presentModes.resize( presentModeCount );
- result = static_cast<Result>( d.vkGetPhysicalDeviceSurfacePresentModes2EXT( m_physicalDevice, reinterpret_cast<const VkPhysicalDeviceSurfaceInfo2KHR *>( &surfaceInfo ), &presentModeCount, reinterpret_cast<VkPresentModeKHR *>( presentModes.data() ) ) );
- VULKAN_HPP_ASSERT( presentModeCount <= presentModes.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( presentModeCount < presentModes.size() ) )
- {
- presentModes.resize( presentModeCount );
- }
- return createResultValue( result, presentModes, VULKAN_HPP_NAMESPACE_STRING"::PhysicalDevice::getSurfacePresentModes2EXT" );
- }
-
- template <typename PresentModeKHRAllocator, typename Dispatch, typename B, typename std::enable_if<std::is_same<typename B::value_type, PresentModeKHR>::value, int>::type >
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<PresentModeKHR, PresentModeKHRAllocator>>::type PhysicalDevice::getSurfacePresentModes2EXT( const PhysicalDeviceSurfaceInfo2KHR & surfaceInfo, PresentModeKHRAllocator & presentModeKHRAllocator, Dispatch const & d ) const
- {
- std::vector<PresentModeKHR, PresentModeKHRAllocator> presentModes( presentModeKHRAllocator );
- uint32_t presentModeCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkGetPhysicalDeviceSurfacePresentModes2EXT( m_physicalDevice, reinterpret_cast<const VkPhysicalDeviceSurfaceInfo2KHR *>( &surfaceInfo ), &presentModeCount, nullptr ) );
- if ( ( result == Result::eSuccess ) && presentModeCount )
- {
- presentModes.resize( presentModeCount );
- result = static_cast<Result>( d.vkGetPhysicalDeviceSurfacePresentModes2EXT( m_physicalDevice, reinterpret_cast<const VkPhysicalDeviceSurfaceInfo2KHR *>( &surfaceInfo ), &presentModeCount, reinterpret_cast<VkPresentModeKHR *>( presentModes.data() ) ) );
- VULKAN_HPP_ASSERT( presentModeCount <= presentModes.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( presentModeCount < presentModes.size() ) )
- {
- presentModes.resize( presentModeCount );
- }
- return createResultValue( result, presentModes, VULKAN_HPP_NAMESPACE_STRING"::PhysicalDevice::getSurfacePresentModes2EXT" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result PhysicalDevice::getSurfacePresentModesKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface, uint32_t* pPresentModeCount, VULKAN_HPP_NAMESPACE::PresentModeKHR* pPresentModes, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetPhysicalDeviceSurfacePresentModesKHR( m_physicalDevice, static_cast<VkSurfaceKHR>( surface ), pPresentModeCount, reinterpret_cast< VkPresentModeKHR *>( pPresentModes ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename PresentModeKHRAllocator, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<PresentModeKHR, PresentModeKHRAllocator>>::type PhysicalDevice::getSurfacePresentModesKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface, Dispatch const & d ) const
- {
- std::vector<PresentModeKHR, PresentModeKHRAllocator> presentModes;
- uint32_t presentModeCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkGetPhysicalDeviceSurfacePresentModesKHR( m_physicalDevice, static_cast<VkSurfaceKHR>( surface ), &presentModeCount, nullptr ) );
- if ( ( result == Result::eSuccess ) && presentModeCount )
- {
- presentModes.resize( presentModeCount );
- result = static_cast<Result>( d.vkGetPhysicalDeviceSurfacePresentModesKHR( m_physicalDevice, static_cast<VkSurfaceKHR>( surface ), &presentModeCount, reinterpret_cast<VkPresentModeKHR *>( presentModes.data() ) ) );
- VULKAN_HPP_ASSERT( presentModeCount <= presentModes.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( presentModeCount < presentModes.size() ) )
- {
- presentModes.resize( presentModeCount );
- }
- return createResultValue( result, presentModes, VULKAN_HPP_NAMESPACE_STRING"::PhysicalDevice::getSurfacePresentModesKHR" );
- }
-
- template <typename PresentModeKHRAllocator, typename Dispatch, typename B, typename std::enable_if<std::is_same<typename B::value_type, PresentModeKHR>::value, int>::type >
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<PresentModeKHR, PresentModeKHRAllocator>>::type PhysicalDevice::getSurfacePresentModesKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface, PresentModeKHRAllocator & presentModeKHRAllocator, Dispatch const & d ) const
- {
- std::vector<PresentModeKHR, PresentModeKHRAllocator> presentModes( presentModeKHRAllocator );
- uint32_t presentModeCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkGetPhysicalDeviceSurfacePresentModesKHR( m_physicalDevice, static_cast<VkSurfaceKHR>( surface ), &presentModeCount, nullptr ) );
- if ( ( result == Result::eSuccess ) && presentModeCount )
- {
- presentModes.resize( presentModeCount );
- result = static_cast<Result>( d.vkGetPhysicalDeviceSurfacePresentModesKHR( m_physicalDevice, static_cast<VkSurfaceKHR>( surface ), &presentModeCount, reinterpret_cast<VkPresentModeKHR *>( presentModes.data() ) ) );
- VULKAN_HPP_ASSERT( presentModeCount <= presentModes.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( presentModeCount < presentModes.size() ) )
- {
- presentModes.resize( presentModeCount );
- }
- return createResultValue( result, presentModes, VULKAN_HPP_NAMESPACE_STRING"::PhysicalDevice::getSurfacePresentModesKHR" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result PhysicalDevice::getSurfaceSupportKHR( uint32_t queueFamilyIndex, VULKAN_HPP_NAMESPACE::SurfaceKHR surface, VULKAN_HPP_NAMESPACE::Bool32* pSupported, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetPhysicalDeviceSurfaceSupportKHR( m_physicalDevice, queueFamilyIndex, static_cast<VkSurfaceKHR>( surface ), reinterpret_cast< VkBool32 *>( pSupported ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::Bool32>::type PhysicalDevice::getSurfaceSupportKHR( uint32_t queueFamilyIndex, VULKAN_HPP_NAMESPACE::SurfaceKHR surface, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::Bool32 supported;
- Result result = static_cast<Result>( d.vkGetPhysicalDeviceSurfaceSupportKHR( m_physicalDevice, queueFamilyIndex, static_cast<VkSurfaceKHR>( surface ), reinterpret_cast<VkBool32 *>( &supported ) ) );
- return createResultValue( result, supported, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getSurfaceSupportKHR" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result PhysicalDevice::getToolPropertiesEXT( uint32_t* pToolCount, VULKAN_HPP_NAMESPACE::PhysicalDeviceToolPropertiesEXT* pToolProperties, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetPhysicalDeviceToolPropertiesEXT( m_physicalDevice, pToolCount, reinterpret_cast< VkPhysicalDeviceToolPropertiesEXT *>( pToolProperties ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename PhysicalDeviceToolPropertiesEXTAllocator, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<PhysicalDeviceToolPropertiesEXT, PhysicalDeviceToolPropertiesEXTAllocator>>::type PhysicalDevice::getToolPropertiesEXT( Dispatch const & d ) const
- {
- std::vector<PhysicalDeviceToolPropertiesEXT, PhysicalDeviceToolPropertiesEXTAllocator> toolProperties;
- uint32_t toolCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkGetPhysicalDeviceToolPropertiesEXT( m_physicalDevice, &toolCount, nullptr ) );
- if ( ( result == Result::eSuccess ) && toolCount )
- {
- toolProperties.resize( toolCount );
- result = static_cast<Result>( d.vkGetPhysicalDeviceToolPropertiesEXT( m_physicalDevice, &toolCount, reinterpret_cast<VkPhysicalDeviceToolPropertiesEXT *>( toolProperties.data() ) ) );
- VULKAN_HPP_ASSERT( toolCount <= toolProperties.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( toolCount < toolProperties.size() ) )
- {
- toolProperties.resize( toolCount );
- }
- return createResultValue( result, toolProperties, VULKAN_HPP_NAMESPACE_STRING"::PhysicalDevice::getToolPropertiesEXT" );
- }
-
- template <typename PhysicalDeviceToolPropertiesEXTAllocator, typename Dispatch, typename B, typename std::enable_if<std::is_same<typename B::value_type, PhysicalDeviceToolPropertiesEXT>::value, int>::type >
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<PhysicalDeviceToolPropertiesEXT, PhysicalDeviceToolPropertiesEXTAllocator>>::type PhysicalDevice::getToolPropertiesEXT( PhysicalDeviceToolPropertiesEXTAllocator & physicalDeviceToolPropertiesEXTAllocator, Dispatch const & d ) const
- {
- std::vector<PhysicalDeviceToolPropertiesEXT, PhysicalDeviceToolPropertiesEXTAllocator> toolProperties( physicalDeviceToolPropertiesEXTAllocator );
- uint32_t toolCount;
- Result result;
- do
- {
- result = static_cast<Result>( d.vkGetPhysicalDeviceToolPropertiesEXT( m_physicalDevice, &toolCount, nullptr ) );
- if ( ( result == Result::eSuccess ) && toolCount )
- {
- toolProperties.resize( toolCount );
- result = static_cast<Result>( d.vkGetPhysicalDeviceToolPropertiesEXT( m_physicalDevice, &toolCount, reinterpret_cast<VkPhysicalDeviceToolPropertiesEXT *>( toolProperties.data() ) ) );
- VULKAN_HPP_ASSERT( toolCount <= toolProperties.size() );
- }
- } while ( result == Result::eIncomplete );
- if ( ( result == Result::eSuccess ) && ( toolCount < toolProperties.size() ) )
- {
- toolProperties.resize( toolCount );
- }
- return createResultValue( result, toolProperties, VULKAN_HPP_NAMESPACE_STRING"::PhysicalDevice::getToolPropertiesEXT" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-#ifdef VK_USE_PLATFORM_WAYLAND_KHR
- template <typename Dispatch>
- VULKAN_HPP_INLINE Bool32 PhysicalDevice::getWaylandPresentationSupportKHR( uint32_t queueFamilyIndex, struct wl_display* display, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Bool32>( d.vkGetPhysicalDeviceWaylandPresentationSupportKHR( m_physicalDevice, queueFamilyIndex, display ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE Bool32 PhysicalDevice::getWaylandPresentationSupportKHR( uint32_t queueFamilyIndex, struct wl_display & display, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return d.vkGetPhysicalDeviceWaylandPresentationSupportKHR( m_physicalDevice, queueFamilyIndex, &display );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_WAYLAND_KHR*/
-
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- template <typename Dispatch>
- VULKAN_HPP_INLINE Bool32 PhysicalDevice::getWin32PresentationSupportKHR( uint32_t queueFamilyIndex, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Bool32>( d.vkGetPhysicalDeviceWin32PresentationSupportKHR( m_physicalDevice, queueFamilyIndex ) );
- }
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-
-
-#ifdef VK_USE_PLATFORM_XCB_KHR
- template <typename Dispatch>
- VULKAN_HPP_INLINE Bool32 PhysicalDevice::getXcbPresentationSupportKHR( uint32_t queueFamilyIndex, xcb_connection_t* connection, xcb_visualid_t visual_id, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Bool32>( d.vkGetPhysicalDeviceXcbPresentationSupportKHR( m_physicalDevice, queueFamilyIndex, connection, visual_id ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE Bool32 PhysicalDevice::getXcbPresentationSupportKHR( uint32_t queueFamilyIndex, xcb_connection_t & connection, xcb_visualid_t visual_id, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return d.vkGetPhysicalDeviceXcbPresentationSupportKHR( m_physicalDevice, queueFamilyIndex, &connection, visual_id );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_XCB_KHR*/
-
-
-#ifdef VK_USE_PLATFORM_XLIB_KHR
- template <typename Dispatch>
- VULKAN_HPP_INLINE Bool32 PhysicalDevice::getXlibPresentationSupportKHR( uint32_t queueFamilyIndex, Display* dpy, VisualID visualID, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Bool32>( d.vkGetPhysicalDeviceXlibPresentationSupportKHR( m_physicalDevice, queueFamilyIndex, dpy, visualID ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE Bool32 PhysicalDevice::getXlibPresentationSupportKHR( uint32_t queueFamilyIndex, Display & dpy, VisualID visualID, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return d.vkGetPhysicalDeviceXlibPresentationSupportKHR( m_physicalDevice, queueFamilyIndex, &dpy, visualID );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_XLIB_KHR*/
-
-
-#ifdef VK_USE_PLATFORM_XLIB_XRANDR_EXT
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result PhysicalDevice::getRandROutputDisplayEXT( Display* dpy, RROutput rrOutput, VULKAN_HPP_NAMESPACE::DisplayKHR* pDisplay, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkGetRandROutputDisplayEXT( m_physicalDevice, dpy, rrOutput, reinterpret_cast< VkDisplayKHR *>( pDisplay ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::DisplayKHR>::type PhysicalDevice::getRandROutputDisplayEXT( Display & dpy, RROutput rrOutput, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::DisplayKHR display;
- Result result = static_cast<Result>( d.vkGetRandROutputDisplayEXT( m_physicalDevice, &dpy, rrOutput, reinterpret_cast<VkDisplayKHR *>( &display ) ) );
- return createResultValue( result, display, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getRandROutputDisplayEXT" );
- }
-
-# ifndef VULKAN_HPP_NO_SMART_HANDLE
- template <typename Dispatch>
- VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::DisplayKHR, Dispatch>>::type PhysicalDevice::getRandROutputDisplayEXTUnique( Display & dpy, RROutput rrOutput, Dispatch const & d ) const
- {
- VULKAN_HPP_NAMESPACE::DisplayKHR display;
- Result result = static_cast<Result>( d.vkGetRandROutputDisplayEXT( m_physicalDevice, &dpy, rrOutput, reinterpret_cast<VkDisplayKHR *>( &display ) ) );
- ObjectRelease<PhysicalDevice, Dispatch> deleter( *this, d );
- return createResultValue<VULKAN_HPP_NAMESPACE::DisplayKHR, Dispatch>( result, display, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getRandROutputDisplayEXTUnique", deleter );
- }
-# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-#endif /*VK_USE_PLATFORM_XLIB_XRANDR_EXT*/
-
-
-#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE Result PhysicalDevice::releaseDisplayEXT( VULKAN_HPP_NAMESPACE::DisplayKHR display, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkReleaseDisplayEXT( m_physicalDevice, static_cast<VkDisplayKHR>( display ) ) );
- }
-#else
- template <typename Dispatch>
- VULKAN_HPP_INLINE typename ResultValueType<void>::type PhysicalDevice::releaseDisplayEXT( VULKAN_HPP_NAMESPACE::DisplayKHR display, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkReleaseDisplayEXT( m_physicalDevice, static_cast<VkDisplayKHR>( display ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::releaseDisplayEXT" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Queue::getCheckpointDataNV( uint32_t* pCheckpointDataCount, VULKAN_HPP_NAMESPACE::CheckpointDataNV* pCheckpointData, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkGetQueueCheckpointDataNV( m_queue, pCheckpointDataCount, reinterpret_cast< VkCheckpointDataNV *>( pCheckpointData ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename CheckpointDataNVAllocator, typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<CheckpointDataNV, CheckpointDataNVAllocator> Queue::getCheckpointDataNV( Dispatch const & d ) const
- {
- std::vector<CheckpointDataNV, CheckpointDataNVAllocator> checkpointData;
- uint32_t checkpointDataCount;
- d.vkGetQueueCheckpointDataNV( m_queue, &checkpointDataCount, nullptr );
- checkpointData.resize( checkpointDataCount );
- d.vkGetQueueCheckpointDataNV( m_queue, &checkpointDataCount, reinterpret_cast<VkCheckpointDataNV *>( checkpointData.data() ) );
- VULKAN_HPP_ASSERT( checkpointDataCount <= checkpointData.size() );
- return checkpointData;
- }
-
- template <typename CheckpointDataNVAllocator, typename Dispatch, typename B, typename std::enable_if<std::is_same<typename B::value_type, CheckpointDataNV>::value, int>::type >
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<CheckpointDataNV, CheckpointDataNVAllocator> Queue::getCheckpointDataNV( CheckpointDataNVAllocator & checkpointDataNVAllocator, Dispatch const & d ) const
- {
- std::vector<CheckpointDataNV, CheckpointDataNVAllocator> checkpointData( checkpointDataNVAllocator );
- uint32_t checkpointDataCount;
- d.vkGetQueueCheckpointDataNV( m_queue, &checkpointDataCount, nullptr );
- checkpointData.resize( checkpointDataCount );
- d.vkGetQueueCheckpointDataNV( m_queue, &checkpointDataCount, reinterpret_cast<VkCheckpointDataNV *>( checkpointData.data() ) );
- VULKAN_HPP_ASSERT( checkpointDataCount <= checkpointData.size() );
- return checkpointData;
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Queue::beginDebugUtilsLabelEXT( const VULKAN_HPP_NAMESPACE::DebugUtilsLabelEXT* pLabelInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkQueueBeginDebugUtilsLabelEXT( m_queue, reinterpret_cast<const VkDebugUtilsLabelEXT *>( pLabelInfo ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Queue::beginDebugUtilsLabelEXT( const DebugUtilsLabelEXT & labelInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkQueueBeginDebugUtilsLabelEXT( m_queue, reinterpret_cast<const VkDebugUtilsLabelEXT *>( &labelInfo ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Queue::bindSparse( uint32_t bindInfoCount, const VULKAN_HPP_NAMESPACE::BindSparseInfo* pBindInfo, VULKAN_HPP_NAMESPACE::Fence fence, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkQueueBindSparse( m_queue, bindInfoCount, reinterpret_cast<const VkBindSparseInfo *>( pBindInfo ), static_cast<VkFence>( fence ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type Queue::bindSparse( ArrayProxy<const VULKAN_HPP_NAMESPACE::BindSparseInfo> const & bindInfo, VULKAN_HPP_NAMESPACE::Fence fence, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkQueueBindSparse( m_queue, bindInfo.size(), reinterpret_cast<const VkBindSparseInfo *>( bindInfo.data() ), static_cast<VkFence>( fence ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Queue::bindSparse" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Queue::endDebugUtilsLabelEXT( Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkQueueEndDebugUtilsLabelEXT( m_queue );
- }
-
-
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Queue::insertDebugUtilsLabelEXT( const VULKAN_HPP_NAMESPACE::DebugUtilsLabelEXT* pLabelInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkQueueInsertDebugUtilsLabelEXT( m_queue, reinterpret_cast<const VkDebugUtilsLabelEXT *>( pLabelInfo ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_INLINE void Queue::insertDebugUtilsLabelEXT( const DebugUtilsLabelEXT & labelInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- d.vkQueueInsertDebugUtilsLabelEXT( m_queue, reinterpret_cast<const VkDebugUtilsLabelEXT *>( &labelInfo ) );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Queue::presentKHR( const VULKAN_HPP_NAMESPACE::PresentInfoKHR* pPresentInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkQueuePresentKHR( m_queue, reinterpret_cast<const VkPresentInfoKHR *>( pPresentInfo ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Queue::presentKHR( const PresentInfoKHR & presentInfo, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkQueuePresentKHR( m_queue, reinterpret_cast<const VkPresentInfoKHR *>( &presentInfo ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Queue::presentKHR", { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::eSuboptimalKHR } );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Queue::setPerformanceConfigurationINTEL( VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL configuration, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkQueueSetPerformanceConfigurationINTEL( m_queue, static_cast<VkPerformanceConfigurationINTEL>( configuration ) ) );
- }
-#else
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type Queue::setPerformanceConfigurationINTEL( VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL configuration, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkQueueSetPerformanceConfigurationINTEL( m_queue, static_cast<VkPerformanceConfigurationINTEL>( configuration ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Queue::setPerformanceConfigurationINTEL" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Queue::submit( uint32_t submitCount, const VULKAN_HPP_NAMESPACE::SubmitInfo* pSubmits, VULKAN_HPP_NAMESPACE::Fence fence, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkQueueSubmit( m_queue, submitCount, reinterpret_cast<const VkSubmitInfo *>( pSubmits ), static_cast<VkFence>( fence ) ) );
- }
-
-#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type Queue::submit( ArrayProxy<const VULKAN_HPP_NAMESPACE::SubmitInfo> const & submits, VULKAN_HPP_NAMESPACE::Fence fence, Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkQueueSubmit( m_queue, submits.size(), reinterpret_cast<const VkSubmitInfo *>( submits.data() ), static_cast<VkFence>( fence ) ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Queue::submit" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-
-#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Queue::waitIdle( Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
- {
- return static_cast<Result>( d.vkQueueWaitIdle( m_queue ) );
- }
-#else
- template <typename Dispatch>
- VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type Queue::waitIdle( Dispatch const & d ) const
- {
- Result result = static_cast<Result>( d.vkQueueWaitIdle( m_queue ) );
- return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Queue::waitIdle" );
- }
-#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
-
-#ifdef VK_USE_PLATFORM_ANDROID_KHR
- template <> struct StructExtends<AndroidHardwareBufferFormatPropertiesANDROID, AndroidHardwareBufferPropertiesANDROID>{ enum { value = true }; };
-#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
-#ifdef VK_USE_PLATFORM_ANDROID_KHR
- template <> struct StructExtends<AndroidHardwareBufferUsageANDROID, ImageFormatProperties2>{ enum { value = true }; };
-#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
- template <> struct StructExtends<AttachmentDescriptionStencilLayout, AttachmentDescription2>{ enum { value = true }; };
- template <> struct StructExtends<AttachmentReferenceStencilLayout, AttachmentReference2>{ enum { value = true }; };
- template <> struct StructExtends<BindBufferMemoryDeviceGroupInfo, BindBufferMemoryInfo>{ enum { value = true }; };
- template <> struct StructExtends<BindImageMemoryDeviceGroupInfo, BindImageMemoryInfo>{ enum { value = true }; };
- template <> struct StructExtends<BindImageMemorySwapchainInfoKHR, BindImageMemoryInfo>{ enum { value = true }; };
- template <> struct StructExtends<BindImagePlaneMemoryInfo, BindImageMemoryInfo>{ enum { value = true }; };
- template <> struct StructExtends<BufferDeviceAddressCreateInfoEXT, BufferCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<BufferOpaqueCaptureAddressCreateInfo, BufferCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<CommandBufferInheritanceConditionalRenderingInfoEXT, CommandBufferInheritanceInfo>{ enum { value = true }; };
- template <> struct StructExtends<CommandBufferInheritanceRenderPassTransformInfoQCOM, CommandBufferInheritanceInfo>{ enum { value = true }; };
- template <> struct StructExtends<CopyCommandTransformInfoQCOM, BufferImageCopy2KHR>{ enum { value = true }; };
- template <> struct StructExtends<CopyCommandTransformInfoQCOM, ImageBlit2KHR>{ enum { value = true }; };
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- template <> struct StructExtends<D3D12FenceSubmitInfoKHR, SubmitInfo>{ enum { value = true }; };
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
- template <> struct StructExtends<DebugReportCallbackCreateInfoEXT, InstanceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<DebugUtilsMessengerCreateInfoEXT, InstanceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<DedicatedAllocationBufferCreateInfoNV, BufferCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<DedicatedAllocationImageCreateInfoNV, ImageCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<DedicatedAllocationMemoryAllocateInfoNV, MemoryAllocateInfo>{ enum { value = true }; };
- template <> struct StructExtends<DescriptorPoolInlineUniformBlockCreateInfoEXT, DescriptorPoolCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<DescriptorSetLayoutBindingFlagsCreateInfo, DescriptorSetLayoutCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<DescriptorSetVariableDescriptorCountAllocateInfo, DescriptorSetAllocateInfo>{ enum { value = true }; };
- template <> struct StructExtends<DescriptorSetVariableDescriptorCountLayoutSupport, DescriptorSetLayoutSupport>{ enum { value = true }; };
- template <> struct StructExtends<DeviceDeviceMemoryReportCreateInfoEXT, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<DeviceDiagnosticsConfigCreateInfoNV, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<DeviceGroupBindSparseInfo, BindSparseInfo>{ enum { value = true }; };
- template <> struct StructExtends<DeviceGroupCommandBufferBeginInfo, CommandBufferBeginInfo>{ enum { value = true }; };
- template <> struct StructExtends<DeviceGroupDeviceCreateInfo, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<DeviceGroupPresentInfoKHR, PresentInfoKHR>{ enum { value = true }; };
- template <> struct StructExtends<DeviceGroupRenderPassBeginInfo, RenderPassBeginInfo>{ enum { value = true }; };
- template <> struct StructExtends<DeviceGroupSubmitInfo, SubmitInfo>{ enum { value = true }; };
- template <> struct StructExtends<DeviceGroupSwapchainCreateInfoKHR, SwapchainCreateInfoKHR>{ enum { value = true }; };
- template <> struct StructExtends<DeviceMemoryOverallocationCreateInfoAMD, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<DevicePrivateDataCreateInfoEXT, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<DeviceQueueGlobalPriorityCreateInfoEXT, DeviceQueueCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<DisplayNativeHdrSurfaceCapabilitiesAMD, SurfaceCapabilities2KHR>{ enum { value = true }; };
- template <> struct StructExtends<DisplayPresentInfoKHR, PresentInfoKHR>{ enum { value = true }; };
- template <> struct StructExtends<DrmFormatModifierPropertiesListEXT, FormatProperties2>{ enum { value = true }; };
- template <> struct StructExtends<ExportFenceCreateInfo, FenceCreateInfo>{ enum { value = true }; };
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- template <> struct StructExtends<ExportFenceWin32HandleInfoKHR, FenceCreateInfo>{ enum { value = true }; };
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
- template <> struct StructExtends<ExportMemoryAllocateInfo, MemoryAllocateInfo>{ enum { value = true }; };
- template <> struct StructExtends<ExportMemoryAllocateInfoNV, MemoryAllocateInfo>{ enum { value = true }; };
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- template <> struct StructExtends<ExportMemoryWin32HandleInfoKHR, MemoryAllocateInfo>{ enum { value = true }; };
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- template <> struct StructExtends<ExportMemoryWin32HandleInfoNV, MemoryAllocateInfo>{ enum { value = true }; };
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
- template <> struct StructExtends<ExportSemaphoreCreateInfo, SemaphoreCreateInfo>{ enum { value = true }; };
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- template <> struct StructExtends<ExportSemaphoreWin32HandleInfoKHR, SemaphoreCreateInfo>{ enum { value = true }; };
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-#ifdef VK_USE_PLATFORM_ANDROID_KHR
- template <> struct StructExtends<ExternalFormatANDROID, ImageCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<ExternalFormatANDROID, SamplerYcbcrConversionCreateInfo>{ enum { value = true }; };
-#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
- template <> struct StructExtends<ExternalImageFormatProperties, ImageFormatProperties2>{ enum { value = true }; };
- template <> struct StructExtends<ExternalMemoryBufferCreateInfo, BufferCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<ExternalMemoryImageCreateInfo, ImageCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<ExternalMemoryImageCreateInfoNV, ImageCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<FilterCubicImageViewImageFormatPropertiesEXT, ImageFormatProperties2>{ enum { value = true }; };
- template <> struct StructExtends<FragmentShadingRateAttachmentInfoKHR, SubpassDescription2>{ enum { value = true }; };
- template <> struct StructExtends<FramebufferAttachmentsCreateInfo, FramebufferCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<GraphicsPipelineShaderGroupsCreateInfoNV, GraphicsPipelineCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<ImageDrmFormatModifierExplicitCreateInfoEXT, ImageCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<ImageDrmFormatModifierListCreateInfoEXT, ImageCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<ImageFormatListCreateInfo, ImageCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<ImageFormatListCreateInfo, SwapchainCreateInfoKHR>{ enum { value = true }; };
- template <> struct StructExtends<ImageFormatListCreateInfo, PhysicalDeviceImageFormatInfo2>{ enum { value = true }; };
- template <> struct StructExtends<ImagePlaneMemoryRequirementsInfo, ImageMemoryRequirementsInfo2>{ enum { value = true }; };
- template <> struct StructExtends<ImageStencilUsageCreateInfo, ImageCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<ImageStencilUsageCreateInfo, PhysicalDeviceImageFormatInfo2>{ enum { value = true }; };
- template <> struct StructExtends<ImageSwapchainCreateInfoKHR, ImageCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<ImageViewASTCDecodeModeEXT, ImageViewCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<ImageViewUsageCreateInfo, ImageViewCreateInfo>{ enum { value = true }; };
-#ifdef VK_USE_PLATFORM_ANDROID_KHR
- template <> struct StructExtends<ImportAndroidHardwareBufferInfoANDROID, MemoryAllocateInfo>{ enum { value = true }; };
-#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
- template <> struct StructExtends<ImportMemoryFdInfoKHR, MemoryAllocateInfo>{ enum { value = true }; };
- template <> struct StructExtends<ImportMemoryHostPointerInfoEXT, MemoryAllocateInfo>{ enum { value = true }; };
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- template <> struct StructExtends<ImportMemoryWin32HandleInfoKHR, MemoryAllocateInfo>{ enum { value = true }; };
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- template <> struct StructExtends<ImportMemoryWin32HandleInfoNV, MemoryAllocateInfo>{ enum { value = true }; };
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
- template <> struct StructExtends<MemoryAllocateFlagsInfo, MemoryAllocateInfo>{ enum { value = true }; };
- template <> struct StructExtends<MemoryDedicatedAllocateInfo, MemoryAllocateInfo>{ enum { value = true }; };
- template <> struct StructExtends<MemoryDedicatedRequirements, MemoryRequirements2>{ enum { value = true }; };
- template <> struct StructExtends<MemoryOpaqueCaptureAddressAllocateInfo, MemoryAllocateInfo>{ enum { value = true }; };
- template <> struct StructExtends<MemoryPriorityAllocateInfoEXT, MemoryAllocateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PerformanceQuerySubmitInfoKHR, SubmitInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDevice16BitStorageFeatures, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDevice16BitStorageFeatures, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDevice4444FormatsFeaturesEXT, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDevice4444FormatsFeaturesEXT, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDevice8BitStorageFeatures, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDevice8BitStorageFeatures, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceASTCDecodeFeaturesEXT, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceASTCDecodeFeaturesEXT, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceAccelerationStructureFeaturesKHR, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceAccelerationStructureFeaturesKHR, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceAccelerationStructurePropertiesKHR, PhysicalDeviceProperties2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceBlendOperationAdvancedFeaturesEXT, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceBlendOperationAdvancedFeaturesEXT, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceBlendOperationAdvancedPropertiesEXT, PhysicalDeviceProperties2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceBufferDeviceAddressFeatures, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceBufferDeviceAddressFeatures, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceBufferDeviceAddressFeaturesEXT, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceBufferDeviceAddressFeaturesEXT, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceCoherentMemoryFeaturesAMD, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceCoherentMemoryFeaturesAMD, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceComputeShaderDerivativesFeaturesNV, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceComputeShaderDerivativesFeaturesNV, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceConditionalRenderingFeaturesEXT, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceConditionalRenderingFeaturesEXT, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceConservativeRasterizationPropertiesEXT, PhysicalDeviceProperties2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceCooperativeMatrixFeaturesNV, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceCooperativeMatrixFeaturesNV, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceCooperativeMatrixPropertiesNV, PhysicalDeviceProperties2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceCornerSampledImageFeaturesNV, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceCornerSampledImageFeaturesNV, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceCoverageReductionModeFeaturesNV, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceCoverageReductionModeFeaturesNV, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceCustomBorderColorFeaturesEXT, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceCustomBorderColorFeaturesEXT, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceCustomBorderColorPropertiesEXT, PhysicalDeviceProperties2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceDepthClipEnableFeaturesEXT, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceDepthClipEnableFeaturesEXT, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceDepthStencilResolveProperties, PhysicalDeviceProperties2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceDescriptorIndexingFeatures, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceDescriptorIndexingFeatures, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceDescriptorIndexingProperties, PhysicalDeviceProperties2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceDeviceGeneratedCommandsFeaturesNV, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceDeviceGeneratedCommandsFeaturesNV, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceDeviceGeneratedCommandsPropertiesNV, PhysicalDeviceProperties2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceDeviceMemoryReportFeaturesEXT, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceDeviceMemoryReportFeaturesEXT, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceDiagnosticsConfigFeaturesNV, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceDiagnosticsConfigFeaturesNV, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceDiscardRectanglePropertiesEXT, PhysicalDeviceProperties2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceDriverProperties, PhysicalDeviceProperties2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceExclusiveScissorFeaturesNV, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceExclusiveScissorFeaturesNV, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceExtendedDynamicStateFeaturesEXT, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceExtendedDynamicStateFeaturesEXT, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceExternalImageFormatInfo, PhysicalDeviceImageFormatInfo2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceExternalMemoryHostPropertiesEXT, PhysicalDeviceProperties2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceFeatures2, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceFloatControlsProperties, PhysicalDeviceProperties2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceFragmentDensityMap2FeaturesEXT, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceFragmentDensityMap2FeaturesEXT, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceFragmentDensityMap2PropertiesEXT, PhysicalDeviceProperties2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceFragmentDensityMapFeaturesEXT, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceFragmentDensityMapFeaturesEXT, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceFragmentDensityMapPropertiesEXT, PhysicalDeviceProperties2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceFragmentShaderBarycentricFeaturesNV, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceFragmentShaderBarycentricFeaturesNV, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceFragmentShaderInterlockFeaturesEXT, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceFragmentShaderInterlockFeaturesEXT, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceFragmentShadingRateEnumsFeaturesNV, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceFragmentShadingRateEnumsFeaturesNV, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceFragmentShadingRateEnumsPropertiesNV, PhysicalDeviceProperties2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceFragmentShadingRateFeaturesKHR, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceFragmentShadingRateFeaturesKHR, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceFragmentShadingRatePropertiesKHR, PhysicalDeviceProperties2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceHostQueryResetFeatures, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceHostQueryResetFeatures, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceIDProperties, PhysicalDeviceProperties2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceImageDrmFormatModifierInfoEXT, PhysicalDeviceImageFormatInfo2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceImageRobustnessFeaturesEXT, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceImageRobustnessFeaturesEXT, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceImageViewImageFormatInfoEXT, PhysicalDeviceImageFormatInfo2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceImagelessFramebufferFeatures, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceImagelessFramebufferFeatures, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceIndexTypeUint8FeaturesEXT, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceIndexTypeUint8FeaturesEXT, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceInlineUniformBlockFeaturesEXT, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceInlineUniformBlockFeaturesEXT, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceInlineUniformBlockPropertiesEXT, PhysicalDeviceProperties2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceLineRasterizationFeaturesEXT, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceLineRasterizationFeaturesEXT, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceLineRasterizationPropertiesEXT, PhysicalDeviceProperties2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceMaintenance3Properties, PhysicalDeviceProperties2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceMemoryBudgetPropertiesEXT, PhysicalDeviceMemoryProperties2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceMemoryPriorityFeaturesEXT, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceMemoryPriorityFeaturesEXT, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceMeshShaderFeaturesNV, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceMeshShaderFeaturesNV, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceMeshShaderPropertiesNV, PhysicalDeviceProperties2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceMultiviewFeatures, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceMultiviewFeatures, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX, PhysicalDeviceProperties2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceMultiviewProperties, PhysicalDeviceProperties2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDevicePCIBusInfoPropertiesEXT, PhysicalDeviceProperties2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDevicePerformanceQueryFeaturesKHR, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDevicePerformanceQueryFeaturesKHR, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDevicePerformanceQueryPropertiesKHR, PhysicalDeviceProperties2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDevicePipelineCreationCacheControlFeaturesEXT, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDevicePipelineCreationCacheControlFeaturesEXT, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDevicePipelineExecutablePropertiesFeaturesKHR, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDevicePipelineExecutablePropertiesFeaturesKHR, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDevicePointClippingProperties, PhysicalDeviceProperties2>{ enum { value = true }; };
-#ifdef VK_ENABLE_BETA_EXTENSIONS
- template <> struct StructExtends<PhysicalDevicePortabilitySubsetFeaturesKHR, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDevicePortabilitySubsetFeaturesKHR, DeviceCreateInfo>{ enum { value = true }; };
-#endif /*VK_ENABLE_BETA_EXTENSIONS*/
-#ifdef VK_ENABLE_BETA_EXTENSIONS
- template <> struct StructExtends<PhysicalDevicePortabilitySubsetPropertiesKHR, PhysicalDeviceProperties2>{ enum { value = true }; };
-#endif /*VK_ENABLE_BETA_EXTENSIONS*/
- template <> struct StructExtends<PhysicalDevicePrivateDataFeaturesEXT, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDevicePrivateDataFeaturesEXT, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceProtectedMemoryFeatures, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceProtectedMemoryFeatures, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceProtectedMemoryProperties, PhysicalDeviceProperties2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDevicePushDescriptorPropertiesKHR, PhysicalDeviceProperties2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceRayQueryFeaturesKHR, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceRayQueryFeaturesKHR, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceRayTracingPipelineFeaturesKHR, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceRayTracingPipelineFeaturesKHR, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceRayTracingPipelinePropertiesKHR, PhysicalDeviceProperties2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceRayTracingPropertiesNV, PhysicalDeviceProperties2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceRepresentativeFragmentTestFeaturesNV, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceRepresentativeFragmentTestFeaturesNV, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceRobustness2FeaturesEXT, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceRobustness2FeaturesEXT, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceRobustness2PropertiesEXT, PhysicalDeviceProperties2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceSampleLocationsPropertiesEXT, PhysicalDeviceProperties2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceSamplerFilterMinmaxProperties, PhysicalDeviceProperties2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceSamplerYcbcrConversionFeatures, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceSamplerYcbcrConversionFeatures, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceScalarBlockLayoutFeatures, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceScalarBlockLayoutFeatures, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceSeparateDepthStencilLayoutsFeatures, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceSeparateDepthStencilLayoutsFeatures, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceShaderAtomicFloatFeaturesEXT, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceShaderAtomicFloatFeaturesEXT, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceShaderAtomicInt64Features, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceShaderAtomicInt64Features, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceShaderClockFeaturesKHR, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceShaderClockFeaturesKHR, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceShaderCoreProperties2AMD, PhysicalDeviceProperties2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceShaderCorePropertiesAMD, PhysicalDeviceProperties2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceShaderDrawParametersFeatures, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceShaderDrawParametersFeatures, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceShaderFloat16Int8Features, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceShaderFloat16Int8Features, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceShaderImageAtomicInt64FeaturesEXT, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceShaderImageAtomicInt64FeaturesEXT, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceShaderImageFootprintFeaturesNV, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceShaderImageFootprintFeaturesNV, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceShaderSMBuiltinsFeaturesNV, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceShaderSMBuiltinsFeaturesNV, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceShaderSMBuiltinsPropertiesNV, PhysicalDeviceProperties2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceShaderSubgroupExtendedTypesFeatures, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceShaderSubgroupExtendedTypesFeatures, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceShaderTerminateInvocationFeaturesKHR, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceShaderTerminateInvocationFeaturesKHR, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceShadingRateImageFeaturesNV, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceShadingRateImageFeaturesNV, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceShadingRateImagePropertiesNV, PhysicalDeviceProperties2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceSubgroupProperties, PhysicalDeviceProperties2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceSubgroupSizeControlFeaturesEXT, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceSubgroupSizeControlFeaturesEXT, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceSubgroupSizeControlPropertiesEXT, PhysicalDeviceProperties2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceTexelBufferAlignmentFeaturesEXT, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceTexelBufferAlignmentFeaturesEXT, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceTexelBufferAlignmentPropertiesEXT, PhysicalDeviceProperties2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceTimelineSemaphoreFeatures, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceTimelineSemaphoreFeatures, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceTimelineSemaphoreProperties, PhysicalDeviceProperties2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceTransformFeedbackFeaturesEXT, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceTransformFeedbackFeaturesEXT, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceTransformFeedbackPropertiesEXT, PhysicalDeviceProperties2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceUniformBufferStandardLayoutFeatures, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceUniformBufferStandardLayoutFeatures, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceVariablePointersFeatures, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceVariablePointersFeatures, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceVertexAttributeDivisorFeaturesEXT, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceVertexAttributeDivisorFeaturesEXT, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceVertexAttributeDivisorPropertiesEXT, PhysicalDeviceProperties2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceVulkan11Features, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceVulkan11Features, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceVulkan11Properties, PhysicalDeviceProperties2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceVulkan12Features, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceVulkan12Features, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceVulkan12Properties, PhysicalDeviceProperties2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceVulkanMemoryModelFeatures, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceVulkanMemoryModelFeatures, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceYcbcrImageArraysFeaturesEXT, PhysicalDeviceFeatures2>{ enum { value = true }; };
- template <> struct StructExtends<PhysicalDeviceYcbcrImageArraysFeaturesEXT, DeviceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PipelineColorBlendAdvancedStateCreateInfoEXT, PipelineColorBlendStateCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PipelineCompilerControlCreateInfoAMD, GraphicsPipelineCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PipelineCompilerControlCreateInfoAMD, ComputePipelineCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PipelineCoverageModulationStateCreateInfoNV, PipelineMultisampleStateCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PipelineCoverageReductionStateCreateInfoNV, PipelineMultisampleStateCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PipelineCoverageToColorStateCreateInfoNV, PipelineMultisampleStateCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PipelineCreationFeedbackCreateInfoEXT, GraphicsPipelineCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PipelineCreationFeedbackCreateInfoEXT, ComputePipelineCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PipelineCreationFeedbackCreateInfoEXT, RayTracingPipelineCreateInfoNV>{ enum { value = true }; };
- template <> struct StructExtends<PipelineCreationFeedbackCreateInfoEXT, RayTracingPipelineCreateInfoKHR>{ enum { value = true }; };
- template <> struct StructExtends<PipelineDiscardRectangleStateCreateInfoEXT, GraphicsPipelineCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PipelineFragmentShadingRateEnumStateCreateInfoNV, GraphicsPipelineCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PipelineFragmentShadingRateStateCreateInfoKHR, GraphicsPipelineCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PipelineRasterizationConservativeStateCreateInfoEXT, PipelineRasterizationStateCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PipelineRasterizationDepthClipStateCreateInfoEXT, PipelineRasterizationStateCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PipelineRasterizationLineStateCreateInfoEXT, PipelineRasterizationStateCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PipelineRasterizationStateRasterizationOrderAMD, PipelineRasterizationStateCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PipelineRasterizationStateStreamCreateInfoEXT, PipelineRasterizationStateCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PipelineRepresentativeFragmentTestStateCreateInfoNV, GraphicsPipelineCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PipelineSampleLocationsStateCreateInfoEXT, PipelineMultisampleStateCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT, PipelineShaderStageCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PipelineTessellationDomainOriginStateCreateInfo, PipelineTessellationStateCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PipelineVertexInputDivisorStateCreateInfoEXT, PipelineVertexInputStateCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PipelineViewportCoarseSampleOrderStateCreateInfoNV, PipelineViewportStateCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PipelineViewportExclusiveScissorStateCreateInfoNV, PipelineViewportStateCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PipelineViewportShadingRateImageStateCreateInfoNV, PipelineViewportStateCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PipelineViewportSwizzleStateCreateInfoNV, PipelineViewportStateCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<PipelineViewportWScalingStateCreateInfoNV, PipelineViewportStateCreateInfo>{ enum { value = true }; };
-#ifdef VK_USE_PLATFORM_GGP
- template <> struct StructExtends<PresentFrameTokenGGP, PresentInfoKHR>{ enum { value = true }; };
-#endif /*VK_USE_PLATFORM_GGP*/
- template <> struct StructExtends<PresentRegionsKHR, PresentInfoKHR>{ enum { value = true }; };
- template <> struct StructExtends<PresentTimesInfoGOOGLE, PresentInfoKHR>{ enum { value = true }; };
- template <> struct StructExtends<ProtectedSubmitInfo, SubmitInfo>{ enum { value = true }; };
- template <> struct StructExtends<QueryPoolPerformanceCreateInfoKHR, QueryPoolCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<QueryPoolPerformanceQueryCreateInfoINTEL, QueryPoolCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<QueueFamilyCheckpointPropertiesNV, QueueFamilyProperties2>{ enum { value = true }; };
- template <> struct StructExtends<RenderPassAttachmentBeginInfo, RenderPassBeginInfo>{ enum { value = true }; };
- template <> struct StructExtends<RenderPassFragmentDensityMapCreateInfoEXT, RenderPassCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<RenderPassFragmentDensityMapCreateInfoEXT, RenderPassCreateInfo2>{ enum { value = true }; };
- template <> struct StructExtends<RenderPassInputAttachmentAspectCreateInfo, RenderPassCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<RenderPassMultiviewCreateInfo, RenderPassCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<RenderPassSampleLocationsBeginInfoEXT, RenderPassBeginInfo>{ enum { value = true }; };
- template <> struct StructExtends<RenderPassTransformBeginInfoQCOM, RenderPassBeginInfo>{ enum { value = true }; };
- template <> struct StructExtends<SampleLocationsInfoEXT, ImageMemoryBarrier>{ enum { value = true }; };
- template <> struct StructExtends<SamplerCustomBorderColorCreateInfoEXT, SamplerCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<SamplerReductionModeCreateInfo, SamplerCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<SamplerYcbcrConversionImageFormatProperties, ImageFormatProperties2>{ enum { value = true }; };
- template <> struct StructExtends<SamplerYcbcrConversionInfo, SamplerCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<SamplerYcbcrConversionInfo, ImageViewCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<SemaphoreTypeCreateInfo, SemaphoreCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<SemaphoreTypeCreateInfo, PhysicalDeviceExternalSemaphoreInfo>{ enum { value = true }; };
- template <> struct StructExtends<ShaderModuleValidationCacheCreateInfoEXT, ShaderModuleCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<SharedPresentSurfaceCapabilitiesKHR, SurfaceCapabilities2KHR>{ enum { value = true }; };
- template <> struct StructExtends<SubpassDescriptionDepthStencilResolve, SubpassDescription2>{ enum { value = true }; };
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- template <> struct StructExtends<SurfaceCapabilitiesFullScreenExclusiveEXT, SurfaceCapabilities2KHR>{ enum { value = true }; };
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- template <> struct StructExtends<SurfaceFullScreenExclusiveInfoEXT, PhysicalDeviceSurfaceInfo2KHR>{ enum { value = true }; };
- template <> struct StructExtends<SurfaceFullScreenExclusiveInfoEXT, SwapchainCreateInfoKHR>{ enum { value = true }; };
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- template <> struct StructExtends<SurfaceFullScreenExclusiveWin32InfoEXT, PhysicalDeviceSurfaceInfo2KHR>{ enum { value = true }; };
- template <> struct StructExtends<SurfaceFullScreenExclusiveWin32InfoEXT, SwapchainCreateInfoKHR>{ enum { value = true }; };
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
- template <> struct StructExtends<SurfaceProtectedCapabilitiesKHR, SurfaceCapabilities2KHR>{ enum { value = true }; };
- template <> struct StructExtends<SwapchainCounterCreateInfoEXT, SwapchainCreateInfoKHR>{ enum { value = true }; };
- template <> struct StructExtends<SwapchainDisplayNativeHdrCreateInfoAMD, SwapchainCreateInfoKHR>{ enum { value = true }; };
- template <> struct StructExtends<TextureLODGatherFormatPropertiesAMD, ImageFormatProperties2>{ enum { value = true }; };
- template <> struct StructExtends<TimelineSemaphoreSubmitInfo, SubmitInfo>{ enum { value = true }; };
- template <> struct StructExtends<TimelineSemaphoreSubmitInfo, BindSparseInfo>{ enum { value = true }; };
- template <> struct StructExtends<ValidationFeaturesEXT, InstanceCreateInfo>{ enum { value = true }; };
- template <> struct StructExtends<ValidationFlagsEXT, InstanceCreateInfo>{ enum { value = true }; };
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- template <> struct StructExtends<Win32KeyedMutexAcquireReleaseInfoKHR, SubmitInfo>{ enum { value = true }; };
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- template <> struct StructExtends<Win32KeyedMutexAcquireReleaseInfoNV, SubmitInfo>{ enum { value = true }; };
-#endif /*VK_USE_PLATFORM_WIN32_KHR*/
- template <> struct StructExtends<WriteDescriptorSetAccelerationStructureKHR, WriteDescriptorSet>{ enum { value = true }; };
- template <> struct StructExtends<WriteDescriptorSetAccelerationStructureNV, WriteDescriptorSet>{ enum { value = true }; };
- template <> struct StructExtends<WriteDescriptorSetInlineUniformBlockEXT, WriteDescriptorSet>{ enum { value = true }; };
-
#if VULKAN_HPP_ENABLE_DYNAMIC_LOADER_TOOL
class DynamicLoader
{
@@ -92342,7 +9994,7 @@ namespace VULKAN_HPP_NAMESPACE
{
if ( !vulkanLibraryName.empty() )
{
-# if defined( __linux__ ) || defined( __APPLE__ )
+# if defined( __unix__ ) || defined( __APPLE__ ) || defined( __QNXNTO__ ) || defined( __Fuchsia__ )
m_library = dlopen( vulkanLibraryName.c_str(), RTLD_NOW | RTLD_LOCAL );
# elif defined( _WIN32 )
m_library = ::LoadLibraryA( vulkanLibraryName.c_str() );
@@ -92352,7 +10004,7 @@ namespace VULKAN_HPP_NAMESPACE
}
else
{
-# if defined( __linux__ )
+# if defined( __unix__ ) || defined( __QNXNTO__ ) || defined( __Fuchsia__ )
m_library = dlopen( "libvulkan.so", RTLD_NOW | RTLD_LOCAL );
if ( m_library == nullptr )
{
@@ -92367,27 +10019,28 @@ namespace VULKAN_HPP_NAMESPACE
# endif
}
-#ifndef VULKAN_HPP_NO_EXCEPTIONS
+# ifndef VULKAN_HPP_NO_EXCEPTIONS
if ( m_library == nullptr )
{
- // NOTE there should be an InitializationFailedError, but msvc insists on the symbol does not exist within the scope of this function.
+ // NOTE there should be an InitializationFailedError, but msvc insists on the symbol does not exist within the
+ // scope of this function.
throw std::runtime_error( "Failed to load vulkan library!" );
}
-#endif
+# endif
}
- DynamicLoader( DynamicLoader const& ) = delete;
+ DynamicLoader( DynamicLoader const & ) = delete;
- DynamicLoader( DynamicLoader && other ) VULKAN_HPP_NOEXCEPT : m_library(other.m_library)
+ DynamicLoader( DynamicLoader && other ) VULKAN_HPP_NOEXCEPT : m_library( other.m_library )
{
other.m_library = nullptr;
}
- DynamicLoader &operator=( DynamicLoader const& ) = delete;
+ DynamicLoader & operator=( DynamicLoader const & ) = delete;
- DynamicLoader &operator=( DynamicLoader && other ) VULKAN_HPP_NOEXCEPT
+ DynamicLoader & operator=( DynamicLoader && other ) VULKAN_HPP_NOEXCEPT
{
- std::swap(m_library, other.m_library);
+ std::swap( m_library, other.m_library );
return *this;
}
@@ -92395,7 +10048,7 @@ namespace VULKAN_HPP_NAMESPACE
{
if ( m_library )
{
-# if defined( __linux__ ) || defined( __APPLE__ )
+# if defined( __unix__ ) || defined( __APPLE__ ) || defined( __QNXNTO__ ) || defined( __Fuchsia__ )
dlclose( m_library );
# elif defined( _WIN32 )
::FreeLibrary( m_library );
@@ -92406,21 +10059,24 @@ namespace VULKAN_HPP_NAMESPACE
}
template <typename T>
- T getProcAddress( const char* function ) const VULKAN_HPP_NOEXCEPT
+ T getProcAddress( const char * function ) const VULKAN_HPP_NOEXCEPT
{
-# if defined( __linux__ ) || defined( __APPLE__ )
+# if defined( __unix__ ) || defined( __APPLE__ ) || defined( __QNXNTO__ ) || defined( __Fuchsia__ )
return (T)dlsym( m_library, function );
# elif defined( _WIN32 )
- return (T)::GetProcAddress( m_library, function );
+ return ( T )::GetProcAddress( m_library, function );
# else
# error unsupported platform
# endif
}
- bool success() const VULKAN_HPP_NOEXCEPT { return m_library != nullptr; }
+ bool success() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_library != nullptr;
+ }
private:
-# if defined( __linux__ ) || defined( __APPLE__ )
+# if defined( __unix__ ) || defined( __APPLE__ ) || defined( __QNXNTO__ ) || defined( __Fuchsia__ )
void * m_library;
# elif defined( _WIN32 )
::HINSTANCE m_library;
@@ -92430,1863 +10086,2972 @@ namespace VULKAN_HPP_NAMESPACE
};
#endif
-
class DispatchLoaderDynamic
{
public:
-#ifdef VK_USE_PLATFORM_WIN32_KHR
+ using PFN_dummy = void ( * )();
+
+ PFN_vkAcquireDrmDisplayEXT vkAcquireDrmDisplayEXT = 0;
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
PFN_vkAcquireFullScreenExclusiveModeEXT vkAcquireFullScreenExclusiveModeEXT = 0;
+#else
+ PFN_dummy placeholder_dont_call_vkAcquireFullScreenExclusiveModeEXT = 0;
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
- PFN_vkAcquireNextImage2KHR vkAcquireNextImage2KHR = 0;
- PFN_vkAcquireNextImageKHR vkAcquireNextImageKHR = 0;
+ PFN_vkAcquireNextImage2KHR vkAcquireNextImage2KHR = 0;
+ PFN_vkAcquireNextImageKHR vkAcquireNextImageKHR = 0;
PFN_vkAcquirePerformanceConfigurationINTEL vkAcquirePerformanceConfigurationINTEL = 0;
- PFN_vkAcquireProfilingLockKHR vkAcquireProfilingLockKHR = 0;
-#ifdef VK_USE_PLATFORM_XLIB_XRANDR_EXT
+ PFN_vkAcquireProfilingLockKHR vkAcquireProfilingLockKHR = 0;
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ PFN_vkAcquireWinrtDisplayNV vkAcquireWinrtDisplayNV = 0;
+#else
+ PFN_dummy placeholder_dont_call_vkAcquireWinrtDisplayNV = 0;
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+#if defined( VK_USE_PLATFORM_XLIB_XRANDR_EXT )
PFN_vkAcquireXlibDisplayEXT vkAcquireXlibDisplayEXT = 0;
+#else
+ PFN_dummy placeholder_dont_call_vkAcquireXlibDisplayEXT = 0;
#endif /*VK_USE_PLATFORM_XLIB_XRANDR_EXT*/
- PFN_vkAllocateCommandBuffers vkAllocateCommandBuffers = 0;
- PFN_vkAllocateDescriptorSets vkAllocateDescriptorSets = 0;
- PFN_vkAllocateMemory vkAllocateMemory = 0;
- PFN_vkBeginCommandBuffer vkBeginCommandBuffer = 0;
+ PFN_vkAllocateCommandBuffers vkAllocateCommandBuffers = 0;
+ PFN_vkAllocateDescriptorSets vkAllocateDescriptorSets = 0;
+ PFN_vkAllocateMemory vkAllocateMemory = 0;
+ PFN_vkBeginCommandBuffer vkBeginCommandBuffer = 0;
PFN_vkBindAccelerationStructureMemoryNV vkBindAccelerationStructureMemoryNV = 0;
- PFN_vkBindBufferMemory vkBindBufferMemory = 0;
- PFN_vkBindBufferMemory2KHR vkBindBufferMemory2KHR = 0;
- PFN_vkBindBufferMemory2 vkBindBufferMemory2 = 0;
- PFN_vkBindImageMemory vkBindImageMemory = 0;
- PFN_vkBindImageMemory2KHR vkBindImageMemory2KHR = 0;
- PFN_vkBindImageMemory2 vkBindImageMemory2 = 0;
- PFN_vkBuildAccelerationStructuresKHR vkBuildAccelerationStructuresKHR = 0;
+ PFN_vkBindBufferMemory vkBindBufferMemory = 0;
+ PFN_vkBindBufferMemory2 vkBindBufferMemory2 = 0;
+ PFN_vkBindBufferMemory2KHR vkBindBufferMemory2KHR = 0;
+ PFN_vkBindImageMemory vkBindImageMemory = 0;
+ PFN_vkBindImageMemory2 vkBindImageMemory2 = 0;
+ PFN_vkBindImageMemory2KHR vkBindImageMemory2KHR = 0;
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ PFN_vkBindVideoSessionMemoryKHR vkBindVideoSessionMemoryKHR = 0;
+#else
+ PFN_dummy placeholder_dont_call_vkBindVideoSessionMemoryKHR = 0;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ PFN_vkBuildAccelerationStructuresKHR vkBuildAccelerationStructuresKHR = 0;
PFN_vkCmdBeginConditionalRenderingEXT vkCmdBeginConditionalRenderingEXT = 0;
- PFN_vkCmdBeginDebugUtilsLabelEXT vkCmdBeginDebugUtilsLabelEXT = 0;
- PFN_vkCmdBeginQuery vkCmdBeginQuery = 0;
- PFN_vkCmdBeginQueryIndexedEXT vkCmdBeginQueryIndexedEXT = 0;
- PFN_vkCmdBeginRenderPass vkCmdBeginRenderPass = 0;
- PFN_vkCmdBeginRenderPass2KHR vkCmdBeginRenderPass2KHR = 0;
- PFN_vkCmdBeginRenderPass2 vkCmdBeginRenderPass2 = 0;
- PFN_vkCmdBeginTransformFeedbackEXT vkCmdBeginTransformFeedbackEXT = 0;
- PFN_vkCmdBindDescriptorSets vkCmdBindDescriptorSets = 0;
- PFN_vkCmdBindIndexBuffer vkCmdBindIndexBuffer = 0;
- PFN_vkCmdBindPipeline vkCmdBindPipeline = 0;
- PFN_vkCmdBindPipelineShaderGroupNV vkCmdBindPipelineShaderGroupNV = 0;
- PFN_vkCmdBindShadingRateImageNV vkCmdBindShadingRateImageNV = 0;
- PFN_vkCmdBindTransformFeedbackBuffersEXT vkCmdBindTransformFeedbackBuffersEXT = 0;
- PFN_vkCmdBindVertexBuffers vkCmdBindVertexBuffers = 0;
- PFN_vkCmdBindVertexBuffers2EXT vkCmdBindVertexBuffers2EXT = 0;
- PFN_vkCmdBlitImage vkCmdBlitImage = 0;
- PFN_vkCmdBlitImage2KHR vkCmdBlitImage2KHR = 0;
- PFN_vkCmdBuildAccelerationStructureNV vkCmdBuildAccelerationStructureNV = 0;
+ PFN_vkCmdBeginDebugUtilsLabelEXT vkCmdBeginDebugUtilsLabelEXT = 0;
+ PFN_vkCmdBeginQuery vkCmdBeginQuery = 0;
+ PFN_vkCmdBeginQueryIndexedEXT vkCmdBeginQueryIndexedEXT = 0;
+ PFN_vkCmdBeginRenderPass vkCmdBeginRenderPass = 0;
+ PFN_vkCmdBeginRenderPass2 vkCmdBeginRenderPass2 = 0;
+ PFN_vkCmdBeginRenderPass2KHR vkCmdBeginRenderPass2KHR = 0;
+ PFN_vkCmdBeginTransformFeedbackEXT vkCmdBeginTransformFeedbackEXT = 0;
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ PFN_vkCmdBeginVideoCodingKHR vkCmdBeginVideoCodingKHR = 0;
+#else
+ PFN_dummy placeholder_dont_call_vkCmdBeginVideoCodingKHR = 0;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ PFN_vkCmdBindDescriptorSets vkCmdBindDescriptorSets = 0;
+ PFN_vkCmdBindIndexBuffer vkCmdBindIndexBuffer = 0;
+ PFN_vkCmdBindPipeline vkCmdBindPipeline = 0;
+ PFN_vkCmdBindPipelineShaderGroupNV vkCmdBindPipelineShaderGroupNV = 0;
+ PFN_vkCmdBindShadingRateImageNV vkCmdBindShadingRateImageNV = 0;
+ PFN_vkCmdBindTransformFeedbackBuffersEXT vkCmdBindTransformFeedbackBuffersEXT = 0;
+ PFN_vkCmdBindVertexBuffers vkCmdBindVertexBuffers = 0;
+ PFN_vkCmdBindVertexBuffers2EXT vkCmdBindVertexBuffers2EXT = 0;
+ PFN_vkCmdBlitImage vkCmdBlitImage = 0;
+ PFN_vkCmdBlitImage2KHR vkCmdBlitImage2KHR = 0;
+ PFN_vkCmdBuildAccelerationStructureNV vkCmdBuildAccelerationStructureNV = 0;
PFN_vkCmdBuildAccelerationStructuresIndirectKHR vkCmdBuildAccelerationStructuresIndirectKHR = 0;
- PFN_vkCmdBuildAccelerationStructuresKHR vkCmdBuildAccelerationStructuresKHR = 0;
- PFN_vkCmdClearAttachments vkCmdClearAttachments = 0;
- PFN_vkCmdClearColorImage vkCmdClearColorImage = 0;
- PFN_vkCmdClearDepthStencilImage vkCmdClearDepthStencilImage = 0;
- PFN_vkCmdCopyAccelerationStructureKHR vkCmdCopyAccelerationStructureKHR = 0;
- PFN_vkCmdCopyAccelerationStructureNV vkCmdCopyAccelerationStructureNV = 0;
+ PFN_vkCmdBuildAccelerationStructuresKHR vkCmdBuildAccelerationStructuresKHR = 0;
+ PFN_vkCmdClearAttachments vkCmdClearAttachments = 0;
+ PFN_vkCmdClearColorImage vkCmdClearColorImage = 0;
+ PFN_vkCmdClearDepthStencilImage vkCmdClearDepthStencilImage = 0;
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ PFN_vkCmdControlVideoCodingKHR vkCmdControlVideoCodingKHR = 0;
+#else
+ PFN_dummy placeholder_dont_call_vkCmdControlVideoCodingKHR = 0;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ PFN_vkCmdCopyAccelerationStructureKHR vkCmdCopyAccelerationStructureKHR = 0;
+ PFN_vkCmdCopyAccelerationStructureNV vkCmdCopyAccelerationStructureNV = 0;
PFN_vkCmdCopyAccelerationStructureToMemoryKHR vkCmdCopyAccelerationStructureToMemoryKHR = 0;
- PFN_vkCmdCopyBuffer vkCmdCopyBuffer = 0;
- PFN_vkCmdCopyBuffer2KHR vkCmdCopyBuffer2KHR = 0;
- PFN_vkCmdCopyBufferToImage vkCmdCopyBufferToImage = 0;
- PFN_vkCmdCopyBufferToImage2KHR vkCmdCopyBufferToImage2KHR = 0;
- PFN_vkCmdCopyImage vkCmdCopyImage = 0;
- PFN_vkCmdCopyImage2KHR vkCmdCopyImage2KHR = 0;
- PFN_vkCmdCopyImageToBuffer vkCmdCopyImageToBuffer = 0;
- PFN_vkCmdCopyImageToBuffer2KHR vkCmdCopyImageToBuffer2KHR = 0;
+ PFN_vkCmdCopyBuffer vkCmdCopyBuffer = 0;
+ PFN_vkCmdCopyBuffer2KHR vkCmdCopyBuffer2KHR = 0;
+ PFN_vkCmdCopyBufferToImage vkCmdCopyBufferToImage = 0;
+ PFN_vkCmdCopyBufferToImage2KHR vkCmdCopyBufferToImage2KHR = 0;
+ PFN_vkCmdCopyImage vkCmdCopyImage = 0;
+ PFN_vkCmdCopyImage2KHR vkCmdCopyImage2KHR = 0;
+ PFN_vkCmdCopyImageToBuffer vkCmdCopyImageToBuffer = 0;
+ PFN_vkCmdCopyImageToBuffer2KHR vkCmdCopyImageToBuffer2KHR = 0;
PFN_vkCmdCopyMemoryToAccelerationStructureKHR vkCmdCopyMemoryToAccelerationStructureKHR = 0;
- PFN_vkCmdCopyQueryPoolResults vkCmdCopyQueryPoolResults = 0;
- PFN_vkCmdDebugMarkerBeginEXT vkCmdDebugMarkerBeginEXT = 0;
- PFN_vkCmdDebugMarkerEndEXT vkCmdDebugMarkerEndEXT = 0;
- PFN_vkCmdDebugMarkerInsertEXT vkCmdDebugMarkerInsertEXT = 0;
- PFN_vkCmdDispatch vkCmdDispatch = 0;
- PFN_vkCmdDispatchBaseKHR vkCmdDispatchBaseKHR = 0;
- PFN_vkCmdDispatchBase vkCmdDispatchBase = 0;
- PFN_vkCmdDispatchIndirect vkCmdDispatchIndirect = 0;
- PFN_vkCmdDraw vkCmdDraw = 0;
- PFN_vkCmdDrawIndexed vkCmdDrawIndexed = 0;
- PFN_vkCmdDrawIndexedIndirect vkCmdDrawIndexedIndirect = 0;
- PFN_vkCmdDrawIndexedIndirectCountAMD vkCmdDrawIndexedIndirectCountAMD = 0;
- PFN_vkCmdDrawIndexedIndirectCountKHR vkCmdDrawIndexedIndirectCountKHR = 0;
- PFN_vkCmdDrawIndexedIndirectCount vkCmdDrawIndexedIndirectCount = 0;
- PFN_vkCmdDrawIndirect vkCmdDrawIndirect = 0;
- PFN_vkCmdDrawIndirectByteCountEXT vkCmdDrawIndirectByteCountEXT = 0;
- PFN_vkCmdDrawIndirectCountAMD vkCmdDrawIndirectCountAMD = 0;
- PFN_vkCmdDrawIndirectCountKHR vkCmdDrawIndirectCountKHR = 0;
- PFN_vkCmdDrawIndirectCount vkCmdDrawIndirectCount = 0;
+ PFN_vkCmdCopyQueryPoolResults vkCmdCopyQueryPoolResults = 0;
+ PFN_vkCmdCuLaunchKernelNVX vkCmdCuLaunchKernelNVX = 0;
+ PFN_vkCmdDebugMarkerBeginEXT vkCmdDebugMarkerBeginEXT = 0;
+ PFN_vkCmdDebugMarkerEndEXT vkCmdDebugMarkerEndEXT = 0;
+ PFN_vkCmdDebugMarkerInsertEXT vkCmdDebugMarkerInsertEXT = 0;
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ PFN_vkCmdDecodeVideoKHR vkCmdDecodeVideoKHR = 0;
+#else
+ PFN_dummy placeholder_dont_call_vkCmdDecodeVideoKHR = 0;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ PFN_vkCmdDispatch vkCmdDispatch = 0;
+ PFN_vkCmdDispatchBase vkCmdDispatchBase = 0;
+ PFN_vkCmdDispatchBaseKHR vkCmdDispatchBaseKHR = 0;
+ PFN_vkCmdDispatchIndirect vkCmdDispatchIndirect = 0;
+ PFN_vkCmdDraw vkCmdDraw = 0;
+ PFN_vkCmdDrawIndexed vkCmdDrawIndexed = 0;
+ PFN_vkCmdDrawIndexedIndirect vkCmdDrawIndexedIndirect = 0;
+ PFN_vkCmdDrawIndexedIndirectCount vkCmdDrawIndexedIndirectCount = 0;
+ PFN_vkCmdDrawIndexedIndirectCountAMD vkCmdDrawIndexedIndirectCountAMD = 0;
+ PFN_vkCmdDrawIndexedIndirectCountKHR vkCmdDrawIndexedIndirectCountKHR = 0;
+ PFN_vkCmdDrawIndirect vkCmdDrawIndirect = 0;
+ PFN_vkCmdDrawIndirectByteCountEXT vkCmdDrawIndirectByteCountEXT = 0;
+ PFN_vkCmdDrawIndirectCount vkCmdDrawIndirectCount = 0;
+ PFN_vkCmdDrawIndirectCountAMD vkCmdDrawIndirectCountAMD = 0;
+ PFN_vkCmdDrawIndirectCountKHR vkCmdDrawIndirectCountKHR = 0;
PFN_vkCmdDrawMeshTasksIndirectCountNV vkCmdDrawMeshTasksIndirectCountNV = 0;
- PFN_vkCmdDrawMeshTasksIndirectNV vkCmdDrawMeshTasksIndirectNV = 0;
- PFN_vkCmdDrawMeshTasksNV vkCmdDrawMeshTasksNV = 0;
+ PFN_vkCmdDrawMeshTasksIndirectNV vkCmdDrawMeshTasksIndirectNV = 0;
+ PFN_vkCmdDrawMeshTasksNV vkCmdDrawMeshTasksNV = 0;
+ PFN_vkCmdDrawMultiEXT vkCmdDrawMultiEXT = 0;
+ PFN_vkCmdDrawMultiIndexedEXT vkCmdDrawMultiIndexedEXT = 0;
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ PFN_vkCmdEncodeVideoKHR vkCmdEncodeVideoKHR = 0;
+#else
+ PFN_dummy placeholder_dont_call_vkCmdEncodeVideoKHR = 0;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
PFN_vkCmdEndConditionalRenderingEXT vkCmdEndConditionalRenderingEXT = 0;
- PFN_vkCmdEndDebugUtilsLabelEXT vkCmdEndDebugUtilsLabelEXT = 0;
- PFN_vkCmdEndQuery vkCmdEndQuery = 0;
- PFN_vkCmdEndQueryIndexedEXT vkCmdEndQueryIndexedEXT = 0;
- PFN_vkCmdEndRenderPass vkCmdEndRenderPass = 0;
- PFN_vkCmdEndRenderPass2KHR vkCmdEndRenderPass2KHR = 0;
- PFN_vkCmdEndRenderPass2 vkCmdEndRenderPass2 = 0;
- PFN_vkCmdEndTransformFeedbackEXT vkCmdEndTransformFeedbackEXT = 0;
- PFN_vkCmdExecuteCommands vkCmdExecuteCommands = 0;
- PFN_vkCmdExecuteGeneratedCommandsNV vkCmdExecuteGeneratedCommandsNV = 0;
- PFN_vkCmdFillBuffer vkCmdFillBuffer = 0;
- PFN_vkCmdInsertDebugUtilsLabelEXT vkCmdInsertDebugUtilsLabelEXT = 0;
- PFN_vkCmdNextSubpass vkCmdNextSubpass = 0;
- PFN_vkCmdNextSubpass2KHR vkCmdNextSubpass2KHR = 0;
- PFN_vkCmdNextSubpass2 vkCmdNextSubpass2 = 0;
- PFN_vkCmdPipelineBarrier vkCmdPipelineBarrier = 0;
- PFN_vkCmdPreprocessGeneratedCommandsNV vkCmdPreprocessGeneratedCommandsNV = 0;
- PFN_vkCmdPushConstants vkCmdPushConstants = 0;
- PFN_vkCmdPushDescriptorSetKHR vkCmdPushDescriptorSetKHR = 0;
- PFN_vkCmdPushDescriptorSetWithTemplateKHR vkCmdPushDescriptorSetWithTemplateKHR = 0;
- PFN_vkCmdResetEvent vkCmdResetEvent = 0;
- PFN_vkCmdResetQueryPool vkCmdResetQueryPool = 0;
- PFN_vkCmdResolveImage vkCmdResolveImage = 0;
- PFN_vkCmdResolveImage2KHR vkCmdResolveImage2KHR = 0;
- PFN_vkCmdSetBlendConstants vkCmdSetBlendConstants = 0;
- PFN_vkCmdSetCheckpointNV vkCmdSetCheckpointNV = 0;
- PFN_vkCmdSetCoarseSampleOrderNV vkCmdSetCoarseSampleOrderNV = 0;
- PFN_vkCmdSetCullModeEXT vkCmdSetCullModeEXT = 0;
- PFN_vkCmdSetDepthBias vkCmdSetDepthBias = 0;
- PFN_vkCmdSetDepthBounds vkCmdSetDepthBounds = 0;
- PFN_vkCmdSetDepthBoundsTestEnableEXT vkCmdSetDepthBoundsTestEnableEXT = 0;
- PFN_vkCmdSetDepthCompareOpEXT vkCmdSetDepthCompareOpEXT = 0;
- PFN_vkCmdSetDepthTestEnableEXT vkCmdSetDepthTestEnableEXT = 0;
- PFN_vkCmdSetDepthWriteEnableEXT vkCmdSetDepthWriteEnableEXT = 0;
- PFN_vkCmdSetDeviceMaskKHR vkCmdSetDeviceMaskKHR = 0;
- PFN_vkCmdSetDeviceMask vkCmdSetDeviceMask = 0;
- PFN_vkCmdSetDiscardRectangleEXT vkCmdSetDiscardRectangleEXT = 0;
- PFN_vkCmdSetEvent vkCmdSetEvent = 0;
- PFN_vkCmdSetExclusiveScissorNV vkCmdSetExclusiveScissorNV = 0;
- PFN_vkCmdSetFragmentShadingRateEnumNV vkCmdSetFragmentShadingRateEnumNV = 0;
- PFN_vkCmdSetFragmentShadingRateKHR vkCmdSetFragmentShadingRateKHR = 0;
- PFN_vkCmdSetFrontFaceEXT vkCmdSetFrontFaceEXT = 0;
- PFN_vkCmdSetLineStippleEXT vkCmdSetLineStippleEXT = 0;
- PFN_vkCmdSetLineWidth vkCmdSetLineWidth = 0;
- PFN_vkCmdSetPerformanceMarkerINTEL vkCmdSetPerformanceMarkerINTEL = 0;
- PFN_vkCmdSetPerformanceOverrideINTEL vkCmdSetPerformanceOverrideINTEL = 0;
- PFN_vkCmdSetPerformanceStreamMarkerINTEL vkCmdSetPerformanceStreamMarkerINTEL = 0;
- PFN_vkCmdSetPrimitiveTopologyEXT vkCmdSetPrimitiveTopologyEXT = 0;
- PFN_vkCmdSetRayTracingPipelineStackSizeKHR vkCmdSetRayTracingPipelineStackSizeKHR = 0;
- PFN_vkCmdSetSampleLocationsEXT vkCmdSetSampleLocationsEXT = 0;
- PFN_vkCmdSetScissor vkCmdSetScissor = 0;
- PFN_vkCmdSetScissorWithCountEXT vkCmdSetScissorWithCountEXT = 0;
- PFN_vkCmdSetStencilCompareMask vkCmdSetStencilCompareMask = 0;
- PFN_vkCmdSetStencilOpEXT vkCmdSetStencilOpEXT = 0;
- PFN_vkCmdSetStencilReference vkCmdSetStencilReference = 0;
- PFN_vkCmdSetStencilTestEnableEXT vkCmdSetStencilTestEnableEXT = 0;
- PFN_vkCmdSetStencilWriteMask vkCmdSetStencilWriteMask = 0;
- PFN_vkCmdSetViewport vkCmdSetViewport = 0;
- PFN_vkCmdSetViewportShadingRatePaletteNV vkCmdSetViewportShadingRatePaletteNV = 0;
- PFN_vkCmdSetViewportWScalingNV vkCmdSetViewportWScalingNV = 0;
- PFN_vkCmdSetViewportWithCountEXT vkCmdSetViewportWithCountEXT = 0;
- PFN_vkCmdTraceRaysIndirectKHR vkCmdTraceRaysIndirectKHR = 0;
- PFN_vkCmdTraceRaysKHR vkCmdTraceRaysKHR = 0;
- PFN_vkCmdTraceRaysNV vkCmdTraceRaysNV = 0;
- PFN_vkCmdUpdateBuffer vkCmdUpdateBuffer = 0;
- PFN_vkCmdWaitEvents vkCmdWaitEvents = 0;
+ PFN_vkCmdEndDebugUtilsLabelEXT vkCmdEndDebugUtilsLabelEXT = 0;
+ PFN_vkCmdEndQuery vkCmdEndQuery = 0;
+ PFN_vkCmdEndQueryIndexedEXT vkCmdEndQueryIndexedEXT = 0;
+ PFN_vkCmdEndRenderPass vkCmdEndRenderPass = 0;
+ PFN_vkCmdEndRenderPass2 vkCmdEndRenderPass2 = 0;
+ PFN_vkCmdEndRenderPass2KHR vkCmdEndRenderPass2KHR = 0;
+ PFN_vkCmdEndTransformFeedbackEXT vkCmdEndTransformFeedbackEXT = 0;
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ PFN_vkCmdEndVideoCodingKHR vkCmdEndVideoCodingKHR = 0;
+#else
+ PFN_dummy placeholder_dont_call_vkCmdEndVideoCodingKHR = 0;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ PFN_vkCmdExecuteCommands vkCmdExecuteCommands = 0;
+ PFN_vkCmdExecuteGeneratedCommandsNV vkCmdExecuteGeneratedCommandsNV = 0;
+ PFN_vkCmdFillBuffer vkCmdFillBuffer = 0;
+ PFN_vkCmdInsertDebugUtilsLabelEXT vkCmdInsertDebugUtilsLabelEXT = 0;
+ PFN_vkCmdNextSubpass vkCmdNextSubpass = 0;
+ PFN_vkCmdNextSubpass2 vkCmdNextSubpass2 = 0;
+ PFN_vkCmdNextSubpass2KHR vkCmdNextSubpass2KHR = 0;
+ PFN_vkCmdPipelineBarrier vkCmdPipelineBarrier = 0;
+ PFN_vkCmdPipelineBarrier2KHR vkCmdPipelineBarrier2KHR = 0;
+ PFN_vkCmdPreprocessGeneratedCommandsNV vkCmdPreprocessGeneratedCommandsNV = 0;
+ PFN_vkCmdPushConstants vkCmdPushConstants = 0;
+ PFN_vkCmdPushDescriptorSetKHR vkCmdPushDescriptorSetKHR = 0;
+ PFN_vkCmdPushDescriptorSetWithTemplateKHR vkCmdPushDescriptorSetWithTemplateKHR = 0;
+ PFN_vkCmdResetEvent vkCmdResetEvent = 0;
+ PFN_vkCmdResetEvent2KHR vkCmdResetEvent2KHR = 0;
+ PFN_vkCmdResetQueryPool vkCmdResetQueryPool = 0;
+ PFN_vkCmdResolveImage vkCmdResolveImage = 0;
+ PFN_vkCmdResolveImage2KHR vkCmdResolveImage2KHR = 0;
+ PFN_vkCmdSetBlendConstants vkCmdSetBlendConstants = 0;
+ PFN_vkCmdSetCheckpointNV vkCmdSetCheckpointNV = 0;
+ PFN_vkCmdSetCoarseSampleOrderNV vkCmdSetCoarseSampleOrderNV = 0;
+ PFN_vkCmdSetColorWriteEnableEXT vkCmdSetColorWriteEnableEXT = 0;
+ PFN_vkCmdSetCullModeEXT vkCmdSetCullModeEXT = 0;
+ PFN_vkCmdSetDepthBias vkCmdSetDepthBias = 0;
+ PFN_vkCmdSetDepthBiasEnableEXT vkCmdSetDepthBiasEnableEXT = 0;
+ PFN_vkCmdSetDepthBounds vkCmdSetDepthBounds = 0;
+ PFN_vkCmdSetDepthBoundsTestEnableEXT vkCmdSetDepthBoundsTestEnableEXT = 0;
+ PFN_vkCmdSetDepthCompareOpEXT vkCmdSetDepthCompareOpEXT = 0;
+ PFN_vkCmdSetDepthTestEnableEXT vkCmdSetDepthTestEnableEXT = 0;
+ PFN_vkCmdSetDepthWriteEnableEXT vkCmdSetDepthWriteEnableEXT = 0;
+ PFN_vkCmdSetDeviceMask vkCmdSetDeviceMask = 0;
+ PFN_vkCmdSetDeviceMaskKHR vkCmdSetDeviceMaskKHR = 0;
+ PFN_vkCmdSetDiscardRectangleEXT vkCmdSetDiscardRectangleEXT = 0;
+ PFN_vkCmdSetEvent vkCmdSetEvent = 0;
+ PFN_vkCmdSetEvent2KHR vkCmdSetEvent2KHR = 0;
+ PFN_vkCmdSetExclusiveScissorNV vkCmdSetExclusiveScissorNV = 0;
+ PFN_vkCmdSetFragmentShadingRateEnumNV vkCmdSetFragmentShadingRateEnumNV = 0;
+ PFN_vkCmdSetFragmentShadingRateKHR vkCmdSetFragmentShadingRateKHR = 0;
+ PFN_vkCmdSetFrontFaceEXT vkCmdSetFrontFaceEXT = 0;
+ PFN_vkCmdSetLineStippleEXT vkCmdSetLineStippleEXT = 0;
+ PFN_vkCmdSetLineWidth vkCmdSetLineWidth = 0;
+ PFN_vkCmdSetLogicOpEXT vkCmdSetLogicOpEXT = 0;
+ PFN_vkCmdSetPatchControlPointsEXT vkCmdSetPatchControlPointsEXT = 0;
+ PFN_vkCmdSetPerformanceMarkerINTEL vkCmdSetPerformanceMarkerINTEL = 0;
+ PFN_vkCmdSetPerformanceOverrideINTEL vkCmdSetPerformanceOverrideINTEL = 0;
+ PFN_vkCmdSetPerformanceStreamMarkerINTEL vkCmdSetPerformanceStreamMarkerINTEL = 0;
+ PFN_vkCmdSetPrimitiveRestartEnableEXT vkCmdSetPrimitiveRestartEnableEXT = 0;
+ PFN_vkCmdSetPrimitiveTopologyEXT vkCmdSetPrimitiveTopologyEXT = 0;
+ PFN_vkCmdSetRasterizerDiscardEnableEXT vkCmdSetRasterizerDiscardEnableEXT = 0;
+ PFN_vkCmdSetRayTracingPipelineStackSizeKHR vkCmdSetRayTracingPipelineStackSizeKHR = 0;
+ PFN_vkCmdSetSampleLocationsEXT vkCmdSetSampleLocationsEXT = 0;
+ PFN_vkCmdSetScissor vkCmdSetScissor = 0;
+ PFN_vkCmdSetScissorWithCountEXT vkCmdSetScissorWithCountEXT = 0;
+ PFN_vkCmdSetStencilCompareMask vkCmdSetStencilCompareMask = 0;
+ PFN_vkCmdSetStencilOpEXT vkCmdSetStencilOpEXT = 0;
+ PFN_vkCmdSetStencilReference vkCmdSetStencilReference = 0;
+ PFN_vkCmdSetStencilTestEnableEXT vkCmdSetStencilTestEnableEXT = 0;
+ PFN_vkCmdSetStencilWriteMask vkCmdSetStencilWriteMask = 0;
+ PFN_vkCmdSetVertexInputEXT vkCmdSetVertexInputEXT = 0;
+ PFN_vkCmdSetViewport vkCmdSetViewport = 0;
+ PFN_vkCmdSetViewportShadingRatePaletteNV vkCmdSetViewportShadingRatePaletteNV = 0;
+ PFN_vkCmdSetViewportWScalingNV vkCmdSetViewportWScalingNV = 0;
+ PFN_vkCmdSetViewportWithCountEXT vkCmdSetViewportWithCountEXT = 0;
+ PFN_vkCmdSubpassShadingHUAWEI vkCmdSubpassShadingHUAWEI = 0;
+ PFN_vkCmdTraceRaysIndirectKHR vkCmdTraceRaysIndirectKHR = 0;
+ PFN_vkCmdTraceRaysKHR vkCmdTraceRaysKHR = 0;
+ PFN_vkCmdTraceRaysNV vkCmdTraceRaysNV = 0;
+ PFN_vkCmdUpdateBuffer vkCmdUpdateBuffer = 0;
+ PFN_vkCmdWaitEvents vkCmdWaitEvents = 0;
+ PFN_vkCmdWaitEvents2KHR vkCmdWaitEvents2KHR = 0;
PFN_vkCmdWriteAccelerationStructuresPropertiesKHR vkCmdWriteAccelerationStructuresPropertiesKHR = 0;
- PFN_vkCmdWriteAccelerationStructuresPropertiesNV vkCmdWriteAccelerationStructuresPropertiesNV = 0;
- PFN_vkCmdWriteBufferMarkerAMD vkCmdWriteBufferMarkerAMD = 0;
- PFN_vkCmdWriteTimestamp vkCmdWriteTimestamp = 0;
- PFN_vkCompileDeferredNV vkCompileDeferredNV = 0;
- PFN_vkCopyAccelerationStructureKHR vkCopyAccelerationStructureKHR = 0;
- PFN_vkCopyAccelerationStructureToMemoryKHR vkCopyAccelerationStructureToMemoryKHR = 0;
- PFN_vkCopyMemoryToAccelerationStructureKHR vkCopyMemoryToAccelerationStructureKHR = 0;
- PFN_vkCreateAccelerationStructureKHR vkCreateAccelerationStructureKHR = 0;
- PFN_vkCreateAccelerationStructureNV vkCreateAccelerationStructureNV = 0;
-#ifdef VK_USE_PLATFORM_ANDROID_KHR
+ PFN_vkCmdWriteAccelerationStructuresPropertiesNV vkCmdWriteAccelerationStructuresPropertiesNV = 0;
+ PFN_vkCmdWriteBufferMarker2AMD vkCmdWriteBufferMarker2AMD = 0;
+ PFN_vkCmdWriteBufferMarkerAMD vkCmdWriteBufferMarkerAMD = 0;
+ PFN_vkCmdWriteTimestamp vkCmdWriteTimestamp = 0;
+ PFN_vkCmdWriteTimestamp2KHR vkCmdWriteTimestamp2KHR = 0;
+ PFN_vkCompileDeferredNV vkCompileDeferredNV = 0;
+ PFN_vkCopyAccelerationStructureKHR vkCopyAccelerationStructureKHR = 0;
+ PFN_vkCopyAccelerationStructureToMemoryKHR vkCopyAccelerationStructureToMemoryKHR = 0;
+ PFN_vkCopyMemoryToAccelerationStructureKHR vkCopyMemoryToAccelerationStructureKHR = 0;
+ PFN_vkCreateAccelerationStructureKHR vkCreateAccelerationStructureKHR = 0;
+ PFN_vkCreateAccelerationStructureNV vkCreateAccelerationStructureNV = 0;
+#if defined( VK_USE_PLATFORM_ANDROID_KHR )
PFN_vkCreateAndroidSurfaceKHR vkCreateAndroidSurfaceKHR = 0;
+#else
+ PFN_dummy placeholder_dont_call_vkCreateAndroidSurfaceKHR = 0;
#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
- PFN_vkCreateBuffer vkCreateBuffer = 0;
- PFN_vkCreateBufferView vkCreateBufferView = 0;
- PFN_vkCreateCommandPool vkCreateCommandPool = 0;
- PFN_vkCreateComputePipelines vkCreateComputePipelines = 0;
- PFN_vkCreateDebugReportCallbackEXT vkCreateDebugReportCallbackEXT = 0;
- PFN_vkCreateDebugUtilsMessengerEXT vkCreateDebugUtilsMessengerEXT = 0;
- PFN_vkCreateDeferredOperationKHR vkCreateDeferredOperationKHR = 0;
- PFN_vkCreateDescriptorPool vkCreateDescriptorPool = 0;
- PFN_vkCreateDescriptorSetLayout vkCreateDescriptorSetLayout = 0;
+ PFN_vkCreateBuffer vkCreateBuffer = 0;
+ PFN_vkCreateBufferView vkCreateBufferView = 0;
+ PFN_vkCreateCommandPool vkCreateCommandPool = 0;
+ PFN_vkCreateComputePipelines vkCreateComputePipelines = 0;
+ PFN_vkCreateCuFunctionNVX vkCreateCuFunctionNVX = 0;
+ PFN_vkCreateCuModuleNVX vkCreateCuModuleNVX = 0;
+ PFN_vkCreateDebugReportCallbackEXT vkCreateDebugReportCallbackEXT = 0;
+ PFN_vkCreateDebugUtilsMessengerEXT vkCreateDebugUtilsMessengerEXT = 0;
+ PFN_vkCreateDeferredOperationKHR vkCreateDeferredOperationKHR = 0;
+ PFN_vkCreateDescriptorPool vkCreateDescriptorPool = 0;
+ PFN_vkCreateDescriptorSetLayout vkCreateDescriptorSetLayout = 0;
+ PFN_vkCreateDescriptorUpdateTemplate vkCreateDescriptorUpdateTemplate = 0;
PFN_vkCreateDescriptorUpdateTemplateKHR vkCreateDescriptorUpdateTemplateKHR = 0;
- PFN_vkCreateDescriptorUpdateTemplate vkCreateDescriptorUpdateTemplate = 0;
- PFN_vkCreateDevice vkCreateDevice = 0;
-#ifdef VK_USE_PLATFORM_DIRECTFB_EXT
+ PFN_vkCreateDevice vkCreateDevice = 0;
+#if defined( VK_USE_PLATFORM_DIRECTFB_EXT )
PFN_vkCreateDirectFBSurfaceEXT vkCreateDirectFBSurfaceEXT = 0;
+#else
+ PFN_dummy placeholder_dont_call_vkCreateDirectFBSurfaceEXT = 0;
#endif /*VK_USE_PLATFORM_DIRECTFB_EXT*/
- PFN_vkCreateDisplayModeKHR vkCreateDisplayModeKHR = 0;
+ PFN_vkCreateDisplayModeKHR vkCreateDisplayModeKHR = 0;
PFN_vkCreateDisplayPlaneSurfaceKHR vkCreateDisplayPlaneSurfaceKHR = 0;
- PFN_vkCreateEvent vkCreateEvent = 0;
- PFN_vkCreateFence vkCreateFence = 0;
- PFN_vkCreateFramebuffer vkCreateFramebuffer = 0;
- PFN_vkCreateGraphicsPipelines vkCreateGraphicsPipelines = 0;
- PFN_vkCreateHeadlessSurfaceEXT vkCreateHeadlessSurfaceEXT = 0;
-#ifdef VK_USE_PLATFORM_IOS_MVK
+ PFN_vkCreateEvent vkCreateEvent = 0;
+ PFN_vkCreateFence vkCreateFence = 0;
+ PFN_vkCreateFramebuffer vkCreateFramebuffer = 0;
+ PFN_vkCreateGraphicsPipelines vkCreateGraphicsPipelines = 0;
+ PFN_vkCreateHeadlessSurfaceEXT vkCreateHeadlessSurfaceEXT = 0;
+#if defined( VK_USE_PLATFORM_IOS_MVK )
PFN_vkCreateIOSSurfaceMVK vkCreateIOSSurfaceMVK = 0;
+#else
+ PFN_dummy placeholder_dont_call_vkCreateIOSSurfaceMVK = 0;
#endif /*VK_USE_PLATFORM_IOS_MVK*/
PFN_vkCreateImage vkCreateImage = 0;
-#ifdef VK_USE_PLATFORM_FUCHSIA
+#if defined( VK_USE_PLATFORM_FUCHSIA )
PFN_vkCreateImagePipeSurfaceFUCHSIA vkCreateImagePipeSurfaceFUCHSIA = 0;
+#else
+ PFN_dummy placeholder_dont_call_vkCreateImagePipeSurfaceFUCHSIA = 0;
#endif /*VK_USE_PLATFORM_FUCHSIA*/
- PFN_vkCreateImageView vkCreateImageView = 0;
+ PFN_vkCreateImageView vkCreateImageView = 0;
PFN_vkCreateIndirectCommandsLayoutNV vkCreateIndirectCommandsLayoutNV = 0;
- PFN_vkCreateInstance vkCreateInstance = 0;
-#ifdef VK_USE_PLATFORM_MACOS_MVK
+ PFN_vkCreateInstance vkCreateInstance = 0;
+#if defined( VK_USE_PLATFORM_MACOS_MVK )
PFN_vkCreateMacOSSurfaceMVK vkCreateMacOSSurfaceMVK = 0;
+#else
+ PFN_dummy placeholder_dont_call_vkCreateMacOSSurfaceMVK = 0;
#endif /*VK_USE_PLATFORM_MACOS_MVK*/
-#ifdef VK_USE_PLATFORM_METAL_EXT
+#if defined( VK_USE_PLATFORM_METAL_EXT )
PFN_vkCreateMetalSurfaceEXT vkCreateMetalSurfaceEXT = 0;
+#else
+ PFN_dummy placeholder_dont_call_vkCreateMetalSurfaceEXT = 0;
#endif /*VK_USE_PLATFORM_METAL_EXT*/
- PFN_vkCreatePipelineCache vkCreatePipelineCache = 0;
- PFN_vkCreatePipelineLayout vkCreatePipelineLayout = 0;
- PFN_vkCreatePrivateDataSlotEXT vkCreatePrivateDataSlotEXT = 0;
- PFN_vkCreateQueryPool vkCreateQueryPool = 0;
- PFN_vkCreateRayTracingPipelinesKHR vkCreateRayTracingPipelinesKHR = 0;
- PFN_vkCreateRayTracingPipelinesNV vkCreateRayTracingPipelinesNV = 0;
- PFN_vkCreateRenderPass vkCreateRenderPass = 0;
- PFN_vkCreateRenderPass2KHR vkCreateRenderPass2KHR = 0;
- PFN_vkCreateRenderPass2 vkCreateRenderPass2 = 0;
- PFN_vkCreateSampler vkCreateSampler = 0;
+ PFN_vkCreatePipelineCache vkCreatePipelineCache = 0;
+ PFN_vkCreatePipelineLayout vkCreatePipelineLayout = 0;
+ PFN_vkCreatePrivateDataSlotEXT vkCreatePrivateDataSlotEXT = 0;
+ PFN_vkCreateQueryPool vkCreateQueryPool = 0;
+ PFN_vkCreateRayTracingPipelinesKHR vkCreateRayTracingPipelinesKHR = 0;
+ PFN_vkCreateRayTracingPipelinesNV vkCreateRayTracingPipelinesNV = 0;
+ PFN_vkCreateRenderPass vkCreateRenderPass = 0;
+ PFN_vkCreateRenderPass2 vkCreateRenderPass2 = 0;
+ PFN_vkCreateRenderPass2KHR vkCreateRenderPass2KHR = 0;
+ PFN_vkCreateSampler vkCreateSampler = 0;
+ PFN_vkCreateSamplerYcbcrConversion vkCreateSamplerYcbcrConversion = 0;
PFN_vkCreateSamplerYcbcrConversionKHR vkCreateSamplerYcbcrConversionKHR = 0;
- PFN_vkCreateSamplerYcbcrConversion vkCreateSamplerYcbcrConversion = 0;
- PFN_vkCreateSemaphore vkCreateSemaphore = 0;
- PFN_vkCreateShaderModule vkCreateShaderModule = 0;
+#if defined( VK_USE_PLATFORM_SCREEN_QNX )
+ PFN_vkCreateScreenSurfaceQNX vkCreateScreenSurfaceQNX = 0;
+#else
+ PFN_dummy placeholder_dont_call_vkCreateScreenSurfaceQNX = 0;
+#endif /*VK_USE_PLATFORM_SCREEN_QNX*/
+ PFN_vkCreateSemaphore vkCreateSemaphore = 0;
+ PFN_vkCreateShaderModule vkCreateShaderModule = 0;
PFN_vkCreateSharedSwapchainsKHR vkCreateSharedSwapchainsKHR = 0;
-#ifdef VK_USE_PLATFORM_GGP
+#if defined( VK_USE_PLATFORM_GGP )
PFN_vkCreateStreamDescriptorSurfaceGGP vkCreateStreamDescriptorSurfaceGGP = 0;
+#else
+ PFN_dummy placeholder_dont_call_vkCreateStreamDescriptorSurfaceGGP = 0;
#endif /*VK_USE_PLATFORM_GGP*/
- PFN_vkCreateSwapchainKHR vkCreateSwapchainKHR = 0;
+ PFN_vkCreateSwapchainKHR vkCreateSwapchainKHR = 0;
PFN_vkCreateValidationCacheEXT vkCreateValidationCacheEXT = 0;
-#ifdef VK_USE_PLATFORM_VI_NN
+#if defined( VK_USE_PLATFORM_VI_NN )
PFN_vkCreateViSurfaceNN vkCreateViSurfaceNN = 0;
+#else
+ PFN_dummy placeholder_dont_call_vkCreateViSurfaceNN = 0;
#endif /*VK_USE_PLATFORM_VI_NN*/
-#ifdef VK_USE_PLATFORM_WAYLAND_KHR
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ PFN_vkCreateVideoSessionKHR vkCreateVideoSessionKHR = 0;
+#else
+ PFN_dummy placeholder_dont_call_vkCreateVideoSessionKHR = 0;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ PFN_vkCreateVideoSessionParametersKHR vkCreateVideoSessionParametersKHR = 0;
+#else
+ PFN_dummy placeholder_dont_call_vkCreateVideoSessionParametersKHR = 0;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_USE_PLATFORM_WAYLAND_KHR )
PFN_vkCreateWaylandSurfaceKHR vkCreateWaylandSurfaceKHR = 0;
+#else
+ PFN_dummy placeholder_dont_call_vkCreateWaylandSurfaceKHR = 0;
#endif /*VK_USE_PLATFORM_WAYLAND_KHR*/
-#ifdef VK_USE_PLATFORM_WIN32_KHR
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
PFN_vkCreateWin32SurfaceKHR vkCreateWin32SurfaceKHR = 0;
+#else
+ PFN_dummy placeholder_dont_call_vkCreateWin32SurfaceKHR = 0;
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-#ifdef VK_USE_PLATFORM_XCB_KHR
+#if defined( VK_USE_PLATFORM_XCB_KHR )
PFN_vkCreateXcbSurfaceKHR vkCreateXcbSurfaceKHR = 0;
+#else
+ PFN_dummy placeholder_dont_call_vkCreateXcbSurfaceKHR = 0;
#endif /*VK_USE_PLATFORM_XCB_KHR*/
-#ifdef VK_USE_PLATFORM_XLIB_KHR
+#if defined( VK_USE_PLATFORM_XLIB_KHR )
PFN_vkCreateXlibSurfaceKHR vkCreateXlibSurfaceKHR = 0;
+#else
+ PFN_dummy placeholder_dont_call_vkCreateXlibSurfaceKHR = 0;
#endif /*VK_USE_PLATFORM_XLIB_KHR*/
- PFN_vkDebugMarkerSetObjectNameEXT vkDebugMarkerSetObjectNameEXT = 0;
- PFN_vkDebugMarkerSetObjectTagEXT vkDebugMarkerSetObjectTagEXT = 0;
- PFN_vkDebugReportMessageEXT vkDebugReportMessageEXT = 0;
- PFN_vkDeferredOperationJoinKHR vkDeferredOperationJoinKHR = 0;
- PFN_vkDestroyAccelerationStructureKHR vkDestroyAccelerationStructureKHR = 0;
- PFN_vkDestroyAccelerationStructureNV vkDestroyAccelerationStructureNV = 0;
- PFN_vkDestroyBuffer vkDestroyBuffer = 0;
- PFN_vkDestroyBufferView vkDestroyBufferView = 0;
- PFN_vkDestroyCommandPool vkDestroyCommandPool = 0;
- PFN_vkDestroyDebugReportCallbackEXT vkDestroyDebugReportCallbackEXT = 0;
- PFN_vkDestroyDebugUtilsMessengerEXT vkDestroyDebugUtilsMessengerEXT = 0;
- PFN_vkDestroyDeferredOperationKHR vkDestroyDeferredOperationKHR = 0;
- PFN_vkDestroyDescriptorPool vkDestroyDescriptorPool = 0;
- PFN_vkDestroyDescriptorSetLayout vkDestroyDescriptorSetLayout = 0;
+ PFN_vkDebugMarkerSetObjectNameEXT vkDebugMarkerSetObjectNameEXT = 0;
+ PFN_vkDebugMarkerSetObjectTagEXT vkDebugMarkerSetObjectTagEXT = 0;
+ PFN_vkDebugReportMessageEXT vkDebugReportMessageEXT = 0;
+ PFN_vkDeferredOperationJoinKHR vkDeferredOperationJoinKHR = 0;
+ PFN_vkDestroyAccelerationStructureKHR vkDestroyAccelerationStructureKHR = 0;
+ PFN_vkDestroyAccelerationStructureNV vkDestroyAccelerationStructureNV = 0;
+ PFN_vkDestroyBuffer vkDestroyBuffer = 0;
+ PFN_vkDestroyBufferView vkDestroyBufferView = 0;
+ PFN_vkDestroyCommandPool vkDestroyCommandPool = 0;
+ PFN_vkDestroyCuFunctionNVX vkDestroyCuFunctionNVX = 0;
+ PFN_vkDestroyCuModuleNVX vkDestroyCuModuleNVX = 0;
+ PFN_vkDestroyDebugReportCallbackEXT vkDestroyDebugReportCallbackEXT = 0;
+ PFN_vkDestroyDebugUtilsMessengerEXT vkDestroyDebugUtilsMessengerEXT = 0;
+ PFN_vkDestroyDeferredOperationKHR vkDestroyDeferredOperationKHR = 0;
+ PFN_vkDestroyDescriptorPool vkDestroyDescriptorPool = 0;
+ PFN_vkDestroyDescriptorSetLayout vkDestroyDescriptorSetLayout = 0;
+ PFN_vkDestroyDescriptorUpdateTemplate vkDestroyDescriptorUpdateTemplate = 0;
PFN_vkDestroyDescriptorUpdateTemplateKHR vkDestroyDescriptorUpdateTemplateKHR = 0;
- PFN_vkDestroyDescriptorUpdateTemplate vkDestroyDescriptorUpdateTemplate = 0;
- PFN_vkDestroyDevice vkDestroyDevice = 0;
- PFN_vkDestroyEvent vkDestroyEvent = 0;
- PFN_vkDestroyFence vkDestroyFence = 0;
- PFN_vkDestroyFramebuffer vkDestroyFramebuffer = 0;
- PFN_vkDestroyImage vkDestroyImage = 0;
- PFN_vkDestroyImageView vkDestroyImageView = 0;
- PFN_vkDestroyIndirectCommandsLayoutNV vkDestroyIndirectCommandsLayoutNV = 0;
- PFN_vkDestroyInstance vkDestroyInstance = 0;
- PFN_vkDestroyPipeline vkDestroyPipeline = 0;
- PFN_vkDestroyPipelineCache vkDestroyPipelineCache = 0;
- PFN_vkDestroyPipelineLayout vkDestroyPipelineLayout = 0;
- PFN_vkDestroyPrivateDataSlotEXT vkDestroyPrivateDataSlotEXT = 0;
- PFN_vkDestroyQueryPool vkDestroyQueryPool = 0;
- PFN_vkDestroyRenderPass vkDestroyRenderPass = 0;
- PFN_vkDestroySampler vkDestroySampler = 0;
- PFN_vkDestroySamplerYcbcrConversionKHR vkDestroySamplerYcbcrConversionKHR = 0;
- PFN_vkDestroySamplerYcbcrConversion vkDestroySamplerYcbcrConversion = 0;
- PFN_vkDestroySemaphore vkDestroySemaphore = 0;
- PFN_vkDestroyShaderModule vkDestroyShaderModule = 0;
- PFN_vkDestroySurfaceKHR vkDestroySurfaceKHR = 0;
- PFN_vkDestroySwapchainKHR vkDestroySwapchainKHR = 0;
- PFN_vkDestroyValidationCacheEXT vkDestroyValidationCacheEXT = 0;
- PFN_vkDeviceWaitIdle vkDeviceWaitIdle = 0;
- PFN_vkDisplayPowerControlEXT vkDisplayPowerControlEXT = 0;
- PFN_vkEndCommandBuffer vkEndCommandBuffer = 0;
- PFN_vkEnumerateDeviceExtensionProperties vkEnumerateDeviceExtensionProperties = 0;
- PFN_vkEnumerateDeviceLayerProperties vkEnumerateDeviceLayerProperties = 0;
+ PFN_vkDestroyDevice vkDestroyDevice = 0;
+ PFN_vkDestroyEvent vkDestroyEvent = 0;
+ PFN_vkDestroyFence vkDestroyFence = 0;
+ PFN_vkDestroyFramebuffer vkDestroyFramebuffer = 0;
+ PFN_vkDestroyImage vkDestroyImage = 0;
+ PFN_vkDestroyImageView vkDestroyImageView = 0;
+ PFN_vkDestroyIndirectCommandsLayoutNV vkDestroyIndirectCommandsLayoutNV = 0;
+ PFN_vkDestroyInstance vkDestroyInstance = 0;
+ PFN_vkDestroyPipeline vkDestroyPipeline = 0;
+ PFN_vkDestroyPipelineCache vkDestroyPipelineCache = 0;
+ PFN_vkDestroyPipelineLayout vkDestroyPipelineLayout = 0;
+ PFN_vkDestroyPrivateDataSlotEXT vkDestroyPrivateDataSlotEXT = 0;
+ PFN_vkDestroyQueryPool vkDestroyQueryPool = 0;
+ PFN_vkDestroyRenderPass vkDestroyRenderPass = 0;
+ PFN_vkDestroySampler vkDestroySampler = 0;
+ PFN_vkDestroySamplerYcbcrConversion vkDestroySamplerYcbcrConversion = 0;
+ PFN_vkDestroySamplerYcbcrConversionKHR vkDestroySamplerYcbcrConversionKHR = 0;
+ PFN_vkDestroySemaphore vkDestroySemaphore = 0;
+ PFN_vkDestroyShaderModule vkDestroyShaderModule = 0;
+ PFN_vkDestroySurfaceKHR vkDestroySurfaceKHR = 0;
+ PFN_vkDestroySwapchainKHR vkDestroySwapchainKHR = 0;
+ PFN_vkDestroyValidationCacheEXT vkDestroyValidationCacheEXT = 0;
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ PFN_vkDestroyVideoSessionKHR vkDestroyVideoSessionKHR = 0;
+#else
+ PFN_dummy placeholder_dont_call_vkDestroyVideoSessionKHR = 0;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ PFN_vkDestroyVideoSessionParametersKHR vkDestroyVideoSessionParametersKHR = 0;
+#else
+ PFN_dummy placeholder_dont_call_vkDestroyVideoSessionParametersKHR = 0;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ PFN_vkDeviceWaitIdle vkDeviceWaitIdle = 0;
+ PFN_vkDisplayPowerControlEXT vkDisplayPowerControlEXT = 0;
+ PFN_vkEndCommandBuffer vkEndCommandBuffer = 0;
+ PFN_vkEnumerateDeviceExtensionProperties vkEnumerateDeviceExtensionProperties = 0;
+ PFN_vkEnumerateDeviceLayerProperties vkEnumerateDeviceLayerProperties = 0;
PFN_vkEnumerateInstanceExtensionProperties vkEnumerateInstanceExtensionProperties = 0;
- PFN_vkEnumerateInstanceLayerProperties vkEnumerateInstanceLayerProperties = 0;
- PFN_vkEnumerateInstanceVersion vkEnumerateInstanceVersion = 0;
- PFN_vkEnumeratePhysicalDeviceGroupsKHR vkEnumeratePhysicalDeviceGroupsKHR = 0;
- PFN_vkEnumeratePhysicalDeviceGroups vkEnumeratePhysicalDeviceGroups = 0;
- PFN_vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR = 0;
- PFN_vkEnumeratePhysicalDevices vkEnumeratePhysicalDevices = 0;
- PFN_vkFlushMappedMemoryRanges vkFlushMappedMemoryRanges = 0;
- PFN_vkFreeCommandBuffers vkFreeCommandBuffers = 0;
- PFN_vkFreeDescriptorSets vkFreeDescriptorSets = 0;
- PFN_vkFreeMemory vkFreeMemory = 0;
- PFN_vkGetAccelerationStructureBuildSizesKHR vkGetAccelerationStructureBuildSizesKHR = 0;
- PFN_vkGetAccelerationStructureDeviceAddressKHR vkGetAccelerationStructureDeviceAddressKHR = 0;
- PFN_vkGetAccelerationStructureHandleNV vkGetAccelerationStructureHandleNV = 0;
+ PFN_vkEnumerateInstanceLayerProperties vkEnumerateInstanceLayerProperties = 0;
+ PFN_vkEnumerateInstanceVersion vkEnumerateInstanceVersion = 0;
+ PFN_vkEnumeratePhysicalDeviceGroups vkEnumeratePhysicalDeviceGroups = 0;
+ PFN_vkEnumeratePhysicalDeviceGroupsKHR vkEnumeratePhysicalDeviceGroupsKHR = 0;
+ PFN_vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR
+ vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR = 0;
+ PFN_vkEnumeratePhysicalDevices vkEnumeratePhysicalDevices = 0;
+ PFN_vkFlushMappedMemoryRanges vkFlushMappedMemoryRanges = 0;
+ PFN_vkFreeCommandBuffers vkFreeCommandBuffers = 0;
+ PFN_vkFreeDescriptorSets vkFreeDescriptorSets = 0;
+ PFN_vkFreeMemory vkFreeMemory = 0;
+ PFN_vkGetAccelerationStructureBuildSizesKHR vkGetAccelerationStructureBuildSizesKHR = 0;
+ PFN_vkGetAccelerationStructureDeviceAddressKHR vkGetAccelerationStructureDeviceAddressKHR = 0;
+ PFN_vkGetAccelerationStructureHandleNV vkGetAccelerationStructureHandleNV = 0;
PFN_vkGetAccelerationStructureMemoryRequirementsNV vkGetAccelerationStructureMemoryRequirementsNV = 0;
-#ifdef VK_USE_PLATFORM_ANDROID_KHR
+#if defined( VK_USE_PLATFORM_ANDROID_KHR )
PFN_vkGetAndroidHardwareBufferPropertiesANDROID vkGetAndroidHardwareBufferPropertiesANDROID = 0;
+#else
+ PFN_dummy placeholder_dont_call_vkGetAndroidHardwareBufferPropertiesANDROID = 0;
#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
- PFN_vkGetBufferDeviceAddressEXT vkGetBufferDeviceAddressEXT = 0;
- PFN_vkGetBufferDeviceAddressKHR vkGetBufferDeviceAddressKHR = 0;
- PFN_vkGetBufferDeviceAddress vkGetBufferDeviceAddress = 0;
- PFN_vkGetBufferMemoryRequirements vkGetBufferMemoryRequirements = 0;
- PFN_vkGetBufferMemoryRequirements2KHR vkGetBufferMemoryRequirements2KHR = 0;
- PFN_vkGetBufferMemoryRequirements2 vkGetBufferMemoryRequirements2 = 0;
- PFN_vkGetBufferOpaqueCaptureAddressKHR vkGetBufferOpaqueCaptureAddressKHR = 0;
- PFN_vkGetBufferOpaqueCaptureAddress vkGetBufferOpaqueCaptureAddress = 0;
- PFN_vkGetCalibratedTimestampsEXT vkGetCalibratedTimestampsEXT = 0;
- PFN_vkGetDeferredOperationMaxConcurrencyKHR vkGetDeferredOperationMaxConcurrencyKHR = 0;
- PFN_vkGetDeferredOperationResultKHR vkGetDeferredOperationResultKHR = 0;
- PFN_vkGetDescriptorSetLayoutSupportKHR vkGetDescriptorSetLayoutSupportKHR = 0;
- PFN_vkGetDescriptorSetLayoutSupport vkGetDescriptorSetLayoutSupport = 0;
+ PFN_vkGetBufferDeviceAddress vkGetBufferDeviceAddress = 0;
+ PFN_vkGetBufferDeviceAddressEXT vkGetBufferDeviceAddressEXT = 0;
+ PFN_vkGetBufferDeviceAddressKHR vkGetBufferDeviceAddressKHR = 0;
+ PFN_vkGetBufferMemoryRequirements vkGetBufferMemoryRequirements = 0;
+ PFN_vkGetBufferMemoryRequirements2 vkGetBufferMemoryRequirements2 = 0;
+ PFN_vkGetBufferMemoryRequirements2KHR vkGetBufferMemoryRequirements2KHR = 0;
+ PFN_vkGetBufferOpaqueCaptureAddress vkGetBufferOpaqueCaptureAddress = 0;
+ PFN_vkGetBufferOpaqueCaptureAddressKHR vkGetBufferOpaqueCaptureAddressKHR = 0;
+ PFN_vkGetCalibratedTimestampsEXT vkGetCalibratedTimestampsEXT = 0;
+ PFN_vkGetDeferredOperationMaxConcurrencyKHR vkGetDeferredOperationMaxConcurrencyKHR = 0;
+ PFN_vkGetDeferredOperationResultKHR vkGetDeferredOperationResultKHR = 0;
+ PFN_vkGetDescriptorSetLayoutSupport vkGetDescriptorSetLayoutSupport = 0;
+ PFN_vkGetDescriptorSetLayoutSupportKHR vkGetDescriptorSetLayoutSupportKHR = 0;
PFN_vkGetDeviceAccelerationStructureCompatibilityKHR vkGetDeviceAccelerationStructureCompatibilityKHR = 0;
- PFN_vkGetDeviceGroupPeerMemoryFeaturesKHR vkGetDeviceGroupPeerMemoryFeaturesKHR = 0;
- PFN_vkGetDeviceGroupPeerMemoryFeatures vkGetDeviceGroupPeerMemoryFeatures = 0;
- PFN_vkGetDeviceGroupPresentCapabilitiesKHR vkGetDeviceGroupPresentCapabilitiesKHR = 0;
-#ifdef VK_USE_PLATFORM_WIN32_KHR
+ PFN_vkGetDeviceGroupPeerMemoryFeatures vkGetDeviceGroupPeerMemoryFeatures = 0;
+ PFN_vkGetDeviceGroupPeerMemoryFeaturesKHR vkGetDeviceGroupPeerMemoryFeaturesKHR = 0;
+ PFN_vkGetDeviceGroupPresentCapabilitiesKHR vkGetDeviceGroupPresentCapabilitiesKHR = 0;
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
PFN_vkGetDeviceGroupSurfacePresentModes2EXT vkGetDeviceGroupSurfacePresentModes2EXT = 0;
+#else
+ PFN_dummy placeholder_dont_call_vkGetDeviceGroupSurfacePresentModes2EXT = 0;
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
- PFN_vkGetDeviceGroupSurfacePresentModesKHR vkGetDeviceGroupSurfacePresentModesKHR = 0;
- PFN_vkGetDeviceMemoryCommitment vkGetDeviceMemoryCommitment = 0;
+ PFN_vkGetDeviceGroupSurfacePresentModesKHR vkGetDeviceGroupSurfacePresentModesKHR = 0;
+ PFN_vkGetDeviceMemoryCommitment vkGetDeviceMemoryCommitment = 0;
+ PFN_vkGetDeviceMemoryOpaqueCaptureAddress vkGetDeviceMemoryOpaqueCaptureAddress = 0;
PFN_vkGetDeviceMemoryOpaqueCaptureAddressKHR vkGetDeviceMemoryOpaqueCaptureAddressKHR = 0;
- PFN_vkGetDeviceMemoryOpaqueCaptureAddress vkGetDeviceMemoryOpaqueCaptureAddress = 0;
- PFN_vkGetDeviceProcAddr vkGetDeviceProcAddr = 0;
- PFN_vkGetDeviceQueue vkGetDeviceQueue = 0;
- PFN_vkGetDeviceQueue2 vkGetDeviceQueue2 = 0;
- PFN_vkGetDisplayModeProperties2KHR vkGetDisplayModeProperties2KHR = 0;
- PFN_vkGetDisplayModePropertiesKHR vkGetDisplayModePropertiesKHR = 0;
- PFN_vkGetDisplayPlaneCapabilities2KHR vkGetDisplayPlaneCapabilities2KHR = 0;
- PFN_vkGetDisplayPlaneCapabilitiesKHR vkGetDisplayPlaneCapabilitiesKHR = 0;
- PFN_vkGetDisplayPlaneSupportedDisplaysKHR vkGetDisplayPlaneSupportedDisplaysKHR = 0;
- PFN_vkGetEventStatus vkGetEventStatus = 0;
- PFN_vkGetFenceFdKHR vkGetFenceFdKHR = 0;
- PFN_vkGetFenceStatus vkGetFenceStatus = 0;
-#ifdef VK_USE_PLATFORM_WIN32_KHR
+ PFN_vkGetDeviceProcAddr vkGetDeviceProcAddr = 0;
+ PFN_vkGetDeviceQueue vkGetDeviceQueue = 0;
+ PFN_vkGetDeviceQueue2 vkGetDeviceQueue2 = 0;
+ PFN_vkGetDisplayModeProperties2KHR vkGetDisplayModeProperties2KHR = 0;
+ PFN_vkGetDisplayModePropertiesKHR vkGetDisplayModePropertiesKHR = 0;
+ PFN_vkGetDisplayPlaneCapabilities2KHR vkGetDisplayPlaneCapabilities2KHR = 0;
+ PFN_vkGetDisplayPlaneCapabilitiesKHR vkGetDisplayPlaneCapabilitiesKHR = 0;
+ PFN_vkGetDisplayPlaneSupportedDisplaysKHR vkGetDisplayPlaneSupportedDisplaysKHR = 0;
+ PFN_vkGetDrmDisplayEXT vkGetDrmDisplayEXT = 0;
+ PFN_vkGetEventStatus vkGetEventStatus = 0;
+ PFN_vkGetFenceFdKHR vkGetFenceFdKHR = 0;
+ PFN_vkGetFenceStatus vkGetFenceStatus = 0;
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
PFN_vkGetFenceWin32HandleKHR vkGetFenceWin32HandleKHR = 0;
+#else
+ PFN_dummy placeholder_dont_call_vkGetFenceWin32HandleKHR = 0;
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
PFN_vkGetGeneratedCommandsMemoryRequirementsNV vkGetGeneratedCommandsMemoryRequirementsNV = 0;
- PFN_vkGetImageDrmFormatModifierPropertiesEXT vkGetImageDrmFormatModifierPropertiesEXT = 0;
- PFN_vkGetImageMemoryRequirements vkGetImageMemoryRequirements = 0;
- PFN_vkGetImageMemoryRequirements2KHR vkGetImageMemoryRequirements2KHR = 0;
- PFN_vkGetImageMemoryRequirements2 vkGetImageMemoryRequirements2 = 0;
- PFN_vkGetImageSparseMemoryRequirements vkGetImageSparseMemoryRequirements = 0;
- PFN_vkGetImageSparseMemoryRequirements2KHR vkGetImageSparseMemoryRequirements2KHR = 0;
- PFN_vkGetImageSparseMemoryRequirements2 vkGetImageSparseMemoryRequirements2 = 0;
- PFN_vkGetImageSubresourceLayout vkGetImageSubresourceLayout = 0;
- PFN_vkGetImageViewAddressNVX vkGetImageViewAddressNVX = 0;
- PFN_vkGetImageViewHandleNVX vkGetImageViewHandleNVX = 0;
- PFN_vkGetInstanceProcAddr vkGetInstanceProcAddr = 0;
-#ifdef VK_USE_PLATFORM_ANDROID_KHR
+ PFN_vkGetImageDrmFormatModifierPropertiesEXT vkGetImageDrmFormatModifierPropertiesEXT = 0;
+ PFN_vkGetImageMemoryRequirements vkGetImageMemoryRequirements = 0;
+ PFN_vkGetImageMemoryRequirements2 vkGetImageMemoryRequirements2 = 0;
+ PFN_vkGetImageMemoryRequirements2KHR vkGetImageMemoryRequirements2KHR = 0;
+ PFN_vkGetImageSparseMemoryRequirements vkGetImageSparseMemoryRequirements = 0;
+ PFN_vkGetImageSparseMemoryRequirements2 vkGetImageSparseMemoryRequirements2 = 0;
+ PFN_vkGetImageSparseMemoryRequirements2KHR vkGetImageSparseMemoryRequirements2KHR = 0;
+ PFN_vkGetImageSubresourceLayout vkGetImageSubresourceLayout = 0;
+ PFN_vkGetImageViewAddressNVX vkGetImageViewAddressNVX = 0;
+ PFN_vkGetImageViewHandleNVX vkGetImageViewHandleNVX = 0;
+ PFN_vkGetInstanceProcAddr vkGetInstanceProcAddr = 0;
+#if defined( VK_USE_PLATFORM_ANDROID_KHR )
PFN_vkGetMemoryAndroidHardwareBufferANDROID vkGetMemoryAndroidHardwareBufferANDROID = 0;
+#else
+ PFN_dummy placeholder_dont_call_vkGetMemoryAndroidHardwareBufferANDROID = 0;
#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
- PFN_vkGetMemoryFdKHR vkGetMemoryFdKHR = 0;
- PFN_vkGetMemoryFdPropertiesKHR vkGetMemoryFdPropertiesKHR = 0;
+ PFN_vkGetMemoryFdKHR vkGetMemoryFdKHR = 0;
+ PFN_vkGetMemoryFdPropertiesKHR vkGetMemoryFdPropertiesKHR = 0;
PFN_vkGetMemoryHostPointerPropertiesEXT vkGetMemoryHostPointerPropertiesEXT = 0;
-#ifdef VK_USE_PLATFORM_WIN32_KHR
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
PFN_vkGetMemoryWin32HandleKHR vkGetMemoryWin32HandleKHR = 0;
+#else
+ PFN_dummy placeholder_dont_call_vkGetMemoryWin32HandleKHR = 0;
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-#ifdef VK_USE_PLATFORM_WIN32_KHR
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
PFN_vkGetMemoryWin32HandleNV vkGetMemoryWin32HandleNV = 0;
+#else
+ PFN_dummy placeholder_dont_call_vkGetMemoryWin32HandleNV = 0;
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-#ifdef VK_USE_PLATFORM_WIN32_KHR
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
PFN_vkGetMemoryWin32HandlePropertiesKHR vkGetMemoryWin32HandlePropertiesKHR = 0;
+#else
+ PFN_dummy placeholder_dont_call_vkGetMemoryWin32HandlePropertiesKHR = 0;
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
- PFN_vkGetPastPresentationTimingGOOGLE vkGetPastPresentationTimingGOOGLE = 0;
- PFN_vkGetPerformanceParameterINTEL vkGetPerformanceParameterINTEL = 0;
- PFN_vkGetPhysicalDeviceCalibrateableTimeDomainsEXT vkGetPhysicalDeviceCalibrateableTimeDomainsEXT = 0;
+#if defined( VK_USE_PLATFORM_FUCHSIA )
+ PFN_vkGetMemoryZirconHandleFUCHSIA vkGetMemoryZirconHandleFUCHSIA = 0;
+#else
+ PFN_dummy placeholder_dont_call_vkGetMemoryZirconHandleFUCHSIA = 0;
+#endif /*VK_USE_PLATFORM_FUCHSIA*/
+#if defined( VK_USE_PLATFORM_FUCHSIA )
+ PFN_vkGetMemoryZirconHandlePropertiesFUCHSIA vkGetMemoryZirconHandlePropertiesFUCHSIA = 0;
+#else
+ PFN_dummy placeholder_dont_call_vkGetMemoryZirconHandlePropertiesFUCHSIA = 0;
+#endif /*VK_USE_PLATFORM_FUCHSIA*/
+ PFN_vkGetPastPresentationTimingGOOGLE vkGetPastPresentationTimingGOOGLE = 0;
+ PFN_vkGetPerformanceParameterINTEL vkGetPerformanceParameterINTEL = 0;
+ PFN_vkGetPhysicalDeviceCalibrateableTimeDomainsEXT vkGetPhysicalDeviceCalibrateableTimeDomainsEXT = 0;
PFN_vkGetPhysicalDeviceCooperativeMatrixPropertiesNV vkGetPhysicalDeviceCooperativeMatrixPropertiesNV = 0;
-#ifdef VK_USE_PLATFORM_DIRECTFB_EXT
+#if defined( VK_USE_PLATFORM_DIRECTFB_EXT )
PFN_vkGetPhysicalDeviceDirectFBPresentationSupportEXT vkGetPhysicalDeviceDirectFBPresentationSupportEXT = 0;
+#else
+ PFN_dummy placeholder_dont_call_vkGetPhysicalDeviceDirectFBPresentationSupportEXT = 0;
#endif /*VK_USE_PLATFORM_DIRECTFB_EXT*/
- PFN_vkGetPhysicalDeviceDisplayPlaneProperties2KHR vkGetPhysicalDeviceDisplayPlaneProperties2KHR = 0;
- PFN_vkGetPhysicalDeviceDisplayPlanePropertiesKHR vkGetPhysicalDeviceDisplayPlanePropertiesKHR = 0;
- PFN_vkGetPhysicalDeviceDisplayProperties2KHR vkGetPhysicalDeviceDisplayProperties2KHR = 0;
- PFN_vkGetPhysicalDeviceDisplayPropertiesKHR vkGetPhysicalDeviceDisplayPropertiesKHR = 0;
- PFN_vkGetPhysicalDeviceExternalBufferPropertiesKHR vkGetPhysicalDeviceExternalBufferPropertiesKHR = 0;
- PFN_vkGetPhysicalDeviceExternalBufferProperties vkGetPhysicalDeviceExternalBufferProperties = 0;
- PFN_vkGetPhysicalDeviceExternalFencePropertiesKHR vkGetPhysicalDeviceExternalFencePropertiesKHR = 0;
- PFN_vkGetPhysicalDeviceExternalFenceProperties vkGetPhysicalDeviceExternalFenceProperties = 0;
+ PFN_vkGetPhysicalDeviceDisplayPlaneProperties2KHR vkGetPhysicalDeviceDisplayPlaneProperties2KHR = 0;
+ PFN_vkGetPhysicalDeviceDisplayPlanePropertiesKHR vkGetPhysicalDeviceDisplayPlanePropertiesKHR = 0;
+ PFN_vkGetPhysicalDeviceDisplayProperties2KHR vkGetPhysicalDeviceDisplayProperties2KHR = 0;
+ PFN_vkGetPhysicalDeviceDisplayPropertiesKHR vkGetPhysicalDeviceDisplayPropertiesKHR = 0;
+ PFN_vkGetPhysicalDeviceExternalBufferProperties vkGetPhysicalDeviceExternalBufferProperties = 0;
+ PFN_vkGetPhysicalDeviceExternalBufferPropertiesKHR vkGetPhysicalDeviceExternalBufferPropertiesKHR = 0;
+ PFN_vkGetPhysicalDeviceExternalFenceProperties vkGetPhysicalDeviceExternalFenceProperties = 0;
+ PFN_vkGetPhysicalDeviceExternalFencePropertiesKHR vkGetPhysicalDeviceExternalFencePropertiesKHR = 0;
PFN_vkGetPhysicalDeviceExternalImageFormatPropertiesNV vkGetPhysicalDeviceExternalImageFormatPropertiesNV = 0;
- PFN_vkGetPhysicalDeviceExternalSemaphorePropertiesKHR vkGetPhysicalDeviceExternalSemaphorePropertiesKHR = 0;
- PFN_vkGetPhysicalDeviceExternalSemaphoreProperties vkGetPhysicalDeviceExternalSemaphoreProperties = 0;
- PFN_vkGetPhysicalDeviceFeatures vkGetPhysicalDeviceFeatures = 0;
- PFN_vkGetPhysicalDeviceFeatures2KHR vkGetPhysicalDeviceFeatures2KHR = 0;
- PFN_vkGetPhysicalDeviceFeatures2 vkGetPhysicalDeviceFeatures2 = 0;
- PFN_vkGetPhysicalDeviceFormatProperties vkGetPhysicalDeviceFormatProperties = 0;
- PFN_vkGetPhysicalDeviceFormatProperties2KHR vkGetPhysicalDeviceFormatProperties2KHR = 0;
- PFN_vkGetPhysicalDeviceFormatProperties2 vkGetPhysicalDeviceFormatProperties2 = 0;
- PFN_vkGetPhysicalDeviceFragmentShadingRatesKHR vkGetPhysicalDeviceFragmentShadingRatesKHR = 0;
- PFN_vkGetPhysicalDeviceImageFormatProperties vkGetPhysicalDeviceImageFormatProperties = 0;
- PFN_vkGetPhysicalDeviceImageFormatProperties2KHR vkGetPhysicalDeviceImageFormatProperties2KHR = 0;
- PFN_vkGetPhysicalDeviceImageFormatProperties2 vkGetPhysicalDeviceImageFormatProperties2 = 0;
- PFN_vkGetPhysicalDeviceMemoryProperties vkGetPhysicalDeviceMemoryProperties = 0;
- PFN_vkGetPhysicalDeviceMemoryProperties2KHR vkGetPhysicalDeviceMemoryProperties2KHR = 0;
- PFN_vkGetPhysicalDeviceMemoryProperties2 vkGetPhysicalDeviceMemoryProperties2 = 0;
- PFN_vkGetPhysicalDeviceMultisamplePropertiesEXT vkGetPhysicalDeviceMultisamplePropertiesEXT = 0;
- PFN_vkGetPhysicalDevicePresentRectanglesKHR vkGetPhysicalDevicePresentRectanglesKHR = 0;
- PFN_vkGetPhysicalDeviceProperties vkGetPhysicalDeviceProperties = 0;
- PFN_vkGetPhysicalDeviceProperties2KHR vkGetPhysicalDeviceProperties2KHR = 0;
- PFN_vkGetPhysicalDeviceProperties2 vkGetPhysicalDeviceProperties2 = 0;
- PFN_vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR = 0;
- PFN_vkGetPhysicalDeviceQueueFamilyProperties vkGetPhysicalDeviceQueueFamilyProperties = 0;
- PFN_vkGetPhysicalDeviceQueueFamilyProperties2KHR vkGetPhysicalDeviceQueueFamilyProperties2KHR = 0;
- PFN_vkGetPhysicalDeviceQueueFamilyProperties2 vkGetPhysicalDeviceQueueFamilyProperties2 = 0;
- PFN_vkGetPhysicalDeviceSparseImageFormatProperties vkGetPhysicalDeviceSparseImageFormatProperties = 0;
+ PFN_vkGetPhysicalDeviceExternalSemaphoreProperties vkGetPhysicalDeviceExternalSemaphoreProperties = 0;
+ PFN_vkGetPhysicalDeviceExternalSemaphorePropertiesKHR vkGetPhysicalDeviceExternalSemaphorePropertiesKHR = 0;
+ PFN_vkGetPhysicalDeviceFeatures vkGetPhysicalDeviceFeatures = 0;
+ PFN_vkGetPhysicalDeviceFeatures2 vkGetPhysicalDeviceFeatures2 = 0;
+ PFN_vkGetPhysicalDeviceFeatures2KHR vkGetPhysicalDeviceFeatures2KHR = 0;
+ PFN_vkGetPhysicalDeviceFormatProperties vkGetPhysicalDeviceFormatProperties = 0;
+ PFN_vkGetPhysicalDeviceFormatProperties2 vkGetPhysicalDeviceFormatProperties2 = 0;
+ PFN_vkGetPhysicalDeviceFormatProperties2KHR vkGetPhysicalDeviceFormatProperties2KHR = 0;
+ PFN_vkGetPhysicalDeviceFragmentShadingRatesKHR vkGetPhysicalDeviceFragmentShadingRatesKHR = 0;
+ PFN_vkGetPhysicalDeviceImageFormatProperties vkGetPhysicalDeviceImageFormatProperties = 0;
+ PFN_vkGetPhysicalDeviceImageFormatProperties2 vkGetPhysicalDeviceImageFormatProperties2 = 0;
+ PFN_vkGetPhysicalDeviceImageFormatProperties2KHR vkGetPhysicalDeviceImageFormatProperties2KHR = 0;
+ PFN_vkGetPhysicalDeviceMemoryProperties vkGetPhysicalDeviceMemoryProperties = 0;
+ PFN_vkGetPhysicalDeviceMemoryProperties2 vkGetPhysicalDeviceMemoryProperties2 = 0;
+ PFN_vkGetPhysicalDeviceMemoryProperties2KHR vkGetPhysicalDeviceMemoryProperties2KHR = 0;
+ PFN_vkGetPhysicalDeviceMultisamplePropertiesEXT vkGetPhysicalDeviceMultisamplePropertiesEXT = 0;
+ PFN_vkGetPhysicalDevicePresentRectanglesKHR vkGetPhysicalDevicePresentRectanglesKHR = 0;
+ PFN_vkGetPhysicalDeviceProperties vkGetPhysicalDeviceProperties = 0;
+ PFN_vkGetPhysicalDeviceProperties2 vkGetPhysicalDeviceProperties2 = 0;
+ PFN_vkGetPhysicalDeviceProperties2KHR vkGetPhysicalDeviceProperties2KHR = 0;
+ PFN_vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR
+ vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR = 0;
+ PFN_vkGetPhysicalDeviceQueueFamilyProperties vkGetPhysicalDeviceQueueFamilyProperties = 0;
+ PFN_vkGetPhysicalDeviceQueueFamilyProperties2 vkGetPhysicalDeviceQueueFamilyProperties2 = 0;
+ PFN_vkGetPhysicalDeviceQueueFamilyProperties2KHR vkGetPhysicalDeviceQueueFamilyProperties2KHR = 0;
+#if defined( VK_USE_PLATFORM_SCREEN_QNX )
+ PFN_vkGetPhysicalDeviceScreenPresentationSupportQNX vkGetPhysicalDeviceScreenPresentationSupportQNX = 0;
+#else
+ PFN_dummy placeholder_dont_call_vkGetPhysicalDeviceScreenPresentationSupportQNX = 0;
+#endif /*VK_USE_PLATFORM_SCREEN_QNX*/
+ PFN_vkGetPhysicalDeviceSparseImageFormatProperties vkGetPhysicalDeviceSparseImageFormatProperties = 0;
+ PFN_vkGetPhysicalDeviceSparseImageFormatProperties2 vkGetPhysicalDeviceSparseImageFormatProperties2 = 0;
PFN_vkGetPhysicalDeviceSparseImageFormatProperties2KHR vkGetPhysicalDeviceSparseImageFormatProperties2KHR = 0;
- PFN_vkGetPhysicalDeviceSparseImageFormatProperties2 vkGetPhysicalDeviceSparseImageFormatProperties2 = 0;
- PFN_vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV = 0;
+ PFN_vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV
+ vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV = 0;
PFN_vkGetPhysicalDeviceSurfaceCapabilities2EXT vkGetPhysicalDeviceSurfaceCapabilities2EXT = 0;
PFN_vkGetPhysicalDeviceSurfaceCapabilities2KHR vkGetPhysicalDeviceSurfaceCapabilities2KHR = 0;
- PFN_vkGetPhysicalDeviceSurfaceCapabilitiesKHR vkGetPhysicalDeviceSurfaceCapabilitiesKHR = 0;
- PFN_vkGetPhysicalDeviceSurfaceFormats2KHR vkGetPhysicalDeviceSurfaceFormats2KHR = 0;
- PFN_vkGetPhysicalDeviceSurfaceFormatsKHR vkGetPhysicalDeviceSurfaceFormatsKHR = 0;
-#ifdef VK_USE_PLATFORM_WIN32_KHR
+ PFN_vkGetPhysicalDeviceSurfaceCapabilitiesKHR vkGetPhysicalDeviceSurfaceCapabilitiesKHR = 0;
+ PFN_vkGetPhysicalDeviceSurfaceFormats2KHR vkGetPhysicalDeviceSurfaceFormats2KHR = 0;
+ PFN_vkGetPhysicalDeviceSurfaceFormatsKHR vkGetPhysicalDeviceSurfaceFormatsKHR = 0;
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
PFN_vkGetPhysicalDeviceSurfacePresentModes2EXT vkGetPhysicalDeviceSurfacePresentModes2EXT = 0;
+#else
+ PFN_dummy placeholder_dont_call_vkGetPhysicalDeviceSurfacePresentModes2EXT = 0;
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
PFN_vkGetPhysicalDeviceSurfacePresentModesKHR vkGetPhysicalDeviceSurfacePresentModesKHR = 0;
- PFN_vkGetPhysicalDeviceSurfaceSupportKHR vkGetPhysicalDeviceSurfaceSupportKHR = 0;
- PFN_vkGetPhysicalDeviceToolPropertiesEXT vkGetPhysicalDeviceToolPropertiesEXT = 0;
-#ifdef VK_USE_PLATFORM_WAYLAND_KHR
+ PFN_vkGetPhysicalDeviceSurfaceSupportKHR vkGetPhysicalDeviceSurfaceSupportKHR = 0;
+ PFN_vkGetPhysicalDeviceToolPropertiesEXT vkGetPhysicalDeviceToolPropertiesEXT = 0;
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ PFN_vkGetPhysicalDeviceVideoCapabilitiesKHR vkGetPhysicalDeviceVideoCapabilitiesKHR = 0;
+#else
+ PFN_dummy placeholder_dont_call_vkGetPhysicalDeviceVideoCapabilitiesKHR = 0;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ PFN_vkGetPhysicalDeviceVideoFormatPropertiesKHR vkGetPhysicalDeviceVideoFormatPropertiesKHR = 0;
+#else
+ PFN_dummy placeholder_dont_call_vkGetPhysicalDeviceVideoFormatPropertiesKHR = 0;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_USE_PLATFORM_WAYLAND_KHR )
PFN_vkGetPhysicalDeviceWaylandPresentationSupportKHR vkGetPhysicalDeviceWaylandPresentationSupportKHR = 0;
+#else
+ PFN_dummy placeholder_dont_call_vkGetPhysicalDeviceWaylandPresentationSupportKHR = 0;
#endif /*VK_USE_PLATFORM_WAYLAND_KHR*/
-#ifdef VK_USE_PLATFORM_WIN32_KHR
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
PFN_vkGetPhysicalDeviceWin32PresentationSupportKHR vkGetPhysicalDeviceWin32PresentationSupportKHR = 0;
+#else
+ PFN_dummy placeholder_dont_call_vkGetPhysicalDeviceWin32PresentationSupportKHR = 0;
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-#ifdef VK_USE_PLATFORM_XCB_KHR
+#if defined( VK_USE_PLATFORM_XCB_KHR )
PFN_vkGetPhysicalDeviceXcbPresentationSupportKHR vkGetPhysicalDeviceXcbPresentationSupportKHR = 0;
+#else
+ PFN_dummy placeholder_dont_call_vkGetPhysicalDeviceXcbPresentationSupportKHR = 0;
#endif /*VK_USE_PLATFORM_XCB_KHR*/
-#ifdef VK_USE_PLATFORM_XLIB_KHR
+#if defined( VK_USE_PLATFORM_XLIB_KHR )
PFN_vkGetPhysicalDeviceXlibPresentationSupportKHR vkGetPhysicalDeviceXlibPresentationSupportKHR = 0;
+#else
+ PFN_dummy placeholder_dont_call_vkGetPhysicalDeviceXlibPresentationSupportKHR = 0;
#endif /*VK_USE_PLATFORM_XLIB_KHR*/
- PFN_vkGetPipelineCacheData vkGetPipelineCacheData = 0;
+ PFN_vkGetPipelineCacheData vkGetPipelineCacheData = 0;
PFN_vkGetPipelineExecutableInternalRepresentationsKHR vkGetPipelineExecutableInternalRepresentationsKHR = 0;
- PFN_vkGetPipelineExecutablePropertiesKHR vkGetPipelineExecutablePropertiesKHR = 0;
- PFN_vkGetPipelineExecutableStatisticsKHR vkGetPipelineExecutableStatisticsKHR = 0;
- PFN_vkGetPrivateDataEXT vkGetPrivateDataEXT = 0;
- PFN_vkGetQueryPoolResults vkGetQueryPoolResults = 0;
- PFN_vkGetQueueCheckpointDataNV vkGetQueueCheckpointDataNV = 0;
-#ifdef VK_USE_PLATFORM_XLIB_XRANDR_EXT
+ PFN_vkGetPipelineExecutablePropertiesKHR vkGetPipelineExecutablePropertiesKHR = 0;
+ PFN_vkGetPipelineExecutableStatisticsKHR vkGetPipelineExecutableStatisticsKHR = 0;
+ PFN_vkGetPrivateDataEXT vkGetPrivateDataEXT = 0;
+ PFN_vkGetQueryPoolResults vkGetQueryPoolResults = 0;
+ PFN_vkGetQueueCheckpointData2NV vkGetQueueCheckpointData2NV = 0;
+ PFN_vkGetQueueCheckpointDataNV vkGetQueueCheckpointDataNV = 0;
+#if defined( VK_USE_PLATFORM_XLIB_XRANDR_EXT )
PFN_vkGetRandROutputDisplayEXT vkGetRandROutputDisplayEXT = 0;
+#else
+ PFN_dummy placeholder_dont_call_vkGetRandROutputDisplayEXT = 0;
#endif /*VK_USE_PLATFORM_XLIB_XRANDR_EXT*/
PFN_vkGetRayTracingCaptureReplayShaderGroupHandlesKHR vkGetRayTracingCaptureReplayShaderGroupHandlesKHR = 0;
- PFN_vkGetRayTracingShaderGroupHandlesNV vkGetRayTracingShaderGroupHandlesNV = 0;
- PFN_vkGetRayTracingShaderGroupHandlesKHR vkGetRayTracingShaderGroupHandlesKHR = 0;
- PFN_vkGetRayTracingShaderGroupStackSizeKHR vkGetRayTracingShaderGroupStackSizeKHR = 0;
- PFN_vkGetRefreshCycleDurationGOOGLE vkGetRefreshCycleDurationGOOGLE = 0;
- PFN_vkGetRenderAreaGranularity vkGetRenderAreaGranularity = 0;
- PFN_vkGetSemaphoreCounterValueKHR vkGetSemaphoreCounterValueKHR = 0;
- PFN_vkGetSemaphoreCounterValue vkGetSemaphoreCounterValue = 0;
- PFN_vkGetSemaphoreFdKHR vkGetSemaphoreFdKHR = 0;
-#ifdef VK_USE_PLATFORM_WIN32_KHR
+ PFN_vkGetRayTracingShaderGroupHandlesKHR vkGetRayTracingShaderGroupHandlesKHR = 0;
+ PFN_vkGetRayTracingShaderGroupHandlesNV vkGetRayTracingShaderGroupHandlesNV = 0;
+ PFN_vkGetRayTracingShaderGroupStackSizeKHR vkGetRayTracingShaderGroupStackSizeKHR = 0;
+ PFN_vkGetRefreshCycleDurationGOOGLE vkGetRefreshCycleDurationGOOGLE = 0;
+ PFN_vkGetRenderAreaGranularity vkGetRenderAreaGranularity = 0;
+ PFN_vkGetSemaphoreCounterValue vkGetSemaphoreCounterValue = 0;
+ PFN_vkGetSemaphoreCounterValueKHR vkGetSemaphoreCounterValueKHR = 0;
+ PFN_vkGetSemaphoreFdKHR vkGetSemaphoreFdKHR = 0;
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
PFN_vkGetSemaphoreWin32HandleKHR vkGetSemaphoreWin32HandleKHR = 0;
+#else
+ PFN_dummy placeholder_dont_call_vkGetSemaphoreWin32HandleKHR = 0;
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+#if defined( VK_USE_PLATFORM_FUCHSIA )
+ PFN_vkGetSemaphoreZirconHandleFUCHSIA vkGetSemaphoreZirconHandleFUCHSIA = 0;
+#else
+ PFN_dummy placeholder_dont_call_vkGetSemaphoreZirconHandleFUCHSIA = 0;
+#endif /*VK_USE_PLATFORM_FUCHSIA*/
+ PFN_vkGetShaderInfoAMD vkGetShaderInfoAMD = 0;
+ PFN_vkGetSubpassShadingMaxWorkgroupSizeHUAWEI vkGetSubpassShadingMaxWorkgroupSizeHUAWEI = 0;
+ PFN_vkGetSwapchainCounterEXT vkGetSwapchainCounterEXT = 0;
+ PFN_vkGetSwapchainImagesKHR vkGetSwapchainImagesKHR = 0;
+ PFN_vkGetSwapchainStatusKHR vkGetSwapchainStatusKHR = 0;
+ PFN_vkGetValidationCacheDataEXT vkGetValidationCacheDataEXT = 0;
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ PFN_vkGetVideoSessionMemoryRequirementsKHR vkGetVideoSessionMemoryRequirementsKHR = 0;
+#else
+ PFN_dummy placeholder_dont_call_vkGetVideoSessionMemoryRequirementsKHR = 0;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ PFN_vkGetWinrtDisplayNV vkGetWinrtDisplayNV = 0;
+#else
+ PFN_dummy placeholder_dont_call_vkGetWinrtDisplayNV = 0;
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
- PFN_vkGetShaderInfoAMD vkGetShaderInfoAMD = 0;
- PFN_vkGetSwapchainCounterEXT vkGetSwapchainCounterEXT = 0;
- PFN_vkGetSwapchainImagesKHR vkGetSwapchainImagesKHR = 0;
- PFN_vkGetSwapchainStatusKHR vkGetSwapchainStatusKHR = 0;
- PFN_vkGetValidationCacheDataEXT vkGetValidationCacheDataEXT = 0;
PFN_vkImportFenceFdKHR vkImportFenceFdKHR = 0;
-#ifdef VK_USE_PLATFORM_WIN32_KHR
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
PFN_vkImportFenceWin32HandleKHR vkImportFenceWin32HandleKHR = 0;
+#else
+ PFN_dummy placeholder_dont_call_vkImportFenceWin32HandleKHR = 0;
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
PFN_vkImportSemaphoreFdKHR vkImportSemaphoreFdKHR = 0;
-#ifdef VK_USE_PLATFORM_WIN32_KHR
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
PFN_vkImportSemaphoreWin32HandleKHR vkImportSemaphoreWin32HandleKHR = 0;
+#else
+ PFN_dummy placeholder_dont_call_vkImportSemaphoreWin32HandleKHR = 0;
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
- PFN_vkInitializePerformanceApiINTEL vkInitializePerformanceApiINTEL = 0;
- PFN_vkInvalidateMappedMemoryRanges vkInvalidateMappedMemoryRanges = 0;
- PFN_vkMapMemory vkMapMemory = 0;
- PFN_vkMergePipelineCaches vkMergePipelineCaches = 0;
- PFN_vkMergeValidationCachesEXT vkMergeValidationCachesEXT = 0;
- PFN_vkQueueBeginDebugUtilsLabelEXT vkQueueBeginDebugUtilsLabelEXT = 0;
- PFN_vkQueueBindSparse vkQueueBindSparse = 0;
- PFN_vkQueueEndDebugUtilsLabelEXT vkQueueEndDebugUtilsLabelEXT = 0;
- PFN_vkQueueInsertDebugUtilsLabelEXT vkQueueInsertDebugUtilsLabelEXT = 0;
- PFN_vkQueuePresentKHR vkQueuePresentKHR = 0;
+#if defined( VK_USE_PLATFORM_FUCHSIA )
+ PFN_vkImportSemaphoreZirconHandleFUCHSIA vkImportSemaphoreZirconHandleFUCHSIA = 0;
+#else
+ PFN_dummy placeholder_dont_call_vkImportSemaphoreZirconHandleFUCHSIA = 0;
+#endif /*VK_USE_PLATFORM_FUCHSIA*/
+ PFN_vkInitializePerformanceApiINTEL vkInitializePerformanceApiINTEL = 0;
+ PFN_vkInvalidateMappedMemoryRanges vkInvalidateMappedMemoryRanges = 0;
+ PFN_vkMapMemory vkMapMemory = 0;
+ PFN_vkMergePipelineCaches vkMergePipelineCaches = 0;
+ PFN_vkMergeValidationCachesEXT vkMergeValidationCachesEXT = 0;
+ PFN_vkQueueBeginDebugUtilsLabelEXT vkQueueBeginDebugUtilsLabelEXT = 0;
+ PFN_vkQueueBindSparse vkQueueBindSparse = 0;
+ PFN_vkQueueEndDebugUtilsLabelEXT vkQueueEndDebugUtilsLabelEXT = 0;
+ PFN_vkQueueInsertDebugUtilsLabelEXT vkQueueInsertDebugUtilsLabelEXT = 0;
+ PFN_vkQueuePresentKHR vkQueuePresentKHR = 0;
PFN_vkQueueSetPerformanceConfigurationINTEL vkQueueSetPerformanceConfigurationINTEL = 0;
- PFN_vkQueueSubmit vkQueueSubmit = 0;
- PFN_vkQueueWaitIdle vkQueueWaitIdle = 0;
- PFN_vkRegisterDeviceEventEXT vkRegisterDeviceEventEXT = 0;
- PFN_vkRegisterDisplayEventEXT vkRegisterDisplayEventEXT = 0;
- PFN_vkReleaseDisplayEXT vkReleaseDisplayEXT = 0;
-#ifdef VK_USE_PLATFORM_WIN32_KHR
+ PFN_vkQueueSubmit vkQueueSubmit = 0;
+ PFN_vkQueueSubmit2KHR vkQueueSubmit2KHR = 0;
+ PFN_vkQueueWaitIdle vkQueueWaitIdle = 0;
+ PFN_vkRegisterDeviceEventEXT vkRegisterDeviceEventEXT = 0;
+ PFN_vkRegisterDisplayEventEXT vkRegisterDisplayEventEXT = 0;
+ PFN_vkReleaseDisplayEXT vkReleaseDisplayEXT = 0;
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
PFN_vkReleaseFullScreenExclusiveModeEXT vkReleaseFullScreenExclusiveModeEXT = 0;
+#else
+ PFN_dummy placeholder_dont_call_vkReleaseFullScreenExclusiveModeEXT = 0;
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
PFN_vkReleasePerformanceConfigurationINTEL vkReleasePerformanceConfigurationINTEL = 0;
- PFN_vkReleaseProfilingLockKHR vkReleaseProfilingLockKHR = 0;
- PFN_vkResetCommandBuffer vkResetCommandBuffer = 0;
- PFN_vkResetCommandPool vkResetCommandPool = 0;
- PFN_vkResetDescriptorPool vkResetDescriptorPool = 0;
- PFN_vkResetEvent vkResetEvent = 0;
- PFN_vkResetFences vkResetFences = 0;
- PFN_vkResetQueryPoolEXT vkResetQueryPoolEXT = 0;
- PFN_vkResetQueryPool vkResetQueryPool = 0;
- PFN_vkSetDebugUtilsObjectNameEXT vkSetDebugUtilsObjectNameEXT = 0;
- PFN_vkSetDebugUtilsObjectTagEXT vkSetDebugUtilsObjectTagEXT = 0;
- PFN_vkSetEvent vkSetEvent = 0;
- PFN_vkSetHdrMetadataEXT vkSetHdrMetadataEXT = 0;
- PFN_vkSetLocalDimmingAMD vkSetLocalDimmingAMD = 0;
- PFN_vkSetPrivateDataEXT vkSetPrivateDataEXT = 0;
- PFN_vkSignalSemaphoreKHR vkSignalSemaphoreKHR = 0;
- PFN_vkSignalSemaphore vkSignalSemaphore = 0;
- PFN_vkSubmitDebugUtilsMessageEXT vkSubmitDebugUtilsMessageEXT = 0;
- PFN_vkTrimCommandPoolKHR vkTrimCommandPoolKHR = 0;
- PFN_vkTrimCommandPool vkTrimCommandPool = 0;
- PFN_vkUninitializePerformanceApiINTEL vkUninitializePerformanceApiINTEL = 0;
- PFN_vkUnmapMemory vkUnmapMemory = 0;
- PFN_vkUpdateDescriptorSetWithTemplateKHR vkUpdateDescriptorSetWithTemplateKHR = 0;
- PFN_vkUpdateDescriptorSetWithTemplate vkUpdateDescriptorSetWithTemplate = 0;
- PFN_vkUpdateDescriptorSets vkUpdateDescriptorSets = 0;
- PFN_vkWaitForFences vkWaitForFences = 0;
- PFN_vkWaitSemaphoresKHR vkWaitSemaphoresKHR = 0;
- PFN_vkWaitSemaphores vkWaitSemaphores = 0;
+ PFN_vkReleaseProfilingLockKHR vkReleaseProfilingLockKHR = 0;
+ PFN_vkResetCommandBuffer vkResetCommandBuffer = 0;
+ PFN_vkResetCommandPool vkResetCommandPool = 0;
+ PFN_vkResetDescriptorPool vkResetDescriptorPool = 0;
+ PFN_vkResetEvent vkResetEvent = 0;
+ PFN_vkResetFences vkResetFences = 0;
+ PFN_vkResetQueryPool vkResetQueryPool = 0;
+ PFN_vkResetQueryPoolEXT vkResetQueryPoolEXT = 0;
+ PFN_vkSetDebugUtilsObjectNameEXT vkSetDebugUtilsObjectNameEXT = 0;
+ PFN_vkSetDebugUtilsObjectTagEXT vkSetDebugUtilsObjectTagEXT = 0;
+ PFN_vkSetEvent vkSetEvent = 0;
+ PFN_vkSetHdrMetadataEXT vkSetHdrMetadataEXT = 0;
+ PFN_vkSetLocalDimmingAMD vkSetLocalDimmingAMD = 0;
+ PFN_vkSetPrivateDataEXT vkSetPrivateDataEXT = 0;
+ PFN_vkSignalSemaphore vkSignalSemaphore = 0;
+ PFN_vkSignalSemaphoreKHR vkSignalSemaphoreKHR = 0;
+ PFN_vkSubmitDebugUtilsMessageEXT vkSubmitDebugUtilsMessageEXT = 0;
+ PFN_vkTrimCommandPool vkTrimCommandPool = 0;
+ PFN_vkTrimCommandPoolKHR vkTrimCommandPoolKHR = 0;
+ PFN_vkUninitializePerformanceApiINTEL vkUninitializePerformanceApiINTEL = 0;
+ PFN_vkUnmapMemory vkUnmapMemory = 0;
+ PFN_vkUpdateDescriptorSetWithTemplate vkUpdateDescriptorSetWithTemplate = 0;
+ PFN_vkUpdateDescriptorSetWithTemplateKHR vkUpdateDescriptorSetWithTemplateKHR = 0;
+ PFN_vkUpdateDescriptorSets vkUpdateDescriptorSets = 0;
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ PFN_vkUpdateVideoSessionParametersKHR vkUpdateVideoSessionParametersKHR = 0;
+#else
+ PFN_dummy placeholder_dont_call_vkUpdateVideoSessionParametersKHR = 0;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ PFN_vkWaitForFences vkWaitForFences = 0;
+ PFN_vkWaitSemaphores vkWaitSemaphores = 0;
+ PFN_vkWaitSemaphoresKHR vkWaitSemaphoresKHR = 0;
PFN_vkWriteAccelerationStructuresPropertiesKHR vkWriteAccelerationStructuresPropertiesKHR = 0;
public:
- DispatchLoaderDynamic() VULKAN_HPP_NOEXCEPT = default;
+ DispatchLoaderDynamic() VULKAN_HPP_NOEXCEPT = default;
+ DispatchLoaderDynamic( DispatchLoaderDynamic const & rhs ) VULKAN_HPP_NOEXCEPT = default;
-#if !defined(VK_NO_PROTOTYPES)
- // This interface is designed to be used for per-device function pointers in combination with a linked vulkan library.
+#if !defined( VK_NO_PROTOTYPES )
+ // This interface is designed to be used for per-device function pointers in combination with a linked vulkan
+ // library.
template <typename DynamicLoader>
- void init(VULKAN_HPP_NAMESPACE::Instance const& instance, VULKAN_HPP_NAMESPACE::Device const& device, DynamicLoader const& dl) VULKAN_HPP_NOEXCEPT
- {
- PFN_vkGetInstanceProcAddr getInstanceProcAddr = dl.template getProcAddress<PFN_vkGetInstanceProcAddr>("vkGetInstanceProcAddr");
- PFN_vkGetDeviceProcAddr getDeviceProcAddr = dl.template getProcAddress<PFN_vkGetDeviceProcAddr>("vkGetDeviceProcAddr");
- init(static_cast<VkInstance>(instance), getInstanceProcAddr, static_cast<VkDevice>(device), device ? getDeviceProcAddr : nullptr);
- }
-
- // This interface is designed to be used for per-device function pointers in combination with a linked vulkan library.
+ void init( VULKAN_HPP_NAMESPACE::Instance const & instance,
+ VULKAN_HPP_NAMESPACE::Device const & device,
+ DynamicLoader const & dl ) VULKAN_HPP_NOEXCEPT
+ {
+ PFN_vkGetInstanceProcAddr getInstanceProcAddr =
+ dl.template getProcAddress<PFN_vkGetInstanceProcAddr>( "vkGetInstanceProcAddr" );
+ PFN_vkGetDeviceProcAddr getDeviceProcAddr =
+ dl.template getProcAddress<PFN_vkGetDeviceProcAddr>( "vkGetDeviceProcAddr" );
+ init( static_cast<VkInstance>( instance ),
+ getInstanceProcAddr,
+ static_cast<VkDevice>( device ),
+ device ? getDeviceProcAddr : nullptr );
+ }
+
+ // This interface is designed to be used for per-device function pointers in combination with a linked vulkan
+ // library.
template <typename DynamicLoader
-#if VULKAN_HPP_ENABLE_DYNAMIC_LOADER_TOOL
- = VULKAN_HPP_NAMESPACE::DynamicLoader
-#endif
- >
- void init(VULKAN_HPP_NAMESPACE::Instance const& instance, VULKAN_HPP_NAMESPACE::Device const& device) VULKAN_HPP_NOEXCEPT
+# if VULKAN_HPP_ENABLE_DYNAMIC_LOADER_TOOL
+ = VULKAN_HPP_NAMESPACE::DynamicLoader
+# endif
+ >
+ void init( VULKAN_HPP_NAMESPACE::Instance const & instance,
+ VULKAN_HPP_NAMESPACE::Device const & device ) VULKAN_HPP_NOEXCEPT
{
static DynamicLoader dl;
- init(instance, device, dl);
+ init( instance, device, dl );
}
-#endif // !defined(VK_NO_PROTOTYPES)
+#endif // !defined( VK_NO_PROTOTYPES )
- DispatchLoaderDynamic(PFN_vkGetInstanceProcAddr getInstanceProcAddr) VULKAN_HPP_NOEXCEPT
+ DispatchLoaderDynamic( PFN_vkGetInstanceProcAddr getInstanceProcAddr ) VULKAN_HPP_NOEXCEPT
{
- init(getInstanceProcAddr);
+ init( getInstanceProcAddr );
}
void init( PFN_vkGetInstanceProcAddr getInstanceProcAddr ) VULKAN_HPP_NOEXCEPT
{
- VULKAN_HPP_ASSERT(getInstanceProcAddr);
+ VULKAN_HPP_ASSERT( getInstanceProcAddr );
vkGetInstanceProcAddr = getInstanceProcAddr;
- vkCreateInstance = PFN_vkCreateInstance( vkGetInstanceProcAddr( NULL, "vkCreateInstance" ) );
- vkEnumerateInstanceExtensionProperties = PFN_vkEnumerateInstanceExtensionProperties( vkGetInstanceProcAddr( NULL, "vkEnumerateInstanceExtensionProperties" ) );
- vkEnumerateInstanceLayerProperties = PFN_vkEnumerateInstanceLayerProperties( vkGetInstanceProcAddr( NULL, "vkEnumerateInstanceLayerProperties" ) );
- vkEnumerateInstanceVersion = PFN_vkEnumerateInstanceVersion( vkGetInstanceProcAddr( NULL, "vkEnumerateInstanceVersion" ) );
+ vkCreateInstance = PFN_vkCreateInstance( vkGetInstanceProcAddr( NULL, "vkCreateInstance" ) );
+ vkEnumerateInstanceExtensionProperties = PFN_vkEnumerateInstanceExtensionProperties(
+ vkGetInstanceProcAddr( NULL, "vkEnumerateInstanceExtensionProperties" ) );
+ vkEnumerateInstanceLayerProperties =
+ PFN_vkEnumerateInstanceLayerProperties( vkGetInstanceProcAddr( NULL, "vkEnumerateInstanceLayerProperties" ) );
+ vkEnumerateInstanceVersion =
+ PFN_vkEnumerateInstanceVersion( vkGetInstanceProcAddr( NULL, "vkEnumerateInstanceVersion" ) );
}
// This interface does not require a linked vulkan library.
- DispatchLoaderDynamic( VkInstance instance, PFN_vkGetInstanceProcAddr getInstanceProcAddr, VkDevice device = VK_NULL_HANDLE, PFN_vkGetDeviceProcAddr getDeviceProcAddr = nullptr ) VULKAN_HPP_NOEXCEPT
+ DispatchLoaderDynamic( VkInstance instance,
+ PFN_vkGetInstanceProcAddr getInstanceProcAddr,
+ VkDevice device = {},
+ PFN_vkGetDeviceProcAddr getDeviceProcAddr = nullptr ) VULKAN_HPP_NOEXCEPT
{
init( instance, getInstanceProcAddr, device, getDeviceProcAddr );
}
// This interface does not require a linked vulkan library.
- void init( VkInstance instance, PFN_vkGetInstanceProcAddr getInstanceProcAddr, VkDevice device = VK_NULL_HANDLE, PFN_vkGetDeviceProcAddr /*getDeviceProcAddr*/ = nullptr ) VULKAN_HPP_NOEXCEPT
+ void init( VkInstance instance,
+ PFN_vkGetInstanceProcAddr getInstanceProcAddr,
+ VkDevice device = {},
+ PFN_vkGetDeviceProcAddr /*getDeviceProcAddr*/ = nullptr ) VULKAN_HPP_NOEXCEPT
{
- VULKAN_HPP_ASSERT(instance && getInstanceProcAddr);
+ VULKAN_HPP_ASSERT( instance && getInstanceProcAddr );
vkGetInstanceProcAddr = getInstanceProcAddr;
- init( VULKAN_HPP_NAMESPACE::Instance(instance) );
- if (device) {
- init( VULKAN_HPP_NAMESPACE::Device(device) );
+ init( VULKAN_HPP_NAMESPACE::Instance( instance ) );
+ if ( device )
+ {
+ init( VULKAN_HPP_NAMESPACE::Device( device ) );
}
}
void init( VULKAN_HPP_NAMESPACE::Instance instanceCpp ) VULKAN_HPP_NOEXCEPT
{
- VkInstance instance = static_cast<VkInstance>(instanceCpp);
-#ifdef VK_USE_PLATFORM_XLIB_XRANDR_EXT
- vkAcquireXlibDisplayEXT = PFN_vkAcquireXlibDisplayEXT( vkGetInstanceProcAddr( instance, "vkAcquireXlibDisplayEXT" ) );
+ VkInstance instance = static_cast<VkInstance>( instanceCpp );
+ vkAcquireDrmDisplayEXT =
+ PFN_vkAcquireDrmDisplayEXT( vkGetInstanceProcAddr( instance, "vkAcquireDrmDisplayEXT" ) );
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ vkAcquireWinrtDisplayNV =
+ PFN_vkAcquireWinrtDisplayNV( vkGetInstanceProcAddr( instance, "vkAcquireWinrtDisplayNV" ) );
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+#if defined( VK_USE_PLATFORM_XLIB_XRANDR_EXT )
+ vkAcquireXlibDisplayEXT =
+ PFN_vkAcquireXlibDisplayEXT( vkGetInstanceProcAddr( instance, "vkAcquireXlibDisplayEXT" ) );
#endif /*VK_USE_PLATFORM_XLIB_XRANDR_EXT*/
-#ifdef VK_USE_PLATFORM_ANDROID_KHR
- vkCreateAndroidSurfaceKHR = PFN_vkCreateAndroidSurfaceKHR( vkGetInstanceProcAddr( instance, "vkCreateAndroidSurfaceKHR" ) );
+#if defined( VK_USE_PLATFORM_ANDROID_KHR )
+ vkCreateAndroidSurfaceKHR =
+ PFN_vkCreateAndroidSurfaceKHR( vkGetInstanceProcAddr( instance, "vkCreateAndroidSurfaceKHR" ) );
#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
- vkCreateDebugReportCallbackEXT = PFN_vkCreateDebugReportCallbackEXT( vkGetInstanceProcAddr( instance, "vkCreateDebugReportCallbackEXT" ) );
- vkCreateDebugUtilsMessengerEXT = PFN_vkCreateDebugUtilsMessengerEXT( vkGetInstanceProcAddr( instance, "vkCreateDebugUtilsMessengerEXT" ) );
+ vkCreateDebugReportCallbackEXT =
+ PFN_vkCreateDebugReportCallbackEXT( vkGetInstanceProcAddr( instance, "vkCreateDebugReportCallbackEXT" ) );
+ vkCreateDebugUtilsMessengerEXT =
+ PFN_vkCreateDebugUtilsMessengerEXT( vkGetInstanceProcAddr( instance, "vkCreateDebugUtilsMessengerEXT" ) );
vkCreateDevice = PFN_vkCreateDevice( vkGetInstanceProcAddr( instance, "vkCreateDevice" ) );
-#ifdef VK_USE_PLATFORM_DIRECTFB_EXT
- vkCreateDirectFBSurfaceEXT = PFN_vkCreateDirectFBSurfaceEXT( vkGetInstanceProcAddr( instance, "vkCreateDirectFBSurfaceEXT" ) );
+#if defined( VK_USE_PLATFORM_DIRECTFB_EXT )
+ vkCreateDirectFBSurfaceEXT =
+ PFN_vkCreateDirectFBSurfaceEXT( vkGetInstanceProcAddr( instance, "vkCreateDirectFBSurfaceEXT" ) );
#endif /*VK_USE_PLATFORM_DIRECTFB_EXT*/
- vkCreateDisplayModeKHR = PFN_vkCreateDisplayModeKHR( vkGetInstanceProcAddr( instance, "vkCreateDisplayModeKHR" ) );
- vkCreateDisplayPlaneSurfaceKHR = PFN_vkCreateDisplayPlaneSurfaceKHR( vkGetInstanceProcAddr( instance, "vkCreateDisplayPlaneSurfaceKHR" ) );
- vkCreateHeadlessSurfaceEXT = PFN_vkCreateHeadlessSurfaceEXT( vkGetInstanceProcAddr( instance, "vkCreateHeadlessSurfaceEXT" ) );
-#ifdef VK_USE_PLATFORM_IOS_MVK
+ vkCreateDisplayModeKHR =
+ PFN_vkCreateDisplayModeKHR( vkGetInstanceProcAddr( instance, "vkCreateDisplayModeKHR" ) );
+ vkCreateDisplayPlaneSurfaceKHR =
+ PFN_vkCreateDisplayPlaneSurfaceKHR( vkGetInstanceProcAddr( instance, "vkCreateDisplayPlaneSurfaceKHR" ) );
+ vkCreateHeadlessSurfaceEXT =
+ PFN_vkCreateHeadlessSurfaceEXT( vkGetInstanceProcAddr( instance, "vkCreateHeadlessSurfaceEXT" ) );
+#if defined( VK_USE_PLATFORM_IOS_MVK )
vkCreateIOSSurfaceMVK = PFN_vkCreateIOSSurfaceMVK( vkGetInstanceProcAddr( instance, "vkCreateIOSSurfaceMVK" ) );
#endif /*VK_USE_PLATFORM_IOS_MVK*/
-#ifdef VK_USE_PLATFORM_FUCHSIA
- vkCreateImagePipeSurfaceFUCHSIA = PFN_vkCreateImagePipeSurfaceFUCHSIA( vkGetInstanceProcAddr( instance, "vkCreateImagePipeSurfaceFUCHSIA" ) );
+#if defined( VK_USE_PLATFORM_FUCHSIA )
+ vkCreateImagePipeSurfaceFUCHSIA =
+ PFN_vkCreateImagePipeSurfaceFUCHSIA( vkGetInstanceProcAddr( instance, "vkCreateImagePipeSurfaceFUCHSIA" ) );
#endif /*VK_USE_PLATFORM_FUCHSIA*/
-#ifdef VK_USE_PLATFORM_MACOS_MVK
- vkCreateMacOSSurfaceMVK = PFN_vkCreateMacOSSurfaceMVK( vkGetInstanceProcAddr( instance, "vkCreateMacOSSurfaceMVK" ) );
+#if defined( VK_USE_PLATFORM_MACOS_MVK )
+ vkCreateMacOSSurfaceMVK =
+ PFN_vkCreateMacOSSurfaceMVK( vkGetInstanceProcAddr( instance, "vkCreateMacOSSurfaceMVK" ) );
#endif /*VK_USE_PLATFORM_MACOS_MVK*/
-#ifdef VK_USE_PLATFORM_METAL_EXT
- vkCreateMetalSurfaceEXT = PFN_vkCreateMetalSurfaceEXT( vkGetInstanceProcAddr( instance, "vkCreateMetalSurfaceEXT" ) );
+#if defined( VK_USE_PLATFORM_METAL_EXT )
+ vkCreateMetalSurfaceEXT =
+ PFN_vkCreateMetalSurfaceEXT( vkGetInstanceProcAddr( instance, "vkCreateMetalSurfaceEXT" ) );
#endif /*VK_USE_PLATFORM_METAL_EXT*/
-#ifdef VK_USE_PLATFORM_GGP
- vkCreateStreamDescriptorSurfaceGGP = PFN_vkCreateStreamDescriptorSurfaceGGP( vkGetInstanceProcAddr( instance, "vkCreateStreamDescriptorSurfaceGGP" ) );
+#if defined( VK_USE_PLATFORM_SCREEN_QNX )
+ vkCreateScreenSurfaceQNX =
+ PFN_vkCreateScreenSurfaceQNX( vkGetInstanceProcAddr( instance, "vkCreateScreenSurfaceQNX" ) );
+#endif /*VK_USE_PLATFORM_SCREEN_QNX*/
+#if defined( VK_USE_PLATFORM_GGP )
+ vkCreateStreamDescriptorSurfaceGGP = PFN_vkCreateStreamDescriptorSurfaceGGP(
+ vkGetInstanceProcAddr( instance, "vkCreateStreamDescriptorSurfaceGGP" ) );
#endif /*VK_USE_PLATFORM_GGP*/
-#ifdef VK_USE_PLATFORM_VI_NN
+#if defined( VK_USE_PLATFORM_VI_NN )
vkCreateViSurfaceNN = PFN_vkCreateViSurfaceNN( vkGetInstanceProcAddr( instance, "vkCreateViSurfaceNN" ) );
#endif /*VK_USE_PLATFORM_VI_NN*/
-#ifdef VK_USE_PLATFORM_WAYLAND_KHR
- vkCreateWaylandSurfaceKHR = PFN_vkCreateWaylandSurfaceKHR( vkGetInstanceProcAddr( instance, "vkCreateWaylandSurfaceKHR" ) );
+#if defined( VK_USE_PLATFORM_WAYLAND_KHR )
+ vkCreateWaylandSurfaceKHR =
+ PFN_vkCreateWaylandSurfaceKHR( vkGetInstanceProcAddr( instance, "vkCreateWaylandSurfaceKHR" ) );
#endif /*VK_USE_PLATFORM_WAYLAND_KHR*/
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- vkCreateWin32SurfaceKHR = PFN_vkCreateWin32SurfaceKHR( vkGetInstanceProcAddr( instance, "vkCreateWin32SurfaceKHR" ) );
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ vkCreateWin32SurfaceKHR =
+ PFN_vkCreateWin32SurfaceKHR( vkGetInstanceProcAddr( instance, "vkCreateWin32SurfaceKHR" ) );
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-#ifdef VK_USE_PLATFORM_XCB_KHR
+#if defined( VK_USE_PLATFORM_XCB_KHR )
vkCreateXcbSurfaceKHR = PFN_vkCreateXcbSurfaceKHR( vkGetInstanceProcAddr( instance, "vkCreateXcbSurfaceKHR" ) );
#endif /*VK_USE_PLATFORM_XCB_KHR*/
-#ifdef VK_USE_PLATFORM_XLIB_KHR
- vkCreateXlibSurfaceKHR = PFN_vkCreateXlibSurfaceKHR( vkGetInstanceProcAddr( instance, "vkCreateXlibSurfaceKHR" ) );
+#if defined( VK_USE_PLATFORM_XLIB_KHR )
+ vkCreateXlibSurfaceKHR =
+ PFN_vkCreateXlibSurfaceKHR( vkGetInstanceProcAddr( instance, "vkCreateXlibSurfaceKHR" ) );
#endif /*VK_USE_PLATFORM_XLIB_KHR*/
- vkDebugReportMessageEXT = PFN_vkDebugReportMessageEXT( vkGetInstanceProcAddr( instance, "vkDebugReportMessageEXT" ) );
- vkDestroyDebugReportCallbackEXT = PFN_vkDestroyDebugReportCallbackEXT( vkGetInstanceProcAddr( instance, "vkDestroyDebugReportCallbackEXT" ) );
- vkDestroyDebugUtilsMessengerEXT = PFN_vkDestroyDebugUtilsMessengerEXT( vkGetInstanceProcAddr( instance, "vkDestroyDebugUtilsMessengerEXT" ) );
- vkDestroyInstance = PFN_vkDestroyInstance( vkGetInstanceProcAddr( instance, "vkDestroyInstance" ) );
+ vkDebugReportMessageEXT =
+ PFN_vkDebugReportMessageEXT( vkGetInstanceProcAddr( instance, "vkDebugReportMessageEXT" ) );
+ vkDestroyDebugReportCallbackEXT =
+ PFN_vkDestroyDebugReportCallbackEXT( vkGetInstanceProcAddr( instance, "vkDestroyDebugReportCallbackEXT" ) );
+ vkDestroyDebugUtilsMessengerEXT =
+ PFN_vkDestroyDebugUtilsMessengerEXT( vkGetInstanceProcAddr( instance, "vkDestroyDebugUtilsMessengerEXT" ) );
+ vkDestroyInstance = PFN_vkDestroyInstance( vkGetInstanceProcAddr( instance, "vkDestroyInstance" ) );
vkDestroySurfaceKHR = PFN_vkDestroySurfaceKHR( vkGetInstanceProcAddr( instance, "vkDestroySurfaceKHR" ) );
- vkEnumerateDeviceExtensionProperties = PFN_vkEnumerateDeviceExtensionProperties( vkGetInstanceProcAddr( instance, "vkEnumerateDeviceExtensionProperties" ) );
- vkEnumerateDeviceLayerProperties = PFN_vkEnumerateDeviceLayerProperties( vkGetInstanceProcAddr( instance, "vkEnumerateDeviceLayerProperties" ) );
- vkEnumeratePhysicalDeviceGroupsKHR = PFN_vkEnumeratePhysicalDeviceGroupsKHR( vkGetInstanceProcAddr( instance, "vkEnumeratePhysicalDeviceGroupsKHR" ) );
- vkEnumeratePhysicalDeviceGroups = PFN_vkEnumeratePhysicalDeviceGroups( vkGetInstanceProcAddr( instance, "vkEnumeratePhysicalDeviceGroups" ) );
- if ( !vkEnumeratePhysicalDeviceGroups ) vkEnumeratePhysicalDeviceGroups = vkEnumeratePhysicalDeviceGroupsKHR;
- vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR = PFN_vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR( vkGetInstanceProcAddr( instance, "vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR" ) );
- vkEnumeratePhysicalDevices = PFN_vkEnumeratePhysicalDevices( vkGetInstanceProcAddr( instance, "vkEnumeratePhysicalDevices" ) );
- vkGetDisplayModeProperties2KHR = PFN_vkGetDisplayModeProperties2KHR( vkGetInstanceProcAddr( instance, "vkGetDisplayModeProperties2KHR" ) );
- vkGetDisplayModePropertiesKHR = PFN_vkGetDisplayModePropertiesKHR( vkGetInstanceProcAddr( instance, "vkGetDisplayModePropertiesKHR" ) );
- vkGetDisplayPlaneCapabilities2KHR = PFN_vkGetDisplayPlaneCapabilities2KHR( vkGetInstanceProcAddr( instance, "vkGetDisplayPlaneCapabilities2KHR" ) );
- vkGetDisplayPlaneCapabilitiesKHR = PFN_vkGetDisplayPlaneCapabilitiesKHR( vkGetInstanceProcAddr( instance, "vkGetDisplayPlaneCapabilitiesKHR" ) );
- vkGetDisplayPlaneSupportedDisplaysKHR = PFN_vkGetDisplayPlaneSupportedDisplaysKHR( vkGetInstanceProcAddr( instance, "vkGetDisplayPlaneSupportedDisplaysKHR" ) );
+ vkEnumerateDeviceExtensionProperties = PFN_vkEnumerateDeviceExtensionProperties(
+ vkGetInstanceProcAddr( instance, "vkEnumerateDeviceExtensionProperties" ) );
+ vkEnumerateDeviceLayerProperties =
+ PFN_vkEnumerateDeviceLayerProperties( vkGetInstanceProcAddr( instance, "vkEnumerateDeviceLayerProperties" ) );
+ vkEnumeratePhysicalDeviceGroups =
+ PFN_vkEnumeratePhysicalDeviceGroups( vkGetInstanceProcAddr( instance, "vkEnumeratePhysicalDeviceGroups" ) );
+ vkEnumeratePhysicalDeviceGroupsKHR = PFN_vkEnumeratePhysicalDeviceGroupsKHR(
+ vkGetInstanceProcAddr( instance, "vkEnumeratePhysicalDeviceGroupsKHR" ) );
+ if ( !vkEnumeratePhysicalDeviceGroups )
+ vkEnumeratePhysicalDeviceGroups = vkEnumeratePhysicalDeviceGroupsKHR;
+ vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR =
+ PFN_vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR(
+ vkGetInstanceProcAddr( instance, "vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR" ) );
+ vkEnumeratePhysicalDevices =
+ PFN_vkEnumeratePhysicalDevices( vkGetInstanceProcAddr( instance, "vkEnumeratePhysicalDevices" ) );
+ vkGetDisplayModeProperties2KHR =
+ PFN_vkGetDisplayModeProperties2KHR( vkGetInstanceProcAddr( instance, "vkGetDisplayModeProperties2KHR" ) );
+ vkGetDisplayModePropertiesKHR =
+ PFN_vkGetDisplayModePropertiesKHR( vkGetInstanceProcAddr( instance, "vkGetDisplayModePropertiesKHR" ) );
+ vkGetDisplayPlaneCapabilities2KHR =
+ PFN_vkGetDisplayPlaneCapabilities2KHR( vkGetInstanceProcAddr( instance, "vkGetDisplayPlaneCapabilities2KHR" ) );
+ vkGetDisplayPlaneCapabilitiesKHR =
+ PFN_vkGetDisplayPlaneCapabilitiesKHR( vkGetInstanceProcAddr( instance, "vkGetDisplayPlaneCapabilitiesKHR" ) );
+ vkGetDisplayPlaneSupportedDisplaysKHR = PFN_vkGetDisplayPlaneSupportedDisplaysKHR(
+ vkGetInstanceProcAddr( instance, "vkGetDisplayPlaneSupportedDisplaysKHR" ) );
+ vkGetDrmDisplayEXT = PFN_vkGetDrmDisplayEXT( vkGetInstanceProcAddr( instance, "vkGetDrmDisplayEXT" ) );
vkGetInstanceProcAddr = PFN_vkGetInstanceProcAddr( vkGetInstanceProcAddr( instance, "vkGetInstanceProcAddr" ) );
- vkGetPhysicalDeviceCalibrateableTimeDomainsEXT = PFN_vkGetPhysicalDeviceCalibrateableTimeDomainsEXT( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceCalibrateableTimeDomainsEXT" ) );
- vkGetPhysicalDeviceCooperativeMatrixPropertiesNV = PFN_vkGetPhysicalDeviceCooperativeMatrixPropertiesNV( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceCooperativeMatrixPropertiesNV" ) );
-#ifdef VK_USE_PLATFORM_DIRECTFB_EXT
- vkGetPhysicalDeviceDirectFBPresentationSupportEXT = PFN_vkGetPhysicalDeviceDirectFBPresentationSupportEXT( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceDirectFBPresentationSupportEXT" ) );
+ vkGetPhysicalDeviceCalibrateableTimeDomainsEXT = PFN_vkGetPhysicalDeviceCalibrateableTimeDomainsEXT(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceCalibrateableTimeDomainsEXT" ) );
+ vkGetPhysicalDeviceCooperativeMatrixPropertiesNV = PFN_vkGetPhysicalDeviceCooperativeMatrixPropertiesNV(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceCooperativeMatrixPropertiesNV" ) );
+#if defined( VK_USE_PLATFORM_DIRECTFB_EXT )
+ vkGetPhysicalDeviceDirectFBPresentationSupportEXT = PFN_vkGetPhysicalDeviceDirectFBPresentationSupportEXT(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceDirectFBPresentationSupportEXT" ) );
#endif /*VK_USE_PLATFORM_DIRECTFB_EXT*/
- vkGetPhysicalDeviceDisplayPlaneProperties2KHR = PFN_vkGetPhysicalDeviceDisplayPlaneProperties2KHR( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceDisplayPlaneProperties2KHR" ) );
- vkGetPhysicalDeviceDisplayPlanePropertiesKHR = PFN_vkGetPhysicalDeviceDisplayPlanePropertiesKHR( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceDisplayPlanePropertiesKHR" ) );
- vkGetPhysicalDeviceDisplayProperties2KHR = PFN_vkGetPhysicalDeviceDisplayProperties2KHR( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceDisplayProperties2KHR" ) );
- vkGetPhysicalDeviceDisplayPropertiesKHR = PFN_vkGetPhysicalDeviceDisplayPropertiesKHR( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceDisplayPropertiesKHR" ) );
- vkGetPhysicalDeviceExternalBufferPropertiesKHR = PFN_vkGetPhysicalDeviceExternalBufferPropertiesKHR( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceExternalBufferPropertiesKHR" ) );
- vkGetPhysicalDeviceExternalBufferProperties = PFN_vkGetPhysicalDeviceExternalBufferProperties( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceExternalBufferProperties" ) );
- if ( !vkGetPhysicalDeviceExternalBufferProperties ) vkGetPhysicalDeviceExternalBufferProperties = vkGetPhysicalDeviceExternalBufferPropertiesKHR;
- vkGetPhysicalDeviceExternalFencePropertiesKHR = PFN_vkGetPhysicalDeviceExternalFencePropertiesKHR( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceExternalFencePropertiesKHR" ) );
- vkGetPhysicalDeviceExternalFenceProperties = PFN_vkGetPhysicalDeviceExternalFenceProperties( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceExternalFenceProperties" ) );
- if ( !vkGetPhysicalDeviceExternalFenceProperties ) vkGetPhysicalDeviceExternalFenceProperties = vkGetPhysicalDeviceExternalFencePropertiesKHR;
- vkGetPhysicalDeviceExternalImageFormatPropertiesNV = PFN_vkGetPhysicalDeviceExternalImageFormatPropertiesNV( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceExternalImageFormatPropertiesNV" ) );
- vkGetPhysicalDeviceExternalSemaphorePropertiesKHR = PFN_vkGetPhysicalDeviceExternalSemaphorePropertiesKHR( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceExternalSemaphorePropertiesKHR" ) );
- vkGetPhysicalDeviceExternalSemaphoreProperties = PFN_vkGetPhysicalDeviceExternalSemaphoreProperties( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceExternalSemaphoreProperties" ) );
- if ( !vkGetPhysicalDeviceExternalSemaphoreProperties ) vkGetPhysicalDeviceExternalSemaphoreProperties = vkGetPhysicalDeviceExternalSemaphorePropertiesKHR;
- vkGetPhysicalDeviceFeatures = PFN_vkGetPhysicalDeviceFeatures( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceFeatures" ) );
- vkGetPhysicalDeviceFeatures2KHR = PFN_vkGetPhysicalDeviceFeatures2KHR( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceFeatures2KHR" ) );
- vkGetPhysicalDeviceFeatures2 = PFN_vkGetPhysicalDeviceFeatures2( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceFeatures2" ) );
- if ( !vkGetPhysicalDeviceFeatures2 ) vkGetPhysicalDeviceFeatures2 = vkGetPhysicalDeviceFeatures2KHR;
- vkGetPhysicalDeviceFormatProperties = PFN_vkGetPhysicalDeviceFormatProperties( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceFormatProperties" ) );
- vkGetPhysicalDeviceFormatProperties2KHR = PFN_vkGetPhysicalDeviceFormatProperties2KHR( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceFormatProperties2KHR" ) );
- vkGetPhysicalDeviceFormatProperties2 = PFN_vkGetPhysicalDeviceFormatProperties2( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceFormatProperties2" ) );
- if ( !vkGetPhysicalDeviceFormatProperties2 ) vkGetPhysicalDeviceFormatProperties2 = vkGetPhysicalDeviceFormatProperties2KHR;
- vkGetPhysicalDeviceFragmentShadingRatesKHR = PFN_vkGetPhysicalDeviceFragmentShadingRatesKHR( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceFragmentShadingRatesKHR" ) );
- vkGetPhysicalDeviceImageFormatProperties = PFN_vkGetPhysicalDeviceImageFormatProperties( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceImageFormatProperties" ) );
- vkGetPhysicalDeviceImageFormatProperties2KHR = PFN_vkGetPhysicalDeviceImageFormatProperties2KHR( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceImageFormatProperties2KHR" ) );
- vkGetPhysicalDeviceImageFormatProperties2 = PFN_vkGetPhysicalDeviceImageFormatProperties2( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceImageFormatProperties2" ) );
- if ( !vkGetPhysicalDeviceImageFormatProperties2 ) vkGetPhysicalDeviceImageFormatProperties2 = vkGetPhysicalDeviceImageFormatProperties2KHR;
- vkGetPhysicalDeviceMemoryProperties = PFN_vkGetPhysicalDeviceMemoryProperties( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceMemoryProperties" ) );
- vkGetPhysicalDeviceMemoryProperties2KHR = PFN_vkGetPhysicalDeviceMemoryProperties2KHR( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceMemoryProperties2KHR" ) );
- vkGetPhysicalDeviceMemoryProperties2 = PFN_vkGetPhysicalDeviceMemoryProperties2( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceMemoryProperties2" ) );
- if ( !vkGetPhysicalDeviceMemoryProperties2 ) vkGetPhysicalDeviceMemoryProperties2 = vkGetPhysicalDeviceMemoryProperties2KHR;
- vkGetPhysicalDeviceMultisamplePropertiesEXT = PFN_vkGetPhysicalDeviceMultisamplePropertiesEXT( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceMultisamplePropertiesEXT" ) );
- vkGetPhysicalDevicePresentRectanglesKHR = PFN_vkGetPhysicalDevicePresentRectanglesKHR( vkGetInstanceProcAddr( instance, "vkGetPhysicalDevicePresentRectanglesKHR" ) );
- vkGetPhysicalDeviceProperties = PFN_vkGetPhysicalDeviceProperties( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceProperties" ) );
- vkGetPhysicalDeviceProperties2KHR = PFN_vkGetPhysicalDeviceProperties2KHR( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceProperties2KHR" ) );
- vkGetPhysicalDeviceProperties2 = PFN_vkGetPhysicalDeviceProperties2( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceProperties2" ) );
- if ( !vkGetPhysicalDeviceProperties2 ) vkGetPhysicalDeviceProperties2 = vkGetPhysicalDeviceProperties2KHR;
- vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR = PFN_vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR" ) );
- vkGetPhysicalDeviceQueueFamilyProperties = PFN_vkGetPhysicalDeviceQueueFamilyProperties( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceQueueFamilyProperties" ) );
- vkGetPhysicalDeviceQueueFamilyProperties2KHR = PFN_vkGetPhysicalDeviceQueueFamilyProperties2KHR( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceQueueFamilyProperties2KHR" ) );
- vkGetPhysicalDeviceQueueFamilyProperties2 = PFN_vkGetPhysicalDeviceQueueFamilyProperties2( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceQueueFamilyProperties2" ) );
- if ( !vkGetPhysicalDeviceQueueFamilyProperties2 ) vkGetPhysicalDeviceQueueFamilyProperties2 = vkGetPhysicalDeviceQueueFamilyProperties2KHR;
- vkGetPhysicalDeviceSparseImageFormatProperties = PFN_vkGetPhysicalDeviceSparseImageFormatProperties( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSparseImageFormatProperties" ) );
- vkGetPhysicalDeviceSparseImageFormatProperties2KHR = PFN_vkGetPhysicalDeviceSparseImageFormatProperties2KHR( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSparseImageFormatProperties2KHR" ) );
- vkGetPhysicalDeviceSparseImageFormatProperties2 = PFN_vkGetPhysicalDeviceSparseImageFormatProperties2( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSparseImageFormatProperties2" ) );
- if ( !vkGetPhysicalDeviceSparseImageFormatProperties2 ) vkGetPhysicalDeviceSparseImageFormatProperties2 = vkGetPhysicalDeviceSparseImageFormatProperties2KHR;
- vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV = PFN_vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV" ) );
- vkGetPhysicalDeviceSurfaceCapabilities2EXT = PFN_vkGetPhysicalDeviceSurfaceCapabilities2EXT( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSurfaceCapabilities2EXT" ) );
- vkGetPhysicalDeviceSurfaceCapabilities2KHR = PFN_vkGetPhysicalDeviceSurfaceCapabilities2KHR( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSurfaceCapabilities2KHR" ) );
- vkGetPhysicalDeviceSurfaceCapabilitiesKHR = PFN_vkGetPhysicalDeviceSurfaceCapabilitiesKHR( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSurfaceCapabilitiesKHR" ) );
- vkGetPhysicalDeviceSurfaceFormats2KHR = PFN_vkGetPhysicalDeviceSurfaceFormats2KHR( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSurfaceFormats2KHR" ) );
- vkGetPhysicalDeviceSurfaceFormatsKHR = PFN_vkGetPhysicalDeviceSurfaceFormatsKHR( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSurfaceFormatsKHR" ) );
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- vkGetPhysicalDeviceSurfacePresentModes2EXT = PFN_vkGetPhysicalDeviceSurfacePresentModes2EXT( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSurfacePresentModes2EXT" ) );
+ vkGetPhysicalDeviceDisplayPlaneProperties2KHR = PFN_vkGetPhysicalDeviceDisplayPlaneProperties2KHR(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceDisplayPlaneProperties2KHR" ) );
+ vkGetPhysicalDeviceDisplayPlanePropertiesKHR = PFN_vkGetPhysicalDeviceDisplayPlanePropertiesKHR(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceDisplayPlanePropertiesKHR" ) );
+ vkGetPhysicalDeviceDisplayProperties2KHR = PFN_vkGetPhysicalDeviceDisplayProperties2KHR(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceDisplayProperties2KHR" ) );
+ vkGetPhysicalDeviceDisplayPropertiesKHR = PFN_vkGetPhysicalDeviceDisplayPropertiesKHR(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceDisplayPropertiesKHR" ) );
+ vkGetPhysicalDeviceExternalBufferProperties = PFN_vkGetPhysicalDeviceExternalBufferProperties(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceExternalBufferProperties" ) );
+ vkGetPhysicalDeviceExternalBufferPropertiesKHR = PFN_vkGetPhysicalDeviceExternalBufferPropertiesKHR(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceExternalBufferPropertiesKHR" ) );
+ if ( !vkGetPhysicalDeviceExternalBufferProperties )
+ vkGetPhysicalDeviceExternalBufferProperties = vkGetPhysicalDeviceExternalBufferPropertiesKHR;
+ vkGetPhysicalDeviceExternalFenceProperties = PFN_vkGetPhysicalDeviceExternalFenceProperties(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceExternalFenceProperties" ) );
+ vkGetPhysicalDeviceExternalFencePropertiesKHR = PFN_vkGetPhysicalDeviceExternalFencePropertiesKHR(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceExternalFencePropertiesKHR" ) );
+ if ( !vkGetPhysicalDeviceExternalFenceProperties )
+ vkGetPhysicalDeviceExternalFenceProperties = vkGetPhysicalDeviceExternalFencePropertiesKHR;
+ vkGetPhysicalDeviceExternalImageFormatPropertiesNV = PFN_vkGetPhysicalDeviceExternalImageFormatPropertiesNV(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceExternalImageFormatPropertiesNV" ) );
+ vkGetPhysicalDeviceExternalSemaphoreProperties = PFN_vkGetPhysicalDeviceExternalSemaphoreProperties(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceExternalSemaphoreProperties" ) );
+ vkGetPhysicalDeviceExternalSemaphorePropertiesKHR = PFN_vkGetPhysicalDeviceExternalSemaphorePropertiesKHR(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceExternalSemaphorePropertiesKHR" ) );
+ if ( !vkGetPhysicalDeviceExternalSemaphoreProperties )
+ vkGetPhysicalDeviceExternalSemaphoreProperties = vkGetPhysicalDeviceExternalSemaphorePropertiesKHR;
+ vkGetPhysicalDeviceFeatures =
+ PFN_vkGetPhysicalDeviceFeatures( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceFeatures" ) );
+ vkGetPhysicalDeviceFeatures2 =
+ PFN_vkGetPhysicalDeviceFeatures2( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceFeatures2" ) );
+ vkGetPhysicalDeviceFeatures2KHR =
+ PFN_vkGetPhysicalDeviceFeatures2KHR( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceFeatures2KHR" ) );
+ if ( !vkGetPhysicalDeviceFeatures2 )
+ vkGetPhysicalDeviceFeatures2 = vkGetPhysicalDeviceFeatures2KHR;
+ vkGetPhysicalDeviceFormatProperties = PFN_vkGetPhysicalDeviceFormatProperties(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceFormatProperties" ) );
+ vkGetPhysicalDeviceFormatProperties2 = PFN_vkGetPhysicalDeviceFormatProperties2(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceFormatProperties2" ) );
+ vkGetPhysicalDeviceFormatProperties2KHR = PFN_vkGetPhysicalDeviceFormatProperties2KHR(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceFormatProperties2KHR" ) );
+ if ( !vkGetPhysicalDeviceFormatProperties2 )
+ vkGetPhysicalDeviceFormatProperties2 = vkGetPhysicalDeviceFormatProperties2KHR;
+ vkGetPhysicalDeviceFragmentShadingRatesKHR = PFN_vkGetPhysicalDeviceFragmentShadingRatesKHR(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceFragmentShadingRatesKHR" ) );
+ vkGetPhysicalDeviceImageFormatProperties = PFN_vkGetPhysicalDeviceImageFormatProperties(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceImageFormatProperties" ) );
+ vkGetPhysicalDeviceImageFormatProperties2 = PFN_vkGetPhysicalDeviceImageFormatProperties2(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceImageFormatProperties2" ) );
+ vkGetPhysicalDeviceImageFormatProperties2KHR = PFN_vkGetPhysicalDeviceImageFormatProperties2KHR(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceImageFormatProperties2KHR" ) );
+ if ( !vkGetPhysicalDeviceImageFormatProperties2 )
+ vkGetPhysicalDeviceImageFormatProperties2 = vkGetPhysicalDeviceImageFormatProperties2KHR;
+ vkGetPhysicalDeviceMemoryProperties = PFN_vkGetPhysicalDeviceMemoryProperties(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceMemoryProperties" ) );
+ vkGetPhysicalDeviceMemoryProperties2 = PFN_vkGetPhysicalDeviceMemoryProperties2(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceMemoryProperties2" ) );
+ vkGetPhysicalDeviceMemoryProperties2KHR = PFN_vkGetPhysicalDeviceMemoryProperties2KHR(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceMemoryProperties2KHR" ) );
+ if ( !vkGetPhysicalDeviceMemoryProperties2 )
+ vkGetPhysicalDeviceMemoryProperties2 = vkGetPhysicalDeviceMemoryProperties2KHR;
+ vkGetPhysicalDeviceMultisamplePropertiesEXT = PFN_vkGetPhysicalDeviceMultisamplePropertiesEXT(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceMultisamplePropertiesEXT" ) );
+ vkGetPhysicalDevicePresentRectanglesKHR = PFN_vkGetPhysicalDevicePresentRectanglesKHR(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDevicePresentRectanglesKHR" ) );
+ vkGetPhysicalDeviceProperties =
+ PFN_vkGetPhysicalDeviceProperties( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceProperties" ) );
+ vkGetPhysicalDeviceProperties2 =
+ PFN_vkGetPhysicalDeviceProperties2( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceProperties2" ) );
+ vkGetPhysicalDeviceProperties2KHR =
+ PFN_vkGetPhysicalDeviceProperties2KHR( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceProperties2KHR" ) );
+ if ( !vkGetPhysicalDeviceProperties2 )
+ vkGetPhysicalDeviceProperties2 = vkGetPhysicalDeviceProperties2KHR;
+ vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR =
+ PFN_vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR" ) );
+ vkGetPhysicalDeviceQueueFamilyProperties = PFN_vkGetPhysicalDeviceQueueFamilyProperties(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceQueueFamilyProperties" ) );
+ vkGetPhysicalDeviceQueueFamilyProperties2 = PFN_vkGetPhysicalDeviceQueueFamilyProperties2(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceQueueFamilyProperties2" ) );
+ vkGetPhysicalDeviceQueueFamilyProperties2KHR = PFN_vkGetPhysicalDeviceQueueFamilyProperties2KHR(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceQueueFamilyProperties2KHR" ) );
+ if ( !vkGetPhysicalDeviceQueueFamilyProperties2 )
+ vkGetPhysicalDeviceQueueFamilyProperties2 = vkGetPhysicalDeviceQueueFamilyProperties2KHR;
+#if defined( VK_USE_PLATFORM_SCREEN_QNX )
+ vkGetPhysicalDeviceScreenPresentationSupportQNX = PFN_vkGetPhysicalDeviceScreenPresentationSupportQNX(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceScreenPresentationSupportQNX" ) );
+#endif /*VK_USE_PLATFORM_SCREEN_QNX*/
+ vkGetPhysicalDeviceSparseImageFormatProperties = PFN_vkGetPhysicalDeviceSparseImageFormatProperties(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSparseImageFormatProperties" ) );
+ vkGetPhysicalDeviceSparseImageFormatProperties2 = PFN_vkGetPhysicalDeviceSparseImageFormatProperties2(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSparseImageFormatProperties2" ) );
+ vkGetPhysicalDeviceSparseImageFormatProperties2KHR = PFN_vkGetPhysicalDeviceSparseImageFormatProperties2KHR(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSparseImageFormatProperties2KHR" ) );
+ if ( !vkGetPhysicalDeviceSparseImageFormatProperties2 )
+ vkGetPhysicalDeviceSparseImageFormatProperties2 = vkGetPhysicalDeviceSparseImageFormatProperties2KHR;
+ vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV =
+ PFN_vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV" ) );
+ vkGetPhysicalDeviceSurfaceCapabilities2EXT = PFN_vkGetPhysicalDeviceSurfaceCapabilities2EXT(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSurfaceCapabilities2EXT" ) );
+ vkGetPhysicalDeviceSurfaceCapabilities2KHR = PFN_vkGetPhysicalDeviceSurfaceCapabilities2KHR(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSurfaceCapabilities2KHR" ) );
+ vkGetPhysicalDeviceSurfaceCapabilitiesKHR = PFN_vkGetPhysicalDeviceSurfaceCapabilitiesKHR(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSurfaceCapabilitiesKHR" ) );
+ vkGetPhysicalDeviceSurfaceFormats2KHR = PFN_vkGetPhysicalDeviceSurfaceFormats2KHR(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSurfaceFormats2KHR" ) );
+ vkGetPhysicalDeviceSurfaceFormatsKHR = PFN_vkGetPhysicalDeviceSurfaceFormatsKHR(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSurfaceFormatsKHR" ) );
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ vkGetPhysicalDeviceSurfacePresentModes2EXT = PFN_vkGetPhysicalDeviceSurfacePresentModes2EXT(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSurfacePresentModes2EXT" ) );
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
- vkGetPhysicalDeviceSurfacePresentModesKHR = PFN_vkGetPhysicalDeviceSurfacePresentModesKHR( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSurfacePresentModesKHR" ) );
- vkGetPhysicalDeviceSurfaceSupportKHR = PFN_vkGetPhysicalDeviceSurfaceSupportKHR( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSurfaceSupportKHR" ) );
- vkGetPhysicalDeviceToolPropertiesEXT = PFN_vkGetPhysicalDeviceToolPropertiesEXT( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceToolPropertiesEXT" ) );
-#ifdef VK_USE_PLATFORM_WAYLAND_KHR
- vkGetPhysicalDeviceWaylandPresentationSupportKHR = PFN_vkGetPhysicalDeviceWaylandPresentationSupportKHR( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceWaylandPresentationSupportKHR" ) );
+ vkGetPhysicalDeviceSurfacePresentModesKHR = PFN_vkGetPhysicalDeviceSurfacePresentModesKHR(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSurfacePresentModesKHR" ) );
+ vkGetPhysicalDeviceSurfaceSupportKHR = PFN_vkGetPhysicalDeviceSurfaceSupportKHR(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSurfaceSupportKHR" ) );
+ vkGetPhysicalDeviceToolPropertiesEXT = PFN_vkGetPhysicalDeviceToolPropertiesEXT(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceToolPropertiesEXT" ) );
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ vkGetPhysicalDeviceVideoCapabilitiesKHR = PFN_vkGetPhysicalDeviceVideoCapabilitiesKHR(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceVideoCapabilitiesKHR" ) );
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ vkGetPhysicalDeviceVideoFormatPropertiesKHR = PFN_vkGetPhysicalDeviceVideoFormatPropertiesKHR(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceVideoFormatPropertiesKHR" ) );
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_USE_PLATFORM_WAYLAND_KHR )
+ vkGetPhysicalDeviceWaylandPresentationSupportKHR = PFN_vkGetPhysicalDeviceWaylandPresentationSupportKHR(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceWaylandPresentationSupportKHR" ) );
#endif /*VK_USE_PLATFORM_WAYLAND_KHR*/
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- vkGetPhysicalDeviceWin32PresentationSupportKHR = PFN_vkGetPhysicalDeviceWin32PresentationSupportKHR( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceWin32PresentationSupportKHR" ) );
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ vkGetPhysicalDeviceWin32PresentationSupportKHR = PFN_vkGetPhysicalDeviceWin32PresentationSupportKHR(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceWin32PresentationSupportKHR" ) );
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-#ifdef VK_USE_PLATFORM_XCB_KHR
- vkGetPhysicalDeviceXcbPresentationSupportKHR = PFN_vkGetPhysicalDeviceXcbPresentationSupportKHR( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceXcbPresentationSupportKHR" ) );
+#if defined( VK_USE_PLATFORM_XCB_KHR )
+ vkGetPhysicalDeviceXcbPresentationSupportKHR = PFN_vkGetPhysicalDeviceXcbPresentationSupportKHR(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceXcbPresentationSupportKHR" ) );
#endif /*VK_USE_PLATFORM_XCB_KHR*/
-#ifdef VK_USE_PLATFORM_XLIB_KHR
- vkGetPhysicalDeviceXlibPresentationSupportKHR = PFN_vkGetPhysicalDeviceXlibPresentationSupportKHR( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceXlibPresentationSupportKHR" ) );
+#if defined( VK_USE_PLATFORM_XLIB_KHR )
+ vkGetPhysicalDeviceXlibPresentationSupportKHR = PFN_vkGetPhysicalDeviceXlibPresentationSupportKHR(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceXlibPresentationSupportKHR" ) );
#endif /*VK_USE_PLATFORM_XLIB_KHR*/
-#ifdef VK_USE_PLATFORM_XLIB_XRANDR_EXT
- vkGetRandROutputDisplayEXT = PFN_vkGetRandROutputDisplayEXT( vkGetInstanceProcAddr( instance, "vkGetRandROutputDisplayEXT" ) );
+#if defined( VK_USE_PLATFORM_XLIB_XRANDR_EXT )
+ vkGetRandROutputDisplayEXT =
+ PFN_vkGetRandROutputDisplayEXT( vkGetInstanceProcAddr( instance, "vkGetRandROutputDisplayEXT" ) );
#endif /*VK_USE_PLATFORM_XLIB_XRANDR_EXT*/
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ vkGetWinrtDisplayNV = PFN_vkGetWinrtDisplayNV( vkGetInstanceProcAddr( instance, "vkGetWinrtDisplayNV" ) );
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
vkReleaseDisplayEXT = PFN_vkReleaseDisplayEXT( vkGetInstanceProcAddr( instance, "vkReleaseDisplayEXT" ) );
- vkSubmitDebugUtilsMessageEXT = PFN_vkSubmitDebugUtilsMessageEXT( vkGetInstanceProcAddr( instance, "vkSubmitDebugUtilsMessageEXT" ) );
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- vkAcquireFullScreenExclusiveModeEXT = PFN_vkAcquireFullScreenExclusiveModeEXT( vkGetInstanceProcAddr( instance, "vkAcquireFullScreenExclusiveModeEXT" ) );
+ vkSubmitDebugUtilsMessageEXT =
+ PFN_vkSubmitDebugUtilsMessageEXT( vkGetInstanceProcAddr( instance, "vkSubmitDebugUtilsMessageEXT" ) );
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ vkAcquireFullScreenExclusiveModeEXT = PFN_vkAcquireFullScreenExclusiveModeEXT(
+ vkGetInstanceProcAddr( instance, "vkAcquireFullScreenExclusiveModeEXT" ) );
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
- vkAcquireNextImage2KHR = PFN_vkAcquireNextImage2KHR( vkGetInstanceProcAddr( instance, "vkAcquireNextImage2KHR" ) );
+ vkAcquireNextImage2KHR =
+ PFN_vkAcquireNextImage2KHR( vkGetInstanceProcAddr( instance, "vkAcquireNextImage2KHR" ) );
vkAcquireNextImageKHR = PFN_vkAcquireNextImageKHR( vkGetInstanceProcAddr( instance, "vkAcquireNextImageKHR" ) );
- vkAcquirePerformanceConfigurationINTEL = PFN_vkAcquirePerformanceConfigurationINTEL( vkGetInstanceProcAddr( instance, "vkAcquirePerformanceConfigurationINTEL" ) );
- vkAcquireProfilingLockKHR = PFN_vkAcquireProfilingLockKHR( vkGetInstanceProcAddr( instance, "vkAcquireProfilingLockKHR" ) );
- vkAllocateCommandBuffers = PFN_vkAllocateCommandBuffers( vkGetInstanceProcAddr( instance, "vkAllocateCommandBuffers" ) );
- vkAllocateDescriptorSets = PFN_vkAllocateDescriptorSets( vkGetInstanceProcAddr( instance, "vkAllocateDescriptorSets" ) );
- vkAllocateMemory = PFN_vkAllocateMemory( vkGetInstanceProcAddr( instance, "vkAllocateMemory" ) );
+ vkAcquirePerformanceConfigurationINTEL = PFN_vkAcquirePerformanceConfigurationINTEL(
+ vkGetInstanceProcAddr( instance, "vkAcquirePerformanceConfigurationINTEL" ) );
+ vkAcquireProfilingLockKHR =
+ PFN_vkAcquireProfilingLockKHR( vkGetInstanceProcAddr( instance, "vkAcquireProfilingLockKHR" ) );
+ vkAllocateCommandBuffers =
+ PFN_vkAllocateCommandBuffers( vkGetInstanceProcAddr( instance, "vkAllocateCommandBuffers" ) );
+ vkAllocateDescriptorSets =
+ PFN_vkAllocateDescriptorSets( vkGetInstanceProcAddr( instance, "vkAllocateDescriptorSets" ) );
+ vkAllocateMemory = PFN_vkAllocateMemory( vkGetInstanceProcAddr( instance, "vkAllocateMemory" ) );
vkBeginCommandBuffer = PFN_vkBeginCommandBuffer( vkGetInstanceProcAddr( instance, "vkBeginCommandBuffer" ) );
- vkBindAccelerationStructureMemoryNV = PFN_vkBindAccelerationStructureMemoryNV( vkGetInstanceProcAddr( instance, "vkBindAccelerationStructureMemoryNV" ) );
- vkBindBufferMemory = PFN_vkBindBufferMemory( vkGetInstanceProcAddr( instance, "vkBindBufferMemory" ) );
- vkBindBufferMemory2KHR = PFN_vkBindBufferMemory2KHR( vkGetInstanceProcAddr( instance, "vkBindBufferMemory2KHR" ) );
+ vkBindAccelerationStructureMemoryNV = PFN_vkBindAccelerationStructureMemoryNV(
+ vkGetInstanceProcAddr( instance, "vkBindAccelerationStructureMemoryNV" ) );
+ vkBindBufferMemory = PFN_vkBindBufferMemory( vkGetInstanceProcAddr( instance, "vkBindBufferMemory" ) );
vkBindBufferMemory2 = PFN_vkBindBufferMemory2( vkGetInstanceProcAddr( instance, "vkBindBufferMemory2" ) );
- if ( !vkBindBufferMemory2 ) vkBindBufferMemory2 = vkBindBufferMemory2KHR;
- vkBindImageMemory = PFN_vkBindImageMemory( vkGetInstanceProcAddr( instance, "vkBindImageMemory" ) );
+ vkBindBufferMemory2KHR =
+ PFN_vkBindBufferMemory2KHR( vkGetInstanceProcAddr( instance, "vkBindBufferMemory2KHR" ) );
+ if ( !vkBindBufferMemory2 )
+ vkBindBufferMemory2 = vkBindBufferMemory2KHR;
+ vkBindImageMemory = PFN_vkBindImageMemory( vkGetInstanceProcAddr( instance, "vkBindImageMemory" ) );
+ vkBindImageMemory2 = PFN_vkBindImageMemory2( vkGetInstanceProcAddr( instance, "vkBindImageMemory2" ) );
vkBindImageMemory2KHR = PFN_vkBindImageMemory2KHR( vkGetInstanceProcAddr( instance, "vkBindImageMemory2KHR" ) );
- vkBindImageMemory2 = PFN_vkBindImageMemory2( vkGetInstanceProcAddr( instance, "vkBindImageMemory2" ) );
- if ( !vkBindImageMemory2 ) vkBindImageMemory2 = vkBindImageMemory2KHR;
- vkBuildAccelerationStructuresKHR = PFN_vkBuildAccelerationStructuresKHR( vkGetInstanceProcAddr( instance, "vkBuildAccelerationStructuresKHR" ) );
- vkCmdBeginConditionalRenderingEXT = PFN_vkCmdBeginConditionalRenderingEXT( vkGetInstanceProcAddr( instance, "vkCmdBeginConditionalRenderingEXT" ) );
- vkCmdBeginDebugUtilsLabelEXT = PFN_vkCmdBeginDebugUtilsLabelEXT( vkGetInstanceProcAddr( instance, "vkCmdBeginDebugUtilsLabelEXT" ) );
+ if ( !vkBindImageMemory2 )
+ vkBindImageMemory2 = vkBindImageMemory2KHR;
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ vkBindVideoSessionMemoryKHR =
+ PFN_vkBindVideoSessionMemoryKHR( vkGetInstanceProcAddr( instance, "vkBindVideoSessionMemoryKHR" ) );
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ vkBuildAccelerationStructuresKHR =
+ PFN_vkBuildAccelerationStructuresKHR( vkGetInstanceProcAddr( instance, "vkBuildAccelerationStructuresKHR" ) );
+ vkCmdBeginConditionalRenderingEXT =
+ PFN_vkCmdBeginConditionalRenderingEXT( vkGetInstanceProcAddr( instance, "vkCmdBeginConditionalRenderingEXT" ) );
+ vkCmdBeginDebugUtilsLabelEXT =
+ PFN_vkCmdBeginDebugUtilsLabelEXT( vkGetInstanceProcAddr( instance, "vkCmdBeginDebugUtilsLabelEXT" ) );
vkCmdBeginQuery = PFN_vkCmdBeginQuery( vkGetInstanceProcAddr( instance, "vkCmdBeginQuery" ) );
- vkCmdBeginQueryIndexedEXT = PFN_vkCmdBeginQueryIndexedEXT( vkGetInstanceProcAddr( instance, "vkCmdBeginQueryIndexedEXT" ) );
- vkCmdBeginRenderPass = PFN_vkCmdBeginRenderPass( vkGetInstanceProcAddr( instance, "vkCmdBeginRenderPass" ) );
- vkCmdBeginRenderPass2KHR = PFN_vkCmdBeginRenderPass2KHR( vkGetInstanceProcAddr( instance, "vkCmdBeginRenderPass2KHR" ) );
+ vkCmdBeginQueryIndexedEXT =
+ PFN_vkCmdBeginQueryIndexedEXT( vkGetInstanceProcAddr( instance, "vkCmdBeginQueryIndexedEXT" ) );
+ vkCmdBeginRenderPass = PFN_vkCmdBeginRenderPass( vkGetInstanceProcAddr( instance, "vkCmdBeginRenderPass" ) );
vkCmdBeginRenderPass2 = PFN_vkCmdBeginRenderPass2( vkGetInstanceProcAddr( instance, "vkCmdBeginRenderPass2" ) );
- if ( !vkCmdBeginRenderPass2 ) vkCmdBeginRenderPass2 = vkCmdBeginRenderPass2KHR;
- vkCmdBeginTransformFeedbackEXT = PFN_vkCmdBeginTransformFeedbackEXT( vkGetInstanceProcAddr( instance, "vkCmdBeginTransformFeedbackEXT" ) );
- vkCmdBindDescriptorSets = PFN_vkCmdBindDescriptorSets( vkGetInstanceProcAddr( instance, "vkCmdBindDescriptorSets" ) );
+ vkCmdBeginRenderPass2KHR =
+ PFN_vkCmdBeginRenderPass2KHR( vkGetInstanceProcAddr( instance, "vkCmdBeginRenderPass2KHR" ) );
+ if ( !vkCmdBeginRenderPass2 )
+ vkCmdBeginRenderPass2 = vkCmdBeginRenderPass2KHR;
+ vkCmdBeginTransformFeedbackEXT =
+ PFN_vkCmdBeginTransformFeedbackEXT( vkGetInstanceProcAddr( instance, "vkCmdBeginTransformFeedbackEXT" ) );
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ vkCmdBeginVideoCodingKHR =
+ PFN_vkCmdBeginVideoCodingKHR( vkGetInstanceProcAddr( instance, "vkCmdBeginVideoCodingKHR" ) );
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ vkCmdBindDescriptorSets =
+ PFN_vkCmdBindDescriptorSets( vkGetInstanceProcAddr( instance, "vkCmdBindDescriptorSets" ) );
vkCmdBindIndexBuffer = PFN_vkCmdBindIndexBuffer( vkGetInstanceProcAddr( instance, "vkCmdBindIndexBuffer" ) );
- vkCmdBindPipeline = PFN_vkCmdBindPipeline( vkGetInstanceProcAddr( instance, "vkCmdBindPipeline" ) );
- vkCmdBindPipelineShaderGroupNV = PFN_vkCmdBindPipelineShaderGroupNV( vkGetInstanceProcAddr( instance, "vkCmdBindPipelineShaderGroupNV" ) );
- vkCmdBindShadingRateImageNV = PFN_vkCmdBindShadingRateImageNV( vkGetInstanceProcAddr( instance, "vkCmdBindShadingRateImageNV" ) );
- vkCmdBindTransformFeedbackBuffersEXT = PFN_vkCmdBindTransformFeedbackBuffersEXT( vkGetInstanceProcAddr( instance, "vkCmdBindTransformFeedbackBuffersEXT" ) );
- vkCmdBindVertexBuffers = PFN_vkCmdBindVertexBuffers( vkGetInstanceProcAddr( instance, "vkCmdBindVertexBuffers" ) );
- vkCmdBindVertexBuffers2EXT = PFN_vkCmdBindVertexBuffers2EXT( vkGetInstanceProcAddr( instance, "vkCmdBindVertexBuffers2EXT" ) );
- vkCmdBlitImage = PFN_vkCmdBlitImage( vkGetInstanceProcAddr( instance, "vkCmdBlitImage" ) );
+ vkCmdBindPipeline = PFN_vkCmdBindPipeline( vkGetInstanceProcAddr( instance, "vkCmdBindPipeline" ) );
+ vkCmdBindPipelineShaderGroupNV =
+ PFN_vkCmdBindPipelineShaderGroupNV( vkGetInstanceProcAddr( instance, "vkCmdBindPipelineShaderGroupNV" ) );
+ vkCmdBindShadingRateImageNV =
+ PFN_vkCmdBindShadingRateImageNV( vkGetInstanceProcAddr( instance, "vkCmdBindShadingRateImageNV" ) );
+ vkCmdBindTransformFeedbackBuffersEXT = PFN_vkCmdBindTransformFeedbackBuffersEXT(
+ vkGetInstanceProcAddr( instance, "vkCmdBindTransformFeedbackBuffersEXT" ) );
+ vkCmdBindVertexBuffers =
+ PFN_vkCmdBindVertexBuffers( vkGetInstanceProcAddr( instance, "vkCmdBindVertexBuffers" ) );
+ vkCmdBindVertexBuffers2EXT =
+ PFN_vkCmdBindVertexBuffers2EXT( vkGetInstanceProcAddr( instance, "vkCmdBindVertexBuffers2EXT" ) );
+ vkCmdBlitImage = PFN_vkCmdBlitImage( vkGetInstanceProcAddr( instance, "vkCmdBlitImage" ) );
vkCmdBlitImage2KHR = PFN_vkCmdBlitImage2KHR( vkGetInstanceProcAddr( instance, "vkCmdBlitImage2KHR" ) );
- vkCmdBuildAccelerationStructureNV = PFN_vkCmdBuildAccelerationStructureNV( vkGetInstanceProcAddr( instance, "vkCmdBuildAccelerationStructureNV" ) );
- vkCmdBuildAccelerationStructuresIndirectKHR = PFN_vkCmdBuildAccelerationStructuresIndirectKHR( vkGetInstanceProcAddr( instance, "vkCmdBuildAccelerationStructuresIndirectKHR" ) );
- vkCmdBuildAccelerationStructuresKHR = PFN_vkCmdBuildAccelerationStructuresKHR( vkGetInstanceProcAddr( instance, "vkCmdBuildAccelerationStructuresKHR" ) );
+ vkCmdBuildAccelerationStructureNV =
+ PFN_vkCmdBuildAccelerationStructureNV( vkGetInstanceProcAddr( instance, "vkCmdBuildAccelerationStructureNV" ) );
+ vkCmdBuildAccelerationStructuresIndirectKHR = PFN_vkCmdBuildAccelerationStructuresIndirectKHR(
+ vkGetInstanceProcAddr( instance, "vkCmdBuildAccelerationStructuresIndirectKHR" ) );
+ vkCmdBuildAccelerationStructuresKHR = PFN_vkCmdBuildAccelerationStructuresKHR(
+ vkGetInstanceProcAddr( instance, "vkCmdBuildAccelerationStructuresKHR" ) );
vkCmdClearAttachments = PFN_vkCmdClearAttachments( vkGetInstanceProcAddr( instance, "vkCmdClearAttachments" ) );
- vkCmdClearColorImage = PFN_vkCmdClearColorImage( vkGetInstanceProcAddr( instance, "vkCmdClearColorImage" ) );
- vkCmdClearDepthStencilImage = PFN_vkCmdClearDepthStencilImage( vkGetInstanceProcAddr( instance, "vkCmdClearDepthStencilImage" ) );
- vkCmdCopyAccelerationStructureKHR = PFN_vkCmdCopyAccelerationStructureKHR( vkGetInstanceProcAddr( instance, "vkCmdCopyAccelerationStructureKHR" ) );
- vkCmdCopyAccelerationStructureNV = PFN_vkCmdCopyAccelerationStructureNV( vkGetInstanceProcAddr( instance, "vkCmdCopyAccelerationStructureNV" ) );
- vkCmdCopyAccelerationStructureToMemoryKHR = PFN_vkCmdCopyAccelerationStructureToMemoryKHR( vkGetInstanceProcAddr( instance, "vkCmdCopyAccelerationStructureToMemoryKHR" ) );
- vkCmdCopyBuffer = PFN_vkCmdCopyBuffer( vkGetInstanceProcAddr( instance, "vkCmdCopyBuffer" ) );
+ vkCmdClearColorImage = PFN_vkCmdClearColorImage( vkGetInstanceProcAddr( instance, "vkCmdClearColorImage" ) );
+ vkCmdClearDepthStencilImage =
+ PFN_vkCmdClearDepthStencilImage( vkGetInstanceProcAddr( instance, "vkCmdClearDepthStencilImage" ) );
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ vkCmdControlVideoCodingKHR =
+ PFN_vkCmdControlVideoCodingKHR( vkGetInstanceProcAddr( instance, "vkCmdControlVideoCodingKHR" ) );
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ vkCmdCopyAccelerationStructureKHR =
+ PFN_vkCmdCopyAccelerationStructureKHR( vkGetInstanceProcAddr( instance, "vkCmdCopyAccelerationStructureKHR" ) );
+ vkCmdCopyAccelerationStructureNV =
+ PFN_vkCmdCopyAccelerationStructureNV( vkGetInstanceProcAddr( instance, "vkCmdCopyAccelerationStructureNV" ) );
+ vkCmdCopyAccelerationStructureToMemoryKHR = PFN_vkCmdCopyAccelerationStructureToMemoryKHR(
+ vkGetInstanceProcAddr( instance, "vkCmdCopyAccelerationStructureToMemoryKHR" ) );
+ vkCmdCopyBuffer = PFN_vkCmdCopyBuffer( vkGetInstanceProcAddr( instance, "vkCmdCopyBuffer" ) );
vkCmdCopyBuffer2KHR = PFN_vkCmdCopyBuffer2KHR( vkGetInstanceProcAddr( instance, "vkCmdCopyBuffer2KHR" ) );
- vkCmdCopyBufferToImage = PFN_vkCmdCopyBufferToImage( vkGetInstanceProcAddr( instance, "vkCmdCopyBufferToImage" ) );
- vkCmdCopyBufferToImage2KHR = PFN_vkCmdCopyBufferToImage2KHR( vkGetInstanceProcAddr( instance, "vkCmdCopyBufferToImage2KHR" ) );
- vkCmdCopyImage = PFN_vkCmdCopyImage( vkGetInstanceProcAddr( instance, "vkCmdCopyImage" ) );
+ vkCmdCopyBufferToImage =
+ PFN_vkCmdCopyBufferToImage( vkGetInstanceProcAddr( instance, "vkCmdCopyBufferToImage" ) );
+ vkCmdCopyBufferToImage2KHR =
+ PFN_vkCmdCopyBufferToImage2KHR( vkGetInstanceProcAddr( instance, "vkCmdCopyBufferToImage2KHR" ) );
+ vkCmdCopyImage = PFN_vkCmdCopyImage( vkGetInstanceProcAddr( instance, "vkCmdCopyImage" ) );
vkCmdCopyImage2KHR = PFN_vkCmdCopyImage2KHR( vkGetInstanceProcAddr( instance, "vkCmdCopyImage2KHR" ) );
- vkCmdCopyImageToBuffer = PFN_vkCmdCopyImageToBuffer( vkGetInstanceProcAddr( instance, "vkCmdCopyImageToBuffer" ) );
- vkCmdCopyImageToBuffer2KHR = PFN_vkCmdCopyImageToBuffer2KHR( vkGetInstanceProcAddr( instance, "vkCmdCopyImageToBuffer2KHR" ) );
- vkCmdCopyMemoryToAccelerationStructureKHR = PFN_vkCmdCopyMemoryToAccelerationStructureKHR( vkGetInstanceProcAddr( instance, "vkCmdCopyMemoryToAccelerationStructureKHR" ) );
- vkCmdCopyQueryPoolResults = PFN_vkCmdCopyQueryPoolResults( vkGetInstanceProcAddr( instance, "vkCmdCopyQueryPoolResults" ) );
- vkCmdDebugMarkerBeginEXT = PFN_vkCmdDebugMarkerBeginEXT( vkGetInstanceProcAddr( instance, "vkCmdDebugMarkerBeginEXT" ) );
- vkCmdDebugMarkerEndEXT = PFN_vkCmdDebugMarkerEndEXT( vkGetInstanceProcAddr( instance, "vkCmdDebugMarkerEndEXT" ) );
- vkCmdDebugMarkerInsertEXT = PFN_vkCmdDebugMarkerInsertEXT( vkGetInstanceProcAddr( instance, "vkCmdDebugMarkerInsertEXT" ) );
- vkCmdDispatch = PFN_vkCmdDispatch( vkGetInstanceProcAddr( instance, "vkCmdDispatch" ) );
+ vkCmdCopyImageToBuffer =
+ PFN_vkCmdCopyImageToBuffer( vkGetInstanceProcAddr( instance, "vkCmdCopyImageToBuffer" ) );
+ vkCmdCopyImageToBuffer2KHR =
+ PFN_vkCmdCopyImageToBuffer2KHR( vkGetInstanceProcAddr( instance, "vkCmdCopyImageToBuffer2KHR" ) );
+ vkCmdCopyMemoryToAccelerationStructureKHR = PFN_vkCmdCopyMemoryToAccelerationStructureKHR(
+ vkGetInstanceProcAddr( instance, "vkCmdCopyMemoryToAccelerationStructureKHR" ) );
+ vkCmdCopyQueryPoolResults =
+ PFN_vkCmdCopyQueryPoolResults( vkGetInstanceProcAddr( instance, "vkCmdCopyQueryPoolResults" ) );
+ vkCmdCuLaunchKernelNVX =
+ PFN_vkCmdCuLaunchKernelNVX( vkGetInstanceProcAddr( instance, "vkCmdCuLaunchKernelNVX" ) );
+ vkCmdDebugMarkerBeginEXT =
+ PFN_vkCmdDebugMarkerBeginEXT( vkGetInstanceProcAddr( instance, "vkCmdDebugMarkerBeginEXT" ) );
+ vkCmdDebugMarkerEndEXT =
+ PFN_vkCmdDebugMarkerEndEXT( vkGetInstanceProcAddr( instance, "vkCmdDebugMarkerEndEXT" ) );
+ vkCmdDebugMarkerInsertEXT =
+ PFN_vkCmdDebugMarkerInsertEXT( vkGetInstanceProcAddr( instance, "vkCmdDebugMarkerInsertEXT" ) );
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ vkCmdDecodeVideoKHR = PFN_vkCmdDecodeVideoKHR( vkGetInstanceProcAddr( instance, "vkCmdDecodeVideoKHR" ) );
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ vkCmdDispatch = PFN_vkCmdDispatch( vkGetInstanceProcAddr( instance, "vkCmdDispatch" ) );
+ vkCmdDispatchBase = PFN_vkCmdDispatchBase( vkGetInstanceProcAddr( instance, "vkCmdDispatchBase" ) );
vkCmdDispatchBaseKHR = PFN_vkCmdDispatchBaseKHR( vkGetInstanceProcAddr( instance, "vkCmdDispatchBaseKHR" ) );
- vkCmdDispatchBase = PFN_vkCmdDispatchBase( vkGetInstanceProcAddr( instance, "vkCmdDispatchBase" ) );
- if ( !vkCmdDispatchBase ) vkCmdDispatchBase = vkCmdDispatchBaseKHR;
+ if ( !vkCmdDispatchBase )
+ vkCmdDispatchBase = vkCmdDispatchBaseKHR;
vkCmdDispatchIndirect = PFN_vkCmdDispatchIndirect( vkGetInstanceProcAddr( instance, "vkCmdDispatchIndirect" ) );
- vkCmdDraw = PFN_vkCmdDraw( vkGetInstanceProcAddr( instance, "vkCmdDraw" ) );
- vkCmdDrawIndexed = PFN_vkCmdDrawIndexed( vkGetInstanceProcAddr( instance, "vkCmdDrawIndexed" ) );
- vkCmdDrawIndexedIndirect = PFN_vkCmdDrawIndexedIndirect( vkGetInstanceProcAddr( instance, "vkCmdDrawIndexedIndirect" ) );
- vkCmdDrawIndexedIndirectCountAMD = PFN_vkCmdDrawIndexedIndirectCountAMD( vkGetInstanceProcAddr( instance, "vkCmdDrawIndexedIndirectCountAMD" ) );
- vkCmdDrawIndexedIndirectCountKHR = PFN_vkCmdDrawIndexedIndirectCountKHR( vkGetInstanceProcAddr( instance, "vkCmdDrawIndexedIndirectCountKHR" ) );
- vkCmdDrawIndexedIndirectCount = PFN_vkCmdDrawIndexedIndirectCount( vkGetInstanceProcAddr( instance, "vkCmdDrawIndexedIndirectCount" ) );
- if ( !vkCmdDrawIndexedIndirectCount ) vkCmdDrawIndexedIndirectCount = vkCmdDrawIndexedIndirectCountKHR;
- if ( !vkCmdDrawIndexedIndirectCount ) vkCmdDrawIndexedIndirectCount = vkCmdDrawIndexedIndirectCountAMD;
+ vkCmdDraw = PFN_vkCmdDraw( vkGetInstanceProcAddr( instance, "vkCmdDraw" ) );
+ vkCmdDrawIndexed = PFN_vkCmdDrawIndexed( vkGetInstanceProcAddr( instance, "vkCmdDrawIndexed" ) );
+ vkCmdDrawIndexedIndirect =
+ PFN_vkCmdDrawIndexedIndirect( vkGetInstanceProcAddr( instance, "vkCmdDrawIndexedIndirect" ) );
+ vkCmdDrawIndexedIndirectCount =
+ PFN_vkCmdDrawIndexedIndirectCount( vkGetInstanceProcAddr( instance, "vkCmdDrawIndexedIndirectCount" ) );
+ vkCmdDrawIndexedIndirectCountAMD =
+ PFN_vkCmdDrawIndexedIndirectCountAMD( vkGetInstanceProcAddr( instance, "vkCmdDrawIndexedIndirectCountAMD" ) );
+ if ( !vkCmdDrawIndexedIndirectCount )
+ vkCmdDrawIndexedIndirectCount = vkCmdDrawIndexedIndirectCountAMD;
+ vkCmdDrawIndexedIndirectCountKHR =
+ PFN_vkCmdDrawIndexedIndirectCountKHR( vkGetInstanceProcAddr( instance, "vkCmdDrawIndexedIndirectCountKHR" ) );
+ if ( !vkCmdDrawIndexedIndirectCount )
+ vkCmdDrawIndexedIndirectCount = vkCmdDrawIndexedIndirectCountKHR;
vkCmdDrawIndirect = PFN_vkCmdDrawIndirect( vkGetInstanceProcAddr( instance, "vkCmdDrawIndirect" ) );
- vkCmdDrawIndirectByteCountEXT = PFN_vkCmdDrawIndirectByteCountEXT( vkGetInstanceProcAddr( instance, "vkCmdDrawIndirectByteCountEXT" ) );
- vkCmdDrawIndirectCountAMD = PFN_vkCmdDrawIndirectCountAMD( vkGetInstanceProcAddr( instance, "vkCmdDrawIndirectCountAMD" ) );
- vkCmdDrawIndirectCountKHR = PFN_vkCmdDrawIndirectCountKHR( vkGetInstanceProcAddr( instance, "vkCmdDrawIndirectCountKHR" ) );
- vkCmdDrawIndirectCount = PFN_vkCmdDrawIndirectCount( vkGetInstanceProcAddr( instance, "vkCmdDrawIndirectCount" ) );
- if ( !vkCmdDrawIndirectCount ) vkCmdDrawIndirectCount = vkCmdDrawIndirectCountKHR;
- if ( !vkCmdDrawIndirectCount ) vkCmdDrawIndirectCount = vkCmdDrawIndirectCountAMD;
- vkCmdDrawMeshTasksIndirectCountNV = PFN_vkCmdDrawMeshTasksIndirectCountNV( vkGetInstanceProcAddr( instance, "vkCmdDrawMeshTasksIndirectCountNV" ) );
- vkCmdDrawMeshTasksIndirectNV = PFN_vkCmdDrawMeshTasksIndirectNV( vkGetInstanceProcAddr( instance, "vkCmdDrawMeshTasksIndirectNV" ) );
+ vkCmdDrawIndirectByteCountEXT =
+ PFN_vkCmdDrawIndirectByteCountEXT( vkGetInstanceProcAddr( instance, "vkCmdDrawIndirectByteCountEXT" ) );
+ vkCmdDrawIndirectCount =
+ PFN_vkCmdDrawIndirectCount( vkGetInstanceProcAddr( instance, "vkCmdDrawIndirectCount" ) );
+ vkCmdDrawIndirectCountAMD =
+ PFN_vkCmdDrawIndirectCountAMD( vkGetInstanceProcAddr( instance, "vkCmdDrawIndirectCountAMD" ) );
+ if ( !vkCmdDrawIndirectCount )
+ vkCmdDrawIndirectCount = vkCmdDrawIndirectCountAMD;
+ vkCmdDrawIndirectCountKHR =
+ PFN_vkCmdDrawIndirectCountKHR( vkGetInstanceProcAddr( instance, "vkCmdDrawIndirectCountKHR" ) );
+ if ( !vkCmdDrawIndirectCount )
+ vkCmdDrawIndirectCount = vkCmdDrawIndirectCountKHR;
+ vkCmdDrawMeshTasksIndirectCountNV =
+ PFN_vkCmdDrawMeshTasksIndirectCountNV( vkGetInstanceProcAddr( instance, "vkCmdDrawMeshTasksIndirectCountNV" ) );
+ vkCmdDrawMeshTasksIndirectNV =
+ PFN_vkCmdDrawMeshTasksIndirectNV( vkGetInstanceProcAddr( instance, "vkCmdDrawMeshTasksIndirectNV" ) );
vkCmdDrawMeshTasksNV = PFN_vkCmdDrawMeshTasksNV( vkGetInstanceProcAddr( instance, "vkCmdDrawMeshTasksNV" ) );
- vkCmdEndConditionalRenderingEXT = PFN_vkCmdEndConditionalRenderingEXT( vkGetInstanceProcAddr( instance, "vkCmdEndConditionalRenderingEXT" ) );
- vkCmdEndDebugUtilsLabelEXT = PFN_vkCmdEndDebugUtilsLabelEXT( vkGetInstanceProcAddr( instance, "vkCmdEndDebugUtilsLabelEXT" ) );
+ vkCmdDrawMultiEXT = PFN_vkCmdDrawMultiEXT( vkGetInstanceProcAddr( instance, "vkCmdDrawMultiEXT" ) );
+ vkCmdDrawMultiIndexedEXT =
+ PFN_vkCmdDrawMultiIndexedEXT( vkGetInstanceProcAddr( instance, "vkCmdDrawMultiIndexedEXT" ) );
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ vkCmdEncodeVideoKHR = PFN_vkCmdEncodeVideoKHR( vkGetInstanceProcAddr( instance, "vkCmdEncodeVideoKHR" ) );
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ vkCmdEndConditionalRenderingEXT =
+ PFN_vkCmdEndConditionalRenderingEXT( vkGetInstanceProcAddr( instance, "vkCmdEndConditionalRenderingEXT" ) );
+ vkCmdEndDebugUtilsLabelEXT =
+ PFN_vkCmdEndDebugUtilsLabelEXT( vkGetInstanceProcAddr( instance, "vkCmdEndDebugUtilsLabelEXT" ) );
vkCmdEndQuery = PFN_vkCmdEndQuery( vkGetInstanceProcAddr( instance, "vkCmdEndQuery" ) );
- vkCmdEndQueryIndexedEXT = PFN_vkCmdEndQueryIndexedEXT( vkGetInstanceProcAddr( instance, "vkCmdEndQueryIndexedEXT" ) );
- vkCmdEndRenderPass = PFN_vkCmdEndRenderPass( vkGetInstanceProcAddr( instance, "vkCmdEndRenderPass" ) );
- vkCmdEndRenderPass2KHR = PFN_vkCmdEndRenderPass2KHR( vkGetInstanceProcAddr( instance, "vkCmdEndRenderPass2KHR" ) );
+ vkCmdEndQueryIndexedEXT =
+ PFN_vkCmdEndQueryIndexedEXT( vkGetInstanceProcAddr( instance, "vkCmdEndQueryIndexedEXT" ) );
+ vkCmdEndRenderPass = PFN_vkCmdEndRenderPass( vkGetInstanceProcAddr( instance, "vkCmdEndRenderPass" ) );
vkCmdEndRenderPass2 = PFN_vkCmdEndRenderPass2( vkGetInstanceProcAddr( instance, "vkCmdEndRenderPass2" ) );
- if ( !vkCmdEndRenderPass2 ) vkCmdEndRenderPass2 = vkCmdEndRenderPass2KHR;
- vkCmdEndTransformFeedbackEXT = PFN_vkCmdEndTransformFeedbackEXT( vkGetInstanceProcAddr( instance, "vkCmdEndTransformFeedbackEXT" ) );
+ vkCmdEndRenderPass2KHR =
+ PFN_vkCmdEndRenderPass2KHR( vkGetInstanceProcAddr( instance, "vkCmdEndRenderPass2KHR" ) );
+ if ( !vkCmdEndRenderPass2 )
+ vkCmdEndRenderPass2 = vkCmdEndRenderPass2KHR;
+ vkCmdEndTransformFeedbackEXT =
+ PFN_vkCmdEndTransformFeedbackEXT( vkGetInstanceProcAddr( instance, "vkCmdEndTransformFeedbackEXT" ) );
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ vkCmdEndVideoCodingKHR =
+ PFN_vkCmdEndVideoCodingKHR( vkGetInstanceProcAddr( instance, "vkCmdEndVideoCodingKHR" ) );
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
vkCmdExecuteCommands = PFN_vkCmdExecuteCommands( vkGetInstanceProcAddr( instance, "vkCmdExecuteCommands" ) );
- vkCmdExecuteGeneratedCommandsNV = PFN_vkCmdExecuteGeneratedCommandsNV( vkGetInstanceProcAddr( instance, "vkCmdExecuteGeneratedCommandsNV" ) );
+ vkCmdExecuteGeneratedCommandsNV =
+ PFN_vkCmdExecuteGeneratedCommandsNV( vkGetInstanceProcAddr( instance, "vkCmdExecuteGeneratedCommandsNV" ) );
vkCmdFillBuffer = PFN_vkCmdFillBuffer( vkGetInstanceProcAddr( instance, "vkCmdFillBuffer" ) );
- vkCmdInsertDebugUtilsLabelEXT = PFN_vkCmdInsertDebugUtilsLabelEXT( vkGetInstanceProcAddr( instance, "vkCmdInsertDebugUtilsLabelEXT" ) );
- vkCmdNextSubpass = PFN_vkCmdNextSubpass( vkGetInstanceProcAddr( instance, "vkCmdNextSubpass" ) );
+ vkCmdInsertDebugUtilsLabelEXT =
+ PFN_vkCmdInsertDebugUtilsLabelEXT( vkGetInstanceProcAddr( instance, "vkCmdInsertDebugUtilsLabelEXT" ) );
+ vkCmdNextSubpass = PFN_vkCmdNextSubpass( vkGetInstanceProcAddr( instance, "vkCmdNextSubpass" ) );
+ vkCmdNextSubpass2 = PFN_vkCmdNextSubpass2( vkGetInstanceProcAddr( instance, "vkCmdNextSubpass2" ) );
vkCmdNextSubpass2KHR = PFN_vkCmdNextSubpass2KHR( vkGetInstanceProcAddr( instance, "vkCmdNextSubpass2KHR" ) );
- vkCmdNextSubpass2 = PFN_vkCmdNextSubpass2( vkGetInstanceProcAddr( instance, "vkCmdNextSubpass2" ) );
- if ( !vkCmdNextSubpass2 ) vkCmdNextSubpass2 = vkCmdNextSubpass2KHR;
+ if ( !vkCmdNextSubpass2 )
+ vkCmdNextSubpass2 = vkCmdNextSubpass2KHR;
vkCmdPipelineBarrier = PFN_vkCmdPipelineBarrier( vkGetInstanceProcAddr( instance, "vkCmdPipelineBarrier" ) );
- vkCmdPreprocessGeneratedCommandsNV = PFN_vkCmdPreprocessGeneratedCommandsNV( vkGetInstanceProcAddr( instance, "vkCmdPreprocessGeneratedCommandsNV" ) );
+ vkCmdPipelineBarrier2KHR =
+ PFN_vkCmdPipelineBarrier2KHR( vkGetInstanceProcAddr( instance, "vkCmdPipelineBarrier2KHR" ) );
+ vkCmdPreprocessGeneratedCommandsNV = PFN_vkCmdPreprocessGeneratedCommandsNV(
+ vkGetInstanceProcAddr( instance, "vkCmdPreprocessGeneratedCommandsNV" ) );
vkCmdPushConstants = PFN_vkCmdPushConstants( vkGetInstanceProcAddr( instance, "vkCmdPushConstants" ) );
- vkCmdPushDescriptorSetKHR = PFN_vkCmdPushDescriptorSetKHR( vkGetInstanceProcAddr( instance, "vkCmdPushDescriptorSetKHR" ) );
- vkCmdPushDescriptorSetWithTemplateKHR = PFN_vkCmdPushDescriptorSetWithTemplateKHR( vkGetInstanceProcAddr( instance, "vkCmdPushDescriptorSetWithTemplateKHR" ) );
- vkCmdResetEvent = PFN_vkCmdResetEvent( vkGetInstanceProcAddr( instance, "vkCmdResetEvent" ) );
- vkCmdResetQueryPool = PFN_vkCmdResetQueryPool( vkGetInstanceProcAddr( instance, "vkCmdResetQueryPool" ) );
- vkCmdResolveImage = PFN_vkCmdResolveImage( vkGetInstanceProcAddr( instance, "vkCmdResolveImage" ) );
+ vkCmdPushDescriptorSetKHR =
+ PFN_vkCmdPushDescriptorSetKHR( vkGetInstanceProcAddr( instance, "vkCmdPushDescriptorSetKHR" ) );
+ vkCmdPushDescriptorSetWithTemplateKHR = PFN_vkCmdPushDescriptorSetWithTemplateKHR(
+ vkGetInstanceProcAddr( instance, "vkCmdPushDescriptorSetWithTemplateKHR" ) );
+ vkCmdResetEvent = PFN_vkCmdResetEvent( vkGetInstanceProcAddr( instance, "vkCmdResetEvent" ) );
+ vkCmdResetEvent2KHR = PFN_vkCmdResetEvent2KHR( vkGetInstanceProcAddr( instance, "vkCmdResetEvent2KHR" ) );
+ vkCmdResetQueryPool = PFN_vkCmdResetQueryPool( vkGetInstanceProcAddr( instance, "vkCmdResetQueryPool" ) );
+ vkCmdResolveImage = PFN_vkCmdResolveImage( vkGetInstanceProcAddr( instance, "vkCmdResolveImage" ) );
vkCmdResolveImage2KHR = PFN_vkCmdResolveImage2KHR( vkGetInstanceProcAddr( instance, "vkCmdResolveImage2KHR" ) );
- vkCmdSetBlendConstants = PFN_vkCmdSetBlendConstants( vkGetInstanceProcAddr( instance, "vkCmdSetBlendConstants" ) );
+ vkCmdSetBlendConstants =
+ PFN_vkCmdSetBlendConstants( vkGetInstanceProcAddr( instance, "vkCmdSetBlendConstants" ) );
vkCmdSetCheckpointNV = PFN_vkCmdSetCheckpointNV( vkGetInstanceProcAddr( instance, "vkCmdSetCheckpointNV" ) );
- vkCmdSetCoarseSampleOrderNV = PFN_vkCmdSetCoarseSampleOrderNV( vkGetInstanceProcAddr( instance, "vkCmdSetCoarseSampleOrderNV" ) );
+ vkCmdSetCoarseSampleOrderNV =
+ PFN_vkCmdSetCoarseSampleOrderNV( vkGetInstanceProcAddr( instance, "vkCmdSetCoarseSampleOrderNV" ) );
+ vkCmdSetColorWriteEnableEXT =
+ PFN_vkCmdSetColorWriteEnableEXT( vkGetInstanceProcAddr( instance, "vkCmdSetColorWriteEnableEXT" ) );
vkCmdSetCullModeEXT = PFN_vkCmdSetCullModeEXT( vkGetInstanceProcAddr( instance, "vkCmdSetCullModeEXT" ) );
- vkCmdSetDepthBias = PFN_vkCmdSetDepthBias( vkGetInstanceProcAddr( instance, "vkCmdSetDepthBias" ) );
+ vkCmdSetDepthBias = PFN_vkCmdSetDepthBias( vkGetInstanceProcAddr( instance, "vkCmdSetDepthBias" ) );
+ vkCmdSetDepthBiasEnableEXT =
+ PFN_vkCmdSetDepthBiasEnableEXT( vkGetInstanceProcAddr( instance, "vkCmdSetDepthBiasEnableEXT" ) );
vkCmdSetDepthBounds = PFN_vkCmdSetDepthBounds( vkGetInstanceProcAddr( instance, "vkCmdSetDepthBounds" ) );
- vkCmdSetDepthBoundsTestEnableEXT = PFN_vkCmdSetDepthBoundsTestEnableEXT( vkGetInstanceProcAddr( instance, "vkCmdSetDepthBoundsTestEnableEXT" ) );
- vkCmdSetDepthCompareOpEXT = PFN_vkCmdSetDepthCompareOpEXT( vkGetInstanceProcAddr( instance, "vkCmdSetDepthCompareOpEXT" ) );
- vkCmdSetDepthTestEnableEXT = PFN_vkCmdSetDepthTestEnableEXT( vkGetInstanceProcAddr( instance, "vkCmdSetDepthTestEnableEXT" ) );
- vkCmdSetDepthWriteEnableEXT = PFN_vkCmdSetDepthWriteEnableEXT( vkGetInstanceProcAddr( instance, "vkCmdSetDepthWriteEnableEXT" ) );
+ vkCmdSetDepthBoundsTestEnableEXT =
+ PFN_vkCmdSetDepthBoundsTestEnableEXT( vkGetInstanceProcAddr( instance, "vkCmdSetDepthBoundsTestEnableEXT" ) );
+ vkCmdSetDepthCompareOpEXT =
+ PFN_vkCmdSetDepthCompareOpEXT( vkGetInstanceProcAddr( instance, "vkCmdSetDepthCompareOpEXT" ) );
+ vkCmdSetDepthTestEnableEXT =
+ PFN_vkCmdSetDepthTestEnableEXT( vkGetInstanceProcAddr( instance, "vkCmdSetDepthTestEnableEXT" ) );
+ vkCmdSetDepthWriteEnableEXT =
+ PFN_vkCmdSetDepthWriteEnableEXT( vkGetInstanceProcAddr( instance, "vkCmdSetDepthWriteEnableEXT" ) );
+ vkCmdSetDeviceMask = PFN_vkCmdSetDeviceMask( vkGetInstanceProcAddr( instance, "vkCmdSetDeviceMask" ) );
vkCmdSetDeviceMaskKHR = PFN_vkCmdSetDeviceMaskKHR( vkGetInstanceProcAddr( instance, "vkCmdSetDeviceMaskKHR" ) );
- vkCmdSetDeviceMask = PFN_vkCmdSetDeviceMask( vkGetInstanceProcAddr( instance, "vkCmdSetDeviceMask" ) );
- if ( !vkCmdSetDeviceMask ) vkCmdSetDeviceMask = vkCmdSetDeviceMaskKHR;
- vkCmdSetDiscardRectangleEXT = PFN_vkCmdSetDiscardRectangleEXT( vkGetInstanceProcAddr( instance, "vkCmdSetDiscardRectangleEXT" ) );
- vkCmdSetEvent = PFN_vkCmdSetEvent( vkGetInstanceProcAddr( instance, "vkCmdSetEvent" ) );
- vkCmdSetExclusiveScissorNV = PFN_vkCmdSetExclusiveScissorNV( vkGetInstanceProcAddr( instance, "vkCmdSetExclusiveScissorNV" ) );
- vkCmdSetFragmentShadingRateEnumNV = PFN_vkCmdSetFragmentShadingRateEnumNV( vkGetInstanceProcAddr( instance, "vkCmdSetFragmentShadingRateEnumNV" ) );
- vkCmdSetFragmentShadingRateKHR = PFN_vkCmdSetFragmentShadingRateKHR( vkGetInstanceProcAddr( instance, "vkCmdSetFragmentShadingRateKHR" ) );
+ if ( !vkCmdSetDeviceMask )
+ vkCmdSetDeviceMask = vkCmdSetDeviceMaskKHR;
+ vkCmdSetDiscardRectangleEXT =
+ PFN_vkCmdSetDiscardRectangleEXT( vkGetInstanceProcAddr( instance, "vkCmdSetDiscardRectangleEXT" ) );
+ vkCmdSetEvent = PFN_vkCmdSetEvent( vkGetInstanceProcAddr( instance, "vkCmdSetEvent" ) );
+ vkCmdSetEvent2KHR = PFN_vkCmdSetEvent2KHR( vkGetInstanceProcAddr( instance, "vkCmdSetEvent2KHR" ) );
+ vkCmdSetExclusiveScissorNV =
+ PFN_vkCmdSetExclusiveScissorNV( vkGetInstanceProcAddr( instance, "vkCmdSetExclusiveScissorNV" ) );
+ vkCmdSetFragmentShadingRateEnumNV =
+ PFN_vkCmdSetFragmentShadingRateEnumNV( vkGetInstanceProcAddr( instance, "vkCmdSetFragmentShadingRateEnumNV" ) );
+ vkCmdSetFragmentShadingRateKHR =
+ PFN_vkCmdSetFragmentShadingRateKHR( vkGetInstanceProcAddr( instance, "vkCmdSetFragmentShadingRateKHR" ) );
vkCmdSetFrontFaceEXT = PFN_vkCmdSetFrontFaceEXT( vkGetInstanceProcAddr( instance, "vkCmdSetFrontFaceEXT" ) );
- vkCmdSetLineStippleEXT = PFN_vkCmdSetLineStippleEXT( vkGetInstanceProcAddr( instance, "vkCmdSetLineStippleEXT" ) );
- vkCmdSetLineWidth = PFN_vkCmdSetLineWidth( vkGetInstanceProcAddr( instance, "vkCmdSetLineWidth" ) );
- vkCmdSetPerformanceMarkerINTEL = PFN_vkCmdSetPerformanceMarkerINTEL( vkGetInstanceProcAddr( instance, "vkCmdSetPerformanceMarkerINTEL" ) );
- vkCmdSetPerformanceOverrideINTEL = PFN_vkCmdSetPerformanceOverrideINTEL( vkGetInstanceProcAddr( instance, "vkCmdSetPerformanceOverrideINTEL" ) );
- vkCmdSetPerformanceStreamMarkerINTEL = PFN_vkCmdSetPerformanceStreamMarkerINTEL( vkGetInstanceProcAddr( instance, "vkCmdSetPerformanceStreamMarkerINTEL" ) );
- vkCmdSetPrimitiveTopologyEXT = PFN_vkCmdSetPrimitiveTopologyEXT( vkGetInstanceProcAddr( instance, "vkCmdSetPrimitiveTopologyEXT" ) );
- vkCmdSetRayTracingPipelineStackSizeKHR = PFN_vkCmdSetRayTracingPipelineStackSizeKHR( vkGetInstanceProcAddr( instance, "vkCmdSetRayTracingPipelineStackSizeKHR" ) );
- vkCmdSetSampleLocationsEXT = PFN_vkCmdSetSampleLocationsEXT( vkGetInstanceProcAddr( instance, "vkCmdSetSampleLocationsEXT" ) );
+ vkCmdSetLineStippleEXT =
+ PFN_vkCmdSetLineStippleEXT( vkGetInstanceProcAddr( instance, "vkCmdSetLineStippleEXT" ) );
+ vkCmdSetLineWidth = PFN_vkCmdSetLineWidth( vkGetInstanceProcAddr( instance, "vkCmdSetLineWidth" ) );
+ vkCmdSetLogicOpEXT = PFN_vkCmdSetLogicOpEXT( vkGetInstanceProcAddr( instance, "vkCmdSetLogicOpEXT" ) );
+ vkCmdSetPatchControlPointsEXT =
+ PFN_vkCmdSetPatchControlPointsEXT( vkGetInstanceProcAddr( instance, "vkCmdSetPatchControlPointsEXT" ) );
+ vkCmdSetPerformanceMarkerINTEL =
+ PFN_vkCmdSetPerformanceMarkerINTEL( vkGetInstanceProcAddr( instance, "vkCmdSetPerformanceMarkerINTEL" ) );
+ vkCmdSetPerformanceOverrideINTEL =
+ PFN_vkCmdSetPerformanceOverrideINTEL( vkGetInstanceProcAddr( instance, "vkCmdSetPerformanceOverrideINTEL" ) );
+ vkCmdSetPerformanceStreamMarkerINTEL = PFN_vkCmdSetPerformanceStreamMarkerINTEL(
+ vkGetInstanceProcAddr( instance, "vkCmdSetPerformanceStreamMarkerINTEL" ) );
+ vkCmdSetPrimitiveRestartEnableEXT =
+ PFN_vkCmdSetPrimitiveRestartEnableEXT( vkGetInstanceProcAddr( instance, "vkCmdSetPrimitiveRestartEnableEXT" ) );
+ vkCmdSetPrimitiveTopologyEXT =
+ PFN_vkCmdSetPrimitiveTopologyEXT( vkGetInstanceProcAddr( instance, "vkCmdSetPrimitiveTopologyEXT" ) );
+ vkCmdSetRasterizerDiscardEnableEXT = PFN_vkCmdSetRasterizerDiscardEnableEXT(
+ vkGetInstanceProcAddr( instance, "vkCmdSetRasterizerDiscardEnableEXT" ) );
+ vkCmdSetRayTracingPipelineStackSizeKHR = PFN_vkCmdSetRayTracingPipelineStackSizeKHR(
+ vkGetInstanceProcAddr( instance, "vkCmdSetRayTracingPipelineStackSizeKHR" ) );
+ vkCmdSetSampleLocationsEXT =
+ PFN_vkCmdSetSampleLocationsEXT( vkGetInstanceProcAddr( instance, "vkCmdSetSampleLocationsEXT" ) );
vkCmdSetScissor = PFN_vkCmdSetScissor( vkGetInstanceProcAddr( instance, "vkCmdSetScissor" ) );
- vkCmdSetScissorWithCountEXT = PFN_vkCmdSetScissorWithCountEXT( vkGetInstanceProcAddr( instance, "vkCmdSetScissorWithCountEXT" ) );
- vkCmdSetStencilCompareMask = PFN_vkCmdSetStencilCompareMask( vkGetInstanceProcAddr( instance, "vkCmdSetStencilCompareMask" ) );
+ vkCmdSetScissorWithCountEXT =
+ PFN_vkCmdSetScissorWithCountEXT( vkGetInstanceProcAddr( instance, "vkCmdSetScissorWithCountEXT" ) );
+ vkCmdSetStencilCompareMask =
+ PFN_vkCmdSetStencilCompareMask( vkGetInstanceProcAddr( instance, "vkCmdSetStencilCompareMask" ) );
vkCmdSetStencilOpEXT = PFN_vkCmdSetStencilOpEXT( vkGetInstanceProcAddr( instance, "vkCmdSetStencilOpEXT" ) );
- vkCmdSetStencilReference = PFN_vkCmdSetStencilReference( vkGetInstanceProcAddr( instance, "vkCmdSetStencilReference" ) );
- vkCmdSetStencilTestEnableEXT = PFN_vkCmdSetStencilTestEnableEXT( vkGetInstanceProcAddr( instance, "vkCmdSetStencilTestEnableEXT" ) );
- vkCmdSetStencilWriteMask = PFN_vkCmdSetStencilWriteMask( vkGetInstanceProcAddr( instance, "vkCmdSetStencilWriteMask" ) );
+ vkCmdSetStencilReference =
+ PFN_vkCmdSetStencilReference( vkGetInstanceProcAddr( instance, "vkCmdSetStencilReference" ) );
+ vkCmdSetStencilTestEnableEXT =
+ PFN_vkCmdSetStencilTestEnableEXT( vkGetInstanceProcAddr( instance, "vkCmdSetStencilTestEnableEXT" ) );
+ vkCmdSetStencilWriteMask =
+ PFN_vkCmdSetStencilWriteMask( vkGetInstanceProcAddr( instance, "vkCmdSetStencilWriteMask" ) );
+ vkCmdSetVertexInputEXT =
+ PFN_vkCmdSetVertexInputEXT( vkGetInstanceProcAddr( instance, "vkCmdSetVertexInputEXT" ) );
vkCmdSetViewport = PFN_vkCmdSetViewport( vkGetInstanceProcAddr( instance, "vkCmdSetViewport" ) );
- vkCmdSetViewportShadingRatePaletteNV = PFN_vkCmdSetViewportShadingRatePaletteNV( vkGetInstanceProcAddr( instance, "vkCmdSetViewportShadingRatePaletteNV" ) );
- vkCmdSetViewportWScalingNV = PFN_vkCmdSetViewportWScalingNV( vkGetInstanceProcAddr( instance, "vkCmdSetViewportWScalingNV" ) );
- vkCmdSetViewportWithCountEXT = PFN_vkCmdSetViewportWithCountEXT( vkGetInstanceProcAddr( instance, "vkCmdSetViewportWithCountEXT" ) );
- vkCmdTraceRaysIndirectKHR = PFN_vkCmdTraceRaysIndirectKHR( vkGetInstanceProcAddr( instance, "vkCmdTraceRaysIndirectKHR" ) );
- vkCmdTraceRaysKHR = PFN_vkCmdTraceRaysKHR( vkGetInstanceProcAddr( instance, "vkCmdTraceRaysKHR" ) );
- vkCmdTraceRaysNV = PFN_vkCmdTraceRaysNV( vkGetInstanceProcAddr( instance, "vkCmdTraceRaysNV" ) );
- vkCmdUpdateBuffer = PFN_vkCmdUpdateBuffer( vkGetInstanceProcAddr( instance, "vkCmdUpdateBuffer" ) );
- vkCmdWaitEvents = PFN_vkCmdWaitEvents( vkGetInstanceProcAddr( instance, "vkCmdWaitEvents" ) );
- vkCmdWriteAccelerationStructuresPropertiesKHR = PFN_vkCmdWriteAccelerationStructuresPropertiesKHR( vkGetInstanceProcAddr( instance, "vkCmdWriteAccelerationStructuresPropertiesKHR" ) );
- vkCmdWriteAccelerationStructuresPropertiesNV = PFN_vkCmdWriteAccelerationStructuresPropertiesNV( vkGetInstanceProcAddr( instance, "vkCmdWriteAccelerationStructuresPropertiesNV" ) );
- vkCmdWriteBufferMarkerAMD = PFN_vkCmdWriteBufferMarkerAMD( vkGetInstanceProcAddr( instance, "vkCmdWriteBufferMarkerAMD" ) );
+ vkCmdSetViewportShadingRatePaletteNV = PFN_vkCmdSetViewportShadingRatePaletteNV(
+ vkGetInstanceProcAddr( instance, "vkCmdSetViewportShadingRatePaletteNV" ) );
+ vkCmdSetViewportWScalingNV =
+ PFN_vkCmdSetViewportWScalingNV( vkGetInstanceProcAddr( instance, "vkCmdSetViewportWScalingNV" ) );
+ vkCmdSetViewportWithCountEXT =
+ PFN_vkCmdSetViewportWithCountEXT( vkGetInstanceProcAddr( instance, "vkCmdSetViewportWithCountEXT" ) );
+ vkCmdSubpassShadingHUAWEI =
+ PFN_vkCmdSubpassShadingHUAWEI( vkGetInstanceProcAddr( instance, "vkCmdSubpassShadingHUAWEI" ) );
+ vkCmdTraceRaysIndirectKHR =
+ PFN_vkCmdTraceRaysIndirectKHR( vkGetInstanceProcAddr( instance, "vkCmdTraceRaysIndirectKHR" ) );
+ vkCmdTraceRaysKHR = PFN_vkCmdTraceRaysKHR( vkGetInstanceProcAddr( instance, "vkCmdTraceRaysKHR" ) );
+ vkCmdTraceRaysNV = PFN_vkCmdTraceRaysNV( vkGetInstanceProcAddr( instance, "vkCmdTraceRaysNV" ) );
+ vkCmdUpdateBuffer = PFN_vkCmdUpdateBuffer( vkGetInstanceProcAddr( instance, "vkCmdUpdateBuffer" ) );
+ vkCmdWaitEvents = PFN_vkCmdWaitEvents( vkGetInstanceProcAddr( instance, "vkCmdWaitEvents" ) );
+ vkCmdWaitEvents2KHR = PFN_vkCmdWaitEvents2KHR( vkGetInstanceProcAddr( instance, "vkCmdWaitEvents2KHR" ) );
+ vkCmdWriteAccelerationStructuresPropertiesKHR = PFN_vkCmdWriteAccelerationStructuresPropertiesKHR(
+ vkGetInstanceProcAddr( instance, "vkCmdWriteAccelerationStructuresPropertiesKHR" ) );
+ vkCmdWriteAccelerationStructuresPropertiesNV = PFN_vkCmdWriteAccelerationStructuresPropertiesNV(
+ vkGetInstanceProcAddr( instance, "vkCmdWriteAccelerationStructuresPropertiesNV" ) );
+ vkCmdWriteBufferMarker2AMD =
+ PFN_vkCmdWriteBufferMarker2AMD( vkGetInstanceProcAddr( instance, "vkCmdWriteBufferMarker2AMD" ) );
+ vkCmdWriteBufferMarkerAMD =
+ PFN_vkCmdWriteBufferMarkerAMD( vkGetInstanceProcAddr( instance, "vkCmdWriteBufferMarkerAMD" ) );
vkCmdWriteTimestamp = PFN_vkCmdWriteTimestamp( vkGetInstanceProcAddr( instance, "vkCmdWriteTimestamp" ) );
+ vkCmdWriteTimestamp2KHR =
+ PFN_vkCmdWriteTimestamp2KHR( vkGetInstanceProcAddr( instance, "vkCmdWriteTimestamp2KHR" ) );
vkCompileDeferredNV = PFN_vkCompileDeferredNV( vkGetInstanceProcAddr( instance, "vkCompileDeferredNV" ) );
- vkCopyAccelerationStructureKHR = PFN_vkCopyAccelerationStructureKHR( vkGetInstanceProcAddr( instance, "vkCopyAccelerationStructureKHR" ) );
- vkCopyAccelerationStructureToMemoryKHR = PFN_vkCopyAccelerationStructureToMemoryKHR( vkGetInstanceProcAddr( instance, "vkCopyAccelerationStructureToMemoryKHR" ) );
- vkCopyMemoryToAccelerationStructureKHR = PFN_vkCopyMemoryToAccelerationStructureKHR( vkGetInstanceProcAddr( instance, "vkCopyMemoryToAccelerationStructureKHR" ) );
- vkCreateAccelerationStructureKHR = PFN_vkCreateAccelerationStructureKHR( vkGetInstanceProcAddr( instance, "vkCreateAccelerationStructureKHR" ) );
- vkCreateAccelerationStructureNV = PFN_vkCreateAccelerationStructureNV( vkGetInstanceProcAddr( instance, "vkCreateAccelerationStructureNV" ) );
- vkCreateBuffer = PFN_vkCreateBuffer( vkGetInstanceProcAddr( instance, "vkCreateBuffer" ) );
- vkCreateBufferView = PFN_vkCreateBufferView( vkGetInstanceProcAddr( instance, "vkCreateBufferView" ) );
+ vkCopyAccelerationStructureKHR =
+ PFN_vkCopyAccelerationStructureKHR( vkGetInstanceProcAddr( instance, "vkCopyAccelerationStructureKHR" ) );
+ vkCopyAccelerationStructureToMemoryKHR = PFN_vkCopyAccelerationStructureToMemoryKHR(
+ vkGetInstanceProcAddr( instance, "vkCopyAccelerationStructureToMemoryKHR" ) );
+ vkCopyMemoryToAccelerationStructureKHR = PFN_vkCopyMemoryToAccelerationStructureKHR(
+ vkGetInstanceProcAddr( instance, "vkCopyMemoryToAccelerationStructureKHR" ) );
+ vkCreateAccelerationStructureKHR =
+ PFN_vkCreateAccelerationStructureKHR( vkGetInstanceProcAddr( instance, "vkCreateAccelerationStructureKHR" ) );
+ vkCreateAccelerationStructureNV =
+ PFN_vkCreateAccelerationStructureNV( vkGetInstanceProcAddr( instance, "vkCreateAccelerationStructureNV" ) );
+ vkCreateBuffer = PFN_vkCreateBuffer( vkGetInstanceProcAddr( instance, "vkCreateBuffer" ) );
+ vkCreateBufferView = PFN_vkCreateBufferView( vkGetInstanceProcAddr( instance, "vkCreateBufferView" ) );
vkCreateCommandPool = PFN_vkCreateCommandPool( vkGetInstanceProcAddr( instance, "vkCreateCommandPool" ) );
- vkCreateComputePipelines = PFN_vkCreateComputePipelines( vkGetInstanceProcAddr( instance, "vkCreateComputePipelines" ) );
- vkCreateDeferredOperationKHR = PFN_vkCreateDeferredOperationKHR( vkGetInstanceProcAddr( instance, "vkCreateDeferredOperationKHR" ) );
- vkCreateDescriptorPool = PFN_vkCreateDescriptorPool( vkGetInstanceProcAddr( instance, "vkCreateDescriptorPool" ) );
- vkCreateDescriptorSetLayout = PFN_vkCreateDescriptorSetLayout( vkGetInstanceProcAddr( instance, "vkCreateDescriptorSetLayout" ) );
- vkCreateDescriptorUpdateTemplateKHR = PFN_vkCreateDescriptorUpdateTemplateKHR( vkGetInstanceProcAddr( instance, "vkCreateDescriptorUpdateTemplateKHR" ) );
- vkCreateDescriptorUpdateTemplate = PFN_vkCreateDescriptorUpdateTemplate( vkGetInstanceProcAddr( instance, "vkCreateDescriptorUpdateTemplate" ) );
- if ( !vkCreateDescriptorUpdateTemplate ) vkCreateDescriptorUpdateTemplate = vkCreateDescriptorUpdateTemplateKHR;
- vkCreateEvent = PFN_vkCreateEvent( vkGetInstanceProcAddr( instance, "vkCreateEvent" ) );
- vkCreateFence = PFN_vkCreateFence( vkGetInstanceProcAddr( instance, "vkCreateFence" ) );
+ vkCreateComputePipelines =
+ PFN_vkCreateComputePipelines( vkGetInstanceProcAddr( instance, "vkCreateComputePipelines" ) );
+ vkCreateCuFunctionNVX = PFN_vkCreateCuFunctionNVX( vkGetInstanceProcAddr( instance, "vkCreateCuFunctionNVX" ) );
+ vkCreateCuModuleNVX = PFN_vkCreateCuModuleNVX( vkGetInstanceProcAddr( instance, "vkCreateCuModuleNVX" ) );
+ vkCreateDeferredOperationKHR =
+ PFN_vkCreateDeferredOperationKHR( vkGetInstanceProcAddr( instance, "vkCreateDeferredOperationKHR" ) );
+ vkCreateDescriptorPool =
+ PFN_vkCreateDescriptorPool( vkGetInstanceProcAddr( instance, "vkCreateDescriptorPool" ) );
+ vkCreateDescriptorSetLayout =
+ PFN_vkCreateDescriptorSetLayout( vkGetInstanceProcAddr( instance, "vkCreateDescriptorSetLayout" ) );
+ vkCreateDescriptorUpdateTemplate =
+ PFN_vkCreateDescriptorUpdateTemplate( vkGetInstanceProcAddr( instance, "vkCreateDescriptorUpdateTemplate" ) );
+ vkCreateDescriptorUpdateTemplateKHR = PFN_vkCreateDescriptorUpdateTemplateKHR(
+ vkGetInstanceProcAddr( instance, "vkCreateDescriptorUpdateTemplateKHR" ) );
+ if ( !vkCreateDescriptorUpdateTemplate )
+ vkCreateDescriptorUpdateTemplate = vkCreateDescriptorUpdateTemplateKHR;
+ vkCreateEvent = PFN_vkCreateEvent( vkGetInstanceProcAddr( instance, "vkCreateEvent" ) );
+ vkCreateFence = PFN_vkCreateFence( vkGetInstanceProcAddr( instance, "vkCreateFence" ) );
vkCreateFramebuffer = PFN_vkCreateFramebuffer( vkGetInstanceProcAddr( instance, "vkCreateFramebuffer" ) );
- vkCreateGraphicsPipelines = PFN_vkCreateGraphicsPipelines( vkGetInstanceProcAddr( instance, "vkCreateGraphicsPipelines" ) );
- vkCreateImage = PFN_vkCreateImage( vkGetInstanceProcAddr( instance, "vkCreateImage" ) );
+ vkCreateGraphicsPipelines =
+ PFN_vkCreateGraphicsPipelines( vkGetInstanceProcAddr( instance, "vkCreateGraphicsPipelines" ) );
+ vkCreateImage = PFN_vkCreateImage( vkGetInstanceProcAddr( instance, "vkCreateImage" ) );
vkCreateImageView = PFN_vkCreateImageView( vkGetInstanceProcAddr( instance, "vkCreateImageView" ) );
- vkCreateIndirectCommandsLayoutNV = PFN_vkCreateIndirectCommandsLayoutNV( vkGetInstanceProcAddr( instance, "vkCreateIndirectCommandsLayoutNV" ) );
+ vkCreateIndirectCommandsLayoutNV =
+ PFN_vkCreateIndirectCommandsLayoutNV( vkGetInstanceProcAddr( instance, "vkCreateIndirectCommandsLayoutNV" ) );
vkCreatePipelineCache = PFN_vkCreatePipelineCache( vkGetInstanceProcAddr( instance, "vkCreatePipelineCache" ) );
- vkCreatePipelineLayout = PFN_vkCreatePipelineLayout( vkGetInstanceProcAddr( instance, "vkCreatePipelineLayout" ) );
- vkCreatePrivateDataSlotEXT = PFN_vkCreatePrivateDataSlotEXT( vkGetInstanceProcAddr( instance, "vkCreatePrivateDataSlotEXT" ) );
+ vkCreatePipelineLayout =
+ PFN_vkCreatePipelineLayout( vkGetInstanceProcAddr( instance, "vkCreatePipelineLayout" ) );
+ vkCreatePrivateDataSlotEXT =
+ PFN_vkCreatePrivateDataSlotEXT( vkGetInstanceProcAddr( instance, "vkCreatePrivateDataSlotEXT" ) );
vkCreateQueryPool = PFN_vkCreateQueryPool( vkGetInstanceProcAddr( instance, "vkCreateQueryPool" ) );
- vkCreateRayTracingPipelinesKHR = PFN_vkCreateRayTracingPipelinesKHR( vkGetInstanceProcAddr( instance, "vkCreateRayTracingPipelinesKHR" ) );
- vkCreateRayTracingPipelinesNV = PFN_vkCreateRayTracingPipelinesNV( vkGetInstanceProcAddr( instance, "vkCreateRayTracingPipelinesNV" ) );
- vkCreateRenderPass = PFN_vkCreateRenderPass( vkGetInstanceProcAddr( instance, "vkCreateRenderPass" ) );
- vkCreateRenderPass2KHR = PFN_vkCreateRenderPass2KHR( vkGetInstanceProcAddr( instance, "vkCreateRenderPass2KHR" ) );
+ vkCreateRayTracingPipelinesKHR =
+ PFN_vkCreateRayTracingPipelinesKHR( vkGetInstanceProcAddr( instance, "vkCreateRayTracingPipelinesKHR" ) );
+ vkCreateRayTracingPipelinesNV =
+ PFN_vkCreateRayTracingPipelinesNV( vkGetInstanceProcAddr( instance, "vkCreateRayTracingPipelinesNV" ) );
+ vkCreateRenderPass = PFN_vkCreateRenderPass( vkGetInstanceProcAddr( instance, "vkCreateRenderPass" ) );
vkCreateRenderPass2 = PFN_vkCreateRenderPass2( vkGetInstanceProcAddr( instance, "vkCreateRenderPass2" ) );
- if ( !vkCreateRenderPass2 ) vkCreateRenderPass2 = vkCreateRenderPass2KHR;
+ vkCreateRenderPass2KHR =
+ PFN_vkCreateRenderPass2KHR( vkGetInstanceProcAddr( instance, "vkCreateRenderPass2KHR" ) );
+ if ( !vkCreateRenderPass2 )
+ vkCreateRenderPass2 = vkCreateRenderPass2KHR;
vkCreateSampler = PFN_vkCreateSampler( vkGetInstanceProcAddr( instance, "vkCreateSampler" ) );
- vkCreateSamplerYcbcrConversionKHR = PFN_vkCreateSamplerYcbcrConversionKHR( vkGetInstanceProcAddr( instance, "vkCreateSamplerYcbcrConversionKHR" ) );
- vkCreateSamplerYcbcrConversion = PFN_vkCreateSamplerYcbcrConversion( vkGetInstanceProcAddr( instance, "vkCreateSamplerYcbcrConversion" ) );
- if ( !vkCreateSamplerYcbcrConversion ) vkCreateSamplerYcbcrConversion = vkCreateSamplerYcbcrConversionKHR;
- vkCreateSemaphore = PFN_vkCreateSemaphore( vkGetInstanceProcAddr( instance, "vkCreateSemaphore" ) );
+ vkCreateSamplerYcbcrConversion =
+ PFN_vkCreateSamplerYcbcrConversion( vkGetInstanceProcAddr( instance, "vkCreateSamplerYcbcrConversion" ) );
+ vkCreateSamplerYcbcrConversionKHR =
+ PFN_vkCreateSamplerYcbcrConversionKHR( vkGetInstanceProcAddr( instance, "vkCreateSamplerYcbcrConversionKHR" ) );
+ if ( !vkCreateSamplerYcbcrConversion )
+ vkCreateSamplerYcbcrConversion = vkCreateSamplerYcbcrConversionKHR;
+ vkCreateSemaphore = PFN_vkCreateSemaphore( vkGetInstanceProcAddr( instance, "vkCreateSemaphore" ) );
vkCreateShaderModule = PFN_vkCreateShaderModule( vkGetInstanceProcAddr( instance, "vkCreateShaderModule" ) );
- vkCreateSharedSwapchainsKHR = PFN_vkCreateSharedSwapchainsKHR( vkGetInstanceProcAddr( instance, "vkCreateSharedSwapchainsKHR" ) );
+ vkCreateSharedSwapchainsKHR =
+ PFN_vkCreateSharedSwapchainsKHR( vkGetInstanceProcAddr( instance, "vkCreateSharedSwapchainsKHR" ) );
vkCreateSwapchainKHR = PFN_vkCreateSwapchainKHR( vkGetInstanceProcAddr( instance, "vkCreateSwapchainKHR" ) );
- vkCreateValidationCacheEXT = PFN_vkCreateValidationCacheEXT( vkGetInstanceProcAddr( instance, "vkCreateValidationCacheEXT" ) );
- vkDebugMarkerSetObjectNameEXT = PFN_vkDebugMarkerSetObjectNameEXT( vkGetInstanceProcAddr( instance, "vkDebugMarkerSetObjectNameEXT" ) );
- vkDebugMarkerSetObjectTagEXT = PFN_vkDebugMarkerSetObjectTagEXT( vkGetInstanceProcAddr( instance, "vkDebugMarkerSetObjectTagEXT" ) );
- vkDeferredOperationJoinKHR = PFN_vkDeferredOperationJoinKHR( vkGetInstanceProcAddr( instance, "vkDeferredOperationJoinKHR" ) );
- vkDestroyAccelerationStructureKHR = PFN_vkDestroyAccelerationStructureKHR( vkGetInstanceProcAddr( instance, "vkDestroyAccelerationStructureKHR" ) );
- vkDestroyAccelerationStructureNV = PFN_vkDestroyAccelerationStructureNV( vkGetInstanceProcAddr( instance, "vkDestroyAccelerationStructureNV" ) );
- vkDestroyBuffer = PFN_vkDestroyBuffer( vkGetInstanceProcAddr( instance, "vkDestroyBuffer" ) );
- vkDestroyBufferView = PFN_vkDestroyBufferView( vkGetInstanceProcAddr( instance, "vkDestroyBufferView" ) );
+ vkCreateValidationCacheEXT =
+ PFN_vkCreateValidationCacheEXT( vkGetInstanceProcAddr( instance, "vkCreateValidationCacheEXT" ) );
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ vkCreateVideoSessionKHR =
+ PFN_vkCreateVideoSessionKHR( vkGetInstanceProcAddr( instance, "vkCreateVideoSessionKHR" ) );
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ vkCreateVideoSessionParametersKHR =
+ PFN_vkCreateVideoSessionParametersKHR( vkGetInstanceProcAddr( instance, "vkCreateVideoSessionParametersKHR" ) );
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ vkDebugMarkerSetObjectNameEXT =
+ PFN_vkDebugMarkerSetObjectNameEXT( vkGetInstanceProcAddr( instance, "vkDebugMarkerSetObjectNameEXT" ) );
+ vkDebugMarkerSetObjectTagEXT =
+ PFN_vkDebugMarkerSetObjectTagEXT( vkGetInstanceProcAddr( instance, "vkDebugMarkerSetObjectTagEXT" ) );
+ vkDeferredOperationJoinKHR =
+ PFN_vkDeferredOperationJoinKHR( vkGetInstanceProcAddr( instance, "vkDeferredOperationJoinKHR" ) );
+ vkDestroyAccelerationStructureKHR =
+ PFN_vkDestroyAccelerationStructureKHR( vkGetInstanceProcAddr( instance, "vkDestroyAccelerationStructureKHR" ) );
+ vkDestroyAccelerationStructureNV =
+ PFN_vkDestroyAccelerationStructureNV( vkGetInstanceProcAddr( instance, "vkDestroyAccelerationStructureNV" ) );
+ vkDestroyBuffer = PFN_vkDestroyBuffer( vkGetInstanceProcAddr( instance, "vkDestroyBuffer" ) );
+ vkDestroyBufferView = PFN_vkDestroyBufferView( vkGetInstanceProcAddr( instance, "vkDestroyBufferView" ) );
vkDestroyCommandPool = PFN_vkDestroyCommandPool( vkGetInstanceProcAddr( instance, "vkDestroyCommandPool" ) );
- vkDestroyDeferredOperationKHR = PFN_vkDestroyDeferredOperationKHR( vkGetInstanceProcAddr( instance, "vkDestroyDeferredOperationKHR" ) );
- vkDestroyDescriptorPool = PFN_vkDestroyDescriptorPool( vkGetInstanceProcAddr( instance, "vkDestroyDescriptorPool" ) );
- vkDestroyDescriptorSetLayout = PFN_vkDestroyDescriptorSetLayout( vkGetInstanceProcAddr( instance, "vkDestroyDescriptorSetLayout" ) );
- vkDestroyDescriptorUpdateTemplateKHR = PFN_vkDestroyDescriptorUpdateTemplateKHR( vkGetInstanceProcAddr( instance, "vkDestroyDescriptorUpdateTemplateKHR" ) );
- vkDestroyDescriptorUpdateTemplate = PFN_vkDestroyDescriptorUpdateTemplate( vkGetInstanceProcAddr( instance, "vkDestroyDescriptorUpdateTemplate" ) );
- if ( !vkDestroyDescriptorUpdateTemplate ) vkDestroyDescriptorUpdateTemplate = vkDestroyDescriptorUpdateTemplateKHR;
- vkDestroyDevice = PFN_vkDestroyDevice( vkGetInstanceProcAddr( instance, "vkDestroyDevice" ) );
- vkDestroyEvent = PFN_vkDestroyEvent( vkGetInstanceProcAddr( instance, "vkDestroyEvent" ) );
- vkDestroyFence = PFN_vkDestroyFence( vkGetInstanceProcAddr( instance, "vkDestroyFence" ) );
+ vkDestroyCuFunctionNVX =
+ PFN_vkDestroyCuFunctionNVX( vkGetInstanceProcAddr( instance, "vkDestroyCuFunctionNVX" ) );
+ vkDestroyCuModuleNVX = PFN_vkDestroyCuModuleNVX( vkGetInstanceProcAddr( instance, "vkDestroyCuModuleNVX" ) );
+ vkDestroyDeferredOperationKHR =
+ PFN_vkDestroyDeferredOperationKHR( vkGetInstanceProcAddr( instance, "vkDestroyDeferredOperationKHR" ) );
+ vkDestroyDescriptorPool =
+ PFN_vkDestroyDescriptorPool( vkGetInstanceProcAddr( instance, "vkDestroyDescriptorPool" ) );
+ vkDestroyDescriptorSetLayout =
+ PFN_vkDestroyDescriptorSetLayout( vkGetInstanceProcAddr( instance, "vkDestroyDescriptorSetLayout" ) );
+ vkDestroyDescriptorUpdateTemplate =
+ PFN_vkDestroyDescriptorUpdateTemplate( vkGetInstanceProcAddr( instance, "vkDestroyDescriptorUpdateTemplate" ) );
+ vkDestroyDescriptorUpdateTemplateKHR = PFN_vkDestroyDescriptorUpdateTemplateKHR(
+ vkGetInstanceProcAddr( instance, "vkDestroyDescriptorUpdateTemplateKHR" ) );
+ if ( !vkDestroyDescriptorUpdateTemplate )
+ vkDestroyDescriptorUpdateTemplate = vkDestroyDescriptorUpdateTemplateKHR;
+ vkDestroyDevice = PFN_vkDestroyDevice( vkGetInstanceProcAddr( instance, "vkDestroyDevice" ) );
+ vkDestroyEvent = PFN_vkDestroyEvent( vkGetInstanceProcAddr( instance, "vkDestroyEvent" ) );
+ vkDestroyFence = PFN_vkDestroyFence( vkGetInstanceProcAddr( instance, "vkDestroyFence" ) );
vkDestroyFramebuffer = PFN_vkDestroyFramebuffer( vkGetInstanceProcAddr( instance, "vkDestroyFramebuffer" ) );
- vkDestroyImage = PFN_vkDestroyImage( vkGetInstanceProcAddr( instance, "vkDestroyImage" ) );
- vkDestroyImageView = PFN_vkDestroyImageView( vkGetInstanceProcAddr( instance, "vkDestroyImageView" ) );
- vkDestroyIndirectCommandsLayoutNV = PFN_vkDestroyIndirectCommandsLayoutNV( vkGetInstanceProcAddr( instance, "vkDestroyIndirectCommandsLayoutNV" ) );
+ vkDestroyImage = PFN_vkDestroyImage( vkGetInstanceProcAddr( instance, "vkDestroyImage" ) );
+ vkDestroyImageView = PFN_vkDestroyImageView( vkGetInstanceProcAddr( instance, "vkDestroyImageView" ) );
+ vkDestroyIndirectCommandsLayoutNV =
+ PFN_vkDestroyIndirectCommandsLayoutNV( vkGetInstanceProcAddr( instance, "vkDestroyIndirectCommandsLayoutNV" ) );
vkDestroyPipeline = PFN_vkDestroyPipeline( vkGetInstanceProcAddr( instance, "vkDestroyPipeline" ) );
- vkDestroyPipelineCache = PFN_vkDestroyPipelineCache( vkGetInstanceProcAddr( instance, "vkDestroyPipelineCache" ) );
- vkDestroyPipelineLayout = PFN_vkDestroyPipelineLayout( vkGetInstanceProcAddr( instance, "vkDestroyPipelineLayout" ) );
- vkDestroyPrivateDataSlotEXT = PFN_vkDestroyPrivateDataSlotEXT( vkGetInstanceProcAddr( instance, "vkDestroyPrivateDataSlotEXT" ) );
- vkDestroyQueryPool = PFN_vkDestroyQueryPool( vkGetInstanceProcAddr( instance, "vkDestroyQueryPool" ) );
+ vkDestroyPipelineCache =
+ PFN_vkDestroyPipelineCache( vkGetInstanceProcAddr( instance, "vkDestroyPipelineCache" ) );
+ vkDestroyPipelineLayout =
+ PFN_vkDestroyPipelineLayout( vkGetInstanceProcAddr( instance, "vkDestroyPipelineLayout" ) );
+ vkDestroyPrivateDataSlotEXT =
+ PFN_vkDestroyPrivateDataSlotEXT( vkGetInstanceProcAddr( instance, "vkDestroyPrivateDataSlotEXT" ) );
+ vkDestroyQueryPool = PFN_vkDestroyQueryPool( vkGetInstanceProcAddr( instance, "vkDestroyQueryPool" ) );
vkDestroyRenderPass = PFN_vkDestroyRenderPass( vkGetInstanceProcAddr( instance, "vkDestroyRenderPass" ) );
- vkDestroySampler = PFN_vkDestroySampler( vkGetInstanceProcAddr( instance, "vkDestroySampler" ) );
- vkDestroySamplerYcbcrConversionKHR = PFN_vkDestroySamplerYcbcrConversionKHR( vkGetInstanceProcAddr( instance, "vkDestroySamplerYcbcrConversionKHR" ) );
- vkDestroySamplerYcbcrConversion = PFN_vkDestroySamplerYcbcrConversion( vkGetInstanceProcAddr( instance, "vkDestroySamplerYcbcrConversion" ) );
- if ( !vkDestroySamplerYcbcrConversion ) vkDestroySamplerYcbcrConversion = vkDestroySamplerYcbcrConversionKHR;
- vkDestroySemaphore = PFN_vkDestroySemaphore( vkGetInstanceProcAddr( instance, "vkDestroySemaphore" ) );
+ vkDestroySampler = PFN_vkDestroySampler( vkGetInstanceProcAddr( instance, "vkDestroySampler" ) );
+ vkDestroySamplerYcbcrConversion =
+ PFN_vkDestroySamplerYcbcrConversion( vkGetInstanceProcAddr( instance, "vkDestroySamplerYcbcrConversion" ) );
+ vkDestroySamplerYcbcrConversionKHR = PFN_vkDestroySamplerYcbcrConversionKHR(
+ vkGetInstanceProcAddr( instance, "vkDestroySamplerYcbcrConversionKHR" ) );
+ if ( !vkDestroySamplerYcbcrConversion )
+ vkDestroySamplerYcbcrConversion = vkDestroySamplerYcbcrConversionKHR;
+ vkDestroySemaphore = PFN_vkDestroySemaphore( vkGetInstanceProcAddr( instance, "vkDestroySemaphore" ) );
vkDestroyShaderModule = PFN_vkDestroyShaderModule( vkGetInstanceProcAddr( instance, "vkDestroyShaderModule" ) );
vkDestroySwapchainKHR = PFN_vkDestroySwapchainKHR( vkGetInstanceProcAddr( instance, "vkDestroySwapchainKHR" ) );
- vkDestroyValidationCacheEXT = PFN_vkDestroyValidationCacheEXT( vkGetInstanceProcAddr( instance, "vkDestroyValidationCacheEXT" ) );
+ vkDestroyValidationCacheEXT =
+ PFN_vkDestroyValidationCacheEXT( vkGetInstanceProcAddr( instance, "vkDestroyValidationCacheEXT" ) );
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ vkDestroyVideoSessionKHR =
+ PFN_vkDestroyVideoSessionKHR( vkGetInstanceProcAddr( instance, "vkDestroyVideoSessionKHR" ) );
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ vkDestroyVideoSessionParametersKHR = PFN_vkDestroyVideoSessionParametersKHR(
+ vkGetInstanceProcAddr( instance, "vkDestroyVideoSessionParametersKHR" ) );
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
vkDeviceWaitIdle = PFN_vkDeviceWaitIdle( vkGetInstanceProcAddr( instance, "vkDeviceWaitIdle" ) );
- vkDisplayPowerControlEXT = PFN_vkDisplayPowerControlEXT( vkGetInstanceProcAddr( instance, "vkDisplayPowerControlEXT" ) );
+ vkDisplayPowerControlEXT =
+ PFN_vkDisplayPowerControlEXT( vkGetInstanceProcAddr( instance, "vkDisplayPowerControlEXT" ) );
vkEndCommandBuffer = PFN_vkEndCommandBuffer( vkGetInstanceProcAddr( instance, "vkEndCommandBuffer" ) );
- vkFlushMappedMemoryRanges = PFN_vkFlushMappedMemoryRanges( vkGetInstanceProcAddr( instance, "vkFlushMappedMemoryRanges" ) );
+ vkFlushMappedMemoryRanges =
+ PFN_vkFlushMappedMemoryRanges( vkGetInstanceProcAddr( instance, "vkFlushMappedMemoryRanges" ) );
vkFreeCommandBuffers = PFN_vkFreeCommandBuffers( vkGetInstanceProcAddr( instance, "vkFreeCommandBuffers" ) );
vkFreeDescriptorSets = PFN_vkFreeDescriptorSets( vkGetInstanceProcAddr( instance, "vkFreeDescriptorSets" ) );
- vkFreeMemory = PFN_vkFreeMemory( vkGetInstanceProcAddr( instance, "vkFreeMemory" ) );
- vkGetAccelerationStructureBuildSizesKHR = PFN_vkGetAccelerationStructureBuildSizesKHR( vkGetInstanceProcAddr( instance, "vkGetAccelerationStructureBuildSizesKHR" ) );
- vkGetAccelerationStructureDeviceAddressKHR = PFN_vkGetAccelerationStructureDeviceAddressKHR( vkGetInstanceProcAddr( instance, "vkGetAccelerationStructureDeviceAddressKHR" ) );
- vkGetAccelerationStructureHandleNV = PFN_vkGetAccelerationStructureHandleNV( vkGetInstanceProcAddr( instance, "vkGetAccelerationStructureHandleNV" ) );
- vkGetAccelerationStructureMemoryRequirementsNV = PFN_vkGetAccelerationStructureMemoryRequirementsNV( vkGetInstanceProcAddr( instance, "vkGetAccelerationStructureMemoryRequirementsNV" ) );
-#ifdef VK_USE_PLATFORM_ANDROID_KHR
- vkGetAndroidHardwareBufferPropertiesANDROID = PFN_vkGetAndroidHardwareBufferPropertiesANDROID( vkGetInstanceProcAddr( instance, "vkGetAndroidHardwareBufferPropertiesANDROID" ) );
+ vkFreeMemory = PFN_vkFreeMemory( vkGetInstanceProcAddr( instance, "vkFreeMemory" ) );
+ vkGetAccelerationStructureBuildSizesKHR = PFN_vkGetAccelerationStructureBuildSizesKHR(
+ vkGetInstanceProcAddr( instance, "vkGetAccelerationStructureBuildSizesKHR" ) );
+ vkGetAccelerationStructureDeviceAddressKHR = PFN_vkGetAccelerationStructureDeviceAddressKHR(
+ vkGetInstanceProcAddr( instance, "vkGetAccelerationStructureDeviceAddressKHR" ) );
+ vkGetAccelerationStructureHandleNV = PFN_vkGetAccelerationStructureHandleNV(
+ vkGetInstanceProcAddr( instance, "vkGetAccelerationStructureHandleNV" ) );
+ vkGetAccelerationStructureMemoryRequirementsNV = PFN_vkGetAccelerationStructureMemoryRequirementsNV(
+ vkGetInstanceProcAddr( instance, "vkGetAccelerationStructureMemoryRequirementsNV" ) );
+#if defined( VK_USE_PLATFORM_ANDROID_KHR )
+ vkGetAndroidHardwareBufferPropertiesANDROID = PFN_vkGetAndroidHardwareBufferPropertiesANDROID(
+ vkGetInstanceProcAddr( instance, "vkGetAndroidHardwareBufferPropertiesANDROID" ) );
#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
- vkGetBufferDeviceAddressEXT = PFN_vkGetBufferDeviceAddressEXT( vkGetInstanceProcAddr( instance, "vkGetBufferDeviceAddressEXT" ) );
- vkGetBufferDeviceAddressKHR = PFN_vkGetBufferDeviceAddressKHR( vkGetInstanceProcAddr( instance, "vkGetBufferDeviceAddressKHR" ) );
- vkGetBufferDeviceAddress = PFN_vkGetBufferDeviceAddress( vkGetInstanceProcAddr( instance, "vkGetBufferDeviceAddress" ) );
- if ( !vkGetBufferDeviceAddress ) vkGetBufferDeviceAddress = vkGetBufferDeviceAddressKHR;
- if ( !vkGetBufferDeviceAddress ) vkGetBufferDeviceAddress = vkGetBufferDeviceAddressEXT;
- vkGetBufferMemoryRequirements = PFN_vkGetBufferMemoryRequirements( vkGetInstanceProcAddr( instance, "vkGetBufferMemoryRequirements" ) );
- vkGetBufferMemoryRequirements2KHR = PFN_vkGetBufferMemoryRequirements2KHR( vkGetInstanceProcAddr( instance, "vkGetBufferMemoryRequirements2KHR" ) );
- vkGetBufferMemoryRequirements2 = PFN_vkGetBufferMemoryRequirements2( vkGetInstanceProcAddr( instance, "vkGetBufferMemoryRequirements2" ) );
- if ( !vkGetBufferMemoryRequirements2 ) vkGetBufferMemoryRequirements2 = vkGetBufferMemoryRequirements2KHR;
- vkGetBufferOpaqueCaptureAddressKHR = PFN_vkGetBufferOpaqueCaptureAddressKHR( vkGetInstanceProcAddr( instance, "vkGetBufferOpaqueCaptureAddressKHR" ) );
- vkGetBufferOpaqueCaptureAddress = PFN_vkGetBufferOpaqueCaptureAddress( vkGetInstanceProcAddr( instance, "vkGetBufferOpaqueCaptureAddress" ) );
- if ( !vkGetBufferOpaqueCaptureAddress ) vkGetBufferOpaqueCaptureAddress = vkGetBufferOpaqueCaptureAddressKHR;
- vkGetCalibratedTimestampsEXT = PFN_vkGetCalibratedTimestampsEXT( vkGetInstanceProcAddr( instance, "vkGetCalibratedTimestampsEXT" ) );
- vkGetDeferredOperationMaxConcurrencyKHR = PFN_vkGetDeferredOperationMaxConcurrencyKHR( vkGetInstanceProcAddr( instance, "vkGetDeferredOperationMaxConcurrencyKHR" ) );
- vkGetDeferredOperationResultKHR = PFN_vkGetDeferredOperationResultKHR( vkGetInstanceProcAddr( instance, "vkGetDeferredOperationResultKHR" ) );
- vkGetDescriptorSetLayoutSupportKHR = PFN_vkGetDescriptorSetLayoutSupportKHR( vkGetInstanceProcAddr( instance, "vkGetDescriptorSetLayoutSupportKHR" ) );
- vkGetDescriptorSetLayoutSupport = PFN_vkGetDescriptorSetLayoutSupport( vkGetInstanceProcAddr( instance, "vkGetDescriptorSetLayoutSupport" ) );
- if ( !vkGetDescriptorSetLayoutSupport ) vkGetDescriptorSetLayoutSupport = vkGetDescriptorSetLayoutSupportKHR;
- vkGetDeviceAccelerationStructureCompatibilityKHR = PFN_vkGetDeviceAccelerationStructureCompatibilityKHR( vkGetInstanceProcAddr( instance, "vkGetDeviceAccelerationStructureCompatibilityKHR" ) );
- vkGetDeviceGroupPeerMemoryFeaturesKHR = PFN_vkGetDeviceGroupPeerMemoryFeaturesKHR( vkGetInstanceProcAddr( instance, "vkGetDeviceGroupPeerMemoryFeaturesKHR" ) );
- vkGetDeviceGroupPeerMemoryFeatures = PFN_vkGetDeviceGroupPeerMemoryFeatures( vkGetInstanceProcAddr( instance, "vkGetDeviceGroupPeerMemoryFeatures" ) );
- if ( !vkGetDeviceGroupPeerMemoryFeatures ) vkGetDeviceGroupPeerMemoryFeatures = vkGetDeviceGroupPeerMemoryFeaturesKHR;
- vkGetDeviceGroupPresentCapabilitiesKHR = PFN_vkGetDeviceGroupPresentCapabilitiesKHR( vkGetInstanceProcAddr( instance, "vkGetDeviceGroupPresentCapabilitiesKHR" ) );
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- vkGetDeviceGroupSurfacePresentModes2EXT = PFN_vkGetDeviceGroupSurfacePresentModes2EXT( vkGetInstanceProcAddr( instance, "vkGetDeviceGroupSurfacePresentModes2EXT" ) );
+ vkGetBufferDeviceAddress =
+ PFN_vkGetBufferDeviceAddress( vkGetInstanceProcAddr( instance, "vkGetBufferDeviceAddress" ) );
+ vkGetBufferDeviceAddressEXT =
+ PFN_vkGetBufferDeviceAddressEXT( vkGetInstanceProcAddr( instance, "vkGetBufferDeviceAddressEXT" ) );
+ if ( !vkGetBufferDeviceAddress )
+ vkGetBufferDeviceAddress = vkGetBufferDeviceAddressEXT;
+ vkGetBufferDeviceAddressKHR =
+ PFN_vkGetBufferDeviceAddressKHR( vkGetInstanceProcAddr( instance, "vkGetBufferDeviceAddressKHR" ) );
+ if ( !vkGetBufferDeviceAddress )
+ vkGetBufferDeviceAddress = vkGetBufferDeviceAddressKHR;
+ vkGetBufferMemoryRequirements =
+ PFN_vkGetBufferMemoryRequirements( vkGetInstanceProcAddr( instance, "vkGetBufferMemoryRequirements" ) );
+ vkGetBufferMemoryRequirements2 =
+ PFN_vkGetBufferMemoryRequirements2( vkGetInstanceProcAddr( instance, "vkGetBufferMemoryRequirements2" ) );
+ vkGetBufferMemoryRequirements2KHR =
+ PFN_vkGetBufferMemoryRequirements2KHR( vkGetInstanceProcAddr( instance, "vkGetBufferMemoryRequirements2KHR" ) );
+ if ( !vkGetBufferMemoryRequirements2 )
+ vkGetBufferMemoryRequirements2 = vkGetBufferMemoryRequirements2KHR;
+ vkGetBufferOpaqueCaptureAddress =
+ PFN_vkGetBufferOpaqueCaptureAddress( vkGetInstanceProcAddr( instance, "vkGetBufferOpaqueCaptureAddress" ) );
+ vkGetBufferOpaqueCaptureAddressKHR = PFN_vkGetBufferOpaqueCaptureAddressKHR(
+ vkGetInstanceProcAddr( instance, "vkGetBufferOpaqueCaptureAddressKHR" ) );
+ if ( !vkGetBufferOpaqueCaptureAddress )
+ vkGetBufferOpaqueCaptureAddress = vkGetBufferOpaqueCaptureAddressKHR;
+ vkGetCalibratedTimestampsEXT =
+ PFN_vkGetCalibratedTimestampsEXT( vkGetInstanceProcAddr( instance, "vkGetCalibratedTimestampsEXT" ) );
+ vkGetDeferredOperationMaxConcurrencyKHR = PFN_vkGetDeferredOperationMaxConcurrencyKHR(
+ vkGetInstanceProcAddr( instance, "vkGetDeferredOperationMaxConcurrencyKHR" ) );
+ vkGetDeferredOperationResultKHR =
+ PFN_vkGetDeferredOperationResultKHR( vkGetInstanceProcAddr( instance, "vkGetDeferredOperationResultKHR" ) );
+ vkGetDescriptorSetLayoutSupport =
+ PFN_vkGetDescriptorSetLayoutSupport( vkGetInstanceProcAddr( instance, "vkGetDescriptorSetLayoutSupport" ) );
+ vkGetDescriptorSetLayoutSupportKHR = PFN_vkGetDescriptorSetLayoutSupportKHR(
+ vkGetInstanceProcAddr( instance, "vkGetDescriptorSetLayoutSupportKHR" ) );
+ if ( !vkGetDescriptorSetLayoutSupport )
+ vkGetDescriptorSetLayoutSupport = vkGetDescriptorSetLayoutSupportKHR;
+ vkGetDeviceAccelerationStructureCompatibilityKHR = PFN_vkGetDeviceAccelerationStructureCompatibilityKHR(
+ vkGetInstanceProcAddr( instance, "vkGetDeviceAccelerationStructureCompatibilityKHR" ) );
+ vkGetDeviceGroupPeerMemoryFeatures = PFN_vkGetDeviceGroupPeerMemoryFeatures(
+ vkGetInstanceProcAddr( instance, "vkGetDeviceGroupPeerMemoryFeatures" ) );
+ vkGetDeviceGroupPeerMemoryFeaturesKHR = PFN_vkGetDeviceGroupPeerMemoryFeaturesKHR(
+ vkGetInstanceProcAddr( instance, "vkGetDeviceGroupPeerMemoryFeaturesKHR" ) );
+ if ( !vkGetDeviceGroupPeerMemoryFeatures )
+ vkGetDeviceGroupPeerMemoryFeatures = vkGetDeviceGroupPeerMemoryFeaturesKHR;
+ vkGetDeviceGroupPresentCapabilitiesKHR = PFN_vkGetDeviceGroupPresentCapabilitiesKHR(
+ vkGetInstanceProcAddr( instance, "vkGetDeviceGroupPresentCapabilitiesKHR" ) );
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ vkGetDeviceGroupSurfacePresentModes2EXT = PFN_vkGetDeviceGroupSurfacePresentModes2EXT(
+ vkGetInstanceProcAddr( instance, "vkGetDeviceGroupSurfacePresentModes2EXT" ) );
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
- vkGetDeviceGroupSurfacePresentModesKHR = PFN_vkGetDeviceGroupSurfacePresentModesKHR( vkGetInstanceProcAddr( instance, "vkGetDeviceGroupSurfacePresentModesKHR" ) );
- vkGetDeviceMemoryCommitment = PFN_vkGetDeviceMemoryCommitment( vkGetInstanceProcAddr( instance, "vkGetDeviceMemoryCommitment" ) );
- vkGetDeviceMemoryOpaqueCaptureAddressKHR = PFN_vkGetDeviceMemoryOpaqueCaptureAddressKHR( vkGetInstanceProcAddr( instance, "vkGetDeviceMemoryOpaqueCaptureAddressKHR" ) );
- vkGetDeviceMemoryOpaqueCaptureAddress = PFN_vkGetDeviceMemoryOpaqueCaptureAddress( vkGetInstanceProcAddr( instance, "vkGetDeviceMemoryOpaqueCaptureAddress" ) );
- if ( !vkGetDeviceMemoryOpaqueCaptureAddress ) vkGetDeviceMemoryOpaqueCaptureAddress = vkGetDeviceMemoryOpaqueCaptureAddressKHR;
+ vkGetDeviceGroupSurfacePresentModesKHR = PFN_vkGetDeviceGroupSurfacePresentModesKHR(
+ vkGetInstanceProcAddr( instance, "vkGetDeviceGroupSurfacePresentModesKHR" ) );
+ vkGetDeviceMemoryCommitment =
+ PFN_vkGetDeviceMemoryCommitment( vkGetInstanceProcAddr( instance, "vkGetDeviceMemoryCommitment" ) );
+ vkGetDeviceMemoryOpaqueCaptureAddress = PFN_vkGetDeviceMemoryOpaqueCaptureAddress(
+ vkGetInstanceProcAddr( instance, "vkGetDeviceMemoryOpaqueCaptureAddress" ) );
+ vkGetDeviceMemoryOpaqueCaptureAddressKHR = PFN_vkGetDeviceMemoryOpaqueCaptureAddressKHR(
+ vkGetInstanceProcAddr( instance, "vkGetDeviceMemoryOpaqueCaptureAddressKHR" ) );
+ if ( !vkGetDeviceMemoryOpaqueCaptureAddress )
+ vkGetDeviceMemoryOpaqueCaptureAddress = vkGetDeviceMemoryOpaqueCaptureAddressKHR;
vkGetDeviceProcAddr = PFN_vkGetDeviceProcAddr( vkGetInstanceProcAddr( instance, "vkGetDeviceProcAddr" ) );
- vkGetDeviceQueue = PFN_vkGetDeviceQueue( vkGetInstanceProcAddr( instance, "vkGetDeviceQueue" ) );
- vkGetDeviceQueue2 = PFN_vkGetDeviceQueue2( vkGetInstanceProcAddr( instance, "vkGetDeviceQueue2" ) );
- vkGetEventStatus = PFN_vkGetEventStatus( vkGetInstanceProcAddr( instance, "vkGetEventStatus" ) );
- vkGetFenceFdKHR = PFN_vkGetFenceFdKHR( vkGetInstanceProcAddr( instance, "vkGetFenceFdKHR" ) );
- vkGetFenceStatus = PFN_vkGetFenceStatus( vkGetInstanceProcAddr( instance, "vkGetFenceStatus" ) );
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- vkGetFenceWin32HandleKHR = PFN_vkGetFenceWin32HandleKHR( vkGetInstanceProcAddr( instance, "vkGetFenceWin32HandleKHR" ) );
+ vkGetDeviceQueue = PFN_vkGetDeviceQueue( vkGetInstanceProcAddr( instance, "vkGetDeviceQueue" ) );
+ vkGetDeviceQueue2 = PFN_vkGetDeviceQueue2( vkGetInstanceProcAddr( instance, "vkGetDeviceQueue2" ) );
+ vkGetEventStatus = PFN_vkGetEventStatus( vkGetInstanceProcAddr( instance, "vkGetEventStatus" ) );
+ vkGetFenceFdKHR = PFN_vkGetFenceFdKHR( vkGetInstanceProcAddr( instance, "vkGetFenceFdKHR" ) );
+ vkGetFenceStatus = PFN_vkGetFenceStatus( vkGetInstanceProcAddr( instance, "vkGetFenceStatus" ) );
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ vkGetFenceWin32HandleKHR =
+ PFN_vkGetFenceWin32HandleKHR( vkGetInstanceProcAddr( instance, "vkGetFenceWin32HandleKHR" ) );
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
- vkGetGeneratedCommandsMemoryRequirementsNV = PFN_vkGetGeneratedCommandsMemoryRequirementsNV( vkGetInstanceProcAddr( instance, "vkGetGeneratedCommandsMemoryRequirementsNV" ) );
- vkGetImageDrmFormatModifierPropertiesEXT = PFN_vkGetImageDrmFormatModifierPropertiesEXT( vkGetInstanceProcAddr( instance, "vkGetImageDrmFormatModifierPropertiesEXT" ) );
- vkGetImageMemoryRequirements = PFN_vkGetImageMemoryRequirements( vkGetInstanceProcAddr( instance, "vkGetImageMemoryRequirements" ) );
- vkGetImageMemoryRequirements2KHR = PFN_vkGetImageMemoryRequirements2KHR( vkGetInstanceProcAddr( instance, "vkGetImageMemoryRequirements2KHR" ) );
- vkGetImageMemoryRequirements2 = PFN_vkGetImageMemoryRequirements2( vkGetInstanceProcAddr( instance, "vkGetImageMemoryRequirements2" ) );
- if ( !vkGetImageMemoryRequirements2 ) vkGetImageMemoryRequirements2 = vkGetImageMemoryRequirements2KHR;
- vkGetImageSparseMemoryRequirements = PFN_vkGetImageSparseMemoryRequirements( vkGetInstanceProcAddr( instance, "vkGetImageSparseMemoryRequirements" ) );
- vkGetImageSparseMemoryRequirements2KHR = PFN_vkGetImageSparseMemoryRequirements2KHR( vkGetInstanceProcAddr( instance, "vkGetImageSparseMemoryRequirements2KHR" ) );
- vkGetImageSparseMemoryRequirements2 = PFN_vkGetImageSparseMemoryRequirements2( vkGetInstanceProcAddr( instance, "vkGetImageSparseMemoryRequirements2" ) );
- if ( !vkGetImageSparseMemoryRequirements2 ) vkGetImageSparseMemoryRequirements2 = vkGetImageSparseMemoryRequirements2KHR;
- vkGetImageSubresourceLayout = PFN_vkGetImageSubresourceLayout( vkGetInstanceProcAddr( instance, "vkGetImageSubresourceLayout" ) );
- vkGetImageViewAddressNVX = PFN_vkGetImageViewAddressNVX( vkGetInstanceProcAddr( instance, "vkGetImageViewAddressNVX" ) );
- vkGetImageViewHandleNVX = PFN_vkGetImageViewHandleNVX( vkGetInstanceProcAddr( instance, "vkGetImageViewHandleNVX" ) );
-#ifdef VK_USE_PLATFORM_ANDROID_KHR
- vkGetMemoryAndroidHardwareBufferANDROID = PFN_vkGetMemoryAndroidHardwareBufferANDROID( vkGetInstanceProcAddr( instance, "vkGetMemoryAndroidHardwareBufferANDROID" ) );
+ vkGetGeneratedCommandsMemoryRequirementsNV = PFN_vkGetGeneratedCommandsMemoryRequirementsNV(
+ vkGetInstanceProcAddr( instance, "vkGetGeneratedCommandsMemoryRequirementsNV" ) );
+ vkGetImageDrmFormatModifierPropertiesEXT = PFN_vkGetImageDrmFormatModifierPropertiesEXT(
+ vkGetInstanceProcAddr( instance, "vkGetImageDrmFormatModifierPropertiesEXT" ) );
+ vkGetImageMemoryRequirements =
+ PFN_vkGetImageMemoryRequirements( vkGetInstanceProcAddr( instance, "vkGetImageMemoryRequirements" ) );
+ vkGetImageMemoryRequirements2 =
+ PFN_vkGetImageMemoryRequirements2( vkGetInstanceProcAddr( instance, "vkGetImageMemoryRequirements2" ) );
+ vkGetImageMemoryRequirements2KHR =
+ PFN_vkGetImageMemoryRequirements2KHR( vkGetInstanceProcAddr( instance, "vkGetImageMemoryRequirements2KHR" ) );
+ if ( !vkGetImageMemoryRequirements2 )
+ vkGetImageMemoryRequirements2 = vkGetImageMemoryRequirements2KHR;
+ vkGetImageSparseMemoryRequirements = PFN_vkGetImageSparseMemoryRequirements(
+ vkGetInstanceProcAddr( instance, "vkGetImageSparseMemoryRequirements" ) );
+ vkGetImageSparseMemoryRequirements2 = PFN_vkGetImageSparseMemoryRequirements2(
+ vkGetInstanceProcAddr( instance, "vkGetImageSparseMemoryRequirements2" ) );
+ vkGetImageSparseMemoryRequirements2KHR = PFN_vkGetImageSparseMemoryRequirements2KHR(
+ vkGetInstanceProcAddr( instance, "vkGetImageSparseMemoryRequirements2KHR" ) );
+ if ( !vkGetImageSparseMemoryRequirements2 )
+ vkGetImageSparseMemoryRequirements2 = vkGetImageSparseMemoryRequirements2KHR;
+ vkGetImageSubresourceLayout =
+ PFN_vkGetImageSubresourceLayout( vkGetInstanceProcAddr( instance, "vkGetImageSubresourceLayout" ) );
+ vkGetImageViewAddressNVX =
+ PFN_vkGetImageViewAddressNVX( vkGetInstanceProcAddr( instance, "vkGetImageViewAddressNVX" ) );
+ vkGetImageViewHandleNVX =
+ PFN_vkGetImageViewHandleNVX( vkGetInstanceProcAddr( instance, "vkGetImageViewHandleNVX" ) );
+#if defined( VK_USE_PLATFORM_ANDROID_KHR )
+ vkGetMemoryAndroidHardwareBufferANDROID = PFN_vkGetMemoryAndroidHardwareBufferANDROID(
+ vkGetInstanceProcAddr( instance, "vkGetMemoryAndroidHardwareBufferANDROID" ) );
#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
vkGetMemoryFdKHR = PFN_vkGetMemoryFdKHR( vkGetInstanceProcAddr( instance, "vkGetMemoryFdKHR" ) );
- vkGetMemoryFdPropertiesKHR = PFN_vkGetMemoryFdPropertiesKHR( vkGetInstanceProcAddr( instance, "vkGetMemoryFdPropertiesKHR" ) );
- vkGetMemoryHostPointerPropertiesEXT = PFN_vkGetMemoryHostPointerPropertiesEXT( vkGetInstanceProcAddr( instance, "vkGetMemoryHostPointerPropertiesEXT" ) );
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- vkGetMemoryWin32HandleKHR = PFN_vkGetMemoryWin32HandleKHR( vkGetInstanceProcAddr( instance, "vkGetMemoryWin32HandleKHR" ) );
+ vkGetMemoryFdPropertiesKHR =
+ PFN_vkGetMemoryFdPropertiesKHR( vkGetInstanceProcAddr( instance, "vkGetMemoryFdPropertiesKHR" ) );
+ vkGetMemoryHostPointerPropertiesEXT = PFN_vkGetMemoryHostPointerPropertiesEXT(
+ vkGetInstanceProcAddr( instance, "vkGetMemoryHostPointerPropertiesEXT" ) );
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ vkGetMemoryWin32HandleKHR =
+ PFN_vkGetMemoryWin32HandleKHR( vkGetInstanceProcAddr( instance, "vkGetMemoryWin32HandleKHR" ) );
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- vkGetMemoryWin32HandleNV = PFN_vkGetMemoryWin32HandleNV( vkGetInstanceProcAddr( instance, "vkGetMemoryWin32HandleNV" ) );
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ vkGetMemoryWin32HandleNV =
+ PFN_vkGetMemoryWin32HandleNV( vkGetInstanceProcAddr( instance, "vkGetMemoryWin32HandleNV" ) );
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- vkGetMemoryWin32HandlePropertiesKHR = PFN_vkGetMemoryWin32HandlePropertiesKHR( vkGetInstanceProcAddr( instance, "vkGetMemoryWin32HandlePropertiesKHR" ) );
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ vkGetMemoryWin32HandlePropertiesKHR = PFN_vkGetMemoryWin32HandlePropertiesKHR(
+ vkGetInstanceProcAddr( instance, "vkGetMemoryWin32HandlePropertiesKHR" ) );
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
- vkGetPastPresentationTimingGOOGLE = PFN_vkGetPastPresentationTimingGOOGLE( vkGetInstanceProcAddr( instance, "vkGetPastPresentationTimingGOOGLE" ) );
- vkGetPerformanceParameterINTEL = PFN_vkGetPerformanceParameterINTEL( vkGetInstanceProcAddr( instance, "vkGetPerformanceParameterINTEL" ) );
- vkGetPipelineCacheData = PFN_vkGetPipelineCacheData( vkGetInstanceProcAddr( instance, "vkGetPipelineCacheData" ) );
- vkGetPipelineExecutableInternalRepresentationsKHR = PFN_vkGetPipelineExecutableInternalRepresentationsKHR( vkGetInstanceProcAddr( instance, "vkGetPipelineExecutableInternalRepresentationsKHR" ) );
- vkGetPipelineExecutablePropertiesKHR = PFN_vkGetPipelineExecutablePropertiesKHR( vkGetInstanceProcAddr( instance, "vkGetPipelineExecutablePropertiesKHR" ) );
- vkGetPipelineExecutableStatisticsKHR = PFN_vkGetPipelineExecutableStatisticsKHR( vkGetInstanceProcAddr( instance, "vkGetPipelineExecutableStatisticsKHR" ) );
- vkGetPrivateDataEXT = PFN_vkGetPrivateDataEXT( vkGetInstanceProcAddr( instance, "vkGetPrivateDataEXT" ) );
+#if defined( VK_USE_PLATFORM_FUCHSIA )
+ vkGetMemoryZirconHandleFUCHSIA =
+ PFN_vkGetMemoryZirconHandleFUCHSIA( vkGetInstanceProcAddr( instance, "vkGetMemoryZirconHandleFUCHSIA" ) );
+#endif /*VK_USE_PLATFORM_FUCHSIA*/
+#if defined( VK_USE_PLATFORM_FUCHSIA )
+ vkGetMemoryZirconHandlePropertiesFUCHSIA = PFN_vkGetMemoryZirconHandlePropertiesFUCHSIA(
+ vkGetInstanceProcAddr( instance, "vkGetMemoryZirconHandlePropertiesFUCHSIA" ) );
+#endif /*VK_USE_PLATFORM_FUCHSIA*/
+ vkGetPastPresentationTimingGOOGLE =
+ PFN_vkGetPastPresentationTimingGOOGLE( vkGetInstanceProcAddr( instance, "vkGetPastPresentationTimingGOOGLE" ) );
+ vkGetPerformanceParameterINTEL =
+ PFN_vkGetPerformanceParameterINTEL( vkGetInstanceProcAddr( instance, "vkGetPerformanceParameterINTEL" ) );
+ vkGetPipelineCacheData =
+ PFN_vkGetPipelineCacheData( vkGetInstanceProcAddr( instance, "vkGetPipelineCacheData" ) );
+ vkGetPipelineExecutableInternalRepresentationsKHR = PFN_vkGetPipelineExecutableInternalRepresentationsKHR(
+ vkGetInstanceProcAddr( instance, "vkGetPipelineExecutableInternalRepresentationsKHR" ) );
+ vkGetPipelineExecutablePropertiesKHR = PFN_vkGetPipelineExecutablePropertiesKHR(
+ vkGetInstanceProcAddr( instance, "vkGetPipelineExecutablePropertiesKHR" ) );
+ vkGetPipelineExecutableStatisticsKHR = PFN_vkGetPipelineExecutableStatisticsKHR(
+ vkGetInstanceProcAddr( instance, "vkGetPipelineExecutableStatisticsKHR" ) );
+ vkGetPrivateDataEXT = PFN_vkGetPrivateDataEXT( vkGetInstanceProcAddr( instance, "vkGetPrivateDataEXT" ) );
vkGetQueryPoolResults = PFN_vkGetQueryPoolResults( vkGetInstanceProcAddr( instance, "vkGetQueryPoolResults" ) );
- vkGetQueueCheckpointDataNV = PFN_vkGetQueueCheckpointDataNV( vkGetInstanceProcAddr( instance, "vkGetQueueCheckpointDataNV" ) );
- vkGetRayTracingCaptureReplayShaderGroupHandlesKHR = PFN_vkGetRayTracingCaptureReplayShaderGroupHandlesKHR( vkGetInstanceProcAddr( instance, "vkGetRayTracingCaptureReplayShaderGroupHandlesKHR" ) );
- vkGetRayTracingShaderGroupHandlesNV = PFN_vkGetRayTracingShaderGroupHandlesNV( vkGetInstanceProcAddr( instance, "vkGetRayTracingShaderGroupHandlesNV" ) );
- vkGetRayTracingShaderGroupHandlesKHR = PFN_vkGetRayTracingShaderGroupHandlesKHR( vkGetInstanceProcAddr( instance, "vkGetRayTracingShaderGroupHandlesKHR" ) );
- if ( !vkGetRayTracingShaderGroupHandlesKHR ) vkGetRayTracingShaderGroupHandlesKHR = vkGetRayTracingShaderGroupHandlesNV;
- vkGetRayTracingShaderGroupStackSizeKHR = PFN_vkGetRayTracingShaderGroupStackSizeKHR( vkGetInstanceProcAddr( instance, "vkGetRayTracingShaderGroupStackSizeKHR" ) );
- vkGetRefreshCycleDurationGOOGLE = PFN_vkGetRefreshCycleDurationGOOGLE( vkGetInstanceProcAddr( instance, "vkGetRefreshCycleDurationGOOGLE" ) );
- vkGetRenderAreaGranularity = PFN_vkGetRenderAreaGranularity( vkGetInstanceProcAddr( instance, "vkGetRenderAreaGranularity" ) );
- vkGetSemaphoreCounterValueKHR = PFN_vkGetSemaphoreCounterValueKHR( vkGetInstanceProcAddr( instance, "vkGetSemaphoreCounterValueKHR" ) );
- vkGetSemaphoreCounterValue = PFN_vkGetSemaphoreCounterValue( vkGetInstanceProcAddr( instance, "vkGetSemaphoreCounterValue" ) );
- if ( !vkGetSemaphoreCounterValue ) vkGetSemaphoreCounterValue = vkGetSemaphoreCounterValueKHR;
+ vkGetQueueCheckpointData2NV =
+ PFN_vkGetQueueCheckpointData2NV( vkGetInstanceProcAddr( instance, "vkGetQueueCheckpointData2NV" ) );
+ vkGetQueueCheckpointDataNV =
+ PFN_vkGetQueueCheckpointDataNV( vkGetInstanceProcAddr( instance, "vkGetQueueCheckpointDataNV" ) );
+ vkGetRayTracingCaptureReplayShaderGroupHandlesKHR = PFN_vkGetRayTracingCaptureReplayShaderGroupHandlesKHR(
+ vkGetInstanceProcAddr( instance, "vkGetRayTracingCaptureReplayShaderGroupHandlesKHR" ) );
+ vkGetRayTracingShaderGroupHandlesKHR = PFN_vkGetRayTracingShaderGroupHandlesKHR(
+ vkGetInstanceProcAddr( instance, "vkGetRayTracingShaderGroupHandlesKHR" ) );
+ vkGetRayTracingShaderGroupHandlesNV = PFN_vkGetRayTracingShaderGroupHandlesNV(
+ vkGetInstanceProcAddr( instance, "vkGetRayTracingShaderGroupHandlesNV" ) );
+ if ( !vkGetRayTracingShaderGroupHandlesKHR )
+ vkGetRayTracingShaderGroupHandlesKHR = vkGetRayTracingShaderGroupHandlesNV;
+ vkGetRayTracingShaderGroupStackSizeKHR = PFN_vkGetRayTracingShaderGroupStackSizeKHR(
+ vkGetInstanceProcAddr( instance, "vkGetRayTracingShaderGroupStackSizeKHR" ) );
+ vkGetRefreshCycleDurationGOOGLE =
+ PFN_vkGetRefreshCycleDurationGOOGLE( vkGetInstanceProcAddr( instance, "vkGetRefreshCycleDurationGOOGLE" ) );
+ vkGetRenderAreaGranularity =
+ PFN_vkGetRenderAreaGranularity( vkGetInstanceProcAddr( instance, "vkGetRenderAreaGranularity" ) );
+ vkGetSemaphoreCounterValue =
+ PFN_vkGetSemaphoreCounterValue( vkGetInstanceProcAddr( instance, "vkGetSemaphoreCounterValue" ) );
+ vkGetSemaphoreCounterValueKHR =
+ PFN_vkGetSemaphoreCounterValueKHR( vkGetInstanceProcAddr( instance, "vkGetSemaphoreCounterValueKHR" ) );
+ if ( !vkGetSemaphoreCounterValue )
+ vkGetSemaphoreCounterValue = vkGetSemaphoreCounterValueKHR;
vkGetSemaphoreFdKHR = PFN_vkGetSemaphoreFdKHR( vkGetInstanceProcAddr( instance, "vkGetSemaphoreFdKHR" ) );
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- vkGetSemaphoreWin32HandleKHR = PFN_vkGetSemaphoreWin32HandleKHR( vkGetInstanceProcAddr( instance, "vkGetSemaphoreWin32HandleKHR" ) );
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ vkGetSemaphoreWin32HandleKHR =
+ PFN_vkGetSemaphoreWin32HandleKHR( vkGetInstanceProcAddr( instance, "vkGetSemaphoreWin32HandleKHR" ) );
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+#if defined( VK_USE_PLATFORM_FUCHSIA )
+ vkGetSemaphoreZirconHandleFUCHSIA =
+ PFN_vkGetSemaphoreZirconHandleFUCHSIA( vkGetInstanceProcAddr( instance, "vkGetSemaphoreZirconHandleFUCHSIA" ) );
+#endif /*VK_USE_PLATFORM_FUCHSIA*/
vkGetShaderInfoAMD = PFN_vkGetShaderInfoAMD( vkGetInstanceProcAddr( instance, "vkGetShaderInfoAMD" ) );
- vkGetSwapchainCounterEXT = PFN_vkGetSwapchainCounterEXT( vkGetInstanceProcAddr( instance, "vkGetSwapchainCounterEXT" ) );
- vkGetSwapchainImagesKHR = PFN_vkGetSwapchainImagesKHR( vkGetInstanceProcAddr( instance, "vkGetSwapchainImagesKHR" ) );
- vkGetSwapchainStatusKHR = PFN_vkGetSwapchainStatusKHR( vkGetInstanceProcAddr( instance, "vkGetSwapchainStatusKHR" ) );
- vkGetValidationCacheDataEXT = PFN_vkGetValidationCacheDataEXT( vkGetInstanceProcAddr( instance, "vkGetValidationCacheDataEXT" ) );
+ vkGetSubpassShadingMaxWorkgroupSizeHUAWEI = PFN_vkGetSubpassShadingMaxWorkgroupSizeHUAWEI(
+ vkGetInstanceProcAddr( instance, "vkGetSubpassShadingMaxWorkgroupSizeHUAWEI" ) );
+ vkGetSwapchainCounterEXT =
+ PFN_vkGetSwapchainCounterEXT( vkGetInstanceProcAddr( instance, "vkGetSwapchainCounterEXT" ) );
+ vkGetSwapchainImagesKHR =
+ PFN_vkGetSwapchainImagesKHR( vkGetInstanceProcAddr( instance, "vkGetSwapchainImagesKHR" ) );
+ vkGetSwapchainStatusKHR =
+ PFN_vkGetSwapchainStatusKHR( vkGetInstanceProcAddr( instance, "vkGetSwapchainStatusKHR" ) );
+ vkGetValidationCacheDataEXT =
+ PFN_vkGetValidationCacheDataEXT( vkGetInstanceProcAddr( instance, "vkGetValidationCacheDataEXT" ) );
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ vkGetVideoSessionMemoryRequirementsKHR = PFN_vkGetVideoSessionMemoryRequirementsKHR(
+ vkGetInstanceProcAddr( instance, "vkGetVideoSessionMemoryRequirementsKHR" ) );
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
vkImportFenceFdKHR = PFN_vkImportFenceFdKHR( vkGetInstanceProcAddr( instance, "vkImportFenceFdKHR" ) );
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- vkImportFenceWin32HandleKHR = PFN_vkImportFenceWin32HandleKHR( vkGetInstanceProcAddr( instance, "vkImportFenceWin32HandleKHR" ) );
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ vkImportFenceWin32HandleKHR =
+ PFN_vkImportFenceWin32HandleKHR( vkGetInstanceProcAddr( instance, "vkImportFenceWin32HandleKHR" ) );
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
- vkImportSemaphoreFdKHR = PFN_vkImportSemaphoreFdKHR( vkGetInstanceProcAddr( instance, "vkImportSemaphoreFdKHR" ) );
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- vkImportSemaphoreWin32HandleKHR = PFN_vkImportSemaphoreWin32HandleKHR( vkGetInstanceProcAddr( instance, "vkImportSemaphoreWin32HandleKHR" ) );
+ vkImportSemaphoreFdKHR =
+ PFN_vkImportSemaphoreFdKHR( vkGetInstanceProcAddr( instance, "vkImportSemaphoreFdKHR" ) );
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ vkImportSemaphoreWin32HandleKHR =
+ PFN_vkImportSemaphoreWin32HandleKHR( vkGetInstanceProcAddr( instance, "vkImportSemaphoreWin32HandleKHR" ) );
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
- vkInitializePerformanceApiINTEL = PFN_vkInitializePerformanceApiINTEL( vkGetInstanceProcAddr( instance, "vkInitializePerformanceApiINTEL" ) );
- vkInvalidateMappedMemoryRanges = PFN_vkInvalidateMappedMemoryRanges( vkGetInstanceProcAddr( instance, "vkInvalidateMappedMemoryRanges" ) );
- vkMapMemory = PFN_vkMapMemory( vkGetInstanceProcAddr( instance, "vkMapMemory" ) );
+#if defined( VK_USE_PLATFORM_FUCHSIA )
+ vkImportSemaphoreZirconHandleFUCHSIA = PFN_vkImportSemaphoreZirconHandleFUCHSIA(
+ vkGetInstanceProcAddr( instance, "vkImportSemaphoreZirconHandleFUCHSIA" ) );
+#endif /*VK_USE_PLATFORM_FUCHSIA*/
+ vkInitializePerformanceApiINTEL =
+ PFN_vkInitializePerformanceApiINTEL( vkGetInstanceProcAddr( instance, "vkInitializePerformanceApiINTEL" ) );
+ vkInvalidateMappedMemoryRanges =
+ PFN_vkInvalidateMappedMemoryRanges( vkGetInstanceProcAddr( instance, "vkInvalidateMappedMemoryRanges" ) );
+ vkMapMemory = PFN_vkMapMemory( vkGetInstanceProcAddr( instance, "vkMapMemory" ) );
vkMergePipelineCaches = PFN_vkMergePipelineCaches( vkGetInstanceProcAddr( instance, "vkMergePipelineCaches" ) );
- vkMergeValidationCachesEXT = PFN_vkMergeValidationCachesEXT( vkGetInstanceProcAddr( instance, "vkMergeValidationCachesEXT" ) );
- vkQueueBeginDebugUtilsLabelEXT = PFN_vkQueueBeginDebugUtilsLabelEXT( vkGetInstanceProcAddr( instance, "vkQueueBeginDebugUtilsLabelEXT" ) );
+ vkMergeValidationCachesEXT =
+ PFN_vkMergeValidationCachesEXT( vkGetInstanceProcAddr( instance, "vkMergeValidationCachesEXT" ) );
+ vkQueueBeginDebugUtilsLabelEXT =
+ PFN_vkQueueBeginDebugUtilsLabelEXT( vkGetInstanceProcAddr( instance, "vkQueueBeginDebugUtilsLabelEXT" ) );
vkQueueBindSparse = PFN_vkQueueBindSparse( vkGetInstanceProcAddr( instance, "vkQueueBindSparse" ) );
- vkQueueEndDebugUtilsLabelEXT = PFN_vkQueueEndDebugUtilsLabelEXT( vkGetInstanceProcAddr( instance, "vkQueueEndDebugUtilsLabelEXT" ) );
- vkQueueInsertDebugUtilsLabelEXT = PFN_vkQueueInsertDebugUtilsLabelEXT( vkGetInstanceProcAddr( instance, "vkQueueInsertDebugUtilsLabelEXT" ) );
+ vkQueueEndDebugUtilsLabelEXT =
+ PFN_vkQueueEndDebugUtilsLabelEXT( vkGetInstanceProcAddr( instance, "vkQueueEndDebugUtilsLabelEXT" ) );
+ vkQueueInsertDebugUtilsLabelEXT =
+ PFN_vkQueueInsertDebugUtilsLabelEXT( vkGetInstanceProcAddr( instance, "vkQueueInsertDebugUtilsLabelEXT" ) );
vkQueuePresentKHR = PFN_vkQueuePresentKHR( vkGetInstanceProcAddr( instance, "vkQueuePresentKHR" ) );
- vkQueueSetPerformanceConfigurationINTEL = PFN_vkQueueSetPerformanceConfigurationINTEL( vkGetInstanceProcAddr( instance, "vkQueueSetPerformanceConfigurationINTEL" ) );
- vkQueueSubmit = PFN_vkQueueSubmit( vkGetInstanceProcAddr( instance, "vkQueueSubmit" ) );
- vkQueueWaitIdle = PFN_vkQueueWaitIdle( vkGetInstanceProcAddr( instance, "vkQueueWaitIdle" ) );
- vkRegisterDeviceEventEXT = PFN_vkRegisterDeviceEventEXT( vkGetInstanceProcAddr( instance, "vkRegisterDeviceEventEXT" ) );
- vkRegisterDisplayEventEXT = PFN_vkRegisterDisplayEventEXT( vkGetInstanceProcAddr( instance, "vkRegisterDisplayEventEXT" ) );
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- vkReleaseFullScreenExclusiveModeEXT = PFN_vkReleaseFullScreenExclusiveModeEXT( vkGetInstanceProcAddr( instance, "vkReleaseFullScreenExclusiveModeEXT" ) );
+ vkQueueSetPerformanceConfigurationINTEL = PFN_vkQueueSetPerformanceConfigurationINTEL(
+ vkGetInstanceProcAddr( instance, "vkQueueSetPerformanceConfigurationINTEL" ) );
+ vkQueueSubmit = PFN_vkQueueSubmit( vkGetInstanceProcAddr( instance, "vkQueueSubmit" ) );
+ vkQueueSubmit2KHR = PFN_vkQueueSubmit2KHR( vkGetInstanceProcAddr( instance, "vkQueueSubmit2KHR" ) );
+ vkQueueWaitIdle = PFN_vkQueueWaitIdle( vkGetInstanceProcAddr( instance, "vkQueueWaitIdle" ) );
+ vkRegisterDeviceEventEXT =
+ PFN_vkRegisterDeviceEventEXT( vkGetInstanceProcAddr( instance, "vkRegisterDeviceEventEXT" ) );
+ vkRegisterDisplayEventEXT =
+ PFN_vkRegisterDisplayEventEXT( vkGetInstanceProcAddr( instance, "vkRegisterDisplayEventEXT" ) );
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ vkReleaseFullScreenExclusiveModeEXT = PFN_vkReleaseFullScreenExclusiveModeEXT(
+ vkGetInstanceProcAddr( instance, "vkReleaseFullScreenExclusiveModeEXT" ) );
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
- vkReleasePerformanceConfigurationINTEL = PFN_vkReleasePerformanceConfigurationINTEL( vkGetInstanceProcAddr( instance, "vkReleasePerformanceConfigurationINTEL" ) );
- vkReleaseProfilingLockKHR = PFN_vkReleaseProfilingLockKHR( vkGetInstanceProcAddr( instance, "vkReleaseProfilingLockKHR" ) );
- vkResetCommandBuffer = PFN_vkResetCommandBuffer( vkGetInstanceProcAddr( instance, "vkResetCommandBuffer" ) );
- vkResetCommandPool = PFN_vkResetCommandPool( vkGetInstanceProcAddr( instance, "vkResetCommandPool" ) );
+ vkReleasePerformanceConfigurationINTEL = PFN_vkReleasePerformanceConfigurationINTEL(
+ vkGetInstanceProcAddr( instance, "vkReleasePerformanceConfigurationINTEL" ) );
+ vkReleaseProfilingLockKHR =
+ PFN_vkReleaseProfilingLockKHR( vkGetInstanceProcAddr( instance, "vkReleaseProfilingLockKHR" ) );
+ vkResetCommandBuffer = PFN_vkResetCommandBuffer( vkGetInstanceProcAddr( instance, "vkResetCommandBuffer" ) );
+ vkResetCommandPool = PFN_vkResetCommandPool( vkGetInstanceProcAddr( instance, "vkResetCommandPool" ) );
vkResetDescriptorPool = PFN_vkResetDescriptorPool( vkGetInstanceProcAddr( instance, "vkResetDescriptorPool" ) );
- vkResetEvent = PFN_vkResetEvent( vkGetInstanceProcAddr( instance, "vkResetEvent" ) );
- vkResetFences = PFN_vkResetFences( vkGetInstanceProcAddr( instance, "vkResetFences" ) );
- vkResetQueryPoolEXT = PFN_vkResetQueryPoolEXT( vkGetInstanceProcAddr( instance, "vkResetQueryPoolEXT" ) );
- vkResetQueryPool = PFN_vkResetQueryPool( vkGetInstanceProcAddr( instance, "vkResetQueryPool" ) );
- if ( !vkResetQueryPool ) vkResetQueryPool = vkResetQueryPoolEXT;
- vkSetDebugUtilsObjectNameEXT = PFN_vkSetDebugUtilsObjectNameEXT( vkGetInstanceProcAddr( instance, "vkSetDebugUtilsObjectNameEXT" ) );
- vkSetDebugUtilsObjectTagEXT = PFN_vkSetDebugUtilsObjectTagEXT( vkGetInstanceProcAddr( instance, "vkSetDebugUtilsObjectTagEXT" ) );
- vkSetEvent = PFN_vkSetEvent( vkGetInstanceProcAddr( instance, "vkSetEvent" ) );
- vkSetHdrMetadataEXT = PFN_vkSetHdrMetadataEXT( vkGetInstanceProcAddr( instance, "vkSetHdrMetadataEXT" ) );
+ vkResetEvent = PFN_vkResetEvent( vkGetInstanceProcAddr( instance, "vkResetEvent" ) );
+ vkResetFences = PFN_vkResetFences( vkGetInstanceProcAddr( instance, "vkResetFences" ) );
+ vkResetQueryPool = PFN_vkResetQueryPool( vkGetInstanceProcAddr( instance, "vkResetQueryPool" ) );
+ vkResetQueryPoolEXT = PFN_vkResetQueryPoolEXT( vkGetInstanceProcAddr( instance, "vkResetQueryPoolEXT" ) );
+ if ( !vkResetQueryPool )
+ vkResetQueryPool = vkResetQueryPoolEXT;
+ vkSetDebugUtilsObjectNameEXT =
+ PFN_vkSetDebugUtilsObjectNameEXT( vkGetInstanceProcAddr( instance, "vkSetDebugUtilsObjectNameEXT" ) );
+ vkSetDebugUtilsObjectTagEXT =
+ PFN_vkSetDebugUtilsObjectTagEXT( vkGetInstanceProcAddr( instance, "vkSetDebugUtilsObjectTagEXT" ) );
+ vkSetEvent = PFN_vkSetEvent( vkGetInstanceProcAddr( instance, "vkSetEvent" ) );
+ vkSetHdrMetadataEXT = PFN_vkSetHdrMetadataEXT( vkGetInstanceProcAddr( instance, "vkSetHdrMetadataEXT" ) );
vkSetLocalDimmingAMD = PFN_vkSetLocalDimmingAMD( vkGetInstanceProcAddr( instance, "vkSetLocalDimmingAMD" ) );
- vkSetPrivateDataEXT = PFN_vkSetPrivateDataEXT( vkGetInstanceProcAddr( instance, "vkSetPrivateDataEXT" ) );
+ vkSetPrivateDataEXT = PFN_vkSetPrivateDataEXT( vkGetInstanceProcAddr( instance, "vkSetPrivateDataEXT" ) );
+ vkSignalSemaphore = PFN_vkSignalSemaphore( vkGetInstanceProcAddr( instance, "vkSignalSemaphore" ) );
vkSignalSemaphoreKHR = PFN_vkSignalSemaphoreKHR( vkGetInstanceProcAddr( instance, "vkSignalSemaphoreKHR" ) );
- vkSignalSemaphore = PFN_vkSignalSemaphore( vkGetInstanceProcAddr( instance, "vkSignalSemaphore" ) );
- if ( !vkSignalSemaphore ) vkSignalSemaphore = vkSignalSemaphoreKHR;
+ if ( !vkSignalSemaphore )
+ vkSignalSemaphore = vkSignalSemaphoreKHR;
+ vkTrimCommandPool = PFN_vkTrimCommandPool( vkGetInstanceProcAddr( instance, "vkTrimCommandPool" ) );
vkTrimCommandPoolKHR = PFN_vkTrimCommandPoolKHR( vkGetInstanceProcAddr( instance, "vkTrimCommandPoolKHR" ) );
- vkTrimCommandPool = PFN_vkTrimCommandPool( vkGetInstanceProcAddr( instance, "vkTrimCommandPool" ) );
- if ( !vkTrimCommandPool ) vkTrimCommandPool = vkTrimCommandPoolKHR;
- vkUninitializePerformanceApiINTEL = PFN_vkUninitializePerformanceApiINTEL( vkGetInstanceProcAddr( instance, "vkUninitializePerformanceApiINTEL" ) );
+ if ( !vkTrimCommandPool )
+ vkTrimCommandPool = vkTrimCommandPoolKHR;
+ vkUninitializePerformanceApiINTEL =
+ PFN_vkUninitializePerformanceApiINTEL( vkGetInstanceProcAddr( instance, "vkUninitializePerformanceApiINTEL" ) );
vkUnmapMemory = PFN_vkUnmapMemory( vkGetInstanceProcAddr( instance, "vkUnmapMemory" ) );
- vkUpdateDescriptorSetWithTemplateKHR = PFN_vkUpdateDescriptorSetWithTemplateKHR( vkGetInstanceProcAddr( instance, "vkUpdateDescriptorSetWithTemplateKHR" ) );
- vkUpdateDescriptorSetWithTemplate = PFN_vkUpdateDescriptorSetWithTemplate( vkGetInstanceProcAddr( instance, "vkUpdateDescriptorSetWithTemplate" ) );
- if ( !vkUpdateDescriptorSetWithTemplate ) vkUpdateDescriptorSetWithTemplate = vkUpdateDescriptorSetWithTemplateKHR;
- vkUpdateDescriptorSets = PFN_vkUpdateDescriptorSets( vkGetInstanceProcAddr( instance, "vkUpdateDescriptorSets" ) );
- vkWaitForFences = PFN_vkWaitForFences( vkGetInstanceProcAddr( instance, "vkWaitForFences" ) );
+ vkUpdateDescriptorSetWithTemplate =
+ PFN_vkUpdateDescriptorSetWithTemplate( vkGetInstanceProcAddr( instance, "vkUpdateDescriptorSetWithTemplate" ) );
+ vkUpdateDescriptorSetWithTemplateKHR = PFN_vkUpdateDescriptorSetWithTemplateKHR(
+ vkGetInstanceProcAddr( instance, "vkUpdateDescriptorSetWithTemplateKHR" ) );
+ if ( !vkUpdateDescriptorSetWithTemplate )
+ vkUpdateDescriptorSetWithTemplate = vkUpdateDescriptorSetWithTemplateKHR;
+ vkUpdateDescriptorSets =
+ PFN_vkUpdateDescriptorSets( vkGetInstanceProcAddr( instance, "vkUpdateDescriptorSets" ) );
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ vkUpdateVideoSessionParametersKHR =
+ PFN_vkUpdateVideoSessionParametersKHR( vkGetInstanceProcAddr( instance, "vkUpdateVideoSessionParametersKHR" ) );
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ vkWaitForFences = PFN_vkWaitForFences( vkGetInstanceProcAddr( instance, "vkWaitForFences" ) );
+ vkWaitSemaphores = PFN_vkWaitSemaphores( vkGetInstanceProcAddr( instance, "vkWaitSemaphores" ) );
vkWaitSemaphoresKHR = PFN_vkWaitSemaphoresKHR( vkGetInstanceProcAddr( instance, "vkWaitSemaphoresKHR" ) );
- vkWaitSemaphores = PFN_vkWaitSemaphores( vkGetInstanceProcAddr( instance, "vkWaitSemaphores" ) );
- if ( !vkWaitSemaphores ) vkWaitSemaphores = vkWaitSemaphoresKHR;
- vkWriteAccelerationStructuresPropertiesKHR = PFN_vkWriteAccelerationStructuresPropertiesKHR( vkGetInstanceProcAddr( instance, "vkWriteAccelerationStructuresPropertiesKHR" ) );
+ if ( !vkWaitSemaphores )
+ vkWaitSemaphores = vkWaitSemaphoresKHR;
+ vkWriteAccelerationStructuresPropertiesKHR = PFN_vkWriteAccelerationStructuresPropertiesKHR(
+ vkGetInstanceProcAddr( instance, "vkWriteAccelerationStructuresPropertiesKHR" ) );
}
void init( VULKAN_HPP_NAMESPACE::Device deviceCpp ) VULKAN_HPP_NOEXCEPT
{
- VkDevice device = static_cast<VkDevice>(deviceCpp);
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- vkAcquireFullScreenExclusiveModeEXT = PFN_vkAcquireFullScreenExclusiveModeEXT( vkGetDeviceProcAddr( device, "vkAcquireFullScreenExclusiveModeEXT" ) );
+ VkDevice device = static_cast<VkDevice>( deviceCpp );
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ vkAcquireFullScreenExclusiveModeEXT =
+ PFN_vkAcquireFullScreenExclusiveModeEXT( vkGetDeviceProcAddr( device, "vkAcquireFullScreenExclusiveModeEXT" ) );
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
vkAcquireNextImage2KHR = PFN_vkAcquireNextImage2KHR( vkGetDeviceProcAddr( device, "vkAcquireNextImage2KHR" ) );
- vkAcquireNextImageKHR = PFN_vkAcquireNextImageKHR( vkGetDeviceProcAddr( device, "vkAcquireNextImageKHR" ) );
- vkAcquirePerformanceConfigurationINTEL = PFN_vkAcquirePerformanceConfigurationINTEL( vkGetDeviceProcAddr( device, "vkAcquirePerformanceConfigurationINTEL" ) );
- vkAcquireProfilingLockKHR = PFN_vkAcquireProfilingLockKHR( vkGetDeviceProcAddr( device, "vkAcquireProfilingLockKHR" ) );
- vkAllocateCommandBuffers = PFN_vkAllocateCommandBuffers( vkGetDeviceProcAddr( device, "vkAllocateCommandBuffers" ) );
- vkAllocateDescriptorSets = PFN_vkAllocateDescriptorSets( vkGetDeviceProcAddr( device, "vkAllocateDescriptorSets" ) );
- vkAllocateMemory = PFN_vkAllocateMemory( vkGetDeviceProcAddr( device, "vkAllocateMemory" ) );
+ vkAcquireNextImageKHR = PFN_vkAcquireNextImageKHR( vkGetDeviceProcAddr( device, "vkAcquireNextImageKHR" ) );
+ vkAcquirePerformanceConfigurationINTEL = PFN_vkAcquirePerformanceConfigurationINTEL(
+ vkGetDeviceProcAddr( device, "vkAcquirePerformanceConfigurationINTEL" ) );
+ vkAcquireProfilingLockKHR =
+ PFN_vkAcquireProfilingLockKHR( vkGetDeviceProcAddr( device, "vkAcquireProfilingLockKHR" ) );
+ vkAllocateCommandBuffers =
+ PFN_vkAllocateCommandBuffers( vkGetDeviceProcAddr( device, "vkAllocateCommandBuffers" ) );
+ vkAllocateDescriptorSets =
+ PFN_vkAllocateDescriptorSets( vkGetDeviceProcAddr( device, "vkAllocateDescriptorSets" ) );
+ vkAllocateMemory = PFN_vkAllocateMemory( vkGetDeviceProcAddr( device, "vkAllocateMemory" ) );
vkBeginCommandBuffer = PFN_vkBeginCommandBuffer( vkGetDeviceProcAddr( device, "vkBeginCommandBuffer" ) );
- vkBindAccelerationStructureMemoryNV = PFN_vkBindAccelerationStructureMemoryNV( vkGetDeviceProcAddr( device, "vkBindAccelerationStructureMemoryNV" ) );
- vkBindBufferMemory = PFN_vkBindBufferMemory( vkGetDeviceProcAddr( device, "vkBindBufferMemory" ) );
+ vkBindAccelerationStructureMemoryNV =
+ PFN_vkBindAccelerationStructureMemoryNV( vkGetDeviceProcAddr( device, "vkBindAccelerationStructureMemoryNV" ) );
+ vkBindBufferMemory = PFN_vkBindBufferMemory( vkGetDeviceProcAddr( device, "vkBindBufferMemory" ) );
+ vkBindBufferMemory2 = PFN_vkBindBufferMemory2( vkGetDeviceProcAddr( device, "vkBindBufferMemory2" ) );
vkBindBufferMemory2KHR = PFN_vkBindBufferMemory2KHR( vkGetDeviceProcAddr( device, "vkBindBufferMemory2KHR" ) );
- vkBindBufferMemory2 = PFN_vkBindBufferMemory2( vkGetDeviceProcAddr( device, "vkBindBufferMemory2" ) );
- if ( !vkBindBufferMemory2 ) vkBindBufferMemory2 = vkBindBufferMemory2KHR;
- vkBindImageMemory = PFN_vkBindImageMemory( vkGetDeviceProcAddr( device, "vkBindImageMemory" ) );
+ if ( !vkBindBufferMemory2 )
+ vkBindBufferMemory2 = vkBindBufferMemory2KHR;
+ vkBindImageMemory = PFN_vkBindImageMemory( vkGetDeviceProcAddr( device, "vkBindImageMemory" ) );
+ vkBindImageMemory2 = PFN_vkBindImageMemory2( vkGetDeviceProcAddr( device, "vkBindImageMemory2" ) );
vkBindImageMemory2KHR = PFN_vkBindImageMemory2KHR( vkGetDeviceProcAddr( device, "vkBindImageMemory2KHR" ) );
- vkBindImageMemory2 = PFN_vkBindImageMemory2( vkGetDeviceProcAddr( device, "vkBindImageMemory2" ) );
- if ( !vkBindImageMemory2 ) vkBindImageMemory2 = vkBindImageMemory2KHR;
- vkBuildAccelerationStructuresKHR = PFN_vkBuildAccelerationStructuresKHR( vkGetDeviceProcAddr( device, "vkBuildAccelerationStructuresKHR" ) );
- vkCmdBeginConditionalRenderingEXT = PFN_vkCmdBeginConditionalRenderingEXT( vkGetDeviceProcAddr( device, "vkCmdBeginConditionalRenderingEXT" ) );
- vkCmdBeginDebugUtilsLabelEXT = PFN_vkCmdBeginDebugUtilsLabelEXT( vkGetDeviceProcAddr( device, "vkCmdBeginDebugUtilsLabelEXT" ) );
+ if ( !vkBindImageMemory2 )
+ vkBindImageMemory2 = vkBindImageMemory2KHR;
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ vkBindVideoSessionMemoryKHR =
+ PFN_vkBindVideoSessionMemoryKHR( vkGetDeviceProcAddr( device, "vkBindVideoSessionMemoryKHR" ) );
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ vkBuildAccelerationStructuresKHR =
+ PFN_vkBuildAccelerationStructuresKHR( vkGetDeviceProcAddr( device, "vkBuildAccelerationStructuresKHR" ) );
+ vkCmdBeginConditionalRenderingEXT =
+ PFN_vkCmdBeginConditionalRenderingEXT( vkGetDeviceProcAddr( device, "vkCmdBeginConditionalRenderingEXT" ) );
+ vkCmdBeginDebugUtilsLabelEXT =
+ PFN_vkCmdBeginDebugUtilsLabelEXT( vkGetDeviceProcAddr( device, "vkCmdBeginDebugUtilsLabelEXT" ) );
vkCmdBeginQuery = PFN_vkCmdBeginQuery( vkGetDeviceProcAddr( device, "vkCmdBeginQuery" ) );
- vkCmdBeginQueryIndexedEXT = PFN_vkCmdBeginQueryIndexedEXT( vkGetDeviceProcAddr( device, "vkCmdBeginQueryIndexedEXT" ) );
- vkCmdBeginRenderPass = PFN_vkCmdBeginRenderPass( vkGetDeviceProcAddr( device, "vkCmdBeginRenderPass" ) );
- vkCmdBeginRenderPass2KHR = PFN_vkCmdBeginRenderPass2KHR( vkGetDeviceProcAddr( device, "vkCmdBeginRenderPass2KHR" ) );
+ vkCmdBeginQueryIndexedEXT =
+ PFN_vkCmdBeginQueryIndexedEXT( vkGetDeviceProcAddr( device, "vkCmdBeginQueryIndexedEXT" ) );
+ vkCmdBeginRenderPass = PFN_vkCmdBeginRenderPass( vkGetDeviceProcAddr( device, "vkCmdBeginRenderPass" ) );
vkCmdBeginRenderPass2 = PFN_vkCmdBeginRenderPass2( vkGetDeviceProcAddr( device, "vkCmdBeginRenderPass2" ) );
- if ( !vkCmdBeginRenderPass2 ) vkCmdBeginRenderPass2 = vkCmdBeginRenderPass2KHR;
- vkCmdBeginTransformFeedbackEXT = PFN_vkCmdBeginTransformFeedbackEXT( vkGetDeviceProcAddr( device, "vkCmdBeginTransformFeedbackEXT" ) );
+ vkCmdBeginRenderPass2KHR =
+ PFN_vkCmdBeginRenderPass2KHR( vkGetDeviceProcAddr( device, "vkCmdBeginRenderPass2KHR" ) );
+ if ( !vkCmdBeginRenderPass2 )
+ vkCmdBeginRenderPass2 = vkCmdBeginRenderPass2KHR;
+ vkCmdBeginTransformFeedbackEXT =
+ PFN_vkCmdBeginTransformFeedbackEXT( vkGetDeviceProcAddr( device, "vkCmdBeginTransformFeedbackEXT" ) );
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ vkCmdBeginVideoCodingKHR =
+ PFN_vkCmdBeginVideoCodingKHR( vkGetDeviceProcAddr( device, "vkCmdBeginVideoCodingKHR" ) );
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
vkCmdBindDescriptorSets = PFN_vkCmdBindDescriptorSets( vkGetDeviceProcAddr( device, "vkCmdBindDescriptorSets" ) );
- vkCmdBindIndexBuffer = PFN_vkCmdBindIndexBuffer( vkGetDeviceProcAddr( device, "vkCmdBindIndexBuffer" ) );
- vkCmdBindPipeline = PFN_vkCmdBindPipeline( vkGetDeviceProcAddr( device, "vkCmdBindPipeline" ) );
- vkCmdBindPipelineShaderGroupNV = PFN_vkCmdBindPipelineShaderGroupNV( vkGetDeviceProcAddr( device, "vkCmdBindPipelineShaderGroupNV" ) );
- vkCmdBindShadingRateImageNV = PFN_vkCmdBindShadingRateImageNV( vkGetDeviceProcAddr( device, "vkCmdBindShadingRateImageNV" ) );
- vkCmdBindTransformFeedbackBuffersEXT = PFN_vkCmdBindTransformFeedbackBuffersEXT( vkGetDeviceProcAddr( device, "vkCmdBindTransformFeedbackBuffersEXT" ) );
+ vkCmdBindIndexBuffer = PFN_vkCmdBindIndexBuffer( vkGetDeviceProcAddr( device, "vkCmdBindIndexBuffer" ) );
+ vkCmdBindPipeline = PFN_vkCmdBindPipeline( vkGetDeviceProcAddr( device, "vkCmdBindPipeline" ) );
+ vkCmdBindPipelineShaderGroupNV =
+ PFN_vkCmdBindPipelineShaderGroupNV( vkGetDeviceProcAddr( device, "vkCmdBindPipelineShaderGroupNV" ) );
+ vkCmdBindShadingRateImageNV =
+ PFN_vkCmdBindShadingRateImageNV( vkGetDeviceProcAddr( device, "vkCmdBindShadingRateImageNV" ) );
+ vkCmdBindTransformFeedbackBuffersEXT = PFN_vkCmdBindTransformFeedbackBuffersEXT(
+ vkGetDeviceProcAddr( device, "vkCmdBindTransformFeedbackBuffersEXT" ) );
vkCmdBindVertexBuffers = PFN_vkCmdBindVertexBuffers( vkGetDeviceProcAddr( device, "vkCmdBindVertexBuffers" ) );
- vkCmdBindVertexBuffers2EXT = PFN_vkCmdBindVertexBuffers2EXT( vkGetDeviceProcAddr( device, "vkCmdBindVertexBuffers2EXT" ) );
- vkCmdBlitImage = PFN_vkCmdBlitImage( vkGetDeviceProcAddr( device, "vkCmdBlitImage" ) );
+ vkCmdBindVertexBuffers2EXT =
+ PFN_vkCmdBindVertexBuffers2EXT( vkGetDeviceProcAddr( device, "vkCmdBindVertexBuffers2EXT" ) );
+ vkCmdBlitImage = PFN_vkCmdBlitImage( vkGetDeviceProcAddr( device, "vkCmdBlitImage" ) );
vkCmdBlitImage2KHR = PFN_vkCmdBlitImage2KHR( vkGetDeviceProcAddr( device, "vkCmdBlitImage2KHR" ) );
- vkCmdBuildAccelerationStructureNV = PFN_vkCmdBuildAccelerationStructureNV( vkGetDeviceProcAddr( device, "vkCmdBuildAccelerationStructureNV" ) );
- vkCmdBuildAccelerationStructuresIndirectKHR = PFN_vkCmdBuildAccelerationStructuresIndirectKHR( vkGetDeviceProcAddr( device, "vkCmdBuildAccelerationStructuresIndirectKHR" ) );
- vkCmdBuildAccelerationStructuresKHR = PFN_vkCmdBuildAccelerationStructuresKHR( vkGetDeviceProcAddr( device, "vkCmdBuildAccelerationStructuresKHR" ) );
+ vkCmdBuildAccelerationStructureNV =
+ PFN_vkCmdBuildAccelerationStructureNV( vkGetDeviceProcAddr( device, "vkCmdBuildAccelerationStructureNV" ) );
+ vkCmdBuildAccelerationStructuresIndirectKHR = PFN_vkCmdBuildAccelerationStructuresIndirectKHR(
+ vkGetDeviceProcAddr( device, "vkCmdBuildAccelerationStructuresIndirectKHR" ) );
+ vkCmdBuildAccelerationStructuresKHR =
+ PFN_vkCmdBuildAccelerationStructuresKHR( vkGetDeviceProcAddr( device, "vkCmdBuildAccelerationStructuresKHR" ) );
vkCmdClearAttachments = PFN_vkCmdClearAttachments( vkGetDeviceProcAddr( device, "vkCmdClearAttachments" ) );
- vkCmdClearColorImage = PFN_vkCmdClearColorImage( vkGetDeviceProcAddr( device, "vkCmdClearColorImage" ) );
- vkCmdClearDepthStencilImage = PFN_vkCmdClearDepthStencilImage( vkGetDeviceProcAddr( device, "vkCmdClearDepthStencilImage" ) );
- vkCmdCopyAccelerationStructureKHR = PFN_vkCmdCopyAccelerationStructureKHR( vkGetDeviceProcAddr( device, "vkCmdCopyAccelerationStructureKHR" ) );
- vkCmdCopyAccelerationStructureNV = PFN_vkCmdCopyAccelerationStructureNV( vkGetDeviceProcAddr( device, "vkCmdCopyAccelerationStructureNV" ) );
- vkCmdCopyAccelerationStructureToMemoryKHR = PFN_vkCmdCopyAccelerationStructureToMemoryKHR( vkGetDeviceProcAddr( device, "vkCmdCopyAccelerationStructureToMemoryKHR" ) );
- vkCmdCopyBuffer = PFN_vkCmdCopyBuffer( vkGetDeviceProcAddr( device, "vkCmdCopyBuffer" ) );
- vkCmdCopyBuffer2KHR = PFN_vkCmdCopyBuffer2KHR( vkGetDeviceProcAddr( device, "vkCmdCopyBuffer2KHR" ) );
+ vkCmdClearColorImage = PFN_vkCmdClearColorImage( vkGetDeviceProcAddr( device, "vkCmdClearColorImage" ) );
+ vkCmdClearDepthStencilImage =
+ PFN_vkCmdClearDepthStencilImage( vkGetDeviceProcAddr( device, "vkCmdClearDepthStencilImage" ) );
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ vkCmdControlVideoCodingKHR =
+ PFN_vkCmdControlVideoCodingKHR( vkGetDeviceProcAddr( device, "vkCmdControlVideoCodingKHR" ) );
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ vkCmdCopyAccelerationStructureKHR =
+ PFN_vkCmdCopyAccelerationStructureKHR( vkGetDeviceProcAddr( device, "vkCmdCopyAccelerationStructureKHR" ) );
+ vkCmdCopyAccelerationStructureNV =
+ PFN_vkCmdCopyAccelerationStructureNV( vkGetDeviceProcAddr( device, "vkCmdCopyAccelerationStructureNV" ) );
+ vkCmdCopyAccelerationStructureToMemoryKHR = PFN_vkCmdCopyAccelerationStructureToMemoryKHR(
+ vkGetDeviceProcAddr( device, "vkCmdCopyAccelerationStructureToMemoryKHR" ) );
+ vkCmdCopyBuffer = PFN_vkCmdCopyBuffer( vkGetDeviceProcAddr( device, "vkCmdCopyBuffer" ) );
+ vkCmdCopyBuffer2KHR = PFN_vkCmdCopyBuffer2KHR( vkGetDeviceProcAddr( device, "vkCmdCopyBuffer2KHR" ) );
vkCmdCopyBufferToImage = PFN_vkCmdCopyBufferToImage( vkGetDeviceProcAddr( device, "vkCmdCopyBufferToImage" ) );
- vkCmdCopyBufferToImage2KHR = PFN_vkCmdCopyBufferToImage2KHR( vkGetDeviceProcAddr( device, "vkCmdCopyBufferToImage2KHR" ) );
- vkCmdCopyImage = PFN_vkCmdCopyImage( vkGetDeviceProcAddr( device, "vkCmdCopyImage" ) );
- vkCmdCopyImage2KHR = PFN_vkCmdCopyImage2KHR( vkGetDeviceProcAddr( device, "vkCmdCopyImage2KHR" ) );
+ vkCmdCopyBufferToImage2KHR =
+ PFN_vkCmdCopyBufferToImage2KHR( vkGetDeviceProcAddr( device, "vkCmdCopyBufferToImage2KHR" ) );
+ vkCmdCopyImage = PFN_vkCmdCopyImage( vkGetDeviceProcAddr( device, "vkCmdCopyImage" ) );
+ vkCmdCopyImage2KHR = PFN_vkCmdCopyImage2KHR( vkGetDeviceProcAddr( device, "vkCmdCopyImage2KHR" ) );
vkCmdCopyImageToBuffer = PFN_vkCmdCopyImageToBuffer( vkGetDeviceProcAddr( device, "vkCmdCopyImageToBuffer" ) );
- vkCmdCopyImageToBuffer2KHR = PFN_vkCmdCopyImageToBuffer2KHR( vkGetDeviceProcAddr( device, "vkCmdCopyImageToBuffer2KHR" ) );
- vkCmdCopyMemoryToAccelerationStructureKHR = PFN_vkCmdCopyMemoryToAccelerationStructureKHR( vkGetDeviceProcAddr( device, "vkCmdCopyMemoryToAccelerationStructureKHR" ) );
- vkCmdCopyQueryPoolResults = PFN_vkCmdCopyQueryPoolResults( vkGetDeviceProcAddr( device, "vkCmdCopyQueryPoolResults" ) );
- vkCmdDebugMarkerBeginEXT = PFN_vkCmdDebugMarkerBeginEXT( vkGetDeviceProcAddr( device, "vkCmdDebugMarkerBeginEXT" ) );
+ vkCmdCopyImageToBuffer2KHR =
+ PFN_vkCmdCopyImageToBuffer2KHR( vkGetDeviceProcAddr( device, "vkCmdCopyImageToBuffer2KHR" ) );
+ vkCmdCopyMemoryToAccelerationStructureKHR = PFN_vkCmdCopyMemoryToAccelerationStructureKHR(
+ vkGetDeviceProcAddr( device, "vkCmdCopyMemoryToAccelerationStructureKHR" ) );
+ vkCmdCopyQueryPoolResults =
+ PFN_vkCmdCopyQueryPoolResults( vkGetDeviceProcAddr( device, "vkCmdCopyQueryPoolResults" ) );
+ vkCmdCuLaunchKernelNVX = PFN_vkCmdCuLaunchKernelNVX( vkGetDeviceProcAddr( device, "vkCmdCuLaunchKernelNVX" ) );
+ vkCmdDebugMarkerBeginEXT =
+ PFN_vkCmdDebugMarkerBeginEXT( vkGetDeviceProcAddr( device, "vkCmdDebugMarkerBeginEXT" ) );
vkCmdDebugMarkerEndEXT = PFN_vkCmdDebugMarkerEndEXT( vkGetDeviceProcAddr( device, "vkCmdDebugMarkerEndEXT" ) );
- vkCmdDebugMarkerInsertEXT = PFN_vkCmdDebugMarkerInsertEXT( vkGetDeviceProcAddr( device, "vkCmdDebugMarkerInsertEXT" ) );
- vkCmdDispatch = PFN_vkCmdDispatch( vkGetDeviceProcAddr( device, "vkCmdDispatch" ) );
+ vkCmdDebugMarkerInsertEXT =
+ PFN_vkCmdDebugMarkerInsertEXT( vkGetDeviceProcAddr( device, "vkCmdDebugMarkerInsertEXT" ) );
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ vkCmdDecodeVideoKHR = PFN_vkCmdDecodeVideoKHR( vkGetDeviceProcAddr( device, "vkCmdDecodeVideoKHR" ) );
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ vkCmdDispatch = PFN_vkCmdDispatch( vkGetDeviceProcAddr( device, "vkCmdDispatch" ) );
+ vkCmdDispatchBase = PFN_vkCmdDispatchBase( vkGetDeviceProcAddr( device, "vkCmdDispatchBase" ) );
vkCmdDispatchBaseKHR = PFN_vkCmdDispatchBaseKHR( vkGetDeviceProcAddr( device, "vkCmdDispatchBaseKHR" ) );
- vkCmdDispatchBase = PFN_vkCmdDispatchBase( vkGetDeviceProcAddr( device, "vkCmdDispatchBase" ) );
- if ( !vkCmdDispatchBase ) vkCmdDispatchBase = vkCmdDispatchBaseKHR;
+ if ( !vkCmdDispatchBase )
+ vkCmdDispatchBase = vkCmdDispatchBaseKHR;
vkCmdDispatchIndirect = PFN_vkCmdDispatchIndirect( vkGetDeviceProcAddr( device, "vkCmdDispatchIndirect" ) );
- vkCmdDraw = PFN_vkCmdDraw( vkGetDeviceProcAddr( device, "vkCmdDraw" ) );
- vkCmdDrawIndexed = PFN_vkCmdDrawIndexed( vkGetDeviceProcAddr( device, "vkCmdDrawIndexed" ) );
- vkCmdDrawIndexedIndirect = PFN_vkCmdDrawIndexedIndirect( vkGetDeviceProcAddr( device, "vkCmdDrawIndexedIndirect" ) );
- vkCmdDrawIndexedIndirectCountAMD = PFN_vkCmdDrawIndexedIndirectCountAMD( vkGetDeviceProcAddr( device, "vkCmdDrawIndexedIndirectCountAMD" ) );
- vkCmdDrawIndexedIndirectCountKHR = PFN_vkCmdDrawIndexedIndirectCountKHR( vkGetDeviceProcAddr( device, "vkCmdDrawIndexedIndirectCountKHR" ) );
- vkCmdDrawIndexedIndirectCount = PFN_vkCmdDrawIndexedIndirectCount( vkGetDeviceProcAddr( device, "vkCmdDrawIndexedIndirectCount" ) );
- if ( !vkCmdDrawIndexedIndirectCount ) vkCmdDrawIndexedIndirectCount = vkCmdDrawIndexedIndirectCountKHR;
- if ( !vkCmdDrawIndexedIndirectCount ) vkCmdDrawIndexedIndirectCount = vkCmdDrawIndexedIndirectCountAMD;
+ vkCmdDraw = PFN_vkCmdDraw( vkGetDeviceProcAddr( device, "vkCmdDraw" ) );
+ vkCmdDrawIndexed = PFN_vkCmdDrawIndexed( vkGetDeviceProcAddr( device, "vkCmdDrawIndexed" ) );
+ vkCmdDrawIndexedIndirect =
+ PFN_vkCmdDrawIndexedIndirect( vkGetDeviceProcAddr( device, "vkCmdDrawIndexedIndirect" ) );
+ vkCmdDrawIndexedIndirectCount =
+ PFN_vkCmdDrawIndexedIndirectCount( vkGetDeviceProcAddr( device, "vkCmdDrawIndexedIndirectCount" ) );
+ vkCmdDrawIndexedIndirectCountAMD =
+ PFN_vkCmdDrawIndexedIndirectCountAMD( vkGetDeviceProcAddr( device, "vkCmdDrawIndexedIndirectCountAMD" ) );
+ if ( !vkCmdDrawIndexedIndirectCount )
+ vkCmdDrawIndexedIndirectCount = vkCmdDrawIndexedIndirectCountAMD;
+ vkCmdDrawIndexedIndirectCountKHR =
+ PFN_vkCmdDrawIndexedIndirectCountKHR( vkGetDeviceProcAddr( device, "vkCmdDrawIndexedIndirectCountKHR" ) );
+ if ( !vkCmdDrawIndexedIndirectCount )
+ vkCmdDrawIndexedIndirectCount = vkCmdDrawIndexedIndirectCountKHR;
vkCmdDrawIndirect = PFN_vkCmdDrawIndirect( vkGetDeviceProcAddr( device, "vkCmdDrawIndirect" ) );
- vkCmdDrawIndirectByteCountEXT = PFN_vkCmdDrawIndirectByteCountEXT( vkGetDeviceProcAddr( device, "vkCmdDrawIndirectByteCountEXT" ) );
- vkCmdDrawIndirectCountAMD = PFN_vkCmdDrawIndirectCountAMD( vkGetDeviceProcAddr( device, "vkCmdDrawIndirectCountAMD" ) );
- vkCmdDrawIndirectCountKHR = PFN_vkCmdDrawIndirectCountKHR( vkGetDeviceProcAddr( device, "vkCmdDrawIndirectCountKHR" ) );
+ vkCmdDrawIndirectByteCountEXT =
+ PFN_vkCmdDrawIndirectByteCountEXT( vkGetDeviceProcAddr( device, "vkCmdDrawIndirectByteCountEXT" ) );
vkCmdDrawIndirectCount = PFN_vkCmdDrawIndirectCount( vkGetDeviceProcAddr( device, "vkCmdDrawIndirectCount" ) );
- if ( !vkCmdDrawIndirectCount ) vkCmdDrawIndirectCount = vkCmdDrawIndirectCountKHR;
- if ( !vkCmdDrawIndirectCount ) vkCmdDrawIndirectCount = vkCmdDrawIndirectCountAMD;
- vkCmdDrawMeshTasksIndirectCountNV = PFN_vkCmdDrawMeshTasksIndirectCountNV( vkGetDeviceProcAddr( device, "vkCmdDrawMeshTasksIndirectCountNV" ) );
- vkCmdDrawMeshTasksIndirectNV = PFN_vkCmdDrawMeshTasksIndirectNV( vkGetDeviceProcAddr( device, "vkCmdDrawMeshTasksIndirectNV" ) );
+ vkCmdDrawIndirectCountAMD =
+ PFN_vkCmdDrawIndirectCountAMD( vkGetDeviceProcAddr( device, "vkCmdDrawIndirectCountAMD" ) );
+ if ( !vkCmdDrawIndirectCount )
+ vkCmdDrawIndirectCount = vkCmdDrawIndirectCountAMD;
+ vkCmdDrawIndirectCountKHR =
+ PFN_vkCmdDrawIndirectCountKHR( vkGetDeviceProcAddr( device, "vkCmdDrawIndirectCountKHR" ) );
+ if ( !vkCmdDrawIndirectCount )
+ vkCmdDrawIndirectCount = vkCmdDrawIndirectCountKHR;
+ vkCmdDrawMeshTasksIndirectCountNV =
+ PFN_vkCmdDrawMeshTasksIndirectCountNV( vkGetDeviceProcAddr( device, "vkCmdDrawMeshTasksIndirectCountNV" ) );
+ vkCmdDrawMeshTasksIndirectNV =
+ PFN_vkCmdDrawMeshTasksIndirectNV( vkGetDeviceProcAddr( device, "vkCmdDrawMeshTasksIndirectNV" ) );
vkCmdDrawMeshTasksNV = PFN_vkCmdDrawMeshTasksNV( vkGetDeviceProcAddr( device, "vkCmdDrawMeshTasksNV" ) );
- vkCmdEndConditionalRenderingEXT = PFN_vkCmdEndConditionalRenderingEXT( vkGetDeviceProcAddr( device, "vkCmdEndConditionalRenderingEXT" ) );
- vkCmdEndDebugUtilsLabelEXT = PFN_vkCmdEndDebugUtilsLabelEXT( vkGetDeviceProcAddr( device, "vkCmdEndDebugUtilsLabelEXT" ) );
- vkCmdEndQuery = PFN_vkCmdEndQuery( vkGetDeviceProcAddr( device, "vkCmdEndQuery" ) );
+ vkCmdDrawMultiEXT = PFN_vkCmdDrawMultiEXT( vkGetDeviceProcAddr( device, "vkCmdDrawMultiEXT" ) );
+ vkCmdDrawMultiIndexedEXT =
+ PFN_vkCmdDrawMultiIndexedEXT( vkGetDeviceProcAddr( device, "vkCmdDrawMultiIndexedEXT" ) );
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ vkCmdEncodeVideoKHR = PFN_vkCmdEncodeVideoKHR( vkGetDeviceProcAddr( device, "vkCmdEncodeVideoKHR" ) );
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ vkCmdEndConditionalRenderingEXT =
+ PFN_vkCmdEndConditionalRenderingEXT( vkGetDeviceProcAddr( device, "vkCmdEndConditionalRenderingEXT" ) );
+ vkCmdEndDebugUtilsLabelEXT =
+ PFN_vkCmdEndDebugUtilsLabelEXT( vkGetDeviceProcAddr( device, "vkCmdEndDebugUtilsLabelEXT" ) );
+ vkCmdEndQuery = PFN_vkCmdEndQuery( vkGetDeviceProcAddr( device, "vkCmdEndQuery" ) );
vkCmdEndQueryIndexedEXT = PFN_vkCmdEndQueryIndexedEXT( vkGetDeviceProcAddr( device, "vkCmdEndQueryIndexedEXT" ) );
- vkCmdEndRenderPass = PFN_vkCmdEndRenderPass( vkGetDeviceProcAddr( device, "vkCmdEndRenderPass" ) );
- vkCmdEndRenderPass2KHR = PFN_vkCmdEndRenderPass2KHR( vkGetDeviceProcAddr( device, "vkCmdEndRenderPass2KHR" ) );
- vkCmdEndRenderPass2 = PFN_vkCmdEndRenderPass2( vkGetDeviceProcAddr( device, "vkCmdEndRenderPass2" ) );
- if ( !vkCmdEndRenderPass2 ) vkCmdEndRenderPass2 = vkCmdEndRenderPass2KHR;
- vkCmdEndTransformFeedbackEXT = PFN_vkCmdEndTransformFeedbackEXT( vkGetDeviceProcAddr( device, "vkCmdEndTransformFeedbackEXT" ) );
+ vkCmdEndRenderPass = PFN_vkCmdEndRenderPass( vkGetDeviceProcAddr( device, "vkCmdEndRenderPass" ) );
+ vkCmdEndRenderPass2 = PFN_vkCmdEndRenderPass2( vkGetDeviceProcAddr( device, "vkCmdEndRenderPass2" ) );
+ vkCmdEndRenderPass2KHR = PFN_vkCmdEndRenderPass2KHR( vkGetDeviceProcAddr( device, "vkCmdEndRenderPass2KHR" ) );
+ if ( !vkCmdEndRenderPass2 )
+ vkCmdEndRenderPass2 = vkCmdEndRenderPass2KHR;
+ vkCmdEndTransformFeedbackEXT =
+ PFN_vkCmdEndTransformFeedbackEXT( vkGetDeviceProcAddr( device, "vkCmdEndTransformFeedbackEXT" ) );
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ vkCmdEndVideoCodingKHR = PFN_vkCmdEndVideoCodingKHR( vkGetDeviceProcAddr( device, "vkCmdEndVideoCodingKHR" ) );
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
vkCmdExecuteCommands = PFN_vkCmdExecuteCommands( vkGetDeviceProcAddr( device, "vkCmdExecuteCommands" ) );
- vkCmdExecuteGeneratedCommandsNV = PFN_vkCmdExecuteGeneratedCommandsNV( vkGetDeviceProcAddr( device, "vkCmdExecuteGeneratedCommandsNV" ) );
+ vkCmdExecuteGeneratedCommandsNV =
+ PFN_vkCmdExecuteGeneratedCommandsNV( vkGetDeviceProcAddr( device, "vkCmdExecuteGeneratedCommandsNV" ) );
vkCmdFillBuffer = PFN_vkCmdFillBuffer( vkGetDeviceProcAddr( device, "vkCmdFillBuffer" ) );
- vkCmdInsertDebugUtilsLabelEXT = PFN_vkCmdInsertDebugUtilsLabelEXT( vkGetDeviceProcAddr( device, "vkCmdInsertDebugUtilsLabelEXT" ) );
- vkCmdNextSubpass = PFN_vkCmdNextSubpass( vkGetDeviceProcAddr( device, "vkCmdNextSubpass" ) );
+ vkCmdInsertDebugUtilsLabelEXT =
+ PFN_vkCmdInsertDebugUtilsLabelEXT( vkGetDeviceProcAddr( device, "vkCmdInsertDebugUtilsLabelEXT" ) );
+ vkCmdNextSubpass = PFN_vkCmdNextSubpass( vkGetDeviceProcAddr( device, "vkCmdNextSubpass" ) );
+ vkCmdNextSubpass2 = PFN_vkCmdNextSubpass2( vkGetDeviceProcAddr( device, "vkCmdNextSubpass2" ) );
vkCmdNextSubpass2KHR = PFN_vkCmdNextSubpass2KHR( vkGetDeviceProcAddr( device, "vkCmdNextSubpass2KHR" ) );
- vkCmdNextSubpass2 = PFN_vkCmdNextSubpass2( vkGetDeviceProcAddr( device, "vkCmdNextSubpass2" ) );
- if ( !vkCmdNextSubpass2 ) vkCmdNextSubpass2 = vkCmdNextSubpass2KHR;
+ if ( !vkCmdNextSubpass2 )
+ vkCmdNextSubpass2 = vkCmdNextSubpass2KHR;
vkCmdPipelineBarrier = PFN_vkCmdPipelineBarrier( vkGetDeviceProcAddr( device, "vkCmdPipelineBarrier" ) );
- vkCmdPreprocessGeneratedCommandsNV = PFN_vkCmdPreprocessGeneratedCommandsNV( vkGetDeviceProcAddr( device, "vkCmdPreprocessGeneratedCommandsNV" ) );
+ vkCmdPipelineBarrier2KHR =
+ PFN_vkCmdPipelineBarrier2KHR( vkGetDeviceProcAddr( device, "vkCmdPipelineBarrier2KHR" ) );
+ vkCmdPreprocessGeneratedCommandsNV =
+ PFN_vkCmdPreprocessGeneratedCommandsNV( vkGetDeviceProcAddr( device, "vkCmdPreprocessGeneratedCommandsNV" ) );
vkCmdPushConstants = PFN_vkCmdPushConstants( vkGetDeviceProcAddr( device, "vkCmdPushConstants" ) );
- vkCmdPushDescriptorSetKHR = PFN_vkCmdPushDescriptorSetKHR( vkGetDeviceProcAddr( device, "vkCmdPushDescriptorSetKHR" ) );
- vkCmdPushDescriptorSetWithTemplateKHR = PFN_vkCmdPushDescriptorSetWithTemplateKHR( vkGetDeviceProcAddr( device, "vkCmdPushDescriptorSetWithTemplateKHR" ) );
- vkCmdResetEvent = PFN_vkCmdResetEvent( vkGetDeviceProcAddr( device, "vkCmdResetEvent" ) );
- vkCmdResetQueryPool = PFN_vkCmdResetQueryPool( vkGetDeviceProcAddr( device, "vkCmdResetQueryPool" ) );
- vkCmdResolveImage = PFN_vkCmdResolveImage( vkGetDeviceProcAddr( device, "vkCmdResolveImage" ) );
- vkCmdResolveImage2KHR = PFN_vkCmdResolveImage2KHR( vkGetDeviceProcAddr( device, "vkCmdResolveImage2KHR" ) );
+ vkCmdPushDescriptorSetKHR =
+ PFN_vkCmdPushDescriptorSetKHR( vkGetDeviceProcAddr( device, "vkCmdPushDescriptorSetKHR" ) );
+ vkCmdPushDescriptorSetWithTemplateKHR = PFN_vkCmdPushDescriptorSetWithTemplateKHR(
+ vkGetDeviceProcAddr( device, "vkCmdPushDescriptorSetWithTemplateKHR" ) );
+ vkCmdResetEvent = PFN_vkCmdResetEvent( vkGetDeviceProcAddr( device, "vkCmdResetEvent" ) );
+ vkCmdResetEvent2KHR = PFN_vkCmdResetEvent2KHR( vkGetDeviceProcAddr( device, "vkCmdResetEvent2KHR" ) );
+ vkCmdResetQueryPool = PFN_vkCmdResetQueryPool( vkGetDeviceProcAddr( device, "vkCmdResetQueryPool" ) );
+ vkCmdResolveImage = PFN_vkCmdResolveImage( vkGetDeviceProcAddr( device, "vkCmdResolveImage" ) );
+ vkCmdResolveImage2KHR = PFN_vkCmdResolveImage2KHR( vkGetDeviceProcAddr( device, "vkCmdResolveImage2KHR" ) );
vkCmdSetBlendConstants = PFN_vkCmdSetBlendConstants( vkGetDeviceProcAddr( device, "vkCmdSetBlendConstants" ) );
- vkCmdSetCheckpointNV = PFN_vkCmdSetCheckpointNV( vkGetDeviceProcAddr( device, "vkCmdSetCheckpointNV" ) );
- vkCmdSetCoarseSampleOrderNV = PFN_vkCmdSetCoarseSampleOrderNV( vkGetDeviceProcAddr( device, "vkCmdSetCoarseSampleOrderNV" ) );
+ vkCmdSetCheckpointNV = PFN_vkCmdSetCheckpointNV( vkGetDeviceProcAddr( device, "vkCmdSetCheckpointNV" ) );
+ vkCmdSetCoarseSampleOrderNV =
+ PFN_vkCmdSetCoarseSampleOrderNV( vkGetDeviceProcAddr( device, "vkCmdSetCoarseSampleOrderNV" ) );
+ vkCmdSetColorWriteEnableEXT =
+ PFN_vkCmdSetColorWriteEnableEXT( vkGetDeviceProcAddr( device, "vkCmdSetColorWriteEnableEXT" ) );
vkCmdSetCullModeEXT = PFN_vkCmdSetCullModeEXT( vkGetDeviceProcAddr( device, "vkCmdSetCullModeEXT" ) );
- vkCmdSetDepthBias = PFN_vkCmdSetDepthBias( vkGetDeviceProcAddr( device, "vkCmdSetDepthBias" ) );
+ vkCmdSetDepthBias = PFN_vkCmdSetDepthBias( vkGetDeviceProcAddr( device, "vkCmdSetDepthBias" ) );
+ vkCmdSetDepthBiasEnableEXT =
+ PFN_vkCmdSetDepthBiasEnableEXT( vkGetDeviceProcAddr( device, "vkCmdSetDepthBiasEnableEXT" ) );
vkCmdSetDepthBounds = PFN_vkCmdSetDepthBounds( vkGetDeviceProcAddr( device, "vkCmdSetDepthBounds" ) );
- vkCmdSetDepthBoundsTestEnableEXT = PFN_vkCmdSetDepthBoundsTestEnableEXT( vkGetDeviceProcAddr( device, "vkCmdSetDepthBoundsTestEnableEXT" ) );
- vkCmdSetDepthCompareOpEXT = PFN_vkCmdSetDepthCompareOpEXT( vkGetDeviceProcAddr( device, "vkCmdSetDepthCompareOpEXT" ) );
- vkCmdSetDepthTestEnableEXT = PFN_vkCmdSetDepthTestEnableEXT( vkGetDeviceProcAddr( device, "vkCmdSetDepthTestEnableEXT" ) );
- vkCmdSetDepthWriteEnableEXT = PFN_vkCmdSetDepthWriteEnableEXT( vkGetDeviceProcAddr( device, "vkCmdSetDepthWriteEnableEXT" ) );
+ vkCmdSetDepthBoundsTestEnableEXT =
+ PFN_vkCmdSetDepthBoundsTestEnableEXT( vkGetDeviceProcAddr( device, "vkCmdSetDepthBoundsTestEnableEXT" ) );
+ vkCmdSetDepthCompareOpEXT =
+ PFN_vkCmdSetDepthCompareOpEXT( vkGetDeviceProcAddr( device, "vkCmdSetDepthCompareOpEXT" ) );
+ vkCmdSetDepthTestEnableEXT =
+ PFN_vkCmdSetDepthTestEnableEXT( vkGetDeviceProcAddr( device, "vkCmdSetDepthTestEnableEXT" ) );
+ vkCmdSetDepthWriteEnableEXT =
+ PFN_vkCmdSetDepthWriteEnableEXT( vkGetDeviceProcAddr( device, "vkCmdSetDepthWriteEnableEXT" ) );
+ vkCmdSetDeviceMask = PFN_vkCmdSetDeviceMask( vkGetDeviceProcAddr( device, "vkCmdSetDeviceMask" ) );
vkCmdSetDeviceMaskKHR = PFN_vkCmdSetDeviceMaskKHR( vkGetDeviceProcAddr( device, "vkCmdSetDeviceMaskKHR" ) );
- vkCmdSetDeviceMask = PFN_vkCmdSetDeviceMask( vkGetDeviceProcAddr( device, "vkCmdSetDeviceMask" ) );
- if ( !vkCmdSetDeviceMask ) vkCmdSetDeviceMask = vkCmdSetDeviceMaskKHR;
- vkCmdSetDiscardRectangleEXT = PFN_vkCmdSetDiscardRectangleEXT( vkGetDeviceProcAddr( device, "vkCmdSetDiscardRectangleEXT" ) );
- vkCmdSetEvent = PFN_vkCmdSetEvent( vkGetDeviceProcAddr( device, "vkCmdSetEvent" ) );
- vkCmdSetExclusiveScissorNV = PFN_vkCmdSetExclusiveScissorNV( vkGetDeviceProcAddr( device, "vkCmdSetExclusiveScissorNV" ) );
- vkCmdSetFragmentShadingRateEnumNV = PFN_vkCmdSetFragmentShadingRateEnumNV( vkGetDeviceProcAddr( device, "vkCmdSetFragmentShadingRateEnumNV" ) );
- vkCmdSetFragmentShadingRateKHR = PFN_vkCmdSetFragmentShadingRateKHR( vkGetDeviceProcAddr( device, "vkCmdSetFragmentShadingRateKHR" ) );
- vkCmdSetFrontFaceEXT = PFN_vkCmdSetFrontFaceEXT( vkGetDeviceProcAddr( device, "vkCmdSetFrontFaceEXT" ) );
+ if ( !vkCmdSetDeviceMask )
+ vkCmdSetDeviceMask = vkCmdSetDeviceMaskKHR;
+ vkCmdSetDiscardRectangleEXT =
+ PFN_vkCmdSetDiscardRectangleEXT( vkGetDeviceProcAddr( device, "vkCmdSetDiscardRectangleEXT" ) );
+ vkCmdSetEvent = PFN_vkCmdSetEvent( vkGetDeviceProcAddr( device, "vkCmdSetEvent" ) );
+ vkCmdSetEvent2KHR = PFN_vkCmdSetEvent2KHR( vkGetDeviceProcAddr( device, "vkCmdSetEvent2KHR" ) );
+ vkCmdSetExclusiveScissorNV =
+ PFN_vkCmdSetExclusiveScissorNV( vkGetDeviceProcAddr( device, "vkCmdSetExclusiveScissorNV" ) );
+ vkCmdSetFragmentShadingRateEnumNV =
+ PFN_vkCmdSetFragmentShadingRateEnumNV( vkGetDeviceProcAddr( device, "vkCmdSetFragmentShadingRateEnumNV" ) );
+ vkCmdSetFragmentShadingRateKHR =
+ PFN_vkCmdSetFragmentShadingRateKHR( vkGetDeviceProcAddr( device, "vkCmdSetFragmentShadingRateKHR" ) );
+ vkCmdSetFrontFaceEXT = PFN_vkCmdSetFrontFaceEXT( vkGetDeviceProcAddr( device, "vkCmdSetFrontFaceEXT" ) );
vkCmdSetLineStippleEXT = PFN_vkCmdSetLineStippleEXT( vkGetDeviceProcAddr( device, "vkCmdSetLineStippleEXT" ) );
- vkCmdSetLineWidth = PFN_vkCmdSetLineWidth( vkGetDeviceProcAddr( device, "vkCmdSetLineWidth" ) );
- vkCmdSetPerformanceMarkerINTEL = PFN_vkCmdSetPerformanceMarkerINTEL( vkGetDeviceProcAddr( device, "vkCmdSetPerformanceMarkerINTEL" ) );
- vkCmdSetPerformanceOverrideINTEL = PFN_vkCmdSetPerformanceOverrideINTEL( vkGetDeviceProcAddr( device, "vkCmdSetPerformanceOverrideINTEL" ) );
- vkCmdSetPerformanceStreamMarkerINTEL = PFN_vkCmdSetPerformanceStreamMarkerINTEL( vkGetDeviceProcAddr( device, "vkCmdSetPerformanceStreamMarkerINTEL" ) );
- vkCmdSetPrimitiveTopologyEXT = PFN_vkCmdSetPrimitiveTopologyEXT( vkGetDeviceProcAddr( device, "vkCmdSetPrimitiveTopologyEXT" ) );
- vkCmdSetRayTracingPipelineStackSizeKHR = PFN_vkCmdSetRayTracingPipelineStackSizeKHR( vkGetDeviceProcAddr( device, "vkCmdSetRayTracingPipelineStackSizeKHR" ) );
- vkCmdSetSampleLocationsEXT = PFN_vkCmdSetSampleLocationsEXT( vkGetDeviceProcAddr( device, "vkCmdSetSampleLocationsEXT" ) );
+ vkCmdSetLineWidth = PFN_vkCmdSetLineWidth( vkGetDeviceProcAddr( device, "vkCmdSetLineWidth" ) );
+ vkCmdSetLogicOpEXT = PFN_vkCmdSetLogicOpEXT( vkGetDeviceProcAddr( device, "vkCmdSetLogicOpEXT" ) );
+ vkCmdSetPatchControlPointsEXT =
+ PFN_vkCmdSetPatchControlPointsEXT( vkGetDeviceProcAddr( device, "vkCmdSetPatchControlPointsEXT" ) );
+ vkCmdSetPerformanceMarkerINTEL =
+ PFN_vkCmdSetPerformanceMarkerINTEL( vkGetDeviceProcAddr( device, "vkCmdSetPerformanceMarkerINTEL" ) );
+ vkCmdSetPerformanceOverrideINTEL =
+ PFN_vkCmdSetPerformanceOverrideINTEL( vkGetDeviceProcAddr( device, "vkCmdSetPerformanceOverrideINTEL" ) );
+ vkCmdSetPerformanceStreamMarkerINTEL = PFN_vkCmdSetPerformanceStreamMarkerINTEL(
+ vkGetDeviceProcAddr( device, "vkCmdSetPerformanceStreamMarkerINTEL" ) );
+ vkCmdSetPrimitiveRestartEnableEXT =
+ PFN_vkCmdSetPrimitiveRestartEnableEXT( vkGetDeviceProcAddr( device, "vkCmdSetPrimitiveRestartEnableEXT" ) );
+ vkCmdSetPrimitiveTopologyEXT =
+ PFN_vkCmdSetPrimitiveTopologyEXT( vkGetDeviceProcAddr( device, "vkCmdSetPrimitiveTopologyEXT" ) );
+ vkCmdSetRasterizerDiscardEnableEXT =
+ PFN_vkCmdSetRasterizerDiscardEnableEXT( vkGetDeviceProcAddr( device, "vkCmdSetRasterizerDiscardEnableEXT" ) );
+ vkCmdSetRayTracingPipelineStackSizeKHR = PFN_vkCmdSetRayTracingPipelineStackSizeKHR(
+ vkGetDeviceProcAddr( device, "vkCmdSetRayTracingPipelineStackSizeKHR" ) );
+ vkCmdSetSampleLocationsEXT =
+ PFN_vkCmdSetSampleLocationsEXT( vkGetDeviceProcAddr( device, "vkCmdSetSampleLocationsEXT" ) );
vkCmdSetScissor = PFN_vkCmdSetScissor( vkGetDeviceProcAddr( device, "vkCmdSetScissor" ) );
- vkCmdSetScissorWithCountEXT = PFN_vkCmdSetScissorWithCountEXT( vkGetDeviceProcAddr( device, "vkCmdSetScissorWithCountEXT" ) );
- vkCmdSetStencilCompareMask = PFN_vkCmdSetStencilCompareMask( vkGetDeviceProcAddr( device, "vkCmdSetStencilCompareMask" ) );
+ vkCmdSetScissorWithCountEXT =
+ PFN_vkCmdSetScissorWithCountEXT( vkGetDeviceProcAddr( device, "vkCmdSetScissorWithCountEXT" ) );
+ vkCmdSetStencilCompareMask =
+ PFN_vkCmdSetStencilCompareMask( vkGetDeviceProcAddr( device, "vkCmdSetStencilCompareMask" ) );
vkCmdSetStencilOpEXT = PFN_vkCmdSetStencilOpEXT( vkGetDeviceProcAddr( device, "vkCmdSetStencilOpEXT" ) );
- vkCmdSetStencilReference = PFN_vkCmdSetStencilReference( vkGetDeviceProcAddr( device, "vkCmdSetStencilReference" ) );
- vkCmdSetStencilTestEnableEXT = PFN_vkCmdSetStencilTestEnableEXT( vkGetDeviceProcAddr( device, "vkCmdSetStencilTestEnableEXT" ) );
- vkCmdSetStencilWriteMask = PFN_vkCmdSetStencilWriteMask( vkGetDeviceProcAddr( device, "vkCmdSetStencilWriteMask" ) );
- vkCmdSetViewport = PFN_vkCmdSetViewport( vkGetDeviceProcAddr( device, "vkCmdSetViewport" ) );
- vkCmdSetViewportShadingRatePaletteNV = PFN_vkCmdSetViewportShadingRatePaletteNV( vkGetDeviceProcAddr( device, "vkCmdSetViewportShadingRatePaletteNV" ) );
- vkCmdSetViewportWScalingNV = PFN_vkCmdSetViewportWScalingNV( vkGetDeviceProcAddr( device, "vkCmdSetViewportWScalingNV" ) );
- vkCmdSetViewportWithCountEXT = PFN_vkCmdSetViewportWithCountEXT( vkGetDeviceProcAddr( device, "vkCmdSetViewportWithCountEXT" ) );
- vkCmdTraceRaysIndirectKHR = PFN_vkCmdTraceRaysIndirectKHR( vkGetDeviceProcAddr( device, "vkCmdTraceRaysIndirectKHR" ) );
- vkCmdTraceRaysKHR = PFN_vkCmdTraceRaysKHR( vkGetDeviceProcAddr( device, "vkCmdTraceRaysKHR" ) );
- vkCmdTraceRaysNV = PFN_vkCmdTraceRaysNV( vkGetDeviceProcAddr( device, "vkCmdTraceRaysNV" ) );
- vkCmdUpdateBuffer = PFN_vkCmdUpdateBuffer( vkGetDeviceProcAddr( device, "vkCmdUpdateBuffer" ) );
- vkCmdWaitEvents = PFN_vkCmdWaitEvents( vkGetDeviceProcAddr( device, "vkCmdWaitEvents" ) );
- vkCmdWriteAccelerationStructuresPropertiesKHR = PFN_vkCmdWriteAccelerationStructuresPropertiesKHR( vkGetDeviceProcAddr( device, "vkCmdWriteAccelerationStructuresPropertiesKHR" ) );
- vkCmdWriteAccelerationStructuresPropertiesNV = PFN_vkCmdWriteAccelerationStructuresPropertiesNV( vkGetDeviceProcAddr( device, "vkCmdWriteAccelerationStructuresPropertiesNV" ) );
- vkCmdWriteBufferMarkerAMD = PFN_vkCmdWriteBufferMarkerAMD( vkGetDeviceProcAddr( device, "vkCmdWriteBufferMarkerAMD" ) );
- vkCmdWriteTimestamp = PFN_vkCmdWriteTimestamp( vkGetDeviceProcAddr( device, "vkCmdWriteTimestamp" ) );
- vkCompileDeferredNV = PFN_vkCompileDeferredNV( vkGetDeviceProcAddr( device, "vkCompileDeferredNV" ) );
- vkCopyAccelerationStructureKHR = PFN_vkCopyAccelerationStructureKHR( vkGetDeviceProcAddr( device, "vkCopyAccelerationStructureKHR" ) );
- vkCopyAccelerationStructureToMemoryKHR = PFN_vkCopyAccelerationStructureToMemoryKHR( vkGetDeviceProcAddr( device, "vkCopyAccelerationStructureToMemoryKHR" ) );
- vkCopyMemoryToAccelerationStructureKHR = PFN_vkCopyMemoryToAccelerationStructureKHR( vkGetDeviceProcAddr( device, "vkCopyMemoryToAccelerationStructureKHR" ) );
- vkCreateAccelerationStructureKHR = PFN_vkCreateAccelerationStructureKHR( vkGetDeviceProcAddr( device, "vkCreateAccelerationStructureKHR" ) );
- vkCreateAccelerationStructureNV = PFN_vkCreateAccelerationStructureNV( vkGetDeviceProcAddr( device, "vkCreateAccelerationStructureNV" ) );
- vkCreateBuffer = PFN_vkCreateBuffer( vkGetDeviceProcAddr( device, "vkCreateBuffer" ) );
- vkCreateBufferView = PFN_vkCreateBufferView( vkGetDeviceProcAddr( device, "vkCreateBufferView" ) );
+ vkCmdSetStencilReference =
+ PFN_vkCmdSetStencilReference( vkGetDeviceProcAddr( device, "vkCmdSetStencilReference" ) );
+ vkCmdSetStencilTestEnableEXT =
+ PFN_vkCmdSetStencilTestEnableEXT( vkGetDeviceProcAddr( device, "vkCmdSetStencilTestEnableEXT" ) );
+ vkCmdSetStencilWriteMask =
+ PFN_vkCmdSetStencilWriteMask( vkGetDeviceProcAddr( device, "vkCmdSetStencilWriteMask" ) );
+ vkCmdSetVertexInputEXT = PFN_vkCmdSetVertexInputEXT( vkGetDeviceProcAddr( device, "vkCmdSetVertexInputEXT" ) );
+ vkCmdSetViewport = PFN_vkCmdSetViewport( vkGetDeviceProcAddr( device, "vkCmdSetViewport" ) );
+ vkCmdSetViewportShadingRatePaletteNV = PFN_vkCmdSetViewportShadingRatePaletteNV(
+ vkGetDeviceProcAddr( device, "vkCmdSetViewportShadingRatePaletteNV" ) );
+ vkCmdSetViewportWScalingNV =
+ PFN_vkCmdSetViewportWScalingNV( vkGetDeviceProcAddr( device, "vkCmdSetViewportWScalingNV" ) );
+ vkCmdSetViewportWithCountEXT =
+ PFN_vkCmdSetViewportWithCountEXT( vkGetDeviceProcAddr( device, "vkCmdSetViewportWithCountEXT" ) );
+ vkCmdSubpassShadingHUAWEI =
+ PFN_vkCmdSubpassShadingHUAWEI( vkGetDeviceProcAddr( device, "vkCmdSubpassShadingHUAWEI" ) );
+ vkCmdTraceRaysIndirectKHR =
+ PFN_vkCmdTraceRaysIndirectKHR( vkGetDeviceProcAddr( device, "vkCmdTraceRaysIndirectKHR" ) );
+ vkCmdTraceRaysKHR = PFN_vkCmdTraceRaysKHR( vkGetDeviceProcAddr( device, "vkCmdTraceRaysKHR" ) );
+ vkCmdTraceRaysNV = PFN_vkCmdTraceRaysNV( vkGetDeviceProcAddr( device, "vkCmdTraceRaysNV" ) );
+ vkCmdUpdateBuffer = PFN_vkCmdUpdateBuffer( vkGetDeviceProcAddr( device, "vkCmdUpdateBuffer" ) );
+ vkCmdWaitEvents = PFN_vkCmdWaitEvents( vkGetDeviceProcAddr( device, "vkCmdWaitEvents" ) );
+ vkCmdWaitEvents2KHR = PFN_vkCmdWaitEvents2KHR( vkGetDeviceProcAddr( device, "vkCmdWaitEvents2KHR" ) );
+ vkCmdWriteAccelerationStructuresPropertiesKHR = PFN_vkCmdWriteAccelerationStructuresPropertiesKHR(
+ vkGetDeviceProcAddr( device, "vkCmdWriteAccelerationStructuresPropertiesKHR" ) );
+ vkCmdWriteAccelerationStructuresPropertiesNV = PFN_vkCmdWriteAccelerationStructuresPropertiesNV(
+ vkGetDeviceProcAddr( device, "vkCmdWriteAccelerationStructuresPropertiesNV" ) );
+ vkCmdWriteBufferMarker2AMD =
+ PFN_vkCmdWriteBufferMarker2AMD( vkGetDeviceProcAddr( device, "vkCmdWriteBufferMarker2AMD" ) );
+ vkCmdWriteBufferMarkerAMD =
+ PFN_vkCmdWriteBufferMarkerAMD( vkGetDeviceProcAddr( device, "vkCmdWriteBufferMarkerAMD" ) );
+ vkCmdWriteTimestamp = PFN_vkCmdWriteTimestamp( vkGetDeviceProcAddr( device, "vkCmdWriteTimestamp" ) );
+ vkCmdWriteTimestamp2KHR = PFN_vkCmdWriteTimestamp2KHR( vkGetDeviceProcAddr( device, "vkCmdWriteTimestamp2KHR" ) );
+ vkCompileDeferredNV = PFN_vkCompileDeferredNV( vkGetDeviceProcAddr( device, "vkCompileDeferredNV" ) );
+ vkCopyAccelerationStructureKHR =
+ PFN_vkCopyAccelerationStructureKHR( vkGetDeviceProcAddr( device, "vkCopyAccelerationStructureKHR" ) );
+ vkCopyAccelerationStructureToMemoryKHR = PFN_vkCopyAccelerationStructureToMemoryKHR(
+ vkGetDeviceProcAddr( device, "vkCopyAccelerationStructureToMemoryKHR" ) );
+ vkCopyMemoryToAccelerationStructureKHR = PFN_vkCopyMemoryToAccelerationStructureKHR(
+ vkGetDeviceProcAddr( device, "vkCopyMemoryToAccelerationStructureKHR" ) );
+ vkCreateAccelerationStructureKHR =
+ PFN_vkCreateAccelerationStructureKHR( vkGetDeviceProcAddr( device, "vkCreateAccelerationStructureKHR" ) );
+ vkCreateAccelerationStructureNV =
+ PFN_vkCreateAccelerationStructureNV( vkGetDeviceProcAddr( device, "vkCreateAccelerationStructureNV" ) );
+ vkCreateBuffer = PFN_vkCreateBuffer( vkGetDeviceProcAddr( device, "vkCreateBuffer" ) );
+ vkCreateBufferView = PFN_vkCreateBufferView( vkGetDeviceProcAddr( device, "vkCreateBufferView" ) );
vkCreateCommandPool = PFN_vkCreateCommandPool( vkGetDeviceProcAddr( device, "vkCreateCommandPool" ) );
- vkCreateComputePipelines = PFN_vkCreateComputePipelines( vkGetDeviceProcAddr( device, "vkCreateComputePipelines" ) );
- vkCreateDeferredOperationKHR = PFN_vkCreateDeferredOperationKHR( vkGetDeviceProcAddr( device, "vkCreateDeferredOperationKHR" ) );
+ vkCreateComputePipelines =
+ PFN_vkCreateComputePipelines( vkGetDeviceProcAddr( device, "vkCreateComputePipelines" ) );
+ vkCreateCuFunctionNVX = PFN_vkCreateCuFunctionNVX( vkGetDeviceProcAddr( device, "vkCreateCuFunctionNVX" ) );
+ vkCreateCuModuleNVX = PFN_vkCreateCuModuleNVX( vkGetDeviceProcAddr( device, "vkCreateCuModuleNVX" ) );
+ vkCreateDeferredOperationKHR =
+ PFN_vkCreateDeferredOperationKHR( vkGetDeviceProcAddr( device, "vkCreateDeferredOperationKHR" ) );
vkCreateDescriptorPool = PFN_vkCreateDescriptorPool( vkGetDeviceProcAddr( device, "vkCreateDescriptorPool" ) );
- vkCreateDescriptorSetLayout = PFN_vkCreateDescriptorSetLayout( vkGetDeviceProcAddr( device, "vkCreateDescriptorSetLayout" ) );
- vkCreateDescriptorUpdateTemplateKHR = PFN_vkCreateDescriptorUpdateTemplateKHR( vkGetDeviceProcAddr( device, "vkCreateDescriptorUpdateTemplateKHR" ) );
- vkCreateDescriptorUpdateTemplate = PFN_vkCreateDescriptorUpdateTemplate( vkGetDeviceProcAddr( device, "vkCreateDescriptorUpdateTemplate" ) );
- if ( !vkCreateDescriptorUpdateTemplate ) vkCreateDescriptorUpdateTemplate = vkCreateDescriptorUpdateTemplateKHR;
- vkCreateEvent = PFN_vkCreateEvent( vkGetDeviceProcAddr( device, "vkCreateEvent" ) );
- vkCreateFence = PFN_vkCreateFence( vkGetDeviceProcAddr( device, "vkCreateFence" ) );
+ vkCreateDescriptorSetLayout =
+ PFN_vkCreateDescriptorSetLayout( vkGetDeviceProcAddr( device, "vkCreateDescriptorSetLayout" ) );
+ vkCreateDescriptorUpdateTemplate =
+ PFN_vkCreateDescriptorUpdateTemplate( vkGetDeviceProcAddr( device, "vkCreateDescriptorUpdateTemplate" ) );
+ vkCreateDescriptorUpdateTemplateKHR =
+ PFN_vkCreateDescriptorUpdateTemplateKHR( vkGetDeviceProcAddr( device, "vkCreateDescriptorUpdateTemplateKHR" ) );
+ if ( !vkCreateDescriptorUpdateTemplate )
+ vkCreateDescriptorUpdateTemplate = vkCreateDescriptorUpdateTemplateKHR;
+ vkCreateEvent = PFN_vkCreateEvent( vkGetDeviceProcAddr( device, "vkCreateEvent" ) );
+ vkCreateFence = PFN_vkCreateFence( vkGetDeviceProcAddr( device, "vkCreateFence" ) );
vkCreateFramebuffer = PFN_vkCreateFramebuffer( vkGetDeviceProcAddr( device, "vkCreateFramebuffer" ) );
- vkCreateGraphicsPipelines = PFN_vkCreateGraphicsPipelines( vkGetDeviceProcAddr( device, "vkCreateGraphicsPipelines" ) );
- vkCreateImage = PFN_vkCreateImage( vkGetDeviceProcAddr( device, "vkCreateImage" ) );
+ vkCreateGraphicsPipelines =
+ PFN_vkCreateGraphicsPipelines( vkGetDeviceProcAddr( device, "vkCreateGraphicsPipelines" ) );
+ vkCreateImage = PFN_vkCreateImage( vkGetDeviceProcAddr( device, "vkCreateImage" ) );
vkCreateImageView = PFN_vkCreateImageView( vkGetDeviceProcAddr( device, "vkCreateImageView" ) );
- vkCreateIndirectCommandsLayoutNV = PFN_vkCreateIndirectCommandsLayoutNV( vkGetDeviceProcAddr( device, "vkCreateIndirectCommandsLayoutNV" ) );
- vkCreatePipelineCache = PFN_vkCreatePipelineCache( vkGetDeviceProcAddr( device, "vkCreatePipelineCache" ) );
+ vkCreateIndirectCommandsLayoutNV =
+ PFN_vkCreateIndirectCommandsLayoutNV( vkGetDeviceProcAddr( device, "vkCreateIndirectCommandsLayoutNV" ) );
+ vkCreatePipelineCache = PFN_vkCreatePipelineCache( vkGetDeviceProcAddr( device, "vkCreatePipelineCache" ) );
vkCreatePipelineLayout = PFN_vkCreatePipelineLayout( vkGetDeviceProcAddr( device, "vkCreatePipelineLayout" ) );
- vkCreatePrivateDataSlotEXT = PFN_vkCreatePrivateDataSlotEXT( vkGetDeviceProcAddr( device, "vkCreatePrivateDataSlotEXT" ) );
+ vkCreatePrivateDataSlotEXT =
+ PFN_vkCreatePrivateDataSlotEXT( vkGetDeviceProcAddr( device, "vkCreatePrivateDataSlotEXT" ) );
vkCreateQueryPool = PFN_vkCreateQueryPool( vkGetDeviceProcAddr( device, "vkCreateQueryPool" ) );
- vkCreateRayTracingPipelinesKHR = PFN_vkCreateRayTracingPipelinesKHR( vkGetDeviceProcAddr( device, "vkCreateRayTracingPipelinesKHR" ) );
- vkCreateRayTracingPipelinesNV = PFN_vkCreateRayTracingPipelinesNV( vkGetDeviceProcAddr( device, "vkCreateRayTracingPipelinesNV" ) );
- vkCreateRenderPass = PFN_vkCreateRenderPass( vkGetDeviceProcAddr( device, "vkCreateRenderPass" ) );
+ vkCreateRayTracingPipelinesKHR =
+ PFN_vkCreateRayTracingPipelinesKHR( vkGetDeviceProcAddr( device, "vkCreateRayTracingPipelinesKHR" ) );
+ vkCreateRayTracingPipelinesNV =
+ PFN_vkCreateRayTracingPipelinesNV( vkGetDeviceProcAddr( device, "vkCreateRayTracingPipelinesNV" ) );
+ vkCreateRenderPass = PFN_vkCreateRenderPass( vkGetDeviceProcAddr( device, "vkCreateRenderPass" ) );
+ vkCreateRenderPass2 = PFN_vkCreateRenderPass2( vkGetDeviceProcAddr( device, "vkCreateRenderPass2" ) );
vkCreateRenderPass2KHR = PFN_vkCreateRenderPass2KHR( vkGetDeviceProcAddr( device, "vkCreateRenderPass2KHR" ) );
- vkCreateRenderPass2 = PFN_vkCreateRenderPass2( vkGetDeviceProcAddr( device, "vkCreateRenderPass2" ) );
- if ( !vkCreateRenderPass2 ) vkCreateRenderPass2 = vkCreateRenderPass2KHR;
+ if ( !vkCreateRenderPass2 )
+ vkCreateRenderPass2 = vkCreateRenderPass2KHR;
vkCreateSampler = PFN_vkCreateSampler( vkGetDeviceProcAddr( device, "vkCreateSampler" ) );
- vkCreateSamplerYcbcrConversionKHR = PFN_vkCreateSamplerYcbcrConversionKHR( vkGetDeviceProcAddr( device, "vkCreateSamplerYcbcrConversionKHR" ) );
- vkCreateSamplerYcbcrConversion = PFN_vkCreateSamplerYcbcrConversion( vkGetDeviceProcAddr( device, "vkCreateSamplerYcbcrConversion" ) );
- if ( !vkCreateSamplerYcbcrConversion ) vkCreateSamplerYcbcrConversion = vkCreateSamplerYcbcrConversionKHR;
- vkCreateSemaphore = PFN_vkCreateSemaphore( vkGetDeviceProcAddr( device, "vkCreateSemaphore" ) );
+ vkCreateSamplerYcbcrConversion =
+ PFN_vkCreateSamplerYcbcrConversion( vkGetDeviceProcAddr( device, "vkCreateSamplerYcbcrConversion" ) );
+ vkCreateSamplerYcbcrConversionKHR =
+ PFN_vkCreateSamplerYcbcrConversionKHR( vkGetDeviceProcAddr( device, "vkCreateSamplerYcbcrConversionKHR" ) );
+ if ( !vkCreateSamplerYcbcrConversion )
+ vkCreateSamplerYcbcrConversion = vkCreateSamplerYcbcrConversionKHR;
+ vkCreateSemaphore = PFN_vkCreateSemaphore( vkGetDeviceProcAddr( device, "vkCreateSemaphore" ) );
vkCreateShaderModule = PFN_vkCreateShaderModule( vkGetDeviceProcAddr( device, "vkCreateShaderModule" ) );
- vkCreateSharedSwapchainsKHR = PFN_vkCreateSharedSwapchainsKHR( vkGetDeviceProcAddr( device, "vkCreateSharedSwapchainsKHR" ) );
+ vkCreateSharedSwapchainsKHR =
+ PFN_vkCreateSharedSwapchainsKHR( vkGetDeviceProcAddr( device, "vkCreateSharedSwapchainsKHR" ) );
vkCreateSwapchainKHR = PFN_vkCreateSwapchainKHR( vkGetDeviceProcAddr( device, "vkCreateSwapchainKHR" ) );
- vkCreateValidationCacheEXT = PFN_vkCreateValidationCacheEXT( vkGetDeviceProcAddr( device, "vkCreateValidationCacheEXT" ) );
- vkDebugMarkerSetObjectNameEXT = PFN_vkDebugMarkerSetObjectNameEXT( vkGetDeviceProcAddr( device, "vkDebugMarkerSetObjectNameEXT" ) );
- vkDebugMarkerSetObjectTagEXT = PFN_vkDebugMarkerSetObjectTagEXT( vkGetDeviceProcAddr( device, "vkDebugMarkerSetObjectTagEXT" ) );
- vkDeferredOperationJoinKHR = PFN_vkDeferredOperationJoinKHR( vkGetDeviceProcAddr( device, "vkDeferredOperationJoinKHR" ) );
- vkDestroyAccelerationStructureKHR = PFN_vkDestroyAccelerationStructureKHR( vkGetDeviceProcAddr( device, "vkDestroyAccelerationStructureKHR" ) );
- vkDestroyAccelerationStructureNV = PFN_vkDestroyAccelerationStructureNV( vkGetDeviceProcAddr( device, "vkDestroyAccelerationStructureNV" ) );
- vkDestroyBuffer = PFN_vkDestroyBuffer( vkGetDeviceProcAddr( device, "vkDestroyBuffer" ) );
- vkDestroyBufferView = PFN_vkDestroyBufferView( vkGetDeviceProcAddr( device, "vkDestroyBufferView" ) );
- vkDestroyCommandPool = PFN_vkDestroyCommandPool( vkGetDeviceProcAddr( device, "vkDestroyCommandPool" ) );
- vkDestroyDeferredOperationKHR = PFN_vkDestroyDeferredOperationKHR( vkGetDeviceProcAddr( device, "vkDestroyDeferredOperationKHR" ) );
+ vkCreateValidationCacheEXT =
+ PFN_vkCreateValidationCacheEXT( vkGetDeviceProcAddr( device, "vkCreateValidationCacheEXT" ) );
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ vkCreateVideoSessionKHR = PFN_vkCreateVideoSessionKHR( vkGetDeviceProcAddr( device, "vkCreateVideoSessionKHR" ) );
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ vkCreateVideoSessionParametersKHR =
+ PFN_vkCreateVideoSessionParametersKHR( vkGetDeviceProcAddr( device, "vkCreateVideoSessionParametersKHR" ) );
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ vkDebugMarkerSetObjectNameEXT =
+ PFN_vkDebugMarkerSetObjectNameEXT( vkGetDeviceProcAddr( device, "vkDebugMarkerSetObjectNameEXT" ) );
+ vkDebugMarkerSetObjectTagEXT =
+ PFN_vkDebugMarkerSetObjectTagEXT( vkGetDeviceProcAddr( device, "vkDebugMarkerSetObjectTagEXT" ) );
+ vkDeferredOperationJoinKHR =
+ PFN_vkDeferredOperationJoinKHR( vkGetDeviceProcAddr( device, "vkDeferredOperationJoinKHR" ) );
+ vkDestroyAccelerationStructureKHR =
+ PFN_vkDestroyAccelerationStructureKHR( vkGetDeviceProcAddr( device, "vkDestroyAccelerationStructureKHR" ) );
+ vkDestroyAccelerationStructureNV =
+ PFN_vkDestroyAccelerationStructureNV( vkGetDeviceProcAddr( device, "vkDestroyAccelerationStructureNV" ) );
+ vkDestroyBuffer = PFN_vkDestroyBuffer( vkGetDeviceProcAddr( device, "vkDestroyBuffer" ) );
+ vkDestroyBufferView = PFN_vkDestroyBufferView( vkGetDeviceProcAddr( device, "vkDestroyBufferView" ) );
+ vkDestroyCommandPool = PFN_vkDestroyCommandPool( vkGetDeviceProcAddr( device, "vkDestroyCommandPool" ) );
+ vkDestroyCuFunctionNVX = PFN_vkDestroyCuFunctionNVX( vkGetDeviceProcAddr( device, "vkDestroyCuFunctionNVX" ) );
+ vkDestroyCuModuleNVX = PFN_vkDestroyCuModuleNVX( vkGetDeviceProcAddr( device, "vkDestroyCuModuleNVX" ) );
+ vkDestroyDeferredOperationKHR =
+ PFN_vkDestroyDeferredOperationKHR( vkGetDeviceProcAddr( device, "vkDestroyDeferredOperationKHR" ) );
vkDestroyDescriptorPool = PFN_vkDestroyDescriptorPool( vkGetDeviceProcAddr( device, "vkDestroyDescriptorPool" ) );
- vkDestroyDescriptorSetLayout = PFN_vkDestroyDescriptorSetLayout( vkGetDeviceProcAddr( device, "vkDestroyDescriptorSetLayout" ) );
- vkDestroyDescriptorUpdateTemplateKHR = PFN_vkDestroyDescriptorUpdateTemplateKHR( vkGetDeviceProcAddr( device, "vkDestroyDescriptorUpdateTemplateKHR" ) );
- vkDestroyDescriptorUpdateTemplate = PFN_vkDestroyDescriptorUpdateTemplate( vkGetDeviceProcAddr( device, "vkDestroyDescriptorUpdateTemplate" ) );
- if ( !vkDestroyDescriptorUpdateTemplate ) vkDestroyDescriptorUpdateTemplate = vkDestroyDescriptorUpdateTemplateKHR;
- vkDestroyDevice = PFN_vkDestroyDevice( vkGetDeviceProcAddr( device, "vkDestroyDevice" ) );
- vkDestroyEvent = PFN_vkDestroyEvent( vkGetDeviceProcAddr( device, "vkDestroyEvent" ) );
- vkDestroyFence = PFN_vkDestroyFence( vkGetDeviceProcAddr( device, "vkDestroyFence" ) );
+ vkDestroyDescriptorSetLayout =
+ PFN_vkDestroyDescriptorSetLayout( vkGetDeviceProcAddr( device, "vkDestroyDescriptorSetLayout" ) );
+ vkDestroyDescriptorUpdateTemplate =
+ PFN_vkDestroyDescriptorUpdateTemplate( vkGetDeviceProcAddr( device, "vkDestroyDescriptorUpdateTemplate" ) );
+ vkDestroyDescriptorUpdateTemplateKHR = PFN_vkDestroyDescriptorUpdateTemplateKHR(
+ vkGetDeviceProcAddr( device, "vkDestroyDescriptorUpdateTemplateKHR" ) );
+ if ( !vkDestroyDescriptorUpdateTemplate )
+ vkDestroyDescriptorUpdateTemplate = vkDestroyDescriptorUpdateTemplateKHR;
+ vkDestroyDevice = PFN_vkDestroyDevice( vkGetDeviceProcAddr( device, "vkDestroyDevice" ) );
+ vkDestroyEvent = PFN_vkDestroyEvent( vkGetDeviceProcAddr( device, "vkDestroyEvent" ) );
+ vkDestroyFence = PFN_vkDestroyFence( vkGetDeviceProcAddr( device, "vkDestroyFence" ) );
vkDestroyFramebuffer = PFN_vkDestroyFramebuffer( vkGetDeviceProcAddr( device, "vkDestroyFramebuffer" ) );
- vkDestroyImage = PFN_vkDestroyImage( vkGetDeviceProcAddr( device, "vkDestroyImage" ) );
- vkDestroyImageView = PFN_vkDestroyImageView( vkGetDeviceProcAddr( device, "vkDestroyImageView" ) );
- vkDestroyIndirectCommandsLayoutNV = PFN_vkDestroyIndirectCommandsLayoutNV( vkGetDeviceProcAddr( device, "vkDestroyIndirectCommandsLayoutNV" ) );
- vkDestroyPipeline = PFN_vkDestroyPipeline( vkGetDeviceProcAddr( device, "vkDestroyPipeline" ) );
- vkDestroyPipelineCache = PFN_vkDestroyPipelineCache( vkGetDeviceProcAddr( device, "vkDestroyPipelineCache" ) );
+ vkDestroyImage = PFN_vkDestroyImage( vkGetDeviceProcAddr( device, "vkDestroyImage" ) );
+ vkDestroyImageView = PFN_vkDestroyImageView( vkGetDeviceProcAddr( device, "vkDestroyImageView" ) );
+ vkDestroyIndirectCommandsLayoutNV =
+ PFN_vkDestroyIndirectCommandsLayoutNV( vkGetDeviceProcAddr( device, "vkDestroyIndirectCommandsLayoutNV" ) );
+ vkDestroyPipeline = PFN_vkDestroyPipeline( vkGetDeviceProcAddr( device, "vkDestroyPipeline" ) );
+ vkDestroyPipelineCache = PFN_vkDestroyPipelineCache( vkGetDeviceProcAddr( device, "vkDestroyPipelineCache" ) );
vkDestroyPipelineLayout = PFN_vkDestroyPipelineLayout( vkGetDeviceProcAddr( device, "vkDestroyPipelineLayout" ) );
- vkDestroyPrivateDataSlotEXT = PFN_vkDestroyPrivateDataSlotEXT( vkGetDeviceProcAddr( device, "vkDestroyPrivateDataSlotEXT" ) );
- vkDestroyQueryPool = PFN_vkDestroyQueryPool( vkGetDeviceProcAddr( device, "vkDestroyQueryPool" ) );
+ vkDestroyPrivateDataSlotEXT =
+ PFN_vkDestroyPrivateDataSlotEXT( vkGetDeviceProcAddr( device, "vkDestroyPrivateDataSlotEXT" ) );
+ vkDestroyQueryPool = PFN_vkDestroyQueryPool( vkGetDeviceProcAddr( device, "vkDestroyQueryPool" ) );
vkDestroyRenderPass = PFN_vkDestroyRenderPass( vkGetDeviceProcAddr( device, "vkDestroyRenderPass" ) );
- vkDestroySampler = PFN_vkDestroySampler( vkGetDeviceProcAddr( device, "vkDestroySampler" ) );
- vkDestroySamplerYcbcrConversionKHR = PFN_vkDestroySamplerYcbcrConversionKHR( vkGetDeviceProcAddr( device, "vkDestroySamplerYcbcrConversionKHR" ) );
- vkDestroySamplerYcbcrConversion = PFN_vkDestroySamplerYcbcrConversion( vkGetDeviceProcAddr( device, "vkDestroySamplerYcbcrConversion" ) );
- if ( !vkDestroySamplerYcbcrConversion ) vkDestroySamplerYcbcrConversion = vkDestroySamplerYcbcrConversionKHR;
- vkDestroySemaphore = PFN_vkDestroySemaphore( vkGetDeviceProcAddr( device, "vkDestroySemaphore" ) );
+ vkDestroySampler = PFN_vkDestroySampler( vkGetDeviceProcAddr( device, "vkDestroySampler" ) );
+ vkDestroySamplerYcbcrConversion =
+ PFN_vkDestroySamplerYcbcrConversion( vkGetDeviceProcAddr( device, "vkDestroySamplerYcbcrConversion" ) );
+ vkDestroySamplerYcbcrConversionKHR =
+ PFN_vkDestroySamplerYcbcrConversionKHR( vkGetDeviceProcAddr( device, "vkDestroySamplerYcbcrConversionKHR" ) );
+ if ( !vkDestroySamplerYcbcrConversion )
+ vkDestroySamplerYcbcrConversion = vkDestroySamplerYcbcrConversionKHR;
+ vkDestroySemaphore = PFN_vkDestroySemaphore( vkGetDeviceProcAddr( device, "vkDestroySemaphore" ) );
vkDestroyShaderModule = PFN_vkDestroyShaderModule( vkGetDeviceProcAddr( device, "vkDestroyShaderModule" ) );
vkDestroySwapchainKHR = PFN_vkDestroySwapchainKHR( vkGetDeviceProcAddr( device, "vkDestroySwapchainKHR" ) );
- vkDestroyValidationCacheEXT = PFN_vkDestroyValidationCacheEXT( vkGetDeviceProcAddr( device, "vkDestroyValidationCacheEXT" ) );
+ vkDestroyValidationCacheEXT =
+ PFN_vkDestroyValidationCacheEXT( vkGetDeviceProcAddr( device, "vkDestroyValidationCacheEXT" ) );
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ vkDestroyVideoSessionKHR =
+ PFN_vkDestroyVideoSessionKHR( vkGetDeviceProcAddr( device, "vkDestroyVideoSessionKHR" ) );
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ vkDestroyVideoSessionParametersKHR =
+ PFN_vkDestroyVideoSessionParametersKHR( vkGetDeviceProcAddr( device, "vkDestroyVideoSessionParametersKHR" ) );
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
vkDeviceWaitIdle = PFN_vkDeviceWaitIdle( vkGetDeviceProcAddr( device, "vkDeviceWaitIdle" ) );
- vkDisplayPowerControlEXT = PFN_vkDisplayPowerControlEXT( vkGetDeviceProcAddr( device, "vkDisplayPowerControlEXT" ) );
+ vkDisplayPowerControlEXT =
+ PFN_vkDisplayPowerControlEXT( vkGetDeviceProcAddr( device, "vkDisplayPowerControlEXT" ) );
vkEndCommandBuffer = PFN_vkEndCommandBuffer( vkGetDeviceProcAddr( device, "vkEndCommandBuffer" ) );
- vkFlushMappedMemoryRanges = PFN_vkFlushMappedMemoryRanges( vkGetDeviceProcAddr( device, "vkFlushMappedMemoryRanges" ) );
+ vkFlushMappedMemoryRanges =
+ PFN_vkFlushMappedMemoryRanges( vkGetDeviceProcAddr( device, "vkFlushMappedMemoryRanges" ) );
vkFreeCommandBuffers = PFN_vkFreeCommandBuffers( vkGetDeviceProcAddr( device, "vkFreeCommandBuffers" ) );
vkFreeDescriptorSets = PFN_vkFreeDescriptorSets( vkGetDeviceProcAddr( device, "vkFreeDescriptorSets" ) );
- vkFreeMemory = PFN_vkFreeMemory( vkGetDeviceProcAddr( device, "vkFreeMemory" ) );
- vkGetAccelerationStructureBuildSizesKHR = PFN_vkGetAccelerationStructureBuildSizesKHR( vkGetDeviceProcAddr( device, "vkGetAccelerationStructureBuildSizesKHR" ) );
- vkGetAccelerationStructureDeviceAddressKHR = PFN_vkGetAccelerationStructureDeviceAddressKHR( vkGetDeviceProcAddr( device, "vkGetAccelerationStructureDeviceAddressKHR" ) );
- vkGetAccelerationStructureHandleNV = PFN_vkGetAccelerationStructureHandleNV( vkGetDeviceProcAddr( device, "vkGetAccelerationStructureHandleNV" ) );
- vkGetAccelerationStructureMemoryRequirementsNV = PFN_vkGetAccelerationStructureMemoryRequirementsNV( vkGetDeviceProcAddr( device, "vkGetAccelerationStructureMemoryRequirementsNV" ) );
-#ifdef VK_USE_PLATFORM_ANDROID_KHR
- vkGetAndroidHardwareBufferPropertiesANDROID = PFN_vkGetAndroidHardwareBufferPropertiesANDROID( vkGetDeviceProcAddr( device, "vkGetAndroidHardwareBufferPropertiesANDROID" ) );
+ vkFreeMemory = PFN_vkFreeMemory( vkGetDeviceProcAddr( device, "vkFreeMemory" ) );
+ vkGetAccelerationStructureBuildSizesKHR = PFN_vkGetAccelerationStructureBuildSizesKHR(
+ vkGetDeviceProcAddr( device, "vkGetAccelerationStructureBuildSizesKHR" ) );
+ vkGetAccelerationStructureDeviceAddressKHR = PFN_vkGetAccelerationStructureDeviceAddressKHR(
+ vkGetDeviceProcAddr( device, "vkGetAccelerationStructureDeviceAddressKHR" ) );
+ vkGetAccelerationStructureHandleNV =
+ PFN_vkGetAccelerationStructureHandleNV( vkGetDeviceProcAddr( device, "vkGetAccelerationStructureHandleNV" ) );
+ vkGetAccelerationStructureMemoryRequirementsNV = PFN_vkGetAccelerationStructureMemoryRequirementsNV(
+ vkGetDeviceProcAddr( device, "vkGetAccelerationStructureMemoryRequirementsNV" ) );
+#if defined( VK_USE_PLATFORM_ANDROID_KHR )
+ vkGetAndroidHardwareBufferPropertiesANDROID = PFN_vkGetAndroidHardwareBufferPropertiesANDROID(
+ vkGetDeviceProcAddr( device, "vkGetAndroidHardwareBufferPropertiesANDROID" ) );
#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
- vkGetBufferDeviceAddressEXT = PFN_vkGetBufferDeviceAddressEXT( vkGetDeviceProcAddr( device, "vkGetBufferDeviceAddressEXT" ) );
- vkGetBufferDeviceAddressKHR = PFN_vkGetBufferDeviceAddressKHR( vkGetDeviceProcAddr( device, "vkGetBufferDeviceAddressKHR" ) );
- vkGetBufferDeviceAddress = PFN_vkGetBufferDeviceAddress( vkGetDeviceProcAddr( device, "vkGetBufferDeviceAddress" ) );
- if ( !vkGetBufferDeviceAddress ) vkGetBufferDeviceAddress = vkGetBufferDeviceAddressKHR;
- if ( !vkGetBufferDeviceAddress ) vkGetBufferDeviceAddress = vkGetBufferDeviceAddressEXT;
- vkGetBufferMemoryRequirements = PFN_vkGetBufferMemoryRequirements( vkGetDeviceProcAddr( device, "vkGetBufferMemoryRequirements" ) );
- vkGetBufferMemoryRequirements2KHR = PFN_vkGetBufferMemoryRequirements2KHR( vkGetDeviceProcAddr( device, "vkGetBufferMemoryRequirements2KHR" ) );
- vkGetBufferMemoryRequirements2 = PFN_vkGetBufferMemoryRequirements2( vkGetDeviceProcAddr( device, "vkGetBufferMemoryRequirements2" ) );
- if ( !vkGetBufferMemoryRequirements2 ) vkGetBufferMemoryRequirements2 = vkGetBufferMemoryRequirements2KHR;
- vkGetBufferOpaqueCaptureAddressKHR = PFN_vkGetBufferOpaqueCaptureAddressKHR( vkGetDeviceProcAddr( device, "vkGetBufferOpaqueCaptureAddressKHR" ) );
- vkGetBufferOpaqueCaptureAddress = PFN_vkGetBufferOpaqueCaptureAddress( vkGetDeviceProcAddr( device, "vkGetBufferOpaqueCaptureAddress" ) );
- if ( !vkGetBufferOpaqueCaptureAddress ) vkGetBufferOpaqueCaptureAddress = vkGetBufferOpaqueCaptureAddressKHR;
- vkGetCalibratedTimestampsEXT = PFN_vkGetCalibratedTimestampsEXT( vkGetDeviceProcAddr( device, "vkGetCalibratedTimestampsEXT" ) );
- vkGetDeferredOperationMaxConcurrencyKHR = PFN_vkGetDeferredOperationMaxConcurrencyKHR( vkGetDeviceProcAddr( device, "vkGetDeferredOperationMaxConcurrencyKHR" ) );
- vkGetDeferredOperationResultKHR = PFN_vkGetDeferredOperationResultKHR( vkGetDeviceProcAddr( device, "vkGetDeferredOperationResultKHR" ) );
- vkGetDescriptorSetLayoutSupportKHR = PFN_vkGetDescriptorSetLayoutSupportKHR( vkGetDeviceProcAddr( device, "vkGetDescriptorSetLayoutSupportKHR" ) );
- vkGetDescriptorSetLayoutSupport = PFN_vkGetDescriptorSetLayoutSupport( vkGetDeviceProcAddr( device, "vkGetDescriptorSetLayoutSupport" ) );
- if ( !vkGetDescriptorSetLayoutSupport ) vkGetDescriptorSetLayoutSupport = vkGetDescriptorSetLayoutSupportKHR;
- vkGetDeviceAccelerationStructureCompatibilityKHR = PFN_vkGetDeviceAccelerationStructureCompatibilityKHR( vkGetDeviceProcAddr( device, "vkGetDeviceAccelerationStructureCompatibilityKHR" ) );
- vkGetDeviceGroupPeerMemoryFeaturesKHR = PFN_vkGetDeviceGroupPeerMemoryFeaturesKHR( vkGetDeviceProcAddr( device, "vkGetDeviceGroupPeerMemoryFeaturesKHR" ) );
- vkGetDeviceGroupPeerMemoryFeatures = PFN_vkGetDeviceGroupPeerMemoryFeatures( vkGetDeviceProcAddr( device, "vkGetDeviceGroupPeerMemoryFeatures" ) );
- if ( !vkGetDeviceGroupPeerMemoryFeatures ) vkGetDeviceGroupPeerMemoryFeatures = vkGetDeviceGroupPeerMemoryFeaturesKHR;
- vkGetDeviceGroupPresentCapabilitiesKHR = PFN_vkGetDeviceGroupPresentCapabilitiesKHR( vkGetDeviceProcAddr( device, "vkGetDeviceGroupPresentCapabilitiesKHR" ) );
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- vkGetDeviceGroupSurfacePresentModes2EXT = PFN_vkGetDeviceGroupSurfacePresentModes2EXT( vkGetDeviceProcAddr( device, "vkGetDeviceGroupSurfacePresentModes2EXT" ) );
+ vkGetBufferDeviceAddress =
+ PFN_vkGetBufferDeviceAddress( vkGetDeviceProcAddr( device, "vkGetBufferDeviceAddress" ) );
+ vkGetBufferDeviceAddressEXT =
+ PFN_vkGetBufferDeviceAddressEXT( vkGetDeviceProcAddr( device, "vkGetBufferDeviceAddressEXT" ) );
+ if ( !vkGetBufferDeviceAddress )
+ vkGetBufferDeviceAddress = vkGetBufferDeviceAddressEXT;
+ vkGetBufferDeviceAddressKHR =
+ PFN_vkGetBufferDeviceAddressKHR( vkGetDeviceProcAddr( device, "vkGetBufferDeviceAddressKHR" ) );
+ if ( !vkGetBufferDeviceAddress )
+ vkGetBufferDeviceAddress = vkGetBufferDeviceAddressKHR;
+ vkGetBufferMemoryRequirements =
+ PFN_vkGetBufferMemoryRequirements( vkGetDeviceProcAddr( device, "vkGetBufferMemoryRequirements" ) );
+ vkGetBufferMemoryRequirements2 =
+ PFN_vkGetBufferMemoryRequirements2( vkGetDeviceProcAddr( device, "vkGetBufferMemoryRequirements2" ) );
+ vkGetBufferMemoryRequirements2KHR =
+ PFN_vkGetBufferMemoryRequirements2KHR( vkGetDeviceProcAddr( device, "vkGetBufferMemoryRequirements2KHR" ) );
+ if ( !vkGetBufferMemoryRequirements2 )
+ vkGetBufferMemoryRequirements2 = vkGetBufferMemoryRequirements2KHR;
+ vkGetBufferOpaqueCaptureAddress =
+ PFN_vkGetBufferOpaqueCaptureAddress( vkGetDeviceProcAddr( device, "vkGetBufferOpaqueCaptureAddress" ) );
+ vkGetBufferOpaqueCaptureAddressKHR =
+ PFN_vkGetBufferOpaqueCaptureAddressKHR( vkGetDeviceProcAddr( device, "vkGetBufferOpaqueCaptureAddressKHR" ) );
+ if ( !vkGetBufferOpaqueCaptureAddress )
+ vkGetBufferOpaqueCaptureAddress = vkGetBufferOpaqueCaptureAddressKHR;
+ vkGetCalibratedTimestampsEXT =
+ PFN_vkGetCalibratedTimestampsEXT( vkGetDeviceProcAddr( device, "vkGetCalibratedTimestampsEXT" ) );
+ vkGetDeferredOperationMaxConcurrencyKHR = PFN_vkGetDeferredOperationMaxConcurrencyKHR(
+ vkGetDeviceProcAddr( device, "vkGetDeferredOperationMaxConcurrencyKHR" ) );
+ vkGetDeferredOperationResultKHR =
+ PFN_vkGetDeferredOperationResultKHR( vkGetDeviceProcAddr( device, "vkGetDeferredOperationResultKHR" ) );
+ vkGetDescriptorSetLayoutSupport =
+ PFN_vkGetDescriptorSetLayoutSupport( vkGetDeviceProcAddr( device, "vkGetDescriptorSetLayoutSupport" ) );
+ vkGetDescriptorSetLayoutSupportKHR =
+ PFN_vkGetDescriptorSetLayoutSupportKHR( vkGetDeviceProcAddr( device, "vkGetDescriptorSetLayoutSupportKHR" ) );
+ if ( !vkGetDescriptorSetLayoutSupport )
+ vkGetDescriptorSetLayoutSupport = vkGetDescriptorSetLayoutSupportKHR;
+ vkGetDeviceAccelerationStructureCompatibilityKHR = PFN_vkGetDeviceAccelerationStructureCompatibilityKHR(
+ vkGetDeviceProcAddr( device, "vkGetDeviceAccelerationStructureCompatibilityKHR" ) );
+ vkGetDeviceGroupPeerMemoryFeatures =
+ PFN_vkGetDeviceGroupPeerMemoryFeatures( vkGetDeviceProcAddr( device, "vkGetDeviceGroupPeerMemoryFeatures" ) );
+ vkGetDeviceGroupPeerMemoryFeaturesKHR = PFN_vkGetDeviceGroupPeerMemoryFeaturesKHR(
+ vkGetDeviceProcAddr( device, "vkGetDeviceGroupPeerMemoryFeaturesKHR" ) );
+ if ( !vkGetDeviceGroupPeerMemoryFeatures )
+ vkGetDeviceGroupPeerMemoryFeatures = vkGetDeviceGroupPeerMemoryFeaturesKHR;
+ vkGetDeviceGroupPresentCapabilitiesKHR = PFN_vkGetDeviceGroupPresentCapabilitiesKHR(
+ vkGetDeviceProcAddr( device, "vkGetDeviceGroupPresentCapabilitiesKHR" ) );
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ vkGetDeviceGroupSurfacePresentModes2EXT = PFN_vkGetDeviceGroupSurfacePresentModes2EXT(
+ vkGetDeviceProcAddr( device, "vkGetDeviceGroupSurfacePresentModes2EXT" ) );
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
- vkGetDeviceGroupSurfacePresentModesKHR = PFN_vkGetDeviceGroupSurfacePresentModesKHR( vkGetDeviceProcAddr( device, "vkGetDeviceGroupSurfacePresentModesKHR" ) );
- vkGetDeviceMemoryCommitment = PFN_vkGetDeviceMemoryCommitment( vkGetDeviceProcAddr( device, "vkGetDeviceMemoryCommitment" ) );
- vkGetDeviceMemoryOpaqueCaptureAddressKHR = PFN_vkGetDeviceMemoryOpaqueCaptureAddressKHR( vkGetDeviceProcAddr( device, "vkGetDeviceMemoryOpaqueCaptureAddressKHR" ) );
- vkGetDeviceMemoryOpaqueCaptureAddress = PFN_vkGetDeviceMemoryOpaqueCaptureAddress( vkGetDeviceProcAddr( device, "vkGetDeviceMemoryOpaqueCaptureAddress" ) );
- if ( !vkGetDeviceMemoryOpaqueCaptureAddress ) vkGetDeviceMemoryOpaqueCaptureAddress = vkGetDeviceMemoryOpaqueCaptureAddressKHR;
+ vkGetDeviceGroupSurfacePresentModesKHR = PFN_vkGetDeviceGroupSurfacePresentModesKHR(
+ vkGetDeviceProcAddr( device, "vkGetDeviceGroupSurfacePresentModesKHR" ) );
+ vkGetDeviceMemoryCommitment =
+ PFN_vkGetDeviceMemoryCommitment( vkGetDeviceProcAddr( device, "vkGetDeviceMemoryCommitment" ) );
+ vkGetDeviceMemoryOpaqueCaptureAddress = PFN_vkGetDeviceMemoryOpaqueCaptureAddress(
+ vkGetDeviceProcAddr( device, "vkGetDeviceMemoryOpaqueCaptureAddress" ) );
+ vkGetDeviceMemoryOpaqueCaptureAddressKHR = PFN_vkGetDeviceMemoryOpaqueCaptureAddressKHR(
+ vkGetDeviceProcAddr( device, "vkGetDeviceMemoryOpaqueCaptureAddressKHR" ) );
+ if ( !vkGetDeviceMemoryOpaqueCaptureAddress )
+ vkGetDeviceMemoryOpaqueCaptureAddress = vkGetDeviceMemoryOpaqueCaptureAddressKHR;
vkGetDeviceProcAddr = PFN_vkGetDeviceProcAddr( vkGetDeviceProcAddr( device, "vkGetDeviceProcAddr" ) );
- vkGetDeviceQueue = PFN_vkGetDeviceQueue( vkGetDeviceProcAddr( device, "vkGetDeviceQueue" ) );
- vkGetDeviceQueue2 = PFN_vkGetDeviceQueue2( vkGetDeviceProcAddr( device, "vkGetDeviceQueue2" ) );
- vkGetEventStatus = PFN_vkGetEventStatus( vkGetDeviceProcAddr( device, "vkGetEventStatus" ) );
- vkGetFenceFdKHR = PFN_vkGetFenceFdKHR( vkGetDeviceProcAddr( device, "vkGetFenceFdKHR" ) );
- vkGetFenceStatus = PFN_vkGetFenceStatus( vkGetDeviceProcAddr( device, "vkGetFenceStatus" ) );
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- vkGetFenceWin32HandleKHR = PFN_vkGetFenceWin32HandleKHR( vkGetDeviceProcAddr( device, "vkGetFenceWin32HandleKHR" ) );
+ vkGetDeviceQueue = PFN_vkGetDeviceQueue( vkGetDeviceProcAddr( device, "vkGetDeviceQueue" ) );
+ vkGetDeviceQueue2 = PFN_vkGetDeviceQueue2( vkGetDeviceProcAddr( device, "vkGetDeviceQueue2" ) );
+ vkGetEventStatus = PFN_vkGetEventStatus( vkGetDeviceProcAddr( device, "vkGetEventStatus" ) );
+ vkGetFenceFdKHR = PFN_vkGetFenceFdKHR( vkGetDeviceProcAddr( device, "vkGetFenceFdKHR" ) );
+ vkGetFenceStatus = PFN_vkGetFenceStatus( vkGetDeviceProcAddr( device, "vkGetFenceStatus" ) );
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ vkGetFenceWin32HandleKHR =
+ PFN_vkGetFenceWin32HandleKHR( vkGetDeviceProcAddr( device, "vkGetFenceWin32HandleKHR" ) );
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
- vkGetGeneratedCommandsMemoryRequirementsNV = PFN_vkGetGeneratedCommandsMemoryRequirementsNV( vkGetDeviceProcAddr( device, "vkGetGeneratedCommandsMemoryRequirementsNV" ) );
- vkGetImageDrmFormatModifierPropertiesEXT = PFN_vkGetImageDrmFormatModifierPropertiesEXT( vkGetDeviceProcAddr( device, "vkGetImageDrmFormatModifierPropertiesEXT" ) );
- vkGetImageMemoryRequirements = PFN_vkGetImageMemoryRequirements( vkGetDeviceProcAddr( device, "vkGetImageMemoryRequirements" ) );
- vkGetImageMemoryRequirements2KHR = PFN_vkGetImageMemoryRequirements2KHR( vkGetDeviceProcAddr( device, "vkGetImageMemoryRequirements2KHR" ) );
- vkGetImageMemoryRequirements2 = PFN_vkGetImageMemoryRequirements2( vkGetDeviceProcAddr( device, "vkGetImageMemoryRequirements2" ) );
- if ( !vkGetImageMemoryRequirements2 ) vkGetImageMemoryRequirements2 = vkGetImageMemoryRequirements2KHR;
- vkGetImageSparseMemoryRequirements = PFN_vkGetImageSparseMemoryRequirements( vkGetDeviceProcAddr( device, "vkGetImageSparseMemoryRequirements" ) );
- vkGetImageSparseMemoryRequirements2KHR = PFN_vkGetImageSparseMemoryRequirements2KHR( vkGetDeviceProcAddr( device, "vkGetImageSparseMemoryRequirements2KHR" ) );
- vkGetImageSparseMemoryRequirements2 = PFN_vkGetImageSparseMemoryRequirements2( vkGetDeviceProcAddr( device, "vkGetImageSparseMemoryRequirements2" ) );
- if ( !vkGetImageSparseMemoryRequirements2 ) vkGetImageSparseMemoryRequirements2 = vkGetImageSparseMemoryRequirements2KHR;
- vkGetImageSubresourceLayout = PFN_vkGetImageSubresourceLayout( vkGetDeviceProcAddr( device, "vkGetImageSubresourceLayout" ) );
- vkGetImageViewAddressNVX = PFN_vkGetImageViewAddressNVX( vkGetDeviceProcAddr( device, "vkGetImageViewAddressNVX" ) );
+ vkGetGeneratedCommandsMemoryRequirementsNV = PFN_vkGetGeneratedCommandsMemoryRequirementsNV(
+ vkGetDeviceProcAddr( device, "vkGetGeneratedCommandsMemoryRequirementsNV" ) );
+ vkGetImageDrmFormatModifierPropertiesEXT = PFN_vkGetImageDrmFormatModifierPropertiesEXT(
+ vkGetDeviceProcAddr( device, "vkGetImageDrmFormatModifierPropertiesEXT" ) );
+ vkGetImageMemoryRequirements =
+ PFN_vkGetImageMemoryRequirements( vkGetDeviceProcAddr( device, "vkGetImageMemoryRequirements" ) );
+ vkGetImageMemoryRequirements2 =
+ PFN_vkGetImageMemoryRequirements2( vkGetDeviceProcAddr( device, "vkGetImageMemoryRequirements2" ) );
+ vkGetImageMemoryRequirements2KHR =
+ PFN_vkGetImageMemoryRequirements2KHR( vkGetDeviceProcAddr( device, "vkGetImageMemoryRequirements2KHR" ) );
+ if ( !vkGetImageMemoryRequirements2 )
+ vkGetImageMemoryRequirements2 = vkGetImageMemoryRequirements2KHR;
+ vkGetImageSparseMemoryRequirements =
+ PFN_vkGetImageSparseMemoryRequirements( vkGetDeviceProcAddr( device, "vkGetImageSparseMemoryRequirements" ) );
+ vkGetImageSparseMemoryRequirements2 =
+ PFN_vkGetImageSparseMemoryRequirements2( vkGetDeviceProcAddr( device, "vkGetImageSparseMemoryRequirements2" ) );
+ vkGetImageSparseMemoryRequirements2KHR = PFN_vkGetImageSparseMemoryRequirements2KHR(
+ vkGetDeviceProcAddr( device, "vkGetImageSparseMemoryRequirements2KHR" ) );
+ if ( !vkGetImageSparseMemoryRequirements2 )
+ vkGetImageSparseMemoryRequirements2 = vkGetImageSparseMemoryRequirements2KHR;
+ vkGetImageSubresourceLayout =
+ PFN_vkGetImageSubresourceLayout( vkGetDeviceProcAddr( device, "vkGetImageSubresourceLayout" ) );
+ vkGetImageViewAddressNVX =
+ PFN_vkGetImageViewAddressNVX( vkGetDeviceProcAddr( device, "vkGetImageViewAddressNVX" ) );
vkGetImageViewHandleNVX = PFN_vkGetImageViewHandleNVX( vkGetDeviceProcAddr( device, "vkGetImageViewHandleNVX" ) );
-#ifdef VK_USE_PLATFORM_ANDROID_KHR
- vkGetMemoryAndroidHardwareBufferANDROID = PFN_vkGetMemoryAndroidHardwareBufferANDROID( vkGetDeviceProcAddr( device, "vkGetMemoryAndroidHardwareBufferANDROID" ) );
+#if defined( VK_USE_PLATFORM_ANDROID_KHR )
+ vkGetMemoryAndroidHardwareBufferANDROID = PFN_vkGetMemoryAndroidHardwareBufferANDROID(
+ vkGetDeviceProcAddr( device, "vkGetMemoryAndroidHardwareBufferANDROID" ) );
#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
vkGetMemoryFdKHR = PFN_vkGetMemoryFdKHR( vkGetDeviceProcAddr( device, "vkGetMemoryFdKHR" ) );
- vkGetMemoryFdPropertiesKHR = PFN_vkGetMemoryFdPropertiesKHR( vkGetDeviceProcAddr( device, "vkGetMemoryFdPropertiesKHR" ) );
- vkGetMemoryHostPointerPropertiesEXT = PFN_vkGetMemoryHostPointerPropertiesEXT( vkGetDeviceProcAddr( device, "vkGetMemoryHostPointerPropertiesEXT" ) );
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- vkGetMemoryWin32HandleKHR = PFN_vkGetMemoryWin32HandleKHR( vkGetDeviceProcAddr( device, "vkGetMemoryWin32HandleKHR" ) );
+ vkGetMemoryFdPropertiesKHR =
+ PFN_vkGetMemoryFdPropertiesKHR( vkGetDeviceProcAddr( device, "vkGetMemoryFdPropertiesKHR" ) );
+ vkGetMemoryHostPointerPropertiesEXT =
+ PFN_vkGetMemoryHostPointerPropertiesEXT( vkGetDeviceProcAddr( device, "vkGetMemoryHostPointerPropertiesEXT" ) );
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ vkGetMemoryWin32HandleKHR =
+ PFN_vkGetMemoryWin32HandleKHR( vkGetDeviceProcAddr( device, "vkGetMemoryWin32HandleKHR" ) );
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- vkGetMemoryWin32HandleNV = PFN_vkGetMemoryWin32HandleNV( vkGetDeviceProcAddr( device, "vkGetMemoryWin32HandleNV" ) );
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ vkGetMemoryWin32HandleNV =
+ PFN_vkGetMemoryWin32HandleNV( vkGetDeviceProcAddr( device, "vkGetMemoryWin32HandleNV" ) );
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- vkGetMemoryWin32HandlePropertiesKHR = PFN_vkGetMemoryWin32HandlePropertiesKHR( vkGetDeviceProcAddr( device, "vkGetMemoryWin32HandlePropertiesKHR" ) );
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ vkGetMemoryWin32HandlePropertiesKHR =
+ PFN_vkGetMemoryWin32HandlePropertiesKHR( vkGetDeviceProcAddr( device, "vkGetMemoryWin32HandlePropertiesKHR" ) );
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
- vkGetPastPresentationTimingGOOGLE = PFN_vkGetPastPresentationTimingGOOGLE( vkGetDeviceProcAddr( device, "vkGetPastPresentationTimingGOOGLE" ) );
- vkGetPerformanceParameterINTEL = PFN_vkGetPerformanceParameterINTEL( vkGetDeviceProcAddr( device, "vkGetPerformanceParameterINTEL" ) );
+#if defined( VK_USE_PLATFORM_FUCHSIA )
+ vkGetMemoryZirconHandleFUCHSIA =
+ PFN_vkGetMemoryZirconHandleFUCHSIA( vkGetDeviceProcAddr( device, "vkGetMemoryZirconHandleFUCHSIA" ) );
+#endif /*VK_USE_PLATFORM_FUCHSIA*/
+#if defined( VK_USE_PLATFORM_FUCHSIA )
+ vkGetMemoryZirconHandlePropertiesFUCHSIA = PFN_vkGetMemoryZirconHandlePropertiesFUCHSIA(
+ vkGetDeviceProcAddr( device, "vkGetMemoryZirconHandlePropertiesFUCHSIA" ) );
+#endif /*VK_USE_PLATFORM_FUCHSIA*/
+ vkGetPastPresentationTimingGOOGLE =
+ PFN_vkGetPastPresentationTimingGOOGLE( vkGetDeviceProcAddr( device, "vkGetPastPresentationTimingGOOGLE" ) );
+ vkGetPerformanceParameterINTEL =
+ PFN_vkGetPerformanceParameterINTEL( vkGetDeviceProcAddr( device, "vkGetPerformanceParameterINTEL" ) );
vkGetPipelineCacheData = PFN_vkGetPipelineCacheData( vkGetDeviceProcAddr( device, "vkGetPipelineCacheData" ) );
- vkGetPipelineExecutableInternalRepresentationsKHR = PFN_vkGetPipelineExecutableInternalRepresentationsKHR( vkGetDeviceProcAddr( device, "vkGetPipelineExecutableInternalRepresentationsKHR" ) );
- vkGetPipelineExecutablePropertiesKHR = PFN_vkGetPipelineExecutablePropertiesKHR( vkGetDeviceProcAddr( device, "vkGetPipelineExecutablePropertiesKHR" ) );
- vkGetPipelineExecutableStatisticsKHR = PFN_vkGetPipelineExecutableStatisticsKHR( vkGetDeviceProcAddr( device, "vkGetPipelineExecutableStatisticsKHR" ) );
- vkGetPrivateDataEXT = PFN_vkGetPrivateDataEXT( vkGetDeviceProcAddr( device, "vkGetPrivateDataEXT" ) );
+ vkGetPipelineExecutableInternalRepresentationsKHR = PFN_vkGetPipelineExecutableInternalRepresentationsKHR(
+ vkGetDeviceProcAddr( device, "vkGetPipelineExecutableInternalRepresentationsKHR" ) );
+ vkGetPipelineExecutablePropertiesKHR = PFN_vkGetPipelineExecutablePropertiesKHR(
+ vkGetDeviceProcAddr( device, "vkGetPipelineExecutablePropertiesKHR" ) );
+ vkGetPipelineExecutableStatisticsKHR = PFN_vkGetPipelineExecutableStatisticsKHR(
+ vkGetDeviceProcAddr( device, "vkGetPipelineExecutableStatisticsKHR" ) );
+ vkGetPrivateDataEXT = PFN_vkGetPrivateDataEXT( vkGetDeviceProcAddr( device, "vkGetPrivateDataEXT" ) );
vkGetQueryPoolResults = PFN_vkGetQueryPoolResults( vkGetDeviceProcAddr( device, "vkGetQueryPoolResults" ) );
- vkGetQueueCheckpointDataNV = PFN_vkGetQueueCheckpointDataNV( vkGetDeviceProcAddr( device, "vkGetQueueCheckpointDataNV" ) );
- vkGetRayTracingCaptureReplayShaderGroupHandlesKHR = PFN_vkGetRayTracingCaptureReplayShaderGroupHandlesKHR( vkGetDeviceProcAddr( device, "vkGetRayTracingCaptureReplayShaderGroupHandlesKHR" ) );
- vkGetRayTracingShaderGroupHandlesNV = PFN_vkGetRayTracingShaderGroupHandlesNV( vkGetDeviceProcAddr( device, "vkGetRayTracingShaderGroupHandlesNV" ) );
- vkGetRayTracingShaderGroupHandlesKHR = PFN_vkGetRayTracingShaderGroupHandlesKHR( vkGetDeviceProcAddr( device, "vkGetRayTracingShaderGroupHandlesKHR" ) );
- if ( !vkGetRayTracingShaderGroupHandlesKHR ) vkGetRayTracingShaderGroupHandlesKHR = vkGetRayTracingShaderGroupHandlesNV;
- vkGetRayTracingShaderGroupStackSizeKHR = PFN_vkGetRayTracingShaderGroupStackSizeKHR( vkGetDeviceProcAddr( device, "vkGetRayTracingShaderGroupStackSizeKHR" ) );
- vkGetRefreshCycleDurationGOOGLE = PFN_vkGetRefreshCycleDurationGOOGLE( vkGetDeviceProcAddr( device, "vkGetRefreshCycleDurationGOOGLE" ) );
- vkGetRenderAreaGranularity = PFN_vkGetRenderAreaGranularity( vkGetDeviceProcAddr( device, "vkGetRenderAreaGranularity" ) );
- vkGetSemaphoreCounterValueKHR = PFN_vkGetSemaphoreCounterValueKHR( vkGetDeviceProcAddr( device, "vkGetSemaphoreCounterValueKHR" ) );
- vkGetSemaphoreCounterValue = PFN_vkGetSemaphoreCounterValue( vkGetDeviceProcAddr( device, "vkGetSemaphoreCounterValue" ) );
- if ( !vkGetSemaphoreCounterValue ) vkGetSemaphoreCounterValue = vkGetSemaphoreCounterValueKHR;
+ vkGetQueueCheckpointData2NV =
+ PFN_vkGetQueueCheckpointData2NV( vkGetDeviceProcAddr( device, "vkGetQueueCheckpointData2NV" ) );
+ vkGetQueueCheckpointDataNV =
+ PFN_vkGetQueueCheckpointDataNV( vkGetDeviceProcAddr( device, "vkGetQueueCheckpointDataNV" ) );
+ vkGetRayTracingCaptureReplayShaderGroupHandlesKHR = PFN_vkGetRayTracingCaptureReplayShaderGroupHandlesKHR(
+ vkGetDeviceProcAddr( device, "vkGetRayTracingCaptureReplayShaderGroupHandlesKHR" ) );
+ vkGetRayTracingShaderGroupHandlesKHR = PFN_vkGetRayTracingShaderGroupHandlesKHR(
+ vkGetDeviceProcAddr( device, "vkGetRayTracingShaderGroupHandlesKHR" ) );
+ vkGetRayTracingShaderGroupHandlesNV =
+ PFN_vkGetRayTracingShaderGroupHandlesNV( vkGetDeviceProcAddr( device, "vkGetRayTracingShaderGroupHandlesNV" ) );
+ if ( !vkGetRayTracingShaderGroupHandlesKHR )
+ vkGetRayTracingShaderGroupHandlesKHR = vkGetRayTracingShaderGroupHandlesNV;
+ vkGetRayTracingShaderGroupStackSizeKHR = PFN_vkGetRayTracingShaderGroupStackSizeKHR(
+ vkGetDeviceProcAddr( device, "vkGetRayTracingShaderGroupStackSizeKHR" ) );
+ vkGetRefreshCycleDurationGOOGLE =
+ PFN_vkGetRefreshCycleDurationGOOGLE( vkGetDeviceProcAddr( device, "vkGetRefreshCycleDurationGOOGLE" ) );
+ vkGetRenderAreaGranularity =
+ PFN_vkGetRenderAreaGranularity( vkGetDeviceProcAddr( device, "vkGetRenderAreaGranularity" ) );
+ vkGetSemaphoreCounterValue =
+ PFN_vkGetSemaphoreCounterValue( vkGetDeviceProcAddr( device, "vkGetSemaphoreCounterValue" ) );
+ vkGetSemaphoreCounterValueKHR =
+ PFN_vkGetSemaphoreCounterValueKHR( vkGetDeviceProcAddr( device, "vkGetSemaphoreCounterValueKHR" ) );
+ if ( !vkGetSemaphoreCounterValue )
+ vkGetSemaphoreCounterValue = vkGetSemaphoreCounterValueKHR;
vkGetSemaphoreFdKHR = PFN_vkGetSemaphoreFdKHR( vkGetDeviceProcAddr( device, "vkGetSemaphoreFdKHR" ) );
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- vkGetSemaphoreWin32HandleKHR = PFN_vkGetSemaphoreWin32HandleKHR( vkGetDeviceProcAddr( device, "vkGetSemaphoreWin32HandleKHR" ) );
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ vkGetSemaphoreWin32HandleKHR =
+ PFN_vkGetSemaphoreWin32HandleKHR( vkGetDeviceProcAddr( device, "vkGetSemaphoreWin32HandleKHR" ) );
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+#if defined( VK_USE_PLATFORM_FUCHSIA )
+ vkGetSemaphoreZirconHandleFUCHSIA =
+ PFN_vkGetSemaphoreZirconHandleFUCHSIA( vkGetDeviceProcAddr( device, "vkGetSemaphoreZirconHandleFUCHSIA" ) );
+#endif /*VK_USE_PLATFORM_FUCHSIA*/
vkGetShaderInfoAMD = PFN_vkGetShaderInfoAMD( vkGetDeviceProcAddr( device, "vkGetShaderInfoAMD" ) );
- vkGetSwapchainCounterEXT = PFN_vkGetSwapchainCounterEXT( vkGetDeviceProcAddr( device, "vkGetSwapchainCounterEXT" ) );
+ vkGetSubpassShadingMaxWorkgroupSizeHUAWEI = PFN_vkGetSubpassShadingMaxWorkgroupSizeHUAWEI(
+ vkGetDeviceProcAddr( device, "vkGetSubpassShadingMaxWorkgroupSizeHUAWEI" ) );
+ vkGetSwapchainCounterEXT =
+ PFN_vkGetSwapchainCounterEXT( vkGetDeviceProcAddr( device, "vkGetSwapchainCounterEXT" ) );
vkGetSwapchainImagesKHR = PFN_vkGetSwapchainImagesKHR( vkGetDeviceProcAddr( device, "vkGetSwapchainImagesKHR" ) );
vkGetSwapchainStatusKHR = PFN_vkGetSwapchainStatusKHR( vkGetDeviceProcAddr( device, "vkGetSwapchainStatusKHR" ) );
- vkGetValidationCacheDataEXT = PFN_vkGetValidationCacheDataEXT( vkGetDeviceProcAddr( device, "vkGetValidationCacheDataEXT" ) );
+ vkGetValidationCacheDataEXT =
+ PFN_vkGetValidationCacheDataEXT( vkGetDeviceProcAddr( device, "vkGetValidationCacheDataEXT" ) );
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ vkGetVideoSessionMemoryRequirementsKHR = PFN_vkGetVideoSessionMemoryRequirementsKHR(
+ vkGetDeviceProcAddr( device, "vkGetVideoSessionMemoryRequirementsKHR" ) );
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
vkImportFenceFdKHR = PFN_vkImportFenceFdKHR( vkGetDeviceProcAddr( device, "vkImportFenceFdKHR" ) );
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- vkImportFenceWin32HandleKHR = PFN_vkImportFenceWin32HandleKHR( vkGetDeviceProcAddr( device, "vkImportFenceWin32HandleKHR" ) );
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ vkImportFenceWin32HandleKHR =
+ PFN_vkImportFenceWin32HandleKHR( vkGetDeviceProcAddr( device, "vkImportFenceWin32HandleKHR" ) );
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
vkImportSemaphoreFdKHR = PFN_vkImportSemaphoreFdKHR( vkGetDeviceProcAddr( device, "vkImportSemaphoreFdKHR" ) );
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- vkImportSemaphoreWin32HandleKHR = PFN_vkImportSemaphoreWin32HandleKHR( vkGetDeviceProcAddr( device, "vkImportSemaphoreWin32HandleKHR" ) );
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ vkImportSemaphoreWin32HandleKHR =
+ PFN_vkImportSemaphoreWin32HandleKHR( vkGetDeviceProcAddr( device, "vkImportSemaphoreWin32HandleKHR" ) );
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
- vkInitializePerformanceApiINTEL = PFN_vkInitializePerformanceApiINTEL( vkGetDeviceProcAddr( device, "vkInitializePerformanceApiINTEL" ) );
- vkInvalidateMappedMemoryRanges = PFN_vkInvalidateMappedMemoryRanges( vkGetDeviceProcAddr( device, "vkInvalidateMappedMemoryRanges" ) );
- vkMapMemory = PFN_vkMapMemory( vkGetDeviceProcAddr( device, "vkMapMemory" ) );
+#if defined( VK_USE_PLATFORM_FUCHSIA )
+ vkImportSemaphoreZirconHandleFUCHSIA = PFN_vkImportSemaphoreZirconHandleFUCHSIA(
+ vkGetDeviceProcAddr( device, "vkImportSemaphoreZirconHandleFUCHSIA" ) );
+#endif /*VK_USE_PLATFORM_FUCHSIA*/
+ vkInitializePerformanceApiINTEL =
+ PFN_vkInitializePerformanceApiINTEL( vkGetDeviceProcAddr( device, "vkInitializePerformanceApiINTEL" ) );
+ vkInvalidateMappedMemoryRanges =
+ PFN_vkInvalidateMappedMemoryRanges( vkGetDeviceProcAddr( device, "vkInvalidateMappedMemoryRanges" ) );
+ vkMapMemory = PFN_vkMapMemory( vkGetDeviceProcAddr( device, "vkMapMemory" ) );
vkMergePipelineCaches = PFN_vkMergePipelineCaches( vkGetDeviceProcAddr( device, "vkMergePipelineCaches" ) );
- vkMergeValidationCachesEXT = PFN_vkMergeValidationCachesEXT( vkGetDeviceProcAddr( device, "vkMergeValidationCachesEXT" ) );
- vkQueueBeginDebugUtilsLabelEXT = PFN_vkQueueBeginDebugUtilsLabelEXT( vkGetDeviceProcAddr( device, "vkQueueBeginDebugUtilsLabelEXT" ) );
+ vkMergeValidationCachesEXT =
+ PFN_vkMergeValidationCachesEXT( vkGetDeviceProcAddr( device, "vkMergeValidationCachesEXT" ) );
+ vkQueueBeginDebugUtilsLabelEXT =
+ PFN_vkQueueBeginDebugUtilsLabelEXT( vkGetDeviceProcAddr( device, "vkQueueBeginDebugUtilsLabelEXT" ) );
vkQueueBindSparse = PFN_vkQueueBindSparse( vkGetDeviceProcAddr( device, "vkQueueBindSparse" ) );
- vkQueueEndDebugUtilsLabelEXT = PFN_vkQueueEndDebugUtilsLabelEXT( vkGetDeviceProcAddr( device, "vkQueueEndDebugUtilsLabelEXT" ) );
- vkQueueInsertDebugUtilsLabelEXT = PFN_vkQueueInsertDebugUtilsLabelEXT( vkGetDeviceProcAddr( device, "vkQueueInsertDebugUtilsLabelEXT" ) );
+ vkQueueEndDebugUtilsLabelEXT =
+ PFN_vkQueueEndDebugUtilsLabelEXT( vkGetDeviceProcAddr( device, "vkQueueEndDebugUtilsLabelEXT" ) );
+ vkQueueInsertDebugUtilsLabelEXT =
+ PFN_vkQueueInsertDebugUtilsLabelEXT( vkGetDeviceProcAddr( device, "vkQueueInsertDebugUtilsLabelEXT" ) );
vkQueuePresentKHR = PFN_vkQueuePresentKHR( vkGetDeviceProcAddr( device, "vkQueuePresentKHR" ) );
- vkQueueSetPerformanceConfigurationINTEL = PFN_vkQueueSetPerformanceConfigurationINTEL( vkGetDeviceProcAddr( device, "vkQueueSetPerformanceConfigurationINTEL" ) );
- vkQueueSubmit = PFN_vkQueueSubmit( vkGetDeviceProcAddr( device, "vkQueueSubmit" ) );
- vkQueueWaitIdle = PFN_vkQueueWaitIdle( vkGetDeviceProcAddr( device, "vkQueueWaitIdle" ) );
- vkRegisterDeviceEventEXT = PFN_vkRegisterDeviceEventEXT( vkGetDeviceProcAddr( device, "vkRegisterDeviceEventEXT" ) );
- vkRegisterDisplayEventEXT = PFN_vkRegisterDisplayEventEXT( vkGetDeviceProcAddr( device, "vkRegisterDisplayEventEXT" ) );
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- vkReleaseFullScreenExclusiveModeEXT = PFN_vkReleaseFullScreenExclusiveModeEXT( vkGetDeviceProcAddr( device, "vkReleaseFullScreenExclusiveModeEXT" ) );
+ vkQueueSetPerformanceConfigurationINTEL = PFN_vkQueueSetPerformanceConfigurationINTEL(
+ vkGetDeviceProcAddr( device, "vkQueueSetPerformanceConfigurationINTEL" ) );
+ vkQueueSubmit = PFN_vkQueueSubmit( vkGetDeviceProcAddr( device, "vkQueueSubmit" ) );
+ vkQueueSubmit2KHR = PFN_vkQueueSubmit2KHR( vkGetDeviceProcAddr( device, "vkQueueSubmit2KHR" ) );
+ vkQueueWaitIdle = PFN_vkQueueWaitIdle( vkGetDeviceProcAddr( device, "vkQueueWaitIdle" ) );
+ vkRegisterDeviceEventEXT =
+ PFN_vkRegisterDeviceEventEXT( vkGetDeviceProcAddr( device, "vkRegisterDeviceEventEXT" ) );
+ vkRegisterDisplayEventEXT =
+ PFN_vkRegisterDisplayEventEXT( vkGetDeviceProcAddr( device, "vkRegisterDisplayEventEXT" ) );
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ vkReleaseFullScreenExclusiveModeEXT =
+ PFN_vkReleaseFullScreenExclusiveModeEXT( vkGetDeviceProcAddr( device, "vkReleaseFullScreenExclusiveModeEXT" ) );
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
- vkReleasePerformanceConfigurationINTEL = PFN_vkReleasePerformanceConfigurationINTEL( vkGetDeviceProcAddr( device, "vkReleasePerformanceConfigurationINTEL" ) );
- vkReleaseProfilingLockKHR = PFN_vkReleaseProfilingLockKHR( vkGetDeviceProcAddr( device, "vkReleaseProfilingLockKHR" ) );
- vkResetCommandBuffer = PFN_vkResetCommandBuffer( vkGetDeviceProcAddr( device, "vkResetCommandBuffer" ) );
- vkResetCommandPool = PFN_vkResetCommandPool( vkGetDeviceProcAddr( device, "vkResetCommandPool" ) );
+ vkReleasePerformanceConfigurationINTEL = PFN_vkReleasePerformanceConfigurationINTEL(
+ vkGetDeviceProcAddr( device, "vkReleasePerformanceConfigurationINTEL" ) );
+ vkReleaseProfilingLockKHR =
+ PFN_vkReleaseProfilingLockKHR( vkGetDeviceProcAddr( device, "vkReleaseProfilingLockKHR" ) );
+ vkResetCommandBuffer = PFN_vkResetCommandBuffer( vkGetDeviceProcAddr( device, "vkResetCommandBuffer" ) );
+ vkResetCommandPool = PFN_vkResetCommandPool( vkGetDeviceProcAddr( device, "vkResetCommandPool" ) );
vkResetDescriptorPool = PFN_vkResetDescriptorPool( vkGetDeviceProcAddr( device, "vkResetDescriptorPool" ) );
- vkResetEvent = PFN_vkResetEvent( vkGetDeviceProcAddr( device, "vkResetEvent" ) );
- vkResetFences = PFN_vkResetFences( vkGetDeviceProcAddr( device, "vkResetFences" ) );
- vkResetQueryPoolEXT = PFN_vkResetQueryPoolEXT( vkGetDeviceProcAddr( device, "vkResetQueryPoolEXT" ) );
- vkResetQueryPool = PFN_vkResetQueryPool( vkGetDeviceProcAddr( device, "vkResetQueryPool" ) );
- if ( !vkResetQueryPool ) vkResetQueryPool = vkResetQueryPoolEXT;
- vkSetDebugUtilsObjectNameEXT = PFN_vkSetDebugUtilsObjectNameEXT( vkGetDeviceProcAddr( device, "vkSetDebugUtilsObjectNameEXT" ) );
- vkSetDebugUtilsObjectTagEXT = PFN_vkSetDebugUtilsObjectTagEXT( vkGetDeviceProcAddr( device, "vkSetDebugUtilsObjectTagEXT" ) );
- vkSetEvent = PFN_vkSetEvent( vkGetDeviceProcAddr( device, "vkSetEvent" ) );
- vkSetHdrMetadataEXT = PFN_vkSetHdrMetadataEXT( vkGetDeviceProcAddr( device, "vkSetHdrMetadataEXT" ) );
+ vkResetEvent = PFN_vkResetEvent( vkGetDeviceProcAddr( device, "vkResetEvent" ) );
+ vkResetFences = PFN_vkResetFences( vkGetDeviceProcAddr( device, "vkResetFences" ) );
+ vkResetQueryPool = PFN_vkResetQueryPool( vkGetDeviceProcAddr( device, "vkResetQueryPool" ) );
+ vkResetQueryPoolEXT = PFN_vkResetQueryPoolEXT( vkGetDeviceProcAddr( device, "vkResetQueryPoolEXT" ) );
+ if ( !vkResetQueryPool )
+ vkResetQueryPool = vkResetQueryPoolEXT;
+ vkSetDebugUtilsObjectNameEXT =
+ PFN_vkSetDebugUtilsObjectNameEXT( vkGetDeviceProcAddr( device, "vkSetDebugUtilsObjectNameEXT" ) );
+ vkSetDebugUtilsObjectTagEXT =
+ PFN_vkSetDebugUtilsObjectTagEXT( vkGetDeviceProcAddr( device, "vkSetDebugUtilsObjectTagEXT" ) );
+ vkSetEvent = PFN_vkSetEvent( vkGetDeviceProcAddr( device, "vkSetEvent" ) );
+ vkSetHdrMetadataEXT = PFN_vkSetHdrMetadataEXT( vkGetDeviceProcAddr( device, "vkSetHdrMetadataEXT" ) );
vkSetLocalDimmingAMD = PFN_vkSetLocalDimmingAMD( vkGetDeviceProcAddr( device, "vkSetLocalDimmingAMD" ) );
- vkSetPrivateDataEXT = PFN_vkSetPrivateDataEXT( vkGetDeviceProcAddr( device, "vkSetPrivateDataEXT" ) );
+ vkSetPrivateDataEXT = PFN_vkSetPrivateDataEXT( vkGetDeviceProcAddr( device, "vkSetPrivateDataEXT" ) );
+ vkSignalSemaphore = PFN_vkSignalSemaphore( vkGetDeviceProcAddr( device, "vkSignalSemaphore" ) );
vkSignalSemaphoreKHR = PFN_vkSignalSemaphoreKHR( vkGetDeviceProcAddr( device, "vkSignalSemaphoreKHR" ) );
- vkSignalSemaphore = PFN_vkSignalSemaphore( vkGetDeviceProcAddr( device, "vkSignalSemaphore" ) );
- if ( !vkSignalSemaphore ) vkSignalSemaphore = vkSignalSemaphoreKHR;
+ if ( !vkSignalSemaphore )
+ vkSignalSemaphore = vkSignalSemaphoreKHR;
+ vkTrimCommandPool = PFN_vkTrimCommandPool( vkGetDeviceProcAddr( device, "vkTrimCommandPool" ) );
vkTrimCommandPoolKHR = PFN_vkTrimCommandPoolKHR( vkGetDeviceProcAddr( device, "vkTrimCommandPoolKHR" ) );
- vkTrimCommandPool = PFN_vkTrimCommandPool( vkGetDeviceProcAddr( device, "vkTrimCommandPool" ) );
- if ( !vkTrimCommandPool ) vkTrimCommandPool = vkTrimCommandPoolKHR;
- vkUninitializePerformanceApiINTEL = PFN_vkUninitializePerformanceApiINTEL( vkGetDeviceProcAddr( device, "vkUninitializePerformanceApiINTEL" ) );
+ if ( !vkTrimCommandPool )
+ vkTrimCommandPool = vkTrimCommandPoolKHR;
+ vkUninitializePerformanceApiINTEL =
+ PFN_vkUninitializePerformanceApiINTEL( vkGetDeviceProcAddr( device, "vkUninitializePerformanceApiINTEL" ) );
vkUnmapMemory = PFN_vkUnmapMemory( vkGetDeviceProcAddr( device, "vkUnmapMemory" ) );
- vkUpdateDescriptorSetWithTemplateKHR = PFN_vkUpdateDescriptorSetWithTemplateKHR( vkGetDeviceProcAddr( device, "vkUpdateDescriptorSetWithTemplateKHR" ) );
- vkUpdateDescriptorSetWithTemplate = PFN_vkUpdateDescriptorSetWithTemplate( vkGetDeviceProcAddr( device, "vkUpdateDescriptorSetWithTemplate" ) );
- if ( !vkUpdateDescriptorSetWithTemplate ) vkUpdateDescriptorSetWithTemplate = vkUpdateDescriptorSetWithTemplateKHR;
+ vkUpdateDescriptorSetWithTemplate =
+ PFN_vkUpdateDescriptorSetWithTemplate( vkGetDeviceProcAddr( device, "vkUpdateDescriptorSetWithTemplate" ) );
+ vkUpdateDescriptorSetWithTemplateKHR = PFN_vkUpdateDescriptorSetWithTemplateKHR(
+ vkGetDeviceProcAddr( device, "vkUpdateDescriptorSetWithTemplateKHR" ) );
+ if ( !vkUpdateDescriptorSetWithTemplate )
+ vkUpdateDescriptorSetWithTemplate = vkUpdateDescriptorSetWithTemplateKHR;
vkUpdateDescriptorSets = PFN_vkUpdateDescriptorSets( vkGetDeviceProcAddr( device, "vkUpdateDescriptorSets" ) );
- vkWaitForFences = PFN_vkWaitForFences( vkGetDeviceProcAddr( device, "vkWaitForFences" ) );
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ vkUpdateVideoSessionParametersKHR =
+ PFN_vkUpdateVideoSessionParametersKHR( vkGetDeviceProcAddr( device, "vkUpdateVideoSessionParametersKHR" ) );
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ vkWaitForFences = PFN_vkWaitForFences( vkGetDeviceProcAddr( device, "vkWaitForFences" ) );
+ vkWaitSemaphores = PFN_vkWaitSemaphores( vkGetDeviceProcAddr( device, "vkWaitSemaphores" ) );
vkWaitSemaphoresKHR = PFN_vkWaitSemaphoresKHR( vkGetDeviceProcAddr( device, "vkWaitSemaphoresKHR" ) );
- vkWaitSemaphores = PFN_vkWaitSemaphores( vkGetDeviceProcAddr( device, "vkWaitSemaphores" ) );
- if ( !vkWaitSemaphores ) vkWaitSemaphores = vkWaitSemaphoresKHR;
- vkWriteAccelerationStructuresPropertiesKHR = PFN_vkWriteAccelerationStructuresPropertiesKHR( vkGetDeviceProcAddr( device, "vkWriteAccelerationStructuresPropertiesKHR" ) );
+ if ( !vkWaitSemaphores )
+ vkWaitSemaphores = vkWaitSemaphoresKHR;
+ vkWriteAccelerationStructuresPropertiesKHR = PFN_vkWriteAccelerationStructuresPropertiesKHR(
+ vkGetDeviceProcAddr( device, "vkWriteAccelerationStructuresPropertiesKHR" ) );
}
};
-} // namespace VULKAN_HPP_NAMESPACE
+} // namespace VULKAN_HPP_NAMESPACE
namespace std
{
+ template <>
+ struct hash<VULKAN_HPP_NAMESPACE::AccelerationStructureKHR>
+ {
+ std::size_t operator()( VULKAN_HPP_NAMESPACE::AccelerationStructureKHR const & accelerationStructureKHR ) const
+ VULKAN_HPP_NOEXCEPT
+ {
+ return std::hash<VkAccelerationStructureKHR>{}(
+ static_cast<VkAccelerationStructureKHR>( accelerationStructureKHR ) );
+ }
+ };
+
+ template <>
+ struct hash<VULKAN_HPP_NAMESPACE::AccelerationStructureNV>
+ {
+ std::size_t operator()( VULKAN_HPP_NAMESPACE::AccelerationStructureNV const & accelerationStructureNV ) const
+ VULKAN_HPP_NOEXCEPT
+ {
+ return std::hash<VkAccelerationStructureNV>{}(
+ static_cast<VkAccelerationStructureNV>( accelerationStructureNV ) );
+ }
+ };
+
+ template <>
+ struct hash<VULKAN_HPP_NAMESPACE::Buffer>
+ {
+ std::size_t operator()( VULKAN_HPP_NAMESPACE::Buffer const & buffer ) const VULKAN_HPP_NOEXCEPT
+ {
+ return std::hash<VkBuffer>{}( static_cast<VkBuffer>( buffer ) );
+ }
+ };
+
+ template <>
+ struct hash<VULKAN_HPP_NAMESPACE::BufferView>
+ {
+ std::size_t operator()( VULKAN_HPP_NAMESPACE::BufferView const & bufferView ) const VULKAN_HPP_NOEXCEPT
+ {
+ return std::hash<VkBufferView>{}( static_cast<VkBufferView>( bufferView ) );
+ }
+ };
- template <> struct hash<VULKAN_HPP_NAMESPACE::AccelerationStructureKHR>
+ template <>
+ struct hash<VULKAN_HPP_NAMESPACE::CommandBuffer>
{
- std::size_t operator()(VULKAN_HPP_NAMESPACE::AccelerationStructureKHR const& accelerationStructureKHR) const VULKAN_HPP_NOEXCEPT
+ std::size_t operator()( VULKAN_HPP_NAMESPACE::CommandBuffer const & commandBuffer ) const VULKAN_HPP_NOEXCEPT
{
- return std::hash<VkAccelerationStructureKHR>{}(static_cast<VkAccelerationStructureKHR>(accelerationStructureKHR));
+ return std::hash<VkCommandBuffer>{}( static_cast<VkCommandBuffer>( commandBuffer ) );
}
};
- template <> struct hash<VULKAN_HPP_NAMESPACE::AccelerationStructureNV>
+ template <>
+ struct hash<VULKAN_HPP_NAMESPACE::CommandPool>
{
- std::size_t operator()(VULKAN_HPP_NAMESPACE::AccelerationStructureNV const& accelerationStructureNV) const VULKAN_HPP_NOEXCEPT
+ std::size_t operator()( VULKAN_HPP_NAMESPACE::CommandPool const & commandPool ) const VULKAN_HPP_NOEXCEPT
{
- return std::hash<VkAccelerationStructureNV>{}(static_cast<VkAccelerationStructureNV>(accelerationStructureNV));
+ return std::hash<VkCommandPool>{}( static_cast<VkCommandPool>( commandPool ) );
}
};
- template <> struct hash<VULKAN_HPP_NAMESPACE::Buffer>
+ template <>
+ struct hash<VULKAN_HPP_NAMESPACE::CuFunctionNVX>
{
- std::size_t operator()(VULKAN_HPP_NAMESPACE::Buffer const& buffer) const VULKAN_HPP_NOEXCEPT
+ std::size_t operator()( VULKAN_HPP_NAMESPACE::CuFunctionNVX const & cuFunctionNVX ) const VULKAN_HPP_NOEXCEPT
{
- return std::hash<VkBuffer>{}(static_cast<VkBuffer>(buffer));
+ return std::hash<VkCuFunctionNVX>{}( static_cast<VkCuFunctionNVX>( cuFunctionNVX ) );
}
};
- template <> struct hash<VULKAN_HPP_NAMESPACE::BufferView>
+ template <>
+ struct hash<VULKAN_HPP_NAMESPACE::CuModuleNVX>
{
- std::size_t operator()(VULKAN_HPP_NAMESPACE::BufferView const& bufferView) const VULKAN_HPP_NOEXCEPT
+ std::size_t operator()( VULKAN_HPP_NAMESPACE::CuModuleNVX const & cuModuleNVX ) const VULKAN_HPP_NOEXCEPT
{
- return std::hash<VkBufferView>{}(static_cast<VkBufferView>(bufferView));
+ return std::hash<VkCuModuleNVX>{}( static_cast<VkCuModuleNVX>( cuModuleNVX ) );
}
};
- template <> struct hash<VULKAN_HPP_NAMESPACE::CommandBuffer>
+ template <>
+ struct hash<VULKAN_HPP_NAMESPACE::DebugReportCallbackEXT>
{
- std::size_t operator()(VULKAN_HPP_NAMESPACE::CommandBuffer const& commandBuffer) const VULKAN_HPP_NOEXCEPT
+ std::size_t operator()( VULKAN_HPP_NAMESPACE::DebugReportCallbackEXT const & debugReportCallbackEXT ) const
+ VULKAN_HPP_NOEXCEPT
{
- return std::hash<VkCommandBuffer>{}(static_cast<VkCommandBuffer>(commandBuffer));
+ return std::hash<VkDebugReportCallbackEXT>{}( static_cast<VkDebugReportCallbackEXT>( debugReportCallbackEXT ) );
}
};
- template <> struct hash<VULKAN_HPP_NAMESPACE::CommandPool>
+ template <>
+ struct hash<VULKAN_HPP_NAMESPACE::DebugUtilsMessengerEXT>
{
- std::size_t operator()(VULKAN_HPP_NAMESPACE::CommandPool const& commandPool) const VULKAN_HPP_NOEXCEPT
+ std::size_t operator()( VULKAN_HPP_NAMESPACE::DebugUtilsMessengerEXT const & debugUtilsMessengerEXT ) const
+ VULKAN_HPP_NOEXCEPT
{
- return std::hash<VkCommandPool>{}(static_cast<VkCommandPool>(commandPool));
+ return std::hash<VkDebugUtilsMessengerEXT>{}( static_cast<VkDebugUtilsMessengerEXT>( debugUtilsMessengerEXT ) );
}
};
- template <> struct hash<VULKAN_HPP_NAMESPACE::DebugReportCallbackEXT>
+ template <>
+ struct hash<VULKAN_HPP_NAMESPACE::DeferredOperationKHR>
{
- std::size_t operator()(VULKAN_HPP_NAMESPACE::DebugReportCallbackEXT const& debugReportCallbackEXT) const VULKAN_HPP_NOEXCEPT
+ std::size_t
+ operator()( VULKAN_HPP_NAMESPACE::DeferredOperationKHR const & deferredOperationKHR ) const VULKAN_HPP_NOEXCEPT
{
- return std::hash<VkDebugReportCallbackEXT>{}(static_cast<VkDebugReportCallbackEXT>(debugReportCallbackEXT));
+ return std::hash<VkDeferredOperationKHR>{}( static_cast<VkDeferredOperationKHR>( deferredOperationKHR ) );
}
};
- template <> struct hash<VULKAN_HPP_NAMESPACE::DebugUtilsMessengerEXT>
+ template <>
+ struct hash<VULKAN_HPP_NAMESPACE::DescriptorPool>
{
- std::size_t operator()(VULKAN_HPP_NAMESPACE::DebugUtilsMessengerEXT const& debugUtilsMessengerEXT) const VULKAN_HPP_NOEXCEPT
+ std::size_t operator()( VULKAN_HPP_NAMESPACE::DescriptorPool const & descriptorPool ) const VULKAN_HPP_NOEXCEPT
{
- return std::hash<VkDebugUtilsMessengerEXT>{}(static_cast<VkDebugUtilsMessengerEXT>(debugUtilsMessengerEXT));
+ return std::hash<VkDescriptorPool>{}( static_cast<VkDescriptorPool>( descriptorPool ) );
}
};
- template <> struct hash<VULKAN_HPP_NAMESPACE::DeferredOperationKHR>
+ template <>
+ struct hash<VULKAN_HPP_NAMESPACE::DescriptorSet>
{
- std::size_t operator()(VULKAN_HPP_NAMESPACE::DeferredOperationKHR const& deferredOperationKHR) const VULKAN_HPP_NOEXCEPT
+ std::size_t operator()( VULKAN_HPP_NAMESPACE::DescriptorSet const & descriptorSet ) const VULKAN_HPP_NOEXCEPT
{
- return std::hash<VkDeferredOperationKHR>{}(static_cast<VkDeferredOperationKHR>(deferredOperationKHR));
+ return std::hash<VkDescriptorSet>{}( static_cast<VkDescriptorSet>( descriptorSet ) );
}
};
- template <> struct hash<VULKAN_HPP_NAMESPACE::DescriptorPool>
+ template <>
+ struct hash<VULKAN_HPP_NAMESPACE::DescriptorSetLayout>
{
- std::size_t operator()(VULKAN_HPP_NAMESPACE::DescriptorPool const& descriptorPool) const VULKAN_HPP_NOEXCEPT
+ std::size_t
+ operator()( VULKAN_HPP_NAMESPACE::DescriptorSetLayout const & descriptorSetLayout ) const VULKAN_HPP_NOEXCEPT
{
- return std::hash<VkDescriptorPool>{}(static_cast<VkDescriptorPool>(descriptorPool));
+ return std::hash<VkDescriptorSetLayout>{}( static_cast<VkDescriptorSetLayout>( descriptorSetLayout ) );
}
};
- template <> struct hash<VULKAN_HPP_NAMESPACE::DescriptorSet>
+ template <>
+ struct hash<VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate>
{
- std::size_t operator()(VULKAN_HPP_NAMESPACE::DescriptorSet const& descriptorSet) const VULKAN_HPP_NOEXCEPT
+ std::size_t operator()( VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate const & descriptorUpdateTemplate ) const
+ VULKAN_HPP_NOEXCEPT
{
- return std::hash<VkDescriptorSet>{}(static_cast<VkDescriptorSet>(descriptorSet));
+ return std::hash<VkDescriptorUpdateTemplate>{}(
+ static_cast<VkDescriptorUpdateTemplate>( descriptorUpdateTemplate ) );
}
};
- template <> struct hash<VULKAN_HPP_NAMESPACE::DescriptorSetLayout>
+ template <>
+ struct hash<VULKAN_HPP_NAMESPACE::Device>
{
- std::size_t operator()(VULKAN_HPP_NAMESPACE::DescriptorSetLayout const& descriptorSetLayout) const VULKAN_HPP_NOEXCEPT
+ std::size_t operator()( VULKAN_HPP_NAMESPACE::Device const & device ) const VULKAN_HPP_NOEXCEPT
{
- return std::hash<VkDescriptorSetLayout>{}(static_cast<VkDescriptorSetLayout>(descriptorSetLayout));
+ return std::hash<VkDevice>{}( static_cast<VkDevice>( device ) );
}
};
- template <> struct hash<VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate>
+ template <>
+ struct hash<VULKAN_HPP_NAMESPACE::DeviceMemory>
{
- std::size_t operator()(VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate const& descriptorUpdateTemplate) const VULKAN_HPP_NOEXCEPT
+ std::size_t operator()( VULKAN_HPP_NAMESPACE::DeviceMemory const & deviceMemory ) const VULKAN_HPP_NOEXCEPT
{
- return std::hash<VkDescriptorUpdateTemplate>{}(static_cast<VkDescriptorUpdateTemplate>(descriptorUpdateTemplate));
+ return std::hash<VkDeviceMemory>{}( static_cast<VkDeviceMemory>( deviceMemory ) );
}
};
- template <> struct hash<VULKAN_HPP_NAMESPACE::Device>
+ template <>
+ struct hash<VULKAN_HPP_NAMESPACE::DisplayKHR>
{
- std::size_t operator()(VULKAN_HPP_NAMESPACE::Device const& device) const VULKAN_HPP_NOEXCEPT
+ std::size_t operator()( VULKAN_HPP_NAMESPACE::DisplayKHR const & displayKHR ) const VULKAN_HPP_NOEXCEPT
{
- return std::hash<VkDevice>{}(static_cast<VkDevice>(device));
+ return std::hash<VkDisplayKHR>{}( static_cast<VkDisplayKHR>( displayKHR ) );
}
};
- template <> struct hash<VULKAN_HPP_NAMESPACE::DeviceMemory>
+ template <>
+ struct hash<VULKAN_HPP_NAMESPACE::DisplayModeKHR>
{
- std::size_t operator()(VULKAN_HPP_NAMESPACE::DeviceMemory const& deviceMemory) const VULKAN_HPP_NOEXCEPT
+ std::size_t operator()( VULKAN_HPP_NAMESPACE::DisplayModeKHR const & displayModeKHR ) const VULKAN_HPP_NOEXCEPT
{
- return std::hash<VkDeviceMemory>{}(static_cast<VkDeviceMemory>(deviceMemory));
+ return std::hash<VkDisplayModeKHR>{}( static_cast<VkDisplayModeKHR>( displayModeKHR ) );
}
};
- template <> struct hash<VULKAN_HPP_NAMESPACE::DisplayKHR>
+ template <>
+ struct hash<VULKAN_HPP_NAMESPACE::Event>
{
- std::size_t operator()(VULKAN_HPP_NAMESPACE::DisplayKHR const& displayKHR) const VULKAN_HPP_NOEXCEPT
+ std::size_t operator()( VULKAN_HPP_NAMESPACE::Event const & event ) const VULKAN_HPP_NOEXCEPT
{
- return std::hash<VkDisplayKHR>{}(static_cast<VkDisplayKHR>(displayKHR));
+ return std::hash<VkEvent>{}( static_cast<VkEvent>( event ) );
}
};
- template <> struct hash<VULKAN_HPP_NAMESPACE::DisplayModeKHR>
+ template <>
+ struct hash<VULKAN_HPP_NAMESPACE::Fence>
{
- std::size_t operator()(VULKAN_HPP_NAMESPACE::DisplayModeKHR const& displayModeKHR) const VULKAN_HPP_NOEXCEPT
+ std::size_t operator()( VULKAN_HPP_NAMESPACE::Fence const & fence ) const VULKAN_HPP_NOEXCEPT
{
- return std::hash<VkDisplayModeKHR>{}(static_cast<VkDisplayModeKHR>(displayModeKHR));
+ return std::hash<VkFence>{}( static_cast<VkFence>( fence ) );
}
};
- template <> struct hash<VULKAN_HPP_NAMESPACE::Event>
+ template <>
+ struct hash<VULKAN_HPP_NAMESPACE::Framebuffer>
{
- std::size_t operator()(VULKAN_HPP_NAMESPACE::Event const& event) const VULKAN_HPP_NOEXCEPT
+ std::size_t operator()( VULKAN_HPP_NAMESPACE::Framebuffer const & framebuffer ) const VULKAN_HPP_NOEXCEPT
{
- return std::hash<VkEvent>{}(static_cast<VkEvent>(event));
+ return std::hash<VkFramebuffer>{}( static_cast<VkFramebuffer>( framebuffer ) );
}
};
- template <> struct hash<VULKAN_HPP_NAMESPACE::Fence>
+ template <>
+ struct hash<VULKAN_HPP_NAMESPACE::Image>
{
- std::size_t operator()(VULKAN_HPP_NAMESPACE::Fence const& fence) const VULKAN_HPP_NOEXCEPT
+ std::size_t operator()( VULKAN_HPP_NAMESPACE::Image const & image ) const VULKAN_HPP_NOEXCEPT
{
- return std::hash<VkFence>{}(static_cast<VkFence>(fence));
+ return std::hash<VkImage>{}( static_cast<VkImage>( image ) );
}
};
- template <> struct hash<VULKAN_HPP_NAMESPACE::Framebuffer>
+ template <>
+ struct hash<VULKAN_HPP_NAMESPACE::ImageView>
{
- std::size_t operator()(VULKAN_HPP_NAMESPACE::Framebuffer const& framebuffer) const VULKAN_HPP_NOEXCEPT
+ std::size_t operator()( VULKAN_HPP_NAMESPACE::ImageView const & imageView ) const VULKAN_HPP_NOEXCEPT
{
- return std::hash<VkFramebuffer>{}(static_cast<VkFramebuffer>(framebuffer));
+ return std::hash<VkImageView>{}( static_cast<VkImageView>( imageView ) );
}
};
- template <> struct hash<VULKAN_HPP_NAMESPACE::Image>
+ template <>
+ struct hash<VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV>
{
- std::size_t operator()(VULKAN_HPP_NAMESPACE::Image const& image) const VULKAN_HPP_NOEXCEPT
+ std::size_t operator()( VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV const & indirectCommandsLayoutNV ) const
+ VULKAN_HPP_NOEXCEPT
{
- return std::hash<VkImage>{}(static_cast<VkImage>(image));
+ return std::hash<VkIndirectCommandsLayoutNV>{}(
+ static_cast<VkIndirectCommandsLayoutNV>( indirectCommandsLayoutNV ) );
}
};
- template <> struct hash<VULKAN_HPP_NAMESPACE::ImageView>
+ template <>
+ struct hash<VULKAN_HPP_NAMESPACE::Instance>
{
- std::size_t operator()(VULKAN_HPP_NAMESPACE::ImageView const& imageView) const VULKAN_HPP_NOEXCEPT
+ std::size_t operator()( VULKAN_HPP_NAMESPACE::Instance const & instance ) const VULKAN_HPP_NOEXCEPT
{
- return std::hash<VkImageView>{}(static_cast<VkImageView>(imageView));
+ return std::hash<VkInstance>{}( static_cast<VkInstance>( instance ) );
}
};
- template <> struct hash<VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV>
+ template <>
+ struct hash<VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL>
{
- std::size_t operator()(VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV const& indirectCommandsLayoutNV) const VULKAN_HPP_NOEXCEPT
+ std::size_t operator()( VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL const & performanceConfigurationINTEL )
+ const VULKAN_HPP_NOEXCEPT
{
- return std::hash<VkIndirectCommandsLayoutNV>{}(static_cast<VkIndirectCommandsLayoutNV>(indirectCommandsLayoutNV));
+ return std::hash<VkPerformanceConfigurationINTEL>{}(
+ static_cast<VkPerformanceConfigurationINTEL>( performanceConfigurationINTEL ) );
}
};
- template <> struct hash<VULKAN_HPP_NAMESPACE::Instance>
+ template <>
+ struct hash<VULKAN_HPP_NAMESPACE::PhysicalDevice>
{
- std::size_t operator()(VULKAN_HPP_NAMESPACE::Instance const& instance) const VULKAN_HPP_NOEXCEPT
+ std::size_t operator()( VULKAN_HPP_NAMESPACE::PhysicalDevice const & physicalDevice ) const VULKAN_HPP_NOEXCEPT
{
- return std::hash<VkInstance>{}(static_cast<VkInstance>(instance));
+ return std::hash<VkPhysicalDevice>{}( static_cast<VkPhysicalDevice>( physicalDevice ) );
}
};
- template <> struct hash<VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL>
+ template <>
+ struct hash<VULKAN_HPP_NAMESPACE::Pipeline>
{
- std::size_t operator()(VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL const& performanceConfigurationINTEL) const VULKAN_HPP_NOEXCEPT
+ std::size_t operator()( VULKAN_HPP_NAMESPACE::Pipeline const & pipeline ) const VULKAN_HPP_NOEXCEPT
{
- return std::hash<VkPerformanceConfigurationINTEL>{}(static_cast<VkPerformanceConfigurationINTEL>(performanceConfigurationINTEL));
+ return std::hash<VkPipeline>{}( static_cast<VkPipeline>( pipeline ) );
}
};
- template <> struct hash<VULKAN_HPP_NAMESPACE::PhysicalDevice>
+ template <>
+ struct hash<VULKAN_HPP_NAMESPACE::PipelineCache>
{
- std::size_t operator()(VULKAN_HPP_NAMESPACE::PhysicalDevice const& physicalDevice) const VULKAN_HPP_NOEXCEPT
+ std::size_t operator()( VULKAN_HPP_NAMESPACE::PipelineCache const & pipelineCache ) const VULKAN_HPP_NOEXCEPT
{
- return std::hash<VkPhysicalDevice>{}(static_cast<VkPhysicalDevice>(physicalDevice));
+ return std::hash<VkPipelineCache>{}( static_cast<VkPipelineCache>( pipelineCache ) );
}
};
- template <> struct hash<VULKAN_HPP_NAMESPACE::Pipeline>
+ template <>
+ struct hash<VULKAN_HPP_NAMESPACE::PipelineLayout>
{
- std::size_t operator()(VULKAN_HPP_NAMESPACE::Pipeline const& pipeline) const VULKAN_HPP_NOEXCEPT
+ std::size_t operator()( VULKAN_HPP_NAMESPACE::PipelineLayout const & pipelineLayout ) const VULKAN_HPP_NOEXCEPT
{
- return std::hash<VkPipeline>{}(static_cast<VkPipeline>(pipeline));
+ return std::hash<VkPipelineLayout>{}( static_cast<VkPipelineLayout>( pipelineLayout ) );
}
};
- template <> struct hash<VULKAN_HPP_NAMESPACE::PipelineCache>
+ template <>
+ struct hash<VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT>
{
- std::size_t operator()(VULKAN_HPP_NAMESPACE::PipelineCache const& pipelineCache) const VULKAN_HPP_NOEXCEPT
+ std::size_t
+ operator()( VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT const & privateDataSlotEXT ) const VULKAN_HPP_NOEXCEPT
{
- return std::hash<VkPipelineCache>{}(static_cast<VkPipelineCache>(pipelineCache));
+ return std::hash<VkPrivateDataSlotEXT>{}( static_cast<VkPrivateDataSlotEXT>( privateDataSlotEXT ) );
}
};
- template <> struct hash<VULKAN_HPP_NAMESPACE::PipelineLayout>
+ template <>
+ struct hash<VULKAN_HPP_NAMESPACE::QueryPool>
{
- std::size_t operator()(VULKAN_HPP_NAMESPACE::PipelineLayout const& pipelineLayout) const VULKAN_HPP_NOEXCEPT
+ std::size_t operator()( VULKAN_HPP_NAMESPACE::QueryPool const & queryPool ) const VULKAN_HPP_NOEXCEPT
{
- return std::hash<VkPipelineLayout>{}(static_cast<VkPipelineLayout>(pipelineLayout));
+ return std::hash<VkQueryPool>{}( static_cast<VkQueryPool>( queryPool ) );
}
};
- template <> struct hash<VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT>
+ template <>
+ struct hash<VULKAN_HPP_NAMESPACE::Queue>
{
- std::size_t operator()(VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT const& privateDataSlotEXT) const VULKAN_HPP_NOEXCEPT
+ std::size_t operator()( VULKAN_HPP_NAMESPACE::Queue const & queue ) const VULKAN_HPP_NOEXCEPT
{
- return std::hash<VkPrivateDataSlotEXT>{}(static_cast<VkPrivateDataSlotEXT>(privateDataSlotEXT));
+ return std::hash<VkQueue>{}( static_cast<VkQueue>( queue ) );
}
};
- template <> struct hash<VULKAN_HPP_NAMESPACE::QueryPool>
+ template <>
+ struct hash<VULKAN_HPP_NAMESPACE::RenderPass>
{
- std::size_t operator()(VULKAN_HPP_NAMESPACE::QueryPool const& queryPool) const VULKAN_HPP_NOEXCEPT
+ std::size_t operator()( VULKAN_HPP_NAMESPACE::RenderPass const & renderPass ) const VULKAN_HPP_NOEXCEPT
{
- return std::hash<VkQueryPool>{}(static_cast<VkQueryPool>(queryPool));
+ return std::hash<VkRenderPass>{}( static_cast<VkRenderPass>( renderPass ) );
}
};
- template <> struct hash<VULKAN_HPP_NAMESPACE::Queue>
+ template <>
+ struct hash<VULKAN_HPP_NAMESPACE::Sampler>
{
- std::size_t operator()(VULKAN_HPP_NAMESPACE::Queue const& queue) const VULKAN_HPP_NOEXCEPT
+ std::size_t operator()( VULKAN_HPP_NAMESPACE::Sampler const & sampler ) const VULKAN_HPP_NOEXCEPT
{
- return std::hash<VkQueue>{}(static_cast<VkQueue>(queue));
+ return std::hash<VkSampler>{}( static_cast<VkSampler>( sampler ) );
}
};
- template <> struct hash<VULKAN_HPP_NAMESPACE::RenderPass>
+ template <>
+ struct hash<VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion>
{
- std::size_t operator()(VULKAN_HPP_NAMESPACE::RenderPass const& renderPass) const VULKAN_HPP_NOEXCEPT
+ std::size_t operator()( VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion const & samplerYcbcrConversion ) const
+ VULKAN_HPP_NOEXCEPT
{
- return std::hash<VkRenderPass>{}(static_cast<VkRenderPass>(renderPass));
+ return std::hash<VkSamplerYcbcrConversion>{}( static_cast<VkSamplerYcbcrConversion>( samplerYcbcrConversion ) );
}
};
- template <> struct hash<VULKAN_HPP_NAMESPACE::Sampler>
+ template <>
+ struct hash<VULKAN_HPP_NAMESPACE::Semaphore>
{
- std::size_t operator()(VULKAN_HPP_NAMESPACE::Sampler const& sampler) const VULKAN_HPP_NOEXCEPT
+ std::size_t operator()( VULKAN_HPP_NAMESPACE::Semaphore const & semaphore ) const VULKAN_HPP_NOEXCEPT
{
- return std::hash<VkSampler>{}(static_cast<VkSampler>(sampler));
+ return std::hash<VkSemaphore>{}( static_cast<VkSemaphore>( semaphore ) );
}
};
- template <> struct hash<VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion>
+ template <>
+ struct hash<VULKAN_HPP_NAMESPACE::ShaderModule>
{
- std::size_t operator()(VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion const& samplerYcbcrConversion) const VULKAN_HPP_NOEXCEPT
+ std::size_t operator()( VULKAN_HPP_NAMESPACE::ShaderModule const & shaderModule ) const VULKAN_HPP_NOEXCEPT
{
- return std::hash<VkSamplerYcbcrConversion>{}(static_cast<VkSamplerYcbcrConversion>(samplerYcbcrConversion));
+ return std::hash<VkShaderModule>{}( static_cast<VkShaderModule>( shaderModule ) );
}
};
- template <> struct hash<VULKAN_HPP_NAMESPACE::Semaphore>
+ template <>
+ struct hash<VULKAN_HPP_NAMESPACE::SurfaceKHR>
{
- std::size_t operator()(VULKAN_HPP_NAMESPACE::Semaphore const& semaphore) const VULKAN_HPP_NOEXCEPT
+ std::size_t operator()( VULKAN_HPP_NAMESPACE::SurfaceKHR const & surfaceKHR ) const VULKAN_HPP_NOEXCEPT
{
- return std::hash<VkSemaphore>{}(static_cast<VkSemaphore>(semaphore));
+ return std::hash<VkSurfaceKHR>{}( static_cast<VkSurfaceKHR>( surfaceKHR ) );
}
};
- template <> struct hash<VULKAN_HPP_NAMESPACE::ShaderModule>
+ template <>
+ struct hash<VULKAN_HPP_NAMESPACE::SwapchainKHR>
{
- std::size_t operator()(VULKAN_HPP_NAMESPACE::ShaderModule const& shaderModule) const VULKAN_HPP_NOEXCEPT
+ std::size_t operator()( VULKAN_HPP_NAMESPACE::SwapchainKHR const & swapchainKHR ) const VULKAN_HPP_NOEXCEPT
{
- return std::hash<VkShaderModule>{}(static_cast<VkShaderModule>(shaderModule));
+ return std::hash<VkSwapchainKHR>{}( static_cast<VkSwapchainKHR>( swapchainKHR ) );
}
};
- template <> struct hash<VULKAN_HPP_NAMESPACE::SurfaceKHR>
+ template <>
+ struct hash<VULKAN_HPP_NAMESPACE::ValidationCacheEXT>
{
- std::size_t operator()(VULKAN_HPP_NAMESPACE::SurfaceKHR const& surfaceKHR) const VULKAN_HPP_NOEXCEPT
+ std::size_t
+ operator()( VULKAN_HPP_NAMESPACE::ValidationCacheEXT const & validationCacheEXT ) const VULKAN_HPP_NOEXCEPT
{
- return std::hash<VkSurfaceKHR>{}(static_cast<VkSurfaceKHR>(surfaceKHR));
+ return std::hash<VkValidationCacheEXT>{}( static_cast<VkValidationCacheEXT>( validationCacheEXT ) );
}
};
- template <> struct hash<VULKAN_HPP_NAMESPACE::SwapchainKHR>
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ template <>
+ struct hash<VULKAN_HPP_NAMESPACE::VideoSessionKHR>
{
- std::size_t operator()(VULKAN_HPP_NAMESPACE::SwapchainKHR const& swapchainKHR) const VULKAN_HPP_NOEXCEPT
+ std::size_t operator()( VULKAN_HPP_NAMESPACE::VideoSessionKHR const & videoSessionKHR ) const VULKAN_HPP_NOEXCEPT
{
- return std::hash<VkSwapchainKHR>{}(static_cast<VkSwapchainKHR>(swapchainKHR));
+ return std::hash<VkVideoSessionKHR>{}( static_cast<VkVideoSessionKHR>( videoSessionKHR ) );
}
};
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
- template <> struct hash<VULKAN_HPP_NAMESPACE::ValidationCacheEXT>
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ template <>
+ struct hash<VULKAN_HPP_NAMESPACE::VideoSessionParametersKHR>
{
- std::size_t operator()(VULKAN_HPP_NAMESPACE::ValidationCacheEXT const& validationCacheEXT) const VULKAN_HPP_NOEXCEPT
+ std::size_t operator()( VULKAN_HPP_NAMESPACE::VideoSessionParametersKHR const & videoSessionParametersKHR ) const
+ VULKAN_HPP_NOEXCEPT
{
- return std::hash<VkValidationCacheEXT>{}(static_cast<VkValidationCacheEXT>(validationCacheEXT));
+ return std::hash<VkVideoSessionParametersKHR>{}(
+ static_cast<VkVideoSessionParametersKHR>( videoSessionParametersKHR ) );
}
};
-}
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+} // namespace std
#endif
diff --git a/thirdparty/vulkan/include/vulkan/vulkan_android.h b/thirdparty/vulkan/include/vulkan/vulkan_android.h
index 50ef85f13e..2160e3e7c6 100644
--- a/thirdparty/vulkan/include/vulkan/vulkan_android.h
+++ b/thirdparty/vulkan/include/vulkan/vulkan_android.h
@@ -2,7 +2,7 @@
#define VULKAN_ANDROID_H_ 1
/*
-** Copyright (c) 2015-2020 The Khronos Group Inc.
+** Copyright 2015-2021 The Khronos Group Inc.
**
** SPDX-License-Identifier: Apache-2.0
*/
diff --git a/thirdparty/vulkan/include/vulkan/vulkan_beta.h b/thirdparty/vulkan/include/vulkan/vulkan_beta.h
index 23513b3270..9aebb1abb2 100644
--- a/thirdparty/vulkan/include/vulkan/vulkan_beta.h
+++ b/thirdparty/vulkan/include/vulkan/vulkan_beta.h
@@ -2,7 +2,7 @@
#define VULKAN_BETA_H_ 1
/*
-** Copyright (c) 2015-2020 The Khronos Group Inc.
+** Copyright 2015-2021 The Khronos Group Inc.
**
** SPDX-License-Identifier: Apache-2.0
*/
@@ -19,6 +19,325 @@ extern "C" {
+#define VK_KHR_video_queue 1
+VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkVideoSessionKHR)
+VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkVideoSessionParametersKHR)
+#define VK_KHR_VIDEO_QUEUE_SPEC_VERSION 1
+#define VK_KHR_VIDEO_QUEUE_EXTENSION_NAME "VK_KHR_video_queue"
+
+typedef enum VkQueryResultStatusKHR {
+ VK_QUERY_RESULT_STATUS_ERROR_KHR = -1,
+ VK_QUERY_RESULT_STATUS_NOT_READY_KHR = 0,
+ VK_QUERY_RESULT_STATUS_COMPLETE_KHR = 1,
+ VK_QUERY_RESULT_STATUS_MAX_ENUM_KHR = 0x7FFFFFFF
+} VkQueryResultStatusKHR;
+
+typedef enum VkVideoCodecOperationFlagBitsKHR {
+ VK_VIDEO_CODEC_OPERATION_INVALID_BIT_KHR = 0,
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_VIDEO_CODEC_OPERATION_ENCODE_H264_BIT_EXT = 0x00010000,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_VIDEO_CODEC_OPERATION_DECODE_H264_BIT_EXT = 0x00000001,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_VIDEO_CODEC_OPERATION_DECODE_H265_BIT_EXT = 0x00000002,
+#endif
+ VK_VIDEO_CODEC_OPERATION_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF
+} VkVideoCodecOperationFlagBitsKHR;
+typedef VkFlags VkVideoCodecOperationFlagsKHR;
+
+typedef enum VkVideoChromaSubsamplingFlagBitsKHR {
+ VK_VIDEO_CHROMA_SUBSAMPLING_INVALID_BIT_KHR = 0,
+ VK_VIDEO_CHROMA_SUBSAMPLING_MONOCHROME_BIT_KHR = 0x00000001,
+ VK_VIDEO_CHROMA_SUBSAMPLING_420_BIT_KHR = 0x00000002,
+ VK_VIDEO_CHROMA_SUBSAMPLING_422_BIT_KHR = 0x00000004,
+ VK_VIDEO_CHROMA_SUBSAMPLING_444_BIT_KHR = 0x00000008,
+ VK_VIDEO_CHROMA_SUBSAMPLING_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF
+} VkVideoChromaSubsamplingFlagBitsKHR;
+typedef VkFlags VkVideoChromaSubsamplingFlagsKHR;
+
+typedef enum VkVideoComponentBitDepthFlagBitsKHR {
+ VK_VIDEO_COMPONENT_BIT_DEPTH_INVALID_KHR = 0,
+ VK_VIDEO_COMPONENT_BIT_DEPTH_8_BIT_KHR = 0x00000001,
+ VK_VIDEO_COMPONENT_BIT_DEPTH_10_BIT_KHR = 0x00000004,
+ VK_VIDEO_COMPONENT_BIT_DEPTH_12_BIT_KHR = 0x00000010,
+ VK_VIDEO_COMPONENT_BIT_DEPTH_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF
+} VkVideoComponentBitDepthFlagBitsKHR;
+typedef VkFlags VkVideoComponentBitDepthFlagsKHR;
+
+typedef enum VkVideoCapabilitiesFlagBitsKHR {
+ VK_VIDEO_CAPABILITIES_PROTECTED_CONTENT_BIT_KHR = 0x00000001,
+ VK_VIDEO_CAPABILITIES_SEPARATE_REFERENCE_IMAGES_BIT_KHR = 0x00000002,
+ VK_VIDEO_CAPABILITIES_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF
+} VkVideoCapabilitiesFlagBitsKHR;
+typedef VkFlags VkVideoCapabilitiesFlagsKHR;
+
+typedef enum VkVideoSessionCreateFlagBitsKHR {
+ VK_VIDEO_SESSION_CREATE_DEFAULT_KHR = 0,
+ VK_VIDEO_SESSION_CREATE_PROTECTED_CONTENT_BIT_KHR = 0x00000001,
+ VK_VIDEO_SESSION_CREATE_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF
+} VkVideoSessionCreateFlagBitsKHR;
+typedef VkFlags VkVideoSessionCreateFlagsKHR;
+typedef VkFlags VkVideoBeginCodingFlagsKHR;
+typedef VkFlags VkVideoEndCodingFlagsKHR;
+
+typedef enum VkVideoCodingControlFlagBitsKHR {
+ VK_VIDEO_CODING_CONTROL_DEFAULT_KHR = 0,
+ VK_VIDEO_CODING_CONTROL_RESET_BIT_KHR = 0x00000001,
+ VK_VIDEO_CODING_CONTROL_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF
+} VkVideoCodingControlFlagBitsKHR;
+typedef VkFlags VkVideoCodingControlFlagsKHR;
+
+typedef enum VkVideoCodingQualityPresetFlagBitsKHR {
+ VK_VIDEO_CODING_QUALITY_PRESET_DEFAULT_BIT_KHR = 0,
+ VK_VIDEO_CODING_QUALITY_PRESET_NORMAL_BIT_KHR = 0x00000001,
+ VK_VIDEO_CODING_QUALITY_PRESET_POWER_BIT_KHR = 0x00000002,
+ VK_VIDEO_CODING_QUALITY_PRESET_QUALITY_BIT_KHR = 0x00000004,
+ VK_VIDEO_CODING_QUALITY_PRESET_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF
+} VkVideoCodingQualityPresetFlagBitsKHR;
+typedef VkFlags VkVideoCodingQualityPresetFlagsKHR;
+typedef struct VkVideoQueueFamilyProperties2KHR {
+ VkStructureType sType;
+ void* pNext;
+ VkVideoCodecOperationFlagsKHR videoCodecOperations;
+} VkVideoQueueFamilyProperties2KHR;
+
+typedef struct VkVideoProfileKHR {
+ VkStructureType sType;
+ void* pNext;
+ VkVideoCodecOperationFlagBitsKHR videoCodecOperation;
+ VkVideoChromaSubsamplingFlagsKHR chromaSubsampling;
+ VkVideoComponentBitDepthFlagsKHR lumaBitDepth;
+ VkVideoComponentBitDepthFlagsKHR chromaBitDepth;
+} VkVideoProfileKHR;
+
+typedef struct VkVideoProfilesKHR {
+ VkStructureType sType;
+ void* pNext;
+ uint32_t profileCount;
+ const VkVideoProfileKHR* pProfiles;
+} VkVideoProfilesKHR;
+
+typedef struct VkVideoCapabilitiesKHR {
+ VkStructureType sType;
+ void* pNext;
+ VkVideoCapabilitiesFlagsKHR capabilityFlags;
+ VkDeviceSize minBitstreamBufferOffsetAlignment;
+ VkDeviceSize minBitstreamBufferSizeAlignment;
+ VkExtent2D videoPictureExtentGranularity;
+ VkExtent2D minExtent;
+ VkExtent2D maxExtent;
+ uint32_t maxReferencePicturesSlotsCount;
+ uint32_t maxReferencePicturesActiveCount;
+} VkVideoCapabilitiesKHR;
+
+typedef struct VkPhysicalDeviceVideoFormatInfoKHR {
+ VkStructureType sType;
+ const void* pNext;
+ VkImageUsageFlags imageUsage;
+ const VkVideoProfilesKHR* pVideoProfiles;
+} VkPhysicalDeviceVideoFormatInfoKHR;
+
+typedef struct VkVideoFormatPropertiesKHR {
+ VkStructureType sType;
+ void* pNext;
+ VkFormat format;
+} VkVideoFormatPropertiesKHR;
+
+typedef struct VkVideoPictureResourceKHR {
+ VkStructureType sType;
+ const void* pNext;
+ VkOffset2D codedOffset;
+ VkExtent2D codedExtent;
+ uint32_t baseArrayLayer;
+ VkImageView imageViewBinding;
+} VkVideoPictureResourceKHR;
+
+typedef struct VkVideoReferenceSlotKHR {
+ VkStructureType sType;
+ const void* pNext;
+ int8_t slotIndex;
+ const VkVideoPictureResourceKHR* pPictureResource;
+} VkVideoReferenceSlotKHR;
+
+typedef struct VkVideoGetMemoryPropertiesKHR {
+ VkStructureType sType;
+ const void* pNext;
+ uint32_t memoryBindIndex;
+ VkMemoryRequirements2* pMemoryRequirements;
+} VkVideoGetMemoryPropertiesKHR;
+
+typedef struct VkVideoBindMemoryKHR {
+ VkStructureType sType;
+ const void* pNext;
+ uint32_t memoryBindIndex;
+ VkDeviceMemory memory;
+ VkDeviceSize memoryOffset;
+ VkDeviceSize memorySize;
+} VkVideoBindMemoryKHR;
+
+typedef struct VkVideoSessionCreateInfoKHR {
+ VkStructureType sType;
+ const void* pNext;
+ uint32_t queueFamilyIndex;
+ VkVideoSessionCreateFlagsKHR flags;
+ const VkVideoProfileKHR* pVideoProfile;
+ VkFormat pictureFormat;
+ VkExtent2D maxCodedExtent;
+ VkFormat referencePicturesFormat;
+ uint32_t maxReferencePicturesSlotsCount;
+ uint32_t maxReferencePicturesActiveCount;
+} VkVideoSessionCreateInfoKHR;
+
+typedef struct VkVideoSessionParametersCreateInfoKHR {
+ VkStructureType sType;
+ const void* pNext;
+ VkVideoSessionParametersKHR videoSessionParametersTemplate;
+ VkVideoSessionKHR videoSession;
+} VkVideoSessionParametersCreateInfoKHR;
+
+typedef struct VkVideoSessionParametersUpdateInfoKHR {
+ VkStructureType sType;
+ const void* pNext;
+ uint32_t updateSequenceCount;
+} VkVideoSessionParametersUpdateInfoKHR;
+
+typedef struct VkVideoBeginCodingInfoKHR {
+ VkStructureType sType;
+ const void* pNext;
+ VkVideoBeginCodingFlagsKHR flags;
+ VkVideoCodingQualityPresetFlagsKHR codecQualityPreset;
+ VkVideoSessionKHR videoSession;
+ VkVideoSessionParametersKHR videoSessionParameters;
+ uint32_t referenceSlotCount;
+ const VkVideoReferenceSlotKHR* pReferenceSlots;
+} VkVideoBeginCodingInfoKHR;
+
+typedef struct VkVideoEndCodingInfoKHR {
+ VkStructureType sType;
+ const void* pNext;
+ VkVideoEndCodingFlagsKHR flags;
+} VkVideoEndCodingInfoKHR;
+
+typedef struct VkVideoCodingControlInfoKHR {
+ VkStructureType sType;
+ const void* pNext;
+ VkVideoCodingControlFlagsKHR flags;
+} VkVideoCodingControlInfoKHR;
+
+typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceVideoCapabilitiesKHR)(VkPhysicalDevice physicalDevice, const VkVideoProfileKHR* pVideoProfile, VkVideoCapabilitiesKHR* pCapabilities);
+typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceVideoFormatPropertiesKHR)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceVideoFormatInfoKHR* pVideoFormatInfo, uint32_t* pVideoFormatPropertyCount, VkVideoFormatPropertiesKHR* pVideoFormatProperties);
+typedef VkResult (VKAPI_PTR *PFN_vkCreateVideoSessionKHR)(VkDevice device, const VkVideoSessionCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkVideoSessionKHR* pVideoSession);
+typedef void (VKAPI_PTR *PFN_vkDestroyVideoSessionKHR)(VkDevice device, VkVideoSessionKHR videoSession, const VkAllocationCallbacks* pAllocator);
+typedef VkResult (VKAPI_PTR *PFN_vkGetVideoSessionMemoryRequirementsKHR)(VkDevice device, VkVideoSessionKHR videoSession, uint32_t* pVideoSessionMemoryRequirementsCount, VkVideoGetMemoryPropertiesKHR* pVideoSessionMemoryRequirements);
+typedef VkResult (VKAPI_PTR *PFN_vkBindVideoSessionMemoryKHR)(VkDevice device, VkVideoSessionKHR videoSession, uint32_t videoSessionBindMemoryCount, const VkVideoBindMemoryKHR* pVideoSessionBindMemories);
+typedef VkResult (VKAPI_PTR *PFN_vkCreateVideoSessionParametersKHR)(VkDevice device, const VkVideoSessionParametersCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkVideoSessionParametersKHR* pVideoSessionParameters);
+typedef VkResult (VKAPI_PTR *PFN_vkUpdateVideoSessionParametersKHR)(VkDevice device, VkVideoSessionParametersKHR videoSessionParameters, const VkVideoSessionParametersUpdateInfoKHR* pUpdateInfo);
+typedef void (VKAPI_PTR *PFN_vkDestroyVideoSessionParametersKHR)(VkDevice device, VkVideoSessionParametersKHR videoSessionParameters, const VkAllocationCallbacks* pAllocator);
+typedef void (VKAPI_PTR *PFN_vkCmdBeginVideoCodingKHR)(VkCommandBuffer commandBuffer, const VkVideoBeginCodingInfoKHR* pBeginInfo);
+typedef void (VKAPI_PTR *PFN_vkCmdEndVideoCodingKHR)(VkCommandBuffer commandBuffer, const VkVideoEndCodingInfoKHR* pEndCodingInfo);
+typedef void (VKAPI_PTR *PFN_vkCmdControlVideoCodingKHR)(VkCommandBuffer commandBuffer, const VkVideoCodingControlInfoKHR* pCodingControlInfo);
+
+#ifndef VK_NO_PROTOTYPES
+VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceVideoCapabilitiesKHR(
+ VkPhysicalDevice physicalDevice,
+ const VkVideoProfileKHR* pVideoProfile,
+ VkVideoCapabilitiesKHR* pCapabilities);
+
+VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceVideoFormatPropertiesKHR(
+ VkPhysicalDevice physicalDevice,
+ const VkPhysicalDeviceVideoFormatInfoKHR* pVideoFormatInfo,
+ uint32_t* pVideoFormatPropertyCount,
+ VkVideoFormatPropertiesKHR* pVideoFormatProperties);
+
+VKAPI_ATTR VkResult VKAPI_CALL vkCreateVideoSessionKHR(
+ VkDevice device,
+ const VkVideoSessionCreateInfoKHR* pCreateInfo,
+ const VkAllocationCallbacks* pAllocator,
+ VkVideoSessionKHR* pVideoSession);
+
+VKAPI_ATTR void VKAPI_CALL vkDestroyVideoSessionKHR(
+ VkDevice device,
+ VkVideoSessionKHR videoSession,
+ const VkAllocationCallbacks* pAllocator);
+
+VKAPI_ATTR VkResult VKAPI_CALL vkGetVideoSessionMemoryRequirementsKHR(
+ VkDevice device,
+ VkVideoSessionKHR videoSession,
+ uint32_t* pVideoSessionMemoryRequirementsCount,
+ VkVideoGetMemoryPropertiesKHR* pVideoSessionMemoryRequirements);
+
+VKAPI_ATTR VkResult VKAPI_CALL vkBindVideoSessionMemoryKHR(
+ VkDevice device,
+ VkVideoSessionKHR videoSession,
+ uint32_t videoSessionBindMemoryCount,
+ const VkVideoBindMemoryKHR* pVideoSessionBindMemories);
+
+VKAPI_ATTR VkResult VKAPI_CALL vkCreateVideoSessionParametersKHR(
+ VkDevice device,
+ const VkVideoSessionParametersCreateInfoKHR* pCreateInfo,
+ const VkAllocationCallbacks* pAllocator,
+ VkVideoSessionParametersKHR* pVideoSessionParameters);
+
+VKAPI_ATTR VkResult VKAPI_CALL vkUpdateVideoSessionParametersKHR(
+ VkDevice device,
+ VkVideoSessionParametersKHR videoSessionParameters,
+ const VkVideoSessionParametersUpdateInfoKHR* pUpdateInfo);
+
+VKAPI_ATTR void VKAPI_CALL vkDestroyVideoSessionParametersKHR(
+ VkDevice device,
+ VkVideoSessionParametersKHR videoSessionParameters,
+ const VkAllocationCallbacks* pAllocator);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdBeginVideoCodingKHR(
+ VkCommandBuffer commandBuffer,
+ const VkVideoBeginCodingInfoKHR* pBeginInfo);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdEndVideoCodingKHR(
+ VkCommandBuffer commandBuffer,
+ const VkVideoEndCodingInfoKHR* pEndCodingInfo);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdControlVideoCodingKHR(
+ VkCommandBuffer commandBuffer,
+ const VkVideoCodingControlInfoKHR* pCodingControlInfo);
+#endif
+
+
+#define VK_KHR_video_decode_queue 1
+#define VK_KHR_VIDEO_DECODE_QUEUE_SPEC_VERSION 1
+#define VK_KHR_VIDEO_DECODE_QUEUE_EXTENSION_NAME "VK_KHR_video_decode_queue"
+
+typedef enum VkVideoDecodeFlagBitsKHR {
+ VK_VIDEO_DECODE_DEFAULT_KHR = 0,
+ VK_VIDEO_DECODE_RESERVED_0_BIT_KHR = 0x00000001,
+ VK_VIDEO_DECODE_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF
+} VkVideoDecodeFlagBitsKHR;
+typedef VkFlags VkVideoDecodeFlagsKHR;
+typedef struct VkVideoDecodeInfoKHR {
+ VkStructureType sType;
+ const void* pNext;
+ VkVideoDecodeFlagsKHR flags;
+ VkOffset2D codedOffset;
+ VkExtent2D codedExtent;
+ VkBuffer srcBuffer;
+ VkDeviceSize srcBufferOffset;
+ VkDeviceSize srcBufferRange;
+ VkVideoPictureResourceKHR dstPictureResource;
+ const VkVideoReferenceSlotKHR* pSetupReferenceSlot;
+ uint32_t referenceSlotCount;
+ const VkVideoReferenceSlotKHR* pReferenceSlots;
+} VkVideoDecodeInfoKHR;
+
+typedef void (VKAPI_PTR *PFN_vkCmdDecodeVideoKHR)(VkCommandBuffer commandBuffer, const VkVideoDecodeInfoKHR* pFrameInfo);
+
+#ifndef VK_NO_PROTOTYPES
+VKAPI_ATTR void VKAPI_CALL vkCmdDecodeVideoKHR(
+ VkCommandBuffer commandBuffer,
+ const VkVideoDecodeInfoKHR* pFrameInfo);
+#endif
+
+
#define VK_KHR_portability_subset 1
#define VK_KHR_PORTABILITY_SUBSET_SPEC_VERSION 1
#define VK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME "VK_KHR_portability_subset"
@@ -49,6 +368,335 @@ typedef struct VkPhysicalDevicePortabilitySubsetPropertiesKHR {
} VkPhysicalDevicePortabilitySubsetPropertiesKHR;
+
+#define VK_KHR_video_encode_queue 1
+#define VK_KHR_VIDEO_ENCODE_QUEUE_SPEC_VERSION 2
+#define VK_KHR_VIDEO_ENCODE_QUEUE_EXTENSION_NAME "VK_KHR_video_encode_queue"
+
+typedef enum VkVideoEncodeFlagBitsKHR {
+ VK_VIDEO_ENCODE_DEFAULT_KHR = 0,
+ VK_VIDEO_ENCODE_RESERVED_0_BIT_KHR = 0x00000001,
+ VK_VIDEO_ENCODE_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF
+} VkVideoEncodeFlagBitsKHR;
+typedef VkFlags VkVideoEncodeFlagsKHR;
+
+typedef enum VkVideoEncodeRateControlFlagBitsKHR {
+ VK_VIDEO_ENCODE_RATE_CONTROL_DEFAULT_KHR = 0,
+ VK_VIDEO_ENCODE_RATE_CONTROL_RESET_BIT_KHR = 0x00000001,
+ VK_VIDEO_ENCODE_RATE_CONTROL_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF
+} VkVideoEncodeRateControlFlagBitsKHR;
+typedef VkFlags VkVideoEncodeRateControlFlagsKHR;
+
+typedef enum VkVideoEncodeRateControlModeFlagBitsKHR {
+ VK_VIDEO_ENCODE_RATE_CONTROL_MODE_NONE_BIT_KHR = 0,
+ VK_VIDEO_ENCODE_RATE_CONTROL_MODE_CBR_BIT_KHR = 1,
+ VK_VIDEO_ENCODE_RATE_CONTROL_MODE_VBR_BIT_KHR = 2,
+ VK_VIDEO_ENCODE_RATE_CONTROL_MODE_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF
+} VkVideoEncodeRateControlModeFlagBitsKHR;
+typedef VkFlags VkVideoEncodeRateControlModeFlagsKHR;
+typedef struct VkVideoEncodeInfoKHR {
+ VkStructureType sType;
+ const void* pNext;
+ VkVideoEncodeFlagsKHR flags;
+ uint32_t qualityLevel;
+ VkExtent2D codedExtent;
+ VkBuffer dstBitstreamBuffer;
+ VkDeviceSize dstBitstreamBufferOffset;
+ VkDeviceSize dstBitstreamBufferMaxRange;
+ VkVideoPictureResourceKHR srcPictureResource;
+ const VkVideoReferenceSlotKHR* pSetupReferenceSlot;
+ uint32_t referenceSlotCount;
+ const VkVideoReferenceSlotKHR* pReferenceSlots;
+} VkVideoEncodeInfoKHR;
+
+typedef struct VkVideoEncodeRateControlInfoKHR {
+ VkStructureType sType;
+ const void* pNext;
+ VkVideoEncodeRateControlFlagsKHR flags;
+ VkVideoEncodeRateControlModeFlagBitsKHR rateControlMode;
+ uint32_t averageBitrate;
+ uint16_t peakToAverageBitrateRatio;
+ uint16_t frameRateNumerator;
+ uint16_t frameRateDenominator;
+ uint32_t virtualBufferSizeInMs;
+} VkVideoEncodeRateControlInfoKHR;
+
+typedef void (VKAPI_PTR *PFN_vkCmdEncodeVideoKHR)(VkCommandBuffer commandBuffer, const VkVideoEncodeInfoKHR* pEncodeInfo);
+
+#ifndef VK_NO_PROTOTYPES
+VKAPI_ATTR void VKAPI_CALL vkCmdEncodeVideoKHR(
+ VkCommandBuffer commandBuffer,
+ const VkVideoEncodeInfoKHR* pEncodeInfo);
+#endif
+
+
+#define VK_EXT_video_encode_h264 1
+#include "vk_video/vulkan_video_codec_h264std.h"
+#include "vk_video/vulkan_video_codec_h264std_encode.h"
+#define VK_EXT_VIDEO_ENCODE_H264_SPEC_VERSION 1
+#define VK_EXT_VIDEO_ENCODE_H264_EXTENSION_NAME "VK_EXT_video_encode_h264"
+
+typedef enum VkVideoEncodeH264CapabilitiesFlagBitsEXT {
+ VK_VIDEO_ENCODE_H264_CAPABILITY_CABAC_BIT_EXT = 0x00000001,
+ VK_VIDEO_ENCODE_H264_CAPABILITY_CAVLC_BIT_EXT = 0x00000002,
+ VK_VIDEO_ENCODE_H264_CAPABILITY_WEIGHTED_BI_PRED_IMPLICIT_BIT_EXT = 0x00000004,
+ VK_VIDEO_ENCODE_H264_CAPABILITY_TRANSFORM_8X8_BIT_EXT = 0x00000008,
+ VK_VIDEO_ENCODE_H264_CAPABILITY_CHROMA_QP_OFFSET_BIT_EXT = 0x00000010,
+ VK_VIDEO_ENCODE_H264_CAPABILITY_SECOND_CHROMA_QP_OFFSET_BIT_EXT = 0x00000020,
+ VK_VIDEO_ENCODE_H264_CAPABILITY_DEBLOCKING_FILTER_DISABLED_BIT_EXT = 0x00000040,
+ VK_VIDEO_ENCODE_H264_CAPABILITY_DEBLOCKING_FILTER_ENABLED_BIT_EXT = 0x00000080,
+ VK_VIDEO_ENCODE_H264_CAPABILITY_DEBLOCKING_FILTER_PARTIAL_BIT_EXT = 0x00000100,
+ VK_VIDEO_ENCODE_H264_CAPABILITY_MULTIPLE_SLICE_PER_FRAME_BIT_EXT = 0x00000200,
+ VK_VIDEO_ENCODE_H264_CAPABILITY_EVENLY_DISTRIBUTED_SLICE_SIZE_BIT_EXT = 0x00000400,
+ VK_VIDEO_ENCODE_H264_CAPABILITIES_FLAG_BITS_MAX_ENUM_EXT = 0x7FFFFFFF
+} VkVideoEncodeH264CapabilitiesFlagBitsEXT;
+typedef VkFlags VkVideoEncodeH264CapabilitiesFlagsEXT;
+
+typedef enum VkVideoEncodeH264InputModeFlagBitsEXT {
+ VK_VIDEO_ENCODE_H264_INPUT_MODE_FRAME_BIT_EXT = 0x00000001,
+ VK_VIDEO_ENCODE_H264_INPUT_MODE_SLICE_BIT_EXT = 0x00000002,
+ VK_VIDEO_ENCODE_H264_INPUT_MODE_NON_VCL_BIT_EXT = 0x00000004,
+ VK_VIDEO_ENCODE_H264_INPUT_MODE_FLAG_BITS_MAX_ENUM_EXT = 0x7FFFFFFF
+} VkVideoEncodeH264InputModeFlagBitsEXT;
+typedef VkFlags VkVideoEncodeH264InputModeFlagsEXT;
+
+typedef enum VkVideoEncodeH264OutputModeFlagBitsEXT {
+ VK_VIDEO_ENCODE_H264_OUTPUT_MODE_FRAME_BIT_EXT = 0x00000001,
+ VK_VIDEO_ENCODE_H264_OUTPUT_MODE_SLICE_BIT_EXT = 0x00000002,
+ VK_VIDEO_ENCODE_H264_OUTPUT_MODE_NON_VCL_BIT_EXT = 0x00000004,
+ VK_VIDEO_ENCODE_H264_OUTPUT_MODE_FLAG_BITS_MAX_ENUM_EXT = 0x7FFFFFFF
+} VkVideoEncodeH264OutputModeFlagBitsEXT;
+typedef VkFlags VkVideoEncodeH264OutputModeFlagsEXT;
+
+typedef enum VkVideoEncodeH264CreateFlagBitsEXT {
+ VK_VIDEO_ENCODE_H264_CREATE_DEFAULT_EXT = 0,
+ VK_VIDEO_ENCODE_H264_CREATE_RESERVED_0_BIT_EXT = 0x00000001,
+ VK_VIDEO_ENCODE_H264_CREATE_FLAG_BITS_MAX_ENUM_EXT = 0x7FFFFFFF
+} VkVideoEncodeH264CreateFlagBitsEXT;
+typedef VkFlags VkVideoEncodeH264CreateFlagsEXT;
+typedef struct VkVideoEncodeH264CapabilitiesEXT {
+ VkStructureType sType;
+ const void* pNext;
+ VkVideoEncodeH264CapabilitiesFlagsEXT flags;
+ VkVideoEncodeH264InputModeFlagsEXT inputModeFlags;
+ VkVideoEncodeH264OutputModeFlagsEXT outputModeFlags;
+ VkExtent2D minPictureSizeInMbs;
+ VkExtent2D maxPictureSizeInMbs;
+ VkExtent2D inputImageDataAlignment;
+ uint8_t maxNumL0ReferenceForP;
+ uint8_t maxNumL0ReferenceForB;
+ uint8_t maxNumL1Reference;
+ uint8_t qualityLevelCount;
+ VkExtensionProperties stdExtensionVersion;
+} VkVideoEncodeH264CapabilitiesEXT;
+
+typedef struct VkVideoEncodeH264SessionCreateInfoEXT {
+ VkStructureType sType;
+ const void* pNext;
+ VkVideoEncodeH264CreateFlagsEXT flags;
+ VkExtent2D maxPictureSizeInMbs;
+ const VkExtensionProperties* pStdExtensionVersion;
+} VkVideoEncodeH264SessionCreateInfoEXT;
+
+typedef struct VkVideoEncodeH264SessionParametersAddInfoEXT {
+ VkStructureType sType;
+ const void* pNext;
+ uint32_t spsStdCount;
+ const StdVideoH264SequenceParameterSet* pSpsStd;
+ uint32_t ppsStdCount;
+ const StdVideoH264PictureParameterSet* pPpsStd;
+} VkVideoEncodeH264SessionParametersAddInfoEXT;
+
+typedef struct VkVideoEncodeH264SessionParametersCreateInfoEXT {
+ VkStructureType sType;
+ const void* pNext;
+ uint32_t maxSpsStdCount;
+ uint32_t maxPpsStdCount;
+ const VkVideoEncodeH264SessionParametersAddInfoEXT* pParametersAddInfo;
+} VkVideoEncodeH264SessionParametersCreateInfoEXT;
+
+typedef struct VkVideoEncodeH264DpbSlotInfoEXT {
+ VkStructureType sType;
+ const void* pNext;
+ int8_t slotIndex;
+ const StdVideoEncodeH264PictureInfo* pStdPictureInfo;
+} VkVideoEncodeH264DpbSlotInfoEXT;
+
+typedef struct VkVideoEncodeH264NaluSliceEXT {
+ VkStructureType sType;
+ const void* pNext;
+ const StdVideoEncodeH264SliceHeader* pSliceHeaderStd;
+ uint32_t mbCount;
+ uint8_t refFinalList0EntryCount;
+ const VkVideoEncodeH264DpbSlotInfoEXT* pRefFinalList0Entries;
+ uint8_t refFinalList1EntryCount;
+ const VkVideoEncodeH264DpbSlotInfoEXT* pRefFinalList1Entries;
+ uint32_t precedingNaluBytes;
+ uint8_t minQp;
+ uint8_t maxQp;
+} VkVideoEncodeH264NaluSliceEXT;
+
+typedef struct VkVideoEncodeH264VclFrameInfoEXT {
+ VkStructureType sType;
+ const void* pNext;
+ uint8_t refDefaultFinalList0EntryCount;
+ const VkVideoEncodeH264DpbSlotInfoEXT* pRefDefaultFinalList0Entries;
+ uint8_t refDefaultFinalList1EntryCount;
+ const VkVideoEncodeH264DpbSlotInfoEXT* pRefDefaultFinalList1Entries;
+ uint32_t naluSliceEntryCount;
+ const VkVideoEncodeH264NaluSliceEXT* pNaluSliceEntries;
+ const VkVideoEncodeH264DpbSlotInfoEXT* pCurrentPictureInfo;
+} VkVideoEncodeH264VclFrameInfoEXT;
+
+typedef struct VkVideoEncodeH264EmitPictureParametersEXT {
+ VkStructureType sType;
+ const void* pNext;
+ uint8_t spsId;
+ VkBool32 emitSpsEnable;
+ uint32_t ppsIdEntryCount;
+ const uint8_t* ppsIdEntries;
+} VkVideoEncodeH264EmitPictureParametersEXT;
+
+typedef struct VkVideoEncodeH264ProfileEXT {
+ VkStructureType sType;
+ const void* pNext;
+ StdVideoH264ProfileIdc stdProfileIdc;
+} VkVideoEncodeH264ProfileEXT;
+
+
+
+#define VK_EXT_video_decode_h264 1
+#include "vk_video/vulkan_video_codec_h264std_decode.h"
+#define VK_EXT_VIDEO_DECODE_H264_SPEC_VERSION 1
+#define VK_EXT_VIDEO_DECODE_H264_EXTENSION_NAME "VK_EXT_video_decode_h264"
+
+typedef enum VkVideoDecodeH264FieldLayoutFlagBitsEXT {
+ VK_VIDEO_DECODE_H264_PROGRESSIVE_PICTURES_ONLY_EXT = 0,
+ VK_VIDEO_DECODE_H264_FIELD_LAYOUT_LINE_INTERLACED_PLANE_BIT_EXT = 0x00000001,
+ VK_VIDEO_DECODE_H264_FIELD_LAYOUT_SEPARATE_INTERLACED_PLANE_BIT_EXT = 0x00000002,
+ VK_VIDEO_DECODE_H264_FIELD_LAYOUT_FLAG_BITS_MAX_ENUM_EXT = 0x7FFFFFFF
+} VkVideoDecodeH264FieldLayoutFlagBitsEXT;
+typedef VkFlags VkVideoDecodeH264FieldLayoutFlagsEXT;
+typedef VkFlags VkVideoDecodeH264CreateFlagsEXT;
+typedef struct VkVideoDecodeH264ProfileEXT {
+ VkStructureType sType;
+ const void* pNext;
+ StdVideoH264ProfileIdc stdProfileIdc;
+ VkVideoDecodeH264FieldLayoutFlagsEXT fieldLayout;
+} VkVideoDecodeH264ProfileEXT;
+
+typedef struct VkVideoDecodeH264CapabilitiesEXT {
+ VkStructureType sType;
+ void* pNext;
+ uint32_t maxLevel;
+ VkOffset2D fieldOffsetGranularity;
+ VkExtensionProperties stdExtensionVersion;
+} VkVideoDecodeH264CapabilitiesEXT;
+
+typedef struct VkVideoDecodeH264SessionCreateInfoEXT {
+ VkStructureType sType;
+ const void* pNext;
+ VkVideoDecodeH264CreateFlagsEXT flags;
+ const VkExtensionProperties* pStdExtensionVersion;
+} VkVideoDecodeH264SessionCreateInfoEXT;
+
+typedef struct VkVideoDecodeH264SessionParametersAddInfoEXT {
+ VkStructureType sType;
+ const void* pNext;
+ uint32_t spsStdCount;
+ const StdVideoH264SequenceParameterSet* pSpsStd;
+ uint32_t ppsStdCount;
+ const StdVideoH264PictureParameterSet* pPpsStd;
+} VkVideoDecodeH264SessionParametersAddInfoEXT;
+
+typedef struct VkVideoDecodeH264SessionParametersCreateInfoEXT {
+ VkStructureType sType;
+ const void* pNext;
+ uint32_t maxSpsStdCount;
+ uint32_t maxPpsStdCount;
+ const VkVideoDecodeH264SessionParametersAddInfoEXT* pParametersAddInfo;
+} VkVideoDecodeH264SessionParametersCreateInfoEXT;
+
+typedef struct VkVideoDecodeH264PictureInfoEXT {
+ VkStructureType sType;
+ const void* pNext;
+ const StdVideoDecodeH264PictureInfo* pStdPictureInfo;
+ uint32_t slicesCount;
+ const uint32_t* pSlicesDataOffsets;
+} VkVideoDecodeH264PictureInfoEXT;
+
+typedef struct VkVideoDecodeH264MvcEXT {
+ VkStructureType sType;
+ const void* pNext;
+ const StdVideoDecodeH264Mvc* pStdMvc;
+} VkVideoDecodeH264MvcEXT;
+
+typedef struct VkVideoDecodeH264DpbSlotInfoEXT {
+ VkStructureType sType;
+ const void* pNext;
+ const StdVideoDecodeH264ReferenceInfo* pStdReferenceInfo;
+} VkVideoDecodeH264DpbSlotInfoEXT;
+
+
+
+#define VK_EXT_video_decode_h265 1
+#include "vk_video/vulkan_video_codec_h265std.h"
+#include "vk_video/vulkan_video_codec_h265std_decode.h"
+#define VK_EXT_VIDEO_DECODE_H265_SPEC_VERSION 1
+#define VK_EXT_VIDEO_DECODE_H265_EXTENSION_NAME "VK_EXT_video_decode_h265"
+typedef VkFlags VkVideoDecodeH265CreateFlagsEXT;
+typedef struct VkVideoDecodeH265ProfileEXT {
+ VkStructureType sType;
+ const void* pNext;
+ StdVideoH265ProfileIdc stdProfileIdc;
+} VkVideoDecodeH265ProfileEXT;
+
+typedef struct VkVideoDecodeH265CapabilitiesEXT {
+ VkStructureType sType;
+ void* pNext;
+ uint32_t maxLevel;
+ VkExtensionProperties stdExtensionVersion;
+} VkVideoDecodeH265CapabilitiesEXT;
+
+typedef struct VkVideoDecodeH265SessionCreateInfoEXT {
+ VkStructureType sType;
+ const void* pNext;
+ VkVideoDecodeH265CreateFlagsEXT flags;
+ const VkExtensionProperties* pStdExtensionVersion;
+} VkVideoDecodeH265SessionCreateInfoEXT;
+
+typedef struct VkVideoDecodeH265SessionParametersAddInfoEXT {
+ VkStructureType sType;
+ const void* pNext;
+ uint32_t spsStdCount;
+ const StdVideoH265SequenceParameterSet* pSpsStd;
+ uint32_t ppsStdCount;
+ const StdVideoH265PictureParameterSet* pPpsStd;
+} VkVideoDecodeH265SessionParametersAddInfoEXT;
+
+typedef struct VkVideoDecodeH265SessionParametersCreateInfoEXT {
+ VkStructureType sType;
+ const void* pNext;
+ uint32_t maxSpsStdCount;
+ uint32_t maxPpsStdCount;
+ const VkVideoDecodeH265SessionParametersAddInfoEXT* pParametersAddInfo;
+} VkVideoDecodeH265SessionParametersCreateInfoEXT;
+
+typedef struct VkVideoDecodeH265PictureInfoEXT {
+ VkStructureType sType;
+ const void* pNext;
+ StdVideoDecodeH265PictureInfo* pStdPictureInfo;
+ uint32_t slicesCount;
+ const uint32_t* pSlicesDataOffsets;
+} VkVideoDecodeH265PictureInfoEXT;
+
+typedef struct VkVideoDecodeH265DpbSlotInfoEXT {
+ VkStructureType sType;
+ const void* pNext;
+ const StdVideoDecodeH265ReferenceInfo* pStdReferenceInfo;
+} VkVideoDecodeH265DpbSlotInfoEXT;
+
+
#ifdef __cplusplus
}
#endif
diff --git a/thirdparty/vulkan/include/vulkan/vulkan_core.h b/thirdparty/vulkan/include/vulkan/vulkan_core.h
index cc0851f77c..b2448fb2e1 100644
--- a/thirdparty/vulkan/include/vulkan/vulkan_core.h
+++ b/thirdparty/vulkan/include/vulkan/vulkan_core.h
@@ -2,7 +2,7 @@
#define VULKAN_CORE_H_ 1
/*
-** Copyright (c) 2015-2020 The Khronos Group Inc.
+** Copyright 2015-2021 The Khronos Group Inc.
**
** SPDX-License-Identifier: Apache-2.0
*/
@@ -25,35 +25,71 @@ extern "C" {
#define VK_DEFINE_HANDLE(object) typedef struct object##_T* object;
-#if !defined(VK_DEFINE_NON_DISPATCHABLE_HANDLE)
-#if defined(__LP64__) || defined(_WIN64) || (defined(__x86_64__) && !defined(__ILP32__) ) || defined(_M_X64) || defined(__ia64) || defined (_M_IA64) || defined(__aarch64__) || defined(__powerpc64__)
+#ifndef VK_USE_64_BIT_PTR_DEFINES
+ #if defined(__LP64__) || defined(_WIN64) || (defined(__x86_64__) && !defined(__ILP32__) ) || defined(_M_X64) || defined(__ia64) || defined (_M_IA64) || defined(__aarch64__) || defined(__powerpc64__)
+ #define VK_USE_64_BIT_PTR_DEFINES 1
+ #else
+ #define VK_USE_64_BIT_PTR_DEFINES 0
+ #endif
+#endif
+
+
+#ifndef VK_DEFINE_NON_DISPATCHABLE_HANDLE
+ #if (VK_USE_64_BIT_PTR_DEFINES==1)
+ #if (defined(__cplusplus) && (__cplusplus >= 201103L)) || (defined(_MSVC_LANG) && (_MSVC_LANG >= 201103L))
+ #define VK_NULL_HANDLE nullptr
+ #else
+ #define VK_NULL_HANDLE ((void*)0)
+ #endif
+ #else
+ #define VK_NULL_HANDLE 0ULL
+ #endif
+#endif
+#ifndef VK_NULL_HANDLE
+ #define VK_NULL_HANDLE 0
+#endif
+
+
+#ifndef VK_DEFINE_NON_DISPATCHABLE_HANDLE
+ #if (VK_USE_64_BIT_PTR_DEFINES==1)
#define VK_DEFINE_NON_DISPATCHABLE_HANDLE(object) typedef struct object##_T *object;
-#else
+ #else
#define VK_DEFINE_NON_DISPATCHABLE_HANDLE(object) typedef uint64_t object;
-#endif
+ #endif
#endif
+// DEPRECATED: This define is deprecated. VK_MAKE_API_VERSION should be used instead.
#define VK_MAKE_VERSION(major, minor, patch) \
((((uint32_t)(major)) << 22) | (((uint32_t)(minor)) << 12) | ((uint32_t)(patch)))
// DEPRECATED: This define has been removed. Specific version defines (e.g. VK_API_VERSION_1_0), or the VK_MAKE_VERSION macro, should be used instead.
//#define VK_API_VERSION VK_MAKE_VERSION(1, 0, 0) // Patch version should always be set to 0
+#define VK_MAKE_API_VERSION(variant, major, minor, patch) \
+ ((((uint32_t)(variant)) << 29) | (((uint32_t)(major)) << 22) | (((uint32_t)(minor)) << 12) | ((uint32_t)(patch)))
+
// Vulkan 1.0 version number
-#define VK_API_VERSION_1_0 VK_MAKE_VERSION(1, 0, 0)// Patch version should always be set to 0
+#define VK_API_VERSION_1_0 VK_MAKE_API_VERSION(0, 1, 0, 0)// Patch version should always be set to 0
// Version of this file
-#define VK_HEADER_VERSION 162
+#define VK_HEADER_VERSION 182
// Complete version of this file
-#define VK_HEADER_VERSION_COMPLETE VK_MAKE_VERSION(1, 2, VK_HEADER_VERSION)
+#define VK_HEADER_VERSION_COMPLETE VK_MAKE_API_VERSION(0, 1, 2, VK_HEADER_VERSION)
+// DEPRECATED: This define is deprecated. VK_API_VERSION_MAJOR should be used instead.
#define VK_VERSION_MAJOR(version) ((uint32_t)(version) >> 22)
-#define VK_VERSION_MINOR(version) (((uint32_t)(version) >> 12) & 0x3ff)
-#define VK_VERSION_PATCH(version) ((uint32_t)(version) & 0xfff)
-#define VK_NULL_HANDLE 0
+// DEPRECATED: This define is deprecated. VK_API_VERSION_MINOR should be used instead.
+#define VK_VERSION_MINOR(version) (((uint32_t)(version) >> 12) & 0x3FFU)
+
+// DEPRECATED: This define is deprecated. VK_API_VERSION_PATCH should be used instead.
+#define VK_VERSION_PATCH(version) ((uint32_t)(version) & 0xFFFU)
+#define VK_API_VERSION_VARIANT(version) ((uint32_t)(version) >> 29)
+#define VK_API_VERSION_MAJOR(version) (((uint32_t)(version) >> 22) & 0x7FU)
+#define VK_API_VERSION_MINOR(version) (((uint32_t)(version) >> 12) & 0x3FFU)
+#define VK_API_VERSION_PATCH(version) ((uint32_t)(version) & 0xFFFU)
typedef uint32_t VkBool32;
typedef uint64_t VkDeviceAddress;
typedef uint64_t VkDeviceSize;
@@ -85,20 +121,20 @@ VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDescriptorPool)
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkFramebuffer)
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkCommandPool)
#define VK_ATTACHMENT_UNUSED (~0U)
-#define VK_FALSE 0
-#define VK_LOD_CLAMP_NONE 1000.0f
+#define VK_FALSE 0U
+#define VK_LOD_CLAMP_NONE 1000.0F
#define VK_QUEUE_FAMILY_IGNORED (~0U)
#define VK_REMAINING_ARRAY_LAYERS (~0U)
#define VK_REMAINING_MIP_LEVELS (~0U)
#define VK_SUBPASS_EXTERNAL (~0U)
-#define VK_TRUE 1
+#define VK_TRUE 1U
#define VK_WHOLE_SIZE (~0ULL)
-#define VK_MAX_MEMORY_TYPES 32
-#define VK_MAX_MEMORY_HEAPS 16
-#define VK_MAX_PHYSICAL_DEVICE_NAME_SIZE 256
-#define VK_UUID_SIZE 16
-#define VK_MAX_EXTENSION_NAME_SIZE 256
-#define VK_MAX_DESCRIPTION_SIZE 256
+#define VK_MAX_MEMORY_TYPES 32U
+#define VK_MAX_MEMORY_HEAPS 16U
+#define VK_MAX_PHYSICAL_DEVICE_NAME_SIZE 256U
+#define VK_UUID_SIZE 16U
+#define VK_MAX_EXTENSION_NAME_SIZE 256U
+#define VK_MAX_DESCRIPTION_SIZE 256U
typedef enum VkResult {
VK_SUCCESS = 0,
@@ -334,14 +370,119 @@ typedef enum VkStructureType {
VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT = 1000022000,
VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT = 1000022001,
VK_STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT = 1000022002,
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_STRUCTURE_TYPE_VIDEO_PROFILE_KHR = 1000023000,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_STRUCTURE_TYPE_VIDEO_CAPABILITIES_KHR = 1000023001,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_STRUCTURE_TYPE_VIDEO_PICTURE_RESOURCE_KHR = 1000023002,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_STRUCTURE_TYPE_VIDEO_GET_MEMORY_PROPERTIES_KHR = 1000023003,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_STRUCTURE_TYPE_VIDEO_BIND_MEMORY_KHR = 1000023004,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_STRUCTURE_TYPE_VIDEO_SESSION_CREATE_INFO_KHR = 1000023005,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_STRUCTURE_TYPE_VIDEO_SESSION_PARAMETERS_CREATE_INFO_KHR = 1000023006,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_STRUCTURE_TYPE_VIDEO_SESSION_PARAMETERS_UPDATE_INFO_KHR = 1000023007,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_STRUCTURE_TYPE_VIDEO_BEGIN_CODING_INFO_KHR = 1000023008,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_STRUCTURE_TYPE_VIDEO_END_CODING_INFO_KHR = 1000023009,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_STRUCTURE_TYPE_VIDEO_CODING_CONTROL_INFO_KHR = 1000023010,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_STRUCTURE_TYPE_VIDEO_REFERENCE_SLOT_KHR = 1000023011,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_STRUCTURE_TYPE_VIDEO_QUEUE_FAMILY_PROPERTIES_2_KHR = 1000023012,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_STRUCTURE_TYPE_VIDEO_PROFILES_KHR = 1000023013,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VIDEO_FORMAT_INFO_KHR = 1000023014,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_STRUCTURE_TYPE_VIDEO_FORMAT_PROPERTIES_KHR = 1000023015,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_STRUCTURE_TYPE_VIDEO_DECODE_INFO_KHR = 1000024000,
+#endif
VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV = 1000026000,
VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV = 1000026001,
VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV = 1000026002,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT = 1000028000,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT = 1000028001,
VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT = 1000028002,
+ VK_STRUCTURE_TYPE_CU_MODULE_CREATE_INFO_NVX = 1000029000,
+ VK_STRUCTURE_TYPE_CU_FUNCTION_CREATE_INFO_NVX = 1000029001,
+ VK_STRUCTURE_TYPE_CU_LAUNCH_INFO_NVX = 1000029002,
VK_STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX = 1000030000,
VK_STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX = 1000030001,
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_CAPABILITIES_EXT = 1000038000,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_CREATE_INFO_EXT = 1000038001,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT = 1000038002,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT = 1000038003,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_VCL_FRAME_INFO_EXT = 1000038004,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_DPB_SLOT_INFO_EXT = 1000038005,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_NALU_SLICE_EXT = 1000038006,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_EMIT_PICTURE_PARAMETERS_EXT = 1000038007,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_PROFILE_EXT = 1000038008,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_CAPABILITIES_EXT = 1000040000,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_CREATE_INFO_EXT = 1000040001,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PICTURE_INFO_EXT = 1000040002,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_MVC_EXT = 1000040003,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PROFILE_EXT = 1000040004,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT = 1000040005,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT = 1000040006,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_DPB_SLOT_INFO_EXT = 1000040007,
+#endif
VK_STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD = 1000041000,
VK_STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP = 1000049000,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV = 1000050000,
@@ -468,8 +609,12 @@ typedef enum VkStructureType {
VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT = 1000158005,
VK_STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT = 1000160000,
VK_STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT = 1000160001,
+#ifdef VK_ENABLE_BETA_EXTENSIONS
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_FEATURES_KHR = 1000163000,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_PROPERTIES_KHR = 1000163001,
+#endif
VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV = 1000164000,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV = 1000164001,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV = 1000164002,
@@ -497,6 +642,27 @@ typedef enum VkStructureType {
VK_STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD = 1000183000,
VK_STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT = 1000184000,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD = 1000185000,
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_CAPABILITIES_EXT = 1000187000,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_CREATE_INFO_EXT = 1000187001,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT = 1000187002,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT = 1000187003,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PROFILE_EXT = 1000187004,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PICTURE_INFO_EXT = 1000187005,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_DPB_SLOT_INFO_EXT = 1000187006,
+#endif
VK_STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD = 1000189000,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT = 1000190000,
VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT = 1000190001,
@@ -556,6 +722,9 @@ typedef enum VkStructureType {
VK_STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV = 1000250002,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT = 1000251000,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT = 1000252000,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_FEATURES_EXT = 1000254000,
+ VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_PROVOKING_VERTEX_STATE_CREATE_INFO_EXT = 1000254001,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_PROPERTIES_EXT = 1000254002,
VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT = 1000255000,
VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT = 1000255002,
VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT = 1000255001,
@@ -581,6 +750,8 @@ typedef enum VkStructureType {
VK_STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV = 1000277005,
VK_STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV = 1000277006,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV = 1000277007,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INHERITED_VIEWPORT_SCISSOR_FEATURES_NV = 1000278000,
+ VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_VIEWPORT_SCISSOR_INFO_NV = 1000278001,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT = 1000281000,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT = 1000281001,
VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM = 1000282000,
@@ -598,15 +769,38 @@ typedef enum VkStructureType {
VK_STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT = 1000295001,
VK_STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT = 1000295002,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT = 1000297000,
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_STRUCTURE_TYPE_VIDEO_ENCODE_INFO_KHR = 1000299000,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_INFO_KHR = 1000299001,
+#endif
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV = 1000300000,
VK_STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV = 1000300001,
+ VK_STRUCTURE_TYPE_MEMORY_BARRIER_2_KHR = 1000314000,
+ VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER_2_KHR = 1000314001,
+ VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER_2_KHR = 1000314002,
+ VK_STRUCTURE_TYPE_DEPENDENCY_INFO_KHR = 1000314003,
+ VK_STRUCTURE_TYPE_SUBMIT_INFO_2_KHR = 1000314004,
+ VK_STRUCTURE_TYPE_SEMAPHORE_SUBMIT_INFO_KHR = 1000314005,
+ VK_STRUCTURE_TYPE_COMMAND_BUFFER_SUBMIT_INFO_KHR = 1000314006,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES_KHR = 1000314007,
+ VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_2_NV = 1000314008,
+ VK_STRUCTURE_TYPE_CHECKPOINT_DATA_2_NV = 1000314009,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR = 1000323000,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES_KHR = 1000325000,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_PROPERTIES_NV = 1000326000,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_FEATURES_NV = 1000326001,
VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_ENUM_STATE_CREATE_INFO_NV = 1000326002,
+ VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_MOTION_TRIANGLES_DATA_NV = 1000327000,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MOTION_BLUR_FEATURES_NV = 1000327001,
+ VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MOTION_INFO_NV = 1000327002,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_2_PLANE_444_FORMATS_FEATURES_EXT = 1000330000,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_FEATURES_EXT = 1000332000,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_PROPERTIES_EXT = 1000332001,
VK_STRUCTURE_TYPE_COPY_COMMAND_TRANSFORM_INFO_QCOM = 1000333000,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES_EXT = 1000335000,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_FEATURES_KHR = 1000336000,
VK_STRUCTURE_TYPE_COPY_BUFFER_INFO_2_KHR = 1000337000,
VK_STRUCTURE_TYPE_COPY_IMAGE_INFO_2_KHR = 1000337001,
VK_STRUCTURE_TYPE_COPY_BUFFER_TO_IMAGE_INFO_2_KHR = 1000337002,
@@ -620,6 +814,28 @@ typedef enum VkStructureType {
VK_STRUCTURE_TYPE_IMAGE_RESOLVE_2_KHR = 1000337010,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_4444_FORMATS_FEATURES_EXT = 1000340000,
VK_STRUCTURE_TYPE_DIRECTFB_SURFACE_CREATE_INFO_EXT = 1000346000,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_VALVE = 1000351000,
+ VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_VALVE = 1000351002,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_INPUT_DYNAMIC_STATE_FEATURES_EXT = 1000352000,
+ VK_STRUCTURE_TYPE_VERTEX_INPUT_BINDING_DESCRIPTION_2_EXT = 1000352001,
+ VK_STRUCTURE_TYPE_VERTEX_INPUT_ATTRIBUTE_DESCRIPTION_2_EXT = 1000352002,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRM_PROPERTIES_EXT = 1000353000,
+ VK_STRUCTURE_TYPE_IMPORT_MEMORY_ZIRCON_HANDLE_INFO_FUCHSIA = 1000364000,
+ VK_STRUCTURE_TYPE_MEMORY_ZIRCON_HANDLE_PROPERTIES_FUCHSIA = 1000364001,
+ VK_STRUCTURE_TYPE_MEMORY_GET_ZIRCON_HANDLE_INFO_FUCHSIA = 1000364002,
+ VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_ZIRCON_HANDLE_INFO_FUCHSIA = 1000365000,
+ VK_STRUCTURE_TYPE_SEMAPHORE_GET_ZIRCON_HANDLE_INFO_FUCHSIA = 1000365001,
+ VK_STRUCTURE_TYPE_SUBPASSS_SHADING_PIPELINE_CREATE_INFO_HUAWEI = 1000369000,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_FEATURES_HUAWEI = 1000369001,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_PROPERTIES_HUAWEI = 1000369002,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT = 1000377000,
+ VK_STRUCTURE_TYPE_SCREEN_SURFACE_CREATE_INFO_QNX = 1000378000,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT = 1000381000,
+ VK_STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT = 1000381001,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_EXT = 1000388000,
+ VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_EXT = 1000388001,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT = 1000392000,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT = 1000392001,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETER_FEATURES = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES,
VK_STRUCTURE_TYPE_DEBUG_REPORT_CREATE_INFO_EXT = VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT,
@@ -754,12 +970,32 @@ typedef enum VkImageLayout {
VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL = 1000241002,
VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL = 1000241003,
VK_IMAGE_LAYOUT_PRESENT_SRC_KHR = 1000001002,
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_IMAGE_LAYOUT_VIDEO_DECODE_DST_KHR = 1000024000,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_IMAGE_LAYOUT_VIDEO_DECODE_SRC_KHR = 1000024001,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_IMAGE_LAYOUT_VIDEO_DECODE_DPB_KHR = 1000024002,
+#endif
VK_IMAGE_LAYOUT_SHARED_PRESENT_KHR = 1000111000,
- VK_IMAGE_LAYOUT_SHADING_RATE_OPTIMAL_NV = 1000164003,
VK_IMAGE_LAYOUT_FRAGMENT_DENSITY_MAP_OPTIMAL_EXT = 1000218000,
+ VK_IMAGE_LAYOUT_FRAGMENT_SHADING_RATE_ATTACHMENT_OPTIMAL_KHR = 1000164003,
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_IMAGE_LAYOUT_VIDEO_ENCODE_DST_KHR = 1000299000,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_IMAGE_LAYOUT_VIDEO_ENCODE_SRC_KHR = 1000299001,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_IMAGE_LAYOUT_VIDEO_ENCODE_DPB_KHR = 1000299002,
+#endif
+ VK_IMAGE_LAYOUT_READ_ONLY_OPTIMAL_KHR = 1000314000,
+ VK_IMAGE_LAYOUT_ATTACHMENT_OPTIMAL_KHR = 1000314001,
VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL_KHR = VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL,
VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL_KHR = VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL,
- VK_IMAGE_LAYOUT_FRAGMENT_SHADING_RATE_ATTACHMENT_OPTIMAL_KHR = VK_IMAGE_LAYOUT_SHADING_RATE_OPTIMAL_NV,
+ VK_IMAGE_LAYOUT_SHADING_RATE_OPTIMAL_NV = VK_IMAGE_LAYOUT_FRAGMENT_SHADING_RATE_ATTACHMENT_OPTIMAL_KHR,
VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL_KHR = VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL,
VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL_KHR = VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL,
VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL_KHR = VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL,
@@ -801,6 +1037,14 @@ typedef enum VkObjectType {
VK_OBJECT_TYPE_DISPLAY_KHR = 1000002000,
VK_OBJECT_TYPE_DISPLAY_MODE_KHR = 1000002001,
VK_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT = 1000011000,
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_OBJECT_TYPE_VIDEO_SESSION_KHR = 1000023000,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_OBJECT_TYPE_VIDEO_SESSION_PARAMETERS_KHR = 1000023001,
+#endif
+ VK_OBJECT_TYPE_CU_MODULE_NVX = 1000029000,
+ VK_OBJECT_TYPE_CU_FUNCTION_NVX = 1000029001,
VK_OBJECT_TYPE_DEBUG_UTILS_MESSENGER_EXT = 1000128000,
VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR = 1000150000,
VK_OBJECT_TYPE_VALIDATION_CACHE_EXT = 1000160000,
@@ -820,6 +1064,7 @@ typedef enum VkVendorId {
VK_VENDOR_ID_KAZAN = 0x10003,
VK_VENDOR_ID_CODEPLAY = 0x10004,
VK_VENDOR_ID_MESA = 0x10005,
+ VK_VENDOR_ID_POCL = 0x10006,
VK_VENDOR_ID_MAX_ENUM = 0x7FFFFFFF
} VkVendorId;
@@ -1084,6 +1329,10 @@ typedef enum VkFormat {
VK_FORMAT_ASTC_10x10_SFLOAT_BLOCK_EXT = 1000066011,
VK_FORMAT_ASTC_12x10_SFLOAT_BLOCK_EXT = 1000066012,
VK_FORMAT_ASTC_12x12_SFLOAT_BLOCK_EXT = 1000066013,
+ VK_FORMAT_G8_B8R8_2PLANE_444_UNORM_EXT = 1000330000,
+ VK_FORMAT_G10X6_B10X6R10X6_2PLANE_444_UNORM_3PACK16_EXT = 1000330001,
+ VK_FORMAT_G12X4_B12X4R12X4_2PLANE_444_UNORM_3PACK16_EXT = 1000330002,
+ VK_FORMAT_G16_B16R16_2PLANE_444_UNORM_EXT = 1000330003,
VK_FORMAT_A4R4G4B4_UNORM_PACK16_EXT = 1000340000,
VK_FORMAT_A4B4G4R4_UNORM_PACK16_EXT = 1000340001,
VK_FORMAT_G8B8G8R8_422_UNORM_KHR = VK_FORMAT_G8B8G8R8_422_UNORM,
@@ -1150,12 +1399,18 @@ typedef enum VkQueryType {
VK_QUERY_TYPE_OCCLUSION = 0,
VK_QUERY_TYPE_PIPELINE_STATISTICS = 1,
VK_QUERY_TYPE_TIMESTAMP = 2,
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_QUERY_TYPE_RESULT_STATUS_ONLY_KHR = 1000023000,
+#endif
VK_QUERY_TYPE_TRANSFORM_FEEDBACK_STREAM_EXT = 1000028004,
VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR = 1000116000,
VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR = 1000150000,
VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_SIZE_KHR = 1000150001,
VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_NV = 1000165000,
VK_QUERY_TYPE_PERFORMANCE_QUERY_INTEL = 1000210000,
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_QUERY_TYPE_VIDEO_ENCODE_BITSTREAM_BUFFER_RANGE_KHR = 1000299000,
+#endif
VK_QUERY_TYPE_MAX_ENUM = 0x7FFFFFFF
} VkQueryType;
@@ -1308,6 +1563,13 @@ typedef enum VkDynamicState {
VK_DYNAMIC_STATE_DEPTH_BOUNDS_TEST_ENABLE_EXT = 1000267009,
VK_DYNAMIC_STATE_STENCIL_TEST_ENABLE_EXT = 1000267010,
VK_DYNAMIC_STATE_STENCIL_OP_EXT = 1000267011,
+ VK_DYNAMIC_STATE_VERTEX_INPUT_EXT = 1000352000,
+ VK_DYNAMIC_STATE_PATCH_CONTROL_POINTS_EXT = 1000377000,
+ VK_DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLE_EXT = 1000377001,
+ VK_DYNAMIC_STATE_DEPTH_BIAS_ENABLE_EXT = 1000377002,
+ VK_DYNAMIC_STATE_LOGIC_OP_EXT = 1000377003,
+ VK_DYNAMIC_STATE_PRIMITIVE_RESTART_ENABLE_EXT = 1000377004,
+ VK_DYNAMIC_STATE_COLOR_WRITE_ENABLE_EXT = 1000381000,
VK_DYNAMIC_STATE_MAX_ENUM = 0x7FFFFFFF
} VkDynamicState;
@@ -1429,6 +1691,7 @@ typedef enum VkDescriptorType {
VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT = 1000138000,
VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR = 1000150000,
VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NV = 1000165000,
+ VK_DESCRIPTOR_TYPE_MUTABLE_VALVE = 1000351000,
VK_DESCRIPTOR_TYPE_MAX_ENUM = 0x7FFFFFFF
} VkDescriptorType;
@@ -1450,6 +1713,7 @@ typedef enum VkPipelineBindPoint {
VK_PIPELINE_BIND_POINT_GRAPHICS = 0,
VK_PIPELINE_BIND_POINT_COMPUTE = 1,
VK_PIPELINE_BIND_POINT_RAY_TRACING_KHR = 1000165000,
+ VK_PIPELINE_BIND_POINT_SUBPASS_SHADING_HUAWEI = 1000369003,
VK_PIPELINE_BIND_POINT_RAY_TRACING_NV = VK_PIPELINE_BIND_POINT_RAY_TRACING_KHR,
VK_PIPELINE_BIND_POINT_MAX_ENUM = 0x7FFFFFFF
} VkPipelineBindPoint;
@@ -1500,13 +1764,14 @@ typedef enum VkAccessFlagBits {
VK_ACCESS_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT = 0x00080000,
VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_KHR = 0x00200000,
VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_KHR = 0x00400000,
- VK_ACCESS_SHADING_RATE_IMAGE_READ_BIT_NV = 0x00800000,
VK_ACCESS_FRAGMENT_DENSITY_MAP_READ_BIT_EXT = 0x01000000,
+ VK_ACCESS_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR = 0x00800000,
VK_ACCESS_COMMAND_PREPROCESS_READ_BIT_NV = 0x00020000,
VK_ACCESS_COMMAND_PREPROCESS_WRITE_BIT_NV = 0x00040000,
+ VK_ACCESS_NONE_KHR = 0,
+ VK_ACCESS_SHADING_RATE_IMAGE_READ_BIT_NV = VK_ACCESS_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR,
VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_NV = VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_KHR,
VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_NV = VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_KHR,
- VK_ACCESS_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR = VK_ACCESS_SHADING_RATE_IMAGE_READ_BIT_NV,
VK_ACCESS_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
} VkAccessFlagBits;
typedef VkFlags VkAccessFlags;
@@ -1555,9 +1820,21 @@ typedef enum VkFormatFeatureFlagBits {
VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT = 0x00800000,
VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT = 0x00010000,
VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG = 0x00002000,
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_FORMAT_FEATURE_VIDEO_DECODE_OUTPUT_BIT_KHR = 0x02000000,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_FORMAT_FEATURE_VIDEO_DECODE_DPB_BIT_KHR = 0x04000000,
+#endif
VK_FORMAT_FEATURE_ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR = 0x20000000,
VK_FORMAT_FEATURE_FRAGMENT_DENSITY_MAP_BIT_EXT = 0x01000000,
VK_FORMAT_FEATURE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR = 0x40000000,
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_FORMAT_FEATURE_VIDEO_ENCODE_INPUT_BIT_KHR = 0x08000000,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_FORMAT_FEATURE_VIDEO_ENCODE_DPB_BIT_KHR = 0x10000000,
+#endif
VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR = VK_FORMAT_FEATURE_TRANSFER_SRC_BIT,
VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR = VK_FORMAT_FEATURE_TRANSFER_DST_BIT,
VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT_EXT = VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT,
@@ -1620,9 +1897,27 @@ typedef enum VkImageUsageFlagBits {
VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT = 0x00000020,
VK_IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT = 0x00000040,
VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT = 0x00000080,
- VK_IMAGE_USAGE_SHADING_RATE_IMAGE_BIT_NV = 0x00000100,
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_IMAGE_USAGE_VIDEO_DECODE_DST_BIT_KHR = 0x00000400,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_IMAGE_USAGE_VIDEO_DECODE_SRC_BIT_KHR = 0x00000800,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_IMAGE_USAGE_VIDEO_DECODE_DPB_BIT_KHR = 0x00001000,
+#endif
VK_IMAGE_USAGE_FRAGMENT_DENSITY_MAP_BIT_EXT = 0x00000200,
- VK_IMAGE_USAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR = VK_IMAGE_USAGE_SHADING_RATE_IMAGE_BIT_NV,
+ VK_IMAGE_USAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR = 0x00000100,
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_IMAGE_USAGE_VIDEO_ENCODE_DST_BIT_KHR = 0x00002000,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_IMAGE_USAGE_VIDEO_ENCODE_SRC_BIT_KHR = 0x00004000,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_IMAGE_USAGE_VIDEO_ENCODE_DPB_BIT_KHR = 0x00008000,
+#endif
+ VK_IMAGE_USAGE_SHADING_RATE_IMAGE_BIT_NV = VK_IMAGE_USAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR,
VK_IMAGE_USAGE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
} VkImageUsageFlagBits;
typedef VkFlags VkImageUsageFlags;
@@ -1655,6 +1950,12 @@ typedef enum VkQueueFlagBits {
VK_QUEUE_TRANSFER_BIT = 0x00000004,
VK_QUEUE_SPARSE_BINDING_BIT = 0x00000008,
VK_QUEUE_PROTECTED_BIT = 0x00000010,
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_QUEUE_VIDEO_DECODE_BIT_KHR = 0x00000020,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_QUEUE_VIDEO_ENCODE_BIT_KHR = 0x00000040,
+#endif
VK_QUEUE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
} VkQueueFlagBits;
typedef VkFlags VkQueueFlags;
@@ -1688,14 +1989,15 @@ typedef enum VkPipelineStageFlagBits {
VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT = 0x00040000,
VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_KHR = 0x02000000,
VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_KHR = 0x00200000,
- VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV = 0x00400000,
VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV = 0x00080000,
VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV = 0x00100000,
VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT = 0x00800000,
+ VK_PIPELINE_STAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR = 0x00400000,
VK_PIPELINE_STAGE_COMMAND_PREPROCESS_BIT_NV = 0x00020000,
+ VK_PIPELINE_STAGE_NONE_KHR = 0,
+ VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV = VK_PIPELINE_STAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR,
VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_NV = VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_KHR,
VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_NV = VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_KHR,
- VK_PIPELINE_STAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR = VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV,
VK_PIPELINE_STAGE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
} VkPipelineStageFlagBits;
typedef VkFlags VkPipelineStageFlags;
@@ -1721,6 +2023,11 @@ typedef enum VkFenceCreateFlagBits {
} VkFenceCreateFlagBits;
typedef VkFlags VkFenceCreateFlags;
typedef VkFlags VkSemaphoreCreateFlags;
+
+typedef enum VkEventCreateFlagBits {
+ VK_EVENT_CREATE_DEVICE_ONLY_BIT_KHR = 0x00000001,
+ VK_EVENT_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
+} VkEventCreateFlagBits;
typedef VkFlags VkEventCreateFlags;
typedef enum VkQueryPipelineStatisticFlagBits {
@@ -1745,6 +2052,9 @@ typedef enum VkQueryResultFlagBits {
VK_QUERY_RESULT_WAIT_BIT = 0x00000002,
VK_QUERY_RESULT_WITH_AVAILABILITY_BIT = 0x00000004,
VK_QUERY_RESULT_PARTIAL_BIT = 0x00000008,
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_QUERY_RESULT_WITH_STATUS_BIT_KHR = 0x00000010,
+#endif
VK_QUERY_RESULT_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
} VkQueryResultFlagBits;
typedef VkFlags VkQueryResultFlags;
@@ -1772,12 +2082,24 @@ typedef enum VkBufferUsageFlagBits {
VK_BUFFER_USAGE_VERTEX_BUFFER_BIT = 0x00000080,
VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT = 0x00000100,
VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT = 0x00020000,
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_BUFFER_USAGE_VIDEO_DECODE_SRC_BIT_KHR = 0x00002000,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_BUFFER_USAGE_VIDEO_DECODE_DST_BIT_KHR = 0x00004000,
+#endif
VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_BUFFER_BIT_EXT = 0x00000800,
VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_COUNTER_BUFFER_BIT_EXT = 0x00001000,
VK_BUFFER_USAGE_CONDITIONAL_RENDERING_BIT_EXT = 0x00000200,
VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_BIT_KHR = 0x00080000,
VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_STORAGE_BIT_KHR = 0x00100000,
VK_BUFFER_USAGE_SHADER_BINDING_TABLE_BIT_KHR = 0x00000400,
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_BUFFER_USAGE_VIDEO_ENCODE_DST_BIT_KHR = 0x00008000,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ VK_BUFFER_USAGE_VIDEO_ENCODE_SRC_BIT_KHR = 0x00010000,
+#endif
VK_BUFFER_USAGE_RAY_TRACING_BIT_NV = VK_BUFFER_USAGE_SHADER_BINDING_TABLE_BIT_KHR,
VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT_EXT = VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT,
VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT_KHR = VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT,
@@ -1833,6 +2155,7 @@ typedef enum VkPipelineCreateFlagBits {
VK_PIPELINE_CREATE_LIBRARY_BIT_KHR = 0x00000800,
VK_PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT_EXT = 0x00000100,
VK_PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT_EXT = 0x00000200,
+ VK_PIPELINE_CREATE_RAY_TRACING_ALLOW_MOTION_BIT_NV = 0x00100000,
VK_PIPELINE_CREATE_DISPATCH_BASE = VK_PIPELINE_CREATE_DISPATCH_BASE_BIT,
VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT_KHR = VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT,
VK_PIPELINE_CREATE_DISPATCH_BASE_KHR = VK_PIPELINE_CREATE_DISPATCH_BASE,
@@ -1864,6 +2187,7 @@ typedef enum VkShaderStageFlagBits {
VK_SHADER_STAGE_CALLABLE_BIT_KHR = 0x00002000,
VK_SHADER_STAGE_TASK_BIT_NV = 0x00000040,
VK_SHADER_STAGE_MESH_BIT_NV = 0x00000080,
+ VK_SHADER_STAGE_SUBPASS_SHADING_BIT_HUAWEI = 0x00004000,
VK_SHADER_STAGE_RAYGEN_BIT_NV = VK_SHADER_STAGE_RAYGEN_BIT_KHR,
VK_SHADER_STAGE_ANY_HIT_BIT_NV = VK_SHADER_STAGE_ANY_HIT_BIT_KHR,
VK_SHADER_STAGE_CLOSEST_HIT_BIT_NV = VK_SHADER_STAGE_CLOSEST_HIT_BIT_KHR,
@@ -1903,6 +2227,7 @@ typedef VkFlags VkSamplerCreateFlags;
typedef enum VkDescriptorPoolCreateFlagBits {
VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT = 0x00000001,
VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT = 0x00000002,
+ VK_DESCRIPTOR_POOL_CREATE_HOST_ONLY_BIT_VALVE = 0x00000004,
VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT_EXT = VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT,
VK_DESCRIPTOR_POOL_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
} VkDescriptorPoolCreateFlagBits;
@@ -1912,6 +2237,7 @@ typedef VkFlags VkDescriptorPoolResetFlags;
typedef enum VkDescriptorSetLayoutCreateFlagBits {
VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT = 0x00000002,
VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR = 0x00000001,
+ VK_DESCRIPTOR_SET_LAYOUT_CREATE_HOST_ONLY_POOL_BIT_VALVE = 0x00000004,
VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT = VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT,
VK_DESCRIPTOR_SET_LAYOUT_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
} VkDescriptorSetLayoutCreateFlagBits;
@@ -4052,13 +4378,13 @@ VKAPI_ATTR void VKAPI_CALL vkCmdExecuteCommands(
#define VK_VERSION_1_1 1
// Vulkan 1.1 version number
-#define VK_API_VERSION_1_1 VK_MAKE_VERSION(1, 1, 0)// Patch version should always be set to 0
+#define VK_API_VERSION_1_1 VK_MAKE_API_VERSION(0, 1, 1, 0)// Patch version should always be set to 0
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkSamplerYcbcrConversion)
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDescriptorUpdateTemplate)
-#define VK_MAX_DEVICE_GROUP_SIZE 32
-#define VK_LUID_SIZE 8
-#define VK_QUEUE_FAMILY_EXTERNAL (~0U-1)
+#define VK_MAX_DEVICE_GROUP_SIZE 32U
+#define VK_LUID_SIZE 8U
+#define VK_QUEUE_FAMILY_EXTERNAL (~1U)
typedef enum VkPointClippingBehavior {
VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES = 0,
@@ -4165,6 +4491,7 @@ typedef enum VkExternalMemoryHandleTypeFlagBits {
VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID = 0x00000400,
VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT = 0x00000080,
VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT = 0x00000100,
+ VK_EXTERNAL_MEMORY_HANDLE_TYPE_ZIRCON_VMO_BIT_FUCHSIA = 0x00000800,
VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT_KHR = VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT,
VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR = VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT,
VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR = VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT,
@@ -4229,6 +4556,7 @@ typedef enum VkExternalSemaphoreHandleTypeFlagBits {
VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT = 0x00000004,
VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT = 0x00000008,
VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT = 0x00000010,
+ VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_ZIRCON_EVENT_BIT_FUCHSIA = 0x00000080,
VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D11_FENCE_BIT = VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT,
VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT_KHR = VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT,
VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR = VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT,
@@ -4914,10 +5242,10 @@ VKAPI_ATTR void VKAPI_CALL vkGetDescriptorSetLayoutSupport(
#define VK_VERSION_1_2 1
// Vulkan 1.2 version number
-#define VK_API_VERSION_1_2 VK_MAKE_VERSION(1, 2, 0)// Patch version should always be set to 0
+#define VK_API_VERSION_1_2 VK_MAKE_API_VERSION(0, 1, 2, 0)// Patch version should always be set to 0
-#define VK_MAX_DRIVER_NAME_SIZE 256
-#define VK_MAX_DRIVER_INFO_SIZE 256
+#define VK_MAX_DRIVER_NAME_SIZE 256U
+#define VK_MAX_DRIVER_INFO_SIZE 256U
typedef enum VkDriverId {
VK_DRIVER_ID_AMD_PROPRIETARY = 1,
@@ -4934,6 +5262,8 @@ typedef enum VkDriverId {
VK_DRIVER_ID_BROADCOM_PROPRIETARY = 12,
VK_DRIVER_ID_MESA_LLVMPIPE = 13,
VK_DRIVER_ID_MOLTENVK = 14,
+ VK_DRIVER_ID_COREAVI_PROPRIETARY = 15,
+ VK_DRIVER_ID_JUICE_PROPRIETARY = 16,
VK_DRIVER_ID_AMD_PROPRIETARY_KHR = VK_DRIVER_ID_AMD_PROPRIETARY,
VK_DRIVER_ID_AMD_OPEN_SOURCE_KHR = VK_DRIVER_ID_AMD_OPEN_SOURCE,
VK_DRIVER_ID_MESA_RADV_KHR = VK_DRIVER_ID_MESA_RADV,
@@ -6450,7 +6780,7 @@ typedef VkPhysicalDevice16BitStorageFeatures VkPhysicalDevice16BitStorageFeature
#define VK_KHR_incremental_present 1
-#define VK_KHR_INCREMENTAL_PRESENT_SPEC_VERSION 1
+#define VK_KHR_INCREMENTAL_PRESENT_SPEC_VERSION 2
#define VK_KHR_INCREMENTAL_PRESENT_EXTENSION_NAME "VK_KHR_incremental_present"
typedef struct VkRectLayerKHR {
VkOffset2D offset;
@@ -7513,6 +7843,307 @@ typedef struct VkPipelineLibraryCreateInfoKHR {
#define VK_KHR_SHADER_NON_SEMANTIC_INFO_EXTENSION_NAME "VK_KHR_shader_non_semantic_info"
+#define VK_KHR_synchronization2 1
+typedef uint64_t VkFlags64;
+#define VK_KHR_SYNCHRONIZATION_2_SPEC_VERSION 1
+#define VK_KHR_SYNCHRONIZATION_2_EXTENSION_NAME "VK_KHR_synchronization2"
+typedef VkFlags64 VkPipelineStageFlags2KHR;
+
+// Flag bits for VkPipelineStageFlagBits2KHR
+typedef VkFlags64 VkPipelineStageFlagBits2KHR;
+static const VkPipelineStageFlagBits2KHR VK_PIPELINE_STAGE_2_NONE_KHR = 0ULL;
+static const VkPipelineStageFlagBits2KHR VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT_KHR = 0x00000001ULL;
+static const VkPipelineStageFlagBits2KHR VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT_KHR = 0x00000002ULL;
+static const VkPipelineStageFlagBits2KHR VK_PIPELINE_STAGE_2_VERTEX_INPUT_BIT_KHR = 0x00000004ULL;
+static const VkPipelineStageFlagBits2KHR VK_PIPELINE_STAGE_2_VERTEX_SHADER_BIT_KHR = 0x00000008ULL;
+static const VkPipelineStageFlagBits2KHR VK_PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT_KHR = 0x00000010ULL;
+static const VkPipelineStageFlagBits2KHR VK_PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT_KHR = 0x00000020ULL;
+static const VkPipelineStageFlagBits2KHR VK_PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT_KHR = 0x00000040ULL;
+static const VkPipelineStageFlagBits2KHR VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT_KHR = 0x00000080ULL;
+static const VkPipelineStageFlagBits2KHR VK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT_KHR = 0x00000100ULL;
+static const VkPipelineStageFlagBits2KHR VK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT_KHR = 0x00000200ULL;
+static const VkPipelineStageFlagBits2KHR VK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT_KHR = 0x00000400ULL;
+static const VkPipelineStageFlagBits2KHR VK_PIPELINE_STAGE_2_COMPUTE_SHADER_BIT_KHR = 0x00000800ULL;
+static const VkPipelineStageFlagBits2KHR VK_PIPELINE_STAGE_2_ALL_TRANSFER_BIT_KHR = 0x00001000ULL;
+static const VkPipelineStageFlagBits2KHR VK_PIPELINE_STAGE_2_TRANSFER_BIT_KHR = 0x00001000;
+static const VkPipelineStageFlagBits2KHR VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT_KHR = 0x00002000ULL;
+static const VkPipelineStageFlagBits2KHR VK_PIPELINE_STAGE_2_HOST_BIT_KHR = 0x00004000ULL;
+static const VkPipelineStageFlagBits2KHR VK_PIPELINE_STAGE_2_ALL_GRAPHICS_BIT_KHR = 0x00008000ULL;
+static const VkPipelineStageFlagBits2KHR VK_PIPELINE_STAGE_2_ALL_COMMANDS_BIT_KHR = 0x00010000ULL;
+static const VkPipelineStageFlagBits2KHR VK_PIPELINE_STAGE_2_COPY_BIT_KHR = 0x100000000ULL;
+static const VkPipelineStageFlagBits2KHR VK_PIPELINE_STAGE_2_RESOLVE_BIT_KHR = 0x200000000ULL;
+static const VkPipelineStageFlagBits2KHR VK_PIPELINE_STAGE_2_BLIT_BIT_KHR = 0x400000000ULL;
+static const VkPipelineStageFlagBits2KHR VK_PIPELINE_STAGE_2_CLEAR_BIT_KHR = 0x800000000ULL;
+static const VkPipelineStageFlagBits2KHR VK_PIPELINE_STAGE_2_INDEX_INPUT_BIT_KHR = 0x1000000000ULL;
+static const VkPipelineStageFlagBits2KHR VK_PIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT_KHR = 0x2000000000ULL;
+static const VkPipelineStageFlagBits2KHR VK_PIPELINE_STAGE_2_PRE_RASTERIZATION_SHADERS_BIT_KHR = 0x4000000000ULL;
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+static const VkPipelineStageFlagBits2KHR VK_PIPELINE_STAGE_2_VIDEO_DECODE_BIT_KHR = 0x04000000ULL;
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+static const VkPipelineStageFlagBits2KHR VK_PIPELINE_STAGE_2_VIDEO_ENCODE_BIT_KHR = 0x08000000ULL;
+#endif
+static const VkPipelineStageFlagBits2KHR VK_PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT = 0x01000000ULL;
+static const VkPipelineStageFlagBits2KHR VK_PIPELINE_STAGE_2_CONDITIONAL_RENDERING_BIT_EXT = 0x00040000ULL;
+static const VkPipelineStageFlagBits2KHR VK_PIPELINE_STAGE_2_COMMAND_PREPROCESS_BIT_NV = 0x00020000ULL;
+static const VkPipelineStageFlagBits2KHR VK_PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR = 0x00400000ULL;
+static const VkPipelineStageFlagBits2KHR VK_PIPELINE_STAGE_2_SHADING_RATE_IMAGE_BIT_NV = 0x00400000;
+static const VkPipelineStageFlagBits2KHR VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR = 0x02000000ULL;
+static const VkPipelineStageFlagBits2KHR VK_PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_KHR = 0x00200000ULL;
+static const VkPipelineStageFlagBits2KHR VK_PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_NV = 0x00200000;
+static const VkPipelineStageFlagBits2KHR VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_NV = 0x02000000;
+static const VkPipelineStageFlagBits2KHR VK_PIPELINE_STAGE_2_FRAGMENT_DENSITY_PROCESS_BIT_EXT = 0x00800000ULL;
+static const VkPipelineStageFlagBits2KHR VK_PIPELINE_STAGE_2_TASK_SHADER_BIT_NV = 0x00080000ULL;
+static const VkPipelineStageFlagBits2KHR VK_PIPELINE_STAGE_2_MESH_SHADER_BIT_NV = 0x00100000ULL;
+static const VkPipelineStageFlagBits2KHR VK_PIPELINE_STAGE_2_SUBPASS_SHADING_BIT_HUAWEI = 0x8000000000ULL;
+
+typedef VkFlags64 VkAccessFlags2KHR;
+
+// Flag bits for VkAccessFlagBits2KHR
+typedef VkFlags64 VkAccessFlagBits2KHR;
+static const VkAccessFlagBits2KHR VK_ACCESS_2_NONE_KHR = 0ULL;
+static const VkAccessFlagBits2KHR VK_ACCESS_2_INDIRECT_COMMAND_READ_BIT_KHR = 0x00000001ULL;
+static const VkAccessFlagBits2KHR VK_ACCESS_2_INDEX_READ_BIT_KHR = 0x00000002ULL;
+static const VkAccessFlagBits2KHR VK_ACCESS_2_VERTEX_ATTRIBUTE_READ_BIT_KHR = 0x00000004ULL;
+static const VkAccessFlagBits2KHR VK_ACCESS_2_UNIFORM_READ_BIT_KHR = 0x00000008ULL;
+static const VkAccessFlagBits2KHR VK_ACCESS_2_INPUT_ATTACHMENT_READ_BIT_KHR = 0x00000010ULL;
+static const VkAccessFlagBits2KHR VK_ACCESS_2_SHADER_READ_BIT_KHR = 0x00000020ULL;
+static const VkAccessFlagBits2KHR VK_ACCESS_2_SHADER_WRITE_BIT_KHR = 0x00000040ULL;
+static const VkAccessFlagBits2KHR VK_ACCESS_2_COLOR_ATTACHMENT_READ_BIT_KHR = 0x00000080ULL;
+static const VkAccessFlagBits2KHR VK_ACCESS_2_COLOR_ATTACHMENT_WRITE_BIT_KHR = 0x00000100ULL;
+static const VkAccessFlagBits2KHR VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_READ_BIT_KHR = 0x00000200ULL;
+static const VkAccessFlagBits2KHR VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT_KHR = 0x00000400ULL;
+static const VkAccessFlagBits2KHR VK_ACCESS_2_TRANSFER_READ_BIT_KHR = 0x00000800ULL;
+static const VkAccessFlagBits2KHR VK_ACCESS_2_TRANSFER_WRITE_BIT_KHR = 0x00001000ULL;
+static const VkAccessFlagBits2KHR VK_ACCESS_2_HOST_READ_BIT_KHR = 0x00002000ULL;
+static const VkAccessFlagBits2KHR VK_ACCESS_2_HOST_WRITE_BIT_KHR = 0x00004000ULL;
+static const VkAccessFlagBits2KHR VK_ACCESS_2_MEMORY_READ_BIT_KHR = 0x00008000ULL;
+static const VkAccessFlagBits2KHR VK_ACCESS_2_MEMORY_WRITE_BIT_KHR = 0x00010000ULL;
+static const VkAccessFlagBits2KHR VK_ACCESS_2_SHADER_SAMPLED_READ_BIT_KHR = 0x100000000ULL;
+static const VkAccessFlagBits2KHR VK_ACCESS_2_SHADER_STORAGE_READ_BIT_KHR = 0x200000000ULL;
+static const VkAccessFlagBits2KHR VK_ACCESS_2_SHADER_STORAGE_WRITE_BIT_KHR = 0x400000000ULL;
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+static const VkAccessFlagBits2KHR VK_ACCESS_2_VIDEO_DECODE_READ_BIT_KHR = 0x800000000ULL;
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+static const VkAccessFlagBits2KHR VK_ACCESS_2_VIDEO_DECODE_WRITE_BIT_KHR = 0x1000000000ULL;
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+static const VkAccessFlagBits2KHR VK_ACCESS_2_VIDEO_ENCODE_READ_BIT_KHR = 0x2000000000ULL;
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+static const VkAccessFlagBits2KHR VK_ACCESS_2_VIDEO_ENCODE_WRITE_BIT_KHR = 0x4000000000ULL;
+#endif
+static const VkAccessFlagBits2KHR VK_ACCESS_2_TRANSFORM_FEEDBACK_WRITE_BIT_EXT = 0x02000000ULL;
+static const VkAccessFlagBits2KHR VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT = 0x04000000ULL;
+static const VkAccessFlagBits2KHR VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT = 0x08000000ULL;
+static const VkAccessFlagBits2KHR VK_ACCESS_2_CONDITIONAL_RENDERING_READ_BIT_EXT = 0x00100000ULL;
+static const VkAccessFlagBits2KHR VK_ACCESS_2_COMMAND_PREPROCESS_READ_BIT_NV = 0x00020000ULL;
+static const VkAccessFlagBits2KHR VK_ACCESS_2_COMMAND_PREPROCESS_WRITE_BIT_NV = 0x00040000ULL;
+static const VkAccessFlagBits2KHR VK_ACCESS_2_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR = 0x00800000ULL;
+static const VkAccessFlagBits2KHR VK_ACCESS_2_SHADING_RATE_IMAGE_READ_BIT_NV = 0x00800000;
+static const VkAccessFlagBits2KHR VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR = 0x00200000ULL;
+static const VkAccessFlagBits2KHR VK_ACCESS_2_ACCELERATION_STRUCTURE_WRITE_BIT_KHR = 0x00400000ULL;
+static const VkAccessFlagBits2KHR VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_NV = 0x00200000;
+static const VkAccessFlagBits2KHR VK_ACCESS_2_ACCELERATION_STRUCTURE_WRITE_BIT_NV = 0x00400000;
+static const VkAccessFlagBits2KHR VK_ACCESS_2_FRAGMENT_DENSITY_MAP_READ_BIT_EXT = 0x01000000ULL;
+static const VkAccessFlagBits2KHR VK_ACCESS_2_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT = 0x00080000ULL;
+
+
+typedef enum VkSubmitFlagBitsKHR {
+ VK_SUBMIT_PROTECTED_BIT_KHR = 0x00000001,
+ VK_SUBMIT_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF
+} VkSubmitFlagBitsKHR;
+typedef VkFlags VkSubmitFlagsKHR;
+typedef struct VkMemoryBarrier2KHR {
+ VkStructureType sType;
+ const void* pNext;
+ VkPipelineStageFlags2KHR srcStageMask;
+ VkAccessFlags2KHR srcAccessMask;
+ VkPipelineStageFlags2KHR dstStageMask;
+ VkAccessFlags2KHR dstAccessMask;
+} VkMemoryBarrier2KHR;
+
+typedef struct VkBufferMemoryBarrier2KHR {
+ VkStructureType sType;
+ const void* pNext;
+ VkPipelineStageFlags2KHR srcStageMask;
+ VkAccessFlags2KHR srcAccessMask;
+ VkPipelineStageFlags2KHR dstStageMask;
+ VkAccessFlags2KHR dstAccessMask;
+ uint32_t srcQueueFamilyIndex;
+ uint32_t dstQueueFamilyIndex;
+ VkBuffer buffer;
+ VkDeviceSize offset;
+ VkDeviceSize size;
+} VkBufferMemoryBarrier2KHR;
+
+typedef struct VkImageMemoryBarrier2KHR {
+ VkStructureType sType;
+ const void* pNext;
+ VkPipelineStageFlags2KHR srcStageMask;
+ VkAccessFlags2KHR srcAccessMask;
+ VkPipelineStageFlags2KHR dstStageMask;
+ VkAccessFlags2KHR dstAccessMask;
+ VkImageLayout oldLayout;
+ VkImageLayout newLayout;
+ uint32_t srcQueueFamilyIndex;
+ uint32_t dstQueueFamilyIndex;
+ VkImage image;
+ VkImageSubresourceRange subresourceRange;
+} VkImageMemoryBarrier2KHR;
+
+typedef struct VkDependencyInfoKHR {
+ VkStructureType sType;
+ const void* pNext;
+ VkDependencyFlags dependencyFlags;
+ uint32_t memoryBarrierCount;
+ const VkMemoryBarrier2KHR* pMemoryBarriers;
+ uint32_t bufferMemoryBarrierCount;
+ const VkBufferMemoryBarrier2KHR* pBufferMemoryBarriers;
+ uint32_t imageMemoryBarrierCount;
+ const VkImageMemoryBarrier2KHR* pImageMemoryBarriers;
+} VkDependencyInfoKHR;
+
+typedef struct VkSemaphoreSubmitInfoKHR {
+ VkStructureType sType;
+ const void* pNext;
+ VkSemaphore semaphore;
+ uint64_t value;
+ VkPipelineStageFlags2KHR stageMask;
+ uint32_t deviceIndex;
+} VkSemaphoreSubmitInfoKHR;
+
+typedef struct VkCommandBufferSubmitInfoKHR {
+ VkStructureType sType;
+ const void* pNext;
+ VkCommandBuffer commandBuffer;
+ uint32_t deviceMask;
+} VkCommandBufferSubmitInfoKHR;
+
+typedef struct VkSubmitInfo2KHR {
+ VkStructureType sType;
+ const void* pNext;
+ VkSubmitFlagsKHR flags;
+ uint32_t waitSemaphoreInfoCount;
+ const VkSemaphoreSubmitInfoKHR* pWaitSemaphoreInfos;
+ uint32_t commandBufferInfoCount;
+ const VkCommandBufferSubmitInfoKHR* pCommandBufferInfos;
+ uint32_t signalSemaphoreInfoCount;
+ const VkSemaphoreSubmitInfoKHR* pSignalSemaphoreInfos;
+} VkSubmitInfo2KHR;
+
+typedef struct VkPhysicalDeviceSynchronization2FeaturesKHR {
+ VkStructureType sType;
+ void* pNext;
+ VkBool32 synchronization2;
+} VkPhysicalDeviceSynchronization2FeaturesKHR;
+
+typedef struct VkQueueFamilyCheckpointProperties2NV {
+ VkStructureType sType;
+ void* pNext;
+ VkPipelineStageFlags2KHR checkpointExecutionStageMask;
+} VkQueueFamilyCheckpointProperties2NV;
+
+typedef struct VkCheckpointData2NV {
+ VkStructureType sType;
+ void* pNext;
+ VkPipelineStageFlags2KHR stage;
+ void* pCheckpointMarker;
+} VkCheckpointData2NV;
+
+typedef void (VKAPI_PTR *PFN_vkCmdSetEvent2KHR)(VkCommandBuffer commandBuffer, VkEvent event, const VkDependencyInfoKHR* pDependencyInfo);
+typedef void (VKAPI_PTR *PFN_vkCmdResetEvent2KHR)(VkCommandBuffer commandBuffer, VkEvent event, VkPipelineStageFlags2KHR stageMask);
+typedef void (VKAPI_PTR *PFN_vkCmdWaitEvents2KHR)(VkCommandBuffer commandBuffer, uint32_t eventCount, const VkEvent* pEvents, const VkDependencyInfoKHR* pDependencyInfos);
+typedef void (VKAPI_PTR *PFN_vkCmdPipelineBarrier2KHR)(VkCommandBuffer commandBuffer, const VkDependencyInfoKHR* pDependencyInfo);
+typedef void (VKAPI_PTR *PFN_vkCmdWriteTimestamp2KHR)(VkCommandBuffer commandBuffer, VkPipelineStageFlags2KHR stage, VkQueryPool queryPool, uint32_t query);
+typedef VkResult (VKAPI_PTR *PFN_vkQueueSubmit2KHR)(VkQueue queue, uint32_t submitCount, const VkSubmitInfo2KHR* pSubmits, VkFence fence);
+typedef void (VKAPI_PTR *PFN_vkCmdWriteBufferMarker2AMD)(VkCommandBuffer commandBuffer, VkPipelineStageFlags2KHR stage, VkBuffer dstBuffer, VkDeviceSize dstOffset, uint32_t marker);
+typedef void (VKAPI_PTR *PFN_vkGetQueueCheckpointData2NV)(VkQueue queue, uint32_t* pCheckpointDataCount, VkCheckpointData2NV* pCheckpointData);
+
+#ifndef VK_NO_PROTOTYPES
+VKAPI_ATTR void VKAPI_CALL vkCmdSetEvent2KHR(
+ VkCommandBuffer commandBuffer,
+ VkEvent event,
+ const VkDependencyInfoKHR* pDependencyInfo);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdResetEvent2KHR(
+ VkCommandBuffer commandBuffer,
+ VkEvent event,
+ VkPipelineStageFlags2KHR stageMask);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdWaitEvents2KHR(
+ VkCommandBuffer commandBuffer,
+ uint32_t eventCount,
+ const VkEvent* pEvents,
+ const VkDependencyInfoKHR* pDependencyInfos);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdPipelineBarrier2KHR(
+ VkCommandBuffer commandBuffer,
+ const VkDependencyInfoKHR* pDependencyInfo);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdWriteTimestamp2KHR(
+ VkCommandBuffer commandBuffer,
+ VkPipelineStageFlags2KHR stage,
+ VkQueryPool queryPool,
+ uint32_t query);
+
+VKAPI_ATTR VkResult VKAPI_CALL vkQueueSubmit2KHR(
+ VkQueue queue,
+ uint32_t submitCount,
+ const VkSubmitInfo2KHR* pSubmits,
+ VkFence fence);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdWriteBufferMarker2AMD(
+ VkCommandBuffer commandBuffer,
+ VkPipelineStageFlags2KHR stage,
+ VkBuffer dstBuffer,
+ VkDeviceSize dstOffset,
+ uint32_t marker);
+
+VKAPI_ATTR void VKAPI_CALL vkGetQueueCheckpointData2NV(
+ VkQueue queue,
+ uint32_t* pCheckpointDataCount,
+ VkCheckpointData2NV* pCheckpointData);
+#endif
+
+
+#define VK_KHR_shader_subgroup_uniform_control_flow 1
+#define VK_KHR_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_SPEC_VERSION 1
+#define VK_KHR_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_EXTENSION_NAME "VK_KHR_shader_subgroup_uniform_control_flow"
+typedef struct VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR {
+ VkStructureType sType;
+ void* pNext;
+ VkBool32 shaderSubgroupUniformControlFlow;
+} VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR;
+
+
+
+#define VK_KHR_zero_initialize_workgroup_memory 1
+#define VK_KHR_ZERO_INITIALIZE_WORKGROUP_MEMORY_SPEC_VERSION 1
+#define VK_KHR_ZERO_INITIALIZE_WORKGROUP_MEMORY_EXTENSION_NAME "VK_KHR_zero_initialize_workgroup_memory"
+typedef struct VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR {
+ VkStructureType sType;
+ void* pNext;
+ VkBool32 shaderZeroInitializeWorkgroupMemory;
+} VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR;
+
+
+
+#define VK_KHR_workgroup_memory_explicit_layout 1
+#define VK_KHR_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_SPEC_VERSION 1
+#define VK_KHR_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_EXTENSION_NAME "VK_KHR_workgroup_memory_explicit_layout"
+typedef struct VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR {
+ VkStructureType sType;
+ void* pNext;
+ VkBool32 workgroupMemoryExplicitLayout;
+ VkBool32 workgroupMemoryExplicitLayoutScalarBlockLayout;
+ VkBool32 workgroupMemoryExplicitLayout8BitAccess;
+ VkBool32 workgroupMemoryExplicitLayout16BitAccess;
+} VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR;
+
+
+
#define VK_KHR_copy_commands2 1
#define VK_KHR_COPY_COMMANDS_2_SPEC_VERSION 1
#define VK_KHR_COPY_COMMANDS_2_EXTENSION_NAME "VK_KHR_copy_commands2"
@@ -7663,7 +8294,7 @@ VKAPI_ATTR void VKAPI_CALL vkCmdResolveImage2KHR(
#define VK_EXT_debug_report 1
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDebugReportCallbackEXT)
-#define VK_EXT_DEBUG_REPORT_SPEC_VERSION 9
+#define VK_EXT_DEBUG_REPORT_SPEC_VERSION 10
#define VK_EXT_DEBUG_REPORT_EXTENSION_NAME "VK_EXT_debug_report"
typedef enum VkDebugReportObjectTypeEXT {
@@ -7701,6 +8332,8 @@ typedef enum VkDebugReportObjectTypeEXT {
VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT = 33,
VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_EXT = 1000156000,
VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_EXT = 1000085000,
+ VK_DEBUG_REPORT_OBJECT_TYPE_CU_MODULE_NVX_EXT = 1000029000,
+ VK_DEBUG_REPORT_OBJECT_TYPE_CU_FUNCTION_NVX_EXT = 1000029001,
VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR_EXT = 1000150000,
VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV_EXT = 1000165000,
VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_EXT = VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT_EXT,
@@ -7979,6 +8612,77 @@ VKAPI_ATTR void VKAPI_CALL vkCmdDrawIndirectByteCountEXT(
#endif
+#define VK_NVX_binary_import 1
+VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkCuModuleNVX)
+VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkCuFunctionNVX)
+#define VK_NVX_BINARY_IMPORT_SPEC_VERSION 1
+#define VK_NVX_BINARY_IMPORT_EXTENSION_NAME "VK_NVX_binary_import"
+typedef struct VkCuModuleCreateInfoNVX {
+ VkStructureType sType;
+ const void* pNext;
+ size_t dataSize;
+ const void* pData;
+} VkCuModuleCreateInfoNVX;
+
+typedef struct VkCuFunctionCreateInfoNVX {
+ VkStructureType sType;
+ const void* pNext;
+ VkCuModuleNVX module;
+ const char* pName;
+} VkCuFunctionCreateInfoNVX;
+
+typedef struct VkCuLaunchInfoNVX {
+ VkStructureType sType;
+ const void* pNext;
+ VkCuFunctionNVX 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 VkResult (VKAPI_PTR *PFN_vkCreateCuModuleNVX)(VkDevice device, const VkCuModuleCreateInfoNVX* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkCuModuleNVX* pModule);
+typedef VkResult (VKAPI_PTR *PFN_vkCreateCuFunctionNVX)(VkDevice device, const VkCuFunctionCreateInfoNVX* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkCuFunctionNVX* pFunction);
+typedef void (VKAPI_PTR *PFN_vkDestroyCuModuleNVX)(VkDevice device, VkCuModuleNVX module, const VkAllocationCallbacks* pAllocator);
+typedef void (VKAPI_PTR *PFN_vkDestroyCuFunctionNVX)(VkDevice device, VkCuFunctionNVX function, const VkAllocationCallbacks* pAllocator);
+typedef void (VKAPI_PTR *PFN_vkCmdCuLaunchKernelNVX)(VkCommandBuffer commandBuffer, const VkCuLaunchInfoNVX* pLaunchInfo);
+
+#ifndef VK_NO_PROTOTYPES
+VKAPI_ATTR VkResult VKAPI_CALL vkCreateCuModuleNVX(
+ VkDevice device,
+ const VkCuModuleCreateInfoNVX* pCreateInfo,
+ const VkAllocationCallbacks* pAllocator,
+ VkCuModuleNVX* pModule);
+
+VKAPI_ATTR VkResult VKAPI_CALL vkCreateCuFunctionNVX(
+ VkDevice device,
+ const VkCuFunctionCreateInfoNVX* pCreateInfo,
+ const VkAllocationCallbacks* pAllocator,
+ VkCuFunctionNVX* pFunction);
+
+VKAPI_ATTR void VKAPI_CALL vkDestroyCuModuleNVX(
+ VkDevice device,
+ VkCuModuleNVX module,
+ const VkAllocationCallbacks* pAllocator);
+
+VKAPI_ATTR void VKAPI_CALL vkDestroyCuFunctionNVX(
+ VkDevice device,
+ VkCuFunctionNVX function,
+ const VkAllocationCallbacks* pAllocator);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdCuLaunchKernelNVX(
+ VkCommandBuffer commandBuffer,
+ const VkCuLaunchInfoNVX* pLaunchInfo);
+#endif
+
+
#define VK_NVX_image_view_handle 1
#define VK_NVX_IMAGE_VIEW_HANDLE_SPEC_VERSION 2
#define VK_NVX_IMAGE_VIEW_HANDLE_EXTENSION_NAME "VK_NVX_image_view_handle"
@@ -8674,7 +9378,7 @@ VKAPI_ATTR void VKAPI_CALL vkSetHdrMetadataEXT(
#define VK_EXT_queue_family_foreign 1
#define VK_EXT_QUEUE_FAMILY_FOREIGN_SPEC_VERSION 1
#define VK_EXT_QUEUE_FAMILY_FOREIGN_EXTENSION_NAME "VK_EXT_queue_family_foreign"
-#define VK_QUEUE_FAMILY_FOREIGN_EXT (~0U-2)
+#define VK_QUEUE_FAMILY_FOREIGN_EXT (~2U)
#define VK_EXT_debug_utils 1
@@ -9392,6 +10096,7 @@ typedef enum VkBuildAccelerationStructureFlagBitsKHR {
VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_KHR = 0x00000004,
VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_KHR = 0x00000008,
VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_KHR = 0x00000010,
+ VK_BUILD_ACCELERATION_STRUCTURE_MOTION_BIT_NV = 0x00000020,
VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_NV = VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_KHR,
VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_NV = VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR,
VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_NV = VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_KHR,
@@ -9787,7 +10492,7 @@ typedef struct VkPipelineCompilerControlCreateInfoAMD {
#define VK_EXT_calibrated_timestamps 1
-#define VK_EXT_CALIBRATED_TIMESTAMPS_SPEC_VERSION 1
+#define VK_EXT_CALIBRATED_TIMESTAMPS_SPEC_VERSION 2
#define VK_EXT_CALIBRATED_TIMESTAMPS_EXTENSION_NAME "VK_EXT_calibrated_timestamps"
typedef enum VkTimeDomainEXT {
@@ -10489,7 +11194,7 @@ typedef VkImageStencilUsageCreateInfo VkImageStencilUsageCreateInfoEXT;
#define VK_EXT_validation_features 1
-#define VK_EXT_VALIDATION_FEATURES_SPEC_VERSION 4
+#define VK_EXT_VALIDATION_FEATURES_SPEC_VERSION 5
#define VK_EXT_VALIDATION_FEATURES_EXTENSION_NAME "VK_EXT_validation_features"
typedef enum VkValidationFeatureEnableEXT {
@@ -10509,6 +11214,7 @@ typedef enum VkValidationFeatureDisableEXT {
VK_VALIDATION_FEATURE_DISABLE_OBJECT_LIFETIMES_EXT = 4,
VK_VALIDATION_FEATURE_DISABLE_CORE_CHECKS_EXT = 5,
VK_VALIDATION_FEATURE_DISABLE_UNIQUE_HANDLES_EXT = 6,
+ VK_VALIDATION_FEATURE_DISABLE_SHADER_VALIDATION_CACHE_EXT = 7,
VK_VALIDATION_FEATURE_DISABLE_MAX_ENUM_EXT = 0x7FFFFFFF
} VkValidationFeatureDisableEXT;
typedef struct VkValidationFeaturesEXT {
@@ -10650,6 +11356,37 @@ typedef struct VkPhysicalDeviceYcbcrImageArraysFeaturesEXT {
+#define VK_EXT_provoking_vertex 1
+#define VK_EXT_PROVOKING_VERTEX_SPEC_VERSION 1
+#define VK_EXT_PROVOKING_VERTEX_EXTENSION_NAME "VK_EXT_provoking_vertex"
+
+typedef enum VkProvokingVertexModeEXT {
+ VK_PROVOKING_VERTEX_MODE_FIRST_VERTEX_EXT = 0,
+ VK_PROVOKING_VERTEX_MODE_LAST_VERTEX_EXT = 1,
+ VK_PROVOKING_VERTEX_MODE_MAX_ENUM_EXT = 0x7FFFFFFF
+} VkProvokingVertexModeEXT;
+typedef struct VkPhysicalDeviceProvokingVertexFeaturesEXT {
+ VkStructureType sType;
+ void* pNext;
+ VkBool32 provokingVertexLast;
+ VkBool32 transformFeedbackPreservesProvokingVertex;
+} VkPhysicalDeviceProvokingVertexFeaturesEXT;
+
+typedef struct VkPhysicalDeviceProvokingVertexPropertiesEXT {
+ VkStructureType sType;
+ void* pNext;
+ VkBool32 provokingVertexModePerPipeline;
+ VkBool32 transformFeedbackPreservesTriangleFanProvokingVertex;
+} VkPhysicalDeviceProvokingVertexPropertiesEXT;
+
+typedef struct VkPipelineRasterizationProvokingVertexStateCreateInfoEXT {
+ VkStructureType sType;
+ const void* pNext;
+ VkProvokingVertexModeEXT provokingVertexMode;
+} VkPipelineRasterizationProvokingVertexStateCreateInfoEXT;
+
+
+
#define VK_EXT_headless_surface 1
#define VK_EXT_HEADLESS_SURFACE_SPEC_VERSION 1
#define VK_EXT_HEADLESS_SURFACE_EXTENSION_NAME "VK_EXT_headless_surface"
@@ -11052,6 +11789,25 @@ VKAPI_ATTR void VKAPI_CALL vkDestroyIndirectCommandsLayoutNV(
#endif
+#define VK_NV_inherited_viewport_scissor 1
+#define VK_NV_INHERITED_VIEWPORT_SCISSOR_SPEC_VERSION 1
+#define VK_NV_INHERITED_VIEWPORT_SCISSOR_EXTENSION_NAME "VK_NV_inherited_viewport_scissor"
+typedef struct VkPhysicalDeviceInheritedViewportScissorFeaturesNV {
+ VkStructureType sType;
+ void* pNext;
+ VkBool32 inheritedViewportScissor2D;
+} VkPhysicalDeviceInheritedViewportScissorFeaturesNV;
+
+typedef struct VkCommandBufferInheritanceViewportScissorInfoNV {
+ VkStructureType sType;
+ const void* pNext;
+ VkBool32 viewportScissor2D;
+ uint32_t viewportDepthCount;
+ const VkViewport* pViewportDepths;
+} VkCommandBufferInheritanceViewportScissorInfoNV;
+
+
+
#define VK_EXT_texel_buffer_alignment 1
#define VK_EXT_TEXEL_BUFFER_ALIGNMENT_SPEC_VERSION 1
#define VK_EXT_TEXEL_BUFFER_ALIGNMENT_EXTENSION_NAME "VK_EXT_texel_buffer_alignment"
@@ -11073,7 +11829,7 @@ typedef struct VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT {
#define VK_QCOM_render_pass_transform 1
-#define VK_QCOM_RENDER_PASS_TRANSFORM_SPEC_VERSION 1
+#define VK_QCOM_RENDER_PASS_TRANSFORM_SPEC_VERSION 2
#define VK_QCOM_RENDER_PASS_TRANSFORM_EXTENSION_NAME "VK_QCOM_render_pass_transform"
typedef struct VkRenderPassTransformBeginInfoQCOM {
VkStructureType sType;
@@ -11091,7 +11847,7 @@ typedef struct VkCommandBufferInheritanceRenderPassTransformInfoQCOM {
#define VK_EXT_device_memory_report 1
-#define VK_EXT_DEVICE_MEMORY_REPORT_SPEC_VERSION 1
+#define VK_EXT_DEVICE_MEMORY_REPORT_SPEC_VERSION 2
#define VK_EXT_DEVICE_MEMORY_REPORT_EXTENSION_NAME "VK_EXT_device_memory_report"
typedef enum VkDeviceMemoryReportEventTypeEXT {
@@ -11135,6 +11891,26 @@ typedef struct VkDeviceDeviceMemoryReportCreateInfoEXT {
+#define VK_EXT_acquire_drm_display 1
+#define VK_EXT_ACQUIRE_DRM_DISPLAY_SPEC_VERSION 1
+#define VK_EXT_ACQUIRE_DRM_DISPLAY_EXTENSION_NAME "VK_EXT_acquire_drm_display"
+typedef VkResult (VKAPI_PTR *PFN_vkAcquireDrmDisplayEXT)(VkPhysicalDevice physicalDevice, int32_t drmFd, VkDisplayKHR display);
+typedef VkResult (VKAPI_PTR *PFN_vkGetDrmDisplayEXT)(VkPhysicalDevice physicalDevice, int32_t drmFd, uint32_t connectorId, VkDisplayKHR* display);
+
+#ifndef VK_NO_PROTOTYPES
+VKAPI_ATTR VkResult VKAPI_CALL vkAcquireDrmDisplayEXT(
+ VkPhysicalDevice physicalDevice,
+ int32_t drmFd,
+ VkDisplayKHR display);
+
+VKAPI_ATTR VkResult VKAPI_CALL vkGetDrmDisplayEXT(
+ VkPhysicalDevice physicalDevice,
+ int32_t drmFd,
+ uint32_t connectorId,
+ VkDisplayKHR* display);
+#endif
+
+
#define VK_EXT_robustness2 1
#define VK_EXT_ROBUSTNESS_2_SPEC_VERSION 1
#define VK_EXT_ROBUSTNESS_2_EXTENSION_NAME "VK_EXT_robustness2"
@@ -11282,8 +12058,8 @@ typedef struct VkDeviceDiagnosticsConfigCreateInfoNV {
#define VK_QCOM_render_pass_store_ops 1
-#define VK_QCOM_render_pass_store_ops_SPEC_VERSION 2
-#define VK_QCOM_render_pass_store_ops_EXTENSION_NAME "VK_QCOM_render_pass_store_ops"
+#define VK_QCOM_RENDER_PASS_STORE_OPS_SPEC_VERSION 2
+#define VK_QCOM_RENDER_PASS_STORE_OPS_EXTENSION_NAME "VK_QCOM_render_pass_store_ops"
#define VK_NV_fragment_shading_rate_enums 1
@@ -11343,6 +12119,107 @@ VKAPI_ATTR void VKAPI_CALL vkCmdSetFragmentShadingRateEnumNV(
#endif
+#define VK_NV_ray_tracing_motion_blur 1
+#define VK_NV_RAY_TRACING_MOTION_BLUR_SPEC_VERSION 1
+#define VK_NV_RAY_TRACING_MOTION_BLUR_EXTENSION_NAME "VK_NV_ray_tracing_motion_blur"
+
+typedef enum VkAccelerationStructureMotionInstanceTypeNV {
+ VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_STATIC_NV = 0,
+ VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_MATRIX_MOTION_NV = 1,
+ VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_SRT_MOTION_NV = 2,
+ VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_MAX_ENUM_NV = 0x7FFFFFFF
+} VkAccelerationStructureMotionInstanceTypeNV;
+typedef VkFlags VkAccelerationStructureMotionInfoFlagsNV;
+typedef VkFlags VkAccelerationStructureMotionInstanceFlagsNV;
+typedef union VkDeviceOrHostAddressConstKHR {
+ VkDeviceAddress deviceAddress;
+ const void* hostAddress;
+} VkDeviceOrHostAddressConstKHR;
+
+typedef struct VkAccelerationStructureGeometryMotionTrianglesDataNV {
+ VkStructureType sType;
+ const void* pNext;
+ VkDeviceOrHostAddressConstKHR vertexData;
+} VkAccelerationStructureGeometryMotionTrianglesDataNV;
+
+typedef struct VkAccelerationStructureMotionInfoNV {
+ VkStructureType sType;
+ const void* pNext;
+ uint32_t maxInstances;
+ VkAccelerationStructureMotionInfoFlagsNV flags;
+} VkAccelerationStructureMotionInfoNV;
+
+typedef struct VkAccelerationStructureMatrixMotionInstanceNV {
+ VkTransformMatrixKHR transformT0;
+ VkTransformMatrixKHR transformT1;
+ uint32_t instanceCustomIndex:24;
+ uint32_t mask:8;
+ uint32_t instanceShaderBindingTableRecordOffset:24;
+ VkGeometryInstanceFlagsKHR flags:8;
+ uint64_t accelerationStructureReference;
+} VkAccelerationStructureMatrixMotionInstanceNV;
+
+typedef struct VkSRTDataNV {
+ 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 VkAccelerationStructureSRTMotionInstanceNV {
+ VkSRTDataNV transformT0;
+ VkSRTDataNV transformT1;
+ uint32_t instanceCustomIndex:24;
+ uint32_t mask:8;
+ uint32_t instanceShaderBindingTableRecordOffset:24;
+ VkGeometryInstanceFlagsKHR flags:8;
+ uint64_t accelerationStructureReference;
+} VkAccelerationStructureSRTMotionInstanceNV;
+
+typedef union VkAccelerationStructureMotionInstanceDataNV {
+ VkAccelerationStructureInstanceKHR staticInstance;
+ VkAccelerationStructureMatrixMotionInstanceNV matrixMotionInstance;
+ VkAccelerationStructureSRTMotionInstanceNV srtMotionInstance;
+} VkAccelerationStructureMotionInstanceDataNV;
+
+typedef struct VkAccelerationStructureMotionInstanceNV {
+ VkAccelerationStructureMotionInstanceTypeNV type;
+ VkAccelerationStructureMotionInstanceFlagsNV flags;
+ VkAccelerationStructureMotionInstanceDataNV data;
+} VkAccelerationStructureMotionInstanceNV;
+
+typedef struct VkPhysicalDeviceRayTracingMotionBlurFeaturesNV {
+ VkStructureType sType;
+ const void* pNext;
+ VkBool32 rayTracingMotionBlur;
+ VkBool32 rayTracingMotionBlurPipelineTraceRaysIndirect;
+} VkPhysicalDeviceRayTracingMotionBlurFeaturesNV;
+
+
+
+#define VK_EXT_ycbcr_2plane_444_formats 1
+#define VK_EXT_YCBCR_2PLANE_444_FORMATS_SPEC_VERSION 1
+#define VK_EXT_YCBCR_2PLANE_444_FORMATS_EXTENSION_NAME "VK_EXT_ycbcr_2plane_444_formats"
+typedef struct VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT {
+ VkStructureType sType;
+ void* pNext;
+ VkBool32 ycbcr2plane444Formats;
+} VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT;
+
+
+
#define VK_EXT_fragment_density_map2 1
#define VK_EXT_FRAGMENT_DENSITY_MAP_2_SPEC_VERSION 1
#define VK_EXT_FRAGMENT_DENSITY_MAP_2_EXTENSION_NAME "VK_EXT_fragment_density_map2"
@@ -11364,8 +12241,8 @@ typedef struct VkPhysicalDeviceFragmentDensityMap2PropertiesEXT {
#define VK_QCOM_rotated_copy_commands 1
-#define VK_QCOM_rotated_copy_commands_SPEC_VERSION 0
-#define VK_QCOM_rotated_copy_commands_EXTENSION_NAME "VK_QCOM_rotated_copy_commands"
+#define VK_QCOM_ROTATED_COPY_COMMANDS_SPEC_VERSION 1
+#define VK_QCOM_ROTATED_COPY_COMMANDS_EXTENSION_NAME "VK_QCOM_rotated_copy_commands"
typedef struct VkCopyCommandTransformInfoQCOM {
VkStructureType sType;
const void* pNext;
@@ -11397,6 +12274,271 @@ typedef struct VkPhysicalDevice4444FormatsFeaturesEXT {
+#define VK_NV_acquire_winrt_display 1
+#define VK_NV_ACQUIRE_WINRT_DISPLAY_SPEC_VERSION 1
+#define VK_NV_ACQUIRE_WINRT_DISPLAY_EXTENSION_NAME "VK_NV_acquire_winrt_display"
+typedef VkResult (VKAPI_PTR *PFN_vkAcquireWinrtDisplayNV)(VkPhysicalDevice physicalDevice, VkDisplayKHR display);
+typedef VkResult (VKAPI_PTR *PFN_vkGetWinrtDisplayNV)(VkPhysicalDevice physicalDevice, uint32_t deviceRelativeId, VkDisplayKHR* pDisplay);
+
+#ifndef VK_NO_PROTOTYPES
+VKAPI_ATTR VkResult VKAPI_CALL vkAcquireWinrtDisplayNV(
+ VkPhysicalDevice physicalDevice,
+ VkDisplayKHR display);
+
+VKAPI_ATTR VkResult VKAPI_CALL vkGetWinrtDisplayNV(
+ VkPhysicalDevice physicalDevice,
+ uint32_t deviceRelativeId,
+ VkDisplayKHR* pDisplay);
+#endif
+
+
+#define VK_VALVE_mutable_descriptor_type 1
+#define VK_VALVE_MUTABLE_DESCRIPTOR_TYPE_SPEC_VERSION 1
+#define VK_VALVE_MUTABLE_DESCRIPTOR_TYPE_EXTENSION_NAME "VK_VALVE_mutable_descriptor_type"
+typedef struct VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE {
+ VkStructureType sType;
+ void* pNext;
+ VkBool32 mutableDescriptorType;
+} VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE;
+
+typedef struct VkMutableDescriptorTypeListVALVE {
+ uint32_t descriptorTypeCount;
+ const VkDescriptorType* pDescriptorTypes;
+} VkMutableDescriptorTypeListVALVE;
+
+typedef struct VkMutableDescriptorTypeCreateInfoVALVE {
+ VkStructureType sType;
+ const void* pNext;
+ uint32_t mutableDescriptorTypeListCount;
+ const VkMutableDescriptorTypeListVALVE* pMutableDescriptorTypeLists;
+} VkMutableDescriptorTypeCreateInfoVALVE;
+
+
+
+#define VK_EXT_vertex_input_dynamic_state 1
+#define VK_EXT_VERTEX_INPUT_DYNAMIC_STATE_SPEC_VERSION 2
+#define VK_EXT_VERTEX_INPUT_DYNAMIC_STATE_EXTENSION_NAME "VK_EXT_vertex_input_dynamic_state"
+typedef struct VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT {
+ VkStructureType sType;
+ void* pNext;
+ VkBool32 vertexInputDynamicState;
+} VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT;
+
+typedef struct VkVertexInputBindingDescription2EXT {
+ VkStructureType sType;
+ void* pNext;
+ uint32_t binding;
+ uint32_t stride;
+ VkVertexInputRate inputRate;
+ uint32_t divisor;
+} VkVertexInputBindingDescription2EXT;
+
+typedef struct VkVertexInputAttributeDescription2EXT {
+ VkStructureType sType;
+ void* pNext;
+ uint32_t location;
+ uint32_t binding;
+ VkFormat format;
+ uint32_t offset;
+} VkVertexInputAttributeDescription2EXT;
+
+typedef void (VKAPI_PTR *PFN_vkCmdSetVertexInputEXT)(VkCommandBuffer commandBuffer, uint32_t vertexBindingDescriptionCount, const VkVertexInputBindingDescription2EXT* pVertexBindingDescriptions, uint32_t vertexAttributeDescriptionCount, const VkVertexInputAttributeDescription2EXT* pVertexAttributeDescriptions);
+
+#ifndef VK_NO_PROTOTYPES
+VKAPI_ATTR void VKAPI_CALL vkCmdSetVertexInputEXT(
+ VkCommandBuffer commandBuffer,
+ uint32_t vertexBindingDescriptionCount,
+ const VkVertexInputBindingDescription2EXT* pVertexBindingDescriptions,
+ uint32_t vertexAttributeDescriptionCount,
+ const VkVertexInputAttributeDescription2EXT* pVertexAttributeDescriptions);
+#endif
+
+
+#define VK_EXT_physical_device_drm 1
+#define VK_EXT_PHYSICAL_DEVICE_DRM_SPEC_VERSION 1
+#define VK_EXT_PHYSICAL_DEVICE_DRM_EXTENSION_NAME "VK_EXT_physical_device_drm"
+typedef struct VkPhysicalDeviceDrmPropertiesEXT {
+ VkStructureType sType;
+ void* pNext;
+ VkBool32 hasPrimary;
+ VkBool32 hasRender;
+ int64_t primaryMajor;
+ int64_t primaryMinor;
+ int64_t renderMajor;
+ int64_t renderMinor;
+} VkPhysicalDeviceDrmPropertiesEXT;
+
+
+
+#define VK_HUAWEI_subpass_shading 1
+#define VK_HUAWEI_SUBPASS_SHADING_SPEC_VERSION 0
+#define VK_HUAWEI_SUBPASS_SHADING_EXTENSION_NAME "VK_HUAWEI_subpass_shading"
+typedef struct VkSubpassShadingPipelineCreateInfoHUAWEI {
+ VkStructureType sType;
+ void* pNext;
+ VkRenderPass renderPass;
+ uint32_t subpass;
+} VkSubpassShadingPipelineCreateInfoHUAWEI;
+
+typedef struct VkPhysicalDeviceSubpassShadingFeaturesHUAWEI {
+ VkStructureType sType;
+ void* pNext;
+ VkBool32 subpassShading;
+} VkPhysicalDeviceSubpassShadingFeaturesHUAWEI;
+
+typedef struct VkPhysicalDeviceSubpassShadingPropertiesHUAWEI {
+ VkStructureType sType;
+ void* pNext;
+ uint32_t maxSubpassShadingWorkgroupSizeAspectRatio;
+} VkPhysicalDeviceSubpassShadingPropertiesHUAWEI;
+
+typedef VkResult (VKAPI_PTR *PFN_vkGetSubpassShadingMaxWorkgroupSizeHUAWEI)(VkRenderPass renderpass, VkExtent2D* pMaxWorkgroupSize);
+typedef void (VKAPI_PTR *PFN_vkCmdSubpassShadingHUAWEI)(VkCommandBuffer commandBuffer);
+
+#ifndef VK_NO_PROTOTYPES
+VKAPI_ATTR VkResult VKAPI_CALL vkGetSubpassShadingMaxWorkgroupSizeHUAWEI(
+ VkRenderPass renderpass,
+ VkExtent2D* pMaxWorkgroupSize);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdSubpassShadingHUAWEI(
+ VkCommandBuffer commandBuffer);
+#endif
+
+
+#define VK_EXT_extended_dynamic_state2 1
+#define VK_EXT_EXTENDED_DYNAMIC_STATE_2_SPEC_VERSION 1
+#define VK_EXT_EXTENDED_DYNAMIC_STATE_2_EXTENSION_NAME "VK_EXT_extended_dynamic_state2"
+typedef struct VkPhysicalDeviceExtendedDynamicState2FeaturesEXT {
+ VkStructureType sType;
+ void* pNext;
+ VkBool32 extendedDynamicState2;
+ VkBool32 extendedDynamicState2LogicOp;
+ VkBool32 extendedDynamicState2PatchControlPoints;
+} VkPhysicalDeviceExtendedDynamicState2FeaturesEXT;
+
+typedef void (VKAPI_PTR *PFN_vkCmdSetPatchControlPointsEXT)(VkCommandBuffer commandBuffer, uint32_t patchControlPoints);
+typedef void (VKAPI_PTR *PFN_vkCmdSetRasterizerDiscardEnableEXT)(VkCommandBuffer commandBuffer, VkBool32 rasterizerDiscardEnable);
+typedef void (VKAPI_PTR *PFN_vkCmdSetDepthBiasEnableEXT)(VkCommandBuffer commandBuffer, VkBool32 depthBiasEnable);
+typedef void (VKAPI_PTR *PFN_vkCmdSetLogicOpEXT)(VkCommandBuffer commandBuffer, VkLogicOp logicOp);
+typedef void (VKAPI_PTR *PFN_vkCmdSetPrimitiveRestartEnableEXT)(VkCommandBuffer commandBuffer, VkBool32 primitiveRestartEnable);
+
+#ifndef VK_NO_PROTOTYPES
+VKAPI_ATTR void VKAPI_CALL vkCmdSetPatchControlPointsEXT(
+ VkCommandBuffer commandBuffer,
+ uint32_t patchControlPoints);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdSetRasterizerDiscardEnableEXT(
+ VkCommandBuffer commandBuffer,
+ VkBool32 rasterizerDiscardEnable);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdSetDepthBiasEnableEXT(
+ VkCommandBuffer commandBuffer,
+ VkBool32 depthBiasEnable);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdSetLogicOpEXT(
+ VkCommandBuffer commandBuffer,
+ VkLogicOp logicOp);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdSetPrimitiveRestartEnableEXT(
+ VkCommandBuffer commandBuffer,
+ VkBool32 primitiveRestartEnable);
+#endif
+
+
+#define VK_EXT_color_write_enable 1
+#define VK_EXT_COLOR_WRITE_ENABLE_SPEC_VERSION 1
+#define VK_EXT_COLOR_WRITE_ENABLE_EXTENSION_NAME "VK_EXT_color_write_enable"
+typedef struct VkPhysicalDeviceColorWriteEnableFeaturesEXT {
+ VkStructureType sType;
+ void* pNext;
+ VkBool32 colorWriteEnable;
+} VkPhysicalDeviceColorWriteEnableFeaturesEXT;
+
+typedef struct VkPipelineColorWriteCreateInfoEXT {
+ VkStructureType sType;
+ const void* pNext;
+ uint32_t attachmentCount;
+ const VkBool32* pColorWriteEnables;
+} VkPipelineColorWriteCreateInfoEXT;
+
+typedef void (VKAPI_PTR *PFN_vkCmdSetColorWriteEnableEXT)(VkCommandBuffer commandBuffer, uint32_t attachmentCount, const VkBool32* pColorWriteEnables);
+
+#ifndef VK_NO_PROTOTYPES
+VKAPI_ATTR void VKAPI_CALL vkCmdSetColorWriteEnableEXT(
+ VkCommandBuffer commandBuffer,
+ uint32_t attachmentCount,
+ const VkBool32* pColorWriteEnables);
+#endif
+
+
+#define VK_EXT_global_priority_query 1
+#define VK_MAX_GLOBAL_PRIORITY_SIZE_EXT 16U
+#define VK_EXT_GLOBAL_PRIORITY_QUERY_SPEC_VERSION 1
+#define VK_EXT_GLOBAL_PRIORITY_QUERY_EXTENSION_NAME "VK_EXT_global_priority_query"
+typedef struct VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT {
+ VkStructureType sType;
+ void* pNext;
+ VkBool32 globalPriorityQuery;
+} VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT;
+
+typedef struct VkQueueFamilyGlobalPriorityPropertiesEXT {
+ VkStructureType sType;
+ void* pNext;
+ uint32_t priorityCount;
+ VkQueueGlobalPriorityEXT priorities[VK_MAX_GLOBAL_PRIORITY_SIZE_EXT];
+} VkQueueFamilyGlobalPriorityPropertiesEXT;
+
+
+
+#define VK_EXT_multi_draw 1
+#define VK_EXT_MULTI_DRAW_SPEC_VERSION 1
+#define VK_EXT_MULTI_DRAW_EXTENSION_NAME "VK_EXT_multi_draw"
+typedef struct VkPhysicalDeviceMultiDrawFeaturesEXT {
+ VkStructureType sType;
+ void* pNext;
+ VkBool32 multiDraw;
+} VkPhysicalDeviceMultiDrawFeaturesEXT;
+
+typedef struct VkPhysicalDeviceMultiDrawPropertiesEXT {
+ VkStructureType sType;
+ void* pNext;
+ uint32_t maxMultiDrawCount;
+} VkPhysicalDeviceMultiDrawPropertiesEXT;
+
+typedef struct VkMultiDrawInfoEXT {
+ uint32_t firstVertex;
+ uint32_t vertexCount;
+} VkMultiDrawInfoEXT;
+
+typedef struct VkMultiDrawIndexedInfoEXT {
+ uint32_t firstIndex;
+ uint32_t indexCount;
+ int32_t vertexOffset;
+} VkMultiDrawIndexedInfoEXT;
+
+typedef void (VKAPI_PTR *PFN_vkCmdDrawMultiEXT)(VkCommandBuffer commandBuffer, uint32_t drawCount, const VkMultiDrawInfoEXT* pVertexInfo, uint32_t instanceCount, uint32_t firstInstance, uint32_t stride);
+typedef void (VKAPI_PTR *PFN_vkCmdDrawMultiIndexedEXT)(VkCommandBuffer commandBuffer, uint32_t drawCount, const VkMultiDrawIndexedInfoEXT* pIndexInfo, uint32_t instanceCount, uint32_t firstInstance, uint32_t stride, const int32_t* pVertexOffset);
+
+#ifndef VK_NO_PROTOTYPES
+VKAPI_ATTR void VKAPI_CALL vkCmdDrawMultiEXT(
+ VkCommandBuffer commandBuffer,
+ uint32_t drawCount,
+ const VkMultiDrawInfoEXT* pVertexInfo,
+ uint32_t instanceCount,
+ uint32_t firstInstance,
+ uint32_t stride);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdDrawMultiIndexedEXT(
+ VkCommandBuffer commandBuffer,
+ uint32_t drawCount,
+ const VkMultiDrawIndexedInfoEXT* pIndexInfo,
+ uint32_t instanceCount,
+ uint32_t firstInstance,
+ uint32_t stride,
+ const int32_t* pVertexOffset);
+#endif
+
+
#define VK_KHR_acceleration_structure 1
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkAccelerationStructureKHR)
#define VK_KHR_ACCELERATION_STRUCTURE_SPEC_VERSION 11
@@ -11423,6 +12565,7 @@ typedef enum VkAccelerationStructureCompatibilityKHR {
typedef enum VkAccelerationStructureCreateFlagBitsKHR {
VK_ACCELERATION_STRUCTURE_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_KHR = 0x00000001,
+ VK_ACCELERATION_STRUCTURE_CREATE_MOTION_BIT_NV = 0x00000004,
VK_ACCELERATION_STRUCTURE_CREATE_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF
} VkAccelerationStructureCreateFlagBitsKHR;
typedef VkFlags VkAccelerationStructureCreateFlagsKHR;
@@ -11431,11 +12574,6 @@ typedef union VkDeviceOrHostAddressKHR {
void* hostAddress;
} VkDeviceOrHostAddressKHR;
-typedef union VkDeviceOrHostAddressConstKHR {
- VkDeviceAddress deviceAddress;
- const void* hostAddress;
-} VkDeviceOrHostAddressConstKHR;
-
typedef struct VkAccelerationStructureBuildRangeInfoKHR {
uint32_t primitiveCount;
uint32_t primitiveOffset;
diff --git a/thirdparty/vulkan/include/vulkan/vulkan_directfb.h b/thirdparty/vulkan/include/vulkan/vulkan_directfb.h
index f75bd3a4e1..8eaac6e48d 100644
--- a/thirdparty/vulkan/include/vulkan/vulkan_directfb.h
+++ b/thirdparty/vulkan/include/vulkan/vulkan_directfb.h
@@ -2,7 +2,7 @@
#define VULKAN_DIRECTFB_H_ 1
/*
-** Copyright (c) 2015-2020 The Khronos Group Inc.
+** Copyright 2015-2021 The Khronos Group Inc.
**
** SPDX-License-Identifier: Apache-2.0
*/
diff --git a/thirdparty/vulkan/include/vulkan/vulkan_enums.hpp b/thirdparty/vulkan/include/vulkan/vulkan_enums.hpp
new file mode 100644
index 0000000000..5aed891303
--- /dev/null
+++ b/thirdparty/vulkan/include/vulkan/vulkan_enums.hpp
@@ -0,0 +1,14091 @@
+// Copyright 2015-2021 The Khronos Group Inc.
+//
+// SPDX-License-Identifier: Apache-2.0 OR MIT
+//
+
+// This header is generated from the Khronos Vulkan XML API Registry.
+
+#ifndef VULKAN_ENUMS_HPP
+#define VULKAN_ENUMS_HPP
+
+namespace VULKAN_HPP_NAMESPACE
+{
+ template <typename EnumType, EnumType value>
+ struct CppType
+ {};
+
+ template <typename Type>
+ struct isVulkanHandleType
+ {
+ static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = false;
+ };
+
+ VULKAN_HPP_INLINE std::string toHexString( uint32_t value )
+ {
+ std::stringstream stream;
+ stream << std::hex << value;
+ return stream.str();
+ }
+
+ //=============
+ //=== ENUMs ===
+ //=============
+
+ //=== VK_VERSION_1_0 ===
+
+ enum class Result
+ {
+ eSuccess = VK_SUCCESS,
+ eNotReady = VK_NOT_READY,
+ eTimeout = VK_TIMEOUT,
+ eEventSet = VK_EVENT_SET,
+ eEventReset = VK_EVENT_RESET,
+ eIncomplete = VK_INCOMPLETE,
+ eErrorOutOfHostMemory = VK_ERROR_OUT_OF_HOST_MEMORY,
+ eErrorOutOfDeviceMemory = VK_ERROR_OUT_OF_DEVICE_MEMORY,
+ eErrorInitializationFailed = VK_ERROR_INITIALIZATION_FAILED,
+ eErrorDeviceLost = VK_ERROR_DEVICE_LOST,
+ eErrorMemoryMapFailed = VK_ERROR_MEMORY_MAP_FAILED,
+ eErrorLayerNotPresent = VK_ERROR_LAYER_NOT_PRESENT,
+ eErrorExtensionNotPresent = VK_ERROR_EXTENSION_NOT_PRESENT,
+ eErrorFeatureNotPresent = VK_ERROR_FEATURE_NOT_PRESENT,
+ eErrorIncompatibleDriver = VK_ERROR_INCOMPATIBLE_DRIVER,
+ eErrorTooManyObjects = VK_ERROR_TOO_MANY_OBJECTS,
+ eErrorFormatNotSupported = VK_ERROR_FORMAT_NOT_SUPPORTED,
+ eErrorFragmentedPool = VK_ERROR_FRAGMENTED_POOL,
+ eErrorUnknown = VK_ERROR_UNKNOWN,
+ eErrorOutOfPoolMemory = VK_ERROR_OUT_OF_POOL_MEMORY,
+ eErrorInvalidExternalHandle = VK_ERROR_INVALID_EXTERNAL_HANDLE,
+ eErrorFragmentation = VK_ERROR_FRAGMENTATION,
+ eErrorInvalidOpaqueCaptureAddress = VK_ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS,
+ eErrorSurfaceLostKHR = VK_ERROR_SURFACE_LOST_KHR,
+ eErrorNativeWindowInUseKHR = VK_ERROR_NATIVE_WINDOW_IN_USE_KHR,
+ eSuboptimalKHR = VK_SUBOPTIMAL_KHR,
+ eErrorOutOfDateKHR = VK_ERROR_OUT_OF_DATE_KHR,
+ eErrorIncompatibleDisplayKHR = VK_ERROR_INCOMPATIBLE_DISPLAY_KHR,
+ eErrorValidationFailedEXT = VK_ERROR_VALIDATION_FAILED_EXT,
+ eErrorInvalidShaderNV = VK_ERROR_INVALID_SHADER_NV,
+ eErrorInvalidDrmFormatModifierPlaneLayoutEXT = VK_ERROR_INVALID_DRM_FORMAT_MODIFIER_PLANE_LAYOUT_EXT,
+ eErrorNotPermittedEXT = VK_ERROR_NOT_PERMITTED_EXT,
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ eErrorFullScreenExclusiveModeLostEXT = VK_ERROR_FULL_SCREEN_EXCLUSIVE_MODE_LOST_EXT,
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+ eThreadIdleKHR = VK_THREAD_IDLE_KHR,
+ eThreadDoneKHR = VK_THREAD_DONE_KHR,
+ eOperationDeferredKHR = VK_OPERATION_DEFERRED_KHR,
+ eOperationNotDeferredKHR = VK_OPERATION_NOT_DEFERRED_KHR,
+ ePipelineCompileRequiredEXT = VK_PIPELINE_COMPILE_REQUIRED_EXT,
+ eErrorFragmentationEXT = VK_ERROR_FRAGMENTATION_EXT,
+ eErrorInvalidDeviceAddressEXT = VK_ERROR_INVALID_DEVICE_ADDRESS_EXT,
+ eErrorInvalidExternalHandleKHR = VK_ERROR_INVALID_EXTERNAL_HANDLE_KHR,
+ eErrorInvalidOpaqueCaptureAddressKHR = VK_ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS_KHR,
+ eErrorOutOfPoolMemoryKHR = VK_ERROR_OUT_OF_POOL_MEMORY_KHR,
+ eErrorPipelineCompileRequiredEXT = VK_ERROR_PIPELINE_COMPILE_REQUIRED_EXT
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( Result value )
+ {
+ switch ( value )
+ {
+ case Result::eSuccess: return "Success";
+ case Result::eNotReady: return "NotReady";
+ case Result::eTimeout: return "Timeout";
+ case Result::eEventSet: return "EventSet";
+ case Result::eEventReset: return "EventReset";
+ case Result::eIncomplete: return "Incomplete";
+ case Result::eErrorOutOfHostMemory: return "ErrorOutOfHostMemory";
+ case Result::eErrorOutOfDeviceMemory: return "ErrorOutOfDeviceMemory";
+ case Result::eErrorInitializationFailed: return "ErrorInitializationFailed";
+ case Result::eErrorDeviceLost: return "ErrorDeviceLost";
+ case Result::eErrorMemoryMapFailed: return "ErrorMemoryMapFailed";
+ case Result::eErrorLayerNotPresent: return "ErrorLayerNotPresent";
+ case Result::eErrorExtensionNotPresent: return "ErrorExtensionNotPresent";
+ case Result::eErrorFeatureNotPresent: return "ErrorFeatureNotPresent";
+ case Result::eErrorIncompatibleDriver: return "ErrorIncompatibleDriver";
+ case Result::eErrorTooManyObjects: return "ErrorTooManyObjects";
+ case Result::eErrorFormatNotSupported: return "ErrorFormatNotSupported";
+ case Result::eErrorFragmentedPool: return "ErrorFragmentedPool";
+ case Result::eErrorUnknown: return "ErrorUnknown";
+ case Result::eErrorOutOfPoolMemory: return "ErrorOutOfPoolMemory";
+ case Result::eErrorInvalidExternalHandle: return "ErrorInvalidExternalHandle";
+ case Result::eErrorFragmentation: return "ErrorFragmentation";
+ case Result::eErrorInvalidOpaqueCaptureAddress: return "ErrorInvalidOpaqueCaptureAddress";
+ case Result::eErrorSurfaceLostKHR: return "ErrorSurfaceLostKHR";
+ case Result::eErrorNativeWindowInUseKHR: return "ErrorNativeWindowInUseKHR";
+ case Result::eSuboptimalKHR: return "SuboptimalKHR";
+ case Result::eErrorOutOfDateKHR: return "ErrorOutOfDateKHR";
+ case Result::eErrorIncompatibleDisplayKHR: return "ErrorIncompatibleDisplayKHR";
+ case Result::eErrorValidationFailedEXT: return "ErrorValidationFailedEXT";
+ case Result::eErrorInvalidShaderNV: return "ErrorInvalidShaderNV";
+ case Result::eErrorInvalidDrmFormatModifierPlaneLayoutEXT: return "ErrorInvalidDrmFormatModifierPlaneLayoutEXT";
+ case Result::eErrorNotPermittedEXT: return "ErrorNotPermittedEXT";
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ case Result::eErrorFullScreenExclusiveModeLostEXT: return "ErrorFullScreenExclusiveModeLostEXT";
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+ case Result::eThreadIdleKHR: return "ThreadIdleKHR";
+ case Result::eThreadDoneKHR: return "ThreadDoneKHR";
+ case Result::eOperationDeferredKHR: return "OperationDeferredKHR";
+ case Result::eOperationNotDeferredKHR: return "OperationNotDeferredKHR";
+ case Result::ePipelineCompileRequiredEXT: return "PipelineCompileRequiredEXT";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class StructureType
+ {
+ eApplicationInfo = VK_STRUCTURE_TYPE_APPLICATION_INFO,
+ eInstanceCreateInfo = VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO,
+ eDeviceQueueCreateInfo = VK_STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO,
+ eDeviceCreateInfo = VK_STRUCTURE_TYPE_DEVICE_CREATE_INFO,
+ eSubmitInfo = VK_STRUCTURE_TYPE_SUBMIT_INFO,
+ eMemoryAllocateInfo = VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO,
+ eMappedMemoryRange = VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE,
+ eBindSparseInfo = VK_STRUCTURE_TYPE_BIND_SPARSE_INFO,
+ eFenceCreateInfo = VK_STRUCTURE_TYPE_FENCE_CREATE_INFO,
+ eSemaphoreCreateInfo = VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO,
+ eEventCreateInfo = VK_STRUCTURE_TYPE_EVENT_CREATE_INFO,
+ eQueryPoolCreateInfo = VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO,
+ eBufferCreateInfo = VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO,
+ eBufferViewCreateInfo = VK_STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO,
+ eImageCreateInfo = VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO,
+ eImageViewCreateInfo = VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO,
+ eShaderModuleCreateInfo = VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO,
+ ePipelineCacheCreateInfo = VK_STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO,
+ ePipelineShaderStageCreateInfo = VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO,
+ ePipelineVertexInputStateCreateInfo = VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO,
+ ePipelineInputAssemblyStateCreateInfo = VK_STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO,
+ ePipelineTessellationStateCreateInfo = VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO,
+ ePipelineViewportStateCreateInfo = VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO,
+ ePipelineRasterizationStateCreateInfo = VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO,
+ ePipelineMultisampleStateCreateInfo = VK_STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO,
+ ePipelineDepthStencilStateCreateInfo = VK_STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO,
+ ePipelineColorBlendStateCreateInfo = VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO,
+ ePipelineDynamicStateCreateInfo = VK_STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO,
+ eGraphicsPipelineCreateInfo = VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO,
+ eComputePipelineCreateInfo = VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO,
+ ePipelineLayoutCreateInfo = VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO,
+ eSamplerCreateInfo = VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO,
+ eDescriptorSetLayoutCreateInfo = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO,
+ eDescriptorPoolCreateInfo = VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO,
+ eDescriptorSetAllocateInfo = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO,
+ eWriteDescriptorSet = VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET,
+ eCopyDescriptorSet = VK_STRUCTURE_TYPE_COPY_DESCRIPTOR_SET,
+ eFramebufferCreateInfo = VK_STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO,
+ eRenderPassCreateInfo = VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO,
+ eCommandPoolCreateInfo = VK_STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO,
+ eCommandBufferAllocateInfo = VK_STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO,
+ eCommandBufferInheritanceInfo = VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO,
+ eCommandBufferBeginInfo = VK_STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO,
+ eRenderPassBeginInfo = VK_STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO,
+ eBufferMemoryBarrier = VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER,
+ eImageMemoryBarrier = VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER,
+ eMemoryBarrier = VK_STRUCTURE_TYPE_MEMORY_BARRIER,
+ eLoaderInstanceCreateInfo = VK_STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO,
+ eLoaderDeviceCreateInfo = VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO,
+ ePhysicalDeviceSubgroupProperties = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES,
+ eBindBufferMemoryInfo = VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO,
+ eBindImageMemoryInfo = VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO,
+ ePhysicalDevice16BitStorageFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES,
+ eMemoryDedicatedRequirements = VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS,
+ eMemoryDedicatedAllocateInfo = VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO,
+ eMemoryAllocateFlagsInfo = VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO,
+ eDeviceGroupRenderPassBeginInfo = VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO,
+ eDeviceGroupCommandBufferBeginInfo = VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO,
+ eDeviceGroupSubmitInfo = VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO,
+ eDeviceGroupBindSparseInfo = VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO,
+ eBindBufferMemoryDeviceGroupInfo = VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO,
+ eBindImageMemoryDeviceGroupInfo = VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO,
+ ePhysicalDeviceGroupProperties = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES,
+ eDeviceGroupDeviceCreateInfo = VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO,
+ eBufferMemoryRequirementsInfo2 = VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2,
+ eImageMemoryRequirementsInfo2 = VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2,
+ eImageSparseMemoryRequirementsInfo2 = VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2,
+ eMemoryRequirements2 = VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2,
+ eSparseImageMemoryRequirements2 = VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2,
+ ePhysicalDeviceFeatures2 = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2,
+ ePhysicalDeviceProperties2 = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2,
+ eFormatProperties2 = VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2,
+ eImageFormatProperties2 = VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2,
+ ePhysicalDeviceImageFormatInfo2 = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2,
+ eQueueFamilyProperties2 = VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2,
+ ePhysicalDeviceMemoryProperties2 = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2,
+ eSparseImageFormatProperties2 = VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2,
+ ePhysicalDeviceSparseImageFormatInfo2 = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2,
+ ePhysicalDevicePointClippingProperties = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES,
+ eRenderPassInputAttachmentAspectCreateInfo = VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO,
+ eImageViewUsageCreateInfo = VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO,
+ ePipelineTessellationDomainOriginStateCreateInfo =
+ VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO,
+ eRenderPassMultiviewCreateInfo = VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO,
+ ePhysicalDeviceMultiviewFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES,
+ ePhysicalDeviceMultiviewProperties = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES,
+ ePhysicalDeviceVariablePointersFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES,
+ eProtectedSubmitInfo = VK_STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO,
+ ePhysicalDeviceProtectedMemoryFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES,
+ ePhysicalDeviceProtectedMemoryProperties = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES,
+ eDeviceQueueInfo2 = VK_STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2,
+ eSamplerYcbcrConversionCreateInfo = VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO,
+ eSamplerYcbcrConversionInfo = VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO,
+ eBindImagePlaneMemoryInfo = VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO,
+ eImagePlaneMemoryRequirementsInfo = VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO,
+ ePhysicalDeviceSamplerYcbcrConversionFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES,
+ eSamplerYcbcrConversionImageFormatProperties = VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES,
+ eDescriptorUpdateTemplateCreateInfo = VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO,
+ ePhysicalDeviceExternalImageFormatInfo = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO,
+ eExternalImageFormatProperties = VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES,
+ ePhysicalDeviceExternalBufferInfo = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO,
+ eExternalBufferProperties = VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES,
+ ePhysicalDeviceIdProperties = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES,
+ eExternalMemoryBufferCreateInfo = VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO,
+ eExternalMemoryImageCreateInfo = VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO,
+ eExportMemoryAllocateInfo = VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO,
+ ePhysicalDeviceExternalFenceInfo = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO,
+ eExternalFenceProperties = VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES,
+ eExportFenceCreateInfo = VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO,
+ eExportSemaphoreCreateInfo = VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO,
+ ePhysicalDeviceExternalSemaphoreInfo = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO,
+ eExternalSemaphoreProperties = VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES,
+ ePhysicalDeviceMaintenance3Properties = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES,
+ eDescriptorSetLayoutSupport = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT,
+ ePhysicalDeviceShaderDrawParametersFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES,
+ ePhysicalDeviceVulkan11Features = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES,
+ ePhysicalDeviceVulkan11Properties = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES,
+ ePhysicalDeviceVulkan12Features = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES,
+ ePhysicalDeviceVulkan12Properties = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES,
+ eImageFormatListCreateInfo = VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO,
+ eAttachmentDescription2 = VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2,
+ eAttachmentReference2 = VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2,
+ eSubpassDescription2 = VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2,
+ eSubpassDependency2 = VK_STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2,
+ eRenderPassCreateInfo2 = VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2,
+ eSubpassBeginInfo = VK_STRUCTURE_TYPE_SUBPASS_BEGIN_INFO,
+ eSubpassEndInfo = VK_STRUCTURE_TYPE_SUBPASS_END_INFO,
+ ePhysicalDevice8BitStorageFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES,
+ ePhysicalDeviceDriverProperties = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES,
+ ePhysicalDeviceShaderAtomicInt64Features = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES,
+ ePhysicalDeviceShaderFloat16Int8Features = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES,
+ ePhysicalDeviceFloatControlsProperties = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES,
+ eDescriptorSetLayoutBindingFlagsCreateInfo = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO,
+ ePhysicalDeviceDescriptorIndexingFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES,
+ ePhysicalDeviceDescriptorIndexingProperties = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES,
+ eDescriptorSetVariableDescriptorCountAllocateInfo =
+ VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO,
+ eDescriptorSetVariableDescriptorCountLayoutSupport =
+ VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT,
+ ePhysicalDeviceDepthStencilResolveProperties = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES,
+ eSubpassDescriptionDepthStencilResolve = VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE,
+ ePhysicalDeviceScalarBlockLayoutFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES,
+ eImageStencilUsageCreateInfo = VK_STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO,
+ ePhysicalDeviceSamplerFilterMinmaxProperties = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES,
+ eSamplerReductionModeCreateInfo = VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO,
+ ePhysicalDeviceVulkanMemoryModelFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES,
+ ePhysicalDeviceImagelessFramebufferFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES,
+ eFramebufferAttachmentsCreateInfo = VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO,
+ eFramebufferAttachmentImageInfo = VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO,
+ eRenderPassAttachmentBeginInfo = VK_STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO,
+ ePhysicalDeviceUniformBufferStandardLayoutFeatures =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES,
+ ePhysicalDeviceShaderSubgroupExtendedTypesFeatures =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES,
+ ePhysicalDeviceSeparateDepthStencilLayoutsFeatures =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES,
+ eAttachmentReferenceStencilLayout = VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT,
+ eAttachmentDescriptionStencilLayout = VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT,
+ ePhysicalDeviceHostQueryResetFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES,
+ ePhysicalDeviceTimelineSemaphoreFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES,
+ ePhysicalDeviceTimelineSemaphoreProperties = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES,
+ eSemaphoreTypeCreateInfo = VK_STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO,
+ eTimelineSemaphoreSubmitInfo = VK_STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO,
+ eSemaphoreWaitInfo = VK_STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO,
+ eSemaphoreSignalInfo = VK_STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO,
+ ePhysicalDeviceBufferDeviceAddressFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES,
+ eBufferDeviceAddressInfo = VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO,
+ eBufferOpaqueCaptureAddressCreateInfo = VK_STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO,
+ eMemoryOpaqueCaptureAddressAllocateInfo = VK_STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO,
+ eDeviceMemoryOpaqueCaptureAddressInfo = VK_STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO,
+ eSwapchainCreateInfoKHR = VK_STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR,
+ ePresentInfoKHR = VK_STRUCTURE_TYPE_PRESENT_INFO_KHR,
+ eDeviceGroupPresentCapabilitiesKHR = VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR,
+ eImageSwapchainCreateInfoKHR = VK_STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR,
+ eBindImageMemorySwapchainInfoKHR = VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR,
+ eAcquireNextImageInfoKHR = VK_STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR,
+ eDeviceGroupPresentInfoKHR = VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR,
+ eDeviceGroupSwapchainCreateInfoKHR = VK_STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR,
+ eDisplayModeCreateInfoKHR = VK_STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR,
+ eDisplaySurfaceCreateInfoKHR = VK_STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR,
+ eDisplayPresentInfoKHR = VK_STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR,
+#if defined( VK_USE_PLATFORM_XLIB_KHR )
+ eXlibSurfaceCreateInfoKHR = VK_STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR,
+#endif /*VK_USE_PLATFORM_XLIB_KHR*/
+#if defined( VK_USE_PLATFORM_XCB_KHR )
+ eXcbSurfaceCreateInfoKHR = VK_STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR,
+#endif /*VK_USE_PLATFORM_XCB_KHR*/
+#if defined( VK_USE_PLATFORM_WAYLAND_KHR )
+ eWaylandSurfaceCreateInfoKHR = VK_STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR,
+#endif /*VK_USE_PLATFORM_WAYLAND_KHR*/
+#if defined( VK_USE_PLATFORM_ANDROID_KHR )
+ eAndroidSurfaceCreateInfoKHR = VK_STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR,
+#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ eWin32SurfaceCreateInfoKHR = VK_STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR,
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+ eDebugReportCallbackCreateInfoEXT = VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT,
+ ePipelineRasterizationStateRasterizationOrderAMD =
+ VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD,
+ eDebugMarkerObjectNameInfoEXT = VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT,
+ eDebugMarkerObjectTagInfoEXT = VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT,
+ eDebugMarkerMarkerInfoEXT = VK_STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT,
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ eVideoProfileKHR = VK_STRUCTURE_TYPE_VIDEO_PROFILE_KHR,
+ eVideoCapabilitiesKHR = VK_STRUCTURE_TYPE_VIDEO_CAPABILITIES_KHR,
+ eVideoPictureResourceKHR = VK_STRUCTURE_TYPE_VIDEO_PICTURE_RESOURCE_KHR,
+ eVideoGetMemoryPropertiesKHR = VK_STRUCTURE_TYPE_VIDEO_GET_MEMORY_PROPERTIES_KHR,
+ eVideoBindMemoryKHR = VK_STRUCTURE_TYPE_VIDEO_BIND_MEMORY_KHR,
+ eVideoSessionCreateInfoKHR = VK_STRUCTURE_TYPE_VIDEO_SESSION_CREATE_INFO_KHR,
+ eVideoSessionParametersCreateInfoKHR = VK_STRUCTURE_TYPE_VIDEO_SESSION_PARAMETERS_CREATE_INFO_KHR,
+ eVideoSessionParametersUpdateInfoKHR = VK_STRUCTURE_TYPE_VIDEO_SESSION_PARAMETERS_UPDATE_INFO_KHR,
+ eVideoBeginCodingInfoKHR = VK_STRUCTURE_TYPE_VIDEO_BEGIN_CODING_INFO_KHR,
+ eVideoEndCodingInfoKHR = VK_STRUCTURE_TYPE_VIDEO_END_CODING_INFO_KHR,
+ eVideoCodingControlInfoKHR = VK_STRUCTURE_TYPE_VIDEO_CODING_CONTROL_INFO_KHR,
+ eVideoReferenceSlotKHR = VK_STRUCTURE_TYPE_VIDEO_REFERENCE_SLOT_KHR,
+ eVideoQueueFamilyProperties2KHR = VK_STRUCTURE_TYPE_VIDEO_QUEUE_FAMILY_PROPERTIES_2_KHR,
+ eVideoProfilesKHR = VK_STRUCTURE_TYPE_VIDEO_PROFILES_KHR,
+ ePhysicalDeviceVideoFormatInfoKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VIDEO_FORMAT_INFO_KHR,
+ eVideoFormatPropertiesKHR = VK_STRUCTURE_TYPE_VIDEO_FORMAT_PROPERTIES_KHR,
+ eVideoDecodeInfoKHR = VK_STRUCTURE_TYPE_VIDEO_DECODE_INFO_KHR,
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ eDedicatedAllocationImageCreateInfoNV = VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV,
+ eDedicatedAllocationBufferCreateInfoNV = VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV,
+ eDedicatedAllocationMemoryAllocateInfoNV = VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV,
+ ePhysicalDeviceTransformFeedbackFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT,
+ ePhysicalDeviceTransformFeedbackPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT,
+ ePipelineRasterizationStateStreamCreateInfoEXT =
+ VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT,
+ eCuModuleCreateInfoNVX = VK_STRUCTURE_TYPE_CU_MODULE_CREATE_INFO_NVX,
+ eCuFunctionCreateInfoNVX = VK_STRUCTURE_TYPE_CU_FUNCTION_CREATE_INFO_NVX,
+ eCuLaunchInfoNVX = VK_STRUCTURE_TYPE_CU_LAUNCH_INFO_NVX,
+ eImageViewHandleInfoNVX = VK_STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX,
+ eImageViewAddressPropertiesNVX = VK_STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX,
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ eVideoEncodeH264CapabilitiesEXT = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_CAPABILITIES_EXT,
+ eVideoEncodeH264SessionCreateInfoEXT = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_CREATE_INFO_EXT,
+ eVideoEncodeH264SessionParametersCreateInfoEXT =
+ VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT,
+ eVideoEncodeH264SessionParametersAddInfoEXT = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT,
+ eVideoEncodeH264VclFrameInfoEXT = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_VCL_FRAME_INFO_EXT,
+ eVideoEncodeH264DpbSlotInfoEXT = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_DPB_SLOT_INFO_EXT,
+ eVideoEncodeH264NaluSliceEXT = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_NALU_SLICE_EXT,
+ eVideoEncodeH264EmitPictureParametersEXT = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_EMIT_PICTURE_PARAMETERS_EXT,
+ eVideoEncodeH264ProfileEXT = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_PROFILE_EXT,
+ eVideoDecodeH264CapabilitiesEXT = VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_CAPABILITIES_EXT,
+ eVideoDecodeH264SessionCreateInfoEXT = VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_CREATE_INFO_EXT,
+ eVideoDecodeH264PictureInfoEXT = VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PICTURE_INFO_EXT,
+ eVideoDecodeH264MvcEXT = VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_MVC_EXT,
+ eVideoDecodeH264ProfileEXT = VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PROFILE_EXT,
+ eVideoDecodeH264SessionParametersCreateInfoEXT =
+ VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT,
+ eVideoDecodeH264SessionParametersAddInfoEXT = VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT,
+ eVideoDecodeH264DpbSlotInfoEXT = VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_DPB_SLOT_INFO_EXT,
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ eTextureLodGatherFormatPropertiesAMD = VK_STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD,
+#if defined( VK_USE_PLATFORM_GGP )
+ eStreamDescriptorSurfaceCreateInfoGGP = VK_STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP,
+#endif /*VK_USE_PLATFORM_GGP*/
+ ePhysicalDeviceCornerSampledImageFeaturesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV,
+ eExternalMemoryImageCreateInfoNV = VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV,
+ eExportMemoryAllocateInfoNV = VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV,
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ eImportMemoryWin32HandleInfoNV = VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV,
+ eExportMemoryWin32HandleInfoNV = VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV,
+ eWin32KeyedMutexAcquireReleaseInfoNV = VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV,
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+ eValidationFlagsEXT = VK_STRUCTURE_TYPE_VALIDATION_FLAGS_EXT,
+#if defined( VK_USE_PLATFORM_VI_NN )
+ eViSurfaceCreateInfoNN = VK_STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN,
+#endif /*VK_USE_PLATFORM_VI_NN*/
+ ePhysicalDeviceTextureCompressionAstcHdrFeaturesEXT =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT,
+ eImageViewAstcDecodeModeEXT = VK_STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT,
+ ePhysicalDeviceAstcDecodeFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT,
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ eImportMemoryWin32HandleInfoKHR = VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR,
+ eExportMemoryWin32HandleInfoKHR = VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR,
+ eMemoryWin32HandlePropertiesKHR = VK_STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR,
+ eMemoryGetWin32HandleInfoKHR = VK_STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR,
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+ eImportMemoryFdInfoKHR = VK_STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR,
+ eMemoryFdPropertiesKHR = VK_STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR,
+ eMemoryGetFdInfoKHR = VK_STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR,
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ eWin32KeyedMutexAcquireReleaseInfoKHR = VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR,
+ eImportSemaphoreWin32HandleInfoKHR = VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR,
+ eExportSemaphoreWin32HandleInfoKHR = VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR,
+ eD3D12FenceSubmitInfoKHR = VK_STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR,
+ eSemaphoreGetWin32HandleInfoKHR = VK_STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR,
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+ eImportSemaphoreFdInfoKHR = VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR,
+ eSemaphoreGetFdInfoKHR = VK_STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR,
+ ePhysicalDevicePushDescriptorPropertiesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR,
+ eCommandBufferInheritanceConditionalRenderingInfoEXT =
+ VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT,
+ ePhysicalDeviceConditionalRenderingFeaturesEXT =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT,
+ eConditionalRenderingBeginInfoEXT = VK_STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT,
+ ePresentRegionsKHR = VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR,
+ ePipelineViewportWScalingStateCreateInfoNV = VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV,
+ eSurfaceCapabilities2EXT = VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT,
+ eDisplayPowerInfoEXT = VK_STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT,
+ eDeviceEventInfoEXT = VK_STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT,
+ eDisplayEventInfoEXT = VK_STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT,
+ eSwapchainCounterCreateInfoEXT = VK_STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT,
+ ePresentTimesInfoGOOGLE = VK_STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE,
+ ePhysicalDeviceMultiviewPerViewAttributesPropertiesNVX =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX,
+ ePipelineViewportSwizzleStateCreateInfoNV = VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV,
+ ePhysicalDeviceDiscardRectanglePropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT,
+ ePipelineDiscardRectangleStateCreateInfoEXT = VK_STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT,
+ ePhysicalDeviceConservativeRasterizationPropertiesEXT =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT,
+ ePipelineRasterizationConservativeStateCreateInfoEXT =
+ VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT,
+ ePhysicalDeviceDepthClipEnableFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT,
+ ePipelineRasterizationDepthClipStateCreateInfoEXT =
+ VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT,
+ eHdrMetadataEXT = VK_STRUCTURE_TYPE_HDR_METADATA_EXT,
+ eSharedPresentSurfaceCapabilitiesKHR = VK_STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR,
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ eImportFenceWin32HandleInfoKHR = VK_STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR,
+ eExportFenceWin32HandleInfoKHR = VK_STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR,
+ eFenceGetWin32HandleInfoKHR = VK_STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR,
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+ eImportFenceFdInfoKHR = VK_STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR,
+ eFenceGetFdInfoKHR = VK_STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR,
+ ePhysicalDevicePerformanceQueryFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR,
+ ePhysicalDevicePerformanceQueryPropertiesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR,
+ eQueryPoolPerformanceCreateInfoKHR = VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR,
+ ePerformanceQuerySubmitInfoKHR = VK_STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR,
+ eAcquireProfilingLockInfoKHR = VK_STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR,
+ ePerformanceCounterKHR = VK_STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR,
+ ePerformanceCounterDescriptionKHR = VK_STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR,
+ ePhysicalDeviceSurfaceInfo2KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR,
+ eSurfaceCapabilities2KHR = VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR,
+ eSurfaceFormat2KHR = VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR,
+ eDisplayProperties2KHR = VK_STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR,
+ eDisplayPlaneProperties2KHR = VK_STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR,
+ eDisplayModeProperties2KHR = VK_STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR,
+ eDisplayPlaneInfo2KHR = VK_STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR,
+ eDisplayPlaneCapabilities2KHR = VK_STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR,
+#if defined( VK_USE_PLATFORM_IOS_MVK )
+ eIosSurfaceCreateInfoMVK = VK_STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK,
+#endif /*VK_USE_PLATFORM_IOS_MVK*/
+#if defined( VK_USE_PLATFORM_MACOS_MVK )
+ eMacosSurfaceCreateInfoMVK = VK_STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK,
+#endif /*VK_USE_PLATFORM_MACOS_MVK*/
+ eDebugUtilsObjectNameInfoEXT = VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT,
+ eDebugUtilsObjectTagInfoEXT = VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT,
+ eDebugUtilsLabelEXT = VK_STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT,
+ eDebugUtilsMessengerCallbackDataEXT = VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT,
+ eDebugUtilsMessengerCreateInfoEXT = VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT,
+#if defined( VK_USE_PLATFORM_ANDROID_KHR )
+ eAndroidHardwareBufferUsageANDROID = VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID,
+ eAndroidHardwareBufferPropertiesANDROID = VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID,
+ eAndroidHardwareBufferFormatPropertiesANDROID = VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID,
+ eImportAndroidHardwareBufferInfoANDROID = VK_STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID,
+ eMemoryGetAndroidHardwareBufferInfoANDROID = VK_STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID,
+ eExternalFormatANDROID = VK_STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID,
+#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
+ ePhysicalDeviceInlineUniformBlockFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT,
+ ePhysicalDeviceInlineUniformBlockPropertiesEXT =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT,
+ eWriteDescriptorSetInlineUniformBlockEXT = VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT,
+ eDescriptorPoolInlineUniformBlockCreateInfoEXT =
+ VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT,
+ eSampleLocationsInfoEXT = VK_STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT,
+ eRenderPassSampleLocationsBeginInfoEXT = VK_STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT,
+ ePipelineSampleLocationsStateCreateInfoEXT = VK_STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT,
+ ePhysicalDeviceSampleLocationsPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT,
+ eMultisamplePropertiesEXT = VK_STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT,
+ ePhysicalDeviceBlendOperationAdvancedFeaturesEXT =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT,
+ ePhysicalDeviceBlendOperationAdvancedPropertiesEXT =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT,
+ ePipelineColorBlendAdvancedStateCreateInfoEXT =
+ VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT,
+ ePipelineCoverageToColorStateCreateInfoNV = VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV,
+ eWriteDescriptorSetAccelerationStructureKHR = VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR,
+ eAccelerationStructureBuildGeometryInfoKHR = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR,
+ eAccelerationStructureDeviceAddressInfoKHR = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR,
+ eAccelerationStructureGeometryAabbsDataKHR = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR,
+ eAccelerationStructureGeometryInstancesDataKHR =
+ VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR,
+ eAccelerationStructureGeometryTrianglesDataKHR =
+ VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR,
+ eAccelerationStructureGeometryKHR = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR,
+ eAccelerationStructureVersionInfoKHR = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_INFO_KHR,
+ eCopyAccelerationStructureInfoKHR = VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR,
+ eCopyAccelerationStructureToMemoryInfoKHR = VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR,
+ eCopyMemoryToAccelerationStructureInfoKHR = VK_STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR,
+ ePhysicalDeviceAccelerationStructureFeaturesKHR =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_FEATURES_KHR,
+ ePhysicalDeviceAccelerationStructurePropertiesKHR =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_PROPERTIES_KHR,
+ eAccelerationStructureCreateInfoKHR = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR,
+ eAccelerationStructureBuildSizesInfoKHR = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_SIZES_INFO_KHR,
+ ePhysicalDeviceRayTracingPipelineFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_FEATURES_KHR,
+ ePhysicalDeviceRayTracingPipelinePropertiesKHR =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_PROPERTIES_KHR,
+ eRayTracingPipelineCreateInfoKHR = VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR,
+ eRayTracingShaderGroupCreateInfoKHR = VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR,
+ eRayTracingPipelineInterfaceCreateInfoKHR = VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR,
+ ePhysicalDeviceRayQueryFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_QUERY_FEATURES_KHR,
+ ePipelineCoverageModulationStateCreateInfoNV = VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV,
+ ePhysicalDeviceShaderSmBuiltinsFeaturesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV,
+ ePhysicalDeviceShaderSmBuiltinsPropertiesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV,
+ eDrmFormatModifierPropertiesListEXT = VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT,
+ ePhysicalDeviceImageDrmFormatModifierInfoEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT,
+ eImageDrmFormatModifierListCreateInfoEXT = VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT,
+ eImageDrmFormatModifierExplicitCreateInfoEXT = VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT,
+ eImageDrmFormatModifierPropertiesEXT = VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT,
+ eValidationCacheCreateInfoEXT = VK_STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT,
+ eShaderModuleValidationCacheCreateInfoEXT = VK_STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT,
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ ePhysicalDevicePortabilitySubsetFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_FEATURES_KHR,
+ ePhysicalDevicePortabilitySubsetPropertiesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_PROPERTIES_KHR,
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ ePipelineViewportShadingRateImageStateCreateInfoNV =
+ VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV,
+ ePhysicalDeviceShadingRateImageFeaturesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV,
+ ePhysicalDeviceShadingRateImagePropertiesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV,
+ ePipelineViewportCoarseSampleOrderStateCreateInfoNV =
+ VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV,
+ eRayTracingPipelineCreateInfoNV = VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV,
+ eAccelerationStructureCreateInfoNV = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV,
+ eGeometryNV = VK_STRUCTURE_TYPE_GEOMETRY_NV,
+ eGeometryTrianglesNV = VK_STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV,
+ eGeometryAabbNV = VK_STRUCTURE_TYPE_GEOMETRY_AABB_NV,
+ eBindAccelerationStructureMemoryInfoNV = VK_STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_NV,
+ eWriteDescriptorSetAccelerationStructureNV = VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_NV,
+ eAccelerationStructureMemoryRequirementsInfoNV =
+ VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV,
+ ePhysicalDeviceRayTracingPropertiesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV,
+ eRayTracingShaderGroupCreateInfoNV = VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV,
+ eAccelerationStructureInfoNV = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV,
+ ePhysicalDeviceRepresentativeFragmentTestFeaturesNV =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV,
+ ePipelineRepresentativeFragmentTestStateCreateInfoNV =
+ VK_STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV,
+ ePhysicalDeviceImageViewImageFormatInfoEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT,
+ eFilterCubicImageViewImageFormatPropertiesEXT =
+ VK_STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT,
+ eDeviceQueueGlobalPriorityCreateInfoEXT = VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT,
+ eImportMemoryHostPointerInfoEXT = VK_STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT,
+ eMemoryHostPointerPropertiesEXT = VK_STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT,
+ ePhysicalDeviceExternalMemoryHostPropertiesEXT =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT,
+ ePhysicalDeviceShaderClockFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR,
+ ePipelineCompilerControlCreateInfoAMD = VK_STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD,
+ eCalibratedTimestampInfoEXT = VK_STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT,
+ ePhysicalDeviceShaderCorePropertiesAMD = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD,
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ eVideoDecodeH265CapabilitiesEXT = VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_CAPABILITIES_EXT,
+ eVideoDecodeH265SessionCreateInfoEXT = VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_CREATE_INFO_EXT,
+ eVideoDecodeH265SessionParametersCreateInfoEXT =
+ VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT,
+ eVideoDecodeH265SessionParametersAddInfoEXT = VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT,
+ eVideoDecodeH265ProfileEXT = VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PROFILE_EXT,
+ eVideoDecodeH265PictureInfoEXT = VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PICTURE_INFO_EXT,
+ eVideoDecodeH265DpbSlotInfoEXT = VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_DPB_SLOT_INFO_EXT,
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ eDeviceMemoryOverallocationCreateInfoAMD = VK_STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD,
+ ePhysicalDeviceVertexAttributeDivisorPropertiesEXT =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT,
+ ePipelineVertexInputDivisorStateCreateInfoEXT =
+ VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT,
+ ePhysicalDeviceVertexAttributeDivisorFeaturesEXT =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT,
+#if defined( VK_USE_PLATFORM_GGP )
+ ePresentFrameTokenGGP = VK_STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP,
+#endif /*VK_USE_PLATFORM_GGP*/
+ ePipelineCreationFeedbackCreateInfoEXT = VK_STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT,
+ ePhysicalDeviceComputeShaderDerivativesFeaturesNV =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV,
+ ePhysicalDeviceMeshShaderFeaturesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV,
+ ePhysicalDeviceMeshShaderPropertiesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV,
+ ePhysicalDeviceFragmentShaderBarycentricFeaturesNV =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV,
+ ePhysicalDeviceShaderImageFootprintFeaturesNV =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV,
+ ePipelineViewportExclusiveScissorStateCreateInfoNV =
+ VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV,
+ ePhysicalDeviceExclusiveScissorFeaturesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV,
+ eCheckpointDataNV = VK_STRUCTURE_TYPE_CHECKPOINT_DATA_NV,
+ eQueueFamilyCheckpointPropertiesNV = VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV,
+ ePhysicalDeviceShaderIntegerFunctions2FeaturesINTEL =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL,
+ eQueryPoolPerformanceQueryCreateInfoINTEL = VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL,
+ eInitializePerformanceApiInfoINTEL = VK_STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL,
+ ePerformanceMarkerInfoINTEL = VK_STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL,
+ ePerformanceStreamMarkerInfoINTEL = VK_STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL,
+ ePerformanceOverrideInfoINTEL = VK_STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL,
+ ePerformanceConfigurationAcquireInfoINTEL = VK_STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL,
+ ePhysicalDevicePciBusInfoPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT,
+ eDisplayNativeHdrSurfaceCapabilitiesAMD = VK_STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD,
+ eSwapchainDisplayNativeHdrCreateInfoAMD = VK_STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD,
+#if defined( VK_USE_PLATFORM_FUCHSIA )
+ eImagepipeSurfaceCreateInfoFUCHSIA = VK_STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA,
+#endif /*VK_USE_PLATFORM_FUCHSIA*/
+ ePhysicalDeviceShaderTerminateInvocationFeaturesKHR =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES_KHR,
+#if defined( VK_USE_PLATFORM_METAL_EXT )
+ eMetalSurfaceCreateInfoEXT = VK_STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT,
+#endif /*VK_USE_PLATFORM_METAL_EXT*/
+ ePhysicalDeviceFragmentDensityMapFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT,
+ ePhysicalDeviceFragmentDensityMapPropertiesEXT =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT,
+ eRenderPassFragmentDensityMapCreateInfoEXT = VK_STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT,
+ ePhysicalDeviceSubgroupSizeControlPropertiesEXT =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT,
+ ePipelineShaderStageRequiredSubgroupSizeCreateInfoEXT =
+ VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT,
+ ePhysicalDeviceSubgroupSizeControlFeaturesEXT =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT,
+ eFragmentShadingRateAttachmentInfoKHR = VK_STRUCTURE_TYPE_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR,
+ ePipelineFragmentShadingRateStateCreateInfoKHR =
+ VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_STATE_CREATE_INFO_KHR,
+ ePhysicalDeviceFragmentShadingRatePropertiesKHR =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_PROPERTIES_KHR,
+ ePhysicalDeviceFragmentShadingRateFeaturesKHR =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_FEATURES_KHR,
+ ePhysicalDeviceFragmentShadingRateKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_KHR,
+ ePhysicalDeviceShaderCoreProperties2AMD = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD,
+ ePhysicalDeviceCoherentMemoryFeaturesAMD = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD,
+ ePhysicalDeviceShaderImageAtomicInt64FeaturesEXT =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_ATOMIC_INT64_FEATURES_EXT,
+ ePhysicalDeviceMemoryBudgetPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT,
+ ePhysicalDeviceMemoryPriorityFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT,
+ eMemoryPriorityAllocateInfoEXT = VK_STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT,
+ eSurfaceProtectedCapabilitiesKHR = VK_STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR,
+ ePhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV,
+ ePhysicalDeviceBufferDeviceAddressFeaturesEXT =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT,
+ eBufferDeviceAddressCreateInfoEXT = VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT,
+ ePhysicalDeviceToolPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT,
+ eValidationFeaturesEXT = VK_STRUCTURE_TYPE_VALIDATION_FEATURES_EXT,
+ ePhysicalDeviceCooperativeMatrixFeaturesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV,
+ eCooperativeMatrixPropertiesNV = VK_STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV,
+ ePhysicalDeviceCooperativeMatrixPropertiesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV,
+ ePhysicalDeviceCoverageReductionModeFeaturesNV =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV,
+ ePipelineCoverageReductionStateCreateInfoNV = VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV,
+ eFramebufferMixedSamplesCombinationNV = VK_STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV,
+ ePhysicalDeviceFragmentShaderInterlockFeaturesEXT =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT,
+ ePhysicalDeviceYcbcrImageArraysFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT,
+ ePhysicalDeviceProvokingVertexFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_FEATURES_EXT,
+ ePipelineRasterizationProvokingVertexStateCreateInfoEXT =
+ VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_PROVOKING_VERTEX_STATE_CREATE_INFO_EXT,
+ ePhysicalDeviceProvokingVertexPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_PROPERTIES_EXT,
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ eSurfaceFullScreenExclusiveInfoEXT = VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT,
+ eSurfaceCapabilitiesFullScreenExclusiveEXT = VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT,
+ eSurfaceFullScreenExclusiveWin32InfoEXT = VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT,
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+ eHeadlessSurfaceCreateInfoEXT = VK_STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT,
+ ePhysicalDeviceLineRasterizationFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT,
+ ePipelineRasterizationLineStateCreateInfoEXT = VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT,
+ ePhysicalDeviceLineRasterizationPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT,
+ ePhysicalDeviceShaderAtomicFloatFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_FEATURES_EXT,
+ ePhysicalDeviceIndexTypeUint8FeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT,
+ ePhysicalDeviceExtendedDynamicStateFeaturesEXT =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_FEATURES_EXT,
+ ePhysicalDevicePipelineExecutablePropertiesFeaturesKHR =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR,
+ ePipelineInfoKHR = VK_STRUCTURE_TYPE_PIPELINE_INFO_KHR,
+ ePipelineExecutablePropertiesKHR = VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR,
+ ePipelineExecutableInfoKHR = VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR,
+ ePipelineExecutableStatisticKHR = VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR,
+ ePipelineExecutableInternalRepresentationKHR = VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR,
+ ePhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT,
+ ePhysicalDeviceDeviceGeneratedCommandsPropertiesNV =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV,
+ eGraphicsShaderGroupCreateInfoNV = VK_STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV,
+ eGraphicsPipelineShaderGroupsCreateInfoNV = VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV,
+ eIndirectCommandsLayoutTokenNV = VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV,
+ eIndirectCommandsLayoutCreateInfoNV = VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV,
+ eGeneratedCommandsInfoNV = VK_STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV,
+ eGeneratedCommandsMemoryRequirementsInfoNV = VK_STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV,
+ ePhysicalDeviceDeviceGeneratedCommandsFeaturesNV =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV,
+ ePhysicalDeviceInheritedViewportScissorFeaturesNV =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INHERITED_VIEWPORT_SCISSOR_FEATURES_NV,
+ eCommandBufferInheritanceViewportScissorInfoNV =
+ VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_VIEWPORT_SCISSOR_INFO_NV,
+ ePhysicalDeviceTexelBufferAlignmentFeaturesEXT =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT,
+ ePhysicalDeviceTexelBufferAlignmentPropertiesEXT =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT,
+ eCommandBufferInheritanceRenderPassTransformInfoQCOM =
+ VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM,
+ eRenderPassTransformBeginInfoQCOM = VK_STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM,
+ ePhysicalDeviceDeviceMemoryReportFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_MEMORY_REPORT_FEATURES_EXT,
+ eDeviceDeviceMemoryReportCreateInfoEXT = VK_STRUCTURE_TYPE_DEVICE_DEVICE_MEMORY_REPORT_CREATE_INFO_EXT,
+ eDeviceMemoryReportCallbackDataEXT = VK_STRUCTURE_TYPE_DEVICE_MEMORY_REPORT_CALLBACK_DATA_EXT,
+ ePhysicalDeviceRobustness2FeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT,
+ ePhysicalDeviceRobustness2PropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT,
+ eSamplerCustomBorderColorCreateInfoEXT = VK_STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT,
+ ePhysicalDeviceCustomBorderColorPropertiesEXT =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT,
+ ePhysicalDeviceCustomBorderColorFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT,
+ ePipelineLibraryCreateInfoKHR = VK_STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR,
+ ePhysicalDevicePrivateDataFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT,
+ eDevicePrivateDataCreateInfoEXT = VK_STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT,
+ ePrivateDataSlotCreateInfoEXT = VK_STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT,
+ ePhysicalDevicePipelineCreationCacheControlFeaturesEXT =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT,
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ eVideoEncodeInfoKHR = VK_STRUCTURE_TYPE_VIDEO_ENCODE_INFO_KHR,
+ eVideoEncodeRateControlInfoKHR = VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_INFO_KHR,
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ ePhysicalDeviceDiagnosticsConfigFeaturesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV,
+ eDeviceDiagnosticsConfigCreateInfoNV = VK_STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV,
+ eMemoryBarrier2KHR = VK_STRUCTURE_TYPE_MEMORY_BARRIER_2_KHR,
+ eBufferMemoryBarrier2KHR = VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER_2_KHR,
+ eImageMemoryBarrier2KHR = VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER_2_KHR,
+ eDependencyInfoKHR = VK_STRUCTURE_TYPE_DEPENDENCY_INFO_KHR,
+ eSubmitInfo2KHR = VK_STRUCTURE_TYPE_SUBMIT_INFO_2_KHR,
+ eSemaphoreSubmitInfoKHR = VK_STRUCTURE_TYPE_SEMAPHORE_SUBMIT_INFO_KHR,
+ eCommandBufferSubmitInfoKHR = VK_STRUCTURE_TYPE_COMMAND_BUFFER_SUBMIT_INFO_KHR,
+ ePhysicalDeviceSynchronization2FeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES_KHR,
+ eQueueFamilyCheckpointProperties2NV = VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_2_NV,
+ eCheckpointData2NV = VK_STRUCTURE_TYPE_CHECKPOINT_DATA_2_NV,
+ ePhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR,
+ ePhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES_KHR,
+ ePhysicalDeviceFragmentShadingRateEnumsPropertiesNV =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_PROPERTIES_NV,
+ ePhysicalDeviceFragmentShadingRateEnumsFeaturesNV =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_FEATURES_NV,
+ ePipelineFragmentShadingRateEnumStateCreateInfoNV =
+ VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_ENUM_STATE_CREATE_INFO_NV,
+ eAccelerationStructureGeometryMotionTrianglesDataNV =
+ VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_MOTION_TRIANGLES_DATA_NV,
+ ePhysicalDeviceRayTracingMotionBlurFeaturesNV =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MOTION_BLUR_FEATURES_NV,
+ eAccelerationStructureMotionInfoNV = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MOTION_INFO_NV,
+ ePhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_2_PLANE_444_FORMATS_FEATURES_EXT,
+ ePhysicalDeviceFragmentDensityMap2FeaturesEXT =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_FEATURES_EXT,
+ ePhysicalDeviceFragmentDensityMap2PropertiesEXT =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_PROPERTIES_EXT,
+ eCopyCommandTransformInfoQCOM = VK_STRUCTURE_TYPE_COPY_COMMAND_TRANSFORM_INFO_QCOM,
+ ePhysicalDeviceImageRobustnessFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES_EXT,
+ ePhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_FEATURES_KHR,
+ eCopyBufferInfo2KHR = VK_STRUCTURE_TYPE_COPY_BUFFER_INFO_2_KHR,
+ eCopyImageInfo2KHR = VK_STRUCTURE_TYPE_COPY_IMAGE_INFO_2_KHR,
+ eCopyBufferToImageInfo2KHR = VK_STRUCTURE_TYPE_COPY_BUFFER_TO_IMAGE_INFO_2_KHR,
+ eCopyImageToBufferInfo2KHR = VK_STRUCTURE_TYPE_COPY_IMAGE_TO_BUFFER_INFO_2_KHR,
+ eBlitImageInfo2KHR = VK_STRUCTURE_TYPE_BLIT_IMAGE_INFO_2_KHR,
+ eResolveImageInfo2KHR = VK_STRUCTURE_TYPE_RESOLVE_IMAGE_INFO_2_KHR,
+ eBufferCopy2KHR = VK_STRUCTURE_TYPE_BUFFER_COPY_2_KHR,
+ eImageCopy2KHR = VK_STRUCTURE_TYPE_IMAGE_COPY_2_KHR,
+ eImageBlit2KHR = VK_STRUCTURE_TYPE_IMAGE_BLIT_2_KHR,
+ eBufferImageCopy2KHR = VK_STRUCTURE_TYPE_BUFFER_IMAGE_COPY_2_KHR,
+ eImageResolve2KHR = VK_STRUCTURE_TYPE_IMAGE_RESOLVE_2_KHR,
+ ePhysicalDevice4444FormatsFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_4444_FORMATS_FEATURES_EXT,
+#if defined( VK_USE_PLATFORM_DIRECTFB_EXT )
+ eDirectfbSurfaceCreateInfoEXT = VK_STRUCTURE_TYPE_DIRECTFB_SURFACE_CREATE_INFO_EXT,
+#endif /*VK_USE_PLATFORM_DIRECTFB_EXT*/
+ ePhysicalDeviceMutableDescriptorTypeFeaturesVALVE =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_VALVE,
+ eMutableDescriptorTypeCreateInfoVALVE = VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_VALVE,
+ ePhysicalDeviceVertexInputDynamicStateFeaturesEXT =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_INPUT_DYNAMIC_STATE_FEATURES_EXT,
+ eVertexInputBindingDescription2EXT = VK_STRUCTURE_TYPE_VERTEX_INPUT_BINDING_DESCRIPTION_2_EXT,
+ eVertexInputAttributeDescription2EXT = VK_STRUCTURE_TYPE_VERTEX_INPUT_ATTRIBUTE_DESCRIPTION_2_EXT,
+ ePhysicalDeviceDrmPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRM_PROPERTIES_EXT,
+#if defined( VK_USE_PLATFORM_FUCHSIA )
+ eImportMemoryZirconHandleInfoFUCHSIA = VK_STRUCTURE_TYPE_IMPORT_MEMORY_ZIRCON_HANDLE_INFO_FUCHSIA,
+ eMemoryZirconHandlePropertiesFUCHSIA = VK_STRUCTURE_TYPE_MEMORY_ZIRCON_HANDLE_PROPERTIES_FUCHSIA,
+ eMemoryGetZirconHandleInfoFUCHSIA = VK_STRUCTURE_TYPE_MEMORY_GET_ZIRCON_HANDLE_INFO_FUCHSIA,
+ eImportSemaphoreZirconHandleInfoFUCHSIA = VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_ZIRCON_HANDLE_INFO_FUCHSIA,
+ eSemaphoreGetZirconHandleInfoFUCHSIA = VK_STRUCTURE_TYPE_SEMAPHORE_GET_ZIRCON_HANDLE_INFO_FUCHSIA,
+#endif /*VK_USE_PLATFORM_FUCHSIA*/
+ eSubpasssShadingPipelineCreateInfoHUAWEI = VK_STRUCTURE_TYPE_SUBPASSS_SHADING_PIPELINE_CREATE_INFO_HUAWEI,
+ ePhysicalDeviceSubpassShadingFeaturesHUAWEI = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_FEATURES_HUAWEI,
+ ePhysicalDeviceSubpassShadingPropertiesHUAWEI = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_PROPERTIES_HUAWEI,
+ ePhysicalDeviceExtendedDynamicState2FeaturesEXT =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT,
+#if defined( VK_USE_PLATFORM_SCREEN_QNX )
+ eScreenSurfaceCreateInfoQNX = VK_STRUCTURE_TYPE_SCREEN_SURFACE_CREATE_INFO_QNX,
+#endif /*VK_USE_PLATFORM_SCREEN_QNX*/
+ ePhysicalDeviceColorWriteEnableFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT,
+ ePipelineColorWriteCreateInfoEXT = VK_STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT,
+ ePhysicalDeviceGlobalPriorityQueryFeaturesEXT =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_EXT,
+ eQueueFamilyGlobalPriorityPropertiesEXT = VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_EXT,
+ ePhysicalDeviceMultiDrawFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT,
+ ePhysicalDeviceMultiDrawPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT,
+ eAttachmentDescription2KHR = VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2_KHR,
+ eAttachmentDescriptionStencilLayoutKHR = VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT_KHR,
+ eAttachmentReference2KHR = VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2_KHR,
+ eAttachmentReferenceStencilLayoutKHR = VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT_KHR,
+ eBindBufferMemoryDeviceGroupInfoKHR = VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO_KHR,
+ eBindBufferMemoryInfoKHR = VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO_KHR,
+ eBindImageMemoryDeviceGroupInfoKHR = VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO_KHR,
+ eBindImageMemoryInfoKHR = VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO_KHR,
+ eBindImagePlaneMemoryInfoKHR = VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO_KHR,
+ eBufferDeviceAddressInfoEXT = VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO_EXT,
+ eBufferDeviceAddressInfoKHR = VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO_KHR,
+ eBufferMemoryRequirementsInfo2KHR = VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2_KHR,
+ eBufferOpaqueCaptureAddressCreateInfoKHR = VK_STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO_KHR,
+ eDebugReportCreateInfoEXT = VK_STRUCTURE_TYPE_DEBUG_REPORT_CREATE_INFO_EXT,
+ eDescriptorSetLayoutBindingFlagsCreateInfoEXT =
+ VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO_EXT,
+ eDescriptorSetLayoutSupportKHR = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT_KHR,
+ eDescriptorSetVariableDescriptorCountAllocateInfoEXT =
+ VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO_EXT,
+ eDescriptorSetVariableDescriptorCountLayoutSupportEXT =
+ VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT_EXT,
+ eDescriptorUpdateTemplateCreateInfoKHR = VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO_KHR,
+ eDeviceGroupBindSparseInfoKHR = VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO_KHR,
+ eDeviceGroupCommandBufferBeginInfoKHR = VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO_KHR,
+ eDeviceGroupDeviceCreateInfoKHR = VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO_KHR,
+ eDeviceGroupRenderPassBeginInfoKHR = VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO_KHR,
+ eDeviceGroupSubmitInfoKHR = VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO_KHR,
+ eDeviceMemoryOpaqueCaptureAddressInfoKHR = VK_STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO_KHR,
+ eExportFenceCreateInfoKHR = VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO_KHR,
+ eExportMemoryAllocateInfoKHR = VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_KHR,
+ eExportSemaphoreCreateInfoKHR = VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO_KHR,
+ eExternalBufferPropertiesKHR = VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES_KHR,
+ eExternalFencePropertiesKHR = VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES_KHR,
+ eExternalImageFormatPropertiesKHR = VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES_KHR,
+ eExternalMemoryBufferCreateInfoKHR = VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO_KHR,
+ eExternalMemoryImageCreateInfoKHR = VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_KHR,
+ eExternalSemaphorePropertiesKHR = VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES_KHR,
+ eFormatProperties2KHR = VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2_KHR,
+ eFramebufferAttachmentsCreateInfoKHR = VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO_KHR,
+ eFramebufferAttachmentImageInfoKHR = VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO_KHR,
+ eImageFormatListCreateInfoKHR = VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO_KHR,
+ eImageFormatProperties2KHR = VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2_KHR,
+ eImageMemoryRequirementsInfo2KHR = VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2_KHR,
+ eImagePlaneMemoryRequirementsInfoKHR = VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO_KHR,
+ eImageSparseMemoryRequirementsInfo2KHR = VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2_KHR,
+ eImageStencilUsageCreateInfoEXT = VK_STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO_EXT,
+ eImageViewUsageCreateInfoKHR = VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO_KHR,
+ eMemoryAllocateFlagsInfoKHR = VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO_KHR,
+ eMemoryDedicatedAllocateInfoKHR = VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO_KHR,
+ eMemoryDedicatedRequirementsKHR = VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS_KHR,
+ eMemoryOpaqueCaptureAddressAllocateInfoKHR = VK_STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO_KHR,
+ eMemoryRequirements2KHR = VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2_KHR,
+ ePhysicalDevice16BitStorageFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES_KHR,
+ ePhysicalDevice8BitStorageFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES_KHR,
+ ePhysicalDeviceBufferAddressFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_ADDRESS_FEATURES_EXT,
+ ePhysicalDeviceBufferDeviceAddressFeaturesKHR =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_KHR,
+ ePhysicalDeviceDepthStencilResolvePropertiesKHR =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES_KHR,
+ ePhysicalDeviceDescriptorIndexingFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES_EXT,
+ ePhysicalDeviceDescriptorIndexingPropertiesEXT =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES_EXT,
+ ePhysicalDeviceDriverPropertiesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES_KHR,
+ ePhysicalDeviceExternalBufferInfoKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO_KHR,
+ ePhysicalDeviceExternalFenceInfoKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO_KHR,
+ ePhysicalDeviceExternalImageFormatInfoKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO_KHR,
+ ePhysicalDeviceExternalSemaphoreInfoKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO_KHR,
+ ePhysicalDeviceFeatures2KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2_KHR,
+ ePhysicalDeviceFloat16Int8FeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT16_INT8_FEATURES_KHR,
+ ePhysicalDeviceFloatControlsPropertiesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES_KHR,
+ ePhysicalDeviceGroupPropertiesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES_KHR,
+ ePhysicalDeviceHostQueryResetFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES_EXT,
+ ePhysicalDeviceIdPropertiesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES_KHR,
+ ePhysicalDeviceImagelessFramebufferFeaturesKHR =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES_KHR,
+ ePhysicalDeviceImageFormatInfo2KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2_KHR,
+ ePhysicalDeviceMaintenance3PropertiesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES_KHR,
+ ePhysicalDeviceMemoryProperties2KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2_KHR,
+ ePhysicalDeviceMultiviewFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES_KHR,
+ ePhysicalDeviceMultiviewPropertiesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES_KHR,
+ ePhysicalDevicePointClippingPropertiesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES_KHR,
+ ePhysicalDeviceProperties2KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2_KHR,
+ ePhysicalDeviceSamplerFilterMinmaxPropertiesEXT =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES_EXT,
+ ePhysicalDeviceSamplerYcbcrConversionFeaturesKHR =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES_KHR,
+ ePhysicalDeviceScalarBlockLayoutFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES_EXT,
+ ePhysicalDeviceSeparateDepthStencilLayoutsFeaturesKHR =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES_KHR,
+ ePhysicalDeviceShaderAtomicInt64FeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES_KHR,
+ ePhysicalDeviceShaderDrawParameterFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETER_FEATURES,
+ ePhysicalDeviceShaderFloat16Int8FeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES_KHR,
+ ePhysicalDeviceShaderSubgroupExtendedTypesFeaturesKHR =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES_KHR,
+ ePhysicalDeviceSparseImageFormatInfo2KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2_KHR,
+ ePhysicalDeviceTimelineSemaphoreFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES_KHR,
+ ePhysicalDeviceTimelineSemaphorePropertiesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES_KHR,
+ ePhysicalDeviceUniformBufferStandardLayoutFeaturesKHR =
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES_KHR,
+ ePhysicalDeviceVariablePointersFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES_KHR,
+ ePhysicalDeviceVariablePointerFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES,
+ ePhysicalDeviceVariablePointerFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES_KHR,
+ ePhysicalDeviceVulkanMemoryModelFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES_KHR,
+ ePipelineTessellationDomainOriginStateCreateInfoKHR =
+ VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO_KHR,
+ eQueryPoolCreateInfoINTEL = VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO_INTEL,
+ eQueueFamilyProperties2KHR = VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2_KHR,
+ eRenderPassAttachmentBeginInfoKHR = VK_STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO_KHR,
+ eRenderPassCreateInfo2KHR = VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2_KHR,
+ eRenderPassInputAttachmentAspectCreateInfoKHR =
+ VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO_KHR,
+ eRenderPassMultiviewCreateInfoKHR = VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO_KHR,
+ eSamplerReductionModeCreateInfoEXT = VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO_EXT,
+ eSamplerYcbcrConversionCreateInfoKHR = VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO_KHR,
+ eSamplerYcbcrConversionImageFormatPropertiesKHR =
+ VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES_KHR,
+ eSamplerYcbcrConversionInfoKHR = VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO_KHR,
+ eSemaphoreSignalInfoKHR = VK_STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO_KHR,
+ eSemaphoreTypeCreateInfoKHR = VK_STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO_KHR,
+ eSemaphoreWaitInfoKHR = VK_STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO_KHR,
+ eSparseImageFormatProperties2KHR = VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2_KHR,
+ eSparseImageMemoryRequirements2KHR = VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2_KHR,
+ eSubpassBeginInfoKHR = VK_STRUCTURE_TYPE_SUBPASS_BEGIN_INFO_KHR,
+ eSubpassDependency2KHR = VK_STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2_KHR,
+ eSubpassDescription2KHR = VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2_KHR,
+ eSubpassDescriptionDepthStencilResolveKHR = VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE_KHR,
+ eSubpassEndInfoKHR = VK_STRUCTURE_TYPE_SUBPASS_END_INFO_KHR,
+ eTimelineSemaphoreSubmitInfoKHR = VK_STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO_KHR
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( StructureType value )
+ {
+ switch ( value )
+ {
+ case StructureType::eApplicationInfo: return "ApplicationInfo";
+ case StructureType::eInstanceCreateInfo: return "InstanceCreateInfo";
+ case StructureType::eDeviceQueueCreateInfo: return "DeviceQueueCreateInfo";
+ case StructureType::eDeviceCreateInfo: return "DeviceCreateInfo";
+ case StructureType::eSubmitInfo: return "SubmitInfo";
+ case StructureType::eMemoryAllocateInfo: return "MemoryAllocateInfo";
+ case StructureType::eMappedMemoryRange: return "MappedMemoryRange";
+ case StructureType::eBindSparseInfo: return "BindSparseInfo";
+ case StructureType::eFenceCreateInfo: return "FenceCreateInfo";
+ case StructureType::eSemaphoreCreateInfo: return "SemaphoreCreateInfo";
+ case StructureType::eEventCreateInfo: return "EventCreateInfo";
+ case StructureType::eQueryPoolCreateInfo: return "QueryPoolCreateInfo";
+ case StructureType::eBufferCreateInfo: return "BufferCreateInfo";
+ case StructureType::eBufferViewCreateInfo: return "BufferViewCreateInfo";
+ case StructureType::eImageCreateInfo: return "ImageCreateInfo";
+ case StructureType::eImageViewCreateInfo: return "ImageViewCreateInfo";
+ case StructureType::eShaderModuleCreateInfo: return "ShaderModuleCreateInfo";
+ case StructureType::ePipelineCacheCreateInfo: return "PipelineCacheCreateInfo";
+ case StructureType::ePipelineShaderStageCreateInfo: return "PipelineShaderStageCreateInfo";
+ case StructureType::ePipelineVertexInputStateCreateInfo: return "PipelineVertexInputStateCreateInfo";
+ case StructureType::ePipelineInputAssemblyStateCreateInfo: return "PipelineInputAssemblyStateCreateInfo";
+ case StructureType::ePipelineTessellationStateCreateInfo: return "PipelineTessellationStateCreateInfo";
+ case StructureType::ePipelineViewportStateCreateInfo: return "PipelineViewportStateCreateInfo";
+ case StructureType::ePipelineRasterizationStateCreateInfo: return "PipelineRasterizationStateCreateInfo";
+ case StructureType::ePipelineMultisampleStateCreateInfo: return "PipelineMultisampleStateCreateInfo";
+ case StructureType::ePipelineDepthStencilStateCreateInfo: return "PipelineDepthStencilStateCreateInfo";
+ case StructureType::ePipelineColorBlendStateCreateInfo: return "PipelineColorBlendStateCreateInfo";
+ case StructureType::ePipelineDynamicStateCreateInfo: return "PipelineDynamicStateCreateInfo";
+ case StructureType::eGraphicsPipelineCreateInfo: return "GraphicsPipelineCreateInfo";
+ case StructureType::eComputePipelineCreateInfo: return "ComputePipelineCreateInfo";
+ case StructureType::ePipelineLayoutCreateInfo: return "PipelineLayoutCreateInfo";
+ case StructureType::eSamplerCreateInfo: return "SamplerCreateInfo";
+ case StructureType::eDescriptorSetLayoutCreateInfo: return "DescriptorSetLayoutCreateInfo";
+ case StructureType::eDescriptorPoolCreateInfo: return "DescriptorPoolCreateInfo";
+ case StructureType::eDescriptorSetAllocateInfo: return "DescriptorSetAllocateInfo";
+ case StructureType::eWriteDescriptorSet: return "WriteDescriptorSet";
+ case StructureType::eCopyDescriptorSet: return "CopyDescriptorSet";
+ case StructureType::eFramebufferCreateInfo: return "FramebufferCreateInfo";
+ case StructureType::eRenderPassCreateInfo: return "RenderPassCreateInfo";
+ case StructureType::eCommandPoolCreateInfo: return "CommandPoolCreateInfo";
+ case StructureType::eCommandBufferAllocateInfo: return "CommandBufferAllocateInfo";
+ case StructureType::eCommandBufferInheritanceInfo: return "CommandBufferInheritanceInfo";
+ case StructureType::eCommandBufferBeginInfo: return "CommandBufferBeginInfo";
+ case StructureType::eRenderPassBeginInfo: return "RenderPassBeginInfo";
+ case StructureType::eBufferMemoryBarrier: return "BufferMemoryBarrier";
+ case StructureType::eImageMemoryBarrier: return "ImageMemoryBarrier";
+ case StructureType::eMemoryBarrier: return "MemoryBarrier";
+ case StructureType::eLoaderInstanceCreateInfo: return "LoaderInstanceCreateInfo";
+ case StructureType::eLoaderDeviceCreateInfo: return "LoaderDeviceCreateInfo";
+ case StructureType::ePhysicalDeviceSubgroupProperties: return "PhysicalDeviceSubgroupProperties";
+ case StructureType::eBindBufferMemoryInfo: return "BindBufferMemoryInfo";
+ case StructureType::eBindImageMemoryInfo: return "BindImageMemoryInfo";
+ case StructureType::ePhysicalDevice16BitStorageFeatures: return "PhysicalDevice16BitStorageFeatures";
+ case StructureType::eMemoryDedicatedRequirements: return "MemoryDedicatedRequirements";
+ case StructureType::eMemoryDedicatedAllocateInfo: return "MemoryDedicatedAllocateInfo";
+ case StructureType::eMemoryAllocateFlagsInfo: return "MemoryAllocateFlagsInfo";
+ case StructureType::eDeviceGroupRenderPassBeginInfo: return "DeviceGroupRenderPassBeginInfo";
+ case StructureType::eDeviceGroupCommandBufferBeginInfo: return "DeviceGroupCommandBufferBeginInfo";
+ case StructureType::eDeviceGroupSubmitInfo: return "DeviceGroupSubmitInfo";
+ case StructureType::eDeviceGroupBindSparseInfo: return "DeviceGroupBindSparseInfo";
+ case StructureType::eBindBufferMemoryDeviceGroupInfo: return "BindBufferMemoryDeviceGroupInfo";
+ case StructureType::eBindImageMemoryDeviceGroupInfo: return "BindImageMemoryDeviceGroupInfo";
+ case StructureType::ePhysicalDeviceGroupProperties: return "PhysicalDeviceGroupProperties";
+ case StructureType::eDeviceGroupDeviceCreateInfo: return "DeviceGroupDeviceCreateInfo";
+ case StructureType::eBufferMemoryRequirementsInfo2: return "BufferMemoryRequirementsInfo2";
+ case StructureType::eImageMemoryRequirementsInfo2: return "ImageMemoryRequirementsInfo2";
+ case StructureType::eImageSparseMemoryRequirementsInfo2: return "ImageSparseMemoryRequirementsInfo2";
+ case StructureType::eMemoryRequirements2: return "MemoryRequirements2";
+ case StructureType::eSparseImageMemoryRequirements2: return "SparseImageMemoryRequirements2";
+ case StructureType::ePhysicalDeviceFeatures2: return "PhysicalDeviceFeatures2";
+ case StructureType::ePhysicalDeviceProperties2: return "PhysicalDeviceProperties2";
+ case StructureType::eFormatProperties2: return "FormatProperties2";
+ case StructureType::eImageFormatProperties2: return "ImageFormatProperties2";
+ case StructureType::ePhysicalDeviceImageFormatInfo2: return "PhysicalDeviceImageFormatInfo2";
+ case StructureType::eQueueFamilyProperties2: return "QueueFamilyProperties2";
+ case StructureType::ePhysicalDeviceMemoryProperties2: return "PhysicalDeviceMemoryProperties2";
+ case StructureType::eSparseImageFormatProperties2: return "SparseImageFormatProperties2";
+ case StructureType::ePhysicalDeviceSparseImageFormatInfo2: return "PhysicalDeviceSparseImageFormatInfo2";
+ case StructureType::ePhysicalDevicePointClippingProperties: return "PhysicalDevicePointClippingProperties";
+ case StructureType::eRenderPassInputAttachmentAspectCreateInfo:
+ return "RenderPassInputAttachmentAspectCreateInfo";
+ case StructureType::eImageViewUsageCreateInfo: return "ImageViewUsageCreateInfo";
+ case StructureType::ePipelineTessellationDomainOriginStateCreateInfo:
+ return "PipelineTessellationDomainOriginStateCreateInfo";
+ case StructureType::eRenderPassMultiviewCreateInfo: return "RenderPassMultiviewCreateInfo";
+ case StructureType::ePhysicalDeviceMultiviewFeatures: return "PhysicalDeviceMultiviewFeatures";
+ case StructureType::ePhysicalDeviceMultiviewProperties: return "PhysicalDeviceMultiviewProperties";
+ case StructureType::ePhysicalDeviceVariablePointersFeatures: return "PhysicalDeviceVariablePointersFeatures";
+ case StructureType::eProtectedSubmitInfo: return "ProtectedSubmitInfo";
+ case StructureType::ePhysicalDeviceProtectedMemoryFeatures: return "PhysicalDeviceProtectedMemoryFeatures";
+ case StructureType::ePhysicalDeviceProtectedMemoryProperties: return "PhysicalDeviceProtectedMemoryProperties";
+ case StructureType::eDeviceQueueInfo2: return "DeviceQueueInfo2";
+ case StructureType::eSamplerYcbcrConversionCreateInfo: return "SamplerYcbcrConversionCreateInfo";
+ case StructureType::eSamplerYcbcrConversionInfo: return "SamplerYcbcrConversionInfo";
+ case StructureType::eBindImagePlaneMemoryInfo: return "BindImagePlaneMemoryInfo";
+ case StructureType::eImagePlaneMemoryRequirementsInfo: return "ImagePlaneMemoryRequirementsInfo";
+ case StructureType::ePhysicalDeviceSamplerYcbcrConversionFeatures:
+ return "PhysicalDeviceSamplerYcbcrConversionFeatures";
+ case StructureType::eSamplerYcbcrConversionImageFormatProperties:
+ return "SamplerYcbcrConversionImageFormatProperties";
+ case StructureType::eDescriptorUpdateTemplateCreateInfo: return "DescriptorUpdateTemplateCreateInfo";
+ case StructureType::ePhysicalDeviceExternalImageFormatInfo: return "PhysicalDeviceExternalImageFormatInfo";
+ case StructureType::eExternalImageFormatProperties: return "ExternalImageFormatProperties";
+ case StructureType::ePhysicalDeviceExternalBufferInfo: return "PhysicalDeviceExternalBufferInfo";
+ case StructureType::eExternalBufferProperties: return "ExternalBufferProperties";
+ case StructureType::ePhysicalDeviceIdProperties: return "PhysicalDeviceIdProperties";
+ case StructureType::eExternalMemoryBufferCreateInfo: return "ExternalMemoryBufferCreateInfo";
+ case StructureType::eExternalMemoryImageCreateInfo: return "ExternalMemoryImageCreateInfo";
+ case StructureType::eExportMemoryAllocateInfo: return "ExportMemoryAllocateInfo";
+ case StructureType::ePhysicalDeviceExternalFenceInfo: return "PhysicalDeviceExternalFenceInfo";
+ case StructureType::eExternalFenceProperties: return "ExternalFenceProperties";
+ case StructureType::eExportFenceCreateInfo: return "ExportFenceCreateInfo";
+ case StructureType::eExportSemaphoreCreateInfo: return "ExportSemaphoreCreateInfo";
+ case StructureType::ePhysicalDeviceExternalSemaphoreInfo: return "PhysicalDeviceExternalSemaphoreInfo";
+ case StructureType::eExternalSemaphoreProperties: return "ExternalSemaphoreProperties";
+ case StructureType::ePhysicalDeviceMaintenance3Properties: return "PhysicalDeviceMaintenance3Properties";
+ case StructureType::eDescriptorSetLayoutSupport: return "DescriptorSetLayoutSupport";
+ case StructureType::ePhysicalDeviceShaderDrawParametersFeatures:
+ return "PhysicalDeviceShaderDrawParametersFeatures";
+ case StructureType::ePhysicalDeviceVulkan11Features: return "PhysicalDeviceVulkan11Features";
+ case StructureType::ePhysicalDeviceVulkan11Properties: return "PhysicalDeviceVulkan11Properties";
+ case StructureType::ePhysicalDeviceVulkan12Features: return "PhysicalDeviceVulkan12Features";
+ case StructureType::ePhysicalDeviceVulkan12Properties: return "PhysicalDeviceVulkan12Properties";
+ case StructureType::eImageFormatListCreateInfo: return "ImageFormatListCreateInfo";
+ case StructureType::eAttachmentDescription2: return "AttachmentDescription2";
+ case StructureType::eAttachmentReference2: return "AttachmentReference2";
+ case StructureType::eSubpassDescription2: return "SubpassDescription2";
+ case StructureType::eSubpassDependency2: return "SubpassDependency2";
+ case StructureType::eRenderPassCreateInfo2: return "RenderPassCreateInfo2";
+ case StructureType::eSubpassBeginInfo: return "SubpassBeginInfo";
+ case StructureType::eSubpassEndInfo: return "SubpassEndInfo";
+ case StructureType::ePhysicalDevice8BitStorageFeatures: return "PhysicalDevice8BitStorageFeatures";
+ case StructureType::ePhysicalDeviceDriverProperties: return "PhysicalDeviceDriverProperties";
+ case StructureType::ePhysicalDeviceShaderAtomicInt64Features: return "PhysicalDeviceShaderAtomicInt64Features";
+ case StructureType::ePhysicalDeviceShaderFloat16Int8Features: return "PhysicalDeviceShaderFloat16Int8Features";
+ case StructureType::ePhysicalDeviceFloatControlsProperties: return "PhysicalDeviceFloatControlsProperties";
+ case StructureType::eDescriptorSetLayoutBindingFlagsCreateInfo:
+ return "DescriptorSetLayoutBindingFlagsCreateInfo";
+ case StructureType::ePhysicalDeviceDescriptorIndexingFeatures: return "PhysicalDeviceDescriptorIndexingFeatures";
+ case StructureType::ePhysicalDeviceDescriptorIndexingProperties:
+ return "PhysicalDeviceDescriptorIndexingProperties";
+ case StructureType::eDescriptorSetVariableDescriptorCountAllocateInfo:
+ return "DescriptorSetVariableDescriptorCountAllocateInfo";
+ case StructureType::eDescriptorSetVariableDescriptorCountLayoutSupport:
+ return "DescriptorSetVariableDescriptorCountLayoutSupport";
+ case StructureType::ePhysicalDeviceDepthStencilResolveProperties:
+ return "PhysicalDeviceDepthStencilResolveProperties";
+ case StructureType::eSubpassDescriptionDepthStencilResolve: return "SubpassDescriptionDepthStencilResolve";
+ case StructureType::ePhysicalDeviceScalarBlockLayoutFeatures: return "PhysicalDeviceScalarBlockLayoutFeatures";
+ case StructureType::eImageStencilUsageCreateInfo: return "ImageStencilUsageCreateInfo";
+ case StructureType::ePhysicalDeviceSamplerFilterMinmaxProperties:
+ return "PhysicalDeviceSamplerFilterMinmaxProperties";
+ case StructureType::eSamplerReductionModeCreateInfo: return "SamplerReductionModeCreateInfo";
+ case StructureType::ePhysicalDeviceVulkanMemoryModelFeatures: return "PhysicalDeviceVulkanMemoryModelFeatures";
+ case StructureType::ePhysicalDeviceImagelessFramebufferFeatures:
+ return "PhysicalDeviceImagelessFramebufferFeatures";
+ case StructureType::eFramebufferAttachmentsCreateInfo: return "FramebufferAttachmentsCreateInfo";
+ case StructureType::eFramebufferAttachmentImageInfo: return "FramebufferAttachmentImageInfo";
+ case StructureType::eRenderPassAttachmentBeginInfo: return "RenderPassAttachmentBeginInfo";
+ case StructureType::ePhysicalDeviceUniformBufferStandardLayoutFeatures:
+ return "PhysicalDeviceUniformBufferStandardLayoutFeatures";
+ case StructureType::ePhysicalDeviceShaderSubgroupExtendedTypesFeatures:
+ return "PhysicalDeviceShaderSubgroupExtendedTypesFeatures";
+ case StructureType::ePhysicalDeviceSeparateDepthStencilLayoutsFeatures:
+ return "PhysicalDeviceSeparateDepthStencilLayoutsFeatures";
+ case StructureType::eAttachmentReferenceStencilLayout: return "AttachmentReferenceStencilLayout";
+ case StructureType::eAttachmentDescriptionStencilLayout: return "AttachmentDescriptionStencilLayout";
+ case StructureType::ePhysicalDeviceHostQueryResetFeatures: return "PhysicalDeviceHostQueryResetFeatures";
+ case StructureType::ePhysicalDeviceTimelineSemaphoreFeatures: return "PhysicalDeviceTimelineSemaphoreFeatures";
+ case StructureType::ePhysicalDeviceTimelineSemaphoreProperties:
+ return "PhysicalDeviceTimelineSemaphoreProperties";
+ case StructureType::eSemaphoreTypeCreateInfo: return "SemaphoreTypeCreateInfo";
+ case StructureType::eTimelineSemaphoreSubmitInfo: return "TimelineSemaphoreSubmitInfo";
+ case StructureType::eSemaphoreWaitInfo: return "SemaphoreWaitInfo";
+ case StructureType::eSemaphoreSignalInfo: return "SemaphoreSignalInfo";
+ case StructureType::ePhysicalDeviceBufferDeviceAddressFeatures:
+ return "PhysicalDeviceBufferDeviceAddressFeatures";
+ case StructureType::eBufferDeviceAddressInfo: return "BufferDeviceAddressInfo";
+ case StructureType::eBufferOpaqueCaptureAddressCreateInfo: return "BufferOpaqueCaptureAddressCreateInfo";
+ case StructureType::eMemoryOpaqueCaptureAddressAllocateInfo: return "MemoryOpaqueCaptureAddressAllocateInfo";
+ case StructureType::eDeviceMemoryOpaqueCaptureAddressInfo: return "DeviceMemoryOpaqueCaptureAddressInfo";
+ case StructureType::eSwapchainCreateInfoKHR: return "SwapchainCreateInfoKHR";
+ case StructureType::ePresentInfoKHR: return "PresentInfoKHR";
+ case StructureType::eDeviceGroupPresentCapabilitiesKHR: return "DeviceGroupPresentCapabilitiesKHR";
+ case StructureType::eImageSwapchainCreateInfoKHR: return "ImageSwapchainCreateInfoKHR";
+ case StructureType::eBindImageMemorySwapchainInfoKHR: return "BindImageMemorySwapchainInfoKHR";
+ case StructureType::eAcquireNextImageInfoKHR: return "AcquireNextImageInfoKHR";
+ case StructureType::eDeviceGroupPresentInfoKHR: return "DeviceGroupPresentInfoKHR";
+ case StructureType::eDeviceGroupSwapchainCreateInfoKHR: return "DeviceGroupSwapchainCreateInfoKHR";
+ case StructureType::eDisplayModeCreateInfoKHR: return "DisplayModeCreateInfoKHR";
+ case StructureType::eDisplaySurfaceCreateInfoKHR: return "DisplaySurfaceCreateInfoKHR";
+ case StructureType::eDisplayPresentInfoKHR: return "DisplayPresentInfoKHR";
+#if defined( VK_USE_PLATFORM_XLIB_KHR )
+ case StructureType::eXlibSurfaceCreateInfoKHR: return "XlibSurfaceCreateInfoKHR";
+#endif /*VK_USE_PLATFORM_XLIB_KHR*/
+#if defined( VK_USE_PLATFORM_XCB_KHR )
+ case StructureType::eXcbSurfaceCreateInfoKHR: return "XcbSurfaceCreateInfoKHR";
+#endif /*VK_USE_PLATFORM_XCB_KHR*/
+#if defined( VK_USE_PLATFORM_WAYLAND_KHR )
+ case StructureType::eWaylandSurfaceCreateInfoKHR: return "WaylandSurfaceCreateInfoKHR";
+#endif /*VK_USE_PLATFORM_WAYLAND_KHR*/
+#if defined( VK_USE_PLATFORM_ANDROID_KHR )
+ case StructureType::eAndroidSurfaceCreateInfoKHR: return "AndroidSurfaceCreateInfoKHR";
+#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ case StructureType::eWin32SurfaceCreateInfoKHR: return "Win32SurfaceCreateInfoKHR";
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+ case StructureType::eDebugReportCallbackCreateInfoEXT: return "DebugReportCallbackCreateInfoEXT";
+ case StructureType::ePipelineRasterizationStateRasterizationOrderAMD:
+ return "PipelineRasterizationStateRasterizationOrderAMD";
+ case StructureType::eDebugMarkerObjectNameInfoEXT: return "DebugMarkerObjectNameInfoEXT";
+ case StructureType::eDebugMarkerObjectTagInfoEXT: return "DebugMarkerObjectTagInfoEXT";
+ case StructureType::eDebugMarkerMarkerInfoEXT: return "DebugMarkerMarkerInfoEXT";
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ case StructureType::eVideoProfileKHR: return "VideoProfileKHR";
+ case StructureType::eVideoCapabilitiesKHR: return "VideoCapabilitiesKHR";
+ case StructureType::eVideoPictureResourceKHR: return "VideoPictureResourceKHR";
+ case StructureType::eVideoGetMemoryPropertiesKHR: return "VideoGetMemoryPropertiesKHR";
+ case StructureType::eVideoBindMemoryKHR: return "VideoBindMemoryKHR";
+ case StructureType::eVideoSessionCreateInfoKHR: return "VideoSessionCreateInfoKHR";
+ case StructureType::eVideoSessionParametersCreateInfoKHR: return "VideoSessionParametersCreateInfoKHR";
+ case StructureType::eVideoSessionParametersUpdateInfoKHR: return "VideoSessionParametersUpdateInfoKHR";
+ case StructureType::eVideoBeginCodingInfoKHR: return "VideoBeginCodingInfoKHR";
+ case StructureType::eVideoEndCodingInfoKHR: return "VideoEndCodingInfoKHR";
+ case StructureType::eVideoCodingControlInfoKHR: return "VideoCodingControlInfoKHR";
+ case StructureType::eVideoReferenceSlotKHR: return "VideoReferenceSlotKHR";
+ case StructureType::eVideoQueueFamilyProperties2KHR: return "VideoQueueFamilyProperties2KHR";
+ case StructureType::eVideoProfilesKHR: return "VideoProfilesKHR";
+ case StructureType::ePhysicalDeviceVideoFormatInfoKHR: return "PhysicalDeviceVideoFormatInfoKHR";
+ case StructureType::eVideoFormatPropertiesKHR: return "VideoFormatPropertiesKHR";
+ case StructureType::eVideoDecodeInfoKHR: return "VideoDecodeInfoKHR";
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ case StructureType::eDedicatedAllocationImageCreateInfoNV: return "DedicatedAllocationImageCreateInfoNV";
+ case StructureType::eDedicatedAllocationBufferCreateInfoNV: return "DedicatedAllocationBufferCreateInfoNV";
+ case StructureType::eDedicatedAllocationMemoryAllocateInfoNV: return "DedicatedAllocationMemoryAllocateInfoNV";
+ case StructureType::ePhysicalDeviceTransformFeedbackFeaturesEXT:
+ return "PhysicalDeviceTransformFeedbackFeaturesEXT";
+ case StructureType::ePhysicalDeviceTransformFeedbackPropertiesEXT:
+ return "PhysicalDeviceTransformFeedbackPropertiesEXT";
+ case StructureType::ePipelineRasterizationStateStreamCreateInfoEXT:
+ return "PipelineRasterizationStateStreamCreateInfoEXT";
+ case StructureType::eCuModuleCreateInfoNVX: return "CuModuleCreateInfoNVX";
+ case StructureType::eCuFunctionCreateInfoNVX: return "CuFunctionCreateInfoNVX";
+ case StructureType::eCuLaunchInfoNVX: return "CuLaunchInfoNVX";
+ case StructureType::eImageViewHandleInfoNVX: return "ImageViewHandleInfoNVX";
+ case StructureType::eImageViewAddressPropertiesNVX: return "ImageViewAddressPropertiesNVX";
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ case StructureType::eVideoEncodeH264CapabilitiesEXT: return "VideoEncodeH264CapabilitiesEXT";
+ case StructureType::eVideoEncodeH264SessionCreateInfoEXT: return "VideoEncodeH264SessionCreateInfoEXT";
+ case StructureType::eVideoEncodeH264SessionParametersCreateInfoEXT:
+ return "VideoEncodeH264SessionParametersCreateInfoEXT";
+ case StructureType::eVideoEncodeH264SessionParametersAddInfoEXT:
+ return "VideoEncodeH264SessionParametersAddInfoEXT";
+ case StructureType::eVideoEncodeH264VclFrameInfoEXT: return "VideoEncodeH264VclFrameInfoEXT";
+ case StructureType::eVideoEncodeH264DpbSlotInfoEXT: return "VideoEncodeH264DpbSlotInfoEXT";
+ case StructureType::eVideoEncodeH264NaluSliceEXT: return "VideoEncodeH264NaluSliceEXT";
+ case StructureType::eVideoEncodeH264EmitPictureParametersEXT: return "VideoEncodeH264EmitPictureParametersEXT";
+ case StructureType::eVideoEncodeH264ProfileEXT: return "VideoEncodeH264ProfileEXT";
+ case StructureType::eVideoDecodeH264CapabilitiesEXT: return "VideoDecodeH264CapabilitiesEXT";
+ case StructureType::eVideoDecodeH264SessionCreateInfoEXT: return "VideoDecodeH264SessionCreateInfoEXT";
+ case StructureType::eVideoDecodeH264PictureInfoEXT: return "VideoDecodeH264PictureInfoEXT";
+ case StructureType::eVideoDecodeH264MvcEXT: return "VideoDecodeH264MvcEXT";
+ case StructureType::eVideoDecodeH264ProfileEXT: return "VideoDecodeH264ProfileEXT";
+ case StructureType::eVideoDecodeH264SessionParametersCreateInfoEXT:
+ return "VideoDecodeH264SessionParametersCreateInfoEXT";
+ case StructureType::eVideoDecodeH264SessionParametersAddInfoEXT:
+ return "VideoDecodeH264SessionParametersAddInfoEXT";
+ case StructureType::eVideoDecodeH264DpbSlotInfoEXT: return "VideoDecodeH264DpbSlotInfoEXT";
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ case StructureType::eTextureLodGatherFormatPropertiesAMD: return "TextureLodGatherFormatPropertiesAMD";
+#if defined( VK_USE_PLATFORM_GGP )
+ case StructureType::eStreamDescriptorSurfaceCreateInfoGGP: return "StreamDescriptorSurfaceCreateInfoGGP";
+#endif /*VK_USE_PLATFORM_GGP*/
+ case StructureType::ePhysicalDeviceCornerSampledImageFeaturesNV:
+ return "PhysicalDeviceCornerSampledImageFeaturesNV";
+ case StructureType::eExternalMemoryImageCreateInfoNV: return "ExternalMemoryImageCreateInfoNV";
+ case StructureType::eExportMemoryAllocateInfoNV: return "ExportMemoryAllocateInfoNV";
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ case StructureType::eImportMemoryWin32HandleInfoNV: return "ImportMemoryWin32HandleInfoNV";
+ case StructureType::eExportMemoryWin32HandleInfoNV: return "ExportMemoryWin32HandleInfoNV";
+ case StructureType::eWin32KeyedMutexAcquireReleaseInfoNV: return "Win32KeyedMutexAcquireReleaseInfoNV";
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+ case StructureType::eValidationFlagsEXT: return "ValidationFlagsEXT";
+#if defined( VK_USE_PLATFORM_VI_NN )
+ case StructureType::eViSurfaceCreateInfoNN: return "ViSurfaceCreateInfoNN";
+#endif /*VK_USE_PLATFORM_VI_NN*/
+ case StructureType::ePhysicalDeviceTextureCompressionAstcHdrFeaturesEXT:
+ return "PhysicalDeviceTextureCompressionAstcHdrFeaturesEXT";
+ case StructureType::eImageViewAstcDecodeModeEXT: return "ImageViewAstcDecodeModeEXT";
+ case StructureType::ePhysicalDeviceAstcDecodeFeaturesEXT: return "PhysicalDeviceAstcDecodeFeaturesEXT";
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ case StructureType::eImportMemoryWin32HandleInfoKHR: return "ImportMemoryWin32HandleInfoKHR";
+ case StructureType::eExportMemoryWin32HandleInfoKHR: return "ExportMemoryWin32HandleInfoKHR";
+ case StructureType::eMemoryWin32HandlePropertiesKHR: return "MemoryWin32HandlePropertiesKHR";
+ case StructureType::eMemoryGetWin32HandleInfoKHR: return "MemoryGetWin32HandleInfoKHR";
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+ case StructureType::eImportMemoryFdInfoKHR: return "ImportMemoryFdInfoKHR";
+ case StructureType::eMemoryFdPropertiesKHR: return "MemoryFdPropertiesKHR";
+ case StructureType::eMemoryGetFdInfoKHR: return "MemoryGetFdInfoKHR";
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ case StructureType::eWin32KeyedMutexAcquireReleaseInfoKHR: return "Win32KeyedMutexAcquireReleaseInfoKHR";
+ case StructureType::eImportSemaphoreWin32HandleInfoKHR: return "ImportSemaphoreWin32HandleInfoKHR";
+ case StructureType::eExportSemaphoreWin32HandleInfoKHR: return "ExportSemaphoreWin32HandleInfoKHR";
+ case StructureType::eD3D12FenceSubmitInfoKHR: return "D3D12FenceSubmitInfoKHR";
+ case StructureType::eSemaphoreGetWin32HandleInfoKHR: return "SemaphoreGetWin32HandleInfoKHR";
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+ case StructureType::eImportSemaphoreFdInfoKHR: return "ImportSemaphoreFdInfoKHR";
+ case StructureType::eSemaphoreGetFdInfoKHR: return "SemaphoreGetFdInfoKHR";
+ case StructureType::ePhysicalDevicePushDescriptorPropertiesKHR:
+ return "PhysicalDevicePushDescriptorPropertiesKHR";
+ case StructureType::eCommandBufferInheritanceConditionalRenderingInfoEXT:
+ return "CommandBufferInheritanceConditionalRenderingInfoEXT";
+ case StructureType::ePhysicalDeviceConditionalRenderingFeaturesEXT:
+ return "PhysicalDeviceConditionalRenderingFeaturesEXT";
+ case StructureType::eConditionalRenderingBeginInfoEXT: return "ConditionalRenderingBeginInfoEXT";
+ case StructureType::ePresentRegionsKHR: return "PresentRegionsKHR";
+ case StructureType::ePipelineViewportWScalingStateCreateInfoNV:
+ return "PipelineViewportWScalingStateCreateInfoNV";
+ case StructureType::eSurfaceCapabilities2EXT: return "SurfaceCapabilities2EXT";
+ case StructureType::eDisplayPowerInfoEXT: return "DisplayPowerInfoEXT";
+ case StructureType::eDeviceEventInfoEXT: return "DeviceEventInfoEXT";
+ case StructureType::eDisplayEventInfoEXT: return "DisplayEventInfoEXT";
+ case StructureType::eSwapchainCounterCreateInfoEXT: return "SwapchainCounterCreateInfoEXT";
+ case StructureType::ePresentTimesInfoGOOGLE: return "PresentTimesInfoGOOGLE";
+ case StructureType::ePhysicalDeviceMultiviewPerViewAttributesPropertiesNVX:
+ return "PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX";
+ case StructureType::ePipelineViewportSwizzleStateCreateInfoNV: return "PipelineViewportSwizzleStateCreateInfoNV";
+ case StructureType::ePhysicalDeviceDiscardRectanglePropertiesEXT:
+ return "PhysicalDeviceDiscardRectanglePropertiesEXT";
+ case StructureType::ePipelineDiscardRectangleStateCreateInfoEXT:
+ return "PipelineDiscardRectangleStateCreateInfoEXT";
+ case StructureType::ePhysicalDeviceConservativeRasterizationPropertiesEXT:
+ return "PhysicalDeviceConservativeRasterizationPropertiesEXT";
+ case StructureType::ePipelineRasterizationConservativeStateCreateInfoEXT:
+ return "PipelineRasterizationConservativeStateCreateInfoEXT";
+ case StructureType::ePhysicalDeviceDepthClipEnableFeaturesEXT: return "PhysicalDeviceDepthClipEnableFeaturesEXT";
+ case StructureType::ePipelineRasterizationDepthClipStateCreateInfoEXT:
+ return "PipelineRasterizationDepthClipStateCreateInfoEXT";
+ case StructureType::eHdrMetadataEXT: return "HdrMetadataEXT";
+ case StructureType::eSharedPresentSurfaceCapabilitiesKHR: return "SharedPresentSurfaceCapabilitiesKHR";
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ case StructureType::eImportFenceWin32HandleInfoKHR: return "ImportFenceWin32HandleInfoKHR";
+ case StructureType::eExportFenceWin32HandleInfoKHR: return "ExportFenceWin32HandleInfoKHR";
+ case StructureType::eFenceGetWin32HandleInfoKHR: return "FenceGetWin32HandleInfoKHR";
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+ case StructureType::eImportFenceFdInfoKHR: return "ImportFenceFdInfoKHR";
+ case StructureType::eFenceGetFdInfoKHR: return "FenceGetFdInfoKHR";
+ case StructureType::ePhysicalDevicePerformanceQueryFeaturesKHR:
+ return "PhysicalDevicePerformanceQueryFeaturesKHR";
+ case StructureType::ePhysicalDevicePerformanceQueryPropertiesKHR:
+ return "PhysicalDevicePerformanceQueryPropertiesKHR";
+ case StructureType::eQueryPoolPerformanceCreateInfoKHR: return "QueryPoolPerformanceCreateInfoKHR";
+ case StructureType::ePerformanceQuerySubmitInfoKHR: return "PerformanceQuerySubmitInfoKHR";
+ case StructureType::eAcquireProfilingLockInfoKHR: return "AcquireProfilingLockInfoKHR";
+ case StructureType::ePerformanceCounterKHR: return "PerformanceCounterKHR";
+ case StructureType::ePerformanceCounterDescriptionKHR: return "PerformanceCounterDescriptionKHR";
+ case StructureType::ePhysicalDeviceSurfaceInfo2KHR: return "PhysicalDeviceSurfaceInfo2KHR";
+ case StructureType::eSurfaceCapabilities2KHR: return "SurfaceCapabilities2KHR";
+ case StructureType::eSurfaceFormat2KHR: return "SurfaceFormat2KHR";
+ case StructureType::eDisplayProperties2KHR: return "DisplayProperties2KHR";
+ case StructureType::eDisplayPlaneProperties2KHR: return "DisplayPlaneProperties2KHR";
+ case StructureType::eDisplayModeProperties2KHR: return "DisplayModeProperties2KHR";
+ case StructureType::eDisplayPlaneInfo2KHR: return "DisplayPlaneInfo2KHR";
+ case StructureType::eDisplayPlaneCapabilities2KHR: return "DisplayPlaneCapabilities2KHR";
+#if defined( VK_USE_PLATFORM_IOS_MVK )
+ case StructureType::eIosSurfaceCreateInfoMVK: return "IosSurfaceCreateInfoMVK";
+#endif /*VK_USE_PLATFORM_IOS_MVK*/
+#if defined( VK_USE_PLATFORM_MACOS_MVK )
+ case StructureType::eMacosSurfaceCreateInfoMVK: return "MacosSurfaceCreateInfoMVK";
+#endif /*VK_USE_PLATFORM_MACOS_MVK*/
+ case StructureType::eDebugUtilsObjectNameInfoEXT: return "DebugUtilsObjectNameInfoEXT";
+ case StructureType::eDebugUtilsObjectTagInfoEXT: return "DebugUtilsObjectTagInfoEXT";
+ case StructureType::eDebugUtilsLabelEXT: return "DebugUtilsLabelEXT";
+ case StructureType::eDebugUtilsMessengerCallbackDataEXT: return "DebugUtilsMessengerCallbackDataEXT";
+ case StructureType::eDebugUtilsMessengerCreateInfoEXT: return "DebugUtilsMessengerCreateInfoEXT";
+#if defined( VK_USE_PLATFORM_ANDROID_KHR )
+ case StructureType::eAndroidHardwareBufferUsageANDROID: return "AndroidHardwareBufferUsageANDROID";
+ case StructureType::eAndroidHardwareBufferPropertiesANDROID: return "AndroidHardwareBufferPropertiesANDROID";
+ case StructureType::eAndroidHardwareBufferFormatPropertiesANDROID:
+ return "AndroidHardwareBufferFormatPropertiesANDROID";
+ case StructureType::eImportAndroidHardwareBufferInfoANDROID: return "ImportAndroidHardwareBufferInfoANDROID";
+ case StructureType::eMemoryGetAndroidHardwareBufferInfoANDROID:
+ return "MemoryGetAndroidHardwareBufferInfoANDROID";
+ case StructureType::eExternalFormatANDROID: return "ExternalFormatANDROID";
+#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
+ case StructureType::ePhysicalDeviceInlineUniformBlockFeaturesEXT:
+ return "PhysicalDeviceInlineUniformBlockFeaturesEXT";
+ case StructureType::ePhysicalDeviceInlineUniformBlockPropertiesEXT:
+ return "PhysicalDeviceInlineUniformBlockPropertiesEXT";
+ case StructureType::eWriteDescriptorSetInlineUniformBlockEXT: return "WriteDescriptorSetInlineUniformBlockEXT";
+ case StructureType::eDescriptorPoolInlineUniformBlockCreateInfoEXT:
+ return "DescriptorPoolInlineUniformBlockCreateInfoEXT";
+ case StructureType::eSampleLocationsInfoEXT: return "SampleLocationsInfoEXT";
+ case StructureType::eRenderPassSampleLocationsBeginInfoEXT: return "RenderPassSampleLocationsBeginInfoEXT";
+ case StructureType::ePipelineSampleLocationsStateCreateInfoEXT:
+ return "PipelineSampleLocationsStateCreateInfoEXT";
+ case StructureType::ePhysicalDeviceSampleLocationsPropertiesEXT:
+ return "PhysicalDeviceSampleLocationsPropertiesEXT";
+ case StructureType::eMultisamplePropertiesEXT: return "MultisamplePropertiesEXT";
+ case StructureType::ePhysicalDeviceBlendOperationAdvancedFeaturesEXT:
+ return "PhysicalDeviceBlendOperationAdvancedFeaturesEXT";
+ case StructureType::ePhysicalDeviceBlendOperationAdvancedPropertiesEXT:
+ return "PhysicalDeviceBlendOperationAdvancedPropertiesEXT";
+ case StructureType::ePipelineColorBlendAdvancedStateCreateInfoEXT:
+ return "PipelineColorBlendAdvancedStateCreateInfoEXT";
+ case StructureType::ePipelineCoverageToColorStateCreateInfoNV: return "PipelineCoverageToColorStateCreateInfoNV";
+ case StructureType::eWriteDescriptorSetAccelerationStructureKHR:
+ return "WriteDescriptorSetAccelerationStructureKHR";
+ case StructureType::eAccelerationStructureBuildGeometryInfoKHR:
+ return "AccelerationStructureBuildGeometryInfoKHR";
+ case StructureType::eAccelerationStructureDeviceAddressInfoKHR:
+ return "AccelerationStructureDeviceAddressInfoKHR";
+ case StructureType::eAccelerationStructureGeometryAabbsDataKHR:
+ return "AccelerationStructureGeometryAabbsDataKHR";
+ case StructureType::eAccelerationStructureGeometryInstancesDataKHR:
+ return "AccelerationStructureGeometryInstancesDataKHR";
+ case StructureType::eAccelerationStructureGeometryTrianglesDataKHR:
+ return "AccelerationStructureGeometryTrianglesDataKHR";
+ case StructureType::eAccelerationStructureGeometryKHR: return "AccelerationStructureGeometryKHR";
+ case StructureType::eAccelerationStructureVersionInfoKHR: return "AccelerationStructureVersionInfoKHR";
+ case StructureType::eCopyAccelerationStructureInfoKHR: return "CopyAccelerationStructureInfoKHR";
+ case StructureType::eCopyAccelerationStructureToMemoryInfoKHR: return "CopyAccelerationStructureToMemoryInfoKHR";
+ case StructureType::eCopyMemoryToAccelerationStructureInfoKHR: return "CopyMemoryToAccelerationStructureInfoKHR";
+ case StructureType::ePhysicalDeviceAccelerationStructureFeaturesKHR:
+ return "PhysicalDeviceAccelerationStructureFeaturesKHR";
+ case StructureType::ePhysicalDeviceAccelerationStructurePropertiesKHR:
+ return "PhysicalDeviceAccelerationStructurePropertiesKHR";
+ case StructureType::eAccelerationStructureCreateInfoKHR: return "AccelerationStructureCreateInfoKHR";
+ case StructureType::eAccelerationStructureBuildSizesInfoKHR: return "AccelerationStructureBuildSizesInfoKHR";
+ case StructureType::ePhysicalDeviceRayTracingPipelineFeaturesKHR:
+ return "PhysicalDeviceRayTracingPipelineFeaturesKHR";
+ case StructureType::ePhysicalDeviceRayTracingPipelinePropertiesKHR:
+ return "PhysicalDeviceRayTracingPipelinePropertiesKHR";
+ case StructureType::eRayTracingPipelineCreateInfoKHR: return "RayTracingPipelineCreateInfoKHR";
+ case StructureType::eRayTracingShaderGroupCreateInfoKHR: return "RayTracingShaderGroupCreateInfoKHR";
+ case StructureType::eRayTracingPipelineInterfaceCreateInfoKHR: return "RayTracingPipelineInterfaceCreateInfoKHR";
+ case StructureType::ePhysicalDeviceRayQueryFeaturesKHR: return "PhysicalDeviceRayQueryFeaturesKHR";
+ case StructureType::ePipelineCoverageModulationStateCreateInfoNV:
+ return "PipelineCoverageModulationStateCreateInfoNV";
+ case StructureType::ePhysicalDeviceShaderSmBuiltinsFeaturesNV: return "PhysicalDeviceShaderSmBuiltinsFeaturesNV";
+ case StructureType::ePhysicalDeviceShaderSmBuiltinsPropertiesNV:
+ return "PhysicalDeviceShaderSmBuiltinsPropertiesNV";
+ case StructureType::eDrmFormatModifierPropertiesListEXT: return "DrmFormatModifierPropertiesListEXT";
+ case StructureType::ePhysicalDeviceImageDrmFormatModifierInfoEXT:
+ return "PhysicalDeviceImageDrmFormatModifierInfoEXT";
+ case StructureType::eImageDrmFormatModifierListCreateInfoEXT: return "ImageDrmFormatModifierListCreateInfoEXT";
+ case StructureType::eImageDrmFormatModifierExplicitCreateInfoEXT:
+ return "ImageDrmFormatModifierExplicitCreateInfoEXT";
+ case StructureType::eImageDrmFormatModifierPropertiesEXT: return "ImageDrmFormatModifierPropertiesEXT";
+ case StructureType::eValidationCacheCreateInfoEXT: return "ValidationCacheCreateInfoEXT";
+ case StructureType::eShaderModuleValidationCacheCreateInfoEXT: return "ShaderModuleValidationCacheCreateInfoEXT";
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ case StructureType::ePhysicalDevicePortabilitySubsetFeaturesKHR:
+ return "PhysicalDevicePortabilitySubsetFeaturesKHR";
+ case StructureType::ePhysicalDevicePortabilitySubsetPropertiesKHR:
+ return "PhysicalDevicePortabilitySubsetPropertiesKHR";
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ case StructureType::ePipelineViewportShadingRateImageStateCreateInfoNV:
+ return "PipelineViewportShadingRateImageStateCreateInfoNV";
+ case StructureType::ePhysicalDeviceShadingRateImageFeaturesNV: return "PhysicalDeviceShadingRateImageFeaturesNV";
+ case StructureType::ePhysicalDeviceShadingRateImagePropertiesNV:
+ return "PhysicalDeviceShadingRateImagePropertiesNV";
+ case StructureType::ePipelineViewportCoarseSampleOrderStateCreateInfoNV:
+ return "PipelineViewportCoarseSampleOrderStateCreateInfoNV";
+ case StructureType::eRayTracingPipelineCreateInfoNV: return "RayTracingPipelineCreateInfoNV";
+ case StructureType::eAccelerationStructureCreateInfoNV: return "AccelerationStructureCreateInfoNV";
+ case StructureType::eGeometryNV: return "GeometryNV";
+ case StructureType::eGeometryTrianglesNV: return "GeometryTrianglesNV";
+ case StructureType::eGeometryAabbNV: return "GeometryAabbNV";
+ case StructureType::eBindAccelerationStructureMemoryInfoNV: return "BindAccelerationStructureMemoryInfoNV";
+ case StructureType::eWriteDescriptorSetAccelerationStructureNV:
+ return "WriteDescriptorSetAccelerationStructureNV";
+ case StructureType::eAccelerationStructureMemoryRequirementsInfoNV:
+ return "AccelerationStructureMemoryRequirementsInfoNV";
+ case StructureType::ePhysicalDeviceRayTracingPropertiesNV: return "PhysicalDeviceRayTracingPropertiesNV";
+ case StructureType::eRayTracingShaderGroupCreateInfoNV: return "RayTracingShaderGroupCreateInfoNV";
+ case StructureType::eAccelerationStructureInfoNV: return "AccelerationStructureInfoNV";
+ case StructureType::ePhysicalDeviceRepresentativeFragmentTestFeaturesNV:
+ return "PhysicalDeviceRepresentativeFragmentTestFeaturesNV";
+ case StructureType::ePipelineRepresentativeFragmentTestStateCreateInfoNV:
+ return "PipelineRepresentativeFragmentTestStateCreateInfoNV";
+ case StructureType::ePhysicalDeviceImageViewImageFormatInfoEXT:
+ return "PhysicalDeviceImageViewImageFormatInfoEXT";
+ case StructureType::eFilterCubicImageViewImageFormatPropertiesEXT:
+ return "FilterCubicImageViewImageFormatPropertiesEXT";
+ case StructureType::eDeviceQueueGlobalPriorityCreateInfoEXT: return "DeviceQueueGlobalPriorityCreateInfoEXT";
+ case StructureType::eImportMemoryHostPointerInfoEXT: return "ImportMemoryHostPointerInfoEXT";
+ case StructureType::eMemoryHostPointerPropertiesEXT: return "MemoryHostPointerPropertiesEXT";
+ case StructureType::ePhysicalDeviceExternalMemoryHostPropertiesEXT:
+ return "PhysicalDeviceExternalMemoryHostPropertiesEXT";
+ case StructureType::ePhysicalDeviceShaderClockFeaturesKHR: return "PhysicalDeviceShaderClockFeaturesKHR";
+ case StructureType::ePipelineCompilerControlCreateInfoAMD: return "PipelineCompilerControlCreateInfoAMD";
+ case StructureType::eCalibratedTimestampInfoEXT: return "CalibratedTimestampInfoEXT";
+ case StructureType::ePhysicalDeviceShaderCorePropertiesAMD: return "PhysicalDeviceShaderCorePropertiesAMD";
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ case StructureType::eVideoDecodeH265CapabilitiesEXT: return "VideoDecodeH265CapabilitiesEXT";
+ case StructureType::eVideoDecodeH265SessionCreateInfoEXT: return "VideoDecodeH265SessionCreateInfoEXT";
+ case StructureType::eVideoDecodeH265SessionParametersCreateInfoEXT:
+ return "VideoDecodeH265SessionParametersCreateInfoEXT";
+ case StructureType::eVideoDecodeH265SessionParametersAddInfoEXT:
+ return "VideoDecodeH265SessionParametersAddInfoEXT";
+ case StructureType::eVideoDecodeH265ProfileEXT: return "VideoDecodeH265ProfileEXT";
+ case StructureType::eVideoDecodeH265PictureInfoEXT: return "VideoDecodeH265PictureInfoEXT";
+ case StructureType::eVideoDecodeH265DpbSlotInfoEXT: return "VideoDecodeH265DpbSlotInfoEXT";
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ case StructureType::eDeviceMemoryOverallocationCreateInfoAMD: return "DeviceMemoryOverallocationCreateInfoAMD";
+ case StructureType::ePhysicalDeviceVertexAttributeDivisorPropertiesEXT:
+ return "PhysicalDeviceVertexAttributeDivisorPropertiesEXT";
+ case StructureType::ePipelineVertexInputDivisorStateCreateInfoEXT:
+ return "PipelineVertexInputDivisorStateCreateInfoEXT";
+ case StructureType::ePhysicalDeviceVertexAttributeDivisorFeaturesEXT:
+ return "PhysicalDeviceVertexAttributeDivisorFeaturesEXT";
+#if defined( VK_USE_PLATFORM_GGP )
+ case StructureType::ePresentFrameTokenGGP: return "PresentFrameTokenGGP";
+#endif /*VK_USE_PLATFORM_GGP*/
+ case StructureType::ePipelineCreationFeedbackCreateInfoEXT: return "PipelineCreationFeedbackCreateInfoEXT";
+ case StructureType::ePhysicalDeviceComputeShaderDerivativesFeaturesNV:
+ return "PhysicalDeviceComputeShaderDerivativesFeaturesNV";
+ case StructureType::ePhysicalDeviceMeshShaderFeaturesNV: return "PhysicalDeviceMeshShaderFeaturesNV";
+ case StructureType::ePhysicalDeviceMeshShaderPropertiesNV: return "PhysicalDeviceMeshShaderPropertiesNV";
+ case StructureType::ePhysicalDeviceFragmentShaderBarycentricFeaturesNV:
+ return "PhysicalDeviceFragmentShaderBarycentricFeaturesNV";
+ case StructureType::ePhysicalDeviceShaderImageFootprintFeaturesNV:
+ return "PhysicalDeviceShaderImageFootprintFeaturesNV";
+ case StructureType::ePipelineViewportExclusiveScissorStateCreateInfoNV:
+ return "PipelineViewportExclusiveScissorStateCreateInfoNV";
+ case StructureType::ePhysicalDeviceExclusiveScissorFeaturesNV: return "PhysicalDeviceExclusiveScissorFeaturesNV";
+ case StructureType::eCheckpointDataNV: return "CheckpointDataNV";
+ case StructureType::eQueueFamilyCheckpointPropertiesNV: return "QueueFamilyCheckpointPropertiesNV";
+ case StructureType::ePhysicalDeviceShaderIntegerFunctions2FeaturesINTEL:
+ return "PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL";
+ case StructureType::eQueryPoolPerformanceQueryCreateInfoINTEL: return "QueryPoolPerformanceQueryCreateInfoINTEL";
+ case StructureType::eInitializePerformanceApiInfoINTEL: return "InitializePerformanceApiInfoINTEL";
+ case StructureType::ePerformanceMarkerInfoINTEL: return "PerformanceMarkerInfoINTEL";
+ case StructureType::ePerformanceStreamMarkerInfoINTEL: return "PerformanceStreamMarkerInfoINTEL";
+ case StructureType::ePerformanceOverrideInfoINTEL: return "PerformanceOverrideInfoINTEL";
+ case StructureType::ePerformanceConfigurationAcquireInfoINTEL: return "PerformanceConfigurationAcquireInfoINTEL";
+ case StructureType::ePhysicalDevicePciBusInfoPropertiesEXT: return "PhysicalDevicePciBusInfoPropertiesEXT";
+ case StructureType::eDisplayNativeHdrSurfaceCapabilitiesAMD: return "DisplayNativeHdrSurfaceCapabilitiesAMD";
+ case StructureType::eSwapchainDisplayNativeHdrCreateInfoAMD: return "SwapchainDisplayNativeHdrCreateInfoAMD";
+#if defined( VK_USE_PLATFORM_FUCHSIA )
+ case StructureType::eImagepipeSurfaceCreateInfoFUCHSIA: return "ImagepipeSurfaceCreateInfoFUCHSIA";
+#endif /*VK_USE_PLATFORM_FUCHSIA*/
+ case StructureType::ePhysicalDeviceShaderTerminateInvocationFeaturesKHR:
+ return "PhysicalDeviceShaderTerminateInvocationFeaturesKHR";
+#if defined( VK_USE_PLATFORM_METAL_EXT )
+ case StructureType::eMetalSurfaceCreateInfoEXT: return "MetalSurfaceCreateInfoEXT";
+#endif /*VK_USE_PLATFORM_METAL_EXT*/
+ case StructureType::ePhysicalDeviceFragmentDensityMapFeaturesEXT:
+ return "PhysicalDeviceFragmentDensityMapFeaturesEXT";
+ case StructureType::ePhysicalDeviceFragmentDensityMapPropertiesEXT:
+ return "PhysicalDeviceFragmentDensityMapPropertiesEXT";
+ case StructureType::eRenderPassFragmentDensityMapCreateInfoEXT:
+ return "RenderPassFragmentDensityMapCreateInfoEXT";
+ case StructureType::ePhysicalDeviceSubgroupSizeControlPropertiesEXT:
+ return "PhysicalDeviceSubgroupSizeControlPropertiesEXT";
+ case StructureType::ePipelineShaderStageRequiredSubgroupSizeCreateInfoEXT:
+ return "PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT";
+ case StructureType::ePhysicalDeviceSubgroupSizeControlFeaturesEXT:
+ return "PhysicalDeviceSubgroupSizeControlFeaturesEXT";
+ case StructureType::eFragmentShadingRateAttachmentInfoKHR: return "FragmentShadingRateAttachmentInfoKHR";
+ case StructureType::ePipelineFragmentShadingRateStateCreateInfoKHR:
+ return "PipelineFragmentShadingRateStateCreateInfoKHR";
+ case StructureType::ePhysicalDeviceFragmentShadingRatePropertiesKHR:
+ return "PhysicalDeviceFragmentShadingRatePropertiesKHR";
+ case StructureType::ePhysicalDeviceFragmentShadingRateFeaturesKHR:
+ return "PhysicalDeviceFragmentShadingRateFeaturesKHR";
+ case StructureType::ePhysicalDeviceFragmentShadingRateKHR: return "PhysicalDeviceFragmentShadingRateKHR";
+ case StructureType::ePhysicalDeviceShaderCoreProperties2AMD: return "PhysicalDeviceShaderCoreProperties2AMD";
+ case StructureType::ePhysicalDeviceCoherentMemoryFeaturesAMD: return "PhysicalDeviceCoherentMemoryFeaturesAMD";
+ case StructureType::ePhysicalDeviceShaderImageAtomicInt64FeaturesEXT:
+ return "PhysicalDeviceShaderImageAtomicInt64FeaturesEXT";
+ case StructureType::ePhysicalDeviceMemoryBudgetPropertiesEXT: return "PhysicalDeviceMemoryBudgetPropertiesEXT";
+ case StructureType::ePhysicalDeviceMemoryPriorityFeaturesEXT: return "PhysicalDeviceMemoryPriorityFeaturesEXT";
+ case StructureType::eMemoryPriorityAllocateInfoEXT: return "MemoryPriorityAllocateInfoEXT";
+ case StructureType::eSurfaceProtectedCapabilitiesKHR: return "SurfaceProtectedCapabilitiesKHR";
+ case StructureType::ePhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV:
+ return "PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV";
+ case StructureType::ePhysicalDeviceBufferDeviceAddressFeaturesEXT:
+ return "PhysicalDeviceBufferDeviceAddressFeaturesEXT";
+ case StructureType::eBufferDeviceAddressCreateInfoEXT: return "BufferDeviceAddressCreateInfoEXT";
+ case StructureType::ePhysicalDeviceToolPropertiesEXT: return "PhysicalDeviceToolPropertiesEXT";
+ case StructureType::eValidationFeaturesEXT: return "ValidationFeaturesEXT";
+ case StructureType::ePhysicalDeviceCooperativeMatrixFeaturesNV:
+ return "PhysicalDeviceCooperativeMatrixFeaturesNV";
+ case StructureType::eCooperativeMatrixPropertiesNV: return "CooperativeMatrixPropertiesNV";
+ case StructureType::ePhysicalDeviceCooperativeMatrixPropertiesNV:
+ return "PhysicalDeviceCooperativeMatrixPropertiesNV";
+ case StructureType::ePhysicalDeviceCoverageReductionModeFeaturesNV:
+ return "PhysicalDeviceCoverageReductionModeFeaturesNV";
+ case StructureType::ePipelineCoverageReductionStateCreateInfoNV:
+ return "PipelineCoverageReductionStateCreateInfoNV";
+ case StructureType::eFramebufferMixedSamplesCombinationNV: return "FramebufferMixedSamplesCombinationNV";
+ case StructureType::ePhysicalDeviceFragmentShaderInterlockFeaturesEXT:
+ return "PhysicalDeviceFragmentShaderInterlockFeaturesEXT";
+ case StructureType::ePhysicalDeviceYcbcrImageArraysFeaturesEXT:
+ return "PhysicalDeviceYcbcrImageArraysFeaturesEXT";
+ case StructureType::ePhysicalDeviceProvokingVertexFeaturesEXT: return "PhysicalDeviceProvokingVertexFeaturesEXT";
+ case StructureType::ePipelineRasterizationProvokingVertexStateCreateInfoEXT:
+ return "PipelineRasterizationProvokingVertexStateCreateInfoEXT";
+ case StructureType::ePhysicalDeviceProvokingVertexPropertiesEXT:
+ return "PhysicalDeviceProvokingVertexPropertiesEXT";
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ case StructureType::eSurfaceFullScreenExclusiveInfoEXT: return "SurfaceFullScreenExclusiveInfoEXT";
+ case StructureType::eSurfaceCapabilitiesFullScreenExclusiveEXT:
+ return "SurfaceCapabilitiesFullScreenExclusiveEXT";
+ case StructureType::eSurfaceFullScreenExclusiveWin32InfoEXT: return "SurfaceFullScreenExclusiveWin32InfoEXT";
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+ case StructureType::eHeadlessSurfaceCreateInfoEXT: return "HeadlessSurfaceCreateInfoEXT";
+ case StructureType::ePhysicalDeviceLineRasterizationFeaturesEXT:
+ return "PhysicalDeviceLineRasterizationFeaturesEXT";
+ case StructureType::ePipelineRasterizationLineStateCreateInfoEXT:
+ return "PipelineRasterizationLineStateCreateInfoEXT";
+ case StructureType::ePhysicalDeviceLineRasterizationPropertiesEXT:
+ return "PhysicalDeviceLineRasterizationPropertiesEXT";
+ case StructureType::ePhysicalDeviceShaderAtomicFloatFeaturesEXT:
+ return "PhysicalDeviceShaderAtomicFloatFeaturesEXT";
+ case StructureType::ePhysicalDeviceIndexTypeUint8FeaturesEXT: return "PhysicalDeviceIndexTypeUint8FeaturesEXT";
+ case StructureType::ePhysicalDeviceExtendedDynamicStateFeaturesEXT:
+ return "PhysicalDeviceExtendedDynamicStateFeaturesEXT";
+ case StructureType::ePhysicalDevicePipelineExecutablePropertiesFeaturesKHR:
+ return "PhysicalDevicePipelineExecutablePropertiesFeaturesKHR";
+ case StructureType::ePipelineInfoKHR: return "PipelineInfoKHR";
+ case StructureType::ePipelineExecutablePropertiesKHR: return "PipelineExecutablePropertiesKHR";
+ case StructureType::ePipelineExecutableInfoKHR: return "PipelineExecutableInfoKHR";
+ case StructureType::ePipelineExecutableStatisticKHR: return "PipelineExecutableStatisticKHR";
+ case StructureType::ePipelineExecutableInternalRepresentationKHR:
+ return "PipelineExecutableInternalRepresentationKHR";
+ case StructureType::ePhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT:
+ return "PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT";
+ case StructureType::ePhysicalDeviceDeviceGeneratedCommandsPropertiesNV:
+ return "PhysicalDeviceDeviceGeneratedCommandsPropertiesNV";
+ case StructureType::eGraphicsShaderGroupCreateInfoNV: return "GraphicsShaderGroupCreateInfoNV";
+ case StructureType::eGraphicsPipelineShaderGroupsCreateInfoNV: return "GraphicsPipelineShaderGroupsCreateInfoNV";
+ case StructureType::eIndirectCommandsLayoutTokenNV: return "IndirectCommandsLayoutTokenNV";
+ case StructureType::eIndirectCommandsLayoutCreateInfoNV: return "IndirectCommandsLayoutCreateInfoNV";
+ case StructureType::eGeneratedCommandsInfoNV: return "GeneratedCommandsInfoNV";
+ case StructureType::eGeneratedCommandsMemoryRequirementsInfoNV:
+ return "GeneratedCommandsMemoryRequirementsInfoNV";
+ case StructureType::ePhysicalDeviceDeviceGeneratedCommandsFeaturesNV:
+ return "PhysicalDeviceDeviceGeneratedCommandsFeaturesNV";
+ case StructureType::ePhysicalDeviceInheritedViewportScissorFeaturesNV:
+ return "PhysicalDeviceInheritedViewportScissorFeaturesNV";
+ case StructureType::eCommandBufferInheritanceViewportScissorInfoNV:
+ return "CommandBufferInheritanceViewportScissorInfoNV";
+ case StructureType::ePhysicalDeviceTexelBufferAlignmentFeaturesEXT:
+ return "PhysicalDeviceTexelBufferAlignmentFeaturesEXT";
+ case StructureType::ePhysicalDeviceTexelBufferAlignmentPropertiesEXT:
+ return "PhysicalDeviceTexelBufferAlignmentPropertiesEXT";
+ case StructureType::eCommandBufferInheritanceRenderPassTransformInfoQCOM:
+ return "CommandBufferInheritanceRenderPassTransformInfoQCOM";
+ case StructureType::eRenderPassTransformBeginInfoQCOM: return "RenderPassTransformBeginInfoQCOM";
+ case StructureType::ePhysicalDeviceDeviceMemoryReportFeaturesEXT:
+ return "PhysicalDeviceDeviceMemoryReportFeaturesEXT";
+ case StructureType::eDeviceDeviceMemoryReportCreateInfoEXT: return "DeviceDeviceMemoryReportCreateInfoEXT";
+ case StructureType::eDeviceMemoryReportCallbackDataEXT: return "DeviceMemoryReportCallbackDataEXT";
+ case StructureType::ePhysicalDeviceRobustness2FeaturesEXT: return "PhysicalDeviceRobustness2FeaturesEXT";
+ case StructureType::ePhysicalDeviceRobustness2PropertiesEXT: return "PhysicalDeviceRobustness2PropertiesEXT";
+ case StructureType::eSamplerCustomBorderColorCreateInfoEXT: return "SamplerCustomBorderColorCreateInfoEXT";
+ case StructureType::ePhysicalDeviceCustomBorderColorPropertiesEXT:
+ return "PhysicalDeviceCustomBorderColorPropertiesEXT";
+ case StructureType::ePhysicalDeviceCustomBorderColorFeaturesEXT:
+ return "PhysicalDeviceCustomBorderColorFeaturesEXT";
+ case StructureType::ePipelineLibraryCreateInfoKHR: return "PipelineLibraryCreateInfoKHR";
+ case StructureType::ePhysicalDevicePrivateDataFeaturesEXT: return "PhysicalDevicePrivateDataFeaturesEXT";
+ case StructureType::eDevicePrivateDataCreateInfoEXT: return "DevicePrivateDataCreateInfoEXT";
+ case StructureType::ePrivateDataSlotCreateInfoEXT: return "PrivateDataSlotCreateInfoEXT";
+ case StructureType::ePhysicalDevicePipelineCreationCacheControlFeaturesEXT:
+ return "PhysicalDevicePipelineCreationCacheControlFeaturesEXT";
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ case StructureType::eVideoEncodeInfoKHR: return "VideoEncodeInfoKHR";
+ case StructureType::eVideoEncodeRateControlInfoKHR: return "VideoEncodeRateControlInfoKHR";
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ case StructureType::ePhysicalDeviceDiagnosticsConfigFeaturesNV:
+ return "PhysicalDeviceDiagnosticsConfigFeaturesNV";
+ case StructureType::eDeviceDiagnosticsConfigCreateInfoNV: return "DeviceDiagnosticsConfigCreateInfoNV";
+ case StructureType::eMemoryBarrier2KHR: return "MemoryBarrier2KHR";
+ case StructureType::eBufferMemoryBarrier2KHR: return "BufferMemoryBarrier2KHR";
+ case StructureType::eImageMemoryBarrier2KHR: return "ImageMemoryBarrier2KHR";
+ case StructureType::eDependencyInfoKHR: return "DependencyInfoKHR";
+ case StructureType::eSubmitInfo2KHR: return "SubmitInfo2KHR";
+ case StructureType::eSemaphoreSubmitInfoKHR: return "SemaphoreSubmitInfoKHR";
+ case StructureType::eCommandBufferSubmitInfoKHR: return "CommandBufferSubmitInfoKHR";
+ case StructureType::ePhysicalDeviceSynchronization2FeaturesKHR:
+ return "PhysicalDeviceSynchronization2FeaturesKHR";
+ case StructureType::eQueueFamilyCheckpointProperties2NV: return "QueueFamilyCheckpointProperties2NV";
+ case StructureType::eCheckpointData2NV: return "CheckpointData2NV";
+ case StructureType::ePhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR:
+ return "PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR";
+ case StructureType::ePhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR:
+ return "PhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR";
+ case StructureType::ePhysicalDeviceFragmentShadingRateEnumsPropertiesNV:
+ return "PhysicalDeviceFragmentShadingRateEnumsPropertiesNV";
+ case StructureType::ePhysicalDeviceFragmentShadingRateEnumsFeaturesNV:
+ return "PhysicalDeviceFragmentShadingRateEnumsFeaturesNV";
+ case StructureType::ePipelineFragmentShadingRateEnumStateCreateInfoNV:
+ return "PipelineFragmentShadingRateEnumStateCreateInfoNV";
+ case StructureType::eAccelerationStructureGeometryMotionTrianglesDataNV:
+ return "AccelerationStructureGeometryMotionTrianglesDataNV";
+ case StructureType::ePhysicalDeviceRayTracingMotionBlurFeaturesNV:
+ return "PhysicalDeviceRayTracingMotionBlurFeaturesNV";
+ case StructureType::eAccelerationStructureMotionInfoNV: return "AccelerationStructureMotionInfoNV";
+ case StructureType::ePhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT:
+ return "PhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT";
+ case StructureType::ePhysicalDeviceFragmentDensityMap2FeaturesEXT:
+ return "PhysicalDeviceFragmentDensityMap2FeaturesEXT";
+ case StructureType::ePhysicalDeviceFragmentDensityMap2PropertiesEXT:
+ return "PhysicalDeviceFragmentDensityMap2PropertiesEXT";
+ case StructureType::eCopyCommandTransformInfoQCOM: return "CopyCommandTransformInfoQCOM";
+ case StructureType::ePhysicalDeviceImageRobustnessFeaturesEXT: return "PhysicalDeviceImageRobustnessFeaturesEXT";
+ case StructureType::ePhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR:
+ return "PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR";
+ case StructureType::eCopyBufferInfo2KHR: return "CopyBufferInfo2KHR";
+ case StructureType::eCopyImageInfo2KHR: return "CopyImageInfo2KHR";
+ case StructureType::eCopyBufferToImageInfo2KHR: return "CopyBufferToImageInfo2KHR";
+ case StructureType::eCopyImageToBufferInfo2KHR: return "CopyImageToBufferInfo2KHR";
+ case StructureType::eBlitImageInfo2KHR: return "BlitImageInfo2KHR";
+ case StructureType::eResolveImageInfo2KHR: return "ResolveImageInfo2KHR";
+ case StructureType::eBufferCopy2KHR: return "BufferCopy2KHR";
+ case StructureType::eImageCopy2KHR: return "ImageCopy2KHR";
+ case StructureType::eImageBlit2KHR: return "ImageBlit2KHR";
+ case StructureType::eBufferImageCopy2KHR: return "BufferImageCopy2KHR";
+ case StructureType::eImageResolve2KHR: return "ImageResolve2KHR";
+ case StructureType::ePhysicalDevice4444FormatsFeaturesEXT: return "PhysicalDevice4444FormatsFeaturesEXT";
+#if defined( VK_USE_PLATFORM_DIRECTFB_EXT )
+ case StructureType::eDirectfbSurfaceCreateInfoEXT: return "DirectfbSurfaceCreateInfoEXT";
+#endif /*VK_USE_PLATFORM_DIRECTFB_EXT*/
+ case StructureType::ePhysicalDeviceMutableDescriptorTypeFeaturesVALVE:
+ return "PhysicalDeviceMutableDescriptorTypeFeaturesVALVE";
+ case StructureType::eMutableDescriptorTypeCreateInfoVALVE: return "MutableDescriptorTypeCreateInfoVALVE";
+ case StructureType::ePhysicalDeviceVertexInputDynamicStateFeaturesEXT:
+ return "PhysicalDeviceVertexInputDynamicStateFeaturesEXT";
+ case StructureType::eVertexInputBindingDescription2EXT: return "VertexInputBindingDescription2EXT";
+ case StructureType::eVertexInputAttributeDescription2EXT: return "VertexInputAttributeDescription2EXT";
+ case StructureType::ePhysicalDeviceDrmPropertiesEXT: return "PhysicalDeviceDrmPropertiesEXT";
+#if defined( VK_USE_PLATFORM_FUCHSIA )
+ case StructureType::eImportMemoryZirconHandleInfoFUCHSIA: return "ImportMemoryZirconHandleInfoFUCHSIA";
+ case StructureType::eMemoryZirconHandlePropertiesFUCHSIA: return "MemoryZirconHandlePropertiesFUCHSIA";
+ case StructureType::eMemoryGetZirconHandleInfoFUCHSIA: return "MemoryGetZirconHandleInfoFUCHSIA";
+ case StructureType::eImportSemaphoreZirconHandleInfoFUCHSIA: return "ImportSemaphoreZirconHandleInfoFUCHSIA";
+ case StructureType::eSemaphoreGetZirconHandleInfoFUCHSIA: return "SemaphoreGetZirconHandleInfoFUCHSIA";
+#endif /*VK_USE_PLATFORM_FUCHSIA*/
+ case StructureType::eSubpasssShadingPipelineCreateInfoHUAWEI: return "SubpasssShadingPipelineCreateInfoHUAWEI";
+ case StructureType::ePhysicalDeviceSubpassShadingFeaturesHUAWEI:
+ return "PhysicalDeviceSubpassShadingFeaturesHUAWEI";
+ case StructureType::ePhysicalDeviceSubpassShadingPropertiesHUAWEI:
+ return "PhysicalDeviceSubpassShadingPropertiesHUAWEI";
+ case StructureType::ePhysicalDeviceExtendedDynamicState2FeaturesEXT:
+ return "PhysicalDeviceExtendedDynamicState2FeaturesEXT";
+#if defined( VK_USE_PLATFORM_SCREEN_QNX )
+ case StructureType::eScreenSurfaceCreateInfoQNX: return "ScreenSurfaceCreateInfoQNX";
+#endif /*VK_USE_PLATFORM_SCREEN_QNX*/
+ case StructureType::ePhysicalDeviceColorWriteEnableFeaturesEXT:
+ return "PhysicalDeviceColorWriteEnableFeaturesEXT";
+ case StructureType::ePipelineColorWriteCreateInfoEXT: return "PipelineColorWriteCreateInfoEXT";
+ case StructureType::ePhysicalDeviceGlobalPriorityQueryFeaturesEXT:
+ return "PhysicalDeviceGlobalPriorityQueryFeaturesEXT";
+ case StructureType::eQueueFamilyGlobalPriorityPropertiesEXT: return "QueueFamilyGlobalPriorityPropertiesEXT";
+ case StructureType::ePhysicalDeviceMultiDrawFeaturesEXT: return "PhysicalDeviceMultiDrawFeaturesEXT";
+ case StructureType::ePhysicalDeviceMultiDrawPropertiesEXT: return "PhysicalDeviceMultiDrawPropertiesEXT";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class ObjectType
+ {
+ eUnknown = VK_OBJECT_TYPE_UNKNOWN,
+ eInstance = VK_OBJECT_TYPE_INSTANCE,
+ ePhysicalDevice = VK_OBJECT_TYPE_PHYSICAL_DEVICE,
+ eDevice = VK_OBJECT_TYPE_DEVICE,
+ eQueue = VK_OBJECT_TYPE_QUEUE,
+ eSemaphore = VK_OBJECT_TYPE_SEMAPHORE,
+ eCommandBuffer = VK_OBJECT_TYPE_COMMAND_BUFFER,
+ eFence = VK_OBJECT_TYPE_FENCE,
+ eDeviceMemory = VK_OBJECT_TYPE_DEVICE_MEMORY,
+ eBuffer = VK_OBJECT_TYPE_BUFFER,
+ eImage = VK_OBJECT_TYPE_IMAGE,
+ eEvent = VK_OBJECT_TYPE_EVENT,
+ eQueryPool = VK_OBJECT_TYPE_QUERY_POOL,
+ eBufferView = VK_OBJECT_TYPE_BUFFER_VIEW,
+ eImageView = VK_OBJECT_TYPE_IMAGE_VIEW,
+ eShaderModule = VK_OBJECT_TYPE_SHADER_MODULE,
+ ePipelineCache = VK_OBJECT_TYPE_PIPELINE_CACHE,
+ ePipelineLayout = VK_OBJECT_TYPE_PIPELINE_LAYOUT,
+ eRenderPass = VK_OBJECT_TYPE_RENDER_PASS,
+ ePipeline = VK_OBJECT_TYPE_PIPELINE,
+ eDescriptorSetLayout = VK_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT,
+ eSampler = VK_OBJECT_TYPE_SAMPLER,
+ eDescriptorPool = VK_OBJECT_TYPE_DESCRIPTOR_POOL,
+ eDescriptorSet = VK_OBJECT_TYPE_DESCRIPTOR_SET,
+ eFramebuffer = VK_OBJECT_TYPE_FRAMEBUFFER,
+ eCommandPool = VK_OBJECT_TYPE_COMMAND_POOL,
+ eSamplerYcbcrConversion = VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION,
+ eDescriptorUpdateTemplate = VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE,
+ eSurfaceKHR = VK_OBJECT_TYPE_SURFACE_KHR,
+ eSwapchainKHR = VK_OBJECT_TYPE_SWAPCHAIN_KHR,
+ eDisplayKHR = VK_OBJECT_TYPE_DISPLAY_KHR,
+ eDisplayModeKHR = VK_OBJECT_TYPE_DISPLAY_MODE_KHR,
+ eDebugReportCallbackEXT = VK_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT,
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ eVideoSessionKHR = VK_OBJECT_TYPE_VIDEO_SESSION_KHR,
+ eVideoSessionParametersKHR = VK_OBJECT_TYPE_VIDEO_SESSION_PARAMETERS_KHR,
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ eCuModuleNVX = VK_OBJECT_TYPE_CU_MODULE_NVX,
+ eCuFunctionNVX = VK_OBJECT_TYPE_CU_FUNCTION_NVX,
+ eDebugUtilsMessengerEXT = VK_OBJECT_TYPE_DEBUG_UTILS_MESSENGER_EXT,
+ eAccelerationStructureKHR = VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR,
+ eValidationCacheEXT = VK_OBJECT_TYPE_VALIDATION_CACHE_EXT,
+ eAccelerationStructureNV = VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV,
+ ePerformanceConfigurationINTEL = VK_OBJECT_TYPE_PERFORMANCE_CONFIGURATION_INTEL,
+ eDeferredOperationKHR = VK_OBJECT_TYPE_DEFERRED_OPERATION_KHR,
+ eIndirectCommandsLayoutNV = VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NV,
+ ePrivateDataSlotEXT = VK_OBJECT_TYPE_PRIVATE_DATA_SLOT_EXT,
+ eDescriptorUpdateTemplateKHR = VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR,
+ eSamplerYcbcrConversionKHR = VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_KHR
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( ObjectType value )
+ {
+ switch ( value )
+ {
+ case ObjectType::eUnknown: return "Unknown";
+ case ObjectType::eInstance: return "Instance";
+ case ObjectType::ePhysicalDevice: return "PhysicalDevice";
+ case ObjectType::eDevice: return "Device";
+ case ObjectType::eQueue: return "Queue";
+ case ObjectType::eSemaphore: return "Semaphore";
+ case ObjectType::eCommandBuffer: return "CommandBuffer";
+ case ObjectType::eFence: return "Fence";
+ case ObjectType::eDeviceMemory: return "DeviceMemory";
+ case ObjectType::eBuffer: return "Buffer";
+ case ObjectType::eImage: return "Image";
+ case ObjectType::eEvent: return "Event";
+ case ObjectType::eQueryPool: return "QueryPool";
+ case ObjectType::eBufferView: return "BufferView";
+ case ObjectType::eImageView: return "ImageView";
+ case ObjectType::eShaderModule: return "ShaderModule";
+ case ObjectType::ePipelineCache: return "PipelineCache";
+ case ObjectType::ePipelineLayout: return "PipelineLayout";
+ case ObjectType::eRenderPass: return "RenderPass";
+ case ObjectType::ePipeline: return "Pipeline";
+ case ObjectType::eDescriptorSetLayout: return "DescriptorSetLayout";
+ case ObjectType::eSampler: return "Sampler";
+ case ObjectType::eDescriptorPool: return "DescriptorPool";
+ case ObjectType::eDescriptorSet: return "DescriptorSet";
+ case ObjectType::eFramebuffer: return "Framebuffer";
+ case ObjectType::eCommandPool: return "CommandPool";
+ case ObjectType::eSamplerYcbcrConversion: return "SamplerYcbcrConversion";
+ case ObjectType::eDescriptorUpdateTemplate: return "DescriptorUpdateTemplate";
+ case ObjectType::eSurfaceKHR: return "SurfaceKHR";
+ case ObjectType::eSwapchainKHR: return "SwapchainKHR";
+ case ObjectType::eDisplayKHR: return "DisplayKHR";
+ case ObjectType::eDisplayModeKHR: return "DisplayModeKHR";
+ case ObjectType::eDebugReportCallbackEXT: return "DebugReportCallbackEXT";
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ case ObjectType::eVideoSessionKHR: return "VideoSessionKHR";
+ case ObjectType::eVideoSessionParametersKHR: return "VideoSessionParametersKHR";
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ case ObjectType::eCuModuleNVX: return "CuModuleNVX";
+ case ObjectType::eCuFunctionNVX: return "CuFunctionNVX";
+ case ObjectType::eDebugUtilsMessengerEXT: return "DebugUtilsMessengerEXT";
+ case ObjectType::eAccelerationStructureKHR: return "AccelerationStructureKHR";
+ case ObjectType::eValidationCacheEXT: return "ValidationCacheEXT";
+ case ObjectType::eAccelerationStructureNV: return "AccelerationStructureNV";
+ case ObjectType::ePerformanceConfigurationINTEL: return "PerformanceConfigurationINTEL";
+ case ObjectType::eDeferredOperationKHR: return "DeferredOperationKHR";
+ case ObjectType::eIndirectCommandsLayoutNV: return "IndirectCommandsLayoutNV";
+ case ObjectType::ePrivateDataSlotEXT: return "PrivateDataSlotEXT";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class VendorId
+ {
+ eVIV = VK_VENDOR_ID_VIV,
+ eVSI = VK_VENDOR_ID_VSI,
+ eKazan = VK_VENDOR_ID_KAZAN,
+ eCodeplay = VK_VENDOR_ID_CODEPLAY,
+ eMESA = VK_VENDOR_ID_MESA,
+ ePocl = VK_VENDOR_ID_POCL
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( VendorId value )
+ {
+ switch ( value )
+ {
+ case VendorId::eVIV: return "VIV";
+ case VendorId::eVSI: return "VSI";
+ case VendorId::eKazan: return "Kazan";
+ case VendorId::eCodeplay: return "Codeplay";
+ case VendorId::eMESA: return "MESA";
+ case VendorId::ePocl: return "Pocl";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class PipelineCacheHeaderVersion
+ {
+ eOne = VK_PIPELINE_CACHE_HEADER_VERSION_ONE
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( PipelineCacheHeaderVersion value )
+ {
+ switch ( value )
+ {
+ case PipelineCacheHeaderVersion::eOne: return "One";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class Format
+ {
+ eUndefined = VK_FORMAT_UNDEFINED,
+ eR4G4UnormPack8 = VK_FORMAT_R4G4_UNORM_PACK8,
+ eR4G4B4A4UnormPack16 = VK_FORMAT_R4G4B4A4_UNORM_PACK16,
+ eB4G4R4A4UnormPack16 = VK_FORMAT_B4G4R4A4_UNORM_PACK16,
+ eR5G6B5UnormPack16 = VK_FORMAT_R5G6B5_UNORM_PACK16,
+ eB5G6R5UnormPack16 = VK_FORMAT_B5G6R5_UNORM_PACK16,
+ eR5G5B5A1UnormPack16 = VK_FORMAT_R5G5B5A1_UNORM_PACK16,
+ eB5G5R5A1UnormPack16 = VK_FORMAT_B5G5R5A1_UNORM_PACK16,
+ eA1R5G5B5UnormPack16 = VK_FORMAT_A1R5G5B5_UNORM_PACK16,
+ eR8Unorm = VK_FORMAT_R8_UNORM,
+ eR8Snorm = VK_FORMAT_R8_SNORM,
+ eR8Uscaled = VK_FORMAT_R8_USCALED,
+ eR8Sscaled = VK_FORMAT_R8_SSCALED,
+ eR8Uint = VK_FORMAT_R8_UINT,
+ eR8Sint = VK_FORMAT_R8_SINT,
+ eR8Srgb = VK_FORMAT_R8_SRGB,
+ eR8G8Unorm = VK_FORMAT_R8G8_UNORM,
+ eR8G8Snorm = VK_FORMAT_R8G8_SNORM,
+ eR8G8Uscaled = VK_FORMAT_R8G8_USCALED,
+ eR8G8Sscaled = VK_FORMAT_R8G8_SSCALED,
+ eR8G8Uint = VK_FORMAT_R8G8_UINT,
+ eR8G8Sint = VK_FORMAT_R8G8_SINT,
+ eR8G8Srgb = VK_FORMAT_R8G8_SRGB,
+ eR8G8B8Unorm = VK_FORMAT_R8G8B8_UNORM,
+ eR8G8B8Snorm = VK_FORMAT_R8G8B8_SNORM,
+ eR8G8B8Uscaled = VK_FORMAT_R8G8B8_USCALED,
+ eR8G8B8Sscaled = VK_FORMAT_R8G8B8_SSCALED,
+ eR8G8B8Uint = VK_FORMAT_R8G8B8_UINT,
+ eR8G8B8Sint = VK_FORMAT_R8G8B8_SINT,
+ eR8G8B8Srgb = VK_FORMAT_R8G8B8_SRGB,
+ eB8G8R8Unorm = VK_FORMAT_B8G8R8_UNORM,
+ eB8G8R8Snorm = VK_FORMAT_B8G8R8_SNORM,
+ eB8G8R8Uscaled = VK_FORMAT_B8G8R8_USCALED,
+ eB8G8R8Sscaled = VK_FORMAT_B8G8R8_SSCALED,
+ eB8G8R8Uint = VK_FORMAT_B8G8R8_UINT,
+ eB8G8R8Sint = VK_FORMAT_B8G8R8_SINT,
+ eB8G8R8Srgb = VK_FORMAT_B8G8R8_SRGB,
+ eR8G8B8A8Unorm = VK_FORMAT_R8G8B8A8_UNORM,
+ eR8G8B8A8Snorm = VK_FORMAT_R8G8B8A8_SNORM,
+ eR8G8B8A8Uscaled = VK_FORMAT_R8G8B8A8_USCALED,
+ eR8G8B8A8Sscaled = VK_FORMAT_R8G8B8A8_SSCALED,
+ eR8G8B8A8Uint = VK_FORMAT_R8G8B8A8_UINT,
+ eR8G8B8A8Sint = VK_FORMAT_R8G8B8A8_SINT,
+ eR8G8B8A8Srgb = VK_FORMAT_R8G8B8A8_SRGB,
+ eB8G8R8A8Unorm = VK_FORMAT_B8G8R8A8_UNORM,
+ eB8G8R8A8Snorm = VK_FORMAT_B8G8R8A8_SNORM,
+ eB8G8R8A8Uscaled = VK_FORMAT_B8G8R8A8_USCALED,
+ eB8G8R8A8Sscaled = VK_FORMAT_B8G8R8A8_SSCALED,
+ eB8G8R8A8Uint = VK_FORMAT_B8G8R8A8_UINT,
+ eB8G8R8A8Sint = VK_FORMAT_B8G8R8A8_SINT,
+ eB8G8R8A8Srgb = VK_FORMAT_B8G8R8A8_SRGB,
+ eA8B8G8R8UnormPack32 = VK_FORMAT_A8B8G8R8_UNORM_PACK32,
+ eA8B8G8R8SnormPack32 = VK_FORMAT_A8B8G8R8_SNORM_PACK32,
+ eA8B8G8R8UscaledPack32 = VK_FORMAT_A8B8G8R8_USCALED_PACK32,
+ eA8B8G8R8SscaledPack32 = VK_FORMAT_A8B8G8R8_SSCALED_PACK32,
+ eA8B8G8R8UintPack32 = VK_FORMAT_A8B8G8R8_UINT_PACK32,
+ eA8B8G8R8SintPack32 = VK_FORMAT_A8B8G8R8_SINT_PACK32,
+ eA8B8G8R8SrgbPack32 = VK_FORMAT_A8B8G8R8_SRGB_PACK32,
+ eA2R10G10B10UnormPack32 = VK_FORMAT_A2R10G10B10_UNORM_PACK32,
+ eA2R10G10B10SnormPack32 = VK_FORMAT_A2R10G10B10_SNORM_PACK32,
+ eA2R10G10B10UscaledPack32 = VK_FORMAT_A2R10G10B10_USCALED_PACK32,
+ eA2R10G10B10SscaledPack32 = VK_FORMAT_A2R10G10B10_SSCALED_PACK32,
+ eA2R10G10B10UintPack32 = VK_FORMAT_A2R10G10B10_UINT_PACK32,
+ eA2R10G10B10SintPack32 = VK_FORMAT_A2R10G10B10_SINT_PACK32,
+ eA2B10G10R10UnormPack32 = VK_FORMAT_A2B10G10R10_UNORM_PACK32,
+ eA2B10G10R10SnormPack32 = VK_FORMAT_A2B10G10R10_SNORM_PACK32,
+ eA2B10G10R10UscaledPack32 = VK_FORMAT_A2B10G10R10_USCALED_PACK32,
+ eA2B10G10R10SscaledPack32 = VK_FORMAT_A2B10G10R10_SSCALED_PACK32,
+ eA2B10G10R10UintPack32 = VK_FORMAT_A2B10G10R10_UINT_PACK32,
+ eA2B10G10R10SintPack32 = VK_FORMAT_A2B10G10R10_SINT_PACK32,
+ eR16Unorm = VK_FORMAT_R16_UNORM,
+ eR16Snorm = VK_FORMAT_R16_SNORM,
+ eR16Uscaled = VK_FORMAT_R16_USCALED,
+ eR16Sscaled = VK_FORMAT_R16_SSCALED,
+ eR16Uint = VK_FORMAT_R16_UINT,
+ eR16Sint = VK_FORMAT_R16_SINT,
+ eR16Sfloat = VK_FORMAT_R16_SFLOAT,
+ eR16G16Unorm = VK_FORMAT_R16G16_UNORM,
+ eR16G16Snorm = VK_FORMAT_R16G16_SNORM,
+ eR16G16Uscaled = VK_FORMAT_R16G16_USCALED,
+ eR16G16Sscaled = VK_FORMAT_R16G16_SSCALED,
+ eR16G16Uint = VK_FORMAT_R16G16_UINT,
+ eR16G16Sint = VK_FORMAT_R16G16_SINT,
+ eR16G16Sfloat = VK_FORMAT_R16G16_SFLOAT,
+ eR16G16B16Unorm = VK_FORMAT_R16G16B16_UNORM,
+ eR16G16B16Snorm = VK_FORMAT_R16G16B16_SNORM,
+ eR16G16B16Uscaled = VK_FORMAT_R16G16B16_USCALED,
+ eR16G16B16Sscaled = VK_FORMAT_R16G16B16_SSCALED,
+ eR16G16B16Uint = VK_FORMAT_R16G16B16_UINT,
+ eR16G16B16Sint = VK_FORMAT_R16G16B16_SINT,
+ eR16G16B16Sfloat = VK_FORMAT_R16G16B16_SFLOAT,
+ eR16G16B16A16Unorm = VK_FORMAT_R16G16B16A16_UNORM,
+ eR16G16B16A16Snorm = VK_FORMAT_R16G16B16A16_SNORM,
+ eR16G16B16A16Uscaled = VK_FORMAT_R16G16B16A16_USCALED,
+ eR16G16B16A16Sscaled = VK_FORMAT_R16G16B16A16_SSCALED,
+ eR16G16B16A16Uint = VK_FORMAT_R16G16B16A16_UINT,
+ eR16G16B16A16Sint = VK_FORMAT_R16G16B16A16_SINT,
+ eR16G16B16A16Sfloat = VK_FORMAT_R16G16B16A16_SFLOAT,
+ eR32Uint = VK_FORMAT_R32_UINT,
+ eR32Sint = VK_FORMAT_R32_SINT,
+ eR32Sfloat = VK_FORMAT_R32_SFLOAT,
+ eR32G32Uint = VK_FORMAT_R32G32_UINT,
+ eR32G32Sint = VK_FORMAT_R32G32_SINT,
+ eR32G32Sfloat = VK_FORMAT_R32G32_SFLOAT,
+ eR32G32B32Uint = VK_FORMAT_R32G32B32_UINT,
+ eR32G32B32Sint = VK_FORMAT_R32G32B32_SINT,
+ eR32G32B32Sfloat = VK_FORMAT_R32G32B32_SFLOAT,
+ eR32G32B32A32Uint = VK_FORMAT_R32G32B32A32_UINT,
+ eR32G32B32A32Sint = VK_FORMAT_R32G32B32A32_SINT,
+ eR32G32B32A32Sfloat = VK_FORMAT_R32G32B32A32_SFLOAT,
+ eR64Uint = VK_FORMAT_R64_UINT,
+ eR64Sint = VK_FORMAT_R64_SINT,
+ eR64Sfloat = VK_FORMAT_R64_SFLOAT,
+ eR64G64Uint = VK_FORMAT_R64G64_UINT,
+ eR64G64Sint = VK_FORMAT_R64G64_SINT,
+ eR64G64Sfloat = VK_FORMAT_R64G64_SFLOAT,
+ eR64G64B64Uint = VK_FORMAT_R64G64B64_UINT,
+ eR64G64B64Sint = VK_FORMAT_R64G64B64_SINT,
+ eR64G64B64Sfloat = VK_FORMAT_R64G64B64_SFLOAT,
+ eR64G64B64A64Uint = VK_FORMAT_R64G64B64A64_UINT,
+ eR64G64B64A64Sint = VK_FORMAT_R64G64B64A64_SINT,
+ eR64G64B64A64Sfloat = VK_FORMAT_R64G64B64A64_SFLOAT,
+ eB10G11R11UfloatPack32 = VK_FORMAT_B10G11R11_UFLOAT_PACK32,
+ eE5B9G9R9UfloatPack32 = VK_FORMAT_E5B9G9R9_UFLOAT_PACK32,
+ eD16Unorm = VK_FORMAT_D16_UNORM,
+ eX8D24UnormPack32 = VK_FORMAT_X8_D24_UNORM_PACK32,
+ eD32Sfloat = VK_FORMAT_D32_SFLOAT,
+ eS8Uint = VK_FORMAT_S8_UINT,
+ eD16UnormS8Uint = VK_FORMAT_D16_UNORM_S8_UINT,
+ eD24UnormS8Uint = VK_FORMAT_D24_UNORM_S8_UINT,
+ eD32SfloatS8Uint = VK_FORMAT_D32_SFLOAT_S8_UINT,
+ eBc1RgbUnormBlock = VK_FORMAT_BC1_RGB_UNORM_BLOCK,
+ eBc1RgbSrgbBlock = VK_FORMAT_BC1_RGB_SRGB_BLOCK,
+ eBc1RgbaUnormBlock = VK_FORMAT_BC1_RGBA_UNORM_BLOCK,
+ eBc1RgbaSrgbBlock = VK_FORMAT_BC1_RGBA_SRGB_BLOCK,
+ eBc2UnormBlock = VK_FORMAT_BC2_UNORM_BLOCK,
+ eBc2SrgbBlock = VK_FORMAT_BC2_SRGB_BLOCK,
+ eBc3UnormBlock = VK_FORMAT_BC3_UNORM_BLOCK,
+ eBc3SrgbBlock = VK_FORMAT_BC3_SRGB_BLOCK,
+ eBc4UnormBlock = VK_FORMAT_BC4_UNORM_BLOCK,
+ eBc4SnormBlock = VK_FORMAT_BC4_SNORM_BLOCK,
+ eBc5UnormBlock = VK_FORMAT_BC5_UNORM_BLOCK,
+ eBc5SnormBlock = VK_FORMAT_BC5_SNORM_BLOCK,
+ eBc6HUfloatBlock = VK_FORMAT_BC6H_UFLOAT_BLOCK,
+ eBc6HSfloatBlock = VK_FORMAT_BC6H_SFLOAT_BLOCK,
+ eBc7UnormBlock = VK_FORMAT_BC7_UNORM_BLOCK,
+ eBc7SrgbBlock = VK_FORMAT_BC7_SRGB_BLOCK,
+ eEtc2R8G8B8UnormBlock = VK_FORMAT_ETC2_R8G8B8_UNORM_BLOCK,
+ eEtc2R8G8B8SrgbBlock = VK_FORMAT_ETC2_R8G8B8_SRGB_BLOCK,
+ eEtc2R8G8B8A1UnormBlock = VK_FORMAT_ETC2_R8G8B8A1_UNORM_BLOCK,
+ eEtc2R8G8B8A1SrgbBlock = VK_FORMAT_ETC2_R8G8B8A1_SRGB_BLOCK,
+ eEtc2R8G8B8A8UnormBlock = VK_FORMAT_ETC2_R8G8B8A8_UNORM_BLOCK,
+ eEtc2R8G8B8A8SrgbBlock = VK_FORMAT_ETC2_R8G8B8A8_SRGB_BLOCK,
+ eEacR11UnormBlock = VK_FORMAT_EAC_R11_UNORM_BLOCK,
+ eEacR11SnormBlock = VK_FORMAT_EAC_R11_SNORM_BLOCK,
+ eEacR11G11UnormBlock = VK_FORMAT_EAC_R11G11_UNORM_BLOCK,
+ eEacR11G11SnormBlock = VK_FORMAT_EAC_R11G11_SNORM_BLOCK,
+ eAstc4x4UnormBlock = VK_FORMAT_ASTC_4x4_UNORM_BLOCK,
+ eAstc4x4SrgbBlock = VK_FORMAT_ASTC_4x4_SRGB_BLOCK,
+ eAstc5x4UnormBlock = VK_FORMAT_ASTC_5x4_UNORM_BLOCK,
+ eAstc5x4SrgbBlock = VK_FORMAT_ASTC_5x4_SRGB_BLOCK,
+ eAstc5x5UnormBlock = VK_FORMAT_ASTC_5x5_UNORM_BLOCK,
+ eAstc5x5SrgbBlock = VK_FORMAT_ASTC_5x5_SRGB_BLOCK,
+ eAstc6x5UnormBlock = VK_FORMAT_ASTC_6x5_UNORM_BLOCK,
+ eAstc6x5SrgbBlock = VK_FORMAT_ASTC_6x5_SRGB_BLOCK,
+ eAstc6x6UnormBlock = VK_FORMAT_ASTC_6x6_UNORM_BLOCK,
+ eAstc6x6SrgbBlock = VK_FORMAT_ASTC_6x6_SRGB_BLOCK,
+ eAstc8x5UnormBlock = VK_FORMAT_ASTC_8x5_UNORM_BLOCK,
+ eAstc8x5SrgbBlock = VK_FORMAT_ASTC_8x5_SRGB_BLOCK,
+ eAstc8x6UnormBlock = VK_FORMAT_ASTC_8x6_UNORM_BLOCK,
+ eAstc8x6SrgbBlock = VK_FORMAT_ASTC_8x6_SRGB_BLOCK,
+ eAstc8x8UnormBlock = VK_FORMAT_ASTC_8x8_UNORM_BLOCK,
+ eAstc8x8SrgbBlock = VK_FORMAT_ASTC_8x8_SRGB_BLOCK,
+ eAstc10x5UnormBlock = VK_FORMAT_ASTC_10x5_UNORM_BLOCK,
+ eAstc10x5SrgbBlock = VK_FORMAT_ASTC_10x5_SRGB_BLOCK,
+ eAstc10x6UnormBlock = VK_FORMAT_ASTC_10x6_UNORM_BLOCK,
+ eAstc10x6SrgbBlock = VK_FORMAT_ASTC_10x6_SRGB_BLOCK,
+ eAstc10x8UnormBlock = VK_FORMAT_ASTC_10x8_UNORM_BLOCK,
+ eAstc10x8SrgbBlock = VK_FORMAT_ASTC_10x8_SRGB_BLOCK,
+ eAstc10x10UnormBlock = VK_FORMAT_ASTC_10x10_UNORM_BLOCK,
+ eAstc10x10SrgbBlock = VK_FORMAT_ASTC_10x10_SRGB_BLOCK,
+ eAstc12x10UnormBlock = VK_FORMAT_ASTC_12x10_UNORM_BLOCK,
+ eAstc12x10SrgbBlock = VK_FORMAT_ASTC_12x10_SRGB_BLOCK,
+ eAstc12x12UnormBlock = VK_FORMAT_ASTC_12x12_UNORM_BLOCK,
+ eAstc12x12SrgbBlock = VK_FORMAT_ASTC_12x12_SRGB_BLOCK,
+ eG8B8G8R8422Unorm = VK_FORMAT_G8B8G8R8_422_UNORM,
+ eB8G8R8G8422Unorm = VK_FORMAT_B8G8R8G8_422_UNORM,
+ eG8B8R83Plane420Unorm = VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM,
+ eG8B8R82Plane420Unorm = VK_FORMAT_G8_B8R8_2PLANE_420_UNORM,
+ eG8B8R83Plane422Unorm = VK_FORMAT_G8_B8_R8_3PLANE_422_UNORM,
+ eG8B8R82Plane422Unorm = VK_FORMAT_G8_B8R8_2PLANE_422_UNORM,
+ eG8B8R83Plane444Unorm = VK_FORMAT_G8_B8_R8_3PLANE_444_UNORM,
+ eR10X6UnormPack16 = VK_FORMAT_R10X6_UNORM_PACK16,
+ eR10X6G10X6Unorm2Pack16 = VK_FORMAT_R10X6G10X6_UNORM_2PACK16,
+ eR10X6G10X6B10X6A10X6Unorm4Pack16 = VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16,
+ eG10X6B10X6G10X6R10X6422Unorm4Pack16 = VK_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16,
+ eB10X6G10X6R10X6G10X6422Unorm4Pack16 = VK_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16,
+ eG10X6B10X6R10X63Plane420Unorm3Pack16 = VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16,
+ eG10X6B10X6R10X62Plane420Unorm3Pack16 = VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16,
+ eG10X6B10X6R10X63Plane422Unorm3Pack16 = VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16,
+ eG10X6B10X6R10X62Plane422Unorm3Pack16 = VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16,
+ eG10X6B10X6R10X63Plane444Unorm3Pack16 = VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16,
+ eR12X4UnormPack16 = VK_FORMAT_R12X4_UNORM_PACK16,
+ eR12X4G12X4Unorm2Pack16 = VK_FORMAT_R12X4G12X4_UNORM_2PACK16,
+ eR12X4G12X4B12X4A12X4Unorm4Pack16 = VK_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16,
+ eG12X4B12X4G12X4R12X4422Unorm4Pack16 = VK_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16,
+ eB12X4G12X4R12X4G12X4422Unorm4Pack16 = VK_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16,
+ eG12X4B12X4R12X43Plane420Unorm3Pack16 = VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16,
+ eG12X4B12X4R12X42Plane420Unorm3Pack16 = VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16,
+ eG12X4B12X4R12X43Plane422Unorm3Pack16 = VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16,
+ eG12X4B12X4R12X42Plane422Unorm3Pack16 = VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16,
+ eG12X4B12X4R12X43Plane444Unorm3Pack16 = VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16,
+ eG16B16G16R16422Unorm = VK_FORMAT_G16B16G16R16_422_UNORM,
+ eB16G16R16G16422Unorm = VK_FORMAT_B16G16R16G16_422_UNORM,
+ eG16B16R163Plane420Unorm = VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM,
+ eG16B16R162Plane420Unorm = VK_FORMAT_G16_B16R16_2PLANE_420_UNORM,
+ eG16B16R163Plane422Unorm = VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM,
+ eG16B16R162Plane422Unorm = VK_FORMAT_G16_B16R16_2PLANE_422_UNORM,
+ eG16B16R163Plane444Unorm = VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM,
+ ePvrtc12BppUnormBlockIMG = VK_FORMAT_PVRTC1_2BPP_UNORM_BLOCK_IMG,
+ ePvrtc14BppUnormBlockIMG = VK_FORMAT_PVRTC1_4BPP_UNORM_BLOCK_IMG,
+ ePvrtc22BppUnormBlockIMG = VK_FORMAT_PVRTC2_2BPP_UNORM_BLOCK_IMG,
+ ePvrtc24BppUnormBlockIMG = VK_FORMAT_PVRTC2_4BPP_UNORM_BLOCK_IMG,
+ ePvrtc12BppSrgbBlockIMG = VK_FORMAT_PVRTC1_2BPP_SRGB_BLOCK_IMG,
+ ePvrtc14BppSrgbBlockIMG = VK_FORMAT_PVRTC1_4BPP_SRGB_BLOCK_IMG,
+ ePvrtc22BppSrgbBlockIMG = VK_FORMAT_PVRTC2_2BPP_SRGB_BLOCK_IMG,
+ ePvrtc24BppSrgbBlockIMG = VK_FORMAT_PVRTC2_4BPP_SRGB_BLOCK_IMG,
+ eAstc4x4SfloatBlockEXT = VK_FORMAT_ASTC_4x4_SFLOAT_BLOCK_EXT,
+ eAstc5x4SfloatBlockEXT = VK_FORMAT_ASTC_5x4_SFLOAT_BLOCK_EXT,
+ eAstc5x5SfloatBlockEXT = VK_FORMAT_ASTC_5x5_SFLOAT_BLOCK_EXT,
+ eAstc6x5SfloatBlockEXT = VK_FORMAT_ASTC_6x5_SFLOAT_BLOCK_EXT,
+ eAstc6x6SfloatBlockEXT = VK_FORMAT_ASTC_6x6_SFLOAT_BLOCK_EXT,
+ eAstc8x5SfloatBlockEXT = VK_FORMAT_ASTC_8x5_SFLOAT_BLOCK_EXT,
+ eAstc8x6SfloatBlockEXT = VK_FORMAT_ASTC_8x6_SFLOAT_BLOCK_EXT,
+ eAstc8x8SfloatBlockEXT = VK_FORMAT_ASTC_8x8_SFLOAT_BLOCK_EXT,
+ eAstc10x5SfloatBlockEXT = VK_FORMAT_ASTC_10x5_SFLOAT_BLOCK_EXT,
+ eAstc10x6SfloatBlockEXT = VK_FORMAT_ASTC_10x6_SFLOAT_BLOCK_EXT,
+ eAstc10x8SfloatBlockEXT = VK_FORMAT_ASTC_10x8_SFLOAT_BLOCK_EXT,
+ eAstc10x10SfloatBlockEXT = VK_FORMAT_ASTC_10x10_SFLOAT_BLOCK_EXT,
+ eAstc12x10SfloatBlockEXT = VK_FORMAT_ASTC_12x10_SFLOAT_BLOCK_EXT,
+ eAstc12x12SfloatBlockEXT = VK_FORMAT_ASTC_12x12_SFLOAT_BLOCK_EXT,
+ eG8B8R82Plane444UnormEXT = VK_FORMAT_G8_B8R8_2PLANE_444_UNORM_EXT,
+ eG10X6B10X6R10X62Plane444Unorm3Pack16EXT = VK_FORMAT_G10X6_B10X6R10X6_2PLANE_444_UNORM_3PACK16_EXT,
+ eG12X4B12X4R12X42Plane444Unorm3Pack16EXT = VK_FORMAT_G12X4_B12X4R12X4_2PLANE_444_UNORM_3PACK16_EXT,
+ eG16B16R162Plane444UnormEXT = VK_FORMAT_G16_B16R16_2PLANE_444_UNORM_EXT,
+ eA4R4G4B4UnormPack16EXT = VK_FORMAT_A4R4G4B4_UNORM_PACK16_EXT,
+ eA4B4G4R4UnormPack16EXT = VK_FORMAT_A4B4G4R4_UNORM_PACK16_EXT,
+ eB10X6G10X6R10X6G10X6422Unorm4Pack16KHR = VK_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16_KHR,
+ eB12X4G12X4R12X4G12X4422Unorm4Pack16KHR = VK_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16_KHR,
+ eB16G16R16G16422UnormKHR = VK_FORMAT_B16G16R16G16_422_UNORM_KHR,
+ eB8G8R8G8422UnormKHR = VK_FORMAT_B8G8R8G8_422_UNORM_KHR,
+ eG10X6B10X6G10X6R10X6422Unorm4Pack16KHR = VK_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16_KHR,
+ eG10X6B10X6R10X62Plane420Unorm3Pack16KHR = VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16_KHR,
+ eG10X6B10X6R10X62Plane422Unorm3Pack16KHR = VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16_KHR,
+ eG10X6B10X6R10X63Plane420Unorm3Pack16KHR = VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16_KHR,
+ eG10X6B10X6R10X63Plane422Unorm3Pack16KHR = VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16_KHR,
+ eG10X6B10X6R10X63Plane444Unorm3Pack16KHR = VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16_KHR,
+ eG12X4B12X4G12X4R12X4422Unorm4Pack16KHR = VK_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16_KHR,
+ eG12X4B12X4R12X42Plane420Unorm3Pack16KHR = VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16_KHR,
+ eG12X4B12X4R12X42Plane422Unorm3Pack16KHR = VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16_KHR,
+ eG12X4B12X4R12X43Plane420Unorm3Pack16KHR = VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16_KHR,
+ eG12X4B12X4R12X43Plane422Unorm3Pack16KHR = VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16_KHR,
+ eG12X4B12X4R12X43Plane444Unorm3Pack16KHR = VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16_KHR,
+ eG16B16G16R16422UnormKHR = VK_FORMAT_G16B16G16R16_422_UNORM_KHR,
+ eG16B16R162Plane420UnormKHR = VK_FORMAT_G16_B16R16_2PLANE_420_UNORM_KHR,
+ eG16B16R162Plane422UnormKHR = VK_FORMAT_G16_B16R16_2PLANE_422_UNORM_KHR,
+ eG16B16R163Plane420UnormKHR = VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM_KHR,
+ eG16B16R163Plane422UnormKHR = VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM_KHR,
+ eG16B16R163Plane444UnormKHR = VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM_KHR,
+ eG8B8G8R8422UnormKHR = VK_FORMAT_G8B8G8R8_422_UNORM_KHR,
+ eG8B8R82Plane420UnormKHR = VK_FORMAT_G8_B8R8_2PLANE_420_UNORM_KHR,
+ eG8B8R82Plane422UnormKHR = VK_FORMAT_G8_B8R8_2PLANE_422_UNORM_KHR,
+ eG8B8R83Plane420UnormKHR = VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM_KHR,
+ eG8B8R83Plane422UnormKHR = VK_FORMAT_G8_B8_R8_3PLANE_422_UNORM_KHR,
+ eG8B8R83Plane444UnormKHR = VK_FORMAT_G8_B8_R8_3PLANE_444_UNORM_KHR,
+ eR10X6G10X6B10X6A10X6Unorm4Pack16KHR = VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16_KHR,
+ eR10X6G10X6Unorm2Pack16KHR = VK_FORMAT_R10X6G10X6_UNORM_2PACK16_KHR,
+ eR10X6UnormPack16KHR = VK_FORMAT_R10X6_UNORM_PACK16_KHR,
+ eR12X4G12X4B12X4A12X4Unorm4Pack16KHR = VK_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16_KHR,
+ eR12X4G12X4Unorm2Pack16KHR = VK_FORMAT_R12X4G12X4_UNORM_2PACK16_KHR,
+ eR12X4UnormPack16KHR = VK_FORMAT_R12X4_UNORM_PACK16_KHR
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( Format value )
+ {
+ switch ( value )
+ {
+ case Format::eUndefined: return "Undefined";
+ case Format::eR4G4UnormPack8: return "R4G4UnormPack8";
+ case Format::eR4G4B4A4UnormPack16: return "R4G4B4A4UnormPack16";
+ case Format::eB4G4R4A4UnormPack16: return "B4G4R4A4UnormPack16";
+ case Format::eR5G6B5UnormPack16: return "R5G6B5UnormPack16";
+ case Format::eB5G6R5UnormPack16: return "B5G6R5UnormPack16";
+ case Format::eR5G5B5A1UnormPack16: return "R5G5B5A1UnormPack16";
+ case Format::eB5G5R5A1UnormPack16: return "B5G5R5A1UnormPack16";
+ case Format::eA1R5G5B5UnormPack16: return "A1R5G5B5UnormPack16";
+ case Format::eR8Unorm: return "R8Unorm";
+ case Format::eR8Snorm: return "R8Snorm";
+ case Format::eR8Uscaled: return "R8Uscaled";
+ case Format::eR8Sscaled: return "R8Sscaled";
+ case Format::eR8Uint: return "R8Uint";
+ case Format::eR8Sint: return "R8Sint";
+ case Format::eR8Srgb: return "R8Srgb";
+ case Format::eR8G8Unorm: return "R8G8Unorm";
+ case Format::eR8G8Snorm: return "R8G8Snorm";
+ case Format::eR8G8Uscaled: return "R8G8Uscaled";
+ case Format::eR8G8Sscaled: return "R8G8Sscaled";
+ case Format::eR8G8Uint: return "R8G8Uint";
+ case Format::eR8G8Sint: return "R8G8Sint";
+ case Format::eR8G8Srgb: return "R8G8Srgb";
+ case Format::eR8G8B8Unorm: return "R8G8B8Unorm";
+ case Format::eR8G8B8Snorm: return "R8G8B8Snorm";
+ case Format::eR8G8B8Uscaled: return "R8G8B8Uscaled";
+ case Format::eR8G8B8Sscaled: return "R8G8B8Sscaled";
+ case Format::eR8G8B8Uint: return "R8G8B8Uint";
+ case Format::eR8G8B8Sint: return "R8G8B8Sint";
+ case Format::eR8G8B8Srgb: return "R8G8B8Srgb";
+ case Format::eB8G8R8Unorm: return "B8G8R8Unorm";
+ case Format::eB8G8R8Snorm: return "B8G8R8Snorm";
+ case Format::eB8G8R8Uscaled: return "B8G8R8Uscaled";
+ case Format::eB8G8R8Sscaled: return "B8G8R8Sscaled";
+ case Format::eB8G8R8Uint: return "B8G8R8Uint";
+ case Format::eB8G8R8Sint: return "B8G8R8Sint";
+ case Format::eB8G8R8Srgb: return "B8G8R8Srgb";
+ case Format::eR8G8B8A8Unorm: return "R8G8B8A8Unorm";
+ case Format::eR8G8B8A8Snorm: return "R8G8B8A8Snorm";
+ case Format::eR8G8B8A8Uscaled: return "R8G8B8A8Uscaled";
+ case Format::eR8G8B8A8Sscaled: return "R8G8B8A8Sscaled";
+ case Format::eR8G8B8A8Uint: return "R8G8B8A8Uint";
+ case Format::eR8G8B8A8Sint: return "R8G8B8A8Sint";
+ case Format::eR8G8B8A8Srgb: return "R8G8B8A8Srgb";
+ case Format::eB8G8R8A8Unorm: return "B8G8R8A8Unorm";
+ case Format::eB8G8R8A8Snorm: return "B8G8R8A8Snorm";
+ case Format::eB8G8R8A8Uscaled: return "B8G8R8A8Uscaled";
+ case Format::eB8G8R8A8Sscaled: return "B8G8R8A8Sscaled";
+ case Format::eB8G8R8A8Uint: return "B8G8R8A8Uint";
+ case Format::eB8G8R8A8Sint: return "B8G8R8A8Sint";
+ case Format::eB8G8R8A8Srgb: return "B8G8R8A8Srgb";
+ case Format::eA8B8G8R8UnormPack32: return "A8B8G8R8UnormPack32";
+ case Format::eA8B8G8R8SnormPack32: return "A8B8G8R8SnormPack32";
+ case Format::eA8B8G8R8UscaledPack32: return "A8B8G8R8UscaledPack32";
+ case Format::eA8B8G8R8SscaledPack32: return "A8B8G8R8SscaledPack32";
+ case Format::eA8B8G8R8UintPack32: return "A8B8G8R8UintPack32";
+ case Format::eA8B8G8R8SintPack32: return "A8B8G8R8SintPack32";
+ case Format::eA8B8G8R8SrgbPack32: return "A8B8G8R8SrgbPack32";
+ case Format::eA2R10G10B10UnormPack32: return "A2R10G10B10UnormPack32";
+ case Format::eA2R10G10B10SnormPack32: return "A2R10G10B10SnormPack32";
+ case Format::eA2R10G10B10UscaledPack32: return "A2R10G10B10UscaledPack32";
+ case Format::eA2R10G10B10SscaledPack32: return "A2R10G10B10SscaledPack32";
+ case Format::eA2R10G10B10UintPack32: return "A2R10G10B10UintPack32";
+ case Format::eA2R10G10B10SintPack32: return "A2R10G10B10SintPack32";
+ case Format::eA2B10G10R10UnormPack32: return "A2B10G10R10UnormPack32";
+ case Format::eA2B10G10R10SnormPack32: return "A2B10G10R10SnormPack32";
+ case Format::eA2B10G10R10UscaledPack32: return "A2B10G10R10UscaledPack32";
+ case Format::eA2B10G10R10SscaledPack32: return "A2B10G10R10SscaledPack32";
+ case Format::eA2B10G10R10UintPack32: return "A2B10G10R10UintPack32";
+ case Format::eA2B10G10R10SintPack32: return "A2B10G10R10SintPack32";
+ case Format::eR16Unorm: return "R16Unorm";
+ case Format::eR16Snorm: return "R16Snorm";
+ case Format::eR16Uscaled: return "R16Uscaled";
+ case Format::eR16Sscaled: return "R16Sscaled";
+ case Format::eR16Uint: return "R16Uint";
+ case Format::eR16Sint: return "R16Sint";
+ case Format::eR16Sfloat: return "R16Sfloat";
+ case Format::eR16G16Unorm: return "R16G16Unorm";
+ case Format::eR16G16Snorm: return "R16G16Snorm";
+ case Format::eR16G16Uscaled: return "R16G16Uscaled";
+ case Format::eR16G16Sscaled: return "R16G16Sscaled";
+ case Format::eR16G16Uint: return "R16G16Uint";
+ case Format::eR16G16Sint: return "R16G16Sint";
+ case Format::eR16G16Sfloat: return "R16G16Sfloat";
+ case Format::eR16G16B16Unorm: return "R16G16B16Unorm";
+ case Format::eR16G16B16Snorm: return "R16G16B16Snorm";
+ case Format::eR16G16B16Uscaled: return "R16G16B16Uscaled";
+ case Format::eR16G16B16Sscaled: return "R16G16B16Sscaled";
+ case Format::eR16G16B16Uint: return "R16G16B16Uint";
+ case Format::eR16G16B16Sint: return "R16G16B16Sint";
+ case Format::eR16G16B16Sfloat: return "R16G16B16Sfloat";
+ case Format::eR16G16B16A16Unorm: return "R16G16B16A16Unorm";
+ case Format::eR16G16B16A16Snorm: return "R16G16B16A16Snorm";
+ case Format::eR16G16B16A16Uscaled: return "R16G16B16A16Uscaled";
+ case Format::eR16G16B16A16Sscaled: return "R16G16B16A16Sscaled";
+ case Format::eR16G16B16A16Uint: return "R16G16B16A16Uint";
+ case Format::eR16G16B16A16Sint: return "R16G16B16A16Sint";
+ case Format::eR16G16B16A16Sfloat: return "R16G16B16A16Sfloat";
+ case Format::eR32Uint: return "R32Uint";
+ case Format::eR32Sint: return "R32Sint";
+ case Format::eR32Sfloat: return "R32Sfloat";
+ case Format::eR32G32Uint: return "R32G32Uint";
+ case Format::eR32G32Sint: return "R32G32Sint";
+ case Format::eR32G32Sfloat: return "R32G32Sfloat";
+ case Format::eR32G32B32Uint: return "R32G32B32Uint";
+ case Format::eR32G32B32Sint: return "R32G32B32Sint";
+ case Format::eR32G32B32Sfloat: return "R32G32B32Sfloat";
+ case Format::eR32G32B32A32Uint: return "R32G32B32A32Uint";
+ case Format::eR32G32B32A32Sint: return "R32G32B32A32Sint";
+ case Format::eR32G32B32A32Sfloat: return "R32G32B32A32Sfloat";
+ case Format::eR64Uint: return "R64Uint";
+ case Format::eR64Sint: return "R64Sint";
+ case Format::eR64Sfloat: return "R64Sfloat";
+ case Format::eR64G64Uint: return "R64G64Uint";
+ case Format::eR64G64Sint: return "R64G64Sint";
+ case Format::eR64G64Sfloat: return "R64G64Sfloat";
+ case Format::eR64G64B64Uint: return "R64G64B64Uint";
+ case Format::eR64G64B64Sint: return "R64G64B64Sint";
+ case Format::eR64G64B64Sfloat: return "R64G64B64Sfloat";
+ case Format::eR64G64B64A64Uint: return "R64G64B64A64Uint";
+ case Format::eR64G64B64A64Sint: return "R64G64B64A64Sint";
+ case Format::eR64G64B64A64Sfloat: return "R64G64B64A64Sfloat";
+ case Format::eB10G11R11UfloatPack32: return "B10G11R11UfloatPack32";
+ case Format::eE5B9G9R9UfloatPack32: return "E5B9G9R9UfloatPack32";
+ case Format::eD16Unorm: return "D16Unorm";
+ case Format::eX8D24UnormPack32: return "X8D24UnormPack32";
+ case Format::eD32Sfloat: return "D32Sfloat";
+ case Format::eS8Uint: return "S8Uint";
+ case Format::eD16UnormS8Uint: return "D16UnormS8Uint";
+ case Format::eD24UnormS8Uint: return "D24UnormS8Uint";
+ case Format::eD32SfloatS8Uint: return "D32SfloatS8Uint";
+ case Format::eBc1RgbUnormBlock: return "Bc1RgbUnormBlock";
+ case Format::eBc1RgbSrgbBlock: return "Bc1RgbSrgbBlock";
+ case Format::eBc1RgbaUnormBlock: return "Bc1RgbaUnormBlock";
+ case Format::eBc1RgbaSrgbBlock: return "Bc1RgbaSrgbBlock";
+ case Format::eBc2UnormBlock: return "Bc2UnormBlock";
+ case Format::eBc2SrgbBlock: return "Bc2SrgbBlock";
+ case Format::eBc3UnormBlock: return "Bc3UnormBlock";
+ case Format::eBc3SrgbBlock: return "Bc3SrgbBlock";
+ case Format::eBc4UnormBlock: return "Bc4UnormBlock";
+ case Format::eBc4SnormBlock: return "Bc4SnormBlock";
+ case Format::eBc5UnormBlock: return "Bc5UnormBlock";
+ case Format::eBc5SnormBlock: return "Bc5SnormBlock";
+ case Format::eBc6HUfloatBlock: return "Bc6HUfloatBlock";
+ case Format::eBc6HSfloatBlock: return "Bc6HSfloatBlock";
+ case Format::eBc7UnormBlock: return "Bc7UnormBlock";
+ case Format::eBc7SrgbBlock: return "Bc7SrgbBlock";
+ case Format::eEtc2R8G8B8UnormBlock: return "Etc2R8G8B8UnormBlock";
+ case Format::eEtc2R8G8B8SrgbBlock: return "Etc2R8G8B8SrgbBlock";
+ case Format::eEtc2R8G8B8A1UnormBlock: return "Etc2R8G8B8A1UnormBlock";
+ case Format::eEtc2R8G8B8A1SrgbBlock: return "Etc2R8G8B8A1SrgbBlock";
+ case Format::eEtc2R8G8B8A8UnormBlock: return "Etc2R8G8B8A8UnormBlock";
+ case Format::eEtc2R8G8B8A8SrgbBlock: return "Etc2R8G8B8A8SrgbBlock";
+ case Format::eEacR11UnormBlock: return "EacR11UnormBlock";
+ case Format::eEacR11SnormBlock: return "EacR11SnormBlock";
+ case Format::eEacR11G11UnormBlock: return "EacR11G11UnormBlock";
+ case Format::eEacR11G11SnormBlock: return "EacR11G11SnormBlock";
+ case Format::eAstc4x4UnormBlock: return "Astc4x4UnormBlock";
+ case Format::eAstc4x4SrgbBlock: return "Astc4x4SrgbBlock";
+ case Format::eAstc5x4UnormBlock: return "Astc5x4UnormBlock";
+ case Format::eAstc5x4SrgbBlock: return "Astc5x4SrgbBlock";
+ case Format::eAstc5x5UnormBlock: return "Astc5x5UnormBlock";
+ case Format::eAstc5x5SrgbBlock: return "Astc5x5SrgbBlock";
+ case Format::eAstc6x5UnormBlock: return "Astc6x5UnormBlock";
+ case Format::eAstc6x5SrgbBlock: return "Astc6x5SrgbBlock";
+ case Format::eAstc6x6UnormBlock: return "Astc6x6UnormBlock";
+ case Format::eAstc6x6SrgbBlock: return "Astc6x6SrgbBlock";
+ case Format::eAstc8x5UnormBlock: return "Astc8x5UnormBlock";
+ case Format::eAstc8x5SrgbBlock: return "Astc8x5SrgbBlock";
+ case Format::eAstc8x6UnormBlock: return "Astc8x6UnormBlock";
+ case Format::eAstc8x6SrgbBlock: return "Astc8x6SrgbBlock";
+ case Format::eAstc8x8UnormBlock: return "Astc8x8UnormBlock";
+ case Format::eAstc8x8SrgbBlock: return "Astc8x8SrgbBlock";
+ case Format::eAstc10x5UnormBlock: return "Astc10x5UnormBlock";
+ case Format::eAstc10x5SrgbBlock: return "Astc10x5SrgbBlock";
+ case Format::eAstc10x6UnormBlock: return "Astc10x6UnormBlock";
+ case Format::eAstc10x6SrgbBlock: return "Astc10x6SrgbBlock";
+ case Format::eAstc10x8UnormBlock: return "Astc10x8UnormBlock";
+ case Format::eAstc10x8SrgbBlock: return "Astc10x8SrgbBlock";
+ case Format::eAstc10x10UnormBlock: return "Astc10x10UnormBlock";
+ case Format::eAstc10x10SrgbBlock: return "Astc10x10SrgbBlock";
+ case Format::eAstc12x10UnormBlock: return "Astc12x10UnormBlock";
+ case Format::eAstc12x10SrgbBlock: return "Astc12x10SrgbBlock";
+ case Format::eAstc12x12UnormBlock: return "Astc12x12UnormBlock";
+ case Format::eAstc12x12SrgbBlock: return "Astc12x12SrgbBlock";
+ case Format::eG8B8G8R8422Unorm: return "G8B8G8R8422Unorm";
+ case Format::eB8G8R8G8422Unorm: return "B8G8R8G8422Unorm";
+ case Format::eG8B8R83Plane420Unorm: return "G8B8R83Plane420Unorm";
+ case Format::eG8B8R82Plane420Unorm: return "G8B8R82Plane420Unorm";
+ case Format::eG8B8R83Plane422Unorm: return "G8B8R83Plane422Unorm";
+ case Format::eG8B8R82Plane422Unorm: return "G8B8R82Plane422Unorm";
+ case Format::eG8B8R83Plane444Unorm: return "G8B8R83Plane444Unorm";
+ case Format::eR10X6UnormPack16: return "R10X6UnormPack16";
+ case Format::eR10X6G10X6Unorm2Pack16: return "R10X6G10X6Unorm2Pack16";
+ case Format::eR10X6G10X6B10X6A10X6Unorm4Pack16: return "R10X6G10X6B10X6A10X6Unorm4Pack16";
+ case Format::eG10X6B10X6G10X6R10X6422Unorm4Pack16: return "G10X6B10X6G10X6R10X6422Unorm4Pack16";
+ case Format::eB10X6G10X6R10X6G10X6422Unorm4Pack16: return "B10X6G10X6R10X6G10X6422Unorm4Pack16";
+ case Format::eG10X6B10X6R10X63Plane420Unorm3Pack16: return "G10X6B10X6R10X63Plane420Unorm3Pack16";
+ case Format::eG10X6B10X6R10X62Plane420Unorm3Pack16: return "G10X6B10X6R10X62Plane420Unorm3Pack16";
+ case Format::eG10X6B10X6R10X63Plane422Unorm3Pack16: return "G10X6B10X6R10X63Plane422Unorm3Pack16";
+ case Format::eG10X6B10X6R10X62Plane422Unorm3Pack16: return "G10X6B10X6R10X62Plane422Unorm3Pack16";
+ case Format::eG10X6B10X6R10X63Plane444Unorm3Pack16: return "G10X6B10X6R10X63Plane444Unorm3Pack16";
+ case Format::eR12X4UnormPack16: return "R12X4UnormPack16";
+ case Format::eR12X4G12X4Unorm2Pack16: return "R12X4G12X4Unorm2Pack16";
+ case Format::eR12X4G12X4B12X4A12X4Unorm4Pack16: return "R12X4G12X4B12X4A12X4Unorm4Pack16";
+ case Format::eG12X4B12X4G12X4R12X4422Unorm4Pack16: return "G12X4B12X4G12X4R12X4422Unorm4Pack16";
+ case Format::eB12X4G12X4R12X4G12X4422Unorm4Pack16: return "B12X4G12X4R12X4G12X4422Unorm4Pack16";
+ case Format::eG12X4B12X4R12X43Plane420Unorm3Pack16: return "G12X4B12X4R12X43Plane420Unorm3Pack16";
+ case Format::eG12X4B12X4R12X42Plane420Unorm3Pack16: return "G12X4B12X4R12X42Plane420Unorm3Pack16";
+ case Format::eG12X4B12X4R12X43Plane422Unorm3Pack16: return "G12X4B12X4R12X43Plane422Unorm3Pack16";
+ case Format::eG12X4B12X4R12X42Plane422Unorm3Pack16: return "G12X4B12X4R12X42Plane422Unorm3Pack16";
+ case Format::eG12X4B12X4R12X43Plane444Unorm3Pack16: return "G12X4B12X4R12X43Plane444Unorm3Pack16";
+ case Format::eG16B16G16R16422Unorm: return "G16B16G16R16422Unorm";
+ case Format::eB16G16R16G16422Unorm: return "B16G16R16G16422Unorm";
+ case Format::eG16B16R163Plane420Unorm: return "G16B16R163Plane420Unorm";
+ case Format::eG16B16R162Plane420Unorm: return "G16B16R162Plane420Unorm";
+ case Format::eG16B16R163Plane422Unorm: return "G16B16R163Plane422Unorm";
+ case Format::eG16B16R162Plane422Unorm: return "G16B16R162Plane422Unorm";
+ case Format::eG16B16R163Plane444Unorm: return "G16B16R163Plane444Unorm";
+ case Format::ePvrtc12BppUnormBlockIMG: return "Pvrtc12BppUnormBlockIMG";
+ case Format::ePvrtc14BppUnormBlockIMG: return "Pvrtc14BppUnormBlockIMG";
+ case Format::ePvrtc22BppUnormBlockIMG: return "Pvrtc22BppUnormBlockIMG";
+ case Format::ePvrtc24BppUnormBlockIMG: return "Pvrtc24BppUnormBlockIMG";
+ case Format::ePvrtc12BppSrgbBlockIMG: return "Pvrtc12BppSrgbBlockIMG";
+ case Format::ePvrtc14BppSrgbBlockIMG: return "Pvrtc14BppSrgbBlockIMG";
+ case Format::ePvrtc22BppSrgbBlockIMG: return "Pvrtc22BppSrgbBlockIMG";
+ case Format::ePvrtc24BppSrgbBlockIMG: return "Pvrtc24BppSrgbBlockIMG";
+ case Format::eAstc4x4SfloatBlockEXT: return "Astc4x4SfloatBlockEXT";
+ case Format::eAstc5x4SfloatBlockEXT: return "Astc5x4SfloatBlockEXT";
+ case Format::eAstc5x5SfloatBlockEXT: return "Astc5x5SfloatBlockEXT";
+ case Format::eAstc6x5SfloatBlockEXT: return "Astc6x5SfloatBlockEXT";
+ case Format::eAstc6x6SfloatBlockEXT: return "Astc6x6SfloatBlockEXT";
+ case Format::eAstc8x5SfloatBlockEXT: return "Astc8x5SfloatBlockEXT";
+ case Format::eAstc8x6SfloatBlockEXT: return "Astc8x6SfloatBlockEXT";
+ case Format::eAstc8x8SfloatBlockEXT: return "Astc8x8SfloatBlockEXT";
+ case Format::eAstc10x5SfloatBlockEXT: return "Astc10x5SfloatBlockEXT";
+ case Format::eAstc10x6SfloatBlockEXT: return "Astc10x6SfloatBlockEXT";
+ case Format::eAstc10x8SfloatBlockEXT: return "Astc10x8SfloatBlockEXT";
+ case Format::eAstc10x10SfloatBlockEXT: return "Astc10x10SfloatBlockEXT";
+ case Format::eAstc12x10SfloatBlockEXT: return "Astc12x10SfloatBlockEXT";
+ case Format::eAstc12x12SfloatBlockEXT: return "Astc12x12SfloatBlockEXT";
+ case Format::eG8B8R82Plane444UnormEXT: return "G8B8R82Plane444UnormEXT";
+ case Format::eG10X6B10X6R10X62Plane444Unorm3Pack16EXT: return "G10X6B10X6R10X62Plane444Unorm3Pack16EXT";
+ case Format::eG12X4B12X4R12X42Plane444Unorm3Pack16EXT: return "G12X4B12X4R12X42Plane444Unorm3Pack16EXT";
+ case Format::eG16B16R162Plane444UnormEXT: return "G16B16R162Plane444UnormEXT";
+ case Format::eA4R4G4B4UnormPack16EXT: return "A4R4G4B4UnormPack16EXT";
+ case Format::eA4B4G4R4UnormPack16EXT: return "A4B4G4R4UnormPack16EXT";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class FormatFeatureFlagBits : VkFormatFeatureFlags
+ {
+ eSampledImage = VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT,
+ eStorageImage = VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT,
+ eStorageImageAtomic = VK_FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT,
+ eUniformTexelBuffer = VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT,
+ eStorageTexelBuffer = VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT,
+ eStorageTexelBufferAtomic = VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_ATOMIC_BIT,
+ eVertexBuffer = VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT,
+ eColorAttachment = VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT,
+ eColorAttachmentBlend = VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT,
+ eDepthStencilAttachment = VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT,
+ eBlitSrc = VK_FORMAT_FEATURE_BLIT_SRC_BIT,
+ eBlitDst = VK_FORMAT_FEATURE_BLIT_DST_BIT,
+ eSampledImageFilterLinear = VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT,
+ eTransferSrc = VK_FORMAT_FEATURE_TRANSFER_SRC_BIT,
+ eTransferDst = VK_FORMAT_FEATURE_TRANSFER_DST_BIT,
+ eMidpointChromaSamples = VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT,
+ eSampledImageYcbcrConversionLinearFilter = VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT,
+ eSampledImageYcbcrConversionSeparateReconstructionFilter =
+ VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT,
+ eSampledImageYcbcrConversionChromaReconstructionExplicit =
+ VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT,
+ eSampledImageYcbcrConversionChromaReconstructionExplicitForceable =
+ VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT,
+ eDisjoint = VK_FORMAT_FEATURE_DISJOINT_BIT,
+ eCositedChromaSamples = VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT,
+ eSampledImageFilterMinmax = VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT,
+ eSampledImageFilterCubicIMG = VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG,
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ eVideoDecodeOutputKHR = VK_FORMAT_FEATURE_VIDEO_DECODE_OUTPUT_BIT_KHR,
+ eVideoDecodeDpbKHR = VK_FORMAT_FEATURE_VIDEO_DECODE_DPB_BIT_KHR,
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ eAccelerationStructureVertexBufferKHR = VK_FORMAT_FEATURE_ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR,
+ eFragmentDensityMapEXT = VK_FORMAT_FEATURE_FRAGMENT_DENSITY_MAP_BIT_EXT,
+ eFragmentShadingRateAttachmentKHR = VK_FORMAT_FEATURE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR,
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ eVideoEncodeInputKHR = VK_FORMAT_FEATURE_VIDEO_ENCODE_INPUT_BIT_KHR,
+ eVideoEncodeDpbKHR = VK_FORMAT_FEATURE_VIDEO_ENCODE_DPB_BIT_KHR,
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ eCositedChromaSamplesKHR = VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT_KHR,
+ eDisjointKHR = VK_FORMAT_FEATURE_DISJOINT_BIT_KHR,
+ eMidpointChromaSamplesKHR = VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT_KHR,
+ eSampledImageFilterCubicEXT = VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT,
+ eSampledImageFilterMinmaxEXT = VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT_EXT,
+ eSampledImageYcbcrConversionChromaReconstructionExplicitKHR =
+ VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT_KHR,
+ eSampledImageYcbcrConversionChromaReconstructionExplicitForceableKHR =
+ VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT_KHR,
+ eSampledImageYcbcrConversionLinearFilterKHR =
+ VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT_KHR,
+ eSampledImageYcbcrConversionSeparateReconstructionFilterKHR =
+ VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT_KHR,
+ eTransferDstKHR = VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR,
+ eTransferSrcKHR = VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( FormatFeatureFlagBits value )
+ {
+ switch ( value )
+ {
+ case FormatFeatureFlagBits::eSampledImage: return "SampledImage";
+ case FormatFeatureFlagBits::eStorageImage: return "StorageImage";
+ case FormatFeatureFlagBits::eStorageImageAtomic: return "StorageImageAtomic";
+ case FormatFeatureFlagBits::eUniformTexelBuffer: return "UniformTexelBuffer";
+ case FormatFeatureFlagBits::eStorageTexelBuffer: return "StorageTexelBuffer";
+ case FormatFeatureFlagBits::eStorageTexelBufferAtomic: return "StorageTexelBufferAtomic";
+ case FormatFeatureFlagBits::eVertexBuffer: return "VertexBuffer";
+ case FormatFeatureFlagBits::eColorAttachment: return "ColorAttachment";
+ case FormatFeatureFlagBits::eColorAttachmentBlend: return "ColorAttachmentBlend";
+ case FormatFeatureFlagBits::eDepthStencilAttachment: return "DepthStencilAttachment";
+ case FormatFeatureFlagBits::eBlitSrc: return "BlitSrc";
+ case FormatFeatureFlagBits::eBlitDst: return "BlitDst";
+ case FormatFeatureFlagBits::eSampledImageFilterLinear: return "SampledImageFilterLinear";
+ case FormatFeatureFlagBits::eTransferSrc: return "TransferSrc";
+ case FormatFeatureFlagBits::eTransferDst: return "TransferDst";
+ case FormatFeatureFlagBits::eMidpointChromaSamples: return "MidpointChromaSamples";
+ case FormatFeatureFlagBits::eSampledImageYcbcrConversionLinearFilter:
+ return "SampledImageYcbcrConversionLinearFilter";
+ case FormatFeatureFlagBits::eSampledImageYcbcrConversionSeparateReconstructionFilter:
+ return "SampledImageYcbcrConversionSeparateReconstructionFilter";
+ case FormatFeatureFlagBits::eSampledImageYcbcrConversionChromaReconstructionExplicit:
+ return "SampledImageYcbcrConversionChromaReconstructionExplicit";
+ case FormatFeatureFlagBits::eSampledImageYcbcrConversionChromaReconstructionExplicitForceable:
+ return "SampledImageYcbcrConversionChromaReconstructionExplicitForceable";
+ case FormatFeatureFlagBits::eDisjoint: return "Disjoint";
+ case FormatFeatureFlagBits::eCositedChromaSamples: return "CositedChromaSamples";
+ case FormatFeatureFlagBits::eSampledImageFilterMinmax: return "SampledImageFilterMinmax";
+ case FormatFeatureFlagBits::eSampledImageFilterCubicIMG: return "SampledImageFilterCubicIMG";
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ case FormatFeatureFlagBits::eVideoDecodeOutputKHR: return "VideoDecodeOutputKHR";
+ case FormatFeatureFlagBits::eVideoDecodeDpbKHR: return "VideoDecodeDpbKHR";
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ case FormatFeatureFlagBits::eAccelerationStructureVertexBufferKHR: return "AccelerationStructureVertexBufferKHR";
+ case FormatFeatureFlagBits::eFragmentDensityMapEXT: return "FragmentDensityMapEXT";
+ case FormatFeatureFlagBits::eFragmentShadingRateAttachmentKHR: return "FragmentShadingRateAttachmentKHR";
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ case FormatFeatureFlagBits::eVideoEncodeInputKHR: return "VideoEncodeInputKHR";
+ case FormatFeatureFlagBits::eVideoEncodeDpbKHR: return "VideoEncodeDpbKHR";
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class ImageCreateFlagBits : VkImageCreateFlags
+ {
+ eSparseBinding = VK_IMAGE_CREATE_SPARSE_BINDING_BIT,
+ eSparseResidency = VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT,
+ eSparseAliased = VK_IMAGE_CREATE_SPARSE_ALIASED_BIT,
+ eMutableFormat = VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT,
+ eCubeCompatible = VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT,
+ eAlias = VK_IMAGE_CREATE_ALIAS_BIT,
+ eSplitInstanceBindRegions = VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT,
+ e2DArrayCompatible = VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT,
+ eBlockTexelViewCompatible = VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT,
+ eExtendedUsage = VK_IMAGE_CREATE_EXTENDED_USAGE_BIT,
+ eProtected = VK_IMAGE_CREATE_PROTECTED_BIT,
+ eDisjoint = VK_IMAGE_CREATE_DISJOINT_BIT,
+ eCornerSampledNV = VK_IMAGE_CREATE_CORNER_SAMPLED_BIT_NV,
+ eSampleLocationsCompatibleDepthEXT = VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT,
+ eSubsampledEXT = VK_IMAGE_CREATE_SUBSAMPLED_BIT_EXT,
+ e2DArrayCompatibleKHR = VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT_KHR,
+ eAliasKHR = VK_IMAGE_CREATE_ALIAS_BIT_KHR,
+ eBlockTexelViewCompatibleKHR = VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT_KHR,
+ eDisjointKHR = VK_IMAGE_CREATE_DISJOINT_BIT_KHR,
+ eExtendedUsageKHR = VK_IMAGE_CREATE_EXTENDED_USAGE_BIT_KHR,
+ eSplitInstanceBindRegionsKHR = VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( ImageCreateFlagBits value )
+ {
+ switch ( value )
+ {
+ case ImageCreateFlagBits::eSparseBinding: return "SparseBinding";
+ case ImageCreateFlagBits::eSparseResidency: return "SparseResidency";
+ case ImageCreateFlagBits::eSparseAliased: return "SparseAliased";
+ case ImageCreateFlagBits::eMutableFormat: return "MutableFormat";
+ case ImageCreateFlagBits::eCubeCompatible: return "CubeCompatible";
+ case ImageCreateFlagBits::eAlias: return "Alias";
+ case ImageCreateFlagBits::eSplitInstanceBindRegions: return "SplitInstanceBindRegions";
+ case ImageCreateFlagBits::e2DArrayCompatible: return "2DArrayCompatible";
+ case ImageCreateFlagBits::eBlockTexelViewCompatible: return "BlockTexelViewCompatible";
+ case ImageCreateFlagBits::eExtendedUsage: return "ExtendedUsage";
+ case ImageCreateFlagBits::eProtected: return "Protected";
+ case ImageCreateFlagBits::eDisjoint: return "Disjoint";
+ case ImageCreateFlagBits::eCornerSampledNV: return "CornerSampledNV";
+ case ImageCreateFlagBits::eSampleLocationsCompatibleDepthEXT: return "SampleLocationsCompatibleDepthEXT";
+ case ImageCreateFlagBits::eSubsampledEXT: return "SubsampledEXT";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class ImageTiling
+ {
+ eOptimal = VK_IMAGE_TILING_OPTIMAL,
+ eLinear = VK_IMAGE_TILING_LINEAR,
+ eDrmFormatModifierEXT = VK_IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( ImageTiling value )
+ {
+ switch ( value )
+ {
+ case ImageTiling::eOptimal: return "Optimal";
+ case ImageTiling::eLinear: return "Linear";
+ case ImageTiling::eDrmFormatModifierEXT: return "DrmFormatModifierEXT";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class ImageType
+ {
+ e1D = VK_IMAGE_TYPE_1D,
+ e2D = VK_IMAGE_TYPE_2D,
+ e3D = VK_IMAGE_TYPE_3D
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( ImageType value )
+ {
+ switch ( value )
+ {
+ case ImageType::e1D: return "1D";
+ case ImageType::e2D: return "2D";
+ case ImageType::e3D: return "3D";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class ImageUsageFlagBits : VkImageUsageFlags
+ {
+ eTransferSrc = VK_IMAGE_USAGE_TRANSFER_SRC_BIT,
+ eTransferDst = VK_IMAGE_USAGE_TRANSFER_DST_BIT,
+ eSampled = VK_IMAGE_USAGE_SAMPLED_BIT,
+ eStorage = VK_IMAGE_USAGE_STORAGE_BIT,
+ eColorAttachment = VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT,
+ eDepthStencilAttachment = VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT,
+ eTransientAttachment = VK_IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT,
+ eInputAttachment = VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT,
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ eVideoDecodeDstKHR = VK_IMAGE_USAGE_VIDEO_DECODE_DST_BIT_KHR,
+ eVideoDecodeSrcKHR = VK_IMAGE_USAGE_VIDEO_DECODE_SRC_BIT_KHR,
+ eVideoDecodeDpbKHR = VK_IMAGE_USAGE_VIDEO_DECODE_DPB_BIT_KHR,
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ eFragmentDensityMapEXT = VK_IMAGE_USAGE_FRAGMENT_DENSITY_MAP_BIT_EXT,
+ eFragmentShadingRateAttachmentKHR = VK_IMAGE_USAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR,
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ eVideoEncodeDstKHR = VK_IMAGE_USAGE_VIDEO_ENCODE_DST_BIT_KHR,
+ eVideoEncodeSrcKHR = VK_IMAGE_USAGE_VIDEO_ENCODE_SRC_BIT_KHR,
+ eVideoEncodeDpbKHR = VK_IMAGE_USAGE_VIDEO_ENCODE_DPB_BIT_KHR,
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ eShadingRateImageNV = VK_IMAGE_USAGE_SHADING_RATE_IMAGE_BIT_NV
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( ImageUsageFlagBits value )
+ {
+ switch ( value )
+ {
+ case ImageUsageFlagBits::eTransferSrc: return "TransferSrc";
+ case ImageUsageFlagBits::eTransferDst: return "TransferDst";
+ case ImageUsageFlagBits::eSampled: return "Sampled";
+ case ImageUsageFlagBits::eStorage: return "Storage";
+ case ImageUsageFlagBits::eColorAttachment: return "ColorAttachment";
+ case ImageUsageFlagBits::eDepthStencilAttachment: return "DepthStencilAttachment";
+ case ImageUsageFlagBits::eTransientAttachment: return "TransientAttachment";
+ case ImageUsageFlagBits::eInputAttachment: return "InputAttachment";
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ case ImageUsageFlagBits::eVideoDecodeDstKHR: return "VideoDecodeDstKHR";
+ case ImageUsageFlagBits::eVideoDecodeSrcKHR: return "VideoDecodeSrcKHR";
+ case ImageUsageFlagBits::eVideoDecodeDpbKHR: return "VideoDecodeDpbKHR";
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ case ImageUsageFlagBits::eFragmentDensityMapEXT: return "FragmentDensityMapEXT";
+ case ImageUsageFlagBits::eFragmentShadingRateAttachmentKHR: return "FragmentShadingRateAttachmentKHR";
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ case ImageUsageFlagBits::eVideoEncodeDstKHR: return "VideoEncodeDstKHR";
+ case ImageUsageFlagBits::eVideoEncodeSrcKHR: return "VideoEncodeSrcKHR";
+ case ImageUsageFlagBits::eVideoEncodeDpbKHR: return "VideoEncodeDpbKHR";
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class InternalAllocationType
+ {
+ eExecutable = VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( InternalAllocationType value )
+ {
+ switch ( value )
+ {
+ case InternalAllocationType::eExecutable: return "Executable";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class MemoryHeapFlagBits : VkMemoryHeapFlags
+ {
+ eDeviceLocal = VK_MEMORY_HEAP_DEVICE_LOCAL_BIT,
+ eMultiInstance = VK_MEMORY_HEAP_MULTI_INSTANCE_BIT,
+ eMultiInstanceKHR = VK_MEMORY_HEAP_MULTI_INSTANCE_BIT_KHR
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( MemoryHeapFlagBits value )
+ {
+ switch ( value )
+ {
+ case MemoryHeapFlagBits::eDeviceLocal: return "DeviceLocal";
+ case MemoryHeapFlagBits::eMultiInstance: return "MultiInstance";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class MemoryPropertyFlagBits : VkMemoryPropertyFlags
+ {
+ eDeviceLocal = VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT,
+ eHostVisible = VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT,
+ eHostCoherent = VK_MEMORY_PROPERTY_HOST_COHERENT_BIT,
+ eHostCached = VK_MEMORY_PROPERTY_HOST_CACHED_BIT,
+ eLazilyAllocated = VK_MEMORY_PROPERTY_LAZILY_ALLOCATED_BIT,
+ eProtected = VK_MEMORY_PROPERTY_PROTECTED_BIT,
+ eDeviceCoherentAMD = VK_MEMORY_PROPERTY_DEVICE_COHERENT_BIT_AMD,
+ eDeviceUncachedAMD = VK_MEMORY_PROPERTY_DEVICE_UNCACHED_BIT_AMD
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( MemoryPropertyFlagBits value )
+ {
+ switch ( value )
+ {
+ case MemoryPropertyFlagBits::eDeviceLocal: return "DeviceLocal";
+ case MemoryPropertyFlagBits::eHostVisible: return "HostVisible";
+ case MemoryPropertyFlagBits::eHostCoherent: return "HostCoherent";
+ case MemoryPropertyFlagBits::eHostCached: return "HostCached";
+ case MemoryPropertyFlagBits::eLazilyAllocated: return "LazilyAllocated";
+ case MemoryPropertyFlagBits::eProtected: return "Protected";
+ case MemoryPropertyFlagBits::eDeviceCoherentAMD: return "DeviceCoherentAMD";
+ case MemoryPropertyFlagBits::eDeviceUncachedAMD: return "DeviceUncachedAMD";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class PhysicalDeviceType
+ {
+ eOther = VK_PHYSICAL_DEVICE_TYPE_OTHER,
+ eIntegratedGpu = VK_PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU,
+ eDiscreteGpu = VK_PHYSICAL_DEVICE_TYPE_DISCRETE_GPU,
+ eVirtualGpu = VK_PHYSICAL_DEVICE_TYPE_VIRTUAL_GPU,
+ eCpu = VK_PHYSICAL_DEVICE_TYPE_CPU
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( PhysicalDeviceType value )
+ {
+ switch ( value )
+ {
+ case PhysicalDeviceType::eOther: return "Other";
+ case PhysicalDeviceType::eIntegratedGpu: return "IntegratedGpu";
+ case PhysicalDeviceType::eDiscreteGpu: return "DiscreteGpu";
+ case PhysicalDeviceType::eVirtualGpu: return "VirtualGpu";
+ case PhysicalDeviceType::eCpu: return "Cpu";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class QueueFlagBits : VkQueueFlags
+ {
+ eGraphics = VK_QUEUE_GRAPHICS_BIT,
+ eCompute = VK_QUEUE_COMPUTE_BIT,
+ eTransfer = VK_QUEUE_TRANSFER_BIT,
+ eSparseBinding = VK_QUEUE_SPARSE_BINDING_BIT,
+ eProtected = VK_QUEUE_PROTECTED_BIT,
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ eVideoDecodeKHR = VK_QUEUE_VIDEO_DECODE_BIT_KHR,
+ eVideoEncodeKHR = VK_QUEUE_VIDEO_ENCODE_BIT_KHR
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( QueueFlagBits value )
+ {
+ switch ( value )
+ {
+ case QueueFlagBits::eGraphics: return "Graphics";
+ case QueueFlagBits::eCompute: return "Compute";
+ case QueueFlagBits::eTransfer: return "Transfer";
+ case QueueFlagBits::eSparseBinding: return "SparseBinding";
+ case QueueFlagBits::eProtected: return "Protected";
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ case QueueFlagBits::eVideoDecodeKHR: return "VideoDecodeKHR";
+ case QueueFlagBits::eVideoEncodeKHR: return "VideoEncodeKHR";
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class SampleCountFlagBits : VkSampleCountFlags
+ {
+ e1 = VK_SAMPLE_COUNT_1_BIT,
+ e2 = VK_SAMPLE_COUNT_2_BIT,
+ e4 = VK_SAMPLE_COUNT_4_BIT,
+ e8 = VK_SAMPLE_COUNT_8_BIT,
+ e16 = VK_SAMPLE_COUNT_16_BIT,
+ e32 = VK_SAMPLE_COUNT_32_BIT,
+ e64 = VK_SAMPLE_COUNT_64_BIT
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( SampleCountFlagBits value )
+ {
+ switch ( value )
+ {
+ case SampleCountFlagBits::e1: return "1";
+ case SampleCountFlagBits::e2: return "2";
+ case SampleCountFlagBits::e4: return "4";
+ case SampleCountFlagBits::e8: return "8";
+ case SampleCountFlagBits::e16: return "16";
+ case SampleCountFlagBits::e32: return "32";
+ case SampleCountFlagBits::e64: return "64";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class SystemAllocationScope
+ {
+ eCommand = VK_SYSTEM_ALLOCATION_SCOPE_COMMAND,
+ eObject = VK_SYSTEM_ALLOCATION_SCOPE_OBJECT,
+ eCache = VK_SYSTEM_ALLOCATION_SCOPE_CACHE,
+ eDevice = VK_SYSTEM_ALLOCATION_SCOPE_DEVICE,
+ eInstance = VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( SystemAllocationScope value )
+ {
+ switch ( value )
+ {
+ case SystemAllocationScope::eCommand: return "Command";
+ case SystemAllocationScope::eObject: return "Object";
+ case SystemAllocationScope::eCache: return "Cache";
+ case SystemAllocationScope::eDevice: return "Device";
+ case SystemAllocationScope::eInstance: return "Instance";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class DeviceQueueCreateFlagBits : VkDeviceQueueCreateFlags
+ {
+ eProtected = VK_DEVICE_QUEUE_CREATE_PROTECTED_BIT
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( DeviceQueueCreateFlagBits value )
+ {
+ switch ( value )
+ {
+ case DeviceQueueCreateFlagBits::eProtected: return "Protected";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class PipelineStageFlagBits : VkPipelineStageFlags
+ {
+ eTopOfPipe = VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT,
+ eDrawIndirect = VK_PIPELINE_STAGE_DRAW_INDIRECT_BIT,
+ eVertexInput = VK_PIPELINE_STAGE_VERTEX_INPUT_BIT,
+ eVertexShader = VK_PIPELINE_STAGE_VERTEX_SHADER_BIT,
+ eTessellationControlShader = VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT,
+ eTessellationEvaluationShader = VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT,
+ eGeometryShader = VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT,
+ eFragmentShader = VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT,
+ eEarlyFragmentTests = VK_PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT,
+ eLateFragmentTests = VK_PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT,
+ eColorAttachmentOutput = VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT,
+ eComputeShader = VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT,
+ eTransfer = VK_PIPELINE_STAGE_TRANSFER_BIT,
+ eBottomOfPipe = VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT,
+ eHost = VK_PIPELINE_STAGE_HOST_BIT,
+ eAllGraphics = VK_PIPELINE_STAGE_ALL_GRAPHICS_BIT,
+ eAllCommands = VK_PIPELINE_STAGE_ALL_COMMANDS_BIT,
+ eTransformFeedbackEXT = VK_PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT,
+ eConditionalRenderingEXT = VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT,
+ eAccelerationStructureBuildKHR = VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_KHR,
+ eRayTracingShaderKHR = VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_KHR,
+ eTaskShaderNV = VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV,
+ eMeshShaderNV = VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV,
+ eFragmentDensityProcessEXT = VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT,
+ eFragmentShadingRateAttachmentKHR = VK_PIPELINE_STAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR,
+ eCommandPreprocessNV = VK_PIPELINE_STAGE_COMMAND_PREPROCESS_BIT_NV,
+ eNoneKHR = VK_PIPELINE_STAGE_NONE_KHR,
+ eAccelerationStructureBuildNV = VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_NV,
+ eRayTracingShaderNV = VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_NV,
+ eShadingRateImageNV = VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( PipelineStageFlagBits value )
+ {
+ switch ( value )
+ {
+ case PipelineStageFlagBits::eTopOfPipe: return "TopOfPipe";
+ case PipelineStageFlagBits::eDrawIndirect: return "DrawIndirect";
+ case PipelineStageFlagBits::eVertexInput: return "VertexInput";
+ case PipelineStageFlagBits::eVertexShader: return "VertexShader";
+ case PipelineStageFlagBits::eTessellationControlShader: return "TessellationControlShader";
+ case PipelineStageFlagBits::eTessellationEvaluationShader: return "TessellationEvaluationShader";
+ case PipelineStageFlagBits::eGeometryShader: return "GeometryShader";
+ case PipelineStageFlagBits::eFragmentShader: return "FragmentShader";
+ case PipelineStageFlagBits::eEarlyFragmentTests: return "EarlyFragmentTests";
+ case PipelineStageFlagBits::eLateFragmentTests: return "LateFragmentTests";
+ case PipelineStageFlagBits::eColorAttachmentOutput: return "ColorAttachmentOutput";
+ case PipelineStageFlagBits::eComputeShader: return "ComputeShader";
+ case PipelineStageFlagBits::eTransfer: return "Transfer";
+ case PipelineStageFlagBits::eBottomOfPipe: return "BottomOfPipe";
+ case PipelineStageFlagBits::eHost: return "Host";
+ case PipelineStageFlagBits::eAllGraphics: return "AllGraphics";
+ case PipelineStageFlagBits::eAllCommands: return "AllCommands";
+ case PipelineStageFlagBits::eTransformFeedbackEXT: return "TransformFeedbackEXT";
+ case PipelineStageFlagBits::eConditionalRenderingEXT: return "ConditionalRenderingEXT";
+ case PipelineStageFlagBits::eAccelerationStructureBuildKHR: return "AccelerationStructureBuildKHR";
+ case PipelineStageFlagBits::eRayTracingShaderKHR: return "RayTracingShaderKHR";
+ case PipelineStageFlagBits::eTaskShaderNV: return "TaskShaderNV";
+ case PipelineStageFlagBits::eMeshShaderNV: return "MeshShaderNV";
+ case PipelineStageFlagBits::eFragmentDensityProcessEXT: return "FragmentDensityProcessEXT";
+ case PipelineStageFlagBits::eFragmentShadingRateAttachmentKHR: return "FragmentShadingRateAttachmentKHR";
+ case PipelineStageFlagBits::eCommandPreprocessNV: return "CommandPreprocessNV";
+ case PipelineStageFlagBits::eNoneKHR: return "NoneKHR";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class ImageAspectFlagBits : VkImageAspectFlags
+ {
+ eColor = VK_IMAGE_ASPECT_COLOR_BIT,
+ eDepth = VK_IMAGE_ASPECT_DEPTH_BIT,
+ eStencil = VK_IMAGE_ASPECT_STENCIL_BIT,
+ eMetadata = VK_IMAGE_ASPECT_METADATA_BIT,
+ ePlane0 = VK_IMAGE_ASPECT_PLANE_0_BIT,
+ ePlane1 = VK_IMAGE_ASPECT_PLANE_1_BIT,
+ ePlane2 = VK_IMAGE_ASPECT_PLANE_2_BIT,
+ eMemoryPlane0EXT = VK_IMAGE_ASPECT_MEMORY_PLANE_0_BIT_EXT,
+ eMemoryPlane1EXT = VK_IMAGE_ASPECT_MEMORY_PLANE_1_BIT_EXT,
+ eMemoryPlane2EXT = VK_IMAGE_ASPECT_MEMORY_PLANE_2_BIT_EXT,
+ eMemoryPlane3EXT = VK_IMAGE_ASPECT_MEMORY_PLANE_3_BIT_EXT,
+ ePlane0KHR = VK_IMAGE_ASPECT_PLANE_0_BIT_KHR,
+ ePlane1KHR = VK_IMAGE_ASPECT_PLANE_1_BIT_KHR,
+ ePlane2KHR = VK_IMAGE_ASPECT_PLANE_2_BIT_KHR
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( ImageAspectFlagBits value )
+ {
+ switch ( value )
+ {
+ case ImageAspectFlagBits::eColor: return "Color";
+ case ImageAspectFlagBits::eDepth: return "Depth";
+ case ImageAspectFlagBits::eStencil: return "Stencil";
+ case ImageAspectFlagBits::eMetadata: return "Metadata";
+ case ImageAspectFlagBits::ePlane0: return "Plane0";
+ case ImageAspectFlagBits::ePlane1: return "Plane1";
+ case ImageAspectFlagBits::ePlane2: return "Plane2";
+ case ImageAspectFlagBits::eMemoryPlane0EXT: return "MemoryPlane0EXT";
+ case ImageAspectFlagBits::eMemoryPlane1EXT: return "MemoryPlane1EXT";
+ case ImageAspectFlagBits::eMemoryPlane2EXT: return "MemoryPlane2EXT";
+ case ImageAspectFlagBits::eMemoryPlane3EXT: return "MemoryPlane3EXT";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class SparseImageFormatFlagBits : VkSparseImageFormatFlags
+ {
+ eSingleMiptail = VK_SPARSE_IMAGE_FORMAT_SINGLE_MIPTAIL_BIT,
+ eAlignedMipSize = VK_SPARSE_IMAGE_FORMAT_ALIGNED_MIP_SIZE_BIT,
+ eNonstandardBlockSize = VK_SPARSE_IMAGE_FORMAT_NONSTANDARD_BLOCK_SIZE_BIT
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( SparseImageFormatFlagBits value )
+ {
+ switch ( value )
+ {
+ case SparseImageFormatFlagBits::eSingleMiptail: return "SingleMiptail";
+ case SparseImageFormatFlagBits::eAlignedMipSize: return "AlignedMipSize";
+ case SparseImageFormatFlagBits::eNonstandardBlockSize: return "NonstandardBlockSize";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class SparseMemoryBindFlagBits : VkSparseMemoryBindFlags
+ {
+ eMetadata = VK_SPARSE_MEMORY_BIND_METADATA_BIT
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( SparseMemoryBindFlagBits value )
+ {
+ switch ( value )
+ {
+ case SparseMemoryBindFlagBits::eMetadata: return "Metadata";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class FenceCreateFlagBits : VkFenceCreateFlags
+ {
+ eSignaled = VK_FENCE_CREATE_SIGNALED_BIT
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( FenceCreateFlagBits value )
+ {
+ switch ( value )
+ {
+ case FenceCreateFlagBits::eSignaled: return "Signaled";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class EventCreateFlagBits : VkEventCreateFlags
+ {
+ eDeviceOnlyKHR = VK_EVENT_CREATE_DEVICE_ONLY_BIT_KHR
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( EventCreateFlagBits value )
+ {
+ switch ( value )
+ {
+ case EventCreateFlagBits::eDeviceOnlyKHR: return "DeviceOnlyKHR";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class QueryPipelineStatisticFlagBits : VkQueryPipelineStatisticFlags
+ {
+ eInputAssemblyVertices = VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_VERTICES_BIT,
+ eInputAssemblyPrimitives = VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_PRIMITIVES_BIT,
+ eVertexShaderInvocations = VK_QUERY_PIPELINE_STATISTIC_VERTEX_SHADER_INVOCATIONS_BIT,
+ eGeometryShaderInvocations = VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_INVOCATIONS_BIT,
+ eGeometryShaderPrimitives = VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_PRIMITIVES_BIT,
+ eClippingInvocations = VK_QUERY_PIPELINE_STATISTIC_CLIPPING_INVOCATIONS_BIT,
+ eClippingPrimitives = VK_QUERY_PIPELINE_STATISTIC_CLIPPING_PRIMITIVES_BIT,
+ eFragmentShaderInvocations = VK_QUERY_PIPELINE_STATISTIC_FRAGMENT_SHADER_INVOCATIONS_BIT,
+ eTessellationControlShaderPatches = VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_CONTROL_SHADER_PATCHES_BIT,
+ eTessellationEvaluationShaderInvocations =
+ VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_EVALUATION_SHADER_INVOCATIONS_BIT,
+ eComputeShaderInvocations = VK_QUERY_PIPELINE_STATISTIC_COMPUTE_SHADER_INVOCATIONS_BIT
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( QueryPipelineStatisticFlagBits value )
+ {
+ switch ( value )
+ {
+ case QueryPipelineStatisticFlagBits::eInputAssemblyVertices: return "InputAssemblyVertices";
+ case QueryPipelineStatisticFlagBits::eInputAssemblyPrimitives: return "InputAssemblyPrimitives";
+ case QueryPipelineStatisticFlagBits::eVertexShaderInvocations: return "VertexShaderInvocations";
+ case QueryPipelineStatisticFlagBits::eGeometryShaderInvocations: return "GeometryShaderInvocations";
+ case QueryPipelineStatisticFlagBits::eGeometryShaderPrimitives: return "GeometryShaderPrimitives";
+ case QueryPipelineStatisticFlagBits::eClippingInvocations: return "ClippingInvocations";
+ case QueryPipelineStatisticFlagBits::eClippingPrimitives: return "ClippingPrimitives";
+ case QueryPipelineStatisticFlagBits::eFragmentShaderInvocations: return "FragmentShaderInvocations";
+ case QueryPipelineStatisticFlagBits::eTessellationControlShaderPatches: return "TessellationControlShaderPatches";
+ case QueryPipelineStatisticFlagBits::eTessellationEvaluationShaderInvocations:
+ return "TessellationEvaluationShaderInvocations";
+ case QueryPipelineStatisticFlagBits::eComputeShaderInvocations: return "ComputeShaderInvocations";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class QueryResultFlagBits : VkQueryResultFlags
+ {
+ e64 = VK_QUERY_RESULT_64_BIT,
+ eWait = VK_QUERY_RESULT_WAIT_BIT,
+ eWithAvailability = VK_QUERY_RESULT_WITH_AVAILABILITY_BIT,
+ ePartial = VK_QUERY_RESULT_PARTIAL_BIT,
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ eWithStatusKHR = VK_QUERY_RESULT_WITH_STATUS_BIT_KHR
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( QueryResultFlagBits value )
+ {
+ switch ( value )
+ {
+ case QueryResultFlagBits::e64: return "64";
+ case QueryResultFlagBits::eWait: return "Wait";
+ case QueryResultFlagBits::eWithAvailability: return "WithAvailability";
+ case QueryResultFlagBits::ePartial: return "Partial";
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ case QueryResultFlagBits::eWithStatusKHR: return "WithStatusKHR";
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class QueryType
+ {
+ eOcclusion = VK_QUERY_TYPE_OCCLUSION,
+ ePipelineStatistics = VK_QUERY_TYPE_PIPELINE_STATISTICS,
+ eTimestamp = VK_QUERY_TYPE_TIMESTAMP,
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ eResultStatusOnlyKHR = VK_QUERY_TYPE_RESULT_STATUS_ONLY_KHR,
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ eTransformFeedbackStreamEXT = VK_QUERY_TYPE_TRANSFORM_FEEDBACK_STREAM_EXT,
+ ePerformanceQueryKHR = VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR,
+ eAccelerationStructureCompactedSizeKHR = VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR,
+ eAccelerationStructureSerializationSizeKHR = VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_SIZE_KHR,
+ eAccelerationStructureCompactedSizeNV = VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_NV,
+ ePerformanceQueryINTEL = VK_QUERY_TYPE_PERFORMANCE_QUERY_INTEL,
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ eVideoEncodeBitstreamBufferRangeKHR = VK_QUERY_TYPE_VIDEO_ENCODE_BITSTREAM_BUFFER_RANGE_KHR
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( QueryType value )
+ {
+ switch ( value )
+ {
+ case QueryType::eOcclusion: return "Occlusion";
+ case QueryType::ePipelineStatistics: return "PipelineStatistics";
+ case QueryType::eTimestamp: return "Timestamp";
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ case QueryType::eResultStatusOnlyKHR: return "ResultStatusOnlyKHR";
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ case QueryType::eTransformFeedbackStreamEXT: return "TransformFeedbackStreamEXT";
+ case QueryType::ePerformanceQueryKHR: return "PerformanceQueryKHR";
+ case QueryType::eAccelerationStructureCompactedSizeKHR: return "AccelerationStructureCompactedSizeKHR";
+ case QueryType::eAccelerationStructureSerializationSizeKHR: return "AccelerationStructureSerializationSizeKHR";
+ case QueryType::eAccelerationStructureCompactedSizeNV: return "AccelerationStructureCompactedSizeNV";
+ case QueryType::ePerformanceQueryINTEL: return "PerformanceQueryINTEL";
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ case QueryType::eVideoEncodeBitstreamBufferRangeKHR: return "VideoEncodeBitstreamBufferRangeKHR";
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class BufferCreateFlagBits : VkBufferCreateFlags
+ {
+ eSparseBinding = VK_BUFFER_CREATE_SPARSE_BINDING_BIT,
+ eSparseResidency = VK_BUFFER_CREATE_SPARSE_RESIDENCY_BIT,
+ eSparseAliased = VK_BUFFER_CREATE_SPARSE_ALIASED_BIT,
+ eProtected = VK_BUFFER_CREATE_PROTECTED_BIT,
+ eDeviceAddressCaptureReplay = VK_BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT,
+ eDeviceAddressCaptureReplayEXT = VK_BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_EXT,
+ eDeviceAddressCaptureReplayKHR = VK_BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_KHR
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( BufferCreateFlagBits value )
+ {
+ switch ( value )
+ {
+ case BufferCreateFlagBits::eSparseBinding: return "SparseBinding";
+ case BufferCreateFlagBits::eSparseResidency: return "SparseResidency";
+ case BufferCreateFlagBits::eSparseAliased: return "SparseAliased";
+ case BufferCreateFlagBits::eProtected: return "Protected";
+ case BufferCreateFlagBits::eDeviceAddressCaptureReplay: return "DeviceAddressCaptureReplay";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class BufferUsageFlagBits : VkBufferUsageFlags
+ {
+ eTransferSrc = VK_BUFFER_USAGE_TRANSFER_SRC_BIT,
+ eTransferDst = VK_BUFFER_USAGE_TRANSFER_DST_BIT,
+ eUniformTexelBuffer = VK_BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT,
+ eStorageTexelBuffer = VK_BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT,
+ eUniformBuffer = VK_BUFFER_USAGE_UNIFORM_BUFFER_BIT,
+ eStorageBuffer = VK_BUFFER_USAGE_STORAGE_BUFFER_BIT,
+ eIndexBuffer = VK_BUFFER_USAGE_INDEX_BUFFER_BIT,
+ eVertexBuffer = VK_BUFFER_USAGE_VERTEX_BUFFER_BIT,
+ eIndirectBuffer = VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT,
+ eShaderDeviceAddress = VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT,
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ eVideoDecodeSrcKHR = VK_BUFFER_USAGE_VIDEO_DECODE_SRC_BIT_KHR,
+ eVideoDecodeDstKHR = VK_BUFFER_USAGE_VIDEO_DECODE_DST_BIT_KHR,
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ eTransformFeedbackBufferEXT = VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_BUFFER_BIT_EXT,
+ eTransformFeedbackCounterBufferEXT = VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_COUNTER_BUFFER_BIT_EXT,
+ eConditionalRenderingEXT = VK_BUFFER_USAGE_CONDITIONAL_RENDERING_BIT_EXT,
+ eAccelerationStructureBuildInputReadOnlyKHR = VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_BIT_KHR,
+ eAccelerationStructureStorageKHR = VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_STORAGE_BIT_KHR,
+ eShaderBindingTableKHR = VK_BUFFER_USAGE_SHADER_BINDING_TABLE_BIT_KHR,
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ eVideoEncodeDstKHR = VK_BUFFER_USAGE_VIDEO_ENCODE_DST_BIT_KHR,
+ eVideoEncodeSrcKHR = VK_BUFFER_USAGE_VIDEO_ENCODE_SRC_BIT_KHR,
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ eRayTracingNV = VK_BUFFER_USAGE_RAY_TRACING_BIT_NV,
+ eShaderDeviceAddressEXT = VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT_EXT,
+ eShaderDeviceAddressKHR = VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT_KHR
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( BufferUsageFlagBits value )
+ {
+ switch ( value )
+ {
+ case BufferUsageFlagBits::eTransferSrc: return "TransferSrc";
+ case BufferUsageFlagBits::eTransferDst: return "TransferDst";
+ case BufferUsageFlagBits::eUniformTexelBuffer: return "UniformTexelBuffer";
+ case BufferUsageFlagBits::eStorageTexelBuffer: return "StorageTexelBuffer";
+ case BufferUsageFlagBits::eUniformBuffer: return "UniformBuffer";
+ case BufferUsageFlagBits::eStorageBuffer: return "StorageBuffer";
+ case BufferUsageFlagBits::eIndexBuffer: return "IndexBuffer";
+ case BufferUsageFlagBits::eVertexBuffer: return "VertexBuffer";
+ case BufferUsageFlagBits::eIndirectBuffer: return "IndirectBuffer";
+ case BufferUsageFlagBits::eShaderDeviceAddress: return "ShaderDeviceAddress";
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ case BufferUsageFlagBits::eVideoDecodeSrcKHR: return "VideoDecodeSrcKHR";
+ case BufferUsageFlagBits::eVideoDecodeDstKHR: return "VideoDecodeDstKHR";
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ case BufferUsageFlagBits::eTransformFeedbackBufferEXT: return "TransformFeedbackBufferEXT";
+ case BufferUsageFlagBits::eTransformFeedbackCounterBufferEXT: return "TransformFeedbackCounterBufferEXT";
+ case BufferUsageFlagBits::eConditionalRenderingEXT: return "ConditionalRenderingEXT";
+ case BufferUsageFlagBits::eAccelerationStructureBuildInputReadOnlyKHR:
+ return "AccelerationStructureBuildInputReadOnlyKHR";
+ case BufferUsageFlagBits::eAccelerationStructureStorageKHR: return "AccelerationStructureStorageKHR";
+ case BufferUsageFlagBits::eShaderBindingTableKHR: return "ShaderBindingTableKHR";
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ case BufferUsageFlagBits::eVideoEncodeDstKHR: return "VideoEncodeDstKHR";
+ case BufferUsageFlagBits::eVideoEncodeSrcKHR: return "VideoEncodeSrcKHR";
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class SharingMode
+ {
+ eExclusive = VK_SHARING_MODE_EXCLUSIVE,
+ eConcurrent = VK_SHARING_MODE_CONCURRENT
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( SharingMode value )
+ {
+ switch ( value )
+ {
+ case SharingMode::eExclusive: return "Exclusive";
+ case SharingMode::eConcurrent: return "Concurrent";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class ImageLayout
+ {
+ eUndefined = VK_IMAGE_LAYOUT_UNDEFINED,
+ eGeneral = VK_IMAGE_LAYOUT_GENERAL,
+ eColorAttachmentOptimal = VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL,
+ eDepthStencilAttachmentOptimal = VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL,
+ eDepthStencilReadOnlyOptimal = VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL,
+ eShaderReadOnlyOptimal = VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL,
+ eTransferSrcOptimal = VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL,
+ eTransferDstOptimal = VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL,
+ ePreinitialized = VK_IMAGE_LAYOUT_PREINITIALIZED,
+ eDepthReadOnlyStencilAttachmentOptimal = VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL,
+ eDepthAttachmentStencilReadOnlyOptimal = VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL,
+ eDepthAttachmentOptimal = VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL,
+ eDepthReadOnlyOptimal = VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL,
+ eStencilAttachmentOptimal = VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL,
+ eStencilReadOnlyOptimal = VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL,
+ ePresentSrcKHR = VK_IMAGE_LAYOUT_PRESENT_SRC_KHR,
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ eVideoDecodeDstKHR = VK_IMAGE_LAYOUT_VIDEO_DECODE_DST_KHR,
+ eVideoDecodeSrcKHR = VK_IMAGE_LAYOUT_VIDEO_DECODE_SRC_KHR,
+ eVideoDecodeDpbKHR = VK_IMAGE_LAYOUT_VIDEO_DECODE_DPB_KHR,
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ eSharedPresentKHR = VK_IMAGE_LAYOUT_SHARED_PRESENT_KHR,
+ eFragmentDensityMapOptimalEXT = VK_IMAGE_LAYOUT_FRAGMENT_DENSITY_MAP_OPTIMAL_EXT,
+ eFragmentShadingRateAttachmentOptimalKHR = VK_IMAGE_LAYOUT_FRAGMENT_SHADING_RATE_ATTACHMENT_OPTIMAL_KHR,
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ eVideoEncodeDstKHR = VK_IMAGE_LAYOUT_VIDEO_ENCODE_DST_KHR,
+ eVideoEncodeSrcKHR = VK_IMAGE_LAYOUT_VIDEO_ENCODE_SRC_KHR,
+ eVideoEncodeDpbKHR = VK_IMAGE_LAYOUT_VIDEO_ENCODE_DPB_KHR,
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ eReadOnlyOptimalKHR = VK_IMAGE_LAYOUT_READ_ONLY_OPTIMAL_KHR,
+ eAttachmentOptimalKHR = VK_IMAGE_LAYOUT_ATTACHMENT_OPTIMAL_KHR,
+ eDepthAttachmentOptimalKHR = VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL_KHR,
+ eDepthAttachmentStencilReadOnlyOptimalKHR = VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL_KHR,
+ eDepthReadOnlyOptimalKHR = VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL_KHR,
+ eDepthReadOnlyStencilAttachmentOptimalKHR = VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL_KHR,
+ eShadingRateOptimalNV = VK_IMAGE_LAYOUT_SHADING_RATE_OPTIMAL_NV,
+ eStencilAttachmentOptimalKHR = VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL_KHR,
+ eStencilReadOnlyOptimalKHR = VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL_KHR
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( ImageLayout value )
+ {
+ switch ( value )
+ {
+ case ImageLayout::eUndefined: return "Undefined";
+ case ImageLayout::eGeneral: return "General";
+ case ImageLayout::eColorAttachmentOptimal: return "ColorAttachmentOptimal";
+ case ImageLayout::eDepthStencilAttachmentOptimal: return "DepthStencilAttachmentOptimal";
+ case ImageLayout::eDepthStencilReadOnlyOptimal: return "DepthStencilReadOnlyOptimal";
+ case ImageLayout::eShaderReadOnlyOptimal: return "ShaderReadOnlyOptimal";
+ case ImageLayout::eTransferSrcOptimal: return "TransferSrcOptimal";
+ case ImageLayout::eTransferDstOptimal: return "TransferDstOptimal";
+ case ImageLayout::ePreinitialized: return "Preinitialized";
+ case ImageLayout::eDepthReadOnlyStencilAttachmentOptimal: return "DepthReadOnlyStencilAttachmentOptimal";
+ case ImageLayout::eDepthAttachmentStencilReadOnlyOptimal: return "DepthAttachmentStencilReadOnlyOptimal";
+ case ImageLayout::eDepthAttachmentOptimal: return "DepthAttachmentOptimal";
+ case ImageLayout::eDepthReadOnlyOptimal: return "DepthReadOnlyOptimal";
+ case ImageLayout::eStencilAttachmentOptimal: return "StencilAttachmentOptimal";
+ case ImageLayout::eStencilReadOnlyOptimal: return "StencilReadOnlyOptimal";
+ case ImageLayout::ePresentSrcKHR: return "PresentSrcKHR";
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ case ImageLayout::eVideoDecodeDstKHR: return "VideoDecodeDstKHR";
+ case ImageLayout::eVideoDecodeSrcKHR: return "VideoDecodeSrcKHR";
+ case ImageLayout::eVideoDecodeDpbKHR: return "VideoDecodeDpbKHR";
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ case ImageLayout::eSharedPresentKHR: return "SharedPresentKHR";
+ case ImageLayout::eFragmentDensityMapOptimalEXT: return "FragmentDensityMapOptimalEXT";
+ case ImageLayout::eFragmentShadingRateAttachmentOptimalKHR: return "FragmentShadingRateAttachmentOptimalKHR";
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ case ImageLayout::eVideoEncodeDstKHR: return "VideoEncodeDstKHR";
+ case ImageLayout::eVideoEncodeSrcKHR: return "VideoEncodeSrcKHR";
+ case ImageLayout::eVideoEncodeDpbKHR: return "VideoEncodeDpbKHR";
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ case ImageLayout::eReadOnlyOptimalKHR: return "ReadOnlyOptimalKHR";
+ case ImageLayout::eAttachmentOptimalKHR: return "AttachmentOptimalKHR";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class ComponentSwizzle
+ {
+ eIdentity = VK_COMPONENT_SWIZZLE_IDENTITY,
+ eZero = VK_COMPONENT_SWIZZLE_ZERO,
+ eOne = VK_COMPONENT_SWIZZLE_ONE,
+ eR = VK_COMPONENT_SWIZZLE_R,
+ eG = VK_COMPONENT_SWIZZLE_G,
+ eB = VK_COMPONENT_SWIZZLE_B,
+ eA = VK_COMPONENT_SWIZZLE_A
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( ComponentSwizzle value )
+ {
+ switch ( value )
+ {
+ case ComponentSwizzle::eIdentity: return "Identity";
+ case ComponentSwizzle::eZero: return "Zero";
+ case ComponentSwizzle::eOne: return "One";
+ case ComponentSwizzle::eR: return "R";
+ case ComponentSwizzle::eG: return "G";
+ case ComponentSwizzle::eB: return "B";
+ case ComponentSwizzle::eA: return "A";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class ImageViewCreateFlagBits : VkImageViewCreateFlags
+ {
+ eFragmentDensityMapDynamicEXT = VK_IMAGE_VIEW_CREATE_FRAGMENT_DENSITY_MAP_DYNAMIC_BIT_EXT,
+ eFragmentDensityMapDeferredEXT = VK_IMAGE_VIEW_CREATE_FRAGMENT_DENSITY_MAP_DEFERRED_BIT_EXT
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( ImageViewCreateFlagBits value )
+ {
+ switch ( value )
+ {
+ case ImageViewCreateFlagBits::eFragmentDensityMapDynamicEXT: return "FragmentDensityMapDynamicEXT";
+ case ImageViewCreateFlagBits::eFragmentDensityMapDeferredEXT: return "FragmentDensityMapDeferredEXT";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class ImageViewType
+ {
+ e1D = VK_IMAGE_VIEW_TYPE_1D,
+ e2D = VK_IMAGE_VIEW_TYPE_2D,
+ e3D = VK_IMAGE_VIEW_TYPE_3D,
+ eCube = VK_IMAGE_VIEW_TYPE_CUBE,
+ e1DArray = VK_IMAGE_VIEW_TYPE_1D_ARRAY,
+ e2DArray = VK_IMAGE_VIEW_TYPE_2D_ARRAY,
+ eCubeArray = VK_IMAGE_VIEW_TYPE_CUBE_ARRAY
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( ImageViewType value )
+ {
+ switch ( value )
+ {
+ case ImageViewType::e1D: return "1D";
+ case ImageViewType::e2D: return "2D";
+ case ImageViewType::e3D: return "3D";
+ case ImageViewType::eCube: return "Cube";
+ case ImageViewType::e1DArray: return "1DArray";
+ case ImageViewType::e2DArray: return "2DArray";
+ case ImageViewType::eCubeArray: return "CubeArray";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class ShaderModuleCreateFlagBits : VkShaderModuleCreateFlags
+ {
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( ShaderModuleCreateFlagBits )
+ {
+ return "(void)";
+ }
+
+ enum class PipelineCacheCreateFlagBits : VkPipelineCacheCreateFlags
+ {
+ eExternallySynchronizedEXT = VK_PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT_EXT
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( PipelineCacheCreateFlagBits value )
+ {
+ switch ( value )
+ {
+ case PipelineCacheCreateFlagBits::eExternallySynchronizedEXT: return "ExternallySynchronizedEXT";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class BlendFactor
+ {
+ eZero = VK_BLEND_FACTOR_ZERO,
+ eOne = VK_BLEND_FACTOR_ONE,
+ eSrcColor = VK_BLEND_FACTOR_SRC_COLOR,
+ eOneMinusSrcColor = VK_BLEND_FACTOR_ONE_MINUS_SRC_COLOR,
+ eDstColor = VK_BLEND_FACTOR_DST_COLOR,
+ eOneMinusDstColor = VK_BLEND_FACTOR_ONE_MINUS_DST_COLOR,
+ eSrcAlpha = VK_BLEND_FACTOR_SRC_ALPHA,
+ eOneMinusSrcAlpha = VK_BLEND_FACTOR_ONE_MINUS_SRC_ALPHA,
+ eDstAlpha = VK_BLEND_FACTOR_DST_ALPHA,
+ eOneMinusDstAlpha = VK_BLEND_FACTOR_ONE_MINUS_DST_ALPHA,
+ eConstantColor = VK_BLEND_FACTOR_CONSTANT_COLOR,
+ eOneMinusConstantColor = VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_COLOR,
+ eConstantAlpha = VK_BLEND_FACTOR_CONSTANT_ALPHA,
+ eOneMinusConstantAlpha = VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_ALPHA,
+ eSrcAlphaSaturate = VK_BLEND_FACTOR_SRC_ALPHA_SATURATE,
+ eSrc1Color = VK_BLEND_FACTOR_SRC1_COLOR,
+ eOneMinusSrc1Color = VK_BLEND_FACTOR_ONE_MINUS_SRC1_COLOR,
+ eSrc1Alpha = VK_BLEND_FACTOR_SRC1_ALPHA,
+ eOneMinusSrc1Alpha = VK_BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( BlendFactor value )
+ {
+ switch ( value )
+ {
+ case BlendFactor::eZero: return "Zero";
+ case BlendFactor::eOne: return "One";
+ case BlendFactor::eSrcColor: return "SrcColor";
+ case BlendFactor::eOneMinusSrcColor: return "OneMinusSrcColor";
+ case BlendFactor::eDstColor: return "DstColor";
+ case BlendFactor::eOneMinusDstColor: return "OneMinusDstColor";
+ case BlendFactor::eSrcAlpha: return "SrcAlpha";
+ case BlendFactor::eOneMinusSrcAlpha: return "OneMinusSrcAlpha";
+ case BlendFactor::eDstAlpha: return "DstAlpha";
+ case BlendFactor::eOneMinusDstAlpha: return "OneMinusDstAlpha";
+ case BlendFactor::eConstantColor: return "ConstantColor";
+ case BlendFactor::eOneMinusConstantColor: return "OneMinusConstantColor";
+ case BlendFactor::eConstantAlpha: return "ConstantAlpha";
+ case BlendFactor::eOneMinusConstantAlpha: return "OneMinusConstantAlpha";
+ case BlendFactor::eSrcAlphaSaturate: return "SrcAlphaSaturate";
+ case BlendFactor::eSrc1Color: return "Src1Color";
+ case BlendFactor::eOneMinusSrc1Color: return "OneMinusSrc1Color";
+ case BlendFactor::eSrc1Alpha: return "Src1Alpha";
+ case BlendFactor::eOneMinusSrc1Alpha: return "OneMinusSrc1Alpha";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class BlendOp
+ {
+ eAdd = VK_BLEND_OP_ADD,
+ eSubtract = VK_BLEND_OP_SUBTRACT,
+ eReverseSubtract = VK_BLEND_OP_REVERSE_SUBTRACT,
+ eMin = VK_BLEND_OP_MIN,
+ eMax = VK_BLEND_OP_MAX,
+ eZeroEXT = VK_BLEND_OP_ZERO_EXT,
+ eSrcEXT = VK_BLEND_OP_SRC_EXT,
+ eDstEXT = VK_BLEND_OP_DST_EXT,
+ eSrcOverEXT = VK_BLEND_OP_SRC_OVER_EXT,
+ eDstOverEXT = VK_BLEND_OP_DST_OVER_EXT,
+ eSrcInEXT = VK_BLEND_OP_SRC_IN_EXT,
+ eDstInEXT = VK_BLEND_OP_DST_IN_EXT,
+ eSrcOutEXT = VK_BLEND_OP_SRC_OUT_EXT,
+ eDstOutEXT = VK_BLEND_OP_DST_OUT_EXT,
+ eSrcAtopEXT = VK_BLEND_OP_SRC_ATOP_EXT,
+ eDstAtopEXT = VK_BLEND_OP_DST_ATOP_EXT,
+ eXorEXT = VK_BLEND_OP_XOR_EXT,
+ eMultiplyEXT = VK_BLEND_OP_MULTIPLY_EXT,
+ eScreenEXT = VK_BLEND_OP_SCREEN_EXT,
+ eOverlayEXT = VK_BLEND_OP_OVERLAY_EXT,
+ eDarkenEXT = VK_BLEND_OP_DARKEN_EXT,
+ eLightenEXT = VK_BLEND_OP_LIGHTEN_EXT,
+ eColordodgeEXT = VK_BLEND_OP_COLORDODGE_EXT,
+ eColorburnEXT = VK_BLEND_OP_COLORBURN_EXT,
+ eHardlightEXT = VK_BLEND_OP_HARDLIGHT_EXT,
+ eSoftlightEXT = VK_BLEND_OP_SOFTLIGHT_EXT,
+ eDifferenceEXT = VK_BLEND_OP_DIFFERENCE_EXT,
+ eExclusionEXT = VK_BLEND_OP_EXCLUSION_EXT,
+ eInvertEXT = VK_BLEND_OP_INVERT_EXT,
+ eInvertRgbEXT = VK_BLEND_OP_INVERT_RGB_EXT,
+ eLineardodgeEXT = VK_BLEND_OP_LINEARDODGE_EXT,
+ eLinearburnEXT = VK_BLEND_OP_LINEARBURN_EXT,
+ eVividlightEXT = VK_BLEND_OP_VIVIDLIGHT_EXT,
+ eLinearlightEXT = VK_BLEND_OP_LINEARLIGHT_EXT,
+ ePinlightEXT = VK_BLEND_OP_PINLIGHT_EXT,
+ eHardmixEXT = VK_BLEND_OP_HARDMIX_EXT,
+ eHslHueEXT = VK_BLEND_OP_HSL_HUE_EXT,
+ eHslSaturationEXT = VK_BLEND_OP_HSL_SATURATION_EXT,
+ eHslColorEXT = VK_BLEND_OP_HSL_COLOR_EXT,
+ eHslLuminosityEXT = VK_BLEND_OP_HSL_LUMINOSITY_EXT,
+ ePlusEXT = VK_BLEND_OP_PLUS_EXT,
+ ePlusClampedEXT = VK_BLEND_OP_PLUS_CLAMPED_EXT,
+ ePlusClampedAlphaEXT = VK_BLEND_OP_PLUS_CLAMPED_ALPHA_EXT,
+ ePlusDarkerEXT = VK_BLEND_OP_PLUS_DARKER_EXT,
+ eMinusEXT = VK_BLEND_OP_MINUS_EXT,
+ eMinusClampedEXT = VK_BLEND_OP_MINUS_CLAMPED_EXT,
+ eContrastEXT = VK_BLEND_OP_CONTRAST_EXT,
+ eInvertOvgEXT = VK_BLEND_OP_INVERT_OVG_EXT,
+ eRedEXT = VK_BLEND_OP_RED_EXT,
+ eGreenEXT = VK_BLEND_OP_GREEN_EXT,
+ eBlueEXT = VK_BLEND_OP_BLUE_EXT
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( BlendOp value )
+ {
+ switch ( value )
+ {
+ case BlendOp::eAdd: return "Add";
+ case BlendOp::eSubtract: return "Subtract";
+ case BlendOp::eReverseSubtract: return "ReverseSubtract";
+ case BlendOp::eMin: return "Min";
+ case BlendOp::eMax: return "Max";
+ case BlendOp::eZeroEXT: return "ZeroEXT";
+ case BlendOp::eSrcEXT: return "SrcEXT";
+ case BlendOp::eDstEXT: return "DstEXT";
+ case BlendOp::eSrcOverEXT: return "SrcOverEXT";
+ case BlendOp::eDstOverEXT: return "DstOverEXT";
+ case BlendOp::eSrcInEXT: return "SrcInEXT";
+ case BlendOp::eDstInEXT: return "DstInEXT";
+ case BlendOp::eSrcOutEXT: return "SrcOutEXT";
+ case BlendOp::eDstOutEXT: return "DstOutEXT";
+ case BlendOp::eSrcAtopEXT: return "SrcAtopEXT";
+ case BlendOp::eDstAtopEXT: return "DstAtopEXT";
+ case BlendOp::eXorEXT: return "XorEXT";
+ case BlendOp::eMultiplyEXT: return "MultiplyEXT";
+ case BlendOp::eScreenEXT: return "ScreenEXT";
+ case BlendOp::eOverlayEXT: return "OverlayEXT";
+ case BlendOp::eDarkenEXT: return "DarkenEXT";
+ case BlendOp::eLightenEXT: return "LightenEXT";
+ case BlendOp::eColordodgeEXT: return "ColordodgeEXT";
+ case BlendOp::eColorburnEXT: return "ColorburnEXT";
+ case BlendOp::eHardlightEXT: return "HardlightEXT";
+ case BlendOp::eSoftlightEXT: return "SoftlightEXT";
+ case BlendOp::eDifferenceEXT: return "DifferenceEXT";
+ case BlendOp::eExclusionEXT: return "ExclusionEXT";
+ case BlendOp::eInvertEXT: return "InvertEXT";
+ case BlendOp::eInvertRgbEXT: return "InvertRgbEXT";
+ case BlendOp::eLineardodgeEXT: return "LineardodgeEXT";
+ case BlendOp::eLinearburnEXT: return "LinearburnEXT";
+ case BlendOp::eVividlightEXT: return "VividlightEXT";
+ case BlendOp::eLinearlightEXT: return "LinearlightEXT";
+ case BlendOp::ePinlightEXT: return "PinlightEXT";
+ case BlendOp::eHardmixEXT: return "HardmixEXT";
+ case BlendOp::eHslHueEXT: return "HslHueEXT";
+ case BlendOp::eHslSaturationEXT: return "HslSaturationEXT";
+ case BlendOp::eHslColorEXT: return "HslColorEXT";
+ case BlendOp::eHslLuminosityEXT: return "HslLuminosityEXT";
+ case BlendOp::ePlusEXT: return "PlusEXT";
+ case BlendOp::ePlusClampedEXT: return "PlusClampedEXT";
+ case BlendOp::ePlusClampedAlphaEXT: return "PlusClampedAlphaEXT";
+ case BlendOp::ePlusDarkerEXT: return "PlusDarkerEXT";
+ case BlendOp::eMinusEXT: return "MinusEXT";
+ case BlendOp::eMinusClampedEXT: return "MinusClampedEXT";
+ case BlendOp::eContrastEXT: return "ContrastEXT";
+ case BlendOp::eInvertOvgEXT: return "InvertOvgEXT";
+ case BlendOp::eRedEXT: return "RedEXT";
+ case BlendOp::eGreenEXT: return "GreenEXT";
+ case BlendOp::eBlueEXT: return "BlueEXT";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class ColorComponentFlagBits : VkColorComponentFlags
+ {
+ eR = VK_COLOR_COMPONENT_R_BIT,
+ eG = VK_COLOR_COMPONENT_G_BIT,
+ eB = VK_COLOR_COMPONENT_B_BIT,
+ eA = VK_COLOR_COMPONENT_A_BIT
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( ColorComponentFlagBits value )
+ {
+ switch ( value )
+ {
+ case ColorComponentFlagBits::eR: return "R";
+ case ColorComponentFlagBits::eG: return "G";
+ case ColorComponentFlagBits::eB: return "B";
+ case ColorComponentFlagBits::eA: return "A";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class CompareOp
+ {
+ eNever = VK_COMPARE_OP_NEVER,
+ eLess = VK_COMPARE_OP_LESS,
+ eEqual = VK_COMPARE_OP_EQUAL,
+ eLessOrEqual = VK_COMPARE_OP_LESS_OR_EQUAL,
+ eGreater = VK_COMPARE_OP_GREATER,
+ eNotEqual = VK_COMPARE_OP_NOT_EQUAL,
+ eGreaterOrEqual = VK_COMPARE_OP_GREATER_OR_EQUAL,
+ eAlways = VK_COMPARE_OP_ALWAYS
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( CompareOp value )
+ {
+ switch ( value )
+ {
+ case CompareOp::eNever: return "Never";
+ case CompareOp::eLess: return "Less";
+ case CompareOp::eEqual: return "Equal";
+ case CompareOp::eLessOrEqual: return "LessOrEqual";
+ case CompareOp::eGreater: return "Greater";
+ case CompareOp::eNotEqual: return "NotEqual";
+ case CompareOp::eGreaterOrEqual: return "GreaterOrEqual";
+ case CompareOp::eAlways: return "Always";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class CullModeFlagBits : VkCullModeFlags
+ {
+ eNone = VK_CULL_MODE_NONE,
+ eFront = VK_CULL_MODE_FRONT_BIT,
+ eBack = VK_CULL_MODE_BACK_BIT,
+ eFrontAndBack = VK_CULL_MODE_FRONT_AND_BACK
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( CullModeFlagBits value )
+ {
+ switch ( value )
+ {
+ case CullModeFlagBits::eNone: return "None";
+ case CullModeFlagBits::eFront: return "Front";
+ case CullModeFlagBits::eBack: return "Back";
+ case CullModeFlagBits::eFrontAndBack: return "FrontAndBack";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class DynamicState
+ {
+ eViewport = VK_DYNAMIC_STATE_VIEWPORT,
+ eScissor = VK_DYNAMIC_STATE_SCISSOR,
+ eLineWidth = VK_DYNAMIC_STATE_LINE_WIDTH,
+ eDepthBias = VK_DYNAMIC_STATE_DEPTH_BIAS,
+ eBlendConstants = VK_DYNAMIC_STATE_BLEND_CONSTANTS,
+ eDepthBounds = VK_DYNAMIC_STATE_DEPTH_BOUNDS,
+ eStencilCompareMask = VK_DYNAMIC_STATE_STENCIL_COMPARE_MASK,
+ eStencilWriteMask = VK_DYNAMIC_STATE_STENCIL_WRITE_MASK,
+ eStencilReference = VK_DYNAMIC_STATE_STENCIL_REFERENCE,
+ eViewportWScalingNV = VK_DYNAMIC_STATE_VIEWPORT_W_SCALING_NV,
+ eDiscardRectangleEXT = VK_DYNAMIC_STATE_DISCARD_RECTANGLE_EXT,
+ eSampleLocationsEXT = VK_DYNAMIC_STATE_SAMPLE_LOCATIONS_EXT,
+ eRayTracingPipelineStackSizeKHR = VK_DYNAMIC_STATE_RAY_TRACING_PIPELINE_STACK_SIZE_KHR,
+ eViewportShadingRatePaletteNV = VK_DYNAMIC_STATE_VIEWPORT_SHADING_RATE_PALETTE_NV,
+ eViewportCoarseSampleOrderNV = VK_DYNAMIC_STATE_VIEWPORT_COARSE_SAMPLE_ORDER_NV,
+ eExclusiveScissorNV = VK_DYNAMIC_STATE_EXCLUSIVE_SCISSOR_NV,
+ eFragmentShadingRateKHR = VK_DYNAMIC_STATE_FRAGMENT_SHADING_RATE_KHR,
+ eLineStippleEXT = VK_DYNAMIC_STATE_LINE_STIPPLE_EXT,
+ eCullModeEXT = VK_DYNAMIC_STATE_CULL_MODE_EXT,
+ eFrontFaceEXT = VK_DYNAMIC_STATE_FRONT_FACE_EXT,
+ ePrimitiveTopologyEXT = VK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGY_EXT,
+ eViewportWithCountEXT = VK_DYNAMIC_STATE_VIEWPORT_WITH_COUNT_EXT,
+ eScissorWithCountEXT = VK_DYNAMIC_STATE_SCISSOR_WITH_COUNT_EXT,
+ eVertexInputBindingStrideEXT = VK_DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE_EXT,
+ eDepthTestEnableEXT = VK_DYNAMIC_STATE_DEPTH_TEST_ENABLE_EXT,
+ eDepthWriteEnableEXT = VK_DYNAMIC_STATE_DEPTH_WRITE_ENABLE_EXT,
+ eDepthCompareOpEXT = VK_DYNAMIC_STATE_DEPTH_COMPARE_OP_EXT,
+ eDepthBoundsTestEnableEXT = VK_DYNAMIC_STATE_DEPTH_BOUNDS_TEST_ENABLE_EXT,
+ eStencilTestEnableEXT = VK_DYNAMIC_STATE_STENCIL_TEST_ENABLE_EXT,
+ eStencilOpEXT = VK_DYNAMIC_STATE_STENCIL_OP_EXT,
+ eVertexInputEXT = VK_DYNAMIC_STATE_VERTEX_INPUT_EXT,
+ ePatchControlPointsEXT = VK_DYNAMIC_STATE_PATCH_CONTROL_POINTS_EXT,
+ eRasterizerDiscardEnableEXT = VK_DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLE_EXT,
+ eDepthBiasEnableEXT = VK_DYNAMIC_STATE_DEPTH_BIAS_ENABLE_EXT,
+ eLogicOpEXT = VK_DYNAMIC_STATE_LOGIC_OP_EXT,
+ ePrimitiveRestartEnableEXT = VK_DYNAMIC_STATE_PRIMITIVE_RESTART_ENABLE_EXT,
+ eColorWriteEnableEXT = VK_DYNAMIC_STATE_COLOR_WRITE_ENABLE_EXT
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( DynamicState value )
+ {
+ switch ( value )
+ {
+ case DynamicState::eViewport: return "Viewport";
+ case DynamicState::eScissor: return "Scissor";
+ case DynamicState::eLineWidth: return "LineWidth";
+ case DynamicState::eDepthBias: return "DepthBias";
+ case DynamicState::eBlendConstants: return "BlendConstants";
+ case DynamicState::eDepthBounds: return "DepthBounds";
+ case DynamicState::eStencilCompareMask: return "StencilCompareMask";
+ case DynamicState::eStencilWriteMask: return "StencilWriteMask";
+ case DynamicState::eStencilReference: return "StencilReference";
+ case DynamicState::eViewportWScalingNV: return "ViewportWScalingNV";
+ case DynamicState::eDiscardRectangleEXT: return "DiscardRectangleEXT";
+ case DynamicState::eSampleLocationsEXT: return "SampleLocationsEXT";
+ case DynamicState::eRayTracingPipelineStackSizeKHR: return "RayTracingPipelineStackSizeKHR";
+ case DynamicState::eViewportShadingRatePaletteNV: return "ViewportShadingRatePaletteNV";
+ case DynamicState::eViewportCoarseSampleOrderNV: return "ViewportCoarseSampleOrderNV";
+ case DynamicState::eExclusiveScissorNV: return "ExclusiveScissorNV";
+ case DynamicState::eFragmentShadingRateKHR: return "FragmentShadingRateKHR";
+ case DynamicState::eLineStippleEXT: return "LineStippleEXT";
+ case DynamicState::eCullModeEXT: return "CullModeEXT";
+ case DynamicState::eFrontFaceEXT: return "FrontFaceEXT";
+ case DynamicState::ePrimitiveTopologyEXT: return "PrimitiveTopologyEXT";
+ case DynamicState::eViewportWithCountEXT: return "ViewportWithCountEXT";
+ case DynamicState::eScissorWithCountEXT: return "ScissorWithCountEXT";
+ case DynamicState::eVertexInputBindingStrideEXT: return "VertexInputBindingStrideEXT";
+ case DynamicState::eDepthTestEnableEXT: return "DepthTestEnableEXT";
+ case DynamicState::eDepthWriteEnableEXT: return "DepthWriteEnableEXT";
+ case DynamicState::eDepthCompareOpEXT: return "DepthCompareOpEXT";
+ case DynamicState::eDepthBoundsTestEnableEXT: return "DepthBoundsTestEnableEXT";
+ case DynamicState::eStencilTestEnableEXT: return "StencilTestEnableEXT";
+ case DynamicState::eStencilOpEXT: return "StencilOpEXT";
+ case DynamicState::eVertexInputEXT: return "VertexInputEXT";
+ case DynamicState::ePatchControlPointsEXT: return "PatchControlPointsEXT";
+ case DynamicState::eRasterizerDiscardEnableEXT: return "RasterizerDiscardEnableEXT";
+ case DynamicState::eDepthBiasEnableEXT: return "DepthBiasEnableEXT";
+ case DynamicState::eLogicOpEXT: return "LogicOpEXT";
+ case DynamicState::ePrimitiveRestartEnableEXT: return "PrimitiveRestartEnableEXT";
+ case DynamicState::eColorWriteEnableEXT: return "ColorWriteEnableEXT";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class FrontFace
+ {
+ eCounterClockwise = VK_FRONT_FACE_COUNTER_CLOCKWISE,
+ eClockwise = VK_FRONT_FACE_CLOCKWISE
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( FrontFace value )
+ {
+ switch ( value )
+ {
+ case FrontFace::eCounterClockwise: return "CounterClockwise";
+ case FrontFace::eClockwise: return "Clockwise";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class LogicOp
+ {
+ eClear = VK_LOGIC_OP_CLEAR,
+ eAnd = VK_LOGIC_OP_AND,
+ eAndReverse = VK_LOGIC_OP_AND_REVERSE,
+ eCopy = VK_LOGIC_OP_COPY,
+ eAndInverted = VK_LOGIC_OP_AND_INVERTED,
+ eNoOp = VK_LOGIC_OP_NO_OP,
+ eXor = VK_LOGIC_OP_XOR,
+ eOr = VK_LOGIC_OP_OR,
+ eNor = VK_LOGIC_OP_NOR,
+ eEquivalent = VK_LOGIC_OP_EQUIVALENT,
+ eInvert = VK_LOGIC_OP_INVERT,
+ eOrReverse = VK_LOGIC_OP_OR_REVERSE,
+ eCopyInverted = VK_LOGIC_OP_COPY_INVERTED,
+ eOrInverted = VK_LOGIC_OP_OR_INVERTED,
+ eNand = VK_LOGIC_OP_NAND,
+ eSet = VK_LOGIC_OP_SET
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( LogicOp value )
+ {
+ switch ( value )
+ {
+ case LogicOp::eClear: return "Clear";
+ case LogicOp::eAnd: return "And";
+ case LogicOp::eAndReverse: return "AndReverse";
+ case LogicOp::eCopy: return "Copy";
+ case LogicOp::eAndInverted: return "AndInverted";
+ case LogicOp::eNoOp: return "NoOp";
+ case LogicOp::eXor: return "Xor";
+ case LogicOp::eOr: return "Or";
+ case LogicOp::eNor: return "Nor";
+ case LogicOp::eEquivalent: return "Equivalent";
+ case LogicOp::eInvert: return "Invert";
+ case LogicOp::eOrReverse: return "OrReverse";
+ case LogicOp::eCopyInverted: return "CopyInverted";
+ case LogicOp::eOrInverted: return "OrInverted";
+ case LogicOp::eNand: return "Nand";
+ case LogicOp::eSet: return "Set";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class PipelineCreateFlagBits : VkPipelineCreateFlags
+ {
+ eDisableOptimization = VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT,
+ eAllowDerivatives = VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT,
+ eDerivative = VK_PIPELINE_CREATE_DERIVATIVE_BIT,
+ eViewIndexFromDeviceIndex = VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT,
+ eDispatchBase = VK_PIPELINE_CREATE_DISPATCH_BASE_BIT,
+ eRayTracingNoNullAnyHitShadersKHR = VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR,
+ eRayTracingNoNullClosestHitShadersKHR = VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR,
+ eRayTracingNoNullMissShadersKHR = VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHR,
+ eRayTracingNoNullIntersectionShadersKHR = VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHR,
+ eRayTracingSkipTrianglesKHR = VK_PIPELINE_CREATE_RAY_TRACING_SKIP_TRIANGLES_BIT_KHR,
+ eRayTracingSkipAabbsKHR = VK_PIPELINE_CREATE_RAY_TRACING_SKIP_AABBS_BIT_KHR,
+ eRayTracingShaderGroupHandleCaptureReplayKHR =
+ VK_PIPELINE_CREATE_RAY_TRACING_SHADER_GROUP_HANDLE_CAPTURE_REPLAY_BIT_KHR,
+ eDeferCompileNV = VK_PIPELINE_CREATE_DEFER_COMPILE_BIT_NV,
+ eCaptureStatisticsKHR = VK_PIPELINE_CREATE_CAPTURE_STATISTICS_BIT_KHR,
+ eCaptureInternalRepresentationsKHR = VK_PIPELINE_CREATE_CAPTURE_INTERNAL_REPRESENTATIONS_BIT_KHR,
+ eIndirectBindableNV = VK_PIPELINE_CREATE_INDIRECT_BINDABLE_BIT_NV,
+ eLibraryKHR = VK_PIPELINE_CREATE_LIBRARY_BIT_KHR,
+ eFailOnPipelineCompileRequiredEXT = VK_PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT_EXT,
+ eEarlyReturnOnFailureEXT = VK_PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT_EXT,
+ eRayTracingAllowMotionNV = VK_PIPELINE_CREATE_RAY_TRACING_ALLOW_MOTION_BIT_NV,
+ eDispatchBaseKHR = VK_PIPELINE_CREATE_DISPATCH_BASE_KHR,
+ eViewIndexFromDeviceIndexKHR = VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT_KHR
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( PipelineCreateFlagBits value )
+ {
+ switch ( value )
+ {
+ case PipelineCreateFlagBits::eDisableOptimization: return "DisableOptimization";
+ case PipelineCreateFlagBits::eAllowDerivatives: return "AllowDerivatives";
+ case PipelineCreateFlagBits::eDerivative: return "Derivative";
+ case PipelineCreateFlagBits::eViewIndexFromDeviceIndex: return "ViewIndexFromDeviceIndex";
+ case PipelineCreateFlagBits::eDispatchBase: return "DispatchBase";
+ case PipelineCreateFlagBits::eRayTracingNoNullAnyHitShadersKHR: return "RayTracingNoNullAnyHitShadersKHR";
+ case PipelineCreateFlagBits::eRayTracingNoNullClosestHitShadersKHR: return "RayTracingNoNullClosestHitShadersKHR";
+ case PipelineCreateFlagBits::eRayTracingNoNullMissShadersKHR: return "RayTracingNoNullMissShadersKHR";
+ case PipelineCreateFlagBits::eRayTracingNoNullIntersectionShadersKHR:
+ return "RayTracingNoNullIntersectionShadersKHR";
+ case PipelineCreateFlagBits::eRayTracingSkipTrianglesKHR: return "RayTracingSkipTrianglesKHR";
+ case PipelineCreateFlagBits::eRayTracingSkipAabbsKHR: return "RayTracingSkipAabbsKHR";
+ case PipelineCreateFlagBits::eRayTracingShaderGroupHandleCaptureReplayKHR:
+ return "RayTracingShaderGroupHandleCaptureReplayKHR";
+ case PipelineCreateFlagBits::eDeferCompileNV: return "DeferCompileNV";
+ case PipelineCreateFlagBits::eCaptureStatisticsKHR: return "CaptureStatisticsKHR";
+ case PipelineCreateFlagBits::eCaptureInternalRepresentationsKHR: return "CaptureInternalRepresentationsKHR";
+ case PipelineCreateFlagBits::eIndirectBindableNV: return "IndirectBindableNV";
+ case PipelineCreateFlagBits::eLibraryKHR: return "LibraryKHR";
+ case PipelineCreateFlagBits::eFailOnPipelineCompileRequiredEXT: return "FailOnPipelineCompileRequiredEXT";
+ case PipelineCreateFlagBits::eEarlyReturnOnFailureEXT: return "EarlyReturnOnFailureEXT";
+ case PipelineCreateFlagBits::eRayTracingAllowMotionNV: return "RayTracingAllowMotionNV";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class PipelineShaderStageCreateFlagBits : VkPipelineShaderStageCreateFlags
+ {
+ eAllowVaryingSubgroupSizeEXT = VK_PIPELINE_SHADER_STAGE_CREATE_ALLOW_VARYING_SUBGROUP_SIZE_BIT_EXT,
+ eRequireFullSubgroupsEXT = VK_PIPELINE_SHADER_STAGE_CREATE_REQUIRE_FULL_SUBGROUPS_BIT_EXT
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( PipelineShaderStageCreateFlagBits value )
+ {
+ switch ( value )
+ {
+ case PipelineShaderStageCreateFlagBits::eAllowVaryingSubgroupSizeEXT: return "AllowVaryingSubgroupSizeEXT";
+ case PipelineShaderStageCreateFlagBits::eRequireFullSubgroupsEXT: return "RequireFullSubgroupsEXT";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class PolygonMode
+ {
+ eFill = VK_POLYGON_MODE_FILL,
+ eLine = VK_POLYGON_MODE_LINE,
+ ePoint = VK_POLYGON_MODE_POINT,
+ eFillRectangleNV = VK_POLYGON_MODE_FILL_RECTANGLE_NV
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( PolygonMode value )
+ {
+ switch ( value )
+ {
+ case PolygonMode::eFill: return "Fill";
+ case PolygonMode::eLine: return "Line";
+ case PolygonMode::ePoint: return "Point";
+ case PolygonMode::eFillRectangleNV: return "FillRectangleNV";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class PrimitiveTopology
+ {
+ ePointList = VK_PRIMITIVE_TOPOLOGY_POINT_LIST,
+ eLineList = VK_PRIMITIVE_TOPOLOGY_LINE_LIST,
+ eLineStrip = VK_PRIMITIVE_TOPOLOGY_LINE_STRIP,
+ eTriangleList = VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST,
+ eTriangleStrip = VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP,
+ eTriangleFan = VK_PRIMITIVE_TOPOLOGY_TRIANGLE_FAN,
+ eLineListWithAdjacency = VK_PRIMITIVE_TOPOLOGY_LINE_LIST_WITH_ADJACENCY,
+ eLineStripWithAdjacency = VK_PRIMITIVE_TOPOLOGY_LINE_STRIP_WITH_ADJACENCY,
+ eTriangleListWithAdjacency = VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST_WITH_ADJACENCY,
+ eTriangleStripWithAdjacency = VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP_WITH_ADJACENCY,
+ ePatchList = VK_PRIMITIVE_TOPOLOGY_PATCH_LIST
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( PrimitiveTopology value )
+ {
+ switch ( value )
+ {
+ case PrimitiveTopology::ePointList: return "PointList";
+ case PrimitiveTopology::eLineList: return "LineList";
+ case PrimitiveTopology::eLineStrip: return "LineStrip";
+ case PrimitiveTopology::eTriangleList: return "TriangleList";
+ case PrimitiveTopology::eTriangleStrip: return "TriangleStrip";
+ case PrimitiveTopology::eTriangleFan: return "TriangleFan";
+ case PrimitiveTopology::eLineListWithAdjacency: return "LineListWithAdjacency";
+ case PrimitiveTopology::eLineStripWithAdjacency: return "LineStripWithAdjacency";
+ case PrimitiveTopology::eTriangleListWithAdjacency: return "TriangleListWithAdjacency";
+ case PrimitiveTopology::eTriangleStripWithAdjacency: return "TriangleStripWithAdjacency";
+ case PrimitiveTopology::ePatchList: return "PatchList";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class ShaderStageFlagBits : VkShaderStageFlags
+ {
+ eVertex = VK_SHADER_STAGE_VERTEX_BIT,
+ eTessellationControl = VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT,
+ eTessellationEvaluation = VK_SHADER_STAGE_TESSELLATION_EVALUATION_BIT,
+ eGeometry = VK_SHADER_STAGE_GEOMETRY_BIT,
+ eFragment = VK_SHADER_STAGE_FRAGMENT_BIT,
+ eCompute = VK_SHADER_STAGE_COMPUTE_BIT,
+ eAllGraphics = VK_SHADER_STAGE_ALL_GRAPHICS,
+ eAll = VK_SHADER_STAGE_ALL,
+ eRaygenKHR = VK_SHADER_STAGE_RAYGEN_BIT_KHR,
+ eAnyHitKHR = VK_SHADER_STAGE_ANY_HIT_BIT_KHR,
+ eClosestHitKHR = VK_SHADER_STAGE_CLOSEST_HIT_BIT_KHR,
+ eMissKHR = VK_SHADER_STAGE_MISS_BIT_KHR,
+ eIntersectionKHR = VK_SHADER_STAGE_INTERSECTION_BIT_KHR,
+ eCallableKHR = VK_SHADER_STAGE_CALLABLE_BIT_KHR,
+ eTaskNV = VK_SHADER_STAGE_TASK_BIT_NV,
+ eMeshNV = VK_SHADER_STAGE_MESH_BIT_NV,
+ eSubpassShadingHUAWEI = VK_SHADER_STAGE_SUBPASS_SHADING_BIT_HUAWEI,
+ eAnyHitNV = VK_SHADER_STAGE_ANY_HIT_BIT_NV,
+ eCallableNV = VK_SHADER_STAGE_CALLABLE_BIT_NV,
+ eClosestHitNV = VK_SHADER_STAGE_CLOSEST_HIT_BIT_NV,
+ eIntersectionNV = VK_SHADER_STAGE_INTERSECTION_BIT_NV,
+ eMissNV = VK_SHADER_STAGE_MISS_BIT_NV,
+ eRaygenNV = VK_SHADER_STAGE_RAYGEN_BIT_NV
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( ShaderStageFlagBits value )
+ {
+ switch ( value )
+ {
+ case ShaderStageFlagBits::eVertex: return "Vertex";
+ case ShaderStageFlagBits::eTessellationControl: return "TessellationControl";
+ case ShaderStageFlagBits::eTessellationEvaluation: return "TessellationEvaluation";
+ case ShaderStageFlagBits::eGeometry: return "Geometry";
+ case ShaderStageFlagBits::eFragment: return "Fragment";
+ case ShaderStageFlagBits::eCompute: return "Compute";
+ case ShaderStageFlagBits::eAllGraphics: return "AllGraphics";
+ case ShaderStageFlagBits::eAll: return "All";
+ case ShaderStageFlagBits::eRaygenKHR: return "RaygenKHR";
+ case ShaderStageFlagBits::eAnyHitKHR: return "AnyHitKHR";
+ case ShaderStageFlagBits::eClosestHitKHR: return "ClosestHitKHR";
+ case ShaderStageFlagBits::eMissKHR: return "MissKHR";
+ case ShaderStageFlagBits::eIntersectionKHR: return "IntersectionKHR";
+ case ShaderStageFlagBits::eCallableKHR: return "CallableKHR";
+ case ShaderStageFlagBits::eTaskNV: return "TaskNV";
+ case ShaderStageFlagBits::eMeshNV: return "MeshNV";
+ case ShaderStageFlagBits::eSubpassShadingHUAWEI: return "SubpassShadingHUAWEI";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class StencilOp
+ {
+ eKeep = VK_STENCIL_OP_KEEP,
+ eZero = VK_STENCIL_OP_ZERO,
+ eReplace = VK_STENCIL_OP_REPLACE,
+ eIncrementAndClamp = VK_STENCIL_OP_INCREMENT_AND_CLAMP,
+ eDecrementAndClamp = VK_STENCIL_OP_DECREMENT_AND_CLAMP,
+ eInvert = VK_STENCIL_OP_INVERT,
+ eIncrementAndWrap = VK_STENCIL_OP_INCREMENT_AND_WRAP,
+ eDecrementAndWrap = VK_STENCIL_OP_DECREMENT_AND_WRAP
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( StencilOp value )
+ {
+ switch ( value )
+ {
+ case StencilOp::eKeep: return "Keep";
+ case StencilOp::eZero: return "Zero";
+ case StencilOp::eReplace: return "Replace";
+ case StencilOp::eIncrementAndClamp: return "IncrementAndClamp";
+ case StencilOp::eDecrementAndClamp: return "DecrementAndClamp";
+ case StencilOp::eInvert: return "Invert";
+ case StencilOp::eIncrementAndWrap: return "IncrementAndWrap";
+ case StencilOp::eDecrementAndWrap: return "DecrementAndWrap";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class VertexInputRate
+ {
+ eVertex = VK_VERTEX_INPUT_RATE_VERTEX,
+ eInstance = VK_VERTEX_INPUT_RATE_INSTANCE
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( VertexInputRate value )
+ {
+ switch ( value )
+ {
+ case VertexInputRate::eVertex: return "Vertex";
+ case VertexInputRate::eInstance: return "Instance";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class BorderColor
+ {
+ eFloatTransparentBlack = VK_BORDER_COLOR_FLOAT_TRANSPARENT_BLACK,
+ eIntTransparentBlack = VK_BORDER_COLOR_INT_TRANSPARENT_BLACK,
+ eFloatOpaqueBlack = VK_BORDER_COLOR_FLOAT_OPAQUE_BLACK,
+ eIntOpaqueBlack = VK_BORDER_COLOR_INT_OPAQUE_BLACK,
+ eFloatOpaqueWhite = VK_BORDER_COLOR_FLOAT_OPAQUE_WHITE,
+ eIntOpaqueWhite = VK_BORDER_COLOR_INT_OPAQUE_WHITE,
+ eFloatCustomEXT = VK_BORDER_COLOR_FLOAT_CUSTOM_EXT,
+ eIntCustomEXT = VK_BORDER_COLOR_INT_CUSTOM_EXT
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( BorderColor value )
+ {
+ switch ( value )
+ {
+ case BorderColor::eFloatTransparentBlack: return "FloatTransparentBlack";
+ case BorderColor::eIntTransparentBlack: return "IntTransparentBlack";
+ case BorderColor::eFloatOpaqueBlack: return "FloatOpaqueBlack";
+ case BorderColor::eIntOpaqueBlack: return "IntOpaqueBlack";
+ case BorderColor::eFloatOpaqueWhite: return "FloatOpaqueWhite";
+ case BorderColor::eIntOpaqueWhite: return "IntOpaqueWhite";
+ case BorderColor::eFloatCustomEXT: return "FloatCustomEXT";
+ case BorderColor::eIntCustomEXT: return "IntCustomEXT";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class Filter
+ {
+ eNearest = VK_FILTER_NEAREST,
+ eLinear = VK_FILTER_LINEAR,
+ eCubicIMG = VK_FILTER_CUBIC_IMG,
+ eCubicEXT = VK_FILTER_CUBIC_EXT
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( Filter value )
+ {
+ switch ( value )
+ {
+ case Filter::eNearest: return "Nearest";
+ case Filter::eLinear: return "Linear";
+ case Filter::eCubicIMG: return "CubicIMG";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class SamplerAddressMode
+ {
+ eRepeat = VK_SAMPLER_ADDRESS_MODE_REPEAT,
+ eMirroredRepeat = VK_SAMPLER_ADDRESS_MODE_MIRRORED_REPEAT,
+ eClampToEdge = VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE,
+ eClampToBorder = VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER,
+ eMirrorClampToEdge = VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE,
+ eMirrorClampToEdgeKHR = VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE_KHR
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( SamplerAddressMode value )
+ {
+ switch ( value )
+ {
+ case SamplerAddressMode::eRepeat: return "Repeat";
+ case SamplerAddressMode::eMirroredRepeat: return "MirroredRepeat";
+ case SamplerAddressMode::eClampToEdge: return "ClampToEdge";
+ case SamplerAddressMode::eClampToBorder: return "ClampToBorder";
+ case SamplerAddressMode::eMirrorClampToEdge: return "MirrorClampToEdge";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class SamplerCreateFlagBits : VkSamplerCreateFlags
+ {
+ eSubsampledEXT = VK_SAMPLER_CREATE_SUBSAMPLED_BIT_EXT,
+ eSubsampledCoarseReconstructionEXT = VK_SAMPLER_CREATE_SUBSAMPLED_COARSE_RECONSTRUCTION_BIT_EXT
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( SamplerCreateFlagBits value )
+ {
+ switch ( value )
+ {
+ case SamplerCreateFlagBits::eSubsampledEXT: return "SubsampledEXT";
+ case SamplerCreateFlagBits::eSubsampledCoarseReconstructionEXT: return "SubsampledCoarseReconstructionEXT";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class SamplerMipmapMode
+ {
+ eNearest = VK_SAMPLER_MIPMAP_MODE_NEAREST,
+ eLinear = VK_SAMPLER_MIPMAP_MODE_LINEAR
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( SamplerMipmapMode value )
+ {
+ switch ( value )
+ {
+ case SamplerMipmapMode::eNearest: return "Nearest";
+ case SamplerMipmapMode::eLinear: return "Linear";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class DescriptorPoolCreateFlagBits : VkDescriptorPoolCreateFlags
+ {
+ eFreeDescriptorSet = VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT,
+ eUpdateAfterBind = VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT,
+ eHostOnlyVALVE = VK_DESCRIPTOR_POOL_CREATE_HOST_ONLY_BIT_VALVE,
+ eUpdateAfterBindEXT = VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT_EXT
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( DescriptorPoolCreateFlagBits value )
+ {
+ switch ( value )
+ {
+ case DescriptorPoolCreateFlagBits::eFreeDescriptorSet: return "FreeDescriptorSet";
+ case DescriptorPoolCreateFlagBits::eUpdateAfterBind: return "UpdateAfterBind";
+ case DescriptorPoolCreateFlagBits::eHostOnlyVALVE: return "HostOnlyVALVE";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class DescriptorSetLayoutCreateFlagBits : VkDescriptorSetLayoutCreateFlags
+ {
+ eUpdateAfterBindPool = VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT,
+ ePushDescriptorKHR = VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR,
+ eHostOnlyPoolVALVE = VK_DESCRIPTOR_SET_LAYOUT_CREATE_HOST_ONLY_POOL_BIT_VALVE,
+ eUpdateAfterBindPoolEXT = VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( DescriptorSetLayoutCreateFlagBits value )
+ {
+ switch ( value )
+ {
+ case DescriptorSetLayoutCreateFlagBits::eUpdateAfterBindPool: return "UpdateAfterBindPool";
+ case DescriptorSetLayoutCreateFlagBits::ePushDescriptorKHR: return "PushDescriptorKHR";
+ case DescriptorSetLayoutCreateFlagBits::eHostOnlyPoolVALVE: return "HostOnlyPoolVALVE";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class DescriptorType
+ {
+ eSampler = VK_DESCRIPTOR_TYPE_SAMPLER,
+ eCombinedImageSampler = VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER,
+ eSampledImage = VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE,
+ eStorageImage = VK_DESCRIPTOR_TYPE_STORAGE_IMAGE,
+ eUniformTexelBuffer = VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER,
+ eStorageTexelBuffer = VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER,
+ eUniformBuffer = VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER,
+ eStorageBuffer = VK_DESCRIPTOR_TYPE_STORAGE_BUFFER,
+ eUniformBufferDynamic = VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC,
+ eStorageBufferDynamic = VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC,
+ eInputAttachment = VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT,
+ eInlineUniformBlockEXT = VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT,
+ eAccelerationStructureKHR = VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR,
+ eAccelerationStructureNV = VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NV,
+ eMutableVALVE = VK_DESCRIPTOR_TYPE_MUTABLE_VALVE
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( DescriptorType value )
+ {
+ switch ( value )
+ {
+ case DescriptorType::eSampler: return "Sampler";
+ case DescriptorType::eCombinedImageSampler: return "CombinedImageSampler";
+ case DescriptorType::eSampledImage: return "SampledImage";
+ case DescriptorType::eStorageImage: return "StorageImage";
+ case DescriptorType::eUniformTexelBuffer: return "UniformTexelBuffer";
+ case DescriptorType::eStorageTexelBuffer: return "StorageTexelBuffer";
+ case DescriptorType::eUniformBuffer: return "UniformBuffer";
+ case DescriptorType::eStorageBuffer: return "StorageBuffer";
+ case DescriptorType::eUniformBufferDynamic: return "UniformBufferDynamic";
+ case DescriptorType::eStorageBufferDynamic: return "StorageBufferDynamic";
+ case DescriptorType::eInputAttachment: return "InputAttachment";
+ case DescriptorType::eInlineUniformBlockEXT: return "InlineUniformBlockEXT";
+ case DescriptorType::eAccelerationStructureKHR: return "AccelerationStructureKHR";
+ case DescriptorType::eAccelerationStructureNV: return "AccelerationStructureNV";
+ case DescriptorType::eMutableVALVE: return "MutableVALVE";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class AccessFlagBits : VkAccessFlags
+ {
+ eIndirectCommandRead = VK_ACCESS_INDIRECT_COMMAND_READ_BIT,
+ eIndexRead = VK_ACCESS_INDEX_READ_BIT,
+ eVertexAttributeRead = VK_ACCESS_VERTEX_ATTRIBUTE_READ_BIT,
+ eUniformRead = VK_ACCESS_UNIFORM_READ_BIT,
+ eInputAttachmentRead = VK_ACCESS_INPUT_ATTACHMENT_READ_BIT,
+ eShaderRead = VK_ACCESS_SHADER_READ_BIT,
+ eShaderWrite = VK_ACCESS_SHADER_WRITE_BIT,
+ eColorAttachmentRead = VK_ACCESS_COLOR_ATTACHMENT_READ_BIT,
+ eColorAttachmentWrite = VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT,
+ eDepthStencilAttachmentRead = VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_READ_BIT,
+ eDepthStencilAttachmentWrite = VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT,
+ eTransferRead = VK_ACCESS_TRANSFER_READ_BIT,
+ eTransferWrite = VK_ACCESS_TRANSFER_WRITE_BIT,
+ eHostRead = VK_ACCESS_HOST_READ_BIT,
+ eHostWrite = VK_ACCESS_HOST_WRITE_BIT,
+ eMemoryRead = VK_ACCESS_MEMORY_READ_BIT,
+ eMemoryWrite = VK_ACCESS_MEMORY_WRITE_BIT,
+ eTransformFeedbackWriteEXT = VK_ACCESS_TRANSFORM_FEEDBACK_WRITE_BIT_EXT,
+ eTransformFeedbackCounterReadEXT = VK_ACCESS_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT,
+ eTransformFeedbackCounterWriteEXT = VK_ACCESS_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT,
+ eConditionalRenderingReadEXT = VK_ACCESS_CONDITIONAL_RENDERING_READ_BIT_EXT,
+ eColorAttachmentReadNoncoherentEXT = VK_ACCESS_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT,
+ eAccelerationStructureReadKHR = VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_KHR,
+ eAccelerationStructureWriteKHR = VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_KHR,
+ eFragmentDensityMapReadEXT = VK_ACCESS_FRAGMENT_DENSITY_MAP_READ_BIT_EXT,
+ eFragmentShadingRateAttachmentReadKHR = VK_ACCESS_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR,
+ eCommandPreprocessReadNV = VK_ACCESS_COMMAND_PREPROCESS_READ_BIT_NV,
+ eCommandPreprocessWriteNV = VK_ACCESS_COMMAND_PREPROCESS_WRITE_BIT_NV,
+ eNoneKHR = VK_ACCESS_NONE_KHR,
+ eAccelerationStructureReadNV = VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_NV,
+ eAccelerationStructureWriteNV = VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_NV,
+ eShadingRateImageReadNV = VK_ACCESS_SHADING_RATE_IMAGE_READ_BIT_NV
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( AccessFlagBits value )
+ {
+ switch ( value )
+ {
+ case AccessFlagBits::eIndirectCommandRead: return "IndirectCommandRead";
+ case AccessFlagBits::eIndexRead: return "IndexRead";
+ case AccessFlagBits::eVertexAttributeRead: return "VertexAttributeRead";
+ case AccessFlagBits::eUniformRead: return "UniformRead";
+ case AccessFlagBits::eInputAttachmentRead: return "InputAttachmentRead";
+ case AccessFlagBits::eShaderRead: return "ShaderRead";
+ case AccessFlagBits::eShaderWrite: return "ShaderWrite";
+ case AccessFlagBits::eColorAttachmentRead: return "ColorAttachmentRead";
+ case AccessFlagBits::eColorAttachmentWrite: return "ColorAttachmentWrite";
+ case AccessFlagBits::eDepthStencilAttachmentRead: return "DepthStencilAttachmentRead";
+ case AccessFlagBits::eDepthStencilAttachmentWrite: return "DepthStencilAttachmentWrite";
+ case AccessFlagBits::eTransferRead: return "TransferRead";
+ case AccessFlagBits::eTransferWrite: return "TransferWrite";
+ case AccessFlagBits::eHostRead: return "HostRead";
+ case AccessFlagBits::eHostWrite: return "HostWrite";
+ case AccessFlagBits::eMemoryRead: return "MemoryRead";
+ case AccessFlagBits::eMemoryWrite: return "MemoryWrite";
+ case AccessFlagBits::eTransformFeedbackWriteEXT: return "TransformFeedbackWriteEXT";
+ case AccessFlagBits::eTransformFeedbackCounterReadEXT: return "TransformFeedbackCounterReadEXT";
+ case AccessFlagBits::eTransformFeedbackCounterWriteEXT: return "TransformFeedbackCounterWriteEXT";
+ case AccessFlagBits::eConditionalRenderingReadEXT: return "ConditionalRenderingReadEXT";
+ case AccessFlagBits::eColorAttachmentReadNoncoherentEXT: return "ColorAttachmentReadNoncoherentEXT";
+ case AccessFlagBits::eAccelerationStructureReadKHR: return "AccelerationStructureReadKHR";
+ case AccessFlagBits::eAccelerationStructureWriteKHR: return "AccelerationStructureWriteKHR";
+ case AccessFlagBits::eFragmentDensityMapReadEXT: return "FragmentDensityMapReadEXT";
+ case AccessFlagBits::eFragmentShadingRateAttachmentReadKHR: return "FragmentShadingRateAttachmentReadKHR";
+ case AccessFlagBits::eCommandPreprocessReadNV: return "CommandPreprocessReadNV";
+ case AccessFlagBits::eCommandPreprocessWriteNV: return "CommandPreprocessWriteNV";
+ case AccessFlagBits::eNoneKHR: return "NoneKHR";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class AttachmentDescriptionFlagBits : VkAttachmentDescriptionFlags
+ {
+ eMayAlias = VK_ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( AttachmentDescriptionFlagBits value )
+ {
+ switch ( value )
+ {
+ case AttachmentDescriptionFlagBits::eMayAlias: return "MayAlias";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class AttachmentLoadOp
+ {
+ eLoad = VK_ATTACHMENT_LOAD_OP_LOAD,
+ eClear = VK_ATTACHMENT_LOAD_OP_CLEAR,
+ eDontCare = VK_ATTACHMENT_LOAD_OP_DONT_CARE
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( AttachmentLoadOp value )
+ {
+ switch ( value )
+ {
+ case AttachmentLoadOp::eLoad: return "Load";
+ case AttachmentLoadOp::eClear: return "Clear";
+ case AttachmentLoadOp::eDontCare: return "DontCare";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class AttachmentStoreOp
+ {
+ eStore = VK_ATTACHMENT_STORE_OP_STORE,
+ eDontCare = VK_ATTACHMENT_STORE_OP_DONT_CARE,
+ eNoneQCOM = VK_ATTACHMENT_STORE_OP_NONE_QCOM
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( AttachmentStoreOp value )
+ {
+ switch ( value )
+ {
+ case AttachmentStoreOp::eStore: return "Store";
+ case AttachmentStoreOp::eDontCare: return "DontCare";
+ case AttachmentStoreOp::eNoneQCOM: return "NoneQCOM";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class DependencyFlagBits : VkDependencyFlags
+ {
+ eByRegion = VK_DEPENDENCY_BY_REGION_BIT,
+ eDeviceGroup = VK_DEPENDENCY_DEVICE_GROUP_BIT,
+ eViewLocal = VK_DEPENDENCY_VIEW_LOCAL_BIT,
+ eDeviceGroupKHR = VK_DEPENDENCY_DEVICE_GROUP_BIT_KHR,
+ eViewLocalKHR = VK_DEPENDENCY_VIEW_LOCAL_BIT_KHR
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( DependencyFlagBits value )
+ {
+ switch ( value )
+ {
+ case DependencyFlagBits::eByRegion: return "ByRegion";
+ case DependencyFlagBits::eDeviceGroup: return "DeviceGroup";
+ case DependencyFlagBits::eViewLocal: return "ViewLocal";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class FramebufferCreateFlagBits : VkFramebufferCreateFlags
+ {
+ eImageless = VK_FRAMEBUFFER_CREATE_IMAGELESS_BIT,
+ eImagelessKHR = VK_FRAMEBUFFER_CREATE_IMAGELESS_BIT_KHR
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( FramebufferCreateFlagBits value )
+ {
+ switch ( value )
+ {
+ case FramebufferCreateFlagBits::eImageless: return "Imageless";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class PipelineBindPoint
+ {
+ eGraphics = VK_PIPELINE_BIND_POINT_GRAPHICS,
+ eCompute = VK_PIPELINE_BIND_POINT_COMPUTE,
+ eRayTracingKHR = VK_PIPELINE_BIND_POINT_RAY_TRACING_KHR,
+ eSubpassShadingHUAWEI = VK_PIPELINE_BIND_POINT_SUBPASS_SHADING_HUAWEI,
+ eRayTracingNV = VK_PIPELINE_BIND_POINT_RAY_TRACING_NV
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( PipelineBindPoint value )
+ {
+ switch ( value )
+ {
+ case PipelineBindPoint::eGraphics: return "Graphics";
+ case PipelineBindPoint::eCompute: return "Compute";
+ case PipelineBindPoint::eRayTracingKHR: return "RayTracingKHR";
+ case PipelineBindPoint::eSubpassShadingHUAWEI: return "SubpassShadingHUAWEI";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class RenderPassCreateFlagBits : VkRenderPassCreateFlags
+ {
+ eTransformQCOM = VK_RENDER_PASS_CREATE_TRANSFORM_BIT_QCOM
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( RenderPassCreateFlagBits value )
+ {
+ switch ( value )
+ {
+ case RenderPassCreateFlagBits::eTransformQCOM: return "TransformQCOM";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class SubpassDescriptionFlagBits : VkSubpassDescriptionFlags
+ {
+ ePerViewAttributesNVX = VK_SUBPASS_DESCRIPTION_PER_VIEW_ATTRIBUTES_BIT_NVX,
+ ePerViewPositionXOnlyNVX = VK_SUBPASS_DESCRIPTION_PER_VIEW_POSITION_X_ONLY_BIT_NVX,
+ eFragmentRegionQCOM = VK_SUBPASS_DESCRIPTION_FRAGMENT_REGION_BIT_QCOM,
+ eShaderResolveQCOM = VK_SUBPASS_DESCRIPTION_SHADER_RESOLVE_BIT_QCOM
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( SubpassDescriptionFlagBits value )
+ {
+ switch ( value )
+ {
+ case SubpassDescriptionFlagBits::ePerViewAttributesNVX: return "PerViewAttributesNVX";
+ case SubpassDescriptionFlagBits::ePerViewPositionXOnlyNVX: return "PerViewPositionXOnlyNVX";
+ case SubpassDescriptionFlagBits::eFragmentRegionQCOM: return "FragmentRegionQCOM";
+ case SubpassDescriptionFlagBits::eShaderResolveQCOM: return "ShaderResolveQCOM";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class CommandPoolCreateFlagBits : VkCommandPoolCreateFlags
+ {
+ eTransient = VK_COMMAND_POOL_CREATE_TRANSIENT_BIT,
+ eResetCommandBuffer = VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT,
+ eProtected = VK_COMMAND_POOL_CREATE_PROTECTED_BIT
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( CommandPoolCreateFlagBits value )
+ {
+ switch ( value )
+ {
+ case CommandPoolCreateFlagBits::eTransient: return "Transient";
+ case CommandPoolCreateFlagBits::eResetCommandBuffer: return "ResetCommandBuffer";
+ case CommandPoolCreateFlagBits::eProtected: return "Protected";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class CommandPoolResetFlagBits : VkCommandPoolResetFlags
+ {
+ eReleaseResources = VK_COMMAND_POOL_RESET_RELEASE_RESOURCES_BIT
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( CommandPoolResetFlagBits value )
+ {
+ switch ( value )
+ {
+ case CommandPoolResetFlagBits::eReleaseResources: return "ReleaseResources";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class CommandBufferLevel
+ {
+ ePrimary = VK_COMMAND_BUFFER_LEVEL_PRIMARY,
+ eSecondary = VK_COMMAND_BUFFER_LEVEL_SECONDARY
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( CommandBufferLevel value )
+ {
+ switch ( value )
+ {
+ case CommandBufferLevel::ePrimary: return "Primary";
+ case CommandBufferLevel::eSecondary: return "Secondary";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class CommandBufferResetFlagBits : VkCommandBufferResetFlags
+ {
+ eReleaseResources = VK_COMMAND_BUFFER_RESET_RELEASE_RESOURCES_BIT
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( CommandBufferResetFlagBits value )
+ {
+ switch ( value )
+ {
+ case CommandBufferResetFlagBits::eReleaseResources: return "ReleaseResources";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class CommandBufferUsageFlagBits : VkCommandBufferUsageFlags
+ {
+ eOneTimeSubmit = VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT,
+ eRenderPassContinue = VK_COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT,
+ eSimultaneousUse = VK_COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( CommandBufferUsageFlagBits value )
+ {
+ switch ( value )
+ {
+ case CommandBufferUsageFlagBits::eOneTimeSubmit: return "OneTimeSubmit";
+ case CommandBufferUsageFlagBits::eRenderPassContinue: return "RenderPassContinue";
+ case CommandBufferUsageFlagBits::eSimultaneousUse: return "SimultaneousUse";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class QueryControlFlagBits : VkQueryControlFlags
+ {
+ ePrecise = VK_QUERY_CONTROL_PRECISE_BIT
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( QueryControlFlagBits value )
+ {
+ switch ( value )
+ {
+ case QueryControlFlagBits::ePrecise: return "Precise";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class IndexType
+ {
+ eUint16 = VK_INDEX_TYPE_UINT16,
+ eUint32 = VK_INDEX_TYPE_UINT32,
+ eNoneKHR = VK_INDEX_TYPE_NONE_KHR,
+ eUint8EXT = VK_INDEX_TYPE_UINT8_EXT,
+ eNoneNV = VK_INDEX_TYPE_NONE_NV
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( IndexType value )
+ {
+ switch ( value )
+ {
+ case IndexType::eUint16: return "Uint16";
+ case IndexType::eUint32: return "Uint32";
+ case IndexType::eNoneKHR: return "NoneKHR";
+ case IndexType::eUint8EXT: return "Uint8EXT";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class StencilFaceFlagBits : VkStencilFaceFlags
+ {
+ eFront = VK_STENCIL_FACE_FRONT_BIT,
+ eBack = VK_STENCIL_FACE_BACK_BIT,
+ eFrontAndBack = VK_STENCIL_FACE_FRONT_AND_BACK,
+ eVkStencilFrontAndBack = VK_STENCIL_FRONT_AND_BACK
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( StencilFaceFlagBits value )
+ {
+ switch ( value )
+ {
+ case StencilFaceFlagBits::eFront: return "Front";
+ case StencilFaceFlagBits::eBack: return "Back";
+ case StencilFaceFlagBits::eFrontAndBack: return "FrontAndBack";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class SubpassContents
+ {
+ eInline = VK_SUBPASS_CONTENTS_INLINE,
+ eSecondaryCommandBuffers = VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( SubpassContents value )
+ {
+ switch ( value )
+ {
+ case SubpassContents::eInline: return "Inline";
+ case SubpassContents::eSecondaryCommandBuffers: return "SecondaryCommandBuffers";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class InstanceCreateFlagBits
+ {
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( InstanceCreateFlagBits )
+ {
+ return "(void)";
+ }
+
+ enum class DeviceCreateFlagBits
+ {
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( DeviceCreateFlagBits )
+ {
+ return "(void)";
+ }
+
+ enum class MemoryMapFlagBits : VkMemoryMapFlags
+ {
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( MemoryMapFlagBits )
+ {
+ return "(void)";
+ }
+
+ enum class SemaphoreCreateFlagBits : VkSemaphoreCreateFlags
+ {
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( SemaphoreCreateFlagBits )
+ {
+ return "(void)";
+ }
+
+ enum class QueryPoolCreateFlagBits
+ {
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( QueryPoolCreateFlagBits )
+ {
+ return "(void)";
+ }
+
+ enum class BufferViewCreateFlagBits : VkBufferViewCreateFlags
+ {
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( BufferViewCreateFlagBits )
+ {
+ return "(void)";
+ }
+
+ enum class PipelineColorBlendStateCreateFlagBits : VkPipelineColorBlendStateCreateFlags
+ {
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( PipelineColorBlendStateCreateFlagBits )
+ {
+ return "(void)";
+ }
+
+ enum class PipelineDepthStencilStateCreateFlagBits : VkPipelineDepthStencilStateCreateFlags
+ {
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( PipelineDepthStencilStateCreateFlagBits )
+ {
+ return "(void)";
+ }
+
+ enum class PipelineDynamicStateCreateFlagBits : VkPipelineDynamicStateCreateFlags
+ {
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( PipelineDynamicStateCreateFlagBits )
+ {
+ return "(void)";
+ }
+
+ enum class PipelineInputAssemblyStateCreateFlagBits : VkPipelineInputAssemblyStateCreateFlags
+ {
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( PipelineInputAssemblyStateCreateFlagBits )
+ {
+ return "(void)";
+ }
+
+ enum class PipelineLayoutCreateFlagBits : VkPipelineLayoutCreateFlags
+ {
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( PipelineLayoutCreateFlagBits )
+ {
+ return "(void)";
+ }
+
+ enum class PipelineMultisampleStateCreateFlagBits : VkPipelineMultisampleStateCreateFlags
+ {
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( PipelineMultisampleStateCreateFlagBits )
+ {
+ return "(void)";
+ }
+
+ enum class PipelineRasterizationStateCreateFlagBits : VkPipelineRasterizationStateCreateFlags
+ {
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( PipelineRasterizationStateCreateFlagBits )
+ {
+ return "(void)";
+ }
+
+ enum class PipelineTessellationStateCreateFlagBits : VkPipelineTessellationStateCreateFlags
+ {
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( PipelineTessellationStateCreateFlagBits )
+ {
+ return "(void)";
+ }
+
+ enum class PipelineVertexInputStateCreateFlagBits : VkPipelineVertexInputStateCreateFlags
+ {
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( PipelineVertexInputStateCreateFlagBits )
+ {
+ return "(void)";
+ }
+
+ enum class PipelineViewportStateCreateFlagBits : VkPipelineViewportStateCreateFlags
+ {
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( PipelineViewportStateCreateFlagBits )
+ {
+ return "(void)";
+ }
+
+ enum class DescriptorPoolResetFlagBits : VkDescriptorPoolResetFlags
+ {
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( DescriptorPoolResetFlagBits )
+ {
+ return "(void)";
+ }
+
+ //=== VK_VERSION_1_1 ===
+
+ enum class SubgroupFeatureFlagBits : VkSubgroupFeatureFlags
+ {
+ eBasic = VK_SUBGROUP_FEATURE_BASIC_BIT,
+ eVote = VK_SUBGROUP_FEATURE_VOTE_BIT,
+ eArithmetic = VK_SUBGROUP_FEATURE_ARITHMETIC_BIT,
+ eBallot = VK_SUBGROUP_FEATURE_BALLOT_BIT,
+ eShuffle = VK_SUBGROUP_FEATURE_SHUFFLE_BIT,
+ eShuffleRelative = VK_SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT,
+ eClustered = VK_SUBGROUP_FEATURE_CLUSTERED_BIT,
+ eQuad = VK_SUBGROUP_FEATURE_QUAD_BIT,
+ ePartitionedNV = VK_SUBGROUP_FEATURE_PARTITIONED_BIT_NV
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( SubgroupFeatureFlagBits value )
+ {
+ switch ( value )
+ {
+ case SubgroupFeatureFlagBits::eBasic: return "Basic";
+ case SubgroupFeatureFlagBits::eVote: return "Vote";
+ case SubgroupFeatureFlagBits::eArithmetic: return "Arithmetic";
+ case SubgroupFeatureFlagBits::eBallot: return "Ballot";
+ case SubgroupFeatureFlagBits::eShuffle: return "Shuffle";
+ case SubgroupFeatureFlagBits::eShuffleRelative: return "ShuffleRelative";
+ case SubgroupFeatureFlagBits::eClustered: return "Clustered";
+ case SubgroupFeatureFlagBits::eQuad: return "Quad";
+ case SubgroupFeatureFlagBits::ePartitionedNV: return "PartitionedNV";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class PeerMemoryFeatureFlagBits : VkPeerMemoryFeatureFlags
+ {
+ eCopySrc = VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT,
+ eCopyDst = VK_PEER_MEMORY_FEATURE_COPY_DST_BIT,
+ eGenericSrc = VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT,
+ eGenericDst = VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT
+ };
+ using PeerMemoryFeatureFlagBitsKHR = PeerMemoryFeatureFlagBits;
+
+ VULKAN_HPP_INLINE std::string to_string( PeerMemoryFeatureFlagBits value )
+ {
+ switch ( value )
+ {
+ case PeerMemoryFeatureFlagBits::eCopySrc: return "CopySrc";
+ case PeerMemoryFeatureFlagBits::eCopyDst: return "CopyDst";
+ case PeerMemoryFeatureFlagBits::eGenericSrc: return "GenericSrc";
+ case PeerMemoryFeatureFlagBits::eGenericDst: return "GenericDst";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class MemoryAllocateFlagBits : VkMemoryAllocateFlags
+ {
+ eDeviceMask = VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT,
+ eDeviceAddress = VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT,
+ eDeviceAddressCaptureReplay = VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT
+ };
+ using MemoryAllocateFlagBitsKHR = MemoryAllocateFlagBits;
+
+ VULKAN_HPP_INLINE std::string to_string( MemoryAllocateFlagBits value )
+ {
+ switch ( value )
+ {
+ case MemoryAllocateFlagBits::eDeviceMask: return "DeviceMask";
+ case MemoryAllocateFlagBits::eDeviceAddress: return "DeviceAddress";
+ case MemoryAllocateFlagBits::eDeviceAddressCaptureReplay: return "DeviceAddressCaptureReplay";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class PointClippingBehavior
+ {
+ eAllClipPlanes = VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES,
+ eUserClipPlanesOnly = VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY
+ };
+ using PointClippingBehaviorKHR = PointClippingBehavior;
+
+ VULKAN_HPP_INLINE std::string to_string( PointClippingBehavior value )
+ {
+ switch ( value )
+ {
+ case PointClippingBehavior::eAllClipPlanes: return "AllClipPlanes";
+ case PointClippingBehavior::eUserClipPlanesOnly: return "UserClipPlanesOnly";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class TessellationDomainOrigin
+ {
+ eUpperLeft = VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT,
+ eLowerLeft = VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT
+ };
+ using TessellationDomainOriginKHR = TessellationDomainOrigin;
+
+ VULKAN_HPP_INLINE std::string to_string( TessellationDomainOrigin value )
+ {
+ switch ( value )
+ {
+ case TessellationDomainOrigin::eUpperLeft: return "UpperLeft";
+ case TessellationDomainOrigin::eLowerLeft: return "LowerLeft";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class SamplerYcbcrModelConversion
+ {
+ eRgbIdentity = VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY,
+ eYcbcrIdentity = VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY,
+ eYcbcr709 = VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709,
+ eYcbcr601 = VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601,
+ eYcbcr2020 = VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020
+ };
+ using SamplerYcbcrModelConversionKHR = SamplerYcbcrModelConversion;
+
+ VULKAN_HPP_INLINE std::string to_string( SamplerYcbcrModelConversion value )
+ {
+ switch ( value )
+ {
+ case SamplerYcbcrModelConversion::eRgbIdentity: return "RgbIdentity";
+ case SamplerYcbcrModelConversion::eYcbcrIdentity: return "YcbcrIdentity";
+ case SamplerYcbcrModelConversion::eYcbcr709: return "Ycbcr709";
+ case SamplerYcbcrModelConversion::eYcbcr601: return "Ycbcr601";
+ case SamplerYcbcrModelConversion::eYcbcr2020: return "Ycbcr2020";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class SamplerYcbcrRange
+ {
+ eItuFull = VK_SAMPLER_YCBCR_RANGE_ITU_FULL,
+ eItuNarrow = VK_SAMPLER_YCBCR_RANGE_ITU_NARROW
+ };
+ using SamplerYcbcrRangeKHR = SamplerYcbcrRange;
+
+ VULKAN_HPP_INLINE std::string to_string( SamplerYcbcrRange value )
+ {
+ switch ( value )
+ {
+ case SamplerYcbcrRange::eItuFull: return "ItuFull";
+ case SamplerYcbcrRange::eItuNarrow: return "ItuNarrow";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class ChromaLocation
+ {
+ eCositedEven = VK_CHROMA_LOCATION_COSITED_EVEN,
+ eMidpoint = VK_CHROMA_LOCATION_MIDPOINT
+ };
+ using ChromaLocationKHR = ChromaLocation;
+
+ VULKAN_HPP_INLINE std::string to_string( ChromaLocation value )
+ {
+ switch ( value )
+ {
+ case ChromaLocation::eCositedEven: return "CositedEven";
+ case ChromaLocation::eMidpoint: return "Midpoint";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class DescriptorUpdateTemplateType
+ {
+ eDescriptorSet = VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET,
+ ePushDescriptorsKHR = VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR
+ };
+ using DescriptorUpdateTemplateTypeKHR = DescriptorUpdateTemplateType;
+
+ VULKAN_HPP_INLINE std::string to_string( DescriptorUpdateTemplateType value )
+ {
+ switch ( value )
+ {
+ case DescriptorUpdateTemplateType::eDescriptorSet: return "DescriptorSet";
+ case DescriptorUpdateTemplateType::ePushDescriptorsKHR: return "PushDescriptorsKHR";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class ExternalMemoryHandleTypeFlagBits : VkExternalMemoryHandleTypeFlags
+ {
+ eOpaqueFd = VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT,
+ eOpaqueWin32 = VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT,
+ eOpaqueWin32Kmt = VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT,
+ eD3D11Texture = VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT,
+ eD3D11TextureKmt = VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT,
+ eD3D12Heap = VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT,
+ eD3D12Resource = VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT,
+ eDmaBufEXT = VK_EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT,
+#if defined( VK_USE_PLATFORM_ANDROID_KHR )
+ eAndroidHardwareBufferANDROID = VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID,
+#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
+ eHostAllocationEXT = VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT,
+ eHostMappedForeignMemoryEXT = VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT,
+#if defined( VK_USE_PLATFORM_FUCHSIA )
+ eZirconVmoFUCHSIA = VK_EXTERNAL_MEMORY_HANDLE_TYPE_ZIRCON_VMO_BIT_FUCHSIA
+#endif /*VK_USE_PLATFORM_FUCHSIA*/
+ };
+ using ExternalMemoryHandleTypeFlagBitsKHR = ExternalMemoryHandleTypeFlagBits;
+
+ VULKAN_HPP_INLINE std::string to_string( ExternalMemoryHandleTypeFlagBits value )
+ {
+ switch ( value )
+ {
+ case ExternalMemoryHandleTypeFlagBits::eOpaqueFd: return "OpaqueFd";
+ case ExternalMemoryHandleTypeFlagBits::eOpaqueWin32: return "OpaqueWin32";
+ case ExternalMemoryHandleTypeFlagBits::eOpaqueWin32Kmt: return "OpaqueWin32Kmt";
+ case ExternalMemoryHandleTypeFlagBits::eD3D11Texture: return "D3D11Texture";
+ case ExternalMemoryHandleTypeFlagBits::eD3D11TextureKmt: return "D3D11TextureKmt";
+ case ExternalMemoryHandleTypeFlagBits::eD3D12Heap: return "D3D12Heap";
+ case ExternalMemoryHandleTypeFlagBits::eD3D12Resource: return "D3D12Resource";
+ case ExternalMemoryHandleTypeFlagBits::eDmaBufEXT: return "DmaBufEXT";
+#if defined( VK_USE_PLATFORM_ANDROID_KHR )
+ case ExternalMemoryHandleTypeFlagBits::eAndroidHardwareBufferANDROID: return "AndroidHardwareBufferANDROID";
+#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
+ case ExternalMemoryHandleTypeFlagBits::eHostAllocationEXT: return "HostAllocationEXT";
+ case ExternalMemoryHandleTypeFlagBits::eHostMappedForeignMemoryEXT: return "HostMappedForeignMemoryEXT";
+#if defined( VK_USE_PLATFORM_FUCHSIA )
+ case ExternalMemoryHandleTypeFlagBits::eZirconVmoFUCHSIA: return "ZirconVmoFUCHSIA";
+#endif /*VK_USE_PLATFORM_FUCHSIA*/
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class ExternalMemoryFeatureFlagBits : VkExternalMemoryFeatureFlags
+ {
+ eDedicatedOnly = VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT,
+ eExportable = VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT,
+ eImportable = VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT
+ };
+ using ExternalMemoryFeatureFlagBitsKHR = ExternalMemoryFeatureFlagBits;
+
+ VULKAN_HPP_INLINE std::string to_string( ExternalMemoryFeatureFlagBits value )
+ {
+ switch ( value )
+ {
+ case ExternalMemoryFeatureFlagBits::eDedicatedOnly: return "DedicatedOnly";
+ case ExternalMemoryFeatureFlagBits::eExportable: return "Exportable";
+ case ExternalMemoryFeatureFlagBits::eImportable: return "Importable";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class ExternalFenceHandleTypeFlagBits : VkExternalFenceHandleTypeFlags
+ {
+ eOpaqueFd = VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT,
+ eOpaqueWin32 = VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT,
+ eOpaqueWin32Kmt = VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT,
+ eSyncFd = VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT
+ };
+ using ExternalFenceHandleTypeFlagBitsKHR = ExternalFenceHandleTypeFlagBits;
+
+ VULKAN_HPP_INLINE std::string to_string( ExternalFenceHandleTypeFlagBits value )
+ {
+ switch ( value )
+ {
+ case ExternalFenceHandleTypeFlagBits::eOpaqueFd: return "OpaqueFd";
+ case ExternalFenceHandleTypeFlagBits::eOpaqueWin32: return "OpaqueWin32";
+ case ExternalFenceHandleTypeFlagBits::eOpaqueWin32Kmt: return "OpaqueWin32Kmt";
+ case ExternalFenceHandleTypeFlagBits::eSyncFd: return "SyncFd";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class ExternalFenceFeatureFlagBits : VkExternalFenceFeatureFlags
+ {
+ eExportable = VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT,
+ eImportable = VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT
+ };
+ using ExternalFenceFeatureFlagBitsKHR = ExternalFenceFeatureFlagBits;
+
+ VULKAN_HPP_INLINE std::string to_string( ExternalFenceFeatureFlagBits value )
+ {
+ switch ( value )
+ {
+ case ExternalFenceFeatureFlagBits::eExportable: return "Exportable";
+ case ExternalFenceFeatureFlagBits::eImportable: return "Importable";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class FenceImportFlagBits : VkFenceImportFlags
+ {
+ eTemporary = VK_FENCE_IMPORT_TEMPORARY_BIT
+ };
+ using FenceImportFlagBitsKHR = FenceImportFlagBits;
+
+ VULKAN_HPP_INLINE std::string to_string( FenceImportFlagBits value )
+ {
+ switch ( value )
+ {
+ case FenceImportFlagBits::eTemporary: return "Temporary";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class SemaphoreImportFlagBits : VkSemaphoreImportFlags
+ {
+ eTemporary = VK_SEMAPHORE_IMPORT_TEMPORARY_BIT
+ };
+ using SemaphoreImportFlagBitsKHR = SemaphoreImportFlagBits;
+
+ VULKAN_HPP_INLINE std::string to_string( SemaphoreImportFlagBits value )
+ {
+ switch ( value )
+ {
+ case SemaphoreImportFlagBits::eTemporary: return "Temporary";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class ExternalSemaphoreHandleTypeFlagBits : VkExternalSemaphoreHandleTypeFlags
+ {
+ eOpaqueFd = VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT,
+ eOpaqueWin32 = VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT,
+ eOpaqueWin32Kmt = VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT,
+ eD3D12Fence = VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT,
+ eSyncFd = VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT,
+#if defined( VK_USE_PLATFORM_FUCHSIA )
+ eZirconEventFUCHSIA = VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_ZIRCON_EVENT_BIT_FUCHSIA,
+#endif /*VK_USE_PLATFORM_FUCHSIA*/
+ eD3D11Fence = VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D11_FENCE_BIT
+ };
+ using ExternalSemaphoreHandleTypeFlagBitsKHR = ExternalSemaphoreHandleTypeFlagBits;
+
+ VULKAN_HPP_INLINE std::string to_string( ExternalSemaphoreHandleTypeFlagBits value )
+ {
+ switch ( value )
+ {
+ case ExternalSemaphoreHandleTypeFlagBits::eOpaqueFd: return "OpaqueFd";
+ case ExternalSemaphoreHandleTypeFlagBits::eOpaqueWin32: return "OpaqueWin32";
+ case ExternalSemaphoreHandleTypeFlagBits::eOpaqueWin32Kmt: return "OpaqueWin32Kmt";
+ case ExternalSemaphoreHandleTypeFlagBits::eD3D12Fence: return "D3D12Fence";
+ case ExternalSemaphoreHandleTypeFlagBits::eSyncFd: return "SyncFd";
+#if defined( VK_USE_PLATFORM_FUCHSIA )
+ case ExternalSemaphoreHandleTypeFlagBits::eZirconEventFUCHSIA: return "ZirconEventFUCHSIA";
+#endif /*VK_USE_PLATFORM_FUCHSIA*/
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class ExternalSemaphoreFeatureFlagBits : VkExternalSemaphoreFeatureFlags
+ {
+ eExportable = VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT,
+ eImportable = VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT
+ };
+ using ExternalSemaphoreFeatureFlagBitsKHR = ExternalSemaphoreFeatureFlagBits;
+
+ VULKAN_HPP_INLINE std::string to_string( ExternalSemaphoreFeatureFlagBits value )
+ {
+ switch ( value )
+ {
+ case ExternalSemaphoreFeatureFlagBits::eExportable: return "Exportable";
+ case ExternalSemaphoreFeatureFlagBits::eImportable: return "Importable";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class CommandPoolTrimFlagBits : VkCommandPoolTrimFlags
+ {
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( CommandPoolTrimFlagBits )
+ {
+ return "(void)";
+ }
+
+ enum class DescriptorUpdateTemplateCreateFlagBits : VkDescriptorUpdateTemplateCreateFlags
+ {
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( DescriptorUpdateTemplateCreateFlagBits )
+ {
+ return "(void)";
+ }
+
+ //=== VK_VERSION_1_2 ===
+
+ enum class DriverId
+ {
+ eAmdProprietary = VK_DRIVER_ID_AMD_PROPRIETARY,
+ eAmdOpenSource = VK_DRIVER_ID_AMD_OPEN_SOURCE,
+ eMesaRadv = VK_DRIVER_ID_MESA_RADV,
+ eNvidiaProprietary = VK_DRIVER_ID_NVIDIA_PROPRIETARY,
+ eIntelProprietaryWindows = VK_DRIVER_ID_INTEL_PROPRIETARY_WINDOWS,
+ eIntelOpenSourceMESA = VK_DRIVER_ID_INTEL_OPEN_SOURCE_MESA,
+ eImaginationProprietary = VK_DRIVER_ID_IMAGINATION_PROPRIETARY,
+ eQualcommProprietary = VK_DRIVER_ID_QUALCOMM_PROPRIETARY,
+ eArmProprietary = VK_DRIVER_ID_ARM_PROPRIETARY,
+ eGoogleSwiftshader = VK_DRIVER_ID_GOOGLE_SWIFTSHADER,
+ eGgpProprietary = VK_DRIVER_ID_GGP_PROPRIETARY,
+ eBroadcomProprietary = VK_DRIVER_ID_BROADCOM_PROPRIETARY,
+ eMesaLlvmpipe = VK_DRIVER_ID_MESA_LLVMPIPE,
+ eMoltenvk = VK_DRIVER_ID_MOLTENVK,
+ eCoreaviProprietary = VK_DRIVER_ID_COREAVI_PROPRIETARY,
+ eJuiceProprietary = VK_DRIVER_ID_JUICE_PROPRIETARY
+ };
+ using DriverIdKHR = DriverId;
+
+ VULKAN_HPP_INLINE std::string to_string( DriverId value )
+ {
+ switch ( value )
+ {
+ case DriverId::eAmdProprietary: return "AmdProprietary";
+ case DriverId::eAmdOpenSource: return "AmdOpenSource";
+ case DriverId::eMesaRadv: return "MesaRadv";
+ case DriverId::eNvidiaProprietary: return "NvidiaProprietary";
+ case DriverId::eIntelProprietaryWindows: return "IntelProprietaryWindows";
+ case DriverId::eIntelOpenSourceMESA: return "IntelOpenSourceMESA";
+ case DriverId::eImaginationProprietary: return "ImaginationProprietary";
+ case DriverId::eQualcommProprietary: return "QualcommProprietary";
+ case DriverId::eArmProprietary: return "ArmProprietary";
+ case DriverId::eGoogleSwiftshader: return "GoogleSwiftshader";
+ case DriverId::eGgpProprietary: return "GgpProprietary";
+ case DriverId::eBroadcomProprietary: return "BroadcomProprietary";
+ case DriverId::eMesaLlvmpipe: return "MesaLlvmpipe";
+ case DriverId::eMoltenvk: return "Moltenvk";
+ case DriverId::eCoreaviProprietary: return "CoreaviProprietary";
+ case DriverId::eJuiceProprietary: return "JuiceProprietary";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class ShaderFloatControlsIndependence
+ {
+ e32BitOnly = VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_32_BIT_ONLY,
+ eAll = VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_ALL,
+ eNone = VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_NONE
+ };
+ using ShaderFloatControlsIndependenceKHR = ShaderFloatControlsIndependence;
+
+ VULKAN_HPP_INLINE std::string to_string( ShaderFloatControlsIndependence value )
+ {
+ switch ( value )
+ {
+ case ShaderFloatControlsIndependence::e32BitOnly: return "32BitOnly";
+ case ShaderFloatControlsIndependence::eAll: return "All";
+ case ShaderFloatControlsIndependence::eNone: return "None";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class DescriptorBindingFlagBits : VkDescriptorBindingFlags
+ {
+ eUpdateAfterBind = VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT,
+ eUpdateUnusedWhilePending = VK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT,
+ ePartiallyBound = VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT,
+ eVariableDescriptorCount = VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT
+ };
+ using DescriptorBindingFlagBitsEXT = DescriptorBindingFlagBits;
+
+ VULKAN_HPP_INLINE std::string to_string( DescriptorBindingFlagBits value )
+ {
+ switch ( value )
+ {
+ case DescriptorBindingFlagBits::eUpdateAfterBind: return "UpdateAfterBind";
+ case DescriptorBindingFlagBits::eUpdateUnusedWhilePending: return "UpdateUnusedWhilePending";
+ case DescriptorBindingFlagBits::ePartiallyBound: return "PartiallyBound";
+ case DescriptorBindingFlagBits::eVariableDescriptorCount: return "VariableDescriptorCount";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class ResolveModeFlagBits : VkResolveModeFlags
+ {
+ eNone = VK_RESOLVE_MODE_NONE,
+ eSampleZero = VK_RESOLVE_MODE_SAMPLE_ZERO_BIT,
+ eAverage = VK_RESOLVE_MODE_AVERAGE_BIT,
+ eMin = VK_RESOLVE_MODE_MIN_BIT,
+ eMax = VK_RESOLVE_MODE_MAX_BIT
+ };
+ using ResolveModeFlagBitsKHR = ResolveModeFlagBits;
+
+ VULKAN_HPP_INLINE std::string to_string( ResolveModeFlagBits value )
+ {
+ switch ( value )
+ {
+ case ResolveModeFlagBits::eNone: return "None";
+ case ResolveModeFlagBits::eSampleZero: return "SampleZero";
+ case ResolveModeFlagBits::eAverage: return "Average";
+ case ResolveModeFlagBits::eMin: return "Min";
+ case ResolveModeFlagBits::eMax: return "Max";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class SamplerReductionMode
+ {
+ eWeightedAverage = VK_SAMPLER_REDUCTION_MODE_WEIGHTED_AVERAGE,
+ eMin = VK_SAMPLER_REDUCTION_MODE_MIN,
+ eMax = VK_SAMPLER_REDUCTION_MODE_MAX
+ };
+ using SamplerReductionModeEXT = SamplerReductionMode;
+
+ VULKAN_HPP_INLINE std::string to_string( SamplerReductionMode value )
+ {
+ switch ( value )
+ {
+ case SamplerReductionMode::eWeightedAverage: return "WeightedAverage";
+ case SamplerReductionMode::eMin: return "Min";
+ case SamplerReductionMode::eMax: return "Max";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class SemaphoreType
+ {
+ eBinary = VK_SEMAPHORE_TYPE_BINARY,
+ eTimeline = VK_SEMAPHORE_TYPE_TIMELINE
+ };
+ using SemaphoreTypeKHR = SemaphoreType;
+
+ VULKAN_HPP_INLINE std::string to_string( SemaphoreType value )
+ {
+ switch ( value )
+ {
+ case SemaphoreType::eBinary: return "Binary";
+ case SemaphoreType::eTimeline: return "Timeline";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class SemaphoreWaitFlagBits : VkSemaphoreWaitFlags
+ {
+ eAny = VK_SEMAPHORE_WAIT_ANY_BIT
+ };
+ using SemaphoreWaitFlagBitsKHR = SemaphoreWaitFlagBits;
+
+ VULKAN_HPP_INLINE std::string to_string( SemaphoreWaitFlagBits value )
+ {
+ switch ( value )
+ {
+ case SemaphoreWaitFlagBits::eAny: return "Any";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ //=== VK_KHR_surface ===
+
+ enum class SurfaceTransformFlagBitsKHR : VkSurfaceTransformFlagsKHR
+ {
+ eIdentity = VK_SURFACE_TRANSFORM_IDENTITY_BIT_KHR,
+ eRotate90 = VK_SURFACE_TRANSFORM_ROTATE_90_BIT_KHR,
+ eRotate180 = VK_SURFACE_TRANSFORM_ROTATE_180_BIT_KHR,
+ eRotate270 = VK_SURFACE_TRANSFORM_ROTATE_270_BIT_KHR,
+ eHorizontalMirror = VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_BIT_KHR,
+ eHorizontalMirrorRotate90 = VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_90_BIT_KHR,
+ eHorizontalMirrorRotate180 = VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_180_BIT_KHR,
+ eHorizontalMirrorRotate270 = VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_270_BIT_KHR,
+ eInherit = VK_SURFACE_TRANSFORM_INHERIT_BIT_KHR
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( SurfaceTransformFlagBitsKHR value )
+ {
+ switch ( value )
+ {
+ case SurfaceTransformFlagBitsKHR::eIdentity: return "Identity";
+ case SurfaceTransformFlagBitsKHR::eRotate90: return "Rotate90";
+ case SurfaceTransformFlagBitsKHR::eRotate180: return "Rotate180";
+ case SurfaceTransformFlagBitsKHR::eRotate270: return "Rotate270";
+ case SurfaceTransformFlagBitsKHR::eHorizontalMirror: return "HorizontalMirror";
+ case SurfaceTransformFlagBitsKHR::eHorizontalMirrorRotate90: return "HorizontalMirrorRotate90";
+ case SurfaceTransformFlagBitsKHR::eHorizontalMirrorRotate180: return "HorizontalMirrorRotate180";
+ case SurfaceTransformFlagBitsKHR::eHorizontalMirrorRotate270: return "HorizontalMirrorRotate270";
+ case SurfaceTransformFlagBitsKHR::eInherit: return "Inherit";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class PresentModeKHR
+ {
+ eImmediate = VK_PRESENT_MODE_IMMEDIATE_KHR,
+ eMailbox = VK_PRESENT_MODE_MAILBOX_KHR,
+ eFifo = VK_PRESENT_MODE_FIFO_KHR,
+ eFifoRelaxed = VK_PRESENT_MODE_FIFO_RELAXED_KHR,
+ eSharedDemandRefresh = VK_PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR,
+ eSharedContinuousRefresh = VK_PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( PresentModeKHR value )
+ {
+ switch ( value )
+ {
+ case PresentModeKHR::eImmediate: return "Immediate";
+ case PresentModeKHR::eMailbox: return "Mailbox";
+ case PresentModeKHR::eFifo: return "Fifo";
+ case PresentModeKHR::eFifoRelaxed: return "FifoRelaxed";
+ case PresentModeKHR::eSharedDemandRefresh: return "SharedDemandRefresh";
+ case PresentModeKHR::eSharedContinuousRefresh: return "SharedContinuousRefresh";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class ColorSpaceKHR
+ {
+ eSrgbNonlinear = VK_COLOR_SPACE_SRGB_NONLINEAR_KHR,
+ eDisplayP3NonlinearEXT = VK_COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT,
+ eExtendedSrgbLinearEXT = VK_COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT,
+ eDisplayP3LinearEXT = VK_COLOR_SPACE_DISPLAY_P3_LINEAR_EXT,
+ eDciP3NonlinearEXT = VK_COLOR_SPACE_DCI_P3_NONLINEAR_EXT,
+ eBt709LinearEXT = VK_COLOR_SPACE_BT709_LINEAR_EXT,
+ eBt709NonlinearEXT = VK_COLOR_SPACE_BT709_NONLINEAR_EXT,
+ eBt2020LinearEXT = VK_COLOR_SPACE_BT2020_LINEAR_EXT,
+ eHdr10St2084EXT = VK_COLOR_SPACE_HDR10_ST2084_EXT,
+ eDolbyvisionEXT = VK_COLOR_SPACE_DOLBYVISION_EXT,
+ eHdr10HlgEXT = VK_COLOR_SPACE_HDR10_HLG_EXT,
+ eAdobergbLinearEXT = VK_COLOR_SPACE_ADOBERGB_LINEAR_EXT,
+ eAdobergbNonlinearEXT = VK_COLOR_SPACE_ADOBERGB_NONLINEAR_EXT,
+ ePassThroughEXT = VK_COLOR_SPACE_PASS_THROUGH_EXT,
+ eExtendedSrgbNonlinearEXT = VK_COLOR_SPACE_EXTENDED_SRGB_NONLINEAR_EXT,
+ eDisplayNativeAMD = VK_COLOR_SPACE_DISPLAY_NATIVE_AMD,
+ eVkColorspaceSrgbNonlinear = VK_COLORSPACE_SRGB_NONLINEAR_KHR,
+ eDciP3LinearEXT = VK_COLOR_SPACE_DCI_P3_LINEAR_EXT
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( ColorSpaceKHR value )
+ {
+ switch ( value )
+ {
+ case ColorSpaceKHR::eSrgbNonlinear: return "SrgbNonlinear";
+ case ColorSpaceKHR::eDisplayP3NonlinearEXT: return "DisplayP3NonlinearEXT";
+ case ColorSpaceKHR::eExtendedSrgbLinearEXT: return "ExtendedSrgbLinearEXT";
+ case ColorSpaceKHR::eDisplayP3LinearEXT: return "DisplayP3LinearEXT";
+ case ColorSpaceKHR::eDciP3NonlinearEXT: return "DciP3NonlinearEXT";
+ case ColorSpaceKHR::eBt709LinearEXT: return "Bt709LinearEXT";
+ case ColorSpaceKHR::eBt709NonlinearEXT: return "Bt709NonlinearEXT";
+ case ColorSpaceKHR::eBt2020LinearEXT: return "Bt2020LinearEXT";
+ case ColorSpaceKHR::eHdr10St2084EXT: return "Hdr10St2084EXT";
+ case ColorSpaceKHR::eDolbyvisionEXT: return "DolbyvisionEXT";
+ case ColorSpaceKHR::eHdr10HlgEXT: return "Hdr10HlgEXT";
+ case ColorSpaceKHR::eAdobergbLinearEXT: return "AdobergbLinearEXT";
+ case ColorSpaceKHR::eAdobergbNonlinearEXT: return "AdobergbNonlinearEXT";
+ case ColorSpaceKHR::ePassThroughEXT: return "PassThroughEXT";
+ case ColorSpaceKHR::eExtendedSrgbNonlinearEXT: return "ExtendedSrgbNonlinearEXT";
+ case ColorSpaceKHR::eDisplayNativeAMD: return "DisplayNativeAMD";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class CompositeAlphaFlagBitsKHR : VkCompositeAlphaFlagsKHR
+ {
+ eOpaque = VK_COMPOSITE_ALPHA_OPAQUE_BIT_KHR,
+ ePreMultiplied = VK_COMPOSITE_ALPHA_PRE_MULTIPLIED_BIT_KHR,
+ ePostMultiplied = VK_COMPOSITE_ALPHA_POST_MULTIPLIED_BIT_KHR,
+ eInherit = VK_COMPOSITE_ALPHA_INHERIT_BIT_KHR
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( CompositeAlphaFlagBitsKHR value )
+ {
+ switch ( value )
+ {
+ case CompositeAlphaFlagBitsKHR::eOpaque: return "Opaque";
+ case CompositeAlphaFlagBitsKHR::ePreMultiplied: return "PreMultiplied";
+ case CompositeAlphaFlagBitsKHR::ePostMultiplied: return "PostMultiplied";
+ case CompositeAlphaFlagBitsKHR::eInherit: return "Inherit";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ //=== VK_KHR_swapchain ===
+
+ enum class SwapchainCreateFlagBitsKHR : VkSwapchainCreateFlagsKHR
+ {
+ eSplitInstanceBindRegions = VK_SWAPCHAIN_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR,
+ eProtected = VK_SWAPCHAIN_CREATE_PROTECTED_BIT_KHR,
+ eMutableFormat = VK_SWAPCHAIN_CREATE_MUTABLE_FORMAT_BIT_KHR
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( SwapchainCreateFlagBitsKHR value )
+ {
+ switch ( value )
+ {
+ case SwapchainCreateFlagBitsKHR::eSplitInstanceBindRegions: return "SplitInstanceBindRegions";
+ case SwapchainCreateFlagBitsKHR::eProtected: return "Protected";
+ case SwapchainCreateFlagBitsKHR::eMutableFormat: return "MutableFormat";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class DeviceGroupPresentModeFlagBitsKHR : VkDeviceGroupPresentModeFlagsKHR
+ {
+ eLocal = VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHR,
+ eRemote = VK_DEVICE_GROUP_PRESENT_MODE_REMOTE_BIT_KHR,
+ eSum = VK_DEVICE_GROUP_PRESENT_MODE_SUM_BIT_KHR,
+ eLocalMultiDevice = VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_MULTI_DEVICE_BIT_KHR
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( DeviceGroupPresentModeFlagBitsKHR value )
+ {
+ switch ( value )
+ {
+ case DeviceGroupPresentModeFlagBitsKHR::eLocal: return "Local";
+ case DeviceGroupPresentModeFlagBitsKHR::eRemote: return "Remote";
+ case DeviceGroupPresentModeFlagBitsKHR::eSum: return "Sum";
+ case DeviceGroupPresentModeFlagBitsKHR::eLocalMultiDevice: return "LocalMultiDevice";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ //=== VK_KHR_display ===
+
+ enum class DisplayPlaneAlphaFlagBitsKHR : VkDisplayPlaneAlphaFlagsKHR
+ {
+ eOpaque = VK_DISPLAY_PLANE_ALPHA_OPAQUE_BIT_KHR,
+ eGlobal = VK_DISPLAY_PLANE_ALPHA_GLOBAL_BIT_KHR,
+ ePerPixel = VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_BIT_KHR,
+ ePerPixelPremultiplied = VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_PREMULTIPLIED_BIT_KHR
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( DisplayPlaneAlphaFlagBitsKHR value )
+ {
+ switch ( value )
+ {
+ case DisplayPlaneAlphaFlagBitsKHR::eOpaque: return "Opaque";
+ case DisplayPlaneAlphaFlagBitsKHR::eGlobal: return "Global";
+ case DisplayPlaneAlphaFlagBitsKHR::ePerPixel: return "PerPixel";
+ case DisplayPlaneAlphaFlagBitsKHR::ePerPixelPremultiplied: return "PerPixelPremultiplied";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class DisplayModeCreateFlagBitsKHR : VkDisplayModeCreateFlagsKHR
+ {
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( DisplayModeCreateFlagBitsKHR )
+ {
+ return "(void)";
+ }
+
+ enum class DisplaySurfaceCreateFlagBitsKHR : VkDisplaySurfaceCreateFlagsKHR
+ {
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( DisplaySurfaceCreateFlagBitsKHR )
+ {
+ return "(void)";
+ }
+
+#if defined( VK_USE_PLATFORM_XLIB_KHR )
+ //=== VK_KHR_xlib_surface ===
+
+ enum class XlibSurfaceCreateFlagBitsKHR : VkXlibSurfaceCreateFlagsKHR
+ {
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( XlibSurfaceCreateFlagBitsKHR )
+ {
+ return "(void)";
+ }
+#endif /*VK_USE_PLATFORM_XLIB_KHR*/
+
+#if defined( VK_USE_PLATFORM_XCB_KHR )
+ //=== VK_KHR_xcb_surface ===
+
+ enum class XcbSurfaceCreateFlagBitsKHR : VkXcbSurfaceCreateFlagsKHR
+ {
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( XcbSurfaceCreateFlagBitsKHR )
+ {
+ return "(void)";
+ }
+#endif /*VK_USE_PLATFORM_XCB_KHR*/
+
+#if defined( VK_USE_PLATFORM_WAYLAND_KHR )
+ //=== VK_KHR_wayland_surface ===
+
+ enum class WaylandSurfaceCreateFlagBitsKHR : VkWaylandSurfaceCreateFlagsKHR
+ {
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( WaylandSurfaceCreateFlagBitsKHR )
+ {
+ return "(void)";
+ }
+#endif /*VK_USE_PLATFORM_WAYLAND_KHR*/
+
+#if defined( VK_USE_PLATFORM_ANDROID_KHR )
+ //=== VK_KHR_android_surface ===
+
+ enum class AndroidSurfaceCreateFlagBitsKHR : VkAndroidSurfaceCreateFlagsKHR
+ {
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( AndroidSurfaceCreateFlagBitsKHR )
+ {
+ return "(void)";
+ }
+#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
+
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ //=== VK_KHR_win32_surface ===
+
+ enum class Win32SurfaceCreateFlagBitsKHR : VkWin32SurfaceCreateFlagsKHR
+ {
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( Win32SurfaceCreateFlagBitsKHR )
+ {
+ return "(void)";
+ }
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+
+ //=== VK_EXT_debug_report ===
+
+ enum class DebugReportFlagBitsEXT : VkDebugReportFlagsEXT
+ {
+ eInformation = VK_DEBUG_REPORT_INFORMATION_BIT_EXT,
+ eWarning = VK_DEBUG_REPORT_WARNING_BIT_EXT,
+ ePerformanceWarning = VK_DEBUG_REPORT_PERFORMANCE_WARNING_BIT_EXT,
+ eError = VK_DEBUG_REPORT_ERROR_BIT_EXT,
+ eDebug = VK_DEBUG_REPORT_DEBUG_BIT_EXT
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( DebugReportFlagBitsEXT value )
+ {
+ switch ( value )
+ {
+ case DebugReportFlagBitsEXT::eInformation: return "Information";
+ case DebugReportFlagBitsEXT::eWarning: return "Warning";
+ case DebugReportFlagBitsEXT::ePerformanceWarning: return "PerformanceWarning";
+ case DebugReportFlagBitsEXT::eError: return "Error";
+ case DebugReportFlagBitsEXT::eDebug: return "Debug";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class DebugReportObjectTypeEXT
+ {
+ eUnknown = VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT,
+ eInstance = VK_DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT,
+ ePhysicalDevice = VK_DEBUG_REPORT_OBJECT_TYPE_PHYSICAL_DEVICE_EXT,
+ eDevice = VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_EXT,
+ eQueue = VK_DEBUG_REPORT_OBJECT_TYPE_QUEUE_EXT,
+ eSemaphore = VK_DEBUG_REPORT_OBJECT_TYPE_SEMAPHORE_EXT,
+ eCommandBuffer = VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT,
+ eFence = VK_DEBUG_REPORT_OBJECT_TYPE_FENCE_EXT,
+ eDeviceMemory = VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_MEMORY_EXT,
+ eBuffer = VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_EXT,
+ eImage = VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_EXT,
+ eEvent = VK_DEBUG_REPORT_OBJECT_TYPE_EVENT_EXT,
+ eQueryPool = VK_DEBUG_REPORT_OBJECT_TYPE_QUERY_POOL_EXT,
+ eBufferView = VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_VIEW_EXT,
+ eImageView = VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_VIEW_EXT,
+ eShaderModule = VK_DEBUG_REPORT_OBJECT_TYPE_SHADER_MODULE_EXT,
+ ePipelineCache = VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_CACHE_EXT,
+ ePipelineLayout = VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_LAYOUT_EXT,
+ eRenderPass = VK_DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT,
+ ePipeline = VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT,
+ eDescriptorSetLayout = VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT_EXT,
+ eSampler = VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_EXT,
+ eDescriptorPool = VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_POOL_EXT,
+ eDescriptorSet = VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_EXT,
+ eFramebuffer = VK_DEBUG_REPORT_OBJECT_TYPE_FRAMEBUFFER_EXT,
+ eCommandPool = VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_POOL_EXT,
+ eSurfaceKHR = VK_DEBUG_REPORT_OBJECT_TYPE_SURFACE_KHR_EXT,
+ eSwapchainKHR = VK_DEBUG_REPORT_OBJECT_TYPE_SWAPCHAIN_KHR_EXT,
+ eDebugReportCallbackEXT = VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT_EXT,
+ eDisplayKHR = VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_KHR_EXT,
+ eDisplayModeKHR = VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_MODE_KHR_EXT,
+ eValidationCacheEXT = VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT,
+ eSamplerYcbcrConversion = VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_EXT,
+ eDescriptorUpdateTemplate = VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_EXT,
+ eCuModuleNVX = VK_DEBUG_REPORT_OBJECT_TYPE_CU_MODULE_NVX_EXT,
+ eCuFunctionNVX = VK_DEBUG_REPORT_OBJECT_TYPE_CU_FUNCTION_NVX_EXT,
+ eAccelerationStructureKHR = VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR_EXT,
+ eAccelerationStructureNV = VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV_EXT,
+ eDebugReport = VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_EXT,
+ eDescriptorUpdateTemplateKHR = VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR_EXT,
+ eSamplerYcbcrConversionKHR = VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_KHR_EXT,
+ eValidationCache = VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( DebugReportObjectTypeEXT value )
+ {
+ switch ( value )
+ {
+ case DebugReportObjectTypeEXT::eUnknown: return "Unknown";
+ case DebugReportObjectTypeEXT::eInstance: return "Instance";
+ case DebugReportObjectTypeEXT::ePhysicalDevice: return "PhysicalDevice";
+ case DebugReportObjectTypeEXT::eDevice: return "Device";
+ case DebugReportObjectTypeEXT::eQueue: return "Queue";
+ case DebugReportObjectTypeEXT::eSemaphore: return "Semaphore";
+ case DebugReportObjectTypeEXT::eCommandBuffer: return "CommandBuffer";
+ case DebugReportObjectTypeEXT::eFence: return "Fence";
+ case DebugReportObjectTypeEXT::eDeviceMemory: return "DeviceMemory";
+ case DebugReportObjectTypeEXT::eBuffer: return "Buffer";
+ case DebugReportObjectTypeEXT::eImage: return "Image";
+ case DebugReportObjectTypeEXT::eEvent: return "Event";
+ case DebugReportObjectTypeEXT::eQueryPool: return "QueryPool";
+ case DebugReportObjectTypeEXT::eBufferView: return "BufferView";
+ case DebugReportObjectTypeEXT::eImageView: return "ImageView";
+ case DebugReportObjectTypeEXT::eShaderModule: return "ShaderModule";
+ case DebugReportObjectTypeEXT::ePipelineCache: return "PipelineCache";
+ case DebugReportObjectTypeEXT::ePipelineLayout: return "PipelineLayout";
+ case DebugReportObjectTypeEXT::eRenderPass: return "RenderPass";
+ case DebugReportObjectTypeEXT::ePipeline: return "Pipeline";
+ case DebugReportObjectTypeEXT::eDescriptorSetLayout: return "DescriptorSetLayout";
+ case DebugReportObjectTypeEXT::eSampler: return "Sampler";
+ case DebugReportObjectTypeEXT::eDescriptorPool: return "DescriptorPool";
+ case DebugReportObjectTypeEXT::eDescriptorSet: return "DescriptorSet";
+ case DebugReportObjectTypeEXT::eFramebuffer: return "Framebuffer";
+ case DebugReportObjectTypeEXT::eCommandPool: return "CommandPool";
+ case DebugReportObjectTypeEXT::eSurfaceKHR: return "SurfaceKHR";
+ case DebugReportObjectTypeEXT::eSwapchainKHR: return "SwapchainKHR";
+ case DebugReportObjectTypeEXT::eDebugReportCallbackEXT: return "DebugReportCallbackEXT";
+ case DebugReportObjectTypeEXT::eDisplayKHR: return "DisplayKHR";
+ case DebugReportObjectTypeEXT::eDisplayModeKHR: return "DisplayModeKHR";
+ case DebugReportObjectTypeEXT::eValidationCacheEXT: return "ValidationCacheEXT";
+ case DebugReportObjectTypeEXT::eSamplerYcbcrConversion: return "SamplerYcbcrConversion";
+ case DebugReportObjectTypeEXT::eDescriptorUpdateTemplate: return "DescriptorUpdateTemplate";
+ case DebugReportObjectTypeEXT::eCuModuleNVX: return "CuModuleNVX";
+ case DebugReportObjectTypeEXT::eCuFunctionNVX: return "CuFunctionNVX";
+ case DebugReportObjectTypeEXT::eAccelerationStructureKHR: return "AccelerationStructureKHR";
+ case DebugReportObjectTypeEXT::eAccelerationStructureNV: return "AccelerationStructureNV";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ //=== VK_AMD_rasterization_order ===
+
+ enum class RasterizationOrderAMD
+ {
+ eStrict = VK_RASTERIZATION_ORDER_STRICT_AMD,
+ eRelaxed = VK_RASTERIZATION_ORDER_RELAXED_AMD
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( RasterizationOrderAMD value )
+ {
+ switch ( value )
+ {
+ case RasterizationOrderAMD::eStrict: return "Strict";
+ case RasterizationOrderAMD::eRelaxed: return "Relaxed";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ //=== VK_KHR_video_queue ===
+
+ enum class VideoCodecOperationFlagBitsKHR : VkVideoCodecOperationFlagsKHR
+ {
+ eInvalid = VK_VIDEO_CODEC_OPERATION_INVALID_BIT_KHR,
+# if defined( VK_ENABLE_BETA_EXTENSIONS )
+ eEncodeH264EXT = VK_VIDEO_CODEC_OPERATION_ENCODE_H264_BIT_EXT,
+ eDecodeH264EXT = VK_VIDEO_CODEC_OPERATION_DECODE_H264_BIT_EXT,
+ eDecodeH265EXT = VK_VIDEO_CODEC_OPERATION_DECODE_H265_BIT_EXT
+# endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( VideoCodecOperationFlagBitsKHR value )
+ {
+ switch ( value )
+ {
+ case VideoCodecOperationFlagBitsKHR::eInvalid: return "Invalid";
+# if defined( VK_ENABLE_BETA_EXTENSIONS )
+ case VideoCodecOperationFlagBitsKHR::eEncodeH264EXT: return "EncodeH264EXT";
+ case VideoCodecOperationFlagBitsKHR::eDecodeH264EXT: return "DecodeH264EXT";
+ case VideoCodecOperationFlagBitsKHR::eDecodeH265EXT: return "DecodeH265EXT";
+# endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class VideoChromaSubsamplingFlagBitsKHR : VkVideoChromaSubsamplingFlagsKHR
+ {
+ eInvalid = VK_VIDEO_CHROMA_SUBSAMPLING_INVALID_BIT_KHR,
+ eMonochrome = VK_VIDEO_CHROMA_SUBSAMPLING_MONOCHROME_BIT_KHR,
+ e420 = VK_VIDEO_CHROMA_SUBSAMPLING_420_BIT_KHR,
+ e422 = VK_VIDEO_CHROMA_SUBSAMPLING_422_BIT_KHR,
+ e444 = VK_VIDEO_CHROMA_SUBSAMPLING_444_BIT_KHR
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( VideoChromaSubsamplingFlagBitsKHR value )
+ {
+ switch ( value )
+ {
+ case VideoChromaSubsamplingFlagBitsKHR::eInvalid: return "Invalid";
+ case VideoChromaSubsamplingFlagBitsKHR::eMonochrome: return "Monochrome";
+ case VideoChromaSubsamplingFlagBitsKHR::e420: return "420";
+ case VideoChromaSubsamplingFlagBitsKHR::e422: return "422";
+ case VideoChromaSubsamplingFlagBitsKHR::e444: return "444";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class VideoComponentBitDepthFlagBitsKHR : VkVideoComponentBitDepthFlagsKHR
+ {
+ eInvalid = VK_VIDEO_COMPONENT_BIT_DEPTH_INVALID_KHR,
+ e8 = VK_VIDEO_COMPONENT_BIT_DEPTH_8_BIT_KHR,
+ e10 = VK_VIDEO_COMPONENT_BIT_DEPTH_10_BIT_KHR,
+ e12 = VK_VIDEO_COMPONENT_BIT_DEPTH_12_BIT_KHR
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( VideoComponentBitDepthFlagBitsKHR value )
+ {
+ switch ( value )
+ {
+ case VideoComponentBitDepthFlagBitsKHR::eInvalid: return "Invalid";
+ case VideoComponentBitDepthFlagBitsKHR::e8: return "8";
+ case VideoComponentBitDepthFlagBitsKHR::e10: return "10";
+ case VideoComponentBitDepthFlagBitsKHR::e12: return "12";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class VideoCapabilitiesFlagBitsKHR : VkVideoCapabilitiesFlagsKHR
+ {
+ eProtectedContent = VK_VIDEO_CAPABILITIES_PROTECTED_CONTENT_BIT_KHR,
+ eSeparateReferenceImages = VK_VIDEO_CAPABILITIES_SEPARATE_REFERENCE_IMAGES_BIT_KHR
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( VideoCapabilitiesFlagBitsKHR value )
+ {
+ switch ( value )
+ {
+ case VideoCapabilitiesFlagBitsKHR::eProtectedContent: return "ProtectedContent";
+ case VideoCapabilitiesFlagBitsKHR::eSeparateReferenceImages: return "SeparateReferenceImages";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class VideoSessionCreateFlagBitsKHR : VkVideoSessionCreateFlagsKHR
+ {
+ eDefault = VK_VIDEO_SESSION_CREATE_DEFAULT_KHR,
+ eProtectedContent = VK_VIDEO_SESSION_CREATE_PROTECTED_CONTENT_BIT_KHR
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( VideoSessionCreateFlagBitsKHR value )
+ {
+ switch ( value )
+ {
+ case VideoSessionCreateFlagBitsKHR::eDefault: return "Default";
+ case VideoSessionCreateFlagBitsKHR::eProtectedContent: return "ProtectedContent";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class VideoCodingControlFlagBitsKHR : VkVideoCodingControlFlagsKHR
+ {
+ eDefault = VK_VIDEO_CODING_CONTROL_DEFAULT_KHR,
+ eReset = VK_VIDEO_CODING_CONTROL_RESET_BIT_KHR
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( VideoCodingControlFlagBitsKHR value )
+ {
+ switch ( value )
+ {
+ case VideoCodingControlFlagBitsKHR::eDefault: return "Default";
+ case VideoCodingControlFlagBitsKHR::eReset: return "Reset";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class VideoCodingQualityPresetFlagBitsKHR : VkVideoCodingQualityPresetFlagsKHR
+ {
+ eDefault = VK_VIDEO_CODING_QUALITY_PRESET_DEFAULT_BIT_KHR,
+ eNormal = VK_VIDEO_CODING_QUALITY_PRESET_NORMAL_BIT_KHR,
+ ePower = VK_VIDEO_CODING_QUALITY_PRESET_POWER_BIT_KHR,
+ eQuality = VK_VIDEO_CODING_QUALITY_PRESET_QUALITY_BIT_KHR
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( VideoCodingQualityPresetFlagBitsKHR value )
+ {
+ switch ( value )
+ {
+ case VideoCodingQualityPresetFlagBitsKHR::eDefault: return "Default";
+ case VideoCodingQualityPresetFlagBitsKHR::eNormal: return "Normal";
+ case VideoCodingQualityPresetFlagBitsKHR::ePower: return "Power";
+ case VideoCodingQualityPresetFlagBitsKHR::eQuality: return "Quality";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class QueryResultStatusKHR
+ {
+ eError = VK_QUERY_RESULT_STATUS_ERROR_KHR,
+ eNotReady = VK_QUERY_RESULT_STATUS_NOT_READY_KHR,
+ eComplete = VK_QUERY_RESULT_STATUS_COMPLETE_KHR
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( QueryResultStatusKHR value )
+ {
+ switch ( value )
+ {
+ case QueryResultStatusKHR::eError: return "Error";
+ case QueryResultStatusKHR::eNotReady: return "NotReady";
+ case QueryResultStatusKHR::eComplete: return "Complete";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class VideoBeginCodingFlagBitsKHR : VkVideoBeginCodingFlagsKHR
+ {
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( VideoBeginCodingFlagBitsKHR )
+ {
+ return "(void)";
+ }
+
+ enum class VideoEndCodingFlagBitsKHR : VkVideoEndCodingFlagsKHR
+ {
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( VideoEndCodingFlagBitsKHR )
+ {
+ return "(void)";
+ }
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ //=== VK_KHR_video_decode_queue ===
+
+ enum class VideoDecodeFlagBitsKHR : VkVideoDecodeFlagsKHR
+ {
+ eDefault = VK_VIDEO_DECODE_DEFAULT_KHR,
+ eReserved0 = VK_VIDEO_DECODE_RESERVED_0_BIT_KHR
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( VideoDecodeFlagBitsKHR value )
+ {
+ switch ( value )
+ {
+ case VideoDecodeFlagBitsKHR::eDefault: return "Default";
+ case VideoDecodeFlagBitsKHR::eReserved0: return "Reserved0";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+ //=== VK_EXT_transform_feedback ===
+
+ enum class PipelineRasterizationStateStreamCreateFlagBitsEXT : VkPipelineRasterizationStateStreamCreateFlagsEXT
+ {
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( PipelineRasterizationStateStreamCreateFlagBitsEXT )
+ {
+ return "(void)";
+ }
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ //=== VK_EXT_video_encode_h264 ===
+
+ enum class VideoEncodeH264CapabilitiesFlagBitsEXT : VkVideoEncodeH264CapabilitiesFlagsEXT
+ {
+ eVkVideoEncodeH264CapabilityCabac = VK_VIDEO_ENCODE_H264_CAPABILITY_CABAC_BIT_EXT,
+ eVkVideoEncodeH264CapabilityCavlc = VK_VIDEO_ENCODE_H264_CAPABILITY_CAVLC_BIT_EXT,
+ eVkVideoEncodeH264CapabilityWeightedBiPredImplicit =
+ VK_VIDEO_ENCODE_H264_CAPABILITY_WEIGHTED_BI_PRED_IMPLICIT_BIT_EXT,
+ eVkVideoEncodeH264CapabilityTransform8X8 = VK_VIDEO_ENCODE_H264_CAPABILITY_TRANSFORM_8X8_BIT_EXT,
+ eVkVideoEncodeH264CapabilityChromaQpOffset = VK_VIDEO_ENCODE_H264_CAPABILITY_CHROMA_QP_OFFSET_BIT_EXT,
+ eVkVideoEncodeH264CapabilitySecondChromaQpOffset = VK_VIDEO_ENCODE_H264_CAPABILITY_SECOND_CHROMA_QP_OFFSET_BIT_EXT,
+ eVkVideoEncodeH264CapabilityDeblockingFilterDisabled =
+ VK_VIDEO_ENCODE_H264_CAPABILITY_DEBLOCKING_FILTER_DISABLED_BIT_EXT,
+ eVkVideoEncodeH264CapabilityDeblockingFilterEnabled =
+ VK_VIDEO_ENCODE_H264_CAPABILITY_DEBLOCKING_FILTER_ENABLED_BIT_EXT,
+ eVkVideoEncodeH264CapabilityDeblockingFilterPartial =
+ VK_VIDEO_ENCODE_H264_CAPABILITY_DEBLOCKING_FILTER_PARTIAL_BIT_EXT,
+ eVkVideoEncodeH264CapabilityMultipleSlicePerFrame =
+ VK_VIDEO_ENCODE_H264_CAPABILITY_MULTIPLE_SLICE_PER_FRAME_BIT_EXT,
+ eVkVideoEncodeH264CapabilityEvenlyDistributedSliceSize =
+ VK_VIDEO_ENCODE_H264_CAPABILITY_EVENLY_DISTRIBUTED_SLICE_SIZE_BIT_EXT
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( VideoEncodeH264CapabilitiesFlagBitsEXT value )
+ {
+ switch ( value )
+ {
+ case VideoEncodeH264CapabilitiesFlagBitsEXT::eVkVideoEncodeH264CapabilityCabac:
+ return "VkVideoEncodeH264CapabilityCabac";
+ case VideoEncodeH264CapabilitiesFlagBitsEXT::eVkVideoEncodeH264CapabilityCavlc:
+ return "VkVideoEncodeH264CapabilityCavlc";
+ case VideoEncodeH264CapabilitiesFlagBitsEXT::eVkVideoEncodeH264CapabilityWeightedBiPredImplicit:
+ return "VkVideoEncodeH264CapabilityWeightedBiPredImplicit";
+ case VideoEncodeH264CapabilitiesFlagBitsEXT::eVkVideoEncodeH264CapabilityTransform8X8:
+ return "VkVideoEncodeH264CapabilityTransform8X8";
+ case VideoEncodeH264CapabilitiesFlagBitsEXT::eVkVideoEncodeH264CapabilityChromaQpOffset:
+ return "VkVideoEncodeH264CapabilityChromaQpOffset";
+ case VideoEncodeH264CapabilitiesFlagBitsEXT::eVkVideoEncodeH264CapabilitySecondChromaQpOffset:
+ return "VkVideoEncodeH264CapabilitySecondChromaQpOffset";
+ case VideoEncodeH264CapabilitiesFlagBitsEXT::eVkVideoEncodeH264CapabilityDeblockingFilterDisabled:
+ return "VkVideoEncodeH264CapabilityDeblockingFilterDisabled";
+ case VideoEncodeH264CapabilitiesFlagBitsEXT::eVkVideoEncodeH264CapabilityDeblockingFilterEnabled:
+ return "VkVideoEncodeH264CapabilityDeblockingFilterEnabled";
+ case VideoEncodeH264CapabilitiesFlagBitsEXT::eVkVideoEncodeH264CapabilityDeblockingFilterPartial:
+ return "VkVideoEncodeH264CapabilityDeblockingFilterPartial";
+ case VideoEncodeH264CapabilitiesFlagBitsEXT::eVkVideoEncodeH264CapabilityMultipleSlicePerFrame:
+ return "VkVideoEncodeH264CapabilityMultipleSlicePerFrame";
+ case VideoEncodeH264CapabilitiesFlagBitsEXT::eVkVideoEncodeH264CapabilityEvenlyDistributedSliceSize:
+ return "VkVideoEncodeH264CapabilityEvenlyDistributedSliceSize";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class VideoEncodeH264InputModeFlagBitsEXT : VkVideoEncodeH264InputModeFlagsEXT
+ {
+ eFrame = VK_VIDEO_ENCODE_H264_INPUT_MODE_FRAME_BIT_EXT,
+ eSlice = VK_VIDEO_ENCODE_H264_INPUT_MODE_SLICE_BIT_EXT,
+ eNonVcl = VK_VIDEO_ENCODE_H264_INPUT_MODE_NON_VCL_BIT_EXT
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( VideoEncodeH264InputModeFlagBitsEXT value )
+ {
+ switch ( value )
+ {
+ case VideoEncodeH264InputModeFlagBitsEXT::eFrame: return "Frame";
+ case VideoEncodeH264InputModeFlagBitsEXT::eSlice: return "Slice";
+ case VideoEncodeH264InputModeFlagBitsEXT::eNonVcl: return "NonVcl";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class VideoEncodeH264OutputModeFlagBitsEXT : VkVideoEncodeH264OutputModeFlagsEXT
+ {
+ eFrame = VK_VIDEO_ENCODE_H264_OUTPUT_MODE_FRAME_BIT_EXT,
+ eSlice = VK_VIDEO_ENCODE_H264_OUTPUT_MODE_SLICE_BIT_EXT,
+ eNonVcl = VK_VIDEO_ENCODE_H264_OUTPUT_MODE_NON_VCL_BIT_EXT
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( VideoEncodeH264OutputModeFlagBitsEXT value )
+ {
+ switch ( value )
+ {
+ case VideoEncodeH264OutputModeFlagBitsEXT::eFrame: return "Frame";
+ case VideoEncodeH264OutputModeFlagBitsEXT::eSlice: return "Slice";
+ case VideoEncodeH264OutputModeFlagBitsEXT::eNonVcl: return "NonVcl";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class VideoEncodeH264CreateFlagBitsEXT : VkVideoEncodeH264CreateFlagsEXT
+ {
+ eDefault = VK_VIDEO_ENCODE_H264_CREATE_DEFAULT_EXT,
+ eReserved0 = VK_VIDEO_ENCODE_H264_CREATE_RESERVED_0_BIT_EXT
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( VideoEncodeH264CreateFlagBitsEXT value )
+ {
+ switch ( value )
+ {
+ case VideoEncodeH264CreateFlagBitsEXT::eDefault: return "Default";
+ case VideoEncodeH264CreateFlagBitsEXT::eReserved0: return "Reserved0";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ //=== VK_EXT_video_decode_h264 ===
+
+ enum class VideoDecodeH264FieldLayoutFlagBitsEXT : VkVideoDecodeH264FieldLayoutFlagsEXT
+ {
+ eVkVideoDecodeH264ProgressivePicturesOnly = VK_VIDEO_DECODE_H264_PROGRESSIVE_PICTURES_ONLY_EXT,
+ eLineInterlacedPlane = VK_VIDEO_DECODE_H264_FIELD_LAYOUT_LINE_INTERLACED_PLANE_BIT_EXT,
+ eSeparateInterlacedPlane = VK_VIDEO_DECODE_H264_FIELD_LAYOUT_SEPARATE_INTERLACED_PLANE_BIT_EXT
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( VideoDecodeH264FieldLayoutFlagBitsEXT value )
+ {
+ switch ( value )
+ {
+ case VideoDecodeH264FieldLayoutFlagBitsEXT::eVkVideoDecodeH264ProgressivePicturesOnly:
+ return "VkVideoDecodeH264ProgressivePicturesOnly";
+ case VideoDecodeH264FieldLayoutFlagBitsEXT::eLineInterlacedPlane: return "LineInterlacedPlane";
+ case VideoDecodeH264FieldLayoutFlagBitsEXT::eSeparateInterlacedPlane: return "SeparateInterlacedPlane";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class VideoDecodeH264CreateFlagBitsEXT : VkVideoDecodeH264CreateFlagsEXT
+ {
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( VideoDecodeH264CreateFlagBitsEXT )
+ {
+ return "(void)";
+ }
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+ //=== VK_AMD_shader_info ===
+
+ enum class ShaderInfoTypeAMD
+ {
+ eStatistics = VK_SHADER_INFO_TYPE_STATISTICS_AMD,
+ eBinary = VK_SHADER_INFO_TYPE_BINARY_AMD,
+ eDisassembly = VK_SHADER_INFO_TYPE_DISASSEMBLY_AMD
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( ShaderInfoTypeAMD value )
+ {
+ switch ( value )
+ {
+ case ShaderInfoTypeAMD::eStatistics: return "Statistics";
+ case ShaderInfoTypeAMD::eBinary: return "Binary";
+ case ShaderInfoTypeAMD::eDisassembly: return "Disassembly";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+#if defined( VK_USE_PLATFORM_GGP )
+ //=== VK_GGP_stream_descriptor_surface ===
+
+ enum class StreamDescriptorSurfaceCreateFlagBitsGGP : VkStreamDescriptorSurfaceCreateFlagsGGP
+ {
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( StreamDescriptorSurfaceCreateFlagBitsGGP )
+ {
+ return "(void)";
+ }
+#endif /*VK_USE_PLATFORM_GGP*/
+
+ //=== VK_NV_external_memory_capabilities ===
+
+ enum class ExternalMemoryHandleTypeFlagBitsNV : VkExternalMemoryHandleTypeFlagsNV
+ {
+ eOpaqueWin32 = VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_NV,
+ eOpaqueWin32Kmt = VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_NV,
+ eD3D11Image = VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_BIT_NV,
+ eD3D11ImageKmt = VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_KMT_BIT_NV
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( ExternalMemoryHandleTypeFlagBitsNV value )
+ {
+ switch ( value )
+ {
+ case ExternalMemoryHandleTypeFlagBitsNV::eOpaqueWin32: return "OpaqueWin32";
+ case ExternalMemoryHandleTypeFlagBitsNV::eOpaqueWin32Kmt: return "OpaqueWin32Kmt";
+ case ExternalMemoryHandleTypeFlagBitsNV::eD3D11Image: return "D3D11Image";
+ case ExternalMemoryHandleTypeFlagBitsNV::eD3D11ImageKmt: return "D3D11ImageKmt";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class ExternalMemoryFeatureFlagBitsNV : VkExternalMemoryFeatureFlagsNV
+ {
+ eDedicatedOnly = VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT_NV,
+ eExportable = VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT_NV,
+ eImportable = VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT_NV
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( ExternalMemoryFeatureFlagBitsNV value )
+ {
+ switch ( value )
+ {
+ case ExternalMemoryFeatureFlagBitsNV::eDedicatedOnly: return "DedicatedOnly";
+ case ExternalMemoryFeatureFlagBitsNV::eExportable: return "Exportable";
+ case ExternalMemoryFeatureFlagBitsNV::eImportable: return "Importable";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ //=== VK_EXT_validation_flags ===
+
+ enum class ValidationCheckEXT
+ {
+ eAll = VK_VALIDATION_CHECK_ALL_EXT,
+ eShaders = VK_VALIDATION_CHECK_SHADERS_EXT
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( ValidationCheckEXT value )
+ {
+ switch ( value )
+ {
+ case ValidationCheckEXT::eAll: return "All";
+ case ValidationCheckEXT::eShaders: return "Shaders";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+#if defined( VK_USE_PLATFORM_VI_NN )
+ //=== VK_NN_vi_surface ===
+
+ enum class ViSurfaceCreateFlagBitsNN : VkViSurfaceCreateFlagsNN
+ {
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( ViSurfaceCreateFlagBitsNN )
+ {
+ return "(void)";
+ }
+#endif /*VK_USE_PLATFORM_VI_NN*/
+
+ //=== VK_EXT_conditional_rendering ===
+
+ enum class ConditionalRenderingFlagBitsEXT : VkConditionalRenderingFlagsEXT
+ {
+ eInverted = VK_CONDITIONAL_RENDERING_INVERTED_BIT_EXT
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( ConditionalRenderingFlagBitsEXT value )
+ {
+ switch ( value )
+ {
+ case ConditionalRenderingFlagBitsEXT::eInverted: return "Inverted";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ //=== VK_EXT_display_surface_counter ===
+
+ enum class SurfaceCounterFlagBitsEXT : VkSurfaceCounterFlagsEXT
+ {
+ eVblank = VK_SURFACE_COUNTER_VBLANK_BIT_EXT
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( SurfaceCounterFlagBitsEXT value )
+ {
+ switch ( value )
+ {
+ case SurfaceCounterFlagBitsEXT::eVblank: return "Vblank";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ //=== VK_EXT_display_control ===
+
+ enum class DisplayPowerStateEXT
+ {
+ eOff = VK_DISPLAY_POWER_STATE_OFF_EXT,
+ eSuspend = VK_DISPLAY_POWER_STATE_SUSPEND_EXT,
+ eOn = VK_DISPLAY_POWER_STATE_ON_EXT
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( DisplayPowerStateEXT value )
+ {
+ switch ( value )
+ {
+ case DisplayPowerStateEXT::eOff: return "Off";
+ case DisplayPowerStateEXT::eSuspend: return "Suspend";
+ case DisplayPowerStateEXT::eOn: return "On";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class DeviceEventTypeEXT
+ {
+ eDisplayHotplug = VK_DEVICE_EVENT_TYPE_DISPLAY_HOTPLUG_EXT
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( DeviceEventTypeEXT value )
+ {
+ switch ( value )
+ {
+ case DeviceEventTypeEXT::eDisplayHotplug: return "DisplayHotplug";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class DisplayEventTypeEXT
+ {
+ eFirstPixelOut = VK_DISPLAY_EVENT_TYPE_FIRST_PIXEL_OUT_EXT
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( DisplayEventTypeEXT value )
+ {
+ switch ( value )
+ {
+ case DisplayEventTypeEXT::eFirstPixelOut: return "FirstPixelOut";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ //=== VK_NV_viewport_swizzle ===
+
+ enum class ViewportCoordinateSwizzleNV
+ {
+ ePositiveX = VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_X_NV,
+ eNegativeX = VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_X_NV,
+ ePositiveY = VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_Y_NV,
+ eNegativeY = VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_Y_NV,
+ ePositiveZ = VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_Z_NV,
+ eNegativeZ = VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_Z_NV,
+ ePositiveW = VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_W_NV,
+ eNegativeW = VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_W_NV
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( ViewportCoordinateSwizzleNV value )
+ {
+ switch ( value )
+ {
+ case ViewportCoordinateSwizzleNV::ePositiveX: return "PositiveX";
+ case ViewportCoordinateSwizzleNV::eNegativeX: return "NegativeX";
+ case ViewportCoordinateSwizzleNV::ePositiveY: return "PositiveY";
+ case ViewportCoordinateSwizzleNV::eNegativeY: return "NegativeY";
+ case ViewportCoordinateSwizzleNV::ePositiveZ: return "PositiveZ";
+ case ViewportCoordinateSwizzleNV::eNegativeZ: return "NegativeZ";
+ case ViewportCoordinateSwizzleNV::ePositiveW: return "PositiveW";
+ case ViewportCoordinateSwizzleNV::eNegativeW: return "NegativeW";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class PipelineViewportSwizzleStateCreateFlagBitsNV : VkPipelineViewportSwizzleStateCreateFlagsNV
+ {
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( PipelineViewportSwizzleStateCreateFlagBitsNV )
+ {
+ return "(void)";
+ }
+
+ //=== VK_EXT_discard_rectangles ===
+
+ enum class DiscardRectangleModeEXT
+ {
+ eInclusive = VK_DISCARD_RECTANGLE_MODE_INCLUSIVE_EXT,
+ eExclusive = VK_DISCARD_RECTANGLE_MODE_EXCLUSIVE_EXT
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( DiscardRectangleModeEXT value )
+ {
+ switch ( value )
+ {
+ case DiscardRectangleModeEXT::eInclusive: return "Inclusive";
+ case DiscardRectangleModeEXT::eExclusive: return "Exclusive";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class PipelineDiscardRectangleStateCreateFlagBitsEXT : VkPipelineDiscardRectangleStateCreateFlagsEXT
+ {
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( PipelineDiscardRectangleStateCreateFlagBitsEXT )
+ {
+ return "(void)";
+ }
+
+ //=== VK_EXT_conservative_rasterization ===
+
+ enum class ConservativeRasterizationModeEXT
+ {
+ eDisabled = VK_CONSERVATIVE_RASTERIZATION_MODE_DISABLED_EXT,
+ eOverestimate = VK_CONSERVATIVE_RASTERIZATION_MODE_OVERESTIMATE_EXT,
+ eUnderestimate = VK_CONSERVATIVE_RASTERIZATION_MODE_UNDERESTIMATE_EXT
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( ConservativeRasterizationModeEXT value )
+ {
+ switch ( value )
+ {
+ case ConservativeRasterizationModeEXT::eDisabled: return "Disabled";
+ case ConservativeRasterizationModeEXT::eOverestimate: return "Overestimate";
+ case ConservativeRasterizationModeEXT::eUnderestimate: return "Underestimate";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class
+ PipelineRasterizationConservativeStateCreateFlagBitsEXT : VkPipelineRasterizationConservativeStateCreateFlagsEXT
+ {
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( PipelineRasterizationConservativeStateCreateFlagBitsEXT )
+ {
+ return "(void)";
+ }
+
+ //=== VK_EXT_depth_clip_enable ===
+
+ enum class PipelineRasterizationDepthClipStateCreateFlagBitsEXT : VkPipelineRasterizationDepthClipStateCreateFlagsEXT
+ {
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( PipelineRasterizationDepthClipStateCreateFlagBitsEXT )
+ {
+ return "(void)";
+ }
+
+ //=== VK_KHR_performance_query ===
+
+ enum class PerformanceCounterDescriptionFlagBitsKHR : VkPerformanceCounterDescriptionFlagsKHR
+ {
+ ePerformanceImpacting = VK_PERFORMANCE_COUNTER_DESCRIPTION_PERFORMANCE_IMPACTING_BIT_KHR,
+ eConcurrentlyImpacted = VK_PERFORMANCE_COUNTER_DESCRIPTION_CONCURRENTLY_IMPACTED_BIT_KHR
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( PerformanceCounterDescriptionFlagBitsKHR value )
+ {
+ switch ( value )
+ {
+ case PerformanceCounterDescriptionFlagBitsKHR::ePerformanceImpacting: return "PerformanceImpacting";
+ case PerformanceCounterDescriptionFlagBitsKHR::eConcurrentlyImpacted: return "ConcurrentlyImpacted";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class PerformanceCounterScopeKHR
+ {
+ eCommandBuffer = VK_PERFORMANCE_COUNTER_SCOPE_COMMAND_BUFFER_KHR,
+ eRenderPass = VK_PERFORMANCE_COUNTER_SCOPE_RENDER_PASS_KHR,
+ eCommand = VK_PERFORMANCE_COUNTER_SCOPE_COMMAND_KHR,
+ eVkQueryScopeCommandBuffer = VK_QUERY_SCOPE_COMMAND_BUFFER_KHR,
+ eVkQueryScopeCommand = VK_QUERY_SCOPE_COMMAND_KHR,
+ eVkQueryScopeRenderPass = VK_QUERY_SCOPE_RENDER_PASS_KHR
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( PerformanceCounterScopeKHR value )
+ {
+ switch ( value )
+ {
+ case PerformanceCounterScopeKHR::eCommandBuffer: return "CommandBuffer";
+ case PerformanceCounterScopeKHR::eRenderPass: return "RenderPass";
+ case PerformanceCounterScopeKHR::eCommand: return "Command";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class PerformanceCounterStorageKHR
+ {
+ eInt32 = VK_PERFORMANCE_COUNTER_STORAGE_INT32_KHR,
+ eInt64 = VK_PERFORMANCE_COUNTER_STORAGE_INT64_KHR,
+ eUint32 = VK_PERFORMANCE_COUNTER_STORAGE_UINT32_KHR,
+ eUint64 = VK_PERFORMANCE_COUNTER_STORAGE_UINT64_KHR,
+ eFloat32 = VK_PERFORMANCE_COUNTER_STORAGE_FLOAT32_KHR,
+ eFloat64 = VK_PERFORMANCE_COUNTER_STORAGE_FLOAT64_KHR
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( PerformanceCounterStorageKHR value )
+ {
+ switch ( value )
+ {
+ case PerformanceCounterStorageKHR::eInt32: return "Int32";
+ case PerformanceCounterStorageKHR::eInt64: return "Int64";
+ case PerformanceCounterStorageKHR::eUint32: return "Uint32";
+ case PerformanceCounterStorageKHR::eUint64: return "Uint64";
+ case PerformanceCounterStorageKHR::eFloat32: return "Float32";
+ case PerformanceCounterStorageKHR::eFloat64: return "Float64";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class PerformanceCounterUnitKHR
+ {
+ eGeneric = VK_PERFORMANCE_COUNTER_UNIT_GENERIC_KHR,
+ ePercentage = VK_PERFORMANCE_COUNTER_UNIT_PERCENTAGE_KHR,
+ eNanoseconds = VK_PERFORMANCE_COUNTER_UNIT_NANOSECONDS_KHR,
+ eBytes = VK_PERFORMANCE_COUNTER_UNIT_BYTES_KHR,
+ eBytesPerSecond = VK_PERFORMANCE_COUNTER_UNIT_BYTES_PER_SECOND_KHR,
+ eKelvin = VK_PERFORMANCE_COUNTER_UNIT_KELVIN_KHR,
+ eWatts = VK_PERFORMANCE_COUNTER_UNIT_WATTS_KHR,
+ eVolts = VK_PERFORMANCE_COUNTER_UNIT_VOLTS_KHR,
+ eAmps = VK_PERFORMANCE_COUNTER_UNIT_AMPS_KHR,
+ eHertz = VK_PERFORMANCE_COUNTER_UNIT_HERTZ_KHR,
+ eCycles = VK_PERFORMANCE_COUNTER_UNIT_CYCLES_KHR
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( PerformanceCounterUnitKHR value )
+ {
+ switch ( value )
+ {
+ case PerformanceCounterUnitKHR::eGeneric: return "Generic";
+ case PerformanceCounterUnitKHR::ePercentage: return "Percentage";
+ case PerformanceCounterUnitKHR::eNanoseconds: return "Nanoseconds";
+ case PerformanceCounterUnitKHR::eBytes: return "Bytes";
+ case PerformanceCounterUnitKHR::eBytesPerSecond: return "BytesPerSecond";
+ case PerformanceCounterUnitKHR::eKelvin: return "Kelvin";
+ case PerformanceCounterUnitKHR::eWatts: return "Watts";
+ case PerformanceCounterUnitKHR::eVolts: return "Volts";
+ case PerformanceCounterUnitKHR::eAmps: return "Amps";
+ case PerformanceCounterUnitKHR::eHertz: return "Hertz";
+ case PerformanceCounterUnitKHR::eCycles: return "Cycles";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class AcquireProfilingLockFlagBitsKHR : VkAcquireProfilingLockFlagsKHR
+ {
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( AcquireProfilingLockFlagBitsKHR )
+ {
+ return "(void)";
+ }
+
+#if defined( VK_USE_PLATFORM_IOS_MVK )
+ //=== VK_MVK_ios_surface ===
+
+ enum class IOSSurfaceCreateFlagBitsMVK : VkIOSSurfaceCreateFlagsMVK
+ {
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( IOSSurfaceCreateFlagBitsMVK )
+ {
+ return "(void)";
+ }
+#endif /*VK_USE_PLATFORM_IOS_MVK*/
+
+#if defined( VK_USE_PLATFORM_MACOS_MVK )
+ //=== VK_MVK_macos_surface ===
+
+ enum class MacOSSurfaceCreateFlagBitsMVK : VkMacOSSurfaceCreateFlagsMVK
+ {
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( MacOSSurfaceCreateFlagBitsMVK )
+ {
+ return "(void)";
+ }
+#endif /*VK_USE_PLATFORM_MACOS_MVK*/
+
+ //=== VK_EXT_debug_utils ===
+
+ enum class DebugUtilsMessageSeverityFlagBitsEXT : VkDebugUtilsMessageSeverityFlagsEXT
+ {
+ eVerbose = VK_DEBUG_UTILS_MESSAGE_SEVERITY_VERBOSE_BIT_EXT,
+ eInfo = VK_DEBUG_UTILS_MESSAGE_SEVERITY_INFO_BIT_EXT,
+ eWarning = VK_DEBUG_UTILS_MESSAGE_SEVERITY_WARNING_BIT_EXT,
+ eError = VK_DEBUG_UTILS_MESSAGE_SEVERITY_ERROR_BIT_EXT
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( DebugUtilsMessageSeverityFlagBitsEXT value )
+ {
+ switch ( value )
+ {
+ case DebugUtilsMessageSeverityFlagBitsEXT::eVerbose: return "Verbose";
+ case DebugUtilsMessageSeverityFlagBitsEXT::eInfo: return "Info";
+ case DebugUtilsMessageSeverityFlagBitsEXT::eWarning: return "Warning";
+ case DebugUtilsMessageSeverityFlagBitsEXT::eError: return "Error";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class DebugUtilsMessageTypeFlagBitsEXT : VkDebugUtilsMessageTypeFlagsEXT
+ {
+ eGeneral = VK_DEBUG_UTILS_MESSAGE_TYPE_GENERAL_BIT_EXT,
+ eValidation = VK_DEBUG_UTILS_MESSAGE_TYPE_VALIDATION_BIT_EXT,
+ ePerformance = VK_DEBUG_UTILS_MESSAGE_TYPE_PERFORMANCE_BIT_EXT
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( DebugUtilsMessageTypeFlagBitsEXT value )
+ {
+ switch ( value )
+ {
+ case DebugUtilsMessageTypeFlagBitsEXT::eGeneral: return "General";
+ case DebugUtilsMessageTypeFlagBitsEXT::eValidation: return "Validation";
+ case DebugUtilsMessageTypeFlagBitsEXT::ePerformance: return "Performance";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class DebugUtilsMessengerCallbackDataFlagBitsEXT : VkDebugUtilsMessengerCallbackDataFlagsEXT
+ {
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( DebugUtilsMessengerCallbackDataFlagBitsEXT )
+ {
+ return "(void)";
+ }
+
+ enum class DebugUtilsMessengerCreateFlagBitsEXT : VkDebugUtilsMessengerCreateFlagsEXT
+ {
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( DebugUtilsMessengerCreateFlagBitsEXT )
+ {
+ return "(void)";
+ }
+
+ //=== VK_EXT_blend_operation_advanced ===
+
+ enum class BlendOverlapEXT
+ {
+ eUncorrelated = VK_BLEND_OVERLAP_UNCORRELATED_EXT,
+ eDisjoint = VK_BLEND_OVERLAP_DISJOINT_EXT,
+ eConjoint = VK_BLEND_OVERLAP_CONJOINT_EXT
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( BlendOverlapEXT value )
+ {
+ switch ( value )
+ {
+ case BlendOverlapEXT::eUncorrelated: return "Uncorrelated";
+ case BlendOverlapEXT::eDisjoint: return "Disjoint";
+ case BlendOverlapEXT::eConjoint: return "Conjoint";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ //=== VK_NV_fragment_coverage_to_color ===
+
+ enum class PipelineCoverageToColorStateCreateFlagBitsNV : VkPipelineCoverageToColorStateCreateFlagsNV
+ {
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( PipelineCoverageToColorStateCreateFlagBitsNV )
+ {
+ return "(void)";
+ }
+
+ //=== VK_KHR_acceleration_structure ===
+
+ enum class AccelerationStructureTypeKHR
+ {
+ eTopLevel = VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_KHR,
+ eBottomLevel = VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_KHR,
+ eGeneric = VK_ACCELERATION_STRUCTURE_TYPE_GENERIC_KHR
+ };
+ using AccelerationStructureTypeNV = AccelerationStructureTypeKHR;
+
+ VULKAN_HPP_INLINE std::string to_string( AccelerationStructureTypeKHR value )
+ {
+ switch ( value )
+ {
+ case AccelerationStructureTypeKHR::eTopLevel: return "TopLevel";
+ case AccelerationStructureTypeKHR::eBottomLevel: return "BottomLevel";
+ case AccelerationStructureTypeKHR::eGeneric: return "Generic";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class AccelerationStructureBuildTypeKHR
+ {
+ eHost = VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_KHR,
+ eDevice = VK_ACCELERATION_STRUCTURE_BUILD_TYPE_DEVICE_KHR,
+ eHostOrDevice = VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_OR_DEVICE_KHR
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( AccelerationStructureBuildTypeKHR value )
+ {
+ switch ( value )
+ {
+ case AccelerationStructureBuildTypeKHR::eHost: return "Host";
+ case AccelerationStructureBuildTypeKHR::eDevice: return "Device";
+ case AccelerationStructureBuildTypeKHR::eHostOrDevice: return "HostOrDevice";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class GeometryFlagBitsKHR : VkGeometryFlagsKHR
+ {
+ eOpaque = VK_GEOMETRY_OPAQUE_BIT_KHR,
+ eNoDuplicateAnyHitInvocation = VK_GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_KHR
+ };
+ using GeometryFlagBitsNV = GeometryFlagBitsKHR;
+
+ VULKAN_HPP_INLINE std::string to_string( GeometryFlagBitsKHR value )
+ {
+ switch ( value )
+ {
+ case GeometryFlagBitsKHR::eOpaque: return "Opaque";
+ case GeometryFlagBitsKHR::eNoDuplicateAnyHitInvocation: return "NoDuplicateAnyHitInvocation";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class GeometryInstanceFlagBitsKHR : VkGeometryInstanceFlagsKHR
+ {
+ eTriangleFacingCullDisable = VK_GEOMETRY_INSTANCE_TRIANGLE_FACING_CULL_DISABLE_BIT_KHR,
+ eTriangleFrontCounterclockwise = VK_GEOMETRY_INSTANCE_TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_KHR,
+ eForceOpaque = VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_KHR,
+ eForceNoOpaque = VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_KHR,
+ eTriangleCullDisable = VK_GEOMETRY_INSTANCE_TRIANGLE_CULL_DISABLE_BIT_NV
+ };
+ using GeometryInstanceFlagBitsNV = GeometryInstanceFlagBitsKHR;
+
+ VULKAN_HPP_INLINE std::string to_string( GeometryInstanceFlagBitsKHR value )
+ {
+ switch ( value )
+ {
+ case GeometryInstanceFlagBitsKHR::eTriangleFacingCullDisable: return "TriangleFacingCullDisable";
+ case GeometryInstanceFlagBitsKHR::eTriangleFrontCounterclockwise: return "TriangleFrontCounterclockwise";
+ case GeometryInstanceFlagBitsKHR::eForceOpaque: return "ForceOpaque";
+ case GeometryInstanceFlagBitsKHR::eForceNoOpaque: return "ForceNoOpaque";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class BuildAccelerationStructureFlagBitsKHR : VkBuildAccelerationStructureFlagsKHR
+ {
+ eAllowUpdate = VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_KHR,
+ eAllowCompaction = VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR,
+ ePreferFastTrace = VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_KHR,
+ ePreferFastBuild = VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_KHR,
+ eLowMemory = VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_KHR,
+ eMotionNV = VK_BUILD_ACCELERATION_STRUCTURE_MOTION_BIT_NV
+ };
+ using BuildAccelerationStructureFlagBitsNV = BuildAccelerationStructureFlagBitsKHR;
+
+ VULKAN_HPP_INLINE std::string to_string( BuildAccelerationStructureFlagBitsKHR value )
+ {
+ switch ( value )
+ {
+ case BuildAccelerationStructureFlagBitsKHR::eAllowUpdate: return "AllowUpdate";
+ case BuildAccelerationStructureFlagBitsKHR::eAllowCompaction: return "AllowCompaction";
+ case BuildAccelerationStructureFlagBitsKHR::ePreferFastTrace: return "PreferFastTrace";
+ case BuildAccelerationStructureFlagBitsKHR::ePreferFastBuild: return "PreferFastBuild";
+ case BuildAccelerationStructureFlagBitsKHR::eLowMemory: return "LowMemory";
+ case BuildAccelerationStructureFlagBitsKHR::eMotionNV: return "MotionNV";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class CopyAccelerationStructureModeKHR
+ {
+ eClone = VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_KHR,
+ eCompact = VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_KHR,
+ eSerialize = VK_COPY_ACCELERATION_STRUCTURE_MODE_SERIALIZE_KHR,
+ eDeserialize = VK_COPY_ACCELERATION_STRUCTURE_MODE_DESERIALIZE_KHR
+ };
+ using CopyAccelerationStructureModeNV = CopyAccelerationStructureModeKHR;
+
+ VULKAN_HPP_INLINE std::string to_string( CopyAccelerationStructureModeKHR value )
+ {
+ switch ( value )
+ {
+ case CopyAccelerationStructureModeKHR::eClone: return "Clone";
+ case CopyAccelerationStructureModeKHR::eCompact: return "Compact";
+ case CopyAccelerationStructureModeKHR::eSerialize: return "Serialize";
+ case CopyAccelerationStructureModeKHR::eDeserialize: return "Deserialize";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class GeometryTypeKHR
+ {
+ eTriangles = VK_GEOMETRY_TYPE_TRIANGLES_KHR,
+ eAabbs = VK_GEOMETRY_TYPE_AABBS_KHR,
+ eInstances = VK_GEOMETRY_TYPE_INSTANCES_KHR
+ };
+ using GeometryTypeNV = GeometryTypeKHR;
+
+ VULKAN_HPP_INLINE std::string to_string( GeometryTypeKHR value )
+ {
+ switch ( value )
+ {
+ case GeometryTypeKHR::eTriangles: return "Triangles";
+ case GeometryTypeKHR::eAabbs: return "Aabbs";
+ case GeometryTypeKHR::eInstances: return "Instances";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class AccelerationStructureCompatibilityKHR
+ {
+ eCompatible = VK_ACCELERATION_STRUCTURE_COMPATIBILITY_COMPATIBLE_KHR,
+ eIncompatible = VK_ACCELERATION_STRUCTURE_COMPATIBILITY_INCOMPATIBLE_KHR
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( AccelerationStructureCompatibilityKHR value )
+ {
+ switch ( value )
+ {
+ case AccelerationStructureCompatibilityKHR::eCompatible: return "Compatible";
+ case AccelerationStructureCompatibilityKHR::eIncompatible: return "Incompatible";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class AccelerationStructureCreateFlagBitsKHR : VkAccelerationStructureCreateFlagsKHR
+ {
+ eDeviceAddressCaptureReplay = VK_ACCELERATION_STRUCTURE_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_KHR,
+ eMotionNV = VK_ACCELERATION_STRUCTURE_CREATE_MOTION_BIT_NV
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( AccelerationStructureCreateFlagBitsKHR value )
+ {
+ switch ( value )
+ {
+ case AccelerationStructureCreateFlagBitsKHR::eDeviceAddressCaptureReplay: return "DeviceAddressCaptureReplay";
+ case AccelerationStructureCreateFlagBitsKHR::eMotionNV: return "MotionNV";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class BuildAccelerationStructureModeKHR
+ {
+ eBuild = VK_BUILD_ACCELERATION_STRUCTURE_MODE_BUILD_KHR,
+ eUpdate = VK_BUILD_ACCELERATION_STRUCTURE_MODE_UPDATE_KHR
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( BuildAccelerationStructureModeKHR value )
+ {
+ switch ( value )
+ {
+ case BuildAccelerationStructureModeKHR::eBuild: return "Build";
+ case BuildAccelerationStructureModeKHR::eUpdate: return "Update";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ //=== VK_NV_framebuffer_mixed_samples ===
+
+ enum class CoverageModulationModeNV
+ {
+ eNone = VK_COVERAGE_MODULATION_MODE_NONE_NV,
+ eRgb = VK_COVERAGE_MODULATION_MODE_RGB_NV,
+ eAlpha = VK_COVERAGE_MODULATION_MODE_ALPHA_NV,
+ eRgba = VK_COVERAGE_MODULATION_MODE_RGBA_NV
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( CoverageModulationModeNV value )
+ {
+ switch ( value )
+ {
+ case CoverageModulationModeNV::eNone: return "None";
+ case CoverageModulationModeNV::eRgb: return "Rgb";
+ case CoverageModulationModeNV::eAlpha: return "Alpha";
+ case CoverageModulationModeNV::eRgba: return "Rgba";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class PipelineCoverageModulationStateCreateFlagBitsNV : VkPipelineCoverageModulationStateCreateFlagsNV
+ {
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( PipelineCoverageModulationStateCreateFlagBitsNV )
+ {
+ return "(void)";
+ }
+
+ //=== VK_EXT_validation_cache ===
+
+ enum class ValidationCacheHeaderVersionEXT
+ {
+ eOne = VK_VALIDATION_CACHE_HEADER_VERSION_ONE_EXT
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( ValidationCacheHeaderVersionEXT value )
+ {
+ switch ( value )
+ {
+ case ValidationCacheHeaderVersionEXT::eOne: return "One";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class ValidationCacheCreateFlagBitsEXT : VkValidationCacheCreateFlagsEXT
+ {
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( ValidationCacheCreateFlagBitsEXT )
+ {
+ return "(void)";
+ }
+
+ //=== VK_NV_shading_rate_image ===
+
+ enum class ShadingRatePaletteEntryNV
+ {
+ eNoInvocations = VK_SHADING_RATE_PALETTE_ENTRY_NO_INVOCATIONS_NV,
+ e16InvocationsPerPixel = VK_SHADING_RATE_PALETTE_ENTRY_16_INVOCATIONS_PER_PIXEL_NV,
+ e8InvocationsPerPixel = VK_SHADING_RATE_PALETTE_ENTRY_8_INVOCATIONS_PER_PIXEL_NV,
+ e4InvocationsPerPixel = VK_SHADING_RATE_PALETTE_ENTRY_4_INVOCATIONS_PER_PIXEL_NV,
+ e2InvocationsPerPixel = VK_SHADING_RATE_PALETTE_ENTRY_2_INVOCATIONS_PER_PIXEL_NV,
+ e1InvocationPerPixel = VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_PIXEL_NV,
+ e1InvocationPer2X1Pixels = VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_2X1_PIXELS_NV,
+ e1InvocationPer1X2Pixels = VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_1X2_PIXELS_NV,
+ e1InvocationPer2X2Pixels = VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_2X2_PIXELS_NV,
+ e1InvocationPer4X2Pixels = VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_4X2_PIXELS_NV,
+ e1InvocationPer2X4Pixels = VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_2X4_PIXELS_NV,
+ e1InvocationPer4X4Pixels = VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_4X4_PIXELS_NV
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( ShadingRatePaletteEntryNV value )
+ {
+ switch ( value )
+ {
+ case ShadingRatePaletteEntryNV::eNoInvocations: return "NoInvocations";
+ case ShadingRatePaletteEntryNV::e16InvocationsPerPixel: return "16InvocationsPerPixel";
+ case ShadingRatePaletteEntryNV::e8InvocationsPerPixel: return "8InvocationsPerPixel";
+ case ShadingRatePaletteEntryNV::e4InvocationsPerPixel: return "4InvocationsPerPixel";
+ case ShadingRatePaletteEntryNV::e2InvocationsPerPixel: return "2InvocationsPerPixel";
+ case ShadingRatePaletteEntryNV::e1InvocationPerPixel: return "1InvocationPerPixel";
+ case ShadingRatePaletteEntryNV::e1InvocationPer2X1Pixels: return "1InvocationPer2X1Pixels";
+ case ShadingRatePaletteEntryNV::e1InvocationPer1X2Pixels: return "1InvocationPer1X2Pixels";
+ case ShadingRatePaletteEntryNV::e1InvocationPer2X2Pixels: return "1InvocationPer2X2Pixels";
+ case ShadingRatePaletteEntryNV::e1InvocationPer4X2Pixels: return "1InvocationPer4X2Pixels";
+ case ShadingRatePaletteEntryNV::e1InvocationPer2X4Pixels: return "1InvocationPer2X4Pixels";
+ case ShadingRatePaletteEntryNV::e1InvocationPer4X4Pixels: return "1InvocationPer4X4Pixels";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class CoarseSampleOrderTypeNV
+ {
+ eDefault = VK_COARSE_SAMPLE_ORDER_TYPE_DEFAULT_NV,
+ eCustom = VK_COARSE_SAMPLE_ORDER_TYPE_CUSTOM_NV,
+ ePixelMajor = VK_COARSE_SAMPLE_ORDER_TYPE_PIXEL_MAJOR_NV,
+ eSampleMajor = VK_COARSE_SAMPLE_ORDER_TYPE_SAMPLE_MAJOR_NV
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( CoarseSampleOrderTypeNV value )
+ {
+ switch ( value )
+ {
+ case CoarseSampleOrderTypeNV::eDefault: return "Default";
+ case CoarseSampleOrderTypeNV::eCustom: return "Custom";
+ case CoarseSampleOrderTypeNV::ePixelMajor: return "PixelMajor";
+ case CoarseSampleOrderTypeNV::eSampleMajor: return "SampleMajor";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ //=== VK_NV_ray_tracing ===
+
+ enum class AccelerationStructureMemoryRequirementsTypeNV
+ {
+ eObject = VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_OBJECT_NV,
+ eBuildScratch = VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BUILD_SCRATCH_NV,
+ eUpdateScratch = VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_NV
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( AccelerationStructureMemoryRequirementsTypeNV value )
+ {
+ switch ( value )
+ {
+ case AccelerationStructureMemoryRequirementsTypeNV::eObject: return "Object";
+ case AccelerationStructureMemoryRequirementsTypeNV::eBuildScratch: return "BuildScratch";
+ case AccelerationStructureMemoryRequirementsTypeNV::eUpdateScratch: return "UpdateScratch";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ //=== VK_EXT_global_priority ===
+
+ enum class QueueGlobalPriorityEXT
+ {
+ eLow = VK_QUEUE_GLOBAL_PRIORITY_LOW_EXT,
+ eMedium = VK_QUEUE_GLOBAL_PRIORITY_MEDIUM_EXT,
+ eHigh = VK_QUEUE_GLOBAL_PRIORITY_HIGH_EXT,
+ eRealtime = VK_QUEUE_GLOBAL_PRIORITY_REALTIME_EXT
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( QueueGlobalPriorityEXT value )
+ {
+ switch ( value )
+ {
+ case QueueGlobalPriorityEXT::eLow: return "Low";
+ case QueueGlobalPriorityEXT::eMedium: return "Medium";
+ case QueueGlobalPriorityEXT::eHigh: return "High";
+ case QueueGlobalPriorityEXT::eRealtime: return "Realtime";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ //=== VK_AMD_pipeline_compiler_control ===
+
+ enum class PipelineCompilerControlFlagBitsAMD : VkPipelineCompilerControlFlagsAMD
+ {
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( PipelineCompilerControlFlagBitsAMD )
+ {
+ return "(void)";
+ }
+
+ //=== VK_EXT_calibrated_timestamps ===
+
+ enum class TimeDomainEXT
+ {
+ eDevice = VK_TIME_DOMAIN_DEVICE_EXT,
+ eClockMonotonic = VK_TIME_DOMAIN_CLOCK_MONOTONIC_EXT,
+ eClockMonotonicRaw = VK_TIME_DOMAIN_CLOCK_MONOTONIC_RAW_EXT,
+ eQueryPerformanceCounter = VK_TIME_DOMAIN_QUERY_PERFORMANCE_COUNTER_EXT
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( TimeDomainEXT value )
+ {
+ switch ( value )
+ {
+ case TimeDomainEXT::eDevice: return "Device";
+ case TimeDomainEXT::eClockMonotonic: return "ClockMonotonic";
+ case TimeDomainEXT::eClockMonotonicRaw: return "ClockMonotonicRaw";
+ case TimeDomainEXT::eQueryPerformanceCounter: return "QueryPerformanceCounter";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ //=== VK_EXT_video_decode_h265 ===
+
+ enum class VideoDecodeH265CreateFlagBitsEXT : VkVideoDecodeH265CreateFlagsEXT
+ {
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( VideoDecodeH265CreateFlagBitsEXT )
+ {
+ return "(void)";
+ }
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+ //=== VK_AMD_memory_overallocation_behavior ===
+
+ enum class MemoryOverallocationBehaviorAMD
+ {
+ eDefault = VK_MEMORY_OVERALLOCATION_BEHAVIOR_DEFAULT_AMD,
+ eAllowed = VK_MEMORY_OVERALLOCATION_BEHAVIOR_ALLOWED_AMD,
+ eDisallowed = VK_MEMORY_OVERALLOCATION_BEHAVIOR_DISALLOWED_AMD
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( MemoryOverallocationBehaviorAMD value )
+ {
+ switch ( value )
+ {
+ case MemoryOverallocationBehaviorAMD::eDefault: return "Default";
+ case MemoryOverallocationBehaviorAMD::eAllowed: return "Allowed";
+ case MemoryOverallocationBehaviorAMD::eDisallowed: return "Disallowed";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ //=== VK_EXT_pipeline_creation_feedback ===
+
+ enum class PipelineCreationFeedbackFlagBitsEXT : VkPipelineCreationFeedbackFlagsEXT
+ {
+ eValid = VK_PIPELINE_CREATION_FEEDBACK_VALID_BIT_EXT,
+ eApplicationPipelineCacheHit = VK_PIPELINE_CREATION_FEEDBACK_APPLICATION_PIPELINE_CACHE_HIT_BIT_EXT,
+ eBasePipelineAcceleration = VK_PIPELINE_CREATION_FEEDBACK_BASE_PIPELINE_ACCELERATION_BIT_EXT
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( PipelineCreationFeedbackFlagBitsEXT value )
+ {
+ switch ( value )
+ {
+ case PipelineCreationFeedbackFlagBitsEXT::eValid: return "Valid";
+ case PipelineCreationFeedbackFlagBitsEXT::eApplicationPipelineCacheHit: return "ApplicationPipelineCacheHit";
+ case PipelineCreationFeedbackFlagBitsEXT::eBasePipelineAcceleration: return "BasePipelineAcceleration";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ //=== VK_INTEL_performance_query ===
+
+ enum class PerformanceConfigurationTypeINTEL
+ {
+ eCommandQueueMetricsDiscoveryActivated =
+ VK_PERFORMANCE_CONFIGURATION_TYPE_COMMAND_QUEUE_METRICS_DISCOVERY_ACTIVATED_INTEL
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( PerformanceConfigurationTypeINTEL value )
+ {
+ switch ( value )
+ {
+ case PerformanceConfigurationTypeINTEL::eCommandQueueMetricsDiscoveryActivated:
+ return "CommandQueueMetricsDiscoveryActivated";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class QueryPoolSamplingModeINTEL
+ {
+ eManual = VK_QUERY_POOL_SAMPLING_MODE_MANUAL_INTEL
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( QueryPoolSamplingModeINTEL value )
+ {
+ switch ( value )
+ {
+ case QueryPoolSamplingModeINTEL::eManual: return "Manual";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class PerformanceOverrideTypeINTEL
+ {
+ eNullHardware = VK_PERFORMANCE_OVERRIDE_TYPE_NULL_HARDWARE_INTEL,
+ eFlushGpuCaches = VK_PERFORMANCE_OVERRIDE_TYPE_FLUSH_GPU_CACHES_INTEL
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( PerformanceOverrideTypeINTEL value )
+ {
+ switch ( value )
+ {
+ case PerformanceOverrideTypeINTEL::eNullHardware: return "NullHardware";
+ case PerformanceOverrideTypeINTEL::eFlushGpuCaches: return "FlushGpuCaches";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class PerformanceParameterTypeINTEL
+ {
+ eHwCountersSupported = VK_PERFORMANCE_PARAMETER_TYPE_HW_COUNTERS_SUPPORTED_INTEL,
+ eStreamMarkerValidBits = VK_PERFORMANCE_PARAMETER_TYPE_STREAM_MARKER_VALID_BITS_INTEL
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( PerformanceParameterTypeINTEL value )
+ {
+ switch ( value )
+ {
+ case PerformanceParameterTypeINTEL::eHwCountersSupported: return "HwCountersSupported";
+ case PerformanceParameterTypeINTEL::eStreamMarkerValidBits: return "StreamMarkerValidBits";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class PerformanceValueTypeINTEL
+ {
+ eUint32 = VK_PERFORMANCE_VALUE_TYPE_UINT32_INTEL,
+ eUint64 = VK_PERFORMANCE_VALUE_TYPE_UINT64_INTEL,
+ eFloat = VK_PERFORMANCE_VALUE_TYPE_FLOAT_INTEL,
+ eBool = VK_PERFORMANCE_VALUE_TYPE_BOOL_INTEL,
+ eString = VK_PERFORMANCE_VALUE_TYPE_STRING_INTEL
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( PerformanceValueTypeINTEL value )
+ {
+ switch ( value )
+ {
+ case PerformanceValueTypeINTEL::eUint32: return "Uint32";
+ case PerformanceValueTypeINTEL::eUint64: return "Uint64";
+ case PerformanceValueTypeINTEL::eFloat: return "Float";
+ case PerformanceValueTypeINTEL::eBool: return "Bool";
+ case PerformanceValueTypeINTEL::eString: return "String";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+#if defined( VK_USE_PLATFORM_FUCHSIA )
+ //=== VK_FUCHSIA_imagepipe_surface ===
+
+ enum class ImagePipeSurfaceCreateFlagBitsFUCHSIA : VkImagePipeSurfaceCreateFlagsFUCHSIA
+ {
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( ImagePipeSurfaceCreateFlagBitsFUCHSIA )
+ {
+ return "(void)";
+ }
+#endif /*VK_USE_PLATFORM_FUCHSIA*/
+
+#if defined( VK_USE_PLATFORM_METAL_EXT )
+ //=== VK_EXT_metal_surface ===
+
+ enum class MetalSurfaceCreateFlagBitsEXT : VkMetalSurfaceCreateFlagsEXT
+ {
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( MetalSurfaceCreateFlagBitsEXT )
+ {
+ return "(void)";
+ }
+#endif /*VK_USE_PLATFORM_METAL_EXT*/
+
+ //=== VK_KHR_fragment_shading_rate ===
+
+ enum class FragmentShadingRateCombinerOpKHR
+ {
+ eKeep = VK_FRAGMENT_SHADING_RATE_COMBINER_OP_KEEP_KHR,
+ eReplace = VK_FRAGMENT_SHADING_RATE_COMBINER_OP_REPLACE_KHR,
+ eMin = VK_FRAGMENT_SHADING_RATE_COMBINER_OP_MIN_KHR,
+ eMax = VK_FRAGMENT_SHADING_RATE_COMBINER_OP_MAX_KHR,
+ eMul = VK_FRAGMENT_SHADING_RATE_COMBINER_OP_MUL_KHR
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( FragmentShadingRateCombinerOpKHR value )
+ {
+ switch ( value )
+ {
+ case FragmentShadingRateCombinerOpKHR::eKeep: return "Keep";
+ case FragmentShadingRateCombinerOpKHR::eReplace: return "Replace";
+ case FragmentShadingRateCombinerOpKHR::eMin: return "Min";
+ case FragmentShadingRateCombinerOpKHR::eMax: return "Max";
+ case FragmentShadingRateCombinerOpKHR::eMul: return "Mul";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ //=== VK_AMD_shader_core_properties2 ===
+
+ enum class ShaderCorePropertiesFlagBitsAMD : VkShaderCorePropertiesFlagsAMD
+ {
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( ShaderCorePropertiesFlagBitsAMD )
+ {
+ return "(void)";
+ }
+
+ //=== VK_EXT_tooling_info ===
+
+ enum class ToolPurposeFlagBitsEXT : VkToolPurposeFlagsEXT
+ {
+ eValidation = VK_TOOL_PURPOSE_VALIDATION_BIT_EXT,
+ eProfiling = VK_TOOL_PURPOSE_PROFILING_BIT_EXT,
+ eTracing = VK_TOOL_PURPOSE_TRACING_BIT_EXT,
+ eAdditionalFeatures = VK_TOOL_PURPOSE_ADDITIONAL_FEATURES_BIT_EXT,
+ eModifyingFeatures = VK_TOOL_PURPOSE_MODIFYING_FEATURES_BIT_EXT,
+ eDebugReporting = VK_TOOL_PURPOSE_DEBUG_REPORTING_BIT_EXT,
+ eDebugMarkers = VK_TOOL_PURPOSE_DEBUG_MARKERS_BIT_EXT
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( ToolPurposeFlagBitsEXT value )
+ {
+ switch ( value )
+ {
+ case ToolPurposeFlagBitsEXT::eValidation: return "Validation";
+ case ToolPurposeFlagBitsEXT::eProfiling: return "Profiling";
+ case ToolPurposeFlagBitsEXT::eTracing: return "Tracing";
+ case ToolPurposeFlagBitsEXT::eAdditionalFeatures: return "AdditionalFeatures";
+ case ToolPurposeFlagBitsEXT::eModifyingFeatures: return "ModifyingFeatures";
+ case ToolPurposeFlagBitsEXT::eDebugReporting: return "DebugReporting";
+ case ToolPurposeFlagBitsEXT::eDebugMarkers: return "DebugMarkers";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ //=== VK_EXT_validation_features ===
+
+ enum class ValidationFeatureEnableEXT
+ {
+ eGpuAssisted = VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_EXT,
+ eGpuAssistedReserveBindingSlot = VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_RESERVE_BINDING_SLOT_EXT,
+ eBestPractices = VK_VALIDATION_FEATURE_ENABLE_BEST_PRACTICES_EXT,
+ eDebugPrintf = VK_VALIDATION_FEATURE_ENABLE_DEBUG_PRINTF_EXT,
+ eSynchronizationValidation = VK_VALIDATION_FEATURE_ENABLE_SYNCHRONIZATION_VALIDATION_EXT
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( ValidationFeatureEnableEXT value )
+ {
+ switch ( value )
+ {
+ case ValidationFeatureEnableEXT::eGpuAssisted: return "GpuAssisted";
+ case ValidationFeatureEnableEXT::eGpuAssistedReserveBindingSlot: return "GpuAssistedReserveBindingSlot";
+ case ValidationFeatureEnableEXT::eBestPractices: return "BestPractices";
+ case ValidationFeatureEnableEXT::eDebugPrintf: return "DebugPrintf";
+ case ValidationFeatureEnableEXT::eSynchronizationValidation: return "SynchronizationValidation";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class ValidationFeatureDisableEXT
+ {
+ eAll = VK_VALIDATION_FEATURE_DISABLE_ALL_EXT,
+ eShaders = VK_VALIDATION_FEATURE_DISABLE_SHADERS_EXT,
+ eThreadSafety = VK_VALIDATION_FEATURE_DISABLE_THREAD_SAFETY_EXT,
+ eApiParameters = VK_VALIDATION_FEATURE_DISABLE_API_PARAMETERS_EXT,
+ eObjectLifetimes = VK_VALIDATION_FEATURE_DISABLE_OBJECT_LIFETIMES_EXT,
+ eCoreChecks = VK_VALIDATION_FEATURE_DISABLE_CORE_CHECKS_EXT,
+ eUniqueHandles = VK_VALIDATION_FEATURE_DISABLE_UNIQUE_HANDLES_EXT,
+ eShaderValidationCache = VK_VALIDATION_FEATURE_DISABLE_SHADER_VALIDATION_CACHE_EXT
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( ValidationFeatureDisableEXT value )
+ {
+ switch ( value )
+ {
+ case ValidationFeatureDisableEXT::eAll: return "All";
+ case ValidationFeatureDisableEXT::eShaders: return "Shaders";
+ case ValidationFeatureDisableEXT::eThreadSafety: return "ThreadSafety";
+ case ValidationFeatureDisableEXT::eApiParameters: return "ApiParameters";
+ case ValidationFeatureDisableEXT::eObjectLifetimes: return "ObjectLifetimes";
+ case ValidationFeatureDisableEXT::eCoreChecks: return "CoreChecks";
+ case ValidationFeatureDisableEXT::eUniqueHandles: return "UniqueHandles";
+ case ValidationFeatureDisableEXT::eShaderValidationCache: return "ShaderValidationCache";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ //=== VK_NV_cooperative_matrix ===
+
+ enum class ScopeNV
+ {
+ eDevice = VK_SCOPE_DEVICE_NV,
+ eWorkgroup = VK_SCOPE_WORKGROUP_NV,
+ eSubgroup = VK_SCOPE_SUBGROUP_NV,
+ eQueueFamily = VK_SCOPE_QUEUE_FAMILY_NV
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( ScopeNV value )
+ {
+ switch ( value )
+ {
+ case ScopeNV::eDevice: return "Device";
+ case ScopeNV::eWorkgroup: return "Workgroup";
+ case ScopeNV::eSubgroup: return "Subgroup";
+ case ScopeNV::eQueueFamily: return "QueueFamily";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class ComponentTypeNV
+ {
+ eFloat16 = VK_COMPONENT_TYPE_FLOAT16_NV,
+ eFloat32 = VK_COMPONENT_TYPE_FLOAT32_NV,
+ eFloat64 = VK_COMPONENT_TYPE_FLOAT64_NV,
+ eSint8 = VK_COMPONENT_TYPE_SINT8_NV,
+ eSint16 = VK_COMPONENT_TYPE_SINT16_NV,
+ eSint32 = VK_COMPONENT_TYPE_SINT32_NV,
+ eSint64 = VK_COMPONENT_TYPE_SINT64_NV,
+ eUint8 = VK_COMPONENT_TYPE_UINT8_NV,
+ eUint16 = VK_COMPONENT_TYPE_UINT16_NV,
+ eUint32 = VK_COMPONENT_TYPE_UINT32_NV,
+ eUint64 = VK_COMPONENT_TYPE_UINT64_NV
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( ComponentTypeNV value )
+ {
+ switch ( value )
+ {
+ case ComponentTypeNV::eFloat16: return "Float16";
+ case ComponentTypeNV::eFloat32: return "Float32";
+ case ComponentTypeNV::eFloat64: return "Float64";
+ case ComponentTypeNV::eSint8: return "Sint8";
+ case ComponentTypeNV::eSint16: return "Sint16";
+ case ComponentTypeNV::eSint32: return "Sint32";
+ case ComponentTypeNV::eSint64: return "Sint64";
+ case ComponentTypeNV::eUint8: return "Uint8";
+ case ComponentTypeNV::eUint16: return "Uint16";
+ case ComponentTypeNV::eUint32: return "Uint32";
+ case ComponentTypeNV::eUint64: return "Uint64";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ //=== VK_NV_coverage_reduction_mode ===
+
+ enum class CoverageReductionModeNV
+ {
+ eMerge = VK_COVERAGE_REDUCTION_MODE_MERGE_NV,
+ eTruncate = VK_COVERAGE_REDUCTION_MODE_TRUNCATE_NV
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( CoverageReductionModeNV value )
+ {
+ switch ( value )
+ {
+ case CoverageReductionModeNV::eMerge: return "Merge";
+ case CoverageReductionModeNV::eTruncate: return "Truncate";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class PipelineCoverageReductionStateCreateFlagBitsNV : VkPipelineCoverageReductionStateCreateFlagsNV
+ {
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( PipelineCoverageReductionStateCreateFlagBitsNV )
+ {
+ return "(void)";
+ }
+
+ //=== VK_EXT_provoking_vertex ===
+
+ enum class ProvokingVertexModeEXT
+ {
+ eFirstVertex = VK_PROVOKING_VERTEX_MODE_FIRST_VERTEX_EXT,
+ eLastVertex = VK_PROVOKING_VERTEX_MODE_LAST_VERTEX_EXT
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( ProvokingVertexModeEXT value )
+ {
+ switch ( value )
+ {
+ case ProvokingVertexModeEXT::eFirstVertex: return "FirstVertex";
+ case ProvokingVertexModeEXT::eLastVertex: return "LastVertex";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ //=== VK_EXT_full_screen_exclusive ===
+
+ enum class FullScreenExclusiveEXT
+ {
+ eDefault = VK_FULL_SCREEN_EXCLUSIVE_DEFAULT_EXT,
+ eAllowed = VK_FULL_SCREEN_EXCLUSIVE_ALLOWED_EXT,
+ eDisallowed = VK_FULL_SCREEN_EXCLUSIVE_DISALLOWED_EXT,
+ eApplicationControlled = VK_FULL_SCREEN_EXCLUSIVE_APPLICATION_CONTROLLED_EXT
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( FullScreenExclusiveEXT value )
+ {
+ switch ( value )
+ {
+ case FullScreenExclusiveEXT::eDefault: return "Default";
+ case FullScreenExclusiveEXT::eAllowed: return "Allowed";
+ case FullScreenExclusiveEXT::eDisallowed: return "Disallowed";
+ case FullScreenExclusiveEXT::eApplicationControlled: return "ApplicationControlled";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+
+ //=== VK_EXT_headless_surface ===
+
+ enum class HeadlessSurfaceCreateFlagBitsEXT : VkHeadlessSurfaceCreateFlagsEXT
+ {
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( HeadlessSurfaceCreateFlagBitsEXT )
+ {
+ return "(void)";
+ }
+
+ //=== VK_EXT_line_rasterization ===
+
+ enum class LineRasterizationModeEXT
+ {
+ eDefault = VK_LINE_RASTERIZATION_MODE_DEFAULT_EXT,
+ eRectangular = VK_LINE_RASTERIZATION_MODE_RECTANGULAR_EXT,
+ eBresenham = VK_LINE_RASTERIZATION_MODE_BRESENHAM_EXT,
+ eRectangularSmooth = VK_LINE_RASTERIZATION_MODE_RECTANGULAR_SMOOTH_EXT
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( LineRasterizationModeEXT value )
+ {
+ switch ( value )
+ {
+ case LineRasterizationModeEXT::eDefault: return "Default";
+ case LineRasterizationModeEXT::eRectangular: return "Rectangular";
+ case LineRasterizationModeEXT::eBresenham: return "Bresenham";
+ case LineRasterizationModeEXT::eRectangularSmooth: return "RectangularSmooth";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ //=== VK_KHR_pipeline_executable_properties ===
+
+ enum class PipelineExecutableStatisticFormatKHR
+ {
+ eBool32 = VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_BOOL32_KHR,
+ eInt64 = VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_INT64_KHR,
+ eUint64 = VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_UINT64_KHR,
+ eFloat64 = VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_FLOAT64_KHR
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( PipelineExecutableStatisticFormatKHR value )
+ {
+ switch ( value )
+ {
+ case PipelineExecutableStatisticFormatKHR::eBool32: return "Bool32";
+ case PipelineExecutableStatisticFormatKHR::eInt64: return "Int64";
+ case PipelineExecutableStatisticFormatKHR::eUint64: return "Uint64";
+ case PipelineExecutableStatisticFormatKHR::eFloat64: return "Float64";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ //=== VK_NV_device_generated_commands ===
+
+ enum class IndirectStateFlagBitsNV : VkIndirectStateFlagsNV
+ {
+ eFlagFrontface = VK_INDIRECT_STATE_FLAG_FRONTFACE_BIT_NV
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( IndirectStateFlagBitsNV value )
+ {
+ switch ( value )
+ {
+ case IndirectStateFlagBitsNV::eFlagFrontface: return "FlagFrontface";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class IndirectCommandsTokenTypeNV
+ {
+ eShaderGroup = VK_INDIRECT_COMMANDS_TOKEN_TYPE_SHADER_GROUP_NV,
+ eStateFlags = VK_INDIRECT_COMMANDS_TOKEN_TYPE_STATE_FLAGS_NV,
+ eIndexBuffer = VK_INDIRECT_COMMANDS_TOKEN_TYPE_INDEX_BUFFER_NV,
+ eVertexBuffer = VK_INDIRECT_COMMANDS_TOKEN_TYPE_VERTEX_BUFFER_NV,
+ ePushConstant = VK_INDIRECT_COMMANDS_TOKEN_TYPE_PUSH_CONSTANT_NV,
+ eDrawIndexed = VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_INDEXED_NV,
+ eDraw = VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_NV,
+ eDrawTasks = VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_TASKS_NV
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( IndirectCommandsTokenTypeNV value )
+ {
+ switch ( value )
+ {
+ case IndirectCommandsTokenTypeNV::eShaderGroup: return "ShaderGroup";
+ case IndirectCommandsTokenTypeNV::eStateFlags: return "StateFlags";
+ case IndirectCommandsTokenTypeNV::eIndexBuffer: return "IndexBuffer";
+ case IndirectCommandsTokenTypeNV::eVertexBuffer: return "VertexBuffer";
+ case IndirectCommandsTokenTypeNV::ePushConstant: return "PushConstant";
+ case IndirectCommandsTokenTypeNV::eDrawIndexed: return "DrawIndexed";
+ case IndirectCommandsTokenTypeNV::eDraw: return "Draw";
+ case IndirectCommandsTokenTypeNV::eDrawTasks: return "DrawTasks";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class IndirectCommandsLayoutUsageFlagBitsNV : VkIndirectCommandsLayoutUsageFlagsNV
+ {
+ eExplicitPreprocess = VK_INDIRECT_COMMANDS_LAYOUT_USAGE_EXPLICIT_PREPROCESS_BIT_NV,
+ eIndexedSequences = VK_INDIRECT_COMMANDS_LAYOUT_USAGE_INDEXED_SEQUENCES_BIT_NV,
+ eUnorderedSequences = VK_INDIRECT_COMMANDS_LAYOUT_USAGE_UNORDERED_SEQUENCES_BIT_NV
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( IndirectCommandsLayoutUsageFlagBitsNV value )
+ {
+ switch ( value )
+ {
+ case IndirectCommandsLayoutUsageFlagBitsNV::eExplicitPreprocess: return "ExplicitPreprocess";
+ case IndirectCommandsLayoutUsageFlagBitsNV::eIndexedSequences: return "IndexedSequences";
+ case IndirectCommandsLayoutUsageFlagBitsNV::eUnorderedSequences: return "UnorderedSequences";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ //=== VK_EXT_device_memory_report ===
+
+ enum class DeviceMemoryReportEventTypeEXT
+ {
+ eAllocate = VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_ALLOCATE_EXT,
+ eFree = VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_FREE_EXT,
+ eImport = VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_IMPORT_EXT,
+ eUnimport = VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_UNIMPORT_EXT,
+ eAllocationFailed = VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_ALLOCATION_FAILED_EXT
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( DeviceMemoryReportEventTypeEXT value )
+ {
+ switch ( value )
+ {
+ case DeviceMemoryReportEventTypeEXT::eAllocate: return "Allocate";
+ case DeviceMemoryReportEventTypeEXT::eFree: return "Free";
+ case DeviceMemoryReportEventTypeEXT::eImport: return "Import";
+ case DeviceMemoryReportEventTypeEXT::eUnimport: return "Unimport";
+ case DeviceMemoryReportEventTypeEXT::eAllocationFailed: return "AllocationFailed";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class DeviceMemoryReportFlagBitsEXT : VkDeviceMemoryReportFlagsEXT
+ {
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( DeviceMemoryReportFlagBitsEXT )
+ {
+ return "(void)";
+ }
+
+ //=== VK_EXT_private_data ===
+
+ enum class PrivateDataSlotCreateFlagBitsEXT : VkPrivateDataSlotCreateFlagsEXT
+ {
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( PrivateDataSlotCreateFlagBitsEXT )
+ {
+ return "(void)";
+ }
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ //=== VK_KHR_video_encode_queue ===
+
+ enum class VideoEncodeFlagBitsKHR : VkVideoEncodeFlagsKHR
+ {
+ eDefault = VK_VIDEO_ENCODE_DEFAULT_KHR,
+ eReserved0 = VK_VIDEO_ENCODE_RESERVED_0_BIT_KHR
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( VideoEncodeFlagBitsKHR value )
+ {
+ switch ( value )
+ {
+ case VideoEncodeFlagBitsKHR::eDefault: return "Default";
+ case VideoEncodeFlagBitsKHR::eReserved0: return "Reserved0";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class VideoEncodeRateControlFlagBitsKHR : VkVideoEncodeRateControlFlagsKHR
+ {
+ eDefault = VK_VIDEO_ENCODE_RATE_CONTROL_DEFAULT_KHR,
+ eReset = VK_VIDEO_ENCODE_RATE_CONTROL_RESET_BIT_KHR
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( VideoEncodeRateControlFlagBitsKHR value )
+ {
+ switch ( value )
+ {
+ case VideoEncodeRateControlFlagBitsKHR::eDefault: return "Default";
+ case VideoEncodeRateControlFlagBitsKHR::eReset: return "Reset";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class VideoEncodeRateControlModeFlagBitsKHR : VkVideoEncodeRateControlModeFlagsKHR
+ {
+ eNone = VK_VIDEO_ENCODE_RATE_CONTROL_MODE_NONE_BIT_KHR,
+ eCbr = VK_VIDEO_ENCODE_RATE_CONTROL_MODE_CBR_BIT_KHR,
+ eVbr = VK_VIDEO_ENCODE_RATE_CONTROL_MODE_VBR_BIT_KHR
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( VideoEncodeRateControlModeFlagBitsKHR value )
+ {
+ switch ( value )
+ {
+ case VideoEncodeRateControlModeFlagBitsKHR::eNone: return "None";
+ case VideoEncodeRateControlModeFlagBitsKHR::eCbr: return "Cbr";
+ case VideoEncodeRateControlModeFlagBitsKHR::eVbr: return "Vbr";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+ //=== VK_NV_device_diagnostics_config ===
+
+ enum class DeviceDiagnosticsConfigFlagBitsNV : VkDeviceDiagnosticsConfigFlagsNV
+ {
+ eEnableShaderDebugInfo = VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_SHADER_DEBUG_INFO_BIT_NV,
+ eEnableResourceTracking = VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_RESOURCE_TRACKING_BIT_NV,
+ eEnableAutomaticCheckpoints = VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_AUTOMATIC_CHECKPOINTS_BIT_NV
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( DeviceDiagnosticsConfigFlagBitsNV value )
+ {
+ switch ( value )
+ {
+ case DeviceDiagnosticsConfigFlagBitsNV::eEnableShaderDebugInfo: return "EnableShaderDebugInfo";
+ case DeviceDiagnosticsConfigFlagBitsNV::eEnableResourceTracking: return "EnableResourceTracking";
+ case DeviceDiagnosticsConfigFlagBitsNV::eEnableAutomaticCheckpoints: return "EnableAutomaticCheckpoints";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ //=== VK_KHR_synchronization2 ===
+
+ enum class PipelineStageFlagBits2KHR : VkPipelineStageFlags2KHR
+ {
+ eNone = VK_PIPELINE_STAGE_2_NONE_KHR,
+ eTopOfPipe = VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT_KHR,
+ eDrawIndirect = VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT_KHR,
+ eVertexInput = VK_PIPELINE_STAGE_2_VERTEX_INPUT_BIT_KHR,
+ eVertexShader = VK_PIPELINE_STAGE_2_VERTEX_SHADER_BIT_KHR,
+ eTessellationControlShader = VK_PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT_KHR,
+ eTessellationEvaluationShader = VK_PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT_KHR,
+ eGeometryShader = VK_PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT_KHR,
+ eFragmentShader = VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT_KHR,
+ eEarlyFragmentTests = VK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT_KHR,
+ eLateFragmentTests = VK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT_KHR,
+ eColorAttachmentOutput = VK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT_KHR,
+ eComputeShader = VK_PIPELINE_STAGE_2_COMPUTE_SHADER_BIT_KHR,
+ eAllTransfer = VK_PIPELINE_STAGE_2_ALL_TRANSFER_BIT_KHR,
+ eBottomOfPipe = VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT_KHR,
+ eHost = VK_PIPELINE_STAGE_2_HOST_BIT_KHR,
+ eAllGraphics = VK_PIPELINE_STAGE_2_ALL_GRAPHICS_BIT_KHR,
+ eAllCommands = VK_PIPELINE_STAGE_2_ALL_COMMANDS_BIT_KHR,
+ eCopy = VK_PIPELINE_STAGE_2_COPY_BIT_KHR,
+ eResolve = VK_PIPELINE_STAGE_2_RESOLVE_BIT_KHR,
+ eBlit = VK_PIPELINE_STAGE_2_BLIT_BIT_KHR,
+ eClear = VK_PIPELINE_STAGE_2_CLEAR_BIT_KHR,
+ eIndexInput = VK_PIPELINE_STAGE_2_INDEX_INPUT_BIT_KHR,
+ eVertexAttributeInput = VK_PIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT_KHR,
+ ePreRasterizationShaders = VK_PIPELINE_STAGE_2_PRE_RASTERIZATION_SHADERS_BIT_KHR,
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ eVideoDecode = VK_PIPELINE_STAGE_2_VIDEO_DECODE_BIT_KHR,
+ eVideoEncode = VK_PIPELINE_STAGE_2_VIDEO_ENCODE_BIT_KHR,
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ eTransformFeedbackEXT = VK_PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT,
+ eConditionalRenderingEXT = VK_PIPELINE_STAGE_2_CONDITIONAL_RENDERING_BIT_EXT,
+ eCommandPreprocessNV = VK_PIPELINE_STAGE_2_COMMAND_PREPROCESS_BIT_NV,
+ eFragmentShadingRateAttachment = VK_PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR,
+ eAccelerationStructureBuild = VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR,
+ eRayTracingShader = VK_PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_KHR,
+ eFragmentDensityProcessEXT = VK_PIPELINE_STAGE_2_FRAGMENT_DENSITY_PROCESS_BIT_EXT,
+ eTaskShaderNV = VK_PIPELINE_STAGE_2_TASK_SHADER_BIT_NV,
+ eMeshShaderNV = VK_PIPELINE_STAGE_2_MESH_SHADER_BIT_NV,
+ eSubpassShadingHUAWEI = VK_PIPELINE_STAGE_2_SUBPASS_SHADING_BIT_HUAWEI,
+ eAccelerationStructureBuildNV = VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_NV,
+ eRayTracingShaderNV = VK_PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_NV,
+ eShadingRateImageNV = VK_PIPELINE_STAGE_2_SHADING_RATE_IMAGE_BIT_NV,
+ eTransfer = VK_PIPELINE_STAGE_2_TRANSFER_BIT_KHR
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( PipelineStageFlagBits2KHR value )
+ {
+ switch ( value )
+ {
+ case PipelineStageFlagBits2KHR::eNone: return "None";
+ case PipelineStageFlagBits2KHR::eTopOfPipe: return "TopOfPipe";
+ case PipelineStageFlagBits2KHR::eDrawIndirect: return "DrawIndirect";
+ case PipelineStageFlagBits2KHR::eVertexInput: return "VertexInput";
+ case PipelineStageFlagBits2KHR::eVertexShader: return "VertexShader";
+ case PipelineStageFlagBits2KHR::eTessellationControlShader: return "TessellationControlShader";
+ case PipelineStageFlagBits2KHR::eTessellationEvaluationShader: return "TessellationEvaluationShader";
+ case PipelineStageFlagBits2KHR::eGeometryShader: return "GeometryShader";
+ case PipelineStageFlagBits2KHR::eFragmentShader: return "FragmentShader";
+ case PipelineStageFlagBits2KHR::eEarlyFragmentTests: return "EarlyFragmentTests";
+ case PipelineStageFlagBits2KHR::eLateFragmentTests: return "LateFragmentTests";
+ case PipelineStageFlagBits2KHR::eColorAttachmentOutput: return "ColorAttachmentOutput";
+ case PipelineStageFlagBits2KHR::eComputeShader: return "ComputeShader";
+ case PipelineStageFlagBits2KHR::eAllTransfer: return "AllTransfer";
+ case PipelineStageFlagBits2KHR::eBottomOfPipe: return "BottomOfPipe";
+ case PipelineStageFlagBits2KHR::eHost: return "Host";
+ case PipelineStageFlagBits2KHR::eAllGraphics: return "AllGraphics";
+ case PipelineStageFlagBits2KHR::eAllCommands: return "AllCommands";
+ case PipelineStageFlagBits2KHR::eCopy: return "Copy";
+ case PipelineStageFlagBits2KHR::eResolve: return "Resolve";
+ case PipelineStageFlagBits2KHR::eBlit: return "Blit";
+ case PipelineStageFlagBits2KHR::eClear: return "Clear";
+ case PipelineStageFlagBits2KHR::eIndexInput: return "IndexInput";
+ case PipelineStageFlagBits2KHR::eVertexAttributeInput: return "VertexAttributeInput";
+ case PipelineStageFlagBits2KHR::ePreRasterizationShaders: return "PreRasterizationShaders";
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ case PipelineStageFlagBits2KHR::eVideoDecode: return "VideoDecode";
+ case PipelineStageFlagBits2KHR::eVideoEncode: return "VideoEncode";
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ case PipelineStageFlagBits2KHR::eTransformFeedbackEXT: return "TransformFeedbackEXT";
+ case PipelineStageFlagBits2KHR::eConditionalRenderingEXT: return "ConditionalRenderingEXT";
+ case PipelineStageFlagBits2KHR::eCommandPreprocessNV: return "CommandPreprocessNV";
+ case PipelineStageFlagBits2KHR::eFragmentShadingRateAttachment: return "FragmentShadingRateAttachment";
+ case PipelineStageFlagBits2KHR::eAccelerationStructureBuild: return "AccelerationStructureBuild";
+ case PipelineStageFlagBits2KHR::eRayTracingShader: return "RayTracingShader";
+ case PipelineStageFlagBits2KHR::eFragmentDensityProcessEXT: return "FragmentDensityProcessEXT";
+ case PipelineStageFlagBits2KHR::eTaskShaderNV: return "TaskShaderNV";
+ case PipelineStageFlagBits2KHR::eMeshShaderNV: return "MeshShaderNV";
+ case PipelineStageFlagBits2KHR::eSubpassShadingHUAWEI: return "SubpassShadingHUAWEI";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class AccessFlagBits2KHR : VkAccessFlags2KHR
+ {
+ eNone = VK_ACCESS_2_NONE_KHR,
+ eIndirectCommandRead = VK_ACCESS_2_INDIRECT_COMMAND_READ_BIT_KHR,
+ eIndexRead = VK_ACCESS_2_INDEX_READ_BIT_KHR,
+ eVertexAttributeRead = VK_ACCESS_2_VERTEX_ATTRIBUTE_READ_BIT_KHR,
+ eUniformRead = VK_ACCESS_2_UNIFORM_READ_BIT_KHR,
+ eInputAttachmentRead = VK_ACCESS_2_INPUT_ATTACHMENT_READ_BIT_KHR,
+ eShaderRead = VK_ACCESS_2_SHADER_READ_BIT_KHR,
+ eShaderWrite = VK_ACCESS_2_SHADER_WRITE_BIT_KHR,
+ eColorAttachmentRead = VK_ACCESS_2_COLOR_ATTACHMENT_READ_BIT_KHR,
+ eColorAttachmentWrite = VK_ACCESS_2_COLOR_ATTACHMENT_WRITE_BIT_KHR,
+ eDepthStencilAttachmentRead = VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_READ_BIT_KHR,
+ eDepthStencilAttachmentWrite = VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT_KHR,
+ eTransferRead = VK_ACCESS_2_TRANSFER_READ_BIT_KHR,
+ eTransferWrite = VK_ACCESS_2_TRANSFER_WRITE_BIT_KHR,
+ eHostRead = VK_ACCESS_2_HOST_READ_BIT_KHR,
+ eHostWrite = VK_ACCESS_2_HOST_WRITE_BIT_KHR,
+ eMemoryRead = VK_ACCESS_2_MEMORY_READ_BIT_KHR,
+ eMemoryWrite = VK_ACCESS_2_MEMORY_WRITE_BIT_KHR,
+ eShaderSampledRead = VK_ACCESS_2_SHADER_SAMPLED_READ_BIT_KHR,
+ eShaderStorageRead = VK_ACCESS_2_SHADER_STORAGE_READ_BIT_KHR,
+ eShaderStorageWrite = VK_ACCESS_2_SHADER_STORAGE_WRITE_BIT_KHR,
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ eVideoDecodeRead = VK_ACCESS_2_VIDEO_DECODE_READ_BIT_KHR,
+ eVideoDecodeWrite = VK_ACCESS_2_VIDEO_DECODE_WRITE_BIT_KHR,
+ eVideoEncodeRead = VK_ACCESS_2_VIDEO_ENCODE_READ_BIT_KHR,
+ eVideoEncodeWrite = VK_ACCESS_2_VIDEO_ENCODE_WRITE_BIT_KHR,
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ eTransformFeedbackWriteEXT = VK_ACCESS_2_TRANSFORM_FEEDBACK_WRITE_BIT_EXT,
+ eTransformFeedbackCounterReadEXT = VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT,
+ eTransformFeedbackCounterWriteEXT = VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT,
+ eConditionalRenderingReadEXT = VK_ACCESS_2_CONDITIONAL_RENDERING_READ_BIT_EXT,
+ eCommandPreprocessReadNV = VK_ACCESS_2_COMMAND_PREPROCESS_READ_BIT_NV,
+ eCommandPreprocessWriteNV = VK_ACCESS_2_COMMAND_PREPROCESS_WRITE_BIT_NV,
+ eFragmentShadingRateAttachmentRead = VK_ACCESS_2_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR,
+ eAccelerationStructureRead = VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR,
+ eAccelerationStructureWrite = VK_ACCESS_2_ACCELERATION_STRUCTURE_WRITE_BIT_KHR,
+ eFragmentDensityMapReadEXT = VK_ACCESS_2_FRAGMENT_DENSITY_MAP_READ_BIT_EXT,
+ eColorAttachmentReadNoncoherentEXT = VK_ACCESS_2_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT,
+ eAccelerationStructureReadNV = VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_NV,
+ eAccelerationStructureWriteNV = VK_ACCESS_2_ACCELERATION_STRUCTURE_WRITE_BIT_NV,
+ eShadingRateImageReadNV = VK_ACCESS_2_SHADING_RATE_IMAGE_READ_BIT_NV
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( AccessFlagBits2KHR value )
+ {
+ switch ( value )
+ {
+ case AccessFlagBits2KHR::eNone: return "None";
+ case AccessFlagBits2KHR::eIndirectCommandRead: return "IndirectCommandRead";
+ case AccessFlagBits2KHR::eIndexRead: return "IndexRead";
+ case AccessFlagBits2KHR::eVertexAttributeRead: return "VertexAttributeRead";
+ case AccessFlagBits2KHR::eUniformRead: return "UniformRead";
+ case AccessFlagBits2KHR::eInputAttachmentRead: return "InputAttachmentRead";
+ case AccessFlagBits2KHR::eShaderRead: return "ShaderRead";
+ case AccessFlagBits2KHR::eShaderWrite: return "ShaderWrite";
+ case AccessFlagBits2KHR::eColorAttachmentRead: return "ColorAttachmentRead";
+ case AccessFlagBits2KHR::eColorAttachmentWrite: return "ColorAttachmentWrite";
+ case AccessFlagBits2KHR::eDepthStencilAttachmentRead: return "DepthStencilAttachmentRead";
+ case AccessFlagBits2KHR::eDepthStencilAttachmentWrite: return "DepthStencilAttachmentWrite";
+ case AccessFlagBits2KHR::eTransferRead: return "TransferRead";
+ case AccessFlagBits2KHR::eTransferWrite: return "TransferWrite";
+ case AccessFlagBits2KHR::eHostRead: return "HostRead";
+ case AccessFlagBits2KHR::eHostWrite: return "HostWrite";
+ case AccessFlagBits2KHR::eMemoryRead: return "MemoryRead";
+ case AccessFlagBits2KHR::eMemoryWrite: return "MemoryWrite";
+ case AccessFlagBits2KHR::eShaderSampledRead: return "ShaderSampledRead";
+ case AccessFlagBits2KHR::eShaderStorageRead: return "ShaderStorageRead";
+ case AccessFlagBits2KHR::eShaderStorageWrite: return "ShaderStorageWrite";
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ case AccessFlagBits2KHR::eVideoDecodeRead: return "VideoDecodeRead";
+ case AccessFlagBits2KHR::eVideoDecodeWrite: return "VideoDecodeWrite";
+ case AccessFlagBits2KHR::eVideoEncodeRead: return "VideoEncodeRead";
+ case AccessFlagBits2KHR::eVideoEncodeWrite: return "VideoEncodeWrite";
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ case AccessFlagBits2KHR::eTransformFeedbackWriteEXT: return "TransformFeedbackWriteEXT";
+ case AccessFlagBits2KHR::eTransformFeedbackCounterReadEXT: return "TransformFeedbackCounterReadEXT";
+ case AccessFlagBits2KHR::eTransformFeedbackCounterWriteEXT: return "TransformFeedbackCounterWriteEXT";
+ case AccessFlagBits2KHR::eConditionalRenderingReadEXT: return "ConditionalRenderingReadEXT";
+ case AccessFlagBits2KHR::eCommandPreprocessReadNV: return "CommandPreprocessReadNV";
+ case AccessFlagBits2KHR::eCommandPreprocessWriteNV: return "CommandPreprocessWriteNV";
+ case AccessFlagBits2KHR::eFragmentShadingRateAttachmentRead: return "FragmentShadingRateAttachmentRead";
+ case AccessFlagBits2KHR::eAccelerationStructureRead: return "AccelerationStructureRead";
+ case AccessFlagBits2KHR::eAccelerationStructureWrite: return "AccelerationStructureWrite";
+ case AccessFlagBits2KHR::eFragmentDensityMapReadEXT: return "FragmentDensityMapReadEXT";
+ case AccessFlagBits2KHR::eColorAttachmentReadNoncoherentEXT: return "ColorAttachmentReadNoncoherentEXT";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class SubmitFlagBitsKHR : VkSubmitFlagsKHR
+ {
+ eProtected = VK_SUBMIT_PROTECTED_BIT_KHR
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( SubmitFlagBitsKHR value )
+ {
+ switch ( value )
+ {
+ case SubmitFlagBitsKHR::eProtected: return "Protected";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ //=== VK_NV_fragment_shading_rate_enums ===
+
+ enum class FragmentShadingRateNV
+ {
+ e1InvocationPerPixel = VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_PIXEL_NV,
+ e1InvocationPer1X2Pixels = VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_1X2_PIXELS_NV,
+ e1InvocationPer2X1Pixels = VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X1_PIXELS_NV,
+ e1InvocationPer2X2Pixels = VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X2_PIXELS_NV,
+ e1InvocationPer2X4Pixels = VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X4_PIXELS_NV,
+ e1InvocationPer4X2Pixels = VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_4X2_PIXELS_NV,
+ e1InvocationPer4X4Pixels = VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_4X4_PIXELS_NV,
+ e2InvocationsPerPixel = VK_FRAGMENT_SHADING_RATE_2_INVOCATIONS_PER_PIXEL_NV,
+ e4InvocationsPerPixel = VK_FRAGMENT_SHADING_RATE_4_INVOCATIONS_PER_PIXEL_NV,
+ e8InvocationsPerPixel = VK_FRAGMENT_SHADING_RATE_8_INVOCATIONS_PER_PIXEL_NV,
+ e16InvocationsPerPixel = VK_FRAGMENT_SHADING_RATE_16_INVOCATIONS_PER_PIXEL_NV,
+ eNoInvocations = VK_FRAGMENT_SHADING_RATE_NO_INVOCATIONS_NV
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( FragmentShadingRateNV value )
+ {
+ switch ( value )
+ {
+ case FragmentShadingRateNV::e1InvocationPerPixel: return "1InvocationPerPixel";
+ case FragmentShadingRateNV::e1InvocationPer1X2Pixels: return "1InvocationPer1X2Pixels";
+ case FragmentShadingRateNV::e1InvocationPer2X1Pixels: return "1InvocationPer2X1Pixels";
+ case FragmentShadingRateNV::e1InvocationPer2X2Pixels: return "1InvocationPer2X2Pixels";
+ case FragmentShadingRateNV::e1InvocationPer2X4Pixels: return "1InvocationPer2X4Pixels";
+ case FragmentShadingRateNV::e1InvocationPer4X2Pixels: return "1InvocationPer4X2Pixels";
+ case FragmentShadingRateNV::e1InvocationPer4X4Pixels: return "1InvocationPer4X4Pixels";
+ case FragmentShadingRateNV::e2InvocationsPerPixel: return "2InvocationsPerPixel";
+ case FragmentShadingRateNV::e4InvocationsPerPixel: return "4InvocationsPerPixel";
+ case FragmentShadingRateNV::e8InvocationsPerPixel: return "8InvocationsPerPixel";
+ case FragmentShadingRateNV::e16InvocationsPerPixel: return "16InvocationsPerPixel";
+ case FragmentShadingRateNV::eNoInvocations: return "NoInvocations";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class FragmentShadingRateTypeNV
+ {
+ eFragmentSize = VK_FRAGMENT_SHADING_RATE_TYPE_FRAGMENT_SIZE_NV,
+ eEnums = VK_FRAGMENT_SHADING_RATE_TYPE_ENUMS_NV
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( FragmentShadingRateTypeNV value )
+ {
+ switch ( value )
+ {
+ case FragmentShadingRateTypeNV::eFragmentSize: return "FragmentSize";
+ case FragmentShadingRateTypeNV::eEnums: return "Enums";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ //=== VK_NV_ray_tracing_motion_blur ===
+
+ enum class AccelerationStructureMotionInstanceTypeNV
+ {
+ eStatic = VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_STATIC_NV,
+ eMatrixMotion = VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_MATRIX_MOTION_NV,
+ eSrtMotion = VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_SRT_MOTION_NV
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( AccelerationStructureMotionInstanceTypeNV value )
+ {
+ switch ( value )
+ {
+ case AccelerationStructureMotionInstanceTypeNV::eStatic: return "Static";
+ case AccelerationStructureMotionInstanceTypeNV::eMatrixMotion: return "MatrixMotion";
+ case AccelerationStructureMotionInstanceTypeNV::eSrtMotion: return "SrtMotion";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class AccelerationStructureMotionInfoFlagBitsNV : VkAccelerationStructureMotionInfoFlagsNV
+ {
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( AccelerationStructureMotionInfoFlagBitsNV )
+ {
+ return "(void)";
+ }
+
+ enum class AccelerationStructureMotionInstanceFlagBitsNV : VkAccelerationStructureMotionInstanceFlagsNV
+ {
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( AccelerationStructureMotionInstanceFlagBitsNV )
+ {
+ return "(void)";
+ }
+
+#if defined( VK_USE_PLATFORM_DIRECTFB_EXT )
+ //=== VK_EXT_directfb_surface ===
+
+ enum class DirectFBSurfaceCreateFlagBitsEXT : VkDirectFBSurfaceCreateFlagsEXT
+ {
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( DirectFBSurfaceCreateFlagBitsEXT )
+ {
+ return "(void)";
+ }
+#endif /*VK_USE_PLATFORM_DIRECTFB_EXT*/
+
+ //=== VK_KHR_ray_tracing_pipeline ===
+
+ enum class RayTracingShaderGroupTypeKHR
+ {
+ eGeneral = VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_KHR,
+ eTrianglesHitGroup = VK_RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_KHR,
+ eProceduralHitGroup = VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_KHR
+ };
+ using RayTracingShaderGroupTypeNV = RayTracingShaderGroupTypeKHR;
+
+ VULKAN_HPP_INLINE std::string to_string( RayTracingShaderGroupTypeKHR value )
+ {
+ switch ( value )
+ {
+ case RayTracingShaderGroupTypeKHR::eGeneral: return "General";
+ case RayTracingShaderGroupTypeKHR::eTrianglesHitGroup: return "TrianglesHitGroup";
+ case RayTracingShaderGroupTypeKHR::eProceduralHitGroup: return "ProceduralHitGroup";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+ enum class ShaderGroupShaderKHR
+ {
+ eGeneral = VK_SHADER_GROUP_SHADER_GENERAL_KHR,
+ eClosestHit = VK_SHADER_GROUP_SHADER_CLOSEST_HIT_KHR,
+ eAnyHit = VK_SHADER_GROUP_SHADER_ANY_HIT_KHR,
+ eIntersection = VK_SHADER_GROUP_SHADER_INTERSECTION_KHR
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( ShaderGroupShaderKHR value )
+ {
+ switch ( value )
+ {
+ case ShaderGroupShaderKHR::eGeneral: return "General";
+ case ShaderGroupShaderKHR::eClosestHit: return "ClosestHit";
+ case ShaderGroupShaderKHR::eAnyHit: return "AnyHit";
+ case ShaderGroupShaderKHR::eIntersection: return "Intersection";
+ default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
+ }
+ }
+
+#if defined( VK_USE_PLATFORM_SCREEN_QNX )
+ //=== VK_QNX_screen_surface ===
+
+ enum class ScreenSurfaceCreateFlagBitsQNX : VkScreenSurfaceCreateFlagsQNX
+ {
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( ScreenSurfaceCreateFlagBitsQNX )
+ {
+ return "(void)";
+ }
+#endif /*VK_USE_PLATFORM_SCREEN_QNX*/
+
+ template <ObjectType value>
+ struct cpp_type
+ {};
+
+ template <typename T>
+ struct IndexTypeValue
+ {};
+
+ template <>
+ struct IndexTypeValue<uint16_t>
+ {
+ static VULKAN_HPP_CONST_OR_CONSTEXPR IndexType value = IndexType::eUint16;
+ };
+
+ template <>
+ struct CppType<IndexType, IndexType::eUint16>
+ {
+ using Type = uint16_t;
+ };
+
+ template <>
+ struct IndexTypeValue<uint32_t>
+ {
+ static VULKAN_HPP_CONST_OR_CONSTEXPR IndexType value = IndexType::eUint32;
+ };
+
+ template <>
+ struct CppType<IndexType, IndexType::eUint32>
+ {
+ using Type = uint32_t;
+ };
+
+ template <>
+ struct IndexTypeValue<uint8_t>
+ {
+ static VULKAN_HPP_CONST_OR_CONSTEXPR IndexType value = IndexType::eUint8EXT;
+ };
+
+ template <>
+ struct CppType<IndexType, IndexType::eUint8EXT>
+ {
+ using Type = uint8_t;
+ };
+
+ //================
+ //=== BITMASKs ===
+ //================
+
+ //=== VK_VERSION_1_0 ===
+
+ using FormatFeatureFlags = Flags<FormatFeatureFlagBits>;
+
+ template <>
+ struct FlagTraits<FormatFeatureFlagBits>
+ {
+ enum : VkFlags
+ {
+ allFlags =
+ VkFlags( FormatFeatureFlagBits::eSampledImage ) | VkFlags( FormatFeatureFlagBits::eStorageImage ) |
+ VkFlags( FormatFeatureFlagBits::eStorageImageAtomic ) | VkFlags( FormatFeatureFlagBits::eUniformTexelBuffer ) |
+ VkFlags( FormatFeatureFlagBits::eStorageTexelBuffer ) |
+ VkFlags( FormatFeatureFlagBits::eStorageTexelBufferAtomic ) | VkFlags( FormatFeatureFlagBits::eVertexBuffer ) |
+ VkFlags( FormatFeatureFlagBits::eColorAttachment ) | VkFlags( FormatFeatureFlagBits::eColorAttachmentBlend ) |
+ VkFlags( FormatFeatureFlagBits::eDepthStencilAttachment ) | VkFlags( FormatFeatureFlagBits::eBlitSrc ) |
+ VkFlags( FormatFeatureFlagBits::eBlitDst ) | VkFlags( FormatFeatureFlagBits::eSampledImageFilterLinear ) |
+ VkFlags( FormatFeatureFlagBits::eTransferSrc ) | VkFlags( FormatFeatureFlagBits::eTransferDst ) |
+ VkFlags( FormatFeatureFlagBits::eMidpointChromaSamples ) |
+ VkFlags( FormatFeatureFlagBits::eSampledImageYcbcrConversionLinearFilter ) |
+ VkFlags( FormatFeatureFlagBits::eSampledImageYcbcrConversionSeparateReconstructionFilter ) |
+ VkFlags( FormatFeatureFlagBits::eSampledImageYcbcrConversionChromaReconstructionExplicit ) |
+ VkFlags( FormatFeatureFlagBits::eSampledImageYcbcrConversionChromaReconstructionExplicitForceable ) |
+ VkFlags( FormatFeatureFlagBits::eDisjoint ) | VkFlags( FormatFeatureFlagBits::eCositedChromaSamples ) |
+ VkFlags( FormatFeatureFlagBits::eSampledImageFilterMinmax ) |
+ VkFlags( FormatFeatureFlagBits::eSampledImageFilterCubicIMG )
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ | VkFlags( FormatFeatureFlagBits::eVideoDecodeOutputKHR ) | VkFlags( FormatFeatureFlagBits::eVideoDecodeDpbKHR )
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ | VkFlags( FormatFeatureFlagBits::eAccelerationStructureVertexBufferKHR ) |
+ VkFlags( FormatFeatureFlagBits::eFragmentDensityMapEXT ) |
+ VkFlags( FormatFeatureFlagBits::eFragmentShadingRateAttachmentKHR )
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ | VkFlags( FormatFeatureFlagBits::eVideoEncodeInputKHR ) | VkFlags( FormatFeatureFlagBits::eVideoEncodeDpbKHR )
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR FormatFeatureFlags operator|( FormatFeatureFlagBits bit0,
+ FormatFeatureFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return FormatFeatureFlags( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR FormatFeatureFlags operator&(FormatFeatureFlagBits bit0,
+ FormatFeatureFlagBits bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return FormatFeatureFlags( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR FormatFeatureFlags operator^( FormatFeatureFlagBits bit0,
+ FormatFeatureFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return FormatFeatureFlags( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR FormatFeatureFlags operator~( FormatFeatureFlagBits bits ) VULKAN_HPP_NOEXCEPT
+ {
+ return ~( FormatFeatureFlags( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( FormatFeatureFlags value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & FormatFeatureFlagBits::eSampledImage )
+ result += "SampledImage | ";
+ if ( value & FormatFeatureFlagBits::eStorageImage )
+ result += "StorageImage | ";
+ if ( value & FormatFeatureFlagBits::eStorageImageAtomic )
+ result += "StorageImageAtomic | ";
+ if ( value & FormatFeatureFlagBits::eUniformTexelBuffer )
+ result += "UniformTexelBuffer | ";
+ if ( value & FormatFeatureFlagBits::eStorageTexelBuffer )
+ result += "StorageTexelBuffer | ";
+ if ( value & FormatFeatureFlagBits::eStorageTexelBufferAtomic )
+ result += "StorageTexelBufferAtomic | ";
+ if ( value & FormatFeatureFlagBits::eVertexBuffer )
+ result += "VertexBuffer | ";
+ if ( value & FormatFeatureFlagBits::eColorAttachment )
+ result += "ColorAttachment | ";
+ if ( value & FormatFeatureFlagBits::eColorAttachmentBlend )
+ result += "ColorAttachmentBlend | ";
+ if ( value & FormatFeatureFlagBits::eDepthStencilAttachment )
+ result += "DepthStencilAttachment | ";
+ if ( value & FormatFeatureFlagBits::eBlitSrc )
+ result += "BlitSrc | ";
+ if ( value & FormatFeatureFlagBits::eBlitDst )
+ result += "BlitDst | ";
+ if ( value & FormatFeatureFlagBits::eSampledImageFilterLinear )
+ result += "SampledImageFilterLinear | ";
+ if ( value & FormatFeatureFlagBits::eTransferSrc )
+ result += "TransferSrc | ";
+ if ( value & FormatFeatureFlagBits::eTransferDst )
+ result += "TransferDst | ";
+ if ( value & FormatFeatureFlagBits::eMidpointChromaSamples )
+ result += "MidpointChromaSamples | ";
+ if ( value & FormatFeatureFlagBits::eSampledImageYcbcrConversionLinearFilter )
+ result += "SampledImageYcbcrConversionLinearFilter | ";
+ if ( value & FormatFeatureFlagBits::eSampledImageYcbcrConversionSeparateReconstructionFilter )
+ result += "SampledImageYcbcrConversionSeparateReconstructionFilter | ";
+ if ( value & FormatFeatureFlagBits::eSampledImageYcbcrConversionChromaReconstructionExplicit )
+ result += "SampledImageYcbcrConversionChromaReconstructionExplicit | ";
+ if ( value & FormatFeatureFlagBits::eSampledImageYcbcrConversionChromaReconstructionExplicitForceable )
+ result += "SampledImageYcbcrConversionChromaReconstructionExplicitForceable | ";
+ if ( value & FormatFeatureFlagBits::eDisjoint )
+ result += "Disjoint | ";
+ if ( value & FormatFeatureFlagBits::eCositedChromaSamples )
+ result += "CositedChromaSamples | ";
+ if ( value & FormatFeatureFlagBits::eSampledImageFilterMinmax )
+ result += "SampledImageFilterMinmax | ";
+ if ( value & FormatFeatureFlagBits::eSampledImageFilterCubicIMG )
+ result += "SampledImageFilterCubicIMG | ";
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ if ( value & FormatFeatureFlagBits::eVideoDecodeOutputKHR )
+ result += "VideoDecodeOutputKHR | ";
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ if ( value & FormatFeatureFlagBits::eVideoDecodeDpbKHR )
+ result += "VideoDecodeDpbKHR | ";
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ if ( value & FormatFeatureFlagBits::eAccelerationStructureVertexBufferKHR )
+ result += "AccelerationStructureVertexBufferKHR | ";
+ if ( value & FormatFeatureFlagBits::eFragmentDensityMapEXT )
+ result += "FragmentDensityMapEXT | ";
+ if ( value & FormatFeatureFlagBits::eFragmentShadingRateAttachmentKHR )
+ result += "FragmentShadingRateAttachmentKHR | ";
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ if ( value & FormatFeatureFlagBits::eVideoEncodeInputKHR )
+ result += "VideoEncodeInputKHR | ";
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ if ( value & FormatFeatureFlagBits::eVideoEncodeDpbKHR )
+ result += "VideoEncodeDpbKHR | ";
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using ImageCreateFlags = Flags<ImageCreateFlagBits>;
+
+ template <>
+ struct FlagTraits<ImageCreateFlagBits>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( ImageCreateFlagBits::eSparseBinding ) | VkFlags( ImageCreateFlagBits::eSparseResidency ) |
+ VkFlags( ImageCreateFlagBits::eSparseAliased ) | VkFlags( ImageCreateFlagBits::eMutableFormat ) |
+ VkFlags( ImageCreateFlagBits::eCubeCompatible ) | VkFlags( ImageCreateFlagBits::eAlias ) |
+ VkFlags( ImageCreateFlagBits::eSplitInstanceBindRegions ) |
+ VkFlags( ImageCreateFlagBits::e2DArrayCompatible ) |
+ VkFlags( ImageCreateFlagBits::eBlockTexelViewCompatible ) |
+ VkFlags( ImageCreateFlagBits::eExtendedUsage ) | VkFlags( ImageCreateFlagBits::eProtected ) |
+ VkFlags( ImageCreateFlagBits::eDisjoint ) | VkFlags( ImageCreateFlagBits::eCornerSampledNV ) |
+ VkFlags( ImageCreateFlagBits::eSampleLocationsCompatibleDepthEXT ) |
+ VkFlags( ImageCreateFlagBits::eSubsampledEXT )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ImageCreateFlags operator|( ImageCreateFlagBits bit0,
+ ImageCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return ImageCreateFlags( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ImageCreateFlags operator&(ImageCreateFlagBits bit0,
+ ImageCreateFlagBits bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return ImageCreateFlags( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ImageCreateFlags operator^( ImageCreateFlagBits bit0,
+ ImageCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return ImageCreateFlags( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ImageCreateFlags operator~( ImageCreateFlagBits bits ) VULKAN_HPP_NOEXCEPT
+ {
+ return ~( ImageCreateFlags( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( ImageCreateFlags value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & ImageCreateFlagBits::eSparseBinding )
+ result += "SparseBinding | ";
+ if ( value & ImageCreateFlagBits::eSparseResidency )
+ result += "SparseResidency | ";
+ if ( value & ImageCreateFlagBits::eSparseAliased )
+ result += "SparseAliased | ";
+ if ( value & ImageCreateFlagBits::eMutableFormat )
+ result += "MutableFormat | ";
+ if ( value & ImageCreateFlagBits::eCubeCompatible )
+ result += "CubeCompatible | ";
+ if ( value & ImageCreateFlagBits::eAlias )
+ result += "Alias | ";
+ if ( value & ImageCreateFlagBits::eSplitInstanceBindRegions )
+ result += "SplitInstanceBindRegions | ";
+ if ( value & ImageCreateFlagBits::e2DArrayCompatible )
+ result += "2DArrayCompatible | ";
+ if ( value & ImageCreateFlagBits::eBlockTexelViewCompatible )
+ result += "BlockTexelViewCompatible | ";
+ if ( value & ImageCreateFlagBits::eExtendedUsage )
+ result += "ExtendedUsage | ";
+ if ( value & ImageCreateFlagBits::eProtected )
+ result += "Protected | ";
+ if ( value & ImageCreateFlagBits::eDisjoint )
+ result += "Disjoint | ";
+ if ( value & ImageCreateFlagBits::eCornerSampledNV )
+ result += "CornerSampledNV | ";
+ if ( value & ImageCreateFlagBits::eSampleLocationsCompatibleDepthEXT )
+ result += "SampleLocationsCompatibleDepthEXT | ";
+ if ( value & ImageCreateFlagBits::eSubsampledEXT )
+ result += "SubsampledEXT | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using ImageUsageFlags = Flags<ImageUsageFlagBits>;
+
+ template <>
+ struct FlagTraits<ImageUsageFlagBits>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( ImageUsageFlagBits::eTransferSrc ) | VkFlags( ImageUsageFlagBits::eTransferDst ) |
+ VkFlags( ImageUsageFlagBits::eSampled ) | VkFlags( ImageUsageFlagBits::eStorage ) |
+ VkFlags( ImageUsageFlagBits::eColorAttachment ) |
+ VkFlags( ImageUsageFlagBits::eDepthStencilAttachment ) |
+ VkFlags( ImageUsageFlagBits::eTransientAttachment ) | VkFlags( ImageUsageFlagBits::eInputAttachment )
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ | VkFlags( ImageUsageFlagBits::eVideoDecodeDstKHR ) |
+ VkFlags( ImageUsageFlagBits::eVideoDecodeSrcKHR ) | VkFlags( ImageUsageFlagBits::eVideoDecodeDpbKHR )
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ | VkFlags( ImageUsageFlagBits::eFragmentDensityMapEXT ) |
+ VkFlags( ImageUsageFlagBits::eFragmentShadingRateAttachmentKHR )
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ | VkFlags( ImageUsageFlagBits::eVideoEncodeDstKHR ) |
+ VkFlags( ImageUsageFlagBits::eVideoEncodeSrcKHR ) | VkFlags( ImageUsageFlagBits::eVideoEncodeDpbKHR )
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ImageUsageFlags operator|( ImageUsageFlagBits bit0,
+ ImageUsageFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return ImageUsageFlags( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ImageUsageFlags operator&(ImageUsageFlagBits bit0,
+ ImageUsageFlagBits bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return ImageUsageFlags( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ImageUsageFlags operator^( ImageUsageFlagBits bit0,
+ ImageUsageFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return ImageUsageFlags( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ImageUsageFlags operator~( ImageUsageFlagBits bits ) VULKAN_HPP_NOEXCEPT
+ {
+ return ~( ImageUsageFlags( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( ImageUsageFlags value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & ImageUsageFlagBits::eTransferSrc )
+ result += "TransferSrc | ";
+ if ( value & ImageUsageFlagBits::eTransferDst )
+ result += "TransferDst | ";
+ if ( value & ImageUsageFlagBits::eSampled )
+ result += "Sampled | ";
+ if ( value & ImageUsageFlagBits::eStorage )
+ result += "Storage | ";
+ if ( value & ImageUsageFlagBits::eColorAttachment )
+ result += "ColorAttachment | ";
+ if ( value & ImageUsageFlagBits::eDepthStencilAttachment )
+ result += "DepthStencilAttachment | ";
+ if ( value & ImageUsageFlagBits::eTransientAttachment )
+ result += "TransientAttachment | ";
+ if ( value & ImageUsageFlagBits::eInputAttachment )
+ result += "InputAttachment | ";
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ if ( value & ImageUsageFlagBits::eVideoDecodeDstKHR )
+ result += "VideoDecodeDstKHR | ";
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ if ( value & ImageUsageFlagBits::eVideoDecodeSrcKHR )
+ result += "VideoDecodeSrcKHR | ";
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ if ( value & ImageUsageFlagBits::eVideoDecodeDpbKHR )
+ result += "VideoDecodeDpbKHR | ";
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ if ( value & ImageUsageFlagBits::eFragmentDensityMapEXT )
+ result += "FragmentDensityMapEXT | ";
+ if ( value & ImageUsageFlagBits::eFragmentShadingRateAttachmentKHR )
+ result += "FragmentShadingRateAttachmentKHR | ";
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ if ( value & ImageUsageFlagBits::eVideoEncodeDstKHR )
+ result += "VideoEncodeDstKHR | ";
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ if ( value & ImageUsageFlagBits::eVideoEncodeSrcKHR )
+ result += "VideoEncodeSrcKHR | ";
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ if ( value & ImageUsageFlagBits::eVideoEncodeDpbKHR )
+ result += "VideoEncodeDpbKHR | ";
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using InstanceCreateFlags = Flags<InstanceCreateFlagBits>;
+
+ VULKAN_HPP_INLINE std::string to_string( InstanceCreateFlags )
+ {
+ return "{}";
+ }
+
+ using MemoryHeapFlags = Flags<MemoryHeapFlagBits>;
+
+ template <>
+ struct FlagTraits<MemoryHeapFlagBits>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( MemoryHeapFlagBits::eDeviceLocal ) | VkFlags( MemoryHeapFlagBits::eMultiInstance )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR MemoryHeapFlags operator|( MemoryHeapFlagBits bit0,
+ MemoryHeapFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return MemoryHeapFlags( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR MemoryHeapFlags operator&(MemoryHeapFlagBits bit0,
+ MemoryHeapFlagBits bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return MemoryHeapFlags( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR MemoryHeapFlags operator^( MemoryHeapFlagBits bit0,
+ MemoryHeapFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return MemoryHeapFlags( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR MemoryHeapFlags operator~( MemoryHeapFlagBits bits ) VULKAN_HPP_NOEXCEPT
+ {
+ return ~( MemoryHeapFlags( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( MemoryHeapFlags value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & MemoryHeapFlagBits::eDeviceLocal )
+ result += "DeviceLocal | ";
+ if ( value & MemoryHeapFlagBits::eMultiInstance )
+ result += "MultiInstance | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using MemoryPropertyFlags = Flags<MemoryPropertyFlagBits>;
+
+ template <>
+ struct FlagTraits<MemoryPropertyFlagBits>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( MemoryPropertyFlagBits::eDeviceLocal ) | VkFlags( MemoryPropertyFlagBits::eHostVisible ) |
+ VkFlags( MemoryPropertyFlagBits::eHostCoherent ) | VkFlags( MemoryPropertyFlagBits::eHostCached ) |
+ VkFlags( MemoryPropertyFlagBits::eLazilyAllocated ) | VkFlags( MemoryPropertyFlagBits::eProtected ) |
+ VkFlags( MemoryPropertyFlagBits::eDeviceCoherentAMD ) |
+ VkFlags( MemoryPropertyFlagBits::eDeviceUncachedAMD )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR MemoryPropertyFlags
+ operator|( MemoryPropertyFlagBits bit0, MemoryPropertyFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return MemoryPropertyFlags( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR MemoryPropertyFlags operator&(MemoryPropertyFlagBits bit0,
+ MemoryPropertyFlagBits bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return MemoryPropertyFlags( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR MemoryPropertyFlags
+ operator^( MemoryPropertyFlagBits bit0, MemoryPropertyFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return MemoryPropertyFlags( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR MemoryPropertyFlags operator~( MemoryPropertyFlagBits bits )
+ VULKAN_HPP_NOEXCEPT
+ {
+ return ~( MemoryPropertyFlags( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( MemoryPropertyFlags value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & MemoryPropertyFlagBits::eDeviceLocal )
+ result += "DeviceLocal | ";
+ if ( value & MemoryPropertyFlagBits::eHostVisible )
+ result += "HostVisible | ";
+ if ( value & MemoryPropertyFlagBits::eHostCoherent )
+ result += "HostCoherent | ";
+ if ( value & MemoryPropertyFlagBits::eHostCached )
+ result += "HostCached | ";
+ if ( value & MemoryPropertyFlagBits::eLazilyAllocated )
+ result += "LazilyAllocated | ";
+ if ( value & MemoryPropertyFlagBits::eProtected )
+ result += "Protected | ";
+ if ( value & MemoryPropertyFlagBits::eDeviceCoherentAMD )
+ result += "DeviceCoherentAMD | ";
+ if ( value & MemoryPropertyFlagBits::eDeviceUncachedAMD )
+ result += "DeviceUncachedAMD | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using QueueFlags = Flags<QueueFlagBits>;
+
+ template <>
+ struct FlagTraits<QueueFlagBits>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( QueueFlagBits::eGraphics ) | VkFlags( QueueFlagBits::eCompute ) |
+ VkFlags( QueueFlagBits::eTransfer ) | VkFlags( QueueFlagBits::eSparseBinding ) |
+ VkFlags( QueueFlagBits::eProtected )
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ | VkFlags( QueueFlagBits::eVideoDecodeKHR ) | VkFlags( QueueFlagBits::eVideoEncodeKHR )
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR QueueFlags operator|( QueueFlagBits bit0,
+ QueueFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return QueueFlags( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR QueueFlags operator&(QueueFlagBits bit0, QueueFlagBits bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return QueueFlags( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR QueueFlags operator^( QueueFlagBits bit0,
+ QueueFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return QueueFlags( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR QueueFlags operator~( QueueFlagBits bits ) VULKAN_HPP_NOEXCEPT
+ {
+ return ~( QueueFlags( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( QueueFlags value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & QueueFlagBits::eGraphics )
+ result += "Graphics | ";
+ if ( value & QueueFlagBits::eCompute )
+ result += "Compute | ";
+ if ( value & QueueFlagBits::eTransfer )
+ result += "Transfer | ";
+ if ( value & QueueFlagBits::eSparseBinding )
+ result += "SparseBinding | ";
+ if ( value & QueueFlagBits::eProtected )
+ result += "Protected | ";
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ if ( value & QueueFlagBits::eVideoDecodeKHR )
+ result += "VideoDecodeKHR | ";
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ if ( value & QueueFlagBits::eVideoEncodeKHR )
+ result += "VideoEncodeKHR | ";
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using SampleCountFlags = Flags<SampleCountFlagBits>;
+
+ template <>
+ struct FlagTraits<SampleCountFlagBits>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( SampleCountFlagBits::e1 ) | VkFlags( SampleCountFlagBits::e2 ) |
+ VkFlags( SampleCountFlagBits::e4 ) | VkFlags( SampleCountFlagBits::e8 ) |
+ VkFlags( SampleCountFlagBits::e16 ) | VkFlags( SampleCountFlagBits::e32 ) |
+ VkFlags( SampleCountFlagBits::e64 )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SampleCountFlags operator|( SampleCountFlagBits bit0,
+ SampleCountFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return SampleCountFlags( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SampleCountFlags operator&(SampleCountFlagBits bit0,
+ SampleCountFlagBits bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return SampleCountFlags( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SampleCountFlags operator^( SampleCountFlagBits bit0,
+ SampleCountFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return SampleCountFlags( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SampleCountFlags operator~( SampleCountFlagBits bits ) VULKAN_HPP_NOEXCEPT
+ {
+ return ~( SampleCountFlags( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( SampleCountFlags value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & SampleCountFlagBits::e1 )
+ result += "1 | ";
+ if ( value & SampleCountFlagBits::e2 )
+ result += "2 | ";
+ if ( value & SampleCountFlagBits::e4 )
+ result += "4 | ";
+ if ( value & SampleCountFlagBits::e8 )
+ result += "8 | ";
+ if ( value & SampleCountFlagBits::e16 )
+ result += "16 | ";
+ if ( value & SampleCountFlagBits::e32 )
+ result += "32 | ";
+ if ( value & SampleCountFlagBits::e64 )
+ result += "64 | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using DeviceCreateFlags = Flags<DeviceCreateFlagBits>;
+
+ VULKAN_HPP_INLINE std::string to_string( DeviceCreateFlags )
+ {
+ return "{}";
+ }
+
+ using DeviceQueueCreateFlags = Flags<DeviceQueueCreateFlagBits>;
+
+ template <>
+ struct FlagTraits<DeviceQueueCreateFlagBits>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( DeviceQueueCreateFlagBits::eProtected )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DeviceQueueCreateFlags
+ operator|( DeviceQueueCreateFlagBits bit0, DeviceQueueCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return DeviceQueueCreateFlags( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DeviceQueueCreateFlags
+ operator&(DeviceQueueCreateFlagBits bit0, DeviceQueueCreateFlagBits bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return DeviceQueueCreateFlags( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DeviceQueueCreateFlags
+ operator^( DeviceQueueCreateFlagBits bit0, DeviceQueueCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return DeviceQueueCreateFlags( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DeviceQueueCreateFlags operator~( DeviceQueueCreateFlagBits bits )
+ VULKAN_HPP_NOEXCEPT
+ {
+ return ~( DeviceQueueCreateFlags( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( DeviceQueueCreateFlags value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & DeviceQueueCreateFlagBits::eProtected )
+ result += "Protected | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using PipelineStageFlags = Flags<PipelineStageFlagBits>;
+
+ template <>
+ struct FlagTraits<PipelineStageFlagBits>
+ {
+ enum : VkFlags
+ {
+ allFlags =
+ VkFlags( PipelineStageFlagBits::eTopOfPipe ) | VkFlags( PipelineStageFlagBits::eDrawIndirect ) |
+ VkFlags( PipelineStageFlagBits::eVertexInput ) | VkFlags( PipelineStageFlagBits::eVertexShader ) |
+ VkFlags( PipelineStageFlagBits::eTessellationControlShader ) |
+ VkFlags( PipelineStageFlagBits::eTessellationEvaluationShader ) |
+ VkFlags( PipelineStageFlagBits::eGeometryShader ) | VkFlags( PipelineStageFlagBits::eFragmentShader ) |
+ VkFlags( PipelineStageFlagBits::eEarlyFragmentTests ) | VkFlags( PipelineStageFlagBits::eLateFragmentTests ) |
+ VkFlags( PipelineStageFlagBits::eColorAttachmentOutput ) | VkFlags( PipelineStageFlagBits::eComputeShader ) |
+ VkFlags( PipelineStageFlagBits::eTransfer ) | VkFlags( PipelineStageFlagBits::eBottomOfPipe ) |
+ VkFlags( PipelineStageFlagBits::eHost ) | VkFlags( PipelineStageFlagBits::eAllGraphics ) |
+ VkFlags( PipelineStageFlagBits::eAllCommands ) | VkFlags( PipelineStageFlagBits::eTransformFeedbackEXT ) |
+ VkFlags( PipelineStageFlagBits::eConditionalRenderingEXT ) |
+ VkFlags( PipelineStageFlagBits::eAccelerationStructureBuildKHR ) |
+ VkFlags( PipelineStageFlagBits::eRayTracingShaderKHR ) | VkFlags( PipelineStageFlagBits::eTaskShaderNV ) |
+ VkFlags( PipelineStageFlagBits::eMeshShaderNV ) | VkFlags( PipelineStageFlagBits::eFragmentDensityProcessEXT ) |
+ VkFlags( PipelineStageFlagBits::eFragmentShadingRateAttachmentKHR ) |
+ VkFlags( PipelineStageFlagBits::eCommandPreprocessNV ) | VkFlags( PipelineStageFlagBits::eNoneKHR )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineStageFlags operator|( PipelineStageFlagBits bit0,
+ PipelineStageFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return PipelineStageFlags( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineStageFlags operator&(PipelineStageFlagBits bit0,
+ PipelineStageFlagBits bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return PipelineStageFlags( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineStageFlags operator^( PipelineStageFlagBits bit0,
+ PipelineStageFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return PipelineStageFlags( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineStageFlags operator~( PipelineStageFlagBits bits ) VULKAN_HPP_NOEXCEPT
+ {
+ return ~( PipelineStageFlags( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( PipelineStageFlags value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & PipelineStageFlagBits::eTopOfPipe )
+ result += "TopOfPipe | ";
+ if ( value & PipelineStageFlagBits::eDrawIndirect )
+ result += "DrawIndirect | ";
+ if ( value & PipelineStageFlagBits::eVertexInput )
+ result += "VertexInput | ";
+ if ( value & PipelineStageFlagBits::eVertexShader )
+ result += "VertexShader | ";
+ if ( value & PipelineStageFlagBits::eTessellationControlShader )
+ result += "TessellationControlShader | ";
+ if ( value & PipelineStageFlagBits::eTessellationEvaluationShader )
+ result += "TessellationEvaluationShader | ";
+ if ( value & PipelineStageFlagBits::eGeometryShader )
+ result += "GeometryShader | ";
+ if ( value & PipelineStageFlagBits::eFragmentShader )
+ result += "FragmentShader | ";
+ if ( value & PipelineStageFlagBits::eEarlyFragmentTests )
+ result += "EarlyFragmentTests | ";
+ if ( value & PipelineStageFlagBits::eLateFragmentTests )
+ result += "LateFragmentTests | ";
+ if ( value & PipelineStageFlagBits::eColorAttachmentOutput )
+ result += "ColorAttachmentOutput | ";
+ if ( value & PipelineStageFlagBits::eComputeShader )
+ result += "ComputeShader | ";
+ if ( value & PipelineStageFlagBits::eTransfer )
+ result += "Transfer | ";
+ if ( value & PipelineStageFlagBits::eBottomOfPipe )
+ result += "BottomOfPipe | ";
+ if ( value & PipelineStageFlagBits::eHost )
+ result += "Host | ";
+ if ( value & PipelineStageFlagBits::eAllGraphics )
+ result += "AllGraphics | ";
+ if ( value & PipelineStageFlagBits::eAllCommands )
+ result += "AllCommands | ";
+ if ( value & PipelineStageFlagBits::eTransformFeedbackEXT )
+ result += "TransformFeedbackEXT | ";
+ if ( value & PipelineStageFlagBits::eConditionalRenderingEXT )
+ result += "ConditionalRenderingEXT | ";
+ if ( value & PipelineStageFlagBits::eAccelerationStructureBuildKHR )
+ result += "AccelerationStructureBuildKHR | ";
+ if ( value & PipelineStageFlagBits::eRayTracingShaderKHR )
+ result += "RayTracingShaderKHR | ";
+ if ( value & PipelineStageFlagBits::eTaskShaderNV )
+ result += "TaskShaderNV | ";
+ if ( value & PipelineStageFlagBits::eMeshShaderNV )
+ result += "MeshShaderNV | ";
+ if ( value & PipelineStageFlagBits::eFragmentDensityProcessEXT )
+ result += "FragmentDensityProcessEXT | ";
+ if ( value & PipelineStageFlagBits::eFragmentShadingRateAttachmentKHR )
+ result += "FragmentShadingRateAttachmentKHR | ";
+ if ( value & PipelineStageFlagBits::eCommandPreprocessNV )
+ result += "CommandPreprocessNV | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using MemoryMapFlags = Flags<MemoryMapFlagBits>;
+
+ VULKAN_HPP_INLINE std::string to_string( MemoryMapFlags )
+ {
+ return "{}";
+ }
+
+ using ImageAspectFlags = Flags<ImageAspectFlagBits>;
+
+ template <>
+ struct FlagTraits<ImageAspectFlagBits>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( ImageAspectFlagBits::eColor ) | VkFlags( ImageAspectFlagBits::eDepth ) |
+ VkFlags( ImageAspectFlagBits::eStencil ) | VkFlags( ImageAspectFlagBits::eMetadata ) |
+ VkFlags( ImageAspectFlagBits::ePlane0 ) | VkFlags( ImageAspectFlagBits::ePlane1 ) |
+ VkFlags( ImageAspectFlagBits::ePlane2 ) | VkFlags( ImageAspectFlagBits::eMemoryPlane0EXT ) |
+ VkFlags( ImageAspectFlagBits::eMemoryPlane1EXT ) | VkFlags( ImageAspectFlagBits::eMemoryPlane2EXT ) |
+ VkFlags( ImageAspectFlagBits::eMemoryPlane3EXT )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ImageAspectFlags operator|( ImageAspectFlagBits bit0,
+ ImageAspectFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return ImageAspectFlags( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ImageAspectFlags operator&(ImageAspectFlagBits bit0,
+ ImageAspectFlagBits bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return ImageAspectFlags( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ImageAspectFlags operator^( ImageAspectFlagBits bit0,
+ ImageAspectFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return ImageAspectFlags( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ImageAspectFlags operator~( ImageAspectFlagBits bits ) VULKAN_HPP_NOEXCEPT
+ {
+ return ~( ImageAspectFlags( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( ImageAspectFlags value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & ImageAspectFlagBits::eColor )
+ result += "Color | ";
+ if ( value & ImageAspectFlagBits::eDepth )
+ result += "Depth | ";
+ if ( value & ImageAspectFlagBits::eStencil )
+ result += "Stencil | ";
+ if ( value & ImageAspectFlagBits::eMetadata )
+ result += "Metadata | ";
+ if ( value & ImageAspectFlagBits::ePlane0 )
+ result += "Plane0 | ";
+ if ( value & ImageAspectFlagBits::ePlane1 )
+ result += "Plane1 | ";
+ if ( value & ImageAspectFlagBits::ePlane2 )
+ result += "Plane2 | ";
+ if ( value & ImageAspectFlagBits::eMemoryPlane0EXT )
+ result += "MemoryPlane0EXT | ";
+ if ( value & ImageAspectFlagBits::eMemoryPlane1EXT )
+ result += "MemoryPlane1EXT | ";
+ if ( value & ImageAspectFlagBits::eMemoryPlane2EXT )
+ result += "MemoryPlane2EXT | ";
+ if ( value & ImageAspectFlagBits::eMemoryPlane3EXT )
+ result += "MemoryPlane3EXT | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using SparseImageFormatFlags = Flags<SparseImageFormatFlagBits>;
+
+ template <>
+ struct FlagTraits<SparseImageFormatFlagBits>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( SparseImageFormatFlagBits::eSingleMiptail ) |
+ VkFlags( SparseImageFormatFlagBits::eAlignedMipSize ) |
+ VkFlags( SparseImageFormatFlagBits::eNonstandardBlockSize )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SparseImageFormatFlags
+ operator|( SparseImageFormatFlagBits bit0, SparseImageFormatFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return SparseImageFormatFlags( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SparseImageFormatFlags
+ operator&(SparseImageFormatFlagBits bit0, SparseImageFormatFlagBits bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return SparseImageFormatFlags( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SparseImageFormatFlags
+ operator^( SparseImageFormatFlagBits bit0, SparseImageFormatFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return SparseImageFormatFlags( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SparseImageFormatFlags operator~( SparseImageFormatFlagBits bits )
+ VULKAN_HPP_NOEXCEPT
+ {
+ return ~( SparseImageFormatFlags( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( SparseImageFormatFlags value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & SparseImageFormatFlagBits::eSingleMiptail )
+ result += "SingleMiptail | ";
+ if ( value & SparseImageFormatFlagBits::eAlignedMipSize )
+ result += "AlignedMipSize | ";
+ if ( value & SparseImageFormatFlagBits::eNonstandardBlockSize )
+ result += "NonstandardBlockSize | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using SparseMemoryBindFlags = Flags<SparseMemoryBindFlagBits>;
+
+ template <>
+ struct FlagTraits<SparseMemoryBindFlagBits>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( SparseMemoryBindFlagBits::eMetadata )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SparseMemoryBindFlags
+ operator|( SparseMemoryBindFlagBits bit0, SparseMemoryBindFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return SparseMemoryBindFlags( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SparseMemoryBindFlags
+ operator&(SparseMemoryBindFlagBits bit0, SparseMemoryBindFlagBits bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return SparseMemoryBindFlags( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SparseMemoryBindFlags
+ operator^( SparseMemoryBindFlagBits bit0, SparseMemoryBindFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return SparseMemoryBindFlags( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SparseMemoryBindFlags operator~( SparseMemoryBindFlagBits bits )
+ VULKAN_HPP_NOEXCEPT
+ {
+ return ~( SparseMemoryBindFlags( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( SparseMemoryBindFlags value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & SparseMemoryBindFlagBits::eMetadata )
+ result += "Metadata | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using FenceCreateFlags = Flags<FenceCreateFlagBits>;
+
+ template <>
+ struct FlagTraits<FenceCreateFlagBits>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( FenceCreateFlagBits::eSignaled )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR FenceCreateFlags operator|( FenceCreateFlagBits bit0,
+ FenceCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return FenceCreateFlags( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR FenceCreateFlags operator&(FenceCreateFlagBits bit0,
+ FenceCreateFlagBits bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return FenceCreateFlags( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR FenceCreateFlags operator^( FenceCreateFlagBits bit0,
+ FenceCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return FenceCreateFlags( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR FenceCreateFlags operator~( FenceCreateFlagBits bits ) VULKAN_HPP_NOEXCEPT
+ {
+ return ~( FenceCreateFlags( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( FenceCreateFlags value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & FenceCreateFlagBits::eSignaled )
+ result += "Signaled | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using SemaphoreCreateFlags = Flags<SemaphoreCreateFlagBits>;
+
+ VULKAN_HPP_INLINE std::string to_string( SemaphoreCreateFlags )
+ {
+ return "{}";
+ }
+
+ using EventCreateFlags = Flags<EventCreateFlagBits>;
+
+ template <>
+ struct FlagTraits<EventCreateFlagBits>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( EventCreateFlagBits::eDeviceOnlyKHR )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR EventCreateFlags operator|( EventCreateFlagBits bit0,
+ EventCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return EventCreateFlags( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR EventCreateFlags operator&(EventCreateFlagBits bit0,
+ EventCreateFlagBits bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return EventCreateFlags( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR EventCreateFlags operator^( EventCreateFlagBits bit0,
+ EventCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return EventCreateFlags( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR EventCreateFlags operator~( EventCreateFlagBits bits ) VULKAN_HPP_NOEXCEPT
+ {
+ return ~( EventCreateFlags( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( EventCreateFlags value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & EventCreateFlagBits::eDeviceOnlyKHR )
+ result += "DeviceOnlyKHR | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using QueryPipelineStatisticFlags = Flags<QueryPipelineStatisticFlagBits>;
+
+ template <>
+ struct FlagTraits<QueryPipelineStatisticFlagBits>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( QueryPipelineStatisticFlagBits::eInputAssemblyVertices ) |
+ VkFlags( QueryPipelineStatisticFlagBits::eInputAssemblyPrimitives ) |
+ VkFlags( QueryPipelineStatisticFlagBits::eVertexShaderInvocations ) |
+ VkFlags( QueryPipelineStatisticFlagBits::eGeometryShaderInvocations ) |
+ VkFlags( QueryPipelineStatisticFlagBits::eGeometryShaderPrimitives ) |
+ VkFlags( QueryPipelineStatisticFlagBits::eClippingInvocations ) |
+ VkFlags( QueryPipelineStatisticFlagBits::eClippingPrimitives ) |
+ VkFlags( QueryPipelineStatisticFlagBits::eFragmentShaderInvocations ) |
+ VkFlags( QueryPipelineStatisticFlagBits::eTessellationControlShaderPatches ) |
+ VkFlags( QueryPipelineStatisticFlagBits::eTessellationEvaluationShaderInvocations ) |
+ VkFlags( QueryPipelineStatisticFlagBits::eComputeShaderInvocations )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR QueryPipelineStatisticFlags
+ operator|( QueryPipelineStatisticFlagBits bit0, QueryPipelineStatisticFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return QueryPipelineStatisticFlags( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR QueryPipelineStatisticFlags
+ operator&(QueryPipelineStatisticFlagBits bit0, QueryPipelineStatisticFlagBits bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return QueryPipelineStatisticFlags( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR QueryPipelineStatisticFlags
+ operator^( QueryPipelineStatisticFlagBits bit0, QueryPipelineStatisticFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return QueryPipelineStatisticFlags( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR QueryPipelineStatisticFlags operator~( QueryPipelineStatisticFlagBits bits )
+ VULKAN_HPP_NOEXCEPT
+ {
+ return ~( QueryPipelineStatisticFlags( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( QueryPipelineStatisticFlags value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & QueryPipelineStatisticFlagBits::eInputAssemblyVertices )
+ result += "InputAssemblyVertices | ";
+ if ( value & QueryPipelineStatisticFlagBits::eInputAssemblyPrimitives )
+ result += "InputAssemblyPrimitives | ";
+ if ( value & QueryPipelineStatisticFlagBits::eVertexShaderInvocations )
+ result += "VertexShaderInvocations | ";
+ if ( value & QueryPipelineStatisticFlagBits::eGeometryShaderInvocations )
+ result += "GeometryShaderInvocations | ";
+ if ( value & QueryPipelineStatisticFlagBits::eGeometryShaderPrimitives )
+ result += "GeometryShaderPrimitives | ";
+ if ( value & QueryPipelineStatisticFlagBits::eClippingInvocations )
+ result += "ClippingInvocations | ";
+ if ( value & QueryPipelineStatisticFlagBits::eClippingPrimitives )
+ result += "ClippingPrimitives | ";
+ if ( value & QueryPipelineStatisticFlagBits::eFragmentShaderInvocations )
+ result += "FragmentShaderInvocations | ";
+ if ( value & QueryPipelineStatisticFlagBits::eTessellationControlShaderPatches )
+ result += "TessellationControlShaderPatches | ";
+ if ( value & QueryPipelineStatisticFlagBits::eTessellationEvaluationShaderInvocations )
+ result += "TessellationEvaluationShaderInvocations | ";
+ if ( value & QueryPipelineStatisticFlagBits::eComputeShaderInvocations )
+ result += "ComputeShaderInvocations | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using QueryPoolCreateFlags = Flags<QueryPoolCreateFlagBits>;
+
+ VULKAN_HPP_INLINE std::string to_string( QueryPoolCreateFlags )
+ {
+ return "{}";
+ }
+
+ using QueryResultFlags = Flags<QueryResultFlagBits>;
+
+ template <>
+ struct FlagTraits<QueryResultFlagBits>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( QueryResultFlagBits::e64 ) | VkFlags( QueryResultFlagBits::eWait ) |
+ VkFlags( QueryResultFlagBits::eWithAvailability ) | VkFlags( QueryResultFlagBits::ePartial )
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ | VkFlags( QueryResultFlagBits::eWithStatusKHR )
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR QueryResultFlags operator|( QueryResultFlagBits bit0,
+ QueryResultFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return QueryResultFlags( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR QueryResultFlags operator&(QueryResultFlagBits bit0,
+ QueryResultFlagBits bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return QueryResultFlags( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR QueryResultFlags operator^( QueryResultFlagBits bit0,
+ QueryResultFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return QueryResultFlags( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR QueryResultFlags operator~( QueryResultFlagBits bits ) VULKAN_HPP_NOEXCEPT
+ {
+ return ~( QueryResultFlags( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( QueryResultFlags value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & QueryResultFlagBits::e64 )
+ result += "64 | ";
+ if ( value & QueryResultFlagBits::eWait )
+ result += "Wait | ";
+ if ( value & QueryResultFlagBits::eWithAvailability )
+ result += "WithAvailability | ";
+ if ( value & QueryResultFlagBits::ePartial )
+ result += "Partial | ";
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ if ( value & QueryResultFlagBits::eWithStatusKHR )
+ result += "WithStatusKHR | ";
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using BufferCreateFlags = Flags<BufferCreateFlagBits>;
+
+ template <>
+ struct FlagTraits<BufferCreateFlagBits>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( BufferCreateFlagBits::eSparseBinding ) | VkFlags( BufferCreateFlagBits::eSparseResidency ) |
+ VkFlags( BufferCreateFlagBits::eSparseAliased ) | VkFlags( BufferCreateFlagBits::eProtected ) |
+ VkFlags( BufferCreateFlagBits::eDeviceAddressCaptureReplay )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR BufferCreateFlags operator|( BufferCreateFlagBits bit0,
+ BufferCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return BufferCreateFlags( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR BufferCreateFlags operator&(BufferCreateFlagBits bit0,
+ BufferCreateFlagBits bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return BufferCreateFlags( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR BufferCreateFlags operator^( BufferCreateFlagBits bit0,
+ BufferCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return BufferCreateFlags( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR BufferCreateFlags operator~( BufferCreateFlagBits bits ) VULKAN_HPP_NOEXCEPT
+ {
+ return ~( BufferCreateFlags( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( BufferCreateFlags value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & BufferCreateFlagBits::eSparseBinding )
+ result += "SparseBinding | ";
+ if ( value & BufferCreateFlagBits::eSparseResidency )
+ result += "SparseResidency | ";
+ if ( value & BufferCreateFlagBits::eSparseAliased )
+ result += "SparseAliased | ";
+ if ( value & BufferCreateFlagBits::eProtected )
+ result += "Protected | ";
+ if ( value & BufferCreateFlagBits::eDeviceAddressCaptureReplay )
+ result += "DeviceAddressCaptureReplay | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using BufferUsageFlags = Flags<BufferUsageFlagBits>;
+
+ template <>
+ struct FlagTraits<BufferUsageFlagBits>
+ {
+ enum : VkFlags
+ {
+ allFlags =
+ VkFlags( BufferUsageFlagBits::eTransferSrc ) | VkFlags( BufferUsageFlagBits::eTransferDst ) |
+ VkFlags( BufferUsageFlagBits::eUniformTexelBuffer ) | VkFlags( BufferUsageFlagBits::eStorageTexelBuffer ) |
+ VkFlags( BufferUsageFlagBits::eUniformBuffer ) | VkFlags( BufferUsageFlagBits::eStorageBuffer ) |
+ VkFlags( BufferUsageFlagBits::eIndexBuffer ) | VkFlags( BufferUsageFlagBits::eVertexBuffer ) |
+ VkFlags( BufferUsageFlagBits::eIndirectBuffer ) | VkFlags( BufferUsageFlagBits::eShaderDeviceAddress )
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ | VkFlags( BufferUsageFlagBits::eVideoDecodeSrcKHR ) | VkFlags( BufferUsageFlagBits::eVideoDecodeDstKHR )
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ | VkFlags( BufferUsageFlagBits::eTransformFeedbackBufferEXT ) |
+ VkFlags( BufferUsageFlagBits::eTransformFeedbackCounterBufferEXT ) |
+ VkFlags( BufferUsageFlagBits::eConditionalRenderingEXT ) |
+ VkFlags( BufferUsageFlagBits::eAccelerationStructureBuildInputReadOnlyKHR ) |
+ VkFlags( BufferUsageFlagBits::eAccelerationStructureStorageKHR ) |
+ VkFlags( BufferUsageFlagBits::eShaderBindingTableKHR )
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ | VkFlags( BufferUsageFlagBits::eVideoEncodeDstKHR ) | VkFlags( BufferUsageFlagBits::eVideoEncodeSrcKHR )
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR BufferUsageFlags operator|( BufferUsageFlagBits bit0,
+ BufferUsageFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return BufferUsageFlags( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR BufferUsageFlags operator&(BufferUsageFlagBits bit0,
+ BufferUsageFlagBits bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return BufferUsageFlags( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR BufferUsageFlags operator^( BufferUsageFlagBits bit0,
+ BufferUsageFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return BufferUsageFlags( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR BufferUsageFlags operator~( BufferUsageFlagBits bits ) VULKAN_HPP_NOEXCEPT
+ {
+ return ~( BufferUsageFlags( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( BufferUsageFlags value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & BufferUsageFlagBits::eTransferSrc )
+ result += "TransferSrc | ";
+ if ( value & BufferUsageFlagBits::eTransferDst )
+ result += "TransferDst | ";
+ if ( value & BufferUsageFlagBits::eUniformTexelBuffer )
+ result += "UniformTexelBuffer | ";
+ if ( value & BufferUsageFlagBits::eStorageTexelBuffer )
+ result += "StorageTexelBuffer | ";
+ if ( value & BufferUsageFlagBits::eUniformBuffer )
+ result += "UniformBuffer | ";
+ if ( value & BufferUsageFlagBits::eStorageBuffer )
+ result += "StorageBuffer | ";
+ if ( value & BufferUsageFlagBits::eIndexBuffer )
+ result += "IndexBuffer | ";
+ if ( value & BufferUsageFlagBits::eVertexBuffer )
+ result += "VertexBuffer | ";
+ if ( value & BufferUsageFlagBits::eIndirectBuffer )
+ result += "IndirectBuffer | ";
+ if ( value & BufferUsageFlagBits::eShaderDeviceAddress )
+ result += "ShaderDeviceAddress | ";
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ if ( value & BufferUsageFlagBits::eVideoDecodeSrcKHR )
+ result += "VideoDecodeSrcKHR | ";
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ if ( value & BufferUsageFlagBits::eVideoDecodeDstKHR )
+ result += "VideoDecodeDstKHR | ";
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ if ( value & BufferUsageFlagBits::eTransformFeedbackBufferEXT )
+ result += "TransformFeedbackBufferEXT | ";
+ if ( value & BufferUsageFlagBits::eTransformFeedbackCounterBufferEXT )
+ result += "TransformFeedbackCounterBufferEXT | ";
+ if ( value & BufferUsageFlagBits::eConditionalRenderingEXT )
+ result += "ConditionalRenderingEXT | ";
+ if ( value & BufferUsageFlagBits::eAccelerationStructureBuildInputReadOnlyKHR )
+ result += "AccelerationStructureBuildInputReadOnlyKHR | ";
+ if ( value & BufferUsageFlagBits::eAccelerationStructureStorageKHR )
+ result += "AccelerationStructureStorageKHR | ";
+ if ( value & BufferUsageFlagBits::eShaderBindingTableKHR )
+ result += "ShaderBindingTableKHR | ";
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ if ( value & BufferUsageFlagBits::eVideoEncodeDstKHR )
+ result += "VideoEncodeDstKHR | ";
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ if ( value & BufferUsageFlagBits::eVideoEncodeSrcKHR )
+ result += "VideoEncodeSrcKHR | ";
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using BufferViewCreateFlags = Flags<BufferViewCreateFlagBits>;
+
+ VULKAN_HPP_INLINE std::string to_string( BufferViewCreateFlags )
+ {
+ return "{}";
+ }
+
+ using ImageViewCreateFlags = Flags<ImageViewCreateFlagBits>;
+
+ template <>
+ struct FlagTraits<ImageViewCreateFlagBits>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( ImageViewCreateFlagBits::eFragmentDensityMapDynamicEXT ) |
+ VkFlags( ImageViewCreateFlagBits::eFragmentDensityMapDeferredEXT )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ImageViewCreateFlags
+ operator|( ImageViewCreateFlagBits bit0, ImageViewCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return ImageViewCreateFlags( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ImageViewCreateFlags operator&(ImageViewCreateFlagBits bit0,
+ ImageViewCreateFlagBits bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return ImageViewCreateFlags( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ImageViewCreateFlags
+ operator^( ImageViewCreateFlagBits bit0, ImageViewCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return ImageViewCreateFlags( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ImageViewCreateFlags operator~( ImageViewCreateFlagBits bits )
+ VULKAN_HPP_NOEXCEPT
+ {
+ return ~( ImageViewCreateFlags( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( ImageViewCreateFlags value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & ImageViewCreateFlagBits::eFragmentDensityMapDynamicEXT )
+ result += "FragmentDensityMapDynamicEXT | ";
+ if ( value & ImageViewCreateFlagBits::eFragmentDensityMapDeferredEXT )
+ result += "FragmentDensityMapDeferredEXT | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using ShaderModuleCreateFlags = Flags<ShaderModuleCreateFlagBits>;
+
+ VULKAN_HPP_INLINE std::string to_string( ShaderModuleCreateFlags )
+ {
+ return "{}";
+ }
+
+ using PipelineCacheCreateFlags = Flags<PipelineCacheCreateFlagBits>;
+
+ template <>
+ struct FlagTraits<PipelineCacheCreateFlagBits>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( PipelineCacheCreateFlagBits::eExternallySynchronizedEXT )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineCacheCreateFlags
+ operator|( PipelineCacheCreateFlagBits bit0, PipelineCacheCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return PipelineCacheCreateFlags( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineCacheCreateFlags
+ operator&(PipelineCacheCreateFlagBits bit0, PipelineCacheCreateFlagBits bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return PipelineCacheCreateFlags( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineCacheCreateFlags
+ operator^( PipelineCacheCreateFlagBits bit0, PipelineCacheCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return PipelineCacheCreateFlags( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineCacheCreateFlags operator~( PipelineCacheCreateFlagBits bits )
+ VULKAN_HPP_NOEXCEPT
+ {
+ return ~( PipelineCacheCreateFlags( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( PipelineCacheCreateFlags value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & PipelineCacheCreateFlagBits::eExternallySynchronizedEXT )
+ result += "ExternallySynchronizedEXT | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using ColorComponentFlags = Flags<ColorComponentFlagBits>;
+
+ template <>
+ struct FlagTraits<ColorComponentFlagBits>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( ColorComponentFlagBits::eR ) | VkFlags( ColorComponentFlagBits::eG ) |
+ VkFlags( ColorComponentFlagBits::eB ) | VkFlags( ColorComponentFlagBits::eA )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ColorComponentFlags
+ operator|( ColorComponentFlagBits bit0, ColorComponentFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return ColorComponentFlags( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ColorComponentFlags operator&(ColorComponentFlagBits bit0,
+ ColorComponentFlagBits bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return ColorComponentFlags( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ColorComponentFlags
+ operator^( ColorComponentFlagBits bit0, ColorComponentFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return ColorComponentFlags( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ColorComponentFlags operator~( ColorComponentFlagBits bits )
+ VULKAN_HPP_NOEXCEPT
+ {
+ return ~( ColorComponentFlags( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( ColorComponentFlags value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & ColorComponentFlagBits::eR )
+ result += "R | ";
+ if ( value & ColorComponentFlagBits::eG )
+ result += "G | ";
+ if ( value & ColorComponentFlagBits::eB )
+ result += "B | ";
+ if ( value & ColorComponentFlagBits::eA )
+ result += "A | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using CullModeFlags = Flags<CullModeFlagBits>;
+
+ template <>
+ struct FlagTraits<CullModeFlagBits>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( CullModeFlagBits::eNone ) | VkFlags( CullModeFlagBits::eFront ) |
+ VkFlags( CullModeFlagBits::eBack ) | VkFlags( CullModeFlagBits::eFrontAndBack )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CullModeFlags operator|( CullModeFlagBits bit0,
+ CullModeFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return CullModeFlags( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CullModeFlags operator&(CullModeFlagBits bit0,
+ CullModeFlagBits bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return CullModeFlags( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CullModeFlags operator^( CullModeFlagBits bit0,
+ CullModeFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return CullModeFlags( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CullModeFlags operator~( CullModeFlagBits bits ) VULKAN_HPP_NOEXCEPT
+ {
+ return ~( CullModeFlags( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( CullModeFlags value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & CullModeFlagBits::eFront )
+ result += "Front | ";
+ if ( value & CullModeFlagBits::eBack )
+ result += "Back | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using PipelineColorBlendStateCreateFlags = Flags<PipelineColorBlendStateCreateFlagBits>;
+
+ VULKAN_HPP_INLINE std::string to_string( PipelineColorBlendStateCreateFlags )
+ {
+ return "{}";
+ }
+
+ using PipelineCreateFlags = Flags<PipelineCreateFlagBits>;
+
+ template <>
+ struct FlagTraits<PipelineCreateFlagBits>
+ {
+ enum : VkFlags
+ {
+ allFlags =
+ VkFlags( PipelineCreateFlagBits::eDisableOptimization ) | VkFlags( PipelineCreateFlagBits::eAllowDerivatives ) |
+ VkFlags( PipelineCreateFlagBits::eDerivative ) | VkFlags( PipelineCreateFlagBits::eViewIndexFromDeviceIndex ) |
+ VkFlags( PipelineCreateFlagBits::eDispatchBase ) |
+ VkFlags( PipelineCreateFlagBits::eRayTracingNoNullAnyHitShadersKHR ) |
+ VkFlags( PipelineCreateFlagBits::eRayTracingNoNullClosestHitShadersKHR ) |
+ VkFlags( PipelineCreateFlagBits::eRayTracingNoNullMissShadersKHR ) |
+ VkFlags( PipelineCreateFlagBits::eRayTracingNoNullIntersectionShadersKHR ) |
+ VkFlags( PipelineCreateFlagBits::eRayTracingSkipTrianglesKHR ) |
+ VkFlags( PipelineCreateFlagBits::eRayTracingSkipAabbsKHR ) |
+ VkFlags( PipelineCreateFlagBits::eRayTracingShaderGroupHandleCaptureReplayKHR ) |
+ VkFlags( PipelineCreateFlagBits::eDeferCompileNV ) | VkFlags( PipelineCreateFlagBits::eCaptureStatisticsKHR ) |
+ VkFlags( PipelineCreateFlagBits::eCaptureInternalRepresentationsKHR ) |
+ VkFlags( PipelineCreateFlagBits::eIndirectBindableNV ) | VkFlags( PipelineCreateFlagBits::eLibraryKHR ) |
+ VkFlags( PipelineCreateFlagBits::eFailOnPipelineCompileRequiredEXT ) |
+ VkFlags( PipelineCreateFlagBits::eEarlyReturnOnFailureEXT ) |
+ VkFlags( PipelineCreateFlagBits::eRayTracingAllowMotionNV )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineCreateFlags
+ operator|( PipelineCreateFlagBits bit0, PipelineCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return PipelineCreateFlags( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineCreateFlags operator&(PipelineCreateFlagBits bit0,
+ PipelineCreateFlagBits bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return PipelineCreateFlags( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineCreateFlags
+ operator^( PipelineCreateFlagBits bit0, PipelineCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return PipelineCreateFlags( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineCreateFlags operator~( PipelineCreateFlagBits bits )
+ VULKAN_HPP_NOEXCEPT
+ {
+ return ~( PipelineCreateFlags( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( PipelineCreateFlags value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & PipelineCreateFlagBits::eDisableOptimization )
+ result += "DisableOptimization | ";
+ if ( value & PipelineCreateFlagBits::eAllowDerivatives )
+ result += "AllowDerivatives | ";
+ if ( value & PipelineCreateFlagBits::eDerivative )
+ result += "Derivative | ";
+ if ( value & PipelineCreateFlagBits::eViewIndexFromDeviceIndex )
+ result += "ViewIndexFromDeviceIndex | ";
+ if ( value & PipelineCreateFlagBits::eDispatchBase )
+ result += "DispatchBase | ";
+ if ( value & PipelineCreateFlagBits::eRayTracingNoNullAnyHitShadersKHR )
+ result += "RayTracingNoNullAnyHitShadersKHR | ";
+ if ( value & PipelineCreateFlagBits::eRayTracingNoNullClosestHitShadersKHR )
+ result += "RayTracingNoNullClosestHitShadersKHR | ";
+ if ( value & PipelineCreateFlagBits::eRayTracingNoNullMissShadersKHR )
+ result += "RayTracingNoNullMissShadersKHR | ";
+ if ( value & PipelineCreateFlagBits::eRayTracingNoNullIntersectionShadersKHR )
+ result += "RayTracingNoNullIntersectionShadersKHR | ";
+ if ( value & PipelineCreateFlagBits::eRayTracingSkipTrianglesKHR )
+ result += "RayTracingSkipTrianglesKHR | ";
+ if ( value & PipelineCreateFlagBits::eRayTracingSkipAabbsKHR )
+ result += "RayTracingSkipAabbsKHR | ";
+ if ( value & PipelineCreateFlagBits::eRayTracingShaderGroupHandleCaptureReplayKHR )
+ result += "RayTracingShaderGroupHandleCaptureReplayKHR | ";
+ if ( value & PipelineCreateFlagBits::eDeferCompileNV )
+ result += "DeferCompileNV | ";
+ if ( value & PipelineCreateFlagBits::eCaptureStatisticsKHR )
+ result += "CaptureStatisticsKHR | ";
+ if ( value & PipelineCreateFlagBits::eCaptureInternalRepresentationsKHR )
+ result += "CaptureInternalRepresentationsKHR | ";
+ if ( value & PipelineCreateFlagBits::eIndirectBindableNV )
+ result += "IndirectBindableNV | ";
+ if ( value & PipelineCreateFlagBits::eLibraryKHR )
+ result += "LibraryKHR | ";
+ if ( value & PipelineCreateFlagBits::eFailOnPipelineCompileRequiredEXT )
+ result += "FailOnPipelineCompileRequiredEXT | ";
+ if ( value & PipelineCreateFlagBits::eEarlyReturnOnFailureEXT )
+ result += "EarlyReturnOnFailureEXT | ";
+ if ( value & PipelineCreateFlagBits::eRayTracingAllowMotionNV )
+ result += "RayTracingAllowMotionNV | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using PipelineDepthStencilStateCreateFlags = Flags<PipelineDepthStencilStateCreateFlagBits>;
+
+ VULKAN_HPP_INLINE std::string to_string( PipelineDepthStencilStateCreateFlags )
+ {
+ return "{}";
+ }
+
+ using PipelineDynamicStateCreateFlags = Flags<PipelineDynamicStateCreateFlagBits>;
+
+ VULKAN_HPP_INLINE std::string to_string( PipelineDynamicStateCreateFlags )
+ {
+ return "{}";
+ }
+
+ using PipelineInputAssemblyStateCreateFlags = Flags<PipelineInputAssemblyStateCreateFlagBits>;
+
+ VULKAN_HPP_INLINE std::string to_string( PipelineInputAssemblyStateCreateFlags )
+ {
+ return "{}";
+ }
+
+ using PipelineLayoutCreateFlags = Flags<PipelineLayoutCreateFlagBits>;
+
+ VULKAN_HPP_INLINE std::string to_string( PipelineLayoutCreateFlags )
+ {
+ return "{}";
+ }
+
+ using PipelineMultisampleStateCreateFlags = Flags<PipelineMultisampleStateCreateFlagBits>;
+
+ VULKAN_HPP_INLINE std::string to_string( PipelineMultisampleStateCreateFlags )
+ {
+ return "{}";
+ }
+
+ using PipelineRasterizationStateCreateFlags = Flags<PipelineRasterizationStateCreateFlagBits>;
+
+ VULKAN_HPP_INLINE std::string to_string( PipelineRasterizationStateCreateFlags )
+ {
+ return "{}";
+ }
+
+ using PipelineShaderStageCreateFlags = Flags<PipelineShaderStageCreateFlagBits>;
+
+ template <>
+ struct FlagTraits<PipelineShaderStageCreateFlagBits>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( PipelineShaderStageCreateFlagBits::eAllowVaryingSubgroupSizeEXT ) |
+ VkFlags( PipelineShaderStageCreateFlagBits::eRequireFullSubgroupsEXT )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineShaderStageCreateFlags
+ operator|( PipelineShaderStageCreateFlagBits bit0, PipelineShaderStageCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return PipelineShaderStageCreateFlags( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineShaderStageCreateFlags
+ operator&(PipelineShaderStageCreateFlagBits bit0, PipelineShaderStageCreateFlagBits bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return PipelineShaderStageCreateFlags( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineShaderStageCreateFlags
+ operator^( PipelineShaderStageCreateFlagBits bit0, PipelineShaderStageCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return PipelineShaderStageCreateFlags( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineShaderStageCreateFlags
+ operator~( PipelineShaderStageCreateFlagBits bits ) VULKAN_HPP_NOEXCEPT
+ {
+ return ~( PipelineShaderStageCreateFlags( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( PipelineShaderStageCreateFlags value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & PipelineShaderStageCreateFlagBits::eAllowVaryingSubgroupSizeEXT )
+ result += "AllowVaryingSubgroupSizeEXT | ";
+ if ( value & PipelineShaderStageCreateFlagBits::eRequireFullSubgroupsEXT )
+ result += "RequireFullSubgroupsEXT | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using PipelineTessellationStateCreateFlags = Flags<PipelineTessellationStateCreateFlagBits>;
+
+ VULKAN_HPP_INLINE std::string to_string( PipelineTessellationStateCreateFlags )
+ {
+ return "{}";
+ }
+
+ using PipelineVertexInputStateCreateFlags = Flags<PipelineVertexInputStateCreateFlagBits>;
+
+ VULKAN_HPP_INLINE std::string to_string( PipelineVertexInputStateCreateFlags )
+ {
+ return "{}";
+ }
+
+ using PipelineViewportStateCreateFlags = Flags<PipelineViewportStateCreateFlagBits>;
+
+ VULKAN_HPP_INLINE std::string to_string( PipelineViewportStateCreateFlags )
+ {
+ return "{}";
+ }
+
+ using ShaderStageFlags = Flags<ShaderStageFlagBits>;
+
+ template <>
+ struct FlagTraits<ShaderStageFlagBits>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( ShaderStageFlagBits::eVertex ) | VkFlags( ShaderStageFlagBits::eTessellationControl ) |
+ VkFlags( ShaderStageFlagBits::eTessellationEvaluation ) | VkFlags( ShaderStageFlagBits::eGeometry ) |
+ VkFlags( ShaderStageFlagBits::eFragment ) | VkFlags( ShaderStageFlagBits::eCompute ) |
+ VkFlags( ShaderStageFlagBits::eAllGraphics ) | VkFlags( ShaderStageFlagBits::eAll ) |
+ VkFlags( ShaderStageFlagBits::eRaygenKHR ) | VkFlags( ShaderStageFlagBits::eAnyHitKHR ) |
+ VkFlags( ShaderStageFlagBits::eClosestHitKHR ) | VkFlags( ShaderStageFlagBits::eMissKHR ) |
+ VkFlags( ShaderStageFlagBits::eIntersectionKHR ) | VkFlags( ShaderStageFlagBits::eCallableKHR ) |
+ VkFlags( ShaderStageFlagBits::eTaskNV ) | VkFlags( ShaderStageFlagBits::eMeshNV ) |
+ VkFlags( ShaderStageFlagBits::eSubpassShadingHUAWEI )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ShaderStageFlags operator|( ShaderStageFlagBits bit0,
+ ShaderStageFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return ShaderStageFlags( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ShaderStageFlags operator&(ShaderStageFlagBits bit0,
+ ShaderStageFlagBits bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return ShaderStageFlags( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ShaderStageFlags operator^( ShaderStageFlagBits bit0,
+ ShaderStageFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return ShaderStageFlags( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ShaderStageFlags operator~( ShaderStageFlagBits bits ) VULKAN_HPP_NOEXCEPT
+ {
+ return ~( ShaderStageFlags( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( ShaderStageFlags value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & ShaderStageFlagBits::eVertex )
+ result += "Vertex | ";
+ if ( value & ShaderStageFlagBits::eTessellationControl )
+ result += "TessellationControl | ";
+ if ( value & ShaderStageFlagBits::eTessellationEvaluation )
+ result += "TessellationEvaluation | ";
+ if ( value & ShaderStageFlagBits::eGeometry )
+ result += "Geometry | ";
+ if ( value & ShaderStageFlagBits::eFragment )
+ result += "Fragment | ";
+ if ( value & ShaderStageFlagBits::eCompute )
+ result += "Compute | ";
+ if ( value & ShaderStageFlagBits::eRaygenKHR )
+ result += "RaygenKHR | ";
+ if ( value & ShaderStageFlagBits::eAnyHitKHR )
+ result += "AnyHitKHR | ";
+ if ( value & ShaderStageFlagBits::eClosestHitKHR )
+ result += "ClosestHitKHR | ";
+ if ( value & ShaderStageFlagBits::eMissKHR )
+ result += "MissKHR | ";
+ if ( value & ShaderStageFlagBits::eIntersectionKHR )
+ result += "IntersectionKHR | ";
+ if ( value & ShaderStageFlagBits::eCallableKHR )
+ result += "CallableKHR | ";
+ if ( value & ShaderStageFlagBits::eTaskNV )
+ result += "TaskNV | ";
+ if ( value & ShaderStageFlagBits::eMeshNV )
+ result += "MeshNV | ";
+ if ( value & ShaderStageFlagBits::eSubpassShadingHUAWEI )
+ result += "SubpassShadingHUAWEI | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using SamplerCreateFlags = Flags<SamplerCreateFlagBits>;
+
+ template <>
+ struct FlagTraits<SamplerCreateFlagBits>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( SamplerCreateFlagBits::eSubsampledEXT ) |
+ VkFlags( SamplerCreateFlagBits::eSubsampledCoarseReconstructionEXT )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SamplerCreateFlags operator|( SamplerCreateFlagBits bit0,
+ SamplerCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return SamplerCreateFlags( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SamplerCreateFlags operator&(SamplerCreateFlagBits bit0,
+ SamplerCreateFlagBits bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return SamplerCreateFlags( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SamplerCreateFlags operator^( SamplerCreateFlagBits bit0,
+ SamplerCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return SamplerCreateFlags( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SamplerCreateFlags operator~( SamplerCreateFlagBits bits ) VULKAN_HPP_NOEXCEPT
+ {
+ return ~( SamplerCreateFlags( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( SamplerCreateFlags value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & SamplerCreateFlagBits::eSubsampledEXT )
+ result += "SubsampledEXT | ";
+ if ( value & SamplerCreateFlagBits::eSubsampledCoarseReconstructionEXT )
+ result += "SubsampledCoarseReconstructionEXT | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using DescriptorPoolCreateFlags = Flags<DescriptorPoolCreateFlagBits>;
+
+ template <>
+ struct FlagTraits<DescriptorPoolCreateFlagBits>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( DescriptorPoolCreateFlagBits::eFreeDescriptorSet ) |
+ VkFlags( DescriptorPoolCreateFlagBits::eUpdateAfterBind ) |
+ VkFlags( DescriptorPoolCreateFlagBits::eHostOnlyVALVE )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DescriptorPoolCreateFlags
+ operator|( DescriptorPoolCreateFlagBits bit0, DescriptorPoolCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return DescriptorPoolCreateFlags( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DescriptorPoolCreateFlags
+ operator&(DescriptorPoolCreateFlagBits bit0, DescriptorPoolCreateFlagBits bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return DescriptorPoolCreateFlags( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DescriptorPoolCreateFlags
+ operator^( DescriptorPoolCreateFlagBits bit0, DescriptorPoolCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return DescriptorPoolCreateFlags( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DescriptorPoolCreateFlags operator~( DescriptorPoolCreateFlagBits bits )
+ VULKAN_HPP_NOEXCEPT
+ {
+ return ~( DescriptorPoolCreateFlags( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( DescriptorPoolCreateFlags value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & DescriptorPoolCreateFlagBits::eFreeDescriptorSet )
+ result += "FreeDescriptorSet | ";
+ if ( value & DescriptorPoolCreateFlagBits::eUpdateAfterBind )
+ result += "UpdateAfterBind | ";
+ if ( value & DescriptorPoolCreateFlagBits::eHostOnlyVALVE )
+ result += "HostOnlyVALVE | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using DescriptorPoolResetFlags = Flags<DescriptorPoolResetFlagBits>;
+
+ VULKAN_HPP_INLINE std::string to_string( DescriptorPoolResetFlags )
+ {
+ return "{}";
+ }
+
+ using DescriptorSetLayoutCreateFlags = Flags<DescriptorSetLayoutCreateFlagBits>;
+
+ template <>
+ struct FlagTraits<DescriptorSetLayoutCreateFlagBits>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( DescriptorSetLayoutCreateFlagBits::eUpdateAfterBindPool ) |
+ VkFlags( DescriptorSetLayoutCreateFlagBits::ePushDescriptorKHR ) |
+ VkFlags( DescriptorSetLayoutCreateFlagBits::eHostOnlyPoolVALVE )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DescriptorSetLayoutCreateFlags
+ operator|( DescriptorSetLayoutCreateFlagBits bit0, DescriptorSetLayoutCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return DescriptorSetLayoutCreateFlags( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DescriptorSetLayoutCreateFlags
+ operator&(DescriptorSetLayoutCreateFlagBits bit0, DescriptorSetLayoutCreateFlagBits bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return DescriptorSetLayoutCreateFlags( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DescriptorSetLayoutCreateFlags
+ operator^( DescriptorSetLayoutCreateFlagBits bit0, DescriptorSetLayoutCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return DescriptorSetLayoutCreateFlags( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DescriptorSetLayoutCreateFlags
+ operator~( DescriptorSetLayoutCreateFlagBits bits ) VULKAN_HPP_NOEXCEPT
+ {
+ return ~( DescriptorSetLayoutCreateFlags( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( DescriptorSetLayoutCreateFlags value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & DescriptorSetLayoutCreateFlagBits::eUpdateAfterBindPool )
+ result += "UpdateAfterBindPool | ";
+ if ( value & DescriptorSetLayoutCreateFlagBits::ePushDescriptorKHR )
+ result += "PushDescriptorKHR | ";
+ if ( value & DescriptorSetLayoutCreateFlagBits::eHostOnlyPoolVALVE )
+ result += "HostOnlyPoolVALVE | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using AccessFlags = Flags<AccessFlagBits>;
+
+ template <>
+ struct FlagTraits<AccessFlagBits>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( AccessFlagBits::eIndirectCommandRead ) | VkFlags( AccessFlagBits::eIndexRead ) |
+ VkFlags( AccessFlagBits::eVertexAttributeRead ) | VkFlags( AccessFlagBits::eUniformRead ) |
+ VkFlags( AccessFlagBits::eInputAttachmentRead ) | VkFlags( AccessFlagBits::eShaderRead ) |
+ VkFlags( AccessFlagBits::eShaderWrite ) | VkFlags( AccessFlagBits::eColorAttachmentRead ) |
+ VkFlags( AccessFlagBits::eColorAttachmentWrite ) |
+ VkFlags( AccessFlagBits::eDepthStencilAttachmentRead ) |
+ VkFlags( AccessFlagBits::eDepthStencilAttachmentWrite ) | VkFlags( AccessFlagBits::eTransferRead ) |
+ VkFlags( AccessFlagBits::eTransferWrite ) | VkFlags( AccessFlagBits::eHostRead ) |
+ VkFlags( AccessFlagBits::eHostWrite ) | VkFlags( AccessFlagBits::eMemoryRead ) |
+ VkFlags( AccessFlagBits::eMemoryWrite ) | VkFlags( AccessFlagBits::eTransformFeedbackWriteEXT ) |
+ VkFlags( AccessFlagBits::eTransformFeedbackCounterReadEXT ) |
+ VkFlags( AccessFlagBits::eTransformFeedbackCounterWriteEXT ) |
+ VkFlags( AccessFlagBits::eConditionalRenderingReadEXT ) |
+ VkFlags( AccessFlagBits::eColorAttachmentReadNoncoherentEXT ) |
+ VkFlags( AccessFlagBits::eAccelerationStructureReadKHR ) |
+ VkFlags( AccessFlagBits::eAccelerationStructureWriteKHR ) |
+ VkFlags( AccessFlagBits::eFragmentDensityMapReadEXT ) |
+ VkFlags( AccessFlagBits::eFragmentShadingRateAttachmentReadKHR ) |
+ VkFlags( AccessFlagBits::eCommandPreprocessReadNV ) |
+ VkFlags( AccessFlagBits::eCommandPreprocessWriteNV ) | VkFlags( AccessFlagBits::eNoneKHR )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR AccessFlags operator|( AccessFlagBits bit0,
+ AccessFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return AccessFlags( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR AccessFlags operator&(AccessFlagBits bit0,
+ AccessFlagBits bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return AccessFlags( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR AccessFlags operator^( AccessFlagBits bit0,
+ AccessFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return AccessFlags( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR AccessFlags operator~( AccessFlagBits bits ) VULKAN_HPP_NOEXCEPT
+ {
+ return ~( AccessFlags( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( AccessFlags value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & AccessFlagBits::eIndirectCommandRead )
+ result += "IndirectCommandRead | ";
+ if ( value & AccessFlagBits::eIndexRead )
+ result += "IndexRead | ";
+ if ( value & AccessFlagBits::eVertexAttributeRead )
+ result += "VertexAttributeRead | ";
+ if ( value & AccessFlagBits::eUniformRead )
+ result += "UniformRead | ";
+ if ( value & AccessFlagBits::eInputAttachmentRead )
+ result += "InputAttachmentRead | ";
+ if ( value & AccessFlagBits::eShaderRead )
+ result += "ShaderRead | ";
+ if ( value & AccessFlagBits::eShaderWrite )
+ result += "ShaderWrite | ";
+ if ( value & AccessFlagBits::eColorAttachmentRead )
+ result += "ColorAttachmentRead | ";
+ if ( value & AccessFlagBits::eColorAttachmentWrite )
+ result += "ColorAttachmentWrite | ";
+ if ( value & AccessFlagBits::eDepthStencilAttachmentRead )
+ result += "DepthStencilAttachmentRead | ";
+ if ( value & AccessFlagBits::eDepthStencilAttachmentWrite )
+ result += "DepthStencilAttachmentWrite | ";
+ if ( value & AccessFlagBits::eTransferRead )
+ result += "TransferRead | ";
+ if ( value & AccessFlagBits::eTransferWrite )
+ result += "TransferWrite | ";
+ if ( value & AccessFlagBits::eHostRead )
+ result += "HostRead | ";
+ if ( value & AccessFlagBits::eHostWrite )
+ result += "HostWrite | ";
+ if ( value & AccessFlagBits::eMemoryRead )
+ result += "MemoryRead | ";
+ if ( value & AccessFlagBits::eMemoryWrite )
+ result += "MemoryWrite | ";
+ if ( value & AccessFlagBits::eTransformFeedbackWriteEXT )
+ result += "TransformFeedbackWriteEXT | ";
+ if ( value & AccessFlagBits::eTransformFeedbackCounterReadEXT )
+ result += "TransformFeedbackCounterReadEXT | ";
+ if ( value & AccessFlagBits::eTransformFeedbackCounterWriteEXT )
+ result += "TransformFeedbackCounterWriteEXT | ";
+ if ( value & AccessFlagBits::eConditionalRenderingReadEXT )
+ result += "ConditionalRenderingReadEXT | ";
+ if ( value & AccessFlagBits::eColorAttachmentReadNoncoherentEXT )
+ result += "ColorAttachmentReadNoncoherentEXT | ";
+ if ( value & AccessFlagBits::eAccelerationStructureReadKHR )
+ result += "AccelerationStructureReadKHR | ";
+ if ( value & AccessFlagBits::eAccelerationStructureWriteKHR )
+ result += "AccelerationStructureWriteKHR | ";
+ if ( value & AccessFlagBits::eFragmentDensityMapReadEXT )
+ result += "FragmentDensityMapReadEXT | ";
+ if ( value & AccessFlagBits::eFragmentShadingRateAttachmentReadKHR )
+ result += "FragmentShadingRateAttachmentReadKHR | ";
+ if ( value & AccessFlagBits::eCommandPreprocessReadNV )
+ result += "CommandPreprocessReadNV | ";
+ if ( value & AccessFlagBits::eCommandPreprocessWriteNV )
+ result += "CommandPreprocessWriteNV | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using AttachmentDescriptionFlags = Flags<AttachmentDescriptionFlagBits>;
+
+ template <>
+ struct FlagTraits<AttachmentDescriptionFlagBits>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( AttachmentDescriptionFlagBits::eMayAlias )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR AttachmentDescriptionFlags
+ operator|( AttachmentDescriptionFlagBits bit0, AttachmentDescriptionFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return AttachmentDescriptionFlags( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR AttachmentDescriptionFlags
+ operator&(AttachmentDescriptionFlagBits bit0, AttachmentDescriptionFlagBits bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return AttachmentDescriptionFlags( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR AttachmentDescriptionFlags
+ operator^( AttachmentDescriptionFlagBits bit0, AttachmentDescriptionFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return AttachmentDescriptionFlags( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR AttachmentDescriptionFlags operator~( AttachmentDescriptionFlagBits bits )
+ VULKAN_HPP_NOEXCEPT
+ {
+ return ~( AttachmentDescriptionFlags( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( AttachmentDescriptionFlags value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & AttachmentDescriptionFlagBits::eMayAlias )
+ result += "MayAlias | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using DependencyFlags = Flags<DependencyFlagBits>;
+
+ template <>
+ struct FlagTraits<DependencyFlagBits>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( DependencyFlagBits::eByRegion ) | VkFlags( DependencyFlagBits::eDeviceGroup ) |
+ VkFlags( DependencyFlagBits::eViewLocal )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DependencyFlags operator|( DependencyFlagBits bit0,
+ DependencyFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return DependencyFlags( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DependencyFlags operator&(DependencyFlagBits bit0,
+ DependencyFlagBits bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return DependencyFlags( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DependencyFlags operator^( DependencyFlagBits bit0,
+ DependencyFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return DependencyFlags( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DependencyFlags operator~( DependencyFlagBits bits ) VULKAN_HPP_NOEXCEPT
+ {
+ return ~( DependencyFlags( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( DependencyFlags value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & DependencyFlagBits::eByRegion )
+ result += "ByRegion | ";
+ if ( value & DependencyFlagBits::eDeviceGroup )
+ result += "DeviceGroup | ";
+ if ( value & DependencyFlagBits::eViewLocal )
+ result += "ViewLocal | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using FramebufferCreateFlags = Flags<FramebufferCreateFlagBits>;
+
+ template <>
+ struct FlagTraits<FramebufferCreateFlagBits>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( FramebufferCreateFlagBits::eImageless )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR FramebufferCreateFlags
+ operator|( FramebufferCreateFlagBits bit0, FramebufferCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return FramebufferCreateFlags( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR FramebufferCreateFlags
+ operator&(FramebufferCreateFlagBits bit0, FramebufferCreateFlagBits bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return FramebufferCreateFlags( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR FramebufferCreateFlags
+ operator^( FramebufferCreateFlagBits bit0, FramebufferCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return FramebufferCreateFlags( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR FramebufferCreateFlags operator~( FramebufferCreateFlagBits bits )
+ VULKAN_HPP_NOEXCEPT
+ {
+ return ~( FramebufferCreateFlags( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( FramebufferCreateFlags value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & FramebufferCreateFlagBits::eImageless )
+ result += "Imageless | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using RenderPassCreateFlags = Flags<RenderPassCreateFlagBits>;
+
+ template <>
+ struct FlagTraits<RenderPassCreateFlagBits>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( RenderPassCreateFlagBits::eTransformQCOM )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR RenderPassCreateFlags
+ operator|( RenderPassCreateFlagBits bit0, RenderPassCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return RenderPassCreateFlags( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR RenderPassCreateFlags
+ operator&(RenderPassCreateFlagBits bit0, RenderPassCreateFlagBits bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return RenderPassCreateFlags( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR RenderPassCreateFlags
+ operator^( RenderPassCreateFlagBits bit0, RenderPassCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return RenderPassCreateFlags( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR RenderPassCreateFlags operator~( RenderPassCreateFlagBits bits )
+ VULKAN_HPP_NOEXCEPT
+ {
+ return ~( RenderPassCreateFlags( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( RenderPassCreateFlags value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & RenderPassCreateFlagBits::eTransformQCOM )
+ result += "TransformQCOM | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using SubpassDescriptionFlags = Flags<SubpassDescriptionFlagBits>;
+
+ template <>
+ struct FlagTraits<SubpassDescriptionFlagBits>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( SubpassDescriptionFlagBits::ePerViewAttributesNVX ) |
+ VkFlags( SubpassDescriptionFlagBits::ePerViewPositionXOnlyNVX ) |
+ VkFlags( SubpassDescriptionFlagBits::eFragmentRegionQCOM ) |
+ VkFlags( SubpassDescriptionFlagBits::eShaderResolveQCOM )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SubpassDescriptionFlags
+ operator|( SubpassDescriptionFlagBits bit0, SubpassDescriptionFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return SubpassDescriptionFlags( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SubpassDescriptionFlags
+ operator&(SubpassDescriptionFlagBits bit0, SubpassDescriptionFlagBits bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return SubpassDescriptionFlags( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SubpassDescriptionFlags
+ operator^( SubpassDescriptionFlagBits bit0, SubpassDescriptionFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return SubpassDescriptionFlags( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SubpassDescriptionFlags operator~( SubpassDescriptionFlagBits bits )
+ VULKAN_HPP_NOEXCEPT
+ {
+ return ~( SubpassDescriptionFlags( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( SubpassDescriptionFlags value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & SubpassDescriptionFlagBits::ePerViewAttributesNVX )
+ result += "PerViewAttributesNVX | ";
+ if ( value & SubpassDescriptionFlagBits::ePerViewPositionXOnlyNVX )
+ result += "PerViewPositionXOnlyNVX | ";
+ if ( value & SubpassDescriptionFlagBits::eFragmentRegionQCOM )
+ result += "FragmentRegionQCOM | ";
+ if ( value & SubpassDescriptionFlagBits::eShaderResolveQCOM )
+ result += "ShaderResolveQCOM | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using CommandPoolCreateFlags = Flags<CommandPoolCreateFlagBits>;
+
+ template <>
+ struct FlagTraits<CommandPoolCreateFlagBits>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( CommandPoolCreateFlagBits::eTransient ) |
+ VkFlags( CommandPoolCreateFlagBits::eResetCommandBuffer ) |
+ VkFlags( CommandPoolCreateFlagBits::eProtected )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CommandPoolCreateFlags
+ operator|( CommandPoolCreateFlagBits bit0, CommandPoolCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return CommandPoolCreateFlags( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CommandPoolCreateFlags
+ operator&(CommandPoolCreateFlagBits bit0, CommandPoolCreateFlagBits bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return CommandPoolCreateFlags( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CommandPoolCreateFlags
+ operator^( CommandPoolCreateFlagBits bit0, CommandPoolCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return CommandPoolCreateFlags( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CommandPoolCreateFlags operator~( CommandPoolCreateFlagBits bits )
+ VULKAN_HPP_NOEXCEPT
+ {
+ return ~( CommandPoolCreateFlags( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( CommandPoolCreateFlags value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & CommandPoolCreateFlagBits::eTransient )
+ result += "Transient | ";
+ if ( value & CommandPoolCreateFlagBits::eResetCommandBuffer )
+ result += "ResetCommandBuffer | ";
+ if ( value & CommandPoolCreateFlagBits::eProtected )
+ result += "Protected | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using CommandPoolResetFlags = Flags<CommandPoolResetFlagBits>;
+
+ template <>
+ struct FlagTraits<CommandPoolResetFlagBits>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( CommandPoolResetFlagBits::eReleaseResources )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CommandPoolResetFlags
+ operator|( CommandPoolResetFlagBits bit0, CommandPoolResetFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return CommandPoolResetFlags( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CommandPoolResetFlags
+ operator&(CommandPoolResetFlagBits bit0, CommandPoolResetFlagBits bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return CommandPoolResetFlags( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CommandPoolResetFlags
+ operator^( CommandPoolResetFlagBits bit0, CommandPoolResetFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return CommandPoolResetFlags( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CommandPoolResetFlags operator~( CommandPoolResetFlagBits bits )
+ VULKAN_HPP_NOEXCEPT
+ {
+ return ~( CommandPoolResetFlags( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( CommandPoolResetFlags value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & CommandPoolResetFlagBits::eReleaseResources )
+ result += "ReleaseResources | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using CommandBufferResetFlags = Flags<CommandBufferResetFlagBits>;
+
+ template <>
+ struct FlagTraits<CommandBufferResetFlagBits>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( CommandBufferResetFlagBits::eReleaseResources )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CommandBufferResetFlags
+ operator|( CommandBufferResetFlagBits bit0, CommandBufferResetFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return CommandBufferResetFlags( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CommandBufferResetFlags
+ operator&(CommandBufferResetFlagBits bit0, CommandBufferResetFlagBits bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return CommandBufferResetFlags( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CommandBufferResetFlags
+ operator^( CommandBufferResetFlagBits bit0, CommandBufferResetFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return CommandBufferResetFlags( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CommandBufferResetFlags operator~( CommandBufferResetFlagBits bits )
+ VULKAN_HPP_NOEXCEPT
+ {
+ return ~( CommandBufferResetFlags( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( CommandBufferResetFlags value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & CommandBufferResetFlagBits::eReleaseResources )
+ result += "ReleaseResources | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using CommandBufferUsageFlags = Flags<CommandBufferUsageFlagBits>;
+
+ template <>
+ struct FlagTraits<CommandBufferUsageFlagBits>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( CommandBufferUsageFlagBits::eOneTimeSubmit ) |
+ VkFlags( CommandBufferUsageFlagBits::eRenderPassContinue ) |
+ VkFlags( CommandBufferUsageFlagBits::eSimultaneousUse )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CommandBufferUsageFlags
+ operator|( CommandBufferUsageFlagBits bit0, CommandBufferUsageFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return CommandBufferUsageFlags( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CommandBufferUsageFlags
+ operator&(CommandBufferUsageFlagBits bit0, CommandBufferUsageFlagBits bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return CommandBufferUsageFlags( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CommandBufferUsageFlags
+ operator^( CommandBufferUsageFlagBits bit0, CommandBufferUsageFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return CommandBufferUsageFlags( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CommandBufferUsageFlags operator~( CommandBufferUsageFlagBits bits )
+ VULKAN_HPP_NOEXCEPT
+ {
+ return ~( CommandBufferUsageFlags( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( CommandBufferUsageFlags value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & CommandBufferUsageFlagBits::eOneTimeSubmit )
+ result += "OneTimeSubmit | ";
+ if ( value & CommandBufferUsageFlagBits::eRenderPassContinue )
+ result += "RenderPassContinue | ";
+ if ( value & CommandBufferUsageFlagBits::eSimultaneousUse )
+ result += "SimultaneousUse | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using QueryControlFlags = Flags<QueryControlFlagBits>;
+
+ template <>
+ struct FlagTraits<QueryControlFlagBits>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( QueryControlFlagBits::ePrecise )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR QueryControlFlags operator|( QueryControlFlagBits bit0,
+ QueryControlFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return QueryControlFlags( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR QueryControlFlags operator&(QueryControlFlagBits bit0,
+ QueryControlFlagBits bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return QueryControlFlags( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR QueryControlFlags operator^( QueryControlFlagBits bit0,
+ QueryControlFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return QueryControlFlags( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR QueryControlFlags operator~( QueryControlFlagBits bits ) VULKAN_HPP_NOEXCEPT
+ {
+ return ~( QueryControlFlags( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( QueryControlFlags value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & QueryControlFlagBits::ePrecise )
+ result += "Precise | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using StencilFaceFlags = Flags<StencilFaceFlagBits>;
+
+ template <>
+ struct FlagTraits<StencilFaceFlagBits>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( StencilFaceFlagBits::eFront ) | VkFlags( StencilFaceFlagBits::eBack ) |
+ VkFlags( StencilFaceFlagBits::eFrontAndBack )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR StencilFaceFlags operator|( StencilFaceFlagBits bit0,
+ StencilFaceFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return StencilFaceFlags( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR StencilFaceFlags operator&(StencilFaceFlagBits bit0,
+ StencilFaceFlagBits bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return StencilFaceFlags( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR StencilFaceFlags operator^( StencilFaceFlagBits bit0,
+ StencilFaceFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return StencilFaceFlags( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR StencilFaceFlags operator~( StencilFaceFlagBits bits ) VULKAN_HPP_NOEXCEPT
+ {
+ return ~( StencilFaceFlags( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( StencilFaceFlags value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & StencilFaceFlagBits::eFront )
+ result += "Front | ";
+ if ( value & StencilFaceFlagBits::eBack )
+ result += "Back | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ //=== VK_VERSION_1_1 ===
+
+ using SubgroupFeatureFlags = Flags<SubgroupFeatureFlagBits>;
+
+ template <>
+ struct FlagTraits<SubgroupFeatureFlagBits>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( SubgroupFeatureFlagBits::eBasic ) | VkFlags( SubgroupFeatureFlagBits::eVote ) |
+ VkFlags( SubgroupFeatureFlagBits::eArithmetic ) | VkFlags( SubgroupFeatureFlagBits::eBallot ) |
+ VkFlags( SubgroupFeatureFlagBits::eShuffle ) | VkFlags( SubgroupFeatureFlagBits::eShuffleRelative ) |
+ VkFlags( SubgroupFeatureFlagBits::eClustered ) | VkFlags( SubgroupFeatureFlagBits::eQuad ) |
+ VkFlags( SubgroupFeatureFlagBits::ePartitionedNV )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SubgroupFeatureFlags
+ operator|( SubgroupFeatureFlagBits bit0, SubgroupFeatureFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return SubgroupFeatureFlags( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SubgroupFeatureFlags operator&(SubgroupFeatureFlagBits bit0,
+ SubgroupFeatureFlagBits bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return SubgroupFeatureFlags( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SubgroupFeatureFlags
+ operator^( SubgroupFeatureFlagBits bit0, SubgroupFeatureFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return SubgroupFeatureFlags( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SubgroupFeatureFlags operator~( SubgroupFeatureFlagBits bits )
+ VULKAN_HPP_NOEXCEPT
+ {
+ return ~( SubgroupFeatureFlags( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( SubgroupFeatureFlags value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & SubgroupFeatureFlagBits::eBasic )
+ result += "Basic | ";
+ if ( value & SubgroupFeatureFlagBits::eVote )
+ result += "Vote | ";
+ if ( value & SubgroupFeatureFlagBits::eArithmetic )
+ result += "Arithmetic | ";
+ if ( value & SubgroupFeatureFlagBits::eBallot )
+ result += "Ballot | ";
+ if ( value & SubgroupFeatureFlagBits::eShuffle )
+ result += "Shuffle | ";
+ if ( value & SubgroupFeatureFlagBits::eShuffleRelative )
+ result += "ShuffleRelative | ";
+ if ( value & SubgroupFeatureFlagBits::eClustered )
+ result += "Clustered | ";
+ if ( value & SubgroupFeatureFlagBits::eQuad )
+ result += "Quad | ";
+ if ( value & SubgroupFeatureFlagBits::ePartitionedNV )
+ result += "PartitionedNV | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using PeerMemoryFeatureFlags = Flags<PeerMemoryFeatureFlagBits>;
+
+ template <>
+ struct FlagTraits<PeerMemoryFeatureFlagBits>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( PeerMemoryFeatureFlagBits::eCopySrc ) | VkFlags( PeerMemoryFeatureFlagBits::eCopyDst ) |
+ VkFlags( PeerMemoryFeatureFlagBits::eGenericSrc ) | VkFlags( PeerMemoryFeatureFlagBits::eGenericDst )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PeerMemoryFeatureFlags
+ operator|( PeerMemoryFeatureFlagBits bit0, PeerMemoryFeatureFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return PeerMemoryFeatureFlags( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PeerMemoryFeatureFlags
+ operator&(PeerMemoryFeatureFlagBits bit0, PeerMemoryFeatureFlagBits bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return PeerMemoryFeatureFlags( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PeerMemoryFeatureFlags
+ operator^( PeerMemoryFeatureFlagBits bit0, PeerMemoryFeatureFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return PeerMemoryFeatureFlags( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PeerMemoryFeatureFlags operator~( PeerMemoryFeatureFlagBits bits )
+ VULKAN_HPP_NOEXCEPT
+ {
+ return ~( PeerMemoryFeatureFlags( bits ) );
+ }
+
+ using PeerMemoryFeatureFlagsKHR = PeerMemoryFeatureFlags;
+
+ VULKAN_HPP_INLINE std::string to_string( PeerMemoryFeatureFlags value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & PeerMemoryFeatureFlagBits::eCopySrc )
+ result += "CopySrc | ";
+ if ( value & PeerMemoryFeatureFlagBits::eCopyDst )
+ result += "CopyDst | ";
+ if ( value & PeerMemoryFeatureFlagBits::eGenericSrc )
+ result += "GenericSrc | ";
+ if ( value & PeerMemoryFeatureFlagBits::eGenericDst )
+ result += "GenericDst | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using MemoryAllocateFlags = Flags<MemoryAllocateFlagBits>;
+
+ template <>
+ struct FlagTraits<MemoryAllocateFlagBits>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( MemoryAllocateFlagBits::eDeviceMask ) | VkFlags( MemoryAllocateFlagBits::eDeviceAddress ) |
+ VkFlags( MemoryAllocateFlagBits::eDeviceAddressCaptureReplay )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR MemoryAllocateFlags
+ operator|( MemoryAllocateFlagBits bit0, MemoryAllocateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return MemoryAllocateFlags( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR MemoryAllocateFlags operator&(MemoryAllocateFlagBits bit0,
+ MemoryAllocateFlagBits bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return MemoryAllocateFlags( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR MemoryAllocateFlags
+ operator^( MemoryAllocateFlagBits bit0, MemoryAllocateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return MemoryAllocateFlags( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR MemoryAllocateFlags operator~( MemoryAllocateFlagBits bits )
+ VULKAN_HPP_NOEXCEPT
+ {
+ return ~( MemoryAllocateFlags( bits ) );
+ }
+
+ using MemoryAllocateFlagsKHR = MemoryAllocateFlags;
+
+ VULKAN_HPP_INLINE std::string to_string( MemoryAllocateFlags value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & MemoryAllocateFlagBits::eDeviceMask )
+ result += "DeviceMask | ";
+ if ( value & MemoryAllocateFlagBits::eDeviceAddress )
+ result += "DeviceAddress | ";
+ if ( value & MemoryAllocateFlagBits::eDeviceAddressCaptureReplay )
+ result += "DeviceAddressCaptureReplay | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using CommandPoolTrimFlags = Flags<CommandPoolTrimFlagBits>;
+
+ using CommandPoolTrimFlagsKHR = CommandPoolTrimFlags;
+
+ VULKAN_HPP_INLINE std::string to_string( CommandPoolTrimFlags )
+ {
+ return "{}";
+ }
+
+ using DescriptorUpdateTemplateCreateFlags = Flags<DescriptorUpdateTemplateCreateFlagBits>;
+
+ using DescriptorUpdateTemplateCreateFlagsKHR = DescriptorUpdateTemplateCreateFlags;
+
+ VULKAN_HPP_INLINE std::string to_string( DescriptorUpdateTemplateCreateFlags )
+ {
+ return "{}";
+ }
+
+ using ExternalMemoryHandleTypeFlags = Flags<ExternalMemoryHandleTypeFlagBits>;
+
+ template <>
+ struct FlagTraits<ExternalMemoryHandleTypeFlagBits>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( ExternalMemoryHandleTypeFlagBits::eOpaqueFd ) |
+ VkFlags( ExternalMemoryHandleTypeFlagBits::eOpaqueWin32 ) |
+ VkFlags( ExternalMemoryHandleTypeFlagBits::eOpaqueWin32Kmt ) |
+ VkFlags( ExternalMemoryHandleTypeFlagBits::eD3D11Texture ) |
+ VkFlags( ExternalMemoryHandleTypeFlagBits::eD3D11TextureKmt ) |
+ VkFlags( ExternalMemoryHandleTypeFlagBits::eD3D12Heap ) |
+ VkFlags( ExternalMemoryHandleTypeFlagBits::eD3D12Resource ) |
+ VkFlags( ExternalMemoryHandleTypeFlagBits::eDmaBufEXT )
+#if defined( VK_USE_PLATFORM_ANDROID_KHR )
+ | VkFlags( ExternalMemoryHandleTypeFlagBits::eAndroidHardwareBufferANDROID )
+#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
+ | VkFlags( ExternalMemoryHandleTypeFlagBits::eHostAllocationEXT ) |
+ VkFlags( ExternalMemoryHandleTypeFlagBits::eHostMappedForeignMemoryEXT )
+#if defined( VK_USE_PLATFORM_FUCHSIA )
+ | VkFlags( ExternalMemoryHandleTypeFlagBits::eZirconVmoFUCHSIA )
+#endif /*VK_USE_PLATFORM_FUCHSIA*/
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalMemoryHandleTypeFlags
+ operator|( ExternalMemoryHandleTypeFlagBits bit0, ExternalMemoryHandleTypeFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return ExternalMemoryHandleTypeFlags( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalMemoryHandleTypeFlags
+ operator&(ExternalMemoryHandleTypeFlagBits bit0, ExternalMemoryHandleTypeFlagBits bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return ExternalMemoryHandleTypeFlags( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalMemoryHandleTypeFlags
+ operator^( ExternalMemoryHandleTypeFlagBits bit0, ExternalMemoryHandleTypeFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return ExternalMemoryHandleTypeFlags( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalMemoryHandleTypeFlags
+ operator~( ExternalMemoryHandleTypeFlagBits bits ) VULKAN_HPP_NOEXCEPT
+ {
+ return ~( ExternalMemoryHandleTypeFlags( bits ) );
+ }
+
+ using ExternalMemoryHandleTypeFlagsKHR = ExternalMemoryHandleTypeFlags;
+
+ VULKAN_HPP_INLINE std::string to_string( ExternalMemoryHandleTypeFlags value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & ExternalMemoryHandleTypeFlagBits::eOpaqueFd )
+ result += "OpaqueFd | ";
+ if ( value & ExternalMemoryHandleTypeFlagBits::eOpaqueWin32 )
+ result += "OpaqueWin32 | ";
+ if ( value & ExternalMemoryHandleTypeFlagBits::eOpaqueWin32Kmt )
+ result += "OpaqueWin32Kmt | ";
+ if ( value & ExternalMemoryHandleTypeFlagBits::eD3D11Texture )
+ result += "D3D11Texture | ";
+ if ( value & ExternalMemoryHandleTypeFlagBits::eD3D11TextureKmt )
+ result += "D3D11TextureKmt | ";
+ if ( value & ExternalMemoryHandleTypeFlagBits::eD3D12Heap )
+ result += "D3D12Heap | ";
+ if ( value & ExternalMemoryHandleTypeFlagBits::eD3D12Resource )
+ result += "D3D12Resource | ";
+ if ( value & ExternalMemoryHandleTypeFlagBits::eDmaBufEXT )
+ result += "DmaBufEXT | ";
+#if defined( VK_USE_PLATFORM_ANDROID_KHR )
+ if ( value & ExternalMemoryHandleTypeFlagBits::eAndroidHardwareBufferANDROID )
+ result += "AndroidHardwareBufferANDROID | ";
+#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
+ if ( value & ExternalMemoryHandleTypeFlagBits::eHostAllocationEXT )
+ result += "HostAllocationEXT | ";
+ if ( value & ExternalMemoryHandleTypeFlagBits::eHostMappedForeignMemoryEXT )
+ result += "HostMappedForeignMemoryEXT | ";
+#if defined( VK_USE_PLATFORM_FUCHSIA )
+ if ( value & ExternalMemoryHandleTypeFlagBits::eZirconVmoFUCHSIA )
+ result += "ZirconVmoFUCHSIA | ";
+#endif /*VK_USE_PLATFORM_FUCHSIA*/
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using ExternalMemoryFeatureFlags = Flags<ExternalMemoryFeatureFlagBits>;
+
+ template <>
+ struct FlagTraits<ExternalMemoryFeatureFlagBits>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( ExternalMemoryFeatureFlagBits::eDedicatedOnly ) |
+ VkFlags( ExternalMemoryFeatureFlagBits::eExportable ) |
+ VkFlags( ExternalMemoryFeatureFlagBits::eImportable )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalMemoryFeatureFlags
+ operator|( ExternalMemoryFeatureFlagBits bit0, ExternalMemoryFeatureFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return ExternalMemoryFeatureFlags( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalMemoryFeatureFlags
+ operator&(ExternalMemoryFeatureFlagBits bit0, ExternalMemoryFeatureFlagBits bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return ExternalMemoryFeatureFlags( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalMemoryFeatureFlags
+ operator^( ExternalMemoryFeatureFlagBits bit0, ExternalMemoryFeatureFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return ExternalMemoryFeatureFlags( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalMemoryFeatureFlags operator~( ExternalMemoryFeatureFlagBits bits )
+ VULKAN_HPP_NOEXCEPT
+ {
+ return ~( ExternalMemoryFeatureFlags( bits ) );
+ }
+
+ using ExternalMemoryFeatureFlagsKHR = ExternalMemoryFeatureFlags;
+
+ VULKAN_HPP_INLINE std::string to_string( ExternalMemoryFeatureFlags value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & ExternalMemoryFeatureFlagBits::eDedicatedOnly )
+ result += "DedicatedOnly | ";
+ if ( value & ExternalMemoryFeatureFlagBits::eExportable )
+ result += "Exportable | ";
+ if ( value & ExternalMemoryFeatureFlagBits::eImportable )
+ result += "Importable | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using ExternalFenceHandleTypeFlags = Flags<ExternalFenceHandleTypeFlagBits>;
+
+ template <>
+ struct FlagTraits<ExternalFenceHandleTypeFlagBits>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( ExternalFenceHandleTypeFlagBits::eOpaqueFd ) |
+ VkFlags( ExternalFenceHandleTypeFlagBits::eOpaqueWin32 ) |
+ VkFlags( ExternalFenceHandleTypeFlagBits::eOpaqueWin32Kmt ) |
+ VkFlags( ExternalFenceHandleTypeFlagBits::eSyncFd )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalFenceHandleTypeFlags
+ operator|( ExternalFenceHandleTypeFlagBits bit0, ExternalFenceHandleTypeFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return ExternalFenceHandleTypeFlags( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalFenceHandleTypeFlags
+ operator&(ExternalFenceHandleTypeFlagBits bit0, ExternalFenceHandleTypeFlagBits bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return ExternalFenceHandleTypeFlags( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalFenceHandleTypeFlags
+ operator^( ExternalFenceHandleTypeFlagBits bit0, ExternalFenceHandleTypeFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return ExternalFenceHandleTypeFlags( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalFenceHandleTypeFlags operator~( ExternalFenceHandleTypeFlagBits bits )
+ VULKAN_HPP_NOEXCEPT
+ {
+ return ~( ExternalFenceHandleTypeFlags( bits ) );
+ }
+
+ using ExternalFenceHandleTypeFlagsKHR = ExternalFenceHandleTypeFlags;
+
+ VULKAN_HPP_INLINE std::string to_string( ExternalFenceHandleTypeFlags value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & ExternalFenceHandleTypeFlagBits::eOpaqueFd )
+ result += "OpaqueFd | ";
+ if ( value & ExternalFenceHandleTypeFlagBits::eOpaqueWin32 )
+ result += "OpaqueWin32 | ";
+ if ( value & ExternalFenceHandleTypeFlagBits::eOpaqueWin32Kmt )
+ result += "OpaqueWin32Kmt | ";
+ if ( value & ExternalFenceHandleTypeFlagBits::eSyncFd )
+ result += "SyncFd | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using ExternalFenceFeatureFlags = Flags<ExternalFenceFeatureFlagBits>;
+
+ template <>
+ struct FlagTraits<ExternalFenceFeatureFlagBits>
+ {
+ enum : VkFlags
+ {
+ allFlags =
+ VkFlags( ExternalFenceFeatureFlagBits::eExportable ) | VkFlags( ExternalFenceFeatureFlagBits::eImportable )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalFenceFeatureFlags
+ operator|( ExternalFenceFeatureFlagBits bit0, ExternalFenceFeatureFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return ExternalFenceFeatureFlags( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalFenceFeatureFlags
+ operator&(ExternalFenceFeatureFlagBits bit0, ExternalFenceFeatureFlagBits bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return ExternalFenceFeatureFlags( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalFenceFeatureFlags
+ operator^( ExternalFenceFeatureFlagBits bit0, ExternalFenceFeatureFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return ExternalFenceFeatureFlags( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalFenceFeatureFlags operator~( ExternalFenceFeatureFlagBits bits )
+ VULKAN_HPP_NOEXCEPT
+ {
+ return ~( ExternalFenceFeatureFlags( bits ) );
+ }
+
+ using ExternalFenceFeatureFlagsKHR = ExternalFenceFeatureFlags;
+
+ VULKAN_HPP_INLINE std::string to_string( ExternalFenceFeatureFlags value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & ExternalFenceFeatureFlagBits::eExportable )
+ result += "Exportable | ";
+ if ( value & ExternalFenceFeatureFlagBits::eImportable )
+ result += "Importable | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using FenceImportFlags = Flags<FenceImportFlagBits>;
+
+ template <>
+ struct FlagTraits<FenceImportFlagBits>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( FenceImportFlagBits::eTemporary )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR FenceImportFlags operator|( FenceImportFlagBits bit0,
+ FenceImportFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return FenceImportFlags( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR FenceImportFlags operator&(FenceImportFlagBits bit0,
+ FenceImportFlagBits bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return FenceImportFlags( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR FenceImportFlags operator^( FenceImportFlagBits bit0,
+ FenceImportFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return FenceImportFlags( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR FenceImportFlags operator~( FenceImportFlagBits bits ) VULKAN_HPP_NOEXCEPT
+ {
+ return ~( FenceImportFlags( bits ) );
+ }
+
+ using FenceImportFlagsKHR = FenceImportFlags;
+
+ VULKAN_HPP_INLINE std::string to_string( FenceImportFlags value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & FenceImportFlagBits::eTemporary )
+ result += "Temporary | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using SemaphoreImportFlags = Flags<SemaphoreImportFlagBits>;
+
+ template <>
+ struct FlagTraits<SemaphoreImportFlagBits>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( SemaphoreImportFlagBits::eTemporary )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SemaphoreImportFlags
+ operator|( SemaphoreImportFlagBits bit0, SemaphoreImportFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return SemaphoreImportFlags( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SemaphoreImportFlags operator&(SemaphoreImportFlagBits bit0,
+ SemaphoreImportFlagBits bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return SemaphoreImportFlags( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SemaphoreImportFlags
+ operator^( SemaphoreImportFlagBits bit0, SemaphoreImportFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return SemaphoreImportFlags( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SemaphoreImportFlags operator~( SemaphoreImportFlagBits bits )
+ VULKAN_HPP_NOEXCEPT
+ {
+ return ~( SemaphoreImportFlags( bits ) );
+ }
+
+ using SemaphoreImportFlagsKHR = SemaphoreImportFlags;
+
+ VULKAN_HPP_INLINE std::string to_string( SemaphoreImportFlags value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & SemaphoreImportFlagBits::eTemporary )
+ result += "Temporary | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using ExternalSemaphoreHandleTypeFlags = Flags<ExternalSemaphoreHandleTypeFlagBits>;
+
+ template <>
+ struct FlagTraits<ExternalSemaphoreHandleTypeFlagBits>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( ExternalSemaphoreHandleTypeFlagBits::eOpaqueFd ) |
+ VkFlags( ExternalSemaphoreHandleTypeFlagBits::eOpaqueWin32 ) |
+ VkFlags( ExternalSemaphoreHandleTypeFlagBits::eOpaqueWin32Kmt ) |
+ VkFlags( ExternalSemaphoreHandleTypeFlagBits::eD3D12Fence ) |
+ VkFlags( ExternalSemaphoreHandleTypeFlagBits::eSyncFd )
+#if defined( VK_USE_PLATFORM_FUCHSIA )
+ | VkFlags( ExternalSemaphoreHandleTypeFlagBits::eZirconEventFUCHSIA )
+#endif /*VK_USE_PLATFORM_FUCHSIA*/
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalSemaphoreHandleTypeFlags
+ operator|( ExternalSemaphoreHandleTypeFlagBits bit0, ExternalSemaphoreHandleTypeFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return ExternalSemaphoreHandleTypeFlags( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalSemaphoreHandleTypeFlags
+ operator&(ExternalSemaphoreHandleTypeFlagBits bit0, ExternalSemaphoreHandleTypeFlagBits bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return ExternalSemaphoreHandleTypeFlags( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalSemaphoreHandleTypeFlags
+ operator^( ExternalSemaphoreHandleTypeFlagBits bit0, ExternalSemaphoreHandleTypeFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return ExternalSemaphoreHandleTypeFlags( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalSemaphoreHandleTypeFlags
+ operator~( ExternalSemaphoreHandleTypeFlagBits bits ) VULKAN_HPP_NOEXCEPT
+ {
+ return ~( ExternalSemaphoreHandleTypeFlags( bits ) );
+ }
+
+ using ExternalSemaphoreHandleTypeFlagsKHR = ExternalSemaphoreHandleTypeFlags;
+
+ VULKAN_HPP_INLINE std::string to_string( ExternalSemaphoreHandleTypeFlags value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & ExternalSemaphoreHandleTypeFlagBits::eOpaqueFd )
+ result += "OpaqueFd | ";
+ if ( value & ExternalSemaphoreHandleTypeFlagBits::eOpaqueWin32 )
+ result += "OpaqueWin32 | ";
+ if ( value & ExternalSemaphoreHandleTypeFlagBits::eOpaqueWin32Kmt )
+ result += "OpaqueWin32Kmt | ";
+ if ( value & ExternalSemaphoreHandleTypeFlagBits::eD3D12Fence )
+ result += "D3D12Fence | ";
+ if ( value & ExternalSemaphoreHandleTypeFlagBits::eSyncFd )
+ result += "SyncFd | ";
+#if defined( VK_USE_PLATFORM_FUCHSIA )
+ if ( value & ExternalSemaphoreHandleTypeFlagBits::eZirconEventFUCHSIA )
+ result += "ZirconEventFUCHSIA | ";
+#endif /*VK_USE_PLATFORM_FUCHSIA*/
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using ExternalSemaphoreFeatureFlags = Flags<ExternalSemaphoreFeatureFlagBits>;
+
+ template <>
+ struct FlagTraits<ExternalSemaphoreFeatureFlagBits>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( ExternalSemaphoreFeatureFlagBits::eExportable ) |
+ VkFlags( ExternalSemaphoreFeatureFlagBits::eImportable )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalSemaphoreFeatureFlags
+ operator|( ExternalSemaphoreFeatureFlagBits bit0, ExternalSemaphoreFeatureFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return ExternalSemaphoreFeatureFlags( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalSemaphoreFeatureFlags
+ operator&(ExternalSemaphoreFeatureFlagBits bit0, ExternalSemaphoreFeatureFlagBits bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return ExternalSemaphoreFeatureFlags( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalSemaphoreFeatureFlags
+ operator^( ExternalSemaphoreFeatureFlagBits bit0, ExternalSemaphoreFeatureFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return ExternalSemaphoreFeatureFlags( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalSemaphoreFeatureFlags
+ operator~( ExternalSemaphoreFeatureFlagBits bits ) VULKAN_HPP_NOEXCEPT
+ {
+ return ~( ExternalSemaphoreFeatureFlags( bits ) );
+ }
+
+ using ExternalSemaphoreFeatureFlagsKHR = ExternalSemaphoreFeatureFlags;
+
+ VULKAN_HPP_INLINE std::string to_string( ExternalSemaphoreFeatureFlags value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & ExternalSemaphoreFeatureFlagBits::eExportable )
+ result += "Exportable | ";
+ if ( value & ExternalSemaphoreFeatureFlagBits::eImportable )
+ result += "Importable | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ //=== VK_VERSION_1_2 ===
+
+ using DescriptorBindingFlags = Flags<DescriptorBindingFlagBits>;
+
+ template <>
+ struct FlagTraits<DescriptorBindingFlagBits>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( DescriptorBindingFlagBits::eUpdateAfterBind ) |
+ VkFlags( DescriptorBindingFlagBits::eUpdateUnusedWhilePending ) |
+ VkFlags( DescriptorBindingFlagBits::ePartiallyBound ) |
+ VkFlags( DescriptorBindingFlagBits::eVariableDescriptorCount )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DescriptorBindingFlags
+ operator|( DescriptorBindingFlagBits bit0, DescriptorBindingFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return DescriptorBindingFlags( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DescriptorBindingFlags
+ operator&(DescriptorBindingFlagBits bit0, DescriptorBindingFlagBits bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return DescriptorBindingFlags( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DescriptorBindingFlags
+ operator^( DescriptorBindingFlagBits bit0, DescriptorBindingFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return DescriptorBindingFlags( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DescriptorBindingFlags operator~( DescriptorBindingFlagBits bits )
+ VULKAN_HPP_NOEXCEPT
+ {
+ return ~( DescriptorBindingFlags( bits ) );
+ }
+
+ using DescriptorBindingFlagsEXT = DescriptorBindingFlags;
+
+ VULKAN_HPP_INLINE std::string to_string( DescriptorBindingFlags value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & DescriptorBindingFlagBits::eUpdateAfterBind )
+ result += "UpdateAfterBind | ";
+ if ( value & DescriptorBindingFlagBits::eUpdateUnusedWhilePending )
+ result += "UpdateUnusedWhilePending | ";
+ if ( value & DescriptorBindingFlagBits::ePartiallyBound )
+ result += "PartiallyBound | ";
+ if ( value & DescriptorBindingFlagBits::eVariableDescriptorCount )
+ result += "VariableDescriptorCount | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using ResolveModeFlags = Flags<ResolveModeFlagBits>;
+
+ template <>
+ struct FlagTraits<ResolveModeFlagBits>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( ResolveModeFlagBits::eNone ) | VkFlags( ResolveModeFlagBits::eSampleZero ) |
+ VkFlags( ResolveModeFlagBits::eAverage ) | VkFlags( ResolveModeFlagBits::eMin ) |
+ VkFlags( ResolveModeFlagBits::eMax )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ResolveModeFlags operator|( ResolveModeFlagBits bit0,
+ ResolveModeFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return ResolveModeFlags( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ResolveModeFlags operator&(ResolveModeFlagBits bit0,
+ ResolveModeFlagBits bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return ResolveModeFlags( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ResolveModeFlags operator^( ResolveModeFlagBits bit0,
+ ResolveModeFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return ResolveModeFlags( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ResolveModeFlags operator~( ResolveModeFlagBits bits ) VULKAN_HPP_NOEXCEPT
+ {
+ return ~( ResolveModeFlags( bits ) );
+ }
+
+ using ResolveModeFlagsKHR = ResolveModeFlags;
+
+ VULKAN_HPP_INLINE std::string to_string( ResolveModeFlags value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & ResolveModeFlagBits::eSampleZero )
+ result += "SampleZero | ";
+ if ( value & ResolveModeFlagBits::eAverage )
+ result += "Average | ";
+ if ( value & ResolveModeFlagBits::eMin )
+ result += "Min | ";
+ if ( value & ResolveModeFlagBits::eMax )
+ result += "Max | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using SemaphoreWaitFlags = Flags<SemaphoreWaitFlagBits>;
+
+ template <>
+ struct FlagTraits<SemaphoreWaitFlagBits>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( SemaphoreWaitFlagBits::eAny )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SemaphoreWaitFlags operator|( SemaphoreWaitFlagBits bit0,
+ SemaphoreWaitFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return SemaphoreWaitFlags( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SemaphoreWaitFlags operator&(SemaphoreWaitFlagBits bit0,
+ SemaphoreWaitFlagBits bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return SemaphoreWaitFlags( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SemaphoreWaitFlags operator^( SemaphoreWaitFlagBits bit0,
+ SemaphoreWaitFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return SemaphoreWaitFlags( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SemaphoreWaitFlags operator~( SemaphoreWaitFlagBits bits ) VULKAN_HPP_NOEXCEPT
+ {
+ return ~( SemaphoreWaitFlags( bits ) );
+ }
+
+ using SemaphoreWaitFlagsKHR = SemaphoreWaitFlags;
+
+ VULKAN_HPP_INLINE std::string to_string( SemaphoreWaitFlags value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & SemaphoreWaitFlagBits::eAny )
+ result += "Any | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ //=== VK_KHR_surface ===
+
+ using CompositeAlphaFlagsKHR = Flags<CompositeAlphaFlagBitsKHR>;
+
+ template <>
+ struct FlagTraits<CompositeAlphaFlagBitsKHR>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( CompositeAlphaFlagBitsKHR::eOpaque ) | VkFlags( CompositeAlphaFlagBitsKHR::ePreMultiplied ) |
+ VkFlags( CompositeAlphaFlagBitsKHR::ePostMultiplied ) | VkFlags( CompositeAlphaFlagBitsKHR::eInherit )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CompositeAlphaFlagsKHR
+ operator|( CompositeAlphaFlagBitsKHR bit0, CompositeAlphaFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return CompositeAlphaFlagsKHR( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CompositeAlphaFlagsKHR
+ operator&(CompositeAlphaFlagBitsKHR bit0, CompositeAlphaFlagBitsKHR bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return CompositeAlphaFlagsKHR( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CompositeAlphaFlagsKHR
+ operator^( CompositeAlphaFlagBitsKHR bit0, CompositeAlphaFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return CompositeAlphaFlagsKHR( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CompositeAlphaFlagsKHR operator~( CompositeAlphaFlagBitsKHR bits )
+ VULKAN_HPP_NOEXCEPT
+ {
+ return ~( CompositeAlphaFlagsKHR( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( CompositeAlphaFlagsKHR value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & CompositeAlphaFlagBitsKHR::eOpaque )
+ result += "Opaque | ";
+ if ( value & CompositeAlphaFlagBitsKHR::ePreMultiplied )
+ result += "PreMultiplied | ";
+ if ( value & CompositeAlphaFlagBitsKHR::ePostMultiplied )
+ result += "PostMultiplied | ";
+ if ( value & CompositeAlphaFlagBitsKHR::eInherit )
+ result += "Inherit | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ //=== VK_KHR_swapchain ===
+
+ using SwapchainCreateFlagsKHR = Flags<SwapchainCreateFlagBitsKHR>;
+
+ template <>
+ struct FlagTraits<SwapchainCreateFlagBitsKHR>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( SwapchainCreateFlagBitsKHR::eSplitInstanceBindRegions ) |
+ VkFlags( SwapchainCreateFlagBitsKHR::eProtected ) |
+ VkFlags( SwapchainCreateFlagBitsKHR::eMutableFormat )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SwapchainCreateFlagsKHR
+ operator|( SwapchainCreateFlagBitsKHR bit0, SwapchainCreateFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return SwapchainCreateFlagsKHR( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SwapchainCreateFlagsKHR
+ operator&(SwapchainCreateFlagBitsKHR bit0, SwapchainCreateFlagBitsKHR bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return SwapchainCreateFlagsKHR( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SwapchainCreateFlagsKHR
+ operator^( SwapchainCreateFlagBitsKHR bit0, SwapchainCreateFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return SwapchainCreateFlagsKHR( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SwapchainCreateFlagsKHR operator~( SwapchainCreateFlagBitsKHR bits )
+ VULKAN_HPP_NOEXCEPT
+ {
+ return ~( SwapchainCreateFlagsKHR( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( SwapchainCreateFlagsKHR value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & SwapchainCreateFlagBitsKHR::eSplitInstanceBindRegions )
+ result += "SplitInstanceBindRegions | ";
+ if ( value & SwapchainCreateFlagBitsKHR::eProtected )
+ result += "Protected | ";
+ if ( value & SwapchainCreateFlagBitsKHR::eMutableFormat )
+ result += "MutableFormat | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using DeviceGroupPresentModeFlagsKHR = Flags<DeviceGroupPresentModeFlagBitsKHR>;
+
+ template <>
+ struct FlagTraits<DeviceGroupPresentModeFlagBitsKHR>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( DeviceGroupPresentModeFlagBitsKHR::eLocal ) |
+ VkFlags( DeviceGroupPresentModeFlagBitsKHR::eRemote ) |
+ VkFlags( DeviceGroupPresentModeFlagBitsKHR::eSum ) |
+ VkFlags( DeviceGroupPresentModeFlagBitsKHR::eLocalMultiDevice )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DeviceGroupPresentModeFlagsKHR
+ operator|( DeviceGroupPresentModeFlagBitsKHR bit0, DeviceGroupPresentModeFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return DeviceGroupPresentModeFlagsKHR( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DeviceGroupPresentModeFlagsKHR
+ operator&(DeviceGroupPresentModeFlagBitsKHR bit0, DeviceGroupPresentModeFlagBitsKHR bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return DeviceGroupPresentModeFlagsKHR( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DeviceGroupPresentModeFlagsKHR
+ operator^( DeviceGroupPresentModeFlagBitsKHR bit0, DeviceGroupPresentModeFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return DeviceGroupPresentModeFlagsKHR( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DeviceGroupPresentModeFlagsKHR
+ operator~( DeviceGroupPresentModeFlagBitsKHR bits ) VULKAN_HPP_NOEXCEPT
+ {
+ return ~( DeviceGroupPresentModeFlagsKHR( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( DeviceGroupPresentModeFlagsKHR value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & DeviceGroupPresentModeFlagBitsKHR::eLocal )
+ result += "Local | ";
+ if ( value & DeviceGroupPresentModeFlagBitsKHR::eRemote )
+ result += "Remote | ";
+ if ( value & DeviceGroupPresentModeFlagBitsKHR::eSum )
+ result += "Sum | ";
+ if ( value & DeviceGroupPresentModeFlagBitsKHR::eLocalMultiDevice )
+ result += "LocalMultiDevice | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ //=== VK_KHR_display ===
+
+ using DisplayModeCreateFlagsKHR = Flags<DisplayModeCreateFlagBitsKHR>;
+
+ VULKAN_HPP_INLINE std::string to_string( DisplayModeCreateFlagsKHR )
+ {
+ return "{}";
+ }
+
+ using DisplayPlaneAlphaFlagsKHR = Flags<DisplayPlaneAlphaFlagBitsKHR>;
+
+ template <>
+ struct FlagTraits<DisplayPlaneAlphaFlagBitsKHR>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( DisplayPlaneAlphaFlagBitsKHR::eOpaque ) | VkFlags( DisplayPlaneAlphaFlagBitsKHR::eGlobal ) |
+ VkFlags( DisplayPlaneAlphaFlagBitsKHR::ePerPixel ) |
+ VkFlags( DisplayPlaneAlphaFlagBitsKHR::ePerPixelPremultiplied )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DisplayPlaneAlphaFlagsKHR
+ operator|( DisplayPlaneAlphaFlagBitsKHR bit0, DisplayPlaneAlphaFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return DisplayPlaneAlphaFlagsKHR( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DisplayPlaneAlphaFlagsKHR
+ operator&(DisplayPlaneAlphaFlagBitsKHR bit0, DisplayPlaneAlphaFlagBitsKHR bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return DisplayPlaneAlphaFlagsKHR( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DisplayPlaneAlphaFlagsKHR
+ operator^( DisplayPlaneAlphaFlagBitsKHR bit0, DisplayPlaneAlphaFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return DisplayPlaneAlphaFlagsKHR( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DisplayPlaneAlphaFlagsKHR operator~( DisplayPlaneAlphaFlagBitsKHR bits )
+ VULKAN_HPP_NOEXCEPT
+ {
+ return ~( DisplayPlaneAlphaFlagsKHR( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( DisplayPlaneAlphaFlagsKHR value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & DisplayPlaneAlphaFlagBitsKHR::eOpaque )
+ result += "Opaque | ";
+ if ( value & DisplayPlaneAlphaFlagBitsKHR::eGlobal )
+ result += "Global | ";
+ if ( value & DisplayPlaneAlphaFlagBitsKHR::ePerPixel )
+ result += "PerPixel | ";
+ if ( value & DisplayPlaneAlphaFlagBitsKHR::ePerPixelPremultiplied )
+ result += "PerPixelPremultiplied | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using DisplaySurfaceCreateFlagsKHR = Flags<DisplaySurfaceCreateFlagBitsKHR>;
+
+ VULKAN_HPP_INLINE std::string to_string( DisplaySurfaceCreateFlagsKHR )
+ {
+ return "{}";
+ }
+
+ using SurfaceTransformFlagsKHR = Flags<SurfaceTransformFlagBitsKHR>;
+
+ template <>
+ struct FlagTraits<SurfaceTransformFlagBitsKHR>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( SurfaceTransformFlagBitsKHR::eIdentity ) | VkFlags( SurfaceTransformFlagBitsKHR::eRotate90 ) |
+ VkFlags( SurfaceTransformFlagBitsKHR::eRotate180 ) |
+ VkFlags( SurfaceTransformFlagBitsKHR::eRotate270 ) |
+ VkFlags( SurfaceTransformFlagBitsKHR::eHorizontalMirror ) |
+ VkFlags( SurfaceTransformFlagBitsKHR::eHorizontalMirrorRotate90 ) |
+ VkFlags( SurfaceTransformFlagBitsKHR::eHorizontalMirrorRotate180 ) |
+ VkFlags( SurfaceTransformFlagBitsKHR::eHorizontalMirrorRotate270 ) |
+ VkFlags( SurfaceTransformFlagBitsKHR::eInherit )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SurfaceTransformFlagsKHR
+ operator|( SurfaceTransformFlagBitsKHR bit0, SurfaceTransformFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return SurfaceTransformFlagsKHR( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SurfaceTransformFlagsKHR
+ operator&(SurfaceTransformFlagBitsKHR bit0, SurfaceTransformFlagBitsKHR bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return SurfaceTransformFlagsKHR( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SurfaceTransformFlagsKHR
+ operator^( SurfaceTransformFlagBitsKHR bit0, SurfaceTransformFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return SurfaceTransformFlagsKHR( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SurfaceTransformFlagsKHR operator~( SurfaceTransformFlagBitsKHR bits )
+ VULKAN_HPP_NOEXCEPT
+ {
+ return ~( SurfaceTransformFlagsKHR( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( SurfaceTransformFlagsKHR value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & SurfaceTransformFlagBitsKHR::eIdentity )
+ result += "Identity | ";
+ if ( value & SurfaceTransformFlagBitsKHR::eRotate90 )
+ result += "Rotate90 | ";
+ if ( value & SurfaceTransformFlagBitsKHR::eRotate180 )
+ result += "Rotate180 | ";
+ if ( value & SurfaceTransformFlagBitsKHR::eRotate270 )
+ result += "Rotate270 | ";
+ if ( value & SurfaceTransformFlagBitsKHR::eHorizontalMirror )
+ result += "HorizontalMirror | ";
+ if ( value & SurfaceTransformFlagBitsKHR::eHorizontalMirrorRotate90 )
+ result += "HorizontalMirrorRotate90 | ";
+ if ( value & SurfaceTransformFlagBitsKHR::eHorizontalMirrorRotate180 )
+ result += "HorizontalMirrorRotate180 | ";
+ if ( value & SurfaceTransformFlagBitsKHR::eHorizontalMirrorRotate270 )
+ result += "HorizontalMirrorRotate270 | ";
+ if ( value & SurfaceTransformFlagBitsKHR::eInherit )
+ result += "Inherit | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+#if defined( VK_USE_PLATFORM_XLIB_KHR )
+ //=== VK_KHR_xlib_surface ===
+
+ using XlibSurfaceCreateFlagsKHR = Flags<XlibSurfaceCreateFlagBitsKHR>;
+
+ VULKAN_HPP_INLINE std::string to_string( XlibSurfaceCreateFlagsKHR )
+ {
+ return "{}";
+ }
+#endif /*VK_USE_PLATFORM_XLIB_KHR*/
+
+#if defined( VK_USE_PLATFORM_XCB_KHR )
+ //=== VK_KHR_xcb_surface ===
+
+ using XcbSurfaceCreateFlagsKHR = Flags<XcbSurfaceCreateFlagBitsKHR>;
+
+ VULKAN_HPP_INLINE std::string to_string( XcbSurfaceCreateFlagsKHR )
+ {
+ return "{}";
+ }
+#endif /*VK_USE_PLATFORM_XCB_KHR*/
+
+#if defined( VK_USE_PLATFORM_WAYLAND_KHR )
+ //=== VK_KHR_wayland_surface ===
+
+ using WaylandSurfaceCreateFlagsKHR = Flags<WaylandSurfaceCreateFlagBitsKHR>;
+
+ VULKAN_HPP_INLINE std::string to_string( WaylandSurfaceCreateFlagsKHR )
+ {
+ return "{}";
+ }
+#endif /*VK_USE_PLATFORM_WAYLAND_KHR*/
+
+#if defined( VK_USE_PLATFORM_ANDROID_KHR )
+ //=== VK_KHR_android_surface ===
+
+ using AndroidSurfaceCreateFlagsKHR = Flags<AndroidSurfaceCreateFlagBitsKHR>;
+
+ VULKAN_HPP_INLINE std::string to_string( AndroidSurfaceCreateFlagsKHR )
+ {
+ return "{}";
+ }
+#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
+
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ //=== VK_KHR_win32_surface ===
+
+ using Win32SurfaceCreateFlagsKHR = Flags<Win32SurfaceCreateFlagBitsKHR>;
+
+ VULKAN_HPP_INLINE std::string to_string( Win32SurfaceCreateFlagsKHR )
+ {
+ return "{}";
+ }
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+
+ //=== VK_EXT_debug_report ===
+
+ using DebugReportFlagsEXT = Flags<DebugReportFlagBitsEXT>;
+
+ template <>
+ struct FlagTraits<DebugReportFlagBitsEXT>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( DebugReportFlagBitsEXT::eInformation ) | VkFlags( DebugReportFlagBitsEXT::eWarning ) |
+ VkFlags( DebugReportFlagBitsEXT::ePerformanceWarning ) | VkFlags( DebugReportFlagBitsEXT::eError ) |
+ VkFlags( DebugReportFlagBitsEXT::eDebug )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DebugReportFlagsEXT
+ operator|( DebugReportFlagBitsEXT bit0, DebugReportFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return DebugReportFlagsEXT( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DebugReportFlagsEXT operator&(DebugReportFlagBitsEXT bit0,
+ DebugReportFlagBitsEXT bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return DebugReportFlagsEXT( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DebugReportFlagsEXT
+ operator^( DebugReportFlagBitsEXT bit0, DebugReportFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return DebugReportFlagsEXT( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DebugReportFlagsEXT operator~( DebugReportFlagBitsEXT bits )
+ VULKAN_HPP_NOEXCEPT
+ {
+ return ~( DebugReportFlagsEXT( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( DebugReportFlagsEXT value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & DebugReportFlagBitsEXT::eInformation )
+ result += "Information | ";
+ if ( value & DebugReportFlagBitsEXT::eWarning )
+ result += "Warning | ";
+ if ( value & DebugReportFlagBitsEXT::ePerformanceWarning )
+ result += "PerformanceWarning | ";
+ if ( value & DebugReportFlagBitsEXT::eError )
+ result += "Error | ";
+ if ( value & DebugReportFlagBitsEXT::eDebug )
+ result += "Debug | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ //=== VK_KHR_video_queue ===
+
+ using VideoCodecOperationFlagsKHR = Flags<VideoCodecOperationFlagBitsKHR>;
+
+ template <>
+ struct FlagTraits<VideoCodecOperationFlagBitsKHR>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( VideoCodecOperationFlagBitsKHR::eInvalid )
+# if defined( VK_ENABLE_BETA_EXTENSIONS )
+ | VkFlags( VideoCodecOperationFlagBitsKHR::eEncodeH264EXT ) |
+ VkFlags( VideoCodecOperationFlagBitsKHR::eDecodeH264EXT ) |
+ VkFlags( VideoCodecOperationFlagBitsKHR::eDecodeH265EXT )
+# endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoCodecOperationFlagsKHR
+ operator|( VideoCodecOperationFlagBitsKHR bit0, VideoCodecOperationFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return VideoCodecOperationFlagsKHR( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoCodecOperationFlagsKHR
+ operator&(VideoCodecOperationFlagBitsKHR bit0, VideoCodecOperationFlagBitsKHR bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return VideoCodecOperationFlagsKHR( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoCodecOperationFlagsKHR
+ operator^( VideoCodecOperationFlagBitsKHR bit0, VideoCodecOperationFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return VideoCodecOperationFlagsKHR( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoCodecOperationFlagsKHR operator~( VideoCodecOperationFlagBitsKHR bits )
+ VULKAN_HPP_NOEXCEPT
+ {
+ return ~( VideoCodecOperationFlagsKHR( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( VideoCodecOperationFlagsKHR value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+# if defined( VK_ENABLE_BETA_EXTENSIONS )
+ if ( value & VideoCodecOperationFlagBitsKHR::eEncodeH264EXT )
+ result += "EncodeH264EXT | ";
+# endif /*VK_ENABLE_BETA_EXTENSIONS*/
+# if defined( VK_ENABLE_BETA_EXTENSIONS )
+ if ( value & VideoCodecOperationFlagBitsKHR::eDecodeH264EXT )
+ result += "DecodeH264EXT | ";
+# endif /*VK_ENABLE_BETA_EXTENSIONS*/
+# if defined( VK_ENABLE_BETA_EXTENSIONS )
+ if ( value & VideoCodecOperationFlagBitsKHR::eDecodeH265EXT )
+ result += "DecodeH265EXT | ";
+# endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using VideoChromaSubsamplingFlagsKHR = Flags<VideoChromaSubsamplingFlagBitsKHR>;
+
+ template <>
+ struct FlagTraits<VideoChromaSubsamplingFlagBitsKHR>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( VideoChromaSubsamplingFlagBitsKHR::eInvalid ) |
+ VkFlags( VideoChromaSubsamplingFlagBitsKHR::eMonochrome ) |
+ VkFlags( VideoChromaSubsamplingFlagBitsKHR::e420 ) |
+ VkFlags( VideoChromaSubsamplingFlagBitsKHR::e422 ) | VkFlags( VideoChromaSubsamplingFlagBitsKHR::e444 )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoChromaSubsamplingFlagsKHR
+ operator|( VideoChromaSubsamplingFlagBitsKHR bit0, VideoChromaSubsamplingFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return VideoChromaSubsamplingFlagsKHR( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoChromaSubsamplingFlagsKHR
+ operator&(VideoChromaSubsamplingFlagBitsKHR bit0, VideoChromaSubsamplingFlagBitsKHR bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return VideoChromaSubsamplingFlagsKHR( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoChromaSubsamplingFlagsKHR
+ operator^( VideoChromaSubsamplingFlagBitsKHR bit0, VideoChromaSubsamplingFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return VideoChromaSubsamplingFlagsKHR( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoChromaSubsamplingFlagsKHR
+ operator~( VideoChromaSubsamplingFlagBitsKHR bits ) VULKAN_HPP_NOEXCEPT
+ {
+ return ~( VideoChromaSubsamplingFlagsKHR( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( VideoChromaSubsamplingFlagsKHR value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & VideoChromaSubsamplingFlagBitsKHR::eMonochrome )
+ result += "Monochrome | ";
+ if ( value & VideoChromaSubsamplingFlagBitsKHR::e420 )
+ result += "420 | ";
+ if ( value & VideoChromaSubsamplingFlagBitsKHR::e422 )
+ result += "422 | ";
+ if ( value & VideoChromaSubsamplingFlagBitsKHR::e444 )
+ result += "444 | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using VideoComponentBitDepthFlagsKHR = Flags<VideoComponentBitDepthFlagBitsKHR>;
+
+ template <>
+ struct FlagTraits<VideoComponentBitDepthFlagBitsKHR>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( VideoComponentBitDepthFlagBitsKHR::eInvalid ) |
+ VkFlags( VideoComponentBitDepthFlagBitsKHR::e8 ) | VkFlags( VideoComponentBitDepthFlagBitsKHR::e10 ) |
+ VkFlags( VideoComponentBitDepthFlagBitsKHR::e12 )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoComponentBitDepthFlagsKHR
+ operator|( VideoComponentBitDepthFlagBitsKHR bit0, VideoComponentBitDepthFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return VideoComponentBitDepthFlagsKHR( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoComponentBitDepthFlagsKHR
+ operator&(VideoComponentBitDepthFlagBitsKHR bit0, VideoComponentBitDepthFlagBitsKHR bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return VideoComponentBitDepthFlagsKHR( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoComponentBitDepthFlagsKHR
+ operator^( VideoComponentBitDepthFlagBitsKHR bit0, VideoComponentBitDepthFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return VideoComponentBitDepthFlagsKHR( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoComponentBitDepthFlagsKHR
+ operator~( VideoComponentBitDepthFlagBitsKHR bits ) VULKAN_HPP_NOEXCEPT
+ {
+ return ~( VideoComponentBitDepthFlagsKHR( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( VideoComponentBitDepthFlagsKHR value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & VideoComponentBitDepthFlagBitsKHR::e8 )
+ result += "8 | ";
+ if ( value & VideoComponentBitDepthFlagBitsKHR::e10 )
+ result += "10 | ";
+ if ( value & VideoComponentBitDepthFlagBitsKHR::e12 )
+ result += "12 | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using VideoCapabilitiesFlagsKHR = Flags<VideoCapabilitiesFlagBitsKHR>;
+
+ template <>
+ struct FlagTraits<VideoCapabilitiesFlagBitsKHR>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( VideoCapabilitiesFlagBitsKHR::eProtectedContent ) |
+ VkFlags( VideoCapabilitiesFlagBitsKHR::eSeparateReferenceImages )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoCapabilitiesFlagsKHR
+ operator|( VideoCapabilitiesFlagBitsKHR bit0, VideoCapabilitiesFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return VideoCapabilitiesFlagsKHR( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoCapabilitiesFlagsKHR
+ operator&(VideoCapabilitiesFlagBitsKHR bit0, VideoCapabilitiesFlagBitsKHR bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return VideoCapabilitiesFlagsKHR( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoCapabilitiesFlagsKHR
+ operator^( VideoCapabilitiesFlagBitsKHR bit0, VideoCapabilitiesFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return VideoCapabilitiesFlagsKHR( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoCapabilitiesFlagsKHR operator~( VideoCapabilitiesFlagBitsKHR bits )
+ VULKAN_HPP_NOEXCEPT
+ {
+ return ~( VideoCapabilitiesFlagsKHR( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( VideoCapabilitiesFlagsKHR value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & VideoCapabilitiesFlagBitsKHR::eProtectedContent )
+ result += "ProtectedContent | ";
+ if ( value & VideoCapabilitiesFlagBitsKHR::eSeparateReferenceImages )
+ result += "SeparateReferenceImages | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using VideoSessionCreateFlagsKHR = Flags<VideoSessionCreateFlagBitsKHR>;
+
+ template <>
+ struct FlagTraits<VideoSessionCreateFlagBitsKHR>
+ {
+ enum : VkFlags
+ {
+ allFlags =
+ VkFlags( VideoSessionCreateFlagBitsKHR::eDefault ) | VkFlags( VideoSessionCreateFlagBitsKHR::eProtectedContent )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoSessionCreateFlagsKHR
+ operator|( VideoSessionCreateFlagBitsKHR bit0, VideoSessionCreateFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return VideoSessionCreateFlagsKHR( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoSessionCreateFlagsKHR
+ operator&(VideoSessionCreateFlagBitsKHR bit0, VideoSessionCreateFlagBitsKHR bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return VideoSessionCreateFlagsKHR( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoSessionCreateFlagsKHR
+ operator^( VideoSessionCreateFlagBitsKHR bit0, VideoSessionCreateFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return VideoSessionCreateFlagsKHR( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoSessionCreateFlagsKHR operator~( VideoSessionCreateFlagBitsKHR bits )
+ VULKAN_HPP_NOEXCEPT
+ {
+ return ~( VideoSessionCreateFlagsKHR( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( VideoSessionCreateFlagsKHR value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & VideoSessionCreateFlagBitsKHR::eProtectedContent )
+ result += "ProtectedContent | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using VideoBeginCodingFlagsKHR = Flags<VideoBeginCodingFlagBitsKHR>;
+
+ VULKAN_HPP_INLINE std::string to_string( VideoBeginCodingFlagsKHR )
+ {
+ return "{}";
+ }
+
+ using VideoEndCodingFlagsKHR = Flags<VideoEndCodingFlagBitsKHR>;
+
+ VULKAN_HPP_INLINE std::string to_string( VideoEndCodingFlagsKHR )
+ {
+ return "{}";
+ }
+
+ using VideoCodingControlFlagsKHR = Flags<VideoCodingControlFlagBitsKHR>;
+
+ template <>
+ struct FlagTraits<VideoCodingControlFlagBitsKHR>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( VideoCodingControlFlagBitsKHR::eDefault ) | VkFlags( VideoCodingControlFlagBitsKHR::eReset )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoCodingControlFlagsKHR
+ operator|( VideoCodingControlFlagBitsKHR bit0, VideoCodingControlFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return VideoCodingControlFlagsKHR( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoCodingControlFlagsKHR
+ operator&(VideoCodingControlFlagBitsKHR bit0, VideoCodingControlFlagBitsKHR bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return VideoCodingControlFlagsKHR( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoCodingControlFlagsKHR
+ operator^( VideoCodingControlFlagBitsKHR bit0, VideoCodingControlFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return VideoCodingControlFlagsKHR( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoCodingControlFlagsKHR operator~( VideoCodingControlFlagBitsKHR bits )
+ VULKAN_HPP_NOEXCEPT
+ {
+ return ~( VideoCodingControlFlagsKHR( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( VideoCodingControlFlagsKHR value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & VideoCodingControlFlagBitsKHR::eReset )
+ result += "Reset | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using VideoCodingQualityPresetFlagsKHR = Flags<VideoCodingQualityPresetFlagBitsKHR>;
+
+ template <>
+ struct FlagTraits<VideoCodingQualityPresetFlagBitsKHR>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( VideoCodingQualityPresetFlagBitsKHR::eDefault ) |
+ VkFlags( VideoCodingQualityPresetFlagBitsKHR::eNormal ) |
+ VkFlags( VideoCodingQualityPresetFlagBitsKHR::ePower ) |
+ VkFlags( VideoCodingQualityPresetFlagBitsKHR::eQuality )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoCodingQualityPresetFlagsKHR
+ operator|( VideoCodingQualityPresetFlagBitsKHR bit0, VideoCodingQualityPresetFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return VideoCodingQualityPresetFlagsKHR( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoCodingQualityPresetFlagsKHR
+ operator&(VideoCodingQualityPresetFlagBitsKHR bit0, VideoCodingQualityPresetFlagBitsKHR bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return VideoCodingQualityPresetFlagsKHR( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoCodingQualityPresetFlagsKHR
+ operator^( VideoCodingQualityPresetFlagBitsKHR bit0, VideoCodingQualityPresetFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return VideoCodingQualityPresetFlagsKHR( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoCodingQualityPresetFlagsKHR
+ operator~( VideoCodingQualityPresetFlagBitsKHR bits ) VULKAN_HPP_NOEXCEPT
+ {
+ return ~( VideoCodingQualityPresetFlagsKHR( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( VideoCodingQualityPresetFlagsKHR value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & VideoCodingQualityPresetFlagBitsKHR::eNormal )
+ result += "Normal | ";
+ if ( value & VideoCodingQualityPresetFlagBitsKHR::ePower )
+ result += "Power | ";
+ if ( value & VideoCodingQualityPresetFlagBitsKHR::eQuality )
+ result += "Quality | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ //=== VK_KHR_video_decode_queue ===
+
+ using VideoDecodeFlagsKHR = Flags<VideoDecodeFlagBitsKHR>;
+
+ template <>
+ struct FlagTraits<VideoDecodeFlagBitsKHR>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( VideoDecodeFlagBitsKHR::eDefault ) | VkFlags( VideoDecodeFlagBitsKHR::eReserved0 )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoDecodeFlagsKHR
+ operator|( VideoDecodeFlagBitsKHR bit0, VideoDecodeFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return VideoDecodeFlagsKHR( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoDecodeFlagsKHR operator&(VideoDecodeFlagBitsKHR bit0,
+ VideoDecodeFlagBitsKHR bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return VideoDecodeFlagsKHR( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoDecodeFlagsKHR
+ operator^( VideoDecodeFlagBitsKHR bit0, VideoDecodeFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return VideoDecodeFlagsKHR( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoDecodeFlagsKHR operator~( VideoDecodeFlagBitsKHR bits )
+ VULKAN_HPP_NOEXCEPT
+ {
+ return ~( VideoDecodeFlagsKHR( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( VideoDecodeFlagsKHR value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & VideoDecodeFlagBitsKHR::eReserved0 )
+ result += "Reserved0 | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+ //=== VK_EXT_transform_feedback ===
+
+ using PipelineRasterizationStateStreamCreateFlagsEXT = Flags<PipelineRasterizationStateStreamCreateFlagBitsEXT>;
+
+ VULKAN_HPP_INLINE std::string to_string( PipelineRasterizationStateStreamCreateFlagsEXT )
+ {
+ return "{}";
+ }
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ //=== VK_EXT_video_encode_h264 ===
+
+ using VideoEncodeH264CapabilitiesFlagsEXT = Flags<VideoEncodeH264CapabilitiesFlagBitsEXT>;
+
+ template <>
+ struct FlagTraits<VideoEncodeH264CapabilitiesFlagBitsEXT>
+ {
+ enum : VkFlags
+ {
+ allFlags =
+ VkFlags( VideoEncodeH264CapabilitiesFlagBitsEXT::eVkVideoEncodeH264CapabilityCabac ) |
+ VkFlags( VideoEncodeH264CapabilitiesFlagBitsEXT::eVkVideoEncodeH264CapabilityCavlc ) |
+ VkFlags( VideoEncodeH264CapabilitiesFlagBitsEXT::eVkVideoEncodeH264CapabilityWeightedBiPredImplicit ) |
+ VkFlags( VideoEncodeH264CapabilitiesFlagBitsEXT::eVkVideoEncodeH264CapabilityTransform8X8 ) |
+ VkFlags( VideoEncodeH264CapabilitiesFlagBitsEXT::eVkVideoEncodeH264CapabilityChromaQpOffset ) |
+ VkFlags( VideoEncodeH264CapabilitiesFlagBitsEXT::eVkVideoEncodeH264CapabilitySecondChromaQpOffset ) |
+ VkFlags( VideoEncodeH264CapabilitiesFlagBitsEXT::eVkVideoEncodeH264CapabilityDeblockingFilterDisabled ) |
+ VkFlags( VideoEncodeH264CapabilitiesFlagBitsEXT::eVkVideoEncodeH264CapabilityDeblockingFilterEnabled ) |
+ VkFlags( VideoEncodeH264CapabilitiesFlagBitsEXT::eVkVideoEncodeH264CapabilityDeblockingFilterPartial ) |
+ VkFlags( VideoEncodeH264CapabilitiesFlagBitsEXT::eVkVideoEncodeH264CapabilityMultipleSlicePerFrame ) |
+ VkFlags( VideoEncodeH264CapabilitiesFlagBitsEXT::eVkVideoEncodeH264CapabilityEvenlyDistributedSliceSize )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoEncodeH264CapabilitiesFlagsEXT operator|(
+ VideoEncodeH264CapabilitiesFlagBitsEXT bit0, VideoEncodeH264CapabilitiesFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return VideoEncodeH264CapabilitiesFlagsEXT( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoEncodeH264CapabilitiesFlagsEXT operator&(
+ VideoEncodeH264CapabilitiesFlagBitsEXT bit0, VideoEncodeH264CapabilitiesFlagBitsEXT bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return VideoEncodeH264CapabilitiesFlagsEXT( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoEncodeH264CapabilitiesFlagsEXT operator^(
+ VideoEncodeH264CapabilitiesFlagBitsEXT bit0, VideoEncodeH264CapabilitiesFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return VideoEncodeH264CapabilitiesFlagsEXT( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoEncodeH264CapabilitiesFlagsEXT
+ operator~( VideoEncodeH264CapabilitiesFlagBitsEXT bits ) VULKAN_HPP_NOEXCEPT
+ {
+ return ~( VideoEncodeH264CapabilitiesFlagsEXT( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( VideoEncodeH264CapabilitiesFlagsEXT value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & VideoEncodeH264CapabilitiesFlagBitsEXT::eVkVideoEncodeH264CapabilityCabac )
+ result += "VkVideoEncodeH264CapabilityCabac | ";
+ if ( value & VideoEncodeH264CapabilitiesFlagBitsEXT::eVkVideoEncodeH264CapabilityCavlc )
+ result += "VkVideoEncodeH264CapabilityCavlc | ";
+ if ( value & VideoEncodeH264CapabilitiesFlagBitsEXT::eVkVideoEncodeH264CapabilityWeightedBiPredImplicit )
+ result += "VkVideoEncodeH264CapabilityWeightedBiPredImplicit | ";
+ if ( value & VideoEncodeH264CapabilitiesFlagBitsEXT::eVkVideoEncodeH264CapabilityTransform8X8 )
+ result += "VkVideoEncodeH264CapabilityTransform8X8 | ";
+ if ( value & VideoEncodeH264CapabilitiesFlagBitsEXT::eVkVideoEncodeH264CapabilityChromaQpOffset )
+ result += "VkVideoEncodeH264CapabilityChromaQpOffset | ";
+ if ( value & VideoEncodeH264CapabilitiesFlagBitsEXT::eVkVideoEncodeH264CapabilitySecondChromaQpOffset )
+ result += "VkVideoEncodeH264CapabilitySecondChromaQpOffset | ";
+ if ( value & VideoEncodeH264CapabilitiesFlagBitsEXT::eVkVideoEncodeH264CapabilityDeblockingFilterDisabled )
+ result += "VkVideoEncodeH264CapabilityDeblockingFilterDisabled | ";
+ if ( value & VideoEncodeH264CapabilitiesFlagBitsEXT::eVkVideoEncodeH264CapabilityDeblockingFilterEnabled )
+ result += "VkVideoEncodeH264CapabilityDeblockingFilterEnabled | ";
+ if ( value & VideoEncodeH264CapabilitiesFlagBitsEXT::eVkVideoEncodeH264CapabilityDeblockingFilterPartial )
+ result += "VkVideoEncodeH264CapabilityDeblockingFilterPartial | ";
+ if ( value & VideoEncodeH264CapabilitiesFlagBitsEXT::eVkVideoEncodeH264CapabilityMultipleSlicePerFrame )
+ result += "VkVideoEncodeH264CapabilityMultipleSlicePerFrame | ";
+ if ( value & VideoEncodeH264CapabilitiesFlagBitsEXT::eVkVideoEncodeH264CapabilityEvenlyDistributedSliceSize )
+ result += "VkVideoEncodeH264CapabilityEvenlyDistributedSliceSize | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using VideoEncodeH264InputModeFlagsEXT = Flags<VideoEncodeH264InputModeFlagBitsEXT>;
+
+ template <>
+ struct FlagTraits<VideoEncodeH264InputModeFlagBitsEXT>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( VideoEncodeH264InputModeFlagBitsEXT::eFrame ) |
+ VkFlags( VideoEncodeH264InputModeFlagBitsEXT::eSlice ) |
+ VkFlags( VideoEncodeH264InputModeFlagBitsEXT::eNonVcl )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoEncodeH264InputModeFlagsEXT
+ operator|( VideoEncodeH264InputModeFlagBitsEXT bit0, VideoEncodeH264InputModeFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return VideoEncodeH264InputModeFlagsEXT( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoEncodeH264InputModeFlagsEXT
+ operator&(VideoEncodeH264InputModeFlagBitsEXT bit0, VideoEncodeH264InputModeFlagBitsEXT bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return VideoEncodeH264InputModeFlagsEXT( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoEncodeH264InputModeFlagsEXT
+ operator^( VideoEncodeH264InputModeFlagBitsEXT bit0, VideoEncodeH264InputModeFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return VideoEncodeH264InputModeFlagsEXT( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoEncodeH264InputModeFlagsEXT
+ operator~( VideoEncodeH264InputModeFlagBitsEXT bits ) VULKAN_HPP_NOEXCEPT
+ {
+ return ~( VideoEncodeH264InputModeFlagsEXT( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( VideoEncodeH264InputModeFlagsEXT value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & VideoEncodeH264InputModeFlagBitsEXT::eFrame )
+ result += "Frame | ";
+ if ( value & VideoEncodeH264InputModeFlagBitsEXT::eSlice )
+ result += "Slice | ";
+ if ( value & VideoEncodeH264InputModeFlagBitsEXT::eNonVcl )
+ result += "NonVcl | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using VideoEncodeH264OutputModeFlagsEXT = Flags<VideoEncodeH264OutputModeFlagBitsEXT>;
+
+ template <>
+ struct FlagTraits<VideoEncodeH264OutputModeFlagBitsEXT>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( VideoEncodeH264OutputModeFlagBitsEXT::eFrame ) |
+ VkFlags( VideoEncodeH264OutputModeFlagBitsEXT::eSlice ) |
+ VkFlags( VideoEncodeH264OutputModeFlagBitsEXT::eNonVcl )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoEncodeH264OutputModeFlagsEXT operator|(
+ VideoEncodeH264OutputModeFlagBitsEXT bit0, VideoEncodeH264OutputModeFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return VideoEncodeH264OutputModeFlagsEXT( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoEncodeH264OutputModeFlagsEXT
+ operator&(VideoEncodeH264OutputModeFlagBitsEXT bit0, VideoEncodeH264OutputModeFlagBitsEXT bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return VideoEncodeH264OutputModeFlagsEXT( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoEncodeH264OutputModeFlagsEXT operator^(
+ VideoEncodeH264OutputModeFlagBitsEXT bit0, VideoEncodeH264OutputModeFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return VideoEncodeH264OutputModeFlagsEXT( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoEncodeH264OutputModeFlagsEXT
+ operator~( VideoEncodeH264OutputModeFlagBitsEXT bits ) VULKAN_HPP_NOEXCEPT
+ {
+ return ~( VideoEncodeH264OutputModeFlagsEXT( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( VideoEncodeH264OutputModeFlagsEXT value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & VideoEncodeH264OutputModeFlagBitsEXT::eFrame )
+ result += "Frame | ";
+ if ( value & VideoEncodeH264OutputModeFlagBitsEXT::eSlice )
+ result += "Slice | ";
+ if ( value & VideoEncodeH264OutputModeFlagBitsEXT::eNonVcl )
+ result += "NonVcl | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using VideoEncodeH264CreateFlagsEXT = Flags<VideoEncodeH264CreateFlagBitsEXT>;
+
+ template <>
+ struct FlagTraits<VideoEncodeH264CreateFlagBitsEXT>
+ {
+ enum : VkFlags
+ {
+ allFlags =
+ VkFlags( VideoEncodeH264CreateFlagBitsEXT::eDefault ) | VkFlags( VideoEncodeH264CreateFlagBitsEXT::eReserved0 )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoEncodeH264CreateFlagsEXT
+ operator|( VideoEncodeH264CreateFlagBitsEXT bit0, VideoEncodeH264CreateFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return VideoEncodeH264CreateFlagsEXT( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoEncodeH264CreateFlagsEXT
+ operator&(VideoEncodeH264CreateFlagBitsEXT bit0, VideoEncodeH264CreateFlagBitsEXT bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return VideoEncodeH264CreateFlagsEXT( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoEncodeH264CreateFlagsEXT
+ operator^( VideoEncodeH264CreateFlagBitsEXT bit0, VideoEncodeH264CreateFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return VideoEncodeH264CreateFlagsEXT( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoEncodeH264CreateFlagsEXT
+ operator~( VideoEncodeH264CreateFlagBitsEXT bits ) VULKAN_HPP_NOEXCEPT
+ {
+ return ~( VideoEncodeH264CreateFlagsEXT( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( VideoEncodeH264CreateFlagsEXT value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & VideoEncodeH264CreateFlagBitsEXT::eReserved0 )
+ result += "Reserved0 | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ //=== VK_EXT_video_decode_h264 ===
+
+ using VideoDecodeH264FieldLayoutFlagsEXT = Flags<VideoDecodeH264FieldLayoutFlagBitsEXT>;
+
+ template <>
+ struct FlagTraits<VideoDecodeH264FieldLayoutFlagBitsEXT>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( VideoDecodeH264FieldLayoutFlagBitsEXT::eVkVideoDecodeH264ProgressivePicturesOnly ) |
+ VkFlags( VideoDecodeH264FieldLayoutFlagBitsEXT::eLineInterlacedPlane ) |
+ VkFlags( VideoDecodeH264FieldLayoutFlagBitsEXT::eSeparateInterlacedPlane )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoDecodeH264FieldLayoutFlagsEXT operator|(
+ VideoDecodeH264FieldLayoutFlagBitsEXT bit0, VideoDecodeH264FieldLayoutFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return VideoDecodeH264FieldLayoutFlagsEXT( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoDecodeH264FieldLayoutFlagsEXT
+ operator&(VideoDecodeH264FieldLayoutFlagBitsEXT bit0, VideoDecodeH264FieldLayoutFlagBitsEXT bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return VideoDecodeH264FieldLayoutFlagsEXT( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoDecodeH264FieldLayoutFlagsEXT operator^(
+ VideoDecodeH264FieldLayoutFlagBitsEXT bit0, VideoDecodeH264FieldLayoutFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return VideoDecodeH264FieldLayoutFlagsEXT( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoDecodeH264FieldLayoutFlagsEXT
+ operator~( VideoDecodeH264FieldLayoutFlagBitsEXT bits ) VULKAN_HPP_NOEXCEPT
+ {
+ return ~( VideoDecodeH264FieldLayoutFlagsEXT( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( VideoDecodeH264FieldLayoutFlagsEXT value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & VideoDecodeH264FieldLayoutFlagBitsEXT::eLineInterlacedPlane )
+ result += "LineInterlacedPlane | ";
+ if ( value & VideoDecodeH264FieldLayoutFlagBitsEXT::eSeparateInterlacedPlane )
+ result += "SeparateInterlacedPlane | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using VideoDecodeH264CreateFlagsEXT = Flags<VideoDecodeH264CreateFlagBitsEXT>;
+
+ VULKAN_HPP_INLINE std::string to_string( VideoDecodeH264CreateFlagsEXT )
+ {
+ return "{}";
+ }
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+#if defined( VK_USE_PLATFORM_GGP )
+ //=== VK_GGP_stream_descriptor_surface ===
+
+ using StreamDescriptorSurfaceCreateFlagsGGP = Flags<StreamDescriptorSurfaceCreateFlagBitsGGP>;
+
+ VULKAN_HPP_INLINE std::string to_string( StreamDescriptorSurfaceCreateFlagsGGP )
+ {
+ return "{}";
+ }
+#endif /*VK_USE_PLATFORM_GGP*/
+
+ //=== VK_NV_external_memory_capabilities ===
+
+ using ExternalMemoryHandleTypeFlagsNV = Flags<ExternalMemoryHandleTypeFlagBitsNV>;
+
+ template <>
+ struct FlagTraits<ExternalMemoryHandleTypeFlagBitsNV>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( ExternalMemoryHandleTypeFlagBitsNV::eOpaqueWin32 ) |
+ VkFlags( ExternalMemoryHandleTypeFlagBitsNV::eOpaqueWin32Kmt ) |
+ VkFlags( ExternalMemoryHandleTypeFlagBitsNV::eD3D11Image ) |
+ VkFlags( ExternalMemoryHandleTypeFlagBitsNV::eD3D11ImageKmt )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalMemoryHandleTypeFlagsNV
+ operator|( ExternalMemoryHandleTypeFlagBitsNV bit0, ExternalMemoryHandleTypeFlagBitsNV bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return ExternalMemoryHandleTypeFlagsNV( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalMemoryHandleTypeFlagsNV
+ operator&(ExternalMemoryHandleTypeFlagBitsNV bit0, ExternalMemoryHandleTypeFlagBitsNV bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return ExternalMemoryHandleTypeFlagsNV( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalMemoryHandleTypeFlagsNV
+ operator^( ExternalMemoryHandleTypeFlagBitsNV bit0, ExternalMemoryHandleTypeFlagBitsNV bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return ExternalMemoryHandleTypeFlagsNV( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalMemoryHandleTypeFlagsNV
+ operator~( ExternalMemoryHandleTypeFlagBitsNV bits ) VULKAN_HPP_NOEXCEPT
+ {
+ return ~( ExternalMemoryHandleTypeFlagsNV( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( ExternalMemoryHandleTypeFlagsNV value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & ExternalMemoryHandleTypeFlagBitsNV::eOpaqueWin32 )
+ result += "OpaqueWin32 | ";
+ if ( value & ExternalMemoryHandleTypeFlagBitsNV::eOpaqueWin32Kmt )
+ result += "OpaqueWin32Kmt | ";
+ if ( value & ExternalMemoryHandleTypeFlagBitsNV::eD3D11Image )
+ result += "D3D11Image | ";
+ if ( value & ExternalMemoryHandleTypeFlagBitsNV::eD3D11ImageKmt )
+ result += "D3D11ImageKmt | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using ExternalMemoryFeatureFlagsNV = Flags<ExternalMemoryFeatureFlagBitsNV>;
+
+ template <>
+ struct FlagTraits<ExternalMemoryFeatureFlagBitsNV>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( ExternalMemoryFeatureFlagBitsNV::eDedicatedOnly ) |
+ VkFlags( ExternalMemoryFeatureFlagBitsNV::eExportable ) |
+ VkFlags( ExternalMemoryFeatureFlagBitsNV::eImportable )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalMemoryFeatureFlagsNV
+ operator|( ExternalMemoryFeatureFlagBitsNV bit0, ExternalMemoryFeatureFlagBitsNV bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return ExternalMemoryFeatureFlagsNV( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalMemoryFeatureFlagsNV
+ operator&(ExternalMemoryFeatureFlagBitsNV bit0, ExternalMemoryFeatureFlagBitsNV bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return ExternalMemoryFeatureFlagsNV( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalMemoryFeatureFlagsNV
+ operator^( ExternalMemoryFeatureFlagBitsNV bit0, ExternalMemoryFeatureFlagBitsNV bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return ExternalMemoryFeatureFlagsNV( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalMemoryFeatureFlagsNV operator~( ExternalMemoryFeatureFlagBitsNV bits )
+ VULKAN_HPP_NOEXCEPT
+ {
+ return ~( ExternalMemoryFeatureFlagsNV( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( ExternalMemoryFeatureFlagsNV value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & ExternalMemoryFeatureFlagBitsNV::eDedicatedOnly )
+ result += "DedicatedOnly | ";
+ if ( value & ExternalMemoryFeatureFlagBitsNV::eExportable )
+ result += "Exportable | ";
+ if ( value & ExternalMemoryFeatureFlagBitsNV::eImportable )
+ result += "Importable | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+#if defined( VK_USE_PLATFORM_VI_NN )
+ //=== VK_NN_vi_surface ===
+
+ using ViSurfaceCreateFlagsNN = Flags<ViSurfaceCreateFlagBitsNN>;
+
+ VULKAN_HPP_INLINE std::string to_string( ViSurfaceCreateFlagsNN )
+ {
+ return "{}";
+ }
+#endif /*VK_USE_PLATFORM_VI_NN*/
+
+ //=== VK_EXT_conditional_rendering ===
+
+ using ConditionalRenderingFlagsEXT = Flags<ConditionalRenderingFlagBitsEXT>;
+
+ template <>
+ struct FlagTraits<ConditionalRenderingFlagBitsEXT>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( ConditionalRenderingFlagBitsEXT::eInverted )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ConditionalRenderingFlagsEXT
+ operator|( ConditionalRenderingFlagBitsEXT bit0, ConditionalRenderingFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return ConditionalRenderingFlagsEXT( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ConditionalRenderingFlagsEXT
+ operator&(ConditionalRenderingFlagBitsEXT bit0, ConditionalRenderingFlagBitsEXT bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return ConditionalRenderingFlagsEXT( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ConditionalRenderingFlagsEXT
+ operator^( ConditionalRenderingFlagBitsEXT bit0, ConditionalRenderingFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return ConditionalRenderingFlagsEXT( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ConditionalRenderingFlagsEXT operator~( ConditionalRenderingFlagBitsEXT bits )
+ VULKAN_HPP_NOEXCEPT
+ {
+ return ~( ConditionalRenderingFlagsEXT( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( ConditionalRenderingFlagsEXT value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & ConditionalRenderingFlagBitsEXT::eInverted )
+ result += "Inverted | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ //=== VK_EXT_display_surface_counter ===
+
+ using SurfaceCounterFlagsEXT = Flags<SurfaceCounterFlagBitsEXT>;
+
+ template <>
+ struct FlagTraits<SurfaceCounterFlagBitsEXT>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( SurfaceCounterFlagBitsEXT::eVblank )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SurfaceCounterFlagsEXT
+ operator|( SurfaceCounterFlagBitsEXT bit0, SurfaceCounterFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return SurfaceCounterFlagsEXT( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SurfaceCounterFlagsEXT
+ operator&(SurfaceCounterFlagBitsEXT bit0, SurfaceCounterFlagBitsEXT bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return SurfaceCounterFlagsEXT( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SurfaceCounterFlagsEXT
+ operator^( SurfaceCounterFlagBitsEXT bit0, SurfaceCounterFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return SurfaceCounterFlagsEXT( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SurfaceCounterFlagsEXT operator~( SurfaceCounterFlagBitsEXT bits )
+ VULKAN_HPP_NOEXCEPT
+ {
+ return ~( SurfaceCounterFlagsEXT( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( SurfaceCounterFlagsEXT value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & SurfaceCounterFlagBitsEXT::eVblank )
+ result += "Vblank | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ //=== VK_NV_viewport_swizzle ===
+
+ using PipelineViewportSwizzleStateCreateFlagsNV = Flags<PipelineViewportSwizzleStateCreateFlagBitsNV>;
+
+ VULKAN_HPP_INLINE std::string to_string( PipelineViewportSwizzleStateCreateFlagsNV )
+ {
+ return "{}";
+ }
+
+ //=== VK_EXT_discard_rectangles ===
+
+ using PipelineDiscardRectangleStateCreateFlagsEXT = Flags<PipelineDiscardRectangleStateCreateFlagBitsEXT>;
+
+ VULKAN_HPP_INLINE std::string to_string( PipelineDiscardRectangleStateCreateFlagsEXT )
+ {
+ return "{}";
+ }
+
+ //=== VK_EXT_conservative_rasterization ===
+
+ using PipelineRasterizationConservativeStateCreateFlagsEXT =
+ Flags<PipelineRasterizationConservativeStateCreateFlagBitsEXT>;
+
+ VULKAN_HPP_INLINE std::string to_string( PipelineRasterizationConservativeStateCreateFlagsEXT )
+ {
+ return "{}";
+ }
+
+ //=== VK_EXT_depth_clip_enable ===
+
+ using PipelineRasterizationDepthClipStateCreateFlagsEXT = Flags<PipelineRasterizationDepthClipStateCreateFlagBitsEXT>;
+
+ VULKAN_HPP_INLINE std::string to_string( PipelineRasterizationDepthClipStateCreateFlagsEXT )
+ {
+ return "{}";
+ }
+
+ //=== VK_KHR_performance_query ===
+
+ using PerformanceCounterDescriptionFlagsKHR = Flags<PerformanceCounterDescriptionFlagBitsKHR>;
+
+ template <>
+ struct FlagTraits<PerformanceCounterDescriptionFlagBitsKHR>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( PerformanceCounterDescriptionFlagBitsKHR::ePerformanceImpacting ) |
+ VkFlags( PerformanceCounterDescriptionFlagBitsKHR::eConcurrentlyImpacted )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PerformanceCounterDescriptionFlagsKHR operator|(
+ PerformanceCounterDescriptionFlagBitsKHR bit0, PerformanceCounterDescriptionFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return PerformanceCounterDescriptionFlagsKHR( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PerformanceCounterDescriptionFlagsKHR operator&(
+ PerformanceCounterDescriptionFlagBitsKHR bit0, PerformanceCounterDescriptionFlagBitsKHR bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return PerformanceCounterDescriptionFlagsKHR( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PerformanceCounterDescriptionFlagsKHR operator^(
+ PerformanceCounterDescriptionFlagBitsKHR bit0, PerformanceCounterDescriptionFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return PerformanceCounterDescriptionFlagsKHR( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PerformanceCounterDescriptionFlagsKHR
+ operator~( PerformanceCounterDescriptionFlagBitsKHR bits ) VULKAN_HPP_NOEXCEPT
+ {
+ return ~( PerformanceCounterDescriptionFlagsKHR( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( PerformanceCounterDescriptionFlagsKHR value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & PerformanceCounterDescriptionFlagBitsKHR::ePerformanceImpacting )
+ result += "PerformanceImpacting | ";
+ if ( value & PerformanceCounterDescriptionFlagBitsKHR::eConcurrentlyImpacted )
+ result += "ConcurrentlyImpacted | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using AcquireProfilingLockFlagsKHR = Flags<AcquireProfilingLockFlagBitsKHR>;
+
+ VULKAN_HPP_INLINE std::string to_string( AcquireProfilingLockFlagsKHR )
+ {
+ return "{}";
+ }
+
+#if defined( VK_USE_PLATFORM_IOS_MVK )
+ //=== VK_MVK_ios_surface ===
+
+ using IOSSurfaceCreateFlagsMVK = Flags<IOSSurfaceCreateFlagBitsMVK>;
+
+ VULKAN_HPP_INLINE std::string to_string( IOSSurfaceCreateFlagsMVK )
+ {
+ return "{}";
+ }
+#endif /*VK_USE_PLATFORM_IOS_MVK*/
+
+#if defined( VK_USE_PLATFORM_MACOS_MVK )
+ //=== VK_MVK_macos_surface ===
+
+ using MacOSSurfaceCreateFlagsMVK = Flags<MacOSSurfaceCreateFlagBitsMVK>;
+
+ VULKAN_HPP_INLINE std::string to_string( MacOSSurfaceCreateFlagsMVK )
+ {
+ return "{}";
+ }
+#endif /*VK_USE_PLATFORM_MACOS_MVK*/
+
+ //=== VK_EXT_debug_utils ===
+
+ using DebugUtilsMessageSeverityFlagsEXT = Flags<DebugUtilsMessageSeverityFlagBitsEXT>;
+
+ template <>
+ struct FlagTraits<DebugUtilsMessageSeverityFlagBitsEXT>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( DebugUtilsMessageSeverityFlagBitsEXT::eVerbose ) |
+ VkFlags( DebugUtilsMessageSeverityFlagBitsEXT::eInfo ) |
+ VkFlags( DebugUtilsMessageSeverityFlagBitsEXT::eWarning ) |
+ VkFlags( DebugUtilsMessageSeverityFlagBitsEXT::eError )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DebugUtilsMessageSeverityFlagsEXT operator|(
+ DebugUtilsMessageSeverityFlagBitsEXT bit0, DebugUtilsMessageSeverityFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return DebugUtilsMessageSeverityFlagsEXT( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DebugUtilsMessageSeverityFlagsEXT
+ operator&(DebugUtilsMessageSeverityFlagBitsEXT bit0, DebugUtilsMessageSeverityFlagBitsEXT bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return DebugUtilsMessageSeverityFlagsEXT( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DebugUtilsMessageSeverityFlagsEXT operator^(
+ DebugUtilsMessageSeverityFlagBitsEXT bit0, DebugUtilsMessageSeverityFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return DebugUtilsMessageSeverityFlagsEXT( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DebugUtilsMessageSeverityFlagsEXT
+ operator~( DebugUtilsMessageSeverityFlagBitsEXT bits ) VULKAN_HPP_NOEXCEPT
+ {
+ return ~( DebugUtilsMessageSeverityFlagsEXT( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( DebugUtilsMessageSeverityFlagsEXT value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & DebugUtilsMessageSeverityFlagBitsEXT::eVerbose )
+ result += "Verbose | ";
+ if ( value & DebugUtilsMessageSeverityFlagBitsEXT::eInfo )
+ result += "Info | ";
+ if ( value & DebugUtilsMessageSeverityFlagBitsEXT::eWarning )
+ result += "Warning | ";
+ if ( value & DebugUtilsMessageSeverityFlagBitsEXT::eError )
+ result += "Error | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using DebugUtilsMessageTypeFlagsEXT = Flags<DebugUtilsMessageTypeFlagBitsEXT>;
+
+ template <>
+ struct FlagTraits<DebugUtilsMessageTypeFlagBitsEXT>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( DebugUtilsMessageTypeFlagBitsEXT::eGeneral ) |
+ VkFlags( DebugUtilsMessageTypeFlagBitsEXT::eValidation ) |
+ VkFlags( DebugUtilsMessageTypeFlagBitsEXT::ePerformance )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DebugUtilsMessageTypeFlagsEXT
+ operator|( DebugUtilsMessageTypeFlagBitsEXT bit0, DebugUtilsMessageTypeFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return DebugUtilsMessageTypeFlagsEXT( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DebugUtilsMessageTypeFlagsEXT
+ operator&(DebugUtilsMessageTypeFlagBitsEXT bit0, DebugUtilsMessageTypeFlagBitsEXT bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return DebugUtilsMessageTypeFlagsEXT( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DebugUtilsMessageTypeFlagsEXT
+ operator^( DebugUtilsMessageTypeFlagBitsEXT bit0, DebugUtilsMessageTypeFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return DebugUtilsMessageTypeFlagsEXT( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DebugUtilsMessageTypeFlagsEXT
+ operator~( DebugUtilsMessageTypeFlagBitsEXT bits ) VULKAN_HPP_NOEXCEPT
+ {
+ return ~( DebugUtilsMessageTypeFlagsEXT( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( DebugUtilsMessageTypeFlagsEXT value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & DebugUtilsMessageTypeFlagBitsEXT::eGeneral )
+ result += "General | ";
+ if ( value & DebugUtilsMessageTypeFlagBitsEXT::eValidation )
+ result += "Validation | ";
+ if ( value & DebugUtilsMessageTypeFlagBitsEXT::ePerformance )
+ result += "Performance | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using DebugUtilsMessengerCallbackDataFlagsEXT = Flags<DebugUtilsMessengerCallbackDataFlagBitsEXT>;
+
+ VULKAN_HPP_INLINE std::string to_string( DebugUtilsMessengerCallbackDataFlagsEXT )
+ {
+ return "{}";
+ }
+
+ using DebugUtilsMessengerCreateFlagsEXT = Flags<DebugUtilsMessengerCreateFlagBitsEXT>;
+
+ VULKAN_HPP_INLINE std::string to_string( DebugUtilsMessengerCreateFlagsEXT )
+ {
+ return "{}";
+ }
+
+ //=== VK_NV_fragment_coverage_to_color ===
+
+ using PipelineCoverageToColorStateCreateFlagsNV = Flags<PipelineCoverageToColorStateCreateFlagBitsNV>;
+
+ VULKAN_HPP_INLINE std::string to_string( PipelineCoverageToColorStateCreateFlagsNV )
+ {
+ return "{}";
+ }
+
+ //=== VK_KHR_acceleration_structure ===
+
+ using GeometryFlagsKHR = Flags<GeometryFlagBitsKHR>;
+
+ template <>
+ struct FlagTraits<GeometryFlagBitsKHR>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( GeometryFlagBitsKHR::eOpaque ) | VkFlags( GeometryFlagBitsKHR::eNoDuplicateAnyHitInvocation )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR GeometryFlagsKHR operator|( GeometryFlagBitsKHR bit0,
+ GeometryFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return GeometryFlagsKHR( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR GeometryFlagsKHR operator&(GeometryFlagBitsKHR bit0,
+ GeometryFlagBitsKHR bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return GeometryFlagsKHR( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR GeometryFlagsKHR operator^( GeometryFlagBitsKHR bit0,
+ GeometryFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return GeometryFlagsKHR( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR GeometryFlagsKHR operator~( GeometryFlagBitsKHR bits ) VULKAN_HPP_NOEXCEPT
+ {
+ return ~( GeometryFlagsKHR( bits ) );
+ }
+
+ using GeometryFlagsNV = GeometryFlagsKHR;
+
+ VULKAN_HPP_INLINE std::string to_string( GeometryFlagsKHR value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & GeometryFlagBitsKHR::eOpaque )
+ result += "Opaque | ";
+ if ( value & GeometryFlagBitsKHR::eNoDuplicateAnyHitInvocation )
+ result += "NoDuplicateAnyHitInvocation | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using GeometryInstanceFlagsKHR = Flags<GeometryInstanceFlagBitsKHR>;
+
+ template <>
+ struct FlagTraits<GeometryInstanceFlagBitsKHR>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( GeometryInstanceFlagBitsKHR::eTriangleFacingCullDisable ) |
+ VkFlags( GeometryInstanceFlagBitsKHR::eTriangleFrontCounterclockwise ) |
+ VkFlags( GeometryInstanceFlagBitsKHR::eForceOpaque ) |
+ VkFlags( GeometryInstanceFlagBitsKHR::eForceNoOpaque )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR GeometryInstanceFlagsKHR
+ operator|( GeometryInstanceFlagBitsKHR bit0, GeometryInstanceFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return GeometryInstanceFlagsKHR( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR GeometryInstanceFlagsKHR
+ operator&(GeometryInstanceFlagBitsKHR bit0, GeometryInstanceFlagBitsKHR bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return GeometryInstanceFlagsKHR( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR GeometryInstanceFlagsKHR
+ operator^( GeometryInstanceFlagBitsKHR bit0, GeometryInstanceFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return GeometryInstanceFlagsKHR( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR GeometryInstanceFlagsKHR operator~( GeometryInstanceFlagBitsKHR bits )
+ VULKAN_HPP_NOEXCEPT
+ {
+ return ~( GeometryInstanceFlagsKHR( bits ) );
+ }
+
+ using GeometryInstanceFlagsNV = GeometryInstanceFlagsKHR;
+
+ VULKAN_HPP_INLINE std::string to_string( GeometryInstanceFlagsKHR value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & GeometryInstanceFlagBitsKHR::eTriangleFacingCullDisable )
+ result += "TriangleFacingCullDisable | ";
+ if ( value & GeometryInstanceFlagBitsKHR::eTriangleFrontCounterclockwise )
+ result += "TriangleFrontCounterclockwise | ";
+ if ( value & GeometryInstanceFlagBitsKHR::eForceOpaque )
+ result += "ForceOpaque | ";
+ if ( value & GeometryInstanceFlagBitsKHR::eForceNoOpaque )
+ result += "ForceNoOpaque | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using BuildAccelerationStructureFlagsKHR = Flags<BuildAccelerationStructureFlagBitsKHR>;
+
+ template <>
+ struct FlagTraits<BuildAccelerationStructureFlagBitsKHR>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( BuildAccelerationStructureFlagBitsKHR::eAllowUpdate ) |
+ VkFlags( BuildAccelerationStructureFlagBitsKHR::eAllowCompaction ) |
+ VkFlags( BuildAccelerationStructureFlagBitsKHR::ePreferFastTrace ) |
+ VkFlags( BuildAccelerationStructureFlagBitsKHR::ePreferFastBuild ) |
+ VkFlags( BuildAccelerationStructureFlagBitsKHR::eLowMemory ) |
+ VkFlags( BuildAccelerationStructureFlagBitsKHR::eMotionNV )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR BuildAccelerationStructureFlagsKHR operator|(
+ BuildAccelerationStructureFlagBitsKHR bit0, BuildAccelerationStructureFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return BuildAccelerationStructureFlagsKHR( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR BuildAccelerationStructureFlagsKHR
+ operator&(BuildAccelerationStructureFlagBitsKHR bit0, BuildAccelerationStructureFlagBitsKHR bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return BuildAccelerationStructureFlagsKHR( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR BuildAccelerationStructureFlagsKHR operator^(
+ BuildAccelerationStructureFlagBitsKHR bit0, BuildAccelerationStructureFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return BuildAccelerationStructureFlagsKHR( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR BuildAccelerationStructureFlagsKHR
+ operator~( BuildAccelerationStructureFlagBitsKHR bits ) VULKAN_HPP_NOEXCEPT
+ {
+ return ~( BuildAccelerationStructureFlagsKHR( bits ) );
+ }
+
+ using BuildAccelerationStructureFlagsNV = BuildAccelerationStructureFlagsKHR;
+
+ VULKAN_HPP_INLINE std::string to_string( BuildAccelerationStructureFlagsKHR value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & BuildAccelerationStructureFlagBitsKHR::eAllowUpdate )
+ result += "AllowUpdate | ";
+ if ( value & BuildAccelerationStructureFlagBitsKHR::eAllowCompaction )
+ result += "AllowCompaction | ";
+ if ( value & BuildAccelerationStructureFlagBitsKHR::ePreferFastTrace )
+ result += "PreferFastTrace | ";
+ if ( value & BuildAccelerationStructureFlagBitsKHR::ePreferFastBuild )
+ result += "PreferFastBuild | ";
+ if ( value & BuildAccelerationStructureFlagBitsKHR::eLowMemory )
+ result += "LowMemory | ";
+ if ( value & BuildAccelerationStructureFlagBitsKHR::eMotionNV )
+ result += "MotionNV | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using AccelerationStructureCreateFlagsKHR = Flags<AccelerationStructureCreateFlagBitsKHR>;
+
+ template <>
+ struct FlagTraits<AccelerationStructureCreateFlagBitsKHR>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( AccelerationStructureCreateFlagBitsKHR::eDeviceAddressCaptureReplay ) |
+ VkFlags( AccelerationStructureCreateFlagBitsKHR::eMotionNV )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR AccelerationStructureCreateFlagsKHR operator|(
+ AccelerationStructureCreateFlagBitsKHR bit0, AccelerationStructureCreateFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return AccelerationStructureCreateFlagsKHR( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR AccelerationStructureCreateFlagsKHR operator&(
+ AccelerationStructureCreateFlagBitsKHR bit0, AccelerationStructureCreateFlagBitsKHR bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return AccelerationStructureCreateFlagsKHR( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR AccelerationStructureCreateFlagsKHR operator^(
+ AccelerationStructureCreateFlagBitsKHR bit0, AccelerationStructureCreateFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return AccelerationStructureCreateFlagsKHR( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR AccelerationStructureCreateFlagsKHR
+ operator~( AccelerationStructureCreateFlagBitsKHR bits ) VULKAN_HPP_NOEXCEPT
+ {
+ return ~( AccelerationStructureCreateFlagsKHR( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( AccelerationStructureCreateFlagsKHR value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & AccelerationStructureCreateFlagBitsKHR::eDeviceAddressCaptureReplay )
+ result += "DeviceAddressCaptureReplay | ";
+ if ( value & AccelerationStructureCreateFlagBitsKHR::eMotionNV )
+ result += "MotionNV | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ //=== VK_NV_framebuffer_mixed_samples ===
+
+ using PipelineCoverageModulationStateCreateFlagsNV = Flags<PipelineCoverageModulationStateCreateFlagBitsNV>;
+
+ VULKAN_HPP_INLINE std::string to_string( PipelineCoverageModulationStateCreateFlagsNV )
+ {
+ return "{}";
+ }
+
+ //=== VK_EXT_validation_cache ===
+
+ using ValidationCacheCreateFlagsEXT = Flags<ValidationCacheCreateFlagBitsEXT>;
+
+ VULKAN_HPP_INLINE std::string to_string( ValidationCacheCreateFlagsEXT )
+ {
+ return "{}";
+ }
+
+ //=== VK_AMD_pipeline_compiler_control ===
+
+ using PipelineCompilerControlFlagsAMD = Flags<PipelineCompilerControlFlagBitsAMD>;
+
+ VULKAN_HPP_INLINE std::string to_string( PipelineCompilerControlFlagsAMD )
+ {
+ return "{}";
+ }
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ //=== VK_EXT_video_decode_h265 ===
+
+ using VideoDecodeH265CreateFlagsEXT = Flags<VideoDecodeH265CreateFlagBitsEXT>;
+
+ VULKAN_HPP_INLINE std::string to_string( VideoDecodeH265CreateFlagsEXT )
+ {
+ return "{}";
+ }
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+ //=== VK_EXT_pipeline_creation_feedback ===
+
+ using PipelineCreationFeedbackFlagsEXT = Flags<PipelineCreationFeedbackFlagBitsEXT>;
+
+ template <>
+ struct FlagTraits<PipelineCreationFeedbackFlagBitsEXT>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( PipelineCreationFeedbackFlagBitsEXT::eValid ) |
+ VkFlags( PipelineCreationFeedbackFlagBitsEXT::eApplicationPipelineCacheHit ) |
+ VkFlags( PipelineCreationFeedbackFlagBitsEXT::eBasePipelineAcceleration )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineCreationFeedbackFlagsEXT
+ operator|( PipelineCreationFeedbackFlagBitsEXT bit0, PipelineCreationFeedbackFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return PipelineCreationFeedbackFlagsEXT( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineCreationFeedbackFlagsEXT
+ operator&(PipelineCreationFeedbackFlagBitsEXT bit0, PipelineCreationFeedbackFlagBitsEXT bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return PipelineCreationFeedbackFlagsEXT( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineCreationFeedbackFlagsEXT
+ operator^( PipelineCreationFeedbackFlagBitsEXT bit0, PipelineCreationFeedbackFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return PipelineCreationFeedbackFlagsEXT( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineCreationFeedbackFlagsEXT
+ operator~( PipelineCreationFeedbackFlagBitsEXT bits ) VULKAN_HPP_NOEXCEPT
+ {
+ return ~( PipelineCreationFeedbackFlagsEXT( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( PipelineCreationFeedbackFlagsEXT value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & PipelineCreationFeedbackFlagBitsEXT::eValid )
+ result += "Valid | ";
+ if ( value & PipelineCreationFeedbackFlagBitsEXT::eApplicationPipelineCacheHit )
+ result += "ApplicationPipelineCacheHit | ";
+ if ( value & PipelineCreationFeedbackFlagBitsEXT::eBasePipelineAcceleration )
+ result += "BasePipelineAcceleration | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+#if defined( VK_USE_PLATFORM_FUCHSIA )
+ //=== VK_FUCHSIA_imagepipe_surface ===
+
+ using ImagePipeSurfaceCreateFlagsFUCHSIA = Flags<ImagePipeSurfaceCreateFlagBitsFUCHSIA>;
+
+ VULKAN_HPP_INLINE std::string to_string( ImagePipeSurfaceCreateFlagsFUCHSIA )
+ {
+ return "{}";
+ }
+#endif /*VK_USE_PLATFORM_FUCHSIA*/
+
+#if defined( VK_USE_PLATFORM_METAL_EXT )
+ //=== VK_EXT_metal_surface ===
+
+ using MetalSurfaceCreateFlagsEXT = Flags<MetalSurfaceCreateFlagBitsEXT>;
+
+ VULKAN_HPP_INLINE std::string to_string( MetalSurfaceCreateFlagsEXT )
+ {
+ return "{}";
+ }
+#endif /*VK_USE_PLATFORM_METAL_EXT*/
+
+ //=== VK_AMD_shader_core_properties2 ===
+
+ using ShaderCorePropertiesFlagsAMD = Flags<ShaderCorePropertiesFlagBitsAMD>;
+
+ VULKAN_HPP_INLINE std::string to_string( ShaderCorePropertiesFlagsAMD )
+ {
+ return "{}";
+ }
+
+ //=== VK_EXT_tooling_info ===
+
+ using ToolPurposeFlagsEXT = Flags<ToolPurposeFlagBitsEXT>;
+
+ template <>
+ struct FlagTraits<ToolPurposeFlagBitsEXT>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( ToolPurposeFlagBitsEXT::eValidation ) | VkFlags( ToolPurposeFlagBitsEXT::eProfiling ) |
+ VkFlags( ToolPurposeFlagBitsEXT::eTracing ) | VkFlags( ToolPurposeFlagBitsEXT::eAdditionalFeatures ) |
+ VkFlags( ToolPurposeFlagBitsEXT::eModifyingFeatures ) |
+ VkFlags( ToolPurposeFlagBitsEXT::eDebugReporting ) | VkFlags( ToolPurposeFlagBitsEXT::eDebugMarkers )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ToolPurposeFlagsEXT
+ operator|( ToolPurposeFlagBitsEXT bit0, ToolPurposeFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return ToolPurposeFlagsEXT( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ToolPurposeFlagsEXT operator&(ToolPurposeFlagBitsEXT bit0,
+ ToolPurposeFlagBitsEXT bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return ToolPurposeFlagsEXT( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ToolPurposeFlagsEXT
+ operator^( ToolPurposeFlagBitsEXT bit0, ToolPurposeFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return ToolPurposeFlagsEXT( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ToolPurposeFlagsEXT operator~( ToolPurposeFlagBitsEXT bits )
+ VULKAN_HPP_NOEXCEPT
+ {
+ return ~( ToolPurposeFlagsEXT( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( ToolPurposeFlagsEXT value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & ToolPurposeFlagBitsEXT::eValidation )
+ result += "Validation | ";
+ if ( value & ToolPurposeFlagBitsEXT::eProfiling )
+ result += "Profiling | ";
+ if ( value & ToolPurposeFlagBitsEXT::eTracing )
+ result += "Tracing | ";
+ if ( value & ToolPurposeFlagBitsEXT::eAdditionalFeatures )
+ result += "AdditionalFeatures | ";
+ if ( value & ToolPurposeFlagBitsEXT::eModifyingFeatures )
+ result += "ModifyingFeatures | ";
+ if ( value & ToolPurposeFlagBitsEXT::eDebugReporting )
+ result += "DebugReporting | ";
+ if ( value & ToolPurposeFlagBitsEXT::eDebugMarkers )
+ result += "DebugMarkers | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ //=== VK_NV_coverage_reduction_mode ===
+
+ using PipelineCoverageReductionStateCreateFlagsNV = Flags<PipelineCoverageReductionStateCreateFlagBitsNV>;
+
+ VULKAN_HPP_INLINE std::string to_string( PipelineCoverageReductionStateCreateFlagsNV )
+ {
+ return "{}";
+ }
+
+ //=== VK_EXT_headless_surface ===
+
+ using HeadlessSurfaceCreateFlagsEXT = Flags<HeadlessSurfaceCreateFlagBitsEXT>;
+
+ VULKAN_HPP_INLINE std::string to_string( HeadlessSurfaceCreateFlagsEXT )
+ {
+ return "{}";
+ }
+
+ //=== VK_NV_device_generated_commands ===
+
+ using IndirectStateFlagsNV = Flags<IndirectStateFlagBitsNV>;
+
+ template <>
+ struct FlagTraits<IndirectStateFlagBitsNV>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( IndirectStateFlagBitsNV::eFlagFrontface )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR IndirectStateFlagsNV
+ operator|( IndirectStateFlagBitsNV bit0, IndirectStateFlagBitsNV bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return IndirectStateFlagsNV( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR IndirectStateFlagsNV operator&(IndirectStateFlagBitsNV bit0,
+ IndirectStateFlagBitsNV bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return IndirectStateFlagsNV( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR IndirectStateFlagsNV
+ operator^( IndirectStateFlagBitsNV bit0, IndirectStateFlagBitsNV bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return IndirectStateFlagsNV( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR IndirectStateFlagsNV operator~( IndirectStateFlagBitsNV bits )
+ VULKAN_HPP_NOEXCEPT
+ {
+ return ~( IndirectStateFlagsNV( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( IndirectStateFlagsNV value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & IndirectStateFlagBitsNV::eFlagFrontface )
+ result += "FlagFrontface | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using IndirectCommandsLayoutUsageFlagsNV = Flags<IndirectCommandsLayoutUsageFlagBitsNV>;
+
+ template <>
+ struct FlagTraits<IndirectCommandsLayoutUsageFlagBitsNV>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( IndirectCommandsLayoutUsageFlagBitsNV::eExplicitPreprocess ) |
+ VkFlags( IndirectCommandsLayoutUsageFlagBitsNV::eIndexedSequences ) |
+ VkFlags( IndirectCommandsLayoutUsageFlagBitsNV::eUnorderedSequences )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR IndirectCommandsLayoutUsageFlagsNV operator|(
+ IndirectCommandsLayoutUsageFlagBitsNV bit0, IndirectCommandsLayoutUsageFlagBitsNV bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return IndirectCommandsLayoutUsageFlagsNV( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR IndirectCommandsLayoutUsageFlagsNV
+ operator&(IndirectCommandsLayoutUsageFlagBitsNV bit0, IndirectCommandsLayoutUsageFlagBitsNV bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return IndirectCommandsLayoutUsageFlagsNV( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR IndirectCommandsLayoutUsageFlagsNV operator^(
+ IndirectCommandsLayoutUsageFlagBitsNV bit0, IndirectCommandsLayoutUsageFlagBitsNV bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return IndirectCommandsLayoutUsageFlagsNV( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR IndirectCommandsLayoutUsageFlagsNV
+ operator~( IndirectCommandsLayoutUsageFlagBitsNV bits ) VULKAN_HPP_NOEXCEPT
+ {
+ return ~( IndirectCommandsLayoutUsageFlagsNV( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( IndirectCommandsLayoutUsageFlagsNV value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & IndirectCommandsLayoutUsageFlagBitsNV::eExplicitPreprocess )
+ result += "ExplicitPreprocess | ";
+ if ( value & IndirectCommandsLayoutUsageFlagBitsNV::eIndexedSequences )
+ result += "IndexedSequences | ";
+ if ( value & IndirectCommandsLayoutUsageFlagBitsNV::eUnorderedSequences )
+ result += "UnorderedSequences | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ //=== VK_EXT_device_memory_report ===
+
+ using DeviceMemoryReportFlagsEXT = Flags<DeviceMemoryReportFlagBitsEXT>;
+
+ VULKAN_HPP_INLINE std::string to_string( DeviceMemoryReportFlagsEXT )
+ {
+ return "{}";
+ }
+
+ //=== VK_EXT_private_data ===
+
+ using PrivateDataSlotCreateFlagsEXT = Flags<PrivateDataSlotCreateFlagBitsEXT>;
+
+ VULKAN_HPP_INLINE std::string to_string( PrivateDataSlotCreateFlagsEXT )
+ {
+ return "{}";
+ }
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ //=== VK_KHR_video_encode_queue ===
+
+ using VideoEncodeFlagsKHR = Flags<VideoEncodeFlagBitsKHR>;
+
+ template <>
+ struct FlagTraits<VideoEncodeFlagBitsKHR>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( VideoEncodeFlagBitsKHR::eDefault ) | VkFlags( VideoEncodeFlagBitsKHR::eReserved0 )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoEncodeFlagsKHR
+ operator|( VideoEncodeFlagBitsKHR bit0, VideoEncodeFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return VideoEncodeFlagsKHR( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoEncodeFlagsKHR operator&(VideoEncodeFlagBitsKHR bit0,
+ VideoEncodeFlagBitsKHR bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return VideoEncodeFlagsKHR( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoEncodeFlagsKHR
+ operator^( VideoEncodeFlagBitsKHR bit0, VideoEncodeFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return VideoEncodeFlagsKHR( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoEncodeFlagsKHR operator~( VideoEncodeFlagBitsKHR bits )
+ VULKAN_HPP_NOEXCEPT
+ {
+ return ~( VideoEncodeFlagsKHR( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( VideoEncodeFlagsKHR value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & VideoEncodeFlagBitsKHR::eReserved0 )
+ result += "Reserved0 | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using VideoEncodeRateControlFlagsKHR = Flags<VideoEncodeRateControlFlagBitsKHR>;
+
+ template <>
+ struct FlagTraits<VideoEncodeRateControlFlagBitsKHR>
+ {
+ enum : VkFlags
+ {
+ allFlags =
+ VkFlags( VideoEncodeRateControlFlagBitsKHR::eDefault ) | VkFlags( VideoEncodeRateControlFlagBitsKHR::eReset )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoEncodeRateControlFlagsKHR
+ operator|( VideoEncodeRateControlFlagBitsKHR bit0, VideoEncodeRateControlFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return VideoEncodeRateControlFlagsKHR( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoEncodeRateControlFlagsKHR
+ operator&(VideoEncodeRateControlFlagBitsKHR bit0, VideoEncodeRateControlFlagBitsKHR bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return VideoEncodeRateControlFlagsKHR( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoEncodeRateControlFlagsKHR
+ operator^( VideoEncodeRateControlFlagBitsKHR bit0, VideoEncodeRateControlFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return VideoEncodeRateControlFlagsKHR( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoEncodeRateControlFlagsKHR
+ operator~( VideoEncodeRateControlFlagBitsKHR bits ) VULKAN_HPP_NOEXCEPT
+ {
+ return ~( VideoEncodeRateControlFlagsKHR( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( VideoEncodeRateControlFlagsKHR value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & VideoEncodeRateControlFlagBitsKHR::eReset )
+ result += "Reset | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using VideoEncodeRateControlModeFlagsKHR = Flags<VideoEncodeRateControlModeFlagBitsKHR>;
+
+ template <>
+ struct FlagTraits<VideoEncodeRateControlModeFlagBitsKHR>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( VideoEncodeRateControlModeFlagBitsKHR::eNone ) |
+ VkFlags( VideoEncodeRateControlModeFlagBitsKHR::eCbr ) |
+ VkFlags( VideoEncodeRateControlModeFlagBitsKHR::eVbr )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoEncodeRateControlModeFlagsKHR operator|(
+ VideoEncodeRateControlModeFlagBitsKHR bit0, VideoEncodeRateControlModeFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return VideoEncodeRateControlModeFlagsKHR( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoEncodeRateControlModeFlagsKHR
+ operator&(VideoEncodeRateControlModeFlagBitsKHR bit0, VideoEncodeRateControlModeFlagBitsKHR bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return VideoEncodeRateControlModeFlagsKHR( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoEncodeRateControlModeFlagsKHR operator^(
+ VideoEncodeRateControlModeFlagBitsKHR bit0, VideoEncodeRateControlModeFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return VideoEncodeRateControlModeFlagsKHR( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoEncodeRateControlModeFlagsKHR
+ operator~( VideoEncodeRateControlModeFlagBitsKHR bits ) VULKAN_HPP_NOEXCEPT
+ {
+ return ~( VideoEncodeRateControlModeFlagsKHR( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( VideoEncodeRateControlModeFlagsKHR value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+ //=== VK_NV_device_diagnostics_config ===
+
+ using DeviceDiagnosticsConfigFlagsNV = Flags<DeviceDiagnosticsConfigFlagBitsNV>;
+
+ template <>
+ struct FlagTraits<DeviceDiagnosticsConfigFlagBitsNV>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( DeviceDiagnosticsConfigFlagBitsNV::eEnableShaderDebugInfo ) |
+ VkFlags( DeviceDiagnosticsConfigFlagBitsNV::eEnableResourceTracking ) |
+ VkFlags( DeviceDiagnosticsConfigFlagBitsNV::eEnableAutomaticCheckpoints )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DeviceDiagnosticsConfigFlagsNV
+ operator|( DeviceDiagnosticsConfigFlagBitsNV bit0, DeviceDiagnosticsConfigFlagBitsNV bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return DeviceDiagnosticsConfigFlagsNV( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DeviceDiagnosticsConfigFlagsNV
+ operator&(DeviceDiagnosticsConfigFlagBitsNV bit0, DeviceDiagnosticsConfigFlagBitsNV bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return DeviceDiagnosticsConfigFlagsNV( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DeviceDiagnosticsConfigFlagsNV
+ operator^( DeviceDiagnosticsConfigFlagBitsNV bit0, DeviceDiagnosticsConfigFlagBitsNV bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return DeviceDiagnosticsConfigFlagsNV( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DeviceDiagnosticsConfigFlagsNV
+ operator~( DeviceDiagnosticsConfigFlagBitsNV bits ) VULKAN_HPP_NOEXCEPT
+ {
+ return ~( DeviceDiagnosticsConfigFlagsNV( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( DeviceDiagnosticsConfigFlagsNV value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & DeviceDiagnosticsConfigFlagBitsNV::eEnableShaderDebugInfo )
+ result += "EnableShaderDebugInfo | ";
+ if ( value & DeviceDiagnosticsConfigFlagBitsNV::eEnableResourceTracking )
+ result += "EnableResourceTracking | ";
+ if ( value & DeviceDiagnosticsConfigFlagBitsNV::eEnableAutomaticCheckpoints )
+ result += "EnableAutomaticCheckpoints | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ //=== VK_KHR_synchronization2 ===
+
+ using PipelineStageFlags2KHR = Flags<PipelineStageFlagBits2KHR>;
+
+ template <>
+ struct FlagTraits<PipelineStageFlagBits2KHR>
+ {
+ enum : VkFlags64
+ {
+ allFlags =
+ VkFlags64( PipelineStageFlagBits2KHR::eNone ) | VkFlags64( PipelineStageFlagBits2KHR::eTopOfPipe ) |
+ VkFlags64( PipelineStageFlagBits2KHR::eDrawIndirect ) | VkFlags64( PipelineStageFlagBits2KHR::eVertexInput ) |
+ VkFlags64( PipelineStageFlagBits2KHR::eVertexShader ) |
+ VkFlags64( PipelineStageFlagBits2KHR::eTessellationControlShader ) |
+ VkFlags64( PipelineStageFlagBits2KHR::eTessellationEvaluationShader ) |
+ VkFlags64( PipelineStageFlagBits2KHR::eGeometryShader ) |
+ VkFlags64( PipelineStageFlagBits2KHR::eFragmentShader ) |
+ VkFlags64( PipelineStageFlagBits2KHR::eEarlyFragmentTests ) |
+ VkFlags64( PipelineStageFlagBits2KHR::eLateFragmentTests ) |
+ VkFlags64( PipelineStageFlagBits2KHR::eColorAttachmentOutput ) |
+ VkFlags64( PipelineStageFlagBits2KHR::eComputeShader ) | VkFlags64( PipelineStageFlagBits2KHR::eAllTransfer ) |
+ VkFlags64( PipelineStageFlagBits2KHR::eBottomOfPipe ) | VkFlags64( PipelineStageFlagBits2KHR::eHost ) |
+ VkFlags64( PipelineStageFlagBits2KHR::eAllGraphics ) | VkFlags64( PipelineStageFlagBits2KHR::eAllCommands ) |
+ VkFlags64( PipelineStageFlagBits2KHR::eCopy ) | VkFlags64( PipelineStageFlagBits2KHR::eResolve ) |
+ VkFlags64( PipelineStageFlagBits2KHR::eBlit ) | VkFlags64( PipelineStageFlagBits2KHR::eClear ) |
+ VkFlags64( PipelineStageFlagBits2KHR::eIndexInput ) |
+ VkFlags64( PipelineStageFlagBits2KHR::eVertexAttributeInput ) |
+ VkFlags64( PipelineStageFlagBits2KHR::ePreRasterizationShaders )
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ | VkFlags64( PipelineStageFlagBits2KHR::eVideoDecode ) | VkFlags64( PipelineStageFlagBits2KHR::eVideoEncode )
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ | VkFlags64( PipelineStageFlagBits2KHR::eTransformFeedbackEXT ) |
+ VkFlags64( PipelineStageFlagBits2KHR::eConditionalRenderingEXT ) |
+ VkFlags64( PipelineStageFlagBits2KHR::eCommandPreprocessNV ) |
+ VkFlags64( PipelineStageFlagBits2KHR::eFragmentShadingRateAttachment ) |
+ VkFlags64( PipelineStageFlagBits2KHR::eAccelerationStructureBuild ) |
+ VkFlags64( PipelineStageFlagBits2KHR::eRayTracingShader ) |
+ VkFlags64( PipelineStageFlagBits2KHR::eFragmentDensityProcessEXT ) |
+ VkFlags64( PipelineStageFlagBits2KHR::eTaskShaderNV ) | VkFlags64( PipelineStageFlagBits2KHR::eMeshShaderNV ) |
+ VkFlags64( PipelineStageFlagBits2KHR::eSubpassShadingHUAWEI )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineStageFlags2KHR
+ operator|( PipelineStageFlagBits2KHR bit0, PipelineStageFlagBits2KHR bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return PipelineStageFlags2KHR( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineStageFlags2KHR
+ operator&(PipelineStageFlagBits2KHR bit0, PipelineStageFlagBits2KHR bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return PipelineStageFlags2KHR( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineStageFlags2KHR
+ operator^( PipelineStageFlagBits2KHR bit0, PipelineStageFlagBits2KHR bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return PipelineStageFlags2KHR( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineStageFlags2KHR operator~( PipelineStageFlagBits2KHR bits )
+ VULKAN_HPP_NOEXCEPT
+ {
+ return ~( PipelineStageFlags2KHR( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( PipelineStageFlags2KHR value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & PipelineStageFlagBits2KHR::eTopOfPipe )
+ result += "TopOfPipe | ";
+ if ( value & PipelineStageFlagBits2KHR::eDrawIndirect )
+ result += "DrawIndirect | ";
+ if ( value & PipelineStageFlagBits2KHR::eVertexInput )
+ result += "VertexInput | ";
+ if ( value & PipelineStageFlagBits2KHR::eVertexShader )
+ result += "VertexShader | ";
+ if ( value & PipelineStageFlagBits2KHR::eTessellationControlShader )
+ result += "TessellationControlShader | ";
+ if ( value & PipelineStageFlagBits2KHR::eTessellationEvaluationShader )
+ result += "TessellationEvaluationShader | ";
+ if ( value & PipelineStageFlagBits2KHR::eGeometryShader )
+ result += "GeometryShader | ";
+ if ( value & PipelineStageFlagBits2KHR::eFragmentShader )
+ result += "FragmentShader | ";
+ if ( value & PipelineStageFlagBits2KHR::eEarlyFragmentTests )
+ result += "EarlyFragmentTests | ";
+ if ( value & PipelineStageFlagBits2KHR::eLateFragmentTests )
+ result += "LateFragmentTests | ";
+ if ( value & PipelineStageFlagBits2KHR::eColorAttachmentOutput )
+ result += "ColorAttachmentOutput | ";
+ if ( value & PipelineStageFlagBits2KHR::eComputeShader )
+ result += "ComputeShader | ";
+ if ( value & PipelineStageFlagBits2KHR::eAllTransfer )
+ result += "AllTransfer | ";
+ if ( value & PipelineStageFlagBits2KHR::eBottomOfPipe )
+ result += "BottomOfPipe | ";
+ if ( value & PipelineStageFlagBits2KHR::eHost )
+ result += "Host | ";
+ if ( value & PipelineStageFlagBits2KHR::eAllGraphics )
+ result += "AllGraphics | ";
+ if ( value & PipelineStageFlagBits2KHR::eAllCommands )
+ result += "AllCommands | ";
+ if ( value & PipelineStageFlagBits2KHR::eCopy )
+ result += "Copy | ";
+ if ( value & PipelineStageFlagBits2KHR::eResolve )
+ result += "Resolve | ";
+ if ( value & PipelineStageFlagBits2KHR::eBlit )
+ result += "Blit | ";
+ if ( value & PipelineStageFlagBits2KHR::eClear )
+ result += "Clear | ";
+ if ( value & PipelineStageFlagBits2KHR::eIndexInput )
+ result += "IndexInput | ";
+ if ( value & PipelineStageFlagBits2KHR::eVertexAttributeInput )
+ result += "VertexAttributeInput | ";
+ if ( value & PipelineStageFlagBits2KHR::ePreRasterizationShaders )
+ result += "PreRasterizationShaders | ";
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ if ( value & PipelineStageFlagBits2KHR::eVideoDecode )
+ result += "VideoDecode | ";
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ if ( value & PipelineStageFlagBits2KHR::eVideoEncode )
+ result += "VideoEncode | ";
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ if ( value & PipelineStageFlagBits2KHR::eTransformFeedbackEXT )
+ result += "TransformFeedbackEXT | ";
+ if ( value & PipelineStageFlagBits2KHR::eConditionalRenderingEXT )
+ result += "ConditionalRenderingEXT | ";
+ if ( value & PipelineStageFlagBits2KHR::eCommandPreprocessNV )
+ result += "CommandPreprocessNV | ";
+ if ( value & PipelineStageFlagBits2KHR::eFragmentShadingRateAttachment )
+ result += "FragmentShadingRateAttachment | ";
+ if ( value & PipelineStageFlagBits2KHR::eAccelerationStructureBuild )
+ result += "AccelerationStructureBuild | ";
+ if ( value & PipelineStageFlagBits2KHR::eRayTracingShader )
+ result += "RayTracingShader | ";
+ if ( value & PipelineStageFlagBits2KHR::eFragmentDensityProcessEXT )
+ result += "FragmentDensityProcessEXT | ";
+ if ( value & PipelineStageFlagBits2KHR::eTaskShaderNV )
+ result += "TaskShaderNV | ";
+ if ( value & PipelineStageFlagBits2KHR::eMeshShaderNV )
+ result += "MeshShaderNV | ";
+ if ( value & PipelineStageFlagBits2KHR::eSubpassShadingHUAWEI )
+ result += "SubpassShadingHUAWEI | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using AccessFlags2KHR = Flags<AccessFlagBits2KHR>;
+
+ template <>
+ struct FlagTraits<AccessFlagBits2KHR>
+ {
+ enum : VkFlags64
+ {
+ allFlags =
+ VkFlags64( AccessFlagBits2KHR::eNone ) | VkFlags64( AccessFlagBits2KHR::eIndirectCommandRead ) |
+ VkFlags64( AccessFlagBits2KHR::eIndexRead ) | VkFlags64( AccessFlagBits2KHR::eVertexAttributeRead ) |
+ VkFlags64( AccessFlagBits2KHR::eUniformRead ) | VkFlags64( AccessFlagBits2KHR::eInputAttachmentRead ) |
+ VkFlags64( AccessFlagBits2KHR::eShaderRead ) | VkFlags64( AccessFlagBits2KHR::eShaderWrite ) |
+ VkFlags64( AccessFlagBits2KHR::eColorAttachmentRead ) | VkFlags64( AccessFlagBits2KHR::eColorAttachmentWrite ) |
+ VkFlags64( AccessFlagBits2KHR::eDepthStencilAttachmentRead ) |
+ VkFlags64( AccessFlagBits2KHR::eDepthStencilAttachmentWrite ) | VkFlags64( AccessFlagBits2KHR::eTransferRead ) |
+ VkFlags64( AccessFlagBits2KHR::eTransferWrite ) | VkFlags64( AccessFlagBits2KHR::eHostRead ) |
+ VkFlags64( AccessFlagBits2KHR::eHostWrite ) | VkFlags64( AccessFlagBits2KHR::eMemoryRead ) |
+ VkFlags64( AccessFlagBits2KHR::eMemoryWrite ) | VkFlags64( AccessFlagBits2KHR::eShaderSampledRead ) |
+ VkFlags64( AccessFlagBits2KHR::eShaderStorageRead ) | VkFlags64( AccessFlagBits2KHR::eShaderStorageWrite )
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ | VkFlags64( AccessFlagBits2KHR::eVideoDecodeRead ) | VkFlags64( AccessFlagBits2KHR::eVideoDecodeWrite ) |
+ VkFlags64( AccessFlagBits2KHR::eVideoEncodeRead ) | VkFlags64( AccessFlagBits2KHR::eVideoEncodeWrite )
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ | VkFlags64( AccessFlagBits2KHR::eTransformFeedbackWriteEXT ) |
+ VkFlags64( AccessFlagBits2KHR::eTransformFeedbackCounterReadEXT ) |
+ VkFlags64( AccessFlagBits2KHR::eTransformFeedbackCounterWriteEXT ) |
+ VkFlags64( AccessFlagBits2KHR::eConditionalRenderingReadEXT ) |
+ VkFlags64( AccessFlagBits2KHR::eCommandPreprocessReadNV ) |
+ VkFlags64( AccessFlagBits2KHR::eCommandPreprocessWriteNV ) |
+ VkFlags64( AccessFlagBits2KHR::eFragmentShadingRateAttachmentRead ) |
+ VkFlags64( AccessFlagBits2KHR::eAccelerationStructureRead ) |
+ VkFlags64( AccessFlagBits2KHR::eAccelerationStructureWrite ) |
+ VkFlags64( AccessFlagBits2KHR::eFragmentDensityMapReadEXT ) |
+ VkFlags64( AccessFlagBits2KHR::eColorAttachmentReadNoncoherentEXT )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR AccessFlags2KHR operator|( AccessFlagBits2KHR bit0,
+ AccessFlagBits2KHR bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return AccessFlags2KHR( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR AccessFlags2KHR operator&(AccessFlagBits2KHR bit0,
+ AccessFlagBits2KHR bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return AccessFlags2KHR( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR AccessFlags2KHR operator^( AccessFlagBits2KHR bit0,
+ AccessFlagBits2KHR bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return AccessFlags2KHR( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR AccessFlags2KHR operator~( AccessFlagBits2KHR bits ) VULKAN_HPP_NOEXCEPT
+ {
+ return ~( AccessFlags2KHR( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( AccessFlags2KHR value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & AccessFlagBits2KHR::eIndirectCommandRead )
+ result += "IndirectCommandRead | ";
+ if ( value & AccessFlagBits2KHR::eIndexRead )
+ result += "IndexRead | ";
+ if ( value & AccessFlagBits2KHR::eVertexAttributeRead )
+ result += "VertexAttributeRead | ";
+ if ( value & AccessFlagBits2KHR::eUniformRead )
+ result += "UniformRead | ";
+ if ( value & AccessFlagBits2KHR::eInputAttachmentRead )
+ result += "InputAttachmentRead | ";
+ if ( value & AccessFlagBits2KHR::eShaderRead )
+ result += "ShaderRead | ";
+ if ( value & AccessFlagBits2KHR::eShaderWrite )
+ result += "ShaderWrite | ";
+ if ( value & AccessFlagBits2KHR::eColorAttachmentRead )
+ result += "ColorAttachmentRead | ";
+ if ( value & AccessFlagBits2KHR::eColorAttachmentWrite )
+ result += "ColorAttachmentWrite | ";
+ if ( value & AccessFlagBits2KHR::eDepthStencilAttachmentRead )
+ result += "DepthStencilAttachmentRead | ";
+ if ( value & AccessFlagBits2KHR::eDepthStencilAttachmentWrite )
+ result += "DepthStencilAttachmentWrite | ";
+ if ( value & AccessFlagBits2KHR::eTransferRead )
+ result += "TransferRead | ";
+ if ( value & AccessFlagBits2KHR::eTransferWrite )
+ result += "TransferWrite | ";
+ if ( value & AccessFlagBits2KHR::eHostRead )
+ result += "HostRead | ";
+ if ( value & AccessFlagBits2KHR::eHostWrite )
+ result += "HostWrite | ";
+ if ( value & AccessFlagBits2KHR::eMemoryRead )
+ result += "MemoryRead | ";
+ if ( value & AccessFlagBits2KHR::eMemoryWrite )
+ result += "MemoryWrite | ";
+ if ( value & AccessFlagBits2KHR::eShaderSampledRead )
+ result += "ShaderSampledRead | ";
+ if ( value & AccessFlagBits2KHR::eShaderStorageRead )
+ result += "ShaderStorageRead | ";
+ if ( value & AccessFlagBits2KHR::eShaderStorageWrite )
+ result += "ShaderStorageWrite | ";
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ if ( value & AccessFlagBits2KHR::eVideoDecodeRead )
+ result += "VideoDecodeRead | ";
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ if ( value & AccessFlagBits2KHR::eVideoDecodeWrite )
+ result += "VideoDecodeWrite | ";
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ if ( value & AccessFlagBits2KHR::eVideoEncodeRead )
+ result += "VideoEncodeRead | ";
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ if ( value & AccessFlagBits2KHR::eVideoEncodeWrite )
+ result += "VideoEncodeWrite | ";
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ if ( value & AccessFlagBits2KHR::eTransformFeedbackWriteEXT )
+ result += "TransformFeedbackWriteEXT | ";
+ if ( value & AccessFlagBits2KHR::eTransformFeedbackCounterReadEXT )
+ result += "TransformFeedbackCounterReadEXT | ";
+ if ( value & AccessFlagBits2KHR::eTransformFeedbackCounterWriteEXT )
+ result += "TransformFeedbackCounterWriteEXT | ";
+ if ( value & AccessFlagBits2KHR::eConditionalRenderingReadEXT )
+ result += "ConditionalRenderingReadEXT | ";
+ if ( value & AccessFlagBits2KHR::eCommandPreprocessReadNV )
+ result += "CommandPreprocessReadNV | ";
+ if ( value & AccessFlagBits2KHR::eCommandPreprocessWriteNV )
+ result += "CommandPreprocessWriteNV | ";
+ if ( value & AccessFlagBits2KHR::eFragmentShadingRateAttachmentRead )
+ result += "FragmentShadingRateAttachmentRead | ";
+ if ( value & AccessFlagBits2KHR::eAccelerationStructureRead )
+ result += "AccelerationStructureRead | ";
+ if ( value & AccessFlagBits2KHR::eAccelerationStructureWrite )
+ result += "AccelerationStructureWrite | ";
+ if ( value & AccessFlagBits2KHR::eFragmentDensityMapReadEXT )
+ result += "FragmentDensityMapReadEXT | ";
+ if ( value & AccessFlagBits2KHR::eColorAttachmentReadNoncoherentEXT )
+ result += "ColorAttachmentReadNoncoherentEXT | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ using SubmitFlagsKHR = Flags<SubmitFlagBitsKHR>;
+
+ template <>
+ struct FlagTraits<SubmitFlagBitsKHR>
+ {
+ enum : VkFlags
+ {
+ allFlags = VkFlags( SubmitFlagBitsKHR::eProtected )
+ };
+ };
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SubmitFlagsKHR operator|( SubmitFlagBitsKHR bit0,
+ SubmitFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return SubmitFlagsKHR( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SubmitFlagsKHR operator&(SubmitFlagBitsKHR bit0,
+ SubmitFlagBitsKHR bit1)VULKAN_HPP_NOEXCEPT
+ {
+ return SubmitFlagsKHR( bit0 ) & bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SubmitFlagsKHR operator^( SubmitFlagBitsKHR bit0,
+ SubmitFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
+ {
+ return SubmitFlagsKHR( bit0 ) ^ bit1;
+ }
+
+ VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SubmitFlagsKHR operator~( SubmitFlagBitsKHR bits ) VULKAN_HPP_NOEXCEPT
+ {
+ return ~( SubmitFlagsKHR( bits ) );
+ }
+
+ VULKAN_HPP_INLINE std::string to_string( SubmitFlagsKHR value )
+ {
+ if ( !value )
+ return "{}";
+
+ std::string result;
+ if ( value & SubmitFlagBitsKHR::eProtected )
+ result += "Protected | ";
+ return "{ " + result.substr( 0, result.size() - 3 ) + " }";
+ }
+
+ //=== VK_NV_ray_tracing_motion_blur ===
+
+ using AccelerationStructureMotionInfoFlagsNV = Flags<AccelerationStructureMotionInfoFlagBitsNV>;
+
+ VULKAN_HPP_INLINE std::string to_string( AccelerationStructureMotionInfoFlagsNV )
+ {
+ return "{}";
+ }
+
+ using AccelerationStructureMotionInstanceFlagsNV = Flags<AccelerationStructureMotionInstanceFlagBitsNV>;
+
+ VULKAN_HPP_INLINE std::string to_string( AccelerationStructureMotionInstanceFlagsNV )
+ {
+ return "{}";
+ }
+
+#if defined( VK_USE_PLATFORM_DIRECTFB_EXT )
+ //=== VK_EXT_directfb_surface ===
+
+ using DirectFBSurfaceCreateFlagsEXT = Flags<DirectFBSurfaceCreateFlagBitsEXT>;
+
+ VULKAN_HPP_INLINE std::string to_string( DirectFBSurfaceCreateFlagsEXT )
+ {
+ return "{}";
+ }
+#endif /*VK_USE_PLATFORM_DIRECTFB_EXT*/
+
+#if defined( VK_USE_PLATFORM_SCREEN_QNX )
+ //=== VK_QNX_screen_surface ===
+
+ using ScreenSurfaceCreateFlagsQNX = Flags<ScreenSurfaceCreateFlagBitsQNX>;
+
+ VULKAN_HPP_INLINE std::string to_string( ScreenSurfaceCreateFlagsQNX )
+ {
+ return "{}";
+ }
+#endif /*VK_USE_PLATFORM_SCREEN_QNX*/
+
+} // namespace VULKAN_HPP_NAMESPACE
+#endif
diff --git a/thirdparty/vulkan/include/vulkan/vulkan_fuchsia.h b/thirdparty/vulkan/include/vulkan/vulkan_fuchsia.h
index 03e27cb0af..d558715738 100644
--- a/thirdparty/vulkan/include/vulkan/vulkan_fuchsia.h
+++ b/thirdparty/vulkan/include/vulkan/vulkan_fuchsia.h
@@ -2,7 +2,7 @@
#define VULKAN_FUCHSIA_H_ 1
/*
-** Copyright (c) 2015-2020 The Khronos Group Inc.
+** Copyright 2015-2021 The Khronos Group Inc.
**
** SPDX-License-Identifier: Apache-2.0
*/
@@ -40,6 +40,80 @@ VKAPI_ATTR VkResult VKAPI_CALL vkCreateImagePipeSurfaceFUCHSIA(
VkSurfaceKHR* pSurface);
#endif
+
+#define VK_FUCHSIA_external_memory 1
+#define VK_FUCHSIA_EXTERNAL_MEMORY_SPEC_VERSION 1
+#define VK_FUCHSIA_EXTERNAL_MEMORY_EXTENSION_NAME "VK_FUCHSIA_external_memory"
+typedef struct VkImportMemoryZirconHandleInfoFUCHSIA {
+ VkStructureType sType;
+ const void* pNext;
+ VkExternalMemoryHandleTypeFlagBits handleType;
+ zx_handle_t handle;
+} VkImportMemoryZirconHandleInfoFUCHSIA;
+
+typedef struct VkMemoryZirconHandlePropertiesFUCHSIA {
+ VkStructureType sType;
+ void* pNext;
+ uint32_t memoryTypeBits;
+} VkMemoryZirconHandlePropertiesFUCHSIA;
+
+typedef struct VkMemoryGetZirconHandleInfoFUCHSIA {
+ VkStructureType sType;
+ const void* pNext;
+ VkDeviceMemory memory;
+ VkExternalMemoryHandleTypeFlagBits handleType;
+} VkMemoryGetZirconHandleInfoFUCHSIA;
+
+typedef VkResult (VKAPI_PTR *PFN_vkGetMemoryZirconHandleFUCHSIA)(VkDevice device, const VkMemoryGetZirconHandleInfoFUCHSIA* pGetZirconHandleInfo, zx_handle_t* pZirconHandle);
+typedef VkResult (VKAPI_PTR *PFN_vkGetMemoryZirconHandlePropertiesFUCHSIA)(VkDevice device, VkExternalMemoryHandleTypeFlagBits handleType, zx_handle_t zirconHandle, VkMemoryZirconHandlePropertiesFUCHSIA* pMemoryZirconHandleProperties);
+
+#ifndef VK_NO_PROTOTYPES
+VKAPI_ATTR VkResult VKAPI_CALL vkGetMemoryZirconHandleFUCHSIA(
+ VkDevice device,
+ const VkMemoryGetZirconHandleInfoFUCHSIA* pGetZirconHandleInfo,
+ zx_handle_t* pZirconHandle);
+
+VKAPI_ATTR VkResult VKAPI_CALL vkGetMemoryZirconHandlePropertiesFUCHSIA(
+ VkDevice device,
+ VkExternalMemoryHandleTypeFlagBits handleType,
+ zx_handle_t zirconHandle,
+ VkMemoryZirconHandlePropertiesFUCHSIA* pMemoryZirconHandleProperties);
+#endif
+
+
+#define VK_FUCHSIA_external_semaphore 1
+#define VK_FUCHSIA_EXTERNAL_SEMAPHORE_SPEC_VERSION 1
+#define VK_FUCHSIA_EXTERNAL_SEMAPHORE_EXTENSION_NAME "VK_FUCHSIA_external_semaphore"
+typedef struct VkImportSemaphoreZirconHandleInfoFUCHSIA {
+ VkStructureType sType;
+ const void* pNext;
+ VkSemaphore semaphore;
+ VkSemaphoreImportFlags flags;
+ VkExternalSemaphoreHandleTypeFlagBits handleType;
+ zx_handle_t zirconHandle;
+} VkImportSemaphoreZirconHandleInfoFUCHSIA;
+
+typedef struct VkSemaphoreGetZirconHandleInfoFUCHSIA {
+ VkStructureType sType;
+ const void* pNext;
+ VkSemaphore semaphore;
+ VkExternalSemaphoreHandleTypeFlagBits handleType;
+} VkSemaphoreGetZirconHandleInfoFUCHSIA;
+
+typedef VkResult (VKAPI_PTR *PFN_vkImportSemaphoreZirconHandleFUCHSIA)(VkDevice device, const VkImportSemaphoreZirconHandleInfoFUCHSIA* pImportSemaphoreZirconHandleInfo);
+typedef VkResult (VKAPI_PTR *PFN_vkGetSemaphoreZirconHandleFUCHSIA)(VkDevice device, const VkSemaphoreGetZirconHandleInfoFUCHSIA* pGetZirconHandleInfo, zx_handle_t* pZirconHandle);
+
+#ifndef VK_NO_PROTOTYPES
+VKAPI_ATTR VkResult VKAPI_CALL vkImportSemaphoreZirconHandleFUCHSIA(
+ VkDevice device,
+ const VkImportSemaphoreZirconHandleInfoFUCHSIA* pImportSemaphoreZirconHandleInfo);
+
+VKAPI_ATTR VkResult VKAPI_CALL vkGetSemaphoreZirconHandleFUCHSIA(
+ VkDevice device,
+ const VkSemaphoreGetZirconHandleInfoFUCHSIA* pGetZirconHandleInfo,
+ zx_handle_t* pZirconHandle);
+#endif
+
#ifdef __cplusplus
}
#endif
diff --git a/thirdparty/vulkan/include/vulkan/vulkan_funcs.hpp b/thirdparty/vulkan/include/vulkan/vulkan_funcs.hpp
new file mode 100644
index 0000000000..544cbddfa9
--- /dev/null
+++ b/thirdparty/vulkan/include/vulkan/vulkan_funcs.hpp
@@ -0,0 +1,18209 @@
+// Copyright 2015-2021 The Khronos Group Inc.
+//
+// SPDX-License-Identifier: Apache-2.0 OR MIT
+//
+
+// This header is generated from the Khronos Vulkan XML API Registry.
+
+#ifndef VULKAN_FUNCS_HPP
+#define VULKAN_FUNCS_HPP
+
+namespace VULKAN_HPP_NAMESPACE
+{
+ //===========================
+ //=== COMMAND Definitions ===
+ //===========================
+
+ //=== VK_VERSION_1_0 ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ createInstance( const VULKAN_HPP_NAMESPACE::InstanceCreateInfo * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::Instance * pInstance,
+ Dispatch const & d ) VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkCreateInstance( reinterpret_cast<const VkInstanceCreateInfo *>( pCreateInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkInstance *>( pInstance ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::Instance>::type
+ createInstance( const InstanceCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d )
+ {
+ VULKAN_HPP_NAMESPACE::Instance instance;
+ Result result = static_cast<Result>(
+ d.vkCreateInstance( reinterpret_cast<const VkInstanceCreateInfo *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkInstance *>( &instance ) ) );
+ return createResultValue( result, instance, VULKAN_HPP_NAMESPACE_STRING "::createInstance" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::Instance, Dispatch>>::type
+ createInstanceUnique( const InstanceCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d )
+ {
+ VULKAN_HPP_NAMESPACE::Instance instance;
+ Result result = static_cast<Result>(
+ d.vkCreateInstance( reinterpret_cast<const VkInstanceCreateInfo *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkInstance *>( &instance ) ) );
+ ObjectDestroy<NoParent, Dispatch> deleter( allocator, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::Instance, Dispatch>(
+ result, instance, VULKAN_HPP_NAMESPACE_STRING "::createInstanceUnique", deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Instance::destroy( const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyInstance( m_instance, reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Instance::destroy( Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyInstance( m_instance,
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Instance::enumeratePhysicalDevices( uint32_t * pPhysicalDeviceCount,
+ VULKAN_HPP_NAMESPACE::PhysicalDevice * pPhysicalDevices,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkEnumeratePhysicalDevices(
+ m_instance, pPhysicalDeviceCount, reinterpret_cast<VkPhysicalDevice *>( pPhysicalDevices ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename PhysicalDeviceAllocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<PhysicalDevice, PhysicalDeviceAllocator>>::type
+ Instance::enumeratePhysicalDevices( Dispatch const & d ) const
+ {
+ std::vector<PhysicalDevice, PhysicalDeviceAllocator> physicalDevices;
+ uint32_t physicalDeviceCount;
+ Result result;
+ do
+ {
+ result = static_cast<Result>( d.vkEnumeratePhysicalDevices( m_instance, &physicalDeviceCount, nullptr ) );
+ if ( ( result == Result::eSuccess ) && physicalDeviceCount )
+ {
+ physicalDevices.resize( physicalDeviceCount );
+ result = static_cast<Result>( d.vkEnumeratePhysicalDevices(
+ m_instance, &physicalDeviceCount, reinterpret_cast<VkPhysicalDevice *>( physicalDevices.data() ) ) );
+ VULKAN_HPP_ASSERT( physicalDeviceCount <= physicalDevices.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( physicalDeviceCount < physicalDevices.size() ) )
+ {
+ physicalDevices.resize( physicalDeviceCount );
+ }
+ return createResultValue(
+ result, physicalDevices, VULKAN_HPP_NAMESPACE_STRING "::Instance::enumeratePhysicalDevices" );
+ }
+
+ template <typename PhysicalDeviceAllocator,
+ typename Dispatch,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, PhysicalDevice>::value, int>::type>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<PhysicalDevice, PhysicalDeviceAllocator>>::type
+ Instance::enumeratePhysicalDevices( PhysicalDeviceAllocator & physicalDeviceAllocator, Dispatch const & d ) const
+ {
+ std::vector<PhysicalDevice, PhysicalDeviceAllocator> physicalDevices( physicalDeviceAllocator );
+ uint32_t physicalDeviceCount;
+ Result result;
+ do
+ {
+ result = static_cast<Result>( d.vkEnumeratePhysicalDevices( m_instance, &physicalDeviceCount, nullptr ) );
+ if ( ( result == Result::eSuccess ) && physicalDeviceCount )
+ {
+ physicalDevices.resize( physicalDeviceCount );
+ result = static_cast<Result>( d.vkEnumeratePhysicalDevices(
+ m_instance, &physicalDeviceCount, reinterpret_cast<VkPhysicalDevice *>( physicalDevices.data() ) ) );
+ VULKAN_HPP_ASSERT( physicalDeviceCount <= physicalDevices.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( physicalDeviceCount < physicalDevices.size() ) )
+ {
+ physicalDevices.resize( physicalDeviceCount );
+ }
+ return createResultValue(
+ result, physicalDevices, VULKAN_HPP_NAMESPACE_STRING "::Instance::enumeratePhysicalDevices" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void PhysicalDevice::getFeatures( VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures * pFeatures,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkGetPhysicalDeviceFeatures( m_physicalDevice, reinterpret_cast<VkPhysicalDeviceFeatures *>( pFeatures ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures
+ PhysicalDevice::getFeatures( Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures features;
+ d.vkGetPhysicalDeviceFeatures( m_physicalDevice, reinterpret_cast<VkPhysicalDeviceFeatures *>( &features ) );
+ return features;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ PhysicalDevice::getFormatProperties( VULKAN_HPP_NAMESPACE::Format format,
+ VULKAN_HPP_NAMESPACE::FormatProperties * pFormatProperties,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkGetPhysicalDeviceFormatProperties(
+ m_physicalDevice, static_cast<VkFormat>( format ), reinterpret_cast<VkFormatProperties *>( pFormatProperties ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::FormatProperties
+ PhysicalDevice::getFormatProperties( VULKAN_HPP_NAMESPACE::Format format,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_NAMESPACE::FormatProperties formatProperties;
+ d.vkGetPhysicalDeviceFormatProperties(
+ m_physicalDevice, static_cast<VkFormat>( format ), reinterpret_cast<VkFormatProperties *>( &formatProperties ) );
+ return formatProperties;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ PhysicalDevice::getImageFormatProperties( VULKAN_HPP_NAMESPACE::Format format,
+ VULKAN_HPP_NAMESPACE::ImageType type,
+ VULKAN_HPP_NAMESPACE::ImageTiling tiling,
+ VULKAN_HPP_NAMESPACE::ImageUsageFlags usage,
+ VULKAN_HPP_NAMESPACE::ImageCreateFlags flags,
+ VULKAN_HPP_NAMESPACE::ImageFormatProperties * pImageFormatProperties,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkGetPhysicalDeviceImageFormatProperties(
+ m_physicalDevice,
+ static_cast<VkFormat>( format ),
+ static_cast<VkImageType>( type ),
+ static_cast<VkImageTiling>( tiling ),
+ static_cast<VkImageUsageFlags>( usage ),
+ static_cast<VkImageCreateFlags>( flags ),
+ reinterpret_cast<VkImageFormatProperties *>( pImageFormatProperties ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::ImageFormatProperties>::type
+ PhysicalDevice::getImageFormatProperties( VULKAN_HPP_NAMESPACE::Format format,
+ VULKAN_HPP_NAMESPACE::ImageType type,
+ VULKAN_HPP_NAMESPACE::ImageTiling tiling,
+ VULKAN_HPP_NAMESPACE::ImageUsageFlags usage,
+ VULKAN_HPP_NAMESPACE::ImageCreateFlags flags,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::ImageFormatProperties imageFormatProperties;
+ Result result = static_cast<Result>( d.vkGetPhysicalDeviceImageFormatProperties(
+ m_physicalDevice,
+ static_cast<VkFormat>( format ),
+ static_cast<VkImageType>( type ),
+ static_cast<VkImageTiling>( tiling ),
+ static_cast<VkImageUsageFlags>( usage ),
+ static_cast<VkImageCreateFlags>( flags ),
+ reinterpret_cast<VkImageFormatProperties *>( &imageFormatProperties ) ) );
+ return createResultValue(
+ result, imageFormatProperties, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getImageFormatProperties" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void PhysicalDevice::getProperties( VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties * pProperties,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkGetPhysicalDeviceProperties( m_physicalDevice, reinterpret_cast<VkPhysicalDeviceProperties *>( pProperties ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties
+ PhysicalDevice::getProperties( Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties properties;
+ d.vkGetPhysicalDeviceProperties( m_physicalDevice, reinterpret_cast<VkPhysicalDeviceProperties *>( &properties ) );
+ return properties;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ PhysicalDevice::getQueueFamilyProperties( uint32_t * pQueueFamilyPropertyCount,
+ VULKAN_HPP_NAMESPACE::QueueFamilyProperties * pQueueFamilyProperties,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkGetPhysicalDeviceQueueFamilyProperties( m_physicalDevice,
+ pQueueFamilyPropertyCount,
+ reinterpret_cast<VkQueueFamilyProperties *>( pQueueFamilyProperties ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename QueueFamilyPropertiesAllocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<QueueFamilyProperties, QueueFamilyPropertiesAllocator>
+ PhysicalDevice::getQueueFamilyProperties( Dispatch const & d ) const
+ {
+ std::vector<QueueFamilyProperties, QueueFamilyPropertiesAllocator> queueFamilyProperties;
+ uint32_t queueFamilyPropertyCount;
+ d.vkGetPhysicalDeviceQueueFamilyProperties( m_physicalDevice, &queueFamilyPropertyCount, nullptr );
+ queueFamilyProperties.resize( queueFamilyPropertyCount );
+ d.vkGetPhysicalDeviceQueueFamilyProperties(
+ m_physicalDevice,
+ &queueFamilyPropertyCount,
+ reinterpret_cast<VkQueueFamilyProperties *>( queueFamilyProperties.data() ) );
+ VULKAN_HPP_ASSERT( queueFamilyPropertyCount <= queueFamilyProperties.size() );
+ return queueFamilyProperties;
+ }
+
+ template <typename QueueFamilyPropertiesAllocator,
+ typename Dispatch,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, QueueFamilyProperties>::value, int>::type>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<QueueFamilyProperties, QueueFamilyPropertiesAllocator>
+ PhysicalDevice::getQueueFamilyProperties( QueueFamilyPropertiesAllocator & queueFamilyPropertiesAllocator,
+ Dispatch const & d ) const
+ {
+ std::vector<QueueFamilyProperties, QueueFamilyPropertiesAllocator> queueFamilyProperties(
+ queueFamilyPropertiesAllocator );
+ uint32_t queueFamilyPropertyCount;
+ d.vkGetPhysicalDeviceQueueFamilyProperties( m_physicalDevice, &queueFamilyPropertyCount, nullptr );
+ queueFamilyProperties.resize( queueFamilyPropertyCount );
+ d.vkGetPhysicalDeviceQueueFamilyProperties(
+ m_physicalDevice,
+ &queueFamilyPropertyCount,
+ reinterpret_cast<VkQueueFamilyProperties *>( queueFamilyProperties.data() ) );
+ VULKAN_HPP_ASSERT( queueFamilyPropertyCount <= queueFamilyProperties.size() );
+ return queueFamilyProperties;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ PhysicalDevice::getMemoryProperties( VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties * pMemoryProperties,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkGetPhysicalDeviceMemoryProperties( m_physicalDevice,
+ reinterpret_cast<VkPhysicalDeviceMemoryProperties *>( pMemoryProperties ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties
+ PhysicalDevice::getMemoryProperties( Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties memoryProperties;
+ d.vkGetPhysicalDeviceMemoryProperties( m_physicalDevice,
+ reinterpret_cast<VkPhysicalDeviceMemoryProperties *>( &memoryProperties ) );
+ return memoryProperties;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE PFN_vkVoidFunction Instance::getProcAddr( const char * pName,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return d.vkGetInstanceProcAddr( m_instance, pName );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE PFN_vkVoidFunction Instance::getProcAddr( const std::string & name,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return d.vkGetInstanceProcAddr( m_instance, name.c_str() );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE PFN_vkVoidFunction Device::getProcAddr( const char * pName,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return d.vkGetDeviceProcAddr( m_device, pName );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE PFN_vkVoidFunction Device::getProcAddr( const std::string & name,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return d.vkGetDeviceProcAddr( m_device, name.c_str() );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ PhysicalDevice::createDevice( const VULKAN_HPP_NAMESPACE::DeviceCreateInfo * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::Device * pDevice,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkCreateDevice( m_physicalDevice,
+ reinterpret_cast<const VkDeviceCreateInfo *>( pCreateInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkDevice *>( pDevice ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::Device>::type
+ PhysicalDevice::createDevice( const DeviceCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::Device device;
+ Result result = static_cast<Result>(
+ d.vkCreateDevice( m_physicalDevice,
+ reinterpret_cast<const VkDeviceCreateInfo *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkDevice *>( &device ) ) );
+ return createResultValue( result, device, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::createDevice" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::Device, Dispatch>>::type
+ PhysicalDevice::createDeviceUnique( const DeviceCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::Device device;
+ Result result = static_cast<Result>(
+ d.vkCreateDevice( m_physicalDevice,
+ reinterpret_cast<const VkDeviceCreateInfo *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkDevice *>( &device ) ) );
+ ObjectDestroy<NoParent, Dispatch> deleter( allocator, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::Device, Dispatch>(
+ result, device, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::createDeviceUnique", deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyDevice( m_device, reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyDevice( m_device,
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ enumerateInstanceExtensionProperties( const char * pLayerName,
+ uint32_t * pPropertyCount,
+ VULKAN_HPP_NAMESPACE::ExtensionProperties * pProperties,
+ Dispatch const & d ) VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkEnumerateInstanceExtensionProperties(
+ pLayerName, pPropertyCount, reinterpret_cast<VkExtensionProperties *>( pProperties ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename ExtensionPropertiesAllocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<ExtensionProperties, ExtensionPropertiesAllocator>>::type
+ enumerateInstanceExtensionProperties( Optional<const std::string> layerName, Dispatch const & d )
+ {
+ std::vector<ExtensionProperties, ExtensionPropertiesAllocator> properties;
+ uint32_t propertyCount;
+ Result result;
+ do
+ {
+ result = static_cast<Result>(
+ d.vkEnumerateInstanceExtensionProperties( layerName ? layerName->c_str() : nullptr, &propertyCount, nullptr ) );
+ if ( ( result == Result::eSuccess ) && propertyCount )
+ {
+ properties.resize( propertyCount );
+ result = static_cast<Result>(
+ d.vkEnumerateInstanceExtensionProperties( layerName ? layerName->c_str() : nullptr,
+ &propertyCount,
+ reinterpret_cast<VkExtensionProperties *>( properties.data() ) ) );
+ VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( propertyCount < properties.size() ) )
+ {
+ properties.resize( propertyCount );
+ }
+ return createResultValue(
+ result, properties, VULKAN_HPP_NAMESPACE_STRING "::enumerateInstanceExtensionProperties" );
+ }
+
+ template <typename ExtensionPropertiesAllocator,
+ typename Dispatch,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, ExtensionProperties>::value, int>::type>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<ExtensionProperties, ExtensionPropertiesAllocator>>::type
+ enumerateInstanceExtensionProperties( Optional<const std::string> layerName,
+ ExtensionPropertiesAllocator & extensionPropertiesAllocator,
+ Dispatch const & d )
+ {
+ std::vector<ExtensionProperties, ExtensionPropertiesAllocator> properties( extensionPropertiesAllocator );
+ uint32_t propertyCount;
+ Result result;
+ do
+ {
+ result = static_cast<Result>(
+ d.vkEnumerateInstanceExtensionProperties( layerName ? layerName->c_str() : nullptr, &propertyCount, nullptr ) );
+ if ( ( result == Result::eSuccess ) && propertyCount )
+ {
+ properties.resize( propertyCount );
+ result = static_cast<Result>(
+ d.vkEnumerateInstanceExtensionProperties( layerName ? layerName->c_str() : nullptr,
+ &propertyCount,
+ reinterpret_cast<VkExtensionProperties *>( properties.data() ) ) );
+ VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( propertyCount < properties.size() ) )
+ {
+ properties.resize( propertyCount );
+ }
+ return createResultValue(
+ result, properties, VULKAN_HPP_NAMESPACE_STRING "::enumerateInstanceExtensionProperties" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ PhysicalDevice::enumerateDeviceExtensionProperties( const char * pLayerName,
+ uint32_t * pPropertyCount,
+ VULKAN_HPP_NAMESPACE::ExtensionProperties * pProperties,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkEnumerateDeviceExtensionProperties(
+ m_physicalDevice, pLayerName, pPropertyCount, reinterpret_cast<VkExtensionProperties *>( pProperties ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename ExtensionPropertiesAllocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<ExtensionProperties, ExtensionPropertiesAllocator>>::type
+ PhysicalDevice::enumerateDeviceExtensionProperties( Optional<const std::string> layerName,
+ Dispatch const & d ) const
+ {
+ std::vector<ExtensionProperties, ExtensionPropertiesAllocator> properties;
+ uint32_t propertyCount;
+ Result result;
+ do
+ {
+ result = static_cast<Result>( d.vkEnumerateDeviceExtensionProperties(
+ m_physicalDevice, layerName ? layerName->c_str() : nullptr, &propertyCount, nullptr ) );
+ if ( ( result == Result::eSuccess ) && propertyCount )
+ {
+ properties.resize( propertyCount );
+ result = static_cast<Result>(
+ d.vkEnumerateDeviceExtensionProperties( m_physicalDevice,
+ layerName ? layerName->c_str() : nullptr,
+ &propertyCount,
+ reinterpret_cast<VkExtensionProperties *>( properties.data() ) ) );
+ VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( propertyCount < properties.size() ) )
+ {
+ properties.resize( propertyCount );
+ }
+ return createResultValue(
+ result, properties, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::enumerateDeviceExtensionProperties" );
+ }
+
+ template <typename ExtensionPropertiesAllocator,
+ typename Dispatch,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, ExtensionProperties>::value, int>::type>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<ExtensionProperties, ExtensionPropertiesAllocator>>::type
+ PhysicalDevice::enumerateDeviceExtensionProperties( Optional<const std::string> layerName,
+ ExtensionPropertiesAllocator & extensionPropertiesAllocator,
+ Dispatch const & d ) const
+ {
+ std::vector<ExtensionProperties, ExtensionPropertiesAllocator> properties( extensionPropertiesAllocator );
+ uint32_t propertyCount;
+ Result result;
+ do
+ {
+ result = static_cast<Result>( d.vkEnumerateDeviceExtensionProperties(
+ m_physicalDevice, layerName ? layerName->c_str() : nullptr, &propertyCount, nullptr ) );
+ if ( ( result == Result::eSuccess ) && propertyCount )
+ {
+ properties.resize( propertyCount );
+ result = static_cast<Result>(
+ d.vkEnumerateDeviceExtensionProperties( m_physicalDevice,
+ layerName ? layerName->c_str() : nullptr,
+ &propertyCount,
+ reinterpret_cast<VkExtensionProperties *>( properties.data() ) ) );
+ VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( propertyCount < properties.size() ) )
+ {
+ properties.resize( propertyCount );
+ }
+ return createResultValue(
+ result, properties, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::enumerateDeviceExtensionProperties" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ enumerateInstanceLayerProperties( uint32_t * pPropertyCount,
+ VULKAN_HPP_NAMESPACE::LayerProperties * pProperties,
+ Dispatch const & d ) VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkEnumerateInstanceLayerProperties( pPropertyCount, reinterpret_cast<VkLayerProperties *>( pProperties ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename LayerPropertiesAllocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<LayerProperties, LayerPropertiesAllocator>>::type
+ enumerateInstanceLayerProperties( Dispatch const & d )
+ {
+ std::vector<LayerProperties, LayerPropertiesAllocator> properties;
+ uint32_t propertyCount;
+ Result result;
+ do
+ {
+ result = static_cast<Result>( d.vkEnumerateInstanceLayerProperties( &propertyCount, nullptr ) );
+ if ( ( result == Result::eSuccess ) && propertyCount )
+ {
+ properties.resize( propertyCount );
+ result = static_cast<Result>( d.vkEnumerateInstanceLayerProperties(
+ &propertyCount, reinterpret_cast<VkLayerProperties *>( properties.data() ) ) );
+ VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( propertyCount < properties.size() ) )
+ {
+ properties.resize( propertyCount );
+ }
+ return createResultValue( result, properties, VULKAN_HPP_NAMESPACE_STRING "::enumerateInstanceLayerProperties" );
+ }
+
+ template <typename LayerPropertiesAllocator,
+ typename Dispatch,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, LayerProperties>::value, int>::type>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<LayerProperties, LayerPropertiesAllocator>>::type
+ enumerateInstanceLayerProperties( LayerPropertiesAllocator & layerPropertiesAllocator, Dispatch const & d )
+ {
+ std::vector<LayerProperties, LayerPropertiesAllocator> properties( layerPropertiesAllocator );
+ uint32_t propertyCount;
+ Result result;
+ do
+ {
+ result = static_cast<Result>( d.vkEnumerateInstanceLayerProperties( &propertyCount, nullptr ) );
+ if ( ( result == Result::eSuccess ) && propertyCount )
+ {
+ properties.resize( propertyCount );
+ result = static_cast<Result>( d.vkEnumerateInstanceLayerProperties(
+ &propertyCount, reinterpret_cast<VkLayerProperties *>( properties.data() ) ) );
+ VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( propertyCount < properties.size() ) )
+ {
+ properties.resize( propertyCount );
+ }
+ return createResultValue( result, properties, VULKAN_HPP_NAMESPACE_STRING "::enumerateInstanceLayerProperties" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ PhysicalDevice::enumerateDeviceLayerProperties( uint32_t * pPropertyCount,
+ VULKAN_HPP_NAMESPACE::LayerProperties * pProperties,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkEnumerateDeviceLayerProperties(
+ m_physicalDevice, pPropertyCount, reinterpret_cast<VkLayerProperties *>( pProperties ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename LayerPropertiesAllocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<LayerProperties, LayerPropertiesAllocator>>::type
+ PhysicalDevice::enumerateDeviceLayerProperties( Dispatch const & d ) const
+ {
+ std::vector<LayerProperties, LayerPropertiesAllocator> properties;
+ uint32_t propertyCount;
+ Result result;
+ do
+ {
+ result = static_cast<Result>( d.vkEnumerateDeviceLayerProperties( m_physicalDevice, &propertyCount, nullptr ) );
+ if ( ( result == Result::eSuccess ) && propertyCount )
+ {
+ properties.resize( propertyCount );
+ result = static_cast<Result>( d.vkEnumerateDeviceLayerProperties(
+ m_physicalDevice, &propertyCount, reinterpret_cast<VkLayerProperties *>( properties.data() ) ) );
+ VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( propertyCount < properties.size() ) )
+ {
+ properties.resize( propertyCount );
+ }
+ return createResultValue(
+ result, properties, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::enumerateDeviceLayerProperties" );
+ }
+
+ template <typename LayerPropertiesAllocator,
+ typename Dispatch,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, LayerProperties>::value, int>::type>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<LayerProperties, LayerPropertiesAllocator>>::type
+ PhysicalDevice::enumerateDeviceLayerProperties( LayerPropertiesAllocator & layerPropertiesAllocator,
+ Dispatch const & d ) const
+ {
+ std::vector<LayerProperties, LayerPropertiesAllocator> properties( layerPropertiesAllocator );
+ uint32_t propertyCount;
+ Result result;
+ do
+ {
+ result = static_cast<Result>( d.vkEnumerateDeviceLayerProperties( m_physicalDevice, &propertyCount, nullptr ) );
+ if ( ( result == Result::eSuccess ) && propertyCount )
+ {
+ properties.resize( propertyCount );
+ result = static_cast<Result>( d.vkEnumerateDeviceLayerProperties(
+ m_physicalDevice, &propertyCount, reinterpret_cast<VkLayerProperties *>( properties.data() ) ) );
+ VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( propertyCount < properties.size() ) )
+ {
+ properties.resize( propertyCount );
+ }
+ return createResultValue(
+ result, properties, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::enumerateDeviceLayerProperties" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::getQueue( uint32_t queueFamilyIndex,
+ uint32_t queueIndex,
+ VULKAN_HPP_NAMESPACE::Queue * pQueue,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkGetDeviceQueue( m_device, queueFamilyIndex, queueIndex, reinterpret_cast<VkQueue *>( pQueue ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::Queue
+ Device::getQueue( uint32_t queueFamilyIndex, uint32_t queueIndex, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_NAMESPACE::Queue queue;
+ d.vkGetDeviceQueue( m_device, queueFamilyIndex, queueIndex, reinterpret_cast<VkQueue *>( &queue ) );
+ return queue;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Queue::submit( uint32_t submitCount,
+ const VULKAN_HPP_NAMESPACE::SubmitInfo * pSubmits,
+ VULKAN_HPP_NAMESPACE::Fence fence,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkQueueSubmit(
+ m_queue, submitCount, reinterpret_cast<const VkSubmitInfo *>( pSubmits ), static_cast<VkFence>( fence ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type
+ Queue::submit( ArrayProxy<const VULKAN_HPP_NAMESPACE::SubmitInfo> const & submits,
+ VULKAN_HPP_NAMESPACE::Fence fence,
+ Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>( d.vkQueueSubmit( m_queue,
+ submits.size(),
+ reinterpret_cast<const VkSubmitInfo *>( submits.data() ),
+ static_cast<VkFence>( fence ) ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Queue::submit" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Queue::waitIdle( Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkQueueWaitIdle( m_queue ) );
+ }
+#else
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type
+ Queue::waitIdle( Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>( d.vkQueueWaitIdle( m_queue ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Queue::waitIdle" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::waitIdle( Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkDeviceWaitIdle( m_device ) );
+ }
+#else
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type
+ Device::waitIdle( Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>( d.vkDeviceWaitIdle( m_device ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::waitIdle" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::allocateMemory( const VULKAN_HPP_NAMESPACE::MemoryAllocateInfo * pAllocateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::DeviceMemory * pMemory,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkAllocateMemory( m_device,
+ reinterpret_cast<const VkMemoryAllocateInfo *>( pAllocateInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkDeviceMemory *>( pMemory ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::DeviceMemory>::type
+ Device::allocateMemory( const MemoryAllocateInfo & allocateInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::DeviceMemory memory;
+ Result result = static_cast<Result>(
+ d.vkAllocateMemory( m_device,
+ reinterpret_cast<const VkMemoryAllocateInfo *>( &allocateInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkDeviceMemory *>( &memory ) ) );
+ return createResultValue( result, memory, VULKAN_HPP_NAMESPACE_STRING "::Device::allocateMemory" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::DeviceMemory, Dispatch>>::type
+ Device::allocateMemoryUnique( const MemoryAllocateInfo & allocateInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::DeviceMemory memory;
+ Result result = static_cast<Result>(
+ d.vkAllocateMemory( m_device,
+ reinterpret_cast<const VkMemoryAllocateInfo *>( &allocateInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkDeviceMemory *>( &memory ) ) );
+ ObjectFree<Device, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::DeviceMemory, Dispatch>(
+ result, memory, VULKAN_HPP_NAMESPACE_STRING "::Device::allocateMemoryUnique", deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::freeMemory( VULKAN_HPP_NAMESPACE::DeviceMemory memory,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkFreeMemory(
+ m_device, static_cast<VkDeviceMemory>( memory ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::freeMemory( VULKAN_HPP_NAMESPACE::DeviceMemory memory,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkFreeMemory( m_device,
+ static_cast<VkDeviceMemory>( memory ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::free( VULKAN_HPP_NAMESPACE::DeviceMemory memory,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkFreeMemory(
+ m_device, static_cast<VkDeviceMemory>( memory ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::free( VULKAN_HPP_NAMESPACE::DeviceMemory memory,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkFreeMemory( m_device,
+ static_cast<VkDeviceMemory>( memory ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::mapMemory( VULKAN_HPP_NAMESPACE::DeviceMemory memory,
+ VULKAN_HPP_NAMESPACE::DeviceSize offset,
+ VULKAN_HPP_NAMESPACE::DeviceSize size,
+ VULKAN_HPP_NAMESPACE::MemoryMapFlags flags,
+ void ** ppData,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkMapMemory( m_device,
+ static_cast<VkDeviceMemory>( memory ),
+ static_cast<VkDeviceSize>( offset ),
+ static_cast<VkDeviceSize>( size ),
+ static_cast<VkMemoryMapFlags>( flags ),
+ ppData ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void *>::type
+ Device::mapMemory( VULKAN_HPP_NAMESPACE::DeviceMemory memory,
+ VULKAN_HPP_NAMESPACE::DeviceSize offset,
+ VULKAN_HPP_NAMESPACE::DeviceSize size,
+ VULKAN_HPP_NAMESPACE::MemoryMapFlags flags,
+ Dispatch const & d ) const
+ {
+ void * pData;
+ Result result = static_cast<Result>( d.vkMapMemory( m_device,
+ static_cast<VkDeviceMemory>( memory ),
+ static_cast<VkDeviceSize>( offset ),
+ static_cast<VkDeviceSize>( size ),
+ static_cast<VkMemoryMapFlags>( flags ),
+ &pData ) );
+ return createResultValue( result, pData, VULKAN_HPP_NAMESPACE_STRING "::Device::mapMemory" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::unmapMemory( VULKAN_HPP_NAMESPACE::DeviceMemory memory,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkUnmapMemory( m_device, static_cast<VkDeviceMemory>( memory ) );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::flushMappedMemoryRanges( uint32_t memoryRangeCount,
+ const VULKAN_HPP_NAMESPACE::MappedMemoryRange * pMemoryRanges,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkFlushMappedMemoryRanges(
+ m_device, memoryRangeCount, reinterpret_cast<const VkMappedMemoryRange *>( pMemoryRanges ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type
+ Device::flushMappedMemoryRanges( ArrayProxy<const VULKAN_HPP_NAMESPACE::MappedMemoryRange> const & memoryRanges,
+ Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>( d.vkFlushMappedMemoryRanges(
+ m_device, memoryRanges.size(), reinterpret_cast<const VkMappedMemoryRange *>( memoryRanges.data() ) ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::flushMappedMemoryRanges" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::invalidateMappedMemoryRanges( uint32_t memoryRangeCount,
+ const VULKAN_HPP_NAMESPACE::MappedMemoryRange * pMemoryRanges,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkInvalidateMappedMemoryRanges(
+ m_device, memoryRangeCount, reinterpret_cast<const VkMappedMemoryRange *>( pMemoryRanges ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type
+ Device::invalidateMappedMemoryRanges(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::MappedMemoryRange> const & memoryRanges, Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>( d.vkInvalidateMappedMemoryRanges(
+ m_device, memoryRanges.size(), reinterpret_cast<const VkMappedMemoryRange *>( memoryRanges.data() ) ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::invalidateMappedMemoryRanges" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::getMemoryCommitment( VULKAN_HPP_NAMESPACE::DeviceMemory memory,
+ VULKAN_HPP_NAMESPACE::DeviceSize * pCommittedMemoryInBytes,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkGetDeviceMemoryCommitment(
+ m_device, static_cast<VkDeviceMemory>( memory ), reinterpret_cast<VkDeviceSize *>( pCommittedMemoryInBytes ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::DeviceSize
+ Device::getMemoryCommitment( VULKAN_HPP_NAMESPACE::DeviceMemory memory,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_NAMESPACE::DeviceSize committedMemoryInBytes;
+ d.vkGetDeviceMemoryCommitment(
+ m_device, static_cast<VkDeviceMemory>( memory ), reinterpret_cast<VkDeviceSize *>( &committedMemoryInBytes ) );
+ return committedMemoryInBytes;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::bindBufferMemory( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ VULKAN_HPP_NAMESPACE::DeviceMemory memory,
+ VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkBindBufferMemory( m_device,
+ static_cast<VkBuffer>( buffer ),
+ static_cast<VkDeviceMemory>( memory ),
+ static_cast<VkDeviceSize>( memoryOffset ) ) );
+ }
+#else
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type
+ Device::bindBufferMemory( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ VULKAN_HPP_NAMESPACE::DeviceMemory memory,
+ VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset,
+ Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>( d.vkBindBufferMemory( m_device,
+ static_cast<VkBuffer>( buffer ),
+ static_cast<VkDeviceMemory>( memory ),
+ static_cast<VkDeviceSize>( memoryOffset ) ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::bindBufferMemory" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::bindImageMemory( VULKAN_HPP_NAMESPACE::Image image,
+ VULKAN_HPP_NAMESPACE::DeviceMemory memory,
+ VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkBindImageMemory( m_device,
+ static_cast<VkImage>( image ),
+ static_cast<VkDeviceMemory>( memory ),
+ static_cast<VkDeviceSize>( memoryOffset ) ) );
+ }
+#else
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type
+ Device::bindImageMemory( VULKAN_HPP_NAMESPACE::Image image,
+ VULKAN_HPP_NAMESPACE::DeviceMemory memory,
+ VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset,
+ Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>( d.vkBindImageMemory( m_device,
+ static_cast<VkImage>( image ),
+ static_cast<VkDeviceMemory>( memory ),
+ static_cast<VkDeviceSize>( memoryOffset ) ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::bindImageMemory" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ Device::getBufferMemoryRequirements( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ VULKAN_HPP_NAMESPACE::MemoryRequirements * pMemoryRequirements,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkGetBufferMemoryRequirements(
+ m_device, static_cast<VkBuffer>( buffer ), reinterpret_cast<VkMemoryRequirements *>( pMemoryRequirements ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::MemoryRequirements
+ Device::getBufferMemoryRequirements( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_NAMESPACE::MemoryRequirements memoryRequirements;
+ d.vkGetBufferMemoryRequirements(
+ m_device, static_cast<VkBuffer>( buffer ), reinterpret_cast<VkMemoryRequirements *>( &memoryRequirements ) );
+ return memoryRequirements;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ Device::getImageMemoryRequirements( VULKAN_HPP_NAMESPACE::Image image,
+ VULKAN_HPP_NAMESPACE::MemoryRequirements * pMemoryRequirements,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkGetImageMemoryRequirements(
+ m_device, static_cast<VkImage>( image ), reinterpret_cast<VkMemoryRequirements *>( pMemoryRequirements ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::MemoryRequirements
+ Device::getImageMemoryRequirements( VULKAN_HPP_NAMESPACE::Image image,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_NAMESPACE::MemoryRequirements memoryRequirements;
+ d.vkGetImageMemoryRequirements(
+ m_device, static_cast<VkImage>( image ), reinterpret_cast<VkMemoryRequirements *>( &memoryRequirements ) );
+ return memoryRequirements;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::getImageSparseMemoryRequirements(
+ VULKAN_HPP_NAMESPACE::Image image,
+ uint32_t * pSparseMemoryRequirementCount,
+ VULKAN_HPP_NAMESPACE::SparseImageMemoryRequirements * pSparseMemoryRequirements,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkGetImageSparseMemoryRequirements(
+ m_device,
+ static_cast<VkImage>( image ),
+ pSparseMemoryRequirementCount,
+ reinterpret_cast<VkSparseImageMemoryRequirements *>( pSparseMemoryRequirements ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename SparseImageMemoryRequirementsAllocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD
+ VULKAN_HPP_INLINE std::vector<SparseImageMemoryRequirements, SparseImageMemoryRequirementsAllocator>
+ Device::getImageSparseMemoryRequirements( VULKAN_HPP_NAMESPACE::Image image, Dispatch const & d ) const
+ {
+ std::vector<SparseImageMemoryRequirements, SparseImageMemoryRequirementsAllocator> sparseMemoryRequirements;
+ uint32_t sparseMemoryRequirementCount;
+ d.vkGetImageSparseMemoryRequirements(
+ m_device, static_cast<VkImage>( image ), &sparseMemoryRequirementCount, nullptr );
+ sparseMemoryRequirements.resize( sparseMemoryRequirementCount );
+ d.vkGetImageSparseMemoryRequirements(
+ m_device,
+ static_cast<VkImage>( image ),
+ &sparseMemoryRequirementCount,
+ reinterpret_cast<VkSparseImageMemoryRequirements *>( sparseMemoryRequirements.data() ) );
+ VULKAN_HPP_ASSERT( sparseMemoryRequirementCount <= sparseMemoryRequirements.size() );
+ return sparseMemoryRequirements;
+ }
+
+ template <
+ typename SparseImageMemoryRequirementsAllocator,
+ typename Dispatch,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, SparseImageMemoryRequirements>::value, int>::type>
+ VULKAN_HPP_NODISCARD
+ VULKAN_HPP_INLINE std::vector<SparseImageMemoryRequirements, SparseImageMemoryRequirementsAllocator>
+ Device::getImageSparseMemoryRequirements(
+ VULKAN_HPP_NAMESPACE::Image image,
+ SparseImageMemoryRequirementsAllocator & sparseImageMemoryRequirementsAllocator,
+ Dispatch const & d ) const
+ {
+ std::vector<SparseImageMemoryRequirements, SparseImageMemoryRequirementsAllocator> sparseMemoryRequirements(
+ sparseImageMemoryRequirementsAllocator );
+ uint32_t sparseMemoryRequirementCount;
+ d.vkGetImageSparseMemoryRequirements(
+ m_device, static_cast<VkImage>( image ), &sparseMemoryRequirementCount, nullptr );
+ sparseMemoryRequirements.resize( sparseMemoryRequirementCount );
+ d.vkGetImageSparseMemoryRequirements(
+ m_device,
+ static_cast<VkImage>( image ),
+ &sparseMemoryRequirementCount,
+ reinterpret_cast<VkSparseImageMemoryRequirements *>( sparseMemoryRequirements.data() ) );
+ VULKAN_HPP_ASSERT( sparseMemoryRequirementCount <= sparseMemoryRequirements.size() );
+ return sparseMemoryRequirements;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ PhysicalDevice::getSparseImageFormatProperties( VULKAN_HPP_NAMESPACE::Format format,
+ VULKAN_HPP_NAMESPACE::ImageType type,
+ VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples,
+ VULKAN_HPP_NAMESPACE::ImageUsageFlags usage,
+ VULKAN_HPP_NAMESPACE::ImageTiling tiling,
+ uint32_t * pPropertyCount,
+ VULKAN_HPP_NAMESPACE::SparseImageFormatProperties * pProperties,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkGetPhysicalDeviceSparseImageFormatProperties(
+ m_physicalDevice,
+ static_cast<VkFormat>( format ),
+ static_cast<VkImageType>( type ),
+ static_cast<VkSampleCountFlagBits>( samples ),
+ static_cast<VkImageUsageFlags>( usage ),
+ static_cast<VkImageTiling>( tiling ),
+ pPropertyCount,
+ reinterpret_cast<VkSparseImageFormatProperties *>( pProperties ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename SparseImageFormatPropertiesAllocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<SparseImageFormatProperties, SparseImageFormatPropertiesAllocator>
+ PhysicalDevice::getSparseImageFormatProperties( VULKAN_HPP_NAMESPACE::Format format,
+ VULKAN_HPP_NAMESPACE::ImageType type,
+ VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples,
+ VULKAN_HPP_NAMESPACE::ImageUsageFlags usage,
+ VULKAN_HPP_NAMESPACE::ImageTiling tiling,
+ Dispatch const & d ) const
+ {
+ std::vector<SparseImageFormatProperties, SparseImageFormatPropertiesAllocator> properties;
+ uint32_t propertyCount;
+ d.vkGetPhysicalDeviceSparseImageFormatProperties( m_physicalDevice,
+ static_cast<VkFormat>( format ),
+ static_cast<VkImageType>( type ),
+ static_cast<VkSampleCountFlagBits>( samples ),
+ static_cast<VkImageUsageFlags>( usage ),
+ static_cast<VkImageTiling>( tiling ),
+ &propertyCount,
+ nullptr );
+ properties.resize( propertyCount );
+ d.vkGetPhysicalDeviceSparseImageFormatProperties(
+ m_physicalDevice,
+ static_cast<VkFormat>( format ),
+ static_cast<VkImageType>( type ),
+ static_cast<VkSampleCountFlagBits>( samples ),
+ static_cast<VkImageUsageFlags>( usage ),
+ static_cast<VkImageTiling>( tiling ),
+ &propertyCount,
+ reinterpret_cast<VkSparseImageFormatProperties *>( properties.data() ) );
+ VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
+ return properties;
+ }
+
+ template <
+ typename SparseImageFormatPropertiesAllocator,
+ typename Dispatch,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, SparseImageFormatProperties>::value, int>::type>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<SparseImageFormatProperties, SparseImageFormatPropertiesAllocator>
+ PhysicalDevice::getSparseImageFormatProperties(
+ VULKAN_HPP_NAMESPACE::Format format,
+ VULKAN_HPP_NAMESPACE::ImageType type,
+ VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples,
+ VULKAN_HPP_NAMESPACE::ImageUsageFlags usage,
+ VULKAN_HPP_NAMESPACE::ImageTiling tiling,
+ SparseImageFormatPropertiesAllocator & sparseImageFormatPropertiesAllocator,
+ Dispatch const & d ) const
+ {
+ std::vector<SparseImageFormatProperties, SparseImageFormatPropertiesAllocator> properties(
+ sparseImageFormatPropertiesAllocator );
+ uint32_t propertyCount;
+ d.vkGetPhysicalDeviceSparseImageFormatProperties( m_physicalDevice,
+ static_cast<VkFormat>( format ),
+ static_cast<VkImageType>( type ),
+ static_cast<VkSampleCountFlagBits>( samples ),
+ static_cast<VkImageUsageFlags>( usage ),
+ static_cast<VkImageTiling>( tiling ),
+ &propertyCount,
+ nullptr );
+ properties.resize( propertyCount );
+ d.vkGetPhysicalDeviceSparseImageFormatProperties(
+ m_physicalDevice,
+ static_cast<VkFormat>( format ),
+ static_cast<VkImageType>( type ),
+ static_cast<VkSampleCountFlagBits>( samples ),
+ static_cast<VkImageUsageFlags>( usage ),
+ static_cast<VkImageTiling>( tiling ),
+ &propertyCount,
+ reinterpret_cast<VkSparseImageFormatProperties *>( properties.data() ) );
+ VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
+ return properties;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Queue::bindSparse( uint32_t bindInfoCount,
+ const VULKAN_HPP_NAMESPACE::BindSparseInfo * pBindInfo,
+ VULKAN_HPP_NAMESPACE::Fence fence,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkQueueBindSparse( m_queue,
+ bindInfoCount,
+ reinterpret_cast<const VkBindSparseInfo *>( pBindInfo ),
+ static_cast<VkFence>( fence ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type
+ Queue::bindSparse( ArrayProxy<const VULKAN_HPP_NAMESPACE::BindSparseInfo> const & bindInfo,
+ VULKAN_HPP_NAMESPACE::Fence fence,
+ Dispatch const & d ) const
+ {
+ Result result =
+ static_cast<Result>( d.vkQueueBindSparse( m_queue,
+ bindInfo.size(),
+ reinterpret_cast<const VkBindSparseInfo *>( bindInfo.data() ),
+ static_cast<VkFence>( fence ) ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Queue::bindSparse" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::createFence( const VULKAN_HPP_NAMESPACE::FenceCreateInfo * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::Fence * pFence,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkCreateFence( m_device,
+ reinterpret_cast<const VkFenceCreateInfo *>( pCreateInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkFence *>( pFence ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::Fence>::type
+ Device::createFence( const FenceCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::Fence fence;
+ Result result = static_cast<Result>(
+ d.vkCreateFence( m_device,
+ reinterpret_cast<const VkFenceCreateInfo *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkFence *>( &fence ) ) );
+ return createResultValue( result, fence, VULKAN_HPP_NAMESPACE_STRING "::Device::createFence" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::Fence, Dispatch>>::type
+ Device::createFenceUnique( const FenceCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::Fence fence;
+ Result result = static_cast<Result>(
+ d.vkCreateFence( m_device,
+ reinterpret_cast<const VkFenceCreateInfo *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkFence *>( &fence ) ) );
+ ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::Fence, Dispatch>(
+ result, fence, VULKAN_HPP_NAMESPACE_STRING "::Device::createFenceUnique", deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroyFence( VULKAN_HPP_NAMESPACE::Fence fence,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyFence(
+ m_device, static_cast<VkFence>( fence ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroyFence( VULKAN_HPP_NAMESPACE::Fence fence,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyFence( m_device,
+ static_cast<VkFence>( fence ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::Fence fence,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyFence(
+ m_device, static_cast<VkFence>( fence ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::Fence fence,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyFence( m_device,
+ static_cast<VkFence>( fence ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::resetFences( uint32_t fenceCount,
+ const VULKAN_HPP_NAMESPACE::Fence * pFences,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkResetFences( m_device, fenceCount, reinterpret_cast<const VkFence *>( pFences ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE typename ResultValueType<void>::type
+ Device::resetFences( ArrayProxy<const VULKAN_HPP_NAMESPACE::Fence> const & fences, Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>(
+ d.vkResetFences( m_device, fences.size(), reinterpret_cast<const VkFence *>( fences.data() ) ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::resetFences" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getFenceStatus( VULKAN_HPP_NAMESPACE::Fence fence,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkGetFenceStatus( m_device, static_cast<VkFence>( fence ) ) );
+ }
+#else
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getFenceStatus( VULKAN_HPP_NAMESPACE::Fence fence,
+ Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>( d.vkGetFenceStatus( m_device, static_cast<VkFence>( fence ) ) );
+ return createResultValue( result,
+ VULKAN_HPP_NAMESPACE_STRING "::Device::getFenceStatus",
+ { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::eNotReady } );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::waitForFences( uint32_t fenceCount,
+ const VULKAN_HPP_NAMESPACE::Fence * pFences,
+ VULKAN_HPP_NAMESPACE::Bool32 waitAll,
+ uint64_t timeout,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkWaitForFences(
+ m_device, fenceCount, reinterpret_cast<const VkFence *>( pFences ), static_cast<VkBool32>( waitAll ), timeout ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::waitForFences( ArrayProxy<const VULKAN_HPP_NAMESPACE::Fence> const & fences,
+ VULKAN_HPP_NAMESPACE::Bool32 waitAll,
+ uint64_t timeout,
+ Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>( d.vkWaitForFences( m_device,
+ fences.size(),
+ reinterpret_cast<const VkFence *>( fences.data() ),
+ static_cast<VkBool32>( waitAll ),
+ timeout ) );
+ return createResultValue( result,
+ VULKAN_HPP_NAMESPACE_STRING "::Device::waitForFences",
+ { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::eTimeout } );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::createSemaphore( const VULKAN_HPP_NAMESPACE::SemaphoreCreateInfo * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::Semaphore * pSemaphore,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkCreateSemaphore( m_device,
+ reinterpret_cast<const VkSemaphoreCreateInfo *>( pCreateInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkSemaphore *>( pSemaphore ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::Semaphore>::type
+ Device::createSemaphore( const SemaphoreCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::Semaphore semaphore;
+ Result result = static_cast<Result>(
+ d.vkCreateSemaphore( m_device,
+ reinterpret_cast<const VkSemaphoreCreateInfo *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkSemaphore *>( &semaphore ) ) );
+ return createResultValue( result, semaphore, VULKAN_HPP_NAMESPACE_STRING "::Device::createSemaphore" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::Semaphore, Dispatch>>::type
+ Device::createSemaphoreUnique( const SemaphoreCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::Semaphore semaphore;
+ Result result = static_cast<Result>(
+ d.vkCreateSemaphore( m_device,
+ reinterpret_cast<const VkSemaphoreCreateInfo *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkSemaphore *>( &semaphore ) ) );
+ ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::Semaphore, Dispatch>(
+ result, semaphore, VULKAN_HPP_NAMESPACE_STRING "::Device::createSemaphoreUnique", deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroySemaphore( VULKAN_HPP_NAMESPACE::Semaphore semaphore,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroySemaphore(
+ m_device, static_cast<VkSemaphore>( semaphore ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroySemaphore( VULKAN_HPP_NAMESPACE::Semaphore semaphore,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroySemaphore( m_device,
+ static_cast<VkSemaphore>( semaphore ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::Semaphore semaphore,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroySemaphore(
+ m_device, static_cast<VkSemaphore>( semaphore ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::Semaphore semaphore,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroySemaphore( m_device,
+ static_cast<VkSemaphore>( semaphore ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::createEvent( const VULKAN_HPP_NAMESPACE::EventCreateInfo * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::Event * pEvent,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkCreateEvent( m_device,
+ reinterpret_cast<const VkEventCreateInfo *>( pCreateInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkEvent *>( pEvent ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::Event>::type
+ Device::createEvent( const EventCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::Event event;
+ Result result = static_cast<Result>(
+ d.vkCreateEvent( m_device,
+ reinterpret_cast<const VkEventCreateInfo *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkEvent *>( &event ) ) );
+ return createResultValue( result, event, VULKAN_HPP_NAMESPACE_STRING "::Device::createEvent" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::Event, Dispatch>>::type
+ Device::createEventUnique( const EventCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::Event event;
+ Result result = static_cast<Result>(
+ d.vkCreateEvent( m_device,
+ reinterpret_cast<const VkEventCreateInfo *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkEvent *>( &event ) ) );
+ ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::Event, Dispatch>(
+ result, event, VULKAN_HPP_NAMESPACE_STRING "::Device::createEventUnique", deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroyEvent( VULKAN_HPP_NAMESPACE::Event event,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyEvent(
+ m_device, static_cast<VkEvent>( event ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroyEvent( VULKAN_HPP_NAMESPACE::Event event,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyEvent( m_device,
+ static_cast<VkEvent>( event ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::Event event,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyEvent(
+ m_device, static_cast<VkEvent>( event ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::Event event,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyEvent( m_device,
+ static_cast<VkEvent>( event ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getEventStatus( VULKAN_HPP_NAMESPACE::Event event,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkGetEventStatus( m_device, static_cast<VkEvent>( event ) ) );
+ }
+#else
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getEventStatus( VULKAN_HPP_NAMESPACE::Event event,
+ Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>( d.vkGetEventStatus( m_device, static_cast<VkEvent>( event ) ) );
+ return createResultValue( result,
+ VULKAN_HPP_NAMESPACE_STRING "::Device::getEventStatus",
+ { VULKAN_HPP_NAMESPACE::Result::eEventSet, VULKAN_HPP_NAMESPACE::Result::eEventReset } );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::setEvent( VULKAN_HPP_NAMESPACE::Event event,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkSetEvent( m_device, static_cast<VkEvent>( event ) ) );
+ }
+#else
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type
+ Device::setEvent( VULKAN_HPP_NAMESPACE::Event event, Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>( d.vkSetEvent( m_device, static_cast<VkEvent>( event ) ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::setEvent" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::resetEvent( VULKAN_HPP_NAMESPACE::Event event,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkResetEvent( m_device, static_cast<VkEvent>( event ) ) );
+ }
+#else
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE typename ResultValueType<void>::type Device::resetEvent( VULKAN_HPP_NAMESPACE::Event event,
+ Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>( d.vkResetEvent( m_device, static_cast<VkEvent>( event ) ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::resetEvent" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::createQueryPool( const VULKAN_HPP_NAMESPACE::QueryPoolCreateInfo * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::QueryPool * pQueryPool,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkCreateQueryPool( m_device,
+ reinterpret_cast<const VkQueryPoolCreateInfo *>( pCreateInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkQueryPool *>( pQueryPool ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::QueryPool>::type
+ Device::createQueryPool( const QueryPoolCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::QueryPool queryPool;
+ Result result = static_cast<Result>(
+ d.vkCreateQueryPool( m_device,
+ reinterpret_cast<const VkQueryPoolCreateInfo *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkQueryPool *>( &queryPool ) ) );
+ return createResultValue( result, queryPool, VULKAN_HPP_NAMESPACE_STRING "::Device::createQueryPool" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::QueryPool, Dispatch>>::type
+ Device::createQueryPoolUnique( const QueryPoolCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::QueryPool queryPool;
+ Result result = static_cast<Result>(
+ d.vkCreateQueryPool( m_device,
+ reinterpret_cast<const VkQueryPoolCreateInfo *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkQueryPool *>( &queryPool ) ) );
+ ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::QueryPool, Dispatch>(
+ result, queryPool, VULKAN_HPP_NAMESPACE_STRING "::Device::createQueryPoolUnique", deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroyQueryPool( VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyQueryPool(
+ m_device, static_cast<VkQueryPool>( queryPool ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroyQueryPool( VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyQueryPool( m_device,
+ static_cast<VkQueryPool>( queryPool ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyQueryPool(
+ m_device, static_cast<VkQueryPool>( queryPool ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyQueryPool( m_device,
+ static_cast<VkQueryPool>( queryPool ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::getQueryPoolResults( VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ uint32_t firstQuery,
+ uint32_t queryCount,
+ size_t dataSize,
+ void * pData,
+ VULKAN_HPP_NAMESPACE::DeviceSize stride,
+ VULKAN_HPP_NAMESPACE::QueryResultFlags flags,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkGetQueryPoolResults( m_device,
+ static_cast<VkQueryPool>( queryPool ),
+ firstQuery,
+ queryCount,
+ dataSize,
+ pData,
+ static_cast<VkDeviceSize>( stride ),
+ static_cast<VkQueryResultFlags>( flags ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename T, typename Dispatch>
+ VULKAN_HPP_DEPRECATED( "This function is deprecated. Use one of the other flavours of it." )
+ VULKAN_HPP_NODISCARD
+ VULKAN_HPP_INLINE Result Device::getQueryPoolResults( VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ uint32_t firstQuery,
+ uint32_t queryCount,
+ ArrayProxy<T> const & data,
+ VULKAN_HPP_NAMESPACE::DeviceSize stride,
+ VULKAN_HPP_NAMESPACE::QueryResultFlags flags,
+ Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>( d.vkGetQueryPoolResults( m_device,
+ static_cast<VkQueryPool>( queryPool ),
+ firstQuery,
+ queryCount,
+ data.size() * sizeof( T ),
+ reinterpret_cast<void *>( data.data() ),
+ static_cast<VkDeviceSize>( stride ),
+ static_cast<VkQueryResultFlags>( flags ) ) );
+ return createResultValue( result,
+ VULKAN_HPP_NAMESPACE_STRING "::Device::getQueryPoolResults",
+ { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::eNotReady } );
+ }
+
+ template <typename T, typename Allocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE ResultValue<std::vector<T, Allocator>>
+ Device::getQueryPoolResults( VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ uint32_t firstQuery,
+ uint32_t queryCount,
+ size_t dataSize,
+ VULKAN_HPP_NAMESPACE::DeviceSize stride,
+ VULKAN_HPP_NAMESPACE::QueryResultFlags flags,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_ASSERT( dataSize % sizeof( T ) == 0 );
+ std::vector<T, Allocator> data( dataSize / sizeof( T ) );
+ Result result = static_cast<Result>( d.vkGetQueryPoolResults( m_device,
+ static_cast<VkQueryPool>( queryPool ),
+ firstQuery,
+ queryCount,
+ data.size() * sizeof( T ),
+ reinterpret_cast<void *>( data.data() ),
+ static_cast<VkDeviceSize>( stride ),
+ static_cast<VkQueryResultFlags>( flags ) ) );
+ return createResultValue( result,
+ data,
+ VULKAN_HPP_NAMESPACE_STRING "::Device::getQueryPoolResults",
+ { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::eNotReady } );
+ }
+
+ template <typename T, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE ResultValue<T>
+ Device::getQueryPoolResult( VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ uint32_t firstQuery,
+ uint32_t queryCount,
+ VULKAN_HPP_NAMESPACE::DeviceSize stride,
+ VULKAN_HPP_NAMESPACE::QueryResultFlags flags,
+ Dispatch const & d ) const
+ {
+ T data;
+ Result result = static_cast<Result>( d.vkGetQueryPoolResults( m_device,
+ static_cast<VkQueryPool>( queryPool ),
+ firstQuery,
+ queryCount,
+ sizeof( T ),
+ reinterpret_cast<void *>( &data ),
+ static_cast<VkDeviceSize>( stride ),
+ static_cast<VkQueryResultFlags>( flags ) ) );
+ return createResultValue( result,
+ data,
+ VULKAN_HPP_NAMESPACE_STRING "::Device::getQueryPoolResult",
+ { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::eNotReady } );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::createBuffer( const VULKAN_HPP_NAMESPACE::BufferCreateInfo * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::Buffer * pBuffer,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkCreateBuffer( m_device,
+ reinterpret_cast<const VkBufferCreateInfo *>( pCreateInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkBuffer *>( pBuffer ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::Buffer>::type
+ Device::createBuffer( const BufferCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::Buffer buffer;
+ Result result = static_cast<Result>(
+ d.vkCreateBuffer( m_device,
+ reinterpret_cast<const VkBufferCreateInfo *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkBuffer *>( &buffer ) ) );
+ return createResultValue( result, buffer, VULKAN_HPP_NAMESPACE_STRING "::Device::createBuffer" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::Buffer, Dispatch>>::type
+ Device::createBufferUnique( const BufferCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::Buffer buffer;
+ Result result = static_cast<Result>(
+ d.vkCreateBuffer( m_device,
+ reinterpret_cast<const VkBufferCreateInfo *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkBuffer *>( &buffer ) ) );
+ ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::Buffer, Dispatch>(
+ result, buffer, VULKAN_HPP_NAMESPACE_STRING "::Device::createBufferUnique", deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroyBuffer( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyBuffer(
+ m_device, static_cast<VkBuffer>( buffer ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroyBuffer( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyBuffer( m_device,
+ static_cast<VkBuffer>( buffer ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyBuffer(
+ m_device, static_cast<VkBuffer>( buffer ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyBuffer( m_device,
+ static_cast<VkBuffer>( buffer ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::createBufferView( const VULKAN_HPP_NAMESPACE::BufferViewCreateInfo * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::BufferView * pView,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkCreateBufferView( m_device,
+ reinterpret_cast<const VkBufferViewCreateInfo *>( pCreateInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkBufferView *>( pView ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::BufferView>::type
+ Device::createBufferView( const BufferViewCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::BufferView view;
+ Result result = static_cast<Result>(
+ d.vkCreateBufferView( m_device,
+ reinterpret_cast<const VkBufferViewCreateInfo *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkBufferView *>( &view ) ) );
+ return createResultValue( result, view, VULKAN_HPP_NAMESPACE_STRING "::Device::createBufferView" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::BufferView, Dispatch>>::type
+ Device::createBufferViewUnique( const BufferViewCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::BufferView view;
+ Result result = static_cast<Result>(
+ d.vkCreateBufferView( m_device,
+ reinterpret_cast<const VkBufferViewCreateInfo *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkBufferView *>( &view ) ) );
+ ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::BufferView, Dispatch>(
+ result, view, VULKAN_HPP_NAMESPACE_STRING "::Device::createBufferViewUnique", deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroyBufferView( VULKAN_HPP_NAMESPACE::BufferView bufferView,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyBufferView( m_device,
+ static_cast<VkBufferView>( bufferView ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroyBufferView( VULKAN_HPP_NAMESPACE::BufferView bufferView,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyBufferView( m_device,
+ static_cast<VkBufferView>( bufferView ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::BufferView bufferView,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyBufferView( m_device,
+ static_cast<VkBufferView>( bufferView ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::BufferView bufferView,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyBufferView( m_device,
+ static_cast<VkBufferView>( bufferView ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::createImage( const VULKAN_HPP_NAMESPACE::ImageCreateInfo * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::Image * pImage,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkCreateImage( m_device,
+ reinterpret_cast<const VkImageCreateInfo *>( pCreateInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkImage *>( pImage ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::Image>::type
+ Device::createImage( const ImageCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::Image image;
+ Result result = static_cast<Result>(
+ d.vkCreateImage( m_device,
+ reinterpret_cast<const VkImageCreateInfo *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkImage *>( &image ) ) );
+ return createResultValue( result, image, VULKAN_HPP_NAMESPACE_STRING "::Device::createImage" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::Image, Dispatch>>::type
+ Device::createImageUnique( const ImageCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::Image image;
+ Result result = static_cast<Result>(
+ d.vkCreateImage( m_device,
+ reinterpret_cast<const VkImageCreateInfo *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkImage *>( &image ) ) );
+ ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::Image, Dispatch>(
+ result, image, VULKAN_HPP_NAMESPACE_STRING "::Device::createImageUnique", deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroyImage( VULKAN_HPP_NAMESPACE::Image image,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyImage(
+ m_device, static_cast<VkImage>( image ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroyImage( VULKAN_HPP_NAMESPACE::Image image,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyImage( m_device,
+ static_cast<VkImage>( image ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::Image image,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyImage(
+ m_device, static_cast<VkImage>( image ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::Image image,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyImage( m_device,
+ static_cast<VkImage>( image ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::getImageSubresourceLayout( VULKAN_HPP_NAMESPACE::Image image,
+ const VULKAN_HPP_NAMESPACE::ImageSubresource * pSubresource,
+ VULKAN_HPP_NAMESPACE::SubresourceLayout * pLayout,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkGetImageSubresourceLayout( m_device,
+ static_cast<VkImage>( image ),
+ reinterpret_cast<const VkImageSubresource *>( pSubresource ),
+ reinterpret_cast<VkSubresourceLayout *>( pLayout ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::SubresourceLayout
+ Device::getImageSubresourceLayout( VULKAN_HPP_NAMESPACE::Image image,
+ const ImageSubresource & subresource,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_NAMESPACE::SubresourceLayout layout;
+ d.vkGetImageSubresourceLayout( m_device,
+ static_cast<VkImage>( image ),
+ reinterpret_cast<const VkImageSubresource *>( &subresource ),
+ reinterpret_cast<VkSubresourceLayout *>( &layout ) );
+ return layout;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::createImageView( const VULKAN_HPP_NAMESPACE::ImageViewCreateInfo * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::ImageView * pView,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkCreateImageView( m_device,
+ reinterpret_cast<const VkImageViewCreateInfo *>( pCreateInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkImageView *>( pView ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::ImageView>::type
+ Device::createImageView( const ImageViewCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::ImageView view;
+ Result result = static_cast<Result>(
+ d.vkCreateImageView( m_device,
+ reinterpret_cast<const VkImageViewCreateInfo *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkImageView *>( &view ) ) );
+ return createResultValue( result, view, VULKAN_HPP_NAMESPACE_STRING "::Device::createImageView" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::ImageView, Dispatch>>::type
+ Device::createImageViewUnique( const ImageViewCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::ImageView view;
+ Result result = static_cast<Result>(
+ d.vkCreateImageView( m_device,
+ reinterpret_cast<const VkImageViewCreateInfo *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkImageView *>( &view ) ) );
+ ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::ImageView, Dispatch>(
+ result, view, VULKAN_HPP_NAMESPACE_STRING "::Device::createImageViewUnique", deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroyImageView( VULKAN_HPP_NAMESPACE::ImageView imageView,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyImageView(
+ m_device, static_cast<VkImageView>( imageView ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroyImageView( VULKAN_HPP_NAMESPACE::ImageView imageView,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyImageView( m_device,
+ static_cast<VkImageView>( imageView ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::ImageView imageView,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyImageView(
+ m_device, static_cast<VkImageView>( imageView ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::ImageView imageView,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyImageView( m_device,
+ static_cast<VkImageView>( imageView ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::createShaderModule( const VULKAN_HPP_NAMESPACE::ShaderModuleCreateInfo * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::ShaderModule * pShaderModule,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkCreateShaderModule( m_device,
+ reinterpret_cast<const VkShaderModuleCreateInfo *>( pCreateInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkShaderModule *>( pShaderModule ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::ShaderModule>::type
+ Device::createShaderModule( const ShaderModuleCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::ShaderModule shaderModule;
+ Result result = static_cast<Result>(
+ d.vkCreateShaderModule( m_device,
+ reinterpret_cast<const VkShaderModuleCreateInfo *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkShaderModule *>( &shaderModule ) ) );
+ return createResultValue( result, shaderModule, VULKAN_HPP_NAMESPACE_STRING "::Device::createShaderModule" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::ShaderModule, Dispatch>>::type
+ Device::createShaderModuleUnique( const ShaderModuleCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::ShaderModule shaderModule;
+ Result result = static_cast<Result>(
+ d.vkCreateShaderModule( m_device,
+ reinterpret_cast<const VkShaderModuleCreateInfo *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkShaderModule *>( &shaderModule ) ) );
+ ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::ShaderModule, Dispatch>(
+ result, shaderModule, VULKAN_HPP_NAMESPACE_STRING "::Device::createShaderModuleUnique", deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroyShaderModule( VULKAN_HPP_NAMESPACE::ShaderModule shaderModule,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyShaderModule( m_device,
+ static_cast<VkShaderModule>( shaderModule ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroyShaderModule( VULKAN_HPP_NAMESPACE::ShaderModule shaderModule,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyShaderModule( m_device,
+ static_cast<VkShaderModule>( shaderModule ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::ShaderModule shaderModule,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyShaderModule( m_device,
+ static_cast<VkShaderModule>( shaderModule ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::ShaderModule shaderModule,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyShaderModule( m_device,
+ static_cast<VkShaderModule>( shaderModule ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::createPipelineCache( const VULKAN_HPP_NAMESPACE::PipelineCacheCreateInfo * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::PipelineCache * pPipelineCache,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkCreatePipelineCache( m_device,
+ reinterpret_cast<const VkPipelineCacheCreateInfo *>( pCreateInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkPipelineCache *>( pPipelineCache ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::PipelineCache>::type
+ Device::createPipelineCache( const PipelineCacheCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache;
+ Result result = static_cast<Result>(
+ d.vkCreatePipelineCache( m_device,
+ reinterpret_cast<const VkPipelineCacheCreateInfo *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkPipelineCache *>( &pipelineCache ) ) );
+ return createResultValue( result, pipelineCache, VULKAN_HPP_NAMESPACE_STRING "::Device::createPipelineCache" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::PipelineCache, Dispatch>>::type
+ Device::createPipelineCacheUnique( const PipelineCacheCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache;
+ Result result = static_cast<Result>(
+ d.vkCreatePipelineCache( m_device,
+ reinterpret_cast<const VkPipelineCacheCreateInfo *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkPipelineCache *>( &pipelineCache ) ) );
+ ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::PipelineCache, Dispatch>(
+ result, pipelineCache, VULKAN_HPP_NAMESPACE_STRING "::Device::createPipelineCacheUnique", deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroyPipelineCache( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyPipelineCache( m_device,
+ static_cast<VkPipelineCache>( pipelineCache ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroyPipelineCache( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyPipelineCache( m_device,
+ static_cast<VkPipelineCache>( pipelineCache ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyPipelineCache( m_device,
+ static_cast<VkPipelineCache>( pipelineCache ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyPipelineCache( m_device,
+ static_cast<VkPipelineCache>( pipelineCache ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::getPipelineCacheData( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ size_t * pDataSize,
+ void * pData,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkGetPipelineCacheData( m_device, static_cast<VkPipelineCache>( pipelineCache ), pDataSize, pData ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Uint8_tAllocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<uint8_t, Uint8_tAllocator>>::type
+ Device::getPipelineCacheData( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache, Dispatch const & d ) const
+ {
+ std::vector<uint8_t, Uint8_tAllocator> data;
+ size_t dataSize;
+ Result result;
+ do
+ {
+ result = static_cast<Result>(
+ d.vkGetPipelineCacheData( m_device, static_cast<VkPipelineCache>( pipelineCache ), &dataSize, nullptr ) );
+ if ( ( result == Result::eSuccess ) && dataSize )
+ {
+ data.resize( dataSize );
+ result = static_cast<Result>( d.vkGetPipelineCacheData( m_device,
+ static_cast<VkPipelineCache>( pipelineCache ),
+ &dataSize,
+ reinterpret_cast<void *>( data.data() ) ) );
+ VULKAN_HPP_ASSERT( dataSize <= data.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( dataSize < data.size() ) )
+ {
+ data.resize( dataSize );
+ }
+ return createResultValue( result, data, VULKAN_HPP_NAMESPACE_STRING "::Device::getPipelineCacheData" );
+ }
+
+ template <typename Uint8_tAllocator,
+ typename Dispatch,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, uint8_t>::value, int>::type>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<uint8_t, Uint8_tAllocator>>::type
+ Device::getPipelineCacheData( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ Uint8_tAllocator & uint8_tAllocator,
+ Dispatch const & d ) const
+ {
+ std::vector<uint8_t, Uint8_tAllocator> data( uint8_tAllocator );
+ size_t dataSize;
+ Result result;
+ do
+ {
+ result = static_cast<Result>(
+ d.vkGetPipelineCacheData( m_device, static_cast<VkPipelineCache>( pipelineCache ), &dataSize, nullptr ) );
+ if ( ( result == Result::eSuccess ) && dataSize )
+ {
+ data.resize( dataSize );
+ result = static_cast<Result>( d.vkGetPipelineCacheData( m_device,
+ static_cast<VkPipelineCache>( pipelineCache ),
+ &dataSize,
+ reinterpret_cast<void *>( data.data() ) ) );
+ VULKAN_HPP_ASSERT( dataSize <= data.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( dataSize < data.size() ) )
+ {
+ data.resize( dataSize );
+ }
+ return createResultValue( result, data, VULKAN_HPP_NAMESPACE_STRING "::Device::getPipelineCacheData" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::mergePipelineCaches( VULKAN_HPP_NAMESPACE::PipelineCache dstCache,
+ uint32_t srcCacheCount,
+ const VULKAN_HPP_NAMESPACE::PipelineCache * pSrcCaches,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkMergePipelineCaches( m_device,
+ static_cast<VkPipelineCache>( dstCache ),
+ srcCacheCount,
+ reinterpret_cast<const VkPipelineCache *>( pSrcCaches ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type
+ Device::mergePipelineCaches( VULKAN_HPP_NAMESPACE::PipelineCache dstCache,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::PipelineCache> const & srcCaches,
+ Dispatch const & d ) const
+ {
+ Result result =
+ static_cast<Result>( d.vkMergePipelineCaches( m_device,
+ static_cast<VkPipelineCache>( dstCache ),
+ srcCaches.size(),
+ reinterpret_cast<const VkPipelineCache *>( srcCaches.data() ) ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::mergePipelineCaches" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::createGraphicsPipelines( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ uint32_t createInfoCount,
+ const VULKAN_HPP_NAMESPACE::GraphicsPipelineCreateInfo * pCreateInfos,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::Pipeline * pPipelines,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkCreateGraphicsPipelines( m_device,
+ static_cast<VkPipelineCache>( pipelineCache ),
+ createInfoCount,
+ reinterpret_cast<const VkGraphicsPipelineCreateInfo *>( pCreateInfos ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkPipeline *>( pPipelines ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename PipelineAllocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE ResultValue<std::vector<Pipeline, PipelineAllocator>>
+ Device::createGraphicsPipelines(
+ VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::GraphicsPipelineCreateInfo> const & createInfos,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ std::vector<Pipeline, PipelineAllocator> pipelines( createInfos.size() );
+ Result result = static_cast<Result>(
+ d.vkCreateGraphicsPipelines( m_device,
+ static_cast<VkPipelineCache>( pipelineCache ),
+ createInfos.size(),
+ reinterpret_cast<const VkGraphicsPipelineCreateInfo *>( createInfos.data() ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkPipeline *>( pipelines.data() ) ) );
+ return createResultValue(
+ result,
+ pipelines,
+ VULKAN_HPP_NAMESPACE_STRING "::Device::createGraphicsPipelines",
+ { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT } );
+ }
+
+ template <typename PipelineAllocator,
+ typename Dispatch,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, Pipeline>::value, int>::type>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE ResultValue<std::vector<Pipeline, PipelineAllocator>>
+ Device::createGraphicsPipelines(
+ VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::GraphicsPipelineCreateInfo> const & createInfos,
+ Optional<const AllocationCallbacks> allocator,
+ PipelineAllocator & pipelineAllocator,
+ Dispatch const & d ) const
+ {
+ std::vector<Pipeline, PipelineAllocator> pipelines( createInfos.size(), pipelineAllocator );
+ Result result = static_cast<Result>(
+ d.vkCreateGraphicsPipelines( m_device,
+ static_cast<VkPipelineCache>( pipelineCache ),
+ createInfos.size(),
+ reinterpret_cast<const VkGraphicsPipelineCreateInfo *>( createInfos.data() ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkPipeline *>( pipelines.data() ) ) );
+ return createResultValue(
+ result,
+ pipelines,
+ VULKAN_HPP_NAMESPACE_STRING "::Device::createGraphicsPipelines",
+ { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT } );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE ResultValue<Pipeline>
+ Device::createGraphicsPipeline( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ const VULKAN_HPP_NAMESPACE::GraphicsPipelineCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ Pipeline pipeline;
+ Result result = static_cast<Result>(
+ d.vkCreateGraphicsPipelines( m_device,
+ static_cast<VkPipelineCache>( pipelineCache ),
+ 1,
+ reinterpret_cast<const VkGraphicsPipelineCreateInfo *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkPipeline *>( &pipeline ) ) );
+ return createResultValue(
+ result,
+ pipeline,
+ VULKAN_HPP_NAMESPACE_STRING "::Device::createGraphicsPipeline",
+ { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT } );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch, typename PipelineAllocator>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE ResultValue<std::vector<UniqueHandle<Pipeline, Dispatch>, PipelineAllocator>>
+ Device::createGraphicsPipelinesUnique(
+ VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::GraphicsPipelineCreateInfo> const & createInfos,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ std::vector<UniqueHandle<Pipeline, Dispatch>, PipelineAllocator> uniquePipelines;
+ std::vector<Pipeline> pipelines( createInfos.size() );
+ Result result = static_cast<Result>(
+ d.vkCreateGraphicsPipelines( m_device,
+ static_cast<VkPipelineCache>( pipelineCache ),
+ createInfos.size(),
+ reinterpret_cast<const VkGraphicsPipelineCreateInfo *>( createInfos.data() ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkPipeline *>( pipelines.data() ) ) );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) ||
+ ( result == VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT ) )
+ {
+ uniquePipelines.reserve( createInfos.size() );
+ ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
+ for ( size_t i = 0; i < createInfos.size(); i++ )
+ {
+ uniquePipelines.push_back( UniqueHandle<Pipeline, Dispatch>( pipelines[i], deleter ) );
+ }
+ }
+ return createResultValue(
+ result,
+ std::move( uniquePipelines ),
+ VULKAN_HPP_NAMESPACE_STRING "::Device::createGraphicsPipelinesUnique",
+ { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT } );
+ }
+
+ template <
+ typename Dispatch,
+ typename PipelineAllocator,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, UniqueHandle<Pipeline, Dispatch>>::value, int>::type>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE ResultValue<std::vector<UniqueHandle<Pipeline, Dispatch>, PipelineAllocator>>
+ Device::createGraphicsPipelinesUnique(
+ VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::GraphicsPipelineCreateInfo> const & createInfos,
+ Optional<const AllocationCallbacks> allocator,
+ PipelineAllocator & pipelineAllocator,
+ Dispatch const & d ) const
+ {
+ std::vector<UniqueHandle<Pipeline, Dispatch>, PipelineAllocator> uniquePipelines( pipelineAllocator );
+ std::vector<Pipeline> pipelines( createInfos.size() );
+ Result result = static_cast<Result>(
+ d.vkCreateGraphicsPipelines( m_device,
+ static_cast<VkPipelineCache>( pipelineCache ),
+ createInfos.size(),
+ reinterpret_cast<const VkGraphicsPipelineCreateInfo *>( createInfos.data() ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkPipeline *>( pipelines.data() ) ) );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) ||
+ ( result == VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT ) )
+ {
+ uniquePipelines.reserve( createInfos.size() );
+ ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
+ for ( size_t i = 0; i < createInfos.size(); i++ )
+ {
+ uniquePipelines.push_back( UniqueHandle<Pipeline, Dispatch>( pipelines[i], deleter ) );
+ }
+ }
+ return createResultValue(
+ result,
+ std::move( uniquePipelines ),
+ VULKAN_HPP_NAMESPACE_STRING "::Device::createGraphicsPipelinesUnique",
+ { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT } );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE ResultValue<UniqueHandle<Pipeline, Dispatch>>
+ Device::createGraphicsPipelineUnique( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ const VULKAN_HPP_NAMESPACE::GraphicsPipelineCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ Pipeline pipeline;
+ Result result = static_cast<Result>(
+ d.vkCreateGraphicsPipelines( m_device,
+ static_cast<VkPipelineCache>( pipelineCache ),
+ 1,
+ reinterpret_cast<const VkGraphicsPipelineCreateInfo *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkPipeline *>( &pipeline ) ) );
+ ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<Pipeline, Dispatch>(
+ result,
+ pipeline,
+ VULKAN_HPP_NAMESPACE_STRING "::Device::createGraphicsPipelineUnique",
+ { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT },
+ deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::createComputePipelines( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ uint32_t createInfoCount,
+ const VULKAN_HPP_NAMESPACE::ComputePipelineCreateInfo * pCreateInfos,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::Pipeline * pPipelines,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkCreateComputePipelines( m_device,
+ static_cast<VkPipelineCache>( pipelineCache ),
+ createInfoCount,
+ reinterpret_cast<const VkComputePipelineCreateInfo *>( pCreateInfos ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkPipeline *>( pPipelines ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename PipelineAllocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE ResultValue<std::vector<Pipeline, PipelineAllocator>>
+ Device::createComputePipelines(
+ VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::ComputePipelineCreateInfo> const & createInfos,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ std::vector<Pipeline, PipelineAllocator> pipelines( createInfos.size() );
+ Result result = static_cast<Result>(
+ d.vkCreateComputePipelines( m_device,
+ static_cast<VkPipelineCache>( pipelineCache ),
+ createInfos.size(),
+ reinterpret_cast<const VkComputePipelineCreateInfo *>( createInfos.data() ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkPipeline *>( pipelines.data() ) ) );
+ return createResultValue(
+ result,
+ pipelines,
+ VULKAN_HPP_NAMESPACE_STRING "::Device::createComputePipelines",
+ { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT } );
+ }
+
+ template <typename PipelineAllocator,
+ typename Dispatch,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, Pipeline>::value, int>::type>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE ResultValue<std::vector<Pipeline, PipelineAllocator>>
+ Device::createComputePipelines(
+ VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::ComputePipelineCreateInfo> const & createInfos,
+ Optional<const AllocationCallbacks> allocator,
+ PipelineAllocator & pipelineAllocator,
+ Dispatch const & d ) const
+ {
+ std::vector<Pipeline, PipelineAllocator> pipelines( createInfos.size(), pipelineAllocator );
+ Result result = static_cast<Result>(
+ d.vkCreateComputePipelines( m_device,
+ static_cast<VkPipelineCache>( pipelineCache ),
+ createInfos.size(),
+ reinterpret_cast<const VkComputePipelineCreateInfo *>( createInfos.data() ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkPipeline *>( pipelines.data() ) ) );
+ return createResultValue(
+ result,
+ pipelines,
+ VULKAN_HPP_NAMESPACE_STRING "::Device::createComputePipelines",
+ { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT } );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE ResultValue<Pipeline>
+ Device::createComputePipeline( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ const VULKAN_HPP_NAMESPACE::ComputePipelineCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ Pipeline pipeline;
+ Result result = static_cast<Result>(
+ d.vkCreateComputePipelines( m_device,
+ static_cast<VkPipelineCache>( pipelineCache ),
+ 1,
+ reinterpret_cast<const VkComputePipelineCreateInfo *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkPipeline *>( &pipeline ) ) );
+ return createResultValue(
+ result,
+ pipeline,
+ VULKAN_HPP_NAMESPACE_STRING "::Device::createComputePipeline",
+ { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT } );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch, typename PipelineAllocator>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE ResultValue<std::vector<UniqueHandle<Pipeline, Dispatch>, PipelineAllocator>>
+ Device::createComputePipelinesUnique(
+ VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::ComputePipelineCreateInfo> const & createInfos,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ std::vector<UniqueHandle<Pipeline, Dispatch>, PipelineAllocator> uniquePipelines;
+ std::vector<Pipeline> pipelines( createInfos.size() );
+ Result result = static_cast<Result>(
+ d.vkCreateComputePipelines( m_device,
+ static_cast<VkPipelineCache>( pipelineCache ),
+ createInfos.size(),
+ reinterpret_cast<const VkComputePipelineCreateInfo *>( createInfos.data() ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkPipeline *>( pipelines.data() ) ) );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) ||
+ ( result == VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT ) )
+ {
+ uniquePipelines.reserve( createInfos.size() );
+ ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
+ for ( size_t i = 0; i < createInfos.size(); i++ )
+ {
+ uniquePipelines.push_back( UniqueHandle<Pipeline, Dispatch>( pipelines[i], deleter ) );
+ }
+ }
+ return createResultValue(
+ result,
+ std::move( uniquePipelines ),
+ VULKAN_HPP_NAMESPACE_STRING "::Device::createComputePipelinesUnique",
+ { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT } );
+ }
+
+ template <
+ typename Dispatch,
+ typename PipelineAllocator,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, UniqueHandle<Pipeline, Dispatch>>::value, int>::type>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE ResultValue<std::vector<UniqueHandle<Pipeline, Dispatch>, PipelineAllocator>>
+ Device::createComputePipelinesUnique(
+ VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::ComputePipelineCreateInfo> const & createInfos,
+ Optional<const AllocationCallbacks> allocator,
+ PipelineAllocator & pipelineAllocator,
+ Dispatch const & d ) const
+ {
+ std::vector<UniqueHandle<Pipeline, Dispatch>, PipelineAllocator> uniquePipelines( pipelineAllocator );
+ std::vector<Pipeline> pipelines( createInfos.size() );
+ Result result = static_cast<Result>(
+ d.vkCreateComputePipelines( m_device,
+ static_cast<VkPipelineCache>( pipelineCache ),
+ createInfos.size(),
+ reinterpret_cast<const VkComputePipelineCreateInfo *>( createInfos.data() ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkPipeline *>( pipelines.data() ) ) );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) ||
+ ( result == VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT ) )
+ {
+ uniquePipelines.reserve( createInfos.size() );
+ ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
+ for ( size_t i = 0; i < createInfos.size(); i++ )
+ {
+ uniquePipelines.push_back( UniqueHandle<Pipeline, Dispatch>( pipelines[i], deleter ) );
+ }
+ }
+ return createResultValue(
+ result,
+ std::move( uniquePipelines ),
+ VULKAN_HPP_NAMESPACE_STRING "::Device::createComputePipelinesUnique",
+ { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT } );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE ResultValue<UniqueHandle<Pipeline, Dispatch>>
+ Device::createComputePipelineUnique( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ const VULKAN_HPP_NAMESPACE::ComputePipelineCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ Pipeline pipeline;
+ Result result = static_cast<Result>(
+ d.vkCreateComputePipelines( m_device,
+ static_cast<VkPipelineCache>( pipelineCache ),
+ 1,
+ reinterpret_cast<const VkComputePipelineCreateInfo *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkPipeline *>( &pipeline ) ) );
+ ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<Pipeline, Dispatch>(
+ result,
+ pipeline,
+ VULKAN_HPP_NAMESPACE_STRING "::Device::createComputePipelineUnique",
+ { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT },
+ deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroyPipeline( VULKAN_HPP_NAMESPACE::Pipeline pipeline,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyPipeline(
+ m_device, static_cast<VkPipeline>( pipeline ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroyPipeline( VULKAN_HPP_NAMESPACE::Pipeline pipeline,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyPipeline( m_device,
+ static_cast<VkPipeline>( pipeline ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::Pipeline pipeline,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyPipeline(
+ m_device, static_cast<VkPipeline>( pipeline ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::Pipeline pipeline,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyPipeline( m_device,
+ static_cast<VkPipeline>( pipeline ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::createPipelineLayout( const VULKAN_HPP_NAMESPACE::PipelineLayoutCreateInfo * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::PipelineLayout * pPipelineLayout,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkCreatePipelineLayout( m_device,
+ reinterpret_cast<const VkPipelineLayoutCreateInfo *>( pCreateInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkPipelineLayout *>( pPipelineLayout ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::PipelineLayout>::type
+ Device::createPipelineLayout( const PipelineLayoutCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::PipelineLayout pipelineLayout;
+ Result result = static_cast<Result>(
+ d.vkCreatePipelineLayout( m_device,
+ reinterpret_cast<const VkPipelineLayoutCreateInfo *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkPipelineLayout *>( &pipelineLayout ) ) );
+ return createResultValue( result, pipelineLayout, VULKAN_HPP_NAMESPACE_STRING "::Device::createPipelineLayout" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::PipelineLayout, Dispatch>>::type
+ Device::createPipelineLayoutUnique( const PipelineLayoutCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::PipelineLayout pipelineLayout;
+ Result result = static_cast<Result>(
+ d.vkCreatePipelineLayout( m_device,
+ reinterpret_cast<const VkPipelineLayoutCreateInfo *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkPipelineLayout *>( &pipelineLayout ) ) );
+ ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::PipelineLayout, Dispatch>(
+ result, pipelineLayout, VULKAN_HPP_NAMESPACE_STRING "::Device::createPipelineLayoutUnique", deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroyPipelineLayout( VULKAN_HPP_NAMESPACE::PipelineLayout pipelineLayout,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyPipelineLayout( m_device,
+ static_cast<VkPipelineLayout>( pipelineLayout ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroyPipelineLayout( VULKAN_HPP_NAMESPACE::PipelineLayout pipelineLayout,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyPipelineLayout( m_device,
+ static_cast<VkPipelineLayout>( pipelineLayout ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::PipelineLayout pipelineLayout,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyPipelineLayout( m_device,
+ static_cast<VkPipelineLayout>( pipelineLayout ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::PipelineLayout pipelineLayout,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyPipelineLayout( m_device,
+ static_cast<VkPipelineLayout>( pipelineLayout ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::createSampler( const VULKAN_HPP_NAMESPACE::SamplerCreateInfo * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::Sampler * pSampler,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkCreateSampler( m_device,
+ reinterpret_cast<const VkSamplerCreateInfo *>( pCreateInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkSampler *>( pSampler ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::Sampler>::type
+ Device::createSampler( const SamplerCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::Sampler sampler;
+ Result result = static_cast<Result>(
+ d.vkCreateSampler( m_device,
+ reinterpret_cast<const VkSamplerCreateInfo *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkSampler *>( &sampler ) ) );
+ return createResultValue( result, sampler, VULKAN_HPP_NAMESPACE_STRING "::Device::createSampler" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::Sampler, Dispatch>>::type
+ Device::createSamplerUnique( const SamplerCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::Sampler sampler;
+ Result result = static_cast<Result>(
+ d.vkCreateSampler( m_device,
+ reinterpret_cast<const VkSamplerCreateInfo *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkSampler *>( &sampler ) ) );
+ ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::Sampler, Dispatch>(
+ result, sampler, VULKAN_HPP_NAMESPACE_STRING "::Device::createSamplerUnique", deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroySampler( VULKAN_HPP_NAMESPACE::Sampler sampler,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroySampler(
+ m_device, static_cast<VkSampler>( sampler ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroySampler( VULKAN_HPP_NAMESPACE::Sampler sampler,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroySampler( m_device,
+ static_cast<VkSampler>( sampler ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::Sampler sampler,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroySampler(
+ m_device, static_cast<VkSampler>( sampler ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::Sampler sampler,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroySampler( m_device,
+ static_cast<VkSampler>( sampler ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::createDescriptorSetLayout( const VULKAN_HPP_NAMESPACE::DescriptorSetLayoutCreateInfo * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::DescriptorSetLayout * pSetLayout,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkCreateDescriptorSetLayout( m_device,
+ reinterpret_cast<const VkDescriptorSetLayoutCreateInfo *>( pCreateInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkDescriptorSetLayout *>( pSetLayout ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::DescriptorSetLayout>::type
+ Device::createDescriptorSetLayout( const DescriptorSetLayoutCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::DescriptorSetLayout setLayout;
+ Result result = static_cast<Result>(
+ d.vkCreateDescriptorSetLayout( m_device,
+ reinterpret_cast<const VkDescriptorSetLayoutCreateInfo *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkDescriptorSetLayout *>( &setLayout ) ) );
+ return createResultValue( result, setLayout, VULKAN_HPP_NAMESPACE_STRING "::Device::createDescriptorSetLayout" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::DescriptorSetLayout, Dispatch>>::type
+ Device::createDescriptorSetLayoutUnique( const DescriptorSetLayoutCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::DescriptorSetLayout setLayout;
+ Result result = static_cast<Result>(
+ d.vkCreateDescriptorSetLayout( m_device,
+ reinterpret_cast<const VkDescriptorSetLayoutCreateInfo *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkDescriptorSetLayout *>( &setLayout ) ) );
+ ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::DescriptorSetLayout, Dispatch>(
+ result, setLayout, VULKAN_HPP_NAMESPACE_STRING "::Device::createDescriptorSetLayoutUnique", deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ Device::destroyDescriptorSetLayout( VULKAN_HPP_NAMESPACE::DescriptorSetLayout descriptorSetLayout,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyDescriptorSetLayout( m_device,
+ static_cast<VkDescriptorSetLayout>( descriptorSetLayout ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ Device::destroyDescriptorSetLayout( VULKAN_HPP_NAMESPACE::DescriptorSetLayout descriptorSetLayout,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyDescriptorSetLayout( m_device,
+ static_cast<VkDescriptorSetLayout>( descriptorSetLayout ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::DescriptorSetLayout descriptorSetLayout,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyDescriptorSetLayout( m_device,
+ static_cast<VkDescriptorSetLayout>( descriptorSetLayout ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::DescriptorSetLayout descriptorSetLayout,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyDescriptorSetLayout( m_device,
+ static_cast<VkDescriptorSetLayout>( descriptorSetLayout ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::createDescriptorPool( const VULKAN_HPP_NAMESPACE::DescriptorPoolCreateInfo * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::DescriptorPool * pDescriptorPool,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkCreateDescriptorPool( m_device,
+ reinterpret_cast<const VkDescriptorPoolCreateInfo *>( pCreateInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkDescriptorPool *>( pDescriptorPool ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::DescriptorPool>::type
+ Device::createDescriptorPool( const DescriptorPoolCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::DescriptorPool descriptorPool;
+ Result result = static_cast<Result>(
+ d.vkCreateDescriptorPool( m_device,
+ reinterpret_cast<const VkDescriptorPoolCreateInfo *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkDescriptorPool *>( &descriptorPool ) ) );
+ return createResultValue( result, descriptorPool, VULKAN_HPP_NAMESPACE_STRING "::Device::createDescriptorPool" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::DescriptorPool, Dispatch>>::type
+ Device::createDescriptorPoolUnique( const DescriptorPoolCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::DescriptorPool descriptorPool;
+ Result result = static_cast<Result>(
+ d.vkCreateDescriptorPool( m_device,
+ reinterpret_cast<const VkDescriptorPoolCreateInfo *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkDescriptorPool *>( &descriptorPool ) ) );
+ ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::DescriptorPool, Dispatch>(
+ result, descriptorPool, VULKAN_HPP_NAMESPACE_STRING "::Device::createDescriptorPoolUnique", deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroyDescriptorPool( VULKAN_HPP_NAMESPACE::DescriptorPool descriptorPool,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyDescriptorPool( m_device,
+ static_cast<VkDescriptorPool>( descriptorPool ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroyDescriptorPool( VULKAN_HPP_NAMESPACE::DescriptorPool descriptorPool,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyDescriptorPool( m_device,
+ static_cast<VkDescriptorPool>( descriptorPool ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::DescriptorPool descriptorPool,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyDescriptorPool( m_device,
+ static_cast<VkDescriptorPool>( descriptorPool ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::DescriptorPool descriptorPool,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyDescriptorPool( m_device,
+ static_cast<VkDescriptorPool>( descriptorPool ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE Result Device::resetDescriptorPool( VULKAN_HPP_NAMESPACE::DescriptorPool descriptorPool,
+ VULKAN_HPP_NAMESPACE::DescriptorPoolResetFlags flags,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkResetDescriptorPool(
+ m_device, static_cast<VkDescriptorPool>( descriptorPool ), static_cast<VkDescriptorPoolResetFlags>( flags ) ) );
+ }
+#else
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE typename ResultValueType<void>::type
+ Device::resetDescriptorPool( VULKAN_HPP_NAMESPACE::DescriptorPool descriptorPool,
+ VULKAN_HPP_NAMESPACE::DescriptorPoolResetFlags flags,
+ Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>( d.vkResetDescriptorPool(
+ m_device, static_cast<VkDescriptorPool>( descriptorPool ), static_cast<VkDescriptorPoolResetFlags>( flags ) ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::resetDescriptorPool" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::allocateDescriptorSets( const VULKAN_HPP_NAMESPACE::DescriptorSetAllocateInfo * pAllocateInfo,
+ VULKAN_HPP_NAMESPACE::DescriptorSet * pDescriptorSets,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkAllocateDescriptorSets( m_device,
+ reinterpret_cast<const VkDescriptorSetAllocateInfo *>( pAllocateInfo ),
+ reinterpret_cast<VkDescriptorSet *>( pDescriptorSets ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename DescriptorSetAllocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<DescriptorSet, DescriptorSetAllocator>>::type
+ Device::allocateDescriptorSets( const DescriptorSetAllocateInfo & allocateInfo, Dispatch const & d ) const
+ {
+ std::vector<DescriptorSet, DescriptorSetAllocator> descriptorSets( allocateInfo.descriptorSetCount );
+ Result result = static_cast<Result>(
+ d.vkAllocateDescriptorSets( m_device,
+ reinterpret_cast<const VkDescriptorSetAllocateInfo *>( &allocateInfo ),
+ reinterpret_cast<VkDescriptorSet *>( descriptorSets.data() ) ) );
+ return createResultValue( result, descriptorSets, VULKAN_HPP_NAMESPACE_STRING "::Device::allocateDescriptorSets" );
+ }
+
+ template <typename DescriptorSetAllocator,
+ typename Dispatch,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, DescriptorSet>::value, int>::type>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<DescriptorSet, DescriptorSetAllocator>>::type
+ Device::allocateDescriptorSets( const DescriptorSetAllocateInfo & allocateInfo,
+ DescriptorSetAllocator & descriptorSetAllocator,
+ Dispatch const & d ) const
+ {
+ std::vector<DescriptorSet, DescriptorSetAllocator> descriptorSets( allocateInfo.descriptorSetCount,
+ descriptorSetAllocator );
+ Result result = static_cast<Result>(
+ d.vkAllocateDescriptorSets( m_device,
+ reinterpret_cast<const VkDescriptorSetAllocateInfo *>( &allocateInfo ),
+ reinterpret_cast<VkDescriptorSet *>( descriptorSets.data() ) ) );
+ return createResultValue( result, descriptorSets, VULKAN_HPP_NAMESPACE_STRING "::Device::allocateDescriptorSets" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch, typename DescriptorSetAllocator>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<UniqueHandle<DescriptorSet, Dispatch>, DescriptorSetAllocator>>::type
+ Device::allocateDescriptorSetsUnique( const DescriptorSetAllocateInfo & allocateInfo, Dispatch const & d ) const
+ {
+ std::vector<UniqueHandle<DescriptorSet, Dispatch>, DescriptorSetAllocator> uniqueDescriptorSets;
+ std::vector<DescriptorSet> descriptorSets( allocateInfo.descriptorSetCount );
+ Result result = static_cast<Result>(
+ d.vkAllocateDescriptorSets( m_device,
+ reinterpret_cast<const VkDescriptorSetAllocateInfo *>( &allocateInfo ),
+ reinterpret_cast<VkDescriptorSet *>( descriptorSets.data() ) ) );
+ if ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ uniqueDescriptorSets.reserve( allocateInfo.descriptorSetCount );
+ PoolFree<Device, DescriptorPool, Dispatch> deleter( *this, allocateInfo.descriptorPool, d );
+ for ( size_t i = 0; i < allocateInfo.descriptorSetCount; i++ )
+ {
+ uniqueDescriptorSets.push_back( UniqueHandle<DescriptorSet, Dispatch>( descriptorSets[i], deleter ) );
+ }
+ }
+ return createResultValue(
+ result, std::move( uniqueDescriptorSets ), VULKAN_HPP_NAMESPACE_STRING "::Device::allocateDescriptorSetsUnique" );
+ }
+
+ template <typename Dispatch,
+ typename DescriptorSetAllocator,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, UniqueHandle<DescriptorSet, Dispatch>>::value,
+ int>::type>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<UniqueHandle<DescriptorSet, Dispatch>, DescriptorSetAllocator>>::type
+ Device::allocateDescriptorSetsUnique( const DescriptorSetAllocateInfo & allocateInfo,
+ DescriptorSetAllocator & descriptorSetAllocator,
+ Dispatch const & d ) const
+ {
+ std::vector<UniqueHandle<DescriptorSet, Dispatch>, DescriptorSetAllocator> uniqueDescriptorSets(
+ descriptorSetAllocator );
+ std::vector<DescriptorSet> descriptorSets( allocateInfo.descriptorSetCount );
+ Result result = static_cast<Result>(
+ d.vkAllocateDescriptorSets( m_device,
+ reinterpret_cast<const VkDescriptorSetAllocateInfo *>( &allocateInfo ),
+ reinterpret_cast<VkDescriptorSet *>( descriptorSets.data() ) ) );
+ if ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ uniqueDescriptorSets.reserve( allocateInfo.descriptorSetCount );
+ PoolFree<Device, DescriptorPool, Dispatch> deleter( *this, allocateInfo.descriptorPool, d );
+ for ( size_t i = 0; i < allocateInfo.descriptorSetCount; i++ )
+ {
+ uniqueDescriptorSets.push_back( UniqueHandle<DescriptorSet, Dispatch>( descriptorSets[i], deleter ) );
+ }
+ }
+ return createResultValue(
+ result, std::move( uniqueDescriptorSets ), VULKAN_HPP_NAMESPACE_STRING "::Device::allocateDescriptorSetsUnique" );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE Result Device::freeDescriptorSets( VULKAN_HPP_NAMESPACE::DescriptorPool descriptorPool,
+ uint32_t descriptorSetCount,
+ const VULKAN_HPP_NAMESPACE::DescriptorSet * pDescriptorSets,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkFreeDescriptorSets( m_device,
+ static_cast<VkDescriptorPool>( descriptorPool ),
+ descriptorSetCount,
+ reinterpret_cast<const VkDescriptorSet *>( pDescriptorSets ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE typename ResultValueType<void>::type
+ Device::freeDescriptorSets( VULKAN_HPP_NAMESPACE::DescriptorPool descriptorPool,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::DescriptorSet> const & descriptorSets,
+ Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>(
+ d.vkFreeDescriptorSets( m_device,
+ static_cast<VkDescriptorPool>( descriptorPool ),
+ descriptorSets.size(),
+ reinterpret_cast<const VkDescriptorSet *>( descriptorSets.data() ) ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::freeDescriptorSets" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE Result Device::free( VULKAN_HPP_NAMESPACE::DescriptorPool descriptorPool,
+ uint32_t descriptorSetCount,
+ const VULKAN_HPP_NAMESPACE::DescriptorSet * pDescriptorSets,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkFreeDescriptorSets( m_device,
+ static_cast<VkDescriptorPool>( descriptorPool ),
+ descriptorSetCount,
+ reinterpret_cast<const VkDescriptorSet *>( pDescriptorSets ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE typename ResultValueType<void>::type
+ Device::free( VULKAN_HPP_NAMESPACE::DescriptorPool descriptorPool,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::DescriptorSet> const & descriptorSets,
+ Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>(
+ d.vkFreeDescriptorSets( m_device,
+ static_cast<VkDescriptorPool>( descriptorPool ),
+ descriptorSets.size(),
+ reinterpret_cast<const VkDescriptorSet *>( descriptorSets.data() ) ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::free" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ Device::updateDescriptorSets( uint32_t descriptorWriteCount,
+ const VULKAN_HPP_NAMESPACE::WriteDescriptorSet * pDescriptorWrites,
+ uint32_t descriptorCopyCount,
+ const VULKAN_HPP_NAMESPACE::CopyDescriptorSet * pDescriptorCopies,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkUpdateDescriptorSets( m_device,
+ descriptorWriteCount,
+ reinterpret_cast<const VkWriteDescriptorSet *>( pDescriptorWrites ),
+ descriptorCopyCount,
+ reinterpret_cast<const VkCopyDescriptorSet *>( pDescriptorCopies ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ Device::updateDescriptorSets( ArrayProxy<const VULKAN_HPP_NAMESPACE::WriteDescriptorSet> const & descriptorWrites,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::CopyDescriptorSet> const & descriptorCopies,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkUpdateDescriptorSets( m_device,
+ descriptorWrites.size(),
+ reinterpret_cast<const VkWriteDescriptorSet *>( descriptorWrites.data() ),
+ descriptorCopies.size(),
+ reinterpret_cast<const VkCopyDescriptorSet *>( descriptorCopies.data() ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::createFramebuffer( const VULKAN_HPP_NAMESPACE::FramebufferCreateInfo * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::Framebuffer * pFramebuffer,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkCreateFramebuffer( m_device,
+ reinterpret_cast<const VkFramebufferCreateInfo *>( pCreateInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkFramebuffer *>( pFramebuffer ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::Framebuffer>::type
+ Device::createFramebuffer( const FramebufferCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::Framebuffer framebuffer;
+ Result result = static_cast<Result>(
+ d.vkCreateFramebuffer( m_device,
+ reinterpret_cast<const VkFramebufferCreateInfo *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkFramebuffer *>( &framebuffer ) ) );
+ return createResultValue( result, framebuffer, VULKAN_HPP_NAMESPACE_STRING "::Device::createFramebuffer" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::Framebuffer, Dispatch>>::type
+ Device::createFramebufferUnique( const FramebufferCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::Framebuffer framebuffer;
+ Result result = static_cast<Result>(
+ d.vkCreateFramebuffer( m_device,
+ reinterpret_cast<const VkFramebufferCreateInfo *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkFramebuffer *>( &framebuffer ) ) );
+ ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::Framebuffer, Dispatch>(
+ result, framebuffer, VULKAN_HPP_NAMESPACE_STRING "::Device::createFramebufferUnique", deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroyFramebuffer( VULKAN_HPP_NAMESPACE::Framebuffer framebuffer,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyFramebuffer( m_device,
+ static_cast<VkFramebuffer>( framebuffer ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroyFramebuffer( VULKAN_HPP_NAMESPACE::Framebuffer framebuffer,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyFramebuffer( m_device,
+ static_cast<VkFramebuffer>( framebuffer ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::Framebuffer framebuffer,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyFramebuffer( m_device,
+ static_cast<VkFramebuffer>( framebuffer ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::Framebuffer framebuffer,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyFramebuffer( m_device,
+ static_cast<VkFramebuffer>( framebuffer ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::createRenderPass( const VULKAN_HPP_NAMESPACE::RenderPassCreateInfo * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::RenderPass * pRenderPass,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkCreateRenderPass( m_device,
+ reinterpret_cast<const VkRenderPassCreateInfo *>( pCreateInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkRenderPass *>( pRenderPass ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::RenderPass>::type
+ Device::createRenderPass( const RenderPassCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::RenderPass renderPass;
+ Result result = static_cast<Result>(
+ d.vkCreateRenderPass( m_device,
+ reinterpret_cast<const VkRenderPassCreateInfo *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkRenderPass *>( &renderPass ) ) );
+ return createResultValue( result, renderPass, VULKAN_HPP_NAMESPACE_STRING "::Device::createRenderPass" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::RenderPass, Dispatch>>::type
+ Device::createRenderPassUnique( const RenderPassCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::RenderPass renderPass;
+ Result result = static_cast<Result>(
+ d.vkCreateRenderPass( m_device,
+ reinterpret_cast<const VkRenderPassCreateInfo *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkRenderPass *>( &renderPass ) ) );
+ ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::RenderPass, Dispatch>(
+ result, renderPass, VULKAN_HPP_NAMESPACE_STRING "::Device::createRenderPassUnique", deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroyRenderPass( VULKAN_HPP_NAMESPACE::RenderPass renderPass,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyRenderPass( m_device,
+ static_cast<VkRenderPass>( renderPass ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroyRenderPass( VULKAN_HPP_NAMESPACE::RenderPass renderPass,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyRenderPass( m_device,
+ static_cast<VkRenderPass>( renderPass ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::RenderPass renderPass,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyRenderPass( m_device,
+ static_cast<VkRenderPass>( renderPass ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::RenderPass renderPass,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyRenderPass( m_device,
+ static_cast<VkRenderPass>( renderPass ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::getRenderAreaGranularity( VULKAN_HPP_NAMESPACE::RenderPass renderPass,
+ VULKAN_HPP_NAMESPACE::Extent2D * pGranularity,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkGetRenderAreaGranularity(
+ m_device, static_cast<VkRenderPass>( renderPass ), reinterpret_cast<VkExtent2D *>( pGranularity ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::Extent2D
+ Device::getRenderAreaGranularity( VULKAN_HPP_NAMESPACE::RenderPass renderPass,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_NAMESPACE::Extent2D granularity;
+ d.vkGetRenderAreaGranularity(
+ m_device, static_cast<VkRenderPass>( renderPass ), reinterpret_cast<VkExtent2D *>( &granularity ) );
+ return granularity;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::createCommandPool( const VULKAN_HPP_NAMESPACE::CommandPoolCreateInfo * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::CommandPool * pCommandPool,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkCreateCommandPool( m_device,
+ reinterpret_cast<const VkCommandPoolCreateInfo *>( pCreateInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkCommandPool *>( pCommandPool ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::CommandPool>::type
+ Device::createCommandPool( const CommandPoolCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::CommandPool commandPool;
+ Result result = static_cast<Result>(
+ d.vkCreateCommandPool( m_device,
+ reinterpret_cast<const VkCommandPoolCreateInfo *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkCommandPool *>( &commandPool ) ) );
+ return createResultValue( result, commandPool, VULKAN_HPP_NAMESPACE_STRING "::Device::createCommandPool" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::CommandPool, Dispatch>>::type
+ Device::createCommandPoolUnique( const CommandPoolCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::CommandPool commandPool;
+ Result result = static_cast<Result>(
+ d.vkCreateCommandPool( m_device,
+ reinterpret_cast<const VkCommandPoolCreateInfo *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkCommandPool *>( &commandPool ) ) );
+ ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::CommandPool, Dispatch>(
+ result, commandPool, VULKAN_HPP_NAMESPACE_STRING "::Device::createCommandPoolUnique", deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroyCommandPool( VULKAN_HPP_NAMESPACE::CommandPool commandPool,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyCommandPool( m_device,
+ static_cast<VkCommandPool>( commandPool ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroyCommandPool( VULKAN_HPP_NAMESPACE::CommandPool commandPool,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyCommandPool( m_device,
+ static_cast<VkCommandPool>( commandPool ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::CommandPool commandPool,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyCommandPool( m_device,
+ static_cast<VkCommandPool>( commandPool ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::CommandPool commandPool,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyCommandPool( m_device,
+ static_cast<VkCommandPool>( commandPool ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::resetCommandPool( VULKAN_HPP_NAMESPACE::CommandPool commandPool,
+ VULKAN_HPP_NAMESPACE::CommandPoolResetFlags flags,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkResetCommandPool(
+ m_device, static_cast<VkCommandPool>( commandPool ), static_cast<VkCommandPoolResetFlags>( flags ) ) );
+ }
+#else
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE typename ResultValueType<void>::type
+ Device::resetCommandPool( VULKAN_HPP_NAMESPACE::CommandPool commandPool,
+ VULKAN_HPP_NAMESPACE::CommandPoolResetFlags flags,
+ Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>( d.vkResetCommandPool(
+ m_device, static_cast<VkCommandPool>( commandPool ), static_cast<VkCommandPoolResetFlags>( flags ) ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::resetCommandPool" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::allocateCommandBuffers( const VULKAN_HPP_NAMESPACE::CommandBufferAllocateInfo * pAllocateInfo,
+ VULKAN_HPP_NAMESPACE::CommandBuffer * pCommandBuffers,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkAllocateCommandBuffers( m_device,
+ reinterpret_cast<const VkCommandBufferAllocateInfo *>( pAllocateInfo ),
+ reinterpret_cast<VkCommandBuffer *>( pCommandBuffers ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename CommandBufferAllocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<CommandBuffer, CommandBufferAllocator>>::type
+ Device::allocateCommandBuffers( const CommandBufferAllocateInfo & allocateInfo, Dispatch const & d ) const
+ {
+ std::vector<CommandBuffer, CommandBufferAllocator> commandBuffers( allocateInfo.commandBufferCount );
+ Result result = static_cast<Result>(
+ d.vkAllocateCommandBuffers( m_device,
+ reinterpret_cast<const VkCommandBufferAllocateInfo *>( &allocateInfo ),
+ reinterpret_cast<VkCommandBuffer *>( commandBuffers.data() ) ) );
+ return createResultValue( result, commandBuffers, VULKAN_HPP_NAMESPACE_STRING "::Device::allocateCommandBuffers" );
+ }
+
+ template <typename CommandBufferAllocator,
+ typename Dispatch,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, CommandBuffer>::value, int>::type>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<CommandBuffer, CommandBufferAllocator>>::type
+ Device::allocateCommandBuffers( const CommandBufferAllocateInfo & allocateInfo,
+ CommandBufferAllocator & commandBufferAllocator,
+ Dispatch const & d ) const
+ {
+ std::vector<CommandBuffer, CommandBufferAllocator> commandBuffers( allocateInfo.commandBufferCount,
+ commandBufferAllocator );
+ Result result = static_cast<Result>(
+ d.vkAllocateCommandBuffers( m_device,
+ reinterpret_cast<const VkCommandBufferAllocateInfo *>( &allocateInfo ),
+ reinterpret_cast<VkCommandBuffer *>( commandBuffers.data() ) ) );
+ return createResultValue( result, commandBuffers, VULKAN_HPP_NAMESPACE_STRING "::Device::allocateCommandBuffers" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch, typename CommandBufferAllocator>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<UniqueHandle<CommandBuffer, Dispatch>, CommandBufferAllocator>>::type
+ Device::allocateCommandBuffersUnique( const CommandBufferAllocateInfo & allocateInfo, Dispatch const & d ) const
+ {
+ std::vector<UniqueHandle<CommandBuffer, Dispatch>, CommandBufferAllocator> uniqueCommandBuffers;
+ std::vector<CommandBuffer> commandBuffers( allocateInfo.commandBufferCount );
+ Result result = static_cast<Result>(
+ d.vkAllocateCommandBuffers( m_device,
+ reinterpret_cast<const VkCommandBufferAllocateInfo *>( &allocateInfo ),
+ reinterpret_cast<VkCommandBuffer *>( commandBuffers.data() ) ) );
+ if ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ uniqueCommandBuffers.reserve( allocateInfo.commandBufferCount );
+ PoolFree<Device, CommandPool, Dispatch> deleter( *this, allocateInfo.commandPool, d );
+ for ( size_t i = 0; i < allocateInfo.commandBufferCount; i++ )
+ {
+ uniqueCommandBuffers.push_back( UniqueHandle<CommandBuffer, Dispatch>( commandBuffers[i], deleter ) );
+ }
+ }
+ return createResultValue(
+ result, std::move( uniqueCommandBuffers ), VULKAN_HPP_NAMESPACE_STRING "::Device::allocateCommandBuffersUnique" );
+ }
+
+ template <typename Dispatch,
+ typename CommandBufferAllocator,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, UniqueHandle<CommandBuffer, Dispatch>>::value,
+ int>::type>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<UniqueHandle<CommandBuffer, Dispatch>, CommandBufferAllocator>>::type
+ Device::allocateCommandBuffersUnique( const CommandBufferAllocateInfo & allocateInfo,
+ CommandBufferAllocator & commandBufferAllocator,
+ Dispatch const & d ) const
+ {
+ std::vector<UniqueHandle<CommandBuffer, Dispatch>, CommandBufferAllocator> uniqueCommandBuffers(
+ commandBufferAllocator );
+ std::vector<CommandBuffer> commandBuffers( allocateInfo.commandBufferCount );
+ Result result = static_cast<Result>(
+ d.vkAllocateCommandBuffers( m_device,
+ reinterpret_cast<const VkCommandBufferAllocateInfo *>( &allocateInfo ),
+ reinterpret_cast<VkCommandBuffer *>( commandBuffers.data() ) ) );
+ if ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ uniqueCommandBuffers.reserve( allocateInfo.commandBufferCount );
+ PoolFree<Device, CommandPool, Dispatch> deleter( *this, allocateInfo.commandPool, d );
+ for ( size_t i = 0; i < allocateInfo.commandBufferCount; i++ )
+ {
+ uniqueCommandBuffers.push_back( UniqueHandle<CommandBuffer, Dispatch>( commandBuffers[i], deleter ) );
+ }
+ }
+ return createResultValue(
+ result, std::move( uniqueCommandBuffers ), VULKAN_HPP_NAMESPACE_STRING "::Device::allocateCommandBuffersUnique" );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::freeCommandBuffers( VULKAN_HPP_NAMESPACE::CommandPool commandPool,
+ uint32_t commandBufferCount,
+ const VULKAN_HPP_NAMESPACE::CommandBuffer * pCommandBuffers,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkFreeCommandBuffers( m_device,
+ static_cast<VkCommandPool>( commandPool ),
+ commandBufferCount,
+ reinterpret_cast<const VkCommandBuffer *>( pCommandBuffers ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ Device::freeCommandBuffers( VULKAN_HPP_NAMESPACE::CommandPool commandPool,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::CommandBuffer> const & commandBuffers,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkFreeCommandBuffers( m_device,
+ static_cast<VkCommandPool>( commandPool ),
+ commandBuffers.size(),
+ reinterpret_cast<const VkCommandBuffer *>( commandBuffers.data() ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::free( VULKAN_HPP_NAMESPACE::CommandPool commandPool,
+ uint32_t commandBufferCount,
+ const VULKAN_HPP_NAMESPACE::CommandBuffer * pCommandBuffers,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkFreeCommandBuffers( m_device,
+ static_cast<VkCommandPool>( commandPool ),
+ commandBufferCount,
+ reinterpret_cast<const VkCommandBuffer *>( pCommandBuffers ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::free( VULKAN_HPP_NAMESPACE::CommandPool commandPool,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::CommandBuffer> const & commandBuffers,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkFreeCommandBuffers( m_device,
+ static_cast<VkCommandPool>( commandPool ),
+ commandBuffers.size(),
+ reinterpret_cast<const VkCommandBuffer *>( commandBuffers.data() ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result CommandBuffer::begin(
+ const VULKAN_HPP_NAMESPACE::CommandBufferBeginInfo * pBeginInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkBeginCommandBuffer( m_commandBuffer, reinterpret_cast<const VkCommandBufferBeginInfo *>( pBeginInfo ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type
+ CommandBuffer::begin( const CommandBufferBeginInfo & beginInfo, Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>(
+ d.vkBeginCommandBuffer( m_commandBuffer, reinterpret_cast<const VkCommandBufferBeginInfo *>( &beginInfo ) ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::CommandBuffer::begin" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result CommandBuffer::end( Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkEndCommandBuffer( m_commandBuffer ) );
+ }
+#else
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type
+ CommandBuffer::end( Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>( d.vkEndCommandBuffer( m_commandBuffer ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::CommandBuffer::end" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result CommandBuffer::reset(
+ VULKAN_HPP_NAMESPACE::CommandBufferResetFlags flags, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkResetCommandBuffer( m_commandBuffer, static_cast<VkCommandBufferResetFlags>( flags ) ) );
+ }
+#else
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE typename ResultValueType<void>::type
+ CommandBuffer::reset( VULKAN_HPP_NAMESPACE::CommandBufferResetFlags flags, Dispatch const & d ) const
+ {
+ Result result =
+ static_cast<Result>( d.vkResetCommandBuffer( m_commandBuffer, static_cast<VkCommandBufferResetFlags>( flags ) ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::CommandBuffer::reset" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::bindPipeline( VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint,
+ VULKAN_HPP_NAMESPACE::Pipeline pipeline,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdBindPipeline(
+ m_commandBuffer, static_cast<VkPipelineBindPoint>( pipelineBindPoint ), static_cast<VkPipeline>( pipeline ) );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::setViewport( uint32_t firstViewport,
+ uint32_t viewportCount,
+ const VULKAN_HPP_NAMESPACE::Viewport * pViewports,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdSetViewport(
+ m_commandBuffer, firstViewport, viewportCount, reinterpret_cast<const VkViewport *>( pViewports ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::setViewport( uint32_t firstViewport,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::Viewport> const & viewports,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdSetViewport(
+ m_commandBuffer, firstViewport, viewports.size(), reinterpret_cast<const VkViewport *>( viewports.data() ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::setScissor( uint32_t firstScissor,
+ uint32_t scissorCount,
+ const VULKAN_HPP_NAMESPACE::Rect2D * pScissors,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdSetScissor( m_commandBuffer, firstScissor, scissorCount, reinterpret_cast<const VkRect2D *>( pScissors ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::setScissor( uint32_t firstScissor,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::Rect2D> const & scissors,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdSetScissor(
+ m_commandBuffer, firstScissor, scissors.size(), reinterpret_cast<const VkRect2D *>( scissors.data() ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::setLineWidth( float lineWidth, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdSetLineWidth( m_commandBuffer, lineWidth );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::setDepthBias( float depthBiasConstantFactor,
+ float depthBiasClamp,
+ float depthBiasSlopeFactor,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdSetDepthBias( m_commandBuffer, depthBiasConstantFactor, depthBiasClamp, depthBiasSlopeFactor );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::setBlendConstants( const float blendConstants[4],
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdSetBlendConstants( m_commandBuffer, blendConstants );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::setDepthBounds( float minDepthBounds,
+ float maxDepthBounds,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdSetDepthBounds( m_commandBuffer, minDepthBounds, maxDepthBounds );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::setStencilCompareMask( VULKAN_HPP_NAMESPACE::StencilFaceFlags faceMask,
+ uint32_t compareMask,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdSetStencilCompareMask( m_commandBuffer, static_cast<VkStencilFaceFlags>( faceMask ), compareMask );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::setStencilWriteMask( VULKAN_HPP_NAMESPACE::StencilFaceFlags faceMask,
+ uint32_t writeMask,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdSetStencilWriteMask( m_commandBuffer, static_cast<VkStencilFaceFlags>( faceMask ), writeMask );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::setStencilReference( VULKAN_HPP_NAMESPACE::StencilFaceFlags faceMask,
+ uint32_t reference,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdSetStencilReference( m_commandBuffer, static_cast<VkStencilFaceFlags>( faceMask ), reference );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::bindDescriptorSets( VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint,
+ VULKAN_HPP_NAMESPACE::PipelineLayout layout,
+ uint32_t firstSet,
+ uint32_t descriptorSetCount,
+ const VULKAN_HPP_NAMESPACE::DescriptorSet * pDescriptorSets,
+ uint32_t dynamicOffsetCount,
+ const uint32_t * pDynamicOffsets,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdBindDescriptorSets( m_commandBuffer,
+ static_cast<VkPipelineBindPoint>( pipelineBindPoint ),
+ static_cast<VkPipelineLayout>( layout ),
+ firstSet,
+ descriptorSetCount,
+ reinterpret_cast<const VkDescriptorSet *>( pDescriptorSets ),
+ dynamicOffsetCount,
+ pDynamicOffsets );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::bindDescriptorSets( VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint,
+ VULKAN_HPP_NAMESPACE::PipelineLayout layout,
+ uint32_t firstSet,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::DescriptorSet> const & descriptorSets,
+ ArrayProxy<const uint32_t> const & dynamicOffsets,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdBindDescriptorSets( m_commandBuffer,
+ static_cast<VkPipelineBindPoint>( pipelineBindPoint ),
+ static_cast<VkPipelineLayout>( layout ),
+ firstSet,
+ descriptorSets.size(),
+ reinterpret_cast<const VkDescriptorSet *>( descriptorSets.data() ),
+ dynamicOffsets.size(),
+ dynamicOffsets.data() );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::bindIndexBuffer( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize offset,
+ VULKAN_HPP_NAMESPACE::IndexType indexType,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdBindIndexBuffer( m_commandBuffer,
+ static_cast<VkBuffer>( buffer ),
+ static_cast<VkDeviceSize>( offset ),
+ static_cast<VkIndexType>( indexType ) );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::bindVertexBuffers( uint32_t firstBinding,
+ uint32_t bindingCount,
+ const VULKAN_HPP_NAMESPACE::Buffer * pBuffers,
+ const VULKAN_HPP_NAMESPACE::DeviceSize * pOffsets,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdBindVertexBuffers( m_commandBuffer,
+ firstBinding,
+ bindingCount,
+ reinterpret_cast<const VkBuffer *>( pBuffers ),
+ reinterpret_cast<const VkDeviceSize *>( pOffsets ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::bindVertexBuffers( uint32_t firstBinding,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::Buffer> const & buffers,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::DeviceSize> const & offsets,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS
+ {
+# ifdef VULKAN_HPP_NO_EXCEPTIONS
+ VULKAN_HPP_ASSERT( buffers.size() == offsets.size() );
+# else
+ if ( buffers.size() != offsets.size() )
+ {
+ throw LogicError( VULKAN_HPP_NAMESPACE_STRING
+ "::CommandBuffer::bindVertexBuffers: buffers.size() != offsets.size()" );
+ }
+# endif /*VULKAN_HPP_NO_EXCEPTIONS*/
+
+ d.vkCmdBindVertexBuffers( m_commandBuffer,
+ firstBinding,
+ buffers.size(),
+ reinterpret_cast<const VkBuffer *>( buffers.data() ),
+ reinterpret_cast<const VkDeviceSize *>( offsets.data() ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::draw( uint32_t vertexCount,
+ uint32_t instanceCount,
+ uint32_t firstVertex,
+ uint32_t firstInstance,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdDraw( m_commandBuffer, vertexCount, instanceCount, firstVertex, firstInstance );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::drawIndexed( uint32_t indexCount,
+ uint32_t instanceCount,
+ uint32_t firstIndex,
+ int32_t vertexOffset,
+ uint32_t firstInstance,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdDrawIndexed( m_commandBuffer, indexCount, instanceCount, firstIndex, vertexOffset, firstInstance );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::drawIndirect( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize offset,
+ uint32_t drawCount,
+ uint32_t stride,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdDrawIndirect(
+ m_commandBuffer, static_cast<VkBuffer>( buffer ), static_cast<VkDeviceSize>( offset ), drawCount, stride );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::drawIndexedIndirect( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize offset,
+ uint32_t drawCount,
+ uint32_t stride,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdDrawIndexedIndirect(
+ m_commandBuffer, static_cast<VkBuffer>( buffer ), static_cast<VkDeviceSize>( offset ), drawCount, stride );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::dispatch( uint32_t groupCountX,
+ uint32_t groupCountY,
+ uint32_t groupCountZ,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdDispatch( m_commandBuffer, groupCountX, groupCountY, groupCountZ );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::dispatchIndirect( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize offset,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdDispatchIndirect( m_commandBuffer, static_cast<VkBuffer>( buffer ), static_cast<VkDeviceSize>( offset ) );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::copyBuffer( VULKAN_HPP_NAMESPACE::Buffer srcBuffer,
+ VULKAN_HPP_NAMESPACE::Buffer dstBuffer,
+ uint32_t regionCount,
+ const VULKAN_HPP_NAMESPACE::BufferCopy * pRegions,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdCopyBuffer( m_commandBuffer,
+ static_cast<VkBuffer>( srcBuffer ),
+ static_cast<VkBuffer>( dstBuffer ),
+ regionCount,
+ reinterpret_cast<const VkBufferCopy *>( pRegions ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::copyBuffer( VULKAN_HPP_NAMESPACE::Buffer srcBuffer,
+ VULKAN_HPP_NAMESPACE::Buffer dstBuffer,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::BufferCopy> const & regions,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdCopyBuffer( m_commandBuffer,
+ static_cast<VkBuffer>( srcBuffer ),
+ static_cast<VkBuffer>( dstBuffer ),
+ regions.size(),
+ reinterpret_cast<const VkBufferCopy *>( regions.data() ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::copyImage( VULKAN_HPP_NAMESPACE::Image srcImage,
+ VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout,
+ VULKAN_HPP_NAMESPACE::Image dstImage,
+ VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout,
+ uint32_t regionCount,
+ const VULKAN_HPP_NAMESPACE::ImageCopy * pRegions,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdCopyImage( m_commandBuffer,
+ static_cast<VkImage>( srcImage ),
+ static_cast<VkImageLayout>( srcImageLayout ),
+ static_cast<VkImage>( dstImage ),
+ static_cast<VkImageLayout>( dstImageLayout ),
+ regionCount,
+ reinterpret_cast<const VkImageCopy *>( pRegions ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::copyImage( VULKAN_HPP_NAMESPACE::Image srcImage,
+ VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout,
+ VULKAN_HPP_NAMESPACE::Image dstImage,
+ VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::ImageCopy> const & regions,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdCopyImage( m_commandBuffer,
+ static_cast<VkImage>( srcImage ),
+ static_cast<VkImageLayout>( srcImageLayout ),
+ static_cast<VkImage>( dstImage ),
+ static_cast<VkImageLayout>( dstImageLayout ),
+ regions.size(),
+ reinterpret_cast<const VkImageCopy *>( regions.data() ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::blitImage( VULKAN_HPP_NAMESPACE::Image srcImage,
+ VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout,
+ VULKAN_HPP_NAMESPACE::Image dstImage,
+ VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout,
+ uint32_t regionCount,
+ const VULKAN_HPP_NAMESPACE::ImageBlit * pRegions,
+ VULKAN_HPP_NAMESPACE::Filter filter,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdBlitImage( m_commandBuffer,
+ static_cast<VkImage>( srcImage ),
+ static_cast<VkImageLayout>( srcImageLayout ),
+ static_cast<VkImage>( dstImage ),
+ static_cast<VkImageLayout>( dstImageLayout ),
+ regionCount,
+ reinterpret_cast<const VkImageBlit *>( pRegions ),
+ static_cast<VkFilter>( filter ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::blitImage( VULKAN_HPP_NAMESPACE::Image srcImage,
+ VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout,
+ VULKAN_HPP_NAMESPACE::Image dstImage,
+ VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::ImageBlit> const & regions,
+ VULKAN_HPP_NAMESPACE::Filter filter,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdBlitImage( m_commandBuffer,
+ static_cast<VkImage>( srcImage ),
+ static_cast<VkImageLayout>( srcImageLayout ),
+ static_cast<VkImage>( dstImage ),
+ static_cast<VkImageLayout>( dstImageLayout ),
+ regions.size(),
+ reinterpret_cast<const VkImageBlit *>( regions.data() ),
+ static_cast<VkFilter>( filter ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::copyBufferToImage( VULKAN_HPP_NAMESPACE::Buffer srcBuffer,
+ VULKAN_HPP_NAMESPACE::Image dstImage,
+ VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout,
+ uint32_t regionCount,
+ const VULKAN_HPP_NAMESPACE::BufferImageCopy * pRegions,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdCopyBufferToImage( m_commandBuffer,
+ static_cast<VkBuffer>( srcBuffer ),
+ static_cast<VkImage>( dstImage ),
+ static_cast<VkImageLayout>( dstImageLayout ),
+ regionCount,
+ reinterpret_cast<const VkBufferImageCopy *>( pRegions ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::copyBufferToImage( VULKAN_HPP_NAMESPACE::Buffer srcBuffer,
+ VULKAN_HPP_NAMESPACE::Image dstImage,
+ VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::BufferImageCopy> const & regions,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdCopyBufferToImage( m_commandBuffer,
+ static_cast<VkBuffer>( srcBuffer ),
+ static_cast<VkImage>( dstImage ),
+ static_cast<VkImageLayout>( dstImageLayout ),
+ regions.size(),
+ reinterpret_cast<const VkBufferImageCopy *>( regions.data() ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::copyImageToBuffer( VULKAN_HPP_NAMESPACE::Image srcImage,
+ VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout,
+ VULKAN_HPP_NAMESPACE::Buffer dstBuffer,
+ uint32_t regionCount,
+ const VULKAN_HPP_NAMESPACE::BufferImageCopy * pRegions,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdCopyImageToBuffer( m_commandBuffer,
+ static_cast<VkImage>( srcImage ),
+ static_cast<VkImageLayout>( srcImageLayout ),
+ static_cast<VkBuffer>( dstBuffer ),
+ regionCount,
+ reinterpret_cast<const VkBufferImageCopy *>( pRegions ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::copyImageToBuffer( VULKAN_HPP_NAMESPACE::Image srcImage,
+ VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout,
+ VULKAN_HPP_NAMESPACE::Buffer dstBuffer,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::BufferImageCopy> const & regions,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdCopyImageToBuffer( m_commandBuffer,
+ static_cast<VkImage>( srcImage ),
+ static_cast<VkImageLayout>( srcImageLayout ),
+ static_cast<VkBuffer>( dstBuffer ),
+ regions.size(),
+ reinterpret_cast<const VkBufferImageCopy *>( regions.data() ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::updateBuffer( VULKAN_HPP_NAMESPACE::Buffer dstBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize dstOffset,
+ VULKAN_HPP_NAMESPACE::DeviceSize dataSize,
+ const void * pData,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdUpdateBuffer( m_commandBuffer,
+ static_cast<VkBuffer>( dstBuffer ),
+ static_cast<VkDeviceSize>( dstOffset ),
+ static_cast<VkDeviceSize>( dataSize ),
+ pData );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename T, typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::updateBuffer( VULKAN_HPP_NAMESPACE::Buffer dstBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize dstOffset,
+ ArrayProxy<const T> const & data,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdUpdateBuffer( m_commandBuffer,
+ static_cast<VkBuffer>( dstBuffer ),
+ static_cast<VkDeviceSize>( dstOffset ),
+ data.size() * sizeof( T ),
+ reinterpret_cast<const void *>( data.data() ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::fillBuffer( VULKAN_HPP_NAMESPACE::Buffer dstBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize dstOffset,
+ VULKAN_HPP_NAMESPACE::DeviceSize size,
+ uint32_t data,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdFillBuffer( m_commandBuffer,
+ static_cast<VkBuffer>( dstBuffer ),
+ static_cast<VkDeviceSize>( dstOffset ),
+ static_cast<VkDeviceSize>( size ),
+ data );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::clearColorImage( VULKAN_HPP_NAMESPACE::Image image,
+ VULKAN_HPP_NAMESPACE::ImageLayout imageLayout,
+ const VULKAN_HPP_NAMESPACE::ClearColorValue * pColor,
+ uint32_t rangeCount,
+ const VULKAN_HPP_NAMESPACE::ImageSubresourceRange * pRanges,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdClearColorImage( m_commandBuffer,
+ static_cast<VkImage>( image ),
+ static_cast<VkImageLayout>( imageLayout ),
+ reinterpret_cast<const VkClearColorValue *>( pColor ),
+ rangeCount,
+ reinterpret_cast<const VkImageSubresourceRange *>( pRanges ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::clearColorImage( VULKAN_HPP_NAMESPACE::Image image,
+ VULKAN_HPP_NAMESPACE::ImageLayout imageLayout,
+ const ClearColorValue & color,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::ImageSubresourceRange> const & ranges,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdClearColorImage( m_commandBuffer,
+ static_cast<VkImage>( image ),
+ static_cast<VkImageLayout>( imageLayout ),
+ reinterpret_cast<const VkClearColorValue *>( &color ),
+ ranges.size(),
+ reinterpret_cast<const VkImageSubresourceRange *>( ranges.data() ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::clearDepthStencilImage( VULKAN_HPP_NAMESPACE::Image image,
+ VULKAN_HPP_NAMESPACE::ImageLayout imageLayout,
+ const VULKAN_HPP_NAMESPACE::ClearDepthStencilValue * pDepthStencil,
+ uint32_t rangeCount,
+ const VULKAN_HPP_NAMESPACE::ImageSubresourceRange * pRanges,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdClearDepthStencilImage( m_commandBuffer,
+ static_cast<VkImage>( image ),
+ static_cast<VkImageLayout>( imageLayout ),
+ reinterpret_cast<const VkClearDepthStencilValue *>( pDepthStencil ),
+ rangeCount,
+ reinterpret_cast<const VkImageSubresourceRange *>( pRanges ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::clearDepthStencilImage( VULKAN_HPP_NAMESPACE::Image image,
+ VULKAN_HPP_NAMESPACE::ImageLayout imageLayout,
+ const ClearDepthStencilValue & depthStencil,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::ImageSubresourceRange> const & ranges,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdClearDepthStencilImage( m_commandBuffer,
+ static_cast<VkImage>( image ),
+ static_cast<VkImageLayout>( imageLayout ),
+ reinterpret_cast<const VkClearDepthStencilValue *>( &depthStencil ),
+ ranges.size(),
+ reinterpret_cast<const VkImageSubresourceRange *>( ranges.data() ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::clearAttachments( uint32_t attachmentCount,
+ const VULKAN_HPP_NAMESPACE::ClearAttachment * pAttachments,
+ uint32_t rectCount,
+ const VULKAN_HPP_NAMESPACE::ClearRect * pRects,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdClearAttachments( m_commandBuffer,
+ attachmentCount,
+ reinterpret_cast<const VkClearAttachment *>( pAttachments ),
+ rectCount,
+ reinterpret_cast<const VkClearRect *>( pRects ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::clearAttachments( ArrayProxy<const VULKAN_HPP_NAMESPACE::ClearAttachment> const & attachments,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::ClearRect> const & rects,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdClearAttachments( m_commandBuffer,
+ attachments.size(),
+ reinterpret_cast<const VkClearAttachment *>( attachments.data() ),
+ rects.size(),
+ reinterpret_cast<const VkClearRect *>( rects.data() ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::resolveImage( VULKAN_HPP_NAMESPACE::Image srcImage,
+ VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout,
+ VULKAN_HPP_NAMESPACE::Image dstImage,
+ VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout,
+ uint32_t regionCount,
+ const VULKAN_HPP_NAMESPACE::ImageResolve * pRegions,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdResolveImage( m_commandBuffer,
+ static_cast<VkImage>( srcImage ),
+ static_cast<VkImageLayout>( srcImageLayout ),
+ static_cast<VkImage>( dstImage ),
+ static_cast<VkImageLayout>( dstImageLayout ),
+ regionCount,
+ reinterpret_cast<const VkImageResolve *>( pRegions ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::resolveImage( VULKAN_HPP_NAMESPACE::Image srcImage,
+ VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout,
+ VULKAN_HPP_NAMESPACE::Image dstImage,
+ VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::ImageResolve> const & regions,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdResolveImage( m_commandBuffer,
+ static_cast<VkImage>( srcImage ),
+ static_cast<VkImageLayout>( srcImageLayout ),
+ static_cast<VkImage>( dstImage ),
+ static_cast<VkImageLayout>( dstImageLayout ),
+ regions.size(),
+ reinterpret_cast<const VkImageResolve *>( regions.data() ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::setEvent( VULKAN_HPP_NAMESPACE::Event event,
+ VULKAN_HPP_NAMESPACE::PipelineStageFlags stageMask,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdSetEvent( m_commandBuffer, static_cast<VkEvent>( event ), static_cast<VkPipelineStageFlags>( stageMask ) );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::resetEvent( VULKAN_HPP_NAMESPACE::Event event,
+ VULKAN_HPP_NAMESPACE::PipelineStageFlags stageMask,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdResetEvent( m_commandBuffer, static_cast<VkEvent>( event ), static_cast<VkPipelineStageFlags>( stageMask ) );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::waitEvents( uint32_t eventCount,
+ const VULKAN_HPP_NAMESPACE::Event * pEvents,
+ VULKAN_HPP_NAMESPACE::PipelineStageFlags srcStageMask,
+ VULKAN_HPP_NAMESPACE::PipelineStageFlags dstStageMask,
+ uint32_t memoryBarrierCount,
+ const VULKAN_HPP_NAMESPACE::MemoryBarrier * pMemoryBarriers,
+ uint32_t bufferMemoryBarrierCount,
+ const VULKAN_HPP_NAMESPACE::BufferMemoryBarrier * pBufferMemoryBarriers,
+ uint32_t imageMemoryBarrierCount,
+ const VULKAN_HPP_NAMESPACE::ImageMemoryBarrier * pImageMemoryBarriers,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdWaitEvents( m_commandBuffer,
+ eventCount,
+ reinterpret_cast<const VkEvent *>( pEvents ),
+ static_cast<VkPipelineStageFlags>( srcStageMask ),
+ static_cast<VkPipelineStageFlags>( dstStageMask ),
+ memoryBarrierCount,
+ reinterpret_cast<const VkMemoryBarrier *>( pMemoryBarriers ),
+ bufferMemoryBarrierCount,
+ reinterpret_cast<const VkBufferMemoryBarrier *>( pBufferMemoryBarriers ),
+ imageMemoryBarrierCount,
+ reinterpret_cast<const VkImageMemoryBarrier *>( pImageMemoryBarriers ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::waitEvents( ArrayProxy<const VULKAN_HPP_NAMESPACE::Event> const & events,
+ VULKAN_HPP_NAMESPACE::PipelineStageFlags srcStageMask,
+ VULKAN_HPP_NAMESPACE::PipelineStageFlags dstStageMask,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::MemoryBarrier> const & memoryBarriers,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::BufferMemoryBarrier> const & bufferMemoryBarriers,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::ImageMemoryBarrier> const & imageMemoryBarriers,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdWaitEvents( m_commandBuffer,
+ events.size(),
+ reinterpret_cast<const VkEvent *>( events.data() ),
+ static_cast<VkPipelineStageFlags>( srcStageMask ),
+ static_cast<VkPipelineStageFlags>( dstStageMask ),
+ memoryBarriers.size(),
+ reinterpret_cast<const VkMemoryBarrier *>( memoryBarriers.data() ),
+ bufferMemoryBarriers.size(),
+ reinterpret_cast<const VkBufferMemoryBarrier *>( bufferMemoryBarriers.data() ),
+ imageMemoryBarriers.size(),
+ reinterpret_cast<const VkImageMemoryBarrier *>( imageMemoryBarriers.data() ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::pipelineBarrier( VULKAN_HPP_NAMESPACE::PipelineStageFlags srcStageMask,
+ VULKAN_HPP_NAMESPACE::PipelineStageFlags dstStageMask,
+ VULKAN_HPP_NAMESPACE::DependencyFlags dependencyFlags,
+ uint32_t memoryBarrierCount,
+ const VULKAN_HPP_NAMESPACE::MemoryBarrier * pMemoryBarriers,
+ uint32_t bufferMemoryBarrierCount,
+ const VULKAN_HPP_NAMESPACE::BufferMemoryBarrier * pBufferMemoryBarriers,
+ uint32_t imageMemoryBarrierCount,
+ const VULKAN_HPP_NAMESPACE::ImageMemoryBarrier * pImageMemoryBarriers,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdPipelineBarrier( m_commandBuffer,
+ static_cast<VkPipelineStageFlags>( srcStageMask ),
+ static_cast<VkPipelineStageFlags>( dstStageMask ),
+ static_cast<VkDependencyFlags>( dependencyFlags ),
+ memoryBarrierCount,
+ reinterpret_cast<const VkMemoryBarrier *>( pMemoryBarriers ),
+ bufferMemoryBarrierCount,
+ reinterpret_cast<const VkBufferMemoryBarrier *>( pBufferMemoryBarriers ),
+ imageMemoryBarrierCount,
+ reinterpret_cast<const VkImageMemoryBarrier *>( pImageMemoryBarriers ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::pipelineBarrier(
+ VULKAN_HPP_NAMESPACE::PipelineStageFlags srcStageMask,
+ VULKAN_HPP_NAMESPACE::PipelineStageFlags dstStageMask,
+ VULKAN_HPP_NAMESPACE::DependencyFlags dependencyFlags,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::MemoryBarrier> const & memoryBarriers,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::BufferMemoryBarrier> const & bufferMemoryBarriers,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::ImageMemoryBarrier> const & imageMemoryBarriers,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdPipelineBarrier( m_commandBuffer,
+ static_cast<VkPipelineStageFlags>( srcStageMask ),
+ static_cast<VkPipelineStageFlags>( dstStageMask ),
+ static_cast<VkDependencyFlags>( dependencyFlags ),
+ memoryBarriers.size(),
+ reinterpret_cast<const VkMemoryBarrier *>( memoryBarriers.data() ),
+ bufferMemoryBarriers.size(),
+ reinterpret_cast<const VkBufferMemoryBarrier *>( bufferMemoryBarriers.data() ),
+ imageMemoryBarriers.size(),
+ reinterpret_cast<const VkImageMemoryBarrier *>( imageMemoryBarriers.data() ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::beginQuery( VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ uint32_t query,
+ VULKAN_HPP_NAMESPACE::QueryControlFlags flags,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdBeginQuery(
+ m_commandBuffer, static_cast<VkQueryPool>( queryPool ), query, static_cast<VkQueryControlFlags>( flags ) );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::endQuery( VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ uint32_t query,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdEndQuery( m_commandBuffer, static_cast<VkQueryPool>( queryPool ), query );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::resetQueryPool( VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ uint32_t firstQuery,
+ uint32_t queryCount,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdResetQueryPool( m_commandBuffer, static_cast<VkQueryPool>( queryPool ), firstQuery, queryCount );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::writeTimestamp( VULKAN_HPP_NAMESPACE::PipelineStageFlagBits pipelineStage,
+ VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ uint32_t query,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdWriteTimestamp( m_commandBuffer,
+ static_cast<VkPipelineStageFlagBits>( pipelineStage ),
+ static_cast<VkQueryPool>( queryPool ),
+ query );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::copyQueryPoolResults( VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ uint32_t firstQuery,
+ uint32_t queryCount,
+ VULKAN_HPP_NAMESPACE::Buffer dstBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize dstOffset,
+ VULKAN_HPP_NAMESPACE::DeviceSize stride,
+ VULKAN_HPP_NAMESPACE::QueryResultFlags flags,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdCopyQueryPoolResults( m_commandBuffer,
+ static_cast<VkQueryPool>( queryPool ),
+ firstQuery,
+ queryCount,
+ static_cast<VkBuffer>( dstBuffer ),
+ static_cast<VkDeviceSize>( dstOffset ),
+ static_cast<VkDeviceSize>( stride ),
+ static_cast<VkQueryResultFlags>( flags ) );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::pushConstants( VULKAN_HPP_NAMESPACE::PipelineLayout layout,
+ VULKAN_HPP_NAMESPACE::ShaderStageFlags stageFlags,
+ uint32_t offset,
+ uint32_t size,
+ const void * pValues,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdPushConstants( m_commandBuffer,
+ static_cast<VkPipelineLayout>( layout ),
+ static_cast<VkShaderStageFlags>( stageFlags ),
+ offset,
+ size,
+ pValues );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename T, typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::pushConstants( VULKAN_HPP_NAMESPACE::PipelineLayout layout,
+ VULKAN_HPP_NAMESPACE::ShaderStageFlags stageFlags,
+ uint32_t offset,
+ ArrayProxy<const T> const & values,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdPushConstants( m_commandBuffer,
+ static_cast<VkPipelineLayout>( layout ),
+ static_cast<VkShaderStageFlags>( stageFlags ),
+ offset,
+ values.size() * sizeof( T ),
+ reinterpret_cast<const void *>( values.data() ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::beginRenderPass( const VULKAN_HPP_NAMESPACE::RenderPassBeginInfo * pRenderPassBegin,
+ VULKAN_HPP_NAMESPACE::SubpassContents contents,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdBeginRenderPass( m_commandBuffer,
+ reinterpret_cast<const VkRenderPassBeginInfo *>( pRenderPassBegin ),
+ static_cast<VkSubpassContents>( contents ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::beginRenderPass( const RenderPassBeginInfo & renderPassBegin,
+ VULKAN_HPP_NAMESPACE::SubpassContents contents,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdBeginRenderPass( m_commandBuffer,
+ reinterpret_cast<const VkRenderPassBeginInfo *>( &renderPassBegin ),
+ static_cast<VkSubpassContents>( contents ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::nextSubpass( VULKAN_HPP_NAMESPACE::SubpassContents contents,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdNextSubpass( m_commandBuffer, static_cast<VkSubpassContents>( contents ) );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::endRenderPass( Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdEndRenderPass( m_commandBuffer );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::executeCommands( uint32_t commandBufferCount,
+ const VULKAN_HPP_NAMESPACE::CommandBuffer * pCommandBuffers,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdExecuteCommands(
+ m_commandBuffer, commandBufferCount, reinterpret_cast<const VkCommandBuffer *>( pCommandBuffers ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::executeCommands( ArrayProxy<const VULKAN_HPP_NAMESPACE::CommandBuffer> const & commandBuffers,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdExecuteCommands(
+ m_commandBuffer, commandBuffers.size(), reinterpret_cast<const VkCommandBuffer *>( commandBuffers.data() ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_VERSION_1_1 ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result enumerateInstanceVersion( uint32_t * pApiVersion,
+ Dispatch const & d ) VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkEnumerateInstanceVersion( pApiVersion ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE typename ResultValueType<uint32_t>::type enumerateInstanceVersion( Dispatch const & d )
+ {
+ uint32_t apiVersion;
+ Result result = static_cast<Result>( d.vkEnumerateInstanceVersion( &apiVersion ) );
+ return createResultValue( result, apiVersion, VULKAN_HPP_NAMESPACE_STRING "::enumerateInstanceVersion" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::bindBufferMemory2( uint32_t bindInfoCount,
+ const VULKAN_HPP_NAMESPACE::BindBufferMemoryInfo * pBindInfos,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkBindBufferMemory2(
+ m_device, bindInfoCount, reinterpret_cast<const VkBindBufferMemoryInfo *>( pBindInfos ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type
+ Device::bindBufferMemory2( ArrayProxy<const VULKAN_HPP_NAMESPACE::BindBufferMemoryInfo> const & bindInfos,
+ Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>( d.vkBindBufferMemory2(
+ m_device, bindInfos.size(), reinterpret_cast<const VkBindBufferMemoryInfo *>( bindInfos.data() ) ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::bindBufferMemory2" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::bindImageMemory2( uint32_t bindInfoCount,
+ const VULKAN_HPP_NAMESPACE::BindImageMemoryInfo * pBindInfos,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkBindImageMemory2( m_device, bindInfoCount, reinterpret_cast<const VkBindImageMemoryInfo *>( pBindInfos ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type
+ Device::bindImageMemory2( ArrayProxy<const VULKAN_HPP_NAMESPACE::BindImageMemoryInfo> const & bindInfos,
+ Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>( d.vkBindImageMemory2(
+ m_device, bindInfos.size(), reinterpret_cast<const VkBindImageMemoryInfo *>( bindInfos.data() ) ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::bindImageMemory2" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ Device::getGroupPeerMemoryFeatures( uint32_t heapIndex,
+ uint32_t localDeviceIndex,
+ uint32_t remoteDeviceIndex,
+ VULKAN_HPP_NAMESPACE::PeerMemoryFeatureFlags * pPeerMemoryFeatures,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkGetDeviceGroupPeerMemoryFeatures( m_device,
+ heapIndex,
+ localDeviceIndex,
+ remoteDeviceIndex,
+ reinterpret_cast<VkPeerMemoryFeatureFlags *>( pPeerMemoryFeatures ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::PeerMemoryFeatureFlags
+ Device::getGroupPeerMemoryFeatures( uint32_t heapIndex,
+ uint32_t localDeviceIndex,
+ uint32_t remoteDeviceIndex,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_NAMESPACE::PeerMemoryFeatureFlags peerMemoryFeatures;
+ d.vkGetDeviceGroupPeerMemoryFeatures( m_device,
+ heapIndex,
+ localDeviceIndex,
+ remoteDeviceIndex,
+ reinterpret_cast<VkPeerMemoryFeatureFlags *>( &peerMemoryFeatures ) );
+ return peerMemoryFeatures;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::setDeviceMask( uint32_t deviceMask,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdSetDeviceMask( m_commandBuffer, deviceMask );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::dispatchBase( uint32_t baseGroupX,
+ uint32_t baseGroupY,
+ uint32_t baseGroupZ,
+ uint32_t groupCountX,
+ uint32_t groupCountY,
+ uint32_t groupCountZ,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdDispatchBase( m_commandBuffer, baseGroupX, baseGroupY, baseGroupZ, groupCountX, groupCountY, groupCountZ );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Instance::enumeratePhysicalDeviceGroups(
+ uint32_t * pPhysicalDeviceGroupCount,
+ VULKAN_HPP_NAMESPACE::PhysicalDeviceGroupProperties * pPhysicalDeviceGroupProperties,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkEnumeratePhysicalDeviceGroups(
+ m_instance,
+ pPhysicalDeviceGroupCount,
+ reinterpret_cast<VkPhysicalDeviceGroupProperties *>( pPhysicalDeviceGroupProperties ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename PhysicalDeviceGroupPropertiesAllocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<PhysicalDeviceGroupProperties, PhysicalDeviceGroupPropertiesAllocator>>::type
+ Instance::enumeratePhysicalDeviceGroups( Dispatch const & d ) const
+ {
+ std::vector<PhysicalDeviceGroupProperties, PhysicalDeviceGroupPropertiesAllocator> physicalDeviceGroupProperties;
+ uint32_t physicalDeviceGroupCount;
+ Result result;
+ do
+ {
+ result =
+ static_cast<Result>( d.vkEnumeratePhysicalDeviceGroups( m_instance, &physicalDeviceGroupCount, nullptr ) );
+ if ( ( result == Result::eSuccess ) && physicalDeviceGroupCount )
+ {
+ physicalDeviceGroupProperties.resize( physicalDeviceGroupCount );
+ result = static_cast<Result>( d.vkEnumeratePhysicalDeviceGroups(
+ m_instance,
+ &physicalDeviceGroupCount,
+ reinterpret_cast<VkPhysicalDeviceGroupProperties *>( physicalDeviceGroupProperties.data() ) ) );
+ VULKAN_HPP_ASSERT( physicalDeviceGroupCount <= physicalDeviceGroupProperties.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( physicalDeviceGroupCount < physicalDeviceGroupProperties.size() ) )
+ {
+ physicalDeviceGroupProperties.resize( physicalDeviceGroupCount );
+ }
+ return createResultValue(
+ result, physicalDeviceGroupProperties, VULKAN_HPP_NAMESPACE_STRING "::Instance::enumeratePhysicalDeviceGroups" );
+ }
+
+ template <
+ typename PhysicalDeviceGroupPropertiesAllocator,
+ typename Dispatch,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, PhysicalDeviceGroupProperties>::value, int>::type>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<PhysicalDeviceGroupProperties, PhysicalDeviceGroupPropertiesAllocator>>::type
+ Instance::enumeratePhysicalDeviceGroups(
+ PhysicalDeviceGroupPropertiesAllocator & physicalDeviceGroupPropertiesAllocator, Dispatch const & d ) const
+ {
+ std::vector<PhysicalDeviceGroupProperties, PhysicalDeviceGroupPropertiesAllocator> physicalDeviceGroupProperties(
+ physicalDeviceGroupPropertiesAllocator );
+ uint32_t physicalDeviceGroupCount;
+ Result result;
+ do
+ {
+ result =
+ static_cast<Result>( d.vkEnumeratePhysicalDeviceGroups( m_instance, &physicalDeviceGroupCount, nullptr ) );
+ if ( ( result == Result::eSuccess ) && physicalDeviceGroupCount )
+ {
+ physicalDeviceGroupProperties.resize( physicalDeviceGroupCount );
+ result = static_cast<Result>( d.vkEnumeratePhysicalDeviceGroups(
+ m_instance,
+ &physicalDeviceGroupCount,
+ reinterpret_cast<VkPhysicalDeviceGroupProperties *>( physicalDeviceGroupProperties.data() ) ) );
+ VULKAN_HPP_ASSERT( physicalDeviceGroupCount <= physicalDeviceGroupProperties.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( physicalDeviceGroupCount < physicalDeviceGroupProperties.size() ) )
+ {
+ physicalDeviceGroupProperties.resize( physicalDeviceGroupCount );
+ }
+ return createResultValue(
+ result, physicalDeviceGroupProperties, VULKAN_HPP_NAMESPACE_STRING "::Instance::enumeratePhysicalDeviceGroups" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ Device::getImageMemoryRequirements2( const VULKAN_HPP_NAMESPACE::ImageMemoryRequirementsInfo2 * pInfo,
+ VULKAN_HPP_NAMESPACE::MemoryRequirements2 * pMemoryRequirements,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkGetImageMemoryRequirements2( m_device,
+ reinterpret_cast<const VkImageMemoryRequirementsInfo2 *>( pInfo ),
+ reinterpret_cast<VkMemoryRequirements2 *>( pMemoryRequirements ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::MemoryRequirements2
+ Device::getImageMemoryRequirements2( const ImageMemoryRequirementsInfo2 & info,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_NAMESPACE::MemoryRequirements2 memoryRequirements;
+ d.vkGetImageMemoryRequirements2( m_device,
+ reinterpret_cast<const VkImageMemoryRequirementsInfo2 *>( &info ),
+ reinterpret_cast<VkMemoryRequirements2 *>( &memoryRequirements ) );
+ return memoryRequirements;
+ }
+
+ template <typename X, typename Y, typename... Z, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE StructureChain<X, Y, Z...>
+ Device::getImageMemoryRequirements2( const ImageMemoryRequirementsInfo2 & info,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ StructureChain<X, Y, Z...> structureChain;
+ VULKAN_HPP_NAMESPACE::MemoryRequirements2 & memoryRequirements =
+ structureChain.template get<VULKAN_HPP_NAMESPACE::MemoryRequirements2>();
+ d.vkGetImageMemoryRequirements2( m_device,
+ reinterpret_cast<const VkImageMemoryRequirementsInfo2 *>( &info ),
+ reinterpret_cast<VkMemoryRequirements2 *>( &memoryRequirements ) );
+ return structureChain;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ Device::getBufferMemoryRequirements2( const VULKAN_HPP_NAMESPACE::BufferMemoryRequirementsInfo2 * pInfo,
+ VULKAN_HPP_NAMESPACE::MemoryRequirements2 * pMemoryRequirements,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkGetBufferMemoryRequirements2( m_device,
+ reinterpret_cast<const VkBufferMemoryRequirementsInfo2 *>( pInfo ),
+ reinterpret_cast<VkMemoryRequirements2 *>( pMemoryRequirements ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::MemoryRequirements2
+ Device::getBufferMemoryRequirements2( const BufferMemoryRequirementsInfo2 & info,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_NAMESPACE::MemoryRequirements2 memoryRequirements;
+ d.vkGetBufferMemoryRequirements2( m_device,
+ reinterpret_cast<const VkBufferMemoryRequirementsInfo2 *>( &info ),
+ reinterpret_cast<VkMemoryRequirements2 *>( &memoryRequirements ) );
+ return memoryRequirements;
+ }
+
+ template <typename X, typename Y, typename... Z, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE StructureChain<X, Y, Z...>
+ Device::getBufferMemoryRequirements2( const BufferMemoryRequirementsInfo2 & info,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ StructureChain<X, Y, Z...> structureChain;
+ VULKAN_HPP_NAMESPACE::MemoryRequirements2 & memoryRequirements =
+ structureChain.template get<VULKAN_HPP_NAMESPACE::MemoryRequirements2>();
+ d.vkGetBufferMemoryRequirements2( m_device,
+ reinterpret_cast<const VkBufferMemoryRequirementsInfo2 *>( &info ),
+ reinterpret_cast<VkMemoryRequirements2 *>( &memoryRequirements ) );
+ return structureChain;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::getImageSparseMemoryRequirements2(
+ const VULKAN_HPP_NAMESPACE::ImageSparseMemoryRequirementsInfo2 * pInfo,
+ uint32_t * pSparseMemoryRequirementCount,
+ VULKAN_HPP_NAMESPACE::SparseImageMemoryRequirements2 * pSparseMemoryRequirements,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkGetImageSparseMemoryRequirements2(
+ m_device,
+ reinterpret_cast<const VkImageSparseMemoryRequirementsInfo2 *>( pInfo ),
+ pSparseMemoryRequirementCount,
+ reinterpret_cast<VkSparseImageMemoryRequirements2 *>( pSparseMemoryRequirements ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename SparseImageMemoryRequirements2Allocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD
+ VULKAN_HPP_INLINE std::vector<SparseImageMemoryRequirements2, SparseImageMemoryRequirements2Allocator>
+ Device::getImageSparseMemoryRequirements2( const ImageSparseMemoryRequirementsInfo2 & info,
+ Dispatch const & d ) const
+ {
+ std::vector<SparseImageMemoryRequirements2, SparseImageMemoryRequirements2Allocator> sparseMemoryRequirements;
+ uint32_t sparseMemoryRequirementCount;
+ d.vkGetImageSparseMemoryRequirements2( m_device,
+ reinterpret_cast<const VkImageSparseMemoryRequirementsInfo2 *>( &info ),
+ &sparseMemoryRequirementCount,
+ nullptr );
+ sparseMemoryRequirements.resize( sparseMemoryRequirementCount );
+ d.vkGetImageSparseMemoryRequirements2(
+ m_device,
+ reinterpret_cast<const VkImageSparseMemoryRequirementsInfo2 *>( &info ),
+ &sparseMemoryRequirementCount,
+ reinterpret_cast<VkSparseImageMemoryRequirements2 *>( sparseMemoryRequirements.data() ) );
+ VULKAN_HPP_ASSERT( sparseMemoryRequirementCount <= sparseMemoryRequirements.size() );
+ return sparseMemoryRequirements;
+ }
+
+ template <
+ typename SparseImageMemoryRequirements2Allocator,
+ typename Dispatch,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, SparseImageMemoryRequirements2>::value, int>::type>
+ VULKAN_HPP_NODISCARD
+ VULKAN_HPP_INLINE std::vector<SparseImageMemoryRequirements2, SparseImageMemoryRequirements2Allocator>
+ Device::getImageSparseMemoryRequirements2(
+ const ImageSparseMemoryRequirementsInfo2 & info,
+ SparseImageMemoryRequirements2Allocator & sparseImageMemoryRequirements2Allocator,
+ Dispatch const & d ) const
+ {
+ std::vector<SparseImageMemoryRequirements2, SparseImageMemoryRequirements2Allocator> sparseMemoryRequirements(
+ sparseImageMemoryRequirements2Allocator );
+ uint32_t sparseMemoryRequirementCount;
+ d.vkGetImageSparseMemoryRequirements2( m_device,
+ reinterpret_cast<const VkImageSparseMemoryRequirementsInfo2 *>( &info ),
+ &sparseMemoryRequirementCount,
+ nullptr );
+ sparseMemoryRequirements.resize( sparseMemoryRequirementCount );
+ d.vkGetImageSparseMemoryRequirements2(
+ m_device,
+ reinterpret_cast<const VkImageSparseMemoryRequirementsInfo2 *>( &info ),
+ &sparseMemoryRequirementCount,
+ reinterpret_cast<VkSparseImageMemoryRequirements2 *>( sparseMemoryRequirements.data() ) );
+ VULKAN_HPP_ASSERT( sparseMemoryRequirementCount <= sparseMemoryRequirements.size() );
+ return sparseMemoryRequirements;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void PhysicalDevice::getFeatures2( VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures2 * pFeatures,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkGetPhysicalDeviceFeatures2( m_physicalDevice, reinterpret_cast<VkPhysicalDeviceFeatures2 *>( pFeatures ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures2
+ PhysicalDevice::getFeatures2( Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures2 features;
+ d.vkGetPhysicalDeviceFeatures2( m_physicalDevice, reinterpret_cast<VkPhysicalDeviceFeatures2 *>( &features ) );
+ return features;
+ }
+
+ template <typename X, typename Y, typename... Z, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE StructureChain<X, Y, Z...>
+ PhysicalDevice::getFeatures2( Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ StructureChain<X, Y, Z...> structureChain;
+ VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures2 & features =
+ structureChain.template get<VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures2>();
+ d.vkGetPhysicalDeviceFeatures2( m_physicalDevice, reinterpret_cast<VkPhysicalDeviceFeatures2 *>( &features ) );
+ return structureChain;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void PhysicalDevice::getProperties2( VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties2 * pProperties,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkGetPhysicalDeviceProperties2( m_physicalDevice,
+ reinterpret_cast<VkPhysicalDeviceProperties2 *>( pProperties ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties2
+ PhysicalDevice::getProperties2( Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties2 properties;
+ d.vkGetPhysicalDeviceProperties2( m_physicalDevice,
+ reinterpret_cast<VkPhysicalDeviceProperties2 *>( &properties ) );
+ return properties;
+ }
+
+ template <typename X, typename Y, typename... Z, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE StructureChain<X, Y, Z...>
+ PhysicalDevice::getProperties2( Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ StructureChain<X, Y, Z...> structureChain;
+ VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties2 & properties =
+ structureChain.template get<VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties2>();
+ d.vkGetPhysicalDeviceProperties2( m_physicalDevice,
+ reinterpret_cast<VkPhysicalDeviceProperties2 *>( &properties ) );
+ return structureChain;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ PhysicalDevice::getFormatProperties2( VULKAN_HPP_NAMESPACE::Format format,
+ VULKAN_HPP_NAMESPACE::FormatProperties2 * pFormatProperties,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkGetPhysicalDeviceFormatProperties2(
+ m_physicalDevice, static_cast<VkFormat>( format ), reinterpret_cast<VkFormatProperties2 *>( pFormatProperties ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::FormatProperties2
+ PhysicalDevice::getFormatProperties2( VULKAN_HPP_NAMESPACE::Format format,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_NAMESPACE::FormatProperties2 formatProperties;
+ d.vkGetPhysicalDeviceFormatProperties2(
+ m_physicalDevice, static_cast<VkFormat>( format ), reinterpret_cast<VkFormatProperties2 *>( &formatProperties ) );
+ return formatProperties;
+ }
+
+ template <typename X, typename Y, typename... Z, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE StructureChain<X, Y, Z...>
+ PhysicalDevice::getFormatProperties2( VULKAN_HPP_NAMESPACE::Format format,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ StructureChain<X, Y, Z...> structureChain;
+ VULKAN_HPP_NAMESPACE::FormatProperties2 & formatProperties =
+ structureChain.template get<VULKAN_HPP_NAMESPACE::FormatProperties2>();
+ d.vkGetPhysicalDeviceFormatProperties2(
+ m_physicalDevice, static_cast<VkFormat>( format ), reinterpret_cast<VkFormatProperties2 *>( &formatProperties ) );
+ return structureChain;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result PhysicalDevice::getImageFormatProperties2(
+ const VULKAN_HPP_NAMESPACE::PhysicalDeviceImageFormatInfo2 * pImageFormatInfo,
+ VULKAN_HPP_NAMESPACE::ImageFormatProperties2 * pImageFormatProperties,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkGetPhysicalDeviceImageFormatProperties2(
+ m_physicalDevice,
+ reinterpret_cast<const VkPhysicalDeviceImageFormatInfo2 *>( pImageFormatInfo ),
+ reinterpret_cast<VkImageFormatProperties2 *>( pImageFormatProperties ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::ImageFormatProperties2>::type
+ PhysicalDevice::getImageFormatProperties2( const PhysicalDeviceImageFormatInfo2 & imageFormatInfo,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::ImageFormatProperties2 imageFormatProperties;
+ Result result = static_cast<Result>( d.vkGetPhysicalDeviceImageFormatProperties2(
+ m_physicalDevice,
+ reinterpret_cast<const VkPhysicalDeviceImageFormatInfo2 *>( &imageFormatInfo ),
+ reinterpret_cast<VkImageFormatProperties2 *>( &imageFormatProperties ) ) );
+ return createResultValue(
+ result, imageFormatProperties, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getImageFormatProperties2" );
+ }
+
+ template <typename X, typename Y, typename... Z, typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<StructureChain<X, Y, Z...>>::type
+ PhysicalDevice::getImageFormatProperties2( const PhysicalDeviceImageFormatInfo2 & imageFormatInfo,
+ Dispatch const & d ) const
+ {
+ StructureChain<X, Y, Z...> structureChain;
+ VULKAN_HPP_NAMESPACE::ImageFormatProperties2 & imageFormatProperties =
+ structureChain.template get<VULKAN_HPP_NAMESPACE::ImageFormatProperties2>();
+ Result result = static_cast<Result>( d.vkGetPhysicalDeviceImageFormatProperties2(
+ m_physicalDevice,
+ reinterpret_cast<const VkPhysicalDeviceImageFormatInfo2 *>( &imageFormatInfo ),
+ reinterpret_cast<VkImageFormatProperties2 *>( &imageFormatProperties ) ) );
+ return createResultValue(
+ result, structureChain, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getImageFormatProperties2" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ PhysicalDevice::getQueueFamilyProperties2( uint32_t * pQueueFamilyPropertyCount,
+ VULKAN_HPP_NAMESPACE::QueueFamilyProperties2 * pQueueFamilyProperties,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkGetPhysicalDeviceQueueFamilyProperties2(
+ m_physicalDevice,
+ pQueueFamilyPropertyCount,
+ reinterpret_cast<VkQueueFamilyProperties2 *>( pQueueFamilyProperties ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename QueueFamilyProperties2Allocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<QueueFamilyProperties2, QueueFamilyProperties2Allocator>
+ PhysicalDevice::getQueueFamilyProperties2( Dispatch const & d ) const
+ {
+ std::vector<QueueFamilyProperties2, QueueFamilyProperties2Allocator> queueFamilyProperties;
+ uint32_t queueFamilyPropertyCount;
+ d.vkGetPhysicalDeviceQueueFamilyProperties2( m_physicalDevice, &queueFamilyPropertyCount, nullptr );
+ queueFamilyProperties.resize( queueFamilyPropertyCount );
+ d.vkGetPhysicalDeviceQueueFamilyProperties2(
+ m_physicalDevice,
+ &queueFamilyPropertyCount,
+ reinterpret_cast<VkQueueFamilyProperties2 *>( queueFamilyProperties.data() ) );
+ VULKAN_HPP_ASSERT( queueFamilyPropertyCount <= queueFamilyProperties.size() );
+ return queueFamilyProperties;
+ }
+
+ template <typename QueueFamilyProperties2Allocator,
+ typename Dispatch,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, QueueFamilyProperties2>::value, int>::type>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<QueueFamilyProperties2, QueueFamilyProperties2Allocator>
+ PhysicalDevice::getQueueFamilyProperties2( QueueFamilyProperties2Allocator & queueFamilyProperties2Allocator,
+ Dispatch const & d ) const
+ {
+ std::vector<QueueFamilyProperties2, QueueFamilyProperties2Allocator> queueFamilyProperties(
+ queueFamilyProperties2Allocator );
+ uint32_t queueFamilyPropertyCount;
+ d.vkGetPhysicalDeviceQueueFamilyProperties2( m_physicalDevice, &queueFamilyPropertyCount, nullptr );
+ queueFamilyProperties.resize( queueFamilyPropertyCount );
+ d.vkGetPhysicalDeviceQueueFamilyProperties2(
+ m_physicalDevice,
+ &queueFamilyPropertyCount,
+ reinterpret_cast<VkQueueFamilyProperties2 *>( queueFamilyProperties.data() ) );
+ VULKAN_HPP_ASSERT( queueFamilyPropertyCount <= queueFamilyProperties.size() );
+ return queueFamilyProperties;
+ }
+
+ template <typename StructureChain, typename StructureChainAllocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<StructureChain, StructureChainAllocator>
+ PhysicalDevice::getQueueFamilyProperties2( Dispatch const & d ) const
+ {
+ uint32_t queueFamilyPropertyCount;
+ d.vkGetPhysicalDeviceQueueFamilyProperties2( m_physicalDevice, &queueFamilyPropertyCount, nullptr );
+ std::vector<StructureChain, StructureChainAllocator> returnVector( queueFamilyPropertyCount );
+ std::vector<VULKAN_HPP_NAMESPACE::QueueFamilyProperties2> queueFamilyProperties( queueFamilyPropertyCount );
+ for ( uint32_t i = 0; i < queueFamilyPropertyCount; i++ )
+ {
+ queueFamilyProperties[i].pNext =
+ returnVector[i].template get<VULKAN_HPP_NAMESPACE::QueueFamilyProperties2>().pNext;
+ }
+ d.vkGetPhysicalDeviceQueueFamilyProperties2(
+ m_physicalDevice,
+ &queueFamilyPropertyCount,
+ reinterpret_cast<VkQueueFamilyProperties2 *>( queueFamilyProperties.data() ) );
+ VULKAN_HPP_ASSERT( queueFamilyPropertyCount <= queueFamilyProperties.size() );
+ for ( uint32_t i = 0; i < queueFamilyPropertyCount; i++ )
+ {
+ returnVector[i].template get<VULKAN_HPP_NAMESPACE::QueueFamilyProperties2>() = queueFamilyProperties[i];
+ }
+ return returnVector;
+ }
+
+ template <typename StructureChain,
+ typename StructureChainAllocator,
+ typename Dispatch,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, StructureChain>::value, int>::type>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<StructureChain, StructureChainAllocator>
+ PhysicalDevice::getQueueFamilyProperties2( StructureChainAllocator & structureChainAllocator,
+ Dispatch const & d ) const
+ {
+ uint32_t queueFamilyPropertyCount;
+ d.vkGetPhysicalDeviceQueueFamilyProperties2( m_physicalDevice, &queueFamilyPropertyCount, nullptr );
+ std::vector<StructureChain, StructureChainAllocator> returnVector( queueFamilyPropertyCount,
+ structureChainAllocator );
+ std::vector<VULKAN_HPP_NAMESPACE::QueueFamilyProperties2> queueFamilyProperties( queueFamilyPropertyCount );
+ for ( uint32_t i = 0; i < queueFamilyPropertyCount; i++ )
+ {
+ queueFamilyProperties[i].pNext =
+ returnVector[i].template get<VULKAN_HPP_NAMESPACE::QueueFamilyProperties2>().pNext;
+ }
+ d.vkGetPhysicalDeviceQueueFamilyProperties2(
+ m_physicalDevice,
+ &queueFamilyPropertyCount,
+ reinterpret_cast<VkQueueFamilyProperties2 *>( queueFamilyProperties.data() ) );
+ VULKAN_HPP_ASSERT( queueFamilyPropertyCount <= queueFamilyProperties.size() );
+ for ( uint32_t i = 0; i < queueFamilyPropertyCount; i++ )
+ {
+ returnVector[i].template get<VULKAN_HPP_NAMESPACE::QueueFamilyProperties2>() = queueFamilyProperties[i];
+ }
+ return returnVector;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ PhysicalDevice::getMemoryProperties2( VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties2 * pMemoryProperties,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkGetPhysicalDeviceMemoryProperties2(
+ m_physicalDevice, reinterpret_cast<VkPhysicalDeviceMemoryProperties2 *>( pMemoryProperties ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties2
+ PhysicalDevice::getMemoryProperties2( Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties2 memoryProperties;
+ d.vkGetPhysicalDeviceMemoryProperties2(
+ m_physicalDevice, reinterpret_cast<VkPhysicalDeviceMemoryProperties2 *>( &memoryProperties ) );
+ return memoryProperties;
+ }
+
+ template <typename X, typename Y, typename... Z, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE StructureChain<X, Y, Z...>
+ PhysicalDevice::getMemoryProperties2( Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ StructureChain<X, Y, Z...> structureChain;
+ VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties2 & memoryProperties =
+ structureChain.template get<VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties2>();
+ d.vkGetPhysicalDeviceMemoryProperties2(
+ m_physicalDevice, reinterpret_cast<VkPhysicalDeviceMemoryProperties2 *>( &memoryProperties ) );
+ return structureChain;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void PhysicalDevice::getSparseImageFormatProperties2(
+ const VULKAN_HPP_NAMESPACE::PhysicalDeviceSparseImageFormatInfo2 * pFormatInfo,
+ uint32_t * pPropertyCount,
+ VULKAN_HPP_NAMESPACE::SparseImageFormatProperties2 * pProperties,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkGetPhysicalDeviceSparseImageFormatProperties2(
+ m_physicalDevice,
+ reinterpret_cast<const VkPhysicalDeviceSparseImageFormatInfo2 *>( pFormatInfo ),
+ pPropertyCount,
+ reinterpret_cast<VkSparseImageFormatProperties2 *>( pProperties ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename SparseImageFormatProperties2Allocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD
+ VULKAN_HPP_INLINE std::vector<SparseImageFormatProperties2, SparseImageFormatProperties2Allocator>
+ PhysicalDevice::getSparseImageFormatProperties2( const PhysicalDeviceSparseImageFormatInfo2 & formatInfo,
+ Dispatch const & d ) const
+ {
+ std::vector<SparseImageFormatProperties2, SparseImageFormatProperties2Allocator> properties;
+ uint32_t propertyCount;
+ d.vkGetPhysicalDeviceSparseImageFormatProperties2(
+ m_physicalDevice,
+ reinterpret_cast<const VkPhysicalDeviceSparseImageFormatInfo2 *>( &formatInfo ),
+ &propertyCount,
+ nullptr );
+ properties.resize( propertyCount );
+ d.vkGetPhysicalDeviceSparseImageFormatProperties2(
+ m_physicalDevice,
+ reinterpret_cast<const VkPhysicalDeviceSparseImageFormatInfo2 *>( &formatInfo ),
+ &propertyCount,
+ reinterpret_cast<VkSparseImageFormatProperties2 *>( properties.data() ) );
+ VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
+ return properties;
+ }
+
+ template <
+ typename SparseImageFormatProperties2Allocator,
+ typename Dispatch,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, SparseImageFormatProperties2>::value, int>::type>
+ VULKAN_HPP_NODISCARD
+ VULKAN_HPP_INLINE std::vector<SparseImageFormatProperties2, SparseImageFormatProperties2Allocator>
+ PhysicalDevice::getSparseImageFormatProperties2(
+ const PhysicalDeviceSparseImageFormatInfo2 & formatInfo,
+ SparseImageFormatProperties2Allocator & sparseImageFormatProperties2Allocator,
+ Dispatch const & d ) const
+ {
+ std::vector<SparseImageFormatProperties2, SparseImageFormatProperties2Allocator> properties(
+ sparseImageFormatProperties2Allocator );
+ uint32_t propertyCount;
+ d.vkGetPhysicalDeviceSparseImageFormatProperties2(
+ m_physicalDevice,
+ reinterpret_cast<const VkPhysicalDeviceSparseImageFormatInfo2 *>( &formatInfo ),
+ &propertyCount,
+ nullptr );
+ properties.resize( propertyCount );
+ d.vkGetPhysicalDeviceSparseImageFormatProperties2(
+ m_physicalDevice,
+ reinterpret_cast<const VkPhysicalDeviceSparseImageFormatInfo2 *>( &formatInfo ),
+ &propertyCount,
+ reinterpret_cast<VkSparseImageFormatProperties2 *>( properties.data() ) );
+ VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
+ return properties;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::trimCommandPool( VULKAN_HPP_NAMESPACE::CommandPool commandPool,
+ VULKAN_HPP_NAMESPACE::CommandPoolTrimFlags flags,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkTrimCommandPool(
+ m_device, static_cast<VkCommandPool>( commandPool ), static_cast<VkCommandPoolTrimFlags>( flags ) );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::getQueue2( const VULKAN_HPP_NAMESPACE::DeviceQueueInfo2 * pQueueInfo,
+ VULKAN_HPP_NAMESPACE::Queue * pQueue,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkGetDeviceQueue2(
+ m_device, reinterpret_cast<const VkDeviceQueueInfo2 *>( pQueueInfo ), reinterpret_cast<VkQueue *>( pQueue ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::Queue
+ Device::getQueue2( const DeviceQueueInfo2 & queueInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_NAMESPACE::Queue queue;
+ d.vkGetDeviceQueue2(
+ m_device, reinterpret_cast<const VkDeviceQueueInfo2 *>( &queueInfo ), reinterpret_cast<VkQueue *>( &queue ) );
+ return queue;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::createSamplerYcbcrConversion( const VULKAN_HPP_NAMESPACE::SamplerYcbcrConversionCreateInfo * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion * pYcbcrConversion,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkCreateSamplerYcbcrConversion( m_device,
+ reinterpret_cast<const VkSamplerYcbcrConversionCreateInfo *>( pCreateInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkSamplerYcbcrConversion *>( pYcbcrConversion ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion>::type
+ Device::createSamplerYcbcrConversion( const SamplerYcbcrConversionCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion ycbcrConversion;
+ Result result = static_cast<Result>(
+ d.vkCreateSamplerYcbcrConversion( m_device,
+ reinterpret_cast<const VkSamplerYcbcrConversionCreateInfo *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkSamplerYcbcrConversion *>( &ycbcrConversion ) ) );
+ return createResultValue(
+ result, ycbcrConversion, VULKAN_HPP_NAMESPACE_STRING "::Device::createSamplerYcbcrConversion" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion, Dispatch>>::type
+ Device::createSamplerYcbcrConversionUnique( const SamplerYcbcrConversionCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion ycbcrConversion;
+ Result result = static_cast<Result>(
+ d.vkCreateSamplerYcbcrConversion( m_device,
+ reinterpret_cast<const VkSamplerYcbcrConversionCreateInfo *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkSamplerYcbcrConversion *>( &ycbcrConversion ) ) );
+ ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion, Dispatch>(
+ result, ycbcrConversion, VULKAN_HPP_NAMESPACE_STRING "::Device::createSamplerYcbcrConversionUnique", deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ Device::destroySamplerYcbcrConversion( VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion ycbcrConversion,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroySamplerYcbcrConversion( m_device,
+ static_cast<VkSamplerYcbcrConversion>( ycbcrConversion ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ Device::destroySamplerYcbcrConversion( VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion ycbcrConversion,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroySamplerYcbcrConversion(
+ m_device,
+ static_cast<VkSamplerYcbcrConversion>( ycbcrConversion ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion ycbcrConversion,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroySamplerYcbcrConversion( m_device,
+ static_cast<VkSamplerYcbcrConversion>( ycbcrConversion ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion ycbcrConversion,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroySamplerYcbcrConversion(
+ m_device,
+ static_cast<VkSamplerYcbcrConversion>( ycbcrConversion ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::createDescriptorUpdateTemplate(
+ const VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateCreateInfo * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate * pDescriptorUpdateTemplate,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkCreateDescriptorUpdateTemplate(
+ m_device,
+ reinterpret_cast<const VkDescriptorUpdateTemplateCreateInfo *>( pCreateInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkDescriptorUpdateTemplate *>( pDescriptorUpdateTemplate ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate>::type
+ Device::createDescriptorUpdateTemplate( const DescriptorUpdateTemplateCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate descriptorUpdateTemplate;
+ Result result = static_cast<Result>( d.vkCreateDescriptorUpdateTemplate(
+ m_device,
+ reinterpret_cast<const VkDescriptorUpdateTemplateCreateInfo *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkDescriptorUpdateTemplate *>( &descriptorUpdateTemplate ) ) );
+ return createResultValue(
+ result, descriptorUpdateTemplate, VULKAN_HPP_NAMESPACE_STRING "::Device::createDescriptorUpdateTemplate" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate, Dispatch>>::type
+ Device::createDescriptorUpdateTemplateUnique( const DescriptorUpdateTemplateCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate descriptorUpdateTemplate;
+ Result result = static_cast<Result>( d.vkCreateDescriptorUpdateTemplate(
+ m_device,
+ reinterpret_cast<const VkDescriptorUpdateTemplateCreateInfo *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkDescriptorUpdateTemplate *>( &descriptorUpdateTemplate ) ) );
+ ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate, Dispatch>(
+ result,
+ descriptorUpdateTemplate,
+ VULKAN_HPP_NAMESPACE_STRING "::Device::createDescriptorUpdateTemplateUnique",
+ deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ Device::destroyDescriptorUpdateTemplate( VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate descriptorUpdateTemplate,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyDescriptorUpdateTemplate( m_device,
+ static_cast<VkDescriptorUpdateTemplate>( descriptorUpdateTemplate ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ Device::destroyDescriptorUpdateTemplate( VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate descriptorUpdateTemplate,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyDescriptorUpdateTemplate(
+ m_device,
+ static_cast<VkDescriptorUpdateTemplate>( descriptorUpdateTemplate ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate descriptorUpdateTemplate,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyDescriptorUpdateTemplate( m_device,
+ static_cast<VkDescriptorUpdateTemplate>( descriptorUpdateTemplate ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate descriptorUpdateTemplate,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyDescriptorUpdateTemplate(
+ m_device,
+ static_cast<VkDescriptorUpdateTemplate>( descriptorUpdateTemplate ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ Device::updateDescriptorSetWithTemplate( VULKAN_HPP_NAMESPACE::DescriptorSet descriptorSet,
+ VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate descriptorUpdateTemplate,
+ const void * pData,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkUpdateDescriptorSetWithTemplate( m_device,
+ static_cast<VkDescriptorSet>( descriptorSet ),
+ static_cast<VkDescriptorUpdateTemplate>( descriptorUpdateTemplate ),
+ pData );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void PhysicalDevice::getExternalBufferProperties(
+ const VULKAN_HPP_NAMESPACE::PhysicalDeviceExternalBufferInfo * pExternalBufferInfo,
+ VULKAN_HPP_NAMESPACE::ExternalBufferProperties * pExternalBufferProperties,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkGetPhysicalDeviceExternalBufferProperties(
+ m_physicalDevice,
+ reinterpret_cast<const VkPhysicalDeviceExternalBufferInfo *>( pExternalBufferInfo ),
+ reinterpret_cast<VkExternalBufferProperties *>( pExternalBufferProperties ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::ExternalBufferProperties
+ PhysicalDevice::getExternalBufferProperties( const PhysicalDeviceExternalBufferInfo & externalBufferInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_NAMESPACE::ExternalBufferProperties externalBufferProperties;
+ d.vkGetPhysicalDeviceExternalBufferProperties(
+ m_physicalDevice,
+ reinterpret_cast<const VkPhysicalDeviceExternalBufferInfo *>( &externalBufferInfo ),
+ reinterpret_cast<VkExternalBufferProperties *>( &externalBufferProperties ) );
+ return externalBufferProperties;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void PhysicalDevice::getExternalFenceProperties(
+ const VULKAN_HPP_NAMESPACE::PhysicalDeviceExternalFenceInfo * pExternalFenceInfo,
+ VULKAN_HPP_NAMESPACE::ExternalFenceProperties * pExternalFenceProperties,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkGetPhysicalDeviceExternalFenceProperties(
+ m_physicalDevice,
+ reinterpret_cast<const VkPhysicalDeviceExternalFenceInfo *>( pExternalFenceInfo ),
+ reinterpret_cast<VkExternalFenceProperties *>( pExternalFenceProperties ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::ExternalFenceProperties
+ PhysicalDevice::getExternalFenceProperties( const PhysicalDeviceExternalFenceInfo & externalFenceInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_NAMESPACE::ExternalFenceProperties externalFenceProperties;
+ d.vkGetPhysicalDeviceExternalFenceProperties(
+ m_physicalDevice,
+ reinterpret_cast<const VkPhysicalDeviceExternalFenceInfo *>( &externalFenceInfo ),
+ reinterpret_cast<VkExternalFenceProperties *>( &externalFenceProperties ) );
+ return externalFenceProperties;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void PhysicalDevice::getExternalSemaphoreProperties(
+ const VULKAN_HPP_NAMESPACE::PhysicalDeviceExternalSemaphoreInfo * pExternalSemaphoreInfo,
+ VULKAN_HPP_NAMESPACE::ExternalSemaphoreProperties * pExternalSemaphoreProperties,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkGetPhysicalDeviceExternalSemaphoreProperties(
+ m_physicalDevice,
+ reinterpret_cast<const VkPhysicalDeviceExternalSemaphoreInfo *>( pExternalSemaphoreInfo ),
+ reinterpret_cast<VkExternalSemaphoreProperties *>( pExternalSemaphoreProperties ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::ExternalSemaphoreProperties
+ PhysicalDevice::getExternalSemaphoreProperties( const PhysicalDeviceExternalSemaphoreInfo & externalSemaphoreInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_NAMESPACE::ExternalSemaphoreProperties externalSemaphoreProperties;
+ d.vkGetPhysicalDeviceExternalSemaphoreProperties(
+ m_physicalDevice,
+ reinterpret_cast<const VkPhysicalDeviceExternalSemaphoreInfo *>( &externalSemaphoreInfo ),
+ reinterpret_cast<VkExternalSemaphoreProperties *>( &externalSemaphoreProperties ) );
+ return externalSemaphoreProperties;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ Device::getDescriptorSetLayoutSupport( const VULKAN_HPP_NAMESPACE::DescriptorSetLayoutCreateInfo * pCreateInfo,
+ VULKAN_HPP_NAMESPACE::DescriptorSetLayoutSupport * pSupport,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkGetDescriptorSetLayoutSupport( m_device,
+ reinterpret_cast<const VkDescriptorSetLayoutCreateInfo *>( pCreateInfo ),
+ reinterpret_cast<VkDescriptorSetLayoutSupport *>( pSupport ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::DescriptorSetLayoutSupport
+ Device::getDescriptorSetLayoutSupport( const DescriptorSetLayoutCreateInfo & createInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_NAMESPACE::DescriptorSetLayoutSupport support;
+ d.vkGetDescriptorSetLayoutSupport( m_device,
+ reinterpret_cast<const VkDescriptorSetLayoutCreateInfo *>( &createInfo ),
+ reinterpret_cast<VkDescriptorSetLayoutSupport *>( &support ) );
+ return support;
+ }
+
+ template <typename X, typename Y, typename... Z, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE StructureChain<X, Y, Z...>
+ Device::getDescriptorSetLayoutSupport( const DescriptorSetLayoutCreateInfo & createInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ StructureChain<X, Y, Z...> structureChain;
+ VULKAN_HPP_NAMESPACE::DescriptorSetLayoutSupport & support =
+ structureChain.template get<VULKAN_HPP_NAMESPACE::DescriptorSetLayoutSupport>();
+ d.vkGetDescriptorSetLayoutSupport( m_device,
+ reinterpret_cast<const VkDescriptorSetLayoutCreateInfo *>( &createInfo ),
+ reinterpret_cast<VkDescriptorSetLayoutSupport *>( &support ) );
+ return structureChain;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_VERSION_1_2 ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::drawIndirectCount( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize offset,
+ VULKAN_HPP_NAMESPACE::Buffer countBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize countBufferOffset,
+ uint32_t maxDrawCount,
+ uint32_t stride,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdDrawIndirectCount( m_commandBuffer,
+ static_cast<VkBuffer>( buffer ),
+ static_cast<VkDeviceSize>( offset ),
+ static_cast<VkBuffer>( countBuffer ),
+ static_cast<VkDeviceSize>( countBufferOffset ),
+ maxDrawCount,
+ stride );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::drawIndexedIndirectCount( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize offset,
+ VULKAN_HPP_NAMESPACE::Buffer countBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize countBufferOffset,
+ uint32_t maxDrawCount,
+ uint32_t stride,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdDrawIndexedIndirectCount( m_commandBuffer,
+ static_cast<VkBuffer>( buffer ),
+ static_cast<VkDeviceSize>( offset ),
+ static_cast<VkBuffer>( countBuffer ),
+ static_cast<VkDeviceSize>( countBufferOffset ),
+ maxDrawCount,
+ stride );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::createRenderPass2( const VULKAN_HPP_NAMESPACE::RenderPassCreateInfo2 * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::RenderPass * pRenderPass,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkCreateRenderPass2( m_device,
+ reinterpret_cast<const VkRenderPassCreateInfo2 *>( pCreateInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkRenderPass *>( pRenderPass ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::RenderPass>::type
+ Device::createRenderPass2( const RenderPassCreateInfo2 & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::RenderPass renderPass;
+ Result result = static_cast<Result>(
+ d.vkCreateRenderPass2( m_device,
+ reinterpret_cast<const VkRenderPassCreateInfo2 *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkRenderPass *>( &renderPass ) ) );
+ return createResultValue( result, renderPass, VULKAN_HPP_NAMESPACE_STRING "::Device::createRenderPass2" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::RenderPass, Dispatch>>::type
+ Device::createRenderPass2Unique( const RenderPassCreateInfo2 & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::RenderPass renderPass;
+ Result result = static_cast<Result>(
+ d.vkCreateRenderPass2( m_device,
+ reinterpret_cast<const VkRenderPassCreateInfo2 *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkRenderPass *>( &renderPass ) ) );
+ ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::RenderPass, Dispatch>(
+ result, renderPass, VULKAN_HPP_NAMESPACE_STRING "::Device::createRenderPass2Unique", deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::beginRenderPass2( const VULKAN_HPP_NAMESPACE::RenderPassBeginInfo * pRenderPassBegin,
+ const VULKAN_HPP_NAMESPACE::SubpassBeginInfo * pSubpassBeginInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdBeginRenderPass2( m_commandBuffer,
+ reinterpret_cast<const VkRenderPassBeginInfo *>( pRenderPassBegin ),
+ reinterpret_cast<const VkSubpassBeginInfo *>( pSubpassBeginInfo ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::beginRenderPass2( const RenderPassBeginInfo & renderPassBegin,
+ const SubpassBeginInfo & subpassBeginInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdBeginRenderPass2( m_commandBuffer,
+ reinterpret_cast<const VkRenderPassBeginInfo *>( &renderPassBegin ),
+ reinterpret_cast<const VkSubpassBeginInfo *>( &subpassBeginInfo ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::nextSubpass2( const VULKAN_HPP_NAMESPACE::SubpassBeginInfo * pSubpassBeginInfo,
+ const VULKAN_HPP_NAMESPACE::SubpassEndInfo * pSubpassEndInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdNextSubpass2( m_commandBuffer,
+ reinterpret_cast<const VkSubpassBeginInfo *>( pSubpassBeginInfo ),
+ reinterpret_cast<const VkSubpassEndInfo *>( pSubpassEndInfo ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::nextSubpass2( const SubpassBeginInfo & subpassBeginInfo,
+ const SubpassEndInfo & subpassEndInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdNextSubpass2( m_commandBuffer,
+ reinterpret_cast<const VkSubpassBeginInfo *>( &subpassBeginInfo ),
+ reinterpret_cast<const VkSubpassEndInfo *>( &subpassEndInfo ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::endRenderPass2( const VULKAN_HPP_NAMESPACE::SubpassEndInfo * pSubpassEndInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdEndRenderPass2( m_commandBuffer, reinterpret_cast<const VkSubpassEndInfo *>( pSubpassEndInfo ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::endRenderPass2( const SubpassEndInfo & subpassEndInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdEndRenderPass2( m_commandBuffer, reinterpret_cast<const VkSubpassEndInfo *>( &subpassEndInfo ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::resetQueryPool( VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ uint32_t firstQuery,
+ uint32_t queryCount,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkResetQueryPool( m_device, static_cast<VkQueryPool>( queryPool ), firstQuery, queryCount );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getSemaphoreCounterValue(
+ VULKAN_HPP_NAMESPACE::Semaphore semaphore, uint64_t * pValue, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkGetSemaphoreCounterValue( m_device, static_cast<VkSemaphore>( semaphore ), pValue ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<uint64_t>::type
+ Device::getSemaphoreCounterValue( VULKAN_HPP_NAMESPACE::Semaphore semaphore, Dispatch const & d ) const
+ {
+ uint64_t value;
+ Result result =
+ static_cast<Result>( d.vkGetSemaphoreCounterValue( m_device, static_cast<VkSemaphore>( semaphore ), &value ) );
+ return createResultValue( result, value, VULKAN_HPP_NAMESPACE_STRING "::Device::getSemaphoreCounterValue" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::waitSemaphores( const VULKAN_HPP_NAMESPACE::SemaphoreWaitInfo * pWaitInfo,
+ uint64_t timeout,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkWaitSemaphores( m_device, reinterpret_cast<const VkSemaphoreWaitInfo *>( pWaitInfo ), timeout ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::waitSemaphores( const SemaphoreWaitInfo & waitInfo,
+ uint64_t timeout,
+ Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>(
+ d.vkWaitSemaphores( m_device, reinterpret_cast<const VkSemaphoreWaitInfo *>( &waitInfo ), timeout ) );
+ return createResultValue( result,
+ VULKAN_HPP_NAMESPACE_STRING "::Device::waitSemaphores",
+ { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::eTimeout } );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::signalSemaphore(
+ const VULKAN_HPP_NAMESPACE::SemaphoreSignalInfo * pSignalInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkSignalSemaphore( m_device, reinterpret_cast<const VkSemaphoreSignalInfo *>( pSignalInfo ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type
+ Device::signalSemaphore( const SemaphoreSignalInfo & signalInfo, Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>(
+ d.vkSignalSemaphore( m_device, reinterpret_cast<const VkSemaphoreSignalInfo *>( &signalInfo ) ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::signalSemaphore" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE DeviceAddress Device::getBufferAddress( const VULKAN_HPP_NAMESPACE::BufferDeviceAddressInfo * pInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<DeviceAddress>(
+ d.vkGetBufferDeviceAddress( m_device, reinterpret_cast<const VkBufferDeviceAddressInfo *>( pInfo ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE DeviceAddress Device::getBufferAddress( const BufferDeviceAddressInfo & info,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return d.vkGetBufferDeviceAddress( m_device, reinterpret_cast<const VkBufferDeviceAddressInfo *>( &info ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE uint64_t Device::getBufferOpaqueCaptureAddress(
+ const VULKAN_HPP_NAMESPACE::BufferDeviceAddressInfo * pInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return d.vkGetBufferOpaqueCaptureAddress( m_device, reinterpret_cast<const VkBufferDeviceAddressInfo *>( pInfo ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE uint64_t Device::getBufferOpaqueCaptureAddress( const BufferDeviceAddressInfo & info,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return d.vkGetBufferOpaqueCaptureAddress( m_device, reinterpret_cast<const VkBufferDeviceAddressInfo *>( &info ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE uint64_t
+ Device::getMemoryOpaqueCaptureAddress( const VULKAN_HPP_NAMESPACE::DeviceMemoryOpaqueCaptureAddressInfo * pInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return d.vkGetDeviceMemoryOpaqueCaptureAddress(
+ m_device, reinterpret_cast<const VkDeviceMemoryOpaqueCaptureAddressInfo *>( pInfo ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE uint64_t Device::getMemoryOpaqueCaptureAddress( const DeviceMemoryOpaqueCaptureAddressInfo & info,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return d.vkGetDeviceMemoryOpaqueCaptureAddress(
+ m_device, reinterpret_cast<const VkDeviceMemoryOpaqueCaptureAddressInfo *>( &info ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_KHR_surface ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Instance::destroySurfaceKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroySurfaceKHR(
+ m_instance, static_cast<VkSurfaceKHR>( surface ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Instance::destroySurfaceKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroySurfaceKHR( m_instance,
+ static_cast<VkSurfaceKHR>( surface ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Instance::destroy( VULKAN_HPP_NAMESPACE::SurfaceKHR surface,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroySurfaceKHR(
+ m_instance, static_cast<VkSurfaceKHR>( surface ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Instance::destroy( VULKAN_HPP_NAMESPACE::SurfaceKHR surface,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroySurfaceKHR( m_instance,
+ static_cast<VkSurfaceKHR>( surface ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ PhysicalDevice::getSurfaceSupportKHR( uint32_t queueFamilyIndex,
+ VULKAN_HPP_NAMESPACE::SurfaceKHR surface,
+ VULKAN_HPP_NAMESPACE::Bool32 * pSupported,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkGetPhysicalDeviceSurfaceSupportKHR( m_physicalDevice,
+ queueFamilyIndex,
+ static_cast<VkSurfaceKHR>( surface ),
+ reinterpret_cast<VkBool32 *>( pSupported ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::Bool32>::type
+ PhysicalDevice::getSurfaceSupportKHR( uint32_t queueFamilyIndex,
+ VULKAN_HPP_NAMESPACE::SurfaceKHR surface,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::Bool32 supported;
+ Result result =
+ static_cast<Result>( d.vkGetPhysicalDeviceSurfaceSupportKHR( m_physicalDevice,
+ queueFamilyIndex,
+ static_cast<VkSurfaceKHR>( surface ),
+ reinterpret_cast<VkBool32 *>( &supported ) ) );
+ return createResultValue( result, supported, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getSurfaceSupportKHR" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ PhysicalDevice::getSurfaceCapabilitiesKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface,
+ VULKAN_HPP_NAMESPACE::SurfaceCapabilitiesKHR * pSurfaceCapabilities,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkGetPhysicalDeviceSurfaceCapabilitiesKHR(
+ m_physicalDevice,
+ static_cast<VkSurfaceKHR>( surface ),
+ reinterpret_cast<VkSurfaceCapabilitiesKHR *>( pSurfaceCapabilities ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceCapabilitiesKHR>::type
+ PhysicalDevice::getSurfaceCapabilitiesKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface, Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::SurfaceCapabilitiesKHR surfaceCapabilities;
+ Result result = static_cast<Result>( d.vkGetPhysicalDeviceSurfaceCapabilitiesKHR(
+ m_physicalDevice,
+ static_cast<VkSurfaceKHR>( surface ),
+ reinterpret_cast<VkSurfaceCapabilitiesKHR *>( &surfaceCapabilities ) ) );
+ return createResultValue(
+ result, surfaceCapabilities, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getSurfaceCapabilitiesKHR" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ PhysicalDevice::getSurfaceFormatsKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface,
+ uint32_t * pSurfaceFormatCount,
+ VULKAN_HPP_NAMESPACE::SurfaceFormatKHR * pSurfaceFormats,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkGetPhysicalDeviceSurfaceFormatsKHR( m_physicalDevice,
+ static_cast<VkSurfaceKHR>( surface ),
+ pSurfaceFormatCount,
+ reinterpret_cast<VkSurfaceFormatKHR *>( pSurfaceFormats ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename SurfaceFormatKHRAllocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<SurfaceFormatKHR, SurfaceFormatKHRAllocator>>::type
+ PhysicalDevice::getSurfaceFormatsKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface, Dispatch const & d ) const
+ {
+ std::vector<SurfaceFormatKHR, SurfaceFormatKHRAllocator> surfaceFormats;
+ uint32_t surfaceFormatCount;
+ Result result;
+ do
+ {
+ result = static_cast<Result>( d.vkGetPhysicalDeviceSurfaceFormatsKHR(
+ m_physicalDevice, static_cast<VkSurfaceKHR>( surface ), &surfaceFormatCount, nullptr ) );
+ if ( ( result == Result::eSuccess ) && surfaceFormatCount )
+ {
+ surfaceFormats.resize( surfaceFormatCount );
+ result = static_cast<Result>(
+ d.vkGetPhysicalDeviceSurfaceFormatsKHR( m_physicalDevice,
+ static_cast<VkSurfaceKHR>( surface ),
+ &surfaceFormatCount,
+ reinterpret_cast<VkSurfaceFormatKHR *>( surfaceFormats.data() ) ) );
+ VULKAN_HPP_ASSERT( surfaceFormatCount <= surfaceFormats.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( surfaceFormatCount < surfaceFormats.size() ) )
+ {
+ surfaceFormats.resize( surfaceFormatCount );
+ }
+ return createResultValue(
+ result, surfaceFormats, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getSurfaceFormatsKHR" );
+ }
+
+ template <typename SurfaceFormatKHRAllocator,
+ typename Dispatch,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, SurfaceFormatKHR>::value, int>::type>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<SurfaceFormatKHR, SurfaceFormatKHRAllocator>>::type
+ PhysicalDevice::getSurfaceFormatsKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface,
+ SurfaceFormatKHRAllocator & surfaceFormatKHRAllocator,
+ Dispatch const & d ) const
+ {
+ std::vector<SurfaceFormatKHR, SurfaceFormatKHRAllocator> surfaceFormats( surfaceFormatKHRAllocator );
+ uint32_t surfaceFormatCount;
+ Result result;
+ do
+ {
+ result = static_cast<Result>( d.vkGetPhysicalDeviceSurfaceFormatsKHR(
+ m_physicalDevice, static_cast<VkSurfaceKHR>( surface ), &surfaceFormatCount, nullptr ) );
+ if ( ( result == Result::eSuccess ) && surfaceFormatCount )
+ {
+ surfaceFormats.resize( surfaceFormatCount );
+ result = static_cast<Result>(
+ d.vkGetPhysicalDeviceSurfaceFormatsKHR( m_physicalDevice,
+ static_cast<VkSurfaceKHR>( surface ),
+ &surfaceFormatCount,
+ reinterpret_cast<VkSurfaceFormatKHR *>( surfaceFormats.data() ) ) );
+ VULKAN_HPP_ASSERT( surfaceFormatCount <= surfaceFormats.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( surfaceFormatCount < surfaceFormats.size() ) )
+ {
+ surfaceFormats.resize( surfaceFormatCount );
+ }
+ return createResultValue(
+ result, surfaceFormats, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getSurfaceFormatsKHR" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ PhysicalDevice::getSurfacePresentModesKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface,
+ uint32_t * pPresentModeCount,
+ VULKAN_HPP_NAMESPACE::PresentModeKHR * pPresentModes,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkGetPhysicalDeviceSurfacePresentModesKHR( m_physicalDevice,
+ static_cast<VkSurfaceKHR>( surface ),
+ pPresentModeCount,
+ reinterpret_cast<VkPresentModeKHR *>( pPresentModes ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename PresentModeKHRAllocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<PresentModeKHR, PresentModeKHRAllocator>>::type
+ PhysicalDevice::getSurfacePresentModesKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface, Dispatch const & d ) const
+ {
+ std::vector<PresentModeKHR, PresentModeKHRAllocator> presentModes;
+ uint32_t presentModeCount;
+ Result result;
+ do
+ {
+ result = static_cast<Result>( d.vkGetPhysicalDeviceSurfacePresentModesKHR(
+ m_physicalDevice, static_cast<VkSurfaceKHR>( surface ), &presentModeCount, nullptr ) );
+ if ( ( result == Result::eSuccess ) && presentModeCount )
+ {
+ presentModes.resize( presentModeCount );
+ result = static_cast<Result>(
+ d.vkGetPhysicalDeviceSurfacePresentModesKHR( m_physicalDevice,
+ static_cast<VkSurfaceKHR>( surface ),
+ &presentModeCount,
+ reinterpret_cast<VkPresentModeKHR *>( presentModes.data() ) ) );
+ VULKAN_HPP_ASSERT( presentModeCount <= presentModes.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( presentModeCount < presentModes.size() ) )
+ {
+ presentModes.resize( presentModeCount );
+ }
+ return createResultValue(
+ result, presentModes, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getSurfacePresentModesKHR" );
+ }
+
+ template <typename PresentModeKHRAllocator,
+ typename Dispatch,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, PresentModeKHR>::value, int>::type>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<PresentModeKHR, PresentModeKHRAllocator>>::type
+ PhysicalDevice::getSurfacePresentModesKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface,
+ PresentModeKHRAllocator & presentModeKHRAllocator,
+ Dispatch const & d ) const
+ {
+ std::vector<PresentModeKHR, PresentModeKHRAllocator> presentModes( presentModeKHRAllocator );
+ uint32_t presentModeCount;
+ Result result;
+ do
+ {
+ result = static_cast<Result>( d.vkGetPhysicalDeviceSurfacePresentModesKHR(
+ m_physicalDevice, static_cast<VkSurfaceKHR>( surface ), &presentModeCount, nullptr ) );
+ if ( ( result == Result::eSuccess ) && presentModeCount )
+ {
+ presentModes.resize( presentModeCount );
+ result = static_cast<Result>(
+ d.vkGetPhysicalDeviceSurfacePresentModesKHR( m_physicalDevice,
+ static_cast<VkSurfaceKHR>( surface ),
+ &presentModeCount,
+ reinterpret_cast<VkPresentModeKHR *>( presentModes.data() ) ) );
+ VULKAN_HPP_ASSERT( presentModeCount <= presentModes.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( presentModeCount < presentModes.size() ) )
+ {
+ presentModes.resize( presentModeCount );
+ }
+ return createResultValue(
+ result, presentModes, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getSurfacePresentModesKHR" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_KHR_swapchain ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::createSwapchainKHR( const VULKAN_HPP_NAMESPACE::SwapchainCreateInfoKHR * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::SwapchainKHR * pSwapchain,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkCreateSwapchainKHR( m_device,
+ reinterpret_cast<const VkSwapchainCreateInfoKHR *>( pCreateInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkSwapchainKHR *>( pSwapchain ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::SwapchainKHR>::type
+ Device::createSwapchainKHR( const SwapchainCreateInfoKHR & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain;
+ Result result = static_cast<Result>(
+ d.vkCreateSwapchainKHR( m_device,
+ reinterpret_cast<const VkSwapchainCreateInfoKHR *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkSwapchainKHR *>( &swapchain ) ) );
+ return createResultValue( result, swapchain, VULKAN_HPP_NAMESPACE_STRING "::Device::createSwapchainKHR" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SwapchainKHR, Dispatch>>::type
+ Device::createSwapchainKHRUnique( const SwapchainCreateInfoKHR & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain;
+ Result result = static_cast<Result>(
+ d.vkCreateSwapchainKHR( m_device,
+ reinterpret_cast<const VkSwapchainCreateInfoKHR *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkSwapchainKHR *>( &swapchain ) ) );
+ ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::SwapchainKHR, Dispatch>(
+ result, swapchain, VULKAN_HPP_NAMESPACE_STRING "::Device::createSwapchainKHRUnique", deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroySwapchainKHR( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroySwapchainKHR( m_device,
+ static_cast<VkSwapchainKHR>( swapchain ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroySwapchainKHR( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroySwapchainKHR( m_device,
+ static_cast<VkSwapchainKHR>( swapchain ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroySwapchainKHR( m_device,
+ static_cast<VkSwapchainKHR>( swapchain ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroySwapchainKHR( m_device,
+ static_cast<VkSwapchainKHR>( swapchain ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::getSwapchainImagesKHR( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain,
+ uint32_t * pSwapchainImageCount,
+ VULKAN_HPP_NAMESPACE::Image * pSwapchainImages,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkGetSwapchainImagesKHR( m_device,
+ static_cast<VkSwapchainKHR>( swapchain ),
+ pSwapchainImageCount,
+ reinterpret_cast<VkImage *>( pSwapchainImages ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename ImageAllocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<Image, ImageAllocator>>::type
+ Device::getSwapchainImagesKHR( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain, Dispatch const & d ) const
+ {
+ std::vector<Image, ImageAllocator> swapchainImages;
+ uint32_t swapchainImageCount;
+ Result result;
+ do
+ {
+ result = static_cast<Result>( d.vkGetSwapchainImagesKHR(
+ m_device, static_cast<VkSwapchainKHR>( swapchain ), &swapchainImageCount, nullptr ) );
+ if ( ( result == Result::eSuccess ) && swapchainImageCount )
+ {
+ swapchainImages.resize( swapchainImageCount );
+ result =
+ static_cast<Result>( d.vkGetSwapchainImagesKHR( m_device,
+ static_cast<VkSwapchainKHR>( swapchain ),
+ &swapchainImageCount,
+ reinterpret_cast<VkImage *>( swapchainImages.data() ) ) );
+ VULKAN_HPP_ASSERT( swapchainImageCount <= swapchainImages.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( swapchainImageCount < swapchainImages.size() ) )
+ {
+ swapchainImages.resize( swapchainImageCount );
+ }
+ return createResultValue( result, swapchainImages, VULKAN_HPP_NAMESPACE_STRING "::Device::getSwapchainImagesKHR" );
+ }
+
+ template <typename ImageAllocator,
+ typename Dispatch,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, Image>::value, int>::type>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<Image, ImageAllocator>>::type
+ Device::getSwapchainImagesKHR( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain,
+ ImageAllocator & imageAllocator,
+ Dispatch const & d ) const
+ {
+ std::vector<Image, ImageAllocator> swapchainImages( imageAllocator );
+ uint32_t swapchainImageCount;
+ Result result;
+ do
+ {
+ result = static_cast<Result>( d.vkGetSwapchainImagesKHR(
+ m_device, static_cast<VkSwapchainKHR>( swapchain ), &swapchainImageCount, nullptr ) );
+ if ( ( result == Result::eSuccess ) && swapchainImageCount )
+ {
+ swapchainImages.resize( swapchainImageCount );
+ result =
+ static_cast<Result>( d.vkGetSwapchainImagesKHR( m_device,
+ static_cast<VkSwapchainKHR>( swapchain ),
+ &swapchainImageCount,
+ reinterpret_cast<VkImage *>( swapchainImages.data() ) ) );
+ VULKAN_HPP_ASSERT( swapchainImageCount <= swapchainImages.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( swapchainImageCount < swapchainImages.size() ) )
+ {
+ swapchainImages.resize( swapchainImageCount );
+ }
+ return createResultValue( result, swapchainImages, VULKAN_HPP_NAMESPACE_STRING "::Device::getSwapchainImagesKHR" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::acquireNextImageKHR( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain,
+ uint64_t timeout,
+ VULKAN_HPP_NAMESPACE::Semaphore semaphore,
+ VULKAN_HPP_NAMESPACE::Fence fence,
+ uint32_t * pImageIndex,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkAcquireNextImageKHR( m_device,
+ static_cast<VkSwapchainKHR>( swapchain ),
+ timeout,
+ static_cast<VkSemaphore>( semaphore ),
+ static_cast<VkFence>( fence ),
+ pImageIndex ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE ResultValue<uint32_t>
+ Device::acquireNextImageKHR( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain,
+ uint64_t timeout,
+ VULKAN_HPP_NAMESPACE::Semaphore semaphore,
+ VULKAN_HPP_NAMESPACE::Fence fence,
+ Dispatch const & d ) const
+ {
+ uint32_t imageIndex;
+ Result result = static_cast<Result>( d.vkAcquireNextImageKHR( m_device,
+ static_cast<VkSwapchainKHR>( swapchain ),
+ timeout,
+ static_cast<VkSemaphore>( semaphore ),
+ static_cast<VkFence>( fence ),
+ &imageIndex ) );
+ return createResultValue( result,
+ imageIndex,
+ VULKAN_HPP_NAMESPACE_STRING "::Device::acquireNextImageKHR",
+ { VULKAN_HPP_NAMESPACE::Result::eSuccess,
+ VULKAN_HPP_NAMESPACE::Result::eTimeout,
+ VULKAN_HPP_NAMESPACE::Result::eNotReady,
+ VULKAN_HPP_NAMESPACE::Result::eSuboptimalKHR } );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Queue::presentKHR(
+ const VULKAN_HPP_NAMESPACE::PresentInfoKHR * pPresentInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkQueuePresentKHR( m_queue, reinterpret_cast<const VkPresentInfoKHR *>( pPresentInfo ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Queue::presentKHR( const PresentInfoKHR & presentInfo,
+ Dispatch const & d ) const
+ {
+ Result result =
+ static_cast<Result>( d.vkQueuePresentKHR( m_queue, reinterpret_cast<const VkPresentInfoKHR *>( &presentInfo ) ) );
+ return createResultValue(
+ result,
+ VULKAN_HPP_NAMESPACE_STRING "::Queue::presentKHR",
+ { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::eSuboptimalKHR } );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getGroupPresentCapabilitiesKHR(
+ VULKAN_HPP_NAMESPACE::DeviceGroupPresentCapabilitiesKHR * pDeviceGroupPresentCapabilities,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkGetDeviceGroupPresentCapabilitiesKHR(
+ m_device, reinterpret_cast<VkDeviceGroupPresentCapabilitiesKHR *>( pDeviceGroupPresentCapabilities ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::DeviceGroupPresentCapabilitiesKHR>::type
+ Device::getGroupPresentCapabilitiesKHR( Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::DeviceGroupPresentCapabilitiesKHR deviceGroupPresentCapabilities;
+ Result result = static_cast<Result>( d.vkGetDeviceGroupPresentCapabilitiesKHR(
+ m_device, reinterpret_cast<VkDeviceGroupPresentCapabilitiesKHR *>( &deviceGroupPresentCapabilities ) ) );
+ return createResultValue(
+ result, deviceGroupPresentCapabilities, VULKAN_HPP_NAMESPACE_STRING "::Device::getGroupPresentCapabilitiesKHR" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::getGroupSurfacePresentModesKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface,
+ VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagsKHR * pModes,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkGetDeviceGroupSurfacePresentModesKHR( m_device,
+ static_cast<VkSurfaceKHR>( surface ),
+ reinterpret_cast<VkDeviceGroupPresentModeFlagsKHR *>( pModes ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagsKHR>::type
+ Device::getGroupSurfacePresentModesKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface, Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagsKHR modes;
+ Result result = static_cast<Result>(
+ d.vkGetDeviceGroupSurfacePresentModesKHR( m_device,
+ static_cast<VkSurfaceKHR>( surface ),
+ reinterpret_cast<VkDeviceGroupPresentModeFlagsKHR *>( &modes ) ) );
+ return createResultValue( result, modes, VULKAN_HPP_NAMESPACE_STRING "::Device::getGroupSurfacePresentModesKHR" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ PhysicalDevice::getPresentRectanglesKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface,
+ uint32_t * pRectCount,
+ VULKAN_HPP_NAMESPACE::Rect2D * pRects,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkGetPhysicalDevicePresentRectanglesKHR(
+ m_physicalDevice, static_cast<VkSurfaceKHR>( surface ), pRectCount, reinterpret_cast<VkRect2D *>( pRects ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Rect2DAllocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<Rect2D, Rect2DAllocator>>::type
+ PhysicalDevice::getPresentRectanglesKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface, Dispatch const & d ) const
+ {
+ std::vector<Rect2D, Rect2DAllocator> rects;
+ uint32_t rectCount;
+ Result result;
+ do
+ {
+ result = static_cast<Result>( d.vkGetPhysicalDevicePresentRectanglesKHR(
+ m_physicalDevice, static_cast<VkSurfaceKHR>( surface ), &rectCount, nullptr ) );
+ if ( ( result == Result::eSuccess ) && rectCount )
+ {
+ rects.resize( rectCount );
+ result = static_cast<Result>(
+ d.vkGetPhysicalDevicePresentRectanglesKHR( m_physicalDevice,
+ static_cast<VkSurfaceKHR>( surface ),
+ &rectCount,
+ reinterpret_cast<VkRect2D *>( rects.data() ) ) );
+ VULKAN_HPP_ASSERT( rectCount <= rects.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( rectCount < rects.size() ) )
+ {
+ rects.resize( rectCount );
+ }
+ return createResultValue( result, rects, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getPresentRectanglesKHR" );
+ }
+
+ template <typename Rect2DAllocator,
+ typename Dispatch,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, Rect2D>::value, int>::type>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<Rect2D, Rect2DAllocator>>::type
+ PhysicalDevice::getPresentRectanglesKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface,
+ Rect2DAllocator & rect2DAllocator,
+ Dispatch const & d ) const
+ {
+ std::vector<Rect2D, Rect2DAllocator> rects( rect2DAllocator );
+ uint32_t rectCount;
+ Result result;
+ do
+ {
+ result = static_cast<Result>( d.vkGetPhysicalDevicePresentRectanglesKHR(
+ m_physicalDevice, static_cast<VkSurfaceKHR>( surface ), &rectCount, nullptr ) );
+ if ( ( result == Result::eSuccess ) && rectCount )
+ {
+ rects.resize( rectCount );
+ result = static_cast<Result>(
+ d.vkGetPhysicalDevicePresentRectanglesKHR( m_physicalDevice,
+ static_cast<VkSurfaceKHR>( surface ),
+ &rectCount,
+ reinterpret_cast<VkRect2D *>( rects.data() ) ) );
+ VULKAN_HPP_ASSERT( rectCount <= rects.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( rectCount < rects.size() ) )
+ {
+ rects.resize( rectCount );
+ }
+ return createResultValue( result, rects, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getPresentRectanglesKHR" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::acquireNextImage2KHR( const VULKAN_HPP_NAMESPACE::AcquireNextImageInfoKHR * pAcquireInfo,
+ uint32_t * pImageIndex,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkAcquireNextImage2KHR(
+ m_device, reinterpret_cast<const VkAcquireNextImageInfoKHR *>( pAcquireInfo ), pImageIndex ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE ResultValue<uint32_t>
+ Device::acquireNextImage2KHR( const AcquireNextImageInfoKHR & acquireInfo, Dispatch const & d ) const
+ {
+ uint32_t imageIndex;
+ Result result = static_cast<Result>( d.vkAcquireNextImage2KHR(
+ m_device, reinterpret_cast<const VkAcquireNextImageInfoKHR *>( &acquireInfo ), &imageIndex ) );
+ return createResultValue( result,
+ imageIndex,
+ VULKAN_HPP_NAMESPACE_STRING "::Device::acquireNextImage2KHR",
+ { VULKAN_HPP_NAMESPACE::Result::eSuccess,
+ VULKAN_HPP_NAMESPACE::Result::eTimeout,
+ VULKAN_HPP_NAMESPACE::Result::eNotReady,
+ VULKAN_HPP_NAMESPACE::Result::eSuboptimalKHR } );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_KHR_display ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ PhysicalDevice::getDisplayPropertiesKHR( uint32_t * pPropertyCount,
+ VULKAN_HPP_NAMESPACE::DisplayPropertiesKHR * pProperties,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkGetPhysicalDeviceDisplayPropertiesKHR(
+ m_physicalDevice, pPropertyCount, reinterpret_cast<VkDisplayPropertiesKHR *>( pProperties ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename DisplayPropertiesKHRAllocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<DisplayPropertiesKHR, DisplayPropertiesKHRAllocator>>::type
+ PhysicalDevice::getDisplayPropertiesKHR( Dispatch const & d ) const
+ {
+ std::vector<DisplayPropertiesKHR, DisplayPropertiesKHRAllocator> properties;
+ uint32_t propertyCount;
+ Result result;
+ do
+ {
+ result =
+ static_cast<Result>( d.vkGetPhysicalDeviceDisplayPropertiesKHR( m_physicalDevice, &propertyCount, nullptr ) );
+ if ( ( result == Result::eSuccess ) && propertyCount )
+ {
+ properties.resize( propertyCount );
+ result = static_cast<Result>( d.vkGetPhysicalDeviceDisplayPropertiesKHR(
+ m_physicalDevice, &propertyCount, reinterpret_cast<VkDisplayPropertiesKHR *>( properties.data() ) ) );
+ VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( propertyCount < properties.size() ) )
+ {
+ properties.resize( propertyCount );
+ }
+ return createResultValue(
+ result, properties, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getDisplayPropertiesKHR" );
+ }
+
+ template <typename DisplayPropertiesKHRAllocator,
+ typename Dispatch,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, DisplayPropertiesKHR>::value, int>::type>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<DisplayPropertiesKHR, DisplayPropertiesKHRAllocator>>::type
+ PhysicalDevice::getDisplayPropertiesKHR( DisplayPropertiesKHRAllocator & displayPropertiesKHRAllocator,
+ Dispatch const & d ) const
+ {
+ std::vector<DisplayPropertiesKHR, DisplayPropertiesKHRAllocator> properties( displayPropertiesKHRAllocator );
+ uint32_t propertyCount;
+ Result result;
+ do
+ {
+ result =
+ static_cast<Result>( d.vkGetPhysicalDeviceDisplayPropertiesKHR( m_physicalDevice, &propertyCount, nullptr ) );
+ if ( ( result == Result::eSuccess ) && propertyCount )
+ {
+ properties.resize( propertyCount );
+ result = static_cast<Result>( d.vkGetPhysicalDeviceDisplayPropertiesKHR(
+ m_physicalDevice, &propertyCount, reinterpret_cast<VkDisplayPropertiesKHR *>( properties.data() ) ) );
+ VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( propertyCount < properties.size() ) )
+ {
+ properties.resize( propertyCount );
+ }
+ return createResultValue(
+ result, properties, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getDisplayPropertiesKHR" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ PhysicalDevice::getDisplayPlanePropertiesKHR( uint32_t * pPropertyCount,
+ VULKAN_HPP_NAMESPACE::DisplayPlanePropertiesKHR * pProperties,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkGetPhysicalDeviceDisplayPlanePropertiesKHR(
+ m_physicalDevice, pPropertyCount, reinterpret_cast<VkDisplayPlanePropertiesKHR *>( pProperties ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename DisplayPlanePropertiesKHRAllocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<DisplayPlanePropertiesKHR, DisplayPlanePropertiesKHRAllocator>>::type
+ PhysicalDevice::getDisplayPlanePropertiesKHR( Dispatch const & d ) const
+ {
+ std::vector<DisplayPlanePropertiesKHR, DisplayPlanePropertiesKHRAllocator> properties;
+ uint32_t propertyCount;
+ Result result;
+ do
+ {
+ result = static_cast<Result>(
+ d.vkGetPhysicalDeviceDisplayPlanePropertiesKHR( m_physicalDevice, &propertyCount, nullptr ) );
+ if ( ( result == Result::eSuccess ) && propertyCount )
+ {
+ properties.resize( propertyCount );
+ result = static_cast<Result>( d.vkGetPhysicalDeviceDisplayPlanePropertiesKHR(
+ m_physicalDevice, &propertyCount, reinterpret_cast<VkDisplayPlanePropertiesKHR *>( properties.data() ) ) );
+ VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( propertyCount < properties.size() ) )
+ {
+ properties.resize( propertyCount );
+ }
+ return createResultValue(
+ result, properties, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getDisplayPlanePropertiesKHR" );
+ }
+
+ template <typename DisplayPlanePropertiesKHRAllocator,
+ typename Dispatch,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, DisplayPlanePropertiesKHR>::value, int>::type>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<DisplayPlanePropertiesKHR, DisplayPlanePropertiesKHRAllocator>>::type
+ PhysicalDevice::getDisplayPlanePropertiesKHR(
+ DisplayPlanePropertiesKHRAllocator & displayPlanePropertiesKHRAllocator, Dispatch const & d ) const
+ {
+ std::vector<DisplayPlanePropertiesKHR, DisplayPlanePropertiesKHRAllocator> properties(
+ displayPlanePropertiesKHRAllocator );
+ uint32_t propertyCount;
+ Result result;
+ do
+ {
+ result = static_cast<Result>(
+ d.vkGetPhysicalDeviceDisplayPlanePropertiesKHR( m_physicalDevice, &propertyCount, nullptr ) );
+ if ( ( result == Result::eSuccess ) && propertyCount )
+ {
+ properties.resize( propertyCount );
+ result = static_cast<Result>( d.vkGetPhysicalDeviceDisplayPlanePropertiesKHR(
+ m_physicalDevice, &propertyCount, reinterpret_cast<VkDisplayPlanePropertiesKHR *>( properties.data() ) ) );
+ VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( propertyCount < properties.size() ) )
+ {
+ properties.resize( propertyCount );
+ }
+ return createResultValue(
+ result, properties, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getDisplayPlanePropertiesKHR" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ PhysicalDevice::getDisplayPlaneSupportedDisplaysKHR( uint32_t planeIndex,
+ uint32_t * pDisplayCount,
+ VULKAN_HPP_NAMESPACE::DisplayKHR * pDisplays,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkGetDisplayPlaneSupportedDisplaysKHR(
+ m_physicalDevice, planeIndex, pDisplayCount, reinterpret_cast<VkDisplayKHR *>( pDisplays ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename DisplayKHRAllocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<DisplayKHR, DisplayKHRAllocator>>::type
+ PhysicalDevice::getDisplayPlaneSupportedDisplaysKHR( uint32_t planeIndex, Dispatch const & d ) const
+ {
+ std::vector<DisplayKHR, DisplayKHRAllocator> displays;
+ uint32_t displayCount;
+ Result result;
+ do
+ {
+ result = static_cast<Result>(
+ d.vkGetDisplayPlaneSupportedDisplaysKHR( m_physicalDevice, planeIndex, &displayCount, nullptr ) );
+ if ( ( result == Result::eSuccess ) && displayCount )
+ {
+ displays.resize( displayCount );
+ result = static_cast<Result>( d.vkGetDisplayPlaneSupportedDisplaysKHR(
+ m_physicalDevice, planeIndex, &displayCount, reinterpret_cast<VkDisplayKHR *>( displays.data() ) ) );
+ VULKAN_HPP_ASSERT( displayCount <= displays.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( displayCount < displays.size() ) )
+ {
+ displays.resize( displayCount );
+ }
+ return createResultValue(
+ result, displays, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getDisplayPlaneSupportedDisplaysKHR" );
+ }
+
+ template <typename DisplayKHRAllocator,
+ typename Dispatch,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, DisplayKHR>::value, int>::type>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<DisplayKHR, DisplayKHRAllocator>>::type
+ PhysicalDevice::getDisplayPlaneSupportedDisplaysKHR( uint32_t planeIndex,
+ DisplayKHRAllocator & displayKHRAllocator,
+ Dispatch const & d ) const
+ {
+ std::vector<DisplayKHR, DisplayKHRAllocator> displays( displayKHRAllocator );
+ uint32_t displayCount;
+ Result result;
+ do
+ {
+ result = static_cast<Result>(
+ d.vkGetDisplayPlaneSupportedDisplaysKHR( m_physicalDevice, planeIndex, &displayCount, nullptr ) );
+ if ( ( result == Result::eSuccess ) && displayCount )
+ {
+ displays.resize( displayCount );
+ result = static_cast<Result>( d.vkGetDisplayPlaneSupportedDisplaysKHR(
+ m_physicalDevice, planeIndex, &displayCount, reinterpret_cast<VkDisplayKHR *>( displays.data() ) ) );
+ VULKAN_HPP_ASSERT( displayCount <= displays.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( displayCount < displays.size() ) )
+ {
+ displays.resize( displayCount );
+ }
+ return createResultValue(
+ result, displays, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getDisplayPlaneSupportedDisplaysKHR" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ PhysicalDevice::getDisplayModePropertiesKHR( VULKAN_HPP_NAMESPACE::DisplayKHR display,
+ uint32_t * pPropertyCount,
+ VULKAN_HPP_NAMESPACE::DisplayModePropertiesKHR * pProperties,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkGetDisplayModePropertiesKHR( m_physicalDevice,
+ static_cast<VkDisplayKHR>( display ),
+ pPropertyCount,
+ reinterpret_cast<VkDisplayModePropertiesKHR *>( pProperties ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename DisplayModePropertiesKHRAllocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<DisplayModePropertiesKHR, DisplayModePropertiesKHRAllocator>>::type
+ PhysicalDevice::getDisplayModePropertiesKHR( VULKAN_HPP_NAMESPACE::DisplayKHR display, Dispatch const & d ) const
+ {
+ std::vector<DisplayModePropertiesKHR, DisplayModePropertiesKHRAllocator> properties;
+ uint32_t propertyCount;
+ Result result;
+ do
+ {
+ result = static_cast<Result>( d.vkGetDisplayModePropertiesKHR(
+ m_physicalDevice, static_cast<VkDisplayKHR>( display ), &propertyCount, nullptr ) );
+ if ( ( result == Result::eSuccess ) && propertyCount )
+ {
+ properties.resize( propertyCount );
+ result = static_cast<Result>(
+ d.vkGetDisplayModePropertiesKHR( m_physicalDevice,
+ static_cast<VkDisplayKHR>( display ),
+ &propertyCount,
+ reinterpret_cast<VkDisplayModePropertiesKHR *>( properties.data() ) ) );
+ VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( propertyCount < properties.size() ) )
+ {
+ properties.resize( propertyCount );
+ }
+ return createResultValue(
+ result, properties, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getDisplayModePropertiesKHR" );
+ }
+
+ template <typename DisplayModePropertiesKHRAllocator,
+ typename Dispatch,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, DisplayModePropertiesKHR>::value, int>::type>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<DisplayModePropertiesKHR, DisplayModePropertiesKHRAllocator>>::type
+ PhysicalDevice::getDisplayModePropertiesKHR( VULKAN_HPP_NAMESPACE::DisplayKHR display,
+ DisplayModePropertiesKHRAllocator & displayModePropertiesKHRAllocator,
+ Dispatch const & d ) const
+ {
+ std::vector<DisplayModePropertiesKHR, DisplayModePropertiesKHRAllocator> properties(
+ displayModePropertiesKHRAllocator );
+ uint32_t propertyCount;
+ Result result;
+ do
+ {
+ result = static_cast<Result>( d.vkGetDisplayModePropertiesKHR(
+ m_physicalDevice, static_cast<VkDisplayKHR>( display ), &propertyCount, nullptr ) );
+ if ( ( result == Result::eSuccess ) && propertyCount )
+ {
+ properties.resize( propertyCount );
+ result = static_cast<Result>(
+ d.vkGetDisplayModePropertiesKHR( m_physicalDevice,
+ static_cast<VkDisplayKHR>( display ),
+ &propertyCount,
+ reinterpret_cast<VkDisplayModePropertiesKHR *>( properties.data() ) ) );
+ VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( propertyCount < properties.size() ) )
+ {
+ properties.resize( propertyCount );
+ }
+ return createResultValue(
+ result, properties, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getDisplayModePropertiesKHR" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ PhysicalDevice::createDisplayModeKHR( VULKAN_HPP_NAMESPACE::DisplayKHR display,
+ const VULKAN_HPP_NAMESPACE::DisplayModeCreateInfoKHR * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::DisplayModeKHR * pMode,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkCreateDisplayModeKHR( m_physicalDevice,
+ static_cast<VkDisplayKHR>( display ),
+ reinterpret_cast<const VkDisplayModeCreateInfoKHR *>( pCreateInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkDisplayModeKHR *>( pMode ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::DisplayModeKHR>::type
+ PhysicalDevice::createDisplayModeKHR( VULKAN_HPP_NAMESPACE::DisplayKHR display,
+ const DisplayModeCreateInfoKHR & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::DisplayModeKHR mode;
+ Result result = static_cast<Result>(
+ d.vkCreateDisplayModeKHR( m_physicalDevice,
+ static_cast<VkDisplayKHR>( display ),
+ reinterpret_cast<const VkDisplayModeCreateInfoKHR *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkDisplayModeKHR *>( &mode ) ) );
+ return createResultValue( result, mode, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::createDisplayModeKHR" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::DisplayModeKHR, Dispatch>>::type
+ PhysicalDevice::createDisplayModeKHRUnique( VULKAN_HPP_NAMESPACE::DisplayKHR display,
+ const DisplayModeCreateInfoKHR & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::DisplayModeKHR mode;
+ Result result = static_cast<Result>(
+ d.vkCreateDisplayModeKHR( m_physicalDevice,
+ static_cast<VkDisplayKHR>( display ),
+ reinterpret_cast<const VkDisplayModeCreateInfoKHR *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkDisplayModeKHR *>( &mode ) ) );
+ ObjectDestroy<PhysicalDevice, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::DisplayModeKHR, Dispatch>(
+ result, mode, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::createDisplayModeKHRUnique", deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ PhysicalDevice::getDisplayPlaneCapabilitiesKHR( VULKAN_HPP_NAMESPACE::DisplayModeKHR mode,
+ uint32_t planeIndex,
+ VULKAN_HPP_NAMESPACE::DisplayPlaneCapabilitiesKHR * pCapabilities,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkGetDisplayPlaneCapabilitiesKHR( m_physicalDevice,
+ static_cast<VkDisplayModeKHR>( mode ),
+ planeIndex,
+ reinterpret_cast<VkDisplayPlaneCapabilitiesKHR *>( pCapabilities ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::DisplayPlaneCapabilitiesKHR>::type
+ PhysicalDevice::getDisplayPlaneCapabilitiesKHR( VULKAN_HPP_NAMESPACE::DisplayModeKHR mode,
+ uint32_t planeIndex,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::DisplayPlaneCapabilitiesKHR capabilities;
+ Result result = static_cast<Result>(
+ d.vkGetDisplayPlaneCapabilitiesKHR( m_physicalDevice,
+ static_cast<VkDisplayModeKHR>( mode ),
+ planeIndex,
+ reinterpret_cast<VkDisplayPlaneCapabilitiesKHR *>( &capabilities ) ) );
+ return createResultValue(
+ result, capabilities, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getDisplayPlaneCapabilitiesKHR" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Instance::createDisplayPlaneSurfaceKHR( const VULKAN_HPP_NAMESPACE::DisplaySurfaceCreateInfoKHR * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::SurfaceKHR * pSurface,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkCreateDisplayPlaneSurfaceKHR( m_instance,
+ reinterpret_cast<const VkDisplaySurfaceCreateInfoKHR *>( pCreateInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkSurfaceKHR *>( pSurface ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceKHR>::type
+ Instance::createDisplayPlaneSurfaceKHR( const DisplaySurfaceCreateInfoKHR & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::SurfaceKHR surface;
+ Result result = static_cast<Result>(
+ d.vkCreateDisplayPlaneSurfaceKHR( m_instance,
+ reinterpret_cast<const VkDisplaySurfaceCreateInfoKHR *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkSurfaceKHR *>( &surface ) ) );
+ return createResultValue( result, surface, VULKAN_HPP_NAMESPACE_STRING "::Instance::createDisplayPlaneSurfaceKHR" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>>::type
+ Instance::createDisplayPlaneSurfaceKHRUnique( const DisplaySurfaceCreateInfoKHR & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::SurfaceKHR surface;
+ Result result = static_cast<Result>(
+ d.vkCreateDisplayPlaneSurfaceKHR( m_instance,
+ reinterpret_cast<const VkDisplaySurfaceCreateInfoKHR *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkSurfaceKHR *>( &surface ) ) );
+ ObjectDestroy<Instance, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>(
+ result, surface, VULKAN_HPP_NAMESPACE_STRING "::Instance::createDisplayPlaneSurfaceKHRUnique", deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_KHR_display_swapchain ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::createSharedSwapchainsKHR( uint32_t swapchainCount,
+ const VULKAN_HPP_NAMESPACE::SwapchainCreateInfoKHR * pCreateInfos,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::SwapchainKHR * pSwapchains,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkCreateSharedSwapchainsKHR( m_device,
+ swapchainCount,
+ reinterpret_cast<const VkSwapchainCreateInfoKHR *>( pCreateInfos ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkSwapchainKHR *>( pSwapchains ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename SwapchainKHRAllocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<SwapchainKHR, SwapchainKHRAllocator>>::type
+ Device::createSharedSwapchainsKHR(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::SwapchainCreateInfoKHR> const & createInfos,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ std::vector<SwapchainKHR, SwapchainKHRAllocator> swapchains( createInfos.size() );
+ Result result = static_cast<Result>(
+ d.vkCreateSharedSwapchainsKHR( m_device,
+ createInfos.size(),
+ reinterpret_cast<const VkSwapchainCreateInfoKHR *>( createInfos.data() ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkSwapchainKHR *>( swapchains.data() ) ) );
+ return createResultValue( result, swapchains, VULKAN_HPP_NAMESPACE_STRING "::Device::createSharedSwapchainsKHR" );
+ }
+
+ template <typename SwapchainKHRAllocator,
+ typename Dispatch,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, SwapchainKHR>::value, int>::type>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<SwapchainKHR, SwapchainKHRAllocator>>::type
+ Device::createSharedSwapchainsKHR(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::SwapchainCreateInfoKHR> const & createInfos,
+ Optional<const AllocationCallbacks> allocator,
+ SwapchainKHRAllocator & swapchainKHRAllocator,
+ Dispatch const & d ) const
+ {
+ std::vector<SwapchainKHR, SwapchainKHRAllocator> swapchains( createInfos.size(), swapchainKHRAllocator );
+ Result result = static_cast<Result>(
+ d.vkCreateSharedSwapchainsKHR( m_device,
+ createInfos.size(),
+ reinterpret_cast<const VkSwapchainCreateInfoKHR *>( createInfos.data() ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkSwapchainKHR *>( swapchains.data() ) ) );
+ return createResultValue( result, swapchains, VULKAN_HPP_NAMESPACE_STRING "::Device::createSharedSwapchainsKHR" );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<SwapchainKHR>::type
+ Device::createSharedSwapchainKHR( const VULKAN_HPP_NAMESPACE::SwapchainCreateInfoKHR & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ SwapchainKHR swapchain;
+ Result result = static_cast<Result>(
+ d.vkCreateSharedSwapchainsKHR( m_device,
+ 1,
+ reinterpret_cast<const VkSwapchainCreateInfoKHR *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkSwapchainKHR *>( &swapchain ) ) );
+ return createResultValue( result, swapchain, VULKAN_HPP_NAMESPACE_STRING "::Device::createSharedSwapchainKHR" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch, typename SwapchainKHRAllocator>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<UniqueHandle<SwapchainKHR, Dispatch>, SwapchainKHRAllocator>>::type
+ Device::createSharedSwapchainsKHRUnique(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::SwapchainCreateInfoKHR> const & createInfos,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ std::vector<UniqueHandle<SwapchainKHR, Dispatch>, SwapchainKHRAllocator> uniqueSwapchains;
+ std::vector<SwapchainKHR> swapchains( createInfos.size() );
+ Result result = static_cast<Result>(
+ d.vkCreateSharedSwapchainsKHR( m_device,
+ createInfos.size(),
+ reinterpret_cast<const VkSwapchainCreateInfoKHR *>( createInfos.data() ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkSwapchainKHR *>( swapchains.data() ) ) );
+ if ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ uniqueSwapchains.reserve( createInfos.size() );
+ ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
+ for ( size_t i = 0; i < createInfos.size(); i++ )
+ {
+ uniqueSwapchains.push_back( UniqueHandle<SwapchainKHR, Dispatch>( swapchains[i], deleter ) );
+ }
+ }
+ return createResultValue(
+ result, std::move( uniqueSwapchains ), VULKAN_HPP_NAMESPACE_STRING "::Device::createSharedSwapchainsKHRUnique" );
+ }
+
+ template <typename Dispatch,
+ typename SwapchainKHRAllocator,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, UniqueHandle<SwapchainKHR, Dispatch>>::value,
+ int>::type>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<UniqueHandle<SwapchainKHR, Dispatch>, SwapchainKHRAllocator>>::type
+ Device::createSharedSwapchainsKHRUnique(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::SwapchainCreateInfoKHR> const & createInfos,
+ Optional<const AllocationCallbacks> allocator,
+ SwapchainKHRAllocator & swapchainKHRAllocator,
+ Dispatch const & d ) const
+ {
+ std::vector<UniqueHandle<SwapchainKHR, Dispatch>, SwapchainKHRAllocator> uniqueSwapchains( swapchainKHRAllocator );
+ std::vector<SwapchainKHR> swapchains( createInfos.size() );
+ Result result = static_cast<Result>(
+ d.vkCreateSharedSwapchainsKHR( m_device,
+ createInfos.size(),
+ reinterpret_cast<const VkSwapchainCreateInfoKHR *>( createInfos.data() ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkSwapchainKHR *>( swapchains.data() ) ) );
+ if ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ uniqueSwapchains.reserve( createInfos.size() );
+ ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
+ for ( size_t i = 0; i < createInfos.size(); i++ )
+ {
+ uniqueSwapchains.push_back( UniqueHandle<SwapchainKHR, Dispatch>( swapchains[i], deleter ) );
+ }
+ }
+ return createResultValue(
+ result, std::move( uniqueSwapchains ), VULKAN_HPP_NAMESPACE_STRING "::Device::createSharedSwapchainsKHRUnique" );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<SwapchainKHR, Dispatch>>::type
+ Device::createSharedSwapchainKHRUnique( const VULKAN_HPP_NAMESPACE::SwapchainCreateInfoKHR & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ SwapchainKHR swapchain;
+ Result result = static_cast<Result>(
+ d.vkCreateSharedSwapchainsKHR( m_device,
+ 1,
+ reinterpret_cast<const VkSwapchainCreateInfoKHR *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkSwapchainKHR *>( &swapchain ) ) );
+ ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<SwapchainKHR, Dispatch>(
+ result, swapchain, VULKAN_HPP_NAMESPACE_STRING "::Device::createSharedSwapchainKHRUnique", deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#if defined( VK_USE_PLATFORM_XLIB_KHR )
+ //=== VK_KHR_xlib_surface ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Instance::createXlibSurfaceKHR( const VULKAN_HPP_NAMESPACE::XlibSurfaceCreateInfoKHR * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::SurfaceKHR * pSurface,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkCreateXlibSurfaceKHR( m_instance,
+ reinterpret_cast<const VkXlibSurfaceCreateInfoKHR *>( pCreateInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkSurfaceKHR *>( pSurface ) ) );
+ }
+
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceKHR>::type
+ Instance::createXlibSurfaceKHR( const XlibSurfaceCreateInfoKHR & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::SurfaceKHR surface;
+ Result result = static_cast<Result>(
+ d.vkCreateXlibSurfaceKHR( m_instance,
+ reinterpret_cast<const VkXlibSurfaceCreateInfoKHR *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkSurfaceKHR *>( &surface ) ) );
+ return createResultValue( result, surface, VULKAN_HPP_NAMESPACE_STRING "::Instance::createXlibSurfaceKHR" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>>::type
+ Instance::createXlibSurfaceKHRUnique( const XlibSurfaceCreateInfoKHR & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::SurfaceKHR surface;
+ Result result = static_cast<Result>(
+ d.vkCreateXlibSurfaceKHR( m_instance,
+ reinterpret_cast<const VkXlibSurfaceCreateInfoKHR *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkSurfaceKHR *>( &surface ) ) );
+ ObjectDestroy<Instance, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>(
+ result, surface, VULKAN_HPP_NAMESPACE_STRING "::Instance::createXlibSurfaceKHRUnique", deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE Bool32 PhysicalDevice::getXlibPresentationSupportKHR( uint32_t queueFamilyIndex,
+ Display * dpy,
+ VisualID visualID,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Bool32>(
+ d.vkGetPhysicalDeviceXlibPresentationSupportKHR( m_physicalDevice, queueFamilyIndex, dpy, visualID ) );
+ }
+
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE Bool32 PhysicalDevice::getXlibPresentationSupportKHR( uint32_t queueFamilyIndex,
+ Display & dpy,
+ VisualID visualID,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return d.vkGetPhysicalDeviceXlibPresentationSupportKHR( m_physicalDevice, queueFamilyIndex, &dpy, visualID );
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_USE_PLATFORM_XLIB_KHR*/
+
+#if defined( VK_USE_PLATFORM_XCB_KHR )
+ //=== VK_KHR_xcb_surface ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Instance::createXcbSurfaceKHR( const VULKAN_HPP_NAMESPACE::XcbSurfaceCreateInfoKHR * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::SurfaceKHR * pSurface,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkCreateXcbSurfaceKHR( m_instance,
+ reinterpret_cast<const VkXcbSurfaceCreateInfoKHR *>( pCreateInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkSurfaceKHR *>( pSurface ) ) );
+ }
+
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceKHR>::type
+ Instance::createXcbSurfaceKHR( const XcbSurfaceCreateInfoKHR & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::SurfaceKHR surface;
+ Result result = static_cast<Result>(
+ d.vkCreateXcbSurfaceKHR( m_instance,
+ reinterpret_cast<const VkXcbSurfaceCreateInfoKHR *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkSurfaceKHR *>( &surface ) ) );
+ return createResultValue( result, surface, VULKAN_HPP_NAMESPACE_STRING "::Instance::createXcbSurfaceKHR" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>>::type
+ Instance::createXcbSurfaceKHRUnique( const XcbSurfaceCreateInfoKHR & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::SurfaceKHR surface;
+ Result result = static_cast<Result>(
+ d.vkCreateXcbSurfaceKHR( m_instance,
+ reinterpret_cast<const VkXcbSurfaceCreateInfoKHR *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkSurfaceKHR *>( &surface ) ) );
+ ObjectDestroy<Instance, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>(
+ result, surface, VULKAN_HPP_NAMESPACE_STRING "::Instance::createXcbSurfaceKHRUnique", deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE Bool32 PhysicalDevice::getXcbPresentationSupportKHR( uint32_t queueFamilyIndex,
+ xcb_connection_t * connection,
+ xcb_visualid_t visual_id,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Bool32>(
+ d.vkGetPhysicalDeviceXcbPresentationSupportKHR( m_physicalDevice, queueFamilyIndex, connection, visual_id ) );
+ }
+
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE Bool32 PhysicalDevice::getXcbPresentationSupportKHR( uint32_t queueFamilyIndex,
+ xcb_connection_t & connection,
+ xcb_visualid_t visual_id,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return d.vkGetPhysicalDeviceXcbPresentationSupportKHR( m_physicalDevice, queueFamilyIndex, &connection, visual_id );
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_USE_PLATFORM_XCB_KHR*/
+
+#if defined( VK_USE_PLATFORM_WAYLAND_KHR )
+ //=== VK_KHR_wayland_surface ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Instance::createWaylandSurfaceKHR( const VULKAN_HPP_NAMESPACE::WaylandSurfaceCreateInfoKHR * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::SurfaceKHR * pSurface,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkCreateWaylandSurfaceKHR( m_instance,
+ reinterpret_cast<const VkWaylandSurfaceCreateInfoKHR *>( pCreateInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkSurfaceKHR *>( pSurface ) ) );
+ }
+
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceKHR>::type
+ Instance::createWaylandSurfaceKHR( const WaylandSurfaceCreateInfoKHR & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::SurfaceKHR surface;
+ Result result = static_cast<Result>(
+ d.vkCreateWaylandSurfaceKHR( m_instance,
+ reinterpret_cast<const VkWaylandSurfaceCreateInfoKHR *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkSurfaceKHR *>( &surface ) ) );
+ return createResultValue( result, surface, VULKAN_HPP_NAMESPACE_STRING "::Instance::createWaylandSurfaceKHR" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>>::type
+ Instance::createWaylandSurfaceKHRUnique( const WaylandSurfaceCreateInfoKHR & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::SurfaceKHR surface;
+ Result result = static_cast<Result>(
+ d.vkCreateWaylandSurfaceKHR( m_instance,
+ reinterpret_cast<const VkWaylandSurfaceCreateInfoKHR *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkSurfaceKHR *>( &surface ) ) );
+ ObjectDestroy<Instance, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>(
+ result, surface, VULKAN_HPP_NAMESPACE_STRING "::Instance::createWaylandSurfaceKHRUnique", deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE Bool32 PhysicalDevice::getWaylandPresentationSupportKHR(
+ uint32_t queueFamilyIndex, struct wl_display * display, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Bool32>(
+ d.vkGetPhysicalDeviceWaylandPresentationSupportKHR( m_physicalDevice, queueFamilyIndex, display ) );
+ }
+
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE Bool32 PhysicalDevice::getWaylandPresentationSupportKHR(
+ uint32_t queueFamilyIndex, struct wl_display & display, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return d.vkGetPhysicalDeviceWaylandPresentationSupportKHR( m_physicalDevice, queueFamilyIndex, &display );
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_USE_PLATFORM_WAYLAND_KHR*/
+
+#if defined( VK_USE_PLATFORM_ANDROID_KHR )
+ //=== VK_KHR_android_surface ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Instance::createAndroidSurfaceKHR( const VULKAN_HPP_NAMESPACE::AndroidSurfaceCreateInfoKHR * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::SurfaceKHR * pSurface,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkCreateAndroidSurfaceKHR( m_instance,
+ reinterpret_cast<const VkAndroidSurfaceCreateInfoKHR *>( pCreateInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkSurfaceKHR *>( pSurface ) ) );
+ }
+
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceKHR>::type
+ Instance::createAndroidSurfaceKHR( const AndroidSurfaceCreateInfoKHR & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::SurfaceKHR surface;
+ Result result = static_cast<Result>(
+ d.vkCreateAndroidSurfaceKHR( m_instance,
+ reinterpret_cast<const VkAndroidSurfaceCreateInfoKHR *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkSurfaceKHR *>( &surface ) ) );
+ return createResultValue( result, surface, VULKAN_HPP_NAMESPACE_STRING "::Instance::createAndroidSurfaceKHR" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>>::type
+ Instance::createAndroidSurfaceKHRUnique( const AndroidSurfaceCreateInfoKHR & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::SurfaceKHR surface;
+ Result result = static_cast<Result>(
+ d.vkCreateAndroidSurfaceKHR( m_instance,
+ reinterpret_cast<const VkAndroidSurfaceCreateInfoKHR *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkSurfaceKHR *>( &surface ) ) );
+ ObjectDestroy<Instance, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>(
+ result, surface, VULKAN_HPP_NAMESPACE_STRING "::Instance::createAndroidSurfaceKHRUnique", deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
+
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ //=== VK_KHR_win32_surface ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Instance::createWin32SurfaceKHR( const VULKAN_HPP_NAMESPACE::Win32SurfaceCreateInfoKHR * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::SurfaceKHR * pSurface,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkCreateWin32SurfaceKHR( m_instance,
+ reinterpret_cast<const VkWin32SurfaceCreateInfoKHR *>( pCreateInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkSurfaceKHR *>( pSurface ) ) );
+ }
+
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceKHR>::type
+ Instance::createWin32SurfaceKHR( const Win32SurfaceCreateInfoKHR & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::SurfaceKHR surface;
+ Result result = static_cast<Result>(
+ d.vkCreateWin32SurfaceKHR( m_instance,
+ reinterpret_cast<const VkWin32SurfaceCreateInfoKHR *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkSurfaceKHR *>( &surface ) ) );
+ return createResultValue( result, surface, VULKAN_HPP_NAMESPACE_STRING "::Instance::createWin32SurfaceKHR" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>>::type
+ Instance::createWin32SurfaceKHRUnique( const Win32SurfaceCreateInfoKHR & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::SurfaceKHR surface;
+ Result result = static_cast<Result>(
+ d.vkCreateWin32SurfaceKHR( m_instance,
+ reinterpret_cast<const VkWin32SurfaceCreateInfoKHR *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkSurfaceKHR *>( &surface ) ) );
+ ObjectDestroy<Instance, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>(
+ result, surface, VULKAN_HPP_NAMESPACE_STRING "::Instance::createWin32SurfaceKHRUnique", deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE Bool32 PhysicalDevice::getWin32PresentationSupportKHR(
+ uint32_t queueFamilyIndex, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Bool32>(
+ d.vkGetPhysicalDeviceWin32PresentationSupportKHR( m_physicalDevice, queueFamilyIndex ) );
+ }
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+
+ //=== VK_EXT_debug_report ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Instance::createDebugReportCallbackEXT( const VULKAN_HPP_NAMESPACE::DebugReportCallbackCreateInfoEXT * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::DebugReportCallbackEXT * pCallback,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkCreateDebugReportCallbackEXT( m_instance,
+ reinterpret_cast<const VkDebugReportCallbackCreateInfoEXT *>( pCreateInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkDebugReportCallbackEXT *>( pCallback ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::DebugReportCallbackEXT>::type
+ Instance::createDebugReportCallbackEXT( const DebugReportCallbackCreateInfoEXT & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::DebugReportCallbackEXT callback;
+ Result result = static_cast<Result>(
+ d.vkCreateDebugReportCallbackEXT( m_instance,
+ reinterpret_cast<const VkDebugReportCallbackCreateInfoEXT *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkDebugReportCallbackEXT *>( &callback ) ) );
+ return createResultValue(
+ result, callback, VULKAN_HPP_NAMESPACE_STRING "::Instance::createDebugReportCallbackEXT" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::DebugReportCallbackEXT, Dispatch>>::type
+ Instance::createDebugReportCallbackEXTUnique( const DebugReportCallbackCreateInfoEXT & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::DebugReportCallbackEXT callback;
+ Result result = static_cast<Result>(
+ d.vkCreateDebugReportCallbackEXT( m_instance,
+ reinterpret_cast<const VkDebugReportCallbackCreateInfoEXT *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkDebugReportCallbackEXT *>( &callback ) ) );
+ ObjectDestroy<Instance, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::DebugReportCallbackEXT, Dispatch>(
+ result, callback, VULKAN_HPP_NAMESPACE_STRING "::Instance::createDebugReportCallbackEXTUnique", deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ Instance::destroyDebugReportCallbackEXT( VULKAN_HPP_NAMESPACE::DebugReportCallbackEXT callback,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyDebugReportCallbackEXT( m_instance,
+ static_cast<VkDebugReportCallbackEXT>( callback ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Instance::destroyDebugReportCallbackEXT( VULKAN_HPP_NAMESPACE::DebugReportCallbackEXT callback,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyDebugReportCallbackEXT(
+ m_instance,
+ static_cast<VkDebugReportCallbackEXT>( callback ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Instance::destroy( VULKAN_HPP_NAMESPACE::DebugReportCallbackEXT callback,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyDebugReportCallbackEXT( m_instance,
+ static_cast<VkDebugReportCallbackEXT>( callback ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Instance::destroy( VULKAN_HPP_NAMESPACE::DebugReportCallbackEXT callback,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyDebugReportCallbackEXT(
+ m_instance,
+ static_cast<VkDebugReportCallbackEXT>( callback ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Instance::debugReportMessageEXT( VULKAN_HPP_NAMESPACE::DebugReportFlagsEXT flags,
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT objectType,
+ uint64_t object,
+ size_t location,
+ int32_t messageCode,
+ const char * pLayerPrefix,
+ const char * pMessage,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDebugReportMessageEXT( m_instance,
+ static_cast<VkDebugReportFlagsEXT>( flags ),
+ static_cast<VkDebugReportObjectTypeEXT>( objectType ),
+ object,
+ location,
+ messageCode,
+ pLayerPrefix,
+ pMessage );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Instance::debugReportMessageEXT( VULKAN_HPP_NAMESPACE::DebugReportFlagsEXT flags,
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT objectType,
+ uint64_t object,
+ size_t location,
+ int32_t messageCode,
+ const std::string & layerPrefix,
+ const std::string & message,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDebugReportMessageEXT( m_instance,
+ static_cast<VkDebugReportFlagsEXT>( flags ),
+ static_cast<VkDebugReportObjectTypeEXT>( objectType ),
+ object,
+ location,
+ messageCode,
+ layerPrefix.c_str(),
+ message.c_str() );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_EXT_debug_marker ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::debugMarkerSetObjectTagEXT(
+ const VULKAN_HPP_NAMESPACE::DebugMarkerObjectTagInfoEXT * pTagInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkDebugMarkerSetObjectTagEXT( m_device, reinterpret_cast<const VkDebugMarkerObjectTagInfoEXT *>( pTagInfo ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type
+ Device::debugMarkerSetObjectTagEXT( const DebugMarkerObjectTagInfoEXT & tagInfo, Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>(
+ d.vkDebugMarkerSetObjectTagEXT( m_device, reinterpret_cast<const VkDebugMarkerObjectTagInfoEXT *>( &tagInfo ) ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::debugMarkerSetObjectTagEXT" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::debugMarkerSetObjectNameEXT(
+ const VULKAN_HPP_NAMESPACE::DebugMarkerObjectNameInfoEXT * pNameInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkDebugMarkerSetObjectNameEXT(
+ m_device, reinterpret_cast<const VkDebugMarkerObjectNameInfoEXT *>( pNameInfo ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type
+ Device::debugMarkerSetObjectNameEXT( const DebugMarkerObjectNameInfoEXT & nameInfo, Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>( d.vkDebugMarkerSetObjectNameEXT(
+ m_device, reinterpret_cast<const VkDebugMarkerObjectNameInfoEXT *>( &nameInfo ) ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::debugMarkerSetObjectNameEXT" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::debugMarkerBeginEXT( const VULKAN_HPP_NAMESPACE::DebugMarkerMarkerInfoEXT * pMarkerInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdDebugMarkerBeginEXT( m_commandBuffer, reinterpret_cast<const VkDebugMarkerMarkerInfoEXT *>( pMarkerInfo ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::debugMarkerBeginEXT( const DebugMarkerMarkerInfoEXT & markerInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdDebugMarkerBeginEXT( m_commandBuffer, reinterpret_cast<const VkDebugMarkerMarkerInfoEXT *>( &markerInfo ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::debugMarkerEndEXT( Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdDebugMarkerEndEXT( m_commandBuffer );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::debugMarkerInsertEXT( const VULKAN_HPP_NAMESPACE::DebugMarkerMarkerInfoEXT * pMarkerInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdDebugMarkerInsertEXT( m_commandBuffer, reinterpret_cast<const VkDebugMarkerMarkerInfoEXT *>( pMarkerInfo ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::debugMarkerInsertEXT( const DebugMarkerMarkerInfoEXT & markerInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdDebugMarkerInsertEXT( m_commandBuffer, reinterpret_cast<const VkDebugMarkerMarkerInfoEXT *>( &markerInfo ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ //=== VK_KHR_video_queue ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ PhysicalDevice::getVideoCapabilitiesKHR( const VULKAN_HPP_NAMESPACE::VideoProfileKHR * pVideoProfile,
+ VULKAN_HPP_NAMESPACE::VideoCapabilitiesKHR * pCapabilities,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkGetPhysicalDeviceVideoCapabilitiesKHR( m_physicalDevice,
+ reinterpret_cast<const VkVideoProfileKHR *>( pVideoProfile ),
+ reinterpret_cast<VkVideoCapabilitiesKHR *>( pCapabilities ) ) );
+ }
+
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::VideoCapabilitiesKHR>::type
+ PhysicalDevice::getVideoCapabilitiesKHR( const VideoProfileKHR & videoProfile, Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::VideoCapabilitiesKHR capabilities;
+ Result result = static_cast<Result>(
+ d.vkGetPhysicalDeviceVideoCapabilitiesKHR( m_physicalDevice,
+ reinterpret_cast<const VkVideoProfileKHR *>( &videoProfile ),
+ reinterpret_cast<VkVideoCapabilitiesKHR *>( &capabilities ) ) );
+ return createResultValue(
+ result, capabilities, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getVideoCapabilitiesKHR" );
+ }
+
+ template <typename X, typename Y, typename... Z, typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<StructureChain<X, Y, Z...>>::type
+ PhysicalDevice::getVideoCapabilitiesKHR( const VideoProfileKHR & videoProfile, Dispatch const & d ) const
+ {
+ StructureChain<X, Y, Z...> structureChain;
+ VULKAN_HPP_NAMESPACE::VideoCapabilitiesKHR & capabilities =
+ structureChain.template get<VULKAN_HPP_NAMESPACE::VideoCapabilitiesKHR>();
+ Result result = static_cast<Result>(
+ d.vkGetPhysicalDeviceVideoCapabilitiesKHR( m_physicalDevice,
+ reinterpret_cast<const VkVideoProfileKHR *>( &videoProfile ),
+ reinterpret_cast<VkVideoCapabilitiesKHR *>( &capabilities ) ) );
+ return createResultValue(
+ result, structureChain, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getVideoCapabilitiesKHR" );
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result PhysicalDevice::getVideoFormatPropertiesKHR(
+ const VULKAN_HPP_NAMESPACE::PhysicalDeviceVideoFormatInfoKHR * pVideoFormatInfo,
+ uint32_t * pVideoFormatPropertyCount,
+ VULKAN_HPP_NAMESPACE::VideoFormatPropertiesKHR * pVideoFormatProperties,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkGetPhysicalDeviceVideoFormatPropertiesKHR(
+ m_physicalDevice,
+ reinterpret_cast<const VkPhysicalDeviceVideoFormatInfoKHR *>( pVideoFormatInfo ),
+ pVideoFormatPropertyCount,
+ reinterpret_cast<VkVideoFormatPropertiesKHR *>( pVideoFormatProperties ) ) );
+ }
+
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename VideoFormatPropertiesKHRAllocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<VideoFormatPropertiesKHR, VideoFormatPropertiesKHRAllocator>>::type
+ PhysicalDevice::getVideoFormatPropertiesKHR( const PhysicalDeviceVideoFormatInfoKHR & videoFormatInfo,
+ Dispatch const & d ) const
+ {
+ std::vector<VideoFormatPropertiesKHR, VideoFormatPropertiesKHRAllocator> videoFormatProperties;
+ uint32_t videoFormatPropertyCount;
+ Result result;
+ do
+ {
+ result = static_cast<Result>( d.vkGetPhysicalDeviceVideoFormatPropertiesKHR(
+ m_physicalDevice,
+ reinterpret_cast<const VkPhysicalDeviceVideoFormatInfoKHR *>( &videoFormatInfo ),
+ &videoFormatPropertyCount,
+ nullptr ) );
+ if ( ( result == Result::eSuccess ) && videoFormatPropertyCount )
+ {
+ videoFormatProperties.resize( videoFormatPropertyCount );
+ result = static_cast<Result>( d.vkGetPhysicalDeviceVideoFormatPropertiesKHR(
+ m_physicalDevice,
+ reinterpret_cast<const VkPhysicalDeviceVideoFormatInfoKHR *>( &videoFormatInfo ),
+ &videoFormatPropertyCount,
+ reinterpret_cast<VkVideoFormatPropertiesKHR *>( videoFormatProperties.data() ) ) );
+ VULKAN_HPP_ASSERT( videoFormatPropertyCount <= videoFormatProperties.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( videoFormatPropertyCount < videoFormatProperties.size() ) )
+ {
+ videoFormatProperties.resize( videoFormatPropertyCount );
+ }
+ return createResultValue(
+ result, videoFormatProperties, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getVideoFormatPropertiesKHR" );
+ }
+
+ template <typename VideoFormatPropertiesKHRAllocator,
+ typename Dispatch,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, VideoFormatPropertiesKHR>::value, int>::type>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<VideoFormatPropertiesKHR, VideoFormatPropertiesKHRAllocator>>::type
+ PhysicalDevice::getVideoFormatPropertiesKHR( const PhysicalDeviceVideoFormatInfoKHR & videoFormatInfo,
+ VideoFormatPropertiesKHRAllocator & videoFormatPropertiesKHRAllocator,
+ Dispatch const & d ) const
+ {
+ std::vector<VideoFormatPropertiesKHR, VideoFormatPropertiesKHRAllocator> videoFormatProperties(
+ videoFormatPropertiesKHRAllocator );
+ uint32_t videoFormatPropertyCount;
+ Result result;
+ do
+ {
+ result = static_cast<Result>( d.vkGetPhysicalDeviceVideoFormatPropertiesKHR(
+ m_physicalDevice,
+ reinterpret_cast<const VkPhysicalDeviceVideoFormatInfoKHR *>( &videoFormatInfo ),
+ &videoFormatPropertyCount,
+ nullptr ) );
+ if ( ( result == Result::eSuccess ) && videoFormatPropertyCount )
+ {
+ videoFormatProperties.resize( videoFormatPropertyCount );
+ result = static_cast<Result>( d.vkGetPhysicalDeviceVideoFormatPropertiesKHR(
+ m_physicalDevice,
+ reinterpret_cast<const VkPhysicalDeviceVideoFormatInfoKHR *>( &videoFormatInfo ),
+ &videoFormatPropertyCount,
+ reinterpret_cast<VkVideoFormatPropertiesKHR *>( videoFormatProperties.data() ) ) );
+ VULKAN_HPP_ASSERT( videoFormatPropertyCount <= videoFormatProperties.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( videoFormatPropertyCount < videoFormatProperties.size() ) )
+ {
+ videoFormatProperties.resize( videoFormatPropertyCount );
+ }
+ return createResultValue(
+ result, videoFormatProperties, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getVideoFormatPropertiesKHR" );
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::createVideoSessionKHR( const VULKAN_HPP_NAMESPACE::VideoSessionCreateInfoKHR * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::VideoSessionKHR * pVideoSession,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkCreateVideoSessionKHR( m_device,
+ reinterpret_cast<const VkVideoSessionCreateInfoKHR *>( pCreateInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkVideoSessionKHR *>( pVideoSession ) ) );
+ }
+
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::VideoSessionKHR>::type
+ Device::createVideoSessionKHR( const VideoSessionCreateInfoKHR & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::VideoSessionKHR videoSession;
+ Result result = static_cast<Result>(
+ d.vkCreateVideoSessionKHR( m_device,
+ reinterpret_cast<const VkVideoSessionCreateInfoKHR *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkVideoSessionKHR *>( &videoSession ) ) );
+ return createResultValue( result, videoSession, VULKAN_HPP_NAMESPACE_STRING "::Device::createVideoSessionKHR" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::VideoSessionKHR, Dispatch>>::type
+ Device::createVideoSessionKHRUnique( const VideoSessionCreateInfoKHR & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::VideoSessionKHR videoSession;
+ Result result = static_cast<Result>(
+ d.vkCreateVideoSessionKHR( m_device,
+ reinterpret_cast<const VkVideoSessionCreateInfoKHR *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkVideoSessionKHR *>( &videoSession ) ) );
+ ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::VideoSessionKHR, Dispatch>(
+ result, videoSession, VULKAN_HPP_NAMESPACE_STRING "::Device::createVideoSessionKHRUnique", deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroyVideoSessionKHR( VULKAN_HPP_NAMESPACE::VideoSessionKHR videoSession,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyVideoSessionKHR( m_device,
+ static_cast<VkVideoSessionKHR>( videoSession ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroyVideoSessionKHR( VULKAN_HPP_NAMESPACE::VideoSessionKHR videoSession,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyVideoSessionKHR( m_device,
+ static_cast<VkVideoSessionKHR>( videoSession ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::VideoSessionKHR videoSession,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyVideoSessionKHR( m_device,
+ static_cast<VkVideoSessionKHR>( videoSession ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::VideoSessionKHR videoSession,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyVideoSessionKHR( m_device,
+ static_cast<VkVideoSessionKHR>( videoSession ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getVideoSessionMemoryRequirementsKHR(
+ VULKAN_HPP_NAMESPACE::VideoSessionKHR videoSession,
+ uint32_t * pVideoSessionMemoryRequirementsCount,
+ VULKAN_HPP_NAMESPACE::VideoGetMemoryPropertiesKHR * pVideoSessionMemoryRequirements,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkGetVideoSessionMemoryRequirementsKHR(
+ m_device,
+ static_cast<VkVideoSessionKHR>( videoSession ),
+ pVideoSessionMemoryRequirementsCount,
+ reinterpret_cast<VkVideoGetMemoryPropertiesKHR *>( pVideoSessionMemoryRequirements ) ) );
+ }
+
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename VideoGetMemoryPropertiesKHRAllocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<VideoGetMemoryPropertiesKHR, VideoGetMemoryPropertiesKHRAllocator>>::type
+ Device::getVideoSessionMemoryRequirementsKHR( VULKAN_HPP_NAMESPACE::VideoSessionKHR videoSession,
+ Dispatch const & d ) const
+ {
+ std::vector<VideoGetMemoryPropertiesKHR, VideoGetMemoryPropertiesKHRAllocator> videoSessionMemoryRequirements;
+ uint32_t videoSessionMemoryRequirementsCount;
+ Result result;
+ do
+ {
+ result = static_cast<Result>( d.vkGetVideoSessionMemoryRequirementsKHR(
+ m_device, static_cast<VkVideoSessionKHR>( videoSession ), &videoSessionMemoryRequirementsCount, nullptr ) );
+ if ( ( result == Result::eSuccess ) && videoSessionMemoryRequirementsCount )
+ {
+ videoSessionMemoryRequirements.resize( videoSessionMemoryRequirementsCount );
+ result = static_cast<Result>( d.vkGetVideoSessionMemoryRequirementsKHR(
+ m_device,
+ static_cast<VkVideoSessionKHR>( videoSession ),
+ &videoSessionMemoryRequirementsCount,
+ reinterpret_cast<VkVideoGetMemoryPropertiesKHR *>( videoSessionMemoryRequirements.data() ) ) );
+ VULKAN_HPP_ASSERT( videoSessionMemoryRequirementsCount <= videoSessionMemoryRequirements.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) &&
+ ( videoSessionMemoryRequirementsCount < videoSessionMemoryRequirements.size() ) )
+ {
+ videoSessionMemoryRequirements.resize( videoSessionMemoryRequirementsCount );
+ }
+ return createResultValue( result,
+ videoSessionMemoryRequirements,
+ VULKAN_HPP_NAMESPACE_STRING "::Device::getVideoSessionMemoryRequirementsKHR" );
+ }
+
+ template <
+ typename VideoGetMemoryPropertiesKHRAllocator,
+ typename Dispatch,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, VideoGetMemoryPropertiesKHR>::value, int>::type>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<VideoGetMemoryPropertiesKHR, VideoGetMemoryPropertiesKHRAllocator>>::type
+ Device::getVideoSessionMemoryRequirementsKHR(
+ VULKAN_HPP_NAMESPACE::VideoSessionKHR videoSession,
+ VideoGetMemoryPropertiesKHRAllocator & videoGetMemoryPropertiesKHRAllocator,
+ Dispatch const & d ) const
+ {
+ std::vector<VideoGetMemoryPropertiesKHR, VideoGetMemoryPropertiesKHRAllocator> videoSessionMemoryRequirements(
+ videoGetMemoryPropertiesKHRAllocator );
+ uint32_t videoSessionMemoryRequirementsCount;
+ Result result;
+ do
+ {
+ result = static_cast<Result>( d.vkGetVideoSessionMemoryRequirementsKHR(
+ m_device, static_cast<VkVideoSessionKHR>( videoSession ), &videoSessionMemoryRequirementsCount, nullptr ) );
+ if ( ( result == Result::eSuccess ) && videoSessionMemoryRequirementsCount )
+ {
+ videoSessionMemoryRequirements.resize( videoSessionMemoryRequirementsCount );
+ result = static_cast<Result>( d.vkGetVideoSessionMemoryRequirementsKHR(
+ m_device,
+ static_cast<VkVideoSessionKHR>( videoSession ),
+ &videoSessionMemoryRequirementsCount,
+ reinterpret_cast<VkVideoGetMemoryPropertiesKHR *>( videoSessionMemoryRequirements.data() ) ) );
+ VULKAN_HPP_ASSERT( videoSessionMemoryRequirementsCount <= videoSessionMemoryRequirements.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) &&
+ ( videoSessionMemoryRequirementsCount < videoSessionMemoryRequirements.size() ) )
+ {
+ videoSessionMemoryRequirements.resize( videoSessionMemoryRequirementsCount );
+ }
+ return createResultValue( result,
+ videoSessionMemoryRequirements,
+ VULKAN_HPP_NAMESPACE_STRING "::Device::getVideoSessionMemoryRequirementsKHR" );
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::bindVideoSessionMemoryKHR( VULKAN_HPP_NAMESPACE::VideoSessionKHR videoSession,
+ uint32_t videoSessionBindMemoryCount,
+ const VULKAN_HPP_NAMESPACE::VideoBindMemoryKHR * pVideoSessionBindMemories,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkBindVideoSessionMemoryKHR( m_device,
+ static_cast<VkVideoSessionKHR>( videoSession ),
+ videoSessionBindMemoryCount,
+ reinterpret_cast<const VkVideoBindMemoryKHR *>( pVideoSessionBindMemories ) ) );
+ }
+
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type
+ Device::bindVideoSessionMemoryKHR(
+ VULKAN_HPP_NAMESPACE::VideoSessionKHR videoSession,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::VideoBindMemoryKHR> const & videoSessionBindMemories,
+ Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>( d.vkBindVideoSessionMemoryKHR(
+ m_device,
+ static_cast<VkVideoSessionKHR>( videoSession ),
+ videoSessionBindMemories.size(),
+ reinterpret_cast<const VkVideoBindMemoryKHR *>( videoSessionBindMemories.data() ) ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::bindVideoSessionMemoryKHR" );
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::createVideoSessionParametersKHR(
+ const VULKAN_HPP_NAMESPACE::VideoSessionParametersCreateInfoKHR * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::VideoSessionParametersKHR * pVideoSessionParameters,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkCreateVideoSessionParametersKHR(
+ m_device,
+ reinterpret_cast<const VkVideoSessionParametersCreateInfoKHR *>( pCreateInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkVideoSessionParametersKHR *>( pVideoSessionParameters ) ) );
+ }
+
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::VideoSessionParametersKHR>::type
+ Device::createVideoSessionParametersKHR( const VideoSessionParametersCreateInfoKHR & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::VideoSessionParametersKHR videoSessionParameters;
+ Result result = static_cast<Result>( d.vkCreateVideoSessionParametersKHR(
+ m_device,
+ reinterpret_cast<const VkVideoSessionParametersCreateInfoKHR *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkVideoSessionParametersKHR *>( &videoSessionParameters ) ) );
+ return createResultValue(
+ result, videoSessionParameters, VULKAN_HPP_NAMESPACE_STRING "::Device::createVideoSessionParametersKHR" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::VideoSessionParametersKHR, Dispatch>>::type
+ Device::createVideoSessionParametersKHRUnique( const VideoSessionParametersCreateInfoKHR & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::VideoSessionParametersKHR videoSessionParameters;
+ Result result = static_cast<Result>( d.vkCreateVideoSessionParametersKHR(
+ m_device,
+ reinterpret_cast<const VkVideoSessionParametersCreateInfoKHR *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkVideoSessionParametersKHR *>( &videoSessionParameters ) ) );
+ ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::VideoSessionParametersKHR, Dispatch>(
+ result,
+ videoSessionParameters,
+ VULKAN_HPP_NAMESPACE_STRING "::Device::createVideoSessionParametersKHRUnique",
+ deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::updateVideoSessionParametersKHR(
+ VULKAN_HPP_NAMESPACE::VideoSessionParametersKHR videoSessionParameters,
+ const VULKAN_HPP_NAMESPACE::VideoSessionParametersUpdateInfoKHR * pUpdateInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkUpdateVideoSessionParametersKHR(
+ m_device,
+ static_cast<VkVideoSessionParametersKHR>( videoSessionParameters ),
+ reinterpret_cast<const VkVideoSessionParametersUpdateInfoKHR *>( pUpdateInfo ) ) );
+ }
+
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type
+ Device::updateVideoSessionParametersKHR( VULKAN_HPP_NAMESPACE::VideoSessionParametersKHR videoSessionParameters,
+ const VideoSessionParametersUpdateInfoKHR & updateInfo,
+ Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>( d.vkUpdateVideoSessionParametersKHR(
+ m_device,
+ static_cast<VkVideoSessionParametersKHR>( videoSessionParameters ),
+ reinterpret_cast<const VkVideoSessionParametersUpdateInfoKHR *>( &updateInfo ) ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::updateVideoSessionParametersKHR" );
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ Device::destroyVideoSessionParametersKHR( VULKAN_HPP_NAMESPACE::VideoSessionParametersKHR videoSessionParameters,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyVideoSessionParametersKHR( m_device,
+ static_cast<VkVideoSessionParametersKHR>( videoSessionParameters ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ Device::destroyVideoSessionParametersKHR( VULKAN_HPP_NAMESPACE::VideoSessionParametersKHR videoSessionParameters,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyVideoSessionParametersKHR(
+ m_device,
+ static_cast<VkVideoSessionParametersKHR>( videoSessionParameters ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::VideoSessionParametersKHR videoSessionParameters,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyVideoSessionParametersKHR( m_device,
+ static_cast<VkVideoSessionParametersKHR>( videoSessionParameters ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::VideoSessionParametersKHR videoSessionParameters,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyVideoSessionParametersKHR(
+ m_device,
+ static_cast<VkVideoSessionParametersKHR>( videoSessionParameters ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::beginVideoCodingKHR( const VULKAN_HPP_NAMESPACE::VideoBeginCodingInfoKHR * pBeginInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdBeginVideoCodingKHR( m_commandBuffer, reinterpret_cast<const VkVideoBeginCodingInfoKHR *>( pBeginInfo ) );
+ }
+
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::beginVideoCodingKHR( const VideoBeginCodingInfoKHR & beginInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdBeginVideoCodingKHR( m_commandBuffer, reinterpret_cast<const VkVideoBeginCodingInfoKHR *>( &beginInfo ) );
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::endVideoCodingKHR( const VULKAN_HPP_NAMESPACE::VideoEndCodingInfoKHR * pEndCodingInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdEndVideoCodingKHR( m_commandBuffer, reinterpret_cast<const VkVideoEndCodingInfoKHR *>( pEndCodingInfo ) );
+ }
+
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::endVideoCodingKHR( const VideoEndCodingInfoKHR & endCodingInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdEndVideoCodingKHR( m_commandBuffer, reinterpret_cast<const VkVideoEndCodingInfoKHR *>( &endCodingInfo ) );
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::controlVideoCodingKHR( const VULKAN_HPP_NAMESPACE::VideoCodingControlInfoKHR * pCodingControlInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdControlVideoCodingKHR( m_commandBuffer,
+ reinterpret_cast<const VkVideoCodingControlInfoKHR *>( pCodingControlInfo ) );
+ }
+
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::controlVideoCodingKHR( const VideoCodingControlInfoKHR & codingControlInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdControlVideoCodingKHR( m_commandBuffer,
+ reinterpret_cast<const VkVideoCodingControlInfoKHR *>( &codingControlInfo ) );
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ //=== VK_KHR_video_decode_queue ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::decodeVideoKHR( const VULKAN_HPP_NAMESPACE::VideoDecodeInfoKHR * pFrameInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdDecodeVideoKHR( m_commandBuffer, reinterpret_cast<const VkVideoDecodeInfoKHR *>( pFrameInfo ) );
+ }
+
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::decodeVideoKHR( const VideoDecodeInfoKHR & frameInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdDecodeVideoKHR( m_commandBuffer, reinterpret_cast<const VkVideoDecodeInfoKHR *>( &frameInfo ) );
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+ //=== VK_EXT_transform_feedback ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::bindTransformFeedbackBuffersEXT( uint32_t firstBinding,
+ uint32_t bindingCount,
+ const VULKAN_HPP_NAMESPACE::Buffer * pBuffers,
+ const VULKAN_HPP_NAMESPACE::DeviceSize * pOffsets,
+ const VULKAN_HPP_NAMESPACE::DeviceSize * pSizes,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdBindTransformFeedbackBuffersEXT( m_commandBuffer,
+ firstBinding,
+ bindingCount,
+ reinterpret_cast<const VkBuffer *>( pBuffers ),
+ reinterpret_cast<const VkDeviceSize *>( pOffsets ),
+ reinterpret_cast<const VkDeviceSize *>( pSizes ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::bindTransformFeedbackBuffersEXT( uint32_t firstBinding,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::Buffer> const & buffers,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::DeviceSize> const & offsets,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::DeviceSize> const & sizes,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS
+ {
+# ifdef VULKAN_HPP_NO_EXCEPTIONS
+ VULKAN_HPP_ASSERT( buffers.size() == offsets.size() );
+ VULKAN_HPP_ASSERT( sizes.empty() || buffers.size() == sizes.size() );
+# else
+ if ( buffers.size() != offsets.size() )
+ {
+ throw LogicError( VULKAN_HPP_NAMESPACE_STRING
+ "::CommandBuffer::bindTransformFeedbackBuffersEXT: buffers.size() != offsets.size()" );
+ }
+ if ( !sizes.empty() && buffers.size() != sizes.size() )
+ {
+ throw LogicError( VULKAN_HPP_NAMESPACE_STRING
+ "::CommandBuffer::bindTransformFeedbackBuffersEXT: buffers.size() != sizes.size()" );
+ }
+# endif /*VULKAN_HPP_NO_EXCEPTIONS*/
+
+ d.vkCmdBindTransformFeedbackBuffersEXT( m_commandBuffer,
+ firstBinding,
+ buffers.size(),
+ reinterpret_cast<const VkBuffer *>( buffers.data() ),
+ reinterpret_cast<const VkDeviceSize *>( offsets.data() ),
+ reinterpret_cast<const VkDeviceSize *>( sizes.data() ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::beginTransformFeedbackEXT( uint32_t firstCounterBuffer,
+ uint32_t counterBufferCount,
+ const VULKAN_HPP_NAMESPACE::Buffer * pCounterBuffers,
+ const VULKAN_HPP_NAMESPACE::DeviceSize * pCounterBufferOffsets,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdBeginTransformFeedbackEXT( m_commandBuffer,
+ firstCounterBuffer,
+ counterBufferCount,
+ reinterpret_cast<const VkBuffer *>( pCounterBuffers ),
+ reinterpret_cast<const VkDeviceSize *>( pCounterBufferOffsets ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::beginTransformFeedbackEXT(
+ uint32_t firstCounterBuffer,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::Buffer> const & counterBuffers,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::DeviceSize> const & counterBufferOffsets,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS
+ {
+# ifdef VULKAN_HPP_NO_EXCEPTIONS
+ VULKAN_HPP_ASSERT( counterBufferOffsets.empty() || counterBuffers.size() == counterBufferOffsets.size() );
+# else
+ if ( !counterBufferOffsets.empty() && counterBuffers.size() != counterBufferOffsets.size() )
+ {
+ throw LogicError(
+ VULKAN_HPP_NAMESPACE_STRING
+ "::CommandBuffer::beginTransformFeedbackEXT: counterBuffers.size() != counterBufferOffsets.size()" );
+ }
+# endif /*VULKAN_HPP_NO_EXCEPTIONS*/
+
+ d.vkCmdBeginTransformFeedbackEXT( m_commandBuffer,
+ firstCounterBuffer,
+ counterBuffers.size(),
+ reinterpret_cast<const VkBuffer *>( counterBuffers.data() ),
+ reinterpret_cast<const VkDeviceSize *>( counterBufferOffsets.data() ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::endTransformFeedbackEXT( uint32_t firstCounterBuffer,
+ uint32_t counterBufferCount,
+ const VULKAN_HPP_NAMESPACE::Buffer * pCounterBuffers,
+ const VULKAN_HPP_NAMESPACE::DeviceSize * pCounterBufferOffsets,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdEndTransformFeedbackEXT( m_commandBuffer,
+ firstCounterBuffer,
+ counterBufferCount,
+ reinterpret_cast<const VkBuffer *>( pCounterBuffers ),
+ reinterpret_cast<const VkDeviceSize *>( pCounterBufferOffsets ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::endTransformFeedbackEXT(
+ uint32_t firstCounterBuffer,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::Buffer> const & counterBuffers,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::DeviceSize> const & counterBufferOffsets,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS
+ {
+# ifdef VULKAN_HPP_NO_EXCEPTIONS
+ VULKAN_HPP_ASSERT( counterBufferOffsets.empty() || counterBuffers.size() == counterBufferOffsets.size() );
+# else
+ if ( !counterBufferOffsets.empty() && counterBuffers.size() != counterBufferOffsets.size() )
+ {
+ throw LogicError(
+ VULKAN_HPP_NAMESPACE_STRING
+ "::CommandBuffer::endTransformFeedbackEXT: counterBuffers.size() != counterBufferOffsets.size()" );
+ }
+# endif /*VULKAN_HPP_NO_EXCEPTIONS*/
+
+ d.vkCmdEndTransformFeedbackEXT( m_commandBuffer,
+ firstCounterBuffer,
+ counterBuffers.size(),
+ reinterpret_cast<const VkBuffer *>( counterBuffers.data() ),
+ reinterpret_cast<const VkDeviceSize *>( counterBufferOffsets.data() ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::beginQueryIndexedEXT( VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ uint32_t query,
+ VULKAN_HPP_NAMESPACE::QueryControlFlags flags,
+ uint32_t index,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdBeginQueryIndexedEXT(
+ m_commandBuffer, static_cast<VkQueryPool>( queryPool ), query, static_cast<VkQueryControlFlags>( flags ), index );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::endQueryIndexedEXT( VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ uint32_t query,
+ uint32_t index,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdEndQueryIndexedEXT( m_commandBuffer, static_cast<VkQueryPool>( queryPool ), query, index );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::drawIndirectByteCountEXT( uint32_t instanceCount,
+ uint32_t firstInstance,
+ VULKAN_HPP_NAMESPACE::Buffer counterBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize counterBufferOffset,
+ uint32_t counterOffset,
+ uint32_t vertexStride,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdDrawIndirectByteCountEXT( m_commandBuffer,
+ instanceCount,
+ firstInstance,
+ static_cast<VkBuffer>( counterBuffer ),
+ static_cast<VkDeviceSize>( counterBufferOffset ),
+ counterOffset,
+ vertexStride );
+ }
+
+ //=== VK_NVX_binary_import ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::createCuModuleNVX( const VULKAN_HPP_NAMESPACE::CuModuleCreateInfoNVX * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::CuModuleNVX * pModule,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkCreateCuModuleNVX( m_device,
+ reinterpret_cast<const VkCuModuleCreateInfoNVX *>( pCreateInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkCuModuleNVX *>( pModule ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::CuModuleNVX>::type
+ Device::createCuModuleNVX( const CuModuleCreateInfoNVX & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::CuModuleNVX module;
+ Result result = static_cast<Result>(
+ d.vkCreateCuModuleNVX( m_device,
+ reinterpret_cast<const VkCuModuleCreateInfoNVX *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkCuModuleNVX *>( &module ) ) );
+ return createResultValue( result, module, VULKAN_HPP_NAMESPACE_STRING "::Device::createCuModuleNVX" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::CuModuleNVX, Dispatch>>::type
+ Device::createCuModuleNVXUnique( const CuModuleCreateInfoNVX & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::CuModuleNVX module;
+ Result result = static_cast<Result>(
+ d.vkCreateCuModuleNVX( m_device,
+ reinterpret_cast<const VkCuModuleCreateInfoNVX *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkCuModuleNVX *>( &module ) ) );
+ ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::CuModuleNVX, Dispatch>(
+ result, module, VULKAN_HPP_NAMESPACE_STRING "::Device::createCuModuleNVXUnique", deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::createCuFunctionNVX( const VULKAN_HPP_NAMESPACE::CuFunctionCreateInfoNVX * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::CuFunctionNVX * pFunction,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkCreateCuFunctionNVX( m_device,
+ reinterpret_cast<const VkCuFunctionCreateInfoNVX *>( pCreateInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkCuFunctionNVX *>( pFunction ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::CuFunctionNVX>::type
+ Device::createCuFunctionNVX( const CuFunctionCreateInfoNVX & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::CuFunctionNVX function;
+ Result result = static_cast<Result>(
+ d.vkCreateCuFunctionNVX( m_device,
+ reinterpret_cast<const VkCuFunctionCreateInfoNVX *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkCuFunctionNVX *>( &function ) ) );
+ return createResultValue( result, function, VULKAN_HPP_NAMESPACE_STRING "::Device::createCuFunctionNVX" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::CuFunctionNVX, Dispatch>>::type
+ Device::createCuFunctionNVXUnique( const CuFunctionCreateInfoNVX & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::CuFunctionNVX function;
+ Result result = static_cast<Result>(
+ d.vkCreateCuFunctionNVX( m_device,
+ reinterpret_cast<const VkCuFunctionCreateInfoNVX *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkCuFunctionNVX *>( &function ) ) );
+ ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::CuFunctionNVX, Dispatch>(
+ result, function, VULKAN_HPP_NAMESPACE_STRING "::Device::createCuFunctionNVXUnique", deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroyCuModuleNVX( VULKAN_HPP_NAMESPACE::CuModuleNVX module,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyCuModuleNVX(
+ m_device, static_cast<VkCuModuleNVX>( module ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroyCuModuleNVX( VULKAN_HPP_NAMESPACE::CuModuleNVX module,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyCuModuleNVX( m_device,
+ static_cast<VkCuModuleNVX>( module ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::CuModuleNVX module,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyCuModuleNVX(
+ m_device, static_cast<VkCuModuleNVX>( module ), reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::CuModuleNVX module,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyCuModuleNVX( m_device,
+ static_cast<VkCuModuleNVX>( module ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroyCuFunctionNVX( VULKAN_HPP_NAMESPACE::CuFunctionNVX function,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyCuFunctionNVX( m_device,
+ static_cast<VkCuFunctionNVX>( function ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroyCuFunctionNVX( VULKAN_HPP_NAMESPACE::CuFunctionNVX function,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyCuFunctionNVX( m_device,
+ static_cast<VkCuFunctionNVX>( function ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::CuFunctionNVX function,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyCuFunctionNVX( m_device,
+ static_cast<VkCuFunctionNVX>( function ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::CuFunctionNVX function,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyCuFunctionNVX( m_device,
+ static_cast<VkCuFunctionNVX>( function ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::cuLaunchKernelNVX( const VULKAN_HPP_NAMESPACE::CuLaunchInfoNVX * pLaunchInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdCuLaunchKernelNVX( m_commandBuffer, reinterpret_cast<const VkCuLaunchInfoNVX *>( pLaunchInfo ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::cuLaunchKernelNVX( const CuLaunchInfoNVX & launchInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdCuLaunchKernelNVX( m_commandBuffer, reinterpret_cast<const VkCuLaunchInfoNVX *>( &launchInfo ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_NVX_image_view_handle ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE uint32_t Device::getImageViewHandleNVX( const VULKAN_HPP_NAMESPACE::ImageViewHandleInfoNVX * pInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return d.vkGetImageViewHandleNVX( m_device, reinterpret_cast<const VkImageViewHandleInfoNVX *>( pInfo ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE uint32_t Device::getImageViewHandleNVX( const ImageViewHandleInfoNVX & info,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return d.vkGetImageViewHandleNVX( m_device, reinterpret_cast<const VkImageViewHandleInfoNVX *>( &info ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::getImageViewAddressNVX( VULKAN_HPP_NAMESPACE::ImageView imageView,
+ VULKAN_HPP_NAMESPACE::ImageViewAddressPropertiesNVX * pProperties,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkGetImageViewAddressNVX( m_device,
+ static_cast<VkImageView>( imageView ),
+ reinterpret_cast<VkImageViewAddressPropertiesNVX *>( pProperties ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::ImageViewAddressPropertiesNVX>::type
+ Device::getImageViewAddressNVX( VULKAN_HPP_NAMESPACE::ImageView imageView, Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::ImageViewAddressPropertiesNVX properties;
+ Result result = static_cast<Result>(
+ d.vkGetImageViewAddressNVX( m_device,
+ static_cast<VkImageView>( imageView ),
+ reinterpret_cast<VkImageViewAddressPropertiesNVX *>( &properties ) ) );
+ return createResultValue( result, properties, VULKAN_HPP_NAMESPACE_STRING "::Device::getImageViewAddressNVX" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_AMD_draw_indirect_count ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::drawIndirectCountAMD( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize offset,
+ VULKAN_HPP_NAMESPACE::Buffer countBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize countBufferOffset,
+ uint32_t maxDrawCount,
+ uint32_t stride,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdDrawIndirectCountAMD( m_commandBuffer,
+ static_cast<VkBuffer>( buffer ),
+ static_cast<VkDeviceSize>( offset ),
+ static_cast<VkBuffer>( countBuffer ),
+ static_cast<VkDeviceSize>( countBufferOffset ),
+ maxDrawCount,
+ stride );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::drawIndexedIndirectCountAMD( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize offset,
+ VULKAN_HPP_NAMESPACE::Buffer countBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize countBufferOffset,
+ uint32_t maxDrawCount,
+ uint32_t stride,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdDrawIndexedIndirectCountAMD( m_commandBuffer,
+ static_cast<VkBuffer>( buffer ),
+ static_cast<VkDeviceSize>( offset ),
+ static_cast<VkBuffer>( countBuffer ),
+ static_cast<VkDeviceSize>( countBufferOffset ),
+ maxDrawCount,
+ stride );
+ }
+
+ //=== VK_AMD_shader_info ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::getShaderInfoAMD( VULKAN_HPP_NAMESPACE::Pipeline pipeline,
+ VULKAN_HPP_NAMESPACE::ShaderStageFlagBits shaderStage,
+ VULKAN_HPP_NAMESPACE::ShaderInfoTypeAMD infoType,
+ size_t * pInfoSize,
+ void * pInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkGetShaderInfoAMD( m_device,
+ static_cast<VkPipeline>( pipeline ),
+ static_cast<VkShaderStageFlagBits>( shaderStage ),
+ static_cast<VkShaderInfoTypeAMD>( infoType ),
+ pInfoSize,
+ pInfo ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Uint8_tAllocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<uint8_t, Uint8_tAllocator>>::type
+ Device::getShaderInfoAMD( VULKAN_HPP_NAMESPACE::Pipeline pipeline,
+ VULKAN_HPP_NAMESPACE::ShaderStageFlagBits shaderStage,
+ VULKAN_HPP_NAMESPACE::ShaderInfoTypeAMD infoType,
+ Dispatch const & d ) const
+ {
+ std::vector<uint8_t, Uint8_tAllocator> info;
+ size_t infoSize;
+ Result result;
+ do
+ {
+ result = static_cast<Result>( d.vkGetShaderInfoAMD( m_device,
+ static_cast<VkPipeline>( pipeline ),
+ static_cast<VkShaderStageFlagBits>( shaderStage ),
+ static_cast<VkShaderInfoTypeAMD>( infoType ),
+ &infoSize,
+ nullptr ) );
+ if ( ( result == Result::eSuccess ) && infoSize )
+ {
+ info.resize( infoSize );
+ result = static_cast<Result>( d.vkGetShaderInfoAMD( m_device,
+ static_cast<VkPipeline>( pipeline ),
+ static_cast<VkShaderStageFlagBits>( shaderStage ),
+ static_cast<VkShaderInfoTypeAMD>( infoType ),
+ &infoSize,
+ reinterpret_cast<void *>( info.data() ) ) );
+ VULKAN_HPP_ASSERT( infoSize <= info.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( infoSize < info.size() ) )
+ {
+ info.resize( infoSize );
+ }
+ return createResultValue( result, info, VULKAN_HPP_NAMESPACE_STRING "::Device::getShaderInfoAMD" );
+ }
+
+ template <typename Uint8_tAllocator,
+ typename Dispatch,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, uint8_t>::value, int>::type>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<uint8_t, Uint8_tAllocator>>::type
+ Device::getShaderInfoAMD( VULKAN_HPP_NAMESPACE::Pipeline pipeline,
+ VULKAN_HPP_NAMESPACE::ShaderStageFlagBits shaderStage,
+ VULKAN_HPP_NAMESPACE::ShaderInfoTypeAMD infoType,
+ Uint8_tAllocator & uint8_tAllocator,
+ Dispatch const & d ) const
+ {
+ std::vector<uint8_t, Uint8_tAllocator> info( uint8_tAllocator );
+ size_t infoSize;
+ Result result;
+ do
+ {
+ result = static_cast<Result>( d.vkGetShaderInfoAMD( m_device,
+ static_cast<VkPipeline>( pipeline ),
+ static_cast<VkShaderStageFlagBits>( shaderStage ),
+ static_cast<VkShaderInfoTypeAMD>( infoType ),
+ &infoSize,
+ nullptr ) );
+ if ( ( result == Result::eSuccess ) && infoSize )
+ {
+ info.resize( infoSize );
+ result = static_cast<Result>( d.vkGetShaderInfoAMD( m_device,
+ static_cast<VkPipeline>( pipeline ),
+ static_cast<VkShaderStageFlagBits>( shaderStage ),
+ static_cast<VkShaderInfoTypeAMD>( infoType ),
+ &infoSize,
+ reinterpret_cast<void *>( info.data() ) ) );
+ VULKAN_HPP_ASSERT( infoSize <= info.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( infoSize < info.size() ) )
+ {
+ info.resize( infoSize );
+ }
+ return createResultValue( result, info, VULKAN_HPP_NAMESPACE_STRING "::Device::getShaderInfoAMD" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#if defined( VK_USE_PLATFORM_GGP )
+ //=== VK_GGP_stream_descriptor_surface ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Instance::createStreamDescriptorSurfaceGGP(
+ const VULKAN_HPP_NAMESPACE::StreamDescriptorSurfaceCreateInfoGGP * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::SurfaceKHR * pSurface,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkCreateStreamDescriptorSurfaceGGP(
+ m_instance,
+ reinterpret_cast<const VkStreamDescriptorSurfaceCreateInfoGGP *>( pCreateInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkSurfaceKHR *>( pSurface ) ) );
+ }
+
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceKHR>::type
+ Instance::createStreamDescriptorSurfaceGGP( const StreamDescriptorSurfaceCreateInfoGGP & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::SurfaceKHR surface;
+ Result result = static_cast<Result>( d.vkCreateStreamDescriptorSurfaceGGP(
+ m_instance,
+ reinterpret_cast<const VkStreamDescriptorSurfaceCreateInfoGGP *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkSurfaceKHR *>( &surface ) ) );
+ return createResultValue(
+ result, surface, VULKAN_HPP_NAMESPACE_STRING "::Instance::createStreamDescriptorSurfaceGGP" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>>::type
+ Instance::createStreamDescriptorSurfaceGGPUnique( const StreamDescriptorSurfaceCreateInfoGGP & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::SurfaceKHR surface;
+ Result result = static_cast<Result>( d.vkCreateStreamDescriptorSurfaceGGP(
+ m_instance,
+ reinterpret_cast<const VkStreamDescriptorSurfaceCreateInfoGGP *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkSurfaceKHR *>( &surface ) ) );
+ ObjectDestroy<Instance, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>(
+ result, surface, VULKAN_HPP_NAMESPACE_STRING "::Instance::createStreamDescriptorSurfaceGGPUnique", deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_USE_PLATFORM_GGP*/
+
+ //=== VK_NV_external_memory_capabilities ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result PhysicalDevice::getExternalImageFormatPropertiesNV(
+ VULKAN_HPP_NAMESPACE::Format format,
+ VULKAN_HPP_NAMESPACE::ImageType type,
+ VULKAN_HPP_NAMESPACE::ImageTiling tiling,
+ VULKAN_HPP_NAMESPACE::ImageUsageFlags usage,
+ VULKAN_HPP_NAMESPACE::ImageCreateFlags flags,
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV externalHandleType,
+ VULKAN_HPP_NAMESPACE::ExternalImageFormatPropertiesNV * pExternalImageFormatProperties,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkGetPhysicalDeviceExternalImageFormatPropertiesNV(
+ m_physicalDevice,
+ static_cast<VkFormat>( format ),
+ static_cast<VkImageType>( type ),
+ static_cast<VkImageTiling>( tiling ),
+ static_cast<VkImageUsageFlags>( usage ),
+ static_cast<VkImageCreateFlags>( flags ),
+ static_cast<VkExternalMemoryHandleTypeFlagsNV>( externalHandleType ),
+ reinterpret_cast<VkExternalImageFormatPropertiesNV *>( pExternalImageFormatProperties ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::ExternalImageFormatPropertiesNV>::type
+ PhysicalDevice::getExternalImageFormatPropertiesNV(
+ VULKAN_HPP_NAMESPACE::Format format,
+ VULKAN_HPP_NAMESPACE::ImageType type,
+ VULKAN_HPP_NAMESPACE::ImageTiling tiling,
+ VULKAN_HPP_NAMESPACE::ImageUsageFlags usage,
+ VULKAN_HPP_NAMESPACE::ImageCreateFlags flags,
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV externalHandleType,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::ExternalImageFormatPropertiesNV externalImageFormatProperties;
+ Result result = static_cast<Result>( d.vkGetPhysicalDeviceExternalImageFormatPropertiesNV(
+ m_physicalDevice,
+ static_cast<VkFormat>( format ),
+ static_cast<VkImageType>( type ),
+ static_cast<VkImageTiling>( tiling ),
+ static_cast<VkImageUsageFlags>( usage ),
+ static_cast<VkImageCreateFlags>( flags ),
+ static_cast<VkExternalMemoryHandleTypeFlagsNV>( externalHandleType ),
+ reinterpret_cast<VkExternalImageFormatPropertiesNV *>( &externalImageFormatProperties ) ) );
+ return createResultValue( result,
+ externalImageFormatProperties,
+ VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getExternalImageFormatPropertiesNV" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ //=== VK_NV_external_memory_win32 ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::getMemoryWin32HandleNV( VULKAN_HPP_NAMESPACE::DeviceMemory memory,
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV handleType,
+ HANDLE * pHandle,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkGetMemoryWin32HandleNV( m_device,
+ static_cast<VkDeviceMemory>( memory ),
+ static_cast<VkExternalMemoryHandleTypeFlagsNV>( handleType ),
+ pHandle ) );
+ }
+
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<HANDLE>::type
+ Device::getMemoryWin32HandleNV( VULKAN_HPP_NAMESPACE::DeviceMemory memory,
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV handleType,
+ Dispatch const & d ) const
+ {
+ HANDLE handle;
+ Result result =
+ static_cast<Result>( d.vkGetMemoryWin32HandleNV( m_device,
+ static_cast<VkDeviceMemory>( memory ),
+ static_cast<VkExternalMemoryHandleTypeFlagsNV>( handleType ),
+ &handle ) );
+ return createResultValue( result, handle, VULKAN_HPP_NAMESPACE_STRING "::Device::getMemoryWin32HandleNV" );
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+
+ //=== VK_KHR_get_physical_device_properties2 ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void PhysicalDevice::getFeatures2KHR( VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures2 * pFeatures,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkGetPhysicalDeviceFeatures2KHR( m_physicalDevice, reinterpret_cast<VkPhysicalDeviceFeatures2 *>( pFeatures ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures2
+ PhysicalDevice::getFeatures2KHR( Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures2 features;
+ d.vkGetPhysicalDeviceFeatures2KHR( m_physicalDevice, reinterpret_cast<VkPhysicalDeviceFeatures2 *>( &features ) );
+ return features;
+ }
+
+ template <typename X, typename Y, typename... Z, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE StructureChain<X, Y, Z...>
+ PhysicalDevice::getFeatures2KHR( Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ StructureChain<X, Y, Z...> structureChain;
+ VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures2 & features =
+ structureChain.template get<VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures2>();
+ d.vkGetPhysicalDeviceFeatures2KHR( m_physicalDevice, reinterpret_cast<VkPhysicalDeviceFeatures2 *>( &features ) );
+ return structureChain;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ PhysicalDevice::getProperties2KHR( VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties2 * pProperties,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkGetPhysicalDeviceProperties2KHR( m_physicalDevice,
+ reinterpret_cast<VkPhysicalDeviceProperties2 *>( pProperties ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties2
+ PhysicalDevice::getProperties2KHR( Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties2 properties;
+ d.vkGetPhysicalDeviceProperties2KHR( m_physicalDevice,
+ reinterpret_cast<VkPhysicalDeviceProperties2 *>( &properties ) );
+ return properties;
+ }
+
+ template <typename X, typename Y, typename... Z, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE StructureChain<X, Y, Z...>
+ PhysicalDevice::getProperties2KHR( Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ StructureChain<X, Y, Z...> structureChain;
+ VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties2 & properties =
+ structureChain.template get<VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties2>();
+ d.vkGetPhysicalDeviceProperties2KHR( m_physicalDevice,
+ reinterpret_cast<VkPhysicalDeviceProperties2 *>( &properties ) );
+ return structureChain;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ PhysicalDevice::getFormatProperties2KHR( VULKAN_HPP_NAMESPACE::Format format,
+ VULKAN_HPP_NAMESPACE::FormatProperties2 * pFormatProperties,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkGetPhysicalDeviceFormatProperties2KHR(
+ m_physicalDevice, static_cast<VkFormat>( format ), reinterpret_cast<VkFormatProperties2 *>( pFormatProperties ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::FormatProperties2
+ PhysicalDevice::getFormatProperties2KHR( VULKAN_HPP_NAMESPACE::Format format,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_NAMESPACE::FormatProperties2 formatProperties;
+ d.vkGetPhysicalDeviceFormatProperties2KHR(
+ m_physicalDevice, static_cast<VkFormat>( format ), reinterpret_cast<VkFormatProperties2 *>( &formatProperties ) );
+ return formatProperties;
+ }
+
+ template <typename X, typename Y, typename... Z, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE StructureChain<X, Y, Z...>
+ PhysicalDevice::getFormatProperties2KHR( VULKAN_HPP_NAMESPACE::Format format,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ StructureChain<X, Y, Z...> structureChain;
+ VULKAN_HPP_NAMESPACE::FormatProperties2 & formatProperties =
+ structureChain.template get<VULKAN_HPP_NAMESPACE::FormatProperties2>();
+ d.vkGetPhysicalDeviceFormatProperties2KHR(
+ m_physicalDevice, static_cast<VkFormat>( format ), reinterpret_cast<VkFormatProperties2 *>( &formatProperties ) );
+ return structureChain;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result PhysicalDevice::getImageFormatProperties2KHR(
+ const VULKAN_HPP_NAMESPACE::PhysicalDeviceImageFormatInfo2 * pImageFormatInfo,
+ VULKAN_HPP_NAMESPACE::ImageFormatProperties2 * pImageFormatProperties,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkGetPhysicalDeviceImageFormatProperties2KHR(
+ m_physicalDevice,
+ reinterpret_cast<const VkPhysicalDeviceImageFormatInfo2 *>( pImageFormatInfo ),
+ reinterpret_cast<VkImageFormatProperties2 *>( pImageFormatProperties ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::ImageFormatProperties2>::type
+ PhysicalDevice::getImageFormatProperties2KHR( const PhysicalDeviceImageFormatInfo2 & imageFormatInfo,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::ImageFormatProperties2 imageFormatProperties;
+ Result result = static_cast<Result>( d.vkGetPhysicalDeviceImageFormatProperties2KHR(
+ m_physicalDevice,
+ reinterpret_cast<const VkPhysicalDeviceImageFormatInfo2 *>( &imageFormatInfo ),
+ reinterpret_cast<VkImageFormatProperties2 *>( &imageFormatProperties ) ) );
+ return createResultValue(
+ result, imageFormatProperties, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getImageFormatProperties2KHR" );
+ }
+
+ template <typename X, typename Y, typename... Z, typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<StructureChain<X, Y, Z...>>::type
+ PhysicalDevice::getImageFormatProperties2KHR( const PhysicalDeviceImageFormatInfo2 & imageFormatInfo,
+ Dispatch const & d ) const
+ {
+ StructureChain<X, Y, Z...> structureChain;
+ VULKAN_HPP_NAMESPACE::ImageFormatProperties2 & imageFormatProperties =
+ structureChain.template get<VULKAN_HPP_NAMESPACE::ImageFormatProperties2>();
+ Result result = static_cast<Result>( d.vkGetPhysicalDeviceImageFormatProperties2KHR(
+ m_physicalDevice,
+ reinterpret_cast<const VkPhysicalDeviceImageFormatInfo2 *>( &imageFormatInfo ),
+ reinterpret_cast<VkImageFormatProperties2 *>( &imageFormatProperties ) ) );
+ return createResultValue(
+ result, structureChain, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getImageFormatProperties2KHR" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ PhysicalDevice::getQueueFamilyProperties2KHR( uint32_t * pQueueFamilyPropertyCount,
+ VULKAN_HPP_NAMESPACE::QueueFamilyProperties2 * pQueueFamilyProperties,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkGetPhysicalDeviceQueueFamilyProperties2KHR(
+ m_physicalDevice,
+ pQueueFamilyPropertyCount,
+ reinterpret_cast<VkQueueFamilyProperties2 *>( pQueueFamilyProperties ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename QueueFamilyProperties2Allocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<QueueFamilyProperties2, QueueFamilyProperties2Allocator>
+ PhysicalDevice::getQueueFamilyProperties2KHR( Dispatch const & d ) const
+ {
+ std::vector<QueueFamilyProperties2, QueueFamilyProperties2Allocator> queueFamilyProperties;
+ uint32_t queueFamilyPropertyCount;
+ d.vkGetPhysicalDeviceQueueFamilyProperties2KHR( m_physicalDevice, &queueFamilyPropertyCount, nullptr );
+ queueFamilyProperties.resize( queueFamilyPropertyCount );
+ d.vkGetPhysicalDeviceQueueFamilyProperties2KHR(
+ m_physicalDevice,
+ &queueFamilyPropertyCount,
+ reinterpret_cast<VkQueueFamilyProperties2 *>( queueFamilyProperties.data() ) );
+ VULKAN_HPP_ASSERT( queueFamilyPropertyCount <= queueFamilyProperties.size() );
+ return queueFamilyProperties;
+ }
+
+ template <typename QueueFamilyProperties2Allocator,
+ typename Dispatch,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, QueueFamilyProperties2>::value, int>::type>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<QueueFamilyProperties2, QueueFamilyProperties2Allocator>
+ PhysicalDevice::getQueueFamilyProperties2KHR( QueueFamilyProperties2Allocator & queueFamilyProperties2Allocator,
+ Dispatch const & d ) const
+ {
+ std::vector<QueueFamilyProperties2, QueueFamilyProperties2Allocator> queueFamilyProperties(
+ queueFamilyProperties2Allocator );
+ uint32_t queueFamilyPropertyCount;
+ d.vkGetPhysicalDeviceQueueFamilyProperties2KHR( m_physicalDevice, &queueFamilyPropertyCount, nullptr );
+ queueFamilyProperties.resize( queueFamilyPropertyCount );
+ d.vkGetPhysicalDeviceQueueFamilyProperties2KHR(
+ m_physicalDevice,
+ &queueFamilyPropertyCount,
+ reinterpret_cast<VkQueueFamilyProperties2 *>( queueFamilyProperties.data() ) );
+ VULKAN_HPP_ASSERT( queueFamilyPropertyCount <= queueFamilyProperties.size() );
+ return queueFamilyProperties;
+ }
+
+ template <typename StructureChain, typename StructureChainAllocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<StructureChain, StructureChainAllocator>
+ PhysicalDevice::getQueueFamilyProperties2KHR( Dispatch const & d ) const
+ {
+ uint32_t queueFamilyPropertyCount;
+ d.vkGetPhysicalDeviceQueueFamilyProperties2KHR( m_physicalDevice, &queueFamilyPropertyCount, nullptr );
+ std::vector<StructureChain, StructureChainAllocator> returnVector( queueFamilyPropertyCount );
+ std::vector<VULKAN_HPP_NAMESPACE::QueueFamilyProperties2> queueFamilyProperties( queueFamilyPropertyCount );
+ for ( uint32_t i = 0; i < queueFamilyPropertyCount; i++ )
+ {
+ queueFamilyProperties[i].pNext =
+ returnVector[i].template get<VULKAN_HPP_NAMESPACE::QueueFamilyProperties2>().pNext;
+ }
+ d.vkGetPhysicalDeviceQueueFamilyProperties2KHR(
+ m_physicalDevice,
+ &queueFamilyPropertyCount,
+ reinterpret_cast<VkQueueFamilyProperties2 *>( queueFamilyProperties.data() ) );
+ VULKAN_HPP_ASSERT( queueFamilyPropertyCount <= queueFamilyProperties.size() );
+ for ( uint32_t i = 0; i < queueFamilyPropertyCount; i++ )
+ {
+ returnVector[i].template get<VULKAN_HPP_NAMESPACE::QueueFamilyProperties2>() = queueFamilyProperties[i];
+ }
+ return returnVector;
+ }
+
+ template <typename StructureChain,
+ typename StructureChainAllocator,
+ typename Dispatch,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, StructureChain>::value, int>::type>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<StructureChain, StructureChainAllocator>
+ PhysicalDevice::getQueueFamilyProperties2KHR( StructureChainAllocator & structureChainAllocator,
+ Dispatch const & d ) const
+ {
+ uint32_t queueFamilyPropertyCount;
+ d.vkGetPhysicalDeviceQueueFamilyProperties2KHR( m_physicalDevice, &queueFamilyPropertyCount, nullptr );
+ std::vector<StructureChain, StructureChainAllocator> returnVector( queueFamilyPropertyCount,
+ structureChainAllocator );
+ std::vector<VULKAN_HPP_NAMESPACE::QueueFamilyProperties2> queueFamilyProperties( queueFamilyPropertyCount );
+ for ( uint32_t i = 0; i < queueFamilyPropertyCount; i++ )
+ {
+ queueFamilyProperties[i].pNext =
+ returnVector[i].template get<VULKAN_HPP_NAMESPACE::QueueFamilyProperties2>().pNext;
+ }
+ d.vkGetPhysicalDeviceQueueFamilyProperties2KHR(
+ m_physicalDevice,
+ &queueFamilyPropertyCount,
+ reinterpret_cast<VkQueueFamilyProperties2 *>( queueFamilyProperties.data() ) );
+ VULKAN_HPP_ASSERT( queueFamilyPropertyCount <= queueFamilyProperties.size() );
+ for ( uint32_t i = 0; i < queueFamilyPropertyCount; i++ )
+ {
+ returnVector[i].template get<VULKAN_HPP_NAMESPACE::QueueFamilyProperties2>() = queueFamilyProperties[i];
+ }
+ return returnVector;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ PhysicalDevice::getMemoryProperties2KHR( VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties2 * pMemoryProperties,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkGetPhysicalDeviceMemoryProperties2KHR(
+ m_physicalDevice, reinterpret_cast<VkPhysicalDeviceMemoryProperties2 *>( pMemoryProperties ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties2
+ PhysicalDevice::getMemoryProperties2KHR( Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties2 memoryProperties;
+ d.vkGetPhysicalDeviceMemoryProperties2KHR(
+ m_physicalDevice, reinterpret_cast<VkPhysicalDeviceMemoryProperties2 *>( &memoryProperties ) );
+ return memoryProperties;
+ }
+
+ template <typename X, typename Y, typename... Z, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE StructureChain<X, Y, Z...>
+ PhysicalDevice::getMemoryProperties2KHR( Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ StructureChain<X, Y, Z...> structureChain;
+ VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties2 & memoryProperties =
+ structureChain.template get<VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties2>();
+ d.vkGetPhysicalDeviceMemoryProperties2KHR(
+ m_physicalDevice, reinterpret_cast<VkPhysicalDeviceMemoryProperties2 *>( &memoryProperties ) );
+ return structureChain;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void PhysicalDevice::getSparseImageFormatProperties2KHR(
+ const VULKAN_HPP_NAMESPACE::PhysicalDeviceSparseImageFormatInfo2 * pFormatInfo,
+ uint32_t * pPropertyCount,
+ VULKAN_HPP_NAMESPACE::SparseImageFormatProperties2 * pProperties,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkGetPhysicalDeviceSparseImageFormatProperties2KHR(
+ m_physicalDevice,
+ reinterpret_cast<const VkPhysicalDeviceSparseImageFormatInfo2 *>( pFormatInfo ),
+ pPropertyCount,
+ reinterpret_cast<VkSparseImageFormatProperties2 *>( pProperties ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename SparseImageFormatProperties2Allocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD
+ VULKAN_HPP_INLINE std::vector<SparseImageFormatProperties2, SparseImageFormatProperties2Allocator>
+ PhysicalDevice::getSparseImageFormatProperties2KHR( const PhysicalDeviceSparseImageFormatInfo2 & formatInfo,
+ Dispatch const & d ) const
+ {
+ std::vector<SparseImageFormatProperties2, SparseImageFormatProperties2Allocator> properties;
+ uint32_t propertyCount;
+ d.vkGetPhysicalDeviceSparseImageFormatProperties2KHR(
+ m_physicalDevice,
+ reinterpret_cast<const VkPhysicalDeviceSparseImageFormatInfo2 *>( &formatInfo ),
+ &propertyCount,
+ nullptr );
+ properties.resize( propertyCount );
+ d.vkGetPhysicalDeviceSparseImageFormatProperties2KHR(
+ m_physicalDevice,
+ reinterpret_cast<const VkPhysicalDeviceSparseImageFormatInfo2 *>( &formatInfo ),
+ &propertyCount,
+ reinterpret_cast<VkSparseImageFormatProperties2 *>( properties.data() ) );
+ VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
+ return properties;
+ }
+
+ template <
+ typename SparseImageFormatProperties2Allocator,
+ typename Dispatch,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, SparseImageFormatProperties2>::value, int>::type>
+ VULKAN_HPP_NODISCARD
+ VULKAN_HPP_INLINE std::vector<SparseImageFormatProperties2, SparseImageFormatProperties2Allocator>
+ PhysicalDevice::getSparseImageFormatProperties2KHR(
+ const PhysicalDeviceSparseImageFormatInfo2 & formatInfo,
+ SparseImageFormatProperties2Allocator & sparseImageFormatProperties2Allocator,
+ Dispatch const & d ) const
+ {
+ std::vector<SparseImageFormatProperties2, SparseImageFormatProperties2Allocator> properties(
+ sparseImageFormatProperties2Allocator );
+ uint32_t propertyCount;
+ d.vkGetPhysicalDeviceSparseImageFormatProperties2KHR(
+ m_physicalDevice,
+ reinterpret_cast<const VkPhysicalDeviceSparseImageFormatInfo2 *>( &formatInfo ),
+ &propertyCount,
+ nullptr );
+ properties.resize( propertyCount );
+ d.vkGetPhysicalDeviceSparseImageFormatProperties2KHR(
+ m_physicalDevice,
+ reinterpret_cast<const VkPhysicalDeviceSparseImageFormatInfo2 *>( &formatInfo ),
+ &propertyCount,
+ reinterpret_cast<VkSparseImageFormatProperties2 *>( properties.data() ) );
+ VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
+ return properties;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_KHR_device_group ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ Device::getGroupPeerMemoryFeaturesKHR( uint32_t heapIndex,
+ uint32_t localDeviceIndex,
+ uint32_t remoteDeviceIndex,
+ VULKAN_HPP_NAMESPACE::PeerMemoryFeatureFlags * pPeerMemoryFeatures,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkGetDeviceGroupPeerMemoryFeaturesKHR( m_device,
+ heapIndex,
+ localDeviceIndex,
+ remoteDeviceIndex,
+ reinterpret_cast<VkPeerMemoryFeatureFlags *>( pPeerMemoryFeatures ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::PeerMemoryFeatureFlags
+ Device::getGroupPeerMemoryFeaturesKHR( uint32_t heapIndex,
+ uint32_t localDeviceIndex,
+ uint32_t remoteDeviceIndex,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_NAMESPACE::PeerMemoryFeatureFlags peerMemoryFeatures;
+ d.vkGetDeviceGroupPeerMemoryFeaturesKHR( m_device,
+ heapIndex,
+ localDeviceIndex,
+ remoteDeviceIndex,
+ reinterpret_cast<VkPeerMemoryFeatureFlags *>( &peerMemoryFeatures ) );
+ return peerMemoryFeatures;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::setDeviceMaskKHR( uint32_t deviceMask,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdSetDeviceMaskKHR( m_commandBuffer, deviceMask );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::dispatchBaseKHR( uint32_t baseGroupX,
+ uint32_t baseGroupY,
+ uint32_t baseGroupZ,
+ uint32_t groupCountX,
+ uint32_t groupCountY,
+ uint32_t groupCountZ,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdDispatchBaseKHR(
+ m_commandBuffer, baseGroupX, baseGroupY, baseGroupZ, groupCountX, groupCountY, groupCountZ );
+ }
+
+#if defined( VK_USE_PLATFORM_VI_NN )
+ //=== VK_NN_vi_surface ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Instance::createViSurfaceNN( const VULKAN_HPP_NAMESPACE::ViSurfaceCreateInfoNN * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::SurfaceKHR * pSurface,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkCreateViSurfaceNN( m_instance,
+ reinterpret_cast<const VkViSurfaceCreateInfoNN *>( pCreateInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkSurfaceKHR *>( pSurface ) ) );
+ }
+
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceKHR>::type
+ Instance::createViSurfaceNN( const ViSurfaceCreateInfoNN & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::SurfaceKHR surface;
+ Result result = static_cast<Result>(
+ d.vkCreateViSurfaceNN( m_instance,
+ reinterpret_cast<const VkViSurfaceCreateInfoNN *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkSurfaceKHR *>( &surface ) ) );
+ return createResultValue( result, surface, VULKAN_HPP_NAMESPACE_STRING "::Instance::createViSurfaceNN" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>>::type
+ Instance::createViSurfaceNNUnique( const ViSurfaceCreateInfoNN & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::SurfaceKHR surface;
+ Result result = static_cast<Result>(
+ d.vkCreateViSurfaceNN( m_instance,
+ reinterpret_cast<const VkViSurfaceCreateInfoNN *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkSurfaceKHR *>( &surface ) ) );
+ ObjectDestroy<Instance, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>(
+ result, surface, VULKAN_HPP_NAMESPACE_STRING "::Instance::createViSurfaceNNUnique", deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_USE_PLATFORM_VI_NN*/
+
+ //=== VK_KHR_maintenance1 ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::trimCommandPoolKHR( VULKAN_HPP_NAMESPACE::CommandPool commandPool,
+ VULKAN_HPP_NAMESPACE::CommandPoolTrimFlags flags,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkTrimCommandPoolKHR(
+ m_device, static_cast<VkCommandPool>( commandPool ), static_cast<VkCommandPoolTrimFlags>( flags ) );
+ }
+
+ //=== VK_KHR_device_group_creation ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Instance::enumeratePhysicalDeviceGroupsKHR(
+ uint32_t * pPhysicalDeviceGroupCount,
+ VULKAN_HPP_NAMESPACE::PhysicalDeviceGroupProperties * pPhysicalDeviceGroupProperties,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkEnumeratePhysicalDeviceGroupsKHR(
+ m_instance,
+ pPhysicalDeviceGroupCount,
+ reinterpret_cast<VkPhysicalDeviceGroupProperties *>( pPhysicalDeviceGroupProperties ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename PhysicalDeviceGroupPropertiesAllocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<PhysicalDeviceGroupProperties, PhysicalDeviceGroupPropertiesAllocator>>::type
+ Instance::enumeratePhysicalDeviceGroupsKHR( Dispatch const & d ) const
+ {
+ std::vector<PhysicalDeviceGroupProperties, PhysicalDeviceGroupPropertiesAllocator> physicalDeviceGroupProperties;
+ uint32_t physicalDeviceGroupCount;
+ Result result;
+ do
+ {
+ result =
+ static_cast<Result>( d.vkEnumeratePhysicalDeviceGroupsKHR( m_instance, &physicalDeviceGroupCount, nullptr ) );
+ if ( ( result == Result::eSuccess ) && physicalDeviceGroupCount )
+ {
+ physicalDeviceGroupProperties.resize( physicalDeviceGroupCount );
+ result = static_cast<Result>( d.vkEnumeratePhysicalDeviceGroupsKHR(
+ m_instance,
+ &physicalDeviceGroupCount,
+ reinterpret_cast<VkPhysicalDeviceGroupProperties *>( physicalDeviceGroupProperties.data() ) ) );
+ VULKAN_HPP_ASSERT( physicalDeviceGroupCount <= physicalDeviceGroupProperties.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( physicalDeviceGroupCount < physicalDeviceGroupProperties.size() ) )
+ {
+ physicalDeviceGroupProperties.resize( physicalDeviceGroupCount );
+ }
+ return createResultValue( result,
+ physicalDeviceGroupProperties,
+ VULKAN_HPP_NAMESPACE_STRING "::Instance::enumeratePhysicalDeviceGroupsKHR" );
+ }
+
+ template <
+ typename PhysicalDeviceGroupPropertiesAllocator,
+ typename Dispatch,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, PhysicalDeviceGroupProperties>::value, int>::type>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<PhysicalDeviceGroupProperties, PhysicalDeviceGroupPropertiesAllocator>>::type
+ Instance::enumeratePhysicalDeviceGroupsKHR(
+ PhysicalDeviceGroupPropertiesAllocator & physicalDeviceGroupPropertiesAllocator, Dispatch const & d ) const
+ {
+ std::vector<PhysicalDeviceGroupProperties, PhysicalDeviceGroupPropertiesAllocator> physicalDeviceGroupProperties(
+ physicalDeviceGroupPropertiesAllocator );
+ uint32_t physicalDeviceGroupCount;
+ Result result;
+ do
+ {
+ result =
+ static_cast<Result>( d.vkEnumeratePhysicalDeviceGroupsKHR( m_instance, &physicalDeviceGroupCount, nullptr ) );
+ if ( ( result == Result::eSuccess ) && physicalDeviceGroupCount )
+ {
+ physicalDeviceGroupProperties.resize( physicalDeviceGroupCount );
+ result = static_cast<Result>( d.vkEnumeratePhysicalDeviceGroupsKHR(
+ m_instance,
+ &physicalDeviceGroupCount,
+ reinterpret_cast<VkPhysicalDeviceGroupProperties *>( physicalDeviceGroupProperties.data() ) ) );
+ VULKAN_HPP_ASSERT( physicalDeviceGroupCount <= physicalDeviceGroupProperties.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( physicalDeviceGroupCount < physicalDeviceGroupProperties.size() ) )
+ {
+ physicalDeviceGroupProperties.resize( physicalDeviceGroupCount );
+ }
+ return createResultValue( result,
+ physicalDeviceGroupProperties,
+ VULKAN_HPP_NAMESPACE_STRING "::Instance::enumeratePhysicalDeviceGroupsKHR" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_KHR_external_memory_capabilities ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void PhysicalDevice::getExternalBufferPropertiesKHR(
+ const VULKAN_HPP_NAMESPACE::PhysicalDeviceExternalBufferInfo * pExternalBufferInfo,
+ VULKAN_HPP_NAMESPACE::ExternalBufferProperties * pExternalBufferProperties,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkGetPhysicalDeviceExternalBufferPropertiesKHR(
+ m_physicalDevice,
+ reinterpret_cast<const VkPhysicalDeviceExternalBufferInfo *>( pExternalBufferInfo ),
+ reinterpret_cast<VkExternalBufferProperties *>( pExternalBufferProperties ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::ExternalBufferProperties
+ PhysicalDevice::getExternalBufferPropertiesKHR( const PhysicalDeviceExternalBufferInfo & externalBufferInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_NAMESPACE::ExternalBufferProperties externalBufferProperties;
+ d.vkGetPhysicalDeviceExternalBufferPropertiesKHR(
+ m_physicalDevice,
+ reinterpret_cast<const VkPhysicalDeviceExternalBufferInfo *>( &externalBufferInfo ),
+ reinterpret_cast<VkExternalBufferProperties *>( &externalBufferProperties ) );
+ return externalBufferProperties;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ //=== VK_KHR_external_memory_win32 ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::getMemoryWin32HandleKHR( const VULKAN_HPP_NAMESPACE::MemoryGetWin32HandleInfoKHR * pGetWin32HandleInfo,
+ HANDLE * pHandle,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkGetMemoryWin32HandleKHR(
+ m_device, reinterpret_cast<const VkMemoryGetWin32HandleInfoKHR *>( pGetWin32HandleInfo ), pHandle ) );
+ }
+
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<HANDLE>::type
+ Device::getMemoryWin32HandleKHR( const MemoryGetWin32HandleInfoKHR & getWin32HandleInfo, Dispatch const & d ) const
+ {
+ HANDLE handle;
+ Result result = static_cast<Result>( d.vkGetMemoryWin32HandleKHR(
+ m_device, reinterpret_cast<const VkMemoryGetWin32HandleInfoKHR *>( &getWin32HandleInfo ), &handle ) );
+ return createResultValue( result, handle, VULKAN_HPP_NAMESPACE_STRING "::Device::getMemoryWin32HandleKHR" );
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getMemoryWin32HandlePropertiesKHR(
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType,
+ HANDLE handle,
+ VULKAN_HPP_NAMESPACE::MemoryWin32HandlePropertiesKHR * pMemoryWin32HandleProperties,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkGetMemoryWin32HandlePropertiesKHR(
+ m_device,
+ static_cast<VkExternalMemoryHandleTypeFlagBits>( handleType ),
+ handle,
+ reinterpret_cast<VkMemoryWin32HandlePropertiesKHR *>( pMemoryWin32HandleProperties ) ) );
+ }
+
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::MemoryWin32HandlePropertiesKHR>::type
+ Device::getMemoryWin32HandlePropertiesKHR( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType,
+ HANDLE handle,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::MemoryWin32HandlePropertiesKHR memoryWin32HandleProperties;
+ Result result = static_cast<Result>( d.vkGetMemoryWin32HandlePropertiesKHR(
+ m_device,
+ static_cast<VkExternalMemoryHandleTypeFlagBits>( handleType ),
+ handle,
+ reinterpret_cast<VkMemoryWin32HandlePropertiesKHR *>( &memoryWin32HandleProperties ) ) );
+ return createResultValue(
+ result, memoryWin32HandleProperties, VULKAN_HPP_NAMESPACE_STRING "::Device::getMemoryWin32HandlePropertiesKHR" );
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+
+ //=== VK_KHR_external_memory_fd ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::getMemoryFdKHR( const VULKAN_HPP_NAMESPACE::MemoryGetFdInfoKHR * pGetFdInfo,
+ int * pFd,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkGetMemoryFdKHR( m_device, reinterpret_cast<const VkMemoryGetFdInfoKHR *>( pGetFdInfo ), pFd ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<int>::type
+ Device::getMemoryFdKHR( const MemoryGetFdInfoKHR & getFdInfo, Dispatch const & d ) const
+ {
+ int fd;
+ Result result = static_cast<Result>(
+ d.vkGetMemoryFdKHR( m_device, reinterpret_cast<const VkMemoryGetFdInfoKHR *>( &getFdInfo ), &fd ) );
+ return createResultValue( result, fd, VULKAN_HPP_NAMESPACE_STRING "::Device::getMemoryFdKHR" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::getMemoryFdPropertiesKHR( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType,
+ int fd,
+ VULKAN_HPP_NAMESPACE::MemoryFdPropertiesKHR * pMemoryFdProperties,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkGetMemoryFdPropertiesKHR( m_device,
+ static_cast<VkExternalMemoryHandleTypeFlagBits>( handleType ),
+ fd,
+ reinterpret_cast<VkMemoryFdPropertiesKHR *>( pMemoryFdProperties ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::MemoryFdPropertiesKHR>::type
+ Device::getMemoryFdPropertiesKHR( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType,
+ int fd,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::MemoryFdPropertiesKHR memoryFdProperties;
+ Result result = static_cast<Result>(
+ d.vkGetMemoryFdPropertiesKHR( m_device,
+ static_cast<VkExternalMemoryHandleTypeFlagBits>( handleType ),
+ fd,
+ reinterpret_cast<VkMemoryFdPropertiesKHR *>( &memoryFdProperties ) ) );
+ return createResultValue(
+ result, memoryFdProperties, VULKAN_HPP_NAMESPACE_STRING "::Device::getMemoryFdPropertiesKHR" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_KHR_external_semaphore_capabilities ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void PhysicalDevice::getExternalSemaphorePropertiesKHR(
+ const VULKAN_HPP_NAMESPACE::PhysicalDeviceExternalSemaphoreInfo * pExternalSemaphoreInfo,
+ VULKAN_HPP_NAMESPACE::ExternalSemaphoreProperties * pExternalSemaphoreProperties,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkGetPhysicalDeviceExternalSemaphorePropertiesKHR(
+ m_physicalDevice,
+ reinterpret_cast<const VkPhysicalDeviceExternalSemaphoreInfo *>( pExternalSemaphoreInfo ),
+ reinterpret_cast<VkExternalSemaphoreProperties *>( pExternalSemaphoreProperties ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::ExternalSemaphoreProperties
+ PhysicalDevice::getExternalSemaphorePropertiesKHR(
+ const PhysicalDeviceExternalSemaphoreInfo & externalSemaphoreInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_NAMESPACE::ExternalSemaphoreProperties externalSemaphoreProperties;
+ d.vkGetPhysicalDeviceExternalSemaphorePropertiesKHR(
+ m_physicalDevice,
+ reinterpret_cast<const VkPhysicalDeviceExternalSemaphoreInfo *>( &externalSemaphoreInfo ),
+ reinterpret_cast<VkExternalSemaphoreProperties *>( &externalSemaphoreProperties ) );
+ return externalSemaphoreProperties;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ //=== VK_KHR_external_semaphore_win32 ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::importSemaphoreWin32HandleKHR(
+ const VULKAN_HPP_NAMESPACE::ImportSemaphoreWin32HandleInfoKHR * pImportSemaphoreWin32HandleInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkImportSemaphoreWin32HandleKHR(
+ m_device, reinterpret_cast<const VkImportSemaphoreWin32HandleInfoKHR *>( pImportSemaphoreWin32HandleInfo ) ) );
+ }
+
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type
+ Device::importSemaphoreWin32HandleKHR( const ImportSemaphoreWin32HandleInfoKHR & importSemaphoreWin32HandleInfo,
+ Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>( d.vkImportSemaphoreWin32HandleKHR(
+ m_device, reinterpret_cast<const VkImportSemaphoreWin32HandleInfoKHR *>( &importSemaphoreWin32HandleInfo ) ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::importSemaphoreWin32HandleKHR" );
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getSemaphoreWin32HandleKHR(
+ const VULKAN_HPP_NAMESPACE::SemaphoreGetWin32HandleInfoKHR * pGetWin32HandleInfo,
+ HANDLE * pHandle,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkGetSemaphoreWin32HandleKHR(
+ m_device, reinterpret_cast<const VkSemaphoreGetWin32HandleInfoKHR *>( pGetWin32HandleInfo ), pHandle ) );
+ }
+
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<HANDLE>::type
+ Device::getSemaphoreWin32HandleKHR( const SemaphoreGetWin32HandleInfoKHR & getWin32HandleInfo,
+ Dispatch const & d ) const
+ {
+ HANDLE handle;
+ Result result = static_cast<Result>( d.vkGetSemaphoreWin32HandleKHR(
+ m_device, reinterpret_cast<const VkSemaphoreGetWin32HandleInfoKHR *>( &getWin32HandleInfo ), &handle ) );
+ return createResultValue( result, handle, VULKAN_HPP_NAMESPACE_STRING "::Device::getSemaphoreWin32HandleKHR" );
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+
+ //=== VK_KHR_external_semaphore_fd ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::importSemaphoreFdKHR( const VULKAN_HPP_NAMESPACE::ImportSemaphoreFdInfoKHR * pImportSemaphoreFdInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkImportSemaphoreFdKHR(
+ m_device, reinterpret_cast<const VkImportSemaphoreFdInfoKHR *>( pImportSemaphoreFdInfo ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type
+ Device::importSemaphoreFdKHR( const ImportSemaphoreFdInfoKHR & importSemaphoreFdInfo, Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>( d.vkImportSemaphoreFdKHR(
+ m_device, reinterpret_cast<const VkImportSemaphoreFdInfoKHR *>( &importSemaphoreFdInfo ) ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::importSemaphoreFdKHR" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::getSemaphoreFdKHR( const VULKAN_HPP_NAMESPACE::SemaphoreGetFdInfoKHR * pGetFdInfo,
+ int * pFd,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkGetSemaphoreFdKHR( m_device, reinterpret_cast<const VkSemaphoreGetFdInfoKHR *>( pGetFdInfo ), pFd ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<int>::type
+ Device::getSemaphoreFdKHR( const SemaphoreGetFdInfoKHR & getFdInfo, Dispatch const & d ) const
+ {
+ int fd;
+ Result result = static_cast<Result>(
+ d.vkGetSemaphoreFdKHR( m_device, reinterpret_cast<const VkSemaphoreGetFdInfoKHR *>( &getFdInfo ), &fd ) );
+ return createResultValue( result, fd, VULKAN_HPP_NAMESPACE_STRING "::Device::getSemaphoreFdKHR" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_KHR_push_descriptor ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::pushDescriptorSetKHR( VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint,
+ VULKAN_HPP_NAMESPACE::PipelineLayout layout,
+ uint32_t set,
+ uint32_t descriptorWriteCount,
+ const VULKAN_HPP_NAMESPACE::WriteDescriptorSet * pDescriptorWrites,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdPushDescriptorSetKHR( m_commandBuffer,
+ static_cast<VkPipelineBindPoint>( pipelineBindPoint ),
+ static_cast<VkPipelineLayout>( layout ),
+ set,
+ descriptorWriteCount,
+ reinterpret_cast<const VkWriteDescriptorSet *>( pDescriptorWrites ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::pushDescriptorSetKHR(
+ VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint,
+ VULKAN_HPP_NAMESPACE::PipelineLayout layout,
+ uint32_t set,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::WriteDescriptorSet> const & descriptorWrites,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdPushDescriptorSetKHR( m_commandBuffer,
+ static_cast<VkPipelineBindPoint>( pipelineBindPoint ),
+ static_cast<VkPipelineLayout>( layout ),
+ set,
+ descriptorWrites.size(),
+ reinterpret_cast<const VkWriteDescriptorSet *>( descriptorWrites.data() ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::pushDescriptorSetWithTemplateKHR(
+ VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate descriptorUpdateTemplate,
+ VULKAN_HPP_NAMESPACE::PipelineLayout layout,
+ uint32_t set,
+ const void * pData,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdPushDescriptorSetWithTemplateKHR( m_commandBuffer,
+ static_cast<VkDescriptorUpdateTemplate>( descriptorUpdateTemplate ),
+ static_cast<VkPipelineLayout>( layout ),
+ set,
+ pData );
+ }
+
+ //=== VK_EXT_conditional_rendering ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::beginConditionalRenderingEXT(
+ const VULKAN_HPP_NAMESPACE::ConditionalRenderingBeginInfoEXT * pConditionalRenderingBegin,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdBeginConditionalRenderingEXT(
+ m_commandBuffer, reinterpret_cast<const VkConditionalRenderingBeginInfoEXT *>( pConditionalRenderingBegin ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::beginConditionalRenderingEXT( const ConditionalRenderingBeginInfoEXT & conditionalRenderingBegin,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdBeginConditionalRenderingEXT(
+ m_commandBuffer, reinterpret_cast<const VkConditionalRenderingBeginInfoEXT *>( &conditionalRenderingBegin ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::endConditionalRenderingEXT( Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdEndConditionalRenderingEXT( m_commandBuffer );
+ }
+
+ //=== VK_KHR_descriptor_update_template ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::createDescriptorUpdateTemplateKHR(
+ const VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateCreateInfo * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate * pDescriptorUpdateTemplate,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkCreateDescriptorUpdateTemplateKHR(
+ m_device,
+ reinterpret_cast<const VkDescriptorUpdateTemplateCreateInfo *>( pCreateInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkDescriptorUpdateTemplate *>( pDescriptorUpdateTemplate ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate>::type
+ Device::createDescriptorUpdateTemplateKHR( const DescriptorUpdateTemplateCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate descriptorUpdateTemplate;
+ Result result = static_cast<Result>( d.vkCreateDescriptorUpdateTemplateKHR(
+ m_device,
+ reinterpret_cast<const VkDescriptorUpdateTemplateCreateInfo *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkDescriptorUpdateTemplate *>( &descriptorUpdateTemplate ) ) );
+ return createResultValue(
+ result, descriptorUpdateTemplate, VULKAN_HPP_NAMESPACE_STRING "::Device::createDescriptorUpdateTemplateKHR" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate, Dispatch>>::type
+ Device::createDescriptorUpdateTemplateKHRUnique( const DescriptorUpdateTemplateCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate descriptorUpdateTemplate;
+ Result result = static_cast<Result>( d.vkCreateDescriptorUpdateTemplateKHR(
+ m_device,
+ reinterpret_cast<const VkDescriptorUpdateTemplateCreateInfo *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkDescriptorUpdateTemplate *>( &descriptorUpdateTemplate ) ) );
+ ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate, Dispatch>(
+ result,
+ descriptorUpdateTemplate,
+ VULKAN_HPP_NAMESPACE_STRING "::Device::createDescriptorUpdateTemplateKHRUnique",
+ deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ Device::destroyDescriptorUpdateTemplateKHR( VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate descriptorUpdateTemplate,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyDescriptorUpdateTemplateKHR( m_device,
+ static_cast<VkDescriptorUpdateTemplate>( descriptorUpdateTemplate ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ Device::destroyDescriptorUpdateTemplateKHR( VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate descriptorUpdateTemplate,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyDescriptorUpdateTemplateKHR(
+ m_device,
+ static_cast<VkDescriptorUpdateTemplate>( descriptorUpdateTemplate ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ Device::updateDescriptorSetWithTemplateKHR( VULKAN_HPP_NAMESPACE::DescriptorSet descriptorSet,
+ VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate descriptorUpdateTemplate,
+ const void * pData,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkUpdateDescriptorSetWithTemplateKHR( m_device,
+ static_cast<VkDescriptorSet>( descriptorSet ),
+ static_cast<VkDescriptorUpdateTemplate>( descriptorUpdateTemplate ),
+ pData );
+ }
+
+ //=== VK_NV_clip_space_w_scaling ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::setViewportWScalingNV( uint32_t firstViewport,
+ uint32_t viewportCount,
+ const VULKAN_HPP_NAMESPACE::ViewportWScalingNV * pViewportWScalings,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdSetViewportWScalingNV( m_commandBuffer,
+ firstViewport,
+ viewportCount,
+ reinterpret_cast<const VkViewportWScalingNV *>( pViewportWScalings ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::setViewportWScalingNV(
+ uint32_t firstViewport,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::ViewportWScalingNV> const & viewportWScalings,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdSetViewportWScalingNV( m_commandBuffer,
+ firstViewport,
+ viewportWScalings.size(),
+ reinterpret_cast<const VkViewportWScalingNV *>( viewportWScalings.data() ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_EXT_direct_mode_display ===
+
+#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE Result PhysicalDevice::releaseDisplayEXT( VULKAN_HPP_NAMESPACE::DisplayKHR display,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkReleaseDisplayEXT( m_physicalDevice, static_cast<VkDisplayKHR>( display ) ) );
+ }
+#else
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE typename ResultValueType<void>::type
+ PhysicalDevice::releaseDisplayEXT( VULKAN_HPP_NAMESPACE::DisplayKHR display, Dispatch const & d ) const
+ {
+ Result result =
+ static_cast<Result>( d.vkReleaseDisplayEXT( m_physicalDevice, static_cast<VkDisplayKHR>( display ) ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::releaseDisplayEXT" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#if defined( VK_USE_PLATFORM_XLIB_XRANDR_EXT )
+ //=== VK_EXT_acquire_xlib_display ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result PhysicalDevice::acquireXlibDisplayEXT(
+ Display * dpy, VULKAN_HPP_NAMESPACE::DisplayKHR display, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkAcquireXlibDisplayEXT( m_physicalDevice, dpy, static_cast<VkDisplayKHR>( display ) ) );
+ }
+
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type
+ PhysicalDevice::acquireXlibDisplayEXT( Display & dpy,
+ VULKAN_HPP_NAMESPACE::DisplayKHR display,
+ Dispatch const & d ) const
+ {
+ Result result =
+ static_cast<Result>( d.vkAcquireXlibDisplayEXT( m_physicalDevice, &dpy, static_cast<VkDisplayKHR>( display ) ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::acquireXlibDisplayEXT" );
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ PhysicalDevice::getRandROutputDisplayEXT( Display * dpy,
+ RROutput rrOutput,
+ VULKAN_HPP_NAMESPACE::DisplayKHR * pDisplay,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkGetRandROutputDisplayEXT( m_physicalDevice, dpy, rrOutput, reinterpret_cast<VkDisplayKHR *>( pDisplay ) ) );
+ }
+
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::DisplayKHR>::type
+ PhysicalDevice::getRandROutputDisplayEXT( Display & dpy, RROutput rrOutput, Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::DisplayKHR display;
+ Result result = static_cast<Result>(
+ d.vkGetRandROutputDisplayEXT( m_physicalDevice, &dpy, rrOutput, reinterpret_cast<VkDisplayKHR *>( &display ) ) );
+ return createResultValue(
+ result, display, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getRandROutputDisplayEXT" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::DisplayKHR, Dispatch>>::type
+ PhysicalDevice::getRandROutputDisplayEXTUnique( Display & dpy, RROutput rrOutput, Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::DisplayKHR display;
+ Result result = static_cast<Result>(
+ d.vkGetRandROutputDisplayEXT( m_physicalDevice, &dpy, rrOutput, reinterpret_cast<VkDisplayKHR *>( &display ) ) );
+ ObjectRelease<PhysicalDevice, Dispatch> deleter( *this, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::DisplayKHR, Dispatch>(
+ result, display, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getRandROutputDisplayEXTUnique", deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_USE_PLATFORM_XLIB_XRANDR_EXT*/
+
+ //=== VK_EXT_display_surface_counter ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ PhysicalDevice::getSurfaceCapabilities2EXT( VULKAN_HPP_NAMESPACE::SurfaceKHR surface,
+ VULKAN_HPP_NAMESPACE::SurfaceCapabilities2EXT * pSurfaceCapabilities,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkGetPhysicalDeviceSurfaceCapabilities2EXT(
+ m_physicalDevice,
+ static_cast<VkSurfaceKHR>( surface ),
+ reinterpret_cast<VkSurfaceCapabilities2EXT *>( pSurfaceCapabilities ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceCapabilities2EXT>::type
+ PhysicalDevice::getSurfaceCapabilities2EXT( VULKAN_HPP_NAMESPACE::SurfaceKHR surface, Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::SurfaceCapabilities2EXT surfaceCapabilities;
+ Result result = static_cast<Result>( d.vkGetPhysicalDeviceSurfaceCapabilities2EXT(
+ m_physicalDevice,
+ static_cast<VkSurfaceKHR>( surface ),
+ reinterpret_cast<VkSurfaceCapabilities2EXT *>( &surfaceCapabilities ) ) );
+ return createResultValue(
+ result, surfaceCapabilities, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getSurfaceCapabilities2EXT" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_EXT_display_control ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::displayPowerControlEXT( VULKAN_HPP_NAMESPACE::DisplayKHR display,
+ const VULKAN_HPP_NAMESPACE::DisplayPowerInfoEXT * pDisplayPowerInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkDisplayPowerControlEXT( m_device,
+ static_cast<VkDisplayKHR>( display ),
+ reinterpret_cast<const VkDisplayPowerInfoEXT *>( pDisplayPowerInfo ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE typename ResultValueType<void>::type Device::displayPowerControlEXT(
+ VULKAN_HPP_NAMESPACE::DisplayKHR display, const DisplayPowerInfoEXT & displayPowerInfo, Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>(
+ d.vkDisplayPowerControlEXT( m_device,
+ static_cast<VkDisplayKHR>( display ),
+ reinterpret_cast<const VkDisplayPowerInfoEXT *>( &displayPowerInfo ) ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::displayPowerControlEXT" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::registerEventEXT( const VULKAN_HPP_NAMESPACE::DeviceEventInfoEXT * pDeviceEventInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::Fence * pFence,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkRegisterDeviceEventEXT( m_device,
+ reinterpret_cast<const VkDeviceEventInfoEXT *>( pDeviceEventInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkFence *>( pFence ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::Fence>::type
+ Device::registerEventEXT( const DeviceEventInfoEXT & deviceEventInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::Fence fence;
+ Result result = static_cast<Result>(
+ d.vkRegisterDeviceEventEXT( m_device,
+ reinterpret_cast<const VkDeviceEventInfoEXT *>( &deviceEventInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkFence *>( &fence ) ) );
+ return createResultValue( result, fence, VULKAN_HPP_NAMESPACE_STRING "::Device::registerEventEXT" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::Fence, Dispatch>>::type
+ Device::registerEventEXTUnique( const DeviceEventInfoEXT & deviceEventInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::Fence fence;
+ Result result = static_cast<Result>(
+ d.vkRegisterDeviceEventEXT( m_device,
+ reinterpret_cast<const VkDeviceEventInfoEXT *>( &deviceEventInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkFence *>( &fence ) ) );
+ ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::Fence, Dispatch>(
+ result, fence, VULKAN_HPP_NAMESPACE_STRING "::Device::registerEventEXTUnique", deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::registerDisplayEventEXT( VULKAN_HPP_NAMESPACE::DisplayKHR display,
+ const VULKAN_HPP_NAMESPACE::DisplayEventInfoEXT * pDisplayEventInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::Fence * pFence,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkRegisterDisplayEventEXT( m_device,
+ static_cast<VkDisplayKHR>( display ),
+ reinterpret_cast<const VkDisplayEventInfoEXT *>( pDisplayEventInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkFence *>( pFence ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::Fence>::type
+ Device::registerDisplayEventEXT( VULKAN_HPP_NAMESPACE::DisplayKHR display,
+ const DisplayEventInfoEXT & displayEventInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::Fence fence;
+ Result result = static_cast<Result>(
+ d.vkRegisterDisplayEventEXT( m_device,
+ static_cast<VkDisplayKHR>( display ),
+ reinterpret_cast<const VkDisplayEventInfoEXT *>( &displayEventInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkFence *>( &fence ) ) );
+ return createResultValue( result, fence, VULKAN_HPP_NAMESPACE_STRING "::Device::registerDisplayEventEXT" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::Fence, Dispatch>>::type
+ Device::registerDisplayEventEXTUnique( VULKAN_HPP_NAMESPACE::DisplayKHR display,
+ const DisplayEventInfoEXT & displayEventInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::Fence fence;
+ Result result = static_cast<Result>(
+ d.vkRegisterDisplayEventEXT( m_device,
+ static_cast<VkDisplayKHR>( display ),
+ reinterpret_cast<const VkDisplayEventInfoEXT *>( &displayEventInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkFence *>( &fence ) ) );
+ ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::Fence, Dispatch>(
+ result, fence, VULKAN_HPP_NAMESPACE_STRING "::Device::registerDisplayEventEXTUnique", deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::getSwapchainCounterEXT( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain,
+ VULKAN_HPP_NAMESPACE::SurfaceCounterFlagBitsEXT counter,
+ uint64_t * pCounterValue,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkGetSwapchainCounterEXT( m_device,
+ static_cast<VkSwapchainKHR>( swapchain ),
+ static_cast<VkSurfaceCounterFlagBitsEXT>( counter ),
+ pCounterValue ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<uint64_t>::type
+ Device::getSwapchainCounterEXT( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain,
+ VULKAN_HPP_NAMESPACE::SurfaceCounterFlagBitsEXT counter,
+ Dispatch const & d ) const
+ {
+ uint64_t counterValue;
+ Result result =
+ static_cast<Result>( d.vkGetSwapchainCounterEXT( m_device,
+ static_cast<VkSwapchainKHR>( swapchain ),
+ static_cast<VkSurfaceCounterFlagBitsEXT>( counter ),
+ &counterValue ) );
+ return createResultValue( result, counterValue, VULKAN_HPP_NAMESPACE_STRING "::Device::getSwapchainCounterEXT" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_GOOGLE_display_timing ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::getRefreshCycleDurationGOOGLE( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain,
+ VULKAN_HPP_NAMESPACE::RefreshCycleDurationGOOGLE * pDisplayTimingProperties,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkGetRefreshCycleDurationGOOGLE(
+ m_device,
+ static_cast<VkSwapchainKHR>( swapchain ),
+ reinterpret_cast<VkRefreshCycleDurationGOOGLE *>( pDisplayTimingProperties ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::RefreshCycleDurationGOOGLE>::type
+ Device::getRefreshCycleDurationGOOGLE( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain, Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::RefreshCycleDurationGOOGLE displayTimingProperties;
+ Result result = static_cast<Result>( d.vkGetRefreshCycleDurationGOOGLE(
+ m_device,
+ static_cast<VkSwapchainKHR>( swapchain ),
+ reinterpret_cast<VkRefreshCycleDurationGOOGLE *>( &displayTimingProperties ) ) );
+ return createResultValue(
+ result, displayTimingProperties, VULKAN_HPP_NAMESPACE_STRING "::Device::getRefreshCycleDurationGOOGLE" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::getPastPresentationTimingGOOGLE( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain,
+ uint32_t * pPresentationTimingCount,
+ VULKAN_HPP_NAMESPACE::PastPresentationTimingGOOGLE * pPresentationTimings,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkGetPastPresentationTimingGOOGLE(
+ m_device,
+ static_cast<VkSwapchainKHR>( swapchain ),
+ pPresentationTimingCount,
+ reinterpret_cast<VkPastPresentationTimingGOOGLE *>( pPresentationTimings ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename PastPresentationTimingGOOGLEAllocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<PastPresentationTimingGOOGLE, PastPresentationTimingGOOGLEAllocator>>::type
+ Device::getPastPresentationTimingGOOGLE( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain, Dispatch const & d ) const
+ {
+ std::vector<PastPresentationTimingGOOGLE, PastPresentationTimingGOOGLEAllocator> presentationTimings;
+ uint32_t presentationTimingCount;
+ Result result;
+ do
+ {
+ result = static_cast<Result>( d.vkGetPastPresentationTimingGOOGLE(
+ m_device, static_cast<VkSwapchainKHR>( swapchain ), &presentationTimingCount, nullptr ) );
+ if ( ( result == Result::eSuccess ) && presentationTimingCount )
+ {
+ presentationTimings.resize( presentationTimingCount );
+ result = static_cast<Result>( d.vkGetPastPresentationTimingGOOGLE(
+ m_device,
+ static_cast<VkSwapchainKHR>( swapchain ),
+ &presentationTimingCount,
+ reinterpret_cast<VkPastPresentationTimingGOOGLE *>( presentationTimings.data() ) ) );
+ VULKAN_HPP_ASSERT( presentationTimingCount <= presentationTimings.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( presentationTimingCount < presentationTimings.size() ) )
+ {
+ presentationTimings.resize( presentationTimingCount );
+ }
+ return createResultValue(
+ result, presentationTimings, VULKAN_HPP_NAMESPACE_STRING "::Device::getPastPresentationTimingGOOGLE" );
+ }
+
+ template <
+ typename PastPresentationTimingGOOGLEAllocator,
+ typename Dispatch,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, PastPresentationTimingGOOGLE>::value, int>::type>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<PastPresentationTimingGOOGLE, PastPresentationTimingGOOGLEAllocator>>::type
+ Device::getPastPresentationTimingGOOGLE(
+ VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain,
+ PastPresentationTimingGOOGLEAllocator & pastPresentationTimingGOOGLEAllocator,
+ Dispatch const & d ) const
+ {
+ std::vector<PastPresentationTimingGOOGLE, PastPresentationTimingGOOGLEAllocator> presentationTimings(
+ pastPresentationTimingGOOGLEAllocator );
+ uint32_t presentationTimingCount;
+ Result result;
+ do
+ {
+ result = static_cast<Result>( d.vkGetPastPresentationTimingGOOGLE(
+ m_device, static_cast<VkSwapchainKHR>( swapchain ), &presentationTimingCount, nullptr ) );
+ if ( ( result == Result::eSuccess ) && presentationTimingCount )
+ {
+ presentationTimings.resize( presentationTimingCount );
+ result = static_cast<Result>( d.vkGetPastPresentationTimingGOOGLE(
+ m_device,
+ static_cast<VkSwapchainKHR>( swapchain ),
+ &presentationTimingCount,
+ reinterpret_cast<VkPastPresentationTimingGOOGLE *>( presentationTimings.data() ) ) );
+ VULKAN_HPP_ASSERT( presentationTimingCount <= presentationTimings.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( presentationTimingCount < presentationTimings.size() ) )
+ {
+ presentationTimings.resize( presentationTimingCount );
+ }
+ return createResultValue(
+ result, presentationTimings, VULKAN_HPP_NAMESPACE_STRING "::Device::getPastPresentationTimingGOOGLE" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_EXT_discard_rectangles ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::setDiscardRectangleEXT( uint32_t firstDiscardRectangle,
+ uint32_t discardRectangleCount,
+ const VULKAN_HPP_NAMESPACE::Rect2D * pDiscardRectangles,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdSetDiscardRectangleEXT( m_commandBuffer,
+ firstDiscardRectangle,
+ discardRectangleCount,
+ reinterpret_cast<const VkRect2D *>( pDiscardRectangles ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::setDiscardRectangleEXT( uint32_t firstDiscardRectangle,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::Rect2D> const & discardRectangles,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdSetDiscardRectangleEXT( m_commandBuffer,
+ firstDiscardRectangle,
+ discardRectangles.size(),
+ reinterpret_cast<const VkRect2D *>( discardRectangles.data() ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_EXT_hdr_metadata ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::setHdrMetadataEXT( uint32_t swapchainCount,
+ const VULKAN_HPP_NAMESPACE::SwapchainKHR * pSwapchains,
+ const VULKAN_HPP_NAMESPACE::HdrMetadataEXT * pMetadata,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkSetHdrMetadataEXT( m_device,
+ swapchainCount,
+ reinterpret_cast<const VkSwapchainKHR *>( pSwapchains ),
+ reinterpret_cast<const VkHdrMetadataEXT *>( pMetadata ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ Device::setHdrMetadataEXT( ArrayProxy<const VULKAN_HPP_NAMESPACE::SwapchainKHR> const & swapchains,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::HdrMetadataEXT> const & metadata,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS
+ {
+# ifdef VULKAN_HPP_NO_EXCEPTIONS
+ VULKAN_HPP_ASSERT( swapchains.size() == metadata.size() );
+# else
+ if ( swapchains.size() != metadata.size() )
+ {
+ throw LogicError( VULKAN_HPP_NAMESPACE_STRING
+ "::Device::setHdrMetadataEXT: swapchains.size() != metadata.size()" );
+ }
+# endif /*VULKAN_HPP_NO_EXCEPTIONS*/
+
+ d.vkSetHdrMetadataEXT( m_device,
+ swapchains.size(),
+ reinterpret_cast<const VkSwapchainKHR *>( swapchains.data() ),
+ reinterpret_cast<const VkHdrMetadataEXT *>( metadata.data() ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_KHR_create_renderpass2 ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::createRenderPass2KHR( const VULKAN_HPP_NAMESPACE::RenderPassCreateInfo2 * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::RenderPass * pRenderPass,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkCreateRenderPass2KHR( m_device,
+ reinterpret_cast<const VkRenderPassCreateInfo2 *>( pCreateInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkRenderPass *>( pRenderPass ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::RenderPass>::type
+ Device::createRenderPass2KHR( const RenderPassCreateInfo2 & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::RenderPass renderPass;
+ Result result = static_cast<Result>(
+ d.vkCreateRenderPass2KHR( m_device,
+ reinterpret_cast<const VkRenderPassCreateInfo2 *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkRenderPass *>( &renderPass ) ) );
+ return createResultValue( result, renderPass, VULKAN_HPP_NAMESPACE_STRING "::Device::createRenderPass2KHR" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::RenderPass, Dispatch>>::type
+ Device::createRenderPass2KHRUnique( const RenderPassCreateInfo2 & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::RenderPass renderPass;
+ Result result = static_cast<Result>(
+ d.vkCreateRenderPass2KHR( m_device,
+ reinterpret_cast<const VkRenderPassCreateInfo2 *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkRenderPass *>( &renderPass ) ) );
+ ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::RenderPass, Dispatch>(
+ result, renderPass, VULKAN_HPP_NAMESPACE_STRING "::Device::createRenderPass2KHRUnique", deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::beginRenderPass2KHR( const VULKAN_HPP_NAMESPACE::RenderPassBeginInfo * pRenderPassBegin,
+ const VULKAN_HPP_NAMESPACE::SubpassBeginInfo * pSubpassBeginInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdBeginRenderPass2KHR( m_commandBuffer,
+ reinterpret_cast<const VkRenderPassBeginInfo *>( pRenderPassBegin ),
+ reinterpret_cast<const VkSubpassBeginInfo *>( pSubpassBeginInfo ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::beginRenderPass2KHR( const RenderPassBeginInfo & renderPassBegin,
+ const SubpassBeginInfo & subpassBeginInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdBeginRenderPass2KHR( m_commandBuffer,
+ reinterpret_cast<const VkRenderPassBeginInfo *>( &renderPassBegin ),
+ reinterpret_cast<const VkSubpassBeginInfo *>( &subpassBeginInfo ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::nextSubpass2KHR( const VULKAN_HPP_NAMESPACE::SubpassBeginInfo * pSubpassBeginInfo,
+ const VULKAN_HPP_NAMESPACE::SubpassEndInfo * pSubpassEndInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdNextSubpass2KHR( m_commandBuffer,
+ reinterpret_cast<const VkSubpassBeginInfo *>( pSubpassBeginInfo ),
+ reinterpret_cast<const VkSubpassEndInfo *>( pSubpassEndInfo ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::nextSubpass2KHR( const SubpassBeginInfo & subpassBeginInfo,
+ const SubpassEndInfo & subpassEndInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdNextSubpass2KHR( m_commandBuffer,
+ reinterpret_cast<const VkSubpassBeginInfo *>( &subpassBeginInfo ),
+ reinterpret_cast<const VkSubpassEndInfo *>( &subpassEndInfo ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::endRenderPass2KHR( const VULKAN_HPP_NAMESPACE::SubpassEndInfo * pSubpassEndInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdEndRenderPass2KHR( m_commandBuffer, reinterpret_cast<const VkSubpassEndInfo *>( pSubpassEndInfo ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::endRenderPass2KHR( const SubpassEndInfo & subpassEndInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdEndRenderPass2KHR( m_commandBuffer, reinterpret_cast<const VkSubpassEndInfo *>( &subpassEndInfo ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_KHR_shared_presentable_image ===
+
+#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getSwapchainStatusKHR(
+ VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkGetSwapchainStatusKHR( m_device, static_cast<VkSwapchainKHR>( swapchain ) ) );
+ }
+#else
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::getSwapchainStatusKHR( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain, Dispatch const & d ) const
+ {
+ Result result =
+ static_cast<Result>( d.vkGetSwapchainStatusKHR( m_device, static_cast<VkSwapchainKHR>( swapchain ) ) );
+ return createResultValue(
+ result,
+ VULKAN_HPP_NAMESPACE_STRING "::Device::getSwapchainStatusKHR",
+ { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::eSuboptimalKHR } );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_KHR_external_fence_capabilities ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void PhysicalDevice::getExternalFencePropertiesKHR(
+ const VULKAN_HPP_NAMESPACE::PhysicalDeviceExternalFenceInfo * pExternalFenceInfo,
+ VULKAN_HPP_NAMESPACE::ExternalFenceProperties * pExternalFenceProperties,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkGetPhysicalDeviceExternalFencePropertiesKHR(
+ m_physicalDevice,
+ reinterpret_cast<const VkPhysicalDeviceExternalFenceInfo *>( pExternalFenceInfo ),
+ reinterpret_cast<VkExternalFenceProperties *>( pExternalFenceProperties ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::ExternalFenceProperties
+ PhysicalDevice::getExternalFencePropertiesKHR( const PhysicalDeviceExternalFenceInfo & externalFenceInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_NAMESPACE::ExternalFenceProperties externalFenceProperties;
+ d.vkGetPhysicalDeviceExternalFencePropertiesKHR(
+ m_physicalDevice,
+ reinterpret_cast<const VkPhysicalDeviceExternalFenceInfo *>( &externalFenceInfo ),
+ reinterpret_cast<VkExternalFenceProperties *>( &externalFenceProperties ) );
+ return externalFenceProperties;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ //=== VK_KHR_external_fence_win32 ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::importFenceWin32HandleKHR(
+ const VULKAN_HPP_NAMESPACE::ImportFenceWin32HandleInfoKHR * pImportFenceWin32HandleInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkImportFenceWin32HandleKHR(
+ m_device, reinterpret_cast<const VkImportFenceWin32HandleInfoKHR *>( pImportFenceWin32HandleInfo ) ) );
+ }
+
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type
+ Device::importFenceWin32HandleKHR( const ImportFenceWin32HandleInfoKHR & importFenceWin32HandleInfo,
+ Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>( d.vkImportFenceWin32HandleKHR(
+ m_device, reinterpret_cast<const VkImportFenceWin32HandleInfoKHR *>( &importFenceWin32HandleInfo ) ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::importFenceWin32HandleKHR" );
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::getFenceWin32HandleKHR( const VULKAN_HPP_NAMESPACE::FenceGetWin32HandleInfoKHR * pGetWin32HandleInfo,
+ HANDLE * pHandle,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkGetFenceWin32HandleKHR(
+ m_device, reinterpret_cast<const VkFenceGetWin32HandleInfoKHR *>( pGetWin32HandleInfo ), pHandle ) );
+ }
+
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<HANDLE>::type
+ Device::getFenceWin32HandleKHR( const FenceGetWin32HandleInfoKHR & getWin32HandleInfo, Dispatch const & d ) const
+ {
+ HANDLE handle;
+ Result result = static_cast<Result>( d.vkGetFenceWin32HandleKHR(
+ m_device, reinterpret_cast<const VkFenceGetWin32HandleInfoKHR *>( &getWin32HandleInfo ), &handle ) );
+ return createResultValue( result, handle, VULKAN_HPP_NAMESPACE_STRING "::Device::getFenceWin32HandleKHR" );
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+
+ //=== VK_KHR_external_fence_fd ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::importFenceFdKHR( const VULKAN_HPP_NAMESPACE::ImportFenceFdInfoKHR * pImportFenceFdInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkImportFenceFdKHR( m_device, reinterpret_cast<const VkImportFenceFdInfoKHR *>( pImportFenceFdInfo ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type
+ Device::importFenceFdKHR( const ImportFenceFdInfoKHR & importFenceFdInfo, Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>(
+ d.vkImportFenceFdKHR( m_device, reinterpret_cast<const VkImportFenceFdInfoKHR *>( &importFenceFdInfo ) ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::importFenceFdKHR" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::getFenceFdKHR( const VULKAN_HPP_NAMESPACE::FenceGetFdInfoKHR * pGetFdInfo,
+ int * pFd,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkGetFenceFdKHR( m_device, reinterpret_cast<const VkFenceGetFdInfoKHR *>( pGetFdInfo ), pFd ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<int>::type
+ Device::getFenceFdKHR( const FenceGetFdInfoKHR & getFdInfo, Dispatch const & d ) const
+ {
+ int fd;
+ Result result = static_cast<Result>(
+ d.vkGetFenceFdKHR( m_device, reinterpret_cast<const VkFenceGetFdInfoKHR *>( &getFdInfo ), &fd ) );
+ return createResultValue( result, fd, VULKAN_HPP_NAMESPACE_STRING "::Device::getFenceFdKHR" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_KHR_performance_query ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result PhysicalDevice::enumerateQueueFamilyPerformanceQueryCountersKHR(
+ uint32_t queueFamilyIndex,
+ uint32_t * pCounterCount,
+ VULKAN_HPP_NAMESPACE::PerformanceCounterKHR * pCounters,
+ VULKAN_HPP_NAMESPACE::PerformanceCounterDescriptionKHR * pCounterDescriptions,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR(
+ m_physicalDevice,
+ queueFamilyIndex,
+ pCounterCount,
+ reinterpret_cast<VkPerformanceCounterKHR *>( pCounters ),
+ reinterpret_cast<VkPerformanceCounterDescriptionKHR *>( pCounterDescriptions ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Allocator, typename Dispatch>
+ VULKAN_HPP_DEPRECATED( "This function is deprecated. Use one of the other flavours of it." )
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<PerformanceCounterDescriptionKHR, Allocator>>::type
+ PhysicalDevice::enumerateQueueFamilyPerformanceQueryCountersKHR(
+ uint32_t queueFamilyIndex,
+ ArrayProxy<VULKAN_HPP_NAMESPACE::PerformanceCounterKHR> const & counters,
+ Dispatch const & d ) const
+ {
+ std::vector<PerformanceCounterDescriptionKHR, Allocator> counterDescriptions;
+ uint32_t counterCount;
+ Result result;
+ do
+ {
+ result = static_cast<Result>( d.vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR(
+ m_physicalDevice,
+ queueFamilyIndex,
+ counters.size(),
+ reinterpret_cast<VkPerformanceCounterKHR *>( counters.data() ),
+ nullptr ) );
+ if ( ( result == Result::eSuccess ) && counterCount )
+ {
+ counterDescriptions.resize( counterCount );
+ result = static_cast<Result>( d.vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR(
+ m_physicalDevice,
+ queueFamilyIndex,
+ counters.size(),
+ reinterpret_cast<VkPerformanceCounterKHR *>( counters.data() ),
+ reinterpret_cast<VkPerformanceCounterDescriptionKHR *>( counterDescriptions.data() ) ) );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( result == Result::eSuccess )
+ {
+ VULKAN_HPP_ASSERT( counterCount <= counterDescriptions.size() );
+ counterDescriptions.resize( counterCount );
+ }
+ return createResultValue( result,
+ counterDescriptions,
+ VULKAN_HPP_NAMESPACE_STRING
+ "::PhysicalDevice::enumerateQueueFamilyPerformanceQueryCountersKHR" );
+ }
+
+ template <
+ typename Allocator,
+ typename Dispatch,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, PerformanceCounterDescriptionKHR>::value, int>::type>
+ VULKAN_HPP_DEPRECATED( "This function is deprecated. Use one of the other flavours of it." )
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<PerformanceCounterDescriptionKHR, Allocator>>::type
+ PhysicalDevice::enumerateQueueFamilyPerformanceQueryCountersKHR(
+ uint32_t queueFamilyIndex,
+ ArrayProxy<VULKAN_HPP_NAMESPACE::PerformanceCounterKHR> const & counters,
+ Allocator const & vectorAllocator,
+ Dispatch const & d ) const
+ {
+ std::vector<PerformanceCounterDescriptionKHR, Allocator> counterDescriptions( vectorAllocator );
+ uint32_t counterCount;
+ Result result;
+ do
+ {
+ result = static_cast<Result>( d.vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR(
+ m_physicalDevice,
+ queueFamilyIndex,
+ counters.size(),
+ reinterpret_cast<VkPerformanceCounterKHR *>( counters.data() ),
+ nullptr ) );
+ if ( ( result == Result::eSuccess ) && counterCount )
+ {
+ counterDescriptions.resize( counterCount );
+ result = static_cast<Result>( d.vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR(
+ m_physicalDevice,
+ queueFamilyIndex,
+ counters.size(),
+ reinterpret_cast<VkPerformanceCounterKHR *>( counters.data() ),
+ reinterpret_cast<VkPerformanceCounterDescriptionKHR *>( counterDescriptions.data() ) ) );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( result == Result::eSuccess )
+ {
+ VULKAN_HPP_ASSERT( counterCount <= counterDescriptions.size() );
+ counterDescriptions.resize( counterCount );
+ }
+ return createResultValue( result,
+ counterDescriptions,
+ VULKAN_HPP_NAMESPACE_STRING
+ "::PhysicalDevice::enumerateQueueFamilyPerformanceQueryCountersKHR" );
+ }
+
+ template <typename PerformanceCounterKHRAllocator,
+ typename PerformanceCounterDescriptionKHRAllocator,
+ typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<
+ std::pair<std::vector<PerformanceCounterKHR, PerformanceCounterKHRAllocator>,
+ std::vector<PerformanceCounterDescriptionKHR, PerformanceCounterDescriptionKHRAllocator>>>::type
+ PhysicalDevice::enumerateQueueFamilyPerformanceQueryCountersKHR( uint32_t queueFamilyIndex,
+ Dispatch const & d ) const
+ {
+ std::pair<std::vector<PerformanceCounterKHR, PerformanceCounterKHRAllocator>,
+ std::vector<PerformanceCounterDescriptionKHR, PerformanceCounterDescriptionKHRAllocator>>
+ data;
+ std::vector<PerformanceCounterKHR, PerformanceCounterKHRAllocator> & counters = data.first;
+ std::vector<PerformanceCounterDescriptionKHR, PerformanceCounterDescriptionKHRAllocator> & counterDescriptions =
+ data.second;
+ uint32_t counterCount;
+ Result result;
+ do
+ {
+ result = static_cast<Result>( d.vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR(
+ m_physicalDevice, queueFamilyIndex, &counterCount, nullptr, nullptr ) );
+ if ( ( result == Result::eSuccess ) && counterCount )
+ {
+ counters.resize( counterCount );
+ counterDescriptions.resize( counterCount );
+ result = static_cast<Result>( d.vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR(
+ m_physicalDevice,
+ queueFamilyIndex,
+ &counterCount,
+ reinterpret_cast<VkPerformanceCounterKHR *>( counters.data() ),
+ reinterpret_cast<VkPerformanceCounterDescriptionKHR *>( counterDescriptions.data() ) ) );
+ VULKAN_HPP_ASSERT( counterCount <= counters.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( counterCount < counters.size() ) )
+ {
+ counters.resize( counterCount );
+ counterDescriptions.resize( counterCount );
+ }
+ return createResultValue(
+ result, data, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::enumerateQueueFamilyPerformanceQueryCountersKHR" );
+ }
+
+ template <typename PerformanceCounterKHRAllocator,
+ typename PerformanceCounterDescriptionKHRAllocator,
+ typename Dispatch,
+ typename B1,
+ typename B2,
+ typename std::enable_if<std::is_same<typename B1::value_type, PerformanceCounterKHR>::value &&
+ std::is_same<typename B2::value_type, PerformanceCounterDescriptionKHR>::value,
+ int>::type>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<
+ std::pair<std::vector<PerformanceCounterKHR, PerformanceCounterKHRAllocator>,
+ std::vector<PerformanceCounterDescriptionKHR, PerformanceCounterDescriptionKHRAllocator>>>::type
+ PhysicalDevice::enumerateQueueFamilyPerformanceQueryCountersKHR(
+ uint32_t queueFamilyIndex,
+ PerformanceCounterKHRAllocator & performanceCounterKHRAllocator,
+ PerformanceCounterDescriptionKHRAllocator & performanceCounterDescriptionKHRAllocator,
+ Dispatch const & d ) const
+ {
+ std::pair<std::vector<PerformanceCounterKHR, PerformanceCounterKHRAllocator>,
+ std::vector<PerformanceCounterDescriptionKHR, PerformanceCounterDescriptionKHRAllocator>>
+ data( std::piecewise_construct,
+ std::forward_as_tuple( performanceCounterKHRAllocator ),
+ std::forward_as_tuple( performanceCounterDescriptionKHRAllocator ) );
+ std::vector<PerformanceCounterKHR, PerformanceCounterKHRAllocator> & counters = data.first;
+ std::vector<PerformanceCounterDescriptionKHR, PerformanceCounterDescriptionKHRAllocator> & counterDescriptions =
+ data.second;
+ uint32_t counterCount;
+ Result result;
+ do
+ {
+ result = static_cast<Result>( d.vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR(
+ m_physicalDevice, queueFamilyIndex, &counterCount, nullptr, nullptr ) );
+ if ( ( result == Result::eSuccess ) && counterCount )
+ {
+ counters.resize( counterCount );
+ counterDescriptions.resize( counterCount );
+ result = static_cast<Result>( d.vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR(
+ m_physicalDevice,
+ queueFamilyIndex,
+ &counterCount,
+ reinterpret_cast<VkPerformanceCounterKHR *>( counters.data() ),
+ reinterpret_cast<VkPerformanceCounterDescriptionKHR *>( counterDescriptions.data() ) ) );
+ VULKAN_HPP_ASSERT( counterCount <= counters.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( counterCount < counters.size() ) )
+ {
+ counters.resize( counterCount );
+ counterDescriptions.resize( counterCount );
+ }
+ return createResultValue(
+ result, data, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::enumerateQueueFamilyPerformanceQueryCountersKHR" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void PhysicalDevice::getQueueFamilyPerformanceQueryPassesKHR(
+ const VULKAN_HPP_NAMESPACE::QueryPoolPerformanceCreateInfoKHR * pPerformanceQueryCreateInfo,
+ uint32_t * pNumPasses,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR(
+ m_physicalDevice,
+ reinterpret_cast<const VkQueryPoolPerformanceCreateInfoKHR *>( pPerformanceQueryCreateInfo ),
+ pNumPasses );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE uint32_t PhysicalDevice::getQueueFamilyPerformanceQueryPassesKHR(
+ const QueryPoolPerformanceCreateInfoKHR & performanceQueryCreateInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ uint32_t numPasses;
+ d.vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR(
+ m_physicalDevice,
+ reinterpret_cast<const VkQueryPoolPerformanceCreateInfoKHR *>( &performanceQueryCreateInfo ),
+ &numPasses );
+ return numPasses;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::acquireProfilingLockKHR(
+ const VULKAN_HPP_NAMESPACE::AcquireProfilingLockInfoKHR * pInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkAcquireProfilingLockKHR( m_device, reinterpret_cast<const VkAcquireProfilingLockInfoKHR *>( pInfo ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type
+ Device::acquireProfilingLockKHR( const AcquireProfilingLockInfoKHR & info, Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>(
+ d.vkAcquireProfilingLockKHR( m_device, reinterpret_cast<const VkAcquireProfilingLockInfoKHR *>( &info ) ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::acquireProfilingLockKHR" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::releaseProfilingLockKHR( Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkReleaseProfilingLockKHR( m_device );
+ }
+
+ //=== VK_KHR_get_surface_capabilities2 ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result PhysicalDevice::getSurfaceCapabilities2KHR(
+ const VULKAN_HPP_NAMESPACE::PhysicalDeviceSurfaceInfo2KHR * pSurfaceInfo,
+ VULKAN_HPP_NAMESPACE::SurfaceCapabilities2KHR * pSurfaceCapabilities,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkGetPhysicalDeviceSurfaceCapabilities2KHR(
+ m_physicalDevice,
+ reinterpret_cast<const VkPhysicalDeviceSurfaceInfo2KHR *>( pSurfaceInfo ),
+ reinterpret_cast<VkSurfaceCapabilities2KHR *>( pSurfaceCapabilities ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceCapabilities2KHR>::type
+ PhysicalDevice::getSurfaceCapabilities2KHR( const PhysicalDeviceSurfaceInfo2KHR & surfaceInfo,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::SurfaceCapabilities2KHR surfaceCapabilities;
+ Result result = static_cast<Result>( d.vkGetPhysicalDeviceSurfaceCapabilities2KHR(
+ m_physicalDevice,
+ reinterpret_cast<const VkPhysicalDeviceSurfaceInfo2KHR *>( &surfaceInfo ),
+ reinterpret_cast<VkSurfaceCapabilities2KHR *>( &surfaceCapabilities ) ) );
+ return createResultValue(
+ result, surfaceCapabilities, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getSurfaceCapabilities2KHR" );
+ }
+
+ template <typename X, typename Y, typename... Z, typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<StructureChain<X, Y, Z...>>::type
+ PhysicalDevice::getSurfaceCapabilities2KHR( const PhysicalDeviceSurfaceInfo2KHR & surfaceInfo,
+ Dispatch const & d ) const
+ {
+ StructureChain<X, Y, Z...> structureChain;
+ VULKAN_HPP_NAMESPACE::SurfaceCapabilities2KHR & surfaceCapabilities =
+ structureChain.template get<VULKAN_HPP_NAMESPACE::SurfaceCapabilities2KHR>();
+ Result result = static_cast<Result>( d.vkGetPhysicalDeviceSurfaceCapabilities2KHR(
+ m_physicalDevice,
+ reinterpret_cast<const VkPhysicalDeviceSurfaceInfo2KHR *>( &surfaceInfo ),
+ reinterpret_cast<VkSurfaceCapabilities2KHR *>( &surfaceCapabilities ) ) );
+ return createResultValue(
+ result, structureChain, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getSurfaceCapabilities2KHR" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ PhysicalDevice::getSurfaceFormats2KHR( const VULKAN_HPP_NAMESPACE::PhysicalDeviceSurfaceInfo2KHR * pSurfaceInfo,
+ uint32_t * pSurfaceFormatCount,
+ VULKAN_HPP_NAMESPACE::SurfaceFormat2KHR * pSurfaceFormats,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkGetPhysicalDeviceSurfaceFormats2KHR(
+ m_physicalDevice,
+ reinterpret_cast<const VkPhysicalDeviceSurfaceInfo2KHR *>( pSurfaceInfo ),
+ pSurfaceFormatCount,
+ reinterpret_cast<VkSurfaceFormat2KHR *>( pSurfaceFormats ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename SurfaceFormat2KHRAllocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<SurfaceFormat2KHR, SurfaceFormat2KHRAllocator>>::type
+ PhysicalDevice::getSurfaceFormats2KHR( const PhysicalDeviceSurfaceInfo2KHR & surfaceInfo, Dispatch const & d ) const
+ {
+ std::vector<SurfaceFormat2KHR, SurfaceFormat2KHRAllocator> surfaceFormats;
+ uint32_t surfaceFormatCount;
+ Result result;
+ do
+ {
+ result = static_cast<Result>( d.vkGetPhysicalDeviceSurfaceFormats2KHR(
+ m_physicalDevice,
+ reinterpret_cast<const VkPhysicalDeviceSurfaceInfo2KHR *>( &surfaceInfo ),
+ &surfaceFormatCount,
+ nullptr ) );
+ if ( ( result == Result::eSuccess ) && surfaceFormatCount )
+ {
+ surfaceFormats.resize( surfaceFormatCount );
+ result = static_cast<Result>( d.vkGetPhysicalDeviceSurfaceFormats2KHR(
+ m_physicalDevice,
+ reinterpret_cast<const VkPhysicalDeviceSurfaceInfo2KHR *>( &surfaceInfo ),
+ &surfaceFormatCount,
+ reinterpret_cast<VkSurfaceFormat2KHR *>( surfaceFormats.data() ) ) );
+ VULKAN_HPP_ASSERT( surfaceFormatCount <= surfaceFormats.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( surfaceFormatCount < surfaceFormats.size() ) )
+ {
+ surfaceFormats.resize( surfaceFormatCount );
+ }
+ return createResultValue(
+ result, surfaceFormats, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getSurfaceFormats2KHR" );
+ }
+
+ template <typename SurfaceFormat2KHRAllocator,
+ typename Dispatch,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, SurfaceFormat2KHR>::value, int>::type>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<SurfaceFormat2KHR, SurfaceFormat2KHRAllocator>>::type
+ PhysicalDevice::getSurfaceFormats2KHR( const PhysicalDeviceSurfaceInfo2KHR & surfaceInfo,
+ SurfaceFormat2KHRAllocator & surfaceFormat2KHRAllocator,
+ Dispatch const & d ) const
+ {
+ std::vector<SurfaceFormat2KHR, SurfaceFormat2KHRAllocator> surfaceFormats( surfaceFormat2KHRAllocator );
+ uint32_t surfaceFormatCount;
+ Result result;
+ do
+ {
+ result = static_cast<Result>( d.vkGetPhysicalDeviceSurfaceFormats2KHR(
+ m_physicalDevice,
+ reinterpret_cast<const VkPhysicalDeviceSurfaceInfo2KHR *>( &surfaceInfo ),
+ &surfaceFormatCount,
+ nullptr ) );
+ if ( ( result == Result::eSuccess ) && surfaceFormatCount )
+ {
+ surfaceFormats.resize( surfaceFormatCount );
+ result = static_cast<Result>( d.vkGetPhysicalDeviceSurfaceFormats2KHR(
+ m_physicalDevice,
+ reinterpret_cast<const VkPhysicalDeviceSurfaceInfo2KHR *>( &surfaceInfo ),
+ &surfaceFormatCount,
+ reinterpret_cast<VkSurfaceFormat2KHR *>( surfaceFormats.data() ) ) );
+ VULKAN_HPP_ASSERT( surfaceFormatCount <= surfaceFormats.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( surfaceFormatCount < surfaceFormats.size() ) )
+ {
+ surfaceFormats.resize( surfaceFormatCount );
+ }
+ return createResultValue(
+ result, surfaceFormats, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getSurfaceFormats2KHR" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_KHR_get_display_properties2 ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ PhysicalDevice::getDisplayProperties2KHR( uint32_t * pPropertyCount,
+ VULKAN_HPP_NAMESPACE::DisplayProperties2KHR * pProperties,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkGetPhysicalDeviceDisplayProperties2KHR(
+ m_physicalDevice, pPropertyCount, reinterpret_cast<VkDisplayProperties2KHR *>( pProperties ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename DisplayProperties2KHRAllocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<DisplayProperties2KHR, DisplayProperties2KHRAllocator>>::type
+ PhysicalDevice::getDisplayProperties2KHR( Dispatch const & d ) const
+ {
+ std::vector<DisplayProperties2KHR, DisplayProperties2KHRAllocator> properties;
+ uint32_t propertyCount;
+ Result result;
+ do
+ {
+ result =
+ static_cast<Result>( d.vkGetPhysicalDeviceDisplayProperties2KHR( m_physicalDevice, &propertyCount, nullptr ) );
+ if ( ( result == Result::eSuccess ) && propertyCount )
+ {
+ properties.resize( propertyCount );
+ result = static_cast<Result>( d.vkGetPhysicalDeviceDisplayProperties2KHR(
+ m_physicalDevice, &propertyCount, reinterpret_cast<VkDisplayProperties2KHR *>( properties.data() ) ) );
+ VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( propertyCount < properties.size() ) )
+ {
+ properties.resize( propertyCount );
+ }
+ return createResultValue(
+ result, properties, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getDisplayProperties2KHR" );
+ }
+
+ template <typename DisplayProperties2KHRAllocator,
+ typename Dispatch,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, DisplayProperties2KHR>::value, int>::type>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<DisplayProperties2KHR, DisplayProperties2KHRAllocator>>::type
+ PhysicalDevice::getDisplayProperties2KHR( DisplayProperties2KHRAllocator & displayProperties2KHRAllocator,
+ Dispatch const & d ) const
+ {
+ std::vector<DisplayProperties2KHR, DisplayProperties2KHRAllocator> properties( displayProperties2KHRAllocator );
+ uint32_t propertyCount;
+ Result result;
+ do
+ {
+ result =
+ static_cast<Result>( d.vkGetPhysicalDeviceDisplayProperties2KHR( m_physicalDevice, &propertyCount, nullptr ) );
+ if ( ( result == Result::eSuccess ) && propertyCount )
+ {
+ properties.resize( propertyCount );
+ result = static_cast<Result>( d.vkGetPhysicalDeviceDisplayProperties2KHR(
+ m_physicalDevice, &propertyCount, reinterpret_cast<VkDisplayProperties2KHR *>( properties.data() ) ) );
+ VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( propertyCount < properties.size() ) )
+ {
+ properties.resize( propertyCount );
+ }
+ return createResultValue(
+ result, properties, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getDisplayProperties2KHR" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ PhysicalDevice::getDisplayPlaneProperties2KHR( uint32_t * pPropertyCount,
+ VULKAN_HPP_NAMESPACE::DisplayPlaneProperties2KHR * pProperties,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkGetPhysicalDeviceDisplayPlaneProperties2KHR(
+ m_physicalDevice, pPropertyCount, reinterpret_cast<VkDisplayPlaneProperties2KHR *>( pProperties ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename DisplayPlaneProperties2KHRAllocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<DisplayPlaneProperties2KHR, DisplayPlaneProperties2KHRAllocator>>::type
+ PhysicalDevice::getDisplayPlaneProperties2KHR( Dispatch const & d ) const
+ {
+ std::vector<DisplayPlaneProperties2KHR, DisplayPlaneProperties2KHRAllocator> properties;
+ uint32_t propertyCount;
+ Result result;
+ do
+ {
+ result = static_cast<Result>(
+ d.vkGetPhysicalDeviceDisplayPlaneProperties2KHR( m_physicalDevice, &propertyCount, nullptr ) );
+ if ( ( result == Result::eSuccess ) && propertyCount )
+ {
+ properties.resize( propertyCount );
+ result = static_cast<Result>( d.vkGetPhysicalDeviceDisplayPlaneProperties2KHR(
+ m_physicalDevice, &propertyCount, reinterpret_cast<VkDisplayPlaneProperties2KHR *>( properties.data() ) ) );
+ VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( propertyCount < properties.size() ) )
+ {
+ properties.resize( propertyCount );
+ }
+ return createResultValue(
+ result, properties, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getDisplayPlaneProperties2KHR" );
+ }
+
+ template <typename DisplayPlaneProperties2KHRAllocator,
+ typename Dispatch,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, DisplayPlaneProperties2KHR>::value, int>::type>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<DisplayPlaneProperties2KHR, DisplayPlaneProperties2KHRAllocator>>::type
+ PhysicalDevice::getDisplayPlaneProperties2KHR(
+ DisplayPlaneProperties2KHRAllocator & displayPlaneProperties2KHRAllocator, Dispatch const & d ) const
+ {
+ std::vector<DisplayPlaneProperties2KHR, DisplayPlaneProperties2KHRAllocator> properties(
+ displayPlaneProperties2KHRAllocator );
+ uint32_t propertyCount;
+ Result result;
+ do
+ {
+ result = static_cast<Result>(
+ d.vkGetPhysicalDeviceDisplayPlaneProperties2KHR( m_physicalDevice, &propertyCount, nullptr ) );
+ if ( ( result == Result::eSuccess ) && propertyCount )
+ {
+ properties.resize( propertyCount );
+ result = static_cast<Result>( d.vkGetPhysicalDeviceDisplayPlaneProperties2KHR(
+ m_physicalDevice, &propertyCount, reinterpret_cast<VkDisplayPlaneProperties2KHR *>( properties.data() ) ) );
+ VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( propertyCount < properties.size() ) )
+ {
+ properties.resize( propertyCount );
+ }
+ return createResultValue(
+ result, properties, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getDisplayPlaneProperties2KHR" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ PhysicalDevice::getDisplayModeProperties2KHR( VULKAN_HPP_NAMESPACE::DisplayKHR display,
+ uint32_t * pPropertyCount,
+ VULKAN_HPP_NAMESPACE::DisplayModeProperties2KHR * pProperties,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkGetDisplayModeProperties2KHR( m_physicalDevice,
+ static_cast<VkDisplayKHR>( display ),
+ pPropertyCount,
+ reinterpret_cast<VkDisplayModeProperties2KHR *>( pProperties ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename DisplayModeProperties2KHRAllocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<DisplayModeProperties2KHR, DisplayModeProperties2KHRAllocator>>::type
+ PhysicalDevice::getDisplayModeProperties2KHR( VULKAN_HPP_NAMESPACE::DisplayKHR display, Dispatch const & d ) const
+ {
+ std::vector<DisplayModeProperties2KHR, DisplayModeProperties2KHRAllocator> properties;
+ uint32_t propertyCount;
+ Result result;
+ do
+ {
+ result = static_cast<Result>( d.vkGetDisplayModeProperties2KHR(
+ m_physicalDevice, static_cast<VkDisplayKHR>( display ), &propertyCount, nullptr ) );
+ if ( ( result == Result::eSuccess ) && propertyCount )
+ {
+ properties.resize( propertyCount );
+ result = static_cast<Result>(
+ d.vkGetDisplayModeProperties2KHR( m_physicalDevice,
+ static_cast<VkDisplayKHR>( display ),
+ &propertyCount,
+ reinterpret_cast<VkDisplayModeProperties2KHR *>( properties.data() ) ) );
+ VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( propertyCount < properties.size() ) )
+ {
+ properties.resize( propertyCount );
+ }
+ return createResultValue(
+ result, properties, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getDisplayModeProperties2KHR" );
+ }
+
+ template <typename DisplayModeProperties2KHRAllocator,
+ typename Dispatch,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, DisplayModeProperties2KHR>::value, int>::type>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<DisplayModeProperties2KHR, DisplayModeProperties2KHRAllocator>>::type
+ PhysicalDevice::getDisplayModeProperties2KHR(
+ VULKAN_HPP_NAMESPACE::DisplayKHR display,
+ DisplayModeProperties2KHRAllocator & displayModeProperties2KHRAllocator,
+ Dispatch const & d ) const
+ {
+ std::vector<DisplayModeProperties2KHR, DisplayModeProperties2KHRAllocator> properties(
+ displayModeProperties2KHRAllocator );
+ uint32_t propertyCount;
+ Result result;
+ do
+ {
+ result = static_cast<Result>( d.vkGetDisplayModeProperties2KHR(
+ m_physicalDevice, static_cast<VkDisplayKHR>( display ), &propertyCount, nullptr ) );
+ if ( ( result == Result::eSuccess ) && propertyCount )
+ {
+ properties.resize( propertyCount );
+ result = static_cast<Result>(
+ d.vkGetDisplayModeProperties2KHR( m_physicalDevice,
+ static_cast<VkDisplayKHR>( display ),
+ &propertyCount,
+ reinterpret_cast<VkDisplayModeProperties2KHR *>( properties.data() ) ) );
+ VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( propertyCount < properties.size() ) )
+ {
+ properties.resize( propertyCount );
+ }
+ return createResultValue(
+ result, properties, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getDisplayModeProperties2KHR" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result PhysicalDevice::getDisplayPlaneCapabilities2KHR(
+ const VULKAN_HPP_NAMESPACE::DisplayPlaneInfo2KHR * pDisplayPlaneInfo,
+ VULKAN_HPP_NAMESPACE::DisplayPlaneCapabilities2KHR * pCapabilities,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkGetDisplayPlaneCapabilities2KHR( m_physicalDevice,
+ reinterpret_cast<const VkDisplayPlaneInfo2KHR *>( pDisplayPlaneInfo ),
+ reinterpret_cast<VkDisplayPlaneCapabilities2KHR *>( pCapabilities ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::DisplayPlaneCapabilities2KHR>::type
+ PhysicalDevice::getDisplayPlaneCapabilities2KHR( const DisplayPlaneInfo2KHR & displayPlaneInfo,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::DisplayPlaneCapabilities2KHR capabilities;
+ Result result = static_cast<Result>(
+ d.vkGetDisplayPlaneCapabilities2KHR( m_physicalDevice,
+ reinterpret_cast<const VkDisplayPlaneInfo2KHR *>( &displayPlaneInfo ),
+ reinterpret_cast<VkDisplayPlaneCapabilities2KHR *>( &capabilities ) ) );
+ return createResultValue(
+ result, capabilities, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getDisplayPlaneCapabilities2KHR" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#if defined( VK_USE_PLATFORM_IOS_MVK )
+ //=== VK_MVK_ios_surface ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Instance::createIOSSurfaceMVK( const VULKAN_HPP_NAMESPACE::IOSSurfaceCreateInfoMVK * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::SurfaceKHR * pSurface,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkCreateIOSSurfaceMVK( m_instance,
+ reinterpret_cast<const VkIOSSurfaceCreateInfoMVK *>( pCreateInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkSurfaceKHR *>( pSurface ) ) );
+ }
+
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceKHR>::type
+ Instance::createIOSSurfaceMVK( const IOSSurfaceCreateInfoMVK & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::SurfaceKHR surface;
+ Result result = static_cast<Result>(
+ d.vkCreateIOSSurfaceMVK( m_instance,
+ reinterpret_cast<const VkIOSSurfaceCreateInfoMVK *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkSurfaceKHR *>( &surface ) ) );
+ return createResultValue( result, surface, VULKAN_HPP_NAMESPACE_STRING "::Instance::createIOSSurfaceMVK" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>>::type
+ Instance::createIOSSurfaceMVKUnique( const IOSSurfaceCreateInfoMVK & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::SurfaceKHR surface;
+ Result result = static_cast<Result>(
+ d.vkCreateIOSSurfaceMVK( m_instance,
+ reinterpret_cast<const VkIOSSurfaceCreateInfoMVK *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkSurfaceKHR *>( &surface ) ) );
+ ObjectDestroy<Instance, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>(
+ result, surface, VULKAN_HPP_NAMESPACE_STRING "::Instance::createIOSSurfaceMVKUnique", deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_USE_PLATFORM_IOS_MVK*/
+
+#if defined( VK_USE_PLATFORM_MACOS_MVK )
+ //=== VK_MVK_macos_surface ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Instance::createMacOSSurfaceMVK( const VULKAN_HPP_NAMESPACE::MacOSSurfaceCreateInfoMVK * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::SurfaceKHR * pSurface,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkCreateMacOSSurfaceMVK( m_instance,
+ reinterpret_cast<const VkMacOSSurfaceCreateInfoMVK *>( pCreateInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkSurfaceKHR *>( pSurface ) ) );
+ }
+
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceKHR>::type
+ Instance::createMacOSSurfaceMVK( const MacOSSurfaceCreateInfoMVK & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::SurfaceKHR surface;
+ Result result = static_cast<Result>(
+ d.vkCreateMacOSSurfaceMVK( m_instance,
+ reinterpret_cast<const VkMacOSSurfaceCreateInfoMVK *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkSurfaceKHR *>( &surface ) ) );
+ return createResultValue( result, surface, VULKAN_HPP_NAMESPACE_STRING "::Instance::createMacOSSurfaceMVK" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>>::type
+ Instance::createMacOSSurfaceMVKUnique( const MacOSSurfaceCreateInfoMVK & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::SurfaceKHR surface;
+ Result result = static_cast<Result>(
+ d.vkCreateMacOSSurfaceMVK( m_instance,
+ reinterpret_cast<const VkMacOSSurfaceCreateInfoMVK *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkSurfaceKHR *>( &surface ) ) );
+ ObjectDestroy<Instance, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>(
+ result, surface, VULKAN_HPP_NAMESPACE_STRING "::Instance::createMacOSSurfaceMVKUnique", deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_USE_PLATFORM_MACOS_MVK*/
+
+ //=== VK_EXT_debug_utils ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::setDebugUtilsObjectNameEXT(
+ const VULKAN_HPP_NAMESPACE::DebugUtilsObjectNameInfoEXT * pNameInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkSetDebugUtilsObjectNameEXT(
+ m_device, reinterpret_cast<const VkDebugUtilsObjectNameInfoEXT *>( pNameInfo ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type
+ Device::setDebugUtilsObjectNameEXT( const DebugUtilsObjectNameInfoEXT & nameInfo, Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>( d.vkSetDebugUtilsObjectNameEXT(
+ m_device, reinterpret_cast<const VkDebugUtilsObjectNameInfoEXT *>( &nameInfo ) ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::setDebugUtilsObjectNameEXT" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::setDebugUtilsObjectTagEXT(
+ const VULKAN_HPP_NAMESPACE::DebugUtilsObjectTagInfoEXT * pTagInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkSetDebugUtilsObjectTagEXT( m_device, reinterpret_cast<const VkDebugUtilsObjectTagInfoEXT *>( pTagInfo ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type
+ Device::setDebugUtilsObjectTagEXT( const DebugUtilsObjectTagInfoEXT & tagInfo, Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>(
+ d.vkSetDebugUtilsObjectTagEXT( m_device, reinterpret_cast<const VkDebugUtilsObjectTagInfoEXT *>( &tagInfo ) ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::setDebugUtilsObjectTagEXT" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Queue::beginDebugUtilsLabelEXT( const VULKAN_HPP_NAMESPACE::DebugUtilsLabelEXT * pLabelInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkQueueBeginDebugUtilsLabelEXT( m_queue, reinterpret_cast<const VkDebugUtilsLabelEXT *>( pLabelInfo ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Queue::beginDebugUtilsLabelEXT( const DebugUtilsLabelEXT & labelInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkQueueBeginDebugUtilsLabelEXT( m_queue, reinterpret_cast<const VkDebugUtilsLabelEXT *>( &labelInfo ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Queue::endDebugUtilsLabelEXT( Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkQueueEndDebugUtilsLabelEXT( m_queue );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Queue::insertDebugUtilsLabelEXT( const VULKAN_HPP_NAMESPACE::DebugUtilsLabelEXT * pLabelInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkQueueInsertDebugUtilsLabelEXT( m_queue, reinterpret_cast<const VkDebugUtilsLabelEXT *>( pLabelInfo ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Queue::insertDebugUtilsLabelEXT( const DebugUtilsLabelEXT & labelInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkQueueInsertDebugUtilsLabelEXT( m_queue, reinterpret_cast<const VkDebugUtilsLabelEXT *>( &labelInfo ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::beginDebugUtilsLabelEXT( const VULKAN_HPP_NAMESPACE::DebugUtilsLabelEXT * pLabelInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdBeginDebugUtilsLabelEXT( m_commandBuffer, reinterpret_cast<const VkDebugUtilsLabelEXT *>( pLabelInfo ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::beginDebugUtilsLabelEXT( const DebugUtilsLabelEXT & labelInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdBeginDebugUtilsLabelEXT( m_commandBuffer, reinterpret_cast<const VkDebugUtilsLabelEXT *>( &labelInfo ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::endDebugUtilsLabelEXT( Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdEndDebugUtilsLabelEXT( m_commandBuffer );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::insertDebugUtilsLabelEXT( const VULKAN_HPP_NAMESPACE::DebugUtilsLabelEXT * pLabelInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdInsertDebugUtilsLabelEXT( m_commandBuffer, reinterpret_cast<const VkDebugUtilsLabelEXT *>( pLabelInfo ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::insertDebugUtilsLabelEXT( const DebugUtilsLabelEXT & labelInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdInsertDebugUtilsLabelEXT( m_commandBuffer, reinterpret_cast<const VkDebugUtilsLabelEXT *>( &labelInfo ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Instance::createDebugUtilsMessengerEXT( const VULKAN_HPP_NAMESPACE::DebugUtilsMessengerCreateInfoEXT * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::DebugUtilsMessengerEXT * pMessenger,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkCreateDebugUtilsMessengerEXT( m_instance,
+ reinterpret_cast<const VkDebugUtilsMessengerCreateInfoEXT *>( pCreateInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkDebugUtilsMessengerEXT *>( pMessenger ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::DebugUtilsMessengerEXT>::type
+ Instance::createDebugUtilsMessengerEXT( const DebugUtilsMessengerCreateInfoEXT & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::DebugUtilsMessengerEXT messenger;
+ Result result = static_cast<Result>(
+ d.vkCreateDebugUtilsMessengerEXT( m_instance,
+ reinterpret_cast<const VkDebugUtilsMessengerCreateInfoEXT *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkDebugUtilsMessengerEXT *>( &messenger ) ) );
+ return createResultValue(
+ result, messenger, VULKAN_HPP_NAMESPACE_STRING "::Instance::createDebugUtilsMessengerEXT" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::DebugUtilsMessengerEXT, Dispatch>>::type
+ Instance::createDebugUtilsMessengerEXTUnique( const DebugUtilsMessengerCreateInfoEXT & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::DebugUtilsMessengerEXT messenger;
+ Result result = static_cast<Result>(
+ d.vkCreateDebugUtilsMessengerEXT( m_instance,
+ reinterpret_cast<const VkDebugUtilsMessengerCreateInfoEXT *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkDebugUtilsMessengerEXT *>( &messenger ) ) );
+ ObjectDestroy<Instance, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::DebugUtilsMessengerEXT, Dispatch>(
+ result, messenger, VULKAN_HPP_NAMESPACE_STRING "::Instance::createDebugUtilsMessengerEXTUnique", deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ Instance::destroyDebugUtilsMessengerEXT( VULKAN_HPP_NAMESPACE::DebugUtilsMessengerEXT messenger,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyDebugUtilsMessengerEXT( m_instance,
+ static_cast<VkDebugUtilsMessengerEXT>( messenger ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ Instance::destroyDebugUtilsMessengerEXT( VULKAN_HPP_NAMESPACE::DebugUtilsMessengerEXT messenger,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyDebugUtilsMessengerEXT(
+ m_instance,
+ static_cast<VkDebugUtilsMessengerEXT>( messenger ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Instance::destroy( VULKAN_HPP_NAMESPACE::DebugUtilsMessengerEXT messenger,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyDebugUtilsMessengerEXT( m_instance,
+ static_cast<VkDebugUtilsMessengerEXT>( messenger ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Instance::destroy( VULKAN_HPP_NAMESPACE::DebugUtilsMessengerEXT messenger,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyDebugUtilsMessengerEXT(
+ m_instance,
+ static_cast<VkDebugUtilsMessengerEXT>( messenger ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Instance::submitDebugUtilsMessageEXT(
+ VULKAN_HPP_NAMESPACE::DebugUtilsMessageSeverityFlagBitsEXT messageSeverity,
+ VULKAN_HPP_NAMESPACE::DebugUtilsMessageTypeFlagsEXT messageTypes,
+ const VULKAN_HPP_NAMESPACE::DebugUtilsMessengerCallbackDataEXT * pCallbackData,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkSubmitDebugUtilsMessageEXT( m_instance,
+ static_cast<VkDebugUtilsMessageSeverityFlagBitsEXT>( messageSeverity ),
+ static_cast<VkDebugUtilsMessageTypeFlagsEXT>( messageTypes ),
+ reinterpret_cast<const VkDebugUtilsMessengerCallbackDataEXT *>( pCallbackData ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ Instance::submitDebugUtilsMessageEXT( VULKAN_HPP_NAMESPACE::DebugUtilsMessageSeverityFlagBitsEXT messageSeverity,
+ VULKAN_HPP_NAMESPACE::DebugUtilsMessageTypeFlagsEXT messageTypes,
+ const DebugUtilsMessengerCallbackDataEXT & callbackData,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkSubmitDebugUtilsMessageEXT( m_instance,
+ static_cast<VkDebugUtilsMessageSeverityFlagBitsEXT>( messageSeverity ),
+ static_cast<VkDebugUtilsMessageTypeFlagsEXT>( messageTypes ),
+ reinterpret_cast<const VkDebugUtilsMessengerCallbackDataEXT *>( &callbackData ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#if defined( VK_USE_PLATFORM_ANDROID_KHR )
+ //=== VK_ANDROID_external_memory_android_hardware_buffer ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getAndroidHardwareBufferPropertiesANDROID(
+ const struct AHardwareBuffer * buffer,
+ VULKAN_HPP_NAMESPACE::AndroidHardwareBufferPropertiesANDROID * pProperties,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkGetAndroidHardwareBufferPropertiesANDROID(
+ m_device, buffer, reinterpret_cast<VkAndroidHardwareBufferPropertiesANDROID *>( pProperties ) ) );
+ }
+
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::AndroidHardwareBufferPropertiesANDROID>::type
+ Device::getAndroidHardwareBufferPropertiesANDROID( const struct AHardwareBuffer & buffer, Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::AndroidHardwareBufferPropertiesANDROID properties;
+ Result result = static_cast<Result>( d.vkGetAndroidHardwareBufferPropertiesANDROID(
+ m_device, &buffer, reinterpret_cast<VkAndroidHardwareBufferPropertiesANDROID *>( &properties ) ) );
+ return createResultValue(
+ result, properties, VULKAN_HPP_NAMESPACE_STRING "::Device::getAndroidHardwareBufferPropertiesANDROID" );
+ }
+
+ template <typename X, typename Y, typename... Z, typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<StructureChain<X, Y, Z...>>::type
+ Device::getAndroidHardwareBufferPropertiesANDROID( const struct AHardwareBuffer & buffer, Dispatch const & d ) const
+ {
+ StructureChain<X, Y, Z...> structureChain;
+ VULKAN_HPP_NAMESPACE::AndroidHardwareBufferPropertiesANDROID & properties =
+ structureChain.template get<VULKAN_HPP_NAMESPACE::AndroidHardwareBufferPropertiesANDROID>();
+ Result result = static_cast<Result>( d.vkGetAndroidHardwareBufferPropertiesANDROID(
+ m_device, &buffer, reinterpret_cast<VkAndroidHardwareBufferPropertiesANDROID *>( &properties ) ) );
+ return createResultValue(
+ result, structureChain, VULKAN_HPP_NAMESPACE_STRING "::Device::getAndroidHardwareBufferPropertiesANDROID" );
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getMemoryAndroidHardwareBufferANDROID(
+ const VULKAN_HPP_NAMESPACE::MemoryGetAndroidHardwareBufferInfoANDROID * pInfo,
+ struct AHardwareBuffer ** pBuffer,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkGetMemoryAndroidHardwareBufferANDROID(
+ m_device, reinterpret_cast<const VkMemoryGetAndroidHardwareBufferInfoANDROID *>( pInfo ), pBuffer ) );
+ }
+
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<struct AHardwareBuffer *>::type
+ Device::getMemoryAndroidHardwareBufferANDROID( const MemoryGetAndroidHardwareBufferInfoANDROID & info,
+ Dispatch const & d ) const
+ {
+ struct AHardwareBuffer * buffer;
+ Result result = static_cast<Result>( d.vkGetMemoryAndroidHardwareBufferANDROID(
+ m_device, reinterpret_cast<const VkMemoryGetAndroidHardwareBufferInfoANDROID *>( &info ), &buffer ) );
+ return createResultValue(
+ result, buffer, VULKAN_HPP_NAMESPACE_STRING "::Device::getMemoryAndroidHardwareBufferANDROID" );
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
+
+ //=== VK_EXT_sample_locations ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::setSampleLocationsEXT( const VULKAN_HPP_NAMESPACE::SampleLocationsInfoEXT * pSampleLocationsInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdSetSampleLocationsEXT( m_commandBuffer,
+ reinterpret_cast<const VkSampleLocationsInfoEXT *>( pSampleLocationsInfo ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::setSampleLocationsEXT( const SampleLocationsInfoEXT & sampleLocationsInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdSetSampleLocationsEXT( m_commandBuffer,
+ reinterpret_cast<const VkSampleLocationsInfoEXT *>( &sampleLocationsInfo ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void PhysicalDevice::getMultisamplePropertiesEXT(
+ VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples,
+ VULKAN_HPP_NAMESPACE::MultisamplePropertiesEXT * pMultisampleProperties,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkGetPhysicalDeviceMultisamplePropertiesEXT(
+ m_physicalDevice,
+ static_cast<VkSampleCountFlagBits>( samples ),
+ reinterpret_cast<VkMultisamplePropertiesEXT *>( pMultisampleProperties ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::MultisamplePropertiesEXT
+ PhysicalDevice::getMultisamplePropertiesEXT( VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_NAMESPACE::MultisamplePropertiesEXT multisampleProperties;
+ d.vkGetPhysicalDeviceMultisamplePropertiesEXT(
+ m_physicalDevice,
+ static_cast<VkSampleCountFlagBits>( samples ),
+ reinterpret_cast<VkMultisamplePropertiesEXT *>( &multisampleProperties ) );
+ return multisampleProperties;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_KHR_get_memory_requirements2 ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ Device::getImageMemoryRequirements2KHR( const VULKAN_HPP_NAMESPACE::ImageMemoryRequirementsInfo2 * pInfo,
+ VULKAN_HPP_NAMESPACE::MemoryRequirements2 * pMemoryRequirements,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkGetImageMemoryRequirements2KHR( m_device,
+ reinterpret_cast<const VkImageMemoryRequirementsInfo2 *>( pInfo ),
+ reinterpret_cast<VkMemoryRequirements2 *>( pMemoryRequirements ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::MemoryRequirements2
+ Device::getImageMemoryRequirements2KHR( const ImageMemoryRequirementsInfo2 & info,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_NAMESPACE::MemoryRequirements2 memoryRequirements;
+ d.vkGetImageMemoryRequirements2KHR( m_device,
+ reinterpret_cast<const VkImageMemoryRequirementsInfo2 *>( &info ),
+ reinterpret_cast<VkMemoryRequirements2 *>( &memoryRequirements ) );
+ return memoryRequirements;
+ }
+
+ template <typename X, typename Y, typename... Z, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE StructureChain<X, Y, Z...>
+ Device::getImageMemoryRequirements2KHR( const ImageMemoryRequirementsInfo2 & info,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ StructureChain<X, Y, Z...> structureChain;
+ VULKAN_HPP_NAMESPACE::MemoryRequirements2 & memoryRequirements =
+ structureChain.template get<VULKAN_HPP_NAMESPACE::MemoryRequirements2>();
+ d.vkGetImageMemoryRequirements2KHR( m_device,
+ reinterpret_cast<const VkImageMemoryRequirementsInfo2 *>( &info ),
+ reinterpret_cast<VkMemoryRequirements2 *>( &memoryRequirements ) );
+ return structureChain;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ Device::getBufferMemoryRequirements2KHR( const VULKAN_HPP_NAMESPACE::BufferMemoryRequirementsInfo2 * pInfo,
+ VULKAN_HPP_NAMESPACE::MemoryRequirements2 * pMemoryRequirements,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkGetBufferMemoryRequirements2KHR( m_device,
+ reinterpret_cast<const VkBufferMemoryRequirementsInfo2 *>( pInfo ),
+ reinterpret_cast<VkMemoryRequirements2 *>( pMemoryRequirements ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::MemoryRequirements2
+ Device::getBufferMemoryRequirements2KHR( const BufferMemoryRequirementsInfo2 & info,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_NAMESPACE::MemoryRequirements2 memoryRequirements;
+ d.vkGetBufferMemoryRequirements2KHR( m_device,
+ reinterpret_cast<const VkBufferMemoryRequirementsInfo2 *>( &info ),
+ reinterpret_cast<VkMemoryRequirements2 *>( &memoryRequirements ) );
+ return memoryRequirements;
+ }
+
+ template <typename X, typename Y, typename... Z, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE StructureChain<X, Y, Z...>
+ Device::getBufferMemoryRequirements2KHR( const BufferMemoryRequirementsInfo2 & info,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ StructureChain<X, Y, Z...> structureChain;
+ VULKAN_HPP_NAMESPACE::MemoryRequirements2 & memoryRequirements =
+ structureChain.template get<VULKAN_HPP_NAMESPACE::MemoryRequirements2>();
+ d.vkGetBufferMemoryRequirements2KHR( m_device,
+ reinterpret_cast<const VkBufferMemoryRequirementsInfo2 *>( &info ),
+ reinterpret_cast<VkMemoryRequirements2 *>( &memoryRequirements ) );
+ return structureChain;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::getImageSparseMemoryRequirements2KHR(
+ const VULKAN_HPP_NAMESPACE::ImageSparseMemoryRequirementsInfo2 * pInfo,
+ uint32_t * pSparseMemoryRequirementCount,
+ VULKAN_HPP_NAMESPACE::SparseImageMemoryRequirements2 * pSparseMemoryRequirements,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkGetImageSparseMemoryRequirements2KHR(
+ m_device,
+ reinterpret_cast<const VkImageSparseMemoryRequirementsInfo2 *>( pInfo ),
+ pSparseMemoryRequirementCount,
+ reinterpret_cast<VkSparseImageMemoryRequirements2 *>( pSparseMemoryRequirements ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename SparseImageMemoryRequirements2Allocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD
+ VULKAN_HPP_INLINE std::vector<SparseImageMemoryRequirements2, SparseImageMemoryRequirements2Allocator>
+ Device::getImageSparseMemoryRequirements2KHR( const ImageSparseMemoryRequirementsInfo2 & info,
+ Dispatch const & d ) const
+ {
+ std::vector<SparseImageMemoryRequirements2, SparseImageMemoryRequirements2Allocator> sparseMemoryRequirements;
+ uint32_t sparseMemoryRequirementCount;
+ d.vkGetImageSparseMemoryRequirements2KHR( m_device,
+ reinterpret_cast<const VkImageSparseMemoryRequirementsInfo2 *>( &info ),
+ &sparseMemoryRequirementCount,
+ nullptr );
+ sparseMemoryRequirements.resize( sparseMemoryRequirementCount );
+ d.vkGetImageSparseMemoryRequirements2KHR(
+ m_device,
+ reinterpret_cast<const VkImageSparseMemoryRequirementsInfo2 *>( &info ),
+ &sparseMemoryRequirementCount,
+ reinterpret_cast<VkSparseImageMemoryRequirements2 *>( sparseMemoryRequirements.data() ) );
+ VULKAN_HPP_ASSERT( sparseMemoryRequirementCount <= sparseMemoryRequirements.size() );
+ return sparseMemoryRequirements;
+ }
+
+ template <
+ typename SparseImageMemoryRequirements2Allocator,
+ typename Dispatch,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, SparseImageMemoryRequirements2>::value, int>::type>
+ VULKAN_HPP_NODISCARD
+ VULKAN_HPP_INLINE std::vector<SparseImageMemoryRequirements2, SparseImageMemoryRequirements2Allocator>
+ Device::getImageSparseMemoryRequirements2KHR(
+ const ImageSparseMemoryRequirementsInfo2 & info,
+ SparseImageMemoryRequirements2Allocator & sparseImageMemoryRequirements2Allocator,
+ Dispatch const & d ) const
+ {
+ std::vector<SparseImageMemoryRequirements2, SparseImageMemoryRequirements2Allocator> sparseMemoryRequirements(
+ sparseImageMemoryRequirements2Allocator );
+ uint32_t sparseMemoryRequirementCount;
+ d.vkGetImageSparseMemoryRequirements2KHR( m_device,
+ reinterpret_cast<const VkImageSparseMemoryRequirementsInfo2 *>( &info ),
+ &sparseMemoryRequirementCount,
+ nullptr );
+ sparseMemoryRequirements.resize( sparseMemoryRequirementCount );
+ d.vkGetImageSparseMemoryRequirements2KHR(
+ m_device,
+ reinterpret_cast<const VkImageSparseMemoryRequirementsInfo2 *>( &info ),
+ &sparseMemoryRequirementCount,
+ reinterpret_cast<VkSparseImageMemoryRequirements2 *>( sparseMemoryRequirements.data() ) );
+ VULKAN_HPP_ASSERT( sparseMemoryRequirementCount <= sparseMemoryRequirements.size() );
+ return sparseMemoryRequirements;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_KHR_acceleration_structure ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::createAccelerationStructureKHR(
+ const VULKAN_HPP_NAMESPACE::AccelerationStructureCreateInfoKHR * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::AccelerationStructureKHR * pAccelerationStructure,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkCreateAccelerationStructureKHR( m_device,
+ reinterpret_cast<const VkAccelerationStructureCreateInfoKHR *>( pCreateInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkAccelerationStructureKHR *>( pAccelerationStructure ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::AccelerationStructureKHR>::type
+ Device::createAccelerationStructureKHR( const AccelerationStructureCreateInfoKHR & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::AccelerationStructureKHR accelerationStructure;
+ Result result = static_cast<Result>( d.vkCreateAccelerationStructureKHR(
+ m_device,
+ reinterpret_cast<const VkAccelerationStructureCreateInfoKHR *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkAccelerationStructureKHR *>( &accelerationStructure ) ) );
+ return createResultValue(
+ result, accelerationStructure, VULKAN_HPP_NAMESPACE_STRING "::Device::createAccelerationStructureKHR" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::AccelerationStructureKHR, Dispatch>>::type
+ Device::createAccelerationStructureKHRUnique( const AccelerationStructureCreateInfoKHR & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::AccelerationStructureKHR accelerationStructure;
+ Result result = static_cast<Result>( d.vkCreateAccelerationStructureKHR(
+ m_device,
+ reinterpret_cast<const VkAccelerationStructureCreateInfoKHR *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkAccelerationStructureKHR *>( &accelerationStructure ) ) );
+ ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::AccelerationStructureKHR, Dispatch>(
+ result,
+ accelerationStructure,
+ VULKAN_HPP_NAMESPACE_STRING "::Device::createAccelerationStructureKHRUnique",
+ deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ Device::destroyAccelerationStructureKHR( VULKAN_HPP_NAMESPACE::AccelerationStructureKHR accelerationStructure,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyAccelerationStructureKHR( m_device,
+ static_cast<VkAccelerationStructureKHR>( accelerationStructure ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ Device::destroyAccelerationStructureKHR( VULKAN_HPP_NAMESPACE::AccelerationStructureKHR accelerationStructure,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyAccelerationStructureKHR(
+ m_device,
+ static_cast<VkAccelerationStructureKHR>( accelerationStructure ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::AccelerationStructureKHR accelerationStructure,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyAccelerationStructureKHR( m_device,
+ static_cast<VkAccelerationStructureKHR>( accelerationStructure ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::AccelerationStructureKHR accelerationStructure,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyAccelerationStructureKHR(
+ m_device,
+ static_cast<VkAccelerationStructureKHR>( accelerationStructure ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::buildAccelerationStructuresKHR(
+ uint32_t infoCount,
+ const VULKAN_HPP_NAMESPACE::AccelerationStructureBuildGeometryInfoKHR * pInfos,
+ const VULKAN_HPP_NAMESPACE::AccelerationStructureBuildRangeInfoKHR * const * ppBuildRangeInfos,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdBuildAccelerationStructuresKHR(
+ m_commandBuffer,
+ infoCount,
+ reinterpret_cast<const VkAccelerationStructureBuildGeometryInfoKHR *>( pInfos ),
+ reinterpret_cast<const VkAccelerationStructureBuildRangeInfoKHR * const *>( ppBuildRangeInfos ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::buildAccelerationStructuresKHR(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::AccelerationStructureBuildGeometryInfoKHR> const & infos,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::AccelerationStructureBuildRangeInfoKHR * const> const & pBuildRangeInfos,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS
+ {
+# ifdef VULKAN_HPP_NO_EXCEPTIONS
+ VULKAN_HPP_ASSERT( infos.size() == pBuildRangeInfos.size() );
+# else
+ if ( infos.size() != pBuildRangeInfos.size() )
+ {
+ throw LogicError( VULKAN_HPP_NAMESPACE_STRING
+ "::CommandBuffer::buildAccelerationStructuresKHR: infos.size() != pBuildRangeInfos.size()" );
+ }
+# endif /*VULKAN_HPP_NO_EXCEPTIONS*/
+
+ d.vkCmdBuildAccelerationStructuresKHR(
+ m_commandBuffer,
+ infos.size(),
+ reinterpret_cast<const VkAccelerationStructureBuildGeometryInfoKHR *>( infos.data() ),
+ reinterpret_cast<const VkAccelerationStructureBuildRangeInfoKHR * const *>( pBuildRangeInfos.data() ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::buildAccelerationStructuresIndirectKHR(
+ uint32_t infoCount,
+ const VULKAN_HPP_NAMESPACE::AccelerationStructureBuildGeometryInfoKHR * pInfos,
+ const VULKAN_HPP_NAMESPACE::DeviceAddress * pIndirectDeviceAddresses,
+ const uint32_t * pIndirectStrides,
+ const uint32_t * const * ppMaxPrimitiveCounts,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdBuildAccelerationStructuresIndirectKHR(
+ m_commandBuffer,
+ infoCount,
+ reinterpret_cast<const VkAccelerationStructureBuildGeometryInfoKHR *>( pInfos ),
+ reinterpret_cast<const VkDeviceAddress *>( pIndirectDeviceAddresses ),
+ pIndirectStrides,
+ ppMaxPrimitiveCounts );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::buildAccelerationStructuresIndirectKHR(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::AccelerationStructureBuildGeometryInfoKHR> const & infos,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::DeviceAddress> const & indirectDeviceAddresses,
+ ArrayProxy<const uint32_t> const & indirectStrides,
+ ArrayProxy<const uint32_t * const> const & pMaxPrimitiveCounts,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS
+ {
+# ifdef VULKAN_HPP_NO_EXCEPTIONS
+ VULKAN_HPP_ASSERT( infos.size() == indirectDeviceAddresses.size() );
+ VULKAN_HPP_ASSERT( infos.size() == indirectStrides.size() );
+ VULKAN_HPP_ASSERT( infos.size() == pMaxPrimitiveCounts.size() );
+# else
+ if ( infos.size() != indirectDeviceAddresses.size() )
+ {
+ throw LogicError(
+ VULKAN_HPP_NAMESPACE_STRING
+ "::CommandBuffer::buildAccelerationStructuresIndirectKHR: infos.size() != indirectDeviceAddresses.size()" );
+ }
+ if ( infos.size() != indirectStrides.size() )
+ {
+ throw LogicError(
+ VULKAN_HPP_NAMESPACE_STRING
+ "::CommandBuffer::buildAccelerationStructuresIndirectKHR: infos.size() != indirectStrides.size()" );
+ }
+ if ( infos.size() != pMaxPrimitiveCounts.size() )
+ {
+ throw LogicError(
+ VULKAN_HPP_NAMESPACE_STRING
+ "::CommandBuffer::buildAccelerationStructuresIndirectKHR: infos.size() != pMaxPrimitiveCounts.size()" );
+ }
+# endif /*VULKAN_HPP_NO_EXCEPTIONS*/
+
+ d.vkCmdBuildAccelerationStructuresIndirectKHR(
+ m_commandBuffer,
+ infos.size(),
+ reinterpret_cast<const VkAccelerationStructureBuildGeometryInfoKHR *>( infos.data() ),
+ reinterpret_cast<const VkDeviceAddress *>( indirectDeviceAddresses.data() ),
+ indirectStrides.data(),
+ pMaxPrimitiveCounts.data() );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::buildAccelerationStructuresKHR(
+ VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation,
+ uint32_t infoCount,
+ const VULKAN_HPP_NAMESPACE::AccelerationStructureBuildGeometryInfoKHR * pInfos,
+ const VULKAN_HPP_NAMESPACE::AccelerationStructureBuildRangeInfoKHR * const * ppBuildRangeInfos,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkBuildAccelerationStructuresKHR(
+ m_device,
+ static_cast<VkDeferredOperationKHR>( deferredOperation ),
+ infoCount,
+ reinterpret_cast<const VkAccelerationStructureBuildGeometryInfoKHR *>( pInfos ),
+ reinterpret_cast<const VkAccelerationStructureBuildRangeInfoKHR * const *>( ppBuildRangeInfos ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE Result Device::buildAccelerationStructuresKHR(
+ VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::AccelerationStructureBuildGeometryInfoKHR> const & infos,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::AccelerationStructureBuildRangeInfoKHR * const> const & pBuildRangeInfos,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS
+ {
+# ifdef VULKAN_HPP_NO_EXCEPTIONS
+ VULKAN_HPP_ASSERT( infos.size() == pBuildRangeInfos.size() );
+# else
+ if ( infos.size() != pBuildRangeInfos.size() )
+ {
+ throw LogicError( VULKAN_HPP_NAMESPACE_STRING
+ "::Device::buildAccelerationStructuresKHR: infos.size() != pBuildRangeInfos.size()" );
+ }
+# endif /*VULKAN_HPP_NO_EXCEPTIONS*/
+
+ Result result = static_cast<Result>( d.vkBuildAccelerationStructuresKHR(
+ m_device,
+ static_cast<VkDeferredOperationKHR>( deferredOperation ),
+ infos.size(),
+ reinterpret_cast<const VkAccelerationStructureBuildGeometryInfoKHR *>( infos.data() ),
+ reinterpret_cast<const VkAccelerationStructureBuildRangeInfoKHR * const *>( pBuildRangeInfos.data() ) ) );
+ return createResultValue( result,
+ VULKAN_HPP_NAMESPACE_STRING "::Device::buildAccelerationStructuresKHR",
+ { VULKAN_HPP_NAMESPACE::Result::eSuccess,
+ VULKAN_HPP_NAMESPACE::Result::eOperationDeferredKHR,
+ VULKAN_HPP_NAMESPACE::Result::eOperationNotDeferredKHR } );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::copyAccelerationStructureKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation,
+ const VULKAN_HPP_NAMESPACE::CopyAccelerationStructureInfoKHR * pInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkCopyAccelerationStructureKHR( m_device,
+ static_cast<VkDeferredOperationKHR>( deferredOperation ),
+ reinterpret_cast<const VkCopyAccelerationStructureInfoKHR *>( pInfo ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::copyAccelerationStructureKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation,
+ const CopyAccelerationStructureInfoKHR & info,
+ Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>(
+ d.vkCopyAccelerationStructureKHR( m_device,
+ static_cast<VkDeferredOperationKHR>( deferredOperation ),
+ reinterpret_cast<const VkCopyAccelerationStructureInfoKHR *>( &info ) ) );
+ return createResultValue( result,
+ VULKAN_HPP_NAMESPACE_STRING "::Device::copyAccelerationStructureKHR",
+ { VULKAN_HPP_NAMESPACE::Result::eSuccess,
+ VULKAN_HPP_NAMESPACE::Result::eOperationDeferredKHR,
+ VULKAN_HPP_NAMESPACE::Result::eOperationNotDeferredKHR } );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::copyAccelerationStructureToMemoryKHR(
+ VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation,
+ const VULKAN_HPP_NAMESPACE::CopyAccelerationStructureToMemoryInfoKHR * pInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkCopyAccelerationStructureToMemoryKHR(
+ m_device,
+ static_cast<VkDeferredOperationKHR>( deferredOperation ),
+ reinterpret_cast<const VkCopyAccelerationStructureToMemoryInfoKHR *>( pInfo ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::copyAccelerationStructureToMemoryKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation,
+ const CopyAccelerationStructureToMemoryInfoKHR & info,
+ Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>( d.vkCopyAccelerationStructureToMemoryKHR(
+ m_device,
+ static_cast<VkDeferredOperationKHR>( deferredOperation ),
+ reinterpret_cast<const VkCopyAccelerationStructureToMemoryInfoKHR *>( &info ) ) );
+ return createResultValue( result,
+ VULKAN_HPP_NAMESPACE_STRING "::Device::copyAccelerationStructureToMemoryKHR",
+ { VULKAN_HPP_NAMESPACE::Result::eSuccess,
+ VULKAN_HPP_NAMESPACE::Result::eOperationDeferredKHR,
+ VULKAN_HPP_NAMESPACE::Result::eOperationNotDeferredKHR } );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::copyMemoryToAccelerationStructureKHR(
+ VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation,
+ const VULKAN_HPP_NAMESPACE::CopyMemoryToAccelerationStructureInfoKHR * pInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkCopyMemoryToAccelerationStructureKHR(
+ m_device,
+ static_cast<VkDeferredOperationKHR>( deferredOperation ),
+ reinterpret_cast<const VkCopyMemoryToAccelerationStructureInfoKHR *>( pInfo ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::copyMemoryToAccelerationStructureKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation,
+ const CopyMemoryToAccelerationStructureInfoKHR & info,
+ Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>( d.vkCopyMemoryToAccelerationStructureKHR(
+ m_device,
+ static_cast<VkDeferredOperationKHR>( deferredOperation ),
+ reinterpret_cast<const VkCopyMemoryToAccelerationStructureInfoKHR *>( &info ) ) );
+ return createResultValue( result,
+ VULKAN_HPP_NAMESPACE_STRING "::Device::copyMemoryToAccelerationStructureKHR",
+ { VULKAN_HPP_NAMESPACE::Result::eSuccess,
+ VULKAN_HPP_NAMESPACE::Result::eOperationDeferredKHR,
+ VULKAN_HPP_NAMESPACE::Result::eOperationNotDeferredKHR } );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::writeAccelerationStructuresPropertiesKHR(
+ uint32_t accelerationStructureCount,
+ const VULKAN_HPP_NAMESPACE::AccelerationStructureKHR * pAccelerationStructures,
+ VULKAN_HPP_NAMESPACE::QueryType queryType,
+ size_t dataSize,
+ void * pData,
+ size_t stride,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkWriteAccelerationStructuresPropertiesKHR(
+ m_device,
+ accelerationStructureCount,
+ reinterpret_cast<const VkAccelerationStructureKHR *>( pAccelerationStructures ),
+ static_cast<VkQueryType>( queryType ),
+ dataSize,
+ pData,
+ stride ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename T, typename Dispatch>
+ VULKAN_HPP_DEPRECATED( "This function is deprecated. Use one of the other flavours of it." )
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<void>::type Device::writeAccelerationStructuresPropertiesKHR(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::AccelerationStructureKHR> const & accelerationStructures,
+ VULKAN_HPP_NAMESPACE::QueryType queryType,
+ ArrayProxy<T> const & data,
+ size_t stride,
+ Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>( d.vkWriteAccelerationStructuresPropertiesKHR(
+ m_device,
+ accelerationStructures.size(),
+ reinterpret_cast<const VkAccelerationStructureKHR *>( accelerationStructures.data() ),
+ static_cast<VkQueryType>( queryType ),
+ data.size() * sizeof( T ),
+ reinterpret_cast<void *>( data.data() ),
+ stride ) );
+ return createResultValue( result,
+ VULKAN_HPP_NAMESPACE_STRING "::Device::writeAccelerationStructuresPropertiesKHR" );
+ }
+
+ template <typename T, typename Allocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<std::vector<T, Allocator>>::type
+ Device::writeAccelerationStructuresPropertiesKHR(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::AccelerationStructureKHR> const & accelerationStructures,
+ VULKAN_HPP_NAMESPACE::QueryType queryType,
+ size_t dataSize,
+ size_t stride,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_ASSERT( dataSize % sizeof( T ) == 0 );
+ std::vector<T, Allocator> data( dataSize / sizeof( T ) );
+ Result result = static_cast<Result>( d.vkWriteAccelerationStructuresPropertiesKHR(
+ m_device,
+ accelerationStructures.size(),
+ reinterpret_cast<const VkAccelerationStructureKHR *>( accelerationStructures.data() ),
+ static_cast<VkQueryType>( queryType ),
+ data.size() * sizeof( T ),
+ reinterpret_cast<void *>( data.data() ),
+ stride ) );
+ return createResultValue(
+ result, data, VULKAN_HPP_NAMESPACE_STRING "::Device::writeAccelerationStructuresPropertiesKHR" );
+ }
+
+ template <typename T, typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<T>::type
+ Device::writeAccelerationStructuresPropertyKHR(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::AccelerationStructureKHR> const & accelerationStructures,
+ VULKAN_HPP_NAMESPACE::QueryType queryType,
+ size_t stride,
+ Dispatch const & d ) const
+ {
+ T data;
+ Result result = static_cast<Result>( d.vkWriteAccelerationStructuresPropertiesKHR(
+ m_device,
+ accelerationStructures.size(),
+ reinterpret_cast<const VkAccelerationStructureKHR *>( accelerationStructures.data() ),
+ static_cast<VkQueryType>( queryType ),
+ sizeof( T ),
+ reinterpret_cast<void *>( &data ),
+ stride ) );
+ return createResultValue(
+ result, data, VULKAN_HPP_NAMESPACE_STRING "::Device::writeAccelerationStructuresPropertyKHR" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::copyAccelerationStructureKHR( const VULKAN_HPP_NAMESPACE::CopyAccelerationStructureInfoKHR * pInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdCopyAccelerationStructureKHR( m_commandBuffer,
+ reinterpret_cast<const VkCopyAccelerationStructureInfoKHR *>( pInfo ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::copyAccelerationStructureKHR( const CopyAccelerationStructureInfoKHR & info,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdCopyAccelerationStructureKHR( m_commandBuffer,
+ reinterpret_cast<const VkCopyAccelerationStructureInfoKHR *>( &info ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::copyAccelerationStructureToMemoryKHR(
+ const VULKAN_HPP_NAMESPACE::CopyAccelerationStructureToMemoryInfoKHR * pInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdCopyAccelerationStructureToMemoryKHR(
+ m_commandBuffer, reinterpret_cast<const VkCopyAccelerationStructureToMemoryInfoKHR *>( pInfo ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::copyAccelerationStructureToMemoryKHR( const CopyAccelerationStructureToMemoryInfoKHR & info,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdCopyAccelerationStructureToMemoryKHR(
+ m_commandBuffer, reinterpret_cast<const VkCopyAccelerationStructureToMemoryInfoKHR *>( &info ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::copyMemoryToAccelerationStructureKHR(
+ const VULKAN_HPP_NAMESPACE::CopyMemoryToAccelerationStructureInfoKHR * pInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdCopyMemoryToAccelerationStructureKHR(
+ m_commandBuffer, reinterpret_cast<const VkCopyMemoryToAccelerationStructureInfoKHR *>( pInfo ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::copyMemoryToAccelerationStructureKHR( const CopyMemoryToAccelerationStructureInfoKHR & info,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdCopyMemoryToAccelerationStructureKHR(
+ m_commandBuffer, reinterpret_cast<const VkCopyMemoryToAccelerationStructureInfoKHR *>( &info ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE DeviceAddress Device::getAccelerationStructureAddressKHR(
+ const VULKAN_HPP_NAMESPACE::AccelerationStructureDeviceAddressInfoKHR * pInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<DeviceAddress>( d.vkGetAccelerationStructureDeviceAddressKHR(
+ m_device, reinterpret_cast<const VkAccelerationStructureDeviceAddressInfoKHR *>( pInfo ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE DeviceAddress Device::getAccelerationStructureAddressKHR(
+ const AccelerationStructureDeviceAddressInfoKHR & info, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return d.vkGetAccelerationStructureDeviceAddressKHR(
+ m_device, reinterpret_cast<const VkAccelerationStructureDeviceAddressInfoKHR *>( &info ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::writeAccelerationStructuresPropertiesKHR(
+ uint32_t accelerationStructureCount,
+ const VULKAN_HPP_NAMESPACE::AccelerationStructureKHR * pAccelerationStructures,
+ VULKAN_HPP_NAMESPACE::QueryType queryType,
+ VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ uint32_t firstQuery,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdWriteAccelerationStructuresPropertiesKHR(
+ m_commandBuffer,
+ accelerationStructureCount,
+ reinterpret_cast<const VkAccelerationStructureKHR *>( pAccelerationStructures ),
+ static_cast<VkQueryType>( queryType ),
+ static_cast<VkQueryPool>( queryPool ),
+ firstQuery );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::writeAccelerationStructuresPropertiesKHR(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::AccelerationStructureKHR> const & accelerationStructures,
+ VULKAN_HPP_NAMESPACE::QueryType queryType,
+ VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ uint32_t firstQuery,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdWriteAccelerationStructuresPropertiesKHR(
+ m_commandBuffer,
+ accelerationStructures.size(),
+ reinterpret_cast<const VkAccelerationStructureKHR *>( accelerationStructures.data() ),
+ static_cast<VkQueryType>( queryType ),
+ static_cast<VkQueryPool>( queryPool ),
+ firstQuery );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::getAccelerationStructureCompatibilityKHR(
+ const VULKAN_HPP_NAMESPACE::AccelerationStructureVersionInfoKHR * pVersionInfo,
+ VULKAN_HPP_NAMESPACE::AccelerationStructureCompatibilityKHR * pCompatibility,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkGetDeviceAccelerationStructureCompatibilityKHR(
+ m_device,
+ reinterpret_cast<const VkAccelerationStructureVersionInfoKHR *>( pVersionInfo ),
+ reinterpret_cast<VkAccelerationStructureCompatibilityKHR *>( pCompatibility ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::AccelerationStructureCompatibilityKHR
+ Device::getAccelerationStructureCompatibilityKHR( const AccelerationStructureVersionInfoKHR & versionInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_NAMESPACE::AccelerationStructureCompatibilityKHR compatibility;
+ d.vkGetDeviceAccelerationStructureCompatibilityKHR(
+ m_device,
+ reinterpret_cast<const VkAccelerationStructureVersionInfoKHR *>( &versionInfo ),
+ reinterpret_cast<VkAccelerationStructureCompatibilityKHR *>( &compatibility ) );
+ return compatibility;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::getAccelerationStructureBuildSizesKHR(
+ VULKAN_HPP_NAMESPACE::AccelerationStructureBuildTypeKHR buildType,
+ const VULKAN_HPP_NAMESPACE::AccelerationStructureBuildGeometryInfoKHR * pBuildInfo,
+ const uint32_t * pMaxPrimitiveCounts,
+ VULKAN_HPP_NAMESPACE::AccelerationStructureBuildSizesInfoKHR * pSizeInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkGetAccelerationStructureBuildSizesKHR(
+ m_device,
+ static_cast<VkAccelerationStructureBuildTypeKHR>( buildType ),
+ reinterpret_cast<const VkAccelerationStructureBuildGeometryInfoKHR *>( pBuildInfo ),
+ pMaxPrimitiveCounts,
+ reinterpret_cast<VkAccelerationStructureBuildSizesInfoKHR *>( pSizeInfo ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::AccelerationStructureBuildSizesInfoKHR
+ Device::getAccelerationStructureBuildSizesKHR( VULKAN_HPP_NAMESPACE::AccelerationStructureBuildTypeKHR buildType,
+ const AccelerationStructureBuildGeometryInfoKHR & buildInfo,
+ ArrayProxy<const uint32_t> const & maxPrimitiveCounts,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS
+ {
+# ifdef VULKAN_HPP_NO_EXCEPTIONS
+ VULKAN_HPP_ASSERT( maxPrimitiveCounts.size() == buildInfo.geometryCount );
+# else
+ if ( maxPrimitiveCounts.size() != buildInfo.geometryCount )
+ {
+ throw LogicError(
+ VULKAN_HPP_NAMESPACE_STRING
+ "::Device::getAccelerationStructureBuildSizesKHR: maxPrimitiveCounts.size() != buildInfo.geometryCount" );
+ }
+# endif /*VULKAN_HPP_NO_EXCEPTIONS*/
+ VULKAN_HPP_NAMESPACE::AccelerationStructureBuildSizesInfoKHR sizeInfo;
+ d.vkGetAccelerationStructureBuildSizesKHR(
+ m_device,
+ static_cast<VkAccelerationStructureBuildTypeKHR>( buildType ),
+ reinterpret_cast<const VkAccelerationStructureBuildGeometryInfoKHR *>( &buildInfo ),
+ maxPrimitiveCounts.data(),
+ reinterpret_cast<VkAccelerationStructureBuildSizesInfoKHR *>( &sizeInfo ) );
+ return sizeInfo;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_KHR_sampler_ycbcr_conversion ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::createSamplerYcbcrConversionKHR( const VULKAN_HPP_NAMESPACE::SamplerYcbcrConversionCreateInfo * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion * pYcbcrConversion,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkCreateSamplerYcbcrConversionKHR( m_device,
+ reinterpret_cast<const VkSamplerYcbcrConversionCreateInfo *>( pCreateInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkSamplerYcbcrConversion *>( pYcbcrConversion ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion>::type
+ Device::createSamplerYcbcrConversionKHR( const SamplerYcbcrConversionCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion ycbcrConversion;
+ Result result = static_cast<Result>( d.vkCreateSamplerYcbcrConversionKHR(
+ m_device,
+ reinterpret_cast<const VkSamplerYcbcrConversionCreateInfo *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkSamplerYcbcrConversion *>( &ycbcrConversion ) ) );
+ return createResultValue(
+ result, ycbcrConversion, VULKAN_HPP_NAMESPACE_STRING "::Device::createSamplerYcbcrConversionKHR" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion, Dispatch>>::type
+ Device::createSamplerYcbcrConversionKHRUnique( const SamplerYcbcrConversionCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion ycbcrConversion;
+ Result result = static_cast<Result>( d.vkCreateSamplerYcbcrConversionKHR(
+ m_device,
+ reinterpret_cast<const VkSamplerYcbcrConversionCreateInfo *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkSamplerYcbcrConversion *>( &ycbcrConversion ) ) );
+ ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion, Dispatch>(
+ result, ycbcrConversion, VULKAN_HPP_NAMESPACE_STRING "::Device::createSamplerYcbcrConversionKHRUnique", deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ Device::destroySamplerYcbcrConversionKHR( VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion ycbcrConversion,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroySamplerYcbcrConversionKHR( m_device,
+ static_cast<VkSamplerYcbcrConversion>( ycbcrConversion ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ Device::destroySamplerYcbcrConversionKHR( VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion ycbcrConversion,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroySamplerYcbcrConversionKHR(
+ m_device,
+ static_cast<VkSamplerYcbcrConversion>( ycbcrConversion ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_KHR_bind_memory2 ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::bindBufferMemory2KHR( uint32_t bindInfoCount,
+ const VULKAN_HPP_NAMESPACE::BindBufferMemoryInfo * pBindInfos,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkBindBufferMemory2KHR(
+ m_device, bindInfoCount, reinterpret_cast<const VkBindBufferMemoryInfo *>( pBindInfos ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type
+ Device::bindBufferMemory2KHR( ArrayProxy<const VULKAN_HPP_NAMESPACE::BindBufferMemoryInfo> const & bindInfos,
+ Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>( d.vkBindBufferMemory2KHR(
+ m_device, bindInfos.size(), reinterpret_cast<const VkBindBufferMemoryInfo *>( bindInfos.data() ) ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::bindBufferMemory2KHR" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::bindImageMemory2KHR( uint32_t bindInfoCount,
+ const VULKAN_HPP_NAMESPACE::BindImageMemoryInfo * pBindInfos,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkBindImageMemory2KHR(
+ m_device, bindInfoCount, reinterpret_cast<const VkBindImageMemoryInfo *>( pBindInfos ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type
+ Device::bindImageMemory2KHR( ArrayProxy<const VULKAN_HPP_NAMESPACE::BindImageMemoryInfo> const & bindInfos,
+ Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>( d.vkBindImageMemory2KHR(
+ m_device, bindInfos.size(), reinterpret_cast<const VkBindImageMemoryInfo *>( bindInfos.data() ) ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::bindImageMemory2KHR" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_EXT_image_drm_format_modifier ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getImageDrmFormatModifierPropertiesEXT(
+ VULKAN_HPP_NAMESPACE::Image image,
+ VULKAN_HPP_NAMESPACE::ImageDrmFormatModifierPropertiesEXT * pProperties,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkGetImageDrmFormatModifierPropertiesEXT(
+ m_device,
+ static_cast<VkImage>( image ),
+ reinterpret_cast<VkImageDrmFormatModifierPropertiesEXT *>( pProperties ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::ImageDrmFormatModifierPropertiesEXT>::type
+ Device::getImageDrmFormatModifierPropertiesEXT( VULKAN_HPP_NAMESPACE::Image image, Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::ImageDrmFormatModifierPropertiesEXT properties;
+ Result result = static_cast<Result>( d.vkGetImageDrmFormatModifierPropertiesEXT(
+ m_device,
+ static_cast<VkImage>( image ),
+ reinterpret_cast<VkImageDrmFormatModifierPropertiesEXT *>( &properties ) ) );
+ return createResultValue(
+ result, properties, VULKAN_HPP_NAMESPACE_STRING "::Device::getImageDrmFormatModifierPropertiesEXT" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_EXT_validation_cache ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::createValidationCacheEXT( const VULKAN_HPP_NAMESPACE::ValidationCacheCreateInfoEXT * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::ValidationCacheEXT * pValidationCache,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkCreateValidationCacheEXT( m_device,
+ reinterpret_cast<const VkValidationCacheCreateInfoEXT *>( pCreateInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkValidationCacheEXT *>( pValidationCache ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::ValidationCacheEXT>::type
+ Device::createValidationCacheEXT( const ValidationCacheCreateInfoEXT & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::ValidationCacheEXT validationCache;
+ Result result = static_cast<Result>(
+ d.vkCreateValidationCacheEXT( m_device,
+ reinterpret_cast<const VkValidationCacheCreateInfoEXT *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkValidationCacheEXT *>( &validationCache ) ) );
+ return createResultValue(
+ result, validationCache, VULKAN_HPP_NAMESPACE_STRING "::Device::createValidationCacheEXT" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::ValidationCacheEXT, Dispatch>>::type
+ Device::createValidationCacheEXTUnique( const ValidationCacheCreateInfoEXT & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::ValidationCacheEXT validationCache;
+ Result result = static_cast<Result>(
+ d.vkCreateValidationCacheEXT( m_device,
+ reinterpret_cast<const VkValidationCacheCreateInfoEXT *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkValidationCacheEXT *>( &validationCache ) ) );
+ ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::ValidationCacheEXT, Dispatch>(
+ result, validationCache, VULKAN_HPP_NAMESPACE_STRING "::Device::createValidationCacheEXTUnique", deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ Device::destroyValidationCacheEXT( VULKAN_HPP_NAMESPACE::ValidationCacheEXT validationCache,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyValidationCacheEXT( m_device,
+ static_cast<VkValidationCacheEXT>( validationCache ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroyValidationCacheEXT( VULKAN_HPP_NAMESPACE::ValidationCacheEXT validationCache,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyValidationCacheEXT( m_device,
+ static_cast<VkValidationCacheEXT>( validationCache ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::ValidationCacheEXT validationCache,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyValidationCacheEXT( m_device,
+ static_cast<VkValidationCacheEXT>( validationCache ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::ValidationCacheEXT validationCache,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyValidationCacheEXT( m_device,
+ static_cast<VkValidationCacheEXT>( validationCache ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::mergeValidationCachesEXT( VULKAN_HPP_NAMESPACE::ValidationCacheEXT dstCache,
+ uint32_t srcCacheCount,
+ const VULKAN_HPP_NAMESPACE::ValidationCacheEXT * pSrcCaches,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkMergeValidationCachesEXT( m_device,
+ static_cast<VkValidationCacheEXT>( dstCache ),
+ srcCacheCount,
+ reinterpret_cast<const VkValidationCacheEXT *>( pSrcCaches ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type
+ Device::mergeValidationCachesEXT( VULKAN_HPP_NAMESPACE::ValidationCacheEXT dstCache,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::ValidationCacheEXT> const & srcCaches,
+ Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>(
+ d.vkMergeValidationCachesEXT( m_device,
+ static_cast<VkValidationCacheEXT>( dstCache ),
+ srcCaches.size(),
+ reinterpret_cast<const VkValidationCacheEXT *>( srcCaches.data() ) ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::mergeValidationCachesEXT" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::getValidationCacheDataEXT( VULKAN_HPP_NAMESPACE::ValidationCacheEXT validationCache,
+ size_t * pDataSize,
+ void * pData,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkGetValidationCacheDataEXT(
+ m_device, static_cast<VkValidationCacheEXT>( validationCache ), pDataSize, pData ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Uint8_tAllocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<uint8_t, Uint8_tAllocator>>::type
+ Device::getValidationCacheDataEXT( VULKAN_HPP_NAMESPACE::ValidationCacheEXT validationCache,
+ Dispatch const & d ) const
+ {
+ std::vector<uint8_t, Uint8_tAllocator> data;
+ size_t dataSize;
+ Result result;
+ do
+ {
+ result = static_cast<Result>( d.vkGetValidationCacheDataEXT(
+ m_device, static_cast<VkValidationCacheEXT>( validationCache ), &dataSize, nullptr ) );
+ if ( ( result == Result::eSuccess ) && dataSize )
+ {
+ data.resize( dataSize );
+ result =
+ static_cast<Result>( d.vkGetValidationCacheDataEXT( m_device,
+ static_cast<VkValidationCacheEXT>( validationCache ),
+ &dataSize,
+ reinterpret_cast<void *>( data.data() ) ) );
+ VULKAN_HPP_ASSERT( dataSize <= data.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( dataSize < data.size() ) )
+ {
+ data.resize( dataSize );
+ }
+ return createResultValue( result, data, VULKAN_HPP_NAMESPACE_STRING "::Device::getValidationCacheDataEXT" );
+ }
+
+ template <typename Uint8_tAllocator,
+ typename Dispatch,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, uint8_t>::value, int>::type>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<std::vector<uint8_t, Uint8_tAllocator>>::type
+ Device::getValidationCacheDataEXT( VULKAN_HPP_NAMESPACE::ValidationCacheEXT validationCache,
+ Uint8_tAllocator & uint8_tAllocator,
+ Dispatch const & d ) const
+ {
+ std::vector<uint8_t, Uint8_tAllocator> data( uint8_tAllocator );
+ size_t dataSize;
+ Result result;
+ do
+ {
+ result = static_cast<Result>( d.vkGetValidationCacheDataEXT(
+ m_device, static_cast<VkValidationCacheEXT>( validationCache ), &dataSize, nullptr ) );
+ if ( ( result == Result::eSuccess ) && dataSize )
+ {
+ data.resize( dataSize );
+ result =
+ static_cast<Result>( d.vkGetValidationCacheDataEXT( m_device,
+ static_cast<VkValidationCacheEXT>( validationCache ),
+ &dataSize,
+ reinterpret_cast<void *>( data.data() ) ) );
+ VULKAN_HPP_ASSERT( dataSize <= data.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( dataSize < data.size() ) )
+ {
+ data.resize( dataSize );
+ }
+ return createResultValue( result, data, VULKAN_HPP_NAMESPACE_STRING "::Device::getValidationCacheDataEXT" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_NV_shading_rate_image ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::bindShadingRateImageNV( VULKAN_HPP_NAMESPACE::ImageView imageView,
+ VULKAN_HPP_NAMESPACE::ImageLayout imageLayout,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdBindShadingRateImageNV(
+ m_commandBuffer, static_cast<VkImageView>( imageView ), static_cast<VkImageLayout>( imageLayout ) );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::setViewportShadingRatePaletteNV(
+ uint32_t firstViewport,
+ uint32_t viewportCount,
+ const VULKAN_HPP_NAMESPACE::ShadingRatePaletteNV * pShadingRatePalettes,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdSetViewportShadingRatePaletteNV( m_commandBuffer,
+ firstViewport,
+ viewportCount,
+ reinterpret_cast<const VkShadingRatePaletteNV *>( pShadingRatePalettes ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::setViewportShadingRatePaletteNV(
+ uint32_t firstViewport,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::ShadingRatePaletteNV> const & shadingRatePalettes,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdSetViewportShadingRatePaletteNV(
+ m_commandBuffer,
+ firstViewport,
+ shadingRatePalettes.size(),
+ reinterpret_cast<const VkShadingRatePaletteNV *>( shadingRatePalettes.data() ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::setCoarseSampleOrderNV( VULKAN_HPP_NAMESPACE::CoarseSampleOrderTypeNV sampleOrderType,
+ uint32_t customSampleOrderCount,
+ const VULKAN_HPP_NAMESPACE::CoarseSampleOrderCustomNV * pCustomSampleOrders,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdSetCoarseSampleOrderNV( m_commandBuffer,
+ static_cast<VkCoarseSampleOrderTypeNV>( sampleOrderType ),
+ customSampleOrderCount,
+ reinterpret_cast<const VkCoarseSampleOrderCustomNV *>( pCustomSampleOrders ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::setCoarseSampleOrderNV(
+ VULKAN_HPP_NAMESPACE::CoarseSampleOrderTypeNV sampleOrderType,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::CoarseSampleOrderCustomNV> const & customSampleOrders,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdSetCoarseSampleOrderNV( m_commandBuffer,
+ static_cast<VkCoarseSampleOrderTypeNV>( sampleOrderType ),
+ customSampleOrders.size(),
+ reinterpret_cast<const VkCoarseSampleOrderCustomNV *>( customSampleOrders.data() ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_NV_ray_tracing ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::createAccelerationStructureNV( const VULKAN_HPP_NAMESPACE::AccelerationStructureCreateInfoNV * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::AccelerationStructureNV * pAccelerationStructure,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkCreateAccelerationStructureNV( m_device,
+ reinterpret_cast<const VkAccelerationStructureCreateInfoNV *>( pCreateInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkAccelerationStructureNV *>( pAccelerationStructure ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::AccelerationStructureNV>::type
+ Device::createAccelerationStructureNV( const AccelerationStructureCreateInfoNV & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::AccelerationStructureNV accelerationStructure;
+ Result result = static_cast<Result>( d.vkCreateAccelerationStructureNV(
+ m_device,
+ reinterpret_cast<const VkAccelerationStructureCreateInfoNV *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkAccelerationStructureNV *>( &accelerationStructure ) ) );
+ return createResultValue(
+ result, accelerationStructure, VULKAN_HPP_NAMESPACE_STRING "::Device::createAccelerationStructureNV" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::AccelerationStructureNV, Dispatch>>::type
+ Device::createAccelerationStructureNVUnique( const AccelerationStructureCreateInfoNV & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::AccelerationStructureNV accelerationStructure;
+ Result result = static_cast<Result>( d.vkCreateAccelerationStructureNV(
+ m_device,
+ reinterpret_cast<const VkAccelerationStructureCreateInfoNV *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkAccelerationStructureNV *>( &accelerationStructure ) ) );
+ ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::AccelerationStructureNV, Dispatch>(
+ result,
+ accelerationStructure,
+ VULKAN_HPP_NAMESPACE_STRING "::Device::createAccelerationStructureNVUnique",
+ deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ Device::destroyAccelerationStructureNV( VULKAN_HPP_NAMESPACE::AccelerationStructureNV accelerationStructure,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyAccelerationStructureNV( m_device,
+ static_cast<VkAccelerationStructureNV>( accelerationStructure ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ Device::destroyAccelerationStructureNV( VULKAN_HPP_NAMESPACE::AccelerationStructureNV accelerationStructure,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyAccelerationStructureNV(
+ m_device,
+ static_cast<VkAccelerationStructureNV>( accelerationStructure ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::AccelerationStructureNV accelerationStructure,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyAccelerationStructureNV( m_device,
+ static_cast<VkAccelerationStructureNV>( accelerationStructure ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::AccelerationStructureNV accelerationStructure,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyAccelerationStructureNV(
+ m_device,
+ static_cast<VkAccelerationStructureNV>( accelerationStructure ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::getAccelerationStructureMemoryRequirementsNV(
+ const VULKAN_HPP_NAMESPACE::AccelerationStructureMemoryRequirementsInfoNV * pInfo,
+ VULKAN_HPP_NAMESPACE::MemoryRequirements2KHR * pMemoryRequirements,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkGetAccelerationStructureMemoryRequirementsNV(
+ m_device,
+ reinterpret_cast<const VkAccelerationStructureMemoryRequirementsInfoNV *>( pInfo ),
+ reinterpret_cast<VkMemoryRequirements2KHR *>( pMemoryRequirements ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::MemoryRequirements2KHR
+ Device::getAccelerationStructureMemoryRequirementsNV( const AccelerationStructureMemoryRequirementsInfoNV & info,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_NAMESPACE::MemoryRequirements2KHR memoryRequirements;
+ d.vkGetAccelerationStructureMemoryRequirementsNV(
+ m_device,
+ reinterpret_cast<const VkAccelerationStructureMemoryRequirementsInfoNV *>( &info ),
+ reinterpret_cast<VkMemoryRequirements2KHR *>( &memoryRequirements ) );
+ return memoryRequirements;
+ }
+
+ template <typename X, typename Y, typename... Z, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE StructureChain<X, Y, Z...>
+ Device::getAccelerationStructureMemoryRequirementsNV( const AccelerationStructureMemoryRequirementsInfoNV & info,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ StructureChain<X, Y, Z...> structureChain;
+ VULKAN_HPP_NAMESPACE::MemoryRequirements2KHR & memoryRequirements =
+ structureChain.template get<VULKAN_HPP_NAMESPACE::MemoryRequirements2KHR>();
+ d.vkGetAccelerationStructureMemoryRequirementsNV(
+ m_device,
+ reinterpret_cast<const VkAccelerationStructureMemoryRequirementsInfoNV *>( &info ),
+ reinterpret_cast<VkMemoryRequirements2KHR *>( &memoryRequirements ) );
+ return structureChain;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::bindAccelerationStructureMemoryNV(
+ uint32_t bindInfoCount,
+ const VULKAN_HPP_NAMESPACE::BindAccelerationStructureMemoryInfoNV * pBindInfos,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkBindAccelerationStructureMemoryNV(
+ m_device, bindInfoCount, reinterpret_cast<const VkBindAccelerationStructureMemoryInfoNV *>( pBindInfos ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type
+ Device::bindAccelerationStructureMemoryNV(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::BindAccelerationStructureMemoryInfoNV> const & bindInfos,
+ Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>( d.vkBindAccelerationStructureMemoryNV(
+ m_device,
+ bindInfos.size(),
+ reinterpret_cast<const VkBindAccelerationStructureMemoryInfoNV *>( bindInfos.data() ) ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::bindAccelerationStructureMemoryNV" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::buildAccelerationStructureNV( const VULKAN_HPP_NAMESPACE::AccelerationStructureInfoNV * pInfo,
+ VULKAN_HPP_NAMESPACE::Buffer instanceData,
+ VULKAN_HPP_NAMESPACE::DeviceSize instanceOffset,
+ VULKAN_HPP_NAMESPACE::Bool32 update,
+ VULKAN_HPP_NAMESPACE::AccelerationStructureNV dst,
+ VULKAN_HPP_NAMESPACE::AccelerationStructureNV src,
+ VULKAN_HPP_NAMESPACE::Buffer scratch,
+ VULKAN_HPP_NAMESPACE::DeviceSize scratchOffset,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdBuildAccelerationStructureNV( m_commandBuffer,
+ reinterpret_cast<const VkAccelerationStructureInfoNV *>( pInfo ),
+ static_cast<VkBuffer>( instanceData ),
+ static_cast<VkDeviceSize>( instanceOffset ),
+ static_cast<VkBool32>( update ),
+ static_cast<VkAccelerationStructureNV>( dst ),
+ static_cast<VkAccelerationStructureNV>( src ),
+ static_cast<VkBuffer>( scratch ),
+ static_cast<VkDeviceSize>( scratchOffset ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::buildAccelerationStructureNV( const AccelerationStructureInfoNV & info,
+ VULKAN_HPP_NAMESPACE::Buffer instanceData,
+ VULKAN_HPP_NAMESPACE::DeviceSize instanceOffset,
+ VULKAN_HPP_NAMESPACE::Bool32 update,
+ VULKAN_HPP_NAMESPACE::AccelerationStructureNV dst,
+ VULKAN_HPP_NAMESPACE::AccelerationStructureNV src,
+ VULKAN_HPP_NAMESPACE::Buffer scratch,
+ VULKAN_HPP_NAMESPACE::DeviceSize scratchOffset,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdBuildAccelerationStructureNV( m_commandBuffer,
+ reinterpret_cast<const VkAccelerationStructureInfoNV *>( &info ),
+ static_cast<VkBuffer>( instanceData ),
+ static_cast<VkDeviceSize>( instanceOffset ),
+ static_cast<VkBool32>( update ),
+ static_cast<VkAccelerationStructureNV>( dst ),
+ static_cast<VkAccelerationStructureNV>( src ),
+ static_cast<VkBuffer>( scratch ),
+ static_cast<VkDeviceSize>( scratchOffset ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::copyAccelerationStructureNV( VULKAN_HPP_NAMESPACE::AccelerationStructureNV dst,
+ VULKAN_HPP_NAMESPACE::AccelerationStructureNV src,
+ VULKAN_HPP_NAMESPACE::CopyAccelerationStructureModeKHR mode,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdCopyAccelerationStructureNV( m_commandBuffer,
+ static_cast<VkAccelerationStructureNV>( dst ),
+ static_cast<VkAccelerationStructureNV>( src ),
+ static_cast<VkCopyAccelerationStructureModeKHR>( mode ) );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::traceRaysNV( VULKAN_HPP_NAMESPACE::Buffer raygenShaderBindingTableBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize raygenShaderBindingOffset,
+ VULKAN_HPP_NAMESPACE::Buffer missShaderBindingTableBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize missShaderBindingOffset,
+ VULKAN_HPP_NAMESPACE::DeviceSize missShaderBindingStride,
+ VULKAN_HPP_NAMESPACE::Buffer hitShaderBindingTableBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize hitShaderBindingOffset,
+ VULKAN_HPP_NAMESPACE::DeviceSize hitShaderBindingStride,
+ VULKAN_HPP_NAMESPACE::Buffer callableShaderBindingTableBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize callableShaderBindingOffset,
+ VULKAN_HPP_NAMESPACE::DeviceSize callableShaderBindingStride,
+ uint32_t width,
+ uint32_t height,
+ uint32_t depth,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdTraceRaysNV( m_commandBuffer,
+ static_cast<VkBuffer>( raygenShaderBindingTableBuffer ),
+ static_cast<VkDeviceSize>( raygenShaderBindingOffset ),
+ static_cast<VkBuffer>( missShaderBindingTableBuffer ),
+ static_cast<VkDeviceSize>( missShaderBindingOffset ),
+ static_cast<VkDeviceSize>( missShaderBindingStride ),
+ static_cast<VkBuffer>( hitShaderBindingTableBuffer ),
+ static_cast<VkDeviceSize>( hitShaderBindingOffset ),
+ static_cast<VkDeviceSize>( hitShaderBindingStride ),
+ static_cast<VkBuffer>( callableShaderBindingTableBuffer ),
+ static_cast<VkDeviceSize>( callableShaderBindingOffset ),
+ static_cast<VkDeviceSize>( callableShaderBindingStride ),
+ width,
+ height,
+ depth );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::createRayTracingPipelinesNV( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ uint32_t createInfoCount,
+ const VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoNV * pCreateInfos,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::Pipeline * pPipelines,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkCreateRayTracingPipelinesNV( m_device,
+ static_cast<VkPipelineCache>( pipelineCache ),
+ createInfoCount,
+ reinterpret_cast<const VkRayTracingPipelineCreateInfoNV *>( pCreateInfos ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkPipeline *>( pPipelines ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename PipelineAllocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE ResultValue<std::vector<Pipeline, PipelineAllocator>>
+ Device::createRayTracingPipelinesNV(
+ VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoNV> const & createInfos,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ std::vector<Pipeline, PipelineAllocator> pipelines( createInfos.size() );
+ Result result = static_cast<Result>(
+ d.vkCreateRayTracingPipelinesNV( m_device,
+ static_cast<VkPipelineCache>( pipelineCache ),
+ createInfos.size(),
+ reinterpret_cast<const VkRayTracingPipelineCreateInfoNV *>( createInfos.data() ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkPipeline *>( pipelines.data() ) ) );
+ return createResultValue(
+ result,
+ pipelines,
+ VULKAN_HPP_NAMESPACE_STRING "::Device::createRayTracingPipelinesNV",
+ { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT } );
+ }
+
+ template <typename PipelineAllocator,
+ typename Dispatch,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, Pipeline>::value, int>::type>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE ResultValue<std::vector<Pipeline, PipelineAllocator>>
+ Device::createRayTracingPipelinesNV(
+ VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoNV> const & createInfos,
+ Optional<const AllocationCallbacks> allocator,
+ PipelineAllocator & pipelineAllocator,
+ Dispatch const & d ) const
+ {
+ std::vector<Pipeline, PipelineAllocator> pipelines( createInfos.size(), pipelineAllocator );
+ Result result = static_cast<Result>(
+ d.vkCreateRayTracingPipelinesNV( m_device,
+ static_cast<VkPipelineCache>( pipelineCache ),
+ createInfos.size(),
+ reinterpret_cast<const VkRayTracingPipelineCreateInfoNV *>( createInfos.data() ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkPipeline *>( pipelines.data() ) ) );
+ return createResultValue(
+ result,
+ pipelines,
+ VULKAN_HPP_NAMESPACE_STRING "::Device::createRayTracingPipelinesNV",
+ { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT } );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE ResultValue<Pipeline>
+ Device::createRayTracingPipelineNV( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ const VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoNV & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ Pipeline pipeline;
+ Result result = static_cast<Result>(
+ d.vkCreateRayTracingPipelinesNV( m_device,
+ static_cast<VkPipelineCache>( pipelineCache ),
+ 1,
+ reinterpret_cast<const VkRayTracingPipelineCreateInfoNV *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkPipeline *>( &pipeline ) ) );
+ return createResultValue(
+ result,
+ pipeline,
+ VULKAN_HPP_NAMESPACE_STRING "::Device::createRayTracingPipelineNV",
+ { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT } );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch, typename PipelineAllocator>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE ResultValue<std::vector<UniqueHandle<Pipeline, Dispatch>, PipelineAllocator>>
+ Device::createRayTracingPipelinesNVUnique(
+ VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoNV> const & createInfos,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ std::vector<UniqueHandle<Pipeline, Dispatch>, PipelineAllocator> uniquePipelines;
+ std::vector<Pipeline> pipelines( createInfos.size() );
+ Result result = static_cast<Result>(
+ d.vkCreateRayTracingPipelinesNV( m_device,
+ static_cast<VkPipelineCache>( pipelineCache ),
+ createInfos.size(),
+ reinterpret_cast<const VkRayTracingPipelineCreateInfoNV *>( createInfos.data() ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkPipeline *>( pipelines.data() ) ) );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) ||
+ ( result == VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT ) )
+ {
+ uniquePipelines.reserve( createInfos.size() );
+ ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
+ for ( size_t i = 0; i < createInfos.size(); i++ )
+ {
+ uniquePipelines.push_back( UniqueHandle<Pipeline, Dispatch>( pipelines[i], deleter ) );
+ }
+ }
+ return createResultValue(
+ result,
+ std::move( uniquePipelines ),
+ VULKAN_HPP_NAMESPACE_STRING "::Device::createRayTracingPipelinesNVUnique",
+ { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT } );
+ }
+
+ template <
+ typename Dispatch,
+ typename PipelineAllocator,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, UniqueHandle<Pipeline, Dispatch>>::value, int>::type>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE ResultValue<std::vector<UniqueHandle<Pipeline, Dispatch>, PipelineAllocator>>
+ Device::createRayTracingPipelinesNVUnique(
+ VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoNV> const & createInfos,
+ Optional<const AllocationCallbacks> allocator,
+ PipelineAllocator & pipelineAllocator,
+ Dispatch const & d ) const
+ {
+ std::vector<UniqueHandle<Pipeline, Dispatch>, PipelineAllocator> uniquePipelines( pipelineAllocator );
+ std::vector<Pipeline> pipelines( createInfos.size() );
+ Result result = static_cast<Result>(
+ d.vkCreateRayTracingPipelinesNV( m_device,
+ static_cast<VkPipelineCache>( pipelineCache ),
+ createInfos.size(),
+ reinterpret_cast<const VkRayTracingPipelineCreateInfoNV *>( createInfos.data() ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkPipeline *>( pipelines.data() ) ) );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) ||
+ ( result == VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT ) )
+ {
+ uniquePipelines.reserve( createInfos.size() );
+ ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
+ for ( size_t i = 0; i < createInfos.size(); i++ )
+ {
+ uniquePipelines.push_back( UniqueHandle<Pipeline, Dispatch>( pipelines[i], deleter ) );
+ }
+ }
+ return createResultValue(
+ result,
+ std::move( uniquePipelines ),
+ VULKAN_HPP_NAMESPACE_STRING "::Device::createRayTracingPipelinesNVUnique",
+ { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT } );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE ResultValue<UniqueHandle<Pipeline, Dispatch>>
+ Device::createRayTracingPipelineNVUnique( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ const VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoNV & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ Pipeline pipeline;
+ Result result = static_cast<Result>(
+ d.vkCreateRayTracingPipelinesNV( m_device,
+ static_cast<VkPipelineCache>( pipelineCache ),
+ 1,
+ reinterpret_cast<const VkRayTracingPipelineCreateInfoNV *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkPipeline *>( &pipeline ) ) );
+ ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<Pipeline, Dispatch>(
+ result,
+ pipeline,
+ VULKAN_HPP_NAMESPACE_STRING "::Device::createRayTracingPipelineNVUnique",
+ { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT },
+ deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::getRayTracingShaderGroupHandlesNV( VULKAN_HPP_NAMESPACE::Pipeline pipeline,
+ uint32_t firstGroup,
+ uint32_t groupCount,
+ size_t dataSize,
+ void * pData,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkGetRayTracingShaderGroupHandlesNV(
+ m_device, static_cast<VkPipeline>( pipeline ), firstGroup, groupCount, dataSize, pData ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename T, typename Dispatch>
+ VULKAN_HPP_DEPRECATED( "This function is deprecated. Use one of the other flavours of it." )
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<void>::type Device::getRayTracingShaderGroupHandlesNV(
+ VULKAN_HPP_NAMESPACE::Pipeline pipeline,
+ uint32_t firstGroup,
+ uint32_t groupCount,
+ ArrayProxy<T> const & data,
+ Dispatch const & d ) const
+ {
+ Result result =
+ static_cast<Result>( d.vkGetRayTracingShaderGroupHandlesNV( m_device,
+ static_cast<VkPipeline>( pipeline ),
+ firstGroup,
+ groupCount,
+ data.size() * sizeof( T ),
+ reinterpret_cast<void *>( data.data() ) ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::getRayTracingShaderGroupHandlesNV" );
+ }
+
+ template <typename T, typename Allocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<std::vector<T, Allocator>>::type
+ Device::getRayTracingShaderGroupHandlesNV( VULKAN_HPP_NAMESPACE::Pipeline pipeline,
+ uint32_t firstGroup,
+ uint32_t groupCount,
+ size_t dataSize,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_ASSERT( dataSize % sizeof( T ) == 0 );
+ std::vector<T, Allocator> data( dataSize / sizeof( T ) );
+ Result result =
+ static_cast<Result>( d.vkGetRayTracingShaderGroupHandlesNV( m_device,
+ static_cast<VkPipeline>( pipeline ),
+ firstGroup,
+ groupCount,
+ data.size() * sizeof( T ),
+ reinterpret_cast<void *>( data.data() ) ) );
+ return createResultValue( result, data, VULKAN_HPP_NAMESPACE_STRING "::Device::getRayTracingShaderGroupHandlesNV" );
+ }
+
+ template <typename T, typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<T>::type
+ Device::getRayTracingShaderGroupHandleNV( VULKAN_HPP_NAMESPACE::Pipeline pipeline,
+ uint32_t firstGroup,
+ uint32_t groupCount,
+ Dispatch const & d ) const
+ {
+ T data;
+ Result result = static_cast<Result>( d.vkGetRayTracingShaderGroupHandlesNV( m_device,
+ static_cast<VkPipeline>( pipeline ),
+ firstGroup,
+ groupCount,
+ sizeof( T ),
+ reinterpret_cast<void *>( &data ) ) );
+ return createResultValue( result, data, VULKAN_HPP_NAMESPACE_STRING "::Device::getRayTracingShaderGroupHandleNV" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::getAccelerationStructureHandleNV( VULKAN_HPP_NAMESPACE::AccelerationStructureNV accelerationStructure,
+ size_t dataSize,
+ void * pData,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkGetAccelerationStructureHandleNV(
+ m_device, static_cast<VkAccelerationStructureNV>( accelerationStructure ), dataSize, pData ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename T, typename Dispatch>
+ VULKAN_HPP_DEPRECATED( "This function is deprecated. Use one of the other flavours of it." )
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<void>::type Device::getAccelerationStructureHandleNV(
+ VULKAN_HPP_NAMESPACE::AccelerationStructureNV accelerationStructure,
+ ArrayProxy<T> const & data,
+ Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>(
+ d.vkGetAccelerationStructureHandleNV( m_device,
+ static_cast<VkAccelerationStructureNV>( accelerationStructure ),
+ data.size() * sizeof( T ),
+ reinterpret_cast<void *>( data.data() ) ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::getAccelerationStructureHandleNV" );
+ }
+
+ template <typename T, typename Allocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<std::vector<T, Allocator>>::type
+ Device::getAccelerationStructureHandleNV( VULKAN_HPP_NAMESPACE::AccelerationStructureNV accelerationStructure,
+ size_t dataSize,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_ASSERT( dataSize % sizeof( T ) == 0 );
+ std::vector<T, Allocator> data( dataSize / sizeof( T ) );
+ Result result = static_cast<Result>(
+ d.vkGetAccelerationStructureHandleNV( m_device,
+ static_cast<VkAccelerationStructureNV>( accelerationStructure ),
+ data.size() * sizeof( T ),
+ reinterpret_cast<void *>( data.data() ) ) );
+ return createResultValue( result, data, VULKAN_HPP_NAMESPACE_STRING "::Device::getAccelerationStructureHandleNV" );
+ }
+
+ template <typename T, typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<T>::type
+ Device::getAccelerationStructureHandleNV( VULKAN_HPP_NAMESPACE::AccelerationStructureNV accelerationStructure,
+ Dispatch const & d ) const
+ {
+ T data;
+ Result result = static_cast<Result>(
+ d.vkGetAccelerationStructureHandleNV( m_device,
+ static_cast<VkAccelerationStructureNV>( accelerationStructure ),
+ sizeof( T ),
+ reinterpret_cast<void *>( &data ) ) );
+ return createResultValue( result, data, VULKAN_HPP_NAMESPACE_STRING "::Device::getAccelerationStructureHandleNV" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::writeAccelerationStructuresPropertiesNV(
+ uint32_t accelerationStructureCount,
+ const VULKAN_HPP_NAMESPACE::AccelerationStructureNV * pAccelerationStructures,
+ VULKAN_HPP_NAMESPACE::QueryType queryType,
+ VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ uint32_t firstQuery,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdWriteAccelerationStructuresPropertiesNV(
+ m_commandBuffer,
+ accelerationStructureCount,
+ reinterpret_cast<const VkAccelerationStructureNV *>( pAccelerationStructures ),
+ static_cast<VkQueryType>( queryType ),
+ static_cast<VkQueryPool>( queryPool ),
+ firstQuery );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::writeAccelerationStructuresPropertiesNV(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::AccelerationStructureNV> const & accelerationStructures,
+ VULKAN_HPP_NAMESPACE::QueryType queryType,
+ VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ uint32_t firstQuery,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdWriteAccelerationStructuresPropertiesNV(
+ m_commandBuffer,
+ accelerationStructures.size(),
+ reinterpret_cast<const VkAccelerationStructureNV *>( accelerationStructures.data() ),
+ static_cast<VkQueryType>( queryType ),
+ static_cast<VkQueryPool>( queryPool ),
+ firstQuery );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::compileDeferredNV(
+ VULKAN_HPP_NAMESPACE::Pipeline pipeline, uint32_t shader, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkCompileDeferredNV( m_device, static_cast<VkPipeline>( pipeline ), shader ) );
+ }
+#else
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type
+ Device::compileDeferredNV( VULKAN_HPP_NAMESPACE::Pipeline pipeline, uint32_t shader, Dispatch const & d ) const
+ {
+ Result result =
+ static_cast<Result>( d.vkCompileDeferredNV( m_device, static_cast<VkPipeline>( pipeline ), shader ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::compileDeferredNV" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_KHR_maintenance3 ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ Device::getDescriptorSetLayoutSupportKHR( const VULKAN_HPP_NAMESPACE::DescriptorSetLayoutCreateInfo * pCreateInfo,
+ VULKAN_HPP_NAMESPACE::DescriptorSetLayoutSupport * pSupport,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkGetDescriptorSetLayoutSupportKHR( m_device,
+ reinterpret_cast<const VkDescriptorSetLayoutCreateInfo *>( pCreateInfo ),
+ reinterpret_cast<VkDescriptorSetLayoutSupport *>( pSupport ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::DescriptorSetLayoutSupport
+ Device::getDescriptorSetLayoutSupportKHR( const DescriptorSetLayoutCreateInfo & createInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_NAMESPACE::DescriptorSetLayoutSupport support;
+ d.vkGetDescriptorSetLayoutSupportKHR( m_device,
+ reinterpret_cast<const VkDescriptorSetLayoutCreateInfo *>( &createInfo ),
+ reinterpret_cast<VkDescriptorSetLayoutSupport *>( &support ) );
+ return support;
+ }
+
+ template <typename X, typename Y, typename... Z, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE StructureChain<X, Y, Z...>
+ Device::getDescriptorSetLayoutSupportKHR( const DescriptorSetLayoutCreateInfo & createInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ StructureChain<X, Y, Z...> structureChain;
+ VULKAN_HPP_NAMESPACE::DescriptorSetLayoutSupport & support =
+ structureChain.template get<VULKAN_HPP_NAMESPACE::DescriptorSetLayoutSupport>();
+ d.vkGetDescriptorSetLayoutSupportKHR( m_device,
+ reinterpret_cast<const VkDescriptorSetLayoutCreateInfo *>( &createInfo ),
+ reinterpret_cast<VkDescriptorSetLayoutSupport *>( &support ) );
+ return structureChain;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_KHR_draw_indirect_count ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::drawIndirectCountKHR( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize offset,
+ VULKAN_HPP_NAMESPACE::Buffer countBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize countBufferOffset,
+ uint32_t maxDrawCount,
+ uint32_t stride,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdDrawIndirectCountKHR( m_commandBuffer,
+ static_cast<VkBuffer>( buffer ),
+ static_cast<VkDeviceSize>( offset ),
+ static_cast<VkBuffer>( countBuffer ),
+ static_cast<VkDeviceSize>( countBufferOffset ),
+ maxDrawCount,
+ stride );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::drawIndexedIndirectCountKHR( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize offset,
+ VULKAN_HPP_NAMESPACE::Buffer countBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize countBufferOffset,
+ uint32_t maxDrawCount,
+ uint32_t stride,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdDrawIndexedIndirectCountKHR( m_commandBuffer,
+ static_cast<VkBuffer>( buffer ),
+ static_cast<VkDeviceSize>( offset ),
+ static_cast<VkBuffer>( countBuffer ),
+ static_cast<VkDeviceSize>( countBufferOffset ),
+ maxDrawCount,
+ stride );
+ }
+
+ //=== VK_EXT_external_memory_host ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getMemoryHostPointerPropertiesEXT(
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType,
+ const void * pHostPointer,
+ VULKAN_HPP_NAMESPACE::MemoryHostPointerPropertiesEXT * pMemoryHostPointerProperties,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkGetMemoryHostPointerPropertiesEXT(
+ m_device,
+ static_cast<VkExternalMemoryHandleTypeFlagBits>( handleType ),
+ pHostPointer,
+ reinterpret_cast<VkMemoryHostPointerPropertiesEXT *>( pMemoryHostPointerProperties ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::MemoryHostPointerPropertiesEXT>::type
+ Device::getMemoryHostPointerPropertiesEXT( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType,
+ const void * pHostPointer,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::MemoryHostPointerPropertiesEXT memoryHostPointerProperties;
+ Result result = static_cast<Result>( d.vkGetMemoryHostPointerPropertiesEXT(
+ m_device,
+ static_cast<VkExternalMemoryHandleTypeFlagBits>( handleType ),
+ pHostPointer,
+ reinterpret_cast<VkMemoryHostPointerPropertiesEXT *>( &memoryHostPointerProperties ) ) );
+ return createResultValue(
+ result, memoryHostPointerProperties, VULKAN_HPP_NAMESPACE_STRING "::Device::getMemoryHostPointerPropertiesEXT" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_AMD_buffer_marker ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::writeBufferMarkerAMD( VULKAN_HPP_NAMESPACE::PipelineStageFlagBits pipelineStage,
+ VULKAN_HPP_NAMESPACE::Buffer dstBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize dstOffset,
+ uint32_t marker,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdWriteBufferMarkerAMD( m_commandBuffer,
+ static_cast<VkPipelineStageFlagBits>( pipelineStage ),
+ static_cast<VkBuffer>( dstBuffer ),
+ static_cast<VkDeviceSize>( dstOffset ),
+ marker );
+ }
+
+ //=== VK_EXT_calibrated_timestamps ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ PhysicalDevice::getCalibrateableTimeDomainsEXT( uint32_t * pTimeDomainCount,
+ VULKAN_HPP_NAMESPACE::TimeDomainEXT * pTimeDomains,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkGetPhysicalDeviceCalibrateableTimeDomainsEXT(
+ m_physicalDevice, pTimeDomainCount, reinterpret_cast<VkTimeDomainEXT *>( pTimeDomains ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename TimeDomainEXTAllocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<TimeDomainEXT, TimeDomainEXTAllocator>>::type
+ PhysicalDevice::getCalibrateableTimeDomainsEXT( Dispatch const & d ) const
+ {
+ std::vector<TimeDomainEXT, TimeDomainEXTAllocator> timeDomains;
+ uint32_t timeDomainCount;
+ Result result;
+ do
+ {
+ result = static_cast<Result>(
+ d.vkGetPhysicalDeviceCalibrateableTimeDomainsEXT( m_physicalDevice, &timeDomainCount, nullptr ) );
+ if ( ( result == Result::eSuccess ) && timeDomainCount )
+ {
+ timeDomains.resize( timeDomainCount );
+ result = static_cast<Result>( d.vkGetPhysicalDeviceCalibrateableTimeDomainsEXT(
+ m_physicalDevice, &timeDomainCount, reinterpret_cast<VkTimeDomainEXT *>( timeDomains.data() ) ) );
+ VULKAN_HPP_ASSERT( timeDomainCount <= timeDomains.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( timeDomainCount < timeDomains.size() ) )
+ {
+ timeDomains.resize( timeDomainCount );
+ }
+ return createResultValue(
+ result, timeDomains, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getCalibrateableTimeDomainsEXT" );
+ }
+
+ template <typename TimeDomainEXTAllocator,
+ typename Dispatch,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, TimeDomainEXT>::value, int>::type>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<TimeDomainEXT, TimeDomainEXTAllocator>>::type
+ PhysicalDevice::getCalibrateableTimeDomainsEXT( TimeDomainEXTAllocator & timeDomainEXTAllocator,
+ Dispatch const & d ) const
+ {
+ std::vector<TimeDomainEXT, TimeDomainEXTAllocator> timeDomains( timeDomainEXTAllocator );
+ uint32_t timeDomainCount;
+ Result result;
+ do
+ {
+ result = static_cast<Result>(
+ d.vkGetPhysicalDeviceCalibrateableTimeDomainsEXT( m_physicalDevice, &timeDomainCount, nullptr ) );
+ if ( ( result == Result::eSuccess ) && timeDomainCount )
+ {
+ timeDomains.resize( timeDomainCount );
+ result = static_cast<Result>( d.vkGetPhysicalDeviceCalibrateableTimeDomainsEXT(
+ m_physicalDevice, &timeDomainCount, reinterpret_cast<VkTimeDomainEXT *>( timeDomains.data() ) ) );
+ VULKAN_HPP_ASSERT( timeDomainCount <= timeDomains.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( timeDomainCount < timeDomains.size() ) )
+ {
+ timeDomains.resize( timeDomainCount );
+ }
+ return createResultValue(
+ result, timeDomains, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getCalibrateableTimeDomainsEXT" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::getCalibratedTimestampsEXT( uint32_t timestampCount,
+ const VULKAN_HPP_NAMESPACE::CalibratedTimestampInfoEXT * pTimestampInfos,
+ uint64_t * pTimestamps,
+ uint64_t * pMaxDeviation,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkGetCalibratedTimestampsEXT( m_device,
+ timestampCount,
+ reinterpret_cast<const VkCalibratedTimestampInfoEXT *>( pTimestampInfos ),
+ pTimestamps,
+ pMaxDeviation ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_DEPRECATED( "This function is deprecated. Use one of the other flavours of it." )
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<uint64_t>::type Device::getCalibratedTimestampsEXT(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::CalibratedTimestampInfoEXT> const & timestampInfos,
+ ArrayProxy<uint64_t> const & timestamps,
+ Dispatch const & d ) const
+ {
+# ifdef VULKAN_HPP_NO_EXCEPTIONS
+ VULKAN_HPP_ASSERT( timestampInfos.size() == timestamps.size() );
+# else
+ if ( timestampInfos.size() != timestamps.size() )
+ {
+ throw LogicError( VULKAN_HPP_NAMESPACE_STRING
+ "::VkDevice::getCalibratedTimestampsEXT: timestampInfos.size() != timestamps.size()" );
+ }
+# endif /*VULKAN_HPP_NO_EXCEPTIONS*/
+ uint64_t maxDeviation;
+ Result result = static_cast<Result>(
+ d.vkGetCalibratedTimestampsEXT( m_device,
+ timestampInfos.size(),
+ reinterpret_cast<const VkCalibratedTimestampInfoEXT *>( timestampInfos.data() ),
+ timestamps.data(),
+ &maxDeviation ) );
+ return createResultValue(
+ result, maxDeviation, VULKAN_HPP_NAMESPACE_STRING "::Device::getCalibratedTimestampsEXT" );
+ }
+
+ template <typename Uint64_tAllocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<std::pair<std::vector<uint64_t, Uint64_tAllocator>, uint64_t>>::type
+ Device::getCalibratedTimestampsEXT(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::CalibratedTimestampInfoEXT> const & timestampInfos,
+ Dispatch const & d ) const
+ {
+ std::pair<std::vector<uint64_t, Uint64_tAllocator>, uint64_t> data(
+ std::piecewise_construct, std::forward_as_tuple( timestampInfos.size() ), std::forward_as_tuple( 0 ) );
+ std::vector<uint64_t, Uint64_tAllocator> & timestamps = data.first;
+ uint64_t & maxDeviation = data.second;
+ Result result = static_cast<Result>(
+ d.vkGetCalibratedTimestampsEXT( m_device,
+ timestampInfos.size(),
+ reinterpret_cast<const VkCalibratedTimestampInfoEXT *>( timestampInfos.data() ),
+ timestamps.data(),
+ &maxDeviation ) );
+ return createResultValue( result, data, VULKAN_HPP_NAMESPACE_STRING "::Device::getCalibratedTimestampsEXT" );
+ }
+
+ template <typename Uint64_tAllocator,
+ typename Dispatch,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, uint64_t>::value, int>::type>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<std::pair<std::vector<uint64_t, Uint64_tAllocator>, uint64_t>>::type
+ Device::getCalibratedTimestampsEXT(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::CalibratedTimestampInfoEXT> const & timestampInfos,
+ Uint64_tAllocator & uint64_tAllocator,
+ Dispatch const & d ) const
+ {
+ std::pair<std::vector<uint64_t, Uint64_tAllocator>, uint64_t> data(
+ std::piecewise_construct,
+ std::forward_as_tuple( timestampInfos.size(), uint64_tAllocator ),
+ std::forward_as_tuple( 0 ) );
+ std::vector<uint64_t, Uint64_tAllocator> & timestamps = data.first;
+ uint64_t & maxDeviation = data.second;
+ Result result = static_cast<Result>(
+ d.vkGetCalibratedTimestampsEXT( m_device,
+ timestampInfos.size(),
+ reinterpret_cast<const VkCalibratedTimestampInfoEXT *>( timestampInfos.data() ),
+ timestamps.data(),
+ &maxDeviation ) );
+ return createResultValue( result, data, VULKAN_HPP_NAMESPACE_STRING "::Device::getCalibratedTimestampsEXT" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_NV_mesh_shader ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::drawMeshTasksNV( uint32_t taskCount,
+ uint32_t firstTask,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdDrawMeshTasksNV( m_commandBuffer, taskCount, firstTask );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::drawMeshTasksIndirectNV( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize offset,
+ uint32_t drawCount,
+ uint32_t stride,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdDrawMeshTasksIndirectNV(
+ m_commandBuffer, static_cast<VkBuffer>( buffer ), static_cast<VkDeviceSize>( offset ), drawCount, stride );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::drawMeshTasksIndirectCountNV( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize offset,
+ VULKAN_HPP_NAMESPACE::Buffer countBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize countBufferOffset,
+ uint32_t maxDrawCount,
+ uint32_t stride,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdDrawMeshTasksIndirectCountNV( m_commandBuffer,
+ static_cast<VkBuffer>( buffer ),
+ static_cast<VkDeviceSize>( offset ),
+ static_cast<VkBuffer>( countBuffer ),
+ static_cast<VkDeviceSize>( countBufferOffset ),
+ maxDrawCount,
+ stride );
+ }
+
+ //=== VK_NV_scissor_exclusive ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::setExclusiveScissorNV( uint32_t firstExclusiveScissor,
+ uint32_t exclusiveScissorCount,
+ const VULKAN_HPP_NAMESPACE::Rect2D * pExclusiveScissors,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdSetExclusiveScissorNV( m_commandBuffer,
+ firstExclusiveScissor,
+ exclusiveScissorCount,
+ reinterpret_cast<const VkRect2D *>( pExclusiveScissors ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::setExclusiveScissorNV( uint32_t firstExclusiveScissor,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::Rect2D> const & exclusiveScissors,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdSetExclusiveScissorNV( m_commandBuffer,
+ firstExclusiveScissor,
+ exclusiveScissors.size(),
+ reinterpret_cast<const VkRect2D *>( exclusiveScissors.data() ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_NV_device_diagnostic_checkpoints ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::setCheckpointNV( const void * pCheckpointMarker,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdSetCheckpointNV( m_commandBuffer, pCheckpointMarker );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Queue::getCheckpointDataNV( uint32_t * pCheckpointDataCount,
+ VULKAN_HPP_NAMESPACE::CheckpointDataNV * pCheckpointData,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkGetQueueCheckpointDataNV(
+ m_queue, pCheckpointDataCount, reinterpret_cast<VkCheckpointDataNV *>( pCheckpointData ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename CheckpointDataNVAllocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<CheckpointDataNV, CheckpointDataNVAllocator>
+ Queue::getCheckpointDataNV( Dispatch const & d ) const
+ {
+ std::vector<CheckpointDataNV, CheckpointDataNVAllocator> checkpointData;
+ uint32_t checkpointDataCount;
+ d.vkGetQueueCheckpointDataNV( m_queue, &checkpointDataCount, nullptr );
+ checkpointData.resize( checkpointDataCount );
+ d.vkGetQueueCheckpointDataNV(
+ m_queue, &checkpointDataCount, reinterpret_cast<VkCheckpointDataNV *>( checkpointData.data() ) );
+ VULKAN_HPP_ASSERT( checkpointDataCount <= checkpointData.size() );
+ return checkpointData;
+ }
+
+ template <typename CheckpointDataNVAllocator,
+ typename Dispatch,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, CheckpointDataNV>::value, int>::type>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<CheckpointDataNV, CheckpointDataNVAllocator>
+ Queue::getCheckpointDataNV( CheckpointDataNVAllocator & checkpointDataNVAllocator, Dispatch const & d ) const
+ {
+ std::vector<CheckpointDataNV, CheckpointDataNVAllocator> checkpointData( checkpointDataNVAllocator );
+ uint32_t checkpointDataCount;
+ d.vkGetQueueCheckpointDataNV( m_queue, &checkpointDataCount, nullptr );
+ checkpointData.resize( checkpointDataCount );
+ d.vkGetQueueCheckpointDataNV(
+ m_queue, &checkpointDataCount, reinterpret_cast<VkCheckpointDataNV *>( checkpointData.data() ) );
+ VULKAN_HPP_ASSERT( checkpointDataCount <= checkpointData.size() );
+ return checkpointData;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_KHR_timeline_semaphore ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getSemaphoreCounterValueKHR(
+ VULKAN_HPP_NAMESPACE::Semaphore semaphore, uint64_t * pValue, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkGetSemaphoreCounterValueKHR( m_device, static_cast<VkSemaphore>( semaphore ), pValue ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<uint64_t>::type
+ Device::getSemaphoreCounterValueKHR( VULKAN_HPP_NAMESPACE::Semaphore semaphore, Dispatch const & d ) const
+ {
+ uint64_t value;
+ Result result =
+ static_cast<Result>( d.vkGetSemaphoreCounterValueKHR( m_device, static_cast<VkSemaphore>( semaphore ), &value ) );
+ return createResultValue( result, value, VULKAN_HPP_NAMESPACE_STRING "::Device::getSemaphoreCounterValueKHR" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::waitSemaphoresKHR( const VULKAN_HPP_NAMESPACE::SemaphoreWaitInfo * pWaitInfo,
+ uint64_t timeout,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkWaitSemaphoresKHR( m_device, reinterpret_cast<const VkSemaphoreWaitInfo *>( pWaitInfo ), timeout ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::waitSemaphoresKHR( const SemaphoreWaitInfo & waitInfo,
+ uint64_t timeout,
+ Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>(
+ d.vkWaitSemaphoresKHR( m_device, reinterpret_cast<const VkSemaphoreWaitInfo *>( &waitInfo ), timeout ) );
+ return createResultValue( result,
+ VULKAN_HPP_NAMESPACE_STRING "::Device::waitSemaphoresKHR",
+ { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::eTimeout } );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::signalSemaphoreKHR(
+ const VULKAN_HPP_NAMESPACE::SemaphoreSignalInfo * pSignalInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkSignalSemaphoreKHR( m_device, reinterpret_cast<const VkSemaphoreSignalInfo *>( pSignalInfo ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type
+ Device::signalSemaphoreKHR( const SemaphoreSignalInfo & signalInfo, Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>(
+ d.vkSignalSemaphoreKHR( m_device, reinterpret_cast<const VkSemaphoreSignalInfo *>( &signalInfo ) ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::signalSemaphoreKHR" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_INTEL_performance_query ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::initializePerformanceApiINTEL(
+ const VULKAN_HPP_NAMESPACE::InitializePerformanceApiInfoINTEL * pInitializeInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkInitializePerformanceApiINTEL(
+ m_device, reinterpret_cast<const VkInitializePerformanceApiInfoINTEL *>( pInitializeInfo ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type
+ Device::initializePerformanceApiINTEL( const InitializePerformanceApiInfoINTEL & initializeInfo,
+ Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>( d.vkInitializePerformanceApiINTEL(
+ m_device, reinterpret_cast<const VkInitializePerformanceApiInfoINTEL *>( &initializeInfo ) ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::initializePerformanceApiINTEL" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::uninitializePerformanceApiINTEL( Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkUninitializePerformanceApiINTEL( m_device );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result CommandBuffer::setPerformanceMarkerINTEL(
+ const VULKAN_HPP_NAMESPACE::PerformanceMarkerInfoINTEL * pMarkerInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkCmdSetPerformanceMarkerINTEL(
+ m_commandBuffer, reinterpret_cast<const VkPerformanceMarkerInfoINTEL *>( pMarkerInfo ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type
+ CommandBuffer::setPerformanceMarkerINTEL( const PerformanceMarkerInfoINTEL & markerInfo, Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>( d.vkCmdSetPerformanceMarkerINTEL(
+ m_commandBuffer, reinterpret_cast<const VkPerformanceMarkerInfoINTEL *>( &markerInfo ) ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::CommandBuffer::setPerformanceMarkerINTEL" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result CommandBuffer::setPerformanceStreamMarkerINTEL(
+ const VULKAN_HPP_NAMESPACE::PerformanceStreamMarkerInfoINTEL * pMarkerInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkCmdSetPerformanceStreamMarkerINTEL(
+ m_commandBuffer, reinterpret_cast<const VkPerformanceStreamMarkerInfoINTEL *>( pMarkerInfo ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type
+ CommandBuffer::setPerformanceStreamMarkerINTEL( const PerformanceStreamMarkerInfoINTEL & markerInfo,
+ Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>( d.vkCmdSetPerformanceStreamMarkerINTEL(
+ m_commandBuffer, reinterpret_cast<const VkPerformanceStreamMarkerInfoINTEL *>( &markerInfo ) ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::CommandBuffer::setPerformanceStreamMarkerINTEL" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result CommandBuffer::setPerformanceOverrideINTEL(
+ const VULKAN_HPP_NAMESPACE::PerformanceOverrideInfoINTEL * pOverrideInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkCmdSetPerformanceOverrideINTEL(
+ m_commandBuffer, reinterpret_cast<const VkPerformanceOverrideInfoINTEL *>( pOverrideInfo ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type
+ CommandBuffer::setPerformanceOverrideINTEL( const PerformanceOverrideInfoINTEL & overrideInfo,
+ Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>( d.vkCmdSetPerformanceOverrideINTEL(
+ m_commandBuffer, reinterpret_cast<const VkPerformanceOverrideInfoINTEL *>( &overrideInfo ) ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::CommandBuffer::setPerformanceOverrideINTEL" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::acquirePerformanceConfigurationINTEL(
+ const VULKAN_HPP_NAMESPACE::PerformanceConfigurationAcquireInfoINTEL * pAcquireInfo,
+ VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL * pConfiguration,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkAcquirePerformanceConfigurationINTEL(
+ m_device,
+ reinterpret_cast<const VkPerformanceConfigurationAcquireInfoINTEL *>( pAcquireInfo ),
+ reinterpret_cast<VkPerformanceConfigurationINTEL *>( pConfiguration ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL>::type
+ Device::acquirePerformanceConfigurationINTEL( const PerformanceConfigurationAcquireInfoINTEL & acquireInfo,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL configuration;
+ Result result = static_cast<Result>( d.vkAcquirePerformanceConfigurationINTEL(
+ m_device,
+ reinterpret_cast<const VkPerformanceConfigurationAcquireInfoINTEL *>( &acquireInfo ),
+ reinterpret_cast<VkPerformanceConfigurationINTEL *>( &configuration ) ) );
+ return createResultValue(
+ result, configuration, VULKAN_HPP_NAMESPACE_STRING "::Device::acquirePerformanceConfigurationINTEL" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL, Dispatch>>::type
+ Device::acquirePerformanceConfigurationINTELUnique( const PerformanceConfigurationAcquireInfoINTEL & acquireInfo,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL configuration;
+ Result result = static_cast<Result>( d.vkAcquirePerformanceConfigurationINTEL(
+ m_device,
+ reinterpret_cast<const VkPerformanceConfigurationAcquireInfoINTEL *>( &acquireInfo ),
+ reinterpret_cast<VkPerformanceConfigurationINTEL *>( &configuration ) ) );
+ ObjectRelease<Device, Dispatch> deleter( *this, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL, Dispatch>(
+ result,
+ configuration,
+ VULKAN_HPP_NAMESPACE_STRING "::Device::acquirePerformanceConfigurationINTELUnique",
+ deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::releasePerformanceConfigurationINTEL(
+ VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL configuration, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkReleasePerformanceConfigurationINTEL(
+ m_device, static_cast<VkPerformanceConfigurationINTEL>( configuration ) ) );
+ }
+#else
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type
+ Device::releasePerformanceConfigurationINTEL( VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL configuration,
+ Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>( d.vkReleasePerformanceConfigurationINTEL(
+ m_device, static_cast<VkPerformanceConfigurationINTEL>( configuration ) ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::releasePerformanceConfigurationINTEL" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::release(
+ VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL configuration, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkReleasePerformanceConfigurationINTEL(
+ m_device, static_cast<VkPerformanceConfigurationINTEL>( configuration ) ) );
+ }
+#else
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type
+ Device::release( VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL configuration, Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>( d.vkReleasePerformanceConfigurationINTEL(
+ m_device, static_cast<VkPerformanceConfigurationINTEL>( configuration ) ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::release" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Queue::setPerformanceConfigurationINTEL(
+ VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL configuration, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkQueueSetPerformanceConfigurationINTEL(
+ m_queue, static_cast<VkPerformanceConfigurationINTEL>( configuration ) ) );
+ }
+#else
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type
+ Queue::setPerformanceConfigurationINTEL( VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL configuration,
+ Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>( d.vkQueueSetPerformanceConfigurationINTEL(
+ m_queue, static_cast<VkPerformanceConfigurationINTEL>( configuration ) ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Queue::setPerformanceConfigurationINTEL" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::getPerformanceParameterINTEL( VULKAN_HPP_NAMESPACE::PerformanceParameterTypeINTEL parameter,
+ VULKAN_HPP_NAMESPACE::PerformanceValueINTEL * pValue,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkGetPerformanceParameterINTEL( m_device,
+ static_cast<VkPerformanceParameterTypeINTEL>( parameter ),
+ reinterpret_cast<VkPerformanceValueINTEL *>( pValue ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::PerformanceValueINTEL>::type
+ Device::getPerformanceParameterINTEL( VULKAN_HPP_NAMESPACE::PerformanceParameterTypeINTEL parameter,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::PerformanceValueINTEL value;
+ Result result =
+ static_cast<Result>( d.vkGetPerformanceParameterINTEL( m_device,
+ static_cast<VkPerformanceParameterTypeINTEL>( parameter ),
+ reinterpret_cast<VkPerformanceValueINTEL *>( &value ) ) );
+ return createResultValue( result, value, VULKAN_HPP_NAMESPACE_STRING "::Device::getPerformanceParameterINTEL" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_AMD_display_native_hdr ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::setLocalDimmingAMD( VULKAN_HPP_NAMESPACE::SwapchainKHR swapChain,
+ VULKAN_HPP_NAMESPACE::Bool32 localDimmingEnable,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkSetLocalDimmingAMD(
+ m_device, static_cast<VkSwapchainKHR>( swapChain ), static_cast<VkBool32>( localDimmingEnable ) );
+ }
+
+#if defined( VK_USE_PLATFORM_FUCHSIA )
+ //=== VK_FUCHSIA_imagepipe_surface ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Instance::createImagePipeSurfaceFUCHSIA(
+ const VULKAN_HPP_NAMESPACE::ImagePipeSurfaceCreateInfoFUCHSIA * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::SurfaceKHR * pSurface,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkCreateImagePipeSurfaceFUCHSIA( m_instance,
+ reinterpret_cast<const VkImagePipeSurfaceCreateInfoFUCHSIA *>( pCreateInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkSurfaceKHR *>( pSurface ) ) );
+ }
+
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceKHR>::type
+ Instance::createImagePipeSurfaceFUCHSIA( const ImagePipeSurfaceCreateInfoFUCHSIA & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::SurfaceKHR surface;
+ Result result = static_cast<Result>( d.vkCreateImagePipeSurfaceFUCHSIA(
+ m_instance,
+ reinterpret_cast<const VkImagePipeSurfaceCreateInfoFUCHSIA *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkSurfaceKHR *>( &surface ) ) );
+ return createResultValue(
+ result, surface, VULKAN_HPP_NAMESPACE_STRING "::Instance::createImagePipeSurfaceFUCHSIA" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>>::type
+ Instance::createImagePipeSurfaceFUCHSIAUnique( const ImagePipeSurfaceCreateInfoFUCHSIA & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::SurfaceKHR surface;
+ Result result = static_cast<Result>( d.vkCreateImagePipeSurfaceFUCHSIA(
+ m_instance,
+ reinterpret_cast<const VkImagePipeSurfaceCreateInfoFUCHSIA *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkSurfaceKHR *>( &surface ) ) );
+ ObjectDestroy<Instance, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>(
+ result, surface, VULKAN_HPP_NAMESPACE_STRING "::Instance::createImagePipeSurfaceFUCHSIAUnique", deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_USE_PLATFORM_FUCHSIA*/
+
+#if defined( VK_USE_PLATFORM_METAL_EXT )
+ //=== VK_EXT_metal_surface ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Instance::createMetalSurfaceEXT( const VULKAN_HPP_NAMESPACE::MetalSurfaceCreateInfoEXT * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::SurfaceKHR * pSurface,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkCreateMetalSurfaceEXT( m_instance,
+ reinterpret_cast<const VkMetalSurfaceCreateInfoEXT *>( pCreateInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkSurfaceKHR *>( pSurface ) ) );
+ }
+
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceKHR>::type
+ Instance::createMetalSurfaceEXT( const MetalSurfaceCreateInfoEXT & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::SurfaceKHR surface;
+ Result result = static_cast<Result>(
+ d.vkCreateMetalSurfaceEXT( m_instance,
+ reinterpret_cast<const VkMetalSurfaceCreateInfoEXT *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkSurfaceKHR *>( &surface ) ) );
+ return createResultValue( result, surface, VULKAN_HPP_NAMESPACE_STRING "::Instance::createMetalSurfaceEXT" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>>::type
+ Instance::createMetalSurfaceEXTUnique( const MetalSurfaceCreateInfoEXT & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::SurfaceKHR surface;
+ Result result = static_cast<Result>(
+ d.vkCreateMetalSurfaceEXT( m_instance,
+ reinterpret_cast<const VkMetalSurfaceCreateInfoEXT *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkSurfaceKHR *>( &surface ) ) );
+ ObjectDestroy<Instance, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>(
+ result, surface, VULKAN_HPP_NAMESPACE_STRING "::Instance::createMetalSurfaceEXTUnique", deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_USE_PLATFORM_METAL_EXT*/
+
+ //=== VK_KHR_fragment_shading_rate ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result PhysicalDevice::getFragmentShadingRatesKHR(
+ uint32_t * pFragmentShadingRateCount,
+ VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentShadingRateKHR * pFragmentShadingRates,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkGetPhysicalDeviceFragmentShadingRatesKHR(
+ m_physicalDevice,
+ pFragmentShadingRateCount,
+ reinterpret_cast<VkPhysicalDeviceFragmentShadingRateKHR *>( pFragmentShadingRates ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename PhysicalDeviceFragmentShadingRateKHRAllocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<
+ std::vector<PhysicalDeviceFragmentShadingRateKHR, PhysicalDeviceFragmentShadingRateKHRAllocator>>::type
+ PhysicalDevice::getFragmentShadingRatesKHR( Dispatch const & d ) const
+ {
+ std::vector<PhysicalDeviceFragmentShadingRateKHR, PhysicalDeviceFragmentShadingRateKHRAllocator>
+ fragmentShadingRates;
+ uint32_t fragmentShadingRateCount;
+ Result result;
+ do
+ {
+ result = static_cast<Result>(
+ d.vkGetPhysicalDeviceFragmentShadingRatesKHR( m_physicalDevice, &fragmentShadingRateCount, nullptr ) );
+ if ( ( result == Result::eSuccess ) && fragmentShadingRateCount )
+ {
+ fragmentShadingRates.resize( fragmentShadingRateCount );
+ result = static_cast<Result>( d.vkGetPhysicalDeviceFragmentShadingRatesKHR(
+ m_physicalDevice,
+ &fragmentShadingRateCount,
+ reinterpret_cast<VkPhysicalDeviceFragmentShadingRateKHR *>( fragmentShadingRates.data() ) ) );
+ VULKAN_HPP_ASSERT( fragmentShadingRateCount <= fragmentShadingRates.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( fragmentShadingRateCount < fragmentShadingRates.size() ) )
+ {
+ fragmentShadingRates.resize( fragmentShadingRateCount );
+ }
+ return createResultValue(
+ result, fragmentShadingRates, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getFragmentShadingRatesKHR" );
+ }
+
+ template <typename PhysicalDeviceFragmentShadingRateKHRAllocator,
+ typename Dispatch,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, PhysicalDeviceFragmentShadingRateKHR>::value,
+ int>::type>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<
+ std::vector<PhysicalDeviceFragmentShadingRateKHR, PhysicalDeviceFragmentShadingRateKHRAllocator>>::type
+ PhysicalDevice::getFragmentShadingRatesKHR(
+ PhysicalDeviceFragmentShadingRateKHRAllocator & physicalDeviceFragmentShadingRateKHRAllocator,
+ Dispatch const & d ) const
+ {
+ std::vector<PhysicalDeviceFragmentShadingRateKHR, PhysicalDeviceFragmentShadingRateKHRAllocator>
+ fragmentShadingRates( physicalDeviceFragmentShadingRateKHRAllocator );
+ uint32_t fragmentShadingRateCount;
+ Result result;
+ do
+ {
+ result = static_cast<Result>(
+ d.vkGetPhysicalDeviceFragmentShadingRatesKHR( m_physicalDevice, &fragmentShadingRateCount, nullptr ) );
+ if ( ( result == Result::eSuccess ) && fragmentShadingRateCount )
+ {
+ fragmentShadingRates.resize( fragmentShadingRateCount );
+ result = static_cast<Result>( d.vkGetPhysicalDeviceFragmentShadingRatesKHR(
+ m_physicalDevice,
+ &fragmentShadingRateCount,
+ reinterpret_cast<VkPhysicalDeviceFragmentShadingRateKHR *>( fragmentShadingRates.data() ) ) );
+ VULKAN_HPP_ASSERT( fragmentShadingRateCount <= fragmentShadingRates.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( fragmentShadingRateCount < fragmentShadingRates.size() ) )
+ {
+ fragmentShadingRates.resize( fragmentShadingRateCount );
+ }
+ return createResultValue(
+ result, fragmentShadingRates, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getFragmentShadingRatesKHR" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::setFragmentShadingRateKHR(
+ const VULKAN_HPP_NAMESPACE::Extent2D * pFragmentSize,
+ const VULKAN_HPP_NAMESPACE::FragmentShadingRateCombinerOpKHR combinerOps[2],
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdSetFragmentShadingRateKHR( m_commandBuffer,
+ reinterpret_cast<const VkExtent2D *>( pFragmentSize ),
+ reinterpret_cast<const VkFragmentShadingRateCombinerOpKHR *>( combinerOps ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::setFragmentShadingRateKHR(
+ const Extent2D & fragmentSize,
+ const VULKAN_HPP_NAMESPACE::FragmentShadingRateCombinerOpKHR combinerOps[2],
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdSetFragmentShadingRateKHR( m_commandBuffer,
+ reinterpret_cast<const VkExtent2D *>( &fragmentSize ),
+ reinterpret_cast<const VkFragmentShadingRateCombinerOpKHR *>( combinerOps ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_EXT_buffer_device_address ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE DeviceAddress Device::getBufferAddressEXT(
+ const VULKAN_HPP_NAMESPACE::BufferDeviceAddressInfo * pInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<DeviceAddress>(
+ d.vkGetBufferDeviceAddressEXT( m_device, reinterpret_cast<const VkBufferDeviceAddressInfo *>( pInfo ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE DeviceAddress Device::getBufferAddressEXT( const BufferDeviceAddressInfo & info,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return d.vkGetBufferDeviceAddressEXT( m_device, reinterpret_cast<const VkBufferDeviceAddressInfo *>( &info ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_EXT_tooling_info ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ PhysicalDevice::getToolPropertiesEXT( uint32_t * pToolCount,
+ VULKAN_HPP_NAMESPACE::PhysicalDeviceToolPropertiesEXT * pToolProperties,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkGetPhysicalDeviceToolPropertiesEXT(
+ m_physicalDevice, pToolCount, reinterpret_cast<VkPhysicalDeviceToolPropertiesEXT *>( pToolProperties ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename PhysicalDeviceToolPropertiesEXTAllocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<
+ std::vector<PhysicalDeviceToolPropertiesEXT, PhysicalDeviceToolPropertiesEXTAllocator>>::type
+ PhysicalDevice::getToolPropertiesEXT( Dispatch const & d ) const
+ {
+ std::vector<PhysicalDeviceToolPropertiesEXT, PhysicalDeviceToolPropertiesEXTAllocator> toolProperties;
+ uint32_t toolCount;
+ Result result;
+ do
+ {
+ result = static_cast<Result>( d.vkGetPhysicalDeviceToolPropertiesEXT( m_physicalDevice, &toolCount, nullptr ) );
+ if ( ( result == Result::eSuccess ) && toolCount )
+ {
+ toolProperties.resize( toolCount );
+ result = static_cast<Result>( d.vkGetPhysicalDeviceToolPropertiesEXT(
+ m_physicalDevice,
+ &toolCount,
+ reinterpret_cast<VkPhysicalDeviceToolPropertiesEXT *>( toolProperties.data() ) ) );
+ VULKAN_HPP_ASSERT( toolCount <= toolProperties.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( toolCount < toolProperties.size() ) )
+ {
+ toolProperties.resize( toolCount );
+ }
+ return createResultValue(
+ result, toolProperties, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getToolPropertiesEXT" );
+ }
+
+ template <
+ typename PhysicalDeviceToolPropertiesEXTAllocator,
+ typename Dispatch,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, PhysicalDeviceToolPropertiesEXT>::value, int>::type>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<
+ std::vector<PhysicalDeviceToolPropertiesEXT, PhysicalDeviceToolPropertiesEXTAllocator>>::type
+ PhysicalDevice::getToolPropertiesEXT(
+ PhysicalDeviceToolPropertiesEXTAllocator & physicalDeviceToolPropertiesEXTAllocator, Dispatch const & d ) const
+ {
+ std::vector<PhysicalDeviceToolPropertiesEXT, PhysicalDeviceToolPropertiesEXTAllocator> toolProperties(
+ physicalDeviceToolPropertiesEXTAllocator );
+ uint32_t toolCount;
+ Result result;
+ do
+ {
+ result = static_cast<Result>( d.vkGetPhysicalDeviceToolPropertiesEXT( m_physicalDevice, &toolCount, nullptr ) );
+ if ( ( result == Result::eSuccess ) && toolCount )
+ {
+ toolProperties.resize( toolCount );
+ result = static_cast<Result>( d.vkGetPhysicalDeviceToolPropertiesEXT(
+ m_physicalDevice,
+ &toolCount,
+ reinterpret_cast<VkPhysicalDeviceToolPropertiesEXT *>( toolProperties.data() ) ) );
+ VULKAN_HPP_ASSERT( toolCount <= toolProperties.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( toolCount < toolProperties.size() ) )
+ {
+ toolProperties.resize( toolCount );
+ }
+ return createResultValue(
+ result, toolProperties, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getToolPropertiesEXT" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_NV_cooperative_matrix ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ PhysicalDevice::getCooperativeMatrixPropertiesNV( uint32_t * pPropertyCount,
+ VULKAN_HPP_NAMESPACE::CooperativeMatrixPropertiesNV * pProperties,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkGetPhysicalDeviceCooperativeMatrixPropertiesNV(
+ m_physicalDevice, pPropertyCount, reinterpret_cast<VkCooperativeMatrixPropertiesNV *>( pProperties ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename CooperativeMatrixPropertiesNVAllocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<CooperativeMatrixPropertiesNV, CooperativeMatrixPropertiesNVAllocator>>::type
+ PhysicalDevice::getCooperativeMatrixPropertiesNV( Dispatch const & d ) const
+ {
+ std::vector<CooperativeMatrixPropertiesNV, CooperativeMatrixPropertiesNVAllocator> properties;
+ uint32_t propertyCount;
+ Result result;
+ do
+ {
+ result = static_cast<Result>(
+ d.vkGetPhysicalDeviceCooperativeMatrixPropertiesNV( m_physicalDevice, &propertyCount, nullptr ) );
+ if ( ( result == Result::eSuccess ) && propertyCount )
+ {
+ properties.resize( propertyCount );
+ result = static_cast<Result>( d.vkGetPhysicalDeviceCooperativeMatrixPropertiesNV(
+ m_physicalDevice,
+ &propertyCount,
+ reinterpret_cast<VkCooperativeMatrixPropertiesNV *>( properties.data() ) ) );
+ VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( propertyCount < properties.size() ) )
+ {
+ properties.resize( propertyCount );
+ }
+ return createResultValue(
+ result, properties, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getCooperativeMatrixPropertiesNV" );
+ }
+
+ template <
+ typename CooperativeMatrixPropertiesNVAllocator,
+ typename Dispatch,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, CooperativeMatrixPropertiesNV>::value, int>::type>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<CooperativeMatrixPropertiesNV, CooperativeMatrixPropertiesNVAllocator>>::type
+ PhysicalDevice::getCooperativeMatrixPropertiesNV(
+ CooperativeMatrixPropertiesNVAllocator & cooperativeMatrixPropertiesNVAllocator, Dispatch const & d ) const
+ {
+ std::vector<CooperativeMatrixPropertiesNV, CooperativeMatrixPropertiesNVAllocator> properties(
+ cooperativeMatrixPropertiesNVAllocator );
+ uint32_t propertyCount;
+ Result result;
+ do
+ {
+ result = static_cast<Result>(
+ d.vkGetPhysicalDeviceCooperativeMatrixPropertiesNV( m_physicalDevice, &propertyCount, nullptr ) );
+ if ( ( result == Result::eSuccess ) && propertyCount )
+ {
+ properties.resize( propertyCount );
+ result = static_cast<Result>( d.vkGetPhysicalDeviceCooperativeMatrixPropertiesNV(
+ m_physicalDevice,
+ &propertyCount,
+ reinterpret_cast<VkCooperativeMatrixPropertiesNV *>( properties.data() ) ) );
+ VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( propertyCount < properties.size() ) )
+ {
+ properties.resize( propertyCount );
+ }
+ return createResultValue(
+ result, properties, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getCooperativeMatrixPropertiesNV" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_NV_coverage_reduction_mode ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result PhysicalDevice::getSupportedFramebufferMixedSamplesCombinationsNV(
+ uint32_t * pCombinationCount,
+ VULKAN_HPP_NAMESPACE::FramebufferMixedSamplesCombinationNV * pCombinations,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV(
+ m_physicalDevice,
+ pCombinationCount,
+ reinterpret_cast<VkFramebufferMixedSamplesCombinationNV *>( pCombinations ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename FramebufferMixedSamplesCombinationNVAllocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<
+ std::vector<FramebufferMixedSamplesCombinationNV, FramebufferMixedSamplesCombinationNVAllocator>>::type
+ PhysicalDevice::getSupportedFramebufferMixedSamplesCombinationsNV( Dispatch const & d ) const
+ {
+ std::vector<FramebufferMixedSamplesCombinationNV, FramebufferMixedSamplesCombinationNVAllocator> combinations;
+ uint32_t combinationCount;
+ Result result;
+ do
+ {
+ result = static_cast<Result>( d.vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV(
+ m_physicalDevice, &combinationCount, nullptr ) );
+ if ( ( result == Result::eSuccess ) && combinationCount )
+ {
+ combinations.resize( combinationCount );
+ result = static_cast<Result>( d.vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV(
+ m_physicalDevice,
+ &combinationCount,
+ reinterpret_cast<VkFramebufferMixedSamplesCombinationNV *>( combinations.data() ) ) );
+ VULKAN_HPP_ASSERT( combinationCount <= combinations.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( combinationCount < combinations.size() ) )
+ {
+ combinations.resize( combinationCount );
+ }
+ return createResultValue( result,
+ combinations,
+ VULKAN_HPP_NAMESPACE_STRING
+ "::PhysicalDevice::getSupportedFramebufferMixedSamplesCombinationsNV" );
+ }
+
+ template <typename FramebufferMixedSamplesCombinationNVAllocator,
+ typename Dispatch,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, FramebufferMixedSamplesCombinationNV>::value,
+ int>::type>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<
+ std::vector<FramebufferMixedSamplesCombinationNV, FramebufferMixedSamplesCombinationNVAllocator>>::type
+ PhysicalDevice::getSupportedFramebufferMixedSamplesCombinationsNV(
+ FramebufferMixedSamplesCombinationNVAllocator & framebufferMixedSamplesCombinationNVAllocator,
+ Dispatch const & d ) const
+ {
+ std::vector<FramebufferMixedSamplesCombinationNV, FramebufferMixedSamplesCombinationNVAllocator> combinations(
+ framebufferMixedSamplesCombinationNVAllocator );
+ uint32_t combinationCount;
+ Result result;
+ do
+ {
+ result = static_cast<Result>( d.vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV(
+ m_physicalDevice, &combinationCount, nullptr ) );
+ if ( ( result == Result::eSuccess ) && combinationCount )
+ {
+ combinations.resize( combinationCount );
+ result = static_cast<Result>( d.vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV(
+ m_physicalDevice,
+ &combinationCount,
+ reinterpret_cast<VkFramebufferMixedSamplesCombinationNV *>( combinations.data() ) ) );
+ VULKAN_HPP_ASSERT( combinationCount <= combinations.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( combinationCount < combinations.size() ) )
+ {
+ combinations.resize( combinationCount );
+ }
+ return createResultValue( result,
+ combinations,
+ VULKAN_HPP_NAMESPACE_STRING
+ "::PhysicalDevice::getSupportedFramebufferMixedSamplesCombinationsNV" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ //=== VK_EXT_full_screen_exclusive ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result PhysicalDevice::getSurfacePresentModes2EXT(
+ const VULKAN_HPP_NAMESPACE::PhysicalDeviceSurfaceInfo2KHR * pSurfaceInfo,
+ uint32_t * pPresentModeCount,
+ VULKAN_HPP_NAMESPACE::PresentModeKHR * pPresentModes,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkGetPhysicalDeviceSurfacePresentModes2EXT(
+ m_physicalDevice,
+ reinterpret_cast<const VkPhysicalDeviceSurfaceInfo2KHR *>( pSurfaceInfo ),
+ pPresentModeCount,
+ reinterpret_cast<VkPresentModeKHR *>( pPresentModes ) ) );
+ }
+
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename PresentModeKHRAllocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<PresentModeKHR, PresentModeKHRAllocator>>::type
+ PhysicalDevice::getSurfacePresentModes2EXT( const PhysicalDeviceSurfaceInfo2KHR & surfaceInfo,
+ Dispatch const & d ) const
+ {
+ std::vector<PresentModeKHR, PresentModeKHRAllocator> presentModes;
+ uint32_t presentModeCount;
+ Result result;
+ do
+ {
+ result = static_cast<Result>( d.vkGetPhysicalDeviceSurfacePresentModes2EXT(
+ m_physicalDevice,
+ reinterpret_cast<const VkPhysicalDeviceSurfaceInfo2KHR *>( &surfaceInfo ),
+ &presentModeCount,
+ nullptr ) );
+ if ( ( result == Result::eSuccess ) && presentModeCount )
+ {
+ presentModes.resize( presentModeCount );
+ result = static_cast<Result>( d.vkGetPhysicalDeviceSurfacePresentModes2EXT(
+ m_physicalDevice,
+ reinterpret_cast<const VkPhysicalDeviceSurfaceInfo2KHR *>( &surfaceInfo ),
+ &presentModeCount,
+ reinterpret_cast<VkPresentModeKHR *>( presentModes.data() ) ) );
+ VULKAN_HPP_ASSERT( presentModeCount <= presentModes.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( presentModeCount < presentModes.size() ) )
+ {
+ presentModes.resize( presentModeCount );
+ }
+ return createResultValue(
+ result, presentModes, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getSurfacePresentModes2EXT" );
+ }
+
+ template <typename PresentModeKHRAllocator,
+ typename Dispatch,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, PresentModeKHR>::value, int>::type>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<PresentModeKHR, PresentModeKHRAllocator>>::type
+ PhysicalDevice::getSurfacePresentModes2EXT( const PhysicalDeviceSurfaceInfo2KHR & surfaceInfo,
+ PresentModeKHRAllocator & presentModeKHRAllocator,
+ Dispatch const & d ) const
+ {
+ std::vector<PresentModeKHR, PresentModeKHRAllocator> presentModes( presentModeKHRAllocator );
+ uint32_t presentModeCount;
+ Result result;
+ do
+ {
+ result = static_cast<Result>( d.vkGetPhysicalDeviceSurfacePresentModes2EXT(
+ m_physicalDevice,
+ reinterpret_cast<const VkPhysicalDeviceSurfaceInfo2KHR *>( &surfaceInfo ),
+ &presentModeCount,
+ nullptr ) );
+ if ( ( result == Result::eSuccess ) && presentModeCount )
+ {
+ presentModes.resize( presentModeCount );
+ result = static_cast<Result>( d.vkGetPhysicalDeviceSurfacePresentModes2EXT(
+ m_physicalDevice,
+ reinterpret_cast<const VkPhysicalDeviceSurfaceInfo2KHR *>( &surfaceInfo ),
+ &presentModeCount,
+ reinterpret_cast<VkPresentModeKHR *>( presentModes.data() ) ) );
+ VULKAN_HPP_ASSERT( presentModeCount <= presentModes.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( presentModeCount < presentModes.size() ) )
+ {
+ presentModes.resize( presentModeCount );
+ }
+ return createResultValue(
+ result, presentModes, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getSurfacePresentModes2EXT" );
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+# ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::acquireFullScreenExclusiveModeEXT(
+ VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkAcquireFullScreenExclusiveModeEXT( m_device, static_cast<VkSwapchainKHR>( swapchain ) ) );
+ }
+# else
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type
+ Device::acquireFullScreenExclusiveModeEXT( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain, Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>(
+ d.vkAcquireFullScreenExclusiveModeEXT( m_device, static_cast<VkSwapchainKHR>( swapchain ) ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::acquireFullScreenExclusiveModeEXT" );
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+# ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::releaseFullScreenExclusiveModeEXT(
+ VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkReleaseFullScreenExclusiveModeEXT( m_device, static_cast<VkSwapchainKHR>( swapchain ) ) );
+ }
+# else
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type
+ Device::releaseFullScreenExclusiveModeEXT( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain, Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>(
+ d.vkReleaseFullScreenExclusiveModeEXT( m_device, static_cast<VkSwapchainKHR>( swapchain ) ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::releaseFullScreenExclusiveModeEXT" );
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::getGroupSurfacePresentModes2EXT( const VULKAN_HPP_NAMESPACE::PhysicalDeviceSurfaceInfo2KHR * pSurfaceInfo,
+ VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagsKHR * pModes,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkGetDeviceGroupSurfacePresentModes2EXT(
+ m_device,
+ reinterpret_cast<const VkPhysicalDeviceSurfaceInfo2KHR *>( pSurfaceInfo ),
+ reinterpret_cast<VkDeviceGroupPresentModeFlagsKHR *>( pModes ) ) );
+ }
+
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagsKHR>::type
+ Device::getGroupSurfacePresentModes2EXT( const PhysicalDeviceSurfaceInfo2KHR & surfaceInfo,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagsKHR modes;
+ Result result = static_cast<Result>( d.vkGetDeviceGroupSurfacePresentModes2EXT(
+ m_device,
+ reinterpret_cast<const VkPhysicalDeviceSurfaceInfo2KHR *>( &surfaceInfo ),
+ reinterpret_cast<VkDeviceGroupPresentModeFlagsKHR *>( &modes ) ) );
+ return createResultValue( result, modes, VULKAN_HPP_NAMESPACE_STRING "::Device::getGroupSurfacePresentModes2EXT" );
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+
+ //=== VK_EXT_headless_surface ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Instance::createHeadlessSurfaceEXT( const VULKAN_HPP_NAMESPACE::HeadlessSurfaceCreateInfoEXT * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::SurfaceKHR * pSurface,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkCreateHeadlessSurfaceEXT( m_instance,
+ reinterpret_cast<const VkHeadlessSurfaceCreateInfoEXT *>( pCreateInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkSurfaceKHR *>( pSurface ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceKHR>::type
+ Instance::createHeadlessSurfaceEXT( const HeadlessSurfaceCreateInfoEXT & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::SurfaceKHR surface;
+ Result result = static_cast<Result>(
+ d.vkCreateHeadlessSurfaceEXT( m_instance,
+ reinterpret_cast<const VkHeadlessSurfaceCreateInfoEXT *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkSurfaceKHR *>( &surface ) ) );
+ return createResultValue( result, surface, VULKAN_HPP_NAMESPACE_STRING "::Instance::createHeadlessSurfaceEXT" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>>::type
+ Instance::createHeadlessSurfaceEXTUnique( const HeadlessSurfaceCreateInfoEXT & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::SurfaceKHR surface;
+ Result result = static_cast<Result>(
+ d.vkCreateHeadlessSurfaceEXT( m_instance,
+ reinterpret_cast<const VkHeadlessSurfaceCreateInfoEXT *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkSurfaceKHR *>( &surface ) ) );
+ ObjectDestroy<Instance, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>(
+ result, surface, VULKAN_HPP_NAMESPACE_STRING "::Instance::createHeadlessSurfaceEXTUnique", deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_KHR_buffer_device_address ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE DeviceAddress Device::getBufferAddressKHR(
+ const VULKAN_HPP_NAMESPACE::BufferDeviceAddressInfo * pInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<DeviceAddress>(
+ d.vkGetBufferDeviceAddressKHR( m_device, reinterpret_cast<const VkBufferDeviceAddressInfo *>( pInfo ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE DeviceAddress Device::getBufferAddressKHR( const BufferDeviceAddressInfo & info,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return d.vkGetBufferDeviceAddressKHR( m_device, reinterpret_cast<const VkBufferDeviceAddressInfo *>( &info ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE uint64_t Device::getBufferOpaqueCaptureAddressKHR(
+ const VULKAN_HPP_NAMESPACE::BufferDeviceAddressInfo * pInfo, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return d.vkGetBufferOpaqueCaptureAddressKHR( m_device,
+ reinterpret_cast<const VkBufferDeviceAddressInfo *>( pInfo ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE uint64_t Device::getBufferOpaqueCaptureAddressKHR( const BufferDeviceAddressInfo & info,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return d.vkGetBufferOpaqueCaptureAddressKHR( m_device,
+ reinterpret_cast<const VkBufferDeviceAddressInfo *>( &info ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE uint64_t
+ Device::getMemoryOpaqueCaptureAddressKHR( const VULKAN_HPP_NAMESPACE::DeviceMemoryOpaqueCaptureAddressInfo * pInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return d.vkGetDeviceMemoryOpaqueCaptureAddressKHR(
+ m_device, reinterpret_cast<const VkDeviceMemoryOpaqueCaptureAddressInfo *>( pInfo ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE uint64_t Device::getMemoryOpaqueCaptureAddressKHR(
+ const DeviceMemoryOpaqueCaptureAddressInfo & info, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return d.vkGetDeviceMemoryOpaqueCaptureAddressKHR(
+ m_device, reinterpret_cast<const VkDeviceMemoryOpaqueCaptureAddressInfo *>( &info ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_EXT_line_rasterization ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::setLineStippleEXT( uint32_t lineStippleFactor,
+ uint16_t lineStipplePattern,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdSetLineStippleEXT( m_commandBuffer, lineStippleFactor, lineStipplePattern );
+ }
+
+ //=== VK_EXT_host_query_reset ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::resetQueryPoolEXT( VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ uint32_t firstQuery,
+ uint32_t queryCount,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkResetQueryPoolEXT( m_device, static_cast<VkQueryPool>( queryPool ), firstQuery, queryCount );
+ }
+
+ //=== VK_EXT_extended_dynamic_state ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::setCullModeEXT( VULKAN_HPP_NAMESPACE::CullModeFlags cullMode,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdSetCullModeEXT( m_commandBuffer, static_cast<VkCullModeFlags>( cullMode ) );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::setFrontFaceEXT( VULKAN_HPP_NAMESPACE::FrontFace frontFace,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdSetFrontFaceEXT( m_commandBuffer, static_cast<VkFrontFace>( frontFace ) );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::setPrimitiveTopologyEXT( VULKAN_HPP_NAMESPACE::PrimitiveTopology primitiveTopology,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdSetPrimitiveTopologyEXT( m_commandBuffer, static_cast<VkPrimitiveTopology>( primitiveTopology ) );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::setViewportWithCountEXT( uint32_t viewportCount,
+ const VULKAN_HPP_NAMESPACE::Viewport * pViewports,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdSetViewportWithCountEXT(
+ m_commandBuffer, viewportCount, reinterpret_cast<const VkViewport *>( pViewports ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::setViewportWithCountEXT( ArrayProxy<const VULKAN_HPP_NAMESPACE::Viewport> const & viewports,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdSetViewportWithCountEXT(
+ m_commandBuffer, viewports.size(), reinterpret_cast<const VkViewport *>( viewports.data() ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::setScissorWithCountEXT( uint32_t scissorCount,
+ const VULKAN_HPP_NAMESPACE::Rect2D * pScissors,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdSetScissorWithCountEXT( m_commandBuffer, scissorCount, reinterpret_cast<const VkRect2D *>( pScissors ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::setScissorWithCountEXT( ArrayProxy<const VULKAN_HPP_NAMESPACE::Rect2D> const & scissors,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdSetScissorWithCountEXT(
+ m_commandBuffer, scissors.size(), reinterpret_cast<const VkRect2D *>( scissors.data() ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::bindVertexBuffers2EXT( uint32_t firstBinding,
+ uint32_t bindingCount,
+ const VULKAN_HPP_NAMESPACE::Buffer * pBuffers,
+ const VULKAN_HPP_NAMESPACE::DeviceSize * pOffsets,
+ const VULKAN_HPP_NAMESPACE::DeviceSize * pSizes,
+ const VULKAN_HPP_NAMESPACE::DeviceSize * pStrides,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdBindVertexBuffers2EXT( m_commandBuffer,
+ firstBinding,
+ bindingCount,
+ reinterpret_cast<const VkBuffer *>( pBuffers ),
+ reinterpret_cast<const VkDeviceSize *>( pOffsets ),
+ reinterpret_cast<const VkDeviceSize *>( pSizes ),
+ reinterpret_cast<const VkDeviceSize *>( pStrides ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::bindVertexBuffers2EXT( uint32_t firstBinding,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::Buffer> const & buffers,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::DeviceSize> const & offsets,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::DeviceSize> const & sizes,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::DeviceSize> const & strides,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS
+ {
+# ifdef VULKAN_HPP_NO_EXCEPTIONS
+ VULKAN_HPP_ASSERT( buffers.size() == offsets.size() );
+ VULKAN_HPP_ASSERT( sizes.empty() || buffers.size() == sizes.size() );
+ VULKAN_HPP_ASSERT( strides.empty() || buffers.size() == strides.size() );
+# else
+ if ( buffers.size() != offsets.size() )
+ {
+ throw LogicError( VULKAN_HPP_NAMESPACE_STRING
+ "::CommandBuffer::bindVertexBuffers2EXT: buffers.size() != offsets.size()" );
+ }
+ if ( !sizes.empty() && buffers.size() != sizes.size() )
+ {
+ throw LogicError( VULKAN_HPP_NAMESPACE_STRING
+ "::CommandBuffer::bindVertexBuffers2EXT: buffers.size() != sizes.size()" );
+ }
+ if ( !strides.empty() && buffers.size() != strides.size() )
+ {
+ throw LogicError( VULKAN_HPP_NAMESPACE_STRING
+ "::CommandBuffer::bindVertexBuffers2EXT: buffers.size() != strides.size()" );
+ }
+# endif /*VULKAN_HPP_NO_EXCEPTIONS*/
+
+ d.vkCmdBindVertexBuffers2EXT( m_commandBuffer,
+ firstBinding,
+ buffers.size(),
+ reinterpret_cast<const VkBuffer *>( buffers.data() ),
+ reinterpret_cast<const VkDeviceSize *>( offsets.data() ),
+ reinterpret_cast<const VkDeviceSize *>( sizes.data() ),
+ reinterpret_cast<const VkDeviceSize *>( strides.data() ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::setDepthTestEnableEXT( VULKAN_HPP_NAMESPACE::Bool32 depthTestEnable,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdSetDepthTestEnableEXT( m_commandBuffer, static_cast<VkBool32>( depthTestEnable ) );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::setDepthWriteEnableEXT( VULKAN_HPP_NAMESPACE::Bool32 depthWriteEnable,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdSetDepthWriteEnableEXT( m_commandBuffer, static_cast<VkBool32>( depthWriteEnable ) );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::setDepthCompareOpEXT( VULKAN_HPP_NAMESPACE::CompareOp depthCompareOp,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdSetDepthCompareOpEXT( m_commandBuffer, static_cast<VkCompareOp>( depthCompareOp ) );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::setDepthBoundsTestEnableEXT( VULKAN_HPP_NAMESPACE::Bool32 depthBoundsTestEnable,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdSetDepthBoundsTestEnableEXT( m_commandBuffer, static_cast<VkBool32>( depthBoundsTestEnable ) );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::setStencilTestEnableEXT( VULKAN_HPP_NAMESPACE::Bool32 stencilTestEnable,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdSetStencilTestEnableEXT( m_commandBuffer, static_cast<VkBool32>( stencilTestEnable ) );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::setStencilOpEXT( VULKAN_HPP_NAMESPACE::StencilFaceFlags faceMask,
+ VULKAN_HPP_NAMESPACE::StencilOp failOp,
+ VULKAN_HPP_NAMESPACE::StencilOp passOp,
+ VULKAN_HPP_NAMESPACE::StencilOp depthFailOp,
+ VULKAN_HPP_NAMESPACE::CompareOp compareOp,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdSetStencilOpEXT( m_commandBuffer,
+ static_cast<VkStencilFaceFlags>( faceMask ),
+ static_cast<VkStencilOp>( failOp ),
+ static_cast<VkStencilOp>( passOp ),
+ static_cast<VkStencilOp>( depthFailOp ),
+ static_cast<VkCompareOp>( compareOp ) );
+ }
+
+ //=== VK_KHR_deferred_host_operations ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::createDeferredOperationKHR( const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::DeferredOperationKHR * pDeferredOperation,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkCreateDeferredOperationKHR( m_device,
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkDeferredOperationKHR *>( pDeferredOperation ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::DeferredOperationKHR>::type
+ Device::createDeferredOperationKHR( Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation;
+ Result result = static_cast<Result>(
+ d.vkCreateDeferredOperationKHR( m_device,
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkDeferredOperationKHR *>( &deferredOperation ) ) );
+ return createResultValue(
+ result, deferredOperation, VULKAN_HPP_NAMESPACE_STRING "::Device::createDeferredOperationKHR" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::DeferredOperationKHR, Dispatch>>::type
+ Device::createDeferredOperationKHRUnique( Optional<const AllocationCallbacks> allocator, Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation;
+ Result result = static_cast<Result>(
+ d.vkCreateDeferredOperationKHR( m_device,
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkDeferredOperationKHR *>( &deferredOperation ) ) );
+ ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::DeferredOperationKHR, Dispatch>(
+ result, deferredOperation, VULKAN_HPP_NAMESPACE_STRING "::Device::createDeferredOperationKHRUnique", deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ Device::destroyDeferredOperationKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR operation,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyDeferredOperationKHR( m_device,
+ static_cast<VkDeferredOperationKHR>( operation ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroyDeferredOperationKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR operation,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyDeferredOperationKHR( m_device,
+ static_cast<VkDeferredOperationKHR>( operation ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::DeferredOperationKHR operation,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyDeferredOperationKHR( m_device,
+ static_cast<VkDeferredOperationKHR>( operation ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::DeferredOperationKHR operation,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyDeferredOperationKHR( m_device,
+ static_cast<VkDeferredOperationKHR>( operation ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE uint32_t Device::getDeferredOperationMaxConcurrencyKHR(
+ VULKAN_HPP_NAMESPACE::DeferredOperationKHR operation, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return d.vkGetDeferredOperationMaxConcurrencyKHR( m_device, static_cast<VkDeferredOperationKHR>( operation ) );
+ }
+
+#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getDeferredOperationResultKHR(
+ VULKAN_HPP_NAMESPACE::DeferredOperationKHR operation, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkGetDeferredOperationResultKHR( m_device, static_cast<VkDeferredOperationKHR>( operation ) ) );
+ }
+#else
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getDeferredOperationResultKHR(
+ VULKAN_HPP_NAMESPACE::DeferredOperationKHR operation, Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>(
+ d.vkGetDeferredOperationResultKHR( m_device, static_cast<VkDeferredOperationKHR>( operation ) ) );
+ return createResultValue( result,
+ VULKAN_HPP_NAMESPACE_STRING "::Device::getDeferredOperationResultKHR",
+ { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::eNotReady } );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::deferredOperationJoinKHR(
+ VULKAN_HPP_NAMESPACE::DeferredOperationKHR operation, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkDeferredOperationJoinKHR( m_device, static_cast<VkDeferredOperationKHR>( operation ) ) );
+ }
+#else
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::deferredOperationJoinKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR operation, Dispatch const & d ) const
+ {
+ Result result =
+ static_cast<Result>( d.vkDeferredOperationJoinKHR( m_device, static_cast<VkDeferredOperationKHR>( operation ) ) );
+ return createResultValue( result,
+ VULKAN_HPP_NAMESPACE_STRING "::Device::deferredOperationJoinKHR",
+ { VULKAN_HPP_NAMESPACE::Result::eSuccess,
+ VULKAN_HPP_NAMESPACE::Result::eThreadDoneKHR,
+ VULKAN_HPP_NAMESPACE::Result::eThreadIdleKHR } );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_KHR_pipeline_executable_properties ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::getPipelineExecutablePropertiesKHR( const VULKAN_HPP_NAMESPACE::PipelineInfoKHR * pPipelineInfo,
+ uint32_t * pExecutableCount,
+ VULKAN_HPP_NAMESPACE::PipelineExecutablePropertiesKHR * pProperties,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkGetPipelineExecutablePropertiesKHR( m_device,
+ reinterpret_cast<const VkPipelineInfoKHR *>( pPipelineInfo ),
+ pExecutableCount,
+ reinterpret_cast<VkPipelineExecutablePropertiesKHR *>( pProperties ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename PipelineExecutablePropertiesKHRAllocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<
+ std::vector<PipelineExecutablePropertiesKHR, PipelineExecutablePropertiesKHRAllocator>>::type
+ Device::getPipelineExecutablePropertiesKHR( const PipelineInfoKHR & pipelineInfo, Dispatch const & d ) const
+ {
+ std::vector<PipelineExecutablePropertiesKHR, PipelineExecutablePropertiesKHRAllocator> properties;
+ uint32_t executableCount;
+ Result result;
+ do
+ {
+ result = static_cast<Result>( d.vkGetPipelineExecutablePropertiesKHR(
+ m_device, reinterpret_cast<const VkPipelineInfoKHR *>( &pipelineInfo ), &executableCount, nullptr ) );
+ if ( ( result == Result::eSuccess ) && executableCount )
+ {
+ properties.resize( executableCount );
+ result = static_cast<Result>( d.vkGetPipelineExecutablePropertiesKHR(
+ m_device,
+ reinterpret_cast<const VkPipelineInfoKHR *>( &pipelineInfo ),
+ &executableCount,
+ reinterpret_cast<VkPipelineExecutablePropertiesKHR *>( properties.data() ) ) );
+ VULKAN_HPP_ASSERT( executableCount <= properties.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( executableCount < properties.size() ) )
+ {
+ properties.resize( executableCount );
+ }
+ return createResultValue(
+ result, properties, VULKAN_HPP_NAMESPACE_STRING "::Device::getPipelineExecutablePropertiesKHR" );
+ }
+
+ template <
+ typename PipelineExecutablePropertiesKHRAllocator,
+ typename Dispatch,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, PipelineExecutablePropertiesKHR>::value, int>::type>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType<
+ std::vector<PipelineExecutablePropertiesKHR, PipelineExecutablePropertiesKHRAllocator>>::type
+ Device::getPipelineExecutablePropertiesKHR(
+ const PipelineInfoKHR & pipelineInfo,
+ PipelineExecutablePropertiesKHRAllocator & pipelineExecutablePropertiesKHRAllocator,
+ Dispatch const & d ) const
+ {
+ std::vector<PipelineExecutablePropertiesKHR, PipelineExecutablePropertiesKHRAllocator> properties(
+ pipelineExecutablePropertiesKHRAllocator );
+ uint32_t executableCount;
+ Result result;
+ do
+ {
+ result = static_cast<Result>( d.vkGetPipelineExecutablePropertiesKHR(
+ m_device, reinterpret_cast<const VkPipelineInfoKHR *>( &pipelineInfo ), &executableCount, nullptr ) );
+ if ( ( result == Result::eSuccess ) && executableCount )
+ {
+ properties.resize( executableCount );
+ result = static_cast<Result>( d.vkGetPipelineExecutablePropertiesKHR(
+ m_device,
+ reinterpret_cast<const VkPipelineInfoKHR *>( &pipelineInfo ),
+ &executableCount,
+ reinterpret_cast<VkPipelineExecutablePropertiesKHR *>( properties.data() ) ) );
+ VULKAN_HPP_ASSERT( executableCount <= properties.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( executableCount < properties.size() ) )
+ {
+ properties.resize( executableCount );
+ }
+ return createResultValue(
+ result, properties, VULKAN_HPP_NAMESPACE_STRING "::Device::getPipelineExecutablePropertiesKHR" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::getPipelineExecutableStatisticsKHR( const VULKAN_HPP_NAMESPACE::PipelineExecutableInfoKHR * pExecutableInfo,
+ uint32_t * pStatisticCount,
+ VULKAN_HPP_NAMESPACE::PipelineExecutableStatisticKHR * pStatistics,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkGetPipelineExecutableStatisticsKHR( m_device,
+ reinterpret_cast<const VkPipelineExecutableInfoKHR *>( pExecutableInfo ),
+ pStatisticCount,
+ reinterpret_cast<VkPipelineExecutableStatisticKHR *>( pStatistics ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename PipelineExecutableStatisticKHRAllocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<PipelineExecutableStatisticKHR, PipelineExecutableStatisticKHRAllocator>>::type
+ Device::getPipelineExecutableStatisticsKHR( const PipelineExecutableInfoKHR & executableInfo,
+ Dispatch const & d ) const
+ {
+ std::vector<PipelineExecutableStatisticKHR, PipelineExecutableStatisticKHRAllocator> statistics;
+ uint32_t statisticCount;
+ Result result;
+ do
+ {
+ result = static_cast<Result>( d.vkGetPipelineExecutableStatisticsKHR(
+ m_device,
+ reinterpret_cast<const VkPipelineExecutableInfoKHR *>( &executableInfo ),
+ &statisticCount,
+ nullptr ) );
+ if ( ( result == Result::eSuccess ) && statisticCount )
+ {
+ statistics.resize( statisticCount );
+ result = static_cast<Result>( d.vkGetPipelineExecutableStatisticsKHR(
+ m_device,
+ reinterpret_cast<const VkPipelineExecutableInfoKHR *>( &executableInfo ),
+ &statisticCount,
+ reinterpret_cast<VkPipelineExecutableStatisticKHR *>( statistics.data() ) ) );
+ VULKAN_HPP_ASSERT( statisticCount <= statistics.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( statisticCount < statistics.size() ) )
+ {
+ statistics.resize( statisticCount );
+ }
+ return createResultValue(
+ result, statistics, VULKAN_HPP_NAMESPACE_STRING "::Device::getPipelineExecutableStatisticsKHR" );
+ }
+
+ template <
+ typename PipelineExecutableStatisticKHRAllocator,
+ typename Dispatch,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, PipelineExecutableStatisticKHR>::value, int>::type>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<PipelineExecutableStatisticKHR, PipelineExecutableStatisticKHRAllocator>>::type
+ Device::getPipelineExecutableStatisticsKHR(
+ const PipelineExecutableInfoKHR & executableInfo,
+ PipelineExecutableStatisticKHRAllocator & pipelineExecutableStatisticKHRAllocator,
+ Dispatch const & d ) const
+ {
+ std::vector<PipelineExecutableStatisticKHR, PipelineExecutableStatisticKHRAllocator> statistics(
+ pipelineExecutableStatisticKHRAllocator );
+ uint32_t statisticCount;
+ Result result;
+ do
+ {
+ result = static_cast<Result>( d.vkGetPipelineExecutableStatisticsKHR(
+ m_device,
+ reinterpret_cast<const VkPipelineExecutableInfoKHR *>( &executableInfo ),
+ &statisticCount,
+ nullptr ) );
+ if ( ( result == Result::eSuccess ) && statisticCount )
+ {
+ statistics.resize( statisticCount );
+ result = static_cast<Result>( d.vkGetPipelineExecutableStatisticsKHR(
+ m_device,
+ reinterpret_cast<const VkPipelineExecutableInfoKHR *>( &executableInfo ),
+ &statisticCount,
+ reinterpret_cast<VkPipelineExecutableStatisticKHR *>( statistics.data() ) ) );
+ VULKAN_HPP_ASSERT( statisticCount <= statistics.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( statisticCount < statistics.size() ) )
+ {
+ statistics.resize( statisticCount );
+ }
+ return createResultValue(
+ result, statistics, VULKAN_HPP_NAMESPACE_STRING "::Device::getPipelineExecutableStatisticsKHR" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getPipelineExecutableInternalRepresentationsKHR(
+ const VULKAN_HPP_NAMESPACE::PipelineExecutableInfoKHR * pExecutableInfo,
+ uint32_t * pInternalRepresentationCount,
+ VULKAN_HPP_NAMESPACE::PipelineExecutableInternalRepresentationKHR * pInternalRepresentations,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkGetPipelineExecutableInternalRepresentationsKHR(
+ m_device,
+ reinterpret_cast<const VkPipelineExecutableInfoKHR *>( pExecutableInfo ),
+ pInternalRepresentationCount,
+ reinterpret_cast<VkPipelineExecutableInternalRepresentationKHR *>( pInternalRepresentations ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename PipelineExecutableInternalRepresentationKHRAllocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<PipelineExecutableInternalRepresentationKHR,
+ PipelineExecutableInternalRepresentationKHRAllocator>>::type
+ Device::getPipelineExecutableInternalRepresentationsKHR( const PipelineExecutableInfoKHR & executableInfo,
+ Dispatch const & d ) const
+ {
+ std::vector<PipelineExecutableInternalRepresentationKHR, PipelineExecutableInternalRepresentationKHRAllocator>
+ internalRepresentations;
+ uint32_t internalRepresentationCount;
+ Result result;
+ do
+ {
+ result = static_cast<Result>( d.vkGetPipelineExecutableInternalRepresentationsKHR(
+ m_device,
+ reinterpret_cast<const VkPipelineExecutableInfoKHR *>( &executableInfo ),
+ &internalRepresentationCount,
+ nullptr ) );
+ if ( ( result == Result::eSuccess ) && internalRepresentationCount )
+ {
+ internalRepresentations.resize( internalRepresentationCount );
+ result = static_cast<Result>( d.vkGetPipelineExecutableInternalRepresentationsKHR(
+ m_device,
+ reinterpret_cast<const VkPipelineExecutableInfoKHR *>( &executableInfo ),
+ &internalRepresentationCount,
+ reinterpret_cast<VkPipelineExecutableInternalRepresentationKHR *>( internalRepresentations.data() ) ) );
+ VULKAN_HPP_ASSERT( internalRepresentationCount <= internalRepresentations.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( internalRepresentationCount < internalRepresentations.size() ) )
+ {
+ internalRepresentations.resize( internalRepresentationCount );
+ }
+ return createResultValue( result,
+ internalRepresentations,
+ VULKAN_HPP_NAMESPACE_STRING "::Device::getPipelineExecutableInternalRepresentationsKHR" );
+ }
+
+ template <
+ typename PipelineExecutableInternalRepresentationKHRAllocator,
+ typename Dispatch,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, PipelineExecutableInternalRepresentationKHR>::value,
+ int>::type>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE
+ typename ResultValueType<std::vector<PipelineExecutableInternalRepresentationKHR,
+ PipelineExecutableInternalRepresentationKHRAllocator>>::type
+ Device::getPipelineExecutableInternalRepresentationsKHR(
+ const PipelineExecutableInfoKHR & executableInfo,
+ PipelineExecutableInternalRepresentationKHRAllocator & pipelineExecutableInternalRepresentationKHRAllocator,
+ Dispatch const & d ) const
+ {
+ std::vector<PipelineExecutableInternalRepresentationKHR, PipelineExecutableInternalRepresentationKHRAllocator>
+ internalRepresentations( pipelineExecutableInternalRepresentationKHRAllocator );
+ uint32_t internalRepresentationCount;
+ Result result;
+ do
+ {
+ result = static_cast<Result>( d.vkGetPipelineExecutableInternalRepresentationsKHR(
+ m_device,
+ reinterpret_cast<const VkPipelineExecutableInfoKHR *>( &executableInfo ),
+ &internalRepresentationCount,
+ nullptr ) );
+ if ( ( result == Result::eSuccess ) && internalRepresentationCount )
+ {
+ internalRepresentations.resize( internalRepresentationCount );
+ result = static_cast<Result>( d.vkGetPipelineExecutableInternalRepresentationsKHR(
+ m_device,
+ reinterpret_cast<const VkPipelineExecutableInfoKHR *>( &executableInfo ),
+ &internalRepresentationCount,
+ reinterpret_cast<VkPipelineExecutableInternalRepresentationKHR *>( internalRepresentations.data() ) ) );
+ VULKAN_HPP_ASSERT( internalRepresentationCount <= internalRepresentations.size() );
+ }
+ } while ( result == Result::eIncomplete );
+ if ( ( result == Result::eSuccess ) && ( internalRepresentationCount < internalRepresentations.size() ) )
+ {
+ internalRepresentations.resize( internalRepresentationCount );
+ }
+ return createResultValue( result,
+ internalRepresentations,
+ VULKAN_HPP_NAMESPACE_STRING "::Device::getPipelineExecutableInternalRepresentationsKHR" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_NV_device_generated_commands ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::getGeneratedCommandsMemoryRequirementsNV(
+ const VULKAN_HPP_NAMESPACE::GeneratedCommandsMemoryRequirementsInfoNV * pInfo,
+ VULKAN_HPP_NAMESPACE::MemoryRequirements2 * pMemoryRequirements,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkGetGeneratedCommandsMemoryRequirementsNV(
+ m_device,
+ reinterpret_cast<const VkGeneratedCommandsMemoryRequirementsInfoNV *>( pInfo ),
+ reinterpret_cast<VkMemoryRequirements2 *>( pMemoryRequirements ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::MemoryRequirements2
+ Device::getGeneratedCommandsMemoryRequirementsNV( const GeneratedCommandsMemoryRequirementsInfoNV & info,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_NAMESPACE::MemoryRequirements2 memoryRequirements;
+ d.vkGetGeneratedCommandsMemoryRequirementsNV(
+ m_device,
+ reinterpret_cast<const VkGeneratedCommandsMemoryRequirementsInfoNV *>( &info ),
+ reinterpret_cast<VkMemoryRequirements2 *>( &memoryRequirements ) );
+ return memoryRequirements;
+ }
+
+ template <typename X, typename Y, typename... Z, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE StructureChain<X, Y, Z...>
+ Device::getGeneratedCommandsMemoryRequirementsNV( const GeneratedCommandsMemoryRequirementsInfoNV & info,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ StructureChain<X, Y, Z...> structureChain;
+ VULKAN_HPP_NAMESPACE::MemoryRequirements2 & memoryRequirements =
+ structureChain.template get<VULKAN_HPP_NAMESPACE::MemoryRequirements2>();
+ d.vkGetGeneratedCommandsMemoryRequirementsNV(
+ m_device,
+ reinterpret_cast<const VkGeneratedCommandsMemoryRequirementsInfoNV *>( &info ),
+ reinterpret_cast<VkMemoryRequirements2 *>( &memoryRequirements ) );
+ return structureChain;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::preprocessGeneratedCommandsNV(
+ const VULKAN_HPP_NAMESPACE::GeneratedCommandsInfoNV * pGeneratedCommandsInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdPreprocessGeneratedCommandsNV(
+ m_commandBuffer, reinterpret_cast<const VkGeneratedCommandsInfoNV *>( pGeneratedCommandsInfo ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::preprocessGeneratedCommandsNV( const GeneratedCommandsInfoNV & generatedCommandsInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdPreprocessGeneratedCommandsNV(
+ m_commandBuffer, reinterpret_cast<const VkGeneratedCommandsInfoNV *>( &generatedCommandsInfo ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::executeGeneratedCommandsNV(
+ VULKAN_HPP_NAMESPACE::Bool32 isPreprocessed,
+ const VULKAN_HPP_NAMESPACE::GeneratedCommandsInfoNV * pGeneratedCommandsInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdExecuteGeneratedCommandsNV( m_commandBuffer,
+ static_cast<VkBool32>( isPreprocessed ),
+ reinterpret_cast<const VkGeneratedCommandsInfoNV *>( pGeneratedCommandsInfo ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::executeGeneratedCommandsNV( VULKAN_HPP_NAMESPACE::Bool32 isPreprocessed,
+ const GeneratedCommandsInfoNV & generatedCommandsInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdExecuteGeneratedCommandsNV( m_commandBuffer,
+ static_cast<VkBool32>( isPreprocessed ),
+ reinterpret_cast<const VkGeneratedCommandsInfoNV *>( &generatedCommandsInfo ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::bindPipelineShaderGroupNV( VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint,
+ VULKAN_HPP_NAMESPACE::Pipeline pipeline,
+ uint32_t groupIndex,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdBindPipelineShaderGroupNV( m_commandBuffer,
+ static_cast<VkPipelineBindPoint>( pipelineBindPoint ),
+ static_cast<VkPipeline>( pipeline ),
+ groupIndex );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::createIndirectCommandsLayoutNV(
+ const VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutCreateInfoNV * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV * pIndirectCommandsLayout,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkCreateIndirectCommandsLayoutNV( m_device,
+ reinterpret_cast<const VkIndirectCommandsLayoutCreateInfoNV *>( pCreateInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkIndirectCommandsLayoutNV *>( pIndirectCommandsLayout ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV>::type
+ Device::createIndirectCommandsLayoutNV( const IndirectCommandsLayoutCreateInfoNV & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV indirectCommandsLayout;
+ Result result = static_cast<Result>( d.vkCreateIndirectCommandsLayoutNV(
+ m_device,
+ reinterpret_cast<const VkIndirectCommandsLayoutCreateInfoNV *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkIndirectCommandsLayoutNV *>( &indirectCommandsLayout ) ) );
+ return createResultValue(
+ result, indirectCommandsLayout, VULKAN_HPP_NAMESPACE_STRING "::Device::createIndirectCommandsLayoutNV" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV, Dispatch>>::type
+ Device::createIndirectCommandsLayoutNVUnique( const IndirectCommandsLayoutCreateInfoNV & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV indirectCommandsLayout;
+ Result result = static_cast<Result>( d.vkCreateIndirectCommandsLayoutNV(
+ m_device,
+ reinterpret_cast<const VkIndirectCommandsLayoutCreateInfoNV *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkIndirectCommandsLayoutNV *>( &indirectCommandsLayout ) ) );
+ ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV, Dispatch>(
+ result,
+ indirectCommandsLayout,
+ VULKAN_HPP_NAMESPACE_STRING "::Device::createIndirectCommandsLayoutNVUnique",
+ deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ Device::destroyIndirectCommandsLayoutNV( VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV indirectCommandsLayout,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyIndirectCommandsLayoutNV( m_device,
+ static_cast<VkIndirectCommandsLayoutNV>( indirectCommandsLayout ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ Device::destroyIndirectCommandsLayoutNV( VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV indirectCommandsLayout,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyIndirectCommandsLayoutNV(
+ m_device,
+ static_cast<VkIndirectCommandsLayoutNV>( indirectCommandsLayout ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV indirectCommandsLayout,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyIndirectCommandsLayoutNV( m_device,
+ static_cast<VkIndirectCommandsLayoutNV>( indirectCommandsLayout ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV indirectCommandsLayout,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyIndirectCommandsLayoutNV(
+ m_device,
+ static_cast<VkIndirectCommandsLayoutNV>( indirectCommandsLayout ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_EXT_acquire_drm_display ===
+
+#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result PhysicalDevice::acquireDrmDisplayEXT(
+ int32_t drmFd, VULKAN_HPP_NAMESPACE::DisplayKHR display, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkAcquireDrmDisplayEXT( m_physicalDevice, drmFd, static_cast<VkDisplayKHR>( display ) ) );
+ }
+#else
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE typename ResultValueType<void>::type PhysicalDevice::acquireDrmDisplayEXT(
+ int32_t drmFd, VULKAN_HPP_NAMESPACE::DisplayKHR display, Dispatch const & d ) const
+ {
+ Result result =
+ static_cast<Result>( d.vkAcquireDrmDisplayEXT( m_physicalDevice, drmFd, static_cast<VkDisplayKHR>( display ) ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::acquireDrmDisplayEXT" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ PhysicalDevice::getDrmDisplayEXT( int32_t drmFd,
+ uint32_t connectorId,
+ VULKAN_HPP_NAMESPACE::DisplayKHR * display,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkGetDrmDisplayEXT( m_physicalDevice, drmFd, connectorId, reinterpret_cast<VkDisplayKHR *>( display ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::DisplayKHR>::type
+ PhysicalDevice::getDrmDisplayEXT( int32_t drmFd, uint32_t connectorId, Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::DisplayKHR display;
+ Result result = static_cast<Result>(
+ d.vkGetDrmDisplayEXT( m_physicalDevice, drmFd, connectorId, reinterpret_cast<VkDisplayKHR *>( &display ) ) );
+ return createResultValue( result, display, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getDrmDisplayEXT" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::DisplayKHR, Dispatch>>::type
+ PhysicalDevice::getDrmDisplayEXTUnique( int32_t drmFd, uint32_t connectorId, Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::DisplayKHR display;
+ Result result = static_cast<Result>(
+ d.vkGetDrmDisplayEXT( m_physicalDevice, drmFd, connectorId, reinterpret_cast<VkDisplayKHR *>( &display ) ) );
+ ObjectRelease<PhysicalDevice, Dispatch> deleter( *this, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::DisplayKHR, Dispatch>(
+ result, display, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getDrmDisplayEXTUnique", deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_EXT_private_data ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::createPrivateDataSlotEXT( const VULKAN_HPP_NAMESPACE::PrivateDataSlotCreateInfoEXT * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT * pPrivateDataSlot,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkCreatePrivateDataSlotEXT( m_device,
+ reinterpret_cast<const VkPrivateDataSlotCreateInfoEXT *>( pCreateInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkPrivateDataSlotEXT *>( pPrivateDataSlot ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT>::type
+ Device::createPrivateDataSlotEXT( const PrivateDataSlotCreateInfoEXT & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT privateDataSlot;
+ Result result = static_cast<Result>(
+ d.vkCreatePrivateDataSlotEXT( m_device,
+ reinterpret_cast<const VkPrivateDataSlotCreateInfoEXT *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkPrivateDataSlotEXT *>( &privateDataSlot ) ) );
+ return createResultValue(
+ result, privateDataSlot, VULKAN_HPP_NAMESPACE_STRING "::Device::createPrivateDataSlotEXT" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT, Dispatch>>::type
+ Device::createPrivateDataSlotEXTUnique( const PrivateDataSlotCreateInfoEXT & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT privateDataSlot;
+ Result result = static_cast<Result>(
+ d.vkCreatePrivateDataSlotEXT( m_device,
+ reinterpret_cast<const VkPrivateDataSlotCreateInfoEXT *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkPrivateDataSlotEXT *>( &privateDataSlot ) ) );
+ ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT, Dispatch>(
+ result, privateDataSlot, VULKAN_HPP_NAMESPACE_STRING "::Device::createPrivateDataSlotEXTUnique", deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ Device::destroyPrivateDataSlotEXT( VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT privateDataSlot,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyPrivateDataSlotEXT( m_device,
+ static_cast<VkPrivateDataSlotEXT>( privateDataSlot ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroyPrivateDataSlotEXT( VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT privateDataSlot,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyPrivateDataSlotEXT( m_device,
+ static_cast<VkPrivateDataSlotEXT>( privateDataSlot ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT privateDataSlot,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyPrivateDataSlotEXT( m_device,
+ static_cast<VkPrivateDataSlotEXT>( privateDataSlot ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT privateDataSlot,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkDestroyPrivateDataSlotEXT( m_device,
+ static_cast<VkPrivateDataSlotEXT>( privateDataSlot ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::setPrivateDataEXT( VULKAN_HPP_NAMESPACE::ObjectType objectType,
+ uint64_t objectHandle,
+ VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT privateDataSlot,
+ uint64_t data,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkSetPrivateDataEXT( m_device,
+ static_cast<VkObjectType>( objectType ),
+ objectHandle,
+ static_cast<VkPrivateDataSlotEXT>( privateDataSlot ),
+ data ) );
+ }
+#else
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE typename ResultValueType<void>::type
+ Device::setPrivateDataEXT( VULKAN_HPP_NAMESPACE::ObjectType objectType,
+ uint64_t objectHandle,
+ VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT privateDataSlot,
+ uint64_t data,
+ Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>( d.vkSetPrivateDataEXT( m_device,
+ static_cast<VkObjectType>( objectType ),
+ objectHandle,
+ static_cast<VkPrivateDataSlotEXT>( privateDataSlot ),
+ data ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::setPrivateDataEXT" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Device::getPrivateDataEXT( VULKAN_HPP_NAMESPACE::ObjectType objectType,
+ uint64_t objectHandle,
+ VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT privateDataSlot,
+ uint64_t * pData,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkGetPrivateDataEXT( m_device,
+ static_cast<VkObjectType>( objectType ),
+ objectHandle,
+ static_cast<VkPrivateDataSlotEXT>( privateDataSlot ),
+ pData );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE uint64_t
+ Device::getPrivateDataEXT( VULKAN_HPP_NAMESPACE::ObjectType objectType,
+ uint64_t objectHandle,
+ VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT privateDataSlot,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ uint64_t data;
+ d.vkGetPrivateDataEXT( m_device,
+ static_cast<VkObjectType>( objectType ),
+ objectHandle,
+ static_cast<VkPrivateDataSlotEXT>( privateDataSlot ),
+ &data );
+ return data;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ //=== VK_KHR_video_encode_queue ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::encodeVideoKHR( const VULKAN_HPP_NAMESPACE::VideoEncodeInfoKHR * pEncodeInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdEncodeVideoKHR( m_commandBuffer, reinterpret_cast<const VkVideoEncodeInfoKHR *>( pEncodeInfo ) );
+ }
+
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::encodeVideoKHR( const VideoEncodeInfoKHR & encodeInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdEncodeVideoKHR( m_commandBuffer, reinterpret_cast<const VkVideoEncodeInfoKHR *>( &encodeInfo ) );
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+ //=== VK_KHR_synchronization2 ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::setEvent2KHR( VULKAN_HPP_NAMESPACE::Event event,
+ const VULKAN_HPP_NAMESPACE::DependencyInfoKHR * pDependencyInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdSetEvent2KHR( m_commandBuffer,
+ static_cast<VkEvent>( event ),
+ reinterpret_cast<const VkDependencyInfoKHR *>( pDependencyInfo ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::setEvent2KHR( VULKAN_HPP_NAMESPACE::Event event,
+ const DependencyInfoKHR & dependencyInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdSetEvent2KHR( m_commandBuffer,
+ static_cast<VkEvent>( event ),
+ reinterpret_cast<const VkDependencyInfoKHR *>( &dependencyInfo ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::resetEvent2KHR( VULKAN_HPP_NAMESPACE::Event event,
+ VULKAN_HPP_NAMESPACE::PipelineStageFlags2KHR stageMask,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdResetEvent2KHR(
+ m_commandBuffer, static_cast<VkEvent>( event ), static_cast<VkPipelineStageFlags2KHR>( stageMask ) );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::waitEvents2KHR( uint32_t eventCount,
+ const VULKAN_HPP_NAMESPACE::Event * pEvents,
+ const VULKAN_HPP_NAMESPACE::DependencyInfoKHR * pDependencyInfos,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdWaitEvents2KHR( m_commandBuffer,
+ eventCount,
+ reinterpret_cast<const VkEvent *>( pEvents ),
+ reinterpret_cast<const VkDependencyInfoKHR *>( pDependencyInfos ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::waitEvents2KHR( ArrayProxy<const VULKAN_HPP_NAMESPACE::Event> const & events,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::DependencyInfoKHR> const & dependencyInfos,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS
+ {
+# ifdef VULKAN_HPP_NO_EXCEPTIONS
+ VULKAN_HPP_ASSERT( events.size() == dependencyInfos.size() );
+# else
+ if ( events.size() != dependencyInfos.size() )
+ {
+ throw LogicError( VULKAN_HPP_NAMESPACE_STRING
+ "::CommandBuffer::waitEvents2KHR: events.size() != dependencyInfos.size()" );
+ }
+# endif /*VULKAN_HPP_NO_EXCEPTIONS*/
+
+ d.vkCmdWaitEvents2KHR( m_commandBuffer,
+ events.size(),
+ reinterpret_cast<const VkEvent *>( events.data() ),
+ reinterpret_cast<const VkDependencyInfoKHR *>( dependencyInfos.data() ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::pipelineBarrier2KHR( const VULKAN_HPP_NAMESPACE::DependencyInfoKHR * pDependencyInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdPipelineBarrier2KHR( m_commandBuffer, reinterpret_cast<const VkDependencyInfoKHR *>( pDependencyInfo ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::pipelineBarrier2KHR( const DependencyInfoKHR & dependencyInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdPipelineBarrier2KHR( m_commandBuffer, reinterpret_cast<const VkDependencyInfoKHR *>( &dependencyInfo ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::writeTimestamp2KHR( VULKAN_HPP_NAMESPACE::PipelineStageFlags2KHR stage,
+ VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ uint32_t query,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdWriteTimestamp2KHR(
+ m_commandBuffer, static_cast<VkPipelineStageFlags2KHR>( stage ), static_cast<VkQueryPool>( queryPool ), query );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Queue::submit2KHR( uint32_t submitCount,
+ const VULKAN_HPP_NAMESPACE::SubmitInfo2KHR * pSubmits,
+ VULKAN_HPP_NAMESPACE::Fence fence,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkQueueSubmit2KHR(
+ m_queue, submitCount, reinterpret_cast<const VkSubmitInfo2KHR *>( pSubmits ), static_cast<VkFence>( fence ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type
+ Queue::submit2KHR( ArrayProxy<const VULKAN_HPP_NAMESPACE::SubmitInfo2KHR> const & submits,
+ VULKAN_HPP_NAMESPACE::Fence fence,
+ Dispatch const & d ) const
+ {
+ Result result =
+ static_cast<Result>( d.vkQueueSubmit2KHR( m_queue,
+ submits.size(),
+ reinterpret_cast<const VkSubmitInfo2KHR *>( submits.data() ),
+ static_cast<VkFence>( fence ) ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Queue::submit2KHR" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::writeBufferMarker2AMD( VULKAN_HPP_NAMESPACE::PipelineStageFlags2KHR stage,
+ VULKAN_HPP_NAMESPACE::Buffer dstBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize dstOffset,
+ uint32_t marker,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdWriteBufferMarker2AMD( m_commandBuffer,
+ static_cast<VkPipelineStageFlags2KHR>( stage ),
+ static_cast<VkBuffer>( dstBuffer ),
+ static_cast<VkDeviceSize>( dstOffset ),
+ marker );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void Queue::getCheckpointData2NV( uint32_t * pCheckpointDataCount,
+ VULKAN_HPP_NAMESPACE::CheckpointData2NV * pCheckpointData,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkGetQueueCheckpointData2NV(
+ m_queue, pCheckpointDataCount, reinterpret_cast<VkCheckpointData2NV *>( pCheckpointData ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename CheckpointData2NVAllocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<CheckpointData2NV, CheckpointData2NVAllocator>
+ Queue::getCheckpointData2NV( Dispatch const & d ) const
+ {
+ std::vector<CheckpointData2NV, CheckpointData2NVAllocator> checkpointData;
+ uint32_t checkpointDataCount;
+ d.vkGetQueueCheckpointData2NV( m_queue, &checkpointDataCount, nullptr );
+ checkpointData.resize( checkpointDataCount );
+ d.vkGetQueueCheckpointData2NV(
+ m_queue, &checkpointDataCount, reinterpret_cast<VkCheckpointData2NV *>( checkpointData.data() ) );
+ VULKAN_HPP_ASSERT( checkpointDataCount <= checkpointData.size() );
+ return checkpointData;
+ }
+
+ template <typename CheckpointData2NVAllocator,
+ typename Dispatch,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, CheckpointData2NV>::value, int>::type>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<CheckpointData2NV, CheckpointData2NVAllocator>
+ Queue::getCheckpointData2NV( CheckpointData2NVAllocator & checkpointData2NVAllocator, Dispatch const & d ) const
+ {
+ std::vector<CheckpointData2NV, CheckpointData2NVAllocator> checkpointData( checkpointData2NVAllocator );
+ uint32_t checkpointDataCount;
+ d.vkGetQueueCheckpointData2NV( m_queue, &checkpointDataCount, nullptr );
+ checkpointData.resize( checkpointDataCount );
+ d.vkGetQueueCheckpointData2NV(
+ m_queue, &checkpointDataCount, reinterpret_cast<VkCheckpointData2NV *>( checkpointData.data() ) );
+ VULKAN_HPP_ASSERT( checkpointDataCount <= checkpointData.size() );
+ return checkpointData;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_NV_fragment_shading_rate_enums ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::setFragmentShadingRateEnumNV(
+ VULKAN_HPP_NAMESPACE::FragmentShadingRateNV shadingRate,
+ const VULKAN_HPP_NAMESPACE::FragmentShadingRateCombinerOpKHR combinerOps[2],
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdSetFragmentShadingRateEnumNV( m_commandBuffer,
+ static_cast<VkFragmentShadingRateNV>( shadingRate ),
+ reinterpret_cast<const VkFragmentShadingRateCombinerOpKHR *>( combinerOps ) );
+ }
+
+ //=== VK_KHR_copy_commands2 ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::copyBuffer2KHR( const VULKAN_HPP_NAMESPACE::CopyBufferInfo2KHR * pCopyBufferInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdCopyBuffer2KHR( m_commandBuffer, reinterpret_cast<const VkCopyBufferInfo2KHR *>( pCopyBufferInfo ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::copyBuffer2KHR( const CopyBufferInfo2KHR & copyBufferInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdCopyBuffer2KHR( m_commandBuffer, reinterpret_cast<const VkCopyBufferInfo2KHR *>( &copyBufferInfo ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::copyImage2KHR( const VULKAN_HPP_NAMESPACE::CopyImageInfo2KHR * pCopyImageInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdCopyImage2KHR( m_commandBuffer, reinterpret_cast<const VkCopyImageInfo2KHR *>( pCopyImageInfo ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::copyImage2KHR( const CopyImageInfo2KHR & copyImageInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdCopyImage2KHR( m_commandBuffer, reinterpret_cast<const VkCopyImageInfo2KHR *>( &copyImageInfo ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::copyBufferToImage2KHR(
+ const VULKAN_HPP_NAMESPACE::CopyBufferToImageInfo2KHR * pCopyBufferToImageInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdCopyBufferToImage2KHR( m_commandBuffer,
+ reinterpret_cast<const VkCopyBufferToImageInfo2KHR *>( pCopyBufferToImageInfo ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::copyBufferToImage2KHR( const CopyBufferToImageInfo2KHR & copyBufferToImageInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdCopyBufferToImage2KHR( m_commandBuffer,
+ reinterpret_cast<const VkCopyBufferToImageInfo2KHR *>( &copyBufferToImageInfo ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::copyImageToBuffer2KHR(
+ const VULKAN_HPP_NAMESPACE::CopyImageToBufferInfo2KHR * pCopyImageToBufferInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdCopyImageToBuffer2KHR( m_commandBuffer,
+ reinterpret_cast<const VkCopyImageToBufferInfo2KHR *>( pCopyImageToBufferInfo ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::copyImageToBuffer2KHR( const CopyImageToBufferInfo2KHR & copyImageToBufferInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdCopyImageToBuffer2KHR( m_commandBuffer,
+ reinterpret_cast<const VkCopyImageToBufferInfo2KHR *>( &copyImageToBufferInfo ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::blitImage2KHR( const VULKAN_HPP_NAMESPACE::BlitImageInfo2KHR * pBlitImageInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdBlitImage2KHR( m_commandBuffer, reinterpret_cast<const VkBlitImageInfo2KHR *>( pBlitImageInfo ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::blitImage2KHR( const BlitImageInfo2KHR & blitImageInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdBlitImage2KHR( m_commandBuffer, reinterpret_cast<const VkBlitImageInfo2KHR *>( &blitImageInfo ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::resolveImage2KHR( const VULKAN_HPP_NAMESPACE::ResolveImageInfo2KHR * pResolveImageInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdResolveImage2KHR( m_commandBuffer, reinterpret_cast<const VkResolveImageInfo2KHR *>( pResolveImageInfo ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::resolveImage2KHR( const ResolveImageInfo2KHR & resolveImageInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdResolveImage2KHR( m_commandBuffer, reinterpret_cast<const VkResolveImageInfo2KHR *>( &resolveImageInfo ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ //=== VK_NV_acquire_winrt_display ===
+
+# ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result PhysicalDevice::acquireWinrtDisplayNV(
+ VULKAN_HPP_NAMESPACE::DisplayKHR display, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkAcquireWinrtDisplayNV( m_physicalDevice, static_cast<VkDisplayKHR>( display ) ) );
+ }
+# else
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type
+ PhysicalDevice::acquireWinrtDisplayNV( VULKAN_HPP_NAMESPACE::DisplayKHR display, Dispatch const & d ) const
+ {
+ Result result =
+ static_cast<Result>( d.vkAcquireWinrtDisplayNV( m_physicalDevice, static_cast<VkDisplayKHR>( display ) ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::acquireWinrtDisplayNV" );
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ PhysicalDevice::getWinrtDisplayNV( uint32_t deviceRelativeId,
+ VULKAN_HPP_NAMESPACE::DisplayKHR * pDisplay,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkGetWinrtDisplayNV( m_physicalDevice, deviceRelativeId, reinterpret_cast<VkDisplayKHR *>( pDisplay ) ) );
+ }
+
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::DisplayKHR>::type
+ PhysicalDevice::getWinrtDisplayNV( uint32_t deviceRelativeId, Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::DisplayKHR display;
+ Result result = static_cast<Result>(
+ d.vkGetWinrtDisplayNV( m_physicalDevice, deviceRelativeId, reinterpret_cast<VkDisplayKHR *>( &display ) ) );
+ return createResultValue( result, display, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getWinrtDisplayNV" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::DisplayKHR, Dispatch>>::type
+ PhysicalDevice::getWinrtDisplayNVUnique( uint32_t deviceRelativeId, Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::DisplayKHR display;
+ Result result = static_cast<Result>(
+ d.vkGetWinrtDisplayNV( m_physicalDevice, deviceRelativeId, reinterpret_cast<VkDisplayKHR *>( &display ) ) );
+ ObjectRelease<PhysicalDevice, Dispatch> deleter( *this, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::DisplayKHR, Dispatch>(
+ result, display, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getWinrtDisplayNVUnique", deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+
+#if defined( VK_USE_PLATFORM_DIRECTFB_EXT )
+ //=== VK_EXT_directfb_surface ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Instance::createDirectFBSurfaceEXT( const VULKAN_HPP_NAMESPACE::DirectFBSurfaceCreateInfoEXT * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::SurfaceKHR * pSurface,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkCreateDirectFBSurfaceEXT( m_instance,
+ reinterpret_cast<const VkDirectFBSurfaceCreateInfoEXT *>( pCreateInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkSurfaceKHR *>( pSurface ) ) );
+ }
+
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceKHR>::type
+ Instance::createDirectFBSurfaceEXT( const DirectFBSurfaceCreateInfoEXT & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::SurfaceKHR surface;
+ Result result = static_cast<Result>(
+ d.vkCreateDirectFBSurfaceEXT( m_instance,
+ reinterpret_cast<const VkDirectFBSurfaceCreateInfoEXT *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkSurfaceKHR *>( &surface ) ) );
+ return createResultValue( result, surface, VULKAN_HPP_NAMESPACE_STRING "::Instance::createDirectFBSurfaceEXT" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>>::type
+ Instance::createDirectFBSurfaceEXTUnique( const DirectFBSurfaceCreateInfoEXT & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::SurfaceKHR surface;
+ Result result = static_cast<Result>(
+ d.vkCreateDirectFBSurfaceEXT( m_instance,
+ reinterpret_cast<const VkDirectFBSurfaceCreateInfoEXT *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkSurfaceKHR *>( &surface ) ) );
+ ObjectDestroy<Instance, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>(
+ result, surface, VULKAN_HPP_NAMESPACE_STRING "::Instance::createDirectFBSurfaceEXTUnique", deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE Bool32 PhysicalDevice::getDirectFBPresentationSupportEXT(
+ uint32_t queueFamilyIndex, IDirectFB * dfb, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Bool32>(
+ d.vkGetPhysicalDeviceDirectFBPresentationSupportEXT( m_physicalDevice, queueFamilyIndex, dfb ) );
+ }
+
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE Bool32 PhysicalDevice::getDirectFBPresentationSupportEXT(
+ uint32_t queueFamilyIndex, IDirectFB & dfb, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return d.vkGetPhysicalDeviceDirectFBPresentationSupportEXT( m_physicalDevice, queueFamilyIndex, &dfb );
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_USE_PLATFORM_DIRECTFB_EXT*/
+
+ //=== VK_KHR_ray_tracing_pipeline ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::traceRaysKHR(
+ const VULKAN_HPP_NAMESPACE::StridedDeviceAddressRegionKHR * pRaygenShaderBindingTable,
+ const VULKAN_HPP_NAMESPACE::StridedDeviceAddressRegionKHR * pMissShaderBindingTable,
+ const VULKAN_HPP_NAMESPACE::StridedDeviceAddressRegionKHR * pHitShaderBindingTable,
+ const VULKAN_HPP_NAMESPACE::StridedDeviceAddressRegionKHR * pCallableShaderBindingTable,
+ uint32_t width,
+ uint32_t height,
+ uint32_t depth,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdTraceRaysKHR( m_commandBuffer,
+ reinterpret_cast<const VkStridedDeviceAddressRegionKHR *>( pRaygenShaderBindingTable ),
+ reinterpret_cast<const VkStridedDeviceAddressRegionKHR *>( pMissShaderBindingTable ),
+ reinterpret_cast<const VkStridedDeviceAddressRegionKHR *>( pHitShaderBindingTable ),
+ reinterpret_cast<const VkStridedDeviceAddressRegionKHR *>( pCallableShaderBindingTable ),
+ width,
+ height,
+ depth );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::traceRaysKHR( const StridedDeviceAddressRegionKHR & raygenShaderBindingTable,
+ const StridedDeviceAddressRegionKHR & missShaderBindingTable,
+ const StridedDeviceAddressRegionKHR & hitShaderBindingTable,
+ const StridedDeviceAddressRegionKHR & callableShaderBindingTable,
+ uint32_t width,
+ uint32_t height,
+ uint32_t depth,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdTraceRaysKHR( m_commandBuffer,
+ reinterpret_cast<const VkStridedDeviceAddressRegionKHR *>( &raygenShaderBindingTable ),
+ reinterpret_cast<const VkStridedDeviceAddressRegionKHR *>( &missShaderBindingTable ),
+ reinterpret_cast<const VkStridedDeviceAddressRegionKHR *>( &hitShaderBindingTable ),
+ reinterpret_cast<const VkStridedDeviceAddressRegionKHR *>( &callableShaderBindingTable ),
+ width,
+ height,
+ depth );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::createRayTracingPipelinesKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation,
+ VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ uint32_t createInfoCount,
+ const VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoKHR * pCreateInfos,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::Pipeline * pPipelines,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkCreateRayTracingPipelinesKHR( m_device,
+ static_cast<VkDeferredOperationKHR>( deferredOperation ),
+ static_cast<VkPipelineCache>( pipelineCache ),
+ createInfoCount,
+ reinterpret_cast<const VkRayTracingPipelineCreateInfoKHR *>( pCreateInfos ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkPipeline *>( pPipelines ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename PipelineAllocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE ResultValue<std::vector<Pipeline, PipelineAllocator>>
+ Device::createRayTracingPipelinesKHR(
+ VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation,
+ VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoKHR> const & createInfos,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ std::vector<Pipeline, PipelineAllocator> pipelines( createInfos.size() );
+ Result result = static_cast<Result>( d.vkCreateRayTracingPipelinesKHR(
+ m_device,
+ static_cast<VkDeferredOperationKHR>( deferredOperation ),
+ static_cast<VkPipelineCache>( pipelineCache ),
+ createInfos.size(),
+ reinterpret_cast<const VkRayTracingPipelineCreateInfoKHR *>( createInfos.data() ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkPipeline *>( pipelines.data() ) ) );
+ return createResultValue( result,
+ pipelines,
+ VULKAN_HPP_NAMESPACE_STRING "::Device::createRayTracingPipelinesKHR",
+ { VULKAN_HPP_NAMESPACE::Result::eSuccess,
+ VULKAN_HPP_NAMESPACE::Result::eOperationDeferredKHR,
+ VULKAN_HPP_NAMESPACE::Result::eOperationNotDeferredKHR,
+ VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT } );
+ }
+
+ template <typename PipelineAllocator,
+ typename Dispatch,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, Pipeline>::value, int>::type>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE ResultValue<std::vector<Pipeline, PipelineAllocator>>
+ Device::createRayTracingPipelinesKHR(
+ VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation,
+ VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoKHR> const & createInfos,
+ Optional<const AllocationCallbacks> allocator,
+ PipelineAllocator & pipelineAllocator,
+ Dispatch const & d ) const
+ {
+ std::vector<Pipeline, PipelineAllocator> pipelines( createInfos.size(), pipelineAllocator );
+ Result result = static_cast<Result>( d.vkCreateRayTracingPipelinesKHR(
+ m_device,
+ static_cast<VkDeferredOperationKHR>( deferredOperation ),
+ static_cast<VkPipelineCache>( pipelineCache ),
+ createInfos.size(),
+ reinterpret_cast<const VkRayTracingPipelineCreateInfoKHR *>( createInfos.data() ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkPipeline *>( pipelines.data() ) ) );
+ return createResultValue( result,
+ pipelines,
+ VULKAN_HPP_NAMESPACE_STRING "::Device::createRayTracingPipelinesKHR",
+ { VULKAN_HPP_NAMESPACE::Result::eSuccess,
+ VULKAN_HPP_NAMESPACE::Result::eOperationDeferredKHR,
+ VULKAN_HPP_NAMESPACE::Result::eOperationNotDeferredKHR,
+ VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT } );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE ResultValue<Pipeline>
+ Device::createRayTracingPipelineKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation,
+ VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ const VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoKHR & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ Pipeline pipeline;
+ Result result = static_cast<Result>(
+ d.vkCreateRayTracingPipelinesKHR( m_device,
+ static_cast<VkDeferredOperationKHR>( deferredOperation ),
+ static_cast<VkPipelineCache>( pipelineCache ),
+ 1,
+ reinterpret_cast<const VkRayTracingPipelineCreateInfoKHR *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkPipeline *>( &pipeline ) ) );
+ return createResultValue( result,
+ pipeline,
+ VULKAN_HPP_NAMESPACE_STRING "::Device::createRayTracingPipelineKHR",
+ { VULKAN_HPP_NAMESPACE::Result::eSuccess,
+ VULKAN_HPP_NAMESPACE::Result::eOperationDeferredKHR,
+ VULKAN_HPP_NAMESPACE::Result::eOperationNotDeferredKHR,
+ VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT } );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch, typename PipelineAllocator>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE ResultValue<std::vector<UniqueHandle<Pipeline, Dispatch>, PipelineAllocator>>
+ Device::createRayTracingPipelinesKHRUnique(
+ VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation,
+ VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoKHR> const & createInfos,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ std::vector<UniqueHandle<Pipeline, Dispatch>, PipelineAllocator> uniquePipelines;
+ std::vector<Pipeline> pipelines( createInfos.size() );
+ Result result = static_cast<Result>( d.vkCreateRayTracingPipelinesKHR(
+ m_device,
+ static_cast<VkDeferredOperationKHR>( deferredOperation ),
+ static_cast<VkPipelineCache>( pipelineCache ),
+ createInfos.size(),
+ reinterpret_cast<const VkRayTracingPipelineCreateInfoKHR *>( createInfos.data() ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkPipeline *>( pipelines.data() ) ) );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) ||
+ ( result == VULKAN_HPP_NAMESPACE::Result::eOperationDeferredKHR ) ||
+ ( result == VULKAN_HPP_NAMESPACE::Result::eOperationNotDeferredKHR ) ||
+ ( result == VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT ) )
+ {
+ uniquePipelines.reserve( createInfos.size() );
+ ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
+ for ( size_t i = 0; i < createInfos.size(); i++ )
+ {
+ uniquePipelines.push_back( UniqueHandle<Pipeline, Dispatch>( pipelines[i], deleter ) );
+ }
+ }
+ return createResultValue( result,
+ std::move( uniquePipelines ),
+ VULKAN_HPP_NAMESPACE_STRING "::Device::createRayTracingPipelinesKHRUnique",
+ { VULKAN_HPP_NAMESPACE::Result::eSuccess,
+ VULKAN_HPP_NAMESPACE::Result::eOperationDeferredKHR,
+ VULKAN_HPP_NAMESPACE::Result::eOperationNotDeferredKHR,
+ VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT } );
+ }
+
+ template <
+ typename Dispatch,
+ typename PipelineAllocator,
+ typename B,
+ typename std::enable_if<std::is_same<typename B::value_type, UniqueHandle<Pipeline, Dispatch>>::value, int>::type>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE ResultValue<std::vector<UniqueHandle<Pipeline, Dispatch>, PipelineAllocator>>
+ Device::createRayTracingPipelinesKHRUnique(
+ VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation,
+ VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoKHR> const & createInfos,
+ Optional<const AllocationCallbacks> allocator,
+ PipelineAllocator & pipelineAllocator,
+ Dispatch const & d ) const
+ {
+ std::vector<UniqueHandle<Pipeline, Dispatch>, PipelineAllocator> uniquePipelines( pipelineAllocator );
+ std::vector<Pipeline> pipelines( createInfos.size() );
+ Result result = static_cast<Result>( d.vkCreateRayTracingPipelinesKHR(
+ m_device,
+ static_cast<VkDeferredOperationKHR>( deferredOperation ),
+ static_cast<VkPipelineCache>( pipelineCache ),
+ createInfos.size(),
+ reinterpret_cast<const VkRayTracingPipelineCreateInfoKHR *>( createInfos.data() ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkPipeline *>( pipelines.data() ) ) );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) ||
+ ( result == VULKAN_HPP_NAMESPACE::Result::eOperationDeferredKHR ) ||
+ ( result == VULKAN_HPP_NAMESPACE::Result::eOperationNotDeferredKHR ) ||
+ ( result == VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT ) )
+ {
+ uniquePipelines.reserve( createInfos.size() );
+ ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
+ for ( size_t i = 0; i < createInfos.size(); i++ )
+ {
+ uniquePipelines.push_back( UniqueHandle<Pipeline, Dispatch>( pipelines[i], deleter ) );
+ }
+ }
+ return createResultValue( result,
+ std::move( uniquePipelines ),
+ VULKAN_HPP_NAMESPACE_STRING "::Device::createRayTracingPipelinesKHRUnique",
+ { VULKAN_HPP_NAMESPACE::Result::eSuccess,
+ VULKAN_HPP_NAMESPACE::Result::eOperationDeferredKHR,
+ VULKAN_HPP_NAMESPACE::Result::eOperationNotDeferredKHR,
+ VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT } );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE ResultValue<UniqueHandle<Pipeline, Dispatch>>
+ Device::createRayTracingPipelineKHRUnique( VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation,
+ VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ const VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoKHR & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ Pipeline pipeline;
+ Result result = static_cast<Result>(
+ d.vkCreateRayTracingPipelinesKHR( m_device,
+ static_cast<VkDeferredOperationKHR>( deferredOperation ),
+ static_cast<VkPipelineCache>( pipelineCache ),
+ 1,
+ reinterpret_cast<const VkRayTracingPipelineCreateInfoKHR *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkPipeline *>( &pipeline ) ) );
+ ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<Pipeline, Dispatch>( result,
+ pipeline,
+ VULKAN_HPP_NAMESPACE_STRING
+ "::Device::createRayTracingPipelineKHRUnique",
+ { VULKAN_HPP_NAMESPACE::Result::eSuccess,
+ VULKAN_HPP_NAMESPACE::Result::eOperationDeferredKHR,
+ VULKAN_HPP_NAMESPACE::Result::eOperationNotDeferredKHR,
+ VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT },
+ deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::getRayTracingShaderGroupHandlesKHR( VULKAN_HPP_NAMESPACE::Pipeline pipeline,
+ uint32_t firstGroup,
+ uint32_t groupCount,
+ size_t dataSize,
+ void * pData,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkGetRayTracingShaderGroupHandlesKHR(
+ m_device, static_cast<VkPipeline>( pipeline ), firstGroup, groupCount, dataSize, pData ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename T, typename Dispatch>
+ VULKAN_HPP_DEPRECATED( "This function is deprecated. Use one of the other flavours of it." )
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<void>::type Device::getRayTracingShaderGroupHandlesKHR(
+ VULKAN_HPP_NAMESPACE::Pipeline pipeline,
+ uint32_t firstGroup,
+ uint32_t groupCount,
+ ArrayProxy<T> const & data,
+ Dispatch const & d ) const
+ {
+ Result result =
+ static_cast<Result>( d.vkGetRayTracingShaderGroupHandlesKHR( m_device,
+ static_cast<VkPipeline>( pipeline ),
+ firstGroup,
+ groupCount,
+ data.size() * sizeof( T ),
+ reinterpret_cast<void *>( data.data() ) ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::getRayTracingShaderGroupHandlesKHR" );
+ }
+
+ template <typename T, typename Allocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<std::vector<T, Allocator>>::type
+ Device::getRayTracingShaderGroupHandlesKHR( VULKAN_HPP_NAMESPACE::Pipeline pipeline,
+ uint32_t firstGroup,
+ uint32_t groupCount,
+ size_t dataSize,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_ASSERT( dataSize % sizeof( T ) == 0 );
+ std::vector<T, Allocator> data( dataSize / sizeof( T ) );
+ Result result =
+ static_cast<Result>( d.vkGetRayTracingShaderGroupHandlesKHR( m_device,
+ static_cast<VkPipeline>( pipeline ),
+ firstGroup,
+ groupCount,
+ data.size() * sizeof( T ),
+ reinterpret_cast<void *>( data.data() ) ) );
+ return createResultValue(
+ result, data, VULKAN_HPP_NAMESPACE_STRING "::Device::getRayTracingShaderGroupHandlesKHR" );
+ }
+
+ template <typename T, typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<T>::type
+ Device::getRayTracingShaderGroupHandleKHR( VULKAN_HPP_NAMESPACE::Pipeline pipeline,
+ uint32_t firstGroup,
+ uint32_t groupCount,
+ Dispatch const & d ) const
+ {
+ T data;
+ Result result = static_cast<Result>( d.vkGetRayTracingShaderGroupHandlesKHR( m_device,
+ static_cast<VkPipeline>( pipeline ),
+ firstGroup,
+ groupCount,
+ sizeof( T ),
+ reinterpret_cast<void *>( &data ) ) );
+ return createResultValue( result, data, VULKAN_HPP_NAMESPACE_STRING "::Device::getRayTracingShaderGroupHandleKHR" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Device::getRayTracingCaptureReplayShaderGroupHandlesKHR( VULKAN_HPP_NAMESPACE::Pipeline pipeline,
+ uint32_t firstGroup,
+ uint32_t groupCount,
+ size_t dataSize,
+ void * pData,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkGetRayTracingCaptureReplayShaderGroupHandlesKHR(
+ m_device, static_cast<VkPipeline>( pipeline ), firstGroup, groupCount, dataSize, pData ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename T, typename Dispatch>
+ VULKAN_HPP_DEPRECATED( "This function is deprecated. Use one of the other flavours of it." )
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<void>::type Device::getRayTracingCaptureReplayShaderGroupHandlesKHR(
+ VULKAN_HPP_NAMESPACE::Pipeline pipeline,
+ uint32_t firstGroup,
+ uint32_t groupCount,
+ ArrayProxy<T> const & data,
+ Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>(
+ d.vkGetRayTracingCaptureReplayShaderGroupHandlesKHR( m_device,
+ static_cast<VkPipeline>( pipeline ),
+ firstGroup,
+ groupCount,
+ data.size() * sizeof( T ),
+ reinterpret_cast<void *>( data.data() ) ) );
+ return createResultValue( result,
+ VULKAN_HPP_NAMESPACE_STRING "::Device::getRayTracingCaptureReplayShaderGroupHandlesKHR" );
+ }
+
+ template <typename T, typename Allocator, typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<std::vector<T, Allocator>>::type
+ Device::getRayTracingCaptureReplayShaderGroupHandlesKHR( VULKAN_HPP_NAMESPACE::Pipeline pipeline,
+ uint32_t firstGroup,
+ uint32_t groupCount,
+ size_t dataSize,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_ASSERT( dataSize % sizeof( T ) == 0 );
+ std::vector<T, Allocator> data( dataSize / sizeof( T ) );
+ Result result = static_cast<Result>(
+ d.vkGetRayTracingCaptureReplayShaderGroupHandlesKHR( m_device,
+ static_cast<VkPipeline>( pipeline ),
+ firstGroup,
+ groupCount,
+ data.size() * sizeof( T ),
+ reinterpret_cast<void *>( data.data() ) ) );
+ return createResultValue(
+ result, data, VULKAN_HPP_NAMESPACE_STRING "::Device::getRayTracingCaptureReplayShaderGroupHandlesKHR" );
+ }
+
+ template <typename T, typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<T>::type
+ Device::getRayTracingCaptureReplayShaderGroupHandleKHR( VULKAN_HPP_NAMESPACE::Pipeline pipeline,
+ uint32_t firstGroup,
+ uint32_t groupCount,
+ Dispatch const & d ) const
+ {
+ T data;
+ Result result =
+ static_cast<Result>( d.vkGetRayTracingCaptureReplayShaderGroupHandlesKHR( m_device,
+ static_cast<VkPipeline>( pipeline ),
+ firstGroup,
+ groupCount,
+ sizeof( T ),
+ reinterpret_cast<void *>( &data ) ) );
+ return createResultValue(
+ result, data, VULKAN_HPP_NAMESPACE_STRING "::Device::getRayTracingCaptureReplayShaderGroupHandleKHR" );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::traceRaysIndirectKHR(
+ const VULKAN_HPP_NAMESPACE::StridedDeviceAddressRegionKHR * pRaygenShaderBindingTable,
+ const VULKAN_HPP_NAMESPACE::StridedDeviceAddressRegionKHR * pMissShaderBindingTable,
+ const VULKAN_HPP_NAMESPACE::StridedDeviceAddressRegionKHR * pHitShaderBindingTable,
+ const VULKAN_HPP_NAMESPACE::StridedDeviceAddressRegionKHR * pCallableShaderBindingTable,
+ VULKAN_HPP_NAMESPACE::DeviceAddress indirectDeviceAddress,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdTraceRaysIndirectKHR(
+ m_commandBuffer,
+ reinterpret_cast<const VkStridedDeviceAddressRegionKHR *>( pRaygenShaderBindingTable ),
+ reinterpret_cast<const VkStridedDeviceAddressRegionKHR *>( pMissShaderBindingTable ),
+ reinterpret_cast<const VkStridedDeviceAddressRegionKHR *>( pHitShaderBindingTable ),
+ reinterpret_cast<const VkStridedDeviceAddressRegionKHR *>( pCallableShaderBindingTable ),
+ static_cast<VkDeviceAddress>( indirectDeviceAddress ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::traceRaysIndirectKHR( const StridedDeviceAddressRegionKHR & raygenShaderBindingTable,
+ const StridedDeviceAddressRegionKHR & missShaderBindingTable,
+ const StridedDeviceAddressRegionKHR & hitShaderBindingTable,
+ const StridedDeviceAddressRegionKHR & callableShaderBindingTable,
+ VULKAN_HPP_NAMESPACE::DeviceAddress indirectDeviceAddress,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdTraceRaysIndirectKHR(
+ m_commandBuffer,
+ reinterpret_cast<const VkStridedDeviceAddressRegionKHR *>( &raygenShaderBindingTable ),
+ reinterpret_cast<const VkStridedDeviceAddressRegionKHR *>( &missShaderBindingTable ),
+ reinterpret_cast<const VkStridedDeviceAddressRegionKHR *>( &hitShaderBindingTable ),
+ reinterpret_cast<const VkStridedDeviceAddressRegionKHR *>( &callableShaderBindingTable ),
+ static_cast<VkDeviceAddress>( indirectDeviceAddress ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE DeviceSize
+ Device::getRayTracingShaderGroupStackSizeKHR( VULKAN_HPP_NAMESPACE::Pipeline pipeline,
+ uint32_t group,
+ VULKAN_HPP_NAMESPACE::ShaderGroupShaderKHR groupShader,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<DeviceSize>( d.vkGetRayTracingShaderGroupStackSizeKHR(
+ m_device, static_cast<VkPipeline>( pipeline ), group, static_cast<VkShaderGroupShaderKHR>( groupShader ) ) );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::setRayTracingPipelineStackSizeKHR( uint32_t pipelineStackSize,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdSetRayTracingPipelineStackSizeKHR( m_commandBuffer, pipelineStackSize );
+ }
+
+ //=== VK_EXT_vertex_input_dynamic_state ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::setVertexInputEXT(
+ uint32_t vertexBindingDescriptionCount,
+ const VULKAN_HPP_NAMESPACE::VertexInputBindingDescription2EXT * pVertexBindingDescriptions,
+ uint32_t vertexAttributeDescriptionCount,
+ const VULKAN_HPP_NAMESPACE::VertexInputAttributeDescription2EXT * pVertexAttributeDescriptions,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdSetVertexInputEXT(
+ m_commandBuffer,
+ vertexBindingDescriptionCount,
+ reinterpret_cast<const VkVertexInputBindingDescription2EXT *>( pVertexBindingDescriptions ),
+ vertexAttributeDescriptionCount,
+ reinterpret_cast<const VkVertexInputAttributeDescription2EXT *>( pVertexAttributeDescriptions ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::setVertexInputEXT(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::VertexInputBindingDescription2EXT> const & vertexBindingDescriptions,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::VertexInputAttributeDescription2EXT> const & vertexAttributeDescriptions,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdSetVertexInputEXT(
+ m_commandBuffer,
+ vertexBindingDescriptions.size(),
+ reinterpret_cast<const VkVertexInputBindingDescription2EXT *>( vertexBindingDescriptions.data() ),
+ vertexAttributeDescriptions.size(),
+ reinterpret_cast<const VkVertexInputAttributeDescription2EXT *>( vertexAttributeDescriptions.data() ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#if defined( VK_USE_PLATFORM_FUCHSIA )
+ //=== VK_FUCHSIA_external_memory ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getMemoryZirconHandleFUCHSIA(
+ const VULKAN_HPP_NAMESPACE::MemoryGetZirconHandleInfoFUCHSIA * pGetZirconHandleInfo,
+ zx_handle_t * pZirconHandle,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkGetMemoryZirconHandleFUCHSIA(
+ m_device, reinterpret_cast<const VkMemoryGetZirconHandleInfoFUCHSIA *>( pGetZirconHandleInfo ), pZirconHandle ) );
+ }
+
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<zx_handle_t>::type
+ Device::getMemoryZirconHandleFUCHSIA( const MemoryGetZirconHandleInfoFUCHSIA & getZirconHandleInfo,
+ Dispatch const & d ) const
+ {
+ zx_handle_t zirconHandle;
+ Result result = static_cast<Result>( d.vkGetMemoryZirconHandleFUCHSIA(
+ m_device, reinterpret_cast<const VkMemoryGetZirconHandleInfoFUCHSIA *>( &getZirconHandleInfo ), &zirconHandle ) );
+ return createResultValue(
+ result, zirconHandle, VULKAN_HPP_NAMESPACE_STRING "::Device::getMemoryZirconHandleFUCHSIA" );
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getMemoryZirconHandlePropertiesFUCHSIA(
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType,
+ zx_handle_t zirconHandle,
+ VULKAN_HPP_NAMESPACE::MemoryZirconHandlePropertiesFUCHSIA * pMemoryZirconHandleProperties,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkGetMemoryZirconHandlePropertiesFUCHSIA(
+ m_device,
+ static_cast<VkExternalMemoryHandleTypeFlagBits>( handleType ),
+ zirconHandle,
+ reinterpret_cast<VkMemoryZirconHandlePropertiesFUCHSIA *>( pMemoryZirconHandleProperties ) ) );
+ }
+
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE typename ResultValueType<VULKAN_HPP_NAMESPACE::MemoryZirconHandlePropertiesFUCHSIA>::type
+ Device::getMemoryZirconHandlePropertiesFUCHSIA( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType,
+ zx_handle_t zirconHandle,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::MemoryZirconHandlePropertiesFUCHSIA memoryZirconHandleProperties;
+ Result result = static_cast<Result>( d.vkGetMemoryZirconHandlePropertiesFUCHSIA(
+ m_device,
+ static_cast<VkExternalMemoryHandleTypeFlagBits>( handleType ),
+ zirconHandle,
+ reinterpret_cast<VkMemoryZirconHandlePropertiesFUCHSIA *>( &memoryZirconHandleProperties ) ) );
+ return createResultValue( result,
+ memoryZirconHandleProperties,
+ VULKAN_HPP_NAMESPACE_STRING "::Device::getMemoryZirconHandlePropertiesFUCHSIA" );
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_USE_PLATFORM_FUCHSIA*/
+
+#if defined( VK_USE_PLATFORM_FUCHSIA )
+ //=== VK_FUCHSIA_external_semaphore ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::importSemaphoreZirconHandleFUCHSIA(
+ const VULKAN_HPP_NAMESPACE::ImportSemaphoreZirconHandleInfoFUCHSIA * pImportSemaphoreZirconHandleInfo,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkImportSemaphoreZirconHandleFUCHSIA(
+ m_device,
+ reinterpret_cast<const VkImportSemaphoreZirconHandleInfoFUCHSIA *>( pImportSemaphoreZirconHandleInfo ) ) );
+ }
+
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type
+ Device::importSemaphoreZirconHandleFUCHSIA(
+ const ImportSemaphoreZirconHandleInfoFUCHSIA & importSemaphoreZirconHandleInfo, Dispatch const & d ) const
+ {
+ Result result = static_cast<Result>( d.vkImportSemaphoreZirconHandleFUCHSIA(
+ m_device,
+ reinterpret_cast<const VkImportSemaphoreZirconHandleInfoFUCHSIA *>( &importSemaphoreZirconHandleInfo ) ) );
+ return createResultValue( result, VULKAN_HPP_NAMESPACE_STRING "::Device::importSemaphoreZirconHandleFUCHSIA" );
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::getSemaphoreZirconHandleFUCHSIA(
+ const VULKAN_HPP_NAMESPACE::SemaphoreGetZirconHandleInfoFUCHSIA * pGetZirconHandleInfo,
+ zx_handle_t * pZirconHandle,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkGetSemaphoreZirconHandleFUCHSIA(
+ m_device,
+ reinterpret_cast<const VkSemaphoreGetZirconHandleInfoFUCHSIA *>( pGetZirconHandleInfo ),
+ pZirconHandle ) );
+ }
+
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<zx_handle_t>::type
+ Device::getSemaphoreZirconHandleFUCHSIA( const SemaphoreGetZirconHandleInfoFUCHSIA & getZirconHandleInfo,
+ Dispatch const & d ) const
+ {
+ zx_handle_t zirconHandle;
+ Result result = static_cast<Result>( d.vkGetSemaphoreZirconHandleFUCHSIA(
+ m_device,
+ reinterpret_cast<const VkSemaphoreGetZirconHandleInfoFUCHSIA *>( &getZirconHandleInfo ),
+ &zirconHandle ) );
+ return createResultValue(
+ result, zirconHandle, VULKAN_HPP_NAMESPACE_STRING "::Device::getSemaphoreZirconHandleFUCHSIA" );
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_USE_PLATFORM_FUCHSIA*/
+
+ //=== VK_HUAWEI_subpass_shading ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result RenderPass::getSubpassShadingMaxWorkgroupSizeHUAWEI(
+ VULKAN_HPP_NAMESPACE::Extent2D * pMaxWorkgroupSize, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>( d.vkGetSubpassShadingMaxWorkgroupSizeHUAWEI(
+ m_renderPass, reinterpret_cast<VkExtent2D *>( pMaxWorkgroupSize ) ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE ResultValue<VULKAN_HPP_NAMESPACE::Extent2D>
+ RenderPass::getSubpassShadingMaxWorkgroupSizeHUAWEI( Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::Extent2D maxWorkgroupSize;
+ Result result = static_cast<Result>( d.vkGetSubpassShadingMaxWorkgroupSizeHUAWEI(
+ m_renderPass, reinterpret_cast<VkExtent2D *>( &maxWorkgroupSize ) ) );
+ return createResultValue( result,
+ maxWorkgroupSize,
+ VULKAN_HPP_NAMESPACE_STRING "::RenderPass::getSubpassShadingMaxWorkgroupSizeHUAWEI",
+ { VULKAN_HPP_NAMESPACE::Result::eSuccess, VULKAN_HPP_NAMESPACE::Result::eIncomplete } );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::subpassShadingHUAWEI( Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdSubpassShadingHUAWEI( m_commandBuffer );
+ }
+
+ //=== VK_EXT_extended_dynamic_state2 ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::setPatchControlPointsEXT( uint32_t patchControlPoints,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdSetPatchControlPointsEXT( m_commandBuffer, patchControlPoints );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::setRasterizerDiscardEnableEXT( VULKAN_HPP_NAMESPACE::Bool32 rasterizerDiscardEnable,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdSetRasterizerDiscardEnableEXT( m_commandBuffer, static_cast<VkBool32>( rasterizerDiscardEnable ) );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::setDepthBiasEnableEXT( VULKAN_HPP_NAMESPACE::Bool32 depthBiasEnable,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdSetDepthBiasEnableEXT( m_commandBuffer, static_cast<VkBool32>( depthBiasEnable ) );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::setLogicOpEXT( VULKAN_HPP_NAMESPACE::LogicOp logicOp,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdSetLogicOpEXT( m_commandBuffer, static_cast<VkLogicOp>( logicOp ) );
+ }
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::setPrimitiveRestartEnableEXT( VULKAN_HPP_NAMESPACE::Bool32 primitiveRestartEnable,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdSetPrimitiveRestartEnableEXT( m_commandBuffer, static_cast<VkBool32>( primitiveRestartEnable ) );
+ }
+
+#if defined( VK_USE_PLATFORM_SCREEN_QNX )
+ //=== VK_QNX_screen_surface ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
+ Instance::createScreenSurfaceQNX( const VULKAN_HPP_NAMESPACE::ScreenSurfaceCreateInfoQNX * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::SurfaceKHR * pSurface,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Result>(
+ d.vkCreateScreenSurfaceQNX( m_instance,
+ reinterpret_cast<const VkScreenSurfaceCreateInfoQNX *>( pCreateInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
+ reinterpret_cast<VkSurfaceKHR *>( pSurface ) ) );
+ }
+
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceKHR>::type
+ Instance::createScreenSurfaceQNX( const ScreenSurfaceCreateInfoQNX & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::SurfaceKHR surface;
+ Result result = static_cast<Result>(
+ d.vkCreateScreenSurfaceQNX( m_instance,
+ reinterpret_cast<const VkScreenSurfaceCreateInfoQNX *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkSurfaceKHR *>( &surface ) ) );
+ return createResultValue( result, surface, VULKAN_HPP_NAMESPACE_STRING "::Instance::createScreenSurfaceQNX" );
+ }
+
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>>::type
+ Instance::createScreenSurfaceQNXUnique( const ScreenSurfaceCreateInfoQNX & createInfo,
+ Optional<const AllocationCallbacks> allocator,
+ Dispatch const & d ) const
+ {
+ VULKAN_HPP_NAMESPACE::SurfaceKHR surface;
+ Result result = static_cast<Result>(
+ d.vkCreateScreenSurfaceQNX( m_instance,
+ reinterpret_cast<const VkScreenSurfaceCreateInfoQNX *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkSurfaceKHR *>( &surface ) ) );
+ ObjectDestroy<Instance, Dispatch> deleter( *this, allocator, d );
+ return createResultValue<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>(
+ result, surface, VULKAN_HPP_NAMESPACE_STRING "::Instance::createScreenSurfaceQNXUnique", deleter );
+ }
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE Bool32 PhysicalDevice::getScreenPresentationSupportQNX(
+ uint32_t queueFamilyIndex, struct _screen_window * window, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<Bool32>(
+ d.vkGetPhysicalDeviceScreenPresentationSupportQNX( m_physicalDevice, queueFamilyIndex, window ) );
+ }
+
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE Bool32 PhysicalDevice::getScreenPresentationSupportQNX(
+ uint32_t queueFamilyIndex, struct _screen_window & window, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ return d.vkGetPhysicalDeviceScreenPresentationSupportQNX( m_physicalDevice, queueFamilyIndex, &window );
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_USE_PLATFORM_SCREEN_QNX*/
+
+ //=== VK_EXT_color_write_enable ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::setColorWriteEnableEXT( uint32_t attachmentCount,
+ const VULKAN_HPP_NAMESPACE::Bool32 * pColorWriteEnables,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdSetColorWriteEnableEXT(
+ m_commandBuffer, attachmentCount, reinterpret_cast<const VkBool32 *>( pColorWriteEnables ) );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::setColorWriteEnableEXT( ArrayProxy<const VULKAN_HPP_NAMESPACE::Bool32> const & colorWriteEnables,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdSetColorWriteEnableEXT(
+ m_commandBuffer, colorWriteEnables.size(), reinterpret_cast<const VkBool32 *>( colorWriteEnables.data() ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_EXT_multi_draw ===
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::drawMultiEXT( uint32_t drawCount,
+ const VULKAN_HPP_NAMESPACE::MultiDrawInfoEXT * pVertexInfo,
+ uint32_t instanceCount,
+ uint32_t firstInstance,
+ uint32_t stride,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdDrawMultiEXT( m_commandBuffer,
+ drawCount,
+ reinterpret_cast<const VkMultiDrawInfoEXT *>( pVertexInfo ),
+ instanceCount,
+ firstInstance,
+ stride );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::drawMultiEXT( ArrayProxy<const VULKAN_HPP_NAMESPACE::MultiDrawInfoEXT> const & vertexInfo,
+ uint32_t instanceCount,
+ uint32_t firstInstance,
+ uint32_t stride,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdDrawMultiEXT( m_commandBuffer,
+ vertexInfo.size(),
+ reinterpret_cast<const VkMultiDrawInfoEXT *>( vertexInfo.data() ),
+ instanceCount,
+ firstInstance,
+ stride );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void
+ CommandBuffer::drawMultiIndexedEXT( uint32_t drawCount,
+ const VULKAN_HPP_NAMESPACE::MultiDrawIndexedInfoEXT * pIndexInfo,
+ uint32_t instanceCount,
+ uint32_t firstInstance,
+ uint32_t stride,
+ const int32_t * pVertexOffset,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdDrawMultiIndexedEXT( m_commandBuffer,
+ drawCount,
+ reinterpret_cast<const VkMultiDrawIndexedInfoEXT *>( pIndexInfo ),
+ instanceCount,
+ firstInstance,
+ stride,
+ pVertexOffset );
+ }
+
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch>
+ VULKAN_HPP_INLINE void CommandBuffer::drawMultiIndexedEXT(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::MultiDrawIndexedInfoEXT> const & indexInfo,
+ uint32_t instanceCount,
+ uint32_t firstInstance,
+ uint32_t stride,
+ Optional<const int32_t> vertexOffset,
+ Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
+ {
+ d.vkCmdDrawMultiIndexedEXT( m_commandBuffer,
+ indexInfo.size(),
+ reinterpret_cast<const VkMultiDrawIndexedInfoEXT *>( indexInfo.data() ),
+ instanceCount,
+ firstInstance,
+ stride,
+ static_cast<const int32_t *>( vertexOffset ) );
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+} // namespace VULKAN_HPP_NAMESPACE
+#endif
diff --git a/thirdparty/vulkan/include/vulkan/vulkan_ggp.h b/thirdparty/vulkan/include/vulkan/vulkan_ggp.h
index 273c88005b..9a6a582c5b 100644
--- a/thirdparty/vulkan/include/vulkan/vulkan_ggp.h
+++ b/thirdparty/vulkan/include/vulkan/vulkan_ggp.h
@@ -2,7 +2,7 @@
#define VULKAN_GGP_H_ 1
/*
-** Copyright (c) 2015-2020 The Khronos Group Inc.
+** Copyright 2015-2021 The Khronos Group Inc.
**
** SPDX-License-Identifier: Apache-2.0
*/
diff --git a/thirdparty/vulkan/include/vulkan/vulkan_handles.hpp b/thirdparty/vulkan/include/vulkan/vulkan_handles.hpp
new file mode 100644
index 0000000000..0b846c6191
--- /dev/null
+++ b/thirdparty/vulkan/include/vulkan/vulkan_handles.hpp
@@ -0,0 +1,13618 @@
+// Copyright 2015-2021 The Khronos Group Inc.
+//
+// SPDX-License-Identifier: Apache-2.0 OR MIT
+//
+
+// This header is generated from the Khronos Vulkan XML API Registry.
+
+#ifndef VULKAN_HANDLES_HPP
+#define VULKAN_HANDLES_HPP
+
+namespace VULKAN_HPP_NAMESPACE
+{
+ struct AabbPositionsKHR;
+ using AabbPositionsNV = AabbPositionsKHR;
+ struct AccelerationStructureBuildGeometryInfoKHR;
+ struct AccelerationStructureBuildRangeInfoKHR;
+ struct AccelerationStructureBuildSizesInfoKHR;
+ struct AccelerationStructureCreateInfoKHR;
+ struct AccelerationStructureCreateInfoNV;
+ struct AccelerationStructureDeviceAddressInfoKHR;
+ struct AccelerationStructureGeometryAabbsDataKHR;
+ union AccelerationStructureGeometryDataKHR;
+ struct AccelerationStructureGeometryInstancesDataKHR;
+ struct AccelerationStructureGeometryKHR;
+ struct AccelerationStructureGeometryMotionTrianglesDataNV;
+ struct AccelerationStructureGeometryTrianglesDataKHR;
+ struct AccelerationStructureInfoNV;
+ struct AccelerationStructureInstanceKHR;
+ using AccelerationStructureInstanceNV = AccelerationStructureInstanceKHR;
+ struct AccelerationStructureMatrixMotionInstanceNV;
+ struct AccelerationStructureMemoryRequirementsInfoNV;
+ struct AccelerationStructureMotionInfoNV;
+ union AccelerationStructureMotionInstanceDataNV;
+ struct AccelerationStructureMotionInstanceNV;
+ struct AccelerationStructureSRTMotionInstanceNV;
+ struct AccelerationStructureVersionInfoKHR;
+ struct AcquireNextImageInfoKHR;
+ struct AcquireProfilingLockInfoKHR;
+ struct AllocationCallbacks;
+#if defined( VK_USE_PLATFORM_ANDROID_KHR )
+ struct AndroidHardwareBufferFormatPropertiesANDROID;
+#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
+#if defined( VK_USE_PLATFORM_ANDROID_KHR )
+ struct AndroidHardwareBufferPropertiesANDROID;
+#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
+#if defined( VK_USE_PLATFORM_ANDROID_KHR )
+ struct AndroidHardwareBufferUsageANDROID;
+#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
+#if defined( VK_USE_PLATFORM_ANDROID_KHR )
+ struct AndroidSurfaceCreateInfoKHR;
+#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
+ struct ApplicationInfo;
+ struct AttachmentDescription;
+ struct AttachmentDescription2;
+ using AttachmentDescription2KHR = AttachmentDescription2;
+ struct AttachmentDescriptionStencilLayout;
+ using AttachmentDescriptionStencilLayoutKHR = AttachmentDescriptionStencilLayout;
+ struct AttachmentReference;
+ struct AttachmentReference2;
+ using AttachmentReference2KHR = AttachmentReference2;
+ struct AttachmentReferenceStencilLayout;
+ using AttachmentReferenceStencilLayoutKHR = AttachmentReferenceStencilLayout;
+ struct AttachmentSampleLocationsEXT;
+ struct BaseInStructure;
+ struct BaseOutStructure;
+ struct BindAccelerationStructureMemoryInfoNV;
+ struct BindBufferMemoryDeviceGroupInfo;
+ using BindBufferMemoryDeviceGroupInfoKHR = BindBufferMemoryDeviceGroupInfo;
+ struct BindBufferMemoryInfo;
+ using BindBufferMemoryInfoKHR = BindBufferMemoryInfo;
+ struct BindImageMemoryDeviceGroupInfo;
+ using BindImageMemoryDeviceGroupInfoKHR = BindImageMemoryDeviceGroupInfo;
+ struct BindImageMemoryInfo;
+ using BindImageMemoryInfoKHR = BindImageMemoryInfo;
+ struct BindImageMemorySwapchainInfoKHR;
+ struct BindImagePlaneMemoryInfo;
+ using BindImagePlaneMemoryInfoKHR = BindImagePlaneMemoryInfo;
+ struct BindIndexBufferIndirectCommandNV;
+ struct BindShaderGroupIndirectCommandNV;
+ struct BindSparseInfo;
+ struct BindVertexBufferIndirectCommandNV;
+ struct BlitImageInfo2KHR;
+ struct BufferCopy;
+ struct BufferCopy2KHR;
+ struct BufferCreateInfo;
+ struct BufferDeviceAddressCreateInfoEXT;
+ struct BufferDeviceAddressInfo;
+ using BufferDeviceAddressInfoEXT = BufferDeviceAddressInfo;
+ using BufferDeviceAddressInfoKHR = BufferDeviceAddressInfo;
+ struct BufferImageCopy;
+ struct BufferImageCopy2KHR;
+ struct BufferMemoryBarrier;
+ struct BufferMemoryBarrier2KHR;
+ struct BufferMemoryRequirementsInfo2;
+ using BufferMemoryRequirementsInfo2KHR = BufferMemoryRequirementsInfo2;
+ struct BufferOpaqueCaptureAddressCreateInfo;
+ using BufferOpaqueCaptureAddressCreateInfoKHR = BufferOpaqueCaptureAddressCreateInfo;
+ struct BufferViewCreateInfo;
+ struct CalibratedTimestampInfoEXT;
+ struct CheckpointData2NV;
+ struct CheckpointDataNV;
+ struct ClearAttachment;
+ union ClearColorValue;
+ struct ClearDepthStencilValue;
+ struct ClearRect;
+ union ClearValue;
+ struct CoarseSampleLocationNV;
+ struct CoarseSampleOrderCustomNV;
+ struct CommandBufferAllocateInfo;
+ struct CommandBufferBeginInfo;
+ struct CommandBufferInheritanceConditionalRenderingInfoEXT;
+ struct CommandBufferInheritanceInfo;
+ struct CommandBufferInheritanceRenderPassTransformInfoQCOM;
+ struct CommandBufferInheritanceViewportScissorInfoNV;
+ struct CommandBufferSubmitInfoKHR;
+ struct CommandPoolCreateInfo;
+ struct ComponentMapping;
+ struct ComputePipelineCreateInfo;
+ struct ConditionalRenderingBeginInfoEXT;
+ struct ConformanceVersion;
+ using ConformanceVersionKHR = ConformanceVersion;
+ struct CooperativeMatrixPropertiesNV;
+ struct CopyAccelerationStructureInfoKHR;
+ struct CopyAccelerationStructureToMemoryInfoKHR;
+ struct CopyBufferInfo2KHR;
+ struct CopyBufferToImageInfo2KHR;
+ struct CopyCommandTransformInfoQCOM;
+ struct CopyDescriptorSet;
+ struct CopyImageInfo2KHR;
+ struct CopyImageToBufferInfo2KHR;
+ struct CopyMemoryToAccelerationStructureInfoKHR;
+ struct CuFunctionCreateInfoNVX;
+ struct CuLaunchInfoNVX;
+ struct CuModuleCreateInfoNVX;
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ struct D3D12FenceSubmitInfoKHR;
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+ struct DebugMarkerMarkerInfoEXT;
+ struct DebugMarkerObjectNameInfoEXT;
+ struct DebugMarkerObjectTagInfoEXT;
+ struct DebugReportCallbackCreateInfoEXT;
+ struct DebugUtilsLabelEXT;
+ struct DebugUtilsMessengerCallbackDataEXT;
+ struct DebugUtilsMessengerCreateInfoEXT;
+ struct DebugUtilsObjectNameInfoEXT;
+ struct DebugUtilsObjectTagInfoEXT;
+ struct DedicatedAllocationBufferCreateInfoNV;
+ struct DedicatedAllocationImageCreateInfoNV;
+ struct DedicatedAllocationMemoryAllocateInfoNV;
+ struct DependencyInfoKHR;
+ struct DescriptorBufferInfo;
+ struct DescriptorImageInfo;
+ struct DescriptorPoolCreateInfo;
+ struct DescriptorPoolInlineUniformBlockCreateInfoEXT;
+ struct DescriptorPoolSize;
+ struct DescriptorSetAllocateInfo;
+ struct DescriptorSetLayoutBinding;
+ struct DescriptorSetLayoutBindingFlagsCreateInfo;
+ using DescriptorSetLayoutBindingFlagsCreateInfoEXT = DescriptorSetLayoutBindingFlagsCreateInfo;
+ struct DescriptorSetLayoutCreateInfo;
+ struct DescriptorSetLayoutSupport;
+ using DescriptorSetLayoutSupportKHR = DescriptorSetLayoutSupport;
+ struct DescriptorSetVariableDescriptorCountAllocateInfo;
+ using DescriptorSetVariableDescriptorCountAllocateInfoEXT = DescriptorSetVariableDescriptorCountAllocateInfo;
+ struct DescriptorSetVariableDescriptorCountLayoutSupport;
+ using DescriptorSetVariableDescriptorCountLayoutSupportEXT = DescriptorSetVariableDescriptorCountLayoutSupport;
+ struct DescriptorUpdateTemplateCreateInfo;
+ using DescriptorUpdateTemplateCreateInfoKHR = DescriptorUpdateTemplateCreateInfo;
+ struct DescriptorUpdateTemplateEntry;
+ using DescriptorUpdateTemplateEntryKHR = DescriptorUpdateTemplateEntry;
+ struct DeviceCreateInfo;
+ struct DeviceDeviceMemoryReportCreateInfoEXT;
+ struct DeviceDiagnosticsConfigCreateInfoNV;
+ struct DeviceEventInfoEXT;
+ struct DeviceGroupBindSparseInfo;
+ using DeviceGroupBindSparseInfoKHR = DeviceGroupBindSparseInfo;
+ struct DeviceGroupCommandBufferBeginInfo;
+ using DeviceGroupCommandBufferBeginInfoKHR = DeviceGroupCommandBufferBeginInfo;
+ struct DeviceGroupDeviceCreateInfo;
+ using DeviceGroupDeviceCreateInfoKHR = DeviceGroupDeviceCreateInfo;
+ struct DeviceGroupPresentCapabilitiesKHR;
+ struct DeviceGroupPresentInfoKHR;
+ struct DeviceGroupRenderPassBeginInfo;
+ using DeviceGroupRenderPassBeginInfoKHR = DeviceGroupRenderPassBeginInfo;
+ struct DeviceGroupSubmitInfo;
+ using DeviceGroupSubmitInfoKHR = DeviceGroupSubmitInfo;
+ struct DeviceGroupSwapchainCreateInfoKHR;
+ struct DeviceMemoryOpaqueCaptureAddressInfo;
+ using DeviceMemoryOpaqueCaptureAddressInfoKHR = DeviceMemoryOpaqueCaptureAddressInfo;
+ struct DeviceMemoryOverallocationCreateInfoAMD;
+ struct DeviceMemoryReportCallbackDataEXT;
+ union DeviceOrHostAddressConstKHR;
+ union DeviceOrHostAddressKHR;
+ struct DevicePrivateDataCreateInfoEXT;
+ struct DeviceQueueCreateInfo;
+ struct DeviceQueueGlobalPriorityCreateInfoEXT;
+ struct DeviceQueueInfo2;
+#if defined( VK_USE_PLATFORM_DIRECTFB_EXT )
+ struct DirectFBSurfaceCreateInfoEXT;
+#endif /*VK_USE_PLATFORM_DIRECTFB_EXT*/
+ struct DispatchIndirectCommand;
+ struct DisplayEventInfoEXT;
+ struct DisplayModeCreateInfoKHR;
+ struct DisplayModeParametersKHR;
+ struct DisplayModeProperties2KHR;
+ struct DisplayModePropertiesKHR;
+ struct DisplayNativeHdrSurfaceCapabilitiesAMD;
+ struct DisplayPlaneCapabilities2KHR;
+ struct DisplayPlaneCapabilitiesKHR;
+ struct DisplayPlaneInfo2KHR;
+ struct DisplayPlaneProperties2KHR;
+ struct DisplayPlanePropertiesKHR;
+ struct DisplayPowerInfoEXT;
+ struct DisplayPresentInfoKHR;
+ struct DisplayProperties2KHR;
+ struct DisplayPropertiesKHR;
+ struct DisplaySurfaceCreateInfoKHR;
+ struct DrawIndexedIndirectCommand;
+ struct DrawIndirectCommand;
+ struct DrawMeshTasksIndirectCommandNV;
+ struct DrmFormatModifierPropertiesEXT;
+ struct DrmFormatModifierPropertiesListEXT;
+ struct EventCreateInfo;
+ struct ExportFenceCreateInfo;
+ using ExportFenceCreateInfoKHR = ExportFenceCreateInfo;
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ struct ExportFenceWin32HandleInfoKHR;
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+ struct ExportMemoryAllocateInfo;
+ using ExportMemoryAllocateInfoKHR = ExportMemoryAllocateInfo;
+ struct ExportMemoryAllocateInfoNV;
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ struct ExportMemoryWin32HandleInfoKHR;
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ struct ExportMemoryWin32HandleInfoNV;
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+ struct ExportSemaphoreCreateInfo;
+ using ExportSemaphoreCreateInfoKHR = ExportSemaphoreCreateInfo;
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ struct ExportSemaphoreWin32HandleInfoKHR;
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+ struct ExtensionProperties;
+ struct Extent2D;
+ struct Extent3D;
+ struct ExternalBufferProperties;
+ using ExternalBufferPropertiesKHR = ExternalBufferProperties;
+ struct ExternalFenceProperties;
+ using ExternalFencePropertiesKHR = ExternalFenceProperties;
+#if defined( VK_USE_PLATFORM_ANDROID_KHR )
+ struct ExternalFormatANDROID;
+#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
+ struct ExternalImageFormatProperties;
+ using ExternalImageFormatPropertiesKHR = ExternalImageFormatProperties;
+ struct ExternalImageFormatPropertiesNV;
+ struct ExternalMemoryBufferCreateInfo;
+ using ExternalMemoryBufferCreateInfoKHR = ExternalMemoryBufferCreateInfo;
+ struct ExternalMemoryImageCreateInfo;
+ using ExternalMemoryImageCreateInfoKHR = ExternalMemoryImageCreateInfo;
+ struct ExternalMemoryImageCreateInfoNV;
+ struct ExternalMemoryProperties;
+ using ExternalMemoryPropertiesKHR = ExternalMemoryProperties;
+ struct ExternalSemaphoreProperties;
+ using ExternalSemaphorePropertiesKHR = ExternalSemaphoreProperties;
+ struct FenceCreateInfo;
+ struct FenceGetFdInfoKHR;
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ struct FenceGetWin32HandleInfoKHR;
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+ struct FilterCubicImageViewImageFormatPropertiesEXT;
+ struct FormatProperties;
+ struct FormatProperties2;
+ using FormatProperties2KHR = FormatProperties2;
+ struct FragmentShadingRateAttachmentInfoKHR;
+ struct FramebufferAttachmentImageInfo;
+ using FramebufferAttachmentImageInfoKHR = FramebufferAttachmentImageInfo;
+ struct FramebufferAttachmentsCreateInfo;
+ using FramebufferAttachmentsCreateInfoKHR = FramebufferAttachmentsCreateInfo;
+ struct FramebufferCreateInfo;
+ struct FramebufferMixedSamplesCombinationNV;
+ struct GeneratedCommandsInfoNV;
+ struct GeneratedCommandsMemoryRequirementsInfoNV;
+ struct GeometryAABBNV;
+ struct GeometryDataNV;
+ struct GeometryNV;
+ struct GeometryTrianglesNV;
+ struct GraphicsPipelineCreateInfo;
+ struct GraphicsPipelineShaderGroupsCreateInfoNV;
+ struct GraphicsShaderGroupCreateInfoNV;
+ struct HdrMetadataEXT;
+ struct HeadlessSurfaceCreateInfoEXT;
+#if defined( VK_USE_PLATFORM_IOS_MVK )
+ struct IOSSurfaceCreateInfoMVK;
+#endif /*VK_USE_PLATFORM_IOS_MVK*/
+ struct ImageBlit;
+ struct ImageBlit2KHR;
+ struct ImageCopy;
+ struct ImageCopy2KHR;
+ struct ImageCreateInfo;
+ struct ImageDrmFormatModifierExplicitCreateInfoEXT;
+ struct ImageDrmFormatModifierListCreateInfoEXT;
+ struct ImageDrmFormatModifierPropertiesEXT;
+ struct ImageFormatListCreateInfo;
+ using ImageFormatListCreateInfoKHR = ImageFormatListCreateInfo;
+ struct ImageFormatProperties;
+ struct ImageFormatProperties2;
+ using ImageFormatProperties2KHR = ImageFormatProperties2;
+ struct ImageMemoryBarrier;
+ struct ImageMemoryBarrier2KHR;
+ struct ImageMemoryRequirementsInfo2;
+ using ImageMemoryRequirementsInfo2KHR = ImageMemoryRequirementsInfo2;
+#if defined( VK_USE_PLATFORM_FUCHSIA )
+ struct ImagePipeSurfaceCreateInfoFUCHSIA;
+#endif /*VK_USE_PLATFORM_FUCHSIA*/
+ struct ImagePlaneMemoryRequirementsInfo;
+ using ImagePlaneMemoryRequirementsInfoKHR = ImagePlaneMemoryRequirementsInfo;
+ struct ImageResolve;
+ struct ImageResolve2KHR;
+ struct ImageSparseMemoryRequirementsInfo2;
+ using ImageSparseMemoryRequirementsInfo2KHR = ImageSparseMemoryRequirementsInfo2;
+ struct ImageStencilUsageCreateInfo;
+ using ImageStencilUsageCreateInfoEXT = ImageStencilUsageCreateInfo;
+ struct ImageSubresource;
+ struct ImageSubresourceLayers;
+ struct ImageSubresourceRange;
+ struct ImageSwapchainCreateInfoKHR;
+ struct ImageViewASTCDecodeModeEXT;
+ struct ImageViewAddressPropertiesNVX;
+ struct ImageViewCreateInfo;
+ struct ImageViewHandleInfoNVX;
+ struct ImageViewUsageCreateInfo;
+ using ImageViewUsageCreateInfoKHR = ImageViewUsageCreateInfo;
+#if defined( VK_USE_PLATFORM_ANDROID_KHR )
+ struct ImportAndroidHardwareBufferInfoANDROID;
+#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
+ struct ImportFenceFdInfoKHR;
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ struct ImportFenceWin32HandleInfoKHR;
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+ struct ImportMemoryFdInfoKHR;
+ struct ImportMemoryHostPointerInfoEXT;
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ struct ImportMemoryWin32HandleInfoKHR;
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ struct ImportMemoryWin32HandleInfoNV;
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+#if defined( VK_USE_PLATFORM_FUCHSIA )
+ struct ImportMemoryZirconHandleInfoFUCHSIA;
+#endif /*VK_USE_PLATFORM_FUCHSIA*/
+ struct ImportSemaphoreFdInfoKHR;
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ struct ImportSemaphoreWin32HandleInfoKHR;
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+#if defined( VK_USE_PLATFORM_FUCHSIA )
+ struct ImportSemaphoreZirconHandleInfoFUCHSIA;
+#endif /*VK_USE_PLATFORM_FUCHSIA*/
+ struct IndirectCommandsLayoutCreateInfoNV;
+ struct IndirectCommandsLayoutTokenNV;
+ struct IndirectCommandsStreamNV;
+ struct InitializePerformanceApiInfoINTEL;
+ struct InputAttachmentAspectReference;
+ using InputAttachmentAspectReferenceKHR = InputAttachmentAspectReference;
+ struct InstanceCreateInfo;
+ struct LayerProperties;
+#if defined( VK_USE_PLATFORM_MACOS_MVK )
+ struct MacOSSurfaceCreateInfoMVK;
+#endif /*VK_USE_PLATFORM_MACOS_MVK*/
+ struct MappedMemoryRange;
+ struct MemoryAllocateFlagsInfo;
+ using MemoryAllocateFlagsInfoKHR = MemoryAllocateFlagsInfo;
+ struct MemoryAllocateInfo;
+ struct MemoryBarrier;
+ struct MemoryBarrier2KHR;
+ struct MemoryDedicatedAllocateInfo;
+ using MemoryDedicatedAllocateInfoKHR = MemoryDedicatedAllocateInfo;
+ struct MemoryDedicatedRequirements;
+ using MemoryDedicatedRequirementsKHR = MemoryDedicatedRequirements;
+ struct MemoryFdPropertiesKHR;
+#if defined( VK_USE_PLATFORM_ANDROID_KHR )
+ struct MemoryGetAndroidHardwareBufferInfoANDROID;
+#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
+ struct MemoryGetFdInfoKHR;
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ struct MemoryGetWin32HandleInfoKHR;
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+#if defined( VK_USE_PLATFORM_FUCHSIA )
+ struct MemoryGetZirconHandleInfoFUCHSIA;
+#endif /*VK_USE_PLATFORM_FUCHSIA*/
+ struct MemoryHeap;
+ struct MemoryHostPointerPropertiesEXT;
+ struct MemoryOpaqueCaptureAddressAllocateInfo;
+ using MemoryOpaqueCaptureAddressAllocateInfoKHR = MemoryOpaqueCaptureAddressAllocateInfo;
+ struct MemoryPriorityAllocateInfoEXT;
+ struct MemoryRequirements;
+ struct MemoryRequirements2;
+ using MemoryRequirements2KHR = MemoryRequirements2;
+ struct MemoryType;
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ struct MemoryWin32HandlePropertiesKHR;
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+#if defined( VK_USE_PLATFORM_FUCHSIA )
+ struct MemoryZirconHandlePropertiesFUCHSIA;
+#endif /*VK_USE_PLATFORM_FUCHSIA*/
+#if defined( VK_USE_PLATFORM_METAL_EXT )
+ struct MetalSurfaceCreateInfoEXT;
+#endif /*VK_USE_PLATFORM_METAL_EXT*/
+ struct MultiDrawIndexedInfoEXT;
+ struct MultiDrawInfoEXT;
+ struct MultisamplePropertiesEXT;
+ struct MutableDescriptorTypeCreateInfoVALVE;
+ struct MutableDescriptorTypeListVALVE;
+ struct Offset2D;
+ struct Offset3D;
+ struct PastPresentationTimingGOOGLE;
+ struct PerformanceConfigurationAcquireInfoINTEL;
+ struct PerformanceCounterDescriptionKHR;
+ struct PerformanceCounterKHR;
+ union PerformanceCounterResultKHR;
+ struct PerformanceMarkerInfoINTEL;
+ struct PerformanceOverrideInfoINTEL;
+ struct PerformanceQuerySubmitInfoKHR;
+ struct PerformanceStreamMarkerInfoINTEL;
+ union PerformanceValueDataINTEL;
+ struct PerformanceValueINTEL;
+ struct PhysicalDevice16BitStorageFeatures;
+ using PhysicalDevice16BitStorageFeaturesKHR = PhysicalDevice16BitStorageFeatures;
+ struct PhysicalDevice4444FormatsFeaturesEXT;
+ struct PhysicalDevice8BitStorageFeatures;
+ using PhysicalDevice8BitStorageFeaturesKHR = PhysicalDevice8BitStorageFeatures;
+ struct PhysicalDeviceASTCDecodeFeaturesEXT;
+ struct PhysicalDeviceAccelerationStructureFeaturesKHR;
+ struct PhysicalDeviceAccelerationStructurePropertiesKHR;
+ struct PhysicalDeviceBlendOperationAdvancedFeaturesEXT;
+ struct PhysicalDeviceBlendOperationAdvancedPropertiesEXT;
+ struct PhysicalDeviceBufferDeviceAddressFeatures;
+ using PhysicalDeviceBufferDeviceAddressFeaturesKHR = PhysicalDeviceBufferDeviceAddressFeatures;
+ struct PhysicalDeviceBufferDeviceAddressFeaturesEXT;
+ using PhysicalDeviceBufferAddressFeaturesEXT = PhysicalDeviceBufferDeviceAddressFeaturesEXT;
+ struct PhysicalDeviceCoherentMemoryFeaturesAMD;
+ struct PhysicalDeviceColorWriteEnableFeaturesEXT;
+ struct PhysicalDeviceComputeShaderDerivativesFeaturesNV;
+ struct PhysicalDeviceConditionalRenderingFeaturesEXT;
+ struct PhysicalDeviceConservativeRasterizationPropertiesEXT;
+ struct PhysicalDeviceCooperativeMatrixFeaturesNV;
+ struct PhysicalDeviceCooperativeMatrixPropertiesNV;
+ struct PhysicalDeviceCornerSampledImageFeaturesNV;
+ struct PhysicalDeviceCoverageReductionModeFeaturesNV;
+ struct PhysicalDeviceCustomBorderColorFeaturesEXT;
+ struct PhysicalDeviceCustomBorderColorPropertiesEXT;
+ struct PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV;
+ struct PhysicalDeviceDepthClipEnableFeaturesEXT;
+ struct PhysicalDeviceDepthStencilResolveProperties;
+ using PhysicalDeviceDepthStencilResolvePropertiesKHR = PhysicalDeviceDepthStencilResolveProperties;
+ struct PhysicalDeviceDescriptorIndexingFeatures;
+ using PhysicalDeviceDescriptorIndexingFeaturesEXT = PhysicalDeviceDescriptorIndexingFeatures;
+ struct PhysicalDeviceDescriptorIndexingProperties;
+ using PhysicalDeviceDescriptorIndexingPropertiesEXT = PhysicalDeviceDescriptorIndexingProperties;
+ struct PhysicalDeviceDeviceGeneratedCommandsFeaturesNV;
+ struct PhysicalDeviceDeviceGeneratedCommandsPropertiesNV;
+ struct PhysicalDeviceDeviceMemoryReportFeaturesEXT;
+ struct PhysicalDeviceDiagnosticsConfigFeaturesNV;
+ struct PhysicalDeviceDiscardRectanglePropertiesEXT;
+ struct PhysicalDeviceDriverProperties;
+ using PhysicalDeviceDriverPropertiesKHR = PhysicalDeviceDriverProperties;
+ struct PhysicalDeviceDrmPropertiesEXT;
+ struct PhysicalDeviceExclusiveScissorFeaturesNV;
+ struct PhysicalDeviceExtendedDynamicState2FeaturesEXT;
+ struct PhysicalDeviceExtendedDynamicStateFeaturesEXT;
+ struct PhysicalDeviceExternalBufferInfo;
+ using PhysicalDeviceExternalBufferInfoKHR = PhysicalDeviceExternalBufferInfo;
+ struct PhysicalDeviceExternalFenceInfo;
+ using PhysicalDeviceExternalFenceInfoKHR = PhysicalDeviceExternalFenceInfo;
+ struct PhysicalDeviceExternalImageFormatInfo;
+ using PhysicalDeviceExternalImageFormatInfoKHR = PhysicalDeviceExternalImageFormatInfo;
+ struct PhysicalDeviceExternalMemoryHostPropertiesEXT;
+ struct PhysicalDeviceExternalSemaphoreInfo;
+ using PhysicalDeviceExternalSemaphoreInfoKHR = PhysicalDeviceExternalSemaphoreInfo;
+ struct PhysicalDeviceFeatures;
+ struct PhysicalDeviceFeatures2;
+ using PhysicalDeviceFeatures2KHR = PhysicalDeviceFeatures2;
+ struct PhysicalDeviceFloatControlsProperties;
+ using PhysicalDeviceFloatControlsPropertiesKHR = PhysicalDeviceFloatControlsProperties;
+ struct PhysicalDeviceFragmentDensityMap2FeaturesEXT;
+ struct PhysicalDeviceFragmentDensityMap2PropertiesEXT;
+ struct PhysicalDeviceFragmentDensityMapFeaturesEXT;
+ struct PhysicalDeviceFragmentDensityMapPropertiesEXT;
+ struct PhysicalDeviceFragmentShaderBarycentricFeaturesNV;
+ struct PhysicalDeviceFragmentShaderInterlockFeaturesEXT;
+ struct PhysicalDeviceFragmentShadingRateEnumsFeaturesNV;
+ struct PhysicalDeviceFragmentShadingRateEnumsPropertiesNV;
+ struct PhysicalDeviceFragmentShadingRateFeaturesKHR;
+ struct PhysicalDeviceFragmentShadingRateKHR;
+ struct PhysicalDeviceFragmentShadingRatePropertiesKHR;
+ struct PhysicalDeviceGlobalPriorityQueryFeaturesEXT;
+ struct PhysicalDeviceGroupProperties;
+ using PhysicalDeviceGroupPropertiesKHR = PhysicalDeviceGroupProperties;
+ struct PhysicalDeviceHostQueryResetFeatures;
+ using PhysicalDeviceHostQueryResetFeaturesEXT = PhysicalDeviceHostQueryResetFeatures;
+ struct PhysicalDeviceIDProperties;
+ using PhysicalDeviceIDPropertiesKHR = PhysicalDeviceIDProperties;
+ struct PhysicalDeviceImageDrmFormatModifierInfoEXT;
+ struct PhysicalDeviceImageFormatInfo2;
+ using PhysicalDeviceImageFormatInfo2KHR = PhysicalDeviceImageFormatInfo2;
+ struct PhysicalDeviceImageRobustnessFeaturesEXT;
+ struct PhysicalDeviceImageViewImageFormatInfoEXT;
+ struct PhysicalDeviceImagelessFramebufferFeatures;
+ using PhysicalDeviceImagelessFramebufferFeaturesKHR = PhysicalDeviceImagelessFramebufferFeatures;
+ struct PhysicalDeviceIndexTypeUint8FeaturesEXT;
+ struct PhysicalDeviceInheritedViewportScissorFeaturesNV;
+ struct PhysicalDeviceInlineUniformBlockFeaturesEXT;
+ struct PhysicalDeviceInlineUniformBlockPropertiesEXT;
+ struct PhysicalDeviceLimits;
+ struct PhysicalDeviceLineRasterizationFeaturesEXT;
+ struct PhysicalDeviceLineRasterizationPropertiesEXT;
+ struct PhysicalDeviceMaintenance3Properties;
+ using PhysicalDeviceMaintenance3PropertiesKHR = PhysicalDeviceMaintenance3Properties;
+ struct PhysicalDeviceMemoryBudgetPropertiesEXT;
+ struct PhysicalDeviceMemoryPriorityFeaturesEXT;
+ struct PhysicalDeviceMemoryProperties;
+ struct PhysicalDeviceMemoryProperties2;
+ using PhysicalDeviceMemoryProperties2KHR = PhysicalDeviceMemoryProperties2;
+ struct PhysicalDeviceMeshShaderFeaturesNV;
+ struct PhysicalDeviceMeshShaderPropertiesNV;
+ struct PhysicalDeviceMultiDrawFeaturesEXT;
+ struct PhysicalDeviceMultiDrawPropertiesEXT;
+ struct PhysicalDeviceMultiviewFeatures;
+ using PhysicalDeviceMultiviewFeaturesKHR = PhysicalDeviceMultiviewFeatures;
+ struct PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX;
+ struct PhysicalDeviceMultiviewProperties;
+ using PhysicalDeviceMultiviewPropertiesKHR = PhysicalDeviceMultiviewProperties;
+ struct PhysicalDeviceMutableDescriptorTypeFeaturesVALVE;
+ struct PhysicalDevicePCIBusInfoPropertiesEXT;
+ struct PhysicalDevicePerformanceQueryFeaturesKHR;
+ struct PhysicalDevicePerformanceQueryPropertiesKHR;
+ struct PhysicalDevicePipelineCreationCacheControlFeaturesEXT;
+ struct PhysicalDevicePipelineExecutablePropertiesFeaturesKHR;
+ struct PhysicalDevicePointClippingProperties;
+ using PhysicalDevicePointClippingPropertiesKHR = PhysicalDevicePointClippingProperties;
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct PhysicalDevicePortabilitySubsetFeaturesKHR;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct PhysicalDevicePortabilitySubsetPropertiesKHR;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ struct PhysicalDevicePrivateDataFeaturesEXT;
+ struct PhysicalDeviceProperties;
+ struct PhysicalDeviceProperties2;
+ using PhysicalDeviceProperties2KHR = PhysicalDeviceProperties2;
+ struct PhysicalDeviceProtectedMemoryFeatures;
+ struct PhysicalDeviceProtectedMemoryProperties;
+ struct PhysicalDeviceProvokingVertexFeaturesEXT;
+ struct PhysicalDeviceProvokingVertexPropertiesEXT;
+ struct PhysicalDevicePushDescriptorPropertiesKHR;
+ struct PhysicalDeviceRayQueryFeaturesKHR;
+ struct PhysicalDeviceRayTracingMotionBlurFeaturesNV;
+ struct PhysicalDeviceRayTracingPipelineFeaturesKHR;
+ struct PhysicalDeviceRayTracingPipelinePropertiesKHR;
+ struct PhysicalDeviceRayTracingPropertiesNV;
+ struct PhysicalDeviceRepresentativeFragmentTestFeaturesNV;
+ struct PhysicalDeviceRobustness2FeaturesEXT;
+ struct PhysicalDeviceRobustness2PropertiesEXT;
+ struct PhysicalDeviceSampleLocationsPropertiesEXT;
+ struct PhysicalDeviceSamplerFilterMinmaxProperties;
+ using PhysicalDeviceSamplerFilterMinmaxPropertiesEXT = PhysicalDeviceSamplerFilterMinmaxProperties;
+ struct PhysicalDeviceSamplerYcbcrConversionFeatures;
+ using PhysicalDeviceSamplerYcbcrConversionFeaturesKHR = PhysicalDeviceSamplerYcbcrConversionFeatures;
+ struct PhysicalDeviceScalarBlockLayoutFeatures;
+ using PhysicalDeviceScalarBlockLayoutFeaturesEXT = PhysicalDeviceScalarBlockLayoutFeatures;
+ struct PhysicalDeviceSeparateDepthStencilLayoutsFeatures;
+ using PhysicalDeviceSeparateDepthStencilLayoutsFeaturesKHR = PhysicalDeviceSeparateDepthStencilLayoutsFeatures;
+ struct PhysicalDeviceShaderAtomicFloatFeaturesEXT;
+ struct PhysicalDeviceShaderAtomicInt64Features;
+ using PhysicalDeviceShaderAtomicInt64FeaturesKHR = PhysicalDeviceShaderAtomicInt64Features;
+ struct PhysicalDeviceShaderClockFeaturesKHR;
+ struct PhysicalDeviceShaderCoreProperties2AMD;
+ struct PhysicalDeviceShaderCorePropertiesAMD;
+ struct PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT;
+ struct PhysicalDeviceShaderDrawParametersFeatures;
+ using PhysicalDeviceShaderDrawParameterFeatures = PhysicalDeviceShaderDrawParametersFeatures;
+ struct PhysicalDeviceShaderFloat16Int8Features;
+ using PhysicalDeviceFloat16Int8FeaturesKHR = PhysicalDeviceShaderFloat16Int8Features;
+ using PhysicalDeviceShaderFloat16Int8FeaturesKHR = PhysicalDeviceShaderFloat16Int8Features;
+ struct PhysicalDeviceShaderImageAtomicInt64FeaturesEXT;
+ struct PhysicalDeviceShaderImageFootprintFeaturesNV;
+ struct PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL;
+ struct PhysicalDeviceShaderSMBuiltinsFeaturesNV;
+ struct PhysicalDeviceShaderSMBuiltinsPropertiesNV;
+ struct PhysicalDeviceShaderSubgroupExtendedTypesFeatures;
+ using PhysicalDeviceShaderSubgroupExtendedTypesFeaturesKHR = PhysicalDeviceShaderSubgroupExtendedTypesFeatures;
+ struct PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR;
+ struct PhysicalDeviceShaderTerminateInvocationFeaturesKHR;
+ struct PhysicalDeviceShadingRateImageFeaturesNV;
+ struct PhysicalDeviceShadingRateImagePropertiesNV;
+ struct PhysicalDeviceSparseImageFormatInfo2;
+ using PhysicalDeviceSparseImageFormatInfo2KHR = PhysicalDeviceSparseImageFormatInfo2;
+ struct PhysicalDeviceSparseProperties;
+ struct PhysicalDeviceSubgroupProperties;
+ struct PhysicalDeviceSubgroupSizeControlFeaturesEXT;
+ struct PhysicalDeviceSubgroupSizeControlPropertiesEXT;
+ struct PhysicalDeviceSubpassShadingFeaturesHUAWEI;
+ struct PhysicalDeviceSubpassShadingPropertiesHUAWEI;
+ struct PhysicalDeviceSurfaceInfo2KHR;
+ struct PhysicalDeviceSynchronization2FeaturesKHR;
+ struct PhysicalDeviceTexelBufferAlignmentFeaturesEXT;
+ struct PhysicalDeviceTexelBufferAlignmentPropertiesEXT;
+ struct PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT;
+ struct PhysicalDeviceTimelineSemaphoreFeatures;
+ using PhysicalDeviceTimelineSemaphoreFeaturesKHR = PhysicalDeviceTimelineSemaphoreFeatures;
+ struct PhysicalDeviceTimelineSemaphoreProperties;
+ using PhysicalDeviceTimelineSemaphorePropertiesKHR = PhysicalDeviceTimelineSemaphoreProperties;
+ struct PhysicalDeviceToolPropertiesEXT;
+ struct PhysicalDeviceTransformFeedbackFeaturesEXT;
+ struct PhysicalDeviceTransformFeedbackPropertiesEXT;
+ struct PhysicalDeviceUniformBufferStandardLayoutFeatures;
+ using PhysicalDeviceUniformBufferStandardLayoutFeaturesKHR = PhysicalDeviceUniformBufferStandardLayoutFeatures;
+ struct PhysicalDeviceVariablePointersFeatures;
+ using PhysicalDeviceVariablePointerFeatures = PhysicalDeviceVariablePointersFeatures;
+ using PhysicalDeviceVariablePointerFeaturesKHR = PhysicalDeviceVariablePointersFeatures;
+ using PhysicalDeviceVariablePointersFeaturesKHR = PhysicalDeviceVariablePointersFeatures;
+ struct PhysicalDeviceVertexAttributeDivisorFeaturesEXT;
+ struct PhysicalDeviceVertexAttributeDivisorPropertiesEXT;
+ struct PhysicalDeviceVertexInputDynamicStateFeaturesEXT;
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct PhysicalDeviceVideoFormatInfoKHR;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ struct PhysicalDeviceVulkan11Features;
+ struct PhysicalDeviceVulkan11Properties;
+ struct PhysicalDeviceVulkan12Features;
+ struct PhysicalDeviceVulkan12Properties;
+ struct PhysicalDeviceVulkanMemoryModelFeatures;
+ using PhysicalDeviceVulkanMemoryModelFeaturesKHR = PhysicalDeviceVulkanMemoryModelFeatures;
+ struct PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR;
+ struct PhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT;
+ struct PhysicalDeviceYcbcrImageArraysFeaturesEXT;
+ struct PhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR;
+ struct PipelineCacheCreateInfo;
+ struct PipelineColorBlendAdvancedStateCreateInfoEXT;
+ struct PipelineColorBlendAttachmentState;
+ struct PipelineColorBlendStateCreateInfo;
+ struct PipelineColorWriteCreateInfoEXT;
+ struct PipelineCompilerControlCreateInfoAMD;
+ struct PipelineCoverageModulationStateCreateInfoNV;
+ struct PipelineCoverageReductionStateCreateInfoNV;
+ struct PipelineCoverageToColorStateCreateInfoNV;
+ struct PipelineCreationFeedbackCreateInfoEXT;
+ struct PipelineCreationFeedbackEXT;
+ struct PipelineDepthStencilStateCreateInfo;
+ struct PipelineDiscardRectangleStateCreateInfoEXT;
+ struct PipelineDynamicStateCreateInfo;
+ struct PipelineExecutableInfoKHR;
+ struct PipelineExecutableInternalRepresentationKHR;
+ struct PipelineExecutablePropertiesKHR;
+ struct PipelineExecutableStatisticKHR;
+ union PipelineExecutableStatisticValueKHR;
+ struct PipelineFragmentShadingRateEnumStateCreateInfoNV;
+ struct PipelineFragmentShadingRateStateCreateInfoKHR;
+ struct PipelineInfoKHR;
+ struct PipelineInputAssemblyStateCreateInfo;
+ struct PipelineLayoutCreateInfo;
+ struct PipelineLibraryCreateInfoKHR;
+ struct PipelineMultisampleStateCreateInfo;
+ struct PipelineRasterizationConservativeStateCreateInfoEXT;
+ struct PipelineRasterizationDepthClipStateCreateInfoEXT;
+ struct PipelineRasterizationLineStateCreateInfoEXT;
+ struct PipelineRasterizationProvokingVertexStateCreateInfoEXT;
+ struct PipelineRasterizationStateCreateInfo;
+ struct PipelineRasterizationStateRasterizationOrderAMD;
+ struct PipelineRasterizationStateStreamCreateInfoEXT;
+ struct PipelineRepresentativeFragmentTestStateCreateInfoNV;
+ struct PipelineSampleLocationsStateCreateInfoEXT;
+ struct PipelineShaderStageCreateInfo;
+ struct PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT;
+ struct PipelineTessellationDomainOriginStateCreateInfo;
+ using PipelineTessellationDomainOriginStateCreateInfoKHR = PipelineTessellationDomainOriginStateCreateInfo;
+ struct PipelineTessellationStateCreateInfo;
+ struct PipelineVertexInputDivisorStateCreateInfoEXT;
+ struct PipelineVertexInputStateCreateInfo;
+ struct PipelineViewportCoarseSampleOrderStateCreateInfoNV;
+ struct PipelineViewportExclusiveScissorStateCreateInfoNV;
+ struct PipelineViewportShadingRateImageStateCreateInfoNV;
+ struct PipelineViewportStateCreateInfo;
+ struct PipelineViewportSwizzleStateCreateInfoNV;
+ struct PipelineViewportWScalingStateCreateInfoNV;
+#if defined( VK_USE_PLATFORM_GGP )
+ struct PresentFrameTokenGGP;
+#endif /*VK_USE_PLATFORM_GGP*/
+ struct PresentInfoKHR;
+ struct PresentRegionKHR;
+ struct PresentRegionsKHR;
+ struct PresentTimeGOOGLE;
+ struct PresentTimesInfoGOOGLE;
+ struct PrivateDataSlotCreateInfoEXT;
+ struct ProtectedSubmitInfo;
+ struct PushConstantRange;
+ struct QueryPoolCreateInfo;
+ struct QueryPoolPerformanceCreateInfoKHR;
+ struct QueryPoolPerformanceQueryCreateInfoINTEL;
+ using QueryPoolCreateInfoINTEL = QueryPoolPerformanceQueryCreateInfoINTEL;
+ struct QueueFamilyCheckpointProperties2NV;
+ struct QueueFamilyCheckpointPropertiesNV;
+ struct QueueFamilyGlobalPriorityPropertiesEXT;
+ struct QueueFamilyProperties;
+ struct QueueFamilyProperties2;
+ using QueueFamilyProperties2KHR = QueueFamilyProperties2;
+ struct RayTracingPipelineCreateInfoKHR;
+ struct RayTracingPipelineCreateInfoNV;
+ struct RayTracingPipelineInterfaceCreateInfoKHR;
+ struct RayTracingShaderGroupCreateInfoKHR;
+ struct RayTracingShaderGroupCreateInfoNV;
+ struct Rect2D;
+ struct RectLayerKHR;
+ struct RefreshCycleDurationGOOGLE;
+ struct RenderPassAttachmentBeginInfo;
+ using RenderPassAttachmentBeginInfoKHR = RenderPassAttachmentBeginInfo;
+ struct RenderPassBeginInfo;
+ struct RenderPassCreateInfo;
+ struct RenderPassCreateInfo2;
+ using RenderPassCreateInfo2KHR = RenderPassCreateInfo2;
+ struct RenderPassFragmentDensityMapCreateInfoEXT;
+ struct RenderPassInputAttachmentAspectCreateInfo;
+ using RenderPassInputAttachmentAspectCreateInfoKHR = RenderPassInputAttachmentAspectCreateInfo;
+ struct RenderPassMultiviewCreateInfo;
+ using RenderPassMultiviewCreateInfoKHR = RenderPassMultiviewCreateInfo;
+ struct RenderPassSampleLocationsBeginInfoEXT;
+ struct RenderPassTransformBeginInfoQCOM;
+ struct ResolveImageInfo2KHR;
+ struct SRTDataNV;
+ struct SampleLocationEXT;
+ struct SampleLocationsInfoEXT;
+ struct SamplerCreateInfo;
+ struct SamplerCustomBorderColorCreateInfoEXT;
+ struct SamplerReductionModeCreateInfo;
+ using SamplerReductionModeCreateInfoEXT = SamplerReductionModeCreateInfo;
+ struct SamplerYcbcrConversionCreateInfo;
+ using SamplerYcbcrConversionCreateInfoKHR = SamplerYcbcrConversionCreateInfo;
+ struct SamplerYcbcrConversionImageFormatProperties;
+ using SamplerYcbcrConversionImageFormatPropertiesKHR = SamplerYcbcrConversionImageFormatProperties;
+ struct SamplerYcbcrConversionInfo;
+ using SamplerYcbcrConversionInfoKHR = SamplerYcbcrConversionInfo;
+#if defined( VK_USE_PLATFORM_SCREEN_QNX )
+ struct ScreenSurfaceCreateInfoQNX;
+#endif /*VK_USE_PLATFORM_SCREEN_QNX*/
+ struct SemaphoreCreateInfo;
+ struct SemaphoreGetFdInfoKHR;
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ struct SemaphoreGetWin32HandleInfoKHR;
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+#if defined( VK_USE_PLATFORM_FUCHSIA )
+ struct SemaphoreGetZirconHandleInfoFUCHSIA;
+#endif /*VK_USE_PLATFORM_FUCHSIA*/
+ struct SemaphoreSignalInfo;
+ using SemaphoreSignalInfoKHR = SemaphoreSignalInfo;
+ struct SemaphoreSubmitInfoKHR;
+ struct SemaphoreTypeCreateInfo;
+ using SemaphoreTypeCreateInfoKHR = SemaphoreTypeCreateInfo;
+ struct SemaphoreWaitInfo;
+ using SemaphoreWaitInfoKHR = SemaphoreWaitInfo;
+ struct SetStateFlagsIndirectCommandNV;
+ struct ShaderModuleCreateInfo;
+ struct ShaderModuleValidationCacheCreateInfoEXT;
+ struct ShaderResourceUsageAMD;
+ struct ShaderStatisticsInfoAMD;
+ struct ShadingRatePaletteNV;
+ struct SharedPresentSurfaceCapabilitiesKHR;
+ struct SparseBufferMemoryBindInfo;
+ struct SparseImageFormatProperties;
+ struct SparseImageFormatProperties2;
+ using SparseImageFormatProperties2KHR = SparseImageFormatProperties2;
+ struct SparseImageMemoryBind;
+ struct SparseImageMemoryBindInfo;
+ struct SparseImageMemoryRequirements;
+ struct SparseImageMemoryRequirements2;
+ using SparseImageMemoryRequirements2KHR = SparseImageMemoryRequirements2;
+ struct SparseImageOpaqueMemoryBindInfo;
+ struct SparseMemoryBind;
+ struct SpecializationInfo;
+ struct SpecializationMapEntry;
+ struct StencilOpState;
+#if defined( VK_USE_PLATFORM_GGP )
+ struct StreamDescriptorSurfaceCreateInfoGGP;
+#endif /*VK_USE_PLATFORM_GGP*/
+ struct StridedDeviceAddressRegionKHR;
+ struct SubmitInfo;
+ struct SubmitInfo2KHR;
+ struct SubpassBeginInfo;
+ using SubpassBeginInfoKHR = SubpassBeginInfo;
+ struct SubpassDependency;
+ struct SubpassDependency2;
+ using SubpassDependency2KHR = SubpassDependency2;
+ struct SubpassDescription;
+ struct SubpassDescription2;
+ using SubpassDescription2KHR = SubpassDescription2;
+ struct SubpassDescriptionDepthStencilResolve;
+ using SubpassDescriptionDepthStencilResolveKHR = SubpassDescriptionDepthStencilResolve;
+ struct SubpassEndInfo;
+ using SubpassEndInfoKHR = SubpassEndInfo;
+ struct SubpassSampleLocationsEXT;
+ struct SubpassShadingPipelineCreateInfoHUAWEI;
+ struct SubresourceLayout;
+ struct SurfaceCapabilities2EXT;
+ struct SurfaceCapabilities2KHR;
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ struct SurfaceCapabilitiesFullScreenExclusiveEXT;
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+ struct SurfaceCapabilitiesKHR;
+ struct SurfaceFormat2KHR;
+ struct SurfaceFormatKHR;
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ struct SurfaceFullScreenExclusiveInfoEXT;
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ struct SurfaceFullScreenExclusiveWin32InfoEXT;
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+ struct SurfaceProtectedCapabilitiesKHR;
+ struct SwapchainCounterCreateInfoEXT;
+ struct SwapchainCreateInfoKHR;
+ struct SwapchainDisplayNativeHdrCreateInfoAMD;
+ struct TextureLODGatherFormatPropertiesAMD;
+ struct TimelineSemaphoreSubmitInfo;
+ using TimelineSemaphoreSubmitInfoKHR = TimelineSemaphoreSubmitInfo;
+ struct TraceRaysIndirectCommandKHR;
+ struct TransformMatrixKHR;
+ using TransformMatrixNV = TransformMatrixKHR;
+ struct ValidationCacheCreateInfoEXT;
+ struct ValidationFeaturesEXT;
+ struct ValidationFlagsEXT;
+ struct VertexInputAttributeDescription;
+ struct VertexInputAttributeDescription2EXT;
+ struct VertexInputBindingDescription;
+ struct VertexInputBindingDescription2EXT;
+ struct VertexInputBindingDivisorDescriptionEXT;
+#if defined( VK_USE_PLATFORM_VI_NN )
+ struct ViSurfaceCreateInfoNN;
+#endif /*VK_USE_PLATFORM_VI_NN*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoBeginCodingInfoKHR;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoBindMemoryKHR;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoCapabilitiesKHR;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoCodingControlInfoKHR;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoDecodeH264CapabilitiesEXT;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoDecodeH264DpbSlotInfoEXT;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoDecodeH264MvcEXT;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoDecodeH264PictureInfoEXT;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoDecodeH264ProfileEXT;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoDecodeH264SessionCreateInfoEXT;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoDecodeH264SessionParametersAddInfoEXT;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoDecodeH264SessionParametersCreateInfoEXT;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoDecodeH265CapabilitiesEXT;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoDecodeH265DpbSlotInfoEXT;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoDecodeH265PictureInfoEXT;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoDecodeH265ProfileEXT;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoDecodeH265SessionCreateInfoEXT;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoDecodeH265SessionParametersAddInfoEXT;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoDecodeH265SessionParametersCreateInfoEXT;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoDecodeInfoKHR;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoEncodeH264CapabilitiesEXT;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoEncodeH264DpbSlotInfoEXT;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoEncodeH264EmitPictureParametersEXT;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoEncodeH264NaluSliceEXT;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoEncodeH264ProfileEXT;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoEncodeH264SessionCreateInfoEXT;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoEncodeH264SessionParametersAddInfoEXT;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoEncodeH264SessionParametersCreateInfoEXT;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoEncodeH264VclFrameInfoEXT;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoEncodeInfoKHR;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoEncodeRateControlInfoKHR;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoEndCodingInfoKHR;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoFormatPropertiesKHR;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoGetMemoryPropertiesKHR;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoPictureResourceKHR;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoProfileKHR;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoProfilesKHR;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoQueueFamilyProperties2KHR;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoReferenceSlotKHR;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoSessionCreateInfoKHR;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoSessionParametersCreateInfoKHR;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoSessionParametersUpdateInfoKHR;
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ struct Viewport;
+ struct ViewportSwizzleNV;
+ struct ViewportWScalingNV;
+#if defined( VK_USE_PLATFORM_WAYLAND_KHR )
+ struct WaylandSurfaceCreateInfoKHR;
+#endif /*VK_USE_PLATFORM_WAYLAND_KHR*/
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ struct Win32KeyedMutexAcquireReleaseInfoKHR;
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ struct Win32KeyedMutexAcquireReleaseInfoNV;
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ struct Win32SurfaceCreateInfoKHR;
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+ struct WriteDescriptorSet;
+ struct WriteDescriptorSetAccelerationStructureKHR;
+ struct WriteDescriptorSetAccelerationStructureNV;
+ struct WriteDescriptorSetInlineUniformBlockEXT;
+ struct XYColorEXT;
+#if defined( VK_USE_PLATFORM_XCB_KHR )
+ struct XcbSurfaceCreateInfoKHR;
+#endif /*VK_USE_PLATFORM_XCB_KHR*/
+#if defined( VK_USE_PLATFORM_XLIB_KHR )
+ struct XlibSurfaceCreateInfoKHR;
+#endif /*VK_USE_PLATFORM_XLIB_KHR*/
+
+ class SurfaceKHR
+ {
+ public:
+ using CType = VkSurfaceKHR;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eSurfaceKHR;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eSurfaceKHR;
+
+ public:
+ VULKAN_HPP_CONSTEXPR SurfaceKHR() = default;
+ VULKAN_HPP_CONSTEXPR SurfaceKHR( std::nullptr_t ) VULKAN_HPP_NOEXCEPT {}
+ VULKAN_HPP_TYPESAFE_EXPLICIT SurfaceKHR( VkSurfaceKHR surfaceKHR ) VULKAN_HPP_NOEXCEPT : m_surfaceKHR( surfaceKHR )
+ {}
+
+#if defined( VULKAN_HPP_TYPESAFE_CONVERSION )
+ SurfaceKHR & operator=( VkSurfaceKHR surfaceKHR ) VULKAN_HPP_NOEXCEPT
+ {
+ m_surfaceKHR = surfaceKHR;
+ return *this;
+ }
+#endif
+
+ SurfaceKHR & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
+ {
+ m_surfaceKHR = {};
+ return *this;
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( SurfaceKHR const & ) const = default;
+#else
+ bool operator==( SurfaceKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_surfaceKHR == rhs.m_surfaceKHR;
+ }
+
+ bool operator!=( SurfaceKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_surfaceKHR != rhs.m_surfaceKHR;
+ }
+
+ bool operator<( SurfaceKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_surfaceKHR < rhs.m_surfaceKHR;
+ }
+#endif
+
+ VULKAN_HPP_TYPESAFE_EXPLICIT operator VkSurfaceKHR() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_surfaceKHR;
+ }
+
+ explicit operator bool() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_surfaceKHR != VK_NULL_HANDLE;
+ }
+
+ bool operator!() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_surfaceKHR == VK_NULL_HANDLE;
+ }
+
+ private:
+ VkSurfaceKHR m_surfaceKHR = {};
+ };
+ static_assert( sizeof( VULKAN_HPP_NAMESPACE::SurfaceKHR ) == sizeof( VkSurfaceKHR ),
+ "handle and wrapper have different size!" );
+
+ template <>
+ struct VULKAN_HPP_DEPRECATED(
+ "vk::cpp_type is deprecated. Use vk::CppType instead." ) cpp_type<ObjectType::eSurfaceKHR>
+ {
+ using type = VULKAN_HPP_NAMESPACE::SurfaceKHR;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eSurfaceKHR>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::SurfaceKHR;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT,
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eSurfaceKHR>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::SurfaceKHR;
+ };
+
+ template <>
+ struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::SurfaceKHR>
+ {
+ static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
+ };
+
+ class DebugReportCallbackEXT
+ {
+ public:
+ using CType = VkDebugReportCallbackEXT;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eDebugReportCallbackEXT;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eDebugReportCallbackEXT;
+
+ public:
+ VULKAN_HPP_CONSTEXPR DebugReportCallbackEXT() = default;
+ VULKAN_HPP_CONSTEXPR DebugReportCallbackEXT( std::nullptr_t ) VULKAN_HPP_NOEXCEPT {}
+ VULKAN_HPP_TYPESAFE_EXPLICIT
+ DebugReportCallbackEXT( VkDebugReportCallbackEXT debugReportCallbackEXT ) VULKAN_HPP_NOEXCEPT
+ : m_debugReportCallbackEXT( debugReportCallbackEXT )
+ {}
+
+#if defined( VULKAN_HPP_TYPESAFE_CONVERSION )
+ DebugReportCallbackEXT & operator=( VkDebugReportCallbackEXT debugReportCallbackEXT ) VULKAN_HPP_NOEXCEPT
+ {
+ m_debugReportCallbackEXT = debugReportCallbackEXT;
+ return *this;
+ }
+#endif
+
+ DebugReportCallbackEXT & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
+ {
+ m_debugReportCallbackEXT = {};
+ return *this;
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DebugReportCallbackEXT const & ) const = default;
+#else
+ bool operator==( DebugReportCallbackEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_debugReportCallbackEXT == rhs.m_debugReportCallbackEXT;
+ }
+
+ bool operator!=( DebugReportCallbackEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_debugReportCallbackEXT != rhs.m_debugReportCallbackEXT;
+ }
+
+ bool operator<( DebugReportCallbackEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_debugReportCallbackEXT < rhs.m_debugReportCallbackEXT;
+ }
+#endif
+
+ VULKAN_HPP_TYPESAFE_EXPLICIT operator VkDebugReportCallbackEXT() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_debugReportCallbackEXT;
+ }
+
+ explicit operator bool() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_debugReportCallbackEXT != VK_NULL_HANDLE;
+ }
+
+ bool operator!() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_debugReportCallbackEXT == VK_NULL_HANDLE;
+ }
+
+ private:
+ VkDebugReportCallbackEXT m_debugReportCallbackEXT = {};
+ };
+ static_assert( sizeof( VULKAN_HPP_NAMESPACE::DebugReportCallbackEXT ) == sizeof( VkDebugReportCallbackEXT ),
+ "handle and wrapper have different size!" );
+
+ template <>
+ struct VULKAN_HPP_DEPRECATED(
+ "vk::cpp_type is deprecated. Use vk::CppType instead." ) cpp_type<ObjectType::eDebugReportCallbackEXT>
+ {
+ using type = VULKAN_HPP_NAMESPACE::DebugReportCallbackEXT;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eDebugReportCallbackEXT>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::DebugReportCallbackEXT;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT,
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eDebugReportCallbackEXT>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::DebugReportCallbackEXT;
+ };
+
+ template <>
+ struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::DebugReportCallbackEXT>
+ {
+ static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
+ };
+
+ class DebugUtilsMessengerEXT
+ {
+ public:
+ using CType = VkDebugUtilsMessengerEXT;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eDebugUtilsMessengerEXT;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eUnknown;
+
+ public:
+ VULKAN_HPP_CONSTEXPR DebugUtilsMessengerEXT() = default;
+ VULKAN_HPP_CONSTEXPR DebugUtilsMessengerEXT( std::nullptr_t ) VULKAN_HPP_NOEXCEPT {}
+ VULKAN_HPP_TYPESAFE_EXPLICIT
+ DebugUtilsMessengerEXT( VkDebugUtilsMessengerEXT debugUtilsMessengerEXT ) VULKAN_HPP_NOEXCEPT
+ : m_debugUtilsMessengerEXT( debugUtilsMessengerEXT )
+ {}
+
+#if defined( VULKAN_HPP_TYPESAFE_CONVERSION )
+ DebugUtilsMessengerEXT & operator=( VkDebugUtilsMessengerEXT debugUtilsMessengerEXT ) VULKAN_HPP_NOEXCEPT
+ {
+ m_debugUtilsMessengerEXT = debugUtilsMessengerEXT;
+ return *this;
+ }
+#endif
+
+ DebugUtilsMessengerEXT & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
+ {
+ m_debugUtilsMessengerEXT = {};
+ return *this;
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DebugUtilsMessengerEXT const & ) const = default;
+#else
+ bool operator==( DebugUtilsMessengerEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_debugUtilsMessengerEXT == rhs.m_debugUtilsMessengerEXT;
+ }
+
+ bool operator!=( DebugUtilsMessengerEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_debugUtilsMessengerEXT != rhs.m_debugUtilsMessengerEXT;
+ }
+
+ bool operator<( DebugUtilsMessengerEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_debugUtilsMessengerEXT < rhs.m_debugUtilsMessengerEXT;
+ }
+#endif
+
+ VULKAN_HPP_TYPESAFE_EXPLICIT operator VkDebugUtilsMessengerEXT() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_debugUtilsMessengerEXT;
+ }
+
+ explicit operator bool() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_debugUtilsMessengerEXT != VK_NULL_HANDLE;
+ }
+
+ bool operator!() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_debugUtilsMessengerEXT == VK_NULL_HANDLE;
+ }
+
+ private:
+ VkDebugUtilsMessengerEXT m_debugUtilsMessengerEXT = {};
+ };
+ static_assert( sizeof( VULKAN_HPP_NAMESPACE::DebugUtilsMessengerEXT ) == sizeof( VkDebugUtilsMessengerEXT ),
+ "handle and wrapper have different size!" );
+
+ template <>
+ struct VULKAN_HPP_DEPRECATED(
+ "vk::cpp_type is deprecated. Use vk::CppType instead." ) cpp_type<ObjectType::eDebugUtilsMessengerEXT>
+ {
+ using type = VULKAN_HPP_NAMESPACE::DebugUtilsMessengerEXT;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eDebugUtilsMessengerEXT>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::DebugUtilsMessengerEXT;
+ };
+
+ template <>
+ struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::DebugUtilsMessengerEXT>
+ {
+ static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
+ };
+
+ class DisplayKHR
+ {
+ public:
+ using CType = VkDisplayKHR;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eDisplayKHR;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eDisplayKHR;
+
+ public:
+ VULKAN_HPP_CONSTEXPR DisplayKHR() = default;
+ VULKAN_HPP_CONSTEXPR DisplayKHR( std::nullptr_t ) VULKAN_HPP_NOEXCEPT {}
+ VULKAN_HPP_TYPESAFE_EXPLICIT DisplayKHR( VkDisplayKHR displayKHR ) VULKAN_HPP_NOEXCEPT : m_displayKHR( displayKHR )
+ {}
+
+#if defined( VULKAN_HPP_TYPESAFE_CONVERSION )
+ DisplayKHR & operator=( VkDisplayKHR displayKHR ) VULKAN_HPP_NOEXCEPT
+ {
+ m_displayKHR = displayKHR;
+ return *this;
+ }
+#endif
+
+ DisplayKHR & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
+ {
+ m_displayKHR = {};
+ return *this;
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DisplayKHR const & ) const = default;
+#else
+ bool operator==( DisplayKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_displayKHR == rhs.m_displayKHR;
+ }
+
+ bool operator!=( DisplayKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_displayKHR != rhs.m_displayKHR;
+ }
+
+ bool operator<( DisplayKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_displayKHR < rhs.m_displayKHR;
+ }
+#endif
+
+ VULKAN_HPP_TYPESAFE_EXPLICIT operator VkDisplayKHR() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_displayKHR;
+ }
+
+ explicit operator bool() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_displayKHR != VK_NULL_HANDLE;
+ }
+
+ bool operator!() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_displayKHR == VK_NULL_HANDLE;
+ }
+
+ private:
+ VkDisplayKHR m_displayKHR = {};
+ };
+ static_assert( sizeof( VULKAN_HPP_NAMESPACE::DisplayKHR ) == sizeof( VkDisplayKHR ),
+ "handle and wrapper have different size!" );
+
+ template <>
+ struct VULKAN_HPP_DEPRECATED(
+ "vk::cpp_type is deprecated. Use vk::CppType instead." ) cpp_type<ObjectType::eDisplayKHR>
+ {
+ using type = VULKAN_HPP_NAMESPACE::DisplayKHR;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eDisplayKHR>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::DisplayKHR;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT,
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eDisplayKHR>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::DisplayKHR;
+ };
+
+ template <>
+ struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::DisplayKHR>
+ {
+ static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
+ };
+
+ class SwapchainKHR
+ {
+ public:
+ using CType = VkSwapchainKHR;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eSwapchainKHR;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eSwapchainKHR;
+
+ public:
+ VULKAN_HPP_CONSTEXPR SwapchainKHR() = default;
+ VULKAN_HPP_CONSTEXPR SwapchainKHR( std::nullptr_t ) VULKAN_HPP_NOEXCEPT {}
+ VULKAN_HPP_TYPESAFE_EXPLICIT SwapchainKHR( VkSwapchainKHR swapchainKHR ) VULKAN_HPP_NOEXCEPT
+ : m_swapchainKHR( swapchainKHR )
+ {}
+
+#if defined( VULKAN_HPP_TYPESAFE_CONVERSION )
+ SwapchainKHR & operator=( VkSwapchainKHR swapchainKHR ) VULKAN_HPP_NOEXCEPT
+ {
+ m_swapchainKHR = swapchainKHR;
+ return *this;
+ }
+#endif
+
+ SwapchainKHR & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
+ {
+ m_swapchainKHR = {};
+ return *this;
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( SwapchainKHR const & ) const = default;
+#else
+ bool operator==( SwapchainKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_swapchainKHR == rhs.m_swapchainKHR;
+ }
+
+ bool operator!=( SwapchainKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_swapchainKHR != rhs.m_swapchainKHR;
+ }
+
+ bool operator<( SwapchainKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_swapchainKHR < rhs.m_swapchainKHR;
+ }
+#endif
+
+ VULKAN_HPP_TYPESAFE_EXPLICIT operator VkSwapchainKHR() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_swapchainKHR;
+ }
+
+ explicit operator bool() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_swapchainKHR != VK_NULL_HANDLE;
+ }
+
+ bool operator!() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_swapchainKHR == VK_NULL_HANDLE;
+ }
+
+ private:
+ VkSwapchainKHR m_swapchainKHR = {};
+ };
+ static_assert( sizeof( VULKAN_HPP_NAMESPACE::SwapchainKHR ) == sizeof( VkSwapchainKHR ),
+ "handle and wrapper have different size!" );
+
+ template <>
+ struct VULKAN_HPP_DEPRECATED(
+ "vk::cpp_type is deprecated. Use vk::CppType instead." ) cpp_type<ObjectType::eSwapchainKHR>
+ {
+ using type = VULKAN_HPP_NAMESPACE::SwapchainKHR;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eSwapchainKHR>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::SwapchainKHR;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT,
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eSwapchainKHR>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::SwapchainKHR;
+ };
+
+ template <>
+ struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::SwapchainKHR>
+ {
+ static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
+ };
+
+ class Semaphore
+ {
+ public:
+ using CType = VkSemaphore;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eSemaphore;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eSemaphore;
+
+ public:
+ VULKAN_HPP_CONSTEXPR Semaphore() = default;
+ VULKAN_HPP_CONSTEXPR Semaphore( std::nullptr_t ) VULKAN_HPP_NOEXCEPT {}
+ VULKAN_HPP_TYPESAFE_EXPLICIT Semaphore( VkSemaphore semaphore ) VULKAN_HPP_NOEXCEPT : m_semaphore( semaphore ) {}
+
+#if defined( VULKAN_HPP_TYPESAFE_CONVERSION )
+ Semaphore & operator=( VkSemaphore semaphore ) VULKAN_HPP_NOEXCEPT
+ {
+ m_semaphore = semaphore;
+ return *this;
+ }
+#endif
+
+ Semaphore & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
+ {
+ m_semaphore = {};
+ return *this;
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( Semaphore const & ) const = default;
+#else
+ bool operator==( Semaphore const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_semaphore == rhs.m_semaphore;
+ }
+
+ bool operator!=( Semaphore const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_semaphore != rhs.m_semaphore;
+ }
+
+ bool operator<( Semaphore const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_semaphore < rhs.m_semaphore;
+ }
+#endif
+
+ VULKAN_HPP_TYPESAFE_EXPLICIT operator VkSemaphore() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_semaphore;
+ }
+
+ explicit operator bool() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_semaphore != VK_NULL_HANDLE;
+ }
+
+ bool operator!() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_semaphore == VK_NULL_HANDLE;
+ }
+
+ private:
+ VkSemaphore m_semaphore = {};
+ };
+ static_assert( sizeof( VULKAN_HPP_NAMESPACE::Semaphore ) == sizeof( VkSemaphore ),
+ "handle and wrapper have different size!" );
+
+ template <>
+ struct VULKAN_HPP_DEPRECATED(
+ "vk::cpp_type is deprecated. Use vk::CppType instead." ) cpp_type<ObjectType::eSemaphore>
+ {
+ using type = VULKAN_HPP_NAMESPACE::Semaphore;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eSemaphore>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::Semaphore;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT,
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eSemaphore>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::Semaphore;
+ };
+
+ template <>
+ struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::Semaphore>
+ {
+ static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
+ };
+
+ class Fence
+ {
+ public:
+ using CType = VkFence;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eFence;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eFence;
+
+ public:
+ VULKAN_HPP_CONSTEXPR Fence() = default;
+ VULKAN_HPP_CONSTEXPR Fence( std::nullptr_t ) VULKAN_HPP_NOEXCEPT {}
+ VULKAN_HPP_TYPESAFE_EXPLICIT Fence( VkFence fence ) VULKAN_HPP_NOEXCEPT : m_fence( fence ) {}
+
+#if defined( VULKAN_HPP_TYPESAFE_CONVERSION )
+ Fence & operator=( VkFence fence ) VULKAN_HPP_NOEXCEPT
+ {
+ m_fence = fence;
+ return *this;
+ }
+#endif
+
+ Fence & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
+ {
+ m_fence = {};
+ return *this;
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( Fence const & ) const = default;
+#else
+ bool operator==( Fence const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_fence == rhs.m_fence;
+ }
+
+ bool operator!=( Fence const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_fence != rhs.m_fence;
+ }
+
+ bool operator<( Fence const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_fence < rhs.m_fence;
+ }
+#endif
+
+ VULKAN_HPP_TYPESAFE_EXPLICIT operator VkFence() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_fence;
+ }
+
+ explicit operator bool() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_fence != VK_NULL_HANDLE;
+ }
+
+ bool operator!() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_fence == VK_NULL_HANDLE;
+ }
+
+ private:
+ VkFence m_fence = {};
+ };
+ static_assert( sizeof( VULKAN_HPP_NAMESPACE::Fence ) == sizeof( VkFence ),
+ "handle and wrapper have different size!" );
+
+ template <>
+ struct VULKAN_HPP_DEPRECATED( "vk::cpp_type is deprecated. Use vk::CppType instead." ) cpp_type<ObjectType::eFence>
+ {
+ using type = VULKAN_HPP_NAMESPACE::Fence;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eFence>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::Fence;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT, VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eFence>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::Fence;
+ };
+
+ template <>
+ struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::Fence>
+ {
+ static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
+ };
+
+ class PerformanceConfigurationINTEL
+ {
+ public:
+ using CType = VkPerformanceConfigurationINTEL;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::ePerformanceConfigurationINTEL;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eUnknown;
+
+ public:
+ VULKAN_HPP_CONSTEXPR PerformanceConfigurationINTEL() = default;
+ VULKAN_HPP_CONSTEXPR PerformanceConfigurationINTEL( std::nullptr_t ) VULKAN_HPP_NOEXCEPT {}
+ VULKAN_HPP_TYPESAFE_EXPLICIT
+ PerformanceConfigurationINTEL( VkPerformanceConfigurationINTEL performanceConfigurationINTEL ) VULKAN_HPP_NOEXCEPT
+ : m_performanceConfigurationINTEL( performanceConfigurationINTEL )
+ {}
+
+#if defined( VULKAN_HPP_TYPESAFE_CONVERSION )
+ PerformanceConfigurationINTEL &
+ operator=( VkPerformanceConfigurationINTEL performanceConfigurationINTEL ) VULKAN_HPP_NOEXCEPT
+ {
+ m_performanceConfigurationINTEL = performanceConfigurationINTEL;
+ return *this;
+ }
+#endif
+
+ PerformanceConfigurationINTEL & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
+ {
+ m_performanceConfigurationINTEL = {};
+ return *this;
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PerformanceConfigurationINTEL const & ) const = default;
+#else
+ bool operator==( PerformanceConfigurationINTEL const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_performanceConfigurationINTEL == rhs.m_performanceConfigurationINTEL;
+ }
+
+ bool operator!=( PerformanceConfigurationINTEL const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_performanceConfigurationINTEL != rhs.m_performanceConfigurationINTEL;
+ }
+
+ bool operator<( PerformanceConfigurationINTEL const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_performanceConfigurationINTEL < rhs.m_performanceConfigurationINTEL;
+ }
+#endif
+
+ VULKAN_HPP_TYPESAFE_EXPLICIT operator VkPerformanceConfigurationINTEL() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_performanceConfigurationINTEL;
+ }
+
+ explicit operator bool() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_performanceConfigurationINTEL != VK_NULL_HANDLE;
+ }
+
+ bool operator!() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_performanceConfigurationINTEL == VK_NULL_HANDLE;
+ }
+
+ private:
+ VkPerformanceConfigurationINTEL m_performanceConfigurationINTEL = {};
+ };
+ static_assert( sizeof( VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL ) ==
+ sizeof( VkPerformanceConfigurationINTEL ),
+ "handle and wrapper have different size!" );
+
+ template <>
+ struct VULKAN_HPP_DEPRECATED(
+ "vk::cpp_type is deprecated. Use vk::CppType instead." ) cpp_type<ObjectType::ePerformanceConfigurationINTEL>
+ {
+ using type = VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::ePerformanceConfigurationINTEL>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL;
+ };
+
+ template <>
+ struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL>
+ {
+ static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
+ };
+
+ class QueryPool
+ {
+ public:
+ using CType = VkQueryPool;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eQueryPool;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eQueryPool;
+
+ public:
+ VULKAN_HPP_CONSTEXPR QueryPool() = default;
+ VULKAN_HPP_CONSTEXPR QueryPool( std::nullptr_t ) VULKAN_HPP_NOEXCEPT {}
+ VULKAN_HPP_TYPESAFE_EXPLICIT QueryPool( VkQueryPool queryPool ) VULKAN_HPP_NOEXCEPT : m_queryPool( queryPool ) {}
+
+#if defined( VULKAN_HPP_TYPESAFE_CONVERSION )
+ QueryPool & operator=( VkQueryPool queryPool ) VULKAN_HPP_NOEXCEPT
+ {
+ m_queryPool = queryPool;
+ return *this;
+ }
+#endif
+
+ QueryPool & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
+ {
+ m_queryPool = {};
+ return *this;
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( QueryPool const & ) const = default;
+#else
+ bool operator==( QueryPool const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_queryPool == rhs.m_queryPool;
+ }
+
+ bool operator!=( QueryPool const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_queryPool != rhs.m_queryPool;
+ }
+
+ bool operator<( QueryPool const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_queryPool < rhs.m_queryPool;
+ }
+#endif
+
+ VULKAN_HPP_TYPESAFE_EXPLICIT operator VkQueryPool() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_queryPool;
+ }
+
+ explicit operator bool() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_queryPool != VK_NULL_HANDLE;
+ }
+
+ bool operator!() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_queryPool == VK_NULL_HANDLE;
+ }
+
+ private:
+ VkQueryPool m_queryPool = {};
+ };
+ static_assert( sizeof( VULKAN_HPP_NAMESPACE::QueryPool ) == sizeof( VkQueryPool ),
+ "handle and wrapper have different size!" );
+
+ template <>
+ struct VULKAN_HPP_DEPRECATED(
+ "vk::cpp_type is deprecated. Use vk::CppType instead." ) cpp_type<ObjectType::eQueryPool>
+ {
+ using type = VULKAN_HPP_NAMESPACE::QueryPool;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eQueryPool>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::QueryPool;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT,
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eQueryPool>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::QueryPool;
+ };
+
+ template <>
+ struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::QueryPool>
+ {
+ static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
+ };
+
+ class Buffer
+ {
+ public:
+ using CType = VkBuffer;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eBuffer;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eBuffer;
+
+ public:
+ VULKAN_HPP_CONSTEXPR Buffer() = default;
+ VULKAN_HPP_CONSTEXPR Buffer( std::nullptr_t ) VULKAN_HPP_NOEXCEPT {}
+ VULKAN_HPP_TYPESAFE_EXPLICIT Buffer( VkBuffer buffer ) VULKAN_HPP_NOEXCEPT : m_buffer( buffer ) {}
+
+#if defined( VULKAN_HPP_TYPESAFE_CONVERSION )
+ Buffer & operator=( VkBuffer buffer ) VULKAN_HPP_NOEXCEPT
+ {
+ m_buffer = buffer;
+ return *this;
+ }
+#endif
+
+ Buffer & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
+ {
+ m_buffer = {};
+ return *this;
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( Buffer const & ) const = default;
+#else
+ bool operator==( Buffer const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_buffer == rhs.m_buffer;
+ }
+
+ bool operator!=( Buffer const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_buffer != rhs.m_buffer;
+ }
+
+ bool operator<( Buffer const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_buffer < rhs.m_buffer;
+ }
+#endif
+
+ VULKAN_HPP_TYPESAFE_EXPLICIT operator VkBuffer() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_buffer;
+ }
+
+ explicit operator bool() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_buffer != VK_NULL_HANDLE;
+ }
+
+ bool operator!() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_buffer == VK_NULL_HANDLE;
+ }
+
+ private:
+ VkBuffer m_buffer = {};
+ };
+ static_assert( sizeof( VULKAN_HPP_NAMESPACE::Buffer ) == sizeof( VkBuffer ),
+ "handle and wrapper have different size!" );
+
+ template <>
+ struct VULKAN_HPP_DEPRECATED( "vk::cpp_type is deprecated. Use vk::CppType instead." ) cpp_type<ObjectType::eBuffer>
+ {
+ using type = VULKAN_HPP_NAMESPACE::Buffer;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eBuffer>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::Buffer;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT,
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eBuffer>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::Buffer;
+ };
+
+ template <>
+ struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::Buffer>
+ {
+ static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
+ };
+
+ class PipelineLayout
+ {
+ public:
+ using CType = VkPipelineLayout;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::ePipelineLayout;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::ePipelineLayout;
+
+ public:
+ VULKAN_HPP_CONSTEXPR PipelineLayout() = default;
+ VULKAN_HPP_CONSTEXPR PipelineLayout( std::nullptr_t ) VULKAN_HPP_NOEXCEPT {}
+ VULKAN_HPP_TYPESAFE_EXPLICIT PipelineLayout( VkPipelineLayout pipelineLayout ) VULKAN_HPP_NOEXCEPT
+ : m_pipelineLayout( pipelineLayout )
+ {}
+
+#if defined( VULKAN_HPP_TYPESAFE_CONVERSION )
+ PipelineLayout & operator=( VkPipelineLayout pipelineLayout ) VULKAN_HPP_NOEXCEPT
+ {
+ m_pipelineLayout = pipelineLayout;
+ return *this;
+ }
+#endif
+
+ PipelineLayout & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
+ {
+ m_pipelineLayout = {};
+ return *this;
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PipelineLayout const & ) const = default;
+#else
+ bool operator==( PipelineLayout const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_pipelineLayout == rhs.m_pipelineLayout;
+ }
+
+ bool operator!=( PipelineLayout const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_pipelineLayout != rhs.m_pipelineLayout;
+ }
+
+ bool operator<( PipelineLayout const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_pipelineLayout < rhs.m_pipelineLayout;
+ }
+#endif
+
+ VULKAN_HPP_TYPESAFE_EXPLICIT operator VkPipelineLayout() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_pipelineLayout;
+ }
+
+ explicit operator bool() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_pipelineLayout != VK_NULL_HANDLE;
+ }
+
+ bool operator!() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_pipelineLayout == VK_NULL_HANDLE;
+ }
+
+ private:
+ VkPipelineLayout m_pipelineLayout = {};
+ };
+ static_assert( sizeof( VULKAN_HPP_NAMESPACE::PipelineLayout ) == sizeof( VkPipelineLayout ),
+ "handle and wrapper have different size!" );
+
+ template <>
+ struct VULKAN_HPP_DEPRECATED(
+ "vk::cpp_type is deprecated. Use vk::CppType instead." ) cpp_type<ObjectType::ePipelineLayout>
+ {
+ using type = VULKAN_HPP_NAMESPACE::PipelineLayout;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::ePipelineLayout>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::PipelineLayout;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT,
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::ePipelineLayout>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::PipelineLayout;
+ };
+
+ template <>
+ struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::PipelineLayout>
+ {
+ static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
+ };
+
+ class DescriptorSet
+ {
+ public:
+ using CType = VkDescriptorSet;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eDescriptorSet;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eDescriptorSet;
+
+ public:
+ VULKAN_HPP_CONSTEXPR DescriptorSet() = default;
+ VULKAN_HPP_CONSTEXPR DescriptorSet( std::nullptr_t ) VULKAN_HPP_NOEXCEPT {}
+ VULKAN_HPP_TYPESAFE_EXPLICIT DescriptorSet( VkDescriptorSet descriptorSet ) VULKAN_HPP_NOEXCEPT
+ : m_descriptorSet( descriptorSet )
+ {}
+
+#if defined( VULKAN_HPP_TYPESAFE_CONVERSION )
+ DescriptorSet & operator=( VkDescriptorSet descriptorSet ) VULKAN_HPP_NOEXCEPT
+ {
+ m_descriptorSet = descriptorSet;
+ return *this;
+ }
+#endif
+
+ DescriptorSet & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
+ {
+ m_descriptorSet = {};
+ return *this;
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DescriptorSet const & ) const = default;
+#else
+ bool operator==( DescriptorSet const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_descriptorSet == rhs.m_descriptorSet;
+ }
+
+ bool operator!=( DescriptorSet const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_descriptorSet != rhs.m_descriptorSet;
+ }
+
+ bool operator<( DescriptorSet const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_descriptorSet < rhs.m_descriptorSet;
+ }
+#endif
+
+ VULKAN_HPP_TYPESAFE_EXPLICIT operator VkDescriptorSet() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_descriptorSet;
+ }
+
+ explicit operator bool() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_descriptorSet != VK_NULL_HANDLE;
+ }
+
+ bool operator!() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_descriptorSet == VK_NULL_HANDLE;
+ }
+
+ private:
+ VkDescriptorSet m_descriptorSet = {};
+ };
+ static_assert( sizeof( VULKAN_HPP_NAMESPACE::DescriptorSet ) == sizeof( VkDescriptorSet ),
+ "handle and wrapper have different size!" );
+
+ template <>
+ struct VULKAN_HPP_DEPRECATED(
+ "vk::cpp_type is deprecated. Use vk::CppType instead." ) cpp_type<ObjectType::eDescriptorSet>
+ {
+ using type = VULKAN_HPP_NAMESPACE::DescriptorSet;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eDescriptorSet>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::DescriptorSet;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT,
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eDescriptorSet>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::DescriptorSet;
+ };
+
+ template <>
+ struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::DescriptorSet>
+ {
+ static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
+ };
+
+ class Pipeline
+ {
+ public:
+ using CType = VkPipeline;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::ePipeline;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::ePipeline;
+
+ public:
+ VULKAN_HPP_CONSTEXPR Pipeline() = default;
+ VULKAN_HPP_CONSTEXPR Pipeline( std::nullptr_t ) VULKAN_HPP_NOEXCEPT {}
+ VULKAN_HPP_TYPESAFE_EXPLICIT Pipeline( VkPipeline pipeline ) VULKAN_HPP_NOEXCEPT : m_pipeline( pipeline ) {}
+
+#if defined( VULKAN_HPP_TYPESAFE_CONVERSION )
+ Pipeline & operator=( VkPipeline pipeline ) VULKAN_HPP_NOEXCEPT
+ {
+ m_pipeline = pipeline;
+ return *this;
+ }
+#endif
+
+ Pipeline & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
+ {
+ m_pipeline = {};
+ return *this;
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( Pipeline const & ) const = default;
+#else
+ bool operator==( Pipeline const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_pipeline == rhs.m_pipeline;
+ }
+
+ bool operator!=( Pipeline const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_pipeline != rhs.m_pipeline;
+ }
+
+ bool operator<( Pipeline const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_pipeline < rhs.m_pipeline;
+ }
+#endif
+
+ VULKAN_HPP_TYPESAFE_EXPLICIT operator VkPipeline() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_pipeline;
+ }
+
+ explicit operator bool() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_pipeline != VK_NULL_HANDLE;
+ }
+
+ bool operator!() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_pipeline == VK_NULL_HANDLE;
+ }
+
+ private:
+ VkPipeline m_pipeline = {};
+ };
+ static_assert( sizeof( VULKAN_HPP_NAMESPACE::Pipeline ) == sizeof( VkPipeline ),
+ "handle and wrapper have different size!" );
+
+ template <>
+ struct VULKAN_HPP_DEPRECATED( "vk::cpp_type is deprecated. Use vk::CppType instead." ) cpp_type<ObjectType::ePipeline>
+ {
+ using type = VULKAN_HPP_NAMESPACE::Pipeline;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::ePipeline>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::Pipeline;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT,
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::ePipeline>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::Pipeline;
+ };
+
+ template <>
+ struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::Pipeline>
+ {
+ static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
+ };
+
+ class ImageView
+ {
+ public:
+ using CType = VkImageView;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eImageView;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eImageView;
+
+ public:
+ VULKAN_HPP_CONSTEXPR ImageView() = default;
+ VULKAN_HPP_CONSTEXPR ImageView( std::nullptr_t ) VULKAN_HPP_NOEXCEPT {}
+ VULKAN_HPP_TYPESAFE_EXPLICIT ImageView( VkImageView imageView ) VULKAN_HPP_NOEXCEPT : m_imageView( imageView ) {}
+
+#if defined( VULKAN_HPP_TYPESAFE_CONVERSION )
+ ImageView & operator=( VkImageView imageView ) VULKAN_HPP_NOEXCEPT
+ {
+ m_imageView = imageView;
+ return *this;
+ }
+#endif
+
+ ImageView & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
+ {
+ m_imageView = {};
+ return *this;
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ImageView const & ) const = default;
+#else
+ bool operator==( ImageView const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_imageView == rhs.m_imageView;
+ }
+
+ bool operator!=( ImageView const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_imageView != rhs.m_imageView;
+ }
+
+ bool operator<( ImageView const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_imageView < rhs.m_imageView;
+ }
+#endif
+
+ VULKAN_HPP_TYPESAFE_EXPLICIT operator VkImageView() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_imageView;
+ }
+
+ explicit operator bool() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_imageView != VK_NULL_HANDLE;
+ }
+
+ bool operator!() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_imageView == VK_NULL_HANDLE;
+ }
+
+ private:
+ VkImageView m_imageView = {};
+ };
+ static_assert( sizeof( VULKAN_HPP_NAMESPACE::ImageView ) == sizeof( VkImageView ),
+ "handle and wrapper have different size!" );
+
+ template <>
+ struct VULKAN_HPP_DEPRECATED(
+ "vk::cpp_type is deprecated. Use vk::CppType instead." ) cpp_type<ObjectType::eImageView>
+ {
+ using type = VULKAN_HPP_NAMESPACE::ImageView;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eImageView>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::ImageView;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT,
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eImageView>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::ImageView;
+ };
+
+ template <>
+ struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::ImageView>
+ {
+ static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
+ };
+
+ class Image
+ {
+ public:
+ using CType = VkImage;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eImage;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eImage;
+
+ public:
+ VULKAN_HPP_CONSTEXPR Image() = default;
+ VULKAN_HPP_CONSTEXPR Image( std::nullptr_t ) VULKAN_HPP_NOEXCEPT {}
+ VULKAN_HPP_TYPESAFE_EXPLICIT Image( VkImage image ) VULKAN_HPP_NOEXCEPT : m_image( image ) {}
+
+#if defined( VULKAN_HPP_TYPESAFE_CONVERSION )
+ Image & operator=( VkImage image ) VULKAN_HPP_NOEXCEPT
+ {
+ m_image = image;
+ return *this;
+ }
+#endif
+
+ Image & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
+ {
+ m_image = {};
+ return *this;
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( Image const & ) const = default;
+#else
+ bool operator==( Image const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_image == rhs.m_image;
+ }
+
+ bool operator!=( Image const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_image != rhs.m_image;
+ }
+
+ bool operator<( Image const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_image < rhs.m_image;
+ }
+#endif
+
+ VULKAN_HPP_TYPESAFE_EXPLICIT operator VkImage() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_image;
+ }
+
+ explicit operator bool() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_image != VK_NULL_HANDLE;
+ }
+
+ bool operator!() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_image == VK_NULL_HANDLE;
+ }
+
+ private:
+ VkImage m_image = {};
+ };
+ static_assert( sizeof( VULKAN_HPP_NAMESPACE::Image ) == sizeof( VkImage ),
+ "handle and wrapper have different size!" );
+
+ template <>
+ struct VULKAN_HPP_DEPRECATED( "vk::cpp_type is deprecated. Use vk::CppType instead." ) cpp_type<ObjectType::eImage>
+ {
+ using type = VULKAN_HPP_NAMESPACE::Image;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eImage>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::Image;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT, VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eImage>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::Image;
+ };
+
+ template <>
+ struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::Image>
+ {
+ static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
+ };
+
+ class AccelerationStructureNV
+ {
+ public:
+ using CType = VkAccelerationStructureNV;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eAccelerationStructureNV;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eAccelerationStructureNV;
+
+ public:
+ VULKAN_HPP_CONSTEXPR AccelerationStructureNV() = default;
+ VULKAN_HPP_CONSTEXPR AccelerationStructureNV( std::nullptr_t ) VULKAN_HPP_NOEXCEPT {}
+ VULKAN_HPP_TYPESAFE_EXPLICIT
+ AccelerationStructureNV( VkAccelerationStructureNV accelerationStructureNV ) VULKAN_HPP_NOEXCEPT
+ : m_accelerationStructureNV( accelerationStructureNV )
+ {}
+
+#if defined( VULKAN_HPP_TYPESAFE_CONVERSION )
+ AccelerationStructureNV & operator=( VkAccelerationStructureNV accelerationStructureNV ) VULKAN_HPP_NOEXCEPT
+ {
+ m_accelerationStructureNV = accelerationStructureNV;
+ return *this;
+ }
+#endif
+
+ AccelerationStructureNV & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
+ {
+ m_accelerationStructureNV = {};
+ return *this;
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( AccelerationStructureNV const & ) const = default;
+#else
+ bool operator==( AccelerationStructureNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_accelerationStructureNV == rhs.m_accelerationStructureNV;
+ }
+
+ bool operator!=( AccelerationStructureNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_accelerationStructureNV != rhs.m_accelerationStructureNV;
+ }
+
+ bool operator<( AccelerationStructureNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_accelerationStructureNV < rhs.m_accelerationStructureNV;
+ }
+#endif
+
+ VULKAN_HPP_TYPESAFE_EXPLICIT operator VkAccelerationStructureNV() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_accelerationStructureNV;
+ }
+
+ explicit operator bool() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_accelerationStructureNV != VK_NULL_HANDLE;
+ }
+
+ bool operator!() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_accelerationStructureNV == VK_NULL_HANDLE;
+ }
+
+ private:
+ VkAccelerationStructureNV m_accelerationStructureNV = {};
+ };
+ static_assert( sizeof( VULKAN_HPP_NAMESPACE::AccelerationStructureNV ) == sizeof( VkAccelerationStructureNV ),
+ "handle and wrapper have different size!" );
+
+ template <>
+ struct VULKAN_HPP_DEPRECATED(
+ "vk::cpp_type is deprecated. Use vk::CppType instead." ) cpp_type<ObjectType::eAccelerationStructureNV>
+ {
+ using type = VULKAN_HPP_NAMESPACE::AccelerationStructureNV;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eAccelerationStructureNV>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::AccelerationStructureNV;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT,
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eAccelerationStructureNV>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::AccelerationStructureNV;
+ };
+
+ template <>
+ struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::AccelerationStructureNV>
+ {
+ static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
+ };
+
+ class DescriptorUpdateTemplate
+ {
+ public:
+ using CType = VkDescriptorUpdateTemplate;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eDescriptorUpdateTemplate;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eDescriptorUpdateTemplate;
+
+ public:
+ VULKAN_HPP_CONSTEXPR DescriptorUpdateTemplate() = default;
+ VULKAN_HPP_CONSTEXPR DescriptorUpdateTemplate( std::nullptr_t ) VULKAN_HPP_NOEXCEPT {}
+ VULKAN_HPP_TYPESAFE_EXPLICIT
+ DescriptorUpdateTemplate( VkDescriptorUpdateTemplate descriptorUpdateTemplate ) VULKAN_HPP_NOEXCEPT
+ : m_descriptorUpdateTemplate( descriptorUpdateTemplate )
+ {}
+
+#if defined( VULKAN_HPP_TYPESAFE_CONVERSION )
+ DescriptorUpdateTemplate & operator=( VkDescriptorUpdateTemplate descriptorUpdateTemplate ) VULKAN_HPP_NOEXCEPT
+ {
+ m_descriptorUpdateTemplate = descriptorUpdateTemplate;
+ return *this;
+ }
+#endif
+
+ DescriptorUpdateTemplate & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
+ {
+ m_descriptorUpdateTemplate = {};
+ return *this;
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DescriptorUpdateTemplate const & ) const = default;
+#else
+ bool operator==( DescriptorUpdateTemplate const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_descriptorUpdateTemplate == rhs.m_descriptorUpdateTemplate;
+ }
+
+ bool operator!=( DescriptorUpdateTemplate const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_descriptorUpdateTemplate != rhs.m_descriptorUpdateTemplate;
+ }
+
+ bool operator<( DescriptorUpdateTemplate const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_descriptorUpdateTemplate < rhs.m_descriptorUpdateTemplate;
+ }
+#endif
+
+ VULKAN_HPP_TYPESAFE_EXPLICIT operator VkDescriptorUpdateTemplate() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_descriptorUpdateTemplate;
+ }
+
+ explicit operator bool() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_descriptorUpdateTemplate != VK_NULL_HANDLE;
+ }
+
+ bool operator!() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_descriptorUpdateTemplate == VK_NULL_HANDLE;
+ }
+
+ private:
+ VkDescriptorUpdateTemplate m_descriptorUpdateTemplate = {};
+ };
+ static_assert( sizeof( VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate ) == sizeof( VkDescriptorUpdateTemplate ),
+ "handle and wrapper have different size!" );
+
+ template <>
+ struct VULKAN_HPP_DEPRECATED(
+ "vk::cpp_type is deprecated. Use vk::CppType instead." ) cpp_type<ObjectType::eDescriptorUpdateTemplate>
+ {
+ using type = VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eDescriptorUpdateTemplate>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT,
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eDescriptorUpdateTemplate>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate;
+ };
+
+ template <>
+ struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate>
+ {
+ static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
+ };
+ using DescriptorUpdateTemplateKHR = DescriptorUpdateTemplate;
+
+ class Event
+ {
+ public:
+ using CType = VkEvent;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eEvent;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eEvent;
+
+ public:
+ VULKAN_HPP_CONSTEXPR Event() = default;
+ VULKAN_HPP_CONSTEXPR Event( std::nullptr_t ) VULKAN_HPP_NOEXCEPT {}
+ VULKAN_HPP_TYPESAFE_EXPLICIT Event( VkEvent event ) VULKAN_HPP_NOEXCEPT : m_event( event ) {}
+
+#if defined( VULKAN_HPP_TYPESAFE_CONVERSION )
+ Event & operator=( VkEvent event ) VULKAN_HPP_NOEXCEPT
+ {
+ m_event = event;
+ return *this;
+ }
+#endif
+
+ Event & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
+ {
+ m_event = {};
+ return *this;
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( Event const & ) const = default;
+#else
+ bool operator==( Event const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_event == rhs.m_event;
+ }
+
+ bool operator!=( Event const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_event != rhs.m_event;
+ }
+
+ bool operator<( Event const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_event < rhs.m_event;
+ }
+#endif
+
+ VULKAN_HPP_TYPESAFE_EXPLICIT operator VkEvent() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_event;
+ }
+
+ explicit operator bool() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_event != VK_NULL_HANDLE;
+ }
+
+ bool operator!() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_event == VK_NULL_HANDLE;
+ }
+
+ private:
+ VkEvent m_event = {};
+ };
+ static_assert( sizeof( VULKAN_HPP_NAMESPACE::Event ) == sizeof( VkEvent ),
+ "handle and wrapper have different size!" );
+
+ template <>
+ struct VULKAN_HPP_DEPRECATED( "vk::cpp_type is deprecated. Use vk::CppType instead." ) cpp_type<ObjectType::eEvent>
+ {
+ using type = VULKAN_HPP_NAMESPACE::Event;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eEvent>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::Event;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT, VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eEvent>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::Event;
+ };
+
+ template <>
+ struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::Event>
+ {
+ static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
+ };
+
+ class AccelerationStructureKHR
+ {
+ public:
+ using CType = VkAccelerationStructureKHR;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eAccelerationStructureKHR;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eAccelerationStructureKHR;
+
+ public:
+ VULKAN_HPP_CONSTEXPR AccelerationStructureKHR() = default;
+ VULKAN_HPP_CONSTEXPR AccelerationStructureKHR( std::nullptr_t ) VULKAN_HPP_NOEXCEPT {}
+ VULKAN_HPP_TYPESAFE_EXPLICIT
+ AccelerationStructureKHR( VkAccelerationStructureKHR accelerationStructureKHR ) VULKAN_HPP_NOEXCEPT
+ : m_accelerationStructureKHR( accelerationStructureKHR )
+ {}
+
+#if defined( VULKAN_HPP_TYPESAFE_CONVERSION )
+ AccelerationStructureKHR & operator=( VkAccelerationStructureKHR accelerationStructureKHR ) VULKAN_HPP_NOEXCEPT
+ {
+ m_accelerationStructureKHR = accelerationStructureKHR;
+ return *this;
+ }
+#endif
+
+ AccelerationStructureKHR & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
+ {
+ m_accelerationStructureKHR = {};
+ return *this;
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( AccelerationStructureKHR const & ) const = default;
+#else
+ bool operator==( AccelerationStructureKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_accelerationStructureKHR == rhs.m_accelerationStructureKHR;
+ }
+
+ bool operator!=( AccelerationStructureKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_accelerationStructureKHR != rhs.m_accelerationStructureKHR;
+ }
+
+ bool operator<( AccelerationStructureKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_accelerationStructureKHR < rhs.m_accelerationStructureKHR;
+ }
+#endif
+
+ VULKAN_HPP_TYPESAFE_EXPLICIT operator VkAccelerationStructureKHR() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_accelerationStructureKHR;
+ }
+
+ explicit operator bool() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_accelerationStructureKHR != VK_NULL_HANDLE;
+ }
+
+ bool operator!() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_accelerationStructureKHR == VK_NULL_HANDLE;
+ }
+
+ private:
+ VkAccelerationStructureKHR m_accelerationStructureKHR = {};
+ };
+ static_assert( sizeof( VULKAN_HPP_NAMESPACE::AccelerationStructureKHR ) == sizeof( VkAccelerationStructureKHR ),
+ "handle and wrapper have different size!" );
+
+ template <>
+ struct VULKAN_HPP_DEPRECATED(
+ "vk::cpp_type is deprecated. Use vk::CppType instead." ) cpp_type<ObjectType::eAccelerationStructureKHR>
+ {
+ using type = VULKAN_HPP_NAMESPACE::AccelerationStructureKHR;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eAccelerationStructureKHR>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::AccelerationStructureKHR;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT,
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eAccelerationStructureKHR>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::AccelerationStructureKHR;
+ };
+
+ template <>
+ struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::AccelerationStructureKHR>
+ {
+ static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
+ };
+
+ class CommandBuffer
+ {
+ public:
+ using CType = VkCommandBuffer;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eCommandBuffer;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eCommandBuffer;
+
+ public:
+ VULKAN_HPP_CONSTEXPR CommandBuffer() = default;
+ VULKAN_HPP_CONSTEXPR CommandBuffer( std::nullptr_t ) VULKAN_HPP_NOEXCEPT {}
+ VULKAN_HPP_TYPESAFE_EXPLICIT CommandBuffer( VkCommandBuffer commandBuffer ) VULKAN_HPP_NOEXCEPT
+ : m_commandBuffer( commandBuffer )
+ {}
+
+#if defined( VULKAN_HPP_TYPESAFE_CONVERSION )
+ CommandBuffer & operator=( VkCommandBuffer commandBuffer ) VULKAN_HPP_NOEXCEPT
+ {
+ m_commandBuffer = commandBuffer;
+ return *this;
+ }
+#endif
+
+ CommandBuffer & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
+ {
+ m_commandBuffer = {};
+ return *this;
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( CommandBuffer const & ) const = default;
+#else
+ bool operator==( CommandBuffer const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_commandBuffer == rhs.m_commandBuffer;
+ }
+
+ bool operator!=( CommandBuffer const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_commandBuffer != rhs.m_commandBuffer;
+ }
+
+ bool operator<( CommandBuffer const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_commandBuffer < rhs.m_commandBuffer;
+ }
+#endif
+
+ //=== VK_VERSION_1_0 ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ begin( const VULKAN_HPP_NAMESPACE::CommandBufferBeginInfo * pBeginInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type
+ begin( const CommandBufferBeginInfo & beginInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ end( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#else
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type
+ end( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ reset( VULKAN_HPP_NAMESPACE::CommandBufferResetFlags flags,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#else
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ typename ResultValueType<void>::type
+ reset( VULKAN_HPP_NAMESPACE::CommandBufferResetFlags flags VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void bindPipeline( VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint,
+ VULKAN_HPP_NAMESPACE::Pipeline pipeline,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void setViewport( uint32_t firstViewport,
+ uint32_t viewportCount,
+ const VULKAN_HPP_NAMESPACE::Viewport * pViewports,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void setViewport( uint32_t firstViewport,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::Viewport> const & viewports,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void setScissor( uint32_t firstScissor,
+ uint32_t scissorCount,
+ const VULKAN_HPP_NAMESPACE::Rect2D * pScissors,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void setScissor( uint32_t firstScissor,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::Rect2D> const & scissors,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void setLineWidth( float lineWidth,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void setDepthBias( float depthBiasConstantFactor,
+ float depthBiasClamp,
+ float depthBiasSlopeFactor,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void setBlendConstants( const float blendConstants[4],
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void setDepthBounds( float minDepthBounds,
+ float maxDepthBounds,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void setStencilCompareMask( VULKAN_HPP_NAMESPACE::StencilFaceFlags faceMask,
+ uint32_t compareMask,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void setStencilWriteMask( VULKAN_HPP_NAMESPACE::StencilFaceFlags faceMask,
+ uint32_t writeMask,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void setStencilReference( VULKAN_HPP_NAMESPACE::StencilFaceFlags faceMask,
+ uint32_t reference,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void bindDescriptorSets( VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint,
+ VULKAN_HPP_NAMESPACE::PipelineLayout layout,
+ uint32_t firstSet,
+ uint32_t descriptorSetCount,
+ const VULKAN_HPP_NAMESPACE::DescriptorSet * pDescriptorSets,
+ uint32_t dynamicOffsetCount,
+ const uint32_t * pDynamicOffsets,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void bindDescriptorSets( VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint,
+ VULKAN_HPP_NAMESPACE::PipelineLayout layout,
+ uint32_t firstSet,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::DescriptorSet> const & descriptorSets,
+ ArrayProxy<const uint32_t> const & dynamicOffsets,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void bindIndexBuffer( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize offset,
+ VULKAN_HPP_NAMESPACE::IndexType indexType,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void bindVertexBuffers( uint32_t firstBinding,
+ uint32_t bindingCount,
+ const VULKAN_HPP_NAMESPACE::Buffer * pBuffers,
+ const VULKAN_HPP_NAMESPACE::DeviceSize * pOffsets,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void bindVertexBuffers( uint32_t firstBinding,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::Buffer> const & buffers,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::DeviceSize> const & offsets,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void draw( uint32_t vertexCount,
+ uint32_t instanceCount,
+ uint32_t firstVertex,
+ uint32_t firstInstance,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void drawIndexed( uint32_t indexCount,
+ uint32_t instanceCount,
+ uint32_t firstIndex,
+ int32_t vertexOffset,
+ uint32_t firstInstance,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void drawIndirect( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize offset,
+ uint32_t drawCount,
+ uint32_t stride,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void drawIndexedIndirect( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize offset,
+ uint32_t drawCount,
+ uint32_t stride,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void dispatch( uint32_t groupCountX,
+ uint32_t groupCountY,
+ uint32_t groupCountZ,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void dispatchIndirect( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize offset,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void copyBuffer( VULKAN_HPP_NAMESPACE::Buffer srcBuffer,
+ VULKAN_HPP_NAMESPACE::Buffer dstBuffer,
+ uint32_t regionCount,
+ const VULKAN_HPP_NAMESPACE::BufferCopy * pRegions,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void copyBuffer( VULKAN_HPP_NAMESPACE::Buffer srcBuffer,
+ VULKAN_HPP_NAMESPACE::Buffer dstBuffer,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::BufferCopy> const & regions,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void copyImage( VULKAN_HPP_NAMESPACE::Image srcImage,
+ VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout,
+ VULKAN_HPP_NAMESPACE::Image dstImage,
+ VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout,
+ uint32_t regionCount,
+ const VULKAN_HPP_NAMESPACE::ImageCopy * pRegions,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void copyImage( VULKAN_HPP_NAMESPACE::Image srcImage,
+ VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout,
+ VULKAN_HPP_NAMESPACE::Image dstImage,
+ VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::ImageCopy> const & regions,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void blitImage( VULKAN_HPP_NAMESPACE::Image srcImage,
+ VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout,
+ VULKAN_HPP_NAMESPACE::Image dstImage,
+ VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout,
+ uint32_t regionCount,
+ const VULKAN_HPP_NAMESPACE::ImageBlit * pRegions,
+ VULKAN_HPP_NAMESPACE::Filter filter,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void blitImage( VULKAN_HPP_NAMESPACE::Image srcImage,
+ VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout,
+ VULKAN_HPP_NAMESPACE::Image dstImage,
+ VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::ImageBlit> const & regions,
+ VULKAN_HPP_NAMESPACE::Filter filter,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void copyBufferToImage( VULKAN_HPP_NAMESPACE::Buffer srcBuffer,
+ VULKAN_HPP_NAMESPACE::Image dstImage,
+ VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout,
+ uint32_t regionCount,
+ const VULKAN_HPP_NAMESPACE::BufferImageCopy * pRegions,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void copyBufferToImage( VULKAN_HPP_NAMESPACE::Buffer srcBuffer,
+ VULKAN_HPP_NAMESPACE::Image dstImage,
+ VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::BufferImageCopy> const & regions,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void copyImageToBuffer( VULKAN_HPP_NAMESPACE::Image srcImage,
+ VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout,
+ VULKAN_HPP_NAMESPACE::Buffer dstBuffer,
+ uint32_t regionCount,
+ const VULKAN_HPP_NAMESPACE::BufferImageCopy * pRegions,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void copyImageToBuffer( VULKAN_HPP_NAMESPACE::Image srcImage,
+ VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout,
+ VULKAN_HPP_NAMESPACE::Buffer dstBuffer,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::BufferImageCopy> const & regions,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void updateBuffer( VULKAN_HPP_NAMESPACE::Buffer dstBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize dstOffset,
+ VULKAN_HPP_NAMESPACE::DeviceSize dataSize,
+ const void * pData,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename T, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void updateBuffer( VULKAN_HPP_NAMESPACE::Buffer dstBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize dstOffset,
+ ArrayProxy<const T> const & data,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void fillBuffer( VULKAN_HPP_NAMESPACE::Buffer dstBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize dstOffset,
+ VULKAN_HPP_NAMESPACE::DeviceSize size,
+ uint32_t data,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void clearColorImage( VULKAN_HPP_NAMESPACE::Image image,
+ VULKAN_HPP_NAMESPACE::ImageLayout imageLayout,
+ const VULKAN_HPP_NAMESPACE::ClearColorValue * pColor,
+ uint32_t rangeCount,
+ const VULKAN_HPP_NAMESPACE::ImageSubresourceRange * pRanges,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void clearColorImage( VULKAN_HPP_NAMESPACE::Image image,
+ VULKAN_HPP_NAMESPACE::ImageLayout imageLayout,
+ const ClearColorValue & color,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::ImageSubresourceRange> const & ranges,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void
+ clearDepthStencilImage( VULKAN_HPP_NAMESPACE::Image image,
+ VULKAN_HPP_NAMESPACE::ImageLayout imageLayout,
+ const VULKAN_HPP_NAMESPACE::ClearDepthStencilValue * pDepthStencil,
+ uint32_t rangeCount,
+ const VULKAN_HPP_NAMESPACE::ImageSubresourceRange * pRanges,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void
+ clearDepthStencilImage( VULKAN_HPP_NAMESPACE::Image image,
+ VULKAN_HPP_NAMESPACE::ImageLayout imageLayout,
+ const ClearDepthStencilValue & depthStencil,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::ImageSubresourceRange> const & ranges,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void clearAttachments( uint32_t attachmentCount,
+ const VULKAN_HPP_NAMESPACE::ClearAttachment * pAttachments,
+ uint32_t rectCount,
+ const VULKAN_HPP_NAMESPACE::ClearRect * pRects,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void clearAttachments( ArrayProxy<const VULKAN_HPP_NAMESPACE::ClearAttachment> const & attachments,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::ClearRect> const & rects,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void resolveImage( VULKAN_HPP_NAMESPACE::Image srcImage,
+ VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout,
+ VULKAN_HPP_NAMESPACE::Image dstImage,
+ VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout,
+ uint32_t regionCount,
+ const VULKAN_HPP_NAMESPACE::ImageResolve * pRegions,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void resolveImage( VULKAN_HPP_NAMESPACE::Image srcImage,
+ VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout,
+ VULKAN_HPP_NAMESPACE::Image dstImage,
+ VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::ImageResolve> const & regions,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void setEvent( VULKAN_HPP_NAMESPACE::Event event,
+ VULKAN_HPP_NAMESPACE::PipelineStageFlags stageMask,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void resetEvent( VULKAN_HPP_NAMESPACE::Event event,
+ VULKAN_HPP_NAMESPACE::PipelineStageFlags stageMask,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void waitEvents( uint32_t eventCount,
+ const VULKAN_HPP_NAMESPACE::Event * pEvents,
+ VULKAN_HPP_NAMESPACE::PipelineStageFlags srcStageMask,
+ VULKAN_HPP_NAMESPACE::PipelineStageFlags dstStageMask,
+ uint32_t memoryBarrierCount,
+ const VULKAN_HPP_NAMESPACE::MemoryBarrier * pMemoryBarriers,
+ uint32_t bufferMemoryBarrierCount,
+ const VULKAN_HPP_NAMESPACE::BufferMemoryBarrier * pBufferMemoryBarriers,
+ uint32_t imageMemoryBarrierCount,
+ const VULKAN_HPP_NAMESPACE::ImageMemoryBarrier * pImageMemoryBarriers,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void waitEvents( ArrayProxy<const VULKAN_HPP_NAMESPACE::Event> const & events,
+ VULKAN_HPP_NAMESPACE::PipelineStageFlags srcStageMask,
+ VULKAN_HPP_NAMESPACE::PipelineStageFlags dstStageMask,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::MemoryBarrier> const & memoryBarriers,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::BufferMemoryBarrier> const & bufferMemoryBarriers,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::ImageMemoryBarrier> const & imageMemoryBarriers,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void pipelineBarrier( VULKAN_HPP_NAMESPACE::PipelineStageFlags srcStageMask,
+ VULKAN_HPP_NAMESPACE::PipelineStageFlags dstStageMask,
+ VULKAN_HPP_NAMESPACE::DependencyFlags dependencyFlags,
+ uint32_t memoryBarrierCount,
+ const VULKAN_HPP_NAMESPACE::MemoryBarrier * pMemoryBarriers,
+ uint32_t bufferMemoryBarrierCount,
+ const VULKAN_HPP_NAMESPACE::BufferMemoryBarrier * pBufferMemoryBarriers,
+ uint32_t imageMemoryBarrierCount,
+ const VULKAN_HPP_NAMESPACE::ImageMemoryBarrier * pImageMemoryBarriers,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void pipelineBarrier( VULKAN_HPP_NAMESPACE::PipelineStageFlags srcStageMask,
+ VULKAN_HPP_NAMESPACE::PipelineStageFlags dstStageMask,
+ VULKAN_HPP_NAMESPACE::DependencyFlags dependencyFlags,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::MemoryBarrier> const & memoryBarriers,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::BufferMemoryBarrier> const & bufferMemoryBarriers,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::ImageMemoryBarrier> const & imageMemoryBarriers,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void beginQuery( VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ uint32_t query,
+ VULKAN_HPP_NAMESPACE::QueryControlFlags flags,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void endQuery( VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ uint32_t query,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void resetQueryPool( VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ uint32_t firstQuery,
+ uint32_t queryCount,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void writeTimestamp( VULKAN_HPP_NAMESPACE::PipelineStageFlagBits pipelineStage,
+ VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ uint32_t query,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void copyQueryPoolResults( VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ uint32_t firstQuery,
+ uint32_t queryCount,
+ VULKAN_HPP_NAMESPACE::Buffer dstBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize dstOffset,
+ VULKAN_HPP_NAMESPACE::DeviceSize stride,
+ VULKAN_HPP_NAMESPACE::QueryResultFlags flags,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void pushConstants( VULKAN_HPP_NAMESPACE::PipelineLayout layout,
+ VULKAN_HPP_NAMESPACE::ShaderStageFlags stageFlags,
+ uint32_t offset,
+ uint32_t size,
+ const void * pValues,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename T, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void pushConstants( VULKAN_HPP_NAMESPACE::PipelineLayout layout,
+ VULKAN_HPP_NAMESPACE::ShaderStageFlags stageFlags,
+ uint32_t offset,
+ ArrayProxy<const T> const & values,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void beginRenderPass( const VULKAN_HPP_NAMESPACE::RenderPassBeginInfo * pRenderPassBegin,
+ VULKAN_HPP_NAMESPACE::SubpassContents contents,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void beginRenderPass( const RenderPassBeginInfo & renderPassBegin,
+ VULKAN_HPP_NAMESPACE::SubpassContents contents,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void nextSubpass( VULKAN_HPP_NAMESPACE::SubpassContents contents,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void endRenderPass( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void executeCommands( uint32_t commandBufferCount,
+ const VULKAN_HPP_NAMESPACE::CommandBuffer * pCommandBuffers,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void executeCommands( ArrayProxy<const VULKAN_HPP_NAMESPACE::CommandBuffer> const & commandBuffers,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_VERSION_1_1 ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void setDeviceMask( uint32_t deviceMask,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void dispatchBase( uint32_t baseGroupX,
+ uint32_t baseGroupY,
+ uint32_t baseGroupZ,
+ uint32_t groupCountX,
+ uint32_t groupCountY,
+ uint32_t groupCountZ,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_VERSION_1_2 ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void drawIndirectCount( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize offset,
+ VULKAN_HPP_NAMESPACE::Buffer countBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize countBufferOffset,
+ uint32_t maxDrawCount,
+ uint32_t stride,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void
+ drawIndexedIndirectCount( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize offset,
+ VULKAN_HPP_NAMESPACE::Buffer countBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize countBufferOffset,
+ uint32_t maxDrawCount,
+ uint32_t stride,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void beginRenderPass2( const VULKAN_HPP_NAMESPACE::RenderPassBeginInfo * pRenderPassBegin,
+ const VULKAN_HPP_NAMESPACE::SubpassBeginInfo * pSubpassBeginInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void beginRenderPass2( const RenderPassBeginInfo & renderPassBegin,
+ const SubpassBeginInfo & subpassBeginInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void nextSubpass2( const VULKAN_HPP_NAMESPACE::SubpassBeginInfo * pSubpassBeginInfo,
+ const VULKAN_HPP_NAMESPACE::SubpassEndInfo * pSubpassEndInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void nextSubpass2( const SubpassBeginInfo & subpassBeginInfo,
+ const SubpassEndInfo & subpassEndInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void endRenderPass2( const VULKAN_HPP_NAMESPACE::SubpassEndInfo * pSubpassEndInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void endRenderPass2( const SubpassEndInfo & subpassEndInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_EXT_debug_marker ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void debugMarkerBeginEXT( const VULKAN_HPP_NAMESPACE::DebugMarkerMarkerInfoEXT * pMarkerInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void debugMarkerBeginEXT( const DebugMarkerMarkerInfoEXT & markerInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void debugMarkerEndEXT( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void debugMarkerInsertEXT( const VULKAN_HPP_NAMESPACE::DebugMarkerMarkerInfoEXT * pMarkerInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void debugMarkerInsertEXT( const DebugMarkerMarkerInfoEXT & markerInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ //=== VK_KHR_video_queue ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void beginVideoCodingKHR( const VULKAN_HPP_NAMESPACE::VideoBeginCodingInfoKHR * pBeginInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void beginVideoCodingKHR( const VideoBeginCodingInfoKHR & beginInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void endVideoCodingKHR( const VULKAN_HPP_NAMESPACE::VideoEndCodingInfoKHR * pEndCodingInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void endVideoCodingKHR( const VideoEndCodingInfoKHR & endCodingInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void controlVideoCodingKHR( const VULKAN_HPP_NAMESPACE::VideoCodingControlInfoKHR * pCodingControlInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void controlVideoCodingKHR( const VideoCodingControlInfoKHR & codingControlInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ //=== VK_KHR_video_decode_queue ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void decodeVideoKHR( const VULKAN_HPP_NAMESPACE::VideoDecodeInfoKHR * pFrameInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void decodeVideoKHR( const VideoDecodeInfoKHR & frameInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+ //=== VK_EXT_transform_feedback ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void bindTransformFeedbackBuffersEXT( uint32_t firstBinding,
+ uint32_t bindingCount,
+ const VULKAN_HPP_NAMESPACE::Buffer * pBuffers,
+ const VULKAN_HPP_NAMESPACE::DeviceSize * pOffsets,
+ const VULKAN_HPP_NAMESPACE::DeviceSize * pSizes,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void bindTransformFeedbackBuffersEXT(
+ uint32_t firstBinding,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::Buffer> const & buffers,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::DeviceSize> const & offsets,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::DeviceSize> const & sizes VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void beginTransformFeedbackEXT( uint32_t firstCounterBuffer,
+ uint32_t counterBufferCount,
+ const VULKAN_HPP_NAMESPACE::Buffer * pCounterBuffers,
+ const VULKAN_HPP_NAMESPACE::DeviceSize * pCounterBufferOffsets,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void beginTransformFeedbackEXT( uint32_t firstCounterBuffer,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::Buffer> const & counterBuffers,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::DeviceSize> const & counterBufferOffsets
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void
+ endTransformFeedbackEXT( uint32_t firstCounterBuffer,
+ uint32_t counterBufferCount,
+ const VULKAN_HPP_NAMESPACE::Buffer * pCounterBuffers,
+ const VULKAN_HPP_NAMESPACE::DeviceSize * pCounterBufferOffsets,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void endTransformFeedbackEXT( uint32_t firstCounterBuffer,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::Buffer> const & counterBuffers,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::DeviceSize> const & counterBufferOffsets
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void beginQueryIndexedEXT( VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ uint32_t query,
+ VULKAN_HPP_NAMESPACE::QueryControlFlags flags,
+ uint32_t index,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void endQueryIndexedEXT( VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ uint32_t query,
+ uint32_t index,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void
+ drawIndirectByteCountEXT( uint32_t instanceCount,
+ uint32_t firstInstance,
+ VULKAN_HPP_NAMESPACE::Buffer counterBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize counterBufferOffset,
+ uint32_t counterOffset,
+ uint32_t vertexStride,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_NVX_binary_import ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void cuLaunchKernelNVX( const VULKAN_HPP_NAMESPACE::CuLaunchInfoNVX * pLaunchInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void cuLaunchKernelNVX( const CuLaunchInfoNVX & launchInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_AMD_draw_indirect_count ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void drawIndirectCountAMD( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize offset,
+ VULKAN_HPP_NAMESPACE::Buffer countBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize countBufferOffset,
+ uint32_t maxDrawCount,
+ uint32_t stride,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void drawIndexedIndirectCountAMD( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize offset,
+ VULKAN_HPP_NAMESPACE::Buffer countBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize countBufferOffset,
+ uint32_t maxDrawCount,
+ uint32_t stride,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_KHR_device_group ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void setDeviceMaskKHR( uint32_t deviceMask,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void dispatchBaseKHR( uint32_t baseGroupX,
+ uint32_t baseGroupY,
+ uint32_t baseGroupZ,
+ uint32_t groupCountX,
+ uint32_t groupCountY,
+ uint32_t groupCountZ,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_KHR_push_descriptor ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void pushDescriptorSetKHR( VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint,
+ VULKAN_HPP_NAMESPACE::PipelineLayout layout,
+ uint32_t set,
+ uint32_t descriptorWriteCount,
+ const VULKAN_HPP_NAMESPACE::WriteDescriptorSet * pDescriptorWrites,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void pushDescriptorSetKHR( VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint,
+ VULKAN_HPP_NAMESPACE::PipelineLayout layout,
+ uint32_t set,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::WriteDescriptorSet> const & descriptorWrites,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void pushDescriptorSetWithTemplateKHR( VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate descriptorUpdateTemplate,
+ VULKAN_HPP_NAMESPACE::PipelineLayout layout,
+ uint32_t set,
+ const void * pData,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_EXT_conditional_rendering ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void beginConditionalRenderingEXT(
+ const VULKAN_HPP_NAMESPACE::ConditionalRenderingBeginInfoEXT * pConditionalRenderingBegin,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void beginConditionalRenderingEXT( const ConditionalRenderingBeginInfoEXT & conditionalRenderingBegin,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void endConditionalRenderingEXT( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_NV_clip_space_w_scaling ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void setViewportWScalingNV( uint32_t firstViewport,
+ uint32_t viewportCount,
+ const VULKAN_HPP_NAMESPACE::ViewportWScalingNV * pViewportWScalings,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void setViewportWScalingNV( uint32_t firstViewport,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::ViewportWScalingNV> const & viewportWScalings,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_EXT_discard_rectangles ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void
+ setDiscardRectangleEXT( uint32_t firstDiscardRectangle,
+ uint32_t discardRectangleCount,
+ const VULKAN_HPP_NAMESPACE::Rect2D * pDiscardRectangles,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void
+ setDiscardRectangleEXT( uint32_t firstDiscardRectangle,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::Rect2D> const & discardRectangles,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_KHR_create_renderpass2 ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void beginRenderPass2KHR( const VULKAN_HPP_NAMESPACE::RenderPassBeginInfo * pRenderPassBegin,
+ const VULKAN_HPP_NAMESPACE::SubpassBeginInfo * pSubpassBeginInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void beginRenderPass2KHR( const RenderPassBeginInfo & renderPassBegin,
+ const SubpassBeginInfo & subpassBeginInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void nextSubpass2KHR( const VULKAN_HPP_NAMESPACE::SubpassBeginInfo * pSubpassBeginInfo,
+ const VULKAN_HPP_NAMESPACE::SubpassEndInfo * pSubpassEndInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void nextSubpass2KHR( const SubpassBeginInfo & subpassBeginInfo,
+ const SubpassEndInfo & subpassEndInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void endRenderPass2KHR( const VULKAN_HPP_NAMESPACE::SubpassEndInfo * pSubpassEndInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void endRenderPass2KHR( const SubpassEndInfo & subpassEndInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_EXT_debug_utils ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void
+ beginDebugUtilsLabelEXT( const VULKAN_HPP_NAMESPACE::DebugUtilsLabelEXT * pLabelInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void
+ beginDebugUtilsLabelEXT( const DebugUtilsLabelEXT & labelInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void endDebugUtilsLabelEXT( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void
+ insertDebugUtilsLabelEXT( const VULKAN_HPP_NAMESPACE::DebugUtilsLabelEXT * pLabelInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void
+ insertDebugUtilsLabelEXT( const DebugUtilsLabelEXT & labelInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_EXT_sample_locations ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void setSampleLocationsEXT( const VULKAN_HPP_NAMESPACE::SampleLocationsInfoEXT * pSampleLocationsInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void setSampleLocationsEXT( const SampleLocationsInfoEXT & sampleLocationsInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_KHR_acceleration_structure ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void buildAccelerationStructuresKHR(
+ uint32_t infoCount,
+ const VULKAN_HPP_NAMESPACE::AccelerationStructureBuildGeometryInfoKHR * pInfos,
+ const VULKAN_HPP_NAMESPACE::AccelerationStructureBuildRangeInfoKHR * const * ppBuildRangeInfos,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void buildAccelerationStructuresKHR(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::AccelerationStructureBuildGeometryInfoKHR> const & infos,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::AccelerationStructureBuildRangeInfoKHR * const> const & pBuildRangeInfos,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void buildAccelerationStructuresIndirectKHR(
+ uint32_t infoCount,
+ const VULKAN_HPP_NAMESPACE::AccelerationStructureBuildGeometryInfoKHR * pInfos,
+ const VULKAN_HPP_NAMESPACE::DeviceAddress * pIndirectDeviceAddresses,
+ const uint32_t * pIndirectStrides,
+ const uint32_t * const * ppMaxPrimitiveCounts,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void buildAccelerationStructuresIndirectKHR(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::AccelerationStructureBuildGeometryInfoKHR> const & infos,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::DeviceAddress> const & indirectDeviceAddresses,
+ ArrayProxy<const uint32_t> const & indirectStrides,
+ ArrayProxy<const uint32_t * const> const & pMaxPrimitiveCounts,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void copyAccelerationStructureKHR( const VULKAN_HPP_NAMESPACE::CopyAccelerationStructureInfoKHR * pInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void copyAccelerationStructureKHR( const CopyAccelerationStructureInfoKHR & info,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void copyAccelerationStructureToMemoryKHR(
+ const VULKAN_HPP_NAMESPACE::CopyAccelerationStructureToMemoryInfoKHR * pInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void copyAccelerationStructureToMemoryKHR( const CopyAccelerationStructureToMemoryInfoKHR & info,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void copyMemoryToAccelerationStructureKHR(
+ const VULKAN_HPP_NAMESPACE::CopyMemoryToAccelerationStructureInfoKHR * pInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void copyMemoryToAccelerationStructureKHR( const CopyMemoryToAccelerationStructureInfoKHR & info,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void writeAccelerationStructuresPropertiesKHR(
+ uint32_t accelerationStructureCount,
+ const VULKAN_HPP_NAMESPACE::AccelerationStructureKHR * pAccelerationStructures,
+ VULKAN_HPP_NAMESPACE::QueryType queryType,
+ VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ uint32_t firstQuery,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void writeAccelerationStructuresPropertiesKHR(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::AccelerationStructureKHR> const & accelerationStructures,
+ VULKAN_HPP_NAMESPACE::QueryType queryType,
+ VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ uint32_t firstQuery,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_NV_shading_rate_image ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void
+ bindShadingRateImageNV( VULKAN_HPP_NAMESPACE::ImageView imageView,
+ VULKAN_HPP_NAMESPACE::ImageLayout imageLayout,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void setViewportShadingRatePaletteNV( uint32_t firstViewport,
+ uint32_t viewportCount,
+ const VULKAN_HPP_NAMESPACE::ShadingRatePaletteNV * pShadingRatePalettes,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void setViewportShadingRatePaletteNV(
+ uint32_t firstViewport,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::ShadingRatePaletteNV> const & shadingRatePalettes,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void
+ setCoarseSampleOrderNV( VULKAN_HPP_NAMESPACE::CoarseSampleOrderTypeNV sampleOrderType,
+ uint32_t customSampleOrderCount,
+ const VULKAN_HPP_NAMESPACE::CoarseSampleOrderCustomNV * pCustomSampleOrders,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void setCoarseSampleOrderNV(
+ VULKAN_HPP_NAMESPACE::CoarseSampleOrderTypeNV sampleOrderType,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::CoarseSampleOrderCustomNV> const & customSampleOrders,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_NV_ray_tracing ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void buildAccelerationStructureNV( const VULKAN_HPP_NAMESPACE::AccelerationStructureInfoNV * pInfo,
+ VULKAN_HPP_NAMESPACE::Buffer instanceData,
+ VULKAN_HPP_NAMESPACE::DeviceSize instanceOffset,
+ VULKAN_HPP_NAMESPACE::Bool32 update,
+ VULKAN_HPP_NAMESPACE::AccelerationStructureNV dst,
+ VULKAN_HPP_NAMESPACE::AccelerationStructureNV src,
+ VULKAN_HPP_NAMESPACE::Buffer scratch,
+ VULKAN_HPP_NAMESPACE::DeviceSize scratchOffset,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void buildAccelerationStructureNV( const AccelerationStructureInfoNV & info,
+ VULKAN_HPP_NAMESPACE::Buffer instanceData,
+ VULKAN_HPP_NAMESPACE::DeviceSize instanceOffset,
+ VULKAN_HPP_NAMESPACE::Bool32 update,
+ VULKAN_HPP_NAMESPACE::AccelerationStructureNV dst,
+ VULKAN_HPP_NAMESPACE::AccelerationStructureNV src,
+ VULKAN_HPP_NAMESPACE::Buffer scratch,
+ VULKAN_HPP_NAMESPACE::DeviceSize scratchOffset,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void copyAccelerationStructureNV( VULKAN_HPP_NAMESPACE::AccelerationStructureNV dst,
+ VULKAN_HPP_NAMESPACE::AccelerationStructureNV src,
+ VULKAN_HPP_NAMESPACE::CopyAccelerationStructureModeKHR mode,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void traceRaysNV( VULKAN_HPP_NAMESPACE::Buffer raygenShaderBindingTableBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize raygenShaderBindingOffset,
+ VULKAN_HPP_NAMESPACE::Buffer missShaderBindingTableBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize missShaderBindingOffset,
+ VULKAN_HPP_NAMESPACE::DeviceSize missShaderBindingStride,
+ VULKAN_HPP_NAMESPACE::Buffer hitShaderBindingTableBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize hitShaderBindingOffset,
+ VULKAN_HPP_NAMESPACE::DeviceSize hitShaderBindingStride,
+ VULKAN_HPP_NAMESPACE::Buffer callableShaderBindingTableBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize callableShaderBindingOffset,
+ VULKAN_HPP_NAMESPACE::DeviceSize callableShaderBindingStride,
+ uint32_t width,
+ uint32_t height,
+ uint32_t depth,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void writeAccelerationStructuresPropertiesNV(
+ uint32_t accelerationStructureCount,
+ const VULKAN_HPP_NAMESPACE::AccelerationStructureNV * pAccelerationStructures,
+ VULKAN_HPP_NAMESPACE::QueryType queryType,
+ VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ uint32_t firstQuery,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void writeAccelerationStructuresPropertiesNV(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::AccelerationStructureNV> const & accelerationStructures,
+ VULKAN_HPP_NAMESPACE::QueryType queryType,
+ VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ uint32_t firstQuery,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_KHR_draw_indirect_count ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void drawIndirectCountKHR( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize offset,
+ VULKAN_HPP_NAMESPACE::Buffer countBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize countBufferOffset,
+ uint32_t maxDrawCount,
+ uint32_t stride,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void drawIndexedIndirectCountKHR( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize offset,
+ VULKAN_HPP_NAMESPACE::Buffer countBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize countBufferOffset,
+ uint32_t maxDrawCount,
+ uint32_t stride,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_AMD_buffer_marker ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void writeBufferMarkerAMD( VULKAN_HPP_NAMESPACE::PipelineStageFlagBits pipelineStage,
+ VULKAN_HPP_NAMESPACE::Buffer dstBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize dstOffset,
+ uint32_t marker,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_NV_mesh_shader ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void drawMeshTasksNV( uint32_t taskCount,
+ uint32_t firstTask,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void
+ drawMeshTasksIndirectNV( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize offset,
+ uint32_t drawCount,
+ uint32_t stride,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void drawMeshTasksIndirectCountNV( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize offset,
+ VULKAN_HPP_NAMESPACE::Buffer countBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize countBufferOffset,
+ uint32_t maxDrawCount,
+ uint32_t stride,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_NV_scissor_exclusive ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void setExclusiveScissorNV( uint32_t firstExclusiveScissor,
+ uint32_t exclusiveScissorCount,
+ const VULKAN_HPP_NAMESPACE::Rect2D * pExclusiveScissors,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void setExclusiveScissorNV( uint32_t firstExclusiveScissor,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::Rect2D> const & exclusiveScissors,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_NV_device_diagnostic_checkpoints ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void setCheckpointNV( const void * pCheckpointMarker,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_INTEL_performance_query ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result setPerformanceMarkerINTEL(
+ const VULKAN_HPP_NAMESPACE::PerformanceMarkerInfoINTEL * pMarkerInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type
+ setPerformanceMarkerINTEL( const PerformanceMarkerInfoINTEL & markerInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result setPerformanceStreamMarkerINTEL(
+ const VULKAN_HPP_NAMESPACE::PerformanceStreamMarkerInfoINTEL * pMarkerInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type
+ setPerformanceStreamMarkerINTEL( const PerformanceStreamMarkerInfoINTEL & markerInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result setPerformanceOverrideINTEL(
+ const VULKAN_HPP_NAMESPACE::PerformanceOverrideInfoINTEL * pOverrideInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type
+ setPerformanceOverrideINTEL( const PerformanceOverrideInfoINTEL & overrideInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_KHR_fragment_shading_rate ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void setFragmentShadingRateKHR( const VULKAN_HPP_NAMESPACE::Extent2D * pFragmentSize,
+ const VULKAN_HPP_NAMESPACE::FragmentShadingRateCombinerOpKHR combinerOps[2],
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void setFragmentShadingRateKHR( const Extent2D & fragmentSize,
+ const VULKAN_HPP_NAMESPACE::FragmentShadingRateCombinerOpKHR combinerOps[2],
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_EXT_line_rasterization ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void setLineStippleEXT( uint32_t lineStippleFactor,
+ uint16_t lineStipplePattern,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_EXT_extended_dynamic_state ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void setCullModeEXT( VULKAN_HPP_NAMESPACE::CullModeFlags cullMode,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void setFrontFaceEXT( VULKAN_HPP_NAMESPACE::FrontFace frontFace,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void
+ setPrimitiveTopologyEXT( VULKAN_HPP_NAMESPACE::PrimitiveTopology primitiveTopology,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void
+ setViewportWithCountEXT( uint32_t viewportCount,
+ const VULKAN_HPP_NAMESPACE::Viewport * pViewports,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void
+ setViewportWithCountEXT( ArrayProxy<const VULKAN_HPP_NAMESPACE::Viewport> const & viewports,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void
+ setScissorWithCountEXT( uint32_t scissorCount,
+ const VULKAN_HPP_NAMESPACE::Rect2D * pScissors,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void
+ setScissorWithCountEXT( ArrayProxy<const VULKAN_HPP_NAMESPACE::Rect2D> const & scissors,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void bindVertexBuffers2EXT( uint32_t firstBinding,
+ uint32_t bindingCount,
+ const VULKAN_HPP_NAMESPACE::Buffer * pBuffers,
+ const VULKAN_HPP_NAMESPACE::DeviceSize * pOffsets,
+ const VULKAN_HPP_NAMESPACE::DeviceSize * pSizes,
+ const VULKAN_HPP_NAMESPACE::DeviceSize * pStrides,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void bindVertexBuffers2EXT(
+ uint32_t firstBinding,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::Buffer> const & buffers,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::DeviceSize> const & offsets,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::DeviceSize> const & sizes VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::DeviceSize> const & strides VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void setDepthTestEnableEXT( VULKAN_HPP_NAMESPACE::Bool32 depthTestEnable,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void
+ setDepthWriteEnableEXT( VULKAN_HPP_NAMESPACE::Bool32 depthWriteEnable,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void setDepthCompareOpEXT( VULKAN_HPP_NAMESPACE::CompareOp depthCompareOp,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void setDepthBoundsTestEnableEXT( VULKAN_HPP_NAMESPACE::Bool32 depthBoundsTestEnable,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void
+ setStencilTestEnableEXT( VULKAN_HPP_NAMESPACE::Bool32 stencilTestEnable,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void setStencilOpEXT( VULKAN_HPP_NAMESPACE::StencilFaceFlags faceMask,
+ VULKAN_HPP_NAMESPACE::StencilOp failOp,
+ VULKAN_HPP_NAMESPACE::StencilOp passOp,
+ VULKAN_HPP_NAMESPACE::StencilOp depthFailOp,
+ VULKAN_HPP_NAMESPACE::CompareOp compareOp,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_NV_device_generated_commands ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void preprocessGeneratedCommandsNV( const VULKAN_HPP_NAMESPACE::GeneratedCommandsInfoNV * pGeneratedCommandsInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void preprocessGeneratedCommandsNV( const GeneratedCommandsInfoNV & generatedCommandsInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void executeGeneratedCommandsNV( VULKAN_HPP_NAMESPACE::Bool32 isPreprocessed,
+ const VULKAN_HPP_NAMESPACE::GeneratedCommandsInfoNV * pGeneratedCommandsInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void executeGeneratedCommandsNV( VULKAN_HPP_NAMESPACE::Bool32 isPreprocessed,
+ const GeneratedCommandsInfoNV & generatedCommandsInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void bindPipelineShaderGroupNV( VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint,
+ VULKAN_HPP_NAMESPACE::Pipeline pipeline,
+ uint32_t groupIndex,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ //=== VK_KHR_video_encode_queue ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void encodeVideoKHR( const VULKAN_HPP_NAMESPACE::VideoEncodeInfoKHR * pEncodeInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void encodeVideoKHR( const VideoEncodeInfoKHR & encodeInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+ //=== VK_KHR_synchronization2 ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void setEvent2KHR( VULKAN_HPP_NAMESPACE::Event event,
+ const VULKAN_HPP_NAMESPACE::DependencyInfoKHR * pDependencyInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void setEvent2KHR( VULKAN_HPP_NAMESPACE::Event event,
+ const DependencyInfoKHR & dependencyInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void resetEvent2KHR( VULKAN_HPP_NAMESPACE::Event event,
+ VULKAN_HPP_NAMESPACE::PipelineStageFlags2KHR stageMask,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void waitEvents2KHR( uint32_t eventCount,
+ const VULKAN_HPP_NAMESPACE::Event * pEvents,
+ const VULKAN_HPP_NAMESPACE::DependencyInfoKHR * pDependencyInfos,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void waitEvents2KHR( ArrayProxy<const VULKAN_HPP_NAMESPACE::Event> const & events,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::DependencyInfoKHR> const & dependencyInfos,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void pipelineBarrier2KHR( const VULKAN_HPP_NAMESPACE::DependencyInfoKHR * pDependencyInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void pipelineBarrier2KHR( const DependencyInfoKHR & dependencyInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void writeTimestamp2KHR( VULKAN_HPP_NAMESPACE::PipelineStageFlags2KHR stage,
+ VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ uint32_t query,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void writeBufferMarker2AMD( VULKAN_HPP_NAMESPACE::PipelineStageFlags2KHR stage,
+ VULKAN_HPP_NAMESPACE::Buffer dstBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize dstOffset,
+ uint32_t marker,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_NV_fragment_shading_rate_enums ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void setFragmentShadingRateEnumNV( VULKAN_HPP_NAMESPACE::FragmentShadingRateNV shadingRate,
+ const VULKAN_HPP_NAMESPACE::FragmentShadingRateCombinerOpKHR combinerOps[2],
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_KHR_copy_commands2 ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void copyBuffer2KHR( const VULKAN_HPP_NAMESPACE::CopyBufferInfo2KHR * pCopyBufferInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void copyBuffer2KHR( const CopyBufferInfo2KHR & copyBufferInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void copyImage2KHR( const VULKAN_HPP_NAMESPACE::CopyImageInfo2KHR * pCopyImageInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void copyImage2KHR( const CopyImageInfo2KHR & copyImageInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void copyBufferToImage2KHR( const VULKAN_HPP_NAMESPACE::CopyBufferToImageInfo2KHR * pCopyBufferToImageInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void copyBufferToImage2KHR( const CopyBufferToImageInfo2KHR & copyBufferToImageInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void copyImageToBuffer2KHR( const VULKAN_HPP_NAMESPACE::CopyImageToBufferInfo2KHR * pCopyImageToBufferInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void copyImageToBuffer2KHR( const CopyImageToBufferInfo2KHR & copyImageToBufferInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void blitImage2KHR( const VULKAN_HPP_NAMESPACE::BlitImageInfo2KHR * pBlitImageInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void blitImage2KHR( const BlitImageInfo2KHR & blitImageInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void resolveImage2KHR( const VULKAN_HPP_NAMESPACE::ResolveImageInfo2KHR * pResolveImageInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void resolveImage2KHR( const ResolveImageInfo2KHR & resolveImageInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_KHR_ray_tracing_pipeline ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void traceRaysKHR( const VULKAN_HPP_NAMESPACE::StridedDeviceAddressRegionKHR * pRaygenShaderBindingTable,
+ const VULKAN_HPP_NAMESPACE::StridedDeviceAddressRegionKHR * pMissShaderBindingTable,
+ const VULKAN_HPP_NAMESPACE::StridedDeviceAddressRegionKHR * pHitShaderBindingTable,
+ const VULKAN_HPP_NAMESPACE::StridedDeviceAddressRegionKHR * pCallableShaderBindingTable,
+ uint32_t width,
+ uint32_t height,
+ uint32_t depth,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void traceRaysKHR( const StridedDeviceAddressRegionKHR & raygenShaderBindingTable,
+ const StridedDeviceAddressRegionKHR & missShaderBindingTable,
+ const StridedDeviceAddressRegionKHR & hitShaderBindingTable,
+ const StridedDeviceAddressRegionKHR & callableShaderBindingTable,
+ uint32_t width,
+ uint32_t height,
+ uint32_t depth,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void traceRaysIndirectKHR( const VULKAN_HPP_NAMESPACE::StridedDeviceAddressRegionKHR * pRaygenShaderBindingTable,
+ const VULKAN_HPP_NAMESPACE::StridedDeviceAddressRegionKHR * pMissShaderBindingTable,
+ const VULKAN_HPP_NAMESPACE::StridedDeviceAddressRegionKHR * pHitShaderBindingTable,
+ const VULKAN_HPP_NAMESPACE::StridedDeviceAddressRegionKHR * pCallableShaderBindingTable,
+ VULKAN_HPP_NAMESPACE::DeviceAddress indirectDeviceAddress,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void traceRaysIndirectKHR( const StridedDeviceAddressRegionKHR & raygenShaderBindingTable,
+ const StridedDeviceAddressRegionKHR & missShaderBindingTable,
+ const StridedDeviceAddressRegionKHR & hitShaderBindingTable,
+ const StridedDeviceAddressRegionKHR & callableShaderBindingTable,
+ VULKAN_HPP_NAMESPACE::DeviceAddress indirectDeviceAddress,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void setRayTracingPipelineStackSizeKHR( uint32_t pipelineStackSize,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_EXT_vertex_input_dynamic_state ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void
+ setVertexInputEXT( uint32_t vertexBindingDescriptionCount,
+ const VULKAN_HPP_NAMESPACE::VertexInputBindingDescription2EXT * pVertexBindingDescriptions,
+ uint32_t vertexAttributeDescriptionCount,
+ const VULKAN_HPP_NAMESPACE::VertexInputAttributeDescription2EXT * pVertexAttributeDescriptions,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void setVertexInputEXT(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::VertexInputBindingDescription2EXT> const & vertexBindingDescriptions,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::VertexInputAttributeDescription2EXT> const & vertexAttributeDescriptions,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_HUAWEI_subpass_shading ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void subpassShadingHUAWEI( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_EXT_extended_dynamic_state2 ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void
+ setPatchControlPointsEXT( uint32_t patchControlPoints,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void setRasterizerDiscardEnableEXT( VULKAN_HPP_NAMESPACE::Bool32 rasterizerDiscardEnable,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void setDepthBiasEnableEXT( VULKAN_HPP_NAMESPACE::Bool32 depthBiasEnable,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void setLogicOpEXT( VULKAN_HPP_NAMESPACE::LogicOp logicOp,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void setPrimitiveRestartEnableEXT( VULKAN_HPP_NAMESPACE::Bool32 primitiveRestartEnable,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_EXT_color_write_enable ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void
+ setColorWriteEnableEXT( uint32_t attachmentCount,
+ const VULKAN_HPP_NAMESPACE::Bool32 * pColorWriteEnables,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void
+ setColorWriteEnableEXT( ArrayProxy<const VULKAN_HPP_NAMESPACE::Bool32> const & colorWriteEnables,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_EXT_multi_draw ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void drawMultiEXT( uint32_t drawCount,
+ const VULKAN_HPP_NAMESPACE::MultiDrawInfoEXT * pVertexInfo,
+ uint32_t instanceCount,
+ uint32_t firstInstance,
+ uint32_t stride,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void drawMultiEXT( ArrayProxy<const VULKAN_HPP_NAMESPACE::MultiDrawInfoEXT> const & vertexInfo,
+ uint32_t instanceCount,
+ uint32_t firstInstance,
+ uint32_t stride,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void drawMultiIndexedEXT( uint32_t drawCount,
+ const VULKAN_HPP_NAMESPACE::MultiDrawIndexedInfoEXT * pIndexInfo,
+ uint32_t instanceCount,
+ uint32_t firstInstance,
+ uint32_t stride,
+ const int32_t * pVertexOffset,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void drawMultiIndexedEXT( ArrayProxy<const VULKAN_HPP_NAMESPACE::MultiDrawIndexedInfoEXT> const & indexInfo,
+ uint32_t instanceCount,
+ uint32_t firstInstance,
+ uint32_t stride,
+ Optional<const int32_t> vertexOffset VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ VULKAN_HPP_TYPESAFE_EXPLICIT operator VkCommandBuffer() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_commandBuffer;
+ }
+
+ explicit operator bool() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_commandBuffer != VK_NULL_HANDLE;
+ }
+
+ bool operator!() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_commandBuffer == VK_NULL_HANDLE;
+ }
+
+ private:
+ VkCommandBuffer m_commandBuffer = {};
+ };
+ static_assert( sizeof( VULKAN_HPP_NAMESPACE::CommandBuffer ) == sizeof( VkCommandBuffer ),
+ "handle and wrapper have different size!" );
+
+ template <>
+ struct VULKAN_HPP_DEPRECATED(
+ "vk::cpp_type is deprecated. Use vk::CppType instead." ) cpp_type<ObjectType::eCommandBuffer>
+ {
+ using type = VULKAN_HPP_NAMESPACE::CommandBuffer;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eCommandBuffer>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::CommandBuffer;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT,
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eCommandBuffer>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::CommandBuffer;
+ };
+
+ template <>
+ struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::CommandBuffer>
+ {
+ static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
+ };
+
+ class DeviceMemory
+ {
+ public:
+ using CType = VkDeviceMemory;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eDeviceMemory;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eDeviceMemory;
+
+ public:
+ VULKAN_HPP_CONSTEXPR DeviceMemory() = default;
+ VULKAN_HPP_CONSTEXPR DeviceMemory( std::nullptr_t ) VULKAN_HPP_NOEXCEPT {}
+ VULKAN_HPP_TYPESAFE_EXPLICIT DeviceMemory( VkDeviceMemory deviceMemory ) VULKAN_HPP_NOEXCEPT
+ : m_deviceMemory( deviceMemory )
+ {}
+
+#if defined( VULKAN_HPP_TYPESAFE_CONVERSION )
+ DeviceMemory & operator=( VkDeviceMemory deviceMemory ) VULKAN_HPP_NOEXCEPT
+ {
+ m_deviceMemory = deviceMemory;
+ return *this;
+ }
+#endif
+
+ DeviceMemory & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
+ {
+ m_deviceMemory = {};
+ return *this;
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DeviceMemory const & ) const = default;
+#else
+ bool operator==( DeviceMemory const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_deviceMemory == rhs.m_deviceMemory;
+ }
+
+ bool operator!=( DeviceMemory const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_deviceMemory != rhs.m_deviceMemory;
+ }
+
+ bool operator<( DeviceMemory const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_deviceMemory < rhs.m_deviceMemory;
+ }
+#endif
+
+ VULKAN_HPP_TYPESAFE_EXPLICIT operator VkDeviceMemory() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_deviceMemory;
+ }
+
+ explicit operator bool() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_deviceMemory != VK_NULL_HANDLE;
+ }
+
+ bool operator!() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_deviceMemory == VK_NULL_HANDLE;
+ }
+
+ private:
+ VkDeviceMemory m_deviceMemory = {};
+ };
+ static_assert( sizeof( VULKAN_HPP_NAMESPACE::DeviceMemory ) == sizeof( VkDeviceMemory ),
+ "handle and wrapper have different size!" );
+
+ template <>
+ struct VULKAN_HPP_DEPRECATED(
+ "vk::cpp_type is deprecated. Use vk::CppType instead." ) cpp_type<ObjectType::eDeviceMemory>
+ {
+ using type = VULKAN_HPP_NAMESPACE::DeviceMemory;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eDeviceMemory>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::DeviceMemory;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT,
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eDeviceMemory>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::DeviceMemory;
+ };
+
+ template <>
+ struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::DeviceMemory>
+ {
+ static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
+ };
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ class VideoSessionKHR
+ {
+ public:
+ using CType = VkVideoSessionKHR;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eVideoSessionKHR;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eUnknown;
+
+ public:
+ VULKAN_HPP_CONSTEXPR VideoSessionKHR() = default;
+ VULKAN_HPP_CONSTEXPR VideoSessionKHR( std::nullptr_t ) VULKAN_HPP_NOEXCEPT {}
+ VULKAN_HPP_TYPESAFE_EXPLICIT VideoSessionKHR( VkVideoSessionKHR videoSessionKHR ) VULKAN_HPP_NOEXCEPT
+ : m_videoSessionKHR( videoSessionKHR )
+ {}
+
+# if defined( VULKAN_HPP_TYPESAFE_CONVERSION )
+ VideoSessionKHR & operator=( VkVideoSessionKHR videoSessionKHR ) VULKAN_HPP_NOEXCEPT
+ {
+ m_videoSessionKHR = videoSessionKHR;
+ return *this;
+ }
+# endif
+
+ VideoSessionKHR & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
+ {
+ m_videoSessionKHR = {};
+ return *this;
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( VideoSessionKHR const & ) const = default;
+# else
+ bool operator==( VideoSessionKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_videoSessionKHR == rhs.m_videoSessionKHR;
+ }
+
+ bool operator!=( VideoSessionKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_videoSessionKHR != rhs.m_videoSessionKHR;
+ }
+
+ bool operator<( VideoSessionKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_videoSessionKHR < rhs.m_videoSessionKHR;
+ }
+# endif
+
+ VULKAN_HPP_TYPESAFE_EXPLICIT operator VkVideoSessionKHR() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_videoSessionKHR;
+ }
+
+ explicit operator bool() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_videoSessionKHR != VK_NULL_HANDLE;
+ }
+
+ bool operator!() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_videoSessionKHR == VK_NULL_HANDLE;
+ }
+
+ private:
+ VkVideoSessionKHR m_videoSessionKHR = {};
+ };
+ static_assert( sizeof( VULKAN_HPP_NAMESPACE::VideoSessionKHR ) == sizeof( VkVideoSessionKHR ),
+ "handle and wrapper have different size!" );
+
+ template <>
+ struct VULKAN_HPP_DEPRECATED(
+ "vk::cpp_type is deprecated. Use vk::CppType instead." ) cpp_type<ObjectType::eVideoSessionKHR>
+ {
+ using type = VULKAN_HPP_NAMESPACE::VideoSessionKHR;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eVideoSessionKHR>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::VideoSessionKHR;
+ };
+
+ template <>
+ struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::VideoSessionKHR>
+ {
+ static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
+ };
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+ class DeferredOperationKHR
+ {
+ public:
+ using CType = VkDeferredOperationKHR;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eDeferredOperationKHR;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eUnknown;
+
+ public:
+ VULKAN_HPP_CONSTEXPR DeferredOperationKHR() = default;
+ VULKAN_HPP_CONSTEXPR DeferredOperationKHR( std::nullptr_t ) VULKAN_HPP_NOEXCEPT {}
+ VULKAN_HPP_TYPESAFE_EXPLICIT DeferredOperationKHR( VkDeferredOperationKHR deferredOperationKHR ) VULKAN_HPP_NOEXCEPT
+ : m_deferredOperationKHR( deferredOperationKHR )
+ {}
+
+#if defined( VULKAN_HPP_TYPESAFE_CONVERSION )
+ DeferredOperationKHR & operator=( VkDeferredOperationKHR deferredOperationKHR ) VULKAN_HPP_NOEXCEPT
+ {
+ m_deferredOperationKHR = deferredOperationKHR;
+ return *this;
+ }
+#endif
+
+ DeferredOperationKHR & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
+ {
+ m_deferredOperationKHR = {};
+ return *this;
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DeferredOperationKHR const & ) const = default;
+#else
+ bool operator==( DeferredOperationKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_deferredOperationKHR == rhs.m_deferredOperationKHR;
+ }
+
+ bool operator!=( DeferredOperationKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_deferredOperationKHR != rhs.m_deferredOperationKHR;
+ }
+
+ bool operator<( DeferredOperationKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_deferredOperationKHR < rhs.m_deferredOperationKHR;
+ }
+#endif
+
+ VULKAN_HPP_TYPESAFE_EXPLICIT operator VkDeferredOperationKHR() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_deferredOperationKHR;
+ }
+
+ explicit operator bool() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_deferredOperationKHR != VK_NULL_HANDLE;
+ }
+
+ bool operator!() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_deferredOperationKHR == VK_NULL_HANDLE;
+ }
+
+ private:
+ VkDeferredOperationKHR m_deferredOperationKHR = {};
+ };
+ static_assert( sizeof( VULKAN_HPP_NAMESPACE::DeferredOperationKHR ) == sizeof( VkDeferredOperationKHR ),
+ "handle and wrapper have different size!" );
+
+ template <>
+ struct VULKAN_HPP_DEPRECATED(
+ "vk::cpp_type is deprecated. Use vk::CppType instead." ) cpp_type<ObjectType::eDeferredOperationKHR>
+ {
+ using type = VULKAN_HPP_NAMESPACE::DeferredOperationKHR;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eDeferredOperationKHR>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::DeferredOperationKHR;
+ };
+
+ template <>
+ struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::DeferredOperationKHR>
+ {
+ static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
+ };
+
+ class BufferView
+ {
+ public:
+ using CType = VkBufferView;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eBufferView;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eBufferView;
+
+ public:
+ VULKAN_HPP_CONSTEXPR BufferView() = default;
+ VULKAN_HPP_CONSTEXPR BufferView( std::nullptr_t ) VULKAN_HPP_NOEXCEPT {}
+ VULKAN_HPP_TYPESAFE_EXPLICIT BufferView( VkBufferView bufferView ) VULKAN_HPP_NOEXCEPT : m_bufferView( bufferView )
+ {}
+
+#if defined( VULKAN_HPP_TYPESAFE_CONVERSION )
+ BufferView & operator=( VkBufferView bufferView ) VULKAN_HPP_NOEXCEPT
+ {
+ m_bufferView = bufferView;
+ return *this;
+ }
+#endif
+
+ BufferView & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
+ {
+ m_bufferView = {};
+ return *this;
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( BufferView const & ) const = default;
+#else
+ bool operator==( BufferView const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_bufferView == rhs.m_bufferView;
+ }
+
+ bool operator!=( BufferView const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_bufferView != rhs.m_bufferView;
+ }
+
+ bool operator<( BufferView const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_bufferView < rhs.m_bufferView;
+ }
+#endif
+
+ VULKAN_HPP_TYPESAFE_EXPLICIT operator VkBufferView() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_bufferView;
+ }
+
+ explicit operator bool() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_bufferView != VK_NULL_HANDLE;
+ }
+
+ bool operator!() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_bufferView == VK_NULL_HANDLE;
+ }
+
+ private:
+ VkBufferView m_bufferView = {};
+ };
+ static_assert( sizeof( VULKAN_HPP_NAMESPACE::BufferView ) == sizeof( VkBufferView ),
+ "handle and wrapper have different size!" );
+
+ template <>
+ struct VULKAN_HPP_DEPRECATED(
+ "vk::cpp_type is deprecated. Use vk::CppType instead." ) cpp_type<ObjectType::eBufferView>
+ {
+ using type = VULKAN_HPP_NAMESPACE::BufferView;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eBufferView>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::BufferView;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT,
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eBufferView>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::BufferView;
+ };
+
+ template <>
+ struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::BufferView>
+ {
+ static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
+ };
+
+ class CommandPool
+ {
+ public:
+ using CType = VkCommandPool;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eCommandPool;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eCommandPool;
+
+ public:
+ VULKAN_HPP_CONSTEXPR CommandPool() = default;
+ VULKAN_HPP_CONSTEXPR CommandPool( std::nullptr_t ) VULKAN_HPP_NOEXCEPT {}
+ VULKAN_HPP_TYPESAFE_EXPLICIT CommandPool( VkCommandPool commandPool ) VULKAN_HPP_NOEXCEPT
+ : m_commandPool( commandPool )
+ {}
+
+#if defined( VULKAN_HPP_TYPESAFE_CONVERSION )
+ CommandPool & operator=( VkCommandPool commandPool ) VULKAN_HPP_NOEXCEPT
+ {
+ m_commandPool = commandPool;
+ return *this;
+ }
+#endif
+
+ CommandPool & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
+ {
+ m_commandPool = {};
+ return *this;
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( CommandPool const & ) const = default;
+#else
+ bool operator==( CommandPool const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_commandPool == rhs.m_commandPool;
+ }
+
+ bool operator!=( CommandPool const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_commandPool != rhs.m_commandPool;
+ }
+
+ bool operator<( CommandPool const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_commandPool < rhs.m_commandPool;
+ }
+#endif
+
+ VULKAN_HPP_TYPESAFE_EXPLICIT operator VkCommandPool() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_commandPool;
+ }
+
+ explicit operator bool() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_commandPool != VK_NULL_HANDLE;
+ }
+
+ bool operator!() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_commandPool == VK_NULL_HANDLE;
+ }
+
+ private:
+ VkCommandPool m_commandPool = {};
+ };
+ static_assert( sizeof( VULKAN_HPP_NAMESPACE::CommandPool ) == sizeof( VkCommandPool ),
+ "handle and wrapper have different size!" );
+
+ template <>
+ struct VULKAN_HPP_DEPRECATED(
+ "vk::cpp_type is deprecated. Use vk::CppType instead." ) cpp_type<ObjectType::eCommandPool>
+ {
+ using type = VULKAN_HPP_NAMESPACE::CommandPool;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eCommandPool>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::CommandPool;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT,
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eCommandPool>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::CommandPool;
+ };
+
+ template <>
+ struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::CommandPool>
+ {
+ static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
+ };
+
+ class PipelineCache
+ {
+ public:
+ using CType = VkPipelineCache;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::ePipelineCache;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::ePipelineCache;
+
+ public:
+ VULKAN_HPP_CONSTEXPR PipelineCache() = default;
+ VULKAN_HPP_CONSTEXPR PipelineCache( std::nullptr_t ) VULKAN_HPP_NOEXCEPT {}
+ VULKAN_HPP_TYPESAFE_EXPLICIT PipelineCache( VkPipelineCache pipelineCache ) VULKAN_HPP_NOEXCEPT
+ : m_pipelineCache( pipelineCache )
+ {}
+
+#if defined( VULKAN_HPP_TYPESAFE_CONVERSION )
+ PipelineCache & operator=( VkPipelineCache pipelineCache ) VULKAN_HPP_NOEXCEPT
+ {
+ m_pipelineCache = pipelineCache;
+ return *this;
+ }
+#endif
+
+ PipelineCache & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
+ {
+ m_pipelineCache = {};
+ return *this;
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PipelineCache const & ) const = default;
+#else
+ bool operator==( PipelineCache const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_pipelineCache == rhs.m_pipelineCache;
+ }
+
+ bool operator!=( PipelineCache const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_pipelineCache != rhs.m_pipelineCache;
+ }
+
+ bool operator<( PipelineCache const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_pipelineCache < rhs.m_pipelineCache;
+ }
+#endif
+
+ VULKAN_HPP_TYPESAFE_EXPLICIT operator VkPipelineCache() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_pipelineCache;
+ }
+
+ explicit operator bool() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_pipelineCache != VK_NULL_HANDLE;
+ }
+
+ bool operator!() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_pipelineCache == VK_NULL_HANDLE;
+ }
+
+ private:
+ VkPipelineCache m_pipelineCache = {};
+ };
+ static_assert( sizeof( VULKAN_HPP_NAMESPACE::PipelineCache ) == sizeof( VkPipelineCache ),
+ "handle and wrapper have different size!" );
+
+ template <>
+ struct VULKAN_HPP_DEPRECATED(
+ "vk::cpp_type is deprecated. Use vk::CppType instead." ) cpp_type<ObjectType::ePipelineCache>
+ {
+ using type = VULKAN_HPP_NAMESPACE::PipelineCache;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::ePipelineCache>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::PipelineCache;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT,
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::ePipelineCache>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::PipelineCache;
+ };
+
+ template <>
+ struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::PipelineCache>
+ {
+ static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
+ };
+
+ class CuFunctionNVX
+ {
+ public:
+ using CType = VkCuFunctionNVX;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eCuFunctionNVX;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eCuFunctionNVX;
+
+ public:
+ VULKAN_HPP_CONSTEXPR CuFunctionNVX() = default;
+ VULKAN_HPP_CONSTEXPR CuFunctionNVX( std::nullptr_t ) VULKAN_HPP_NOEXCEPT {}
+ VULKAN_HPP_TYPESAFE_EXPLICIT CuFunctionNVX( VkCuFunctionNVX cuFunctionNVX ) VULKAN_HPP_NOEXCEPT
+ : m_cuFunctionNVX( cuFunctionNVX )
+ {}
+
+#if defined( VULKAN_HPP_TYPESAFE_CONVERSION )
+ CuFunctionNVX & operator=( VkCuFunctionNVX cuFunctionNVX ) VULKAN_HPP_NOEXCEPT
+ {
+ m_cuFunctionNVX = cuFunctionNVX;
+ return *this;
+ }
+#endif
+
+ CuFunctionNVX & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
+ {
+ m_cuFunctionNVX = {};
+ return *this;
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( CuFunctionNVX const & ) const = default;
+#else
+ bool operator==( CuFunctionNVX const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_cuFunctionNVX == rhs.m_cuFunctionNVX;
+ }
+
+ bool operator!=( CuFunctionNVX const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_cuFunctionNVX != rhs.m_cuFunctionNVX;
+ }
+
+ bool operator<( CuFunctionNVX const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_cuFunctionNVX < rhs.m_cuFunctionNVX;
+ }
+#endif
+
+ VULKAN_HPP_TYPESAFE_EXPLICIT operator VkCuFunctionNVX() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_cuFunctionNVX;
+ }
+
+ explicit operator bool() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_cuFunctionNVX != VK_NULL_HANDLE;
+ }
+
+ bool operator!() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_cuFunctionNVX == VK_NULL_HANDLE;
+ }
+
+ private:
+ VkCuFunctionNVX m_cuFunctionNVX = {};
+ };
+ static_assert( sizeof( VULKAN_HPP_NAMESPACE::CuFunctionNVX ) == sizeof( VkCuFunctionNVX ),
+ "handle and wrapper have different size!" );
+
+ template <>
+ struct VULKAN_HPP_DEPRECATED(
+ "vk::cpp_type is deprecated. Use vk::CppType instead." ) cpp_type<ObjectType::eCuFunctionNVX>
+ {
+ using type = VULKAN_HPP_NAMESPACE::CuFunctionNVX;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eCuFunctionNVX>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::CuFunctionNVX;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT,
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eCuFunctionNVX>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::CuFunctionNVX;
+ };
+
+ template <>
+ struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::CuFunctionNVX>
+ {
+ static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
+ };
+
+ class CuModuleNVX
+ {
+ public:
+ using CType = VkCuModuleNVX;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eCuModuleNVX;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eCuModuleNVX;
+
+ public:
+ VULKAN_HPP_CONSTEXPR CuModuleNVX() = default;
+ VULKAN_HPP_CONSTEXPR CuModuleNVX( std::nullptr_t ) VULKAN_HPP_NOEXCEPT {}
+ VULKAN_HPP_TYPESAFE_EXPLICIT CuModuleNVX( VkCuModuleNVX cuModuleNVX ) VULKAN_HPP_NOEXCEPT
+ : m_cuModuleNVX( cuModuleNVX )
+ {}
+
+#if defined( VULKAN_HPP_TYPESAFE_CONVERSION )
+ CuModuleNVX & operator=( VkCuModuleNVX cuModuleNVX ) VULKAN_HPP_NOEXCEPT
+ {
+ m_cuModuleNVX = cuModuleNVX;
+ return *this;
+ }
+#endif
+
+ CuModuleNVX & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
+ {
+ m_cuModuleNVX = {};
+ return *this;
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( CuModuleNVX const & ) const = default;
+#else
+ bool operator==( CuModuleNVX const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_cuModuleNVX == rhs.m_cuModuleNVX;
+ }
+
+ bool operator!=( CuModuleNVX const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_cuModuleNVX != rhs.m_cuModuleNVX;
+ }
+
+ bool operator<( CuModuleNVX const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_cuModuleNVX < rhs.m_cuModuleNVX;
+ }
+#endif
+
+ VULKAN_HPP_TYPESAFE_EXPLICIT operator VkCuModuleNVX() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_cuModuleNVX;
+ }
+
+ explicit operator bool() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_cuModuleNVX != VK_NULL_HANDLE;
+ }
+
+ bool operator!() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_cuModuleNVX == VK_NULL_HANDLE;
+ }
+
+ private:
+ VkCuModuleNVX m_cuModuleNVX = {};
+ };
+ static_assert( sizeof( VULKAN_HPP_NAMESPACE::CuModuleNVX ) == sizeof( VkCuModuleNVX ),
+ "handle and wrapper have different size!" );
+
+ template <>
+ struct VULKAN_HPP_DEPRECATED(
+ "vk::cpp_type is deprecated. Use vk::CppType instead." ) cpp_type<ObjectType::eCuModuleNVX>
+ {
+ using type = VULKAN_HPP_NAMESPACE::CuModuleNVX;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eCuModuleNVX>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::CuModuleNVX;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT,
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eCuModuleNVX>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::CuModuleNVX;
+ };
+
+ template <>
+ struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::CuModuleNVX>
+ {
+ static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
+ };
+
+ class DescriptorPool
+ {
+ public:
+ using CType = VkDescriptorPool;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eDescriptorPool;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eDescriptorPool;
+
+ public:
+ VULKAN_HPP_CONSTEXPR DescriptorPool() = default;
+ VULKAN_HPP_CONSTEXPR DescriptorPool( std::nullptr_t ) VULKAN_HPP_NOEXCEPT {}
+ VULKAN_HPP_TYPESAFE_EXPLICIT DescriptorPool( VkDescriptorPool descriptorPool ) VULKAN_HPP_NOEXCEPT
+ : m_descriptorPool( descriptorPool )
+ {}
+
+#if defined( VULKAN_HPP_TYPESAFE_CONVERSION )
+ DescriptorPool & operator=( VkDescriptorPool descriptorPool ) VULKAN_HPP_NOEXCEPT
+ {
+ m_descriptorPool = descriptorPool;
+ return *this;
+ }
+#endif
+
+ DescriptorPool & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
+ {
+ m_descriptorPool = {};
+ return *this;
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DescriptorPool const & ) const = default;
+#else
+ bool operator==( DescriptorPool const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_descriptorPool == rhs.m_descriptorPool;
+ }
+
+ bool operator!=( DescriptorPool const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_descriptorPool != rhs.m_descriptorPool;
+ }
+
+ bool operator<( DescriptorPool const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_descriptorPool < rhs.m_descriptorPool;
+ }
+#endif
+
+ VULKAN_HPP_TYPESAFE_EXPLICIT operator VkDescriptorPool() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_descriptorPool;
+ }
+
+ explicit operator bool() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_descriptorPool != VK_NULL_HANDLE;
+ }
+
+ bool operator!() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_descriptorPool == VK_NULL_HANDLE;
+ }
+
+ private:
+ VkDescriptorPool m_descriptorPool = {};
+ };
+ static_assert( sizeof( VULKAN_HPP_NAMESPACE::DescriptorPool ) == sizeof( VkDescriptorPool ),
+ "handle and wrapper have different size!" );
+
+ template <>
+ struct VULKAN_HPP_DEPRECATED(
+ "vk::cpp_type is deprecated. Use vk::CppType instead." ) cpp_type<ObjectType::eDescriptorPool>
+ {
+ using type = VULKAN_HPP_NAMESPACE::DescriptorPool;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eDescriptorPool>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::DescriptorPool;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT,
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eDescriptorPool>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::DescriptorPool;
+ };
+
+ template <>
+ struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::DescriptorPool>
+ {
+ static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
+ };
+
+ class DescriptorSetLayout
+ {
+ public:
+ using CType = VkDescriptorSetLayout;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eDescriptorSetLayout;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eDescriptorSetLayout;
+
+ public:
+ VULKAN_HPP_CONSTEXPR DescriptorSetLayout() = default;
+ VULKAN_HPP_CONSTEXPR DescriptorSetLayout( std::nullptr_t ) VULKAN_HPP_NOEXCEPT {}
+ VULKAN_HPP_TYPESAFE_EXPLICIT DescriptorSetLayout( VkDescriptorSetLayout descriptorSetLayout ) VULKAN_HPP_NOEXCEPT
+ : m_descriptorSetLayout( descriptorSetLayout )
+ {}
+
+#if defined( VULKAN_HPP_TYPESAFE_CONVERSION )
+ DescriptorSetLayout & operator=( VkDescriptorSetLayout descriptorSetLayout ) VULKAN_HPP_NOEXCEPT
+ {
+ m_descriptorSetLayout = descriptorSetLayout;
+ return *this;
+ }
+#endif
+
+ DescriptorSetLayout & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
+ {
+ m_descriptorSetLayout = {};
+ return *this;
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DescriptorSetLayout const & ) const = default;
+#else
+ bool operator==( DescriptorSetLayout const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_descriptorSetLayout == rhs.m_descriptorSetLayout;
+ }
+
+ bool operator!=( DescriptorSetLayout const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_descriptorSetLayout != rhs.m_descriptorSetLayout;
+ }
+
+ bool operator<( DescriptorSetLayout const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_descriptorSetLayout < rhs.m_descriptorSetLayout;
+ }
+#endif
+
+ VULKAN_HPP_TYPESAFE_EXPLICIT operator VkDescriptorSetLayout() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_descriptorSetLayout;
+ }
+
+ explicit operator bool() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_descriptorSetLayout != VK_NULL_HANDLE;
+ }
+
+ bool operator!() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_descriptorSetLayout == VK_NULL_HANDLE;
+ }
+
+ private:
+ VkDescriptorSetLayout m_descriptorSetLayout = {};
+ };
+ static_assert( sizeof( VULKAN_HPP_NAMESPACE::DescriptorSetLayout ) == sizeof( VkDescriptorSetLayout ),
+ "handle and wrapper have different size!" );
+
+ template <>
+ struct VULKAN_HPP_DEPRECATED(
+ "vk::cpp_type is deprecated. Use vk::CppType instead." ) cpp_type<ObjectType::eDescriptorSetLayout>
+ {
+ using type = VULKAN_HPP_NAMESPACE::DescriptorSetLayout;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eDescriptorSetLayout>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::DescriptorSetLayout;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT,
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eDescriptorSetLayout>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::DescriptorSetLayout;
+ };
+
+ template <>
+ struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::DescriptorSetLayout>
+ {
+ static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
+ };
+
+ class Framebuffer
+ {
+ public:
+ using CType = VkFramebuffer;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eFramebuffer;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eFramebuffer;
+
+ public:
+ VULKAN_HPP_CONSTEXPR Framebuffer() = default;
+ VULKAN_HPP_CONSTEXPR Framebuffer( std::nullptr_t ) VULKAN_HPP_NOEXCEPT {}
+ VULKAN_HPP_TYPESAFE_EXPLICIT Framebuffer( VkFramebuffer framebuffer ) VULKAN_HPP_NOEXCEPT
+ : m_framebuffer( framebuffer )
+ {}
+
+#if defined( VULKAN_HPP_TYPESAFE_CONVERSION )
+ Framebuffer & operator=( VkFramebuffer framebuffer ) VULKAN_HPP_NOEXCEPT
+ {
+ m_framebuffer = framebuffer;
+ return *this;
+ }
+#endif
+
+ Framebuffer & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
+ {
+ m_framebuffer = {};
+ return *this;
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( Framebuffer const & ) const = default;
+#else
+ bool operator==( Framebuffer const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_framebuffer == rhs.m_framebuffer;
+ }
+
+ bool operator!=( Framebuffer const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_framebuffer != rhs.m_framebuffer;
+ }
+
+ bool operator<( Framebuffer const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_framebuffer < rhs.m_framebuffer;
+ }
+#endif
+
+ VULKAN_HPP_TYPESAFE_EXPLICIT operator VkFramebuffer() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_framebuffer;
+ }
+
+ explicit operator bool() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_framebuffer != VK_NULL_HANDLE;
+ }
+
+ bool operator!() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_framebuffer == VK_NULL_HANDLE;
+ }
+
+ private:
+ VkFramebuffer m_framebuffer = {};
+ };
+ static_assert( sizeof( VULKAN_HPP_NAMESPACE::Framebuffer ) == sizeof( VkFramebuffer ),
+ "handle and wrapper have different size!" );
+
+ template <>
+ struct VULKAN_HPP_DEPRECATED(
+ "vk::cpp_type is deprecated. Use vk::CppType instead." ) cpp_type<ObjectType::eFramebuffer>
+ {
+ using type = VULKAN_HPP_NAMESPACE::Framebuffer;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eFramebuffer>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::Framebuffer;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT,
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eFramebuffer>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::Framebuffer;
+ };
+
+ template <>
+ struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::Framebuffer>
+ {
+ static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
+ };
+
+ class IndirectCommandsLayoutNV
+ {
+ public:
+ using CType = VkIndirectCommandsLayoutNV;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eIndirectCommandsLayoutNV;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eUnknown;
+
+ public:
+ VULKAN_HPP_CONSTEXPR IndirectCommandsLayoutNV() = default;
+ VULKAN_HPP_CONSTEXPR IndirectCommandsLayoutNV( std::nullptr_t ) VULKAN_HPP_NOEXCEPT {}
+ VULKAN_HPP_TYPESAFE_EXPLICIT
+ IndirectCommandsLayoutNV( VkIndirectCommandsLayoutNV indirectCommandsLayoutNV ) VULKAN_HPP_NOEXCEPT
+ : m_indirectCommandsLayoutNV( indirectCommandsLayoutNV )
+ {}
+
+#if defined( VULKAN_HPP_TYPESAFE_CONVERSION )
+ IndirectCommandsLayoutNV & operator=( VkIndirectCommandsLayoutNV indirectCommandsLayoutNV ) VULKAN_HPP_NOEXCEPT
+ {
+ m_indirectCommandsLayoutNV = indirectCommandsLayoutNV;
+ return *this;
+ }
+#endif
+
+ IndirectCommandsLayoutNV & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
+ {
+ m_indirectCommandsLayoutNV = {};
+ return *this;
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( IndirectCommandsLayoutNV const & ) const = default;
+#else
+ bool operator==( IndirectCommandsLayoutNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_indirectCommandsLayoutNV == rhs.m_indirectCommandsLayoutNV;
+ }
+
+ bool operator!=( IndirectCommandsLayoutNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_indirectCommandsLayoutNV != rhs.m_indirectCommandsLayoutNV;
+ }
+
+ bool operator<( IndirectCommandsLayoutNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_indirectCommandsLayoutNV < rhs.m_indirectCommandsLayoutNV;
+ }
+#endif
+
+ VULKAN_HPP_TYPESAFE_EXPLICIT operator VkIndirectCommandsLayoutNV() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_indirectCommandsLayoutNV;
+ }
+
+ explicit operator bool() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_indirectCommandsLayoutNV != VK_NULL_HANDLE;
+ }
+
+ bool operator!() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_indirectCommandsLayoutNV == VK_NULL_HANDLE;
+ }
+
+ private:
+ VkIndirectCommandsLayoutNV m_indirectCommandsLayoutNV = {};
+ };
+ static_assert( sizeof( VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV ) == sizeof( VkIndirectCommandsLayoutNV ),
+ "handle and wrapper have different size!" );
+
+ template <>
+ struct VULKAN_HPP_DEPRECATED(
+ "vk::cpp_type is deprecated. Use vk::CppType instead." ) cpp_type<ObjectType::eIndirectCommandsLayoutNV>
+ {
+ using type = VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eIndirectCommandsLayoutNV>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV;
+ };
+
+ template <>
+ struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV>
+ {
+ static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
+ };
+
+ class PrivateDataSlotEXT
+ {
+ public:
+ using CType = VkPrivateDataSlotEXT;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::ePrivateDataSlotEXT;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eUnknown;
+
+ public:
+ VULKAN_HPP_CONSTEXPR PrivateDataSlotEXT() = default;
+ VULKAN_HPP_CONSTEXPR PrivateDataSlotEXT( std::nullptr_t ) VULKAN_HPP_NOEXCEPT {}
+ VULKAN_HPP_TYPESAFE_EXPLICIT PrivateDataSlotEXT( VkPrivateDataSlotEXT privateDataSlotEXT ) VULKAN_HPP_NOEXCEPT
+ : m_privateDataSlotEXT( privateDataSlotEXT )
+ {}
+
+#if defined( VULKAN_HPP_TYPESAFE_CONVERSION )
+ PrivateDataSlotEXT & operator=( VkPrivateDataSlotEXT privateDataSlotEXT ) VULKAN_HPP_NOEXCEPT
+ {
+ m_privateDataSlotEXT = privateDataSlotEXT;
+ return *this;
+ }
+#endif
+
+ PrivateDataSlotEXT & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
+ {
+ m_privateDataSlotEXT = {};
+ return *this;
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PrivateDataSlotEXT const & ) const = default;
+#else
+ bool operator==( PrivateDataSlotEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_privateDataSlotEXT == rhs.m_privateDataSlotEXT;
+ }
+
+ bool operator!=( PrivateDataSlotEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_privateDataSlotEXT != rhs.m_privateDataSlotEXT;
+ }
+
+ bool operator<( PrivateDataSlotEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_privateDataSlotEXT < rhs.m_privateDataSlotEXT;
+ }
+#endif
+
+ VULKAN_HPP_TYPESAFE_EXPLICIT operator VkPrivateDataSlotEXT() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_privateDataSlotEXT;
+ }
+
+ explicit operator bool() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_privateDataSlotEXT != VK_NULL_HANDLE;
+ }
+
+ bool operator!() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_privateDataSlotEXT == VK_NULL_HANDLE;
+ }
+
+ private:
+ VkPrivateDataSlotEXT m_privateDataSlotEXT = {};
+ };
+ static_assert( sizeof( VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT ) == sizeof( VkPrivateDataSlotEXT ),
+ "handle and wrapper have different size!" );
+
+ template <>
+ struct VULKAN_HPP_DEPRECATED(
+ "vk::cpp_type is deprecated. Use vk::CppType instead." ) cpp_type<ObjectType::ePrivateDataSlotEXT>
+ {
+ using type = VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::ePrivateDataSlotEXT>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT;
+ };
+
+ template <>
+ struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT>
+ {
+ static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
+ };
+
+ class RenderPass
+ {
+ public:
+ using CType = VkRenderPass;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eRenderPass;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eRenderPass;
+
+ public:
+ VULKAN_HPP_CONSTEXPR RenderPass() = default;
+ VULKAN_HPP_CONSTEXPR RenderPass( std::nullptr_t ) VULKAN_HPP_NOEXCEPT {}
+ VULKAN_HPP_TYPESAFE_EXPLICIT RenderPass( VkRenderPass renderPass ) VULKAN_HPP_NOEXCEPT : m_renderPass( renderPass )
+ {}
+
+#if defined( VULKAN_HPP_TYPESAFE_CONVERSION )
+ RenderPass & operator=( VkRenderPass renderPass ) VULKAN_HPP_NOEXCEPT
+ {
+ m_renderPass = renderPass;
+ return *this;
+ }
+#endif
+
+ RenderPass & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
+ {
+ m_renderPass = {};
+ return *this;
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( RenderPass const & ) const = default;
+#else
+ bool operator==( RenderPass const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_renderPass == rhs.m_renderPass;
+ }
+
+ bool operator!=( RenderPass const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_renderPass != rhs.m_renderPass;
+ }
+
+ bool operator<( RenderPass const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_renderPass < rhs.m_renderPass;
+ }
+#endif
+
+ //=== VK_HUAWEI_subpass_shading ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result getSubpassShadingMaxWorkgroupSizeHUAWEI(
+ VULKAN_HPP_NAMESPACE::Extent2D * pMaxWorkgroupSize,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD ResultValue<VULKAN_HPP_NAMESPACE::Extent2D>
+ getSubpassShadingMaxWorkgroupSizeHUAWEI( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ VULKAN_HPP_TYPESAFE_EXPLICIT operator VkRenderPass() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_renderPass;
+ }
+
+ explicit operator bool() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_renderPass != VK_NULL_HANDLE;
+ }
+
+ bool operator!() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_renderPass == VK_NULL_HANDLE;
+ }
+
+ private:
+ VkRenderPass m_renderPass = {};
+ };
+ static_assert( sizeof( VULKAN_HPP_NAMESPACE::RenderPass ) == sizeof( VkRenderPass ),
+ "handle and wrapper have different size!" );
+
+ template <>
+ struct VULKAN_HPP_DEPRECATED(
+ "vk::cpp_type is deprecated. Use vk::CppType instead." ) cpp_type<ObjectType::eRenderPass>
+ {
+ using type = VULKAN_HPP_NAMESPACE::RenderPass;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eRenderPass>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::RenderPass;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT,
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eRenderPass>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::RenderPass;
+ };
+
+ template <>
+ struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::RenderPass>
+ {
+ static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
+ };
+
+ class Sampler
+ {
+ public:
+ using CType = VkSampler;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eSampler;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eSampler;
+
+ public:
+ VULKAN_HPP_CONSTEXPR Sampler() = default;
+ VULKAN_HPP_CONSTEXPR Sampler( std::nullptr_t ) VULKAN_HPP_NOEXCEPT {}
+ VULKAN_HPP_TYPESAFE_EXPLICIT Sampler( VkSampler sampler ) VULKAN_HPP_NOEXCEPT : m_sampler( sampler ) {}
+
+#if defined( VULKAN_HPP_TYPESAFE_CONVERSION )
+ Sampler & operator=( VkSampler sampler ) VULKAN_HPP_NOEXCEPT
+ {
+ m_sampler = sampler;
+ return *this;
+ }
+#endif
+
+ Sampler & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
+ {
+ m_sampler = {};
+ return *this;
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( Sampler const & ) const = default;
+#else
+ bool operator==( Sampler const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_sampler == rhs.m_sampler;
+ }
+
+ bool operator!=( Sampler const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_sampler != rhs.m_sampler;
+ }
+
+ bool operator<( Sampler const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_sampler < rhs.m_sampler;
+ }
+#endif
+
+ VULKAN_HPP_TYPESAFE_EXPLICIT operator VkSampler() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_sampler;
+ }
+
+ explicit operator bool() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_sampler != VK_NULL_HANDLE;
+ }
+
+ bool operator!() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_sampler == VK_NULL_HANDLE;
+ }
+
+ private:
+ VkSampler m_sampler = {};
+ };
+ static_assert( sizeof( VULKAN_HPP_NAMESPACE::Sampler ) == sizeof( VkSampler ),
+ "handle and wrapper have different size!" );
+
+ template <>
+ struct VULKAN_HPP_DEPRECATED( "vk::cpp_type is deprecated. Use vk::CppType instead." ) cpp_type<ObjectType::eSampler>
+ {
+ using type = VULKAN_HPP_NAMESPACE::Sampler;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eSampler>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::Sampler;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT,
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eSampler>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::Sampler;
+ };
+
+ template <>
+ struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::Sampler>
+ {
+ static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
+ };
+
+ class SamplerYcbcrConversion
+ {
+ public:
+ using CType = VkSamplerYcbcrConversion;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eSamplerYcbcrConversion;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eSamplerYcbcrConversion;
+
+ public:
+ VULKAN_HPP_CONSTEXPR SamplerYcbcrConversion() = default;
+ VULKAN_HPP_CONSTEXPR SamplerYcbcrConversion( std::nullptr_t ) VULKAN_HPP_NOEXCEPT {}
+ VULKAN_HPP_TYPESAFE_EXPLICIT
+ SamplerYcbcrConversion( VkSamplerYcbcrConversion samplerYcbcrConversion ) VULKAN_HPP_NOEXCEPT
+ : m_samplerYcbcrConversion( samplerYcbcrConversion )
+ {}
+
+#if defined( VULKAN_HPP_TYPESAFE_CONVERSION )
+ SamplerYcbcrConversion & operator=( VkSamplerYcbcrConversion samplerYcbcrConversion ) VULKAN_HPP_NOEXCEPT
+ {
+ m_samplerYcbcrConversion = samplerYcbcrConversion;
+ return *this;
+ }
+#endif
+
+ SamplerYcbcrConversion & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
+ {
+ m_samplerYcbcrConversion = {};
+ return *this;
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( SamplerYcbcrConversion const & ) const = default;
+#else
+ bool operator==( SamplerYcbcrConversion const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_samplerYcbcrConversion == rhs.m_samplerYcbcrConversion;
+ }
+
+ bool operator!=( SamplerYcbcrConversion const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_samplerYcbcrConversion != rhs.m_samplerYcbcrConversion;
+ }
+
+ bool operator<( SamplerYcbcrConversion const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_samplerYcbcrConversion < rhs.m_samplerYcbcrConversion;
+ }
+#endif
+
+ VULKAN_HPP_TYPESAFE_EXPLICIT operator VkSamplerYcbcrConversion() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_samplerYcbcrConversion;
+ }
+
+ explicit operator bool() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_samplerYcbcrConversion != VK_NULL_HANDLE;
+ }
+
+ bool operator!() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_samplerYcbcrConversion == VK_NULL_HANDLE;
+ }
+
+ private:
+ VkSamplerYcbcrConversion m_samplerYcbcrConversion = {};
+ };
+ static_assert( sizeof( VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion ) == sizeof( VkSamplerYcbcrConversion ),
+ "handle and wrapper have different size!" );
+
+ template <>
+ struct VULKAN_HPP_DEPRECATED(
+ "vk::cpp_type is deprecated. Use vk::CppType instead." ) cpp_type<ObjectType::eSamplerYcbcrConversion>
+ {
+ using type = VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eSamplerYcbcrConversion>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT,
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eSamplerYcbcrConversion>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion;
+ };
+
+ template <>
+ struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion>
+ {
+ static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
+ };
+ using SamplerYcbcrConversionKHR = SamplerYcbcrConversion;
+
+ class ShaderModule
+ {
+ public:
+ using CType = VkShaderModule;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eShaderModule;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eShaderModule;
+
+ public:
+ VULKAN_HPP_CONSTEXPR ShaderModule() = default;
+ VULKAN_HPP_CONSTEXPR ShaderModule( std::nullptr_t ) VULKAN_HPP_NOEXCEPT {}
+ VULKAN_HPP_TYPESAFE_EXPLICIT ShaderModule( VkShaderModule shaderModule ) VULKAN_HPP_NOEXCEPT
+ : m_shaderModule( shaderModule )
+ {}
+
+#if defined( VULKAN_HPP_TYPESAFE_CONVERSION )
+ ShaderModule & operator=( VkShaderModule shaderModule ) VULKAN_HPP_NOEXCEPT
+ {
+ m_shaderModule = shaderModule;
+ return *this;
+ }
+#endif
+
+ ShaderModule & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
+ {
+ m_shaderModule = {};
+ return *this;
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ShaderModule const & ) const = default;
+#else
+ bool operator==( ShaderModule const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_shaderModule == rhs.m_shaderModule;
+ }
+
+ bool operator!=( ShaderModule const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_shaderModule != rhs.m_shaderModule;
+ }
+
+ bool operator<( ShaderModule const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_shaderModule < rhs.m_shaderModule;
+ }
+#endif
+
+ VULKAN_HPP_TYPESAFE_EXPLICIT operator VkShaderModule() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_shaderModule;
+ }
+
+ explicit operator bool() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_shaderModule != VK_NULL_HANDLE;
+ }
+
+ bool operator!() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_shaderModule == VK_NULL_HANDLE;
+ }
+
+ private:
+ VkShaderModule m_shaderModule = {};
+ };
+ static_assert( sizeof( VULKAN_HPP_NAMESPACE::ShaderModule ) == sizeof( VkShaderModule ),
+ "handle and wrapper have different size!" );
+
+ template <>
+ struct VULKAN_HPP_DEPRECATED(
+ "vk::cpp_type is deprecated. Use vk::CppType instead." ) cpp_type<ObjectType::eShaderModule>
+ {
+ using type = VULKAN_HPP_NAMESPACE::ShaderModule;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eShaderModule>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::ShaderModule;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT,
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eShaderModule>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::ShaderModule;
+ };
+
+ template <>
+ struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::ShaderModule>
+ {
+ static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
+ };
+
+ class ValidationCacheEXT
+ {
+ public:
+ using CType = VkValidationCacheEXT;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eValidationCacheEXT;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eValidationCacheEXT;
+
+ public:
+ VULKAN_HPP_CONSTEXPR ValidationCacheEXT() = default;
+ VULKAN_HPP_CONSTEXPR ValidationCacheEXT( std::nullptr_t ) VULKAN_HPP_NOEXCEPT {}
+ VULKAN_HPP_TYPESAFE_EXPLICIT ValidationCacheEXT( VkValidationCacheEXT validationCacheEXT ) VULKAN_HPP_NOEXCEPT
+ : m_validationCacheEXT( validationCacheEXT )
+ {}
+
+#if defined( VULKAN_HPP_TYPESAFE_CONVERSION )
+ ValidationCacheEXT & operator=( VkValidationCacheEXT validationCacheEXT ) VULKAN_HPP_NOEXCEPT
+ {
+ m_validationCacheEXT = validationCacheEXT;
+ return *this;
+ }
+#endif
+
+ ValidationCacheEXT & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
+ {
+ m_validationCacheEXT = {};
+ return *this;
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ValidationCacheEXT const & ) const = default;
+#else
+ bool operator==( ValidationCacheEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_validationCacheEXT == rhs.m_validationCacheEXT;
+ }
+
+ bool operator!=( ValidationCacheEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_validationCacheEXT != rhs.m_validationCacheEXT;
+ }
+
+ bool operator<( ValidationCacheEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_validationCacheEXT < rhs.m_validationCacheEXT;
+ }
+#endif
+
+ VULKAN_HPP_TYPESAFE_EXPLICIT operator VkValidationCacheEXT() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_validationCacheEXT;
+ }
+
+ explicit operator bool() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_validationCacheEXT != VK_NULL_HANDLE;
+ }
+
+ bool operator!() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_validationCacheEXT == VK_NULL_HANDLE;
+ }
+
+ private:
+ VkValidationCacheEXT m_validationCacheEXT = {};
+ };
+ static_assert( sizeof( VULKAN_HPP_NAMESPACE::ValidationCacheEXT ) == sizeof( VkValidationCacheEXT ),
+ "handle and wrapper have different size!" );
+
+ template <>
+ struct VULKAN_HPP_DEPRECATED(
+ "vk::cpp_type is deprecated. Use vk::CppType instead." ) cpp_type<ObjectType::eValidationCacheEXT>
+ {
+ using type = VULKAN_HPP_NAMESPACE::ValidationCacheEXT;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eValidationCacheEXT>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::ValidationCacheEXT;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT,
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eValidationCacheEXT>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::ValidationCacheEXT;
+ };
+
+ template <>
+ struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::ValidationCacheEXT>
+ {
+ static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
+ };
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ class VideoSessionParametersKHR
+ {
+ public:
+ using CType = VkVideoSessionParametersKHR;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eVideoSessionParametersKHR;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eUnknown;
+
+ public:
+ VULKAN_HPP_CONSTEXPR VideoSessionParametersKHR() = default;
+ VULKAN_HPP_CONSTEXPR VideoSessionParametersKHR( std::nullptr_t ) VULKAN_HPP_NOEXCEPT {}
+ VULKAN_HPP_TYPESAFE_EXPLICIT
+ VideoSessionParametersKHR( VkVideoSessionParametersKHR videoSessionParametersKHR ) VULKAN_HPP_NOEXCEPT
+ : m_videoSessionParametersKHR( videoSessionParametersKHR )
+ {}
+
+# if defined( VULKAN_HPP_TYPESAFE_CONVERSION )
+ VideoSessionParametersKHR & operator=( VkVideoSessionParametersKHR videoSessionParametersKHR ) VULKAN_HPP_NOEXCEPT
+ {
+ m_videoSessionParametersKHR = videoSessionParametersKHR;
+ return *this;
+ }
+# endif
+
+ VideoSessionParametersKHR & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
+ {
+ m_videoSessionParametersKHR = {};
+ return *this;
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( VideoSessionParametersKHR const & ) const = default;
+# else
+ bool operator==( VideoSessionParametersKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_videoSessionParametersKHR == rhs.m_videoSessionParametersKHR;
+ }
+
+ bool operator!=( VideoSessionParametersKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_videoSessionParametersKHR != rhs.m_videoSessionParametersKHR;
+ }
+
+ bool operator<( VideoSessionParametersKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_videoSessionParametersKHR < rhs.m_videoSessionParametersKHR;
+ }
+# endif
+
+ VULKAN_HPP_TYPESAFE_EXPLICIT operator VkVideoSessionParametersKHR() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_videoSessionParametersKHR;
+ }
+
+ explicit operator bool() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_videoSessionParametersKHR != VK_NULL_HANDLE;
+ }
+
+ bool operator!() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_videoSessionParametersKHR == VK_NULL_HANDLE;
+ }
+
+ private:
+ VkVideoSessionParametersKHR m_videoSessionParametersKHR = {};
+ };
+ static_assert( sizeof( VULKAN_HPP_NAMESPACE::VideoSessionParametersKHR ) == sizeof( VkVideoSessionParametersKHR ),
+ "handle and wrapper have different size!" );
+
+ template <>
+ struct VULKAN_HPP_DEPRECATED(
+ "vk::cpp_type is deprecated. Use vk::CppType instead." ) cpp_type<ObjectType::eVideoSessionParametersKHR>
+ {
+ using type = VULKAN_HPP_NAMESPACE::VideoSessionParametersKHR;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eVideoSessionParametersKHR>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::VideoSessionParametersKHR;
+ };
+
+ template <>
+ struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::VideoSessionParametersKHR>
+ {
+ static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
+ };
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+ class Queue
+ {
+ public:
+ using CType = VkQueue;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eQueue;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eQueue;
+
+ public:
+ VULKAN_HPP_CONSTEXPR Queue() = default;
+ VULKAN_HPP_CONSTEXPR Queue( std::nullptr_t ) VULKAN_HPP_NOEXCEPT {}
+ VULKAN_HPP_TYPESAFE_EXPLICIT Queue( VkQueue queue ) VULKAN_HPP_NOEXCEPT : m_queue( queue ) {}
+
+#if defined( VULKAN_HPP_TYPESAFE_CONVERSION )
+ Queue & operator=( VkQueue queue ) VULKAN_HPP_NOEXCEPT
+ {
+ m_queue = queue;
+ return *this;
+ }
+#endif
+
+ Queue & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
+ {
+ m_queue = {};
+ return *this;
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( Queue const & ) const = default;
+#else
+ bool operator==( Queue const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_queue == rhs.m_queue;
+ }
+
+ bool operator!=( Queue const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_queue != rhs.m_queue;
+ }
+
+ bool operator<( Queue const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_queue < rhs.m_queue;
+ }
+#endif
+
+ //=== VK_VERSION_1_0 ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ submit( uint32_t submitCount,
+ const VULKAN_HPP_NAMESPACE::SubmitInfo * pSubmits,
+ VULKAN_HPP_NAMESPACE::Fence fence,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type
+ submit( ArrayProxy<const VULKAN_HPP_NAMESPACE::SubmitInfo> const & submits,
+ VULKAN_HPP_NAMESPACE::Fence fence VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ waitIdle( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#else
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type
+ waitIdle( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ bindSparse( uint32_t bindInfoCount,
+ const VULKAN_HPP_NAMESPACE::BindSparseInfo * pBindInfo,
+ VULKAN_HPP_NAMESPACE::Fence fence,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type
+ bindSparse( ArrayProxy<const VULKAN_HPP_NAMESPACE::BindSparseInfo> const & bindInfo,
+ VULKAN_HPP_NAMESPACE::Fence fence VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_KHR_swapchain ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ presentKHR( const VULKAN_HPP_NAMESPACE::PresentInfoKHR * pPresentInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result presentKHR( const PresentInfoKHR & presentInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_EXT_debug_utils ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void
+ beginDebugUtilsLabelEXT( const VULKAN_HPP_NAMESPACE::DebugUtilsLabelEXT * pLabelInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void
+ beginDebugUtilsLabelEXT( const DebugUtilsLabelEXT & labelInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void endDebugUtilsLabelEXT( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void
+ insertDebugUtilsLabelEXT( const VULKAN_HPP_NAMESPACE::DebugUtilsLabelEXT * pLabelInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void
+ insertDebugUtilsLabelEXT( const DebugUtilsLabelEXT & labelInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_NV_device_diagnostic_checkpoints ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void getCheckpointDataNV( uint32_t * pCheckpointDataCount,
+ VULKAN_HPP_NAMESPACE::CheckpointDataNV * pCheckpointData,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename CheckpointDataNVAllocator = std::allocator<CheckpointDataNV>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD std::vector<CheckpointDataNV, CheckpointDataNVAllocator>
+ getCheckpointDataNV( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename CheckpointDataNVAllocator = std::allocator<CheckpointDataNV>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename B = CheckpointDataNVAllocator,
+ typename std::enable_if<std::is_same<typename B::value_type, CheckpointDataNV>::value, int>::type = 0>
+ VULKAN_HPP_NODISCARD std::vector<CheckpointDataNV, CheckpointDataNVAllocator>
+ getCheckpointDataNV( CheckpointDataNVAllocator & checkpointDataNVAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_INTEL_performance_query ===
+
+#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result setPerformanceConfigurationINTEL(
+ VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL configuration,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#else
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type
+ setPerformanceConfigurationINTEL( VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL configuration,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_KHR_synchronization2 ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ submit2KHR( uint32_t submitCount,
+ const VULKAN_HPP_NAMESPACE::SubmitInfo2KHR * pSubmits,
+ VULKAN_HPP_NAMESPACE::Fence fence,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type
+ submit2KHR( ArrayProxy<const VULKAN_HPP_NAMESPACE::SubmitInfo2KHR> const & submits,
+ VULKAN_HPP_NAMESPACE::Fence fence VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void getCheckpointData2NV( uint32_t * pCheckpointDataCount,
+ VULKAN_HPP_NAMESPACE::CheckpointData2NV * pCheckpointData,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename CheckpointData2NVAllocator = std::allocator<CheckpointData2NV>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD std::vector<CheckpointData2NV, CheckpointData2NVAllocator>
+ getCheckpointData2NV( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename CheckpointData2NVAllocator = std::allocator<CheckpointData2NV>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename B = CheckpointData2NVAllocator,
+ typename std::enable_if<std::is_same<typename B::value_type, CheckpointData2NV>::value, int>::type = 0>
+ VULKAN_HPP_NODISCARD std::vector<CheckpointData2NV, CheckpointData2NVAllocator>
+ getCheckpointData2NV( CheckpointData2NVAllocator & checkpointData2NVAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ VULKAN_HPP_TYPESAFE_EXPLICIT operator VkQueue() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_queue;
+ }
+
+ explicit operator bool() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_queue != VK_NULL_HANDLE;
+ }
+
+ bool operator!() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_queue == VK_NULL_HANDLE;
+ }
+
+ private:
+ VkQueue m_queue = {};
+ };
+ static_assert( sizeof( VULKAN_HPP_NAMESPACE::Queue ) == sizeof( VkQueue ),
+ "handle and wrapper have different size!" );
+
+ template <>
+ struct VULKAN_HPP_DEPRECATED( "vk::cpp_type is deprecated. Use vk::CppType instead." ) cpp_type<ObjectType::eQueue>
+ {
+ using type = VULKAN_HPP_NAMESPACE::Queue;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eQueue>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::Queue;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT, VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eQueue>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::Queue;
+ };
+
+ template <>
+ struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::Queue>
+ {
+ static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
+ };
+
+#ifndef VULKAN_HPP_NO_SMART_HANDLE
+ class Device;
+ template <typename Dispatch>
+ class UniqueHandleTraits<AccelerationStructureKHR, Dispatch>
+ {
+ public:
+ using deleter = ObjectDestroy<Device, Dispatch>;
+ };
+ using UniqueAccelerationStructureKHR = UniqueHandle<AccelerationStructureKHR, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
+ template <typename Dispatch>
+ class UniqueHandleTraits<AccelerationStructureNV, Dispatch>
+ {
+ public:
+ using deleter = ObjectDestroy<Device, Dispatch>;
+ };
+ using UniqueAccelerationStructureNV = UniqueHandle<AccelerationStructureNV, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
+ template <typename Dispatch>
+ class UniqueHandleTraits<Buffer, Dispatch>
+ {
+ public:
+ using deleter = ObjectDestroy<Device, Dispatch>;
+ };
+ using UniqueBuffer = UniqueHandle<Buffer, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
+ template <typename Dispatch>
+ class UniqueHandleTraits<BufferView, Dispatch>
+ {
+ public:
+ using deleter = ObjectDestroy<Device, Dispatch>;
+ };
+ using UniqueBufferView = UniqueHandle<BufferView, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
+ template <typename Dispatch>
+ class UniqueHandleTraits<CommandBuffer, Dispatch>
+ {
+ public:
+ using deleter = PoolFree<Device, CommandPool, Dispatch>;
+ };
+ using UniqueCommandBuffer = UniqueHandle<CommandBuffer, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
+ template <typename Dispatch>
+ class UniqueHandleTraits<CommandPool, Dispatch>
+ {
+ public:
+ using deleter = ObjectDestroy<Device, Dispatch>;
+ };
+ using UniqueCommandPool = UniqueHandle<CommandPool, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
+ template <typename Dispatch>
+ class UniqueHandleTraits<CuFunctionNVX, Dispatch>
+ {
+ public:
+ using deleter = ObjectDestroy<Device, Dispatch>;
+ };
+ using UniqueCuFunctionNVX = UniqueHandle<CuFunctionNVX, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
+ template <typename Dispatch>
+ class UniqueHandleTraits<CuModuleNVX, Dispatch>
+ {
+ public:
+ using deleter = ObjectDestroy<Device, Dispatch>;
+ };
+ using UniqueCuModuleNVX = UniqueHandle<CuModuleNVX, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
+ template <typename Dispatch>
+ class UniqueHandleTraits<DeferredOperationKHR, Dispatch>
+ {
+ public:
+ using deleter = ObjectDestroy<Device, Dispatch>;
+ };
+ using UniqueDeferredOperationKHR = UniqueHandle<DeferredOperationKHR, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
+ template <typename Dispatch>
+ class UniqueHandleTraits<DescriptorPool, Dispatch>
+ {
+ public:
+ using deleter = ObjectDestroy<Device, Dispatch>;
+ };
+ using UniqueDescriptorPool = UniqueHandle<DescriptorPool, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
+ template <typename Dispatch>
+ class UniqueHandleTraits<DescriptorSet, Dispatch>
+ {
+ public:
+ using deleter = PoolFree<Device, DescriptorPool, Dispatch>;
+ };
+ using UniqueDescriptorSet = UniqueHandle<DescriptorSet, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
+ template <typename Dispatch>
+ class UniqueHandleTraits<DescriptorSetLayout, Dispatch>
+ {
+ public:
+ using deleter = ObjectDestroy<Device, Dispatch>;
+ };
+ using UniqueDescriptorSetLayout = UniqueHandle<DescriptorSetLayout, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
+ template <typename Dispatch>
+ class UniqueHandleTraits<DescriptorUpdateTemplate, Dispatch>
+ {
+ public:
+ using deleter = ObjectDestroy<Device, Dispatch>;
+ };
+ using UniqueDescriptorUpdateTemplate = UniqueHandle<DescriptorUpdateTemplate, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
+ using UniqueDescriptorUpdateTemplateKHR = UniqueHandle<DescriptorUpdateTemplate, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
+ template <typename Dispatch>
+ class UniqueHandleTraits<DeviceMemory, Dispatch>
+ {
+ public:
+ using deleter = ObjectFree<Device, Dispatch>;
+ };
+ using UniqueDeviceMemory = UniqueHandle<DeviceMemory, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
+ template <typename Dispatch>
+ class UniqueHandleTraits<Event, Dispatch>
+ {
+ public:
+ using deleter = ObjectDestroy<Device, Dispatch>;
+ };
+ using UniqueEvent = UniqueHandle<Event, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
+ template <typename Dispatch>
+ class UniqueHandleTraits<Fence, Dispatch>
+ {
+ public:
+ using deleter = ObjectDestroy<Device, Dispatch>;
+ };
+ using UniqueFence = UniqueHandle<Fence, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
+ template <typename Dispatch>
+ class UniqueHandleTraits<Framebuffer, Dispatch>
+ {
+ public:
+ using deleter = ObjectDestroy<Device, Dispatch>;
+ };
+ using UniqueFramebuffer = UniqueHandle<Framebuffer, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
+ template <typename Dispatch>
+ class UniqueHandleTraits<Image, Dispatch>
+ {
+ public:
+ using deleter = ObjectDestroy<Device, Dispatch>;
+ };
+ using UniqueImage = UniqueHandle<Image, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
+ template <typename Dispatch>
+ class UniqueHandleTraits<ImageView, Dispatch>
+ {
+ public:
+ using deleter = ObjectDestroy<Device, Dispatch>;
+ };
+ using UniqueImageView = UniqueHandle<ImageView, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
+ template <typename Dispatch>
+ class UniqueHandleTraits<IndirectCommandsLayoutNV, Dispatch>
+ {
+ public:
+ using deleter = ObjectDestroy<Device, Dispatch>;
+ };
+ using UniqueIndirectCommandsLayoutNV = UniqueHandle<IndirectCommandsLayoutNV, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
+ template <typename Dispatch>
+ class UniqueHandleTraits<Pipeline, Dispatch>
+ {
+ public:
+ using deleter = ObjectDestroy<Device, Dispatch>;
+ };
+ using UniquePipeline = UniqueHandle<Pipeline, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
+ template <typename Dispatch>
+ class UniqueHandleTraits<PipelineCache, Dispatch>
+ {
+ public:
+ using deleter = ObjectDestroy<Device, Dispatch>;
+ };
+ using UniquePipelineCache = UniqueHandle<PipelineCache, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
+ template <typename Dispatch>
+ class UniqueHandleTraits<PipelineLayout, Dispatch>
+ {
+ public:
+ using deleter = ObjectDestroy<Device, Dispatch>;
+ };
+ using UniquePipelineLayout = UniqueHandle<PipelineLayout, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
+ template <typename Dispatch>
+ class UniqueHandleTraits<PrivateDataSlotEXT, Dispatch>
+ {
+ public:
+ using deleter = ObjectDestroy<Device, Dispatch>;
+ };
+ using UniquePrivateDataSlotEXT = UniqueHandle<PrivateDataSlotEXT, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
+ template <typename Dispatch>
+ class UniqueHandleTraits<QueryPool, Dispatch>
+ {
+ public:
+ using deleter = ObjectDestroy<Device, Dispatch>;
+ };
+ using UniqueQueryPool = UniqueHandle<QueryPool, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
+ template <typename Dispatch>
+ class UniqueHandleTraits<RenderPass, Dispatch>
+ {
+ public:
+ using deleter = ObjectDestroy<Device, Dispatch>;
+ };
+ using UniqueRenderPass = UniqueHandle<RenderPass, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
+ template <typename Dispatch>
+ class UniqueHandleTraits<Sampler, Dispatch>
+ {
+ public:
+ using deleter = ObjectDestroy<Device, Dispatch>;
+ };
+ using UniqueSampler = UniqueHandle<Sampler, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
+ template <typename Dispatch>
+ class UniqueHandleTraits<SamplerYcbcrConversion, Dispatch>
+ {
+ public:
+ using deleter = ObjectDestroy<Device, Dispatch>;
+ };
+ using UniqueSamplerYcbcrConversion = UniqueHandle<SamplerYcbcrConversion, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
+ using UniqueSamplerYcbcrConversionKHR = UniqueHandle<SamplerYcbcrConversion, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
+ template <typename Dispatch>
+ class UniqueHandleTraits<Semaphore, Dispatch>
+ {
+ public:
+ using deleter = ObjectDestroy<Device, Dispatch>;
+ };
+ using UniqueSemaphore = UniqueHandle<Semaphore, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
+ template <typename Dispatch>
+ class UniqueHandleTraits<ShaderModule, Dispatch>
+ {
+ public:
+ using deleter = ObjectDestroy<Device, Dispatch>;
+ };
+ using UniqueShaderModule = UniqueHandle<ShaderModule, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
+ template <typename Dispatch>
+ class UniqueHandleTraits<SwapchainKHR, Dispatch>
+ {
+ public:
+ using deleter = ObjectDestroy<Device, Dispatch>;
+ };
+ using UniqueSwapchainKHR = UniqueHandle<SwapchainKHR, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
+ template <typename Dispatch>
+ class UniqueHandleTraits<ValidationCacheEXT, Dispatch>
+ {
+ public:
+ using deleter = ObjectDestroy<Device, Dispatch>;
+ };
+ using UniqueValidationCacheEXT = UniqueHandle<ValidationCacheEXT, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
+# if defined( VK_ENABLE_BETA_EXTENSIONS )
+ template <typename Dispatch>
+ class UniqueHandleTraits<VideoSessionKHR, Dispatch>
+ {
+ public:
+ using deleter = ObjectDestroy<Device, Dispatch>;
+ };
+ using UniqueVideoSessionKHR = UniqueHandle<VideoSessionKHR, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
+# endif /*VK_ENABLE_BETA_EXTENSIONS*/
+# if defined( VK_ENABLE_BETA_EXTENSIONS )
+ template <typename Dispatch>
+ class UniqueHandleTraits<VideoSessionParametersKHR, Dispatch>
+ {
+ public:
+ using deleter = ObjectDestroy<Device, Dispatch>;
+ };
+ using UniqueVideoSessionParametersKHR = UniqueHandle<VideoSessionParametersKHR, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
+# endif /*VK_ENABLE_BETA_EXTENSIONS*/
+#endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+
+ class Device
+ {
+ public:
+ using CType = VkDevice;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eDevice;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eDevice;
+
+ public:
+ VULKAN_HPP_CONSTEXPR Device() = default;
+ VULKAN_HPP_CONSTEXPR Device( std::nullptr_t ) VULKAN_HPP_NOEXCEPT {}
+ VULKAN_HPP_TYPESAFE_EXPLICIT Device( VkDevice device ) VULKAN_HPP_NOEXCEPT : m_device( device ) {}
+
+#if defined( VULKAN_HPP_TYPESAFE_CONVERSION )
+ Device & operator=( VkDevice device ) VULKAN_HPP_NOEXCEPT
+ {
+ m_device = device;
+ return *this;
+ }
+#endif
+
+ Device & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
+ {
+ m_device = {};
+ return *this;
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( Device const & ) const = default;
+#else
+ bool operator==( Device const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_device == rhs.m_device;
+ }
+
+ bool operator!=( Device const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_device != rhs.m_device;
+ }
+
+ bool operator<( Device const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_device < rhs.m_device;
+ }
+#endif
+
+ //=== VK_VERSION_1_0 ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ PFN_vkVoidFunction
+ getProcAddr( const char * pName,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ PFN_vkVoidFunction
+ getProcAddr( const std::string & name,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void getQueue( uint32_t queueFamilyIndex,
+ uint32_t queueIndex,
+ VULKAN_HPP_NAMESPACE::Queue * pQueue,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::Queue
+ getQueue( uint32_t queueFamilyIndex,
+ uint32_t queueIndex,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ waitIdle( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#else
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type
+ waitIdle( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ allocateMemory( const VULKAN_HPP_NAMESPACE::MemoryAllocateInfo * pAllocateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::DeviceMemory * pMemory,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::DeviceMemory>::type
+ allocateMemory( const MemoryAllocateInfo & allocateInfo,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::DeviceMemory, Dispatch>>::type
+ allocateMemoryUnique( const MemoryAllocateInfo & allocateInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void freeMemory( VULKAN_HPP_NAMESPACE::DeviceMemory memory,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void freeMemory( VULKAN_HPP_NAMESPACE::DeviceMemory memory VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void free( VULKAN_HPP_NAMESPACE::DeviceMemory memory,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void free( VULKAN_HPP_NAMESPACE::DeviceMemory memory,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ mapMemory( VULKAN_HPP_NAMESPACE::DeviceMemory memory,
+ VULKAN_HPP_NAMESPACE::DeviceSize offset,
+ VULKAN_HPP_NAMESPACE::DeviceSize size,
+ VULKAN_HPP_NAMESPACE::MemoryMapFlags flags,
+ void ** ppData,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void *>::type
+ mapMemory( VULKAN_HPP_NAMESPACE::DeviceMemory memory,
+ VULKAN_HPP_NAMESPACE::DeviceSize offset,
+ VULKAN_HPP_NAMESPACE::DeviceSize size,
+ VULKAN_HPP_NAMESPACE::MemoryMapFlags flags VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void unmapMemory( VULKAN_HPP_NAMESPACE::DeviceMemory memory,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ flushMappedMemoryRanges( uint32_t memoryRangeCount,
+ const VULKAN_HPP_NAMESPACE::MappedMemoryRange * pMemoryRanges,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type
+ flushMappedMemoryRanges( ArrayProxy<const VULKAN_HPP_NAMESPACE::MappedMemoryRange> const & memoryRanges,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result invalidateMappedMemoryRanges(
+ uint32_t memoryRangeCount,
+ const VULKAN_HPP_NAMESPACE::MappedMemoryRange * pMemoryRanges,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type
+ invalidateMappedMemoryRanges( ArrayProxy<const VULKAN_HPP_NAMESPACE::MappedMemoryRange> const & memoryRanges,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void getMemoryCommitment( VULKAN_HPP_NAMESPACE::DeviceMemory memory,
+ VULKAN_HPP_NAMESPACE::DeviceSize * pCommittedMemoryInBytes,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::DeviceSize
+ getMemoryCommitment( VULKAN_HPP_NAMESPACE::DeviceMemory memory,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ bindBufferMemory( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ VULKAN_HPP_NAMESPACE::DeviceMemory memory,
+ VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#else
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type
+ bindBufferMemory( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ VULKAN_HPP_NAMESPACE::DeviceMemory memory,
+ VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ bindImageMemory( VULKAN_HPP_NAMESPACE::Image image,
+ VULKAN_HPP_NAMESPACE::DeviceMemory memory,
+ VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#else
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type
+ bindImageMemory( VULKAN_HPP_NAMESPACE::Image image,
+ VULKAN_HPP_NAMESPACE::DeviceMemory memory,
+ VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void getBufferMemoryRequirements( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ VULKAN_HPP_NAMESPACE::MemoryRequirements * pMemoryRequirements,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::MemoryRequirements getBufferMemoryRequirements(
+ VULKAN_HPP_NAMESPACE::Buffer buffer,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void getImageMemoryRequirements( VULKAN_HPP_NAMESPACE::Image image,
+ VULKAN_HPP_NAMESPACE::MemoryRequirements * pMemoryRequirements,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::MemoryRequirements getImageMemoryRequirements(
+ VULKAN_HPP_NAMESPACE::Image image,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void getImageSparseMemoryRequirements(
+ VULKAN_HPP_NAMESPACE::Image image,
+ uint32_t * pSparseMemoryRequirementCount,
+ VULKAN_HPP_NAMESPACE::SparseImageMemoryRequirements * pSparseMemoryRequirements,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename SparseImageMemoryRequirementsAllocator = std::allocator<SparseImageMemoryRequirements>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD std::vector<SparseImageMemoryRequirements, SparseImageMemoryRequirementsAllocator>
+ getImageSparseMemoryRequirements( VULKAN_HPP_NAMESPACE::Image image,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename SparseImageMemoryRequirementsAllocator = std::allocator<SparseImageMemoryRequirements>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename B = SparseImageMemoryRequirementsAllocator,
+ typename std::enable_if<std::is_same<typename B::value_type, SparseImageMemoryRequirements>::value,
+ int>::type = 0>
+ VULKAN_HPP_NODISCARD std::vector<SparseImageMemoryRequirements, SparseImageMemoryRequirementsAllocator>
+ getImageSparseMemoryRequirements( VULKAN_HPP_NAMESPACE::Image image,
+ SparseImageMemoryRequirementsAllocator & sparseImageMemoryRequirementsAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ createFence( const VULKAN_HPP_NAMESPACE::FenceCreateInfo * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::Fence * pFence,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::Fence>::type
+ createFence( const FenceCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::Fence, Dispatch>>::type
+ createFenceUnique( const FenceCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroyFence( VULKAN_HPP_NAMESPACE::Fence fence,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroyFence( VULKAN_HPP_NAMESPACE::Fence fence VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::Fence fence,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::Fence fence,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ resetFences( uint32_t fenceCount,
+ const VULKAN_HPP_NAMESPACE::Fence * pFences,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ typename ResultValueType<void>::type
+ resetFences( ArrayProxy<const VULKAN_HPP_NAMESPACE::Fence> const & fences,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ getFenceStatus( VULKAN_HPP_NAMESPACE::Fence fence,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#else
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result getFenceStatus( VULKAN_HPP_NAMESPACE::Fence fence,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ waitForFences( uint32_t fenceCount,
+ const VULKAN_HPP_NAMESPACE::Fence * pFences,
+ VULKAN_HPP_NAMESPACE::Bool32 waitAll,
+ uint64_t timeout,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result waitForFences( ArrayProxy<const VULKAN_HPP_NAMESPACE::Fence> const & fences,
+ VULKAN_HPP_NAMESPACE::Bool32 waitAll,
+ uint64_t timeout,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ createSemaphore( const VULKAN_HPP_NAMESPACE::SemaphoreCreateInfo * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::Semaphore * pSemaphore,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::Semaphore>::type
+ createSemaphore( const SemaphoreCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::Semaphore, Dispatch>>::type
+ createSemaphoreUnique( const SemaphoreCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroySemaphore( VULKAN_HPP_NAMESPACE::Semaphore semaphore,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroySemaphore( VULKAN_HPP_NAMESPACE::Semaphore semaphore VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::Semaphore semaphore,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::Semaphore semaphore,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ createEvent( const VULKAN_HPP_NAMESPACE::EventCreateInfo * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::Event * pEvent,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::Event>::type
+ createEvent( const EventCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::Event, Dispatch>>::type
+ createEventUnique( const EventCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroyEvent( VULKAN_HPP_NAMESPACE::Event event,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroyEvent( VULKAN_HPP_NAMESPACE::Event event VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::Event event,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::Event event,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ getEventStatus( VULKAN_HPP_NAMESPACE::Event event,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#else
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result getEventStatus( VULKAN_HPP_NAMESPACE::Event event,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ setEvent( VULKAN_HPP_NAMESPACE::Event event,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#else
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type
+ setEvent( VULKAN_HPP_NAMESPACE::Event event, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ resetEvent( VULKAN_HPP_NAMESPACE::Event event,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#else
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ typename ResultValueType<void>::type
+ resetEvent( VULKAN_HPP_NAMESPACE::Event event,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ createQueryPool( const VULKAN_HPP_NAMESPACE::QueryPoolCreateInfo * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::QueryPool * pQueryPool,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::QueryPool>::type
+ createQueryPool( const QueryPoolCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::QueryPool, Dispatch>>::type
+ createQueryPoolUnique( const QueryPoolCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroyQueryPool( VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroyQueryPool( VULKAN_HPP_NAMESPACE::QueryPool queryPool VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ getQueryPoolResults( VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ uint32_t firstQuery,
+ uint32_t queryCount,
+ size_t dataSize,
+ void * pData,
+ VULKAN_HPP_NAMESPACE::DeviceSize stride,
+ VULKAN_HPP_NAMESPACE::QueryResultFlags flags,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename T, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ getQueryPoolResults( VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ uint32_t firstQuery,
+ uint32_t queryCount,
+ ArrayProxy<T> const & data,
+ VULKAN_HPP_NAMESPACE::DeviceSize stride,
+ VULKAN_HPP_NAMESPACE::QueryResultFlags flags,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename T,
+ typename Allocator = std::allocator<T>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD ResultValue<std::vector<T, Allocator>>
+ getQueryPoolResults( VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ uint32_t firstQuery,
+ uint32_t queryCount,
+ size_t dataSize,
+ VULKAN_HPP_NAMESPACE::DeviceSize stride,
+ VULKAN_HPP_NAMESPACE::QueryResultFlags flags VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename T, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD ResultValue<T>
+ getQueryPoolResult( VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ uint32_t firstQuery,
+ uint32_t queryCount,
+ VULKAN_HPP_NAMESPACE::DeviceSize stride,
+ VULKAN_HPP_NAMESPACE::QueryResultFlags flags VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ createBuffer( const VULKAN_HPP_NAMESPACE::BufferCreateInfo * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::Buffer * pBuffer,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::Buffer>::type
+ createBuffer( const BufferCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::Buffer, Dispatch>>::type
+ createBufferUnique( const BufferCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroyBuffer( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroyBuffer( VULKAN_HPP_NAMESPACE::Buffer buffer VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ createBufferView( const VULKAN_HPP_NAMESPACE::BufferViewCreateInfo * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::BufferView * pView,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::BufferView>::type
+ createBufferView( const BufferViewCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::BufferView, Dispatch>>::type
+ createBufferViewUnique( const BufferViewCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroyBufferView( VULKAN_HPP_NAMESPACE::BufferView bufferView,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void
+ destroyBufferView( VULKAN_HPP_NAMESPACE::BufferView bufferView VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::BufferView bufferView,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::BufferView bufferView,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ createImage( const VULKAN_HPP_NAMESPACE::ImageCreateInfo * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::Image * pImage,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::Image>::type
+ createImage( const ImageCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::Image, Dispatch>>::type
+ createImageUnique( const ImageCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroyImage( VULKAN_HPP_NAMESPACE::Image image,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroyImage( VULKAN_HPP_NAMESPACE::Image image VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::Image image,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::Image image,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void getImageSubresourceLayout( VULKAN_HPP_NAMESPACE::Image image,
+ const VULKAN_HPP_NAMESPACE::ImageSubresource * pSubresource,
+ VULKAN_HPP_NAMESPACE::SubresourceLayout * pLayout,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::SubresourceLayout getImageSubresourceLayout(
+ VULKAN_HPP_NAMESPACE::Image image,
+ const ImageSubresource & subresource,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ createImageView( const VULKAN_HPP_NAMESPACE::ImageViewCreateInfo * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::ImageView * pView,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::ImageView>::type
+ createImageView( const ImageViewCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::ImageView, Dispatch>>::type
+ createImageViewUnique( const ImageViewCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroyImageView( VULKAN_HPP_NAMESPACE::ImageView imageView,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroyImageView( VULKAN_HPP_NAMESPACE::ImageView imageView VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::ImageView imageView,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::ImageView imageView,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ createShaderModule( const VULKAN_HPP_NAMESPACE::ShaderModuleCreateInfo * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::ShaderModule * pShaderModule,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::ShaderModule>::type
+ createShaderModule( const ShaderModuleCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::ShaderModule, Dispatch>>::type
+ createShaderModuleUnique( const ShaderModuleCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroyShaderModule( VULKAN_HPP_NAMESPACE::ShaderModule shaderModule,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void
+ destroyShaderModule( VULKAN_HPP_NAMESPACE::ShaderModule shaderModule VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::ShaderModule shaderModule,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::ShaderModule shaderModule,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ createPipelineCache( const VULKAN_HPP_NAMESPACE::PipelineCacheCreateInfo * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::PipelineCache * pPipelineCache,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::PipelineCache>::type
+ createPipelineCache( const PipelineCacheCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::PipelineCache, Dispatch>>::type
+ createPipelineCacheUnique( const PipelineCacheCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroyPipelineCache( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroyPipelineCache( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ getPipelineCacheData( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ size_t * pDataSize,
+ void * pData,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Uint8_tAllocator = std::allocator<uint8_t>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<uint8_t, Uint8_tAllocator>>::type
+ getPipelineCacheData( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename Uint8_tAllocator = std::allocator<uint8_t>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename B = Uint8_tAllocator,
+ typename std::enable_if<std::is_same<typename B::value_type, uint8_t>::value, int>::type = 0>
+ VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<uint8_t, Uint8_tAllocator>>::type
+ getPipelineCacheData( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ Uint8_tAllocator & uint8_tAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ mergePipelineCaches( VULKAN_HPP_NAMESPACE::PipelineCache dstCache,
+ uint32_t srcCacheCount,
+ const VULKAN_HPP_NAMESPACE::PipelineCache * pSrcCaches,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type
+ mergePipelineCaches( VULKAN_HPP_NAMESPACE::PipelineCache dstCache,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::PipelineCache> const & srcCaches,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ createGraphicsPipelines( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ uint32_t createInfoCount,
+ const VULKAN_HPP_NAMESPACE::GraphicsPipelineCreateInfo * pCreateInfos,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::Pipeline * pPipelines,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename PipelineAllocator = std::allocator<Pipeline>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD ResultValue<std::vector<Pipeline, PipelineAllocator>> createGraphicsPipelines(
+ VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::GraphicsPipelineCreateInfo> const & createInfos,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename PipelineAllocator = std::allocator<Pipeline>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename B = PipelineAllocator,
+ typename std::enable_if<std::is_same<typename B::value_type, Pipeline>::value, int>::type = 0>
+ VULKAN_HPP_NODISCARD ResultValue<std::vector<Pipeline, PipelineAllocator>>
+ createGraphicsPipelines( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::GraphicsPipelineCreateInfo> const & createInfos,
+ Optional<const AllocationCallbacks> allocator,
+ PipelineAllocator & pipelineAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD ResultValue<Pipeline> createGraphicsPipeline(
+ VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ const VULKAN_HPP_NAMESPACE::GraphicsPipelineCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename PipelineAllocator = std::allocator<UniqueHandle<Pipeline, Dispatch>>>
+ VULKAN_HPP_NODISCARD ResultValue<std::vector<UniqueHandle<Pipeline, Dispatch>, PipelineAllocator>>
+ createGraphicsPipelinesUnique(
+ VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::GraphicsPipelineCreateInfo> const & createInfos,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename PipelineAllocator = std::allocator<UniqueHandle<Pipeline, Dispatch>>,
+ typename B = PipelineAllocator,
+ typename std::enable_if<std::is_same<typename B::value_type, UniqueHandle<Pipeline, Dispatch>>::value,
+ int>::type = 0>
+ VULKAN_HPP_NODISCARD ResultValue<std::vector<UniqueHandle<Pipeline, Dispatch>, PipelineAllocator>>
+ createGraphicsPipelinesUnique(
+ VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::GraphicsPipelineCreateInfo> const & createInfos,
+ Optional<const AllocationCallbacks> allocator,
+ PipelineAllocator & pipelineAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD ResultValue<UniqueHandle<Pipeline, Dispatch>> createGraphicsPipelineUnique(
+ VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ const VULKAN_HPP_NAMESPACE::GraphicsPipelineCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ createComputePipelines( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ uint32_t createInfoCount,
+ const VULKAN_HPP_NAMESPACE::ComputePipelineCreateInfo * pCreateInfos,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::Pipeline * pPipelines,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename PipelineAllocator = std::allocator<Pipeline>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD ResultValue<std::vector<Pipeline, PipelineAllocator>> createComputePipelines(
+ VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::ComputePipelineCreateInfo> const & createInfos,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename PipelineAllocator = std::allocator<Pipeline>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename B = PipelineAllocator,
+ typename std::enable_if<std::is_same<typename B::value_type, Pipeline>::value, int>::type = 0>
+ VULKAN_HPP_NODISCARD ResultValue<std::vector<Pipeline, PipelineAllocator>>
+ createComputePipelines( VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::ComputePipelineCreateInfo> const & createInfos,
+ Optional<const AllocationCallbacks> allocator,
+ PipelineAllocator & pipelineAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD ResultValue<Pipeline> createComputePipeline(
+ VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ const VULKAN_HPP_NAMESPACE::ComputePipelineCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename PipelineAllocator = std::allocator<UniqueHandle<Pipeline, Dispatch>>>
+ VULKAN_HPP_NODISCARD ResultValue<std::vector<UniqueHandle<Pipeline, Dispatch>, PipelineAllocator>>
+ createComputePipelinesUnique(
+ VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::ComputePipelineCreateInfo> const & createInfos,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename PipelineAllocator = std::allocator<UniqueHandle<Pipeline, Dispatch>>,
+ typename B = PipelineAllocator,
+ typename std::enable_if<std::is_same<typename B::value_type, UniqueHandle<Pipeline, Dispatch>>::value,
+ int>::type = 0>
+ VULKAN_HPP_NODISCARD ResultValue<std::vector<UniqueHandle<Pipeline, Dispatch>, PipelineAllocator>>
+ createComputePipelinesUnique(
+ VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::ComputePipelineCreateInfo> const & createInfos,
+ Optional<const AllocationCallbacks> allocator,
+ PipelineAllocator & pipelineAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD ResultValue<UniqueHandle<Pipeline, Dispatch>> createComputePipelineUnique(
+ VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ const VULKAN_HPP_NAMESPACE::ComputePipelineCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroyPipeline( VULKAN_HPP_NAMESPACE::Pipeline pipeline,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroyPipeline( VULKAN_HPP_NAMESPACE::Pipeline pipeline VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::Pipeline pipeline,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::Pipeline pipeline,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ createPipelineLayout( const VULKAN_HPP_NAMESPACE::PipelineLayoutCreateInfo * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::PipelineLayout * pPipelineLayout,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::PipelineLayout>::type
+ createPipelineLayout( const PipelineLayoutCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::PipelineLayout, Dispatch>>::type
+ createPipelineLayoutUnique( const PipelineLayoutCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroyPipelineLayout( VULKAN_HPP_NAMESPACE::PipelineLayout pipelineLayout,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroyPipelineLayout(
+ VULKAN_HPP_NAMESPACE::PipelineLayout pipelineLayout VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::PipelineLayout pipelineLayout,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::PipelineLayout pipelineLayout,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ createSampler( const VULKAN_HPP_NAMESPACE::SamplerCreateInfo * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::Sampler * pSampler,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::Sampler>::type
+ createSampler( const SamplerCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::Sampler, Dispatch>>::type
+ createSamplerUnique( const SamplerCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroySampler( VULKAN_HPP_NAMESPACE::Sampler sampler,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroySampler( VULKAN_HPP_NAMESPACE::Sampler sampler VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::Sampler sampler,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::Sampler sampler,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result createDescriptorSetLayout(
+ const VULKAN_HPP_NAMESPACE::DescriptorSetLayoutCreateInfo * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::DescriptorSetLayout * pSetLayout,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::DescriptorSetLayout>::type
+ createDescriptorSetLayout( const DescriptorSetLayoutCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::DescriptorSetLayout, Dispatch>>::type
+ createDescriptorSetLayoutUnique( const DescriptorSetLayoutCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroyDescriptorSetLayout( VULKAN_HPP_NAMESPACE::DescriptorSetLayout descriptorSetLayout,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroyDescriptorSetLayout(
+ VULKAN_HPP_NAMESPACE::DescriptorSetLayout descriptorSetLayout VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::DescriptorSetLayout descriptorSetLayout,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::DescriptorSetLayout descriptorSetLayout,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ createDescriptorPool( const VULKAN_HPP_NAMESPACE::DescriptorPoolCreateInfo * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::DescriptorPool * pDescriptorPool,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::DescriptorPool>::type
+ createDescriptorPool( const DescriptorPoolCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::DescriptorPool, Dispatch>>::type
+ createDescriptorPoolUnique( const DescriptorPoolCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroyDescriptorPool( VULKAN_HPP_NAMESPACE::DescriptorPool descriptorPool,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroyDescriptorPool(
+ VULKAN_HPP_NAMESPACE::DescriptorPool descriptorPool VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::DescriptorPool descriptorPool,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::DescriptorPool descriptorPool,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ Result resetDescriptorPool( VULKAN_HPP_NAMESPACE::DescriptorPool descriptorPool,
+ VULKAN_HPP_NAMESPACE::DescriptorPoolResetFlags flags,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#else
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ typename ResultValueType<void>::type
+ resetDescriptorPool( VULKAN_HPP_NAMESPACE::DescriptorPool descriptorPool,
+ VULKAN_HPP_NAMESPACE::DescriptorPoolResetFlags flags VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ allocateDescriptorSets( const VULKAN_HPP_NAMESPACE::DescriptorSetAllocateInfo * pAllocateInfo,
+ VULKAN_HPP_NAMESPACE::DescriptorSet * pDescriptorSets,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename DescriptorSetAllocator = std::allocator<DescriptorSet>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS
+ typename ResultValueType<std::vector<DescriptorSet, DescriptorSetAllocator>>::type
+ allocateDescriptorSets( const DescriptorSetAllocateInfo & allocateInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename DescriptorSetAllocator = std::allocator<DescriptorSet>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename B = DescriptorSetAllocator,
+ typename std::enable_if<std::is_same<typename B::value_type, DescriptorSet>::value, int>::type = 0>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS
+ typename ResultValueType<std::vector<DescriptorSet, DescriptorSetAllocator>>::type
+ allocateDescriptorSets( const DescriptorSetAllocateInfo & allocateInfo,
+ DescriptorSetAllocator & descriptorSetAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename DescriptorSetAllocator = std::allocator<UniqueHandle<DescriptorSet, Dispatch>>>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS
+ typename ResultValueType<std::vector<UniqueHandle<DescriptorSet, Dispatch>, DescriptorSetAllocator>>::type
+ allocateDescriptorSetsUnique( const DescriptorSetAllocateInfo & allocateInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename DescriptorSetAllocator = std::allocator<UniqueHandle<DescriptorSet, Dispatch>>,
+ typename B = DescriptorSetAllocator,
+ typename std::enable_if<std::is_same<typename B::value_type, UniqueHandle<DescriptorSet, Dispatch>>::value,
+ int>::type = 0>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS
+ typename ResultValueType<std::vector<UniqueHandle<DescriptorSet, Dispatch>, DescriptorSetAllocator>>::type
+ allocateDescriptorSetsUnique( const DescriptorSetAllocateInfo & allocateInfo,
+ DescriptorSetAllocator & descriptorSetAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ Result freeDescriptorSets( VULKAN_HPP_NAMESPACE::DescriptorPool descriptorPool,
+ uint32_t descriptorSetCount,
+ const VULKAN_HPP_NAMESPACE::DescriptorSet * pDescriptorSets,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ typename ResultValueType<void>::type
+ freeDescriptorSets( VULKAN_HPP_NAMESPACE::DescriptorPool descriptorPool,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::DescriptorSet> const & descriptorSets,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ Result free( VULKAN_HPP_NAMESPACE::DescriptorPool descriptorPool,
+ uint32_t descriptorSetCount,
+ const VULKAN_HPP_NAMESPACE::DescriptorSet * pDescriptorSets,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ typename ResultValueType<void>::type
+ free( VULKAN_HPP_NAMESPACE::DescriptorPool descriptorPool,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::DescriptorSet> const & descriptorSets,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void updateDescriptorSets( uint32_t descriptorWriteCount,
+ const VULKAN_HPP_NAMESPACE::WriteDescriptorSet * pDescriptorWrites,
+ uint32_t descriptorCopyCount,
+ const VULKAN_HPP_NAMESPACE::CopyDescriptorSet * pDescriptorCopies,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void updateDescriptorSets( ArrayProxy<const VULKAN_HPP_NAMESPACE::WriteDescriptorSet> const & descriptorWrites,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::CopyDescriptorSet> const & descriptorCopies,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ createFramebuffer( const VULKAN_HPP_NAMESPACE::FramebufferCreateInfo * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::Framebuffer * pFramebuffer,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::Framebuffer>::type
+ createFramebuffer( const FramebufferCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::Framebuffer, Dispatch>>::type
+ createFramebufferUnique( const FramebufferCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroyFramebuffer( VULKAN_HPP_NAMESPACE::Framebuffer framebuffer,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void
+ destroyFramebuffer( VULKAN_HPP_NAMESPACE::Framebuffer framebuffer VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::Framebuffer framebuffer,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::Framebuffer framebuffer,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ createRenderPass( const VULKAN_HPP_NAMESPACE::RenderPassCreateInfo * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::RenderPass * pRenderPass,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::RenderPass>::type
+ createRenderPass( const RenderPassCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::RenderPass, Dispatch>>::type
+ createRenderPassUnique( const RenderPassCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroyRenderPass( VULKAN_HPP_NAMESPACE::RenderPass renderPass,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void
+ destroyRenderPass( VULKAN_HPP_NAMESPACE::RenderPass renderPass VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::RenderPass renderPass,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::RenderPass renderPass,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void
+ getRenderAreaGranularity( VULKAN_HPP_NAMESPACE::RenderPass renderPass,
+ VULKAN_HPP_NAMESPACE::Extent2D * pGranularity,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::Extent2D
+ getRenderAreaGranularity( VULKAN_HPP_NAMESPACE::RenderPass renderPass,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ createCommandPool( const VULKAN_HPP_NAMESPACE::CommandPoolCreateInfo * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::CommandPool * pCommandPool,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::CommandPool>::type
+ createCommandPool( const CommandPoolCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::CommandPool, Dispatch>>::type
+ createCommandPoolUnique( const CommandPoolCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroyCommandPool( VULKAN_HPP_NAMESPACE::CommandPool commandPool,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void
+ destroyCommandPool( VULKAN_HPP_NAMESPACE::CommandPool commandPool VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::CommandPool commandPool,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::CommandPool commandPool,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ resetCommandPool( VULKAN_HPP_NAMESPACE::CommandPool commandPool,
+ VULKAN_HPP_NAMESPACE::CommandPoolResetFlags flags,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#else
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ typename ResultValueType<void>::type
+ resetCommandPool( VULKAN_HPP_NAMESPACE::CommandPool commandPool,
+ VULKAN_HPP_NAMESPACE::CommandPoolResetFlags flags VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ allocateCommandBuffers( const VULKAN_HPP_NAMESPACE::CommandBufferAllocateInfo * pAllocateInfo,
+ VULKAN_HPP_NAMESPACE::CommandBuffer * pCommandBuffers,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename CommandBufferAllocator = std::allocator<CommandBuffer>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS
+ typename ResultValueType<std::vector<CommandBuffer, CommandBufferAllocator>>::type
+ allocateCommandBuffers( const CommandBufferAllocateInfo & allocateInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename CommandBufferAllocator = std::allocator<CommandBuffer>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename B = CommandBufferAllocator,
+ typename std::enable_if<std::is_same<typename B::value_type, CommandBuffer>::value, int>::type = 0>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS
+ typename ResultValueType<std::vector<CommandBuffer, CommandBufferAllocator>>::type
+ allocateCommandBuffers( const CommandBufferAllocateInfo & allocateInfo,
+ CommandBufferAllocator & commandBufferAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename CommandBufferAllocator = std::allocator<UniqueHandle<CommandBuffer, Dispatch>>>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS
+ typename ResultValueType<std::vector<UniqueHandle<CommandBuffer, Dispatch>, CommandBufferAllocator>>::type
+ allocateCommandBuffersUnique( const CommandBufferAllocateInfo & allocateInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename CommandBufferAllocator = std::allocator<UniqueHandle<CommandBuffer, Dispatch>>,
+ typename B = CommandBufferAllocator,
+ typename std::enable_if<std::is_same<typename B::value_type, UniqueHandle<CommandBuffer, Dispatch>>::value,
+ int>::type = 0>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS
+ typename ResultValueType<std::vector<UniqueHandle<CommandBuffer, Dispatch>, CommandBufferAllocator>>::type
+ allocateCommandBuffersUnique( const CommandBufferAllocateInfo & allocateInfo,
+ CommandBufferAllocator & commandBufferAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void freeCommandBuffers( VULKAN_HPP_NAMESPACE::CommandPool commandPool,
+ uint32_t commandBufferCount,
+ const VULKAN_HPP_NAMESPACE::CommandBuffer * pCommandBuffers,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void freeCommandBuffers( VULKAN_HPP_NAMESPACE::CommandPool commandPool,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::CommandBuffer> const & commandBuffers,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void free( VULKAN_HPP_NAMESPACE::CommandPool commandPool,
+ uint32_t commandBufferCount,
+ const VULKAN_HPP_NAMESPACE::CommandBuffer * pCommandBuffers,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void free( VULKAN_HPP_NAMESPACE::CommandPool commandPool,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::CommandBuffer> const & commandBuffers,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_VERSION_1_1 ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ bindBufferMemory2( uint32_t bindInfoCount,
+ const VULKAN_HPP_NAMESPACE::BindBufferMemoryInfo * pBindInfos,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type
+ bindBufferMemory2( ArrayProxy<const VULKAN_HPP_NAMESPACE::BindBufferMemoryInfo> const & bindInfos,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ bindImageMemory2( uint32_t bindInfoCount,
+ const VULKAN_HPP_NAMESPACE::BindImageMemoryInfo * pBindInfos,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type
+ bindImageMemory2( ArrayProxy<const VULKAN_HPP_NAMESPACE::BindImageMemoryInfo> const & bindInfos,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void getGroupPeerMemoryFeatures( uint32_t heapIndex,
+ uint32_t localDeviceIndex,
+ uint32_t remoteDeviceIndex,
+ VULKAN_HPP_NAMESPACE::PeerMemoryFeatureFlags * pPeerMemoryFeatures,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::PeerMemoryFeatureFlags getGroupPeerMemoryFeatures(
+ uint32_t heapIndex,
+ uint32_t localDeviceIndex,
+ uint32_t remoteDeviceIndex,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void getImageMemoryRequirements2( const VULKAN_HPP_NAMESPACE::ImageMemoryRequirementsInfo2 * pInfo,
+ VULKAN_HPP_NAMESPACE::MemoryRequirements2 * pMemoryRequirements,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::MemoryRequirements2 getImageMemoryRequirements2(
+ const ImageMemoryRequirementsInfo2 & info,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+ template <typename X, typename Y, typename... Z, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD StructureChain<X, Y, Z...> getImageMemoryRequirements2(
+ const ImageMemoryRequirementsInfo2 & info,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void getBufferMemoryRequirements2( const VULKAN_HPP_NAMESPACE::BufferMemoryRequirementsInfo2 * pInfo,
+ VULKAN_HPP_NAMESPACE::MemoryRequirements2 * pMemoryRequirements,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::MemoryRequirements2 getBufferMemoryRequirements2(
+ const BufferMemoryRequirementsInfo2 & info,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+ template <typename X, typename Y, typename... Z, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD StructureChain<X, Y, Z...> getBufferMemoryRequirements2(
+ const BufferMemoryRequirementsInfo2 & info,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void getImageSparseMemoryRequirements2(
+ const VULKAN_HPP_NAMESPACE::ImageSparseMemoryRequirementsInfo2 * pInfo,
+ uint32_t * pSparseMemoryRequirementCount,
+ VULKAN_HPP_NAMESPACE::SparseImageMemoryRequirements2 * pSparseMemoryRequirements,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename SparseImageMemoryRequirements2Allocator = std::allocator<SparseImageMemoryRequirements2>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD std::vector<SparseImageMemoryRequirements2, SparseImageMemoryRequirements2Allocator>
+ getImageSparseMemoryRequirements2( const ImageSparseMemoryRequirementsInfo2 & info,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename SparseImageMemoryRequirements2Allocator = std::allocator<SparseImageMemoryRequirements2>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename B = SparseImageMemoryRequirements2Allocator,
+ typename std::enable_if<std::is_same<typename B::value_type, SparseImageMemoryRequirements2>::value,
+ int>::type = 0>
+ VULKAN_HPP_NODISCARD std::vector<SparseImageMemoryRequirements2, SparseImageMemoryRequirements2Allocator>
+ getImageSparseMemoryRequirements2(
+ const ImageSparseMemoryRequirementsInfo2 & info,
+ SparseImageMemoryRequirements2Allocator & sparseImageMemoryRequirements2Allocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void trimCommandPool( VULKAN_HPP_NAMESPACE::CommandPool commandPool,
+ VULKAN_HPP_NAMESPACE::CommandPoolTrimFlags flags,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void getQueue2( const VULKAN_HPP_NAMESPACE::DeviceQueueInfo2 * pQueueInfo,
+ VULKAN_HPP_NAMESPACE::Queue * pQueue,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::Queue
+ getQueue2( const DeviceQueueInfo2 & queueInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result createSamplerYcbcrConversion(
+ const VULKAN_HPP_NAMESPACE::SamplerYcbcrConversionCreateInfo * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion * pYcbcrConversion,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion>::type
+ createSamplerYcbcrConversion( const SamplerYcbcrConversionCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion, Dispatch>>::type
+ createSamplerYcbcrConversionUnique( const SamplerYcbcrConversionCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroySamplerYcbcrConversion( VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion ycbcrConversion,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroySamplerYcbcrConversion(
+ VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion ycbcrConversion VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion ycbcrConversion,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion ycbcrConversion,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result createDescriptorUpdateTemplate(
+ const VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateCreateInfo * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate * pDescriptorUpdateTemplate,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate>::type
+ createDescriptorUpdateTemplate( const DescriptorUpdateTemplateCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate, Dispatch>>::type
+ createDescriptorUpdateTemplateUnique( const DescriptorUpdateTemplateCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroyDescriptorUpdateTemplate( VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate descriptorUpdateTemplate,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroyDescriptorUpdateTemplate(
+ VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate descriptorUpdateTemplate VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate descriptorUpdateTemplate,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate descriptorUpdateTemplate,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void updateDescriptorSetWithTemplate( VULKAN_HPP_NAMESPACE::DescriptorSet descriptorSet,
+ VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate descriptorUpdateTemplate,
+ const void * pData,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void getDescriptorSetLayoutSupport( const VULKAN_HPP_NAMESPACE::DescriptorSetLayoutCreateInfo * pCreateInfo,
+ VULKAN_HPP_NAMESPACE::DescriptorSetLayoutSupport * pSupport,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::DescriptorSetLayoutSupport getDescriptorSetLayoutSupport(
+ const DescriptorSetLayoutCreateInfo & createInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+ template <typename X, typename Y, typename... Z, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD StructureChain<X, Y, Z...> getDescriptorSetLayoutSupport(
+ const DescriptorSetLayoutCreateInfo & createInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_VERSION_1_2 ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ createRenderPass2( const VULKAN_HPP_NAMESPACE::RenderPassCreateInfo2 * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::RenderPass * pRenderPass,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::RenderPass>::type
+ createRenderPass2( const RenderPassCreateInfo2 & createInfo,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::RenderPass, Dispatch>>::type
+ createRenderPass2Unique( const RenderPassCreateInfo2 & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void resetQueryPool( VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ uint32_t firstQuery,
+ uint32_t queryCount,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ getSemaphoreCounterValue( VULKAN_HPP_NAMESPACE::Semaphore semaphore,
+ uint64_t * pValue,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<uint64_t>::type
+ getSemaphoreCounterValue( VULKAN_HPP_NAMESPACE::Semaphore semaphore,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ waitSemaphores( const VULKAN_HPP_NAMESPACE::SemaphoreWaitInfo * pWaitInfo,
+ uint64_t timeout,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result waitSemaphores( const SemaphoreWaitInfo & waitInfo,
+ uint64_t timeout,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ signalSemaphore( const VULKAN_HPP_NAMESPACE::SemaphoreSignalInfo * pSignalInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type
+ signalSemaphore( const SemaphoreSignalInfo & signalInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ DeviceAddress
+ getBufferAddress( const VULKAN_HPP_NAMESPACE::BufferDeviceAddressInfo * pInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ DeviceAddress
+ getBufferAddress( const BufferDeviceAddressInfo & info,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ uint64_t getBufferOpaqueCaptureAddress( const VULKAN_HPP_NAMESPACE::BufferDeviceAddressInfo * pInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ uint64_t getBufferOpaqueCaptureAddress( const BufferDeviceAddressInfo & info,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ uint64_t getMemoryOpaqueCaptureAddress( const VULKAN_HPP_NAMESPACE::DeviceMemoryOpaqueCaptureAddressInfo * pInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ uint64_t getMemoryOpaqueCaptureAddress( const DeviceMemoryOpaqueCaptureAddressInfo & info,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_KHR_swapchain ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ createSwapchainKHR( const VULKAN_HPP_NAMESPACE::SwapchainCreateInfoKHR * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::SwapchainKHR * pSwapchain,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::SwapchainKHR>::type
+ createSwapchainKHR( const SwapchainCreateInfoKHR & createInfo,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SwapchainKHR, Dispatch>>::type
+ createSwapchainKHRUnique( const SwapchainCreateInfoKHR & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroySwapchainKHR( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void
+ destroySwapchainKHR( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ getSwapchainImagesKHR( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain,
+ uint32_t * pSwapchainImageCount,
+ VULKAN_HPP_NAMESPACE::Image * pSwapchainImages,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename ImageAllocator = std::allocator<Image>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<Image, ImageAllocator>>::type
+ getSwapchainImagesKHR( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename ImageAllocator = std::allocator<Image>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename B = ImageAllocator,
+ typename std::enable_if<std::is_same<typename B::value_type, Image>::value, int>::type = 0>
+ VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<Image, ImageAllocator>>::type
+ getSwapchainImagesKHR( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain,
+ ImageAllocator & imageAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ acquireNextImageKHR( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain,
+ uint64_t timeout,
+ VULKAN_HPP_NAMESPACE::Semaphore semaphore,
+ VULKAN_HPP_NAMESPACE::Fence fence,
+ uint32_t * pImageIndex,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD ResultValue<uint32_t>
+ acquireNextImageKHR( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain,
+ uint64_t timeout,
+ VULKAN_HPP_NAMESPACE::Semaphore semaphore VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT,
+ VULKAN_HPP_NAMESPACE::Fence fence VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result getGroupPresentCapabilitiesKHR(
+ VULKAN_HPP_NAMESPACE::DeviceGroupPresentCapabilitiesKHR * pDeviceGroupPresentCapabilities,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::DeviceGroupPresentCapabilitiesKHR>::type
+ getGroupPresentCapabilitiesKHR( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result getGroupSurfacePresentModesKHR(
+ VULKAN_HPP_NAMESPACE::SurfaceKHR surface,
+ VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagsKHR * pModes,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagsKHR>::type
+ getGroupSurfacePresentModesKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ acquireNextImage2KHR( const VULKAN_HPP_NAMESPACE::AcquireNextImageInfoKHR * pAcquireInfo,
+ uint32_t * pImageIndex,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD ResultValue<uint32_t>
+ acquireNextImage2KHR( const AcquireNextImageInfoKHR & acquireInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_KHR_display_swapchain ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result createSharedSwapchainsKHR(
+ uint32_t swapchainCount,
+ const VULKAN_HPP_NAMESPACE::SwapchainCreateInfoKHR * pCreateInfos,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::SwapchainKHR * pSwapchains,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename SwapchainKHRAllocator = std::allocator<SwapchainKHR>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS
+ typename ResultValueType<std::vector<SwapchainKHR, SwapchainKHRAllocator>>::type
+ createSharedSwapchainsKHR( ArrayProxy<const VULKAN_HPP_NAMESPACE::SwapchainCreateInfoKHR> const & createInfos,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename SwapchainKHRAllocator = std::allocator<SwapchainKHR>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename B = SwapchainKHRAllocator,
+ typename std::enable_if<std::is_same<typename B::value_type, SwapchainKHR>::value, int>::type = 0>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS
+ typename ResultValueType<std::vector<SwapchainKHR, SwapchainKHRAllocator>>::type
+ createSharedSwapchainsKHR( ArrayProxy<const VULKAN_HPP_NAMESPACE::SwapchainCreateInfoKHR> const & createInfos,
+ Optional<const AllocationCallbacks> allocator,
+ SwapchainKHRAllocator & swapchainKHRAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<SwapchainKHR>::type createSharedSwapchainKHR(
+ const VULKAN_HPP_NAMESPACE::SwapchainCreateInfoKHR & createInfo,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename SwapchainKHRAllocator = std::allocator<UniqueHandle<SwapchainKHR, Dispatch>>>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS
+ typename ResultValueType<std::vector<UniqueHandle<SwapchainKHR, Dispatch>, SwapchainKHRAllocator>>::type
+ createSharedSwapchainsKHRUnique(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::SwapchainCreateInfoKHR> const & createInfos,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename SwapchainKHRAllocator = std::allocator<UniqueHandle<SwapchainKHR, Dispatch>>,
+ typename B = SwapchainKHRAllocator,
+ typename std::enable_if<std::is_same<typename B::value_type, UniqueHandle<SwapchainKHR, Dispatch>>::value,
+ int>::type = 0>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS
+ typename ResultValueType<std::vector<UniqueHandle<SwapchainKHR, Dispatch>, SwapchainKHRAllocator>>::type
+ createSharedSwapchainsKHRUnique(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::SwapchainCreateInfoKHR> const & createInfos,
+ Optional<const AllocationCallbacks> allocator,
+ SwapchainKHRAllocator & swapchainKHRAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<UniqueHandle<SwapchainKHR, Dispatch>>::type
+ createSharedSwapchainKHRUnique( const VULKAN_HPP_NAMESPACE::SwapchainCreateInfoKHR & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_EXT_debug_marker ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result debugMarkerSetObjectTagEXT(
+ const VULKAN_HPP_NAMESPACE::DebugMarkerObjectTagInfoEXT * pTagInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type
+ debugMarkerSetObjectTagEXT( const DebugMarkerObjectTagInfoEXT & tagInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result debugMarkerSetObjectNameEXT(
+ const VULKAN_HPP_NAMESPACE::DebugMarkerObjectNameInfoEXT * pNameInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type
+ debugMarkerSetObjectNameEXT( const DebugMarkerObjectNameInfoEXT & nameInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ //=== VK_KHR_video_queue ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ createVideoSessionKHR( const VULKAN_HPP_NAMESPACE::VideoSessionCreateInfoKHR * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::VideoSessionKHR * pVideoSession,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::VideoSessionKHR>::type
+ createVideoSessionKHR( const VideoSessionCreateInfoKHR & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::VideoSessionKHR, Dispatch>>::type
+ createVideoSessionKHRUnique( const VideoSessionCreateInfoKHR & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void
+ destroyVideoSessionKHR( VULKAN_HPP_NAMESPACE::VideoSessionKHR videoSession,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroyVideoSessionKHR(
+ VULKAN_HPP_NAMESPACE::VideoSessionKHR videoSession,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::VideoSessionKHR videoSession,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::VideoSessionKHR videoSession,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result getVideoSessionMemoryRequirementsKHR(
+ VULKAN_HPP_NAMESPACE::VideoSessionKHR videoSession,
+ uint32_t * pVideoSessionMemoryRequirementsCount,
+ VULKAN_HPP_NAMESPACE::VideoGetMemoryPropertiesKHR * pVideoSessionMemoryRequirements,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename VideoGetMemoryPropertiesKHRAllocator = std::allocator<VideoGetMemoryPropertiesKHR>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD
+ typename ResultValueType<std::vector<VideoGetMemoryPropertiesKHR, VideoGetMemoryPropertiesKHRAllocator>>::type
+ getVideoSessionMemoryRequirementsKHR( VULKAN_HPP_NAMESPACE::VideoSessionKHR videoSession,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <
+ typename VideoGetMemoryPropertiesKHRAllocator = std::allocator<VideoGetMemoryPropertiesKHR>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename B = VideoGetMemoryPropertiesKHRAllocator,
+ typename std::enable_if<std::is_same<typename B::value_type, VideoGetMemoryPropertiesKHR>::value, int>::type = 0>
+ VULKAN_HPP_NODISCARD
+ typename ResultValueType<std::vector<VideoGetMemoryPropertiesKHR, VideoGetMemoryPropertiesKHRAllocator>>::type
+ getVideoSessionMemoryRequirementsKHR( VULKAN_HPP_NAMESPACE::VideoSessionKHR videoSession,
+ VideoGetMemoryPropertiesKHRAllocator & videoGetMemoryPropertiesKHRAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result bindVideoSessionMemoryKHR(
+ VULKAN_HPP_NAMESPACE::VideoSessionKHR videoSession,
+ uint32_t videoSessionBindMemoryCount,
+ const VULKAN_HPP_NAMESPACE::VideoBindMemoryKHR * pVideoSessionBindMemories,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type bindVideoSessionMemoryKHR(
+ VULKAN_HPP_NAMESPACE::VideoSessionKHR videoSession,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::VideoBindMemoryKHR> const & videoSessionBindMemories,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result createVideoSessionParametersKHR(
+ const VULKAN_HPP_NAMESPACE::VideoSessionParametersCreateInfoKHR * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::VideoSessionParametersKHR * pVideoSessionParameters,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::VideoSessionParametersKHR>::type
+ createVideoSessionParametersKHR( const VideoSessionParametersCreateInfoKHR & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::VideoSessionParametersKHR, Dispatch>>::type
+ createVideoSessionParametersKHRUnique( const VideoSessionParametersCreateInfoKHR & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result updateVideoSessionParametersKHR(
+ VULKAN_HPP_NAMESPACE::VideoSessionParametersKHR videoSessionParameters,
+ const VULKAN_HPP_NAMESPACE::VideoSessionParametersUpdateInfoKHR * pUpdateInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type
+ updateVideoSessionParametersKHR( VULKAN_HPP_NAMESPACE::VideoSessionParametersKHR videoSessionParameters,
+ const VideoSessionParametersUpdateInfoKHR & updateInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroyVideoSessionParametersKHR( VULKAN_HPP_NAMESPACE::VideoSessionParametersKHR videoSessionParameters,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroyVideoSessionParametersKHR(
+ VULKAN_HPP_NAMESPACE::VideoSessionParametersKHR videoSessionParameters,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::VideoSessionParametersKHR videoSessionParameters,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::VideoSessionParametersKHR videoSessionParameters,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+ //=== VK_NVX_binary_import ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ createCuModuleNVX( const VULKAN_HPP_NAMESPACE::CuModuleCreateInfoNVX * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::CuModuleNVX * pModule,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::CuModuleNVX>::type
+ createCuModuleNVX( const CuModuleCreateInfoNVX & createInfo,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::CuModuleNVX, Dispatch>>::type
+ createCuModuleNVXUnique( const CuModuleCreateInfoNVX & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ createCuFunctionNVX( const VULKAN_HPP_NAMESPACE::CuFunctionCreateInfoNVX * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::CuFunctionNVX * pFunction,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::CuFunctionNVX>::type
+ createCuFunctionNVX( const CuFunctionCreateInfoNVX & createInfo,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::CuFunctionNVX, Dispatch>>::type
+ createCuFunctionNVXUnique( const CuFunctionCreateInfoNVX & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroyCuModuleNVX( VULKAN_HPP_NAMESPACE::CuModuleNVX module,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void
+ destroyCuModuleNVX( VULKAN_HPP_NAMESPACE::CuModuleNVX module,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::CuModuleNVX module,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::CuModuleNVX module,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroyCuFunctionNVX( VULKAN_HPP_NAMESPACE::CuFunctionNVX function,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroyCuFunctionNVX( VULKAN_HPP_NAMESPACE::CuFunctionNVX function,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::CuFunctionNVX function,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::CuFunctionNVX function,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_NVX_image_view_handle ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ uint32_t
+ getImageViewHandleNVX( const VULKAN_HPP_NAMESPACE::ImageViewHandleInfoNVX * pInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ uint32_t
+ getImageViewHandleNVX( const ImageViewHandleInfoNVX & info,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ getImageViewAddressNVX( VULKAN_HPP_NAMESPACE::ImageView imageView,
+ VULKAN_HPP_NAMESPACE::ImageViewAddressPropertiesNVX * pProperties,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::ImageViewAddressPropertiesNVX>::type
+ getImageViewAddressNVX( VULKAN_HPP_NAMESPACE::ImageView imageView,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_AMD_shader_info ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ getShaderInfoAMD( VULKAN_HPP_NAMESPACE::Pipeline pipeline,
+ VULKAN_HPP_NAMESPACE::ShaderStageFlagBits shaderStage,
+ VULKAN_HPP_NAMESPACE::ShaderInfoTypeAMD infoType,
+ size_t * pInfoSize,
+ void * pInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Uint8_tAllocator = std::allocator<uint8_t>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<uint8_t, Uint8_tAllocator>>::type
+ getShaderInfoAMD( VULKAN_HPP_NAMESPACE::Pipeline pipeline,
+ VULKAN_HPP_NAMESPACE::ShaderStageFlagBits shaderStage,
+ VULKAN_HPP_NAMESPACE::ShaderInfoTypeAMD infoType,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename Uint8_tAllocator = std::allocator<uint8_t>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename B = Uint8_tAllocator,
+ typename std::enable_if<std::is_same<typename B::value_type, uint8_t>::value, int>::type = 0>
+ VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<uint8_t, Uint8_tAllocator>>::type
+ getShaderInfoAMD( VULKAN_HPP_NAMESPACE::Pipeline pipeline,
+ VULKAN_HPP_NAMESPACE::ShaderStageFlagBits shaderStage,
+ VULKAN_HPP_NAMESPACE::ShaderInfoTypeAMD infoType,
+ Uint8_tAllocator & uint8_tAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ //=== VK_NV_external_memory_win32 ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ getMemoryWin32HandleNV( VULKAN_HPP_NAMESPACE::DeviceMemory memory,
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV handleType,
+ HANDLE * pHandle,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<HANDLE>::type
+ getMemoryWin32HandleNV( VULKAN_HPP_NAMESPACE::DeviceMemory memory,
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV handleType,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+
+ //=== VK_KHR_device_group ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void getGroupPeerMemoryFeaturesKHR( uint32_t heapIndex,
+ uint32_t localDeviceIndex,
+ uint32_t remoteDeviceIndex,
+ VULKAN_HPP_NAMESPACE::PeerMemoryFeatureFlags * pPeerMemoryFeatures,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::PeerMemoryFeatureFlags getGroupPeerMemoryFeaturesKHR(
+ uint32_t heapIndex,
+ uint32_t localDeviceIndex,
+ uint32_t remoteDeviceIndex,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_KHR_maintenance1 ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void trimCommandPoolKHR( VULKAN_HPP_NAMESPACE::CommandPool commandPool,
+ VULKAN_HPP_NAMESPACE::CommandPoolTrimFlags flags,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ //=== VK_KHR_external_memory_win32 ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ getMemoryWin32HandleKHR( const VULKAN_HPP_NAMESPACE::MemoryGetWin32HandleInfoKHR * pGetWin32HandleInfo,
+ HANDLE * pHandle,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<HANDLE>::type
+ getMemoryWin32HandleKHR( const MemoryGetWin32HandleInfoKHR & getWin32HandleInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result getMemoryWin32HandlePropertiesKHR(
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType,
+ HANDLE handle,
+ VULKAN_HPP_NAMESPACE::MemoryWin32HandlePropertiesKHR * pMemoryWin32HandleProperties,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::MemoryWin32HandlePropertiesKHR>::type
+ getMemoryWin32HandlePropertiesKHR( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType,
+ HANDLE handle,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+
+ //=== VK_KHR_external_memory_fd ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ getMemoryFdKHR( const VULKAN_HPP_NAMESPACE::MemoryGetFdInfoKHR * pGetFdInfo,
+ int * pFd,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<int>::type
+ getMemoryFdKHR( const MemoryGetFdInfoKHR & getFdInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ getMemoryFdPropertiesKHR( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType,
+ int fd,
+ VULKAN_HPP_NAMESPACE::MemoryFdPropertiesKHR * pMemoryFdProperties,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::MemoryFdPropertiesKHR>::type
+ getMemoryFdPropertiesKHR( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType,
+ int fd,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ //=== VK_KHR_external_semaphore_win32 ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result importSemaphoreWin32HandleKHR(
+ const VULKAN_HPP_NAMESPACE::ImportSemaphoreWin32HandleInfoKHR * pImportSemaphoreWin32HandleInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type
+ importSemaphoreWin32HandleKHR( const ImportSemaphoreWin32HandleInfoKHR & importSemaphoreWin32HandleInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result getSemaphoreWin32HandleKHR(
+ const VULKAN_HPP_NAMESPACE::SemaphoreGetWin32HandleInfoKHR * pGetWin32HandleInfo,
+ HANDLE * pHandle,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<HANDLE>::type
+ getSemaphoreWin32HandleKHR( const SemaphoreGetWin32HandleInfoKHR & getWin32HandleInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+
+ //=== VK_KHR_external_semaphore_fd ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ importSemaphoreFdKHR( const VULKAN_HPP_NAMESPACE::ImportSemaphoreFdInfoKHR * pImportSemaphoreFdInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type
+ importSemaphoreFdKHR( const ImportSemaphoreFdInfoKHR & importSemaphoreFdInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ getSemaphoreFdKHR( const VULKAN_HPP_NAMESPACE::SemaphoreGetFdInfoKHR * pGetFdInfo,
+ int * pFd,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<int>::type
+ getSemaphoreFdKHR( const SemaphoreGetFdInfoKHR & getFdInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_KHR_descriptor_update_template ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result createDescriptorUpdateTemplateKHR(
+ const VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateCreateInfo * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate * pDescriptorUpdateTemplate,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate>::type
+ createDescriptorUpdateTemplateKHR( const DescriptorUpdateTemplateCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate, Dispatch>>::type
+ createDescriptorUpdateTemplateKHRUnique( const DescriptorUpdateTemplateCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroyDescriptorUpdateTemplateKHR( VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate descriptorUpdateTemplate,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroyDescriptorUpdateTemplateKHR(
+ VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate descriptorUpdateTemplate VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void updateDescriptorSetWithTemplateKHR( VULKAN_HPP_NAMESPACE::DescriptorSet descriptorSet,
+ VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate descriptorUpdateTemplate,
+ const void * pData,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_EXT_display_control ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ displayPowerControlEXT( VULKAN_HPP_NAMESPACE::DisplayKHR display,
+ const VULKAN_HPP_NAMESPACE::DisplayPowerInfoEXT * pDisplayPowerInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ typename ResultValueType<void>::type
+ displayPowerControlEXT( VULKAN_HPP_NAMESPACE::DisplayKHR display,
+ const DisplayPowerInfoEXT & displayPowerInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ registerEventEXT( const VULKAN_HPP_NAMESPACE::DeviceEventInfoEXT * pDeviceEventInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::Fence * pFence,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::Fence>::type
+ registerEventEXT( const DeviceEventInfoEXT & deviceEventInfo,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::Fence, Dispatch>>::type
+ registerEventEXTUnique( const DeviceEventInfoEXT & deviceEventInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ registerDisplayEventEXT( VULKAN_HPP_NAMESPACE::DisplayKHR display,
+ const VULKAN_HPP_NAMESPACE::DisplayEventInfoEXT * pDisplayEventInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::Fence * pFence,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::Fence>::type registerDisplayEventEXT(
+ VULKAN_HPP_NAMESPACE::DisplayKHR display,
+ const DisplayEventInfoEXT & displayEventInfo,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::Fence, Dispatch>>::type
+ registerDisplayEventEXTUnique( VULKAN_HPP_NAMESPACE::DisplayKHR display,
+ const DisplayEventInfoEXT & displayEventInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ getSwapchainCounterEXT( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain,
+ VULKAN_HPP_NAMESPACE::SurfaceCounterFlagBitsEXT counter,
+ uint64_t * pCounterValue,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<uint64_t>::type
+ getSwapchainCounterEXT( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain,
+ VULKAN_HPP_NAMESPACE::SurfaceCounterFlagBitsEXT counter,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_GOOGLE_display_timing ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result getRefreshCycleDurationGOOGLE(
+ VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain,
+ VULKAN_HPP_NAMESPACE::RefreshCycleDurationGOOGLE * pDisplayTimingProperties,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::RefreshCycleDurationGOOGLE>::type
+ getRefreshCycleDurationGOOGLE( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result getPastPresentationTimingGOOGLE(
+ VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain,
+ uint32_t * pPresentationTimingCount,
+ VULKAN_HPP_NAMESPACE::PastPresentationTimingGOOGLE * pPresentationTimings,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename PastPresentationTimingGOOGLEAllocator = std::allocator<PastPresentationTimingGOOGLE>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD
+ typename ResultValueType<std::vector<PastPresentationTimingGOOGLE, PastPresentationTimingGOOGLEAllocator>>::type
+ getPastPresentationTimingGOOGLE( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <
+ typename PastPresentationTimingGOOGLEAllocator = std::allocator<PastPresentationTimingGOOGLE>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename B = PastPresentationTimingGOOGLEAllocator,
+ typename std::enable_if<std::is_same<typename B::value_type, PastPresentationTimingGOOGLE>::value, int>::type = 0>
+ VULKAN_HPP_NODISCARD
+ typename ResultValueType<std::vector<PastPresentationTimingGOOGLE, PastPresentationTimingGOOGLEAllocator>>::type
+ getPastPresentationTimingGOOGLE( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain,
+ PastPresentationTimingGOOGLEAllocator & pastPresentationTimingGOOGLEAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_EXT_hdr_metadata ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void setHdrMetadataEXT( uint32_t swapchainCount,
+ const VULKAN_HPP_NAMESPACE::SwapchainKHR * pSwapchains,
+ const VULKAN_HPP_NAMESPACE::HdrMetadataEXT * pMetadata,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void setHdrMetadataEXT( ArrayProxy<const VULKAN_HPP_NAMESPACE::SwapchainKHR> const & swapchains,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::HdrMetadataEXT> const & metadata,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_KHR_create_renderpass2 ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ createRenderPass2KHR( const VULKAN_HPP_NAMESPACE::RenderPassCreateInfo2 * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::RenderPass * pRenderPass,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::RenderPass>::type
+ createRenderPass2KHR( const RenderPassCreateInfo2 & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::RenderPass, Dispatch>>::type
+ createRenderPass2KHRUnique( const RenderPassCreateInfo2 & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_KHR_shared_presentable_image ===
+
+#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ getSwapchainStatusKHR( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#else
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result getSwapchainStatusKHR(
+ VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ //=== VK_KHR_external_fence_win32 ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result importFenceWin32HandleKHR(
+ const VULKAN_HPP_NAMESPACE::ImportFenceWin32HandleInfoKHR * pImportFenceWin32HandleInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type
+ importFenceWin32HandleKHR( const ImportFenceWin32HandleInfoKHR & importFenceWin32HandleInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ getFenceWin32HandleKHR( const VULKAN_HPP_NAMESPACE::FenceGetWin32HandleInfoKHR * pGetWin32HandleInfo,
+ HANDLE * pHandle,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<HANDLE>::type
+ getFenceWin32HandleKHR( const FenceGetWin32HandleInfoKHR & getWin32HandleInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+
+ //=== VK_KHR_external_fence_fd ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ importFenceFdKHR( const VULKAN_HPP_NAMESPACE::ImportFenceFdInfoKHR * pImportFenceFdInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type
+ importFenceFdKHR( const ImportFenceFdInfoKHR & importFenceFdInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ getFenceFdKHR( const VULKAN_HPP_NAMESPACE::FenceGetFdInfoKHR * pGetFdInfo,
+ int * pFd,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<int>::type
+ getFenceFdKHR( const FenceGetFdInfoKHR & getFdInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_KHR_performance_query ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ acquireProfilingLockKHR( const VULKAN_HPP_NAMESPACE::AcquireProfilingLockInfoKHR * pInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type
+ acquireProfilingLockKHR( const AcquireProfilingLockInfoKHR & info,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void
+ releaseProfilingLockKHR( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_EXT_debug_utils ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result setDebugUtilsObjectNameEXT(
+ const VULKAN_HPP_NAMESPACE::DebugUtilsObjectNameInfoEXT * pNameInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type
+ setDebugUtilsObjectNameEXT( const DebugUtilsObjectNameInfoEXT & nameInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result setDebugUtilsObjectTagEXT(
+ const VULKAN_HPP_NAMESPACE::DebugUtilsObjectTagInfoEXT * pTagInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type
+ setDebugUtilsObjectTagEXT( const DebugUtilsObjectTagInfoEXT & tagInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#if defined( VK_USE_PLATFORM_ANDROID_KHR )
+ //=== VK_ANDROID_external_memory_android_hardware_buffer ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result getAndroidHardwareBufferPropertiesANDROID(
+ const struct AHardwareBuffer * buffer,
+ VULKAN_HPP_NAMESPACE::AndroidHardwareBufferPropertiesANDROID * pProperties,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::AndroidHardwareBufferPropertiesANDROID>::type
+ getAndroidHardwareBufferPropertiesANDROID( const struct AHardwareBuffer & buffer,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename X, typename Y, typename... Z, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<StructureChain<X, Y, Z...>>::type
+ getAndroidHardwareBufferPropertiesANDROID( const struct AHardwareBuffer & buffer,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result getMemoryAndroidHardwareBufferANDROID(
+ const VULKAN_HPP_NAMESPACE::MemoryGetAndroidHardwareBufferInfoANDROID * pInfo,
+ struct AHardwareBuffer ** pBuffer,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<struct AHardwareBuffer *>::type
+ getMemoryAndroidHardwareBufferANDROID( const MemoryGetAndroidHardwareBufferInfoANDROID & info,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
+
+ //=== VK_KHR_get_memory_requirements2 ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void getImageMemoryRequirements2KHR( const VULKAN_HPP_NAMESPACE::ImageMemoryRequirementsInfo2 * pInfo,
+ VULKAN_HPP_NAMESPACE::MemoryRequirements2 * pMemoryRequirements,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::MemoryRequirements2 getImageMemoryRequirements2KHR(
+ const ImageMemoryRequirementsInfo2 & info,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+ template <typename X, typename Y, typename... Z, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD StructureChain<X, Y, Z...> getImageMemoryRequirements2KHR(
+ const ImageMemoryRequirementsInfo2 & info,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void getBufferMemoryRequirements2KHR( const VULKAN_HPP_NAMESPACE::BufferMemoryRequirementsInfo2 * pInfo,
+ VULKAN_HPP_NAMESPACE::MemoryRequirements2 * pMemoryRequirements,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::MemoryRequirements2 getBufferMemoryRequirements2KHR(
+ const BufferMemoryRequirementsInfo2 & info,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+ template <typename X, typename Y, typename... Z, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD StructureChain<X, Y, Z...> getBufferMemoryRequirements2KHR(
+ const BufferMemoryRequirementsInfo2 & info,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void getImageSparseMemoryRequirements2KHR(
+ const VULKAN_HPP_NAMESPACE::ImageSparseMemoryRequirementsInfo2 * pInfo,
+ uint32_t * pSparseMemoryRequirementCount,
+ VULKAN_HPP_NAMESPACE::SparseImageMemoryRequirements2 * pSparseMemoryRequirements,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename SparseImageMemoryRequirements2Allocator = std::allocator<SparseImageMemoryRequirements2>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD std::vector<SparseImageMemoryRequirements2, SparseImageMemoryRequirements2Allocator>
+ getImageSparseMemoryRequirements2KHR( const ImageSparseMemoryRequirementsInfo2 & info,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename SparseImageMemoryRequirements2Allocator = std::allocator<SparseImageMemoryRequirements2>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename B = SparseImageMemoryRequirements2Allocator,
+ typename std::enable_if<std::is_same<typename B::value_type, SparseImageMemoryRequirements2>::value,
+ int>::type = 0>
+ VULKAN_HPP_NODISCARD std::vector<SparseImageMemoryRequirements2, SparseImageMemoryRequirements2Allocator>
+ getImageSparseMemoryRequirements2KHR(
+ const ImageSparseMemoryRequirementsInfo2 & info,
+ SparseImageMemoryRequirements2Allocator & sparseImageMemoryRequirements2Allocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_KHR_acceleration_structure ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result createAccelerationStructureKHR(
+ const VULKAN_HPP_NAMESPACE::AccelerationStructureCreateInfoKHR * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::AccelerationStructureKHR * pAccelerationStructure,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::AccelerationStructureKHR>::type
+ createAccelerationStructureKHR( const AccelerationStructureCreateInfoKHR & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::AccelerationStructureKHR, Dispatch>>::type
+ createAccelerationStructureKHRUnique( const AccelerationStructureCreateInfoKHR & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroyAccelerationStructureKHR( VULKAN_HPP_NAMESPACE::AccelerationStructureKHR accelerationStructure,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroyAccelerationStructureKHR(
+ VULKAN_HPP_NAMESPACE::AccelerationStructureKHR accelerationStructure VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::AccelerationStructureKHR accelerationStructure,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::AccelerationStructureKHR accelerationStructure,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result buildAccelerationStructuresKHR(
+ VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation,
+ uint32_t infoCount,
+ const VULKAN_HPP_NAMESPACE::AccelerationStructureBuildGeometryInfoKHR * pInfos,
+ const VULKAN_HPP_NAMESPACE::AccelerationStructureBuildRangeInfoKHR * const * ppBuildRangeInfos,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ Result buildAccelerationStructuresKHR(
+ VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::AccelerationStructureBuildGeometryInfoKHR> const & infos,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::AccelerationStructureBuildRangeInfoKHR * const> const & pBuildRangeInfos,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result copyAccelerationStructureKHR(
+ VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation,
+ const VULKAN_HPP_NAMESPACE::CopyAccelerationStructureInfoKHR * pInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ copyAccelerationStructureKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation,
+ const CopyAccelerationStructureInfoKHR & info,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result copyAccelerationStructureToMemoryKHR(
+ VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation,
+ const VULKAN_HPP_NAMESPACE::CopyAccelerationStructureToMemoryInfoKHR * pInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ copyAccelerationStructureToMemoryKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation,
+ const CopyAccelerationStructureToMemoryInfoKHR & info,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result copyMemoryToAccelerationStructureKHR(
+ VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation,
+ const VULKAN_HPP_NAMESPACE::CopyMemoryToAccelerationStructureInfoKHR * pInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ copyMemoryToAccelerationStructureKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation,
+ const CopyMemoryToAccelerationStructureInfoKHR & info,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result writeAccelerationStructuresPropertiesKHR(
+ uint32_t accelerationStructureCount,
+ const VULKAN_HPP_NAMESPACE::AccelerationStructureKHR * pAccelerationStructures,
+ VULKAN_HPP_NAMESPACE::QueryType queryType,
+ size_t dataSize,
+ void * pData,
+ size_t stride,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename T, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type
+ writeAccelerationStructuresPropertiesKHR(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::AccelerationStructureKHR> const & accelerationStructures,
+ VULKAN_HPP_NAMESPACE::QueryType queryType,
+ ArrayProxy<T> const & data,
+ size_t stride,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename T,
+ typename Allocator = std::allocator<T>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<std::vector<T, Allocator>>::type
+ writeAccelerationStructuresPropertiesKHR(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::AccelerationStructureKHR> const & accelerationStructures,
+ VULKAN_HPP_NAMESPACE::QueryType queryType,
+ size_t dataSize,
+ size_t stride,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename T, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<T>::type writeAccelerationStructuresPropertyKHR(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::AccelerationStructureKHR> const & accelerationStructures,
+ VULKAN_HPP_NAMESPACE::QueryType queryType,
+ size_t stride,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ DeviceAddress getAccelerationStructureAddressKHR(
+ const VULKAN_HPP_NAMESPACE::AccelerationStructureDeviceAddressInfoKHR * pInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ DeviceAddress getAccelerationStructureAddressKHR(
+ const AccelerationStructureDeviceAddressInfoKHR & info,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void getAccelerationStructureCompatibilityKHR(
+ const VULKAN_HPP_NAMESPACE::AccelerationStructureVersionInfoKHR * pVersionInfo,
+ VULKAN_HPP_NAMESPACE::AccelerationStructureCompatibilityKHR * pCompatibility,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::AccelerationStructureCompatibilityKHR
+ getAccelerationStructureCompatibilityKHR( const AccelerationStructureVersionInfoKHR & versionInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void getAccelerationStructureBuildSizesKHR(
+ VULKAN_HPP_NAMESPACE::AccelerationStructureBuildTypeKHR buildType,
+ const VULKAN_HPP_NAMESPACE::AccelerationStructureBuildGeometryInfoKHR * pBuildInfo,
+ const uint32_t * pMaxPrimitiveCounts,
+ VULKAN_HPP_NAMESPACE::AccelerationStructureBuildSizesInfoKHR * pSizeInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::AccelerationStructureBuildSizesInfoKHR
+ getAccelerationStructureBuildSizesKHR(
+ VULKAN_HPP_NAMESPACE::AccelerationStructureBuildTypeKHR buildType,
+ const AccelerationStructureBuildGeometryInfoKHR & buildInfo,
+ ArrayProxy<const uint32_t> const & maxPrimitiveCounts VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_KHR_sampler_ycbcr_conversion ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result createSamplerYcbcrConversionKHR(
+ const VULKAN_HPP_NAMESPACE::SamplerYcbcrConversionCreateInfo * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion * pYcbcrConversion,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion>::type
+ createSamplerYcbcrConversionKHR( const SamplerYcbcrConversionCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion, Dispatch>>::type
+ createSamplerYcbcrConversionKHRUnique( const SamplerYcbcrConversionCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroySamplerYcbcrConversionKHR( VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion ycbcrConversion,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroySamplerYcbcrConversionKHR(
+ VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion ycbcrConversion VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_KHR_bind_memory2 ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ bindBufferMemory2KHR( uint32_t bindInfoCount,
+ const VULKAN_HPP_NAMESPACE::BindBufferMemoryInfo * pBindInfos,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type
+ bindBufferMemory2KHR( ArrayProxy<const VULKAN_HPP_NAMESPACE::BindBufferMemoryInfo> const & bindInfos,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ bindImageMemory2KHR( uint32_t bindInfoCount,
+ const VULKAN_HPP_NAMESPACE::BindImageMemoryInfo * pBindInfos,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type
+ bindImageMemory2KHR( ArrayProxy<const VULKAN_HPP_NAMESPACE::BindImageMemoryInfo> const & bindInfos,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_EXT_image_drm_format_modifier ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result getImageDrmFormatModifierPropertiesEXT(
+ VULKAN_HPP_NAMESPACE::Image image,
+ VULKAN_HPP_NAMESPACE::ImageDrmFormatModifierPropertiesEXT * pProperties,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::ImageDrmFormatModifierPropertiesEXT>::type
+ getImageDrmFormatModifierPropertiesEXT( VULKAN_HPP_NAMESPACE::Image image,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_EXT_validation_cache ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ createValidationCacheEXT( const VULKAN_HPP_NAMESPACE::ValidationCacheCreateInfoEXT * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::ValidationCacheEXT * pValidationCache,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::ValidationCacheEXT>::type createValidationCacheEXT(
+ const ValidationCacheCreateInfoEXT & createInfo,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::ValidationCacheEXT, Dispatch>>::type
+ createValidationCacheEXTUnique( const ValidationCacheCreateInfoEXT & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroyValidationCacheEXT( VULKAN_HPP_NAMESPACE::ValidationCacheEXT validationCache,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroyValidationCacheEXT(
+ VULKAN_HPP_NAMESPACE::ValidationCacheEXT validationCache VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::ValidationCacheEXT validationCache,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::ValidationCacheEXT validationCache,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ mergeValidationCachesEXT( VULKAN_HPP_NAMESPACE::ValidationCacheEXT dstCache,
+ uint32_t srcCacheCount,
+ const VULKAN_HPP_NAMESPACE::ValidationCacheEXT * pSrcCaches,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type
+ mergeValidationCachesEXT( VULKAN_HPP_NAMESPACE::ValidationCacheEXT dstCache,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::ValidationCacheEXT> const & srcCaches,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result getValidationCacheDataEXT(
+ VULKAN_HPP_NAMESPACE::ValidationCacheEXT validationCache,
+ size_t * pDataSize,
+ void * pData,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Uint8_tAllocator = std::allocator<uint8_t>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<uint8_t, Uint8_tAllocator>>::type
+ getValidationCacheDataEXT( VULKAN_HPP_NAMESPACE::ValidationCacheEXT validationCache,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename Uint8_tAllocator = std::allocator<uint8_t>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename B = Uint8_tAllocator,
+ typename std::enable_if<std::is_same<typename B::value_type, uint8_t>::value, int>::type = 0>
+ VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<uint8_t, Uint8_tAllocator>>::type
+ getValidationCacheDataEXT( VULKAN_HPP_NAMESPACE::ValidationCacheEXT validationCache,
+ Uint8_tAllocator & uint8_tAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_NV_ray_tracing ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result createAccelerationStructureNV(
+ const VULKAN_HPP_NAMESPACE::AccelerationStructureCreateInfoNV * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::AccelerationStructureNV * pAccelerationStructure,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::AccelerationStructureNV>::type createAccelerationStructureNV(
+ const AccelerationStructureCreateInfoNV & createInfo,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::AccelerationStructureNV, Dispatch>>::type
+ createAccelerationStructureNVUnique( const AccelerationStructureCreateInfoNV & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroyAccelerationStructureNV( VULKAN_HPP_NAMESPACE::AccelerationStructureNV accelerationStructure,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroyAccelerationStructureNV(
+ VULKAN_HPP_NAMESPACE::AccelerationStructureNV accelerationStructure VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::AccelerationStructureNV accelerationStructure,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::AccelerationStructureNV accelerationStructure,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void getAccelerationStructureMemoryRequirementsNV(
+ const VULKAN_HPP_NAMESPACE::AccelerationStructureMemoryRequirementsInfoNV * pInfo,
+ VULKAN_HPP_NAMESPACE::MemoryRequirements2KHR * pMemoryRequirements,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::MemoryRequirements2KHR getAccelerationStructureMemoryRequirementsNV(
+ const AccelerationStructureMemoryRequirementsInfoNV & info,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+ template <typename X, typename Y, typename... Z, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD StructureChain<X, Y, Z...> getAccelerationStructureMemoryRequirementsNV(
+ const AccelerationStructureMemoryRequirementsInfoNV & info,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result bindAccelerationStructureMemoryNV(
+ uint32_t bindInfoCount,
+ const VULKAN_HPP_NAMESPACE::BindAccelerationStructureMemoryInfoNV * pBindInfos,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type bindAccelerationStructureMemoryNV(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::BindAccelerationStructureMemoryInfoNV> const & bindInfos,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result createRayTracingPipelinesNV(
+ VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ uint32_t createInfoCount,
+ const VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoNV * pCreateInfos,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::Pipeline * pPipelines,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename PipelineAllocator = std::allocator<Pipeline>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD ResultValue<std::vector<Pipeline, PipelineAllocator>> createRayTracingPipelinesNV(
+ VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoNV> const & createInfos,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename PipelineAllocator = std::allocator<Pipeline>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename B = PipelineAllocator,
+ typename std::enable_if<std::is_same<typename B::value_type, Pipeline>::value, int>::type = 0>
+ VULKAN_HPP_NODISCARD ResultValue<std::vector<Pipeline, PipelineAllocator>> createRayTracingPipelinesNV(
+ VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoNV> const & createInfos,
+ Optional<const AllocationCallbacks> allocator,
+ PipelineAllocator & pipelineAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD ResultValue<Pipeline> createRayTracingPipelineNV(
+ VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ const VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoNV & createInfo,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename PipelineAllocator = std::allocator<UniqueHandle<Pipeline, Dispatch>>>
+ VULKAN_HPP_NODISCARD ResultValue<std::vector<UniqueHandle<Pipeline, Dispatch>, PipelineAllocator>>
+ createRayTracingPipelinesNVUnique(
+ VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoNV> const & createInfos,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename PipelineAllocator = std::allocator<UniqueHandle<Pipeline, Dispatch>>,
+ typename B = PipelineAllocator,
+ typename std::enable_if<std::is_same<typename B::value_type, UniqueHandle<Pipeline, Dispatch>>::value,
+ int>::type = 0>
+ VULKAN_HPP_NODISCARD ResultValue<std::vector<UniqueHandle<Pipeline, Dispatch>, PipelineAllocator>>
+ createRayTracingPipelinesNVUnique(
+ VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoNV> const & createInfos,
+ Optional<const AllocationCallbacks> allocator,
+ PipelineAllocator & pipelineAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD ResultValue<UniqueHandle<Pipeline, Dispatch>> createRayTracingPipelineNVUnique(
+ VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ const VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoNV & createInfo,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result getRayTracingShaderGroupHandlesNV(
+ VULKAN_HPP_NAMESPACE::Pipeline pipeline,
+ uint32_t firstGroup,
+ uint32_t groupCount,
+ size_t dataSize,
+ void * pData,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename T, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type
+ getRayTracingShaderGroupHandlesNV( VULKAN_HPP_NAMESPACE::Pipeline pipeline,
+ uint32_t firstGroup,
+ uint32_t groupCount,
+ ArrayProxy<T> const & data,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename T,
+ typename Allocator = std::allocator<T>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<std::vector<T, Allocator>>::type
+ getRayTracingShaderGroupHandlesNV( VULKAN_HPP_NAMESPACE::Pipeline pipeline,
+ uint32_t firstGroup,
+ uint32_t groupCount,
+ size_t dataSize,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename T, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<T>::type
+ getRayTracingShaderGroupHandleNV( VULKAN_HPP_NAMESPACE::Pipeline pipeline,
+ uint32_t firstGroup,
+ uint32_t groupCount,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result getAccelerationStructureHandleNV(
+ VULKAN_HPP_NAMESPACE::AccelerationStructureNV accelerationStructure,
+ size_t dataSize,
+ void * pData,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename T, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type
+ getAccelerationStructureHandleNV( VULKAN_HPP_NAMESPACE::AccelerationStructureNV accelerationStructure,
+ ArrayProxy<T> const & data,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename T,
+ typename Allocator = std::allocator<T>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<std::vector<T, Allocator>>::type
+ getAccelerationStructureHandleNV( VULKAN_HPP_NAMESPACE::AccelerationStructureNV accelerationStructure,
+ size_t dataSize,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename T, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<T>::type
+ getAccelerationStructureHandleNV( VULKAN_HPP_NAMESPACE::AccelerationStructureNV accelerationStructure,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ compileDeferredNV( VULKAN_HPP_NAMESPACE::Pipeline pipeline,
+ uint32_t shader,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#else
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type
+ compileDeferredNV( VULKAN_HPP_NAMESPACE::Pipeline pipeline,
+ uint32_t shader,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_KHR_maintenance3 ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void getDescriptorSetLayoutSupportKHR( const VULKAN_HPP_NAMESPACE::DescriptorSetLayoutCreateInfo * pCreateInfo,
+ VULKAN_HPP_NAMESPACE::DescriptorSetLayoutSupport * pSupport,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::DescriptorSetLayoutSupport getDescriptorSetLayoutSupportKHR(
+ const DescriptorSetLayoutCreateInfo & createInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+ template <typename X, typename Y, typename... Z, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD StructureChain<X, Y, Z...> getDescriptorSetLayoutSupportKHR(
+ const DescriptorSetLayoutCreateInfo & createInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_EXT_external_memory_host ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result getMemoryHostPointerPropertiesEXT(
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType,
+ const void * pHostPointer,
+ VULKAN_HPP_NAMESPACE::MemoryHostPointerPropertiesEXT * pMemoryHostPointerProperties,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::MemoryHostPointerPropertiesEXT>::type
+ getMemoryHostPointerPropertiesEXT( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType,
+ const void * pHostPointer,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_EXT_calibrated_timestamps ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result getCalibratedTimestampsEXT(
+ uint32_t timestampCount,
+ const VULKAN_HPP_NAMESPACE::CalibratedTimestampInfoEXT * pTimestampInfos,
+ uint64_t * pTimestamps,
+ uint64_t * pMaxDeviation,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<uint64_t>::type getCalibratedTimestampsEXT(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::CalibratedTimestampInfoEXT> const & timestampInfos,
+ ArrayProxy<uint64_t> const & timestamps,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename Uint64_tAllocator = std::allocator<uint64_t>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS
+ typename ResultValueType<std::pair<std::vector<uint64_t, Uint64_tAllocator>, uint64_t>>::type
+ getCalibratedTimestampsEXT(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::CalibratedTimestampInfoEXT> const & timestampInfos,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename Uint64_tAllocator = std::allocator<uint64_t>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename B = Uint64_tAllocator,
+ typename std::enable_if<std::is_same<typename B::value_type, uint64_t>::value, int>::type = 0>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS
+ typename ResultValueType<std::pair<std::vector<uint64_t, Uint64_tAllocator>, uint64_t>>::type
+ getCalibratedTimestampsEXT(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::CalibratedTimestampInfoEXT> const & timestampInfos,
+ Uint64_tAllocator & uint64_tAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_KHR_timeline_semaphore ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result getSemaphoreCounterValueKHR(
+ VULKAN_HPP_NAMESPACE::Semaphore semaphore,
+ uint64_t * pValue,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<uint64_t>::type
+ getSemaphoreCounterValueKHR( VULKAN_HPP_NAMESPACE::Semaphore semaphore,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ waitSemaphoresKHR( const VULKAN_HPP_NAMESPACE::SemaphoreWaitInfo * pWaitInfo,
+ uint64_t timeout,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result waitSemaphoresKHR( const SemaphoreWaitInfo & waitInfo,
+ uint64_t timeout,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ signalSemaphoreKHR( const VULKAN_HPP_NAMESPACE::SemaphoreSignalInfo * pSignalInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type
+ signalSemaphoreKHR( const SemaphoreSignalInfo & signalInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_INTEL_performance_query ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result initializePerformanceApiINTEL(
+ const VULKAN_HPP_NAMESPACE::InitializePerformanceApiInfoINTEL * pInitializeInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type
+ initializePerformanceApiINTEL( const InitializePerformanceApiInfoINTEL & initializeInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void uninitializePerformanceApiINTEL( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result acquirePerformanceConfigurationINTEL(
+ const VULKAN_HPP_NAMESPACE::PerformanceConfigurationAcquireInfoINTEL * pAcquireInfo,
+ VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL * pConfiguration,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL>::type
+ acquirePerformanceConfigurationINTEL( const PerformanceConfigurationAcquireInfoINTEL & acquireInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL, Dispatch>>::type
+ acquirePerformanceConfigurationINTELUnique( const PerformanceConfigurationAcquireInfoINTEL & acquireInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result releasePerformanceConfigurationINTEL(
+ VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL configuration,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#else
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type releasePerformanceConfigurationINTEL(
+ VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL configuration VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ release( VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL configuration,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#else
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type
+ release( VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL configuration,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result getPerformanceParameterINTEL(
+ VULKAN_HPP_NAMESPACE::PerformanceParameterTypeINTEL parameter,
+ VULKAN_HPP_NAMESPACE::PerformanceValueINTEL * pValue,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::PerformanceValueINTEL>::type
+ getPerformanceParameterINTEL( VULKAN_HPP_NAMESPACE::PerformanceParameterTypeINTEL parameter,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_AMD_display_native_hdr ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void setLocalDimmingAMD( VULKAN_HPP_NAMESPACE::SwapchainKHR swapChain,
+ VULKAN_HPP_NAMESPACE::Bool32 localDimmingEnable,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_EXT_buffer_device_address ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ DeviceAddress
+ getBufferAddressEXT( const VULKAN_HPP_NAMESPACE::BufferDeviceAddressInfo * pInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ DeviceAddress
+ getBufferAddressEXT( const BufferDeviceAddressInfo & info,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ //=== VK_EXT_full_screen_exclusive ===
+
+# ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result acquireFullScreenExclusiveModeEXT(
+ VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+# else
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type
+ acquireFullScreenExclusiveModeEXT( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+# ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result releaseFullScreenExclusiveModeEXT(
+ VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+# else
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type
+ releaseFullScreenExclusiveModeEXT( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result getGroupSurfacePresentModes2EXT(
+ const VULKAN_HPP_NAMESPACE::PhysicalDeviceSurfaceInfo2KHR * pSurfaceInfo,
+ VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagsKHR * pModes,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagsKHR>::type
+ getGroupSurfacePresentModes2EXT( const PhysicalDeviceSurfaceInfo2KHR & surfaceInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+
+ //=== VK_KHR_buffer_device_address ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ DeviceAddress
+ getBufferAddressKHR( const VULKAN_HPP_NAMESPACE::BufferDeviceAddressInfo * pInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ DeviceAddress
+ getBufferAddressKHR( const BufferDeviceAddressInfo & info,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ uint64_t getBufferOpaqueCaptureAddressKHR( const VULKAN_HPP_NAMESPACE::BufferDeviceAddressInfo * pInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ uint64_t getBufferOpaqueCaptureAddressKHR( const BufferDeviceAddressInfo & info,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ uint64_t getMemoryOpaqueCaptureAddressKHR( const VULKAN_HPP_NAMESPACE::DeviceMemoryOpaqueCaptureAddressInfo * pInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ uint64_t getMemoryOpaqueCaptureAddressKHR( const DeviceMemoryOpaqueCaptureAddressInfo & info,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_EXT_host_query_reset ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void resetQueryPoolEXT( VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ uint32_t firstQuery,
+ uint32_t queryCount,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_KHR_deferred_host_operations ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result createDeferredOperationKHR(
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::DeferredOperationKHR * pDeferredOperation,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::DeferredOperationKHR>::type createDeferredOperationKHR(
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::DeferredOperationKHR, Dispatch>>::type
+ createDeferredOperationKHRUnique( Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroyDeferredOperationKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR operation,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroyDeferredOperationKHR(
+ VULKAN_HPP_NAMESPACE::DeferredOperationKHR operation VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::DeferredOperationKHR operation,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::DeferredOperationKHR operation,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ uint32_t getDeferredOperationMaxConcurrencyKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR operation,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+
+#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result getDeferredOperationResultKHR(
+ VULKAN_HPP_NAMESPACE::DeferredOperationKHR operation,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#else
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ getDeferredOperationResultKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR operation,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ deferredOperationJoinKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR operation,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#else
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ deferredOperationJoinKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR operation,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_KHR_pipeline_executable_properties ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result getPipelineExecutablePropertiesKHR(
+ const VULKAN_HPP_NAMESPACE::PipelineInfoKHR * pPipelineInfo,
+ uint32_t * pExecutableCount,
+ VULKAN_HPP_NAMESPACE::PipelineExecutablePropertiesKHR * pProperties,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename PipelineExecutablePropertiesKHRAllocator = std::allocator<PipelineExecutablePropertiesKHR>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD typename ResultValueType<
+ std::vector<PipelineExecutablePropertiesKHR, PipelineExecutablePropertiesKHRAllocator>>::type
+ getPipelineExecutablePropertiesKHR( const PipelineInfoKHR & pipelineInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename PipelineExecutablePropertiesKHRAllocator = std::allocator<PipelineExecutablePropertiesKHR>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename B = PipelineExecutablePropertiesKHRAllocator,
+ typename std::enable_if<std::is_same<typename B::value_type, PipelineExecutablePropertiesKHR>::value,
+ int>::type = 0>
+ VULKAN_HPP_NODISCARD typename ResultValueType<
+ std::vector<PipelineExecutablePropertiesKHR, PipelineExecutablePropertiesKHRAllocator>>::type
+ getPipelineExecutablePropertiesKHR(
+ const PipelineInfoKHR & pipelineInfo,
+ PipelineExecutablePropertiesKHRAllocator & pipelineExecutablePropertiesKHRAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result getPipelineExecutableStatisticsKHR(
+ const VULKAN_HPP_NAMESPACE::PipelineExecutableInfoKHR * pExecutableInfo,
+ uint32_t * pStatisticCount,
+ VULKAN_HPP_NAMESPACE::PipelineExecutableStatisticKHR * pStatistics,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename PipelineExecutableStatisticKHRAllocator = std::allocator<PipelineExecutableStatisticKHR>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD typename ResultValueType<
+ std::vector<PipelineExecutableStatisticKHR, PipelineExecutableStatisticKHRAllocator>>::type
+ getPipelineExecutableStatisticsKHR( const PipelineExecutableInfoKHR & executableInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename PipelineExecutableStatisticKHRAllocator = std::allocator<PipelineExecutableStatisticKHR>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename B = PipelineExecutableStatisticKHRAllocator,
+ typename std::enable_if<std::is_same<typename B::value_type, PipelineExecutableStatisticKHR>::value,
+ int>::type = 0>
+ VULKAN_HPP_NODISCARD typename ResultValueType<
+ std::vector<PipelineExecutableStatisticKHR, PipelineExecutableStatisticKHRAllocator>>::type
+ getPipelineExecutableStatisticsKHR(
+ const PipelineExecutableInfoKHR & executableInfo,
+ PipelineExecutableStatisticKHRAllocator & pipelineExecutableStatisticKHRAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result getPipelineExecutableInternalRepresentationsKHR(
+ const VULKAN_HPP_NAMESPACE::PipelineExecutableInfoKHR * pExecutableInfo,
+ uint32_t * pInternalRepresentationCount,
+ VULKAN_HPP_NAMESPACE::PipelineExecutableInternalRepresentationKHR * pInternalRepresentations,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename PipelineExecutableInternalRepresentationKHRAllocator =
+ std::allocator<PipelineExecutableInternalRepresentationKHR>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD
+ typename ResultValueType<std::vector<PipelineExecutableInternalRepresentationKHR,
+ PipelineExecutableInternalRepresentationKHRAllocator>>::type
+ getPipelineExecutableInternalRepresentationsKHR( const PipelineExecutableInfoKHR & executableInfo,
+ Dispatch const & d
+ VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <
+ typename PipelineExecutableInternalRepresentationKHRAllocator =
+ std::allocator<PipelineExecutableInternalRepresentationKHR>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename B = PipelineExecutableInternalRepresentationKHRAllocator,
+ typename std::enable_if<std::is_same<typename B::value_type, PipelineExecutableInternalRepresentationKHR>::value,
+ int>::type = 0>
+ VULKAN_HPP_NODISCARD
+ typename ResultValueType<std::vector<PipelineExecutableInternalRepresentationKHR,
+ PipelineExecutableInternalRepresentationKHRAllocator>>::type
+ getPipelineExecutableInternalRepresentationsKHR(
+ const PipelineExecutableInfoKHR & executableInfo,
+ PipelineExecutableInternalRepresentationKHRAllocator & pipelineExecutableInternalRepresentationKHRAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_NV_device_generated_commands ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void getGeneratedCommandsMemoryRequirementsNV(
+ const VULKAN_HPP_NAMESPACE::GeneratedCommandsMemoryRequirementsInfoNV * pInfo,
+ VULKAN_HPP_NAMESPACE::MemoryRequirements2 * pMemoryRequirements,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::MemoryRequirements2 getGeneratedCommandsMemoryRequirementsNV(
+ const GeneratedCommandsMemoryRequirementsInfoNV & info,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+ template <typename X, typename Y, typename... Z, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD StructureChain<X, Y, Z...> getGeneratedCommandsMemoryRequirementsNV(
+ const GeneratedCommandsMemoryRequirementsInfoNV & info,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result createIndirectCommandsLayoutNV(
+ const VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutCreateInfoNV * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV * pIndirectCommandsLayout,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV>::type
+ createIndirectCommandsLayoutNV( const IndirectCommandsLayoutCreateInfoNV & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV, Dispatch>>::type
+ createIndirectCommandsLayoutNVUnique( const IndirectCommandsLayoutCreateInfoNV & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroyIndirectCommandsLayoutNV( VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV indirectCommandsLayout,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroyIndirectCommandsLayoutNV(
+ VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV indirectCommandsLayout VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV indirectCommandsLayout,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV indirectCommandsLayout,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_EXT_private_data ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ createPrivateDataSlotEXT( const VULKAN_HPP_NAMESPACE::PrivateDataSlotCreateInfoEXT * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT * pPrivateDataSlot,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT>::type createPrivateDataSlotEXT(
+ const PrivateDataSlotCreateInfoEXT & createInfo,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT, Dispatch>>::type
+ createPrivateDataSlotEXTUnique( const PrivateDataSlotCreateInfoEXT & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroyPrivateDataSlotEXT( VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT privateDataSlot,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroyPrivateDataSlotEXT(
+ VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT privateDataSlot VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT privateDataSlot,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT privateDataSlot,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ setPrivateDataEXT( VULKAN_HPP_NAMESPACE::ObjectType objectType,
+ uint64_t objectHandle,
+ VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT privateDataSlot,
+ uint64_t data,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#else
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ typename ResultValueType<void>::type
+ setPrivateDataEXT( VULKAN_HPP_NAMESPACE::ObjectType objectType,
+ uint64_t objectHandle,
+ VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT privateDataSlot,
+ uint64_t data,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void getPrivateDataEXT( VULKAN_HPP_NAMESPACE::ObjectType objectType,
+ uint64_t objectHandle,
+ VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT privateDataSlot,
+ uint64_t * pData,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD uint64_t
+ getPrivateDataEXT( VULKAN_HPP_NAMESPACE::ObjectType objectType,
+ uint64_t objectHandle,
+ VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT privateDataSlot,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_KHR_ray_tracing_pipeline ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result createRayTracingPipelinesKHR(
+ VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation,
+ VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ uint32_t createInfoCount,
+ const VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoKHR * pCreateInfos,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::Pipeline * pPipelines,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename PipelineAllocator = std::allocator<Pipeline>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD ResultValue<std::vector<Pipeline, PipelineAllocator>> createRayTracingPipelinesKHR(
+ VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation,
+ VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoKHR> const & createInfos,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename PipelineAllocator = std::allocator<Pipeline>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename B = PipelineAllocator,
+ typename std::enable_if<std::is_same<typename B::value_type, Pipeline>::value, int>::type = 0>
+ VULKAN_HPP_NODISCARD ResultValue<std::vector<Pipeline, PipelineAllocator>> createRayTracingPipelinesKHR(
+ VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation,
+ VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoKHR> const & createInfos,
+ Optional<const AllocationCallbacks> allocator,
+ PipelineAllocator & pipelineAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD ResultValue<Pipeline> createRayTracingPipelineKHR(
+ VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation,
+ VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ const VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoKHR & createInfo,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename PipelineAllocator = std::allocator<UniqueHandle<Pipeline, Dispatch>>>
+ VULKAN_HPP_NODISCARD ResultValue<std::vector<UniqueHandle<Pipeline, Dispatch>, PipelineAllocator>>
+ createRayTracingPipelinesKHRUnique(
+ VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation,
+ VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoKHR> const & createInfos,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename PipelineAllocator = std::allocator<UniqueHandle<Pipeline, Dispatch>>,
+ typename B = PipelineAllocator,
+ typename std::enable_if<std::is_same<typename B::value_type, UniqueHandle<Pipeline, Dispatch>>::value,
+ int>::type = 0>
+ VULKAN_HPP_NODISCARD ResultValue<std::vector<UniqueHandle<Pipeline, Dispatch>, PipelineAllocator>>
+ createRayTracingPipelinesKHRUnique(
+ VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation,
+ VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoKHR> const & createInfos,
+ Optional<const AllocationCallbacks> allocator,
+ PipelineAllocator & pipelineAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD ResultValue<UniqueHandle<Pipeline, Dispatch>> createRayTracingPipelineKHRUnique(
+ VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation,
+ VULKAN_HPP_NAMESPACE::PipelineCache pipelineCache,
+ const VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoKHR & createInfo,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result getRayTracingShaderGroupHandlesKHR(
+ VULKAN_HPP_NAMESPACE::Pipeline pipeline,
+ uint32_t firstGroup,
+ uint32_t groupCount,
+ size_t dataSize,
+ void * pData,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename T, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type
+ getRayTracingShaderGroupHandlesKHR( VULKAN_HPP_NAMESPACE::Pipeline pipeline,
+ uint32_t firstGroup,
+ uint32_t groupCount,
+ ArrayProxy<T> const & data,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename T,
+ typename Allocator = std::allocator<T>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<std::vector<T, Allocator>>::type
+ getRayTracingShaderGroupHandlesKHR( VULKAN_HPP_NAMESPACE::Pipeline pipeline,
+ uint32_t firstGroup,
+ uint32_t groupCount,
+ size_t dataSize,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename T, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<T>::type
+ getRayTracingShaderGroupHandleKHR( VULKAN_HPP_NAMESPACE::Pipeline pipeline,
+ uint32_t firstGroup,
+ uint32_t groupCount,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result getRayTracingCaptureReplayShaderGroupHandlesKHR(
+ VULKAN_HPP_NAMESPACE::Pipeline pipeline,
+ uint32_t firstGroup,
+ uint32_t groupCount,
+ size_t dataSize,
+ void * pData,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename T, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type
+ getRayTracingCaptureReplayShaderGroupHandlesKHR( VULKAN_HPP_NAMESPACE::Pipeline pipeline,
+ uint32_t firstGroup,
+ uint32_t groupCount,
+ ArrayProxy<T> const & data,
+ Dispatch const & d
+ VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename T,
+ typename Allocator = std::allocator<T>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<std::vector<T, Allocator>>::type
+ getRayTracingCaptureReplayShaderGroupHandlesKHR( VULKAN_HPP_NAMESPACE::Pipeline pipeline,
+ uint32_t firstGroup,
+ uint32_t groupCount,
+ size_t dataSize,
+ Dispatch const & d
+ VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename T, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<T>::type
+ getRayTracingCaptureReplayShaderGroupHandleKHR( VULKAN_HPP_NAMESPACE::Pipeline pipeline,
+ uint32_t firstGroup,
+ uint32_t groupCount,
+ Dispatch const & d
+ VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ DeviceSize getRayTracingShaderGroupStackSizeKHR( VULKAN_HPP_NAMESPACE::Pipeline pipeline,
+ uint32_t group,
+ VULKAN_HPP_NAMESPACE::ShaderGroupShaderKHR groupShader,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+
+#if defined( VK_USE_PLATFORM_FUCHSIA )
+ //=== VK_FUCHSIA_external_memory ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result getMemoryZirconHandleFUCHSIA(
+ const VULKAN_HPP_NAMESPACE::MemoryGetZirconHandleInfoFUCHSIA * pGetZirconHandleInfo,
+ zx_handle_t * pZirconHandle,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<zx_handle_t>::type
+ getMemoryZirconHandleFUCHSIA( const MemoryGetZirconHandleInfoFUCHSIA & getZirconHandleInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result getMemoryZirconHandlePropertiesFUCHSIA(
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType,
+ zx_handle_t zirconHandle,
+ VULKAN_HPP_NAMESPACE::MemoryZirconHandlePropertiesFUCHSIA * pMemoryZirconHandleProperties,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::MemoryZirconHandlePropertiesFUCHSIA>::type
+ getMemoryZirconHandlePropertiesFUCHSIA( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType,
+ zx_handle_t zirconHandle,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_USE_PLATFORM_FUCHSIA*/
+
+#if defined( VK_USE_PLATFORM_FUCHSIA )
+ //=== VK_FUCHSIA_external_semaphore ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result importSemaphoreZirconHandleFUCHSIA(
+ const VULKAN_HPP_NAMESPACE::ImportSemaphoreZirconHandleInfoFUCHSIA * pImportSemaphoreZirconHandleInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type importSemaphoreZirconHandleFUCHSIA(
+ const ImportSemaphoreZirconHandleInfoFUCHSIA & importSemaphoreZirconHandleInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result getSemaphoreZirconHandleFUCHSIA(
+ const VULKAN_HPP_NAMESPACE::SemaphoreGetZirconHandleInfoFUCHSIA * pGetZirconHandleInfo,
+ zx_handle_t * pZirconHandle,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<zx_handle_t>::type
+ getSemaphoreZirconHandleFUCHSIA( const SemaphoreGetZirconHandleInfoFUCHSIA & getZirconHandleInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_USE_PLATFORM_FUCHSIA*/
+
+ VULKAN_HPP_TYPESAFE_EXPLICIT operator VkDevice() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_device;
+ }
+
+ explicit operator bool() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_device != VK_NULL_HANDLE;
+ }
+
+ bool operator!() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_device == VK_NULL_HANDLE;
+ }
+
+ private:
+ VkDevice m_device = {};
+ };
+ static_assert( sizeof( VULKAN_HPP_NAMESPACE::Device ) == sizeof( VkDevice ),
+ "handle and wrapper have different size!" );
+
+ template <>
+ struct VULKAN_HPP_DEPRECATED( "vk::cpp_type is deprecated. Use vk::CppType instead." ) cpp_type<ObjectType::eDevice>
+ {
+ using type = VULKAN_HPP_NAMESPACE::Device;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eDevice>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::Device;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT,
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eDevice>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::Device;
+ };
+
+ template <>
+ struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::Device>
+ {
+ static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
+ };
+
+ class DisplayModeKHR
+ {
+ public:
+ using CType = VkDisplayModeKHR;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eDisplayModeKHR;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eDisplayModeKHR;
+
+ public:
+ VULKAN_HPP_CONSTEXPR DisplayModeKHR() = default;
+ VULKAN_HPP_CONSTEXPR DisplayModeKHR( std::nullptr_t ) VULKAN_HPP_NOEXCEPT {}
+ VULKAN_HPP_TYPESAFE_EXPLICIT DisplayModeKHR( VkDisplayModeKHR displayModeKHR ) VULKAN_HPP_NOEXCEPT
+ : m_displayModeKHR( displayModeKHR )
+ {}
+
+#if defined( VULKAN_HPP_TYPESAFE_CONVERSION )
+ DisplayModeKHR & operator=( VkDisplayModeKHR displayModeKHR ) VULKAN_HPP_NOEXCEPT
+ {
+ m_displayModeKHR = displayModeKHR;
+ return *this;
+ }
+#endif
+
+ DisplayModeKHR & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
+ {
+ m_displayModeKHR = {};
+ return *this;
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DisplayModeKHR const & ) const = default;
+#else
+ bool operator==( DisplayModeKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_displayModeKHR == rhs.m_displayModeKHR;
+ }
+
+ bool operator!=( DisplayModeKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_displayModeKHR != rhs.m_displayModeKHR;
+ }
+
+ bool operator<( DisplayModeKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_displayModeKHR < rhs.m_displayModeKHR;
+ }
+#endif
+
+ VULKAN_HPP_TYPESAFE_EXPLICIT operator VkDisplayModeKHR() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_displayModeKHR;
+ }
+
+ explicit operator bool() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_displayModeKHR != VK_NULL_HANDLE;
+ }
+
+ bool operator!() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_displayModeKHR == VK_NULL_HANDLE;
+ }
+
+ private:
+ VkDisplayModeKHR m_displayModeKHR = {};
+ };
+ static_assert( sizeof( VULKAN_HPP_NAMESPACE::DisplayModeKHR ) == sizeof( VkDisplayModeKHR ),
+ "handle and wrapper have different size!" );
+
+ template <>
+ struct VULKAN_HPP_DEPRECATED(
+ "vk::cpp_type is deprecated. Use vk::CppType instead." ) cpp_type<ObjectType::eDisplayModeKHR>
+ {
+ using type = VULKAN_HPP_NAMESPACE::DisplayModeKHR;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eDisplayModeKHR>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::DisplayModeKHR;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT,
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eDisplayModeKHR>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::DisplayModeKHR;
+ };
+
+ template <>
+ struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::DisplayModeKHR>
+ {
+ static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
+ };
+
+#ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ class UniqueHandleTraits<Device, Dispatch>
+ {
+ public:
+ using deleter = ObjectDestroy<NoParent, Dispatch>;
+ };
+ using UniqueDevice = UniqueHandle<Device, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
+#endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+
+ class PhysicalDevice
+ {
+ public:
+ using CType = VkPhysicalDevice;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::ePhysicalDevice;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::ePhysicalDevice;
+
+ public:
+ VULKAN_HPP_CONSTEXPR PhysicalDevice() = default;
+ VULKAN_HPP_CONSTEXPR PhysicalDevice( std::nullptr_t ) VULKAN_HPP_NOEXCEPT {}
+ VULKAN_HPP_TYPESAFE_EXPLICIT PhysicalDevice( VkPhysicalDevice physicalDevice ) VULKAN_HPP_NOEXCEPT
+ : m_physicalDevice( physicalDevice )
+ {}
+
+#if defined( VULKAN_HPP_TYPESAFE_CONVERSION )
+ PhysicalDevice & operator=( VkPhysicalDevice physicalDevice ) VULKAN_HPP_NOEXCEPT
+ {
+ m_physicalDevice = physicalDevice;
+ return *this;
+ }
+#endif
+
+ PhysicalDevice & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
+ {
+ m_physicalDevice = {};
+ return *this;
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDevice const & ) const = default;
+#else
+ bool operator==( PhysicalDevice const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_physicalDevice == rhs.m_physicalDevice;
+ }
+
+ bool operator!=( PhysicalDevice const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_physicalDevice != rhs.m_physicalDevice;
+ }
+
+ bool operator<( PhysicalDevice const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_physicalDevice < rhs.m_physicalDevice;
+ }
+#endif
+
+ //=== VK_VERSION_1_0 ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void getFeatures( VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures * pFeatures,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures
+ getFeatures( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void getFormatProperties( VULKAN_HPP_NAMESPACE::Format format,
+ VULKAN_HPP_NAMESPACE::FormatProperties * pFormatProperties,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::FormatProperties
+ getFormatProperties( VULKAN_HPP_NAMESPACE::Format format,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ getImageFormatProperties( VULKAN_HPP_NAMESPACE::Format format,
+ VULKAN_HPP_NAMESPACE::ImageType type,
+ VULKAN_HPP_NAMESPACE::ImageTiling tiling,
+ VULKAN_HPP_NAMESPACE::ImageUsageFlags usage,
+ VULKAN_HPP_NAMESPACE::ImageCreateFlags flags,
+ VULKAN_HPP_NAMESPACE::ImageFormatProperties * pImageFormatProperties,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::ImageFormatProperties>::type
+ getImageFormatProperties( VULKAN_HPP_NAMESPACE::Format format,
+ VULKAN_HPP_NAMESPACE::ImageType type,
+ VULKAN_HPP_NAMESPACE::ImageTiling tiling,
+ VULKAN_HPP_NAMESPACE::ImageUsageFlags usage,
+ VULKAN_HPP_NAMESPACE::ImageCreateFlags flags VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void getProperties( VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties * pProperties,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties
+ getProperties( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void
+ getQueueFamilyProperties( uint32_t * pQueueFamilyPropertyCount,
+ VULKAN_HPP_NAMESPACE::QueueFamilyProperties * pQueueFamilyProperties,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename QueueFamilyPropertiesAllocator = std::allocator<QueueFamilyProperties>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD std::vector<QueueFamilyProperties, QueueFamilyPropertiesAllocator>
+ getQueueFamilyProperties( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <
+ typename QueueFamilyPropertiesAllocator = std::allocator<QueueFamilyProperties>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename B = QueueFamilyPropertiesAllocator,
+ typename std::enable_if<std::is_same<typename B::value_type, QueueFamilyProperties>::value, int>::type = 0>
+ VULKAN_HPP_NODISCARD std::vector<QueueFamilyProperties, QueueFamilyPropertiesAllocator>
+ getQueueFamilyProperties( QueueFamilyPropertiesAllocator & queueFamilyPropertiesAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void getMemoryProperties( VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties * pMemoryProperties,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties
+ getMemoryProperties( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ createDevice( const VULKAN_HPP_NAMESPACE::DeviceCreateInfo * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::Device * pDevice,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::Device>::type
+ createDevice( const DeviceCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::Device, Dispatch>>::type
+ createDeviceUnique( const DeviceCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result enumerateDeviceExtensionProperties(
+ const char * pLayerName,
+ uint32_t * pPropertyCount,
+ VULKAN_HPP_NAMESPACE::ExtensionProperties * pProperties,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename ExtensionPropertiesAllocator = std::allocator<ExtensionProperties>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<ExtensionProperties, ExtensionPropertiesAllocator>>::type
+ enumerateDeviceExtensionProperties( Optional<const std::string> layerName
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename ExtensionPropertiesAllocator = std::allocator<ExtensionProperties>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename B = ExtensionPropertiesAllocator,
+ typename std::enable_if<std::is_same<typename B::value_type, ExtensionProperties>::value, int>::type = 0>
+ VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<ExtensionProperties, ExtensionPropertiesAllocator>>::type
+ enumerateDeviceExtensionProperties( Optional<const std::string> layerName,
+ ExtensionPropertiesAllocator & extensionPropertiesAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result enumerateDeviceLayerProperties(
+ uint32_t * pPropertyCount,
+ VULKAN_HPP_NAMESPACE::LayerProperties * pProperties,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename LayerPropertiesAllocator = std::allocator<LayerProperties>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<LayerProperties, LayerPropertiesAllocator>>::type
+ enumerateDeviceLayerProperties( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename LayerPropertiesAllocator = std::allocator<LayerProperties>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename B = LayerPropertiesAllocator,
+ typename std::enable_if<std::is_same<typename B::value_type, LayerProperties>::value, int>::type = 0>
+ VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<LayerProperties, LayerPropertiesAllocator>>::type
+ enumerateDeviceLayerProperties( LayerPropertiesAllocator & layerPropertiesAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void getSparseImageFormatProperties( VULKAN_HPP_NAMESPACE::Format format,
+ VULKAN_HPP_NAMESPACE::ImageType type,
+ VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples,
+ VULKAN_HPP_NAMESPACE::ImageUsageFlags usage,
+ VULKAN_HPP_NAMESPACE::ImageTiling tiling,
+ uint32_t * pPropertyCount,
+ VULKAN_HPP_NAMESPACE::SparseImageFormatProperties * pProperties,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename SparseImageFormatPropertiesAllocator = std::allocator<SparseImageFormatProperties>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD std::vector<SparseImageFormatProperties, SparseImageFormatPropertiesAllocator>
+ getSparseImageFormatProperties( VULKAN_HPP_NAMESPACE::Format format,
+ VULKAN_HPP_NAMESPACE::ImageType type,
+ VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples,
+ VULKAN_HPP_NAMESPACE::ImageUsageFlags usage,
+ VULKAN_HPP_NAMESPACE::ImageTiling tiling,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <
+ typename SparseImageFormatPropertiesAllocator = std::allocator<SparseImageFormatProperties>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename B = SparseImageFormatPropertiesAllocator,
+ typename std::enable_if<std::is_same<typename B::value_type, SparseImageFormatProperties>::value, int>::type = 0>
+ VULKAN_HPP_NODISCARD std::vector<SparseImageFormatProperties, SparseImageFormatPropertiesAllocator>
+ getSparseImageFormatProperties( VULKAN_HPP_NAMESPACE::Format format,
+ VULKAN_HPP_NAMESPACE::ImageType type,
+ VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples,
+ VULKAN_HPP_NAMESPACE::ImageUsageFlags usage,
+ VULKAN_HPP_NAMESPACE::ImageTiling tiling,
+ SparseImageFormatPropertiesAllocator & sparseImageFormatPropertiesAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_VERSION_1_1 ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void getFeatures2( VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures2 * pFeatures,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures2
+ getFeatures2( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+ template <typename X, typename Y, typename... Z, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD StructureChain<X, Y, Z...>
+ getFeatures2( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void getProperties2( VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties2 * pProperties,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties2
+ getProperties2( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+ template <typename X, typename Y, typename... Z, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD StructureChain<X, Y, Z...>
+ getProperties2( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void getFormatProperties2( VULKAN_HPP_NAMESPACE::Format format,
+ VULKAN_HPP_NAMESPACE::FormatProperties2 * pFormatProperties,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::FormatProperties2
+ getFormatProperties2( VULKAN_HPP_NAMESPACE::Format format,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+ template <typename X, typename Y, typename... Z, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD StructureChain<X, Y, Z...>
+ getFormatProperties2( VULKAN_HPP_NAMESPACE::Format format,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result getImageFormatProperties2(
+ const VULKAN_HPP_NAMESPACE::PhysicalDeviceImageFormatInfo2 * pImageFormatInfo,
+ VULKAN_HPP_NAMESPACE::ImageFormatProperties2 * pImageFormatProperties,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::ImageFormatProperties2>::type
+ getImageFormatProperties2( const PhysicalDeviceImageFormatInfo2 & imageFormatInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename X, typename Y, typename... Z, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<StructureChain<X, Y, Z...>>::type
+ getImageFormatProperties2( const PhysicalDeviceImageFormatInfo2 & imageFormatInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void getQueueFamilyProperties2( uint32_t * pQueueFamilyPropertyCount,
+ VULKAN_HPP_NAMESPACE::QueueFamilyProperties2 * pQueueFamilyProperties,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename QueueFamilyProperties2Allocator = std::allocator<QueueFamilyProperties2>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD std::vector<QueueFamilyProperties2, QueueFamilyProperties2Allocator>
+ getQueueFamilyProperties2( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <
+ typename QueueFamilyProperties2Allocator = std::allocator<QueueFamilyProperties2>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename B = QueueFamilyProperties2Allocator,
+ typename std::enable_if<std::is_same<typename B::value_type, QueueFamilyProperties2>::value, int>::type = 0>
+ VULKAN_HPP_NODISCARD std::vector<QueueFamilyProperties2, QueueFamilyProperties2Allocator>
+ getQueueFamilyProperties2( QueueFamilyProperties2Allocator & queueFamilyProperties2Allocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename StructureChain,
+ typename StructureChainAllocator = std::allocator<StructureChain>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD std::vector<StructureChain, StructureChainAllocator>
+ getQueueFamilyProperties2( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename StructureChain,
+ typename StructureChainAllocator = std::allocator<StructureChain>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename B = StructureChainAllocator,
+ typename std::enable_if<std::is_same<typename B::value_type, StructureChain>::value, int>::type = 0>
+ VULKAN_HPP_NODISCARD std::vector<StructureChain, StructureChainAllocator>
+ getQueueFamilyProperties2( StructureChainAllocator & structureChainAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void getMemoryProperties2( VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties2 * pMemoryProperties,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties2
+ getMemoryProperties2( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+ template <typename X, typename Y, typename... Z, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD StructureChain<X, Y, Z...>
+ getMemoryProperties2( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void getSparseImageFormatProperties2(
+ const VULKAN_HPP_NAMESPACE::PhysicalDeviceSparseImageFormatInfo2 * pFormatInfo,
+ uint32_t * pPropertyCount,
+ VULKAN_HPP_NAMESPACE::SparseImageFormatProperties2 * pProperties,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename SparseImageFormatProperties2Allocator = std::allocator<SparseImageFormatProperties2>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD std::vector<SparseImageFormatProperties2, SparseImageFormatProperties2Allocator>
+ getSparseImageFormatProperties2( const PhysicalDeviceSparseImageFormatInfo2 & formatInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <
+ typename SparseImageFormatProperties2Allocator = std::allocator<SparseImageFormatProperties2>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename B = SparseImageFormatProperties2Allocator,
+ typename std::enable_if<std::is_same<typename B::value_type, SparseImageFormatProperties2>::value, int>::type = 0>
+ VULKAN_HPP_NODISCARD std::vector<SparseImageFormatProperties2, SparseImageFormatProperties2Allocator>
+ getSparseImageFormatProperties2( const PhysicalDeviceSparseImageFormatInfo2 & formatInfo,
+ SparseImageFormatProperties2Allocator & sparseImageFormatProperties2Allocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void getExternalBufferProperties(
+ const VULKAN_HPP_NAMESPACE::PhysicalDeviceExternalBufferInfo * pExternalBufferInfo,
+ VULKAN_HPP_NAMESPACE::ExternalBufferProperties * pExternalBufferProperties,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::ExternalBufferProperties getExternalBufferProperties(
+ const PhysicalDeviceExternalBufferInfo & externalBufferInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void getExternalFenceProperties( const VULKAN_HPP_NAMESPACE::PhysicalDeviceExternalFenceInfo * pExternalFenceInfo,
+ VULKAN_HPP_NAMESPACE::ExternalFenceProperties * pExternalFenceProperties,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::ExternalFenceProperties getExternalFenceProperties(
+ const PhysicalDeviceExternalFenceInfo & externalFenceInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void getExternalSemaphoreProperties(
+ const VULKAN_HPP_NAMESPACE::PhysicalDeviceExternalSemaphoreInfo * pExternalSemaphoreInfo,
+ VULKAN_HPP_NAMESPACE::ExternalSemaphoreProperties * pExternalSemaphoreProperties,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::ExternalSemaphoreProperties getExternalSemaphoreProperties(
+ const PhysicalDeviceExternalSemaphoreInfo & externalSemaphoreInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_KHR_surface ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ getSurfaceSupportKHR( uint32_t queueFamilyIndex,
+ VULKAN_HPP_NAMESPACE::SurfaceKHR surface,
+ VULKAN_HPP_NAMESPACE::Bool32 * pSupported,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::Bool32>::type
+ getSurfaceSupportKHR( uint32_t queueFamilyIndex,
+ VULKAN_HPP_NAMESPACE::SurfaceKHR surface,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result getSurfaceCapabilitiesKHR(
+ VULKAN_HPP_NAMESPACE::SurfaceKHR surface,
+ VULKAN_HPP_NAMESPACE::SurfaceCapabilitiesKHR * pSurfaceCapabilities,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceCapabilitiesKHR>::type
+ getSurfaceCapabilitiesKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ getSurfaceFormatsKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface,
+ uint32_t * pSurfaceFormatCount,
+ VULKAN_HPP_NAMESPACE::SurfaceFormatKHR * pSurfaceFormats,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename SurfaceFormatKHRAllocator = std::allocator<SurfaceFormatKHR>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<SurfaceFormatKHR, SurfaceFormatKHRAllocator>>::type
+ getSurfaceFormatsKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename SurfaceFormatKHRAllocator = std::allocator<SurfaceFormatKHR>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename B = SurfaceFormatKHRAllocator,
+ typename std::enable_if<std::is_same<typename B::value_type, SurfaceFormatKHR>::value, int>::type = 0>
+ VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<SurfaceFormatKHR, SurfaceFormatKHRAllocator>>::type
+ getSurfaceFormatsKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface,
+ SurfaceFormatKHRAllocator & surfaceFormatKHRAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result getSurfacePresentModesKHR(
+ VULKAN_HPP_NAMESPACE::SurfaceKHR surface,
+ uint32_t * pPresentModeCount,
+ VULKAN_HPP_NAMESPACE::PresentModeKHR * pPresentModes,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename PresentModeKHRAllocator = std::allocator<PresentModeKHR>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<PresentModeKHR, PresentModeKHRAllocator>>::type
+ getSurfacePresentModesKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename PresentModeKHRAllocator = std::allocator<PresentModeKHR>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename B = PresentModeKHRAllocator,
+ typename std::enable_if<std::is_same<typename B::value_type, PresentModeKHR>::value, int>::type = 0>
+ VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<PresentModeKHR, PresentModeKHRAllocator>>::type
+ getSurfacePresentModesKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface,
+ PresentModeKHRAllocator & presentModeKHRAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_KHR_swapchain ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ getPresentRectanglesKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface,
+ uint32_t * pRectCount,
+ VULKAN_HPP_NAMESPACE::Rect2D * pRects,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Rect2DAllocator = std::allocator<Rect2D>, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<Rect2D, Rect2DAllocator>>::type
+ getPresentRectanglesKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename Rect2DAllocator = std::allocator<Rect2D>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename B = Rect2DAllocator,
+ typename std::enable_if<std::is_same<typename B::value_type, Rect2D>::value, int>::type = 0>
+ VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<Rect2D, Rect2DAllocator>>::type
+ getPresentRectanglesKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface,
+ Rect2DAllocator & rect2DAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_KHR_display ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ getDisplayPropertiesKHR( uint32_t * pPropertyCount,
+ VULKAN_HPP_NAMESPACE::DisplayPropertiesKHR * pProperties,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename DisplayPropertiesKHRAllocator = std::allocator<DisplayPropertiesKHR>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD
+ typename ResultValueType<std::vector<DisplayPropertiesKHR, DisplayPropertiesKHRAllocator>>::type
+ getDisplayPropertiesKHR( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename DisplayPropertiesKHRAllocator = std::allocator<DisplayPropertiesKHR>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename B = DisplayPropertiesKHRAllocator,
+ typename std::enable_if<std::is_same<typename B::value_type, DisplayPropertiesKHR>::value, int>::type = 0>
+ VULKAN_HPP_NODISCARD
+ typename ResultValueType<std::vector<DisplayPropertiesKHR, DisplayPropertiesKHRAllocator>>::type
+ getDisplayPropertiesKHR( DisplayPropertiesKHRAllocator & displayPropertiesKHRAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result getDisplayPlanePropertiesKHR(
+ uint32_t * pPropertyCount,
+ VULKAN_HPP_NAMESPACE::DisplayPlanePropertiesKHR * pProperties,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename DisplayPlanePropertiesKHRAllocator = std::allocator<DisplayPlanePropertiesKHR>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD
+ typename ResultValueType<std::vector<DisplayPlanePropertiesKHR, DisplayPlanePropertiesKHRAllocator>>::type
+ getDisplayPlanePropertiesKHR( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <
+ typename DisplayPlanePropertiesKHRAllocator = std::allocator<DisplayPlanePropertiesKHR>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename B = DisplayPlanePropertiesKHRAllocator,
+ typename std::enable_if<std::is_same<typename B::value_type, DisplayPlanePropertiesKHR>::value, int>::type = 0>
+ VULKAN_HPP_NODISCARD
+ typename ResultValueType<std::vector<DisplayPlanePropertiesKHR, DisplayPlanePropertiesKHRAllocator>>::type
+ getDisplayPlanePropertiesKHR( DisplayPlanePropertiesKHRAllocator & displayPlanePropertiesKHRAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result getDisplayPlaneSupportedDisplaysKHR(
+ uint32_t planeIndex,
+ uint32_t * pDisplayCount,
+ VULKAN_HPP_NAMESPACE::DisplayKHR * pDisplays,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename DisplayKHRAllocator = std::allocator<DisplayKHR>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<DisplayKHR, DisplayKHRAllocator>>::type
+ getDisplayPlaneSupportedDisplaysKHR( uint32_t planeIndex,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename DisplayKHRAllocator = std::allocator<DisplayKHR>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename B = DisplayKHRAllocator,
+ typename std::enable_if<std::is_same<typename B::value_type, DisplayKHR>::value, int>::type = 0>
+ VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<DisplayKHR, DisplayKHRAllocator>>::type
+ getDisplayPlaneSupportedDisplaysKHR( uint32_t planeIndex,
+ DisplayKHRAllocator & displayKHRAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result getDisplayModePropertiesKHR(
+ VULKAN_HPP_NAMESPACE::DisplayKHR display,
+ uint32_t * pPropertyCount,
+ VULKAN_HPP_NAMESPACE::DisplayModePropertiesKHR * pProperties,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename DisplayModePropertiesKHRAllocator = std::allocator<DisplayModePropertiesKHR>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD
+ typename ResultValueType<std::vector<DisplayModePropertiesKHR, DisplayModePropertiesKHRAllocator>>::type
+ getDisplayModePropertiesKHR( VULKAN_HPP_NAMESPACE::DisplayKHR display,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <
+ typename DisplayModePropertiesKHRAllocator = std::allocator<DisplayModePropertiesKHR>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename B = DisplayModePropertiesKHRAllocator,
+ typename std::enable_if<std::is_same<typename B::value_type, DisplayModePropertiesKHR>::value, int>::type = 0>
+ VULKAN_HPP_NODISCARD
+ typename ResultValueType<std::vector<DisplayModePropertiesKHR, DisplayModePropertiesKHRAllocator>>::type
+ getDisplayModePropertiesKHR( VULKAN_HPP_NAMESPACE::DisplayKHR display,
+ DisplayModePropertiesKHRAllocator & displayModePropertiesKHRAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ createDisplayModeKHR( VULKAN_HPP_NAMESPACE::DisplayKHR display,
+ const VULKAN_HPP_NAMESPACE::DisplayModeCreateInfoKHR * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::DisplayModeKHR * pMode,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::DisplayModeKHR>::type
+ createDisplayModeKHR( VULKAN_HPP_NAMESPACE::DisplayKHR display,
+ const DisplayModeCreateInfoKHR & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::DisplayModeKHR, Dispatch>>::type
+ createDisplayModeKHRUnique( VULKAN_HPP_NAMESPACE::DisplayKHR display,
+ const DisplayModeCreateInfoKHR & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result getDisplayPlaneCapabilitiesKHR(
+ VULKAN_HPP_NAMESPACE::DisplayModeKHR mode,
+ uint32_t planeIndex,
+ VULKAN_HPP_NAMESPACE::DisplayPlaneCapabilitiesKHR * pCapabilities,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::DisplayPlaneCapabilitiesKHR>::type
+ getDisplayPlaneCapabilitiesKHR( VULKAN_HPP_NAMESPACE::DisplayModeKHR mode,
+ uint32_t planeIndex,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#if defined( VK_USE_PLATFORM_XLIB_KHR )
+ //=== VK_KHR_xlib_surface ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ Bool32 getXlibPresentationSupportKHR( uint32_t queueFamilyIndex,
+ Display * dpy,
+ VisualID visualID,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ Bool32 getXlibPresentationSupportKHR( uint32_t queueFamilyIndex,
+ Display & dpy,
+ VisualID visualID,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_USE_PLATFORM_XLIB_KHR*/
+
+#if defined( VK_USE_PLATFORM_XCB_KHR )
+ //=== VK_KHR_xcb_surface ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ Bool32 getXcbPresentationSupportKHR( uint32_t queueFamilyIndex,
+ xcb_connection_t * connection,
+ xcb_visualid_t visual_id,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ Bool32 getXcbPresentationSupportKHR( uint32_t queueFamilyIndex,
+ xcb_connection_t & connection,
+ xcb_visualid_t visual_id,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_USE_PLATFORM_XCB_KHR*/
+
+#if defined( VK_USE_PLATFORM_WAYLAND_KHR )
+ //=== VK_KHR_wayland_surface ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ Bool32 getWaylandPresentationSupportKHR( uint32_t queueFamilyIndex,
+ struct wl_display * display,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ Bool32 getWaylandPresentationSupportKHR( uint32_t queueFamilyIndex,
+ struct wl_display & display,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_USE_PLATFORM_WAYLAND_KHR*/
+
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ //=== VK_KHR_win32_surface ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ Bool32 getWin32PresentationSupportKHR( uint32_t queueFamilyIndex,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ //=== VK_KHR_video_queue ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ getVideoCapabilitiesKHR( const VULKAN_HPP_NAMESPACE::VideoProfileKHR * pVideoProfile,
+ VULKAN_HPP_NAMESPACE::VideoCapabilitiesKHR * pCapabilities,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::VideoCapabilitiesKHR>::type
+ getVideoCapabilitiesKHR( const VideoProfileKHR & videoProfile,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename X, typename Y, typename... Z, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<StructureChain<X, Y, Z...>>::type
+ getVideoCapabilitiesKHR( const VideoProfileKHR & videoProfile,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result getVideoFormatPropertiesKHR(
+ const VULKAN_HPP_NAMESPACE::PhysicalDeviceVideoFormatInfoKHR * pVideoFormatInfo,
+ uint32_t * pVideoFormatPropertyCount,
+ VULKAN_HPP_NAMESPACE::VideoFormatPropertiesKHR * pVideoFormatProperties,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename VideoFormatPropertiesKHRAllocator = std::allocator<VideoFormatPropertiesKHR>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD
+ typename ResultValueType<std::vector<VideoFormatPropertiesKHR, VideoFormatPropertiesKHRAllocator>>::type
+ getVideoFormatPropertiesKHR( const PhysicalDeviceVideoFormatInfoKHR & videoFormatInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <
+ typename VideoFormatPropertiesKHRAllocator = std::allocator<VideoFormatPropertiesKHR>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename B = VideoFormatPropertiesKHRAllocator,
+ typename std::enable_if<std::is_same<typename B::value_type, VideoFormatPropertiesKHR>::value, int>::type = 0>
+ VULKAN_HPP_NODISCARD
+ typename ResultValueType<std::vector<VideoFormatPropertiesKHR, VideoFormatPropertiesKHRAllocator>>::type
+ getVideoFormatPropertiesKHR( const PhysicalDeviceVideoFormatInfoKHR & videoFormatInfo,
+ VideoFormatPropertiesKHRAllocator & videoFormatPropertiesKHRAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+ //=== VK_NV_external_memory_capabilities ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result getExternalImageFormatPropertiesNV(
+ VULKAN_HPP_NAMESPACE::Format format,
+ VULKAN_HPP_NAMESPACE::ImageType type,
+ VULKAN_HPP_NAMESPACE::ImageTiling tiling,
+ VULKAN_HPP_NAMESPACE::ImageUsageFlags usage,
+ VULKAN_HPP_NAMESPACE::ImageCreateFlags flags,
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV externalHandleType,
+ VULKAN_HPP_NAMESPACE::ExternalImageFormatPropertiesNV * pExternalImageFormatProperties,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::ExternalImageFormatPropertiesNV>::type
+ getExternalImageFormatPropertiesNV(
+ VULKAN_HPP_NAMESPACE::Format format,
+ VULKAN_HPP_NAMESPACE::ImageType type,
+ VULKAN_HPP_NAMESPACE::ImageTiling tiling,
+ VULKAN_HPP_NAMESPACE::ImageUsageFlags usage,
+ VULKAN_HPP_NAMESPACE::ImageCreateFlags flags VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT,
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV externalHandleType VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_KHR_get_physical_device_properties2 ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void getFeatures2KHR( VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures2 * pFeatures,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures2
+ getFeatures2KHR( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+ template <typename X, typename Y, typename... Z, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD StructureChain<X, Y, Z...>
+ getFeatures2KHR( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void getProperties2KHR( VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties2 * pProperties,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties2
+ getProperties2KHR( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+ template <typename X, typename Y, typename... Z, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD StructureChain<X, Y, Z...>
+ getProperties2KHR( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void
+ getFormatProperties2KHR( VULKAN_HPP_NAMESPACE::Format format,
+ VULKAN_HPP_NAMESPACE::FormatProperties2 * pFormatProperties,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::FormatProperties2
+ getFormatProperties2KHR( VULKAN_HPP_NAMESPACE::Format format,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+ template <typename X, typename Y, typename... Z, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD StructureChain<X, Y, Z...>
+ getFormatProperties2KHR( VULKAN_HPP_NAMESPACE::Format format,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result getImageFormatProperties2KHR(
+ const VULKAN_HPP_NAMESPACE::PhysicalDeviceImageFormatInfo2 * pImageFormatInfo,
+ VULKAN_HPP_NAMESPACE::ImageFormatProperties2 * pImageFormatProperties,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::ImageFormatProperties2>::type
+ getImageFormatProperties2KHR( const PhysicalDeviceImageFormatInfo2 & imageFormatInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename X, typename Y, typename... Z, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<StructureChain<X, Y, Z...>>::type
+ getImageFormatProperties2KHR( const PhysicalDeviceImageFormatInfo2 & imageFormatInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void getQueueFamilyProperties2KHR( uint32_t * pQueueFamilyPropertyCount,
+ VULKAN_HPP_NAMESPACE::QueueFamilyProperties2 * pQueueFamilyProperties,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename QueueFamilyProperties2Allocator = std::allocator<QueueFamilyProperties2>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD std::vector<QueueFamilyProperties2, QueueFamilyProperties2Allocator>
+ getQueueFamilyProperties2KHR( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <
+ typename QueueFamilyProperties2Allocator = std::allocator<QueueFamilyProperties2>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename B = QueueFamilyProperties2Allocator,
+ typename std::enable_if<std::is_same<typename B::value_type, QueueFamilyProperties2>::value, int>::type = 0>
+ VULKAN_HPP_NODISCARD std::vector<QueueFamilyProperties2, QueueFamilyProperties2Allocator>
+ getQueueFamilyProperties2KHR( QueueFamilyProperties2Allocator & queueFamilyProperties2Allocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename StructureChain,
+ typename StructureChainAllocator = std::allocator<StructureChain>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD std::vector<StructureChain, StructureChainAllocator>
+ getQueueFamilyProperties2KHR( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename StructureChain,
+ typename StructureChainAllocator = std::allocator<StructureChain>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename B = StructureChainAllocator,
+ typename std::enable_if<std::is_same<typename B::value_type, StructureChain>::value, int>::type = 0>
+ VULKAN_HPP_NODISCARD std::vector<StructureChain, StructureChainAllocator>
+ getQueueFamilyProperties2KHR( StructureChainAllocator & structureChainAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void
+ getMemoryProperties2KHR( VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties2 * pMemoryProperties,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties2
+ getMemoryProperties2KHR( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+ template <typename X, typename Y, typename... Z, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD StructureChain<X, Y, Z...>
+ getMemoryProperties2KHR( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void getSparseImageFormatProperties2KHR(
+ const VULKAN_HPP_NAMESPACE::PhysicalDeviceSparseImageFormatInfo2 * pFormatInfo,
+ uint32_t * pPropertyCount,
+ VULKAN_HPP_NAMESPACE::SparseImageFormatProperties2 * pProperties,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename SparseImageFormatProperties2Allocator = std::allocator<SparseImageFormatProperties2>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD std::vector<SparseImageFormatProperties2, SparseImageFormatProperties2Allocator>
+ getSparseImageFormatProperties2KHR( const PhysicalDeviceSparseImageFormatInfo2 & formatInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <
+ typename SparseImageFormatProperties2Allocator = std::allocator<SparseImageFormatProperties2>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename B = SparseImageFormatProperties2Allocator,
+ typename std::enable_if<std::is_same<typename B::value_type, SparseImageFormatProperties2>::value, int>::type = 0>
+ VULKAN_HPP_NODISCARD std::vector<SparseImageFormatProperties2, SparseImageFormatProperties2Allocator>
+ getSparseImageFormatProperties2KHR( const PhysicalDeviceSparseImageFormatInfo2 & formatInfo,
+ SparseImageFormatProperties2Allocator & sparseImageFormatProperties2Allocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_KHR_external_memory_capabilities ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void getExternalBufferPropertiesKHR(
+ const VULKAN_HPP_NAMESPACE::PhysicalDeviceExternalBufferInfo * pExternalBufferInfo,
+ VULKAN_HPP_NAMESPACE::ExternalBufferProperties * pExternalBufferProperties,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::ExternalBufferProperties getExternalBufferPropertiesKHR(
+ const PhysicalDeviceExternalBufferInfo & externalBufferInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_KHR_external_semaphore_capabilities ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void getExternalSemaphorePropertiesKHR(
+ const VULKAN_HPP_NAMESPACE::PhysicalDeviceExternalSemaphoreInfo * pExternalSemaphoreInfo,
+ VULKAN_HPP_NAMESPACE::ExternalSemaphoreProperties * pExternalSemaphoreProperties,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::ExternalSemaphoreProperties getExternalSemaphorePropertiesKHR(
+ const PhysicalDeviceExternalSemaphoreInfo & externalSemaphoreInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_EXT_direct_mode_display ===
+
+#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ Result releaseDisplayEXT( VULKAN_HPP_NAMESPACE::DisplayKHR display,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#else
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ typename ResultValueType<void>::type
+ releaseDisplayEXT( VULKAN_HPP_NAMESPACE::DisplayKHR display,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#if defined( VK_USE_PLATFORM_XLIB_XRANDR_EXT )
+ //=== VK_EXT_acquire_xlib_display ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ acquireXlibDisplayEXT( Display * dpy,
+ VULKAN_HPP_NAMESPACE::DisplayKHR display,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type
+ acquireXlibDisplayEXT( Display & dpy,
+ VULKAN_HPP_NAMESPACE::DisplayKHR display,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ getRandROutputDisplayEXT( Display * dpy,
+ RROutput rrOutput,
+ VULKAN_HPP_NAMESPACE::DisplayKHR * pDisplay,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::DisplayKHR>::type getRandROutputDisplayEXT(
+ Display & dpy, RROutput rrOutput, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::DisplayKHR, Dispatch>>::type
+ getRandROutputDisplayEXTUnique( Display & dpy,
+ RROutput rrOutput,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_USE_PLATFORM_XLIB_XRANDR_EXT*/
+
+ //=== VK_EXT_display_surface_counter ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result getSurfaceCapabilities2EXT(
+ VULKAN_HPP_NAMESPACE::SurfaceKHR surface,
+ VULKAN_HPP_NAMESPACE::SurfaceCapabilities2EXT * pSurfaceCapabilities,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceCapabilities2EXT>::type
+ getSurfaceCapabilities2EXT( VULKAN_HPP_NAMESPACE::SurfaceKHR surface,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_KHR_external_fence_capabilities ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void getExternalFencePropertiesKHR(
+ const VULKAN_HPP_NAMESPACE::PhysicalDeviceExternalFenceInfo * pExternalFenceInfo,
+ VULKAN_HPP_NAMESPACE::ExternalFenceProperties * pExternalFenceProperties,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::ExternalFenceProperties getExternalFencePropertiesKHR(
+ const PhysicalDeviceExternalFenceInfo & externalFenceInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_KHR_performance_query ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result enumerateQueueFamilyPerformanceQueryCountersKHR(
+ uint32_t queueFamilyIndex,
+ uint32_t * pCounterCount,
+ VULKAN_HPP_NAMESPACE::PerformanceCounterKHR * pCounters,
+ VULKAN_HPP_NAMESPACE::PerformanceCounterDescriptionKHR * pCounterDescriptions,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Allocator = std::allocator<PerformanceCounterDescriptionKHR>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<PerformanceCounterDescriptionKHR, Allocator>>::type
+ enumerateQueueFamilyPerformanceQueryCountersKHR(
+ uint32_t queueFamilyIndex,
+ ArrayProxy<VULKAN_HPP_NAMESPACE::PerformanceCounterKHR> const & counters,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename Allocator = std::allocator<PerformanceCounterDescriptionKHR>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename B = Allocator,
+ typename std::enable_if<std::is_same<typename B::value_type, PerformanceCounterDescriptionKHR>::value,
+ int>::type = 0>
+ VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<PerformanceCounterDescriptionKHR, Allocator>>::type
+ enumerateQueueFamilyPerformanceQueryCountersKHR(
+ uint32_t queueFamilyIndex,
+ ArrayProxy<VULKAN_HPP_NAMESPACE::PerformanceCounterKHR> const & counters,
+ Allocator const & vectorAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename PerformanceCounterKHRAllocator = std::allocator<PerformanceCounterKHR>,
+ typename PerformanceCounterDescriptionKHRAllocator = std::allocator<PerformanceCounterDescriptionKHR>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD typename ResultValueType<
+ std::pair<std::vector<PerformanceCounterKHR, PerformanceCounterKHRAllocator>,
+ std::vector<PerformanceCounterDescriptionKHR, PerformanceCounterDescriptionKHRAllocator>>>::type
+ enumerateQueueFamilyPerformanceQueryCountersKHR(
+ uint32_t queueFamilyIndex, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename PerformanceCounterKHRAllocator = std::allocator<PerformanceCounterKHR>,
+ typename PerformanceCounterDescriptionKHRAllocator = std::allocator<PerformanceCounterDescriptionKHR>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename B1 = PerformanceCounterKHRAllocator,
+ typename B2 = PerformanceCounterDescriptionKHRAllocator,
+ typename std::enable_if<std::is_same<typename B1::value_type, PerformanceCounterKHR>::value &&
+ std::is_same<typename B2::value_type, PerformanceCounterDescriptionKHR>::value,
+ int>::type = 0>
+ VULKAN_HPP_NODISCARD typename ResultValueType<
+ std::pair<std::vector<PerformanceCounterKHR, PerformanceCounterKHRAllocator>,
+ std::vector<PerformanceCounterDescriptionKHR, PerformanceCounterDescriptionKHRAllocator>>>::type
+ enumerateQueueFamilyPerformanceQueryCountersKHR(
+ uint32_t queueFamilyIndex,
+ PerformanceCounterKHRAllocator & performanceCounterKHRAllocator,
+ PerformanceCounterDescriptionKHRAllocator & performanceCounterDescriptionKHRAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void getQueueFamilyPerformanceQueryPassesKHR(
+ const VULKAN_HPP_NAMESPACE::QueryPoolPerformanceCreateInfoKHR * pPerformanceQueryCreateInfo,
+ uint32_t * pNumPasses,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD uint32_t getQueueFamilyPerformanceQueryPassesKHR(
+ const QueryPoolPerformanceCreateInfoKHR & performanceQueryCreateInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_KHR_get_surface_capabilities2 ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result getSurfaceCapabilities2KHR(
+ const VULKAN_HPP_NAMESPACE::PhysicalDeviceSurfaceInfo2KHR * pSurfaceInfo,
+ VULKAN_HPP_NAMESPACE::SurfaceCapabilities2KHR * pSurfaceCapabilities,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceCapabilities2KHR>::type
+ getSurfaceCapabilities2KHR( const PhysicalDeviceSurfaceInfo2KHR & surfaceInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename X, typename Y, typename... Z, typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<StructureChain<X, Y, Z...>>::type
+ getSurfaceCapabilities2KHR( const PhysicalDeviceSurfaceInfo2KHR & surfaceInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ getSurfaceFormats2KHR( const VULKAN_HPP_NAMESPACE::PhysicalDeviceSurfaceInfo2KHR * pSurfaceInfo,
+ uint32_t * pSurfaceFormatCount,
+ VULKAN_HPP_NAMESPACE::SurfaceFormat2KHR * pSurfaceFormats,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename SurfaceFormat2KHRAllocator = std::allocator<SurfaceFormat2KHR>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<SurfaceFormat2KHR, SurfaceFormat2KHRAllocator>>::type
+ getSurfaceFormats2KHR( const PhysicalDeviceSurfaceInfo2KHR & surfaceInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename SurfaceFormat2KHRAllocator = std::allocator<SurfaceFormat2KHR>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename B = SurfaceFormat2KHRAllocator,
+ typename std::enable_if<std::is_same<typename B::value_type, SurfaceFormat2KHR>::value, int>::type = 0>
+ VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<SurfaceFormat2KHR, SurfaceFormat2KHRAllocator>>::type
+ getSurfaceFormats2KHR( const PhysicalDeviceSurfaceInfo2KHR & surfaceInfo,
+ SurfaceFormat2KHRAllocator & surfaceFormat2KHRAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_KHR_get_display_properties2 ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ getDisplayProperties2KHR( uint32_t * pPropertyCount,
+ VULKAN_HPP_NAMESPACE::DisplayProperties2KHR * pProperties,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename DisplayProperties2KHRAllocator = std::allocator<DisplayProperties2KHR>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD
+ typename ResultValueType<std::vector<DisplayProperties2KHR, DisplayProperties2KHRAllocator>>::type
+ getDisplayProperties2KHR( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <
+ typename DisplayProperties2KHRAllocator = std::allocator<DisplayProperties2KHR>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename B = DisplayProperties2KHRAllocator,
+ typename std::enable_if<std::is_same<typename B::value_type, DisplayProperties2KHR>::value, int>::type = 0>
+ VULKAN_HPP_NODISCARD
+ typename ResultValueType<std::vector<DisplayProperties2KHR, DisplayProperties2KHRAllocator>>::type
+ getDisplayProperties2KHR( DisplayProperties2KHRAllocator & displayProperties2KHRAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result getDisplayPlaneProperties2KHR(
+ uint32_t * pPropertyCount,
+ VULKAN_HPP_NAMESPACE::DisplayPlaneProperties2KHR * pProperties,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename DisplayPlaneProperties2KHRAllocator = std::allocator<DisplayPlaneProperties2KHR>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD
+ typename ResultValueType<std::vector<DisplayPlaneProperties2KHR, DisplayPlaneProperties2KHRAllocator>>::type
+ getDisplayPlaneProperties2KHR( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <
+ typename DisplayPlaneProperties2KHRAllocator = std::allocator<DisplayPlaneProperties2KHR>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename B = DisplayPlaneProperties2KHRAllocator,
+ typename std::enable_if<std::is_same<typename B::value_type, DisplayPlaneProperties2KHR>::value, int>::type = 0>
+ VULKAN_HPP_NODISCARD
+ typename ResultValueType<std::vector<DisplayPlaneProperties2KHR, DisplayPlaneProperties2KHRAllocator>>::type
+ getDisplayPlaneProperties2KHR( DisplayPlaneProperties2KHRAllocator & displayPlaneProperties2KHRAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result getDisplayModeProperties2KHR(
+ VULKAN_HPP_NAMESPACE::DisplayKHR display,
+ uint32_t * pPropertyCount,
+ VULKAN_HPP_NAMESPACE::DisplayModeProperties2KHR * pProperties,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename DisplayModeProperties2KHRAllocator = std::allocator<DisplayModeProperties2KHR>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD
+ typename ResultValueType<std::vector<DisplayModeProperties2KHR, DisplayModeProperties2KHRAllocator>>::type
+ getDisplayModeProperties2KHR( VULKAN_HPP_NAMESPACE::DisplayKHR display,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <
+ typename DisplayModeProperties2KHRAllocator = std::allocator<DisplayModeProperties2KHR>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename B = DisplayModeProperties2KHRAllocator,
+ typename std::enable_if<std::is_same<typename B::value_type, DisplayModeProperties2KHR>::value, int>::type = 0>
+ VULKAN_HPP_NODISCARD
+ typename ResultValueType<std::vector<DisplayModeProperties2KHR, DisplayModeProperties2KHRAllocator>>::type
+ getDisplayModeProperties2KHR( VULKAN_HPP_NAMESPACE::DisplayKHR display,
+ DisplayModeProperties2KHRAllocator & displayModeProperties2KHRAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result getDisplayPlaneCapabilities2KHR(
+ const VULKAN_HPP_NAMESPACE::DisplayPlaneInfo2KHR * pDisplayPlaneInfo,
+ VULKAN_HPP_NAMESPACE::DisplayPlaneCapabilities2KHR * pCapabilities,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::DisplayPlaneCapabilities2KHR>::type
+ getDisplayPlaneCapabilities2KHR( const DisplayPlaneInfo2KHR & displayPlaneInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_EXT_sample_locations ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void getMultisamplePropertiesEXT( VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples,
+ VULKAN_HPP_NAMESPACE::MultisamplePropertiesEXT * pMultisampleProperties,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::MultisamplePropertiesEXT getMultisamplePropertiesEXT(
+ VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_EXT_calibrated_timestamps ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result getCalibrateableTimeDomainsEXT(
+ uint32_t * pTimeDomainCount,
+ VULKAN_HPP_NAMESPACE::TimeDomainEXT * pTimeDomains,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename TimeDomainEXTAllocator = std::allocator<TimeDomainEXT>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<TimeDomainEXT, TimeDomainEXTAllocator>>::type
+ getCalibrateableTimeDomainsEXT( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename TimeDomainEXTAllocator = std::allocator<TimeDomainEXT>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename B = TimeDomainEXTAllocator,
+ typename std::enable_if<std::is_same<typename B::value_type, TimeDomainEXT>::value, int>::type = 0>
+ VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<TimeDomainEXT, TimeDomainEXTAllocator>>::type
+ getCalibrateableTimeDomainsEXT( TimeDomainEXTAllocator & timeDomainEXTAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_KHR_fragment_shading_rate ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result getFragmentShadingRatesKHR(
+ uint32_t * pFragmentShadingRateCount,
+ VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentShadingRateKHR * pFragmentShadingRates,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <
+ typename PhysicalDeviceFragmentShadingRateKHRAllocator = std::allocator<PhysicalDeviceFragmentShadingRateKHR>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD typename ResultValueType<
+ std::vector<PhysicalDeviceFragmentShadingRateKHR, PhysicalDeviceFragmentShadingRateKHRAllocator>>::type
+ getFragmentShadingRatesKHR( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <
+ typename PhysicalDeviceFragmentShadingRateKHRAllocator = std::allocator<PhysicalDeviceFragmentShadingRateKHR>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename B = PhysicalDeviceFragmentShadingRateKHRAllocator,
+ typename std::enable_if<std::is_same<typename B::value_type, PhysicalDeviceFragmentShadingRateKHR>::value,
+ int>::type = 0>
+ VULKAN_HPP_NODISCARD typename ResultValueType<
+ std::vector<PhysicalDeviceFragmentShadingRateKHR, PhysicalDeviceFragmentShadingRateKHRAllocator>>::type
+ getFragmentShadingRatesKHR(
+ PhysicalDeviceFragmentShadingRateKHRAllocator & physicalDeviceFragmentShadingRateKHRAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_EXT_tooling_info ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ getToolPropertiesEXT( uint32_t * pToolCount,
+ VULKAN_HPP_NAMESPACE::PhysicalDeviceToolPropertiesEXT * pToolProperties,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename PhysicalDeviceToolPropertiesEXTAllocator = std::allocator<PhysicalDeviceToolPropertiesEXT>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD typename ResultValueType<
+ std::vector<PhysicalDeviceToolPropertiesEXT, PhysicalDeviceToolPropertiesEXTAllocator>>::type
+ getToolPropertiesEXT( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename PhysicalDeviceToolPropertiesEXTAllocator = std::allocator<PhysicalDeviceToolPropertiesEXT>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename B = PhysicalDeviceToolPropertiesEXTAllocator,
+ typename std::enable_if<std::is_same<typename B::value_type, PhysicalDeviceToolPropertiesEXT>::value,
+ int>::type = 0>
+ VULKAN_HPP_NODISCARD typename ResultValueType<
+ std::vector<PhysicalDeviceToolPropertiesEXT, PhysicalDeviceToolPropertiesEXTAllocator>>::type
+ getToolPropertiesEXT( PhysicalDeviceToolPropertiesEXTAllocator & physicalDeviceToolPropertiesEXTAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_NV_cooperative_matrix ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result getCooperativeMatrixPropertiesNV(
+ uint32_t * pPropertyCount,
+ VULKAN_HPP_NAMESPACE::CooperativeMatrixPropertiesNV * pProperties,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename CooperativeMatrixPropertiesNVAllocator = std::allocator<CooperativeMatrixPropertiesNV>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD
+ typename ResultValueType<std::vector<CooperativeMatrixPropertiesNV, CooperativeMatrixPropertiesNVAllocator>>::type
+ getCooperativeMatrixPropertiesNV( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename CooperativeMatrixPropertiesNVAllocator = std::allocator<CooperativeMatrixPropertiesNV>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename B = CooperativeMatrixPropertiesNVAllocator,
+ typename std::enable_if<std::is_same<typename B::value_type, CooperativeMatrixPropertiesNV>::value,
+ int>::type = 0>
+ VULKAN_HPP_NODISCARD
+ typename ResultValueType<std::vector<CooperativeMatrixPropertiesNV, CooperativeMatrixPropertiesNVAllocator>>::type
+ getCooperativeMatrixPropertiesNV( CooperativeMatrixPropertiesNVAllocator & cooperativeMatrixPropertiesNVAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_NV_coverage_reduction_mode ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result getSupportedFramebufferMixedSamplesCombinationsNV(
+ uint32_t * pCombinationCount,
+ VULKAN_HPP_NAMESPACE::FramebufferMixedSamplesCombinationNV * pCombinations,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <
+ typename FramebufferMixedSamplesCombinationNVAllocator = std::allocator<FramebufferMixedSamplesCombinationNV>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD typename ResultValueType<
+ std::vector<FramebufferMixedSamplesCombinationNV, FramebufferMixedSamplesCombinationNVAllocator>>::type
+ getSupportedFramebufferMixedSamplesCombinationsNV(
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <
+ typename FramebufferMixedSamplesCombinationNVAllocator = std::allocator<FramebufferMixedSamplesCombinationNV>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename B = FramebufferMixedSamplesCombinationNVAllocator,
+ typename std::enable_if<std::is_same<typename B::value_type, FramebufferMixedSamplesCombinationNV>::value,
+ int>::type = 0>
+ VULKAN_HPP_NODISCARD typename ResultValueType<
+ std::vector<FramebufferMixedSamplesCombinationNV, FramebufferMixedSamplesCombinationNVAllocator>>::type
+ getSupportedFramebufferMixedSamplesCombinationsNV(
+ FramebufferMixedSamplesCombinationNVAllocator & framebufferMixedSamplesCombinationNVAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ //=== VK_EXT_full_screen_exclusive ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result getSurfacePresentModes2EXT(
+ const VULKAN_HPP_NAMESPACE::PhysicalDeviceSurfaceInfo2KHR * pSurfaceInfo,
+ uint32_t * pPresentModeCount,
+ VULKAN_HPP_NAMESPACE::PresentModeKHR * pPresentModes,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename PresentModeKHRAllocator = std::allocator<PresentModeKHR>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<PresentModeKHR, PresentModeKHRAllocator>>::type
+ getSurfacePresentModes2EXT( const PhysicalDeviceSurfaceInfo2KHR & surfaceInfo,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename PresentModeKHRAllocator = std::allocator<PresentModeKHR>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename B = PresentModeKHRAllocator,
+ typename std::enable_if<std::is_same<typename B::value_type, PresentModeKHR>::value, int>::type = 0>
+ VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<PresentModeKHR, PresentModeKHRAllocator>>::type
+ getSurfacePresentModes2EXT( const PhysicalDeviceSurfaceInfo2KHR & surfaceInfo,
+ PresentModeKHRAllocator & presentModeKHRAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+
+ //=== VK_EXT_acquire_drm_display ===
+
+#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ acquireDrmDisplayEXT( int32_t drmFd,
+ VULKAN_HPP_NAMESPACE::DisplayKHR display,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#else
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ typename ResultValueType<void>::type
+ acquireDrmDisplayEXT( int32_t drmFd,
+ VULKAN_HPP_NAMESPACE::DisplayKHR display,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ getDrmDisplayEXT( int32_t drmFd,
+ uint32_t connectorId,
+ VULKAN_HPP_NAMESPACE::DisplayKHR * display,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::DisplayKHR>::type
+ getDrmDisplayEXT( int32_t drmFd,
+ uint32_t connectorId,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::DisplayKHR, Dispatch>>::type
+ getDrmDisplayEXTUnique( int32_t drmFd,
+ uint32_t connectorId,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ //=== VK_NV_acquire_winrt_display ===
+
+# ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ acquireWinrtDisplayNV( VULKAN_HPP_NAMESPACE::DisplayKHR display,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+# else
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type
+ acquireWinrtDisplayNV( VULKAN_HPP_NAMESPACE::DisplayKHR display,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ getWinrtDisplayNV( uint32_t deviceRelativeId,
+ VULKAN_HPP_NAMESPACE::DisplayKHR * pDisplay,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::DisplayKHR>::type
+ getWinrtDisplayNV( uint32_t deviceRelativeId, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::DisplayKHR, Dispatch>>::type
+ getWinrtDisplayNVUnique( uint32_t deviceRelativeId,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+
+#if defined( VK_USE_PLATFORM_DIRECTFB_EXT )
+ //=== VK_EXT_directfb_surface ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ Bool32 getDirectFBPresentationSupportEXT( uint32_t queueFamilyIndex,
+ IDirectFB * dfb,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ Bool32 getDirectFBPresentationSupportEXT( uint32_t queueFamilyIndex,
+ IDirectFB & dfb,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_USE_PLATFORM_DIRECTFB_EXT*/
+
+#if defined( VK_USE_PLATFORM_SCREEN_QNX )
+ //=== VK_QNX_screen_surface ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ Bool32 getScreenPresentationSupportQNX( uint32_t queueFamilyIndex,
+ struct _screen_window * window,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ Bool32 getScreenPresentationSupportQNX( uint32_t queueFamilyIndex,
+ struct _screen_window & window,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_USE_PLATFORM_SCREEN_QNX*/
+
+ VULKAN_HPP_TYPESAFE_EXPLICIT operator VkPhysicalDevice() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_physicalDevice;
+ }
+
+ explicit operator bool() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_physicalDevice != VK_NULL_HANDLE;
+ }
+
+ bool operator!() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_physicalDevice == VK_NULL_HANDLE;
+ }
+
+ private:
+ VkPhysicalDevice m_physicalDevice = {};
+ };
+ static_assert( sizeof( VULKAN_HPP_NAMESPACE::PhysicalDevice ) == sizeof( VkPhysicalDevice ),
+ "handle and wrapper have different size!" );
+
+ template <>
+ struct VULKAN_HPP_DEPRECATED(
+ "vk::cpp_type is deprecated. Use vk::CppType instead." ) cpp_type<ObjectType::ePhysicalDevice>
+ {
+ using type = VULKAN_HPP_NAMESPACE::PhysicalDevice;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::ePhysicalDevice>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::PhysicalDevice;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT,
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::ePhysicalDevice>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::PhysicalDevice;
+ };
+
+ template <>
+ struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::PhysicalDevice>
+ {
+ static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
+ };
+
+#ifndef VULKAN_HPP_NO_SMART_HANDLE
+ class Instance;
+ template <typename Dispatch>
+ class UniqueHandleTraits<DebugReportCallbackEXT, Dispatch>
+ {
+ public:
+ using deleter = ObjectDestroy<Instance, Dispatch>;
+ };
+ using UniqueDebugReportCallbackEXT = UniqueHandle<DebugReportCallbackEXT, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
+ template <typename Dispatch>
+ class UniqueHandleTraits<DebugUtilsMessengerEXT, Dispatch>
+ {
+ public:
+ using deleter = ObjectDestroy<Instance, Dispatch>;
+ };
+ using UniqueDebugUtilsMessengerEXT = UniqueHandle<DebugUtilsMessengerEXT, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
+ template <typename Dispatch>
+ class UniqueHandleTraits<SurfaceKHR, Dispatch>
+ {
+ public:
+ using deleter = ObjectDestroy<Instance, Dispatch>;
+ };
+ using UniqueSurfaceKHR = UniqueHandle<SurfaceKHR, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
+#endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+
+ class Instance
+ {
+ public:
+ using CType = VkInstance;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eInstance;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eInstance;
+
+ public:
+ VULKAN_HPP_CONSTEXPR Instance() = default;
+ VULKAN_HPP_CONSTEXPR Instance( std::nullptr_t ) VULKAN_HPP_NOEXCEPT {}
+ VULKAN_HPP_TYPESAFE_EXPLICIT Instance( VkInstance instance ) VULKAN_HPP_NOEXCEPT : m_instance( instance ) {}
+
+#if defined( VULKAN_HPP_TYPESAFE_CONVERSION )
+ Instance & operator=( VkInstance instance ) VULKAN_HPP_NOEXCEPT
+ {
+ m_instance = instance;
+ return *this;
+ }
+#endif
+
+ Instance & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
+ {
+ m_instance = {};
+ return *this;
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( Instance const & ) const = default;
+#else
+ bool operator==( Instance const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_instance == rhs.m_instance;
+ }
+
+ bool operator!=( Instance const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_instance != rhs.m_instance;
+ }
+
+ bool operator<( Instance const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return m_instance < rhs.m_instance;
+ }
+#endif
+
+ //=== VK_VERSION_1_0 ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ enumeratePhysicalDevices( uint32_t * pPhysicalDeviceCount,
+ VULKAN_HPP_NAMESPACE::PhysicalDevice * pPhysicalDevices,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename PhysicalDeviceAllocator = std::allocator<PhysicalDevice>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<PhysicalDevice, PhysicalDeviceAllocator>>::type
+ enumeratePhysicalDevices( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename PhysicalDeviceAllocator = std::allocator<PhysicalDevice>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename B = PhysicalDeviceAllocator,
+ typename std::enable_if<std::is_same<typename B::value_type, PhysicalDevice>::value, int>::type = 0>
+ VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<PhysicalDevice, PhysicalDeviceAllocator>>::type
+ enumeratePhysicalDevices( PhysicalDeviceAllocator & physicalDeviceAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ PFN_vkVoidFunction
+ getProcAddr( const char * pName,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ PFN_vkVoidFunction
+ getProcAddr( const std::string & name,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_VERSION_1_1 ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result enumeratePhysicalDeviceGroups(
+ uint32_t * pPhysicalDeviceGroupCount,
+ VULKAN_HPP_NAMESPACE::PhysicalDeviceGroupProperties * pPhysicalDeviceGroupProperties,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename PhysicalDeviceGroupPropertiesAllocator = std::allocator<PhysicalDeviceGroupProperties>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD
+ typename ResultValueType<std::vector<PhysicalDeviceGroupProperties, PhysicalDeviceGroupPropertiesAllocator>>::type
+ enumeratePhysicalDeviceGroups( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename PhysicalDeviceGroupPropertiesAllocator = std::allocator<PhysicalDeviceGroupProperties>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename B = PhysicalDeviceGroupPropertiesAllocator,
+ typename std::enable_if<std::is_same<typename B::value_type, PhysicalDeviceGroupProperties>::value,
+ int>::type = 0>
+ VULKAN_HPP_NODISCARD
+ typename ResultValueType<std::vector<PhysicalDeviceGroupProperties, PhysicalDeviceGroupPropertiesAllocator>>::type
+ enumeratePhysicalDeviceGroups( PhysicalDeviceGroupPropertiesAllocator & physicalDeviceGroupPropertiesAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_KHR_surface ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroySurfaceKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void
+ destroySurfaceKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::SurfaceKHR surface,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::SurfaceKHR surface,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_KHR_display ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result createDisplayPlaneSurfaceKHR(
+ const VULKAN_HPP_NAMESPACE::DisplaySurfaceCreateInfoKHR * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::SurfaceKHR * pSurface,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceKHR>::type
+ createDisplayPlaneSurfaceKHR( const DisplaySurfaceCreateInfoKHR & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>>::type
+ createDisplayPlaneSurfaceKHRUnique( const DisplaySurfaceCreateInfoKHR & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#if defined( VK_USE_PLATFORM_XLIB_KHR )
+ //=== VK_KHR_xlib_surface ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ createXlibSurfaceKHR( const VULKAN_HPP_NAMESPACE::XlibSurfaceCreateInfoKHR * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::SurfaceKHR * pSurface,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceKHR>::type
+ createXlibSurfaceKHR( const XlibSurfaceCreateInfoKHR & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>>::type
+ createXlibSurfaceKHRUnique( const XlibSurfaceCreateInfoKHR & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_USE_PLATFORM_XLIB_KHR*/
+
+#if defined( VK_USE_PLATFORM_XCB_KHR )
+ //=== VK_KHR_xcb_surface ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ createXcbSurfaceKHR( const VULKAN_HPP_NAMESPACE::XcbSurfaceCreateInfoKHR * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::SurfaceKHR * pSurface,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceKHR>::type
+ createXcbSurfaceKHR( const XcbSurfaceCreateInfoKHR & createInfo,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>>::type
+ createXcbSurfaceKHRUnique( const XcbSurfaceCreateInfoKHR & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_USE_PLATFORM_XCB_KHR*/
+
+#if defined( VK_USE_PLATFORM_WAYLAND_KHR )
+ //=== VK_KHR_wayland_surface ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ createWaylandSurfaceKHR( const VULKAN_HPP_NAMESPACE::WaylandSurfaceCreateInfoKHR * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::SurfaceKHR * pSurface,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceKHR>::type
+ createWaylandSurfaceKHR( const WaylandSurfaceCreateInfoKHR & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>>::type
+ createWaylandSurfaceKHRUnique( const WaylandSurfaceCreateInfoKHR & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_USE_PLATFORM_WAYLAND_KHR*/
+
+#if defined( VK_USE_PLATFORM_ANDROID_KHR )
+ //=== VK_KHR_android_surface ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ createAndroidSurfaceKHR( const VULKAN_HPP_NAMESPACE::AndroidSurfaceCreateInfoKHR * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::SurfaceKHR * pSurface,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceKHR>::type
+ createAndroidSurfaceKHR( const AndroidSurfaceCreateInfoKHR & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>>::type
+ createAndroidSurfaceKHRUnique( const AndroidSurfaceCreateInfoKHR & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
+
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ //=== VK_KHR_win32_surface ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ createWin32SurfaceKHR( const VULKAN_HPP_NAMESPACE::Win32SurfaceCreateInfoKHR * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::SurfaceKHR * pSurface,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceKHR>::type
+ createWin32SurfaceKHR( const Win32SurfaceCreateInfoKHR & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>>::type
+ createWin32SurfaceKHRUnique( const Win32SurfaceCreateInfoKHR & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+
+ //=== VK_EXT_debug_report ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result createDebugReportCallbackEXT(
+ const VULKAN_HPP_NAMESPACE::DebugReportCallbackCreateInfoEXT * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::DebugReportCallbackEXT * pCallback,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::DebugReportCallbackEXT>::type createDebugReportCallbackEXT(
+ const DebugReportCallbackCreateInfoEXT & createInfo,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::DebugReportCallbackEXT, Dispatch>>::type
+ createDebugReportCallbackEXTUnique( const DebugReportCallbackCreateInfoEXT & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroyDebugReportCallbackEXT( VULKAN_HPP_NAMESPACE::DebugReportCallbackEXT callback,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroyDebugReportCallbackEXT(
+ VULKAN_HPP_NAMESPACE::DebugReportCallbackEXT callback VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::DebugReportCallbackEXT callback,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::DebugReportCallbackEXT callback,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void debugReportMessageEXT( VULKAN_HPP_NAMESPACE::DebugReportFlagsEXT flags,
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT objectType,
+ uint64_t object,
+ size_t location,
+ int32_t messageCode,
+ const char * pLayerPrefix,
+ const char * pMessage,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void debugReportMessageEXT( VULKAN_HPP_NAMESPACE::DebugReportFlagsEXT flags,
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT objectType,
+ uint64_t object,
+ size_t location,
+ int32_t messageCode,
+ const std::string & layerPrefix,
+ const std::string & message,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#if defined( VK_USE_PLATFORM_GGP )
+ //=== VK_GGP_stream_descriptor_surface ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result createStreamDescriptorSurfaceGGP(
+ const VULKAN_HPP_NAMESPACE::StreamDescriptorSurfaceCreateInfoGGP * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::SurfaceKHR * pSurface,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceKHR>::type
+ createStreamDescriptorSurfaceGGP( const StreamDescriptorSurfaceCreateInfoGGP & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>>::type
+ createStreamDescriptorSurfaceGGPUnique( const StreamDescriptorSurfaceCreateInfoGGP & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_USE_PLATFORM_GGP*/
+
+#if defined( VK_USE_PLATFORM_VI_NN )
+ //=== VK_NN_vi_surface ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ createViSurfaceNN( const VULKAN_HPP_NAMESPACE::ViSurfaceCreateInfoNN * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::SurfaceKHR * pSurface,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceKHR>::type
+ createViSurfaceNN( const ViSurfaceCreateInfoNN & createInfo,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>>::type
+ createViSurfaceNNUnique( const ViSurfaceCreateInfoNN & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_USE_PLATFORM_VI_NN*/
+
+ //=== VK_KHR_device_group_creation ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result enumeratePhysicalDeviceGroupsKHR(
+ uint32_t * pPhysicalDeviceGroupCount,
+ VULKAN_HPP_NAMESPACE::PhysicalDeviceGroupProperties * pPhysicalDeviceGroupProperties,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename PhysicalDeviceGroupPropertiesAllocator = std::allocator<PhysicalDeviceGroupProperties>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD
+ typename ResultValueType<std::vector<PhysicalDeviceGroupProperties, PhysicalDeviceGroupPropertiesAllocator>>::type
+ enumeratePhysicalDeviceGroupsKHR( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+ template <typename PhysicalDeviceGroupPropertiesAllocator = std::allocator<PhysicalDeviceGroupProperties>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename B = PhysicalDeviceGroupPropertiesAllocator,
+ typename std::enable_if<std::is_same<typename B::value_type, PhysicalDeviceGroupProperties>::value,
+ int>::type = 0>
+ VULKAN_HPP_NODISCARD
+ typename ResultValueType<std::vector<PhysicalDeviceGroupProperties, PhysicalDeviceGroupPropertiesAllocator>>::type
+ enumeratePhysicalDeviceGroupsKHR( PhysicalDeviceGroupPropertiesAllocator & physicalDeviceGroupPropertiesAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#if defined( VK_USE_PLATFORM_IOS_MVK )
+ //=== VK_MVK_ios_surface ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ createIOSSurfaceMVK( const VULKAN_HPP_NAMESPACE::IOSSurfaceCreateInfoMVK * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::SurfaceKHR * pSurface,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceKHR>::type
+ createIOSSurfaceMVK( const IOSSurfaceCreateInfoMVK & createInfo,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>>::type
+ createIOSSurfaceMVKUnique( const IOSSurfaceCreateInfoMVK & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_USE_PLATFORM_IOS_MVK*/
+
+#if defined( VK_USE_PLATFORM_MACOS_MVK )
+ //=== VK_MVK_macos_surface ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ createMacOSSurfaceMVK( const VULKAN_HPP_NAMESPACE::MacOSSurfaceCreateInfoMVK * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::SurfaceKHR * pSurface,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceKHR>::type
+ createMacOSSurfaceMVK( const MacOSSurfaceCreateInfoMVK & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>>::type
+ createMacOSSurfaceMVKUnique( const MacOSSurfaceCreateInfoMVK & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_USE_PLATFORM_MACOS_MVK*/
+
+ //=== VK_EXT_debug_utils ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result createDebugUtilsMessengerEXT(
+ const VULKAN_HPP_NAMESPACE::DebugUtilsMessengerCreateInfoEXT * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::DebugUtilsMessengerEXT * pMessenger,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ typename ResultValueType<VULKAN_HPP_NAMESPACE::DebugUtilsMessengerEXT>::type createDebugUtilsMessengerEXT(
+ const DebugUtilsMessengerCreateInfoEXT & createInfo,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::DebugUtilsMessengerEXT, Dispatch>>::type
+ createDebugUtilsMessengerEXTUnique( const DebugUtilsMessengerCreateInfoEXT & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroyDebugUtilsMessengerEXT( VULKAN_HPP_NAMESPACE::DebugUtilsMessengerEXT messenger,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroyDebugUtilsMessengerEXT(
+ VULKAN_HPP_NAMESPACE::DebugUtilsMessengerEXT messenger VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::DebugUtilsMessengerEXT messenger,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void destroy( VULKAN_HPP_NAMESPACE::DebugUtilsMessengerEXT messenger,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void submitDebugUtilsMessageEXT( VULKAN_HPP_NAMESPACE::DebugUtilsMessageSeverityFlagBitsEXT messageSeverity,
+ VULKAN_HPP_NAMESPACE::DebugUtilsMessageTypeFlagsEXT messageTypes,
+ const VULKAN_HPP_NAMESPACE::DebugUtilsMessengerCallbackDataEXT * pCallbackData,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ void submitDebugUtilsMessageEXT( VULKAN_HPP_NAMESPACE::DebugUtilsMessageSeverityFlagBitsEXT messageSeverity,
+ VULKAN_HPP_NAMESPACE::DebugUtilsMessageTypeFlagsEXT messageTypes,
+ const DebugUtilsMessengerCallbackDataEXT & callbackData,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#if defined( VK_USE_PLATFORM_FUCHSIA )
+ //=== VK_FUCHSIA_imagepipe_surface ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result createImagePipeSurfaceFUCHSIA(
+ const VULKAN_HPP_NAMESPACE::ImagePipeSurfaceCreateInfoFUCHSIA * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::SurfaceKHR * pSurface,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceKHR>::type
+ createImagePipeSurfaceFUCHSIA( const ImagePipeSurfaceCreateInfoFUCHSIA & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>>::type
+ createImagePipeSurfaceFUCHSIAUnique( const ImagePipeSurfaceCreateInfoFUCHSIA & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_USE_PLATFORM_FUCHSIA*/
+
+#if defined( VK_USE_PLATFORM_METAL_EXT )
+ //=== VK_EXT_metal_surface ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ createMetalSurfaceEXT( const VULKAN_HPP_NAMESPACE::MetalSurfaceCreateInfoEXT * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::SurfaceKHR * pSurface,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceKHR>::type
+ createMetalSurfaceEXT( const MetalSurfaceCreateInfoEXT & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>>::type
+ createMetalSurfaceEXTUnique( const MetalSurfaceCreateInfoEXT & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_USE_PLATFORM_METAL_EXT*/
+
+ //=== VK_EXT_headless_surface ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ createHeadlessSurfaceEXT( const VULKAN_HPP_NAMESPACE::HeadlessSurfaceCreateInfoEXT * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::SurfaceKHR * pSurface,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceKHR>::type
+ createHeadlessSurfaceEXT( const HeadlessSurfaceCreateInfoEXT & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>>::type
+ createHeadlessSurfaceEXTUnique( const HeadlessSurfaceCreateInfoEXT & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+#if defined( VK_USE_PLATFORM_DIRECTFB_EXT )
+ //=== VK_EXT_directfb_surface ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ createDirectFBSurfaceEXT( const VULKAN_HPP_NAMESPACE::DirectFBSurfaceCreateInfoEXT * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::SurfaceKHR * pSurface,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceKHR>::type
+ createDirectFBSurfaceEXT( const DirectFBSurfaceCreateInfoEXT & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>>::type
+ createDirectFBSurfaceEXTUnique( const DirectFBSurfaceCreateInfoEXT & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_USE_PLATFORM_DIRECTFB_EXT*/
+
+#if defined( VK_USE_PLATFORM_SCREEN_QNX )
+ //=== VK_QNX_screen_surface ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ createScreenSurfaceQNX( const VULKAN_HPP_NAMESPACE::ScreenSurfaceCreateInfoQNX * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::SurfaceKHR * pSurface,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::SurfaceKHR>::type
+ createScreenSurfaceQNX( const ScreenSurfaceCreateInfoQNX & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::SurfaceKHR, Dispatch>>::type
+ createScreenSurfaceQNXUnique( const ScreenSurfaceCreateInfoQNX & createInfo,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VK_USE_PLATFORM_SCREEN_QNX*/
+
+ VULKAN_HPP_TYPESAFE_EXPLICIT operator VkInstance() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_instance;
+ }
+
+ explicit operator bool() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_instance != VK_NULL_HANDLE;
+ }
+
+ bool operator!() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_instance == VK_NULL_HANDLE;
+ }
+
+ private:
+ VkInstance m_instance = {};
+ };
+ static_assert( sizeof( VULKAN_HPP_NAMESPACE::Instance ) == sizeof( VkInstance ),
+ "handle and wrapper have different size!" );
+
+ template <>
+ struct VULKAN_HPP_DEPRECATED( "vk::cpp_type is deprecated. Use vk::CppType instead." ) cpp_type<ObjectType::eInstance>
+ {
+ using type = VULKAN_HPP_NAMESPACE::Instance;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eInstance>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::Instance;
+ };
+
+ template <>
+ struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT,
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eInstance>
+ {
+ using Type = VULKAN_HPP_NAMESPACE::Instance;
+ };
+
+ template <>
+ struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::Instance>
+ {
+ static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
+ };
+
+ //=== VK_VERSION_1_0 ===
+
+#ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch>
+ class UniqueHandleTraits<Instance, Dispatch>
+ {
+ public:
+ using deleter = ObjectDestroy<NoParent, Dispatch>;
+ };
+ using UniqueInstance = UniqueHandle<Instance, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
+#endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result createInstance( const VULKAN_HPP_NAMESPACE::InstanceCreateInfo * pCreateInfo,
+ const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
+ VULKAN_HPP_NAMESPACE::Instance * pInstance,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT )
+ VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<VULKAN_HPP_NAMESPACE::Instance>::type
+ createInstance( const InstanceCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT );
+# ifndef VULKAN_HPP_NO_SMART_HANDLE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
+ typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::Instance, Dispatch>>::type
+ createInstanceUnique( const InstanceCreateInfo & createInfo,
+ Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT );
+# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result enumerateInstanceExtensionProperties(
+ const char * pLayerName,
+ uint32_t * pPropertyCount,
+ VULKAN_HPP_NAMESPACE::ExtensionProperties * pProperties,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename ExtensionPropertiesAllocator = std::allocator<ExtensionProperties>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<ExtensionProperties, ExtensionPropertiesAllocator>>::type
+ enumerateInstanceExtensionProperties( Optional<const std::string> layerName
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT );
+ template <typename ExtensionPropertiesAllocator = std::allocator<ExtensionProperties>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename B = ExtensionPropertiesAllocator,
+ typename std::enable_if<std::is_same<typename B::value_type, ExtensionProperties>::value, int>::type = 0>
+ VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<ExtensionProperties, ExtensionPropertiesAllocator>>::type
+ enumerateInstanceExtensionProperties( Optional<const std::string> layerName,
+ ExtensionPropertiesAllocator & extensionPropertiesAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT );
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result
+ enumerateInstanceLayerProperties( uint32_t * pPropertyCount,
+ VULKAN_HPP_NAMESPACE::LayerProperties * pProperties,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename LayerPropertiesAllocator = std::allocator<LayerProperties>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<LayerProperties, LayerPropertiesAllocator>>::type
+ enumerateInstanceLayerProperties( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT );
+ template <typename LayerPropertiesAllocator = std::allocator<LayerProperties>,
+ typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
+ typename B = LayerPropertiesAllocator,
+ typename std::enable_if<std::is_same<typename B::value_type, LayerProperties>::value, int>::type = 0>
+ VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<LayerProperties, LayerPropertiesAllocator>>::type
+ enumerateInstanceLayerProperties( LayerPropertiesAllocator & layerPropertiesAllocator,
+ Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT );
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ //=== VK_VERSION_1_1 ===
+
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ VULKAN_HPP_NODISCARD Result enumerateInstanceVersion(
+ uint32_t * pApiVersion, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) VULKAN_HPP_NOEXCEPT;
+#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
+ template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
+ typename ResultValueType<uint32_t>::type
+ enumerateInstanceVersion( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT );
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+} // namespace VULKAN_HPP_NAMESPACE
+#endif
diff --git a/thirdparty/vulkan/include/vulkan/vulkan_ios.h b/thirdparty/vulkan/include/vulkan/vulkan_ios.h
index 446a2698d9..6e7e6afea6 100644
--- a/thirdparty/vulkan/include/vulkan/vulkan_ios.h
+++ b/thirdparty/vulkan/include/vulkan/vulkan_ios.h
@@ -2,7 +2,7 @@
#define VULKAN_IOS_H_ 1
/*
-** Copyright (c) 2015-2020 The Khronos Group Inc.
+** Copyright 2015-2021 The Khronos Group Inc.
**
** SPDX-License-Identifier: Apache-2.0
*/
diff --git a/thirdparty/vulkan/include/vulkan/vulkan_macos.h b/thirdparty/vulkan/include/vulkan/vulkan_macos.h
index 35fcabe39b..c49b123d07 100644
--- a/thirdparty/vulkan/include/vulkan/vulkan_macos.h
+++ b/thirdparty/vulkan/include/vulkan/vulkan_macos.h
@@ -2,7 +2,7 @@
#define VULKAN_MACOS_H_ 1
/*
-** Copyright (c) 2015-2020 The Khronos Group Inc.
+** Copyright 2015-2021 The Khronos Group Inc.
**
** SPDX-License-Identifier: Apache-2.0
*/
diff --git a/thirdparty/vulkan/include/vulkan/vulkan_metal.h b/thirdparty/vulkan/include/vulkan/vulkan_metal.h
index 99f097d954..5cf4a703ac 100644
--- a/thirdparty/vulkan/include/vulkan/vulkan_metal.h
+++ b/thirdparty/vulkan/include/vulkan/vulkan_metal.h
@@ -2,7 +2,7 @@
#define VULKAN_METAL_H_ 1
/*
-** Copyright (c) 2015-2020 The Khronos Group Inc.
+** Copyright 2015-2021 The Khronos Group Inc.
**
** SPDX-License-Identifier: Apache-2.0
*/
diff --git a/thirdparty/vulkan/include/vulkan/vulkan_raii.hpp b/thirdparty/vulkan/include/vulkan/vulkan_raii.hpp
new file mode 100644
index 0000000000..9b15ebaa16
--- /dev/null
+++ b/thirdparty/vulkan/include/vulkan/vulkan_raii.hpp
@@ -0,0 +1,15272 @@
+// Copyright 2015-2021 The Khronos Group Inc.
+//
+// SPDX-License-Identifier: Apache-2.0 OR MIT
+//
+
+// This header is generated from the Khronos Vulkan XML API Registry.
+
+#ifndef VULKAN_RAII_HPP
+#define VULKAN_RAII_HPP
+
+#include <vulkan/vulkan.hpp>
+
+#if !defined( VULKAN_HPP_RAII_NAMESPACE )
+# define VULKAN_HPP_RAII_NAMESPACE raii
+#endif
+
+namespace VULKAN_HPP_NAMESPACE
+{
+ namespace VULKAN_HPP_RAII_NAMESPACE
+ {
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE ) && !defined( VULKAN_HPP_NO_EXCEPTIONS )
+
+ template <class T, class U = T>
+ VULKAN_HPP_CONSTEXPR_14 VULKAN_HPP_INLINE T exchange( T & obj, U && newValue )
+ {
+# if ( 14 <= VULKAN_HPP_CPP_VERSION )
+ return std::exchange<T>( obj, std::forward<U>( newValue ) );
+# else
+ T oldValue = std::move( obj );
+ obj = std::forward<U>( newValue );
+ return oldValue;
+# endif
+ }
+
+ class ContextDispatcher
+ {
+ public:
+ ContextDispatcher( PFN_vkGetInstanceProcAddr getProcAddr )
+ : vkGetInstanceProcAddr( getProcAddr )
+ , vkCreateInstance( PFN_vkCreateInstance( getProcAddr( NULL, "vkCreateInstance" ) ) )
+ , vkEnumerateInstanceExtensionProperties( PFN_vkEnumerateInstanceExtensionProperties(
+ getProcAddr( NULL, "vkEnumerateInstanceExtensionProperties" ) ) )
+ , vkEnumerateInstanceLayerProperties(
+ PFN_vkEnumerateInstanceLayerProperties( getProcAddr( NULL, "vkEnumerateInstanceLayerProperties" ) ) )
+ , vkEnumerateInstanceVersion(
+ PFN_vkEnumerateInstanceVersion( getProcAddr( NULL, "vkEnumerateInstanceVersion" ) ) )
+ {}
+
+ public:
+ PFN_vkGetInstanceProcAddr vkGetInstanceProcAddr = 0;
+ PFN_vkCreateInstance vkCreateInstance = 0;
+ PFN_vkEnumerateInstanceExtensionProperties vkEnumerateInstanceExtensionProperties = 0;
+ PFN_vkEnumerateInstanceLayerProperties vkEnumerateInstanceLayerProperties = 0;
+ PFN_vkEnumerateInstanceVersion vkEnumerateInstanceVersion = 0;
+ };
+
+ class InstanceDispatcher
+ {
+ public:
+ InstanceDispatcher( PFN_vkGetInstanceProcAddr getProcAddr ) : vkGetInstanceProcAddr( getProcAddr ) {}
+
+ void init( VkInstance instance )
+ {
+ vkAcquireDrmDisplayEXT =
+ PFN_vkAcquireDrmDisplayEXT( vkGetInstanceProcAddr( instance, "vkAcquireDrmDisplayEXT" ) );
+# if defined( VK_USE_PLATFORM_WIN32_KHR )
+ vkAcquireWinrtDisplayNV =
+ PFN_vkAcquireWinrtDisplayNV( vkGetInstanceProcAddr( instance, "vkAcquireWinrtDisplayNV" ) );
+# endif /*VK_USE_PLATFORM_WIN32_KHR*/
+# if defined( VK_USE_PLATFORM_XLIB_XRANDR_EXT )
+ vkAcquireXlibDisplayEXT =
+ PFN_vkAcquireXlibDisplayEXT( vkGetInstanceProcAddr( instance, "vkAcquireXlibDisplayEXT" ) );
+# endif /*VK_USE_PLATFORM_XLIB_XRANDR_EXT*/
+# if defined( VK_USE_PLATFORM_ANDROID_KHR )
+ vkCreateAndroidSurfaceKHR =
+ PFN_vkCreateAndroidSurfaceKHR( vkGetInstanceProcAddr( instance, "vkCreateAndroidSurfaceKHR" ) );
+# endif /*VK_USE_PLATFORM_ANDROID_KHR*/
+ vkCreateDebugReportCallbackEXT =
+ PFN_vkCreateDebugReportCallbackEXT( vkGetInstanceProcAddr( instance, "vkCreateDebugReportCallbackEXT" ) );
+ vkCreateDebugUtilsMessengerEXT =
+ PFN_vkCreateDebugUtilsMessengerEXT( vkGetInstanceProcAddr( instance, "vkCreateDebugUtilsMessengerEXT" ) );
+ vkCreateDevice = PFN_vkCreateDevice( vkGetInstanceProcAddr( instance, "vkCreateDevice" ) );
+# if defined( VK_USE_PLATFORM_DIRECTFB_EXT )
+ vkCreateDirectFBSurfaceEXT =
+ PFN_vkCreateDirectFBSurfaceEXT( vkGetInstanceProcAddr( instance, "vkCreateDirectFBSurfaceEXT" ) );
+# endif /*VK_USE_PLATFORM_DIRECTFB_EXT*/
+ vkCreateDisplayModeKHR =
+ PFN_vkCreateDisplayModeKHR( vkGetInstanceProcAddr( instance, "vkCreateDisplayModeKHR" ) );
+ vkCreateDisplayPlaneSurfaceKHR =
+ PFN_vkCreateDisplayPlaneSurfaceKHR( vkGetInstanceProcAddr( instance, "vkCreateDisplayPlaneSurfaceKHR" ) );
+ vkCreateHeadlessSurfaceEXT =
+ PFN_vkCreateHeadlessSurfaceEXT( vkGetInstanceProcAddr( instance, "vkCreateHeadlessSurfaceEXT" ) );
+# if defined( VK_USE_PLATFORM_IOS_MVK )
+ vkCreateIOSSurfaceMVK = PFN_vkCreateIOSSurfaceMVK( vkGetInstanceProcAddr( instance, "vkCreateIOSSurfaceMVK" ) );
+# endif /*VK_USE_PLATFORM_IOS_MVK*/
+# if defined( VK_USE_PLATFORM_FUCHSIA )
+ vkCreateImagePipeSurfaceFUCHSIA =
+ PFN_vkCreateImagePipeSurfaceFUCHSIA( vkGetInstanceProcAddr( instance, "vkCreateImagePipeSurfaceFUCHSIA" ) );
+# endif /*VK_USE_PLATFORM_FUCHSIA*/
+# if defined( VK_USE_PLATFORM_MACOS_MVK )
+ vkCreateMacOSSurfaceMVK =
+ PFN_vkCreateMacOSSurfaceMVK( vkGetInstanceProcAddr( instance, "vkCreateMacOSSurfaceMVK" ) );
+# endif /*VK_USE_PLATFORM_MACOS_MVK*/
+# if defined( VK_USE_PLATFORM_METAL_EXT )
+ vkCreateMetalSurfaceEXT =
+ PFN_vkCreateMetalSurfaceEXT( vkGetInstanceProcAddr( instance, "vkCreateMetalSurfaceEXT" ) );
+# endif /*VK_USE_PLATFORM_METAL_EXT*/
+# if defined( VK_USE_PLATFORM_SCREEN_QNX )
+ vkCreateScreenSurfaceQNX =
+ PFN_vkCreateScreenSurfaceQNX( vkGetInstanceProcAddr( instance, "vkCreateScreenSurfaceQNX" ) );
+# endif /*VK_USE_PLATFORM_SCREEN_QNX*/
+# if defined( VK_USE_PLATFORM_GGP )
+ vkCreateStreamDescriptorSurfaceGGP = PFN_vkCreateStreamDescriptorSurfaceGGP(
+ vkGetInstanceProcAddr( instance, "vkCreateStreamDescriptorSurfaceGGP" ) );
+# endif /*VK_USE_PLATFORM_GGP*/
+# if defined( VK_USE_PLATFORM_VI_NN )
+ vkCreateViSurfaceNN = PFN_vkCreateViSurfaceNN( vkGetInstanceProcAddr( instance, "vkCreateViSurfaceNN" ) );
+# endif /*VK_USE_PLATFORM_VI_NN*/
+# if defined( VK_USE_PLATFORM_WAYLAND_KHR )
+ vkCreateWaylandSurfaceKHR =
+ PFN_vkCreateWaylandSurfaceKHR( vkGetInstanceProcAddr( instance, "vkCreateWaylandSurfaceKHR" ) );
+# endif /*VK_USE_PLATFORM_WAYLAND_KHR*/
+# if defined( VK_USE_PLATFORM_WIN32_KHR )
+ vkCreateWin32SurfaceKHR =
+ PFN_vkCreateWin32SurfaceKHR( vkGetInstanceProcAddr( instance, "vkCreateWin32SurfaceKHR" ) );
+# endif /*VK_USE_PLATFORM_WIN32_KHR*/
+# if defined( VK_USE_PLATFORM_XCB_KHR )
+ vkCreateXcbSurfaceKHR = PFN_vkCreateXcbSurfaceKHR( vkGetInstanceProcAddr( instance, "vkCreateXcbSurfaceKHR" ) );
+# endif /*VK_USE_PLATFORM_XCB_KHR*/
+# if defined( VK_USE_PLATFORM_XLIB_KHR )
+ vkCreateXlibSurfaceKHR =
+ PFN_vkCreateXlibSurfaceKHR( vkGetInstanceProcAddr( instance, "vkCreateXlibSurfaceKHR" ) );
+# endif /*VK_USE_PLATFORM_XLIB_KHR*/
+ vkDebugReportMessageEXT =
+ PFN_vkDebugReportMessageEXT( vkGetInstanceProcAddr( instance, "vkDebugReportMessageEXT" ) );
+ vkDestroyDebugReportCallbackEXT =
+ PFN_vkDestroyDebugReportCallbackEXT( vkGetInstanceProcAddr( instance, "vkDestroyDebugReportCallbackEXT" ) );
+ vkDestroyDebugUtilsMessengerEXT =
+ PFN_vkDestroyDebugUtilsMessengerEXT( vkGetInstanceProcAddr( instance, "vkDestroyDebugUtilsMessengerEXT" ) );
+ vkDestroyInstance = PFN_vkDestroyInstance( vkGetInstanceProcAddr( instance, "vkDestroyInstance" ) );
+ vkDestroySurfaceKHR = PFN_vkDestroySurfaceKHR( vkGetInstanceProcAddr( instance, "vkDestroySurfaceKHR" ) );
+ vkEnumerateDeviceExtensionProperties = PFN_vkEnumerateDeviceExtensionProperties(
+ vkGetInstanceProcAddr( instance, "vkEnumerateDeviceExtensionProperties" ) );
+ vkEnumerateDeviceLayerProperties =
+ PFN_vkEnumerateDeviceLayerProperties( vkGetInstanceProcAddr( instance, "vkEnumerateDeviceLayerProperties" ) );
+ vkEnumeratePhysicalDeviceGroups =
+ PFN_vkEnumeratePhysicalDeviceGroups( vkGetInstanceProcAddr( instance, "vkEnumeratePhysicalDeviceGroups" ) );
+ vkEnumeratePhysicalDeviceGroupsKHR = PFN_vkEnumeratePhysicalDeviceGroupsKHR(
+ vkGetInstanceProcAddr( instance, "vkEnumeratePhysicalDeviceGroupsKHR" ) );
+ if ( !vkEnumeratePhysicalDeviceGroups )
+ vkEnumeratePhysicalDeviceGroups = vkEnumeratePhysicalDeviceGroupsKHR;
+ vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR =
+ PFN_vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR(
+ vkGetInstanceProcAddr( instance, "vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR" ) );
+ vkEnumeratePhysicalDevices =
+ PFN_vkEnumeratePhysicalDevices( vkGetInstanceProcAddr( instance, "vkEnumeratePhysicalDevices" ) );
+ vkGetDisplayModeProperties2KHR =
+ PFN_vkGetDisplayModeProperties2KHR( vkGetInstanceProcAddr( instance, "vkGetDisplayModeProperties2KHR" ) );
+ vkGetDisplayModePropertiesKHR =
+ PFN_vkGetDisplayModePropertiesKHR( vkGetInstanceProcAddr( instance, "vkGetDisplayModePropertiesKHR" ) );
+ vkGetDisplayPlaneCapabilities2KHR = PFN_vkGetDisplayPlaneCapabilities2KHR(
+ vkGetInstanceProcAddr( instance, "vkGetDisplayPlaneCapabilities2KHR" ) );
+ vkGetDisplayPlaneCapabilitiesKHR =
+ PFN_vkGetDisplayPlaneCapabilitiesKHR( vkGetInstanceProcAddr( instance, "vkGetDisplayPlaneCapabilitiesKHR" ) );
+ vkGetDisplayPlaneSupportedDisplaysKHR = PFN_vkGetDisplayPlaneSupportedDisplaysKHR(
+ vkGetInstanceProcAddr( instance, "vkGetDisplayPlaneSupportedDisplaysKHR" ) );
+ vkGetDrmDisplayEXT = PFN_vkGetDrmDisplayEXT( vkGetInstanceProcAddr( instance, "vkGetDrmDisplayEXT" ) );
+ vkGetInstanceProcAddr = PFN_vkGetInstanceProcAddr( vkGetInstanceProcAddr( instance, "vkGetInstanceProcAddr" ) );
+ vkGetPhysicalDeviceCalibrateableTimeDomainsEXT = PFN_vkGetPhysicalDeviceCalibrateableTimeDomainsEXT(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceCalibrateableTimeDomainsEXT" ) );
+ vkGetPhysicalDeviceCooperativeMatrixPropertiesNV = PFN_vkGetPhysicalDeviceCooperativeMatrixPropertiesNV(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceCooperativeMatrixPropertiesNV" ) );
+# if defined( VK_USE_PLATFORM_DIRECTFB_EXT )
+ vkGetPhysicalDeviceDirectFBPresentationSupportEXT = PFN_vkGetPhysicalDeviceDirectFBPresentationSupportEXT(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceDirectFBPresentationSupportEXT" ) );
+# endif /*VK_USE_PLATFORM_DIRECTFB_EXT*/
+ vkGetPhysicalDeviceDisplayPlaneProperties2KHR = PFN_vkGetPhysicalDeviceDisplayPlaneProperties2KHR(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceDisplayPlaneProperties2KHR" ) );
+ vkGetPhysicalDeviceDisplayPlanePropertiesKHR = PFN_vkGetPhysicalDeviceDisplayPlanePropertiesKHR(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceDisplayPlanePropertiesKHR" ) );
+ vkGetPhysicalDeviceDisplayProperties2KHR = PFN_vkGetPhysicalDeviceDisplayProperties2KHR(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceDisplayProperties2KHR" ) );
+ vkGetPhysicalDeviceDisplayPropertiesKHR = PFN_vkGetPhysicalDeviceDisplayPropertiesKHR(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceDisplayPropertiesKHR" ) );
+ vkGetPhysicalDeviceExternalBufferProperties = PFN_vkGetPhysicalDeviceExternalBufferProperties(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceExternalBufferProperties" ) );
+ vkGetPhysicalDeviceExternalBufferPropertiesKHR = PFN_vkGetPhysicalDeviceExternalBufferPropertiesKHR(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceExternalBufferPropertiesKHR" ) );
+ if ( !vkGetPhysicalDeviceExternalBufferProperties )
+ vkGetPhysicalDeviceExternalBufferProperties = vkGetPhysicalDeviceExternalBufferPropertiesKHR;
+ vkGetPhysicalDeviceExternalFenceProperties = PFN_vkGetPhysicalDeviceExternalFenceProperties(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceExternalFenceProperties" ) );
+ vkGetPhysicalDeviceExternalFencePropertiesKHR = PFN_vkGetPhysicalDeviceExternalFencePropertiesKHR(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceExternalFencePropertiesKHR" ) );
+ if ( !vkGetPhysicalDeviceExternalFenceProperties )
+ vkGetPhysicalDeviceExternalFenceProperties = vkGetPhysicalDeviceExternalFencePropertiesKHR;
+ vkGetPhysicalDeviceExternalImageFormatPropertiesNV = PFN_vkGetPhysicalDeviceExternalImageFormatPropertiesNV(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceExternalImageFormatPropertiesNV" ) );
+ vkGetPhysicalDeviceExternalSemaphoreProperties = PFN_vkGetPhysicalDeviceExternalSemaphoreProperties(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceExternalSemaphoreProperties" ) );
+ vkGetPhysicalDeviceExternalSemaphorePropertiesKHR = PFN_vkGetPhysicalDeviceExternalSemaphorePropertiesKHR(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceExternalSemaphorePropertiesKHR" ) );
+ if ( !vkGetPhysicalDeviceExternalSemaphoreProperties )
+ vkGetPhysicalDeviceExternalSemaphoreProperties = vkGetPhysicalDeviceExternalSemaphorePropertiesKHR;
+ vkGetPhysicalDeviceFeatures =
+ PFN_vkGetPhysicalDeviceFeatures( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceFeatures" ) );
+ vkGetPhysicalDeviceFeatures2 =
+ PFN_vkGetPhysicalDeviceFeatures2( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceFeatures2" ) );
+ vkGetPhysicalDeviceFeatures2KHR =
+ PFN_vkGetPhysicalDeviceFeatures2KHR( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceFeatures2KHR" ) );
+ if ( !vkGetPhysicalDeviceFeatures2 )
+ vkGetPhysicalDeviceFeatures2 = vkGetPhysicalDeviceFeatures2KHR;
+ vkGetPhysicalDeviceFormatProperties = PFN_vkGetPhysicalDeviceFormatProperties(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceFormatProperties" ) );
+ vkGetPhysicalDeviceFormatProperties2 = PFN_vkGetPhysicalDeviceFormatProperties2(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceFormatProperties2" ) );
+ vkGetPhysicalDeviceFormatProperties2KHR = PFN_vkGetPhysicalDeviceFormatProperties2KHR(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceFormatProperties2KHR" ) );
+ if ( !vkGetPhysicalDeviceFormatProperties2 )
+ vkGetPhysicalDeviceFormatProperties2 = vkGetPhysicalDeviceFormatProperties2KHR;
+ vkGetPhysicalDeviceFragmentShadingRatesKHR = PFN_vkGetPhysicalDeviceFragmentShadingRatesKHR(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceFragmentShadingRatesKHR" ) );
+ vkGetPhysicalDeviceImageFormatProperties = PFN_vkGetPhysicalDeviceImageFormatProperties(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceImageFormatProperties" ) );
+ vkGetPhysicalDeviceImageFormatProperties2 = PFN_vkGetPhysicalDeviceImageFormatProperties2(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceImageFormatProperties2" ) );
+ vkGetPhysicalDeviceImageFormatProperties2KHR = PFN_vkGetPhysicalDeviceImageFormatProperties2KHR(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceImageFormatProperties2KHR" ) );
+ if ( !vkGetPhysicalDeviceImageFormatProperties2 )
+ vkGetPhysicalDeviceImageFormatProperties2 = vkGetPhysicalDeviceImageFormatProperties2KHR;
+ vkGetPhysicalDeviceMemoryProperties = PFN_vkGetPhysicalDeviceMemoryProperties(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceMemoryProperties" ) );
+ vkGetPhysicalDeviceMemoryProperties2 = PFN_vkGetPhysicalDeviceMemoryProperties2(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceMemoryProperties2" ) );
+ vkGetPhysicalDeviceMemoryProperties2KHR = PFN_vkGetPhysicalDeviceMemoryProperties2KHR(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceMemoryProperties2KHR" ) );
+ if ( !vkGetPhysicalDeviceMemoryProperties2 )
+ vkGetPhysicalDeviceMemoryProperties2 = vkGetPhysicalDeviceMemoryProperties2KHR;
+ vkGetPhysicalDeviceMultisamplePropertiesEXT = PFN_vkGetPhysicalDeviceMultisamplePropertiesEXT(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceMultisamplePropertiesEXT" ) );
+ vkGetPhysicalDevicePresentRectanglesKHR = PFN_vkGetPhysicalDevicePresentRectanglesKHR(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDevicePresentRectanglesKHR" ) );
+ vkGetPhysicalDeviceProperties =
+ PFN_vkGetPhysicalDeviceProperties( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceProperties" ) );
+ vkGetPhysicalDeviceProperties2 =
+ PFN_vkGetPhysicalDeviceProperties2( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceProperties2" ) );
+ vkGetPhysicalDeviceProperties2KHR = PFN_vkGetPhysicalDeviceProperties2KHR(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceProperties2KHR" ) );
+ if ( !vkGetPhysicalDeviceProperties2 )
+ vkGetPhysicalDeviceProperties2 = vkGetPhysicalDeviceProperties2KHR;
+ vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR =
+ PFN_vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR" ) );
+ vkGetPhysicalDeviceQueueFamilyProperties = PFN_vkGetPhysicalDeviceQueueFamilyProperties(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceQueueFamilyProperties" ) );
+ vkGetPhysicalDeviceQueueFamilyProperties2 = PFN_vkGetPhysicalDeviceQueueFamilyProperties2(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceQueueFamilyProperties2" ) );
+ vkGetPhysicalDeviceQueueFamilyProperties2KHR = PFN_vkGetPhysicalDeviceQueueFamilyProperties2KHR(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceQueueFamilyProperties2KHR" ) );
+ if ( !vkGetPhysicalDeviceQueueFamilyProperties2 )
+ vkGetPhysicalDeviceQueueFamilyProperties2 = vkGetPhysicalDeviceQueueFamilyProperties2KHR;
+# if defined( VK_USE_PLATFORM_SCREEN_QNX )
+ vkGetPhysicalDeviceScreenPresentationSupportQNX = PFN_vkGetPhysicalDeviceScreenPresentationSupportQNX(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceScreenPresentationSupportQNX" ) );
+# endif /*VK_USE_PLATFORM_SCREEN_QNX*/
+ vkGetPhysicalDeviceSparseImageFormatProperties = PFN_vkGetPhysicalDeviceSparseImageFormatProperties(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSparseImageFormatProperties" ) );
+ vkGetPhysicalDeviceSparseImageFormatProperties2 = PFN_vkGetPhysicalDeviceSparseImageFormatProperties2(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSparseImageFormatProperties2" ) );
+ vkGetPhysicalDeviceSparseImageFormatProperties2KHR = PFN_vkGetPhysicalDeviceSparseImageFormatProperties2KHR(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSparseImageFormatProperties2KHR" ) );
+ if ( !vkGetPhysicalDeviceSparseImageFormatProperties2 )
+ vkGetPhysicalDeviceSparseImageFormatProperties2 = vkGetPhysicalDeviceSparseImageFormatProperties2KHR;
+ vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV =
+ PFN_vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV" ) );
+ vkGetPhysicalDeviceSurfaceCapabilities2EXT = PFN_vkGetPhysicalDeviceSurfaceCapabilities2EXT(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSurfaceCapabilities2EXT" ) );
+ vkGetPhysicalDeviceSurfaceCapabilities2KHR = PFN_vkGetPhysicalDeviceSurfaceCapabilities2KHR(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSurfaceCapabilities2KHR" ) );
+ vkGetPhysicalDeviceSurfaceCapabilitiesKHR = PFN_vkGetPhysicalDeviceSurfaceCapabilitiesKHR(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSurfaceCapabilitiesKHR" ) );
+ vkGetPhysicalDeviceSurfaceFormats2KHR = PFN_vkGetPhysicalDeviceSurfaceFormats2KHR(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSurfaceFormats2KHR" ) );
+ vkGetPhysicalDeviceSurfaceFormatsKHR = PFN_vkGetPhysicalDeviceSurfaceFormatsKHR(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSurfaceFormatsKHR" ) );
+# if defined( VK_USE_PLATFORM_WIN32_KHR )
+ vkGetPhysicalDeviceSurfacePresentModes2EXT = PFN_vkGetPhysicalDeviceSurfacePresentModes2EXT(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSurfacePresentModes2EXT" ) );
+# endif /*VK_USE_PLATFORM_WIN32_KHR*/
+ vkGetPhysicalDeviceSurfacePresentModesKHR = PFN_vkGetPhysicalDeviceSurfacePresentModesKHR(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSurfacePresentModesKHR" ) );
+ vkGetPhysicalDeviceSurfaceSupportKHR = PFN_vkGetPhysicalDeviceSurfaceSupportKHR(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSurfaceSupportKHR" ) );
+ vkGetPhysicalDeviceToolPropertiesEXT = PFN_vkGetPhysicalDeviceToolPropertiesEXT(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceToolPropertiesEXT" ) );
+# if defined( VK_ENABLE_BETA_EXTENSIONS )
+ vkGetPhysicalDeviceVideoCapabilitiesKHR = PFN_vkGetPhysicalDeviceVideoCapabilitiesKHR(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceVideoCapabilitiesKHR" ) );
+# endif /*VK_ENABLE_BETA_EXTENSIONS*/
+# if defined( VK_ENABLE_BETA_EXTENSIONS )
+ vkGetPhysicalDeviceVideoFormatPropertiesKHR = PFN_vkGetPhysicalDeviceVideoFormatPropertiesKHR(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceVideoFormatPropertiesKHR" ) );
+# endif /*VK_ENABLE_BETA_EXTENSIONS*/
+# if defined( VK_USE_PLATFORM_WAYLAND_KHR )
+ vkGetPhysicalDeviceWaylandPresentationSupportKHR = PFN_vkGetPhysicalDeviceWaylandPresentationSupportKHR(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceWaylandPresentationSupportKHR" ) );
+# endif /*VK_USE_PLATFORM_WAYLAND_KHR*/
+# if defined( VK_USE_PLATFORM_WIN32_KHR )
+ vkGetPhysicalDeviceWin32PresentationSupportKHR = PFN_vkGetPhysicalDeviceWin32PresentationSupportKHR(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceWin32PresentationSupportKHR" ) );
+# endif /*VK_USE_PLATFORM_WIN32_KHR*/
+# if defined( VK_USE_PLATFORM_XCB_KHR )
+ vkGetPhysicalDeviceXcbPresentationSupportKHR = PFN_vkGetPhysicalDeviceXcbPresentationSupportKHR(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceXcbPresentationSupportKHR" ) );
+# endif /*VK_USE_PLATFORM_XCB_KHR*/
+# if defined( VK_USE_PLATFORM_XLIB_KHR )
+ vkGetPhysicalDeviceXlibPresentationSupportKHR = PFN_vkGetPhysicalDeviceXlibPresentationSupportKHR(
+ vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceXlibPresentationSupportKHR" ) );
+# endif /*VK_USE_PLATFORM_XLIB_KHR*/
+# if defined( VK_USE_PLATFORM_XLIB_XRANDR_EXT )
+ vkGetRandROutputDisplayEXT =
+ PFN_vkGetRandROutputDisplayEXT( vkGetInstanceProcAddr( instance, "vkGetRandROutputDisplayEXT" ) );
+# endif /*VK_USE_PLATFORM_XLIB_XRANDR_EXT*/
+# if defined( VK_USE_PLATFORM_WIN32_KHR )
+ vkGetWinrtDisplayNV = PFN_vkGetWinrtDisplayNV( vkGetInstanceProcAddr( instance, "vkGetWinrtDisplayNV" ) );
+# endif /*VK_USE_PLATFORM_WIN32_KHR*/
+ vkReleaseDisplayEXT = PFN_vkReleaseDisplayEXT( vkGetInstanceProcAddr( instance, "vkReleaseDisplayEXT" ) );
+ vkSubmitDebugUtilsMessageEXT =
+ PFN_vkSubmitDebugUtilsMessageEXT( vkGetInstanceProcAddr( instance, "vkSubmitDebugUtilsMessageEXT" ) );
+
+ vkGetDeviceProcAddr = PFN_vkGetDeviceProcAddr( vkGetInstanceProcAddr( instance, "vkGetDeviceProcAddr" ) );
+ }
+
+ public:
+ PFN_vkAcquireDrmDisplayEXT vkAcquireDrmDisplayEXT = 0;
+# if defined( VK_USE_PLATFORM_WIN32_KHR )
+ PFN_vkAcquireWinrtDisplayNV vkAcquireWinrtDisplayNV = 0;
+# endif /*VK_USE_PLATFORM_WIN32_KHR*/
+# if defined( VK_USE_PLATFORM_XLIB_XRANDR_EXT )
+ PFN_vkAcquireXlibDisplayEXT vkAcquireXlibDisplayEXT = 0;
+# endif /*VK_USE_PLATFORM_XLIB_XRANDR_EXT*/
+# if defined( VK_USE_PLATFORM_ANDROID_KHR )
+ PFN_vkCreateAndroidSurfaceKHR vkCreateAndroidSurfaceKHR = 0;
+# endif /*VK_USE_PLATFORM_ANDROID_KHR*/
+ PFN_vkCreateDebugReportCallbackEXT vkCreateDebugReportCallbackEXT = 0;
+ PFN_vkCreateDebugUtilsMessengerEXT vkCreateDebugUtilsMessengerEXT = 0;
+ PFN_vkCreateDevice vkCreateDevice = 0;
+# if defined( VK_USE_PLATFORM_DIRECTFB_EXT )
+ PFN_vkCreateDirectFBSurfaceEXT vkCreateDirectFBSurfaceEXT = 0;
+# endif /*VK_USE_PLATFORM_DIRECTFB_EXT*/
+ PFN_vkCreateDisplayModeKHR vkCreateDisplayModeKHR = 0;
+ PFN_vkCreateDisplayPlaneSurfaceKHR vkCreateDisplayPlaneSurfaceKHR = 0;
+ PFN_vkCreateHeadlessSurfaceEXT vkCreateHeadlessSurfaceEXT = 0;
+# if defined( VK_USE_PLATFORM_IOS_MVK )
+ PFN_vkCreateIOSSurfaceMVK vkCreateIOSSurfaceMVK = 0;
+# endif /*VK_USE_PLATFORM_IOS_MVK*/
+# if defined( VK_USE_PLATFORM_FUCHSIA )
+ PFN_vkCreateImagePipeSurfaceFUCHSIA vkCreateImagePipeSurfaceFUCHSIA = 0;
+# endif /*VK_USE_PLATFORM_FUCHSIA*/
+# if defined( VK_USE_PLATFORM_MACOS_MVK )
+ PFN_vkCreateMacOSSurfaceMVK vkCreateMacOSSurfaceMVK = 0;
+# endif /*VK_USE_PLATFORM_MACOS_MVK*/
+# if defined( VK_USE_PLATFORM_METAL_EXT )
+ PFN_vkCreateMetalSurfaceEXT vkCreateMetalSurfaceEXT = 0;
+# endif /*VK_USE_PLATFORM_METAL_EXT*/
+# if defined( VK_USE_PLATFORM_SCREEN_QNX )
+ PFN_vkCreateScreenSurfaceQNX vkCreateScreenSurfaceQNX = 0;
+# endif /*VK_USE_PLATFORM_SCREEN_QNX*/
+# if defined( VK_USE_PLATFORM_GGP )
+ PFN_vkCreateStreamDescriptorSurfaceGGP vkCreateStreamDescriptorSurfaceGGP = 0;
+# endif /*VK_USE_PLATFORM_GGP*/
+# if defined( VK_USE_PLATFORM_VI_NN )
+ PFN_vkCreateViSurfaceNN vkCreateViSurfaceNN = 0;
+# endif /*VK_USE_PLATFORM_VI_NN*/
+# if defined( VK_USE_PLATFORM_WAYLAND_KHR )
+ PFN_vkCreateWaylandSurfaceKHR vkCreateWaylandSurfaceKHR = 0;
+# endif /*VK_USE_PLATFORM_WAYLAND_KHR*/
+# if defined( VK_USE_PLATFORM_WIN32_KHR )
+ PFN_vkCreateWin32SurfaceKHR vkCreateWin32SurfaceKHR = 0;
+# endif /*VK_USE_PLATFORM_WIN32_KHR*/
+# if defined( VK_USE_PLATFORM_XCB_KHR )
+ PFN_vkCreateXcbSurfaceKHR vkCreateXcbSurfaceKHR = 0;
+# endif /*VK_USE_PLATFORM_XCB_KHR*/
+# if defined( VK_USE_PLATFORM_XLIB_KHR )
+ PFN_vkCreateXlibSurfaceKHR vkCreateXlibSurfaceKHR = 0;
+# endif /*VK_USE_PLATFORM_XLIB_KHR*/
+ PFN_vkDebugReportMessageEXT vkDebugReportMessageEXT = 0;
+ PFN_vkDestroyDebugReportCallbackEXT vkDestroyDebugReportCallbackEXT = 0;
+ PFN_vkDestroyDebugUtilsMessengerEXT vkDestroyDebugUtilsMessengerEXT = 0;
+ PFN_vkDestroyInstance vkDestroyInstance = 0;
+ PFN_vkDestroySurfaceKHR vkDestroySurfaceKHR = 0;
+ PFN_vkEnumerateDeviceExtensionProperties vkEnumerateDeviceExtensionProperties = 0;
+ PFN_vkEnumerateDeviceLayerProperties vkEnumerateDeviceLayerProperties = 0;
+ PFN_vkEnumeratePhysicalDeviceGroups vkEnumeratePhysicalDeviceGroups = 0;
+ PFN_vkEnumeratePhysicalDeviceGroupsKHR vkEnumeratePhysicalDeviceGroupsKHR = 0;
+ PFN_vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR
+ vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR = 0;
+ PFN_vkEnumeratePhysicalDevices vkEnumeratePhysicalDevices = 0;
+ PFN_vkGetDisplayModeProperties2KHR vkGetDisplayModeProperties2KHR = 0;
+ PFN_vkGetDisplayModePropertiesKHR vkGetDisplayModePropertiesKHR = 0;
+ PFN_vkGetDisplayPlaneCapabilities2KHR vkGetDisplayPlaneCapabilities2KHR = 0;
+ PFN_vkGetDisplayPlaneCapabilitiesKHR vkGetDisplayPlaneCapabilitiesKHR = 0;
+ PFN_vkGetDisplayPlaneSupportedDisplaysKHR vkGetDisplayPlaneSupportedDisplaysKHR = 0;
+ PFN_vkGetDrmDisplayEXT vkGetDrmDisplayEXT = 0;
+ PFN_vkGetInstanceProcAddr vkGetInstanceProcAddr = 0;
+ PFN_vkGetPhysicalDeviceCalibrateableTimeDomainsEXT vkGetPhysicalDeviceCalibrateableTimeDomainsEXT = 0;
+ PFN_vkGetPhysicalDeviceCooperativeMatrixPropertiesNV vkGetPhysicalDeviceCooperativeMatrixPropertiesNV = 0;
+# if defined( VK_USE_PLATFORM_DIRECTFB_EXT )
+ PFN_vkGetPhysicalDeviceDirectFBPresentationSupportEXT vkGetPhysicalDeviceDirectFBPresentationSupportEXT = 0;
+# endif /*VK_USE_PLATFORM_DIRECTFB_EXT*/
+ PFN_vkGetPhysicalDeviceDisplayPlaneProperties2KHR vkGetPhysicalDeviceDisplayPlaneProperties2KHR = 0;
+ PFN_vkGetPhysicalDeviceDisplayPlanePropertiesKHR vkGetPhysicalDeviceDisplayPlanePropertiesKHR = 0;
+ PFN_vkGetPhysicalDeviceDisplayProperties2KHR vkGetPhysicalDeviceDisplayProperties2KHR = 0;
+ PFN_vkGetPhysicalDeviceDisplayPropertiesKHR vkGetPhysicalDeviceDisplayPropertiesKHR = 0;
+ PFN_vkGetPhysicalDeviceExternalBufferProperties vkGetPhysicalDeviceExternalBufferProperties = 0;
+ PFN_vkGetPhysicalDeviceExternalBufferPropertiesKHR vkGetPhysicalDeviceExternalBufferPropertiesKHR = 0;
+ PFN_vkGetPhysicalDeviceExternalFenceProperties vkGetPhysicalDeviceExternalFenceProperties = 0;
+ PFN_vkGetPhysicalDeviceExternalFencePropertiesKHR vkGetPhysicalDeviceExternalFencePropertiesKHR = 0;
+ PFN_vkGetPhysicalDeviceExternalImageFormatPropertiesNV vkGetPhysicalDeviceExternalImageFormatPropertiesNV = 0;
+ PFN_vkGetPhysicalDeviceExternalSemaphoreProperties vkGetPhysicalDeviceExternalSemaphoreProperties = 0;
+ PFN_vkGetPhysicalDeviceExternalSemaphorePropertiesKHR vkGetPhysicalDeviceExternalSemaphorePropertiesKHR = 0;
+ PFN_vkGetPhysicalDeviceFeatures vkGetPhysicalDeviceFeatures = 0;
+ PFN_vkGetPhysicalDeviceFeatures2 vkGetPhysicalDeviceFeatures2 = 0;
+ PFN_vkGetPhysicalDeviceFeatures2KHR vkGetPhysicalDeviceFeatures2KHR = 0;
+ PFN_vkGetPhysicalDeviceFormatProperties vkGetPhysicalDeviceFormatProperties = 0;
+ PFN_vkGetPhysicalDeviceFormatProperties2 vkGetPhysicalDeviceFormatProperties2 = 0;
+ PFN_vkGetPhysicalDeviceFormatProperties2KHR vkGetPhysicalDeviceFormatProperties2KHR = 0;
+ PFN_vkGetPhysicalDeviceFragmentShadingRatesKHR vkGetPhysicalDeviceFragmentShadingRatesKHR = 0;
+ PFN_vkGetPhysicalDeviceImageFormatProperties vkGetPhysicalDeviceImageFormatProperties = 0;
+ PFN_vkGetPhysicalDeviceImageFormatProperties2 vkGetPhysicalDeviceImageFormatProperties2 = 0;
+ PFN_vkGetPhysicalDeviceImageFormatProperties2KHR vkGetPhysicalDeviceImageFormatProperties2KHR = 0;
+ PFN_vkGetPhysicalDeviceMemoryProperties vkGetPhysicalDeviceMemoryProperties = 0;
+ PFN_vkGetPhysicalDeviceMemoryProperties2 vkGetPhysicalDeviceMemoryProperties2 = 0;
+ PFN_vkGetPhysicalDeviceMemoryProperties2KHR vkGetPhysicalDeviceMemoryProperties2KHR = 0;
+ PFN_vkGetPhysicalDeviceMultisamplePropertiesEXT vkGetPhysicalDeviceMultisamplePropertiesEXT = 0;
+ PFN_vkGetPhysicalDevicePresentRectanglesKHR vkGetPhysicalDevicePresentRectanglesKHR = 0;
+ PFN_vkGetPhysicalDeviceProperties vkGetPhysicalDeviceProperties = 0;
+ PFN_vkGetPhysicalDeviceProperties2 vkGetPhysicalDeviceProperties2 = 0;
+ PFN_vkGetPhysicalDeviceProperties2KHR vkGetPhysicalDeviceProperties2KHR = 0;
+ PFN_vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR
+ vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR = 0;
+ PFN_vkGetPhysicalDeviceQueueFamilyProperties vkGetPhysicalDeviceQueueFamilyProperties = 0;
+ PFN_vkGetPhysicalDeviceQueueFamilyProperties2 vkGetPhysicalDeviceQueueFamilyProperties2 = 0;
+ PFN_vkGetPhysicalDeviceQueueFamilyProperties2KHR vkGetPhysicalDeviceQueueFamilyProperties2KHR = 0;
+# if defined( VK_USE_PLATFORM_SCREEN_QNX )
+ PFN_vkGetPhysicalDeviceScreenPresentationSupportQNX vkGetPhysicalDeviceScreenPresentationSupportQNX = 0;
+# endif /*VK_USE_PLATFORM_SCREEN_QNX*/
+ PFN_vkGetPhysicalDeviceSparseImageFormatProperties vkGetPhysicalDeviceSparseImageFormatProperties = 0;
+ PFN_vkGetPhysicalDeviceSparseImageFormatProperties2 vkGetPhysicalDeviceSparseImageFormatProperties2 = 0;
+ PFN_vkGetPhysicalDeviceSparseImageFormatProperties2KHR vkGetPhysicalDeviceSparseImageFormatProperties2KHR = 0;
+ PFN_vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV
+ vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV = 0;
+ PFN_vkGetPhysicalDeviceSurfaceCapabilities2EXT vkGetPhysicalDeviceSurfaceCapabilities2EXT = 0;
+ PFN_vkGetPhysicalDeviceSurfaceCapabilities2KHR vkGetPhysicalDeviceSurfaceCapabilities2KHR = 0;
+ PFN_vkGetPhysicalDeviceSurfaceCapabilitiesKHR vkGetPhysicalDeviceSurfaceCapabilitiesKHR = 0;
+ PFN_vkGetPhysicalDeviceSurfaceFormats2KHR vkGetPhysicalDeviceSurfaceFormats2KHR = 0;
+ PFN_vkGetPhysicalDeviceSurfaceFormatsKHR vkGetPhysicalDeviceSurfaceFormatsKHR = 0;
+# if defined( VK_USE_PLATFORM_WIN32_KHR )
+ PFN_vkGetPhysicalDeviceSurfacePresentModes2EXT vkGetPhysicalDeviceSurfacePresentModes2EXT = 0;
+# endif /*VK_USE_PLATFORM_WIN32_KHR*/
+ PFN_vkGetPhysicalDeviceSurfacePresentModesKHR vkGetPhysicalDeviceSurfacePresentModesKHR = 0;
+ PFN_vkGetPhysicalDeviceSurfaceSupportKHR vkGetPhysicalDeviceSurfaceSupportKHR = 0;
+ PFN_vkGetPhysicalDeviceToolPropertiesEXT vkGetPhysicalDeviceToolPropertiesEXT = 0;
+# if defined( VK_ENABLE_BETA_EXTENSIONS )
+ PFN_vkGetPhysicalDeviceVideoCapabilitiesKHR vkGetPhysicalDeviceVideoCapabilitiesKHR = 0;
+# endif /*VK_ENABLE_BETA_EXTENSIONS*/
+# if defined( VK_ENABLE_BETA_EXTENSIONS )
+ PFN_vkGetPhysicalDeviceVideoFormatPropertiesKHR vkGetPhysicalDeviceVideoFormatPropertiesKHR = 0;
+# endif /*VK_ENABLE_BETA_EXTENSIONS*/
+# if defined( VK_USE_PLATFORM_WAYLAND_KHR )
+ PFN_vkGetPhysicalDeviceWaylandPresentationSupportKHR vkGetPhysicalDeviceWaylandPresentationSupportKHR = 0;
+# endif /*VK_USE_PLATFORM_WAYLAND_KHR*/
+# if defined( VK_USE_PLATFORM_WIN32_KHR )
+ PFN_vkGetPhysicalDeviceWin32PresentationSupportKHR vkGetPhysicalDeviceWin32PresentationSupportKHR = 0;
+# endif /*VK_USE_PLATFORM_WIN32_KHR*/
+# if defined( VK_USE_PLATFORM_XCB_KHR )
+ PFN_vkGetPhysicalDeviceXcbPresentationSupportKHR vkGetPhysicalDeviceXcbPresentationSupportKHR = 0;
+# endif /*VK_USE_PLATFORM_XCB_KHR*/
+# if defined( VK_USE_PLATFORM_XLIB_KHR )
+ PFN_vkGetPhysicalDeviceXlibPresentationSupportKHR vkGetPhysicalDeviceXlibPresentationSupportKHR = 0;
+# endif /*VK_USE_PLATFORM_XLIB_KHR*/
+# if defined( VK_USE_PLATFORM_XLIB_XRANDR_EXT )
+ PFN_vkGetRandROutputDisplayEXT vkGetRandROutputDisplayEXT = 0;
+# endif /*VK_USE_PLATFORM_XLIB_XRANDR_EXT*/
+# if defined( VK_USE_PLATFORM_WIN32_KHR )
+ PFN_vkGetWinrtDisplayNV vkGetWinrtDisplayNV = 0;
+# endif /*VK_USE_PLATFORM_WIN32_KHR*/
+ PFN_vkReleaseDisplayEXT vkReleaseDisplayEXT = 0;
+ PFN_vkSubmitDebugUtilsMessageEXT vkSubmitDebugUtilsMessageEXT = 0;
+
+ PFN_vkGetDeviceProcAddr vkGetDeviceProcAddr = 0;
+ };
+
+ class DeviceDispatcher
+ {
+ public:
+ DeviceDispatcher( PFN_vkGetDeviceProcAddr getProcAddr ) : vkGetDeviceProcAddr( getProcAddr ) {}
+
+ void init( VkDevice device )
+ {
+# if defined( VK_USE_PLATFORM_WIN32_KHR )
+ vkAcquireFullScreenExclusiveModeEXT = PFN_vkAcquireFullScreenExclusiveModeEXT(
+ vkGetDeviceProcAddr( device, "vkAcquireFullScreenExclusiveModeEXT" ) );
+# endif /*VK_USE_PLATFORM_WIN32_KHR*/
+ vkAcquireNextImage2KHR = PFN_vkAcquireNextImage2KHR( vkGetDeviceProcAddr( device, "vkAcquireNextImage2KHR" ) );
+ vkAcquireNextImageKHR = PFN_vkAcquireNextImageKHR( vkGetDeviceProcAddr( device, "vkAcquireNextImageKHR" ) );
+ vkAcquirePerformanceConfigurationINTEL = PFN_vkAcquirePerformanceConfigurationINTEL(
+ vkGetDeviceProcAddr( device, "vkAcquirePerformanceConfigurationINTEL" ) );
+ vkAcquireProfilingLockKHR =
+ PFN_vkAcquireProfilingLockKHR( vkGetDeviceProcAddr( device, "vkAcquireProfilingLockKHR" ) );
+ vkAllocateCommandBuffers =
+ PFN_vkAllocateCommandBuffers( vkGetDeviceProcAddr( device, "vkAllocateCommandBuffers" ) );
+ vkAllocateDescriptorSets =
+ PFN_vkAllocateDescriptorSets( vkGetDeviceProcAddr( device, "vkAllocateDescriptorSets" ) );
+ vkAllocateMemory = PFN_vkAllocateMemory( vkGetDeviceProcAddr( device, "vkAllocateMemory" ) );
+ vkBeginCommandBuffer = PFN_vkBeginCommandBuffer( vkGetDeviceProcAddr( device, "vkBeginCommandBuffer" ) );
+ vkBindAccelerationStructureMemoryNV = PFN_vkBindAccelerationStructureMemoryNV(
+ vkGetDeviceProcAddr( device, "vkBindAccelerationStructureMemoryNV" ) );
+ vkBindBufferMemory = PFN_vkBindBufferMemory( vkGetDeviceProcAddr( device, "vkBindBufferMemory" ) );
+ vkBindBufferMemory2 = PFN_vkBindBufferMemory2( vkGetDeviceProcAddr( device, "vkBindBufferMemory2" ) );
+ vkBindBufferMemory2KHR = PFN_vkBindBufferMemory2KHR( vkGetDeviceProcAddr( device, "vkBindBufferMemory2KHR" ) );
+ if ( !vkBindBufferMemory2 )
+ vkBindBufferMemory2 = vkBindBufferMemory2KHR;
+ vkBindImageMemory = PFN_vkBindImageMemory( vkGetDeviceProcAddr( device, "vkBindImageMemory" ) );
+ vkBindImageMemory2 = PFN_vkBindImageMemory2( vkGetDeviceProcAddr( device, "vkBindImageMemory2" ) );
+ vkBindImageMemory2KHR = PFN_vkBindImageMemory2KHR( vkGetDeviceProcAddr( device, "vkBindImageMemory2KHR" ) );
+ if ( !vkBindImageMemory2 )
+ vkBindImageMemory2 = vkBindImageMemory2KHR;
+# if defined( VK_ENABLE_BETA_EXTENSIONS )
+ vkBindVideoSessionMemoryKHR =
+ PFN_vkBindVideoSessionMemoryKHR( vkGetDeviceProcAddr( device, "vkBindVideoSessionMemoryKHR" ) );
+# endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ vkBuildAccelerationStructuresKHR =
+ PFN_vkBuildAccelerationStructuresKHR( vkGetDeviceProcAddr( device, "vkBuildAccelerationStructuresKHR" ) );
+ vkCmdBeginConditionalRenderingEXT =
+ PFN_vkCmdBeginConditionalRenderingEXT( vkGetDeviceProcAddr( device, "vkCmdBeginConditionalRenderingEXT" ) );
+ vkCmdBeginDebugUtilsLabelEXT =
+ PFN_vkCmdBeginDebugUtilsLabelEXT( vkGetDeviceProcAddr( device, "vkCmdBeginDebugUtilsLabelEXT" ) );
+ vkCmdBeginQuery = PFN_vkCmdBeginQuery( vkGetDeviceProcAddr( device, "vkCmdBeginQuery" ) );
+ vkCmdBeginQueryIndexedEXT =
+ PFN_vkCmdBeginQueryIndexedEXT( vkGetDeviceProcAddr( device, "vkCmdBeginQueryIndexedEXT" ) );
+ vkCmdBeginRenderPass = PFN_vkCmdBeginRenderPass( vkGetDeviceProcAddr( device, "vkCmdBeginRenderPass" ) );
+ vkCmdBeginRenderPass2 = PFN_vkCmdBeginRenderPass2( vkGetDeviceProcAddr( device, "vkCmdBeginRenderPass2" ) );
+ vkCmdBeginRenderPass2KHR =
+ PFN_vkCmdBeginRenderPass2KHR( vkGetDeviceProcAddr( device, "vkCmdBeginRenderPass2KHR" ) );
+ if ( !vkCmdBeginRenderPass2 )
+ vkCmdBeginRenderPass2 = vkCmdBeginRenderPass2KHR;
+ vkCmdBeginTransformFeedbackEXT =
+ PFN_vkCmdBeginTransformFeedbackEXT( vkGetDeviceProcAddr( device, "vkCmdBeginTransformFeedbackEXT" ) );
+# if defined( VK_ENABLE_BETA_EXTENSIONS )
+ vkCmdBeginVideoCodingKHR =
+ PFN_vkCmdBeginVideoCodingKHR( vkGetDeviceProcAddr( device, "vkCmdBeginVideoCodingKHR" ) );
+# endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ vkCmdBindDescriptorSets =
+ PFN_vkCmdBindDescriptorSets( vkGetDeviceProcAddr( device, "vkCmdBindDescriptorSets" ) );
+ vkCmdBindIndexBuffer = PFN_vkCmdBindIndexBuffer( vkGetDeviceProcAddr( device, "vkCmdBindIndexBuffer" ) );
+ vkCmdBindPipeline = PFN_vkCmdBindPipeline( vkGetDeviceProcAddr( device, "vkCmdBindPipeline" ) );
+ vkCmdBindPipelineShaderGroupNV =
+ PFN_vkCmdBindPipelineShaderGroupNV( vkGetDeviceProcAddr( device, "vkCmdBindPipelineShaderGroupNV" ) );
+ vkCmdBindShadingRateImageNV =
+ PFN_vkCmdBindShadingRateImageNV( vkGetDeviceProcAddr( device, "vkCmdBindShadingRateImageNV" ) );
+ vkCmdBindTransformFeedbackBuffersEXT = PFN_vkCmdBindTransformFeedbackBuffersEXT(
+ vkGetDeviceProcAddr( device, "vkCmdBindTransformFeedbackBuffersEXT" ) );
+ vkCmdBindVertexBuffers = PFN_vkCmdBindVertexBuffers( vkGetDeviceProcAddr( device, "vkCmdBindVertexBuffers" ) );
+ vkCmdBindVertexBuffers2EXT =
+ PFN_vkCmdBindVertexBuffers2EXT( vkGetDeviceProcAddr( device, "vkCmdBindVertexBuffers2EXT" ) );
+ vkCmdBlitImage = PFN_vkCmdBlitImage( vkGetDeviceProcAddr( device, "vkCmdBlitImage" ) );
+ vkCmdBlitImage2KHR = PFN_vkCmdBlitImage2KHR( vkGetDeviceProcAddr( device, "vkCmdBlitImage2KHR" ) );
+ vkCmdBuildAccelerationStructureNV =
+ PFN_vkCmdBuildAccelerationStructureNV( vkGetDeviceProcAddr( device, "vkCmdBuildAccelerationStructureNV" ) );
+ vkCmdBuildAccelerationStructuresIndirectKHR = PFN_vkCmdBuildAccelerationStructuresIndirectKHR(
+ vkGetDeviceProcAddr( device, "vkCmdBuildAccelerationStructuresIndirectKHR" ) );
+ vkCmdBuildAccelerationStructuresKHR = PFN_vkCmdBuildAccelerationStructuresKHR(
+ vkGetDeviceProcAddr( device, "vkCmdBuildAccelerationStructuresKHR" ) );
+ vkCmdClearAttachments = PFN_vkCmdClearAttachments( vkGetDeviceProcAddr( device, "vkCmdClearAttachments" ) );
+ vkCmdClearColorImage = PFN_vkCmdClearColorImage( vkGetDeviceProcAddr( device, "vkCmdClearColorImage" ) );
+ vkCmdClearDepthStencilImage =
+ PFN_vkCmdClearDepthStencilImage( vkGetDeviceProcAddr( device, "vkCmdClearDepthStencilImage" ) );
+# if defined( VK_ENABLE_BETA_EXTENSIONS )
+ vkCmdControlVideoCodingKHR =
+ PFN_vkCmdControlVideoCodingKHR( vkGetDeviceProcAddr( device, "vkCmdControlVideoCodingKHR" ) );
+# endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ vkCmdCopyAccelerationStructureKHR =
+ PFN_vkCmdCopyAccelerationStructureKHR( vkGetDeviceProcAddr( device, "vkCmdCopyAccelerationStructureKHR" ) );
+ vkCmdCopyAccelerationStructureNV =
+ PFN_vkCmdCopyAccelerationStructureNV( vkGetDeviceProcAddr( device, "vkCmdCopyAccelerationStructureNV" ) );
+ vkCmdCopyAccelerationStructureToMemoryKHR = PFN_vkCmdCopyAccelerationStructureToMemoryKHR(
+ vkGetDeviceProcAddr( device, "vkCmdCopyAccelerationStructureToMemoryKHR" ) );
+ vkCmdCopyBuffer = PFN_vkCmdCopyBuffer( vkGetDeviceProcAddr( device, "vkCmdCopyBuffer" ) );
+ vkCmdCopyBuffer2KHR = PFN_vkCmdCopyBuffer2KHR( vkGetDeviceProcAddr( device, "vkCmdCopyBuffer2KHR" ) );
+ vkCmdCopyBufferToImage = PFN_vkCmdCopyBufferToImage( vkGetDeviceProcAddr( device, "vkCmdCopyBufferToImage" ) );
+ vkCmdCopyBufferToImage2KHR =
+ PFN_vkCmdCopyBufferToImage2KHR( vkGetDeviceProcAddr( device, "vkCmdCopyBufferToImage2KHR" ) );
+ vkCmdCopyImage = PFN_vkCmdCopyImage( vkGetDeviceProcAddr( device, "vkCmdCopyImage" ) );
+ vkCmdCopyImage2KHR = PFN_vkCmdCopyImage2KHR( vkGetDeviceProcAddr( device, "vkCmdCopyImage2KHR" ) );
+ vkCmdCopyImageToBuffer = PFN_vkCmdCopyImageToBuffer( vkGetDeviceProcAddr( device, "vkCmdCopyImageToBuffer" ) );
+ vkCmdCopyImageToBuffer2KHR =
+ PFN_vkCmdCopyImageToBuffer2KHR( vkGetDeviceProcAddr( device, "vkCmdCopyImageToBuffer2KHR" ) );
+ vkCmdCopyMemoryToAccelerationStructureKHR = PFN_vkCmdCopyMemoryToAccelerationStructureKHR(
+ vkGetDeviceProcAddr( device, "vkCmdCopyMemoryToAccelerationStructureKHR" ) );
+ vkCmdCopyQueryPoolResults =
+ PFN_vkCmdCopyQueryPoolResults( vkGetDeviceProcAddr( device, "vkCmdCopyQueryPoolResults" ) );
+ vkCmdCuLaunchKernelNVX = PFN_vkCmdCuLaunchKernelNVX( vkGetDeviceProcAddr( device, "vkCmdCuLaunchKernelNVX" ) );
+ vkCmdDebugMarkerBeginEXT =
+ PFN_vkCmdDebugMarkerBeginEXT( vkGetDeviceProcAddr( device, "vkCmdDebugMarkerBeginEXT" ) );
+ vkCmdDebugMarkerEndEXT = PFN_vkCmdDebugMarkerEndEXT( vkGetDeviceProcAddr( device, "vkCmdDebugMarkerEndEXT" ) );
+ vkCmdDebugMarkerInsertEXT =
+ PFN_vkCmdDebugMarkerInsertEXT( vkGetDeviceProcAddr( device, "vkCmdDebugMarkerInsertEXT" ) );
+# if defined( VK_ENABLE_BETA_EXTENSIONS )
+ vkCmdDecodeVideoKHR = PFN_vkCmdDecodeVideoKHR( vkGetDeviceProcAddr( device, "vkCmdDecodeVideoKHR" ) );
+# endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ vkCmdDispatch = PFN_vkCmdDispatch( vkGetDeviceProcAddr( device, "vkCmdDispatch" ) );
+ vkCmdDispatchBase = PFN_vkCmdDispatchBase( vkGetDeviceProcAddr( device, "vkCmdDispatchBase" ) );
+ vkCmdDispatchBaseKHR = PFN_vkCmdDispatchBaseKHR( vkGetDeviceProcAddr( device, "vkCmdDispatchBaseKHR" ) );
+ if ( !vkCmdDispatchBase )
+ vkCmdDispatchBase = vkCmdDispatchBaseKHR;
+ vkCmdDispatchIndirect = PFN_vkCmdDispatchIndirect( vkGetDeviceProcAddr( device, "vkCmdDispatchIndirect" ) );
+ vkCmdDraw = PFN_vkCmdDraw( vkGetDeviceProcAddr( device, "vkCmdDraw" ) );
+ vkCmdDrawIndexed = PFN_vkCmdDrawIndexed( vkGetDeviceProcAddr( device, "vkCmdDrawIndexed" ) );
+ vkCmdDrawIndexedIndirect =
+ PFN_vkCmdDrawIndexedIndirect( vkGetDeviceProcAddr( device, "vkCmdDrawIndexedIndirect" ) );
+ vkCmdDrawIndexedIndirectCount =
+ PFN_vkCmdDrawIndexedIndirectCount( vkGetDeviceProcAddr( device, "vkCmdDrawIndexedIndirectCount" ) );
+ vkCmdDrawIndexedIndirectCountAMD =
+ PFN_vkCmdDrawIndexedIndirectCountAMD( vkGetDeviceProcAddr( device, "vkCmdDrawIndexedIndirectCountAMD" ) );
+ if ( !vkCmdDrawIndexedIndirectCount )
+ vkCmdDrawIndexedIndirectCount = vkCmdDrawIndexedIndirectCountAMD;
+ vkCmdDrawIndexedIndirectCountKHR =
+ PFN_vkCmdDrawIndexedIndirectCountKHR( vkGetDeviceProcAddr( device, "vkCmdDrawIndexedIndirectCountKHR" ) );
+ if ( !vkCmdDrawIndexedIndirectCount )
+ vkCmdDrawIndexedIndirectCount = vkCmdDrawIndexedIndirectCountKHR;
+ vkCmdDrawIndirect = PFN_vkCmdDrawIndirect( vkGetDeviceProcAddr( device, "vkCmdDrawIndirect" ) );
+ vkCmdDrawIndirectByteCountEXT =
+ PFN_vkCmdDrawIndirectByteCountEXT( vkGetDeviceProcAddr( device, "vkCmdDrawIndirectByteCountEXT" ) );
+ vkCmdDrawIndirectCount = PFN_vkCmdDrawIndirectCount( vkGetDeviceProcAddr( device, "vkCmdDrawIndirectCount" ) );
+ vkCmdDrawIndirectCountAMD =
+ PFN_vkCmdDrawIndirectCountAMD( vkGetDeviceProcAddr( device, "vkCmdDrawIndirectCountAMD" ) );
+ if ( !vkCmdDrawIndirectCount )
+ vkCmdDrawIndirectCount = vkCmdDrawIndirectCountAMD;
+ vkCmdDrawIndirectCountKHR =
+ PFN_vkCmdDrawIndirectCountKHR( vkGetDeviceProcAddr( device, "vkCmdDrawIndirectCountKHR" ) );
+ if ( !vkCmdDrawIndirectCount )
+ vkCmdDrawIndirectCount = vkCmdDrawIndirectCountKHR;
+ vkCmdDrawMeshTasksIndirectCountNV =
+ PFN_vkCmdDrawMeshTasksIndirectCountNV( vkGetDeviceProcAddr( device, "vkCmdDrawMeshTasksIndirectCountNV" ) );
+ vkCmdDrawMeshTasksIndirectNV =
+ PFN_vkCmdDrawMeshTasksIndirectNV( vkGetDeviceProcAddr( device, "vkCmdDrawMeshTasksIndirectNV" ) );
+ vkCmdDrawMeshTasksNV = PFN_vkCmdDrawMeshTasksNV( vkGetDeviceProcAddr( device, "vkCmdDrawMeshTasksNV" ) );
+ vkCmdDrawMultiEXT = PFN_vkCmdDrawMultiEXT( vkGetDeviceProcAddr( device, "vkCmdDrawMultiEXT" ) );
+ vkCmdDrawMultiIndexedEXT =
+ PFN_vkCmdDrawMultiIndexedEXT( vkGetDeviceProcAddr( device, "vkCmdDrawMultiIndexedEXT" ) );
+# if defined( VK_ENABLE_BETA_EXTENSIONS )
+ vkCmdEncodeVideoKHR = PFN_vkCmdEncodeVideoKHR( vkGetDeviceProcAddr( device, "vkCmdEncodeVideoKHR" ) );
+# endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ vkCmdEndConditionalRenderingEXT =
+ PFN_vkCmdEndConditionalRenderingEXT( vkGetDeviceProcAddr( device, "vkCmdEndConditionalRenderingEXT" ) );
+ vkCmdEndDebugUtilsLabelEXT =
+ PFN_vkCmdEndDebugUtilsLabelEXT( vkGetDeviceProcAddr( device, "vkCmdEndDebugUtilsLabelEXT" ) );
+ vkCmdEndQuery = PFN_vkCmdEndQuery( vkGetDeviceProcAddr( device, "vkCmdEndQuery" ) );
+ vkCmdEndQueryIndexedEXT =
+ PFN_vkCmdEndQueryIndexedEXT( vkGetDeviceProcAddr( device, "vkCmdEndQueryIndexedEXT" ) );
+ vkCmdEndRenderPass = PFN_vkCmdEndRenderPass( vkGetDeviceProcAddr( device, "vkCmdEndRenderPass" ) );
+ vkCmdEndRenderPass2 = PFN_vkCmdEndRenderPass2( vkGetDeviceProcAddr( device, "vkCmdEndRenderPass2" ) );
+ vkCmdEndRenderPass2KHR = PFN_vkCmdEndRenderPass2KHR( vkGetDeviceProcAddr( device, "vkCmdEndRenderPass2KHR" ) );
+ if ( !vkCmdEndRenderPass2 )
+ vkCmdEndRenderPass2 = vkCmdEndRenderPass2KHR;
+ vkCmdEndTransformFeedbackEXT =
+ PFN_vkCmdEndTransformFeedbackEXT( vkGetDeviceProcAddr( device, "vkCmdEndTransformFeedbackEXT" ) );
+# if defined( VK_ENABLE_BETA_EXTENSIONS )
+ vkCmdEndVideoCodingKHR = PFN_vkCmdEndVideoCodingKHR( vkGetDeviceProcAddr( device, "vkCmdEndVideoCodingKHR" ) );
+# endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ vkCmdExecuteCommands = PFN_vkCmdExecuteCommands( vkGetDeviceProcAddr( device, "vkCmdExecuteCommands" ) );
+ vkCmdExecuteGeneratedCommandsNV =
+ PFN_vkCmdExecuteGeneratedCommandsNV( vkGetDeviceProcAddr( device, "vkCmdExecuteGeneratedCommandsNV" ) );
+ vkCmdFillBuffer = PFN_vkCmdFillBuffer( vkGetDeviceProcAddr( device, "vkCmdFillBuffer" ) );
+ vkCmdInsertDebugUtilsLabelEXT =
+ PFN_vkCmdInsertDebugUtilsLabelEXT( vkGetDeviceProcAddr( device, "vkCmdInsertDebugUtilsLabelEXT" ) );
+ vkCmdNextSubpass = PFN_vkCmdNextSubpass( vkGetDeviceProcAddr( device, "vkCmdNextSubpass" ) );
+ vkCmdNextSubpass2 = PFN_vkCmdNextSubpass2( vkGetDeviceProcAddr( device, "vkCmdNextSubpass2" ) );
+ vkCmdNextSubpass2KHR = PFN_vkCmdNextSubpass2KHR( vkGetDeviceProcAddr( device, "vkCmdNextSubpass2KHR" ) );
+ if ( !vkCmdNextSubpass2 )
+ vkCmdNextSubpass2 = vkCmdNextSubpass2KHR;
+ vkCmdPipelineBarrier = PFN_vkCmdPipelineBarrier( vkGetDeviceProcAddr( device, "vkCmdPipelineBarrier" ) );
+ vkCmdPipelineBarrier2KHR =
+ PFN_vkCmdPipelineBarrier2KHR( vkGetDeviceProcAddr( device, "vkCmdPipelineBarrier2KHR" ) );
+ vkCmdPreprocessGeneratedCommandsNV =
+ PFN_vkCmdPreprocessGeneratedCommandsNV( vkGetDeviceProcAddr( device, "vkCmdPreprocessGeneratedCommandsNV" ) );
+ vkCmdPushConstants = PFN_vkCmdPushConstants( vkGetDeviceProcAddr( device, "vkCmdPushConstants" ) );
+ vkCmdPushDescriptorSetKHR =
+ PFN_vkCmdPushDescriptorSetKHR( vkGetDeviceProcAddr( device, "vkCmdPushDescriptorSetKHR" ) );
+ vkCmdPushDescriptorSetWithTemplateKHR = PFN_vkCmdPushDescriptorSetWithTemplateKHR(
+ vkGetDeviceProcAddr( device, "vkCmdPushDescriptorSetWithTemplateKHR" ) );
+ vkCmdResetEvent = PFN_vkCmdResetEvent( vkGetDeviceProcAddr( device, "vkCmdResetEvent" ) );
+ vkCmdResetEvent2KHR = PFN_vkCmdResetEvent2KHR( vkGetDeviceProcAddr( device, "vkCmdResetEvent2KHR" ) );
+ vkCmdResetQueryPool = PFN_vkCmdResetQueryPool( vkGetDeviceProcAddr( device, "vkCmdResetQueryPool" ) );
+ vkCmdResolveImage = PFN_vkCmdResolveImage( vkGetDeviceProcAddr( device, "vkCmdResolveImage" ) );
+ vkCmdResolveImage2KHR = PFN_vkCmdResolveImage2KHR( vkGetDeviceProcAddr( device, "vkCmdResolveImage2KHR" ) );
+ vkCmdSetBlendConstants = PFN_vkCmdSetBlendConstants( vkGetDeviceProcAddr( device, "vkCmdSetBlendConstants" ) );
+ vkCmdSetCheckpointNV = PFN_vkCmdSetCheckpointNV( vkGetDeviceProcAddr( device, "vkCmdSetCheckpointNV" ) );
+ vkCmdSetCoarseSampleOrderNV =
+ PFN_vkCmdSetCoarseSampleOrderNV( vkGetDeviceProcAddr( device, "vkCmdSetCoarseSampleOrderNV" ) );
+ vkCmdSetColorWriteEnableEXT =
+ PFN_vkCmdSetColorWriteEnableEXT( vkGetDeviceProcAddr( device, "vkCmdSetColorWriteEnableEXT" ) );
+ vkCmdSetCullModeEXT = PFN_vkCmdSetCullModeEXT( vkGetDeviceProcAddr( device, "vkCmdSetCullModeEXT" ) );
+ vkCmdSetDepthBias = PFN_vkCmdSetDepthBias( vkGetDeviceProcAddr( device, "vkCmdSetDepthBias" ) );
+ vkCmdSetDepthBiasEnableEXT =
+ PFN_vkCmdSetDepthBiasEnableEXT( vkGetDeviceProcAddr( device, "vkCmdSetDepthBiasEnableEXT" ) );
+ vkCmdSetDepthBounds = PFN_vkCmdSetDepthBounds( vkGetDeviceProcAddr( device, "vkCmdSetDepthBounds" ) );
+ vkCmdSetDepthBoundsTestEnableEXT =
+ PFN_vkCmdSetDepthBoundsTestEnableEXT( vkGetDeviceProcAddr( device, "vkCmdSetDepthBoundsTestEnableEXT" ) );
+ vkCmdSetDepthCompareOpEXT =
+ PFN_vkCmdSetDepthCompareOpEXT( vkGetDeviceProcAddr( device, "vkCmdSetDepthCompareOpEXT" ) );
+ vkCmdSetDepthTestEnableEXT =
+ PFN_vkCmdSetDepthTestEnableEXT( vkGetDeviceProcAddr( device, "vkCmdSetDepthTestEnableEXT" ) );
+ vkCmdSetDepthWriteEnableEXT =
+ PFN_vkCmdSetDepthWriteEnableEXT( vkGetDeviceProcAddr( device, "vkCmdSetDepthWriteEnableEXT" ) );
+ vkCmdSetDeviceMask = PFN_vkCmdSetDeviceMask( vkGetDeviceProcAddr( device, "vkCmdSetDeviceMask" ) );
+ vkCmdSetDeviceMaskKHR = PFN_vkCmdSetDeviceMaskKHR( vkGetDeviceProcAddr( device, "vkCmdSetDeviceMaskKHR" ) );
+ if ( !vkCmdSetDeviceMask )
+ vkCmdSetDeviceMask = vkCmdSetDeviceMaskKHR;
+ vkCmdSetDiscardRectangleEXT =
+ PFN_vkCmdSetDiscardRectangleEXT( vkGetDeviceProcAddr( device, "vkCmdSetDiscardRectangleEXT" ) );
+ vkCmdSetEvent = PFN_vkCmdSetEvent( vkGetDeviceProcAddr( device, "vkCmdSetEvent" ) );
+ vkCmdSetEvent2KHR = PFN_vkCmdSetEvent2KHR( vkGetDeviceProcAddr( device, "vkCmdSetEvent2KHR" ) );
+ vkCmdSetExclusiveScissorNV =
+ PFN_vkCmdSetExclusiveScissorNV( vkGetDeviceProcAddr( device, "vkCmdSetExclusiveScissorNV" ) );
+ vkCmdSetFragmentShadingRateEnumNV =
+ PFN_vkCmdSetFragmentShadingRateEnumNV( vkGetDeviceProcAddr( device, "vkCmdSetFragmentShadingRateEnumNV" ) );
+ vkCmdSetFragmentShadingRateKHR =
+ PFN_vkCmdSetFragmentShadingRateKHR( vkGetDeviceProcAddr( device, "vkCmdSetFragmentShadingRateKHR" ) );
+ vkCmdSetFrontFaceEXT = PFN_vkCmdSetFrontFaceEXT( vkGetDeviceProcAddr( device, "vkCmdSetFrontFaceEXT" ) );
+ vkCmdSetLineStippleEXT = PFN_vkCmdSetLineStippleEXT( vkGetDeviceProcAddr( device, "vkCmdSetLineStippleEXT" ) );
+ vkCmdSetLineWidth = PFN_vkCmdSetLineWidth( vkGetDeviceProcAddr( device, "vkCmdSetLineWidth" ) );
+ vkCmdSetLogicOpEXT = PFN_vkCmdSetLogicOpEXT( vkGetDeviceProcAddr( device, "vkCmdSetLogicOpEXT" ) );
+ vkCmdSetPatchControlPointsEXT =
+ PFN_vkCmdSetPatchControlPointsEXT( vkGetDeviceProcAddr( device, "vkCmdSetPatchControlPointsEXT" ) );
+ vkCmdSetPerformanceMarkerINTEL =
+ PFN_vkCmdSetPerformanceMarkerINTEL( vkGetDeviceProcAddr( device, "vkCmdSetPerformanceMarkerINTEL" ) );
+ vkCmdSetPerformanceOverrideINTEL =
+ PFN_vkCmdSetPerformanceOverrideINTEL( vkGetDeviceProcAddr( device, "vkCmdSetPerformanceOverrideINTEL" ) );
+ vkCmdSetPerformanceStreamMarkerINTEL = PFN_vkCmdSetPerformanceStreamMarkerINTEL(
+ vkGetDeviceProcAddr( device, "vkCmdSetPerformanceStreamMarkerINTEL" ) );
+ vkCmdSetPrimitiveRestartEnableEXT =
+ PFN_vkCmdSetPrimitiveRestartEnableEXT( vkGetDeviceProcAddr( device, "vkCmdSetPrimitiveRestartEnableEXT" ) );
+ vkCmdSetPrimitiveTopologyEXT =
+ PFN_vkCmdSetPrimitiveTopologyEXT( vkGetDeviceProcAddr( device, "vkCmdSetPrimitiveTopologyEXT" ) );
+ vkCmdSetRasterizerDiscardEnableEXT =
+ PFN_vkCmdSetRasterizerDiscardEnableEXT( vkGetDeviceProcAddr( device, "vkCmdSetRasterizerDiscardEnableEXT" ) );
+ vkCmdSetRayTracingPipelineStackSizeKHR = PFN_vkCmdSetRayTracingPipelineStackSizeKHR(
+ vkGetDeviceProcAddr( device, "vkCmdSetRayTracingPipelineStackSizeKHR" ) );
+ vkCmdSetSampleLocationsEXT =
+ PFN_vkCmdSetSampleLocationsEXT( vkGetDeviceProcAddr( device, "vkCmdSetSampleLocationsEXT" ) );
+ vkCmdSetScissor = PFN_vkCmdSetScissor( vkGetDeviceProcAddr( device, "vkCmdSetScissor" ) );
+ vkCmdSetScissorWithCountEXT =
+ PFN_vkCmdSetScissorWithCountEXT( vkGetDeviceProcAddr( device, "vkCmdSetScissorWithCountEXT" ) );
+ vkCmdSetStencilCompareMask =
+ PFN_vkCmdSetStencilCompareMask( vkGetDeviceProcAddr( device, "vkCmdSetStencilCompareMask" ) );
+ vkCmdSetStencilOpEXT = PFN_vkCmdSetStencilOpEXT( vkGetDeviceProcAddr( device, "vkCmdSetStencilOpEXT" ) );
+ vkCmdSetStencilReference =
+ PFN_vkCmdSetStencilReference( vkGetDeviceProcAddr( device, "vkCmdSetStencilReference" ) );
+ vkCmdSetStencilTestEnableEXT =
+ PFN_vkCmdSetStencilTestEnableEXT( vkGetDeviceProcAddr( device, "vkCmdSetStencilTestEnableEXT" ) );
+ vkCmdSetStencilWriteMask =
+ PFN_vkCmdSetStencilWriteMask( vkGetDeviceProcAddr( device, "vkCmdSetStencilWriteMask" ) );
+ vkCmdSetVertexInputEXT = PFN_vkCmdSetVertexInputEXT( vkGetDeviceProcAddr( device, "vkCmdSetVertexInputEXT" ) );
+ vkCmdSetViewport = PFN_vkCmdSetViewport( vkGetDeviceProcAddr( device, "vkCmdSetViewport" ) );
+ vkCmdSetViewportShadingRatePaletteNV = PFN_vkCmdSetViewportShadingRatePaletteNV(
+ vkGetDeviceProcAddr( device, "vkCmdSetViewportShadingRatePaletteNV" ) );
+ vkCmdSetViewportWScalingNV =
+ PFN_vkCmdSetViewportWScalingNV( vkGetDeviceProcAddr( device, "vkCmdSetViewportWScalingNV" ) );
+ vkCmdSetViewportWithCountEXT =
+ PFN_vkCmdSetViewportWithCountEXT( vkGetDeviceProcAddr( device, "vkCmdSetViewportWithCountEXT" ) );
+ vkCmdSubpassShadingHUAWEI =
+ PFN_vkCmdSubpassShadingHUAWEI( vkGetDeviceProcAddr( device, "vkCmdSubpassShadingHUAWEI" ) );
+ vkCmdTraceRaysIndirectKHR =
+ PFN_vkCmdTraceRaysIndirectKHR( vkGetDeviceProcAddr( device, "vkCmdTraceRaysIndirectKHR" ) );
+ vkCmdTraceRaysKHR = PFN_vkCmdTraceRaysKHR( vkGetDeviceProcAddr( device, "vkCmdTraceRaysKHR" ) );
+ vkCmdTraceRaysNV = PFN_vkCmdTraceRaysNV( vkGetDeviceProcAddr( device, "vkCmdTraceRaysNV" ) );
+ vkCmdUpdateBuffer = PFN_vkCmdUpdateBuffer( vkGetDeviceProcAddr( device, "vkCmdUpdateBuffer" ) );
+ vkCmdWaitEvents = PFN_vkCmdWaitEvents( vkGetDeviceProcAddr( device, "vkCmdWaitEvents" ) );
+ vkCmdWaitEvents2KHR = PFN_vkCmdWaitEvents2KHR( vkGetDeviceProcAddr( device, "vkCmdWaitEvents2KHR" ) );
+ vkCmdWriteAccelerationStructuresPropertiesKHR = PFN_vkCmdWriteAccelerationStructuresPropertiesKHR(
+ vkGetDeviceProcAddr( device, "vkCmdWriteAccelerationStructuresPropertiesKHR" ) );
+ vkCmdWriteAccelerationStructuresPropertiesNV = PFN_vkCmdWriteAccelerationStructuresPropertiesNV(
+ vkGetDeviceProcAddr( device, "vkCmdWriteAccelerationStructuresPropertiesNV" ) );
+ vkCmdWriteBufferMarker2AMD =
+ PFN_vkCmdWriteBufferMarker2AMD( vkGetDeviceProcAddr( device, "vkCmdWriteBufferMarker2AMD" ) );
+ vkCmdWriteBufferMarkerAMD =
+ PFN_vkCmdWriteBufferMarkerAMD( vkGetDeviceProcAddr( device, "vkCmdWriteBufferMarkerAMD" ) );
+ vkCmdWriteTimestamp = PFN_vkCmdWriteTimestamp( vkGetDeviceProcAddr( device, "vkCmdWriteTimestamp" ) );
+ vkCmdWriteTimestamp2KHR =
+ PFN_vkCmdWriteTimestamp2KHR( vkGetDeviceProcAddr( device, "vkCmdWriteTimestamp2KHR" ) );
+ vkCompileDeferredNV = PFN_vkCompileDeferredNV( vkGetDeviceProcAddr( device, "vkCompileDeferredNV" ) );
+ vkCopyAccelerationStructureKHR =
+ PFN_vkCopyAccelerationStructureKHR( vkGetDeviceProcAddr( device, "vkCopyAccelerationStructureKHR" ) );
+ vkCopyAccelerationStructureToMemoryKHR = PFN_vkCopyAccelerationStructureToMemoryKHR(
+ vkGetDeviceProcAddr( device, "vkCopyAccelerationStructureToMemoryKHR" ) );
+ vkCopyMemoryToAccelerationStructureKHR = PFN_vkCopyMemoryToAccelerationStructureKHR(
+ vkGetDeviceProcAddr( device, "vkCopyMemoryToAccelerationStructureKHR" ) );
+ vkCreateAccelerationStructureKHR =
+ PFN_vkCreateAccelerationStructureKHR( vkGetDeviceProcAddr( device, "vkCreateAccelerationStructureKHR" ) );
+ vkCreateAccelerationStructureNV =
+ PFN_vkCreateAccelerationStructureNV( vkGetDeviceProcAddr( device, "vkCreateAccelerationStructureNV" ) );
+ vkCreateBuffer = PFN_vkCreateBuffer( vkGetDeviceProcAddr( device, "vkCreateBuffer" ) );
+ vkCreateBufferView = PFN_vkCreateBufferView( vkGetDeviceProcAddr( device, "vkCreateBufferView" ) );
+ vkCreateCommandPool = PFN_vkCreateCommandPool( vkGetDeviceProcAddr( device, "vkCreateCommandPool" ) );
+ vkCreateComputePipelines =
+ PFN_vkCreateComputePipelines( vkGetDeviceProcAddr( device, "vkCreateComputePipelines" ) );
+ vkCreateCuFunctionNVX = PFN_vkCreateCuFunctionNVX( vkGetDeviceProcAddr( device, "vkCreateCuFunctionNVX" ) );
+ vkCreateCuModuleNVX = PFN_vkCreateCuModuleNVX( vkGetDeviceProcAddr( device, "vkCreateCuModuleNVX" ) );
+ vkCreateDeferredOperationKHR =
+ PFN_vkCreateDeferredOperationKHR( vkGetDeviceProcAddr( device, "vkCreateDeferredOperationKHR" ) );
+ vkCreateDescriptorPool = PFN_vkCreateDescriptorPool( vkGetDeviceProcAddr( device, "vkCreateDescriptorPool" ) );
+ vkCreateDescriptorSetLayout =
+ PFN_vkCreateDescriptorSetLayout( vkGetDeviceProcAddr( device, "vkCreateDescriptorSetLayout" ) );
+ vkCreateDescriptorUpdateTemplate =
+ PFN_vkCreateDescriptorUpdateTemplate( vkGetDeviceProcAddr( device, "vkCreateDescriptorUpdateTemplate" ) );
+ vkCreateDescriptorUpdateTemplateKHR = PFN_vkCreateDescriptorUpdateTemplateKHR(
+ vkGetDeviceProcAddr( device, "vkCreateDescriptorUpdateTemplateKHR" ) );
+ if ( !vkCreateDescriptorUpdateTemplate )
+ vkCreateDescriptorUpdateTemplate = vkCreateDescriptorUpdateTemplateKHR;
+ vkCreateEvent = PFN_vkCreateEvent( vkGetDeviceProcAddr( device, "vkCreateEvent" ) );
+ vkCreateFence = PFN_vkCreateFence( vkGetDeviceProcAddr( device, "vkCreateFence" ) );
+ vkCreateFramebuffer = PFN_vkCreateFramebuffer( vkGetDeviceProcAddr( device, "vkCreateFramebuffer" ) );
+ vkCreateGraphicsPipelines =
+ PFN_vkCreateGraphicsPipelines( vkGetDeviceProcAddr( device, "vkCreateGraphicsPipelines" ) );
+ vkCreateImage = PFN_vkCreateImage( vkGetDeviceProcAddr( device, "vkCreateImage" ) );
+ vkCreateImageView = PFN_vkCreateImageView( vkGetDeviceProcAddr( device, "vkCreateImageView" ) );
+ vkCreateIndirectCommandsLayoutNV =
+ PFN_vkCreateIndirectCommandsLayoutNV( vkGetDeviceProcAddr( device, "vkCreateIndirectCommandsLayoutNV" ) );
+ vkCreatePipelineCache = PFN_vkCreatePipelineCache( vkGetDeviceProcAddr( device, "vkCreatePipelineCache" ) );
+ vkCreatePipelineLayout = PFN_vkCreatePipelineLayout( vkGetDeviceProcAddr( device, "vkCreatePipelineLayout" ) );
+ vkCreatePrivateDataSlotEXT =
+ PFN_vkCreatePrivateDataSlotEXT( vkGetDeviceProcAddr( device, "vkCreatePrivateDataSlotEXT" ) );
+ vkCreateQueryPool = PFN_vkCreateQueryPool( vkGetDeviceProcAddr( device, "vkCreateQueryPool" ) );
+ vkCreateRayTracingPipelinesKHR =
+ PFN_vkCreateRayTracingPipelinesKHR( vkGetDeviceProcAddr( device, "vkCreateRayTracingPipelinesKHR" ) );
+ vkCreateRayTracingPipelinesNV =
+ PFN_vkCreateRayTracingPipelinesNV( vkGetDeviceProcAddr( device, "vkCreateRayTracingPipelinesNV" ) );
+ vkCreateRenderPass = PFN_vkCreateRenderPass( vkGetDeviceProcAddr( device, "vkCreateRenderPass" ) );
+ vkCreateRenderPass2 = PFN_vkCreateRenderPass2( vkGetDeviceProcAddr( device, "vkCreateRenderPass2" ) );
+ vkCreateRenderPass2KHR = PFN_vkCreateRenderPass2KHR( vkGetDeviceProcAddr( device, "vkCreateRenderPass2KHR" ) );
+ if ( !vkCreateRenderPass2 )
+ vkCreateRenderPass2 = vkCreateRenderPass2KHR;
+ vkCreateSampler = PFN_vkCreateSampler( vkGetDeviceProcAddr( device, "vkCreateSampler" ) );
+ vkCreateSamplerYcbcrConversion =
+ PFN_vkCreateSamplerYcbcrConversion( vkGetDeviceProcAddr( device, "vkCreateSamplerYcbcrConversion" ) );
+ vkCreateSamplerYcbcrConversionKHR =
+ PFN_vkCreateSamplerYcbcrConversionKHR( vkGetDeviceProcAddr( device, "vkCreateSamplerYcbcrConversionKHR" ) );
+ if ( !vkCreateSamplerYcbcrConversion )
+ vkCreateSamplerYcbcrConversion = vkCreateSamplerYcbcrConversionKHR;
+ vkCreateSemaphore = PFN_vkCreateSemaphore( vkGetDeviceProcAddr( device, "vkCreateSemaphore" ) );
+ vkCreateShaderModule = PFN_vkCreateShaderModule( vkGetDeviceProcAddr( device, "vkCreateShaderModule" ) );
+ vkCreateSharedSwapchainsKHR =
+ PFN_vkCreateSharedSwapchainsKHR( vkGetDeviceProcAddr( device, "vkCreateSharedSwapchainsKHR" ) );
+ vkCreateSwapchainKHR = PFN_vkCreateSwapchainKHR( vkGetDeviceProcAddr( device, "vkCreateSwapchainKHR" ) );
+ vkCreateValidationCacheEXT =
+ PFN_vkCreateValidationCacheEXT( vkGetDeviceProcAddr( device, "vkCreateValidationCacheEXT" ) );
+# if defined( VK_ENABLE_BETA_EXTENSIONS )
+ vkCreateVideoSessionKHR =
+ PFN_vkCreateVideoSessionKHR( vkGetDeviceProcAddr( device, "vkCreateVideoSessionKHR" ) );
+# endif /*VK_ENABLE_BETA_EXTENSIONS*/
+# if defined( VK_ENABLE_BETA_EXTENSIONS )
+ vkCreateVideoSessionParametersKHR =
+ PFN_vkCreateVideoSessionParametersKHR( vkGetDeviceProcAddr( device, "vkCreateVideoSessionParametersKHR" ) );
+# endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ vkDebugMarkerSetObjectNameEXT =
+ PFN_vkDebugMarkerSetObjectNameEXT( vkGetDeviceProcAddr( device, "vkDebugMarkerSetObjectNameEXT" ) );
+ vkDebugMarkerSetObjectTagEXT =
+ PFN_vkDebugMarkerSetObjectTagEXT( vkGetDeviceProcAddr( device, "vkDebugMarkerSetObjectTagEXT" ) );
+ vkDeferredOperationJoinKHR =
+ PFN_vkDeferredOperationJoinKHR( vkGetDeviceProcAddr( device, "vkDeferredOperationJoinKHR" ) );
+ vkDestroyAccelerationStructureKHR =
+ PFN_vkDestroyAccelerationStructureKHR( vkGetDeviceProcAddr( device, "vkDestroyAccelerationStructureKHR" ) );
+ vkDestroyAccelerationStructureNV =
+ PFN_vkDestroyAccelerationStructureNV( vkGetDeviceProcAddr( device, "vkDestroyAccelerationStructureNV" ) );
+ vkDestroyBuffer = PFN_vkDestroyBuffer( vkGetDeviceProcAddr( device, "vkDestroyBuffer" ) );
+ vkDestroyBufferView = PFN_vkDestroyBufferView( vkGetDeviceProcAddr( device, "vkDestroyBufferView" ) );
+ vkDestroyCommandPool = PFN_vkDestroyCommandPool( vkGetDeviceProcAddr( device, "vkDestroyCommandPool" ) );
+ vkDestroyCuFunctionNVX = PFN_vkDestroyCuFunctionNVX( vkGetDeviceProcAddr( device, "vkDestroyCuFunctionNVX" ) );
+ vkDestroyCuModuleNVX = PFN_vkDestroyCuModuleNVX( vkGetDeviceProcAddr( device, "vkDestroyCuModuleNVX" ) );
+ vkDestroyDeferredOperationKHR =
+ PFN_vkDestroyDeferredOperationKHR( vkGetDeviceProcAddr( device, "vkDestroyDeferredOperationKHR" ) );
+ vkDestroyDescriptorPool =
+ PFN_vkDestroyDescriptorPool( vkGetDeviceProcAddr( device, "vkDestroyDescriptorPool" ) );
+ vkDestroyDescriptorSetLayout =
+ PFN_vkDestroyDescriptorSetLayout( vkGetDeviceProcAddr( device, "vkDestroyDescriptorSetLayout" ) );
+ vkDestroyDescriptorUpdateTemplate =
+ PFN_vkDestroyDescriptorUpdateTemplate( vkGetDeviceProcAddr( device, "vkDestroyDescriptorUpdateTemplate" ) );
+ vkDestroyDescriptorUpdateTemplateKHR = PFN_vkDestroyDescriptorUpdateTemplateKHR(
+ vkGetDeviceProcAddr( device, "vkDestroyDescriptorUpdateTemplateKHR" ) );
+ if ( !vkDestroyDescriptorUpdateTemplate )
+ vkDestroyDescriptorUpdateTemplate = vkDestroyDescriptorUpdateTemplateKHR;
+ vkDestroyDevice = PFN_vkDestroyDevice( vkGetDeviceProcAddr( device, "vkDestroyDevice" ) );
+ vkDestroyEvent = PFN_vkDestroyEvent( vkGetDeviceProcAddr( device, "vkDestroyEvent" ) );
+ vkDestroyFence = PFN_vkDestroyFence( vkGetDeviceProcAddr( device, "vkDestroyFence" ) );
+ vkDestroyFramebuffer = PFN_vkDestroyFramebuffer( vkGetDeviceProcAddr( device, "vkDestroyFramebuffer" ) );
+ vkDestroyImage = PFN_vkDestroyImage( vkGetDeviceProcAddr( device, "vkDestroyImage" ) );
+ vkDestroyImageView = PFN_vkDestroyImageView( vkGetDeviceProcAddr( device, "vkDestroyImageView" ) );
+ vkDestroyIndirectCommandsLayoutNV =
+ PFN_vkDestroyIndirectCommandsLayoutNV( vkGetDeviceProcAddr( device, "vkDestroyIndirectCommandsLayoutNV" ) );
+ vkDestroyPipeline = PFN_vkDestroyPipeline( vkGetDeviceProcAddr( device, "vkDestroyPipeline" ) );
+ vkDestroyPipelineCache = PFN_vkDestroyPipelineCache( vkGetDeviceProcAddr( device, "vkDestroyPipelineCache" ) );
+ vkDestroyPipelineLayout =
+ PFN_vkDestroyPipelineLayout( vkGetDeviceProcAddr( device, "vkDestroyPipelineLayout" ) );
+ vkDestroyPrivateDataSlotEXT =
+ PFN_vkDestroyPrivateDataSlotEXT( vkGetDeviceProcAddr( device, "vkDestroyPrivateDataSlotEXT" ) );
+ vkDestroyQueryPool = PFN_vkDestroyQueryPool( vkGetDeviceProcAddr( device, "vkDestroyQueryPool" ) );
+ vkDestroyRenderPass = PFN_vkDestroyRenderPass( vkGetDeviceProcAddr( device, "vkDestroyRenderPass" ) );
+ vkDestroySampler = PFN_vkDestroySampler( vkGetDeviceProcAddr( device, "vkDestroySampler" ) );
+ vkDestroySamplerYcbcrConversion =
+ PFN_vkDestroySamplerYcbcrConversion( vkGetDeviceProcAddr( device, "vkDestroySamplerYcbcrConversion" ) );
+ vkDestroySamplerYcbcrConversionKHR =
+ PFN_vkDestroySamplerYcbcrConversionKHR( vkGetDeviceProcAddr( device, "vkDestroySamplerYcbcrConversionKHR" ) );
+ if ( !vkDestroySamplerYcbcrConversion )
+ vkDestroySamplerYcbcrConversion = vkDestroySamplerYcbcrConversionKHR;
+ vkDestroySemaphore = PFN_vkDestroySemaphore( vkGetDeviceProcAddr( device, "vkDestroySemaphore" ) );
+ vkDestroyShaderModule = PFN_vkDestroyShaderModule( vkGetDeviceProcAddr( device, "vkDestroyShaderModule" ) );
+ vkDestroySwapchainKHR = PFN_vkDestroySwapchainKHR( vkGetDeviceProcAddr( device, "vkDestroySwapchainKHR" ) );
+ vkDestroyValidationCacheEXT =
+ PFN_vkDestroyValidationCacheEXT( vkGetDeviceProcAddr( device, "vkDestroyValidationCacheEXT" ) );
+# if defined( VK_ENABLE_BETA_EXTENSIONS )
+ vkDestroyVideoSessionKHR =
+ PFN_vkDestroyVideoSessionKHR( vkGetDeviceProcAddr( device, "vkDestroyVideoSessionKHR" ) );
+# endif /*VK_ENABLE_BETA_EXTENSIONS*/
+# if defined( VK_ENABLE_BETA_EXTENSIONS )
+ vkDestroyVideoSessionParametersKHR =
+ PFN_vkDestroyVideoSessionParametersKHR( vkGetDeviceProcAddr( device, "vkDestroyVideoSessionParametersKHR" ) );
+# endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ vkDeviceWaitIdle = PFN_vkDeviceWaitIdle( vkGetDeviceProcAddr( device, "vkDeviceWaitIdle" ) );
+ vkDisplayPowerControlEXT =
+ PFN_vkDisplayPowerControlEXT( vkGetDeviceProcAddr( device, "vkDisplayPowerControlEXT" ) );
+ vkEndCommandBuffer = PFN_vkEndCommandBuffer( vkGetDeviceProcAddr( device, "vkEndCommandBuffer" ) );
+ vkFlushMappedMemoryRanges =
+ PFN_vkFlushMappedMemoryRanges( vkGetDeviceProcAddr( device, "vkFlushMappedMemoryRanges" ) );
+ vkFreeCommandBuffers = PFN_vkFreeCommandBuffers( vkGetDeviceProcAddr( device, "vkFreeCommandBuffers" ) );
+ vkFreeDescriptorSets = PFN_vkFreeDescriptorSets( vkGetDeviceProcAddr( device, "vkFreeDescriptorSets" ) );
+ vkFreeMemory = PFN_vkFreeMemory( vkGetDeviceProcAddr( device, "vkFreeMemory" ) );
+ vkGetAccelerationStructureBuildSizesKHR = PFN_vkGetAccelerationStructureBuildSizesKHR(
+ vkGetDeviceProcAddr( device, "vkGetAccelerationStructureBuildSizesKHR" ) );
+ vkGetAccelerationStructureDeviceAddressKHR = PFN_vkGetAccelerationStructureDeviceAddressKHR(
+ vkGetDeviceProcAddr( device, "vkGetAccelerationStructureDeviceAddressKHR" ) );
+ vkGetAccelerationStructureHandleNV =
+ PFN_vkGetAccelerationStructureHandleNV( vkGetDeviceProcAddr( device, "vkGetAccelerationStructureHandleNV" ) );
+ vkGetAccelerationStructureMemoryRequirementsNV = PFN_vkGetAccelerationStructureMemoryRequirementsNV(
+ vkGetDeviceProcAddr( device, "vkGetAccelerationStructureMemoryRequirementsNV" ) );
+# if defined( VK_USE_PLATFORM_ANDROID_KHR )
+ vkGetAndroidHardwareBufferPropertiesANDROID = PFN_vkGetAndroidHardwareBufferPropertiesANDROID(
+ vkGetDeviceProcAddr( device, "vkGetAndroidHardwareBufferPropertiesANDROID" ) );
+# endif /*VK_USE_PLATFORM_ANDROID_KHR*/
+ vkGetBufferDeviceAddress =
+ PFN_vkGetBufferDeviceAddress( vkGetDeviceProcAddr( device, "vkGetBufferDeviceAddress" ) );
+ vkGetBufferDeviceAddressEXT =
+ PFN_vkGetBufferDeviceAddressEXT( vkGetDeviceProcAddr( device, "vkGetBufferDeviceAddressEXT" ) );
+ if ( !vkGetBufferDeviceAddress )
+ vkGetBufferDeviceAddress = vkGetBufferDeviceAddressEXT;
+ vkGetBufferDeviceAddressKHR =
+ PFN_vkGetBufferDeviceAddressKHR( vkGetDeviceProcAddr( device, "vkGetBufferDeviceAddressKHR" ) );
+ if ( !vkGetBufferDeviceAddress )
+ vkGetBufferDeviceAddress = vkGetBufferDeviceAddressKHR;
+ vkGetBufferMemoryRequirements =
+ PFN_vkGetBufferMemoryRequirements( vkGetDeviceProcAddr( device, "vkGetBufferMemoryRequirements" ) );
+ vkGetBufferMemoryRequirements2 =
+ PFN_vkGetBufferMemoryRequirements2( vkGetDeviceProcAddr( device, "vkGetBufferMemoryRequirements2" ) );
+ vkGetBufferMemoryRequirements2KHR =
+ PFN_vkGetBufferMemoryRequirements2KHR( vkGetDeviceProcAddr( device, "vkGetBufferMemoryRequirements2KHR" ) );
+ if ( !vkGetBufferMemoryRequirements2 )
+ vkGetBufferMemoryRequirements2 = vkGetBufferMemoryRequirements2KHR;
+ vkGetBufferOpaqueCaptureAddress =
+ PFN_vkGetBufferOpaqueCaptureAddress( vkGetDeviceProcAddr( device, "vkGetBufferOpaqueCaptureAddress" ) );
+ vkGetBufferOpaqueCaptureAddressKHR =
+ PFN_vkGetBufferOpaqueCaptureAddressKHR( vkGetDeviceProcAddr( device, "vkGetBufferOpaqueCaptureAddressKHR" ) );
+ if ( !vkGetBufferOpaqueCaptureAddress )
+ vkGetBufferOpaqueCaptureAddress = vkGetBufferOpaqueCaptureAddressKHR;
+ vkGetCalibratedTimestampsEXT =
+ PFN_vkGetCalibratedTimestampsEXT( vkGetDeviceProcAddr( device, "vkGetCalibratedTimestampsEXT" ) );
+ vkGetDeferredOperationMaxConcurrencyKHR = PFN_vkGetDeferredOperationMaxConcurrencyKHR(
+ vkGetDeviceProcAddr( device, "vkGetDeferredOperationMaxConcurrencyKHR" ) );
+ vkGetDeferredOperationResultKHR =
+ PFN_vkGetDeferredOperationResultKHR( vkGetDeviceProcAddr( device, "vkGetDeferredOperationResultKHR" ) );
+ vkGetDescriptorSetLayoutSupport =
+ PFN_vkGetDescriptorSetLayoutSupport( vkGetDeviceProcAddr( device, "vkGetDescriptorSetLayoutSupport" ) );
+ vkGetDescriptorSetLayoutSupportKHR =
+ PFN_vkGetDescriptorSetLayoutSupportKHR( vkGetDeviceProcAddr( device, "vkGetDescriptorSetLayoutSupportKHR" ) );
+ if ( !vkGetDescriptorSetLayoutSupport )
+ vkGetDescriptorSetLayoutSupport = vkGetDescriptorSetLayoutSupportKHR;
+ vkGetDeviceAccelerationStructureCompatibilityKHR = PFN_vkGetDeviceAccelerationStructureCompatibilityKHR(
+ vkGetDeviceProcAddr( device, "vkGetDeviceAccelerationStructureCompatibilityKHR" ) );
+ vkGetDeviceGroupPeerMemoryFeatures =
+ PFN_vkGetDeviceGroupPeerMemoryFeatures( vkGetDeviceProcAddr( device, "vkGetDeviceGroupPeerMemoryFeatures" ) );
+ vkGetDeviceGroupPeerMemoryFeaturesKHR = PFN_vkGetDeviceGroupPeerMemoryFeaturesKHR(
+ vkGetDeviceProcAddr( device, "vkGetDeviceGroupPeerMemoryFeaturesKHR" ) );
+ if ( !vkGetDeviceGroupPeerMemoryFeatures )
+ vkGetDeviceGroupPeerMemoryFeatures = vkGetDeviceGroupPeerMemoryFeaturesKHR;
+ vkGetDeviceGroupPresentCapabilitiesKHR = PFN_vkGetDeviceGroupPresentCapabilitiesKHR(
+ vkGetDeviceProcAddr( device, "vkGetDeviceGroupPresentCapabilitiesKHR" ) );
+# if defined( VK_USE_PLATFORM_WIN32_KHR )
+ vkGetDeviceGroupSurfacePresentModes2EXT = PFN_vkGetDeviceGroupSurfacePresentModes2EXT(
+ vkGetDeviceProcAddr( device, "vkGetDeviceGroupSurfacePresentModes2EXT" ) );
+# endif /*VK_USE_PLATFORM_WIN32_KHR*/
+ vkGetDeviceGroupSurfacePresentModesKHR = PFN_vkGetDeviceGroupSurfacePresentModesKHR(
+ vkGetDeviceProcAddr( device, "vkGetDeviceGroupSurfacePresentModesKHR" ) );
+ vkGetDeviceMemoryCommitment =
+ PFN_vkGetDeviceMemoryCommitment( vkGetDeviceProcAddr( device, "vkGetDeviceMemoryCommitment" ) );
+ vkGetDeviceMemoryOpaqueCaptureAddress = PFN_vkGetDeviceMemoryOpaqueCaptureAddress(
+ vkGetDeviceProcAddr( device, "vkGetDeviceMemoryOpaqueCaptureAddress" ) );
+ vkGetDeviceMemoryOpaqueCaptureAddressKHR = PFN_vkGetDeviceMemoryOpaqueCaptureAddressKHR(
+ vkGetDeviceProcAddr( device, "vkGetDeviceMemoryOpaqueCaptureAddressKHR" ) );
+ if ( !vkGetDeviceMemoryOpaqueCaptureAddress )
+ vkGetDeviceMemoryOpaqueCaptureAddress = vkGetDeviceMemoryOpaqueCaptureAddressKHR;
+ vkGetDeviceProcAddr = PFN_vkGetDeviceProcAddr( vkGetDeviceProcAddr( device, "vkGetDeviceProcAddr" ) );
+ vkGetDeviceQueue = PFN_vkGetDeviceQueue( vkGetDeviceProcAddr( device, "vkGetDeviceQueue" ) );
+ vkGetDeviceQueue2 = PFN_vkGetDeviceQueue2( vkGetDeviceProcAddr( device, "vkGetDeviceQueue2" ) );
+ vkGetEventStatus = PFN_vkGetEventStatus( vkGetDeviceProcAddr( device, "vkGetEventStatus" ) );
+ vkGetFenceFdKHR = PFN_vkGetFenceFdKHR( vkGetDeviceProcAddr( device, "vkGetFenceFdKHR" ) );
+ vkGetFenceStatus = PFN_vkGetFenceStatus( vkGetDeviceProcAddr( device, "vkGetFenceStatus" ) );
+# if defined( VK_USE_PLATFORM_WIN32_KHR )
+ vkGetFenceWin32HandleKHR =
+ PFN_vkGetFenceWin32HandleKHR( vkGetDeviceProcAddr( device, "vkGetFenceWin32HandleKHR" ) );
+# endif /*VK_USE_PLATFORM_WIN32_KHR*/
+ vkGetGeneratedCommandsMemoryRequirementsNV = PFN_vkGetGeneratedCommandsMemoryRequirementsNV(
+ vkGetDeviceProcAddr( device, "vkGetGeneratedCommandsMemoryRequirementsNV" ) );
+ vkGetImageDrmFormatModifierPropertiesEXT = PFN_vkGetImageDrmFormatModifierPropertiesEXT(
+ vkGetDeviceProcAddr( device, "vkGetImageDrmFormatModifierPropertiesEXT" ) );
+ vkGetImageMemoryRequirements =
+ PFN_vkGetImageMemoryRequirements( vkGetDeviceProcAddr( device, "vkGetImageMemoryRequirements" ) );
+ vkGetImageMemoryRequirements2 =
+ PFN_vkGetImageMemoryRequirements2( vkGetDeviceProcAddr( device, "vkGetImageMemoryRequirements2" ) );
+ vkGetImageMemoryRequirements2KHR =
+ PFN_vkGetImageMemoryRequirements2KHR( vkGetDeviceProcAddr( device, "vkGetImageMemoryRequirements2KHR" ) );
+ if ( !vkGetImageMemoryRequirements2 )
+ vkGetImageMemoryRequirements2 = vkGetImageMemoryRequirements2KHR;
+ vkGetImageSparseMemoryRequirements =
+ PFN_vkGetImageSparseMemoryRequirements( vkGetDeviceProcAddr( device, "vkGetImageSparseMemoryRequirements" ) );
+ vkGetImageSparseMemoryRequirements2 = PFN_vkGetImageSparseMemoryRequirements2(
+ vkGetDeviceProcAddr( device, "vkGetImageSparseMemoryRequirements2" ) );
+ vkGetImageSparseMemoryRequirements2KHR = PFN_vkGetImageSparseMemoryRequirements2KHR(
+ vkGetDeviceProcAddr( device, "vkGetImageSparseMemoryRequirements2KHR" ) );
+ if ( !vkGetImageSparseMemoryRequirements2 )
+ vkGetImageSparseMemoryRequirements2 = vkGetImageSparseMemoryRequirements2KHR;
+ vkGetImageSubresourceLayout =
+ PFN_vkGetImageSubresourceLayout( vkGetDeviceProcAddr( device, "vkGetImageSubresourceLayout" ) );
+ vkGetImageViewAddressNVX =
+ PFN_vkGetImageViewAddressNVX( vkGetDeviceProcAddr( device, "vkGetImageViewAddressNVX" ) );
+ vkGetImageViewHandleNVX =
+ PFN_vkGetImageViewHandleNVX( vkGetDeviceProcAddr( device, "vkGetImageViewHandleNVX" ) );
+# if defined( VK_USE_PLATFORM_ANDROID_KHR )
+ vkGetMemoryAndroidHardwareBufferANDROID = PFN_vkGetMemoryAndroidHardwareBufferANDROID(
+ vkGetDeviceProcAddr( device, "vkGetMemoryAndroidHardwareBufferANDROID" ) );
+# endif /*VK_USE_PLATFORM_ANDROID_KHR*/
+ vkGetMemoryFdKHR = PFN_vkGetMemoryFdKHR( vkGetDeviceProcAddr( device, "vkGetMemoryFdKHR" ) );
+ vkGetMemoryFdPropertiesKHR =
+ PFN_vkGetMemoryFdPropertiesKHR( vkGetDeviceProcAddr( device, "vkGetMemoryFdPropertiesKHR" ) );
+ vkGetMemoryHostPointerPropertiesEXT = PFN_vkGetMemoryHostPointerPropertiesEXT(
+ vkGetDeviceProcAddr( device, "vkGetMemoryHostPointerPropertiesEXT" ) );
+# if defined( VK_USE_PLATFORM_WIN32_KHR )
+ vkGetMemoryWin32HandleKHR =
+ PFN_vkGetMemoryWin32HandleKHR( vkGetDeviceProcAddr( device, "vkGetMemoryWin32HandleKHR" ) );
+# endif /*VK_USE_PLATFORM_WIN32_KHR*/
+# if defined( VK_USE_PLATFORM_WIN32_KHR )
+ vkGetMemoryWin32HandleNV =
+ PFN_vkGetMemoryWin32HandleNV( vkGetDeviceProcAddr( device, "vkGetMemoryWin32HandleNV" ) );
+# endif /*VK_USE_PLATFORM_WIN32_KHR*/
+# if defined( VK_USE_PLATFORM_WIN32_KHR )
+ vkGetMemoryWin32HandlePropertiesKHR = PFN_vkGetMemoryWin32HandlePropertiesKHR(
+ vkGetDeviceProcAddr( device, "vkGetMemoryWin32HandlePropertiesKHR" ) );
+# endif /*VK_USE_PLATFORM_WIN32_KHR*/
+# if defined( VK_USE_PLATFORM_FUCHSIA )
+ vkGetMemoryZirconHandleFUCHSIA =
+ PFN_vkGetMemoryZirconHandleFUCHSIA( vkGetDeviceProcAddr( device, "vkGetMemoryZirconHandleFUCHSIA" ) );
+# endif /*VK_USE_PLATFORM_FUCHSIA*/
+# if defined( VK_USE_PLATFORM_FUCHSIA )
+ vkGetMemoryZirconHandlePropertiesFUCHSIA = PFN_vkGetMemoryZirconHandlePropertiesFUCHSIA(
+ vkGetDeviceProcAddr( device, "vkGetMemoryZirconHandlePropertiesFUCHSIA" ) );
+# endif /*VK_USE_PLATFORM_FUCHSIA*/
+ vkGetPastPresentationTimingGOOGLE =
+ PFN_vkGetPastPresentationTimingGOOGLE( vkGetDeviceProcAddr( device, "vkGetPastPresentationTimingGOOGLE" ) );
+ vkGetPerformanceParameterINTEL =
+ PFN_vkGetPerformanceParameterINTEL( vkGetDeviceProcAddr( device, "vkGetPerformanceParameterINTEL" ) );
+ vkGetPipelineCacheData = PFN_vkGetPipelineCacheData( vkGetDeviceProcAddr( device, "vkGetPipelineCacheData" ) );
+ vkGetPipelineExecutableInternalRepresentationsKHR = PFN_vkGetPipelineExecutableInternalRepresentationsKHR(
+ vkGetDeviceProcAddr( device, "vkGetPipelineExecutableInternalRepresentationsKHR" ) );
+ vkGetPipelineExecutablePropertiesKHR = PFN_vkGetPipelineExecutablePropertiesKHR(
+ vkGetDeviceProcAddr( device, "vkGetPipelineExecutablePropertiesKHR" ) );
+ vkGetPipelineExecutableStatisticsKHR = PFN_vkGetPipelineExecutableStatisticsKHR(
+ vkGetDeviceProcAddr( device, "vkGetPipelineExecutableStatisticsKHR" ) );
+ vkGetPrivateDataEXT = PFN_vkGetPrivateDataEXT( vkGetDeviceProcAddr( device, "vkGetPrivateDataEXT" ) );
+ vkGetQueryPoolResults = PFN_vkGetQueryPoolResults( vkGetDeviceProcAddr( device, "vkGetQueryPoolResults" ) );
+ vkGetQueueCheckpointData2NV =
+ PFN_vkGetQueueCheckpointData2NV( vkGetDeviceProcAddr( device, "vkGetQueueCheckpointData2NV" ) );
+ vkGetQueueCheckpointDataNV =
+ PFN_vkGetQueueCheckpointDataNV( vkGetDeviceProcAddr( device, "vkGetQueueCheckpointDataNV" ) );
+ vkGetRayTracingCaptureReplayShaderGroupHandlesKHR = PFN_vkGetRayTracingCaptureReplayShaderGroupHandlesKHR(
+ vkGetDeviceProcAddr( device, "vkGetRayTracingCaptureReplayShaderGroupHandlesKHR" ) );
+ vkGetRayTracingShaderGroupHandlesKHR = PFN_vkGetRayTracingShaderGroupHandlesKHR(
+ vkGetDeviceProcAddr( device, "vkGetRayTracingShaderGroupHandlesKHR" ) );
+ vkGetRayTracingShaderGroupHandlesNV = PFN_vkGetRayTracingShaderGroupHandlesNV(
+ vkGetDeviceProcAddr( device, "vkGetRayTracingShaderGroupHandlesNV" ) );
+ if ( !vkGetRayTracingShaderGroupHandlesKHR )
+ vkGetRayTracingShaderGroupHandlesKHR = vkGetRayTracingShaderGroupHandlesNV;
+ vkGetRayTracingShaderGroupStackSizeKHR = PFN_vkGetRayTracingShaderGroupStackSizeKHR(
+ vkGetDeviceProcAddr( device, "vkGetRayTracingShaderGroupStackSizeKHR" ) );
+ vkGetRefreshCycleDurationGOOGLE =
+ PFN_vkGetRefreshCycleDurationGOOGLE( vkGetDeviceProcAddr( device, "vkGetRefreshCycleDurationGOOGLE" ) );
+ vkGetRenderAreaGranularity =
+ PFN_vkGetRenderAreaGranularity( vkGetDeviceProcAddr( device, "vkGetRenderAreaGranularity" ) );
+ vkGetSemaphoreCounterValue =
+ PFN_vkGetSemaphoreCounterValue( vkGetDeviceProcAddr( device, "vkGetSemaphoreCounterValue" ) );
+ vkGetSemaphoreCounterValueKHR =
+ PFN_vkGetSemaphoreCounterValueKHR( vkGetDeviceProcAddr( device, "vkGetSemaphoreCounterValueKHR" ) );
+ if ( !vkGetSemaphoreCounterValue )
+ vkGetSemaphoreCounterValue = vkGetSemaphoreCounterValueKHR;
+ vkGetSemaphoreFdKHR = PFN_vkGetSemaphoreFdKHR( vkGetDeviceProcAddr( device, "vkGetSemaphoreFdKHR" ) );
+# if defined( VK_USE_PLATFORM_WIN32_KHR )
+ vkGetSemaphoreWin32HandleKHR =
+ PFN_vkGetSemaphoreWin32HandleKHR( vkGetDeviceProcAddr( device, "vkGetSemaphoreWin32HandleKHR" ) );
+# endif /*VK_USE_PLATFORM_WIN32_KHR*/
+# if defined( VK_USE_PLATFORM_FUCHSIA )
+ vkGetSemaphoreZirconHandleFUCHSIA =
+ PFN_vkGetSemaphoreZirconHandleFUCHSIA( vkGetDeviceProcAddr( device, "vkGetSemaphoreZirconHandleFUCHSIA" ) );
+# endif /*VK_USE_PLATFORM_FUCHSIA*/
+ vkGetShaderInfoAMD = PFN_vkGetShaderInfoAMD( vkGetDeviceProcAddr( device, "vkGetShaderInfoAMD" ) );
+ vkGetSubpassShadingMaxWorkgroupSizeHUAWEI = PFN_vkGetSubpassShadingMaxWorkgroupSizeHUAWEI(
+ vkGetDeviceProcAddr( device, "vkGetSubpassShadingMaxWorkgroupSizeHUAWEI" ) );
+ vkGetSwapchainCounterEXT =
+ PFN_vkGetSwapchainCounterEXT( vkGetDeviceProcAddr( device, "vkGetSwapchainCounterEXT" ) );
+ vkGetSwapchainImagesKHR =
+ PFN_vkGetSwapchainImagesKHR( vkGetDeviceProcAddr( device, "vkGetSwapchainImagesKHR" ) );
+ vkGetSwapchainStatusKHR =
+ PFN_vkGetSwapchainStatusKHR( vkGetDeviceProcAddr( device, "vkGetSwapchainStatusKHR" ) );
+ vkGetValidationCacheDataEXT =
+ PFN_vkGetValidationCacheDataEXT( vkGetDeviceProcAddr( device, "vkGetValidationCacheDataEXT" ) );
+# if defined( VK_ENABLE_BETA_EXTENSIONS )
+ vkGetVideoSessionMemoryRequirementsKHR = PFN_vkGetVideoSessionMemoryRequirementsKHR(
+ vkGetDeviceProcAddr( device, "vkGetVideoSessionMemoryRequirementsKHR" ) );
+# endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ vkImportFenceFdKHR = PFN_vkImportFenceFdKHR( vkGetDeviceProcAddr( device, "vkImportFenceFdKHR" ) );
+# if defined( VK_USE_PLATFORM_WIN32_KHR )
+ vkImportFenceWin32HandleKHR =
+ PFN_vkImportFenceWin32HandleKHR( vkGetDeviceProcAddr( device, "vkImportFenceWin32HandleKHR" ) );
+# endif /*VK_USE_PLATFORM_WIN32_KHR*/
+ vkImportSemaphoreFdKHR = PFN_vkImportSemaphoreFdKHR( vkGetDeviceProcAddr( device, "vkImportSemaphoreFdKHR" ) );
+# if defined( VK_USE_PLATFORM_WIN32_KHR )
+ vkImportSemaphoreWin32HandleKHR =
+ PFN_vkImportSemaphoreWin32HandleKHR( vkGetDeviceProcAddr( device, "vkImportSemaphoreWin32HandleKHR" ) );
+# endif /*VK_USE_PLATFORM_WIN32_KHR*/
+# if defined( VK_USE_PLATFORM_FUCHSIA )
+ vkImportSemaphoreZirconHandleFUCHSIA = PFN_vkImportSemaphoreZirconHandleFUCHSIA(
+ vkGetDeviceProcAddr( device, "vkImportSemaphoreZirconHandleFUCHSIA" ) );
+# endif /*VK_USE_PLATFORM_FUCHSIA*/
+ vkInitializePerformanceApiINTEL =
+ PFN_vkInitializePerformanceApiINTEL( vkGetDeviceProcAddr( device, "vkInitializePerformanceApiINTEL" ) );
+ vkInvalidateMappedMemoryRanges =
+ PFN_vkInvalidateMappedMemoryRanges( vkGetDeviceProcAddr( device, "vkInvalidateMappedMemoryRanges" ) );
+ vkMapMemory = PFN_vkMapMemory( vkGetDeviceProcAddr( device, "vkMapMemory" ) );
+ vkMergePipelineCaches = PFN_vkMergePipelineCaches( vkGetDeviceProcAddr( device, "vkMergePipelineCaches" ) );
+ vkMergeValidationCachesEXT =
+ PFN_vkMergeValidationCachesEXT( vkGetDeviceProcAddr( device, "vkMergeValidationCachesEXT" ) );
+ vkQueueBeginDebugUtilsLabelEXT =
+ PFN_vkQueueBeginDebugUtilsLabelEXT( vkGetDeviceProcAddr( device, "vkQueueBeginDebugUtilsLabelEXT" ) );
+ vkQueueBindSparse = PFN_vkQueueBindSparse( vkGetDeviceProcAddr( device, "vkQueueBindSparse" ) );
+ vkQueueEndDebugUtilsLabelEXT =
+ PFN_vkQueueEndDebugUtilsLabelEXT( vkGetDeviceProcAddr( device, "vkQueueEndDebugUtilsLabelEXT" ) );
+ vkQueueInsertDebugUtilsLabelEXT =
+ PFN_vkQueueInsertDebugUtilsLabelEXT( vkGetDeviceProcAddr( device, "vkQueueInsertDebugUtilsLabelEXT" ) );
+ vkQueuePresentKHR = PFN_vkQueuePresentKHR( vkGetDeviceProcAddr( device, "vkQueuePresentKHR" ) );
+ vkQueueSetPerformanceConfigurationINTEL = PFN_vkQueueSetPerformanceConfigurationINTEL(
+ vkGetDeviceProcAddr( device, "vkQueueSetPerformanceConfigurationINTEL" ) );
+ vkQueueSubmit = PFN_vkQueueSubmit( vkGetDeviceProcAddr( device, "vkQueueSubmit" ) );
+ vkQueueSubmit2KHR = PFN_vkQueueSubmit2KHR( vkGetDeviceProcAddr( device, "vkQueueSubmit2KHR" ) );
+ vkQueueWaitIdle = PFN_vkQueueWaitIdle( vkGetDeviceProcAddr( device, "vkQueueWaitIdle" ) );
+ vkRegisterDeviceEventEXT =
+ PFN_vkRegisterDeviceEventEXT( vkGetDeviceProcAddr( device, "vkRegisterDeviceEventEXT" ) );
+ vkRegisterDisplayEventEXT =
+ PFN_vkRegisterDisplayEventEXT( vkGetDeviceProcAddr( device, "vkRegisterDisplayEventEXT" ) );
+# if defined( VK_USE_PLATFORM_WIN32_KHR )
+ vkReleaseFullScreenExclusiveModeEXT = PFN_vkReleaseFullScreenExclusiveModeEXT(
+ vkGetDeviceProcAddr( device, "vkReleaseFullScreenExclusiveModeEXT" ) );
+# endif /*VK_USE_PLATFORM_WIN32_KHR*/
+ vkReleasePerformanceConfigurationINTEL = PFN_vkReleasePerformanceConfigurationINTEL(
+ vkGetDeviceProcAddr( device, "vkReleasePerformanceConfigurationINTEL" ) );
+ vkReleaseProfilingLockKHR =
+ PFN_vkReleaseProfilingLockKHR( vkGetDeviceProcAddr( device, "vkReleaseProfilingLockKHR" ) );
+ vkResetCommandBuffer = PFN_vkResetCommandBuffer( vkGetDeviceProcAddr( device, "vkResetCommandBuffer" ) );
+ vkResetCommandPool = PFN_vkResetCommandPool( vkGetDeviceProcAddr( device, "vkResetCommandPool" ) );
+ vkResetDescriptorPool = PFN_vkResetDescriptorPool( vkGetDeviceProcAddr( device, "vkResetDescriptorPool" ) );
+ vkResetEvent = PFN_vkResetEvent( vkGetDeviceProcAddr( device, "vkResetEvent" ) );
+ vkResetFences = PFN_vkResetFences( vkGetDeviceProcAddr( device, "vkResetFences" ) );
+ vkResetQueryPool = PFN_vkResetQueryPool( vkGetDeviceProcAddr( device, "vkResetQueryPool" ) );
+ vkResetQueryPoolEXT = PFN_vkResetQueryPoolEXT( vkGetDeviceProcAddr( device, "vkResetQueryPoolEXT" ) );
+ if ( !vkResetQueryPool )
+ vkResetQueryPool = vkResetQueryPoolEXT;
+ vkSetDebugUtilsObjectNameEXT =
+ PFN_vkSetDebugUtilsObjectNameEXT( vkGetDeviceProcAddr( device, "vkSetDebugUtilsObjectNameEXT" ) );
+ vkSetDebugUtilsObjectTagEXT =
+ PFN_vkSetDebugUtilsObjectTagEXT( vkGetDeviceProcAddr( device, "vkSetDebugUtilsObjectTagEXT" ) );
+ vkSetEvent = PFN_vkSetEvent( vkGetDeviceProcAddr( device, "vkSetEvent" ) );
+ vkSetHdrMetadataEXT = PFN_vkSetHdrMetadataEXT( vkGetDeviceProcAddr( device, "vkSetHdrMetadataEXT" ) );
+ vkSetLocalDimmingAMD = PFN_vkSetLocalDimmingAMD( vkGetDeviceProcAddr( device, "vkSetLocalDimmingAMD" ) );
+ vkSetPrivateDataEXT = PFN_vkSetPrivateDataEXT( vkGetDeviceProcAddr( device, "vkSetPrivateDataEXT" ) );
+ vkSignalSemaphore = PFN_vkSignalSemaphore( vkGetDeviceProcAddr( device, "vkSignalSemaphore" ) );
+ vkSignalSemaphoreKHR = PFN_vkSignalSemaphoreKHR( vkGetDeviceProcAddr( device, "vkSignalSemaphoreKHR" ) );
+ if ( !vkSignalSemaphore )
+ vkSignalSemaphore = vkSignalSemaphoreKHR;
+ vkTrimCommandPool = PFN_vkTrimCommandPool( vkGetDeviceProcAddr( device, "vkTrimCommandPool" ) );
+ vkTrimCommandPoolKHR = PFN_vkTrimCommandPoolKHR( vkGetDeviceProcAddr( device, "vkTrimCommandPoolKHR" ) );
+ if ( !vkTrimCommandPool )
+ vkTrimCommandPool = vkTrimCommandPoolKHR;
+ vkUninitializePerformanceApiINTEL =
+ PFN_vkUninitializePerformanceApiINTEL( vkGetDeviceProcAddr( device, "vkUninitializePerformanceApiINTEL" ) );
+ vkUnmapMemory = PFN_vkUnmapMemory( vkGetDeviceProcAddr( device, "vkUnmapMemory" ) );
+ vkUpdateDescriptorSetWithTemplate =
+ PFN_vkUpdateDescriptorSetWithTemplate( vkGetDeviceProcAddr( device, "vkUpdateDescriptorSetWithTemplate" ) );
+ vkUpdateDescriptorSetWithTemplateKHR = PFN_vkUpdateDescriptorSetWithTemplateKHR(
+ vkGetDeviceProcAddr( device, "vkUpdateDescriptorSetWithTemplateKHR" ) );
+ if ( !vkUpdateDescriptorSetWithTemplate )
+ vkUpdateDescriptorSetWithTemplate = vkUpdateDescriptorSetWithTemplateKHR;
+ vkUpdateDescriptorSets = PFN_vkUpdateDescriptorSets( vkGetDeviceProcAddr( device, "vkUpdateDescriptorSets" ) );
+# if defined( VK_ENABLE_BETA_EXTENSIONS )
+ vkUpdateVideoSessionParametersKHR =
+ PFN_vkUpdateVideoSessionParametersKHR( vkGetDeviceProcAddr( device, "vkUpdateVideoSessionParametersKHR" ) );
+# endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ vkWaitForFences = PFN_vkWaitForFences( vkGetDeviceProcAddr( device, "vkWaitForFences" ) );
+ vkWaitSemaphores = PFN_vkWaitSemaphores( vkGetDeviceProcAddr( device, "vkWaitSemaphores" ) );
+ vkWaitSemaphoresKHR = PFN_vkWaitSemaphoresKHR( vkGetDeviceProcAddr( device, "vkWaitSemaphoresKHR" ) );
+ if ( !vkWaitSemaphores )
+ vkWaitSemaphores = vkWaitSemaphoresKHR;
+ vkWriteAccelerationStructuresPropertiesKHR = PFN_vkWriteAccelerationStructuresPropertiesKHR(
+ vkGetDeviceProcAddr( device, "vkWriteAccelerationStructuresPropertiesKHR" ) );
+ }
+
+ public:
+# if defined( VK_USE_PLATFORM_WIN32_KHR )
+ PFN_vkAcquireFullScreenExclusiveModeEXT vkAcquireFullScreenExclusiveModeEXT = 0;
+# endif /*VK_USE_PLATFORM_WIN32_KHR*/
+ PFN_vkAcquireNextImage2KHR vkAcquireNextImage2KHR = 0;
+ PFN_vkAcquireNextImageKHR vkAcquireNextImageKHR = 0;
+ PFN_vkAcquirePerformanceConfigurationINTEL vkAcquirePerformanceConfigurationINTEL = 0;
+ PFN_vkAcquireProfilingLockKHR vkAcquireProfilingLockKHR = 0;
+ PFN_vkAllocateCommandBuffers vkAllocateCommandBuffers = 0;
+ PFN_vkAllocateDescriptorSets vkAllocateDescriptorSets = 0;
+ PFN_vkAllocateMemory vkAllocateMemory = 0;
+ PFN_vkBeginCommandBuffer vkBeginCommandBuffer = 0;
+ PFN_vkBindAccelerationStructureMemoryNV vkBindAccelerationStructureMemoryNV = 0;
+ PFN_vkBindBufferMemory vkBindBufferMemory = 0;
+ PFN_vkBindBufferMemory2 vkBindBufferMemory2 = 0;
+ PFN_vkBindBufferMemory2KHR vkBindBufferMemory2KHR = 0;
+ PFN_vkBindImageMemory vkBindImageMemory = 0;
+ PFN_vkBindImageMemory2 vkBindImageMemory2 = 0;
+ PFN_vkBindImageMemory2KHR vkBindImageMemory2KHR = 0;
+# if defined( VK_ENABLE_BETA_EXTENSIONS )
+ PFN_vkBindVideoSessionMemoryKHR vkBindVideoSessionMemoryKHR = 0;
+# endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ PFN_vkBuildAccelerationStructuresKHR vkBuildAccelerationStructuresKHR = 0;
+ PFN_vkCmdBeginConditionalRenderingEXT vkCmdBeginConditionalRenderingEXT = 0;
+ PFN_vkCmdBeginDebugUtilsLabelEXT vkCmdBeginDebugUtilsLabelEXT = 0;
+ PFN_vkCmdBeginQuery vkCmdBeginQuery = 0;
+ PFN_vkCmdBeginQueryIndexedEXT vkCmdBeginQueryIndexedEXT = 0;
+ PFN_vkCmdBeginRenderPass vkCmdBeginRenderPass = 0;
+ PFN_vkCmdBeginRenderPass2 vkCmdBeginRenderPass2 = 0;
+ PFN_vkCmdBeginRenderPass2KHR vkCmdBeginRenderPass2KHR = 0;
+ PFN_vkCmdBeginTransformFeedbackEXT vkCmdBeginTransformFeedbackEXT = 0;
+# if defined( VK_ENABLE_BETA_EXTENSIONS )
+ PFN_vkCmdBeginVideoCodingKHR vkCmdBeginVideoCodingKHR = 0;
+# endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ PFN_vkCmdBindDescriptorSets vkCmdBindDescriptorSets = 0;
+ PFN_vkCmdBindIndexBuffer vkCmdBindIndexBuffer = 0;
+ PFN_vkCmdBindPipeline vkCmdBindPipeline = 0;
+ PFN_vkCmdBindPipelineShaderGroupNV vkCmdBindPipelineShaderGroupNV = 0;
+ PFN_vkCmdBindShadingRateImageNV vkCmdBindShadingRateImageNV = 0;
+ PFN_vkCmdBindTransformFeedbackBuffersEXT vkCmdBindTransformFeedbackBuffersEXT = 0;
+ PFN_vkCmdBindVertexBuffers vkCmdBindVertexBuffers = 0;
+ PFN_vkCmdBindVertexBuffers2EXT vkCmdBindVertexBuffers2EXT = 0;
+ PFN_vkCmdBlitImage vkCmdBlitImage = 0;
+ PFN_vkCmdBlitImage2KHR vkCmdBlitImage2KHR = 0;
+ PFN_vkCmdBuildAccelerationStructureNV vkCmdBuildAccelerationStructureNV = 0;
+ PFN_vkCmdBuildAccelerationStructuresIndirectKHR vkCmdBuildAccelerationStructuresIndirectKHR = 0;
+ PFN_vkCmdBuildAccelerationStructuresKHR vkCmdBuildAccelerationStructuresKHR = 0;
+ PFN_vkCmdClearAttachments vkCmdClearAttachments = 0;
+ PFN_vkCmdClearColorImage vkCmdClearColorImage = 0;
+ PFN_vkCmdClearDepthStencilImage vkCmdClearDepthStencilImage = 0;
+# if defined( VK_ENABLE_BETA_EXTENSIONS )
+ PFN_vkCmdControlVideoCodingKHR vkCmdControlVideoCodingKHR = 0;
+# endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ PFN_vkCmdCopyAccelerationStructureKHR vkCmdCopyAccelerationStructureKHR = 0;
+ PFN_vkCmdCopyAccelerationStructureNV vkCmdCopyAccelerationStructureNV = 0;
+ PFN_vkCmdCopyAccelerationStructureToMemoryKHR vkCmdCopyAccelerationStructureToMemoryKHR = 0;
+ PFN_vkCmdCopyBuffer vkCmdCopyBuffer = 0;
+ PFN_vkCmdCopyBuffer2KHR vkCmdCopyBuffer2KHR = 0;
+ PFN_vkCmdCopyBufferToImage vkCmdCopyBufferToImage = 0;
+ PFN_vkCmdCopyBufferToImage2KHR vkCmdCopyBufferToImage2KHR = 0;
+ PFN_vkCmdCopyImage vkCmdCopyImage = 0;
+ PFN_vkCmdCopyImage2KHR vkCmdCopyImage2KHR = 0;
+ PFN_vkCmdCopyImageToBuffer vkCmdCopyImageToBuffer = 0;
+ PFN_vkCmdCopyImageToBuffer2KHR vkCmdCopyImageToBuffer2KHR = 0;
+ PFN_vkCmdCopyMemoryToAccelerationStructureKHR vkCmdCopyMemoryToAccelerationStructureKHR = 0;
+ PFN_vkCmdCopyQueryPoolResults vkCmdCopyQueryPoolResults = 0;
+ PFN_vkCmdCuLaunchKernelNVX vkCmdCuLaunchKernelNVX = 0;
+ PFN_vkCmdDebugMarkerBeginEXT vkCmdDebugMarkerBeginEXT = 0;
+ PFN_vkCmdDebugMarkerEndEXT vkCmdDebugMarkerEndEXT = 0;
+ PFN_vkCmdDebugMarkerInsertEXT vkCmdDebugMarkerInsertEXT = 0;
+# if defined( VK_ENABLE_BETA_EXTENSIONS )
+ PFN_vkCmdDecodeVideoKHR vkCmdDecodeVideoKHR = 0;
+# endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ PFN_vkCmdDispatch vkCmdDispatch = 0;
+ PFN_vkCmdDispatchBase vkCmdDispatchBase = 0;
+ PFN_vkCmdDispatchBaseKHR vkCmdDispatchBaseKHR = 0;
+ PFN_vkCmdDispatchIndirect vkCmdDispatchIndirect = 0;
+ PFN_vkCmdDraw vkCmdDraw = 0;
+ PFN_vkCmdDrawIndexed vkCmdDrawIndexed = 0;
+ PFN_vkCmdDrawIndexedIndirect vkCmdDrawIndexedIndirect = 0;
+ PFN_vkCmdDrawIndexedIndirectCount vkCmdDrawIndexedIndirectCount = 0;
+ PFN_vkCmdDrawIndexedIndirectCountAMD vkCmdDrawIndexedIndirectCountAMD = 0;
+ PFN_vkCmdDrawIndexedIndirectCountKHR vkCmdDrawIndexedIndirectCountKHR = 0;
+ PFN_vkCmdDrawIndirect vkCmdDrawIndirect = 0;
+ PFN_vkCmdDrawIndirectByteCountEXT vkCmdDrawIndirectByteCountEXT = 0;
+ PFN_vkCmdDrawIndirectCount vkCmdDrawIndirectCount = 0;
+ PFN_vkCmdDrawIndirectCountAMD vkCmdDrawIndirectCountAMD = 0;
+ PFN_vkCmdDrawIndirectCountKHR vkCmdDrawIndirectCountKHR = 0;
+ PFN_vkCmdDrawMeshTasksIndirectCountNV vkCmdDrawMeshTasksIndirectCountNV = 0;
+ PFN_vkCmdDrawMeshTasksIndirectNV vkCmdDrawMeshTasksIndirectNV = 0;
+ PFN_vkCmdDrawMeshTasksNV vkCmdDrawMeshTasksNV = 0;
+ PFN_vkCmdDrawMultiEXT vkCmdDrawMultiEXT = 0;
+ PFN_vkCmdDrawMultiIndexedEXT vkCmdDrawMultiIndexedEXT = 0;
+# if defined( VK_ENABLE_BETA_EXTENSIONS )
+ PFN_vkCmdEncodeVideoKHR vkCmdEncodeVideoKHR = 0;
+# endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ PFN_vkCmdEndConditionalRenderingEXT vkCmdEndConditionalRenderingEXT = 0;
+ PFN_vkCmdEndDebugUtilsLabelEXT vkCmdEndDebugUtilsLabelEXT = 0;
+ PFN_vkCmdEndQuery vkCmdEndQuery = 0;
+ PFN_vkCmdEndQueryIndexedEXT vkCmdEndQueryIndexedEXT = 0;
+ PFN_vkCmdEndRenderPass vkCmdEndRenderPass = 0;
+ PFN_vkCmdEndRenderPass2 vkCmdEndRenderPass2 = 0;
+ PFN_vkCmdEndRenderPass2KHR vkCmdEndRenderPass2KHR = 0;
+ PFN_vkCmdEndTransformFeedbackEXT vkCmdEndTransformFeedbackEXT = 0;
+# if defined( VK_ENABLE_BETA_EXTENSIONS )
+ PFN_vkCmdEndVideoCodingKHR vkCmdEndVideoCodingKHR = 0;
+# endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ PFN_vkCmdExecuteCommands vkCmdExecuteCommands = 0;
+ PFN_vkCmdExecuteGeneratedCommandsNV vkCmdExecuteGeneratedCommandsNV = 0;
+ PFN_vkCmdFillBuffer vkCmdFillBuffer = 0;
+ PFN_vkCmdInsertDebugUtilsLabelEXT vkCmdInsertDebugUtilsLabelEXT = 0;
+ PFN_vkCmdNextSubpass vkCmdNextSubpass = 0;
+ PFN_vkCmdNextSubpass2 vkCmdNextSubpass2 = 0;
+ PFN_vkCmdNextSubpass2KHR vkCmdNextSubpass2KHR = 0;
+ PFN_vkCmdPipelineBarrier vkCmdPipelineBarrier = 0;
+ PFN_vkCmdPipelineBarrier2KHR vkCmdPipelineBarrier2KHR = 0;
+ PFN_vkCmdPreprocessGeneratedCommandsNV vkCmdPreprocessGeneratedCommandsNV = 0;
+ PFN_vkCmdPushConstants vkCmdPushConstants = 0;
+ PFN_vkCmdPushDescriptorSetKHR vkCmdPushDescriptorSetKHR = 0;
+ PFN_vkCmdPushDescriptorSetWithTemplateKHR vkCmdPushDescriptorSetWithTemplateKHR = 0;
+ PFN_vkCmdResetEvent vkCmdResetEvent = 0;
+ PFN_vkCmdResetEvent2KHR vkCmdResetEvent2KHR = 0;
+ PFN_vkCmdResetQueryPool vkCmdResetQueryPool = 0;
+ PFN_vkCmdResolveImage vkCmdResolveImage = 0;
+ PFN_vkCmdResolveImage2KHR vkCmdResolveImage2KHR = 0;
+ PFN_vkCmdSetBlendConstants vkCmdSetBlendConstants = 0;
+ PFN_vkCmdSetCheckpointNV vkCmdSetCheckpointNV = 0;
+ PFN_vkCmdSetCoarseSampleOrderNV vkCmdSetCoarseSampleOrderNV = 0;
+ PFN_vkCmdSetColorWriteEnableEXT vkCmdSetColorWriteEnableEXT = 0;
+ PFN_vkCmdSetCullModeEXT vkCmdSetCullModeEXT = 0;
+ PFN_vkCmdSetDepthBias vkCmdSetDepthBias = 0;
+ PFN_vkCmdSetDepthBiasEnableEXT vkCmdSetDepthBiasEnableEXT = 0;
+ PFN_vkCmdSetDepthBounds vkCmdSetDepthBounds = 0;
+ PFN_vkCmdSetDepthBoundsTestEnableEXT vkCmdSetDepthBoundsTestEnableEXT = 0;
+ PFN_vkCmdSetDepthCompareOpEXT vkCmdSetDepthCompareOpEXT = 0;
+ PFN_vkCmdSetDepthTestEnableEXT vkCmdSetDepthTestEnableEXT = 0;
+ PFN_vkCmdSetDepthWriteEnableEXT vkCmdSetDepthWriteEnableEXT = 0;
+ PFN_vkCmdSetDeviceMask vkCmdSetDeviceMask = 0;
+ PFN_vkCmdSetDeviceMaskKHR vkCmdSetDeviceMaskKHR = 0;
+ PFN_vkCmdSetDiscardRectangleEXT vkCmdSetDiscardRectangleEXT = 0;
+ PFN_vkCmdSetEvent vkCmdSetEvent = 0;
+ PFN_vkCmdSetEvent2KHR vkCmdSetEvent2KHR = 0;
+ PFN_vkCmdSetExclusiveScissorNV vkCmdSetExclusiveScissorNV = 0;
+ PFN_vkCmdSetFragmentShadingRateEnumNV vkCmdSetFragmentShadingRateEnumNV = 0;
+ PFN_vkCmdSetFragmentShadingRateKHR vkCmdSetFragmentShadingRateKHR = 0;
+ PFN_vkCmdSetFrontFaceEXT vkCmdSetFrontFaceEXT = 0;
+ PFN_vkCmdSetLineStippleEXT vkCmdSetLineStippleEXT = 0;
+ PFN_vkCmdSetLineWidth vkCmdSetLineWidth = 0;
+ PFN_vkCmdSetLogicOpEXT vkCmdSetLogicOpEXT = 0;
+ PFN_vkCmdSetPatchControlPointsEXT vkCmdSetPatchControlPointsEXT = 0;
+ PFN_vkCmdSetPerformanceMarkerINTEL vkCmdSetPerformanceMarkerINTEL = 0;
+ PFN_vkCmdSetPerformanceOverrideINTEL vkCmdSetPerformanceOverrideINTEL = 0;
+ PFN_vkCmdSetPerformanceStreamMarkerINTEL vkCmdSetPerformanceStreamMarkerINTEL = 0;
+ PFN_vkCmdSetPrimitiveRestartEnableEXT vkCmdSetPrimitiveRestartEnableEXT = 0;
+ PFN_vkCmdSetPrimitiveTopologyEXT vkCmdSetPrimitiveTopologyEXT = 0;
+ PFN_vkCmdSetRasterizerDiscardEnableEXT vkCmdSetRasterizerDiscardEnableEXT = 0;
+ PFN_vkCmdSetRayTracingPipelineStackSizeKHR vkCmdSetRayTracingPipelineStackSizeKHR = 0;
+ PFN_vkCmdSetSampleLocationsEXT vkCmdSetSampleLocationsEXT = 0;
+ PFN_vkCmdSetScissor vkCmdSetScissor = 0;
+ PFN_vkCmdSetScissorWithCountEXT vkCmdSetScissorWithCountEXT = 0;
+ PFN_vkCmdSetStencilCompareMask vkCmdSetStencilCompareMask = 0;
+ PFN_vkCmdSetStencilOpEXT vkCmdSetStencilOpEXT = 0;
+ PFN_vkCmdSetStencilReference vkCmdSetStencilReference = 0;
+ PFN_vkCmdSetStencilTestEnableEXT vkCmdSetStencilTestEnableEXT = 0;
+ PFN_vkCmdSetStencilWriteMask vkCmdSetStencilWriteMask = 0;
+ PFN_vkCmdSetVertexInputEXT vkCmdSetVertexInputEXT = 0;
+ PFN_vkCmdSetViewport vkCmdSetViewport = 0;
+ PFN_vkCmdSetViewportShadingRatePaletteNV vkCmdSetViewportShadingRatePaletteNV = 0;
+ PFN_vkCmdSetViewportWScalingNV vkCmdSetViewportWScalingNV = 0;
+ PFN_vkCmdSetViewportWithCountEXT vkCmdSetViewportWithCountEXT = 0;
+ PFN_vkCmdSubpassShadingHUAWEI vkCmdSubpassShadingHUAWEI = 0;
+ PFN_vkCmdTraceRaysIndirectKHR vkCmdTraceRaysIndirectKHR = 0;
+ PFN_vkCmdTraceRaysKHR vkCmdTraceRaysKHR = 0;
+ PFN_vkCmdTraceRaysNV vkCmdTraceRaysNV = 0;
+ PFN_vkCmdUpdateBuffer vkCmdUpdateBuffer = 0;
+ PFN_vkCmdWaitEvents vkCmdWaitEvents = 0;
+ PFN_vkCmdWaitEvents2KHR vkCmdWaitEvents2KHR = 0;
+ PFN_vkCmdWriteAccelerationStructuresPropertiesKHR vkCmdWriteAccelerationStructuresPropertiesKHR = 0;
+ PFN_vkCmdWriteAccelerationStructuresPropertiesNV vkCmdWriteAccelerationStructuresPropertiesNV = 0;
+ PFN_vkCmdWriteBufferMarker2AMD vkCmdWriteBufferMarker2AMD = 0;
+ PFN_vkCmdWriteBufferMarkerAMD vkCmdWriteBufferMarkerAMD = 0;
+ PFN_vkCmdWriteTimestamp vkCmdWriteTimestamp = 0;
+ PFN_vkCmdWriteTimestamp2KHR vkCmdWriteTimestamp2KHR = 0;
+ PFN_vkCompileDeferredNV vkCompileDeferredNV = 0;
+ PFN_vkCopyAccelerationStructureKHR vkCopyAccelerationStructureKHR = 0;
+ PFN_vkCopyAccelerationStructureToMemoryKHR vkCopyAccelerationStructureToMemoryKHR = 0;
+ PFN_vkCopyMemoryToAccelerationStructureKHR vkCopyMemoryToAccelerationStructureKHR = 0;
+ PFN_vkCreateAccelerationStructureKHR vkCreateAccelerationStructureKHR = 0;
+ PFN_vkCreateAccelerationStructureNV vkCreateAccelerationStructureNV = 0;
+ PFN_vkCreateBuffer vkCreateBuffer = 0;
+ PFN_vkCreateBufferView vkCreateBufferView = 0;
+ PFN_vkCreateCommandPool vkCreateCommandPool = 0;
+ PFN_vkCreateComputePipelines vkCreateComputePipelines = 0;
+ PFN_vkCreateCuFunctionNVX vkCreateCuFunctionNVX = 0;
+ PFN_vkCreateCuModuleNVX vkCreateCuModuleNVX = 0;
+ PFN_vkCreateDeferredOperationKHR vkCreateDeferredOperationKHR = 0;
+ PFN_vkCreateDescriptorPool vkCreateDescriptorPool = 0;
+ PFN_vkCreateDescriptorSetLayout vkCreateDescriptorSetLayout = 0;
+ PFN_vkCreateDescriptorUpdateTemplate vkCreateDescriptorUpdateTemplate = 0;
+ PFN_vkCreateDescriptorUpdateTemplateKHR vkCreateDescriptorUpdateTemplateKHR = 0;
+ PFN_vkCreateEvent vkCreateEvent = 0;
+ PFN_vkCreateFence vkCreateFence = 0;
+ PFN_vkCreateFramebuffer vkCreateFramebuffer = 0;
+ PFN_vkCreateGraphicsPipelines vkCreateGraphicsPipelines = 0;
+ PFN_vkCreateImage vkCreateImage = 0;
+ PFN_vkCreateImageView vkCreateImageView = 0;
+ PFN_vkCreateIndirectCommandsLayoutNV vkCreateIndirectCommandsLayoutNV = 0;
+ PFN_vkCreatePipelineCache vkCreatePipelineCache = 0;
+ PFN_vkCreatePipelineLayout vkCreatePipelineLayout = 0;
+ PFN_vkCreatePrivateDataSlotEXT vkCreatePrivateDataSlotEXT = 0;
+ PFN_vkCreateQueryPool vkCreateQueryPool = 0;
+ PFN_vkCreateRayTracingPipelinesKHR vkCreateRayTracingPipelinesKHR = 0;
+ PFN_vkCreateRayTracingPipelinesNV vkCreateRayTracingPipelinesNV = 0;
+ PFN_vkCreateRenderPass vkCreateRenderPass = 0;
+ PFN_vkCreateRenderPass2 vkCreateRenderPass2 = 0;
+ PFN_vkCreateRenderPass2KHR vkCreateRenderPass2KHR = 0;
+ PFN_vkCreateSampler vkCreateSampler = 0;
+ PFN_vkCreateSamplerYcbcrConversion vkCreateSamplerYcbcrConversion = 0;
+ PFN_vkCreateSamplerYcbcrConversionKHR vkCreateSamplerYcbcrConversionKHR = 0;
+ PFN_vkCreateSemaphore vkCreateSemaphore = 0;
+ PFN_vkCreateShaderModule vkCreateShaderModule = 0;
+ PFN_vkCreateSharedSwapchainsKHR vkCreateSharedSwapchainsKHR = 0;
+ PFN_vkCreateSwapchainKHR vkCreateSwapchainKHR = 0;
+ PFN_vkCreateValidationCacheEXT vkCreateValidationCacheEXT = 0;
+# if defined( VK_ENABLE_BETA_EXTENSIONS )
+ PFN_vkCreateVideoSessionKHR vkCreateVideoSessionKHR = 0;
+# endif /*VK_ENABLE_BETA_EXTENSIONS*/
+# if defined( VK_ENABLE_BETA_EXTENSIONS )
+ PFN_vkCreateVideoSessionParametersKHR vkCreateVideoSessionParametersKHR = 0;
+# endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ PFN_vkDebugMarkerSetObjectNameEXT vkDebugMarkerSetObjectNameEXT = 0;
+ PFN_vkDebugMarkerSetObjectTagEXT vkDebugMarkerSetObjectTagEXT = 0;
+ PFN_vkDeferredOperationJoinKHR vkDeferredOperationJoinKHR = 0;
+ PFN_vkDestroyAccelerationStructureKHR vkDestroyAccelerationStructureKHR = 0;
+ PFN_vkDestroyAccelerationStructureNV vkDestroyAccelerationStructureNV = 0;
+ PFN_vkDestroyBuffer vkDestroyBuffer = 0;
+ PFN_vkDestroyBufferView vkDestroyBufferView = 0;
+ PFN_vkDestroyCommandPool vkDestroyCommandPool = 0;
+ PFN_vkDestroyCuFunctionNVX vkDestroyCuFunctionNVX = 0;
+ PFN_vkDestroyCuModuleNVX vkDestroyCuModuleNVX = 0;
+ PFN_vkDestroyDeferredOperationKHR vkDestroyDeferredOperationKHR = 0;
+ PFN_vkDestroyDescriptorPool vkDestroyDescriptorPool = 0;
+ PFN_vkDestroyDescriptorSetLayout vkDestroyDescriptorSetLayout = 0;
+ PFN_vkDestroyDescriptorUpdateTemplate vkDestroyDescriptorUpdateTemplate = 0;
+ PFN_vkDestroyDescriptorUpdateTemplateKHR vkDestroyDescriptorUpdateTemplateKHR = 0;
+ PFN_vkDestroyDevice vkDestroyDevice = 0;
+ PFN_vkDestroyEvent vkDestroyEvent = 0;
+ PFN_vkDestroyFence vkDestroyFence = 0;
+ PFN_vkDestroyFramebuffer vkDestroyFramebuffer = 0;
+ PFN_vkDestroyImage vkDestroyImage = 0;
+ PFN_vkDestroyImageView vkDestroyImageView = 0;
+ PFN_vkDestroyIndirectCommandsLayoutNV vkDestroyIndirectCommandsLayoutNV = 0;
+ PFN_vkDestroyPipeline vkDestroyPipeline = 0;
+ PFN_vkDestroyPipelineCache vkDestroyPipelineCache = 0;
+ PFN_vkDestroyPipelineLayout vkDestroyPipelineLayout = 0;
+ PFN_vkDestroyPrivateDataSlotEXT vkDestroyPrivateDataSlotEXT = 0;
+ PFN_vkDestroyQueryPool vkDestroyQueryPool = 0;
+ PFN_vkDestroyRenderPass vkDestroyRenderPass = 0;
+ PFN_vkDestroySampler vkDestroySampler = 0;
+ PFN_vkDestroySamplerYcbcrConversion vkDestroySamplerYcbcrConversion = 0;
+ PFN_vkDestroySamplerYcbcrConversionKHR vkDestroySamplerYcbcrConversionKHR = 0;
+ PFN_vkDestroySemaphore vkDestroySemaphore = 0;
+ PFN_vkDestroyShaderModule vkDestroyShaderModule = 0;
+ PFN_vkDestroySwapchainKHR vkDestroySwapchainKHR = 0;
+ PFN_vkDestroyValidationCacheEXT vkDestroyValidationCacheEXT = 0;
+# if defined( VK_ENABLE_BETA_EXTENSIONS )
+ PFN_vkDestroyVideoSessionKHR vkDestroyVideoSessionKHR = 0;
+# endif /*VK_ENABLE_BETA_EXTENSIONS*/
+# if defined( VK_ENABLE_BETA_EXTENSIONS )
+ PFN_vkDestroyVideoSessionParametersKHR vkDestroyVideoSessionParametersKHR = 0;
+# endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ PFN_vkDeviceWaitIdle vkDeviceWaitIdle = 0;
+ PFN_vkDisplayPowerControlEXT vkDisplayPowerControlEXT = 0;
+ PFN_vkEndCommandBuffer vkEndCommandBuffer = 0;
+ PFN_vkFlushMappedMemoryRanges vkFlushMappedMemoryRanges = 0;
+ PFN_vkFreeCommandBuffers vkFreeCommandBuffers = 0;
+ PFN_vkFreeDescriptorSets vkFreeDescriptorSets = 0;
+ PFN_vkFreeMemory vkFreeMemory = 0;
+ PFN_vkGetAccelerationStructureBuildSizesKHR vkGetAccelerationStructureBuildSizesKHR = 0;
+ PFN_vkGetAccelerationStructureDeviceAddressKHR vkGetAccelerationStructureDeviceAddressKHR = 0;
+ PFN_vkGetAccelerationStructureHandleNV vkGetAccelerationStructureHandleNV = 0;
+ PFN_vkGetAccelerationStructureMemoryRequirementsNV vkGetAccelerationStructureMemoryRequirementsNV = 0;
+# if defined( VK_USE_PLATFORM_ANDROID_KHR )
+ PFN_vkGetAndroidHardwareBufferPropertiesANDROID vkGetAndroidHardwareBufferPropertiesANDROID = 0;
+# endif /*VK_USE_PLATFORM_ANDROID_KHR*/
+ PFN_vkGetBufferDeviceAddress vkGetBufferDeviceAddress = 0;
+ PFN_vkGetBufferDeviceAddressEXT vkGetBufferDeviceAddressEXT = 0;
+ PFN_vkGetBufferDeviceAddressKHR vkGetBufferDeviceAddressKHR = 0;
+ PFN_vkGetBufferMemoryRequirements vkGetBufferMemoryRequirements = 0;
+ PFN_vkGetBufferMemoryRequirements2 vkGetBufferMemoryRequirements2 = 0;
+ PFN_vkGetBufferMemoryRequirements2KHR vkGetBufferMemoryRequirements2KHR = 0;
+ PFN_vkGetBufferOpaqueCaptureAddress vkGetBufferOpaqueCaptureAddress = 0;
+ PFN_vkGetBufferOpaqueCaptureAddressKHR vkGetBufferOpaqueCaptureAddressKHR = 0;
+ PFN_vkGetCalibratedTimestampsEXT vkGetCalibratedTimestampsEXT = 0;
+ PFN_vkGetDeferredOperationMaxConcurrencyKHR vkGetDeferredOperationMaxConcurrencyKHR = 0;
+ PFN_vkGetDeferredOperationResultKHR vkGetDeferredOperationResultKHR = 0;
+ PFN_vkGetDescriptorSetLayoutSupport vkGetDescriptorSetLayoutSupport = 0;
+ PFN_vkGetDescriptorSetLayoutSupportKHR vkGetDescriptorSetLayoutSupportKHR = 0;
+ PFN_vkGetDeviceAccelerationStructureCompatibilityKHR vkGetDeviceAccelerationStructureCompatibilityKHR = 0;
+ PFN_vkGetDeviceGroupPeerMemoryFeatures vkGetDeviceGroupPeerMemoryFeatures = 0;
+ PFN_vkGetDeviceGroupPeerMemoryFeaturesKHR vkGetDeviceGroupPeerMemoryFeaturesKHR = 0;
+ PFN_vkGetDeviceGroupPresentCapabilitiesKHR vkGetDeviceGroupPresentCapabilitiesKHR = 0;
+# if defined( VK_USE_PLATFORM_WIN32_KHR )
+ PFN_vkGetDeviceGroupSurfacePresentModes2EXT vkGetDeviceGroupSurfacePresentModes2EXT = 0;
+# endif /*VK_USE_PLATFORM_WIN32_KHR*/
+ PFN_vkGetDeviceGroupSurfacePresentModesKHR vkGetDeviceGroupSurfacePresentModesKHR = 0;
+ PFN_vkGetDeviceMemoryCommitment vkGetDeviceMemoryCommitment = 0;
+ PFN_vkGetDeviceMemoryOpaqueCaptureAddress vkGetDeviceMemoryOpaqueCaptureAddress = 0;
+ PFN_vkGetDeviceMemoryOpaqueCaptureAddressKHR vkGetDeviceMemoryOpaqueCaptureAddressKHR = 0;
+ PFN_vkGetDeviceProcAddr vkGetDeviceProcAddr = 0;
+ PFN_vkGetDeviceQueue vkGetDeviceQueue = 0;
+ PFN_vkGetDeviceQueue2 vkGetDeviceQueue2 = 0;
+ PFN_vkGetEventStatus vkGetEventStatus = 0;
+ PFN_vkGetFenceFdKHR vkGetFenceFdKHR = 0;
+ PFN_vkGetFenceStatus vkGetFenceStatus = 0;
+# if defined( VK_USE_PLATFORM_WIN32_KHR )
+ PFN_vkGetFenceWin32HandleKHR vkGetFenceWin32HandleKHR = 0;
+# endif /*VK_USE_PLATFORM_WIN32_KHR*/
+ PFN_vkGetGeneratedCommandsMemoryRequirementsNV vkGetGeneratedCommandsMemoryRequirementsNV = 0;
+ PFN_vkGetImageDrmFormatModifierPropertiesEXT vkGetImageDrmFormatModifierPropertiesEXT = 0;
+ PFN_vkGetImageMemoryRequirements vkGetImageMemoryRequirements = 0;
+ PFN_vkGetImageMemoryRequirements2 vkGetImageMemoryRequirements2 = 0;
+ PFN_vkGetImageMemoryRequirements2KHR vkGetImageMemoryRequirements2KHR = 0;
+ PFN_vkGetImageSparseMemoryRequirements vkGetImageSparseMemoryRequirements = 0;
+ PFN_vkGetImageSparseMemoryRequirements2 vkGetImageSparseMemoryRequirements2 = 0;
+ PFN_vkGetImageSparseMemoryRequirements2KHR vkGetImageSparseMemoryRequirements2KHR = 0;
+ PFN_vkGetImageSubresourceLayout vkGetImageSubresourceLayout = 0;
+ PFN_vkGetImageViewAddressNVX vkGetImageViewAddressNVX = 0;
+ PFN_vkGetImageViewHandleNVX vkGetImageViewHandleNVX = 0;
+# if defined( VK_USE_PLATFORM_ANDROID_KHR )
+ PFN_vkGetMemoryAndroidHardwareBufferANDROID vkGetMemoryAndroidHardwareBufferANDROID = 0;
+# endif /*VK_USE_PLATFORM_ANDROID_KHR*/
+ PFN_vkGetMemoryFdKHR vkGetMemoryFdKHR = 0;
+ PFN_vkGetMemoryFdPropertiesKHR vkGetMemoryFdPropertiesKHR = 0;
+ PFN_vkGetMemoryHostPointerPropertiesEXT vkGetMemoryHostPointerPropertiesEXT = 0;
+# if defined( VK_USE_PLATFORM_WIN32_KHR )
+ PFN_vkGetMemoryWin32HandleKHR vkGetMemoryWin32HandleKHR = 0;
+# endif /*VK_USE_PLATFORM_WIN32_KHR*/
+# if defined( VK_USE_PLATFORM_WIN32_KHR )
+ PFN_vkGetMemoryWin32HandleNV vkGetMemoryWin32HandleNV = 0;
+# endif /*VK_USE_PLATFORM_WIN32_KHR*/
+# if defined( VK_USE_PLATFORM_WIN32_KHR )
+ PFN_vkGetMemoryWin32HandlePropertiesKHR vkGetMemoryWin32HandlePropertiesKHR = 0;
+# endif /*VK_USE_PLATFORM_WIN32_KHR*/
+# if defined( VK_USE_PLATFORM_FUCHSIA )
+ PFN_vkGetMemoryZirconHandleFUCHSIA vkGetMemoryZirconHandleFUCHSIA = 0;
+# endif /*VK_USE_PLATFORM_FUCHSIA*/
+# if defined( VK_USE_PLATFORM_FUCHSIA )
+ PFN_vkGetMemoryZirconHandlePropertiesFUCHSIA vkGetMemoryZirconHandlePropertiesFUCHSIA = 0;
+# endif /*VK_USE_PLATFORM_FUCHSIA*/
+ PFN_vkGetPastPresentationTimingGOOGLE vkGetPastPresentationTimingGOOGLE = 0;
+ PFN_vkGetPerformanceParameterINTEL vkGetPerformanceParameterINTEL = 0;
+ PFN_vkGetPipelineCacheData vkGetPipelineCacheData = 0;
+ PFN_vkGetPipelineExecutableInternalRepresentationsKHR vkGetPipelineExecutableInternalRepresentationsKHR = 0;
+ PFN_vkGetPipelineExecutablePropertiesKHR vkGetPipelineExecutablePropertiesKHR = 0;
+ PFN_vkGetPipelineExecutableStatisticsKHR vkGetPipelineExecutableStatisticsKHR = 0;
+ PFN_vkGetPrivateDataEXT vkGetPrivateDataEXT = 0;
+ PFN_vkGetQueryPoolResults vkGetQueryPoolResults = 0;
+ PFN_vkGetQueueCheckpointData2NV vkGetQueueCheckpointData2NV = 0;
+ PFN_vkGetQueueCheckpointDataNV vkGetQueueCheckpointDataNV = 0;
+ PFN_vkGetRayTracingCaptureReplayShaderGroupHandlesKHR vkGetRayTracingCaptureReplayShaderGroupHandlesKHR = 0;
+ PFN_vkGetRayTracingShaderGroupHandlesKHR vkGetRayTracingShaderGroupHandlesKHR = 0;
+ PFN_vkGetRayTracingShaderGroupHandlesNV vkGetRayTracingShaderGroupHandlesNV = 0;
+ PFN_vkGetRayTracingShaderGroupStackSizeKHR vkGetRayTracingShaderGroupStackSizeKHR = 0;
+ PFN_vkGetRefreshCycleDurationGOOGLE vkGetRefreshCycleDurationGOOGLE = 0;
+ PFN_vkGetRenderAreaGranularity vkGetRenderAreaGranularity = 0;
+ PFN_vkGetSemaphoreCounterValue vkGetSemaphoreCounterValue = 0;
+ PFN_vkGetSemaphoreCounterValueKHR vkGetSemaphoreCounterValueKHR = 0;
+ PFN_vkGetSemaphoreFdKHR vkGetSemaphoreFdKHR = 0;
+# if defined( VK_USE_PLATFORM_WIN32_KHR )
+ PFN_vkGetSemaphoreWin32HandleKHR vkGetSemaphoreWin32HandleKHR = 0;
+# endif /*VK_USE_PLATFORM_WIN32_KHR*/
+# if defined( VK_USE_PLATFORM_FUCHSIA )
+ PFN_vkGetSemaphoreZirconHandleFUCHSIA vkGetSemaphoreZirconHandleFUCHSIA = 0;
+# endif /*VK_USE_PLATFORM_FUCHSIA*/
+ PFN_vkGetShaderInfoAMD vkGetShaderInfoAMD = 0;
+ PFN_vkGetSubpassShadingMaxWorkgroupSizeHUAWEI vkGetSubpassShadingMaxWorkgroupSizeHUAWEI = 0;
+ PFN_vkGetSwapchainCounterEXT vkGetSwapchainCounterEXT = 0;
+ PFN_vkGetSwapchainImagesKHR vkGetSwapchainImagesKHR = 0;
+ PFN_vkGetSwapchainStatusKHR vkGetSwapchainStatusKHR = 0;
+ PFN_vkGetValidationCacheDataEXT vkGetValidationCacheDataEXT = 0;
+# if defined( VK_ENABLE_BETA_EXTENSIONS )
+ PFN_vkGetVideoSessionMemoryRequirementsKHR vkGetVideoSessionMemoryRequirementsKHR = 0;
+# endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ PFN_vkImportFenceFdKHR vkImportFenceFdKHR = 0;
+# if defined( VK_USE_PLATFORM_WIN32_KHR )
+ PFN_vkImportFenceWin32HandleKHR vkImportFenceWin32HandleKHR = 0;
+# endif /*VK_USE_PLATFORM_WIN32_KHR*/
+ PFN_vkImportSemaphoreFdKHR vkImportSemaphoreFdKHR = 0;
+# if defined( VK_USE_PLATFORM_WIN32_KHR )
+ PFN_vkImportSemaphoreWin32HandleKHR vkImportSemaphoreWin32HandleKHR = 0;
+# endif /*VK_USE_PLATFORM_WIN32_KHR*/
+# if defined( VK_USE_PLATFORM_FUCHSIA )
+ PFN_vkImportSemaphoreZirconHandleFUCHSIA vkImportSemaphoreZirconHandleFUCHSIA = 0;
+# endif /*VK_USE_PLATFORM_FUCHSIA*/
+ PFN_vkInitializePerformanceApiINTEL vkInitializePerformanceApiINTEL = 0;
+ PFN_vkInvalidateMappedMemoryRanges vkInvalidateMappedMemoryRanges = 0;
+ PFN_vkMapMemory vkMapMemory = 0;
+ PFN_vkMergePipelineCaches vkMergePipelineCaches = 0;
+ PFN_vkMergeValidationCachesEXT vkMergeValidationCachesEXT = 0;
+ PFN_vkQueueBeginDebugUtilsLabelEXT vkQueueBeginDebugUtilsLabelEXT = 0;
+ PFN_vkQueueBindSparse vkQueueBindSparse = 0;
+ PFN_vkQueueEndDebugUtilsLabelEXT vkQueueEndDebugUtilsLabelEXT = 0;
+ PFN_vkQueueInsertDebugUtilsLabelEXT vkQueueInsertDebugUtilsLabelEXT = 0;
+ PFN_vkQueuePresentKHR vkQueuePresentKHR = 0;
+ PFN_vkQueueSetPerformanceConfigurationINTEL vkQueueSetPerformanceConfigurationINTEL = 0;
+ PFN_vkQueueSubmit vkQueueSubmit = 0;
+ PFN_vkQueueSubmit2KHR vkQueueSubmit2KHR = 0;
+ PFN_vkQueueWaitIdle vkQueueWaitIdle = 0;
+ PFN_vkRegisterDeviceEventEXT vkRegisterDeviceEventEXT = 0;
+ PFN_vkRegisterDisplayEventEXT vkRegisterDisplayEventEXT = 0;
+# if defined( VK_USE_PLATFORM_WIN32_KHR )
+ PFN_vkReleaseFullScreenExclusiveModeEXT vkReleaseFullScreenExclusiveModeEXT = 0;
+# endif /*VK_USE_PLATFORM_WIN32_KHR*/
+ PFN_vkReleasePerformanceConfigurationINTEL vkReleasePerformanceConfigurationINTEL = 0;
+ PFN_vkReleaseProfilingLockKHR vkReleaseProfilingLockKHR = 0;
+ PFN_vkResetCommandBuffer vkResetCommandBuffer = 0;
+ PFN_vkResetCommandPool vkResetCommandPool = 0;
+ PFN_vkResetDescriptorPool vkResetDescriptorPool = 0;
+ PFN_vkResetEvent vkResetEvent = 0;
+ PFN_vkResetFences vkResetFences = 0;
+ PFN_vkResetQueryPool vkResetQueryPool = 0;
+ PFN_vkResetQueryPoolEXT vkResetQueryPoolEXT = 0;
+ PFN_vkSetDebugUtilsObjectNameEXT vkSetDebugUtilsObjectNameEXT = 0;
+ PFN_vkSetDebugUtilsObjectTagEXT vkSetDebugUtilsObjectTagEXT = 0;
+ PFN_vkSetEvent vkSetEvent = 0;
+ PFN_vkSetHdrMetadataEXT vkSetHdrMetadataEXT = 0;
+ PFN_vkSetLocalDimmingAMD vkSetLocalDimmingAMD = 0;
+ PFN_vkSetPrivateDataEXT vkSetPrivateDataEXT = 0;
+ PFN_vkSignalSemaphore vkSignalSemaphore = 0;
+ PFN_vkSignalSemaphoreKHR vkSignalSemaphoreKHR = 0;
+ PFN_vkTrimCommandPool vkTrimCommandPool = 0;
+ PFN_vkTrimCommandPoolKHR vkTrimCommandPoolKHR = 0;
+ PFN_vkUninitializePerformanceApiINTEL vkUninitializePerformanceApiINTEL = 0;
+ PFN_vkUnmapMemory vkUnmapMemory = 0;
+ PFN_vkUpdateDescriptorSetWithTemplate vkUpdateDescriptorSetWithTemplate = 0;
+ PFN_vkUpdateDescriptorSetWithTemplateKHR vkUpdateDescriptorSetWithTemplateKHR = 0;
+ PFN_vkUpdateDescriptorSets vkUpdateDescriptorSets = 0;
+# if defined( VK_ENABLE_BETA_EXTENSIONS )
+ PFN_vkUpdateVideoSessionParametersKHR vkUpdateVideoSessionParametersKHR = 0;
+# endif /*VK_ENABLE_BETA_EXTENSIONS*/
+ PFN_vkWaitForFences vkWaitForFences = 0;
+ PFN_vkWaitSemaphores vkWaitSemaphores = 0;
+ PFN_vkWaitSemaphoresKHR vkWaitSemaphoresKHR = 0;
+ PFN_vkWriteAccelerationStructuresPropertiesKHR vkWriteAccelerationStructuresPropertiesKHR = 0;
+ };
+
+ class Context
+ {
+ public:
+ Context() : m_dispatcher( m_dynamicLoader.getProcAddress<PFN_vkGetInstanceProcAddr>( "vkGetInstanceProcAddr" ) )
+ {}
+
+ ~Context() = default;
+
+ Context( Context const & ) = delete;
+ Context( Context && rhs ) VULKAN_HPP_NOEXCEPT
+ : m_dynamicLoader( std::move( rhs.m_dynamicLoader ) )
+ , m_dispatcher( std::move( rhs.m_dispatcher ) )
+ {}
+ Context & operator=( Context const & ) = delete;
+ Context & operator =( Context && rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ if ( this != &rhs )
+ {
+ m_dynamicLoader = std::move( rhs.m_dynamicLoader );
+ m_dispatcher = std::move( rhs.m_dispatcher );
+ }
+ return *this;
+ }
+
+ //=== VK_VERSION_1_0 ===
+
+ VULKAN_HPP_NODISCARD std::vector<VULKAN_HPP_NAMESPACE::ExtensionProperties> enumerateInstanceExtensionProperties(
+ Optional<const std::string> layerName VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT ) const;
+
+ VULKAN_HPP_NODISCARD std::vector<VULKAN_HPP_NAMESPACE::LayerProperties> enumerateInstanceLayerProperties() const;
+
+ //=== VK_VERSION_1_1 ===
+
+ VULKAN_HPP_NODISCARD uint32_t enumerateInstanceVersion() const;
+
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::ContextDispatcher const * getDispatcher() const
+ {
+ return &m_dispatcher;
+ }
+
+ private:
+ VULKAN_HPP_NAMESPACE::DynamicLoader m_dynamicLoader;
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::ContextDispatcher m_dispatcher;
+ };
+
+ class Instance
+ {
+ public:
+ using CType = VkInstance;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eInstance;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eInstance;
+
+ public:
+ Instance( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Context const & context,
+ VULKAN_HPP_NAMESPACE::InstanceCreateInfo const & createInfo,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( context.getDispatcher()->vkGetInstanceProcAddr )
+ {
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ context.getDispatcher()->vkCreateInstance( reinterpret_cast<const VkInstanceCreateInfo *>( &createInfo ),
+ m_allocator,
+ reinterpret_cast<VkInstance *>( &m_instance ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, "vkCreateInstance" );
+ }
+ m_dispatcher.init( static_cast<VkInstance>( m_instance ) );
+ }
+
+ Instance( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Context const & context,
+ VkInstance instance,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_instance( instance )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( context.getDispatcher()->vkGetInstanceProcAddr )
+ {
+ m_dispatcher.init( static_cast<VkInstance>( m_instance ) );
+ }
+
+ ~Instance()
+ {
+ if ( m_instance )
+ {
+ getDispatcher()->vkDestroyInstance( static_cast<VkInstance>( m_instance ), m_allocator );
+ }
+ }
+
+ Instance() = delete;
+ Instance( Instance const & ) = delete;
+ Instance( Instance && rhs ) VULKAN_HPP_NOEXCEPT
+ : m_instance( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_instance, {} ) )
+ , m_allocator( rhs.m_allocator )
+ , m_dispatcher( rhs.m_dispatcher )
+ {}
+ Instance & operator=( Instance const & ) = delete;
+ Instance & operator =( Instance && rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ if ( this != &rhs )
+ {
+ getDispatcher()->vkDestroyInstance( static_cast<VkInstance>( m_instance ), m_allocator );
+ m_instance = VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_instance, {} );
+ m_allocator = rhs.m_allocator;
+ m_dispatcher = rhs.m_dispatcher;
+ }
+ return *this;
+ }
+
+ //=== VK_VERSION_1_0 ===
+
+ VULKAN_HPP_NODISCARD PFN_vkVoidFunction getProcAddr( const std::string & name ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_VERSION_1_1 ===
+
+ VULKAN_HPP_NODISCARD std::vector<VULKAN_HPP_NAMESPACE::PhysicalDeviceGroupProperties>
+ enumeratePhysicalDeviceGroups() const;
+
+ //=== VK_EXT_debug_report ===
+
+ void debugReportMessageEXT( VULKAN_HPP_NAMESPACE::DebugReportFlagsEXT flags,
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT objectType_,
+ uint64_t object,
+ size_t location,
+ int32_t messageCode,
+ const std::string & layerPrefix,
+ const std::string & message ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_KHR_device_group_creation ===
+
+ VULKAN_HPP_NODISCARD std::vector<VULKAN_HPP_NAMESPACE::PhysicalDeviceGroupProperties>
+ enumeratePhysicalDeviceGroupsKHR() const;
+
+ //=== VK_EXT_debug_utils ===
+
+ void
+ submitDebugUtilsMessageEXT( VULKAN_HPP_NAMESPACE::DebugUtilsMessageSeverityFlagBitsEXT messageSeverity,
+ VULKAN_HPP_NAMESPACE::DebugUtilsMessageTypeFlagsEXT messageTypes,
+ const DebugUtilsMessengerCallbackDataEXT & callbackData ) const VULKAN_HPP_NOEXCEPT;
+
+ VULKAN_HPP_NAMESPACE::Instance const & operator*() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_instance;
+ }
+
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::InstanceDispatcher const * getDispatcher() const
+ {
+ return &m_dispatcher;
+ }
+
+ private:
+ VULKAN_HPP_NAMESPACE::Instance m_instance;
+ const VkAllocationCallbacks * m_allocator;
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::InstanceDispatcher m_dispatcher;
+ };
+
+ class PhysicalDevice
+ {
+ public:
+ using CType = VkPhysicalDevice;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::ePhysicalDevice;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::ePhysicalDevice;
+
+ public:
+ PhysicalDevice( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Instance const & instance,
+ VkPhysicalDevice physicalDevice )
+ : m_physicalDevice( physicalDevice ), m_dispatcher( instance.getDispatcher() )
+ {}
+
+ PhysicalDevice( VkPhysicalDevice physicalDevice,
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::InstanceDispatcher const * dispatcher )
+ : m_physicalDevice( physicalDevice ), m_dispatcher( dispatcher )
+ {}
+
+ PhysicalDevice() = delete;
+ PhysicalDevice( PhysicalDevice const & ) = delete;
+ PhysicalDevice( PhysicalDevice && rhs ) VULKAN_HPP_NOEXCEPT
+ : m_physicalDevice( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_physicalDevice, {} ) )
+ , m_dispatcher( rhs.m_dispatcher )
+ {}
+ PhysicalDevice & operator=( PhysicalDevice const & ) = delete;
+ PhysicalDevice & operator =( PhysicalDevice && rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ if ( this != &rhs )
+ {
+ m_physicalDevice = VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_physicalDevice, {} );
+ m_dispatcher = rhs.m_dispatcher;
+ }
+ return *this;
+ }
+
+ //=== VK_VERSION_1_0 ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures getFeatures() const VULKAN_HPP_NOEXCEPT;
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::FormatProperties
+ getFormatProperties( VULKAN_HPP_NAMESPACE::Format format ) const VULKAN_HPP_NOEXCEPT;
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::ImageFormatProperties getImageFormatProperties(
+ VULKAN_HPP_NAMESPACE::Format format,
+ VULKAN_HPP_NAMESPACE::ImageType type,
+ VULKAN_HPP_NAMESPACE::ImageTiling tiling,
+ VULKAN_HPP_NAMESPACE::ImageUsageFlags usage,
+ VULKAN_HPP_NAMESPACE::ImageCreateFlags flags VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT ) const;
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties getProperties() const VULKAN_HPP_NOEXCEPT;
+
+ VULKAN_HPP_NODISCARD std::vector<VULKAN_HPP_NAMESPACE::QueueFamilyProperties>
+ getQueueFamilyProperties() const VULKAN_HPP_NOEXCEPT;
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties
+ getMemoryProperties() const VULKAN_HPP_NOEXCEPT;
+
+ VULKAN_HPP_NODISCARD std::vector<VULKAN_HPP_NAMESPACE::ExtensionProperties> enumerateDeviceExtensionProperties(
+ Optional<const std::string> layerName VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT ) const;
+
+ VULKAN_HPP_NODISCARD std::vector<VULKAN_HPP_NAMESPACE::LayerProperties> enumerateDeviceLayerProperties() const;
+
+ VULKAN_HPP_NODISCARD std::vector<VULKAN_HPP_NAMESPACE::SparseImageFormatProperties>
+ getSparseImageFormatProperties( VULKAN_HPP_NAMESPACE::Format format,
+ VULKAN_HPP_NAMESPACE::ImageType type,
+ VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples,
+ VULKAN_HPP_NAMESPACE::ImageUsageFlags usage,
+ VULKAN_HPP_NAMESPACE::ImageTiling tiling ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_VERSION_1_1 ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures2 getFeatures2() const VULKAN_HPP_NOEXCEPT;
+
+ template <typename X, typename Y, typename... Z>
+ VULKAN_HPP_NODISCARD StructureChain<X, Y, Z...> getFeatures2() const VULKAN_HPP_NOEXCEPT;
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties2 getProperties2() const VULKAN_HPP_NOEXCEPT;
+
+ template <typename X, typename Y, typename... Z>
+ VULKAN_HPP_NODISCARD StructureChain<X, Y, Z...> getProperties2() const VULKAN_HPP_NOEXCEPT;
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::FormatProperties2
+ getFormatProperties2( VULKAN_HPP_NAMESPACE::Format format ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename X, typename Y, typename... Z>
+ VULKAN_HPP_NODISCARD StructureChain<X, Y, Z...>
+ getFormatProperties2( VULKAN_HPP_NAMESPACE::Format format ) const VULKAN_HPP_NOEXCEPT;
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::ImageFormatProperties2
+ getImageFormatProperties2( const PhysicalDeviceImageFormatInfo2 & imageFormatInfo ) const;
+
+ template <typename X, typename Y, typename... Z>
+ VULKAN_HPP_NODISCARD StructureChain<X, Y, Z...>
+ getImageFormatProperties2( const PhysicalDeviceImageFormatInfo2 & imageFormatInfo ) const;
+
+ VULKAN_HPP_NODISCARD std::vector<VULKAN_HPP_NAMESPACE::QueueFamilyProperties2>
+ getQueueFamilyProperties2() const VULKAN_HPP_NOEXCEPT;
+
+ template <typename StructureChain>
+ VULKAN_HPP_NODISCARD std::vector<StructureChain> getQueueFamilyProperties2() const;
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties2
+ getMemoryProperties2() const VULKAN_HPP_NOEXCEPT;
+
+ template <typename X, typename Y, typename... Z>
+ VULKAN_HPP_NODISCARD StructureChain<X, Y, Z...> getMemoryProperties2() const VULKAN_HPP_NOEXCEPT;
+
+ VULKAN_HPP_NODISCARD std::vector<VULKAN_HPP_NAMESPACE::SparseImageFormatProperties2>
+ getSparseImageFormatProperties2( const PhysicalDeviceSparseImageFormatInfo2 & formatInfo ) const
+ VULKAN_HPP_NOEXCEPT;
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::ExternalBufferProperties getExternalBufferProperties(
+ const PhysicalDeviceExternalBufferInfo & externalBufferInfo ) const VULKAN_HPP_NOEXCEPT;
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::ExternalFenceProperties getExternalFenceProperties(
+ const PhysicalDeviceExternalFenceInfo & externalFenceInfo ) const VULKAN_HPP_NOEXCEPT;
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::ExternalSemaphoreProperties getExternalSemaphoreProperties(
+ const PhysicalDeviceExternalSemaphoreInfo & externalSemaphoreInfo ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_KHR_surface ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::Bool32
+ getSurfaceSupportKHR( uint32_t queueFamilyIndex, VULKAN_HPP_NAMESPACE::SurfaceKHR surface ) const;
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::SurfaceCapabilitiesKHR
+ getSurfaceCapabilitiesKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface ) const;
+
+ VULKAN_HPP_NODISCARD std::vector<VULKAN_HPP_NAMESPACE::SurfaceFormatKHR>
+ getSurfaceFormatsKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface ) const;
+
+ VULKAN_HPP_NODISCARD std::vector<VULKAN_HPP_NAMESPACE::PresentModeKHR>
+ getSurfacePresentModesKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface ) const;
+
+ //=== VK_KHR_swapchain ===
+
+ VULKAN_HPP_NODISCARD std::vector<VULKAN_HPP_NAMESPACE::Rect2D>
+ getPresentRectanglesKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface ) const;
+
+ //=== VK_KHR_display ===
+
+ VULKAN_HPP_NODISCARD std::vector<VULKAN_HPP_NAMESPACE::DisplayPropertiesKHR> getDisplayPropertiesKHR() const;
+
+ VULKAN_HPP_NODISCARD std::vector<VULKAN_HPP_NAMESPACE::DisplayPlanePropertiesKHR>
+ getDisplayPlanePropertiesKHR() const;
+
+# if defined( VK_USE_PLATFORM_XLIB_KHR )
+ //=== VK_KHR_xlib_surface ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::Bool32 getXlibPresentationSupportKHR(
+ uint32_t queueFamilyIndex, Display & dpy, VisualID visualID ) const VULKAN_HPP_NOEXCEPT;
+# endif /*VK_USE_PLATFORM_XLIB_KHR*/
+
+# if defined( VK_USE_PLATFORM_XCB_KHR )
+ //=== VK_KHR_xcb_surface ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::Bool32 getXcbPresentationSupportKHR(
+ uint32_t queueFamilyIndex, xcb_connection_t & connection, xcb_visualid_t visual_id ) const VULKAN_HPP_NOEXCEPT;
+# endif /*VK_USE_PLATFORM_XCB_KHR*/
+
+# if defined( VK_USE_PLATFORM_WAYLAND_KHR )
+ //=== VK_KHR_wayland_surface ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::Bool32
+ getWaylandPresentationSupportKHR( uint32_t queueFamilyIndex,
+ struct wl_display & display ) const VULKAN_HPP_NOEXCEPT;
+# endif /*VK_USE_PLATFORM_WAYLAND_KHR*/
+
+# if defined( VK_USE_PLATFORM_WIN32_KHR )
+ //=== VK_KHR_win32_surface ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::Bool32
+ getWin32PresentationSupportKHR( uint32_t queueFamilyIndex ) const VULKAN_HPP_NOEXCEPT;
+# endif /*VK_USE_PLATFORM_WIN32_KHR*/
+
+# if defined( VK_ENABLE_BETA_EXTENSIONS )
+ //=== VK_KHR_video_queue ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::VideoCapabilitiesKHR
+ getVideoCapabilitiesKHR( const VideoProfileKHR & videoProfile ) const;
+
+ template <typename X, typename Y, typename... Z>
+ VULKAN_HPP_NODISCARD StructureChain<X, Y, Z...>
+ getVideoCapabilitiesKHR( const VideoProfileKHR & videoProfile ) const;
+
+ VULKAN_HPP_NODISCARD std::vector<VULKAN_HPP_NAMESPACE::VideoFormatPropertiesKHR>
+ getVideoFormatPropertiesKHR( const PhysicalDeviceVideoFormatInfoKHR & videoFormatInfo ) const;
+# endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+ //=== VK_NV_external_memory_capabilities ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::ExternalImageFormatPropertiesNV getExternalImageFormatPropertiesNV(
+ VULKAN_HPP_NAMESPACE::Format format,
+ VULKAN_HPP_NAMESPACE::ImageType type,
+ VULKAN_HPP_NAMESPACE::ImageTiling tiling,
+ VULKAN_HPP_NAMESPACE::ImageUsageFlags usage,
+ VULKAN_HPP_NAMESPACE::ImageCreateFlags flags VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT,
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV externalHandleType
+ VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT ) const;
+
+ //=== VK_KHR_get_physical_device_properties2 ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures2 getFeatures2KHR() const VULKAN_HPP_NOEXCEPT;
+
+ template <typename X, typename Y, typename... Z>
+ VULKAN_HPP_NODISCARD StructureChain<X, Y, Z...> getFeatures2KHR() const VULKAN_HPP_NOEXCEPT;
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties2
+ getProperties2KHR() const VULKAN_HPP_NOEXCEPT;
+
+ template <typename X, typename Y, typename... Z>
+ VULKAN_HPP_NODISCARD StructureChain<X, Y, Z...> getProperties2KHR() const VULKAN_HPP_NOEXCEPT;
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::FormatProperties2
+ getFormatProperties2KHR( VULKAN_HPP_NAMESPACE::Format format ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename X, typename Y, typename... Z>
+ VULKAN_HPP_NODISCARD StructureChain<X, Y, Z...>
+ getFormatProperties2KHR( VULKAN_HPP_NAMESPACE::Format format ) const VULKAN_HPP_NOEXCEPT;
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::ImageFormatProperties2
+ getImageFormatProperties2KHR( const PhysicalDeviceImageFormatInfo2 & imageFormatInfo ) const;
+
+ template <typename X, typename Y, typename... Z>
+ VULKAN_HPP_NODISCARD StructureChain<X, Y, Z...>
+ getImageFormatProperties2KHR( const PhysicalDeviceImageFormatInfo2 & imageFormatInfo ) const;
+
+ VULKAN_HPP_NODISCARD std::vector<VULKAN_HPP_NAMESPACE::QueueFamilyProperties2>
+ getQueueFamilyProperties2KHR() const VULKAN_HPP_NOEXCEPT;
+
+ template <typename StructureChain>
+ VULKAN_HPP_NODISCARD std::vector<StructureChain> getQueueFamilyProperties2KHR() const;
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties2
+ getMemoryProperties2KHR() const VULKAN_HPP_NOEXCEPT;
+
+ template <typename X, typename Y, typename... Z>
+ VULKAN_HPP_NODISCARD StructureChain<X, Y, Z...> getMemoryProperties2KHR() const VULKAN_HPP_NOEXCEPT;
+
+ VULKAN_HPP_NODISCARD std::vector<VULKAN_HPP_NAMESPACE::SparseImageFormatProperties2>
+ getSparseImageFormatProperties2KHR( const PhysicalDeviceSparseImageFormatInfo2 & formatInfo ) const
+ VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_KHR_external_memory_capabilities ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::ExternalBufferProperties getExternalBufferPropertiesKHR(
+ const PhysicalDeviceExternalBufferInfo & externalBufferInfo ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_KHR_external_semaphore_capabilities ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::ExternalSemaphoreProperties getExternalSemaphorePropertiesKHR(
+ const PhysicalDeviceExternalSemaphoreInfo & externalSemaphoreInfo ) const VULKAN_HPP_NOEXCEPT;
+
+# if defined( VK_USE_PLATFORM_XLIB_XRANDR_EXT )
+ //=== VK_EXT_acquire_xlib_display ===
+
+ void acquireXlibDisplayEXT( Display & dpy, VULKAN_HPP_NAMESPACE::DisplayKHR display ) const;
+# endif /*VK_USE_PLATFORM_XLIB_XRANDR_EXT*/
+
+ //=== VK_EXT_display_surface_counter ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::SurfaceCapabilities2EXT
+ getSurfaceCapabilities2EXT( VULKAN_HPP_NAMESPACE::SurfaceKHR surface ) const;
+
+ //=== VK_KHR_external_fence_capabilities ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::ExternalFenceProperties getExternalFencePropertiesKHR(
+ const PhysicalDeviceExternalFenceInfo & externalFenceInfo ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_KHR_performance_query ===
+
+ VULKAN_HPP_NODISCARD std::pair<std::vector<PerformanceCounterKHR>, std::vector<PerformanceCounterDescriptionKHR>>
+ enumerateQueueFamilyPerformanceQueryCountersKHR( uint32_t queueFamilyIndex ) const;
+
+ VULKAN_HPP_NODISCARD uint32_t getQueueFamilyPerformanceQueryPassesKHR(
+ const QueryPoolPerformanceCreateInfoKHR & performanceQueryCreateInfo ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_KHR_get_surface_capabilities2 ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::SurfaceCapabilities2KHR
+ getSurfaceCapabilities2KHR( const PhysicalDeviceSurfaceInfo2KHR & surfaceInfo ) const;
+
+ template <typename X, typename Y, typename... Z>
+ VULKAN_HPP_NODISCARD StructureChain<X, Y, Z...>
+ getSurfaceCapabilities2KHR( const PhysicalDeviceSurfaceInfo2KHR & surfaceInfo ) const;
+
+ VULKAN_HPP_NODISCARD std::vector<VULKAN_HPP_NAMESPACE::SurfaceFormat2KHR>
+ getSurfaceFormats2KHR( const PhysicalDeviceSurfaceInfo2KHR & surfaceInfo ) const;
+
+ //=== VK_KHR_get_display_properties2 ===
+
+ VULKAN_HPP_NODISCARD std::vector<VULKAN_HPP_NAMESPACE::DisplayProperties2KHR> getDisplayProperties2KHR() const;
+
+ VULKAN_HPP_NODISCARD std::vector<VULKAN_HPP_NAMESPACE::DisplayPlaneProperties2KHR>
+ getDisplayPlaneProperties2KHR() const;
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::DisplayPlaneCapabilities2KHR
+ getDisplayPlaneCapabilities2KHR( const DisplayPlaneInfo2KHR & displayPlaneInfo ) const;
+
+ //=== VK_EXT_sample_locations ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::MultisamplePropertiesEXT
+ getMultisamplePropertiesEXT( VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_EXT_calibrated_timestamps ===
+
+ VULKAN_HPP_NODISCARD std::vector<VULKAN_HPP_NAMESPACE::TimeDomainEXT> getCalibrateableTimeDomainsEXT() const;
+
+ //=== VK_KHR_fragment_shading_rate ===
+
+ VULKAN_HPP_NODISCARD std::vector<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentShadingRateKHR>
+ getFragmentShadingRatesKHR() const;
+
+ //=== VK_EXT_tooling_info ===
+
+ VULKAN_HPP_NODISCARD std::vector<VULKAN_HPP_NAMESPACE::PhysicalDeviceToolPropertiesEXT>
+ getToolPropertiesEXT() const;
+
+ //=== VK_NV_cooperative_matrix ===
+
+ VULKAN_HPP_NODISCARD std::vector<VULKAN_HPP_NAMESPACE::CooperativeMatrixPropertiesNV>
+ getCooperativeMatrixPropertiesNV() const;
+
+ //=== VK_NV_coverage_reduction_mode ===
+
+ VULKAN_HPP_NODISCARD std::vector<VULKAN_HPP_NAMESPACE::FramebufferMixedSamplesCombinationNV>
+ getSupportedFramebufferMixedSamplesCombinationsNV() const;
+
+# if defined( VK_USE_PLATFORM_WIN32_KHR )
+ //=== VK_EXT_full_screen_exclusive ===
+
+ VULKAN_HPP_NODISCARD std::vector<VULKAN_HPP_NAMESPACE::PresentModeKHR>
+ getSurfacePresentModes2EXT( const PhysicalDeviceSurfaceInfo2KHR & surfaceInfo ) const;
+# endif /*VK_USE_PLATFORM_WIN32_KHR*/
+
+ //=== VK_EXT_acquire_drm_display ===
+
+ void acquireDrmDisplayEXT( int32_t drmFd, VULKAN_HPP_NAMESPACE::DisplayKHR display ) const;
+
+# if defined( VK_USE_PLATFORM_DIRECTFB_EXT )
+ //=== VK_EXT_directfb_surface ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::Bool32
+ getDirectFBPresentationSupportEXT( uint32_t queueFamilyIndex, IDirectFB & dfb ) const VULKAN_HPP_NOEXCEPT;
+# endif /*VK_USE_PLATFORM_DIRECTFB_EXT*/
+
+# if defined( VK_USE_PLATFORM_SCREEN_QNX )
+ //=== VK_QNX_screen_surface ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::Bool32
+ getScreenPresentationSupportQNX( uint32_t queueFamilyIndex,
+ struct _screen_window & window ) const VULKAN_HPP_NOEXCEPT;
+# endif /*VK_USE_PLATFORM_SCREEN_QNX*/
+
+ VULKAN_HPP_NAMESPACE::PhysicalDevice const & operator*() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_physicalDevice;
+ }
+
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::InstanceDispatcher const * getDispatcher() const
+ {
+ return m_dispatcher;
+ }
+
+ private:
+ VULKAN_HPP_NAMESPACE::PhysicalDevice m_physicalDevice;
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::InstanceDispatcher const * m_dispatcher;
+ };
+
+ class PhysicalDevices : public std::vector<VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::PhysicalDevice>
+ {
+ public:
+ PhysicalDevices( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Instance const & instance )
+ {
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::InstanceDispatcher const * dispatcher =
+ instance.getDispatcher();
+ std::vector<VkPhysicalDevice> physicalDevices;
+ uint32_t physicalDeviceCount;
+ VULKAN_HPP_NAMESPACE::Result result;
+ do
+ {
+ result = static_cast<VULKAN_HPP_NAMESPACE::Result>( dispatcher->vkEnumeratePhysicalDevices(
+ static_cast<VkInstance>( *instance ), &physicalDeviceCount, nullptr ) );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && physicalDeviceCount )
+ {
+ physicalDevices.resize( physicalDeviceCount );
+ result = static_cast<VULKAN_HPP_NAMESPACE::Result>( dispatcher->vkEnumeratePhysicalDevices(
+ static_cast<VkInstance>( *instance ), &physicalDeviceCount, physicalDevices.data() ) );
+ VULKAN_HPP_ASSERT( physicalDeviceCount <= physicalDevices.size() );
+ }
+ } while ( result == VULKAN_HPP_NAMESPACE::Result::eIncomplete );
+ if ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ this->reserve( physicalDeviceCount );
+ for ( auto const & physicalDevice : physicalDevices )
+ {
+ this->emplace_back( physicalDevice, dispatcher );
+ }
+ }
+ else
+ {
+ throwResultException( result, "vkEnumeratePhysicalDevices" );
+ }
+ }
+
+ PhysicalDevices() = delete;
+ PhysicalDevices( PhysicalDevices const & ) = delete;
+ PhysicalDevices( PhysicalDevices && rhs ) = default;
+ PhysicalDevices & operator=( PhysicalDevices const & ) = delete;
+ PhysicalDevices & operator=( PhysicalDevices && rhs ) = default;
+ };
+
+ class Device
+ {
+ public:
+ using CType = VkDevice;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eDevice;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eDevice;
+
+ public:
+ Device( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::PhysicalDevice const & physicalDevice,
+ VULKAN_HPP_NAMESPACE::DeviceCreateInfo const & createInfo,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( physicalDevice.getDispatcher()->vkGetDeviceProcAddr )
+ {
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ physicalDevice.getDispatcher()->vkCreateDevice( static_cast<VkPhysicalDevice>( *physicalDevice ),
+ reinterpret_cast<const VkDeviceCreateInfo *>( &createInfo ),
+ m_allocator,
+ reinterpret_cast<VkDevice *>( &m_device ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, "vkCreateDevice" );
+ }
+ m_dispatcher.init( static_cast<VkDevice>( m_device ) );
+ }
+
+ Device( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::PhysicalDevice const & physicalDevice,
+ VkDevice device,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_device( device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( physicalDevice.getDispatcher()->vkGetDeviceProcAddr )
+ {
+ m_dispatcher.init( static_cast<VkDevice>( m_device ) );
+ }
+
+ ~Device()
+ {
+ if ( m_device )
+ {
+ getDispatcher()->vkDestroyDevice( static_cast<VkDevice>( m_device ), m_allocator );
+ }
+ }
+
+ Device() = delete;
+ Device( Device const & ) = delete;
+ Device( Device && rhs ) VULKAN_HPP_NOEXCEPT
+ : m_device( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_device, {} ) )
+ , m_allocator( rhs.m_allocator )
+ , m_dispatcher( rhs.m_dispatcher )
+ {}
+ Device & operator=( Device const & ) = delete;
+ Device & operator =( Device && rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ if ( this != &rhs )
+ {
+ getDispatcher()->vkDestroyDevice( static_cast<VkDevice>( m_device ), m_allocator );
+ m_device = VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_device, {} );
+ m_allocator = rhs.m_allocator;
+ m_dispatcher = rhs.m_dispatcher;
+ }
+ return *this;
+ }
+
+ //=== VK_VERSION_1_0 ===
+
+ VULKAN_HPP_NODISCARD PFN_vkVoidFunction getProcAddr( const std::string & name ) const VULKAN_HPP_NOEXCEPT;
+
+ void waitIdle() const;
+
+ void
+ flushMappedMemoryRanges( ArrayProxy<const VULKAN_HPP_NAMESPACE::MappedMemoryRange> const & memoryRanges ) const;
+
+ void invalidateMappedMemoryRanges(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::MappedMemoryRange> const & memoryRanges ) const;
+
+ void resetFences( ArrayProxy<const VULKAN_HPP_NAMESPACE::Fence> const & fences ) const;
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::Result
+ waitForFences( ArrayProxy<const VULKAN_HPP_NAMESPACE::Fence> const & fences,
+ VULKAN_HPP_NAMESPACE::Bool32 waitAll,
+ uint64_t timeout ) const;
+
+ void updateDescriptorSets(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::WriteDescriptorSet> const & descriptorWrites,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::CopyDescriptorSet> const & descriptorCopies ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_VERSION_1_1 ===
+
+ void bindBufferMemory2( ArrayProxy<const VULKAN_HPP_NAMESPACE::BindBufferMemoryInfo> const & bindInfos ) const;
+
+ void bindImageMemory2( ArrayProxy<const VULKAN_HPP_NAMESPACE::BindImageMemoryInfo> const & bindInfos ) const;
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::PeerMemoryFeatureFlags getGroupPeerMemoryFeatures(
+ uint32_t heapIndex, uint32_t localDeviceIndex, uint32_t remoteDeviceIndex ) const VULKAN_HPP_NOEXCEPT;
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::MemoryRequirements2
+ getImageMemoryRequirements2( const ImageMemoryRequirementsInfo2 & info ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename X, typename Y, typename... Z>
+ VULKAN_HPP_NODISCARD StructureChain<X, Y, Z...>
+ getImageMemoryRequirements2( const ImageMemoryRequirementsInfo2 & info ) const VULKAN_HPP_NOEXCEPT;
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::MemoryRequirements2
+ getBufferMemoryRequirements2( const BufferMemoryRequirementsInfo2 & info ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename X, typename Y, typename... Z>
+ VULKAN_HPP_NODISCARD StructureChain<X, Y, Z...>
+ getBufferMemoryRequirements2( const BufferMemoryRequirementsInfo2 & info ) const VULKAN_HPP_NOEXCEPT;
+
+ VULKAN_HPP_NODISCARD std::vector<VULKAN_HPP_NAMESPACE::SparseImageMemoryRequirements2>
+ getImageSparseMemoryRequirements2( const ImageSparseMemoryRequirementsInfo2 & info ) const VULKAN_HPP_NOEXCEPT;
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::DescriptorSetLayoutSupport
+ getDescriptorSetLayoutSupport( const DescriptorSetLayoutCreateInfo & createInfo ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename X, typename Y, typename... Z>
+ VULKAN_HPP_NODISCARD StructureChain<X, Y, Z...>
+ getDescriptorSetLayoutSupport( const DescriptorSetLayoutCreateInfo & createInfo ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_VERSION_1_2 ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::Result waitSemaphores( const SemaphoreWaitInfo & waitInfo,
+ uint64_t timeout ) const;
+
+ void signalSemaphore( const SemaphoreSignalInfo & signalInfo ) const;
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::DeviceAddress
+ getBufferAddress( const BufferDeviceAddressInfo & info ) const VULKAN_HPP_NOEXCEPT;
+
+ VULKAN_HPP_NODISCARD uint64_t
+ getBufferOpaqueCaptureAddress( const BufferDeviceAddressInfo & info ) const VULKAN_HPP_NOEXCEPT;
+
+ VULKAN_HPP_NODISCARD uint64_t
+ getMemoryOpaqueCaptureAddress( const DeviceMemoryOpaqueCaptureAddressInfo & info ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_KHR_swapchain ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::DeviceGroupPresentCapabilitiesKHR
+ getGroupPresentCapabilitiesKHR() const;
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagsKHR
+ getGroupSurfacePresentModesKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface ) const;
+
+ VULKAN_HPP_NODISCARD std::pair<VULKAN_HPP_NAMESPACE::Result, uint32_t>
+ acquireNextImage2KHR( const AcquireNextImageInfoKHR & acquireInfo ) const;
+
+ //=== VK_EXT_debug_marker ===
+
+ void debugMarkerSetObjectTagEXT( const DebugMarkerObjectTagInfoEXT & tagInfo ) const;
+
+ void debugMarkerSetObjectNameEXT( const DebugMarkerObjectNameInfoEXT & nameInfo ) const;
+
+ //=== VK_NVX_image_view_handle ===
+
+ VULKAN_HPP_NODISCARD uint32_t
+ getImageViewHandleNVX( const ImageViewHandleInfoNVX & info ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_KHR_device_group ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::PeerMemoryFeatureFlags getGroupPeerMemoryFeaturesKHR(
+ uint32_t heapIndex, uint32_t localDeviceIndex, uint32_t remoteDeviceIndex ) const VULKAN_HPP_NOEXCEPT;
+
+# if defined( VK_USE_PLATFORM_WIN32_KHR )
+ //=== VK_KHR_external_memory_win32 ===
+
+ VULKAN_HPP_NODISCARD HANDLE
+ getMemoryWin32HandleKHR( const MemoryGetWin32HandleInfoKHR & getWin32HandleInfo ) const;
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::MemoryWin32HandlePropertiesKHR
+ getMemoryWin32HandlePropertiesKHR( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType,
+ HANDLE handle ) const;
+# endif /*VK_USE_PLATFORM_WIN32_KHR*/
+
+ //=== VK_KHR_external_memory_fd ===
+
+ VULKAN_HPP_NODISCARD int getMemoryFdKHR( const MemoryGetFdInfoKHR & getFdInfo ) const;
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::MemoryFdPropertiesKHR
+ getMemoryFdPropertiesKHR( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType, int fd ) const;
+
+# if defined( VK_USE_PLATFORM_WIN32_KHR )
+ //=== VK_KHR_external_semaphore_win32 ===
+
+ void
+ importSemaphoreWin32HandleKHR( const ImportSemaphoreWin32HandleInfoKHR & importSemaphoreWin32HandleInfo ) const;
+
+ VULKAN_HPP_NODISCARD HANDLE
+ getSemaphoreWin32HandleKHR( const SemaphoreGetWin32HandleInfoKHR & getWin32HandleInfo ) const;
+# endif /*VK_USE_PLATFORM_WIN32_KHR*/
+
+ //=== VK_KHR_external_semaphore_fd ===
+
+ void importSemaphoreFdKHR( const ImportSemaphoreFdInfoKHR & importSemaphoreFdInfo ) const;
+
+ VULKAN_HPP_NODISCARD int getSemaphoreFdKHR( const SemaphoreGetFdInfoKHR & getFdInfo ) const;
+
+ //=== VK_KHR_descriptor_update_template ===
+
+ void destroyDescriptorUpdateTemplateKHR(
+ VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate descriptorUpdateTemplate VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_EXT_display_control ===
+
+ void displayPowerControlEXT( VULKAN_HPP_NAMESPACE::DisplayKHR display,
+ const DisplayPowerInfoEXT & displayPowerInfo ) const;
+
+ //=== VK_EXT_hdr_metadata ===
+
+ void setHdrMetadataEXT( ArrayProxy<const VULKAN_HPP_NAMESPACE::SwapchainKHR> const & swapchains,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::HdrMetadataEXT> const & metadata ) const
+ VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS;
+
+# if defined( VK_USE_PLATFORM_WIN32_KHR )
+ //=== VK_KHR_external_fence_win32 ===
+
+ void importFenceWin32HandleKHR( const ImportFenceWin32HandleInfoKHR & importFenceWin32HandleInfo ) const;
+
+ VULKAN_HPP_NODISCARD HANDLE getFenceWin32HandleKHR( const FenceGetWin32HandleInfoKHR & getWin32HandleInfo ) const;
+# endif /*VK_USE_PLATFORM_WIN32_KHR*/
+
+ //=== VK_KHR_external_fence_fd ===
+
+ void importFenceFdKHR( const ImportFenceFdInfoKHR & importFenceFdInfo ) const;
+
+ VULKAN_HPP_NODISCARD int getFenceFdKHR( const FenceGetFdInfoKHR & getFdInfo ) const;
+
+ //=== VK_KHR_performance_query ===
+
+ void acquireProfilingLockKHR( const AcquireProfilingLockInfoKHR & info ) const;
+
+ void releaseProfilingLockKHR() const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_EXT_debug_utils ===
+
+ void setDebugUtilsObjectNameEXT( const DebugUtilsObjectNameInfoEXT & nameInfo ) const;
+
+ void setDebugUtilsObjectTagEXT( const DebugUtilsObjectTagInfoEXT & tagInfo ) const;
+
+# if defined( VK_USE_PLATFORM_ANDROID_KHR )
+ //=== VK_ANDROID_external_memory_android_hardware_buffer ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::AndroidHardwareBufferPropertiesANDROID
+ getAndroidHardwareBufferPropertiesANDROID( const struct AHardwareBuffer & buffer ) const;
+
+ template <typename X, typename Y, typename... Z>
+ VULKAN_HPP_NODISCARD StructureChain<X, Y, Z...>
+ getAndroidHardwareBufferPropertiesANDROID( const struct AHardwareBuffer & buffer ) const;
+
+ VULKAN_HPP_NODISCARD struct AHardwareBuffer *
+ getMemoryAndroidHardwareBufferANDROID( const MemoryGetAndroidHardwareBufferInfoANDROID & info ) const;
+# endif /*VK_USE_PLATFORM_ANDROID_KHR*/
+
+ //=== VK_KHR_get_memory_requirements2 ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::MemoryRequirements2
+ getImageMemoryRequirements2KHR( const ImageMemoryRequirementsInfo2 & info ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename X, typename Y, typename... Z>
+ VULKAN_HPP_NODISCARD StructureChain<X, Y, Z...>
+ getImageMemoryRequirements2KHR( const ImageMemoryRequirementsInfo2 & info ) const VULKAN_HPP_NOEXCEPT;
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::MemoryRequirements2
+ getBufferMemoryRequirements2KHR( const BufferMemoryRequirementsInfo2 & info ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename X, typename Y, typename... Z>
+ VULKAN_HPP_NODISCARD StructureChain<X, Y, Z...>
+ getBufferMemoryRequirements2KHR( const BufferMemoryRequirementsInfo2 & info ) const VULKAN_HPP_NOEXCEPT;
+
+ VULKAN_HPP_NODISCARD std::vector<VULKAN_HPP_NAMESPACE::SparseImageMemoryRequirements2>
+ getImageSparseMemoryRequirements2KHR( const ImageSparseMemoryRequirementsInfo2 & info ) const
+ VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_KHR_acceleration_structure ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::Result buildAccelerationStructuresKHR(
+ VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::AccelerationStructureBuildGeometryInfoKHR> const & infos,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::AccelerationStructureBuildRangeInfoKHR * const> const &
+ pBuildRangeInfos ) const;
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::Result
+ copyAccelerationStructureKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation,
+ const CopyAccelerationStructureInfoKHR & info ) const;
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::Result
+ copyAccelerationStructureToMemoryKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation,
+ const CopyAccelerationStructureToMemoryInfoKHR & info ) const;
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::Result
+ copyMemoryToAccelerationStructureKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation,
+ const CopyMemoryToAccelerationStructureInfoKHR & info ) const;
+
+ template <typename T>
+ VULKAN_HPP_NODISCARD std::vector<T> writeAccelerationStructuresPropertiesKHR(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::AccelerationStructureKHR> const & accelerationStructures,
+ VULKAN_HPP_NAMESPACE::QueryType queryType,
+ size_t dataSize,
+ size_t stride ) const;
+
+ template <typename T>
+ VULKAN_HPP_NODISCARD T writeAccelerationStructuresPropertyKHR(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::AccelerationStructureKHR> const & accelerationStructures,
+ VULKAN_HPP_NAMESPACE::QueryType queryType,
+ size_t stride ) const;
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::DeviceAddress getAccelerationStructureAddressKHR(
+ const AccelerationStructureDeviceAddressInfoKHR & info ) const VULKAN_HPP_NOEXCEPT;
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::AccelerationStructureCompatibilityKHR
+ getAccelerationStructureCompatibilityKHR( const AccelerationStructureVersionInfoKHR & versionInfo ) const
+ VULKAN_HPP_NOEXCEPT;
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::AccelerationStructureBuildSizesInfoKHR
+ getAccelerationStructureBuildSizesKHR( VULKAN_HPP_NAMESPACE::AccelerationStructureBuildTypeKHR buildType,
+ const AccelerationStructureBuildGeometryInfoKHR & buildInfo,
+ ArrayProxy<const uint32_t> const & maxPrimitiveCounts
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_KHR_sampler_ycbcr_conversion ===
+
+ void destroySamplerYcbcrConversionKHR(
+ VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion ycbcrConversion VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT,
+ Optional<const AllocationCallbacks> allocator
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_KHR_bind_memory2 ===
+
+ void bindBufferMemory2KHR( ArrayProxy<const VULKAN_HPP_NAMESPACE::BindBufferMemoryInfo> const & bindInfos ) const;
+
+ void bindImageMemory2KHR( ArrayProxy<const VULKAN_HPP_NAMESPACE::BindImageMemoryInfo> const & bindInfos ) const;
+
+ //=== VK_NV_ray_tracing ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::MemoryRequirements2KHR getAccelerationStructureMemoryRequirementsNV(
+ const AccelerationStructureMemoryRequirementsInfoNV & info ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename X, typename Y, typename... Z>
+ VULKAN_HPP_NODISCARD StructureChain<X, Y, Z...> getAccelerationStructureMemoryRequirementsNV(
+ const AccelerationStructureMemoryRequirementsInfoNV & info ) const VULKAN_HPP_NOEXCEPT;
+
+ void bindAccelerationStructureMemoryNV(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::BindAccelerationStructureMemoryInfoNV> const & bindInfos ) const;
+
+ //=== VK_KHR_maintenance3 ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::DescriptorSetLayoutSupport
+ getDescriptorSetLayoutSupportKHR( const DescriptorSetLayoutCreateInfo & createInfo ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename X, typename Y, typename... Z>
+ VULKAN_HPP_NODISCARD StructureChain<X, Y, Z...>
+ getDescriptorSetLayoutSupportKHR( const DescriptorSetLayoutCreateInfo & createInfo ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_EXT_external_memory_host ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::MemoryHostPointerPropertiesEXT
+ getMemoryHostPointerPropertiesEXT( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType,
+ const void * pHostPointer ) const;
+
+ //=== VK_EXT_calibrated_timestamps ===
+
+ VULKAN_HPP_NODISCARD std::pair<std::vector<uint64_t>, uint64_t> getCalibratedTimestampsEXT(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::CalibratedTimestampInfoEXT> const & timestampInfos ) const;
+
+ //=== VK_KHR_timeline_semaphore ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::Result waitSemaphoresKHR( const SemaphoreWaitInfo & waitInfo,
+ uint64_t timeout ) const;
+
+ void signalSemaphoreKHR( const SemaphoreSignalInfo & signalInfo ) const;
+
+ //=== VK_INTEL_performance_query ===
+
+ void initializePerformanceApiINTEL( const InitializePerformanceApiInfoINTEL & initializeInfo ) const;
+
+ void uninitializePerformanceApiINTEL() const VULKAN_HPP_NOEXCEPT;
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::PerformanceValueINTEL
+ getPerformanceParameterINTEL( VULKAN_HPP_NAMESPACE::PerformanceParameterTypeINTEL parameter ) const;
+
+ //=== VK_EXT_buffer_device_address ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::DeviceAddress
+ getBufferAddressEXT( const BufferDeviceAddressInfo & info ) const VULKAN_HPP_NOEXCEPT;
+
+# if defined( VK_USE_PLATFORM_WIN32_KHR )
+ //=== VK_EXT_full_screen_exclusive ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagsKHR
+ getGroupSurfacePresentModes2EXT( const PhysicalDeviceSurfaceInfo2KHR & surfaceInfo ) const;
+# endif /*VK_USE_PLATFORM_WIN32_KHR*/
+
+ //=== VK_KHR_buffer_device_address ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::DeviceAddress
+ getBufferAddressKHR( const BufferDeviceAddressInfo & info ) const VULKAN_HPP_NOEXCEPT;
+
+ VULKAN_HPP_NODISCARD uint64_t
+ getBufferOpaqueCaptureAddressKHR( const BufferDeviceAddressInfo & info ) const VULKAN_HPP_NOEXCEPT;
+
+ VULKAN_HPP_NODISCARD uint64_t
+ getMemoryOpaqueCaptureAddressKHR( const DeviceMemoryOpaqueCaptureAddressInfo & info ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_KHR_pipeline_executable_properties ===
+
+ VULKAN_HPP_NODISCARD std::vector<VULKAN_HPP_NAMESPACE::PipelineExecutablePropertiesKHR>
+ getPipelineExecutablePropertiesKHR( const PipelineInfoKHR & pipelineInfo ) const;
+
+ VULKAN_HPP_NODISCARD std::vector<VULKAN_HPP_NAMESPACE::PipelineExecutableStatisticKHR>
+ getPipelineExecutableStatisticsKHR( const PipelineExecutableInfoKHR & executableInfo ) const;
+
+ VULKAN_HPP_NODISCARD std::vector<VULKAN_HPP_NAMESPACE::PipelineExecutableInternalRepresentationKHR>
+ getPipelineExecutableInternalRepresentationsKHR( const PipelineExecutableInfoKHR & executableInfo ) const;
+
+ //=== VK_NV_device_generated_commands ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::MemoryRequirements2 getGeneratedCommandsMemoryRequirementsNV(
+ const GeneratedCommandsMemoryRequirementsInfoNV & info ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename X, typename Y, typename... Z>
+ VULKAN_HPP_NODISCARD StructureChain<X, Y, Z...> getGeneratedCommandsMemoryRequirementsNV(
+ const GeneratedCommandsMemoryRequirementsInfoNV & info ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_EXT_private_data ===
+
+ void setPrivateDataEXT( VULKAN_HPP_NAMESPACE::ObjectType objectType_,
+ uint64_t objectHandle,
+ VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT privateDataSlot,
+ uint64_t data ) const;
+
+ VULKAN_HPP_NODISCARD uint64_t
+ getPrivateDataEXT( VULKAN_HPP_NAMESPACE::ObjectType objectType_,
+ uint64_t objectHandle,
+ VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT privateDataSlot ) const VULKAN_HPP_NOEXCEPT;
+
+# if defined( VK_USE_PLATFORM_FUCHSIA )
+ //=== VK_FUCHSIA_external_memory ===
+
+ VULKAN_HPP_NODISCARD zx_handle_t
+ getMemoryZirconHandleFUCHSIA( const MemoryGetZirconHandleInfoFUCHSIA & getZirconHandleInfo ) const;
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::MemoryZirconHandlePropertiesFUCHSIA
+ getMemoryZirconHandlePropertiesFUCHSIA( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType,
+ zx_handle_t zirconHandle ) const;
+# endif /*VK_USE_PLATFORM_FUCHSIA*/
+
+# if defined( VK_USE_PLATFORM_FUCHSIA )
+ //=== VK_FUCHSIA_external_semaphore ===
+
+ void importSemaphoreZirconHandleFUCHSIA(
+ const ImportSemaphoreZirconHandleInfoFUCHSIA & importSemaphoreZirconHandleInfo ) const;
+
+ VULKAN_HPP_NODISCARD zx_handle_t
+ getSemaphoreZirconHandleFUCHSIA( const SemaphoreGetZirconHandleInfoFUCHSIA & getZirconHandleInfo ) const;
+# endif /*VK_USE_PLATFORM_FUCHSIA*/
+
+ VULKAN_HPP_NAMESPACE::Device const & operator*() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_device;
+ }
+
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * getDispatcher() const
+ {
+ return &m_dispatcher;
+ }
+
+ private:
+ VULKAN_HPP_NAMESPACE::Device m_device;
+ const VkAllocationCallbacks * m_allocator;
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher m_dispatcher;
+ };
+
+ class AccelerationStructureKHR
+ {
+ public:
+ using CType = VkAccelerationStructureKHR;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eAccelerationStructureKHR;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eAccelerationStructureKHR;
+
+ public:
+ AccelerationStructureKHR(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VULKAN_HPP_NAMESPACE::AccelerationStructureCreateInfoKHR const & createInfo,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkCreateAccelerationStructureKHR(
+ static_cast<VkDevice>( *device ),
+ reinterpret_cast<const VkAccelerationStructureCreateInfoKHR *>( &createInfo ),
+ m_allocator,
+ reinterpret_cast<VkAccelerationStructureKHR *>( &m_accelerationStructureKHR ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, "vkCreateAccelerationStructureKHR" );
+ }
+ }
+
+ AccelerationStructureKHR(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VkAccelerationStructureKHR accelerationStructureKHR,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_accelerationStructureKHR( accelerationStructureKHR )
+ , m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {}
+
+ ~AccelerationStructureKHR()
+ {
+ if ( m_accelerationStructureKHR )
+ {
+ getDispatcher()->vkDestroyAccelerationStructureKHR(
+ m_device, static_cast<VkAccelerationStructureKHR>( m_accelerationStructureKHR ), m_allocator );
+ }
+ }
+
+ AccelerationStructureKHR() = delete;
+ AccelerationStructureKHR( AccelerationStructureKHR const & ) = delete;
+ AccelerationStructureKHR( AccelerationStructureKHR && rhs ) VULKAN_HPP_NOEXCEPT
+ : m_accelerationStructureKHR(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_accelerationStructureKHR, {} ) )
+ , m_device( rhs.m_device )
+ , m_allocator( rhs.m_allocator )
+ , m_dispatcher( rhs.m_dispatcher )
+ {}
+ AccelerationStructureKHR & operator=( AccelerationStructureKHR const & ) = delete;
+ AccelerationStructureKHR & operator=( AccelerationStructureKHR && rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ if ( this != &rhs )
+ {
+ getDispatcher()->vkDestroyAccelerationStructureKHR(
+ m_device, static_cast<VkAccelerationStructureKHR>( m_accelerationStructureKHR ), m_allocator );
+ m_accelerationStructureKHR =
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_accelerationStructureKHR, {} );
+ m_device = rhs.m_device;
+ m_allocator = rhs.m_allocator;
+ m_dispatcher = rhs.m_dispatcher;
+ }
+ return *this;
+ }
+
+ VULKAN_HPP_NAMESPACE::AccelerationStructureKHR const & operator*() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_accelerationStructureKHR;
+ }
+
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * getDispatcher() const
+ {
+ return m_dispatcher;
+ }
+
+ private:
+ VULKAN_HPP_NAMESPACE::AccelerationStructureKHR m_accelerationStructureKHR;
+ VkDevice m_device;
+ const VkAllocationCallbacks * m_allocator;
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * m_dispatcher;
+ };
+
+ class AccelerationStructureNV
+ {
+ public:
+ using CType = VkAccelerationStructureNV;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eAccelerationStructureNV;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eAccelerationStructureNV;
+
+ public:
+ AccelerationStructureNV(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VULKAN_HPP_NAMESPACE::AccelerationStructureCreateInfoNV const & createInfo,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkCreateAccelerationStructureNV(
+ static_cast<VkDevice>( *device ),
+ reinterpret_cast<const VkAccelerationStructureCreateInfoNV *>( &createInfo ),
+ m_allocator,
+ reinterpret_cast<VkAccelerationStructureNV *>( &m_accelerationStructureNV ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, "vkCreateAccelerationStructureNV" );
+ }
+ }
+
+ AccelerationStructureNV(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VkAccelerationStructureNV accelerationStructureNV,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_accelerationStructureNV( accelerationStructureNV )
+ , m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {}
+
+ ~AccelerationStructureNV()
+ {
+ if ( m_accelerationStructureNV )
+ {
+ getDispatcher()->vkDestroyAccelerationStructureNV(
+ m_device, static_cast<VkAccelerationStructureNV>( m_accelerationStructureNV ), m_allocator );
+ }
+ }
+
+ AccelerationStructureNV() = delete;
+ AccelerationStructureNV( AccelerationStructureNV const & ) = delete;
+ AccelerationStructureNV( AccelerationStructureNV && rhs ) VULKAN_HPP_NOEXCEPT
+ : m_accelerationStructureNV(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_accelerationStructureNV, {} ) )
+ , m_device( rhs.m_device )
+ , m_allocator( rhs.m_allocator )
+ , m_dispatcher( rhs.m_dispatcher )
+ {}
+ AccelerationStructureNV & operator=( AccelerationStructureNV const & ) = delete;
+ AccelerationStructureNV & operator=( AccelerationStructureNV && rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ if ( this != &rhs )
+ {
+ getDispatcher()->vkDestroyAccelerationStructureNV(
+ m_device, static_cast<VkAccelerationStructureNV>( m_accelerationStructureNV ), m_allocator );
+ m_accelerationStructureNV =
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_accelerationStructureNV, {} );
+ m_device = rhs.m_device;
+ m_allocator = rhs.m_allocator;
+ m_dispatcher = rhs.m_dispatcher;
+ }
+ return *this;
+ }
+
+ //=== VK_NV_ray_tracing ===
+
+ template <typename T>
+ VULKAN_HPP_NODISCARD std::vector<T> getHandle( size_t dataSize ) const;
+
+ template <typename T>
+ VULKAN_HPP_NODISCARD T getHandle() const;
+
+ VULKAN_HPP_NAMESPACE::AccelerationStructureNV const & operator*() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_accelerationStructureNV;
+ }
+
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * getDispatcher() const
+ {
+ return m_dispatcher;
+ }
+
+ private:
+ VULKAN_HPP_NAMESPACE::AccelerationStructureNV m_accelerationStructureNV;
+ VkDevice m_device;
+ const VkAllocationCallbacks * m_allocator;
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * m_dispatcher;
+ };
+
+ class Buffer
+ {
+ public:
+ using CType = VkBuffer;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eBuffer;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eBuffer;
+
+ public:
+ Buffer( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VULKAN_HPP_NAMESPACE::BufferCreateInfo const & createInfo,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkCreateBuffer( static_cast<VkDevice>( *device ),
+ reinterpret_cast<const VkBufferCreateInfo *>( &createInfo ),
+ m_allocator,
+ reinterpret_cast<VkBuffer *>( &m_buffer ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, "vkCreateBuffer" );
+ }
+ }
+
+ Buffer( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VkBuffer buffer,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_buffer( buffer )
+ , m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {}
+
+ ~Buffer()
+ {
+ if ( m_buffer )
+ {
+ getDispatcher()->vkDestroyBuffer( m_device, static_cast<VkBuffer>( m_buffer ), m_allocator );
+ }
+ }
+
+ Buffer() = delete;
+ Buffer( Buffer const & ) = delete;
+ Buffer( Buffer && rhs ) VULKAN_HPP_NOEXCEPT
+ : m_buffer( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_buffer, {} ) )
+ , m_device( rhs.m_device )
+ , m_allocator( rhs.m_allocator )
+ , m_dispatcher( rhs.m_dispatcher )
+ {}
+ Buffer & operator=( Buffer const & ) = delete;
+ Buffer & operator =( Buffer && rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ if ( this != &rhs )
+ {
+ getDispatcher()->vkDestroyBuffer( m_device, static_cast<VkBuffer>( m_buffer ), m_allocator );
+ m_buffer = VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_buffer, {} );
+ m_device = rhs.m_device;
+ m_allocator = rhs.m_allocator;
+ m_dispatcher = rhs.m_dispatcher;
+ }
+ return *this;
+ }
+
+ //=== VK_VERSION_1_0 ===
+
+ void bindMemory( VULKAN_HPP_NAMESPACE::DeviceMemory memory, VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset ) const;
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::MemoryRequirements getMemoryRequirements() const VULKAN_HPP_NOEXCEPT;
+
+ VULKAN_HPP_NAMESPACE::Buffer const & operator*() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_buffer;
+ }
+
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * getDispatcher() const
+ {
+ return m_dispatcher;
+ }
+
+ private:
+ VULKAN_HPP_NAMESPACE::Buffer m_buffer;
+ VkDevice m_device;
+ const VkAllocationCallbacks * m_allocator;
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * m_dispatcher;
+ };
+
+ class BufferView
+ {
+ public:
+ using CType = VkBufferView;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eBufferView;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eBufferView;
+
+ public:
+ BufferView( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VULKAN_HPP_NAMESPACE::BufferViewCreateInfo const & createInfo,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkCreateBufferView( static_cast<VkDevice>( *device ),
+ reinterpret_cast<const VkBufferViewCreateInfo *>( &createInfo ),
+ m_allocator,
+ reinterpret_cast<VkBufferView *>( &m_bufferView ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, "vkCreateBufferView" );
+ }
+ }
+
+ BufferView( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VkBufferView bufferView,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_bufferView( bufferView )
+ , m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {}
+
+ ~BufferView()
+ {
+ if ( m_bufferView )
+ {
+ getDispatcher()->vkDestroyBufferView( m_device, static_cast<VkBufferView>( m_bufferView ), m_allocator );
+ }
+ }
+
+ BufferView() = delete;
+ BufferView( BufferView const & ) = delete;
+ BufferView( BufferView && rhs ) VULKAN_HPP_NOEXCEPT
+ : m_bufferView( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_bufferView, {} ) )
+ , m_device( rhs.m_device )
+ , m_allocator( rhs.m_allocator )
+ , m_dispatcher( rhs.m_dispatcher )
+ {}
+ BufferView & operator=( BufferView const & ) = delete;
+ BufferView & operator =( BufferView && rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ if ( this != &rhs )
+ {
+ getDispatcher()->vkDestroyBufferView( m_device, static_cast<VkBufferView>( m_bufferView ), m_allocator );
+ m_bufferView = VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_bufferView, {} );
+ m_device = rhs.m_device;
+ m_allocator = rhs.m_allocator;
+ m_dispatcher = rhs.m_dispatcher;
+ }
+ return *this;
+ }
+
+ VULKAN_HPP_NAMESPACE::BufferView const & operator*() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_bufferView;
+ }
+
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * getDispatcher() const
+ {
+ return m_dispatcher;
+ }
+
+ private:
+ VULKAN_HPP_NAMESPACE::BufferView m_bufferView;
+ VkDevice m_device;
+ const VkAllocationCallbacks * m_allocator;
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * m_dispatcher;
+ };
+
+ class CommandPool
+ {
+ public:
+ using CType = VkCommandPool;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eCommandPool;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eCommandPool;
+
+ public:
+ CommandPool( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VULKAN_HPP_NAMESPACE::CommandPoolCreateInfo const & createInfo,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkCreateCommandPool( static_cast<VkDevice>( *device ),
+ reinterpret_cast<const VkCommandPoolCreateInfo *>( &createInfo ),
+ m_allocator,
+ reinterpret_cast<VkCommandPool *>( &m_commandPool ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, "vkCreateCommandPool" );
+ }
+ }
+
+ CommandPool( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VkCommandPool commandPool,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_commandPool( commandPool )
+ , m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {}
+
+ ~CommandPool()
+ {
+ if ( m_commandPool )
+ {
+ getDispatcher()->vkDestroyCommandPool( m_device, static_cast<VkCommandPool>( m_commandPool ), m_allocator );
+ }
+ }
+
+ CommandPool() = delete;
+ CommandPool( CommandPool const & ) = delete;
+ CommandPool( CommandPool && rhs ) VULKAN_HPP_NOEXCEPT
+ : m_commandPool( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_commandPool, {} ) )
+ , m_device( rhs.m_device )
+ , m_allocator( rhs.m_allocator )
+ , m_dispatcher( rhs.m_dispatcher )
+ {}
+ CommandPool & operator=( CommandPool const & ) = delete;
+ CommandPool & operator =( CommandPool && rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ if ( this != &rhs )
+ {
+ getDispatcher()->vkDestroyCommandPool( m_device, static_cast<VkCommandPool>( m_commandPool ), m_allocator );
+ m_commandPool = VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_commandPool, {} );
+ m_device = rhs.m_device;
+ m_allocator = rhs.m_allocator;
+ m_dispatcher = rhs.m_dispatcher;
+ }
+ return *this;
+ }
+
+ //=== VK_VERSION_1_0 ===
+
+ void reset( VULKAN_HPP_NAMESPACE::CommandPoolResetFlags flags VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT ) const;
+
+ //=== VK_VERSION_1_1 ===
+
+ void trim( VULKAN_HPP_NAMESPACE::CommandPoolTrimFlags flags VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_KHR_maintenance1 ===
+
+ void trimKHR( VULKAN_HPP_NAMESPACE::CommandPoolTrimFlags flags VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+
+ VULKAN_HPP_NAMESPACE::CommandPool const & operator*() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_commandPool;
+ }
+
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * getDispatcher() const
+ {
+ return m_dispatcher;
+ }
+
+ private:
+ VULKAN_HPP_NAMESPACE::CommandPool m_commandPool;
+ VkDevice m_device;
+ const VkAllocationCallbacks * m_allocator;
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * m_dispatcher;
+ };
+
+ class CommandBuffer
+ {
+ public:
+ using CType = VkCommandBuffer;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eCommandBuffer;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eCommandBuffer;
+
+ public:
+ CommandBuffer( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VkCommandBuffer commandBuffer,
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::CommandPool const & commandPool )
+ : m_commandBuffer( commandBuffer )
+ , m_device( *device )
+ , m_commandPool( *commandPool )
+ , m_dispatcher( device.getDispatcher() )
+ {}
+
+ CommandBuffer( VkCommandBuffer commandBuffer,
+ VkDevice device,
+ VkCommandPool commandPool,
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * dispatcher )
+ : m_commandBuffer( commandBuffer ), m_device( device ), m_commandPool( commandPool ), m_dispatcher( dispatcher )
+ {}
+
+ ~CommandBuffer()
+ {
+ if ( m_commandBuffer )
+ {
+ getDispatcher()->vkFreeCommandBuffers(
+ m_device, m_commandPool, 1, reinterpret_cast<VkCommandBuffer const *>( &m_commandBuffer ) );
+ }
+ }
+
+ CommandBuffer() = delete;
+ CommandBuffer( CommandBuffer const & ) = delete;
+ CommandBuffer( CommandBuffer && rhs ) VULKAN_HPP_NOEXCEPT
+ : m_commandBuffer( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_commandBuffer, {} ) )
+ , m_device( rhs.m_device )
+ , m_commandPool( rhs.m_commandPool )
+ , m_dispatcher( rhs.m_dispatcher )
+ {}
+ CommandBuffer & operator=( CommandBuffer const & ) = delete;
+ CommandBuffer & operator =( CommandBuffer && rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ if ( this != &rhs )
+ {
+ getDispatcher()->vkFreeCommandBuffers(
+ m_device, m_commandPool, 1, reinterpret_cast<VkCommandBuffer const *>( &m_commandBuffer ) );
+ m_commandBuffer = VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_commandBuffer, {} );
+ m_device = rhs.m_device;
+ m_commandPool = rhs.m_commandPool;
+ m_dispatcher = rhs.m_dispatcher;
+ }
+ return *this;
+ }
+
+ //=== VK_VERSION_1_0 ===
+
+ void begin( const CommandBufferBeginInfo & beginInfo ) const;
+
+ void end() const;
+
+ void reset( VULKAN_HPP_NAMESPACE::CommandBufferResetFlags flags VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT ) const;
+
+ void bindPipeline( VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint,
+ VULKAN_HPP_NAMESPACE::Pipeline pipeline ) const VULKAN_HPP_NOEXCEPT;
+
+ void setViewport( uint32_t firstViewport,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::Viewport> const & viewports ) const VULKAN_HPP_NOEXCEPT;
+
+ void setScissor( uint32_t firstScissor,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::Rect2D> const & scissors ) const VULKAN_HPP_NOEXCEPT;
+
+ void setLineWidth( float lineWidth ) const VULKAN_HPP_NOEXCEPT;
+
+ void setDepthBias( float depthBiasConstantFactor,
+ float depthBiasClamp,
+ float depthBiasSlopeFactor ) const VULKAN_HPP_NOEXCEPT;
+
+ void setBlendConstants( const float blendConstants[4] ) const VULKAN_HPP_NOEXCEPT;
+
+ void setDepthBounds( float minDepthBounds, float maxDepthBounds ) const VULKAN_HPP_NOEXCEPT;
+
+ void setStencilCompareMask( VULKAN_HPP_NAMESPACE::StencilFaceFlags faceMask,
+ uint32_t compareMask ) const VULKAN_HPP_NOEXCEPT;
+
+ void setStencilWriteMask( VULKAN_HPP_NAMESPACE::StencilFaceFlags faceMask,
+ uint32_t writeMask ) const VULKAN_HPP_NOEXCEPT;
+
+ void setStencilReference( VULKAN_HPP_NAMESPACE::StencilFaceFlags faceMask,
+ uint32_t reference ) const VULKAN_HPP_NOEXCEPT;
+
+ void bindDescriptorSets( VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint,
+ VULKAN_HPP_NAMESPACE::PipelineLayout layout,
+ uint32_t firstSet,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::DescriptorSet> const & descriptorSets,
+ ArrayProxy<const uint32_t> const & dynamicOffsets ) const VULKAN_HPP_NOEXCEPT;
+
+ void bindIndexBuffer( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize offset,
+ VULKAN_HPP_NAMESPACE::IndexType indexType ) const VULKAN_HPP_NOEXCEPT;
+
+ void bindVertexBuffers( uint32_t firstBinding,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::Buffer> const & buffers,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::DeviceSize> const & offsets ) const
+ VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS;
+
+ void draw( uint32_t vertexCount,
+ uint32_t instanceCount,
+ uint32_t firstVertex,
+ uint32_t firstInstance ) const VULKAN_HPP_NOEXCEPT;
+
+ void drawIndexed( uint32_t indexCount,
+ uint32_t instanceCount,
+ uint32_t firstIndex,
+ int32_t vertexOffset,
+ uint32_t firstInstance ) const VULKAN_HPP_NOEXCEPT;
+
+ void drawIndirect( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize offset,
+ uint32_t drawCount,
+ uint32_t stride ) const VULKAN_HPP_NOEXCEPT;
+
+ void drawIndexedIndirect( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize offset,
+ uint32_t drawCount,
+ uint32_t stride ) const VULKAN_HPP_NOEXCEPT;
+
+ void dispatch( uint32_t groupCountX, uint32_t groupCountY, uint32_t groupCountZ ) const VULKAN_HPP_NOEXCEPT;
+
+ void dispatchIndirect( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize offset ) const VULKAN_HPP_NOEXCEPT;
+
+ void copyBuffer( VULKAN_HPP_NAMESPACE::Buffer srcBuffer,
+ VULKAN_HPP_NAMESPACE::Buffer dstBuffer,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::BufferCopy> const & regions ) const VULKAN_HPP_NOEXCEPT;
+
+ void copyImage( VULKAN_HPP_NAMESPACE::Image srcImage,
+ VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout,
+ VULKAN_HPP_NAMESPACE::Image dstImage,
+ VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::ImageCopy> const & regions ) const VULKAN_HPP_NOEXCEPT;
+
+ void blitImage( VULKAN_HPP_NAMESPACE::Image srcImage,
+ VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout,
+ VULKAN_HPP_NAMESPACE::Image dstImage,
+ VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::ImageBlit> const & regions,
+ VULKAN_HPP_NAMESPACE::Filter filter ) const VULKAN_HPP_NOEXCEPT;
+
+ void copyBufferToImage( VULKAN_HPP_NAMESPACE::Buffer srcBuffer,
+ VULKAN_HPP_NAMESPACE::Image dstImage,
+ VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::BufferImageCopy> const & regions ) const
+ VULKAN_HPP_NOEXCEPT;
+
+ void copyImageToBuffer( VULKAN_HPP_NAMESPACE::Image srcImage,
+ VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout,
+ VULKAN_HPP_NAMESPACE::Buffer dstBuffer,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::BufferImageCopy> const & regions ) const
+ VULKAN_HPP_NOEXCEPT;
+
+ template <typename T>
+ void updateBuffer( VULKAN_HPP_NAMESPACE::Buffer dstBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize dstOffset,
+ ArrayProxy<const T> const & data ) const VULKAN_HPP_NOEXCEPT;
+
+ void fillBuffer( VULKAN_HPP_NAMESPACE::Buffer dstBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize dstOffset,
+ VULKAN_HPP_NAMESPACE::DeviceSize size,
+ uint32_t data ) const VULKAN_HPP_NOEXCEPT;
+
+ void clearColorImage( VULKAN_HPP_NAMESPACE::Image image,
+ VULKAN_HPP_NAMESPACE::ImageLayout imageLayout,
+ const ClearColorValue & color,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::ImageSubresourceRange> const & ranges ) const
+ VULKAN_HPP_NOEXCEPT;
+
+ void clearDepthStencilImage( VULKAN_HPP_NAMESPACE::Image image,
+ VULKAN_HPP_NAMESPACE::ImageLayout imageLayout,
+ const ClearDepthStencilValue & depthStencil,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::ImageSubresourceRange> const & ranges ) const
+ VULKAN_HPP_NOEXCEPT;
+
+ void
+ clearAttachments( ArrayProxy<const VULKAN_HPP_NAMESPACE::ClearAttachment> const & attachments,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::ClearRect> const & rects ) const VULKAN_HPP_NOEXCEPT;
+
+ void
+ resolveImage( VULKAN_HPP_NAMESPACE::Image srcImage,
+ VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout,
+ VULKAN_HPP_NAMESPACE::Image dstImage,
+ VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::ImageResolve> const & regions ) const VULKAN_HPP_NOEXCEPT;
+
+ void setEvent( VULKAN_HPP_NAMESPACE::Event event,
+ VULKAN_HPP_NAMESPACE::PipelineStageFlags stageMask ) const VULKAN_HPP_NOEXCEPT;
+
+ void resetEvent( VULKAN_HPP_NAMESPACE::Event event,
+ VULKAN_HPP_NAMESPACE::PipelineStageFlags stageMask ) const VULKAN_HPP_NOEXCEPT;
+
+ void waitEvents( ArrayProxy<const VULKAN_HPP_NAMESPACE::Event> const & events,
+ VULKAN_HPP_NAMESPACE::PipelineStageFlags srcStageMask,
+ VULKAN_HPP_NAMESPACE::PipelineStageFlags dstStageMask,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::MemoryBarrier> const & memoryBarriers,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::BufferMemoryBarrier> const & bufferMemoryBarriers,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::ImageMemoryBarrier> const & imageMemoryBarriers ) const
+ VULKAN_HPP_NOEXCEPT;
+
+ void pipelineBarrier( VULKAN_HPP_NAMESPACE::PipelineStageFlags srcStageMask,
+ VULKAN_HPP_NAMESPACE::PipelineStageFlags dstStageMask,
+ VULKAN_HPP_NAMESPACE::DependencyFlags dependencyFlags,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::MemoryBarrier> const & memoryBarriers,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::BufferMemoryBarrier> const & bufferMemoryBarriers,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::ImageMemoryBarrier> const & imageMemoryBarriers )
+ const VULKAN_HPP_NOEXCEPT;
+
+ void beginQuery( VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ uint32_t query,
+ VULKAN_HPP_NAMESPACE::QueryControlFlags flags
+ VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ void endQuery( VULKAN_HPP_NAMESPACE::QueryPool queryPool, uint32_t query ) const VULKAN_HPP_NOEXCEPT;
+
+ void resetQueryPool( VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ uint32_t firstQuery,
+ uint32_t queryCount ) const VULKAN_HPP_NOEXCEPT;
+
+ void writeTimestamp( VULKAN_HPP_NAMESPACE::PipelineStageFlagBits pipelineStage,
+ VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ uint32_t query ) const VULKAN_HPP_NOEXCEPT;
+
+ void copyQueryPoolResults( VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ uint32_t firstQuery,
+ uint32_t queryCount,
+ VULKAN_HPP_NAMESPACE::Buffer dstBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize dstOffset,
+ VULKAN_HPP_NAMESPACE::DeviceSize stride,
+ VULKAN_HPP_NAMESPACE::QueryResultFlags flags
+ VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ template <typename T>
+ void pushConstants( VULKAN_HPP_NAMESPACE::PipelineLayout layout,
+ VULKAN_HPP_NAMESPACE::ShaderStageFlags stageFlags,
+ uint32_t offset,
+ ArrayProxy<const T> const & values ) const VULKAN_HPP_NOEXCEPT;
+
+ void beginRenderPass( const RenderPassBeginInfo & renderPassBegin,
+ VULKAN_HPP_NAMESPACE::SubpassContents contents ) const VULKAN_HPP_NOEXCEPT;
+
+ void nextSubpass( VULKAN_HPP_NAMESPACE::SubpassContents contents ) const VULKAN_HPP_NOEXCEPT;
+
+ void endRenderPass() const VULKAN_HPP_NOEXCEPT;
+
+ void executeCommands( ArrayProxy<const VULKAN_HPP_NAMESPACE::CommandBuffer> const & commandBuffers ) const
+ VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_VERSION_1_1 ===
+
+ void setDeviceMask( uint32_t deviceMask ) const VULKAN_HPP_NOEXCEPT;
+
+ void dispatchBase( uint32_t baseGroupX,
+ uint32_t baseGroupY,
+ uint32_t baseGroupZ,
+ uint32_t groupCountX,
+ uint32_t groupCountY,
+ uint32_t groupCountZ ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_VERSION_1_2 ===
+
+ void drawIndirectCount( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize offset,
+ VULKAN_HPP_NAMESPACE::Buffer countBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize countBufferOffset,
+ uint32_t maxDrawCount,
+ uint32_t stride ) const VULKAN_HPP_NOEXCEPT;
+
+ void drawIndexedIndirectCount( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize offset,
+ VULKAN_HPP_NAMESPACE::Buffer countBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize countBufferOffset,
+ uint32_t maxDrawCount,
+ uint32_t stride ) const VULKAN_HPP_NOEXCEPT;
+
+ void beginRenderPass2( const RenderPassBeginInfo & renderPassBegin,
+ const SubpassBeginInfo & subpassBeginInfo ) const VULKAN_HPP_NOEXCEPT;
+
+ void nextSubpass2( const SubpassBeginInfo & subpassBeginInfo,
+ const SubpassEndInfo & subpassEndInfo ) const VULKAN_HPP_NOEXCEPT;
+
+ void endRenderPass2( const SubpassEndInfo & subpassEndInfo ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_EXT_debug_marker ===
+
+ void debugMarkerBeginEXT( const DebugMarkerMarkerInfoEXT & markerInfo ) const VULKAN_HPP_NOEXCEPT;
+
+ void debugMarkerEndEXT() const VULKAN_HPP_NOEXCEPT;
+
+ void debugMarkerInsertEXT( const DebugMarkerMarkerInfoEXT & markerInfo ) const VULKAN_HPP_NOEXCEPT;
+
+# if defined( VK_ENABLE_BETA_EXTENSIONS )
+ //=== VK_KHR_video_queue ===
+
+ void beginVideoCodingKHR( const VideoBeginCodingInfoKHR & beginInfo ) const VULKAN_HPP_NOEXCEPT;
+
+ void endVideoCodingKHR( const VideoEndCodingInfoKHR & endCodingInfo ) const VULKAN_HPP_NOEXCEPT;
+
+ void controlVideoCodingKHR( const VideoCodingControlInfoKHR & codingControlInfo ) const VULKAN_HPP_NOEXCEPT;
+# endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+# if defined( VK_ENABLE_BETA_EXTENSIONS )
+ //=== VK_KHR_video_decode_queue ===
+
+ void decodeVideoKHR( const VideoDecodeInfoKHR & frameInfo ) const VULKAN_HPP_NOEXCEPT;
+# endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+ //=== VK_EXT_transform_feedback ===
+
+ void bindTransformFeedbackBuffersEXT( uint32_t firstBinding,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::Buffer> const & buffers,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::DeviceSize> const & offsets,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::DeviceSize> const & sizes
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS;
+
+ void beginTransformFeedbackEXT( uint32_t firstCounterBuffer,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::Buffer> const & counterBuffers,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::DeviceSize> const & counterBufferOffsets
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS;
+
+ void endTransformFeedbackEXT( uint32_t firstCounterBuffer,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::Buffer> const & counterBuffers,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::DeviceSize> const & counterBufferOffsets
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS;
+
+ void beginQueryIndexedEXT( VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ uint32_t query,
+ VULKAN_HPP_NAMESPACE::QueryControlFlags flags,
+ uint32_t index ) const VULKAN_HPP_NOEXCEPT;
+
+ void endQueryIndexedEXT( VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ uint32_t query,
+ uint32_t index ) const VULKAN_HPP_NOEXCEPT;
+
+ void drawIndirectByteCountEXT( uint32_t instanceCount,
+ uint32_t firstInstance,
+ VULKAN_HPP_NAMESPACE::Buffer counterBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize counterBufferOffset,
+ uint32_t counterOffset,
+ uint32_t vertexStride ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_NVX_binary_import ===
+
+ void cuLaunchKernelNVX( const CuLaunchInfoNVX & launchInfo ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_AMD_draw_indirect_count ===
+
+ void drawIndirectCountAMD( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize offset,
+ VULKAN_HPP_NAMESPACE::Buffer countBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize countBufferOffset,
+ uint32_t maxDrawCount,
+ uint32_t stride ) const VULKAN_HPP_NOEXCEPT;
+
+ void drawIndexedIndirectCountAMD( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize offset,
+ VULKAN_HPP_NAMESPACE::Buffer countBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize countBufferOffset,
+ uint32_t maxDrawCount,
+ uint32_t stride ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_KHR_device_group ===
+
+ void setDeviceMaskKHR( uint32_t deviceMask ) const VULKAN_HPP_NOEXCEPT;
+
+ void dispatchBaseKHR( uint32_t baseGroupX,
+ uint32_t baseGroupY,
+ uint32_t baseGroupZ,
+ uint32_t groupCountX,
+ uint32_t groupCountY,
+ uint32_t groupCountZ ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_KHR_push_descriptor ===
+
+ void pushDescriptorSetKHR(
+ VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint,
+ VULKAN_HPP_NAMESPACE::PipelineLayout layout,
+ uint32_t set,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::WriteDescriptorSet> const & descriptorWrites ) const VULKAN_HPP_NOEXCEPT;
+
+ void pushDescriptorSetWithTemplateKHR( VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate descriptorUpdateTemplate,
+ VULKAN_HPP_NAMESPACE::PipelineLayout layout,
+ uint32_t set,
+ const void * pData ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_EXT_conditional_rendering ===
+
+ void beginConditionalRenderingEXT( const ConditionalRenderingBeginInfoEXT & conditionalRenderingBegin ) const
+ VULKAN_HPP_NOEXCEPT;
+
+ void endConditionalRenderingEXT() const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_NV_clip_space_w_scaling ===
+
+ void setViewportWScalingNV( uint32_t firstViewport,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::ViewportWScalingNV> const & viewportWScalings )
+ const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_EXT_discard_rectangles ===
+
+ void setDiscardRectangleEXT( uint32_t firstDiscardRectangle,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::Rect2D> const & discardRectangles ) const
+ VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_KHR_create_renderpass2 ===
+
+ void beginRenderPass2KHR( const RenderPassBeginInfo & renderPassBegin,
+ const SubpassBeginInfo & subpassBeginInfo ) const VULKAN_HPP_NOEXCEPT;
+
+ void nextSubpass2KHR( const SubpassBeginInfo & subpassBeginInfo,
+ const SubpassEndInfo & subpassEndInfo ) const VULKAN_HPP_NOEXCEPT;
+
+ void endRenderPass2KHR( const SubpassEndInfo & subpassEndInfo ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_EXT_debug_utils ===
+
+ void beginDebugUtilsLabelEXT( const DebugUtilsLabelEXT & labelInfo ) const VULKAN_HPP_NOEXCEPT;
+
+ void endDebugUtilsLabelEXT() const VULKAN_HPP_NOEXCEPT;
+
+ void insertDebugUtilsLabelEXT( const DebugUtilsLabelEXT & labelInfo ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_EXT_sample_locations ===
+
+ void setSampleLocationsEXT( const SampleLocationsInfoEXT & sampleLocationsInfo ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_KHR_acceleration_structure ===
+
+ void buildAccelerationStructuresKHR(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::AccelerationStructureBuildGeometryInfoKHR> const & infos,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::AccelerationStructureBuildRangeInfoKHR * const> const &
+ pBuildRangeInfos ) const VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS;
+
+ void buildAccelerationStructuresIndirectKHR(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::AccelerationStructureBuildGeometryInfoKHR> const & infos,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::DeviceAddress> const & indirectDeviceAddresses,
+ ArrayProxy<const uint32_t> const & indirectStrides,
+ ArrayProxy<const uint32_t * const> const & pMaxPrimitiveCounts ) const VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS;
+
+ void copyAccelerationStructureKHR( const CopyAccelerationStructureInfoKHR & info ) const VULKAN_HPP_NOEXCEPT;
+
+ void copyAccelerationStructureToMemoryKHR( const CopyAccelerationStructureToMemoryInfoKHR & info ) const
+ VULKAN_HPP_NOEXCEPT;
+
+ void copyMemoryToAccelerationStructureKHR( const CopyMemoryToAccelerationStructureInfoKHR & info ) const
+ VULKAN_HPP_NOEXCEPT;
+
+ void writeAccelerationStructuresPropertiesKHR(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::AccelerationStructureKHR> const & accelerationStructures,
+ VULKAN_HPP_NAMESPACE::QueryType queryType,
+ VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ uint32_t firstQuery ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_NV_shading_rate_image ===
+
+ void bindShadingRateImageNV( VULKAN_HPP_NAMESPACE::ImageView imageView,
+ VULKAN_HPP_NAMESPACE::ImageLayout imageLayout ) const VULKAN_HPP_NOEXCEPT;
+
+ void setViewportShadingRatePaletteNV( uint32_t firstViewport,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::ShadingRatePaletteNV> const &
+ shadingRatePalettes ) const VULKAN_HPP_NOEXCEPT;
+
+ void setCoarseSampleOrderNV( VULKAN_HPP_NAMESPACE::CoarseSampleOrderTypeNV sampleOrderType,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::CoarseSampleOrderCustomNV> const &
+ customSampleOrders ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_NV_ray_tracing ===
+
+ void buildAccelerationStructureNV( const AccelerationStructureInfoNV & info,
+ VULKAN_HPP_NAMESPACE::Buffer instanceData,
+ VULKAN_HPP_NAMESPACE::DeviceSize instanceOffset,
+ VULKAN_HPP_NAMESPACE::Bool32 update,
+ VULKAN_HPP_NAMESPACE::AccelerationStructureNV dst,
+ VULKAN_HPP_NAMESPACE::AccelerationStructureNV src,
+ VULKAN_HPP_NAMESPACE::Buffer scratch,
+ VULKAN_HPP_NAMESPACE::DeviceSize scratchOffset ) const VULKAN_HPP_NOEXCEPT;
+
+ void copyAccelerationStructureNV( VULKAN_HPP_NAMESPACE::AccelerationStructureNV dst,
+ VULKAN_HPP_NAMESPACE::AccelerationStructureNV src,
+ VULKAN_HPP_NAMESPACE::CopyAccelerationStructureModeKHR mode ) const
+ VULKAN_HPP_NOEXCEPT;
+
+ void traceRaysNV( VULKAN_HPP_NAMESPACE::Buffer raygenShaderBindingTableBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize raygenShaderBindingOffset,
+ VULKAN_HPP_NAMESPACE::Buffer missShaderBindingTableBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize missShaderBindingOffset,
+ VULKAN_HPP_NAMESPACE::DeviceSize missShaderBindingStride,
+ VULKAN_HPP_NAMESPACE::Buffer hitShaderBindingTableBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize hitShaderBindingOffset,
+ VULKAN_HPP_NAMESPACE::DeviceSize hitShaderBindingStride,
+ VULKAN_HPP_NAMESPACE::Buffer callableShaderBindingTableBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize callableShaderBindingOffset,
+ VULKAN_HPP_NAMESPACE::DeviceSize callableShaderBindingStride,
+ uint32_t width,
+ uint32_t height,
+ uint32_t depth ) const VULKAN_HPP_NOEXCEPT;
+
+ void writeAccelerationStructuresPropertiesNV(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::AccelerationStructureNV> const & accelerationStructures,
+ VULKAN_HPP_NAMESPACE::QueryType queryType,
+ VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ uint32_t firstQuery ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_KHR_draw_indirect_count ===
+
+ void drawIndirectCountKHR( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize offset,
+ VULKAN_HPP_NAMESPACE::Buffer countBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize countBufferOffset,
+ uint32_t maxDrawCount,
+ uint32_t stride ) const VULKAN_HPP_NOEXCEPT;
+
+ void drawIndexedIndirectCountKHR( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize offset,
+ VULKAN_HPP_NAMESPACE::Buffer countBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize countBufferOffset,
+ uint32_t maxDrawCount,
+ uint32_t stride ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_AMD_buffer_marker ===
+
+ void writeBufferMarkerAMD( VULKAN_HPP_NAMESPACE::PipelineStageFlagBits pipelineStage,
+ VULKAN_HPP_NAMESPACE::Buffer dstBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize dstOffset,
+ uint32_t marker ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_NV_mesh_shader ===
+
+ void drawMeshTasksNV( uint32_t taskCount, uint32_t firstTask ) const VULKAN_HPP_NOEXCEPT;
+
+ void drawMeshTasksIndirectNV( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize offset,
+ uint32_t drawCount,
+ uint32_t stride ) const VULKAN_HPP_NOEXCEPT;
+
+ void drawMeshTasksIndirectCountNV( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize offset,
+ VULKAN_HPP_NAMESPACE::Buffer countBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize countBufferOffset,
+ uint32_t maxDrawCount,
+ uint32_t stride ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_NV_scissor_exclusive ===
+
+ void setExclusiveScissorNV( uint32_t firstExclusiveScissor,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::Rect2D> const & exclusiveScissors ) const
+ VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_NV_device_diagnostic_checkpoints ===
+
+ void setCheckpointNV( const void * pCheckpointMarker ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_INTEL_performance_query ===
+
+ void setPerformanceMarkerINTEL( const PerformanceMarkerInfoINTEL & markerInfo ) const;
+
+ void setPerformanceStreamMarkerINTEL( const PerformanceStreamMarkerInfoINTEL & markerInfo ) const;
+
+ void setPerformanceOverrideINTEL( const PerformanceOverrideInfoINTEL & overrideInfo ) const;
+
+ //=== VK_KHR_fragment_shading_rate ===
+
+ void setFragmentShadingRateKHR(
+ const Extent2D & fragmentSize,
+ const VULKAN_HPP_NAMESPACE::FragmentShadingRateCombinerOpKHR combinerOps[2] ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_EXT_line_rasterization ===
+
+ void setLineStippleEXT( uint32_t lineStippleFactor, uint16_t lineStipplePattern ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_EXT_extended_dynamic_state ===
+
+ void setCullModeEXT( VULKAN_HPP_NAMESPACE::CullModeFlags cullMode VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+
+ void setFrontFaceEXT( VULKAN_HPP_NAMESPACE::FrontFace frontFace ) const VULKAN_HPP_NOEXCEPT;
+
+ void
+ setPrimitiveTopologyEXT( VULKAN_HPP_NAMESPACE::PrimitiveTopology primitiveTopology ) const VULKAN_HPP_NOEXCEPT;
+
+ void setViewportWithCountEXT( ArrayProxy<const VULKAN_HPP_NAMESPACE::Viewport> const & viewports ) const
+ VULKAN_HPP_NOEXCEPT;
+
+ void setScissorWithCountEXT( ArrayProxy<const VULKAN_HPP_NAMESPACE::Rect2D> const & scissors ) const
+ VULKAN_HPP_NOEXCEPT;
+
+ void bindVertexBuffers2EXT(
+ uint32_t firstBinding,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::Buffer> const & buffers,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::DeviceSize> const & offsets,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::DeviceSize> const & sizes VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::DeviceSize> const & strides
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS;
+
+ void setDepthTestEnableEXT( VULKAN_HPP_NAMESPACE::Bool32 depthTestEnable ) const VULKAN_HPP_NOEXCEPT;
+
+ void setDepthWriteEnableEXT( VULKAN_HPP_NAMESPACE::Bool32 depthWriteEnable ) const VULKAN_HPP_NOEXCEPT;
+
+ void setDepthCompareOpEXT( VULKAN_HPP_NAMESPACE::CompareOp depthCompareOp ) const VULKAN_HPP_NOEXCEPT;
+
+ void setDepthBoundsTestEnableEXT( VULKAN_HPP_NAMESPACE::Bool32 depthBoundsTestEnable ) const VULKAN_HPP_NOEXCEPT;
+
+ void setStencilTestEnableEXT( VULKAN_HPP_NAMESPACE::Bool32 stencilTestEnable ) const VULKAN_HPP_NOEXCEPT;
+
+ void setStencilOpEXT( VULKAN_HPP_NAMESPACE::StencilFaceFlags faceMask,
+ VULKAN_HPP_NAMESPACE::StencilOp failOp,
+ VULKAN_HPP_NAMESPACE::StencilOp passOp,
+ VULKAN_HPP_NAMESPACE::StencilOp depthFailOp,
+ VULKAN_HPP_NAMESPACE::CompareOp compareOp ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_NV_device_generated_commands ===
+
+ void preprocessGeneratedCommandsNV( const GeneratedCommandsInfoNV & generatedCommandsInfo ) const
+ VULKAN_HPP_NOEXCEPT;
+
+ void
+ executeGeneratedCommandsNV( VULKAN_HPP_NAMESPACE::Bool32 isPreprocessed,
+ const GeneratedCommandsInfoNV & generatedCommandsInfo ) const VULKAN_HPP_NOEXCEPT;
+
+ void bindPipelineShaderGroupNV( VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint,
+ VULKAN_HPP_NAMESPACE::Pipeline pipeline,
+ uint32_t groupIndex ) const VULKAN_HPP_NOEXCEPT;
+
+# if defined( VK_ENABLE_BETA_EXTENSIONS )
+ //=== VK_KHR_video_encode_queue ===
+
+ void encodeVideoKHR( const VideoEncodeInfoKHR & encodeInfo ) const VULKAN_HPP_NOEXCEPT;
+# endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+ //=== VK_KHR_synchronization2 ===
+
+ void setEvent2KHR( VULKAN_HPP_NAMESPACE::Event event,
+ const DependencyInfoKHR & dependencyInfo ) const VULKAN_HPP_NOEXCEPT;
+
+ void resetEvent2KHR( VULKAN_HPP_NAMESPACE::Event event,
+ VULKAN_HPP_NAMESPACE::PipelineStageFlags2KHR stageMask ) const VULKAN_HPP_NOEXCEPT;
+
+ void waitEvents2KHR( ArrayProxy<const VULKAN_HPP_NAMESPACE::Event> const & events,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::DependencyInfoKHR> const & dependencyInfos ) const
+ VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS;
+
+ void pipelineBarrier2KHR( const DependencyInfoKHR & dependencyInfo ) const VULKAN_HPP_NOEXCEPT;
+
+ void writeTimestamp2KHR( VULKAN_HPP_NAMESPACE::PipelineStageFlags2KHR stage,
+ VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ uint32_t query ) const VULKAN_HPP_NOEXCEPT;
+
+ void writeBufferMarker2AMD( VULKAN_HPP_NAMESPACE::PipelineStageFlags2KHR stage,
+ VULKAN_HPP_NAMESPACE::Buffer dstBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize dstOffset,
+ uint32_t marker ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_NV_fragment_shading_rate_enums ===
+
+ void setFragmentShadingRateEnumNV(
+ VULKAN_HPP_NAMESPACE::FragmentShadingRateNV shadingRate,
+ const VULKAN_HPP_NAMESPACE::FragmentShadingRateCombinerOpKHR combinerOps[2] ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_KHR_copy_commands2 ===
+
+ void copyBuffer2KHR( const CopyBufferInfo2KHR & copyBufferInfo ) const VULKAN_HPP_NOEXCEPT;
+
+ void copyImage2KHR( const CopyImageInfo2KHR & copyImageInfo ) const VULKAN_HPP_NOEXCEPT;
+
+ void copyBufferToImage2KHR( const CopyBufferToImageInfo2KHR & copyBufferToImageInfo ) const VULKAN_HPP_NOEXCEPT;
+
+ void copyImageToBuffer2KHR( const CopyImageToBufferInfo2KHR & copyImageToBufferInfo ) const VULKAN_HPP_NOEXCEPT;
+
+ void blitImage2KHR( const BlitImageInfo2KHR & blitImageInfo ) const VULKAN_HPP_NOEXCEPT;
+
+ void resolveImage2KHR( const ResolveImageInfo2KHR & resolveImageInfo ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_KHR_ray_tracing_pipeline ===
+
+ void traceRaysKHR( const StridedDeviceAddressRegionKHR & raygenShaderBindingTable,
+ const StridedDeviceAddressRegionKHR & missShaderBindingTable,
+ const StridedDeviceAddressRegionKHR & hitShaderBindingTable,
+ const StridedDeviceAddressRegionKHR & callableShaderBindingTable,
+ uint32_t width,
+ uint32_t height,
+ uint32_t depth ) const VULKAN_HPP_NOEXCEPT;
+
+ void traceRaysIndirectKHR( const StridedDeviceAddressRegionKHR & raygenShaderBindingTable,
+ const StridedDeviceAddressRegionKHR & missShaderBindingTable,
+ const StridedDeviceAddressRegionKHR & hitShaderBindingTable,
+ const StridedDeviceAddressRegionKHR & callableShaderBindingTable,
+ VULKAN_HPP_NAMESPACE::DeviceAddress indirectDeviceAddress ) const VULKAN_HPP_NOEXCEPT;
+
+ void setRayTracingPipelineStackSizeKHR( uint32_t pipelineStackSize ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_EXT_vertex_input_dynamic_state ===
+
+ void setVertexInputEXT(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::VertexInputBindingDescription2EXT> const & vertexBindingDescriptions,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::VertexInputAttributeDescription2EXT> const &
+ vertexAttributeDescriptions ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_HUAWEI_subpass_shading ===
+
+ void subpassShadingHUAWEI() const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_EXT_extended_dynamic_state2 ===
+
+ void setPatchControlPointsEXT( uint32_t patchControlPoints ) const VULKAN_HPP_NOEXCEPT;
+
+ void
+ setRasterizerDiscardEnableEXT( VULKAN_HPP_NAMESPACE::Bool32 rasterizerDiscardEnable ) const VULKAN_HPP_NOEXCEPT;
+
+ void setDepthBiasEnableEXT( VULKAN_HPP_NAMESPACE::Bool32 depthBiasEnable ) const VULKAN_HPP_NOEXCEPT;
+
+ void setLogicOpEXT( VULKAN_HPP_NAMESPACE::LogicOp logicOp ) const VULKAN_HPP_NOEXCEPT;
+
+ void
+ setPrimitiveRestartEnableEXT( VULKAN_HPP_NAMESPACE::Bool32 primitiveRestartEnable ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_EXT_color_write_enable ===
+
+ void setColorWriteEnableEXT( ArrayProxy<const VULKAN_HPP_NAMESPACE::Bool32> const & colorWriteEnables ) const
+ VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_EXT_multi_draw ===
+
+ void drawMultiEXT( ArrayProxy<const VULKAN_HPP_NAMESPACE::MultiDrawInfoEXT> const & vertexInfo,
+ uint32_t instanceCount,
+ uint32_t firstInstance,
+ uint32_t stride ) const VULKAN_HPP_NOEXCEPT;
+
+ void drawMultiIndexedEXT( ArrayProxy<const VULKAN_HPP_NAMESPACE::MultiDrawIndexedInfoEXT> const & indexInfo,
+ uint32_t instanceCount,
+ uint32_t firstInstance,
+ uint32_t stride,
+ Optional<const int32_t> vertexOffset
+ VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
+
+ VULKAN_HPP_NAMESPACE::CommandBuffer const & operator*() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_commandBuffer;
+ }
+
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * getDispatcher() const
+ {
+ return m_dispatcher;
+ }
+
+ private:
+ VULKAN_HPP_NAMESPACE::CommandBuffer m_commandBuffer;
+ VkDevice m_device;
+ VkCommandPool m_commandPool;
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * m_dispatcher;
+ };
+
+ class CommandBuffers : public std::vector<VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::CommandBuffer>
+ {
+ public:
+ CommandBuffers( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VULKAN_HPP_NAMESPACE::CommandBufferAllocateInfo const & allocateInfo )
+ {
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * dispatcher = device.getDispatcher();
+ std::vector<VkCommandBuffer> commandBuffers( allocateInfo.commandBufferCount );
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ dispatcher->vkAllocateCommandBuffers( static_cast<VkDevice>( *device ),
+ reinterpret_cast<const VkCommandBufferAllocateInfo *>( &allocateInfo ),
+ commandBuffers.data() ) );
+ if ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ this->reserve( allocateInfo.commandBufferCount );
+ for ( auto const & commandBuffer : commandBuffers )
+ {
+ this->emplace_back( commandBuffer,
+ static_cast<VkDevice>( *device ),
+ static_cast<VkCommandPool>( allocateInfo.commandPool ),
+ dispatcher );
+ }
+ }
+ else
+ {
+ throwResultException( result, "vkAllocateCommandBuffers" );
+ }
+ }
+
+ CommandBuffers() = delete;
+ CommandBuffers( CommandBuffers const & ) = delete;
+ CommandBuffers( CommandBuffers && rhs ) = default;
+ CommandBuffers & operator=( CommandBuffers const & ) = delete;
+ CommandBuffers & operator=( CommandBuffers && rhs ) = default;
+ };
+
+ class CuFunctionNVX
+ {
+ public:
+ using CType = VkCuFunctionNVX;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eCuFunctionNVX;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eCuFunctionNVX;
+
+ public:
+ CuFunctionNVX(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VULKAN_HPP_NAMESPACE::CuFunctionCreateInfoNVX const & createInfo,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkCreateCuFunctionNVX( static_cast<VkDevice>( *device ),
+ reinterpret_cast<const VkCuFunctionCreateInfoNVX *>( &createInfo ),
+ m_allocator,
+ reinterpret_cast<VkCuFunctionNVX *>( &m_cuFunctionNVX ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, "vkCreateCuFunctionNVX" );
+ }
+ }
+
+ CuFunctionNVX(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VkCuFunctionNVX cuFunctionNVX,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_cuFunctionNVX( cuFunctionNVX )
+ , m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {}
+
+ ~CuFunctionNVX()
+ {
+ if ( m_cuFunctionNVX )
+ {
+ getDispatcher()->vkDestroyCuFunctionNVX(
+ m_device, static_cast<VkCuFunctionNVX>( m_cuFunctionNVX ), m_allocator );
+ }
+ }
+
+ CuFunctionNVX() = delete;
+ CuFunctionNVX( CuFunctionNVX const & ) = delete;
+ CuFunctionNVX( CuFunctionNVX && rhs ) VULKAN_HPP_NOEXCEPT
+ : m_cuFunctionNVX( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_cuFunctionNVX, {} ) )
+ , m_device( rhs.m_device )
+ , m_allocator( rhs.m_allocator )
+ , m_dispatcher( rhs.m_dispatcher )
+ {}
+ CuFunctionNVX & operator=( CuFunctionNVX const & ) = delete;
+ CuFunctionNVX & operator =( CuFunctionNVX && rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ if ( this != &rhs )
+ {
+ getDispatcher()->vkDestroyCuFunctionNVX(
+ m_device, static_cast<VkCuFunctionNVX>( m_cuFunctionNVX ), m_allocator );
+ m_cuFunctionNVX = VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_cuFunctionNVX, {} );
+ m_device = rhs.m_device;
+ m_allocator = rhs.m_allocator;
+ m_dispatcher = rhs.m_dispatcher;
+ }
+ return *this;
+ }
+
+ VULKAN_HPP_NAMESPACE::CuFunctionNVX const & operator*() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_cuFunctionNVX;
+ }
+
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * getDispatcher() const
+ {
+ return m_dispatcher;
+ }
+
+ private:
+ VULKAN_HPP_NAMESPACE::CuFunctionNVX m_cuFunctionNVX;
+ VkDevice m_device;
+ const VkAllocationCallbacks * m_allocator;
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * m_dispatcher;
+ };
+
+ class CuModuleNVX
+ {
+ public:
+ using CType = VkCuModuleNVX;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eCuModuleNVX;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eCuModuleNVX;
+
+ public:
+ CuModuleNVX( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VULKAN_HPP_NAMESPACE::CuModuleCreateInfoNVX const & createInfo,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkCreateCuModuleNVX( static_cast<VkDevice>( *device ),
+ reinterpret_cast<const VkCuModuleCreateInfoNVX *>( &createInfo ),
+ m_allocator,
+ reinterpret_cast<VkCuModuleNVX *>( &m_cuModuleNVX ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, "vkCreateCuModuleNVX" );
+ }
+ }
+
+ CuModuleNVX( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VkCuModuleNVX cuModuleNVX,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_cuModuleNVX( cuModuleNVX )
+ , m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {}
+
+ ~CuModuleNVX()
+ {
+ if ( m_cuModuleNVX )
+ {
+ getDispatcher()->vkDestroyCuModuleNVX( m_device, static_cast<VkCuModuleNVX>( m_cuModuleNVX ), m_allocator );
+ }
+ }
+
+ CuModuleNVX() = delete;
+ CuModuleNVX( CuModuleNVX const & ) = delete;
+ CuModuleNVX( CuModuleNVX && rhs ) VULKAN_HPP_NOEXCEPT
+ : m_cuModuleNVX( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_cuModuleNVX, {} ) )
+ , m_device( rhs.m_device )
+ , m_allocator( rhs.m_allocator )
+ , m_dispatcher( rhs.m_dispatcher )
+ {}
+ CuModuleNVX & operator=( CuModuleNVX const & ) = delete;
+ CuModuleNVX & operator =( CuModuleNVX && rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ if ( this != &rhs )
+ {
+ getDispatcher()->vkDestroyCuModuleNVX( m_device, static_cast<VkCuModuleNVX>( m_cuModuleNVX ), m_allocator );
+ m_cuModuleNVX = VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_cuModuleNVX, {} );
+ m_device = rhs.m_device;
+ m_allocator = rhs.m_allocator;
+ m_dispatcher = rhs.m_dispatcher;
+ }
+ return *this;
+ }
+
+ VULKAN_HPP_NAMESPACE::CuModuleNVX const & operator*() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_cuModuleNVX;
+ }
+
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * getDispatcher() const
+ {
+ return m_dispatcher;
+ }
+
+ private:
+ VULKAN_HPP_NAMESPACE::CuModuleNVX m_cuModuleNVX;
+ VkDevice m_device;
+ const VkAllocationCallbacks * m_allocator;
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * m_dispatcher;
+ };
+
+ class DebugReportCallbackEXT
+ {
+ public:
+ using CType = VkDebugReportCallbackEXT;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eDebugReportCallbackEXT;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eDebugReportCallbackEXT;
+
+ public:
+ DebugReportCallbackEXT(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Instance const & instance,
+ VULKAN_HPP_NAMESPACE::DebugReportCallbackCreateInfoEXT const & createInfo,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_instance( *instance )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( instance.getDispatcher() )
+ {
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkCreateDebugReportCallbackEXT(
+ static_cast<VkInstance>( *instance ),
+ reinterpret_cast<const VkDebugReportCallbackCreateInfoEXT *>( &createInfo ),
+ m_allocator,
+ reinterpret_cast<VkDebugReportCallbackEXT *>( &m_debugReportCallbackEXT ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, "vkCreateDebugReportCallbackEXT" );
+ }
+ }
+
+ DebugReportCallbackEXT(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Instance const & instance,
+ VkDebugReportCallbackEXT debugReportCallbackEXT,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_debugReportCallbackEXT( debugReportCallbackEXT )
+ , m_instance( *instance )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( instance.getDispatcher() )
+ {}
+
+ ~DebugReportCallbackEXT()
+ {
+ if ( m_debugReportCallbackEXT )
+ {
+ getDispatcher()->vkDestroyDebugReportCallbackEXT(
+ m_instance, static_cast<VkDebugReportCallbackEXT>( m_debugReportCallbackEXT ), m_allocator );
+ }
+ }
+
+ DebugReportCallbackEXT() = delete;
+ DebugReportCallbackEXT( DebugReportCallbackEXT const & ) = delete;
+ DebugReportCallbackEXT( DebugReportCallbackEXT && rhs ) VULKAN_HPP_NOEXCEPT
+ : m_debugReportCallbackEXT(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_debugReportCallbackEXT, {} ) )
+ , m_instance( rhs.m_instance )
+ , m_allocator( rhs.m_allocator )
+ , m_dispatcher( rhs.m_dispatcher )
+ {}
+ DebugReportCallbackEXT & operator=( DebugReportCallbackEXT const & ) = delete;
+ DebugReportCallbackEXT & operator=( DebugReportCallbackEXT && rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ if ( this != &rhs )
+ {
+ getDispatcher()->vkDestroyDebugReportCallbackEXT(
+ m_instance, static_cast<VkDebugReportCallbackEXT>( m_debugReportCallbackEXT ), m_allocator );
+ m_debugReportCallbackEXT =
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_debugReportCallbackEXT, {} );
+ m_instance = rhs.m_instance;
+ m_allocator = rhs.m_allocator;
+ m_dispatcher = rhs.m_dispatcher;
+ }
+ return *this;
+ }
+
+ VULKAN_HPP_NAMESPACE::DebugReportCallbackEXT const & operator*() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_debugReportCallbackEXT;
+ }
+
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::InstanceDispatcher const * getDispatcher() const
+ {
+ return m_dispatcher;
+ }
+
+ private:
+ VULKAN_HPP_NAMESPACE::DebugReportCallbackEXT m_debugReportCallbackEXT;
+ VkInstance m_instance;
+ const VkAllocationCallbacks * m_allocator;
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::InstanceDispatcher const * m_dispatcher;
+ };
+
+ class DebugUtilsMessengerEXT
+ {
+ public:
+ using CType = VkDebugUtilsMessengerEXT;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eDebugUtilsMessengerEXT;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eUnknown;
+
+ public:
+ DebugUtilsMessengerEXT(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Instance const & instance,
+ VULKAN_HPP_NAMESPACE::DebugUtilsMessengerCreateInfoEXT const & createInfo,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_instance( *instance )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( instance.getDispatcher() )
+ {
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkCreateDebugUtilsMessengerEXT(
+ static_cast<VkInstance>( *instance ),
+ reinterpret_cast<const VkDebugUtilsMessengerCreateInfoEXT *>( &createInfo ),
+ m_allocator,
+ reinterpret_cast<VkDebugUtilsMessengerEXT *>( &m_debugUtilsMessengerEXT ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, "vkCreateDebugUtilsMessengerEXT" );
+ }
+ }
+
+ DebugUtilsMessengerEXT(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Instance const & instance,
+ VkDebugUtilsMessengerEXT debugUtilsMessengerEXT,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_debugUtilsMessengerEXT( debugUtilsMessengerEXT )
+ , m_instance( *instance )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( instance.getDispatcher() )
+ {}
+
+ ~DebugUtilsMessengerEXT()
+ {
+ if ( m_debugUtilsMessengerEXT )
+ {
+ getDispatcher()->vkDestroyDebugUtilsMessengerEXT(
+ m_instance, static_cast<VkDebugUtilsMessengerEXT>( m_debugUtilsMessengerEXT ), m_allocator );
+ }
+ }
+
+ DebugUtilsMessengerEXT() = delete;
+ DebugUtilsMessengerEXT( DebugUtilsMessengerEXT const & ) = delete;
+ DebugUtilsMessengerEXT( DebugUtilsMessengerEXT && rhs ) VULKAN_HPP_NOEXCEPT
+ : m_debugUtilsMessengerEXT(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_debugUtilsMessengerEXT, {} ) )
+ , m_instance( rhs.m_instance )
+ , m_allocator( rhs.m_allocator )
+ , m_dispatcher( rhs.m_dispatcher )
+ {}
+ DebugUtilsMessengerEXT & operator=( DebugUtilsMessengerEXT const & ) = delete;
+ DebugUtilsMessengerEXT & operator=( DebugUtilsMessengerEXT && rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ if ( this != &rhs )
+ {
+ getDispatcher()->vkDestroyDebugUtilsMessengerEXT(
+ m_instance, static_cast<VkDebugUtilsMessengerEXT>( m_debugUtilsMessengerEXT ), m_allocator );
+ m_debugUtilsMessengerEXT =
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_debugUtilsMessengerEXT, {} );
+ m_instance = rhs.m_instance;
+ m_allocator = rhs.m_allocator;
+ m_dispatcher = rhs.m_dispatcher;
+ }
+ return *this;
+ }
+
+ VULKAN_HPP_NAMESPACE::DebugUtilsMessengerEXT const & operator*() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_debugUtilsMessengerEXT;
+ }
+
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::InstanceDispatcher const * getDispatcher() const
+ {
+ return m_dispatcher;
+ }
+
+ private:
+ VULKAN_HPP_NAMESPACE::DebugUtilsMessengerEXT m_debugUtilsMessengerEXT;
+ VkInstance m_instance;
+ const VkAllocationCallbacks * m_allocator;
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::InstanceDispatcher const * m_dispatcher;
+ };
+
+ class DeferredOperationKHR
+ {
+ public:
+ using CType = VkDeferredOperationKHR;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eDeferredOperationKHR;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eUnknown;
+
+ public:
+ DeferredOperationKHR(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkCreateDeferredOperationKHR(
+ static_cast<VkDevice>( *device ),
+ m_allocator,
+ reinterpret_cast<VkDeferredOperationKHR *>( &m_deferredOperationKHR ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, "vkCreateDeferredOperationKHR" );
+ }
+ }
+
+ DeferredOperationKHR(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VkDeferredOperationKHR deferredOperationKHR,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_deferredOperationKHR( deferredOperationKHR )
+ , m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {}
+
+ ~DeferredOperationKHR()
+ {
+ if ( m_deferredOperationKHR )
+ {
+ getDispatcher()->vkDestroyDeferredOperationKHR(
+ m_device, static_cast<VkDeferredOperationKHR>( m_deferredOperationKHR ), m_allocator );
+ }
+ }
+
+ DeferredOperationKHR() = delete;
+ DeferredOperationKHR( DeferredOperationKHR const & ) = delete;
+ DeferredOperationKHR( DeferredOperationKHR && rhs ) VULKAN_HPP_NOEXCEPT
+ : m_deferredOperationKHR( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_deferredOperationKHR,
+ {} ) )
+ , m_device( rhs.m_device )
+ , m_allocator( rhs.m_allocator )
+ , m_dispatcher( rhs.m_dispatcher )
+ {}
+ DeferredOperationKHR & operator=( DeferredOperationKHR const & ) = delete;
+ DeferredOperationKHR & operator=( DeferredOperationKHR && rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ if ( this != &rhs )
+ {
+ getDispatcher()->vkDestroyDeferredOperationKHR(
+ m_device, static_cast<VkDeferredOperationKHR>( m_deferredOperationKHR ), m_allocator );
+ m_deferredOperationKHR =
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_deferredOperationKHR, {} );
+ m_device = rhs.m_device;
+ m_allocator = rhs.m_allocator;
+ m_dispatcher = rhs.m_dispatcher;
+ }
+ return *this;
+ }
+
+ //=== VK_KHR_deferred_host_operations ===
+
+ VULKAN_HPP_NODISCARD uint32_t getMaxConcurrency() const VULKAN_HPP_NOEXCEPT;
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::Result getResult() const VULKAN_HPP_NOEXCEPT;
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::Result join() const;
+
+ VULKAN_HPP_NAMESPACE::DeferredOperationKHR const & operator*() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_deferredOperationKHR;
+ }
+
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * getDispatcher() const
+ {
+ return m_dispatcher;
+ }
+
+ private:
+ VULKAN_HPP_NAMESPACE::DeferredOperationKHR m_deferredOperationKHR;
+ VkDevice m_device;
+ const VkAllocationCallbacks * m_allocator;
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * m_dispatcher;
+ };
+
+ class DescriptorPool
+ {
+ public:
+ using CType = VkDescriptorPool;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eDescriptorPool;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eDescriptorPool;
+
+ public:
+ DescriptorPool(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VULKAN_HPP_NAMESPACE::DescriptorPoolCreateInfo const & createInfo,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkCreateDescriptorPool( static_cast<VkDevice>( *device ),
+ reinterpret_cast<const VkDescriptorPoolCreateInfo *>( &createInfo ),
+ m_allocator,
+ reinterpret_cast<VkDescriptorPool *>( &m_descriptorPool ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, "vkCreateDescriptorPool" );
+ }
+ }
+
+ DescriptorPool(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VkDescriptorPool descriptorPool,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_descriptorPool( descriptorPool )
+ , m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {}
+
+ ~DescriptorPool()
+ {
+ if ( m_descriptorPool )
+ {
+ getDispatcher()->vkDestroyDescriptorPool(
+ m_device, static_cast<VkDescriptorPool>( m_descriptorPool ), m_allocator );
+ }
+ }
+
+ DescriptorPool() = delete;
+ DescriptorPool( DescriptorPool const & ) = delete;
+ DescriptorPool( DescriptorPool && rhs ) VULKAN_HPP_NOEXCEPT
+ : m_descriptorPool( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_descriptorPool, {} ) )
+ , m_device( rhs.m_device )
+ , m_allocator( rhs.m_allocator )
+ , m_dispatcher( rhs.m_dispatcher )
+ {}
+ DescriptorPool & operator=( DescriptorPool const & ) = delete;
+ DescriptorPool & operator =( DescriptorPool && rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ if ( this != &rhs )
+ {
+ getDispatcher()->vkDestroyDescriptorPool(
+ m_device, static_cast<VkDescriptorPool>( m_descriptorPool ), m_allocator );
+ m_descriptorPool = VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_descriptorPool, {} );
+ m_device = rhs.m_device;
+ m_allocator = rhs.m_allocator;
+ m_dispatcher = rhs.m_dispatcher;
+ }
+ return *this;
+ }
+
+ //=== VK_VERSION_1_0 ===
+
+ void reset( VULKAN_HPP_NAMESPACE::DescriptorPoolResetFlags flags VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT ) const
+ VULKAN_HPP_NOEXCEPT;
+
+ VULKAN_HPP_NAMESPACE::DescriptorPool const & operator*() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_descriptorPool;
+ }
+
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * getDispatcher() const
+ {
+ return m_dispatcher;
+ }
+
+ private:
+ VULKAN_HPP_NAMESPACE::DescriptorPool m_descriptorPool;
+ VkDevice m_device;
+ const VkAllocationCallbacks * m_allocator;
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * m_dispatcher;
+ };
+
+ class DescriptorSet
+ {
+ public:
+ using CType = VkDescriptorSet;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eDescriptorSet;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eDescriptorSet;
+
+ public:
+ DescriptorSet( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VkDescriptorSet descriptorSet,
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DescriptorPool const & descriptorPool )
+ : m_descriptorSet( descriptorSet )
+ , m_device( *device )
+ , m_descriptorPool( *descriptorPool )
+ , m_dispatcher( device.getDispatcher() )
+ {}
+
+ DescriptorSet( VkDescriptorSet descriptorSet,
+ VkDevice device,
+ VkDescriptorPool descriptorPool,
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * dispatcher )
+ : m_descriptorSet( descriptorSet )
+ , m_device( device )
+ , m_descriptorPool( descriptorPool )
+ , m_dispatcher( dispatcher )
+ {}
+
+ ~DescriptorSet()
+ {
+ if ( m_descriptorSet )
+ {
+ getDispatcher()->vkFreeDescriptorSets(
+ m_device, m_descriptorPool, 1, reinterpret_cast<VkDescriptorSet const *>( &m_descriptorSet ) );
+ }
+ }
+
+ DescriptorSet() = delete;
+ DescriptorSet( DescriptorSet const & ) = delete;
+ DescriptorSet( DescriptorSet && rhs ) VULKAN_HPP_NOEXCEPT
+ : m_descriptorSet( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_descriptorSet, {} ) )
+ , m_device( rhs.m_device )
+ , m_descriptorPool( rhs.m_descriptorPool )
+ , m_dispatcher( rhs.m_dispatcher )
+ {}
+ DescriptorSet & operator=( DescriptorSet const & ) = delete;
+ DescriptorSet & operator =( DescriptorSet && rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ if ( this != &rhs )
+ {
+ getDispatcher()->vkFreeDescriptorSets(
+ m_device, m_descriptorPool, 1, reinterpret_cast<VkDescriptorSet const *>( &m_descriptorSet ) );
+ m_descriptorSet = VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_descriptorSet, {} );
+ m_device = rhs.m_device;
+ m_descriptorPool = rhs.m_descriptorPool;
+ m_dispatcher = rhs.m_dispatcher;
+ }
+ return *this;
+ }
+
+ //=== VK_VERSION_1_1 ===
+
+ void updateWithTemplate( VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate descriptorUpdateTemplate,
+ const void * pData ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_KHR_descriptor_update_template ===
+
+ void updateWithTemplateKHR( VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate descriptorUpdateTemplate,
+ const void * pData ) const VULKAN_HPP_NOEXCEPT;
+
+ VULKAN_HPP_NAMESPACE::DescriptorSet const & operator*() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_descriptorSet;
+ }
+
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * getDispatcher() const
+ {
+ return m_dispatcher;
+ }
+
+ private:
+ VULKAN_HPP_NAMESPACE::DescriptorSet m_descriptorSet;
+ VkDevice m_device;
+ VkDescriptorPool m_descriptorPool;
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * m_dispatcher;
+ };
+
+ class DescriptorSets : public std::vector<VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DescriptorSet>
+ {
+ public:
+ DescriptorSets( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VULKAN_HPP_NAMESPACE::DescriptorSetAllocateInfo const & allocateInfo )
+ {
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * dispatcher = device.getDispatcher();
+ std::vector<VkDescriptorSet> descriptorSets( allocateInfo.descriptorSetCount );
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ dispatcher->vkAllocateDescriptorSets( static_cast<VkDevice>( *device ),
+ reinterpret_cast<const VkDescriptorSetAllocateInfo *>( &allocateInfo ),
+ descriptorSets.data() ) );
+ if ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ this->reserve( allocateInfo.descriptorSetCount );
+ for ( auto const & descriptorSet : descriptorSets )
+ {
+ this->emplace_back( descriptorSet,
+ static_cast<VkDevice>( *device ),
+ static_cast<VkDescriptorPool>( allocateInfo.descriptorPool ),
+ dispatcher );
+ }
+ }
+ else
+ {
+ throwResultException( result, "vkAllocateDescriptorSets" );
+ }
+ }
+
+ DescriptorSets() = delete;
+ DescriptorSets( DescriptorSets const & ) = delete;
+ DescriptorSets( DescriptorSets && rhs ) = default;
+ DescriptorSets & operator=( DescriptorSets const & ) = delete;
+ DescriptorSets & operator=( DescriptorSets && rhs ) = default;
+ };
+
+ class DescriptorSetLayout
+ {
+ public:
+ using CType = VkDescriptorSetLayout;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eDescriptorSetLayout;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eDescriptorSetLayout;
+
+ public:
+ DescriptorSetLayout(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VULKAN_HPP_NAMESPACE::DescriptorSetLayoutCreateInfo const & createInfo,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkCreateDescriptorSetLayout(
+ static_cast<VkDevice>( *device ),
+ reinterpret_cast<const VkDescriptorSetLayoutCreateInfo *>( &createInfo ),
+ m_allocator,
+ reinterpret_cast<VkDescriptorSetLayout *>( &m_descriptorSetLayout ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, "vkCreateDescriptorSetLayout" );
+ }
+ }
+
+ DescriptorSetLayout(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VkDescriptorSetLayout descriptorSetLayout,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_descriptorSetLayout( descriptorSetLayout )
+ , m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {}
+
+ ~DescriptorSetLayout()
+ {
+ if ( m_descriptorSetLayout )
+ {
+ getDispatcher()->vkDestroyDescriptorSetLayout(
+ m_device, static_cast<VkDescriptorSetLayout>( m_descriptorSetLayout ), m_allocator );
+ }
+ }
+
+ DescriptorSetLayout() = delete;
+ DescriptorSetLayout( DescriptorSetLayout const & ) = delete;
+ DescriptorSetLayout( DescriptorSetLayout && rhs ) VULKAN_HPP_NOEXCEPT
+ : m_descriptorSetLayout( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_descriptorSetLayout,
+ {} ) )
+ , m_device( rhs.m_device )
+ , m_allocator( rhs.m_allocator )
+ , m_dispatcher( rhs.m_dispatcher )
+ {}
+ DescriptorSetLayout & operator=( DescriptorSetLayout const & ) = delete;
+ DescriptorSetLayout & operator =( DescriptorSetLayout && rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ if ( this != &rhs )
+ {
+ getDispatcher()->vkDestroyDescriptorSetLayout(
+ m_device, static_cast<VkDescriptorSetLayout>( m_descriptorSetLayout ), m_allocator );
+ m_descriptorSetLayout =
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_descriptorSetLayout, {} );
+ m_device = rhs.m_device;
+ m_allocator = rhs.m_allocator;
+ m_dispatcher = rhs.m_dispatcher;
+ }
+ return *this;
+ }
+
+ VULKAN_HPP_NAMESPACE::DescriptorSetLayout const & operator*() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_descriptorSetLayout;
+ }
+
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * getDispatcher() const
+ {
+ return m_dispatcher;
+ }
+
+ private:
+ VULKAN_HPP_NAMESPACE::DescriptorSetLayout m_descriptorSetLayout;
+ VkDevice m_device;
+ const VkAllocationCallbacks * m_allocator;
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * m_dispatcher;
+ };
+
+ class DescriptorUpdateTemplate
+ {
+ public:
+ using CType = VkDescriptorUpdateTemplate;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eDescriptorUpdateTemplate;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eDescriptorUpdateTemplate;
+
+ public:
+ DescriptorUpdateTemplate(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateCreateInfo const & createInfo,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkCreateDescriptorUpdateTemplate(
+ static_cast<VkDevice>( *device ),
+ reinterpret_cast<const VkDescriptorUpdateTemplateCreateInfo *>( &createInfo ),
+ m_allocator,
+ reinterpret_cast<VkDescriptorUpdateTemplate *>( &m_descriptorUpdateTemplate ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, "vkCreateDescriptorUpdateTemplate" );
+ }
+ }
+
+ DescriptorUpdateTemplate(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VkDescriptorUpdateTemplate descriptorUpdateTemplate,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_descriptorUpdateTemplate( descriptorUpdateTemplate )
+ , m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {}
+
+ ~DescriptorUpdateTemplate()
+ {
+ if ( m_descriptorUpdateTemplate )
+ {
+ getDispatcher()->vkDestroyDescriptorUpdateTemplate(
+ m_device, static_cast<VkDescriptorUpdateTemplate>( m_descriptorUpdateTemplate ), m_allocator );
+ }
+ }
+
+ DescriptorUpdateTemplate() = delete;
+ DescriptorUpdateTemplate( DescriptorUpdateTemplate const & ) = delete;
+ DescriptorUpdateTemplate( DescriptorUpdateTemplate && rhs ) VULKAN_HPP_NOEXCEPT
+ : m_descriptorUpdateTemplate(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_descriptorUpdateTemplate, {} ) )
+ , m_device( rhs.m_device )
+ , m_allocator( rhs.m_allocator )
+ , m_dispatcher( rhs.m_dispatcher )
+ {}
+ DescriptorUpdateTemplate & operator=( DescriptorUpdateTemplate const & ) = delete;
+ DescriptorUpdateTemplate & operator=( DescriptorUpdateTemplate && rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ if ( this != &rhs )
+ {
+ getDispatcher()->vkDestroyDescriptorUpdateTemplate(
+ m_device, static_cast<VkDescriptorUpdateTemplate>( m_descriptorUpdateTemplate ), m_allocator );
+ m_descriptorUpdateTemplate =
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_descriptorUpdateTemplate, {} );
+ m_device = rhs.m_device;
+ m_allocator = rhs.m_allocator;
+ m_dispatcher = rhs.m_dispatcher;
+ }
+ return *this;
+ }
+
+ VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate const & operator*() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_descriptorUpdateTemplate;
+ }
+
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * getDispatcher() const
+ {
+ return m_dispatcher;
+ }
+
+ private:
+ VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate m_descriptorUpdateTemplate;
+ VkDevice m_device;
+ const VkAllocationCallbacks * m_allocator;
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * m_dispatcher;
+ };
+
+ class DeviceMemory
+ {
+ public:
+ using CType = VkDeviceMemory;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eDeviceMemory;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eDeviceMemory;
+
+ public:
+ DeviceMemory(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VULKAN_HPP_NAMESPACE::MemoryAllocateInfo const & allocateInfo,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkAllocateMemory( static_cast<VkDevice>( *device ),
+ reinterpret_cast<const VkMemoryAllocateInfo *>( &allocateInfo ),
+ m_allocator,
+ reinterpret_cast<VkDeviceMemory *>( &m_deviceMemory ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, "vkAllocateMemory" );
+ }
+ }
+
+ DeviceMemory(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VkDeviceMemory deviceMemory,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_deviceMemory( deviceMemory )
+ , m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {}
+
+ ~DeviceMemory()
+ {
+ if ( m_deviceMemory )
+ {
+ getDispatcher()->vkFreeMemory( m_device, static_cast<VkDeviceMemory>( m_deviceMemory ), m_allocator );
+ }
+ }
+
+ DeviceMemory() = delete;
+ DeviceMemory( DeviceMemory const & ) = delete;
+ DeviceMemory( DeviceMemory && rhs ) VULKAN_HPP_NOEXCEPT
+ : m_deviceMemory( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_deviceMemory, {} ) )
+ , m_device( rhs.m_device )
+ , m_allocator( rhs.m_allocator )
+ , m_dispatcher( rhs.m_dispatcher )
+ {}
+ DeviceMemory & operator=( DeviceMemory const & ) = delete;
+ DeviceMemory & operator =( DeviceMemory && rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ if ( this != &rhs )
+ {
+ getDispatcher()->vkFreeMemory( m_device, static_cast<VkDeviceMemory>( m_deviceMemory ), m_allocator );
+ m_deviceMemory = VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_deviceMemory, {} );
+ m_device = rhs.m_device;
+ m_allocator = rhs.m_allocator;
+ m_dispatcher = rhs.m_dispatcher;
+ }
+ return *this;
+ }
+
+ //=== VK_VERSION_1_0 ===
+
+ VULKAN_HPP_NODISCARD void *
+ mapMemory( VULKAN_HPP_NAMESPACE::DeviceSize offset,
+ VULKAN_HPP_NAMESPACE::DeviceSize size,
+ VULKAN_HPP_NAMESPACE::MemoryMapFlags flags VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT ) const;
+
+ void unmapMemory() const VULKAN_HPP_NOEXCEPT;
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::DeviceSize getCommitment() const VULKAN_HPP_NOEXCEPT;
+
+# if defined( VK_USE_PLATFORM_WIN32_KHR )
+ //=== VK_NV_external_memory_win32 ===
+
+ VULKAN_HPP_NODISCARD HANDLE
+ getMemoryWin32HandleNV( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV handleType ) const;
+# endif /*VK_USE_PLATFORM_WIN32_KHR*/
+
+ VULKAN_HPP_NAMESPACE::DeviceMemory const & operator*() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_deviceMemory;
+ }
+
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * getDispatcher() const
+ {
+ return m_dispatcher;
+ }
+
+ private:
+ VULKAN_HPP_NAMESPACE::DeviceMemory m_deviceMemory;
+ VkDevice m_device;
+ const VkAllocationCallbacks * m_allocator;
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * m_dispatcher;
+ };
+
+ class DisplayKHR
+ {
+ public:
+ using CType = VkDisplayKHR;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eDisplayKHR;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eDisplayKHR;
+
+ public:
+ DisplayKHR( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::PhysicalDevice const & physicalDevice,
+ int32_t drmFd,
+ uint32_t connectorId )
+ : m_physicalDevice( *physicalDevice ), m_dispatcher( physicalDevice.getDispatcher() )
+ {
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkGetDrmDisplayEXT( static_cast<VkPhysicalDevice>( *physicalDevice ),
+ drmFd,
+ connectorId,
+ reinterpret_cast<VkDisplayKHR *>( &m_displayKHR ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, "vkGetDrmDisplayEXT" );
+ }
+ }
+
+# if defined( VK_USE_PLATFORM_XLIB_XRANDR_EXT )
+ DisplayKHR( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::PhysicalDevice const & physicalDevice,
+ Display & dpy,
+ RROutput rrOutput )
+ : m_physicalDevice( *physicalDevice ), m_dispatcher( physicalDevice.getDispatcher() )
+ {
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkGetRandROutputDisplayEXT( static_cast<VkPhysicalDevice>( *physicalDevice ),
+ &dpy,
+ rrOutput,
+ reinterpret_cast<VkDisplayKHR *>( &m_displayKHR ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, "vkGetRandROutputDisplayEXT" );
+ }
+ }
+# endif /*VK_USE_PLATFORM_XLIB_XRANDR_EXT*/
+
+# if defined( VK_USE_PLATFORM_WIN32_KHR )
+ DisplayKHR( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::PhysicalDevice const & physicalDevice,
+ uint32_t deviceRelativeId )
+ : m_physicalDevice( *physicalDevice ), m_dispatcher( physicalDevice.getDispatcher() )
+ {
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkGetWinrtDisplayNV( static_cast<VkPhysicalDevice>( *physicalDevice ),
+ deviceRelativeId,
+ reinterpret_cast<VkDisplayKHR *>( &m_displayKHR ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, "vkGetWinrtDisplayNV" );
+ }
+ }
+# endif /*VK_USE_PLATFORM_WIN32_KHR*/
+
+ DisplayKHR( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::PhysicalDevice const & physicalDevice,
+ VkDisplayKHR displayKHR )
+ : m_displayKHR( displayKHR )
+ , m_physicalDevice( *physicalDevice )
+ , m_dispatcher( physicalDevice.getDispatcher() )
+ {}
+
+ DisplayKHR( VkDisplayKHR displayKHR,
+ VkPhysicalDevice physicalDevice,
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::InstanceDispatcher const * dispatcher )
+ : m_displayKHR( displayKHR ), m_physicalDevice( physicalDevice ), m_dispatcher( dispatcher )
+ {}
+
+ ~DisplayKHR()
+ {
+ if ( m_displayKHR )
+ {
+ getDispatcher()->vkReleaseDisplayEXT( m_physicalDevice, static_cast<VkDisplayKHR>( m_displayKHR ) );
+ }
+ }
+
+ DisplayKHR() = delete;
+ DisplayKHR( DisplayKHR const & ) = delete;
+ DisplayKHR( DisplayKHR && rhs ) VULKAN_HPP_NOEXCEPT
+ : m_displayKHR( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_displayKHR, {} ) )
+ , m_physicalDevice( rhs.m_physicalDevice )
+ , m_dispatcher( rhs.m_dispatcher )
+ {}
+ DisplayKHR & operator=( DisplayKHR const & ) = delete;
+ DisplayKHR & operator =( DisplayKHR && rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ if ( this != &rhs )
+ {
+ getDispatcher()->vkReleaseDisplayEXT( m_physicalDevice, static_cast<VkDisplayKHR>( m_displayKHR ) );
+ m_displayKHR = VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_displayKHR, {} );
+ m_physicalDevice = rhs.m_physicalDevice;
+ m_dispatcher = rhs.m_dispatcher;
+ }
+ return *this;
+ }
+
+ //=== VK_KHR_display ===
+
+ VULKAN_HPP_NODISCARD std::vector<VULKAN_HPP_NAMESPACE::DisplayModePropertiesKHR> getModeProperties() const;
+
+ //=== VK_KHR_get_display_properties2 ===
+
+ VULKAN_HPP_NODISCARD std::vector<VULKAN_HPP_NAMESPACE::DisplayModeProperties2KHR> getModeProperties2() const;
+
+# if defined( VK_USE_PLATFORM_WIN32_KHR )
+ //=== VK_NV_acquire_winrt_display ===
+
+ void acquireWinrtNV() const;
+# endif /*VK_USE_PLATFORM_WIN32_KHR*/
+
+ VULKAN_HPP_NAMESPACE::DisplayKHR const & operator*() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_displayKHR;
+ }
+
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::InstanceDispatcher const * getDispatcher() const
+ {
+ return m_dispatcher;
+ }
+
+ private:
+ VULKAN_HPP_NAMESPACE::DisplayKHR m_displayKHR;
+ VkPhysicalDevice m_physicalDevice;
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::InstanceDispatcher const * m_dispatcher;
+ };
+
+ class DisplayKHRs : public std::vector<VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DisplayKHR>
+ {
+ public:
+ DisplayKHRs( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::PhysicalDevice const & physicalDevice,
+ uint32_t planeIndex )
+ {
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::InstanceDispatcher const * dispatcher =
+ physicalDevice.getDispatcher();
+ std::vector<VkDisplayKHR> displays;
+ uint32_t displayCount;
+ VULKAN_HPP_NAMESPACE::Result result;
+ do
+ {
+ result = static_cast<VULKAN_HPP_NAMESPACE::Result>( dispatcher->vkGetDisplayPlaneSupportedDisplaysKHR(
+ static_cast<VkPhysicalDevice>( *physicalDevice ), planeIndex, &displayCount, nullptr ) );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && displayCount )
+ {
+ displays.resize( displayCount );
+ result = static_cast<VULKAN_HPP_NAMESPACE::Result>( dispatcher->vkGetDisplayPlaneSupportedDisplaysKHR(
+ static_cast<VkPhysicalDevice>( *physicalDevice ), planeIndex, &displayCount, displays.data() ) );
+ VULKAN_HPP_ASSERT( displayCount <= displays.size() );
+ }
+ } while ( result == VULKAN_HPP_NAMESPACE::Result::eIncomplete );
+ if ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ this->reserve( displayCount );
+ for ( auto const & displayKHR : displays )
+ {
+ this->emplace_back( displayKHR, static_cast<VkPhysicalDevice>( *physicalDevice ), dispatcher );
+ }
+ }
+ else
+ {
+ throwResultException( result, "vkGetDisplayPlaneSupportedDisplaysKHR" );
+ }
+ }
+
+ DisplayKHRs() = delete;
+ DisplayKHRs( DisplayKHRs const & ) = delete;
+ DisplayKHRs( DisplayKHRs && rhs ) = default;
+ DisplayKHRs & operator=( DisplayKHRs const & ) = delete;
+ DisplayKHRs & operator=( DisplayKHRs && rhs ) = default;
+ };
+
+ class DisplayModeKHR
+ {
+ public:
+ using CType = VkDisplayModeKHR;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eDisplayModeKHR;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eDisplayModeKHR;
+
+ public:
+ DisplayModeKHR(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::PhysicalDevice const & physicalDevice,
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DisplayKHR const & display,
+ VULKAN_HPP_NAMESPACE::DisplayModeCreateInfoKHR const & createInfo,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_physicalDevice( *physicalDevice ), m_dispatcher( physicalDevice.getDispatcher() )
+ {
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkCreateDisplayModeKHR(
+ static_cast<VkPhysicalDevice>( *physicalDevice ),
+ static_cast<VkDisplayKHR>( *display ),
+ reinterpret_cast<const VkDisplayModeCreateInfoKHR *>( &createInfo ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ reinterpret_cast<VkDisplayModeKHR *>( &m_displayModeKHR ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, "vkCreateDisplayModeKHR" );
+ }
+ }
+
+ DisplayModeKHR( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::PhysicalDevice const & physicalDevice,
+ VkDisplayModeKHR displayModeKHR )
+ : m_displayModeKHR( displayModeKHR )
+ , m_physicalDevice( *physicalDevice )
+ , m_dispatcher( physicalDevice.getDispatcher() )
+ {}
+
+ DisplayModeKHR() = delete;
+ DisplayModeKHR( DisplayModeKHR const & ) = delete;
+ DisplayModeKHR( DisplayModeKHR && rhs ) VULKAN_HPP_NOEXCEPT
+ : m_displayModeKHR( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_displayModeKHR, {} ) )
+ , m_dispatcher( rhs.m_dispatcher )
+ {}
+ DisplayModeKHR & operator=( DisplayModeKHR const & ) = delete;
+ DisplayModeKHR & operator =( DisplayModeKHR && rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ if ( this != &rhs )
+ {
+ m_displayModeKHR = VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_displayModeKHR, {} );
+ m_dispatcher = rhs.m_dispatcher;
+ }
+ return *this;
+ }
+
+ //=== VK_KHR_display ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::DisplayPlaneCapabilitiesKHR
+ getDisplayPlaneCapabilities( uint32_t planeIndex ) const;
+
+ VULKAN_HPP_NAMESPACE::DisplayModeKHR const & operator*() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_displayModeKHR;
+ }
+
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::InstanceDispatcher const * getDispatcher() const
+ {
+ return m_dispatcher;
+ }
+
+ private:
+ VULKAN_HPP_NAMESPACE::DisplayModeKHR m_displayModeKHR;
+ VULKAN_HPP_NAMESPACE::PhysicalDevice m_physicalDevice;
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::InstanceDispatcher const * m_dispatcher;
+ };
+
+ class Event
+ {
+ public:
+ using CType = VkEvent;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eEvent;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eEvent;
+
+ public:
+ Event( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VULKAN_HPP_NAMESPACE::EventCreateInfo const & createInfo,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkCreateEvent( static_cast<VkDevice>( *device ),
+ reinterpret_cast<const VkEventCreateInfo *>( &createInfo ),
+ m_allocator,
+ reinterpret_cast<VkEvent *>( &m_event ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, "vkCreateEvent" );
+ }
+ }
+
+ Event( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VkEvent event,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_event( event )
+ , m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {}
+
+ ~Event()
+ {
+ if ( m_event )
+ {
+ getDispatcher()->vkDestroyEvent( m_device, static_cast<VkEvent>( m_event ), m_allocator );
+ }
+ }
+
+ Event() = delete;
+ Event( Event const & ) = delete;
+ Event( Event && rhs ) VULKAN_HPP_NOEXCEPT
+ : m_event( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_event, {} ) )
+ , m_device( rhs.m_device )
+ , m_allocator( rhs.m_allocator )
+ , m_dispatcher( rhs.m_dispatcher )
+ {}
+ Event & operator=( Event const & ) = delete;
+ Event & operator =( Event && rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ if ( this != &rhs )
+ {
+ getDispatcher()->vkDestroyEvent( m_device, static_cast<VkEvent>( m_event ), m_allocator );
+ m_event = VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_event, {} );
+ m_device = rhs.m_device;
+ m_allocator = rhs.m_allocator;
+ m_dispatcher = rhs.m_dispatcher;
+ }
+ return *this;
+ }
+
+ //=== VK_VERSION_1_0 ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::Result getStatus() const;
+
+ void set() const;
+
+ void reset() const;
+
+ VULKAN_HPP_NAMESPACE::Event const & operator*() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_event;
+ }
+
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * getDispatcher() const
+ {
+ return m_dispatcher;
+ }
+
+ private:
+ VULKAN_HPP_NAMESPACE::Event m_event;
+ VkDevice m_device;
+ const VkAllocationCallbacks * m_allocator;
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * m_dispatcher;
+ };
+
+ class Fence
+ {
+ public:
+ using CType = VkFence;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eFence;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eFence;
+
+ public:
+ Fence( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VULKAN_HPP_NAMESPACE::FenceCreateInfo const & createInfo,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkCreateFence( static_cast<VkDevice>( *device ),
+ reinterpret_cast<const VkFenceCreateInfo *>( &createInfo ),
+ m_allocator,
+ reinterpret_cast<VkFence *>( &m_fence ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, "vkCreateFence" );
+ }
+ }
+
+ Fence( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VULKAN_HPP_NAMESPACE::DeviceEventInfoEXT const & deviceEventInfo,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkRegisterDeviceEventEXT( static_cast<VkDevice>( *device ),
+ reinterpret_cast<const VkDeviceEventInfoEXT *>( &deviceEventInfo ),
+ m_allocator,
+ reinterpret_cast<VkFence *>( &m_fence ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, "vkRegisterDeviceEventEXT" );
+ }
+ }
+
+ Fence( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DisplayKHR const & display,
+ VULKAN_HPP_NAMESPACE::DisplayEventInfoEXT const & displayEventInfo,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkRegisterDisplayEventEXT(
+ static_cast<VkDevice>( *device ),
+ static_cast<VkDisplayKHR>( *display ),
+ reinterpret_cast<const VkDisplayEventInfoEXT *>( &displayEventInfo ),
+ m_allocator,
+ reinterpret_cast<VkFence *>( &m_fence ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, "vkRegisterDisplayEventEXT" );
+ }
+ }
+
+ Fence( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VkFence fence,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_fence( fence )
+ , m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {}
+
+ ~Fence()
+ {
+ if ( m_fence )
+ {
+ getDispatcher()->vkDestroyFence( m_device, static_cast<VkFence>( m_fence ), m_allocator );
+ }
+ }
+
+ Fence() = delete;
+ Fence( Fence const & ) = delete;
+ Fence( Fence && rhs ) VULKAN_HPP_NOEXCEPT
+ : m_fence( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_fence, {} ) )
+ , m_device( rhs.m_device )
+ , m_allocator( rhs.m_allocator )
+ , m_dispatcher( rhs.m_dispatcher )
+ {}
+ Fence & operator=( Fence const & ) = delete;
+ Fence & operator =( Fence && rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ if ( this != &rhs )
+ {
+ getDispatcher()->vkDestroyFence( m_device, static_cast<VkFence>( m_fence ), m_allocator );
+ m_fence = VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_fence, {} );
+ m_device = rhs.m_device;
+ m_allocator = rhs.m_allocator;
+ m_dispatcher = rhs.m_dispatcher;
+ }
+ return *this;
+ }
+
+ //=== VK_VERSION_1_0 ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::Result getStatus() const;
+
+ VULKAN_HPP_NAMESPACE::Fence const & operator*() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_fence;
+ }
+
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * getDispatcher() const
+ {
+ return m_dispatcher;
+ }
+
+ private:
+ VULKAN_HPP_NAMESPACE::Fence m_fence;
+ VkDevice m_device;
+ const VkAllocationCallbacks * m_allocator;
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * m_dispatcher;
+ };
+
+ class Framebuffer
+ {
+ public:
+ using CType = VkFramebuffer;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eFramebuffer;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eFramebuffer;
+
+ public:
+ Framebuffer( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VULKAN_HPP_NAMESPACE::FramebufferCreateInfo const & createInfo,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkCreateFramebuffer( static_cast<VkDevice>( *device ),
+ reinterpret_cast<const VkFramebufferCreateInfo *>( &createInfo ),
+ m_allocator,
+ reinterpret_cast<VkFramebuffer *>( &m_framebuffer ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, "vkCreateFramebuffer" );
+ }
+ }
+
+ Framebuffer( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VkFramebuffer framebuffer,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_framebuffer( framebuffer )
+ , m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {}
+
+ ~Framebuffer()
+ {
+ if ( m_framebuffer )
+ {
+ getDispatcher()->vkDestroyFramebuffer( m_device, static_cast<VkFramebuffer>( m_framebuffer ), m_allocator );
+ }
+ }
+
+ Framebuffer() = delete;
+ Framebuffer( Framebuffer const & ) = delete;
+ Framebuffer( Framebuffer && rhs ) VULKAN_HPP_NOEXCEPT
+ : m_framebuffer( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_framebuffer, {} ) )
+ , m_device( rhs.m_device )
+ , m_allocator( rhs.m_allocator )
+ , m_dispatcher( rhs.m_dispatcher )
+ {}
+ Framebuffer & operator=( Framebuffer const & ) = delete;
+ Framebuffer & operator =( Framebuffer && rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ if ( this != &rhs )
+ {
+ getDispatcher()->vkDestroyFramebuffer( m_device, static_cast<VkFramebuffer>( m_framebuffer ), m_allocator );
+ m_framebuffer = VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_framebuffer, {} );
+ m_device = rhs.m_device;
+ m_allocator = rhs.m_allocator;
+ m_dispatcher = rhs.m_dispatcher;
+ }
+ return *this;
+ }
+
+ VULKAN_HPP_NAMESPACE::Framebuffer const & operator*() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_framebuffer;
+ }
+
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * getDispatcher() const
+ {
+ return m_dispatcher;
+ }
+
+ private:
+ VULKAN_HPP_NAMESPACE::Framebuffer m_framebuffer;
+ VkDevice m_device;
+ const VkAllocationCallbacks * m_allocator;
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * m_dispatcher;
+ };
+
+ class Image
+ {
+ public:
+ using CType = VkImage;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eImage;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eImage;
+
+ public:
+ Image( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VULKAN_HPP_NAMESPACE::ImageCreateInfo const & createInfo,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkCreateImage( static_cast<VkDevice>( *device ),
+ reinterpret_cast<const VkImageCreateInfo *>( &createInfo ),
+ m_allocator,
+ reinterpret_cast<VkImage *>( &m_image ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, "vkCreateImage" );
+ }
+ }
+
+ Image( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VkImage image,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_image( image )
+ , m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {}
+
+ ~Image()
+ {
+ if ( m_image )
+ {
+ getDispatcher()->vkDestroyImage( m_device, static_cast<VkImage>( m_image ), m_allocator );
+ }
+ }
+
+ Image() = delete;
+ Image( Image const & ) = delete;
+ Image( Image && rhs ) VULKAN_HPP_NOEXCEPT
+ : m_image( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_image, {} ) )
+ , m_device( rhs.m_device )
+ , m_allocator( rhs.m_allocator )
+ , m_dispatcher( rhs.m_dispatcher )
+ {}
+ Image & operator=( Image const & ) = delete;
+ Image & operator =( Image && rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ if ( this != &rhs )
+ {
+ getDispatcher()->vkDestroyImage( m_device, static_cast<VkImage>( m_image ), m_allocator );
+ m_image = VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_image, {} );
+ m_device = rhs.m_device;
+ m_allocator = rhs.m_allocator;
+ m_dispatcher = rhs.m_dispatcher;
+ }
+ return *this;
+ }
+
+ //=== VK_VERSION_1_0 ===
+
+ void bindMemory( VULKAN_HPP_NAMESPACE::DeviceMemory memory, VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset ) const;
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::MemoryRequirements getMemoryRequirements() const VULKAN_HPP_NOEXCEPT;
+
+ VULKAN_HPP_NODISCARD std::vector<VULKAN_HPP_NAMESPACE::SparseImageMemoryRequirements>
+ getSparseMemoryRequirements() const VULKAN_HPP_NOEXCEPT;
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::SubresourceLayout
+ getSubresourceLayout( const ImageSubresource & subresource ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_EXT_image_drm_format_modifier ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::ImageDrmFormatModifierPropertiesEXT
+ getDrmFormatModifierPropertiesEXT() const;
+
+ VULKAN_HPP_NAMESPACE::Image const & operator*() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_image;
+ }
+
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * getDispatcher() const
+ {
+ return m_dispatcher;
+ }
+
+ private:
+ VULKAN_HPP_NAMESPACE::Image m_image;
+ VkDevice m_device;
+ const VkAllocationCallbacks * m_allocator;
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * m_dispatcher;
+ };
+
+ class ImageView
+ {
+ public:
+ using CType = VkImageView;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eImageView;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eImageView;
+
+ public:
+ ImageView( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VULKAN_HPP_NAMESPACE::ImageViewCreateInfo const & createInfo,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkCreateImageView( static_cast<VkDevice>( *device ),
+ reinterpret_cast<const VkImageViewCreateInfo *>( &createInfo ),
+ m_allocator,
+ reinterpret_cast<VkImageView *>( &m_imageView ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, "vkCreateImageView" );
+ }
+ }
+
+ ImageView( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VkImageView imageView,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_imageView( imageView )
+ , m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {}
+
+ ~ImageView()
+ {
+ if ( m_imageView )
+ {
+ getDispatcher()->vkDestroyImageView( m_device, static_cast<VkImageView>( m_imageView ), m_allocator );
+ }
+ }
+
+ ImageView() = delete;
+ ImageView( ImageView const & ) = delete;
+ ImageView( ImageView && rhs ) VULKAN_HPP_NOEXCEPT
+ : m_imageView( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_imageView, {} ) )
+ , m_device( rhs.m_device )
+ , m_allocator( rhs.m_allocator )
+ , m_dispatcher( rhs.m_dispatcher )
+ {}
+ ImageView & operator=( ImageView const & ) = delete;
+ ImageView & operator =( ImageView && rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ if ( this != &rhs )
+ {
+ getDispatcher()->vkDestroyImageView( m_device, static_cast<VkImageView>( m_imageView ), m_allocator );
+ m_imageView = VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_imageView, {} );
+ m_device = rhs.m_device;
+ m_allocator = rhs.m_allocator;
+ m_dispatcher = rhs.m_dispatcher;
+ }
+ return *this;
+ }
+
+ //=== VK_NVX_image_view_handle ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::ImageViewAddressPropertiesNVX getAddressNVX() const;
+
+ VULKAN_HPP_NAMESPACE::ImageView const & operator*() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_imageView;
+ }
+
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * getDispatcher() const
+ {
+ return m_dispatcher;
+ }
+
+ private:
+ VULKAN_HPP_NAMESPACE::ImageView m_imageView;
+ VkDevice m_device;
+ const VkAllocationCallbacks * m_allocator;
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * m_dispatcher;
+ };
+
+ class IndirectCommandsLayoutNV
+ {
+ public:
+ using CType = VkIndirectCommandsLayoutNV;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eIndirectCommandsLayoutNV;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eUnknown;
+
+ public:
+ IndirectCommandsLayoutNV(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutCreateInfoNV const & createInfo,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkCreateIndirectCommandsLayoutNV(
+ static_cast<VkDevice>( *device ),
+ reinterpret_cast<const VkIndirectCommandsLayoutCreateInfoNV *>( &createInfo ),
+ m_allocator,
+ reinterpret_cast<VkIndirectCommandsLayoutNV *>( &m_indirectCommandsLayoutNV ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, "vkCreateIndirectCommandsLayoutNV" );
+ }
+ }
+
+ IndirectCommandsLayoutNV(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VkIndirectCommandsLayoutNV indirectCommandsLayoutNV,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_indirectCommandsLayoutNV( indirectCommandsLayoutNV )
+ , m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {}
+
+ ~IndirectCommandsLayoutNV()
+ {
+ if ( m_indirectCommandsLayoutNV )
+ {
+ getDispatcher()->vkDestroyIndirectCommandsLayoutNV(
+ m_device, static_cast<VkIndirectCommandsLayoutNV>( m_indirectCommandsLayoutNV ), m_allocator );
+ }
+ }
+
+ IndirectCommandsLayoutNV() = delete;
+ IndirectCommandsLayoutNV( IndirectCommandsLayoutNV const & ) = delete;
+ IndirectCommandsLayoutNV( IndirectCommandsLayoutNV && rhs ) VULKAN_HPP_NOEXCEPT
+ : m_indirectCommandsLayoutNV(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_indirectCommandsLayoutNV, {} ) )
+ , m_device( rhs.m_device )
+ , m_allocator( rhs.m_allocator )
+ , m_dispatcher( rhs.m_dispatcher )
+ {}
+ IndirectCommandsLayoutNV & operator=( IndirectCommandsLayoutNV const & ) = delete;
+ IndirectCommandsLayoutNV & operator=( IndirectCommandsLayoutNV && rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ if ( this != &rhs )
+ {
+ getDispatcher()->vkDestroyIndirectCommandsLayoutNV(
+ m_device, static_cast<VkIndirectCommandsLayoutNV>( m_indirectCommandsLayoutNV ), m_allocator );
+ m_indirectCommandsLayoutNV =
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_indirectCommandsLayoutNV, {} );
+ m_device = rhs.m_device;
+ m_allocator = rhs.m_allocator;
+ m_dispatcher = rhs.m_dispatcher;
+ }
+ return *this;
+ }
+
+ VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV const & operator*() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_indirectCommandsLayoutNV;
+ }
+
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * getDispatcher() const
+ {
+ return m_dispatcher;
+ }
+
+ private:
+ VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV m_indirectCommandsLayoutNV;
+ VkDevice m_device;
+ const VkAllocationCallbacks * m_allocator;
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * m_dispatcher;
+ };
+
+ class PerformanceConfigurationINTEL
+ {
+ public:
+ using CType = VkPerformanceConfigurationINTEL;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::ePerformanceConfigurationINTEL;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eUnknown;
+
+ public:
+ PerformanceConfigurationINTEL(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VULKAN_HPP_NAMESPACE::PerformanceConfigurationAcquireInfoINTEL const & acquireInfo )
+ : m_device( *device ), m_dispatcher( device.getDispatcher() )
+ {
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkAcquirePerformanceConfigurationINTEL(
+ static_cast<VkDevice>( *device ),
+ reinterpret_cast<const VkPerformanceConfigurationAcquireInfoINTEL *>( &acquireInfo ),
+ reinterpret_cast<VkPerformanceConfigurationINTEL *>( &m_performanceConfigurationINTEL ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, "vkAcquirePerformanceConfigurationINTEL" );
+ }
+ }
+
+ PerformanceConfigurationINTEL( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VkPerformanceConfigurationINTEL performanceConfigurationINTEL )
+ : m_performanceConfigurationINTEL( performanceConfigurationINTEL )
+ , m_device( *device )
+ , m_dispatcher( device.getDispatcher() )
+ {}
+
+ ~PerformanceConfigurationINTEL()
+ {
+ if ( m_performanceConfigurationINTEL )
+ {
+ getDispatcher()->vkReleasePerformanceConfigurationINTEL(
+ m_device, static_cast<VkPerformanceConfigurationINTEL>( m_performanceConfigurationINTEL ) );
+ }
+ }
+
+ PerformanceConfigurationINTEL() = delete;
+ PerformanceConfigurationINTEL( PerformanceConfigurationINTEL const & ) = delete;
+ PerformanceConfigurationINTEL( PerformanceConfigurationINTEL && rhs ) VULKAN_HPP_NOEXCEPT
+ : m_performanceConfigurationINTEL(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_performanceConfigurationINTEL, {} ) )
+ , m_device( rhs.m_device )
+ , m_dispatcher( rhs.m_dispatcher )
+ {}
+ PerformanceConfigurationINTEL & operator=( PerformanceConfigurationINTEL const & ) = delete;
+ PerformanceConfigurationINTEL & operator=( PerformanceConfigurationINTEL && rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ if ( this != &rhs )
+ {
+ getDispatcher()->vkReleasePerformanceConfigurationINTEL(
+ m_device, static_cast<VkPerformanceConfigurationINTEL>( m_performanceConfigurationINTEL ) );
+ m_performanceConfigurationINTEL =
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_performanceConfigurationINTEL, {} );
+ m_device = rhs.m_device;
+ m_dispatcher = rhs.m_dispatcher;
+ }
+ return *this;
+ }
+
+ VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL const & operator*() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_performanceConfigurationINTEL;
+ }
+
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * getDispatcher() const
+ {
+ return m_dispatcher;
+ }
+
+ private:
+ VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL m_performanceConfigurationINTEL;
+ VkDevice m_device;
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * m_dispatcher;
+ };
+
+ class PipelineCache
+ {
+ public:
+ using CType = VkPipelineCache;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::ePipelineCache;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::ePipelineCache;
+
+ public:
+ PipelineCache(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VULKAN_HPP_NAMESPACE::PipelineCacheCreateInfo const & createInfo,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkCreatePipelineCache( static_cast<VkDevice>( *device ),
+ reinterpret_cast<const VkPipelineCacheCreateInfo *>( &createInfo ),
+ m_allocator,
+ reinterpret_cast<VkPipelineCache *>( &m_pipelineCache ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, "vkCreatePipelineCache" );
+ }
+ }
+
+ PipelineCache(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VkPipelineCache pipelineCache,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_pipelineCache( pipelineCache )
+ , m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {}
+
+ ~PipelineCache()
+ {
+ if ( m_pipelineCache )
+ {
+ getDispatcher()->vkDestroyPipelineCache(
+ m_device, static_cast<VkPipelineCache>( m_pipelineCache ), m_allocator );
+ }
+ }
+
+ PipelineCache() = delete;
+ PipelineCache( PipelineCache const & ) = delete;
+ PipelineCache( PipelineCache && rhs ) VULKAN_HPP_NOEXCEPT
+ : m_pipelineCache( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_pipelineCache, {} ) )
+ , m_device( rhs.m_device )
+ , m_allocator( rhs.m_allocator )
+ , m_dispatcher( rhs.m_dispatcher )
+ {}
+ PipelineCache & operator=( PipelineCache const & ) = delete;
+ PipelineCache & operator =( PipelineCache && rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ if ( this != &rhs )
+ {
+ getDispatcher()->vkDestroyPipelineCache(
+ m_device, static_cast<VkPipelineCache>( m_pipelineCache ), m_allocator );
+ m_pipelineCache = VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_pipelineCache, {} );
+ m_device = rhs.m_device;
+ m_allocator = rhs.m_allocator;
+ m_dispatcher = rhs.m_dispatcher;
+ }
+ return *this;
+ }
+
+ //=== VK_VERSION_1_0 ===
+
+ VULKAN_HPP_NODISCARD std::vector<uint8_t> getData() const;
+
+ void merge( ArrayProxy<const VULKAN_HPP_NAMESPACE::PipelineCache> const & srcCaches ) const;
+
+ VULKAN_HPP_NAMESPACE::PipelineCache const & operator*() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_pipelineCache;
+ }
+
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * getDispatcher() const
+ {
+ return m_dispatcher;
+ }
+
+ private:
+ VULKAN_HPP_NAMESPACE::PipelineCache m_pipelineCache;
+ VkDevice m_device;
+ const VkAllocationCallbacks * m_allocator;
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * m_dispatcher;
+ };
+
+ class Pipeline
+ {
+ public:
+ using CType = VkPipeline;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::ePipeline;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::ePipeline;
+
+ public:
+ Pipeline(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::PipelineCache> const &
+ pipelineCache,
+ VULKAN_HPP_NAMESPACE::ComputePipelineCreateInfo const & createInfo,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {
+ m_constructorSuccessCode = static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkCreateComputePipelines(
+ static_cast<VkDevice>( *device ),
+ pipelineCache ? static_cast<VkPipelineCache>( **pipelineCache ) : 0,
+ 1,
+ reinterpret_cast<const VkComputePipelineCreateInfo *>( &createInfo ),
+ m_allocator,
+ reinterpret_cast<VkPipeline *>( &m_pipeline ) ) );
+ if ( ( m_constructorSuccessCode != VULKAN_HPP_NAMESPACE::Result::eSuccess ) &&
+ ( m_constructorSuccessCode != VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT ) )
+ {
+ throwResultException( m_constructorSuccessCode, "vkCreateComputePipelines" );
+ }
+ }
+
+ Pipeline(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::PipelineCache> const &
+ pipelineCache,
+ VULKAN_HPP_NAMESPACE::GraphicsPipelineCreateInfo const & createInfo,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {
+ m_constructorSuccessCode =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkCreateGraphicsPipelines(
+ static_cast<VkDevice>( *device ),
+ pipelineCache ? static_cast<VkPipelineCache>( **pipelineCache ) : 0,
+ 1,
+ reinterpret_cast<const VkGraphicsPipelineCreateInfo *>( &createInfo ),
+ m_allocator,
+ reinterpret_cast<VkPipeline *>( &m_pipeline ) ) );
+ if ( ( m_constructorSuccessCode != VULKAN_HPP_NAMESPACE::Result::eSuccess ) &&
+ ( m_constructorSuccessCode != VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT ) )
+ {
+ throwResultException( m_constructorSuccessCode, "vkCreateGraphicsPipelines" );
+ }
+ }
+
+ Pipeline(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VULKAN_HPP_NAMESPACE::Optional<
+ const VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeferredOperationKHR> const & deferredOperation,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::PipelineCache> const &
+ pipelineCache,
+ VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoKHR const & createInfo,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {
+ m_constructorSuccessCode =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkCreateRayTracingPipelinesKHR(
+ static_cast<VkDevice>( *device ),
+ deferredOperation ? static_cast<VkDeferredOperationKHR>( **deferredOperation ) : 0,
+ pipelineCache ? static_cast<VkPipelineCache>( **pipelineCache ) : 0,
+ 1,
+ reinterpret_cast<const VkRayTracingPipelineCreateInfoKHR *>( &createInfo ),
+ m_allocator,
+ reinterpret_cast<VkPipeline *>( &m_pipeline ) ) );
+ if ( ( m_constructorSuccessCode != VULKAN_HPP_NAMESPACE::Result::eSuccess ) &&
+ ( m_constructorSuccessCode != VULKAN_HPP_NAMESPACE::Result::eOperationDeferredKHR ) &&
+ ( m_constructorSuccessCode != VULKAN_HPP_NAMESPACE::Result::eOperationNotDeferredKHR ) &&
+ ( m_constructorSuccessCode != VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT ) )
+ {
+ throwResultException( m_constructorSuccessCode, "vkCreateRayTracingPipelinesKHR" );
+ }
+ }
+
+ Pipeline(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::PipelineCache> const &
+ pipelineCache,
+ VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoNV const & createInfo,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {
+ m_constructorSuccessCode =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkCreateRayTracingPipelinesNV(
+ static_cast<VkDevice>( *device ),
+ pipelineCache ? static_cast<VkPipelineCache>( **pipelineCache ) : 0,
+ 1,
+ reinterpret_cast<const VkRayTracingPipelineCreateInfoNV *>( &createInfo ),
+ m_allocator,
+ reinterpret_cast<VkPipeline *>( &m_pipeline ) ) );
+ if ( ( m_constructorSuccessCode != VULKAN_HPP_NAMESPACE::Result::eSuccess ) &&
+ ( m_constructorSuccessCode != VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT ) )
+ {
+ throwResultException( m_constructorSuccessCode, "vkCreateRayTracingPipelinesNV" );
+ }
+ }
+
+ Pipeline( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VkPipeline pipeline,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_pipeline( pipeline )
+ , m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {}
+
+ Pipeline( VkPipeline pipeline,
+ VkDevice device,
+ VkAllocationCallbacks const * allocator,
+ VULKAN_HPP_NAMESPACE::Result successCode,
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * dispatcher )
+ : m_pipeline( pipeline )
+ , m_device( device )
+ , m_allocator( allocator )
+ , m_constructorSuccessCode( successCode )
+ , m_dispatcher( dispatcher )
+ {}
+
+ ~Pipeline()
+ {
+ if ( m_pipeline )
+ {
+ getDispatcher()->vkDestroyPipeline( m_device, static_cast<VkPipeline>( m_pipeline ), m_allocator );
+ }
+ }
+
+ Pipeline() = delete;
+ Pipeline( Pipeline const & ) = delete;
+ Pipeline( Pipeline && rhs ) VULKAN_HPP_NOEXCEPT
+ : m_pipeline( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_pipeline, {} ) )
+ , m_device( rhs.m_device )
+ , m_allocator( rhs.m_allocator )
+ , m_dispatcher( rhs.m_dispatcher )
+ {}
+ Pipeline & operator=( Pipeline const & ) = delete;
+ Pipeline & operator =( Pipeline && rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ if ( this != &rhs )
+ {
+ getDispatcher()->vkDestroyPipeline( m_device, static_cast<VkPipeline>( m_pipeline ), m_allocator );
+ m_pipeline = VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_pipeline, {} );
+ m_device = rhs.m_device;
+ m_allocator = rhs.m_allocator;
+ m_dispatcher = rhs.m_dispatcher;
+ }
+ return *this;
+ }
+
+ //=== VK_AMD_shader_info ===
+
+ VULKAN_HPP_NODISCARD std::vector<uint8_t>
+ getShaderInfoAMD( VULKAN_HPP_NAMESPACE::ShaderStageFlagBits shaderStage,
+ VULKAN_HPP_NAMESPACE::ShaderInfoTypeAMD infoType ) const;
+
+ //=== VK_NV_ray_tracing ===
+
+ template <typename T>
+ VULKAN_HPP_NODISCARD std::vector<T>
+ getRayTracingShaderGroupHandlesNV( uint32_t firstGroup, uint32_t groupCount, size_t dataSize ) const;
+
+ template <typename T>
+ VULKAN_HPP_NODISCARD T getRayTracingShaderGroupHandleNV( uint32_t firstGroup, uint32_t groupCount ) const;
+
+ void compileDeferredNV( uint32_t shader ) const;
+
+ //=== VK_KHR_ray_tracing_pipeline ===
+
+ template <typename T>
+ VULKAN_HPP_NODISCARD std::vector<T>
+ getRayTracingShaderGroupHandlesKHR( uint32_t firstGroup, uint32_t groupCount, size_t dataSize ) const;
+
+ template <typename T>
+ VULKAN_HPP_NODISCARD T getRayTracingShaderGroupHandleKHR( uint32_t firstGroup, uint32_t groupCount ) const;
+
+ template <typename T>
+ VULKAN_HPP_NODISCARD std::vector<T> getRayTracingCaptureReplayShaderGroupHandlesKHR( uint32_t firstGroup,
+ uint32_t groupCount,
+ size_t dataSize ) const;
+
+ template <typename T>
+ VULKAN_HPP_NODISCARD T getRayTracingCaptureReplayShaderGroupHandleKHR( uint32_t firstGroup,
+ uint32_t groupCount ) const;
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::DeviceSize getRayTracingShaderGroupStackSizeKHR(
+ uint32_t group, VULKAN_HPP_NAMESPACE::ShaderGroupShaderKHR groupShader ) const VULKAN_HPP_NOEXCEPT;
+
+ VULKAN_HPP_NAMESPACE::Pipeline const & operator*() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_pipeline;
+ }
+
+ VULKAN_HPP_NAMESPACE::Result getConstructorSuccessCode() const
+ {
+ return m_constructorSuccessCode;
+ }
+
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * getDispatcher() const
+ {
+ return m_dispatcher;
+ }
+
+ private:
+ VULKAN_HPP_NAMESPACE::Pipeline m_pipeline;
+ VkDevice m_device;
+ const VkAllocationCallbacks * m_allocator;
+ VULKAN_HPP_NAMESPACE::Result m_constructorSuccessCode;
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * m_dispatcher;
+ };
+
+ class Pipelines : public std::vector<VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Pipeline>
+ {
+ public:
+ Pipelines(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::PipelineCache> const &
+ pipelineCache,
+ VULKAN_HPP_NAMESPACE::ArrayProxy<VULKAN_HPP_NAMESPACE::ComputePipelineCreateInfo> const & createInfos,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ {
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * dispatcher = device.getDispatcher();
+ std::vector<VkPipeline> pipelines( createInfos.size() );
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( dispatcher->vkCreateComputePipelines(
+ static_cast<VkDevice>( *device ),
+ pipelineCache ? static_cast<VkPipelineCache>( **pipelineCache ) : 0,
+ createInfos.size(),
+ reinterpret_cast<const VkComputePipelineCreateInfo *>( createInfos.data() ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ pipelines.data() ) );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) ||
+ ( result == VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT ) )
+ {
+ this->reserve( createInfos.size() );
+ for ( auto const & pipeline : pipelines )
+ {
+ this->emplace_back( pipeline,
+ static_cast<VkDevice>( *device ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ result,
+ dispatcher );
+ }
+ }
+ else
+ {
+ throwResultException( result, "vkCreateComputePipelines" );
+ }
+ }
+
+ Pipelines(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::PipelineCache> const &
+ pipelineCache,
+ VULKAN_HPP_NAMESPACE::ArrayProxy<VULKAN_HPP_NAMESPACE::GraphicsPipelineCreateInfo> const & createInfos,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ {
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * dispatcher = device.getDispatcher();
+ std::vector<VkPipeline> pipelines( createInfos.size() );
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( dispatcher->vkCreateGraphicsPipelines(
+ static_cast<VkDevice>( *device ),
+ pipelineCache ? static_cast<VkPipelineCache>( **pipelineCache ) : 0,
+ createInfos.size(),
+ reinterpret_cast<const VkGraphicsPipelineCreateInfo *>( createInfos.data() ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ pipelines.data() ) );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) ||
+ ( result == VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT ) )
+ {
+ this->reserve( createInfos.size() );
+ for ( auto const & pipeline : pipelines )
+ {
+ this->emplace_back( pipeline,
+ static_cast<VkDevice>( *device ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ result,
+ dispatcher );
+ }
+ }
+ else
+ {
+ throwResultException( result, "vkCreateGraphicsPipelines" );
+ }
+ }
+
+ Pipelines(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VULKAN_HPP_NAMESPACE::Optional<
+ const VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeferredOperationKHR> const & deferredOperation,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::PipelineCache> const &
+ pipelineCache,
+ VULKAN_HPP_NAMESPACE::ArrayProxy<VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoKHR> const & createInfos,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ {
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * dispatcher = device.getDispatcher();
+ std::vector<VkPipeline> pipelines( createInfos.size() );
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( dispatcher->vkCreateRayTracingPipelinesKHR(
+ static_cast<VkDevice>( *device ),
+ deferredOperation ? static_cast<VkDeferredOperationKHR>( **deferredOperation ) : 0,
+ pipelineCache ? static_cast<VkPipelineCache>( **pipelineCache ) : 0,
+ createInfos.size(),
+ reinterpret_cast<const VkRayTracingPipelineCreateInfoKHR *>( createInfos.data() ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ pipelines.data() ) );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) ||
+ ( result == VULKAN_HPP_NAMESPACE::Result::eOperationDeferredKHR ) ||
+ ( result == VULKAN_HPP_NAMESPACE::Result::eOperationNotDeferredKHR ) ||
+ ( result == VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT ) )
+ {
+ this->reserve( createInfos.size() );
+ for ( auto const & pipeline : pipelines )
+ {
+ this->emplace_back( pipeline,
+ static_cast<VkDevice>( *device ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ result,
+ dispatcher );
+ }
+ }
+ else
+ {
+ throwResultException( result, "vkCreateRayTracingPipelinesKHR" );
+ }
+ }
+
+ Pipelines(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::PipelineCache> const &
+ pipelineCache,
+ VULKAN_HPP_NAMESPACE::ArrayProxy<VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoNV> const & createInfos,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ {
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * dispatcher = device.getDispatcher();
+ std::vector<VkPipeline> pipelines( createInfos.size() );
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( dispatcher->vkCreateRayTracingPipelinesNV(
+ static_cast<VkDevice>( *device ),
+ pipelineCache ? static_cast<VkPipelineCache>( **pipelineCache ) : 0,
+ createInfos.size(),
+ reinterpret_cast<const VkRayTracingPipelineCreateInfoNV *>( createInfos.data() ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ pipelines.data() ) );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) ||
+ ( result == VULKAN_HPP_NAMESPACE::Result::ePipelineCompileRequiredEXT ) )
+ {
+ this->reserve( createInfos.size() );
+ for ( auto const & pipeline : pipelines )
+ {
+ this->emplace_back( pipeline,
+ static_cast<VkDevice>( *device ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ result,
+ dispatcher );
+ }
+ }
+ else
+ {
+ throwResultException( result, "vkCreateRayTracingPipelinesNV" );
+ }
+ }
+
+ Pipelines() = delete;
+ Pipelines( Pipelines const & ) = delete;
+ Pipelines( Pipelines && rhs ) = default;
+ Pipelines & operator=( Pipelines const & ) = delete;
+ Pipelines & operator=( Pipelines && rhs ) = default;
+ };
+
+ class PipelineLayout
+ {
+ public:
+ using CType = VkPipelineLayout;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::ePipelineLayout;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::ePipelineLayout;
+
+ public:
+ PipelineLayout(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VULKAN_HPP_NAMESPACE::PipelineLayoutCreateInfo const & createInfo,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkCreatePipelineLayout( static_cast<VkDevice>( *device ),
+ reinterpret_cast<const VkPipelineLayoutCreateInfo *>( &createInfo ),
+ m_allocator,
+ reinterpret_cast<VkPipelineLayout *>( &m_pipelineLayout ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, "vkCreatePipelineLayout" );
+ }
+ }
+
+ PipelineLayout(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VkPipelineLayout pipelineLayout,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_pipelineLayout( pipelineLayout )
+ , m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {}
+
+ ~PipelineLayout()
+ {
+ if ( m_pipelineLayout )
+ {
+ getDispatcher()->vkDestroyPipelineLayout(
+ m_device, static_cast<VkPipelineLayout>( m_pipelineLayout ), m_allocator );
+ }
+ }
+
+ PipelineLayout() = delete;
+ PipelineLayout( PipelineLayout const & ) = delete;
+ PipelineLayout( PipelineLayout && rhs ) VULKAN_HPP_NOEXCEPT
+ : m_pipelineLayout( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_pipelineLayout, {} ) )
+ , m_device( rhs.m_device )
+ , m_allocator( rhs.m_allocator )
+ , m_dispatcher( rhs.m_dispatcher )
+ {}
+ PipelineLayout & operator=( PipelineLayout const & ) = delete;
+ PipelineLayout & operator =( PipelineLayout && rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ if ( this != &rhs )
+ {
+ getDispatcher()->vkDestroyPipelineLayout(
+ m_device, static_cast<VkPipelineLayout>( m_pipelineLayout ), m_allocator );
+ m_pipelineLayout = VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_pipelineLayout, {} );
+ m_device = rhs.m_device;
+ m_allocator = rhs.m_allocator;
+ m_dispatcher = rhs.m_dispatcher;
+ }
+ return *this;
+ }
+
+ VULKAN_HPP_NAMESPACE::PipelineLayout const & operator*() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_pipelineLayout;
+ }
+
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * getDispatcher() const
+ {
+ return m_dispatcher;
+ }
+
+ private:
+ VULKAN_HPP_NAMESPACE::PipelineLayout m_pipelineLayout;
+ VkDevice m_device;
+ const VkAllocationCallbacks * m_allocator;
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * m_dispatcher;
+ };
+
+ class PrivateDataSlotEXT
+ {
+ public:
+ using CType = VkPrivateDataSlotEXT;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::ePrivateDataSlotEXT;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eUnknown;
+
+ public:
+ PrivateDataSlotEXT(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VULKAN_HPP_NAMESPACE::PrivateDataSlotCreateInfoEXT const & createInfo,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkCreatePrivateDataSlotEXT(
+ static_cast<VkDevice>( *device ),
+ reinterpret_cast<const VkPrivateDataSlotCreateInfoEXT *>( &createInfo ),
+ m_allocator,
+ reinterpret_cast<VkPrivateDataSlotEXT *>( &m_privateDataSlotEXT ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, "vkCreatePrivateDataSlotEXT" );
+ }
+ }
+
+ PrivateDataSlotEXT(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VkPrivateDataSlotEXT privateDataSlotEXT,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_privateDataSlotEXT( privateDataSlotEXT )
+ , m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {}
+
+ ~PrivateDataSlotEXT()
+ {
+ if ( m_privateDataSlotEXT )
+ {
+ getDispatcher()->vkDestroyPrivateDataSlotEXT(
+ m_device, static_cast<VkPrivateDataSlotEXT>( m_privateDataSlotEXT ), m_allocator );
+ }
+ }
+
+ PrivateDataSlotEXT() = delete;
+ PrivateDataSlotEXT( PrivateDataSlotEXT const & ) = delete;
+ PrivateDataSlotEXT( PrivateDataSlotEXT && rhs ) VULKAN_HPP_NOEXCEPT
+ : m_privateDataSlotEXT( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_privateDataSlotEXT,
+ {} ) )
+ , m_device( rhs.m_device )
+ , m_allocator( rhs.m_allocator )
+ , m_dispatcher( rhs.m_dispatcher )
+ {}
+ PrivateDataSlotEXT & operator=( PrivateDataSlotEXT const & ) = delete;
+ PrivateDataSlotEXT & operator =( PrivateDataSlotEXT && rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ if ( this != &rhs )
+ {
+ getDispatcher()->vkDestroyPrivateDataSlotEXT(
+ m_device, static_cast<VkPrivateDataSlotEXT>( m_privateDataSlotEXT ), m_allocator );
+ m_privateDataSlotEXT =
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_privateDataSlotEXT, {} );
+ m_device = rhs.m_device;
+ m_allocator = rhs.m_allocator;
+ m_dispatcher = rhs.m_dispatcher;
+ }
+ return *this;
+ }
+
+ VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT const & operator*() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_privateDataSlotEXT;
+ }
+
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * getDispatcher() const
+ {
+ return m_dispatcher;
+ }
+
+ private:
+ VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT m_privateDataSlotEXT;
+ VkDevice m_device;
+ const VkAllocationCallbacks * m_allocator;
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * m_dispatcher;
+ };
+
+ class QueryPool
+ {
+ public:
+ using CType = VkQueryPool;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eQueryPool;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eQueryPool;
+
+ public:
+ QueryPool( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VULKAN_HPP_NAMESPACE::QueryPoolCreateInfo const & createInfo,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkCreateQueryPool( static_cast<VkDevice>( *device ),
+ reinterpret_cast<const VkQueryPoolCreateInfo *>( &createInfo ),
+ m_allocator,
+ reinterpret_cast<VkQueryPool *>( &m_queryPool ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, "vkCreateQueryPool" );
+ }
+ }
+
+ QueryPool( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VkQueryPool queryPool,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_queryPool( queryPool )
+ , m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {}
+
+ ~QueryPool()
+ {
+ if ( m_queryPool )
+ {
+ getDispatcher()->vkDestroyQueryPool( m_device, static_cast<VkQueryPool>( m_queryPool ), m_allocator );
+ }
+ }
+
+ QueryPool() = delete;
+ QueryPool( QueryPool const & ) = delete;
+ QueryPool( QueryPool && rhs ) VULKAN_HPP_NOEXCEPT
+ : m_queryPool( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_queryPool, {} ) )
+ , m_device( rhs.m_device )
+ , m_allocator( rhs.m_allocator )
+ , m_dispatcher( rhs.m_dispatcher )
+ {}
+ QueryPool & operator=( QueryPool const & ) = delete;
+ QueryPool & operator =( QueryPool && rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ if ( this != &rhs )
+ {
+ getDispatcher()->vkDestroyQueryPool( m_device, static_cast<VkQueryPool>( m_queryPool ), m_allocator );
+ m_queryPool = VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_queryPool, {} );
+ m_device = rhs.m_device;
+ m_allocator = rhs.m_allocator;
+ m_dispatcher = rhs.m_dispatcher;
+ }
+ return *this;
+ }
+
+ //=== VK_VERSION_1_0 ===
+
+ template <typename T>
+ VULKAN_HPP_NODISCARD std::pair<VULKAN_HPP_NAMESPACE::Result, std::vector<T>>
+ getResults( uint32_t firstQuery,
+ uint32_t queryCount,
+ size_t dataSize,
+ VULKAN_HPP_NAMESPACE::DeviceSize stride,
+ VULKAN_HPP_NAMESPACE::QueryResultFlags flags VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT ) const;
+
+ template <typename T>
+ VULKAN_HPP_NODISCARD std::pair<VULKAN_HPP_NAMESPACE::Result, T>
+ getResult( uint32_t firstQuery,
+ uint32_t queryCount,
+ VULKAN_HPP_NAMESPACE::DeviceSize stride,
+ VULKAN_HPP_NAMESPACE::QueryResultFlags flags VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT ) const;
+
+ //=== VK_VERSION_1_2 ===
+
+ void reset( uint32_t firstQuery, uint32_t queryCount ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_EXT_host_query_reset ===
+
+ void resetEXT( uint32_t firstQuery, uint32_t queryCount ) const VULKAN_HPP_NOEXCEPT;
+
+ VULKAN_HPP_NAMESPACE::QueryPool const & operator*() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_queryPool;
+ }
+
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * getDispatcher() const
+ {
+ return m_dispatcher;
+ }
+
+ private:
+ VULKAN_HPP_NAMESPACE::QueryPool m_queryPool;
+ VkDevice m_device;
+ const VkAllocationCallbacks * m_allocator;
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * m_dispatcher;
+ };
+
+ class Queue
+ {
+ public:
+ using CType = VkQueue;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eQueue;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eQueue;
+
+ public:
+ Queue( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ uint32_t queueFamilyIndex,
+ uint32_t queueIndex )
+ : m_dispatcher( device.getDispatcher() )
+ {
+ getDispatcher()->vkGetDeviceQueue(
+ static_cast<VkDevice>( *device ), queueFamilyIndex, queueIndex, reinterpret_cast<VkQueue *>( &m_queue ) );
+ }
+
+ Queue( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VULKAN_HPP_NAMESPACE::DeviceQueueInfo2 const & queueInfo )
+ : m_dispatcher( device.getDispatcher() )
+ {
+ getDispatcher()->vkGetDeviceQueue2( static_cast<VkDevice>( *device ),
+ reinterpret_cast<const VkDeviceQueueInfo2 *>( &queueInfo ),
+ reinterpret_cast<VkQueue *>( &m_queue ) );
+ }
+
+ Queue( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device, VkQueue queue )
+ : m_queue( queue ), m_dispatcher( device.getDispatcher() )
+ {}
+
+ Queue() = delete;
+ Queue( Queue const & ) = delete;
+ Queue( Queue && rhs ) VULKAN_HPP_NOEXCEPT
+ : m_queue( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_queue, {} ) )
+ , m_dispatcher( rhs.m_dispatcher )
+ {}
+ Queue & operator=( Queue const & ) = delete;
+ Queue & operator =( Queue && rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ if ( this != &rhs )
+ {
+ m_queue = VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_queue, {} );
+ m_dispatcher = rhs.m_dispatcher;
+ }
+ return *this;
+ }
+
+ //=== VK_VERSION_1_0 ===
+
+ void submit( ArrayProxy<const VULKAN_HPP_NAMESPACE::SubmitInfo> const & submits,
+ VULKAN_HPP_NAMESPACE::Fence fence VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT ) const;
+
+ void waitIdle() const;
+
+ void bindSparse( ArrayProxy<const VULKAN_HPP_NAMESPACE::BindSparseInfo> const & bindInfo,
+ VULKAN_HPP_NAMESPACE::Fence fence VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT ) const;
+
+ //=== VK_KHR_swapchain ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::Result presentKHR( const PresentInfoKHR & presentInfo ) const;
+
+ //=== VK_EXT_debug_utils ===
+
+ void beginDebugUtilsLabelEXT( const DebugUtilsLabelEXT & labelInfo ) const VULKAN_HPP_NOEXCEPT;
+
+ void endDebugUtilsLabelEXT() const VULKAN_HPP_NOEXCEPT;
+
+ void insertDebugUtilsLabelEXT( const DebugUtilsLabelEXT & labelInfo ) const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_NV_device_diagnostic_checkpoints ===
+
+ VULKAN_HPP_NODISCARD std::vector<VULKAN_HPP_NAMESPACE::CheckpointDataNV>
+ getCheckpointDataNV() const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_INTEL_performance_query ===
+
+ void setPerformanceConfigurationINTEL( VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL configuration ) const;
+
+ //=== VK_KHR_synchronization2 ===
+
+ void submit2KHR( ArrayProxy<const VULKAN_HPP_NAMESPACE::SubmitInfo2KHR> const & submits,
+ VULKAN_HPP_NAMESPACE::Fence fence VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT ) const;
+
+ VULKAN_HPP_NODISCARD std::vector<VULKAN_HPP_NAMESPACE::CheckpointData2NV>
+ getCheckpointData2NV() const VULKAN_HPP_NOEXCEPT;
+
+ VULKAN_HPP_NAMESPACE::Queue const & operator*() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_queue;
+ }
+
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * getDispatcher() const
+ {
+ return m_dispatcher;
+ }
+
+ private:
+ VULKAN_HPP_NAMESPACE::Queue m_queue;
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * m_dispatcher;
+ };
+
+ class RenderPass
+ {
+ public:
+ using CType = VkRenderPass;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eRenderPass;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eRenderPass;
+
+ public:
+ RenderPass( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VULKAN_HPP_NAMESPACE::RenderPassCreateInfo const & createInfo,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkCreateRenderPass( static_cast<VkDevice>( *device ),
+ reinterpret_cast<const VkRenderPassCreateInfo *>( &createInfo ),
+ m_allocator,
+ reinterpret_cast<VkRenderPass *>( &m_renderPass ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, "vkCreateRenderPass" );
+ }
+ }
+
+ RenderPass( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VULKAN_HPP_NAMESPACE::RenderPassCreateInfo2 const & createInfo,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkCreateRenderPass2( static_cast<VkDevice>( *device ),
+ reinterpret_cast<const VkRenderPassCreateInfo2 *>( &createInfo ),
+ m_allocator,
+ reinterpret_cast<VkRenderPass *>( &m_renderPass ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, "vkCreateRenderPass2" );
+ }
+ }
+
+ RenderPass( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VkRenderPass renderPass,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_renderPass( renderPass )
+ , m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {}
+
+ ~RenderPass()
+ {
+ if ( m_renderPass )
+ {
+ getDispatcher()->vkDestroyRenderPass( m_device, static_cast<VkRenderPass>( m_renderPass ), m_allocator );
+ }
+ }
+
+ RenderPass() = delete;
+ RenderPass( RenderPass const & ) = delete;
+ RenderPass( RenderPass && rhs ) VULKAN_HPP_NOEXCEPT
+ : m_renderPass( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_renderPass, {} ) )
+ , m_device( rhs.m_device )
+ , m_allocator( rhs.m_allocator )
+ , m_dispatcher( rhs.m_dispatcher )
+ {}
+ RenderPass & operator=( RenderPass const & ) = delete;
+ RenderPass & operator =( RenderPass && rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ if ( this != &rhs )
+ {
+ getDispatcher()->vkDestroyRenderPass( m_device, static_cast<VkRenderPass>( m_renderPass ), m_allocator );
+ m_renderPass = VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_renderPass, {} );
+ m_device = rhs.m_device;
+ m_allocator = rhs.m_allocator;
+ m_dispatcher = rhs.m_dispatcher;
+ }
+ return *this;
+ }
+
+ //=== VK_VERSION_1_0 ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::Extent2D getRenderAreaGranularity() const VULKAN_HPP_NOEXCEPT;
+
+ //=== VK_HUAWEI_subpass_shading ===
+
+ VULKAN_HPP_NODISCARD std::pair<VULKAN_HPP_NAMESPACE::Result, VULKAN_HPP_NAMESPACE::Extent2D>
+ getSubpassShadingMaxWorkgroupSizeHUAWEI() const;
+
+ VULKAN_HPP_NAMESPACE::RenderPass const & operator*() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_renderPass;
+ }
+
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * getDispatcher() const
+ {
+ return m_dispatcher;
+ }
+
+ private:
+ VULKAN_HPP_NAMESPACE::RenderPass m_renderPass;
+ VkDevice m_device;
+ const VkAllocationCallbacks * m_allocator;
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * m_dispatcher;
+ };
+
+ class Sampler
+ {
+ public:
+ using CType = VkSampler;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eSampler;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eSampler;
+
+ public:
+ Sampler( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VULKAN_HPP_NAMESPACE::SamplerCreateInfo const & createInfo,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkCreateSampler( static_cast<VkDevice>( *device ),
+ reinterpret_cast<const VkSamplerCreateInfo *>( &createInfo ),
+ m_allocator,
+ reinterpret_cast<VkSampler *>( &m_sampler ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, "vkCreateSampler" );
+ }
+ }
+
+ Sampler( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VkSampler sampler,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_sampler( sampler )
+ , m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {}
+
+ ~Sampler()
+ {
+ if ( m_sampler )
+ {
+ getDispatcher()->vkDestroySampler( m_device, static_cast<VkSampler>( m_sampler ), m_allocator );
+ }
+ }
+
+ Sampler() = delete;
+ Sampler( Sampler const & ) = delete;
+ Sampler( Sampler && rhs ) VULKAN_HPP_NOEXCEPT
+ : m_sampler( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_sampler, {} ) )
+ , m_device( rhs.m_device )
+ , m_allocator( rhs.m_allocator )
+ , m_dispatcher( rhs.m_dispatcher )
+ {}
+ Sampler & operator=( Sampler const & ) = delete;
+ Sampler & operator =( Sampler && rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ if ( this != &rhs )
+ {
+ getDispatcher()->vkDestroySampler( m_device, static_cast<VkSampler>( m_sampler ), m_allocator );
+ m_sampler = VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_sampler, {} );
+ m_device = rhs.m_device;
+ m_allocator = rhs.m_allocator;
+ m_dispatcher = rhs.m_dispatcher;
+ }
+ return *this;
+ }
+
+ VULKAN_HPP_NAMESPACE::Sampler const & operator*() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_sampler;
+ }
+
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * getDispatcher() const
+ {
+ return m_dispatcher;
+ }
+
+ private:
+ VULKAN_HPP_NAMESPACE::Sampler m_sampler;
+ VkDevice m_device;
+ const VkAllocationCallbacks * m_allocator;
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * m_dispatcher;
+ };
+
+ class SamplerYcbcrConversion
+ {
+ public:
+ using CType = VkSamplerYcbcrConversion;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eSamplerYcbcrConversion;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eSamplerYcbcrConversion;
+
+ public:
+ SamplerYcbcrConversion(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VULKAN_HPP_NAMESPACE::SamplerYcbcrConversionCreateInfo const & createInfo,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkCreateSamplerYcbcrConversion(
+ static_cast<VkDevice>( *device ),
+ reinterpret_cast<const VkSamplerYcbcrConversionCreateInfo *>( &createInfo ),
+ m_allocator,
+ reinterpret_cast<VkSamplerYcbcrConversion *>( &m_samplerYcbcrConversion ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, "vkCreateSamplerYcbcrConversion" );
+ }
+ }
+
+ SamplerYcbcrConversion(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VkSamplerYcbcrConversion samplerYcbcrConversion,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_samplerYcbcrConversion( samplerYcbcrConversion )
+ , m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {}
+
+ ~SamplerYcbcrConversion()
+ {
+ if ( m_samplerYcbcrConversion )
+ {
+ getDispatcher()->vkDestroySamplerYcbcrConversion(
+ m_device, static_cast<VkSamplerYcbcrConversion>( m_samplerYcbcrConversion ), m_allocator );
+ }
+ }
+
+ SamplerYcbcrConversion() = delete;
+ SamplerYcbcrConversion( SamplerYcbcrConversion const & ) = delete;
+ SamplerYcbcrConversion( SamplerYcbcrConversion && rhs ) VULKAN_HPP_NOEXCEPT
+ : m_samplerYcbcrConversion(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_samplerYcbcrConversion, {} ) )
+ , m_device( rhs.m_device )
+ , m_allocator( rhs.m_allocator )
+ , m_dispatcher( rhs.m_dispatcher )
+ {}
+ SamplerYcbcrConversion & operator=( SamplerYcbcrConversion const & ) = delete;
+ SamplerYcbcrConversion & operator=( SamplerYcbcrConversion && rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ if ( this != &rhs )
+ {
+ getDispatcher()->vkDestroySamplerYcbcrConversion(
+ m_device, static_cast<VkSamplerYcbcrConversion>( m_samplerYcbcrConversion ), m_allocator );
+ m_samplerYcbcrConversion =
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_samplerYcbcrConversion, {} );
+ m_device = rhs.m_device;
+ m_allocator = rhs.m_allocator;
+ m_dispatcher = rhs.m_dispatcher;
+ }
+ return *this;
+ }
+
+ VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion const & operator*() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_samplerYcbcrConversion;
+ }
+
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * getDispatcher() const
+ {
+ return m_dispatcher;
+ }
+
+ private:
+ VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion m_samplerYcbcrConversion;
+ VkDevice m_device;
+ const VkAllocationCallbacks * m_allocator;
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * m_dispatcher;
+ };
+
+ class Semaphore
+ {
+ public:
+ using CType = VkSemaphore;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eSemaphore;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eSemaphore;
+
+ public:
+ Semaphore( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VULKAN_HPP_NAMESPACE::SemaphoreCreateInfo const & createInfo,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkCreateSemaphore( static_cast<VkDevice>( *device ),
+ reinterpret_cast<const VkSemaphoreCreateInfo *>( &createInfo ),
+ m_allocator,
+ reinterpret_cast<VkSemaphore *>( &m_semaphore ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, "vkCreateSemaphore" );
+ }
+ }
+
+ Semaphore( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VkSemaphore semaphore,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_semaphore( semaphore )
+ , m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {}
+
+ ~Semaphore()
+ {
+ if ( m_semaphore )
+ {
+ getDispatcher()->vkDestroySemaphore( m_device, static_cast<VkSemaphore>( m_semaphore ), m_allocator );
+ }
+ }
+
+ Semaphore() = delete;
+ Semaphore( Semaphore const & ) = delete;
+ Semaphore( Semaphore && rhs ) VULKAN_HPP_NOEXCEPT
+ : m_semaphore( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_semaphore, {} ) )
+ , m_device( rhs.m_device )
+ , m_allocator( rhs.m_allocator )
+ , m_dispatcher( rhs.m_dispatcher )
+ {}
+ Semaphore & operator=( Semaphore const & ) = delete;
+ Semaphore & operator =( Semaphore && rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ if ( this != &rhs )
+ {
+ getDispatcher()->vkDestroySemaphore( m_device, static_cast<VkSemaphore>( m_semaphore ), m_allocator );
+ m_semaphore = VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_semaphore, {} );
+ m_device = rhs.m_device;
+ m_allocator = rhs.m_allocator;
+ m_dispatcher = rhs.m_dispatcher;
+ }
+ return *this;
+ }
+
+ //=== VK_VERSION_1_2 ===
+
+ VULKAN_HPP_NODISCARD uint64_t getCounterValue() const;
+
+ //=== VK_KHR_timeline_semaphore ===
+
+ VULKAN_HPP_NODISCARD uint64_t getCounterValueKHR() const;
+
+ VULKAN_HPP_NAMESPACE::Semaphore const & operator*() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_semaphore;
+ }
+
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * getDispatcher() const
+ {
+ return m_dispatcher;
+ }
+
+ private:
+ VULKAN_HPP_NAMESPACE::Semaphore m_semaphore;
+ VkDevice m_device;
+ const VkAllocationCallbacks * m_allocator;
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * m_dispatcher;
+ };
+
+ class ShaderModule
+ {
+ public:
+ using CType = VkShaderModule;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eShaderModule;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eShaderModule;
+
+ public:
+ ShaderModule(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VULKAN_HPP_NAMESPACE::ShaderModuleCreateInfo const & createInfo,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkCreateShaderModule( static_cast<VkDevice>( *device ),
+ reinterpret_cast<const VkShaderModuleCreateInfo *>( &createInfo ),
+ m_allocator,
+ reinterpret_cast<VkShaderModule *>( &m_shaderModule ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, "vkCreateShaderModule" );
+ }
+ }
+
+ ShaderModule(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VkShaderModule shaderModule,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_shaderModule( shaderModule )
+ , m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {}
+
+ ~ShaderModule()
+ {
+ if ( m_shaderModule )
+ {
+ getDispatcher()->vkDestroyShaderModule(
+ m_device, static_cast<VkShaderModule>( m_shaderModule ), m_allocator );
+ }
+ }
+
+ ShaderModule() = delete;
+ ShaderModule( ShaderModule const & ) = delete;
+ ShaderModule( ShaderModule && rhs ) VULKAN_HPP_NOEXCEPT
+ : m_shaderModule( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_shaderModule, {} ) )
+ , m_device( rhs.m_device )
+ , m_allocator( rhs.m_allocator )
+ , m_dispatcher( rhs.m_dispatcher )
+ {}
+ ShaderModule & operator=( ShaderModule const & ) = delete;
+ ShaderModule & operator =( ShaderModule && rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ if ( this != &rhs )
+ {
+ getDispatcher()->vkDestroyShaderModule(
+ m_device, static_cast<VkShaderModule>( m_shaderModule ), m_allocator );
+ m_shaderModule = VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_shaderModule, {} );
+ m_device = rhs.m_device;
+ m_allocator = rhs.m_allocator;
+ m_dispatcher = rhs.m_dispatcher;
+ }
+ return *this;
+ }
+
+ VULKAN_HPP_NAMESPACE::ShaderModule const & operator*() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_shaderModule;
+ }
+
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * getDispatcher() const
+ {
+ return m_dispatcher;
+ }
+
+ private:
+ VULKAN_HPP_NAMESPACE::ShaderModule m_shaderModule;
+ VkDevice m_device;
+ const VkAllocationCallbacks * m_allocator;
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * m_dispatcher;
+ };
+
+ class SurfaceKHR
+ {
+ public:
+ using CType = VkSurfaceKHR;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eSurfaceKHR;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eSurfaceKHR;
+
+ public:
+# if defined( VK_USE_PLATFORM_ANDROID_KHR )
+ SurfaceKHR( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Instance const & instance,
+ VULKAN_HPP_NAMESPACE::AndroidSurfaceCreateInfoKHR const & createInfo,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_instance( *instance )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( instance.getDispatcher() )
+ {
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkCreateAndroidSurfaceKHR(
+ static_cast<VkInstance>( *instance ),
+ reinterpret_cast<const VkAndroidSurfaceCreateInfoKHR *>( &createInfo ),
+ m_allocator,
+ reinterpret_cast<VkSurfaceKHR *>( &m_surfaceKHR ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, "vkCreateAndroidSurfaceKHR" );
+ }
+ }
+# endif /*VK_USE_PLATFORM_ANDROID_KHR*/
+
+# if defined( VK_USE_PLATFORM_DIRECTFB_EXT )
+ SurfaceKHR( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Instance const & instance,
+ VULKAN_HPP_NAMESPACE::DirectFBSurfaceCreateInfoEXT const & createInfo,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_instance( *instance )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( instance.getDispatcher() )
+ {
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkCreateDirectFBSurfaceEXT(
+ static_cast<VkInstance>( *instance ),
+ reinterpret_cast<const VkDirectFBSurfaceCreateInfoEXT *>( &createInfo ),
+ m_allocator,
+ reinterpret_cast<VkSurfaceKHR *>( &m_surfaceKHR ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, "vkCreateDirectFBSurfaceEXT" );
+ }
+ }
+# endif /*VK_USE_PLATFORM_DIRECTFB_EXT*/
+
+ SurfaceKHR( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Instance const & instance,
+ VULKAN_HPP_NAMESPACE::DisplaySurfaceCreateInfoKHR const & createInfo,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_instance( *instance )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( instance.getDispatcher() )
+ {
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkCreateDisplayPlaneSurfaceKHR(
+ static_cast<VkInstance>( *instance ),
+ reinterpret_cast<const VkDisplaySurfaceCreateInfoKHR *>( &createInfo ),
+ m_allocator,
+ reinterpret_cast<VkSurfaceKHR *>( &m_surfaceKHR ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, "vkCreateDisplayPlaneSurfaceKHR" );
+ }
+ }
+
+ SurfaceKHR( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Instance const & instance,
+ VULKAN_HPP_NAMESPACE::HeadlessSurfaceCreateInfoEXT const & createInfo,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_instance( *instance )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( instance.getDispatcher() )
+ {
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkCreateHeadlessSurfaceEXT(
+ static_cast<VkInstance>( *instance ),
+ reinterpret_cast<const VkHeadlessSurfaceCreateInfoEXT *>( &createInfo ),
+ m_allocator,
+ reinterpret_cast<VkSurfaceKHR *>( &m_surfaceKHR ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, "vkCreateHeadlessSurfaceEXT" );
+ }
+ }
+
+# if defined( VK_USE_PLATFORM_IOS_MVK )
+ SurfaceKHR( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Instance const & instance,
+ VULKAN_HPP_NAMESPACE::IOSSurfaceCreateInfoMVK const & createInfo,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_instance( *instance )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( instance.getDispatcher() )
+ {
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkCreateIOSSurfaceMVK( static_cast<VkInstance>( *instance ),
+ reinterpret_cast<const VkIOSSurfaceCreateInfoMVK *>( &createInfo ),
+ m_allocator,
+ reinterpret_cast<VkSurfaceKHR *>( &m_surfaceKHR ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, "vkCreateIOSSurfaceMVK" );
+ }
+ }
+# endif /*VK_USE_PLATFORM_IOS_MVK*/
+
+# if defined( VK_USE_PLATFORM_FUCHSIA )
+ SurfaceKHR( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Instance const & instance,
+ VULKAN_HPP_NAMESPACE::ImagePipeSurfaceCreateInfoFUCHSIA const & createInfo,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_instance( *instance )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( instance.getDispatcher() )
+ {
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkCreateImagePipeSurfaceFUCHSIA(
+ static_cast<VkInstance>( *instance ),
+ reinterpret_cast<const VkImagePipeSurfaceCreateInfoFUCHSIA *>( &createInfo ),
+ m_allocator,
+ reinterpret_cast<VkSurfaceKHR *>( &m_surfaceKHR ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, "vkCreateImagePipeSurfaceFUCHSIA" );
+ }
+ }
+# endif /*VK_USE_PLATFORM_FUCHSIA*/
+
+# if defined( VK_USE_PLATFORM_MACOS_MVK )
+ SurfaceKHR( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Instance const & instance,
+ VULKAN_HPP_NAMESPACE::MacOSSurfaceCreateInfoMVK const & createInfo,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_instance( *instance )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( instance.getDispatcher() )
+ {
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkCreateMacOSSurfaceMVK(
+ static_cast<VkInstance>( *instance ),
+ reinterpret_cast<const VkMacOSSurfaceCreateInfoMVK *>( &createInfo ),
+ m_allocator,
+ reinterpret_cast<VkSurfaceKHR *>( &m_surfaceKHR ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, "vkCreateMacOSSurfaceMVK" );
+ }
+ }
+# endif /*VK_USE_PLATFORM_MACOS_MVK*/
+
+# if defined( VK_USE_PLATFORM_METAL_EXT )
+ SurfaceKHR( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Instance const & instance,
+ VULKAN_HPP_NAMESPACE::MetalSurfaceCreateInfoEXT const & createInfo,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_instance( *instance )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( instance.getDispatcher() )
+ {
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkCreateMetalSurfaceEXT(
+ static_cast<VkInstance>( *instance ),
+ reinterpret_cast<const VkMetalSurfaceCreateInfoEXT *>( &createInfo ),
+ m_allocator,
+ reinterpret_cast<VkSurfaceKHR *>( &m_surfaceKHR ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, "vkCreateMetalSurfaceEXT" );
+ }
+ }
+# endif /*VK_USE_PLATFORM_METAL_EXT*/
+
+# if defined( VK_USE_PLATFORM_SCREEN_QNX )
+ SurfaceKHR( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Instance const & instance,
+ VULKAN_HPP_NAMESPACE::ScreenSurfaceCreateInfoQNX const & createInfo,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_instance( *instance )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( instance.getDispatcher() )
+ {
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkCreateScreenSurfaceQNX(
+ static_cast<VkInstance>( *instance ),
+ reinterpret_cast<const VkScreenSurfaceCreateInfoQNX *>( &createInfo ),
+ m_allocator,
+ reinterpret_cast<VkSurfaceKHR *>( &m_surfaceKHR ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, "vkCreateScreenSurfaceQNX" );
+ }
+ }
+# endif /*VK_USE_PLATFORM_SCREEN_QNX*/
+
+# if defined( VK_USE_PLATFORM_GGP )
+ SurfaceKHR( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Instance const & instance,
+ VULKAN_HPP_NAMESPACE::StreamDescriptorSurfaceCreateInfoGGP const & createInfo,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_instance( *instance )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( instance.getDispatcher() )
+ {
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkCreateStreamDescriptorSurfaceGGP(
+ static_cast<VkInstance>( *instance ),
+ reinterpret_cast<const VkStreamDescriptorSurfaceCreateInfoGGP *>( &createInfo ),
+ m_allocator,
+ reinterpret_cast<VkSurfaceKHR *>( &m_surfaceKHR ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, "vkCreateStreamDescriptorSurfaceGGP" );
+ }
+ }
+# endif /*VK_USE_PLATFORM_GGP*/
+
+# if defined( VK_USE_PLATFORM_VI_NN )
+ SurfaceKHR( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Instance const & instance,
+ VULKAN_HPP_NAMESPACE::ViSurfaceCreateInfoNN const & createInfo,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_instance( *instance )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( instance.getDispatcher() )
+ {
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkCreateViSurfaceNN( static_cast<VkInstance>( *instance ),
+ reinterpret_cast<const VkViSurfaceCreateInfoNN *>( &createInfo ),
+ m_allocator,
+ reinterpret_cast<VkSurfaceKHR *>( &m_surfaceKHR ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, "vkCreateViSurfaceNN" );
+ }
+ }
+# endif /*VK_USE_PLATFORM_VI_NN*/
+
+# if defined( VK_USE_PLATFORM_WAYLAND_KHR )
+ SurfaceKHR( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Instance const & instance,
+ VULKAN_HPP_NAMESPACE::WaylandSurfaceCreateInfoKHR const & createInfo,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_instance( *instance )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( instance.getDispatcher() )
+ {
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkCreateWaylandSurfaceKHR(
+ static_cast<VkInstance>( *instance ),
+ reinterpret_cast<const VkWaylandSurfaceCreateInfoKHR *>( &createInfo ),
+ m_allocator,
+ reinterpret_cast<VkSurfaceKHR *>( &m_surfaceKHR ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, "vkCreateWaylandSurfaceKHR" );
+ }
+ }
+# endif /*VK_USE_PLATFORM_WAYLAND_KHR*/
+
+# if defined( VK_USE_PLATFORM_WIN32_KHR )
+ SurfaceKHR( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Instance const & instance,
+ VULKAN_HPP_NAMESPACE::Win32SurfaceCreateInfoKHR const & createInfo,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_instance( *instance )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( instance.getDispatcher() )
+ {
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkCreateWin32SurfaceKHR(
+ static_cast<VkInstance>( *instance ),
+ reinterpret_cast<const VkWin32SurfaceCreateInfoKHR *>( &createInfo ),
+ m_allocator,
+ reinterpret_cast<VkSurfaceKHR *>( &m_surfaceKHR ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, "vkCreateWin32SurfaceKHR" );
+ }
+ }
+# endif /*VK_USE_PLATFORM_WIN32_KHR*/
+
+# if defined( VK_USE_PLATFORM_XCB_KHR )
+ SurfaceKHR( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Instance const & instance,
+ VULKAN_HPP_NAMESPACE::XcbSurfaceCreateInfoKHR const & createInfo,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_instance( *instance )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( instance.getDispatcher() )
+ {
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkCreateXcbSurfaceKHR( static_cast<VkInstance>( *instance ),
+ reinterpret_cast<const VkXcbSurfaceCreateInfoKHR *>( &createInfo ),
+ m_allocator,
+ reinterpret_cast<VkSurfaceKHR *>( &m_surfaceKHR ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, "vkCreateXcbSurfaceKHR" );
+ }
+ }
+# endif /*VK_USE_PLATFORM_XCB_KHR*/
+
+# if defined( VK_USE_PLATFORM_XLIB_KHR )
+ SurfaceKHR( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Instance const & instance,
+ VULKAN_HPP_NAMESPACE::XlibSurfaceCreateInfoKHR const & createInfo,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_instance( *instance )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( instance.getDispatcher() )
+ {
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkCreateXlibSurfaceKHR( static_cast<VkInstance>( *instance ),
+ reinterpret_cast<const VkXlibSurfaceCreateInfoKHR *>( &createInfo ),
+ m_allocator,
+ reinterpret_cast<VkSurfaceKHR *>( &m_surfaceKHR ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, "vkCreateXlibSurfaceKHR" );
+ }
+ }
+# endif /*VK_USE_PLATFORM_XLIB_KHR*/
+
+ SurfaceKHR( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Instance const & instance,
+ VkSurfaceKHR surfaceKHR,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_surfaceKHR( surfaceKHR )
+ , m_instance( *instance )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( instance.getDispatcher() )
+ {}
+
+ ~SurfaceKHR()
+ {
+ if ( m_surfaceKHR )
+ {
+ getDispatcher()->vkDestroySurfaceKHR( m_instance, static_cast<VkSurfaceKHR>( m_surfaceKHR ), m_allocator );
+ }
+ }
+
+ SurfaceKHR() = delete;
+ SurfaceKHR( SurfaceKHR const & ) = delete;
+ SurfaceKHR( SurfaceKHR && rhs ) VULKAN_HPP_NOEXCEPT
+ : m_surfaceKHR( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_surfaceKHR, {} ) )
+ , m_instance( rhs.m_instance )
+ , m_allocator( rhs.m_allocator )
+ , m_dispatcher( rhs.m_dispatcher )
+ {}
+ SurfaceKHR & operator=( SurfaceKHR const & ) = delete;
+ SurfaceKHR & operator =( SurfaceKHR && rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ if ( this != &rhs )
+ {
+ getDispatcher()->vkDestroySurfaceKHR( m_instance, static_cast<VkSurfaceKHR>( m_surfaceKHR ), m_allocator );
+ m_surfaceKHR = VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_surfaceKHR, {} );
+ m_instance = rhs.m_instance;
+ m_allocator = rhs.m_allocator;
+ m_dispatcher = rhs.m_dispatcher;
+ }
+ return *this;
+ }
+
+ VULKAN_HPP_NAMESPACE::SurfaceKHR const & operator*() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_surfaceKHR;
+ }
+
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::InstanceDispatcher const * getDispatcher() const
+ {
+ return m_dispatcher;
+ }
+
+ private:
+ VULKAN_HPP_NAMESPACE::SurfaceKHR m_surfaceKHR;
+ VkInstance m_instance;
+ const VkAllocationCallbacks * m_allocator;
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::InstanceDispatcher const * m_dispatcher;
+ };
+
+ class SwapchainKHR
+ {
+ public:
+ using CType = VkSwapchainKHR;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eSwapchainKHR;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eSwapchainKHR;
+
+ public:
+ SwapchainKHR(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VULKAN_HPP_NAMESPACE::SwapchainCreateInfoKHR const & createInfo,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkCreateSwapchainKHR( static_cast<VkDevice>( *device ),
+ reinterpret_cast<const VkSwapchainCreateInfoKHR *>( &createInfo ),
+ m_allocator,
+ reinterpret_cast<VkSwapchainKHR *>( &m_swapchainKHR ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, "vkCreateSwapchainKHR" );
+ }
+ }
+
+ SwapchainKHR(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VkSwapchainKHR swapchainKHR,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_swapchainKHR( swapchainKHR )
+ , m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {}
+
+ SwapchainKHR( VkSwapchainKHR swapchainKHR,
+ VkDevice device,
+ VkAllocationCallbacks const * allocator,
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * dispatcher )
+ : m_swapchainKHR( swapchainKHR ), m_device( device ), m_allocator( allocator ), m_dispatcher( dispatcher )
+ {}
+
+ ~SwapchainKHR()
+ {
+ if ( m_swapchainKHR )
+ {
+ getDispatcher()->vkDestroySwapchainKHR(
+ m_device, static_cast<VkSwapchainKHR>( m_swapchainKHR ), m_allocator );
+ }
+ }
+
+ SwapchainKHR() = delete;
+ SwapchainKHR( SwapchainKHR const & ) = delete;
+ SwapchainKHR( SwapchainKHR && rhs ) VULKAN_HPP_NOEXCEPT
+ : m_swapchainKHR( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_swapchainKHR, {} ) )
+ , m_device( rhs.m_device )
+ , m_allocator( rhs.m_allocator )
+ , m_dispatcher( rhs.m_dispatcher )
+ {}
+ SwapchainKHR & operator=( SwapchainKHR const & ) = delete;
+ SwapchainKHR & operator =( SwapchainKHR && rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ if ( this != &rhs )
+ {
+ getDispatcher()->vkDestroySwapchainKHR(
+ m_device, static_cast<VkSwapchainKHR>( m_swapchainKHR ), m_allocator );
+ m_swapchainKHR = VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_swapchainKHR, {} );
+ m_device = rhs.m_device;
+ m_allocator = rhs.m_allocator;
+ m_dispatcher = rhs.m_dispatcher;
+ }
+ return *this;
+ }
+
+ //=== VK_KHR_swapchain ===
+
+ VULKAN_HPP_NODISCARD std::vector<VkImage> getImages() const;
+
+ VULKAN_HPP_NODISCARD std::pair<VULKAN_HPP_NAMESPACE::Result, uint32_t>
+ acquireNextImage( uint64_t timeout,
+ VULKAN_HPP_NAMESPACE::Semaphore semaphore VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT,
+ VULKAN_HPP_NAMESPACE::Fence fence VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT ) const;
+
+ //=== VK_EXT_display_control ===
+
+ VULKAN_HPP_NODISCARD uint64_t getCounterEXT( VULKAN_HPP_NAMESPACE::SurfaceCounterFlagBitsEXT counter ) const;
+
+ //=== VK_GOOGLE_display_timing ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::RefreshCycleDurationGOOGLE getRefreshCycleDurationGOOGLE() const;
+
+ VULKAN_HPP_NODISCARD std::vector<VULKAN_HPP_NAMESPACE::PastPresentationTimingGOOGLE>
+ getPastPresentationTimingGOOGLE() const;
+
+ //=== VK_KHR_shared_presentable_image ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::Result getStatus() const;
+
+ //=== VK_AMD_display_native_hdr ===
+
+ void setLocalDimmingAMD( VULKAN_HPP_NAMESPACE::Bool32 localDimmingEnable ) const VULKAN_HPP_NOEXCEPT;
+
+# if defined( VK_USE_PLATFORM_WIN32_KHR )
+ //=== VK_EXT_full_screen_exclusive ===
+
+ void acquireFullScreenExclusiveModeEXT() const;
+
+ void releaseFullScreenExclusiveModeEXT() const;
+# endif /*VK_USE_PLATFORM_WIN32_KHR*/
+
+ VULKAN_HPP_NAMESPACE::SwapchainKHR const & operator*() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_swapchainKHR;
+ }
+
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * getDispatcher() const
+ {
+ return m_dispatcher;
+ }
+
+ private:
+ VULKAN_HPP_NAMESPACE::SwapchainKHR m_swapchainKHR;
+ VkDevice m_device;
+ const VkAllocationCallbacks * m_allocator;
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * m_dispatcher;
+ };
+
+ class SwapchainKHRs : public std::vector<VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::SwapchainKHR>
+ {
+ public:
+ SwapchainKHRs(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VULKAN_HPP_NAMESPACE::ArrayProxy<VULKAN_HPP_NAMESPACE::SwapchainCreateInfoKHR> const & createInfos,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ {
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * dispatcher = device.getDispatcher();
+ std::vector<VkSwapchainKHR> swapchains( createInfos.size() );
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( dispatcher->vkCreateSharedSwapchainsKHR(
+ static_cast<VkDevice>( *device ),
+ createInfos.size(),
+ reinterpret_cast<const VkSwapchainCreateInfoKHR *>( createInfos.data() ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ swapchains.data() ) );
+ if ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ this->reserve( createInfos.size() );
+ for ( auto const & swapchainKHR : swapchains )
+ {
+ this->emplace_back( swapchainKHR,
+ static_cast<VkDevice>( *device ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
+ dispatcher );
+ }
+ }
+ else
+ {
+ throwResultException( result, "vkCreateSharedSwapchainsKHR" );
+ }
+ }
+
+ SwapchainKHRs() = delete;
+ SwapchainKHRs( SwapchainKHRs const & ) = delete;
+ SwapchainKHRs( SwapchainKHRs && rhs ) = default;
+ SwapchainKHRs & operator=( SwapchainKHRs const & ) = delete;
+ SwapchainKHRs & operator=( SwapchainKHRs && rhs ) = default;
+ };
+
+ class ValidationCacheEXT
+ {
+ public:
+ using CType = VkValidationCacheEXT;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eValidationCacheEXT;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eValidationCacheEXT;
+
+ public:
+ ValidationCacheEXT(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VULKAN_HPP_NAMESPACE::ValidationCacheCreateInfoEXT const & createInfo,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkCreateValidationCacheEXT(
+ static_cast<VkDevice>( *device ),
+ reinterpret_cast<const VkValidationCacheCreateInfoEXT *>( &createInfo ),
+ m_allocator,
+ reinterpret_cast<VkValidationCacheEXT *>( &m_validationCacheEXT ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, "vkCreateValidationCacheEXT" );
+ }
+ }
+
+ ValidationCacheEXT(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VkValidationCacheEXT validationCacheEXT,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_validationCacheEXT( validationCacheEXT )
+ , m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {}
+
+ ~ValidationCacheEXT()
+ {
+ if ( m_validationCacheEXT )
+ {
+ getDispatcher()->vkDestroyValidationCacheEXT(
+ m_device, static_cast<VkValidationCacheEXT>( m_validationCacheEXT ), m_allocator );
+ }
+ }
+
+ ValidationCacheEXT() = delete;
+ ValidationCacheEXT( ValidationCacheEXT const & ) = delete;
+ ValidationCacheEXT( ValidationCacheEXT && rhs ) VULKAN_HPP_NOEXCEPT
+ : m_validationCacheEXT( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_validationCacheEXT,
+ {} ) )
+ , m_device( rhs.m_device )
+ , m_allocator( rhs.m_allocator )
+ , m_dispatcher( rhs.m_dispatcher )
+ {}
+ ValidationCacheEXT & operator=( ValidationCacheEXT const & ) = delete;
+ ValidationCacheEXT & operator =( ValidationCacheEXT && rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ if ( this != &rhs )
+ {
+ getDispatcher()->vkDestroyValidationCacheEXT(
+ m_device, static_cast<VkValidationCacheEXT>( m_validationCacheEXT ), m_allocator );
+ m_validationCacheEXT =
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_validationCacheEXT, {} );
+ m_device = rhs.m_device;
+ m_allocator = rhs.m_allocator;
+ m_dispatcher = rhs.m_dispatcher;
+ }
+ return *this;
+ }
+
+ //=== VK_EXT_validation_cache ===
+
+ void merge( ArrayProxy<const VULKAN_HPP_NAMESPACE::ValidationCacheEXT> const & srcCaches ) const;
+
+ VULKAN_HPP_NODISCARD std::vector<uint8_t> getData() const;
+
+ VULKAN_HPP_NAMESPACE::ValidationCacheEXT const & operator*() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_validationCacheEXT;
+ }
+
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * getDispatcher() const
+ {
+ return m_dispatcher;
+ }
+
+ private:
+ VULKAN_HPP_NAMESPACE::ValidationCacheEXT m_validationCacheEXT;
+ VkDevice m_device;
+ const VkAllocationCallbacks * m_allocator;
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * m_dispatcher;
+ };
+
+# if defined( VK_ENABLE_BETA_EXTENSIONS )
+ class VideoSessionKHR
+ {
+ public:
+ using CType = VkVideoSessionKHR;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eVideoSessionKHR;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eUnknown;
+
+ public:
+ VideoSessionKHR(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VULKAN_HPP_NAMESPACE::VideoSessionCreateInfoKHR const & createInfo,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkCreateVideoSessionKHR(
+ static_cast<VkDevice>( *device ),
+ reinterpret_cast<const VkVideoSessionCreateInfoKHR *>( &createInfo ),
+ m_allocator,
+ reinterpret_cast<VkVideoSessionKHR *>( &m_videoSessionKHR ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, "vkCreateVideoSessionKHR" );
+ }
+ }
+
+ VideoSessionKHR(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VkVideoSessionKHR videoSessionKHR,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_videoSessionKHR( videoSessionKHR )
+ , m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {}
+
+ ~VideoSessionKHR()
+ {
+ if ( m_videoSessionKHR )
+ {
+ getDispatcher()->vkDestroyVideoSessionKHR(
+ m_device, static_cast<VkVideoSessionKHR>( m_videoSessionKHR ), m_allocator );
+ }
+ }
+
+ VideoSessionKHR() = delete;
+ VideoSessionKHR( VideoSessionKHR const & ) = delete;
+ VideoSessionKHR( VideoSessionKHR && rhs ) VULKAN_HPP_NOEXCEPT
+ : m_videoSessionKHR( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_videoSessionKHR, {} ) )
+ , m_device( rhs.m_device )
+ , m_allocator( rhs.m_allocator )
+ , m_dispatcher( rhs.m_dispatcher )
+ {}
+ VideoSessionKHR & operator=( VideoSessionKHR const & ) = delete;
+ VideoSessionKHR & operator =( VideoSessionKHR && rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ if ( this != &rhs )
+ {
+ getDispatcher()->vkDestroyVideoSessionKHR(
+ m_device, static_cast<VkVideoSessionKHR>( m_videoSessionKHR ), m_allocator );
+ m_videoSessionKHR = VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_videoSessionKHR, {} );
+ m_device = rhs.m_device;
+ m_allocator = rhs.m_allocator;
+ m_dispatcher = rhs.m_dispatcher;
+ }
+ return *this;
+ }
+
+ //=== VK_KHR_video_queue ===
+
+ VULKAN_HPP_NODISCARD std::vector<VULKAN_HPP_NAMESPACE::VideoGetMemoryPropertiesKHR> getMemoryRequirements() const;
+
+ void
+ bindMemory( ArrayProxy<const VULKAN_HPP_NAMESPACE::VideoBindMemoryKHR> const & videoSessionBindMemories ) const;
+
+ VULKAN_HPP_NAMESPACE::VideoSessionKHR const & operator*() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_videoSessionKHR;
+ }
+
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * getDispatcher() const
+ {
+ return m_dispatcher;
+ }
+
+ private:
+ VULKAN_HPP_NAMESPACE::VideoSessionKHR m_videoSessionKHR;
+ VkDevice m_device;
+ const VkAllocationCallbacks * m_allocator;
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * m_dispatcher;
+ };
+# endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+# if defined( VK_ENABLE_BETA_EXTENSIONS )
+ class VideoSessionParametersKHR
+ {
+ public:
+ using CType = VkVideoSessionParametersKHR;
+
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
+ VULKAN_HPP_NAMESPACE::ObjectType::eVideoSessionParametersKHR;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eUnknown;
+
+ public:
+ VideoSessionParametersKHR(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VULKAN_HPP_NAMESPACE::VideoSessionParametersCreateInfoKHR const & createInfo,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkCreateVideoSessionParametersKHR(
+ static_cast<VkDevice>( *device ),
+ reinterpret_cast<const VkVideoSessionParametersCreateInfoKHR *>( &createInfo ),
+ m_allocator,
+ reinterpret_cast<VkVideoSessionParametersKHR *>( &m_videoSessionParametersKHR ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, "vkCreateVideoSessionParametersKHR" );
+ }
+ }
+
+ VideoSessionParametersKHR(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
+ VkVideoSessionParametersKHR videoSessionParametersKHR,
+ VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
+ : m_videoSessionParametersKHR( videoSessionParametersKHR )
+ , m_device( *device )
+ , m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
+ , m_dispatcher( device.getDispatcher() )
+ {}
+
+ ~VideoSessionParametersKHR()
+ {
+ if ( m_videoSessionParametersKHR )
+ {
+ getDispatcher()->vkDestroyVideoSessionParametersKHR(
+ m_device, static_cast<VkVideoSessionParametersKHR>( m_videoSessionParametersKHR ), m_allocator );
+ }
+ }
+
+ VideoSessionParametersKHR() = delete;
+ VideoSessionParametersKHR( VideoSessionParametersKHR const & ) = delete;
+ VideoSessionParametersKHR( VideoSessionParametersKHR && rhs ) VULKAN_HPP_NOEXCEPT
+ : m_videoSessionParametersKHR(
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_videoSessionParametersKHR, {} ) )
+ , m_device( rhs.m_device )
+ , m_allocator( rhs.m_allocator )
+ , m_dispatcher( rhs.m_dispatcher )
+ {}
+ VideoSessionParametersKHR & operator=( VideoSessionParametersKHR const & ) = delete;
+ VideoSessionParametersKHR & operator=( VideoSessionParametersKHR && rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ if ( this != &rhs )
+ {
+ getDispatcher()->vkDestroyVideoSessionParametersKHR(
+ m_device, static_cast<VkVideoSessionParametersKHR>( m_videoSessionParametersKHR ), m_allocator );
+ m_videoSessionParametersKHR =
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_videoSessionParametersKHR, {} );
+ m_device = rhs.m_device;
+ m_allocator = rhs.m_allocator;
+ m_dispatcher = rhs.m_dispatcher;
+ }
+ return *this;
+ }
+
+ //=== VK_KHR_video_queue ===
+
+ void update( const VideoSessionParametersUpdateInfoKHR & updateInfo ) const;
+
+ VULKAN_HPP_NAMESPACE::VideoSessionParametersKHR const & operator*() const VULKAN_HPP_NOEXCEPT
+ {
+ return m_videoSessionParametersKHR;
+ }
+
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * getDispatcher() const
+ {
+ return m_dispatcher;
+ }
+
+ private:
+ VULKAN_HPP_NAMESPACE::VideoSessionParametersKHR m_videoSessionParametersKHR;
+ VkDevice m_device;
+ const VkAllocationCallbacks * m_allocator;
+ VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * m_dispatcher;
+ };
+# endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+ //===========================
+ //=== COMMAND Definitions ===
+ //===========================
+
+ //=== VK_VERSION_1_0 ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures
+ PhysicalDevice::getFeatures() const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures features;
+ getDispatcher()->vkGetPhysicalDeviceFeatures( static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ reinterpret_cast<VkPhysicalDeviceFeatures *>( &features ) );
+ return features;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::FormatProperties
+ PhysicalDevice::getFormatProperties( VULKAN_HPP_NAMESPACE::Format format ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_NAMESPACE::FormatProperties formatProperties;
+ getDispatcher()->vkGetPhysicalDeviceFormatProperties(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ static_cast<VkFormat>( format ),
+ reinterpret_cast<VkFormatProperties *>( &formatProperties ) );
+ return formatProperties;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::ImageFormatProperties
+ PhysicalDevice::getImageFormatProperties( VULKAN_HPP_NAMESPACE::Format format,
+ VULKAN_HPP_NAMESPACE::ImageType type,
+ VULKAN_HPP_NAMESPACE::ImageTiling tiling,
+ VULKAN_HPP_NAMESPACE::ImageUsageFlags usage,
+ VULKAN_HPP_NAMESPACE::ImageCreateFlags flags ) const
+ {
+ VULKAN_HPP_NAMESPACE::ImageFormatProperties imageFormatProperties;
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetPhysicalDeviceImageFormatProperties(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ static_cast<VkFormat>( format ),
+ static_cast<VkImageType>( type ),
+ static_cast<VkImageTiling>( tiling ),
+ static_cast<VkImageUsageFlags>( usage ),
+ static_cast<VkImageCreateFlags>( flags ),
+ reinterpret_cast<VkImageFormatProperties *>( &imageFormatProperties ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getImageFormatProperties" );
+ }
+ return imageFormatProperties;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties
+ PhysicalDevice::getProperties() const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties properties;
+ getDispatcher()->vkGetPhysicalDeviceProperties( static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ reinterpret_cast<VkPhysicalDeviceProperties *>( &properties ) );
+ return properties;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<VULKAN_HPP_NAMESPACE::QueueFamilyProperties>
+ PhysicalDevice::getQueueFamilyProperties() const VULKAN_HPP_NOEXCEPT
+ {
+ uint32_t queueFamilyPropertyCount;
+ getDispatcher()->vkGetPhysicalDeviceQueueFamilyProperties(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ), &queueFamilyPropertyCount, nullptr );
+ std::vector<VULKAN_HPP_NAMESPACE::QueueFamilyProperties> queueFamilyProperties( queueFamilyPropertyCount );
+ getDispatcher()->vkGetPhysicalDeviceQueueFamilyProperties(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ &queueFamilyPropertyCount,
+ reinterpret_cast<VkQueueFamilyProperties *>( queueFamilyProperties.data() ) );
+ VULKAN_HPP_ASSERT( queueFamilyPropertyCount <= queueFamilyProperties.size() );
+ return queueFamilyProperties;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties
+ PhysicalDevice::getMemoryProperties() const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties memoryProperties;
+ getDispatcher()->vkGetPhysicalDeviceMemoryProperties(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ reinterpret_cast<VkPhysicalDeviceMemoryProperties *>( &memoryProperties ) );
+ return memoryProperties;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE PFN_vkVoidFunction
+ Instance::getProcAddr( const std::string & name ) const VULKAN_HPP_NOEXCEPT
+ {
+ return getDispatcher()->vkGetInstanceProcAddr( static_cast<VkInstance>( m_instance ), name.c_str() );
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE PFN_vkVoidFunction
+ Device::getProcAddr( const std::string & name ) const VULKAN_HPP_NOEXCEPT
+ {
+ return getDispatcher()->vkGetDeviceProcAddr( static_cast<VkDevice>( m_device ), name.c_str() );
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<VULKAN_HPP_NAMESPACE::ExtensionProperties>
+ Context::enumerateInstanceExtensionProperties( Optional<const std::string> layerName ) const
+ {
+ std::vector<VULKAN_HPP_NAMESPACE::ExtensionProperties> properties;
+ uint32_t propertyCount;
+ VULKAN_HPP_NAMESPACE::Result result;
+ do
+ {
+ result = static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkEnumerateInstanceExtensionProperties(
+ layerName ? layerName->c_str() : nullptr, &propertyCount, nullptr ) );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && propertyCount )
+ {
+ properties.resize( propertyCount );
+ result = static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkEnumerateInstanceExtensionProperties(
+ layerName ? layerName->c_str() : nullptr,
+ &propertyCount,
+ reinterpret_cast<VkExtensionProperties *>( properties.data() ) ) );
+ VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
+ }
+ } while ( result == VULKAN_HPP_NAMESPACE::Result::eIncomplete );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && ( propertyCount < properties.size() ) )
+ {
+ properties.resize( propertyCount );
+ }
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Context::enumerateInstanceExtensionProperties" );
+ }
+ return properties;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<VULKAN_HPP_NAMESPACE::ExtensionProperties>
+ PhysicalDevice::enumerateDeviceExtensionProperties( Optional<const std::string> layerName ) const
+ {
+ std::vector<VULKAN_HPP_NAMESPACE::ExtensionProperties> properties;
+ uint32_t propertyCount;
+ VULKAN_HPP_NAMESPACE::Result result;
+ do
+ {
+ result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkEnumerateDeviceExtensionProperties( static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ layerName ? layerName->c_str() : nullptr,
+ &propertyCount,
+ nullptr ) );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && propertyCount )
+ {
+ properties.resize( propertyCount );
+ result = static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkEnumerateDeviceExtensionProperties(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ layerName ? layerName->c_str() : nullptr,
+ &propertyCount,
+ reinterpret_cast<VkExtensionProperties *>( properties.data() ) ) );
+ VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
+ }
+ } while ( result == VULKAN_HPP_NAMESPACE::Result::eIncomplete );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && ( propertyCount < properties.size() ) )
+ {
+ properties.resize( propertyCount );
+ }
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result,
+ VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::enumerateDeviceExtensionProperties" );
+ }
+ return properties;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<VULKAN_HPP_NAMESPACE::LayerProperties>
+ Context::enumerateInstanceLayerProperties() const
+ {
+ std::vector<VULKAN_HPP_NAMESPACE::LayerProperties> properties;
+ uint32_t propertyCount;
+ VULKAN_HPP_NAMESPACE::Result result;
+ do
+ {
+ result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkEnumerateInstanceLayerProperties( &propertyCount, nullptr ) );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && propertyCount )
+ {
+ properties.resize( propertyCount );
+ result = static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkEnumerateInstanceLayerProperties(
+ &propertyCount, reinterpret_cast<VkLayerProperties *>( properties.data() ) ) );
+ VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
+ }
+ } while ( result == VULKAN_HPP_NAMESPACE::Result::eIncomplete );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && ( propertyCount < properties.size() ) )
+ {
+ properties.resize( propertyCount );
+ }
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Context::enumerateInstanceLayerProperties" );
+ }
+ return properties;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<VULKAN_HPP_NAMESPACE::LayerProperties>
+ PhysicalDevice::enumerateDeviceLayerProperties() const
+ {
+ std::vector<VULKAN_HPP_NAMESPACE::LayerProperties> properties;
+ uint32_t propertyCount;
+ VULKAN_HPP_NAMESPACE::Result result;
+ do
+ {
+ result = static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkEnumerateDeviceLayerProperties(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ), &propertyCount, nullptr ) );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && propertyCount )
+ {
+ properties.resize( propertyCount );
+ result = static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkEnumerateDeviceLayerProperties(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ &propertyCount,
+ reinterpret_cast<VkLayerProperties *>( properties.data() ) ) );
+ VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
+ }
+ } while ( result == VULKAN_HPP_NAMESPACE::Result::eIncomplete );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && ( propertyCount < properties.size() ) )
+ {
+ properties.resize( propertyCount );
+ }
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::enumerateDeviceLayerProperties" );
+ }
+ return properties;
+ }
+
+ VULKAN_HPP_INLINE void Queue::submit( ArrayProxy<const VULKAN_HPP_NAMESPACE::SubmitInfo> const & submits,
+ VULKAN_HPP_NAMESPACE::Fence fence ) const
+ {
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkQueueSubmit( static_cast<VkQueue>( m_queue ),
+ submits.size(),
+ reinterpret_cast<const VkSubmitInfo *>( submits.data() ),
+ static_cast<VkFence>( fence ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Queue::submit" );
+ }
+ }
+
+ VULKAN_HPP_INLINE void Queue::waitIdle() const
+ {
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkQueueWaitIdle( static_cast<VkQueue>( m_queue ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Queue::waitIdle" );
+ }
+ }
+
+ VULKAN_HPP_INLINE void Device::waitIdle() const
+ {
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkDeviceWaitIdle( static_cast<VkDevice>( m_device ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Device::waitIdle" );
+ }
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE void *
+ DeviceMemory::mapMemory( VULKAN_HPP_NAMESPACE::DeviceSize offset,
+ VULKAN_HPP_NAMESPACE::DeviceSize size,
+ VULKAN_HPP_NAMESPACE::MemoryMapFlags flags ) const
+ {
+ void * pData;
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkMapMemory( static_cast<VkDevice>( m_device ),
+ static_cast<VkDeviceMemory>( m_deviceMemory ),
+ static_cast<VkDeviceSize>( offset ),
+ static_cast<VkDeviceSize>( size ),
+ static_cast<VkMemoryMapFlags>( flags ),
+ &pData ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::DeviceMemory::mapMemory" );
+ }
+ return pData;
+ }
+
+ VULKAN_HPP_INLINE void DeviceMemory::unmapMemory() const VULKAN_HPP_NOEXCEPT
+ {
+ getDispatcher()->vkUnmapMemory( static_cast<VkDevice>( m_device ),
+ static_cast<VkDeviceMemory>( m_deviceMemory ) );
+ }
+
+ VULKAN_HPP_INLINE void Device::flushMappedMemoryRanges(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::MappedMemoryRange> const & memoryRanges ) const
+ {
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkFlushMappedMemoryRanges(
+ static_cast<VkDevice>( m_device ),
+ memoryRanges.size(),
+ reinterpret_cast<const VkMappedMemoryRange *>( memoryRanges.data() ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Device::flushMappedMemoryRanges" );
+ }
+ }
+
+ VULKAN_HPP_INLINE void Device::invalidateMappedMemoryRanges(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::MappedMemoryRange> const & memoryRanges ) const
+ {
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkInvalidateMappedMemoryRanges(
+ static_cast<VkDevice>( m_device ),
+ memoryRanges.size(),
+ reinterpret_cast<const VkMappedMemoryRange *>( memoryRanges.data() ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Device::invalidateMappedMemoryRanges" );
+ }
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::DeviceSize
+ DeviceMemory::getCommitment() const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_NAMESPACE::DeviceSize committedMemoryInBytes;
+ getDispatcher()->vkGetDeviceMemoryCommitment( static_cast<VkDevice>( m_device ),
+ static_cast<VkDeviceMemory>( m_deviceMemory ),
+ reinterpret_cast<VkDeviceSize *>( &committedMemoryInBytes ) );
+ return committedMemoryInBytes;
+ }
+
+ VULKAN_HPP_INLINE void Buffer::bindMemory( VULKAN_HPP_NAMESPACE::DeviceMemory memory,
+ VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset ) const
+ {
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkBindBufferMemory( static_cast<VkDevice>( m_device ),
+ static_cast<VkBuffer>( m_buffer ),
+ static_cast<VkDeviceMemory>( memory ),
+ static_cast<VkDeviceSize>( memoryOffset ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Buffer::bindMemory" );
+ }
+ }
+
+ VULKAN_HPP_INLINE void Image::bindMemory( VULKAN_HPP_NAMESPACE::DeviceMemory memory,
+ VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset ) const
+ {
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkBindImageMemory( static_cast<VkDevice>( m_device ),
+ static_cast<VkImage>( m_image ),
+ static_cast<VkDeviceMemory>( memory ),
+ static_cast<VkDeviceSize>( memoryOffset ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Image::bindMemory" );
+ }
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::MemoryRequirements
+ Buffer::getMemoryRequirements() const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_NAMESPACE::MemoryRequirements memoryRequirements;
+ getDispatcher()->vkGetBufferMemoryRequirements( static_cast<VkDevice>( m_device ),
+ static_cast<VkBuffer>( m_buffer ),
+ reinterpret_cast<VkMemoryRequirements *>( &memoryRequirements ) );
+ return memoryRequirements;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::MemoryRequirements
+ Image::getMemoryRequirements() const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_NAMESPACE::MemoryRequirements memoryRequirements;
+ getDispatcher()->vkGetImageMemoryRequirements( static_cast<VkDevice>( m_device ),
+ static_cast<VkImage>( m_image ),
+ reinterpret_cast<VkMemoryRequirements *>( &memoryRequirements ) );
+ return memoryRequirements;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<VULKAN_HPP_NAMESPACE::SparseImageMemoryRequirements>
+ Image::getSparseMemoryRequirements() const VULKAN_HPP_NOEXCEPT
+ {
+ uint32_t sparseMemoryRequirementCount;
+ getDispatcher()->vkGetImageSparseMemoryRequirements(
+ static_cast<VkDevice>( m_device ), static_cast<VkImage>( m_image ), &sparseMemoryRequirementCount, nullptr );
+ std::vector<VULKAN_HPP_NAMESPACE::SparseImageMemoryRequirements> sparseMemoryRequirements(
+ sparseMemoryRequirementCount );
+ getDispatcher()->vkGetImageSparseMemoryRequirements(
+ static_cast<VkDevice>( m_device ),
+ static_cast<VkImage>( m_image ),
+ &sparseMemoryRequirementCount,
+ reinterpret_cast<VkSparseImageMemoryRequirements *>( sparseMemoryRequirements.data() ) );
+ VULKAN_HPP_ASSERT( sparseMemoryRequirementCount <= sparseMemoryRequirements.size() );
+ return sparseMemoryRequirements;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<VULKAN_HPP_NAMESPACE::SparseImageFormatProperties>
+ PhysicalDevice::getSparseImageFormatProperties( VULKAN_HPP_NAMESPACE::Format format,
+ VULKAN_HPP_NAMESPACE::ImageType type,
+ VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples,
+ VULKAN_HPP_NAMESPACE::ImageUsageFlags usage,
+ VULKAN_HPP_NAMESPACE::ImageTiling tiling ) const
+ VULKAN_HPP_NOEXCEPT
+ {
+ uint32_t propertyCount;
+ getDispatcher()->vkGetPhysicalDeviceSparseImageFormatProperties(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ static_cast<VkFormat>( format ),
+ static_cast<VkImageType>( type ),
+ static_cast<VkSampleCountFlagBits>( samples ),
+ static_cast<VkImageUsageFlags>( usage ),
+ static_cast<VkImageTiling>( tiling ),
+ &propertyCount,
+ nullptr );
+ std::vector<VULKAN_HPP_NAMESPACE::SparseImageFormatProperties> properties( propertyCount );
+ getDispatcher()->vkGetPhysicalDeviceSparseImageFormatProperties(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ static_cast<VkFormat>( format ),
+ static_cast<VkImageType>( type ),
+ static_cast<VkSampleCountFlagBits>( samples ),
+ static_cast<VkImageUsageFlags>( usage ),
+ static_cast<VkImageTiling>( tiling ),
+ &propertyCount,
+ reinterpret_cast<VkSparseImageFormatProperties *>( properties.data() ) );
+ VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
+ return properties;
+ }
+
+ VULKAN_HPP_INLINE void Queue::bindSparse( ArrayProxy<const VULKAN_HPP_NAMESPACE::BindSparseInfo> const & bindInfo,
+ VULKAN_HPP_NAMESPACE::Fence fence ) const
+ {
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkQueueBindSparse( static_cast<VkQueue>( m_queue ),
+ bindInfo.size(),
+ reinterpret_cast<const VkBindSparseInfo *>( bindInfo.data() ),
+ static_cast<VkFence>( fence ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Queue::bindSparse" );
+ }
+ }
+
+ VULKAN_HPP_INLINE void Device::resetFences( ArrayProxy<const VULKAN_HPP_NAMESPACE::Fence> const & fences ) const
+ {
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkResetFences(
+ static_cast<VkDevice>( m_device ), fences.size(), reinterpret_cast<const VkFence *>( fences.data() ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Device::resetFences" );
+ }
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::Result Fence::getStatus() const
+ {
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkGetFenceStatus( static_cast<VkDevice>( m_device ), static_cast<VkFence>( m_fence ) ) );
+ if ( ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess ) &&
+ ( result != VULKAN_HPP_NAMESPACE::Result::eNotReady ) )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Fence::getStatus" );
+ }
+ return result;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::Result
+ Device::waitForFences( ArrayProxy<const VULKAN_HPP_NAMESPACE::Fence> const & fences,
+ VULKAN_HPP_NAMESPACE::Bool32 waitAll,
+ uint64_t timeout ) const
+ {
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkWaitForFences( static_cast<VkDevice>( m_device ),
+ fences.size(),
+ reinterpret_cast<const VkFence *>( fences.data() ),
+ static_cast<VkBool32>( waitAll ),
+ timeout ) );
+ if ( ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess ) &&
+ ( result != VULKAN_HPP_NAMESPACE::Result::eTimeout ) )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Device::waitForFences" );
+ }
+ return result;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::Result Event::getStatus() const
+ {
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkGetEventStatus( static_cast<VkDevice>( m_device ), static_cast<VkEvent>( m_event ) ) );
+ if ( ( result != VULKAN_HPP_NAMESPACE::Result::eEventSet ) &&
+ ( result != VULKAN_HPP_NAMESPACE::Result::eEventReset ) )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Event::getStatus" );
+ }
+ return result;
+ }
+
+ VULKAN_HPP_INLINE void Event::set() const
+ {
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkSetEvent( static_cast<VkDevice>( m_device ), static_cast<VkEvent>( m_event ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Event::set" );
+ }
+ }
+
+ VULKAN_HPP_INLINE void Event::reset() const
+ {
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkResetEvent( static_cast<VkDevice>( m_device ), static_cast<VkEvent>( m_event ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Event::reset" );
+ }
+ }
+
+ template <typename T>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::pair<VULKAN_HPP_NAMESPACE::Result, std::vector<T>>
+ QueryPool::getResults( uint32_t firstQuery,
+ uint32_t queryCount,
+ size_t dataSize,
+ VULKAN_HPP_NAMESPACE::DeviceSize stride,
+ VULKAN_HPP_NAMESPACE::QueryResultFlags flags ) const
+ {
+ VULKAN_HPP_ASSERT( dataSize % sizeof( T ) == 0 );
+ std::vector<T> data( dataSize / sizeof( T ) );
+ Result result =
+ static_cast<Result>( getDispatcher()->vkGetQueryPoolResults( static_cast<VkDevice>( m_device ),
+ static_cast<VkQueryPool>( m_queryPool ),
+ firstQuery,
+ queryCount,
+ data.size() * sizeof( T ),
+ reinterpret_cast<void *>( data.data() ),
+ static_cast<VkDeviceSize>( stride ),
+ static_cast<VkQueryResultFlags>( flags ) ) );
+ if ( ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess ) &&
+ ( result != VULKAN_HPP_NAMESPACE::Result::eNotReady ) )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::QueryPool::getResults" );
+ }
+ return std::make_pair( result, data );
+ }
+
+ template <typename T>
+ VULKAN_HPP_NODISCARD std::pair<VULKAN_HPP_NAMESPACE::Result, T>
+ QueryPool::getResult( uint32_t firstQuery,
+ uint32_t queryCount,
+ VULKAN_HPP_NAMESPACE::DeviceSize stride,
+ VULKAN_HPP_NAMESPACE::QueryResultFlags flags ) const
+ {
+ T data;
+ Result result =
+ static_cast<Result>( getDispatcher()->vkGetQueryPoolResults( static_cast<VkDevice>( m_device ),
+ static_cast<VkQueryPool>( m_queryPool ),
+ firstQuery,
+ queryCount,
+ sizeof( T ),
+ reinterpret_cast<void *>( &data ),
+ static_cast<VkDeviceSize>( stride ),
+ static_cast<VkQueryResultFlags>( flags ) ) );
+ if ( ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess ) &&
+ ( result != VULKAN_HPP_NAMESPACE::Result::eNotReady ) )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::QueryPool::getResult" );
+ }
+ return std::make_pair( result, data );
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::SubresourceLayout
+ Image::getSubresourceLayout( const ImageSubresource & subresource ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_NAMESPACE::SubresourceLayout layout;
+ getDispatcher()->vkGetImageSubresourceLayout( static_cast<VkDevice>( m_device ),
+ static_cast<VkImage>( m_image ),
+ reinterpret_cast<const VkImageSubresource *>( &subresource ),
+ reinterpret_cast<VkSubresourceLayout *>( &layout ) );
+ return layout;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<uint8_t> PipelineCache::getData() const
+ {
+ std::vector<uint8_t> data;
+ size_t dataSize;
+ VULKAN_HPP_NAMESPACE::Result result;
+ do
+ {
+ result = static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetPipelineCacheData(
+ static_cast<VkDevice>( m_device ), static_cast<VkPipelineCache>( m_pipelineCache ), &dataSize, nullptr ) );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && dataSize )
+ {
+ data.resize( dataSize );
+ result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkGetPipelineCacheData( static_cast<VkDevice>( m_device ),
+ static_cast<VkPipelineCache>( m_pipelineCache ),
+ &dataSize,
+ reinterpret_cast<void *>( data.data() ) ) );
+ VULKAN_HPP_ASSERT( dataSize <= data.size() );
+ }
+ } while ( result == VULKAN_HPP_NAMESPACE::Result::eIncomplete );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && ( dataSize < data.size() ) )
+ {
+ data.resize( dataSize );
+ }
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::PipelineCache::getData" );
+ }
+ return data;
+ }
+
+ VULKAN_HPP_INLINE void
+ PipelineCache::merge( ArrayProxy<const VULKAN_HPP_NAMESPACE::PipelineCache> const & srcCaches ) const
+ {
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkMergePipelineCaches( static_cast<VkDevice>( m_device ),
+ static_cast<VkPipelineCache>( m_pipelineCache ),
+ srcCaches.size(),
+ reinterpret_cast<const VkPipelineCache *>( srcCaches.data() ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::PipelineCache::merge" );
+ }
+ }
+
+ VULKAN_HPP_INLINE void
+ DescriptorPool::reset( VULKAN_HPP_NAMESPACE::DescriptorPoolResetFlags flags ) const VULKAN_HPP_NOEXCEPT
+ {
+ getDispatcher()->vkResetDescriptorPool( static_cast<VkDevice>( m_device ),
+ static_cast<VkDescriptorPool>( m_descriptorPool ),
+ static_cast<VkDescriptorPoolResetFlags>( flags ) );
+ }
+
+ VULKAN_HPP_INLINE void Device::updateDescriptorSets(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::WriteDescriptorSet> const & descriptorWrites,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::CopyDescriptorSet> const & descriptorCopies ) const VULKAN_HPP_NOEXCEPT
+ {
+ getDispatcher()->vkUpdateDescriptorSets(
+ static_cast<VkDevice>( m_device ),
+ descriptorWrites.size(),
+ reinterpret_cast<const VkWriteDescriptorSet *>( descriptorWrites.data() ),
+ descriptorCopies.size(),
+ reinterpret_cast<const VkCopyDescriptorSet *>( descriptorCopies.data() ) );
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::Extent2D
+ RenderPass::getRenderAreaGranularity() const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_NAMESPACE::Extent2D granularity;
+ getDispatcher()->vkGetRenderAreaGranularity( static_cast<VkDevice>( m_device ),
+ static_cast<VkRenderPass>( m_renderPass ),
+ reinterpret_cast<VkExtent2D *>( &granularity ) );
+ return granularity;
+ }
+
+ VULKAN_HPP_INLINE void CommandPool::reset( VULKAN_HPP_NAMESPACE::CommandPoolResetFlags flags ) const
+ {
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkResetCommandPool( static_cast<VkDevice>( m_device ),
+ static_cast<VkCommandPool>( m_commandPool ),
+ static_cast<VkCommandPoolResetFlags>( flags ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::CommandPool::reset" );
+ }
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::begin( const CommandBufferBeginInfo & beginInfo ) const
+ {
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkBeginCommandBuffer( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ reinterpret_cast<const VkCommandBufferBeginInfo *>( &beginInfo ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::CommandBuffer::begin" );
+ }
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::end() const
+ {
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkEndCommandBuffer( static_cast<VkCommandBuffer>( m_commandBuffer ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::CommandBuffer::end" );
+ }
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::reset( VULKAN_HPP_NAMESPACE::CommandBufferResetFlags flags ) const
+ {
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkResetCommandBuffer(
+ static_cast<VkCommandBuffer>( m_commandBuffer ), static_cast<VkCommandBufferResetFlags>( flags ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::CommandBuffer::reset" );
+ }
+ }
+
+ VULKAN_HPP_INLINE void
+ CommandBuffer::bindPipeline( VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint,
+ VULKAN_HPP_NAMESPACE::Pipeline pipeline ) const VULKAN_HPP_NOEXCEPT
+ {
+ getDispatcher()->vkCmdBindPipeline( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkPipelineBindPoint>( pipelineBindPoint ),
+ static_cast<VkPipeline>( pipeline ) );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::setViewport(
+ uint32_t firstViewport,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::Viewport> const & viewports ) const VULKAN_HPP_NOEXCEPT
+ {
+ getDispatcher()->vkCmdSetViewport( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ firstViewport,
+ viewports.size(),
+ reinterpret_cast<const VkViewport *>( viewports.data() ) );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::setScissor(
+ uint32_t firstScissor, ArrayProxy<const VULKAN_HPP_NAMESPACE::Rect2D> const & scissors ) const VULKAN_HPP_NOEXCEPT
+ {
+ getDispatcher()->vkCmdSetScissor( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ firstScissor,
+ scissors.size(),
+ reinterpret_cast<const VkRect2D *>( scissors.data() ) );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::setLineWidth( float lineWidth ) const VULKAN_HPP_NOEXCEPT
+ {
+ getDispatcher()->vkCmdSetLineWidth( static_cast<VkCommandBuffer>( m_commandBuffer ), lineWidth );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::setDepthBias( float depthBiasConstantFactor,
+ float depthBiasClamp,
+ float depthBiasSlopeFactor ) const VULKAN_HPP_NOEXCEPT
+ {
+ getDispatcher()->vkCmdSetDepthBias( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ depthBiasConstantFactor,
+ depthBiasClamp,
+ depthBiasSlopeFactor );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::setBlendConstants( const float blendConstants[4] ) const VULKAN_HPP_NOEXCEPT
+ {
+ getDispatcher()->vkCmdSetBlendConstants( static_cast<VkCommandBuffer>( m_commandBuffer ), blendConstants );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::setDepthBounds( float minDepthBounds,
+ float maxDepthBounds ) const VULKAN_HPP_NOEXCEPT
+ {
+ getDispatcher()->vkCmdSetDepthBounds(
+ static_cast<VkCommandBuffer>( m_commandBuffer ), minDepthBounds, maxDepthBounds );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::setStencilCompareMask( VULKAN_HPP_NAMESPACE::StencilFaceFlags faceMask,
+ uint32_t compareMask ) const VULKAN_HPP_NOEXCEPT
+ {
+ getDispatcher()->vkCmdSetStencilCompareMask(
+ static_cast<VkCommandBuffer>( m_commandBuffer ), static_cast<VkStencilFaceFlags>( faceMask ), compareMask );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::setStencilWriteMask( VULKAN_HPP_NAMESPACE::StencilFaceFlags faceMask,
+ uint32_t writeMask ) const VULKAN_HPP_NOEXCEPT
+ {
+ getDispatcher()->vkCmdSetStencilWriteMask(
+ static_cast<VkCommandBuffer>( m_commandBuffer ), static_cast<VkStencilFaceFlags>( faceMask ), writeMask );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::setStencilReference( VULKAN_HPP_NAMESPACE::StencilFaceFlags faceMask,
+ uint32_t reference ) const VULKAN_HPP_NOEXCEPT
+ {
+ getDispatcher()->vkCmdSetStencilReference(
+ static_cast<VkCommandBuffer>( m_commandBuffer ), static_cast<VkStencilFaceFlags>( faceMask ), reference );
+ }
+
+ VULKAN_HPP_INLINE void
+ CommandBuffer::bindDescriptorSets( VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint,
+ VULKAN_HPP_NAMESPACE::PipelineLayout layout,
+ uint32_t firstSet,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::DescriptorSet> const & descriptorSets,
+ ArrayProxy<const uint32_t> const & dynamicOffsets ) const VULKAN_HPP_NOEXCEPT
+ {
+ getDispatcher()->vkCmdBindDescriptorSets( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkPipelineBindPoint>( pipelineBindPoint ),
+ static_cast<VkPipelineLayout>( layout ),
+ firstSet,
+ descriptorSets.size(),
+ reinterpret_cast<const VkDescriptorSet *>( descriptorSets.data() ),
+ dynamicOffsets.size(),
+ dynamicOffsets.data() );
+ }
+
+ VULKAN_HPP_INLINE void
+ CommandBuffer::bindIndexBuffer( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize offset,
+ VULKAN_HPP_NAMESPACE::IndexType indexType ) const VULKAN_HPP_NOEXCEPT
+ {
+ getDispatcher()->vkCmdBindIndexBuffer( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkBuffer>( buffer ),
+ static_cast<VkDeviceSize>( offset ),
+ static_cast<VkIndexType>( indexType ) );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::bindVertexBuffers(
+ uint32_t firstBinding,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::Buffer> const & buffers,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::DeviceSize> const & offsets ) const VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS
+ {
+# ifdef VULKAN_HPP_NO_EXCEPTIONS
+ VULKAN_HPP_ASSERT( buffers.size() == offsets.size() );
+# else
+ if ( buffers.size() != offsets.size() )
+ {
+ throw LogicError( VULKAN_HPP_NAMESPACE_STRING
+ "::CommandBuffer::bindVertexBuffers: buffers.size() != offsets.size()" );
+ }
+# endif /*VULKAN_HPP_NO_EXCEPTIONS*/
+
+ getDispatcher()->vkCmdBindVertexBuffers( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ firstBinding,
+ buffers.size(),
+ reinterpret_cast<const VkBuffer *>( buffers.data() ),
+ reinterpret_cast<const VkDeviceSize *>( offsets.data() ) );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::draw( uint32_t vertexCount,
+ uint32_t instanceCount,
+ uint32_t firstVertex,
+ uint32_t firstInstance ) const VULKAN_HPP_NOEXCEPT
+ {
+ getDispatcher()->vkCmdDraw(
+ static_cast<VkCommandBuffer>( m_commandBuffer ), vertexCount, instanceCount, firstVertex, firstInstance );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::drawIndexed( uint32_t indexCount,
+ uint32_t instanceCount,
+ uint32_t firstIndex,
+ int32_t vertexOffset,
+ uint32_t firstInstance ) const VULKAN_HPP_NOEXCEPT
+ {
+ getDispatcher()->vkCmdDrawIndexed( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ indexCount,
+ instanceCount,
+ firstIndex,
+ vertexOffset,
+ firstInstance );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::drawIndirect( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize offset,
+ uint32_t drawCount,
+ uint32_t stride ) const VULKAN_HPP_NOEXCEPT
+ {
+ getDispatcher()->vkCmdDrawIndirect( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkBuffer>( buffer ),
+ static_cast<VkDeviceSize>( offset ),
+ drawCount,
+ stride );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::drawIndexedIndirect( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize offset,
+ uint32_t drawCount,
+ uint32_t stride ) const VULKAN_HPP_NOEXCEPT
+ {
+ getDispatcher()->vkCmdDrawIndexedIndirect( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkBuffer>( buffer ),
+ static_cast<VkDeviceSize>( offset ),
+ drawCount,
+ stride );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::dispatch( uint32_t groupCountX,
+ uint32_t groupCountY,
+ uint32_t groupCountZ ) const VULKAN_HPP_NOEXCEPT
+ {
+ getDispatcher()->vkCmdDispatch(
+ static_cast<VkCommandBuffer>( m_commandBuffer ), groupCountX, groupCountY, groupCountZ );
+ }
+
+ VULKAN_HPP_INLINE void
+ CommandBuffer::dispatchIndirect( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize offset ) const VULKAN_HPP_NOEXCEPT
+ {
+ getDispatcher()->vkCmdDispatchIndirect( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkBuffer>( buffer ),
+ static_cast<VkDeviceSize>( offset ) );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::copyBuffer(
+ VULKAN_HPP_NAMESPACE::Buffer srcBuffer,
+ VULKAN_HPP_NAMESPACE::Buffer dstBuffer,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::BufferCopy> const & regions ) const VULKAN_HPP_NOEXCEPT
+ {
+ getDispatcher()->vkCmdCopyBuffer( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkBuffer>( srcBuffer ),
+ static_cast<VkBuffer>( dstBuffer ),
+ regions.size(),
+ reinterpret_cast<const VkBufferCopy *>( regions.data() ) );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::copyImage(
+ VULKAN_HPP_NAMESPACE::Image srcImage,
+ VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout,
+ VULKAN_HPP_NAMESPACE::Image dstImage,
+ VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::ImageCopy> const & regions ) const VULKAN_HPP_NOEXCEPT
+ {
+ getDispatcher()->vkCmdCopyImage( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkImage>( srcImage ),
+ static_cast<VkImageLayout>( srcImageLayout ),
+ static_cast<VkImage>( dstImage ),
+ static_cast<VkImageLayout>( dstImageLayout ),
+ regions.size(),
+ reinterpret_cast<const VkImageCopy *>( regions.data() ) );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::blitImage( VULKAN_HPP_NAMESPACE::Image srcImage,
+ VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout,
+ VULKAN_HPP_NAMESPACE::Image dstImage,
+ VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::ImageBlit> const & regions,
+ VULKAN_HPP_NAMESPACE::Filter filter ) const VULKAN_HPP_NOEXCEPT
+ {
+ getDispatcher()->vkCmdBlitImage( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkImage>( srcImage ),
+ static_cast<VkImageLayout>( srcImageLayout ),
+ static_cast<VkImage>( dstImage ),
+ static_cast<VkImageLayout>( dstImageLayout ),
+ regions.size(),
+ reinterpret_cast<const VkImageBlit *>( regions.data() ),
+ static_cast<VkFilter>( filter ) );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::copyBufferToImage(
+ VULKAN_HPP_NAMESPACE::Buffer srcBuffer,
+ VULKAN_HPP_NAMESPACE::Image dstImage,
+ VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::BufferImageCopy> const & regions ) const VULKAN_HPP_NOEXCEPT
+ {
+ getDispatcher()->vkCmdCopyBufferToImage( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkBuffer>( srcBuffer ),
+ static_cast<VkImage>( dstImage ),
+ static_cast<VkImageLayout>( dstImageLayout ),
+ regions.size(),
+ reinterpret_cast<const VkBufferImageCopy *>( regions.data() ) );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::copyImageToBuffer(
+ VULKAN_HPP_NAMESPACE::Image srcImage,
+ VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout,
+ VULKAN_HPP_NAMESPACE::Buffer dstBuffer,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::BufferImageCopy> const & regions ) const VULKAN_HPP_NOEXCEPT
+ {
+ getDispatcher()->vkCmdCopyImageToBuffer( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkImage>( srcImage ),
+ static_cast<VkImageLayout>( srcImageLayout ),
+ static_cast<VkBuffer>( dstBuffer ),
+ regions.size(),
+ reinterpret_cast<const VkBufferImageCopy *>( regions.data() ) );
+ }
+
+ template <typename T>
+ VULKAN_HPP_INLINE void CommandBuffer::updateBuffer( VULKAN_HPP_NAMESPACE::Buffer dstBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize dstOffset,
+ ArrayProxy<const T> const & data ) const VULKAN_HPP_NOEXCEPT
+ {
+ getDispatcher()->vkCmdUpdateBuffer( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkBuffer>( dstBuffer ),
+ static_cast<VkDeviceSize>( dstOffset ),
+ data.size() * sizeof( T ),
+ reinterpret_cast<const void *>( data.data() ) );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::fillBuffer( VULKAN_HPP_NAMESPACE::Buffer dstBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize dstOffset,
+ VULKAN_HPP_NAMESPACE::DeviceSize size,
+ uint32_t data ) const VULKAN_HPP_NOEXCEPT
+ {
+ getDispatcher()->vkCmdFillBuffer( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkBuffer>( dstBuffer ),
+ static_cast<VkDeviceSize>( dstOffset ),
+ static_cast<VkDeviceSize>( size ),
+ data );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::clearColorImage(
+ VULKAN_HPP_NAMESPACE::Image image,
+ VULKAN_HPP_NAMESPACE::ImageLayout imageLayout,
+ const ClearColorValue & color,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::ImageSubresourceRange> const & ranges ) const VULKAN_HPP_NOEXCEPT
+ {
+ getDispatcher()->vkCmdClearColorImage( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkImage>( image ),
+ static_cast<VkImageLayout>( imageLayout ),
+ reinterpret_cast<const VkClearColorValue *>( &color ),
+ ranges.size(),
+ reinterpret_cast<const VkImageSubresourceRange *>( ranges.data() ) );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::clearDepthStencilImage(
+ VULKAN_HPP_NAMESPACE::Image image,
+ VULKAN_HPP_NAMESPACE::ImageLayout imageLayout,
+ const ClearDepthStencilValue & depthStencil,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::ImageSubresourceRange> const & ranges ) const VULKAN_HPP_NOEXCEPT
+ {
+ getDispatcher()->vkCmdClearDepthStencilImage(
+ static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkImage>( image ),
+ static_cast<VkImageLayout>( imageLayout ),
+ reinterpret_cast<const VkClearDepthStencilValue *>( &depthStencil ),
+ ranges.size(),
+ reinterpret_cast<const VkImageSubresourceRange *>( ranges.data() ) );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::clearAttachments(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::ClearAttachment> const & attachments,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::ClearRect> const & rects ) const VULKAN_HPP_NOEXCEPT
+ {
+ getDispatcher()->vkCmdClearAttachments( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ attachments.size(),
+ reinterpret_cast<const VkClearAttachment *>( attachments.data() ),
+ rects.size(),
+ reinterpret_cast<const VkClearRect *>( rects.data() ) );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::resolveImage(
+ VULKAN_HPP_NAMESPACE::Image srcImage,
+ VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout,
+ VULKAN_HPP_NAMESPACE::Image dstImage,
+ VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::ImageResolve> const & regions ) const VULKAN_HPP_NOEXCEPT
+ {
+ getDispatcher()->vkCmdResolveImage( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkImage>( srcImage ),
+ static_cast<VkImageLayout>( srcImageLayout ),
+ static_cast<VkImage>( dstImage ),
+ static_cast<VkImageLayout>( dstImageLayout ),
+ regions.size(),
+ reinterpret_cast<const VkImageResolve *>( regions.data() ) );
+ }
+
+ VULKAN_HPP_INLINE void
+ CommandBuffer::setEvent( VULKAN_HPP_NAMESPACE::Event event,
+ VULKAN_HPP_NAMESPACE::PipelineStageFlags stageMask ) const VULKAN_HPP_NOEXCEPT
+ {
+ getDispatcher()->vkCmdSetEvent( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkEvent>( event ),
+ static_cast<VkPipelineStageFlags>( stageMask ) );
+ }
+
+ VULKAN_HPP_INLINE void
+ CommandBuffer::resetEvent( VULKAN_HPP_NAMESPACE::Event event,
+ VULKAN_HPP_NAMESPACE::PipelineStageFlags stageMask ) const VULKAN_HPP_NOEXCEPT
+ {
+ getDispatcher()->vkCmdResetEvent( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkEvent>( event ),
+ static_cast<VkPipelineStageFlags>( stageMask ) );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::waitEvents(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::Event> const & events,
+ VULKAN_HPP_NAMESPACE::PipelineStageFlags srcStageMask,
+ VULKAN_HPP_NAMESPACE::PipelineStageFlags dstStageMask,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::MemoryBarrier> const & memoryBarriers,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::BufferMemoryBarrier> const & bufferMemoryBarriers,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::ImageMemoryBarrier> const & imageMemoryBarriers ) const VULKAN_HPP_NOEXCEPT
+ {
+ getDispatcher()->vkCmdWaitEvents( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ events.size(),
+ reinterpret_cast<const VkEvent *>( events.data() ),
+ static_cast<VkPipelineStageFlags>( srcStageMask ),
+ static_cast<VkPipelineStageFlags>( dstStageMask ),
+ memoryBarriers.size(),
+ reinterpret_cast<const VkMemoryBarrier *>( memoryBarriers.data() ),
+ bufferMemoryBarriers.size(),
+ reinterpret_cast<const VkBufferMemoryBarrier *>( bufferMemoryBarriers.data() ),
+ imageMemoryBarriers.size(),
+ reinterpret_cast<const VkImageMemoryBarrier *>( imageMemoryBarriers.data() ) );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::pipelineBarrier(
+ VULKAN_HPP_NAMESPACE::PipelineStageFlags srcStageMask,
+ VULKAN_HPP_NAMESPACE::PipelineStageFlags dstStageMask,
+ VULKAN_HPP_NAMESPACE::DependencyFlags dependencyFlags,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::MemoryBarrier> const & memoryBarriers,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::BufferMemoryBarrier> const & bufferMemoryBarriers,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::ImageMemoryBarrier> const & imageMemoryBarriers ) const VULKAN_HPP_NOEXCEPT
+ {
+ getDispatcher()->vkCmdPipelineBarrier(
+ static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkPipelineStageFlags>( srcStageMask ),
+ static_cast<VkPipelineStageFlags>( dstStageMask ),
+ static_cast<VkDependencyFlags>( dependencyFlags ),
+ memoryBarriers.size(),
+ reinterpret_cast<const VkMemoryBarrier *>( memoryBarriers.data() ),
+ bufferMemoryBarriers.size(),
+ reinterpret_cast<const VkBufferMemoryBarrier *>( bufferMemoryBarriers.data() ),
+ imageMemoryBarriers.size(),
+ reinterpret_cast<const VkImageMemoryBarrier *>( imageMemoryBarriers.data() ) );
+ }
+
+ VULKAN_HPP_INLINE void
+ CommandBuffer::beginQuery( VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ uint32_t query,
+ VULKAN_HPP_NAMESPACE::QueryControlFlags flags ) const VULKAN_HPP_NOEXCEPT
+ {
+ getDispatcher()->vkCmdBeginQuery( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkQueryPool>( queryPool ),
+ query,
+ static_cast<VkQueryControlFlags>( flags ) );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::endQuery( VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ uint32_t query ) const VULKAN_HPP_NOEXCEPT
+ {
+ getDispatcher()->vkCmdEndQuery(
+ static_cast<VkCommandBuffer>( m_commandBuffer ), static_cast<VkQueryPool>( queryPool ), query );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::resetQueryPool( VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ uint32_t firstQuery,
+ uint32_t queryCount ) const VULKAN_HPP_NOEXCEPT
+ {
+ getDispatcher()->vkCmdResetQueryPool( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkQueryPool>( queryPool ),
+ firstQuery,
+ queryCount );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::writeTimestamp( VULKAN_HPP_NAMESPACE::PipelineStageFlagBits pipelineStage,
+ VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ uint32_t query ) const VULKAN_HPP_NOEXCEPT
+ {
+ getDispatcher()->vkCmdWriteTimestamp( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkPipelineStageFlagBits>( pipelineStage ),
+ static_cast<VkQueryPool>( queryPool ),
+ query );
+ }
+
+ VULKAN_HPP_INLINE void
+ CommandBuffer::copyQueryPoolResults( VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ uint32_t firstQuery,
+ uint32_t queryCount,
+ VULKAN_HPP_NAMESPACE::Buffer dstBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize dstOffset,
+ VULKAN_HPP_NAMESPACE::DeviceSize stride,
+ VULKAN_HPP_NAMESPACE::QueryResultFlags flags ) const VULKAN_HPP_NOEXCEPT
+ {
+ getDispatcher()->vkCmdCopyQueryPoolResults( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkQueryPool>( queryPool ),
+ firstQuery,
+ queryCount,
+ static_cast<VkBuffer>( dstBuffer ),
+ static_cast<VkDeviceSize>( dstOffset ),
+ static_cast<VkDeviceSize>( stride ),
+ static_cast<VkQueryResultFlags>( flags ) );
+ }
+
+ template <typename T>
+ VULKAN_HPP_INLINE void CommandBuffer::pushConstants( VULKAN_HPP_NAMESPACE::PipelineLayout layout,
+ VULKAN_HPP_NAMESPACE::ShaderStageFlags stageFlags,
+ uint32_t offset,
+ ArrayProxy<const T> const & values ) const VULKAN_HPP_NOEXCEPT
+ {
+ getDispatcher()->vkCmdPushConstants( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkPipelineLayout>( layout ),
+ static_cast<VkShaderStageFlags>( stageFlags ),
+ offset,
+ values.size() * sizeof( T ),
+ reinterpret_cast<const void *>( values.data() ) );
+ }
+
+ VULKAN_HPP_INLINE void
+ CommandBuffer::beginRenderPass( const RenderPassBeginInfo & renderPassBegin,
+ VULKAN_HPP_NAMESPACE::SubpassContents contents ) const VULKAN_HPP_NOEXCEPT
+ {
+ getDispatcher()->vkCmdBeginRenderPass( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ reinterpret_cast<const VkRenderPassBeginInfo *>( &renderPassBegin ),
+ static_cast<VkSubpassContents>( contents ) );
+ }
+
+ VULKAN_HPP_INLINE void
+ CommandBuffer::nextSubpass( VULKAN_HPP_NAMESPACE::SubpassContents contents ) const VULKAN_HPP_NOEXCEPT
+ {
+ getDispatcher()->vkCmdNextSubpass( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkSubpassContents>( contents ) );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::endRenderPass() const VULKAN_HPP_NOEXCEPT
+ {
+ getDispatcher()->vkCmdEndRenderPass( static_cast<VkCommandBuffer>( m_commandBuffer ) );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::executeCommands(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::CommandBuffer> const & commandBuffers ) const VULKAN_HPP_NOEXCEPT
+ {
+ getDispatcher()->vkCmdExecuteCommands( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ commandBuffers.size(),
+ reinterpret_cast<const VkCommandBuffer *>( commandBuffers.data() ) );
+ }
+
+ //=== VK_VERSION_1_1 ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE uint32_t Context::enumerateInstanceVersion() const
+ {
+ uint32_t apiVersion;
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkEnumerateInstanceVersion( &apiVersion ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Context::enumerateInstanceVersion" );
+ }
+ return apiVersion;
+ }
+
+ VULKAN_HPP_INLINE void
+ Device::bindBufferMemory2( ArrayProxy<const VULKAN_HPP_NAMESPACE::BindBufferMemoryInfo> const & bindInfos ) const
+ {
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkBindBufferMemory2( static_cast<VkDevice>( m_device ),
+ bindInfos.size(),
+ reinterpret_cast<const VkBindBufferMemoryInfo *>( bindInfos.data() ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Device::bindBufferMemory2" );
+ }
+ }
+
+ VULKAN_HPP_INLINE void
+ Device::bindImageMemory2( ArrayProxy<const VULKAN_HPP_NAMESPACE::BindImageMemoryInfo> const & bindInfos ) const
+ {
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkBindImageMemory2( static_cast<VkDevice>( m_device ),
+ bindInfos.size(),
+ reinterpret_cast<const VkBindImageMemoryInfo *>( bindInfos.data() ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Device::bindImageMemory2" );
+ }
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::PeerMemoryFeatureFlags
+ Device::getGroupPeerMemoryFeatures( uint32_t heapIndex,
+ uint32_t localDeviceIndex,
+ uint32_t remoteDeviceIndex ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_NAMESPACE::PeerMemoryFeatureFlags peerMemoryFeatures;
+ getDispatcher()->vkGetDeviceGroupPeerMemoryFeatures(
+ static_cast<VkDevice>( m_device ),
+ heapIndex,
+ localDeviceIndex,
+ remoteDeviceIndex,
+ reinterpret_cast<VkPeerMemoryFeatureFlags *>( &peerMemoryFeatures ) );
+ return peerMemoryFeatures;
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::setDeviceMask( uint32_t deviceMask ) const VULKAN_HPP_NOEXCEPT
+ {
+ getDispatcher()->vkCmdSetDeviceMask( static_cast<VkCommandBuffer>( m_commandBuffer ), deviceMask );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::dispatchBase( uint32_t baseGroupX,
+ uint32_t baseGroupY,
+ uint32_t baseGroupZ,
+ uint32_t groupCountX,
+ uint32_t groupCountY,
+ uint32_t groupCountZ ) const VULKAN_HPP_NOEXCEPT
+ {
+ getDispatcher()->vkCmdDispatchBase( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ baseGroupX,
+ baseGroupY,
+ baseGroupZ,
+ groupCountX,
+ groupCountY,
+ groupCountZ );
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<VULKAN_HPP_NAMESPACE::PhysicalDeviceGroupProperties>
+ Instance::enumeratePhysicalDeviceGroups() const
+ {
+ std::vector<VULKAN_HPP_NAMESPACE::PhysicalDeviceGroupProperties> physicalDeviceGroupProperties;
+ uint32_t physicalDeviceGroupCount;
+ VULKAN_HPP_NAMESPACE::Result result;
+ do
+ {
+ result = static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkEnumeratePhysicalDeviceGroups(
+ static_cast<VkInstance>( m_instance ), &physicalDeviceGroupCount, nullptr ) );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && physicalDeviceGroupCount )
+ {
+ physicalDeviceGroupProperties.resize( physicalDeviceGroupCount );
+ result = static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkEnumeratePhysicalDeviceGroups(
+ static_cast<VkInstance>( m_instance ),
+ &physicalDeviceGroupCount,
+ reinterpret_cast<VkPhysicalDeviceGroupProperties *>( physicalDeviceGroupProperties.data() ) ) );
+ VULKAN_HPP_ASSERT( physicalDeviceGroupCount <= physicalDeviceGroupProperties.size() );
+ }
+ } while ( result == VULKAN_HPP_NAMESPACE::Result::eIncomplete );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) &&
+ ( physicalDeviceGroupCount < physicalDeviceGroupProperties.size() ) )
+ {
+ physicalDeviceGroupProperties.resize( physicalDeviceGroupCount );
+ }
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Instance::enumeratePhysicalDeviceGroups" );
+ }
+ return physicalDeviceGroupProperties;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::MemoryRequirements2
+ Device::getImageMemoryRequirements2( const ImageMemoryRequirementsInfo2 & info ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_NAMESPACE::MemoryRequirements2 memoryRequirements;
+ getDispatcher()->vkGetImageMemoryRequirements2(
+ static_cast<VkDevice>( m_device ),
+ reinterpret_cast<const VkImageMemoryRequirementsInfo2 *>( &info ),
+ reinterpret_cast<VkMemoryRequirements2 *>( &memoryRequirements ) );
+ return memoryRequirements;
+ }
+
+ template <typename X, typename Y, typename... Z>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE StructureChain<X, Y, Z...>
+ Device::getImageMemoryRequirements2( const ImageMemoryRequirementsInfo2 & info ) const VULKAN_HPP_NOEXCEPT
+ {
+ StructureChain<X, Y, Z...> structureChain;
+ VULKAN_HPP_NAMESPACE::MemoryRequirements2 & memoryRequirements =
+ structureChain.template get<VULKAN_HPP_NAMESPACE::MemoryRequirements2>();
+ getDispatcher()->vkGetImageMemoryRequirements2(
+ static_cast<VkDevice>( m_device ),
+ reinterpret_cast<const VkImageMemoryRequirementsInfo2 *>( &info ),
+ reinterpret_cast<VkMemoryRequirements2 *>( &memoryRequirements ) );
+ return structureChain;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::MemoryRequirements2
+ Device::getBufferMemoryRequirements2( const BufferMemoryRequirementsInfo2 & info ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_NAMESPACE::MemoryRequirements2 memoryRequirements;
+ getDispatcher()->vkGetBufferMemoryRequirements2(
+ static_cast<VkDevice>( m_device ),
+ reinterpret_cast<const VkBufferMemoryRequirementsInfo2 *>( &info ),
+ reinterpret_cast<VkMemoryRequirements2 *>( &memoryRequirements ) );
+ return memoryRequirements;
+ }
+
+ template <typename X, typename Y, typename... Z>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE StructureChain<X, Y, Z...>
+ Device::getBufferMemoryRequirements2( const BufferMemoryRequirementsInfo2 & info ) const VULKAN_HPP_NOEXCEPT
+ {
+ StructureChain<X, Y, Z...> structureChain;
+ VULKAN_HPP_NAMESPACE::MemoryRequirements2 & memoryRequirements =
+ structureChain.template get<VULKAN_HPP_NAMESPACE::MemoryRequirements2>();
+ getDispatcher()->vkGetBufferMemoryRequirements2(
+ static_cast<VkDevice>( m_device ),
+ reinterpret_cast<const VkBufferMemoryRequirementsInfo2 *>( &info ),
+ reinterpret_cast<VkMemoryRequirements2 *>( &memoryRequirements ) );
+ return structureChain;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<VULKAN_HPP_NAMESPACE::SparseImageMemoryRequirements2>
+ Device::getImageSparseMemoryRequirements2( const ImageSparseMemoryRequirementsInfo2 & info ) const
+ VULKAN_HPP_NOEXCEPT
+ {
+ uint32_t sparseMemoryRequirementCount;
+ getDispatcher()->vkGetImageSparseMemoryRequirements2(
+ static_cast<VkDevice>( m_device ),
+ reinterpret_cast<const VkImageSparseMemoryRequirementsInfo2 *>( &info ),
+ &sparseMemoryRequirementCount,
+ nullptr );
+ std::vector<VULKAN_HPP_NAMESPACE::SparseImageMemoryRequirements2> sparseMemoryRequirements(
+ sparseMemoryRequirementCount );
+ getDispatcher()->vkGetImageSparseMemoryRequirements2(
+ static_cast<VkDevice>( m_device ),
+ reinterpret_cast<const VkImageSparseMemoryRequirementsInfo2 *>( &info ),
+ &sparseMemoryRequirementCount,
+ reinterpret_cast<VkSparseImageMemoryRequirements2 *>( sparseMemoryRequirements.data() ) );
+ VULKAN_HPP_ASSERT( sparseMemoryRequirementCount <= sparseMemoryRequirements.size() );
+ return sparseMemoryRequirements;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures2
+ PhysicalDevice::getFeatures2() const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures2 features;
+ getDispatcher()->vkGetPhysicalDeviceFeatures2( static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ reinterpret_cast<VkPhysicalDeviceFeatures2 *>( &features ) );
+ return features;
+ }
+
+ template <typename X, typename Y, typename... Z>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE StructureChain<X, Y, Z...>
+ PhysicalDevice::getFeatures2() const VULKAN_HPP_NOEXCEPT
+ {
+ StructureChain<X, Y, Z...> structureChain;
+ VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures2 & features =
+ structureChain.template get<VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures2>();
+ getDispatcher()->vkGetPhysicalDeviceFeatures2( static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ reinterpret_cast<VkPhysicalDeviceFeatures2 *>( &features ) );
+ return structureChain;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties2
+ PhysicalDevice::getProperties2() const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties2 properties;
+ getDispatcher()->vkGetPhysicalDeviceProperties2( static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ reinterpret_cast<VkPhysicalDeviceProperties2 *>( &properties ) );
+ return properties;
+ }
+
+ template <typename X, typename Y, typename... Z>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE StructureChain<X, Y, Z...>
+ PhysicalDevice::getProperties2() const VULKAN_HPP_NOEXCEPT
+ {
+ StructureChain<X, Y, Z...> structureChain;
+ VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties2 & properties =
+ structureChain.template get<VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties2>();
+ getDispatcher()->vkGetPhysicalDeviceProperties2( static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ reinterpret_cast<VkPhysicalDeviceProperties2 *>( &properties ) );
+ return structureChain;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::FormatProperties2
+ PhysicalDevice::getFormatProperties2( VULKAN_HPP_NAMESPACE::Format format ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_NAMESPACE::FormatProperties2 formatProperties;
+ getDispatcher()->vkGetPhysicalDeviceFormatProperties2(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ static_cast<VkFormat>( format ),
+ reinterpret_cast<VkFormatProperties2 *>( &formatProperties ) );
+ return formatProperties;
+ }
+
+ template <typename X, typename Y, typename... Z>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE StructureChain<X, Y, Z...>
+ PhysicalDevice::getFormatProperties2( VULKAN_HPP_NAMESPACE::Format format ) const VULKAN_HPP_NOEXCEPT
+ {
+ StructureChain<X, Y, Z...> structureChain;
+ VULKAN_HPP_NAMESPACE::FormatProperties2 & formatProperties =
+ structureChain.template get<VULKAN_HPP_NAMESPACE::FormatProperties2>();
+ getDispatcher()->vkGetPhysicalDeviceFormatProperties2(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ static_cast<VkFormat>( format ),
+ reinterpret_cast<VkFormatProperties2 *>( &formatProperties ) );
+ return structureChain;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::ImageFormatProperties2
+ PhysicalDevice::getImageFormatProperties2( const PhysicalDeviceImageFormatInfo2 & imageFormatInfo ) const
+ {
+ VULKAN_HPP_NAMESPACE::ImageFormatProperties2 imageFormatProperties;
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetPhysicalDeviceImageFormatProperties2(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ reinterpret_cast<const VkPhysicalDeviceImageFormatInfo2 *>( &imageFormatInfo ),
+ reinterpret_cast<VkImageFormatProperties2 *>( &imageFormatProperties ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getImageFormatProperties2" );
+ }
+ return imageFormatProperties;
+ }
+
+ template <typename X, typename Y, typename... Z>
+ VULKAN_HPP_NODISCARD StructureChain<X, Y, Z...>
+ PhysicalDevice::getImageFormatProperties2( const PhysicalDeviceImageFormatInfo2 & imageFormatInfo ) const
+ {
+ StructureChain<X, Y, Z...> structureChain;
+ VULKAN_HPP_NAMESPACE::ImageFormatProperties2 & imageFormatProperties =
+ structureChain.template get<VULKAN_HPP_NAMESPACE::ImageFormatProperties2>();
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetPhysicalDeviceImageFormatProperties2(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ reinterpret_cast<const VkPhysicalDeviceImageFormatInfo2 *>( &imageFormatInfo ),
+ reinterpret_cast<VkImageFormatProperties2 *>( &imageFormatProperties ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getImageFormatProperties2" );
+ }
+ return structureChain;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<VULKAN_HPP_NAMESPACE::QueueFamilyProperties2>
+ PhysicalDevice::getQueueFamilyProperties2() const VULKAN_HPP_NOEXCEPT
+ {
+ uint32_t queueFamilyPropertyCount;
+ getDispatcher()->vkGetPhysicalDeviceQueueFamilyProperties2(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ), &queueFamilyPropertyCount, nullptr );
+ std::vector<VULKAN_HPP_NAMESPACE::QueueFamilyProperties2> queueFamilyProperties( queueFamilyPropertyCount );
+ getDispatcher()->vkGetPhysicalDeviceQueueFamilyProperties2(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ &queueFamilyPropertyCount,
+ reinterpret_cast<VkQueueFamilyProperties2 *>( queueFamilyProperties.data() ) );
+ VULKAN_HPP_ASSERT( queueFamilyPropertyCount <= queueFamilyProperties.size() );
+ return queueFamilyProperties;
+ }
+
+ template <typename StructureChain>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<StructureChain> PhysicalDevice::getQueueFamilyProperties2() const
+ {
+ uint32_t queueFamilyPropertyCount;
+ getDispatcher()->vkGetPhysicalDeviceQueueFamilyProperties2(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ), &queueFamilyPropertyCount, nullptr );
+ std::vector<StructureChain> returnVector( queueFamilyPropertyCount );
+ std::vector<VULKAN_HPP_NAMESPACE::QueueFamilyProperties2> queueFamilyProperties( queueFamilyPropertyCount );
+ for ( uint32_t i = 0; i < queueFamilyPropertyCount; i++ )
+ {
+ queueFamilyProperties[i].pNext =
+ returnVector[i].template get<VULKAN_HPP_NAMESPACE::QueueFamilyProperties2>().pNext;
+ }
+ getDispatcher()->vkGetPhysicalDeviceQueueFamilyProperties2(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ &queueFamilyPropertyCount,
+ reinterpret_cast<VkQueueFamilyProperties2 *>( queueFamilyProperties.data() ) );
+ VULKAN_HPP_ASSERT( queueFamilyPropertyCount <= queueFamilyProperties.size() );
+ for ( uint32_t i = 0; i < queueFamilyPropertyCount; i++ )
+ {
+ returnVector[i].template get<VULKAN_HPP_NAMESPACE::QueueFamilyProperties2>() = queueFamilyProperties[i];
+ }
+ return returnVector;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties2
+ PhysicalDevice::getMemoryProperties2() const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties2 memoryProperties;
+ getDispatcher()->vkGetPhysicalDeviceMemoryProperties2(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ reinterpret_cast<VkPhysicalDeviceMemoryProperties2 *>( &memoryProperties ) );
+ return memoryProperties;
+ }
+
+ template <typename X, typename Y, typename... Z>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE StructureChain<X, Y, Z...>
+ PhysicalDevice::getMemoryProperties2() const VULKAN_HPP_NOEXCEPT
+ {
+ StructureChain<X, Y, Z...> structureChain;
+ VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties2 & memoryProperties =
+ structureChain.template get<VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties2>();
+ getDispatcher()->vkGetPhysicalDeviceMemoryProperties2(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ reinterpret_cast<VkPhysicalDeviceMemoryProperties2 *>( &memoryProperties ) );
+ return structureChain;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<VULKAN_HPP_NAMESPACE::SparseImageFormatProperties2>
+ PhysicalDevice::getSparseImageFormatProperties2( const PhysicalDeviceSparseImageFormatInfo2 & formatInfo ) const
+ VULKAN_HPP_NOEXCEPT
+ {
+ uint32_t propertyCount;
+ getDispatcher()->vkGetPhysicalDeviceSparseImageFormatProperties2(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ reinterpret_cast<const VkPhysicalDeviceSparseImageFormatInfo2 *>( &formatInfo ),
+ &propertyCount,
+ nullptr );
+ std::vector<VULKAN_HPP_NAMESPACE::SparseImageFormatProperties2> properties( propertyCount );
+ getDispatcher()->vkGetPhysicalDeviceSparseImageFormatProperties2(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ reinterpret_cast<const VkPhysicalDeviceSparseImageFormatInfo2 *>( &formatInfo ),
+ &propertyCount,
+ reinterpret_cast<VkSparseImageFormatProperties2 *>( properties.data() ) );
+ VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
+ return properties;
+ }
+
+ VULKAN_HPP_INLINE void
+ CommandPool::trim( VULKAN_HPP_NAMESPACE::CommandPoolTrimFlags flags ) const VULKAN_HPP_NOEXCEPT
+ {
+ getDispatcher()->vkTrimCommandPool( static_cast<VkDevice>( m_device ),
+ static_cast<VkCommandPool>( m_commandPool ),
+ static_cast<VkCommandPoolTrimFlags>( flags ) );
+ }
+
+ VULKAN_HPP_INLINE void
+ DescriptorSet::updateWithTemplate( VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate descriptorUpdateTemplate,
+ const void * pData ) const VULKAN_HPP_NOEXCEPT
+ {
+ getDispatcher()->vkUpdateDescriptorSetWithTemplate(
+ static_cast<VkDevice>( m_device ),
+ static_cast<VkDescriptorSet>( m_descriptorSet ),
+ static_cast<VkDescriptorUpdateTemplate>( descriptorUpdateTemplate ),
+ pData );
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::ExternalBufferProperties
+ PhysicalDevice::getExternalBufferProperties( const PhysicalDeviceExternalBufferInfo & externalBufferInfo ) const
+ VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_NAMESPACE::ExternalBufferProperties externalBufferProperties;
+ getDispatcher()->vkGetPhysicalDeviceExternalBufferProperties(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ reinterpret_cast<const VkPhysicalDeviceExternalBufferInfo *>( &externalBufferInfo ),
+ reinterpret_cast<VkExternalBufferProperties *>( &externalBufferProperties ) );
+ return externalBufferProperties;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::ExternalFenceProperties
+ PhysicalDevice::getExternalFenceProperties( const PhysicalDeviceExternalFenceInfo & externalFenceInfo ) const
+ VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_NAMESPACE::ExternalFenceProperties externalFenceProperties;
+ getDispatcher()->vkGetPhysicalDeviceExternalFenceProperties(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ reinterpret_cast<const VkPhysicalDeviceExternalFenceInfo *>( &externalFenceInfo ),
+ reinterpret_cast<VkExternalFenceProperties *>( &externalFenceProperties ) );
+ return externalFenceProperties;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::ExternalSemaphoreProperties
+ PhysicalDevice::getExternalSemaphoreProperties(
+ const PhysicalDeviceExternalSemaphoreInfo & externalSemaphoreInfo ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_NAMESPACE::ExternalSemaphoreProperties externalSemaphoreProperties;
+ getDispatcher()->vkGetPhysicalDeviceExternalSemaphoreProperties(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ reinterpret_cast<const VkPhysicalDeviceExternalSemaphoreInfo *>( &externalSemaphoreInfo ),
+ reinterpret_cast<VkExternalSemaphoreProperties *>( &externalSemaphoreProperties ) );
+ return externalSemaphoreProperties;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::DescriptorSetLayoutSupport
+ Device::getDescriptorSetLayoutSupport( const DescriptorSetLayoutCreateInfo & createInfo ) const
+ VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_NAMESPACE::DescriptorSetLayoutSupport support;
+ getDispatcher()->vkGetDescriptorSetLayoutSupport(
+ static_cast<VkDevice>( m_device ),
+ reinterpret_cast<const VkDescriptorSetLayoutCreateInfo *>( &createInfo ),
+ reinterpret_cast<VkDescriptorSetLayoutSupport *>( &support ) );
+ return support;
+ }
+
+ template <typename X, typename Y, typename... Z>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE StructureChain<X, Y, Z...> Device::getDescriptorSetLayoutSupport(
+ const DescriptorSetLayoutCreateInfo & createInfo ) const VULKAN_HPP_NOEXCEPT
+ {
+ StructureChain<X, Y, Z...> structureChain;
+ VULKAN_HPP_NAMESPACE::DescriptorSetLayoutSupport & support =
+ structureChain.template get<VULKAN_HPP_NAMESPACE::DescriptorSetLayoutSupport>();
+ getDispatcher()->vkGetDescriptorSetLayoutSupport(
+ static_cast<VkDevice>( m_device ),
+ reinterpret_cast<const VkDescriptorSetLayoutCreateInfo *>( &createInfo ),
+ reinterpret_cast<VkDescriptorSetLayoutSupport *>( &support ) );
+ return structureChain;
+ }
+
+ //=== VK_VERSION_1_2 ===
+
+ VULKAN_HPP_INLINE void CommandBuffer::drawIndirectCount( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize offset,
+ VULKAN_HPP_NAMESPACE::Buffer countBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize countBufferOffset,
+ uint32_t maxDrawCount,
+ uint32_t stride ) const VULKAN_HPP_NOEXCEPT
+ {
+ getDispatcher()->vkCmdDrawIndirectCount( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkBuffer>( buffer ),
+ static_cast<VkDeviceSize>( offset ),
+ static_cast<VkBuffer>( countBuffer ),
+ static_cast<VkDeviceSize>( countBufferOffset ),
+ maxDrawCount,
+ stride );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::drawIndexedIndirectCount( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize offset,
+ VULKAN_HPP_NAMESPACE::Buffer countBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize countBufferOffset,
+ uint32_t maxDrawCount,
+ uint32_t stride ) const VULKAN_HPP_NOEXCEPT
+ {
+ getDispatcher()->vkCmdDrawIndexedIndirectCount( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkBuffer>( buffer ),
+ static_cast<VkDeviceSize>( offset ),
+ static_cast<VkBuffer>( countBuffer ),
+ static_cast<VkDeviceSize>( countBufferOffset ),
+ maxDrawCount,
+ stride );
+ }
+
+ VULKAN_HPP_INLINE void
+ CommandBuffer::beginRenderPass2( const RenderPassBeginInfo & renderPassBegin,
+ const SubpassBeginInfo & subpassBeginInfo ) const VULKAN_HPP_NOEXCEPT
+ {
+ getDispatcher()->vkCmdBeginRenderPass2( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ reinterpret_cast<const VkRenderPassBeginInfo *>( &renderPassBegin ),
+ reinterpret_cast<const VkSubpassBeginInfo *>( &subpassBeginInfo ) );
+ }
+
+ VULKAN_HPP_INLINE void
+ CommandBuffer::nextSubpass2( const SubpassBeginInfo & subpassBeginInfo,
+ const SubpassEndInfo & subpassEndInfo ) const VULKAN_HPP_NOEXCEPT
+ {
+ getDispatcher()->vkCmdNextSubpass2( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ reinterpret_cast<const VkSubpassBeginInfo *>( &subpassBeginInfo ),
+ reinterpret_cast<const VkSubpassEndInfo *>( &subpassEndInfo ) );
+ }
+
+ VULKAN_HPP_INLINE void
+ CommandBuffer::endRenderPass2( const SubpassEndInfo & subpassEndInfo ) const VULKAN_HPP_NOEXCEPT
+ {
+ getDispatcher()->vkCmdEndRenderPass2( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ reinterpret_cast<const VkSubpassEndInfo *>( &subpassEndInfo ) );
+ }
+
+ VULKAN_HPP_INLINE void QueryPool::reset( uint32_t firstQuery, uint32_t queryCount ) const VULKAN_HPP_NOEXCEPT
+ {
+ getDispatcher()->vkResetQueryPool(
+ static_cast<VkDevice>( m_device ), static_cast<VkQueryPool>( m_queryPool ), firstQuery, queryCount );
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE uint64_t Semaphore::getCounterValue() const
+ {
+ uint64_t value;
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetSemaphoreCounterValue(
+ static_cast<VkDevice>( m_device ), static_cast<VkSemaphore>( m_semaphore ), &value ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Semaphore::getCounterValue" );
+ }
+ return value;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::Result
+ Device::waitSemaphores( const SemaphoreWaitInfo & waitInfo, uint64_t timeout ) const
+ {
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkWaitSemaphores(
+ static_cast<VkDevice>( m_device ), reinterpret_cast<const VkSemaphoreWaitInfo *>( &waitInfo ), timeout ) );
+ if ( ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess ) &&
+ ( result != VULKAN_HPP_NAMESPACE::Result::eTimeout ) )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Device::waitSemaphores" );
+ }
+ return result;
+ }
+
+ VULKAN_HPP_INLINE void Device::signalSemaphore( const SemaphoreSignalInfo & signalInfo ) const
+ {
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkSignalSemaphore(
+ static_cast<VkDevice>( m_device ), reinterpret_cast<const VkSemaphoreSignalInfo *>( &signalInfo ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Device::signalSemaphore" );
+ }
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::DeviceAddress
+ Device::getBufferAddress( const BufferDeviceAddressInfo & info ) const VULKAN_HPP_NOEXCEPT
+ {
+ return static_cast<VULKAN_HPP_NAMESPACE::DeviceAddress>( getDispatcher()->vkGetBufferDeviceAddress(
+ static_cast<VkDevice>( m_device ), reinterpret_cast<const VkBufferDeviceAddressInfo *>( &info ) ) );
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE uint64_t
+ Device::getBufferOpaqueCaptureAddress( const BufferDeviceAddressInfo & info ) const VULKAN_HPP_NOEXCEPT
+ {
+ return getDispatcher()->vkGetBufferOpaqueCaptureAddress(
+ static_cast<VkDevice>( m_device ), reinterpret_cast<const VkBufferDeviceAddressInfo *>( &info ) );
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE uint64_t Device::getMemoryOpaqueCaptureAddress(
+ const DeviceMemoryOpaqueCaptureAddressInfo & info ) const VULKAN_HPP_NOEXCEPT
+ {
+ return getDispatcher()->vkGetDeviceMemoryOpaqueCaptureAddress(
+ static_cast<VkDevice>( m_device ), reinterpret_cast<const VkDeviceMemoryOpaqueCaptureAddressInfo *>( &info ) );
+ }
+
+ //=== VK_KHR_surface ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::Bool32
+ PhysicalDevice::getSurfaceSupportKHR( uint32_t queueFamilyIndex, VULKAN_HPP_NAMESPACE::SurfaceKHR surface ) const
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkGetPhysicalDeviceSurfaceSupportKHR &&
+ "Function <vkGetPhysicalDeviceSurfaceSupportKHR> needs extension <VK_KHR_surface> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::Bool32 supported;
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkGetPhysicalDeviceSurfaceSupportKHR( static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ queueFamilyIndex,
+ static_cast<VkSurfaceKHR>( surface ),
+ reinterpret_cast<VkBool32 *>( &supported ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getSurfaceSupportKHR" );
+ }
+ return supported;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::SurfaceCapabilitiesKHR
+ PhysicalDevice::getSurfaceCapabilitiesKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface ) const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetPhysicalDeviceSurfaceCapabilitiesKHR &&
+ "Function <vkGetPhysicalDeviceSurfaceCapabilitiesKHR> needs extension <VK_KHR_surface> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::SurfaceCapabilitiesKHR surfaceCapabilities;
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetPhysicalDeviceSurfaceCapabilitiesKHR(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ static_cast<VkSurfaceKHR>( surface ),
+ reinterpret_cast<VkSurfaceCapabilitiesKHR *>( &surfaceCapabilities ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getSurfaceCapabilitiesKHR" );
+ }
+ return surfaceCapabilities;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<VULKAN_HPP_NAMESPACE::SurfaceFormatKHR>
+ PhysicalDevice::getSurfaceFormatsKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface ) const
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkGetPhysicalDeviceSurfaceFormatsKHR &&
+ "Function <vkGetPhysicalDeviceSurfaceFormatsKHR> needs extension <VK_KHR_surface> enabled!" );
+
+ std::vector<VULKAN_HPP_NAMESPACE::SurfaceFormatKHR> surfaceFormats;
+ uint32_t surfaceFormatCount;
+ VULKAN_HPP_NAMESPACE::Result result;
+ do
+ {
+ result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkGetPhysicalDeviceSurfaceFormatsKHR( static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ static_cast<VkSurfaceKHR>( surface ),
+ &surfaceFormatCount,
+ nullptr ) );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && surfaceFormatCount )
+ {
+ surfaceFormats.resize( surfaceFormatCount );
+ result = static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetPhysicalDeviceSurfaceFormatsKHR(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ static_cast<VkSurfaceKHR>( surface ),
+ &surfaceFormatCount,
+ reinterpret_cast<VkSurfaceFormatKHR *>( surfaceFormats.data() ) ) );
+ VULKAN_HPP_ASSERT( surfaceFormatCount <= surfaceFormats.size() );
+ }
+ } while ( result == VULKAN_HPP_NAMESPACE::Result::eIncomplete );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && ( surfaceFormatCount < surfaceFormats.size() ) )
+ {
+ surfaceFormats.resize( surfaceFormatCount );
+ }
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getSurfaceFormatsKHR" );
+ }
+ return surfaceFormats;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<VULKAN_HPP_NAMESPACE::PresentModeKHR>
+ PhysicalDevice::getSurfacePresentModesKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface ) const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetPhysicalDeviceSurfacePresentModesKHR &&
+ "Function <vkGetPhysicalDeviceSurfacePresentModesKHR> needs extension <VK_KHR_surface> enabled!" );
+
+ std::vector<VULKAN_HPP_NAMESPACE::PresentModeKHR> presentModes;
+ uint32_t presentModeCount;
+ VULKAN_HPP_NAMESPACE::Result result;
+ do
+ {
+ result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkGetPhysicalDeviceSurfacePresentModesKHR( static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ static_cast<VkSurfaceKHR>( surface ),
+ &presentModeCount,
+ nullptr ) );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && presentModeCount )
+ {
+ presentModes.resize( presentModeCount );
+ result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetPhysicalDeviceSurfacePresentModesKHR(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ static_cast<VkSurfaceKHR>( surface ),
+ &presentModeCount,
+ reinterpret_cast<VkPresentModeKHR *>( presentModes.data() ) ) );
+ VULKAN_HPP_ASSERT( presentModeCount <= presentModes.size() );
+ }
+ } while ( result == VULKAN_HPP_NAMESPACE::Result::eIncomplete );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && ( presentModeCount < presentModes.size() ) )
+ {
+ presentModes.resize( presentModeCount );
+ }
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getSurfacePresentModesKHR" );
+ }
+ return presentModes;
+ }
+
+ //=== VK_KHR_swapchain ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<VkImage> SwapchainKHR::getImages() const
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkGetSwapchainImagesKHR &&
+ "Function <vkGetSwapchainImagesKHR> needs extension <VK_KHR_swapchain> enabled!" );
+
+ std::vector<VkImage> swapchainImages;
+ uint32_t swapchainImageCount;
+ VULKAN_HPP_NAMESPACE::Result result;
+ do
+ {
+ result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkGetSwapchainImagesKHR( static_cast<VkDevice>( m_device ),
+ static_cast<VkSwapchainKHR>( m_swapchainKHR ),
+ &swapchainImageCount,
+ nullptr ) );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && swapchainImageCount )
+ {
+ swapchainImages.resize( swapchainImageCount );
+ result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkGetSwapchainImagesKHR( static_cast<VkDevice>( m_device ),
+ static_cast<VkSwapchainKHR>( m_swapchainKHR ),
+ &swapchainImageCount,
+ swapchainImages.data() ) );
+ VULKAN_HPP_ASSERT( swapchainImageCount <= swapchainImages.size() );
+ }
+ } while ( result == VULKAN_HPP_NAMESPACE::Result::eIncomplete );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && ( swapchainImageCount < swapchainImages.size() ) )
+ {
+ swapchainImages.resize( swapchainImageCount );
+ }
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::SwapchainKHR::getImages" );
+ }
+ return swapchainImages;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::pair<VULKAN_HPP_NAMESPACE::Result, uint32_t>
+ SwapchainKHR::acquireNextImage( uint64_t timeout,
+ VULKAN_HPP_NAMESPACE::Semaphore semaphore,
+ VULKAN_HPP_NAMESPACE::Fence fence ) const
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkAcquireNextImageKHR &&
+ "Function <vkAcquireNextImageKHR> needs extension <VK_KHR_swapchain> enabled!" );
+
+ uint32_t imageIndex;
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkAcquireNextImageKHR( static_cast<VkDevice>( m_device ),
+ static_cast<VkSwapchainKHR>( m_swapchainKHR ),
+ timeout,
+ static_cast<VkSemaphore>( semaphore ),
+ static_cast<VkFence>( fence ),
+ &imageIndex ) );
+ if ( ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess ) &&
+ ( result != VULKAN_HPP_NAMESPACE::Result::eTimeout ) &&
+ ( result != VULKAN_HPP_NAMESPACE::Result::eNotReady ) &&
+ ( result != VULKAN_HPP_NAMESPACE::Result::eSuboptimalKHR ) )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::SwapchainKHR::acquireNextImage" );
+ }
+ return std::make_pair( result, imageIndex );
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::Result
+ Queue::presentKHR( const PresentInfoKHR & presentInfo ) const
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkQueuePresentKHR &&
+ "Function <vkQueuePresentKHR> needs extension <VK_KHR_swapchain> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkQueuePresentKHR(
+ static_cast<VkQueue>( m_queue ), reinterpret_cast<const VkPresentInfoKHR *>( &presentInfo ) ) );
+ if ( ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess ) &&
+ ( result != VULKAN_HPP_NAMESPACE::Result::eSuboptimalKHR ) )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Queue::presentKHR" );
+ }
+ return result;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::DeviceGroupPresentCapabilitiesKHR
+ Device::getGroupPresentCapabilitiesKHR() const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetDeviceGroupPresentCapabilitiesKHR &&
+ "Function <vkGetDeviceGroupPresentCapabilitiesKHR> needs extension <VK_KHR_swapchain> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::DeviceGroupPresentCapabilitiesKHR deviceGroupPresentCapabilities;
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetDeviceGroupPresentCapabilitiesKHR(
+ static_cast<VkDevice>( m_device ),
+ reinterpret_cast<VkDeviceGroupPresentCapabilitiesKHR *>( &deviceGroupPresentCapabilities ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Device::getGroupPresentCapabilitiesKHR" );
+ }
+ return deviceGroupPresentCapabilities;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagsKHR
+ Device::getGroupSurfacePresentModesKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface ) const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetDeviceGroupSurfacePresentModesKHR &&
+ "Function <vkGetDeviceGroupSurfacePresentModesKHR> needs extension <VK_KHR_swapchain> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagsKHR modes;
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetDeviceGroupSurfacePresentModesKHR(
+ static_cast<VkDevice>( m_device ),
+ static_cast<VkSurfaceKHR>( surface ),
+ reinterpret_cast<VkDeviceGroupPresentModeFlagsKHR *>( &modes ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Device::getGroupSurfacePresentModesKHR" );
+ }
+ return modes;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<VULKAN_HPP_NAMESPACE::Rect2D>
+ PhysicalDevice::getPresentRectanglesKHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface ) const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetPhysicalDevicePresentRectanglesKHR &&
+ "Function <vkGetPhysicalDevicePresentRectanglesKHR> needs extension <VK_KHR_swapchain> enabled!" );
+
+ std::vector<VULKAN_HPP_NAMESPACE::Rect2D> rects;
+ uint32_t rectCount;
+ VULKAN_HPP_NAMESPACE::Result result;
+ do
+ {
+ result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkGetPhysicalDevicePresentRectanglesKHR( static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ static_cast<VkSurfaceKHR>( surface ),
+ &rectCount,
+ nullptr ) );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && rectCount )
+ {
+ rects.resize( rectCount );
+ result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkGetPhysicalDevicePresentRectanglesKHR( static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ static_cast<VkSurfaceKHR>( surface ),
+ &rectCount,
+ reinterpret_cast<VkRect2D *>( rects.data() ) ) );
+ VULKAN_HPP_ASSERT( rectCount <= rects.size() );
+ }
+ } while ( result == VULKAN_HPP_NAMESPACE::Result::eIncomplete );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && ( rectCount < rects.size() ) )
+ {
+ rects.resize( rectCount );
+ }
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getPresentRectanglesKHR" );
+ }
+ return rects;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::pair<VULKAN_HPP_NAMESPACE::Result, uint32_t>
+ Device::acquireNextImage2KHR( const AcquireNextImageInfoKHR & acquireInfo ) const
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkAcquireNextImage2KHR &&
+ "Function <vkAcquireNextImage2KHR> needs extension <VK_KHR_swapchain> enabled!" );
+
+ uint32_t imageIndex;
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkAcquireNextImage2KHR( static_cast<VkDevice>( m_device ),
+ reinterpret_cast<const VkAcquireNextImageInfoKHR *>( &acquireInfo ),
+ &imageIndex ) );
+ if ( ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess ) &&
+ ( result != VULKAN_HPP_NAMESPACE::Result::eTimeout ) &&
+ ( result != VULKAN_HPP_NAMESPACE::Result::eNotReady ) &&
+ ( result != VULKAN_HPP_NAMESPACE::Result::eSuboptimalKHR ) )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Device::acquireNextImage2KHR" );
+ }
+ return std::make_pair( result, imageIndex );
+ }
+
+ //=== VK_KHR_display ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<VULKAN_HPP_NAMESPACE::DisplayPropertiesKHR>
+ PhysicalDevice::getDisplayPropertiesKHR() const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetPhysicalDeviceDisplayPropertiesKHR &&
+ "Function <vkGetPhysicalDeviceDisplayPropertiesKHR> needs extension <VK_KHR_display> enabled!" );
+
+ std::vector<VULKAN_HPP_NAMESPACE::DisplayPropertiesKHR> properties;
+ uint32_t propertyCount;
+ VULKAN_HPP_NAMESPACE::Result result;
+ do
+ {
+ result = static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetPhysicalDeviceDisplayPropertiesKHR(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ), &propertyCount, nullptr ) );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && propertyCount )
+ {
+ properties.resize( propertyCount );
+ result = static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetPhysicalDeviceDisplayPropertiesKHR(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ &propertyCount,
+ reinterpret_cast<VkDisplayPropertiesKHR *>( properties.data() ) ) );
+ VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
+ }
+ } while ( result == VULKAN_HPP_NAMESPACE::Result::eIncomplete );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && ( propertyCount < properties.size() ) )
+ {
+ properties.resize( propertyCount );
+ }
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getDisplayPropertiesKHR" );
+ }
+ return properties;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<VULKAN_HPP_NAMESPACE::DisplayPlanePropertiesKHR>
+ PhysicalDevice::getDisplayPlanePropertiesKHR() const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetPhysicalDeviceDisplayPlanePropertiesKHR &&
+ "Function <vkGetPhysicalDeviceDisplayPlanePropertiesKHR> needs extension <VK_KHR_display> enabled!" );
+
+ std::vector<VULKAN_HPP_NAMESPACE::DisplayPlanePropertiesKHR> properties;
+ uint32_t propertyCount;
+ VULKAN_HPP_NAMESPACE::Result result;
+ do
+ {
+ result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetPhysicalDeviceDisplayPlanePropertiesKHR(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ), &propertyCount, nullptr ) );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && propertyCount )
+ {
+ properties.resize( propertyCount );
+ result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetPhysicalDeviceDisplayPlanePropertiesKHR(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ &propertyCount,
+ reinterpret_cast<VkDisplayPlanePropertiesKHR *>( properties.data() ) ) );
+ VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
+ }
+ } while ( result == VULKAN_HPP_NAMESPACE::Result::eIncomplete );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && ( propertyCount < properties.size() ) )
+ {
+ properties.resize( propertyCount );
+ }
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getDisplayPlanePropertiesKHR" );
+ }
+ return properties;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<VULKAN_HPP_NAMESPACE::DisplayModePropertiesKHR>
+ DisplayKHR::getModeProperties() const
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkGetDisplayModePropertiesKHR &&
+ "Function <vkGetDisplayModePropertiesKHR> needs extension <VK_KHR_display> enabled!" );
+
+ std::vector<VULKAN_HPP_NAMESPACE::DisplayModePropertiesKHR> properties;
+ uint32_t propertyCount;
+ VULKAN_HPP_NAMESPACE::Result result;
+ do
+ {
+ result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkGetDisplayModePropertiesKHR( static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ static_cast<VkDisplayKHR>( m_displayKHR ),
+ &propertyCount,
+ nullptr ) );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && propertyCount )
+ {
+ properties.resize( propertyCount );
+ result = static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetDisplayModePropertiesKHR(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ static_cast<VkDisplayKHR>( m_displayKHR ),
+ &propertyCount,
+ reinterpret_cast<VkDisplayModePropertiesKHR *>( properties.data() ) ) );
+ VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
+ }
+ } while ( result == VULKAN_HPP_NAMESPACE::Result::eIncomplete );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && ( propertyCount < properties.size() ) )
+ {
+ properties.resize( propertyCount );
+ }
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::DisplayKHR::getModeProperties" );
+ }
+ return properties;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::DisplayPlaneCapabilitiesKHR
+ DisplayModeKHR::getDisplayPlaneCapabilities( uint32_t planeIndex ) const
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkGetDisplayPlaneCapabilitiesKHR &&
+ "Function <vkGetDisplayPlaneCapabilitiesKHR> needs extension <VK_KHR_display> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::DisplayPlaneCapabilitiesKHR capabilities;
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetDisplayPlaneCapabilitiesKHR(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ static_cast<VkDisplayModeKHR>( m_displayModeKHR ),
+ planeIndex,
+ reinterpret_cast<VkDisplayPlaneCapabilitiesKHR *>( &capabilities ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::DisplayModeKHR::getDisplayPlaneCapabilities" );
+ }
+ return capabilities;
+ }
+
+# if defined( VK_USE_PLATFORM_XLIB_KHR )
+ //=== VK_KHR_xlib_surface ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::Bool32 PhysicalDevice::getXlibPresentationSupportKHR(
+ uint32_t queueFamilyIndex, Display & dpy, VisualID visualID ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetPhysicalDeviceXlibPresentationSupportKHR &&
+ "Function <vkGetPhysicalDeviceXlibPresentationSupportKHR> needs extension <VK_KHR_xlib_surface> enabled!" );
+
+ return static_cast<VULKAN_HPP_NAMESPACE::Bool32>( getDispatcher()->vkGetPhysicalDeviceXlibPresentationSupportKHR(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ), queueFamilyIndex, &dpy, visualID ) );
+ }
+# endif /*VK_USE_PLATFORM_XLIB_KHR*/
+
+# if defined( VK_USE_PLATFORM_XCB_KHR )
+ //=== VK_KHR_xcb_surface ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::Bool32 PhysicalDevice::getXcbPresentationSupportKHR(
+ uint32_t queueFamilyIndex, xcb_connection_t & connection, xcb_visualid_t visual_id ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetPhysicalDeviceXcbPresentationSupportKHR &&
+ "Function <vkGetPhysicalDeviceXcbPresentationSupportKHR> needs extension <VK_KHR_xcb_surface> enabled!" );
+
+ return static_cast<VULKAN_HPP_NAMESPACE::Bool32>( getDispatcher()->vkGetPhysicalDeviceXcbPresentationSupportKHR(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ), queueFamilyIndex, &connection, visual_id ) );
+ }
+# endif /*VK_USE_PLATFORM_XCB_KHR*/
+
+# if defined( VK_USE_PLATFORM_WAYLAND_KHR )
+ //=== VK_KHR_wayland_surface ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::Bool32
+ PhysicalDevice::getWaylandPresentationSupportKHR( uint32_t queueFamilyIndex,
+ struct wl_display & display ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetPhysicalDeviceWaylandPresentationSupportKHR &&
+ "Function <vkGetPhysicalDeviceWaylandPresentationSupportKHR> needs extension <VK_KHR_wayland_surface> enabled!" );
+
+ return static_cast<VULKAN_HPP_NAMESPACE::Bool32>(
+ getDispatcher()->vkGetPhysicalDeviceWaylandPresentationSupportKHR(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ), queueFamilyIndex, &display ) );
+ }
+# endif /*VK_USE_PLATFORM_WAYLAND_KHR*/
+
+# if defined( VK_USE_PLATFORM_WIN32_KHR )
+ //=== VK_KHR_win32_surface ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::Bool32
+ PhysicalDevice::getWin32PresentationSupportKHR( uint32_t queueFamilyIndex ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetPhysicalDeviceWin32PresentationSupportKHR &&
+ "Function <vkGetPhysicalDeviceWin32PresentationSupportKHR> needs extension <VK_KHR_win32_surface> enabled!" );
+
+ return static_cast<VULKAN_HPP_NAMESPACE::Bool32>( getDispatcher()->vkGetPhysicalDeviceWin32PresentationSupportKHR(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ), queueFamilyIndex ) );
+ }
+# endif /*VK_USE_PLATFORM_WIN32_KHR*/
+
+ //=== VK_EXT_debug_report ===
+
+ VULKAN_HPP_INLINE void Instance::debugReportMessageEXT( VULKAN_HPP_NAMESPACE::DebugReportFlagsEXT flags,
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT objectType_,
+ uint64_t object,
+ size_t location,
+ int32_t messageCode,
+ const std::string & layerPrefix,
+ const std::string & message ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkDebugReportMessageEXT &&
+ "Function <vkDebugReportMessageEXT> needs extension <VK_EXT_debug_report> enabled!" );
+
+ getDispatcher()->vkDebugReportMessageEXT( static_cast<VkInstance>( m_instance ),
+ static_cast<VkDebugReportFlagsEXT>( flags ),
+ static_cast<VkDebugReportObjectTypeEXT>( objectType_ ),
+ object,
+ location,
+ messageCode,
+ layerPrefix.c_str(),
+ message.c_str() );
+ }
+
+ //=== VK_EXT_debug_marker ===
+
+ VULKAN_HPP_INLINE void Device::debugMarkerSetObjectTagEXT( const DebugMarkerObjectTagInfoEXT & tagInfo ) const
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkDebugMarkerSetObjectTagEXT &&
+ "Function <vkDebugMarkerSetObjectTagEXT> needs extension <VK_EXT_debug_marker> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkDebugMarkerSetObjectTagEXT(
+ static_cast<VkDevice>( m_device ), reinterpret_cast<const VkDebugMarkerObjectTagInfoEXT *>( &tagInfo ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Device::debugMarkerSetObjectTagEXT" );
+ }
+ }
+
+ VULKAN_HPP_INLINE void Device::debugMarkerSetObjectNameEXT( const DebugMarkerObjectNameInfoEXT & nameInfo ) const
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkDebugMarkerSetObjectNameEXT &&
+ "Function <vkDebugMarkerSetObjectNameEXT> needs extension <VK_EXT_debug_marker> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkDebugMarkerSetObjectNameEXT(
+ static_cast<VkDevice>( m_device ), reinterpret_cast<const VkDebugMarkerObjectNameInfoEXT *>( &nameInfo ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Device::debugMarkerSetObjectNameEXT" );
+ }
+ }
+
+ VULKAN_HPP_INLINE void
+ CommandBuffer::debugMarkerBeginEXT( const DebugMarkerMarkerInfoEXT & markerInfo ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkCmdDebugMarkerBeginEXT &&
+ "Function <vkCmdDebugMarkerBeginEXT> needs extension <VK_EXT_debug_marker> enabled!" );
+
+ getDispatcher()->vkCmdDebugMarkerBeginEXT( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ reinterpret_cast<const VkDebugMarkerMarkerInfoEXT *>( &markerInfo ) );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::debugMarkerEndEXT() const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkCmdDebugMarkerEndEXT &&
+ "Function <vkCmdDebugMarkerEndEXT> needs extension <VK_EXT_debug_marker> enabled!" );
+
+ getDispatcher()->vkCmdDebugMarkerEndEXT( static_cast<VkCommandBuffer>( m_commandBuffer ) );
+ }
+
+ VULKAN_HPP_INLINE void
+ CommandBuffer::debugMarkerInsertEXT( const DebugMarkerMarkerInfoEXT & markerInfo ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkCmdDebugMarkerInsertEXT &&
+ "Function <vkCmdDebugMarkerInsertEXT> needs extension <VK_EXT_debug_marker> enabled!" );
+
+ getDispatcher()->vkCmdDebugMarkerInsertEXT( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ reinterpret_cast<const VkDebugMarkerMarkerInfoEXT *>( &markerInfo ) );
+ }
+
+# if defined( VK_ENABLE_BETA_EXTENSIONS )
+ //=== VK_KHR_video_queue ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::VideoCapabilitiesKHR
+ PhysicalDevice::getVideoCapabilitiesKHR( const VideoProfileKHR & videoProfile ) const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetPhysicalDeviceVideoCapabilitiesKHR &&
+ "Function <vkGetPhysicalDeviceVideoCapabilitiesKHR> needs extension <VK_KHR_video_queue> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::VideoCapabilitiesKHR capabilities;
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetPhysicalDeviceVideoCapabilitiesKHR(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ reinterpret_cast<const VkVideoProfileKHR *>( &videoProfile ),
+ reinterpret_cast<VkVideoCapabilitiesKHR *>( &capabilities ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getVideoCapabilitiesKHR" );
+ }
+ return capabilities;
+ }
+
+ template <typename X, typename Y, typename... Z>
+ VULKAN_HPP_NODISCARD StructureChain<X, Y, Z...>
+ PhysicalDevice::getVideoCapabilitiesKHR( const VideoProfileKHR & videoProfile ) const
+ {
+ StructureChain<X, Y, Z...> structureChain;
+ VULKAN_HPP_NAMESPACE::VideoCapabilitiesKHR & capabilities =
+ structureChain.template get<VULKAN_HPP_NAMESPACE::VideoCapabilitiesKHR>();
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetPhysicalDeviceVideoCapabilitiesKHR(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ reinterpret_cast<const VkVideoProfileKHR *>( &videoProfile ),
+ reinterpret_cast<VkVideoCapabilitiesKHR *>( &capabilities ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getVideoCapabilitiesKHR" );
+ }
+ return structureChain;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<VULKAN_HPP_NAMESPACE::VideoFormatPropertiesKHR>
+ PhysicalDevice::getVideoFormatPropertiesKHR( const PhysicalDeviceVideoFormatInfoKHR & videoFormatInfo ) const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetPhysicalDeviceVideoFormatPropertiesKHR &&
+ "Function <vkGetPhysicalDeviceVideoFormatPropertiesKHR> needs extension <VK_KHR_video_queue> enabled!" );
+
+ std::vector<VULKAN_HPP_NAMESPACE::VideoFormatPropertiesKHR> videoFormatProperties;
+ uint32_t videoFormatPropertyCount;
+ VULKAN_HPP_NAMESPACE::Result result;
+ do
+ {
+ result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetPhysicalDeviceVideoFormatPropertiesKHR(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ reinterpret_cast<const VkPhysicalDeviceVideoFormatInfoKHR *>( &videoFormatInfo ),
+ &videoFormatPropertyCount,
+ nullptr ) );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && videoFormatPropertyCount )
+ {
+ videoFormatProperties.resize( videoFormatPropertyCount );
+ result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetPhysicalDeviceVideoFormatPropertiesKHR(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ reinterpret_cast<const VkPhysicalDeviceVideoFormatInfoKHR *>( &videoFormatInfo ),
+ &videoFormatPropertyCount,
+ reinterpret_cast<VkVideoFormatPropertiesKHR *>( videoFormatProperties.data() ) ) );
+ VULKAN_HPP_ASSERT( videoFormatPropertyCount <= videoFormatProperties.size() );
+ }
+ } while ( result == VULKAN_HPP_NAMESPACE::Result::eIncomplete );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) &&
+ ( videoFormatPropertyCount < videoFormatProperties.size() ) )
+ {
+ videoFormatProperties.resize( videoFormatPropertyCount );
+ }
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getVideoFormatPropertiesKHR" );
+ }
+ return videoFormatProperties;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<VULKAN_HPP_NAMESPACE::VideoGetMemoryPropertiesKHR>
+ VideoSessionKHR::getMemoryRequirements() const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetVideoSessionMemoryRequirementsKHR &&
+ "Function <vkGetVideoSessionMemoryRequirementsKHR> needs extension <VK_KHR_video_queue> enabled!" );
+
+ std::vector<VULKAN_HPP_NAMESPACE::VideoGetMemoryPropertiesKHR> videoSessionMemoryRequirements;
+ uint32_t videoSessionMemoryRequirementsCount;
+ VULKAN_HPP_NAMESPACE::Result result;
+ do
+ {
+ result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkGetVideoSessionMemoryRequirementsKHR( static_cast<VkDevice>( m_device ),
+ static_cast<VkVideoSessionKHR>( m_videoSessionKHR ),
+ &videoSessionMemoryRequirementsCount,
+ nullptr ) );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && videoSessionMemoryRequirementsCount )
+ {
+ videoSessionMemoryRequirements.resize( videoSessionMemoryRequirementsCount );
+ result = static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetVideoSessionMemoryRequirementsKHR(
+ static_cast<VkDevice>( m_device ),
+ static_cast<VkVideoSessionKHR>( m_videoSessionKHR ),
+ &videoSessionMemoryRequirementsCount,
+ reinterpret_cast<VkVideoGetMemoryPropertiesKHR *>( videoSessionMemoryRequirements.data() ) ) );
+ VULKAN_HPP_ASSERT( videoSessionMemoryRequirementsCount <= videoSessionMemoryRequirements.size() );
+ }
+ } while ( result == VULKAN_HPP_NAMESPACE::Result::eIncomplete );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) &&
+ ( videoSessionMemoryRequirementsCount < videoSessionMemoryRequirements.size() ) )
+ {
+ videoSessionMemoryRequirements.resize( videoSessionMemoryRequirementsCount );
+ }
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::VideoSessionKHR::getMemoryRequirements" );
+ }
+ return videoSessionMemoryRequirements;
+ }
+
+ VULKAN_HPP_INLINE void VideoSessionKHR::bindMemory(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::VideoBindMemoryKHR> const & videoSessionBindMemories ) const
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkBindVideoSessionMemoryKHR &&
+ "Function <vkBindVideoSessionMemoryKHR> needs extension <VK_KHR_video_queue> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkBindVideoSessionMemoryKHR(
+ static_cast<VkDevice>( m_device ),
+ static_cast<VkVideoSessionKHR>( m_videoSessionKHR ),
+ videoSessionBindMemories.size(),
+ reinterpret_cast<const VkVideoBindMemoryKHR *>( videoSessionBindMemories.data() ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::VideoSessionKHR::bindMemory" );
+ }
+ }
+
+ VULKAN_HPP_INLINE void
+ VideoSessionParametersKHR::update( const VideoSessionParametersUpdateInfoKHR & updateInfo ) const
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkUpdateVideoSessionParametersKHR &&
+ "Function <vkUpdateVideoSessionParametersKHR> needs extension <VK_KHR_video_queue> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkUpdateVideoSessionParametersKHR(
+ static_cast<VkDevice>( m_device ),
+ static_cast<VkVideoSessionParametersKHR>( m_videoSessionParametersKHR ),
+ reinterpret_cast<const VkVideoSessionParametersUpdateInfoKHR *>( &updateInfo ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::VideoSessionParametersKHR::update" );
+ }
+ }
+
+ VULKAN_HPP_INLINE void
+ CommandBuffer::beginVideoCodingKHR( const VideoBeginCodingInfoKHR & beginInfo ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkCmdBeginVideoCodingKHR &&
+ "Function <vkCmdBeginVideoCodingKHR> needs extension <VK_KHR_video_queue> enabled!" );
+
+ getDispatcher()->vkCmdBeginVideoCodingKHR( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ reinterpret_cast<const VkVideoBeginCodingInfoKHR *>( &beginInfo ) );
+ }
+
+ VULKAN_HPP_INLINE void
+ CommandBuffer::endVideoCodingKHR( const VideoEndCodingInfoKHR & endCodingInfo ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkCmdEndVideoCodingKHR &&
+ "Function <vkCmdEndVideoCodingKHR> needs extension <VK_KHR_video_queue> enabled!" );
+
+ getDispatcher()->vkCmdEndVideoCodingKHR( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ reinterpret_cast<const VkVideoEndCodingInfoKHR *>( &endCodingInfo ) );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::controlVideoCodingKHR(
+ const VideoCodingControlInfoKHR & codingControlInfo ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkCmdControlVideoCodingKHR &&
+ "Function <vkCmdControlVideoCodingKHR> needs extension <VK_KHR_video_queue> enabled!" );
+
+ getDispatcher()->vkCmdControlVideoCodingKHR(
+ static_cast<VkCommandBuffer>( m_commandBuffer ),
+ reinterpret_cast<const VkVideoCodingControlInfoKHR *>( &codingControlInfo ) );
+ }
+# endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+# if defined( VK_ENABLE_BETA_EXTENSIONS )
+ //=== VK_KHR_video_decode_queue ===
+
+ VULKAN_HPP_INLINE void
+ CommandBuffer::decodeVideoKHR( const VideoDecodeInfoKHR & frameInfo ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkCmdDecodeVideoKHR &&
+ "Function <vkCmdDecodeVideoKHR> needs extension <VK_KHR_video_decode_queue> enabled!" );
+
+ getDispatcher()->vkCmdDecodeVideoKHR( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ reinterpret_cast<const VkVideoDecodeInfoKHR *>( &frameInfo ) );
+ }
+# endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+ //=== VK_EXT_transform_feedback ===
+
+ VULKAN_HPP_INLINE void CommandBuffer::bindTransformFeedbackBuffersEXT(
+ uint32_t firstBinding,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::Buffer> const & buffers,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::DeviceSize> const & offsets,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::DeviceSize> const & sizes ) const VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkCmdBindTransformFeedbackBuffersEXT &&
+ "Function <vkCmdBindTransformFeedbackBuffersEXT> needs extension <VK_EXT_transform_feedback> enabled!" );
+
+# ifdef VULKAN_HPP_NO_EXCEPTIONS
+ VULKAN_HPP_ASSERT( buffers.size() == offsets.size() );
+ VULKAN_HPP_ASSERT( sizes.empty() || buffers.size() == sizes.size() );
+# else
+ if ( buffers.size() != offsets.size() )
+ {
+ throw LogicError( VULKAN_HPP_NAMESPACE_STRING
+ "::CommandBuffer::bindTransformFeedbackBuffersEXT: buffers.size() != offsets.size()" );
+ }
+ if ( !sizes.empty() && buffers.size() != sizes.size() )
+ {
+ throw LogicError( VULKAN_HPP_NAMESPACE_STRING
+ "::CommandBuffer::bindTransformFeedbackBuffersEXT: buffers.size() != sizes.size()" );
+ }
+# endif /*VULKAN_HPP_NO_EXCEPTIONS*/
+
+ getDispatcher()->vkCmdBindTransformFeedbackBuffersEXT( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ firstBinding,
+ buffers.size(),
+ reinterpret_cast<const VkBuffer *>( buffers.data() ),
+ reinterpret_cast<const VkDeviceSize *>( offsets.data() ),
+ reinterpret_cast<const VkDeviceSize *>( sizes.data() ) );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::beginTransformFeedbackEXT(
+ uint32_t firstCounterBuffer,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::Buffer> const & counterBuffers,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::DeviceSize> const & counterBufferOffsets ) const
+ VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkCmdBeginTransformFeedbackEXT &&
+ "Function <vkCmdBeginTransformFeedbackEXT> needs extension <VK_EXT_transform_feedback> enabled!" );
+
+# ifdef VULKAN_HPP_NO_EXCEPTIONS
+ VULKAN_HPP_ASSERT( counterBufferOffsets.empty() || counterBuffers.size() == counterBufferOffsets.size() );
+# else
+ if ( !counterBufferOffsets.empty() && counterBuffers.size() != counterBufferOffsets.size() )
+ {
+ throw LogicError(
+ VULKAN_HPP_NAMESPACE_STRING
+ "::CommandBuffer::beginTransformFeedbackEXT: counterBuffers.size() != counterBufferOffsets.size()" );
+ }
+# endif /*VULKAN_HPP_NO_EXCEPTIONS*/
+
+ getDispatcher()->vkCmdBeginTransformFeedbackEXT(
+ static_cast<VkCommandBuffer>( m_commandBuffer ),
+ firstCounterBuffer,
+ counterBuffers.size(),
+ reinterpret_cast<const VkBuffer *>( counterBuffers.data() ),
+ reinterpret_cast<const VkDeviceSize *>( counterBufferOffsets.data() ) );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::endTransformFeedbackEXT(
+ uint32_t firstCounterBuffer,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::Buffer> const & counterBuffers,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::DeviceSize> const & counterBufferOffsets ) const
+ VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkCmdEndTransformFeedbackEXT &&
+ "Function <vkCmdEndTransformFeedbackEXT> needs extension <VK_EXT_transform_feedback> enabled!" );
+
+# ifdef VULKAN_HPP_NO_EXCEPTIONS
+ VULKAN_HPP_ASSERT( counterBufferOffsets.empty() || counterBuffers.size() == counterBufferOffsets.size() );
+# else
+ if ( !counterBufferOffsets.empty() && counterBuffers.size() != counterBufferOffsets.size() )
+ {
+ throw LogicError(
+ VULKAN_HPP_NAMESPACE_STRING
+ "::CommandBuffer::endTransformFeedbackEXT: counterBuffers.size() != counterBufferOffsets.size()" );
+ }
+# endif /*VULKAN_HPP_NO_EXCEPTIONS*/
+
+ getDispatcher()->vkCmdEndTransformFeedbackEXT(
+ static_cast<VkCommandBuffer>( m_commandBuffer ),
+ firstCounterBuffer,
+ counterBuffers.size(),
+ reinterpret_cast<const VkBuffer *>( counterBuffers.data() ),
+ reinterpret_cast<const VkDeviceSize *>( counterBufferOffsets.data() ) );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::beginQueryIndexedEXT( VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ uint32_t query,
+ VULKAN_HPP_NAMESPACE::QueryControlFlags flags,
+ uint32_t index ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkCmdBeginQueryIndexedEXT &&
+ "Function <vkCmdBeginQueryIndexedEXT> needs extension <VK_EXT_transform_feedback> enabled!" );
+
+ getDispatcher()->vkCmdBeginQueryIndexedEXT( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkQueryPool>( queryPool ),
+ query,
+ static_cast<VkQueryControlFlags>( flags ),
+ index );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::endQueryIndexedEXT( VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ uint32_t query,
+ uint32_t index ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkCmdEndQueryIndexedEXT &&
+ "Function <vkCmdEndQueryIndexedEXT> needs extension <VK_EXT_transform_feedback> enabled!" );
+
+ getDispatcher()->vkCmdEndQueryIndexedEXT(
+ static_cast<VkCommandBuffer>( m_commandBuffer ), static_cast<VkQueryPool>( queryPool ), query, index );
+ }
+
+ VULKAN_HPP_INLINE void
+ CommandBuffer::drawIndirectByteCountEXT( uint32_t instanceCount,
+ uint32_t firstInstance,
+ VULKAN_HPP_NAMESPACE::Buffer counterBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize counterBufferOffset,
+ uint32_t counterOffset,
+ uint32_t vertexStride ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkCmdDrawIndirectByteCountEXT &&
+ "Function <vkCmdDrawIndirectByteCountEXT> needs extension <VK_EXT_transform_feedback> enabled!" );
+
+ getDispatcher()->vkCmdDrawIndirectByteCountEXT( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ instanceCount,
+ firstInstance,
+ static_cast<VkBuffer>( counterBuffer ),
+ static_cast<VkDeviceSize>( counterBufferOffset ),
+ counterOffset,
+ vertexStride );
+ }
+
+ //=== VK_NVX_binary_import ===
+
+ VULKAN_HPP_INLINE void
+ CommandBuffer::cuLaunchKernelNVX( const CuLaunchInfoNVX & launchInfo ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkCmdCuLaunchKernelNVX &&
+ "Function <vkCmdCuLaunchKernelNVX> needs extension <VK_NVX_binary_import> enabled!" );
+
+ getDispatcher()->vkCmdCuLaunchKernelNVX( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ reinterpret_cast<const VkCuLaunchInfoNVX *>( &launchInfo ) );
+ }
+
+ //=== VK_NVX_image_view_handle ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE uint32_t
+ Device::getImageViewHandleNVX( const ImageViewHandleInfoNVX & info ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkGetImageViewHandleNVX &&
+ "Function <vkGetImageViewHandleNVX> needs extension <VK_NVX_image_view_handle> enabled!" );
+
+ return getDispatcher()->vkGetImageViewHandleNVX( static_cast<VkDevice>( m_device ),
+ reinterpret_cast<const VkImageViewHandleInfoNVX *>( &info ) );
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::ImageViewAddressPropertiesNVX
+ ImageView::getAddressNVX() const
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkGetImageViewAddressNVX &&
+ "Function <vkGetImageViewAddressNVX> needs extension <VK_NVX_image_view_handle> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::ImageViewAddressPropertiesNVX properties;
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetImageViewAddressNVX(
+ static_cast<VkDevice>( m_device ),
+ static_cast<VkImageView>( m_imageView ),
+ reinterpret_cast<VkImageViewAddressPropertiesNVX *>( &properties ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::ImageView::getAddressNVX" );
+ }
+ return properties;
+ }
+
+ //=== VK_AMD_draw_indirect_count ===
+
+ VULKAN_HPP_INLINE void CommandBuffer::drawIndirectCountAMD( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize offset,
+ VULKAN_HPP_NAMESPACE::Buffer countBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize countBufferOffset,
+ uint32_t maxDrawCount,
+ uint32_t stride ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkCmdDrawIndirectCountAMD &&
+ "Function <vkCmdDrawIndirectCountAMD> needs extension <VK_AMD_draw_indirect_count> enabled!" );
+
+ getDispatcher()->vkCmdDrawIndirectCountAMD( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkBuffer>( buffer ),
+ static_cast<VkDeviceSize>( offset ),
+ static_cast<VkBuffer>( countBuffer ),
+ static_cast<VkDeviceSize>( countBufferOffset ),
+ maxDrawCount,
+ stride );
+ }
+
+ VULKAN_HPP_INLINE void
+ CommandBuffer::drawIndexedIndirectCountAMD( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize offset,
+ VULKAN_HPP_NAMESPACE::Buffer countBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize countBufferOffset,
+ uint32_t maxDrawCount,
+ uint32_t stride ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkCmdDrawIndexedIndirectCountAMD &&
+ "Function <vkCmdDrawIndexedIndirectCountAMD> needs extension <VK_AMD_draw_indirect_count> enabled!" );
+
+ getDispatcher()->vkCmdDrawIndexedIndirectCountAMD( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkBuffer>( buffer ),
+ static_cast<VkDeviceSize>( offset ),
+ static_cast<VkBuffer>( countBuffer ),
+ static_cast<VkDeviceSize>( countBufferOffset ),
+ maxDrawCount,
+ stride );
+ }
+
+ //=== VK_AMD_shader_info ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<uint8_t>
+ Pipeline::getShaderInfoAMD( VULKAN_HPP_NAMESPACE::ShaderStageFlagBits shaderStage,
+ VULKAN_HPP_NAMESPACE::ShaderInfoTypeAMD infoType ) const
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkGetShaderInfoAMD &&
+ "Function <vkGetShaderInfoAMD> needs extension <VK_AMD_shader_info> enabled!" );
+
+ std::vector<uint8_t> info;
+ size_t infoSize;
+ VULKAN_HPP_NAMESPACE::Result result;
+ do
+ {
+ result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkGetShaderInfoAMD( static_cast<VkDevice>( m_device ),
+ static_cast<VkPipeline>( m_pipeline ),
+ static_cast<VkShaderStageFlagBits>( shaderStage ),
+ static_cast<VkShaderInfoTypeAMD>( infoType ),
+ &infoSize,
+ nullptr ) );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && infoSize )
+ {
+ info.resize( infoSize );
+ result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkGetShaderInfoAMD( static_cast<VkDevice>( m_device ),
+ static_cast<VkPipeline>( m_pipeline ),
+ static_cast<VkShaderStageFlagBits>( shaderStage ),
+ static_cast<VkShaderInfoTypeAMD>( infoType ),
+ &infoSize,
+ reinterpret_cast<void *>( info.data() ) ) );
+ VULKAN_HPP_ASSERT( infoSize <= info.size() );
+ }
+ } while ( result == VULKAN_HPP_NAMESPACE::Result::eIncomplete );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && ( infoSize < info.size() ) )
+ {
+ info.resize( infoSize );
+ }
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Pipeline::getShaderInfoAMD" );
+ }
+ return info;
+ }
+
+ //=== VK_NV_external_memory_capabilities ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::ExternalImageFormatPropertiesNV
+ PhysicalDevice::getExternalImageFormatPropertiesNV(
+ VULKAN_HPP_NAMESPACE::Format format,
+ VULKAN_HPP_NAMESPACE::ImageType type,
+ VULKAN_HPP_NAMESPACE::ImageTiling tiling,
+ VULKAN_HPP_NAMESPACE::ImageUsageFlags usage,
+ VULKAN_HPP_NAMESPACE::ImageCreateFlags flags,
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV externalHandleType ) const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetPhysicalDeviceExternalImageFormatPropertiesNV &&
+ "Function <vkGetPhysicalDeviceExternalImageFormatPropertiesNV> needs extension <VK_NV_external_memory_capabilities> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::ExternalImageFormatPropertiesNV externalImageFormatProperties;
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetPhysicalDeviceExternalImageFormatPropertiesNV(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ static_cast<VkFormat>( format ),
+ static_cast<VkImageType>( type ),
+ static_cast<VkImageTiling>( tiling ),
+ static_cast<VkImageUsageFlags>( usage ),
+ static_cast<VkImageCreateFlags>( flags ),
+ static_cast<VkExternalMemoryHandleTypeFlagsNV>( externalHandleType ),
+ reinterpret_cast<VkExternalImageFormatPropertiesNV *>( &externalImageFormatProperties ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result,
+ VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getExternalImageFormatPropertiesNV" );
+ }
+ return externalImageFormatProperties;
+ }
+
+# if defined( VK_USE_PLATFORM_WIN32_KHR )
+ //=== VK_NV_external_memory_win32 ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE HANDLE
+ DeviceMemory::getMemoryWin32HandleNV( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV handleType ) const
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkGetMemoryWin32HandleNV &&
+ "Function <vkGetMemoryWin32HandleNV> needs extension <VK_NV_external_memory_win32> enabled!" );
+
+ HANDLE handle;
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkGetMemoryWin32HandleNV( static_cast<VkDevice>( m_device ),
+ static_cast<VkDeviceMemory>( m_deviceMemory ),
+ static_cast<VkExternalMemoryHandleTypeFlagsNV>( handleType ),
+ &handle ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::DeviceMemory::getMemoryWin32HandleNV" );
+ }
+ return handle;
+ }
+# endif /*VK_USE_PLATFORM_WIN32_KHR*/
+
+ //=== VK_KHR_get_physical_device_properties2 ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures2
+ PhysicalDevice::getFeatures2KHR() const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetPhysicalDeviceFeatures2KHR &&
+ "Function <vkGetPhysicalDeviceFeatures2KHR> needs extension <VK_KHR_get_physical_device_properties2> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures2 features;
+ getDispatcher()->vkGetPhysicalDeviceFeatures2KHR( static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ reinterpret_cast<VkPhysicalDeviceFeatures2 *>( &features ) );
+ return features;
+ }
+
+ template <typename X, typename Y, typename... Z>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE StructureChain<X, Y, Z...>
+ PhysicalDevice::getFeatures2KHR() const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetPhysicalDeviceFeatures2KHR &&
+ "Function <vkGetPhysicalDeviceFeatures2KHR> needs extension <VK_KHR_get_physical_device_properties2> enabled!" );
+
+ StructureChain<X, Y, Z...> structureChain;
+ VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures2 & features =
+ structureChain.template get<VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures2>();
+ getDispatcher()->vkGetPhysicalDeviceFeatures2KHR( static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ reinterpret_cast<VkPhysicalDeviceFeatures2 *>( &features ) );
+ return structureChain;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties2
+ PhysicalDevice::getProperties2KHR() const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetPhysicalDeviceProperties2KHR &&
+ "Function <vkGetPhysicalDeviceProperties2KHR> needs extension <VK_KHR_get_physical_device_properties2> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties2 properties;
+ getDispatcher()->vkGetPhysicalDeviceProperties2KHR(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ reinterpret_cast<VkPhysicalDeviceProperties2 *>( &properties ) );
+ return properties;
+ }
+
+ template <typename X, typename Y, typename... Z>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE StructureChain<X, Y, Z...>
+ PhysicalDevice::getProperties2KHR() const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetPhysicalDeviceProperties2KHR &&
+ "Function <vkGetPhysicalDeviceProperties2KHR> needs extension <VK_KHR_get_physical_device_properties2> enabled!" );
+
+ StructureChain<X, Y, Z...> structureChain;
+ VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties2 & properties =
+ structureChain.template get<VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties2>();
+ getDispatcher()->vkGetPhysicalDeviceProperties2KHR(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ reinterpret_cast<VkPhysicalDeviceProperties2 *>( &properties ) );
+ return structureChain;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::FormatProperties2
+ PhysicalDevice::getFormatProperties2KHR( VULKAN_HPP_NAMESPACE::Format format ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetPhysicalDeviceFormatProperties2KHR &&
+ "Function <vkGetPhysicalDeviceFormatProperties2KHR> needs extension <VK_KHR_get_physical_device_properties2> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::FormatProperties2 formatProperties;
+ getDispatcher()->vkGetPhysicalDeviceFormatProperties2KHR(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ static_cast<VkFormat>( format ),
+ reinterpret_cast<VkFormatProperties2 *>( &formatProperties ) );
+ return formatProperties;
+ }
+
+ template <typename X, typename Y, typename... Z>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE StructureChain<X, Y, Z...>
+ PhysicalDevice::getFormatProperties2KHR( VULKAN_HPP_NAMESPACE::Format format ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetPhysicalDeviceFormatProperties2KHR &&
+ "Function <vkGetPhysicalDeviceFormatProperties2KHR> needs extension <VK_KHR_get_physical_device_properties2> enabled!" );
+
+ StructureChain<X, Y, Z...> structureChain;
+ VULKAN_HPP_NAMESPACE::FormatProperties2 & formatProperties =
+ structureChain.template get<VULKAN_HPP_NAMESPACE::FormatProperties2>();
+ getDispatcher()->vkGetPhysicalDeviceFormatProperties2KHR(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ static_cast<VkFormat>( format ),
+ reinterpret_cast<VkFormatProperties2 *>( &formatProperties ) );
+ return structureChain;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::ImageFormatProperties2
+ PhysicalDevice::getImageFormatProperties2KHR( const PhysicalDeviceImageFormatInfo2 & imageFormatInfo ) const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetPhysicalDeviceImageFormatProperties2KHR &&
+ "Function <vkGetPhysicalDeviceImageFormatProperties2KHR> needs extension <VK_KHR_get_physical_device_properties2> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::ImageFormatProperties2 imageFormatProperties;
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetPhysicalDeviceImageFormatProperties2KHR(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ reinterpret_cast<const VkPhysicalDeviceImageFormatInfo2 *>( &imageFormatInfo ),
+ reinterpret_cast<VkImageFormatProperties2 *>( &imageFormatProperties ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getImageFormatProperties2KHR" );
+ }
+ return imageFormatProperties;
+ }
+
+ template <typename X, typename Y, typename... Z>
+ VULKAN_HPP_NODISCARD StructureChain<X, Y, Z...>
+ PhysicalDevice::getImageFormatProperties2KHR( const PhysicalDeviceImageFormatInfo2 & imageFormatInfo ) const
+ {
+ StructureChain<X, Y, Z...> structureChain;
+ VULKAN_HPP_NAMESPACE::ImageFormatProperties2 & imageFormatProperties =
+ structureChain.template get<VULKAN_HPP_NAMESPACE::ImageFormatProperties2>();
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetPhysicalDeviceImageFormatProperties2KHR(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ reinterpret_cast<const VkPhysicalDeviceImageFormatInfo2 *>( &imageFormatInfo ),
+ reinterpret_cast<VkImageFormatProperties2 *>( &imageFormatProperties ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getImageFormatProperties2KHR" );
+ }
+ return structureChain;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<VULKAN_HPP_NAMESPACE::QueueFamilyProperties2>
+ PhysicalDevice::getQueueFamilyProperties2KHR() const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetPhysicalDeviceQueueFamilyProperties2KHR &&
+ "Function <vkGetPhysicalDeviceQueueFamilyProperties2KHR> needs extension <VK_KHR_get_physical_device_properties2> enabled!" );
+
+ uint32_t queueFamilyPropertyCount;
+ getDispatcher()->vkGetPhysicalDeviceQueueFamilyProperties2KHR(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ), &queueFamilyPropertyCount, nullptr );
+ std::vector<VULKAN_HPP_NAMESPACE::QueueFamilyProperties2> queueFamilyProperties( queueFamilyPropertyCount );
+ getDispatcher()->vkGetPhysicalDeviceQueueFamilyProperties2KHR(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ &queueFamilyPropertyCount,
+ reinterpret_cast<VkQueueFamilyProperties2 *>( queueFamilyProperties.data() ) );
+ VULKAN_HPP_ASSERT( queueFamilyPropertyCount <= queueFamilyProperties.size() );
+ return queueFamilyProperties;
+ }
+
+ template <typename StructureChain>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<StructureChain>
+ PhysicalDevice::getQueueFamilyProperties2KHR() const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetPhysicalDeviceQueueFamilyProperties2KHR &&
+ "Function <vkGetPhysicalDeviceQueueFamilyProperties2KHR> needs extension <VK_KHR_get_physical_device_properties2> enabled!" );
+
+ uint32_t queueFamilyPropertyCount;
+ getDispatcher()->vkGetPhysicalDeviceQueueFamilyProperties2KHR(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ), &queueFamilyPropertyCount, nullptr );
+ std::vector<StructureChain> returnVector( queueFamilyPropertyCount );
+ std::vector<VULKAN_HPP_NAMESPACE::QueueFamilyProperties2> queueFamilyProperties( queueFamilyPropertyCount );
+ for ( uint32_t i = 0; i < queueFamilyPropertyCount; i++ )
+ {
+ queueFamilyProperties[i].pNext =
+ returnVector[i].template get<VULKAN_HPP_NAMESPACE::QueueFamilyProperties2>().pNext;
+ }
+ getDispatcher()->vkGetPhysicalDeviceQueueFamilyProperties2KHR(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ &queueFamilyPropertyCount,
+ reinterpret_cast<VkQueueFamilyProperties2 *>( queueFamilyProperties.data() ) );
+ VULKAN_HPP_ASSERT( queueFamilyPropertyCount <= queueFamilyProperties.size() );
+ for ( uint32_t i = 0; i < queueFamilyPropertyCount; i++ )
+ {
+ returnVector[i].template get<VULKAN_HPP_NAMESPACE::QueueFamilyProperties2>() = queueFamilyProperties[i];
+ }
+ return returnVector;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties2
+ PhysicalDevice::getMemoryProperties2KHR() const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetPhysicalDeviceMemoryProperties2KHR &&
+ "Function <vkGetPhysicalDeviceMemoryProperties2KHR> needs extension <VK_KHR_get_physical_device_properties2> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties2 memoryProperties;
+ getDispatcher()->vkGetPhysicalDeviceMemoryProperties2KHR(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ reinterpret_cast<VkPhysicalDeviceMemoryProperties2 *>( &memoryProperties ) );
+ return memoryProperties;
+ }
+
+ template <typename X, typename Y, typename... Z>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE StructureChain<X, Y, Z...>
+ PhysicalDevice::getMemoryProperties2KHR() const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetPhysicalDeviceMemoryProperties2KHR &&
+ "Function <vkGetPhysicalDeviceMemoryProperties2KHR> needs extension <VK_KHR_get_physical_device_properties2> enabled!" );
+
+ StructureChain<X, Y, Z...> structureChain;
+ VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties2 & memoryProperties =
+ structureChain.template get<VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties2>();
+ getDispatcher()->vkGetPhysicalDeviceMemoryProperties2KHR(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ reinterpret_cast<VkPhysicalDeviceMemoryProperties2 *>( &memoryProperties ) );
+ return structureChain;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<VULKAN_HPP_NAMESPACE::SparseImageFormatProperties2>
+ PhysicalDevice::getSparseImageFormatProperties2KHR(
+ const PhysicalDeviceSparseImageFormatInfo2 & formatInfo ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetPhysicalDeviceSparseImageFormatProperties2KHR &&
+ "Function <vkGetPhysicalDeviceSparseImageFormatProperties2KHR> needs extension <VK_KHR_get_physical_device_properties2> enabled!" );
+
+ uint32_t propertyCount;
+ getDispatcher()->vkGetPhysicalDeviceSparseImageFormatProperties2KHR(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ reinterpret_cast<const VkPhysicalDeviceSparseImageFormatInfo2 *>( &formatInfo ),
+ &propertyCount,
+ nullptr );
+ std::vector<VULKAN_HPP_NAMESPACE::SparseImageFormatProperties2> properties( propertyCount );
+ getDispatcher()->vkGetPhysicalDeviceSparseImageFormatProperties2KHR(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ reinterpret_cast<const VkPhysicalDeviceSparseImageFormatInfo2 *>( &formatInfo ),
+ &propertyCount,
+ reinterpret_cast<VkSparseImageFormatProperties2 *>( properties.data() ) );
+ VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
+ return properties;
+ }
+
+ //=== VK_KHR_device_group ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::PeerMemoryFeatureFlags
+ Device::getGroupPeerMemoryFeaturesKHR( uint32_t heapIndex,
+ uint32_t localDeviceIndex,
+ uint32_t remoteDeviceIndex ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetDeviceGroupPeerMemoryFeaturesKHR &&
+ "Function <vkGetDeviceGroupPeerMemoryFeaturesKHR> needs extension <VK_KHR_device_group> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::PeerMemoryFeatureFlags peerMemoryFeatures;
+ getDispatcher()->vkGetDeviceGroupPeerMemoryFeaturesKHR(
+ static_cast<VkDevice>( m_device ),
+ heapIndex,
+ localDeviceIndex,
+ remoteDeviceIndex,
+ reinterpret_cast<VkPeerMemoryFeatureFlags *>( &peerMemoryFeatures ) );
+ return peerMemoryFeatures;
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::setDeviceMaskKHR( uint32_t deviceMask ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkCmdSetDeviceMaskKHR &&
+ "Function <vkCmdSetDeviceMaskKHR> needs extension <VK_KHR_device_group> enabled!" );
+
+ getDispatcher()->vkCmdSetDeviceMaskKHR( static_cast<VkCommandBuffer>( m_commandBuffer ), deviceMask );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::dispatchBaseKHR( uint32_t baseGroupX,
+ uint32_t baseGroupY,
+ uint32_t baseGroupZ,
+ uint32_t groupCountX,
+ uint32_t groupCountY,
+ uint32_t groupCountZ ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkCmdDispatchBaseKHR &&
+ "Function <vkCmdDispatchBaseKHR> needs extension <VK_KHR_device_group> enabled!" );
+
+ getDispatcher()->vkCmdDispatchBaseKHR( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ baseGroupX,
+ baseGroupY,
+ baseGroupZ,
+ groupCountX,
+ groupCountY,
+ groupCountZ );
+ }
+
+ //=== VK_KHR_maintenance1 ===
+
+ VULKAN_HPP_INLINE void
+ CommandPool::trimKHR( VULKAN_HPP_NAMESPACE::CommandPoolTrimFlags flags ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkTrimCommandPoolKHR &&
+ "Function <vkTrimCommandPoolKHR> needs extension <VK_KHR_maintenance1> enabled!" );
+
+ getDispatcher()->vkTrimCommandPoolKHR( static_cast<VkDevice>( m_device ),
+ static_cast<VkCommandPool>( m_commandPool ),
+ static_cast<VkCommandPoolTrimFlags>( flags ) );
+ }
+
+ //=== VK_KHR_device_group_creation ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<VULKAN_HPP_NAMESPACE::PhysicalDeviceGroupProperties>
+ Instance::enumeratePhysicalDeviceGroupsKHR() const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkEnumeratePhysicalDeviceGroupsKHR &&
+ "Function <vkEnumeratePhysicalDeviceGroupsKHR> needs extension <VK_KHR_device_group_creation> enabled!" );
+
+ std::vector<VULKAN_HPP_NAMESPACE::PhysicalDeviceGroupProperties> physicalDeviceGroupProperties;
+ uint32_t physicalDeviceGroupCount;
+ VULKAN_HPP_NAMESPACE::Result result;
+ do
+ {
+ result = static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkEnumeratePhysicalDeviceGroupsKHR(
+ static_cast<VkInstance>( m_instance ), &physicalDeviceGroupCount, nullptr ) );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && physicalDeviceGroupCount )
+ {
+ physicalDeviceGroupProperties.resize( physicalDeviceGroupCount );
+ result = static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkEnumeratePhysicalDeviceGroupsKHR(
+ static_cast<VkInstance>( m_instance ),
+ &physicalDeviceGroupCount,
+ reinterpret_cast<VkPhysicalDeviceGroupProperties *>( physicalDeviceGroupProperties.data() ) ) );
+ VULKAN_HPP_ASSERT( physicalDeviceGroupCount <= physicalDeviceGroupProperties.size() );
+ }
+ } while ( result == VULKAN_HPP_NAMESPACE::Result::eIncomplete );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) &&
+ ( physicalDeviceGroupCount < physicalDeviceGroupProperties.size() ) )
+ {
+ physicalDeviceGroupProperties.resize( physicalDeviceGroupCount );
+ }
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Instance::enumeratePhysicalDeviceGroupsKHR" );
+ }
+ return physicalDeviceGroupProperties;
+ }
+
+ //=== VK_KHR_external_memory_capabilities ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::ExternalBufferProperties
+ PhysicalDevice::getExternalBufferPropertiesKHR(
+ const PhysicalDeviceExternalBufferInfo & externalBufferInfo ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetPhysicalDeviceExternalBufferPropertiesKHR &&
+ "Function <vkGetPhysicalDeviceExternalBufferPropertiesKHR> needs extension <VK_KHR_external_memory_capabilities> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::ExternalBufferProperties externalBufferProperties;
+ getDispatcher()->vkGetPhysicalDeviceExternalBufferPropertiesKHR(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ reinterpret_cast<const VkPhysicalDeviceExternalBufferInfo *>( &externalBufferInfo ),
+ reinterpret_cast<VkExternalBufferProperties *>( &externalBufferProperties ) );
+ return externalBufferProperties;
+ }
+
+# if defined( VK_USE_PLATFORM_WIN32_KHR )
+ //=== VK_KHR_external_memory_win32 ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE HANDLE
+ Device::getMemoryWin32HandleKHR( const MemoryGetWin32HandleInfoKHR & getWin32HandleInfo ) const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetMemoryWin32HandleKHR &&
+ "Function <vkGetMemoryWin32HandleKHR> needs extension <VK_KHR_external_memory_win32> enabled!" );
+
+ HANDLE handle;
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetMemoryWin32HandleKHR(
+ static_cast<VkDevice>( m_device ),
+ reinterpret_cast<const VkMemoryGetWin32HandleInfoKHR *>( &getWin32HandleInfo ),
+ &handle ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Device::getMemoryWin32HandleKHR" );
+ }
+ return handle;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::MemoryWin32HandlePropertiesKHR
+ Device::getMemoryWin32HandlePropertiesKHR( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType,
+ HANDLE handle ) const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetMemoryWin32HandlePropertiesKHR &&
+ "Function <vkGetMemoryWin32HandlePropertiesKHR> needs extension <VK_KHR_external_memory_win32> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::MemoryWin32HandlePropertiesKHR memoryWin32HandleProperties;
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetMemoryWin32HandlePropertiesKHR(
+ static_cast<VkDevice>( m_device ),
+ static_cast<VkExternalMemoryHandleTypeFlagBits>( handleType ),
+ handle,
+ reinterpret_cast<VkMemoryWin32HandlePropertiesKHR *>( &memoryWin32HandleProperties ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Device::getMemoryWin32HandlePropertiesKHR" );
+ }
+ return memoryWin32HandleProperties;
+ }
+# endif /*VK_USE_PLATFORM_WIN32_KHR*/
+
+ //=== VK_KHR_external_memory_fd ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE int Device::getMemoryFdKHR( const MemoryGetFdInfoKHR & getFdInfo ) const
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkGetMemoryFdKHR &&
+ "Function <vkGetMemoryFdKHR> needs extension <VK_KHR_external_memory_fd> enabled!" );
+
+ int fd;
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetMemoryFdKHR(
+ static_cast<VkDevice>( m_device ), reinterpret_cast<const VkMemoryGetFdInfoKHR *>( &getFdInfo ), &fd ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Device::getMemoryFdKHR" );
+ }
+ return fd;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::MemoryFdPropertiesKHR
+ Device::getMemoryFdPropertiesKHR( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType,
+ int fd ) const
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkGetMemoryFdPropertiesKHR &&
+ "Function <vkGetMemoryFdPropertiesKHR> needs extension <VK_KHR_external_memory_fd> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::MemoryFdPropertiesKHR memoryFdProperties;
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetMemoryFdPropertiesKHR(
+ static_cast<VkDevice>( m_device ),
+ static_cast<VkExternalMemoryHandleTypeFlagBits>( handleType ),
+ fd,
+ reinterpret_cast<VkMemoryFdPropertiesKHR *>( &memoryFdProperties ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Device::getMemoryFdPropertiesKHR" );
+ }
+ return memoryFdProperties;
+ }
+
+ //=== VK_KHR_external_semaphore_capabilities ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::ExternalSemaphoreProperties
+ PhysicalDevice::getExternalSemaphorePropertiesKHR(
+ const PhysicalDeviceExternalSemaphoreInfo & externalSemaphoreInfo ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetPhysicalDeviceExternalSemaphorePropertiesKHR &&
+ "Function <vkGetPhysicalDeviceExternalSemaphorePropertiesKHR> needs extension <VK_KHR_external_semaphore_capabilities> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::ExternalSemaphoreProperties externalSemaphoreProperties;
+ getDispatcher()->vkGetPhysicalDeviceExternalSemaphorePropertiesKHR(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ reinterpret_cast<const VkPhysicalDeviceExternalSemaphoreInfo *>( &externalSemaphoreInfo ),
+ reinterpret_cast<VkExternalSemaphoreProperties *>( &externalSemaphoreProperties ) );
+ return externalSemaphoreProperties;
+ }
+
+# if defined( VK_USE_PLATFORM_WIN32_KHR )
+ //=== VK_KHR_external_semaphore_win32 ===
+
+ VULKAN_HPP_INLINE void Device::importSemaphoreWin32HandleKHR(
+ const ImportSemaphoreWin32HandleInfoKHR & importSemaphoreWin32HandleInfo ) const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkImportSemaphoreWin32HandleKHR &&
+ "Function <vkImportSemaphoreWin32HandleKHR> needs extension <VK_KHR_external_semaphore_win32> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkImportSemaphoreWin32HandleKHR(
+ static_cast<VkDevice>( m_device ),
+ reinterpret_cast<const VkImportSemaphoreWin32HandleInfoKHR *>( &importSemaphoreWin32HandleInfo ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Device::importSemaphoreWin32HandleKHR" );
+ }
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE HANDLE
+ Device::getSemaphoreWin32HandleKHR( const SemaphoreGetWin32HandleInfoKHR & getWin32HandleInfo ) const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetSemaphoreWin32HandleKHR &&
+ "Function <vkGetSemaphoreWin32HandleKHR> needs extension <VK_KHR_external_semaphore_win32> enabled!" );
+
+ HANDLE handle;
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetSemaphoreWin32HandleKHR(
+ static_cast<VkDevice>( m_device ),
+ reinterpret_cast<const VkSemaphoreGetWin32HandleInfoKHR *>( &getWin32HandleInfo ),
+ &handle ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Device::getSemaphoreWin32HandleKHR" );
+ }
+ return handle;
+ }
+# endif /*VK_USE_PLATFORM_WIN32_KHR*/
+
+ //=== VK_KHR_external_semaphore_fd ===
+
+ VULKAN_HPP_INLINE void Device::importSemaphoreFdKHR( const ImportSemaphoreFdInfoKHR & importSemaphoreFdInfo ) const
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkImportSemaphoreFdKHR &&
+ "Function <vkImportSemaphoreFdKHR> needs extension <VK_KHR_external_semaphore_fd> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkImportSemaphoreFdKHR(
+ static_cast<VkDevice>( m_device ),
+ reinterpret_cast<const VkImportSemaphoreFdInfoKHR *>( &importSemaphoreFdInfo ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Device::importSemaphoreFdKHR" );
+ }
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE int
+ Device::getSemaphoreFdKHR( const SemaphoreGetFdInfoKHR & getFdInfo ) const
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkGetSemaphoreFdKHR &&
+ "Function <vkGetSemaphoreFdKHR> needs extension <VK_KHR_external_semaphore_fd> enabled!" );
+
+ int fd;
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetSemaphoreFdKHR(
+ static_cast<VkDevice>( m_device ), reinterpret_cast<const VkSemaphoreGetFdInfoKHR *>( &getFdInfo ), &fd ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Device::getSemaphoreFdKHR" );
+ }
+ return fd;
+ }
+
+ //=== VK_KHR_push_descriptor ===
+
+ VULKAN_HPP_INLINE void CommandBuffer::pushDescriptorSetKHR(
+ VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint,
+ VULKAN_HPP_NAMESPACE::PipelineLayout layout,
+ uint32_t set,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::WriteDescriptorSet> const & descriptorWrites ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkCmdPushDescriptorSetKHR &&
+ "Function <vkCmdPushDescriptorSetKHR> needs extension <VK_KHR_push_descriptor> enabled!" );
+
+ getDispatcher()->vkCmdPushDescriptorSetKHR(
+ static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkPipelineBindPoint>( pipelineBindPoint ),
+ static_cast<VkPipelineLayout>( layout ),
+ set,
+ descriptorWrites.size(),
+ reinterpret_cast<const VkWriteDescriptorSet *>( descriptorWrites.data() ) );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::pushDescriptorSetWithTemplateKHR(
+ VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate descriptorUpdateTemplate,
+ VULKAN_HPP_NAMESPACE::PipelineLayout layout,
+ uint32_t set,
+ const void * pData ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkCmdPushDescriptorSetWithTemplateKHR &&
+ "Function <vkCmdPushDescriptorSetWithTemplateKHR> needs extension <VK_KHR_push_descriptor> enabled!" );
+
+ getDispatcher()->vkCmdPushDescriptorSetWithTemplateKHR(
+ static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkDescriptorUpdateTemplate>( descriptorUpdateTemplate ),
+ static_cast<VkPipelineLayout>( layout ),
+ set,
+ pData );
+ }
+
+ //=== VK_EXT_conditional_rendering ===
+
+ VULKAN_HPP_INLINE void CommandBuffer::beginConditionalRenderingEXT(
+ const ConditionalRenderingBeginInfoEXT & conditionalRenderingBegin ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkCmdBeginConditionalRenderingEXT &&
+ "Function <vkCmdBeginConditionalRenderingEXT> needs extension <VK_EXT_conditional_rendering> enabled!" );
+
+ getDispatcher()->vkCmdBeginConditionalRenderingEXT(
+ static_cast<VkCommandBuffer>( m_commandBuffer ),
+ reinterpret_cast<const VkConditionalRenderingBeginInfoEXT *>( &conditionalRenderingBegin ) );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::endConditionalRenderingEXT() const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkCmdEndConditionalRenderingEXT &&
+ "Function <vkCmdEndConditionalRenderingEXT> needs extension <VK_EXT_conditional_rendering> enabled!" );
+
+ getDispatcher()->vkCmdEndConditionalRenderingEXT( static_cast<VkCommandBuffer>( m_commandBuffer ) );
+ }
+
+ //=== VK_KHR_descriptor_update_template ===
+
+ VULKAN_HPP_INLINE void Device::destroyDescriptorUpdateTemplateKHR(
+ VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate descriptorUpdateTemplate,
+ Optional<const AllocationCallbacks> allocator ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkDestroyDescriptorUpdateTemplateKHR &&
+ "Function <vkDestroyDescriptorUpdateTemplateKHR> needs extension <VK_KHR_descriptor_update_template> enabled!" );
+
+ getDispatcher()->vkDestroyDescriptorUpdateTemplateKHR(
+ static_cast<VkDevice>( m_device ),
+ static_cast<VkDescriptorUpdateTemplate>( descriptorUpdateTemplate ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+
+ VULKAN_HPP_INLINE void
+ DescriptorSet::updateWithTemplateKHR( VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate descriptorUpdateTemplate,
+ const void * pData ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkUpdateDescriptorSetWithTemplateKHR &&
+ "Function <vkUpdateDescriptorSetWithTemplateKHR> needs extension <VK_KHR_descriptor_update_template> enabled!" );
+
+ getDispatcher()->vkUpdateDescriptorSetWithTemplateKHR(
+ static_cast<VkDevice>( m_device ),
+ static_cast<VkDescriptorSet>( m_descriptorSet ),
+ static_cast<VkDescriptorUpdateTemplate>( descriptorUpdateTemplate ),
+ pData );
+ }
+
+ //=== VK_NV_clip_space_w_scaling ===
+
+ VULKAN_HPP_INLINE void CommandBuffer::setViewportWScalingNV(
+ uint32_t firstViewport,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::ViewportWScalingNV> const & viewportWScalings ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkCmdSetViewportWScalingNV &&
+ "Function <vkCmdSetViewportWScalingNV> needs extension <VK_NV_clip_space_w_scaling> enabled!" );
+
+ getDispatcher()->vkCmdSetViewportWScalingNV(
+ static_cast<VkCommandBuffer>( m_commandBuffer ),
+ firstViewport,
+ viewportWScalings.size(),
+ reinterpret_cast<const VkViewportWScalingNV *>( viewportWScalings.data() ) );
+ }
+
+# if defined( VK_USE_PLATFORM_XLIB_XRANDR_EXT )
+ //=== VK_EXT_acquire_xlib_display ===
+
+ VULKAN_HPP_INLINE void PhysicalDevice::acquireXlibDisplayEXT( Display & dpy,
+ VULKAN_HPP_NAMESPACE::DisplayKHR display ) const
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkAcquireXlibDisplayEXT &&
+ "Function <vkAcquireXlibDisplayEXT> needs extension <VK_EXT_acquire_xlib_display> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkAcquireXlibDisplayEXT(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ), &dpy, static_cast<VkDisplayKHR>( display ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::acquireXlibDisplayEXT" );
+ }
+ }
+# endif /*VK_USE_PLATFORM_XLIB_XRANDR_EXT*/
+
+ //=== VK_EXT_display_surface_counter ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::SurfaceCapabilities2EXT
+ PhysicalDevice::getSurfaceCapabilities2EXT( VULKAN_HPP_NAMESPACE::SurfaceKHR surface ) const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetPhysicalDeviceSurfaceCapabilities2EXT &&
+ "Function <vkGetPhysicalDeviceSurfaceCapabilities2EXT> needs extension <VK_EXT_display_surface_counter> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::SurfaceCapabilities2EXT surfaceCapabilities;
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetPhysicalDeviceSurfaceCapabilities2EXT(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ static_cast<VkSurfaceKHR>( surface ),
+ reinterpret_cast<VkSurfaceCapabilities2EXT *>( &surfaceCapabilities ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getSurfaceCapabilities2EXT" );
+ }
+ return surfaceCapabilities;
+ }
+
+ //=== VK_EXT_display_control ===
+
+ VULKAN_HPP_INLINE void Device::displayPowerControlEXT( VULKAN_HPP_NAMESPACE::DisplayKHR display,
+ const DisplayPowerInfoEXT & displayPowerInfo ) const
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkDisplayPowerControlEXT &&
+ "Function <vkDisplayPowerControlEXT> needs extension <VK_EXT_display_control> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkDisplayPowerControlEXT(
+ static_cast<VkDevice>( m_device ),
+ static_cast<VkDisplayKHR>( display ),
+ reinterpret_cast<const VkDisplayPowerInfoEXT *>( &displayPowerInfo ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Device::displayPowerControlEXT" );
+ }
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE uint64_t
+ SwapchainKHR::getCounterEXT( VULKAN_HPP_NAMESPACE::SurfaceCounterFlagBitsEXT counter ) const
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkGetSwapchainCounterEXT &&
+ "Function <vkGetSwapchainCounterEXT> needs extension <VK_EXT_display_control> enabled!" );
+
+ uint64_t counterValue;
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkGetSwapchainCounterEXT( static_cast<VkDevice>( m_device ),
+ static_cast<VkSwapchainKHR>( m_swapchainKHR ),
+ static_cast<VkSurfaceCounterFlagBitsEXT>( counter ),
+ &counterValue ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::SwapchainKHR::getCounterEXT" );
+ }
+ return counterValue;
+ }
+
+ //=== VK_GOOGLE_display_timing ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::RefreshCycleDurationGOOGLE
+ SwapchainKHR::getRefreshCycleDurationGOOGLE() const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetRefreshCycleDurationGOOGLE &&
+ "Function <vkGetRefreshCycleDurationGOOGLE> needs extension <VK_GOOGLE_display_timing> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::RefreshCycleDurationGOOGLE displayTimingProperties;
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetRefreshCycleDurationGOOGLE(
+ static_cast<VkDevice>( m_device ),
+ static_cast<VkSwapchainKHR>( m_swapchainKHR ),
+ reinterpret_cast<VkRefreshCycleDurationGOOGLE *>( &displayTimingProperties ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::SwapchainKHR::getRefreshCycleDurationGOOGLE" );
+ }
+ return displayTimingProperties;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<VULKAN_HPP_NAMESPACE::PastPresentationTimingGOOGLE>
+ SwapchainKHR::getPastPresentationTimingGOOGLE() const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetPastPresentationTimingGOOGLE &&
+ "Function <vkGetPastPresentationTimingGOOGLE> needs extension <VK_GOOGLE_display_timing> enabled!" );
+
+ std::vector<VULKAN_HPP_NAMESPACE::PastPresentationTimingGOOGLE> presentationTimings;
+ uint32_t presentationTimingCount;
+ VULKAN_HPP_NAMESPACE::Result result;
+ do
+ {
+ result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkGetPastPresentationTimingGOOGLE( static_cast<VkDevice>( m_device ),
+ static_cast<VkSwapchainKHR>( m_swapchainKHR ),
+ &presentationTimingCount,
+ nullptr ) );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && presentationTimingCount )
+ {
+ presentationTimings.resize( presentationTimingCount );
+ result = static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetPastPresentationTimingGOOGLE(
+ static_cast<VkDevice>( m_device ),
+ static_cast<VkSwapchainKHR>( m_swapchainKHR ),
+ &presentationTimingCount,
+ reinterpret_cast<VkPastPresentationTimingGOOGLE *>( presentationTimings.data() ) ) );
+ VULKAN_HPP_ASSERT( presentationTimingCount <= presentationTimings.size() );
+ }
+ } while ( result == VULKAN_HPP_NAMESPACE::Result::eIncomplete );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) &&
+ ( presentationTimingCount < presentationTimings.size() ) )
+ {
+ presentationTimings.resize( presentationTimingCount );
+ }
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::SwapchainKHR::getPastPresentationTimingGOOGLE" );
+ }
+ return presentationTimings;
+ }
+
+ //=== VK_EXT_discard_rectangles ===
+
+ VULKAN_HPP_INLINE void CommandBuffer::setDiscardRectangleEXT(
+ uint32_t firstDiscardRectangle,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::Rect2D> const & discardRectangles ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkCmdSetDiscardRectangleEXT &&
+ "Function <vkCmdSetDiscardRectangleEXT> needs extension <VK_EXT_discard_rectangles> enabled!" );
+
+ getDispatcher()->vkCmdSetDiscardRectangleEXT( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ firstDiscardRectangle,
+ discardRectangles.size(),
+ reinterpret_cast<const VkRect2D *>( discardRectangles.data() ) );
+ }
+
+ //=== VK_EXT_hdr_metadata ===
+
+ VULKAN_HPP_INLINE void
+ Device::setHdrMetadataEXT( ArrayProxy<const VULKAN_HPP_NAMESPACE::SwapchainKHR> const & swapchains,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::HdrMetadataEXT> const & metadata ) const
+ VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkSetHdrMetadataEXT &&
+ "Function <vkSetHdrMetadataEXT> needs extension <VK_EXT_hdr_metadata> enabled!" );
+
+# ifdef VULKAN_HPP_NO_EXCEPTIONS
+ VULKAN_HPP_ASSERT( swapchains.size() == metadata.size() );
+# else
+ if ( swapchains.size() != metadata.size() )
+ {
+ throw LogicError( VULKAN_HPP_NAMESPACE_STRING
+ "::Device::setHdrMetadataEXT: swapchains.size() != metadata.size()" );
+ }
+# endif /*VULKAN_HPP_NO_EXCEPTIONS*/
+
+ getDispatcher()->vkSetHdrMetadataEXT( static_cast<VkDevice>( m_device ),
+ swapchains.size(),
+ reinterpret_cast<const VkSwapchainKHR *>( swapchains.data() ),
+ reinterpret_cast<const VkHdrMetadataEXT *>( metadata.data() ) );
+ }
+
+ //=== VK_KHR_create_renderpass2 ===
+
+ VULKAN_HPP_INLINE void
+ CommandBuffer::beginRenderPass2KHR( const RenderPassBeginInfo & renderPassBegin,
+ const SubpassBeginInfo & subpassBeginInfo ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkCmdBeginRenderPass2KHR &&
+ "Function <vkCmdBeginRenderPass2KHR> needs extension <VK_KHR_create_renderpass2> enabled!" );
+
+ getDispatcher()->vkCmdBeginRenderPass2KHR( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ reinterpret_cast<const VkRenderPassBeginInfo *>( &renderPassBegin ),
+ reinterpret_cast<const VkSubpassBeginInfo *>( &subpassBeginInfo ) );
+ }
+
+ VULKAN_HPP_INLINE void
+ CommandBuffer::nextSubpass2KHR( const SubpassBeginInfo & subpassBeginInfo,
+ const SubpassEndInfo & subpassEndInfo ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkCmdNextSubpass2KHR &&
+ "Function <vkCmdNextSubpass2KHR> needs extension <VK_KHR_create_renderpass2> enabled!" );
+
+ getDispatcher()->vkCmdNextSubpass2KHR( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ reinterpret_cast<const VkSubpassBeginInfo *>( &subpassBeginInfo ),
+ reinterpret_cast<const VkSubpassEndInfo *>( &subpassEndInfo ) );
+ }
+
+ VULKAN_HPP_INLINE void
+ CommandBuffer::endRenderPass2KHR( const SubpassEndInfo & subpassEndInfo ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkCmdEndRenderPass2KHR &&
+ "Function <vkCmdEndRenderPass2KHR> needs extension <VK_KHR_create_renderpass2> enabled!" );
+
+ getDispatcher()->vkCmdEndRenderPass2KHR( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ reinterpret_cast<const VkSubpassEndInfo *>( &subpassEndInfo ) );
+ }
+
+ //=== VK_KHR_shared_presentable_image ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::Result SwapchainKHR::getStatus() const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetSwapchainStatusKHR &&
+ "Function <vkGetSwapchainStatusKHR> needs extension <VK_KHR_shared_presentable_image> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetSwapchainStatusKHR(
+ static_cast<VkDevice>( m_device ), static_cast<VkSwapchainKHR>( m_swapchainKHR ) ) );
+ if ( ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess ) &&
+ ( result != VULKAN_HPP_NAMESPACE::Result::eSuboptimalKHR ) )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::SwapchainKHR::getStatus" );
+ }
+ return result;
+ }
+
+ //=== VK_KHR_external_fence_capabilities ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::ExternalFenceProperties
+ PhysicalDevice::getExternalFencePropertiesKHR( const PhysicalDeviceExternalFenceInfo & externalFenceInfo ) const
+ VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetPhysicalDeviceExternalFencePropertiesKHR &&
+ "Function <vkGetPhysicalDeviceExternalFencePropertiesKHR> needs extension <VK_KHR_external_fence_capabilities> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::ExternalFenceProperties externalFenceProperties;
+ getDispatcher()->vkGetPhysicalDeviceExternalFencePropertiesKHR(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ reinterpret_cast<const VkPhysicalDeviceExternalFenceInfo *>( &externalFenceInfo ),
+ reinterpret_cast<VkExternalFenceProperties *>( &externalFenceProperties ) );
+ return externalFenceProperties;
+ }
+
+# if defined( VK_USE_PLATFORM_WIN32_KHR )
+ //=== VK_KHR_external_fence_win32 ===
+
+ VULKAN_HPP_INLINE void
+ Device::importFenceWin32HandleKHR( const ImportFenceWin32HandleInfoKHR & importFenceWin32HandleInfo ) const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkImportFenceWin32HandleKHR &&
+ "Function <vkImportFenceWin32HandleKHR> needs extension <VK_KHR_external_fence_win32> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkImportFenceWin32HandleKHR(
+ static_cast<VkDevice>( m_device ),
+ reinterpret_cast<const VkImportFenceWin32HandleInfoKHR *>( &importFenceWin32HandleInfo ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Device::importFenceWin32HandleKHR" );
+ }
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE HANDLE
+ Device::getFenceWin32HandleKHR( const FenceGetWin32HandleInfoKHR & getWin32HandleInfo ) const
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkGetFenceWin32HandleKHR &&
+ "Function <vkGetFenceWin32HandleKHR> needs extension <VK_KHR_external_fence_win32> enabled!" );
+
+ HANDLE handle;
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetFenceWin32HandleKHR(
+ static_cast<VkDevice>( m_device ),
+ reinterpret_cast<const VkFenceGetWin32HandleInfoKHR *>( &getWin32HandleInfo ),
+ &handle ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Device::getFenceWin32HandleKHR" );
+ }
+ return handle;
+ }
+# endif /*VK_USE_PLATFORM_WIN32_KHR*/
+
+ //=== VK_KHR_external_fence_fd ===
+
+ VULKAN_HPP_INLINE void Device::importFenceFdKHR( const ImportFenceFdInfoKHR & importFenceFdInfo ) const
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkImportFenceFdKHR &&
+ "Function <vkImportFenceFdKHR> needs extension <VK_KHR_external_fence_fd> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkImportFenceFdKHR(
+ static_cast<VkDevice>( m_device ), reinterpret_cast<const VkImportFenceFdInfoKHR *>( &importFenceFdInfo ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Device::importFenceFdKHR" );
+ }
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE int Device::getFenceFdKHR( const FenceGetFdInfoKHR & getFdInfo ) const
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkGetFenceFdKHR &&
+ "Function <vkGetFenceFdKHR> needs extension <VK_KHR_external_fence_fd> enabled!" );
+
+ int fd;
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetFenceFdKHR(
+ static_cast<VkDevice>( m_device ), reinterpret_cast<const VkFenceGetFdInfoKHR *>( &getFdInfo ), &fd ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Device::getFenceFdKHR" );
+ }
+ return fd;
+ }
+
+ //=== VK_KHR_performance_query ===
+
+ VULKAN_HPP_NODISCARD
+ VULKAN_HPP_INLINE std::pair<std::vector<PerformanceCounterKHR>, std::vector<PerformanceCounterDescriptionKHR>>
+ PhysicalDevice::enumerateQueueFamilyPerformanceQueryCountersKHR( uint32_t queueFamilyIndex ) const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR &&
+ "Function <vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR> needs extension <VK_KHR_performance_query> enabled!" );
+
+ std::pair<std::vector<PerformanceCounterKHR>, std::vector<PerformanceCounterDescriptionKHR>> data;
+ std::vector<PerformanceCounterKHR> & counters = data.first;
+ std::vector<PerformanceCounterDescriptionKHR> & counterDescriptions = data.second;
+ uint32_t counterCount;
+ VULKAN_HPP_NAMESPACE::Result result;
+ do
+ {
+ result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ), queueFamilyIndex, &counterCount, nullptr, nullptr ) );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && counterCount )
+ {
+ counters.resize( counterCount );
+ counterDescriptions.resize( counterCount );
+ result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ queueFamilyIndex,
+ &counterCount,
+ reinterpret_cast<VkPerformanceCounterKHR *>( counters.data() ),
+ reinterpret_cast<VkPerformanceCounterDescriptionKHR *>( counterDescriptions.data() ) ) );
+ VULKAN_HPP_ASSERT( counterCount <= counters.size() );
+ }
+ } while ( result == VULKAN_HPP_NAMESPACE::Result::eIncomplete );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && ( counterCount < counters.size() ) )
+ {
+ counters.resize( counterCount );
+ counterDescriptions.resize( counterCount );
+ }
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException(
+ result, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::enumerateQueueFamilyPerformanceQueryCountersKHR" );
+ }
+ return data;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE uint32_t PhysicalDevice::getQueueFamilyPerformanceQueryPassesKHR(
+ const QueryPoolPerformanceCreateInfoKHR & performanceQueryCreateInfo ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR &&
+ "Function <vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR> needs extension <VK_KHR_performance_query> enabled!" );
+
+ uint32_t numPasses;
+ getDispatcher()->vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ reinterpret_cast<const VkQueryPoolPerformanceCreateInfoKHR *>( &performanceQueryCreateInfo ),
+ &numPasses );
+ return numPasses;
+ }
+
+ VULKAN_HPP_INLINE void Device::acquireProfilingLockKHR( const AcquireProfilingLockInfoKHR & info ) const
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkAcquireProfilingLockKHR &&
+ "Function <vkAcquireProfilingLockKHR> needs extension <VK_KHR_performance_query> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkAcquireProfilingLockKHR(
+ static_cast<VkDevice>( m_device ), reinterpret_cast<const VkAcquireProfilingLockInfoKHR *>( &info ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Device::acquireProfilingLockKHR" );
+ }
+ }
+
+ VULKAN_HPP_INLINE void Device::releaseProfilingLockKHR() const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkReleaseProfilingLockKHR &&
+ "Function <vkReleaseProfilingLockKHR> needs extension <VK_KHR_performance_query> enabled!" );
+
+ getDispatcher()->vkReleaseProfilingLockKHR( static_cast<VkDevice>( m_device ) );
+ }
+
+ //=== VK_KHR_get_surface_capabilities2 ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::SurfaceCapabilities2KHR
+ PhysicalDevice::getSurfaceCapabilities2KHR( const PhysicalDeviceSurfaceInfo2KHR & surfaceInfo ) const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetPhysicalDeviceSurfaceCapabilities2KHR &&
+ "Function <vkGetPhysicalDeviceSurfaceCapabilities2KHR> needs extension <VK_KHR_get_surface_capabilities2> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::SurfaceCapabilities2KHR surfaceCapabilities;
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetPhysicalDeviceSurfaceCapabilities2KHR(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ reinterpret_cast<const VkPhysicalDeviceSurfaceInfo2KHR *>( &surfaceInfo ),
+ reinterpret_cast<VkSurfaceCapabilities2KHR *>( &surfaceCapabilities ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getSurfaceCapabilities2KHR" );
+ }
+ return surfaceCapabilities;
+ }
+
+ template <typename X, typename Y, typename... Z>
+ VULKAN_HPP_NODISCARD StructureChain<X, Y, Z...>
+ PhysicalDevice::getSurfaceCapabilities2KHR( const PhysicalDeviceSurfaceInfo2KHR & surfaceInfo ) const
+ {
+ StructureChain<X, Y, Z...> structureChain;
+ VULKAN_HPP_NAMESPACE::SurfaceCapabilities2KHR & surfaceCapabilities =
+ structureChain.template get<VULKAN_HPP_NAMESPACE::SurfaceCapabilities2KHR>();
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetPhysicalDeviceSurfaceCapabilities2KHR(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ reinterpret_cast<const VkPhysicalDeviceSurfaceInfo2KHR *>( &surfaceInfo ),
+ reinterpret_cast<VkSurfaceCapabilities2KHR *>( &surfaceCapabilities ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getSurfaceCapabilities2KHR" );
+ }
+ return structureChain;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<VULKAN_HPP_NAMESPACE::SurfaceFormat2KHR>
+ PhysicalDevice::getSurfaceFormats2KHR( const PhysicalDeviceSurfaceInfo2KHR & surfaceInfo ) const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetPhysicalDeviceSurfaceFormats2KHR &&
+ "Function <vkGetPhysicalDeviceSurfaceFormats2KHR> needs extension <VK_KHR_get_surface_capabilities2> enabled!" );
+
+ std::vector<VULKAN_HPP_NAMESPACE::SurfaceFormat2KHR> surfaceFormats;
+ uint32_t surfaceFormatCount;
+ VULKAN_HPP_NAMESPACE::Result result;
+ do
+ {
+ result = static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetPhysicalDeviceSurfaceFormats2KHR(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ reinterpret_cast<const VkPhysicalDeviceSurfaceInfo2KHR *>( &surfaceInfo ),
+ &surfaceFormatCount,
+ nullptr ) );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && surfaceFormatCount )
+ {
+ surfaceFormats.resize( surfaceFormatCount );
+ result = static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetPhysicalDeviceSurfaceFormats2KHR(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ reinterpret_cast<const VkPhysicalDeviceSurfaceInfo2KHR *>( &surfaceInfo ),
+ &surfaceFormatCount,
+ reinterpret_cast<VkSurfaceFormat2KHR *>( surfaceFormats.data() ) ) );
+ VULKAN_HPP_ASSERT( surfaceFormatCount <= surfaceFormats.size() );
+ }
+ } while ( result == VULKAN_HPP_NAMESPACE::Result::eIncomplete );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && ( surfaceFormatCount < surfaceFormats.size() ) )
+ {
+ surfaceFormats.resize( surfaceFormatCount );
+ }
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getSurfaceFormats2KHR" );
+ }
+ return surfaceFormats;
+ }
+
+ //=== VK_KHR_get_display_properties2 ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<VULKAN_HPP_NAMESPACE::DisplayProperties2KHR>
+ PhysicalDevice::getDisplayProperties2KHR() const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetPhysicalDeviceDisplayProperties2KHR &&
+ "Function <vkGetPhysicalDeviceDisplayProperties2KHR> needs extension <VK_KHR_get_display_properties2> enabled!" );
+
+ std::vector<VULKAN_HPP_NAMESPACE::DisplayProperties2KHR> properties;
+ uint32_t propertyCount;
+ VULKAN_HPP_NAMESPACE::Result result;
+ do
+ {
+ result = static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetPhysicalDeviceDisplayProperties2KHR(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ), &propertyCount, nullptr ) );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && propertyCount )
+ {
+ properties.resize( propertyCount );
+ result = static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetPhysicalDeviceDisplayProperties2KHR(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ &propertyCount,
+ reinterpret_cast<VkDisplayProperties2KHR *>( properties.data() ) ) );
+ VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
+ }
+ } while ( result == VULKAN_HPP_NAMESPACE::Result::eIncomplete );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && ( propertyCount < properties.size() ) )
+ {
+ properties.resize( propertyCount );
+ }
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getDisplayProperties2KHR" );
+ }
+ return properties;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<VULKAN_HPP_NAMESPACE::DisplayPlaneProperties2KHR>
+ PhysicalDevice::getDisplayPlaneProperties2KHR() const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetPhysicalDeviceDisplayPlaneProperties2KHR &&
+ "Function <vkGetPhysicalDeviceDisplayPlaneProperties2KHR> needs extension <VK_KHR_get_display_properties2> enabled!" );
+
+ std::vector<VULKAN_HPP_NAMESPACE::DisplayPlaneProperties2KHR> properties;
+ uint32_t propertyCount;
+ VULKAN_HPP_NAMESPACE::Result result;
+ do
+ {
+ result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetPhysicalDeviceDisplayPlaneProperties2KHR(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ), &propertyCount, nullptr ) );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && propertyCount )
+ {
+ properties.resize( propertyCount );
+ result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetPhysicalDeviceDisplayPlaneProperties2KHR(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ &propertyCount,
+ reinterpret_cast<VkDisplayPlaneProperties2KHR *>( properties.data() ) ) );
+ VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
+ }
+ } while ( result == VULKAN_HPP_NAMESPACE::Result::eIncomplete );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && ( propertyCount < properties.size() ) )
+ {
+ properties.resize( propertyCount );
+ }
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getDisplayPlaneProperties2KHR" );
+ }
+ return properties;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<VULKAN_HPP_NAMESPACE::DisplayModeProperties2KHR>
+ DisplayKHR::getModeProperties2() const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetDisplayModeProperties2KHR &&
+ "Function <vkGetDisplayModeProperties2KHR> needs extension <VK_KHR_get_display_properties2> enabled!" );
+
+ std::vector<VULKAN_HPP_NAMESPACE::DisplayModeProperties2KHR> properties;
+ uint32_t propertyCount;
+ VULKAN_HPP_NAMESPACE::Result result;
+ do
+ {
+ result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkGetDisplayModeProperties2KHR( static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ static_cast<VkDisplayKHR>( m_displayKHR ),
+ &propertyCount,
+ nullptr ) );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && propertyCount )
+ {
+ properties.resize( propertyCount );
+ result = static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetDisplayModeProperties2KHR(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ static_cast<VkDisplayKHR>( m_displayKHR ),
+ &propertyCount,
+ reinterpret_cast<VkDisplayModeProperties2KHR *>( properties.data() ) ) );
+ VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
+ }
+ } while ( result == VULKAN_HPP_NAMESPACE::Result::eIncomplete );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && ( propertyCount < properties.size() ) )
+ {
+ properties.resize( propertyCount );
+ }
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::DisplayKHR::getModeProperties2" );
+ }
+ return properties;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::DisplayPlaneCapabilities2KHR
+ PhysicalDevice::getDisplayPlaneCapabilities2KHR( const DisplayPlaneInfo2KHR & displayPlaneInfo ) const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetDisplayPlaneCapabilities2KHR &&
+ "Function <vkGetDisplayPlaneCapabilities2KHR> needs extension <VK_KHR_get_display_properties2> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::DisplayPlaneCapabilities2KHR capabilities;
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetDisplayPlaneCapabilities2KHR(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ reinterpret_cast<const VkDisplayPlaneInfo2KHR *>( &displayPlaneInfo ),
+ reinterpret_cast<VkDisplayPlaneCapabilities2KHR *>( &capabilities ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getDisplayPlaneCapabilities2KHR" );
+ }
+ return capabilities;
+ }
+
+ //=== VK_EXT_debug_utils ===
+
+ VULKAN_HPP_INLINE void Device::setDebugUtilsObjectNameEXT( const DebugUtilsObjectNameInfoEXT & nameInfo ) const
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkSetDebugUtilsObjectNameEXT &&
+ "Function <vkSetDebugUtilsObjectNameEXT> needs extension <VK_EXT_debug_utils> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkSetDebugUtilsObjectNameEXT(
+ static_cast<VkDevice>( m_device ), reinterpret_cast<const VkDebugUtilsObjectNameInfoEXT *>( &nameInfo ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Device::setDebugUtilsObjectNameEXT" );
+ }
+ }
+
+ VULKAN_HPP_INLINE void Device::setDebugUtilsObjectTagEXT( const DebugUtilsObjectTagInfoEXT & tagInfo ) const
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkSetDebugUtilsObjectTagEXT &&
+ "Function <vkSetDebugUtilsObjectTagEXT> needs extension <VK_EXT_debug_utils> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkSetDebugUtilsObjectTagEXT(
+ static_cast<VkDevice>( m_device ), reinterpret_cast<const VkDebugUtilsObjectTagInfoEXT *>( &tagInfo ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Device::setDebugUtilsObjectTagEXT" );
+ }
+ }
+
+ VULKAN_HPP_INLINE void
+ Queue::beginDebugUtilsLabelEXT( const DebugUtilsLabelEXT & labelInfo ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkQueueBeginDebugUtilsLabelEXT &&
+ "Function <vkQueueBeginDebugUtilsLabelEXT> needs extension <VK_EXT_debug_utils> enabled!" );
+
+ getDispatcher()->vkQueueBeginDebugUtilsLabelEXT( static_cast<VkQueue>( m_queue ),
+ reinterpret_cast<const VkDebugUtilsLabelEXT *>( &labelInfo ) );
+ }
+
+ VULKAN_HPP_INLINE void Queue::endDebugUtilsLabelEXT() const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkQueueEndDebugUtilsLabelEXT &&
+ "Function <vkQueueEndDebugUtilsLabelEXT> needs extension <VK_EXT_debug_utils> enabled!" );
+
+ getDispatcher()->vkQueueEndDebugUtilsLabelEXT( static_cast<VkQueue>( m_queue ) );
+ }
+
+ VULKAN_HPP_INLINE void
+ Queue::insertDebugUtilsLabelEXT( const DebugUtilsLabelEXT & labelInfo ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkQueueInsertDebugUtilsLabelEXT &&
+ "Function <vkQueueInsertDebugUtilsLabelEXT> needs extension <VK_EXT_debug_utils> enabled!" );
+
+ getDispatcher()->vkQueueInsertDebugUtilsLabelEXT( static_cast<VkQueue>( m_queue ),
+ reinterpret_cast<const VkDebugUtilsLabelEXT *>( &labelInfo ) );
+ }
+
+ VULKAN_HPP_INLINE void
+ CommandBuffer::beginDebugUtilsLabelEXT( const DebugUtilsLabelEXT & labelInfo ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkCmdBeginDebugUtilsLabelEXT &&
+ "Function <vkCmdBeginDebugUtilsLabelEXT> needs extension <VK_EXT_debug_utils> enabled!" );
+
+ getDispatcher()->vkCmdBeginDebugUtilsLabelEXT( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ reinterpret_cast<const VkDebugUtilsLabelEXT *>( &labelInfo ) );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::endDebugUtilsLabelEXT() const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkCmdEndDebugUtilsLabelEXT &&
+ "Function <vkCmdEndDebugUtilsLabelEXT> needs extension <VK_EXT_debug_utils> enabled!" );
+
+ getDispatcher()->vkCmdEndDebugUtilsLabelEXT( static_cast<VkCommandBuffer>( m_commandBuffer ) );
+ }
+
+ VULKAN_HPP_INLINE void
+ CommandBuffer::insertDebugUtilsLabelEXT( const DebugUtilsLabelEXT & labelInfo ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkCmdInsertDebugUtilsLabelEXT &&
+ "Function <vkCmdInsertDebugUtilsLabelEXT> needs extension <VK_EXT_debug_utils> enabled!" );
+
+ getDispatcher()->vkCmdInsertDebugUtilsLabelEXT( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ reinterpret_cast<const VkDebugUtilsLabelEXT *>( &labelInfo ) );
+ }
+
+ VULKAN_HPP_INLINE void Instance::submitDebugUtilsMessageEXT(
+ VULKAN_HPP_NAMESPACE::DebugUtilsMessageSeverityFlagBitsEXT messageSeverity,
+ VULKAN_HPP_NAMESPACE::DebugUtilsMessageTypeFlagsEXT messageTypes,
+ const DebugUtilsMessengerCallbackDataEXT & callbackData ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkSubmitDebugUtilsMessageEXT &&
+ "Function <vkSubmitDebugUtilsMessageEXT> needs extension <VK_EXT_debug_utils> enabled!" );
+
+ getDispatcher()->vkSubmitDebugUtilsMessageEXT(
+ static_cast<VkInstance>( m_instance ),
+ static_cast<VkDebugUtilsMessageSeverityFlagBitsEXT>( messageSeverity ),
+ static_cast<VkDebugUtilsMessageTypeFlagsEXT>( messageTypes ),
+ reinterpret_cast<const VkDebugUtilsMessengerCallbackDataEXT *>( &callbackData ) );
+ }
+
+# if defined( VK_USE_PLATFORM_ANDROID_KHR )
+ //=== VK_ANDROID_external_memory_android_hardware_buffer ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::AndroidHardwareBufferPropertiesANDROID
+ Device::getAndroidHardwareBufferPropertiesANDROID( const struct AHardwareBuffer & buffer ) const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetAndroidHardwareBufferPropertiesANDROID &&
+ "Function <vkGetAndroidHardwareBufferPropertiesANDROID> needs extension <VK_ANDROID_external_memory_android_hardware_buffer> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::AndroidHardwareBufferPropertiesANDROID properties;
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetAndroidHardwareBufferPropertiesANDROID(
+ static_cast<VkDevice>( m_device ),
+ &buffer,
+ reinterpret_cast<VkAndroidHardwareBufferPropertiesANDROID *>( &properties ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result,
+ VULKAN_HPP_NAMESPACE_STRING "::Device::getAndroidHardwareBufferPropertiesANDROID" );
+ }
+ return properties;
+ }
+
+ template <typename X, typename Y, typename... Z>
+ VULKAN_HPP_NODISCARD StructureChain<X, Y, Z...>
+ Device::getAndroidHardwareBufferPropertiesANDROID( const struct AHardwareBuffer & buffer ) const
+ {
+ StructureChain<X, Y, Z...> structureChain;
+ VULKAN_HPP_NAMESPACE::AndroidHardwareBufferPropertiesANDROID & properties =
+ structureChain.template get<VULKAN_HPP_NAMESPACE::AndroidHardwareBufferPropertiesANDROID>();
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetAndroidHardwareBufferPropertiesANDROID(
+ static_cast<VkDevice>( m_device ),
+ &buffer,
+ reinterpret_cast<VkAndroidHardwareBufferPropertiesANDROID *>( &properties ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result,
+ VULKAN_HPP_NAMESPACE_STRING "::Device::getAndroidHardwareBufferPropertiesANDROID" );
+ }
+ return structureChain;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE struct AHardwareBuffer *
+ Device::getMemoryAndroidHardwareBufferANDROID( const MemoryGetAndroidHardwareBufferInfoANDROID & info ) const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetMemoryAndroidHardwareBufferANDROID &&
+ "Function <vkGetMemoryAndroidHardwareBufferANDROID> needs extension <VK_ANDROID_external_memory_android_hardware_buffer> enabled!" );
+
+ struct AHardwareBuffer * buffer;
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetMemoryAndroidHardwareBufferANDROID(
+ static_cast<VkDevice>( m_device ),
+ reinterpret_cast<const VkMemoryGetAndroidHardwareBufferInfoANDROID *>( &info ),
+ &buffer ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Device::getMemoryAndroidHardwareBufferANDROID" );
+ }
+ return buffer;
+ }
+# endif /*VK_USE_PLATFORM_ANDROID_KHR*/
+
+ //=== VK_EXT_sample_locations ===
+
+ VULKAN_HPP_INLINE void CommandBuffer::setSampleLocationsEXT(
+ const SampleLocationsInfoEXT & sampleLocationsInfo ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkCmdSetSampleLocationsEXT &&
+ "Function <vkCmdSetSampleLocationsEXT> needs extension <VK_EXT_sample_locations> enabled!" );
+
+ getDispatcher()->vkCmdSetSampleLocationsEXT(
+ static_cast<VkCommandBuffer>( m_commandBuffer ),
+ reinterpret_cast<const VkSampleLocationsInfoEXT *>( &sampleLocationsInfo ) );
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::MultisamplePropertiesEXT
+ PhysicalDevice::getMultisamplePropertiesEXT( VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples ) const
+ VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetPhysicalDeviceMultisamplePropertiesEXT &&
+ "Function <vkGetPhysicalDeviceMultisamplePropertiesEXT> needs extension <VK_EXT_sample_locations> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::MultisamplePropertiesEXT multisampleProperties;
+ getDispatcher()->vkGetPhysicalDeviceMultisamplePropertiesEXT(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ static_cast<VkSampleCountFlagBits>( samples ),
+ reinterpret_cast<VkMultisamplePropertiesEXT *>( &multisampleProperties ) );
+ return multisampleProperties;
+ }
+
+ //=== VK_KHR_get_memory_requirements2 ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::MemoryRequirements2
+ Device::getImageMemoryRequirements2KHR( const ImageMemoryRequirementsInfo2 & info ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetImageMemoryRequirements2KHR &&
+ "Function <vkGetImageMemoryRequirements2KHR> needs extension <VK_KHR_get_memory_requirements2> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::MemoryRequirements2 memoryRequirements;
+ getDispatcher()->vkGetImageMemoryRequirements2KHR(
+ static_cast<VkDevice>( m_device ),
+ reinterpret_cast<const VkImageMemoryRequirementsInfo2 *>( &info ),
+ reinterpret_cast<VkMemoryRequirements2 *>( &memoryRequirements ) );
+ return memoryRequirements;
+ }
+
+ template <typename X, typename Y, typename... Z>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE StructureChain<X, Y, Z...>
+ Device::getImageMemoryRequirements2KHR( const ImageMemoryRequirementsInfo2 & info ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetImageMemoryRequirements2KHR &&
+ "Function <vkGetImageMemoryRequirements2KHR> needs extension <VK_KHR_get_memory_requirements2> enabled!" );
+
+ StructureChain<X, Y, Z...> structureChain;
+ VULKAN_HPP_NAMESPACE::MemoryRequirements2 & memoryRequirements =
+ structureChain.template get<VULKAN_HPP_NAMESPACE::MemoryRequirements2>();
+ getDispatcher()->vkGetImageMemoryRequirements2KHR(
+ static_cast<VkDevice>( m_device ),
+ reinterpret_cast<const VkImageMemoryRequirementsInfo2 *>( &info ),
+ reinterpret_cast<VkMemoryRequirements2 *>( &memoryRequirements ) );
+ return structureChain;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::MemoryRequirements2
+ Device::getBufferMemoryRequirements2KHR( const BufferMemoryRequirementsInfo2 & info ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetBufferMemoryRequirements2KHR &&
+ "Function <vkGetBufferMemoryRequirements2KHR> needs extension <VK_KHR_get_memory_requirements2> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::MemoryRequirements2 memoryRequirements;
+ getDispatcher()->vkGetBufferMemoryRequirements2KHR(
+ static_cast<VkDevice>( m_device ),
+ reinterpret_cast<const VkBufferMemoryRequirementsInfo2 *>( &info ),
+ reinterpret_cast<VkMemoryRequirements2 *>( &memoryRequirements ) );
+ return memoryRequirements;
+ }
+
+ template <typename X, typename Y, typename... Z>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE StructureChain<X, Y, Z...>
+ Device::getBufferMemoryRequirements2KHR( const BufferMemoryRequirementsInfo2 & info ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetBufferMemoryRequirements2KHR &&
+ "Function <vkGetBufferMemoryRequirements2KHR> needs extension <VK_KHR_get_memory_requirements2> enabled!" );
+
+ StructureChain<X, Y, Z...> structureChain;
+ VULKAN_HPP_NAMESPACE::MemoryRequirements2 & memoryRequirements =
+ structureChain.template get<VULKAN_HPP_NAMESPACE::MemoryRequirements2>();
+ getDispatcher()->vkGetBufferMemoryRequirements2KHR(
+ static_cast<VkDevice>( m_device ),
+ reinterpret_cast<const VkBufferMemoryRequirementsInfo2 *>( &info ),
+ reinterpret_cast<VkMemoryRequirements2 *>( &memoryRequirements ) );
+ return structureChain;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<VULKAN_HPP_NAMESPACE::SparseImageMemoryRequirements2>
+ Device::getImageSparseMemoryRequirements2KHR( const ImageSparseMemoryRequirementsInfo2 & info ) const
+ VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetImageSparseMemoryRequirements2KHR &&
+ "Function <vkGetImageSparseMemoryRequirements2KHR> needs extension <VK_KHR_get_memory_requirements2> enabled!" );
+
+ uint32_t sparseMemoryRequirementCount;
+ getDispatcher()->vkGetImageSparseMemoryRequirements2KHR(
+ static_cast<VkDevice>( m_device ),
+ reinterpret_cast<const VkImageSparseMemoryRequirementsInfo2 *>( &info ),
+ &sparseMemoryRequirementCount,
+ nullptr );
+ std::vector<VULKAN_HPP_NAMESPACE::SparseImageMemoryRequirements2> sparseMemoryRequirements(
+ sparseMemoryRequirementCount );
+ getDispatcher()->vkGetImageSparseMemoryRequirements2KHR(
+ static_cast<VkDevice>( m_device ),
+ reinterpret_cast<const VkImageSparseMemoryRequirementsInfo2 *>( &info ),
+ &sparseMemoryRequirementCount,
+ reinterpret_cast<VkSparseImageMemoryRequirements2 *>( sparseMemoryRequirements.data() ) );
+ VULKAN_HPP_ASSERT( sparseMemoryRequirementCount <= sparseMemoryRequirements.size() );
+ return sparseMemoryRequirements;
+ }
+
+ //=== VK_KHR_acceleration_structure ===
+
+ VULKAN_HPP_INLINE void CommandBuffer::buildAccelerationStructuresKHR(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::AccelerationStructureBuildGeometryInfoKHR> const & infos,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::AccelerationStructureBuildRangeInfoKHR * const> const & pBuildRangeInfos )
+ const VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkCmdBuildAccelerationStructuresKHR &&
+ "Function <vkCmdBuildAccelerationStructuresKHR> needs extension <VK_KHR_acceleration_structure> enabled!" );
+
+# ifdef VULKAN_HPP_NO_EXCEPTIONS
+ VULKAN_HPP_ASSERT( infos.size() == pBuildRangeInfos.size() );
+# else
+ if ( infos.size() != pBuildRangeInfos.size() )
+ {
+ throw LogicError( VULKAN_HPP_NAMESPACE_STRING
+ "::CommandBuffer::buildAccelerationStructuresKHR: infos.size() != pBuildRangeInfos.size()" );
+ }
+# endif /*VULKAN_HPP_NO_EXCEPTIONS*/
+
+ getDispatcher()->vkCmdBuildAccelerationStructuresKHR(
+ static_cast<VkCommandBuffer>( m_commandBuffer ),
+ infos.size(),
+ reinterpret_cast<const VkAccelerationStructureBuildGeometryInfoKHR *>( infos.data() ),
+ reinterpret_cast<const VkAccelerationStructureBuildRangeInfoKHR * const *>( pBuildRangeInfos.data() ) );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::buildAccelerationStructuresIndirectKHR(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::AccelerationStructureBuildGeometryInfoKHR> const & infos,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::DeviceAddress> const & indirectDeviceAddresses,
+ ArrayProxy<const uint32_t> const & indirectStrides,
+ ArrayProxy<const uint32_t * const> const & pMaxPrimitiveCounts ) const VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkCmdBuildAccelerationStructuresIndirectKHR &&
+ "Function <vkCmdBuildAccelerationStructuresIndirectKHR> needs extension <VK_KHR_acceleration_structure> enabled!" );
+
+# ifdef VULKAN_HPP_NO_EXCEPTIONS
+ VULKAN_HPP_ASSERT( infos.size() == indirectDeviceAddresses.size() );
+ VULKAN_HPP_ASSERT( infos.size() == indirectStrides.size() );
+ VULKAN_HPP_ASSERT( infos.size() == pMaxPrimitiveCounts.size() );
+# else
+ if ( infos.size() != indirectDeviceAddresses.size() )
+ {
+ throw LogicError(
+ VULKAN_HPP_NAMESPACE_STRING
+ "::CommandBuffer::buildAccelerationStructuresIndirectKHR: infos.size() != indirectDeviceAddresses.size()" );
+ }
+ if ( infos.size() != indirectStrides.size() )
+ {
+ throw LogicError(
+ VULKAN_HPP_NAMESPACE_STRING
+ "::CommandBuffer::buildAccelerationStructuresIndirectKHR: infos.size() != indirectStrides.size()" );
+ }
+ if ( infos.size() != pMaxPrimitiveCounts.size() )
+ {
+ throw LogicError(
+ VULKAN_HPP_NAMESPACE_STRING
+ "::CommandBuffer::buildAccelerationStructuresIndirectKHR: infos.size() != pMaxPrimitiveCounts.size()" );
+ }
+# endif /*VULKAN_HPP_NO_EXCEPTIONS*/
+
+ getDispatcher()->vkCmdBuildAccelerationStructuresIndirectKHR(
+ static_cast<VkCommandBuffer>( m_commandBuffer ),
+ infos.size(),
+ reinterpret_cast<const VkAccelerationStructureBuildGeometryInfoKHR *>( infos.data() ),
+ reinterpret_cast<const VkDeviceAddress *>( indirectDeviceAddresses.data() ),
+ indirectStrides.data(),
+ pMaxPrimitiveCounts.data() );
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::Result Device::buildAccelerationStructuresKHR(
+ VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::AccelerationStructureBuildGeometryInfoKHR> const & infos,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::AccelerationStructureBuildRangeInfoKHR * const> const & pBuildRangeInfos )
+ const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkBuildAccelerationStructuresKHR &&
+ "Function <vkBuildAccelerationStructuresKHR> needs extension <VK_KHR_acceleration_structure> enabled!" );
+ if ( infos.size() != pBuildRangeInfos.size() )
+ {
+ throw LogicError( VULKAN_HPP_NAMESPACE_STRING
+ "::Device::buildAccelerationStructuresKHR: infos.size() != pBuildRangeInfos.size()" );
+ }
+
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkBuildAccelerationStructuresKHR(
+ static_cast<VkDevice>( m_device ),
+ static_cast<VkDeferredOperationKHR>( deferredOperation ),
+ infos.size(),
+ reinterpret_cast<const VkAccelerationStructureBuildGeometryInfoKHR *>( infos.data() ),
+ reinterpret_cast<const VkAccelerationStructureBuildRangeInfoKHR * const *>( pBuildRangeInfos.data() ) ) );
+ if ( ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess ) &&
+ ( result != VULKAN_HPP_NAMESPACE::Result::eOperationDeferredKHR ) &&
+ ( result != VULKAN_HPP_NAMESPACE::Result::eOperationNotDeferredKHR ) )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Device::buildAccelerationStructuresKHR" );
+ }
+ return result;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::Result
+ Device::copyAccelerationStructureKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation,
+ const CopyAccelerationStructureInfoKHR & info ) const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkCopyAccelerationStructureKHR &&
+ "Function <vkCopyAccelerationStructureKHR> needs extension <VK_KHR_acceleration_structure> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkCopyAccelerationStructureKHR(
+ static_cast<VkDevice>( m_device ),
+ static_cast<VkDeferredOperationKHR>( deferredOperation ),
+ reinterpret_cast<const VkCopyAccelerationStructureInfoKHR *>( &info ) ) );
+ if ( ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess ) &&
+ ( result != VULKAN_HPP_NAMESPACE::Result::eOperationDeferredKHR ) &&
+ ( result != VULKAN_HPP_NAMESPACE::Result::eOperationNotDeferredKHR ) )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Device::copyAccelerationStructureKHR" );
+ }
+ return result;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::Result
+ Device::copyAccelerationStructureToMemoryKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation,
+ const CopyAccelerationStructureToMemoryInfoKHR & info ) const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkCopyAccelerationStructureToMemoryKHR &&
+ "Function <vkCopyAccelerationStructureToMemoryKHR> needs extension <VK_KHR_acceleration_structure> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkCopyAccelerationStructureToMemoryKHR(
+ static_cast<VkDevice>( m_device ),
+ static_cast<VkDeferredOperationKHR>( deferredOperation ),
+ reinterpret_cast<const VkCopyAccelerationStructureToMemoryInfoKHR *>( &info ) ) );
+ if ( ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess ) &&
+ ( result != VULKAN_HPP_NAMESPACE::Result::eOperationDeferredKHR ) &&
+ ( result != VULKAN_HPP_NAMESPACE::Result::eOperationNotDeferredKHR ) )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Device::copyAccelerationStructureToMemoryKHR" );
+ }
+ return result;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::Result
+ Device::copyMemoryToAccelerationStructureKHR( VULKAN_HPP_NAMESPACE::DeferredOperationKHR deferredOperation,
+ const CopyMemoryToAccelerationStructureInfoKHR & info ) const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkCopyMemoryToAccelerationStructureKHR &&
+ "Function <vkCopyMemoryToAccelerationStructureKHR> needs extension <VK_KHR_acceleration_structure> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkCopyMemoryToAccelerationStructureKHR(
+ static_cast<VkDevice>( m_device ),
+ static_cast<VkDeferredOperationKHR>( deferredOperation ),
+ reinterpret_cast<const VkCopyMemoryToAccelerationStructureInfoKHR *>( &info ) ) );
+ if ( ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess ) &&
+ ( result != VULKAN_HPP_NAMESPACE::Result::eOperationDeferredKHR ) &&
+ ( result != VULKAN_HPP_NAMESPACE::Result::eOperationNotDeferredKHR ) )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Device::copyMemoryToAccelerationStructureKHR" );
+ }
+ return result;
+ }
+
+ template <typename T>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<T> Device::writeAccelerationStructuresPropertiesKHR(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::AccelerationStructureKHR> const & accelerationStructures,
+ VULKAN_HPP_NAMESPACE::QueryType queryType,
+ size_t dataSize,
+ size_t stride ) const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkWriteAccelerationStructuresPropertiesKHR &&
+ "Function <vkWriteAccelerationStructuresPropertiesKHR> needs extension <VK_KHR_acceleration_structure> enabled!" );
+
+ VULKAN_HPP_ASSERT( dataSize % sizeof( T ) == 0 );
+ std::vector<T> data( dataSize / sizeof( T ) );
+ Result result = static_cast<Result>( getDispatcher()->vkWriteAccelerationStructuresPropertiesKHR(
+ static_cast<VkDevice>( m_device ),
+ accelerationStructures.size(),
+ reinterpret_cast<const VkAccelerationStructureKHR *>( accelerationStructures.data() ),
+ static_cast<VkQueryType>( queryType ),
+ data.size() * sizeof( T ),
+ reinterpret_cast<void *>( data.data() ),
+ stride ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result,
+ VULKAN_HPP_NAMESPACE_STRING "::Device::writeAccelerationStructuresPropertiesKHR" );
+ }
+ return data;
+ }
+
+ template <typename T>
+ VULKAN_HPP_NODISCARD T Device::writeAccelerationStructuresPropertyKHR(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::AccelerationStructureKHR> const & accelerationStructures,
+ VULKAN_HPP_NAMESPACE::QueryType queryType,
+ size_t stride ) const
+ {
+ T data;
+ Result result = static_cast<Result>( getDispatcher()->vkWriteAccelerationStructuresPropertiesKHR(
+ static_cast<VkDevice>( m_device ),
+ accelerationStructures.size(),
+ reinterpret_cast<const VkAccelerationStructureKHR *>( accelerationStructures.data() ),
+ static_cast<VkQueryType>( queryType ),
+ sizeof( T ),
+ reinterpret_cast<void *>( &data ),
+ stride ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Device::writeAccelerationStructuresPropertyKHR" );
+ }
+ return data;
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::copyAccelerationStructureKHR(
+ const CopyAccelerationStructureInfoKHR & info ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkCmdCopyAccelerationStructureKHR &&
+ "Function <vkCmdCopyAccelerationStructureKHR> needs extension <VK_KHR_acceleration_structure> enabled!" );
+
+ getDispatcher()->vkCmdCopyAccelerationStructureKHR(
+ static_cast<VkCommandBuffer>( m_commandBuffer ),
+ reinterpret_cast<const VkCopyAccelerationStructureInfoKHR *>( &info ) );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::copyAccelerationStructureToMemoryKHR(
+ const CopyAccelerationStructureToMemoryInfoKHR & info ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkCmdCopyAccelerationStructureToMemoryKHR &&
+ "Function <vkCmdCopyAccelerationStructureToMemoryKHR> needs extension <VK_KHR_acceleration_structure> enabled!" );
+
+ getDispatcher()->vkCmdCopyAccelerationStructureToMemoryKHR(
+ static_cast<VkCommandBuffer>( m_commandBuffer ),
+ reinterpret_cast<const VkCopyAccelerationStructureToMemoryInfoKHR *>( &info ) );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::copyMemoryToAccelerationStructureKHR(
+ const CopyMemoryToAccelerationStructureInfoKHR & info ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkCmdCopyMemoryToAccelerationStructureKHR &&
+ "Function <vkCmdCopyMemoryToAccelerationStructureKHR> needs extension <VK_KHR_acceleration_structure> enabled!" );
+
+ getDispatcher()->vkCmdCopyMemoryToAccelerationStructureKHR(
+ static_cast<VkCommandBuffer>( m_commandBuffer ),
+ reinterpret_cast<const VkCopyMemoryToAccelerationStructureInfoKHR *>( &info ) );
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::DeviceAddress
+ Device::getAccelerationStructureAddressKHR( const AccelerationStructureDeviceAddressInfoKHR & info ) const
+ VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetAccelerationStructureDeviceAddressKHR &&
+ "Function <vkGetAccelerationStructureDeviceAddressKHR> needs extension <VK_KHR_acceleration_structure> enabled!" );
+
+ return static_cast<VULKAN_HPP_NAMESPACE::DeviceAddress>(
+ getDispatcher()->vkGetAccelerationStructureDeviceAddressKHR(
+ static_cast<VkDevice>( m_device ),
+ reinterpret_cast<const VkAccelerationStructureDeviceAddressInfoKHR *>( &info ) ) );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::writeAccelerationStructuresPropertiesKHR(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::AccelerationStructureKHR> const & accelerationStructures,
+ VULKAN_HPP_NAMESPACE::QueryType queryType,
+ VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ uint32_t firstQuery ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkCmdWriteAccelerationStructuresPropertiesKHR &&
+ "Function <vkCmdWriteAccelerationStructuresPropertiesKHR> needs extension <VK_KHR_acceleration_structure> enabled!" );
+
+ getDispatcher()->vkCmdWriteAccelerationStructuresPropertiesKHR(
+ static_cast<VkCommandBuffer>( m_commandBuffer ),
+ accelerationStructures.size(),
+ reinterpret_cast<const VkAccelerationStructureKHR *>( accelerationStructures.data() ),
+ static_cast<VkQueryType>( queryType ),
+ static_cast<VkQueryPool>( queryPool ),
+ firstQuery );
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::AccelerationStructureCompatibilityKHR
+ Device::getAccelerationStructureCompatibilityKHR( const AccelerationStructureVersionInfoKHR & versionInfo ) const
+ VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetDeviceAccelerationStructureCompatibilityKHR &&
+ "Function <vkGetDeviceAccelerationStructureCompatibilityKHR> needs extension <VK_KHR_acceleration_structure> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::AccelerationStructureCompatibilityKHR compatibility;
+ getDispatcher()->vkGetDeviceAccelerationStructureCompatibilityKHR(
+ static_cast<VkDevice>( m_device ),
+ reinterpret_cast<const VkAccelerationStructureVersionInfoKHR *>( &versionInfo ),
+ reinterpret_cast<VkAccelerationStructureCompatibilityKHR *>( &compatibility ) );
+ return compatibility;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::AccelerationStructureBuildSizesInfoKHR
+ Device::getAccelerationStructureBuildSizesKHR( VULKAN_HPP_NAMESPACE::AccelerationStructureBuildTypeKHR buildType,
+ const AccelerationStructureBuildGeometryInfoKHR & buildInfo,
+ ArrayProxy<const uint32_t> const & maxPrimitiveCounts ) const
+ VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetAccelerationStructureBuildSizesKHR &&
+ "Function <vkGetAccelerationStructureBuildSizesKHR> needs extension <VK_KHR_acceleration_structure> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::AccelerationStructureBuildSizesInfoKHR sizeInfo;
+ getDispatcher()->vkGetAccelerationStructureBuildSizesKHR(
+ static_cast<VkDevice>( m_device ),
+ static_cast<VkAccelerationStructureBuildTypeKHR>( buildType ),
+ reinterpret_cast<const VkAccelerationStructureBuildGeometryInfoKHR *>( &buildInfo ),
+ maxPrimitiveCounts.data(),
+ reinterpret_cast<VkAccelerationStructureBuildSizesInfoKHR *>( &sizeInfo ) );
+ return sizeInfo;
+ }
+
+ //=== VK_KHR_sampler_ycbcr_conversion ===
+
+ VULKAN_HPP_INLINE void Device::destroySamplerYcbcrConversionKHR(
+ VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion ycbcrConversion,
+ Optional<const AllocationCallbacks> allocator ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkDestroySamplerYcbcrConversionKHR &&
+ "Function <vkDestroySamplerYcbcrConversionKHR> needs extension <VK_KHR_sampler_ycbcr_conversion> enabled!" );
+
+ getDispatcher()->vkDestroySamplerYcbcrConversionKHR(
+ static_cast<VkDevice>( m_device ),
+ static_cast<VkSamplerYcbcrConversion>( ycbcrConversion ),
+ reinterpret_cast<const VkAllocationCallbacks *>(
+ static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
+ }
+
+ //=== VK_KHR_bind_memory2 ===
+
+ VULKAN_HPP_INLINE void Device::bindBufferMemory2KHR(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::BindBufferMemoryInfo> const & bindInfos ) const
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkBindBufferMemory2KHR &&
+ "Function <vkBindBufferMemory2KHR> needs extension <VK_KHR_bind_memory2> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkBindBufferMemory2KHR(
+ static_cast<VkDevice>( m_device ),
+ bindInfos.size(),
+ reinterpret_cast<const VkBindBufferMemoryInfo *>( bindInfos.data() ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Device::bindBufferMemory2KHR" );
+ }
+ }
+
+ VULKAN_HPP_INLINE void
+ Device::bindImageMemory2KHR( ArrayProxy<const VULKAN_HPP_NAMESPACE::BindImageMemoryInfo> const & bindInfos ) const
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkBindImageMemory2KHR &&
+ "Function <vkBindImageMemory2KHR> needs extension <VK_KHR_bind_memory2> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkBindImageMemory2KHR( static_cast<VkDevice>( m_device ),
+ bindInfos.size(),
+ reinterpret_cast<const VkBindImageMemoryInfo *>( bindInfos.data() ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Device::bindImageMemory2KHR" );
+ }
+ }
+
+ //=== VK_EXT_image_drm_format_modifier ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::ImageDrmFormatModifierPropertiesEXT
+ Image::getDrmFormatModifierPropertiesEXT() const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetImageDrmFormatModifierPropertiesEXT &&
+ "Function <vkGetImageDrmFormatModifierPropertiesEXT> needs extension <VK_EXT_image_drm_format_modifier> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::ImageDrmFormatModifierPropertiesEXT properties;
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetImageDrmFormatModifierPropertiesEXT(
+ static_cast<VkDevice>( m_device ),
+ static_cast<VkImage>( m_image ),
+ reinterpret_cast<VkImageDrmFormatModifierPropertiesEXT *>( &properties ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Image::getDrmFormatModifierPropertiesEXT" );
+ }
+ return properties;
+ }
+
+ //=== VK_EXT_validation_cache ===
+
+ VULKAN_HPP_INLINE void
+ ValidationCacheEXT::merge( ArrayProxy<const VULKAN_HPP_NAMESPACE::ValidationCacheEXT> const & srcCaches ) const
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkMergeValidationCachesEXT &&
+ "Function <vkMergeValidationCachesEXT> needs extension <VK_EXT_validation_cache> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkMergeValidationCachesEXT(
+ static_cast<VkDevice>( m_device ),
+ static_cast<VkValidationCacheEXT>( m_validationCacheEXT ),
+ srcCaches.size(),
+ reinterpret_cast<const VkValidationCacheEXT *>( srcCaches.data() ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::ValidationCacheEXT::merge" );
+ }
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<uint8_t> ValidationCacheEXT::getData() const
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkGetValidationCacheDataEXT &&
+ "Function <vkGetValidationCacheDataEXT> needs extension <VK_EXT_validation_cache> enabled!" );
+
+ std::vector<uint8_t> data;
+ size_t dataSize;
+ VULKAN_HPP_NAMESPACE::Result result;
+ do
+ {
+ result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkGetValidationCacheDataEXT( static_cast<VkDevice>( m_device ),
+ static_cast<VkValidationCacheEXT>( m_validationCacheEXT ),
+ &dataSize,
+ nullptr ) );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && dataSize )
+ {
+ data.resize( dataSize );
+ result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkGetValidationCacheDataEXT( static_cast<VkDevice>( m_device ),
+ static_cast<VkValidationCacheEXT>( m_validationCacheEXT ),
+ &dataSize,
+ reinterpret_cast<void *>( data.data() ) ) );
+ VULKAN_HPP_ASSERT( dataSize <= data.size() );
+ }
+ } while ( result == VULKAN_HPP_NAMESPACE::Result::eIncomplete );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && ( dataSize < data.size() ) )
+ {
+ data.resize( dataSize );
+ }
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::ValidationCacheEXT::getData" );
+ }
+ return data;
+ }
+
+ //=== VK_NV_shading_rate_image ===
+
+ VULKAN_HPP_INLINE void
+ CommandBuffer::bindShadingRateImageNV( VULKAN_HPP_NAMESPACE::ImageView imageView,
+ VULKAN_HPP_NAMESPACE::ImageLayout imageLayout ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkCmdBindShadingRateImageNV &&
+ "Function <vkCmdBindShadingRateImageNV> needs extension <VK_NV_shading_rate_image> enabled!" );
+
+ getDispatcher()->vkCmdBindShadingRateImageNV( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkImageView>( imageView ),
+ static_cast<VkImageLayout>( imageLayout ) );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::setViewportShadingRatePaletteNV(
+ uint32_t firstViewport, ArrayProxy<const VULKAN_HPP_NAMESPACE::ShadingRatePaletteNV> const & shadingRatePalettes )
+ const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkCmdSetViewportShadingRatePaletteNV &&
+ "Function <vkCmdSetViewportShadingRatePaletteNV> needs extension <VK_NV_shading_rate_image> enabled!" );
+
+ getDispatcher()->vkCmdSetViewportShadingRatePaletteNV(
+ static_cast<VkCommandBuffer>( m_commandBuffer ),
+ firstViewport,
+ shadingRatePalettes.size(),
+ reinterpret_cast<const VkShadingRatePaletteNV *>( shadingRatePalettes.data() ) );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::setCoarseSampleOrderNV(
+ VULKAN_HPP_NAMESPACE::CoarseSampleOrderTypeNV sampleOrderType,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::CoarseSampleOrderCustomNV> const & customSampleOrders ) const
+ VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkCmdSetCoarseSampleOrderNV &&
+ "Function <vkCmdSetCoarseSampleOrderNV> needs extension <VK_NV_shading_rate_image> enabled!" );
+
+ getDispatcher()->vkCmdSetCoarseSampleOrderNV(
+ static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkCoarseSampleOrderTypeNV>( sampleOrderType ),
+ customSampleOrders.size(),
+ reinterpret_cast<const VkCoarseSampleOrderCustomNV *>( customSampleOrders.data() ) );
+ }
+
+ //=== VK_NV_ray_tracing ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::MemoryRequirements2KHR
+ Device::getAccelerationStructureMemoryRequirementsNV(
+ const AccelerationStructureMemoryRequirementsInfoNV & info ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetAccelerationStructureMemoryRequirementsNV &&
+ "Function <vkGetAccelerationStructureMemoryRequirementsNV> needs extension <VK_NV_ray_tracing> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::MemoryRequirements2KHR memoryRequirements;
+ getDispatcher()->vkGetAccelerationStructureMemoryRequirementsNV(
+ static_cast<VkDevice>( m_device ),
+ reinterpret_cast<const VkAccelerationStructureMemoryRequirementsInfoNV *>( &info ),
+ reinterpret_cast<VkMemoryRequirements2KHR *>( &memoryRequirements ) );
+ return memoryRequirements;
+ }
+
+ template <typename X, typename Y, typename... Z>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE StructureChain<X, Y, Z...>
+ Device::getAccelerationStructureMemoryRequirementsNV(
+ const AccelerationStructureMemoryRequirementsInfoNV & info ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetAccelerationStructureMemoryRequirementsNV &&
+ "Function <vkGetAccelerationStructureMemoryRequirementsNV> needs extension <VK_NV_ray_tracing> enabled!" );
+
+ StructureChain<X, Y, Z...> structureChain;
+ VULKAN_HPP_NAMESPACE::MemoryRequirements2KHR & memoryRequirements =
+ structureChain.template get<VULKAN_HPP_NAMESPACE::MemoryRequirements2KHR>();
+ getDispatcher()->vkGetAccelerationStructureMemoryRequirementsNV(
+ static_cast<VkDevice>( m_device ),
+ reinterpret_cast<const VkAccelerationStructureMemoryRequirementsInfoNV *>( &info ),
+ reinterpret_cast<VkMemoryRequirements2KHR *>( &memoryRequirements ) );
+ return structureChain;
+ }
+
+ VULKAN_HPP_INLINE void Device::bindAccelerationStructureMemoryNV(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::BindAccelerationStructureMemoryInfoNV> const & bindInfos ) const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkBindAccelerationStructureMemoryNV &&
+ "Function <vkBindAccelerationStructureMemoryNV> needs extension <VK_NV_ray_tracing> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkBindAccelerationStructureMemoryNV(
+ static_cast<VkDevice>( m_device ),
+ bindInfos.size(),
+ reinterpret_cast<const VkBindAccelerationStructureMemoryInfoNV *>( bindInfos.data() ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Device::bindAccelerationStructureMemoryNV" );
+ }
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::buildAccelerationStructureNV(
+ const AccelerationStructureInfoNV & info,
+ VULKAN_HPP_NAMESPACE::Buffer instanceData,
+ VULKAN_HPP_NAMESPACE::DeviceSize instanceOffset,
+ VULKAN_HPP_NAMESPACE::Bool32 update,
+ VULKAN_HPP_NAMESPACE::AccelerationStructureNV dst,
+ VULKAN_HPP_NAMESPACE::AccelerationStructureNV src,
+ VULKAN_HPP_NAMESPACE::Buffer scratch,
+ VULKAN_HPP_NAMESPACE::DeviceSize scratchOffset ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkCmdBuildAccelerationStructureNV &&
+ "Function <vkCmdBuildAccelerationStructureNV> needs extension <VK_NV_ray_tracing> enabled!" );
+
+ getDispatcher()->vkCmdBuildAccelerationStructureNV(
+ static_cast<VkCommandBuffer>( m_commandBuffer ),
+ reinterpret_cast<const VkAccelerationStructureInfoNV *>( &info ),
+ static_cast<VkBuffer>( instanceData ),
+ static_cast<VkDeviceSize>( instanceOffset ),
+ static_cast<VkBool32>( update ),
+ static_cast<VkAccelerationStructureNV>( dst ),
+ static_cast<VkAccelerationStructureNV>( src ),
+ static_cast<VkBuffer>( scratch ),
+ static_cast<VkDeviceSize>( scratchOffset ) );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::copyAccelerationStructureNV(
+ VULKAN_HPP_NAMESPACE::AccelerationStructureNV dst,
+ VULKAN_HPP_NAMESPACE::AccelerationStructureNV src,
+ VULKAN_HPP_NAMESPACE::CopyAccelerationStructureModeKHR mode ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkCmdCopyAccelerationStructureNV &&
+ "Function <vkCmdCopyAccelerationStructureNV> needs extension <VK_NV_ray_tracing> enabled!" );
+
+ getDispatcher()->vkCmdCopyAccelerationStructureNV( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkAccelerationStructureNV>( dst ),
+ static_cast<VkAccelerationStructureNV>( src ),
+ static_cast<VkCopyAccelerationStructureModeKHR>( mode ) );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::traceRaysNV( VULKAN_HPP_NAMESPACE::Buffer raygenShaderBindingTableBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize raygenShaderBindingOffset,
+ VULKAN_HPP_NAMESPACE::Buffer missShaderBindingTableBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize missShaderBindingOffset,
+ VULKAN_HPP_NAMESPACE::DeviceSize missShaderBindingStride,
+ VULKAN_HPP_NAMESPACE::Buffer hitShaderBindingTableBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize hitShaderBindingOffset,
+ VULKAN_HPP_NAMESPACE::DeviceSize hitShaderBindingStride,
+ VULKAN_HPP_NAMESPACE::Buffer callableShaderBindingTableBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize callableShaderBindingOffset,
+ VULKAN_HPP_NAMESPACE::DeviceSize callableShaderBindingStride,
+ uint32_t width,
+ uint32_t height,
+ uint32_t depth ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkCmdTraceRaysNV &&
+ "Function <vkCmdTraceRaysNV> needs extension <VK_NV_ray_tracing> enabled!" );
+
+ getDispatcher()->vkCmdTraceRaysNV( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkBuffer>( raygenShaderBindingTableBuffer ),
+ static_cast<VkDeviceSize>( raygenShaderBindingOffset ),
+ static_cast<VkBuffer>( missShaderBindingTableBuffer ),
+ static_cast<VkDeviceSize>( missShaderBindingOffset ),
+ static_cast<VkDeviceSize>( missShaderBindingStride ),
+ static_cast<VkBuffer>( hitShaderBindingTableBuffer ),
+ static_cast<VkDeviceSize>( hitShaderBindingOffset ),
+ static_cast<VkDeviceSize>( hitShaderBindingStride ),
+ static_cast<VkBuffer>( callableShaderBindingTableBuffer ),
+ static_cast<VkDeviceSize>( callableShaderBindingOffset ),
+ static_cast<VkDeviceSize>( callableShaderBindingStride ),
+ width,
+ height,
+ depth );
+ }
+
+ template <typename T>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<T>
+ Pipeline::getRayTracingShaderGroupHandlesNV( uint32_t firstGroup, uint32_t groupCount, size_t dataSize ) const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetRayTracingShaderGroupHandlesNV &&
+ "Function <vkGetRayTracingShaderGroupHandlesNV> needs extension <VK_NV_ray_tracing> enabled!" );
+
+ VULKAN_HPP_ASSERT( dataSize % sizeof( T ) == 0 );
+ std::vector<T> data( dataSize / sizeof( T ) );
+ Result result = static_cast<Result>(
+ getDispatcher()->vkGetRayTracingShaderGroupHandlesNV( static_cast<VkDevice>( m_device ),
+ static_cast<VkPipeline>( m_pipeline ),
+ firstGroup,
+ groupCount,
+ data.size() * sizeof( T ),
+ reinterpret_cast<void *>( data.data() ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Pipeline::getRayTracingShaderGroupHandlesNV" );
+ }
+ return data;
+ }
+
+ template <typename T>
+ VULKAN_HPP_NODISCARD T Pipeline::getRayTracingShaderGroupHandleNV( uint32_t firstGroup, uint32_t groupCount ) const
+ {
+ T data;
+ Result result = static_cast<Result>(
+ getDispatcher()->vkGetRayTracingShaderGroupHandlesNV( static_cast<VkDevice>( m_device ),
+ static_cast<VkPipeline>( m_pipeline ),
+ firstGroup,
+ groupCount,
+ sizeof( T ),
+ reinterpret_cast<void *>( &data ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Pipeline::getRayTracingShaderGroupHandleNV" );
+ }
+ return data;
+ }
+
+ template <typename T>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<T> AccelerationStructureNV::getHandle( size_t dataSize ) const
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkGetAccelerationStructureHandleNV &&
+ "Function <vkGetAccelerationStructureHandleNV> needs extension <VK_NV_ray_tracing> enabled!" );
+
+ VULKAN_HPP_ASSERT( dataSize % sizeof( T ) == 0 );
+ std::vector<T> data( dataSize / sizeof( T ) );
+ Result result = static_cast<Result>( getDispatcher()->vkGetAccelerationStructureHandleNV(
+ static_cast<VkDevice>( m_device ),
+ static_cast<VkAccelerationStructureNV>( m_accelerationStructureNV ),
+ data.size() * sizeof( T ),
+ reinterpret_cast<void *>( data.data() ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::AccelerationStructureNV::getHandle" );
+ }
+ return data;
+ }
+
+ template <typename T>
+ VULKAN_HPP_NODISCARD T AccelerationStructureNV::getHandle() const
+ {
+ T data;
+ Result result = static_cast<Result>( getDispatcher()->vkGetAccelerationStructureHandleNV(
+ static_cast<VkDevice>( m_device ),
+ static_cast<VkAccelerationStructureNV>( m_accelerationStructureNV ),
+ sizeof( T ),
+ reinterpret_cast<void *>( &data ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::AccelerationStructureNV::getHandle" );
+ }
+ return data;
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::writeAccelerationStructuresPropertiesNV(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::AccelerationStructureNV> const & accelerationStructures,
+ VULKAN_HPP_NAMESPACE::QueryType queryType,
+ VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ uint32_t firstQuery ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkCmdWriteAccelerationStructuresPropertiesNV &&
+ "Function <vkCmdWriteAccelerationStructuresPropertiesNV> needs extension <VK_NV_ray_tracing> enabled!" );
+
+ getDispatcher()->vkCmdWriteAccelerationStructuresPropertiesNV(
+ static_cast<VkCommandBuffer>( m_commandBuffer ),
+ accelerationStructures.size(),
+ reinterpret_cast<const VkAccelerationStructureNV *>( accelerationStructures.data() ),
+ static_cast<VkQueryType>( queryType ),
+ static_cast<VkQueryPool>( queryPool ),
+ firstQuery );
+ }
+
+ VULKAN_HPP_INLINE void Pipeline::compileDeferredNV( uint32_t shader ) const
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkCompileDeferredNV &&
+ "Function <vkCompileDeferredNV> needs extension <VK_NV_ray_tracing> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkCompileDeferredNV(
+ static_cast<VkDevice>( m_device ), static_cast<VkPipeline>( m_pipeline ), shader ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Pipeline::compileDeferredNV" );
+ }
+ }
+
+ //=== VK_KHR_maintenance3 ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::DescriptorSetLayoutSupport
+ Device::getDescriptorSetLayoutSupportKHR( const DescriptorSetLayoutCreateInfo & createInfo ) const
+ VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetDescriptorSetLayoutSupportKHR &&
+ "Function <vkGetDescriptorSetLayoutSupportKHR> needs extension <VK_KHR_maintenance3> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::DescriptorSetLayoutSupport support;
+ getDispatcher()->vkGetDescriptorSetLayoutSupportKHR(
+ static_cast<VkDevice>( m_device ),
+ reinterpret_cast<const VkDescriptorSetLayoutCreateInfo *>( &createInfo ),
+ reinterpret_cast<VkDescriptorSetLayoutSupport *>( &support ) );
+ return support;
+ }
+
+ template <typename X, typename Y, typename... Z>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE StructureChain<X, Y, Z...> Device::getDescriptorSetLayoutSupportKHR(
+ const DescriptorSetLayoutCreateInfo & createInfo ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetDescriptorSetLayoutSupportKHR &&
+ "Function <vkGetDescriptorSetLayoutSupportKHR> needs extension <VK_KHR_maintenance3> enabled!" );
+
+ StructureChain<X, Y, Z...> structureChain;
+ VULKAN_HPP_NAMESPACE::DescriptorSetLayoutSupport & support =
+ structureChain.template get<VULKAN_HPP_NAMESPACE::DescriptorSetLayoutSupport>();
+ getDispatcher()->vkGetDescriptorSetLayoutSupportKHR(
+ static_cast<VkDevice>( m_device ),
+ reinterpret_cast<const VkDescriptorSetLayoutCreateInfo *>( &createInfo ),
+ reinterpret_cast<VkDescriptorSetLayoutSupport *>( &support ) );
+ return structureChain;
+ }
+
+ //=== VK_KHR_draw_indirect_count ===
+
+ VULKAN_HPP_INLINE void CommandBuffer::drawIndirectCountKHR( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize offset,
+ VULKAN_HPP_NAMESPACE::Buffer countBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize countBufferOffset,
+ uint32_t maxDrawCount,
+ uint32_t stride ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkCmdDrawIndirectCountKHR &&
+ "Function <vkCmdDrawIndirectCountKHR> needs extension <VK_KHR_draw_indirect_count> enabled!" );
+
+ getDispatcher()->vkCmdDrawIndirectCountKHR( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkBuffer>( buffer ),
+ static_cast<VkDeviceSize>( offset ),
+ static_cast<VkBuffer>( countBuffer ),
+ static_cast<VkDeviceSize>( countBufferOffset ),
+ maxDrawCount,
+ stride );
+ }
+
+ VULKAN_HPP_INLINE void
+ CommandBuffer::drawIndexedIndirectCountKHR( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize offset,
+ VULKAN_HPP_NAMESPACE::Buffer countBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize countBufferOffset,
+ uint32_t maxDrawCount,
+ uint32_t stride ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkCmdDrawIndexedIndirectCountKHR &&
+ "Function <vkCmdDrawIndexedIndirectCountKHR> needs extension <VK_KHR_draw_indirect_count> enabled!" );
+
+ getDispatcher()->vkCmdDrawIndexedIndirectCountKHR( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkBuffer>( buffer ),
+ static_cast<VkDeviceSize>( offset ),
+ static_cast<VkBuffer>( countBuffer ),
+ static_cast<VkDeviceSize>( countBufferOffset ),
+ maxDrawCount,
+ stride );
+ }
+
+ //=== VK_EXT_external_memory_host ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::MemoryHostPointerPropertiesEXT
+ Device::getMemoryHostPointerPropertiesEXT( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType,
+ const void * pHostPointer ) const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetMemoryHostPointerPropertiesEXT &&
+ "Function <vkGetMemoryHostPointerPropertiesEXT> needs extension <VK_EXT_external_memory_host> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::MemoryHostPointerPropertiesEXT memoryHostPointerProperties;
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetMemoryHostPointerPropertiesEXT(
+ static_cast<VkDevice>( m_device ),
+ static_cast<VkExternalMemoryHandleTypeFlagBits>( handleType ),
+ pHostPointer,
+ reinterpret_cast<VkMemoryHostPointerPropertiesEXT *>( &memoryHostPointerProperties ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Device::getMemoryHostPointerPropertiesEXT" );
+ }
+ return memoryHostPointerProperties;
+ }
+
+ //=== VK_AMD_buffer_marker ===
+
+ VULKAN_HPP_INLINE void
+ CommandBuffer::writeBufferMarkerAMD( VULKAN_HPP_NAMESPACE::PipelineStageFlagBits pipelineStage,
+ VULKAN_HPP_NAMESPACE::Buffer dstBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize dstOffset,
+ uint32_t marker ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkCmdWriteBufferMarkerAMD &&
+ "Function <vkCmdWriteBufferMarkerAMD> needs extension <VK_AMD_buffer_marker> enabled!" );
+
+ getDispatcher()->vkCmdWriteBufferMarkerAMD( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkPipelineStageFlagBits>( pipelineStage ),
+ static_cast<VkBuffer>( dstBuffer ),
+ static_cast<VkDeviceSize>( dstOffset ),
+ marker );
+ }
+
+ //=== VK_EXT_calibrated_timestamps ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<VULKAN_HPP_NAMESPACE::TimeDomainEXT>
+ PhysicalDevice::getCalibrateableTimeDomainsEXT() const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetPhysicalDeviceCalibrateableTimeDomainsEXT &&
+ "Function <vkGetPhysicalDeviceCalibrateableTimeDomainsEXT> needs extension <VK_EXT_calibrated_timestamps> enabled!" );
+
+ std::vector<VULKAN_HPP_NAMESPACE::TimeDomainEXT> timeDomains;
+ uint32_t timeDomainCount;
+ VULKAN_HPP_NAMESPACE::Result result;
+ do
+ {
+ result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetPhysicalDeviceCalibrateableTimeDomainsEXT(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ), &timeDomainCount, nullptr ) );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && timeDomainCount )
+ {
+ timeDomains.resize( timeDomainCount );
+ result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetPhysicalDeviceCalibrateableTimeDomainsEXT(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ &timeDomainCount,
+ reinterpret_cast<VkTimeDomainEXT *>( timeDomains.data() ) ) );
+ VULKAN_HPP_ASSERT( timeDomainCount <= timeDomains.size() );
+ }
+ } while ( result == VULKAN_HPP_NAMESPACE::Result::eIncomplete );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && ( timeDomainCount < timeDomains.size() ) )
+ {
+ timeDomains.resize( timeDomainCount );
+ }
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getCalibrateableTimeDomainsEXT" );
+ }
+ return timeDomains;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::pair<std::vector<uint64_t>, uint64_t>
+ Device::getCalibratedTimestampsEXT(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::CalibratedTimestampInfoEXT> const & timestampInfos ) const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetCalibratedTimestampsEXT &&
+ "Function <vkGetCalibratedTimestampsEXT> needs extension <VK_EXT_calibrated_timestamps> enabled!" );
+
+ std::pair<std::vector<uint64_t>, uint64_t> data(
+ std::piecewise_construct, std::forward_as_tuple( timestampInfos.size() ), std::forward_as_tuple( 0 ) );
+ std::vector<uint64_t> & timestamps = data.first;
+ uint64_t & maxDeviation = data.second;
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetCalibratedTimestampsEXT(
+ static_cast<VkDevice>( m_device ),
+ timestampInfos.size(),
+ reinterpret_cast<const VkCalibratedTimestampInfoEXT *>( timestampInfos.data() ),
+ timestamps.data(),
+ &maxDeviation ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Device::getCalibratedTimestampsEXT" );
+ }
+ return data;
+ }
+
+ //=== VK_NV_mesh_shader ===
+
+ VULKAN_HPP_INLINE void CommandBuffer::drawMeshTasksNV( uint32_t taskCount,
+ uint32_t firstTask ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkCmdDrawMeshTasksNV &&
+ "Function <vkCmdDrawMeshTasksNV> needs extension <VK_NV_mesh_shader> enabled!" );
+
+ getDispatcher()->vkCmdDrawMeshTasksNV( static_cast<VkCommandBuffer>( m_commandBuffer ), taskCount, firstTask );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::drawMeshTasksIndirectNV( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize offset,
+ uint32_t drawCount,
+ uint32_t stride ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkCmdDrawMeshTasksIndirectNV &&
+ "Function <vkCmdDrawMeshTasksIndirectNV> needs extension <VK_NV_mesh_shader> enabled!" );
+
+ getDispatcher()->vkCmdDrawMeshTasksIndirectNV( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkBuffer>( buffer ),
+ static_cast<VkDeviceSize>( offset ),
+ drawCount,
+ stride );
+ }
+
+ VULKAN_HPP_INLINE void
+ CommandBuffer::drawMeshTasksIndirectCountNV( VULKAN_HPP_NAMESPACE::Buffer buffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize offset,
+ VULKAN_HPP_NAMESPACE::Buffer countBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize countBufferOffset,
+ uint32_t maxDrawCount,
+ uint32_t stride ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkCmdDrawMeshTasksIndirectCountNV &&
+ "Function <vkCmdDrawMeshTasksIndirectCountNV> needs extension <VK_NV_mesh_shader> enabled!" );
+
+ getDispatcher()->vkCmdDrawMeshTasksIndirectCountNV( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkBuffer>( buffer ),
+ static_cast<VkDeviceSize>( offset ),
+ static_cast<VkBuffer>( countBuffer ),
+ static_cast<VkDeviceSize>( countBufferOffset ),
+ maxDrawCount,
+ stride );
+ }
+
+ //=== VK_NV_scissor_exclusive ===
+
+ VULKAN_HPP_INLINE void CommandBuffer::setExclusiveScissorNV(
+ uint32_t firstExclusiveScissor,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::Rect2D> const & exclusiveScissors ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkCmdSetExclusiveScissorNV &&
+ "Function <vkCmdSetExclusiveScissorNV> needs extension <VK_NV_scissor_exclusive> enabled!" );
+
+ getDispatcher()->vkCmdSetExclusiveScissorNV( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ firstExclusiveScissor,
+ exclusiveScissors.size(),
+ reinterpret_cast<const VkRect2D *>( exclusiveScissors.data() ) );
+ }
+
+ //=== VK_NV_device_diagnostic_checkpoints ===
+
+ VULKAN_HPP_INLINE void CommandBuffer::setCheckpointNV( const void * pCheckpointMarker ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkCmdSetCheckpointNV &&
+ "Function <vkCmdSetCheckpointNV> needs extension <VK_NV_device_diagnostic_checkpoints> enabled!" );
+
+ getDispatcher()->vkCmdSetCheckpointNV( static_cast<VkCommandBuffer>( m_commandBuffer ), pCheckpointMarker );
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<VULKAN_HPP_NAMESPACE::CheckpointDataNV>
+ Queue::getCheckpointDataNV() const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetQueueCheckpointDataNV &&
+ "Function <vkGetQueueCheckpointDataNV> needs extension <VK_NV_device_diagnostic_checkpoints> enabled!" );
+
+ uint32_t checkpointDataCount;
+ getDispatcher()->vkGetQueueCheckpointDataNV( static_cast<VkQueue>( m_queue ), &checkpointDataCount, nullptr );
+ std::vector<VULKAN_HPP_NAMESPACE::CheckpointDataNV> checkpointData( checkpointDataCount );
+ getDispatcher()->vkGetQueueCheckpointDataNV( static_cast<VkQueue>( m_queue ),
+ &checkpointDataCount,
+ reinterpret_cast<VkCheckpointDataNV *>( checkpointData.data() ) );
+ VULKAN_HPP_ASSERT( checkpointDataCount <= checkpointData.size() );
+ return checkpointData;
+ }
+
+ //=== VK_KHR_timeline_semaphore ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE uint64_t Semaphore::getCounterValueKHR() const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetSemaphoreCounterValueKHR &&
+ "Function <vkGetSemaphoreCounterValueKHR> needs extension <VK_KHR_timeline_semaphore> enabled!" );
+
+ uint64_t value;
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetSemaphoreCounterValueKHR(
+ static_cast<VkDevice>( m_device ), static_cast<VkSemaphore>( m_semaphore ), &value ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Semaphore::getCounterValueKHR" );
+ }
+ return value;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::Result
+ Device::waitSemaphoresKHR( const SemaphoreWaitInfo & waitInfo, uint64_t timeout ) const
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkWaitSemaphoresKHR &&
+ "Function <vkWaitSemaphoresKHR> needs extension <VK_KHR_timeline_semaphore> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkWaitSemaphoresKHR(
+ static_cast<VkDevice>( m_device ), reinterpret_cast<const VkSemaphoreWaitInfo *>( &waitInfo ), timeout ) );
+ if ( ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess ) &&
+ ( result != VULKAN_HPP_NAMESPACE::Result::eTimeout ) )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Device::waitSemaphoresKHR" );
+ }
+ return result;
+ }
+
+ VULKAN_HPP_INLINE void Device::signalSemaphoreKHR( const SemaphoreSignalInfo & signalInfo ) const
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkSignalSemaphoreKHR &&
+ "Function <vkSignalSemaphoreKHR> needs extension <VK_KHR_timeline_semaphore> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkSignalSemaphoreKHR(
+ static_cast<VkDevice>( m_device ), reinterpret_cast<const VkSemaphoreSignalInfo *>( &signalInfo ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Device::signalSemaphoreKHR" );
+ }
+ }
+
+ //=== VK_INTEL_performance_query ===
+
+ VULKAN_HPP_INLINE void
+ Device::initializePerformanceApiINTEL( const InitializePerformanceApiInfoINTEL & initializeInfo ) const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkInitializePerformanceApiINTEL &&
+ "Function <vkInitializePerformanceApiINTEL> needs extension <VK_INTEL_performance_query> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkInitializePerformanceApiINTEL(
+ static_cast<VkDevice>( m_device ),
+ reinterpret_cast<const VkInitializePerformanceApiInfoINTEL *>( &initializeInfo ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Device::initializePerformanceApiINTEL" );
+ }
+ }
+
+ VULKAN_HPP_INLINE void Device::uninitializePerformanceApiINTEL() const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkUninitializePerformanceApiINTEL &&
+ "Function <vkUninitializePerformanceApiINTEL> needs extension <VK_INTEL_performance_query> enabled!" );
+
+ getDispatcher()->vkUninitializePerformanceApiINTEL( static_cast<VkDevice>( m_device ) );
+ }
+
+ VULKAN_HPP_INLINE void
+ CommandBuffer::setPerformanceMarkerINTEL( const PerformanceMarkerInfoINTEL & markerInfo ) const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkCmdSetPerformanceMarkerINTEL &&
+ "Function <vkCmdSetPerformanceMarkerINTEL> needs extension <VK_INTEL_performance_query> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkCmdSetPerformanceMarkerINTEL(
+ static_cast<VkCommandBuffer>( m_commandBuffer ),
+ reinterpret_cast<const VkPerformanceMarkerInfoINTEL *>( &markerInfo ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::CommandBuffer::setPerformanceMarkerINTEL" );
+ }
+ }
+
+ VULKAN_HPP_INLINE void
+ CommandBuffer::setPerformanceStreamMarkerINTEL( const PerformanceStreamMarkerInfoINTEL & markerInfo ) const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkCmdSetPerformanceStreamMarkerINTEL &&
+ "Function <vkCmdSetPerformanceStreamMarkerINTEL> needs extension <VK_INTEL_performance_query> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkCmdSetPerformanceStreamMarkerINTEL(
+ static_cast<VkCommandBuffer>( m_commandBuffer ),
+ reinterpret_cast<const VkPerformanceStreamMarkerInfoINTEL *>( &markerInfo ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::CommandBuffer::setPerformanceStreamMarkerINTEL" );
+ }
+ }
+
+ VULKAN_HPP_INLINE void
+ CommandBuffer::setPerformanceOverrideINTEL( const PerformanceOverrideInfoINTEL & overrideInfo ) const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkCmdSetPerformanceOverrideINTEL &&
+ "Function <vkCmdSetPerformanceOverrideINTEL> needs extension <VK_INTEL_performance_query> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkCmdSetPerformanceOverrideINTEL(
+ static_cast<VkCommandBuffer>( m_commandBuffer ),
+ reinterpret_cast<const VkPerformanceOverrideInfoINTEL *>( &overrideInfo ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::CommandBuffer::setPerformanceOverrideINTEL" );
+ }
+ }
+
+ VULKAN_HPP_INLINE void
+ Queue::setPerformanceConfigurationINTEL( VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL configuration ) const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkQueueSetPerformanceConfigurationINTEL &&
+ "Function <vkQueueSetPerformanceConfigurationINTEL> needs extension <VK_INTEL_performance_query> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkQueueSetPerformanceConfigurationINTEL(
+ static_cast<VkQueue>( m_queue ), static_cast<VkPerformanceConfigurationINTEL>( configuration ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Queue::setPerformanceConfigurationINTEL" );
+ }
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::PerformanceValueINTEL
+ Device::getPerformanceParameterINTEL( VULKAN_HPP_NAMESPACE::PerformanceParameterTypeINTEL parameter ) const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetPerformanceParameterINTEL &&
+ "Function <vkGetPerformanceParameterINTEL> needs extension <VK_INTEL_performance_query> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::PerformanceValueINTEL value;
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkGetPerformanceParameterINTEL( static_cast<VkDevice>( m_device ),
+ static_cast<VkPerformanceParameterTypeINTEL>( parameter ),
+ reinterpret_cast<VkPerformanceValueINTEL *>( &value ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Device::getPerformanceParameterINTEL" );
+ }
+ return value;
+ }
+
+ //=== VK_AMD_display_native_hdr ===
+
+ VULKAN_HPP_INLINE void
+ SwapchainKHR::setLocalDimmingAMD( VULKAN_HPP_NAMESPACE::Bool32 localDimmingEnable ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkSetLocalDimmingAMD &&
+ "Function <vkSetLocalDimmingAMD> needs extension <VK_AMD_display_native_hdr> enabled!" );
+
+ getDispatcher()->vkSetLocalDimmingAMD( static_cast<VkDevice>( m_device ),
+ static_cast<VkSwapchainKHR>( m_swapchainKHR ),
+ static_cast<VkBool32>( localDimmingEnable ) );
+ }
+
+ //=== VK_KHR_fragment_shading_rate ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentShadingRateKHR>
+ PhysicalDevice::getFragmentShadingRatesKHR() const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetPhysicalDeviceFragmentShadingRatesKHR &&
+ "Function <vkGetPhysicalDeviceFragmentShadingRatesKHR> needs extension <VK_KHR_fragment_shading_rate> enabled!" );
+
+ std::vector<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentShadingRateKHR> fragmentShadingRates;
+ uint32_t fragmentShadingRateCount;
+ VULKAN_HPP_NAMESPACE::Result result;
+ do
+ {
+ result = static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetPhysicalDeviceFragmentShadingRatesKHR(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ), &fragmentShadingRateCount, nullptr ) );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && fragmentShadingRateCount )
+ {
+ fragmentShadingRates.resize( fragmentShadingRateCount );
+ result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetPhysicalDeviceFragmentShadingRatesKHR(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ &fragmentShadingRateCount,
+ reinterpret_cast<VkPhysicalDeviceFragmentShadingRateKHR *>( fragmentShadingRates.data() ) ) );
+ VULKAN_HPP_ASSERT( fragmentShadingRateCount <= fragmentShadingRates.size() );
+ }
+ } while ( result == VULKAN_HPP_NAMESPACE::Result::eIncomplete );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) &&
+ ( fragmentShadingRateCount < fragmentShadingRates.size() ) )
+ {
+ fragmentShadingRates.resize( fragmentShadingRateCount );
+ }
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getFragmentShadingRatesKHR" );
+ }
+ return fragmentShadingRates;
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::setFragmentShadingRateKHR(
+ const Extent2D & fragmentSize,
+ const VULKAN_HPP_NAMESPACE::FragmentShadingRateCombinerOpKHR combinerOps[2] ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkCmdSetFragmentShadingRateKHR &&
+ "Function <vkCmdSetFragmentShadingRateKHR> needs extension <VK_KHR_fragment_shading_rate> enabled!" );
+
+ getDispatcher()->vkCmdSetFragmentShadingRateKHR(
+ static_cast<VkCommandBuffer>( m_commandBuffer ),
+ reinterpret_cast<const VkExtent2D *>( &fragmentSize ),
+ reinterpret_cast<const VkFragmentShadingRateCombinerOpKHR *>( combinerOps ) );
+ }
+
+ //=== VK_EXT_buffer_device_address ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::DeviceAddress
+ Device::getBufferAddressEXT( const BufferDeviceAddressInfo & info ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetBufferDeviceAddressEXT &&
+ "Function <vkGetBufferDeviceAddressEXT> needs extension <VK_EXT_buffer_device_address> enabled!" );
+
+ return static_cast<VULKAN_HPP_NAMESPACE::DeviceAddress>( getDispatcher()->vkGetBufferDeviceAddressEXT(
+ static_cast<VkDevice>( m_device ), reinterpret_cast<const VkBufferDeviceAddressInfo *>( &info ) ) );
+ }
+
+ //=== VK_EXT_tooling_info ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<VULKAN_HPP_NAMESPACE::PhysicalDeviceToolPropertiesEXT>
+ PhysicalDevice::getToolPropertiesEXT() const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetPhysicalDeviceToolPropertiesEXT &&
+ "Function <vkGetPhysicalDeviceToolPropertiesEXT> needs extension <VK_EXT_tooling_info> enabled!" );
+
+ std::vector<VULKAN_HPP_NAMESPACE::PhysicalDeviceToolPropertiesEXT> toolProperties;
+ uint32_t toolCount;
+ VULKAN_HPP_NAMESPACE::Result result;
+ do
+ {
+ result = static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetPhysicalDeviceToolPropertiesEXT(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ), &toolCount, nullptr ) );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && toolCount )
+ {
+ toolProperties.resize( toolCount );
+ result = static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetPhysicalDeviceToolPropertiesEXT(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ &toolCount,
+ reinterpret_cast<VkPhysicalDeviceToolPropertiesEXT *>( toolProperties.data() ) ) );
+ VULKAN_HPP_ASSERT( toolCount <= toolProperties.size() );
+ }
+ } while ( result == VULKAN_HPP_NAMESPACE::Result::eIncomplete );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && ( toolCount < toolProperties.size() ) )
+ {
+ toolProperties.resize( toolCount );
+ }
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getToolPropertiesEXT" );
+ }
+ return toolProperties;
+ }
+
+ //=== VK_NV_cooperative_matrix ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<VULKAN_HPP_NAMESPACE::CooperativeMatrixPropertiesNV>
+ PhysicalDevice::getCooperativeMatrixPropertiesNV() const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetPhysicalDeviceCooperativeMatrixPropertiesNV &&
+ "Function <vkGetPhysicalDeviceCooperativeMatrixPropertiesNV> needs extension <VK_NV_cooperative_matrix> enabled!" );
+
+ std::vector<VULKAN_HPP_NAMESPACE::CooperativeMatrixPropertiesNV> properties;
+ uint32_t propertyCount;
+ VULKAN_HPP_NAMESPACE::Result result;
+ do
+ {
+ result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetPhysicalDeviceCooperativeMatrixPropertiesNV(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ), &propertyCount, nullptr ) );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && propertyCount )
+ {
+ properties.resize( propertyCount );
+ result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkGetPhysicalDeviceCooperativeMatrixPropertiesNV(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ &propertyCount,
+ reinterpret_cast<VkCooperativeMatrixPropertiesNV *>( properties.data() ) ) );
+ VULKAN_HPP_ASSERT( propertyCount <= properties.size() );
+ }
+ } while ( result == VULKAN_HPP_NAMESPACE::Result::eIncomplete );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && ( propertyCount < properties.size() ) )
+ {
+ properties.resize( propertyCount );
+ }
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result,
+ VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getCooperativeMatrixPropertiesNV" );
+ }
+ return properties;
+ }
+
+ //=== VK_NV_coverage_reduction_mode ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<VULKAN_HPP_NAMESPACE::FramebufferMixedSamplesCombinationNV>
+ PhysicalDevice::getSupportedFramebufferMixedSamplesCombinationsNV() const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV &&
+ "Function <vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV> needs extension <VK_NV_coverage_reduction_mode> enabled!" );
+
+ std::vector<VULKAN_HPP_NAMESPACE::FramebufferMixedSamplesCombinationNV> combinations;
+ uint32_t combinationCount;
+ VULKAN_HPP_NAMESPACE::Result result;
+ do
+ {
+ result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ), &combinationCount, nullptr ) );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && combinationCount )
+ {
+ combinations.resize( combinationCount );
+ result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ &combinationCount,
+ reinterpret_cast<VkFramebufferMixedSamplesCombinationNV *>( combinations.data() ) ) );
+ VULKAN_HPP_ASSERT( combinationCount <= combinations.size() );
+ }
+ } while ( result == VULKAN_HPP_NAMESPACE::Result::eIncomplete );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && ( combinationCount < combinations.size() ) )
+ {
+ combinations.resize( combinationCount );
+ }
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException(
+ result, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getSupportedFramebufferMixedSamplesCombinationsNV" );
+ }
+ return combinations;
+ }
+
+# if defined( VK_USE_PLATFORM_WIN32_KHR )
+ //=== VK_EXT_full_screen_exclusive ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<VULKAN_HPP_NAMESPACE::PresentModeKHR>
+ PhysicalDevice::getSurfacePresentModes2EXT( const PhysicalDeviceSurfaceInfo2KHR & surfaceInfo ) const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetPhysicalDeviceSurfacePresentModes2EXT &&
+ "Function <vkGetPhysicalDeviceSurfacePresentModes2EXT> needs extension <VK_EXT_full_screen_exclusive> enabled!" );
+
+ std::vector<VULKAN_HPP_NAMESPACE::PresentModeKHR> presentModes;
+ uint32_t presentModeCount;
+ VULKAN_HPP_NAMESPACE::Result result;
+ do
+ {
+ result = static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetPhysicalDeviceSurfacePresentModes2EXT(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ reinterpret_cast<const VkPhysicalDeviceSurfaceInfo2KHR *>( &surfaceInfo ),
+ &presentModeCount,
+ nullptr ) );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && presentModeCount )
+ {
+ presentModes.resize( presentModeCount );
+ result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetPhysicalDeviceSurfacePresentModes2EXT(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ),
+ reinterpret_cast<const VkPhysicalDeviceSurfaceInfo2KHR *>( &surfaceInfo ),
+ &presentModeCount,
+ reinterpret_cast<VkPresentModeKHR *>( presentModes.data() ) ) );
+ VULKAN_HPP_ASSERT( presentModeCount <= presentModes.size() );
+ }
+ } while ( result == VULKAN_HPP_NAMESPACE::Result::eIncomplete );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && ( presentModeCount < presentModes.size() ) )
+ {
+ presentModes.resize( presentModeCount );
+ }
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::getSurfacePresentModes2EXT" );
+ }
+ return presentModes;
+ }
+
+ VULKAN_HPP_INLINE void SwapchainKHR::acquireFullScreenExclusiveModeEXT() const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkAcquireFullScreenExclusiveModeEXT &&
+ "Function <vkAcquireFullScreenExclusiveModeEXT> needs extension <VK_EXT_full_screen_exclusive> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkAcquireFullScreenExclusiveModeEXT(
+ static_cast<VkDevice>( m_device ), static_cast<VkSwapchainKHR>( m_swapchainKHR ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::SwapchainKHR::acquireFullScreenExclusiveModeEXT" );
+ }
+ }
+
+ VULKAN_HPP_INLINE void SwapchainKHR::releaseFullScreenExclusiveModeEXT() const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkReleaseFullScreenExclusiveModeEXT &&
+ "Function <vkReleaseFullScreenExclusiveModeEXT> needs extension <VK_EXT_full_screen_exclusive> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkReleaseFullScreenExclusiveModeEXT(
+ static_cast<VkDevice>( m_device ), static_cast<VkSwapchainKHR>( m_swapchainKHR ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::SwapchainKHR::releaseFullScreenExclusiveModeEXT" );
+ }
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagsKHR
+ Device::getGroupSurfacePresentModes2EXT( const PhysicalDeviceSurfaceInfo2KHR & surfaceInfo ) const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetDeviceGroupSurfacePresentModes2EXT &&
+ "Function <vkGetDeviceGroupSurfacePresentModes2EXT> needs extension <VK_EXT_full_screen_exclusive> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagsKHR modes;
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetDeviceGroupSurfacePresentModes2EXT(
+ static_cast<VkDevice>( m_device ),
+ reinterpret_cast<const VkPhysicalDeviceSurfaceInfo2KHR *>( &surfaceInfo ),
+ reinterpret_cast<VkDeviceGroupPresentModeFlagsKHR *>( &modes ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Device::getGroupSurfacePresentModes2EXT" );
+ }
+ return modes;
+ }
+# endif /*VK_USE_PLATFORM_WIN32_KHR*/
+
+ //=== VK_KHR_buffer_device_address ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::DeviceAddress
+ Device::getBufferAddressKHR( const BufferDeviceAddressInfo & info ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetBufferDeviceAddressKHR &&
+ "Function <vkGetBufferDeviceAddressKHR> needs extension <VK_KHR_buffer_device_address> enabled!" );
+
+ return static_cast<VULKAN_HPP_NAMESPACE::DeviceAddress>( getDispatcher()->vkGetBufferDeviceAddressKHR(
+ static_cast<VkDevice>( m_device ), reinterpret_cast<const VkBufferDeviceAddressInfo *>( &info ) ) );
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE uint64_t
+ Device::getBufferOpaqueCaptureAddressKHR( const BufferDeviceAddressInfo & info ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetBufferOpaqueCaptureAddressKHR &&
+ "Function <vkGetBufferOpaqueCaptureAddressKHR> needs extension <VK_KHR_buffer_device_address> enabled!" );
+
+ return getDispatcher()->vkGetBufferOpaqueCaptureAddressKHR(
+ static_cast<VkDevice>( m_device ), reinterpret_cast<const VkBufferDeviceAddressInfo *>( &info ) );
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE uint64_t Device::getMemoryOpaqueCaptureAddressKHR(
+ const DeviceMemoryOpaqueCaptureAddressInfo & info ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetDeviceMemoryOpaqueCaptureAddressKHR &&
+ "Function <vkGetDeviceMemoryOpaqueCaptureAddressKHR> needs extension <VK_KHR_buffer_device_address> enabled!" );
+
+ return getDispatcher()->vkGetDeviceMemoryOpaqueCaptureAddressKHR(
+ static_cast<VkDevice>( m_device ), reinterpret_cast<const VkDeviceMemoryOpaqueCaptureAddressInfo *>( &info ) );
+ }
+
+ //=== VK_EXT_line_rasterization ===
+
+ VULKAN_HPP_INLINE void CommandBuffer::setLineStippleEXT( uint32_t lineStippleFactor,
+ uint16_t lineStipplePattern ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkCmdSetLineStippleEXT &&
+ "Function <vkCmdSetLineStippleEXT> needs extension <VK_EXT_line_rasterization> enabled!" );
+
+ getDispatcher()->vkCmdSetLineStippleEXT(
+ static_cast<VkCommandBuffer>( m_commandBuffer ), lineStippleFactor, lineStipplePattern );
+ }
+
+ //=== VK_EXT_host_query_reset ===
+
+ VULKAN_HPP_INLINE void QueryPool::resetEXT( uint32_t firstQuery, uint32_t queryCount ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkResetQueryPoolEXT &&
+ "Function <vkResetQueryPoolEXT> needs extension <VK_EXT_host_query_reset> enabled!" );
+
+ getDispatcher()->vkResetQueryPoolEXT(
+ static_cast<VkDevice>( m_device ), static_cast<VkQueryPool>( m_queryPool ), firstQuery, queryCount );
+ }
+
+ //=== VK_EXT_extended_dynamic_state ===
+
+ VULKAN_HPP_INLINE void
+ CommandBuffer::setCullModeEXT( VULKAN_HPP_NAMESPACE::CullModeFlags cullMode ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkCmdSetCullModeEXT &&
+ "Function <vkCmdSetCullModeEXT> needs extension <VK_EXT_extended_dynamic_state> enabled!" );
+
+ getDispatcher()->vkCmdSetCullModeEXT( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkCullModeFlags>( cullMode ) );
+ }
+
+ VULKAN_HPP_INLINE void
+ CommandBuffer::setFrontFaceEXT( VULKAN_HPP_NAMESPACE::FrontFace frontFace ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkCmdSetFrontFaceEXT &&
+ "Function <vkCmdSetFrontFaceEXT> needs extension <VK_EXT_extended_dynamic_state> enabled!" );
+
+ getDispatcher()->vkCmdSetFrontFaceEXT( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkFrontFace>( frontFace ) );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::setPrimitiveTopologyEXT(
+ VULKAN_HPP_NAMESPACE::PrimitiveTopology primitiveTopology ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkCmdSetPrimitiveTopologyEXT &&
+ "Function <vkCmdSetPrimitiveTopologyEXT> needs extension <VK_EXT_extended_dynamic_state> enabled!" );
+
+ getDispatcher()->vkCmdSetPrimitiveTopologyEXT( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkPrimitiveTopology>( primitiveTopology ) );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::setViewportWithCountEXT(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::Viewport> const & viewports ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkCmdSetViewportWithCountEXT &&
+ "Function <vkCmdSetViewportWithCountEXT> needs extension <VK_EXT_extended_dynamic_state> enabled!" );
+
+ getDispatcher()->vkCmdSetViewportWithCountEXT( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ viewports.size(),
+ reinterpret_cast<const VkViewport *>( viewports.data() ) );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::setScissorWithCountEXT(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::Rect2D> const & scissors ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkCmdSetScissorWithCountEXT &&
+ "Function <vkCmdSetScissorWithCountEXT> needs extension <VK_EXT_extended_dynamic_state> enabled!" );
+
+ getDispatcher()->vkCmdSetScissorWithCountEXT( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ scissors.size(),
+ reinterpret_cast<const VkRect2D *>( scissors.data() ) );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::bindVertexBuffers2EXT(
+ uint32_t firstBinding,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::Buffer> const & buffers,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::DeviceSize> const & offsets,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::DeviceSize> const & sizes,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::DeviceSize> const & strides ) const VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkCmdBindVertexBuffers2EXT &&
+ "Function <vkCmdBindVertexBuffers2EXT> needs extension <VK_EXT_extended_dynamic_state> enabled!" );
+
+# ifdef VULKAN_HPP_NO_EXCEPTIONS
+ VULKAN_HPP_ASSERT( buffers.size() == offsets.size() );
+ VULKAN_HPP_ASSERT( sizes.empty() || buffers.size() == sizes.size() );
+ VULKAN_HPP_ASSERT( strides.empty() || buffers.size() == strides.size() );
+# else
+ if ( buffers.size() != offsets.size() )
+ {
+ throw LogicError( VULKAN_HPP_NAMESPACE_STRING
+ "::CommandBuffer::bindVertexBuffers2EXT: buffers.size() != offsets.size()" );
+ }
+ if ( !sizes.empty() && buffers.size() != sizes.size() )
+ {
+ throw LogicError( VULKAN_HPP_NAMESPACE_STRING
+ "::CommandBuffer::bindVertexBuffers2EXT: buffers.size() != sizes.size()" );
+ }
+ if ( !strides.empty() && buffers.size() != strides.size() )
+ {
+ throw LogicError( VULKAN_HPP_NAMESPACE_STRING
+ "::CommandBuffer::bindVertexBuffers2EXT: buffers.size() != strides.size()" );
+ }
+# endif /*VULKAN_HPP_NO_EXCEPTIONS*/
+
+ getDispatcher()->vkCmdBindVertexBuffers2EXT( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ firstBinding,
+ buffers.size(),
+ reinterpret_cast<const VkBuffer *>( buffers.data() ),
+ reinterpret_cast<const VkDeviceSize *>( offsets.data() ),
+ reinterpret_cast<const VkDeviceSize *>( sizes.data() ),
+ reinterpret_cast<const VkDeviceSize *>( strides.data() ) );
+ }
+
+ VULKAN_HPP_INLINE void
+ CommandBuffer::setDepthTestEnableEXT( VULKAN_HPP_NAMESPACE::Bool32 depthTestEnable ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkCmdSetDepthTestEnableEXT &&
+ "Function <vkCmdSetDepthTestEnableEXT> needs extension <VK_EXT_extended_dynamic_state> enabled!" );
+
+ getDispatcher()->vkCmdSetDepthTestEnableEXT( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkBool32>( depthTestEnable ) );
+ }
+
+ VULKAN_HPP_INLINE void
+ CommandBuffer::setDepthWriteEnableEXT( VULKAN_HPP_NAMESPACE::Bool32 depthWriteEnable ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkCmdSetDepthWriteEnableEXT &&
+ "Function <vkCmdSetDepthWriteEnableEXT> needs extension <VK_EXT_extended_dynamic_state> enabled!" );
+
+ getDispatcher()->vkCmdSetDepthWriteEnableEXT( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkBool32>( depthWriteEnable ) );
+ }
+
+ VULKAN_HPP_INLINE void
+ CommandBuffer::setDepthCompareOpEXT( VULKAN_HPP_NAMESPACE::CompareOp depthCompareOp ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkCmdSetDepthCompareOpEXT &&
+ "Function <vkCmdSetDepthCompareOpEXT> needs extension <VK_EXT_extended_dynamic_state> enabled!" );
+
+ getDispatcher()->vkCmdSetDepthCompareOpEXT( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkCompareOp>( depthCompareOp ) );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::setDepthBoundsTestEnableEXT(
+ VULKAN_HPP_NAMESPACE::Bool32 depthBoundsTestEnable ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkCmdSetDepthBoundsTestEnableEXT &&
+ "Function <vkCmdSetDepthBoundsTestEnableEXT> needs extension <VK_EXT_extended_dynamic_state> enabled!" );
+
+ getDispatcher()->vkCmdSetDepthBoundsTestEnableEXT( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkBool32>( depthBoundsTestEnable ) );
+ }
+
+ VULKAN_HPP_INLINE void
+ CommandBuffer::setStencilTestEnableEXT( VULKAN_HPP_NAMESPACE::Bool32 stencilTestEnable ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkCmdSetStencilTestEnableEXT &&
+ "Function <vkCmdSetStencilTestEnableEXT> needs extension <VK_EXT_extended_dynamic_state> enabled!" );
+
+ getDispatcher()->vkCmdSetStencilTestEnableEXT( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkBool32>( stencilTestEnable ) );
+ }
+
+ VULKAN_HPP_INLINE void
+ CommandBuffer::setStencilOpEXT( VULKAN_HPP_NAMESPACE::StencilFaceFlags faceMask,
+ VULKAN_HPP_NAMESPACE::StencilOp failOp,
+ VULKAN_HPP_NAMESPACE::StencilOp passOp,
+ VULKAN_HPP_NAMESPACE::StencilOp depthFailOp,
+ VULKAN_HPP_NAMESPACE::CompareOp compareOp ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkCmdSetStencilOpEXT &&
+ "Function <vkCmdSetStencilOpEXT> needs extension <VK_EXT_extended_dynamic_state> enabled!" );
+
+ getDispatcher()->vkCmdSetStencilOpEXT( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkStencilFaceFlags>( faceMask ),
+ static_cast<VkStencilOp>( failOp ),
+ static_cast<VkStencilOp>( passOp ),
+ static_cast<VkStencilOp>( depthFailOp ),
+ static_cast<VkCompareOp>( compareOp ) );
+ }
+
+ //=== VK_KHR_deferred_host_operations ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE uint32_t DeferredOperationKHR::getMaxConcurrency() const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetDeferredOperationMaxConcurrencyKHR &&
+ "Function <vkGetDeferredOperationMaxConcurrencyKHR> needs extension <VK_KHR_deferred_host_operations> enabled!" );
+
+ return getDispatcher()->vkGetDeferredOperationMaxConcurrencyKHR(
+ static_cast<VkDevice>( m_device ), static_cast<VkDeferredOperationKHR>( m_deferredOperationKHR ) );
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::Result
+ DeferredOperationKHR::getResult() const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetDeferredOperationResultKHR &&
+ "Function <vkGetDeferredOperationResultKHR> needs extension <VK_KHR_deferred_host_operations> enabled!" );
+
+ return static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetDeferredOperationResultKHR(
+ static_cast<VkDevice>( m_device ), static_cast<VkDeferredOperationKHR>( m_deferredOperationKHR ) ) );
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::Result DeferredOperationKHR::join() const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkDeferredOperationJoinKHR &&
+ "Function <vkDeferredOperationJoinKHR> needs extension <VK_KHR_deferred_host_operations> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkDeferredOperationJoinKHR(
+ static_cast<VkDevice>( m_device ), static_cast<VkDeferredOperationKHR>( m_deferredOperationKHR ) ) );
+ if ( ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess ) &&
+ ( result != VULKAN_HPP_NAMESPACE::Result::eThreadDoneKHR ) &&
+ ( result != VULKAN_HPP_NAMESPACE::Result::eThreadIdleKHR ) )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::DeferredOperationKHR::join" );
+ }
+ return result;
+ }
+
+ //=== VK_KHR_pipeline_executable_properties ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<VULKAN_HPP_NAMESPACE::PipelineExecutablePropertiesKHR>
+ Device::getPipelineExecutablePropertiesKHR( const PipelineInfoKHR & pipelineInfo ) const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetPipelineExecutablePropertiesKHR &&
+ "Function <vkGetPipelineExecutablePropertiesKHR> needs extension <VK_KHR_pipeline_executable_properties> enabled!" );
+
+ std::vector<VULKAN_HPP_NAMESPACE::PipelineExecutablePropertiesKHR> properties;
+ uint32_t executableCount;
+ VULKAN_HPP_NAMESPACE::Result result;
+ do
+ {
+ result = static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetPipelineExecutablePropertiesKHR(
+ static_cast<VkDevice>( m_device ),
+ reinterpret_cast<const VkPipelineInfoKHR *>( &pipelineInfo ),
+ &executableCount,
+ nullptr ) );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && executableCount )
+ {
+ properties.resize( executableCount );
+ result = static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetPipelineExecutablePropertiesKHR(
+ static_cast<VkDevice>( m_device ),
+ reinterpret_cast<const VkPipelineInfoKHR *>( &pipelineInfo ),
+ &executableCount,
+ reinterpret_cast<VkPipelineExecutablePropertiesKHR *>( properties.data() ) ) );
+ VULKAN_HPP_ASSERT( executableCount <= properties.size() );
+ }
+ } while ( result == VULKAN_HPP_NAMESPACE::Result::eIncomplete );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && ( executableCount < properties.size() ) )
+ {
+ properties.resize( executableCount );
+ }
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Device::getPipelineExecutablePropertiesKHR" );
+ }
+ return properties;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<VULKAN_HPP_NAMESPACE::PipelineExecutableStatisticKHR>
+ Device::getPipelineExecutableStatisticsKHR( const PipelineExecutableInfoKHR & executableInfo ) const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetPipelineExecutableStatisticsKHR &&
+ "Function <vkGetPipelineExecutableStatisticsKHR> needs extension <VK_KHR_pipeline_executable_properties> enabled!" );
+
+ std::vector<VULKAN_HPP_NAMESPACE::PipelineExecutableStatisticKHR> statistics;
+ uint32_t statisticCount;
+ VULKAN_HPP_NAMESPACE::Result result;
+ do
+ {
+ result = static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetPipelineExecutableStatisticsKHR(
+ static_cast<VkDevice>( m_device ),
+ reinterpret_cast<const VkPipelineExecutableInfoKHR *>( &executableInfo ),
+ &statisticCount,
+ nullptr ) );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && statisticCount )
+ {
+ statistics.resize( statisticCount );
+ result = static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetPipelineExecutableStatisticsKHR(
+ static_cast<VkDevice>( m_device ),
+ reinterpret_cast<const VkPipelineExecutableInfoKHR *>( &executableInfo ),
+ &statisticCount,
+ reinterpret_cast<VkPipelineExecutableStatisticKHR *>( statistics.data() ) ) );
+ VULKAN_HPP_ASSERT( statisticCount <= statistics.size() );
+ }
+ } while ( result == VULKAN_HPP_NAMESPACE::Result::eIncomplete );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && ( statisticCount < statistics.size() ) )
+ {
+ statistics.resize( statisticCount );
+ }
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Device::getPipelineExecutableStatisticsKHR" );
+ }
+ return statistics;
+ }
+
+ VULKAN_HPP_NODISCARD
+ VULKAN_HPP_INLINE std::vector<VULKAN_HPP_NAMESPACE::PipelineExecutableInternalRepresentationKHR>
+ Device::getPipelineExecutableInternalRepresentationsKHR( const PipelineExecutableInfoKHR & executableInfo ) const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetPipelineExecutableInternalRepresentationsKHR &&
+ "Function <vkGetPipelineExecutableInternalRepresentationsKHR> needs extension <VK_KHR_pipeline_executable_properties> enabled!" );
+
+ std::vector<VULKAN_HPP_NAMESPACE::PipelineExecutableInternalRepresentationKHR> internalRepresentations;
+ uint32_t internalRepresentationCount;
+ VULKAN_HPP_NAMESPACE::Result result;
+ do
+ {
+ result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetPipelineExecutableInternalRepresentationsKHR(
+ static_cast<VkDevice>( m_device ),
+ reinterpret_cast<const VkPipelineExecutableInfoKHR *>( &executableInfo ),
+ &internalRepresentationCount,
+ nullptr ) );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) && internalRepresentationCount )
+ {
+ internalRepresentations.resize( internalRepresentationCount );
+ result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkGetPipelineExecutableInternalRepresentationsKHR(
+ static_cast<VkDevice>( m_device ),
+ reinterpret_cast<const VkPipelineExecutableInfoKHR *>( &executableInfo ),
+ &internalRepresentationCount,
+ reinterpret_cast<VkPipelineExecutableInternalRepresentationKHR *>( internalRepresentations.data() ) ) );
+ VULKAN_HPP_ASSERT( internalRepresentationCount <= internalRepresentations.size() );
+ }
+ } while ( result == VULKAN_HPP_NAMESPACE::Result::eIncomplete );
+ if ( ( result == VULKAN_HPP_NAMESPACE::Result::eSuccess ) &&
+ ( internalRepresentationCount < internalRepresentations.size() ) )
+ {
+ internalRepresentations.resize( internalRepresentationCount );
+ }
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result,
+ VULKAN_HPP_NAMESPACE_STRING "::Device::getPipelineExecutableInternalRepresentationsKHR" );
+ }
+ return internalRepresentations;
+ }
+
+ //=== VK_NV_device_generated_commands ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::MemoryRequirements2
+ Device::getGeneratedCommandsMemoryRequirementsNV( const GeneratedCommandsMemoryRequirementsInfoNV & info ) const
+ VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetGeneratedCommandsMemoryRequirementsNV &&
+ "Function <vkGetGeneratedCommandsMemoryRequirementsNV> needs extension <VK_NV_device_generated_commands> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::MemoryRequirements2 memoryRequirements;
+ getDispatcher()->vkGetGeneratedCommandsMemoryRequirementsNV(
+ static_cast<VkDevice>( m_device ),
+ reinterpret_cast<const VkGeneratedCommandsMemoryRequirementsInfoNV *>( &info ),
+ reinterpret_cast<VkMemoryRequirements2 *>( &memoryRequirements ) );
+ return memoryRequirements;
+ }
+
+ template <typename X, typename Y, typename... Z>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE StructureChain<X, Y, Z...> Device::getGeneratedCommandsMemoryRequirementsNV(
+ const GeneratedCommandsMemoryRequirementsInfoNV & info ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetGeneratedCommandsMemoryRequirementsNV &&
+ "Function <vkGetGeneratedCommandsMemoryRequirementsNV> needs extension <VK_NV_device_generated_commands> enabled!" );
+
+ StructureChain<X, Y, Z...> structureChain;
+ VULKAN_HPP_NAMESPACE::MemoryRequirements2 & memoryRequirements =
+ structureChain.template get<VULKAN_HPP_NAMESPACE::MemoryRequirements2>();
+ getDispatcher()->vkGetGeneratedCommandsMemoryRequirementsNV(
+ static_cast<VkDevice>( m_device ),
+ reinterpret_cast<const VkGeneratedCommandsMemoryRequirementsInfoNV *>( &info ),
+ reinterpret_cast<VkMemoryRequirements2 *>( &memoryRequirements ) );
+ return structureChain;
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::preprocessGeneratedCommandsNV(
+ const GeneratedCommandsInfoNV & generatedCommandsInfo ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkCmdPreprocessGeneratedCommandsNV &&
+ "Function <vkCmdPreprocessGeneratedCommandsNV> needs extension <VK_NV_device_generated_commands> enabled!" );
+
+ getDispatcher()->vkCmdPreprocessGeneratedCommandsNV(
+ static_cast<VkCommandBuffer>( m_commandBuffer ),
+ reinterpret_cast<const VkGeneratedCommandsInfoNV *>( &generatedCommandsInfo ) );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::executeGeneratedCommandsNV(
+ VULKAN_HPP_NAMESPACE::Bool32 isPreprocessed,
+ const GeneratedCommandsInfoNV & generatedCommandsInfo ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkCmdExecuteGeneratedCommandsNV &&
+ "Function <vkCmdExecuteGeneratedCommandsNV> needs extension <VK_NV_device_generated_commands> enabled!" );
+
+ getDispatcher()->vkCmdExecuteGeneratedCommandsNV(
+ static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkBool32>( isPreprocessed ),
+ reinterpret_cast<const VkGeneratedCommandsInfoNV *>( &generatedCommandsInfo ) );
+ }
+
+ VULKAN_HPP_INLINE void
+ CommandBuffer::bindPipelineShaderGroupNV( VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint,
+ VULKAN_HPP_NAMESPACE::Pipeline pipeline,
+ uint32_t groupIndex ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkCmdBindPipelineShaderGroupNV &&
+ "Function <vkCmdBindPipelineShaderGroupNV> needs extension <VK_NV_device_generated_commands> enabled!" );
+
+ getDispatcher()->vkCmdBindPipelineShaderGroupNV( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkPipelineBindPoint>( pipelineBindPoint ),
+ static_cast<VkPipeline>( pipeline ),
+ groupIndex );
+ }
+
+ //=== VK_EXT_acquire_drm_display ===
+
+ VULKAN_HPP_INLINE void PhysicalDevice::acquireDrmDisplayEXT( int32_t drmFd,
+ VULKAN_HPP_NAMESPACE::DisplayKHR display ) const
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkAcquireDrmDisplayEXT &&
+ "Function <vkAcquireDrmDisplayEXT> needs extension <VK_EXT_acquire_drm_display> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkAcquireDrmDisplayEXT(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ), drmFd, static_cast<VkDisplayKHR>( display ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::PhysicalDevice::acquireDrmDisplayEXT" );
+ }
+ }
+
+ //=== VK_EXT_private_data ===
+
+ VULKAN_HPP_INLINE void Device::setPrivateDataEXT( VULKAN_HPP_NAMESPACE::ObjectType objectType_,
+ uint64_t objectHandle,
+ VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT privateDataSlot,
+ uint64_t data ) const
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkSetPrivateDataEXT &&
+ "Function <vkSetPrivateDataEXT> needs extension <VK_EXT_private_data> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkSetPrivateDataEXT( static_cast<VkDevice>( m_device ),
+ static_cast<VkObjectType>( objectType_ ),
+ objectHandle,
+ static_cast<VkPrivateDataSlotEXT>( privateDataSlot ),
+ data ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Device::setPrivateDataEXT" );
+ }
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE uint64_t
+ Device::getPrivateDataEXT( VULKAN_HPP_NAMESPACE::ObjectType objectType_,
+ uint64_t objectHandle,
+ VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT privateDataSlot ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkGetPrivateDataEXT &&
+ "Function <vkGetPrivateDataEXT> needs extension <VK_EXT_private_data> enabled!" );
+
+ uint64_t data;
+ getDispatcher()->vkGetPrivateDataEXT( static_cast<VkDevice>( m_device ),
+ static_cast<VkObjectType>( objectType_ ),
+ objectHandle,
+ static_cast<VkPrivateDataSlotEXT>( privateDataSlot ),
+ &data );
+ return data;
+ }
+
+# if defined( VK_ENABLE_BETA_EXTENSIONS )
+ //=== VK_KHR_video_encode_queue ===
+
+ VULKAN_HPP_INLINE void
+ CommandBuffer::encodeVideoKHR( const VideoEncodeInfoKHR & encodeInfo ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkCmdEncodeVideoKHR &&
+ "Function <vkCmdEncodeVideoKHR> needs extension <VK_KHR_video_encode_queue> enabled!" );
+
+ getDispatcher()->vkCmdEncodeVideoKHR( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ reinterpret_cast<const VkVideoEncodeInfoKHR *>( &encodeInfo ) );
+ }
+# endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+ //=== VK_KHR_synchronization2 ===
+
+ VULKAN_HPP_INLINE void
+ CommandBuffer::setEvent2KHR( VULKAN_HPP_NAMESPACE::Event event,
+ const DependencyInfoKHR & dependencyInfo ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkCmdSetEvent2KHR &&
+ "Function <vkCmdSetEvent2KHR> needs extension <VK_KHR_synchronization2> enabled!" );
+
+ getDispatcher()->vkCmdSetEvent2KHR( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkEvent>( event ),
+ reinterpret_cast<const VkDependencyInfoKHR *>( &dependencyInfo ) );
+ }
+
+ VULKAN_HPP_INLINE void
+ CommandBuffer::resetEvent2KHR( VULKAN_HPP_NAMESPACE::Event event,
+ VULKAN_HPP_NAMESPACE::PipelineStageFlags2KHR stageMask ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkCmdResetEvent2KHR &&
+ "Function <vkCmdResetEvent2KHR> needs extension <VK_KHR_synchronization2> enabled!" );
+
+ getDispatcher()->vkCmdResetEvent2KHR( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkEvent>( event ),
+ static_cast<VkPipelineStageFlags2KHR>( stageMask ) );
+ }
+
+ VULKAN_HPP_INLINE void
+ CommandBuffer::waitEvents2KHR( ArrayProxy<const VULKAN_HPP_NAMESPACE::Event> const & events,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::DependencyInfoKHR> const & dependencyInfos )
+ const VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkCmdWaitEvents2KHR &&
+ "Function <vkCmdWaitEvents2KHR> needs extension <VK_KHR_synchronization2> enabled!" );
+
+# ifdef VULKAN_HPP_NO_EXCEPTIONS
+ VULKAN_HPP_ASSERT( events.size() == dependencyInfos.size() );
+# else
+ if ( events.size() != dependencyInfos.size() )
+ {
+ throw LogicError( VULKAN_HPP_NAMESPACE_STRING
+ "::CommandBuffer::waitEvents2KHR: events.size() != dependencyInfos.size()" );
+ }
+# endif /*VULKAN_HPP_NO_EXCEPTIONS*/
+
+ getDispatcher()->vkCmdWaitEvents2KHR( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ events.size(),
+ reinterpret_cast<const VkEvent *>( events.data() ),
+ reinterpret_cast<const VkDependencyInfoKHR *>( dependencyInfos.data() ) );
+ }
+
+ VULKAN_HPP_INLINE void
+ CommandBuffer::pipelineBarrier2KHR( const DependencyInfoKHR & dependencyInfo ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkCmdPipelineBarrier2KHR &&
+ "Function <vkCmdPipelineBarrier2KHR> needs extension <VK_KHR_synchronization2> enabled!" );
+
+ getDispatcher()->vkCmdPipelineBarrier2KHR( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ reinterpret_cast<const VkDependencyInfoKHR *>( &dependencyInfo ) );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::writeTimestamp2KHR( VULKAN_HPP_NAMESPACE::PipelineStageFlags2KHR stage,
+ VULKAN_HPP_NAMESPACE::QueryPool queryPool,
+ uint32_t query ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkCmdWriteTimestamp2KHR &&
+ "Function <vkCmdWriteTimestamp2KHR> needs extension <VK_KHR_synchronization2> enabled!" );
+
+ getDispatcher()->vkCmdWriteTimestamp2KHR( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkPipelineStageFlags2KHR>( stage ),
+ static_cast<VkQueryPool>( queryPool ),
+ query );
+ }
+
+ VULKAN_HPP_INLINE void Queue::submit2KHR( ArrayProxy<const VULKAN_HPP_NAMESPACE::SubmitInfo2KHR> const & submits,
+ VULKAN_HPP_NAMESPACE::Fence fence ) const
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkQueueSubmit2KHR &&
+ "Function <vkQueueSubmit2KHR> needs extension <VK_KHR_synchronization2> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::Result result = static_cast<VULKAN_HPP_NAMESPACE::Result>(
+ getDispatcher()->vkQueueSubmit2KHR( static_cast<VkQueue>( m_queue ),
+ submits.size(),
+ reinterpret_cast<const VkSubmitInfo2KHR *>( submits.data() ),
+ static_cast<VkFence>( fence ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Queue::submit2KHR" );
+ }
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::writeBufferMarker2AMD( VULKAN_HPP_NAMESPACE::PipelineStageFlags2KHR stage,
+ VULKAN_HPP_NAMESPACE::Buffer dstBuffer,
+ VULKAN_HPP_NAMESPACE::DeviceSize dstOffset,
+ uint32_t marker ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkCmdWriteBufferMarker2AMD &&
+ "Function <vkCmdWriteBufferMarker2AMD> needs extension <VK_KHR_synchronization2> enabled!" );
+
+ getDispatcher()->vkCmdWriteBufferMarker2AMD( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkPipelineStageFlags2KHR>( stage ),
+ static_cast<VkBuffer>( dstBuffer ),
+ static_cast<VkDeviceSize>( dstOffset ),
+ marker );
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<VULKAN_HPP_NAMESPACE::CheckpointData2NV>
+ Queue::getCheckpointData2NV() const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkGetQueueCheckpointData2NV &&
+ "Function <vkGetQueueCheckpointData2NV> needs extension <VK_KHR_synchronization2> enabled!" );
+
+ uint32_t checkpointDataCount;
+ getDispatcher()->vkGetQueueCheckpointData2NV( static_cast<VkQueue>( m_queue ), &checkpointDataCount, nullptr );
+ std::vector<VULKAN_HPP_NAMESPACE::CheckpointData2NV> checkpointData( checkpointDataCount );
+ getDispatcher()->vkGetQueueCheckpointData2NV( static_cast<VkQueue>( m_queue ),
+ &checkpointDataCount,
+ reinterpret_cast<VkCheckpointData2NV *>( checkpointData.data() ) );
+ VULKAN_HPP_ASSERT( checkpointDataCount <= checkpointData.size() );
+ return checkpointData;
+ }
+
+ //=== VK_NV_fragment_shading_rate_enums ===
+
+ VULKAN_HPP_INLINE void CommandBuffer::setFragmentShadingRateEnumNV(
+ VULKAN_HPP_NAMESPACE::FragmentShadingRateNV shadingRate,
+ const VULKAN_HPP_NAMESPACE::FragmentShadingRateCombinerOpKHR combinerOps[2] ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkCmdSetFragmentShadingRateEnumNV &&
+ "Function <vkCmdSetFragmentShadingRateEnumNV> needs extension <VK_NV_fragment_shading_rate_enums> enabled!" );
+
+ getDispatcher()->vkCmdSetFragmentShadingRateEnumNV(
+ static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkFragmentShadingRateNV>( shadingRate ),
+ reinterpret_cast<const VkFragmentShadingRateCombinerOpKHR *>( combinerOps ) );
+ }
+
+ //=== VK_KHR_copy_commands2 ===
+
+ VULKAN_HPP_INLINE void
+ CommandBuffer::copyBuffer2KHR( const CopyBufferInfo2KHR & copyBufferInfo ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkCmdCopyBuffer2KHR &&
+ "Function <vkCmdCopyBuffer2KHR> needs extension <VK_KHR_copy_commands2> enabled!" );
+
+ getDispatcher()->vkCmdCopyBuffer2KHR( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ reinterpret_cast<const VkCopyBufferInfo2KHR *>( &copyBufferInfo ) );
+ }
+
+ VULKAN_HPP_INLINE void
+ CommandBuffer::copyImage2KHR( const CopyImageInfo2KHR & copyImageInfo ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkCmdCopyImage2KHR &&
+ "Function <vkCmdCopyImage2KHR> needs extension <VK_KHR_copy_commands2> enabled!" );
+
+ getDispatcher()->vkCmdCopyImage2KHR( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ reinterpret_cast<const VkCopyImageInfo2KHR *>( &copyImageInfo ) );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::copyBufferToImage2KHR(
+ const CopyBufferToImageInfo2KHR & copyBufferToImageInfo ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkCmdCopyBufferToImage2KHR &&
+ "Function <vkCmdCopyBufferToImage2KHR> needs extension <VK_KHR_copy_commands2> enabled!" );
+
+ getDispatcher()->vkCmdCopyBufferToImage2KHR(
+ static_cast<VkCommandBuffer>( m_commandBuffer ),
+ reinterpret_cast<const VkCopyBufferToImageInfo2KHR *>( &copyBufferToImageInfo ) );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::copyImageToBuffer2KHR(
+ const CopyImageToBufferInfo2KHR & copyImageToBufferInfo ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkCmdCopyImageToBuffer2KHR &&
+ "Function <vkCmdCopyImageToBuffer2KHR> needs extension <VK_KHR_copy_commands2> enabled!" );
+
+ getDispatcher()->vkCmdCopyImageToBuffer2KHR(
+ static_cast<VkCommandBuffer>( m_commandBuffer ),
+ reinterpret_cast<const VkCopyImageToBufferInfo2KHR *>( &copyImageToBufferInfo ) );
+ }
+
+ VULKAN_HPP_INLINE void
+ CommandBuffer::blitImage2KHR( const BlitImageInfo2KHR & blitImageInfo ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkCmdBlitImage2KHR &&
+ "Function <vkCmdBlitImage2KHR> needs extension <VK_KHR_copy_commands2> enabled!" );
+
+ getDispatcher()->vkCmdBlitImage2KHR( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ reinterpret_cast<const VkBlitImageInfo2KHR *>( &blitImageInfo ) );
+ }
+
+ VULKAN_HPP_INLINE void
+ CommandBuffer::resolveImage2KHR( const ResolveImageInfo2KHR & resolveImageInfo ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkCmdResolveImage2KHR &&
+ "Function <vkCmdResolveImage2KHR> needs extension <VK_KHR_copy_commands2> enabled!" );
+
+ getDispatcher()->vkCmdResolveImage2KHR( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ reinterpret_cast<const VkResolveImageInfo2KHR *>( &resolveImageInfo ) );
+ }
+
+# if defined( VK_USE_PLATFORM_WIN32_KHR )
+ //=== VK_NV_acquire_winrt_display ===
+
+ VULKAN_HPP_INLINE void DisplayKHR::acquireWinrtNV() const
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkAcquireWinrtDisplayNV &&
+ "Function <vkAcquireWinrtDisplayNV> needs extension <VK_NV_acquire_winrt_display> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkAcquireWinrtDisplayNV(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ), static_cast<VkDisplayKHR>( m_displayKHR ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::DisplayKHR::acquireWinrtNV" );
+ }
+ }
+# endif /*VK_USE_PLATFORM_WIN32_KHR*/
+
+# if defined( VK_USE_PLATFORM_DIRECTFB_EXT )
+ //=== VK_EXT_directfb_surface ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::Bool32
+ PhysicalDevice::getDirectFBPresentationSupportEXT( uint32_t queueFamilyIndex,
+ IDirectFB & dfb ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetPhysicalDeviceDirectFBPresentationSupportEXT &&
+ "Function <vkGetPhysicalDeviceDirectFBPresentationSupportEXT> needs extension <VK_EXT_directfb_surface> enabled!" );
+
+ return static_cast<VULKAN_HPP_NAMESPACE::Bool32>(
+ getDispatcher()->vkGetPhysicalDeviceDirectFBPresentationSupportEXT(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ), queueFamilyIndex, &dfb ) );
+ }
+# endif /*VK_USE_PLATFORM_DIRECTFB_EXT*/
+
+ //=== VK_KHR_ray_tracing_pipeline ===
+
+ VULKAN_HPP_INLINE void
+ CommandBuffer::traceRaysKHR( const StridedDeviceAddressRegionKHR & raygenShaderBindingTable,
+ const StridedDeviceAddressRegionKHR & missShaderBindingTable,
+ const StridedDeviceAddressRegionKHR & hitShaderBindingTable,
+ const StridedDeviceAddressRegionKHR & callableShaderBindingTable,
+ uint32_t width,
+ uint32_t height,
+ uint32_t depth ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkCmdTraceRaysKHR &&
+ "Function <vkCmdTraceRaysKHR> needs extension <VK_KHR_ray_tracing_pipeline> enabled!" );
+
+ getDispatcher()->vkCmdTraceRaysKHR(
+ static_cast<VkCommandBuffer>( m_commandBuffer ),
+ reinterpret_cast<const VkStridedDeviceAddressRegionKHR *>( &raygenShaderBindingTable ),
+ reinterpret_cast<const VkStridedDeviceAddressRegionKHR *>( &missShaderBindingTable ),
+ reinterpret_cast<const VkStridedDeviceAddressRegionKHR *>( &hitShaderBindingTable ),
+ reinterpret_cast<const VkStridedDeviceAddressRegionKHR *>( &callableShaderBindingTable ),
+ width,
+ height,
+ depth );
+ }
+
+ template <typename T>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<T>
+ Pipeline::getRayTracingShaderGroupHandlesKHR( uint32_t firstGroup, uint32_t groupCount, size_t dataSize ) const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetRayTracingShaderGroupHandlesKHR &&
+ "Function <vkGetRayTracingShaderGroupHandlesKHR> needs extension <VK_KHR_ray_tracing_pipeline> enabled!" );
+
+ VULKAN_HPP_ASSERT( dataSize % sizeof( T ) == 0 );
+ std::vector<T> data( dataSize / sizeof( T ) );
+ Result result = static_cast<Result>(
+ getDispatcher()->vkGetRayTracingShaderGroupHandlesKHR( static_cast<VkDevice>( m_device ),
+ static_cast<VkPipeline>( m_pipeline ),
+ firstGroup,
+ groupCount,
+ data.size() * sizeof( T ),
+ reinterpret_cast<void *>( data.data() ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Pipeline::getRayTracingShaderGroupHandlesKHR" );
+ }
+ return data;
+ }
+
+ template <typename T>
+ VULKAN_HPP_NODISCARD T Pipeline::getRayTracingShaderGroupHandleKHR( uint32_t firstGroup, uint32_t groupCount ) const
+ {
+ T data;
+ Result result = static_cast<Result>(
+ getDispatcher()->vkGetRayTracingShaderGroupHandlesKHR( static_cast<VkDevice>( m_device ),
+ static_cast<VkPipeline>( m_pipeline ),
+ firstGroup,
+ groupCount,
+ sizeof( T ),
+ reinterpret_cast<void *>( &data ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Pipeline::getRayTracingShaderGroupHandleKHR" );
+ }
+ return data;
+ }
+
+ template <typename T>
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<T> Pipeline::getRayTracingCaptureReplayShaderGroupHandlesKHR(
+ uint32_t firstGroup, uint32_t groupCount, size_t dataSize ) const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetRayTracingCaptureReplayShaderGroupHandlesKHR &&
+ "Function <vkGetRayTracingCaptureReplayShaderGroupHandlesKHR> needs extension <VK_KHR_ray_tracing_pipeline> enabled!" );
+
+ VULKAN_HPP_ASSERT( dataSize % sizeof( T ) == 0 );
+ std::vector<T> data( dataSize / sizeof( T ) );
+ Result result = static_cast<Result>(
+ getDispatcher()->vkGetRayTracingCaptureReplayShaderGroupHandlesKHR( static_cast<VkDevice>( m_device ),
+ static_cast<VkPipeline>( m_pipeline ),
+ firstGroup,
+ groupCount,
+ data.size() * sizeof( T ),
+ reinterpret_cast<void *>( data.data() ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException(
+ result, VULKAN_HPP_NAMESPACE_STRING "::Pipeline::getRayTracingCaptureReplayShaderGroupHandlesKHR" );
+ }
+ return data;
+ }
+
+ template <typename T>
+ VULKAN_HPP_NODISCARD T Pipeline::getRayTracingCaptureReplayShaderGroupHandleKHR( uint32_t firstGroup,
+ uint32_t groupCount ) const
+ {
+ T data;
+ Result result = static_cast<Result>(
+ getDispatcher()->vkGetRayTracingCaptureReplayShaderGroupHandlesKHR( static_cast<VkDevice>( m_device ),
+ static_cast<VkPipeline>( m_pipeline ),
+ firstGroup,
+ groupCount,
+ sizeof( T ),
+ reinterpret_cast<void *>( &data ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException(
+ result, VULKAN_HPP_NAMESPACE_STRING "::Pipeline::getRayTracingCaptureReplayShaderGroupHandleKHR" );
+ }
+ return data;
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::traceRaysIndirectKHR(
+ const StridedDeviceAddressRegionKHR & raygenShaderBindingTable,
+ const StridedDeviceAddressRegionKHR & missShaderBindingTable,
+ const StridedDeviceAddressRegionKHR & hitShaderBindingTable,
+ const StridedDeviceAddressRegionKHR & callableShaderBindingTable,
+ VULKAN_HPP_NAMESPACE::DeviceAddress indirectDeviceAddress ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkCmdTraceRaysIndirectKHR &&
+ "Function <vkCmdTraceRaysIndirectKHR> needs extension <VK_KHR_ray_tracing_pipeline> enabled!" );
+
+ getDispatcher()->vkCmdTraceRaysIndirectKHR(
+ static_cast<VkCommandBuffer>( m_commandBuffer ),
+ reinterpret_cast<const VkStridedDeviceAddressRegionKHR *>( &raygenShaderBindingTable ),
+ reinterpret_cast<const VkStridedDeviceAddressRegionKHR *>( &missShaderBindingTable ),
+ reinterpret_cast<const VkStridedDeviceAddressRegionKHR *>( &hitShaderBindingTable ),
+ reinterpret_cast<const VkStridedDeviceAddressRegionKHR *>( &callableShaderBindingTable ),
+ static_cast<VkDeviceAddress>( indirectDeviceAddress ) );
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::DeviceSize
+ Pipeline::getRayTracingShaderGroupStackSizeKHR(
+ uint32_t group, VULKAN_HPP_NAMESPACE::ShaderGroupShaderKHR groupShader ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetRayTracingShaderGroupStackSizeKHR &&
+ "Function <vkGetRayTracingShaderGroupStackSizeKHR> needs extension <VK_KHR_ray_tracing_pipeline> enabled!" );
+
+ return static_cast<VULKAN_HPP_NAMESPACE::DeviceSize>(
+ getDispatcher()->vkGetRayTracingShaderGroupStackSizeKHR( static_cast<VkDevice>( m_device ),
+ static_cast<VkPipeline>( m_pipeline ),
+ group,
+ static_cast<VkShaderGroupShaderKHR>( groupShader ) ) );
+ }
+
+ VULKAN_HPP_INLINE void
+ CommandBuffer::setRayTracingPipelineStackSizeKHR( uint32_t pipelineStackSize ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkCmdSetRayTracingPipelineStackSizeKHR &&
+ "Function <vkCmdSetRayTracingPipelineStackSizeKHR> needs extension <VK_KHR_ray_tracing_pipeline> enabled!" );
+
+ getDispatcher()->vkCmdSetRayTracingPipelineStackSizeKHR( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ pipelineStackSize );
+ }
+
+ //=== VK_EXT_vertex_input_dynamic_state ===
+
+ VULKAN_HPP_INLINE void CommandBuffer::setVertexInputEXT(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::VertexInputBindingDescription2EXT> const & vertexBindingDescriptions,
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::VertexInputAttributeDescription2EXT> const & vertexAttributeDescriptions )
+ const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkCmdSetVertexInputEXT &&
+ "Function <vkCmdSetVertexInputEXT> needs extension <VK_EXT_vertex_input_dynamic_state> enabled!" );
+
+ getDispatcher()->vkCmdSetVertexInputEXT(
+ static_cast<VkCommandBuffer>( m_commandBuffer ),
+ vertexBindingDescriptions.size(),
+ reinterpret_cast<const VkVertexInputBindingDescription2EXT *>( vertexBindingDescriptions.data() ),
+ vertexAttributeDescriptions.size(),
+ reinterpret_cast<const VkVertexInputAttributeDescription2EXT *>( vertexAttributeDescriptions.data() ) );
+ }
+
+# if defined( VK_USE_PLATFORM_FUCHSIA )
+ //=== VK_FUCHSIA_external_memory ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE zx_handle_t
+ Device::getMemoryZirconHandleFUCHSIA( const MemoryGetZirconHandleInfoFUCHSIA & getZirconHandleInfo ) const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetMemoryZirconHandleFUCHSIA &&
+ "Function <vkGetMemoryZirconHandleFUCHSIA> needs extension <VK_FUCHSIA_external_memory> enabled!" );
+
+ zx_handle_t zirconHandle;
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetMemoryZirconHandleFUCHSIA(
+ static_cast<VkDevice>( m_device ),
+ reinterpret_cast<const VkMemoryGetZirconHandleInfoFUCHSIA *>( &getZirconHandleInfo ),
+ &zirconHandle ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Device::getMemoryZirconHandleFUCHSIA" );
+ }
+ return zirconHandle;
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::MemoryZirconHandlePropertiesFUCHSIA
+ Device::getMemoryZirconHandlePropertiesFUCHSIA( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType,
+ zx_handle_t zirconHandle ) const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetMemoryZirconHandlePropertiesFUCHSIA &&
+ "Function <vkGetMemoryZirconHandlePropertiesFUCHSIA> needs extension <VK_FUCHSIA_external_memory> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::MemoryZirconHandlePropertiesFUCHSIA memoryZirconHandleProperties;
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetMemoryZirconHandlePropertiesFUCHSIA(
+ static_cast<VkDevice>( m_device ),
+ static_cast<VkExternalMemoryHandleTypeFlagBits>( handleType ),
+ zirconHandle,
+ reinterpret_cast<VkMemoryZirconHandlePropertiesFUCHSIA *>( &memoryZirconHandleProperties ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Device::getMemoryZirconHandlePropertiesFUCHSIA" );
+ }
+ return memoryZirconHandleProperties;
+ }
+# endif /*VK_USE_PLATFORM_FUCHSIA*/
+
+# if defined( VK_USE_PLATFORM_FUCHSIA )
+ //=== VK_FUCHSIA_external_semaphore ===
+
+ VULKAN_HPP_INLINE void Device::importSemaphoreZirconHandleFUCHSIA(
+ const ImportSemaphoreZirconHandleInfoFUCHSIA & importSemaphoreZirconHandleInfo ) const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkImportSemaphoreZirconHandleFUCHSIA &&
+ "Function <vkImportSemaphoreZirconHandleFUCHSIA> needs extension <VK_FUCHSIA_external_semaphore> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkImportSemaphoreZirconHandleFUCHSIA(
+ static_cast<VkDevice>( m_device ),
+ reinterpret_cast<const VkImportSemaphoreZirconHandleInfoFUCHSIA *>( &importSemaphoreZirconHandleInfo ) ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Device::importSemaphoreZirconHandleFUCHSIA" );
+ }
+ }
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE zx_handle_t
+ Device::getSemaphoreZirconHandleFUCHSIA( const SemaphoreGetZirconHandleInfoFUCHSIA & getZirconHandleInfo ) const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetSemaphoreZirconHandleFUCHSIA &&
+ "Function <vkGetSemaphoreZirconHandleFUCHSIA> needs extension <VK_FUCHSIA_external_semaphore> enabled!" );
+
+ zx_handle_t zirconHandle;
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetSemaphoreZirconHandleFUCHSIA(
+ static_cast<VkDevice>( m_device ),
+ reinterpret_cast<const VkSemaphoreGetZirconHandleInfoFUCHSIA *>( &getZirconHandleInfo ),
+ &zirconHandle ) );
+ if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
+ {
+ throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Device::getSemaphoreZirconHandleFUCHSIA" );
+ }
+ return zirconHandle;
+ }
+# endif /*VK_USE_PLATFORM_FUCHSIA*/
+
+ //=== VK_HUAWEI_subpass_shading ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::pair<VULKAN_HPP_NAMESPACE::Result, VULKAN_HPP_NAMESPACE::Extent2D>
+ RenderPass::getSubpassShadingMaxWorkgroupSizeHUAWEI() const
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetSubpassShadingMaxWorkgroupSizeHUAWEI &&
+ "Function <vkGetSubpassShadingMaxWorkgroupSizeHUAWEI> needs extension <VK_HUAWEI_subpass_shading> enabled!" );
+
+ VULKAN_HPP_NAMESPACE::Extent2D maxWorkgroupSize;
+ VULKAN_HPP_NAMESPACE::Result result =
+ static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetSubpassShadingMaxWorkgroupSizeHUAWEI(
+ static_cast<VkRenderPass>( m_renderPass ), reinterpret_cast<VkExtent2D *>( &maxWorkgroupSize ) ) );
+ if ( ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess ) &&
+ ( result != VULKAN_HPP_NAMESPACE::Result::eIncomplete ) )
+ {
+ throwResultException( result,
+ VULKAN_HPP_NAMESPACE_STRING "::RenderPass::getSubpassShadingMaxWorkgroupSizeHUAWEI" );
+ }
+ return std::make_pair( result, maxWorkgroupSize );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::subpassShadingHUAWEI() const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkCmdSubpassShadingHUAWEI &&
+ "Function <vkCmdSubpassShadingHUAWEI> needs extension <VK_HUAWEI_subpass_shading> enabled!" );
+
+ getDispatcher()->vkCmdSubpassShadingHUAWEI( static_cast<VkCommandBuffer>( m_commandBuffer ) );
+ }
+
+ //=== VK_EXT_extended_dynamic_state2 ===
+
+ VULKAN_HPP_INLINE void
+ CommandBuffer::setPatchControlPointsEXT( uint32_t patchControlPoints ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkCmdSetPatchControlPointsEXT &&
+ "Function <vkCmdSetPatchControlPointsEXT> needs extension <VK_EXT_extended_dynamic_state2> enabled!" );
+
+ getDispatcher()->vkCmdSetPatchControlPointsEXT( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ patchControlPoints );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::setRasterizerDiscardEnableEXT(
+ VULKAN_HPP_NAMESPACE::Bool32 rasterizerDiscardEnable ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkCmdSetRasterizerDiscardEnableEXT &&
+ "Function <vkCmdSetRasterizerDiscardEnableEXT> needs extension <VK_EXT_extended_dynamic_state2> enabled!" );
+
+ getDispatcher()->vkCmdSetRasterizerDiscardEnableEXT( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkBool32>( rasterizerDiscardEnable ) );
+ }
+
+ VULKAN_HPP_INLINE void
+ CommandBuffer::setDepthBiasEnableEXT( VULKAN_HPP_NAMESPACE::Bool32 depthBiasEnable ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkCmdSetDepthBiasEnableEXT &&
+ "Function <vkCmdSetDepthBiasEnableEXT> needs extension <VK_EXT_extended_dynamic_state2> enabled!" );
+
+ getDispatcher()->vkCmdSetDepthBiasEnableEXT( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkBool32>( depthBiasEnable ) );
+ }
+
+ VULKAN_HPP_INLINE void
+ CommandBuffer::setLogicOpEXT( VULKAN_HPP_NAMESPACE::LogicOp logicOp ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkCmdSetLogicOpEXT &&
+ "Function <vkCmdSetLogicOpEXT> needs extension <VK_EXT_extended_dynamic_state2> enabled!" );
+
+ getDispatcher()->vkCmdSetLogicOpEXT( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkLogicOp>( logicOp ) );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::setPrimitiveRestartEnableEXT(
+ VULKAN_HPP_NAMESPACE::Bool32 primitiveRestartEnable ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkCmdSetPrimitiveRestartEnableEXT &&
+ "Function <vkCmdSetPrimitiveRestartEnableEXT> needs extension <VK_EXT_extended_dynamic_state2> enabled!" );
+
+ getDispatcher()->vkCmdSetPrimitiveRestartEnableEXT( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ static_cast<VkBool32>( primitiveRestartEnable ) );
+ }
+
+# if defined( VK_USE_PLATFORM_SCREEN_QNX )
+ //=== VK_QNX_screen_surface ===
+
+ VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::Bool32
+ PhysicalDevice::getScreenPresentationSupportQNX( uint32_t queueFamilyIndex,
+ struct _screen_window & window ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkGetPhysicalDeviceScreenPresentationSupportQNX &&
+ "Function <vkGetPhysicalDeviceScreenPresentationSupportQNX> needs extension <VK_QNX_screen_surface> enabled!" );
+
+ return static_cast<VULKAN_HPP_NAMESPACE::Bool32>(
+ getDispatcher()->vkGetPhysicalDeviceScreenPresentationSupportQNX(
+ static_cast<VkPhysicalDevice>( m_physicalDevice ), queueFamilyIndex, &window ) );
+ }
+# endif /*VK_USE_PLATFORM_SCREEN_QNX*/
+
+ //=== VK_EXT_color_write_enable ===
+
+ VULKAN_HPP_INLINE void CommandBuffer::setColorWriteEnableEXT(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::Bool32> const & colorWriteEnables ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT(
+ getDispatcher()->vkCmdSetColorWriteEnableEXT &&
+ "Function <vkCmdSetColorWriteEnableEXT> needs extension <VK_EXT_color_write_enable> enabled!" );
+
+ getDispatcher()->vkCmdSetColorWriteEnableEXT( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ colorWriteEnables.size(),
+ reinterpret_cast<const VkBool32 *>( colorWriteEnables.data() ) );
+ }
+
+ //=== VK_EXT_multi_draw ===
+
+ VULKAN_HPP_INLINE void
+ CommandBuffer::drawMultiEXT( ArrayProxy<const VULKAN_HPP_NAMESPACE::MultiDrawInfoEXT> const & vertexInfo,
+ uint32_t instanceCount,
+ uint32_t firstInstance,
+ uint32_t stride ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkCmdDrawMultiEXT &&
+ "Function <vkCmdDrawMultiEXT> needs extension <VK_EXT_multi_draw> enabled!" );
+
+ getDispatcher()->vkCmdDrawMultiEXT( static_cast<VkCommandBuffer>( m_commandBuffer ),
+ vertexInfo.size(),
+ reinterpret_cast<const VkMultiDrawInfoEXT *>( vertexInfo.data() ),
+ instanceCount,
+ firstInstance,
+ stride );
+ }
+
+ VULKAN_HPP_INLINE void CommandBuffer::drawMultiIndexedEXT(
+ ArrayProxy<const VULKAN_HPP_NAMESPACE::MultiDrawIndexedInfoEXT> const & indexInfo,
+ uint32_t instanceCount,
+ uint32_t firstInstance,
+ uint32_t stride,
+ Optional<const int32_t> vertexOffset ) const VULKAN_HPP_NOEXCEPT
+ {
+ VULKAN_HPP_ASSERT( getDispatcher()->vkCmdDrawMultiIndexedEXT &&
+ "Function <vkCmdDrawMultiIndexedEXT> needs extension <VK_EXT_multi_draw> enabled!" );
+
+ getDispatcher()->vkCmdDrawMultiIndexedEXT(
+ static_cast<VkCommandBuffer>( m_commandBuffer ),
+ indexInfo.size(),
+ reinterpret_cast<const VkMultiDrawIndexedInfoEXT *>( indexInfo.data() ),
+ instanceCount,
+ firstInstance,
+ stride,
+ static_cast<const int32_t *>( vertexOffset ) );
+ }
+
+#endif
+ } // namespace VULKAN_HPP_RAII_NAMESPACE
+} // namespace VULKAN_HPP_NAMESPACE
+#endif
diff --git a/thirdparty/vulkan/include/vulkan/vulkan_screen.h b/thirdparty/vulkan/include/vulkan/vulkan_screen.h
new file mode 100644
index 0000000000..92ad9bfab4
--- /dev/null
+++ b/thirdparty/vulkan/include/vulkan/vulkan_screen.h
@@ -0,0 +1,54 @@
+#ifndef VULKAN_SCREEN_H_
+#define VULKAN_SCREEN_H_ 1
+
+/*
+** Copyright 2015-2021 The Khronos Group Inc.
+**
+** SPDX-License-Identifier: Apache-2.0
+*/
+
+/*
+** This header is generated from the Khronos Vulkan XML API Registry.
+**
+*/
+
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+
+
+#define VK_QNX_screen_surface 1
+#define VK_QNX_SCREEN_SURFACE_SPEC_VERSION 1
+#define VK_QNX_SCREEN_SURFACE_EXTENSION_NAME "VK_QNX_screen_surface"
+typedef VkFlags VkScreenSurfaceCreateFlagsQNX;
+typedef struct VkScreenSurfaceCreateInfoQNX {
+ VkStructureType sType;
+ const void* pNext;
+ VkScreenSurfaceCreateFlagsQNX flags;
+ struct _screen_context* context;
+ struct _screen_window* window;
+} VkScreenSurfaceCreateInfoQNX;
+
+typedef VkResult (VKAPI_PTR *PFN_vkCreateScreenSurfaceQNX)(VkInstance instance, const VkScreenSurfaceCreateInfoQNX* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);
+typedef VkBool32 (VKAPI_PTR *PFN_vkGetPhysicalDeviceScreenPresentationSupportQNX)(VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex, struct _screen_window* window);
+
+#ifndef VK_NO_PROTOTYPES
+VKAPI_ATTR VkResult VKAPI_CALL vkCreateScreenSurfaceQNX(
+ VkInstance instance,
+ const VkScreenSurfaceCreateInfoQNX* pCreateInfo,
+ const VkAllocationCallbacks* pAllocator,
+ VkSurfaceKHR* pSurface);
+
+VKAPI_ATTR VkBool32 VKAPI_CALL vkGetPhysicalDeviceScreenPresentationSupportQNX(
+ VkPhysicalDevice physicalDevice,
+ uint32_t queueFamilyIndex,
+ struct _screen_window* window);
+#endif
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif
diff --git a/thirdparty/vulkan/include/vulkan/vulkan_structs.hpp b/thirdparty/vulkan/include/vulkan/vulkan_structs.hpp
new file mode 100644
index 0000000000..257c78d9fa
--- /dev/null
+++ b/thirdparty/vulkan/include/vulkan/vulkan_structs.hpp
@@ -0,0 +1,70973 @@
+// Copyright 2015-2021 The Khronos Group Inc.
+//
+// SPDX-License-Identifier: Apache-2.0 OR MIT
+//
+
+// This header is generated from the Khronos Vulkan XML API Registry.
+
+#ifndef VULKAN_STRUCTS_HPP
+#define VULKAN_STRUCTS_HPP
+
+namespace VULKAN_HPP_NAMESPACE
+{
+ struct AabbPositionsKHR
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR AabbPositionsKHR( float minX_ = {},
+ float minY_ = {},
+ float minZ_ = {},
+ float maxX_ = {},
+ float maxY_ = {},
+ float maxZ_ = {} ) VULKAN_HPP_NOEXCEPT
+ : minX( minX_ )
+ , minY( minY_ )
+ , minZ( minZ_ )
+ , maxX( maxX_ )
+ , maxY( maxY_ )
+ , maxZ( maxZ_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR AabbPositionsKHR( AabbPositionsKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ AabbPositionsKHR( VkAabbPositionsKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : AabbPositionsKHR( *reinterpret_cast<AabbPositionsKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 AabbPositionsKHR & operator=( AabbPositionsKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ AabbPositionsKHR & operator=( VkAabbPositionsKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AabbPositionsKHR const *>( &rhs );
+ return *this;
+ }
+
+ AabbPositionsKHR & setMinX( float minX_ ) VULKAN_HPP_NOEXCEPT
+ {
+ minX = minX_;
+ return *this;
+ }
+
+ AabbPositionsKHR & setMinY( float minY_ ) VULKAN_HPP_NOEXCEPT
+ {
+ minY = minY_;
+ return *this;
+ }
+
+ AabbPositionsKHR & setMinZ( float minZ_ ) VULKAN_HPP_NOEXCEPT
+ {
+ minZ = minZ_;
+ return *this;
+ }
+
+ AabbPositionsKHR & setMaxX( float maxX_ ) VULKAN_HPP_NOEXCEPT
+ {
+ maxX = maxX_;
+ return *this;
+ }
+
+ AabbPositionsKHR & setMaxY( float maxY_ ) VULKAN_HPP_NOEXCEPT
+ {
+ maxY = maxY_;
+ return *this;
+ }
+
+ AabbPositionsKHR & setMaxZ( float maxZ_ ) VULKAN_HPP_NOEXCEPT
+ {
+ maxZ = maxZ_;
+ return *this;
+ }
+
+ operator VkAabbPositionsKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkAabbPositionsKHR *>( this );
+ }
+
+ operator VkAabbPositionsKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkAabbPositionsKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( AabbPositionsKHR const & ) const = default;
+#else
+ bool operator==( AabbPositionsKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( minX == rhs.minX ) && ( minY == rhs.minY ) && ( minZ == rhs.minZ ) && ( maxX == rhs.maxX ) &&
+ ( maxY == rhs.maxY ) && ( maxZ == rhs.maxZ );
+ }
+
+ bool operator!=( AabbPositionsKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ float minX = {};
+ float minY = {};
+ float minZ = {};
+ float maxX = {};
+ float maxY = {};
+ float maxZ = {};
+ };
+ static_assert( sizeof( AabbPositionsKHR ) == sizeof( VkAabbPositionsKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<AabbPositionsKHR>::value, "struct wrapper is not a standard layout!" );
+ using AabbPositionsNV = AabbPositionsKHR;
+
+ union DeviceOrHostAddressConstKHR
+ {
+ DeviceOrHostAddressConstKHR( VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ memcpy( static_cast<void *>( this ), &rhs, sizeof( VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR ) );
+ }
+
+ DeviceOrHostAddressConstKHR( VULKAN_HPP_NAMESPACE::DeviceAddress deviceAddress_ = {} )
+ : deviceAddress( deviceAddress_ )
+ {}
+
+ DeviceOrHostAddressConstKHR( const void * hostAddress_ ) : hostAddress( hostAddress_ ) {}
+
+ DeviceOrHostAddressConstKHR &
+ setDeviceAddress( VULKAN_HPP_NAMESPACE::DeviceAddress deviceAddress_ ) VULKAN_HPP_NOEXCEPT
+ {
+ deviceAddress = deviceAddress_;
+ return *this;
+ }
+
+ DeviceOrHostAddressConstKHR & setHostAddress( const void * hostAddress_ ) VULKAN_HPP_NOEXCEPT
+ {
+ hostAddress = hostAddress_;
+ return *this;
+ }
+
+ VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR &
+ operator=( VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ memcpy( static_cast<void *>( this ), &rhs, sizeof( VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR ) );
+ return *this;
+ }
+
+ operator VkDeviceOrHostAddressConstKHR const &() const
+ {
+ return *reinterpret_cast<const VkDeviceOrHostAddressConstKHR *>( this );
+ }
+
+ operator VkDeviceOrHostAddressConstKHR &()
+ {
+ return *reinterpret_cast<VkDeviceOrHostAddressConstKHR *>( this );
+ }
+
+#ifdef VULKAN_HPP_HAS_UNRESTRICTED_UNIONS
+ VULKAN_HPP_NAMESPACE::DeviceAddress deviceAddress;
+ const void * hostAddress;
+#else
+ VkDeviceAddress deviceAddress;
+ const void * hostAddress;
+#endif /*VULKAN_HPP_HAS_UNRESTRICTED_UNIONS*/
+ };
+
+ struct AccelerationStructureGeometryTrianglesDataKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eAccelerationStructureGeometryTrianglesDataKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ AccelerationStructureGeometryTrianglesDataKHR(
+ VULKAN_HPP_NAMESPACE::Format vertexFormat_ = VULKAN_HPP_NAMESPACE::Format::eUndefined,
+ VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR vertexData_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize vertexStride_ = {},
+ uint32_t maxVertex_ = {},
+ VULKAN_HPP_NAMESPACE::IndexType indexType_ = VULKAN_HPP_NAMESPACE::IndexType::eUint16,
+ VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR indexData_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR transformData_ = {} ) VULKAN_HPP_NOEXCEPT
+ : vertexFormat( vertexFormat_ )
+ , vertexData( vertexData_ )
+ , vertexStride( vertexStride_ )
+ , maxVertex( maxVertex_ )
+ , indexType( indexType_ )
+ , indexData( indexData_ )
+ , transformData( transformData_ )
+ {}
+
+ AccelerationStructureGeometryTrianglesDataKHR( AccelerationStructureGeometryTrianglesDataKHR const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ AccelerationStructureGeometryTrianglesDataKHR( VkAccelerationStructureGeometryTrianglesDataKHR const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : AccelerationStructureGeometryTrianglesDataKHR(
+ *reinterpret_cast<AccelerationStructureGeometryTrianglesDataKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ AccelerationStructureGeometryTrianglesDataKHR &
+ operator=( AccelerationStructureGeometryTrianglesDataKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ AccelerationStructureGeometryTrianglesDataKHR &
+ operator=( VkAccelerationStructureGeometryTrianglesDataKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryTrianglesDataKHR const *>( &rhs );
+ return *this;
+ }
+
+ AccelerationStructureGeometryTrianglesDataKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ AccelerationStructureGeometryTrianglesDataKHR &
+ setVertexFormat( VULKAN_HPP_NAMESPACE::Format vertexFormat_ ) VULKAN_HPP_NOEXCEPT
+ {
+ vertexFormat = vertexFormat_;
+ return *this;
+ }
+
+ AccelerationStructureGeometryTrianglesDataKHR &
+ setVertexData( VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR const & vertexData_ ) VULKAN_HPP_NOEXCEPT
+ {
+ vertexData = vertexData_;
+ return *this;
+ }
+
+ AccelerationStructureGeometryTrianglesDataKHR &
+ setVertexStride( VULKAN_HPP_NAMESPACE::DeviceSize vertexStride_ ) VULKAN_HPP_NOEXCEPT
+ {
+ vertexStride = vertexStride_;
+ return *this;
+ }
+
+ AccelerationStructureGeometryTrianglesDataKHR & setMaxVertex( uint32_t maxVertex_ ) VULKAN_HPP_NOEXCEPT
+ {
+ maxVertex = maxVertex_;
+ return *this;
+ }
+
+ AccelerationStructureGeometryTrianglesDataKHR &
+ setIndexType( VULKAN_HPP_NAMESPACE::IndexType indexType_ ) VULKAN_HPP_NOEXCEPT
+ {
+ indexType = indexType_;
+ return *this;
+ }
+
+ AccelerationStructureGeometryTrianglesDataKHR &
+ setIndexData( VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR const & indexData_ ) VULKAN_HPP_NOEXCEPT
+ {
+ indexData = indexData_;
+ return *this;
+ }
+
+ AccelerationStructureGeometryTrianglesDataKHR &
+ setTransformData( VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR const & transformData_ ) VULKAN_HPP_NOEXCEPT
+ {
+ transformData = transformData_;
+ return *this;
+ }
+
+ operator VkAccelerationStructureGeometryTrianglesDataKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkAccelerationStructureGeometryTrianglesDataKHR *>( this );
+ }
+
+ operator VkAccelerationStructureGeometryTrianglesDataKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkAccelerationStructureGeometryTrianglesDataKHR *>( this );
+ }
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAccelerationStructureGeometryTrianglesDataKHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Format vertexFormat = VULKAN_HPP_NAMESPACE::Format::eUndefined;
+ VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR vertexData = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize vertexStride = {};
+ uint32_t maxVertex = {};
+ VULKAN_HPP_NAMESPACE::IndexType indexType = VULKAN_HPP_NAMESPACE::IndexType::eUint16;
+ VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR indexData = {};
+ VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR transformData = {};
+ };
+ static_assert( sizeof( AccelerationStructureGeometryTrianglesDataKHR ) ==
+ sizeof( VkAccelerationStructureGeometryTrianglesDataKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<AccelerationStructureGeometryTrianglesDataKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eAccelerationStructureGeometryTrianglesDataKHR>
+ {
+ using Type = AccelerationStructureGeometryTrianglesDataKHR;
+ };
+
+ struct AccelerationStructureGeometryAabbsDataKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eAccelerationStructureGeometryAabbsDataKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ AccelerationStructureGeometryAabbsDataKHR( VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR data_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize stride_ = {} ) VULKAN_HPP_NOEXCEPT
+ : data( data_ )
+ , stride( stride_ )
+ {}
+
+ AccelerationStructureGeometryAabbsDataKHR( AccelerationStructureGeometryAabbsDataKHR const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ AccelerationStructureGeometryAabbsDataKHR( VkAccelerationStructureGeometryAabbsDataKHR const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : AccelerationStructureGeometryAabbsDataKHR(
+ *reinterpret_cast<AccelerationStructureGeometryAabbsDataKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ AccelerationStructureGeometryAabbsDataKHR &
+ operator=( AccelerationStructureGeometryAabbsDataKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ AccelerationStructureGeometryAabbsDataKHR &
+ operator=( VkAccelerationStructureGeometryAabbsDataKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryAabbsDataKHR const *>( &rhs );
+ return *this;
+ }
+
+ AccelerationStructureGeometryAabbsDataKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ AccelerationStructureGeometryAabbsDataKHR &
+ setData( VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR const & data_ ) VULKAN_HPP_NOEXCEPT
+ {
+ data = data_;
+ return *this;
+ }
+
+ AccelerationStructureGeometryAabbsDataKHR &
+ setStride( VULKAN_HPP_NAMESPACE::DeviceSize stride_ ) VULKAN_HPP_NOEXCEPT
+ {
+ stride = stride_;
+ return *this;
+ }
+
+ operator VkAccelerationStructureGeometryAabbsDataKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkAccelerationStructureGeometryAabbsDataKHR *>( this );
+ }
+
+ operator VkAccelerationStructureGeometryAabbsDataKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkAccelerationStructureGeometryAabbsDataKHR *>( this );
+ }
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAccelerationStructureGeometryAabbsDataKHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR data = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize stride = {};
+ };
+ static_assert( sizeof( AccelerationStructureGeometryAabbsDataKHR ) ==
+ sizeof( VkAccelerationStructureGeometryAabbsDataKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<AccelerationStructureGeometryAabbsDataKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eAccelerationStructureGeometryAabbsDataKHR>
+ {
+ using Type = AccelerationStructureGeometryAabbsDataKHR;
+ };
+
+ struct AccelerationStructureGeometryInstancesDataKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eAccelerationStructureGeometryInstancesDataKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ AccelerationStructureGeometryInstancesDataKHR( VULKAN_HPP_NAMESPACE::Bool32 arrayOfPointers_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR data_ = {} )
+ VULKAN_HPP_NOEXCEPT
+ : arrayOfPointers( arrayOfPointers_ )
+ , data( data_ )
+ {}
+
+ AccelerationStructureGeometryInstancesDataKHR( AccelerationStructureGeometryInstancesDataKHR const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ AccelerationStructureGeometryInstancesDataKHR( VkAccelerationStructureGeometryInstancesDataKHR const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : AccelerationStructureGeometryInstancesDataKHR(
+ *reinterpret_cast<AccelerationStructureGeometryInstancesDataKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ AccelerationStructureGeometryInstancesDataKHR &
+ operator=( AccelerationStructureGeometryInstancesDataKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ AccelerationStructureGeometryInstancesDataKHR &
+ operator=( VkAccelerationStructureGeometryInstancesDataKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryInstancesDataKHR const *>( &rhs );
+ return *this;
+ }
+
+ AccelerationStructureGeometryInstancesDataKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ AccelerationStructureGeometryInstancesDataKHR &
+ setArrayOfPointers( VULKAN_HPP_NAMESPACE::Bool32 arrayOfPointers_ ) VULKAN_HPP_NOEXCEPT
+ {
+ arrayOfPointers = arrayOfPointers_;
+ return *this;
+ }
+
+ AccelerationStructureGeometryInstancesDataKHR &
+ setData( VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR const & data_ ) VULKAN_HPP_NOEXCEPT
+ {
+ data = data_;
+ return *this;
+ }
+
+ operator VkAccelerationStructureGeometryInstancesDataKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkAccelerationStructureGeometryInstancesDataKHR *>( this );
+ }
+
+ operator VkAccelerationStructureGeometryInstancesDataKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkAccelerationStructureGeometryInstancesDataKHR *>( this );
+ }
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAccelerationStructureGeometryInstancesDataKHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 arrayOfPointers = {};
+ VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR data = {};
+ };
+ static_assert( sizeof( AccelerationStructureGeometryInstancesDataKHR ) ==
+ sizeof( VkAccelerationStructureGeometryInstancesDataKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<AccelerationStructureGeometryInstancesDataKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eAccelerationStructureGeometryInstancesDataKHR>
+ {
+ using Type = AccelerationStructureGeometryInstancesDataKHR;
+ };
+
+ union AccelerationStructureGeometryDataKHR
+ {
+ AccelerationStructureGeometryDataKHR( VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryDataKHR const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ {
+ memcpy( static_cast<void *>( this ), &rhs, sizeof( VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryDataKHR ) );
+ }
+
+ AccelerationStructureGeometryDataKHR(
+ VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryTrianglesDataKHR triangles_ = {} )
+ : triangles( triangles_ )
+ {}
+
+ AccelerationStructureGeometryDataKHR( VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryAabbsDataKHR aabbs_ )
+ : aabbs( aabbs_ )
+ {}
+
+ AccelerationStructureGeometryDataKHR(
+ VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryInstancesDataKHR instances_ )
+ : instances( instances_ )
+ {}
+
+ AccelerationStructureGeometryDataKHR & setTriangles(
+ VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryTrianglesDataKHR const & triangles_ ) VULKAN_HPP_NOEXCEPT
+ {
+ triangles = triangles_;
+ return *this;
+ }
+
+ AccelerationStructureGeometryDataKHR &
+ setAabbs( VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryAabbsDataKHR const & aabbs_ ) VULKAN_HPP_NOEXCEPT
+ {
+ aabbs = aabbs_;
+ return *this;
+ }
+
+ AccelerationStructureGeometryDataKHR & setInstances(
+ VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryInstancesDataKHR const & instances_ ) VULKAN_HPP_NOEXCEPT
+ {
+ instances = instances_;
+ return *this;
+ }
+
+ VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryDataKHR &
+ operator=( VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryDataKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ memcpy( static_cast<void *>( this ), &rhs, sizeof( VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryDataKHR ) );
+ return *this;
+ }
+
+ operator VkAccelerationStructureGeometryDataKHR const &() const
+ {
+ return *reinterpret_cast<const VkAccelerationStructureGeometryDataKHR *>( this );
+ }
+
+ operator VkAccelerationStructureGeometryDataKHR &()
+ {
+ return *reinterpret_cast<VkAccelerationStructureGeometryDataKHR *>( this );
+ }
+
+#ifdef VULKAN_HPP_HAS_UNRESTRICTED_UNIONS
+ VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryTrianglesDataKHR triangles;
+ VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryAabbsDataKHR aabbs;
+ VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryInstancesDataKHR instances;
+#else
+ VkAccelerationStructureGeometryTrianglesDataKHR triangles;
+ VkAccelerationStructureGeometryAabbsDataKHR aabbs;
+ VkAccelerationStructureGeometryInstancesDataKHR instances;
+#endif /*VULKAN_HPP_HAS_UNRESTRICTED_UNIONS*/
+ };
+
+ struct AccelerationStructureGeometryKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eAccelerationStructureGeometryKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ AccelerationStructureGeometryKHR(
+ VULKAN_HPP_NAMESPACE::GeometryTypeKHR geometryType_ = VULKAN_HPP_NAMESPACE::GeometryTypeKHR::eTriangles,
+ VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryDataKHR geometry_ = {},
+ VULKAN_HPP_NAMESPACE::GeometryFlagsKHR flags_ = {} ) VULKAN_HPP_NOEXCEPT
+ : geometryType( geometryType_ )
+ , geometry( geometry_ )
+ , flags( flags_ )
+ {}
+
+ AccelerationStructureGeometryKHR( AccelerationStructureGeometryKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ AccelerationStructureGeometryKHR( VkAccelerationStructureGeometryKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : AccelerationStructureGeometryKHR( *reinterpret_cast<AccelerationStructureGeometryKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ AccelerationStructureGeometryKHR &
+ operator=( AccelerationStructureGeometryKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ AccelerationStructureGeometryKHR & operator=( VkAccelerationStructureGeometryKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryKHR const *>( &rhs );
+ return *this;
+ }
+
+ AccelerationStructureGeometryKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ AccelerationStructureGeometryKHR &
+ setGeometryType( VULKAN_HPP_NAMESPACE::GeometryTypeKHR geometryType_ ) VULKAN_HPP_NOEXCEPT
+ {
+ geometryType = geometryType_;
+ return *this;
+ }
+
+ AccelerationStructureGeometryKHR &
+ setGeometry( VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryDataKHR const & geometry_ ) VULKAN_HPP_NOEXCEPT
+ {
+ geometry = geometry_;
+ return *this;
+ }
+
+ AccelerationStructureGeometryKHR & setFlags( VULKAN_HPP_NAMESPACE::GeometryFlagsKHR flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ operator VkAccelerationStructureGeometryKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkAccelerationStructureGeometryKHR *>( this );
+ }
+
+ operator VkAccelerationStructureGeometryKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkAccelerationStructureGeometryKHR *>( this );
+ }
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAccelerationStructureGeometryKHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::GeometryTypeKHR geometryType = VULKAN_HPP_NAMESPACE::GeometryTypeKHR::eTriangles;
+ VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryDataKHR geometry = {};
+ VULKAN_HPP_NAMESPACE::GeometryFlagsKHR flags = {};
+ };
+ static_assert( sizeof( AccelerationStructureGeometryKHR ) == sizeof( VkAccelerationStructureGeometryKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<AccelerationStructureGeometryKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eAccelerationStructureGeometryKHR>
+ {
+ using Type = AccelerationStructureGeometryKHR;
+ };
+
+ union DeviceOrHostAddressKHR
+ {
+ DeviceOrHostAddressKHR( VULKAN_HPP_NAMESPACE::DeviceOrHostAddressKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ memcpy( static_cast<void *>( this ), &rhs, sizeof( VULKAN_HPP_NAMESPACE::DeviceOrHostAddressKHR ) );
+ }
+
+ DeviceOrHostAddressKHR( VULKAN_HPP_NAMESPACE::DeviceAddress deviceAddress_ = {} ) : deviceAddress( deviceAddress_ )
+ {}
+
+ DeviceOrHostAddressKHR( void * hostAddress_ ) : hostAddress( hostAddress_ ) {}
+
+ DeviceOrHostAddressKHR & setDeviceAddress( VULKAN_HPP_NAMESPACE::DeviceAddress deviceAddress_ ) VULKAN_HPP_NOEXCEPT
+ {
+ deviceAddress = deviceAddress_;
+ return *this;
+ }
+
+ DeviceOrHostAddressKHR & setHostAddress( void * hostAddress_ ) VULKAN_HPP_NOEXCEPT
+ {
+ hostAddress = hostAddress_;
+ return *this;
+ }
+
+ VULKAN_HPP_NAMESPACE::DeviceOrHostAddressKHR &
+ operator=( VULKAN_HPP_NAMESPACE::DeviceOrHostAddressKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ memcpy( static_cast<void *>( this ), &rhs, sizeof( VULKAN_HPP_NAMESPACE::DeviceOrHostAddressKHR ) );
+ return *this;
+ }
+
+ operator VkDeviceOrHostAddressKHR const &() const
+ {
+ return *reinterpret_cast<const VkDeviceOrHostAddressKHR *>( this );
+ }
+
+ operator VkDeviceOrHostAddressKHR &()
+ {
+ return *reinterpret_cast<VkDeviceOrHostAddressKHR *>( this );
+ }
+
+#ifdef VULKAN_HPP_HAS_UNRESTRICTED_UNIONS
+ VULKAN_HPP_NAMESPACE::DeviceAddress deviceAddress;
+ void * hostAddress;
+#else
+ VkDeviceAddress deviceAddress;
+ void * hostAddress;
+#endif /*VULKAN_HPP_HAS_UNRESTRICTED_UNIONS*/
+ };
+
+ struct AccelerationStructureBuildGeometryInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eAccelerationStructureBuildGeometryInfoKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ AccelerationStructureBuildGeometryInfoKHR(
+ VULKAN_HPP_NAMESPACE::AccelerationStructureTypeKHR type_ =
+ VULKAN_HPP_NAMESPACE::AccelerationStructureTypeKHR::eTopLevel,
+ VULKAN_HPP_NAMESPACE::BuildAccelerationStructureFlagsKHR flags_ = {},
+ VULKAN_HPP_NAMESPACE::BuildAccelerationStructureModeKHR mode_ =
+ VULKAN_HPP_NAMESPACE::BuildAccelerationStructureModeKHR::eBuild,
+ VULKAN_HPP_NAMESPACE::AccelerationStructureKHR srcAccelerationStructure_ = {},
+ VULKAN_HPP_NAMESPACE::AccelerationStructureKHR dstAccelerationStructure_ = {},
+ uint32_t geometryCount_ = {},
+ const VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryKHR * pGeometries_ = {},
+ const VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryKHR * const * ppGeometries_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceOrHostAddressKHR scratchData_ = {} ) VULKAN_HPP_NOEXCEPT
+ : type( type_ )
+ , flags( flags_ )
+ , mode( mode_ )
+ , srcAccelerationStructure( srcAccelerationStructure_ )
+ , dstAccelerationStructure( dstAccelerationStructure_ )
+ , geometryCount( geometryCount_ )
+ , pGeometries( pGeometries_ )
+ , ppGeometries( ppGeometries_ )
+ , scratchData( scratchData_ )
+ {}
+
+ AccelerationStructureBuildGeometryInfoKHR( AccelerationStructureBuildGeometryInfoKHR const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ AccelerationStructureBuildGeometryInfoKHR( VkAccelerationStructureBuildGeometryInfoKHR const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : AccelerationStructureBuildGeometryInfoKHR(
+ *reinterpret_cast<AccelerationStructureBuildGeometryInfoKHR const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ AccelerationStructureBuildGeometryInfoKHR(
+ VULKAN_HPP_NAMESPACE::AccelerationStructureTypeKHR type_,
+ VULKAN_HPP_NAMESPACE::BuildAccelerationStructureFlagsKHR flags_,
+ VULKAN_HPP_NAMESPACE::BuildAccelerationStructureModeKHR mode_,
+ VULKAN_HPP_NAMESPACE::AccelerationStructureKHR srcAccelerationStructure_,
+ VULKAN_HPP_NAMESPACE::AccelerationStructureKHR dstAccelerationStructure_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<
+ const VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryKHR> const & geometries_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<
+ const VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryKHR * const> const & pGeometries_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceOrHostAddressKHR scratchData_ = {} )
+ : type( type_ )
+ , flags( flags_ )
+ , mode( mode_ )
+ , srcAccelerationStructure( srcAccelerationStructure_ )
+ , dstAccelerationStructure( dstAccelerationStructure_ )
+ , geometryCount( static_cast<uint32_t>( !geometries_.empty() ? geometries_.size() : pGeometries_.size() ) )
+ , pGeometries( geometries_.data() )
+ , ppGeometries( pGeometries_.data() )
+ , scratchData( scratchData_ )
+ {
+# ifdef VULKAN_HPP_NO_EXCEPTIONS
+ VULKAN_HPP_ASSERT( ( !geometries_.empty() + !pGeometries_.empty() ) <= 1 );
+# else
+ if ( 1 < ( !geometries_.empty() + !pGeometries_.empty() ) )
+ {
+ throw LogicError(
+ VULKAN_HPP_NAMESPACE_STRING
+ "::AccelerationStructureBuildGeometryInfoKHR::AccelerationStructureBuildGeometryInfoKHR: 1 < ( !geometries_.empty() + !pGeometries_.empty() )" );
+ }
+# endif /*VULKAN_HPP_NO_EXCEPTIONS*/
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ AccelerationStructureBuildGeometryInfoKHR &
+ operator=( AccelerationStructureBuildGeometryInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ AccelerationStructureBuildGeometryInfoKHR &
+ operator=( VkAccelerationStructureBuildGeometryInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AccelerationStructureBuildGeometryInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ AccelerationStructureBuildGeometryInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ AccelerationStructureBuildGeometryInfoKHR &
+ setType( VULKAN_HPP_NAMESPACE::AccelerationStructureTypeKHR type_ ) VULKAN_HPP_NOEXCEPT
+ {
+ type = type_;
+ return *this;
+ }
+
+ AccelerationStructureBuildGeometryInfoKHR &
+ setFlags( VULKAN_HPP_NAMESPACE::BuildAccelerationStructureFlagsKHR flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ AccelerationStructureBuildGeometryInfoKHR &
+ setMode( VULKAN_HPP_NAMESPACE::BuildAccelerationStructureModeKHR mode_ ) VULKAN_HPP_NOEXCEPT
+ {
+ mode = mode_;
+ return *this;
+ }
+
+ AccelerationStructureBuildGeometryInfoKHR & setSrcAccelerationStructure(
+ VULKAN_HPP_NAMESPACE::AccelerationStructureKHR srcAccelerationStructure_ ) VULKAN_HPP_NOEXCEPT
+ {
+ srcAccelerationStructure = srcAccelerationStructure_;
+ return *this;
+ }
+
+ AccelerationStructureBuildGeometryInfoKHR & setDstAccelerationStructure(
+ VULKAN_HPP_NAMESPACE::AccelerationStructureKHR dstAccelerationStructure_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstAccelerationStructure = dstAccelerationStructure_;
+ return *this;
+ }
+
+ AccelerationStructureBuildGeometryInfoKHR & setGeometryCount( uint32_t geometryCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ geometryCount = geometryCount_;
+ return *this;
+ }
+
+ AccelerationStructureBuildGeometryInfoKHR &
+ setPGeometries( const VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryKHR * pGeometries_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pGeometries = pGeometries_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ AccelerationStructureBuildGeometryInfoKHR & setGeometries(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<
+ const VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryKHR> const & geometries_ ) VULKAN_HPP_NOEXCEPT
+ {
+ geometryCount = static_cast<uint32_t>( geometries_.size() );
+ pGeometries = geometries_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ AccelerationStructureBuildGeometryInfoKHR & setPpGeometries(
+ const VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryKHR * const * ppGeometries_ ) VULKAN_HPP_NOEXCEPT
+ {
+ ppGeometries = ppGeometries_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ AccelerationStructureBuildGeometryInfoKHR & setPGeometries(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<
+ const VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryKHR * const> const & pGeometries_ ) VULKAN_HPP_NOEXCEPT
+ {
+ geometryCount = static_cast<uint32_t>( pGeometries_.size() );
+ ppGeometries = pGeometries_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ AccelerationStructureBuildGeometryInfoKHR &
+ setScratchData( VULKAN_HPP_NAMESPACE::DeviceOrHostAddressKHR const & scratchData_ ) VULKAN_HPP_NOEXCEPT
+ {
+ scratchData = scratchData_;
+ return *this;
+ }
+
+ operator VkAccelerationStructureBuildGeometryInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkAccelerationStructureBuildGeometryInfoKHR *>( this );
+ }
+
+ operator VkAccelerationStructureBuildGeometryInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkAccelerationStructureBuildGeometryInfoKHR *>( this );
+ }
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAccelerationStructureBuildGeometryInfoKHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::AccelerationStructureTypeKHR type =
+ VULKAN_HPP_NAMESPACE::AccelerationStructureTypeKHR::eTopLevel;
+ VULKAN_HPP_NAMESPACE::BuildAccelerationStructureFlagsKHR flags = {};
+ VULKAN_HPP_NAMESPACE::BuildAccelerationStructureModeKHR mode =
+ VULKAN_HPP_NAMESPACE::BuildAccelerationStructureModeKHR::eBuild;
+ VULKAN_HPP_NAMESPACE::AccelerationStructureKHR srcAccelerationStructure = {};
+ VULKAN_HPP_NAMESPACE::AccelerationStructureKHR dstAccelerationStructure = {};
+ uint32_t geometryCount = {};
+ const VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryKHR * pGeometries = {};
+ const VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryKHR * const * ppGeometries = {};
+ VULKAN_HPP_NAMESPACE::DeviceOrHostAddressKHR scratchData = {};
+ };
+ static_assert( sizeof( AccelerationStructureBuildGeometryInfoKHR ) ==
+ sizeof( VkAccelerationStructureBuildGeometryInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<AccelerationStructureBuildGeometryInfoKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eAccelerationStructureBuildGeometryInfoKHR>
+ {
+ using Type = AccelerationStructureBuildGeometryInfoKHR;
+ };
+
+ struct AccelerationStructureBuildRangeInfoKHR
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR AccelerationStructureBuildRangeInfoKHR( uint32_t primitiveCount_ = {},
+ uint32_t primitiveOffset_ = {},
+ uint32_t firstVertex_ = {},
+ uint32_t transformOffset_ = {} ) VULKAN_HPP_NOEXCEPT
+ : primitiveCount( primitiveCount_ )
+ , primitiveOffset( primitiveOffset_ )
+ , firstVertex( firstVertex_ )
+ , transformOffset( transformOffset_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR AccelerationStructureBuildRangeInfoKHR( AccelerationStructureBuildRangeInfoKHR const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ AccelerationStructureBuildRangeInfoKHR( VkAccelerationStructureBuildRangeInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : AccelerationStructureBuildRangeInfoKHR(
+ *reinterpret_cast<AccelerationStructureBuildRangeInfoKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 AccelerationStructureBuildRangeInfoKHR &
+ operator=( AccelerationStructureBuildRangeInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ AccelerationStructureBuildRangeInfoKHR &
+ operator=( VkAccelerationStructureBuildRangeInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AccelerationStructureBuildRangeInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ AccelerationStructureBuildRangeInfoKHR & setPrimitiveCount( uint32_t primitiveCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ primitiveCount = primitiveCount_;
+ return *this;
+ }
+
+ AccelerationStructureBuildRangeInfoKHR & setPrimitiveOffset( uint32_t primitiveOffset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ primitiveOffset = primitiveOffset_;
+ return *this;
+ }
+
+ AccelerationStructureBuildRangeInfoKHR & setFirstVertex( uint32_t firstVertex_ ) VULKAN_HPP_NOEXCEPT
+ {
+ firstVertex = firstVertex_;
+ return *this;
+ }
+
+ AccelerationStructureBuildRangeInfoKHR & setTransformOffset( uint32_t transformOffset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ transformOffset = transformOffset_;
+ return *this;
+ }
+
+ operator VkAccelerationStructureBuildRangeInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkAccelerationStructureBuildRangeInfoKHR *>( this );
+ }
+
+ operator VkAccelerationStructureBuildRangeInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkAccelerationStructureBuildRangeInfoKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( AccelerationStructureBuildRangeInfoKHR const & ) const = default;
+#else
+ bool operator==( AccelerationStructureBuildRangeInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( primitiveCount == rhs.primitiveCount ) && ( primitiveOffset == rhs.primitiveOffset ) &&
+ ( firstVertex == rhs.firstVertex ) && ( transformOffset == rhs.transformOffset );
+ }
+
+ bool operator!=( AccelerationStructureBuildRangeInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ uint32_t primitiveCount = {};
+ uint32_t primitiveOffset = {};
+ uint32_t firstVertex = {};
+ uint32_t transformOffset = {};
+ };
+ static_assert( sizeof( AccelerationStructureBuildRangeInfoKHR ) == sizeof( VkAccelerationStructureBuildRangeInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<AccelerationStructureBuildRangeInfoKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ struct AccelerationStructureBuildSizesInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eAccelerationStructureBuildSizesInfoKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR AccelerationStructureBuildSizesInfoKHR(
+ VULKAN_HPP_NAMESPACE::DeviceSize accelerationStructureSize_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize updateScratchSize_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize buildScratchSize_ = {} ) VULKAN_HPP_NOEXCEPT
+ : accelerationStructureSize( accelerationStructureSize_ )
+ , updateScratchSize( updateScratchSize_ )
+ , buildScratchSize( buildScratchSize_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR AccelerationStructureBuildSizesInfoKHR( AccelerationStructureBuildSizesInfoKHR const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ AccelerationStructureBuildSizesInfoKHR( VkAccelerationStructureBuildSizesInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : AccelerationStructureBuildSizesInfoKHR(
+ *reinterpret_cast<AccelerationStructureBuildSizesInfoKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 AccelerationStructureBuildSizesInfoKHR &
+ operator=( AccelerationStructureBuildSizesInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ AccelerationStructureBuildSizesInfoKHR &
+ operator=( VkAccelerationStructureBuildSizesInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AccelerationStructureBuildSizesInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ AccelerationStructureBuildSizesInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ AccelerationStructureBuildSizesInfoKHR &
+ setAccelerationStructureSize( VULKAN_HPP_NAMESPACE::DeviceSize accelerationStructureSize_ ) VULKAN_HPP_NOEXCEPT
+ {
+ accelerationStructureSize = accelerationStructureSize_;
+ return *this;
+ }
+
+ AccelerationStructureBuildSizesInfoKHR &
+ setUpdateScratchSize( VULKAN_HPP_NAMESPACE::DeviceSize updateScratchSize_ ) VULKAN_HPP_NOEXCEPT
+ {
+ updateScratchSize = updateScratchSize_;
+ return *this;
+ }
+
+ AccelerationStructureBuildSizesInfoKHR &
+ setBuildScratchSize( VULKAN_HPP_NAMESPACE::DeviceSize buildScratchSize_ ) VULKAN_HPP_NOEXCEPT
+ {
+ buildScratchSize = buildScratchSize_;
+ return *this;
+ }
+
+ operator VkAccelerationStructureBuildSizesInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkAccelerationStructureBuildSizesInfoKHR *>( this );
+ }
+
+ operator VkAccelerationStructureBuildSizesInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkAccelerationStructureBuildSizesInfoKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( AccelerationStructureBuildSizesInfoKHR const & ) const = default;
+#else
+ bool operator==( AccelerationStructureBuildSizesInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( accelerationStructureSize == rhs.accelerationStructureSize ) &&
+ ( updateScratchSize == rhs.updateScratchSize ) && ( buildScratchSize == rhs.buildScratchSize );
+ }
+
+ bool operator!=( AccelerationStructureBuildSizesInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAccelerationStructureBuildSizesInfoKHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize accelerationStructureSize = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize updateScratchSize = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize buildScratchSize = {};
+ };
+ static_assert( sizeof( AccelerationStructureBuildSizesInfoKHR ) == sizeof( VkAccelerationStructureBuildSizesInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<AccelerationStructureBuildSizesInfoKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eAccelerationStructureBuildSizesInfoKHR>
+ {
+ using Type = AccelerationStructureBuildSizesInfoKHR;
+ };
+
+ struct AccelerationStructureCreateInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eAccelerationStructureCreateInfoKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ AccelerationStructureCreateInfoKHR( VULKAN_HPP_NAMESPACE::AccelerationStructureCreateFlagsKHR createFlags_ = {},
+ VULKAN_HPP_NAMESPACE::Buffer buffer_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize offset_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize size_ = {},
+ VULKAN_HPP_NAMESPACE::AccelerationStructureTypeKHR type_ =
+ VULKAN_HPP_NAMESPACE::AccelerationStructureTypeKHR::eTopLevel,
+ VULKAN_HPP_NAMESPACE::DeviceAddress deviceAddress_ = {} ) VULKAN_HPP_NOEXCEPT
+ : createFlags( createFlags_ )
+ , buffer( buffer_ )
+ , offset( offset_ )
+ , size( size_ )
+ , type( type_ )
+ , deviceAddress( deviceAddress_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR AccelerationStructureCreateInfoKHR( AccelerationStructureCreateInfoKHR const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ AccelerationStructureCreateInfoKHR( VkAccelerationStructureCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : AccelerationStructureCreateInfoKHR( *reinterpret_cast<AccelerationStructureCreateInfoKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 AccelerationStructureCreateInfoKHR &
+ operator=( AccelerationStructureCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ AccelerationStructureCreateInfoKHR &
+ operator=( VkAccelerationStructureCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AccelerationStructureCreateInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ AccelerationStructureCreateInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ AccelerationStructureCreateInfoKHR &
+ setCreateFlags( VULKAN_HPP_NAMESPACE::AccelerationStructureCreateFlagsKHR createFlags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ createFlags = createFlags_;
+ return *this;
+ }
+
+ AccelerationStructureCreateInfoKHR & setBuffer( VULKAN_HPP_NAMESPACE::Buffer buffer_ ) VULKAN_HPP_NOEXCEPT
+ {
+ buffer = buffer_;
+ return *this;
+ }
+
+ AccelerationStructureCreateInfoKHR & setOffset( VULKAN_HPP_NAMESPACE::DeviceSize offset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ offset = offset_;
+ return *this;
+ }
+
+ AccelerationStructureCreateInfoKHR & setSize( VULKAN_HPP_NAMESPACE::DeviceSize size_ ) VULKAN_HPP_NOEXCEPT
+ {
+ size = size_;
+ return *this;
+ }
+
+ AccelerationStructureCreateInfoKHR &
+ setType( VULKAN_HPP_NAMESPACE::AccelerationStructureTypeKHR type_ ) VULKAN_HPP_NOEXCEPT
+ {
+ type = type_;
+ return *this;
+ }
+
+ AccelerationStructureCreateInfoKHR &
+ setDeviceAddress( VULKAN_HPP_NAMESPACE::DeviceAddress deviceAddress_ ) VULKAN_HPP_NOEXCEPT
+ {
+ deviceAddress = deviceAddress_;
+ return *this;
+ }
+
+ operator VkAccelerationStructureCreateInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkAccelerationStructureCreateInfoKHR *>( this );
+ }
+
+ operator VkAccelerationStructureCreateInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkAccelerationStructureCreateInfoKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( AccelerationStructureCreateInfoKHR const & ) const = default;
+#else
+ bool operator==( AccelerationStructureCreateInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( createFlags == rhs.createFlags ) &&
+ ( buffer == rhs.buffer ) && ( offset == rhs.offset ) && ( size == rhs.size ) && ( type == rhs.type ) &&
+ ( deviceAddress == rhs.deviceAddress );
+ }
+
+ bool operator!=( AccelerationStructureCreateInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAccelerationStructureCreateInfoKHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::AccelerationStructureCreateFlagsKHR createFlags = {};
+ VULKAN_HPP_NAMESPACE::Buffer buffer = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize offset = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize size = {};
+ VULKAN_HPP_NAMESPACE::AccelerationStructureTypeKHR type =
+ VULKAN_HPP_NAMESPACE::AccelerationStructureTypeKHR::eTopLevel;
+ VULKAN_HPP_NAMESPACE::DeviceAddress deviceAddress = {};
+ };
+ static_assert( sizeof( AccelerationStructureCreateInfoKHR ) == sizeof( VkAccelerationStructureCreateInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<AccelerationStructureCreateInfoKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eAccelerationStructureCreateInfoKHR>
+ {
+ using Type = AccelerationStructureCreateInfoKHR;
+ };
+
+ struct GeometryTrianglesNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eGeometryTrianglesNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ GeometryTrianglesNV( VULKAN_HPP_NAMESPACE::Buffer vertexData_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize vertexOffset_ = {},
+ uint32_t vertexCount_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize vertexStride_ = {},
+ VULKAN_HPP_NAMESPACE::Format vertexFormat_ = VULKAN_HPP_NAMESPACE::Format::eUndefined,
+ VULKAN_HPP_NAMESPACE::Buffer indexData_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize indexOffset_ = {},
+ uint32_t indexCount_ = {},
+ VULKAN_HPP_NAMESPACE::IndexType indexType_ = VULKAN_HPP_NAMESPACE::IndexType::eUint16,
+ VULKAN_HPP_NAMESPACE::Buffer transformData_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize transformOffset_ = {} ) VULKAN_HPP_NOEXCEPT
+ : vertexData( vertexData_ )
+ , vertexOffset( vertexOffset_ )
+ , vertexCount( vertexCount_ )
+ , vertexStride( vertexStride_ )
+ , vertexFormat( vertexFormat_ )
+ , indexData( indexData_ )
+ , indexOffset( indexOffset_ )
+ , indexCount( indexCount_ )
+ , indexType( indexType_ )
+ , transformData( transformData_ )
+ , transformOffset( transformOffset_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR GeometryTrianglesNV( GeometryTrianglesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ GeometryTrianglesNV( VkGeometryTrianglesNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ : GeometryTrianglesNV( *reinterpret_cast<GeometryTrianglesNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 GeometryTrianglesNV &
+ operator=( GeometryTrianglesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ GeometryTrianglesNV & operator=( VkGeometryTrianglesNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::GeometryTrianglesNV const *>( &rhs );
+ return *this;
+ }
+
+ GeometryTrianglesNV & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ GeometryTrianglesNV & setVertexData( VULKAN_HPP_NAMESPACE::Buffer vertexData_ ) VULKAN_HPP_NOEXCEPT
+ {
+ vertexData = vertexData_;
+ return *this;
+ }
+
+ GeometryTrianglesNV & setVertexOffset( VULKAN_HPP_NAMESPACE::DeviceSize vertexOffset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ vertexOffset = vertexOffset_;
+ return *this;
+ }
+
+ GeometryTrianglesNV & setVertexCount( uint32_t vertexCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ vertexCount = vertexCount_;
+ return *this;
+ }
+
+ GeometryTrianglesNV & setVertexStride( VULKAN_HPP_NAMESPACE::DeviceSize vertexStride_ ) VULKAN_HPP_NOEXCEPT
+ {
+ vertexStride = vertexStride_;
+ return *this;
+ }
+
+ GeometryTrianglesNV & setVertexFormat( VULKAN_HPP_NAMESPACE::Format vertexFormat_ ) VULKAN_HPP_NOEXCEPT
+ {
+ vertexFormat = vertexFormat_;
+ return *this;
+ }
+
+ GeometryTrianglesNV & setIndexData( VULKAN_HPP_NAMESPACE::Buffer indexData_ ) VULKAN_HPP_NOEXCEPT
+ {
+ indexData = indexData_;
+ return *this;
+ }
+
+ GeometryTrianglesNV & setIndexOffset( VULKAN_HPP_NAMESPACE::DeviceSize indexOffset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ indexOffset = indexOffset_;
+ return *this;
+ }
+
+ GeometryTrianglesNV & setIndexCount( uint32_t indexCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ indexCount = indexCount_;
+ return *this;
+ }
+
+ GeometryTrianglesNV & setIndexType( VULKAN_HPP_NAMESPACE::IndexType indexType_ ) VULKAN_HPP_NOEXCEPT
+ {
+ indexType = indexType_;
+ return *this;
+ }
+
+ GeometryTrianglesNV & setTransformData( VULKAN_HPP_NAMESPACE::Buffer transformData_ ) VULKAN_HPP_NOEXCEPT
+ {
+ transformData = transformData_;
+ return *this;
+ }
+
+ GeometryTrianglesNV & setTransformOffset( VULKAN_HPP_NAMESPACE::DeviceSize transformOffset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ transformOffset = transformOffset_;
+ return *this;
+ }
+
+ operator VkGeometryTrianglesNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkGeometryTrianglesNV *>( this );
+ }
+
+ operator VkGeometryTrianglesNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkGeometryTrianglesNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( GeometryTrianglesNV const & ) const = default;
+#else
+ bool operator==( GeometryTrianglesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( vertexData == rhs.vertexData ) &&
+ ( vertexOffset == rhs.vertexOffset ) && ( vertexCount == rhs.vertexCount ) &&
+ ( vertexStride == rhs.vertexStride ) && ( vertexFormat == rhs.vertexFormat ) &&
+ ( indexData == rhs.indexData ) && ( indexOffset == rhs.indexOffset ) && ( indexCount == rhs.indexCount ) &&
+ ( indexType == rhs.indexType ) && ( transformData == rhs.transformData ) &&
+ ( transformOffset == rhs.transformOffset );
+ }
+
+ bool operator!=( GeometryTrianglesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eGeometryTrianglesNV;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Buffer vertexData = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize vertexOffset = {};
+ uint32_t vertexCount = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize vertexStride = {};
+ VULKAN_HPP_NAMESPACE::Format vertexFormat = VULKAN_HPP_NAMESPACE::Format::eUndefined;
+ VULKAN_HPP_NAMESPACE::Buffer indexData = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize indexOffset = {};
+ uint32_t indexCount = {};
+ VULKAN_HPP_NAMESPACE::IndexType indexType = VULKAN_HPP_NAMESPACE::IndexType::eUint16;
+ VULKAN_HPP_NAMESPACE::Buffer transformData = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize transformOffset = {};
+ };
+ static_assert( sizeof( GeometryTrianglesNV ) == sizeof( VkGeometryTrianglesNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<GeometryTrianglesNV>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eGeometryTrianglesNV>
+ {
+ using Type = GeometryTrianglesNV;
+ };
+
+ struct GeometryAABBNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eGeometryAabbNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR GeometryAABBNV( VULKAN_HPP_NAMESPACE::Buffer aabbData_ = {},
+ uint32_t numAABBs_ = {},
+ uint32_t stride_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize offset_ = {} ) VULKAN_HPP_NOEXCEPT
+ : aabbData( aabbData_ )
+ , numAABBs( numAABBs_ )
+ , stride( stride_ )
+ , offset( offset_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR GeometryAABBNV( GeometryAABBNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ GeometryAABBNV( VkGeometryAABBNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ : GeometryAABBNV( *reinterpret_cast<GeometryAABBNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 GeometryAABBNV & operator=( GeometryAABBNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ GeometryAABBNV & operator=( VkGeometryAABBNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::GeometryAABBNV const *>( &rhs );
+ return *this;
+ }
+
+ GeometryAABBNV & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ GeometryAABBNV & setAabbData( VULKAN_HPP_NAMESPACE::Buffer aabbData_ ) VULKAN_HPP_NOEXCEPT
+ {
+ aabbData = aabbData_;
+ return *this;
+ }
+
+ GeometryAABBNV & setNumAABBs( uint32_t numAABBs_ ) VULKAN_HPP_NOEXCEPT
+ {
+ numAABBs = numAABBs_;
+ return *this;
+ }
+
+ GeometryAABBNV & setStride( uint32_t stride_ ) VULKAN_HPP_NOEXCEPT
+ {
+ stride = stride_;
+ return *this;
+ }
+
+ GeometryAABBNV & setOffset( VULKAN_HPP_NAMESPACE::DeviceSize offset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ offset = offset_;
+ return *this;
+ }
+
+ operator VkGeometryAABBNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkGeometryAABBNV *>( this );
+ }
+
+ operator VkGeometryAABBNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkGeometryAABBNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( GeometryAABBNV const & ) const = default;
+#else
+ bool operator==( GeometryAABBNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( aabbData == rhs.aabbData ) &&
+ ( numAABBs == rhs.numAABBs ) && ( stride == rhs.stride ) && ( offset == rhs.offset );
+ }
+
+ bool operator!=( GeometryAABBNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eGeometryAabbNV;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Buffer aabbData = {};
+ uint32_t numAABBs = {};
+ uint32_t stride = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize offset = {};
+ };
+ static_assert( sizeof( GeometryAABBNV ) == sizeof( VkGeometryAABBNV ), "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<GeometryAABBNV>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eGeometryAabbNV>
+ {
+ using Type = GeometryAABBNV;
+ };
+
+ struct GeometryDataNV
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR GeometryDataNV( VULKAN_HPP_NAMESPACE::GeometryTrianglesNV triangles_ = {},
+ VULKAN_HPP_NAMESPACE::GeometryAABBNV aabbs_ = {} ) VULKAN_HPP_NOEXCEPT
+ : triangles( triangles_ )
+ , aabbs( aabbs_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR GeometryDataNV( GeometryDataNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ GeometryDataNV( VkGeometryDataNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ : GeometryDataNV( *reinterpret_cast<GeometryDataNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 GeometryDataNV & operator=( GeometryDataNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ GeometryDataNV & operator=( VkGeometryDataNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::GeometryDataNV const *>( &rhs );
+ return *this;
+ }
+
+ GeometryDataNV & setTriangles( VULKAN_HPP_NAMESPACE::GeometryTrianglesNV const & triangles_ ) VULKAN_HPP_NOEXCEPT
+ {
+ triangles = triangles_;
+ return *this;
+ }
+
+ GeometryDataNV & setAabbs( VULKAN_HPP_NAMESPACE::GeometryAABBNV const & aabbs_ ) VULKAN_HPP_NOEXCEPT
+ {
+ aabbs = aabbs_;
+ return *this;
+ }
+
+ operator VkGeometryDataNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkGeometryDataNV *>( this );
+ }
+
+ operator VkGeometryDataNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkGeometryDataNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( GeometryDataNV const & ) const = default;
+#else
+ bool operator==( GeometryDataNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( triangles == rhs.triangles ) && ( aabbs == rhs.aabbs );
+ }
+
+ bool operator!=( GeometryDataNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::GeometryTrianglesNV triangles = {};
+ VULKAN_HPP_NAMESPACE::GeometryAABBNV aabbs = {};
+ };
+ static_assert( sizeof( GeometryDataNV ) == sizeof( VkGeometryDataNV ), "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<GeometryDataNV>::value, "struct wrapper is not a standard layout!" );
+
+ struct GeometryNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eGeometryNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR GeometryNV(
+ VULKAN_HPP_NAMESPACE::GeometryTypeKHR geometryType_ = VULKAN_HPP_NAMESPACE::GeometryTypeKHR::eTriangles,
+ VULKAN_HPP_NAMESPACE::GeometryDataNV geometry_ = {},
+ VULKAN_HPP_NAMESPACE::GeometryFlagsKHR flags_ = {} ) VULKAN_HPP_NOEXCEPT
+ : geometryType( geometryType_ )
+ , geometry( geometry_ )
+ , flags( flags_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR GeometryNV( GeometryNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ GeometryNV( VkGeometryNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ : GeometryNV( *reinterpret_cast<GeometryNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 GeometryNV & operator=( GeometryNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ GeometryNV & operator=( VkGeometryNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::GeometryNV const *>( &rhs );
+ return *this;
+ }
+
+ GeometryNV & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ GeometryNV & setGeometryType( VULKAN_HPP_NAMESPACE::GeometryTypeKHR geometryType_ ) VULKAN_HPP_NOEXCEPT
+ {
+ geometryType = geometryType_;
+ return *this;
+ }
+
+ GeometryNV & setGeometry( VULKAN_HPP_NAMESPACE::GeometryDataNV const & geometry_ ) VULKAN_HPP_NOEXCEPT
+ {
+ geometry = geometry_;
+ return *this;
+ }
+
+ GeometryNV & setFlags( VULKAN_HPP_NAMESPACE::GeometryFlagsKHR flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ operator VkGeometryNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkGeometryNV *>( this );
+ }
+
+ operator VkGeometryNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkGeometryNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( GeometryNV const & ) const = default;
+#else
+ bool operator==( GeometryNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( geometryType == rhs.geometryType ) &&
+ ( geometry == rhs.geometry ) && ( flags == rhs.flags );
+ }
+
+ bool operator!=( GeometryNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eGeometryNV;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::GeometryTypeKHR geometryType = VULKAN_HPP_NAMESPACE::GeometryTypeKHR::eTriangles;
+ VULKAN_HPP_NAMESPACE::GeometryDataNV geometry = {};
+ VULKAN_HPP_NAMESPACE::GeometryFlagsKHR flags = {};
+ };
+ static_assert( sizeof( GeometryNV ) == sizeof( VkGeometryNV ), "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<GeometryNV>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eGeometryNV>
+ {
+ using Type = GeometryNV;
+ };
+
+ struct AccelerationStructureInfoNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eAccelerationStructureInfoNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ AccelerationStructureInfoNV( VULKAN_HPP_NAMESPACE::AccelerationStructureTypeNV type_ = {},
+ VULKAN_HPP_NAMESPACE::BuildAccelerationStructureFlagsNV flags_ = {},
+ uint32_t instanceCount_ = {},
+ uint32_t geometryCount_ = {},
+ const VULKAN_HPP_NAMESPACE::GeometryNV * pGeometries_ = {} ) VULKAN_HPP_NOEXCEPT
+ : type( type_ )
+ , flags( flags_ )
+ , instanceCount( instanceCount_ )
+ , geometryCount( geometryCount_ )
+ , pGeometries( pGeometries_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ AccelerationStructureInfoNV( AccelerationStructureInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ AccelerationStructureInfoNV( VkAccelerationStructureInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ : AccelerationStructureInfoNV( *reinterpret_cast<AccelerationStructureInfoNV const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ AccelerationStructureInfoNV(
+ VULKAN_HPP_NAMESPACE::AccelerationStructureTypeNV type_,
+ VULKAN_HPP_NAMESPACE::BuildAccelerationStructureFlagsNV flags_,
+ uint32_t instanceCount_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::GeometryNV> const & geometries_ )
+ : type( type_ )
+ , flags( flags_ )
+ , instanceCount( instanceCount_ )
+ , geometryCount( static_cast<uint32_t>( geometries_.size() ) )
+ , pGeometries( geometries_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 AccelerationStructureInfoNV &
+ operator=( AccelerationStructureInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ AccelerationStructureInfoNV & operator=( VkAccelerationStructureInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AccelerationStructureInfoNV const *>( &rhs );
+ return *this;
+ }
+
+ AccelerationStructureInfoNV & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ AccelerationStructureInfoNV & setType( VULKAN_HPP_NAMESPACE::AccelerationStructureTypeNV type_ ) VULKAN_HPP_NOEXCEPT
+ {
+ type = type_;
+ return *this;
+ }
+
+ AccelerationStructureInfoNV &
+ setFlags( VULKAN_HPP_NAMESPACE::BuildAccelerationStructureFlagsNV flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ AccelerationStructureInfoNV & setInstanceCount( uint32_t instanceCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ instanceCount = instanceCount_;
+ return *this;
+ }
+
+ AccelerationStructureInfoNV & setGeometryCount( uint32_t geometryCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ geometryCount = geometryCount_;
+ return *this;
+ }
+
+ AccelerationStructureInfoNV &
+ setPGeometries( const VULKAN_HPP_NAMESPACE::GeometryNV * pGeometries_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pGeometries = pGeometries_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ AccelerationStructureInfoNV & setGeometries(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::GeometryNV> const & geometries_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ geometryCount = static_cast<uint32_t>( geometries_.size() );
+ pGeometries = geometries_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkAccelerationStructureInfoNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkAccelerationStructureInfoNV *>( this );
+ }
+
+ operator VkAccelerationStructureInfoNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkAccelerationStructureInfoNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( AccelerationStructureInfoNV const & ) const = default;
+#else
+ bool operator==( AccelerationStructureInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( type == rhs.type ) && ( flags == rhs.flags ) &&
+ ( instanceCount == rhs.instanceCount ) && ( geometryCount == rhs.geometryCount ) &&
+ ( pGeometries == rhs.pGeometries );
+ }
+
+ bool operator!=( AccelerationStructureInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAccelerationStructureInfoNV;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::AccelerationStructureTypeNV type = {};
+ VULKAN_HPP_NAMESPACE::BuildAccelerationStructureFlagsNV flags = {};
+ uint32_t instanceCount = {};
+ uint32_t geometryCount = {};
+ const VULKAN_HPP_NAMESPACE::GeometryNV * pGeometries = {};
+ };
+ static_assert( sizeof( AccelerationStructureInfoNV ) == sizeof( VkAccelerationStructureInfoNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<AccelerationStructureInfoNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eAccelerationStructureInfoNV>
+ {
+ using Type = AccelerationStructureInfoNV;
+ };
+
+ struct AccelerationStructureCreateInfoNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eAccelerationStructureCreateInfoNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR AccelerationStructureCreateInfoNV(
+ VULKAN_HPP_NAMESPACE::DeviceSize compactedSize_ = {},
+ VULKAN_HPP_NAMESPACE::AccelerationStructureInfoNV info_ = {} ) VULKAN_HPP_NOEXCEPT
+ : compactedSize( compactedSize_ )
+ , info( info_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ AccelerationStructureCreateInfoNV( AccelerationStructureCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ AccelerationStructureCreateInfoNV( VkAccelerationStructureCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ : AccelerationStructureCreateInfoNV( *reinterpret_cast<AccelerationStructureCreateInfoNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 AccelerationStructureCreateInfoNV &
+ operator=( AccelerationStructureCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ AccelerationStructureCreateInfoNV & operator=( VkAccelerationStructureCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AccelerationStructureCreateInfoNV const *>( &rhs );
+ return *this;
+ }
+
+ AccelerationStructureCreateInfoNV & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ AccelerationStructureCreateInfoNV &
+ setCompactedSize( VULKAN_HPP_NAMESPACE::DeviceSize compactedSize_ ) VULKAN_HPP_NOEXCEPT
+ {
+ compactedSize = compactedSize_;
+ return *this;
+ }
+
+ AccelerationStructureCreateInfoNV &
+ setInfo( VULKAN_HPP_NAMESPACE::AccelerationStructureInfoNV const & info_ ) VULKAN_HPP_NOEXCEPT
+ {
+ info = info_;
+ return *this;
+ }
+
+ operator VkAccelerationStructureCreateInfoNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkAccelerationStructureCreateInfoNV *>( this );
+ }
+
+ operator VkAccelerationStructureCreateInfoNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkAccelerationStructureCreateInfoNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( AccelerationStructureCreateInfoNV const & ) const = default;
+#else
+ bool operator==( AccelerationStructureCreateInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( compactedSize == rhs.compactedSize ) &&
+ ( info == rhs.info );
+ }
+
+ bool operator!=( AccelerationStructureCreateInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAccelerationStructureCreateInfoNV;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize compactedSize = {};
+ VULKAN_HPP_NAMESPACE::AccelerationStructureInfoNV info = {};
+ };
+ static_assert( sizeof( AccelerationStructureCreateInfoNV ) == sizeof( VkAccelerationStructureCreateInfoNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<AccelerationStructureCreateInfoNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eAccelerationStructureCreateInfoNV>
+ {
+ using Type = AccelerationStructureCreateInfoNV;
+ };
+
+ struct AccelerationStructureDeviceAddressInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eAccelerationStructureDeviceAddressInfoKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR AccelerationStructureDeviceAddressInfoKHR(
+ VULKAN_HPP_NAMESPACE::AccelerationStructureKHR accelerationStructure_ = {} ) VULKAN_HPP_NOEXCEPT
+ : accelerationStructure( accelerationStructure_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR AccelerationStructureDeviceAddressInfoKHR(
+ AccelerationStructureDeviceAddressInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ AccelerationStructureDeviceAddressInfoKHR( VkAccelerationStructureDeviceAddressInfoKHR const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : AccelerationStructureDeviceAddressInfoKHR(
+ *reinterpret_cast<AccelerationStructureDeviceAddressInfoKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 AccelerationStructureDeviceAddressInfoKHR &
+ operator=( AccelerationStructureDeviceAddressInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ AccelerationStructureDeviceAddressInfoKHR &
+ operator=( VkAccelerationStructureDeviceAddressInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AccelerationStructureDeviceAddressInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ AccelerationStructureDeviceAddressInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ AccelerationStructureDeviceAddressInfoKHR & setAccelerationStructure(
+ VULKAN_HPP_NAMESPACE::AccelerationStructureKHR accelerationStructure_ ) VULKAN_HPP_NOEXCEPT
+ {
+ accelerationStructure = accelerationStructure_;
+ return *this;
+ }
+
+ operator VkAccelerationStructureDeviceAddressInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkAccelerationStructureDeviceAddressInfoKHR *>( this );
+ }
+
+ operator VkAccelerationStructureDeviceAddressInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkAccelerationStructureDeviceAddressInfoKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( AccelerationStructureDeviceAddressInfoKHR const & ) const = default;
+#else
+ bool operator==( AccelerationStructureDeviceAddressInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( accelerationStructure == rhs.accelerationStructure );
+ }
+
+ bool operator!=( AccelerationStructureDeviceAddressInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAccelerationStructureDeviceAddressInfoKHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::AccelerationStructureKHR accelerationStructure = {};
+ };
+ static_assert( sizeof( AccelerationStructureDeviceAddressInfoKHR ) ==
+ sizeof( VkAccelerationStructureDeviceAddressInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<AccelerationStructureDeviceAddressInfoKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eAccelerationStructureDeviceAddressInfoKHR>
+ {
+ using Type = AccelerationStructureDeviceAddressInfoKHR;
+ };
+
+ struct AccelerationStructureGeometryMotionTrianglesDataNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eAccelerationStructureGeometryMotionTrianglesDataNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ AccelerationStructureGeometryMotionTrianglesDataNV(
+ VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR vertexData_ = {} ) VULKAN_HPP_NOEXCEPT
+ : vertexData( vertexData_ )
+ {}
+
+ AccelerationStructureGeometryMotionTrianglesDataNV( AccelerationStructureGeometryMotionTrianglesDataNV const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ AccelerationStructureGeometryMotionTrianglesDataNV(
+ VkAccelerationStructureGeometryMotionTrianglesDataNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ : AccelerationStructureGeometryMotionTrianglesDataNV(
+ *reinterpret_cast<AccelerationStructureGeometryMotionTrianglesDataNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ AccelerationStructureGeometryMotionTrianglesDataNV &
+ operator=( AccelerationStructureGeometryMotionTrianglesDataNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ AccelerationStructureGeometryMotionTrianglesDataNV &
+ operator=( VkAccelerationStructureGeometryMotionTrianglesDataNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this =
+ *reinterpret_cast<VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryMotionTrianglesDataNV const *>( &rhs );
+ return *this;
+ }
+
+ AccelerationStructureGeometryMotionTrianglesDataNV & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ AccelerationStructureGeometryMotionTrianglesDataNV &
+ setVertexData( VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR const & vertexData_ ) VULKAN_HPP_NOEXCEPT
+ {
+ vertexData = vertexData_;
+ return *this;
+ }
+
+ operator VkAccelerationStructureGeometryMotionTrianglesDataNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkAccelerationStructureGeometryMotionTrianglesDataNV *>( this );
+ }
+
+ operator VkAccelerationStructureGeometryMotionTrianglesDataNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkAccelerationStructureGeometryMotionTrianglesDataNV *>( this );
+ }
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAccelerationStructureGeometryMotionTrianglesDataNV;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR vertexData = {};
+ };
+ static_assert( sizeof( AccelerationStructureGeometryMotionTrianglesDataNV ) ==
+ sizeof( VkAccelerationStructureGeometryMotionTrianglesDataNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<AccelerationStructureGeometryMotionTrianglesDataNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eAccelerationStructureGeometryMotionTrianglesDataNV>
+ {
+ using Type = AccelerationStructureGeometryMotionTrianglesDataNV;
+ };
+
+ struct TransformMatrixKHR
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR_14
+ TransformMatrixKHR( std::array<std::array<float, 4>, 3> const & matrix_ = {} ) VULKAN_HPP_NOEXCEPT
+ : matrix( matrix_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR_14 TransformMatrixKHR( TransformMatrixKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ TransformMatrixKHR( VkTransformMatrixKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : TransformMatrixKHR( *reinterpret_cast<TransformMatrixKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 TransformMatrixKHR &
+ operator=( TransformMatrixKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ TransformMatrixKHR & operator=( VkTransformMatrixKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::TransformMatrixKHR const *>( &rhs );
+ return *this;
+ }
+
+ TransformMatrixKHR & setMatrix( std::array<std::array<float, 4>, 3> matrix_ ) VULKAN_HPP_NOEXCEPT
+ {
+ matrix = matrix_;
+ return *this;
+ }
+
+ operator VkTransformMatrixKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkTransformMatrixKHR *>( this );
+ }
+
+ operator VkTransformMatrixKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkTransformMatrixKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( TransformMatrixKHR const & ) const = default;
+#else
+ bool operator==( TransformMatrixKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( matrix == rhs.matrix );
+ }
+
+ bool operator!=( TransformMatrixKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::ArrayWrapper2D<float, 3, 4> matrix = {};
+ };
+ static_assert( sizeof( TransformMatrixKHR ) == sizeof( VkTransformMatrixKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<TransformMatrixKHR>::value, "struct wrapper is not a standard layout!" );
+ using TransformMatrixNV = TransformMatrixKHR;
+
+ struct AccelerationStructureInstanceKHR
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR_14
+ AccelerationStructureInstanceKHR( VULKAN_HPP_NAMESPACE::TransformMatrixKHR transform_ = {},
+ uint32_t instanceCustomIndex_ = {},
+ uint32_t mask_ = {},
+ uint32_t instanceShaderBindingTableRecordOffset_ = {},
+ VULKAN_HPP_NAMESPACE::GeometryInstanceFlagsKHR flags_ = {},
+ uint64_t accelerationStructureReference_ = {} ) VULKAN_HPP_NOEXCEPT
+ : transform( transform_ )
+ , instanceCustomIndex( instanceCustomIndex_ )
+ , mask( mask_ )
+ , instanceShaderBindingTableRecordOffset( instanceShaderBindingTableRecordOffset_ )
+ , flags( flags_ )
+ , accelerationStructureReference( accelerationStructureReference_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR_14
+ AccelerationStructureInstanceKHR( AccelerationStructureInstanceKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ AccelerationStructureInstanceKHR( VkAccelerationStructureInstanceKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : AccelerationStructureInstanceKHR( *reinterpret_cast<AccelerationStructureInstanceKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 AccelerationStructureInstanceKHR &
+ operator=( AccelerationStructureInstanceKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ AccelerationStructureInstanceKHR & operator=( VkAccelerationStructureInstanceKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AccelerationStructureInstanceKHR const *>( &rhs );
+ return *this;
+ }
+
+ AccelerationStructureInstanceKHR &
+ setTransform( VULKAN_HPP_NAMESPACE::TransformMatrixKHR const & transform_ ) VULKAN_HPP_NOEXCEPT
+ {
+ transform = transform_;
+ return *this;
+ }
+
+ AccelerationStructureInstanceKHR & setInstanceCustomIndex( uint32_t instanceCustomIndex_ ) VULKAN_HPP_NOEXCEPT
+ {
+ instanceCustomIndex = instanceCustomIndex_;
+ return *this;
+ }
+
+ AccelerationStructureInstanceKHR & setMask( uint32_t mask_ ) VULKAN_HPP_NOEXCEPT
+ {
+ mask = mask_;
+ return *this;
+ }
+
+ AccelerationStructureInstanceKHR &
+ setInstanceShaderBindingTableRecordOffset( uint32_t instanceShaderBindingTableRecordOffset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ instanceShaderBindingTableRecordOffset = instanceShaderBindingTableRecordOffset_;
+ return *this;
+ }
+
+ AccelerationStructureInstanceKHR &
+ setFlags( VULKAN_HPP_NAMESPACE::GeometryInstanceFlagsKHR flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = *reinterpret_cast<VkGeometryInstanceFlagsKHR *>( &flags_ );
+ return *this;
+ }
+
+ AccelerationStructureInstanceKHR &
+ setAccelerationStructureReference( uint64_t accelerationStructureReference_ ) VULKAN_HPP_NOEXCEPT
+ {
+ accelerationStructureReference = accelerationStructureReference_;
+ return *this;
+ }
+
+ operator VkAccelerationStructureInstanceKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkAccelerationStructureInstanceKHR *>( this );
+ }
+
+ operator VkAccelerationStructureInstanceKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkAccelerationStructureInstanceKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( AccelerationStructureInstanceKHR const & ) const = default;
+#else
+ bool operator==( AccelerationStructureInstanceKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( transform == rhs.transform ) && ( instanceCustomIndex == rhs.instanceCustomIndex ) &&
+ ( mask == rhs.mask ) &&
+ ( instanceShaderBindingTableRecordOffset == rhs.instanceShaderBindingTableRecordOffset ) &&
+ ( flags == rhs.flags ) && ( accelerationStructureReference == rhs.accelerationStructureReference );
+ }
+
+ bool operator!=( AccelerationStructureInstanceKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::TransformMatrixKHR transform = {};
+ uint32_t instanceCustomIndex : 24;
+ uint32_t mask : 8;
+ uint32_t instanceShaderBindingTableRecordOffset : 24;
+ VkGeometryInstanceFlagsKHR flags : 8;
+ uint64_t accelerationStructureReference = {};
+ };
+ static_assert( sizeof( AccelerationStructureInstanceKHR ) == sizeof( VkAccelerationStructureInstanceKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<AccelerationStructureInstanceKHR>::value,
+ "struct wrapper is not a standard layout!" );
+ using AccelerationStructureInstanceNV = AccelerationStructureInstanceKHR;
+
+ struct AccelerationStructureMatrixMotionInstanceNV
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR_14
+ AccelerationStructureMatrixMotionInstanceNV( VULKAN_HPP_NAMESPACE::TransformMatrixKHR transformT0_ = {},
+ VULKAN_HPP_NAMESPACE::TransformMatrixKHR transformT1_ = {},
+ uint32_t instanceCustomIndex_ = {},
+ uint32_t mask_ = {},
+ uint32_t instanceShaderBindingTableRecordOffset_ = {},
+ VULKAN_HPP_NAMESPACE::GeometryInstanceFlagsKHR flags_ = {},
+ uint64_t accelerationStructureReference_ = {} ) VULKAN_HPP_NOEXCEPT
+ : transformT0( transformT0_ )
+ , transformT1( transformT1_ )
+ , instanceCustomIndex( instanceCustomIndex_ )
+ , mask( mask_ )
+ , instanceShaderBindingTableRecordOffset( instanceShaderBindingTableRecordOffset_ )
+ , flags( flags_ )
+ , accelerationStructureReference( accelerationStructureReference_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR_14 AccelerationStructureMatrixMotionInstanceNV(
+ AccelerationStructureMatrixMotionInstanceNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ AccelerationStructureMatrixMotionInstanceNV( VkAccelerationStructureMatrixMotionInstanceNV const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : AccelerationStructureMatrixMotionInstanceNV(
+ *reinterpret_cast<AccelerationStructureMatrixMotionInstanceNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 AccelerationStructureMatrixMotionInstanceNV &
+ operator=( AccelerationStructureMatrixMotionInstanceNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ AccelerationStructureMatrixMotionInstanceNV &
+ operator=( VkAccelerationStructureMatrixMotionInstanceNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AccelerationStructureMatrixMotionInstanceNV const *>( &rhs );
+ return *this;
+ }
+
+ AccelerationStructureMatrixMotionInstanceNV &
+ setTransformT0( VULKAN_HPP_NAMESPACE::TransformMatrixKHR const & transformT0_ ) VULKAN_HPP_NOEXCEPT
+ {
+ transformT0 = transformT0_;
+ return *this;
+ }
+
+ AccelerationStructureMatrixMotionInstanceNV &
+ setTransformT1( VULKAN_HPP_NAMESPACE::TransformMatrixKHR const & transformT1_ ) VULKAN_HPP_NOEXCEPT
+ {
+ transformT1 = transformT1_;
+ return *this;
+ }
+
+ AccelerationStructureMatrixMotionInstanceNV &
+ setInstanceCustomIndex( uint32_t instanceCustomIndex_ ) VULKAN_HPP_NOEXCEPT
+ {
+ instanceCustomIndex = instanceCustomIndex_;
+ return *this;
+ }
+
+ AccelerationStructureMatrixMotionInstanceNV & setMask( uint32_t mask_ ) VULKAN_HPP_NOEXCEPT
+ {
+ mask = mask_;
+ return *this;
+ }
+
+ AccelerationStructureMatrixMotionInstanceNV &
+ setInstanceShaderBindingTableRecordOffset( uint32_t instanceShaderBindingTableRecordOffset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ instanceShaderBindingTableRecordOffset = instanceShaderBindingTableRecordOffset_;
+ return *this;
+ }
+
+ AccelerationStructureMatrixMotionInstanceNV &
+ setFlags( VULKAN_HPP_NAMESPACE::GeometryInstanceFlagsKHR flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = *reinterpret_cast<VkGeometryInstanceFlagsKHR *>( &flags_ );
+ return *this;
+ }
+
+ AccelerationStructureMatrixMotionInstanceNV &
+ setAccelerationStructureReference( uint64_t accelerationStructureReference_ ) VULKAN_HPP_NOEXCEPT
+ {
+ accelerationStructureReference = accelerationStructureReference_;
+ return *this;
+ }
+
+ operator VkAccelerationStructureMatrixMotionInstanceNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkAccelerationStructureMatrixMotionInstanceNV *>( this );
+ }
+
+ operator VkAccelerationStructureMatrixMotionInstanceNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkAccelerationStructureMatrixMotionInstanceNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( AccelerationStructureMatrixMotionInstanceNV const & ) const = default;
+#else
+ bool operator==( AccelerationStructureMatrixMotionInstanceNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( transformT0 == rhs.transformT0 ) && ( transformT1 == rhs.transformT1 ) &&
+ ( instanceCustomIndex == rhs.instanceCustomIndex ) && ( mask == rhs.mask ) &&
+ ( instanceShaderBindingTableRecordOffset == rhs.instanceShaderBindingTableRecordOffset ) &&
+ ( flags == rhs.flags ) && ( accelerationStructureReference == rhs.accelerationStructureReference );
+ }
+
+ bool operator!=( AccelerationStructureMatrixMotionInstanceNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::TransformMatrixKHR transformT0 = {};
+ VULKAN_HPP_NAMESPACE::TransformMatrixKHR transformT1 = {};
+ uint32_t instanceCustomIndex : 24;
+ uint32_t mask : 8;
+ uint32_t instanceShaderBindingTableRecordOffset : 24;
+ VkGeometryInstanceFlagsKHR flags : 8;
+ uint64_t accelerationStructureReference = {};
+ };
+ static_assert( sizeof( AccelerationStructureMatrixMotionInstanceNV ) ==
+ sizeof( VkAccelerationStructureMatrixMotionInstanceNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<AccelerationStructureMatrixMotionInstanceNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ struct AccelerationStructureMemoryRequirementsInfoNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eAccelerationStructureMemoryRequirementsInfoNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR AccelerationStructureMemoryRequirementsInfoNV(
+ VULKAN_HPP_NAMESPACE::AccelerationStructureMemoryRequirementsTypeNV type_ =
+ VULKAN_HPP_NAMESPACE::AccelerationStructureMemoryRequirementsTypeNV::eObject,
+ VULKAN_HPP_NAMESPACE::AccelerationStructureNV accelerationStructure_ = {} ) VULKAN_HPP_NOEXCEPT
+ : type( type_ )
+ , accelerationStructure( accelerationStructure_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR AccelerationStructureMemoryRequirementsInfoNV(
+ AccelerationStructureMemoryRequirementsInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ AccelerationStructureMemoryRequirementsInfoNV( VkAccelerationStructureMemoryRequirementsInfoNV const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : AccelerationStructureMemoryRequirementsInfoNV(
+ *reinterpret_cast<AccelerationStructureMemoryRequirementsInfoNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 AccelerationStructureMemoryRequirementsInfoNV &
+ operator=( AccelerationStructureMemoryRequirementsInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ AccelerationStructureMemoryRequirementsInfoNV &
+ operator=( VkAccelerationStructureMemoryRequirementsInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AccelerationStructureMemoryRequirementsInfoNV const *>( &rhs );
+ return *this;
+ }
+
+ AccelerationStructureMemoryRequirementsInfoNV & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ AccelerationStructureMemoryRequirementsInfoNV &
+ setType( VULKAN_HPP_NAMESPACE::AccelerationStructureMemoryRequirementsTypeNV type_ ) VULKAN_HPP_NOEXCEPT
+ {
+ type = type_;
+ return *this;
+ }
+
+ AccelerationStructureMemoryRequirementsInfoNV & setAccelerationStructure(
+ VULKAN_HPP_NAMESPACE::AccelerationStructureNV accelerationStructure_ ) VULKAN_HPP_NOEXCEPT
+ {
+ accelerationStructure = accelerationStructure_;
+ return *this;
+ }
+
+ operator VkAccelerationStructureMemoryRequirementsInfoNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkAccelerationStructureMemoryRequirementsInfoNV *>( this );
+ }
+
+ operator VkAccelerationStructureMemoryRequirementsInfoNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkAccelerationStructureMemoryRequirementsInfoNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( AccelerationStructureMemoryRequirementsInfoNV const & ) const = default;
+#else
+ bool operator==( AccelerationStructureMemoryRequirementsInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( type == rhs.type ) &&
+ ( accelerationStructure == rhs.accelerationStructure );
+ }
+
+ bool operator!=( AccelerationStructureMemoryRequirementsInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAccelerationStructureMemoryRequirementsInfoNV;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::AccelerationStructureMemoryRequirementsTypeNV type =
+ VULKAN_HPP_NAMESPACE::AccelerationStructureMemoryRequirementsTypeNV::eObject;
+ VULKAN_HPP_NAMESPACE::AccelerationStructureNV accelerationStructure = {};
+ };
+ static_assert( sizeof( AccelerationStructureMemoryRequirementsInfoNV ) ==
+ sizeof( VkAccelerationStructureMemoryRequirementsInfoNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<AccelerationStructureMemoryRequirementsInfoNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eAccelerationStructureMemoryRequirementsInfoNV>
+ {
+ using Type = AccelerationStructureMemoryRequirementsInfoNV;
+ };
+
+ struct AccelerationStructureMotionInfoNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eAccelerationStructureMotionInfoNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR AccelerationStructureMotionInfoNV(
+ uint32_t maxInstances_ = {},
+ VULKAN_HPP_NAMESPACE::AccelerationStructureMotionInfoFlagsNV flags_ = {} ) VULKAN_HPP_NOEXCEPT
+ : maxInstances( maxInstances_ )
+ , flags( flags_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ AccelerationStructureMotionInfoNV( AccelerationStructureMotionInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ AccelerationStructureMotionInfoNV( VkAccelerationStructureMotionInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ : AccelerationStructureMotionInfoNV( *reinterpret_cast<AccelerationStructureMotionInfoNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 AccelerationStructureMotionInfoNV &
+ operator=( AccelerationStructureMotionInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ AccelerationStructureMotionInfoNV & operator=( VkAccelerationStructureMotionInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AccelerationStructureMotionInfoNV const *>( &rhs );
+ return *this;
+ }
+
+ AccelerationStructureMotionInfoNV & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ AccelerationStructureMotionInfoNV & setMaxInstances( uint32_t maxInstances_ ) VULKAN_HPP_NOEXCEPT
+ {
+ maxInstances = maxInstances_;
+ return *this;
+ }
+
+ AccelerationStructureMotionInfoNV &
+ setFlags( VULKAN_HPP_NAMESPACE::AccelerationStructureMotionInfoFlagsNV flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ operator VkAccelerationStructureMotionInfoNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkAccelerationStructureMotionInfoNV *>( this );
+ }
+
+ operator VkAccelerationStructureMotionInfoNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkAccelerationStructureMotionInfoNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( AccelerationStructureMotionInfoNV const & ) const = default;
+#else
+ bool operator==( AccelerationStructureMotionInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( maxInstances == rhs.maxInstances ) &&
+ ( flags == rhs.flags );
+ }
+
+ bool operator!=( AccelerationStructureMotionInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAccelerationStructureMotionInfoNV;
+ const void * pNext = {};
+ uint32_t maxInstances = {};
+ VULKAN_HPP_NAMESPACE::AccelerationStructureMotionInfoFlagsNV flags = {};
+ };
+ static_assert( sizeof( AccelerationStructureMotionInfoNV ) == sizeof( VkAccelerationStructureMotionInfoNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<AccelerationStructureMotionInfoNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eAccelerationStructureMotionInfoNV>
+ {
+ using Type = AccelerationStructureMotionInfoNV;
+ };
+
+ struct SRTDataNV
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR SRTDataNV( 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_ = {} ) VULKAN_HPP_NOEXCEPT
+ : sx( sx_ )
+ , a( a_ )
+ , b( b_ )
+ , pvx( pvx_ )
+ , sy( sy_ )
+ , c( c_ )
+ , pvy( pvy_ )
+ , sz( sz_ )
+ , pvz( pvz_ )
+ , qx( qx_ )
+ , qy( qy_ )
+ , qz( qz_ )
+ , qw( qw_ )
+ , tx( tx_ )
+ , ty( ty_ )
+ , tz( tz_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR SRTDataNV( SRTDataNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SRTDataNV( VkSRTDataNV const & rhs ) VULKAN_HPP_NOEXCEPT : SRTDataNV( *reinterpret_cast<SRTDataNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 SRTDataNV & operator=( SRTDataNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SRTDataNV & operator=( VkSRTDataNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SRTDataNV const *>( &rhs );
+ return *this;
+ }
+
+ SRTDataNV & setSx( float sx_ ) VULKAN_HPP_NOEXCEPT
+ {
+ sx = sx_;
+ return *this;
+ }
+
+ SRTDataNV & setA( float a_ ) VULKAN_HPP_NOEXCEPT
+ {
+ a = a_;
+ return *this;
+ }
+
+ SRTDataNV & setB( float b_ ) VULKAN_HPP_NOEXCEPT
+ {
+ b = b_;
+ return *this;
+ }
+
+ SRTDataNV & setPvx( float pvx_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pvx = pvx_;
+ return *this;
+ }
+
+ SRTDataNV & setSy( float sy_ ) VULKAN_HPP_NOEXCEPT
+ {
+ sy = sy_;
+ return *this;
+ }
+
+ SRTDataNV & setC( float c_ ) VULKAN_HPP_NOEXCEPT
+ {
+ c = c_;
+ return *this;
+ }
+
+ SRTDataNV & setPvy( float pvy_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pvy = pvy_;
+ return *this;
+ }
+
+ SRTDataNV & setSz( float sz_ ) VULKAN_HPP_NOEXCEPT
+ {
+ sz = sz_;
+ return *this;
+ }
+
+ SRTDataNV & setPvz( float pvz_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pvz = pvz_;
+ return *this;
+ }
+
+ SRTDataNV & setQx( float qx_ ) VULKAN_HPP_NOEXCEPT
+ {
+ qx = qx_;
+ return *this;
+ }
+
+ SRTDataNV & setQy( float qy_ ) VULKAN_HPP_NOEXCEPT
+ {
+ qy = qy_;
+ return *this;
+ }
+
+ SRTDataNV & setQz( float qz_ ) VULKAN_HPP_NOEXCEPT
+ {
+ qz = qz_;
+ return *this;
+ }
+
+ SRTDataNV & setQw( float qw_ ) VULKAN_HPP_NOEXCEPT
+ {
+ qw = qw_;
+ return *this;
+ }
+
+ SRTDataNV & setTx( float tx_ ) VULKAN_HPP_NOEXCEPT
+ {
+ tx = tx_;
+ return *this;
+ }
+
+ SRTDataNV & setTy( float ty_ ) VULKAN_HPP_NOEXCEPT
+ {
+ ty = ty_;
+ return *this;
+ }
+
+ SRTDataNV & setTz( float tz_ ) VULKAN_HPP_NOEXCEPT
+ {
+ tz = tz_;
+ return *this;
+ }
+
+ operator VkSRTDataNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkSRTDataNV *>( this );
+ }
+
+ operator VkSRTDataNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkSRTDataNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( SRTDataNV const & ) const = default;
+#else
+ bool operator==( SRTDataNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sx == rhs.sx ) && ( a == rhs.a ) && ( b == rhs.b ) && ( pvx == rhs.pvx ) && ( sy == rhs.sy ) &&
+ ( c == rhs.c ) && ( pvy == rhs.pvy ) && ( sz == rhs.sz ) && ( pvz == rhs.pvz ) && ( qx == rhs.qx ) &&
+ ( qy == rhs.qy ) && ( qz == rhs.qz ) && ( qw == rhs.qw ) && ( tx == rhs.tx ) && ( ty == rhs.ty ) &&
+ ( tz == rhs.tz );
+ }
+
+ bool operator!=( SRTDataNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ 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 = {};
+ };
+ static_assert( sizeof( SRTDataNV ) == sizeof( VkSRTDataNV ), "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<SRTDataNV>::value, "struct wrapper is not a standard layout!" );
+
+ struct AccelerationStructureSRTMotionInstanceNV
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ AccelerationStructureSRTMotionInstanceNV( VULKAN_HPP_NAMESPACE::SRTDataNV transformT0_ = {},
+ VULKAN_HPP_NAMESPACE::SRTDataNV transformT1_ = {},
+ uint32_t instanceCustomIndex_ = {},
+ uint32_t mask_ = {},
+ uint32_t instanceShaderBindingTableRecordOffset_ = {},
+ VULKAN_HPP_NAMESPACE::GeometryInstanceFlagsKHR flags_ = {},
+ uint64_t accelerationStructureReference_ = {} ) VULKAN_HPP_NOEXCEPT
+ : transformT0( transformT0_ )
+ , transformT1( transformT1_ )
+ , instanceCustomIndex( instanceCustomIndex_ )
+ , mask( mask_ )
+ , instanceShaderBindingTableRecordOffset( instanceShaderBindingTableRecordOffset_ )
+ , flags( flags_ )
+ , accelerationStructureReference( accelerationStructureReference_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR AccelerationStructureSRTMotionInstanceNV(
+ AccelerationStructureSRTMotionInstanceNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ AccelerationStructureSRTMotionInstanceNV( VkAccelerationStructureSRTMotionInstanceNV const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : AccelerationStructureSRTMotionInstanceNV(
+ *reinterpret_cast<AccelerationStructureSRTMotionInstanceNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 AccelerationStructureSRTMotionInstanceNV &
+ operator=( AccelerationStructureSRTMotionInstanceNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ AccelerationStructureSRTMotionInstanceNV &
+ operator=( VkAccelerationStructureSRTMotionInstanceNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AccelerationStructureSRTMotionInstanceNV const *>( &rhs );
+ return *this;
+ }
+
+ AccelerationStructureSRTMotionInstanceNV &
+ setTransformT0( VULKAN_HPP_NAMESPACE::SRTDataNV const & transformT0_ ) VULKAN_HPP_NOEXCEPT
+ {
+ transformT0 = transformT0_;
+ return *this;
+ }
+
+ AccelerationStructureSRTMotionInstanceNV &
+ setTransformT1( VULKAN_HPP_NAMESPACE::SRTDataNV const & transformT1_ ) VULKAN_HPP_NOEXCEPT
+ {
+ transformT1 = transformT1_;
+ return *this;
+ }
+
+ AccelerationStructureSRTMotionInstanceNV &
+ setInstanceCustomIndex( uint32_t instanceCustomIndex_ ) VULKAN_HPP_NOEXCEPT
+ {
+ instanceCustomIndex = instanceCustomIndex_;
+ return *this;
+ }
+
+ AccelerationStructureSRTMotionInstanceNV & setMask( uint32_t mask_ ) VULKAN_HPP_NOEXCEPT
+ {
+ mask = mask_;
+ return *this;
+ }
+
+ AccelerationStructureSRTMotionInstanceNV &
+ setInstanceShaderBindingTableRecordOffset( uint32_t instanceShaderBindingTableRecordOffset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ instanceShaderBindingTableRecordOffset = instanceShaderBindingTableRecordOffset_;
+ return *this;
+ }
+
+ AccelerationStructureSRTMotionInstanceNV &
+ setFlags( VULKAN_HPP_NAMESPACE::GeometryInstanceFlagsKHR flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = *reinterpret_cast<VkGeometryInstanceFlagsKHR *>( &flags_ );
+ return *this;
+ }
+
+ AccelerationStructureSRTMotionInstanceNV &
+ setAccelerationStructureReference( uint64_t accelerationStructureReference_ ) VULKAN_HPP_NOEXCEPT
+ {
+ accelerationStructureReference = accelerationStructureReference_;
+ return *this;
+ }
+
+ operator VkAccelerationStructureSRTMotionInstanceNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkAccelerationStructureSRTMotionInstanceNV *>( this );
+ }
+
+ operator VkAccelerationStructureSRTMotionInstanceNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkAccelerationStructureSRTMotionInstanceNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( AccelerationStructureSRTMotionInstanceNV const & ) const = default;
+#else
+ bool operator==( AccelerationStructureSRTMotionInstanceNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( transformT0 == rhs.transformT0 ) && ( transformT1 == rhs.transformT1 ) &&
+ ( instanceCustomIndex == rhs.instanceCustomIndex ) && ( mask == rhs.mask ) &&
+ ( instanceShaderBindingTableRecordOffset == rhs.instanceShaderBindingTableRecordOffset ) &&
+ ( flags == rhs.flags ) && ( accelerationStructureReference == rhs.accelerationStructureReference );
+ }
+
+ bool operator!=( AccelerationStructureSRTMotionInstanceNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::SRTDataNV transformT0 = {};
+ VULKAN_HPP_NAMESPACE::SRTDataNV transformT1 = {};
+ uint32_t instanceCustomIndex : 24;
+ uint32_t mask : 8;
+ uint32_t instanceShaderBindingTableRecordOffset : 24;
+ VkGeometryInstanceFlagsKHR flags : 8;
+ uint64_t accelerationStructureReference = {};
+ };
+ static_assert( sizeof( AccelerationStructureSRTMotionInstanceNV ) ==
+ sizeof( VkAccelerationStructureSRTMotionInstanceNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<AccelerationStructureSRTMotionInstanceNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ union AccelerationStructureMotionInstanceDataNV
+ {
+ AccelerationStructureMotionInstanceDataNV(
+ VULKAN_HPP_NAMESPACE::AccelerationStructureMotionInstanceDataNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ memcpy(
+ static_cast<void *>( this ), &rhs, sizeof( VULKAN_HPP_NAMESPACE::AccelerationStructureMotionInstanceDataNV ) );
+ }
+
+ AccelerationStructureMotionInstanceDataNV(
+ VULKAN_HPP_NAMESPACE::AccelerationStructureInstanceKHR staticInstance_ = {} )
+ : staticInstance( staticInstance_ )
+ {}
+
+ AccelerationStructureMotionInstanceDataNV(
+ VULKAN_HPP_NAMESPACE::AccelerationStructureMatrixMotionInstanceNV matrixMotionInstance_ )
+ : matrixMotionInstance( matrixMotionInstance_ )
+ {}
+
+ AccelerationStructureMotionInstanceDataNV(
+ VULKAN_HPP_NAMESPACE::AccelerationStructureSRTMotionInstanceNV srtMotionInstance_ )
+ : srtMotionInstance( srtMotionInstance_ )
+ {}
+
+ AccelerationStructureMotionInstanceDataNV & setStaticInstance(
+ VULKAN_HPP_NAMESPACE::AccelerationStructureInstanceKHR const & staticInstance_ ) VULKAN_HPP_NOEXCEPT
+ {
+ staticInstance = staticInstance_;
+ return *this;
+ }
+
+ AccelerationStructureMotionInstanceDataNV & setMatrixMotionInstance(
+ VULKAN_HPP_NAMESPACE::AccelerationStructureMatrixMotionInstanceNV const & matrixMotionInstance_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ matrixMotionInstance = matrixMotionInstance_;
+ return *this;
+ }
+
+ AccelerationStructureMotionInstanceDataNV & setSrtMotionInstance(
+ VULKAN_HPP_NAMESPACE::AccelerationStructureSRTMotionInstanceNV const & srtMotionInstance_ ) VULKAN_HPP_NOEXCEPT
+ {
+ srtMotionInstance = srtMotionInstance_;
+ return *this;
+ }
+
+ VULKAN_HPP_NAMESPACE::AccelerationStructureMotionInstanceDataNV &
+ operator=( VULKAN_HPP_NAMESPACE::AccelerationStructureMotionInstanceDataNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ memcpy(
+ static_cast<void *>( this ), &rhs, sizeof( VULKAN_HPP_NAMESPACE::AccelerationStructureMotionInstanceDataNV ) );
+ return *this;
+ }
+
+ operator VkAccelerationStructureMotionInstanceDataNV const &() const
+ {
+ return *reinterpret_cast<const VkAccelerationStructureMotionInstanceDataNV *>( this );
+ }
+
+ operator VkAccelerationStructureMotionInstanceDataNV &()
+ {
+ return *reinterpret_cast<VkAccelerationStructureMotionInstanceDataNV *>( this );
+ }
+
+#ifdef VULKAN_HPP_HAS_UNRESTRICTED_UNIONS
+ VULKAN_HPP_NAMESPACE::AccelerationStructureInstanceKHR staticInstance;
+ VULKAN_HPP_NAMESPACE::AccelerationStructureMatrixMotionInstanceNV matrixMotionInstance;
+ VULKAN_HPP_NAMESPACE::AccelerationStructureSRTMotionInstanceNV srtMotionInstance;
+#else
+ VkAccelerationStructureInstanceKHR staticInstance;
+ VkAccelerationStructureMatrixMotionInstanceNV matrixMotionInstance;
+ VkAccelerationStructureSRTMotionInstanceNV srtMotionInstance;
+#endif /*VULKAN_HPP_HAS_UNRESTRICTED_UNIONS*/
+ };
+
+ struct AccelerationStructureMotionInstanceNV
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ AccelerationStructureMotionInstanceNV( VULKAN_HPP_NAMESPACE::AccelerationStructureMotionInstanceTypeNV type_ =
+ VULKAN_HPP_NAMESPACE::AccelerationStructureMotionInstanceTypeNV::eStatic,
+ VULKAN_HPP_NAMESPACE::AccelerationStructureMotionInstanceFlagsNV flags_ = {},
+ VULKAN_HPP_NAMESPACE::AccelerationStructureMotionInstanceDataNV data_ = {} )
+ VULKAN_HPP_NOEXCEPT
+ : type( type_ )
+ , flags( flags_ )
+ , data( data_ )
+ {}
+
+ AccelerationStructureMotionInstanceNV( AccelerationStructureMotionInstanceNV const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ AccelerationStructureMotionInstanceNV( VkAccelerationStructureMotionInstanceNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ : AccelerationStructureMotionInstanceNV(
+ *reinterpret_cast<AccelerationStructureMotionInstanceNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ AccelerationStructureMotionInstanceNV &
+ operator=( AccelerationStructureMotionInstanceNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ AccelerationStructureMotionInstanceNV &
+ operator=( VkAccelerationStructureMotionInstanceNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AccelerationStructureMotionInstanceNV const *>( &rhs );
+ return *this;
+ }
+
+ AccelerationStructureMotionInstanceNV &
+ setType( VULKAN_HPP_NAMESPACE::AccelerationStructureMotionInstanceTypeNV type_ ) VULKAN_HPP_NOEXCEPT
+ {
+ type = type_;
+ return *this;
+ }
+
+ AccelerationStructureMotionInstanceNV &
+ setFlags( VULKAN_HPP_NAMESPACE::AccelerationStructureMotionInstanceFlagsNV flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ AccelerationStructureMotionInstanceNV &
+ setData( VULKAN_HPP_NAMESPACE::AccelerationStructureMotionInstanceDataNV const & data_ ) VULKAN_HPP_NOEXCEPT
+ {
+ data = data_;
+ return *this;
+ }
+
+ operator VkAccelerationStructureMotionInstanceNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkAccelerationStructureMotionInstanceNV *>( this );
+ }
+
+ operator VkAccelerationStructureMotionInstanceNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkAccelerationStructureMotionInstanceNV *>( this );
+ }
+
+ public:
+ VULKAN_HPP_NAMESPACE::AccelerationStructureMotionInstanceTypeNV type =
+ VULKAN_HPP_NAMESPACE::AccelerationStructureMotionInstanceTypeNV::eStatic;
+ VULKAN_HPP_NAMESPACE::AccelerationStructureMotionInstanceFlagsNV flags = {};
+ VULKAN_HPP_NAMESPACE::AccelerationStructureMotionInstanceDataNV data = {};
+ };
+ static_assert( sizeof( AccelerationStructureMotionInstanceNV ) == sizeof( VkAccelerationStructureMotionInstanceNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<AccelerationStructureMotionInstanceNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ struct AccelerationStructureVersionInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eAccelerationStructureVersionInfoKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR AccelerationStructureVersionInfoKHR( const uint8_t * pVersionData_ = {} ) VULKAN_HPP_NOEXCEPT
+ : pVersionData( pVersionData_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR AccelerationStructureVersionInfoKHR( AccelerationStructureVersionInfoKHR const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ AccelerationStructureVersionInfoKHR( VkAccelerationStructureVersionInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : AccelerationStructureVersionInfoKHR( *reinterpret_cast<AccelerationStructureVersionInfoKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 AccelerationStructureVersionInfoKHR &
+ operator=( AccelerationStructureVersionInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ AccelerationStructureVersionInfoKHR &
+ operator=( VkAccelerationStructureVersionInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AccelerationStructureVersionInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ AccelerationStructureVersionInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ AccelerationStructureVersionInfoKHR & setPVersionData( const uint8_t * pVersionData_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pVersionData = pVersionData_;
+ return *this;
+ }
+
+ operator VkAccelerationStructureVersionInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkAccelerationStructureVersionInfoKHR *>( this );
+ }
+
+ operator VkAccelerationStructureVersionInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkAccelerationStructureVersionInfoKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( AccelerationStructureVersionInfoKHR const & ) const = default;
+#else
+ bool operator==( AccelerationStructureVersionInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( pVersionData == rhs.pVersionData );
+ }
+
+ bool operator!=( AccelerationStructureVersionInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAccelerationStructureVersionInfoKHR;
+ const void * pNext = {};
+ const uint8_t * pVersionData = {};
+ };
+ static_assert( sizeof( AccelerationStructureVersionInfoKHR ) == sizeof( VkAccelerationStructureVersionInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<AccelerationStructureVersionInfoKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eAccelerationStructureVersionInfoKHR>
+ {
+ using Type = AccelerationStructureVersionInfoKHR;
+ };
+
+ struct AcquireNextImageInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eAcquireNextImageInfoKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR AcquireNextImageInfoKHR( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain_ = {},
+ uint64_t timeout_ = {},
+ VULKAN_HPP_NAMESPACE::Semaphore semaphore_ = {},
+ VULKAN_HPP_NAMESPACE::Fence fence_ = {},
+ uint32_t deviceMask_ = {} ) VULKAN_HPP_NOEXCEPT
+ : swapchain( swapchain_ )
+ , timeout( timeout_ )
+ , semaphore( semaphore_ )
+ , fence( fence_ )
+ , deviceMask( deviceMask_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR AcquireNextImageInfoKHR( AcquireNextImageInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ AcquireNextImageInfoKHR( VkAcquireNextImageInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : AcquireNextImageInfoKHR( *reinterpret_cast<AcquireNextImageInfoKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 AcquireNextImageInfoKHR &
+ operator=( AcquireNextImageInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ AcquireNextImageInfoKHR & operator=( VkAcquireNextImageInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AcquireNextImageInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ AcquireNextImageInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ AcquireNextImageInfoKHR & setSwapchain( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain_ ) VULKAN_HPP_NOEXCEPT
+ {
+ swapchain = swapchain_;
+ return *this;
+ }
+
+ AcquireNextImageInfoKHR & setTimeout( uint64_t timeout_ ) VULKAN_HPP_NOEXCEPT
+ {
+ timeout = timeout_;
+ return *this;
+ }
+
+ AcquireNextImageInfoKHR & setSemaphore( VULKAN_HPP_NAMESPACE::Semaphore semaphore_ ) VULKAN_HPP_NOEXCEPT
+ {
+ semaphore = semaphore_;
+ return *this;
+ }
+
+ AcquireNextImageInfoKHR & setFence( VULKAN_HPP_NAMESPACE::Fence fence_ ) VULKAN_HPP_NOEXCEPT
+ {
+ fence = fence_;
+ return *this;
+ }
+
+ AcquireNextImageInfoKHR & setDeviceMask( uint32_t deviceMask_ ) VULKAN_HPP_NOEXCEPT
+ {
+ deviceMask = deviceMask_;
+ return *this;
+ }
+
+ operator VkAcquireNextImageInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkAcquireNextImageInfoKHR *>( this );
+ }
+
+ operator VkAcquireNextImageInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkAcquireNextImageInfoKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( AcquireNextImageInfoKHR const & ) const = default;
+#else
+ bool operator==( AcquireNextImageInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( swapchain == rhs.swapchain ) &&
+ ( timeout == rhs.timeout ) && ( semaphore == rhs.semaphore ) && ( fence == rhs.fence ) &&
+ ( deviceMask == rhs.deviceMask );
+ }
+
+ bool operator!=( AcquireNextImageInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAcquireNextImageInfoKHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain = {};
+ uint64_t timeout = {};
+ VULKAN_HPP_NAMESPACE::Semaphore semaphore = {};
+ VULKAN_HPP_NAMESPACE::Fence fence = {};
+ uint32_t deviceMask = {};
+ };
+ static_assert( sizeof( AcquireNextImageInfoKHR ) == sizeof( VkAcquireNextImageInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<AcquireNextImageInfoKHR>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eAcquireNextImageInfoKHR>
+ {
+ using Type = AcquireNextImageInfoKHR;
+ };
+
+ struct AcquireProfilingLockInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eAcquireProfilingLockInfoKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR AcquireProfilingLockInfoKHR( VULKAN_HPP_NAMESPACE::AcquireProfilingLockFlagsKHR flags_ = {},
+ uint64_t timeout_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , timeout( timeout_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ AcquireProfilingLockInfoKHR( AcquireProfilingLockInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ AcquireProfilingLockInfoKHR( VkAcquireProfilingLockInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : AcquireProfilingLockInfoKHR( *reinterpret_cast<AcquireProfilingLockInfoKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 AcquireProfilingLockInfoKHR &
+ operator=( AcquireProfilingLockInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ AcquireProfilingLockInfoKHR & operator=( VkAcquireProfilingLockInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AcquireProfilingLockInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ AcquireProfilingLockInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ AcquireProfilingLockInfoKHR &
+ setFlags( VULKAN_HPP_NAMESPACE::AcquireProfilingLockFlagsKHR flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ AcquireProfilingLockInfoKHR & setTimeout( uint64_t timeout_ ) VULKAN_HPP_NOEXCEPT
+ {
+ timeout = timeout_;
+ return *this;
+ }
+
+ operator VkAcquireProfilingLockInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkAcquireProfilingLockInfoKHR *>( this );
+ }
+
+ operator VkAcquireProfilingLockInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkAcquireProfilingLockInfoKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( AcquireProfilingLockInfoKHR const & ) const = default;
+#else
+ bool operator==( AcquireProfilingLockInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) && ( timeout == rhs.timeout );
+ }
+
+ bool operator!=( AcquireProfilingLockInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAcquireProfilingLockInfoKHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::AcquireProfilingLockFlagsKHR flags = {};
+ uint64_t timeout = {};
+ };
+ static_assert( sizeof( AcquireProfilingLockInfoKHR ) == sizeof( VkAcquireProfilingLockInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<AcquireProfilingLockInfoKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eAcquireProfilingLockInfoKHR>
+ {
+ using Type = AcquireProfilingLockInfoKHR;
+ };
+
+ struct AllocationCallbacks
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR AllocationCallbacks( void * pUserData_ = {},
+ PFN_vkAllocationFunction pfnAllocation_ = {},
+ PFN_vkReallocationFunction pfnReallocation_ = {},
+ PFN_vkFreeFunction pfnFree_ = {},
+ PFN_vkInternalAllocationNotification pfnInternalAllocation_ = {},
+ PFN_vkInternalFreeNotification pfnInternalFree_ = {} ) VULKAN_HPP_NOEXCEPT
+ : pUserData( pUserData_ )
+ , pfnAllocation( pfnAllocation_ )
+ , pfnReallocation( pfnReallocation_ )
+ , pfnFree( pfnFree_ )
+ , pfnInternalAllocation( pfnInternalAllocation_ )
+ , pfnInternalFree( pfnInternalFree_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR AllocationCallbacks( AllocationCallbacks const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ AllocationCallbacks( VkAllocationCallbacks const & rhs ) VULKAN_HPP_NOEXCEPT
+ : AllocationCallbacks( *reinterpret_cast<AllocationCallbacks const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 AllocationCallbacks &
+ operator=( AllocationCallbacks const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ AllocationCallbacks & operator=( VkAllocationCallbacks const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AllocationCallbacks const *>( &rhs );
+ return *this;
+ }
+
+ AllocationCallbacks & setPUserData( void * pUserData_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pUserData = pUserData_;
+ return *this;
+ }
+
+ AllocationCallbacks & setPfnAllocation( PFN_vkAllocationFunction pfnAllocation_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pfnAllocation = pfnAllocation_;
+ return *this;
+ }
+
+ AllocationCallbacks & setPfnReallocation( PFN_vkReallocationFunction pfnReallocation_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pfnReallocation = pfnReallocation_;
+ return *this;
+ }
+
+ AllocationCallbacks & setPfnFree( PFN_vkFreeFunction pfnFree_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pfnFree = pfnFree_;
+ return *this;
+ }
+
+ AllocationCallbacks &
+ setPfnInternalAllocation( PFN_vkInternalAllocationNotification pfnInternalAllocation_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pfnInternalAllocation = pfnInternalAllocation_;
+ return *this;
+ }
+
+ AllocationCallbacks & setPfnInternalFree( PFN_vkInternalFreeNotification pfnInternalFree_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pfnInternalFree = pfnInternalFree_;
+ return *this;
+ }
+
+ operator VkAllocationCallbacks const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkAllocationCallbacks *>( this );
+ }
+
+ operator VkAllocationCallbacks &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkAllocationCallbacks *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( AllocationCallbacks const & ) const = default;
+#else
+ bool operator==( AllocationCallbacks const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( pUserData == rhs.pUserData ) && ( pfnAllocation == rhs.pfnAllocation ) &&
+ ( pfnReallocation == rhs.pfnReallocation ) && ( pfnFree == rhs.pfnFree ) &&
+ ( pfnInternalAllocation == rhs.pfnInternalAllocation ) && ( pfnInternalFree == rhs.pfnInternalFree );
+ }
+
+ bool operator!=( AllocationCallbacks const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ void * pUserData = {};
+ PFN_vkAllocationFunction pfnAllocation = {};
+ PFN_vkReallocationFunction pfnReallocation = {};
+ PFN_vkFreeFunction pfnFree = {};
+ PFN_vkInternalAllocationNotification pfnInternalAllocation = {};
+ PFN_vkInternalFreeNotification pfnInternalFree = {};
+ };
+ static_assert( sizeof( AllocationCallbacks ) == sizeof( VkAllocationCallbacks ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<AllocationCallbacks>::value, "struct wrapper is not a standard layout!" );
+
+ struct ComponentMapping
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ ComponentMapping( VULKAN_HPP_NAMESPACE::ComponentSwizzle r_ = VULKAN_HPP_NAMESPACE::ComponentSwizzle::eIdentity,
+ VULKAN_HPP_NAMESPACE::ComponentSwizzle g_ = VULKAN_HPP_NAMESPACE::ComponentSwizzle::eIdentity,
+ VULKAN_HPP_NAMESPACE::ComponentSwizzle b_ = VULKAN_HPP_NAMESPACE::ComponentSwizzle::eIdentity,
+ VULKAN_HPP_NAMESPACE::ComponentSwizzle a_ = VULKAN_HPP_NAMESPACE::ComponentSwizzle::eIdentity )
+ VULKAN_HPP_NOEXCEPT
+ : r( r_ )
+ , g( g_ )
+ , b( b_ )
+ , a( a_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR ComponentMapping( ComponentMapping const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ComponentMapping( VkComponentMapping const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ComponentMapping( *reinterpret_cast<ComponentMapping const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ComponentMapping & operator=( ComponentMapping const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ComponentMapping & operator=( VkComponentMapping const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ComponentMapping const *>( &rhs );
+ return *this;
+ }
+
+ ComponentMapping & setR( VULKAN_HPP_NAMESPACE::ComponentSwizzle r_ ) VULKAN_HPP_NOEXCEPT
+ {
+ r = r_;
+ return *this;
+ }
+
+ ComponentMapping & setG( VULKAN_HPP_NAMESPACE::ComponentSwizzle g_ ) VULKAN_HPP_NOEXCEPT
+ {
+ g = g_;
+ return *this;
+ }
+
+ ComponentMapping & setB( VULKAN_HPP_NAMESPACE::ComponentSwizzle b_ ) VULKAN_HPP_NOEXCEPT
+ {
+ b = b_;
+ return *this;
+ }
+
+ ComponentMapping & setA( VULKAN_HPP_NAMESPACE::ComponentSwizzle a_ ) VULKAN_HPP_NOEXCEPT
+ {
+ a = a_;
+ return *this;
+ }
+
+ operator VkComponentMapping const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkComponentMapping *>( this );
+ }
+
+ operator VkComponentMapping &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkComponentMapping *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ComponentMapping const & ) const = default;
+#else
+ bool operator==( ComponentMapping const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( r == rhs.r ) && ( g == rhs.g ) && ( b == rhs.b ) && ( a == rhs.a );
+ }
+
+ bool operator!=( ComponentMapping const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::ComponentSwizzle r = VULKAN_HPP_NAMESPACE::ComponentSwizzle::eIdentity;
+ VULKAN_HPP_NAMESPACE::ComponentSwizzle g = VULKAN_HPP_NAMESPACE::ComponentSwizzle::eIdentity;
+ VULKAN_HPP_NAMESPACE::ComponentSwizzle b = VULKAN_HPP_NAMESPACE::ComponentSwizzle::eIdentity;
+ VULKAN_HPP_NAMESPACE::ComponentSwizzle a = VULKAN_HPP_NAMESPACE::ComponentSwizzle::eIdentity;
+ };
+ static_assert( sizeof( ComponentMapping ) == sizeof( VkComponentMapping ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ComponentMapping>::value, "struct wrapper is not a standard layout!" );
+
+#if defined( VK_USE_PLATFORM_ANDROID_KHR )
+ struct AndroidHardwareBufferFormatPropertiesANDROID
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eAndroidHardwareBufferFormatPropertiesANDROID;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR AndroidHardwareBufferFormatPropertiesANDROID(
+ VULKAN_HPP_NAMESPACE::Format format_ = VULKAN_HPP_NAMESPACE::Format::eUndefined,
+ uint64_t externalFormat_ = {},
+ VULKAN_HPP_NAMESPACE::FormatFeatureFlags formatFeatures_ = {},
+ VULKAN_HPP_NAMESPACE::ComponentMapping samplerYcbcrConversionComponents_ = {},
+ VULKAN_HPP_NAMESPACE::SamplerYcbcrModelConversion suggestedYcbcrModel_ =
+ VULKAN_HPP_NAMESPACE::SamplerYcbcrModelConversion::eRgbIdentity,
+ VULKAN_HPP_NAMESPACE::SamplerYcbcrRange suggestedYcbcrRange_ = VULKAN_HPP_NAMESPACE::SamplerYcbcrRange::eItuFull,
+ VULKAN_HPP_NAMESPACE::ChromaLocation suggestedXChromaOffset_ = VULKAN_HPP_NAMESPACE::ChromaLocation::eCositedEven,
+ VULKAN_HPP_NAMESPACE::ChromaLocation suggestedYChromaOffset_ =
+ VULKAN_HPP_NAMESPACE::ChromaLocation::eCositedEven ) VULKAN_HPP_NOEXCEPT
+ : format( format_ )
+ , externalFormat( externalFormat_ )
+ , formatFeatures( formatFeatures_ )
+ , samplerYcbcrConversionComponents( samplerYcbcrConversionComponents_ )
+ , suggestedYcbcrModel( suggestedYcbcrModel_ )
+ , suggestedYcbcrRange( suggestedYcbcrRange_ )
+ , suggestedXChromaOffset( suggestedXChromaOffset_ )
+ , suggestedYChromaOffset( suggestedYChromaOffset_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR AndroidHardwareBufferFormatPropertiesANDROID(
+ AndroidHardwareBufferFormatPropertiesANDROID const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ AndroidHardwareBufferFormatPropertiesANDROID( VkAndroidHardwareBufferFormatPropertiesANDROID const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : AndroidHardwareBufferFormatPropertiesANDROID(
+ *reinterpret_cast<AndroidHardwareBufferFormatPropertiesANDROID const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 AndroidHardwareBufferFormatPropertiesANDROID &
+ operator=( AndroidHardwareBufferFormatPropertiesANDROID const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ AndroidHardwareBufferFormatPropertiesANDROID &
+ operator=( VkAndroidHardwareBufferFormatPropertiesANDROID const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AndroidHardwareBufferFormatPropertiesANDROID const *>( &rhs );
+ return *this;
+ }
+
+ operator VkAndroidHardwareBufferFormatPropertiesANDROID const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkAndroidHardwareBufferFormatPropertiesANDROID *>( this );
+ }
+
+ operator VkAndroidHardwareBufferFormatPropertiesANDROID &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkAndroidHardwareBufferFormatPropertiesANDROID *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( AndroidHardwareBufferFormatPropertiesANDROID const & ) const = default;
+# else
+ bool operator==( AndroidHardwareBufferFormatPropertiesANDROID const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( format == rhs.format ) &&
+ ( externalFormat == rhs.externalFormat ) && ( formatFeatures == rhs.formatFeatures ) &&
+ ( samplerYcbcrConversionComponents == rhs.samplerYcbcrConversionComponents ) &&
+ ( suggestedYcbcrModel == rhs.suggestedYcbcrModel ) && ( suggestedYcbcrRange == rhs.suggestedYcbcrRange ) &&
+ ( suggestedXChromaOffset == rhs.suggestedXChromaOffset ) &&
+ ( suggestedYChromaOffset == rhs.suggestedYChromaOffset );
+ }
+
+ bool operator!=( AndroidHardwareBufferFormatPropertiesANDROID const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAndroidHardwareBufferFormatPropertiesANDROID;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Format format = VULKAN_HPP_NAMESPACE::Format::eUndefined;
+ uint64_t externalFormat = {};
+ VULKAN_HPP_NAMESPACE::FormatFeatureFlags formatFeatures = {};
+ VULKAN_HPP_NAMESPACE::ComponentMapping samplerYcbcrConversionComponents = {};
+ VULKAN_HPP_NAMESPACE::SamplerYcbcrModelConversion suggestedYcbcrModel =
+ VULKAN_HPP_NAMESPACE::SamplerYcbcrModelConversion::eRgbIdentity;
+ VULKAN_HPP_NAMESPACE::SamplerYcbcrRange suggestedYcbcrRange = VULKAN_HPP_NAMESPACE::SamplerYcbcrRange::eItuFull;
+ VULKAN_HPP_NAMESPACE::ChromaLocation suggestedXChromaOffset = VULKAN_HPP_NAMESPACE::ChromaLocation::eCositedEven;
+ VULKAN_HPP_NAMESPACE::ChromaLocation suggestedYChromaOffset = VULKAN_HPP_NAMESPACE::ChromaLocation::eCositedEven;
+ };
+ static_assert( sizeof( AndroidHardwareBufferFormatPropertiesANDROID ) ==
+ sizeof( VkAndroidHardwareBufferFormatPropertiesANDROID ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<AndroidHardwareBufferFormatPropertiesANDROID>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eAndroidHardwareBufferFormatPropertiesANDROID>
+ {
+ using Type = AndroidHardwareBufferFormatPropertiesANDROID;
+ };
+#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
+
+#if defined( VK_USE_PLATFORM_ANDROID_KHR )
+ struct AndroidHardwareBufferPropertiesANDROID
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eAndroidHardwareBufferPropertiesANDROID;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR AndroidHardwareBufferPropertiesANDROID( VULKAN_HPP_NAMESPACE::DeviceSize allocationSize_ = {},
+ uint32_t memoryTypeBits_ = {} ) VULKAN_HPP_NOEXCEPT
+ : allocationSize( allocationSize_ )
+ , memoryTypeBits( memoryTypeBits_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR AndroidHardwareBufferPropertiesANDROID( AndroidHardwareBufferPropertiesANDROID const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ AndroidHardwareBufferPropertiesANDROID( VkAndroidHardwareBufferPropertiesANDROID const & rhs ) VULKAN_HPP_NOEXCEPT
+ : AndroidHardwareBufferPropertiesANDROID(
+ *reinterpret_cast<AndroidHardwareBufferPropertiesANDROID const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 AndroidHardwareBufferPropertiesANDROID &
+ operator=( AndroidHardwareBufferPropertiesANDROID const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ AndroidHardwareBufferPropertiesANDROID &
+ operator=( VkAndroidHardwareBufferPropertiesANDROID const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AndroidHardwareBufferPropertiesANDROID const *>( &rhs );
+ return *this;
+ }
+
+ operator VkAndroidHardwareBufferPropertiesANDROID const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkAndroidHardwareBufferPropertiesANDROID *>( this );
+ }
+
+ operator VkAndroidHardwareBufferPropertiesANDROID &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkAndroidHardwareBufferPropertiesANDROID *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( AndroidHardwareBufferPropertiesANDROID const & ) const = default;
+# else
+ bool operator==( AndroidHardwareBufferPropertiesANDROID const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( allocationSize == rhs.allocationSize ) &&
+ ( memoryTypeBits == rhs.memoryTypeBits );
+ }
+
+ bool operator!=( AndroidHardwareBufferPropertiesANDROID const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAndroidHardwareBufferPropertiesANDROID;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize allocationSize = {};
+ uint32_t memoryTypeBits = {};
+ };
+ static_assert( sizeof( AndroidHardwareBufferPropertiesANDROID ) == sizeof( VkAndroidHardwareBufferPropertiesANDROID ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<AndroidHardwareBufferPropertiesANDROID>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eAndroidHardwareBufferPropertiesANDROID>
+ {
+ using Type = AndroidHardwareBufferPropertiesANDROID;
+ };
+#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
+
+#if defined( VK_USE_PLATFORM_ANDROID_KHR )
+ struct AndroidHardwareBufferUsageANDROID
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eAndroidHardwareBufferUsageANDROID;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ AndroidHardwareBufferUsageANDROID( uint64_t androidHardwareBufferUsage_ = {} ) VULKAN_HPP_NOEXCEPT
+ : androidHardwareBufferUsage( androidHardwareBufferUsage_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ AndroidHardwareBufferUsageANDROID( AndroidHardwareBufferUsageANDROID const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ AndroidHardwareBufferUsageANDROID( VkAndroidHardwareBufferUsageANDROID const & rhs ) VULKAN_HPP_NOEXCEPT
+ : AndroidHardwareBufferUsageANDROID( *reinterpret_cast<AndroidHardwareBufferUsageANDROID const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 AndroidHardwareBufferUsageANDROID &
+ operator=( AndroidHardwareBufferUsageANDROID const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ AndroidHardwareBufferUsageANDROID & operator=( VkAndroidHardwareBufferUsageANDROID const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AndroidHardwareBufferUsageANDROID const *>( &rhs );
+ return *this;
+ }
+
+ operator VkAndroidHardwareBufferUsageANDROID const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkAndroidHardwareBufferUsageANDROID *>( this );
+ }
+
+ operator VkAndroidHardwareBufferUsageANDROID &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkAndroidHardwareBufferUsageANDROID *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( AndroidHardwareBufferUsageANDROID const & ) const = default;
+# else
+ bool operator==( AndroidHardwareBufferUsageANDROID const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( androidHardwareBufferUsage == rhs.androidHardwareBufferUsage );
+ }
+
+ bool operator!=( AndroidHardwareBufferUsageANDROID const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAndroidHardwareBufferUsageANDROID;
+ void * pNext = {};
+ uint64_t androidHardwareBufferUsage = {};
+ };
+ static_assert( sizeof( AndroidHardwareBufferUsageANDROID ) == sizeof( VkAndroidHardwareBufferUsageANDROID ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<AndroidHardwareBufferUsageANDROID>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eAndroidHardwareBufferUsageANDROID>
+ {
+ using Type = AndroidHardwareBufferUsageANDROID;
+ };
+#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
+
+#if defined( VK_USE_PLATFORM_ANDROID_KHR )
+ struct AndroidSurfaceCreateInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eAndroidSurfaceCreateInfoKHR;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR AndroidSurfaceCreateInfoKHR( VULKAN_HPP_NAMESPACE::AndroidSurfaceCreateFlagsKHR flags_ = {},
+ struct ANativeWindow * window_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , window( window_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ AndroidSurfaceCreateInfoKHR( AndroidSurfaceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ AndroidSurfaceCreateInfoKHR( VkAndroidSurfaceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : AndroidSurfaceCreateInfoKHR( *reinterpret_cast<AndroidSurfaceCreateInfoKHR const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 AndroidSurfaceCreateInfoKHR &
+ operator=( AndroidSurfaceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ AndroidSurfaceCreateInfoKHR & operator=( VkAndroidSurfaceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AndroidSurfaceCreateInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ AndroidSurfaceCreateInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ AndroidSurfaceCreateInfoKHR &
+ setFlags( VULKAN_HPP_NAMESPACE::AndroidSurfaceCreateFlagsKHR flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ AndroidSurfaceCreateInfoKHR & setWindow( struct ANativeWindow * window_ ) VULKAN_HPP_NOEXCEPT
+ {
+ window = window_;
+ return *this;
+ }
+
+ operator VkAndroidSurfaceCreateInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkAndroidSurfaceCreateInfoKHR *>( this );
+ }
+
+ operator VkAndroidSurfaceCreateInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkAndroidSurfaceCreateInfoKHR *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( AndroidSurfaceCreateInfoKHR const & ) const = default;
+# else
+ bool operator==( AndroidSurfaceCreateInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) && ( window == rhs.window );
+ }
+
+ bool operator!=( AndroidSurfaceCreateInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAndroidSurfaceCreateInfoKHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::AndroidSurfaceCreateFlagsKHR flags = {};
+ struct ANativeWindow * window = {};
+ };
+ static_assert( sizeof( AndroidSurfaceCreateInfoKHR ) == sizeof( VkAndroidSurfaceCreateInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<AndroidSurfaceCreateInfoKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eAndroidSurfaceCreateInfoKHR>
+ {
+ using Type = AndroidSurfaceCreateInfoKHR;
+ };
+#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
+
+ struct ApplicationInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eApplicationInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR ApplicationInfo( const char * pApplicationName_ = {},
+ uint32_t applicationVersion_ = {},
+ const char * pEngineName_ = {},
+ uint32_t engineVersion_ = {},
+ uint32_t apiVersion_ = {} ) VULKAN_HPP_NOEXCEPT
+ : pApplicationName( pApplicationName_ )
+ , applicationVersion( applicationVersion_ )
+ , pEngineName( pEngineName_ )
+ , engineVersion( engineVersion_ )
+ , apiVersion( apiVersion_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR ApplicationInfo( ApplicationInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ApplicationInfo( VkApplicationInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ApplicationInfo( *reinterpret_cast<ApplicationInfo const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ApplicationInfo & operator=( ApplicationInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ApplicationInfo & operator=( VkApplicationInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ApplicationInfo const *>( &rhs );
+ return *this;
+ }
+
+ ApplicationInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ ApplicationInfo & setPApplicationName( const char * pApplicationName_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pApplicationName = pApplicationName_;
+ return *this;
+ }
+
+ ApplicationInfo & setApplicationVersion( uint32_t applicationVersion_ ) VULKAN_HPP_NOEXCEPT
+ {
+ applicationVersion = applicationVersion_;
+ return *this;
+ }
+
+ ApplicationInfo & setPEngineName( const char * pEngineName_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pEngineName = pEngineName_;
+ return *this;
+ }
+
+ ApplicationInfo & setEngineVersion( uint32_t engineVersion_ ) VULKAN_HPP_NOEXCEPT
+ {
+ engineVersion = engineVersion_;
+ return *this;
+ }
+
+ ApplicationInfo & setApiVersion( uint32_t apiVersion_ ) VULKAN_HPP_NOEXCEPT
+ {
+ apiVersion = apiVersion_;
+ return *this;
+ }
+
+ operator VkApplicationInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkApplicationInfo *>( this );
+ }
+
+ operator VkApplicationInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkApplicationInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ApplicationInfo const & ) const = default;
+#else
+ bool operator==( ApplicationInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( pApplicationName == rhs.pApplicationName ) &&
+ ( applicationVersion == rhs.applicationVersion ) && ( pEngineName == rhs.pEngineName ) &&
+ ( engineVersion == rhs.engineVersion ) && ( apiVersion == rhs.apiVersion );
+ }
+
+ bool operator!=( ApplicationInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eApplicationInfo;
+ const void * pNext = {};
+ const char * pApplicationName = {};
+ uint32_t applicationVersion = {};
+ const char * pEngineName = {};
+ uint32_t engineVersion = {};
+ uint32_t apiVersion = {};
+ };
+ static_assert( sizeof( ApplicationInfo ) == sizeof( VkApplicationInfo ), "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ApplicationInfo>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eApplicationInfo>
+ {
+ using Type = ApplicationInfo;
+ };
+
+ struct AttachmentDescription
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR AttachmentDescription(
+ VULKAN_HPP_NAMESPACE::AttachmentDescriptionFlags flags_ = {},
+ VULKAN_HPP_NAMESPACE::Format format_ = VULKAN_HPP_NAMESPACE::Format::eUndefined,
+ VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples_ = VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1,
+ VULKAN_HPP_NAMESPACE::AttachmentLoadOp loadOp_ = VULKAN_HPP_NAMESPACE::AttachmentLoadOp::eLoad,
+ VULKAN_HPP_NAMESPACE::AttachmentStoreOp storeOp_ = VULKAN_HPP_NAMESPACE::AttachmentStoreOp::eStore,
+ VULKAN_HPP_NAMESPACE::AttachmentLoadOp stencilLoadOp_ = VULKAN_HPP_NAMESPACE::AttachmentLoadOp::eLoad,
+ VULKAN_HPP_NAMESPACE::AttachmentStoreOp stencilStoreOp_ = VULKAN_HPP_NAMESPACE::AttachmentStoreOp::eStore,
+ VULKAN_HPP_NAMESPACE::ImageLayout initialLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined,
+ VULKAN_HPP_NAMESPACE::ImageLayout finalLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined )
+ VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , format( format_ )
+ , samples( samples_ )
+ , loadOp( loadOp_ )
+ , storeOp( storeOp_ )
+ , stencilLoadOp( stencilLoadOp_ )
+ , stencilStoreOp( stencilStoreOp_ )
+ , initialLayout( initialLayout_ )
+ , finalLayout( finalLayout_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR AttachmentDescription( AttachmentDescription const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ AttachmentDescription( VkAttachmentDescription const & rhs ) VULKAN_HPP_NOEXCEPT
+ : AttachmentDescription( *reinterpret_cast<AttachmentDescription const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 AttachmentDescription &
+ operator=( AttachmentDescription const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ AttachmentDescription & operator=( VkAttachmentDescription const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AttachmentDescription const *>( &rhs );
+ return *this;
+ }
+
+ AttachmentDescription & setFlags( VULKAN_HPP_NAMESPACE::AttachmentDescriptionFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ AttachmentDescription & setFormat( VULKAN_HPP_NAMESPACE::Format format_ ) VULKAN_HPP_NOEXCEPT
+ {
+ format = format_;
+ return *this;
+ }
+
+ AttachmentDescription & setSamples( VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples_ ) VULKAN_HPP_NOEXCEPT
+ {
+ samples = samples_;
+ return *this;
+ }
+
+ AttachmentDescription & setLoadOp( VULKAN_HPP_NAMESPACE::AttachmentLoadOp loadOp_ ) VULKAN_HPP_NOEXCEPT
+ {
+ loadOp = loadOp_;
+ return *this;
+ }
+
+ AttachmentDescription & setStoreOp( VULKAN_HPP_NAMESPACE::AttachmentStoreOp storeOp_ ) VULKAN_HPP_NOEXCEPT
+ {
+ storeOp = storeOp_;
+ return *this;
+ }
+
+ AttachmentDescription &
+ setStencilLoadOp( VULKAN_HPP_NAMESPACE::AttachmentLoadOp stencilLoadOp_ ) VULKAN_HPP_NOEXCEPT
+ {
+ stencilLoadOp = stencilLoadOp_;
+ return *this;
+ }
+
+ AttachmentDescription &
+ setStencilStoreOp( VULKAN_HPP_NAMESPACE::AttachmentStoreOp stencilStoreOp_ ) VULKAN_HPP_NOEXCEPT
+ {
+ stencilStoreOp = stencilStoreOp_;
+ return *this;
+ }
+
+ AttachmentDescription & setInitialLayout( VULKAN_HPP_NAMESPACE::ImageLayout initialLayout_ ) VULKAN_HPP_NOEXCEPT
+ {
+ initialLayout = initialLayout_;
+ return *this;
+ }
+
+ AttachmentDescription & setFinalLayout( VULKAN_HPP_NAMESPACE::ImageLayout finalLayout_ ) VULKAN_HPP_NOEXCEPT
+ {
+ finalLayout = finalLayout_;
+ return *this;
+ }
+
+ operator VkAttachmentDescription const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkAttachmentDescription *>( this );
+ }
+
+ operator VkAttachmentDescription &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkAttachmentDescription *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( AttachmentDescription const & ) const = default;
+#else
+ bool operator==( AttachmentDescription const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( flags == rhs.flags ) && ( format == rhs.format ) && ( samples == rhs.samples ) &&
+ ( loadOp == rhs.loadOp ) && ( storeOp == rhs.storeOp ) && ( stencilLoadOp == rhs.stencilLoadOp ) &&
+ ( stencilStoreOp == rhs.stencilStoreOp ) && ( initialLayout == rhs.initialLayout ) &&
+ ( finalLayout == rhs.finalLayout );
+ }
+
+ bool operator!=( AttachmentDescription const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::AttachmentDescriptionFlags flags = {};
+ VULKAN_HPP_NAMESPACE::Format format = VULKAN_HPP_NAMESPACE::Format::eUndefined;
+ VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples = VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1;
+ VULKAN_HPP_NAMESPACE::AttachmentLoadOp loadOp = VULKAN_HPP_NAMESPACE::AttachmentLoadOp::eLoad;
+ VULKAN_HPP_NAMESPACE::AttachmentStoreOp storeOp = VULKAN_HPP_NAMESPACE::AttachmentStoreOp::eStore;
+ VULKAN_HPP_NAMESPACE::AttachmentLoadOp stencilLoadOp = VULKAN_HPP_NAMESPACE::AttachmentLoadOp::eLoad;
+ VULKAN_HPP_NAMESPACE::AttachmentStoreOp stencilStoreOp = VULKAN_HPP_NAMESPACE::AttachmentStoreOp::eStore;
+ VULKAN_HPP_NAMESPACE::ImageLayout initialLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
+ VULKAN_HPP_NAMESPACE::ImageLayout finalLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
+ };
+ static_assert( sizeof( AttachmentDescription ) == sizeof( VkAttachmentDescription ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<AttachmentDescription>::value, "struct wrapper is not a standard layout!" );
+
+ struct AttachmentDescription2
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eAttachmentDescription2;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR AttachmentDescription2(
+ VULKAN_HPP_NAMESPACE::AttachmentDescriptionFlags flags_ = {},
+ VULKAN_HPP_NAMESPACE::Format format_ = VULKAN_HPP_NAMESPACE::Format::eUndefined,
+ VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples_ = VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1,
+ VULKAN_HPP_NAMESPACE::AttachmentLoadOp loadOp_ = VULKAN_HPP_NAMESPACE::AttachmentLoadOp::eLoad,
+ VULKAN_HPP_NAMESPACE::AttachmentStoreOp storeOp_ = VULKAN_HPP_NAMESPACE::AttachmentStoreOp::eStore,
+ VULKAN_HPP_NAMESPACE::AttachmentLoadOp stencilLoadOp_ = VULKAN_HPP_NAMESPACE::AttachmentLoadOp::eLoad,
+ VULKAN_HPP_NAMESPACE::AttachmentStoreOp stencilStoreOp_ = VULKAN_HPP_NAMESPACE::AttachmentStoreOp::eStore,
+ VULKAN_HPP_NAMESPACE::ImageLayout initialLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined,
+ VULKAN_HPP_NAMESPACE::ImageLayout finalLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined )
+ VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , format( format_ )
+ , samples( samples_ )
+ , loadOp( loadOp_ )
+ , storeOp( storeOp_ )
+ , stencilLoadOp( stencilLoadOp_ )
+ , stencilStoreOp( stencilStoreOp_ )
+ , initialLayout( initialLayout_ )
+ , finalLayout( finalLayout_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR AttachmentDescription2( AttachmentDescription2 const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ AttachmentDescription2( VkAttachmentDescription2 const & rhs ) VULKAN_HPP_NOEXCEPT
+ : AttachmentDescription2( *reinterpret_cast<AttachmentDescription2 const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 AttachmentDescription2 &
+ operator=( AttachmentDescription2 const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ AttachmentDescription2 & operator=( VkAttachmentDescription2 const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AttachmentDescription2 const *>( &rhs );
+ return *this;
+ }
+
+ AttachmentDescription2 & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ AttachmentDescription2 & setFlags( VULKAN_HPP_NAMESPACE::AttachmentDescriptionFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ AttachmentDescription2 & setFormat( VULKAN_HPP_NAMESPACE::Format format_ ) VULKAN_HPP_NOEXCEPT
+ {
+ format = format_;
+ return *this;
+ }
+
+ AttachmentDescription2 & setSamples( VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples_ ) VULKAN_HPP_NOEXCEPT
+ {
+ samples = samples_;
+ return *this;
+ }
+
+ AttachmentDescription2 & setLoadOp( VULKAN_HPP_NAMESPACE::AttachmentLoadOp loadOp_ ) VULKAN_HPP_NOEXCEPT
+ {
+ loadOp = loadOp_;
+ return *this;
+ }
+
+ AttachmentDescription2 & setStoreOp( VULKAN_HPP_NAMESPACE::AttachmentStoreOp storeOp_ ) VULKAN_HPP_NOEXCEPT
+ {
+ storeOp = storeOp_;
+ return *this;
+ }
+
+ AttachmentDescription2 &
+ setStencilLoadOp( VULKAN_HPP_NAMESPACE::AttachmentLoadOp stencilLoadOp_ ) VULKAN_HPP_NOEXCEPT
+ {
+ stencilLoadOp = stencilLoadOp_;
+ return *this;
+ }
+
+ AttachmentDescription2 &
+ setStencilStoreOp( VULKAN_HPP_NAMESPACE::AttachmentStoreOp stencilStoreOp_ ) VULKAN_HPP_NOEXCEPT
+ {
+ stencilStoreOp = stencilStoreOp_;
+ return *this;
+ }
+
+ AttachmentDescription2 & setInitialLayout( VULKAN_HPP_NAMESPACE::ImageLayout initialLayout_ ) VULKAN_HPP_NOEXCEPT
+ {
+ initialLayout = initialLayout_;
+ return *this;
+ }
+
+ AttachmentDescription2 & setFinalLayout( VULKAN_HPP_NAMESPACE::ImageLayout finalLayout_ ) VULKAN_HPP_NOEXCEPT
+ {
+ finalLayout = finalLayout_;
+ return *this;
+ }
+
+ operator VkAttachmentDescription2 const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkAttachmentDescription2 *>( this );
+ }
+
+ operator VkAttachmentDescription2 &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkAttachmentDescription2 *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( AttachmentDescription2 const & ) const = default;
+#else
+ bool operator==( AttachmentDescription2 const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) && ( format == rhs.format ) &&
+ ( samples == rhs.samples ) && ( loadOp == rhs.loadOp ) && ( storeOp == rhs.storeOp ) &&
+ ( stencilLoadOp == rhs.stencilLoadOp ) && ( stencilStoreOp == rhs.stencilStoreOp ) &&
+ ( initialLayout == rhs.initialLayout ) && ( finalLayout == rhs.finalLayout );
+ }
+
+ bool operator!=( AttachmentDescription2 const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAttachmentDescription2;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::AttachmentDescriptionFlags flags = {};
+ VULKAN_HPP_NAMESPACE::Format format = VULKAN_HPP_NAMESPACE::Format::eUndefined;
+ VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples = VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1;
+ VULKAN_HPP_NAMESPACE::AttachmentLoadOp loadOp = VULKAN_HPP_NAMESPACE::AttachmentLoadOp::eLoad;
+ VULKAN_HPP_NAMESPACE::AttachmentStoreOp storeOp = VULKAN_HPP_NAMESPACE::AttachmentStoreOp::eStore;
+ VULKAN_HPP_NAMESPACE::AttachmentLoadOp stencilLoadOp = VULKAN_HPP_NAMESPACE::AttachmentLoadOp::eLoad;
+ VULKAN_HPP_NAMESPACE::AttachmentStoreOp stencilStoreOp = VULKAN_HPP_NAMESPACE::AttachmentStoreOp::eStore;
+ VULKAN_HPP_NAMESPACE::ImageLayout initialLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
+ VULKAN_HPP_NAMESPACE::ImageLayout finalLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
+ };
+ static_assert( sizeof( AttachmentDescription2 ) == sizeof( VkAttachmentDescription2 ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<AttachmentDescription2>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eAttachmentDescription2>
+ {
+ using Type = AttachmentDescription2;
+ };
+ using AttachmentDescription2KHR = AttachmentDescription2;
+
+ struct AttachmentDescriptionStencilLayout
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eAttachmentDescriptionStencilLayout;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR AttachmentDescriptionStencilLayout(
+ VULKAN_HPP_NAMESPACE::ImageLayout stencilInitialLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined,
+ VULKAN_HPP_NAMESPACE::ImageLayout stencilFinalLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined )
+ VULKAN_HPP_NOEXCEPT
+ : stencilInitialLayout( stencilInitialLayout_ )
+ , stencilFinalLayout( stencilFinalLayout_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR AttachmentDescriptionStencilLayout( AttachmentDescriptionStencilLayout const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ AttachmentDescriptionStencilLayout( VkAttachmentDescriptionStencilLayout const & rhs ) VULKAN_HPP_NOEXCEPT
+ : AttachmentDescriptionStencilLayout( *reinterpret_cast<AttachmentDescriptionStencilLayout const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 AttachmentDescriptionStencilLayout &
+ operator=( AttachmentDescriptionStencilLayout const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ AttachmentDescriptionStencilLayout &
+ operator=( VkAttachmentDescriptionStencilLayout const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AttachmentDescriptionStencilLayout const *>( &rhs );
+ return *this;
+ }
+
+ AttachmentDescriptionStencilLayout & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ AttachmentDescriptionStencilLayout &
+ setStencilInitialLayout( VULKAN_HPP_NAMESPACE::ImageLayout stencilInitialLayout_ ) VULKAN_HPP_NOEXCEPT
+ {
+ stencilInitialLayout = stencilInitialLayout_;
+ return *this;
+ }
+
+ AttachmentDescriptionStencilLayout &
+ setStencilFinalLayout( VULKAN_HPP_NAMESPACE::ImageLayout stencilFinalLayout_ ) VULKAN_HPP_NOEXCEPT
+ {
+ stencilFinalLayout = stencilFinalLayout_;
+ return *this;
+ }
+
+ operator VkAttachmentDescriptionStencilLayout const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkAttachmentDescriptionStencilLayout *>( this );
+ }
+
+ operator VkAttachmentDescriptionStencilLayout &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkAttachmentDescriptionStencilLayout *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( AttachmentDescriptionStencilLayout const & ) const = default;
+#else
+ bool operator==( AttachmentDescriptionStencilLayout const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( stencilInitialLayout == rhs.stencilInitialLayout ) &&
+ ( stencilFinalLayout == rhs.stencilFinalLayout );
+ }
+
+ bool operator!=( AttachmentDescriptionStencilLayout const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAttachmentDescriptionStencilLayout;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ImageLayout stencilInitialLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
+ VULKAN_HPP_NAMESPACE::ImageLayout stencilFinalLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
+ };
+ static_assert( sizeof( AttachmentDescriptionStencilLayout ) == sizeof( VkAttachmentDescriptionStencilLayout ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<AttachmentDescriptionStencilLayout>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eAttachmentDescriptionStencilLayout>
+ {
+ using Type = AttachmentDescriptionStencilLayout;
+ };
+ using AttachmentDescriptionStencilLayoutKHR = AttachmentDescriptionStencilLayout;
+
+ struct AttachmentReference
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR AttachmentReference(
+ uint32_t attachment_ = {},
+ VULKAN_HPP_NAMESPACE::ImageLayout layout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined ) VULKAN_HPP_NOEXCEPT
+ : attachment( attachment_ )
+ , layout( layout_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR AttachmentReference( AttachmentReference const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ AttachmentReference( VkAttachmentReference const & rhs ) VULKAN_HPP_NOEXCEPT
+ : AttachmentReference( *reinterpret_cast<AttachmentReference const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 AttachmentReference &
+ operator=( AttachmentReference const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ AttachmentReference & operator=( VkAttachmentReference const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AttachmentReference const *>( &rhs );
+ return *this;
+ }
+
+ AttachmentReference & setAttachment( uint32_t attachment_ ) VULKAN_HPP_NOEXCEPT
+ {
+ attachment = attachment_;
+ return *this;
+ }
+
+ AttachmentReference & setLayout( VULKAN_HPP_NAMESPACE::ImageLayout layout_ ) VULKAN_HPP_NOEXCEPT
+ {
+ layout = layout_;
+ return *this;
+ }
+
+ operator VkAttachmentReference const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkAttachmentReference *>( this );
+ }
+
+ operator VkAttachmentReference &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkAttachmentReference *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( AttachmentReference const & ) const = default;
+#else
+ bool operator==( AttachmentReference const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( attachment == rhs.attachment ) && ( layout == rhs.layout );
+ }
+
+ bool operator!=( AttachmentReference const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ uint32_t attachment = {};
+ VULKAN_HPP_NAMESPACE::ImageLayout layout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
+ };
+ static_assert( sizeof( AttachmentReference ) == sizeof( VkAttachmentReference ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<AttachmentReference>::value, "struct wrapper is not a standard layout!" );
+
+ struct AttachmentReference2
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eAttachmentReference2;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ AttachmentReference2( uint32_t attachment_ = {},
+ VULKAN_HPP_NAMESPACE::ImageLayout layout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined,
+ VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask_ = {} ) VULKAN_HPP_NOEXCEPT
+ : attachment( attachment_ )
+ , layout( layout_ )
+ , aspectMask( aspectMask_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR AttachmentReference2( AttachmentReference2 const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ AttachmentReference2( VkAttachmentReference2 const & rhs ) VULKAN_HPP_NOEXCEPT
+ : AttachmentReference2( *reinterpret_cast<AttachmentReference2 const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 AttachmentReference2 &
+ operator=( AttachmentReference2 const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ AttachmentReference2 & operator=( VkAttachmentReference2 const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AttachmentReference2 const *>( &rhs );
+ return *this;
+ }
+
+ AttachmentReference2 & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ AttachmentReference2 & setAttachment( uint32_t attachment_ ) VULKAN_HPP_NOEXCEPT
+ {
+ attachment = attachment_;
+ return *this;
+ }
+
+ AttachmentReference2 & setLayout( VULKAN_HPP_NAMESPACE::ImageLayout layout_ ) VULKAN_HPP_NOEXCEPT
+ {
+ layout = layout_;
+ return *this;
+ }
+
+ AttachmentReference2 & setAspectMask( VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask_ ) VULKAN_HPP_NOEXCEPT
+ {
+ aspectMask = aspectMask_;
+ return *this;
+ }
+
+ operator VkAttachmentReference2 const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkAttachmentReference2 *>( this );
+ }
+
+ operator VkAttachmentReference2 &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkAttachmentReference2 *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( AttachmentReference2 const & ) const = default;
+#else
+ bool operator==( AttachmentReference2 const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( attachment == rhs.attachment ) &&
+ ( layout == rhs.layout ) && ( aspectMask == rhs.aspectMask );
+ }
+
+ bool operator!=( AttachmentReference2 const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAttachmentReference2;
+ const void * pNext = {};
+ uint32_t attachment = {};
+ VULKAN_HPP_NAMESPACE::ImageLayout layout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
+ VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask = {};
+ };
+ static_assert( sizeof( AttachmentReference2 ) == sizeof( VkAttachmentReference2 ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<AttachmentReference2>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eAttachmentReference2>
+ {
+ using Type = AttachmentReference2;
+ };
+ using AttachmentReference2KHR = AttachmentReference2;
+
+ struct AttachmentReferenceStencilLayout
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eAttachmentReferenceStencilLayout;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ AttachmentReferenceStencilLayout( VULKAN_HPP_NAMESPACE::ImageLayout stencilLayout_ =
+ VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined ) VULKAN_HPP_NOEXCEPT
+ : stencilLayout( stencilLayout_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ AttachmentReferenceStencilLayout( AttachmentReferenceStencilLayout const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ AttachmentReferenceStencilLayout( VkAttachmentReferenceStencilLayout const & rhs ) VULKAN_HPP_NOEXCEPT
+ : AttachmentReferenceStencilLayout( *reinterpret_cast<AttachmentReferenceStencilLayout const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 AttachmentReferenceStencilLayout &
+ operator=( AttachmentReferenceStencilLayout const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ AttachmentReferenceStencilLayout & operator=( VkAttachmentReferenceStencilLayout const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AttachmentReferenceStencilLayout const *>( &rhs );
+ return *this;
+ }
+
+ AttachmentReferenceStencilLayout & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ AttachmentReferenceStencilLayout &
+ setStencilLayout( VULKAN_HPP_NAMESPACE::ImageLayout stencilLayout_ ) VULKAN_HPP_NOEXCEPT
+ {
+ stencilLayout = stencilLayout_;
+ return *this;
+ }
+
+ operator VkAttachmentReferenceStencilLayout const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkAttachmentReferenceStencilLayout *>( this );
+ }
+
+ operator VkAttachmentReferenceStencilLayout &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkAttachmentReferenceStencilLayout *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( AttachmentReferenceStencilLayout const & ) const = default;
+#else
+ bool operator==( AttachmentReferenceStencilLayout const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( stencilLayout == rhs.stencilLayout );
+ }
+
+ bool operator!=( AttachmentReferenceStencilLayout const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAttachmentReferenceStencilLayout;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ImageLayout stencilLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
+ };
+ static_assert( sizeof( AttachmentReferenceStencilLayout ) == sizeof( VkAttachmentReferenceStencilLayout ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<AttachmentReferenceStencilLayout>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eAttachmentReferenceStencilLayout>
+ {
+ using Type = AttachmentReferenceStencilLayout;
+ };
+ using AttachmentReferenceStencilLayoutKHR = AttachmentReferenceStencilLayout;
+
+ struct Extent2D
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR Extent2D( uint32_t width_ = {}, uint32_t height_ = {} ) VULKAN_HPP_NOEXCEPT
+ : width( width_ )
+ , height( height_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR Extent2D( Extent2D const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ Extent2D( VkExtent2D const & rhs ) VULKAN_HPP_NOEXCEPT : Extent2D( *reinterpret_cast<Extent2D const *>( &rhs ) ) {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 Extent2D & operator=( Extent2D const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ Extent2D & operator=( VkExtent2D const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::Extent2D const *>( &rhs );
+ return *this;
+ }
+
+ Extent2D & setWidth( uint32_t width_ ) VULKAN_HPP_NOEXCEPT
+ {
+ width = width_;
+ return *this;
+ }
+
+ Extent2D & setHeight( uint32_t height_ ) VULKAN_HPP_NOEXCEPT
+ {
+ height = height_;
+ return *this;
+ }
+
+ operator VkExtent2D const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkExtent2D *>( this );
+ }
+
+ operator VkExtent2D &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkExtent2D *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( Extent2D const & ) const = default;
+#else
+ bool operator==( Extent2D const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( width == rhs.width ) && ( height == rhs.height );
+ }
+
+ bool operator!=( Extent2D const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ uint32_t width = {};
+ uint32_t height = {};
+ };
+ static_assert( sizeof( Extent2D ) == sizeof( VkExtent2D ), "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<Extent2D>::value, "struct wrapper is not a standard layout!" );
+
+ struct SampleLocationEXT
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR SampleLocationEXT( float x_ = {}, float y_ = {} ) VULKAN_HPP_NOEXCEPT
+ : x( x_ )
+ , y( y_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR SampleLocationEXT( SampleLocationEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SampleLocationEXT( VkSampleLocationEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : SampleLocationEXT( *reinterpret_cast<SampleLocationEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 SampleLocationEXT &
+ operator=( SampleLocationEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SampleLocationEXT & operator=( VkSampleLocationEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SampleLocationEXT const *>( &rhs );
+ return *this;
+ }
+
+ SampleLocationEXT & setX( float x_ ) VULKAN_HPP_NOEXCEPT
+ {
+ x = x_;
+ return *this;
+ }
+
+ SampleLocationEXT & setY( float y_ ) VULKAN_HPP_NOEXCEPT
+ {
+ y = y_;
+ return *this;
+ }
+
+ operator VkSampleLocationEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkSampleLocationEXT *>( this );
+ }
+
+ operator VkSampleLocationEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkSampleLocationEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( SampleLocationEXT const & ) const = default;
+#else
+ bool operator==( SampleLocationEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( x == rhs.x ) && ( y == rhs.y );
+ }
+
+ bool operator!=( SampleLocationEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ float x = {};
+ float y = {};
+ };
+ static_assert( sizeof( SampleLocationEXT ) == sizeof( VkSampleLocationEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<SampleLocationEXT>::value, "struct wrapper is not a standard layout!" );
+
+ struct SampleLocationsInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSampleLocationsInfoEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR SampleLocationsInfoEXT(
+ VULKAN_HPP_NAMESPACE::SampleCountFlagBits sampleLocationsPerPixel_ =
+ VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1,
+ VULKAN_HPP_NAMESPACE::Extent2D sampleLocationGridSize_ = {},
+ uint32_t sampleLocationsCount_ = {},
+ const VULKAN_HPP_NAMESPACE::SampleLocationEXT * pSampleLocations_ = {} ) VULKAN_HPP_NOEXCEPT
+ : sampleLocationsPerPixel( sampleLocationsPerPixel_ )
+ , sampleLocationGridSize( sampleLocationGridSize_ )
+ , sampleLocationsCount( sampleLocationsCount_ )
+ , pSampleLocations( pSampleLocations_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR SampleLocationsInfoEXT( SampleLocationsInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SampleLocationsInfoEXT( VkSampleLocationsInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : SampleLocationsInfoEXT( *reinterpret_cast<SampleLocationsInfoEXT const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ SampleLocationsInfoEXT(
+ VULKAN_HPP_NAMESPACE::SampleCountFlagBits sampleLocationsPerPixel_,
+ VULKAN_HPP_NAMESPACE::Extent2D sampleLocationGridSize_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SampleLocationEXT> const &
+ sampleLocations_ )
+ : sampleLocationsPerPixel( sampleLocationsPerPixel_ )
+ , sampleLocationGridSize( sampleLocationGridSize_ )
+ , sampleLocationsCount( static_cast<uint32_t>( sampleLocations_.size() ) )
+ , pSampleLocations( sampleLocations_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 SampleLocationsInfoEXT &
+ operator=( SampleLocationsInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SampleLocationsInfoEXT & operator=( VkSampleLocationsInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SampleLocationsInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ SampleLocationsInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ SampleLocationsInfoEXT & setSampleLocationsPerPixel(
+ VULKAN_HPP_NAMESPACE::SampleCountFlagBits sampleLocationsPerPixel_ ) VULKAN_HPP_NOEXCEPT
+ {
+ sampleLocationsPerPixel = sampleLocationsPerPixel_;
+ return *this;
+ }
+
+ SampleLocationsInfoEXT &
+ setSampleLocationGridSize( VULKAN_HPP_NAMESPACE::Extent2D const & sampleLocationGridSize_ ) VULKAN_HPP_NOEXCEPT
+ {
+ sampleLocationGridSize = sampleLocationGridSize_;
+ return *this;
+ }
+
+ SampleLocationsInfoEXT & setSampleLocationsCount( uint32_t sampleLocationsCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ sampleLocationsCount = sampleLocationsCount_;
+ return *this;
+ }
+
+ SampleLocationsInfoEXT &
+ setPSampleLocations( const VULKAN_HPP_NAMESPACE::SampleLocationEXT * pSampleLocations_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pSampleLocations = pSampleLocations_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ SampleLocationsInfoEXT & setSampleLocations(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SampleLocationEXT> const &
+ sampleLocations_ ) VULKAN_HPP_NOEXCEPT
+ {
+ sampleLocationsCount = static_cast<uint32_t>( sampleLocations_.size() );
+ pSampleLocations = sampleLocations_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkSampleLocationsInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkSampleLocationsInfoEXT *>( this );
+ }
+
+ operator VkSampleLocationsInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkSampleLocationsInfoEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( SampleLocationsInfoEXT const & ) const = default;
+#else
+ bool operator==( SampleLocationsInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( sampleLocationsPerPixel == rhs.sampleLocationsPerPixel ) &&
+ ( sampleLocationGridSize == rhs.sampleLocationGridSize ) &&
+ ( sampleLocationsCount == rhs.sampleLocationsCount ) && ( pSampleLocations == rhs.pSampleLocations );
+ }
+
+ bool operator!=( SampleLocationsInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSampleLocationsInfoEXT;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::SampleCountFlagBits sampleLocationsPerPixel = VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1;
+ VULKAN_HPP_NAMESPACE::Extent2D sampleLocationGridSize = {};
+ uint32_t sampleLocationsCount = {};
+ const VULKAN_HPP_NAMESPACE::SampleLocationEXT * pSampleLocations = {};
+ };
+ static_assert( sizeof( SampleLocationsInfoEXT ) == sizeof( VkSampleLocationsInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<SampleLocationsInfoEXT>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eSampleLocationsInfoEXT>
+ {
+ using Type = SampleLocationsInfoEXT;
+ };
+
+ struct AttachmentSampleLocationsEXT
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR AttachmentSampleLocationsEXT(
+ uint32_t attachmentIndex_ = {},
+ VULKAN_HPP_NAMESPACE::SampleLocationsInfoEXT sampleLocationsInfo_ = {} ) VULKAN_HPP_NOEXCEPT
+ : attachmentIndex( attachmentIndex_ )
+ , sampleLocationsInfo( sampleLocationsInfo_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ AttachmentSampleLocationsEXT( AttachmentSampleLocationsEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ AttachmentSampleLocationsEXT( VkAttachmentSampleLocationsEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : AttachmentSampleLocationsEXT( *reinterpret_cast<AttachmentSampleLocationsEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 AttachmentSampleLocationsEXT &
+ operator=( AttachmentSampleLocationsEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ AttachmentSampleLocationsEXT & operator=( VkAttachmentSampleLocationsEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AttachmentSampleLocationsEXT const *>( &rhs );
+ return *this;
+ }
+
+ AttachmentSampleLocationsEXT & setAttachmentIndex( uint32_t attachmentIndex_ ) VULKAN_HPP_NOEXCEPT
+ {
+ attachmentIndex = attachmentIndex_;
+ return *this;
+ }
+
+ AttachmentSampleLocationsEXT & setSampleLocationsInfo(
+ VULKAN_HPP_NAMESPACE::SampleLocationsInfoEXT const & sampleLocationsInfo_ ) VULKAN_HPP_NOEXCEPT
+ {
+ sampleLocationsInfo = sampleLocationsInfo_;
+ return *this;
+ }
+
+ operator VkAttachmentSampleLocationsEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkAttachmentSampleLocationsEXT *>( this );
+ }
+
+ operator VkAttachmentSampleLocationsEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkAttachmentSampleLocationsEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( AttachmentSampleLocationsEXT const & ) const = default;
+#else
+ bool operator==( AttachmentSampleLocationsEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( attachmentIndex == rhs.attachmentIndex ) && ( sampleLocationsInfo == rhs.sampleLocationsInfo );
+ }
+
+ bool operator!=( AttachmentSampleLocationsEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ uint32_t attachmentIndex = {};
+ VULKAN_HPP_NAMESPACE::SampleLocationsInfoEXT sampleLocationsInfo = {};
+ };
+ static_assert( sizeof( AttachmentSampleLocationsEXT ) == sizeof( VkAttachmentSampleLocationsEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<AttachmentSampleLocationsEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ struct BaseInStructure
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ BaseInStructure( VULKAN_HPP_NAMESPACE::StructureType sType_ =
+ VULKAN_HPP_NAMESPACE::StructureType::eApplicationInfo ) VULKAN_HPP_NOEXCEPT : sType( sType_ )
+ {}
+
+ BaseInStructure( BaseInStructure const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ BaseInStructure( VkBaseInStructure const & rhs ) VULKAN_HPP_NOEXCEPT
+ : BaseInStructure( *reinterpret_cast<BaseInStructure const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ BaseInStructure & operator=( BaseInStructure const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ BaseInStructure & operator=( VkBaseInStructure const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BaseInStructure const *>( &rhs );
+ return *this;
+ }
+
+ BaseInStructure & setPNext( const struct VULKAN_HPP_NAMESPACE::BaseInStructure * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ operator VkBaseInStructure const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkBaseInStructure *>( this );
+ }
+
+ operator VkBaseInStructure &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkBaseInStructure *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( BaseInStructure const & ) const = default;
+#else
+ bool operator==( BaseInStructure const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext );
+ }
+
+ bool operator!=( BaseInStructure const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = VULKAN_HPP_NAMESPACE::StructureType::eApplicationInfo;
+ const struct VULKAN_HPP_NAMESPACE::BaseInStructure * pNext = {};
+ };
+ static_assert( sizeof( BaseInStructure ) == sizeof( VkBaseInStructure ), "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<BaseInStructure>::value, "struct wrapper is not a standard layout!" );
+
+ struct BaseOutStructure
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ BaseOutStructure( VULKAN_HPP_NAMESPACE::StructureType sType_ =
+ VULKAN_HPP_NAMESPACE::StructureType::eApplicationInfo ) VULKAN_HPP_NOEXCEPT : sType( sType_ )
+ {}
+
+ BaseOutStructure( BaseOutStructure const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ BaseOutStructure( VkBaseOutStructure const & rhs ) VULKAN_HPP_NOEXCEPT
+ : BaseOutStructure( *reinterpret_cast<BaseOutStructure const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ BaseOutStructure & operator=( BaseOutStructure const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ BaseOutStructure & operator=( VkBaseOutStructure const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BaseOutStructure const *>( &rhs );
+ return *this;
+ }
+
+ BaseOutStructure & setPNext( struct VULKAN_HPP_NAMESPACE::BaseOutStructure * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ operator VkBaseOutStructure const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkBaseOutStructure *>( this );
+ }
+
+ operator VkBaseOutStructure &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkBaseOutStructure *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( BaseOutStructure const & ) const = default;
+#else
+ bool operator==( BaseOutStructure const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext );
+ }
+
+ bool operator!=( BaseOutStructure const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = VULKAN_HPP_NAMESPACE::StructureType::eApplicationInfo;
+ struct VULKAN_HPP_NAMESPACE::BaseOutStructure * pNext = {};
+ };
+ static_assert( sizeof( BaseOutStructure ) == sizeof( VkBaseOutStructure ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<BaseOutStructure>::value, "struct wrapper is not a standard layout!" );
+
+ struct BindAccelerationStructureMemoryInfoNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eBindAccelerationStructureMemoryInfoNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ BindAccelerationStructureMemoryInfoNV( VULKAN_HPP_NAMESPACE::AccelerationStructureNV accelerationStructure_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceMemory memory_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset_ = {},
+ uint32_t deviceIndexCount_ = {},
+ const uint32_t * pDeviceIndices_ = {} ) VULKAN_HPP_NOEXCEPT
+ : accelerationStructure( accelerationStructure_ )
+ , memory( memory_ )
+ , memoryOffset( memoryOffset_ )
+ , deviceIndexCount( deviceIndexCount_ )
+ , pDeviceIndices( pDeviceIndices_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR BindAccelerationStructureMemoryInfoNV( BindAccelerationStructureMemoryInfoNV const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ BindAccelerationStructureMemoryInfoNV( VkBindAccelerationStructureMemoryInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ : BindAccelerationStructureMemoryInfoNV(
+ *reinterpret_cast<BindAccelerationStructureMemoryInfoNV const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ BindAccelerationStructureMemoryInfoNV(
+ VULKAN_HPP_NAMESPACE::AccelerationStructureNV accelerationStructure_,
+ VULKAN_HPP_NAMESPACE::DeviceMemory memory_,
+ VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & deviceIndices_ )
+ : accelerationStructure( accelerationStructure_ )
+ , memory( memory_ )
+ , memoryOffset( memoryOffset_ )
+ , deviceIndexCount( static_cast<uint32_t>( deviceIndices_.size() ) )
+ , pDeviceIndices( deviceIndices_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 BindAccelerationStructureMemoryInfoNV &
+ operator=( BindAccelerationStructureMemoryInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ BindAccelerationStructureMemoryInfoNV &
+ operator=( VkBindAccelerationStructureMemoryInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BindAccelerationStructureMemoryInfoNV const *>( &rhs );
+ return *this;
+ }
+
+ BindAccelerationStructureMemoryInfoNV & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ BindAccelerationStructureMemoryInfoNV & setAccelerationStructure(
+ VULKAN_HPP_NAMESPACE::AccelerationStructureNV accelerationStructure_ ) VULKAN_HPP_NOEXCEPT
+ {
+ accelerationStructure = accelerationStructure_;
+ return *this;
+ }
+
+ BindAccelerationStructureMemoryInfoNV & setMemory( VULKAN_HPP_NAMESPACE::DeviceMemory memory_ ) VULKAN_HPP_NOEXCEPT
+ {
+ memory = memory_;
+ return *this;
+ }
+
+ BindAccelerationStructureMemoryInfoNV &
+ setMemoryOffset( VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ memoryOffset = memoryOffset_;
+ return *this;
+ }
+
+ BindAccelerationStructureMemoryInfoNV & setDeviceIndexCount( uint32_t deviceIndexCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ deviceIndexCount = deviceIndexCount_;
+ return *this;
+ }
+
+ BindAccelerationStructureMemoryInfoNV & setPDeviceIndices( const uint32_t * pDeviceIndices_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pDeviceIndices = pDeviceIndices_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ BindAccelerationStructureMemoryInfoNV & setDeviceIndices(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & deviceIndices_ ) VULKAN_HPP_NOEXCEPT
+ {
+ deviceIndexCount = static_cast<uint32_t>( deviceIndices_.size() );
+ pDeviceIndices = deviceIndices_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkBindAccelerationStructureMemoryInfoNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkBindAccelerationStructureMemoryInfoNV *>( this );
+ }
+
+ operator VkBindAccelerationStructureMemoryInfoNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkBindAccelerationStructureMemoryInfoNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( BindAccelerationStructureMemoryInfoNV const & ) const = default;
+#else
+ bool operator==( BindAccelerationStructureMemoryInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( accelerationStructure == rhs.accelerationStructure ) && ( memory == rhs.memory ) &&
+ ( memoryOffset == rhs.memoryOffset ) && ( deviceIndexCount == rhs.deviceIndexCount ) &&
+ ( pDeviceIndices == rhs.pDeviceIndices );
+ }
+
+ bool operator!=( BindAccelerationStructureMemoryInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBindAccelerationStructureMemoryInfoNV;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::AccelerationStructureNV accelerationStructure = {};
+ VULKAN_HPP_NAMESPACE::DeviceMemory memory = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset = {};
+ uint32_t deviceIndexCount = {};
+ const uint32_t * pDeviceIndices = {};
+ };
+ static_assert( sizeof( BindAccelerationStructureMemoryInfoNV ) == sizeof( VkBindAccelerationStructureMemoryInfoNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<BindAccelerationStructureMemoryInfoNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eBindAccelerationStructureMemoryInfoNV>
+ {
+ using Type = BindAccelerationStructureMemoryInfoNV;
+ };
+
+ struct BindBufferMemoryDeviceGroupInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBindBufferMemoryDeviceGroupInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR BindBufferMemoryDeviceGroupInfo( uint32_t deviceIndexCount_ = {},
+ const uint32_t * pDeviceIndices_ = {} ) VULKAN_HPP_NOEXCEPT
+ : deviceIndexCount( deviceIndexCount_ )
+ , pDeviceIndices( pDeviceIndices_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ BindBufferMemoryDeviceGroupInfo( BindBufferMemoryDeviceGroupInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ BindBufferMemoryDeviceGroupInfo( VkBindBufferMemoryDeviceGroupInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : BindBufferMemoryDeviceGroupInfo( *reinterpret_cast<BindBufferMemoryDeviceGroupInfo const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ BindBufferMemoryDeviceGroupInfo(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & deviceIndices_ )
+ : deviceIndexCount( static_cast<uint32_t>( deviceIndices_.size() ) ), pDeviceIndices( deviceIndices_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 BindBufferMemoryDeviceGroupInfo &
+ operator=( BindBufferMemoryDeviceGroupInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ BindBufferMemoryDeviceGroupInfo & operator=( VkBindBufferMemoryDeviceGroupInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BindBufferMemoryDeviceGroupInfo const *>( &rhs );
+ return *this;
+ }
+
+ BindBufferMemoryDeviceGroupInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ BindBufferMemoryDeviceGroupInfo & setDeviceIndexCount( uint32_t deviceIndexCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ deviceIndexCount = deviceIndexCount_;
+ return *this;
+ }
+
+ BindBufferMemoryDeviceGroupInfo & setPDeviceIndices( const uint32_t * pDeviceIndices_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pDeviceIndices = pDeviceIndices_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ BindBufferMemoryDeviceGroupInfo & setDeviceIndices(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & deviceIndices_ ) VULKAN_HPP_NOEXCEPT
+ {
+ deviceIndexCount = static_cast<uint32_t>( deviceIndices_.size() );
+ pDeviceIndices = deviceIndices_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkBindBufferMemoryDeviceGroupInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkBindBufferMemoryDeviceGroupInfo *>( this );
+ }
+
+ operator VkBindBufferMemoryDeviceGroupInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkBindBufferMemoryDeviceGroupInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( BindBufferMemoryDeviceGroupInfo const & ) const = default;
+#else
+ bool operator==( BindBufferMemoryDeviceGroupInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( deviceIndexCount == rhs.deviceIndexCount ) &&
+ ( pDeviceIndices == rhs.pDeviceIndices );
+ }
+
+ bool operator!=( BindBufferMemoryDeviceGroupInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBindBufferMemoryDeviceGroupInfo;
+ const void * pNext = {};
+ uint32_t deviceIndexCount = {};
+ const uint32_t * pDeviceIndices = {};
+ };
+ static_assert( sizeof( BindBufferMemoryDeviceGroupInfo ) == sizeof( VkBindBufferMemoryDeviceGroupInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<BindBufferMemoryDeviceGroupInfo>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eBindBufferMemoryDeviceGroupInfo>
+ {
+ using Type = BindBufferMemoryDeviceGroupInfo;
+ };
+ using BindBufferMemoryDeviceGroupInfoKHR = BindBufferMemoryDeviceGroupInfo;
+
+ struct BindBufferMemoryInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBindBufferMemoryInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR BindBufferMemoryInfo( VULKAN_HPP_NAMESPACE::Buffer buffer_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceMemory memory_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset_ = {} ) VULKAN_HPP_NOEXCEPT
+ : buffer( buffer_ )
+ , memory( memory_ )
+ , memoryOffset( memoryOffset_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR BindBufferMemoryInfo( BindBufferMemoryInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ BindBufferMemoryInfo( VkBindBufferMemoryInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : BindBufferMemoryInfo( *reinterpret_cast<BindBufferMemoryInfo const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 BindBufferMemoryInfo &
+ operator=( BindBufferMemoryInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ BindBufferMemoryInfo & operator=( VkBindBufferMemoryInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BindBufferMemoryInfo const *>( &rhs );
+ return *this;
+ }
+
+ BindBufferMemoryInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ BindBufferMemoryInfo & setBuffer( VULKAN_HPP_NAMESPACE::Buffer buffer_ ) VULKAN_HPP_NOEXCEPT
+ {
+ buffer = buffer_;
+ return *this;
+ }
+
+ BindBufferMemoryInfo & setMemory( VULKAN_HPP_NAMESPACE::DeviceMemory memory_ ) VULKAN_HPP_NOEXCEPT
+ {
+ memory = memory_;
+ return *this;
+ }
+
+ BindBufferMemoryInfo & setMemoryOffset( VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ memoryOffset = memoryOffset_;
+ return *this;
+ }
+
+ operator VkBindBufferMemoryInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkBindBufferMemoryInfo *>( this );
+ }
+
+ operator VkBindBufferMemoryInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkBindBufferMemoryInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( BindBufferMemoryInfo const & ) const = default;
+#else
+ bool operator==( BindBufferMemoryInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( buffer == rhs.buffer ) && ( memory == rhs.memory ) &&
+ ( memoryOffset == rhs.memoryOffset );
+ }
+
+ bool operator!=( BindBufferMemoryInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBindBufferMemoryInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Buffer buffer = {};
+ VULKAN_HPP_NAMESPACE::DeviceMemory memory = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset = {};
+ };
+ static_assert( sizeof( BindBufferMemoryInfo ) == sizeof( VkBindBufferMemoryInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<BindBufferMemoryInfo>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eBindBufferMemoryInfo>
+ {
+ using Type = BindBufferMemoryInfo;
+ };
+ using BindBufferMemoryInfoKHR = BindBufferMemoryInfo;
+
+ struct Offset2D
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR Offset2D( int32_t x_ = {}, int32_t y_ = {} ) VULKAN_HPP_NOEXCEPT
+ : x( x_ )
+ , y( y_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR Offset2D( Offset2D const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ Offset2D( VkOffset2D const & rhs ) VULKAN_HPP_NOEXCEPT : Offset2D( *reinterpret_cast<Offset2D const *>( &rhs ) ) {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 Offset2D & operator=( Offset2D const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ Offset2D & operator=( VkOffset2D const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::Offset2D const *>( &rhs );
+ return *this;
+ }
+
+ Offset2D & setX( int32_t x_ ) VULKAN_HPP_NOEXCEPT
+ {
+ x = x_;
+ return *this;
+ }
+
+ Offset2D & setY( int32_t y_ ) VULKAN_HPP_NOEXCEPT
+ {
+ y = y_;
+ return *this;
+ }
+
+ operator VkOffset2D const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkOffset2D *>( this );
+ }
+
+ operator VkOffset2D &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkOffset2D *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( Offset2D const & ) const = default;
+#else
+ bool operator==( Offset2D const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( x == rhs.x ) && ( y == rhs.y );
+ }
+
+ bool operator!=( Offset2D const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ int32_t x = {};
+ int32_t y = {};
+ };
+ static_assert( sizeof( Offset2D ) == sizeof( VkOffset2D ), "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<Offset2D>::value, "struct wrapper is not a standard layout!" );
+
+ struct Rect2D
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR Rect2D( VULKAN_HPP_NAMESPACE::Offset2D offset_ = {},
+ VULKAN_HPP_NAMESPACE::Extent2D extent_ = {} ) VULKAN_HPP_NOEXCEPT
+ : offset( offset_ )
+ , extent( extent_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR Rect2D( Rect2D const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ Rect2D( VkRect2D const & rhs ) VULKAN_HPP_NOEXCEPT : Rect2D( *reinterpret_cast<Rect2D const *>( &rhs ) ) {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 Rect2D & operator=( Rect2D const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ Rect2D & operator=( VkRect2D const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::Rect2D const *>( &rhs );
+ return *this;
+ }
+
+ Rect2D & setOffset( VULKAN_HPP_NAMESPACE::Offset2D const & offset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ offset = offset_;
+ return *this;
+ }
+
+ Rect2D & setExtent( VULKAN_HPP_NAMESPACE::Extent2D const & extent_ ) VULKAN_HPP_NOEXCEPT
+ {
+ extent = extent_;
+ return *this;
+ }
+
+ operator VkRect2D const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkRect2D *>( this );
+ }
+
+ operator VkRect2D &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkRect2D *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( Rect2D const & ) const = default;
+#else
+ bool operator==( Rect2D const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( offset == rhs.offset ) && ( extent == rhs.extent );
+ }
+
+ bool operator!=( Rect2D const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::Offset2D offset = {};
+ VULKAN_HPP_NAMESPACE::Extent2D extent = {};
+ };
+ static_assert( sizeof( Rect2D ) == sizeof( VkRect2D ), "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<Rect2D>::value, "struct wrapper is not a standard layout!" );
+
+ struct BindImageMemoryDeviceGroupInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBindImageMemoryDeviceGroupInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR BindImageMemoryDeviceGroupInfo(
+ uint32_t deviceIndexCount_ = {},
+ const uint32_t * pDeviceIndices_ = {},
+ uint32_t splitInstanceBindRegionCount_ = {},
+ const VULKAN_HPP_NAMESPACE::Rect2D * pSplitInstanceBindRegions_ = {} ) VULKAN_HPP_NOEXCEPT
+ : deviceIndexCount( deviceIndexCount_ )
+ , pDeviceIndices( pDeviceIndices_ )
+ , splitInstanceBindRegionCount( splitInstanceBindRegionCount_ )
+ , pSplitInstanceBindRegions( pSplitInstanceBindRegions_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ BindImageMemoryDeviceGroupInfo( BindImageMemoryDeviceGroupInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ BindImageMemoryDeviceGroupInfo( VkBindImageMemoryDeviceGroupInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : BindImageMemoryDeviceGroupInfo( *reinterpret_cast<BindImageMemoryDeviceGroupInfo const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ BindImageMemoryDeviceGroupInfo(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & deviceIndices_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Rect2D> const &
+ splitInstanceBindRegions_ = {} )
+ : deviceIndexCount( static_cast<uint32_t>( deviceIndices_.size() ) )
+ , pDeviceIndices( deviceIndices_.data() )
+ , splitInstanceBindRegionCount( static_cast<uint32_t>( splitInstanceBindRegions_.size() ) )
+ , pSplitInstanceBindRegions( splitInstanceBindRegions_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 BindImageMemoryDeviceGroupInfo &
+ operator=( BindImageMemoryDeviceGroupInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ BindImageMemoryDeviceGroupInfo & operator=( VkBindImageMemoryDeviceGroupInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BindImageMemoryDeviceGroupInfo const *>( &rhs );
+ return *this;
+ }
+
+ BindImageMemoryDeviceGroupInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ BindImageMemoryDeviceGroupInfo & setDeviceIndexCount( uint32_t deviceIndexCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ deviceIndexCount = deviceIndexCount_;
+ return *this;
+ }
+
+ BindImageMemoryDeviceGroupInfo & setPDeviceIndices( const uint32_t * pDeviceIndices_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pDeviceIndices = pDeviceIndices_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ BindImageMemoryDeviceGroupInfo & setDeviceIndices(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & deviceIndices_ ) VULKAN_HPP_NOEXCEPT
+ {
+ deviceIndexCount = static_cast<uint32_t>( deviceIndices_.size() );
+ pDeviceIndices = deviceIndices_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ BindImageMemoryDeviceGroupInfo &
+ setSplitInstanceBindRegionCount( uint32_t splitInstanceBindRegionCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ splitInstanceBindRegionCount = splitInstanceBindRegionCount_;
+ return *this;
+ }
+
+ BindImageMemoryDeviceGroupInfo & setPSplitInstanceBindRegions(
+ const VULKAN_HPP_NAMESPACE::Rect2D * pSplitInstanceBindRegions_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pSplitInstanceBindRegions = pSplitInstanceBindRegions_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ BindImageMemoryDeviceGroupInfo & setSplitInstanceBindRegions(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Rect2D> const &
+ splitInstanceBindRegions_ ) VULKAN_HPP_NOEXCEPT
+ {
+ splitInstanceBindRegionCount = static_cast<uint32_t>( splitInstanceBindRegions_.size() );
+ pSplitInstanceBindRegions = splitInstanceBindRegions_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkBindImageMemoryDeviceGroupInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkBindImageMemoryDeviceGroupInfo *>( this );
+ }
+
+ operator VkBindImageMemoryDeviceGroupInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkBindImageMemoryDeviceGroupInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( BindImageMemoryDeviceGroupInfo const & ) const = default;
+#else
+ bool operator==( BindImageMemoryDeviceGroupInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( deviceIndexCount == rhs.deviceIndexCount ) &&
+ ( pDeviceIndices == rhs.pDeviceIndices ) &&
+ ( splitInstanceBindRegionCount == rhs.splitInstanceBindRegionCount ) &&
+ ( pSplitInstanceBindRegions == rhs.pSplitInstanceBindRegions );
+ }
+
+ bool operator!=( BindImageMemoryDeviceGroupInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBindImageMemoryDeviceGroupInfo;
+ const void * pNext = {};
+ uint32_t deviceIndexCount = {};
+ const uint32_t * pDeviceIndices = {};
+ uint32_t splitInstanceBindRegionCount = {};
+ const VULKAN_HPP_NAMESPACE::Rect2D * pSplitInstanceBindRegions = {};
+ };
+ static_assert( sizeof( BindImageMemoryDeviceGroupInfo ) == sizeof( VkBindImageMemoryDeviceGroupInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<BindImageMemoryDeviceGroupInfo>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eBindImageMemoryDeviceGroupInfo>
+ {
+ using Type = BindImageMemoryDeviceGroupInfo;
+ };
+ using BindImageMemoryDeviceGroupInfoKHR = BindImageMemoryDeviceGroupInfo;
+
+ struct BindImageMemoryInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBindImageMemoryInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR BindImageMemoryInfo( VULKAN_HPP_NAMESPACE::Image image_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceMemory memory_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset_ = {} ) VULKAN_HPP_NOEXCEPT
+ : image( image_ )
+ , memory( memory_ )
+ , memoryOffset( memoryOffset_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR BindImageMemoryInfo( BindImageMemoryInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ BindImageMemoryInfo( VkBindImageMemoryInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : BindImageMemoryInfo( *reinterpret_cast<BindImageMemoryInfo const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 BindImageMemoryInfo &
+ operator=( BindImageMemoryInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ BindImageMemoryInfo & operator=( VkBindImageMemoryInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BindImageMemoryInfo const *>( &rhs );
+ return *this;
+ }
+
+ BindImageMemoryInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ BindImageMemoryInfo & setImage( VULKAN_HPP_NAMESPACE::Image image_ ) VULKAN_HPP_NOEXCEPT
+ {
+ image = image_;
+ return *this;
+ }
+
+ BindImageMemoryInfo & setMemory( VULKAN_HPP_NAMESPACE::DeviceMemory memory_ ) VULKAN_HPP_NOEXCEPT
+ {
+ memory = memory_;
+ return *this;
+ }
+
+ BindImageMemoryInfo & setMemoryOffset( VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ memoryOffset = memoryOffset_;
+ return *this;
+ }
+
+ operator VkBindImageMemoryInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkBindImageMemoryInfo *>( this );
+ }
+
+ operator VkBindImageMemoryInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkBindImageMemoryInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( BindImageMemoryInfo const & ) const = default;
+#else
+ bool operator==( BindImageMemoryInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( image == rhs.image ) && ( memory == rhs.memory ) &&
+ ( memoryOffset == rhs.memoryOffset );
+ }
+
+ bool operator!=( BindImageMemoryInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBindImageMemoryInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Image image = {};
+ VULKAN_HPP_NAMESPACE::DeviceMemory memory = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset = {};
+ };
+ static_assert( sizeof( BindImageMemoryInfo ) == sizeof( VkBindImageMemoryInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<BindImageMemoryInfo>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eBindImageMemoryInfo>
+ {
+ using Type = BindImageMemoryInfo;
+ };
+ using BindImageMemoryInfoKHR = BindImageMemoryInfo;
+
+ struct BindImageMemorySwapchainInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBindImageMemorySwapchainInfoKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR BindImageMemorySwapchainInfoKHR( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain_ = {},
+ uint32_t imageIndex_ = {} ) VULKAN_HPP_NOEXCEPT
+ : swapchain( swapchain_ )
+ , imageIndex( imageIndex_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ BindImageMemorySwapchainInfoKHR( BindImageMemorySwapchainInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ BindImageMemorySwapchainInfoKHR( VkBindImageMemorySwapchainInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : BindImageMemorySwapchainInfoKHR( *reinterpret_cast<BindImageMemorySwapchainInfoKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 BindImageMemorySwapchainInfoKHR &
+ operator=( BindImageMemorySwapchainInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ BindImageMemorySwapchainInfoKHR & operator=( VkBindImageMemorySwapchainInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BindImageMemorySwapchainInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ BindImageMemorySwapchainInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ BindImageMemorySwapchainInfoKHR & setSwapchain( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain_ ) VULKAN_HPP_NOEXCEPT
+ {
+ swapchain = swapchain_;
+ return *this;
+ }
+
+ BindImageMemorySwapchainInfoKHR & setImageIndex( uint32_t imageIndex_ ) VULKAN_HPP_NOEXCEPT
+ {
+ imageIndex = imageIndex_;
+ return *this;
+ }
+
+ operator VkBindImageMemorySwapchainInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkBindImageMemorySwapchainInfoKHR *>( this );
+ }
+
+ operator VkBindImageMemorySwapchainInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkBindImageMemorySwapchainInfoKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( BindImageMemorySwapchainInfoKHR const & ) const = default;
+#else
+ bool operator==( BindImageMemorySwapchainInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( swapchain == rhs.swapchain ) &&
+ ( imageIndex == rhs.imageIndex );
+ }
+
+ bool operator!=( BindImageMemorySwapchainInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBindImageMemorySwapchainInfoKHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain = {};
+ uint32_t imageIndex = {};
+ };
+ static_assert( sizeof( BindImageMemorySwapchainInfoKHR ) == sizeof( VkBindImageMemorySwapchainInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<BindImageMemorySwapchainInfoKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eBindImageMemorySwapchainInfoKHR>
+ {
+ using Type = BindImageMemorySwapchainInfoKHR;
+ };
+
+ struct BindImagePlaneMemoryInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBindImagePlaneMemoryInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ BindImagePlaneMemoryInfo( VULKAN_HPP_NAMESPACE::ImageAspectFlagBits planeAspect_ =
+ VULKAN_HPP_NAMESPACE::ImageAspectFlagBits::eColor ) VULKAN_HPP_NOEXCEPT
+ : planeAspect( planeAspect_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR BindImagePlaneMemoryInfo( BindImagePlaneMemoryInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ BindImagePlaneMemoryInfo( VkBindImagePlaneMemoryInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : BindImagePlaneMemoryInfo( *reinterpret_cast<BindImagePlaneMemoryInfo const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 BindImagePlaneMemoryInfo &
+ operator=( BindImagePlaneMemoryInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ BindImagePlaneMemoryInfo & operator=( VkBindImagePlaneMemoryInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BindImagePlaneMemoryInfo const *>( &rhs );
+ return *this;
+ }
+
+ BindImagePlaneMemoryInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ BindImagePlaneMemoryInfo &
+ setPlaneAspect( VULKAN_HPP_NAMESPACE::ImageAspectFlagBits planeAspect_ ) VULKAN_HPP_NOEXCEPT
+ {
+ planeAspect = planeAspect_;
+ return *this;
+ }
+
+ operator VkBindImagePlaneMemoryInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkBindImagePlaneMemoryInfo *>( this );
+ }
+
+ operator VkBindImagePlaneMemoryInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkBindImagePlaneMemoryInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( BindImagePlaneMemoryInfo const & ) const = default;
+#else
+ bool operator==( BindImagePlaneMemoryInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( planeAspect == rhs.planeAspect );
+ }
+
+ bool operator!=( BindImagePlaneMemoryInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBindImagePlaneMemoryInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ImageAspectFlagBits planeAspect = VULKAN_HPP_NAMESPACE::ImageAspectFlagBits::eColor;
+ };
+ static_assert( sizeof( BindImagePlaneMemoryInfo ) == sizeof( VkBindImagePlaneMemoryInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<BindImagePlaneMemoryInfo>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eBindImagePlaneMemoryInfo>
+ {
+ using Type = BindImagePlaneMemoryInfo;
+ };
+ using BindImagePlaneMemoryInfoKHR = BindImagePlaneMemoryInfo;
+
+ struct BindIndexBufferIndirectCommandNV
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR BindIndexBufferIndirectCommandNV(
+ VULKAN_HPP_NAMESPACE::DeviceAddress bufferAddress_ = {},
+ uint32_t size_ = {},
+ VULKAN_HPP_NAMESPACE::IndexType indexType_ = VULKAN_HPP_NAMESPACE::IndexType::eUint16 ) VULKAN_HPP_NOEXCEPT
+ : bufferAddress( bufferAddress_ )
+ , size( size_ )
+ , indexType( indexType_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ BindIndexBufferIndirectCommandNV( BindIndexBufferIndirectCommandNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ BindIndexBufferIndirectCommandNV( VkBindIndexBufferIndirectCommandNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ : BindIndexBufferIndirectCommandNV( *reinterpret_cast<BindIndexBufferIndirectCommandNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 BindIndexBufferIndirectCommandNV &
+ operator=( BindIndexBufferIndirectCommandNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ BindIndexBufferIndirectCommandNV & operator=( VkBindIndexBufferIndirectCommandNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BindIndexBufferIndirectCommandNV const *>( &rhs );
+ return *this;
+ }
+
+ BindIndexBufferIndirectCommandNV &
+ setBufferAddress( VULKAN_HPP_NAMESPACE::DeviceAddress bufferAddress_ ) VULKAN_HPP_NOEXCEPT
+ {
+ bufferAddress = bufferAddress_;
+ return *this;
+ }
+
+ BindIndexBufferIndirectCommandNV & setSize( uint32_t size_ ) VULKAN_HPP_NOEXCEPT
+ {
+ size = size_;
+ return *this;
+ }
+
+ BindIndexBufferIndirectCommandNV & setIndexType( VULKAN_HPP_NAMESPACE::IndexType indexType_ ) VULKAN_HPP_NOEXCEPT
+ {
+ indexType = indexType_;
+ return *this;
+ }
+
+ operator VkBindIndexBufferIndirectCommandNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkBindIndexBufferIndirectCommandNV *>( this );
+ }
+
+ operator VkBindIndexBufferIndirectCommandNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkBindIndexBufferIndirectCommandNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( BindIndexBufferIndirectCommandNV const & ) const = default;
+#else
+ bool operator==( BindIndexBufferIndirectCommandNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( bufferAddress == rhs.bufferAddress ) && ( size == rhs.size ) && ( indexType == rhs.indexType );
+ }
+
+ bool operator!=( BindIndexBufferIndirectCommandNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::DeviceAddress bufferAddress = {};
+ uint32_t size = {};
+ VULKAN_HPP_NAMESPACE::IndexType indexType = VULKAN_HPP_NAMESPACE::IndexType::eUint16;
+ };
+ static_assert( sizeof( BindIndexBufferIndirectCommandNV ) == sizeof( VkBindIndexBufferIndirectCommandNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<BindIndexBufferIndirectCommandNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ struct BindShaderGroupIndirectCommandNV
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR BindShaderGroupIndirectCommandNV( uint32_t groupIndex_ = {} ) VULKAN_HPP_NOEXCEPT
+ : groupIndex( groupIndex_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ BindShaderGroupIndirectCommandNV( BindShaderGroupIndirectCommandNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ BindShaderGroupIndirectCommandNV( VkBindShaderGroupIndirectCommandNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ : BindShaderGroupIndirectCommandNV( *reinterpret_cast<BindShaderGroupIndirectCommandNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 BindShaderGroupIndirectCommandNV &
+ operator=( BindShaderGroupIndirectCommandNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ BindShaderGroupIndirectCommandNV & operator=( VkBindShaderGroupIndirectCommandNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BindShaderGroupIndirectCommandNV const *>( &rhs );
+ return *this;
+ }
+
+ BindShaderGroupIndirectCommandNV & setGroupIndex( uint32_t groupIndex_ ) VULKAN_HPP_NOEXCEPT
+ {
+ groupIndex = groupIndex_;
+ return *this;
+ }
+
+ operator VkBindShaderGroupIndirectCommandNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkBindShaderGroupIndirectCommandNV *>( this );
+ }
+
+ operator VkBindShaderGroupIndirectCommandNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkBindShaderGroupIndirectCommandNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( BindShaderGroupIndirectCommandNV const & ) const = default;
+#else
+ bool operator==( BindShaderGroupIndirectCommandNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( groupIndex == rhs.groupIndex );
+ }
+
+ bool operator!=( BindShaderGroupIndirectCommandNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ uint32_t groupIndex = {};
+ };
+ static_assert( sizeof( BindShaderGroupIndirectCommandNV ) == sizeof( VkBindShaderGroupIndirectCommandNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<BindShaderGroupIndirectCommandNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ struct SparseMemoryBind
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR SparseMemoryBind( VULKAN_HPP_NAMESPACE::DeviceSize resourceOffset_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize size_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceMemory memory_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset_ = {},
+ VULKAN_HPP_NAMESPACE::SparseMemoryBindFlags flags_ = {} ) VULKAN_HPP_NOEXCEPT
+ : resourceOffset( resourceOffset_ )
+ , size( size_ )
+ , memory( memory_ )
+ , memoryOffset( memoryOffset_ )
+ , flags( flags_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR SparseMemoryBind( SparseMemoryBind const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SparseMemoryBind( VkSparseMemoryBind const & rhs ) VULKAN_HPP_NOEXCEPT
+ : SparseMemoryBind( *reinterpret_cast<SparseMemoryBind const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 SparseMemoryBind & operator=( SparseMemoryBind const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SparseMemoryBind & operator=( VkSparseMemoryBind const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SparseMemoryBind const *>( &rhs );
+ return *this;
+ }
+
+ SparseMemoryBind & setResourceOffset( VULKAN_HPP_NAMESPACE::DeviceSize resourceOffset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ resourceOffset = resourceOffset_;
+ return *this;
+ }
+
+ SparseMemoryBind & setSize( VULKAN_HPP_NAMESPACE::DeviceSize size_ ) VULKAN_HPP_NOEXCEPT
+ {
+ size = size_;
+ return *this;
+ }
+
+ SparseMemoryBind & setMemory( VULKAN_HPP_NAMESPACE::DeviceMemory memory_ ) VULKAN_HPP_NOEXCEPT
+ {
+ memory = memory_;
+ return *this;
+ }
+
+ SparseMemoryBind & setMemoryOffset( VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ memoryOffset = memoryOffset_;
+ return *this;
+ }
+
+ SparseMemoryBind & setFlags( VULKAN_HPP_NAMESPACE::SparseMemoryBindFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ operator VkSparseMemoryBind const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkSparseMemoryBind *>( this );
+ }
+
+ operator VkSparseMemoryBind &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkSparseMemoryBind *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( SparseMemoryBind const & ) const = default;
+#else
+ bool operator==( SparseMemoryBind const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( resourceOffset == rhs.resourceOffset ) && ( size == rhs.size ) && ( memory == rhs.memory ) &&
+ ( memoryOffset == rhs.memoryOffset ) && ( flags == rhs.flags );
+ }
+
+ bool operator!=( SparseMemoryBind const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::DeviceSize resourceOffset = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize size = {};
+ VULKAN_HPP_NAMESPACE::DeviceMemory memory = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset = {};
+ VULKAN_HPP_NAMESPACE::SparseMemoryBindFlags flags = {};
+ };
+ static_assert( sizeof( SparseMemoryBind ) == sizeof( VkSparseMemoryBind ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<SparseMemoryBind>::value, "struct wrapper is not a standard layout!" );
+
+ struct SparseBufferMemoryBindInfo
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ SparseBufferMemoryBindInfo( VULKAN_HPP_NAMESPACE::Buffer buffer_ = {},
+ uint32_t bindCount_ = {},
+ const VULKAN_HPP_NAMESPACE::SparseMemoryBind * pBinds_ = {} ) VULKAN_HPP_NOEXCEPT
+ : buffer( buffer_ )
+ , bindCount( bindCount_ )
+ , pBinds( pBinds_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ SparseBufferMemoryBindInfo( SparseBufferMemoryBindInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SparseBufferMemoryBindInfo( VkSparseBufferMemoryBindInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : SparseBufferMemoryBindInfo( *reinterpret_cast<SparseBufferMemoryBindInfo const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ SparseBufferMemoryBindInfo(
+ VULKAN_HPP_NAMESPACE::Buffer buffer_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SparseMemoryBind> const & binds_ )
+ : buffer( buffer_ ), bindCount( static_cast<uint32_t>( binds_.size() ) ), pBinds( binds_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 SparseBufferMemoryBindInfo &
+ operator=( SparseBufferMemoryBindInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SparseBufferMemoryBindInfo & operator=( VkSparseBufferMemoryBindInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SparseBufferMemoryBindInfo const *>( &rhs );
+ return *this;
+ }
+
+ SparseBufferMemoryBindInfo & setBuffer( VULKAN_HPP_NAMESPACE::Buffer buffer_ ) VULKAN_HPP_NOEXCEPT
+ {
+ buffer = buffer_;
+ return *this;
+ }
+
+ SparseBufferMemoryBindInfo & setBindCount( uint32_t bindCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ bindCount = bindCount_;
+ return *this;
+ }
+
+ SparseBufferMemoryBindInfo & setPBinds( const VULKAN_HPP_NAMESPACE::SparseMemoryBind * pBinds_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pBinds = pBinds_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ SparseBufferMemoryBindInfo & setBinds(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SparseMemoryBind> const & binds_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ bindCount = static_cast<uint32_t>( binds_.size() );
+ pBinds = binds_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkSparseBufferMemoryBindInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkSparseBufferMemoryBindInfo *>( this );
+ }
+
+ operator VkSparseBufferMemoryBindInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkSparseBufferMemoryBindInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( SparseBufferMemoryBindInfo const & ) const = default;
+#else
+ bool operator==( SparseBufferMemoryBindInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( buffer == rhs.buffer ) && ( bindCount == rhs.bindCount ) && ( pBinds == rhs.pBinds );
+ }
+
+ bool operator!=( SparseBufferMemoryBindInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::Buffer buffer = {};
+ uint32_t bindCount = {};
+ const VULKAN_HPP_NAMESPACE::SparseMemoryBind * pBinds = {};
+ };
+ static_assert( sizeof( SparseBufferMemoryBindInfo ) == sizeof( VkSparseBufferMemoryBindInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<SparseBufferMemoryBindInfo>::value,
+ "struct wrapper is not a standard layout!" );
+
+ struct SparseImageOpaqueMemoryBindInfo
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ SparseImageOpaqueMemoryBindInfo( VULKAN_HPP_NAMESPACE::Image image_ = {},
+ uint32_t bindCount_ = {},
+ const VULKAN_HPP_NAMESPACE::SparseMemoryBind * pBinds_ = {} ) VULKAN_HPP_NOEXCEPT
+ : image( image_ )
+ , bindCount( bindCount_ )
+ , pBinds( pBinds_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ SparseImageOpaqueMemoryBindInfo( SparseImageOpaqueMemoryBindInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SparseImageOpaqueMemoryBindInfo( VkSparseImageOpaqueMemoryBindInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : SparseImageOpaqueMemoryBindInfo( *reinterpret_cast<SparseImageOpaqueMemoryBindInfo const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ SparseImageOpaqueMemoryBindInfo(
+ VULKAN_HPP_NAMESPACE::Image image_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SparseMemoryBind> const & binds_ )
+ : image( image_ ), bindCount( static_cast<uint32_t>( binds_.size() ) ), pBinds( binds_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 SparseImageOpaqueMemoryBindInfo &
+ operator=( SparseImageOpaqueMemoryBindInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SparseImageOpaqueMemoryBindInfo & operator=( VkSparseImageOpaqueMemoryBindInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SparseImageOpaqueMemoryBindInfo const *>( &rhs );
+ return *this;
+ }
+
+ SparseImageOpaqueMemoryBindInfo & setImage( VULKAN_HPP_NAMESPACE::Image image_ ) VULKAN_HPP_NOEXCEPT
+ {
+ image = image_;
+ return *this;
+ }
+
+ SparseImageOpaqueMemoryBindInfo & setBindCount( uint32_t bindCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ bindCount = bindCount_;
+ return *this;
+ }
+
+ SparseImageOpaqueMemoryBindInfo &
+ setPBinds( const VULKAN_HPP_NAMESPACE::SparseMemoryBind * pBinds_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pBinds = pBinds_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ SparseImageOpaqueMemoryBindInfo & setBinds(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SparseMemoryBind> const & binds_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ bindCount = static_cast<uint32_t>( binds_.size() );
+ pBinds = binds_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkSparseImageOpaqueMemoryBindInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkSparseImageOpaqueMemoryBindInfo *>( this );
+ }
+
+ operator VkSparseImageOpaqueMemoryBindInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkSparseImageOpaqueMemoryBindInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( SparseImageOpaqueMemoryBindInfo const & ) const = default;
+#else
+ bool operator==( SparseImageOpaqueMemoryBindInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( image == rhs.image ) && ( bindCount == rhs.bindCount ) && ( pBinds == rhs.pBinds );
+ }
+
+ bool operator!=( SparseImageOpaqueMemoryBindInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::Image image = {};
+ uint32_t bindCount = {};
+ const VULKAN_HPP_NAMESPACE::SparseMemoryBind * pBinds = {};
+ };
+ static_assert( sizeof( SparseImageOpaqueMemoryBindInfo ) == sizeof( VkSparseImageOpaqueMemoryBindInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<SparseImageOpaqueMemoryBindInfo>::value,
+ "struct wrapper is not a standard layout!" );
+
+ struct ImageSubresource
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR ImageSubresource( VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask_ = {},
+ uint32_t mipLevel_ = {},
+ uint32_t arrayLayer_ = {} ) VULKAN_HPP_NOEXCEPT
+ : aspectMask( aspectMask_ )
+ , mipLevel( mipLevel_ )
+ , arrayLayer( arrayLayer_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR ImageSubresource( ImageSubresource const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImageSubresource( VkImageSubresource const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ImageSubresource( *reinterpret_cast<ImageSubresource const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ImageSubresource & operator=( ImageSubresource const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImageSubresource & operator=( VkImageSubresource const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageSubresource const *>( &rhs );
+ return *this;
+ }
+
+ ImageSubresource & setAspectMask( VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask_ ) VULKAN_HPP_NOEXCEPT
+ {
+ aspectMask = aspectMask_;
+ return *this;
+ }
+
+ ImageSubresource & setMipLevel( uint32_t mipLevel_ ) VULKAN_HPP_NOEXCEPT
+ {
+ mipLevel = mipLevel_;
+ return *this;
+ }
+
+ ImageSubresource & setArrayLayer( uint32_t arrayLayer_ ) VULKAN_HPP_NOEXCEPT
+ {
+ arrayLayer = arrayLayer_;
+ return *this;
+ }
+
+ operator VkImageSubresource const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkImageSubresource *>( this );
+ }
+
+ operator VkImageSubresource &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkImageSubresource *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ImageSubresource const & ) const = default;
+#else
+ bool operator==( ImageSubresource const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( aspectMask == rhs.aspectMask ) && ( mipLevel == rhs.mipLevel ) && ( arrayLayer == rhs.arrayLayer );
+ }
+
+ bool operator!=( ImageSubresource const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask = {};
+ uint32_t mipLevel = {};
+ uint32_t arrayLayer = {};
+ };
+ static_assert( sizeof( ImageSubresource ) == sizeof( VkImageSubresource ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ImageSubresource>::value, "struct wrapper is not a standard layout!" );
+
+ struct Offset3D
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR Offset3D( int32_t x_ = {}, int32_t y_ = {}, int32_t z_ = {} ) VULKAN_HPP_NOEXCEPT
+ : x( x_ )
+ , y( y_ )
+ , z( z_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR Offset3D( Offset3D const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ Offset3D( VkOffset3D const & rhs ) VULKAN_HPP_NOEXCEPT : Offset3D( *reinterpret_cast<Offset3D const *>( &rhs ) ) {}
+
+ explicit Offset3D( Offset2D const & offset2D, int32_t z_ = {} ) : x( offset2D.x ), y( offset2D.y ), z( z_ ) {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 Offset3D & operator=( Offset3D const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ Offset3D & operator=( VkOffset3D const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::Offset3D const *>( &rhs );
+ return *this;
+ }
+
+ Offset3D & setX( int32_t x_ ) VULKAN_HPP_NOEXCEPT
+ {
+ x = x_;
+ return *this;
+ }
+
+ Offset3D & setY( int32_t y_ ) VULKAN_HPP_NOEXCEPT
+ {
+ y = y_;
+ return *this;
+ }
+
+ Offset3D & setZ( int32_t z_ ) VULKAN_HPP_NOEXCEPT
+ {
+ z = z_;
+ return *this;
+ }
+
+ operator VkOffset3D const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkOffset3D *>( this );
+ }
+
+ operator VkOffset3D &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkOffset3D *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( Offset3D const & ) const = default;
+#else
+ bool operator==( Offset3D const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( x == rhs.x ) && ( y == rhs.y ) && ( z == rhs.z );
+ }
+
+ bool operator!=( Offset3D const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ int32_t x = {};
+ int32_t y = {};
+ int32_t z = {};
+ };
+ static_assert( sizeof( Offset3D ) == sizeof( VkOffset3D ), "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<Offset3D>::value, "struct wrapper is not a standard layout!" );
+
+ struct Extent3D
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ Extent3D( uint32_t width_ = {}, uint32_t height_ = {}, uint32_t depth_ = {} ) VULKAN_HPP_NOEXCEPT
+ : width( width_ )
+ , height( height_ )
+ , depth( depth_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR Extent3D( Extent3D const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ Extent3D( VkExtent3D const & rhs ) VULKAN_HPP_NOEXCEPT : Extent3D( *reinterpret_cast<Extent3D const *>( &rhs ) ) {}
+
+ explicit Extent3D( Extent2D const & extent2D, uint32_t depth_ = {} )
+ : width( extent2D.width ), height( extent2D.height ), depth( depth_ )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 Extent3D & operator=( Extent3D const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ Extent3D & operator=( VkExtent3D const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::Extent3D const *>( &rhs );
+ return *this;
+ }
+
+ Extent3D & setWidth( uint32_t width_ ) VULKAN_HPP_NOEXCEPT
+ {
+ width = width_;
+ return *this;
+ }
+
+ Extent3D & setHeight( uint32_t height_ ) VULKAN_HPP_NOEXCEPT
+ {
+ height = height_;
+ return *this;
+ }
+
+ Extent3D & setDepth( uint32_t depth_ ) VULKAN_HPP_NOEXCEPT
+ {
+ depth = depth_;
+ return *this;
+ }
+
+ operator VkExtent3D const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkExtent3D *>( this );
+ }
+
+ operator VkExtent3D &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkExtent3D *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( Extent3D const & ) const = default;
+#else
+ bool operator==( Extent3D const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( width == rhs.width ) && ( height == rhs.height ) && ( depth == rhs.depth );
+ }
+
+ bool operator!=( Extent3D const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ uint32_t width = {};
+ uint32_t height = {};
+ uint32_t depth = {};
+ };
+ static_assert( sizeof( Extent3D ) == sizeof( VkExtent3D ), "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<Extent3D>::value, "struct wrapper is not a standard layout!" );
+
+ struct SparseImageMemoryBind
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ SparseImageMemoryBind( VULKAN_HPP_NAMESPACE::ImageSubresource subresource_ = {},
+ VULKAN_HPP_NAMESPACE::Offset3D offset_ = {},
+ VULKAN_HPP_NAMESPACE::Extent3D extent_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceMemory memory_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset_ = {},
+ VULKAN_HPP_NAMESPACE::SparseMemoryBindFlags flags_ = {} ) VULKAN_HPP_NOEXCEPT
+ : subresource( subresource_ )
+ , offset( offset_ )
+ , extent( extent_ )
+ , memory( memory_ )
+ , memoryOffset( memoryOffset_ )
+ , flags( flags_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR SparseImageMemoryBind( SparseImageMemoryBind const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SparseImageMemoryBind( VkSparseImageMemoryBind const & rhs ) VULKAN_HPP_NOEXCEPT
+ : SparseImageMemoryBind( *reinterpret_cast<SparseImageMemoryBind const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 SparseImageMemoryBind &
+ operator=( SparseImageMemoryBind const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SparseImageMemoryBind & operator=( VkSparseImageMemoryBind const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SparseImageMemoryBind const *>( &rhs );
+ return *this;
+ }
+
+ SparseImageMemoryBind &
+ setSubresource( VULKAN_HPP_NAMESPACE::ImageSubresource const & subresource_ ) VULKAN_HPP_NOEXCEPT
+ {
+ subresource = subresource_;
+ return *this;
+ }
+
+ SparseImageMemoryBind & setOffset( VULKAN_HPP_NAMESPACE::Offset3D const & offset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ offset = offset_;
+ return *this;
+ }
+
+ SparseImageMemoryBind & setExtent( VULKAN_HPP_NAMESPACE::Extent3D const & extent_ ) VULKAN_HPP_NOEXCEPT
+ {
+ extent = extent_;
+ return *this;
+ }
+
+ SparseImageMemoryBind & setMemory( VULKAN_HPP_NAMESPACE::DeviceMemory memory_ ) VULKAN_HPP_NOEXCEPT
+ {
+ memory = memory_;
+ return *this;
+ }
+
+ SparseImageMemoryBind & setMemoryOffset( VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ memoryOffset = memoryOffset_;
+ return *this;
+ }
+
+ SparseImageMemoryBind & setFlags( VULKAN_HPP_NAMESPACE::SparseMemoryBindFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ operator VkSparseImageMemoryBind const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkSparseImageMemoryBind *>( this );
+ }
+
+ operator VkSparseImageMemoryBind &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkSparseImageMemoryBind *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( SparseImageMemoryBind const & ) const = default;
+#else
+ bool operator==( SparseImageMemoryBind const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( subresource == rhs.subresource ) && ( offset == rhs.offset ) && ( extent == rhs.extent ) &&
+ ( memory == rhs.memory ) && ( memoryOffset == rhs.memoryOffset ) && ( flags == rhs.flags );
+ }
+
+ bool operator!=( SparseImageMemoryBind const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::ImageSubresource subresource = {};
+ VULKAN_HPP_NAMESPACE::Offset3D offset = {};
+ VULKAN_HPP_NAMESPACE::Extent3D extent = {};
+ VULKAN_HPP_NAMESPACE::DeviceMemory memory = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset = {};
+ VULKAN_HPP_NAMESPACE::SparseMemoryBindFlags flags = {};
+ };
+ static_assert( sizeof( SparseImageMemoryBind ) == sizeof( VkSparseImageMemoryBind ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<SparseImageMemoryBind>::value, "struct wrapper is not a standard layout!" );
+
+ struct SparseImageMemoryBindInfo
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ SparseImageMemoryBindInfo( VULKAN_HPP_NAMESPACE::Image image_ = {},
+ uint32_t bindCount_ = {},
+ const VULKAN_HPP_NAMESPACE::SparseImageMemoryBind * pBinds_ = {} ) VULKAN_HPP_NOEXCEPT
+ : image( image_ )
+ , bindCount( bindCount_ )
+ , pBinds( pBinds_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ SparseImageMemoryBindInfo( SparseImageMemoryBindInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SparseImageMemoryBindInfo( VkSparseImageMemoryBindInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : SparseImageMemoryBindInfo( *reinterpret_cast<SparseImageMemoryBindInfo const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ SparseImageMemoryBindInfo(
+ VULKAN_HPP_NAMESPACE::Image image_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SparseImageMemoryBind> const & binds_ )
+ : image( image_ ), bindCount( static_cast<uint32_t>( binds_.size() ) ), pBinds( binds_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 SparseImageMemoryBindInfo &
+ operator=( SparseImageMemoryBindInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SparseImageMemoryBindInfo & operator=( VkSparseImageMemoryBindInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SparseImageMemoryBindInfo const *>( &rhs );
+ return *this;
+ }
+
+ SparseImageMemoryBindInfo & setImage( VULKAN_HPP_NAMESPACE::Image image_ ) VULKAN_HPP_NOEXCEPT
+ {
+ image = image_;
+ return *this;
+ }
+
+ SparseImageMemoryBindInfo & setBindCount( uint32_t bindCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ bindCount = bindCount_;
+ return *this;
+ }
+
+ SparseImageMemoryBindInfo &
+ setPBinds( const VULKAN_HPP_NAMESPACE::SparseImageMemoryBind * pBinds_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pBinds = pBinds_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ SparseImageMemoryBindInfo & setBinds(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SparseImageMemoryBind> const & binds_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ bindCount = static_cast<uint32_t>( binds_.size() );
+ pBinds = binds_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkSparseImageMemoryBindInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkSparseImageMemoryBindInfo *>( this );
+ }
+
+ operator VkSparseImageMemoryBindInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkSparseImageMemoryBindInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( SparseImageMemoryBindInfo const & ) const = default;
+#else
+ bool operator==( SparseImageMemoryBindInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( image == rhs.image ) && ( bindCount == rhs.bindCount ) && ( pBinds == rhs.pBinds );
+ }
+
+ bool operator!=( SparseImageMemoryBindInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::Image image = {};
+ uint32_t bindCount = {};
+ const VULKAN_HPP_NAMESPACE::SparseImageMemoryBind * pBinds = {};
+ };
+ static_assert( sizeof( SparseImageMemoryBindInfo ) == sizeof( VkSparseImageMemoryBindInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<SparseImageMemoryBindInfo>::value,
+ "struct wrapper is not a standard layout!" );
+
+ struct BindSparseInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBindSparseInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ BindSparseInfo( uint32_t waitSemaphoreCount_ = {},
+ const VULKAN_HPP_NAMESPACE::Semaphore * pWaitSemaphores_ = {},
+ uint32_t bufferBindCount_ = {},
+ const VULKAN_HPP_NAMESPACE::SparseBufferMemoryBindInfo * pBufferBinds_ = {},
+ uint32_t imageOpaqueBindCount_ = {},
+ const VULKAN_HPP_NAMESPACE::SparseImageOpaqueMemoryBindInfo * pImageOpaqueBinds_ = {},
+ uint32_t imageBindCount_ = {},
+ const VULKAN_HPP_NAMESPACE::SparseImageMemoryBindInfo * pImageBinds_ = {},
+ uint32_t signalSemaphoreCount_ = {},
+ const VULKAN_HPP_NAMESPACE::Semaphore * pSignalSemaphores_ = {} ) VULKAN_HPP_NOEXCEPT
+ : waitSemaphoreCount( waitSemaphoreCount_ )
+ , pWaitSemaphores( pWaitSemaphores_ )
+ , bufferBindCount( bufferBindCount_ )
+ , pBufferBinds( pBufferBinds_ )
+ , imageOpaqueBindCount( imageOpaqueBindCount_ )
+ , pImageOpaqueBinds( pImageOpaqueBinds_ )
+ , imageBindCount( imageBindCount_ )
+ , pImageBinds( pImageBinds_ )
+ , signalSemaphoreCount( signalSemaphoreCount_ )
+ , pSignalSemaphores( pSignalSemaphores_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR BindSparseInfo( BindSparseInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ BindSparseInfo( VkBindSparseInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : BindSparseInfo( *reinterpret_cast<BindSparseInfo const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ BindSparseInfo(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Semaphore> const & waitSemaphores_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SparseBufferMemoryBindInfo> const &
+ bufferBinds_ = {},
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SparseImageOpaqueMemoryBindInfo> const &
+ imageOpaqueBinds_ = {},
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SparseImageMemoryBindInfo> const &
+ imageBinds_ = {},
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Semaphore> const &
+ signalSemaphores_ = {} )
+ : waitSemaphoreCount( static_cast<uint32_t>( waitSemaphores_.size() ) )
+ , pWaitSemaphores( waitSemaphores_.data() )
+ , bufferBindCount( static_cast<uint32_t>( bufferBinds_.size() ) )
+ , pBufferBinds( bufferBinds_.data() )
+ , imageOpaqueBindCount( static_cast<uint32_t>( imageOpaqueBinds_.size() ) )
+ , pImageOpaqueBinds( imageOpaqueBinds_.data() )
+ , imageBindCount( static_cast<uint32_t>( imageBinds_.size() ) )
+ , pImageBinds( imageBinds_.data() )
+ , signalSemaphoreCount( static_cast<uint32_t>( signalSemaphores_.size() ) )
+ , pSignalSemaphores( signalSemaphores_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 BindSparseInfo & operator=( BindSparseInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ BindSparseInfo & operator=( VkBindSparseInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BindSparseInfo const *>( &rhs );
+ return *this;
+ }
+
+ BindSparseInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ BindSparseInfo & setWaitSemaphoreCount( uint32_t waitSemaphoreCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ waitSemaphoreCount = waitSemaphoreCount_;
+ return *this;
+ }
+
+ BindSparseInfo & setPWaitSemaphores( const VULKAN_HPP_NAMESPACE::Semaphore * pWaitSemaphores_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pWaitSemaphores = pWaitSemaphores_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ BindSparseInfo & setWaitSemaphores(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Semaphore> const & waitSemaphores_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ waitSemaphoreCount = static_cast<uint32_t>( waitSemaphores_.size() );
+ pWaitSemaphores = waitSemaphores_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ BindSparseInfo & setBufferBindCount( uint32_t bufferBindCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ bufferBindCount = bufferBindCount_;
+ return *this;
+ }
+
+ BindSparseInfo &
+ setPBufferBinds( const VULKAN_HPP_NAMESPACE::SparseBufferMemoryBindInfo * pBufferBinds_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pBufferBinds = pBufferBinds_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ BindSparseInfo & setBufferBinds(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SparseBufferMemoryBindInfo> const &
+ bufferBinds_ ) VULKAN_HPP_NOEXCEPT
+ {
+ bufferBindCount = static_cast<uint32_t>( bufferBinds_.size() );
+ pBufferBinds = bufferBinds_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ BindSparseInfo & setImageOpaqueBindCount( uint32_t imageOpaqueBindCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ imageOpaqueBindCount = imageOpaqueBindCount_;
+ return *this;
+ }
+
+ BindSparseInfo & setPImageOpaqueBinds(
+ const VULKAN_HPP_NAMESPACE::SparseImageOpaqueMemoryBindInfo * pImageOpaqueBinds_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pImageOpaqueBinds = pImageOpaqueBinds_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ BindSparseInfo & setImageOpaqueBinds(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SparseImageOpaqueMemoryBindInfo> const &
+ imageOpaqueBinds_ ) VULKAN_HPP_NOEXCEPT
+ {
+ imageOpaqueBindCount = static_cast<uint32_t>( imageOpaqueBinds_.size() );
+ pImageOpaqueBinds = imageOpaqueBinds_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ BindSparseInfo & setImageBindCount( uint32_t imageBindCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ imageBindCount = imageBindCount_;
+ return *this;
+ }
+
+ BindSparseInfo &
+ setPImageBinds( const VULKAN_HPP_NAMESPACE::SparseImageMemoryBindInfo * pImageBinds_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pImageBinds = pImageBinds_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ BindSparseInfo & setImageBinds(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SparseImageMemoryBindInfo> const &
+ imageBinds_ ) VULKAN_HPP_NOEXCEPT
+ {
+ imageBindCount = static_cast<uint32_t>( imageBinds_.size() );
+ pImageBinds = imageBinds_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ BindSparseInfo & setSignalSemaphoreCount( uint32_t signalSemaphoreCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ signalSemaphoreCount = signalSemaphoreCount_;
+ return *this;
+ }
+
+ BindSparseInfo &
+ setPSignalSemaphores( const VULKAN_HPP_NAMESPACE::Semaphore * pSignalSemaphores_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pSignalSemaphores = pSignalSemaphores_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ BindSparseInfo & setSignalSemaphores(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Semaphore> const & signalSemaphores_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ signalSemaphoreCount = static_cast<uint32_t>( signalSemaphores_.size() );
+ pSignalSemaphores = signalSemaphores_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkBindSparseInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkBindSparseInfo *>( this );
+ }
+
+ operator VkBindSparseInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkBindSparseInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( BindSparseInfo const & ) const = default;
+#else
+ bool operator==( BindSparseInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( waitSemaphoreCount == rhs.waitSemaphoreCount ) &&
+ ( pWaitSemaphores == rhs.pWaitSemaphores ) && ( bufferBindCount == rhs.bufferBindCount ) &&
+ ( pBufferBinds == rhs.pBufferBinds ) && ( imageOpaqueBindCount == rhs.imageOpaqueBindCount ) &&
+ ( pImageOpaqueBinds == rhs.pImageOpaqueBinds ) && ( imageBindCount == rhs.imageBindCount ) &&
+ ( pImageBinds == rhs.pImageBinds ) && ( signalSemaphoreCount == rhs.signalSemaphoreCount ) &&
+ ( pSignalSemaphores == rhs.pSignalSemaphores );
+ }
+
+ bool operator!=( BindSparseInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBindSparseInfo;
+ const void * pNext = {};
+ uint32_t waitSemaphoreCount = {};
+ const VULKAN_HPP_NAMESPACE::Semaphore * pWaitSemaphores = {};
+ uint32_t bufferBindCount = {};
+ const VULKAN_HPP_NAMESPACE::SparseBufferMemoryBindInfo * pBufferBinds = {};
+ uint32_t imageOpaqueBindCount = {};
+ const VULKAN_HPP_NAMESPACE::SparseImageOpaqueMemoryBindInfo * pImageOpaqueBinds = {};
+ uint32_t imageBindCount = {};
+ const VULKAN_HPP_NAMESPACE::SparseImageMemoryBindInfo * pImageBinds = {};
+ uint32_t signalSemaphoreCount = {};
+ const VULKAN_HPP_NAMESPACE::Semaphore * pSignalSemaphores = {};
+ };
+ static_assert( sizeof( BindSparseInfo ) == sizeof( VkBindSparseInfo ), "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<BindSparseInfo>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eBindSparseInfo>
+ {
+ using Type = BindSparseInfo;
+ };
+
+ struct BindVertexBufferIndirectCommandNV
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR BindVertexBufferIndirectCommandNV( VULKAN_HPP_NAMESPACE::DeviceAddress bufferAddress_ = {},
+ uint32_t size_ = {},
+ uint32_t stride_ = {} ) VULKAN_HPP_NOEXCEPT
+ : bufferAddress( bufferAddress_ )
+ , size( size_ )
+ , stride( stride_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ BindVertexBufferIndirectCommandNV( BindVertexBufferIndirectCommandNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ BindVertexBufferIndirectCommandNV( VkBindVertexBufferIndirectCommandNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ : BindVertexBufferIndirectCommandNV( *reinterpret_cast<BindVertexBufferIndirectCommandNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 BindVertexBufferIndirectCommandNV &
+ operator=( BindVertexBufferIndirectCommandNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ BindVertexBufferIndirectCommandNV & operator=( VkBindVertexBufferIndirectCommandNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BindVertexBufferIndirectCommandNV const *>( &rhs );
+ return *this;
+ }
+
+ BindVertexBufferIndirectCommandNV &
+ setBufferAddress( VULKAN_HPP_NAMESPACE::DeviceAddress bufferAddress_ ) VULKAN_HPP_NOEXCEPT
+ {
+ bufferAddress = bufferAddress_;
+ return *this;
+ }
+
+ BindVertexBufferIndirectCommandNV & setSize( uint32_t size_ ) VULKAN_HPP_NOEXCEPT
+ {
+ size = size_;
+ return *this;
+ }
+
+ BindVertexBufferIndirectCommandNV & setStride( uint32_t stride_ ) VULKAN_HPP_NOEXCEPT
+ {
+ stride = stride_;
+ return *this;
+ }
+
+ operator VkBindVertexBufferIndirectCommandNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkBindVertexBufferIndirectCommandNV *>( this );
+ }
+
+ operator VkBindVertexBufferIndirectCommandNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkBindVertexBufferIndirectCommandNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( BindVertexBufferIndirectCommandNV const & ) const = default;
+#else
+ bool operator==( BindVertexBufferIndirectCommandNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( bufferAddress == rhs.bufferAddress ) && ( size == rhs.size ) && ( stride == rhs.stride );
+ }
+
+ bool operator!=( BindVertexBufferIndirectCommandNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::DeviceAddress bufferAddress = {};
+ uint32_t size = {};
+ uint32_t stride = {};
+ };
+ static_assert( sizeof( BindVertexBufferIndirectCommandNV ) == sizeof( VkBindVertexBufferIndirectCommandNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<BindVertexBufferIndirectCommandNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ struct ImageSubresourceLayers
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR ImageSubresourceLayers( VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask_ = {},
+ uint32_t mipLevel_ = {},
+ uint32_t baseArrayLayer_ = {},
+ uint32_t layerCount_ = {} ) VULKAN_HPP_NOEXCEPT
+ : aspectMask( aspectMask_ )
+ , mipLevel( mipLevel_ )
+ , baseArrayLayer( baseArrayLayer_ )
+ , layerCount( layerCount_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR ImageSubresourceLayers( ImageSubresourceLayers const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImageSubresourceLayers( VkImageSubresourceLayers const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ImageSubresourceLayers( *reinterpret_cast<ImageSubresourceLayers const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ImageSubresourceLayers &
+ operator=( ImageSubresourceLayers const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImageSubresourceLayers & operator=( VkImageSubresourceLayers const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const *>( &rhs );
+ return *this;
+ }
+
+ ImageSubresourceLayers & setAspectMask( VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask_ ) VULKAN_HPP_NOEXCEPT
+ {
+ aspectMask = aspectMask_;
+ return *this;
+ }
+
+ ImageSubresourceLayers & setMipLevel( uint32_t mipLevel_ ) VULKAN_HPP_NOEXCEPT
+ {
+ mipLevel = mipLevel_;
+ return *this;
+ }
+
+ ImageSubresourceLayers & setBaseArrayLayer( uint32_t baseArrayLayer_ ) VULKAN_HPP_NOEXCEPT
+ {
+ baseArrayLayer = baseArrayLayer_;
+ return *this;
+ }
+
+ ImageSubresourceLayers & setLayerCount( uint32_t layerCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ layerCount = layerCount_;
+ return *this;
+ }
+
+ operator VkImageSubresourceLayers const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkImageSubresourceLayers *>( this );
+ }
+
+ operator VkImageSubresourceLayers &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkImageSubresourceLayers *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ImageSubresourceLayers const & ) const = default;
+#else
+ bool operator==( ImageSubresourceLayers const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( aspectMask == rhs.aspectMask ) && ( mipLevel == rhs.mipLevel ) &&
+ ( baseArrayLayer == rhs.baseArrayLayer ) && ( layerCount == rhs.layerCount );
+ }
+
+ bool operator!=( ImageSubresourceLayers const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask = {};
+ uint32_t mipLevel = {};
+ uint32_t baseArrayLayer = {};
+ uint32_t layerCount = {};
+ };
+ static_assert( sizeof( ImageSubresourceLayers ) == sizeof( VkImageSubresourceLayers ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ImageSubresourceLayers>::value, "struct wrapper is not a standard layout!" );
+
+ struct ImageBlit2KHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImageBlit2KHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR_14
+ ImageBlit2KHR( VULKAN_HPP_NAMESPACE::ImageSubresourceLayers srcSubresource_ = {},
+ std::array<VULKAN_HPP_NAMESPACE::Offset3D, 2> const & srcOffsets_ = {},
+ VULKAN_HPP_NAMESPACE::ImageSubresourceLayers dstSubresource_ = {},
+ std::array<VULKAN_HPP_NAMESPACE::Offset3D, 2> const & dstOffsets_ = {} ) VULKAN_HPP_NOEXCEPT
+ : srcSubresource( srcSubresource_ )
+ , srcOffsets( srcOffsets_ )
+ , dstSubresource( dstSubresource_ )
+ , dstOffsets( dstOffsets_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR_14 ImageBlit2KHR( ImageBlit2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImageBlit2KHR( VkImageBlit2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ImageBlit2KHR( *reinterpret_cast<ImageBlit2KHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ImageBlit2KHR & operator=( ImageBlit2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImageBlit2KHR & operator=( VkImageBlit2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageBlit2KHR const *>( &rhs );
+ return *this;
+ }
+
+ ImageBlit2KHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ ImageBlit2KHR &
+ setSrcSubresource( VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const & srcSubresource_ ) VULKAN_HPP_NOEXCEPT
+ {
+ srcSubresource = srcSubresource_;
+ return *this;
+ }
+
+ ImageBlit2KHR &
+ setSrcOffsets( std::array<VULKAN_HPP_NAMESPACE::Offset3D, 2> const & srcOffsets_ ) VULKAN_HPP_NOEXCEPT
+ {
+ srcOffsets = srcOffsets_;
+ return *this;
+ }
+
+ ImageBlit2KHR &
+ setDstSubresource( VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const & dstSubresource_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstSubresource = dstSubresource_;
+ return *this;
+ }
+
+ ImageBlit2KHR &
+ setDstOffsets( std::array<VULKAN_HPP_NAMESPACE::Offset3D, 2> const & dstOffsets_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstOffsets = dstOffsets_;
+ return *this;
+ }
+
+ operator VkImageBlit2KHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkImageBlit2KHR *>( this );
+ }
+
+ operator VkImageBlit2KHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkImageBlit2KHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ImageBlit2KHR const & ) const = default;
+#else
+ bool operator==( ImageBlit2KHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( srcSubresource == rhs.srcSubresource ) &&
+ ( srcOffsets == rhs.srcOffsets ) && ( dstSubresource == rhs.dstSubresource ) &&
+ ( dstOffsets == rhs.dstOffsets );
+ }
+
+ bool operator!=( ImageBlit2KHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageBlit2KHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ImageSubresourceLayers srcSubresource = {};
+ VULKAN_HPP_NAMESPACE::ArrayWrapper1D<VULKAN_HPP_NAMESPACE::Offset3D, 2> srcOffsets = {};
+ VULKAN_HPP_NAMESPACE::ImageSubresourceLayers dstSubresource = {};
+ VULKAN_HPP_NAMESPACE::ArrayWrapper1D<VULKAN_HPP_NAMESPACE::Offset3D, 2> dstOffsets = {};
+ };
+ static_assert( sizeof( ImageBlit2KHR ) == sizeof( VkImageBlit2KHR ), "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ImageBlit2KHR>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eImageBlit2KHR>
+ {
+ using Type = ImageBlit2KHR;
+ };
+
+ struct BlitImageInfo2KHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBlitImageInfo2KHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR_14 BlitImageInfo2KHR(
+ VULKAN_HPP_NAMESPACE::Image srcImage_ = {},
+ VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined,
+ VULKAN_HPP_NAMESPACE::Image dstImage_ = {},
+ VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined,
+ uint32_t regionCount_ = {},
+ const VULKAN_HPP_NAMESPACE::ImageBlit2KHR * pRegions_ = {},
+ VULKAN_HPP_NAMESPACE::Filter filter_ = VULKAN_HPP_NAMESPACE::Filter::eNearest ) VULKAN_HPP_NOEXCEPT
+ : srcImage( srcImage_ )
+ , srcImageLayout( srcImageLayout_ )
+ , dstImage( dstImage_ )
+ , dstImageLayout( dstImageLayout_ )
+ , regionCount( regionCount_ )
+ , pRegions( pRegions_ )
+ , filter( filter_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR_14 BlitImageInfo2KHR( BlitImageInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ BlitImageInfo2KHR( VkBlitImageInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : BlitImageInfo2KHR( *reinterpret_cast<BlitImageInfo2KHR const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ BlitImageInfo2KHR(
+ VULKAN_HPP_NAMESPACE::Image srcImage_,
+ VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout_,
+ VULKAN_HPP_NAMESPACE::Image dstImage_,
+ VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ImageBlit2KHR> const & regions_,
+ VULKAN_HPP_NAMESPACE::Filter filter_ = VULKAN_HPP_NAMESPACE::Filter::eNearest )
+ : srcImage( srcImage_ )
+ , srcImageLayout( srcImageLayout_ )
+ , dstImage( dstImage_ )
+ , dstImageLayout( dstImageLayout_ )
+ , regionCount( static_cast<uint32_t>( regions_.size() ) )
+ , pRegions( regions_.data() )
+ , filter( filter_ )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 BlitImageInfo2KHR &
+ operator=( BlitImageInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ BlitImageInfo2KHR & operator=( VkBlitImageInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BlitImageInfo2KHR const *>( &rhs );
+ return *this;
+ }
+
+ BlitImageInfo2KHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ BlitImageInfo2KHR & setSrcImage( VULKAN_HPP_NAMESPACE::Image srcImage_ ) VULKAN_HPP_NOEXCEPT
+ {
+ srcImage = srcImage_;
+ return *this;
+ }
+
+ BlitImageInfo2KHR & setSrcImageLayout( VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout_ ) VULKAN_HPP_NOEXCEPT
+ {
+ srcImageLayout = srcImageLayout_;
+ return *this;
+ }
+
+ BlitImageInfo2KHR & setDstImage( VULKAN_HPP_NAMESPACE::Image dstImage_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstImage = dstImage_;
+ return *this;
+ }
+
+ BlitImageInfo2KHR & setDstImageLayout( VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstImageLayout = dstImageLayout_;
+ return *this;
+ }
+
+ BlitImageInfo2KHR & setRegionCount( uint32_t regionCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ regionCount = regionCount_;
+ return *this;
+ }
+
+ BlitImageInfo2KHR & setPRegions( const VULKAN_HPP_NAMESPACE::ImageBlit2KHR * pRegions_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pRegions = pRegions_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ BlitImageInfo2KHR & setRegions(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ImageBlit2KHR> const & regions_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ regionCount = static_cast<uint32_t>( regions_.size() );
+ pRegions = regions_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ BlitImageInfo2KHR & setFilter( VULKAN_HPP_NAMESPACE::Filter filter_ ) VULKAN_HPP_NOEXCEPT
+ {
+ filter = filter_;
+ return *this;
+ }
+
+ operator VkBlitImageInfo2KHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkBlitImageInfo2KHR *>( this );
+ }
+
+ operator VkBlitImageInfo2KHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkBlitImageInfo2KHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( BlitImageInfo2KHR const & ) const = default;
+#else
+ bool operator==( BlitImageInfo2KHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( srcImage == rhs.srcImage ) &&
+ ( srcImageLayout == rhs.srcImageLayout ) && ( dstImage == rhs.dstImage ) &&
+ ( dstImageLayout == rhs.dstImageLayout ) && ( regionCount == rhs.regionCount ) &&
+ ( pRegions == rhs.pRegions ) && ( filter == rhs.filter );
+ }
+
+ bool operator!=( BlitImageInfo2KHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBlitImageInfo2KHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Image srcImage = {};
+ VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
+ VULKAN_HPP_NAMESPACE::Image dstImage = {};
+ VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
+ uint32_t regionCount = {};
+ const VULKAN_HPP_NAMESPACE::ImageBlit2KHR * pRegions = {};
+ VULKAN_HPP_NAMESPACE::Filter filter = VULKAN_HPP_NAMESPACE::Filter::eNearest;
+ };
+ static_assert( sizeof( BlitImageInfo2KHR ) == sizeof( VkBlitImageInfo2KHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<BlitImageInfo2KHR>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eBlitImageInfo2KHR>
+ {
+ using Type = BlitImageInfo2KHR;
+ };
+
+ struct BufferCopy
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR BufferCopy( VULKAN_HPP_NAMESPACE::DeviceSize srcOffset_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize dstOffset_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize size_ = {} ) VULKAN_HPP_NOEXCEPT
+ : srcOffset( srcOffset_ )
+ , dstOffset( dstOffset_ )
+ , size( size_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR BufferCopy( BufferCopy const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ BufferCopy( VkBufferCopy const & rhs ) VULKAN_HPP_NOEXCEPT
+ : BufferCopy( *reinterpret_cast<BufferCopy const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 BufferCopy & operator=( BufferCopy const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ BufferCopy & operator=( VkBufferCopy const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BufferCopy const *>( &rhs );
+ return *this;
+ }
+
+ BufferCopy & setSrcOffset( VULKAN_HPP_NAMESPACE::DeviceSize srcOffset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ srcOffset = srcOffset_;
+ return *this;
+ }
+
+ BufferCopy & setDstOffset( VULKAN_HPP_NAMESPACE::DeviceSize dstOffset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstOffset = dstOffset_;
+ return *this;
+ }
+
+ BufferCopy & setSize( VULKAN_HPP_NAMESPACE::DeviceSize size_ ) VULKAN_HPP_NOEXCEPT
+ {
+ size = size_;
+ return *this;
+ }
+
+ operator VkBufferCopy const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkBufferCopy *>( this );
+ }
+
+ operator VkBufferCopy &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkBufferCopy *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( BufferCopy const & ) const = default;
+#else
+ bool operator==( BufferCopy const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( srcOffset == rhs.srcOffset ) && ( dstOffset == rhs.dstOffset ) && ( size == rhs.size );
+ }
+
+ bool operator!=( BufferCopy const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::DeviceSize srcOffset = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize dstOffset = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize size = {};
+ };
+ static_assert( sizeof( BufferCopy ) == sizeof( VkBufferCopy ), "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<BufferCopy>::value, "struct wrapper is not a standard layout!" );
+
+ struct BufferCopy2KHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBufferCopy2KHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR BufferCopy2KHR( VULKAN_HPP_NAMESPACE::DeviceSize srcOffset_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize dstOffset_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize size_ = {} ) VULKAN_HPP_NOEXCEPT
+ : srcOffset( srcOffset_ )
+ , dstOffset( dstOffset_ )
+ , size( size_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR BufferCopy2KHR( BufferCopy2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ BufferCopy2KHR( VkBufferCopy2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : BufferCopy2KHR( *reinterpret_cast<BufferCopy2KHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 BufferCopy2KHR & operator=( BufferCopy2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ BufferCopy2KHR & operator=( VkBufferCopy2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BufferCopy2KHR const *>( &rhs );
+ return *this;
+ }
+
+ BufferCopy2KHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ BufferCopy2KHR & setSrcOffset( VULKAN_HPP_NAMESPACE::DeviceSize srcOffset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ srcOffset = srcOffset_;
+ return *this;
+ }
+
+ BufferCopy2KHR & setDstOffset( VULKAN_HPP_NAMESPACE::DeviceSize dstOffset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstOffset = dstOffset_;
+ return *this;
+ }
+
+ BufferCopy2KHR & setSize( VULKAN_HPP_NAMESPACE::DeviceSize size_ ) VULKAN_HPP_NOEXCEPT
+ {
+ size = size_;
+ return *this;
+ }
+
+ operator VkBufferCopy2KHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkBufferCopy2KHR *>( this );
+ }
+
+ operator VkBufferCopy2KHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkBufferCopy2KHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( BufferCopy2KHR const & ) const = default;
+#else
+ bool operator==( BufferCopy2KHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( srcOffset == rhs.srcOffset ) &&
+ ( dstOffset == rhs.dstOffset ) && ( size == rhs.size );
+ }
+
+ bool operator!=( BufferCopy2KHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBufferCopy2KHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize srcOffset = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize dstOffset = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize size = {};
+ };
+ static_assert( sizeof( BufferCopy2KHR ) == sizeof( VkBufferCopy2KHR ), "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<BufferCopy2KHR>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eBufferCopy2KHR>
+ {
+ using Type = BufferCopy2KHR;
+ };
+
+ struct BufferCreateInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBufferCreateInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ BufferCreateInfo( VULKAN_HPP_NAMESPACE::BufferCreateFlags flags_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize size_ = {},
+ VULKAN_HPP_NAMESPACE::BufferUsageFlags usage_ = {},
+ VULKAN_HPP_NAMESPACE::SharingMode sharingMode_ = VULKAN_HPP_NAMESPACE::SharingMode::eExclusive,
+ uint32_t queueFamilyIndexCount_ = {},
+ const uint32_t * pQueueFamilyIndices_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , size( size_ )
+ , usage( usage_ )
+ , sharingMode( sharingMode_ )
+ , queueFamilyIndexCount( queueFamilyIndexCount_ )
+ , pQueueFamilyIndices( pQueueFamilyIndices_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR BufferCreateInfo( BufferCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ BufferCreateInfo( VkBufferCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : BufferCreateInfo( *reinterpret_cast<BufferCreateInfo const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ BufferCreateInfo( VULKAN_HPP_NAMESPACE::BufferCreateFlags flags_,
+ VULKAN_HPP_NAMESPACE::DeviceSize size_,
+ VULKAN_HPP_NAMESPACE::BufferUsageFlags usage_,
+ VULKAN_HPP_NAMESPACE::SharingMode sharingMode_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & queueFamilyIndices_ )
+ : flags( flags_ )
+ , size( size_ )
+ , usage( usage_ )
+ , sharingMode( sharingMode_ )
+ , queueFamilyIndexCount( static_cast<uint32_t>( queueFamilyIndices_.size() ) )
+ , pQueueFamilyIndices( queueFamilyIndices_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 BufferCreateInfo & operator=( BufferCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ BufferCreateInfo & operator=( VkBufferCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BufferCreateInfo const *>( &rhs );
+ return *this;
+ }
+
+ BufferCreateInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ BufferCreateInfo & setFlags( VULKAN_HPP_NAMESPACE::BufferCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ BufferCreateInfo & setSize( VULKAN_HPP_NAMESPACE::DeviceSize size_ ) VULKAN_HPP_NOEXCEPT
+ {
+ size = size_;
+ return *this;
+ }
+
+ BufferCreateInfo & setUsage( VULKAN_HPP_NAMESPACE::BufferUsageFlags usage_ ) VULKAN_HPP_NOEXCEPT
+ {
+ usage = usage_;
+ return *this;
+ }
+
+ BufferCreateInfo & setSharingMode( VULKAN_HPP_NAMESPACE::SharingMode sharingMode_ ) VULKAN_HPP_NOEXCEPT
+ {
+ sharingMode = sharingMode_;
+ return *this;
+ }
+
+ BufferCreateInfo & setQueueFamilyIndexCount( uint32_t queueFamilyIndexCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ queueFamilyIndexCount = queueFamilyIndexCount_;
+ return *this;
+ }
+
+ BufferCreateInfo & setPQueueFamilyIndices( const uint32_t * pQueueFamilyIndices_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pQueueFamilyIndices = pQueueFamilyIndices_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ BufferCreateInfo & setQueueFamilyIndices(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & queueFamilyIndices_ ) VULKAN_HPP_NOEXCEPT
+ {
+ queueFamilyIndexCount = static_cast<uint32_t>( queueFamilyIndices_.size() );
+ pQueueFamilyIndices = queueFamilyIndices_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkBufferCreateInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkBufferCreateInfo *>( this );
+ }
+
+ operator VkBufferCreateInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkBufferCreateInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( BufferCreateInfo const & ) const = default;
+#else
+ bool operator==( BufferCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) && ( size == rhs.size ) &&
+ ( usage == rhs.usage ) && ( sharingMode == rhs.sharingMode ) &&
+ ( queueFamilyIndexCount == rhs.queueFamilyIndexCount ) &&
+ ( pQueueFamilyIndices == rhs.pQueueFamilyIndices );
+ }
+
+ bool operator!=( BufferCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBufferCreateInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::BufferCreateFlags flags = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize size = {};
+ VULKAN_HPP_NAMESPACE::BufferUsageFlags usage = {};
+ VULKAN_HPP_NAMESPACE::SharingMode sharingMode = VULKAN_HPP_NAMESPACE::SharingMode::eExclusive;
+ uint32_t queueFamilyIndexCount = {};
+ const uint32_t * pQueueFamilyIndices = {};
+ };
+ static_assert( sizeof( BufferCreateInfo ) == sizeof( VkBufferCreateInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<BufferCreateInfo>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eBufferCreateInfo>
+ {
+ using Type = BufferCreateInfo;
+ };
+
+ struct BufferDeviceAddressCreateInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBufferDeviceAddressCreateInfoEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ BufferDeviceAddressCreateInfoEXT( VULKAN_HPP_NAMESPACE::DeviceAddress deviceAddress_ = {} ) VULKAN_HPP_NOEXCEPT
+ : deviceAddress( deviceAddress_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ BufferDeviceAddressCreateInfoEXT( BufferDeviceAddressCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ BufferDeviceAddressCreateInfoEXT( VkBufferDeviceAddressCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : BufferDeviceAddressCreateInfoEXT( *reinterpret_cast<BufferDeviceAddressCreateInfoEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 BufferDeviceAddressCreateInfoEXT &
+ operator=( BufferDeviceAddressCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ BufferDeviceAddressCreateInfoEXT & operator=( VkBufferDeviceAddressCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BufferDeviceAddressCreateInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ BufferDeviceAddressCreateInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ BufferDeviceAddressCreateInfoEXT &
+ setDeviceAddress( VULKAN_HPP_NAMESPACE::DeviceAddress deviceAddress_ ) VULKAN_HPP_NOEXCEPT
+ {
+ deviceAddress = deviceAddress_;
+ return *this;
+ }
+
+ operator VkBufferDeviceAddressCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkBufferDeviceAddressCreateInfoEXT *>( this );
+ }
+
+ operator VkBufferDeviceAddressCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkBufferDeviceAddressCreateInfoEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( BufferDeviceAddressCreateInfoEXT const & ) const = default;
+#else
+ bool operator==( BufferDeviceAddressCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( deviceAddress == rhs.deviceAddress );
+ }
+
+ bool operator!=( BufferDeviceAddressCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBufferDeviceAddressCreateInfoEXT;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::DeviceAddress deviceAddress = {};
+ };
+ static_assert( sizeof( BufferDeviceAddressCreateInfoEXT ) == sizeof( VkBufferDeviceAddressCreateInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<BufferDeviceAddressCreateInfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eBufferDeviceAddressCreateInfoEXT>
+ {
+ using Type = BufferDeviceAddressCreateInfoEXT;
+ };
+
+ struct BufferDeviceAddressInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBufferDeviceAddressInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR BufferDeviceAddressInfo( VULKAN_HPP_NAMESPACE::Buffer buffer_ = {} ) VULKAN_HPP_NOEXCEPT
+ : buffer( buffer_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR BufferDeviceAddressInfo( BufferDeviceAddressInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ BufferDeviceAddressInfo( VkBufferDeviceAddressInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : BufferDeviceAddressInfo( *reinterpret_cast<BufferDeviceAddressInfo const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 BufferDeviceAddressInfo &
+ operator=( BufferDeviceAddressInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ BufferDeviceAddressInfo & operator=( VkBufferDeviceAddressInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BufferDeviceAddressInfo const *>( &rhs );
+ return *this;
+ }
+
+ BufferDeviceAddressInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ BufferDeviceAddressInfo & setBuffer( VULKAN_HPP_NAMESPACE::Buffer buffer_ ) VULKAN_HPP_NOEXCEPT
+ {
+ buffer = buffer_;
+ return *this;
+ }
+
+ operator VkBufferDeviceAddressInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkBufferDeviceAddressInfo *>( this );
+ }
+
+ operator VkBufferDeviceAddressInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkBufferDeviceAddressInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( BufferDeviceAddressInfo const & ) const = default;
+#else
+ bool operator==( BufferDeviceAddressInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( buffer == rhs.buffer );
+ }
+
+ bool operator!=( BufferDeviceAddressInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBufferDeviceAddressInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Buffer buffer = {};
+ };
+ static_assert( sizeof( BufferDeviceAddressInfo ) == sizeof( VkBufferDeviceAddressInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<BufferDeviceAddressInfo>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eBufferDeviceAddressInfo>
+ {
+ using Type = BufferDeviceAddressInfo;
+ };
+ using BufferDeviceAddressInfoEXT = BufferDeviceAddressInfo;
+ using BufferDeviceAddressInfoKHR = BufferDeviceAddressInfo;
+
+ struct BufferImageCopy
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR BufferImageCopy( VULKAN_HPP_NAMESPACE::DeviceSize bufferOffset_ = {},
+ uint32_t bufferRowLength_ = {},
+ uint32_t bufferImageHeight_ = {},
+ VULKAN_HPP_NAMESPACE::ImageSubresourceLayers imageSubresource_ = {},
+ VULKAN_HPP_NAMESPACE::Offset3D imageOffset_ = {},
+ VULKAN_HPP_NAMESPACE::Extent3D imageExtent_ = {} ) VULKAN_HPP_NOEXCEPT
+ : bufferOffset( bufferOffset_ )
+ , bufferRowLength( bufferRowLength_ )
+ , bufferImageHeight( bufferImageHeight_ )
+ , imageSubresource( imageSubresource_ )
+ , imageOffset( imageOffset_ )
+ , imageExtent( imageExtent_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR BufferImageCopy( BufferImageCopy const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ BufferImageCopy( VkBufferImageCopy const & rhs ) VULKAN_HPP_NOEXCEPT
+ : BufferImageCopy( *reinterpret_cast<BufferImageCopy const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 BufferImageCopy & operator=( BufferImageCopy const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ BufferImageCopy & operator=( VkBufferImageCopy const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BufferImageCopy const *>( &rhs );
+ return *this;
+ }
+
+ BufferImageCopy & setBufferOffset( VULKAN_HPP_NAMESPACE::DeviceSize bufferOffset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ bufferOffset = bufferOffset_;
+ return *this;
+ }
+
+ BufferImageCopy & setBufferRowLength( uint32_t bufferRowLength_ ) VULKAN_HPP_NOEXCEPT
+ {
+ bufferRowLength = bufferRowLength_;
+ return *this;
+ }
+
+ BufferImageCopy & setBufferImageHeight( uint32_t bufferImageHeight_ ) VULKAN_HPP_NOEXCEPT
+ {
+ bufferImageHeight = bufferImageHeight_;
+ return *this;
+ }
+
+ BufferImageCopy &
+ setImageSubresource( VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const & imageSubresource_ ) VULKAN_HPP_NOEXCEPT
+ {
+ imageSubresource = imageSubresource_;
+ return *this;
+ }
+
+ BufferImageCopy & setImageOffset( VULKAN_HPP_NAMESPACE::Offset3D const & imageOffset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ imageOffset = imageOffset_;
+ return *this;
+ }
+
+ BufferImageCopy & setImageExtent( VULKAN_HPP_NAMESPACE::Extent3D const & imageExtent_ ) VULKAN_HPP_NOEXCEPT
+ {
+ imageExtent = imageExtent_;
+ return *this;
+ }
+
+ operator VkBufferImageCopy const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkBufferImageCopy *>( this );
+ }
+
+ operator VkBufferImageCopy &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkBufferImageCopy *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( BufferImageCopy const & ) const = default;
+#else
+ bool operator==( BufferImageCopy const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( bufferOffset == rhs.bufferOffset ) && ( bufferRowLength == rhs.bufferRowLength ) &&
+ ( bufferImageHeight == rhs.bufferImageHeight ) && ( imageSubresource == rhs.imageSubresource ) &&
+ ( imageOffset == rhs.imageOffset ) && ( imageExtent == rhs.imageExtent );
+ }
+
+ bool operator!=( BufferImageCopy const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::DeviceSize bufferOffset = {};
+ uint32_t bufferRowLength = {};
+ uint32_t bufferImageHeight = {};
+ VULKAN_HPP_NAMESPACE::ImageSubresourceLayers imageSubresource = {};
+ VULKAN_HPP_NAMESPACE::Offset3D imageOffset = {};
+ VULKAN_HPP_NAMESPACE::Extent3D imageExtent = {};
+ };
+ static_assert( sizeof( BufferImageCopy ) == sizeof( VkBufferImageCopy ), "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<BufferImageCopy>::value, "struct wrapper is not a standard layout!" );
+
+ struct BufferImageCopy2KHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBufferImageCopy2KHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR BufferImageCopy2KHR( VULKAN_HPP_NAMESPACE::DeviceSize bufferOffset_ = {},
+ uint32_t bufferRowLength_ = {},
+ uint32_t bufferImageHeight_ = {},
+ VULKAN_HPP_NAMESPACE::ImageSubresourceLayers imageSubresource_ = {},
+ VULKAN_HPP_NAMESPACE::Offset3D imageOffset_ = {},
+ VULKAN_HPP_NAMESPACE::Extent3D imageExtent_ = {} ) VULKAN_HPP_NOEXCEPT
+ : bufferOffset( bufferOffset_ )
+ , bufferRowLength( bufferRowLength_ )
+ , bufferImageHeight( bufferImageHeight_ )
+ , imageSubresource( imageSubresource_ )
+ , imageOffset( imageOffset_ )
+ , imageExtent( imageExtent_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR BufferImageCopy2KHR( BufferImageCopy2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ BufferImageCopy2KHR( VkBufferImageCopy2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : BufferImageCopy2KHR( *reinterpret_cast<BufferImageCopy2KHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 BufferImageCopy2KHR &
+ operator=( BufferImageCopy2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ BufferImageCopy2KHR & operator=( VkBufferImageCopy2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BufferImageCopy2KHR const *>( &rhs );
+ return *this;
+ }
+
+ BufferImageCopy2KHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ BufferImageCopy2KHR & setBufferOffset( VULKAN_HPP_NAMESPACE::DeviceSize bufferOffset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ bufferOffset = bufferOffset_;
+ return *this;
+ }
+
+ BufferImageCopy2KHR & setBufferRowLength( uint32_t bufferRowLength_ ) VULKAN_HPP_NOEXCEPT
+ {
+ bufferRowLength = bufferRowLength_;
+ return *this;
+ }
+
+ BufferImageCopy2KHR & setBufferImageHeight( uint32_t bufferImageHeight_ ) VULKAN_HPP_NOEXCEPT
+ {
+ bufferImageHeight = bufferImageHeight_;
+ return *this;
+ }
+
+ BufferImageCopy2KHR &
+ setImageSubresource( VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const & imageSubresource_ ) VULKAN_HPP_NOEXCEPT
+ {
+ imageSubresource = imageSubresource_;
+ return *this;
+ }
+
+ BufferImageCopy2KHR & setImageOffset( VULKAN_HPP_NAMESPACE::Offset3D const & imageOffset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ imageOffset = imageOffset_;
+ return *this;
+ }
+
+ BufferImageCopy2KHR & setImageExtent( VULKAN_HPP_NAMESPACE::Extent3D const & imageExtent_ ) VULKAN_HPP_NOEXCEPT
+ {
+ imageExtent = imageExtent_;
+ return *this;
+ }
+
+ operator VkBufferImageCopy2KHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkBufferImageCopy2KHR *>( this );
+ }
+
+ operator VkBufferImageCopy2KHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkBufferImageCopy2KHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( BufferImageCopy2KHR const & ) const = default;
+#else
+ bool operator==( BufferImageCopy2KHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( bufferOffset == rhs.bufferOffset ) &&
+ ( bufferRowLength == rhs.bufferRowLength ) && ( bufferImageHeight == rhs.bufferImageHeight ) &&
+ ( imageSubresource == rhs.imageSubresource ) && ( imageOffset == rhs.imageOffset ) &&
+ ( imageExtent == rhs.imageExtent );
+ }
+
+ bool operator!=( BufferImageCopy2KHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBufferImageCopy2KHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize bufferOffset = {};
+ uint32_t bufferRowLength = {};
+ uint32_t bufferImageHeight = {};
+ VULKAN_HPP_NAMESPACE::ImageSubresourceLayers imageSubresource = {};
+ VULKAN_HPP_NAMESPACE::Offset3D imageOffset = {};
+ VULKAN_HPP_NAMESPACE::Extent3D imageExtent = {};
+ };
+ static_assert( sizeof( BufferImageCopy2KHR ) == sizeof( VkBufferImageCopy2KHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<BufferImageCopy2KHR>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eBufferImageCopy2KHR>
+ {
+ using Type = BufferImageCopy2KHR;
+ };
+
+ struct BufferMemoryBarrier
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBufferMemoryBarrier;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR BufferMemoryBarrier( VULKAN_HPP_NAMESPACE::AccessFlags srcAccessMask_ = {},
+ VULKAN_HPP_NAMESPACE::AccessFlags dstAccessMask_ = {},
+ uint32_t srcQueueFamilyIndex_ = {},
+ uint32_t dstQueueFamilyIndex_ = {},
+ VULKAN_HPP_NAMESPACE::Buffer buffer_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize offset_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize size_ = {} ) VULKAN_HPP_NOEXCEPT
+ : srcAccessMask( srcAccessMask_ )
+ , dstAccessMask( dstAccessMask_ )
+ , srcQueueFamilyIndex( srcQueueFamilyIndex_ )
+ , dstQueueFamilyIndex( dstQueueFamilyIndex_ )
+ , buffer( buffer_ )
+ , offset( offset_ )
+ , size( size_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR BufferMemoryBarrier( BufferMemoryBarrier const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ BufferMemoryBarrier( VkBufferMemoryBarrier const & rhs ) VULKAN_HPP_NOEXCEPT
+ : BufferMemoryBarrier( *reinterpret_cast<BufferMemoryBarrier const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 BufferMemoryBarrier &
+ operator=( BufferMemoryBarrier const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ BufferMemoryBarrier & operator=( VkBufferMemoryBarrier const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BufferMemoryBarrier const *>( &rhs );
+ return *this;
+ }
+
+ BufferMemoryBarrier & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ BufferMemoryBarrier & setSrcAccessMask( VULKAN_HPP_NAMESPACE::AccessFlags srcAccessMask_ ) VULKAN_HPP_NOEXCEPT
+ {
+ srcAccessMask = srcAccessMask_;
+ return *this;
+ }
+
+ BufferMemoryBarrier & setDstAccessMask( VULKAN_HPP_NAMESPACE::AccessFlags dstAccessMask_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstAccessMask = dstAccessMask_;
+ return *this;
+ }
+
+ BufferMemoryBarrier & setSrcQueueFamilyIndex( uint32_t srcQueueFamilyIndex_ ) VULKAN_HPP_NOEXCEPT
+ {
+ srcQueueFamilyIndex = srcQueueFamilyIndex_;
+ return *this;
+ }
+
+ BufferMemoryBarrier & setDstQueueFamilyIndex( uint32_t dstQueueFamilyIndex_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstQueueFamilyIndex = dstQueueFamilyIndex_;
+ return *this;
+ }
+
+ BufferMemoryBarrier & setBuffer( VULKAN_HPP_NAMESPACE::Buffer buffer_ ) VULKAN_HPP_NOEXCEPT
+ {
+ buffer = buffer_;
+ return *this;
+ }
+
+ BufferMemoryBarrier & setOffset( VULKAN_HPP_NAMESPACE::DeviceSize offset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ offset = offset_;
+ return *this;
+ }
+
+ BufferMemoryBarrier & setSize( VULKAN_HPP_NAMESPACE::DeviceSize size_ ) VULKAN_HPP_NOEXCEPT
+ {
+ size = size_;
+ return *this;
+ }
+
+ operator VkBufferMemoryBarrier const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkBufferMemoryBarrier *>( this );
+ }
+
+ operator VkBufferMemoryBarrier &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkBufferMemoryBarrier *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( BufferMemoryBarrier const & ) const = default;
+#else
+ bool operator==( BufferMemoryBarrier const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( srcAccessMask == rhs.srcAccessMask ) &&
+ ( dstAccessMask == rhs.dstAccessMask ) && ( srcQueueFamilyIndex == rhs.srcQueueFamilyIndex ) &&
+ ( dstQueueFamilyIndex == rhs.dstQueueFamilyIndex ) && ( buffer == rhs.buffer ) &&
+ ( offset == rhs.offset ) && ( size == rhs.size );
+ }
+
+ bool operator!=( BufferMemoryBarrier const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBufferMemoryBarrier;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::AccessFlags srcAccessMask = {};
+ VULKAN_HPP_NAMESPACE::AccessFlags dstAccessMask = {};
+ uint32_t srcQueueFamilyIndex = {};
+ uint32_t dstQueueFamilyIndex = {};
+ VULKAN_HPP_NAMESPACE::Buffer buffer = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize offset = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize size = {};
+ };
+ static_assert( sizeof( BufferMemoryBarrier ) == sizeof( VkBufferMemoryBarrier ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<BufferMemoryBarrier>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eBufferMemoryBarrier>
+ {
+ using Type = BufferMemoryBarrier;
+ };
+
+ struct BufferMemoryBarrier2KHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBufferMemoryBarrier2KHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR BufferMemoryBarrier2KHR( VULKAN_HPP_NAMESPACE::PipelineStageFlags2KHR srcStageMask_ = {},
+ VULKAN_HPP_NAMESPACE::AccessFlags2KHR srcAccessMask_ = {},
+ VULKAN_HPP_NAMESPACE::PipelineStageFlags2KHR dstStageMask_ = {},
+ VULKAN_HPP_NAMESPACE::AccessFlags2KHR dstAccessMask_ = {},
+ uint32_t srcQueueFamilyIndex_ = {},
+ uint32_t dstQueueFamilyIndex_ = {},
+ VULKAN_HPP_NAMESPACE::Buffer buffer_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize offset_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize size_ = {} ) VULKAN_HPP_NOEXCEPT
+ : srcStageMask( srcStageMask_ )
+ , srcAccessMask( srcAccessMask_ )
+ , dstStageMask( dstStageMask_ )
+ , dstAccessMask( dstAccessMask_ )
+ , srcQueueFamilyIndex( srcQueueFamilyIndex_ )
+ , dstQueueFamilyIndex( dstQueueFamilyIndex_ )
+ , buffer( buffer_ )
+ , offset( offset_ )
+ , size( size_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR BufferMemoryBarrier2KHR( BufferMemoryBarrier2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ BufferMemoryBarrier2KHR( VkBufferMemoryBarrier2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : BufferMemoryBarrier2KHR( *reinterpret_cast<BufferMemoryBarrier2KHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 BufferMemoryBarrier2KHR &
+ operator=( BufferMemoryBarrier2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ BufferMemoryBarrier2KHR & operator=( VkBufferMemoryBarrier2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BufferMemoryBarrier2KHR const *>( &rhs );
+ return *this;
+ }
+
+ BufferMemoryBarrier2KHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ BufferMemoryBarrier2KHR &
+ setSrcStageMask( VULKAN_HPP_NAMESPACE::PipelineStageFlags2KHR srcStageMask_ ) VULKAN_HPP_NOEXCEPT
+ {
+ srcStageMask = srcStageMask_;
+ return *this;
+ }
+
+ BufferMemoryBarrier2KHR &
+ setSrcAccessMask( VULKAN_HPP_NAMESPACE::AccessFlags2KHR srcAccessMask_ ) VULKAN_HPP_NOEXCEPT
+ {
+ srcAccessMask = srcAccessMask_;
+ return *this;
+ }
+
+ BufferMemoryBarrier2KHR &
+ setDstStageMask( VULKAN_HPP_NAMESPACE::PipelineStageFlags2KHR dstStageMask_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstStageMask = dstStageMask_;
+ return *this;
+ }
+
+ BufferMemoryBarrier2KHR &
+ setDstAccessMask( VULKAN_HPP_NAMESPACE::AccessFlags2KHR dstAccessMask_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstAccessMask = dstAccessMask_;
+ return *this;
+ }
+
+ BufferMemoryBarrier2KHR & setSrcQueueFamilyIndex( uint32_t srcQueueFamilyIndex_ ) VULKAN_HPP_NOEXCEPT
+ {
+ srcQueueFamilyIndex = srcQueueFamilyIndex_;
+ return *this;
+ }
+
+ BufferMemoryBarrier2KHR & setDstQueueFamilyIndex( uint32_t dstQueueFamilyIndex_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstQueueFamilyIndex = dstQueueFamilyIndex_;
+ return *this;
+ }
+
+ BufferMemoryBarrier2KHR & setBuffer( VULKAN_HPP_NAMESPACE::Buffer buffer_ ) VULKAN_HPP_NOEXCEPT
+ {
+ buffer = buffer_;
+ return *this;
+ }
+
+ BufferMemoryBarrier2KHR & setOffset( VULKAN_HPP_NAMESPACE::DeviceSize offset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ offset = offset_;
+ return *this;
+ }
+
+ BufferMemoryBarrier2KHR & setSize( VULKAN_HPP_NAMESPACE::DeviceSize size_ ) VULKAN_HPP_NOEXCEPT
+ {
+ size = size_;
+ return *this;
+ }
+
+ operator VkBufferMemoryBarrier2KHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkBufferMemoryBarrier2KHR *>( this );
+ }
+
+ operator VkBufferMemoryBarrier2KHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkBufferMemoryBarrier2KHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( BufferMemoryBarrier2KHR const & ) const = default;
+#else
+ bool operator==( BufferMemoryBarrier2KHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( srcStageMask == rhs.srcStageMask ) &&
+ ( srcAccessMask == rhs.srcAccessMask ) && ( dstStageMask == rhs.dstStageMask ) &&
+ ( dstAccessMask == rhs.dstAccessMask ) && ( srcQueueFamilyIndex == rhs.srcQueueFamilyIndex ) &&
+ ( dstQueueFamilyIndex == rhs.dstQueueFamilyIndex ) && ( buffer == rhs.buffer ) &&
+ ( offset == rhs.offset ) && ( size == rhs.size );
+ }
+
+ bool operator!=( BufferMemoryBarrier2KHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBufferMemoryBarrier2KHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::PipelineStageFlags2KHR srcStageMask = {};
+ VULKAN_HPP_NAMESPACE::AccessFlags2KHR srcAccessMask = {};
+ VULKAN_HPP_NAMESPACE::PipelineStageFlags2KHR dstStageMask = {};
+ VULKAN_HPP_NAMESPACE::AccessFlags2KHR dstAccessMask = {};
+ uint32_t srcQueueFamilyIndex = {};
+ uint32_t dstQueueFamilyIndex = {};
+ VULKAN_HPP_NAMESPACE::Buffer buffer = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize offset = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize size = {};
+ };
+ static_assert( sizeof( BufferMemoryBarrier2KHR ) == sizeof( VkBufferMemoryBarrier2KHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<BufferMemoryBarrier2KHR>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eBufferMemoryBarrier2KHR>
+ {
+ using Type = BufferMemoryBarrier2KHR;
+ };
+
+ struct BufferMemoryRequirementsInfo2
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBufferMemoryRequirementsInfo2;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR BufferMemoryRequirementsInfo2( VULKAN_HPP_NAMESPACE::Buffer buffer_ = {} ) VULKAN_HPP_NOEXCEPT
+ : buffer( buffer_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ BufferMemoryRequirementsInfo2( BufferMemoryRequirementsInfo2 const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ BufferMemoryRequirementsInfo2( VkBufferMemoryRequirementsInfo2 const & rhs ) VULKAN_HPP_NOEXCEPT
+ : BufferMemoryRequirementsInfo2( *reinterpret_cast<BufferMemoryRequirementsInfo2 const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 BufferMemoryRequirementsInfo2 &
+ operator=( BufferMemoryRequirementsInfo2 const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ BufferMemoryRequirementsInfo2 & operator=( VkBufferMemoryRequirementsInfo2 const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BufferMemoryRequirementsInfo2 const *>( &rhs );
+ return *this;
+ }
+
+ BufferMemoryRequirementsInfo2 & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ BufferMemoryRequirementsInfo2 & setBuffer( VULKAN_HPP_NAMESPACE::Buffer buffer_ ) VULKAN_HPP_NOEXCEPT
+ {
+ buffer = buffer_;
+ return *this;
+ }
+
+ operator VkBufferMemoryRequirementsInfo2 const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkBufferMemoryRequirementsInfo2 *>( this );
+ }
+
+ operator VkBufferMemoryRequirementsInfo2 &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkBufferMemoryRequirementsInfo2 *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( BufferMemoryRequirementsInfo2 const & ) const = default;
+#else
+ bool operator==( BufferMemoryRequirementsInfo2 const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( buffer == rhs.buffer );
+ }
+
+ bool operator!=( BufferMemoryRequirementsInfo2 const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBufferMemoryRequirementsInfo2;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Buffer buffer = {};
+ };
+ static_assert( sizeof( BufferMemoryRequirementsInfo2 ) == sizeof( VkBufferMemoryRequirementsInfo2 ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<BufferMemoryRequirementsInfo2>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eBufferMemoryRequirementsInfo2>
+ {
+ using Type = BufferMemoryRequirementsInfo2;
+ };
+ using BufferMemoryRequirementsInfo2KHR = BufferMemoryRequirementsInfo2;
+
+ struct BufferOpaqueCaptureAddressCreateInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eBufferOpaqueCaptureAddressCreateInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR BufferOpaqueCaptureAddressCreateInfo( uint64_t opaqueCaptureAddress_ = {} ) VULKAN_HPP_NOEXCEPT
+ : opaqueCaptureAddress( opaqueCaptureAddress_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR BufferOpaqueCaptureAddressCreateInfo( BufferOpaqueCaptureAddressCreateInfo const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ BufferOpaqueCaptureAddressCreateInfo( VkBufferOpaqueCaptureAddressCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : BufferOpaqueCaptureAddressCreateInfo( *reinterpret_cast<BufferOpaqueCaptureAddressCreateInfo const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 BufferOpaqueCaptureAddressCreateInfo &
+ operator=( BufferOpaqueCaptureAddressCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ BufferOpaqueCaptureAddressCreateInfo &
+ operator=( VkBufferOpaqueCaptureAddressCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BufferOpaqueCaptureAddressCreateInfo const *>( &rhs );
+ return *this;
+ }
+
+ BufferOpaqueCaptureAddressCreateInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ BufferOpaqueCaptureAddressCreateInfo & setOpaqueCaptureAddress( uint64_t opaqueCaptureAddress_ ) VULKAN_HPP_NOEXCEPT
+ {
+ opaqueCaptureAddress = opaqueCaptureAddress_;
+ return *this;
+ }
+
+ operator VkBufferOpaqueCaptureAddressCreateInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkBufferOpaqueCaptureAddressCreateInfo *>( this );
+ }
+
+ operator VkBufferOpaqueCaptureAddressCreateInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkBufferOpaqueCaptureAddressCreateInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( BufferOpaqueCaptureAddressCreateInfo const & ) const = default;
+#else
+ bool operator==( BufferOpaqueCaptureAddressCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( opaqueCaptureAddress == rhs.opaqueCaptureAddress );
+ }
+
+ bool operator!=( BufferOpaqueCaptureAddressCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBufferOpaqueCaptureAddressCreateInfo;
+ const void * pNext = {};
+ uint64_t opaqueCaptureAddress = {};
+ };
+ static_assert( sizeof( BufferOpaqueCaptureAddressCreateInfo ) == sizeof( VkBufferOpaqueCaptureAddressCreateInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<BufferOpaqueCaptureAddressCreateInfo>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eBufferOpaqueCaptureAddressCreateInfo>
+ {
+ using Type = BufferOpaqueCaptureAddressCreateInfo;
+ };
+ using BufferOpaqueCaptureAddressCreateInfoKHR = BufferOpaqueCaptureAddressCreateInfo;
+
+ struct BufferViewCreateInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBufferViewCreateInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ BufferViewCreateInfo( VULKAN_HPP_NAMESPACE::BufferViewCreateFlags flags_ = {},
+ VULKAN_HPP_NAMESPACE::Buffer buffer_ = {},
+ VULKAN_HPP_NAMESPACE::Format format_ = VULKAN_HPP_NAMESPACE::Format::eUndefined,
+ VULKAN_HPP_NAMESPACE::DeviceSize offset_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize range_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , buffer( buffer_ )
+ , format( format_ )
+ , offset( offset_ )
+ , range( range_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR BufferViewCreateInfo( BufferViewCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ BufferViewCreateInfo( VkBufferViewCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : BufferViewCreateInfo( *reinterpret_cast<BufferViewCreateInfo const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 BufferViewCreateInfo &
+ operator=( BufferViewCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ BufferViewCreateInfo & operator=( VkBufferViewCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BufferViewCreateInfo const *>( &rhs );
+ return *this;
+ }
+
+ BufferViewCreateInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ BufferViewCreateInfo & setFlags( VULKAN_HPP_NAMESPACE::BufferViewCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ BufferViewCreateInfo & setBuffer( VULKAN_HPP_NAMESPACE::Buffer buffer_ ) VULKAN_HPP_NOEXCEPT
+ {
+ buffer = buffer_;
+ return *this;
+ }
+
+ BufferViewCreateInfo & setFormat( VULKAN_HPP_NAMESPACE::Format format_ ) VULKAN_HPP_NOEXCEPT
+ {
+ format = format_;
+ return *this;
+ }
+
+ BufferViewCreateInfo & setOffset( VULKAN_HPP_NAMESPACE::DeviceSize offset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ offset = offset_;
+ return *this;
+ }
+
+ BufferViewCreateInfo & setRange( VULKAN_HPP_NAMESPACE::DeviceSize range_ ) VULKAN_HPP_NOEXCEPT
+ {
+ range = range_;
+ return *this;
+ }
+
+ operator VkBufferViewCreateInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkBufferViewCreateInfo *>( this );
+ }
+
+ operator VkBufferViewCreateInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkBufferViewCreateInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( BufferViewCreateInfo const & ) const = default;
+#else
+ bool operator==( BufferViewCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) && ( buffer == rhs.buffer ) &&
+ ( format == rhs.format ) && ( offset == rhs.offset ) && ( range == rhs.range );
+ }
+
+ bool operator!=( BufferViewCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBufferViewCreateInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::BufferViewCreateFlags flags = {};
+ VULKAN_HPP_NAMESPACE::Buffer buffer = {};
+ VULKAN_HPP_NAMESPACE::Format format = VULKAN_HPP_NAMESPACE::Format::eUndefined;
+ VULKAN_HPP_NAMESPACE::DeviceSize offset = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize range = {};
+ };
+ static_assert( sizeof( BufferViewCreateInfo ) == sizeof( VkBufferViewCreateInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<BufferViewCreateInfo>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eBufferViewCreateInfo>
+ {
+ using Type = BufferViewCreateInfo;
+ };
+
+ struct CalibratedTimestampInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCalibratedTimestampInfoEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ CalibratedTimestampInfoEXT( VULKAN_HPP_NAMESPACE::TimeDomainEXT timeDomain_ =
+ VULKAN_HPP_NAMESPACE::TimeDomainEXT::eDevice ) VULKAN_HPP_NOEXCEPT
+ : timeDomain( timeDomain_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ CalibratedTimestampInfoEXT( CalibratedTimestampInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ CalibratedTimestampInfoEXT( VkCalibratedTimestampInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : CalibratedTimestampInfoEXT( *reinterpret_cast<CalibratedTimestampInfoEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 CalibratedTimestampInfoEXT &
+ operator=( CalibratedTimestampInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ CalibratedTimestampInfoEXT & operator=( VkCalibratedTimestampInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CalibratedTimestampInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ CalibratedTimestampInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ CalibratedTimestampInfoEXT & setTimeDomain( VULKAN_HPP_NAMESPACE::TimeDomainEXT timeDomain_ ) VULKAN_HPP_NOEXCEPT
+ {
+ timeDomain = timeDomain_;
+ return *this;
+ }
+
+ operator VkCalibratedTimestampInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkCalibratedTimestampInfoEXT *>( this );
+ }
+
+ operator VkCalibratedTimestampInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkCalibratedTimestampInfoEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( CalibratedTimestampInfoEXT const & ) const = default;
+#else
+ bool operator==( CalibratedTimestampInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( timeDomain == rhs.timeDomain );
+ }
+
+ bool operator!=( CalibratedTimestampInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCalibratedTimestampInfoEXT;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::TimeDomainEXT timeDomain = VULKAN_HPP_NAMESPACE::TimeDomainEXT::eDevice;
+ };
+ static_assert( sizeof( CalibratedTimestampInfoEXT ) == sizeof( VkCalibratedTimestampInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<CalibratedTimestampInfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eCalibratedTimestampInfoEXT>
+ {
+ using Type = CalibratedTimestampInfoEXT;
+ };
+
+ struct CheckpointData2NV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCheckpointData2NV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR CheckpointData2NV( VULKAN_HPP_NAMESPACE::PipelineStageFlags2KHR stage_ = {},
+ void * pCheckpointMarker_ = {} ) VULKAN_HPP_NOEXCEPT
+ : stage( stage_ )
+ , pCheckpointMarker( pCheckpointMarker_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR CheckpointData2NV( CheckpointData2NV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ CheckpointData2NV( VkCheckpointData2NV const & rhs ) VULKAN_HPP_NOEXCEPT
+ : CheckpointData2NV( *reinterpret_cast<CheckpointData2NV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 CheckpointData2NV &
+ operator=( CheckpointData2NV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ CheckpointData2NV & operator=( VkCheckpointData2NV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CheckpointData2NV const *>( &rhs );
+ return *this;
+ }
+
+ operator VkCheckpointData2NV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkCheckpointData2NV *>( this );
+ }
+
+ operator VkCheckpointData2NV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkCheckpointData2NV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( CheckpointData2NV const & ) const = default;
+#else
+ bool operator==( CheckpointData2NV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( stage == rhs.stage ) &&
+ ( pCheckpointMarker == rhs.pCheckpointMarker );
+ }
+
+ bool operator!=( CheckpointData2NV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCheckpointData2NV;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::PipelineStageFlags2KHR stage = {};
+ void * pCheckpointMarker = {};
+ };
+ static_assert( sizeof( CheckpointData2NV ) == sizeof( VkCheckpointData2NV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<CheckpointData2NV>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eCheckpointData2NV>
+ {
+ using Type = CheckpointData2NV;
+ };
+
+ struct CheckpointDataNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCheckpointDataNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR CheckpointDataNV(
+ VULKAN_HPP_NAMESPACE::PipelineStageFlagBits stage_ = VULKAN_HPP_NAMESPACE::PipelineStageFlagBits::eTopOfPipe,
+ void * pCheckpointMarker_ = {} ) VULKAN_HPP_NOEXCEPT
+ : stage( stage_ )
+ , pCheckpointMarker( pCheckpointMarker_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR CheckpointDataNV( CheckpointDataNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ CheckpointDataNV( VkCheckpointDataNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ : CheckpointDataNV( *reinterpret_cast<CheckpointDataNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 CheckpointDataNV & operator=( CheckpointDataNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ CheckpointDataNV & operator=( VkCheckpointDataNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CheckpointDataNV const *>( &rhs );
+ return *this;
+ }
+
+ operator VkCheckpointDataNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkCheckpointDataNV *>( this );
+ }
+
+ operator VkCheckpointDataNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkCheckpointDataNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( CheckpointDataNV const & ) const = default;
+#else
+ bool operator==( CheckpointDataNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( stage == rhs.stage ) &&
+ ( pCheckpointMarker == rhs.pCheckpointMarker );
+ }
+
+ bool operator!=( CheckpointDataNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCheckpointDataNV;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::PipelineStageFlagBits stage = VULKAN_HPP_NAMESPACE::PipelineStageFlagBits::eTopOfPipe;
+ void * pCheckpointMarker = {};
+ };
+ static_assert( sizeof( CheckpointDataNV ) == sizeof( VkCheckpointDataNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<CheckpointDataNV>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eCheckpointDataNV>
+ {
+ using Type = CheckpointDataNV;
+ };
+
+ union ClearColorValue
+ {
+ ClearColorValue( VULKAN_HPP_NAMESPACE::ClearColorValue const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ memcpy( static_cast<void *>( this ), &rhs, sizeof( VULKAN_HPP_NAMESPACE::ClearColorValue ) );
+ }
+
+ ClearColorValue( const std::array<float, 4> & float32_ = {} ) : float32( float32_ ) {}
+
+ ClearColorValue( const std::array<int32_t, 4> & int32_ ) : int32( int32_ ) {}
+
+ ClearColorValue( const std::array<uint32_t, 4> & uint32_ ) : uint32( uint32_ ) {}
+
+ ClearColorValue & setFloat32( std::array<float, 4> float32_ ) VULKAN_HPP_NOEXCEPT
+ {
+ float32 = float32_;
+ return *this;
+ }
+
+ ClearColorValue & setInt32( std::array<int32_t, 4> int32_ ) VULKAN_HPP_NOEXCEPT
+ {
+ int32 = int32_;
+ return *this;
+ }
+
+ ClearColorValue & setUint32( std::array<uint32_t, 4> uint32_ ) VULKAN_HPP_NOEXCEPT
+ {
+ uint32 = uint32_;
+ return *this;
+ }
+
+ VULKAN_HPP_NAMESPACE::ClearColorValue &
+ operator=( VULKAN_HPP_NAMESPACE::ClearColorValue const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ memcpy( static_cast<void *>( this ), &rhs, sizeof( VULKAN_HPP_NAMESPACE::ClearColorValue ) );
+ return *this;
+ }
+
+ operator VkClearColorValue const &() const
+ {
+ return *reinterpret_cast<const VkClearColorValue *>( this );
+ }
+
+ operator VkClearColorValue &()
+ {
+ return *reinterpret_cast<VkClearColorValue *>( this );
+ }
+
+ VULKAN_HPP_NAMESPACE::ArrayWrapper1D<float, 4> float32;
+ VULKAN_HPP_NAMESPACE::ArrayWrapper1D<int32_t, 4> int32;
+ VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint32_t, 4> uint32;
+ };
+
+ struct ClearDepthStencilValue
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR ClearDepthStencilValue( float depth_ = {}, uint32_t stencil_ = {} ) VULKAN_HPP_NOEXCEPT
+ : depth( depth_ )
+ , stencil( stencil_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR ClearDepthStencilValue( ClearDepthStencilValue const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ClearDepthStencilValue( VkClearDepthStencilValue const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ClearDepthStencilValue( *reinterpret_cast<ClearDepthStencilValue const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ClearDepthStencilValue &
+ operator=( ClearDepthStencilValue const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ClearDepthStencilValue & operator=( VkClearDepthStencilValue const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ClearDepthStencilValue const *>( &rhs );
+ return *this;
+ }
+
+ ClearDepthStencilValue & setDepth( float depth_ ) VULKAN_HPP_NOEXCEPT
+ {
+ depth = depth_;
+ return *this;
+ }
+
+ ClearDepthStencilValue & setStencil( uint32_t stencil_ ) VULKAN_HPP_NOEXCEPT
+ {
+ stencil = stencil_;
+ return *this;
+ }
+
+ operator VkClearDepthStencilValue const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkClearDepthStencilValue *>( this );
+ }
+
+ operator VkClearDepthStencilValue &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkClearDepthStencilValue *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ClearDepthStencilValue const & ) const = default;
+#else
+ bool operator==( ClearDepthStencilValue const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( depth == rhs.depth ) && ( stencil == rhs.stencil );
+ }
+
+ bool operator!=( ClearDepthStencilValue const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ float depth = {};
+ uint32_t stencil = {};
+ };
+ static_assert( sizeof( ClearDepthStencilValue ) == sizeof( VkClearDepthStencilValue ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ClearDepthStencilValue>::value, "struct wrapper is not a standard layout!" );
+
+ union ClearValue
+ {
+ ClearValue( VULKAN_HPP_NAMESPACE::ClearValue const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ memcpy( static_cast<void *>( this ), &rhs, sizeof( VULKAN_HPP_NAMESPACE::ClearValue ) );
+ }
+
+ ClearValue( VULKAN_HPP_NAMESPACE::ClearColorValue color_ = {} ) : color( color_ ) {}
+
+ ClearValue( VULKAN_HPP_NAMESPACE::ClearDepthStencilValue depthStencil_ ) : depthStencil( depthStencil_ ) {}
+
+ ClearValue & setColor( VULKAN_HPP_NAMESPACE::ClearColorValue const & color_ ) VULKAN_HPP_NOEXCEPT
+ {
+ color = color_;
+ return *this;
+ }
+
+ ClearValue &
+ setDepthStencil( VULKAN_HPP_NAMESPACE::ClearDepthStencilValue const & depthStencil_ ) VULKAN_HPP_NOEXCEPT
+ {
+ depthStencil = depthStencil_;
+ return *this;
+ }
+
+ VULKAN_HPP_NAMESPACE::ClearValue & operator=( VULKAN_HPP_NAMESPACE::ClearValue const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ memcpy( static_cast<void *>( this ), &rhs, sizeof( VULKAN_HPP_NAMESPACE::ClearValue ) );
+ return *this;
+ }
+
+ operator VkClearValue const &() const
+ {
+ return *reinterpret_cast<const VkClearValue *>( this );
+ }
+
+ operator VkClearValue &()
+ {
+ return *reinterpret_cast<VkClearValue *>( this );
+ }
+
+#ifdef VULKAN_HPP_HAS_UNRESTRICTED_UNIONS
+ VULKAN_HPP_NAMESPACE::ClearColorValue color;
+ VULKAN_HPP_NAMESPACE::ClearDepthStencilValue depthStencil;
+#else
+ VkClearColorValue color;
+ VkClearDepthStencilValue depthStencil;
+#endif /*VULKAN_HPP_HAS_UNRESTRICTED_UNIONS*/
+ };
+
+ struct ClearAttachment
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ ClearAttachment( VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask_ = {},
+ uint32_t colorAttachment_ = {},
+ VULKAN_HPP_NAMESPACE::ClearValue clearValue_ = {} ) VULKAN_HPP_NOEXCEPT
+ : aspectMask( aspectMask_ )
+ , colorAttachment( colorAttachment_ )
+ , clearValue( clearValue_ )
+ {}
+
+ ClearAttachment( ClearAttachment const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ClearAttachment( VkClearAttachment const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ClearAttachment( *reinterpret_cast<ClearAttachment const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ ClearAttachment & operator=( ClearAttachment const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ClearAttachment & operator=( VkClearAttachment const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ClearAttachment const *>( &rhs );
+ return *this;
+ }
+
+ ClearAttachment & setAspectMask( VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask_ ) VULKAN_HPP_NOEXCEPT
+ {
+ aspectMask = aspectMask_;
+ return *this;
+ }
+
+ ClearAttachment & setColorAttachment( uint32_t colorAttachment_ ) VULKAN_HPP_NOEXCEPT
+ {
+ colorAttachment = colorAttachment_;
+ return *this;
+ }
+
+ ClearAttachment & setClearValue( VULKAN_HPP_NAMESPACE::ClearValue const & clearValue_ ) VULKAN_HPP_NOEXCEPT
+ {
+ clearValue = clearValue_;
+ return *this;
+ }
+
+ operator VkClearAttachment const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkClearAttachment *>( this );
+ }
+
+ operator VkClearAttachment &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkClearAttachment *>( this );
+ }
+
+ public:
+ VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask = {};
+ uint32_t colorAttachment = {};
+ VULKAN_HPP_NAMESPACE::ClearValue clearValue = {};
+ };
+ static_assert( sizeof( ClearAttachment ) == sizeof( VkClearAttachment ), "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ClearAttachment>::value, "struct wrapper is not a standard layout!" );
+
+ struct ClearRect
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR ClearRect( VULKAN_HPP_NAMESPACE::Rect2D rect_ = {},
+ uint32_t baseArrayLayer_ = {},
+ uint32_t layerCount_ = {} ) VULKAN_HPP_NOEXCEPT
+ : rect( rect_ )
+ , baseArrayLayer( baseArrayLayer_ )
+ , layerCount( layerCount_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR ClearRect( ClearRect const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ClearRect( VkClearRect const & rhs ) VULKAN_HPP_NOEXCEPT : ClearRect( *reinterpret_cast<ClearRect const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ClearRect & operator=( ClearRect const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ClearRect & operator=( VkClearRect const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ClearRect const *>( &rhs );
+ return *this;
+ }
+
+ ClearRect & setRect( VULKAN_HPP_NAMESPACE::Rect2D const & rect_ ) VULKAN_HPP_NOEXCEPT
+ {
+ rect = rect_;
+ return *this;
+ }
+
+ ClearRect & setBaseArrayLayer( uint32_t baseArrayLayer_ ) VULKAN_HPP_NOEXCEPT
+ {
+ baseArrayLayer = baseArrayLayer_;
+ return *this;
+ }
+
+ ClearRect & setLayerCount( uint32_t layerCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ layerCount = layerCount_;
+ return *this;
+ }
+
+ operator VkClearRect const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkClearRect *>( this );
+ }
+
+ operator VkClearRect &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkClearRect *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ClearRect const & ) const = default;
+#else
+ bool operator==( ClearRect const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( rect == rhs.rect ) && ( baseArrayLayer == rhs.baseArrayLayer ) && ( layerCount == rhs.layerCount );
+ }
+
+ bool operator!=( ClearRect const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::Rect2D rect = {};
+ uint32_t baseArrayLayer = {};
+ uint32_t layerCount = {};
+ };
+ static_assert( sizeof( ClearRect ) == sizeof( VkClearRect ), "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ClearRect>::value, "struct wrapper is not a standard layout!" );
+
+ struct CoarseSampleLocationNV
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ CoarseSampleLocationNV( uint32_t pixelX_ = {}, uint32_t pixelY_ = {}, uint32_t sample_ = {} ) VULKAN_HPP_NOEXCEPT
+ : pixelX( pixelX_ )
+ , pixelY( pixelY_ )
+ , sample( sample_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR CoarseSampleLocationNV( CoarseSampleLocationNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ CoarseSampleLocationNV( VkCoarseSampleLocationNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ : CoarseSampleLocationNV( *reinterpret_cast<CoarseSampleLocationNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 CoarseSampleLocationNV &
+ operator=( CoarseSampleLocationNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ CoarseSampleLocationNV & operator=( VkCoarseSampleLocationNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CoarseSampleLocationNV const *>( &rhs );
+ return *this;
+ }
+
+ CoarseSampleLocationNV & setPixelX( uint32_t pixelX_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pixelX = pixelX_;
+ return *this;
+ }
+
+ CoarseSampleLocationNV & setPixelY( uint32_t pixelY_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pixelY = pixelY_;
+ return *this;
+ }
+
+ CoarseSampleLocationNV & setSample( uint32_t sample_ ) VULKAN_HPP_NOEXCEPT
+ {
+ sample = sample_;
+ return *this;
+ }
+
+ operator VkCoarseSampleLocationNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkCoarseSampleLocationNV *>( this );
+ }
+
+ operator VkCoarseSampleLocationNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkCoarseSampleLocationNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( CoarseSampleLocationNV const & ) const = default;
+#else
+ bool operator==( CoarseSampleLocationNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( pixelX == rhs.pixelX ) && ( pixelY == rhs.pixelY ) && ( sample == rhs.sample );
+ }
+
+ bool operator!=( CoarseSampleLocationNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ uint32_t pixelX = {};
+ uint32_t pixelY = {};
+ uint32_t sample = {};
+ };
+ static_assert( sizeof( CoarseSampleLocationNV ) == sizeof( VkCoarseSampleLocationNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<CoarseSampleLocationNV>::value, "struct wrapper is not a standard layout!" );
+
+ struct CoarseSampleOrderCustomNV
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR CoarseSampleOrderCustomNV(
+ VULKAN_HPP_NAMESPACE::ShadingRatePaletteEntryNV shadingRate_ =
+ VULKAN_HPP_NAMESPACE::ShadingRatePaletteEntryNV::eNoInvocations,
+ uint32_t sampleCount_ = {},
+ uint32_t sampleLocationCount_ = {},
+ const VULKAN_HPP_NAMESPACE::CoarseSampleLocationNV * pSampleLocations_ = {} ) VULKAN_HPP_NOEXCEPT
+ : shadingRate( shadingRate_ )
+ , sampleCount( sampleCount_ )
+ , sampleLocationCount( sampleLocationCount_ )
+ , pSampleLocations( pSampleLocations_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ CoarseSampleOrderCustomNV( CoarseSampleOrderCustomNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ CoarseSampleOrderCustomNV( VkCoarseSampleOrderCustomNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ : CoarseSampleOrderCustomNV( *reinterpret_cast<CoarseSampleOrderCustomNV const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ CoarseSampleOrderCustomNV(
+ VULKAN_HPP_NAMESPACE::ShadingRatePaletteEntryNV shadingRate_,
+ uint32_t sampleCount_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::CoarseSampleLocationNV> const &
+ sampleLocations_ )
+ : shadingRate( shadingRate_ )
+ , sampleCount( sampleCount_ )
+ , sampleLocationCount( static_cast<uint32_t>( sampleLocations_.size() ) )
+ , pSampleLocations( sampleLocations_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 CoarseSampleOrderCustomNV &
+ operator=( CoarseSampleOrderCustomNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ CoarseSampleOrderCustomNV & operator=( VkCoarseSampleOrderCustomNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CoarseSampleOrderCustomNV const *>( &rhs );
+ return *this;
+ }
+
+ CoarseSampleOrderCustomNV &
+ setShadingRate( VULKAN_HPP_NAMESPACE::ShadingRatePaletteEntryNV shadingRate_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shadingRate = shadingRate_;
+ return *this;
+ }
+
+ CoarseSampleOrderCustomNV & setSampleCount( uint32_t sampleCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ sampleCount = sampleCount_;
+ return *this;
+ }
+
+ CoarseSampleOrderCustomNV & setSampleLocationCount( uint32_t sampleLocationCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ sampleLocationCount = sampleLocationCount_;
+ return *this;
+ }
+
+ CoarseSampleOrderCustomNV &
+ setPSampleLocations( const VULKAN_HPP_NAMESPACE::CoarseSampleLocationNV * pSampleLocations_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pSampleLocations = pSampleLocations_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ CoarseSampleOrderCustomNV & setSampleLocations(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::CoarseSampleLocationNV> const &
+ sampleLocations_ ) VULKAN_HPP_NOEXCEPT
+ {
+ sampleLocationCount = static_cast<uint32_t>( sampleLocations_.size() );
+ pSampleLocations = sampleLocations_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkCoarseSampleOrderCustomNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkCoarseSampleOrderCustomNV *>( this );
+ }
+
+ operator VkCoarseSampleOrderCustomNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkCoarseSampleOrderCustomNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( CoarseSampleOrderCustomNV const & ) const = default;
+#else
+ bool operator==( CoarseSampleOrderCustomNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( shadingRate == rhs.shadingRate ) && ( sampleCount == rhs.sampleCount ) &&
+ ( sampleLocationCount == rhs.sampleLocationCount ) && ( pSampleLocations == rhs.pSampleLocations );
+ }
+
+ bool operator!=( CoarseSampleOrderCustomNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::ShadingRatePaletteEntryNV shadingRate =
+ VULKAN_HPP_NAMESPACE::ShadingRatePaletteEntryNV::eNoInvocations;
+ uint32_t sampleCount = {};
+ uint32_t sampleLocationCount = {};
+ const VULKAN_HPP_NAMESPACE::CoarseSampleLocationNV * pSampleLocations = {};
+ };
+ static_assert( sizeof( CoarseSampleOrderCustomNV ) == sizeof( VkCoarseSampleOrderCustomNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<CoarseSampleOrderCustomNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ struct CommandBufferAllocateInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCommandBufferAllocateInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR CommandBufferAllocateInfo(
+ VULKAN_HPP_NAMESPACE::CommandPool commandPool_ = {},
+ VULKAN_HPP_NAMESPACE::CommandBufferLevel level_ = VULKAN_HPP_NAMESPACE::CommandBufferLevel::ePrimary,
+ uint32_t commandBufferCount_ = {} ) VULKAN_HPP_NOEXCEPT
+ : commandPool( commandPool_ )
+ , level( level_ )
+ , commandBufferCount( commandBufferCount_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ CommandBufferAllocateInfo( CommandBufferAllocateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ CommandBufferAllocateInfo( VkCommandBufferAllocateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : CommandBufferAllocateInfo( *reinterpret_cast<CommandBufferAllocateInfo const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 CommandBufferAllocateInfo &
+ operator=( CommandBufferAllocateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ CommandBufferAllocateInfo & operator=( VkCommandBufferAllocateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CommandBufferAllocateInfo const *>( &rhs );
+ return *this;
+ }
+
+ CommandBufferAllocateInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ CommandBufferAllocateInfo & setCommandPool( VULKAN_HPP_NAMESPACE::CommandPool commandPool_ ) VULKAN_HPP_NOEXCEPT
+ {
+ commandPool = commandPool_;
+ return *this;
+ }
+
+ CommandBufferAllocateInfo & setLevel( VULKAN_HPP_NAMESPACE::CommandBufferLevel level_ ) VULKAN_HPP_NOEXCEPT
+ {
+ level = level_;
+ return *this;
+ }
+
+ CommandBufferAllocateInfo & setCommandBufferCount( uint32_t commandBufferCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ commandBufferCount = commandBufferCount_;
+ return *this;
+ }
+
+ operator VkCommandBufferAllocateInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkCommandBufferAllocateInfo *>( this );
+ }
+
+ operator VkCommandBufferAllocateInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkCommandBufferAllocateInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( CommandBufferAllocateInfo const & ) const = default;
+#else
+ bool operator==( CommandBufferAllocateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( commandPool == rhs.commandPool ) &&
+ ( level == rhs.level ) && ( commandBufferCount == rhs.commandBufferCount );
+ }
+
+ bool operator!=( CommandBufferAllocateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCommandBufferAllocateInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::CommandPool commandPool = {};
+ VULKAN_HPP_NAMESPACE::CommandBufferLevel level = VULKAN_HPP_NAMESPACE::CommandBufferLevel::ePrimary;
+ uint32_t commandBufferCount = {};
+ };
+ static_assert( sizeof( CommandBufferAllocateInfo ) == sizeof( VkCommandBufferAllocateInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<CommandBufferAllocateInfo>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eCommandBufferAllocateInfo>
+ {
+ using Type = CommandBufferAllocateInfo;
+ };
+
+ struct CommandBufferInheritanceInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCommandBufferInheritanceInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR CommandBufferInheritanceInfo(
+ VULKAN_HPP_NAMESPACE::RenderPass renderPass_ = {},
+ uint32_t subpass_ = {},
+ VULKAN_HPP_NAMESPACE::Framebuffer framebuffer_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 occlusionQueryEnable_ = {},
+ VULKAN_HPP_NAMESPACE::QueryControlFlags queryFlags_ = {},
+ VULKAN_HPP_NAMESPACE::QueryPipelineStatisticFlags pipelineStatistics_ = {} ) VULKAN_HPP_NOEXCEPT
+ : renderPass( renderPass_ )
+ , subpass( subpass_ )
+ , framebuffer( framebuffer_ )
+ , occlusionQueryEnable( occlusionQueryEnable_ )
+ , queryFlags( queryFlags_ )
+ , pipelineStatistics( pipelineStatistics_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ CommandBufferInheritanceInfo( CommandBufferInheritanceInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ CommandBufferInheritanceInfo( VkCommandBufferInheritanceInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : CommandBufferInheritanceInfo( *reinterpret_cast<CommandBufferInheritanceInfo const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 CommandBufferInheritanceInfo &
+ operator=( CommandBufferInheritanceInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ CommandBufferInheritanceInfo & operator=( VkCommandBufferInheritanceInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CommandBufferInheritanceInfo const *>( &rhs );
+ return *this;
+ }
+
+ CommandBufferInheritanceInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ CommandBufferInheritanceInfo & setRenderPass( VULKAN_HPP_NAMESPACE::RenderPass renderPass_ ) VULKAN_HPP_NOEXCEPT
+ {
+ renderPass = renderPass_;
+ return *this;
+ }
+
+ CommandBufferInheritanceInfo & setSubpass( uint32_t subpass_ ) VULKAN_HPP_NOEXCEPT
+ {
+ subpass = subpass_;
+ return *this;
+ }
+
+ CommandBufferInheritanceInfo & setFramebuffer( VULKAN_HPP_NAMESPACE::Framebuffer framebuffer_ ) VULKAN_HPP_NOEXCEPT
+ {
+ framebuffer = framebuffer_;
+ return *this;
+ }
+
+ CommandBufferInheritanceInfo &
+ setOcclusionQueryEnable( VULKAN_HPP_NAMESPACE::Bool32 occlusionQueryEnable_ ) VULKAN_HPP_NOEXCEPT
+ {
+ occlusionQueryEnable = occlusionQueryEnable_;
+ return *this;
+ }
+
+ CommandBufferInheritanceInfo &
+ setQueryFlags( VULKAN_HPP_NAMESPACE::QueryControlFlags queryFlags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ queryFlags = queryFlags_;
+ return *this;
+ }
+
+ CommandBufferInheritanceInfo &
+ setPipelineStatistics( VULKAN_HPP_NAMESPACE::QueryPipelineStatisticFlags pipelineStatistics_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pipelineStatistics = pipelineStatistics_;
+ return *this;
+ }
+
+ operator VkCommandBufferInheritanceInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkCommandBufferInheritanceInfo *>( this );
+ }
+
+ operator VkCommandBufferInheritanceInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkCommandBufferInheritanceInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( CommandBufferInheritanceInfo const & ) const = default;
+#else
+ bool operator==( CommandBufferInheritanceInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( renderPass == rhs.renderPass ) &&
+ ( subpass == rhs.subpass ) && ( framebuffer == rhs.framebuffer ) &&
+ ( occlusionQueryEnable == rhs.occlusionQueryEnable ) && ( queryFlags == rhs.queryFlags ) &&
+ ( pipelineStatistics == rhs.pipelineStatistics );
+ }
+
+ bool operator!=( CommandBufferInheritanceInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCommandBufferInheritanceInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::RenderPass renderPass = {};
+ uint32_t subpass = {};
+ VULKAN_HPP_NAMESPACE::Framebuffer framebuffer = {};
+ VULKAN_HPP_NAMESPACE::Bool32 occlusionQueryEnable = {};
+ VULKAN_HPP_NAMESPACE::QueryControlFlags queryFlags = {};
+ VULKAN_HPP_NAMESPACE::QueryPipelineStatisticFlags pipelineStatistics = {};
+ };
+ static_assert( sizeof( CommandBufferInheritanceInfo ) == sizeof( VkCommandBufferInheritanceInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<CommandBufferInheritanceInfo>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eCommandBufferInheritanceInfo>
+ {
+ using Type = CommandBufferInheritanceInfo;
+ };
+
+ struct CommandBufferBeginInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCommandBufferBeginInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR CommandBufferBeginInfo(
+ VULKAN_HPP_NAMESPACE::CommandBufferUsageFlags flags_ = {},
+ const VULKAN_HPP_NAMESPACE::CommandBufferInheritanceInfo * pInheritanceInfo_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , pInheritanceInfo( pInheritanceInfo_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR CommandBufferBeginInfo( CommandBufferBeginInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ CommandBufferBeginInfo( VkCommandBufferBeginInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : CommandBufferBeginInfo( *reinterpret_cast<CommandBufferBeginInfo const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 CommandBufferBeginInfo &
+ operator=( CommandBufferBeginInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ CommandBufferBeginInfo & operator=( VkCommandBufferBeginInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CommandBufferBeginInfo const *>( &rhs );
+ return *this;
+ }
+
+ CommandBufferBeginInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ CommandBufferBeginInfo & setFlags( VULKAN_HPP_NAMESPACE::CommandBufferUsageFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ CommandBufferBeginInfo & setPInheritanceInfo(
+ const VULKAN_HPP_NAMESPACE::CommandBufferInheritanceInfo * pInheritanceInfo_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pInheritanceInfo = pInheritanceInfo_;
+ return *this;
+ }
+
+ operator VkCommandBufferBeginInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkCommandBufferBeginInfo *>( this );
+ }
+
+ operator VkCommandBufferBeginInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkCommandBufferBeginInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( CommandBufferBeginInfo const & ) const = default;
+#else
+ bool operator==( CommandBufferBeginInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( pInheritanceInfo == rhs.pInheritanceInfo );
+ }
+
+ bool operator!=( CommandBufferBeginInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCommandBufferBeginInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::CommandBufferUsageFlags flags = {};
+ const VULKAN_HPP_NAMESPACE::CommandBufferInheritanceInfo * pInheritanceInfo = {};
+ };
+ static_assert( sizeof( CommandBufferBeginInfo ) == sizeof( VkCommandBufferBeginInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<CommandBufferBeginInfo>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eCommandBufferBeginInfo>
+ {
+ using Type = CommandBufferBeginInfo;
+ };
+
+ struct CommandBufferInheritanceConditionalRenderingInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eCommandBufferInheritanceConditionalRenderingInfoEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR CommandBufferInheritanceConditionalRenderingInfoEXT(
+ VULKAN_HPP_NAMESPACE::Bool32 conditionalRenderingEnable_ = {} ) VULKAN_HPP_NOEXCEPT
+ : conditionalRenderingEnable( conditionalRenderingEnable_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR CommandBufferInheritanceConditionalRenderingInfoEXT(
+ CommandBufferInheritanceConditionalRenderingInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ CommandBufferInheritanceConditionalRenderingInfoEXT(
+ VkCommandBufferInheritanceConditionalRenderingInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : CommandBufferInheritanceConditionalRenderingInfoEXT(
+ *reinterpret_cast<CommandBufferInheritanceConditionalRenderingInfoEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 CommandBufferInheritanceConditionalRenderingInfoEXT &
+ operator=( CommandBufferInheritanceConditionalRenderingInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ CommandBufferInheritanceConditionalRenderingInfoEXT &
+ operator=( VkCommandBufferInheritanceConditionalRenderingInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this =
+ *reinterpret_cast<VULKAN_HPP_NAMESPACE::CommandBufferInheritanceConditionalRenderingInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ CommandBufferInheritanceConditionalRenderingInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ CommandBufferInheritanceConditionalRenderingInfoEXT &
+ setConditionalRenderingEnable( VULKAN_HPP_NAMESPACE::Bool32 conditionalRenderingEnable_ ) VULKAN_HPP_NOEXCEPT
+ {
+ conditionalRenderingEnable = conditionalRenderingEnable_;
+ return *this;
+ }
+
+ operator VkCommandBufferInheritanceConditionalRenderingInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkCommandBufferInheritanceConditionalRenderingInfoEXT *>( this );
+ }
+
+ operator VkCommandBufferInheritanceConditionalRenderingInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkCommandBufferInheritanceConditionalRenderingInfoEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( CommandBufferInheritanceConditionalRenderingInfoEXT const & ) const = default;
+#else
+ bool operator==( CommandBufferInheritanceConditionalRenderingInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( conditionalRenderingEnable == rhs.conditionalRenderingEnable );
+ }
+
+ bool operator!=( CommandBufferInheritanceConditionalRenderingInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCommandBufferInheritanceConditionalRenderingInfoEXT;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 conditionalRenderingEnable = {};
+ };
+ static_assert( sizeof( CommandBufferInheritanceConditionalRenderingInfoEXT ) ==
+ sizeof( VkCommandBufferInheritanceConditionalRenderingInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<CommandBufferInheritanceConditionalRenderingInfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eCommandBufferInheritanceConditionalRenderingInfoEXT>
+ {
+ using Type = CommandBufferInheritanceConditionalRenderingInfoEXT;
+ };
+
+ struct CommandBufferInheritanceRenderPassTransformInfoQCOM
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eCommandBufferInheritanceRenderPassTransformInfoQCOM;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR CommandBufferInheritanceRenderPassTransformInfoQCOM(
+ VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR transform_ =
+ VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR::eIdentity,
+ VULKAN_HPP_NAMESPACE::Rect2D renderArea_ = {} ) VULKAN_HPP_NOEXCEPT
+ : transform( transform_ )
+ , renderArea( renderArea_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR CommandBufferInheritanceRenderPassTransformInfoQCOM(
+ CommandBufferInheritanceRenderPassTransformInfoQCOM const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ CommandBufferInheritanceRenderPassTransformInfoQCOM(
+ VkCommandBufferInheritanceRenderPassTransformInfoQCOM const & rhs ) VULKAN_HPP_NOEXCEPT
+ : CommandBufferInheritanceRenderPassTransformInfoQCOM(
+ *reinterpret_cast<CommandBufferInheritanceRenderPassTransformInfoQCOM const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 CommandBufferInheritanceRenderPassTransformInfoQCOM &
+ operator=( CommandBufferInheritanceRenderPassTransformInfoQCOM const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ CommandBufferInheritanceRenderPassTransformInfoQCOM &
+ operator=( VkCommandBufferInheritanceRenderPassTransformInfoQCOM const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this =
+ *reinterpret_cast<VULKAN_HPP_NAMESPACE::CommandBufferInheritanceRenderPassTransformInfoQCOM const *>( &rhs );
+ return *this;
+ }
+
+ CommandBufferInheritanceRenderPassTransformInfoQCOM & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ CommandBufferInheritanceRenderPassTransformInfoQCOM &
+ setTransform( VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR transform_ ) VULKAN_HPP_NOEXCEPT
+ {
+ transform = transform_;
+ return *this;
+ }
+
+ CommandBufferInheritanceRenderPassTransformInfoQCOM &
+ setRenderArea( VULKAN_HPP_NAMESPACE::Rect2D const & renderArea_ ) VULKAN_HPP_NOEXCEPT
+ {
+ renderArea = renderArea_;
+ return *this;
+ }
+
+ operator VkCommandBufferInheritanceRenderPassTransformInfoQCOM const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkCommandBufferInheritanceRenderPassTransformInfoQCOM *>( this );
+ }
+
+ operator VkCommandBufferInheritanceRenderPassTransformInfoQCOM &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkCommandBufferInheritanceRenderPassTransformInfoQCOM *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( CommandBufferInheritanceRenderPassTransformInfoQCOM const & ) const = default;
+#else
+ bool operator==( CommandBufferInheritanceRenderPassTransformInfoQCOM const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( transform == rhs.transform ) &&
+ ( renderArea == rhs.renderArea );
+ }
+
+ bool operator!=( CommandBufferInheritanceRenderPassTransformInfoQCOM const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCommandBufferInheritanceRenderPassTransformInfoQCOM;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR transform =
+ VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR::eIdentity;
+ VULKAN_HPP_NAMESPACE::Rect2D renderArea = {};
+ };
+ static_assert( sizeof( CommandBufferInheritanceRenderPassTransformInfoQCOM ) ==
+ sizeof( VkCommandBufferInheritanceRenderPassTransformInfoQCOM ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<CommandBufferInheritanceRenderPassTransformInfoQCOM>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eCommandBufferInheritanceRenderPassTransformInfoQCOM>
+ {
+ using Type = CommandBufferInheritanceRenderPassTransformInfoQCOM;
+ };
+
+ struct Viewport
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR Viewport( float x_ = {},
+ float y_ = {},
+ float width_ = {},
+ float height_ = {},
+ float minDepth_ = {},
+ float maxDepth_ = {} ) VULKAN_HPP_NOEXCEPT
+ : x( x_ )
+ , y( y_ )
+ , width( width_ )
+ , height( height_ )
+ , minDepth( minDepth_ )
+ , maxDepth( maxDepth_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR Viewport( Viewport const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ Viewport( VkViewport const & rhs ) VULKAN_HPP_NOEXCEPT : Viewport( *reinterpret_cast<Viewport const *>( &rhs ) ) {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 Viewport & operator=( Viewport const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ Viewport & operator=( VkViewport const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::Viewport const *>( &rhs );
+ return *this;
+ }
+
+ Viewport & setX( float x_ ) VULKAN_HPP_NOEXCEPT
+ {
+ x = x_;
+ return *this;
+ }
+
+ Viewport & setY( float y_ ) VULKAN_HPP_NOEXCEPT
+ {
+ y = y_;
+ return *this;
+ }
+
+ Viewport & setWidth( float width_ ) VULKAN_HPP_NOEXCEPT
+ {
+ width = width_;
+ return *this;
+ }
+
+ Viewport & setHeight( float height_ ) VULKAN_HPP_NOEXCEPT
+ {
+ height = height_;
+ return *this;
+ }
+
+ Viewport & setMinDepth( float minDepth_ ) VULKAN_HPP_NOEXCEPT
+ {
+ minDepth = minDepth_;
+ return *this;
+ }
+
+ Viewport & setMaxDepth( float maxDepth_ ) VULKAN_HPP_NOEXCEPT
+ {
+ maxDepth = maxDepth_;
+ return *this;
+ }
+
+ operator VkViewport const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkViewport *>( this );
+ }
+
+ operator VkViewport &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkViewport *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( Viewport const & ) const = default;
+#else
+ bool operator==( Viewport const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( x == rhs.x ) && ( y == rhs.y ) && ( width == rhs.width ) && ( height == rhs.height ) &&
+ ( minDepth == rhs.minDepth ) && ( maxDepth == rhs.maxDepth );
+ }
+
+ bool operator!=( Viewport const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ float x = {};
+ float y = {};
+ float width = {};
+ float height = {};
+ float minDepth = {};
+ float maxDepth = {};
+ };
+ static_assert( sizeof( Viewport ) == sizeof( VkViewport ), "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<Viewport>::value, "struct wrapper is not a standard layout!" );
+
+ struct CommandBufferInheritanceViewportScissorInfoNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eCommandBufferInheritanceViewportScissorInfoNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR CommandBufferInheritanceViewportScissorInfoNV(
+ VULKAN_HPP_NAMESPACE::Bool32 viewportScissor2D_ = {},
+ uint32_t viewportDepthCount_ = {},
+ const VULKAN_HPP_NAMESPACE::Viewport * pViewportDepths_ = {} ) VULKAN_HPP_NOEXCEPT
+ : viewportScissor2D( viewportScissor2D_ )
+ , viewportDepthCount( viewportDepthCount_ )
+ , pViewportDepths( pViewportDepths_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR CommandBufferInheritanceViewportScissorInfoNV(
+ CommandBufferInheritanceViewportScissorInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ CommandBufferInheritanceViewportScissorInfoNV( VkCommandBufferInheritanceViewportScissorInfoNV const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : CommandBufferInheritanceViewportScissorInfoNV(
+ *reinterpret_cast<CommandBufferInheritanceViewportScissorInfoNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 CommandBufferInheritanceViewportScissorInfoNV &
+ operator=( CommandBufferInheritanceViewportScissorInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ CommandBufferInheritanceViewportScissorInfoNV &
+ operator=( VkCommandBufferInheritanceViewportScissorInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CommandBufferInheritanceViewportScissorInfoNV const *>( &rhs );
+ return *this;
+ }
+
+ CommandBufferInheritanceViewportScissorInfoNV & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ CommandBufferInheritanceViewportScissorInfoNV &
+ setViewportScissor2D( VULKAN_HPP_NAMESPACE::Bool32 viewportScissor2D_ ) VULKAN_HPP_NOEXCEPT
+ {
+ viewportScissor2D = viewportScissor2D_;
+ return *this;
+ }
+
+ CommandBufferInheritanceViewportScissorInfoNV &
+ setViewportDepthCount( uint32_t viewportDepthCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ viewportDepthCount = viewportDepthCount_;
+ return *this;
+ }
+
+ CommandBufferInheritanceViewportScissorInfoNV &
+ setPViewportDepths( const VULKAN_HPP_NAMESPACE::Viewport * pViewportDepths_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pViewportDepths = pViewportDepths_;
+ return *this;
+ }
+
+ operator VkCommandBufferInheritanceViewportScissorInfoNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkCommandBufferInheritanceViewportScissorInfoNV *>( this );
+ }
+
+ operator VkCommandBufferInheritanceViewportScissorInfoNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkCommandBufferInheritanceViewportScissorInfoNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( CommandBufferInheritanceViewportScissorInfoNV const & ) const = default;
+#else
+ bool operator==( CommandBufferInheritanceViewportScissorInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( viewportScissor2D == rhs.viewportScissor2D ) &&
+ ( viewportDepthCount == rhs.viewportDepthCount ) && ( pViewportDepths == rhs.pViewportDepths );
+ }
+
+ bool operator!=( CommandBufferInheritanceViewportScissorInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCommandBufferInheritanceViewportScissorInfoNV;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 viewportScissor2D = {};
+ uint32_t viewportDepthCount = {};
+ const VULKAN_HPP_NAMESPACE::Viewport * pViewportDepths = {};
+ };
+ static_assert( sizeof( CommandBufferInheritanceViewportScissorInfoNV ) ==
+ sizeof( VkCommandBufferInheritanceViewportScissorInfoNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<CommandBufferInheritanceViewportScissorInfoNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eCommandBufferInheritanceViewportScissorInfoNV>
+ {
+ using Type = CommandBufferInheritanceViewportScissorInfoNV;
+ };
+
+ struct CommandBufferSubmitInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCommandBufferSubmitInfoKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR CommandBufferSubmitInfoKHR( VULKAN_HPP_NAMESPACE::CommandBuffer commandBuffer_ = {},
+ uint32_t deviceMask_ = {} ) VULKAN_HPP_NOEXCEPT
+ : commandBuffer( commandBuffer_ )
+ , deviceMask( deviceMask_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ CommandBufferSubmitInfoKHR( CommandBufferSubmitInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ CommandBufferSubmitInfoKHR( VkCommandBufferSubmitInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : CommandBufferSubmitInfoKHR( *reinterpret_cast<CommandBufferSubmitInfoKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 CommandBufferSubmitInfoKHR &
+ operator=( CommandBufferSubmitInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ CommandBufferSubmitInfoKHR & operator=( VkCommandBufferSubmitInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CommandBufferSubmitInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ CommandBufferSubmitInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ CommandBufferSubmitInfoKHR &
+ setCommandBuffer( VULKAN_HPP_NAMESPACE::CommandBuffer commandBuffer_ ) VULKAN_HPP_NOEXCEPT
+ {
+ commandBuffer = commandBuffer_;
+ return *this;
+ }
+
+ CommandBufferSubmitInfoKHR & setDeviceMask( uint32_t deviceMask_ ) VULKAN_HPP_NOEXCEPT
+ {
+ deviceMask = deviceMask_;
+ return *this;
+ }
+
+ operator VkCommandBufferSubmitInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkCommandBufferSubmitInfoKHR *>( this );
+ }
+
+ operator VkCommandBufferSubmitInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkCommandBufferSubmitInfoKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( CommandBufferSubmitInfoKHR const & ) const = default;
+#else
+ bool operator==( CommandBufferSubmitInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( commandBuffer == rhs.commandBuffer ) &&
+ ( deviceMask == rhs.deviceMask );
+ }
+
+ bool operator!=( CommandBufferSubmitInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCommandBufferSubmitInfoKHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::CommandBuffer commandBuffer = {};
+ uint32_t deviceMask = {};
+ };
+ static_assert( sizeof( CommandBufferSubmitInfoKHR ) == sizeof( VkCommandBufferSubmitInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<CommandBufferSubmitInfoKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eCommandBufferSubmitInfoKHR>
+ {
+ using Type = CommandBufferSubmitInfoKHR;
+ };
+
+ struct CommandPoolCreateInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCommandPoolCreateInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR CommandPoolCreateInfo( VULKAN_HPP_NAMESPACE::CommandPoolCreateFlags flags_ = {},
+ uint32_t queueFamilyIndex_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , queueFamilyIndex( queueFamilyIndex_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR CommandPoolCreateInfo( CommandPoolCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ CommandPoolCreateInfo( VkCommandPoolCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : CommandPoolCreateInfo( *reinterpret_cast<CommandPoolCreateInfo const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 CommandPoolCreateInfo &
+ operator=( CommandPoolCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ CommandPoolCreateInfo & operator=( VkCommandPoolCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CommandPoolCreateInfo const *>( &rhs );
+ return *this;
+ }
+
+ CommandPoolCreateInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ CommandPoolCreateInfo & setFlags( VULKAN_HPP_NAMESPACE::CommandPoolCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ CommandPoolCreateInfo & setQueueFamilyIndex( uint32_t queueFamilyIndex_ ) VULKAN_HPP_NOEXCEPT
+ {
+ queueFamilyIndex = queueFamilyIndex_;
+ return *this;
+ }
+
+ operator VkCommandPoolCreateInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkCommandPoolCreateInfo *>( this );
+ }
+
+ operator VkCommandPoolCreateInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkCommandPoolCreateInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( CommandPoolCreateInfo const & ) const = default;
+#else
+ bool operator==( CommandPoolCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( queueFamilyIndex == rhs.queueFamilyIndex );
+ }
+
+ bool operator!=( CommandPoolCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCommandPoolCreateInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::CommandPoolCreateFlags flags = {};
+ uint32_t queueFamilyIndex = {};
+ };
+ static_assert( sizeof( CommandPoolCreateInfo ) == sizeof( VkCommandPoolCreateInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<CommandPoolCreateInfo>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eCommandPoolCreateInfo>
+ {
+ using Type = CommandPoolCreateInfo;
+ };
+
+ struct SpecializationMapEntry
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ SpecializationMapEntry( uint32_t constantID_ = {}, uint32_t offset_ = {}, size_t size_ = {} ) VULKAN_HPP_NOEXCEPT
+ : constantID( constantID_ )
+ , offset( offset_ )
+ , size( size_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR SpecializationMapEntry( SpecializationMapEntry const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SpecializationMapEntry( VkSpecializationMapEntry const & rhs ) VULKAN_HPP_NOEXCEPT
+ : SpecializationMapEntry( *reinterpret_cast<SpecializationMapEntry const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 SpecializationMapEntry &
+ operator=( SpecializationMapEntry const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SpecializationMapEntry & operator=( VkSpecializationMapEntry const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SpecializationMapEntry const *>( &rhs );
+ return *this;
+ }
+
+ SpecializationMapEntry & setConstantID( uint32_t constantID_ ) VULKAN_HPP_NOEXCEPT
+ {
+ constantID = constantID_;
+ return *this;
+ }
+
+ SpecializationMapEntry & setOffset( uint32_t offset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ offset = offset_;
+ return *this;
+ }
+
+ SpecializationMapEntry & setSize( size_t size_ ) VULKAN_HPP_NOEXCEPT
+ {
+ size = size_;
+ return *this;
+ }
+
+ operator VkSpecializationMapEntry const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkSpecializationMapEntry *>( this );
+ }
+
+ operator VkSpecializationMapEntry &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkSpecializationMapEntry *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( SpecializationMapEntry const & ) const = default;
+#else
+ bool operator==( SpecializationMapEntry const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( constantID == rhs.constantID ) && ( offset == rhs.offset ) && ( size == rhs.size );
+ }
+
+ bool operator!=( SpecializationMapEntry const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ uint32_t constantID = {};
+ uint32_t offset = {};
+ size_t size = {};
+ };
+ static_assert( sizeof( SpecializationMapEntry ) == sizeof( VkSpecializationMapEntry ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<SpecializationMapEntry>::value, "struct wrapper is not a standard layout!" );
+
+ struct SpecializationInfo
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR SpecializationInfo( uint32_t mapEntryCount_ = {},
+ const VULKAN_HPP_NAMESPACE::SpecializationMapEntry * pMapEntries_ = {},
+ size_t dataSize_ = {},
+ const void * pData_ = {} ) VULKAN_HPP_NOEXCEPT
+ : mapEntryCount( mapEntryCount_ )
+ , pMapEntries( pMapEntries_ )
+ , dataSize( dataSize_ )
+ , pData( pData_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR SpecializationInfo( SpecializationInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SpecializationInfo( VkSpecializationInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : SpecializationInfo( *reinterpret_cast<SpecializationInfo const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ template <typename T>
+ SpecializationInfo( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<
+ const VULKAN_HPP_NAMESPACE::SpecializationMapEntry> const & mapEntries_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const T> const & data_ = {} )
+ : mapEntryCount( static_cast<uint32_t>( mapEntries_.size() ) )
+ , pMapEntries( mapEntries_.data() )
+ , dataSize( data_.size() * sizeof( T ) )
+ , pData( data_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 SpecializationInfo &
+ operator=( SpecializationInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SpecializationInfo & operator=( VkSpecializationInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SpecializationInfo const *>( &rhs );
+ return *this;
+ }
+
+ SpecializationInfo & setMapEntryCount( uint32_t mapEntryCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ mapEntryCount = mapEntryCount_;
+ return *this;
+ }
+
+ SpecializationInfo &
+ setPMapEntries( const VULKAN_HPP_NAMESPACE::SpecializationMapEntry * pMapEntries_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pMapEntries = pMapEntries_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ SpecializationInfo & setMapEntries(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SpecializationMapEntry> const &
+ mapEntries_ ) VULKAN_HPP_NOEXCEPT
+ {
+ mapEntryCount = static_cast<uint32_t>( mapEntries_.size() );
+ pMapEntries = mapEntries_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ SpecializationInfo & setDataSize( size_t dataSize_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dataSize = dataSize_;
+ return *this;
+ }
+
+ SpecializationInfo & setPData( const void * pData_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pData = pData_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ template <typename T>
+ SpecializationInfo &
+ setData( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const T> const & data_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dataSize = data_.size() * sizeof( T );
+ pData = data_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkSpecializationInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkSpecializationInfo *>( this );
+ }
+
+ operator VkSpecializationInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkSpecializationInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( SpecializationInfo const & ) const = default;
+#else
+ bool operator==( SpecializationInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( mapEntryCount == rhs.mapEntryCount ) && ( pMapEntries == rhs.pMapEntries ) &&
+ ( dataSize == rhs.dataSize ) && ( pData == rhs.pData );
+ }
+
+ bool operator!=( SpecializationInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ uint32_t mapEntryCount = {};
+ const VULKAN_HPP_NAMESPACE::SpecializationMapEntry * pMapEntries = {};
+ size_t dataSize = {};
+ const void * pData = {};
+ };
+ static_assert( sizeof( SpecializationInfo ) == sizeof( VkSpecializationInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<SpecializationInfo>::value, "struct wrapper is not a standard layout!" );
+
+ struct PipelineShaderStageCreateInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineShaderStageCreateInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PipelineShaderStageCreateInfo(
+ VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateFlags flags_ = {},
+ VULKAN_HPP_NAMESPACE::ShaderStageFlagBits stage_ = VULKAN_HPP_NAMESPACE::ShaderStageFlagBits::eVertex,
+ VULKAN_HPP_NAMESPACE::ShaderModule module_ = {},
+ const char * pName_ = {},
+ const VULKAN_HPP_NAMESPACE::SpecializationInfo * pSpecializationInfo_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , stage( stage_ )
+ , module( module_ )
+ , pName( pName_ )
+ , pSpecializationInfo( pSpecializationInfo_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ PipelineShaderStageCreateInfo( PipelineShaderStageCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineShaderStageCreateInfo( VkPipelineShaderStageCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PipelineShaderStageCreateInfo( *reinterpret_cast<PipelineShaderStageCreateInfo const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PipelineShaderStageCreateInfo &
+ operator=( PipelineShaderStageCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineShaderStageCreateInfo & operator=( VkPipelineShaderStageCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo const *>( &rhs );
+ return *this;
+ }
+
+ PipelineShaderStageCreateInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PipelineShaderStageCreateInfo &
+ setFlags( VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ PipelineShaderStageCreateInfo & setStage( VULKAN_HPP_NAMESPACE::ShaderStageFlagBits stage_ ) VULKAN_HPP_NOEXCEPT
+ {
+ stage = stage_;
+ return *this;
+ }
+
+ PipelineShaderStageCreateInfo & setModule( VULKAN_HPP_NAMESPACE::ShaderModule module_ ) VULKAN_HPP_NOEXCEPT
+ {
+ module = module_;
+ return *this;
+ }
+
+ PipelineShaderStageCreateInfo & setPName( const char * pName_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pName = pName_;
+ return *this;
+ }
+
+ PipelineShaderStageCreateInfo & setPSpecializationInfo(
+ const VULKAN_HPP_NAMESPACE::SpecializationInfo * pSpecializationInfo_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pSpecializationInfo = pSpecializationInfo_;
+ return *this;
+ }
+
+ operator VkPipelineShaderStageCreateInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPipelineShaderStageCreateInfo *>( this );
+ }
+
+ operator VkPipelineShaderStageCreateInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPipelineShaderStageCreateInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PipelineShaderStageCreateInfo const & ) const = default;
+#else
+ bool operator==( PipelineShaderStageCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) && ( stage == rhs.stage ) &&
+ ( module == rhs.module ) && ( pName == rhs.pName ) && ( pSpecializationInfo == rhs.pSpecializationInfo );
+ }
+
+ bool operator!=( PipelineShaderStageCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineShaderStageCreateInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateFlags flags = {};
+ VULKAN_HPP_NAMESPACE::ShaderStageFlagBits stage = VULKAN_HPP_NAMESPACE::ShaderStageFlagBits::eVertex;
+ VULKAN_HPP_NAMESPACE::ShaderModule module = {};
+ const char * pName = {};
+ const VULKAN_HPP_NAMESPACE::SpecializationInfo * pSpecializationInfo = {};
+ };
+ static_assert( sizeof( PipelineShaderStageCreateInfo ) == sizeof( VkPipelineShaderStageCreateInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PipelineShaderStageCreateInfo>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePipelineShaderStageCreateInfo>
+ {
+ using Type = PipelineShaderStageCreateInfo;
+ };
+
+ struct ComputePipelineCreateInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eComputePipelineCreateInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR ComputePipelineCreateInfo( VULKAN_HPP_NAMESPACE::PipelineCreateFlags flags_ = {},
+ VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo stage_ = {},
+ VULKAN_HPP_NAMESPACE::PipelineLayout layout_ = {},
+ VULKAN_HPP_NAMESPACE::Pipeline basePipelineHandle_ = {},
+ int32_t basePipelineIndex_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , stage( stage_ )
+ , layout( layout_ )
+ , basePipelineHandle( basePipelineHandle_ )
+ , basePipelineIndex( basePipelineIndex_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ ComputePipelineCreateInfo( ComputePipelineCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ComputePipelineCreateInfo( VkComputePipelineCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ComputePipelineCreateInfo( *reinterpret_cast<ComputePipelineCreateInfo const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ComputePipelineCreateInfo &
+ operator=( ComputePipelineCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ComputePipelineCreateInfo & operator=( VkComputePipelineCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ComputePipelineCreateInfo const *>( &rhs );
+ return *this;
+ }
+
+ ComputePipelineCreateInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ ComputePipelineCreateInfo & setFlags( VULKAN_HPP_NAMESPACE::PipelineCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ ComputePipelineCreateInfo &
+ setStage( VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo const & stage_ ) VULKAN_HPP_NOEXCEPT
+ {
+ stage = stage_;
+ return *this;
+ }
+
+ ComputePipelineCreateInfo & setLayout( VULKAN_HPP_NAMESPACE::PipelineLayout layout_ ) VULKAN_HPP_NOEXCEPT
+ {
+ layout = layout_;
+ return *this;
+ }
+
+ ComputePipelineCreateInfo &
+ setBasePipelineHandle( VULKAN_HPP_NAMESPACE::Pipeline basePipelineHandle_ ) VULKAN_HPP_NOEXCEPT
+ {
+ basePipelineHandle = basePipelineHandle_;
+ return *this;
+ }
+
+ ComputePipelineCreateInfo & setBasePipelineIndex( int32_t basePipelineIndex_ ) VULKAN_HPP_NOEXCEPT
+ {
+ basePipelineIndex = basePipelineIndex_;
+ return *this;
+ }
+
+ operator VkComputePipelineCreateInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkComputePipelineCreateInfo *>( this );
+ }
+
+ operator VkComputePipelineCreateInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkComputePipelineCreateInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ComputePipelineCreateInfo const & ) const = default;
+#else
+ bool operator==( ComputePipelineCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) && ( stage == rhs.stage ) &&
+ ( layout == rhs.layout ) && ( basePipelineHandle == rhs.basePipelineHandle ) &&
+ ( basePipelineIndex == rhs.basePipelineIndex );
+ }
+
+ bool operator!=( ComputePipelineCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eComputePipelineCreateInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::PipelineCreateFlags flags = {};
+ VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo stage = {};
+ VULKAN_HPP_NAMESPACE::PipelineLayout layout = {};
+ VULKAN_HPP_NAMESPACE::Pipeline basePipelineHandle = {};
+ int32_t basePipelineIndex = {};
+ };
+ static_assert( sizeof( ComputePipelineCreateInfo ) == sizeof( VkComputePipelineCreateInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ComputePipelineCreateInfo>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eComputePipelineCreateInfo>
+ {
+ using Type = ComputePipelineCreateInfo;
+ };
+
+ struct ConditionalRenderingBeginInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eConditionalRenderingBeginInfoEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR ConditionalRenderingBeginInfoEXT(
+ VULKAN_HPP_NAMESPACE::Buffer buffer_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize offset_ = {},
+ VULKAN_HPP_NAMESPACE::ConditionalRenderingFlagsEXT flags_ = {} ) VULKAN_HPP_NOEXCEPT
+ : buffer( buffer_ )
+ , offset( offset_ )
+ , flags( flags_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ ConditionalRenderingBeginInfoEXT( ConditionalRenderingBeginInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ConditionalRenderingBeginInfoEXT( VkConditionalRenderingBeginInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ConditionalRenderingBeginInfoEXT( *reinterpret_cast<ConditionalRenderingBeginInfoEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ConditionalRenderingBeginInfoEXT &
+ operator=( ConditionalRenderingBeginInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ConditionalRenderingBeginInfoEXT & operator=( VkConditionalRenderingBeginInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ConditionalRenderingBeginInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ ConditionalRenderingBeginInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ ConditionalRenderingBeginInfoEXT & setBuffer( VULKAN_HPP_NAMESPACE::Buffer buffer_ ) VULKAN_HPP_NOEXCEPT
+ {
+ buffer = buffer_;
+ return *this;
+ }
+
+ ConditionalRenderingBeginInfoEXT & setOffset( VULKAN_HPP_NAMESPACE::DeviceSize offset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ offset = offset_;
+ return *this;
+ }
+
+ ConditionalRenderingBeginInfoEXT &
+ setFlags( VULKAN_HPP_NAMESPACE::ConditionalRenderingFlagsEXT flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ operator VkConditionalRenderingBeginInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkConditionalRenderingBeginInfoEXT *>( this );
+ }
+
+ operator VkConditionalRenderingBeginInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkConditionalRenderingBeginInfoEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ConditionalRenderingBeginInfoEXT const & ) const = default;
+#else
+ bool operator==( ConditionalRenderingBeginInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( buffer == rhs.buffer ) && ( offset == rhs.offset ) &&
+ ( flags == rhs.flags );
+ }
+
+ bool operator!=( ConditionalRenderingBeginInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eConditionalRenderingBeginInfoEXT;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Buffer buffer = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize offset = {};
+ VULKAN_HPP_NAMESPACE::ConditionalRenderingFlagsEXT flags = {};
+ };
+ static_assert( sizeof( ConditionalRenderingBeginInfoEXT ) == sizeof( VkConditionalRenderingBeginInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ConditionalRenderingBeginInfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eConditionalRenderingBeginInfoEXT>
+ {
+ using Type = ConditionalRenderingBeginInfoEXT;
+ };
+
+ struct ConformanceVersion
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR ConformanceVersion( uint8_t major_ = {},
+ uint8_t minor_ = {},
+ uint8_t subminor_ = {},
+ uint8_t patch_ = {} ) VULKAN_HPP_NOEXCEPT
+ : major( major_ )
+ , minor( minor_ )
+ , subminor( subminor_ )
+ , patch( patch_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR ConformanceVersion( ConformanceVersion const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ConformanceVersion( VkConformanceVersion const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ConformanceVersion( *reinterpret_cast<ConformanceVersion const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ConformanceVersion &
+ operator=( ConformanceVersion const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ConformanceVersion & operator=( VkConformanceVersion const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ConformanceVersion const *>( &rhs );
+ return *this;
+ }
+
+ ConformanceVersion & setMajor( uint8_t major_ ) VULKAN_HPP_NOEXCEPT
+ {
+ major = major_;
+ return *this;
+ }
+
+ ConformanceVersion & setMinor( uint8_t minor_ ) VULKAN_HPP_NOEXCEPT
+ {
+ minor = minor_;
+ return *this;
+ }
+
+ ConformanceVersion & setSubminor( uint8_t subminor_ ) VULKAN_HPP_NOEXCEPT
+ {
+ subminor = subminor_;
+ return *this;
+ }
+
+ ConformanceVersion & setPatch( uint8_t patch_ ) VULKAN_HPP_NOEXCEPT
+ {
+ patch = patch_;
+ return *this;
+ }
+
+ operator VkConformanceVersion const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkConformanceVersion *>( this );
+ }
+
+ operator VkConformanceVersion &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkConformanceVersion *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ConformanceVersion const & ) const = default;
+#else
+ bool operator==( ConformanceVersion const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( major == rhs.major ) && ( minor == rhs.minor ) && ( subminor == rhs.subminor ) && ( patch == rhs.patch );
+ }
+
+ bool operator!=( ConformanceVersion const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ uint8_t major = {};
+ uint8_t minor = {};
+ uint8_t subminor = {};
+ uint8_t patch = {};
+ };
+ static_assert( sizeof( ConformanceVersion ) == sizeof( VkConformanceVersion ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ConformanceVersion>::value, "struct wrapper is not a standard layout!" );
+ using ConformanceVersionKHR = ConformanceVersion;
+
+ struct CooperativeMatrixPropertiesNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCooperativeMatrixPropertiesNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR CooperativeMatrixPropertiesNV(
+ uint32_t MSize_ = {},
+ uint32_t NSize_ = {},
+ uint32_t KSize_ = {},
+ VULKAN_HPP_NAMESPACE::ComponentTypeNV AType_ = VULKAN_HPP_NAMESPACE::ComponentTypeNV::eFloat16,
+ VULKAN_HPP_NAMESPACE::ComponentTypeNV BType_ = VULKAN_HPP_NAMESPACE::ComponentTypeNV::eFloat16,
+ VULKAN_HPP_NAMESPACE::ComponentTypeNV CType_ = VULKAN_HPP_NAMESPACE::ComponentTypeNV::eFloat16,
+ VULKAN_HPP_NAMESPACE::ComponentTypeNV DType_ = VULKAN_HPP_NAMESPACE::ComponentTypeNV::eFloat16,
+ VULKAN_HPP_NAMESPACE::ScopeNV scope_ = VULKAN_HPP_NAMESPACE::ScopeNV::eDevice ) VULKAN_HPP_NOEXCEPT
+ : MSize( MSize_ )
+ , NSize( NSize_ )
+ , KSize( KSize_ )
+ , AType( AType_ )
+ , BType( BType_ )
+ , CType( CType_ )
+ , DType( DType_ )
+ , scope( scope_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ CooperativeMatrixPropertiesNV( CooperativeMatrixPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ CooperativeMatrixPropertiesNV( VkCooperativeMatrixPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ : CooperativeMatrixPropertiesNV( *reinterpret_cast<CooperativeMatrixPropertiesNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 CooperativeMatrixPropertiesNV &
+ operator=( CooperativeMatrixPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ CooperativeMatrixPropertiesNV & operator=( VkCooperativeMatrixPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CooperativeMatrixPropertiesNV const *>( &rhs );
+ return *this;
+ }
+
+ CooperativeMatrixPropertiesNV & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ CooperativeMatrixPropertiesNV & setMSize( uint32_t MSize_ ) VULKAN_HPP_NOEXCEPT
+ {
+ MSize = MSize_;
+ return *this;
+ }
+
+ CooperativeMatrixPropertiesNV & setNSize( uint32_t NSize_ ) VULKAN_HPP_NOEXCEPT
+ {
+ NSize = NSize_;
+ return *this;
+ }
+
+ CooperativeMatrixPropertiesNV & setKSize( uint32_t KSize_ ) VULKAN_HPP_NOEXCEPT
+ {
+ KSize = KSize_;
+ return *this;
+ }
+
+ CooperativeMatrixPropertiesNV & setAType( VULKAN_HPP_NAMESPACE::ComponentTypeNV AType_ ) VULKAN_HPP_NOEXCEPT
+ {
+ AType = AType_;
+ return *this;
+ }
+
+ CooperativeMatrixPropertiesNV & setBType( VULKAN_HPP_NAMESPACE::ComponentTypeNV BType_ ) VULKAN_HPP_NOEXCEPT
+ {
+ BType = BType_;
+ return *this;
+ }
+
+ CooperativeMatrixPropertiesNV & setCType( VULKAN_HPP_NAMESPACE::ComponentTypeNV CType_ ) VULKAN_HPP_NOEXCEPT
+ {
+ CType = CType_;
+ return *this;
+ }
+
+ CooperativeMatrixPropertiesNV & setDType( VULKAN_HPP_NAMESPACE::ComponentTypeNV DType_ ) VULKAN_HPP_NOEXCEPT
+ {
+ DType = DType_;
+ return *this;
+ }
+
+ CooperativeMatrixPropertiesNV & setScope( VULKAN_HPP_NAMESPACE::ScopeNV scope_ ) VULKAN_HPP_NOEXCEPT
+ {
+ scope = scope_;
+ return *this;
+ }
+
+ operator VkCooperativeMatrixPropertiesNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkCooperativeMatrixPropertiesNV *>( this );
+ }
+
+ operator VkCooperativeMatrixPropertiesNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkCooperativeMatrixPropertiesNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( CooperativeMatrixPropertiesNV const & ) const = default;
+#else
+ bool operator==( CooperativeMatrixPropertiesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( MSize == rhs.MSize ) && ( NSize == rhs.NSize ) &&
+ ( KSize == rhs.KSize ) && ( AType == rhs.AType ) && ( BType == rhs.BType ) && ( CType == rhs.CType ) &&
+ ( DType == rhs.DType ) && ( scope == rhs.scope );
+ }
+
+ bool operator!=( CooperativeMatrixPropertiesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCooperativeMatrixPropertiesNV;
+ void * pNext = {};
+ uint32_t MSize = {};
+ uint32_t NSize = {};
+ uint32_t KSize = {};
+ VULKAN_HPP_NAMESPACE::ComponentTypeNV AType = VULKAN_HPP_NAMESPACE::ComponentTypeNV::eFloat16;
+ VULKAN_HPP_NAMESPACE::ComponentTypeNV BType = VULKAN_HPP_NAMESPACE::ComponentTypeNV::eFloat16;
+ VULKAN_HPP_NAMESPACE::ComponentTypeNV CType = VULKAN_HPP_NAMESPACE::ComponentTypeNV::eFloat16;
+ VULKAN_HPP_NAMESPACE::ComponentTypeNV DType = VULKAN_HPP_NAMESPACE::ComponentTypeNV::eFloat16;
+ VULKAN_HPP_NAMESPACE::ScopeNV scope = VULKAN_HPP_NAMESPACE::ScopeNV::eDevice;
+ };
+ static_assert( sizeof( CooperativeMatrixPropertiesNV ) == sizeof( VkCooperativeMatrixPropertiesNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<CooperativeMatrixPropertiesNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eCooperativeMatrixPropertiesNV>
+ {
+ using Type = CooperativeMatrixPropertiesNV;
+ };
+
+ struct CopyAccelerationStructureInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCopyAccelerationStructureInfoKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR CopyAccelerationStructureInfoKHR(
+ VULKAN_HPP_NAMESPACE::AccelerationStructureKHR src_ = {},
+ VULKAN_HPP_NAMESPACE::AccelerationStructureKHR dst_ = {},
+ VULKAN_HPP_NAMESPACE::CopyAccelerationStructureModeKHR mode_ =
+ VULKAN_HPP_NAMESPACE::CopyAccelerationStructureModeKHR::eClone ) VULKAN_HPP_NOEXCEPT
+ : src( src_ )
+ , dst( dst_ )
+ , mode( mode_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ CopyAccelerationStructureInfoKHR( CopyAccelerationStructureInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ CopyAccelerationStructureInfoKHR( VkCopyAccelerationStructureInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : CopyAccelerationStructureInfoKHR( *reinterpret_cast<CopyAccelerationStructureInfoKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 CopyAccelerationStructureInfoKHR &
+ operator=( CopyAccelerationStructureInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ CopyAccelerationStructureInfoKHR & operator=( VkCopyAccelerationStructureInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CopyAccelerationStructureInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ CopyAccelerationStructureInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ CopyAccelerationStructureInfoKHR & setSrc( VULKAN_HPP_NAMESPACE::AccelerationStructureKHR src_ ) VULKAN_HPP_NOEXCEPT
+ {
+ src = src_;
+ return *this;
+ }
+
+ CopyAccelerationStructureInfoKHR & setDst( VULKAN_HPP_NAMESPACE::AccelerationStructureKHR dst_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dst = dst_;
+ return *this;
+ }
+
+ CopyAccelerationStructureInfoKHR &
+ setMode( VULKAN_HPP_NAMESPACE::CopyAccelerationStructureModeKHR mode_ ) VULKAN_HPP_NOEXCEPT
+ {
+ mode = mode_;
+ return *this;
+ }
+
+ operator VkCopyAccelerationStructureInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkCopyAccelerationStructureInfoKHR *>( this );
+ }
+
+ operator VkCopyAccelerationStructureInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkCopyAccelerationStructureInfoKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( CopyAccelerationStructureInfoKHR const & ) const = default;
+#else
+ bool operator==( CopyAccelerationStructureInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( src == rhs.src ) && ( dst == rhs.dst ) &&
+ ( mode == rhs.mode );
+ }
+
+ bool operator!=( CopyAccelerationStructureInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCopyAccelerationStructureInfoKHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::AccelerationStructureKHR src = {};
+ VULKAN_HPP_NAMESPACE::AccelerationStructureKHR dst = {};
+ VULKAN_HPP_NAMESPACE::CopyAccelerationStructureModeKHR mode =
+ VULKAN_HPP_NAMESPACE::CopyAccelerationStructureModeKHR::eClone;
+ };
+ static_assert( sizeof( CopyAccelerationStructureInfoKHR ) == sizeof( VkCopyAccelerationStructureInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<CopyAccelerationStructureInfoKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eCopyAccelerationStructureInfoKHR>
+ {
+ using Type = CopyAccelerationStructureInfoKHR;
+ };
+
+ struct CopyAccelerationStructureToMemoryInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eCopyAccelerationStructureToMemoryInfoKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ CopyAccelerationStructureToMemoryInfoKHR( VULKAN_HPP_NAMESPACE::AccelerationStructureKHR src_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceOrHostAddressKHR dst_ = {},
+ VULKAN_HPP_NAMESPACE::CopyAccelerationStructureModeKHR mode_ =
+ VULKAN_HPP_NAMESPACE::CopyAccelerationStructureModeKHR::eClone )
+ VULKAN_HPP_NOEXCEPT
+ : src( src_ )
+ , dst( dst_ )
+ , mode( mode_ )
+ {}
+
+ CopyAccelerationStructureToMemoryInfoKHR( CopyAccelerationStructureToMemoryInfoKHR const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ CopyAccelerationStructureToMemoryInfoKHR( VkCopyAccelerationStructureToMemoryInfoKHR const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : CopyAccelerationStructureToMemoryInfoKHR(
+ *reinterpret_cast<CopyAccelerationStructureToMemoryInfoKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ CopyAccelerationStructureToMemoryInfoKHR &
+ operator=( CopyAccelerationStructureToMemoryInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ CopyAccelerationStructureToMemoryInfoKHR &
+ operator=( VkCopyAccelerationStructureToMemoryInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CopyAccelerationStructureToMemoryInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ CopyAccelerationStructureToMemoryInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ CopyAccelerationStructureToMemoryInfoKHR &
+ setSrc( VULKAN_HPP_NAMESPACE::AccelerationStructureKHR src_ ) VULKAN_HPP_NOEXCEPT
+ {
+ src = src_;
+ return *this;
+ }
+
+ CopyAccelerationStructureToMemoryInfoKHR &
+ setDst( VULKAN_HPP_NAMESPACE::DeviceOrHostAddressKHR const & dst_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dst = dst_;
+ return *this;
+ }
+
+ CopyAccelerationStructureToMemoryInfoKHR &
+ setMode( VULKAN_HPP_NAMESPACE::CopyAccelerationStructureModeKHR mode_ ) VULKAN_HPP_NOEXCEPT
+ {
+ mode = mode_;
+ return *this;
+ }
+
+ operator VkCopyAccelerationStructureToMemoryInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkCopyAccelerationStructureToMemoryInfoKHR *>( this );
+ }
+
+ operator VkCopyAccelerationStructureToMemoryInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkCopyAccelerationStructureToMemoryInfoKHR *>( this );
+ }
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCopyAccelerationStructureToMemoryInfoKHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::AccelerationStructureKHR src = {};
+ VULKAN_HPP_NAMESPACE::DeviceOrHostAddressKHR dst = {};
+ VULKAN_HPP_NAMESPACE::CopyAccelerationStructureModeKHR mode =
+ VULKAN_HPP_NAMESPACE::CopyAccelerationStructureModeKHR::eClone;
+ };
+ static_assert( sizeof( CopyAccelerationStructureToMemoryInfoKHR ) ==
+ sizeof( VkCopyAccelerationStructureToMemoryInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<CopyAccelerationStructureToMemoryInfoKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eCopyAccelerationStructureToMemoryInfoKHR>
+ {
+ using Type = CopyAccelerationStructureToMemoryInfoKHR;
+ };
+
+ struct CopyBufferInfo2KHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCopyBufferInfo2KHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ CopyBufferInfo2KHR( VULKAN_HPP_NAMESPACE::Buffer srcBuffer_ = {},
+ VULKAN_HPP_NAMESPACE::Buffer dstBuffer_ = {},
+ uint32_t regionCount_ = {},
+ const VULKAN_HPP_NAMESPACE::BufferCopy2KHR * pRegions_ = {} ) VULKAN_HPP_NOEXCEPT
+ : srcBuffer( srcBuffer_ )
+ , dstBuffer( dstBuffer_ )
+ , regionCount( regionCount_ )
+ , pRegions( pRegions_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR CopyBufferInfo2KHR( CopyBufferInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ CopyBufferInfo2KHR( VkCopyBufferInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : CopyBufferInfo2KHR( *reinterpret_cast<CopyBufferInfo2KHR const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ CopyBufferInfo2KHR(
+ VULKAN_HPP_NAMESPACE::Buffer srcBuffer_,
+ VULKAN_HPP_NAMESPACE::Buffer dstBuffer_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::BufferCopy2KHR> const & regions_ )
+ : srcBuffer( srcBuffer_ )
+ , dstBuffer( dstBuffer_ )
+ , regionCount( static_cast<uint32_t>( regions_.size() ) )
+ , pRegions( regions_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 CopyBufferInfo2KHR &
+ operator=( CopyBufferInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ CopyBufferInfo2KHR & operator=( VkCopyBufferInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CopyBufferInfo2KHR const *>( &rhs );
+ return *this;
+ }
+
+ CopyBufferInfo2KHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ CopyBufferInfo2KHR & setSrcBuffer( VULKAN_HPP_NAMESPACE::Buffer srcBuffer_ ) VULKAN_HPP_NOEXCEPT
+ {
+ srcBuffer = srcBuffer_;
+ return *this;
+ }
+
+ CopyBufferInfo2KHR & setDstBuffer( VULKAN_HPP_NAMESPACE::Buffer dstBuffer_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstBuffer = dstBuffer_;
+ return *this;
+ }
+
+ CopyBufferInfo2KHR & setRegionCount( uint32_t regionCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ regionCount = regionCount_;
+ return *this;
+ }
+
+ CopyBufferInfo2KHR & setPRegions( const VULKAN_HPP_NAMESPACE::BufferCopy2KHR * pRegions_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pRegions = pRegions_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ CopyBufferInfo2KHR & setRegions(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::BufferCopy2KHR> const & regions_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ regionCount = static_cast<uint32_t>( regions_.size() );
+ pRegions = regions_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkCopyBufferInfo2KHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkCopyBufferInfo2KHR *>( this );
+ }
+
+ operator VkCopyBufferInfo2KHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkCopyBufferInfo2KHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( CopyBufferInfo2KHR const & ) const = default;
+#else
+ bool operator==( CopyBufferInfo2KHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( srcBuffer == rhs.srcBuffer ) &&
+ ( dstBuffer == rhs.dstBuffer ) && ( regionCount == rhs.regionCount ) && ( pRegions == rhs.pRegions );
+ }
+
+ bool operator!=( CopyBufferInfo2KHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCopyBufferInfo2KHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Buffer srcBuffer = {};
+ VULKAN_HPP_NAMESPACE::Buffer dstBuffer = {};
+ uint32_t regionCount = {};
+ const VULKAN_HPP_NAMESPACE::BufferCopy2KHR * pRegions = {};
+ };
+ static_assert( sizeof( CopyBufferInfo2KHR ) == sizeof( VkCopyBufferInfo2KHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<CopyBufferInfo2KHR>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eCopyBufferInfo2KHR>
+ {
+ using Type = CopyBufferInfo2KHR;
+ };
+
+ struct CopyBufferToImageInfo2KHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCopyBufferToImageInfo2KHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR CopyBufferToImageInfo2KHR(
+ VULKAN_HPP_NAMESPACE::Buffer srcBuffer_ = {},
+ VULKAN_HPP_NAMESPACE::Image dstImage_ = {},
+ VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined,
+ uint32_t regionCount_ = {},
+ const VULKAN_HPP_NAMESPACE::BufferImageCopy2KHR * pRegions_ = {} ) VULKAN_HPP_NOEXCEPT
+ : srcBuffer( srcBuffer_ )
+ , dstImage( dstImage_ )
+ , dstImageLayout( dstImageLayout_ )
+ , regionCount( regionCount_ )
+ , pRegions( pRegions_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ CopyBufferToImageInfo2KHR( CopyBufferToImageInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ CopyBufferToImageInfo2KHR( VkCopyBufferToImageInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : CopyBufferToImageInfo2KHR( *reinterpret_cast<CopyBufferToImageInfo2KHR const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ CopyBufferToImageInfo2KHR(
+ VULKAN_HPP_NAMESPACE::Buffer srcBuffer_,
+ VULKAN_HPP_NAMESPACE::Image dstImage_,
+ VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::BufferImageCopy2KHR> const & regions_ )
+ : srcBuffer( srcBuffer_ )
+ , dstImage( dstImage_ )
+ , dstImageLayout( dstImageLayout_ )
+ , regionCount( static_cast<uint32_t>( regions_.size() ) )
+ , pRegions( regions_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 CopyBufferToImageInfo2KHR &
+ operator=( CopyBufferToImageInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ CopyBufferToImageInfo2KHR & operator=( VkCopyBufferToImageInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CopyBufferToImageInfo2KHR const *>( &rhs );
+ return *this;
+ }
+
+ CopyBufferToImageInfo2KHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ CopyBufferToImageInfo2KHR & setSrcBuffer( VULKAN_HPP_NAMESPACE::Buffer srcBuffer_ ) VULKAN_HPP_NOEXCEPT
+ {
+ srcBuffer = srcBuffer_;
+ return *this;
+ }
+
+ CopyBufferToImageInfo2KHR & setDstImage( VULKAN_HPP_NAMESPACE::Image dstImage_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstImage = dstImage_;
+ return *this;
+ }
+
+ CopyBufferToImageInfo2KHR &
+ setDstImageLayout( VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstImageLayout = dstImageLayout_;
+ return *this;
+ }
+
+ CopyBufferToImageInfo2KHR & setRegionCount( uint32_t regionCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ regionCount = regionCount_;
+ return *this;
+ }
+
+ CopyBufferToImageInfo2KHR &
+ setPRegions( const VULKAN_HPP_NAMESPACE::BufferImageCopy2KHR * pRegions_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pRegions = pRegions_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ CopyBufferToImageInfo2KHR & setRegions(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::BufferImageCopy2KHR> const & regions_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ regionCount = static_cast<uint32_t>( regions_.size() );
+ pRegions = regions_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkCopyBufferToImageInfo2KHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkCopyBufferToImageInfo2KHR *>( this );
+ }
+
+ operator VkCopyBufferToImageInfo2KHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkCopyBufferToImageInfo2KHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( CopyBufferToImageInfo2KHR const & ) const = default;
+#else
+ bool operator==( CopyBufferToImageInfo2KHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( srcBuffer == rhs.srcBuffer ) &&
+ ( dstImage == rhs.dstImage ) && ( dstImageLayout == rhs.dstImageLayout ) &&
+ ( regionCount == rhs.regionCount ) && ( pRegions == rhs.pRegions );
+ }
+
+ bool operator!=( CopyBufferToImageInfo2KHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCopyBufferToImageInfo2KHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Buffer srcBuffer = {};
+ VULKAN_HPP_NAMESPACE::Image dstImage = {};
+ VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
+ uint32_t regionCount = {};
+ const VULKAN_HPP_NAMESPACE::BufferImageCopy2KHR * pRegions = {};
+ };
+ static_assert( sizeof( CopyBufferToImageInfo2KHR ) == sizeof( VkCopyBufferToImageInfo2KHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<CopyBufferToImageInfo2KHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eCopyBufferToImageInfo2KHR>
+ {
+ using Type = CopyBufferToImageInfo2KHR;
+ };
+
+ struct CopyCommandTransformInfoQCOM
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCopyCommandTransformInfoQCOM;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ CopyCommandTransformInfoQCOM( VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR transform_ =
+ VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR::eIdentity ) VULKAN_HPP_NOEXCEPT
+ : transform( transform_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ CopyCommandTransformInfoQCOM( CopyCommandTransformInfoQCOM const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ CopyCommandTransformInfoQCOM( VkCopyCommandTransformInfoQCOM const & rhs ) VULKAN_HPP_NOEXCEPT
+ : CopyCommandTransformInfoQCOM( *reinterpret_cast<CopyCommandTransformInfoQCOM const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 CopyCommandTransformInfoQCOM &
+ operator=( CopyCommandTransformInfoQCOM const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ CopyCommandTransformInfoQCOM & operator=( VkCopyCommandTransformInfoQCOM const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CopyCommandTransformInfoQCOM const *>( &rhs );
+ return *this;
+ }
+
+ CopyCommandTransformInfoQCOM & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ CopyCommandTransformInfoQCOM &
+ setTransform( VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR transform_ ) VULKAN_HPP_NOEXCEPT
+ {
+ transform = transform_;
+ return *this;
+ }
+
+ operator VkCopyCommandTransformInfoQCOM const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkCopyCommandTransformInfoQCOM *>( this );
+ }
+
+ operator VkCopyCommandTransformInfoQCOM &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkCopyCommandTransformInfoQCOM *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( CopyCommandTransformInfoQCOM const & ) const = default;
+#else
+ bool operator==( CopyCommandTransformInfoQCOM const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( transform == rhs.transform );
+ }
+
+ bool operator!=( CopyCommandTransformInfoQCOM const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCopyCommandTransformInfoQCOM;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR transform =
+ VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR::eIdentity;
+ };
+ static_assert( sizeof( CopyCommandTransformInfoQCOM ) == sizeof( VkCopyCommandTransformInfoQCOM ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<CopyCommandTransformInfoQCOM>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eCopyCommandTransformInfoQCOM>
+ {
+ using Type = CopyCommandTransformInfoQCOM;
+ };
+
+ struct CopyDescriptorSet
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCopyDescriptorSet;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR CopyDescriptorSet( VULKAN_HPP_NAMESPACE::DescriptorSet srcSet_ = {},
+ uint32_t srcBinding_ = {},
+ uint32_t srcArrayElement_ = {},
+ VULKAN_HPP_NAMESPACE::DescriptorSet dstSet_ = {},
+ uint32_t dstBinding_ = {},
+ uint32_t dstArrayElement_ = {},
+ uint32_t descriptorCount_ = {} ) VULKAN_HPP_NOEXCEPT
+ : srcSet( srcSet_ )
+ , srcBinding( srcBinding_ )
+ , srcArrayElement( srcArrayElement_ )
+ , dstSet( dstSet_ )
+ , dstBinding( dstBinding_ )
+ , dstArrayElement( dstArrayElement_ )
+ , descriptorCount( descriptorCount_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR CopyDescriptorSet( CopyDescriptorSet const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ CopyDescriptorSet( VkCopyDescriptorSet const & rhs ) VULKAN_HPP_NOEXCEPT
+ : CopyDescriptorSet( *reinterpret_cast<CopyDescriptorSet const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 CopyDescriptorSet &
+ operator=( CopyDescriptorSet const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ CopyDescriptorSet & operator=( VkCopyDescriptorSet const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CopyDescriptorSet const *>( &rhs );
+ return *this;
+ }
+
+ CopyDescriptorSet & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ CopyDescriptorSet & setSrcSet( VULKAN_HPP_NAMESPACE::DescriptorSet srcSet_ ) VULKAN_HPP_NOEXCEPT
+ {
+ srcSet = srcSet_;
+ return *this;
+ }
+
+ CopyDescriptorSet & setSrcBinding( uint32_t srcBinding_ ) VULKAN_HPP_NOEXCEPT
+ {
+ srcBinding = srcBinding_;
+ return *this;
+ }
+
+ CopyDescriptorSet & setSrcArrayElement( uint32_t srcArrayElement_ ) VULKAN_HPP_NOEXCEPT
+ {
+ srcArrayElement = srcArrayElement_;
+ return *this;
+ }
+
+ CopyDescriptorSet & setDstSet( VULKAN_HPP_NAMESPACE::DescriptorSet dstSet_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstSet = dstSet_;
+ return *this;
+ }
+
+ CopyDescriptorSet & setDstBinding( uint32_t dstBinding_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstBinding = dstBinding_;
+ return *this;
+ }
+
+ CopyDescriptorSet & setDstArrayElement( uint32_t dstArrayElement_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstArrayElement = dstArrayElement_;
+ return *this;
+ }
+
+ CopyDescriptorSet & setDescriptorCount( uint32_t descriptorCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ descriptorCount = descriptorCount_;
+ return *this;
+ }
+
+ operator VkCopyDescriptorSet const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkCopyDescriptorSet *>( this );
+ }
+
+ operator VkCopyDescriptorSet &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkCopyDescriptorSet *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( CopyDescriptorSet const & ) const = default;
+#else
+ bool operator==( CopyDescriptorSet const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( srcSet == rhs.srcSet ) &&
+ ( srcBinding == rhs.srcBinding ) && ( srcArrayElement == rhs.srcArrayElement ) &&
+ ( dstSet == rhs.dstSet ) && ( dstBinding == rhs.dstBinding ) &&
+ ( dstArrayElement == rhs.dstArrayElement ) && ( descriptorCount == rhs.descriptorCount );
+ }
+
+ bool operator!=( CopyDescriptorSet const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCopyDescriptorSet;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::DescriptorSet srcSet = {};
+ uint32_t srcBinding = {};
+ uint32_t srcArrayElement = {};
+ VULKAN_HPP_NAMESPACE::DescriptorSet dstSet = {};
+ uint32_t dstBinding = {};
+ uint32_t dstArrayElement = {};
+ uint32_t descriptorCount = {};
+ };
+ static_assert( sizeof( CopyDescriptorSet ) == sizeof( VkCopyDescriptorSet ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<CopyDescriptorSet>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eCopyDescriptorSet>
+ {
+ using Type = CopyDescriptorSet;
+ };
+
+ struct ImageCopy2KHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImageCopy2KHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR ImageCopy2KHR( VULKAN_HPP_NAMESPACE::ImageSubresourceLayers srcSubresource_ = {},
+ VULKAN_HPP_NAMESPACE::Offset3D srcOffset_ = {},
+ VULKAN_HPP_NAMESPACE::ImageSubresourceLayers dstSubresource_ = {},
+ VULKAN_HPP_NAMESPACE::Offset3D dstOffset_ = {},
+ VULKAN_HPP_NAMESPACE::Extent3D extent_ = {} ) VULKAN_HPP_NOEXCEPT
+ : srcSubresource( srcSubresource_ )
+ , srcOffset( srcOffset_ )
+ , dstSubresource( dstSubresource_ )
+ , dstOffset( dstOffset_ )
+ , extent( extent_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR ImageCopy2KHR( ImageCopy2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImageCopy2KHR( VkImageCopy2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ImageCopy2KHR( *reinterpret_cast<ImageCopy2KHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ImageCopy2KHR & operator=( ImageCopy2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImageCopy2KHR & operator=( VkImageCopy2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageCopy2KHR const *>( &rhs );
+ return *this;
+ }
+
+ ImageCopy2KHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ ImageCopy2KHR &
+ setSrcSubresource( VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const & srcSubresource_ ) VULKAN_HPP_NOEXCEPT
+ {
+ srcSubresource = srcSubresource_;
+ return *this;
+ }
+
+ ImageCopy2KHR & setSrcOffset( VULKAN_HPP_NAMESPACE::Offset3D const & srcOffset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ srcOffset = srcOffset_;
+ return *this;
+ }
+
+ ImageCopy2KHR &
+ setDstSubresource( VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const & dstSubresource_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstSubresource = dstSubresource_;
+ return *this;
+ }
+
+ ImageCopy2KHR & setDstOffset( VULKAN_HPP_NAMESPACE::Offset3D const & dstOffset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstOffset = dstOffset_;
+ return *this;
+ }
+
+ ImageCopy2KHR & setExtent( VULKAN_HPP_NAMESPACE::Extent3D const & extent_ ) VULKAN_HPP_NOEXCEPT
+ {
+ extent = extent_;
+ return *this;
+ }
+
+ operator VkImageCopy2KHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkImageCopy2KHR *>( this );
+ }
+
+ operator VkImageCopy2KHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkImageCopy2KHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ImageCopy2KHR const & ) const = default;
+#else
+ bool operator==( ImageCopy2KHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( srcSubresource == rhs.srcSubresource ) &&
+ ( srcOffset == rhs.srcOffset ) && ( dstSubresource == rhs.dstSubresource ) &&
+ ( dstOffset == rhs.dstOffset ) && ( extent == rhs.extent );
+ }
+
+ bool operator!=( ImageCopy2KHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageCopy2KHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ImageSubresourceLayers srcSubresource = {};
+ VULKAN_HPP_NAMESPACE::Offset3D srcOffset = {};
+ VULKAN_HPP_NAMESPACE::ImageSubresourceLayers dstSubresource = {};
+ VULKAN_HPP_NAMESPACE::Offset3D dstOffset = {};
+ VULKAN_HPP_NAMESPACE::Extent3D extent = {};
+ };
+ static_assert( sizeof( ImageCopy2KHR ) == sizeof( VkImageCopy2KHR ), "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ImageCopy2KHR>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eImageCopy2KHR>
+ {
+ using Type = ImageCopy2KHR;
+ };
+
+ struct CopyImageInfo2KHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCopyImageInfo2KHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR CopyImageInfo2KHR(
+ VULKAN_HPP_NAMESPACE::Image srcImage_ = {},
+ VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined,
+ VULKAN_HPP_NAMESPACE::Image dstImage_ = {},
+ VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined,
+ uint32_t regionCount_ = {},
+ const VULKAN_HPP_NAMESPACE::ImageCopy2KHR * pRegions_ = {} ) VULKAN_HPP_NOEXCEPT
+ : srcImage( srcImage_ )
+ , srcImageLayout( srcImageLayout_ )
+ , dstImage( dstImage_ )
+ , dstImageLayout( dstImageLayout_ )
+ , regionCount( regionCount_ )
+ , pRegions( pRegions_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR CopyImageInfo2KHR( CopyImageInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ CopyImageInfo2KHR( VkCopyImageInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : CopyImageInfo2KHR( *reinterpret_cast<CopyImageInfo2KHR const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ CopyImageInfo2KHR(
+ VULKAN_HPP_NAMESPACE::Image srcImage_,
+ VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout_,
+ VULKAN_HPP_NAMESPACE::Image dstImage_,
+ VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ImageCopy2KHR> const & regions_ )
+ : srcImage( srcImage_ )
+ , srcImageLayout( srcImageLayout_ )
+ , dstImage( dstImage_ )
+ , dstImageLayout( dstImageLayout_ )
+ , regionCount( static_cast<uint32_t>( regions_.size() ) )
+ , pRegions( regions_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 CopyImageInfo2KHR &
+ operator=( CopyImageInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ CopyImageInfo2KHR & operator=( VkCopyImageInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CopyImageInfo2KHR const *>( &rhs );
+ return *this;
+ }
+
+ CopyImageInfo2KHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ CopyImageInfo2KHR & setSrcImage( VULKAN_HPP_NAMESPACE::Image srcImage_ ) VULKAN_HPP_NOEXCEPT
+ {
+ srcImage = srcImage_;
+ return *this;
+ }
+
+ CopyImageInfo2KHR & setSrcImageLayout( VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout_ ) VULKAN_HPP_NOEXCEPT
+ {
+ srcImageLayout = srcImageLayout_;
+ return *this;
+ }
+
+ CopyImageInfo2KHR & setDstImage( VULKAN_HPP_NAMESPACE::Image dstImage_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstImage = dstImage_;
+ return *this;
+ }
+
+ CopyImageInfo2KHR & setDstImageLayout( VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstImageLayout = dstImageLayout_;
+ return *this;
+ }
+
+ CopyImageInfo2KHR & setRegionCount( uint32_t regionCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ regionCount = regionCount_;
+ return *this;
+ }
+
+ CopyImageInfo2KHR & setPRegions( const VULKAN_HPP_NAMESPACE::ImageCopy2KHR * pRegions_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pRegions = pRegions_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ CopyImageInfo2KHR & setRegions(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ImageCopy2KHR> const & regions_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ regionCount = static_cast<uint32_t>( regions_.size() );
+ pRegions = regions_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkCopyImageInfo2KHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkCopyImageInfo2KHR *>( this );
+ }
+
+ operator VkCopyImageInfo2KHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkCopyImageInfo2KHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( CopyImageInfo2KHR const & ) const = default;
+#else
+ bool operator==( CopyImageInfo2KHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( srcImage == rhs.srcImage ) &&
+ ( srcImageLayout == rhs.srcImageLayout ) && ( dstImage == rhs.dstImage ) &&
+ ( dstImageLayout == rhs.dstImageLayout ) && ( regionCount == rhs.regionCount ) &&
+ ( pRegions == rhs.pRegions );
+ }
+
+ bool operator!=( CopyImageInfo2KHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCopyImageInfo2KHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Image srcImage = {};
+ VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
+ VULKAN_HPP_NAMESPACE::Image dstImage = {};
+ VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
+ uint32_t regionCount = {};
+ const VULKAN_HPP_NAMESPACE::ImageCopy2KHR * pRegions = {};
+ };
+ static_assert( sizeof( CopyImageInfo2KHR ) == sizeof( VkCopyImageInfo2KHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<CopyImageInfo2KHR>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eCopyImageInfo2KHR>
+ {
+ using Type = CopyImageInfo2KHR;
+ };
+
+ struct CopyImageToBufferInfo2KHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCopyImageToBufferInfo2KHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR CopyImageToBufferInfo2KHR(
+ VULKAN_HPP_NAMESPACE::Image srcImage_ = {},
+ VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined,
+ VULKAN_HPP_NAMESPACE::Buffer dstBuffer_ = {},
+ uint32_t regionCount_ = {},
+ const VULKAN_HPP_NAMESPACE::BufferImageCopy2KHR * pRegions_ = {} ) VULKAN_HPP_NOEXCEPT
+ : srcImage( srcImage_ )
+ , srcImageLayout( srcImageLayout_ )
+ , dstBuffer( dstBuffer_ )
+ , regionCount( regionCount_ )
+ , pRegions( pRegions_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ CopyImageToBufferInfo2KHR( CopyImageToBufferInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ CopyImageToBufferInfo2KHR( VkCopyImageToBufferInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : CopyImageToBufferInfo2KHR( *reinterpret_cast<CopyImageToBufferInfo2KHR const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ CopyImageToBufferInfo2KHR(
+ VULKAN_HPP_NAMESPACE::Image srcImage_,
+ VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout_,
+ VULKAN_HPP_NAMESPACE::Buffer dstBuffer_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::BufferImageCopy2KHR> const & regions_ )
+ : srcImage( srcImage_ )
+ , srcImageLayout( srcImageLayout_ )
+ , dstBuffer( dstBuffer_ )
+ , regionCount( static_cast<uint32_t>( regions_.size() ) )
+ , pRegions( regions_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 CopyImageToBufferInfo2KHR &
+ operator=( CopyImageToBufferInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ CopyImageToBufferInfo2KHR & operator=( VkCopyImageToBufferInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CopyImageToBufferInfo2KHR const *>( &rhs );
+ return *this;
+ }
+
+ CopyImageToBufferInfo2KHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ CopyImageToBufferInfo2KHR & setSrcImage( VULKAN_HPP_NAMESPACE::Image srcImage_ ) VULKAN_HPP_NOEXCEPT
+ {
+ srcImage = srcImage_;
+ return *this;
+ }
+
+ CopyImageToBufferInfo2KHR &
+ setSrcImageLayout( VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout_ ) VULKAN_HPP_NOEXCEPT
+ {
+ srcImageLayout = srcImageLayout_;
+ return *this;
+ }
+
+ CopyImageToBufferInfo2KHR & setDstBuffer( VULKAN_HPP_NAMESPACE::Buffer dstBuffer_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstBuffer = dstBuffer_;
+ return *this;
+ }
+
+ CopyImageToBufferInfo2KHR & setRegionCount( uint32_t regionCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ regionCount = regionCount_;
+ return *this;
+ }
+
+ CopyImageToBufferInfo2KHR &
+ setPRegions( const VULKAN_HPP_NAMESPACE::BufferImageCopy2KHR * pRegions_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pRegions = pRegions_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ CopyImageToBufferInfo2KHR & setRegions(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::BufferImageCopy2KHR> const & regions_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ regionCount = static_cast<uint32_t>( regions_.size() );
+ pRegions = regions_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkCopyImageToBufferInfo2KHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkCopyImageToBufferInfo2KHR *>( this );
+ }
+
+ operator VkCopyImageToBufferInfo2KHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkCopyImageToBufferInfo2KHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( CopyImageToBufferInfo2KHR const & ) const = default;
+#else
+ bool operator==( CopyImageToBufferInfo2KHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( srcImage == rhs.srcImage ) &&
+ ( srcImageLayout == rhs.srcImageLayout ) && ( dstBuffer == rhs.dstBuffer ) &&
+ ( regionCount == rhs.regionCount ) && ( pRegions == rhs.pRegions );
+ }
+
+ bool operator!=( CopyImageToBufferInfo2KHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCopyImageToBufferInfo2KHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Image srcImage = {};
+ VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
+ VULKAN_HPP_NAMESPACE::Buffer dstBuffer = {};
+ uint32_t regionCount = {};
+ const VULKAN_HPP_NAMESPACE::BufferImageCopy2KHR * pRegions = {};
+ };
+ static_assert( sizeof( CopyImageToBufferInfo2KHR ) == sizeof( VkCopyImageToBufferInfo2KHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<CopyImageToBufferInfo2KHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eCopyImageToBufferInfo2KHR>
+ {
+ using Type = CopyImageToBufferInfo2KHR;
+ };
+
+ struct CopyMemoryToAccelerationStructureInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eCopyMemoryToAccelerationStructureInfoKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ CopyMemoryToAccelerationStructureInfoKHR( VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR src_ = {},
+ VULKAN_HPP_NAMESPACE::AccelerationStructureKHR dst_ = {},
+ VULKAN_HPP_NAMESPACE::CopyAccelerationStructureModeKHR mode_ =
+ VULKAN_HPP_NAMESPACE::CopyAccelerationStructureModeKHR::eClone )
+ VULKAN_HPP_NOEXCEPT
+ : src( src_ )
+ , dst( dst_ )
+ , mode( mode_ )
+ {}
+
+ CopyMemoryToAccelerationStructureInfoKHR( CopyMemoryToAccelerationStructureInfoKHR const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ CopyMemoryToAccelerationStructureInfoKHR( VkCopyMemoryToAccelerationStructureInfoKHR const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : CopyMemoryToAccelerationStructureInfoKHR(
+ *reinterpret_cast<CopyMemoryToAccelerationStructureInfoKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ CopyMemoryToAccelerationStructureInfoKHR &
+ operator=( CopyMemoryToAccelerationStructureInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ CopyMemoryToAccelerationStructureInfoKHR &
+ operator=( VkCopyMemoryToAccelerationStructureInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CopyMemoryToAccelerationStructureInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ CopyMemoryToAccelerationStructureInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ CopyMemoryToAccelerationStructureInfoKHR &
+ setSrc( VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR const & src_ ) VULKAN_HPP_NOEXCEPT
+ {
+ src = src_;
+ return *this;
+ }
+
+ CopyMemoryToAccelerationStructureInfoKHR &
+ setDst( VULKAN_HPP_NAMESPACE::AccelerationStructureKHR dst_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dst = dst_;
+ return *this;
+ }
+
+ CopyMemoryToAccelerationStructureInfoKHR &
+ setMode( VULKAN_HPP_NAMESPACE::CopyAccelerationStructureModeKHR mode_ ) VULKAN_HPP_NOEXCEPT
+ {
+ mode = mode_;
+ return *this;
+ }
+
+ operator VkCopyMemoryToAccelerationStructureInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkCopyMemoryToAccelerationStructureInfoKHR *>( this );
+ }
+
+ operator VkCopyMemoryToAccelerationStructureInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkCopyMemoryToAccelerationStructureInfoKHR *>( this );
+ }
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCopyMemoryToAccelerationStructureInfoKHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR src = {};
+ VULKAN_HPP_NAMESPACE::AccelerationStructureKHR dst = {};
+ VULKAN_HPP_NAMESPACE::CopyAccelerationStructureModeKHR mode =
+ VULKAN_HPP_NAMESPACE::CopyAccelerationStructureModeKHR::eClone;
+ };
+ static_assert( sizeof( CopyMemoryToAccelerationStructureInfoKHR ) ==
+ sizeof( VkCopyMemoryToAccelerationStructureInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<CopyMemoryToAccelerationStructureInfoKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eCopyMemoryToAccelerationStructureInfoKHR>
+ {
+ using Type = CopyMemoryToAccelerationStructureInfoKHR;
+ };
+
+ struct CuFunctionCreateInfoNVX
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCuFunctionCreateInfoNVX;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR CuFunctionCreateInfoNVX( VULKAN_HPP_NAMESPACE::CuModuleNVX module_ = {},
+ const char * pName_ = {} ) VULKAN_HPP_NOEXCEPT
+ : module( module_ )
+ , pName( pName_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR CuFunctionCreateInfoNVX( CuFunctionCreateInfoNVX const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ CuFunctionCreateInfoNVX( VkCuFunctionCreateInfoNVX const & rhs ) VULKAN_HPP_NOEXCEPT
+ : CuFunctionCreateInfoNVX( *reinterpret_cast<CuFunctionCreateInfoNVX const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 CuFunctionCreateInfoNVX &
+ operator=( CuFunctionCreateInfoNVX const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ CuFunctionCreateInfoNVX & operator=( VkCuFunctionCreateInfoNVX const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CuFunctionCreateInfoNVX const *>( &rhs );
+ return *this;
+ }
+
+ CuFunctionCreateInfoNVX & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ CuFunctionCreateInfoNVX & setModule( VULKAN_HPP_NAMESPACE::CuModuleNVX module_ ) VULKAN_HPP_NOEXCEPT
+ {
+ module = module_;
+ return *this;
+ }
+
+ CuFunctionCreateInfoNVX & setPName( const char * pName_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pName = pName_;
+ return *this;
+ }
+
+ operator VkCuFunctionCreateInfoNVX const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkCuFunctionCreateInfoNVX *>( this );
+ }
+
+ operator VkCuFunctionCreateInfoNVX &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkCuFunctionCreateInfoNVX *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( CuFunctionCreateInfoNVX const & ) const = default;
+#else
+ bool operator==( CuFunctionCreateInfoNVX const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( module == rhs.module ) && ( pName == rhs.pName );
+ }
+
+ bool operator!=( CuFunctionCreateInfoNVX const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCuFunctionCreateInfoNVX;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::CuModuleNVX module = {};
+ const char * pName = {};
+ };
+ static_assert( sizeof( CuFunctionCreateInfoNVX ) == sizeof( VkCuFunctionCreateInfoNVX ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<CuFunctionCreateInfoNVX>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eCuFunctionCreateInfoNVX>
+ {
+ using Type = CuFunctionCreateInfoNVX;
+ };
+
+ struct CuLaunchInfoNVX
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCuLaunchInfoNVX;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR CuLaunchInfoNVX( VULKAN_HPP_NAMESPACE::CuFunctionNVX 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_ = {} ) VULKAN_HPP_NOEXCEPT
+ : function( function_ )
+ , gridDimX( gridDimX_ )
+ , gridDimY( gridDimY_ )
+ , gridDimZ( gridDimZ_ )
+ , blockDimX( blockDimX_ )
+ , blockDimY( blockDimY_ )
+ , blockDimZ( blockDimZ_ )
+ , sharedMemBytes( sharedMemBytes_ )
+ , paramCount( paramCount_ )
+ , pParams( pParams_ )
+ , extraCount( extraCount_ )
+ , pExtras( pExtras_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR CuLaunchInfoNVX( CuLaunchInfoNVX const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ CuLaunchInfoNVX( VkCuLaunchInfoNVX const & rhs ) VULKAN_HPP_NOEXCEPT
+ : CuLaunchInfoNVX( *reinterpret_cast<CuLaunchInfoNVX const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 CuLaunchInfoNVX & operator=( CuLaunchInfoNVX const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ CuLaunchInfoNVX & operator=( VkCuLaunchInfoNVX const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CuLaunchInfoNVX const *>( &rhs );
+ return *this;
+ }
+
+ CuLaunchInfoNVX & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ CuLaunchInfoNVX & setFunction( VULKAN_HPP_NAMESPACE::CuFunctionNVX function_ ) VULKAN_HPP_NOEXCEPT
+ {
+ function = function_;
+ return *this;
+ }
+
+ CuLaunchInfoNVX & setGridDimX( uint32_t gridDimX_ ) VULKAN_HPP_NOEXCEPT
+ {
+ gridDimX = gridDimX_;
+ return *this;
+ }
+
+ CuLaunchInfoNVX & setGridDimY( uint32_t gridDimY_ ) VULKAN_HPP_NOEXCEPT
+ {
+ gridDimY = gridDimY_;
+ return *this;
+ }
+
+ CuLaunchInfoNVX & setGridDimZ( uint32_t gridDimZ_ ) VULKAN_HPP_NOEXCEPT
+ {
+ gridDimZ = gridDimZ_;
+ return *this;
+ }
+
+ CuLaunchInfoNVX & setBlockDimX( uint32_t blockDimX_ ) VULKAN_HPP_NOEXCEPT
+ {
+ blockDimX = blockDimX_;
+ return *this;
+ }
+
+ CuLaunchInfoNVX & setBlockDimY( uint32_t blockDimY_ ) VULKAN_HPP_NOEXCEPT
+ {
+ blockDimY = blockDimY_;
+ return *this;
+ }
+
+ CuLaunchInfoNVX & setBlockDimZ( uint32_t blockDimZ_ ) VULKAN_HPP_NOEXCEPT
+ {
+ blockDimZ = blockDimZ_;
+ return *this;
+ }
+
+ CuLaunchInfoNVX & setSharedMemBytes( uint32_t sharedMemBytes_ ) VULKAN_HPP_NOEXCEPT
+ {
+ sharedMemBytes = sharedMemBytes_;
+ return *this;
+ }
+
+ CuLaunchInfoNVX & setParamCount( size_t paramCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ paramCount = paramCount_;
+ return *this;
+ }
+
+ CuLaunchInfoNVX & setPParams( const void * const * pParams_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pParams = pParams_;
+ return *this;
+ }
+
+ CuLaunchInfoNVX & setExtraCount( size_t extraCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ extraCount = extraCount_;
+ return *this;
+ }
+
+ CuLaunchInfoNVX & setPExtras( const void * const * pExtras_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pExtras = pExtras_;
+ return *this;
+ }
+
+ operator VkCuLaunchInfoNVX const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkCuLaunchInfoNVX *>( this );
+ }
+
+ operator VkCuLaunchInfoNVX &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkCuLaunchInfoNVX *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( CuLaunchInfoNVX const & ) const = default;
+#else
+ bool operator==( CuLaunchInfoNVX const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( function == rhs.function ) &&
+ ( gridDimX == rhs.gridDimX ) && ( gridDimY == rhs.gridDimY ) && ( gridDimZ == rhs.gridDimZ ) &&
+ ( blockDimX == rhs.blockDimX ) && ( blockDimY == rhs.blockDimY ) && ( blockDimZ == rhs.blockDimZ ) &&
+ ( sharedMemBytes == rhs.sharedMemBytes ) && ( paramCount == rhs.paramCount ) &&
+ ( pParams == rhs.pParams ) && ( extraCount == rhs.extraCount ) && ( pExtras == rhs.pExtras );
+ }
+
+ bool operator!=( CuLaunchInfoNVX const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCuLaunchInfoNVX;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::CuFunctionNVX 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 = {};
+ };
+ static_assert( sizeof( CuLaunchInfoNVX ) == sizeof( VkCuLaunchInfoNVX ), "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<CuLaunchInfoNVX>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eCuLaunchInfoNVX>
+ {
+ using Type = CuLaunchInfoNVX;
+ };
+
+ struct CuModuleCreateInfoNVX
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCuModuleCreateInfoNVX;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR CuModuleCreateInfoNVX( size_t dataSize_ = {}, const void * pData_ = {} ) VULKAN_HPP_NOEXCEPT
+ : dataSize( dataSize_ )
+ , pData( pData_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR CuModuleCreateInfoNVX( CuModuleCreateInfoNVX const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ CuModuleCreateInfoNVX( VkCuModuleCreateInfoNVX const & rhs ) VULKAN_HPP_NOEXCEPT
+ : CuModuleCreateInfoNVX( *reinterpret_cast<CuModuleCreateInfoNVX const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 CuModuleCreateInfoNVX &
+ operator=( CuModuleCreateInfoNVX const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ CuModuleCreateInfoNVX & operator=( VkCuModuleCreateInfoNVX const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CuModuleCreateInfoNVX const *>( &rhs );
+ return *this;
+ }
+
+ CuModuleCreateInfoNVX & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ CuModuleCreateInfoNVX & setDataSize( size_t dataSize_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dataSize = dataSize_;
+ return *this;
+ }
+
+ CuModuleCreateInfoNVX & setPData( const void * pData_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pData = pData_;
+ return *this;
+ }
+
+ operator VkCuModuleCreateInfoNVX const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkCuModuleCreateInfoNVX *>( this );
+ }
+
+ operator VkCuModuleCreateInfoNVX &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkCuModuleCreateInfoNVX *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( CuModuleCreateInfoNVX const & ) const = default;
+#else
+ bool operator==( CuModuleCreateInfoNVX const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( dataSize == rhs.dataSize ) && ( pData == rhs.pData );
+ }
+
+ bool operator!=( CuModuleCreateInfoNVX const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCuModuleCreateInfoNVX;
+ const void * pNext = {};
+ size_t dataSize = {};
+ const void * pData = {};
+ };
+ static_assert( sizeof( CuModuleCreateInfoNVX ) == sizeof( VkCuModuleCreateInfoNVX ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<CuModuleCreateInfoNVX>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eCuModuleCreateInfoNVX>
+ {
+ using Type = CuModuleCreateInfoNVX;
+ };
+
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ struct D3D12FenceSubmitInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eD3D12FenceSubmitInfoKHR;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR D3D12FenceSubmitInfoKHR( uint32_t waitSemaphoreValuesCount_ = {},
+ const uint64_t * pWaitSemaphoreValues_ = {},
+ uint32_t signalSemaphoreValuesCount_ = {},
+ const uint64_t * pSignalSemaphoreValues_ = {} ) VULKAN_HPP_NOEXCEPT
+ : waitSemaphoreValuesCount( waitSemaphoreValuesCount_ )
+ , pWaitSemaphoreValues( pWaitSemaphoreValues_ )
+ , signalSemaphoreValuesCount( signalSemaphoreValuesCount_ )
+ , pSignalSemaphoreValues( pSignalSemaphoreValues_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR D3D12FenceSubmitInfoKHR( D3D12FenceSubmitInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ D3D12FenceSubmitInfoKHR( VkD3D12FenceSubmitInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : D3D12FenceSubmitInfoKHR( *reinterpret_cast<D3D12FenceSubmitInfoKHR const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ D3D12FenceSubmitInfoKHR(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const & waitSemaphoreValues_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const & signalSemaphoreValues_ = {} )
+ : waitSemaphoreValuesCount( static_cast<uint32_t>( waitSemaphoreValues_.size() ) )
+ , pWaitSemaphoreValues( waitSemaphoreValues_.data() )
+ , signalSemaphoreValuesCount( static_cast<uint32_t>( signalSemaphoreValues_.size() ) )
+ , pSignalSemaphoreValues( signalSemaphoreValues_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 D3D12FenceSubmitInfoKHR &
+ operator=( D3D12FenceSubmitInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ D3D12FenceSubmitInfoKHR & operator=( VkD3D12FenceSubmitInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::D3D12FenceSubmitInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ D3D12FenceSubmitInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ D3D12FenceSubmitInfoKHR & setWaitSemaphoreValuesCount( uint32_t waitSemaphoreValuesCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ waitSemaphoreValuesCount = waitSemaphoreValuesCount_;
+ return *this;
+ }
+
+ D3D12FenceSubmitInfoKHR & setPWaitSemaphoreValues( const uint64_t * pWaitSemaphoreValues_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pWaitSemaphoreValues = pWaitSemaphoreValues_;
+ return *this;
+ }
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ D3D12FenceSubmitInfoKHR & setWaitSemaphoreValues(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const & waitSemaphoreValues_ ) VULKAN_HPP_NOEXCEPT
+ {
+ waitSemaphoreValuesCount = static_cast<uint32_t>( waitSemaphoreValues_.size() );
+ pWaitSemaphoreValues = waitSemaphoreValues_.data();
+ return *this;
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ D3D12FenceSubmitInfoKHR & setSignalSemaphoreValuesCount( uint32_t signalSemaphoreValuesCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ signalSemaphoreValuesCount = signalSemaphoreValuesCount_;
+ return *this;
+ }
+
+ D3D12FenceSubmitInfoKHR & setPSignalSemaphoreValues( const uint64_t * pSignalSemaphoreValues_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pSignalSemaphoreValues = pSignalSemaphoreValues_;
+ return *this;
+ }
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ D3D12FenceSubmitInfoKHR & setSignalSemaphoreValues(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const & signalSemaphoreValues_ ) VULKAN_HPP_NOEXCEPT
+ {
+ signalSemaphoreValuesCount = static_cast<uint32_t>( signalSemaphoreValues_.size() );
+ pSignalSemaphoreValues = signalSemaphoreValues_.data();
+ return *this;
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkD3D12FenceSubmitInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkD3D12FenceSubmitInfoKHR *>( this );
+ }
+
+ operator VkD3D12FenceSubmitInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkD3D12FenceSubmitInfoKHR *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( D3D12FenceSubmitInfoKHR const & ) const = default;
+# else
+ bool operator==( D3D12FenceSubmitInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( waitSemaphoreValuesCount == rhs.waitSemaphoreValuesCount ) &&
+ ( pWaitSemaphoreValues == rhs.pWaitSemaphoreValues ) &&
+ ( signalSemaphoreValuesCount == rhs.signalSemaphoreValuesCount ) &&
+ ( pSignalSemaphoreValues == rhs.pSignalSemaphoreValues );
+ }
+
+ bool operator!=( D3D12FenceSubmitInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eD3D12FenceSubmitInfoKHR;
+ const void * pNext = {};
+ uint32_t waitSemaphoreValuesCount = {};
+ const uint64_t * pWaitSemaphoreValues = {};
+ uint32_t signalSemaphoreValuesCount = {};
+ const uint64_t * pSignalSemaphoreValues = {};
+ };
+ static_assert( sizeof( D3D12FenceSubmitInfoKHR ) == sizeof( VkD3D12FenceSubmitInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<D3D12FenceSubmitInfoKHR>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eD3D12FenceSubmitInfoKHR>
+ {
+ using Type = D3D12FenceSubmitInfoKHR;
+ };
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+
+ struct DebugMarkerMarkerInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDebugMarkerMarkerInfoEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR_14 DebugMarkerMarkerInfoEXT( const char * pMarkerName_ = {},
+ std::array<float, 4> const & color_ = {} ) VULKAN_HPP_NOEXCEPT
+ : pMarkerName( pMarkerName_ )
+ , color( color_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR_14
+ DebugMarkerMarkerInfoEXT( DebugMarkerMarkerInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DebugMarkerMarkerInfoEXT( VkDebugMarkerMarkerInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DebugMarkerMarkerInfoEXT( *reinterpret_cast<DebugMarkerMarkerInfoEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DebugMarkerMarkerInfoEXT &
+ operator=( DebugMarkerMarkerInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DebugMarkerMarkerInfoEXT & operator=( VkDebugMarkerMarkerInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DebugMarkerMarkerInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ DebugMarkerMarkerInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ DebugMarkerMarkerInfoEXT & setPMarkerName( const char * pMarkerName_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pMarkerName = pMarkerName_;
+ return *this;
+ }
+
+ DebugMarkerMarkerInfoEXT & setColor( std::array<float, 4> color_ ) VULKAN_HPP_NOEXCEPT
+ {
+ color = color_;
+ return *this;
+ }
+
+ operator VkDebugMarkerMarkerInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDebugMarkerMarkerInfoEXT *>( this );
+ }
+
+ operator VkDebugMarkerMarkerInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDebugMarkerMarkerInfoEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DebugMarkerMarkerInfoEXT const & ) const = default;
+#else
+ bool operator==( DebugMarkerMarkerInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( pMarkerName == rhs.pMarkerName ) &&
+ ( color == rhs.color );
+ }
+
+ bool operator!=( DebugMarkerMarkerInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDebugMarkerMarkerInfoEXT;
+ const void * pNext = {};
+ const char * pMarkerName = {};
+ VULKAN_HPP_NAMESPACE::ArrayWrapper1D<float, 4> color = {};
+ };
+ static_assert( sizeof( DebugMarkerMarkerInfoEXT ) == sizeof( VkDebugMarkerMarkerInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DebugMarkerMarkerInfoEXT>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eDebugMarkerMarkerInfoEXT>
+ {
+ using Type = DebugMarkerMarkerInfoEXT;
+ };
+
+ struct DebugMarkerObjectNameInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDebugMarkerObjectNameInfoEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR DebugMarkerObjectNameInfoEXT( VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT objectType_ =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eUnknown,
+ uint64_t object_ = {},
+ const char * pObjectName_ = {} ) VULKAN_HPP_NOEXCEPT
+ : objectType( objectType_ )
+ , object( object_ )
+ , pObjectName( pObjectName_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ DebugMarkerObjectNameInfoEXT( DebugMarkerObjectNameInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DebugMarkerObjectNameInfoEXT( VkDebugMarkerObjectNameInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DebugMarkerObjectNameInfoEXT( *reinterpret_cast<DebugMarkerObjectNameInfoEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DebugMarkerObjectNameInfoEXT &
+ operator=( DebugMarkerObjectNameInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DebugMarkerObjectNameInfoEXT & operator=( VkDebugMarkerObjectNameInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DebugMarkerObjectNameInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ DebugMarkerObjectNameInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ DebugMarkerObjectNameInfoEXT &
+ setObjectType( VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT objectType_ ) VULKAN_HPP_NOEXCEPT
+ {
+ objectType = objectType_;
+ return *this;
+ }
+
+ DebugMarkerObjectNameInfoEXT & setObject( uint64_t object_ ) VULKAN_HPP_NOEXCEPT
+ {
+ object = object_;
+ return *this;
+ }
+
+ DebugMarkerObjectNameInfoEXT & setPObjectName( const char * pObjectName_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pObjectName = pObjectName_;
+ return *this;
+ }
+
+ operator VkDebugMarkerObjectNameInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDebugMarkerObjectNameInfoEXT *>( this );
+ }
+
+ operator VkDebugMarkerObjectNameInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDebugMarkerObjectNameInfoEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DebugMarkerObjectNameInfoEXT const & ) const = default;
+#else
+ bool operator==( DebugMarkerObjectNameInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( objectType == rhs.objectType ) &&
+ ( object == rhs.object ) && ( pObjectName == rhs.pObjectName );
+ }
+
+ bool operator!=( DebugMarkerObjectNameInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDebugMarkerObjectNameInfoEXT;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT objectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eUnknown;
+ uint64_t object = {};
+ const char * pObjectName = {};
+ };
+ static_assert( sizeof( DebugMarkerObjectNameInfoEXT ) == sizeof( VkDebugMarkerObjectNameInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DebugMarkerObjectNameInfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eDebugMarkerObjectNameInfoEXT>
+ {
+ using Type = DebugMarkerObjectNameInfoEXT;
+ };
+
+ struct DebugMarkerObjectTagInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDebugMarkerObjectTagInfoEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR DebugMarkerObjectTagInfoEXT( VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT objectType_ =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eUnknown,
+ uint64_t object_ = {},
+ uint64_t tagName_ = {},
+ size_t tagSize_ = {},
+ const void * pTag_ = {} ) VULKAN_HPP_NOEXCEPT
+ : objectType( objectType_ )
+ , object( object_ )
+ , tagName( tagName_ )
+ , tagSize( tagSize_ )
+ , pTag( pTag_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ DebugMarkerObjectTagInfoEXT( DebugMarkerObjectTagInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DebugMarkerObjectTagInfoEXT( VkDebugMarkerObjectTagInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DebugMarkerObjectTagInfoEXT( *reinterpret_cast<DebugMarkerObjectTagInfoEXT const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ template <typename T>
+ DebugMarkerObjectTagInfoEXT( VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT objectType_,
+ uint64_t object_,
+ uint64_t tagName_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const T> const & tag_ )
+ : objectType( objectType_ )
+ , object( object_ )
+ , tagName( tagName_ )
+ , tagSize( tag_.size() * sizeof( T ) )
+ , pTag( tag_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DebugMarkerObjectTagInfoEXT &
+ operator=( DebugMarkerObjectTagInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DebugMarkerObjectTagInfoEXT & operator=( VkDebugMarkerObjectTagInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DebugMarkerObjectTagInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ DebugMarkerObjectTagInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ DebugMarkerObjectTagInfoEXT &
+ setObjectType( VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT objectType_ ) VULKAN_HPP_NOEXCEPT
+ {
+ objectType = objectType_;
+ return *this;
+ }
+
+ DebugMarkerObjectTagInfoEXT & setObject( uint64_t object_ ) VULKAN_HPP_NOEXCEPT
+ {
+ object = object_;
+ return *this;
+ }
+
+ DebugMarkerObjectTagInfoEXT & setTagName( uint64_t tagName_ ) VULKAN_HPP_NOEXCEPT
+ {
+ tagName = tagName_;
+ return *this;
+ }
+
+ DebugMarkerObjectTagInfoEXT & setTagSize( size_t tagSize_ ) VULKAN_HPP_NOEXCEPT
+ {
+ tagSize = tagSize_;
+ return *this;
+ }
+
+ DebugMarkerObjectTagInfoEXT & setPTag( const void * pTag_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pTag = pTag_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ template <typename T>
+ DebugMarkerObjectTagInfoEXT &
+ setTag( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const T> const & tag_ ) VULKAN_HPP_NOEXCEPT
+ {
+ tagSize = tag_.size() * sizeof( T );
+ pTag = tag_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkDebugMarkerObjectTagInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDebugMarkerObjectTagInfoEXT *>( this );
+ }
+
+ operator VkDebugMarkerObjectTagInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDebugMarkerObjectTagInfoEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DebugMarkerObjectTagInfoEXT const & ) const = default;
+#else
+ bool operator==( DebugMarkerObjectTagInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( objectType == rhs.objectType ) &&
+ ( object == rhs.object ) && ( tagName == rhs.tagName ) && ( tagSize == rhs.tagSize ) &&
+ ( pTag == rhs.pTag );
+ }
+
+ bool operator!=( DebugMarkerObjectTagInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDebugMarkerObjectTagInfoEXT;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT objectType =
+ VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eUnknown;
+ uint64_t object = {};
+ uint64_t tagName = {};
+ size_t tagSize = {};
+ const void * pTag = {};
+ };
+ static_assert( sizeof( DebugMarkerObjectTagInfoEXT ) == sizeof( VkDebugMarkerObjectTagInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DebugMarkerObjectTagInfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eDebugMarkerObjectTagInfoEXT>
+ {
+ using Type = DebugMarkerObjectTagInfoEXT;
+ };
+
+ struct DebugReportCallbackCreateInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDebugReportCallbackCreateInfoEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR DebugReportCallbackCreateInfoEXT( VULKAN_HPP_NAMESPACE::DebugReportFlagsEXT flags_ = {},
+ PFN_vkDebugReportCallbackEXT pfnCallback_ = {},
+ void * pUserData_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , pfnCallback( pfnCallback_ )
+ , pUserData( pUserData_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ DebugReportCallbackCreateInfoEXT( DebugReportCallbackCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DebugReportCallbackCreateInfoEXT( VkDebugReportCallbackCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DebugReportCallbackCreateInfoEXT( *reinterpret_cast<DebugReportCallbackCreateInfoEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DebugReportCallbackCreateInfoEXT &
+ operator=( DebugReportCallbackCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DebugReportCallbackCreateInfoEXT & operator=( VkDebugReportCallbackCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DebugReportCallbackCreateInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ DebugReportCallbackCreateInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ DebugReportCallbackCreateInfoEXT & setFlags( VULKAN_HPP_NAMESPACE::DebugReportFlagsEXT flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ DebugReportCallbackCreateInfoEXT & setPfnCallback( PFN_vkDebugReportCallbackEXT pfnCallback_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pfnCallback = pfnCallback_;
+ return *this;
+ }
+
+ DebugReportCallbackCreateInfoEXT & setPUserData( void * pUserData_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pUserData = pUserData_;
+ return *this;
+ }
+
+ operator VkDebugReportCallbackCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDebugReportCallbackCreateInfoEXT *>( this );
+ }
+
+ operator VkDebugReportCallbackCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDebugReportCallbackCreateInfoEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DebugReportCallbackCreateInfoEXT const & ) const = default;
+#else
+ bool operator==( DebugReportCallbackCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( pfnCallback == rhs.pfnCallback ) && ( pUserData == rhs.pUserData );
+ }
+
+ bool operator!=( DebugReportCallbackCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDebugReportCallbackCreateInfoEXT;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::DebugReportFlagsEXT flags = {};
+ PFN_vkDebugReportCallbackEXT pfnCallback = {};
+ void * pUserData = {};
+ };
+ static_assert( sizeof( DebugReportCallbackCreateInfoEXT ) == sizeof( VkDebugReportCallbackCreateInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DebugReportCallbackCreateInfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eDebugReportCallbackCreateInfoEXT>
+ {
+ using Type = DebugReportCallbackCreateInfoEXT;
+ };
+
+ struct DebugUtilsLabelEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDebugUtilsLabelEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR_14 DebugUtilsLabelEXT( const char * pLabelName_ = {},
+ std::array<float, 4> const & color_ = {} ) VULKAN_HPP_NOEXCEPT
+ : pLabelName( pLabelName_ )
+ , color( color_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR_14 DebugUtilsLabelEXT( DebugUtilsLabelEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DebugUtilsLabelEXT( VkDebugUtilsLabelEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DebugUtilsLabelEXT( *reinterpret_cast<DebugUtilsLabelEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DebugUtilsLabelEXT &
+ operator=( DebugUtilsLabelEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DebugUtilsLabelEXT & operator=( VkDebugUtilsLabelEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DebugUtilsLabelEXT const *>( &rhs );
+ return *this;
+ }
+
+ DebugUtilsLabelEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ DebugUtilsLabelEXT & setPLabelName( const char * pLabelName_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pLabelName = pLabelName_;
+ return *this;
+ }
+
+ DebugUtilsLabelEXT & setColor( std::array<float, 4> color_ ) VULKAN_HPP_NOEXCEPT
+ {
+ color = color_;
+ return *this;
+ }
+
+ operator VkDebugUtilsLabelEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDebugUtilsLabelEXT *>( this );
+ }
+
+ operator VkDebugUtilsLabelEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDebugUtilsLabelEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DebugUtilsLabelEXT const & ) const = default;
+#else
+ bool operator==( DebugUtilsLabelEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( pLabelName == rhs.pLabelName ) &&
+ ( color == rhs.color );
+ }
+
+ bool operator!=( DebugUtilsLabelEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDebugUtilsLabelEXT;
+ const void * pNext = {};
+ const char * pLabelName = {};
+ VULKAN_HPP_NAMESPACE::ArrayWrapper1D<float, 4> color = {};
+ };
+ static_assert( sizeof( DebugUtilsLabelEXT ) == sizeof( VkDebugUtilsLabelEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DebugUtilsLabelEXT>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eDebugUtilsLabelEXT>
+ {
+ using Type = DebugUtilsLabelEXT;
+ };
+
+ struct DebugUtilsObjectNameInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDebugUtilsObjectNameInfoEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR DebugUtilsObjectNameInfoEXT(
+ VULKAN_HPP_NAMESPACE::ObjectType objectType_ = VULKAN_HPP_NAMESPACE::ObjectType::eUnknown,
+ uint64_t objectHandle_ = {},
+ const char * pObjectName_ = {} ) VULKAN_HPP_NOEXCEPT
+ : objectType( objectType_ )
+ , objectHandle( objectHandle_ )
+ , pObjectName( pObjectName_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ DebugUtilsObjectNameInfoEXT( DebugUtilsObjectNameInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DebugUtilsObjectNameInfoEXT( VkDebugUtilsObjectNameInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DebugUtilsObjectNameInfoEXT( *reinterpret_cast<DebugUtilsObjectNameInfoEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DebugUtilsObjectNameInfoEXT &
+ operator=( DebugUtilsObjectNameInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DebugUtilsObjectNameInfoEXT & operator=( VkDebugUtilsObjectNameInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DebugUtilsObjectNameInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ DebugUtilsObjectNameInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ DebugUtilsObjectNameInfoEXT & setObjectType( VULKAN_HPP_NAMESPACE::ObjectType objectType_ ) VULKAN_HPP_NOEXCEPT
+ {
+ objectType = objectType_;
+ return *this;
+ }
+
+ DebugUtilsObjectNameInfoEXT & setObjectHandle( uint64_t objectHandle_ ) VULKAN_HPP_NOEXCEPT
+ {
+ objectHandle = objectHandle_;
+ return *this;
+ }
+
+ DebugUtilsObjectNameInfoEXT & setPObjectName( const char * pObjectName_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pObjectName = pObjectName_;
+ return *this;
+ }
+
+ operator VkDebugUtilsObjectNameInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDebugUtilsObjectNameInfoEXT *>( this );
+ }
+
+ operator VkDebugUtilsObjectNameInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDebugUtilsObjectNameInfoEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DebugUtilsObjectNameInfoEXT const & ) const = default;
+#else
+ bool operator==( DebugUtilsObjectNameInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( objectType == rhs.objectType ) &&
+ ( objectHandle == rhs.objectHandle ) && ( pObjectName == rhs.pObjectName );
+ }
+
+ bool operator!=( DebugUtilsObjectNameInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDebugUtilsObjectNameInfoEXT;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::eUnknown;
+ uint64_t objectHandle = {};
+ const char * pObjectName = {};
+ };
+ static_assert( sizeof( DebugUtilsObjectNameInfoEXT ) == sizeof( VkDebugUtilsObjectNameInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DebugUtilsObjectNameInfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eDebugUtilsObjectNameInfoEXT>
+ {
+ using Type = DebugUtilsObjectNameInfoEXT;
+ };
+
+ struct DebugUtilsMessengerCallbackDataEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eDebugUtilsMessengerCallbackDataEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR_14 DebugUtilsMessengerCallbackDataEXT(
+ VULKAN_HPP_NAMESPACE::DebugUtilsMessengerCallbackDataFlagsEXT flags_ = {},
+ const char * pMessageIdName_ = {},
+ int32_t messageIdNumber_ = {},
+ const char * pMessage_ = {},
+ uint32_t queueLabelCount_ = {},
+ const VULKAN_HPP_NAMESPACE::DebugUtilsLabelEXT * pQueueLabels_ = {},
+ uint32_t cmdBufLabelCount_ = {},
+ const VULKAN_HPP_NAMESPACE::DebugUtilsLabelEXT * pCmdBufLabels_ = {},
+ uint32_t objectCount_ = {},
+ const VULKAN_HPP_NAMESPACE::DebugUtilsObjectNameInfoEXT * pObjects_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , pMessageIdName( pMessageIdName_ )
+ , messageIdNumber( messageIdNumber_ )
+ , pMessage( pMessage_ )
+ , queueLabelCount( queueLabelCount_ )
+ , pQueueLabels( pQueueLabels_ )
+ , cmdBufLabelCount( cmdBufLabelCount_ )
+ , pCmdBufLabels( pCmdBufLabels_ )
+ , objectCount( objectCount_ )
+ , pObjects( pObjects_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR_14 DebugUtilsMessengerCallbackDataEXT( DebugUtilsMessengerCallbackDataEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ DebugUtilsMessengerCallbackDataEXT( VkDebugUtilsMessengerCallbackDataEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DebugUtilsMessengerCallbackDataEXT( *reinterpret_cast<DebugUtilsMessengerCallbackDataEXT const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ DebugUtilsMessengerCallbackDataEXT(
+ VULKAN_HPP_NAMESPACE::DebugUtilsMessengerCallbackDataFlagsEXT flags_,
+ const char * pMessageIdName_,
+ int32_t messageIdNumber_,
+ const char * pMessage_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DebugUtilsLabelEXT> const &
+ queueLabels_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DebugUtilsLabelEXT> const &
+ cmdBufLabels_ = {},
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DebugUtilsObjectNameInfoEXT> const &
+ objects_ = {} )
+ : flags( flags_ )
+ , pMessageIdName( pMessageIdName_ )
+ , messageIdNumber( messageIdNumber_ )
+ , pMessage( pMessage_ )
+ , queueLabelCount( static_cast<uint32_t>( queueLabels_.size() ) )
+ , pQueueLabels( queueLabels_.data() )
+ , cmdBufLabelCount( static_cast<uint32_t>( cmdBufLabels_.size() ) )
+ , pCmdBufLabels( cmdBufLabels_.data() )
+ , objectCount( static_cast<uint32_t>( objects_.size() ) )
+ , pObjects( objects_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DebugUtilsMessengerCallbackDataEXT &
+ operator=( DebugUtilsMessengerCallbackDataEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DebugUtilsMessengerCallbackDataEXT &
+ operator=( VkDebugUtilsMessengerCallbackDataEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DebugUtilsMessengerCallbackDataEXT const *>( &rhs );
+ return *this;
+ }
+
+ DebugUtilsMessengerCallbackDataEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ DebugUtilsMessengerCallbackDataEXT &
+ setFlags( VULKAN_HPP_NAMESPACE::DebugUtilsMessengerCallbackDataFlagsEXT flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ DebugUtilsMessengerCallbackDataEXT & setPMessageIdName( const char * pMessageIdName_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pMessageIdName = pMessageIdName_;
+ return *this;
+ }
+
+ DebugUtilsMessengerCallbackDataEXT & setMessageIdNumber( int32_t messageIdNumber_ ) VULKAN_HPP_NOEXCEPT
+ {
+ messageIdNumber = messageIdNumber_;
+ return *this;
+ }
+
+ DebugUtilsMessengerCallbackDataEXT & setPMessage( const char * pMessage_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pMessage = pMessage_;
+ return *this;
+ }
+
+ DebugUtilsMessengerCallbackDataEXT & setQueueLabelCount( uint32_t queueLabelCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ queueLabelCount = queueLabelCount_;
+ return *this;
+ }
+
+ DebugUtilsMessengerCallbackDataEXT &
+ setPQueueLabels( const VULKAN_HPP_NAMESPACE::DebugUtilsLabelEXT * pQueueLabels_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pQueueLabels = pQueueLabels_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ DebugUtilsMessengerCallbackDataEXT & setQueueLabels(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DebugUtilsLabelEXT> const &
+ queueLabels_ ) VULKAN_HPP_NOEXCEPT
+ {
+ queueLabelCount = static_cast<uint32_t>( queueLabels_.size() );
+ pQueueLabels = queueLabels_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ DebugUtilsMessengerCallbackDataEXT & setCmdBufLabelCount( uint32_t cmdBufLabelCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ cmdBufLabelCount = cmdBufLabelCount_;
+ return *this;
+ }
+
+ DebugUtilsMessengerCallbackDataEXT &
+ setPCmdBufLabels( const VULKAN_HPP_NAMESPACE::DebugUtilsLabelEXT * pCmdBufLabels_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pCmdBufLabels = pCmdBufLabels_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ DebugUtilsMessengerCallbackDataEXT & setCmdBufLabels(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DebugUtilsLabelEXT> const &
+ cmdBufLabels_ ) VULKAN_HPP_NOEXCEPT
+ {
+ cmdBufLabelCount = static_cast<uint32_t>( cmdBufLabels_.size() );
+ pCmdBufLabels = cmdBufLabels_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ DebugUtilsMessengerCallbackDataEXT & setObjectCount( uint32_t objectCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ objectCount = objectCount_;
+ return *this;
+ }
+
+ DebugUtilsMessengerCallbackDataEXT &
+ setPObjects( const VULKAN_HPP_NAMESPACE::DebugUtilsObjectNameInfoEXT * pObjects_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pObjects = pObjects_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ DebugUtilsMessengerCallbackDataEXT & setObjects(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DebugUtilsObjectNameInfoEXT> const &
+ objects_ ) VULKAN_HPP_NOEXCEPT
+ {
+ objectCount = static_cast<uint32_t>( objects_.size() );
+ pObjects = objects_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkDebugUtilsMessengerCallbackDataEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDebugUtilsMessengerCallbackDataEXT *>( this );
+ }
+
+ operator VkDebugUtilsMessengerCallbackDataEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDebugUtilsMessengerCallbackDataEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DebugUtilsMessengerCallbackDataEXT const & ) const = default;
+#else
+ bool operator==( DebugUtilsMessengerCallbackDataEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( pMessageIdName == rhs.pMessageIdName ) && ( messageIdNumber == rhs.messageIdNumber ) &&
+ ( pMessage == rhs.pMessage ) && ( queueLabelCount == rhs.queueLabelCount ) &&
+ ( pQueueLabels == rhs.pQueueLabels ) && ( cmdBufLabelCount == rhs.cmdBufLabelCount ) &&
+ ( pCmdBufLabels == rhs.pCmdBufLabels ) && ( objectCount == rhs.objectCount ) &&
+ ( pObjects == rhs.pObjects );
+ }
+
+ bool operator!=( DebugUtilsMessengerCallbackDataEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDebugUtilsMessengerCallbackDataEXT;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::DebugUtilsMessengerCallbackDataFlagsEXT flags = {};
+ const char * pMessageIdName = {};
+ int32_t messageIdNumber = {};
+ const char * pMessage = {};
+ uint32_t queueLabelCount = {};
+ const VULKAN_HPP_NAMESPACE::DebugUtilsLabelEXT * pQueueLabels = {};
+ uint32_t cmdBufLabelCount = {};
+ const VULKAN_HPP_NAMESPACE::DebugUtilsLabelEXT * pCmdBufLabels = {};
+ uint32_t objectCount = {};
+ const VULKAN_HPP_NAMESPACE::DebugUtilsObjectNameInfoEXT * pObjects = {};
+ };
+ static_assert( sizeof( DebugUtilsMessengerCallbackDataEXT ) == sizeof( VkDebugUtilsMessengerCallbackDataEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DebugUtilsMessengerCallbackDataEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eDebugUtilsMessengerCallbackDataEXT>
+ {
+ using Type = DebugUtilsMessengerCallbackDataEXT;
+ };
+
+ struct DebugUtilsMessengerCreateInfoEXT
+ {
+ static const bool allowDuplicate = true;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDebugUtilsMessengerCreateInfoEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ DebugUtilsMessengerCreateInfoEXT( VULKAN_HPP_NAMESPACE::DebugUtilsMessengerCreateFlagsEXT flags_ = {},
+ VULKAN_HPP_NAMESPACE::DebugUtilsMessageSeverityFlagsEXT messageSeverity_ = {},
+ VULKAN_HPP_NAMESPACE::DebugUtilsMessageTypeFlagsEXT messageType_ = {},
+ PFN_vkDebugUtilsMessengerCallbackEXT pfnUserCallback_ = {},
+ void * pUserData_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , messageSeverity( messageSeverity_ )
+ , messageType( messageType_ )
+ , pfnUserCallback( pfnUserCallback_ )
+ , pUserData( pUserData_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ DebugUtilsMessengerCreateInfoEXT( DebugUtilsMessengerCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DebugUtilsMessengerCreateInfoEXT( VkDebugUtilsMessengerCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DebugUtilsMessengerCreateInfoEXT( *reinterpret_cast<DebugUtilsMessengerCreateInfoEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DebugUtilsMessengerCreateInfoEXT &
+ operator=( DebugUtilsMessengerCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DebugUtilsMessengerCreateInfoEXT & operator=( VkDebugUtilsMessengerCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DebugUtilsMessengerCreateInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ DebugUtilsMessengerCreateInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ DebugUtilsMessengerCreateInfoEXT &
+ setFlags( VULKAN_HPP_NAMESPACE::DebugUtilsMessengerCreateFlagsEXT flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ DebugUtilsMessengerCreateInfoEXT &
+ setMessageSeverity( VULKAN_HPP_NAMESPACE::DebugUtilsMessageSeverityFlagsEXT messageSeverity_ ) VULKAN_HPP_NOEXCEPT
+ {
+ messageSeverity = messageSeverity_;
+ return *this;
+ }
+
+ DebugUtilsMessengerCreateInfoEXT &
+ setMessageType( VULKAN_HPP_NAMESPACE::DebugUtilsMessageTypeFlagsEXT messageType_ ) VULKAN_HPP_NOEXCEPT
+ {
+ messageType = messageType_;
+ return *this;
+ }
+
+ DebugUtilsMessengerCreateInfoEXT &
+ setPfnUserCallback( PFN_vkDebugUtilsMessengerCallbackEXT pfnUserCallback_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pfnUserCallback = pfnUserCallback_;
+ return *this;
+ }
+
+ DebugUtilsMessengerCreateInfoEXT & setPUserData( void * pUserData_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pUserData = pUserData_;
+ return *this;
+ }
+
+ operator VkDebugUtilsMessengerCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDebugUtilsMessengerCreateInfoEXT *>( this );
+ }
+
+ operator VkDebugUtilsMessengerCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDebugUtilsMessengerCreateInfoEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DebugUtilsMessengerCreateInfoEXT const & ) const = default;
+#else
+ bool operator==( DebugUtilsMessengerCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( messageSeverity == rhs.messageSeverity ) && ( messageType == rhs.messageType ) &&
+ ( pfnUserCallback == rhs.pfnUserCallback ) && ( pUserData == rhs.pUserData );
+ }
+
+ bool operator!=( DebugUtilsMessengerCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDebugUtilsMessengerCreateInfoEXT;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::DebugUtilsMessengerCreateFlagsEXT flags = {};
+ VULKAN_HPP_NAMESPACE::DebugUtilsMessageSeverityFlagsEXT messageSeverity = {};
+ VULKAN_HPP_NAMESPACE::DebugUtilsMessageTypeFlagsEXT messageType = {};
+ PFN_vkDebugUtilsMessengerCallbackEXT pfnUserCallback = {};
+ void * pUserData = {};
+ };
+ static_assert( sizeof( DebugUtilsMessengerCreateInfoEXT ) == sizeof( VkDebugUtilsMessengerCreateInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DebugUtilsMessengerCreateInfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eDebugUtilsMessengerCreateInfoEXT>
+ {
+ using Type = DebugUtilsMessengerCreateInfoEXT;
+ };
+
+ struct DebugUtilsObjectTagInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDebugUtilsObjectTagInfoEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR DebugUtilsObjectTagInfoEXT(
+ VULKAN_HPP_NAMESPACE::ObjectType objectType_ = VULKAN_HPP_NAMESPACE::ObjectType::eUnknown,
+ uint64_t objectHandle_ = {},
+ uint64_t tagName_ = {},
+ size_t tagSize_ = {},
+ const void * pTag_ = {} ) VULKAN_HPP_NOEXCEPT
+ : objectType( objectType_ )
+ , objectHandle( objectHandle_ )
+ , tagName( tagName_ )
+ , tagSize( tagSize_ )
+ , pTag( pTag_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ DebugUtilsObjectTagInfoEXT( DebugUtilsObjectTagInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DebugUtilsObjectTagInfoEXT( VkDebugUtilsObjectTagInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DebugUtilsObjectTagInfoEXT( *reinterpret_cast<DebugUtilsObjectTagInfoEXT const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ template <typename T>
+ DebugUtilsObjectTagInfoEXT( VULKAN_HPP_NAMESPACE::ObjectType objectType_,
+ uint64_t objectHandle_,
+ uint64_t tagName_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const T> const & tag_ )
+ : objectType( objectType_ )
+ , objectHandle( objectHandle_ )
+ , tagName( tagName_ )
+ , tagSize( tag_.size() * sizeof( T ) )
+ , pTag( tag_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DebugUtilsObjectTagInfoEXT &
+ operator=( DebugUtilsObjectTagInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DebugUtilsObjectTagInfoEXT & operator=( VkDebugUtilsObjectTagInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DebugUtilsObjectTagInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ DebugUtilsObjectTagInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ DebugUtilsObjectTagInfoEXT & setObjectType( VULKAN_HPP_NAMESPACE::ObjectType objectType_ ) VULKAN_HPP_NOEXCEPT
+ {
+ objectType = objectType_;
+ return *this;
+ }
+
+ DebugUtilsObjectTagInfoEXT & setObjectHandle( uint64_t objectHandle_ ) VULKAN_HPP_NOEXCEPT
+ {
+ objectHandle = objectHandle_;
+ return *this;
+ }
+
+ DebugUtilsObjectTagInfoEXT & setTagName( uint64_t tagName_ ) VULKAN_HPP_NOEXCEPT
+ {
+ tagName = tagName_;
+ return *this;
+ }
+
+ DebugUtilsObjectTagInfoEXT & setTagSize( size_t tagSize_ ) VULKAN_HPP_NOEXCEPT
+ {
+ tagSize = tagSize_;
+ return *this;
+ }
+
+ DebugUtilsObjectTagInfoEXT & setPTag( const void * pTag_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pTag = pTag_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ template <typename T>
+ DebugUtilsObjectTagInfoEXT &
+ setTag( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const T> const & tag_ ) VULKAN_HPP_NOEXCEPT
+ {
+ tagSize = tag_.size() * sizeof( T );
+ pTag = tag_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkDebugUtilsObjectTagInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDebugUtilsObjectTagInfoEXT *>( this );
+ }
+
+ operator VkDebugUtilsObjectTagInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDebugUtilsObjectTagInfoEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DebugUtilsObjectTagInfoEXT const & ) const = default;
+#else
+ bool operator==( DebugUtilsObjectTagInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( objectType == rhs.objectType ) &&
+ ( objectHandle == rhs.objectHandle ) && ( tagName == rhs.tagName ) && ( tagSize == rhs.tagSize ) &&
+ ( pTag == rhs.pTag );
+ }
+
+ bool operator!=( DebugUtilsObjectTagInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDebugUtilsObjectTagInfoEXT;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::eUnknown;
+ uint64_t objectHandle = {};
+ uint64_t tagName = {};
+ size_t tagSize = {};
+ const void * pTag = {};
+ };
+ static_assert( sizeof( DebugUtilsObjectTagInfoEXT ) == sizeof( VkDebugUtilsObjectTagInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DebugUtilsObjectTagInfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eDebugUtilsObjectTagInfoEXT>
+ {
+ using Type = DebugUtilsObjectTagInfoEXT;
+ };
+
+ struct DedicatedAllocationBufferCreateInfoNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eDedicatedAllocationBufferCreateInfoNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR DedicatedAllocationBufferCreateInfoNV( VULKAN_HPP_NAMESPACE::Bool32 dedicatedAllocation_ = {} )
+ VULKAN_HPP_NOEXCEPT : dedicatedAllocation( dedicatedAllocation_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR DedicatedAllocationBufferCreateInfoNV( DedicatedAllocationBufferCreateInfoNV const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ DedicatedAllocationBufferCreateInfoNV( VkDedicatedAllocationBufferCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DedicatedAllocationBufferCreateInfoNV(
+ *reinterpret_cast<DedicatedAllocationBufferCreateInfoNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DedicatedAllocationBufferCreateInfoNV &
+ operator=( DedicatedAllocationBufferCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DedicatedAllocationBufferCreateInfoNV &
+ operator=( VkDedicatedAllocationBufferCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DedicatedAllocationBufferCreateInfoNV const *>( &rhs );
+ return *this;
+ }
+
+ DedicatedAllocationBufferCreateInfoNV & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ DedicatedAllocationBufferCreateInfoNV &
+ setDedicatedAllocation( VULKAN_HPP_NAMESPACE::Bool32 dedicatedAllocation_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dedicatedAllocation = dedicatedAllocation_;
+ return *this;
+ }
+
+ operator VkDedicatedAllocationBufferCreateInfoNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDedicatedAllocationBufferCreateInfoNV *>( this );
+ }
+
+ operator VkDedicatedAllocationBufferCreateInfoNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDedicatedAllocationBufferCreateInfoNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DedicatedAllocationBufferCreateInfoNV const & ) const = default;
+#else
+ bool operator==( DedicatedAllocationBufferCreateInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( dedicatedAllocation == rhs.dedicatedAllocation );
+ }
+
+ bool operator!=( DedicatedAllocationBufferCreateInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDedicatedAllocationBufferCreateInfoNV;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 dedicatedAllocation = {};
+ };
+ static_assert( sizeof( DedicatedAllocationBufferCreateInfoNV ) == sizeof( VkDedicatedAllocationBufferCreateInfoNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DedicatedAllocationBufferCreateInfoNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eDedicatedAllocationBufferCreateInfoNV>
+ {
+ using Type = DedicatedAllocationBufferCreateInfoNV;
+ };
+
+ struct DedicatedAllocationImageCreateInfoNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eDedicatedAllocationImageCreateInfoNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ DedicatedAllocationImageCreateInfoNV( VULKAN_HPP_NAMESPACE::Bool32 dedicatedAllocation_ = {} ) VULKAN_HPP_NOEXCEPT
+ : dedicatedAllocation( dedicatedAllocation_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR DedicatedAllocationImageCreateInfoNV( DedicatedAllocationImageCreateInfoNV const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ DedicatedAllocationImageCreateInfoNV( VkDedicatedAllocationImageCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DedicatedAllocationImageCreateInfoNV( *reinterpret_cast<DedicatedAllocationImageCreateInfoNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DedicatedAllocationImageCreateInfoNV &
+ operator=( DedicatedAllocationImageCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DedicatedAllocationImageCreateInfoNV &
+ operator=( VkDedicatedAllocationImageCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DedicatedAllocationImageCreateInfoNV const *>( &rhs );
+ return *this;
+ }
+
+ DedicatedAllocationImageCreateInfoNV & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ DedicatedAllocationImageCreateInfoNV &
+ setDedicatedAllocation( VULKAN_HPP_NAMESPACE::Bool32 dedicatedAllocation_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dedicatedAllocation = dedicatedAllocation_;
+ return *this;
+ }
+
+ operator VkDedicatedAllocationImageCreateInfoNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDedicatedAllocationImageCreateInfoNV *>( this );
+ }
+
+ operator VkDedicatedAllocationImageCreateInfoNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDedicatedAllocationImageCreateInfoNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DedicatedAllocationImageCreateInfoNV const & ) const = default;
+#else
+ bool operator==( DedicatedAllocationImageCreateInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( dedicatedAllocation == rhs.dedicatedAllocation );
+ }
+
+ bool operator!=( DedicatedAllocationImageCreateInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDedicatedAllocationImageCreateInfoNV;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 dedicatedAllocation = {};
+ };
+ static_assert( sizeof( DedicatedAllocationImageCreateInfoNV ) == sizeof( VkDedicatedAllocationImageCreateInfoNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DedicatedAllocationImageCreateInfoNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eDedicatedAllocationImageCreateInfoNV>
+ {
+ using Type = DedicatedAllocationImageCreateInfoNV;
+ };
+
+ struct DedicatedAllocationMemoryAllocateInfoNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eDedicatedAllocationMemoryAllocateInfoNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ DedicatedAllocationMemoryAllocateInfoNV( VULKAN_HPP_NAMESPACE::Image image_ = {},
+ VULKAN_HPP_NAMESPACE::Buffer buffer_ = {} ) VULKAN_HPP_NOEXCEPT
+ : image( image_ )
+ , buffer( buffer_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR DedicatedAllocationMemoryAllocateInfoNV( DedicatedAllocationMemoryAllocateInfoNV const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ DedicatedAllocationMemoryAllocateInfoNV( VkDedicatedAllocationMemoryAllocateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DedicatedAllocationMemoryAllocateInfoNV(
+ *reinterpret_cast<DedicatedAllocationMemoryAllocateInfoNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DedicatedAllocationMemoryAllocateInfoNV &
+ operator=( DedicatedAllocationMemoryAllocateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DedicatedAllocationMemoryAllocateInfoNV &
+ operator=( VkDedicatedAllocationMemoryAllocateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DedicatedAllocationMemoryAllocateInfoNV const *>( &rhs );
+ return *this;
+ }
+
+ DedicatedAllocationMemoryAllocateInfoNV & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ DedicatedAllocationMemoryAllocateInfoNV & setImage( VULKAN_HPP_NAMESPACE::Image image_ ) VULKAN_HPP_NOEXCEPT
+ {
+ image = image_;
+ return *this;
+ }
+
+ DedicatedAllocationMemoryAllocateInfoNV & setBuffer( VULKAN_HPP_NAMESPACE::Buffer buffer_ ) VULKAN_HPP_NOEXCEPT
+ {
+ buffer = buffer_;
+ return *this;
+ }
+
+ operator VkDedicatedAllocationMemoryAllocateInfoNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDedicatedAllocationMemoryAllocateInfoNV *>( this );
+ }
+
+ operator VkDedicatedAllocationMemoryAllocateInfoNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDedicatedAllocationMemoryAllocateInfoNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DedicatedAllocationMemoryAllocateInfoNV const & ) const = default;
+#else
+ bool operator==( DedicatedAllocationMemoryAllocateInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( image == rhs.image ) && ( buffer == rhs.buffer );
+ }
+
+ bool operator!=( DedicatedAllocationMemoryAllocateInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDedicatedAllocationMemoryAllocateInfoNV;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Image image = {};
+ VULKAN_HPP_NAMESPACE::Buffer buffer = {};
+ };
+ static_assert( sizeof( DedicatedAllocationMemoryAllocateInfoNV ) ==
+ sizeof( VkDedicatedAllocationMemoryAllocateInfoNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DedicatedAllocationMemoryAllocateInfoNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eDedicatedAllocationMemoryAllocateInfoNV>
+ {
+ using Type = DedicatedAllocationMemoryAllocateInfoNV;
+ };
+
+ struct MemoryBarrier2KHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMemoryBarrier2KHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ MemoryBarrier2KHR( VULKAN_HPP_NAMESPACE::PipelineStageFlags2KHR srcStageMask_ = {},
+ VULKAN_HPP_NAMESPACE::AccessFlags2KHR srcAccessMask_ = {},
+ VULKAN_HPP_NAMESPACE::PipelineStageFlags2KHR dstStageMask_ = {},
+ VULKAN_HPP_NAMESPACE::AccessFlags2KHR dstAccessMask_ = {} ) VULKAN_HPP_NOEXCEPT
+ : srcStageMask( srcStageMask_ )
+ , srcAccessMask( srcAccessMask_ )
+ , dstStageMask( dstStageMask_ )
+ , dstAccessMask( dstAccessMask_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR MemoryBarrier2KHR( MemoryBarrier2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ MemoryBarrier2KHR( VkMemoryBarrier2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : MemoryBarrier2KHR( *reinterpret_cast<MemoryBarrier2KHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 MemoryBarrier2KHR &
+ operator=( MemoryBarrier2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ MemoryBarrier2KHR & operator=( VkMemoryBarrier2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MemoryBarrier2KHR const *>( &rhs );
+ return *this;
+ }
+
+ MemoryBarrier2KHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ MemoryBarrier2KHR &
+ setSrcStageMask( VULKAN_HPP_NAMESPACE::PipelineStageFlags2KHR srcStageMask_ ) VULKAN_HPP_NOEXCEPT
+ {
+ srcStageMask = srcStageMask_;
+ return *this;
+ }
+
+ MemoryBarrier2KHR & setSrcAccessMask( VULKAN_HPP_NAMESPACE::AccessFlags2KHR srcAccessMask_ ) VULKAN_HPP_NOEXCEPT
+ {
+ srcAccessMask = srcAccessMask_;
+ return *this;
+ }
+
+ MemoryBarrier2KHR &
+ setDstStageMask( VULKAN_HPP_NAMESPACE::PipelineStageFlags2KHR dstStageMask_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstStageMask = dstStageMask_;
+ return *this;
+ }
+
+ MemoryBarrier2KHR & setDstAccessMask( VULKAN_HPP_NAMESPACE::AccessFlags2KHR dstAccessMask_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstAccessMask = dstAccessMask_;
+ return *this;
+ }
+
+ operator VkMemoryBarrier2KHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkMemoryBarrier2KHR *>( this );
+ }
+
+ operator VkMemoryBarrier2KHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkMemoryBarrier2KHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( MemoryBarrier2KHR const & ) const = default;
+#else
+ bool operator==( MemoryBarrier2KHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( srcStageMask == rhs.srcStageMask ) &&
+ ( srcAccessMask == rhs.srcAccessMask ) && ( dstStageMask == rhs.dstStageMask ) &&
+ ( dstAccessMask == rhs.dstAccessMask );
+ }
+
+ bool operator!=( MemoryBarrier2KHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMemoryBarrier2KHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::PipelineStageFlags2KHR srcStageMask = {};
+ VULKAN_HPP_NAMESPACE::AccessFlags2KHR srcAccessMask = {};
+ VULKAN_HPP_NAMESPACE::PipelineStageFlags2KHR dstStageMask = {};
+ VULKAN_HPP_NAMESPACE::AccessFlags2KHR dstAccessMask = {};
+ };
+ static_assert( sizeof( MemoryBarrier2KHR ) == sizeof( VkMemoryBarrier2KHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<MemoryBarrier2KHR>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eMemoryBarrier2KHR>
+ {
+ using Type = MemoryBarrier2KHR;
+ };
+
+ struct ImageSubresourceRange
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR ImageSubresourceRange( VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask_ = {},
+ uint32_t baseMipLevel_ = {},
+ uint32_t levelCount_ = {},
+ uint32_t baseArrayLayer_ = {},
+ uint32_t layerCount_ = {} ) VULKAN_HPP_NOEXCEPT
+ : aspectMask( aspectMask_ )
+ , baseMipLevel( baseMipLevel_ )
+ , levelCount( levelCount_ )
+ , baseArrayLayer( baseArrayLayer_ )
+ , layerCount( layerCount_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR ImageSubresourceRange( ImageSubresourceRange const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImageSubresourceRange( VkImageSubresourceRange const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ImageSubresourceRange( *reinterpret_cast<ImageSubresourceRange const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ImageSubresourceRange &
+ operator=( ImageSubresourceRange const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImageSubresourceRange & operator=( VkImageSubresourceRange const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageSubresourceRange const *>( &rhs );
+ return *this;
+ }
+
+ ImageSubresourceRange & setAspectMask( VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask_ ) VULKAN_HPP_NOEXCEPT
+ {
+ aspectMask = aspectMask_;
+ return *this;
+ }
+
+ ImageSubresourceRange & setBaseMipLevel( uint32_t baseMipLevel_ ) VULKAN_HPP_NOEXCEPT
+ {
+ baseMipLevel = baseMipLevel_;
+ return *this;
+ }
+
+ ImageSubresourceRange & setLevelCount( uint32_t levelCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ levelCount = levelCount_;
+ return *this;
+ }
+
+ ImageSubresourceRange & setBaseArrayLayer( uint32_t baseArrayLayer_ ) VULKAN_HPP_NOEXCEPT
+ {
+ baseArrayLayer = baseArrayLayer_;
+ return *this;
+ }
+
+ ImageSubresourceRange & setLayerCount( uint32_t layerCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ layerCount = layerCount_;
+ return *this;
+ }
+
+ operator VkImageSubresourceRange const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkImageSubresourceRange *>( this );
+ }
+
+ operator VkImageSubresourceRange &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkImageSubresourceRange *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ImageSubresourceRange const & ) const = default;
+#else
+ bool operator==( ImageSubresourceRange const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( aspectMask == rhs.aspectMask ) && ( baseMipLevel == rhs.baseMipLevel ) &&
+ ( levelCount == rhs.levelCount ) && ( baseArrayLayer == rhs.baseArrayLayer ) &&
+ ( layerCount == rhs.layerCount );
+ }
+
+ bool operator!=( ImageSubresourceRange const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask = {};
+ uint32_t baseMipLevel = {};
+ uint32_t levelCount = {};
+ uint32_t baseArrayLayer = {};
+ uint32_t layerCount = {};
+ };
+ static_assert( sizeof( ImageSubresourceRange ) == sizeof( VkImageSubresourceRange ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ImageSubresourceRange>::value, "struct wrapper is not a standard layout!" );
+
+ struct ImageMemoryBarrier2KHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImageMemoryBarrier2KHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR ImageMemoryBarrier2KHR(
+ VULKAN_HPP_NAMESPACE::PipelineStageFlags2KHR srcStageMask_ = {},
+ VULKAN_HPP_NAMESPACE::AccessFlags2KHR srcAccessMask_ = {},
+ VULKAN_HPP_NAMESPACE::PipelineStageFlags2KHR dstStageMask_ = {},
+ VULKAN_HPP_NAMESPACE::AccessFlags2KHR dstAccessMask_ = {},
+ VULKAN_HPP_NAMESPACE::ImageLayout oldLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined,
+ VULKAN_HPP_NAMESPACE::ImageLayout newLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined,
+ uint32_t srcQueueFamilyIndex_ = {},
+ uint32_t dstQueueFamilyIndex_ = {},
+ VULKAN_HPP_NAMESPACE::Image image_ = {},
+ VULKAN_HPP_NAMESPACE::ImageSubresourceRange subresourceRange_ = {} ) VULKAN_HPP_NOEXCEPT
+ : srcStageMask( srcStageMask_ )
+ , srcAccessMask( srcAccessMask_ )
+ , dstStageMask( dstStageMask_ )
+ , dstAccessMask( dstAccessMask_ )
+ , oldLayout( oldLayout_ )
+ , newLayout( newLayout_ )
+ , srcQueueFamilyIndex( srcQueueFamilyIndex_ )
+ , dstQueueFamilyIndex( dstQueueFamilyIndex_ )
+ , image( image_ )
+ , subresourceRange( subresourceRange_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR ImageMemoryBarrier2KHR( ImageMemoryBarrier2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImageMemoryBarrier2KHR( VkImageMemoryBarrier2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ImageMemoryBarrier2KHR( *reinterpret_cast<ImageMemoryBarrier2KHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ImageMemoryBarrier2KHR &
+ operator=( ImageMemoryBarrier2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImageMemoryBarrier2KHR & operator=( VkImageMemoryBarrier2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageMemoryBarrier2KHR const *>( &rhs );
+ return *this;
+ }
+
+ ImageMemoryBarrier2KHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ ImageMemoryBarrier2KHR &
+ setSrcStageMask( VULKAN_HPP_NAMESPACE::PipelineStageFlags2KHR srcStageMask_ ) VULKAN_HPP_NOEXCEPT
+ {
+ srcStageMask = srcStageMask_;
+ return *this;
+ }
+
+ ImageMemoryBarrier2KHR &
+ setSrcAccessMask( VULKAN_HPP_NAMESPACE::AccessFlags2KHR srcAccessMask_ ) VULKAN_HPP_NOEXCEPT
+ {
+ srcAccessMask = srcAccessMask_;
+ return *this;
+ }
+
+ ImageMemoryBarrier2KHR &
+ setDstStageMask( VULKAN_HPP_NAMESPACE::PipelineStageFlags2KHR dstStageMask_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstStageMask = dstStageMask_;
+ return *this;
+ }
+
+ ImageMemoryBarrier2KHR &
+ setDstAccessMask( VULKAN_HPP_NAMESPACE::AccessFlags2KHR dstAccessMask_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstAccessMask = dstAccessMask_;
+ return *this;
+ }
+
+ ImageMemoryBarrier2KHR & setOldLayout( VULKAN_HPP_NAMESPACE::ImageLayout oldLayout_ ) VULKAN_HPP_NOEXCEPT
+ {
+ oldLayout = oldLayout_;
+ return *this;
+ }
+
+ ImageMemoryBarrier2KHR & setNewLayout( VULKAN_HPP_NAMESPACE::ImageLayout newLayout_ ) VULKAN_HPP_NOEXCEPT
+ {
+ newLayout = newLayout_;
+ return *this;
+ }
+
+ ImageMemoryBarrier2KHR & setSrcQueueFamilyIndex( uint32_t srcQueueFamilyIndex_ ) VULKAN_HPP_NOEXCEPT
+ {
+ srcQueueFamilyIndex = srcQueueFamilyIndex_;
+ return *this;
+ }
+
+ ImageMemoryBarrier2KHR & setDstQueueFamilyIndex( uint32_t dstQueueFamilyIndex_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstQueueFamilyIndex = dstQueueFamilyIndex_;
+ return *this;
+ }
+
+ ImageMemoryBarrier2KHR & setImage( VULKAN_HPP_NAMESPACE::Image image_ ) VULKAN_HPP_NOEXCEPT
+ {
+ image = image_;
+ return *this;
+ }
+
+ ImageMemoryBarrier2KHR &
+ setSubresourceRange( VULKAN_HPP_NAMESPACE::ImageSubresourceRange const & subresourceRange_ ) VULKAN_HPP_NOEXCEPT
+ {
+ subresourceRange = subresourceRange_;
+ return *this;
+ }
+
+ operator VkImageMemoryBarrier2KHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkImageMemoryBarrier2KHR *>( this );
+ }
+
+ operator VkImageMemoryBarrier2KHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkImageMemoryBarrier2KHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ImageMemoryBarrier2KHR const & ) const = default;
+#else
+ bool operator==( ImageMemoryBarrier2KHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( srcStageMask == rhs.srcStageMask ) &&
+ ( srcAccessMask == rhs.srcAccessMask ) && ( dstStageMask == rhs.dstStageMask ) &&
+ ( dstAccessMask == rhs.dstAccessMask ) && ( oldLayout == rhs.oldLayout ) &&
+ ( newLayout == rhs.newLayout ) && ( srcQueueFamilyIndex == rhs.srcQueueFamilyIndex ) &&
+ ( dstQueueFamilyIndex == rhs.dstQueueFamilyIndex ) && ( image == rhs.image ) &&
+ ( subresourceRange == rhs.subresourceRange );
+ }
+
+ bool operator!=( ImageMemoryBarrier2KHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageMemoryBarrier2KHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::PipelineStageFlags2KHR srcStageMask = {};
+ VULKAN_HPP_NAMESPACE::AccessFlags2KHR srcAccessMask = {};
+ VULKAN_HPP_NAMESPACE::PipelineStageFlags2KHR dstStageMask = {};
+ VULKAN_HPP_NAMESPACE::AccessFlags2KHR dstAccessMask = {};
+ VULKAN_HPP_NAMESPACE::ImageLayout oldLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
+ VULKAN_HPP_NAMESPACE::ImageLayout newLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
+ uint32_t srcQueueFamilyIndex = {};
+ uint32_t dstQueueFamilyIndex = {};
+ VULKAN_HPP_NAMESPACE::Image image = {};
+ VULKAN_HPP_NAMESPACE::ImageSubresourceRange subresourceRange = {};
+ };
+ static_assert( sizeof( ImageMemoryBarrier2KHR ) == sizeof( VkImageMemoryBarrier2KHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ImageMemoryBarrier2KHR>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eImageMemoryBarrier2KHR>
+ {
+ using Type = ImageMemoryBarrier2KHR;
+ };
+
+ struct DependencyInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDependencyInfoKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR DependencyInfoKHR(
+ VULKAN_HPP_NAMESPACE::DependencyFlags dependencyFlags_ = {},
+ uint32_t memoryBarrierCount_ = {},
+ const VULKAN_HPP_NAMESPACE::MemoryBarrier2KHR * pMemoryBarriers_ = {},
+ uint32_t bufferMemoryBarrierCount_ = {},
+ const VULKAN_HPP_NAMESPACE::BufferMemoryBarrier2KHR * pBufferMemoryBarriers_ = {},
+ uint32_t imageMemoryBarrierCount_ = {},
+ const VULKAN_HPP_NAMESPACE::ImageMemoryBarrier2KHR * pImageMemoryBarriers_ = {} ) VULKAN_HPP_NOEXCEPT
+ : dependencyFlags( dependencyFlags_ )
+ , memoryBarrierCount( memoryBarrierCount_ )
+ , pMemoryBarriers( pMemoryBarriers_ )
+ , bufferMemoryBarrierCount( bufferMemoryBarrierCount_ )
+ , pBufferMemoryBarriers( pBufferMemoryBarriers_ )
+ , imageMemoryBarrierCount( imageMemoryBarrierCount_ )
+ , pImageMemoryBarriers( pImageMemoryBarriers_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR DependencyInfoKHR( DependencyInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DependencyInfoKHR( VkDependencyInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DependencyInfoKHR( *reinterpret_cast<DependencyInfoKHR const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ DependencyInfoKHR(
+ VULKAN_HPP_NAMESPACE::DependencyFlags dependencyFlags_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::MemoryBarrier2KHR> const &
+ memoryBarriers_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::BufferMemoryBarrier2KHR> const &
+ bufferMemoryBarriers_ = {},
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ImageMemoryBarrier2KHR> const &
+ imageMemoryBarriers_ = {} )
+ : dependencyFlags( dependencyFlags_ )
+ , memoryBarrierCount( static_cast<uint32_t>( memoryBarriers_.size() ) )
+ , pMemoryBarriers( memoryBarriers_.data() )
+ , bufferMemoryBarrierCount( static_cast<uint32_t>( bufferMemoryBarriers_.size() ) )
+ , pBufferMemoryBarriers( bufferMemoryBarriers_.data() )
+ , imageMemoryBarrierCount( static_cast<uint32_t>( imageMemoryBarriers_.size() ) )
+ , pImageMemoryBarriers( imageMemoryBarriers_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DependencyInfoKHR &
+ operator=( DependencyInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DependencyInfoKHR & operator=( VkDependencyInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DependencyInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ DependencyInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ DependencyInfoKHR & setDependencyFlags( VULKAN_HPP_NAMESPACE::DependencyFlags dependencyFlags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dependencyFlags = dependencyFlags_;
+ return *this;
+ }
+
+ DependencyInfoKHR & setMemoryBarrierCount( uint32_t memoryBarrierCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ memoryBarrierCount = memoryBarrierCount_;
+ return *this;
+ }
+
+ DependencyInfoKHR &
+ setPMemoryBarriers( const VULKAN_HPP_NAMESPACE::MemoryBarrier2KHR * pMemoryBarriers_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pMemoryBarriers = pMemoryBarriers_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ DependencyInfoKHR & setMemoryBarriers(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::MemoryBarrier2KHR> const &
+ memoryBarriers_ ) VULKAN_HPP_NOEXCEPT
+ {
+ memoryBarrierCount = static_cast<uint32_t>( memoryBarriers_.size() );
+ pMemoryBarriers = memoryBarriers_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ DependencyInfoKHR & setBufferMemoryBarrierCount( uint32_t bufferMemoryBarrierCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ bufferMemoryBarrierCount = bufferMemoryBarrierCount_;
+ return *this;
+ }
+
+ DependencyInfoKHR & setPBufferMemoryBarriers(
+ const VULKAN_HPP_NAMESPACE::BufferMemoryBarrier2KHR * pBufferMemoryBarriers_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pBufferMemoryBarriers = pBufferMemoryBarriers_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ DependencyInfoKHR & setBufferMemoryBarriers(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::BufferMemoryBarrier2KHR> const &
+ bufferMemoryBarriers_ ) VULKAN_HPP_NOEXCEPT
+ {
+ bufferMemoryBarrierCount = static_cast<uint32_t>( bufferMemoryBarriers_.size() );
+ pBufferMemoryBarriers = bufferMemoryBarriers_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ DependencyInfoKHR & setImageMemoryBarrierCount( uint32_t imageMemoryBarrierCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ imageMemoryBarrierCount = imageMemoryBarrierCount_;
+ return *this;
+ }
+
+ DependencyInfoKHR & setPImageMemoryBarriers(
+ const VULKAN_HPP_NAMESPACE::ImageMemoryBarrier2KHR * pImageMemoryBarriers_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pImageMemoryBarriers = pImageMemoryBarriers_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ DependencyInfoKHR & setImageMemoryBarriers(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ImageMemoryBarrier2KHR> const &
+ imageMemoryBarriers_ ) VULKAN_HPP_NOEXCEPT
+ {
+ imageMemoryBarrierCount = static_cast<uint32_t>( imageMemoryBarriers_.size() );
+ pImageMemoryBarriers = imageMemoryBarriers_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkDependencyInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDependencyInfoKHR *>( this );
+ }
+
+ operator VkDependencyInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDependencyInfoKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DependencyInfoKHR const & ) const = default;
+#else
+ bool operator==( DependencyInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( dependencyFlags == rhs.dependencyFlags ) &&
+ ( memoryBarrierCount == rhs.memoryBarrierCount ) && ( pMemoryBarriers == rhs.pMemoryBarriers ) &&
+ ( bufferMemoryBarrierCount == rhs.bufferMemoryBarrierCount ) &&
+ ( pBufferMemoryBarriers == rhs.pBufferMemoryBarriers ) &&
+ ( imageMemoryBarrierCount == rhs.imageMemoryBarrierCount ) &&
+ ( pImageMemoryBarriers == rhs.pImageMemoryBarriers );
+ }
+
+ bool operator!=( DependencyInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDependencyInfoKHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::DependencyFlags dependencyFlags = {};
+ uint32_t memoryBarrierCount = {};
+ const VULKAN_HPP_NAMESPACE::MemoryBarrier2KHR * pMemoryBarriers = {};
+ uint32_t bufferMemoryBarrierCount = {};
+ const VULKAN_HPP_NAMESPACE::BufferMemoryBarrier2KHR * pBufferMemoryBarriers = {};
+ uint32_t imageMemoryBarrierCount = {};
+ const VULKAN_HPP_NAMESPACE::ImageMemoryBarrier2KHR * pImageMemoryBarriers = {};
+ };
+ static_assert( sizeof( DependencyInfoKHR ) == sizeof( VkDependencyInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DependencyInfoKHR>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eDependencyInfoKHR>
+ {
+ using Type = DependencyInfoKHR;
+ };
+
+ struct DescriptorBufferInfo
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR DescriptorBufferInfo( VULKAN_HPP_NAMESPACE::Buffer buffer_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize offset_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize range_ = {} ) VULKAN_HPP_NOEXCEPT
+ : buffer( buffer_ )
+ , offset( offset_ )
+ , range( range_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR DescriptorBufferInfo( DescriptorBufferInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DescriptorBufferInfo( VkDescriptorBufferInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DescriptorBufferInfo( *reinterpret_cast<DescriptorBufferInfo const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DescriptorBufferInfo &
+ operator=( DescriptorBufferInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DescriptorBufferInfo & operator=( VkDescriptorBufferInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DescriptorBufferInfo const *>( &rhs );
+ return *this;
+ }
+
+ DescriptorBufferInfo & setBuffer( VULKAN_HPP_NAMESPACE::Buffer buffer_ ) VULKAN_HPP_NOEXCEPT
+ {
+ buffer = buffer_;
+ return *this;
+ }
+
+ DescriptorBufferInfo & setOffset( VULKAN_HPP_NAMESPACE::DeviceSize offset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ offset = offset_;
+ return *this;
+ }
+
+ DescriptorBufferInfo & setRange( VULKAN_HPP_NAMESPACE::DeviceSize range_ ) VULKAN_HPP_NOEXCEPT
+ {
+ range = range_;
+ return *this;
+ }
+
+ operator VkDescriptorBufferInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDescriptorBufferInfo *>( this );
+ }
+
+ operator VkDescriptorBufferInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDescriptorBufferInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DescriptorBufferInfo const & ) const = default;
+#else
+ bool operator==( DescriptorBufferInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( buffer == rhs.buffer ) && ( offset == rhs.offset ) && ( range == rhs.range );
+ }
+
+ bool operator!=( DescriptorBufferInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::Buffer buffer = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize offset = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize range = {};
+ };
+ static_assert( sizeof( DescriptorBufferInfo ) == sizeof( VkDescriptorBufferInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DescriptorBufferInfo>::value, "struct wrapper is not a standard layout!" );
+
+ struct DescriptorImageInfo
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR DescriptorImageInfo( VULKAN_HPP_NAMESPACE::Sampler sampler_ = {},
+ VULKAN_HPP_NAMESPACE::ImageView imageView_ = {},
+ VULKAN_HPP_NAMESPACE::ImageLayout imageLayout_ =
+ VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined ) VULKAN_HPP_NOEXCEPT
+ : sampler( sampler_ )
+ , imageView( imageView_ )
+ , imageLayout( imageLayout_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR DescriptorImageInfo( DescriptorImageInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DescriptorImageInfo( VkDescriptorImageInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DescriptorImageInfo( *reinterpret_cast<DescriptorImageInfo const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DescriptorImageInfo &
+ operator=( DescriptorImageInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DescriptorImageInfo & operator=( VkDescriptorImageInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DescriptorImageInfo const *>( &rhs );
+ return *this;
+ }
+
+ DescriptorImageInfo & setSampler( VULKAN_HPP_NAMESPACE::Sampler sampler_ ) VULKAN_HPP_NOEXCEPT
+ {
+ sampler = sampler_;
+ return *this;
+ }
+
+ DescriptorImageInfo & setImageView( VULKAN_HPP_NAMESPACE::ImageView imageView_ ) VULKAN_HPP_NOEXCEPT
+ {
+ imageView = imageView_;
+ return *this;
+ }
+
+ DescriptorImageInfo & setImageLayout( VULKAN_HPP_NAMESPACE::ImageLayout imageLayout_ ) VULKAN_HPP_NOEXCEPT
+ {
+ imageLayout = imageLayout_;
+ return *this;
+ }
+
+ operator VkDescriptorImageInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDescriptorImageInfo *>( this );
+ }
+
+ operator VkDescriptorImageInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDescriptorImageInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DescriptorImageInfo const & ) const = default;
+#else
+ bool operator==( DescriptorImageInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sampler == rhs.sampler ) && ( imageView == rhs.imageView ) && ( imageLayout == rhs.imageLayout );
+ }
+
+ bool operator!=( DescriptorImageInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::Sampler sampler = {};
+ VULKAN_HPP_NAMESPACE::ImageView imageView = {};
+ VULKAN_HPP_NAMESPACE::ImageLayout imageLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
+ };
+ static_assert( sizeof( DescriptorImageInfo ) == sizeof( VkDescriptorImageInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DescriptorImageInfo>::value, "struct wrapper is not a standard layout!" );
+
+ struct DescriptorPoolSize
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ DescriptorPoolSize( VULKAN_HPP_NAMESPACE::DescriptorType type_ = VULKAN_HPP_NAMESPACE::DescriptorType::eSampler,
+ uint32_t descriptorCount_ = {} ) VULKAN_HPP_NOEXCEPT
+ : type( type_ )
+ , descriptorCount( descriptorCount_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR DescriptorPoolSize( DescriptorPoolSize const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DescriptorPoolSize( VkDescriptorPoolSize const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DescriptorPoolSize( *reinterpret_cast<DescriptorPoolSize const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DescriptorPoolSize &
+ operator=( DescriptorPoolSize const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DescriptorPoolSize & operator=( VkDescriptorPoolSize const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DescriptorPoolSize const *>( &rhs );
+ return *this;
+ }
+
+ DescriptorPoolSize & setType( VULKAN_HPP_NAMESPACE::DescriptorType type_ ) VULKAN_HPP_NOEXCEPT
+ {
+ type = type_;
+ return *this;
+ }
+
+ DescriptorPoolSize & setDescriptorCount( uint32_t descriptorCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ descriptorCount = descriptorCount_;
+ return *this;
+ }
+
+ operator VkDescriptorPoolSize const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDescriptorPoolSize *>( this );
+ }
+
+ operator VkDescriptorPoolSize &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDescriptorPoolSize *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DescriptorPoolSize const & ) const = default;
+#else
+ bool operator==( DescriptorPoolSize const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( type == rhs.type ) && ( descriptorCount == rhs.descriptorCount );
+ }
+
+ bool operator!=( DescriptorPoolSize const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::DescriptorType type = VULKAN_HPP_NAMESPACE::DescriptorType::eSampler;
+ uint32_t descriptorCount = {};
+ };
+ static_assert( sizeof( DescriptorPoolSize ) == sizeof( VkDescriptorPoolSize ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DescriptorPoolSize>::value, "struct wrapper is not a standard layout!" );
+
+ struct DescriptorPoolCreateInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDescriptorPoolCreateInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ DescriptorPoolCreateInfo( VULKAN_HPP_NAMESPACE::DescriptorPoolCreateFlags flags_ = {},
+ uint32_t maxSets_ = {},
+ uint32_t poolSizeCount_ = {},
+ const VULKAN_HPP_NAMESPACE::DescriptorPoolSize * pPoolSizes_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , maxSets( maxSets_ )
+ , poolSizeCount( poolSizeCount_ )
+ , pPoolSizes( pPoolSizes_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR DescriptorPoolCreateInfo( DescriptorPoolCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DescriptorPoolCreateInfo( VkDescriptorPoolCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DescriptorPoolCreateInfo( *reinterpret_cast<DescriptorPoolCreateInfo const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ DescriptorPoolCreateInfo(
+ VULKAN_HPP_NAMESPACE::DescriptorPoolCreateFlags flags_,
+ uint32_t maxSets_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DescriptorPoolSize> const & poolSizes_ )
+ : flags( flags_ )
+ , maxSets( maxSets_ )
+ , poolSizeCount( static_cast<uint32_t>( poolSizes_.size() ) )
+ , pPoolSizes( poolSizes_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DescriptorPoolCreateInfo &
+ operator=( DescriptorPoolCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DescriptorPoolCreateInfo & operator=( VkDescriptorPoolCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DescriptorPoolCreateInfo const *>( &rhs );
+ return *this;
+ }
+
+ DescriptorPoolCreateInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ DescriptorPoolCreateInfo & setFlags( VULKAN_HPP_NAMESPACE::DescriptorPoolCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ DescriptorPoolCreateInfo & setMaxSets( uint32_t maxSets_ ) VULKAN_HPP_NOEXCEPT
+ {
+ maxSets = maxSets_;
+ return *this;
+ }
+
+ DescriptorPoolCreateInfo & setPoolSizeCount( uint32_t poolSizeCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ poolSizeCount = poolSizeCount_;
+ return *this;
+ }
+
+ DescriptorPoolCreateInfo &
+ setPPoolSizes( const VULKAN_HPP_NAMESPACE::DescriptorPoolSize * pPoolSizes_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pPoolSizes = pPoolSizes_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ DescriptorPoolCreateInfo & setPoolSizes(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DescriptorPoolSize> const & poolSizes_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ poolSizeCount = static_cast<uint32_t>( poolSizes_.size() );
+ pPoolSizes = poolSizes_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkDescriptorPoolCreateInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDescriptorPoolCreateInfo *>( this );
+ }
+
+ operator VkDescriptorPoolCreateInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDescriptorPoolCreateInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DescriptorPoolCreateInfo const & ) const = default;
+#else
+ bool operator==( DescriptorPoolCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) && ( maxSets == rhs.maxSets ) &&
+ ( poolSizeCount == rhs.poolSizeCount ) && ( pPoolSizes == rhs.pPoolSizes );
+ }
+
+ bool operator!=( DescriptorPoolCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDescriptorPoolCreateInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::DescriptorPoolCreateFlags flags = {};
+ uint32_t maxSets = {};
+ uint32_t poolSizeCount = {};
+ const VULKAN_HPP_NAMESPACE::DescriptorPoolSize * pPoolSizes = {};
+ };
+ static_assert( sizeof( DescriptorPoolCreateInfo ) == sizeof( VkDescriptorPoolCreateInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DescriptorPoolCreateInfo>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eDescriptorPoolCreateInfo>
+ {
+ using Type = DescriptorPoolCreateInfo;
+ };
+
+ struct DescriptorPoolInlineUniformBlockCreateInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eDescriptorPoolInlineUniformBlockCreateInfoEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ DescriptorPoolInlineUniformBlockCreateInfoEXT( uint32_t maxInlineUniformBlockBindings_ = {} ) VULKAN_HPP_NOEXCEPT
+ : maxInlineUniformBlockBindings( maxInlineUniformBlockBindings_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR DescriptorPoolInlineUniformBlockCreateInfoEXT(
+ DescriptorPoolInlineUniformBlockCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DescriptorPoolInlineUniformBlockCreateInfoEXT( VkDescriptorPoolInlineUniformBlockCreateInfoEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : DescriptorPoolInlineUniformBlockCreateInfoEXT(
+ *reinterpret_cast<DescriptorPoolInlineUniformBlockCreateInfoEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DescriptorPoolInlineUniformBlockCreateInfoEXT &
+ operator=( DescriptorPoolInlineUniformBlockCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DescriptorPoolInlineUniformBlockCreateInfoEXT &
+ operator=( VkDescriptorPoolInlineUniformBlockCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DescriptorPoolInlineUniformBlockCreateInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ DescriptorPoolInlineUniformBlockCreateInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ DescriptorPoolInlineUniformBlockCreateInfoEXT &
+ setMaxInlineUniformBlockBindings( uint32_t maxInlineUniformBlockBindings_ ) VULKAN_HPP_NOEXCEPT
+ {
+ maxInlineUniformBlockBindings = maxInlineUniformBlockBindings_;
+ return *this;
+ }
+
+ operator VkDescriptorPoolInlineUniformBlockCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDescriptorPoolInlineUniformBlockCreateInfoEXT *>( this );
+ }
+
+ operator VkDescriptorPoolInlineUniformBlockCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDescriptorPoolInlineUniformBlockCreateInfoEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DescriptorPoolInlineUniformBlockCreateInfoEXT const & ) const = default;
+#else
+ bool operator==( DescriptorPoolInlineUniformBlockCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( maxInlineUniformBlockBindings == rhs.maxInlineUniformBlockBindings );
+ }
+
+ bool operator!=( DescriptorPoolInlineUniformBlockCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDescriptorPoolInlineUniformBlockCreateInfoEXT;
+ const void * pNext = {};
+ uint32_t maxInlineUniformBlockBindings = {};
+ };
+ static_assert( sizeof( DescriptorPoolInlineUniformBlockCreateInfoEXT ) ==
+ sizeof( VkDescriptorPoolInlineUniformBlockCreateInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DescriptorPoolInlineUniformBlockCreateInfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eDescriptorPoolInlineUniformBlockCreateInfoEXT>
+ {
+ using Type = DescriptorPoolInlineUniformBlockCreateInfoEXT;
+ };
+
+ struct DescriptorSetAllocateInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDescriptorSetAllocateInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR DescriptorSetAllocateInfo(
+ VULKAN_HPP_NAMESPACE::DescriptorPool descriptorPool_ = {},
+ uint32_t descriptorSetCount_ = {},
+ const VULKAN_HPP_NAMESPACE::DescriptorSetLayout * pSetLayouts_ = {} ) VULKAN_HPP_NOEXCEPT
+ : descriptorPool( descriptorPool_ )
+ , descriptorSetCount( descriptorSetCount_ )
+ , pSetLayouts( pSetLayouts_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ DescriptorSetAllocateInfo( DescriptorSetAllocateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DescriptorSetAllocateInfo( VkDescriptorSetAllocateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DescriptorSetAllocateInfo( *reinterpret_cast<DescriptorSetAllocateInfo const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ DescriptorSetAllocateInfo(
+ VULKAN_HPP_NAMESPACE::DescriptorPool descriptorPool_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DescriptorSetLayout> const &
+ setLayouts_ )
+ : descriptorPool( descriptorPool_ )
+ , descriptorSetCount( static_cast<uint32_t>( setLayouts_.size() ) )
+ , pSetLayouts( setLayouts_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DescriptorSetAllocateInfo &
+ operator=( DescriptorSetAllocateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DescriptorSetAllocateInfo & operator=( VkDescriptorSetAllocateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DescriptorSetAllocateInfo const *>( &rhs );
+ return *this;
+ }
+
+ DescriptorSetAllocateInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ DescriptorSetAllocateInfo &
+ setDescriptorPool( VULKAN_HPP_NAMESPACE::DescriptorPool descriptorPool_ ) VULKAN_HPP_NOEXCEPT
+ {
+ descriptorPool = descriptorPool_;
+ return *this;
+ }
+
+ DescriptorSetAllocateInfo & setDescriptorSetCount( uint32_t descriptorSetCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ descriptorSetCount = descriptorSetCount_;
+ return *this;
+ }
+
+ DescriptorSetAllocateInfo &
+ setPSetLayouts( const VULKAN_HPP_NAMESPACE::DescriptorSetLayout * pSetLayouts_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pSetLayouts = pSetLayouts_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ DescriptorSetAllocateInfo & setSetLayouts(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DescriptorSetLayout> const &
+ setLayouts_ ) VULKAN_HPP_NOEXCEPT
+ {
+ descriptorSetCount = static_cast<uint32_t>( setLayouts_.size() );
+ pSetLayouts = setLayouts_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkDescriptorSetAllocateInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDescriptorSetAllocateInfo *>( this );
+ }
+
+ operator VkDescriptorSetAllocateInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDescriptorSetAllocateInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DescriptorSetAllocateInfo const & ) const = default;
+#else
+ bool operator==( DescriptorSetAllocateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( descriptorPool == rhs.descriptorPool ) &&
+ ( descriptorSetCount == rhs.descriptorSetCount ) && ( pSetLayouts == rhs.pSetLayouts );
+ }
+
+ bool operator!=( DescriptorSetAllocateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDescriptorSetAllocateInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::DescriptorPool descriptorPool = {};
+ uint32_t descriptorSetCount = {};
+ const VULKAN_HPP_NAMESPACE::DescriptorSetLayout * pSetLayouts = {};
+ };
+ static_assert( sizeof( DescriptorSetAllocateInfo ) == sizeof( VkDescriptorSetAllocateInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DescriptorSetAllocateInfo>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eDescriptorSetAllocateInfo>
+ {
+ using Type = DescriptorSetAllocateInfo;
+ };
+
+ struct DescriptorSetLayoutBinding
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR DescriptorSetLayoutBinding(
+ uint32_t binding_ = {},
+ VULKAN_HPP_NAMESPACE::DescriptorType descriptorType_ = VULKAN_HPP_NAMESPACE::DescriptorType::eSampler,
+ uint32_t descriptorCount_ = {},
+ VULKAN_HPP_NAMESPACE::ShaderStageFlags stageFlags_ = {},
+ const VULKAN_HPP_NAMESPACE::Sampler * pImmutableSamplers_ = {} ) VULKAN_HPP_NOEXCEPT
+ : binding( binding_ )
+ , descriptorType( descriptorType_ )
+ , descriptorCount( descriptorCount_ )
+ , stageFlags( stageFlags_ )
+ , pImmutableSamplers( pImmutableSamplers_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ DescriptorSetLayoutBinding( DescriptorSetLayoutBinding const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DescriptorSetLayoutBinding( VkDescriptorSetLayoutBinding const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DescriptorSetLayoutBinding( *reinterpret_cast<DescriptorSetLayoutBinding const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ DescriptorSetLayoutBinding(
+ uint32_t binding_,
+ VULKAN_HPP_NAMESPACE::DescriptorType descriptorType_,
+ VULKAN_HPP_NAMESPACE::ShaderStageFlags stageFlags_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Sampler> const & immutableSamplers_ )
+ : binding( binding_ )
+ , descriptorType( descriptorType_ )
+ , descriptorCount( static_cast<uint32_t>( immutableSamplers_.size() ) )
+ , stageFlags( stageFlags_ )
+ , pImmutableSamplers( immutableSamplers_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DescriptorSetLayoutBinding &
+ operator=( DescriptorSetLayoutBinding const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DescriptorSetLayoutBinding & operator=( VkDescriptorSetLayoutBinding const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DescriptorSetLayoutBinding const *>( &rhs );
+ return *this;
+ }
+
+ DescriptorSetLayoutBinding & setBinding( uint32_t binding_ ) VULKAN_HPP_NOEXCEPT
+ {
+ binding = binding_;
+ return *this;
+ }
+
+ DescriptorSetLayoutBinding &
+ setDescriptorType( VULKAN_HPP_NAMESPACE::DescriptorType descriptorType_ ) VULKAN_HPP_NOEXCEPT
+ {
+ descriptorType = descriptorType_;
+ return *this;
+ }
+
+ DescriptorSetLayoutBinding & setDescriptorCount( uint32_t descriptorCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ descriptorCount = descriptorCount_;
+ return *this;
+ }
+
+ DescriptorSetLayoutBinding & setStageFlags( VULKAN_HPP_NAMESPACE::ShaderStageFlags stageFlags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ stageFlags = stageFlags_;
+ return *this;
+ }
+
+ DescriptorSetLayoutBinding &
+ setPImmutableSamplers( const VULKAN_HPP_NAMESPACE::Sampler * pImmutableSamplers_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pImmutableSamplers = pImmutableSamplers_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ DescriptorSetLayoutBinding & setImmutableSamplers(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Sampler> const & immutableSamplers_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ descriptorCount = static_cast<uint32_t>( immutableSamplers_.size() );
+ pImmutableSamplers = immutableSamplers_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkDescriptorSetLayoutBinding const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDescriptorSetLayoutBinding *>( this );
+ }
+
+ operator VkDescriptorSetLayoutBinding &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDescriptorSetLayoutBinding *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DescriptorSetLayoutBinding const & ) const = default;
+#else
+ bool operator==( DescriptorSetLayoutBinding const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( binding == rhs.binding ) && ( descriptorType == rhs.descriptorType ) &&
+ ( descriptorCount == rhs.descriptorCount ) && ( stageFlags == rhs.stageFlags ) &&
+ ( pImmutableSamplers == rhs.pImmutableSamplers );
+ }
+
+ bool operator!=( DescriptorSetLayoutBinding const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ uint32_t binding = {};
+ VULKAN_HPP_NAMESPACE::DescriptorType descriptorType = VULKAN_HPP_NAMESPACE::DescriptorType::eSampler;
+ uint32_t descriptorCount = {};
+ VULKAN_HPP_NAMESPACE::ShaderStageFlags stageFlags = {};
+ const VULKAN_HPP_NAMESPACE::Sampler * pImmutableSamplers = {};
+ };
+ static_assert( sizeof( DescriptorSetLayoutBinding ) == sizeof( VkDescriptorSetLayoutBinding ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DescriptorSetLayoutBinding>::value,
+ "struct wrapper is not a standard layout!" );
+
+ struct DescriptorSetLayoutBindingFlagsCreateInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eDescriptorSetLayoutBindingFlagsCreateInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR DescriptorSetLayoutBindingFlagsCreateInfo(
+ uint32_t bindingCount_ = {},
+ const VULKAN_HPP_NAMESPACE::DescriptorBindingFlags * pBindingFlags_ = {} ) VULKAN_HPP_NOEXCEPT
+ : bindingCount( bindingCount_ )
+ , pBindingFlags( pBindingFlags_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR DescriptorSetLayoutBindingFlagsCreateInfo(
+ DescriptorSetLayoutBindingFlagsCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DescriptorSetLayoutBindingFlagsCreateInfo( VkDescriptorSetLayoutBindingFlagsCreateInfo const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : DescriptorSetLayoutBindingFlagsCreateInfo(
+ *reinterpret_cast<DescriptorSetLayoutBindingFlagsCreateInfo const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ DescriptorSetLayoutBindingFlagsCreateInfo(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DescriptorBindingFlags> const &
+ bindingFlags_ )
+ : bindingCount( static_cast<uint32_t>( bindingFlags_.size() ) ), pBindingFlags( bindingFlags_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DescriptorSetLayoutBindingFlagsCreateInfo &
+ operator=( DescriptorSetLayoutBindingFlagsCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DescriptorSetLayoutBindingFlagsCreateInfo &
+ operator=( VkDescriptorSetLayoutBindingFlagsCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DescriptorSetLayoutBindingFlagsCreateInfo const *>( &rhs );
+ return *this;
+ }
+
+ DescriptorSetLayoutBindingFlagsCreateInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ DescriptorSetLayoutBindingFlagsCreateInfo & setBindingCount( uint32_t bindingCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ bindingCount = bindingCount_;
+ return *this;
+ }
+
+ DescriptorSetLayoutBindingFlagsCreateInfo &
+ setPBindingFlags( const VULKAN_HPP_NAMESPACE::DescriptorBindingFlags * pBindingFlags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pBindingFlags = pBindingFlags_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ DescriptorSetLayoutBindingFlagsCreateInfo & setBindingFlags(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DescriptorBindingFlags> const &
+ bindingFlags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ bindingCount = static_cast<uint32_t>( bindingFlags_.size() );
+ pBindingFlags = bindingFlags_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkDescriptorSetLayoutBindingFlagsCreateInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDescriptorSetLayoutBindingFlagsCreateInfo *>( this );
+ }
+
+ operator VkDescriptorSetLayoutBindingFlagsCreateInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDescriptorSetLayoutBindingFlagsCreateInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DescriptorSetLayoutBindingFlagsCreateInfo const & ) const = default;
+#else
+ bool operator==( DescriptorSetLayoutBindingFlagsCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( bindingCount == rhs.bindingCount ) &&
+ ( pBindingFlags == rhs.pBindingFlags );
+ }
+
+ bool operator!=( DescriptorSetLayoutBindingFlagsCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDescriptorSetLayoutBindingFlagsCreateInfo;
+ const void * pNext = {};
+ uint32_t bindingCount = {};
+ const VULKAN_HPP_NAMESPACE::DescriptorBindingFlags * pBindingFlags = {};
+ };
+ static_assert( sizeof( DescriptorSetLayoutBindingFlagsCreateInfo ) ==
+ sizeof( VkDescriptorSetLayoutBindingFlagsCreateInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DescriptorSetLayoutBindingFlagsCreateInfo>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eDescriptorSetLayoutBindingFlagsCreateInfo>
+ {
+ using Type = DescriptorSetLayoutBindingFlagsCreateInfo;
+ };
+ using DescriptorSetLayoutBindingFlagsCreateInfoEXT = DescriptorSetLayoutBindingFlagsCreateInfo;
+
+ struct DescriptorSetLayoutCreateInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDescriptorSetLayoutCreateInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR DescriptorSetLayoutCreateInfo(
+ VULKAN_HPP_NAMESPACE::DescriptorSetLayoutCreateFlags flags_ = {},
+ uint32_t bindingCount_ = {},
+ const VULKAN_HPP_NAMESPACE::DescriptorSetLayoutBinding * pBindings_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , bindingCount( bindingCount_ )
+ , pBindings( pBindings_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ DescriptorSetLayoutCreateInfo( DescriptorSetLayoutCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DescriptorSetLayoutCreateInfo( VkDescriptorSetLayoutCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DescriptorSetLayoutCreateInfo( *reinterpret_cast<DescriptorSetLayoutCreateInfo const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ DescriptorSetLayoutCreateInfo(
+ VULKAN_HPP_NAMESPACE::DescriptorSetLayoutCreateFlags flags_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DescriptorSetLayoutBinding> const &
+ bindings_ )
+ : flags( flags_ ), bindingCount( static_cast<uint32_t>( bindings_.size() ) ), pBindings( bindings_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DescriptorSetLayoutCreateInfo &
+ operator=( DescriptorSetLayoutCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DescriptorSetLayoutCreateInfo & operator=( VkDescriptorSetLayoutCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DescriptorSetLayoutCreateInfo const *>( &rhs );
+ return *this;
+ }
+
+ DescriptorSetLayoutCreateInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ DescriptorSetLayoutCreateInfo &
+ setFlags( VULKAN_HPP_NAMESPACE::DescriptorSetLayoutCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ DescriptorSetLayoutCreateInfo & setBindingCount( uint32_t bindingCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ bindingCount = bindingCount_;
+ return *this;
+ }
+
+ DescriptorSetLayoutCreateInfo &
+ setPBindings( const VULKAN_HPP_NAMESPACE::DescriptorSetLayoutBinding * pBindings_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pBindings = pBindings_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ DescriptorSetLayoutCreateInfo & setBindings(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DescriptorSetLayoutBinding> const &
+ bindings_ ) VULKAN_HPP_NOEXCEPT
+ {
+ bindingCount = static_cast<uint32_t>( bindings_.size() );
+ pBindings = bindings_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkDescriptorSetLayoutCreateInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDescriptorSetLayoutCreateInfo *>( this );
+ }
+
+ operator VkDescriptorSetLayoutCreateInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDescriptorSetLayoutCreateInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DescriptorSetLayoutCreateInfo const & ) const = default;
+#else
+ bool operator==( DescriptorSetLayoutCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( bindingCount == rhs.bindingCount ) && ( pBindings == rhs.pBindings );
+ }
+
+ bool operator!=( DescriptorSetLayoutCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDescriptorSetLayoutCreateInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::DescriptorSetLayoutCreateFlags flags = {};
+ uint32_t bindingCount = {};
+ const VULKAN_HPP_NAMESPACE::DescriptorSetLayoutBinding * pBindings = {};
+ };
+ static_assert( sizeof( DescriptorSetLayoutCreateInfo ) == sizeof( VkDescriptorSetLayoutCreateInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DescriptorSetLayoutCreateInfo>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eDescriptorSetLayoutCreateInfo>
+ {
+ using Type = DescriptorSetLayoutCreateInfo;
+ };
+
+ struct DescriptorSetLayoutSupport
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDescriptorSetLayoutSupport;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR DescriptorSetLayoutSupport( VULKAN_HPP_NAMESPACE::Bool32 supported_ = {} ) VULKAN_HPP_NOEXCEPT
+ : supported( supported_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ DescriptorSetLayoutSupport( DescriptorSetLayoutSupport const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DescriptorSetLayoutSupport( VkDescriptorSetLayoutSupport const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DescriptorSetLayoutSupport( *reinterpret_cast<DescriptorSetLayoutSupport const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DescriptorSetLayoutSupport &
+ operator=( DescriptorSetLayoutSupport const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DescriptorSetLayoutSupport & operator=( VkDescriptorSetLayoutSupport const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DescriptorSetLayoutSupport const *>( &rhs );
+ return *this;
+ }
+
+ operator VkDescriptorSetLayoutSupport const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDescriptorSetLayoutSupport *>( this );
+ }
+
+ operator VkDescriptorSetLayoutSupport &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDescriptorSetLayoutSupport *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DescriptorSetLayoutSupport const & ) const = default;
+#else
+ bool operator==( DescriptorSetLayoutSupport const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( supported == rhs.supported );
+ }
+
+ bool operator!=( DescriptorSetLayoutSupport const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDescriptorSetLayoutSupport;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 supported = {};
+ };
+ static_assert( sizeof( DescriptorSetLayoutSupport ) == sizeof( VkDescriptorSetLayoutSupport ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DescriptorSetLayoutSupport>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eDescriptorSetLayoutSupport>
+ {
+ using Type = DescriptorSetLayoutSupport;
+ };
+ using DescriptorSetLayoutSupportKHR = DescriptorSetLayoutSupport;
+
+ struct DescriptorSetVariableDescriptorCountAllocateInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eDescriptorSetVariableDescriptorCountAllocateInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ DescriptorSetVariableDescriptorCountAllocateInfo( uint32_t descriptorSetCount_ = {},
+ const uint32_t * pDescriptorCounts_ = {} ) VULKAN_HPP_NOEXCEPT
+ : descriptorSetCount( descriptorSetCount_ )
+ , pDescriptorCounts( pDescriptorCounts_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR DescriptorSetVariableDescriptorCountAllocateInfo(
+ DescriptorSetVariableDescriptorCountAllocateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DescriptorSetVariableDescriptorCountAllocateInfo( VkDescriptorSetVariableDescriptorCountAllocateInfo const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : DescriptorSetVariableDescriptorCountAllocateInfo(
+ *reinterpret_cast<DescriptorSetVariableDescriptorCountAllocateInfo const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ DescriptorSetVariableDescriptorCountAllocateInfo(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & descriptorCounts_ )
+ : descriptorSetCount( static_cast<uint32_t>( descriptorCounts_.size() ) )
+ , pDescriptorCounts( descriptorCounts_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DescriptorSetVariableDescriptorCountAllocateInfo &
+ operator=( DescriptorSetVariableDescriptorCountAllocateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DescriptorSetVariableDescriptorCountAllocateInfo &
+ operator=( VkDescriptorSetVariableDescriptorCountAllocateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DescriptorSetVariableDescriptorCountAllocateInfo const *>( &rhs );
+ return *this;
+ }
+
+ DescriptorSetVariableDescriptorCountAllocateInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ DescriptorSetVariableDescriptorCountAllocateInfo &
+ setDescriptorSetCount( uint32_t descriptorSetCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ descriptorSetCount = descriptorSetCount_;
+ return *this;
+ }
+
+ DescriptorSetVariableDescriptorCountAllocateInfo &
+ setPDescriptorCounts( const uint32_t * pDescriptorCounts_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pDescriptorCounts = pDescriptorCounts_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ DescriptorSetVariableDescriptorCountAllocateInfo & setDescriptorCounts(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & descriptorCounts_ ) VULKAN_HPP_NOEXCEPT
+ {
+ descriptorSetCount = static_cast<uint32_t>( descriptorCounts_.size() );
+ pDescriptorCounts = descriptorCounts_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkDescriptorSetVariableDescriptorCountAllocateInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDescriptorSetVariableDescriptorCountAllocateInfo *>( this );
+ }
+
+ operator VkDescriptorSetVariableDescriptorCountAllocateInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDescriptorSetVariableDescriptorCountAllocateInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DescriptorSetVariableDescriptorCountAllocateInfo const & ) const = default;
+#else
+ bool operator==( DescriptorSetVariableDescriptorCountAllocateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( descriptorSetCount == rhs.descriptorSetCount ) &&
+ ( pDescriptorCounts == rhs.pDescriptorCounts );
+ }
+
+ bool operator!=( DescriptorSetVariableDescriptorCountAllocateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDescriptorSetVariableDescriptorCountAllocateInfo;
+ const void * pNext = {};
+ uint32_t descriptorSetCount = {};
+ const uint32_t * pDescriptorCounts = {};
+ };
+ static_assert( sizeof( DescriptorSetVariableDescriptorCountAllocateInfo ) ==
+ sizeof( VkDescriptorSetVariableDescriptorCountAllocateInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DescriptorSetVariableDescriptorCountAllocateInfo>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eDescriptorSetVariableDescriptorCountAllocateInfo>
+ {
+ using Type = DescriptorSetVariableDescriptorCountAllocateInfo;
+ };
+ using DescriptorSetVariableDescriptorCountAllocateInfoEXT = DescriptorSetVariableDescriptorCountAllocateInfo;
+
+ struct DescriptorSetVariableDescriptorCountLayoutSupport
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eDescriptorSetVariableDescriptorCountLayoutSupport;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ DescriptorSetVariableDescriptorCountLayoutSupport( uint32_t maxVariableDescriptorCount_ = {} ) VULKAN_HPP_NOEXCEPT
+ : maxVariableDescriptorCount( maxVariableDescriptorCount_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR DescriptorSetVariableDescriptorCountLayoutSupport(
+ DescriptorSetVariableDescriptorCountLayoutSupport const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DescriptorSetVariableDescriptorCountLayoutSupport( VkDescriptorSetVariableDescriptorCountLayoutSupport const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : DescriptorSetVariableDescriptorCountLayoutSupport(
+ *reinterpret_cast<DescriptorSetVariableDescriptorCountLayoutSupport const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DescriptorSetVariableDescriptorCountLayoutSupport &
+ operator=( DescriptorSetVariableDescriptorCountLayoutSupport const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DescriptorSetVariableDescriptorCountLayoutSupport &
+ operator=( VkDescriptorSetVariableDescriptorCountLayoutSupport const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this =
+ *reinterpret_cast<VULKAN_HPP_NAMESPACE::DescriptorSetVariableDescriptorCountLayoutSupport const *>( &rhs );
+ return *this;
+ }
+
+ operator VkDescriptorSetVariableDescriptorCountLayoutSupport const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDescriptorSetVariableDescriptorCountLayoutSupport *>( this );
+ }
+
+ operator VkDescriptorSetVariableDescriptorCountLayoutSupport &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDescriptorSetVariableDescriptorCountLayoutSupport *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DescriptorSetVariableDescriptorCountLayoutSupport const & ) const = default;
+#else
+ bool operator==( DescriptorSetVariableDescriptorCountLayoutSupport const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( maxVariableDescriptorCount == rhs.maxVariableDescriptorCount );
+ }
+
+ bool operator!=( DescriptorSetVariableDescriptorCountLayoutSupport const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDescriptorSetVariableDescriptorCountLayoutSupport;
+ void * pNext = {};
+ uint32_t maxVariableDescriptorCount = {};
+ };
+ static_assert( sizeof( DescriptorSetVariableDescriptorCountLayoutSupport ) ==
+ sizeof( VkDescriptorSetVariableDescriptorCountLayoutSupport ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DescriptorSetVariableDescriptorCountLayoutSupport>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eDescriptorSetVariableDescriptorCountLayoutSupport>
+ {
+ using Type = DescriptorSetVariableDescriptorCountLayoutSupport;
+ };
+ using DescriptorSetVariableDescriptorCountLayoutSupportEXT = DescriptorSetVariableDescriptorCountLayoutSupport;
+
+ struct DescriptorUpdateTemplateEntry
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR DescriptorUpdateTemplateEntry(
+ uint32_t dstBinding_ = {},
+ uint32_t dstArrayElement_ = {},
+ uint32_t descriptorCount_ = {},
+ VULKAN_HPP_NAMESPACE::DescriptorType descriptorType_ = VULKAN_HPP_NAMESPACE::DescriptorType::eSampler,
+ size_t offset_ = {},
+ size_t stride_ = {} ) VULKAN_HPP_NOEXCEPT
+ : dstBinding( dstBinding_ )
+ , dstArrayElement( dstArrayElement_ )
+ , descriptorCount( descriptorCount_ )
+ , descriptorType( descriptorType_ )
+ , offset( offset_ )
+ , stride( stride_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ DescriptorUpdateTemplateEntry( DescriptorUpdateTemplateEntry const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DescriptorUpdateTemplateEntry( VkDescriptorUpdateTemplateEntry const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DescriptorUpdateTemplateEntry( *reinterpret_cast<DescriptorUpdateTemplateEntry const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DescriptorUpdateTemplateEntry &
+ operator=( DescriptorUpdateTemplateEntry const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DescriptorUpdateTemplateEntry & operator=( VkDescriptorUpdateTemplateEntry const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateEntry const *>( &rhs );
+ return *this;
+ }
+
+ DescriptorUpdateTemplateEntry & setDstBinding( uint32_t dstBinding_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstBinding = dstBinding_;
+ return *this;
+ }
+
+ DescriptorUpdateTemplateEntry & setDstArrayElement( uint32_t dstArrayElement_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstArrayElement = dstArrayElement_;
+ return *this;
+ }
+
+ DescriptorUpdateTemplateEntry & setDescriptorCount( uint32_t descriptorCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ descriptorCount = descriptorCount_;
+ return *this;
+ }
+
+ DescriptorUpdateTemplateEntry &
+ setDescriptorType( VULKAN_HPP_NAMESPACE::DescriptorType descriptorType_ ) VULKAN_HPP_NOEXCEPT
+ {
+ descriptorType = descriptorType_;
+ return *this;
+ }
+
+ DescriptorUpdateTemplateEntry & setOffset( size_t offset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ offset = offset_;
+ return *this;
+ }
+
+ DescriptorUpdateTemplateEntry & setStride( size_t stride_ ) VULKAN_HPP_NOEXCEPT
+ {
+ stride = stride_;
+ return *this;
+ }
+
+ operator VkDescriptorUpdateTemplateEntry const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDescriptorUpdateTemplateEntry *>( this );
+ }
+
+ operator VkDescriptorUpdateTemplateEntry &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDescriptorUpdateTemplateEntry *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DescriptorUpdateTemplateEntry const & ) const = default;
+#else
+ bool operator==( DescriptorUpdateTemplateEntry const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( dstBinding == rhs.dstBinding ) && ( dstArrayElement == rhs.dstArrayElement ) &&
+ ( descriptorCount == rhs.descriptorCount ) && ( descriptorType == rhs.descriptorType ) &&
+ ( offset == rhs.offset ) && ( stride == rhs.stride );
+ }
+
+ bool operator!=( DescriptorUpdateTemplateEntry const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ uint32_t dstBinding = {};
+ uint32_t dstArrayElement = {};
+ uint32_t descriptorCount = {};
+ VULKAN_HPP_NAMESPACE::DescriptorType descriptorType = VULKAN_HPP_NAMESPACE::DescriptorType::eSampler;
+ size_t offset = {};
+ size_t stride = {};
+ };
+ static_assert( sizeof( DescriptorUpdateTemplateEntry ) == sizeof( VkDescriptorUpdateTemplateEntry ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DescriptorUpdateTemplateEntry>::value,
+ "struct wrapper is not a standard layout!" );
+ using DescriptorUpdateTemplateEntryKHR = DescriptorUpdateTemplateEntry;
+
+ struct DescriptorUpdateTemplateCreateInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eDescriptorUpdateTemplateCreateInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR DescriptorUpdateTemplateCreateInfo(
+ VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateCreateFlags flags_ = {},
+ uint32_t descriptorUpdateEntryCount_ = {},
+ const VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateEntry * pDescriptorUpdateEntries_ = {},
+ VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateType templateType_ =
+ VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateType::eDescriptorSet,
+ VULKAN_HPP_NAMESPACE::DescriptorSetLayout descriptorSetLayout_ = {},
+ VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint_ = VULKAN_HPP_NAMESPACE::PipelineBindPoint::eGraphics,
+ VULKAN_HPP_NAMESPACE::PipelineLayout pipelineLayout_ = {},
+ uint32_t set_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , descriptorUpdateEntryCount( descriptorUpdateEntryCount_ )
+ , pDescriptorUpdateEntries( pDescriptorUpdateEntries_ )
+ , templateType( templateType_ )
+ , descriptorSetLayout( descriptorSetLayout_ )
+ , pipelineBindPoint( pipelineBindPoint_ )
+ , pipelineLayout( pipelineLayout_ )
+ , set( set_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR DescriptorUpdateTemplateCreateInfo( DescriptorUpdateTemplateCreateInfo const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ DescriptorUpdateTemplateCreateInfo( VkDescriptorUpdateTemplateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DescriptorUpdateTemplateCreateInfo( *reinterpret_cast<DescriptorUpdateTemplateCreateInfo const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ DescriptorUpdateTemplateCreateInfo(
+ VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateCreateFlags flags_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateEntry> const &
+ descriptorUpdateEntries_,
+ VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateType templateType_ =
+ VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateType::eDescriptorSet,
+ VULKAN_HPP_NAMESPACE::DescriptorSetLayout descriptorSetLayout_ = {},
+ VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint_ = VULKAN_HPP_NAMESPACE::PipelineBindPoint::eGraphics,
+ VULKAN_HPP_NAMESPACE::PipelineLayout pipelineLayout_ = {},
+ uint32_t set_ = {} )
+ : flags( flags_ )
+ , descriptorUpdateEntryCount( static_cast<uint32_t>( descriptorUpdateEntries_.size() ) )
+ , pDescriptorUpdateEntries( descriptorUpdateEntries_.data() )
+ , templateType( templateType_ )
+ , descriptorSetLayout( descriptorSetLayout_ )
+ , pipelineBindPoint( pipelineBindPoint_ )
+ , pipelineLayout( pipelineLayout_ )
+ , set( set_ )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DescriptorUpdateTemplateCreateInfo &
+ operator=( DescriptorUpdateTemplateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DescriptorUpdateTemplateCreateInfo &
+ operator=( VkDescriptorUpdateTemplateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateCreateInfo const *>( &rhs );
+ return *this;
+ }
+
+ DescriptorUpdateTemplateCreateInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ DescriptorUpdateTemplateCreateInfo &
+ setFlags( VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ DescriptorUpdateTemplateCreateInfo &
+ setDescriptorUpdateEntryCount( uint32_t descriptorUpdateEntryCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ descriptorUpdateEntryCount = descriptorUpdateEntryCount_;
+ return *this;
+ }
+
+ DescriptorUpdateTemplateCreateInfo & setPDescriptorUpdateEntries(
+ const VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateEntry * pDescriptorUpdateEntries_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pDescriptorUpdateEntries = pDescriptorUpdateEntries_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ DescriptorUpdateTemplateCreateInfo & setDescriptorUpdateEntries(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateEntry> const &
+ descriptorUpdateEntries_ ) VULKAN_HPP_NOEXCEPT
+ {
+ descriptorUpdateEntryCount = static_cast<uint32_t>( descriptorUpdateEntries_.size() );
+ pDescriptorUpdateEntries = descriptorUpdateEntries_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ DescriptorUpdateTemplateCreateInfo &
+ setTemplateType( VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateType templateType_ ) VULKAN_HPP_NOEXCEPT
+ {
+ templateType = templateType_;
+ return *this;
+ }
+
+ DescriptorUpdateTemplateCreateInfo &
+ setDescriptorSetLayout( VULKAN_HPP_NAMESPACE::DescriptorSetLayout descriptorSetLayout_ ) VULKAN_HPP_NOEXCEPT
+ {
+ descriptorSetLayout = descriptorSetLayout_;
+ return *this;
+ }
+
+ DescriptorUpdateTemplateCreateInfo &
+ setPipelineBindPoint( VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pipelineBindPoint = pipelineBindPoint_;
+ return *this;
+ }
+
+ DescriptorUpdateTemplateCreateInfo &
+ setPipelineLayout( VULKAN_HPP_NAMESPACE::PipelineLayout pipelineLayout_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pipelineLayout = pipelineLayout_;
+ return *this;
+ }
+
+ DescriptorUpdateTemplateCreateInfo & setSet( uint32_t set_ ) VULKAN_HPP_NOEXCEPT
+ {
+ set = set_;
+ return *this;
+ }
+
+ operator VkDescriptorUpdateTemplateCreateInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDescriptorUpdateTemplateCreateInfo *>( this );
+ }
+
+ operator VkDescriptorUpdateTemplateCreateInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDescriptorUpdateTemplateCreateInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DescriptorUpdateTemplateCreateInfo const & ) const = default;
+#else
+ bool operator==( DescriptorUpdateTemplateCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( descriptorUpdateEntryCount == rhs.descriptorUpdateEntryCount ) &&
+ ( pDescriptorUpdateEntries == rhs.pDescriptorUpdateEntries ) && ( templateType == rhs.templateType ) &&
+ ( descriptorSetLayout == rhs.descriptorSetLayout ) && ( pipelineBindPoint == rhs.pipelineBindPoint ) &&
+ ( pipelineLayout == rhs.pipelineLayout ) && ( set == rhs.set );
+ }
+
+ bool operator!=( DescriptorUpdateTemplateCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDescriptorUpdateTemplateCreateInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateCreateFlags flags = {};
+ uint32_t descriptorUpdateEntryCount = {};
+ const VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateEntry * pDescriptorUpdateEntries = {};
+ VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateType templateType =
+ VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateType::eDescriptorSet;
+ VULKAN_HPP_NAMESPACE::DescriptorSetLayout descriptorSetLayout = {};
+ VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint = VULKAN_HPP_NAMESPACE::PipelineBindPoint::eGraphics;
+ VULKAN_HPP_NAMESPACE::PipelineLayout pipelineLayout = {};
+ uint32_t set = {};
+ };
+ static_assert( sizeof( DescriptorUpdateTemplateCreateInfo ) == sizeof( VkDescriptorUpdateTemplateCreateInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DescriptorUpdateTemplateCreateInfo>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eDescriptorUpdateTemplateCreateInfo>
+ {
+ using Type = DescriptorUpdateTemplateCreateInfo;
+ };
+ using DescriptorUpdateTemplateCreateInfoKHR = DescriptorUpdateTemplateCreateInfo;
+
+ struct DeviceQueueCreateInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDeviceQueueCreateInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR DeviceQueueCreateInfo( VULKAN_HPP_NAMESPACE::DeviceQueueCreateFlags flags_ = {},
+ uint32_t queueFamilyIndex_ = {},
+ uint32_t queueCount_ = {},
+ const float * pQueuePriorities_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , queueFamilyIndex( queueFamilyIndex_ )
+ , queueCount( queueCount_ )
+ , pQueuePriorities( pQueuePriorities_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR DeviceQueueCreateInfo( DeviceQueueCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DeviceQueueCreateInfo( VkDeviceQueueCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DeviceQueueCreateInfo( *reinterpret_cast<DeviceQueueCreateInfo const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ DeviceQueueCreateInfo( VULKAN_HPP_NAMESPACE::DeviceQueueCreateFlags flags_,
+ uint32_t queueFamilyIndex_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const float> const & queuePriorities_ )
+ : flags( flags_ )
+ , queueFamilyIndex( queueFamilyIndex_ )
+ , queueCount( static_cast<uint32_t>( queuePriorities_.size() ) )
+ , pQueuePriorities( queuePriorities_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DeviceQueueCreateInfo &
+ operator=( DeviceQueueCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DeviceQueueCreateInfo & operator=( VkDeviceQueueCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DeviceQueueCreateInfo const *>( &rhs );
+ return *this;
+ }
+
+ DeviceQueueCreateInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ DeviceQueueCreateInfo & setFlags( VULKAN_HPP_NAMESPACE::DeviceQueueCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ DeviceQueueCreateInfo & setQueueFamilyIndex( uint32_t queueFamilyIndex_ ) VULKAN_HPP_NOEXCEPT
+ {
+ queueFamilyIndex = queueFamilyIndex_;
+ return *this;
+ }
+
+ DeviceQueueCreateInfo & setQueueCount( uint32_t queueCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ queueCount = queueCount_;
+ return *this;
+ }
+
+ DeviceQueueCreateInfo & setPQueuePriorities( const float * pQueuePriorities_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pQueuePriorities = pQueuePriorities_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ DeviceQueueCreateInfo & setQueuePriorities(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const float> const & queuePriorities_ ) VULKAN_HPP_NOEXCEPT
+ {
+ queueCount = static_cast<uint32_t>( queuePriorities_.size() );
+ pQueuePriorities = queuePriorities_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkDeviceQueueCreateInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDeviceQueueCreateInfo *>( this );
+ }
+
+ operator VkDeviceQueueCreateInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDeviceQueueCreateInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DeviceQueueCreateInfo const & ) const = default;
+#else
+ bool operator==( DeviceQueueCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( queueFamilyIndex == rhs.queueFamilyIndex ) && ( queueCount == rhs.queueCount ) &&
+ ( pQueuePriorities == rhs.pQueuePriorities );
+ }
+
+ bool operator!=( DeviceQueueCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDeviceQueueCreateInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::DeviceQueueCreateFlags flags = {};
+ uint32_t queueFamilyIndex = {};
+ uint32_t queueCount = {};
+ const float * pQueuePriorities = {};
+ };
+ static_assert( sizeof( DeviceQueueCreateInfo ) == sizeof( VkDeviceQueueCreateInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DeviceQueueCreateInfo>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eDeviceQueueCreateInfo>
+ {
+ using Type = DeviceQueueCreateInfo;
+ };
+
+ struct PhysicalDeviceFeatures
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ PhysicalDeviceFeatures( VULKAN_HPP_NAMESPACE::Bool32 robustBufferAccess_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 fullDrawIndexUint32_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 imageCubeArray_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 independentBlend_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 geometryShader_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 tessellationShader_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 sampleRateShading_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 dualSrcBlend_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 logicOp_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 multiDrawIndirect_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 drawIndirectFirstInstance_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 depthClamp_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 depthBiasClamp_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 fillModeNonSolid_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 depthBounds_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 wideLines_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 largePoints_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 alphaToOne_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 multiViewport_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 samplerAnisotropy_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 textureCompressionETC2_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 textureCompressionASTC_LDR_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 textureCompressionBC_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 occlusionQueryPrecise_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 pipelineStatisticsQuery_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 vertexPipelineStoresAndAtomics_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 fragmentStoresAndAtomics_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderTessellationAndGeometryPointSize_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderImageGatherExtended_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageExtendedFormats_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageMultisample_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageReadWithoutFormat_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageWriteWithoutFormat_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderUniformBufferArrayDynamicIndexing_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderSampledImageArrayDynamicIndexing_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderStorageBufferArrayDynamicIndexing_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageArrayDynamicIndexing_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderClipDistance_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderCullDistance_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderFloat64_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderInt64_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderInt16_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderResourceResidency_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderResourceMinLod_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 sparseBinding_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 sparseResidencyBuffer_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 sparseResidencyImage2D_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 sparseResidencyImage3D_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 sparseResidency2Samples_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 sparseResidency4Samples_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 sparseResidency8Samples_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 sparseResidency16Samples_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 sparseResidencyAliased_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 variableMultisampleRate_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 inheritedQueries_ = {} ) VULKAN_HPP_NOEXCEPT
+ : robustBufferAccess( robustBufferAccess_ )
+ , fullDrawIndexUint32( fullDrawIndexUint32_ )
+ , imageCubeArray( imageCubeArray_ )
+ , independentBlend( independentBlend_ )
+ , geometryShader( geometryShader_ )
+ , tessellationShader( tessellationShader_ )
+ , sampleRateShading( sampleRateShading_ )
+ , dualSrcBlend( dualSrcBlend_ )
+ , logicOp( logicOp_ )
+ , multiDrawIndirect( multiDrawIndirect_ )
+ , drawIndirectFirstInstance( drawIndirectFirstInstance_ )
+ , depthClamp( depthClamp_ )
+ , depthBiasClamp( depthBiasClamp_ )
+ , fillModeNonSolid( fillModeNonSolid_ )
+ , depthBounds( depthBounds_ )
+ , wideLines( wideLines_ )
+ , largePoints( largePoints_ )
+ , alphaToOne( alphaToOne_ )
+ , multiViewport( multiViewport_ )
+ , samplerAnisotropy( samplerAnisotropy_ )
+ , textureCompressionETC2( textureCompressionETC2_ )
+ , textureCompressionASTC_LDR( textureCompressionASTC_LDR_ )
+ , textureCompressionBC( textureCompressionBC_ )
+ , occlusionQueryPrecise( occlusionQueryPrecise_ )
+ , pipelineStatisticsQuery( pipelineStatisticsQuery_ )
+ , vertexPipelineStoresAndAtomics( vertexPipelineStoresAndAtomics_ )
+ , fragmentStoresAndAtomics( fragmentStoresAndAtomics_ )
+ , shaderTessellationAndGeometryPointSize( shaderTessellationAndGeometryPointSize_ )
+ , shaderImageGatherExtended( shaderImageGatherExtended_ )
+ , shaderStorageImageExtendedFormats( shaderStorageImageExtendedFormats_ )
+ , shaderStorageImageMultisample( shaderStorageImageMultisample_ )
+ , shaderStorageImageReadWithoutFormat( shaderStorageImageReadWithoutFormat_ )
+ , shaderStorageImageWriteWithoutFormat( shaderStorageImageWriteWithoutFormat_ )
+ , shaderUniformBufferArrayDynamicIndexing( shaderUniformBufferArrayDynamicIndexing_ )
+ , shaderSampledImageArrayDynamicIndexing( shaderSampledImageArrayDynamicIndexing_ )
+ , shaderStorageBufferArrayDynamicIndexing( shaderStorageBufferArrayDynamicIndexing_ )
+ , shaderStorageImageArrayDynamicIndexing( shaderStorageImageArrayDynamicIndexing_ )
+ , shaderClipDistance( shaderClipDistance_ )
+ , shaderCullDistance( shaderCullDistance_ )
+ , shaderFloat64( shaderFloat64_ )
+ , shaderInt64( shaderInt64_ )
+ , shaderInt16( shaderInt16_ )
+ , shaderResourceResidency( shaderResourceResidency_ )
+ , shaderResourceMinLod( shaderResourceMinLod_ )
+ , sparseBinding( sparseBinding_ )
+ , sparseResidencyBuffer( sparseResidencyBuffer_ )
+ , sparseResidencyImage2D( sparseResidencyImage2D_ )
+ , sparseResidencyImage3D( sparseResidencyImage3D_ )
+ , sparseResidency2Samples( sparseResidency2Samples_ )
+ , sparseResidency4Samples( sparseResidency4Samples_ )
+ , sparseResidency8Samples( sparseResidency8Samples_ )
+ , sparseResidency16Samples( sparseResidency16Samples_ )
+ , sparseResidencyAliased( sparseResidencyAliased_ )
+ , variableMultisampleRate( variableMultisampleRate_ )
+ , inheritedQueries( inheritedQueries_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceFeatures( PhysicalDeviceFeatures const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceFeatures( VkPhysicalDeviceFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceFeatures( *reinterpret_cast<PhysicalDeviceFeatures const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures &
+ operator=( PhysicalDeviceFeatures const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceFeatures & operator=( VkPhysicalDeviceFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceFeatures &
+ setRobustBufferAccess( VULKAN_HPP_NAMESPACE::Bool32 robustBufferAccess_ ) VULKAN_HPP_NOEXCEPT
+ {
+ robustBufferAccess = robustBufferAccess_;
+ return *this;
+ }
+
+ PhysicalDeviceFeatures &
+ setFullDrawIndexUint32( VULKAN_HPP_NAMESPACE::Bool32 fullDrawIndexUint32_ ) VULKAN_HPP_NOEXCEPT
+ {
+ fullDrawIndexUint32 = fullDrawIndexUint32_;
+ return *this;
+ }
+
+ PhysicalDeviceFeatures & setImageCubeArray( VULKAN_HPP_NAMESPACE::Bool32 imageCubeArray_ ) VULKAN_HPP_NOEXCEPT
+ {
+ imageCubeArray = imageCubeArray_;
+ return *this;
+ }
+
+ PhysicalDeviceFeatures & setIndependentBlend( VULKAN_HPP_NAMESPACE::Bool32 independentBlend_ ) VULKAN_HPP_NOEXCEPT
+ {
+ independentBlend = independentBlend_;
+ return *this;
+ }
+
+ PhysicalDeviceFeatures & setGeometryShader( VULKAN_HPP_NAMESPACE::Bool32 geometryShader_ ) VULKAN_HPP_NOEXCEPT
+ {
+ geometryShader = geometryShader_;
+ return *this;
+ }
+
+ PhysicalDeviceFeatures &
+ setTessellationShader( VULKAN_HPP_NAMESPACE::Bool32 tessellationShader_ ) VULKAN_HPP_NOEXCEPT
+ {
+ tessellationShader = tessellationShader_;
+ return *this;
+ }
+
+ PhysicalDeviceFeatures & setSampleRateShading( VULKAN_HPP_NAMESPACE::Bool32 sampleRateShading_ ) VULKAN_HPP_NOEXCEPT
+ {
+ sampleRateShading = sampleRateShading_;
+ return *this;
+ }
+
+ PhysicalDeviceFeatures & setDualSrcBlend( VULKAN_HPP_NAMESPACE::Bool32 dualSrcBlend_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dualSrcBlend = dualSrcBlend_;
+ return *this;
+ }
+
+ PhysicalDeviceFeatures & setLogicOp( VULKAN_HPP_NAMESPACE::Bool32 logicOp_ ) VULKAN_HPP_NOEXCEPT
+ {
+ logicOp = logicOp_;
+ return *this;
+ }
+
+ PhysicalDeviceFeatures & setMultiDrawIndirect( VULKAN_HPP_NAMESPACE::Bool32 multiDrawIndirect_ ) VULKAN_HPP_NOEXCEPT
+ {
+ multiDrawIndirect = multiDrawIndirect_;
+ return *this;
+ }
+
+ PhysicalDeviceFeatures &
+ setDrawIndirectFirstInstance( VULKAN_HPP_NAMESPACE::Bool32 drawIndirectFirstInstance_ ) VULKAN_HPP_NOEXCEPT
+ {
+ drawIndirectFirstInstance = drawIndirectFirstInstance_;
+ return *this;
+ }
+
+ PhysicalDeviceFeatures & setDepthClamp( VULKAN_HPP_NAMESPACE::Bool32 depthClamp_ ) VULKAN_HPP_NOEXCEPT
+ {
+ depthClamp = depthClamp_;
+ return *this;
+ }
+
+ PhysicalDeviceFeatures & setDepthBiasClamp( VULKAN_HPP_NAMESPACE::Bool32 depthBiasClamp_ ) VULKAN_HPP_NOEXCEPT
+ {
+ depthBiasClamp = depthBiasClamp_;
+ return *this;
+ }
+
+ PhysicalDeviceFeatures & setFillModeNonSolid( VULKAN_HPP_NAMESPACE::Bool32 fillModeNonSolid_ ) VULKAN_HPP_NOEXCEPT
+ {
+ fillModeNonSolid = fillModeNonSolid_;
+ return *this;
+ }
+
+ PhysicalDeviceFeatures & setDepthBounds( VULKAN_HPP_NAMESPACE::Bool32 depthBounds_ ) VULKAN_HPP_NOEXCEPT
+ {
+ depthBounds = depthBounds_;
+ return *this;
+ }
+
+ PhysicalDeviceFeatures & setWideLines( VULKAN_HPP_NAMESPACE::Bool32 wideLines_ ) VULKAN_HPP_NOEXCEPT
+ {
+ wideLines = wideLines_;
+ return *this;
+ }
+
+ PhysicalDeviceFeatures & setLargePoints( VULKAN_HPP_NAMESPACE::Bool32 largePoints_ ) VULKAN_HPP_NOEXCEPT
+ {
+ largePoints = largePoints_;
+ return *this;
+ }
+
+ PhysicalDeviceFeatures & setAlphaToOne( VULKAN_HPP_NAMESPACE::Bool32 alphaToOne_ ) VULKAN_HPP_NOEXCEPT
+ {
+ alphaToOne = alphaToOne_;
+ return *this;
+ }
+
+ PhysicalDeviceFeatures & setMultiViewport( VULKAN_HPP_NAMESPACE::Bool32 multiViewport_ ) VULKAN_HPP_NOEXCEPT
+ {
+ multiViewport = multiViewport_;
+ return *this;
+ }
+
+ PhysicalDeviceFeatures & setSamplerAnisotropy( VULKAN_HPP_NAMESPACE::Bool32 samplerAnisotropy_ ) VULKAN_HPP_NOEXCEPT
+ {
+ samplerAnisotropy = samplerAnisotropy_;
+ return *this;
+ }
+
+ PhysicalDeviceFeatures &
+ setTextureCompressionETC2( VULKAN_HPP_NAMESPACE::Bool32 textureCompressionETC2_ ) VULKAN_HPP_NOEXCEPT
+ {
+ textureCompressionETC2 = textureCompressionETC2_;
+ return *this;
+ }
+
+ PhysicalDeviceFeatures &
+ setTextureCompressionASTC_LDR( VULKAN_HPP_NAMESPACE::Bool32 textureCompressionASTC_LDR_ ) VULKAN_HPP_NOEXCEPT
+ {
+ textureCompressionASTC_LDR = textureCompressionASTC_LDR_;
+ return *this;
+ }
+
+ PhysicalDeviceFeatures &
+ setTextureCompressionBC( VULKAN_HPP_NAMESPACE::Bool32 textureCompressionBC_ ) VULKAN_HPP_NOEXCEPT
+ {
+ textureCompressionBC = textureCompressionBC_;
+ return *this;
+ }
+
+ PhysicalDeviceFeatures &
+ setOcclusionQueryPrecise( VULKAN_HPP_NAMESPACE::Bool32 occlusionQueryPrecise_ ) VULKAN_HPP_NOEXCEPT
+ {
+ occlusionQueryPrecise = occlusionQueryPrecise_;
+ return *this;
+ }
+
+ PhysicalDeviceFeatures &
+ setPipelineStatisticsQuery( VULKAN_HPP_NAMESPACE::Bool32 pipelineStatisticsQuery_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pipelineStatisticsQuery = pipelineStatisticsQuery_;
+ return *this;
+ }
+
+ PhysicalDeviceFeatures & setVertexPipelineStoresAndAtomics(
+ VULKAN_HPP_NAMESPACE::Bool32 vertexPipelineStoresAndAtomics_ ) VULKAN_HPP_NOEXCEPT
+ {
+ vertexPipelineStoresAndAtomics = vertexPipelineStoresAndAtomics_;
+ return *this;
+ }
+
+ PhysicalDeviceFeatures &
+ setFragmentStoresAndAtomics( VULKAN_HPP_NAMESPACE::Bool32 fragmentStoresAndAtomics_ ) VULKAN_HPP_NOEXCEPT
+ {
+ fragmentStoresAndAtomics = fragmentStoresAndAtomics_;
+ return *this;
+ }
+
+ PhysicalDeviceFeatures & setShaderTessellationAndGeometryPointSize(
+ VULKAN_HPP_NAMESPACE::Bool32 shaderTessellationAndGeometryPointSize_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderTessellationAndGeometryPointSize = shaderTessellationAndGeometryPointSize_;
+ return *this;
+ }
+
+ PhysicalDeviceFeatures &
+ setShaderImageGatherExtended( VULKAN_HPP_NAMESPACE::Bool32 shaderImageGatherExtended_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderImageGatherExtended = shaderImageGatherExtended_;
+ return *this;
+ }
+
+ PhysicalDeviceFeatures & setShaderStorageImageExtendedFormats(
+ VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageExtendedFormats_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderStorageImageExtendedFormats = shaderStorageImageExtendedFormats_;
+ return *this;
+ }
+
+ PhysicalDeviceFeatures & setShaderStorageImageMultisample(
+ VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageMultisample_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderStorageImageMultisample = shaderStorageImageMultisample_;
+ return *this;
+ }
+
+ PhysicalDeviceFeatures & setShaderStorageImageReadWithoutFormat(
+ VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageReadWithoutFormat_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderStorageImageReadWithoutFormat = shaderStorageImageReadWithoutFormat_;
+ return *this;
+ }
+
+ PhysicalDeviceFeatures & setShaderStorageImageWriteWithoutFormat(
+ VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageWriteWithoutFormat_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderStorageImageWriteWithoutFormat = shaderStorageImageWriteWithoutFormat_;
+ return *this;
+ }
+
+ PhysicalDeviceFeatures & setShaderUniformBufferArrayDynamicIndexing(
+ VULKAN_HPP_NAMESPACE::Bool32 shaderUniformBufferArrayDynamicIndexing_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderUniformBufferArrayDynamicIndexing = shaderUniformBufferArrayDynamicIndexing_;
+ return *this;
+ }
+
+ PhysicalDeviceFeatures & setShaderSampledImageArrayDynamicIndexing(
+ VULKAN_HPP_NAMESPACE::Bool32 shaderSampledImageArrayDynamicIndexing_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderSampledImageArrayDynamicIndexing = shaderSampledImageArrayDynamicIndexing_;
+ return *this;
+ }
+
+ PhysicalDeviceFeatures & setShaderStorageBufferArrayDynamicIndexing(
+ VULKAN_HPP_NAMESPACE::Bool32 shaderStorageBufferArrayDynamicIndexing_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderStorageBufferArrayDynamicIndexing = shaderStorageBufferArrayDynamicIndexing_;
+ return *this;
+ }
+
+ PhysicalDeviceFeatures & setShaderStorageImageArrayDynamicIndexing(
+ VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageArrayDynamicIndexing_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderStorageImageArrayDynamicIndexing = shaderStorageImageArrayDynamicIndexing_;
+ return *this;
+ }
+
+ PhysicalDeviceFeatures &
+ setShaderClipDistance( VULKAN_HPP_NAMESPACE::Bool32 shaderClipDistance_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderClipDistance = shaderClipDistance_;
+ return *this;
+ }
+
+ PhysicalDeviceFeatures &
+ setShaderCullDistance( VULKAN_HPP_NAMESPACE::Bool32 shaderCullDistance_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderCullDistance = shaderCullDistance_;
+ return *this;
+ }
+
+ PhysicalDeviceFeatures & setShaderFloat64( VULKAN_HPP_NAMESPACE::Bool32 shaderFloat64_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderFloat64 = shaderFloat64_;
+ return *this;
+ }
+
+ PhysicalDeviceFeatures & setShaderInt64( VULKAN_HPP_NAMESPACE::Bool32 shaderInt64_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderInt64 = shaderInt64_;
+ return *this;
+ }
+
+ PhysicalDeviceFeatures & setShaderInt16( VULKAN_HPP_NAMESPACE::Bool32 shaderInt16_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderInt16 = shaderInt16_;
+ return *this;
+ }
+
+ PhysicalDeviceFeatures &
+ setShaderResourceResidency( VULKAN_HPP_NAMESPACE::Bool32 shaderResourceResidency_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderResourceResidency = shaderResourceResidency_;
+ return *this;
+ }
+
+ PhysicalDeviceFeatures &
+ setShaderResourceMinLod( VULKAN_HPP_NAMESPACE::Bool32 shaderResourceMinLod_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderResourceMinLod = shaderResourceMinLod_;
+ return *this;
+ }
+
+ PhysicalDeviceFeatures & setSparseBinding( VULKAN_HPP_NAMESPACE::Bool32 sparseBinding_ ) VULKAN_HPP_NOEXCEPT
+ {
+ sparseBinding = sparseBinding_;
+ return *this;
+ }
+
+ PhysicalDeviceFeatures &
+ setSparseResidencyBuffer( VULKAN_HPP_NAMESPACE::Bool32 sparseResidencyBuffer_ ) VULKAN_HPP_NOEXCEPT
+ {
+ sparseResidencyBuffer = sparseResidencyBuffer_;
+ return *this;
+ }
+
+ PhysicalDeviceFeatures &
+ setSparseResidencyImage2D( VULKAN_HPP_NAMESPACE::Bool32 sparseResidencyImage2D_ ) VULKAN_HPP_NOEXCEPT
+ {
+ sparseResidencyImage2D = sparseResidencyImage2D_;
+ return *this;
+ }
+
+ PhysicalDeviceFeatures &
+ setSparseResidencyImage3D( VULKAN_HPP_NAMESPACE::Bool32 sparseResidencyImage3D_ ) VULKAN_HPP_NOEXCEPT
+ {
+ sparseResidencyImage3D = sparseResidencyImage3D_;
+ return *this;
+ }
+
+ PhysicalDeviceFeatures &
+ setSparseResidency2Samples( VULKAN_HPP_NAMESPACE::Bool32 sparseResidency2Samples_ ) VULKAN_HPP_NOEXCEPT
+ {
+ sparseResidency2Samples = sparseResidency2Samples_;
+ return *this;
+ }
+
+ PhysicalDeviceFeatures &
+ setSparseResidency4Samples( VULKAN_HPP_NAMESPACE::Bool32 sparseResidency4Samples_ ) VULKAN_HPP_NOEXCEPT
+ {
+ sparseResidency4Samples = sparseResidency4Samples_;
+ return *this;
+ }
+
+ PhysicalDeviceFeatures &
+ setSparseResidency8Samples( VULKAN_HPP_NAMESPACE::Bool32 sparseResidency8Samples_ ) VULKAN_HPP_NOEXCEPT
+ {
+ sparseResidency8Samples = sparseResidency8Samples_;
+ return *this;
+ }
+
+ PhysicalDeviceFeatures &
+ setSparseResidency16Samples( VULKAN_HPP_NAMESPACE::Bool32 sparseResidency16Samples_ ) VULKAN_HPP_NOEXCEPT
+ {
+ sparseResidency16Samples = sparseResidency16Samples_;
+ return *this;
+ }
+
+ PhysicalDeviceFeatures &
+ setSparseResidencyAliased( VULKAN_HPP_NAMESPACE::Bool32 sparseResidencyAliased_ ) VULKAN_HPP_NOEXCEPT
+ {
+ sparseResidencyAliased = sparseResidencyAliased_;
+ return *this;
+ }
+
+ PhysicalDeviceFeatures &
+ setVariableMultisampleRate( VULKAN_HPP_NAMESPACE::Bool32 variableMultisampleRate_ ) VULKAN_HPP_NOEXCEPT
+ {
+ variableMultisampleRate = variableMultisampleRate_;
+ return *this;
+ }
+
+ PhysicalDeviceFeatures & setInheritedQueries( VULKAN_HPP_NAMESPACE::Bool32 inheritedQueries_ ) VULKAN_HPP_NOEXCEPT
+ {
+ inheritedQueries = inheritedQueries_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceFeatures const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceFeatures *>( this );
+ }
+
+ operator VkPhysicalDeviceFeatures &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceFeatures *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceFeatures const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceFeatures const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( robustBufferAccess == rhs.robustBufferAccess ) && ( fullDrawIndexUint32 == rhs.fullDrawIndexUint32 ) &&
+ ( imageCubeArray == rhs.imageCubeArray ) && ( independentBlend == rhs.independentBlend ) &&
+ ( geometryShader == rhs.geometryShader ) && ( tessellationShader == rhs.tessellationShader ) &&
+ ( sampleRateShading == rhs.sampleRateShading ) && ( dualSrcBlend == rhs.dualSrcBlend ) &&
+ ( logicOp == rhs.logicOp ) && ( multiDrawIndirect == rhs.multiDrawIndirect ) &&
+ ( drawIndirectFirstInstance == rhs.drawIndirectFirstInstance ) && ( depthClamp == rhs.depthClamp ) &&
+ ( depthBiasClamp == rhs.depthBiasClamp ) && ( fillModeNonSolid == rhs.fillModeNonSolid ) &&
+ ( depthBounds == rhs.depthBounds ) && ( wideLines == rhs.wideLines ) &&
+ ( largePoints == rhs.largePoints ) && ( alphaToOne == rhs.alphaToOne ) &&
+ ( multiViewport == rhs.multiViewport ) && ( samplerAnisotropy == rhs.samplerAnisotropy ) &&
+ ( textureCompressionETC2 == rhs.textureCompressionETC2 ) &&
+ ( textureCompressionASTC_LDR == rhs.textureCompressionASTC_LDR ) &&
+ ( textureCompressionBC == rhs.textureCompressionBC ) &&
+ ( occlusionQueryPrecise == rhs.occlusionQueryPrecise ) &&
+ ( pipelineStatisticsQuery == rhs.pipelineStatisticsQuery ) &&
+ ( vertexPipelineStoresAndAtomics == rhs.vertexPipelineStoresAndAtomics ) &&
+ ( fragmentStoresAndAtomics == rhs.fragmentStoresAndAtomics ) &&
+ ( shaderTessellationAndGeometryPointSize == rhs.shaderTessellationAndGeometryPointSize ) &&
+ ( shaderImageGatherExtended == rhs.shaderImageGatherExtended ) &&
+ ( shaderStorageImageExtendedFormats == rhs.shaderStorageImageExtendedFormats ) &&
+ ( shaderStorageImageMultisample == rhs.shaderStorageImageMultisample ) &&
+ ( shaderStorageImageReadWithoutFormat == rhs.shaderStorageImageReadWithoutFormat ) &&
+ ( shaderStorageImageWriteWithoutFormat == rhs.shaderStorageImageWriteWithoutFormat ) &&
+ ( shaderUniformBufferArrayDynamicIndexing == rhs.shaderUniformBufferArrayDynamicIndexing ) &&
+ ( shaderSampledImageArrayDynamicIndexing == rhs.shaderSampledImageArrayDynamicIndexing ) &&
+ ( shaderStorageBufferArrayDynamicIndexing == rhs.shaderStorageBufferArrayDynamicIndexing ) &&
+ ( shaderStorageImageArrayDynamicIndexing == rhs.shaderStorageImageArrayDynamicIndexing ) &&
+ ( shaderClipDistance == rhs.shaderClipDistance ) && ( shaderCullDistance == rhs.shaderCullDistance ) &&
+ ( shaderFloat64 == rhs.shaderFloat64 ) && ( shaderInt64 == rhs.shaderInt64 ) &&
+ ( shaderInt16 == rhs.shaderInt16 ) && ( shaderResourceResidency == rhs.shaderResourceResidency ) &&
+ ( shaderResourceMinLod == rhs.shaderResourceMinLod ) && ( sparseBinding == rhs.sparseBinding ) &&
+ ( sparseResidencyBuffer == rhs.sparseResidencyBuffer ) &&
+ ( sparseResidencyImage2D == rhs.sparseResidencyImage2D ) &&
+ ( sparseResidencyImage3D == rhs.sparseResidencyImage3D ) &&
+ ( sparseResidency2Samples == rhs.sparseResidency2Samples ) &&
+ ( sparseResidency4Samples == rhs.sparseResidency4Samples ) &&
+ ( sparseResidency8Samples == rhs.sparseResidency8Samples ) &&
+ ( sparseResidency16Samples == rhs.sparseResidency16Samples ) &&
+ ( sparseResidencyAliased == rhs.sparseResidencyAliased ) &&
+ ( variableMultisampleRate == rhs.variableMultisampleRate ) && ( inheritedQueries == rhs.inheritedQueries );
+ }
+
+ bool operator!=( PhysicalDeviceFeatures const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::Bool32 robustBufferAccess = {};
+ VULKAN_HPP_NAMESPACE::Bool32 fullDrawIndexUint32 = {};
+ VULKAN_HPP_NAMESPACE::Bool32 imageCubeArray = {};
+ VULKAN_HPP_NAMESPACE::Bool32 independentBlend = {};
+ VULKAN_HPP_NAMESPACE::Bool32 geometryShader = {};
+ VULKAN_HPP_NAMESPACE::Bool32 tessellationShader = {};
+ VULKAN_HPP_NAMESPACE::Bool32 sampleRateShading = {};
+ VULKAN_HPP_NAMESPACE::Bool32 dualSrcBlend = {};
+ VULKAN_HPP_NAMESPACE::Bool32 logicOp = {};
+ VULKAN_HPP_NAMESPACE::Bool32 multiDrawIndirect = {};
+ VULKAN_HPP_NAMESPACE::Bool32 drawIndirectFirstInstance = {};
+ VULKAN_HPP_NAMESPACE::Bool32 depthClamp = {};
+ VULKAN_HPP_NAMESPACE::Bool32 depthBiasClamp = {};
+ VULKAN_HPP_NAMESPACE::Bool32 fillModeNonSolid = {};
+ VULKAN_HPP_NAMESPACE::Bool32 depthBounds = {};
+ VULKAN_HPP_NAMESPACE::Bool32 wideLines = {};
+ VULKAN_HPP_NAMESPACE::Bool32 largePoints = {};
+ VULKAN_HPP_NAMESPACE::Bool32 alphaToOne = {};
+ VULKAN_HPP_NAMESPACE::Bool32 multiViewport = {};
+ VULKAN_HPP_NAMESPACE::Bool32 samplerAnisotropy = {};
+ VULKAN_HPP_NAMESPACE::Bool32 textureCompressionETC2 = {};
+ VULKAN_HPP_NAMESPACE::Bool32 textureCompressionASTC_LDR = {};
+ VULKAN_HPP_NAMESPACE::Bool32 textureCompressionBC = {};
+ VULKAN_HPP_NAMESPACE::Bool32 occlusionQueryPrecise = {};
+ VULKAN_HPP_NAMESPACE::Bool32 pipelineStatisticsQuery = {};
+ VULKAN_HPP_NAMESPACE::Bool32 vertexPipelineStoresAndAtomics = {};
+ VULKAN_HPP_NAMESPACE::Bool32 fragmentStoresAndAtomics = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderTessellationAndGeometryPointSize = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderImageGatherExtended = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageExtendedFormats = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageMultisample = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageReadWithoutFormat = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageWriteWithoutFormat = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderUniformBufferArrayDynamicIndexing = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderSampledImageArrayDynamicIndexing = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderStorageBufferArrayDynamicIndexing = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageArrayDynamicIndexing = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderClipDistance = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderCullDistance = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderFloat64 = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderInt64 = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderInt16 = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderResourceResidency = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderResourceMinLod = {};
+ VULKAN_HPP_NAMESPACE::Bool32 sparseBinding = {};
+ VULKAN_HPP_NAMESPACE::Bool32 sparseResidencyBuffer = {};
+ VULKAN_HPP_NAMESPACE::Bool32 sparseResidencyImage2D = {};
+ VULKAN_HPP_NAMESPACE::Bool32 sparseResidencyImage3D = {};
+ VULKAN_HPP_NAMESPACE::Bool32 sparseResidency2Samples = {};
+ VULKAN_HPP_NAMESPACE::Bool32 sparseResidency4Samples = {};
+ VULKAN_HPP_NAMESPACE::Bool32 sparseResidency8Samples = {};
+ VULKAN_HPP_NAMESPACE::Bool32 sparseResidency16Samples = {};
+ VULKAN_HPP_NAMESPACE::Bool32 sparseResidencyAliased = {};
+ VULKAN_HPP_NAMESPACE::Bool32 variableMultisampleRate = {};
+ VULKAN_HPP_NAMESPACE::Bool32 inheritedQueries = {};
+ };
+ static_assert( sizeof( PhysicalDeviceFeatures ) == sizeof( VkPhysicalDeviceFeatures ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceFeatures>::value, "struct wrapper is not a standard layout!" );
+
+ struct DeviceCreateInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDeviceCreateInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR DeviceCreateInfo( VULKAN_HPP_NAMESPACE::DeviceCreateFlags flags_ = {},
+ uint32_t queueCreateInfoCount_ = {},
+ const VULKAN_HPP_NAMESPACE::DeviceQueueCreateInfo * pQueueCreateInfos_ = {},
+ uint32_t enabledLayerCount_ = {},
+ const char * const * ppEnabledLayerNames_ = {},
+ uint32_t enabledExtensionCount_ = {},
+ const char * const * ppEnabledExtensionNames_ = {},
+ const VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures * pEnabledFeatures_ = {} )
+ VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , queueCreateInfoCount( queueCreateInfoCount_ )
+ , pQueueCreateInfos( pQueueCreateInfos_ )
+ , enabledLayerCount( enabledLayerCount_ )
+ , ppEnabledLayerNames( ppEnabledLayerNames_ )
+ , enabledExtensionCount( enabledExtensionCount_ )
+ , ppEnabledExtensionNames( ppEnabledExtensionNames_ )
+ , pEnabledFeatures( pEnabledFeatures_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR DeviceCreateInfo( DeviceCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DeviceCreateInfo( VkDeviceCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DeviceCreateInfo( *reinterpret_cast<DeviceCreateInfo const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ DeviceCreateInfo(
+ VULKAN_HPP_NAMESPACE::DeviceCreateFlags flags_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DeviceQueueCreateInfo> const &
+ queueCreateInfos_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const char * const> const & pEnabledLayerNames_ = {},
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const char * const> const & pEnabledExtensionNames_ = {},
+ const VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures * pEnabledFeatures_ = {} )
+ : flags( flags_ )
+ , queueCreateInfoCount( static_cast<uint32_t>( queueCreateInfos_.size() ) )
+ , pQueueCreateInfos( queueCreateInfos_.data() )
+ , enabledLayerCount( static_cast<uint32_t>( pEnabledLayerNames_.size() ) )
+ , ppEnabledLayerNames( pEnabledLayerNames_.data() )
+ , enabledExtensionCount( static_cast<uint32_t>( pEnabledExtensionNames_.size() ) )
+ , ppEnabledExtensionNames( pEnabledExtensionNames_.data() )
+ , pEnabledFeatures( pEnabledFeatures_ )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DeviceCreateInfo & operator=( DeviceCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DeviceCreateInfo & operator=( VkDeviceCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DeviceCreateInfo const *>( &rhs );
+ return *this;
+ }
+
+ DeviceCreateInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ DeviceCreateInfo & setFlags( VULKAN_HPP_NAMESPACE::DeviceCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ DeviceCreateInfo & setQueueCreateInfoCount( uint32_t queueCreateInfoCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ queueCreateInfoCount = queueCreateInfoCount_;
+ return *this;
+ }
+
+ DeviceCreateInfo &
+ setPQueueCreateInfos( const VULKAN_HPP_NAMESPACE::DeviceQueueCreateInfo * pQueueCreateInfos_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pQueueCreateInfos = pQueueCreateInfos_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ DeviceCreateInfo & setQueueCreateInfos(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DeviceQueueCreateInfo> const &
+ queueCreateInfos_ ) VULKAN_HPP_NOEXCEPT
+ {
+ queueCreateInfoCount = static_cast<uint32_t>( queueCreateInfos_.size() );
+ pQueueCreateInfos = queueCreateInfos_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ DeviceCreateInfo & setEnabledLayerCount( uint32_t enabledLayerCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ enabledLayerCount = enabledLayerCount_;
+ return *this;
+ }
+
+ DeviceCreateInfo & setPpEnabledLayerNames( const char * const * ppEnabledLayerNames_ ) VULKAN_HPP_NOEXCEPT
+ {
+ ppEnabledLayerNames = ppEnabledLayerNames_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ DeviceCreateInfo & setPEnabledLayerNames( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const char * const> const &
+ pEnabledLayerNames_ ) VULKAN_HPP_NOEXCEPT
+ {
+ enabledLayerCount = static_cast<uint32_t>( pEnabledLayerNames_.size() );
+ ppEnabledLayerNames = pEnabledLayerNames_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ DeviceCreateInfo & setEnabledExtensionCount( uint32_t enabledExtensionCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ enabledExtensionCount = enabledExtensionCount_;
+ return *this;
+ }
+
+ DeviceCreateInfo & setPpEnabledExtensionNames( const char * const * ppEnabledExtensionNames_ ) VULKAN_HPP_NOEXCEPT
+ {
+ ppEnabledExtensionNames = ppEnabledExtensionNames_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ DeviceCreateInfo & setPEnabledExtensionNames(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const char * const> const & pEnabledExtensionNames_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ enabledExtensionCount = static_cast<uint32_t>( pEnabledExtensionNames_.size() );
+ ppEnabledExtensionNames = pEnabledExtensionNames_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ DeviceCreateInfo &
+ setPEnabledFeatures( const VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures * pEnabledFeatures_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pEnabledFeatures = pEnabledFeatures_;
+ return *this;
+ }
+
+ operator VkDeviceCreateInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDeviceCreateInfo *>( this );
+ }
+
+ operator VkDeviceCreateInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDeviceCreateInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DeviceCreateInfo const & ) const = default;
+#else
+ bool operator==( DeviceCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( queueCreateInfoCount == rhs.queueCreateInfoCount ) && ( pQueueCreateInfos == rhs.pQueueCreateInfos ) &&
+ ( enabledLayerCount == rhs.enabledLayerCount ) && ( ppEnabledLayerNames == rhs.ppEnabledLayerNames ) &&
+ ( enabledExtensionCount == rhs.enabledExtensionCount ) &&
+ ( ppEnabledExtensionNames == rhs.ppEnabledExtensionNames ) && ( pEnabledFeatures == rhs.pEnabledFeatures );
+ }
+
+ bool operator!=( DeviceCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDeviceCreateInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::DeviceCreateFlags flags = {};
+ uint32_t queueCreateInfoCount = {};
+ const VULKAN_HPP_NAMESPACE::DeviceQueueCreateInfo * pQueueCreateInfos = {};
+ uint32_t enabledLayerCount = {};
+ const char * const * ppEnabledLayerNames = {};
+ uint32_t enabledExtensionCount = {};
+ const char * const * ppEnabledExtensionNames = {};
+ const VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures * pEnabledFeatures = {};
+ };
+ static_assert( sizeof( DeviceCreateInfo ) == sizeof( VkDeviceCreateInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DeviceCreateInfo>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eDeviceCreateInfo>
+ {
+ using Type = DeviceCreateInfo;
+ };
+
+ struct DeviceDeviceMemoryReportCreateInfoEXT
+ {
+ static const bool allowDuplicate = true;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eDeviceDeviceMemoryReportCreateInfoEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ DeviceDeviceMemoryReportCreateInfoEXT( VULKAN_HPP_NAMESPACE::DeviceMemoryReportFlagsEXT flags_ = {},
+ PFN_vkDeviceMemoryReportCallbackEXT pfnUserCallback_ = {},
+ void * pUserData_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , pfnUserCallback( pfnUserCallback_ )
+ , pUserData( pUserData_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR DeviceDeviceMemoryReportCreateInfoEXT( DeviceDeviceMemoryReportCreateInfoEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ DeviceDeviceMemoryReportCreateInfoEXT( VkDeviceDeviceMemoryReportCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DeviceDeviceMemoryReportCreateInfoEXT(
+ *reinterpret_cast<DeviceDeviceMemoryReportCreateInfoEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DeviceDeviceMemoryReportCreateInfoEXT &
+ operator=( DeviceDeviceMemoryReportCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DeviceDeviceMemoryReportCreateInfoEXT &
+ operator=( VkDeviceDeviceMemoryReportCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DeviceDeviceMemoryReportCreateInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ DeviceDeviceMemoryReportCreateInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ DeviceDeviceMemoryReportCreateInfoEXT &
+ setFlags( VULKAN_HPP_NAMESPACE::DeviceMemoryReportFlagsEXT flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ DeviceDeviceMemoryReportCreateInfoEXT &
+ setPfnUserCallback( PFN_vkDeviceMemoryReportCallbackEXT pfnUserCallback_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pfnUserCallback = pfnUserCallback_;
+ return *this;
+ }
+
+ DeviceDeviceMemoryReportCreateInfoEXT & setPUserData( void * pUserData_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pUserData = pUserData_;
+ return *this;
+ }
+
+ operator VkDeviceDeviceMemoryReportCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDeviceDeviceMemoryReportCreateInfoEXT *>( this );
+ }
+
+ operator VkDeviceDeviceMemoryReportCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDeviceDeviceMemoryReportCreateInfoEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DeviceDeviceMemoryReportCreateInfoEXT const & ) const = default;
+#else
+ bool operator==( DeviceDeviceMemoryReportCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( pfnUserCallback == rhs.pfnUserCallback ) && ( pUserData == rhs.pUserData );
+ }
+
+ bool operator!=( DeviceDeviceMemoryReportCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDeviceDeviceMemoryReportCreateInfoEXT;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::DeviceMemoryReportFlagsEXT flags = {};
+ PFN_vkDeviceMemoryReportCallbackEXT pfnUserCallback = {};
+ void * pUserData = {};
+ };
+ static_assert( sizeof( DeviceDeviceMemoryReportCreateInfoEXT ) == sizeof( VkDeviceDeviceMemoryReportCreateInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DeviceDeviceMemoryReportCreateInfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eDeviceDeviceMemoryReportCreateInfoEXT>
+ {
+ using Type = DeviceDeviceMemoryReportCreateInfoEXT;
+ };
+
+ struct DeviceDiagnosticsConfigCreateInfoNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eDeviceDiagnosticsConfigCreateInfoNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR DeviceDiagnosticsConfigCreateInfoNV(
+ VULKAN_HPP_NAMESPACE::DeviceDiagnosticsConfigFlagsNV flags_ = {} ) VULKAN_HPP_NOEXCEPT : flags( flags_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR DeviceDiagnosticsConfigCreateInfoNV( DeviceDiagnosticsConfigCreateInfoNV const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ DeviceDiagnosticsConfigCreateInfoNV( VkDeviceDiagnosticsConfigCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DeviceDiagnosticsConfigCreateInfoNV( *reinterpret_cast<DeviceDiagnosticsConfigCreateInfoNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DeviceDiagnosticsConfigCreateInfoNV &
+ operator=( DeviceDiagnosticsConfigCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DeviceDiagnosticsConfigCreateInfoNV &
+ operator=( VkDeviceDiagnosticsConfigCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DeviceDiagnosticsConfigCreateInfoNV const *>( &rhs );
+ return *this;
+ }
+
+ DeviceDiagnosticsConfigCreateInfoNV & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ DeviceDiagnosticsConfigCreateInfoNV &
+ setFlags( VULKAN_HPP_NAMESPACE::DeviceDiagnosticsConfigFlagsNV flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ operator VkDeviceDiagnosticsConfigCreateInfoNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDeviceDiagnosticsConfigCreateInfoNV *>( this );
+ }
+
+ operator VkDeviceDiagnosticsConfigCreateInfoNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDeviceDiagnosticsConfigCreateInfoNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DeviceDiagnosticsConfigCreateInfoNV const & ) const = default;
+#else
+ bool operator==( DeviceDiagnosticsConfigCreateInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags );
+ }
+
+ bool operator!=( DeviceDiagnosticsConfigCreateInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDeviceDiagnosticsConfigCreateInfoNV;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::DeviceDiagnosticsConfigFlagsNV flags = {};
+ };
+ static_assert( sizeof( DeviceDiagnosticsConfigCreateInfoNV ) == sizeof( VkDeviceDiagnosticsConfigCreateInfoNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DeviceDiagnosticsConfigCreateInfoNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eDeviceDiagnosticsConfigCreateInfoNV>
+ {
+ using Type = DeviceDiagnosticsConfigCreateInfoNV;
+ };
+
+ struct DeviceEventInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDeviceEventInfoEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ DeviceEventInfoEXT( VULKAN_HPP_NAMESPACE::DeviceEventTypeEXT deviceEvent_ =
+ VULKAN_HPP_NAMESPACE::DeviceEventTypeEXT::eDisplayHotplug ) VULKAN_HPP_NOEXCEPT
+ : deviceEvent( deviceEvent_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR DeviceEventInfoEXT( DeviceEventInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DeviceEventInfoEXT( VkDeviceEventInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DeviceEventInfoEXT( *reinterpret_cast<DeviceEventInfoEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DeviceEventInfoEXT &
+ operator=( DeviceEventInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DeviceEventInfoEXT & operator=( VkDeviceEventInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DeviceEventInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ DeviceEventInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ DeviceEventInfoEXT & setDeviceEvent( VULKAN_HPP_NAMESPACE::DeviceEventTypeEXT deviceEvent_ ) VULKAN_HPP_NOEXCEPT
+ {
+ deviceEvent = deviceEvent_;
+ return *this;
+ }
+
+ operator VkDeviceEventInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDeviceEventInfoEXT *>( this );
+ }
+
+ operator VkDeviceEventInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDeviceEventInfoEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DeviceEventInfoEXT const & ) const = default;
+#else
+ bool operator==( DeviceEventInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( deviceEvent == rhs.deviceEvent );
+ }
+
+ bool operator!=( DeviceEventInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDeviceEventInfoEXT;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::DeviceEventTypeEXT deviceEvent = VULKAN_HPP_NAMESPACE::DeviceEventTypeEXT::eDisplayHotplug;
+ };
+ static_assert( sizeof( DeviceEventInfoEXT ) == sizeof( VkDeviceEventInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DeviceEventInfoEXT>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eDeviceEventInfoEXT>
+ {
+ using Type = DeviceEventInfoEXT;
+ };
+
+ struct DeviceGroupBindSparseInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDeviceGroupBindSparseInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR DeviceGroupBindSparseInfo( uint32_t resourceDeviceIndex_ = {},
+ uint32_t memoryDeviceIndex_ = {} ) VULKAN_HPP_NOEXCEPT
+ : resourceDeviceIndex( resourceDeviceIndex_ )
+ , memoryDeviceIndex( memoryDeviceIndex_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ DeviceGroupBindSparseInfo( DeviceGroupBindSparseInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DeviceGroupBindSparseInfo( VkDeviceGroupBindSparseInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DeviceGroupBindSparseInfo( *reinterpret_cast<DeviceGroupBindSparseInfo const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DeviceGroupBindSparseInfo &
+ operator=( DeviceGroupBindSparseInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DeviceGroupBindSparseInfo & operator=( VkDeviceGroupBindSparseInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DeviceGroupBindSparseInfo const *>( &rhs );
+ return *this;
+ }
+
+ DeviceGroupBindSparseInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ DeviceGroupBindSparseInfo & setResourceDeviceIndex( uint32_t resourceDeviceIndex_ ) VULKAN_HPP_NOEXCEPT
+ {
+ resourceDeviceIndex = resourceDeviceIndex_;
+ return *this;
+ }
+
+ DeviceGroupBindSparseInfo & setMemoryDeviceIndex( uint32_t memoryDeviceIndex_ ) VULKAN_HPP_NOEXCEPT
+ {
+ memoryDeviceIndex = memoryDeviceIndex_;
+ return *this;
+ }
+
+ operator VkDeviceGroupBindSparseInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDeviceGroupBindSparseInfo *>( this );
+ }
+
+ operator VkDeviceGroupBindSparseInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDeviceGroupBindSparseInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DeviceGroupBindSparseInfo const & ) const = default;
+#else
+ bool operator==( DeviceGroupBindSparseInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( resourceDeviceIndex == rhs.resourceDeviceIndex ) &&
+ ( memoryDeviceIndex == rhs.memoryDeviceIndex );
+ }
+
+ bool operator!=( DeviceGroupBindSparseInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDeviceGroupBindSparseInfo;
+ const void * pNext = {};
+ uint32_t resourceDeviceIndex = {};
+ uint32_t memoryDeviceIndex = {};
+ };
+ static_assert( sizeof( DeviceGroupBindSparseInfo ) == sizeof( VkDeviceGroupBindSparseInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DeviceGroupBindSparseInfo>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eDeviceGroupBindSparseInfo>
+ {
+ using Type = DeviceGroupBindSparseInfo;
+ };
+ using DeviceGroupBindSparseInfoKHR = DeviceGroupBindSparseInfo;
+
+ struct DeviceGroupCommandBufferBeginInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eDeviceGroupCommandBufferBeginInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR DeviceGroupCommandBufferBeginInfo( uint32_t deviceMask_ = {} ) VULKAN_HPP_NOEXCEPT
+ : deviceMask( deviceMask_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ DeviceGroupCommandBufferBeginInfo( DeviceGroupCommandBufferBeginInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DeviceGroupCommandBufferBeginInfo( VkDeviceGroupCommandBufferBeginInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DeviceGroupCommandBufferBeginInfo( *reinterpret_cast<DeviceGroupCommandBufferBeginInfo const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DeviceGroupCommandBufferBeginInfo &
+ operator=( DeviceGroupCommandBufferBeginInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DeviceGroupCommandBufferBeginInfo & operator=( VkDeviceGroupCommandBufferBeginInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DeviceGroupCommandBufferBeginInfo const *>( &rhs );
+ return *this;
+ }
+
+ DeviceGroupCommandBufferBeginInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ DeviceGroupCommandBufferBeginInfo & setDeviceMask( uint32_t deviceMask_ ) VULKAN_HPP_NOEXCEPT
+ {
+ deviceMask = deviceMask_;
+ return *this;
+ }
+
+ operator VkDeviceGroupCommandBufferBeginInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDeviceGroupCommandBufferBeginInfo *>( this );
+ }
+
+ operator VkDeviceGroupCommandBufferBeginInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDeviceGroupCommandBufferBeginInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DeviceGroupCommandBufferBeginInfo const & ) const = default;
+#else
+ bool operator==( DeviceGroupCommandBufferBeginInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( deviceMask == rhs.deviceMask );
+ }
+
+ bool operator!=( DeviceGroupCommandBufferBeginInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDeviceGroupCommandBufferBeginInfo;
+ const void * pNext = {};
+ uint32_t deviceMask = {};
+ };
+ static_assert( sizeof( DeviceGroupCommandBufferBeginInfo ) == sizeof( VkDeviceGroupCommandBufferBeginInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DeviceGroupCommandBufferBeginInfo>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eDeviceGroupCommandBufferBeginInfo>
+ {
+ using Type = DeviceGroupCommandBufferBeginInfo;
+ };
+ using DeviceGroupCommandBufferBeginInfoKHR = DeviceGroupCommandBufferBeginInfo;
+
+ struct DeviceGroupDeviceCreateInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDeviceGroupDeviceCreateInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR DeviceGroupDeviceCreateInfo(
+ uint32_t physicalDeviceCount_ = {},
+ const VULKAN_HPP_NAMESPACE::PhysicalDevice * pPhysicalDevices_ = {} ) VULKAN_HPP_NOEXCEPT
+ : physicalDeviceCount( physicalDeviceCount_ )
+ , pPhysicalDevices( pPhysicalDevices_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ DeviceGroupDeviceCreateInfo( DeviceGroupDeviceCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DeviceGroupDeviceCreateInfo( VkDeviceGroupDeviceCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DeviceGroupDeviceCreateInfo( *reinterpret_cast<DeviceGroupDeviceCreateInfo const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ DeviceGroupDeviceCreateInfo(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::PhysicalDevice> const &
+ physicalDevices_ )
+ : physicalDeviceCount( static_cast<uint32_t>( physicalDevices_.size() ) )
+ , pPhysicalDevices( physicalDevices_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DeviceGroupDeviceCreateInfo &
+ operator=( DeviceGroupDeviceCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DeviceGroupDeviceCreateInfo & operator=( VkDeviceGroupDeviceCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DeviceGroupDeviceCreateInfo const *>( &rhs );
+ return *this;
+ }
+
+ DeviceGroupDeviceCreateInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ DeviceGroupDeviceCreateInfo & setPhysicalDeviceCount( uint32_t physicalDeviceCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ physicalDeviceCount = physicalDeviceCount_;
+ return *this;
+ }
+
+ DeviceGroupDeviceCreateInfo &
+ setPPhysicalDevices( const VULKAN_HPP_NAMESPACE::PhysicalDevice * pPhysicalDevices_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pPhysicalDevices = pPhysicalDevices_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ DeviceGroupDeviceCreateInfo & setPhysicalDevices(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::PhysicalDevice> const &
+ physicalDevices_ ) VULKAN_HPP_NOEXCEPT
+ {
+ physicalDeviceCount = static_cast<uint32_t>( physicalDevices_.size() );
+ pPhysicalDevices = physicalDevices_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkDeviceGroupDeviceCreateInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDeviceGroupDeviceCreateInfo *>( this );
+ }
+
+ operator VkDeviceGroupDeviceCreateInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDeviceGroupDeviceCreateInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DeviceGroupDeviceCreateInfo const & ) const = default;
+#else
+ bool operator==( DeviceGroupDeviceCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( physicalDeviceCount == rhs.physicalDeviceCount ) &&
+ ( pPhysicalDevices == rhs.pPhysicalDevices );
+ }
+
+ bool operator!=( DeviceGroupDeviceCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDeviceGroupDeviceCreateInfo;
+ const void * pNext = {};
+ uint32_t physicalDeviceCount = {};
+ const VULKAN_HPP_NAMESPACE::PhysicalDevice * pPhysicalDevices = {};
+ };
+ static_assert( sizeof( DeviceGroupDeviceCreateInfo ) == sizeof( VkDeviceGroupDeviceCreateInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DeviceGroupDeviceCreateInfo>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eDeviceGroupDeviceCreateInfo>
+ {
+ using Type = DeviceGroupDeviceCreateInfo;
+ };
+ using DeviceGroupDeviceCreateInfoKHR = DeviceGroupDeviceCreateInfo;
+
+ struct DeviceGroupPresentCapabilitiesKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eDeviceGroupPresentCapabilitiesKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR_14 DeviceGroupPresentCapabilitiesKHR(
+ std::array<uint32_t, VK_MAX_DEVICE_GROUP_SIZE> const & presentMask_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagsKHR modes_ = {} ) VULKAN_HPP_NOEXCEPT
+ : presentMask( presentMask_ )
+ , modes( modes_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR_14
+ DeviceGroupPresentCapabilitiesKHR( DeviceGroupPresentCapabilitiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DeviceGroupPresentCapabilitiesKHR( VkDeviceGroupPresentCapabilitiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DeviceGroupPresentCapabilitiesKHR( *reinterpret_cast<DeviceGroupPresentCapabilitiesKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DeviceGroupPresentCapabilitiesKHR &
+ operator=( DeviceGroupPresentCapabilitiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DeviceGroupPresentCapabilitiesKHR & operator=( VkDeviceGroupPresentCapabilitiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DeviceGroupPresentCapabilitiesKHR const *>( &rhs );
+ return *this;
+ }
+
+ operator VkDeviceGroupPresentCapabilitiesKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDeviceGroupPresentCapabilitiesKHR *>( this );
+ }
+
+ operator VkDeviceGroupPresentCapabilitiesKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDeviceGroupPresentCapabilitiesKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DeviceGroupPresentCapabilitiesKHR const & ) const = default;
+#else
+ bool operator==( DeviceGroupPresentCapabilitiesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( presentMask == rhs.presentMask ) &&
+ ( modes == rhs.modes );
+ }
+
+ bool operator!=( DeviceGroupPresentCapabilitiesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDeviceGroupPresentCapabilitiesKHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint32_t, VK_MAX_DEVICE_GROUP_SIZE> presentMask = {};
+ VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagsKHR modes = {};
+ };
+ static_assert( sizeof( DeviceGroupPresentCapabilitiesKHR ) == sizeof( VkDeviceGroupPresentCapabilitiesKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DeviceGroupPresentCapabilitiesKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eDeviceGroupPresentCapabilitiesKHR>
+ {
+ using Type = DeviceGroupPresentCapabilitiesKHR;
+ };
+
+ struct DeviceGroupPresentInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDeviceGroupPresentInfoKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ DeviceGroupPresentInfoKHR( uint32_t swapchainCount_ = {},
+ const uint32_t * pDeviceMasks_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagBitsKHR mode_ =
+ VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagBitsKHR::eLocal ) VULKAN_HPP_NOEXCEPT
+ : swapchainCount( swapchainCount_ )
+ , pDeviceMasks( pDeviceMasks_ )
+ , mode( mode_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ DeviceGroupPresentInfoKHR( DeviceGroupPresentInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DeviceGroupPresentInfoKHR( VkDeviceGroupPresentInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DeviceGroupPresentInfoKHR( *reinterpret_cast<DeviceGroupPresentInfoKHR const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ DeviceGroupPresentInfoKHR( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & deviceMasks_,
+ VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagBitsKHR mode_ =
+ VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagBitsKHR::eLocal )
+ : swapchainCount( static_cast<uint32_t>( deviceMasks_.size() ) )
+ , pDeviceMasks( deviceMasks_.data() )
+ , mode( mode_ )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DeviceGroupPresentInfoKHR &
+ operator=( DeviceGroupPresentInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DeviceGroupPresentInfoKHR & operator=( VkDeviceGroupPresentInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DeviceGroupPresentInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ DeviceGroupPresentInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ DeviceGroupPresentInfoKHR & setSwapchainCount( uint32_t swapchainCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ swapchainCount = swapchainCount_;
+ return *this;
+ }
+
+ DeviceGroupPresentInfoKHR & setPDeviceMasks( const uint32_t * pDeviceMasks_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pDeviceMasks = pDeviceMasks_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ DeviceGroupPresentInfoKHR & setDeviceMasks(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & deviceMasks_ ) VULKAN_HPP_NOEXCEPT
+ {
+ swapchainCount = static_cast<uint32_t>( deviceMasks_.size() );
+ pDeviceMasks = deviceMasks_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ DeviceGroupPresentInfoKHR &
+ setMode( VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagBitsKHR mode_ ) VULKAN_HPP_NOEXCEPT
+ {
+ mode = mode_;
+ return *this;
+ }
+
+ operator VkDeviceGroupPresentInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDeviceGroupPresentInfoKHR *>( this );
+ }
+
+ operator VkDeviceGroupPresentInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDeviceGroupPresentInfoKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DeviceGroupPresentInfoKHR const & ) const = default;
+#else
+ bool operator==( DeviceGroupPresentInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( swapchainCount == rhs.swapchainCount ) &&
+ ( pDeviceMasks == rhs.pDeviceMasks ) && ( mode == rhs.mode );
+ }
+
+ bool operator!=( DeviceGroupPresentInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDeviceGroupPresentInfoKHR;
+ const void * pNext = {};
+ uint32_t swapchainCount = {};
+ const uint32_t * pDeviceMasks = {};
+ VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagBitsKHR mode =
+ VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagBitsKHR::eLocal;
+ };
+ static_assert( sizeof( DeviceGroupPresentInfoKHR ) == sizeof( VkDeviceGroupPresentInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DeviceGroupPresentInfoKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eDeviceGroupPresentInfoKHR>
+ {
+ using Type = DeviceGroupPresentInfoKHR;
+ };
+
+ struct DeviceGroupRenderPassBeginInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDeviceGroupRenderPassBeginInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR DeviceGroupRenderPassBeginInfo( uint32_t deviceMask_ = {},
+ uint32_t deviceRenderAreaCount_ = {},
+ const VULKAN_HPP_NAMESPACE::Rect2D * pDeviceRenderAreas_ = {} )
+ VULKAN_HPP_NOEXCEPT
+ : deviceMask( deviceMask_ )
+ , deviceRenderAreaCount( deviceRenderAreaCount_ )
+ , pDeviceRenderAreas( pDeviceRenderAreas_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ DeviceGroupRenderPassBeginInfo( DeviceGroupRenderPassBeginInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DeviceGroupRenderPassBeginInfo( VkDeviceGroupRenderPassBeginInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DeviceGroupRenderPassBeginInfo( *reinterpret_cast<DeviceGroupRenderPassBeginInfo const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ DeviceGroupRenderPassBeginInfo(
+ uint32_t deviceMask_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Rect2D> const & deviceRenderAreas_ )
+ : deviceMask( deviceMask_ )
+ , deviceRenderAreaCount( static_cast<uint32_t>( deviceRenderAreas_.size() ) )
+ , pDeviceRenderAreas( deviceRenderAreas_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DeviceGroupRenderPassBeginInfo &
+ operator=( DeviceGroupRenderPassBeginInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DeviceGroupRenderPassBeginInfo & operator=( VkDeviceGroupRenderPassBeginInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DeviceGroupRenderPassBeginInfo const *>( &rhs );
+ return *this;
+ }
+
+ DeviceGroupRenderPassBeginInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ DeviceGroupRenderPassBeginInfo & setDeviceMask( uint32_t deviceMask_ ) VULKAN_HPP_NOEXCEPT
+ {
+ deviceMask = deviceMask_;
+ return *this;
+ }
+
+ DeviceGroupRenderPassBeginInfo & setDeviceRenderAreaCount( uint32_t deviceRenderAreaCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ deviceRenderAreaCount = deviceRenderAreaCount_;
+ return *this;
+ }
+
+ DeviceGroupRenderPassBeginInfo &
+ setPDeviceRenderAreas( const VULKAN_HPP_NAMESPACE::Rect2D * pDeviceRenderAreas_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pDeviceRenderAreas = pDeviceRenderAreas_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ DeviceGroupRenderPassBeginInfo & setDeviceRenderAreas(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Rect2D> const & deviceRenderAreas_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ deviceRenderAreaCount = static_cast<uint32_t>( deviceRenderAreas_.size() );
+ pDeviceRenderAreas = deviceRenderAreas_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkDeviceGroupRenderPassBeginInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDeviceGroupRenderPassBeginInfo *>( this );
+ }
+
+ operator VkDeviceGroupRenderPassBeginInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDeviceGroupRenderPassBeginInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DeviceGroupRenderPassBeginInfo const & ) const = default;
+#else
+ bool operator==( DeviceGroupRenderPassBeginInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( deviceMask == rhs.deviceMask ) &&
+ ( deviceRenderAreaCount == rhs.deviceRenderAreaCount ) && ( pDeviceRenderAreas == rhs.pDeviceRenderAreas );
+ }
+
+ bool operator!=( DeviceGroupRenderPassBeginInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDeviceGroupRenderPassBeginInfo;
+ const void * pNext = {};
+ uint32_t deviceMask = {};
+ uint32_t deviceRenderAreaCount = {};
+ const VULKAN_HPP_NAMESPACE::Rect2D * pDeviceRenderAreas = {};
+ };
+ static_assert( sizeof( DeviceGroupRenderPassBeginInfo ) == sizeof( VkDeviceGroupRenderPassBeginInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DeviceGroupRenderPassBeginInfo>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eDeviceGroupRenderPassBeginInfo>
+ {
+ using Type = DeviceGroupRenderPassBeginInfo;
+ };
+ using DeviceGroupRenderPassBeginInfoKHR = DeviceGroupRenderPassBeginInfo;
+
+ struct DeviceGroupSubmitInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDeviceGroupSubmitInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ DeviceGroupSubmitInfo( uint32_t waitSemaphoreCount_ = {},
+ const uint32_t * pWaitSemaphoreDeviceIndices_ = {},
+ uint32_t commandBufferCount_ = {},
+ const uint32_t * pCommandBufferDeviceMasks_ = {},
+ uint32_t signalSemaphoreCount_ = {},
+ const uint32_t * pSignalSemaphoreDeviceIndices_ = {} ) VULKAN_HPP_NOEXCEPT
+ : waitSemaphoreCount( waitSemaphoreCount_ )
+ , pWaitSemaphoreDeviceIndices( pWaitSemaphoreDeviceIndices_ )
+ , commandBufferCount( commandBufferCount_ )
+ , pCommandBufferDeviceMasks( pCommandBufferDeviceMasks_ )
+ , signalSemaphoreCount( signalSemaphoreCount_ )
+ , pSignalSemaphoreDeviceIndices( pSignalSemaphoreDeviceIndices_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR DeviceGroupSubmitInfo( DeviceGroupSubmitInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DeviceGroupSubmitInfo( VkDeviceGroupSubmitInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DeviceGroupSubmitInfo( *reinterpret_cast<DeviceGroupSubmitInfo const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ DeviceGroupSubmitInfo(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & waitSemaphoreDeviceIndices_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & commandBufferDeviceMasks_ = {},
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & signalSemaphoreDeviceIndices_ = {} )
+ : waitSemaphoreCount( static_cast<uint32_t>( waitSemaphoreDeviceIndices_.size() ) )
+ , pWaitSemaphoreDeviceIndices( waitSemaphoreDeviceIndices_.data() )
+ , commandBufferCount( static_cast<uint32_t>( commandBufferDeviceMasks_.size() ) )
+ , pCommandBufferDeviceMasks( commandBufferDeviceMasks_.data() )
+ , signalSemaphoreCount( static_cast<uint32_t>( signalSemaphoreDeviceIndices_.size() ) )
+ , pSignalSemaphoreDeviceIndices( signalSemaphoreDeviceIndices_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DeviceGroupSubmitInfo &
+ operator=( DeviceGroupSubmitInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DeviceGroupSubmitInfo & operator=( VkDeviceGroupSubmitInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DeviceGroupSubmitInfo const *>( &rhs );
+ return *this;
+ }
+
+ DeviceGroupSubmitInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ DeviceGroupSubmitInfo & setWaitSemaphoreCount( uint32_t waitSemaphoreCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ waitSemaphoreCount = waitSemaphoreCount_;
+ return *this;
+ }
+
+ DeviceGroupSubmitInfo &
+ setPWaitSemaphoreDeviceIndices( const uint32_t * pWaitSemaphoreDeviceIndices_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pWaitSemaphoreDeviceIndices = pWaitSemaphoreDeviceIndices_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ DeviceGroupSubmitInfo & setWaitSemaphoreDeviceIndices(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & waitSemaphoreDeviceIndices_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ waitSemaphoreCount = static_cast<uint32_t>( waitSemaphoreDeviceIndices_.size() );
+ pWaitSemaphoreDeviceIndices = waitSemaphoreDeviceIndices_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ DeviceGroupSubmitInfo & setCommandBufferCount( uint32_t commandBufferCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ commandBufferCount = commandBufferCount_;
+ return *this;
+ }
+
+ DeviceGroupSubmitInfo &
+ setPCommandBufferDeviceMasks( const uint32_t * pCommandBufferDeviceMasks_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pCommandBufferDeviceMasks = pCommandBufferDeviceMasks_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ DeviceGroupSubmitInfo & setCommandBufferDeviceMasks(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & commandBufferDeviceMasks_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ commandBufferCount = static_cast<uint32_t>( commandBufferDeviceMasks_.size() );
+ pCommandBufferDeviceMasks = commandBufferDeviceMasks_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ DeviceGroupSubmitInfo & setSignalSemaphoreCount( uint32_t signalSemaphoreCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ signalSemaphoreCount = signalSemaphoreCount_;
+ return *this;
+ }
+
+ DeviceGroupSubmitInfo &
+ setPSignalSemaphoreDeviceIndices( const uint32_t * pSignalSemaphoreDeviceIndices_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pSignalSemaphoreDeviceIndices = pSignalSemaphoreDeviceIndices_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ DeviceGroupSubmitInfo & setSignalSemaphoreDeviceIndices(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & signalSemaphoreDeviceIndices_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ signalSemaphoreCount = static_cast<uint32_t>( signalSemaphoreDeviceIndices_.size() );
+ pSignalSemaphoreDeviceIndices = signalSemaphoreDeviceIndices_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkDeviceGroupSubmitInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDeviceGroupSubmitInfo *>( this );
+ }
+
+ operator VkDeviceGroupSubmitInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDeviceGroupSubmitInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DeviceGroupSubmitInfo const & ) const = default;
+#else
+ bool operator==( DeviceGroupSubmitInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( waitSemaphoreCount == rhs.waitSemaphoreCount ) &&
+ ( pWaitSemaphoreDeviceIndices == rhs.pWaitSemaphoreDeviceIndices ) &&
+ ( commandBufferCount == rhs.commandBufferCount ) &&
+ ( pCommandBufferDeviceMasks == rhs.pCommandBufferDeviceMasks ) &&
+ ( signalSemaphoreCount == rhs.signalSemaphoreCount ) &&
+ ( pSignalSemaphoreDeviceIndices == rhs.pSignalSemaphoreDeviceIndices );
+ }
+
+ bool operator!=( DeviceGroupSubmitInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDeviceGroupSubmitInfo;
+ const void * pNext = {};
+ uint32_t waitSemaphoreCount = {};
+ const uint32_t * pWaitSemaphoreDeviceIndices = {};
+ uint32_t commandBufferCount = {};
+ const uint32_t * pCommandBufferDeviceMasks = {};
+ uint32_t signalSemaphoreCount = {};
+ const uint32_t * pSignalSemaphoreDeviceIndices = {};
+ };
+ static_assert( sizeof( DeviceGroupSubmitInfo ) == sizeof( VkDeviceGroupSubmitInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DeviceGroupSubmitInfo>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eDeviceGroupSubmitInfo>
+ {
+ using Type = DeviceGroupSubmitInfo;
+ };
+ using DeviceGroupSubmitInfoKHR = DeviceGroupSubmitInfo;
+
+ struct DeviceGroupSwapchainCreateInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eDeviceGroupSwapchainCreateInfoKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR DeviceGroupSwapchainCreateInfoKHR(
+ VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagsKHR modes_ = {} ) VULKAN_HPP_NOEXCEPT : modes( modes_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ DeviceGroupSwapchainCreateInfoKHR( DeviceGroupSwapchainCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DeviceGroupSwapchainCreateInfoKHR( VkDeviceGroupSwapchainCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DeviceGroupSwapchainCreateInfoKHR( *reinterpret_cast<DeviceGroupSwapchainCreateInfoKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DeviceGroupSwapchainCreateInfoKHR &
+ operator=( DeviceGroupSwapchainCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DeviceGroupSwapchainCreateInfoKHR & operator=( VkDeviceGroupSwapchainCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DeviceGroupSwapchainCreateInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ DeviceGroupSwapchainCreateInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ DeviceGroupSwapchainCreateInfoKHR &
+ setModes( VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagsKHR modes_ ) VULKAN_HPP_NOEXCEPT
+ {
+ modes = modes_;
+ return *this;
+ }
+
+ operator VkDeviceGroupSwapchainCreateInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDeviceGroupSwapchainCreateInfoKHR *>( this );
+ }
+
+ operator VkDeviceGroupSwapchainCreateInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDeviceGroupSwapchainCreateInfoKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DeviceGroupSwapchainCreateInfoKHR const & ) const = default;
+#else
+ bool operator==( DeviceGroupSwapchainCreateInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( modes == rhs.modes );
+ }
+
+ bool operator!=( DeviceGroupSwapchainCreateInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDeviceGroupSwapchainCreateInfoKHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagsKHR modes = {};
+ };
+ static_assert( sizeof( DeviceGroupSwapchainCreateInfoKHR ) == sizeof( VkDeviceGroupSwapchainCreateInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DeviceGroupSwapchainCreateInfoKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eDeviceGroupSwapchainCreateInfoKHR>
+ {
+ using Type = DeviceGroupSwapchainCreateInfoKHR;
+ };
+
+ struct DeviceMemoryOpaqueCaptureAddressInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eDeviceMemoryOpaqueCaptureAddressInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ DeviceMemoryOpaqueCaptureAddressInfo( VULKAN_HPP_NAMESPACE::DeviceMemory memory_ = {} ) VULKAN_HPP_NOEXCEPT
+ : memory( memory_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR DeviceMemoryOpaqueCaptureAddressInfo( DeviceMemoryOpaqueCaptureAddressInfo const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ DeviceMemoryOpaqueCaptureAddressInfo( VkDeviceMemoryOpaqueCaptureAddressInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DeviceMemoryOpaqueCaptureAddressInfo( *reinterpret_cast<DeviceMemoryOpaqueCaptureAddressInfo const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DeviceMemoryOpaqueCaptureAddressInfo &
+ operator=( DeviceMemoryOpaqueCaptureAddressInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DeviceMemoryOpaqueCaptureAddressInfo &
+ operator=( VkDeviceMemoryOpaqueCaptureAddressInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DeviceMemoryOpaqueCaptureAddressInfo const *>( &rhs );
+ return *this;
+ }
+
+ DeviceMemoryOpaqueCaptureAddressInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ DeviceMemoryOpaqueCaptureAddressInfo & setMemory( VULKAN_HPP_NAMESPACE::DeviceMemory memory_ ) VULKAN_HPP_NOEXCEPT
+ {
+ memory = memory_;
+ return *this;
+ }
+
+ operator VkDeviceMemoryOpaqueCaptureAddressInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDeviceMemoryOpaqueCaptureAddressInfo *>( this );
+ }
+
+ operator VkDeviceMemoryOpaqueCaptureAddressInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDeviceMemoryOpaqueCaptureAddressInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DeviceMemoryOpaqueCaptureAddressInfo const & ) const = default;
+#else
+ bool operator==( DeviceMemoryOpaqueCaptureAddressInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( memory == rhs.memory );
+ }
+
+ bool operator!=( DeviceMemoryOpaqueCaptureAddressInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDeviceMemoryOpaqueCaptureAddressInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::DeviceMemory memory = {};
+ };
+ static_assert( sizeof( DeviceMemoryOpaqueCaptureAddressInfo ) == sizeof( VkDeviceMemoryOpaqueCaptureAddressInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DeviceMemoryOpaqueCaptureAddressInfo>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eDeviceMemoryOpaqueCaptureAddressInfo>
+ {
+ using Type = DeviceMemoryOpaqueCaptureAddressInfo;
+ };
+ using DeviceMemoryOpaqueCaptureAddressInfoKHR = DeviceMemoryOpaqueCaptureAddressInfo;
+
+ struct DeviceMemoryOverallocationCreateInfoAMD
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eDeviceMemoryOverallocationCreateInfoAMD;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR DeviceMemoryOverallocationCreateInfoAMD(
+ VULKAN_HPP_NAMESPACE::MemoryOverallocationBehaviorAMD overallocationBehavior_ =
+ VULKAN_HPP_NAMESPACE::MemoryOverallocationBehaviorAMD::eDefault ) VULKAN_HPP_NOEXCEPT
+ : overallocationBehavior( overallocationBehavior_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR DeviceMemoryOverallocationCreateInfoAMD( DeviceMemoryOverallocationCreateInfoAMD const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ DeviceMemoryOverallocationCreateInfoAMD( VkDeviceMemoryOverallocationCreateInfoAMD const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DeviceMemoryOverallocationCreateInfoAMD(
+ *reinterpret_cast<DeviceMemoryOverallocationCreateInfoAMD const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DeviceMemoryOverallocationCreateInfoAMD &
+ operator=( DeviceMemoryOverallocationCreateInfoAMD const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DeviceMemoryOverallocationCreateInfoAMD &
+ operator=( VkDeviceMemoryOverallocationCreateInfoAMD const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DeviceMemoryOverallocationCreateInfoAMD const *>( &rhs );
+ return *this;
+ }
+
+ DeviceMemoryOverallocationCreateInfoAMD & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ DeviceMemoryOverallocationCreateInfoAMD & setOverallocationBehavior(
+ VULKAN_HPP_NAMESPACE::MemoryOverallocationBehaviorAMD overallocationBehavior_ ) VULKAN_HPP_NOEXCEPT
+ {
+ overallocationBehavior = overallocationBehavior_;
+ return *this;
+ }
+
+ operator VkDeviceMemoryOverallocationCreateInfoAMD const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDeviceMemoryOverallocationCreateInfoAMD *>( this );
+ }
+
+ operator VkDeviceMemoryOverallocationCreateInfoAMD &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDeviceMemoryOverallocationCreateInfoAMD *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DeviceMemoryOverallocationCreateInfoAMD const & ) const = default;
+#else
+ bool operator==( DeviceMemoryOverallocationCreateInfoAMD const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( overallocationBehavior == rhs.overallocationBehavior );
+ }
+
+ bool operator!=( DeviceMemoryOverallocationCreateInfoAMD const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDeviceMemoryOverallocationCreateInfoAMD;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::MemoryOverallocationBehaviorAMD overallocationBehavior =
+ VULKAN_HPP_NAMESPACE::MemoryOverallocationBehaviorAMD::eDefault;
+ };
+ static_assert( sizeof( DeviceMemoryOverallocationCreateInfoAMD ) ==
+ sizeof( VkDeviceMemoryOverallocationCreateInfoAMD ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DeviceMemoryOverallocationCreateInfoAMD>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eDeviceMemoryOverallocationCreateInfoAMD>
+ {
+ using Type = DeviceMemoryOverallocationCreateInfoAMD;
+ };
+
+ struct DeviceMemoryReportCallbackDataEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eDeviceMemoryReportCallbackDataEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR DeviceMemoryReportCallbackDataEXT(
+ VULKAN_HPP_NAMESPACE::DeviceMemoryReportFlagsEXT flags_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceMemoryReportEventTypeEXT type_ =
+ VULKAN_HPP_NAMESPACE::DeviceMemoryReportEventTypeEXT::eAllocate,
+ uint64_t memoryObjectId_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize size_ = {},
+ VULKAN_HPP_NAMESPACE::ObjectType objectType_ = VULKAN_HPP_NAMESPACE::ObjectType::eUnknown,
+ uint64_t objectHandle_ = {},
+ uint32_t heapIndex_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , type( type_ )
+ , memoryObjectId( memoryObjectId_ )
+ , size( size_ )
+ , objectType( objectType_ )
+ , objectHandle( objectHandle_ )
+ , heapIndex( heapIndex_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ DeviceMemoryReportCallbackDataEXT( DeviceMemoryReportCallbackDataEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DeviceMemoryReportCallbackDataEXT( VkDeviceMemoryReportCallbackDataEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DeviceMemoryReportCallbackDataEXT( *reinterpret_cast<DeviceMemoryReportCallbackDataEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DeviceMemoryReportCallbackDataEXT &
+ operator=( DeviceMemoryReportCallbackDataEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DeviceMemoryReportCallbackDataEXT & operator=( VkDeviceMemoryReportCallbackDataEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DeviceMemoryReportCallbackDataEXT const *>( &rhs );
+ return *this;
+ }
+
+ operator VkDeviceMemoryReportCallbackDataEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDeviceMemoryReportCallbackDataEXT *>( this );
+ }
+
+ operator VkDeviceMemoryReportCallbackDataEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDeviceMemoryReportCallbackDataEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DeviceMemoryReportCallbackDataEXT const & ) const = default;
+#else
+ bool operator==( DeviceMemoryReportCallbackDataEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) && ( type == rhs.type ) &&
+ ( memoryObjectId == rhs.memoryObjectId ) && ( size == rhs.size ) && ( objectType == rhs.objectType ) &&
+ ( objectHandle == rhs.objectHandle ) && ( heapIndex == rhs.heapIndex );
+ }
+
+ bool operator!=( DeviceMemoryReportCallbackDataEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDeviceMemoryReportCallbackDataEXT;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::DeviceMemoryReportFlagsEXT flags = {};
+ VULKAN_HPP_NAMESPACE::DeviceMemoryReportEventTypeEXT type =
+ VULKAN_HPP_NAMESPACE::DeviceMemoryReportEventTypeEXT::eAllocate;
+ uint64_t memoryObjectId = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize size = {};
+ VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::eUnknown;
+ uint64_t objectHandle = {};
+ uint32_t heapIndex = {};
+ };
+ static_assert( sizeof( DeviceMemoryReportCallbackDataEXT ) == sizeof( VkDeviceMemoryReportCallbackDataEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DeviceMemoryReportCallbackDataEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eDeviceMemoryReportCallbackDataEXT>
+ {
+ using Type = DeviceMemoryReportCallbackDataEXT;
+ };
+
+ struct DevicePrivateDataCreateInfoEXT
+ {
+ static const bool allowDuplicate = true;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDevicePrivateDataCreateInfoEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ DevicePrivateDataCreateInfoEXT( uint32_t privateDataSlotRequestCount_ = {} ) VULKAN_HPP_NOEXCEPT
+ : privateDataSlotRequestCount( privateDataSlotRequestCount_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ DevicePrivateDataCreateInfoEXT( DevicePrivateDataCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DevicePrivateDataCreateInfoEXT( VkDevicePrivateDataCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DevicePrivateDataCreateInfoEXT( *reinterpret_cast<DevicePrivateDataCreateInfoEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DevicePrivateDataCreateInfoEXT &
+ operator=( DevicePrivateDataCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DevicePrivateDataCreateInfoEXT & operator=( VkDevicePrivateDataCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DevicePrivateDataCreateInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ DevicePrivateDataCreateInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ DevicePrivateDataCreateInfoEXT &
+ setPrivateDataSlotRequestCount( uint32_t privateDataSlotRequestCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ privateDataSlotRequestCount = privateDataSlotRequestCount_;
+ return *this;
+ }
+
+ operator VkDevicePrivateDataCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDevicePrivateDataCreateInfoEXT *>( this );
+ }
+
+ operator VkDevicePrivateDataCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDevicePrivateDataCreateInfoEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DevicePrivateDataCreateInfoEXT const & ) const = default;
+#else
+ bool operator==( DevicePrivateDataCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( privateDataSlotRequestCount == rhs.privateDataSlotRequestCount );
+ }
+
+ bool operator!=( DevicePrivateDataCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDevicePrivateDataCreateInfoEXT;
+ const void * pNext = {};
+ uint32_t privateDataSlotRequestCount = {};
+ };
+ static_assert( sizeof( DevicePrivateDataCreateInfoEXT ) == sizeof( VkDevicePrivateDataCreateInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DevicePrivateDataCreateInfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eDevicePrivateDataCreateInfoEXT>
+ {
+ using Type = DevicePrivateDataCreateInfoEXT;
+ };
+
+ struct DeviceQueueGlobalPriorityCreateInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eDeviceQueueGlobalPriorityCreateInfoEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ DeviceQueueGlobalPriorityCreateInfoEXT( VULKAN_HPP_NAMESPACE::QueueGlobalPriorityEXT globalPriority_ =
+ VULKAN_HPP_NAMESPACE::QueueGlobalPriorityEXT::eLow ) VULKAN_HPP_NOEXCEPT
+ : globalPriority( globalPriority_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR DeviceQueueGlobalPriorityCreateInfoEXT( DeviceQueueGlobalPriorityCreateInfoEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ DeviceQueueGlobalPriorityCreateInfoEXT( VkDeviceQueueGlobalPriorityCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DeviceQueueGlobalPriorityCreateInfoEXT(
+ *reinterpret_cast<DeviceQueueGlobalPriorityCreateInfoEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DeviceQueueGlobalPriorityCreateInfoEXT &
+ operator=( DeviceQueueGlobalPriorityCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DeviceQueueGlobalPriorityCreateInfoEXT &
+ operator=( VkDeviceQueueGlobalPriorityCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DeviceQueueGlobalPriorityCreateInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ DeviceQueueGlobalPriorityCreateInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ DeviceQueueGlobalPriorityCreateInfoEXT &
+ setGlobalPriority( VULKAN_HPP_NAMESPACE::QueueGlobalPriorityEXT globalPriority_ ) VULKAN_HPP_NOEXCEPT
+ {
+ globalPriority = globalPriority_;
+ return *this;
+ }
+
+ operator VkDeviceQueueGlobalPriorityCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDeviceQueueGlobalPriorityCreateInfoEXT *>( this );
+ }
+
+ operator VkDeviceQueueGlobalPriorityCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDeviceQueueGlobalPriorityCreateInfoEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DeviceQueueGlobalPriorityCreateInfoEXT const & ) const = default;
+#else
+ bool operator==( DeviceQueueGlobalPriorityCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( globalPriority == rhs.globalPriority );
+ }
+
+ bool operator!=( DeviceQueueGlobalPriorityCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDeviceQueueGlobalPriorityCreateInfoEXT;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::QueueGlobalPriorityEXT globalPriority = VULKAN_HPP_NAMESPACE::QueueGlobalPriorityEXT::eLow;
+ };
+ static_assert( sizeof( DeviceQueueGlobalPriorityCreateInfoEXT ) == sizeof( VkDeviceQueueGlobalPriorityCreateInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DeviceQueueGlobalPriorityCreateInfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eDeviceQueueGlobalPriorityCreateInfoEXT>
+ {
+ using Type = DeviceQueueGlobalPriorityCreateInfoEXT;
+ };
+
+ struct DeviceQueueInfo2
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDeviceQueueInfo2;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR DeviceQueueInfo2( VULKAN_HPP_NAMESPACE::DeviceQueueCreateFlags flags_ = {},
+ uint32_t queueFamilyIndex_ = {},
+ uint32_t queueIndex_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , queueFamilyIndex( queueFamilyIndex_ )
+ , queueIndex( queueIndex_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR DeviceQueueInfo2( DeviceQueueInfo2 const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DeviceQueueInfo2( VkDeviceQueueInfo2 const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DeviceQueueInfo2( *reinterpret_cast<DeviceQueueInfo2 const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DeviceQueueInfo2 & operator=( DeviceQueueInfo2 const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DeviceQueueInfo2 & operator=( VkDeviceQueueInfo2 const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DeviceQueueInfo2 const *>( &rhs );
+ return *this;
+ }
+
+ DeviceQueueInfo2 & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ DeviceQueueInfo2 & setFlags( VULKAN_HPP_NAMESPACE::DeviceQueueCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ DeviceQueueInfo2 & setQueueFamilyIndex( uint32_t queueFamilyIndex_ ) VULKAN_HPP_NOEXCEPT
+ {
+ queueFamilyIndex = queueFamilyIndex_;
+ return *this;
+ }
+
+ DeviceQueueInfo2 & setQueueIndex( uint32_t queueIndex_ ) VULKAN_HPP_NOEXCEPT
+ {
+ queueIndex = queueIndex_;
+ return *this;
+ }
+
+ operator VkDeviceQueueInfo2 const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDeviceQueueInfo2 *>( this );
+ }
+
+ operator VkDeviceQueueInfo2 &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDeviceQueueInfo2 *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DeviceQueueInfo2 const & ) const = default;
+#else
+ bool operator==( DeviceQueueInfo2 const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( queueFamilyIndex == rhs.queueFamilyIndex ) && ( queueIndex == rhs.queueIndex );
+ }
+
+ bool operator!=( DeviceQueueInfo2 const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDeviceQueueInfo2;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::DeviceQueueCreateFlags flags = {};
+ uint32_t queueFamilyIndex = {};
+ uint32_t queueIndex = {};
+ };
+ static_assert( sizeof( DeviceQueueInfo2 ) == sizeof( VkDeviceQueueInfo2 ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DeviceQueueInfo2>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eDeviceQueueInfo2>
+ {
+ using Type = DeviceQueueInfo2;
+ };
+
+#if defined( VK_USE_PLATFORM_DIRECTFB_EXT )
+ struct DirectFBSurfaceCreateInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDirectfbSurfaceCreateInfoEXT;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR DirectFBSurfaceCreateInfoEXT( VULKAN_HPP_NAMESPACE::DirectFBSurfaceCreateFlagsEXT flags_ = {},
+ IDirectFB * dfb_ = {},
+ IDirectFBSurface * surface_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , dfb( dfb_ )
+ , surface( surface_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ DirectFBSurfaceCreateInfoEXT( DirectFBSurfaceCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DirectFBSurfaceCreateInfoEXT( VkDirectFBSurfaceCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DirectFBSurfaceCreateInfoEXT( *reinterpret_cast<DirectFBSurfaceCreateInfoEXT const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DirectFBSurfaceCreateInfoEXT &
+ operator=( DirectFBSurfaceCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DirectFBSurfaceCreateInfoEXT & operator=( VkDirectFBSurfaceCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DirectFBSurfaceCreateInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ DirectFBSurfaceCreateInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ DirectFBSurfaceCreateInfoEXT &
+ setFlags( VULKAN_HPP_NAMESPACE::DirectFBSurfaceCreateFlagsEXT flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ DirectFBSurfaceCreateInfoEXT & setDfb( IDirectFB * dfb_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dfb = dfb_;
+ return *this;
+ }
+
+ DirectFBSurfaceCreateInfoEXT & setSurface( IDirectFBSurface * surface_ ) VULKAN_HPP_NOEXCEPT
+ {
+ surface = surface_;
+ return *this;
+ }
+
+ operator VkDirectFBSurfaceCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDirectFBSurfaceCreateInfoEXT *>( this );
+ }
+
+ operator VkDirectFBSurfaceCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDirectFBSurfaceCreateInfoEXT *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DirectFBSurfaceCreateInfoEXT const & ) const = default;
+# else
+ bool operator==( DirectFBSurfaceCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) && ( dfb == rhs.dfb ) &&
+ ( surface == rhs.surface );
+ }
+
+ bool operator!=( DirectFBSurfaceCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDirectfbSurfaceCreateInfoEXT;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::DirectFBSurfaceCreateFlagsEXT flags = {};
+ IDirectFB * dfb = {};
+ IDirectFBSurface * surface = {};
+ };
+ static_assert( sizeof( DirectFBSurfaceCreateInfoEXT ) == sizeof( VkDirectFBSurfaceCreateInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DirectFBSurfaceCreateInfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eDirectfbSurfaceCreateInfoEXT>
+ {
+ using Type = DirectFBSurfaceCreateInfoEXT;
+ };
+#endif /*VK_USE_PLATFORM_DIRECTFB_EXT*/
+
+ struct DispatchIndirectCommand
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ DispatchIndirectCommand( uint32_t x_ = {}, uint32_t y_ = {}, uint32_t z_ = {} ) VULKAN_HPP_NOEXCEPT
+ : x( x_ )
+ , y( y_ )
+ , z( z_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR DispatchIndirectCommand( DispatchIndirectCommand const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DispatchIndirectCommand( VkDispatchIndirectCommand const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DispatchIndirectCommand( *reinterpret_cast<DispatchIndirectCommand const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DispatchIndirectCommand &
+ operator=( DispatchIndirectCommand const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DispatchIndirectCommand & operator=( VkDispatchIndirectCommand const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DispatchIndirectCommand const *>( &rhs );
+ return *this;
+ }
+
+ DispatchIndirectCommand & setX( uint32_t x_ ) VULKAN_HPP_NOEXCEPT
+ {
+ x = x_;
+ return *this;
+ }
+
+ DispatchIndirectCommand & setY( uint32_t y_ ) VULKAN_HPP_NOEXCEPT
+ {
+ y = y_;
+ return *this;
+ }
+
+ DispatchIndirectCommand & setZ( uint32_t z_ ) VULKAN_HPP_NOEXCEPT
+ {
+ z = z_;
+ return *this;
+ }
+
+ operator VkDispatchIndirectCommand const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDispatchIndirectCommand *>( this );
+ }
+
+ operator VkDispatchIndirectCommand &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDispatchIndirectCommand *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DispatchIndirectCommand const & ) const = default;
+#else
+ bool operator==( DispatchIndirectCommand const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( x == rhs.x ) && ( y == rhs.y ) && ( z == rhs.z );
+ }
+
+ bool operator!=( DispatchIndirectCommand const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ uint32_t x = {};
+ uint32_t y = {};
+ uint32_t z = {};
+ };
+ static_assert( sizeof( DispatchIndirectCommand ) == sizeof( VkDispatchIndirectCommand ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DispatchIndirectCommand>::value, "struct wrapper is not a standard layout!" );
+
+ struct DisplayEventInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDisplayEventInfoEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ DisplayEventInfoEXT( VULKAN_HPP_NAMESPACE::DisplayEventTypeEXT displayEvent_ =
+ VULKAN_HPP_NAMESPACE::DisplayEventTypeEXT::eFirstPixelOut ) VULKAN_HPP_NOEXCEPT
+ : displayEvent( displayEvent_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR DisplayEventInfoEXT( DisplayEventInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DisplayEventInfoEXT( VkDisplayEventInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DisplayEventInfoEXT( *reinterpret_cast<DisplayEventInfoEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DisplayEventInfoEXT &
+ operator=( DisplayEventInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DisplayEventInfoEXT & operator=( VkDisplayEventInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DisplayEventInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ DisplayEventInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ DisplayEventInfoEXT & setDisplayEvent( VULKAN_HPP_NAMESPACE::DisplayEventTypeEXT displayEvent_ ) VULKAN_HPP_NOEXCEPT
+ {
+ displayEvent = displayEvent_;
+ return *this;
+ }
+
+ operator VkDisplayEventInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDisplayEventInfoEXT *>( this );
+ }
+
+ operator VkDisplayEventInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDisplayEventInfoEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DisplayEventInfoEXT const & ) const = default;
+#else
+ bool operator==( DisplayEventInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( displayEvent == rhs.displayEvent );
+ }
+
+ bool operator!=( DisplayEventInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDisplayEventInfoEXT;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::DisplayEventTypeEXT displayEvent = VULKAN_HPP_NAMESPACE::DisplayEventTypeEXT::eFirstPixelOut;
+ };
+ static_assert( sizeof( DisplayEventInfoEXT ) == sizeof( VkDisplayEventInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DisplayEventInfoEXT>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eDisplayEventInfoEXT>
+ {
+ using Type = DisplayEventInfoEXT;
+ };
+
+ struct DisplayModeParametersKHR
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR DisplayModeParametersKHR( VULKAN_HPP_NAMESPACE::Extent2D visibleRegion_ = {},
+ uint32_t refreshRate_ = {} ) VULKAN_HPP_NOEXCEPT
+ : visibleRegion( visibleRegion_ )
+ , refreshRate( refreshRate_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR DisplayModeParametersKHR( DisplayModeParametersKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DisplayModeParametersKHR( VkDisplayModeParametersKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DisplayModeParametersKHR( *reinterpret_cast<DisplayModeParametersKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DisplayModeParametersKHR &
+ operator=( DisplayModeParametersKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DisplayModeParametersKHR & operator=( VkDisplayModeParametersKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DisplayModeParametersKHR const *>( &rhs );
+ return *this;
+ }
+
+ DisplayModeParametersKHR &
+ setVisibleRegion( VULKAN_HPP_NAMESPACE::Extent2D const & visibleRegion_ ) VULKAN_HPP_NOEXCEPT
+ {
+ visibleRegion = visibleRegion_;
+ return *this;
+ }
+
+ DisplayModeParametersKHR & setRefreshRate( uint32_t refreshRate_ ) VULKAN_HPP_NOEXCEPT
+ {
+ refreshRate = refreshRate_;
+ return *this;
+ }
+
+ operator VkDisplayModeParametersKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDisplayModeParametersKHR *>( this );
+ }
+
+ operator VkDisplayModeParametersKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDisplayModeParametersKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DisplayModeParametersKHR const & ) const = default;
+#else
+ bool operator==( DisplayModeParametersKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( visibleRegion == rhs.visibleRegion ) && ( refreshRate == rhs.refreshRate );
+ }
+
+ bool operator!=( DisplayModeParametersKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::Extent2D visibleRegion = {};
+ uint32_t refreshRate = {};
+ };
+ static_assert( sizeof( DisplayModeParametersKHR ) == sizeof( VkDisplayModeParametersKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DisplayModeParametersKHR>::value, "struct wrapper is not a standard layout!" );
+
+ struct DisplayModeCreateInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDisplayModeCreateInfoKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ DisplayModeCreateInfoKHR( VULKAN_HPP_NAMESPACE::DisplayModeCreateFlagsKHR flags_ = {},
+ VULKAN_HPP_NAMESPACE::DisplayModeParametersKHR parameters_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , parameters( parameters_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR DisplayModeCreateInfoKHR( DisplayModeCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DisplayModeCreateInfoKHR( VkDisplayModeCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DisplayModeCreateInfoKHR( *reinterpret_cast<DisplayModeCreateInfoKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DisplayModeCreateInfoKHR &
+ operator=( DisplayModeCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DisplayModeCreateInfoKHR & operator=( VkDisplayModeCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DisplayModeCreateInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ DisplayModeCreateInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ DisplayModeCreateInfoKHR & setFlags( VULKAN_HPP_NAMESPACE::DisplayModeCreateFlagsKHR flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ DisplayModeCreateInfoKHR &
+ setParameters( VULKAN_HPP_NAMESPACE::DisplayModeParametersKHR const & parameters_ ) VULKAN_HPP_NOEXCEPT
+ {
+ parameters = parameters_;
+ return *this;
+ }
+
+ operator VkDisplayModeCreateInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDisplayModeCreateInfoKHR *>( this );
+ }
+
+ operator VkDisplayModeCreateInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDisplayModeCreateInfoKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DisplayModeCreateInfoKHR const & ) const = default;
+#else
+ bool operator==( DisplayModeCreateInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( parameters == rhs.parameters );
+ }
+
+ bool operator!=( DisplayModeCreateInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDisplayModeCreateInfoKHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::DisplayModeCreateFlagsKHR flags = {};
+ VULKAN_HPP_NAMESPACE::DisplayModeParametersKHR parameters = {};
+ };
+ static_assert( sizeof( DisplayModeCreateInfoKHR ) == sizeof( VkDisplayModeCreateInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DisplayModeCreateInfoKHR>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eDisplayModeCreateInfoKHR>
+ {
+ using Type = DisplayModeCreateInfoKHR;
+ };
+
+ struct DisplayModePropertiesKHR
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ DisplayModePropertiesKHR( VULKAN_HPP_NAMESPACE::DisplayModeKHR displayMode_ = {},
+ VULKAN_HPP_NAMESPACE::DisplayModeParametersKHR parameters_ = {} ) VULKAN_HPP_NOEXCEPT
+ : displayMode( displayMode_ )
+ , parameters( parameters_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR DisplayModePropertiesKHR( DisplayModePropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DisplayModePropertiesKHR( VkDisplayModePropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DisplayModePropertiesKHR( *reinterpret_cast<DisplayModePropertiesKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DisplayModePropertiesKHR &
+ operator=( DisplayModePropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DisplayModePropertiesKHR & operator=( VkDisplayModePropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DisplayModePropertiesKHR const *>( &rhs );
+ return *this;
+ }
+
+ operator VkDisplayModePropertiesKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDisplayModePropertiesKHR *>( this );
+ }
+
+ operator VkDisplayModePropertiesKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDisplayModePropertiesKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DisplayModePropertiesKHR const & ) const = default;
+#else
+ bool operator==( DisplayModePropertiesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( displayMode == rhs.displayMode ) && ( parameters == rhs.parameters );
+ }
+
+ bool operator!=( DisplayModePropertiesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::DisplayModeKHR displayMode = {};
+ VULKAN_HPP_NAMESPACE::DisplayModeParametersKHR parameters = {};
+ };
+ static_assert( sizeof( DisplayModePropertiesKHR ) == sizeof( VkDisplayModePropertiesKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DisplayModePropertiesKHR>::value, "struct wrapper is not a standard layout!" );
+
+ struct DisplayModeProperties2KHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDisplayModeProperties2KHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR DisplayModeProperties2KHR(
+ VULKAN_HPP_NAMESPACE::DisplayModePropertiesKHR displayModeProperties_ = {} ) VULKAN_HPP_NOEXCEPT
+ : displayModeProperties( displayModeProperties_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ DisplayModeProperties2KHR( DisplayModeProperties2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DisplayModeProperties2KHR( VkDisplayModeProperties2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DisplayModeProperties2KHR( *reinterpret_cast<DisplayModeProperties2KHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DisplayModeProperties2KHR &
+ operator=( DisplayModeProperties2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DisplayModeProperties2KHR & operator=( VkDisplayModeProperties2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DisplayModeProperties2KHR const *>( &rhs );
+ return *this;
+ }
+
+ operator VkDisplayModeProperties2KHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDisplayModeProperties2KHR *>( this );
+ }
+
+ operator VkDisplayModeProperties2KHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDisplayModeProperties2KHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DisplayModeProperties2KHR const & ) const = default;
+#else
+ bool operator==( DisplayModeProperties2KHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( displayModeProperties == rhs.displayModeProperties );
+ }
+
+ bool operator!=( DisplayModeProperties2KHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDisplayModeProperties2KHR;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::DisplayModePropertiesKHR displayModeProperties = {};
+ };
+ static_assert( sizeof( DisplayModeProperties2KHR ) == sizeof( VkDisplayModeProperties2KHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DisplayModeProperties2KHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eDisplayModeProperties2KHR>
+ {
+ using Type = DisplayModeProperties2KHR;
+ };
+
+ struct DisplayNativeHdrSurfaceCapabilitiesAMD
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eDisplayNativeHdrSurfaceCapabilitiesAMD;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR DisplayNativeHdrSurfaceCapabilitiesAMD(
+ VULKAN_HPP_NAMESPACE::Bool32 localDimmingSupport_ = {} ) VULKAN_HPP_NOEXCEPT
+ : localDimmingSupport( localDimmingSupport_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR DisplayNativeHdrSurfaceCapabilitiesAMD( DisplayNativeHdrSurfaceCapabilitiesAMD const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ DisplayNativeHdrSurfaceCapabilitiesAMD( VkDisplayNativeHdrSurfaceCapabilitiesAMD const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DisplayNativeHdrSurfaceCapabilitiesAMD(
+ *reinterpret_cast<DisplayNativeHdrSurfaceCapabilitiesAMD const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DisplayNativeHdrSurfaceCapabilitiesAMD &
+ operator=( DisplayNativeHdrSurfaceCapabilitiesAMD const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DisplayNativeHdrSurfaceCapabilitiesAMD &
+ operator=( VkDisplayNativeHdrSurfaceCapabilitiesAMD const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DisplayNativeHdrSurfaceCapabilitiesAMD const *>( &rhs );
+ return *this;
+ }
+
+ operator VkDisplayNativeHdrSurfaceCapabilitiesAMD const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDisplayNativeHdrSurfaceCapabilitiesAMD *>( this );
+ }
+
+ operator VkDisplayNativeHdrSurfaceCapabilitiesAMD &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDisplayNativeHdrSurfaceCapabilitiesAMD *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DisplayNativeHdrSurfaceCapabilitiesAMD const & ) const = default;
+#else
+ bool operator==( DisplayNativeHdrSurfaceCapabilitiesAMD const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( localDimmingSupport == rhs.localDimmingSupport );
+ }
+
+ bool operator!=( DisplayNativeHdrSurfaceCapabilitiesAMD const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDisplayNativeHdrSurfaceCapabilitiesAMD;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 localDimmingSupport = {};
+ };
+ static_assert( sizeof( DisplayNativeHdrSurfaceCapabilitiesAMD ) == sizeof( VkDisplayNativeHdrSurfaceCapabilitiesAMD ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DisplayNativeHdrSurfaceCapabilitiesAMD>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eDisplayNativeHdrSurfaceCapabilitiesAMD>
+ {
+ using Type = DisplayNativeHdrSurfaceCapabilitiesAMD;
+ };
+
+ struct DisplayPlaneCapabilitiesKHR
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ DisplayPlaneCapabilitiesKHR( VULKAN_HPP_NAMESPACE::DisplayPlaneAlphaFlagsKHR supportedAlpha_ = {},
+ VULKAN_HPP_NAMESPACE::Offset2D minSrcPosition_ = {},
+ VULKAN_HPP_NAMESPACE::Offset2D maxSrcPosition_ = {},
+ VULKAN_HPP_NAMESPACE::Extent2D minSrcExtent_ = {},
+ VULKAN_HPP_NAMESPACE::Extent2D maxSrcExtent_ = {},
+ VULKAN_HPP_NAMESPACE::Offset2D minDstPosition_ = {},
+ VULKAN_HPP_NAMESPACE::Offset2D maxDstPosition_ = {},
+ VULKAN_HPP_NAMESPACE::Extent2D minDstExtent_ = {},
+ VULKAN_HPP_NAMESPACE::Extent2D maxDstExtent_ = {} ) VULKAN_HPP_NOEXCEPT
+ : supportedAlpha( supportedAlpha_ )
+ , minSrcPosition( minSrcPosition_ )
+ , maxSrcPosition( maxSrcPosition_ )
+ , minSrcExtent( minSrcExtent_ )
+ , maxSrcExtent( maxSrcExtent_ )
+ , minDstPosition( minDstPosition_ )
+ , maxDstPosition( maxDstPosition_ )
+ , minDstExtent( minDstExtent_ )
+ , maxDstExtent( maxDstExtent_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ DisplayPlaneCapabilitiesKHR( DisplayPlaneCapabilitiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DisplayPlaneCapabilitiesKHR( VkDisplayPlaneCapabilitiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DisplayPlaneCapabilitiesKHR( *reinterpret_cast<DisplayPlaneCapabilitiesKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DisplayPlaneCapabilitiesKHR &
+ operator=( DisplayPlaneCapabilitiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DisplayPlaneCapabilitiesKHR & operator=( VkDisplayPlaneCapabilitiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DisplayPlaneCapabilitiesKHR const *>( &rhs );
+ return *this;
+ }
+
+ operator VkDisplayPlaneCapabilitiesKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDisplayPlaneCapabilitiesKHR *>( this );
+ }
+
+ operator VkDisplayPlaneCapabilitiesKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDisplayPlaneCapabilitiesKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DisplayPlaneCapabilitiesKHR const & ) const = default;
+#else
+ bool operator==( DisplayPlaneCapabilitiesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( supportedAlpha == rhs.supportedAlpha ) && ( minSrcPosition == rhs.minSrcPosition ) &&
+ ( maxSrcPosition == rhs.maxSrcPosition ) && ( minSrcExtent == rhs.minSrcExtent ) &&
+ ( maxSrcExtent == rhs.maxSrcExtent ) && ( minDstPosition == rhs.minDstPosition ) &&
+ ( maxDstPosition == rhs.maxDstPosition ) && ( minDstExtent == rhs.minDstExtent ) &&
+ ( maxDstExtent == rhs.maxDstExtent );
+ }
+
+ bool operator!=( DisplayPlaneCapabilitiesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::DisplayPlaneAlphaFlagsKHR supportedAlpha = {};
+ VULKAN_HPP_NAMESPACE::Offset2D minSrcPosition = {};
+ VULKAN_HPP_NAMESPACE::Offset2D maxSrcPosition = {};
+ VULKAN_HPP_NAMESPACE::Extent2D minSrcExtent = {};
+ VULKAN_HPP_NAMESPACE::Extent2D maxSrcExtent = {};
+ VULKAN_HPP_NAMESPACE::Offset2D minDstPosition = {};
+ VULKAN_HPP_NAMESPACE::Offset2D maxDstPosition = {};
+ VULKAN_HPP_NAMESPACE::Extent2D minDstExtent = {};
+ VULKAN_HPP_NAMESPACE::Extent2D maxDstExtent = {};
+ };
+ static_assert( sizeof( DisplayPlaneCapabilitiesKHR ) == sizeof( VkDisplayPlaneCapabilitiesKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DisplayPlaneCapabilitiesKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ struct DisplayPlaneCapabilities2KHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDisplayPlaneCapabilities2KHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR DisplayPlaneCapabilities2KHR(
+ VULKAN_HPP_NAMESPACE::DisplayPlaneCapabilitiesKHR capabilities_ = {} ) VULKAN_HPP_NOEXCEPT
+ : capabilities( capabilities_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ DisplayPlaneCapabilities2KHR( DisplayPlaneCapabilities2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DisplayPlaneCapabilities2KHR( VkDisplayPlaneCapabilities2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DisplayPlaneCapabilities2KHR( *reinterpret_cast<DisplayPlaneCapabilities2KHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DisplayPlaneCapabilities2KHR &
+ operator=( DisplayPlaneCapabilities2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DisplayPlaneCapabilities2KHR & operator=( VkDisplayPlaneCapabilities2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DisplayPlaneCapabilities2KHR const *>( &rhs );
+ return *this;
+ }
+
+ operator VkDisplayPlaneCapabilities2KHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDisplayPlaneCapabilities2KHR *>( this );
+ }
+
+ operator VkDisplayPlaneCapabilities2KHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDisplayPlaneCapabilities2KHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DisplayPlaneCapabilities2KHR const & ) const = default;
+#else
+ bool operator==( DisplayPlaneCapabilities2KHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( capabilities == rhs.capabilities );
+ }
+
+ bool operator!=( DisplayPlaneCapabilities2KHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDisplayPlaneCapabilities2KHR;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::DisplayPlaneCapabilitiesKHR capabilities = {};
+ };
+ static_assert( sizeof( DisplayPlaneCapabilities2KHR ) == sizeof( VkDisplayPlaneCapabilities2KHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DisplayPlaneCapabilities2KHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eDisplayPlaneCapabilities2KHR>
+ {
+ using Type = DisplayPlaneCapabilities2KHR;
+ };
+
+ struct DisplayPlaneInfo2KHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDisplayPlaneInfo2KHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR DisplayPlaneInfo2KHR( VULKAN_HPP_NAMESPACE::DisplayModeKHR mode_ = {},
+ uint32_t planeIndex_ = {} ) VULKAN_HPP_NOEXCEPT
+ : mode( mode_ )
+ , planeIndex( planeIndex_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR DisplayPlaneInfo2KHR( DisplayPlaneInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DisplayPlaneInfo2KHR( VkDisplayPlaneInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DisplayPlaneInfo2KHR( *reinterpret_cast<DisplayPlaneInfo2KHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DisplayPlaneInfo2KHR &
+ operator=( DisplayPlaneInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DisplayPlaneInfo2KHR & operator=( VkDisplayPlaneInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DisplayPlaneInfo2KHR const *>( &rhs );
+ return *this;
+ }
+
+ DisplayPlaneInfo2KHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ DisplayPlaneInfo2KHR & setMode( VULKAN_HPP_NAMESPACE::DisplayModeKHR mode_ ) VULKAN_HPP_NOEXCEPT
+ {
+ mode = mode_;
+ return *this;
+ }
+
+ DisplayPlaneInfo2KHR & setPlaneIndex( uint32_t planeIndex_ ) VULKAN_HPP_NOEXCEPT
+ {
+ planeIndex = planeIndex_;
+ return *this;
+ }
+
+ operator VkDisplayPlaneInfo2KHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDisplayPlaneInfo2KHR *>( this );
+ }
+
+ operator VkDisplayPlaneInfo2KHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDisplayPlaneInfo2KHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DisplayPlaneInfo2KHR const & ) const = default;
+#else
+ bool operator==( DisplayPlaneInfo2KHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( mode == rhs.mode ) &&
+ ( planeIndex == rhs.planeIndex );
+ }
+
+ bool operator!=( DisplayPlaneInfo2KHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDisplayPlaneInfo2KHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::DisplayModeKHR mode = {};
+ uint32_t planeIndex = {};
+ };
+ static_assert( sizeof( DisplayPlaneInfo2KHR ) == sizeof( VkDisplayPlaneInfo2KHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DisplayPlaneInfo2KHR>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eDisplayPlaneInfo2KHR>
+ {
+ using Type = DisplayPlaneInfo2KHR;
+ };
+
+ struct DisplayPlanePropertiesKHR
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR DisplayPlanePropertiesKHR( VULKAN_HPP_NAMESPACE::DisplayKHR currentDisplay_ = {},
+ uint32_t currentStackIndex_ = {} ) VULKAN_HPP_NOEXCEPT
+ : currentDisplay( currentDisplay_ )
+ , currentStackIndex( currentStackIndex_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ DisplayPlanePropertiesKHR( DisplayPlanePropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DisplayPlanePropertiesKHR( VkDisplayPlanePropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DisplayPlanePropertiesKHR( *reinterpret_cast<DisplayPlanePropertiesKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DisplayPlanePropertiesKHR &
+ operator=( DisplayPlanePropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DisplayPlanePropertiesKHR & operator=( VkDisplayPlanePropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DisplayPlanePropertiesKHR const *>( &rhs );
+ return *this;
+ }
+
+ operator VkDisplayPlanePropertiesKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDisplayPlanePropertiesKHR *>( this );
+ }
+
+ operator VkDisplayPlanePropertiesKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDisplayPlanePropertiesKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DisplayPlanePropertiesKHR const & ) const = default;
+#else
+ bool operator==( DisplayPlanePropertiesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( currentDisplay == rhs.currentDisplay ) && ( currentStackIndex == rhs.currentStackIndex );
+ }
+
+ bool operator!=( DisplayPlanePropertiesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::DisplayKHR currentDisplay = {};
+ uint32_t currentStackIndex = {};
+ };
+ static_assert( sizeof( DisplayPlanePropertiesKHR ) == sizeof( VkDisplayPlanePropertiesKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DisplayPlanePropertiesKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ struct DisplayPlaneProperties2KHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDisplayPlaneProperties2KHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR DisplayPlaneProperties2KHR(
+ VULKAN_HPP_NAMESPACE::DisplayPlanePropertiesKHR displayPlaneProperties_ = {} ) VULKAN_HPP_NOEXCEPT
+ : displayPlaneProperties( displayPlaneProperties_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ DisplayPlaneProperties2KHR( DisplayPlaneProperties2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DisplayPlaneProperties2KHR( VkDisplayPlaneProperties2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DisplayPlaneProperties2KHR( *reinterpret_cast<DisplayPlaneProperties2KHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DisplayPlaneProperties2KHR &
+ operator=( DisplayPlaneProperties2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DisplayPlaneProperties2KHR & operator=( VkDisplayPlaneProperties2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DisplayPlaneProperties2KHR const *>( &rhs );
+ return *this;
+ }
+
+ operator VkDisplayPlaneProperties2KHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDisplayPlaneProperties2KHR *>( this );
+ }
+
+ operator VkDisplayPlaneProperties2KHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDisplayPlaneProperties2KHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DisplayPlaneProperties2KHR const & ) const = default;
+#else
+ bool operator==( DisplayPlaneProperties2KHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( displayPlaneProperties == rhs.displayPlaneProperties );
+ }
+
+ bool operator!=( DisplayPlaneProperties2KHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDisplayPlaneProperties2KHR;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::DisplayPlanePropertiesKHR displayPlaneProperties = {};
+ };
+ static_assert( sizeof( DisplayPlaneProperties2KHR ) == sizeof( VkDisplayPlaneProperties2KHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DisplayPlaneProperties2KHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eDisplayPlaneProperties2KHR>
+ {
+ using Type = DisplayPlaneProperties2KHR;
+ };
+
+ struct DisplayPowerInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDisplayPowerInfoEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR DisplayPowerInfoEXT( VULKAN_HPP_NAMESPACE::DisplayPowerStateEXT powerState_ =
+ VULKAN_HPP_NAMESPACE::DisplayPowerStateEXT::eOff ) VULKAN_HPP_NOEXCEPT
+ : powerState( powerState_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR DisplayPowerInfoEXT( DisplayPowerInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DisplayPowerInfoEXT( VkDisplayPowerInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DisplayPowerInfoEXT( *reinterpret_cast<DisplayPowerInfoEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DisplayPowerInfoEXT &
+ operator=( DisplayPowerInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DisplayPowerInfoEXT & operator=( VkDisplayPowerInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DisplayPowerInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ DisplayPowerInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ DisplayPowerInfoEXT & setPowerState( VULKAN_HPP_NAMESPACE::DisplayPowerStateEXT powerState_ ) VULKAN_HPP_NOEXCEPT
+ {
+ powerState = powerState_;
+ return *this;
+ }
+
+ operator VkDisplayPowerInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDisplayPowerInfoEXT *>( this );
+ }
+
+ operator VkDisplayPowerInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDisplayPowerInfoEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DisplayPowerInfoEXT const & ) const = default;
+#else
+ bool operator==( DisplayPowerInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( powerState == rhs.powerState );
+ }
+
+ bool operator!=( DisplayPowerInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDisplayPowerInfoEXT;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::DisplayPowerStateEXT powerState = VULKAN_HPP_NAMESPACE::DisplayPowerStateEXT::eOff;
+ };
+ static_assert( sizeof( DisplayPowerInfoEXT ) == sizeof( VkDisplayPowerInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DisplayPowerInfoEXT>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eDisplayPowerInfoEXT>
+ {
+ using Type = DisplayPowerInfoEXT;
+ };
+
+ struct DisplayPresentInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDisplayPresentInfoKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR DisplayPresentInfoKHR( VULKAN_HPP_NAMESPACE::Rect2D srcRect_ = {},
+ VULKAN_HPP_NAMESPACE::Rect2D dstRect_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 persistent_ = {} ) VULKAN_HPP_NOEXCEPT
+ : srcRect( srcRect_ )
+ , dstRect( dstRect_ )
+ , persistent( persistent_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR DisplayPresentInfoKHR( DisplayPresentInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DisplayPresentInfoKHR( VkDisplayPresentInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DisplayPresentInfoKHR( *reinterpret_cast<DisplayPresentInfoKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DisplayPresentInfoKHR &
+ operator=( DisplayPresentInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DisplayPresentInfoKHR & operator=( VkDisplayPresentInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DisplayPresentInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ DisplayPresentInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ DisplayPresentInfoKHR & setSrcRect( VULKAN_HPP_NAMESPACE::Rect2D const & srcRect_ ) VULKAN_HPP_NOEXCEPT
+ {
+ srcRect = srcRect_;
+ return *this;
+ }
+
+ DisplayPresentInfoKHR & setDstRect( VULKAN_HPP_NAMESPACE::Rect2D const & dstRect_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstRect = dstRect_;
+ return *this;
+ }
+
+ DisplayPresentInfoKHR & setPersistent( VULKAN_HPP_NAMESPACE::Bool32 persistent_ ) VULKAN_HPP_NOEXCEPT
+ {
+ persistent = persistent_;
+ return *this;
+ }
+
+ operator VkDisplayPresentInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDisplayPresentInfoKHR *>( this );
+ }
+
+ operator VkDisplayPresentInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDisplayPresentInfoKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DisplayPresentInfoKHR const & ) const = default;
+#else
+ bool operator==( DisplayPresentInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( srcRect == rhs.srcRect ) &&
+ ( dstRect == rhs.dstRect ) && ( persistent == rhs.persistent );
+ }
+
+ bool operator!=( DisplayPresentInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDisplayPresentInfoKHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Rect2D srcRect = {};
+ VULKAN_HPP_NAMESPACE::Rect2D dstRect = {};
+ VULKAN_HPP_NAMESPACE::Bool32 persistent = {};
+ };
+ static_assert( sizeof( DisplayPresentInfoKHR ) == sizeof( VkDisplayPresentInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DisplayPresentInfoKHR>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eDisplayPresentInfoKHR>
+ {
+ using Type = DisplayPresentInfoKHR;
+ };
+
+ struct DisplayPropertiesKHR
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ DisplayPropertiesKHR( VULKAN_HPP_NAMESPACE::DisplayKHR display_ = {},
+ const char * displayName_ = {},
+ VULKAN_HPP_NAMESPACE::Extent2D physicalDimensions_ = {},
+ VULKAN_HPP_NAMESPACE::Extent2D physicalResolution_ = {},
+ VULKAN_HPP_NAMESPACE::SurfaceTransformFlagsKHR supportedTransforms_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 planeReorderPossible_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 persistentContent_ = {} ) VULKAN_HPP_NOEXCEPT
+ : display( display_ )
+ , displayName( displayName_ )
+ , physicalDimensions( physicalDimensions_ )
+ , physicalResolution( physicalResolution_ )
+ , supportedTransforms( supportedTransforms_ )
+ , planeReorderPossible( planeReorderPossible_ )
+ , persistentContent( persistentContent_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR DisplayPropertiesKHR( DisplayPropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DisplayPropertiesKHR( VkDisplayPropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DisplayPropertiesKHR( *reinterpret_cast<DisplayPropertiesKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DisplayPropertiesKHR &
+ operator=( DisplayPropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DisplayPropertiesKHR & operator=( VkDisplayPropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DisplayPropertiesKHR const *>( &rhs );
+ return *this;
+ }
+
+ operator VkDisplayPropertiesKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDisplayPropertiesKHR *>( this );
+ }
+
+ operator VkDisplayPropertiesKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDisplayPropertiesKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DisplayPropertiesKHR const & ) const = default;
+#else
+ bool operator==( DisplayPropertiesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( display == rhs.display ) && ( displayName == rhs.displayName ) &&
+ ( physicalDimensions == rhs.physicalDimensions ) && ( physicalResolution == rhs.physicalResolution ) &&
+ ( supportedTransforms == rhs.supportedTransforms ) &&
+ ( planeReorderPossible == rhs.planeReorderPossible ) && ( persistentContent == rhs.persistentContent );
+ }
+
+ bool operator!=( DisplayPropertiesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::DisplayKHR display = {};
+ const char * displayName = {};
+ VULKAN_HPP_NAMESPACE::Extent2D physicalDimensions = {};
+ VULKAN_HPP_NAMESPACE::Extent2D physicalResolution = {};
+ VULKAN_HPP_NAMESPACE::SurfaceTransformFlagsKHR supportedTransforms = {};
+ VULKAN_HPP_NAMESPACE::Bool32 planeReorderPossible = {};
+ VULKAN_HPP_NAMESPACE::Bool32 persistentContent = {};
+ };
+ static_assert( sizeof( DisplayPropertiesKHR ) == sizeof( VkDisplayPropertiesKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DisplayPropertiesKHR>::value, "struct wrapper is not a standard layout!" );
+
+ struct DisplayProperties2KHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDisplayProperties2KHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ DisplayProperties2KHR( VULKAN_HPP_NAMESPACE::DisplayPropertiesKHR displayProperties_ = {} ) VULKAN_HPP_NOEXCEPT
+ : displayProperties( displayProperties_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR DisplayProperties2KHR( DisplayProperties2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DisplayProperties2KHR( VkDisplayProperties2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DisplayProperties2KHR( *reinterpret_cast<DisplayProperties2KHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DisplayProperties2KHR &
+ operator=( DisplayProperties2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DisplayProperties2KHR & operator=( VkDisplayProperties2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DisplayProperties2KHR const *>( &rhs );
+ return *this;
+ }
+
+ operator VkDisplayProperties2KHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDisplayProperties2KHR *>( this );
+ }
+
+ operator VkDisplayProperties2KHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDisplayProperties2KHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DisplayProperties2KHR const & ) const = default;
+#else
+ bool operator==( DisplayProperties2KHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( displayProperties == rhs.displayProperties );
+ }
+
+ bool operator!=( DisplayProperties2KHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDisplayProperties2KHR;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::DisplayPropertiesKHR displayProperties = {};
+ };
+ static_assert( sizeof( DisplayProperties2KHR ) == sizeof( VkDisplayProperties2KHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DisplayProperties2KHR>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eDisplayProperties2KHR>
+ {
+ using Type = DisplayProperties2KHR;
+ };
+
+ struct DisplaySurfaceCreateInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDisplaySurfaceCreateInfoKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ DisplaySurfaceCreateInfoKHR( VULKAN_HPP_NAMESPACE::DisplaySurfaceCreateFlagsKHR flags_ = {},
+ VULKAN_HPP_NAMESPACE::DisplayModeKHR displayMode_ = {},
+ uint32_t planeIndex_ = {},
+ uint32_t planeStackIndex_ = {},
+ VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR transform_ =
+ VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR::eIdentity,
+ float globalAlpha_ = {},
+ VULKAN_HPP_NAMESPACE::DisplayPlaneAlphaFlagBitsKHR alphaMode_ =
+ VULKAN_HPP_NAMESPACE::DisplayPlaneAlphaFlagBitsKHR::eOpaque,
+ VULKAN_HPP_NAMESPACE::Extent2D imageExtent_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , displayMode( displayMode_ )
+ , planeIndex( planeIndex_ )
+ , planeStackIndex( planeStackIndex_ )
+ , transform( transform_ )
+ , globalAlpha( globalAlpha_ )
+ , alphaMode( alphaMode_ )
+ , imageExtent( imageExtent_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ DisplaySurfaceCreateInfoKHR( DisplaySurfaceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DisplaySurfaceCreateInfoKHR( VkDisplaySurfaceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DisplaySurfaceCreateInfoKHR( *reinterpret_cast<DisplaySurfaceCreateInfoKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DisplaySurfaceCreateInfoKHR &
+ operator=( DisplaySurfaceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DisplaySurfaceCreateInfoKHR & operator=( VkDisplaySurfaceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DisplaySurfaceCreateInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ DisplaySurfaceCreateInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ DisplaySurfaceCreateInfoKHR &
+ setFlags( VULKAN_HPP_NAMESPACE::DisplaySurfaceCreateFlagsKHR flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ DisplaySurfaceCreateInfoKHR &
+ setDisplayMode( VULKAN_HPP_NAMESPACE::DisplayModeKHR displayMode_ ) VULKAN_HPP_NOEXCEPT
+ {
+ displayMode = displayMode_;
+ return *this;
+ }
+
+ DisplaySurfaceCreateInfoKHR & setPlaneIndex( uint32_t planeIndex_ ) VULKAN_HPP_NOEXCEPT
+ {
+ planeIndex = planeIndex_;
+ return *this;
+ }
+
+ DisplaySurfaceCreateInfoKHR & setPlaneStackIndex( uint32_t planeStackIndex_ ) VULKAN_HPP_NOEXCEPT
+ {
+ planeStackIndex = planeStackIndex_;
+ return *this;
+ }
+
+ DisplaySurfaceCreateInfoKHR &
+ setTransform( VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR transform_ ) VULKAN_HPP_NOEXCEPT
+ {
+ transform = transform_;
+ return *this;
+ }
+
+ DisplaySurfaceCreateInfoKHR & setGlobalAlpha( float globalAlpha_ ) VULKAN_HPP_NOEXCEPT
+ {
+ globalAlpha = globalAlpha_;
+ return *this;
+ }
+
+ DisplaySurfaceCreateInfoKHR &
+ setAlphaMode( VULKAN_HPP_NAMESPACE::DisplayPlaneAlphaFlagBitsKHR alphaMode_ ) VULKAN_HPP_NOEXCEPT
+ {
+ alphaMode = alphaMode_;
+ return *this;
+ }
+
+ DisplaySurfaceCreateInfoKHR &
+ setImageExtent( VULKAN_HPP_NAMESPACE::Extent2D const & imageExtent_ ) VULKAN_HPP_NOEXCEPT
+ {
+ imageExtent = imageExtent_;
+ return *this;
+ }
+
+ operator VkDisplaySurfaceCreateInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDisplaySurfaceCreateInfoKHR *>( this );
+ }
+
+ operator VkDisplaySurfaceCreateInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDisplaySurfaceCreateInfoKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DisplaySurfaceCreateInfoKHR const & ) const = default;
+#else
+ bool operator==( DisplaySurfaceCreateInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( displayMode == rhs.displayMode ) && ( planeIndex == rhs.planeIndex ) &&
+ ( planeStackIndex == rhs.planeStackIndex ) && ( transform == rhs.transform ) &&
+ ( globalAlpha == rhs.globalAlpha ) && ( alphaMode == rhs.alphaMode ) && ( imageExtent == rhs.imageExtent );
+ }
+
+ bool operator!=( DisplaySurfaceCreateInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDisplaySurfaceCreateInfoKHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::DisplaySurfaceCreateFlagsKHR flags = {};
+ VULKAN_HPP_NAMESPACE::DisplayModeKHR displayMode = {};
+ uint32_t planeIndex = {};
+ uint32_t planeStackIndex = {};
+ VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR transform =
+ VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR::eIdentity;
+ float globalAlpha = {};
+ VULKAN_HPP_NAMESPACE::DisplayPlaneAlphaFlagBitsKHR alphaMode =
+ VULKAN_HPP_NAMESPACE::DisplayPlaneAlphaFlagBitsKHR::eOpaque;
+ VULKAN_HPP_NAMESPACE::Extent2D imageExtent = {};
+ };
+ static_assert( sizeof( DisplaySurfaceCreateInfoKHR ) == sizeof( VkDisplaySurfaceCreateInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DisplaySurfaceCreateInfoKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eDisplaySurfaceCreateInfoKHR>
+ {
+ using Type = DisplaySurfaceCreateInfoKHR;
+ };
+
+ struct DrawIndexedIndirectCommand
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR DrawIndexedIndirectCommand( uint32_t indexCount_ = {},
+ uint32_t instanceCount_ = {},
+ uint32_t firstIndex_ = {},
+ int32_t vertexOffset_ = {},
+ uint32_t firstInstance_ = {} ) VULKAN_HPP_NOEXCEPT
+ : indexCount( indexCount_ )
+ , instanceCount( instanceCount_ )
+ , firstIndex( firstIndex_ )
+ , vertexOffset( vertexOffset_ )
+ , firstInstance( firstInstance_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ DrawIndexedIndirectCommand( DrawIndexedIndirectCommand const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DrawIndexedIndirectCommand( VkDrawIndexedIndirectCommand const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DrawIndexedIndirectCommand( *reinterpret_cast<DrawIndexedIndirectCommand const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DrawIndexedIndirectCommand &
+ operator=( DrawIndexedIndirectCommand const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DrawIndexedIndirectCommand & operator=( VkDrawIndexedIndirectCommand const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DrawIndexedIndirectCommand const *>( &rhs );
+ return *this;
+ }
+
+ DrawIndexedIndirectCommand & setIndexCount( uint32_t indexCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ indexCount = indexCount_;
+ return *this;
+ }
+
+ DrawIndexedIndirectCommand & setInstanceCount( uint32_t instanceCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ instanceCount = instanceCount_;
+ return *this;
+ }
+
+ DrawIndexedIndirectCommand & setFirstIndex( uint32_t firstIndex_ ) VULKAN_HPP_NOEXCEPT
+ {
+ firstIndex = firstIndex_;
+ return *this;
+ }
+
+ DrawIndexedIndirectCommand & setVertexOffset( int32_t vertexOffset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ vertexOffset = vertexOffset_;
+ return *this;
+ }
+
+ DrawIndexedIndirectCommand & setFirstInstance( uint32_t firstInstance_ ) VULKAN_HPP_NOEXCEPT
+ {
+ firstInstance = firstInstance_;
+ return *this;
+ }
+
+ operator VkDrawIndexedIndirectCommand const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDrawIndexedIndirectCommand *>( this );
+ }
+
+ operator VkDrawIndexedIndirectCommand &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDrawIndexedIndirectCommand *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DrawIndexedIndirectCommand const & ) const = default;
+#else
+ bool operator==( DrawIndexedIndirectCommand const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( indexCount == rhs.indexCount ) && ( instanceCount == rhs.instanceCount ) &&
+ ( firstIndex == rhs.firstIndex ) && ( vertexOffset == rhs.vertexOffset ) &&
+ ( firstInstance == rhs.firstInstance );
+ }
+
+ bool operator!=( DrawIndexedIndirectCommand const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ uint32_t indexCount = {};
+ uint32_t instanceCount = {};
+ uint32_t firstIndex = {};
+ int32_t vertexOffset = {};
+ uint32_t firstInstance = {};
+ };
+ static_assert( sizeof( DrawIndexedIndirectCommand ) == sizeof( VkDrawIndexedIndirectCommand ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DrawIndexedIndirectCommand>::value,
+ "struct wrapper is not a standard layout!" );
+
+ struct DrawIndirectCommand
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR DrawIndirectCommand( uint32_t vertexCount_ = {},
+ uint32_t instanceCount_ = {},
+ uint32_t firstVertex_ = {},
+ uint32_t firstInstance_ = {} ) VULKAN_HPP_NOEXCEPT
+ : vertexCount( vertexCount_ )
+ , instanceCount( instanceCount_ )
+ , firstVertex( firstVertex_ )
+ , firstInstance( firstInstance_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR DrawIndirectCommand( DrawIndirectCommand const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DrawIndirectCommand( VkDrawIndirectCommand const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DrawIndirectCommand( *reinterpret_cast<DrawIndirectCommand const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DrawIndirectCommand &
+ operator=( DrawIndirectCommand const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DrawIndirectCommand & operator=( VkDrawIndirectCommand const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DrawIndirectCommand const *>( &rhs );
+ return *this;
+ }
+
+ DrawIndirectCommand & setVertexCount( uint32_t vertexCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ vertexCount = vertexCount_;
+ return *this;
+ }
+
+ DrawIndirectCommand & setInstanceCount( uint32_t instanceCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ instanceCount = instanceCount_;
+ return *this;
+ }
+
+ DrawIndirectCommand & setFirstVertex( uint32_t firstVertex_ ) VULKAN_HPP_NOEXCEPT
+ {
+ firstVertex = firstVertex_;
+ return *this;
+ }
+
+ DrawIndirectCommand & setFirstInstance( uint32_t firstInstance_ ) VULKAN_HPP_NOEXCEPT
+ {
+ firstInstance = firstInstance_;
+ return *this;
+ }
+
+ operator VkDrawIndirectCommand const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDrawIndirectCommand *>( this );
+ }
+
+ operator VkDrawIndirectCommand &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDrawIndirectCommand *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DrawIndirectCommand const & ) const = default;
+#else
+ bool operator==( DrawIndirectCommand const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( vertexCount == rhs.vertexCount ) && ( instanceCount == rhs.instanceCount ) &&
+ ( firstVertex == rhs.firstVertex ) && ( firstInstance == rhs.firstInstance );
+ }
+
+ bool operator!=( DrawIndirectCommand const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ uint32_t vertexCount = {};
+ uint32_t instanceCount = {};
+ uint32_t firstVertex = {};
+ uint32_t firstInstance = {};
+ };
+ static_assert( sizeof( DrawIndirectCommand ) == sizeof( VkDrawIndirectCommand ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DrawIndirectCommand>::value, "struct wrapper is not a standard layout!" );
+
+ struct DrawMeshTasksIndirectCommandNV
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR DrawMeshTasksIndirectCommandNV( uint32_t taskCount_ = {},
+ uint32_t firstTask_ = {} ) VULKAN_HPP_NOEXCEPT
+ : taskCount( taskCount_ )
+ , firstTask( firstTask_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ DrawMeshTasksIndirectCommandNV( DrawMeshTasksIndirectCommandNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DrawMeshTasksIndirectCommandNV( VkDrawMeshTasksIndirectCommandNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DrawMeshTasksIndirectCommandNV( *reinterpret_cast<DrawMeshTasksIndirectCommandNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DrawMeshTasksIndirectCommandNV &
+ operator=( DrawMeshTasksIndirectCommandNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DrawMeshTasksIndirectCommandNV & operator=( VkDrawMeshTasksIndirectCommandNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DrawMeshTasksIndirectCommandNV const *>( &rhs );
+ return *this;
+ }
+
+ DrawMeshTasksIndirectCommandNV & setTaskCount( uint32_t taskCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ taskCount = taskCount_;
+ return *this;
+ }
+
+ DrawMeshTasksIndirectCommandNV & setFirstTask( uint32_t firstTask_ ) VULKAN_HPP_NOEXCEPT
+ {
+ firstTask = firstTask_;
+ return *this;
+ }
+
+ operator VkDrawMeshTasksIndirectCommandNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDrawMeshTasksIndirectCommandNV *>( this );
+ }
+
+ operator VkDrawMeshTasksIndirectCommandNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDrawMeshTasksIndirectCommandNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DrawMeshTasksIndirectCommandNV const & ) const = default;
+#else
+ bool operator==( DrawMeshTasksIndirectCommandNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( taskCount == rhs.taskCount ) && ( firstTask == rhs.firstTask );
+ }
+
+ bool operator!=( DrawMeshTasksIndirectCommandNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ uint32_t taskCount = {};
+ uint32_t firstTask = {};
+ };
+ static_assert( sizeof( DrawMeshTasksIndirectCommandNV ) == sizeof( VkDrawMeshTasksIndirectCommandNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DrawMeshTasksIndirectCommandNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ struct DrmFormatModifierPropertiesEXT
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR DrmFormatModifierPropertiesEXT(
+ uint64_t drmFormatModifier_ = {},
+ uint32_t drmFormatModifierPlaneCount_ = {},
+ VULKAN_HPP_NAMESPACE::FormatFeatureFlags drmFormatModifierTilingFeatures_ = {} ) VULKAN_HPP_NOEXCEPT
+ : drmFormatModifier( drmFormatModifier_ )
+ , drmFormatModifierPlaneCount( drmFormatModifierPlaneCount_ )
+ , drmFormatModifierTilingFeatures( drmFormatModifierTilingFeatures_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ DrmFormatModifierPropertiesEXT( DrmFormatModifierPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DrmFormatModifierPropertiesEXT( VkDrmFormatModifierPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DrmFormatModifierPropertiesEXT( *reinterpret_cast<DrmFormatModifierPropertiesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DrmFormatModifierPropertiesEXT &
+ operator=( DrmFormatModifierPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DrmFormatModifierPropertiesEXT & operator=( VkDrmFormatModifierPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DrmFormatModifierPropertiesEXT const *>( &rhs );
+ return *this;
+ }
+
+ operator VkDrmFormatModifierPropertiesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDrmFormatModifierPropertiesEXT *>( this );
+ }
+
+ operator VkDrmFormatModifierPropertiesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDrmFormatModifierPropertiesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DrmFormatModifierPropertiesEXT const & ) const = default;
+#else
+ bool operator==( DrmFormatModifierPropertiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( drmFormatModifier == rhs.drmFormatModifier ) &&
+ ( drmFormatModifierPlaneCount == rhs.drmFormatModifierPlaneCount ) &&
+ ( drmFormatModifierTilingFeatures == rhs.drmFormatModifierTilingFeatures );
+ }
+
+ bool operator!=( DrmFormatModifierPropertiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ uint64_t drmFormatModifier = {};
+ uint32_t drmFormatModifierPlaneCount = {};
+ VULKAN_HPP_NAMESPACE::FormatFeatureFlags drmFormatModifierTilingFeatures = {};
+ };
+ static_assert( sizeof( DrmFormatModifierPropertiesEXT ) == sizeof( VkDrmFormatModifierPropertiesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DrmFormatModifierPropertiesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ struct DrmFormatModifierPropertiesListEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eDrmFormatModifierPropertiesListEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR DrmFormatModifierPropertiesListEXT(
+ uint32_t drmFormatModifierCount_ = {},
+ VULKAN_HPP_NAMESPACE::DrmFormatModifierPropertiesEXT * pDrmFormatModifierProperties_ = {} ) VULKAN_HPP_NOEXCEPT
+ : drmFormatModifierCount( drmFormatModifierCount_ )
+ , pDrmFormatModifierProperties( pDrmFormatModifierProperties_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR DrmFormatModifierPropertiesListEXT( DrmFormatModifierPropertiesListEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ DrmFormatModifierPropertiesListEXT( VkDrmFormatModifierPropertiesListEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : DrmFormatModifierPropertiesListEXT( *reinterpret_cast<DrmFormatModifierPropertiesListEXT const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ DrmFormatModifierPropertiesListEXT(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<VULKAN_HPP_NAMESPACE::DrmFormatModifierPropertiesEXT> const &
+ drmFormatModifierProperties_ )
+ : drmFormatModifierCount( static_cast<uint32_t>( drmFormatModifierProperties_.size() ) )
+ , pDrmFormatModifierProperties( drmFormatModifierProperties_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 DrmFormatModifierPropertiesListEXT &
+ operator=( DrmFormatModifierPropertiesListEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ DrmFormatModifierPropertiesListEXT &
+ operator=( VkDrmFormatModifierPropertiesListEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DrmFormatModifierPropertiesListEXT const *>( &rhs );
+ return *this;
+ }
+
+ operator VkDrmFormatModifierPropertiesListEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkDrmFormatModifierPropertiesListEXT *>( this );
+ }
+
+ operator VkDrmFormatModifierPropertiesListEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkDrmFormatModifierPropertiesListEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( DrmFormatModifierPropertiesListEXT const & ) const = default;
+#else
+ bool operator==( DrmFormatModifierPropertiesListEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( drmFormatModifierCount == rhs.drmFormatModifierCount ) &&
+ ( pDrmFormatModifierProperties == rhs.pDrmFormatModifierProperties );
+ }
+
+ bool operator!=( DrmFormatModifierPropertiesListEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDrmFormatModifierPropertiesListEXT;
+ void * pNext = {};
+ uint32_t drmFormatModifierCount = {};
+ VULKAN_HPP_NAMESPACE::DrmFormatModifierPropertiesEXT * pDrmFormatModifierProperties = {};
+ };
+ static_assert( sizeof( DrmFormatModifierPropertiesListEXT ) == sizeof( VkDrmFormatModifierPropertiesListEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<DrmFormatModifierPropertiesListEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eDrmFormatModifierPropertiesListEXT>
+ {
+ using Type = DrmFormatModifierPropertiesListEXT;
+ };
+
+ struct EventCreateInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eEventCreateInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR EventCreateInfo( VULKAN_HPP_NAMESPACE::EventCreateFlags flags_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR EventCreateInfo( EventCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ EventCreateInfo( VkEventCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : EventCreateInfo( *reinterpret_cast<EventCreateInfo const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 EventCreateInfo & operator=( EventCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ EventCreateInfo & operator=( VkEventCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::EventCreateInfo const *>( &rhs );
+ return *this;
+ }
+
+ EventCreateInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ EventCreateInfo & setFlags( VULKAN_HPP_NAMESPACE::EventCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ operator VkEventCreateInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkEventCreateInfo *>( this );
+ }
+
+ operator VkEventCreateInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkEventCreateInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( EventCreateInfo const & ) const = default;
+#else
+ bool operator==( EventCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags );
+ }
+
+ bool operator!=( EventCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eEventCreateInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::EventCreateFlags flags = {};
+ };
+ static_assert( sizeof( EventCreateInfo ) == sizeof( VkEventCreateInfo ), "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<EventCreateInfo>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eEventCreateInfo>
+ {
+ using Type = EventCreateInfo;
+ };
+
+ struct ExportFenceCreateInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eExportFenceCreateInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ ExportFenceCreateInfo( VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlags handleTypes_ = {} ) VULKAN_HPP_NOEXCEPT
+ : handleTypes( handleTypes_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR ExportFenceCreateInfo( ExportFenceCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ExportFenceCreateInfo( VkExportFenceCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ExportFenceCreateInfo( *reinterpret_cast<ExportFenceCreateInfo const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ExportFenceCreateInfo &
+ operator=( ExportFenceCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ExportFenceCreateInfo & operator=( VkExportFenceCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ExportFenceCreateInfo const *>( &rhs );
+ return *this;
+ }
+
+ ExportFenceCreateInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ ExportFenceCreateInfo &
+ setHandleTypes( VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlags handleTypes_ ) VULKAN_HPP_NOEXCEPT
+ {
+ handleTypes = handleTypes_;
+ return *this;
+ }
+
+ operator VkExportFenceCreateInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkExportFenceCreateInfo *>( this );
+ }
+
+ operator VkExportFenceCreateInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkExportFenceCreateInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ExportFenceCreateInfo const & ) const = default;
+#else
+ bool operator==( ExportFenceCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( handleTypes == rhs.handleTypes );
+ }
+
+ bool operator!=( ExportFenceCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eExportFenceCreateInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlags handleTypes = {};
+ };
+ static_assert( sizeof( ExportFenceCreateInfo ) == sizeof( VkExportFenceCreateInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ExportFenceCreateInfo>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eExportFenceCreateInfo>
+ {
+ using Type = ExportFenceCreateInfo;
+ };
+ using ExportFenceCreateInfoKHR = ExportFenceCreateInfo;
+
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ struct ExportFenceWin32HandleInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eExportFenceWin32HandleInfoKHR;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR ExportFenceWin32HandleInfoKHR( const SECURITY_ATTRIBUTES * pAttributes_ = {},
+ DWORD dwAccess_ = {},
+ LPCWSTR name_ = {} ) VULKAN_HPP_NOEXCEPT
+ : pAttributes( pAttributes_ )
+ , dwAccess( dwAccess_ )
+ , name( name_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ ExportFenceWin32HandleInfoKHR( ExportFenceWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ExportFenceWin32HandleInfoKHR( VkExportFenceWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ExportFenceWin32HandleInfoKHR( *reinterpret_cast<ExportFenceWin32HandleInfoKHR const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ExportFenceWin32HandleInfoKHR &
+ operator=( ExportFenceWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ExportFenceWin32HandleInfoKHR & operator=( VkExportFenceWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ExportFenceWin32HandleInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ ExportFenceWin32HandleInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ ExportFenceWin32HandleInfoKHR & setPAttributes( const SECURITY_ATTRIBUTES * pAttributes_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pAttributes = pAttributes_;
+ return *this;
+ }
+
+ ExportFenceWin32HandleInfoKHR & setDwAccess( DWORD dwAccess_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dwAccess = dwAccess_;
+ return *this;
+ }
+
+ ExportFenceWin32HandleInfoKHR & setName( LPCWSTR name_ ) VULKAN_HPP_NOEXCEPT
+ {
+ name = name_;
+ return *this;
+ }
+
+ operator VkExportFenceWin32HandleInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkExportFenceWin32HandleInfoKHR *>( this );
+ }
+
+ operator VkExportFenceWin32HandleInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkExportFenceWin32HandleInfoKHR *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ExportFenceWin32HandleInfoKHR const & ) const = default;
+# else
+ bool operator==( ExportFenceWin32HandleInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( pAttributes == rhs.pAttributes ) &&
+ ( dwAccess == rhs.dwAccess ) && ( name == rhs.name );
+ }
+
+ bool operator!=( ExportFenceWin32HandleInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eExportFenceWin32HandleInfoKHR;
+ const void * pNext = {};
+ const SECURITY_ATTRIBUTES * pAttributes = {};
+ DWORD dwAccess = {};
+ LPCWSTR name = {};
+ };
+ static_assert( sizeof( ExportFenceWin32HandleInfoKHR ) == sizeof( VkExportFenceWin32HandleInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ExportFenceWin32HandleInfoKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eExportFenceWin32HandleInfoKHR>
+ {
+ using Type = ExportFenceWin32HandleInfoKHR;
+ };
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+
+ struct ExportMemoryAllocateInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eExportMemoryAllocateInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR ExportMemoryAllocateInfo(
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlags handleTypes_ = {} ) VULKAN_HPP_NOEXCEPT
+ : handleTypes( handleTypes_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR ExportMemoryAllocateInfo( ExportMemoryAllocateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ExportMemoryAllocateInfo( VkExportMemoryAllocateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ExportMemoryAllocateInfo( *reinterpret_cast<ExportMemoryAllocateInfo const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ExportMemoryAllocateInfo &
+ operator=( ExportMemoryAllocateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ExportMemoryAllocateInfo & operator=( VkExportMemoryAllocateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ExportMemoryAllocateInfo const *>( &rhs );
+ return *this;
+ }
+
+ ExportMemoryAllocateInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ ExportMemoryAllocateInfo &
+ setHandleTypes( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlags handleTypes_ ) VULKAN_HPP_NOEXCEPT
+ {
+ handleTypes = handleTypes_;
+ return *this;
+ }
+
+ operator VkExportMemoryAllocateInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkExportMemoryAllocateInfo *>( this );
+ }
+
+ operator VkExportMemoryAllocateInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkExportMemoryAllocateInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ExportMemoryAllocateInfo const & ) const = default;
+#else
+ bool operator==( ExportMemoryAllocateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( handleTypes == rhs.handleTypes );
+ }
+
+ bool operator!=( ExportMemoryAllocateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eExportMemoryAllocateInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlags handleTypes = {};
+ };
+ static_assert( sizeof( ExportMemoryAllocateInfo ) == sizeof( VkExportMemoryAllocateInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ExportMemoryAllocateInfo>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eExportMemoryAllocateInfo>
+ {
+ using Type = ExportMemoryAllocateInfo;
+ };
+ using ExportMemoryAllocateInfoKHR = ExportMemoryAllocateInfo;
+
+ struct ExportMemoryAllocateInfoNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eExportMemoryAllocateInfoNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR ExportMemoryAllocateInfoNV(
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV handleTypes_ = {} ) VULKAN_HPP_NOEXCEPT
+ : handleTypes( handleTypes_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ ExportMemoryAllocateInfoNV( ExportMemoryAllocateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ExportMemoryAllocateInfoNV( VkExportMemoryAllocateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ExportMemoryAllocateInfoNV( *reinterpret_cast<ExportMemoryAllocateInfoNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ExportMemoryAllocateInfoNV &
+ operator=( ExportMemoryAllocateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ExportMemoryAllocateInfoNV & operator=( VkExportMemoryAllocateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ExportMemoryAllocateInfoNV const *>( &rhs );
+ return *this;
+ }
+
+ ExportMemoryAllocateInfoNV & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ ExportMemoryAllocateInfoNV &
+ setHandleTypes( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV handleTypes_ ) VULKAN_HPP_NOEXCEPT
+ {
+ handleTypes = handleTypes_;
+ return *this;
+ }
+
+ operator VkExportMemoryAllocateInfoNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkExportMemoryAllocateInfoNV *>( this );
+ }
+
+ operator VkExportMemoryAllocateInfoNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkExportMemoryAllocateInfoNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ExportMemoryAllocateInfoNV const & ) const = default;
+#else
+ bool operator==( ExportMemoryAllocateInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( handleTypes == rhs.handleTypes );
+ }
+
+ bool operator!=( ExportMemoryAllocateInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eExportMemoryAllocateInfoNV;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV handleTypes = {};
+ };
+ static_assert( sizeof( ExportMemoryAllocateInfoNV ) == sizeof( VkExportMemoryAllocateInfoNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ExportMemoryAllocateInfoNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eExportMemoryAllocateInfoNV>
+ {
+ using Type = ExportMemoryAllocateInfoNV;
+ };
+
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ struct ExportMemoryWin32HandleInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eExportMemoryWin32HandleInfoKHR;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR ExportMemoryWin32HandleInfoKHR( const SECURITY_ATTRIBUTES * pAttributes_ = {},
+ DWORD dwAccess_ = {},
+ LPCWSTR name_ = {} ) VULKAN_HPP_NOEXCEPT
+ : pAttributes( pAttributes_ )
+ , dwAccess( dwAccess_ )
+ , name( name_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ ExportMemoryWin32HandleInfoKHR( ExportMemoryWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ExportMemoryWin32HandleInfoKHR( VkExportMemoryWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ExportMemoryWin32HandleInfoKHR( *reinterpret_cast<ExportMemoryWin32HandleInfoKHR const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ExportMemoryWin32HandleInfoKHR &
+ operator=( ExportMemoryWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ExportMemoryWin32HandleInfoKHR & operator=( VkExportMemoryWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ExportMemoryWin32HandleInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ ExportMemoryWin32HandleInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ ExportMemoryWin32HandleInfoKHR & setPAttributes( const SECURITY_ATTRIBUTES * pAttributes_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pAttributes = pAttributes_;
+ return *this;
+ }
+
+ ExportMemoryWin32HandleInfoKHR & setDwAccess( DWORD dwAccess_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dwAccess = dwAccess_;
+ return *this;
+ }
+
+ ExportMemoryWin32HandleInfoKHR & setName( LPCWSTR name_ ) VULKAN_HPP_NOEXCEPT
+ {
+ name = name_;
+ return *this;
+ }
+
+ operator VkExportMemoryWin32HandleInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkExportMemoryWin32HandleInfoKHR *>( this );
+ }
+
+ operator VkExportMemoryWin32HandleInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkExportMemoryWin32HandleInfoKHR *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ExportMemoryWin32HandleInfoKHR const & ) const = default;
+# else
+ bool operator==( ExportMemoryWin32HandleInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( pAttributes == rhs.pAttributes ) &&
+ ( dwAccess == rhs.dwAccess ) && ( name == rhs.name );
+ }
+
+ bool operator!=( ExportMemoryWin32HandleInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eExportMemoryWin32HandleInfoKHR;
+ const void * pNext = {};
+ const SECURITY_ATTRIBUTES * pAttributes = {};
+ DWORD dwAccess = {};
+ LPCWSTR name = {};
+ };
+ static_assert( sizeof( ExportMemoryWin32HandleInfoKHR ) == sizeof( VkExportMemoryWin32HandleInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ExportMemoryWin32HandleInfoKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eExportMemoryWin32HandleInfoKHR>
+ {
+ using Type = ExportMemoryWin32HandleInfoKHR;
+ };
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ struct ExportMemoryWin32HandleInfoNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eExportMemoryWin32HandleInfoNV;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR ExportMemoryWin32HandleInfoNV( const SECURITY_ATTRIBUTES * pAttributes_ = {},
+ DWORD dwAccess_ = {} ) VULKAN_HPP_NOEXCEPT
+ : pAttributes( pAttributes_ )
+ , dwAccess( dwAccess_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ ExportMemoryWin32HandleInfoNV( ExportMemoryWin32HandleInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ExportMemoryWin32HandleInfoNV( VkExportMemoryWin32HandleInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ExportMemoryWin32HandleInfoNV( *reinterpret_cast<ExportMemoryWin32HandleInfoNV const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ExportMemoryWin32HandleInfoNV &
+ operator=( ExportMemoryWin32HandleInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ExportMemoryWin32HandleInfoNV & operator=( VkExportMemoryWin32HandleInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ExportMemoryWin32HandleInfoNV const *>( &rhs );
+ return *this;
+ }
+
+ ExportMemoryWin32HandleInfoNV & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ ExportMemoryWin32HandleInfoNV & setPAttributes( const SECURITY_ATTRIBUTES * pAttributes_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pAttributes = pAttributes_;
+ return *this;
+ }
+
+ ExportMemoryWin32HandleInfoNV & setDwAccess( DWORD dwAccess_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dwAccess = dwAccess_;
+ return *this;
+ }
+
+ operator VkExportMemoryWin32HandleInfoNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkExportMemoryWin32HandleInfoNV *>( this );
+ }
+
+ operator VkExportMemoryWin32HandleInfoNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkExportMemoryWin32HandleInfoNV *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ExportMemoryWin32HandleInfoNV const & ) const = default;
+# else
+ bool operator==( ExportMemoryWin32HandleInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( pAttributes == rhs.pAttributes ) &&
+ ( dwAccess == rhs.dwAccess );
+ }
+
+ bool operator!=( ExportMemoryWin32HandleInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eExportMemoryWin32HandleInfoNV;
+ const void * pNext = {};
+ const SECURITY_ATTRIBUTES * pAttributes = {};
+ DWORD dwAccess = {};
+ };
+ static_assert( sizeof( ExportMemoryWin32HandleInfoNV ) == sizeof( VkExportMemoryWin32HandleInfoNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ExportMemoryWin32HandleInfoNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eExportMemoryWin32HandleInfoNV>
+ {
+ using Type = ExportMemoryWin32HandleInfoNV;
+ };
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+
+ struct ExportSemaphoreCreateInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eExportSemaphoreCreateInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR ExportSemaphoreCreateInfo(
+ VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlags handleTypes_ = {} ) VULKAN_HPP_NOEXCEPT
+ : handleTypes( handleTypes_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ ExportSemaphoreCreateInfo( ExportSemaphoreCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ExportSemaphoreCreateInfo( VkExportSemaphoreCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ExportSemaphoreCreateInfo( *reinterpret_cast<ExportSemaphoreCreateInfo const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ExportSemaphoreCreateInfo &
+ operator=( ExportSemaphoreCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ExportSemaphoreCreateInfo & operator=( VkExportSemaphoreCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ExportSemaphoreCreateInfo const *>( &rhs );
+ return *this;
+ }
+
+ ExportSemaphoreCreateInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ ExportSemaphoreCreateInfo &
+ setHandleTypes( VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlags handleTypes_ ) VULKAN_HPP_NOEXCEPT
+ {
+ handleTypes = handleTypes_;
+ return *this;
+ }
+
+ operator VkExportSemaphoreCreateInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkExportSemaphoreCreateInfo *>( this );
+ }
+
+ operator VkExportSemaphoreCreateInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkExportSemaphoreCreateInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ExportSemaphoreCreateInfo const & ) const = default;
+#else
+ bool operator==( ExportSemaphoreCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( handleTypes == rhs.handleTypes );
+ }
+
+ bool operator!=( ExportSemaphoreCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eExportSemaphoreCreateInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlags handleTypes = {};
+ };
+ static_assert( sizeof( ExportSemaphoreCreateInfo ) == sizeof( VkExportSemaphoreCreateInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ExportSemaphoreCreateInfo>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eExportSemaphoreCreateInfo>
+ {
+ using Type = ExportSemaphoreCreateInfo;
+ };
+ using ExportSemaphoreCreateInfoKHR = ExportSemaphoreCreateInfo;
+
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ struct ExportSemaphoreWin32HandleInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eExportSemaphoreWin32HandleInfoKHR;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR ExportSemaphoreWin32HandleInfoKHR( const SECURITY_ATTRIBUTES * pAttributes_ = {},
+ DWORD dwAccess_ = {},
+ LPCWSTR name_ = {} ) VULKAN_HPP_NOEXCEPT
+ : pAttributes( pAttributes_ )
+ , dwAccess( dwAccess_ )
+ , name( name_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ ExportSemaphoreWin32HandleInfoKHR( ExportSemaphoreWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ExportSemaphoreWin32HandleInfoKHR( VkExportSemaphoreWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ExportSemaphoreWin32HandleInfoKHR( *reinterpret_cast<ExportSemaphoreWin32HandleInfoKHR const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ExportSemaphoreWin32HandleInfoKHR &
+ operator=( ExportSemaphoreWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ExportSemaphoreWin32HandleInfoKHR & operator=( VkExportSemaphoreWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ExportSemaphoreWin32HandleInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ ExportSemaphoreWin32HandleInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ ExportSemaphoreWin32HandleInfoKHR & setPAttributes( const SECURITY_ATTRIBUTES * pAttributes_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pAttributes = pAttributes_;
+ return *this;
+ }
+
+ ExportSemaphoreWin32HandleInfoKHR & setDwAccess( DWORD dwAccess_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dwAccess = dwAccess_;
+ return *this;
+ }
+
+ ExportSemaphoreWin32HandleInfoKHR & setName( LPCWSTR name_ ) VULKAN_HPP_NOEXCEPT
+ {
+ name = name_;
+ return *this;
+ }
+
+ operator VkExportSemaphoreWin32HandleInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkExportSemaphoreWin32HandleInfoKHR *>( this );
+ }
+
+ operator VkExportSemaphoreWin32HandleInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkExportSemaphoreWin32HandleInfoKHR *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ExportSemaphoreWin32HandleInfoKHR const & ) const = default;
+# else
+ bool operator==( ExportSemaphoreWin32HandleInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( pAttributes == rhs.pAttributes ) &&
+ ( dwAccess == rhs.dwAccess ) && ( name == rhs.name );
+ }
+
+ bool operator!=( ExportSemaphoreWin32HandleInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eExportSemaphoreWin32HandleInfoKHR;
+ const void * pNext = {};
+ const SECURITY_ATTRIBUTES * pAttributes = {};
+ DWORD dwAccess = {};
+ LPCWSTR name = {};
+ };
+ static_assert( sizeof( ExportSemaphoreWin32HandleInfoKHR ) == sizeof( VkExportSemaphoreWin32HandleInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ExportSemaphoreWin32HandleInfoKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eExportSemaphoreWin32HandleInfoKHR>
+ {
+ using Type = ExportSemaphoreWin32HandleInfoKHR;
+ };
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+
+ struct ExtensionProperties
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR_14
+ ExtensionProperties( std::array<char, VK_MAX_EXTENSION_NAME_SIZE> const & extensionName_ = {},
+ uint32_t specVersion_ = {} ) VULKAN_HPP_NOEXCEPT
+ : extensionName( extensionName_ )
+ , specVersion( specVersion_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR_14 ExtensionProperties( ExtensionProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ExtensionProperties( VkExtensionProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ExtensionProperties( *reinterpret_cast<ExtensionProperties const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ExtensionProperties &
+ operator=( ExtensionProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ExtensionProperties & operator=( VkExtensionProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ExtensionProperties const *>( &rhs );
+ return *this;
+ }
+
+ operator VkExtensionProperties const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkExtensionProperties *>( this );
+ }
+
+ operator VkExtensionProperties &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkExtensionProperties *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ExtensionProperties const & ) const = default;
+#else
+ bool operator==( ExtensionProperties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( extensionName == rhs.extensionName ) && ( specVersion == rhs.specVersion );
+ }
+
+ bool operator!=( ExtensionProperties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_EXTENSION_NAME_SIZE> extensionName = {};
+ uint32_t specVersion = {};
+ };
+ static_assert( sizeof( ExtensionProperties ) == sizeof( VkExtensionProperties ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ExtensionProperties>::value, "struct wrapper is not a standard layout!" );
+
+ struct ExternalMemoryProperties
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR ExternalMemoryProperties(
+ VULKAN_HPP_NAMESPACE::ExternalMemoryFeatureFlags externalMemoryFeatures_ = {},
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlags exportFromImportedHandleTypes_ = {},
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlags compatibleHandleTypes_ = {} ) VULKAN_HPP_NOEXCEPT
+ : externalMemoryFeatures( externalMemoryFeatures_ )
+ , exportFromImportedHandleTypes( exportFromImportedHandleTypes_ )
+ , compatibleHandleTypes( compatibleHandleTypes_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR ExternalMemoryProperties( ExternalMemoryProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ExternalMemoryProperties( VkExternalMemoryProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ExternalMemoryProperties( *reinterpret_cast<ExternalMemoryProperties const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ExternalMemoryProperties &
+ operator=( ExternalMemoryProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ExternalMemoryProperties & operator=( VkExternalMemoryProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ExternalMemoryProperties const *>( &rhs );
+ return *this;
+ }
+
+ operator VkExternalMemoryProperties const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkExternalMemoryProperties *>( this );
+ }
+
+ operator VkExternalMemoryProperties &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkExternalMemoryProperties *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ExternalMemoryProperties const & ) const = default;
+#else
+ bool operator==( ExternalMemoryProperties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( externalMemoryFeatures == rhs.externalMemoryFeatures ) &&
+ ( exportFromImportedHandleTypes == rhs.exportFromImportedHandleTypes ) &&
+ ( compatibleHandleTypes == rhs.compatibleHandleTypes );
+ }
+
+ bool operator!=( ExternalMemoryProperties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::ExternalMemoryFeatureFlags externalMemoryFeatures = {};
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlags exportFromImportedHandleTypes = {};
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlags compatibleHandleTypes = {};
+ };
+ static_assert( sizeof( ExternalMemoryProperties ) == sizeof( VkExternalMemoryProperties ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ExternalMemoryProperties>::value, "struct wrapper is not a standard layout!" );
+ using ExternalMemoryPropertiesKHR = ExternalMemoryProperties;
+
+ struct ExternalBufferProperties
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eExternalBufferProperties;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR ExternalBufferProperties(
+ VULKAN_HPP_NAMESPACE::ExternalMemoryProperties externalMemoryProperties_ = {} ) VULKAN_HPP_NOEXCEPT
+ : externalMemoryProperties( externalMemoryProperties_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR ExternalBufferProperties( ExternalBufferProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ExternalBufferProperties( VkExternalBufferProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ExternalBufferProperties( *reinterpret_cast<ExternalBufferProperties const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ExternalBufferProperties &
+ operator=( ExternalBufferProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ExternalBufferProperties & operator=( VkExternalBufferProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ExternalBufferProperties const *>( &rhs );
+ return *this;
+ }
+
+ operator VkExternalBufferProperties const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkExternalBufferProperties *>( this );
+ }
+
+ operator VkExternalBufferProperties &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkExternalBufferProperties *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ExternalBufferProperties const & ) const = default;
+#else
+ bool operator==( ExternalBufferProperties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( externalMemoryProperties == rhs.externalMemoryProperties );
+ }
+
+ bool operator!=( ExternalBufferProperties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eExternalBufferProperties;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ExternalMemoryProperties externalMemoryProperties = {};
+ };
+ static_assert( sizeof( ExternalBufferProperties ) == sizeof( VkExternalBufferProperties ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ExternalBufferProperties>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eExternalBufferProperties>
+ {
+ using Type = ExternalBufferProperties;
+ };
+ using ExternalBufferPropertiesKHR = ExternalBufferProperties;
+
+ struct ExternalFenceProperties
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eExternalFenceProperties;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR ExternalFenceProperties(
+ VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlags exportFromImportedHandleTypes_ = {},
+ VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlags compatibleHandleTypes_ = {},
+ VULKAN_HPP_NAMESPACE::ExternalFenceFeatureFlags externalFenceFeatures_ = {} ) VULKAN_HPP_NOEXCEPT
+ : exportFromImportedHandleTypes( exportFromImportedHandleTypes_ )
+ , compatibleHandleTypes( compatibleHandleTypes_ )
+ , externalFenceFeatures( externalFenceFeatures_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR ExternalFenceProperties( ExternalFenceProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ExternalFenceProperties( VkExternalFenceProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ExternalFenceProperties( *reinterpret_cast<ExternalFenceProperties const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ExternalFenceProperties &
+ operator=( ExternalFenceProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ExternalFenceProperties & operator=( VkExternalFenceProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ExternalFenceProperties const *>( &rhs );
+ return *this;
+ }
+
+ operator VkExternalFenceProperties const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkExternalFenceProperties *>( this );
+ }
+
+ operator VkExternalFenceProperties &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkExternalFenceProperties *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ExternalFenceProperties const & ) const = default;
+#else
+ bool operator==( ExternalFenceProperties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( exportFromImportedHandleTypes == rhs.exportFromImportedHandleTypes ) &&
+ ( compatibleHandleTypes == rhs.compatibleHandleTypes ) &&
+ ( externalFenceFeatures == rhs.externalFenceFeatures );
+ }
+
+ bool operator!=( ExternalFenceProperties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eExternalFenceProperties;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlags exportFromImportedHandleTypes = {};
+ VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlags compatibleHandleTypes = {};
+ VULKAN_HPP_NAMESPACE::ExternalFenceFeatureFlags externalFenceFeatures = {};
+ };
+ static_assert( sizeof( ExternalFenceProperties ) == sizeof( VkExternalFenceProperties ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ExternalFenceProperties>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eExternalFenceProperties>
+ {
+ using Type = ExternalFenceProperties;
+ };
+ using ExternalFencePropertiesKHR = ExternalFenceProperties;
+
+#if defined( VK_USE_PLATFORM_ANDROID_KHR )
+ struct ExternalFormatANDROID
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eExternalFormatANDROID;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR ExternalFormatANDROID( uint64_t externalFormat_ = {} ) VULKAN_HPP_NOEXCEPT
+ : externalFormat( externalFormat_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR ExternalFormatANDROID( ExternalFormatANDROID const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ExternalFormatANDROID( VkExternalFormatANDROID const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ExternalFormatANDROID( *reinterpret_cast<ExternalFormatANDROID const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ExternalFormatANDROID &
+ operator=( ExternalFormatANDROID const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ExternalFormatANDROID & operator=( VkExternalFormatANDROID const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ExternalFormatANDROID const *>( &rhs );
+ return *this;
+ }
+
+ ExternalFormatANDROID & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ ExternalFormatANDROID & setExternalFormat( uint64_t externalFormat_ ) VULKAN_HPP_NOEXCEPT
+ {
+ externalFormat = externalFormat_;
+ return *this;
+ }
+
+ operator VkExternalFormatANDROID const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkExternalFormatANDROID *>( this );
+ }
+
+ operator VkExternalFormatANDROID &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkExternalFormatANDROID *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ExternalFormatANDROID const & ) const = default;
+# else
+ bool operator==( ExternalFormatANDROID const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( externalFormat == rhs.externalFormat );
+ }
+
+ bool operator!=( ExternalFormatANDROID const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eExternalFormatANDROID;
+ void * pNext = {};
+ uint64_t externalFormat = {};
+ };
+ static_assert( sizeof( ExternalFormatANDROID ) == sizeof( VkExternalFormatANDROID ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ExternalFormatANDROID>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eExternalFormatANDROID>
+ {
+ using Type = ExternalFormatANDROID;
+ };
+#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
+
+ struct ExternalImageFormatProperties
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eExternalImageFormatProperties;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR ExternalImageFormatProperties(
+ VULKAN_HPP_NAMESPACE::ExternalMemoryProperties externalMemoryProperties_ = {} ) VULKAN_HPP_NOEXCEPT
+ : externalMemoryProperties( externalMemoryProperties_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ ExternalImageFormatProperties( ExternalImageFormatProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ExternalImageFormatProperties( VkExternalImageFormatProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ExternalImageFormatProperties( *reinterpret_cast<ExternalImageFormatProperties const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ExternalImageFormatProperties &
+ operator=( ExternalImageFormatProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ExternalImageFormatProperties & operator=( VkExternalImageFormatProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ExternalImageFormatProperties const *>( &rhs );
+ return *this;
+ }
+
+ operator VkExternalImageFormatProperties const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkExternalImageFormatProperties *>( this );
+ }
+
+ operator VkExternalImageFormatProperties &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkExternalImageFormatProperties *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ExternalImageFormatProperties const & ) const = default;
+#else
+ bool operator==( ExternalImageFormatProperties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( externalMemoryProperties == rhs.externalMemoryProperties );
+ }
+
+ bool operator!=( ExternalImageFormatProperties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eExternalImageFormatProperties;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ExternalMemoryProperties externalMemoryProperties = {};
+ };
+ static_assert( sizeof( ExternalImageFormatProperties ) == sizeof( VkExternalImageFormatProperties ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ExternalImageFormatProperties>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eExternalImageFormatProperties>
+ {
+ using Type = ExternalImageFormatProperties;
+ };
+ using ExternalImageFormatPropertiesKHR = ExternalImageFormatProperties;
+
+ struct ImageFormatProperties
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ ImageFormatProperties( VULKAN_HPP_NAMESPACE::Extent3D maxExtent_ = {},
+ uint32_t maxMipLevels_ = {},
+ uint32_t maxArrayLayers_ = {},
+ VULKAN_HPP_NAMESPACE::SampleCountFlags sampleCounts_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize maxResourceSize_ = {} ) VULKAN_HPP_NOEXCEPT
+ : maxExtent( maxExtent_ )
+ , maxMipLevels( maxMipLevels_ )
+ , maxArrayLayers( maxArrayLayers_ )
+ , sampleCounts( sampleCounts_ )
+ , maxResourceSize( maxResourceSize_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR ImageFormatProperties( ImageFormatProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImageFormatProperties( VkImageFormatProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ImageFormatProperties( *reinterpret_cast<ImageFormatProperties const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ImageFormatProperties &
+ operator=( ImageFormatProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImageFormatProperties & operator=( VkImageFormatProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageFormatProperties const *>( &rhs );
+ return *this;
+ }
+
+ operator VkImageFormatProperties const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkImageFormatProperties *>( this );
+ }
+
+ operator VkImageFormatProperties &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkImageFormatProperties *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ImageFormatProperties const & ) const = default;
+#else
+ bool operator==( ImageFormatProperties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( maxExtent == rhs.maxExtent ) && ( maxMipLevels == rhs.maxMipLevels ) &&
+ ( maxArrayLayers == rhs.maxArrayLayers ) && ( sampleCounts == rhs.sampleCounts ) &&
+ ( maxResourceSize == rhs.maxResourceSize );
+ }
+
+ bool operator!=( ImageFormatProperties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::Extent3D maxExtent = {};
+ uint32_t maxMipLevels = {};
+ uint32_t maxArrayLayers = {};
+ VULKAN_HPP_NAMESPACE::SampleCountFlags sampleCounts = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize maxResourceSize = {};
+ };
+ static_assert( sizeof( ImageFormatProperties ) == sizeof( VkImageFormatProperties ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ImageFormatProperties>::value, "struct wrapper is not a standard layout!" );
+
+ struct ExternalImageFormatPropertiesNV
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR ExternalImageFormatPropertiesNV(
+ VULKAN_HPP_NAMESPACE::ImageFormatProperties imageFormatProperties_ = {},
+ VULKAN_HPP_NAMESPACE::ExternalMemoryFeatureFlagsNV externalMemoryFeatures_ = {},
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV exportFromImportedHandleTypes_ = {},
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV compatibleHandleTypes_ = {} ) VULKAN_HPP_NOEXCEPT
+ : imageFormatProperties( imageFormatProperties_ )
+ , externalMemoryFeatures( externalMemoryFeatures_ )
+ , exportFromImportedHandleTypes( exportFromImportedHandleTypes_ )
+ , compatibleHandleTypes( compatibleHandleTypes_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ ExternalImageFormatPropertiesNV( ExternalImageFormatPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ExternalImageFormatPropertiesNV( VkExternalImageFormatPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ExternalImageFormatPropertiesNV( *reinterpret_cast<ExternalImageFormatPropertiesNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ExternalImageFormatPropertiesNV &
+ operator=( ExternalImageFormatPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ExternalImageFormatPropertiesNV & operator=( VkExternalImageFormatPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ExternalImageFormatPropertiesNV const *>( &rhs );
+ return *this;
+ }
+
+ operator VkExternalImageFormatPropertiesNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkExternalImageFormatPropertiesNV *>( this );
+ }
+
+ operator VkExternalImageFormatPropertiesNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkExternalImageFormatPropertiesNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ExternalImageFormatPropertiesNV const & ) const = default;
+#else
+ bool operator==( ExternalImageFormatPropertiesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( imageFormatProperties == rhs.imageFormatProperties ) &&
+ ( externalMemoryFeatures == rhs.externalMemoryFeatures ) &&
+ ( exportFromImportedHandleTypes == rhs.exportFromImportedHandleTypes ) &&
+ ( compatibleHandleTypes == rhs.compatibleHandleTypes );
+ }
+
+ bool operator!=( ExternalImageFormatPropertiesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::ImageFormatProperties imageFormatProperties = {};
+ VULKAN_HPP_NAMESPACE::ExternalMemoryFeatureFlagsNV externalMemoryFeatures = {};
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV exportFromImportedHandleTypes = {};
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV compatibleHandleTypes = {};
+ };
+ static_assert( sizeof( ExternalImageFormatPropertiesNV ) == sizeof( VkExternalImageFormatPropertiesNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ExternalImageFormatPropertiesNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ struct ExternalMemoryBufferCreateInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eExternalMemoryBufferCreateInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR ExternalMemoryBufferCreateInfo(
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlags handleTypes_ = {} ) VULKAN_HPP_NOEXCEPT
+ : handleTypes( handleTypes_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ ExternalMemoryBufferCreateInfo( ExternalMemoryBufferCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ExternalMemoryBufferCreateInfo( VkExternalMemoryBufferCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ExternalMemoryBufferCreateInfo( *reinterpret_cast<ExternalMemoryBufferCreateInfo const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ExternalMemoryBufferCreateInfo &
+ operator=( ExternalMemoryBufferCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ExternalMemoryBufferCreateInfo & operator=( VkExternalMemoryBufferCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ExternalMemoryBufferCreateInfo const *>( &rhs );
+ return *this;
+ }
+
+ ExternalMemoryBufferCreateInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ ExternalMemoryBufferCreateInfo &
+ setHandleTypes( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlags handleTypes_ ) VULKAN_HPP_NOEXCEPT
+ {
+ handleTypes = handleTypes_;
+ return *this;
+ }
+
+ operator VkExternalMemoryBufferCreateInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkExternalMemoryBufferCreateInfo *>( this );
+ }
+
+ operator VkExternalMemoryBufferCreateInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkExternalMemoryBufferCreateInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ExternalMemoryBufferCreateInfo const & ) const = default;
+#else
+ bool operator==( ExternalMemoryBufferCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( handleTypes == rhs.handleTypes );
+ }
+
+ bool operator!=( ExternalMemoryBufferCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eExternalMemoryBufferCreateInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlags handleTypes = {};
+ };
+ static_assert( sizeof( ExternalMemoryBufferCreateInfo ) == sizeof( VkExternalMemoryBufferCreateInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ExternalMemoryBufferCreateInfo>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eExternalMemoryBufferCreateInfo>
+ {
+ using Type = ExternalMemoryBufferCreateInfo;
+ };
+ using ExternalMemoryBufferCreateInfoKHR = ExternalMemoryBufferCreateInfo;
+
+ struct ExternalMemoryImageCreateInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eExternalMemoryImageCreateInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR ExternalMemoryImageCreateInfo(
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlags handleTypes_ = {} ) VULKAN_HPP_NOEXCEPT
+ : handleTypes( handleTypes_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ ExternalMemoryImageCreateInfo( ExternalMemoryImageCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ExternalMemoryImageCreateInfo( VkExternalMemoryImageCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ExternalMemoryImageCreateInfo( *reinterpret_cast<ExternalMemoryImageCreateInfo const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ExternalMemoryImageCreateInfo &
+ operator=( ExternalMemoryImageCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ExternalMemoryImageCreateInfo & operator=( VkExternalMemoryImageCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ExternalMemoryImageCreateInfo const *>( &rhs );
+ return *this;
+ }
+
+ ExternalMemoryImageCreateInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ ExternalMemoryImageCreateInfo &
+ setHandleTypes( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlags handleTypes_ ) VULKAN_HPP_NOEXCEPT
+ {
+ handleTypes = handleTypes_;
+ return *this;
+ }
+
+ operator VkExternalMemoryImageCreateInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkExternalMemoryImageCreateInfo *>( this );
+ }
+
+ operator VkExternalMemoryImageCreateInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkExternalMemoryImageCreateInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ExternalMemoryImageCreateInfo const & ) const = default;
+#else
+ bool operator==( ExternalMemoryImageCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( handleTypes == rhs.handleTypes );
+ }
+
+ bool operator!=( ExternalMemoryImageCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eExternalMemoryImageCreateInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlags handleTypes = {};
+ };
+ static_assert( sizeof( ExternalMemoryImageCreateInfo ) == sizeof( VkExternalMemoryImageCreateInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ExternalMemoryImageCreateInfo>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eExternalMemoryImageCreateInfo>
+ {
+ using Type = ExternalMemoryImageCreateInfo;
+ };
+ using ExternalMemoryImageCreateInfoKHR = ExternalMemoryImageCreateInfo;
+
+ struct ExternalMemoryImageCreateInfoNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eExternalMemoryImageCreateInfoNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR ExternalMemoryImageCreateInfoNV(
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV handleTypes_ = {} ) VULKAN_HPP_NOEXCEPT
+ : handleTypes( handleTypes_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ ExternalMemoryImageCreateInfoNV( ExternalMemoryImageCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ExternalMemoryImageCreateInfoNV( VkExternalMemoryImageCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ExternalMemoryImageCreateInfoNV( *reinterpret_cast<ExternalMemoryImageCreateInfoNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ExternalMemoryImageCreateInfoNV &
+ operator=( ExternalMemoryImageCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ExternalMemoryImageCreateInfoNV & operator=( VkExternalMemoryImageCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ExternalMemoryImageCreateInfoNV const *>( &rhs );
+ return *this;
+ }
+
+ ExternalMemoryImageCreateInfoNV & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ ExternalMemoryImageCreateInfoNV &
+ setHandleTypes( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV handleTypes_ ) VULKAN_HPP_NOEXCEPT
+ {
+ handleTypes = handleTypes_;
+ return *this;
+ }
+
+ operator VkExternalMemoryImageCreateInfoNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkExternalMemoryImageCreateInfoNV *>( this );
+ }
+
+ operator VkExternalMemoryImageCreateInfoNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkExternalMemoryImageCreateInfoNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ExternalMemoryImageCreateInfoNV const & ) const = default;
+#else
+ bool operator==( ExternalMemoryImageCreateInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( handleTypes == rhs.handleTypes );
+ }
+
+ bool operator!=( ExternalMemoryImageCreateInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eExternalMemoryImageCreateInfoNV;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV handleTypes = {};
+ };
+ static_assert( sizeof( ExternalMemoryImageCreateInfoNV ) == sizeof( VkExternalMemoryImageCreateInfoNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ExternalMemoryImageCreateInfoNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eExternalMemoryImageCreateInfoNV>
+ {
+ using Type = ExternalMemoryImageCreateInfoNV;
+ };
+
+ struct ExternalSemaphoreProperties
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eExternalSemaphoreProperties;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR ExternalSemaphoreProperties(
+ VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlags exportFromImportedHandleTypes_ = {},
+ VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlags compatibleHandleTypes_ = {},
+ VULKAN_HPP_NAMESPACE::ExternalSemaphoreFeatureFlags externalSemaphoreFeatures_ = {} ) VULKAN_HPP_NOEXCEPT
+ : exportFromImportedHandleTypes( exportFromImportedHandleTypes_ )
+ , compatibleHandleTypes( compatibleHandleTypes_ )
+ , externalSemaphoreFeatures( externalSemaphoreFeatures_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ ExternalSemaphoreProperties( ExternalSemaphoreProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ExternalSemaphoreProperties( VkExternalSemaphoreProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ExternalSemaphoreProperties( *reinterpret_cast<ExternalSemaphoreProperties const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ExternalSemaphoreProperties &
+ operator=( ExternalSemaphoreProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ExternalSemaphoreProperties & operator=( VkExternalSemaphoreProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ExternalSemaphoreProperties const *>( &rhs );
+ return *this;
+ }
+
+ operator VkExternalSemaphoreProperties const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkExternalSemaphoreProperties *>( this );
+ }
+
+ operator VkExternalSemaphoreProperties &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkExternalSemaphoreProperties *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ExternalSemaphoreProperties const & ) const = default;
+#else
+ bool operator==( ExternalSemaphoreProperties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( exportFromImportedHandleTypes == rhs.exportFromImportedHandleTypes ) &&
+ ( compatibleHandleTypes == rhs.compatibleHandleTypes ) &&
+ ( externalSemaphoreFeatures == rhs.externalSemaphoreFeatures );
+ }
+
+ bool operator!=( ExternalSemaphoreProperties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eExternalSemaphoreProperties;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlags exportFromImportedHandleTypes = {};
+ VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlags compatibleHandleTypes = {};
+ VULKAN_HPP_NAMESPACE::ExternalSemaphoreFeatureFlags externalSemaphoreFeatures = {};
+ };
+ static_assert( sizeof( ExternalSemaphoreProperties ) == sizeof( VkExternalSemaphoreProperties ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ExternalSemaphoreProperties>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eExternalSemaphoreProperties>
+ {
+ using Type = ExternalSemaphoreProperties;
+ };
+ using ExternalSemaphorePropertiesKHR = ExternalSemaphoreProperties;
+
+ struct FenceCreateInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eFenceCreateInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR FenceCreateInfo( VULKAN_HPP_NAMESPACE::FenceCreateFlags flags_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR FenceCreateInfo( FenceCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ FenceCreateInfo( VkFenceCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : FenceCreateInfo( *reinterpret_cast<FenceCreateInfo const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 FenceCreateInfo & operator=( FenceCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ FenceCreateInfo & operator=( VkFenceCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::FenceCreateInfo const *>( &rhs );
+ return *this;
+ }
+
+ FenceCreateInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ FenceCreateInfo & setFlags( VULKAN_HPP_NAMESPACE::FenceCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ operator VkFenceCreateInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkFenceCreateInfo *>( this );
+ }
+
+ operator VkFenceCreateInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkFenceCreateInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( FenceCreateInfo const & ) const = default;
+#else
+ bool operator==( FenceCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags );
+ }
+
+ bool operator!=( FenceCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eFenceCreateInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::FenceCreateFlags flags = {};
+ };
+ static_assert( sizeof( FenceCreateInfo ) == sizeof( VkFenceCreateInfo ), "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<FenceCreateInfo>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eFenceCreateInfo>
+ {
+ using Type = FenceCreateInfo;
+ };
+
+ struct FenceGetFdInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eFenceGetFdInfoKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ FenceGetFdInfoKHR( VULKAN_HPP_NAMESPACE::Fence fence_ = {},
+ VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits handleType_ =
+ VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits::eOpaqueFd ) VULKAN_HPP_NOEXCEPT
+ : fence( fence_ )
+ , handleType( handleType_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR FenceGetFdInfoKHR( FenceGetFdInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ FenceGetFdInfoKHR( VkFenceGetFdInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : FenceGetFdInfoKHR( *reinterpret_cast<FenceGetFdInfoKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 FenceGetFdInfoKHR &
+ operator=( FenceGetFdInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ FenceGetFdInfoKHR & operator=( VkFenceGetFdInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::FenceGetFdInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ FenceGetFdInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ FenceGetFdInfoKHR & setFence( VULKAN_HPP_NAMESPACE::Fence fence_ ) VULKAN_HPP_NOEXCEPT
+ {
+ fence = fence_;
+ return *this;
+ }
+
+ FenceGetFdInfoKHR &
+ setHandleType( VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits handleType_ ) VULKAN_HPP_NOEXCEPT
+ {
+ handleType = handleType_;
+ return *this;
+ }
+
+ operator VkFenceGetFdInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkFenceGetFdInfoKHR *>( this );
+ }
+
+ operator VkFenceGetFdInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkFenceGetFdInfoKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( FenceGetFdInfoKHR const & ) const = default;
+#else
+ bool operator==( FenceGetFdInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( fence == rhs.fence ) &&
+ ( handleType == rhs.handleType );
+ }
+
+ bool operator!=( FenceGetFdInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eFenceGetFdInfoKHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Fence fence = {};
+ VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits handleType =
+ VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits::eOpaqueFd;
+ };
+ static_assert( sizeof( FenceGetFdInfoKHR ) == sizeof( VkFenceGetFdInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<FenceGetFdInfoKHR>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eFenceGetFdInfoKHR>
+ {
+ using Type = FenceGetFdInfoKHR;
+ };
+
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ struct FenceGetWin32HandleInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eFenceGetWin32HandleInfoKHR;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR FenceGetWin32HandleInfoKHR(
+ VULKAN_HPP_NAMESPACE::Fence fence_ = {},
+ VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits handleType_ =
+ VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits::eOpaqueFd ) VULKAN_HPP_NOEXCEPT
+ : fence( fence_ )
+ , handleType( handleType_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ FenceGetWin32HandleInfoKHR( FenceGetWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ FenceGetWin32HandleInfoKHR( VkFenceGetWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : FenceGetWin32HandleInfoKHR( *reinterpret_cast<FenceGetWin32HandleInfoKHR const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 FenceGetWin32HandleInfoKHR &
+ operator=( FenceGetWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ FenceGetWin32HandleInfoKHR & operator=( VkFenceGetWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::FenceGetWin32HandleInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ FenceGetWin32HandleInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ FenceGetWin32HandleInfoKHR & setFence( VULKAN_HPP_NAMESPACE::Fence fence_ ) VULKAN_HPP_NOEXCEPT
+ {
+ fence = fence_;
+ return *this;
+ }
+
+ FenceGetWin32HandleInfoKHR &
+ setHandleType( VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits handleType_ ) VULKAN_HPP_NOEXCEPT
+ {
+ handleType = handleType_;
+ return *this;
+ }
+
+ operator VkFenceGetWin32HandleInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkFenceGetWin32HandleInfoKHR *>( this );
+ }
+
+ operator VkFenceGetWin32HandleInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkFenceGetWin32HandleInfoKHR *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( FenceGetWin32HandleInfoKHR const & ) const = default;
+# else
+ bool operator==( FenceGetWin32HandleInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( fence == rhs.fence ) &&
+ ( handleType == rhs.handleType );
+ }
+
+ bool operator!=( FenceGetWin32HandleInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eFenceGetWin32HandleInfoKHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Fence fence = {};
+ VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits handleType =
+ VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits::eOpaqueFd;
+ };
+ static_assert( sizeof( FenceGetWin32HandleInfoKHR ) == sizeof( VkFenceGetWin32HandleInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<FenceGetWin32HandleInfoKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eFenceGetWin32HandleInfoKHR>
+ {
+ using Type = FenceGetWin32HandleInfoKHR;
+ };
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+
+ struct FilterCubicImageViewImageFormatPropertiesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eFilterCubicImageViewImageFormatPropertiesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR FilterCubicImageViewImageFormatPropertiesEXT(
+ VULKAN_HPP_NAMESPACE::Bool32 filterCubic_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 filterCubicMinmax_ = {} ) VULKAN_HPP_NOEXCEPT
+ : filterCubic( filterCubic_ )
+ , filterCubicMinmax( filterCubicMinmax_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR FilterCubicImageViewImageFormatPropertiesEXT(
+ FilterCubicImageViewImageFormatPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ FilterCubicImageViewImageFormatPropertiesEXT( VkFilterCubicImageViewImageFormatPropertiesEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : FilterCubicImageViewImageFormatPropertiesEXT(
+ *reinterpret_cast<FilterCubicImageViewImageFormatPropertiesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 FilterCubicImageViewImageFormatPropertiesEXT &
+ operator=( FilterCubicImageViewImageFormatPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ FilterCubicImageViewImageFormatPropertiesEXT &
+ operator=( VkFilterCubicImageViewImageFormatPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::FilterCubicImageViewImageFormatPropertiesEXT const *>( &rhs );
+ return *this;
+ }
+
+ operator VkFilterCubicImageViewImageFormatPropertiesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkFilterCubicImageViewImageFormatPropertiesEXT *>( this );
+ }
+
+ operator VkFilterCubicImageViewImageFormatPropertiesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkFilterCubicImageViewImageFormatPropertiesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( FilterCubicImageViewImageFormatPropertiesEXT const & ) const = default;
+#else
+ bool operator==( FilterCubicImageViewImageFormatPropertiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( filterCubic == rhs.filterCubic ) &&
+ ( filterCubicMinmax == rhs.filterCubicMinmax );
+ }
+
+ bool operator!=( FilterCubicImageViewImageFormatPropertiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eFilterCubicImageViewImageFormatPropertiesEXT;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 filterCubic = {};
+ VULKAN_HPP_NAMESPACE::Bool32 filterCubicMinmax = {};
+ };
+ static_assert( sizeof( FilterCubicImageViewImageFormatPropertiesEXT ) ==
+ sizeof( VkFilterCubicImageViewImageFormatPropertiesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<FilterCubicImageViewImageFormatPropertiesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eFilterCubicImageViewImageFormatPropertiesEXT>
+ {
+ using Type = FilterCubicImageViewImageFormatPropertiesEXT;
+ };
+
+ struct FormatProperties
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ FormatProperties( VULKAN_HPP_NAMESPACE::FormatFeatureFlags linearTilingFeatures_ = {},
+ VULKAN_HPP_NAMESPACE::FormatFeatureFlags optimalTilingFeatures_ = {},
+ VULKAN_HPP_NAMESPACE::FormatFeatureFlags bufferFeatures_ = {} ) VULKAN_HPP_NOEXCEPT
+ : linearTilingFeatures( linearTilingFeatures_ )
+ , optimalTilingFeatures( optimalTilingFeatures_ )
+ , bufferFeatures( bufferFeatures_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR FormatProperties( FormatProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ FormatProperties( VkFormatProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ : FormatProperties( *reinterpret_cast<FormatProperties const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 FormatProperties & operator=( FormatProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ FormatProperties & operator=( VkFormatProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::FormatProperties const *>( &rhs );
+ return *this;
+ }
+
+ operator VkFormatProperties const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkFormatProperties *>( this );
+ }
+
+ operator VkFormatProperties &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkFormatProperties *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( FormatProperties const & ) const = default;
+#else
+ bool operator==( FormatProperties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( linearTilingFeatures == rhs.linearTilingFeatures ) &&
+ ( optimalTilingFeatures == rhs.optimalTilingFeatures ) && ( bufferFeatures == rhs.bufferFeatures );
+ }
+
+ bool operator!=( FormatProperties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::FormatFeatureFlags linearTilingFeatures = {};
+ VULKAN_HPP_NAMESPACE::FormatFeatureFlags optimalTilingFeatures = {};
+ VULKAN_HPP_NAMESPACE::FormatFeatureFlags bufferFeatures = {};
+ };
+ static_assert( sizeof( FormatProperties ) == sizeof( VkFormatProperties ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<FormatProperties>::value, "struct wrapper is not a standard layout!" );
+
+ struct FormatProperties2
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eFormatProperties2;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ FormatProperties2( VULKAN_HPP_NAMESPACE::FormatProperties formatProperties_ = {} ) VULKAN_HPP_NOEXCEPT
+ : formatProperties( formatProperties_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR FormatProperties2( FormatProperties2 const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ FormatProperties2( VkFormatProperties2 const & rhs ) VULKAN_HPP_NOEXCEPT
+ : FormatProperties2( *reinterpret_cast<FormatProperties2 const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 FormatProperties2 &
+ operator=( FormatProperties2 const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ FormatProperties2 & operator=( VkFormatProperties2 const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::FormatProperties2 const *>( &rhs );
+ return *this;
+ }
+
+ operator VkFormatProperties2 const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkFormatProperties2 *>( this );
+ }
+
+ operator VkFormatProperties2 &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkFormatProperties2 *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( FormatProperties2 const & ) const = default;
+#else
+ bool operator==( FormatProperties2 const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( formatProperties == rhs.formatProperties );
+ }
+
+ bool operator!=( FormatProperties2 const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eFormatProperties2;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::FormatProperties formatProperties = {};
+ };
+ static_assert( sizeof( FormatProperties2 ) == sizeof( VkFormatProperties2 ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<FormatProperties2>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eFormatProperties2>
+ {
+ using Type = FormatProperties2;
+ };
+ using FormatProperties2KHR = FormatProperties2;
+
+ struct FragmentShadingRateAttachmentInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eFragmentShadingRateAttachmentInfoKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR FragmentShadingRateAttachmentInfoKHR(
+ const VULKAN_HPP_NAMESPACE::AttachmentReference2 * pFragmentShadingRateAttachment_ = {},
+ VULKAN_HPP_NAMESPACE::Extent2D shadingRateAttachmentTexelSize_ = {} ) VULKAN_HPP_NOEXCEPT
+ : pFragmentShadingRateAttachment( pFragmentShadingRateAttachment_ )
+ , shadingRateAttachmentTexelSize( shadingRateAttachmentTexelSize_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR FragmentShadingRateAttachmentInfoKHR( FragmentShadingRateAttachmentInfoKHR const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ FragmentShadingRateAttachmentInfoKHR( VkFragmentShadingRateAttachmentInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : FragmentShadingRateAttachmentInfoKHR( *reinterpret_cast<FragmentShadingRateAttachmentInfoKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 FragmentShadingRateAttachmentInfoKHR &
+ operator=( FragmentShadingRateAttachmentInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ FragmentShadingRateAttachmentInfoKHR &
+ operator=( VkFragmentShadingRateAttachmentInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::FragmentShadingRateAttachmentInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ FragmentShadingRateAttachmentInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ FragmentShadingRateAttachmentInfoKHR & setPFragmentShadingRateAttachment(
+ const VULKAN_HPP_NAMESPACE::AttachmentReference2 * pFragmentShadingRateAttachment_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pFragmentShadingRateAttachment = pFragmentShadingRateAttachment_;
+ return *this;
+ }
+
+ FragmentShadingRateAttachmentInfoKHR & setShadingRateAttachmentTexelSize(
+ VULKAN_HPP_NAMESPACE::Extent2D const & shadingRateAttachmentTexelSize_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shadingRateAttachmentTexelSize = shadingRateAttachmentTexelSize_;
+ return *this;
+ }
+
+ operator VkFragmentShadingRateAttachmentInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkFragmentShadingRateAttachmentInfoKHR *>( this );
+ }
+
+ operator VkFragmentShadingRateAttachmentInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkFragmentShadingRateAttachmentInfoKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( FragmentShadingRateAttachmentInfoKHR const & ) const = default;
+#else
+ bool operator==( FragmentShadingRateAttachmentInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( pFragmentShadingRateAttachment == rhs.pFragmentShadingRateAttachment ) &&
+ ( shadingRateAttachmentTexelSize == rhs.shadingRateAttachmentTexelSize );
+ }
+
+ bool operator!=( FragmentShadingRateAttachmentInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eFragmentShadingRateAttachmentInfoKHR;
+ const void * pNext = {};
+ const VULKAN_HPP_NAMESPACE::AttachmentReference2 * pFragmentShadingRateAttachment = {};
+ VULKAN_HPP_NAMESPACE::Extent2D shadingRateAttachmentTexelSize = {};
+ };
+ static_assert( sizeof( FragmentShadingRateAttachmentInfoKHR ) == sizeof( VkFragmentShadingRateAttachmentInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<FragmentShadingRateAttachmentInfoKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eFragmentShadingRateAttachmentInfoKHR>
+ {
+ using Type = FragmentShadingRateAttachmentInfoKHR;
+ };
+
+ struct FramebufferAttachmentImageInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eFramebufferAttachmentImageInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ FramebufferAttachmentImageInfo( VULKAN_HPP_NAMESPACE::ImageCreateFlags flags_ = {},
+ VULKAN_HPP_NAMESPACE::ImageUsageFlags usage_ = {},
+ uint32_t width_ = {},
+ uint32_t height_ = {},
+ uint32_t layerCount_ = {},
+ uint32_t viewFormatCount_ = {},
+ const VULKAN_HPP_NAMESPACE::Format * pViewFormats_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , usage( usage_ )
+ , width( width_ )
+ , height( height_ )
+ , layerCount( layerCount_ )
+ , viewFormatCount( viewFormatCount_ )
+ , pViewFormats( pViewFormats_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ FramebufferAttachmentImageInfo( FramebufferAttachmentImageInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ FramebufferAttachmentImageInfo( VkFramebufferAttachmentImageInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : FramebufferAttachmentImageInfo( *reinterpret_cast<FramebufferAttachmentImageInfo const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ FramebufferAttachmentImageInfo(
+ VULKAN_HPP_NAMESPACE::ImageCreateFlags flags_,
+ VULKAN_HPP_NAMESPACE::ImageUsageFlags usage_,
+ uint32_t width_,
+ uint32_t height_,
+ uint32_t layerCount_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Format> const & viewFormats_ )
+ : flags( flags_ )
+ , usage( usage_ )
+ , width( width_ )
+ , height( height_ )
+ , layerCount( layerCount_ )
+ , viewFormatCount( static_cast<uint32_t>( viewFormats_.size() ) )
+ , pViewFormats( viewFormats_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 FramebufferAttachmentImageInfo &
+ operator=( FramebufferAttachmentImageInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ FramebufferAttachmentImageInfo & operator=( VkFramebufferAttachmentImageInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::FramebufferAttachmentImageInfo const *>( &rhs );
+ return *this;
+ }
+
+ FramebufferAttachmentImageInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ FramebufferAttachmentImageInfo & setFlags( VULKAN_HPP_NAMESPACE::ImageCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ FramebufferAttachmentImageInfo & setUsage( VULKAN_HPP_NAMESPACE::ImageUsageFlags usage_ ) VULKAN_HPP_NOEXCEPT
+ {
+ usage = usage_;
+ return *this;
+ }
+
+ FramebufferAttachmentImageInfo & setWidth( uint32_t width_ ) VULKAN_HPP_NOEXCEPT
+ {
+ width = width_;
+ return *this;
+ }
+
+ FramebufferAttachmentImageInfo & setHeight( uint32_t height_ ) VULKAN_HPP_NOEXCEPT
+ {
+ height = height_;
+ return *this;
+ }
+
+ FramebufferAttachmentImageInfo & setLayerCount( uint32_t layerCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ layerCount = layerCount_;
+ return *this;
+ }
+
+ FramebufferAttachmentImageInfo & setViewFormatCount( uint32_t viewFormatCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ viewFormatCount = viewFormatCount_;
+ return *this;
+ }
+
+ FramebufferAttachmentImageInfo &
+ setPViewFormats( const VULKAN_HPP_NAMESPACE::Format * pViewFormats_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pViewFormats = pViewFormats_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ FramebufferAttachmentImageInfo & setViewFormats(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Format> const & viewFormats_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ viewFormatCount = static_cast<uint32_t>( viewFormats_.size() );
+ pViewFormats = viewFormats_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkFramebufferAttachmentImageInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkFramebufferAttachmentImageInfo *>( this );
+ }
+
+ operator VkFramebufferAttachmentImageInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkFramebufferAttachmentImageInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( FramebufferAttachmentImageInfo const & ) const = default;
+#else
+ bool operator==( FramebufferAttachmentImageInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) && ( usage == rhs.usage ) &&
+ ( width == rhs.width ) && ( height == rhs.height ) && ( layerCount == rhs.layerCount ) &&
+ ( viewFormatCount == rhs.viewFormatCount ) && ( pViewFormats == rhs.pViewFormats );
+ }
+
+ bool operator!=( FramebufferAttachmentImageInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eFramebufferAttachmentImageInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ImageCreateFlags flags = {};
+ VULKAN_HPP_NAMESPACE::ImageUsageFlags usage = {};
+ uint32_t width = {};
+ uint32_t height = {};
+ uint32_t layerCount = {};
+ uint32_t viewFormatCount = {};
+ const VULKAN_HPP_NAMESPACE::Format * pViewFormats = {};
+ };
+ static_assert( sizeof( FramebufferAttachmentImageInfo ) == sizeof( VkFramebufferAttachmentImageInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<FramebufferAttachmentImageInfo>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eFramebufferAttachmentImageInfo>
+ {
+ using Type = FramebufferAttachmentImageInfo;
+ };
+ using FramebufferAttachmentImageInfoKHR = FramebufferAttachmentImageInfo;
+
+ struct FramebufferAttachmentsCreateInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eFramebufferAttachmentsCreateInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR FramebufferAttachmentsCreateInfo(
+ uint32_t attachmentImageInfoCount_ = {},
+ const VULKAN_HPP_NAMESPACE::FramebufferAttachmentImageInfo * pAttachmentImageInfos_ = {} ) VULKAN_HPP_NOEXCEPT
+ : attachmentImageInfoCount( attachmentImageInfoCount_ )
+ , pAttachmentImageInfos( pAttachmentImageInfos_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ FramebufferAttachmentsCreateInfo( FramebufferAttachmentsCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ FramebufferAttachmentsCreateInfo( VkFramebufferAttachmentsCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : FramebufferAttachmentsCreateInfo( *reinterpret_cast<FramebufferAttachmentsCreateInfo const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ FramebufferAttachmentsCreateInfo(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::FramebufferAttachmentImageInfo> const &
+ attachmentImageInfos_ )
+ : attachmentImageInfoCount( static_cast<uint32_t>( attachmentImageInfos_.size() ) )
+ , pAttachmentImageInfos( attachmentImageInfos_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 FramebufferAttachmentsCreateInfo &
+ operator=( FramebufferAttachmentsCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ FramebufferAttachmentsCreateInfo & operator=( VkFramebufferAttachmentsCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::FramebufferAttachmentsCreateInfo const *>( &rhs );
+ return *this;
+ }
+
+ FramebufferAttachmentsCreateInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ FramebufferAttachmentsCreateInfo &
+ setAttachmentImageInfoCount( uint32_t attachmentImageInfoCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ attachmentImageInfoCount = attachmentImageInfoCount_;
+ return *this;
+ }
+
+ FramebufferAttachmentsCreateInfo & setPAttachmentImageInfos(
+ const VULKAN_HPP_NAMESPACE::FramebufferAttachmentImageInfo * pAttachmentImageInfos_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pAttachmentImageInfos = pAttachmentImageInfos_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ FramebufferAttachmentsCreateInfo & setAttachmentImageInfos(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::FramebufferAttachmentImageInfo> const &
+ attachmentImageInfos_ ) VULKAN_HPP_NOEXCEPT
+ {
+ attachmentImageInfoCount = static_cast<uint32_t>( attachmentImageInfos_.size() );
+ pAttachmentImageInfos = attachmentImageInfos_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkFramebufferAttachmentsCreateInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkFramebufferAttachmentsCreateInfo *>( this );
+ }
+
+ operator VkFramebufferAttachmentsCreateInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkFramebufferAttachmentsCreateInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( FramebufferAttachmentsCreateInfo const & ) const = default;
+#else
+ bool operator==( FramebufferAttachmentsCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( attachmentImageInfoCount == rhs.attachmentImageInfoCount ) &&
+ ( pAttachmentImageInfos == rhs.pAttachmentImageInfos );
+ }
+
+ bool operator!=( FramebufferAttachmentsCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eFramebufferAttachmentsCreateInfo;
+ const void * pNext = {};
+ uint32_t attachmentImageInfoCount = {};
+ const VULKAN_HPP_NAMESPACE::FramebufferAttachmentImageInfo * pAttachmentImageInfos = {};
+ };
+ static_assert( sizeof( FramebufferAttachmentsCreateInfo ) == sizeof( VkFramebufferAttachmentsCreateInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<FramebufferAttachmentsCreateInfo>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eFramebufferAttachmentsCreateInfo>
+ {
+ using Type = FramebufferAttachmentsCreateInfo;
+ };
+ using FramebufferAttachmentsCreateInfoKHR = FramebufferAttachmentsCreateInfo;
+
+ struct FramebufferCreateInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eFramebufferCreateInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR FramebufferCreateInfo( VULKAN_HPP_NAMESPACE::FramebufferCreateFlags flags_ = {},
+ VULKAN_HPP_NAMESPACE::RenderPass renderPass_ = {},
+ uint32_t attachmentCount_ = {},
+ const VULKAN_HPP_NAMESPACE::ImageView * pAttachments_ = {},
+ uint32_t width_ = {},
+ uint32_t height_ = {},
+ uint32_t layers_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , renderPass( renderPass_ )
+ , attachmentCount( attachmentCount_ )
+ , pAttachments( pAttachments_ )
+ , width( width_ )
+ , height( height_ )
+ , layers( layers_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR FramebufferCreateInfo( FramebufferCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ FramebufferCreateInfo( VkFramebufferCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : FramebufferCreateInfo( *reinterpret_cast<FramebufferCreateInfo const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ FramebufferCreateInfo(
+ VULKAN_HPP_NAMESPACE::FramebufferCreateFlags flags_,
+ VULKAN_HPP_NAMESPACE::RenderPass renderPass_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ImageView> const & attachments_,
+ uint32_t width_ = {},
+ uint32_t height_ = {},
+ uint32_t layers_ = {} )
+ : flags( flags_ )
+ , renderPass( renderPass_ )
+ , attachmentCount( static_cast<uint32_t>( attachments_.size() ) )
+ , pAttachments( attachments_.data() )
+ , width( width_ )
+ , height( height_ )
+ , layers( layers_ )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 FramebufferCreateInfo &
+ operator=( FramebufferCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ FramebufferCreateInfo & operator=( VkFramebufferCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::FramebufferCreateInfo const *>( &rhs );
+ return *this;
+ }
+
+ FramebufferCreateInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ FramebufferCreateInfo & setFlags( VULKAN_HPP_NAMESPACE::FramebufferCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ FramebufferCreateInfo & setRenderPass( VULKAN_HPP_NAMESPACE::RenderPass renderPass_ ) VULKAN_HPP_NOEXCEPT
+ {
+ renderPass = renderPass_;
+ return *this;
+ }
+
+ FramebufferCreateInfo & setAttachmentCount( uint32_t attachmentCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ attachmentCount = attachmentCount_;
+ return *this;
+ }
+
+ FramebufferCreateInfo & setPAttachments( const VULKAN_HPP_NAMESPACE::ImageView * pAttachments_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pAttachments = pAttachments_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ FramebufferCreateInfo & setAttachments(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ImageView> const & attachments_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ attachmentCount = static_cast<uint32_t>( attachments_.size() );
+ pAttachments = attachments_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ FramebufferCreateInfo & setWidth( uint32_t width_ ) VULKAN_HPP_NOEXCEPT
+ {
+ width = width_;
+ return *this;
+ }
+
+ FramebufferCreateInfo & setHeight( uint32_t height_ ) VULKAN_HPP_NOEXCEPT
+ {
+ height = height_;
+ return *this;
+ }
+
+ FramebufferCreateInfo & setLayers( uint32_t layers_ ) VULKAN_HPP_NOEXCEPT
+ {
+ layers = layers_;
+ return *this;
+ }
+
+ operator VkFramebufferCreateInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkFramebufferCreateInfo *>( this );
+ }
+
+ operator VkFramebufferCreateInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkFramebufferCreateInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( FramebufferCreateInfo const & ) const = default;
+#else
+ bool operator==( FramebufferCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( renderPass == rhs.renderPass ) && ( attachmentCount == rhs.attachmentCount ) &&
+ ( pAttachments == rhs.pAttachments ) && ( width == rhs.width ) && ( height == rhs.height ) &&
+ ( layers == rhs.layers );
+ }
+
+ bool operator!=( FramebufferCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eFramebufferCreateInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::FramebufferCreateFlags flags = {};
+ VULKAN_HPP_NAMESPACE::RenderPass renderPass = {};
+ uint32_t attachmentCount = {};
+ const VULKAN_HPP_NAMESPACE::ImageView * pAttachments = {};
+ uint32_t width = {};
+ uint32_t height = {};
+ uint32_t layers = {};
+ };
+ static_assert( sizeof( FramebufferCreateInfo ) == sizeof( VkFramebufferCreateInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<FramebufferCreateInfo>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eFramebufferCreateInfo>
+ {
+ using Type = FramebufferCreateInfo;
+ };
+
+ struct FramebufferMixedSamplesCombinationNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eFramebufferMixedSamplesCombinationNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR FramebufferMixedSamplesCombinationNV(
+ VULKAN_HPP_NAMESPACE::CoverageReductionModeNV coverageReductionMode_ =
+ VULKAN_HPP_NAMESPACE::CoverageReductionModeNV::eMerge,
+ VULKAN_HPP_NAMESPACE::SampleCountFlagBits rasterizationSamples_ = VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1,
+ VULKAN_HPP_NAMESPACE::SampleCountFlags depthStencilSamples_ = {},
+ VULKAN_HPP_NAMESPACE::SampleCountFlags colorSamples_ = {} ) VULKAN_HPP_NOEXCEPT
+ : coverageReductionMode( coverageReductionMode_ )
+ , rasterizationSamples( rasterizationSamples_ )
+ , depthStencilSamples( depthStencilSamples_ )
+ , colorSamples( colorSamples_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR FramebufferMixedSamplesCombinationNV( FramebufferMixedSamplesCombinationNV const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ FramebufferMixedSamplesCombinationNV( VkFramebufferMixedSamplesCombinationNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ : FramebufferMixedSamplesCombinationNV( *reinterpret_cast<FramebufferMixedSamplesCombinationNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 FramebufferMixedSamplesCombinationNV &
+ operator=( FramebufferMixedSamplesCombinationNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ FramebufferMixedSamplesCombinationNV &
+ operator=( VkFramebufferMixedSamplesCombinationNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::FramebufferMixedSamplesCombinationNV const *>( &rhs );
+ return *this;
+ }
+
+ operator VkFramebufferMixedSamplesCombinationNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkFramebufferMixedSamplesCombinationNV *>( this );
+ }
+
+ operator VkFramebufferMixedSamplesCombinationNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkFramebufferMixedSamplesCombinationNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( FramebufferMixedSamplesCombinationNV const & ) const = default;
+#else
+ bool operator==( FramebufferMixedSamplesCombinationNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( coverageReductionMode == rhs.coverageReductionMode ) &&
+ ( rasterizationSamples == rhs.rasterizationSamples ) &&
+ ( depthStencilSamples == rhs.depthStencilSamples ) && ( colorSamples == rhs.colorSamples );
+ }
+
+ bool operator!=( FramebufferMixedSamplesCombinationNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eFramebufferMixedSamplesCombinationNV;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::CoverageReductionModeNV coverageReductionMode =
+ VULKAN_HPP_NAMESPACE::CoverageReductionModeNV::eMerge;
+ VULKAN_HPP_NAMESPACE::SampleCountFlagBits rasterizationSamples = VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1;
+ VULKAN_HPP_NAMESPACE::SampleCountFlags depthStencilSamples = {};
+ VULKAN_HPP_NAMESPACE::SampleCountFlags colorSamples = {};
+ };
+ static_assert( sizeof( FramebufferMixedSamplesCombinationNV ) == sizeof( VkFramebufferMixedSamplesCombinationNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<FramebufferMixedSamplesCombinationNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eFramebufferMixedSamplesCombinationNV>
+ {
+ using Type = FramebufferMixedSamplesCombinationNV;
+ };
+
+ struct IndirectCommandsStreamNV
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR IndirectCommandsStreamNV( VULKAN_HPP_NAMESPACE::Buffer buffer_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize offset_ = {} ) VULKAN_HPP_NOEXCEPT
+ : buffer( buffer_ )
+ , offset( offset_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR IndirectCommandsStreamNV( IndirectCommandsStreamNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ IndirectCommandsStreamNV( VkIndirectCommandsStreamNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ : IndirectCommandsStreamNV( *reinterpret_cast<IndirectCommandsStreamNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 IndirectCommandsStreamNV &
+ operator=( IndirectCommandsStreamNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ IndirectCommandsStreamNV & operator=( VkIndirectCommandsStreamNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::IndirectCommandsStreamNV const *>( &rhs );
+ return *this;
+ }
+
+ IndirectCommandsStreamNV & setBuffer( VULKAN_HPP_NAMESPACE::Buffer buffer_ ) VULKAN_HPP_NOEXCEPT
+ {
+ buffer = buffer_;
+ return *this;
+ }
+
+ IndirectCommandsStreamNV & setOffset( VULKAN_HPP_NAMESPACE::DeviceSize offset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ offset = offset_;
+ return *this;
+ }
+
+ operator VkIndirectCommandsStreamNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkIndirectCommandsStreamNV *>( this );
+ }
+
+ operator VkIndirectCommandsStreamNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkIndirectCommandsStreamNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( IndirectCommandsStreamNV const & ) const = default;
+#else
+ bool operator==( IndirectCommandsStreamNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( buffer == rhs.buffer ) && ( offset == rhs.offset );
+ }
+
+ bool operator!=( IndirectCommandsStreamNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::Buffer buffer = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize offset = {};
+ };
+ static_assert( sizeof( IndirectCommandsStreamNV ) == sizeof( VkIndirectCommandsStreamNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<IndirectCommandsStreamNV>::value, "struct wrapper is not a standard layout!" );
+
+ struct GeneratedCommandsInfoNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eGeneratedCommandsInfoNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR GeneratedCommandsInfoNV(
+ VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint_ = VULKAN_HPP_NAMESPACE::PipelineBindPoint::eGraphics,
+ VULKAN_HPP_NAMESPACE::Pipeline pipeline_ = {},
+ VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV indirectCommandsLayout_ = {},
+ uint32_t streamCount_ = {},
+ const VULKAN_HPP_NAMESPACE::IndirectCommandsStreamNV * pStreams_ = {},
+ uint32_t sequencesCount_ = {},
+ VULKAN_HPP_NAMESPACE::Buffer preprocessBuffer_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize preprocessOffset_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize preprocessSize_ = {},
+ VULKAN_HPP_NAMESPACE::Buffer sequencesCountBuffer_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize sequencesCountOffset_ = {},
+ VULKAN_HPP_NAMESPACE::Buffer sequencesIndexBuffer_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize sequencesIndexOffset_ = {} ) VULKAN_HPP_NOEXCEPT
+ : pipelineBindPoint( pipelineBindPoint_ )
+ , pipeline( pipeline_ )
+ , indirectCommandsLayout( indirectCommandsLayout_ )
+ , streamCount( streamCount_ )
+ , pStreams( pStreams_ )
+ , sequencesCount( sequencesCount_ )
+ , preprocessBuffer( preprocessBuffer_ )
+ , preprocessOffset( preprocessOffset_ )
+ , preprocessSize( preprocessSize_ )
+ , sequencesCountBuffer( sequencesCountBuffer_ )
+ , sequencesCountOffset( sequencesCountOffset_ )
+ , sequencesIndexBuffer( sequencesIndexBuffer_ )
+ , sequencesIndexOffset( sequencesIndexOffset_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR GeneratedCommandsInfoNV( GeneratedCommandsInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ GeneratedCommandsInfoNV( VkGeneratedCommandsInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ : GeneratedCommandsInfoNV( *reinterpret_cast<GeneratedCommandsInfoNV const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ GeneratedCommandsInfoNV(
+ VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint_,
+ VULKAN_HPP_NAMESPACE::Pipeline pipeline_,
+ VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV indirectCommandsLayout_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::IndirectCommandsStreamNV> const &
+ streams_,
+ uint32_t sequencesCount_ = {},
+ VULKAN_HPP_NAMESPACE::Buffer preprocessBuffer_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize preprocessOffset_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize preprocessSize_ = {},
+ VULKAN_HPP_NAMESPACE::Buffer sequencesCountBuffer_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize sequencesCountOffset_ = {},
+ VULKAN_HPP_NAMESPACE::Buffer sequencesIndexBuffer_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize sequencesIndexOffset_ = {} )
+ : pipelineBindPoint( pipelineBindPoint_ )
+ , pipeline( pipeline_ )
+ , indirectCommandsLayout( indirectCommandsLayout_ )
+ , streamCount( static_cast<uint32_t>( streams_.size() ) )
+ , pStreams( streams_.data() )
+ , sequencesCount( sequencesCount_ )
+ , preprocessBuffer( preprocessBuffer_ )
+ , preprocessOffset( preprocessOffset_ )
+ , preprocessSize( preprocessSize_ )
+ , sequencesCountBuffer( sequencesCountBuffer_ )
+ , sequencesCountOffset( sequencesCountOffset_ )
+ , sequencesIndexBuffer( sequencesIndexBuffer_ )
+ , sequencesIndexOffset( sequencesIndexOffset_ )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 GeneratedCommandsInfoNV &
+ operator=( GeneratedCommandsInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ GeneratedCommandsInfoNV & operator=( VkGeneratedCommandsInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::GeneratedCommandsInfoNV const *>( &rhs );
+ return *this;
+ }
+
+ GeneratedCommandsInfoNV & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ GeneratedCommandsInfoNV &
+ setPipelineBindPoint( VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pipelineBindPoint = pipelineBindPoint_;
+ return *this;
+ }
+
+ GeneratedCommandsInfoNV & setPipeline( VULKAN_HPP_NAMESPACE::Pipeline pipeline_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pipeline = pipeline_;
+ return *this;
+ }
+
+ GeneratedCommandsInfoNV & setIndirectCommandsLayout(
+ VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV indirectCommandsLayout_ ) VULKAN_HPP_NOEXCEPT
+ {
+ indirectCommandsLayout = indirectCommandsLayout_;
+ return *this;
+ }
+
+ GeneratedCommandsInfoNV & setStreamCount( uint32_t streamCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ streamCount = streamCount_;
+ return *this;
+ }
+
+ GeneratedCommandsInfoNV &
+ setPStreams( const VULKAN_HPP_NAMESPACE::IndirectCommandsStreamNV * pStreams_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pStreams = pStreams_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ GeneratedCommandsInfoNV & setStreams(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::IndirectCommandsStreamNV> const &
+ streams_ ) VULKAN_HPP_NOEXCEPT
+ {
+ streamCount = static_cast<uint32_t>( streams_.size() );
+ pStreams = streams_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ GeneratedCommandsInfoNV & setSequencesCount( uint32_t sequencesCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ sequencesCount = sequencesCount_;
+ return *this;
+ }
+
+ GeneratedCommandsInfoNV & setPreprocessBuffer( VULKAN_HPP_NAMESPACE::Buffer preprocessBuffer_ ) VULKAN_HPP_NOEXCEPT
+ {
+ preprocessBuffer = preprocessBuffer_;
+ return *this;
+ }
+
+ GeneratedCommandsInfoNV &
+ setPreprocessOffset( VULKAN_HPP_NAMESPACE::DeviceSize preprocessOffset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ preprocessOffset = preprocessOffset_;
+ return *this;
+ }
+
+ GeneratedCommandsInfoNV & setPreprocessSize( VULKAN_HPP_NAMESPACE::DeviceSize preprocessSize_ ) VULKAN_HPP_NOEXCEPT
+ {
+ preprocessSize = preprocessSize_;
+ return *this;
+ }
+
+ GeneratedCommandsInfoNV &
+ setSequencesCountBuffer( VULKAN_HPP_NAMESPACE::Buffer sequencesCountBuffer_ ) VULKAN_HPP_NOEXCEPT
+ {
+ sequencesCountBuffer = sequencesCountBuffer_;
+ return *this;
+ }
+
+ GeneratedCommandsInfoNV &
+ setSequencesCountOffset( VULKAN_HPP_NAMESPACE::DeviceSize sequencesCountOffset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ sequencesCountOffset = sequencesCountOffset_;
+ return *this;
+ }
+
+ GeneratedCommandsInfoNV &
+ setSequencesIndexBuffer( VULKAN_HPP_NAMESPACE::Buffer sequencesIndexBuffer_ ) VULKAN_HPP_NOEXCEPT
+ {
+ sequencesIndexBuffer = sequencesIndexBuffer_;
+ return *this;
+ }
+
+ GeneratedCommandsInfoNV &
+ setSequencesIndexOffset( VULKAN_HPP_NAMESPACE::DeviceSize sequencesIndexOffset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ sequencesIndexOffset = sequencesIndexOffset_;
+ return *this;
+ }
+
+ operator VkGeneratedCommandsInfoNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkGeneratedCommandsInfoNV *>( this );
+ }
+
+ operator VkGeneratedCommandsInfoNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkGeneratedCommandsInfoNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( GeneratedCommandsInfoNV const & ) const = default;
+#else
+ bool operator==( GeneratedCommandsInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( pipelineBindPoint == rhs.pipelineBindPoint ) &&
+ ( pipeline == rhs.pipeline ) && ( indirectCommandsLayout == rhs.indirectCommandsLayout ) &&
+ ( streamCount == rhs.streamCount ) && ( pStreams == rhs.pStreams ) &&
+ ( sequencesCount == rhs.sequencesCount ) && ( preprocessBuffer == rhs.preprocessBuffer ) &&
+ ( preprocessOffset == rhs.preprocessOffset ) && ( preprocessSize == rhs.preprocessSize ) &&
+ ( sequencesCountBuffer == rhs.sequencesCountBuffer ) &&
+ ( sequencesCountOffset == rhs.sequencesCountOffset ) &&
+ ( sequencesIndexBuffer == rhs.sequencesIndexBuffer ) &&
+ ( sequencesIndexOffset == rhs.sequencesIndexOffset );
+ }
+
+ bool operator!=( GeneratedCommandsInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eGeneratedCommandsInfoNV;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint = VULKAN_HPP_NAMESPACE::PipelineBindPoint::eGraphics;
+ VULKAN_HPP_NAMESPACE::Pipeline pipeline = {};
+ VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV indirectCommandsLayout = {};
+ uint32_t streamCount = {};
+ const VULKAN_HPP_NAMESPACE::IndirectCommandsStreamNV * pStreams = {};
+ uint32_t sequencesCount = {};
+ VULKAN_HPP_NAMESPACE::Buffer preprocessBuffer = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize preprocessOffset = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize preprocessSize = {};
+ VULKAN_HPP_NAMESPACE::Buffer sequencesCountBuffer = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize sequencesCountOffset = {};
+ VULKAN_HPP_NAMESPACE::Buffer sequencesIndexBuffer = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize sequencesIndexOffset = {};
+ };
+ static_assert( sizeof( GeneratedCommandsInfoNV ) == sizeof( VkGeneratedCommandsInfoNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<GeneratedCommandsInfoNV>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eGeneratedCommandsInfoNV>
+ {
+ using Type = GeneratedCommandsInfoNV;
+ };
+
+ struct GeneratedCommandsMemoryRequirementsInfoNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eGeneratedCommandsMemoryRequirementsInfoNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR GeneratedCommandsMemoryRequirementsInfoNV(
+ VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint_ = VULKAN_HPP_NAMESPACE::PipelineBindPoint::eGraphics,
+ VULKAN_HPP_NAMESPACE::Pipeline pipeline_ = {},
+ VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV indirectCommandsLayout_ = {},
+ uint32_t maxSequencesCount_ = {} ) VULKAN_HPP_NOEXCEPT
+ : pipelineBindPoint( pipelineBindPoint_ )
+ , pipeline( pipeline_ )
+ , indirectCommandsLayout( indirectCommandsLayout_ )
+ , maxSequencesCount( maxSequencesCount_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR GeneratedCommandsMemoryRequirementsInfoNV(
+ GeneratedCommandsMemoryRequirementsInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ GeneratedCommandsMemoryRequirementsInfoNV( VkGeneratedCommandsMemoryRequirementsInfoNV const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : GeneratedCommandsMemoryRequirementsInfoNV(
+ *reinterpret_cast<GeneratedCommandsMemoryRequirementsInfoNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 GeneratedCommandsMemoryRequirementsInfoNV &
+ operator=( GeneratedCommandsMemoryRequirementsInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ GeneratedCommandsMemoryRequirementsInfoNV &
+ operator=( VkGeneratedCommandsMemoryRequirementsInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::GeneratedCommandsMemoryRequirementsInfoNV const *>( &rhs );
+ return *this;
+ }
+
+ GeneratedCommandsMemoryRequirementsInfoNV & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ GeneratedCommandsMemoryRequirementsInfoNV &
+ setPipelineBindPoint( VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pipelineBindPoint = pipelineBindPoint_;
+ return *this;
+ }
+
+ GeneratedCommandsMemoryRequirementsInfoNV &
+ setPipeline( VULKAN_HPP_NAMESPACE::Pipeline pipeline_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pipeline = pipeline_;
+ return *this;
+ }
+
+ GeneratedCommandsMemoryRequirementsInfoNV & setIndirectCommandsLayout(
+ VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV indirectCommandsLayout_ ) VULKAN_HPP_NOEXCEPT
+ {
+ indirectCommandsLayout = indirectCommandsLayout_;
+ return *this;
+ }
+
+ GeneratedCommandsMemoryRequirementsInfoNV & setMaxSequencesCount( uint32_t maxSequencesCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ maxSequencesCount = maxSequencesCount_;
+ return *this;
+ }
+
+ operator VkGeneratedCommandsMemoryRequirementsInfoNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkGeneratedCommandsMemoryRequirementsInfoNV *>( this );
+ }
+
+ operator VkGeneratedCommandsMemoryRequirementsInfoNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkGeneratedCommandsMemoryRequirementsInfoNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( GeneratedCommandsMemoryRequirementsInfoNV const & ) const = default;
+#else
+ bool operator==( GeneratedCommandsMemoryRequirementsInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( pipelineBindPoint == rhs.pipelineBindPoint ) &&
+ ( pipeline == rhs.pipeline ) && ( indirectCommandsLayout == rhs.indirectCommandsLayout ) &&
+ ( maxSequencesCount == rhs.maxSequencesCount );
+ }
+
+ bool operator!=( GeneratedCommandsMemoryRequirementsInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eGeneratedCommandsMemoryRequirementsInfoNV;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint = VULKAN_HPP_NAMESPACE::PipelineBindPoint::eGraphics;
+ VULKAN_HPP_NAMESPACE::Pipeline pipeline = {};
+ VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV indirectCommandsLayout = {};
+ uint32_t maxSequencesCount = {};
+ };
+ static_assert( sizeof( GeneratedCommandsMemoryRequirementsInfoNV ) ==
+ sizeof( VkGeneratedCommandsMemoryRequirementsInfoNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<GeneratedCommandsMemoryRequirementsInfoNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eGeneratedCommandsMemoryRequirementsInfoNV>
+ {
+ using Type = GeneratedCommandsMemoryRequirementsInfoNV;
+ };
+
+ struct VertexInputBindingDescription
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ VertexInputBindingDescription( uint32_t binding_ = {},
+ uint32_t stride_ = {},
+ VULKAN_HPP_NAMESPACE::VertexInputRate inputRate_ =
+ VULKAN_HPP_NAMESPACE::VertexInputRate::eVertex ) VULKAN_HPP_NOEXCEPT
+ : binding( binding_ )
+ , stride( stride_ )
+ , inputRate( inputRate_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ VertexInputBindingDescription( VertexInputBindingDescription const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VertexInputBindingDescription( VkVertexInputBindingDescription const & rhs ) VULKAN_HPP_NOEXCEPT
+ : VertexInputBindingDescription( *reinterpret_cast<VertexInputBindingDescription const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 VertexInputBindingDescription &
+ operator=( VertexInputBindingDescription const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VertexInputBindingDescription & operator=( VkVertexInputBindingDescription const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VertexInputBindingDescription const *>( &rhs );
+ return *this;
+ }
+
+ VertexInputBindingDescription & setBinding( uint32_t binding_ ) VULKAN_HPP_NOEXCEPT
+ {
+ binding = binding_;
+ return *this;
+ }
+
+ VertexInputBindingDescription & setStride( uint32_t stride_ ) VULKAN_HPP_NOEXCEPT
+ {
+ stride = stride_;
+ return *this;
+ }
+
+ VertexInputBindingDescription & setInputRate( VULKAN_HPP_NAMESPACE::VertexInputRate inputRate_ ) VULKAN_HPP_NOEXCEPT
+ {
+ inputRate = inputRate_;
+ return *this;
+ }
+
+ operator VkVertexInputBindingDescription const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkVertexInputBindingDescription *>( this );
+ }
+
+ operator VkVertexInputBindingDescription &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkVertexInputBindingDescription *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( VertexInputBindingDescription const & ) const = default;
+#else
+ bool operator==( VertexInputBindingDescription const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( binding == rhs.binding ) && ( stride == rhs.stride ) && ( inputRate == rhs.inputRate );
+ }
+
+ bool operator!=( VertexInputBindingDescription const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ uint32_t binding = {};
+ uint32_t stride = {};
+ VULKAN_HPP_NAMESPACE::VertexInputRate inputRate = VULKAN_HPP_NAMESPACE::VertexInputRate::eVertex;
+ };
+ static_assert( sizeof( VertexInputBindingDescription ) == sizeof( VkVertexInputBindingDescription ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<VertexInputBindingDescription>::value,
+ "struct wrapper is not a standard layout!" );
+
+ struct VertexInputAttributeDescription
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ VertexInputAttributeDescription( uint32_t location_ = {},
+ uint32_t binding_ = {},
+ VULKAN_HPP_NAMESPACE::Format format_ = VULKAN_HPP_NAMESPACE::Format::eUndefined,
+ uint32_t offset_ = {} ) VULKAN_HPP_NOEXCEPT
+ : location( location_ )
+ , binding( binding_ )
+ , format( format_ )
+ , offset( offset_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ VertexInputAttributeDescription( VertexInputAttributeDescription const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VertexInputAttributeDescription( VkVertexInputAttributeDescription const & rhs ) VULKAN_HPP_NOEXCEPT
+ : VertexInputAttributeDescription( *reinterpret_cast<VertexInputAttributeDescription const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 VertexInputAttributeDescription &
+ operator=( VertexInputAttributeDescription const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VertexInputAttributeDescription & operator=( VkVertexInputAttributeDescription const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VertexInputAttributeDescription const *>( &rhs );
+ return *this;
+ }
+
+ VertexInputAttributeDescription & setLocation( uint32_t location_ ) VULKAN_HPP_NOEXCEPT
+ {
+ location = location_;
+ return *this;
+ }
+
+ VertexInputAttributeDescription & setBinding( uint32_t binding_ ) VULKAN_HPP_NOEXCEPT
+ {
+ binding = binding_;
+ return *this;
+ }
+
+ VertexInputAttributeDescription & setFormat( VULKAN_HPP_NAMESPACE::Format format_ ) VULKAN_HPP_NOEXCEPT
+ {
+ format = format_;
+ return *this;
+ }
+
+ VertexInputAttributeDescription & setOffset( uint32_t offset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ offset = offset_;
+ return *this;
+ }
+
+ operator VkVertexInputAttributeDescription const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkVertexInputAttributeDescription *>( this );
+ }
+
+ operator VkVertexInputAttributeDescription &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkVertexInputAttributeDescription *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( VertexInputAttributeDescription const & ) const = default;
+#else
+ bool operator==( VertexInputAttributeDescription const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( location == rhs.location ) && ( binding == rhs.binding ) && ( format == rhs.format ) &&
+ ( offset == rhs.offset );
+ }
+
+ bool operator!=( VertexInputAttributeDescription const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ uint32_t location = {};
+ uint32_t binding = {};
+ VULKAN_HPP_NAMESPACE::Format format = VULKAN_HPP_NAMESPACE::Format::eUndefined;
+ uint32_t offset = {};
+ };
+ static_assert( sizeof( VertexInputAttributeDescription ) == sizeof( VkVertexInputAttributeDescription ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<VertexInputAttributeDescription>::value,
+ "struct wrapper is not a standard layout!" );
+
+ struct PipelineVertexInputStateCreateInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePipelineVertexInputStateCreateInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PipelineVertexInputStateCreateInfo(
+ VULKAN_HPP_NAMESPACE::PipelineVertexInputStateCreateFlags flags_ = {},
+ uint32_t vertexBindingDescriptionCount_ = {},
+ const VULKAN_HPP_NAMESPACE::VertexInputBindingDescription * pVertexBindingDescriptions_ = {},
+ uint32_t vertexAttributeDescriptionCount_ = {},
+ const VULKAN_HPP_NAMESPACE::VertexInputAttributeDescription * pVertexAttributeDescriptions_ = {} )
+ VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , vertexBindingDescriptionCount( vertexBindingDescriptionCount_ )
+ , pVertexBindingDescriptions( pVertexBindingDescriptions_ )
+ , vertexAttributeDescriptionCount( vertexAttributeDescriptionCount_ )
+ , pVertexAttributeDescriptions( pVertexAttributeDescriptions_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PipelineVertexInputStateCreateInfo( PipelineVertexInputStateCreateInfo const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineVertexInputStateCreateInfo( VkPipelineVertexInputStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PipelineVertexInputStateCreateInfo( *reinterpret_cast<PipelineVertexInputStateCreateInfo const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ PipelineVertexInputStateCreateInfo(
+ VULKAN_HPP_NAMESPACE::PipelineVertexInputStateCreateFlags flags_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::VertexInputBindingDescription> const &
+ vertexBindingDescriptions_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::VertexInputAttributeDescription> const &
+ vertexAttributeDescriptions_ = {} )
+ : flags( flags_ )
+ , vertexBindingDescriptionCount( static_cast<uint32_t>( vertexBindingDescriptions_.size() ) )
+ , pVertexBindingDescriptions( vertexBindingDescriptions_.data() )
+ , vertexAttributeDescriptionCount( static_cast<uint32_t>( vertexAttributeDescriptions_.size() ) )
+ , pVertexAttributeDescriptions( vertexAttributeDescriptions_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PipelineVertexInputStateCreateInfo &
+ operator=( PipelineVertexInputStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineVertexInputStateCreateInfo &
+ operator=( VkPipelineVertexInputStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineVertexInputStateCreateInfo const *>( &rhs );
+ return *this;
+ }
+
+ PipelineVertexInputStateCreateInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PipelineVertexInputStateCreateInfo &
+ setFlags( VULKAN_HPP_NAMESPACE::PipelineVertexInputStateCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ PipelineVertexInputStateCreateInfo &
+ setVertexBindingDescriptionCount( uint32_t vertexBindingDescriptionCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ vertexBindingDescriptionCount = vertexBindingDescriptionCount_;
+ return *this;
+ }
+
+ PipelineVertexInputStateCreateInfo & setPVertexBindingDescriptions(
+ const VULKAN_HPP_NAMESPACE::VertexInputBindingDescription * pVertexBindingDescriptions_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pVertexBindingDescriptions = pVertexBindingDescriptions_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ PipelineVertexInputStateCreateInfo & setVertexBindingDescriptions(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::VertexInputBindingDescription> const &
+ vertexBindingDescriptions_ ) VULKAN_HPP_NOEXCEPT
+ {
+ vertexBindingDescriptionCount = static_cast<uint32_t>( vertexBindingDescriptions_.size() );
+ pVertexBindingDescriptions = vertexBindingDescriptions_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ PipelineVertexInputStateCreateInfo &
+ setVertexAttributeDescriptionCount( uint32_t vertexAttributeDescriptionCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ vertexAttributeDescriptionCount = vertexAttributeDescriptionCount_;
+ return *this;
+ }
+
+ PipelineVertexInputStateCreateInfo & setPVertexAttributeDescriptions(
+ const VULKAN_HPP_NAMESPACE::VertexInputAttributeDescription * pVertexAttributeDescriptions_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pVertexAttributeDescriptions = pVertexAttributeDescriptions_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ PipelineVertexInputStateCreateInfo & setVertexAttributeDescriptions(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::VertexInputAttributeDescription> const &
+ vertexAttributeDescriptions_ ) VULKAN_HPP_NOEXCEPT
+ {
+ vertexAttributeDescriptionCount = static_cast<uint32_t>( vertexAttributeDescriptions_.size() );
+ pVertexAttributeDescriptions = vertexAttributeDescriptions_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkPipelineVertexInputStateCreateInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPipelineVertexInputStateCreateInfo *>( this );
+ }
+
+ operator VkPipelineVertexInputStateCreateInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPipelineVertexInputStateCreateInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PipelineVertexInputStateCreateInfo const & ) const = default;
+#else
+ bool operator==( PipelineVertexInputStateCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( vertexBindingDescriptionCount == rhs.vertexBindingDescriptionCount ) &&
+ ( pVertexBindingDescriptions == rhs.pVertexBindingDescriptions ) &&
+ ( vertexAttributeDescriptionCount == rhs.vertexAttributeDescriptionCount ) &&
+ ( pVertexAttributeDescriptions == rhs.pVertexAttributeDescriptions );
+ }
+
+ bool operator!=( PipelineVertexInputStateCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineVertexInputStateCreateInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::PipelineVertexInputStateCreateFlags flags = {};
+ uint32_t vertexBindingDescriptionCount = {};
+ const VULKAN_HPP_NAMESPACE::VertexInputBindingDescription * pVertexBindingDescriptions = {};
+ uint32_t vertexAttributeDescriptionCount = {};
+ const VULKAN_HPP_NAMESPACE::VertexInputAttributeDescription * pVertexAttributeDescriptions = {};
+ };
+ static_assert( sizeof( PipelineVertexInputStateCreateInfo ) == sizeof( VkPipelineVertexInputStateCreateInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PipelineVertexInputStateCreateInfo>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePipelineVertexInputStateCreateInfo>
+ {
+ using Type = PipelineVertexInputStateCreateInfo;
+ };
+
+ struct PipelineInputAssemblyStateCreateInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePipelineInputAssemblyStateCreateInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PipelineInputAssemblyStateCreateInfo(
+ VULKAN_HPP_NAMESPACE::PipelineInputAssemblyStateCreateFlags flags_ = {},
+ VULKAN_HPP_NAMESPACE::PrimitiveTopology topology_ = VULKAN_HPP_NAMESPACE::PrimitiveTopology::ePointList,
+ VULKAN_HPP_NAMESPACE::Bool32 primitiveRestartEnable_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , topology( topology_ )
+ , primitiveRestartEnable( primitiveRestartEnable_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PipelineInputAssemblyStateCreateInfo( PipelineInputAssemblyStateCreateInfo const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineInputAssemblyStateCreateInfo( VkPipelineInputAssemblyStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PipelineInputAssemblyStateCreateInfo( *reinterpret_cast<PipelineInputAssemblyStateCreateInfo const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PipelineInputAssemblyStateCreateInfo &
+ operator=( PipelineInputAssemblyStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineInputAssemblyStateCreateInfo &
+ operator=( VkPipelineInputAssemblyStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineInputAssemblyStateCreateInfo const *>( &rhs );
+ return *this;
+ }
+
+ PipelineInputAssemblyStateCreateInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PipelineInputAssemblyStateCreateInfo &
+ setFlags( VULKAN_HPP_NAMESPACE::PipelineInputAssemblyStateCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ PipelineInputAssemblyStateCreateInfo &
+ setTopology( VULKAN_HPP_NAMESPACE::PrimitiveTopology topology_ ) VULKAN_HPP_NOEXCEPT
+ {
+ topology = topology_;
+ return *this;
+ }
+
+ PipelineInputAssemblyStateCreateInfo &
+ setPrimitiveRestartEnable( VULKAN_HPP_NAMESPACE::Bool32 primitiveRestartEnable_ ) VULKAN_HPP_NOEXCEPT
+ {
+ primitiveRestartEnable = primitiveRestartEnable_;
+ return *this;
+ }
+
+ operator VkPipelineInputAssemblyStateCreateInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPipelineInputAssemblyStateCreateInfo *>( this );
+ }
+
+ operator VkPipelineInputAssemblyStateCreateInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPipelineInputAssemblyStateCreateInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PipelineInputAssemblyStateCreateInfo const & ) const = default;
+#else
+ bool operator==( PipelineInputAssemblyStateCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( topology == rhs.topology ) && ( primitiveRestartEnable == rhs.primitiveRestartEnable );
+ }
+
+ bool operator!=( PipelineInputAssemblyStateCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineInputAssemblyStateCreateInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::PipelineInputAssemblyStateCreateFlags flags = {};
+ VULKAN_HPP_NAMESPACE::PrimitiveTopology topology = VULKAN_HPP_NAMESPACE::PrimitiveTopology::ePointList;
+ VULKAN_HPP_NAMESPACE::Bool32 primitiveRestartEnable = {};
+ };
+ static_assert( sizeof( PipelineInputAssemblyStateCreateInfo ) == sizeof( VkPipelineInputAssemblyStateCreateInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PipelineInputAssemblyStateCreateInfo>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePipelineInputAssemblyStateCreateInfo>
+ {
+ using Type = PipelineInputAssemblyStateCreateInfo;
+ };
+
+ struct PipelineTessellationStateCreateInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePipelineTessellationStateCreateInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ PipelineTessellationStateCreateInfo( VULKAN_HPP_NAMESPACE::PipelineTessellationStateCreateFlags flags_ = {},
+ uint32_t patchControlPoints_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , patchControlPoints( patchControlPoints_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PipelineTessellationStateCreateInfo( PipelineTessellationStateCreateInfo const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineTessellationStateCreateInfo( VkPipelineTessellationStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PipelineTessellationStateCreateInfo( *reinterpret_cast<PipelineTessellationStateCreateInfo const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PipelineTessellationStateCreateInfo &
+ operator=( PipelineTessellationStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineTessellationStateCreateInfo &
+ operator=( VkPipelineTessellationStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineTessellationStateCreateInfo const *>( &rhs );
+ return *this;
+ }
+
+ PipelineTessellationStateCreateInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PipelineTessellationStateCreateInfo &
+ setFlags( VULKAN_HPP_NAMESPACE::PipelineTessellationStateCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ PipelineTessellationStateCreateInfo & setPatchControlPoints( uint32_t patchControlPoints_ ) VULKAN_HPP_NOEXCEPT
+ {
+ patchControlPoints = patchControlPoints_;
+ return *this;
+ }
+
+ operator VkPipelineTessellationStateCreateInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPipelineTessellationStateCreateInfo *>( this );
+ }
+
+ operator VkPipelineTessellationStateCreateInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPipelineTessellationStateCreateInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PipelineTessellationStateCreateInfo const & ) const = default;
+#else
+ bool operator==( PipelineTessellationStateCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( patchControlPoints == rhs.patchControlPoints );
+ }
+
+ bool operator!=( PipelineTessellationStateCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineTessellationStateCreateInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::PipelineTessellationStateCreateFlags flags = {};
+ uint32_t patchControlPoints = {};
+ };
+ static_assert( sizeof( PipelineTessellationStateCreateInfo ) == sizeof( VkPipelineTessellationStateCreateInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PipelineTessellationStateCreateInfo>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePipelineTessellationStateCreateInfo>
+ {
+ using Type = PipelineTessellationStateCreateInfo;
+ };
+
+ struct PipelineViewportStateCreateInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineViewportStateCreateInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ PipelineViewportStateCreateInfo( VULKAN_HPP_NAMESPACE::PipelineViewportStateCreateFlags flags_ = {},
+ uint32_t viewportCount_ = {},
+ const VULKAN_HPP_NAMESPACE::Viewport * pViewports_ = {},
+ uint32_t scissorCount_ = {},
+ const VULKAN_HPP_NAMESPACE::Rect2D * pScissors_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , viewportCount( viewportCount_ )
+ , pViewports( pViewports_ )
+ , scissorCount( scissorCount_ )
+ , pScissors( pScissors_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ PipelineViewportStateCreateInfo( PipelineViewportStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineViewportStateCreateInfo( VkPipelineViewportStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PipelineViewportStateCreateInfo( *reinterpret_cast<PipelineViewportStateCreateInfo const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ PipelineViewportStateCreateInfo(
+ VULKAN_HPP_NAMESPACE::PipelineViewportStateCreateFlags flags_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Viewport> const & viewports_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Rect2D> const & scissors_ = {} )
+ : flags( flags_ )
+ , viewportCount( static_cast<uint32_t>( viewports_.size() ) )
+ , pViewports( viewports_.data() )
+ , scissorCount( static_cast<uint32_t>( scissors_.size() ) )
+ , pScissors( scissors_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PipelineViewportStateCreateInfo &
+ operator=( PipelineViewportStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineViewportStateCreateInfo & operator=( VkPipelineViewportStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineViewportStateCreateInfo const *>( &rhs );
+ return *this;
+ }
+
+ PipelineViewportStateCreateInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PipelineViewportStateCreateInfo &
+ setFlags( VULKAN_HPP_NAMESPACE::PipelineViewportStateCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ PipelineViewportStateCreateInfo & setViewportCount( uint32_t viewportCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ viewportCount = viewportCount_;
+ return *this;
+ }
+
+ PipelineViewportStateCreateInfo &
+ setPViewports( const VULKAN_HPP_NAMESPACE::Viewport * pViewports_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pViewports = pViewports_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ PipelineViewportStateCreateInfo & setViewports(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Viewport> const & viewports_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ viewportCount = static_cast<uint32_t>( viewports_.size() );
+ pViewports = viewports_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ PipelineViewportStateCreateInfo & setScissorCount( uint32_t scissorCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ scissorCount = scissorCount_;
+ return *this;
+ }
+
+ PipelineViewportStateCreateInfo &
+ setPScissors( const VULKAN_HPP_NAMESPACE::Rect2D * pScissors_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pScissors = pScissors_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ PipelineViewportStateCreateInfo &
+ setScissors( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Rect2D> const & scissors_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ scissorCount = static_cast<uint32_t>( scissors_.size() );
+ pScissors = scissors_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkPipelineViewportStateCreateInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPipelineViewportStateCreateInfo *>( this );
+ }
+
+ operator VkPipelineViewportStateCreateInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPipelineViewportStateCreateInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PipelineViewportStateCreateInfo const & ) const = default;
+#else
+ bool operator==( PipelineViewportStateCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( viewportCount == rhs.viewportCount ) && ( pViewports == rhs.pViewports ) &&
+ ( scissorCount == rhs.scissorCount ) && ( pScissors == rhs.pScissors );
+ }
+
+ bool operator!=( PipelineViewportStateCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineViewportStateCreateInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::PipelineViewportStateCreateFlags flags = {};
+ uint32_t viewportCount = {};
+ const VULKAN_HPP_NAMESPACE::Viewport * pViewports = {};
+ uint32_t scissorCount = {};
+ const VULKAN_HPP_NAMESPACE::Rect2D * pScissors = {};
+ };
+ static_assert( sizeof( PipelineViewportStateCreateInfo ) == sizeof( VkPipelineViewportStateCreateInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PipelineViewportStateCreateInfo>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePipelineViewportStateCreateInfo>
+ {
+ using Type = PipelineViewportStateCreateInfo;
+ };
+
+ struct PipelineRasterizationStateCreateInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePipelineRasterizationStateCreateInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PipelineRasterizationStateCreateInfo(
+ VULKAN_HPP_NAMESPACE::PipelineRasterizationStateCreateFlags flags_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 depthClampEnable_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 rasterizerDiscardEnable_ = {},
+ VULKAN_HPP_NAMESPACE::PolygonMode polygonMode_ = VULKAN_HPP_NAMESPACE::PolygonMode::eFill,
+ VULKAN_HPP_NAMESPACE::CullModeFlags cullMode_ = {},
+ VULKAN_HPP_NAMESPACE::FrontFace frontFace_ = VULKAN_HPP_NAMESPACE::FrontFace::eCounterClockwise,
+ VULKAN_HPP_NAMESPACE::Bool32 depthBiasEnable_ = {},
+ float depthBiasConstantFactor_ = {},
+ float depthBiasClamp_ = {},
+ float depthBiasSlopeFactor_ = {},
+ float lineWidth_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , depthClampEnable( depthClampEnable_ )
+ , rasterizerDiscardEnable( rasterizerDiscardEnable_ )
+ , polygonMode( polygonMode_ )
+ , cullMode( cullMode_ )
+ , frontFace( frontFace_ )
+ , depthBiasEnable( depthBiasEnable_ )
+ , depthBiasConstantFactor( depthBiasConstantFactor_ )
+ , depthBiasClamp( depthBiasClamp_ )
+ , depthBiasSlopeFactor( depthBiasSlopeFactor_ )
+ , lineWidth( lineWidth_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PipelineRasterizationStateCreateInfo( PipelineRasterizationStateCreateInfo const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineRasterizationStateCreateInfo( VkPipelineRasterizationStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PipelineRasterizationStateCreateInfo( *reinterpret_cast<PipelineRasterizationStateCreateInfo const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PipelineRasterizationStateCreateInfo &
+ operator=( PipelineRasterizationStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineRasterizationStateCreateInfo &
+ operator=( VkPipelineRasterizationStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineRasterizationStateCreateInfo const *>( &rhs );
+ return *this;
+ }
+
+ PipelineRasterizationStateCreateInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PipelineRasterizationStateCreateInfo &
+ setFlags( VULKAN_HPP_NAMESPACE::PipelineRasterizationStateCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ PipelineRasterizationStateCreateInfo &
+ setDepthClampEnable( VULKAN_HPP_NAMESPACE::Bool32 depthClampEnable_ ) VULKAN_HPP_NOEXCEPT
+ {
+ depthClampEnable = depthClampEnable_;
+ return *this;
+ }
+
+ PipelineRasterizationStateCreateInfo &
+ setRasterizerDiscardEnable( VULKAN_HPP_NAMESPACE::Bool32 rasterizerDiscardEnable_ ) VULKAN_HPP_NOEXCEPT
+ {
+ rasterizerDiscardEnable = rasterizerDiscardEnable_;
+ return *this;
+ }
+
+ PipelineRasterizationStateCreateInfo &
+ setPolygonMode( VULKAN_HPP_NAMESPACE::PolygonMode polygonMode_ ) VULKAN_HPP_NOEXCEPT
+ {
+ polygonMode = polygonMode_;
+ return *this;
+ }
+
+ PipelineRasterizationStateCreateInfo &
+ setCullMode( VULKAN_HPP_NAMESPACE::CullModeFlags cullMode_ ) VULKAN_HPP_NOEXCEPT
+ {
+ cullMode = cullMode_;
+ return *this;
+ }
+
+ PipelineRasterizationStateCreateInfo &
+ setFrontFace( VULKAN_HPP_NAMESPACE::FrontFace frontFace_ ) VULKAN_HPP_NOEXCEPT
+ {
+ frontFace = frontFace_;
+ return *this;
+ }
+
+ PipelineRasterizationStateCreateInfo &
+ setDepthBiasEnable( VULKAN_HPP_NAMESPACE::Bool32 depthBiasEnable_ ) VULKAN_HPP_NOEXCEPT
+ {
+ depthBiasEnable = depthBiasEnable_;
+ return *this;
+ }
+
+ PipelineRasterizationStateCreateInfo &
+ setDepthBiasConstantFactor( float depthBiasConstantFactor_ ) VULKAN_HPP_NOEXCEPT
+ {
+ depthBiasConstantFactor = depthBiasConstantFactor_;
+ return *this;
+ }
+
+ PipelineRasterizationStateCreateInfo & setDepthBiasClamp( float depthBiasClamp_ ) VULKAN_HPP_NOEXCEPT
+ {
+ depthBiasClamp = depthBiasClamp_;
+ return *this;
+ }
+
+ PipelineRasterizationStateCreateInfo & setDepthBiasSlopeFactor( float depthBiasSlopeFactor_ ) VULKAN_HPP_NOEXCEPT
+ {
+ depthBiasSlopeFactor = depthBiasSlopeFactor_;
+ return *this;
+ }
+
+ PipelineRasterizationStateCreateInfo & setLineWidth( float lineWidth_ ) VULKAN_HPP_NOEXCEPT
+ {
+ lineWidth = lineWidth_;
+ return *this;
+ }
+
+ operator VkPipelineRasterizationStateCreateInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPipelineRasterizationStateCreateInfo *>( this );
+ }
+
+ operator VkPipelineRasterizationStateCreateInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPipelineRasterizationStateCreateInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PipelineRasterizationStateCreateInfo const & ) const = default;
+#else
+ bool operator==( PipelineRasterizationStateCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( depthClampEnable == rhs.depthClampEnable ) &&
+ ( rasterizerDiscardEnable == rhs.rasterizerDiscardEnable ) && ( polygonMode == rhs.polygonMode ) &&
+ ( cullMode == rhs.cullMode ) && ( frontFace == rhs.frontFace ) &&
+ ( depthBiasEnable == rhs.depthBiasEnable ) && ( depthBiasConstantFactor == rhs.depthBiasConstantFactor ) &&
+ ( depthBiasClamp == rhs.depthBiasClamp ) && ( depthBiasSlopeFactor == rhs.depthBiasSlopeFactor ) &&
+ ( lineWidth == rhs.lineWidth );
+ }
+
+ bool operator!=( PipelineRasterizationStateCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineRasterizationStateCreateInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::PipelineRasterizationStateCreateFlags flags = {};
+ VULKAN_HPP_NAMESPACE::Bool32 depthClampEnable = {};
+ VULKAN_HPP_NAMESPACE::Bool32 rasterizerDiscardEnable = {};
+ VULKAN_HPP_NAMESPACE::PolygonMode polygonMode = VULKAN_HPP_NAMESPACE::PolygonMode::eFill;
+ VULKAN_HPP_NAMESPACE::CullModeFlags cullMode = {};
+ VULKAN_HPP_NAMESPACE::FrontFace frontFace = VULKAN_HPP_NAMESPACE::FrontFace::eCounterClockwise;
+ VULKAN_HPP_NAMESPACE::Bool32 depthBiasEnable = {};
+ float depthBiasConstantFactor = {};
+ float depthBiasClamp = {};
+ float depthBiasSlopeFactor = {};
+ float lineWidth = {};
+ };
+ static_assert( sizeof( PipelineRasterizationStateCreateInfo ) == sizeof( VkPipelineRasterizationStateCreateInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PipelineRasterizationStateCreateInfo>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePipelineRasterizationStateCreateInfo>
+ {
+ using Type = PipelineRasterizationStateCreateInfo;
+ };
+
+ struct PipelineMultisampleStateCreateInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePipelineMultisampleStateCreateInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PipelineMultisampleStateCreateInfo(
+ VULKAN_HPP_NAMESPACE::PipelineMultisampleStateCreateFlags flags_ = {},
+ VULKAN_HPP_NAMESPACE::SampleCountFlagBits rasterizationSamples_ = VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1,
+ VULKAN_HPP_NAMESPACE::Bool32 sampleShadingEnable_ = {},
+ float minSampleShading_ = {},
+ const VULKAN_HPP_NAMESPACE::SampleMask * pSampleMask_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 alphaToCoverageEnable_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 alphaToOneEnable_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , rasterizationSamples( rasterizationSamples_ )
+ , sampleShadingEnable( sampleShadingEnable_ )
+ , minSampleShading( minSampleShading_ )
+ , pSampleMask( pSampleMask_ )
+ , alphaToCoverageEnable( alphaToCoverageEnable_ )
+ , alphaToOneEnable( alphaToOneEnable_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PipelineMultisampleStateCreateInfo( PipelineMultisampleStateCreateInfo const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineMultisampleStateCreateInfo( VkPipelineMultisampleStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PipelineMultisampleStateCreateInfo( *reinterpret_cast<PipelineMultisampleStateCreateInfo const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PipelineMultisampleStateCreateInfo &
+ operator=( PipelineMultisampleStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineMultisampleStateCreateInfo &
+ operator=( VkPipelineMultisampleStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineMultisampleStateCreateInfo const *>( &rhs );
+ return *this;
+ }
+
+ PipelineMultisampleStateCreateInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PipelineMultisampleStateCreateInfo &
+ setFlags( VULKAN_HPP_NAMESPACE::PipelineMultisampleStateCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ PipelineMultisampleStateCreateInfo &
+ setRasterizationSamples( VULKAN_HPP_NAMESPACE::SampleCountFlagBits rasterizationSamples_ ) VULKAN_HPP_NOEXCEPT
+ {
+ rasterizationSamples = rasterizationSamples_;
+ return *this;
+ }
+
+ PipelineMultisampleStateCreateInfo &
+ setSampleShadingEnable( VULKAN_HPP_NAMESPACE::Bool32 sampleShadingEnable_ ) VULKAN_HPP_NOEXCEPT
+ {
+ sampleShadingEnable = sampleShadingEnable_;
+ return *this;
+ }
+
+ PipelineMultisampleStateCreateInfo & setMinSampleShading( float minSampleShading_ ) VULKAN_HPP_NOEXCEPT
+ {
+ minSampleShading = minSampleShading_;
+ return *this;
+ }
+
+ PipelineMultisampleStateCreateInfo &
+ setPSampleMask( const VULKAN_HPP_NAMESPACE::SampleMask * pSampleMask_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pSampleMask = pSampleMask_;
+ return *this;
+ }
+
+ PipelineMultisampleStateCreateInfo &
+ setAlphaToCoverageEnable( VULKAN_HPP_NAMESPACE::Bool32 alphaToCoverageEnable_ ) VULKAN_HPP_NOEXCEPT
+ {
+ alphaToCoverageEnable = alphaToCoverageEnable_;
+ return *this;
+ }
+
+ PipelineMultisampleStateCreateInfo &
+ setAlphaToOneEnable( VULKAN_HPP_NAMESPACE::Bool32 alphaToOneEnable_ ) VULKAN_HPP_NOEXCEPT
+ {
+ alphaToOneEnable = alphaToOneEnable_;
+ return *this;
+ }
+
+ operator VkPipelineMultisampleStateCreateInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPipelineMultisampleStateCreateInfo *>( this );
+ }
+
+ operator VkPipelineMultisampleStateCreateInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPipelineMultisampleStateCreateInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PipelineMultisampleStateCreateInfo const & ) const = default;
+#else
+ bool operator==( PipelineMultisampleStateCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( rasterizationSamples == rhs.rasterizationSamples ) &&
+ ( sampleShadingEnable == rhs.sampleShadingEnable ) && ( minSampleShading == rhs.minSampleShading ) &&
+ ( pSampleMask == rhs.pSampleMask ) && ( alphaToCoverageEnable == rhs.alphaToCoverageEnable ) &&
+ ( alphaToOneEnable == rhs.alphaToOneEnable );
+ }
+
+ bool operator!=( PipelineMultisampleStateCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineMultisampleStateCreateInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::PipelineMultisampleStateCreateFlags flags = {};
+ VULKAN_HPP_NAMESPACE::SampleCountFlagBits rasterizationSamples = VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1;
+ VULKAN_HPP_NAMESPACE::Bool32 sampleShadingEnable = {};
+ float minSampleShading = {};
+ const VULKAN_HPP_NAMESPACE::SampleMask * pSampleMask = {};
+ VULKAN_HPP_NAMESPACE::Bool32 alphaToCoverageEnable = {};
+ VULKAN_HPP_NAMESPACE::Bool32 alphaToOneEnable = {};
+ };
+ static_assert( sizeof( PipelineMultisampleStateCreateInfo ) == sizeof( VkPipelineMultisampleStateCreateInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PipelineMultisampleStateCreateInfo>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePipelineMultisampleStateCreateInfo>
+ {
+ using Type = PipelineMultisampleStateCreateInfo;
+ };
+
+ struct StencilOpState
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ StencilOpState( VULKAN_HPP_NAMESPACE::StencilOp failOp_ = VULKAN_HPP_NAMESPACE::StencilOp::eKeep,
+ VULKAN_HPP_NAMESPACE::StencilOp passOp_ = VULKAN_HPP_NAMESPACE::StencilOp::eKeep,
+ VULKAN_HPP_NAMESPACE::StencilOp depthFailOp_ = VULKAN_HPP_NAMESPACE::StencilOp::eKeep,
+ VULKAN_HPP_NAMESPACE::CompareOp compareOp_ = VULKAN_HPP_NAMESPACE::CompareOp::eNever,
+ uint32_t compareMask_ = {},
+ uint32_t writeMask_ = {},
+ uint32_t reference_ = {} ) VULKAN_HPP_NOEXCEPT
+ : failOp( failOp_ )
+ , passOp( passOp_ )
+ , depthFailOp( depthFailOp_ )
+ , compareOp( compareOp_ )
+ , compareMask( compareMask_ )
+ , writeMask( writeMask_ )
+ , reference( reference_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR StencilOpState( StencilOpState const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ StencilOpState( VkStencilOpState const & rhs ) VULKAN_HPP_NOEXCEPT
+ : StencilOpState( *reinterpret_cast<StencilOpState const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 StencilOpState & operator=( StencilOpState const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ StencilOpState & operator=( VkStencilOpState const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::StencilOpState const *>( &rhs );
+ return *this;
+ }
+
+ StencilOpState & setFailOp( VULKAN_HPP_NAMESPACE::StencilOp failOp_ ) VULKAN_HPP_NOEXCEPT
+ {
+ failOp = failOp_;
+ return *this;
+ }
+
+ StencilOpState & setPassOp( VULKAN_HPP_NAMESPACE::StencilOp passOp_ ) VULKAN_HPP_NOEXCEPT
+ {
+ passOp = passOp_;
+ return *this;
+ }
+
+ StencilOpState & setDepthFailOp( VULKAN_HPP_NAMESPACE::StencilOp depthFailOp_ ) VULKAN_HPP_NOEXCEPT
+ {
+ depthFailOp = depthFailOp_;
+ return *this;
+ }
+
+ StencilOpState & setCompareOp( VULKAN_HPP_NAMESPACE::CompareOp compareOp_ ) VULKAN_HPP_NOEXCEPT
+ {
+ compareOp = compareOp_;
+ return *this;
+ }
+
+ StencilOpState & setCompareMask( uint32_t compareMask_ ) VULKAN_HPP_NOEXCEPT
+ {
+ compareMask = compareMask_;
+ return *this;
+ }
+
+ StencilOpState & setWriteMask( uint32_t writeMask_ ) VULKAN_HPP_NOEXCEPT
+ {
+ writeMask = writeMask_;
+ return *this;
+ }
+
+ StencilOpState & setReference( uint32_t reference_ ) VULKAN_HPP_NOEXCEPT
+ {
+ reference = reference_;
+ return *this;
+ }
+
+ operator VkStencilOpState const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkStencilOpState *>( this );
+ }
+
+ operator VkStencilOpState &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkStencilOpState *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( StencilOpState const & ) const = default;
+#else
+ bool operator==( StencilOpState const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( failOp == rhs.failOp ) && ( passOp == rhs.passOp ) && ( depthFailOp == rhs.depthFailOp ) &&
+ ( compareOp == rhs.compareOp ) && ( compareMask == rhs.compareMask ) && ( writeMask == rhs.writeMask ) &&
+ ( reference == rhs.reference );
+ }
+
+ bool operator!=( StencilOpState const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StencilOp failOp = VULKAN_HPP_NAMESPACE::StencilOp::eKeep;
+ VULKAN_HPP_NAMESPACE::StencilOp passOp = VULKAN_HPP_NAMESPACE::StencilOp::eKeep;
+ VULKAN_HPP_NAMESPACE::StencilOp depthFailOp = VULKAN_HPP_NAMESPACE::StencilOp::eKeep;
+ VULKAN_HPP_NAMESPACE::CompareOp compareOp = VULKAN_HPP_NAMESPACE::CompareOp::eNever;
+ uint32_t compareMask = {};
+ uint32_t writeMask = {};
+ uint32_t reference = {};
+ };
+ static_assert( sizeof( StencilOpState ) == sizeof( VkStencilOpState ), "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<StencilOpState>::value, "struct wrapper is not a standard layout!" );
+
+ struct PipelineDepthStencilStateCreateInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePipelineDepthStencilStateCreateInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PipelineDepthStencilStateCreateInfo(
+ VULKAN_HPP_NAMESPACE::PipelineDepthStencilStateCreateFlags flags_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 depthTestEnable_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 depthWriteEnable_ = {},
+ VULKAN_HPP_NAMESPACE::CompareOp depthCompareOp_ = VULKAN_HPP_NAMESPACE::CompareOp::eNever,
+ VULKAN_HPP_NAMESPACE::Bool32 depthBoundsTestEnable_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 stencilTestEnable_ = {},
+ VULKAN_HPP_NAMESPACE::StencilOpState front_ = {},
+ VULKAN_HPP_NAMESPACE::StencilOpState back_ = {},
+ float minDepthBounds_ = {},
+ float maxDepthBounds_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , depthTestEnable( depthTestEnable_ )
+ , depthWriteEnable( depthWriteEnable_ )
+ , depthCompareOp( depthCompareOp_ )
+ , depthBoundsTestEnable( depthBoundsTestEnable_ )
+ , stencilTestEnable( stencilTestEnable_ )
+ , front( front_ )
+ , back( back_ )
+ , minDepthBounds( minDepthBounds_ )
+ , maxDepthBounds( maxDepthBounds_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PipelineDepthStencilStateCreateInfo( PipelineDepthStencilStateCreateInfo const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineDepthStencilStateCreateInfo( VkPipelineDepthStencilStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PipelineDepthStencilStateCreateInfo( *reinterpret_cast<PipelineDepthStencilStateCreateInfo const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PipelineDepthStencilStateCreateInfo &
+ operator=( PipelineDepthStencilStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineDepthStencilStateCreateInfo &
+ operator=( VkPipelineDepthStencilStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineDepthStencilStateCreateInfo const *>( &rhs );
+ return *this;
+ }
+
+ PipelineDepthStencilStateCreateInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PipelineDepthStencilStateCreateInfo &
+ setFlags( VULKAN_HPP_NAMESPACE::PipelineDepthStencilStateCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ PipelineDepthStencilStateCreateInfo &
+ setDepthTestEnable( VULKAN_HPP_NAMESPACE::Bool32 depthTestEnable_ ) VULKAN_HPP_NOEXCEPT
+ {
+ depthTestEnable = depthTestEnable_;
+ return *this;
+ }
+
+ PipelineDepthStencilStateCreateInfo &
+ setDepthWriteEnable( VULKAN_HPP_NAMESPACE::Bool32 depthWriteEnable_ ) VULKAN_HPP_NOEXCEPT
+ {
+ depthWriteEnable = depthWriteEnable_;
+ return *this;
+ }
+
+ PipelineDepthStencilStateCreateInfo &
+ setDepthCompareOp( VULKAN_HPP_NAMESPACE::CompareOp depthCompareOp_ ) VULKAN_HPP_NOEXCEPT
+ {
+ depthCompareOp = depthCompareOp_;
+ return *this;
+ }
+
+ PipelineDepthStencilStateCreateInfo &
+ setDepthBoundsTestEnable( VULKAN_HPP_NAMESPACE::Bool32 depthBoundsTestEnable_ ) VULKAN_HPP_NOEXCEPT
+ {
+ depthBoundsTestEnable = depthBoundsTestEnable_;
+ return *this;
+ }
+
+ PipelineDepthStencilStateCreateInfo &
+ setStencilTestEnable( VULKAN_HPP_NAMESPACE::Bool32 stencilTestEnable_ ) VULKAN_HPP_NOEXCEPT
+ {
+ stencilTestEnable = stencilTestEnable_;
+ return *this;
+ }
+
+ PipelineDepthStencilStateCreateInfo &
+ setFront( VULKAN_HPP_NAMESPACE::StencilOpState const & front_ ) VULKAN_HPP_NOEXCEPT
+ {
+ front = front_;
+ return *this;
+ }
+
+ PipelineDepthStencilStateCreateInfo &
+ setBack( VULKAN_HPP_NAMESPACE::StencilOpState const & back_ ) VULKAN_HPP_NOEXCEPT
+ {
+ back = back_;
+ return *this;
+ }
+
+ PipelineDepthStencilStateCreateInfo & setMinDepthBounds( float minDepthBounds_ ) VULKAN_HPP_NOEXCEPT
+ {
+ minDepthBounds = minDepthBounds_;
+ return *this;
+ }
+
+ PipelineDepthStencilStateCreateInfo & setMaxDepthBounds( float maxDepthBounds_ ) VULKAN_HPP_NOEXCEPT
+ {
+ maxDepthBounds = maxDepthBounds_;
+ return *this;
+ }
+
+ operator VkPipelineDepthStencilStateCreateInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPipelineDepthStencilStateCreateInfo *>( this );
+ }
+
+ operator VkPipelineDepthStencilStateCreateInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPipelineDepthStencilStateCreateInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PipelineDepthStencilStateCreateInfo const & ) const = default;
+#else
+ bool operator==( PipelineDepthStencilStateCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( depthTestEnable == rhs.depthTestEnable ) && ( depthWriteEnable == rhs.depthWriteEnable ) &&
+ ( depthCompareOp == rhs.depthCompareOp ) && ( depthBoundsTestEnable == rhs.depthBoundsTestEnable ) &&
+ ( stencilTestEnable == rhs.stencilTestEnable ) && ( front == rhs.front ) && ( back == rhs.back ) &&
+ ( minDepthBounds == rhs.minDepthBounds ) && ( maxDepthBounds == rhs.maxDepthBounds );
+ }
+
+ bool operator!=( PipelineDepthStencilStateCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineDepthStencilStateCreateInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::PipelineDepthStencilStateCreateFlags flags = {};
+ VULKAN_HPP_NAMESPACE::Bool32 depthTestEnable = {};
+ VULKAN_HPP_NAMESPACE::Bool32 depthWriteEnable = {};
+ VULKAN_HPP_NAMESPACE::CompareOp depthCompareOp = VULKAN_HPP_NAMESPACE::CompareOp::eNever;
+ VULKAN_HPP_NAMESPACE::Bool32 depthBoundsTestEnable = {};
+ VULKAN_HPP_NAMESPACE::Bool32 stencilTestEnable = {};
+ VULKAN_HPP_NAMESPACE::StencilOpState front = {};
+ VULKAN_HPP_NAMESPACE::StencilOpState back = {};
+ float minDepthBounds = {};
+ float maxDepthBounds = {};
+ };
+ static_assert( sizeof( PipelineDepthStencilStateCreateInfo ) == sizeof( VkPipelineDepthStencilStateCreateInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PipelineDepthStencilStateCreateInfo>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePipelineDepthStencilStateCreateInfo>
+ {
+ using Type = PipelineDepthStencilStateCreateInfo;
+ };
+
+ struct PipelineColorBlendAttachmentState
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PipelineColorBlendAttachmentState(
+ VULKAN_HPP_NAMESPACE::Bool32 blendEnable_ = {},
+ VULKAN_HPP_NAMESPACE::BlendFactor srcColorBlendFactor_ = VULKAN_HPP_NAMESPACE::BlendFactor::eZero,
+ VULKAN_HPP_NAMESPACE::BlendFactor dstColorBlendFactor_ = VULKAN_HPP_NAMESPACE::BlendFactor::eZero,
+ VULKAN_HPP_NAMESPACE::BlendOp colorBlendOp_ = VULKAN_HPP_NAMESPACE::BlendOp::eAdd,
+ VULKAN_HPP_NAMESPACE::BlendFactor srcAlphaBlendFactor_ = VULKAN_HPP_NAMESPACE::BlendFactor::eZero,
+ VULKAN_HPP_NAMESPACE::BlendFactor dstAlphaBlendFactor_ = VULKAN_HPP_NAMESPACE::BlendFactor::eZero,
+ VULKAN_HPP_NAMESPACE::BlendOp alphaBlendOp_ = VULKAN_HPP_NAMESPACE::BlendOp::eAdd,
+ VULKAN_HPP_NAMESPACE::ColorComponentFlags colorWriteMask_ = {} ) VULKAN_HPP_NOEXCEPT
+ : blendEnable( blendEnable_ )
+ , srcColorBlendFactor( srcColorBlendFactor_ )
+ , dstColorBlendFactor( dstColorBlendFactor_ )
+ , colorBlendOp( colorBlendOp_ )
+ , srcAlphaBlendFactor( srcAlphaBlendFactor_ )
+ , dstAlphaBlendFactor( dstAlphaBlendFactor_ )
+ , alphaBlendOp( alphaBlendOp_ )
+ , colorWriteMask( colorWriteMask_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ PipelineColorBlendAttachmentState( PipelineColorBlendAttachmentState const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineColorBlendAttachmentState( VkPipelineColorBlendAttachmentState const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PipelineColorBlendAttachmentState( *reinterpret_cast<PipelineColorBlendAttachmentState const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PipelineColorBlendAttachmentState &
+ operator=( PipelineColorBlendAttachmentState const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineColorBlendAttachmentState & operator=( VkPipelineColorBlendAttachmentState const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineColorBlendAttachmentState const *>( &rhs );
+ return *this;
+ }
+
+ PipelineColorBlendAttachmentState & setBlendEnable( VULKAN_HPP_NAMESPACE::Bool32 blendEnable_ ) VULKAN_HPP_NOEXCEPT
+ {
+ blendEnable = blendEnable_;
+ return *this;
+ }
+
+ PipelineColorBlendAttachmentState &
+ setSrcColorBlendFactor( VULKAN_HPP_NAMESPACE::BlendFactor srcColorBlendFactor_ ) VULKAN_HPP_NOEXCEPT
+ {
+ srcColorBlendFactor = srcColorBlendFactor_;
+ return *this;
+ }
+
+ PipelineColorBlendAttachmentState &
+ setDstColorBlendFactor( VULKAN_HPP_NAMESPACE::BlendFactor dstColorBlendFactor_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstColorBlendFactor = dstColorBlendFactor_;
+ return *this;
+ }
+
+ PipelineColorBlendAttachmentState &
+ setColorBlendOp( VULKAN_HPP_NAMESPACE::BlendOp colorBlendOp_ ) VULKAN_HPP_NOEXCEPT
+ {
+ colorBlendOp = colorBlendOp_;
+ return *this;
+ }
+
+ PipelineColorBlendAttachmentState &
+ setSrcAlphaBlendFactor( VULKAN_HPP_NAMESPACE::BlendFactor srcAlphaBlendFactor_ ) VULKAN_HPP_NOEXCEPT
+ {
+ srcAlphaBlendFactor = srcAlphaBlendFactor_;
+ return *this;
+ }
+
+ PipelineColorBlendAttachmentState &
+ setDstAlphaBlendFactor( VULKAN_HPP_NAMESPACE::BlendFactor dstAlphaBlendFactor_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstAlphaBlendFactor = dstAlphaBlendFactor_;
+ return *this;
+ }
+
+ PipelineColorBlendAttachmentState &
+ setAlphaBlendOp( VULKAN_HPP_NAMESPACE::BlendOp alphaBlendOp_ ) VULKAN_HPP_NOEXCEPT
+ {
+ alphaBlendOp = alphaBlendOp_;
+ return *this;
+ }
+
+ PipelineColorBlendAttachmentState &
+ setColorWriteMask( VULKAN_HPP_NAMESPACE::ColorComponentFlags colorWriteMask_ ) VULKAN_HPP_NOEXCEPT
+ {
+ colorWriteMask = colorWriteMask_;
+ return *this;
+ }
+
+ operator VkPipelineColorBlendAttachmentState const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPipelineColorBlendAttachmentState *>( this );
+ }
+
+ operator VkPipelineColorBlendAttachmentState &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPipelineColorBlendAttachmentState *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PipelineColorBlendAttachmentState const & ) const = default;
+#else
+ bool operator==( PipelineColorBlendAttachmentState const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( blendEnable == rhs.blendEnable ) && ( srcColorBlendFactor == rhs.srcColorBlendFactor ) &&
+ ( dstColorBlendFactor == rhs.dstColorBlendFactor ) && ( colorBlendOp == rhs.colorBlendOp ) &&
+ ( srcAlphaBlendFactor == rhs.srcAlphaBlendFactor ) && ( dstAlphaBlendFactor == rhs.dstAlphaBlendFactor ) &&
+ ( alphaBlendOp == rhs.alphaBlendOp ) && ( colorWriteMask == rhs.colorWriteMask );
+ }
+
+ bool operator!=( PipelineColorBlendAttachmentState const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::Bool32 blendEnable = {};
+ VULKAN_HPP_NAMESPACE::BlendFactor srcColorBlendFactor = VULKAN_HPP_NAMESPACE::BlendFactor::eZero;
+ VULKAN_HPP_NAMESPACE::BlendFactor dstColorBlendFactor = VULKAN_HPP_NAMESPACE::BlendFactor::eZero;
+ VULKAN_HPP_NAMESPACE::BlendOp colorBlendOp = VULKAN_HPP_NAMESPACE::BlendOp::eAdd;
+ VULKAN_HPP_NAMESPACE::BlendFactor srcAlphaBlendFactor = VULKAN_HPP_NAMESPACE::BlendFactor::eZero;
+ VULKAN_HPP_NAMESPACE::BlendFactor dstAlphaBlendFactor = VULKAN_HPP_NAMESPACE::BlendFactor::eZero;
+ VULKAN_HPP_NAMESPACE::BlendOp alphaBlendOp = VULKAN_HPP_NAMESPACE::BlendOp::eAdd;
+ VULKAN_HPP_NAMESPACE::ColorComponentFlags colorWriteMask = {};
+ };
+ static_assert( sizeof( PipelineColorBlendAttachmentState ) == sizeof( VkPipelineColorBlendAttachmentState ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PipelineColorBlendAttachmentState>::value,
+ "struct wrapper is not a standard layout!" );
+
+ struct PipelineColorBlendStateCreateInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePipelineColorBlendStateCreateInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR_14 PipelineColorBlendStateCreateInfo(
+ VULKAN_HPP_NAMESPACE::PipelineColorBlendStateCreateFlags flags_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 logicOpEnable_ = {},
+ VULKAN_HPP_NAMESPACE::LogicOp logicOp_ = VULKAN_HPP_NAMESPACE::LogicOp::eClear,
+ uint32_t attachmentCount_ = {},
+ const VULKAN_HPP_NAMESPACE::PipelineColorBlendAttachmentState * pAttachments_ = {},
+ std::array<float, 4> const & blendConstants_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , logicOpEnable( logicOpEnable_ )
+ , logicOp( logicOp_ )
+ , attachmentCount( attachmentCount_ )
+ , pAttachments( pAttachments_ )
+ , blendConstants( blendConstants_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR_14
+ PipelineColorBlendStateCreateInfo( PipelineColorBlendStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineColorBlendStateCreateInfo( VkPipelineColorBlendStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PipelineColorBlendStateCreateInfo( *reinterpret_cast<PipelineColorBlendStateCreateInfo const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ PipelineColorBlendStateCreateInfo(
+ VULKAN_HPP_NAMESPACE::PipelineColorBlendStateCreateFlags flags_,
+ VULKAN_HPP_NAMESPACE::Bool32 logicOpEnable_,
+ VULKAN_HPP_NAMESPACE::LogicOp logicOp_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<
+ const VULKAN_HPP_NAMESPACE::PipelineColorBlendAttachmentState> const & attachments_,
+ std::array<float, 4> const & blendConstants_ = {} )
+ : flags( flags_ )
+ , logicOpEnable( logicOpEnable_ )
+ , logicOp( logicOp_ )
+ , attachmentCount( static_cast<uint32_t>( attachments_.size() ) )
+ , pAttachments( attachments_.data() )
+ , blendConstants( blendConstants_ )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PipelineColorBlendStateCreateInfo &
+ operator=( PipelineColorBlendStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineColorBlendStateCreateInfo & operator=( VkPipelineColorBlendStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineColorBlendStateCreateInfo const *>( &rhs );
+ return *this;
+ }
+
+ PipelineColorBlendStateCreateInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PipelineColorBlendStateCreateInfo &
+ setFlags( VULKAN_HPP_NAMESPACE::PipelineColorBlendStateCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ PipelineColorBlendStateCreateInfo &
+ setLogicOpEnable( VULKAN_HPP_NAMESPACE::Bool32 logicOpEnable_ ) VULKAN_HPP_NOEXCEPT
+ {
+ logicOpEnable = logicOpEnable_;
+ return *this;
+ }
+
+ PipelineColorBlendStateCreateInfo & setLogicOp( VULKAN_HPP_NAMESPACE::LogicOp logicOp_ ) VULKAN_HPP_NOEXCEPT
+ {
+ logicOp = logicOp_;
+ return *this;
+ }
+
+ PipelineColorBlendStateCreateInfo & setAttachmentCount( uint32_t attachmentCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ attachmentCount = attachmentCount_;
+ return *this;
+ }
+
+ PipelineColorBlendStateCreateInfo & setPAttachments(
+ const VULKAN_HPP_NAMESPACE::PipelineColorBlendAttachmentState * pAttachments_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pAttachments = pAttachments_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ PipelineColorBlendStateCreateInfo & setAttachments(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<
+ const VULKAN_HPP_NAMESPACE::PipelineColorBlendAttachmentState> const & attachments_ ) VULKAN_HPP_NOEXCEPT
+ {
+ attachmentCount = static_cast<uint32_t>( attachments_.size() );
+ pAttachments = attachments_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ PipelineColorBlendStateCreateInfo & setBlendConstants( std::array<float, 4> blendConstants_ ) VULKAN_HPP_NOEXCEPT
+ {
+ blendConstants = blendConstants_;
+ return *this;
+ }
+
+ operator VkPipelineColorBlendStateCreateInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPipelineColorBlendStateCreateInfo *>( this );
+ }
+
+ operator VkPipelineColorBlendStateCreateInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPipelineColorBlendStateCreateInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PipelineColorBlendStateCreateInfo const & ) const = default;
+#else
+ bool operator==( PipelineColorBlendStateCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( logicOpEnable == rhs.logicOpEnable ) && ( logicOp == rhs.logicOp ) &&
+ ( attachmentCount == rhs.attachmentCount ) && ( pAttachments == rhs.pAttachments ) &&
+ ( blendConstants == rhs.blendConstants );
+ }
+
+ bool operator!=( PipelineColorBlendStateCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineColorBlendStateCreateInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::PipelineColorBlendStateCreateFlags flags = {};
+ VULKAN_HPP_NAMESPACE::Bool32 logicOpEnable = {};
+ VULKAN_HPP_NAMESPACE::LogicOp logicOp = VULKAN_HPP_NAMESPACE::LogicOp::eClear;
+ uint32_t attachmentCount = {};
+ const VULKAN_HPP_NAMESPACE::PipelineColorBlendAttachmentState * pAttachments = {};
+ VULKAN_HPP_NAMESPACE::ArrayWrapper1D<float, 4> blendConstants = {};
+ };
+ static_assert( sizeof( PipelineColorBlendStateCreateInfo ) == sizeof( VkPipelineColorBlendStateCreateInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PipelineColorBlendStateCreateInfo>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePipelineColorBlendStateCreateInfo>
+ {
+ using Type = PipelineColorBlendStateCreateInfo;
+ };
+
+ struct PipelineDynamicStateCreateInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineDynamicStateCreateInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PipelineDynamicStateCreateInfo(
+ VULKAN_HPP_NAMESPACE::PipelineDynamicStateCreateFlags flags_ = {},
+ uint32_t dynamicStateCount_ = {},
+ const VULKAN_HPP_NAMESPACE::DynamicState * pDynamicStates_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , dynamicStateCount( dynamicStateCount_ )
+ , pDynamicStates( pDynamicStates_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ PipelineDynamicStateCreateInfo( PipelineDynamicStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineDynamicStateCreateInfo( VkPipelineDynamicStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PipelineDynamicStateCreateInfo( *reinterpret_cast<PipelineDynamicStateCreateInfo const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ PipelineDynamicStateCreateInfo(
+ VULKAN_HPP_NAMESPACE::PipelineDynamicStateCreateFlags flags_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DynamicState> const & dynamicStates_ )
+ : flags( flags_ )
+ , dynamicStateCount( static_cast<uint32_t>( dynamicStates_.size() ) )
+ , pDynamicStates( dynamicStates_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PipelineDynamicStateCreateInfo &
+ operator=( PipelineDynamicStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineDynamicStateCreateInfo & operator=( VkPipelineDynamicStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineDynamicStateCreateInfo const *>( &rhs );
+ return *this;
+ }
+
+ PipelineDynamicStateCreateInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PipelineDynamicStateCreateInfo &
+ setFlags( VULKAN_HPP_NAMESPACE::PipelineDynamicStateCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ PipelineDynamicStateCreateInfo & setDynamicStateCount( uint32_t dynamicStateCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dynamicStateCount = dynamicStateCount_;
+ return *this;
+ }
+
+ PipelineDynamicStateCreateInfo &
+ setPDynamicStates( const VULKAN_HPP_NAMESPACE::DynamicState * pDynamicStates_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pDynamicStates = pDynamicStates_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ PipelineDynamicStateCreateInfo & setDynamicStates(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DynamicState> const & dynamicStates_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ dynamicStateCount = static_cast<uint32_t>( dynamicStates_.size() );
+ pDynamicStates = dynamicStates_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkPipelineDynamicStateCreateInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPipelineDynamicStateCreateInfo *>( this );
+ }
+
+ operator VkPipelineDynamicStateCreateInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPipelineDynamicStateCreateInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PipelineDynamicStateCreateInfo const & ) const = default;
+#else
+ bool operator==( PipelineDynamicStateCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( dynamicStateCount == rhs.dynamicStateCount ) && ( pDynamicStates == rhs.pDynamicStates );
+ }
+
+ bool operator!=( PipelineDynamicStateCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineDynamicStateCreateInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::PipelineDynamicStateCreateFlags flags = {};
+ uint32_t dynamicStateCount = {};
+ const VULKAN_HPP_NAMESPACE::DynamicState * pDynamicStates = {};
+ };
+ static_assert( sizeof( PipelineDynamicStateCreateInfo ) == sizeof( VkPipelineDynamicStateCreateInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PipelineDynamicStateCreateInfo>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePipelineDynamicStateCreateInfo>
+ {
+ using Type = PipelineDynamicStateCreateInfo;
+ };
+
+ struct GraphicsPipelineCreateInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eGraphicsPipelineCreateInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR_14 GraphicsPipelineCreateInfo(
+ VULKAN_HPP_NAMESPACE::PipelineCreateFlags flags_ = {},
+ uint32_t stageCount_ = {},
+ const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo * pStages_ = {},
+ const VULKAN_HPP_NAMESPACE::PipelineVertexInputStateCreateInfo * pVertexInputState_ = {},
+ const VULKAN_HPP_NAMESPACE::PipelineInputAssemblyStateCreateInfo * pInputAssemblyState_ = {},
+ const VULKAN_HPP_NAMESPACE::PipelineTessellationStateCreateInfo * pTessellationState_ = {},
+ const VULKAN_HPP_NAMESPACE::PipelineViewportStateCreateInfo * pViewportState_ = {},
+ const VULKAN_HPP_NAMESPACE::PipelineRasterizationStateCreateInfo * pRasterizationState_ = {},
+ const VULKAN_HPP_NAMESPACE::PipelineMultisampleStateCreateInfo * pMultisampleState_ = {},
+ const VULKAN_HPP_NAMESPACE::PipelineDepthStencilStateCreateInfo * pDepthStencilState_ = {},
+ const VULKAN_HPP_NAMESPACE::PipelineColorBlendStateCreateInfo * pColorBlendState_ = {},
+ const VULKAN_HPP_NAMESPACE::PipelineDynamicStateCreateInfo * pDynamicState_ = {},
+ VULKAN_HPP_NAMESPACE::PipelineLayout layout_ = {},
+ VULKAN_HPP_NAMESPACE::RenderPass renderPass_ = {},
+ uint32_t subpass_ = {},
+ VULKAN_HPP_NAMESPACE::Pipeline basePipelineHandle_ = {},
+ int32_t basePipelineIndex_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , stageCount( stageCount_ )
+ , pStages( pStages_ )
+ , pVertexInputState( pVertexInputState_ )
+ , pInputAssemblyState( pInputAssemblyState_ )
+ , pTessellationState( pTessellationState_ )
+ , pViewportState( pViewportState_ )
+ , pRasterizationState( pRasterizationState_ )
+ , pMultisampleState( pMultisampleState_ )
+ , pDepthStencilState( pDepthStencilState_ )
+ , pColorBlendState( pColorBlendState_ )
+ , pDynamicState( pDynamicState_ )
+ , layout( layout_ )
+ , renderPass( renderPass_ )
+ , subpass( subpass_ )
+ , basePipelineHandle( basePipelineHandle_ )
+ , basePipelineIndex( basePipelineIndex_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR_14
+ GraphicsPipelineCreateInfo( GraphicsPipelineCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ GraphicsPipelineCreateInfo( VkGraphicsPipelineCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : GraphicsPipelineCreateInfo( *reinterpret_cast<GraphicsPipelineCreateInfo const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ GraphicsPipelineCreateInfo(
+ VULKAN_HPP_NAMESPACE::PipelineCreateFlags flags_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo> const &
+ stages_,
+ const VULKAN_HPP_NAMESPACE::PipelineVertexInputStateCreateInfo * pVertexInputState_ = {},
+ const VULKAN_HPP_NAMESPACE::PipelineInputAssemblyStateCreateInfo * pInputAssemblyState_ = {},
+ const VULKAN_HPP_NAMESPACE::PipelineTessellationStateCreateInfo * pTessellationState_ = {},
+ const VULKAN_HPP_NAMESPACE::PipelineViewportStateCreateInfo * pViewportState_ = {},
+ const VULKAN_HPP_NAMESPACE::PipelineRasterizationStateCreateInfo * pRasterizationState_ = {},
+ const VULKAN_HPP_NAMESPACE::PipelineMultisampleStateCreateInfo * pMultisampleState_ = {},
+ const VULKAN_HPP_NAMESPACE::PipelineDepthStencilStateCreateInfo * pDepthStencilState_ = {},
+ const VULKAN_HPP_NAMESPACE::PipelineColorBlendStateCreateInfo * pColorBlendState_ = {},
+ const VULKAN_HPP_NAMESPACE::PipelineDynamicStateCreateInfo * pDynamicState_ = {},
+ VULKAN_HPP_NAMESPACE::PipelineLayout layout_ = {},
+ VULKAN_HPP_NAMESPACE::RenderPass renderPass_ = {},
+ uint32_t subpass_ = {},
+ VULKAN_HPP_NAMESPACE::Pipeline basePipelineHandle_ = {},
+ int32_t basePipelineIndex_ = {} )
+ : flags( flags_ )
+ , stageCount( static_cast<uint32_t>( stages_.size() ) )
+ , pStages( stages_.data() )
+ , pVertexInputState( pVertexInputState_ )
+ , pInputAssemblyState( pInputAssemblyState_ )
+ , pTessellationState( pTessellationState_ )
+ , pViewportState( pViewportState_ )
+ , pRasterizationState( pRasterizationState_ )
+ , pMultisampleState( pMultisampleState_ )
+ , pDepthStencilState( pDepthStencilState_ )
+ , pColorBlendState( pColorBlendState_ )
+ , pDynamicState( pDynamicState_ )
+ , layout( layout_ )
+ , renderPass( renderPass_ )
+ , subpass( subpass_ )
+ , basePipelineHandle( basePipelineHandle_ )
+ , basePipelineIndex( basePipelineIndex_ )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 GraphicsPipelineCreateInfo &
+ operator=( GraphicsPipelineCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ GraphicsPipelineCreateInfo & operator=( VkGraphicsPipelineCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::GraphicsPipelineCreateInfo const *>( &rhs );
+ return *this;
+ }
+
+ GraphicsPipelineCreateInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ GraphicsPipelineCreateInfo & setFlags( VULKAN_HPP_NAMESPACE::PipelineCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ GraphicsPipelineCreateInfo & setStageCount( uint32_t stageCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ stageCount = stageCount_;
+ return *this;
+ }
+
+ GraphicsPipelineCreateInfo &
+ setPStages( const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo * pStages_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pStages = pStages_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ GraphicsPipelineCreateInfo & setStages(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo> const &
+ stages_ ) VULKAN_HPP_NOEXCEPT
+ {
+ stageCount = static_cast<uint32_t>( stages_.size() );
+ pStages = stages_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ GraphicsPipelineCreateInfo & setPVertexInputState(
+ const VULKAN_HPP_NAMESPACE::PipelineVertexInputStateCreateInfo * pVertexInputState_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pVertexInputState = pVertexInputState_;
+ return *this;
+ }
+
+ GraphicsPipelineCreateInfo & setPInputAssemblyState(
+ const VULKAN_HPP_NAMESPACE::PipelineInputAssemblyStateCreateInfo * pInputAssemblyState_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pInputAssemblyState = pInputAssemblyState_;
+ return *this;
+ }
+
+ GraphicsPipelineCreateInfo & setPTessellationState(
+ const VULKAN_HPP_NAMESPACE::PipelineTessellationStateCreateInfo * pTessellationState_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pTessellationState = pTessellationState_;
+ return *this;
+ }
+
+ GraphicsPipelineCreateInfo & setPViewportState(
+ const VULKAN_HPP_NAMESPACE::PipelineViewportStateCreateInfo * pViewportState_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pViewportState = pViewportState_;
+ return *this;
+ }
+
+ GraphicsPipelineCreateInfo & setPRasterizationState(
+ const VULKAN_HPP_NAMESPACE::PipelineRasterizationStateCreateInfo * pRasterizationState_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pRasterizationState = pRasterizationState_;
+ return *this;
+ }
+
+ GraphicsPipelineCreateInfo & setPMultisampleState(
+ const VULKAN_HPP_NAMESPACE::PipelineMultisampleStateCreateInfo * pMultisampleState_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pMultisampleState = pMultisampleState_;
+ return *this;
+ }
+
+ GraphicsPipelineCreateInfo & setPDepthStencilState(
+ const VULKAN_HPP_NAMESPACE::PipelineDepthStencilStateCreateInfo * pDepthStencilState_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pDepthStencilState = pDepthStencilState_;
+ return *this;
+ }
+
+ GraphicsPipelineCreateInfo & setPColorBlendState(
+ const VULKAN_HPP_NAMESPACE::PipelineColorBlendStateCreateInfo * pColorBlendState_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pColorBlendState = pColorBlendState_;
+ return *this;
+ }
+
+ GraphicsPipelineCreateInfo & setPDynamicState(
+ const VULKAN_HPP_NAMESPACE::PipelineDynamicStateCreateInfo * pDynamicState_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pDynamicState = pDynamicState_;
+ return *this;
+ }
+
+ GraphicsPipelineCreateInfo & setLayout( VULKAN_HPP_NAMESPACE::PipelineLayout layout_ ) VULKAN_HPP_NOEXCEPT
+ {
+ layout = layout_;
+ return *this;
+ }
+
+ GraphicsPipelineCreateInfo & setRenderPass( VULKAN_HPP_NAMESPACE::RenderPass renderPass_ ) VULKAN_HPP_NOEXCEPT
+ {
+ renderPass = renderPass_;
+ return *this;
+ }
+
+ GraphicsPipelineCreateInfo & setSubpass( uint32_t subpass_ ) VULKAN_HPP_NOEXCEPT
+ {
+ subpass = subpass_;
+ return *this;
+ }
+
+ GraphicsPipelineCreateInfo &
+ setBasePipelineHandle( VULKAN_HPP_NAMESPACE::Pipeline basePipelineHandle_ ) VULKAN_HPP_NOEXCEPT
+ {
+ basePipelineHandle = basePipelineHandle_;
+ return *this;
+ }
+
+ GraphicsPipelineCreateInfo & setBasePipelineIndex( int32_t basePipelineIndex_ ) VULKAN_HPP_NOEXCEPT
+ {
+ basePipelineIndex = basePipelineIndex_;
+ return *this;
+ }
+
+ operator VkGraphicsPipelineCreateInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkGraphicsPipelineCreateInfo *>( this );
+ }
+
+ operator VkGraphicsPipelineCreateInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkGraphicsPipelineCreateInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( GraphicsPipelineCreateInfo const & ) const = default;
+#else
+ bool operator==( GraphicsPipelineCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( stageCount == rhs.stageCount ) && ( pStages == rhs.pStages ) &&
+ ( pVertexInputState == rhs.pVertexInputState ) && ( pInputAssemblyState == rhs.pInputAssemblyState ) &&
+ ( pTessellationState == rhs.pTessellationState ) && ( pViewportState == rhs.pViewportState ) &&
+ ( pRasterizationState == rhs.pRasterizationState ) && ( pMultisampleState == rhs.pMultisampleState ) &&
+ ( pDepthStencilState == rhs.pDepthStencilState ) && ( pColorBlendState == rhs.pColorBlendState ) &&
+ ( pDynamicState == rhs.pDynamicState ) && ( layout == rhs.layout ) && ( renderPass == rhs.renderPass ) &&
+ ( subpass == rhs.subpass ) && ( basePipelineHandle == rhs.basePipelineHandle ) &&
+ ( basePipelineIndex == rhs.basePipelineIndex );
+ }
+
+ bool operator!=( GraphicsPipelineCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eGraphicsPipelineCreateInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::PipelineCreateFlags flags = {};
+ uint32_t stageCount = {};
+ const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo * pStages = {};
+ const VULKAN_HPP_NAMESPACE::PipelineVertexInputStateCreateInfo * pVertexInputState = {};
+ const VULKAN_HPP_NAMESPACE::PipelineInputAssemblyStateCreateInfo * pInputAssemblyState = {};
+ const VULKAN_HPP_NAMESPACE::PipelineTessellationStateCreateInfo * pTessellationState = {};
+ const VULKAN_HPP_NAMESPACE::PipelineViewportStateCreateInfo * pViewportState = {};
+ const VULKAN_HPP_NAMESPACE::PipelineRasterizationStateCreateInfo * pRasterizationState = {};
+ const VULKAN_HPP_NAMESPACE::PipelineMultisampleStateCreateInfo * pMultisampleState = {};
+ const VULKAN_HPP_NAMESPACE::PipelineDepthStencilStateCreateInfo * pDepthStencilState = {};
+ const VULKAN_HPP_NAMESPACE::PipelineColorBlendStateCreateInfo * pColorBlendState = {};
+ const VULKAN_HPP_NAMESPACE::PipelineDynamicStateCreateInfo * pDynamicState = {};
+ VULKAN_HPP_NAMESPACE::PipelineLayout layout = {};
+ VULKAN_HPP_NAMESPACE::RenderPass renderPass = {};
+ uint32_t subpass = {};
+ VULKAN_HPP_NAMESPACE::Pipeline basePipelineHandle = {};
+ int32_t basePipelineIndex = {};
+ };
+ static_assert( sizeof( GraphicsPipelineCreateInfo ) == sizeof( VkGraphicsPipelineCreateInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<GraphicsPipelineCreateInfo>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eGraphicsPipelineCreateInfo>
+ {
+ using Type = GraphicsPipelineCreateInfo;
+ };
+
+ struct GraphicsShaderGroupCreateInfoNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eGraphicsShaderGroupCreateInfoNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR GraphicsShaderGroupCreateInfoNV(
+ uint32_t stageCount_ = {},
+ const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo * pStages_ = {},
+ const VULKAN_HPP_NAMESPACE::PipelineVertexInputStateCreateInfo * pVertexInputState_ = {},
+ const VULKAN_HPP_NAMESPACE::PipelineTessellationStateCreateInfo * pTessellationState_ = {} ) VULKAN_HPP_NOEXCEPT
+ : stageCount( stageCount_ )
+ , pStages( pStages_ )
+ , pVertexInputState( pVertexInputState_ )
+ , pTessellationState( pTessellationState_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ GraphicsShaderGroupCreateInfoNV( GraphicsShaderGroupCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ GraphicsShaderGroupCreateInfoNV( VkGraphicsShaderGroupCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ : GraphicsShaderGroupCreateInfoNV( *reinterpret_cast<GraphicsShaderGroupCreateInfoNV const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ GraphicsShaderGroupCreateInfoNV(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo> const &
+ stages_,
+ const VULKAN_HPP_NAMESPACE::PipelineVertexInputStateCreateInfo * pVertexInputState_ = {},
+ const VULKAN_HPP_NAMESPACE::PipelineTessellationStateCreateInfo * pTessellationState_ = {} )
+ : stageCount( static_cast<uint32_t>( stages_.size() ) )
+ , pStages( stages_.data() )
+ , pVertexInputState( pVertexInputState_ )
+ , pTessellationState( pTessellationState_ )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 GraphicsShaderGroupCreateInfoNV &
+ operator=( GraphicsShaderGroupCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ GraphicsShaderGroupCreateInfoNV & operator=( VkGraphicsShaderGroupCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::GraphicsShaderGroupCreateInfoNV const *>( &rhs );
+ return *this;
+ }
+
+ GraphicsShaderGroupCreateInfoNV & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ GraphicsShaderGroupCreateInfoNV & setStageCount( uint32_t stageCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ stageCount = stageCount_;
+ return *this;
+ }
+
+ GraphicsShaderGroupCreateInfoNV &
+ setPStages( const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo * pStages_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pStages = pStages_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ GraphicsShaderGroupCreateInfoNV & setStages(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo> const &
+ stages_ ) VULKAN_HPP_NOEXCEPT
+ {
+ stageCount = static_cast<uint32_t>( stages_.size() );
+ pStages = stages_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ GraphicsShaderGroupCreateInfoNV & setPVertexInputState(
+ const VULKAN_HPP_NAMESPACE::PipelineVertexInputStateCreateInfo * pVertexInputState_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pVertexInputState = pVertexInputState_;
+ return *this;
+ }
+
+ GraphicsShaderGroupCreateInfoNV & setPTessellationState(
+ const VULKAN_HPP_NAMESPACE::PipelineTessellationStateCreateInfo * pTessellationState_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pTessellationState = pTessellationState_;
+ return *this;
+ }
+
+ operator VkGraphicsShaderGroupCreateInfoNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkGraphicsShaderGroupCreateInfoNV *>( this );
+ }
+
+ operator VkGraphicsShaderGroupCreateInfoNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkGraphicsShaderGroupCreateInfoNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( GraphicsShaderGroupCreateInfoNV const & ) const = default;
+#else
+ bool operator==( GraphicsShaderGroupCreateInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( stageCount == rhs.stageCount ) &&
+ ( pStages == rhs.pStages ) && ( pVertexInputState == rhs.pVertexInputState ) &&
+ ( pTessellationState == rhs.pTessellationState );
+ }
+
+ bool operator!=( GraphicsShaderGroupCreateInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eGraphicsShaderGroupCreateInfoNV;
+ const void * pNext = {};
+ uint32_t stageCount = {};
+ const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo * pStages = {};
+ const VULKAN_HPP_NAMESPACE::PipelineVertexInputStateCreateInfo * pVertexInputState = {};
+ const VULKAN_HPP_NAMESPACE::PipelineTessellationStateCreateInfo * pTessellationState = {};
+ };
+ static_assert( sizeof( GraphicsShaderGroupCreateInfoNV ) == sizeof( VkGraphicsShaderGroupCreateInfoNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<GraphicsShaderGroupCreateInfoNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eGraphicsShaderGroupCreateInfoNV>
+ {
+ using Type = GraphicsShaderGroupCreateInfoNV;
+ };
+
+ struct GraphicsPipelineShaderGroupsCreateInfoNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eGraphicsPipelineShaderGroupsCreateInfoNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR GraphicsPipelineShaderGroupsCreateInfoNV(
+ uint32_t groupCount_ = {},
+ const VULKAN_HPP_NAMESPACE::GraphicsShaderGroupCreateInfoNV * pGroups_ = {},
+ uint32_t pipelineCount_ = {},
+ const VULKAN_HPP_NAMESPACE::Pipeline * pPipelines_ = {} ) VULKAN_HPP_NOEXCEPT
+ : groupCount( groupCount_ )
+ , pGroups( pGroups_ )
+ , pipelineCount( pipelineCount_ )
+ , pPipelines( pPipelines_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR GraphicsPipelineShaderGroupsCreateInfoNV(
+ GraphicsPipelineShaderGroupsCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ GraphicsPipelineShaderGroupsCreateInfoNV( VkGraphicsPipelineShaderGroupsCreateInfoNV const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : GraphicsPipelineShaderGroupsCreateInfoNV(
+ *reinterpret_cast<GraphicsPipelineShaderGroupsCreateInfoNV const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ GraphicsPipelineShaderGroupsCreateInfoNV(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::GraphicsShaderGroupCreateInfoNV> const &
+ groups_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Pipeline> const & pipelines_ = {} )
+ : groupCount( static_cast<uint32_t>( groups_.size() ) )
+ , pGroups( groups_.data() )
+ , pipelineCount( static_cast<uint32_t>( pipelines_.size() ) )
+ , pPipelines( pipelines_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 GraphicsPipelineShaderGroupsCreateInfoNV &
+ operator=( GraphicsPipelineShaderGroupsCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ GraphicsPipelineShaderGroupsCreateInfoNV &
+ operator=( VkGraphicsPipelineShaderGroupsCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::GraphicsPipelineShaderGroupsCreateInfoNV const *>( &rhs );
+ return *this;
+ }
+
+ GraphicsPipelineShaderGroupsCreateInfoNV & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ GraphicsPipelineShaderGroupsCreateInfoNV & setGroupCount( uint32_t groupCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ groupCount = groupCount_;
+ return *this;
+ }
+
+ GraphicsPipelineShaderGroupsCreateInfoNV &
+ setPGroups( const VULKAN_HPP_NAMESPACE::GraphicsShaderGroupCreateInfoNV * pGroups_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pGroups = pGroups_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ GraphicsPipelineShaderGroupsCreateInfoNV & setGroups(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::GraphicsShaderGroupCreateInfoNV> const &
+ groups_ ) VULKAN_HPP_NOEXCEPT
+ {
+ groupCount = static_cast<uint32_t>( groups_.size() );
+ pGroups = groups_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ GraphicsPipelineShaderGroupsCreateInfoNV & setPipelineCount( uint32_t pipelineCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pipelineCount = pipelineCount_;
+ return *this;
+ }
+
+ GraphicsPipelineShaderGroupsCreateInfoNV &
+ setPPipelines( const VULKAN_HPP_NAMESPACE::Pipeline * pPipelines_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pPipelines = pPipelines_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ GraphicsPipelineShaderGroupsCreateInfoNV & setPipelines(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Pipeline> const & pipelines_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ pipelineCount = static_cast<uint32_t>( pipelines_.size() );
+ pPipelines = pipelines_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkGraphicsPipelineShaderGroupsCreateInfoNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkGraphicsPipelineShaderGroupsCreateInfoNV *>( this );
+ }
+
+ operator VkGraphicsPipelineShaderGroupsCreateInfoNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkGraphicsPipelineShaderGroupsCreateInfoNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( GraphicsPipelineShaderGroupsCreateInfoNV const & ) const = default;
+#else
+ bool operator==( GraphicsPipelineShaderGroupsCreateInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( groupCount == rhs.groupCount ) &&
+ ( pGroups == rhs.pGroups ) && ( pipelineCount == rhs.pipelineCount ) && ( pPipelines == rhs.pPipelines );
+ }
+
+ bool operator!=( GraphicsPipelineShaderGroupsCreateInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eGraphicsPipelineShaderGroupsCreateInfoNV;
+ const void * pNext = {};
+ uint32_t groupCount = {};
+ const VULKAN_HPP_NAMESPACE::GraphicsShaderGroupCreateInfoNV * pGroups = {};
+ uint32_t pipelineCount = {};
+ const VULKAN_HPP_NAMESPACE::Pipeline * pPipelines = {};
+ };
+ static_assert( sizeof( GraphicsPipelineShaderGroupsCreateInfoNV ) ==
+ sizeof( VkGraphicsPipelineShaderGroupsCreateInfoNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<GraphicsPipelineShaderGroupsCreateInfoNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eGraphicsPipelineShaderGroupsCreateInfoNV>
+ {
+ using Type = GraphicsPipelineShaderGroupsCreateInfoNV;
+ };
+
+ struct XYColorEXT
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR XYColorEXT( float x_ = {}, float y_ = {} ) VULKAN_HPP_NOEXCEPT
+ : x( x_ )
+ , y( y_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR XYColorEXT( XYColorEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ XYColorEXT( VkXYColorEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : XYColorEXT( *reinterpret_cast<XYColorEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 XYColorEXT & operator=( XYColorEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ XYColorEXT & operator=( VkXYColorEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::XYColorEXT const *>( &rhs );
+ return *this;
+ }
+
+ XYColorEXT & setX( float x_ ) VULKAN_HPP_NOEXCEPT
+ {
+ x = x_;
+ return *this;
+ }
+
+ XYColorEXT & setY( float y_ ) VULKAN_HPP_NOEXCEPT
+ {
+ y = y_;
+ return *this;
+ }
+
+ operator VkXYColorEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkXYColorEXT *>( this );
+ }
+
+ operator VkXYColorEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkXYColorEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( XYColorEXT const & ) const = default;
+#else
+ bool operator==( XYColorEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( x == rhs.x ) && ( y == rhs.y );
+ }
+
+ bool operator!=( XYColorEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ float x = {};
+ float y = {};
+ };
+ static_assert( sizeof( XYColorEXT ) == sizeof( VkXYColorEXT ), "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<XYColorEXT>::value, "struct wrapper is not a standard layout!" );
+
+ struct HdrMetadataEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eHdrMetadataEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR HdrMetadataEXT( VULKAN_HPP_NAMESPACE::XYColorEXT displayPrimaryRed_ = {},
+ VULKAN_HPP_NAMESPACE::XYColorEXT displayPrimaryGreen_ = {},
+ VULKAN_HPP_NAMESPACE::XYColorEXT displayPrimaryBlue_ = {},
+ VULKAN_HPP_NAMESPACE::XYColorEXT whitePoint_ = {},
+ float maxLuminance_ = {},
+ float minLuminance_ = {},
+ float maxContentLightLevel_ = {},
+ float maxFrameAverageLightLevel_ = {} ) VULKAN_HPP_NOEXCEPT
+ : displayPrimaryRed( displayPrimaryRed_ )
+ , displayPrimaryGreen( displayPrimaryGreen_ )
+ , displayPrimaryBlue( displayPrimaryBlue_ )
+ , whitePoint( whitePoint_ )
+ , maxLuminance( maxLuminance_ )
+ , minLuminance( minLuminance_ )
+ , maxContentLightLevel( maxContentLightLevel_ )
+ , maxFrameAverageLightLevel( maxFrameAverageLightLevel_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR HdrMetadataEXT( HdrMetadataEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ HdrMetadataEXT( VkHdrMetadataEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : HdrMetadataEXT( *reinterpret_cast<HdrMetadataEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 HdrMetadataEXT & operator=( HdrMetadataEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ HdrMetadataEXT & operator=( VkHdrMetadataEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::HdrMetadataEXT const *>( &rhs );
+ return *this;
+ }
+
+ HdrMetadataEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ HdrMetadataEXT &
+ setDisplayPrimaryRed( VULKAN_HPP_NAMESPACE::XYColorEXT const & displayPrimaryRed_ ) VULKAN_HPP_NOEXCEPT
+ {
+ displayPrimaryRed = displayPrimaryRed_;
+ return *this;
+ }
+
+ HdrMetadataEXT &
+ setDisplayPrimaryGreen( VULKAN_HPP_NAMESPACE::XYColorEXT const & displayPrimaryGreen_ ) VULKAN_HPP_NOEXCEPT
+ {
+ displayPrimaryGreen = displayPrimaryGreen_;
+ return *this;
+ }
+
+ HdrMetadataEXT &
+ setDisplayPrimaryBlue( VULKAN_HPP_NAMESPACE::XYColorEXT const & displayPrimaryBlue_ ) VULKAN_HPP_NOEXCEPT
+ {
+ displayPrimaryBlue = displayPrimaryBlue_;
+ return *this;
+ }
+
+ HdrMetadataEXT & setWhitePoint( VULKAN_HPP_NAMESPACE::XYColorEXT const & whitePoint_ ) VULKAN_HPP_NOEXCEPT
+ {
+ whitePoint = whitePoint_;
+ return *this;
+ }
+
+ HdrMetadataEXT & setMaxLuminance( float maxLuminance_ ) VULKAN_HPP_NOEXCEPT
+ {
+ maxLuminance = maxLuminance_;
+ return *this;
+ }
+
+ HdrMetadataEXT & setMinLuminance( float minLuminance_ ) VULKAN_HPP_NOEXCEPT
+ {
+ minLuminance = minLuminance_;
+ return *this;
+ }
+
+ HdrMetadataEXT & setMaxContentLightLevel( float maxContentLightLevel_ ) VULKAN_HPP_NOEXCEPT
+ {
+ maxContentLightLevel = maxContentLightLevel_;
+ return *this;
+ }
+
+ HdrMetadataEXT & setMaxFrameAverageLightLevel( float maxFrameAverageLightLevel_ ) VULKAN_HPP_NOEXCEPT
+ {
+ maxFrameAverageLightLevel = maxFrameAverageLightLevel_;
+ return *this;
+ }
+
+ operator VkHdrMetadataEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkHdrMetadataEXT *>( this );
+ }
+
+ operator VkHdrMetadataEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkHdrMetadataEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( HdrMetadataEXT const & ) const = default;
+#else
+ bool operator==( HdrMetadataEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( displayPrimaryRed == rhs.displayPrimaryRed ) &&
+ ( displayPrimaryGreen == rhs.displayPrimaryGreen ) && ( displayPrimaryBlue == rhs.displayPrimaryBlue ) &&
+ ( whitePoint == rhs.whitePoint ) && ( maxLuminance == rhs.maxLuminance ) &&
+ ( minLuminance == rhs.minLuminance ) && ( maxContentLightLevel == rhs.maxContentLightLevel ) &&
+ ( maxFrameAverageLightLevel == rhs.maxFrameAverageLightLevel );
+ }
+
+ bool operator!=( HdrMetadataEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eHdrMetadataEXT;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::XYColorEXT displayPrimaryRed = {};
+ VULKAN_HPP_NAMESPACE::XYColorEXT displayPrimaryGreen = {};
+ VULKAN_HPP_NAMESPACE::XYColorEXT displayPrimaryBlue = {};
+ VULKAN_HPP_NAMESPACE::XYColorEXT whitePoint = {};
+ float maxLuminance = {};
+ float minLuminance = {};
+ float maxContentLightLevel = {};
+ float maxFrameAverageLightLevel = {};
+ };
+ static_assert( sizeof( HdrMetadataEXT ) == sizeof( VkHdrMetadataEXT ), "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<HdrMetadataEXT>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eHdrMetadataEXT>
+ {
+ using Type = HdrMetadataEXT;
+ };
+
+ struct HeadlessSurfaceCreateInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eHeadlessSurfaceCreateInfoEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR HeadlessSurfaceCreateInfoEXT( VULKAN_HPP_NAMESPACE::HeadlessSurfaceCreateFlagsEXT flags_ = {} )
+ VULKAN_HPP_NOEXCEPT : flags( flags_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ HeadlessSurfaceCreateInfoEXT( HeadlessSurfaceCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ HeadlessSurfaceCreateInfoEXT( VkHeadlessSurfaceCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : HeadlessSurfaceCreateInfoEXT( *reinterpret_cast<HeadlessSurfaceCreateInfoEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 HeadlessSurfaceCreateInfoEXT &
+ operator=( HeadlessSurfaceCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ HeadlessSurfaceCreateInfoEXT & operator=( VkHeadlessSurfaceCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::HeadlessSurfaceCreateInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ HeadlessSurfaceCreateInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ HeadlessSurfaceCreateInfoEXT &
+ setFlags( VULKAN_HPP_NAMESPACE::HeadlessSurfaceCreateFlagsEXT flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ operator VkHeadlessSurfaceCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkHeadlessSurfaceCreateInfoEXT *>( this );
+ }
+
+ operator VkHeadlessSurfaceCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkHeadlessSurfaceCreateInfoEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( HeadlessSurfaceCreateInfoEXT const & ) const = default;
+#else
+ bool operator==( HeadlessSurfaceCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags );
+ }
+
+ bool operator!=( HeadlessSurfaceCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eHeadlessSurfaceCreateInfoEXT;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::HeadlessSurfaceCreateFlagsEXT flags = {};
+ };
+ static_assert( sizeof( HeadlessSurfaceCreateInfoEXT ) == sizeof( VkHeadlessSurfaceCreateInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<HeadlessSurfaceCreateInfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eHeadlessSurfaceCreateInfoEXT>
+ {
+ using Type = HeadlessSurfaceCreateInfoEXT;
+ };
+
+#if defined( VK_USE_PLATFORM_IOS_MVK )
+ struct IOSSurfaceCreateInfoMVK
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eIosSurfaceCreateInfoMVK;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR IOSSurfaceCreateInfoMVK( VULKAN_HPP_NAMESPACE::IOSSurfaceCreateFlagsMVK flags_ = {},
+ const void * pView_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , pView( pView_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR IOSSurfaceCreateInfoMVK( IOSSurfaceCreateInfoMVK const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ IOSSurfaceCreateInfoMVK( VkIOSSurfaceCreateInfoMVK const & rhs ) VULKAN_HPP_NOEXCEPT
+ : IOSSurfaceCreateInfoMVK( *reinterpret_cast<IOSSurfaceCreateInfoMVK const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 IOSSurfaceCreateInfoMVK &
+ operator=( IOSSurfaceCreateInfoMVK const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ IOSSurfaceCreateInfoMVK & operator=( VkIOSSurfaceCreateInfoMVK const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::IOSSurfaceCreateInfoMVK const *>( &rhs );
+ return *this;
+ }
+
+ IOSSurfaceCreateInfoMVK & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ IOSSurfaceCreateInfoMVK & setFlags( VULKAN_HPP_NAMESPACE::IOSSurfaceCreateFlagsMVK flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ IOSSurfaceCreateInfoMVK & setPView( const void * pView_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pView = pView_;
+ return *this;
+ }
+
+ operator VkIOSSurfaceCreateInfoMVK const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkIOSSurfaceCreateInfoMVK *>( this );
+ }
+
+ operator VkIOSSurfaceCreateInfoMVK &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkIOSSurfaceCreateInfoMVK *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( IOSSurfaceCreateInfoMVK const & ) const = default;
+# else
+ bool operator==( IOSSurfaceCreateInfoMVK const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) && ( pView == rhs.pView );
+ }
+
+ bool operator!=( IOSSurfaceCreateInfoMVK const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eIosSurfaceCreateInfoMVK;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::IOSSurfaceCreateFlagsMVK flags = {};
+ const void * pView = {};
+ };
+ static_assert( sizeof( IOSSurfaceCreateInfoMVK ) == sizeof( VkIOSSurfaceCreateInfoMVK ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<IOSSurfaceCreateInfoMVK>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eIosSurfaceCreateInfoMVK>
+ {
+ using Type = IOSSurfaceCreateInfoMVK;
+ };
+#endif /*VK_USE_PLATFORM_IOS_MVK*/
+
+ struct ImageBlit
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR_14
+ ImageBlit( VULKAN_HPP_NAMESPACE::ImageSubresourceLayers srcSubresource_ = {},
+ std::array<VULKAN_HPP_NAMESPACE::Offset3D, 2> const & srcOffsets_ = {},
+ VULKAN_HPP_NAMESPACE::ImageSubresourceLayers dstSubresource_ = {},
+ std::array<VULKAN_HPP_NAMESPACE::Offset3D, 2> const & dstOffsets_ = {} ) VULKAN_HPP_NOEXCEPT
+ : srcSubresource( srcSubresource_ )
+ , srcOffsets( srcOffsets_ )
+ , dstSubresource( dstSubresource_ )
+ , dstOffsets( dstOffsets_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR_14 ImageBlit( ImageBlit const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImageBlit( VkImageBlit const & rhs ) VULKAN_HPP_NOEXCEPT : ImageBlit( *reinterpret_cast<ImageBlit const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ImageBlit & operator=( ImageBlit const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImageBlit & operator=( VkImageBlit const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageBlit const *>( &rhs );
+ return *this;
+ }
+
+ ImageBlit &
+ setSrcSubresource( VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const & srcSubresource_ ) VULKAN_HPP_NOEXCEPT
+ {
+ srcSubresource = srcSubresource_;
+ return *this;
+ }
+
+ ImageBlit & setSrcOffsets( std::array<VULKAN_HPP_NAMESPACE::Offset3D, 2> const & srcOffsets_ ) VULKAN_HPP_NOEXCEPT
+ {
+ srcOffsets = srcOffsets_;
+ return *this;
+ }
+
+ ImageBlit &
+ setDstSubresource( VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const & dstSubresource_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstSubresource = dstSubresource_;
+ return *this;
+ }
+
+ ImageBlit & setDstOffsets( std::array<VULKAN_HPP_NAMESPACE::Offset3D, 2> const & dstOffsets_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstOffsets = dstOffsets_;
+ return *this;
+ }
+
+ operator VkImageBlit const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkImageBlit *>( this );
+ }
+
+ operator VkImageBlit &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkImageBlit *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ImageBlit const & ) const = default;
+#else
+ bool operator==( ImageBlit const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( srcSubresource == rhs.srcSubresource ) && ( srcOffsets == rhs.srcOffsets ) &&
+ ( dstSubresource == rhs.dstSubresource ) && ( dstOffsets == rhs.dstOffsets );
+ }
+
+ bool operator!=( ImageBlit const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::ImageSubresourceLayers srcSubresource = {};
+ VULKAN_HPP_NAMESPACE::ArrayWrapper1D<VULKAN_HPP_NAMESPACE::Offset3D, 2> srcOffsets = {};
+ VULKAN_HPP_NAMESPACE::ImageSubresourceLayers dstSubresource = {};
+ VULKAN_HPP_NAMESPACE::ArrayWrapper1D<VULKAN_HPP_NAMESPACE::Offset3D, 2> dstOffsets = {};
+ };
+ static_assert( sizeof( ImageBlit ) == sizeof( VkImageBlit ), "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ImageBlit>::value, "struct wrapper is not a standard layout!" );
+
+ struct ImageCopy
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR ImageCopy( VULKAN_HPP_NAMESPACE::ImageSubresourceLayers srcSubresource_ = {},
+ VULKAN_HPP_NAMESPACE::Offset3D srcOffset_ = {},
+ VULKAN_HPP_NAMESPACE::ImageSubresourceLayers dstSubresource_ = {},
+ VULKAN_HPP_NAMESPACE::Offset3D dstOffset_ = {},
+ VULKAN_HPP_NAMESPACE::Extent3D extent_ = {} ) VULKAN_HPP_NOEXCEPT
+ : srcSubresource( srcSubresource_ )
+ , srcOffset( srcOffset_ )
+ , dstSubresource( dstSubresource_ )
+ , dstOffset( dstOffset_ )
+ , extent( extent_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR ImageCopy( ImageCopy const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImageCopy( VkImageCopy const & rhs ) VULKAN_HPP_NOEXCEPT : ImageCopy( *reinterpret_cast<ImageCopy const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ImageCopy & operator=( ImageCopy const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImageCopy & operator=( VkImageCopy const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageCopy const *>( &rhs );
+ return *this;
+ }
+
+ ImageCopy &
+ setSrcSubresource( VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const & srcSubresource_ ) VULKAN_HPP_NOEXCEPT
+ {
+ srcSubresource = srcSubresource_;
+ return *this;
+ }
+
+ ImageCopy & setSrcOffset( VULKAN_HPP_NAMESPACE::Offset3D const & srcOffset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ srcOffset = srcOffset_;
+ return *this;
+ }
+
+ ImageCopy &
+ setDstSubresource( VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const & dstSubresource_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstSubresource = dstSubresource_;
+ return *this;
+ }
+
+ ImageCopy & setDstOffset( VULKAN_HPP_NAMESPACE::Offset3D const & dstOffset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstOffset = dstOffset_;
+ return *this;
+ }
+
+ ImageCopy & setExtent( VULKAN_HPP_NAMESPACE::Extent3D const & extent_ ) VULKAN_HPP_NOEXCEPT
+ {
+ extent = extent_;
+ return *this;
+ }
+
+ operator VkImageCopy const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkImageCopy *>( this );
+ }
+
+ operator VkImageCopy &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkImageCopy *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ImageCopy const & ) const = default;
+#else
+ bool operator==( ImageCopy const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( srcSubresource == rhs.srcSubresource ) && ( srcOffset == rhs.srcOffset ) &&
+ ( dstSubresource == rhs.dstSubresource ) && ( dstOffset == rhs.dstOffset ) && ( extent == rhs.extent );
+ }
+
+ bool operator!=( ImageCopy const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::ImageSubresourceLayers srcSubresource = {};
+ VULKAN_HPP_NAMESPACE::Offset3D srcOffset = {};
+ VULKAN_HPP_NAMESPACE::ImageSubresourceLayers dstSubresource = {};
+ VULKAN_HPP_NAMESPACE::Offset3D dstOffset = {};
+ VULKAN_HPP_NAMESPACE::Extent3D extent = {};
+ };
+ static_assert( sizeof( ImageCopy ) == sizeof( VkImageCopy ), "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ImageCopy>::value, "struct wrapper is not a standard layout!" );
+
+ struct ImageCreateInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImageCreateInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR ImageCreateInfo(
+ VULKAN_HPP_NAMESPACE::ImageCreateFlags flags_ = {},
+ VULKAN_HPP_NAMESPACE::ImageType imageType_ = VULKAN_HPP_NAMESPACE::ImageType::e1D,
+ VULKAN_HPP_NAMESPACE::Format format_ = VULKAN_HPP_NAMESPACE::Format::eUndefined,
+ VULKAN_HPP_NAMESPACE::Extent3D extent_ = {},
+ uint32_t mipLevels_ = {},
+ uint32_t arrayLayers_ = {},
+ VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples_ = VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1,
+ VULKAN_HPP_NAMESPACE::ImageTiling tiling_ = VULKAN_HPP_NAMESPACE::ImageTiling::eOptimal,
+ VULKAN_HPP_NAMESPACE::ImageUsageFlags usage_ = {},
+ VULKAN_HPP_NAMESPACE::SharingMode sharingMode_ = VULKAN_HPP_NAMESPACE::SharingMode::eExclusive,
+ uint32_t queueFamilyIndexCount_ = {},
+ const uint32_t * pQueueFamilyIndices_ = {},
+ VULKAN_HPP_NAMESPACE::ImageLayout initialLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined )
+ VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , imageType( imageType_ )
+ , format( format_ )
+ , extent( extent_ )
+ , mipLevels( mipLevels_ )
+ , arrayLayers( arrayLayers_ )
+ , samples( samples_ )
+ , tiling( tiling_ )
+ , usage( usage_ )
+ , sharingMode( sharingMode_ )
+ , queueFamilyIndexCount( queueFamilyIndexCount_ )
+ , pQueueFamilyIndices( pQueueFamilyIndices_ )
+ , initialLayout( initialLayout_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR ImageCreateInfo( ImageCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImageCreateInfo( VkImageCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ImageCreateInfo( *reinterpret_cast<ImageCreateInfo const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ ImageCreateInfo( VULKAN_HPP_NAMESPACE::ImageCreateFlags flags_,
+ VULKAN_HPP_NAMESPACE::ImageType imageType_,
+ VULKAN_HPP_NAMESPACE::Format format_,
+ VULKAN_HPP_NAMESPACE::Extent3D extent_,
+ uint32_t mipLevels_,
+ uint32_t arrayLayers_,
+ VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples_,
+ VULKAN_HPP_NAMESPACE::ImageTiling tiling_,
+ VULKAN_HPP_NAMESPACE::ImageUsageFlags usage_,
+ VULKAN_HPP_NAMESPACE::SharingMode sharingMode_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & queueFamilyIndices_,
+ VULKAN_HPP_NAMESPACE::ImageLayout initialLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined )
+ : flags( flags_ )
+ , imageType( imageType_ )
+ , format( format_ )
+ , extent( extent_ )
+ , mipLevels( mipLevels_ )
+ , arrayLayers( arrayLayers_ )
+ , samples( samples_ )
+ , tiling( tiling_ )
+ , usage( usage_ )
+ , sharingMode( sharingMode_ )
+ , queueFamilyIndexCount( static_cast<uint32_t>( queueFamilyIndices_.size() ) )
+ , pQueueFamilyIndices( queueFamilyIndices_.data() )
+ , initialLayout( initialLayout_ )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ImageCreateInfo & operator=( ImageCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImageCreateInfo & operator=( VkImageCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageCreateInfo const *>( &rhs );
+ return *this;
+ }
+
+ ImageCreateInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ ImageCreateInfo & setFlags( VULKAN_HPP_NAMESPACE::ImageCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ ImageCreateInfo & setImageType( VULKAN_HPP_NAMESPACE::ImageType imageType_ ) VULKAN_HPP_NOEXCEPT
+ {
+ imageType = imageType_;
+ return *this;
+ }
+
+ ImageCreateInfo & setFormat( VULKAN_HPP_NAMESPACE::Format format_ ) VULKAN_HPP_NOEXCEPT
+ {
+ format = format_;
+ return *this;
+ }
+
+ ImageCreateInfo & setExtent( VULKAN_HPP_NAMESPACE::Extent3D const & extent_ ) VULKAN_HPP_NOEXCEPT
+ {
+ extent = extent_;
+ return *this;
+ }
+
+ ImageCreateInfo & setMipLevels( uint32_t mipLevels_ ) VULKAN_HPP_NOEXCEPT
+ {
+ mipLevels = mipLevels_;
+ return *this;
+ }
+
+ ImageCreateInfo & setArrayLayers( uint32_t arrayLayers_ ) VULKAN_HPP_NOEXCEPT
+ {
+ arrayLayers = arrayLayers_;
+ return *this;
+ }
+
+ ImageCreateInfo & setSamples( VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples_ ) VULKAN_HPP_NOEXCEPT
+ {
+ samples = samples_;
+ return *this;
+ }
+
+ ImageCreateInfo & setTiling( VULKAN_HPP_NAMESPACE::ImageTiling tiling_ ) VULKAN_HPP_NOEXCEPT
+ {
+ tiling = tiling_;
+ return *this;
+ }
+
+ ImageCreateInfo & setUsage( VULKAN_HPP_NAMESPACE::ImageUsageFlags usage_ ) VULKAN_HPP_NOEXCEPT
+ {
+ usage = usage_;
+ return *this;
+ }
+
+ ImageCreateInfo & setSharingMode( VULKAN_HPP_NAMESPACE::SharingMode sharingMode_ ) VULKAN_HPP_NOEXCEPT
+ {
+ sharingMode = sharingMode_;
+ return *this;
+ }
+
+ ImageCreateInfo & setQueueFamilyIndexCount( uint32_t queueFamilyIndexCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ queueFamilyIndexCount = queueFamilyIndexCount_;
+ return *this;
+ }
+
+ ImageCreateInfo & setPQueueFamilyIndices( const uint32_t * pQueueFamilyIndices_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pQueueFamilyIndices = pQueueFamilyIndices_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ ImageCreateInfo & setQueueFamilyIndices(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & queueFamilyIndices_ ) VULKAN_HPP_NOEXCEPT
+ {
+ queueFamilyIndexCount = static_cast<uint32_t>( queueFamilyIndices_.size() );
+ pQueueFamilyIndices = queueFamilyIndices_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ ImageCreateInfo & setInitialLayout( VULKAN_HPP_NAMESPACE::ImageLayout initialLayout_ ) VULKAN_HPP_NOEXCEPT
+ {
+ initialLayout = initialLayout_;
+ return *this;
+ }
+
+ operator VkImageCreateInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkImageCreateInfo *>( this );
+ }
+
+ operator VkImageCreateInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkImageCreateInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ImageCreateInfo const & ) const = default;
+#else
+ bool operator==( ImageCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( imageType == rhs.imageType ) && ( format == rhs.format ) && ( extent == rhs.extent ) &&
+ ( mipLevels == rhs.mipLevels ) && ( arrayLayers == rhs.arrayLayers ) && ( samples == rhs.samples ) &&
+ ( tiling == rhs.tiling ) && ( usage == rhs.usage ) && ( sharingMode == rhs.sharingMode ) &&
+ ( queueFamilyIndexCount == rhs.queueFamilyIndexCount ) &&
+ ( pQueueFamilyIndices == rhs.pQueueFamilyIndices ) && ( initialLayout == rhs.initialLayout );
+ }
+
+ bool operator!=( ImageCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageCreateInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ImageCreateFlags flags = {};
+ VULKAN_HPP_NAMESPACE::ImageType imageType = VULKAN_HPP_NAMESPACE::ImageType::e1D;
+ VULKAN_HPP_NAMESPACE::Format format = VULKAN_HPP_NAMESPACE::Format::eUndefined;
+ VULKAN_HPP_NAMESPACE::Extent3D extent = {};
+ uint32_t mipLevels = {};
+ uint32_t arrayLayers = {};
+ VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples = VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1;
+ VULKAN_HPP_NAMESPACE::ImageTiling tiling = VULKAN_HPP_NAMESPACE::ImageTiling::eOptimal;
+ VULKAN_HPP_NAMESPACE::ImageUsageFlags usage = {};
+ VULKAN_HPP_NAMESPACE::SharingMode sharingMode = VULKAN_HPP_NAMESPACE::SharingMode::eExclusive;
+ uint32_t queueFamilyIndexCount = {};
+ const uint32_t * pQueueFamilyIndices = {};
+ VULKAN_HPP_NAMESPACE::ImageLayout initialLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
+ };
+ static_assert( sizeof( ImageCreateInfo ) == sizeof( VkImageCreateInfo ), "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ImageCreateInfo>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eImageCreateInfo>
+ {
+ using Type = ImageCreateInfo;
+ };
+
+ struct SubresourceLayout
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR SubresourceLayout( VULKAN_HPP_NAMESPACE::DeviceSize offset_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize size_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize rowPitch_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize arrayPitch_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize depthPitch_ = {} ) VULKAN_HPP_NOEXCEPT
+ : offset( offset_ )
+ , size( size_ )
+ , rowPitch( rowPitch_ )
+ , arrayPitch( arrayPitch_ )
+ , depthPitch( depthPitch_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR SubresourceLayout( SubresourceLayout const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SubresourceLayout( VkSubresourceLayout const & rhs ) VULKAN_HPP_NOEXCEPT
+ : SubresourceLayout( *reinterpret_cast<SubresourceLayout const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 SubresourceLayout &
+ operator=( SubresourceLayout const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SubresourceLayout & operator=( VkSubresourceLayout const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SubresourceLayout const *>( &rhs );
+ return *this;
+ }
+
+ operator VkSubresourceLayout const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkSubresourceLayout *>( this );
+ }
+
+ operator VkSubresourceLayout &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkSubresourceLayout *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( SubresourceLayout const & ) const = default;
+#else
+ bool operator==( SubresourceLayout const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( offset == rhs.offset ) && ( size == rhs.size ) && ( rowPitch == rhs.rowPitch ) &&
+ ( arrayPitch == rhs.arrayPitch ) && ( depthPitch == rhs.depthPitch );
+ }
+
+ bool operator!=( SubresourceLayout const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::DeviceSize offset = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize size = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize rowPitch = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize arrayPitch = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize depthPitch = {};
+ };
+ static_assert( sizeof( SubresourceLayout ) == sizeof( VkSubresourceLayout ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<SubresourceLayout>::value, "struct wrapper is not a standard layout!" );
+
+ struct ImageDrmFormatModifierExplicitCreateInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eImageDrmFormatModifierExplicitCreateInfoEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR ImageDrmFormatModifierExplicitCreateInfoEXT(
+ uint64_t drmFormatModifier_ = {},
+ uint32_t drmFormatModifierPlaneCount_ = {},
+ const VULKAN_HPP_NAMESPACE::SubresourceLayout * pPlaneLayouts_ = {} ) VULKAN_HPP_NOEXCEPT
+ : drmFormatModifier( drmFormatModifier_ )
+ , drmFormatModifierPlaneCount( drmFormatModifierPlaneCount_ )
+ , pPlaneLayouts( pPlaneLayouts_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR ImageDrmFormatModifierExplicitCreateInfoEXT(
+ ImageDrmFormatModifierExplicitCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImageDrmFormatModifierExplicitCreateInfoEXT( VkImageDrmFormatModifierExplicitCreateInfoEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : ImageDrmFormatModifierExplicitCreateInfoEXT(
+ *reinterpret_cast<ImageDrmFormatModifierExplicitCreateInfoEXT const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ ImageDrmFormatModifierExplicitCreateInfoEXT(
+ uint64_t drmFormatModifier_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SubresourceLayout> const &
+ planeLayouts_ )
+ : drmFormatModifier( drmFormatModifier_ )
+ , drmFormatModifierPlaneCount( static_cast<uint32_t>( planeLayouts_.size() ) )
+ , pPlaneLayouts( planeLayouts_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ImageDrmFormatModifierExplicitCreateInfoEXT &
+ operator=( ImageDrmFormatModifierExplicitCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImageDrmFormatModifierExplicitCreateInfoEXT &
+ operator=( VkImageDrmFormatModifierExplicitCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageDrmFormatModifierExplicitCreateInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ ImageDrmFormatModifierExplicitCreateInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ ImageDrmFormatModifierExplicitCreateInfoEXT &
+ setDrmFormatModifier( uint64_t drmFormatModifier_ ) VULKAN_HPP_NOEXCEPT
+ {
+ drmFormatModifier = drmFormatModifier_;
+ return *this;
+ }
+
+ ImageDrmFormatModifierExplicitCreateInfoEXT &
+ setDrmFormatModifierPlaneCount( uint32_t drmFormatModifierPlaneCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ drmFormatModifierPlaneCount = drmFormatModifierPlaneCount_;
+ return *this;
+ }
+
+ ImageDrmFormatModifierExplicitCreateInfoEXT &
+ setPPlaneLayouts( const VULKAN_HPP_NAMESPACE::SubresourceLayout * pPlaneLayouts_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pPlaneLayouts = pPlaneLayouts_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ ImageDrmFormatModifierExplicitCreateInfoEXT & setPlaneLayouts(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SubresourceLayout> const &
+ planeLayouts_ ) VULKAN_HPP_NOEXCEPT
+ {
+ drmFormatModifierPlaneCount = static_cast<uint32_t>( planeLayouts_.size() );
+ pPlaneLayouts = planeLayouts_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkImageDrmFormatModifierExplicitCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkImageDrmFormatModifierExplicitCreateInfoEXT *>( this );
+ }
+
+ operator VkImageDrmFormatModifierExplicitCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkImageDrmFormatModifierExplicitCreateInfoEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ImageDrmFormatModifierExplicitCreateInfoEXT const & ) const = default;
+#else
+ bool operator==( ImageDrmFormatModifierExplicitCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( drmFormatModifier == rhs.drmFormatModifier ) &&
+ ( drmFormatModifierPlaneCount == rhs.drmFormatModifierPlaneCount ) &&
+ ( pPlaneLayouts == rhs.pPlaneLayouts );
+ }
+
+ bool operator!=( ImageDrmFormatModifierExplicitCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageDrmFormatModifierExplicitCreateInfoEXT;
+ const void * pNext = {};
+ uint64_t drmFormatModifier = {};
+ uint32_t drmFormatModifierPlaneCount = {};
+ const VULKAN_HPP_NAMESPACE::SubresourceLayout * pPlaneLayouts = {};
+ };
+ static_assert( sizeof( ImageDrmFormatModifierExplicitCreateInfoEXT ) ==
+ sizeof( VkImageDrmFormatModifierExplicitCreateInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ImageDrmFormatModifierExplicitCreateInfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eImageDrmFormatModifierExplicitCreateInfoEXT>
+ {
+ using Type = ImageDrmFormatModifierExplicitCreateInfoEXT;
+ };
+
+ struct ImageDrmFormatModifierListCreateInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eImageDrmFormatModifierListCreateInfoEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ ImageDrmFormatModifierListCreateInfoEXT( uint32_t drmFormatModifierCount_ = {},
+ const uint64_t * pDrmFormatModifiers_ = {} ) VULKAN_HPP_NOEXCEPT
+ : drmFormatModifierCount( drmFormatModifierCount_ )
+ , pDrmFormatModifiers( pDrmFormatModifiers_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR ImageDrmFormatModifierListCreateInfoEXT( ImageDrmFormatModifierListCreateInfoEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ ImageDrmFormatModifierListCreateInfoEXT( VkImageDrmFormatModifierListCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ImageDrmFormatModifierListCreateInfoEXT(
+ *reinterpret_cast<ImageDrmFormatModifierListCreateInfoEXT const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ ImageDrmFormatModifierListCreateInfoEXT(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const & drmFormatModifiers_ )
+ : drmFormatModifierCount( static_cast<uint32_t>( drmFormatModifiers_.size() ) )
+ , pDrmFormatModifiers( drmFormatModifiers_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ImageDrmFormatModifierListCreateInfoEXT &
+ operator=( ImageDrmFormatModifierListCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImageDrmFormatModifierListCreateInfoEXT &
+ operator=( VkImageDrmFormatModifierListCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageDrmFormatModifierListCreateInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ ImageDrmFormatModifierListCreateInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ ImageDrmFormatModifierListCreateInfoEXT &
+ setDrmFormatModifierCount( uint32_t drmFormatModifierCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ drmFormatModifierCount = drmFormatModifierCount_;
+ return *this;
+ }
+
+ ImageDrmFormatModifierListCreateInfoEXT &
+ setPDrmFormatModifiers( const uint64_t * pDrmFormatModifiers_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pDrmFormatModifiers = pDrmFormatModifiers_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ ImageDrmFormatModifierListCreateInfoEXT & setDrmFormatModifiers(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const & drmFormatModifiers_ ) VULKAN_HPP_NOEXCEPT
+ {
+ drmFormatModifierCount = static_cast<uint32_t>( drmFormatModifiers_.size() );
+ pDrmFormatModifiers = drmFormatModifiers_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkImageDrmFormatModifierListCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkImageDrmFormatModifierListCreateInfoEXT *>( this );
+ }
+
+ operator VkImageDrmFormatModifierListCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkImageDrmFormatModifierListCreateInfoEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ImageDrmFormatModifierListCreateInfoEXT const & ) const = default;
+#else
+ bool operator==( ImageDrmFormatModifierListCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( drmFormatModifierCount == rhs.drmFormatModifierCount ) &&
+ ( pDrmFormatModifiers == rhs.pDrmFormatModifiers );
+ }
+
+ bool operator!=( ImageDrmFormatModifierListCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageDrmFormatModifierListCreateInfoEXT;
+ const void * pNext = {};
+ uint32_t drmFormatModifierCount = {};
+ const uint64_t * pDrmFormatModifiers = {};
+ };
+ static_assert( sizeof( ImageDrmFormatModifierListCreateInfoEXT ) ==
+ sizeof( VkImageDrmFormatModifierListCreateInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ImageDrmFormatModifierListCreateInfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eImageDrmFormatModifierListCreateInfoEXT>
+ {
+ using Type = ImageDrmFormatModifierListCreateInfoEXT;
+ };
+
+ struct ImageDrmFormatModifierPropertiesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eImageDrmFormatModifierPropertiesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR ImageDrmFormatModifierPropertiesEXT( uint64_t drmFormatModifier_ = {} ) VULKAN_HPP_NOEXCEPT
+ : drmFormatModifier( drmFormatModifier_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR ImageDrmFormatModifierPropertiesEXT( ImageDrmFormatModifierPropertiesEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ ImageDrmFormatModifierPropertiesEXT( VkImageDrmFormatModifierPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ImageDrmFormatModifierPropertiesEXT( *reinterpret_cast<ImageDrmFormatModifierPropertiesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ImageDrmFormatModifierPropertiesEXT &
+ operator=( ImageDrmFormatModifierPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImageDrmFormatModifierPropertiesEXT &
+ operator=( VkImageDrmFormatModifierPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageDrmFormatModifierPropertiesEXT const *>( &rhs );
+ return *this;
+ }
+
+ operator VkImageDrmFormatModifierPropertiesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkImageDrmFormatModifierPropertiesEXT *>( this );
+ }
+
+ operator VkImageDrmFormatModifierPropertiesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkImageDrmFormatModifierPropertiesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ImageDrmFormatModifierPropertiesEXT const & ) const = default;
+#else
+ bool operator==( ImageDrmFormatModifierPropertiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( drmFormatModifier == rhs.drmFormatModifier );
+ }
+
+ bool operator!=( ImageDrmFormatModifierPropertiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageDrmFormatModifierPropertiesEXT;
+ void * pNext = {};
+ uint64_t drmFormatModifier = {};
+ };
+ static_assert( sizeof( ImageDrmFormatModifierPropertiesEXT ) == sizeof( VkImageDrmFormatModifierPropertiesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ImageDrmFormatModifierPropertiesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eImageDrmFormatModifierPropertiesEXT>
+ {
+ using Type = ImageDrmFormatModifierPropertiesEXT;
+ };
+
+ struct ImageFormatListCreateInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImageFormatListCreateInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ ImageFormatListCreateInfo( uint32_t viewFormatCount_ = {},
+ const VULKAN_HPP_NAMESPACE::Format * pViewFormats_ = {} ) VULKAN_HPP_NOEXCEPT
+ : viewFormatCount( viewFormatCount_ )
+ , pViewFormats( pViewFormats_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ ImageFormatListCreateInfo( ImageFormatListCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImageFormatListCreateInfo( VkImageFormatListCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ImageFormatListCreateInfo( *reinterpret_cast<ImageFormatListCreateInfo const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ ImageFormatListCreateInfo(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Format> const & viewFormats_ )
+ : viewFormatCount( static_cast<uint32_t>( viewFormats_.size() ) ), pViewFormats( viewFormats_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ImageFormatListCreateInfo &
+ operator=( ImageFormatListCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImageFormatListCreateInfo & operator=( VkImageFormatListCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageFormatListCreateInfo const *>( &rhs );
+ return *this;
+ }
+
+ ImageFormatListCreateInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ ImageFormatListCreateInfo & setViewFormatCount( uint32_t viewFormatCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ viewFormatCount = viewFormatCount_;
+ return *this;
+ }
+
+ ImageFormatListCreateInfo &
+ setPViewFormats( const VULKAN_HPP_NAMESPACE::Format * pViewFormats_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pViewFormats = pViewFormats_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ ImageFormatListCreateInfo & setViewFormats(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Format> const & viewFormats_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ viewFormatCount = static_cast<uint32_t>( viewFormats_.size() );
+ pViewFormats = viewFormats_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkImageFormatListCreateInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkImageFormatListCreateInfo *>( this );
+ }
+
+ operator VkImageFormatListCreateInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkImageFormatListCreateInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ImageFormatListCreateInfo const & ) const = default;
+#else
+ bool operator==( ImageFormatListCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( viewFormatCount == rhs.viewFormatCount ) &&
+ ( pViewFormats == rhs.pViewFormats );
+ }
+
+ bool operator!=( ImageFormatListCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageFormatListCreateInfo;
+ const void * pNext = {};
+ uint32_t viewFormatCount = {};
+ const VULKAN_HPP_NAMESPACE::Format * pViewFormats = {};
+ };
+ static_assert( sizeof( ImageFormatListCreateInfo ) == sizeof( VkImageFormatListCreateInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ImageFormatListCreateInfo>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eImageFormatListCreateInfo>
+ {
+ using Type = ImageFormatListCreateInfo;
+ };
+ using ImageFormatListCreateInfoKHR = ImageFormatListCreateInfo;
+
+ struct ImageFormatProperties2
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImageFormatProperties2;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR ImageFormatProperties2(
+ VULKAN_HPP_NAMESPACE::ImageFormatProperties imageFormatProperties_ = {} ) VULKAN_HPP_NOEXCEPT
+ : imageFormatProperties( imageFormatProperties_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR ImageFormatProperties2( ImageFormatProperties2 const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImageFormatProperties2( VkImageFormatProperties2 const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ImageFormatProperties2( *reinterpret_cast<ImageFormatProperties2 const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ImageFormatProperties2 &
+ operator=( ImageFormatProperties2 const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImageFormatProperties2 & operator=( VkImageFormatProperties2 const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageFormatProperties2 const *>( &rhs );
+ return *this;
+ }
+
+ operator VkImageFormatProperties2 const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkImageFormatProperties2 *>( this );
+ }
+
+ operator VkImageFormatProperties2 &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkImageFormatProperties2 *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ImageFormatProperties2 const & ) const = default;
+#else
+ bool operator==( ImageFormatProperties2 const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( imageFormatProperties == rhs.imageFormatProperties );
+ }
+
+ bool operator!=( ImageFormatProperties2 const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageFormatProperties2;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ImageFormatProperties imageFormatProperties = {};
+ };
+ static_assert( sizeof( ImageFormatProperties2 ) == sizeof( VkImageFormatProperties2 ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ImageFormatProperties2>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eImageFormatProperties2>
+ {
+ using Type = ImageFormatProperties2;
+ };
+ using ImageFormatProperties2KHR = ImageFormatProperties2;
+
+ struct ImageMemoryBarrier
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImageMemoryBarrier;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ ImageMemoryBarrier( VULKAN_HPP_NAMESPACE::AccessFlags srcAccessMask_ = {},
+ VULKAN_HPP_NAMESPACE::AccessFlags dstAccessMask_ = {},
+ VULKAN_HPP_NAMESPACE::ImageLayout oldLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined,
+ VULKAN_HPP_NAMESPACE::ImageLayout newLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined,
+ uint32_t srcQueueFamilyIndex_ = {},
+ uint32_t dstQueueFamilyIndex_ = {},
+ VULKAN_HPP_NAMESPACE::Image image_ = {},
+ VULKAN_HPP_NAMESPACE::ImageSubresourceRange subresourceRange_ = {} ) VULKAN_HPP_NOEXCEPT
+ : srcAccessMask( srcAccessMask_ )
+ , dstAccessMask( dstAccessMask_ )
+ , oldLayout( oldLayout_ )
+ , newLayout( newLayout_ )
+ , srcQueueFamilyIndex( srcQueueFamilyIndex_ )
+ , dstQueueFamilyIndex( dstQueueFamilyIndex_ )
+ , image( image_ )
+ , subresourceRange( subresourceRange_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR ImageMemoryBarrier( ImageMemoryBarrier const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImageMemoryBarrier( VkImageMemoryBarrier const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ImageMemoryBarrier( *reinterpret_cast<ImageMemoryBarrier const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ImageMemoryBarrier &
+ operator=( ImageMemoryBarrier const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImageMemoryBarrier & operator=( VkImageMemoryBarrier const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageMemoryBarrier const *>( &rhs );
+ return *this;
+ }
+
+ ImageMemoryBarrier & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ ImageMemoryBarrier & setSrcAccessMask( VULKAN_HPP_NAMESPACE::AccessFlags srcAccessMask_ ) VULKAN_HPP_NOEXCEPT
+ {
+ srcAccessMask = srcAccessMask_;
+ return *this;
+ }
+
+ ImageMemoryBarrier & setDstAccessMask( VULKAN_HPP_NAMESPACE::AccessFlags dstAccessMask_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstAccessMask = dstAccessMask_;
+ return *this;
+ }
+
+ ImageMemoryBarrier & setOldLayout( VULKAN_HPP_NAMESPACE::ImageLayout oldLayout_ ) VULKAN_HPP_NOEXCEPT
+ {
+ oldLayout = oldLayout_;
+ return *this;
+ }
+
+ ImageMemoryBarrier & setNewLayout( VULKAN_HPP_NAMESPACE::ImageLayout newLayout_ ) VULKAN_HPP_NOEXCEPT
+ {
+ newLayout = newLayout_;
+ return *this;
+ }
+
+ ImageMemoryBarrier & setSrcQueueFamilyIndex( uint32_t srcQueueFamilyIndex_ ) VULKAN_HPP_NOEXCEPT
+ {
+ srcQueueFamilyIndex = srcQueueFamilyIndex_;
+ return *this;
+ }
+
+ ImageMemoryBarrier & setDstQueueFamilyIndex( uint32_t dstQueueFamilyIndex_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstQueueFamilyIndex = dstQueueFamilyIndex_;
+ return *this;
+ }
+
+ ImageMemoryBarrier & setImage( VULKAN_HPP_NAMESPACE::Image image_ ) VULKAN_HPP_NOEXCEPT
+ {
+ image = image_;
+ return *this;
+ }
+
+ ImageMemoryBarrier &
+ setSubresourceRange( VULKAN_HPP_NAMESPACE::ImageSubresourceRange const & subresourceRange_ ) VULKAN_HPP_NOEXCEPT
+ {
+ subresourceRange = subresourceRange_;
+ return *this;
+ }
+
+ operator VkImageMemoryBarrier const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkImageMemoryBarrier *>( this );
+ }
+
+ operator VkImageMemoryBarrier &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkImageMemoryBarrier *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ImageMemoryBarrier const & ) const = default;
+#else
+ bool operator==( ImageMemoryBarrier const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( srcAccessMask == rhs.srcAccessMask ) &&
+ ( dstAccessMask == rhs.dstAccessMask ) && ( oldLayout == rhs.oldLayout ) &&
+ ( newLayout == rhs.newLayout ) && ( srcQueueFamilyIndex == rhs.srcQueueFamilyIndex ) &&
+ ( dstQueueFamilyIndex == rhs.dstQueueFamilyIndex ) && ( image == rhs.image ) &&
+ ( subresourceRange == rhs.subresourceRange );
+ }
+
+ bool operator!=( ImageMemoryBarrier const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageMemoryBarrier;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::AccessFlags srcAccessMask = {};
+ VULKAN_HPP_NAMESPACE::AccessFlags dstAccessMask = {};
+ VULKAN_HPP_NAMESPACE::ImageLayout oldLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
+ VULKAN_HPP_NAMESPACE::ImageLayout newLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
+ uint32_t srcQueueFamilyIndex = {};
+ uint32_t dstQueueFamilyIndex = {};
+ VULKAN_HPP_NAMESPACE::Image image = {};
+ VULKAN_HPP_NAMESPACE::ImageSubresourceRange subresourceRange = {};
+ };
+ static_assert( sizeof( ImageMemoryBarrier ) == sizeof( VkImageMemoryBarrier ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ImageMemoryBarrier>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eImageMemoryBarrier>
+ {
+ using Type = ImageMemoryBarrier;
+ };
+
+ struct ImageMemoryRequirementsInfo2
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImageMemoryRequirementsInfo2;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR ImageMemoryRequirementsInfo2( VULKAN_HPP_NAMESPACE::Image image_ = {} ) VULKAN_HPP_NOEXCEPT
+ : image( image_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ ImageMemoryRequirementsInfo2( ImageMemoryRequirementsInfo2 const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImageMemoryRequirementsInfo2( VkImageMemoryRequirementsInfo2 const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ImageMemoryRequirementsInfo2( *reinterpret_cast<ImageMemoryRequirementsInfo2 const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ImageMemoryRequirementsInfo2 &
+ operator=( ImageMemoryRequirementsInfo2 const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImageMemoryRequirementsInfo2 & operator=( VkImageMemoryRequirementsInfo2 const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageMemoryRequirementsInfo2 const *>( &rhs );
+ return *this;
+ }
+
+ ImageMemoryRequirementsInfo2 & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ ImageMemoryRequirementsInfo2 & setImage( VULKAN_HPP_NAMESPACE::Image image_ ) VULKAN_HPP_NOEXCEPT
+ {
+ image = image_;
+ return *this;
+ }
+
+ operator VkImageMemoryRequirementsInfo2 const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkImageMemoryRequirementsInfo2 *>( this );
+ }
+
+ operator VkImageMemoryRequirementsInfo2 &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkImageMemoryRequirementsInfo2 *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ImageMemoryRequirementsInfo2 const & ) const = default;
+#else
+ bool operator==( ImageMemoryRequirementsInfo2 const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( image == rhs.image );
+ }
+
+ bool operator!=( ImageMemoryRequirementsInfo2 const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageMemoryRequirementsInfo2;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Image image = {};
+ };
+ static_assert( sizeof( ImageMemoryRequirementsInfo2 ) == sizeof( VkImageMemoryRequirementsInfo2 ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ImageMemoryRequirementsInfo2>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eImageMemoryRequirementsInfo2>
+ {
+ using Type = ImageMemoryRequirementsInfo2;
+ };
+ using ImageMemoryRequirementsInfo2KHR = ImageMemoryRequirementsInfo2;
+
+#if defined( VK_USE_PLATFORM_FUCHSIA )
+ struct ImagePipeSurfaceCreateInfoFUCHSIA
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eImagepipeSurfaceCreateInfoFUCHSIA;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ ImagePipeSurfaceCreateInfoFUCHSIA( VULKAN_HPP_NAMESPACE::ImagePipeSurfaceCreateFlagsFUCHSIA flags_ = {},
+ zx_handle_t imagePipeHandle_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , imagePipeHandle( imagePipeHandle_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ ImagePipeSurfaceCreateInfoFUCHSIA( ImagePipeSurfaceCreateInfoFUCHSIA const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImagePipeSurfaceCreateInfoFUCHSIA( VkImagePipeSurfaceCreateInfoFUCHSIA const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ImagePipeSurfaceCreateInfoFUCHSIA( *reinterpret_cast<ImagePipeSurfaceCreateInfoFUCHSIA const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ImagePipeSurfaceCreateInfoFUCHSIA &
+ operator=( ImagePipeSurfaceCreateInfoFUCHSIA const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImagePipeSurfaceCreateInfoFUCHSIA & operator=( VkImagePipeSurfaceCreateInfoFUCHSIA const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImagePipeSurfaceCreateInfoFUCHSIA const *>( &rhs );
+ return *this;
+ }
+
+ ImagePipeSurfaceCreateInfoFUCHSIA & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ ImagePipeSurfaceCreateInfoFUCHSIA &
+ setFlags( VULKAN_HPP_NAMESPACE::ImagePipeSurfaceCreateFlagsFUCHSIA flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ ImagePipeSurfaceCreateInfoFUCHSIA & setImagePipeHandle( zx_handle_t imagePipeHandle_ ) VULKAN_HPP_NOEXCEPT
+ {
+ imagePipeHandle = imagePipeHandle_;
+ return *this;
+ }
+
+ operator VkImagePipeSurfaceCreateInfoFUCHSIA const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkImagePipeSurfaceCreateInfoFUCHSIA *>( this );
+ }
+
+ operator VkImagePipeSurfaceCreateInfoFUCHSIA &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkImagePipeSurfaceCreateInfoFUCHSIA *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ImagePipeSurfaceCreateInfoFUCHSIA const & ) const = default;
+# else
+ bool operator==( ImagePipeSurfaceCreateInfoFUCHSIA const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( memcmp( &imagePipeHandle, &rhs.imagePipeHandle, sizeof( zx_handle_t ) ) == 0 );
+ }
+
+ bool operator!=( ImagePipeSurfaceCreateInfoFUCHSIA const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImagepipeSurfaceCreateInfoFUCHSIA;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ImagePipeSurfaceCreateFlagsFUCHSIA flags = {};
+ zx_handle_t imagePipeHandle = {};
+ };
+ static_assert( sizeof( ImagePipeSurfaceCreateInfoFUCHSIA ) == sizeof( VkImagePipeSurfaceCreateInfoFUCHSIA ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ImagePipeSurfaceCreateInfoFUCHSIA>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eImagepipeSurfaceCreateInfoFUCHSIA>
+ {
+ using Type = ImagePipeSurfaceCreateInfoFUCHSIA;
+ };
+#endif /*VK_USE_PLATFORM_FUCHSIA*/
+
+ struct ImagePlaneMemoryRequirementsInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImagePlaneMemoryRequirementsInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ ImagePlaneMemoryRequirementsInfo( VULKAN_HPP_NAMESPACE::ImageAspectFlagBits planeAspect_ =
+ VULKAN_HPP_NAMESPACE::ImageAspectFlagBits::eColor ) VULKAN_HPP_NOEXCEPT
+ : planeAspect( planeAspect_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ ImagePlaneMemoryRequirementsInfo( ImagePlaneMemoryRequirementsInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImagePlaneMemoryRequirementsInfo( VkImagePlaneMemoryRequirementsInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ImagePlaneMemoryRequirementsInfo( *reinterpret_cast<ImagePlaneMemoryRequirementsInfo const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ImagePlaneMemoryRequirementsInfo &
+ operator=( ImagePlaneMemoryRequirementsInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImagePlaneMemoryRequirementsInfo & operator=( VkImagePlaneMemoryRequirementsInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImagePlaneMemoryRequirementsInfo const *>( &rhs );
+ return *this;
+ }
+
+ ImagePlaneMemoryRequirementsInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ ImagePlaneMemoryRequirementsInfo &
+ setPlaneAspect( VULKAN_HPP_NAMESPACE::ImageAspectFlagBits planeAspect_ ) VULKAN_HPP_NOEXCEPT
+ {
+ planeAspect = planeAspect_;
+ return *this;
+ }
+
+ operator VkImagePlaneMemoryRequirementsInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkImagePlaneMemoryRequirementsInfo *>( this );
+ }
+
+ operator VkImagePlaneMemoryRequirementsInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkImagePlaneMemoryRequirementsInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ImagePlaneMemoryRequirementsInfo const & ) const = default;
+#else
+ bool operator==( ImagePlaneMemoryRequirementsInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( planeAspect == rhs.planeAspect );
+ }
+
+ bool operator!=( ImagePlaneMemoryRequirementsInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImagePlaneMemoryRequirementsInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ImageAspectFlagBits planeAspect = VULKAN_HPP_NAMESPACE::ImageAspectFlagBits::eColor;
+ };
+ static_assert( sizeof( ImagePlaneMemoryRequirementsInfo ) == sizeof( VkImagePlaneMemoryRequirementsInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ImagePlaneMemoryRequirementsInfo>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eImagePlaneMemoryRequirementsInfo>
+ {
+ using Type = ImagePlaneMemoryRequirementsInfo;
+ };
+ using ImagePlaneMemoryRequirementsInfoKHR = ImagePlaneMemoryRequirementsInfo;
+
+ struct ImageResolve
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR ImageResolve( VULKAN_HPP_NAMESPACE::ImageSubresourceLayers srcSubresource_ = {},
+ VULKAN_HPP_NAMESPACE::Offset3D srcOffset_ = {},
+ VULKAN_HPP_NAMESPACE::ImageSubresourceLayers dstSubresource_ = {},
+ VULKAN_HPP_NAMESPACE::Offset3D dstOffset_ = {},
+ VULKAN_HPP_NAMESPACE::Extent3D extent_ = {} ) VULKAN_HPP_NOEXCEPT
+ : srcSubresource( srcSubresource_ )
+ , srcOffset( srcOffset_ )
+ , dstSubresource( dstSubresource_ )
+ , dstOffset( dstOffset_ )
+ , extent( extent_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR ImageResolve( ImageResolve const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImageResolve( VkImageResolve const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ImageResolve( *reinterpret_cast<ImageResolve const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ImageResolve & operator=( ImageResolve const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImageResolve & operator=( VkImageResolve const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageResolve const *>( &rhs );
+ return *this;
+ }
+
+ ImageResolve &
+ setSrcSubresource( VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const & srcSubresource_ ) VULKAN_HPP_NOEXCEPT
+ {
+ srcSubresource = srcSubresource_;
+ return *this;
+ }
+
+ ImageResolve & setSrcOffset( VULKAN_HPP_NAMESPACE::Offset3D const & srcOffset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ srcOffset = srcOffset_;
+ return *this;
+ }
+
+ ImageResolve &
+ setDstSubresource( VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const & dstSubresource_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstSubresource = dstSubresource_;
+ return *this;
+ }
+
+ ImageResolve & setDstOffset( VULKAN_HPP_NAMESPACE::Offset3D const & dstOffset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstOffset = dstOffset_;
+ return *this;
+ }
+
+ ImageResolve & setExtent( VULKAN_HPP_NAMESPACE::Extent3D const & extent_ ) VULKAN_HPP_NOEXCEPT
+ {
+ extent = extent_;
+ return *this;
+ }
+
+ operator VkImageResolve const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkImageResolve *>( this );
+ }
+
+ operator VkImageResolve &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkImageResolve *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ImageResolve const & ) const = default;
+#else
+ bool operator==( ImageResolve const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( srcSubresource == rhs.srcSubresource ) && ( srcOffset == rhs.srcOffset ) &&
+ ( dstSubresource == rhs.dstSubresource ) && ( dstOffset == rhs.dstOffset ) && ( extent == rhs.extent );
+ }
+
+ bool operator!=( ImageResolve const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::ImageSubresourceLayers srcSubresource = {};
+ VULKAN_HPP_NAMESPACE::Offset3D srcOffset = {};
+ VULKAN_HPP_NAMESPACE::ImageSubresourceLayers dstSubresource = {};
+ VULKAN_HPP_NAMESPACE::Offset3D dstOffset = {};
+ VULKAN_HPP_NAMESPACE::Extent3D extent = {};
+ };
+ static_assert( sizeof( ImageResolve ) == sizeof( VkImageResolve ), "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ImageResolve>::value, "struct wrapper is not a standard layout!" );
+
+ struct ImageResolve2KHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImageResolve2KHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR ImageResolve2KHR( VULKAN_HPP_NAMESPACE::ImageSubresourceLayers srcSubresource_ = {},
+ VULKAN_HPP_NAMESPACE::Offset3D srcOffset_ = {},
+ VULKAN_HPP_NAMESPACE::ImageSubresourceLayers dstSubresource_ = {},
+ VULKAN_HPP_NAMESPACE::Offset3D dstOffset_ = {},
+ VULKAN_HPP_NAMESPACE::Extent3D extent_ = {} ) VULKAN_HPP_NOEXCEPT
+ : srcSubresource( srcSubresource_ )
+ , srcOffset( srcOffset_ )
+ , dstSubresource( dstSubresource_ )
+ , dstOffset( dstOffset_ )
+ , extent( extent_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR ImageResolve2KHR( ImageResolve2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImageResolve2KHR( VkImageResolve2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ImageResolve2KHR( *reinterpret_cast<ImageResolve2KHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ImageResolve2KHR & operator=( ImageResolve2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImageResolve2KHR & operator=( VkImageResolve2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageResolve2KHR const *>( &rhs );
+ return *this;
+ }
+
+ ImageResolve2KHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ ImageResolve2KHR &
+ setSrcSubresource( VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const & srcSubresource_ ) VULKAN_HPP_NOEXCEPT
+ {
+ srcSubresource = srcSubresource_;
+ return *this;
+ }
+
+ ImageResolve2KHR & setSrcOffset( VULKAN_HPP_NAMESPACE::Offset3D const & srcOffset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ srcOffset = srcOffset_;
+ return *this;
+ }
+
+ ImageResolve2KHR &
+ setDstSubresource( VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const & dstSubresource_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstSubresource = dstSubresource_;
+ return *this;
+ }
+
+ ImageResolve2KHR & setDstOffset( VULKAN_HPP_NAMESPACE::Offset3D const & dstOffset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstOffset = dstOffset_;
+ return *this;
+ }
+
+ ImageResolve2KHR & setExtent( VULKAN_HPP_NAMESPACE::Extent3D const & extent_ ) VULKAN_HPP_NOEXCEPT
+ {
+ extent = extent_;
+ return *this;
+ }
+
+ operator VkImageResolve2KHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkImageResolve2KHR *>( this );
+ }
+
+ operator VkImageResolve2KHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkImageResolve2KHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ImageResolve2KHR const & ) const = default;
+#else
+ bool operator==( ImageResolve2KHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( srcSubresource == rhs.srcSubresource ) &&
+ ( srcOffset == rhs.srcOffset ) && ( dstSubresource == rhs.dstSubresource ) &&
+ ( dstOffset == rhs.dstOffset ) && ( extent == rhs.extent );
+ }
+
+ bool operator!=( ImageResolve2KHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageResolve2KHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ImageSubresourceLayers srcSubresource = {};
+ VULKAN_HPP_NAMESPACE::Offset3D srcOffset = {};
+ VULKAN_HPP_NAMESPACE::ImageSubresourceLayers dstSubresource = {};
+ VULKAN_HPP_NAMESPACE::Offset3D dstOffset = {};
+ VULKAN_HPP_NAMESPACE::Extent3D extent = {};
+ };
+ static_assert( sizeof( ImageResolve2KHR ) == sizeof( VkImageResolve2KHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ImageResolve2KHR>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eImageResolve2KHR>
+ {
+ using Type = ImageResolve2KHR;
+ };
+
+ struct ImageSparseMemoryRequirementsInfo2
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eImageSparseMemoryRequirementsInfo2;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ ImageSparseMemoryRequirementsInfo2( VULKAN_HPP_NAMESPACE::Image image_ = {} ) VULKAN_HPP_NOEXCEPT
+ : image( image_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR ImageSparseMemoryRequirementsInfo2( ImageSparseMemoryRequirementsInfo2 const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ ImageSparseMemoryRequirementsInfo2( VkImageSparseMemoryRequirementsInfo2 const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ImageSparseMemoryRequirementsInfo2( *reinterpret_cast<ImageSparseMemoryRequirementsInfo2 const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ImageSparseMemoryRequirementsInfo2 &
+ operator=( ImageSparseMemoryRequirementsInfo2 const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImageSparseMemoryRequirementsInfo2 &
+ operator=( VkImageSparseMemoryRequirementsInfo2 const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageSparseMemoryRequirementsInfo2 const *>( &rhs );
+ return *this;
+ }
+
+ ImageSparseMemoryRequirementsInfo2 & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ ImageSparseMemoryRequirementsInfo2 & setImage( VULKAN_HPP_NAMESPACE::Image image_ ) VULKAN_HPP_NOEXCEPT
+ {
+ image = image_;
+ return *this;
+ }
+
+ operator VkImageSparseMemoryRequirementsInfo2 const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkImageSparseMemoryRequirementsInfo2 *>( this );
+ }
+
+ operator VkImageSparseMemoryRequirementsInfo2 &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkImageSparseMemoryRequirementsInfo2 *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ImageSparseMemoryRequirementsInfo2 const & ) const = default;
+#else
+ bool operator==( ImageSparseMemoryRequirementsInfo2 const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( image == rhs.image );
+ }
+
+ bool operator!=( ImageSparseMemoryRequirementsInfo2 const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageSparseMemoryRequirementsInfo2;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Image image = {};
+ };
+ static_assert( sizeof( ImageSparseMemoryRequirementsInfo2 ) == sizeof( VkImageSparseMemoryRequirementsInfo2 ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ImageSparseMemoryRequirementsInfo2>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eImageSparseMemoryRequirementsInfo2>
+ {
+ using Type = ImageSparseMemoryRequirementsInfo2;
+ };
+ using ImageSparseMemoryRequirementsInfo2KHR = ImageSparseMemoryRequirementsInfo2;
+
+ struct ImageStencilUsageCreateInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImageStencilUsageCreateInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ ImageStencilUsageCreateInfo( VULKAN_HPP_NAMESPACE::ImageUsageFlags stencilUsage_ = {} ) VULKAN_HPP_NOEXCEPT
+ : stencilUsage( stencilUsage_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ ImageStencilUsageCreateInfo( ImageStencilUsageCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImageStencilUsageCreateInfo( VkImageStencilUsageCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ImageStencilUsageCreateInfo( *reinterpret_cast<ImageStencilUsageCreateInfo const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ImageStencilUsageCreateInfo &
+ operator=( ImageStencilUsageCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImageStencilUsageCreateInfo & operator=( VkImageStencilUsageCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageStencilUsageCreateInfo const *>( &rhs );
+ return *this;
+ }
+
+ ImageStencilUsageCreateInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ ImageStencilUsageCreateInfo &
+ setStencilUsage( VULKAN_HPP_NAMESPACE::ImageUsageFlags stencilUsage_ ) VULKAN_HPP_NOEXCEPT
+ {
+ stencilUsage = stencilUsage_;
+ return *this;
+ }
+
+ operator VkImageStencilUsageCreateInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkImageStencilUsageCreateInfo *>( this );
+ }
+
+ operator VkImageStencilUsageCreateInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkImageStencilUsageCreateInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ImageStencilUsageCreateInfo const & ) const = default;
+#else
+ bool operator==( ImageStencilUsageCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( stencilUsage == rhs.stencilUsage );
+ }
+
+ bool operator!=( ImageStencilUsageCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageStencilUsageCreateInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ImageUsageFlags stencilUsage = {};
+ };
+ static_assert( sizeof( ImageStencilUsageCreateInfo ) == sizeof( VkImageStencilUsageCreateInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ImageStencilUsageCreateInfo>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eImageStencilUsageCreateInfo>
+ {
+ using Type = ImageStencilUsageCreateInfo;
+ };
+ using ImageStencilUsageCreateInfoEXT = ImageStencilUsageCreateInfo;
+
+ struct ImageSwapchainCreateInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImageSwapchainCreateInfoKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ ImageSwapchainCreateInfoKHR( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain_ = {} ) VULKAN_HPP_NOEXCEPT
+ : swapchain( swapchain_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ ImageSwapchainCreateInfoKHR( ImageSwapchainCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImageSwapchainCreateInfoKHR( VkImageSwapchainCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ImageSwapchainCreateInfoKHR( *reinterpret_cast<ImageSwapchainCreateInfoKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ImageSwapchainCreateInfoKHR &
+ operator=( ImageSwapchainCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImageSwapchainCreateInfoKHR & operator=( VkImageSwapchainCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageSwapchainCreateInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ ImageSwapchainCreateInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ ImageSwapchainCreateInfoKHR & setSwapchain( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain_ ) VULKAN_HPP_NOEXCEPT
+ {
+ swapchain = swapchain_;
+ return *this;
+ }
+
+ operator VkImageSwapchainCreateInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkImageSwapchainCreateInfoKHR *>( this );
+ }
+
+ operator VkImageSwapchainCreateInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkImageSwapchainCreateInfoKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ImageSwapchainCreateInfoKHR const & ) const = default;
+#else
+ bool operator==( ImageSwapchainCreateInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( swapchain == rhs.swapchain );
+ }
+
+ bool operator!=( ImageSwapchainCreateInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageSwapchainCreateInfoKHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain = {};
+ };
+ static_assert( sizeof( ImageSwapchainCreateInfoKHR ) == sizeof( VkImageSwapchainCreateInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ImageSwapchainCreateInfoKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eImageSwapchainCreateInfoKHR>
+ {
+ using Type = ImageSwapchainCreateInfoKHR;
+ };
+
+ struct ImageViewASTCDecodeModeEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImageViewAstcDecodeModeEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR ImageViewASTCDecodeModeEXT(
+ VULKAN_HPP_NAMESPACE::Format decodeMode_ = VULKAN_HPP_NAMESPACE::Format::eUndefined ) VULKAN_HPP_NOEXCEPT
+ : decodeMode( decodeMode_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ ImageViewASTCDecodeModeEXT( ImageViewASTCDecodeModeEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImageViewASTCDecodeModeEXT( VkImageViewASTCDecodeModeEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ImageViewASTCDecodeModeEXT( *reinterpret_cast<ImageViewASTCDecodeModeEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ImageViewASTCDecodeModeEXT &
+ operator=( ImageViewASTCDecodeModeEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImageViewASTCDecodeModeEXT & operator=( VkImageViewASTCDecodeModeEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageViewASTCDecodeModeEXT const *>( &rhs );
+ return *this;
+ }
+
+ ImageViewASTCDecodeModeEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ ImageViewASTCDecodeModeEXT & setDecodeMode( VULKAN_HPP_NAMESPACE::Format decodeMode_ ) VULKAN_HPP_NOEXCEPT
+ {
+ decodeMode = decodeMode_;
+ return *this;
+ }
+
+ operator VkImageViewASTCDecodeModeEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkImageViewASTCDecodeModeEXT *>( this );
+ }
+
+ operator VkImageViewASTCDecodeModeEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkImageViewASTCDecodeModeEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ImageViewASTCDecodeModeEXT const & ) const = default;
+#else
+ bool operator==( ImageViewASTCDecodeModeEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( decodeMode == rhs.decodeMode );
+ }
+
+ bool operator!=( ImageViewASTCDecodeModeEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageViewAstcDecodeModeEXT;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Format decodeMode = VULKAN_HPP_NAMESPACE::Format::eUndefined;
+ };
+ static_assert( sizeof( ImageViewASTCDecodeModeEXT ) == sizeof( VkImageViewASTCDecodeModeEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ImageViewASTCDecodeModeEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eImageViewAstcDecodeModeEXT>
+ {
+ using Type = ImageViewASTCDecodeModeEXT;
+ };
+
+ struct ImageViewAddressPropertiesNVX
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImageViewAddressPropertiesNVX;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ ImageViewAddressPropertiesNVX( VULKAN_HPP_NAMESPACE::DeviceAddress deviceAddress_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize size_ = {} ) VULKAN_HPP_NOEXCEPT
+ : deviceAddress( deviceAddress_ )
+ , size( size_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ ImageViewAddressPropertiesNVX( ImageViewAddressPropertiesNVX const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImageViewAddressPropertiesNVX( VkImageViewAddressPropertiesNVX const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ImageViewAddressPropertiesNVX( *reinterpret_cast<ImageViewAddressPropertiesNVX const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ImageViewAddressPropertiesNVX &
+ operator=( ImageViewAddressPropertiesNVX const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImageViewAddressPropertiesNVX & operator=( VkImageViewAddressPropertiesNVX const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageViewAddressPropertiesNVX const *>( &rhs );
+ return *this;
+ }
+
+ operator VkImageViewAddressPropertiesNVX const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkImageViewAddressPropertiesNVX *>( this );
+ }
+
+ operator VkImageViewAddressPropertiesNVX &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkImageViewAddressPropertiesNVX *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ImageViewAddressPropertiesNVX const & ) const = default;
+#else
+ bool operator==( ImageViewAddressPropertiesNVX const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( deviceAddress == rhs.deviceAddress ) &&
+ ( size == rhs.size );
+ }
+
+ bool operator!=( ImageViewAddressPropertiesNVX const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageViewAddressPropertiesNVX;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::DeviceAddress deviceAddress = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize size = {};
+ };
+ static_assert( sizeof( ImageViewAddressPropertiesNVX ) == sizeof( VkImageViewAddressPropertiesNVX ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ImageViewAddressPropertiesNVX>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eImageViewAddressPropertiesNVX>
+ {
+ using Type = ImageViewAddressPropertiesNVX;
+ };
+
+ struct ImageViewCreateInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImageViewCreateInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ ImageViewCreateInfo( VULKAN_HPP_NAMESPACE::ImageViewCreateFlags flags_ = {},
+ VULKAN_HPP_NAMESPACE::Image image_ = {},
+ VULKAN_HPP_NAMESPACE::ImageViewType viewType_ = VULKAN_HPP_NAMESPACE::ImageViewType::e1D,
+ VULKAN_HPP_NAMESPACE::Format format_ = VULKAN_HPP_NAMESPACE::Format::eUndefined,
+ VULKAN_HPP_NAMESPACE::ComponentMapping components_ = {},
+ VULKAN_HPP_NAMESPACE::ImageSubresourceRange subresourceRange_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , image( image_ )
+ , viewType( viewType_ )
+ , format( format_ )
+ , components( components_ )
+ , subresourceRange( subresourceRange_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR ImageViewCreateInfo( ImageViewCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImageViewCreateInfo( VkImageViewCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ImageViewCreateInfo( *reinterpret_cast<ImageViewCreateInfo const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ImageViewCreateInfo &
+ operator=( ImageViewCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImageViewCreateInfo & operator=( VkImageViewCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageViewCreateInfo const *>( &rhs );
+ return *this;
+ }
+
+ ImageViewCreateInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ ImageViewCreateInfo & setFlags( VULKAN_HPP_NAMESPACE::ImageViewCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ ImageViewCreateInfo & setImage( VULKAN_HPP_NAMESPACE::Image image_ ) VULKAN_HPP_NOEXCEPT
+ {
+ image = image_;
+ return *this;
+ }
+
+ ImageViewCreateInfo & setViewType( VULKAN_HPP_NAMESPACE::ImageViewType viewType_ ) VULKAN_HPP_NOEXCEPT
+ {
+ viewType = viewType_;
+ return *this;
+ }
+
+ ImageViewCreateInfo & setFormat( VULKAN_HPP_NAMESPACE::Format format_ ) VULKAN_HPP_NOEXCEPT
+ {
+ format = format_;
+ return *this;
+ }
+
+ ImageViewCreateInfo &
+ setComponents( VULKAN_HPP_NAMESPACE::ComponentMapping const & components_ ) VULKAN_HPP_NOEXCEPT
+ {
+ components = components_;
+ return *this;
+ }
+
+ ImageViewCreateInfo &
+ setSubresourceRange( VULKAN_HPP_NAMESPACE::ImageSubresourceRange const & subresourceRange_ ) VULKAN_HPP_NOEXCEPT
+ {
+ subresourceRange = subresourceRange_;
+ return *this;
+ }
+
+ operator VkImageViewCreateInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkImageViewCreateInfo *>( this );
+ }
+
+ operator VkImageViewCreateInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkImageViewCreateInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ImageViewCreateInfo const & ) const = default;
+#else
+ bool operator==( ImageViewCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) && ( image == rhs.image ) &&
+ ( viewType == rhs.viewType ) && ( format == rhs.format ) && ( components == rhs.components ) &&
+ ( subresourceRange == rhs.subresourceRange );
+ }
+
+ bool operator!=( ImageViewCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageViewCreateInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ImageViewCreateFlags flags = {};
+ VULKAN_HPP_NAMESPACE::Image image = {};
+ VULKAN_HPP_NAMESPACE::ImageViewType viewType = VULKAN_HPP_NAMESPACE::ImageViewType::e1D;
+ VULKAN_HPP_NAMESPACE::Format format = VULKAN_HPP_NAMESPACE::Format::eUndefined;
+ VULKAN_HPP_NAMESPACE::ComponentMapping components = {};
+ VULKAN_HPP_NAMESPACE::ImageSubresourceRange subresourceRange = {};
+ };
+ static_assert( sizeof( ImageViewCreateInfo ) == sizeof( VkImageViewCreateInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ImageViewCreateInfo>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eImageViewCreateInfo>
+ {
+ using Type = ImageViewCreateInfo;
+ };
+
+ struct ImageViewHandleInfoNVX
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImageViewHandleInfoNVX;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR ImageViewHandleInfoNVX(
+ VULKAN_HPP_NAMESPACE::ImageView imageView_ = {},
+ VULKAN_HPP_NAMESPACE::DescriptorType descriptorType_ = VULKAN_HPP_NAMESPACE::DescriptorType::eSampler,
+ VULKAN_HPP_NAMESPACE::Sampler sampler_ = {} ) VULKAN_HPP_NOEXCEPT
+ : imageView( imageView_ )
+ , descriptorType( descriptorType_ )
+ , sampler( sampler_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR ImageViewHandleInfoNVX( ImageViewHandleInfoNVX const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImageViewHandleInfoNVX( VkImageViewHandleInfoNVX const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ImageViewHandleInfoNVX( *reinterpret_cast<ImageViewHandleInfoNVX const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ImageViewHandleInfoNVX &
+ operator=( ImageViewHandleInfoNVX const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImageViewHandleInfoNVX & operator=( VkImageViewHandleInfoNVX const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageViewHandleInfoNVX const *>( &rhs );
+ return *this;
+ }
+
+ ImageViewHandleInfoNVX & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ ImageViewHandleInfoNVX & setImageView( VULKAN_HPP_NAMESPACE::ImageView imageView_ ) VULKAN_HPP_NOEXCEPT
+ {
+ imageView = imageView_;
+ return *this;
+ }
+
+ ImageViewHandleInfoNVX &
+ setDescriptorType( VULKAN_HPP_NAMESPACE::DescriptorType descriptorType_ ) VULKAN_HPP_NOEXCEPT
+ {
+ descriptorType = descriptorType_;
+ return *this;
+ }
+
+ ImageViewHandleInfoNVX & setSampler( VULKAN_HPP_NAMESPACE::Sampler sampler_ ) VULKAN_HPP_NOEXCEPT
+ {
+ sampler = sampler_;
+ return *this;
+ }
+
+ operator VkImageViewHandleInfoNVX const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkImageViewHandleInfoNVX *>( this );
+ }
+
+ operator VkImageViewHandleInfoNVX &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkImageViewHandleInfoNVX *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ImageViewHandleInfoNVX const & ) const = default;
+#else
+ bool operator==( ImageViewHandleInfoNVX const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( imageView == rhs.imageView ) &&
+ ( descriptorType == rhs.descriptorType ) && ( sampler == rhs.sampler );
+ }
+
+ bool operator!=( ImageViewHandleInfoNVX const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageViewHandleInfoNVX;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ImageView imageView = {};
+ VULKAN_HPP_NAMESPACE::DescriptorType descriptorType = VULKAN_HPP_NAMESPACE::DescriptorType::eSampler;
+ VULKAN_HPP_NAMESPACE::Sampler sampler = {};
+ };
+ static_assert( sizeof( ImageViewHandleInfoNVX ) == sizeof( VkImageViewHandleInfoNVX ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ImageViewHandleInfoNVX>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eImageViewHandleInfoNVX>
+ {
+ using Type = ImageViewHandleInfoNVX;
+ };
+
+ struct ImageViewUsageCreateInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImageViewUsageCreateInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ ImageViewUsageCreateInfo( VULKAN_HPP_NAMESPACE::ImageUsageFlags usage_ = {} ) VULKAN_HPP_NOEXCEPT
+ : usage( usage_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR ImageViewUsageCreateInfo( ImageViewUsageCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImageViewUsageCreateInfo( VkImageViewUsageCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ImageViewUsageCreateInfo( *reinterpret_cast<ImageViewUsageCreateInfo const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ImageViewUsageCreateInfo &
+ operator=( ImageViewUsageCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImageViewUsageCreateInfo & operator=( VkImageViewUsageCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageViewUsageCreateInfo const *>( &rhs );
+ return *this;
+ }
+
+ ImageViewUsageCreateInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ ImageViewUsageCreateInfo & setUsage( VULKAN_HPP_NAMESPACE::ImageUsageFlags usage_ ) VULKAN_HPP_NOEXCEPT
+ {
+ usage = usage_;
+ return *this;
+ }
+
+ operator VkImageViewUsageCreateInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkImageViewUsageCreateInfo *>( this );
+ }
+
+ operator VkImageViewUsageCreateInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkImageViewUsageCreateInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ImageViewUsageCreateInfo const & ) const = default;
+#else
+ bool operator==( ImageViewUsageCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( usage == rhs.usage );
+ }
+
+ bool operator!=( ImageViewUsageCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageViewUsageCreateInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ImageUsageFlags usage = {};
+ };
+ static_assert( sizeof( ImageViewUsageCreateInfo ) == sizeof( VkImageViewUsageCreateInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ImageViewUsageCreateInfo>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eImageViewUsageCreateInfo>
+ {
+ using Type = ImageViewUsageCreateInfo;
+ };
+ using ImageViewUsageCreateInfoKHR = ImageViewUsageCreateInfo;
+
+#if defined( VK_USE_PLATFORM_ANDROID_KHR )
+ struct ImportAndroidHardwareBufferInfoANDROID
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eImportAndroidHardwareBufferInfoANDROID;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ ImportAndroidHardwareBufferInfoANDROID( struct AHardwareBuffer * buffer_ = {} ) VULKAN_HPP_NOEXCEPT
+ : buffer( buffer_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR ImportAndroidHardwareBufferInfoANDROID( ImportAndroidHardwareBufferInfoANDROID const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ ImportAndroidHardwareBufferInfoANDROID( VkImportAndroidHardwareBufferInfoANDROID const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ImportAndroidHardwareBufferInfoANDROID(
+ *reinterpret_cast<ImportAndroidHardwareBufferInfoANDROID const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ImportAndroidHardwareBufferInfoANDROID &
+ operator=( ImportAndroidHardwareBufferInfoANDROID const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImportAndroidHardwareBufferInfoANDROID &
+ operator=( VkImportAndroidHardwareBufferInfoANDROID const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImportAndroidHardwareBufferInfoANDROID const *>( &rhs );
+ return *this;
+ }
+
+ ImportAndroidHardwareBufferInfoANDROID & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ ImportAndroidHardwareBufferInfoANDROID & setBuffer( struct AHardwareBuffer * buffer_ ) VULKAN_HPP_NOEXCEPT
+ {
+ buffer = buffer_;
+ return *this;
+ }
+
+ operator VkImportAndroidHardwareBufferInfoANDROID const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkImportAndroidHardwareBufferInfoANDROID *>( this );
+ }
+
+ operator VkImportAndroidHardwareBufferInfoANDROID &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkImportAndroidHardwareBufferInfoANDROID *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ImportAndroidHardwareBufferInfoANDROID const & ) const = default;
+# else
+ bool operator==( ImportAndroidHardwareBufferInfoANDROID const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( buffer == rhs.buffer );
+ }
+
+ bool operator!=( ImportAndroidHardwareBufferInfoANDROID const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImportAndroidHardwareBufferInfoANDROID;
+ const void * pNext = {};
+ struct AHardwareBuffer * buffer = {};
+ };
+ static_assert( sizeof( ImportAndroidHardwareBufferInfoANDROID ) == sizeof( VkImportAndroidHardwareBufferInfoANDROID ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ImportAndroidHardwareBufferInfoANDROID>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eImportAndroidHardwareBufferInfoANDROID>
+ {
+ using Type = ImportAndroidHardwareBufferInfoANDROID;
+ };
+#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
+
+ struct ImportFenceFdInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImportFenceFdInfoKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR ImportFenceFdInfoKHR( VULKAN_HPP_NAMESPACE::Fence fence_ = {},
+ VULKAN_HPP_NAMESPACE::FenceImportFlags flags_ = {},
+ VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits handleType_ =
+ VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits::eOpaqueFd,
+ int fd_ = {} ) VULKAN_HPP_NOEXCEPT
+ : fence( fence_ )
+ , flags( flags_ )
+ , handleType( handleType_ )
+ , fd( fd_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR ImportFenceFdInfoKHR( ImportFenceFdInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImportFenceFdInfoKHR( VkImportFenceFdInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ImportFenceFdInfoKHR( *reinterpret_cast<ImportFenceFdInfoKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ImportFenceFdInfoKHR &
+ operator=( ImportFenceFdInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImportFenceFdInfoKHR & operator=( VkImportFenceFdInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImportFenceFdInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ ImportFenceFdInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ ImportFenceFdInfoKHR & setFence( VULKAN_HPP_NAMESPACE::Fence fence_ ) VULKAN_HPP_NOEXCEPT
+ {
+ fence = fence_;
+ return *this;
+ }
+
+ ImportFenceFdInfoKHR & setFlags( VULKAN_HPP_NAMESPACE::FenceImportFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ ImportFenceFdInfoKHR &
+ setHandleType( VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits handleType_ ) VULKAN_HPP_NOEXCEPT
+ {
+ handleType = handleType_;
+ return *this;
+ }
+
+ ImportFenceFdInfoKHR & setFd( int fd_ ) VULKAN_HPP_NOEXCEPT
+ {
+ fd = fd_;
+ return *this;
+ }
+
+ operator VkImportFenceFdInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkImportFenceFdInfoKHR *>( this );
+ }
+
+ operator VkImportFenceFdInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkImportFenceFdInfoKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ImportFenceFdInfoKHR const & ) const = default;
+#else
+ bool operator==( ImportFenceFdInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( fence == rhs.fence ) && ( flags == rhs.flags ) &&
+ ( handleType == rhs.handleType ) && ( fd == rhs.fd );
+ }
+
+ bool operator!=( ImportFenceFdInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImportFenceFdInfoKHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Fence fence = {};
+ VULKAN_HPP_NAMESPACE::FenceImportFlags flags = {};
+ VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits handleType =
+ VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits::eOpaqueFd;
+ int fd = {};
+ };
+ static_assert( sizeof( ImportFenceFdInfoKHR ) == sizeof( VkImportFenceFdInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ImportFenceFdInfoKHR>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eImportFenceFdInfoKHR>
+ {
+ using Type = ImportFenceFdInfoKHR;
+ };
+
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ struct ImportFenceWin32HandleInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImportFenceWin32HandleInfoKHR;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ ImportFenceWin32HandleInfoKHR( VULKAN_HPP_NAMESPACE::Fence fence_ = {},
+ VULKAN_HPP_NAMESPACE::FenceImportFlags flags_ = {},
+ VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits handleType_ =
+ VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits::eOpaqueFd,
+ HANDLE handle_ = {},
+ LPCWSTR name_ = {} ) VULKAN_HPP_NOEXCEPT
+ : fence( fence_ )
+ , flags( flags_ )
+ , handleType( handleType_ )
+ , handle( handle_ )
+ , name( name_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ ImportFenceWin32HandleInfoKHR( ImportFenceWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImportFenceWin32HandleInfoKHR( VkImportFenceWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ImportFenceWin32HandleInfoKHR( *reinterpret_cast<ImportFenceWin32HandleInfoKHR const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ImportFenceWin32HandleInfoKHR &
+ operator=( ImportFenceWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImportFenceWin32HandleInfoKHR & operator=( VkImportFenceWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImportFenceWin32HandleInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ ImportFenceWin32HandleInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ ImportFenceWin32HandleInfoKHR & setFence( VULKAN_HPP_NAMESPACE::Fence fence_ ) VULKAN_HPP_NOEXCEPT
+ {
+ fence = fence_;
+ return *this;
+ }
+
+ ImportFenceWin32HandleInfoKHR & setFlags( VULKAN_HPP_NAMESPACE::FenceImportFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ ImportFenceWin32HandleInfoKHR &
+ setHandleType( VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits handleType_ ) VULKAN_HPP_NOEXCEPT
+ {
+ handleType = handleType_;
+ return *this;
+ }
+
+ ImportFenceWin32HandleInfoKHR & setHandle( HANDLE handle_ ) VULKAN_HPP_NOEXCEPT
+ {
+ handle = handle_;
+ return *this;
+ }
+
+ ImportFenceWin32HandleInfoKHR & setName( LPCWSTR name_ ) VULKAN_HPP_NOEXCEPT
+ {
+ name = name_;
+ return *this;
+ }
+
+ operator VkImportFenceWin32HandleInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkImportFenceWin32HandleInfoKHR *>( this );
+ }
+
+ operator VkImportFenceWin32HandleInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkImportFenceWin32HandleInfoKHR *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ImportFenceWin32HandleInfoKHR const & ) const = default;
+# else
+ bool operator==( ImportFenceWin32HandleInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( fence == rhs.fence ) && ( flags == rhs.flags ) &&
+ ( handleType == rhs.handleType ) && ( handle == rhs.handle ) && ( name == rhs.name );
+ }
+
+ bool operator!=( ImportFenceWin32HandleInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImportFenceWin32HandleInfoKHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Fence fence = {};
+ VULKAN_HPP_NAMESPACE::FenceImportFlags flags = {};
+ VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits handleType =
+ VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits::eOpaqueFd;
+ HANDLE handle = {};
+ LPCWSTR name = {};
+ };
+ static_assert( sizeof( ImportFenceWin32HandleInfoKHR ) == sizeof( VkImportFenceWin32HandleInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ImportFenceWin32HandleInfoKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eImportFenceWin32HandleInfoKHR>
+ {
+ using Type = ImportFenceWin32HandleInfoKHR;
+ };
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+
+ struct ImportMemoryFdInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImportMemoryFdInfoKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR ImportMemoryFdInfoKHR( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType_ =
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits::eOpaqueFd,
+ int fd_ = {} ) VULKAN_HPP_NOEXCEPT
+ : handleType( handleType_ )
+ , fd( fd_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR ImportMemoryFdInfoKHR( ImportMemoryFdInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImportMemoryFdInfoKHR( VkImportMemoryFdInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ImportMemoryFdInfoKHR( *reinterpret_cast<ImportMemoryFdInfoKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ImportMemoryFdInfoKHR &
+ operator=( ImportMemoryFdInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImportMemoryFdInfoKHR & operator=( VkImportMemoryFdInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImportMemoryFdInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ ImportMemoryFdInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ ImportMemoryFdInfoKHR &
+ setHandleType( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType_ ) VULKAN_HPP_NOEXCEPT
+ {
+ handleType = handleType_;
+ return *this;
+ }
+
+ ImportMemoryFdInfoKHR & setFd( int fd_ ) VULKAN_HPP_NOEXCEPT
+ {
+ fd = fd_;
+ return *this;
+ }
+
+ operator VkImportMemoryFdInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkImportMemoryFdInfoKHR *>( this );
+ }
+
+ operator VkImportMemoryFdInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkImportMemoryFdInfoKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ImportMemoryFdInfoKHR const & ) const = default;
+#else
+ bool operator==( ImportMemoryFdInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( handleType == rhs.handleType ) && ( fd == rhs.fd );
+ }
+
+ bool operator!=( ImportMemoryFdInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImportMemoryFdInfoKHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType =
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits::eOpaqueFd;
+ int fd = {};
+ };
+ static_assert( sizeof( ImportMemoryFdInfoKHR ) == sizeof( VkImportMemoryFdInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ImportMemoryFdInfoKHR>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eImportMemoryFdInfoKHR>
+ {
+ using Type = ImportMemoryFdInfoKHR;
+ };
+
+ struct ImportMemoryHostPointerInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImportMemoryHostPointerInfoEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ ImportMemoryHostPointerInfoEXT( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType_ =
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits::eOpaqueFd,
+ void * pHostPointer_ = {} ) VULKAN_HPP_NOEXCEPT
+ : handleType( handleType_ )
+ , pHostPointer( pHostPointer_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ ImportMemoryHostPointerInfoEXT( ImportMemoryHostPointerInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImportMemoryHostPointerInfoEXT( VkImportMemoryHostPointerInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ImportMemoryHostPointerInfoEXT( *reinterpret_cast<ImportMemoryHostPointerInfoEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ImportMemoryHostPointerInfoEXT &
+ operator=( ImportMemoryHostPointerInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImportMemoryHostPointerInfoEXT & operator=( VkImportMemoryHostPointerInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImportMemoryHostPointerInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ ImportMemoryHostPointerInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ ImportMemoryHostPointerInfoEXT &
+ setHandleType( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType_ ) VULKAN_HPP_NOEXCEPT
+ {
+ handleType = handleType_;
+ return *this;
+ }
+
+ ImportMemoryHostPointerInfoEXT & setPHostPointer( void * pHostPointer_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pHostPointer = pHostPointer_;
+ return *this;
+ }
+
+ operator VkImportMemoryHostPointerInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkImportMemoryHostPointerInfoEXT *>( this );
+ }
+
+ operator VkImportMemoryHostPointerInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkImportMemoryHostPointerInfoEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ImportMemoryHostPointerInfoEXT const & ) const = default;
+#else
+ bool operator==( ImportMemoryHostPointerInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( handleType == rhs.handleType ) &&
+ ( pHostPointer == rhs.pHostPointer );
+ }
+
+ bool operator!=( ImportMemoryHostPointerInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImportMemoryHostPointerInfoEXT;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType =
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits::eOpaqueFd;
+ void * pHostPointer = {};
+ };
+ static_assert( sizeof( ImportMemoryHostPointerInfoEXT ) == sizeof( VkImportMemoryHostPointerInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ImportMemoryHostPointerInfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eImportMemoryHostPointerInfoEXT>
+ {
+ using Type = ImportMemoryHostPointerInfoEXT;
+ };
+
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ struct ImportMemoryWin32HandleInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImportMemoryWin32HandleInfoKHR;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ ImportMemoryWin32HandleInfoKHR( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType_ =
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits::eOpaqueFd,
+ HANDLE handle_ = {},
+ LPCWSTR name_ = {} ) VULKAN_HPP_NOEXCEPT
+ : handleType( handleType_ )
+ , handle( handle_ )
+ , name( name_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ ImportMemoryWin32HandleInfoKHR( ImportMemoryWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImportMemoryWin32HandleInfoKHR( VkImportMemoryWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ImportMemoryWin32HandleInfoKHR( *reinterpret_cast<ImportMemoryWin32HandleInfoKHR const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ImportMemoryWin32HandleInfoKHR &
+ operator=( ImportMemoryWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImportMemoryWin32HandleInfoKHR & operator=( VkImportMemoryWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImportMemoryWin32HandleInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ ImportMemoryWin32HandleInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ ImportMemoryWin32HandleInfoKHR &
+ setHandleType( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType_ ) VULKAN_HPP_NOEXCEPT
+ {
+ handleType = handleType_;
+ return *this;
+ }
+
+ ImportMemoryWin32HandleInfoKHR & setHandle( HANDLE handle_ ) VULKAN_HPP_NOEXCEPT
+ {
+ handle = handle_;
+ return *this;
+ }
+
+ ImportMemoryWin32HandleInfoKHR & setName( LPCWSTR name_ ) VULKAN_HPP_NOEXCEPT
+ {
+ name = name_;
+ return *this;
+ }
+
+ operator VkImportMemoryWin32HandleInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkImportMemoryWin32HandleInfoKHR *>( this );
+ }
+
+ operator VkImportMemoryWin32HandleInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkImportMemoryWin32HandleInfoKHR *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ImportMemoryWin32HandleInfoKHR const & ) const = default;
+# else
+ bool operator==( ImportMemoryWin32HandleInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( handleType == rhs.handleType ) &&
+ ( handle == rhs.handle ) && ( name == rhs.name );
+ }
+
+ bool operator!=( ImportMemoryWin32HandleInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImportMemoryWin32HandleInfoKHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType =
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits::eOpaqueFd;
+ HANDLE handle = {};
+ LPCWSTR name = {};
+ };
+ static_assert( sizeof( ImportMemoryWin32HandleInfoKHR ) == sizeof( VkImportMemoryWin32HandleInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ImportMemoryWin32HandleInfoKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eImportMemoryWin32HandleInfoKHR>
+ {
+ using Type = ImportMemoryWin32HandleInfoKHR;
+ };
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ struct ImportMemoryWin32HandleInfoNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImportMemoryWin32HandleInfoNV;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ ImportMemoryWin32HandleInfoNV( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV handleType_ = {},
+ HANDLE handle_ = {} ) VULKAN_HPP_NOEXCEPT
+ : handleType( handleType_ )
+ , handle( handle_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ ImportMemoryWin32HandleInfoNV( ImportMemoryWin32HandleInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImportMemoryWin32HandleInfoNV( VkImportMemoryWin32HandleInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ImportMemoryWin32HandleInfoNV( *reinterpret_cast<ImportMemoryWin32HandleInfoNV const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ImportMemoryWin32HandleInfoNV &
+ operator=( ImportMemoryWin32HandleInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImportMemoryWin32HandleInfoNV & operator=( VkImportMemoryWin32HandleInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImportMemoryWin32HandleInfoNV const *>( &rhs );
+ return *this;
+ }
+
+ ImportMemoryWin32HandleInfoNV & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ ImportMemoryWin32HandleInfoNV &
+ setHandleType( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV handleType_ ) VULKAN_HPP_NOEXCEPT
+ {
+ handleType = handleType_;
+ return *this;
+ }
+
+ ImportMemoryWin32HandleInfoNV & setHandle( HANDLE handle_ ) VULKAN_HPP_NOEXCEPT
+ {
+ handle = handle_;
+ return *this;
+ }
+
+ operator VkImportMemoryWin32HandleInfoNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkImportMemoryWin32HandleInfoNV *>( this );
+ }
+
+ operator VkImportMemoryWin32HandleInfoNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkImportMemoryWin32HandleInfoNV *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ImportMemoryWin32HandleInfoNV const & ) const = default;
+# else
+ bool operator==( ImportMemoryWin32HandleInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( handleType == rhs.handleType ) &&
+ ( handle == rhs.handle );
+ }
+
+ bool operator!=( ImportMemoryWin32HandleInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImportMemoryWin32HandleInfoNV;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV handleType = {};
+ HANDLE handle = {};
+ };
+ static_assert( sizeof( ImportMemoryWin32HandleInfoNV ) == sizeof( VkImportMemoryWin32HandleInfoNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ImportMemoryWin32HandleInfoNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eImportMemoryWin32HandleInfoNV>
+ {
+ using Type = ImportMemoryWin32HandleInfoNV;
+ };
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+
+#if defined( VK_USE_PLATFORM_FUCHSIA )
+ struct ImportMemoryZirconHandleInfoFUCHSIA
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eImportMemoryZirconHandleInfoFUCHSIA;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ ImportMemoryZirconHandleInfoFUCHSIA( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType_ =
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits::eOpaqueFd,
+ zx_handle_t handle_ = {} ) VULKAN_HPP_NOEXCEPT
+ : handleType( handleType_ )
+ , handle( handle_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR ImportMemoryZirconHandleInfoFUCHSIA( ImportMemoryZirconHandleInfoFUCHSIA const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ ImportMemoryZirconHandleInfoFUCHSIA( VkImportMemoryZirconHandleInfoFUCHSIA const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ImportMemoryZirconHandleInfoFUCHSIA( *reinterpret_cast<ImportMemoryZirconHandleInfoFUCHSIA const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ImportMemoryZirconHandleInfoFUCHSIA &
+ operator=( ImportMemoryZirconHandleInfoFUCHSIA const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImportMemoryZirconHandleInfoFUCHSIA &
+ operator=( VkImportMemoryZirconHandleInfoFUCHSIA const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImportMemoryZirconHandleInfoFUCHSIA const *>( &rhs );
+ return *this;
+ }
+
+ ImportMemoryZirconHandleInfoFUCHSIA & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ ImportMemoryZirconHandleInfoFUCHSIA &
+ setHandleType( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType_ ) VULKAN_HPP_NOEXCEPT
+ {
+ handleType = handleType_;
+ return *this;
+ }
+
+ ImportMemoryZirconHandleInfoFUCHSIA & setHandle( zx_handle_t handle_ ) VULKAN_HPP_NOEXCEPT
+ {
+ handle = handle_;
+ return *this;
+ }
+
+ operator VkImportMemoryZirconHandleInfoFUCHSIA const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkImportMemoryZirconHandleInfoFUCHSIA *>( this );
+ }
+
+ operator VkImportMemoryZirconHandleInfoFUCHSIA &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkImportMemoryZirconHandleInfoFUCHSIA *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ImportMemoryZirconHandleInfoFUCHSIA const & ) const = default;
+# else
+ bool operator==( ImportMemoryZirconHandleInfoFUCHSIA const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( handleType == rhs.handleType ) &&
+ ( memcmp( &handle, &rhs.handle, sizeof( zx_handle_t ) ) == 0 );
+ }
+
+ bool operator!=( ImportMemoryZirconHandleInfoFUCHSIA const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImportMemoryZirconHandleInfoFUCHSIA;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType =
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits::eOpaqueFd;
+ zx_handle_t handle = {};
+ };
+ static_assert( sizeof( ImportMemoryZirconHandleInfoFUCHSIA ) == sizeof( VkImportMemoryZirconHandleInfoFUCHSIA ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ImportMemoryZirconHandleInfoFUCHSIA>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eImportMemoryZirconHandleInfoFUCHSIA>
+ {
+ using Type = ImportMemoryZirconHandleInfoFUCHSIA;
+ };
+#endif /*VK_USE_PLATFORM_FUCHSIA*/
+
+ struct ImportSemaphoreFdInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImportSemaphoreFdInfoKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ ImportSemaphoreFdInfoKHR( VULKAN_HPP_NAMESPACE::Semaphore semaphore_ = {},
+ VULKAN_HPP_NAMESPACE::SemaphoreImportFlags flags_ = {},
+ VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits handleType_ =
+ VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits::eOpaqueFd,
+ int fd_ = {} ) VULKAN_HPP_NOEXCEPT
+ : semaphore( semaphore_ )
+ , flags( flags_ )
+ , handleType( handleType_ )
+ , fd( fd_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR ImportSemaphoreFdInfoKHR( ImportSemaphoreFdInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImportSemaphoreFdInfoKHR( VkImportSemaphoreFdInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ImportSemaphoreFdInfoKHR( *reinterpret_cast<ImportSemaphoreFdInfoKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ImportSemaphoreFdInfoKHR &
+ operator=( ImportSemaphoreFdInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImportSemaphoreFdInfoKHR & operator=( VkImportSemaphoreFdInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImportSemaphoreFdInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ ImportSemaphoreFdInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ ImportSemaphoreFdInfoKHR & setSemaphore( VULKAN_HPP_NAMESPACE::Semaphore semaphore_ ) VULKAN_HPP_NOEXCEPT
+ {
+ semaphore = semaphore_;
+ return *this;
+ }
+
+ ImportSemaphoreFdInfoKHR & setFlags( VULKAN_HPP_NAMESPACE::SemaphoreImportFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ ImportSemaphoreFdInfoKHR &
+ setHandleType( VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits handleType_ ) VULKAN_HPP_NOEXCEPT
+ {
+ handleType = handleType_;
+ return *this;
+ }
+
+ ImportSemaphoreFdInfoKHR & setFd( int fd_ ) VULKAN_HPP_NOEXCEPT
+ {
+ fd = fd_;
+ return *this;
+ }
+
+ operator VkImportSemaphoreFdInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkImportSemaphoreFdInfoKHR *>( this );
+ }
+
+ operator VkImportSemaphoreFdInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkImportSemaphoreFdInfoKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ImportSemaphoreFdInfoKHR const & ) const = default;
+#else
+ bool operator==( ImportSemaphoreFdInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( semaphore == rhs.semaphore ) &&
+ ( flags == rhs.flags ) && ( handleType == rhs.handleType ) && ( fd == rhs.fd );
+ }
+
+ bool operator!=( ImportSemaphoreFdInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImportSemaphoreFdInfoKHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Semaphore semaphore = {};
+ VULKAN_HPP_NAMESPACE::SemaphoreImportFlags flags = {};
+ VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits handleType =
+ VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits::eOpaqueFd;
+ int fd = {};
+ };
+ static_assert( sizeof( ImportSemaphoreFdInfoKHR ) == sizeof( VkImportSemaphoreFdInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ImportSemaphoreFdInfoKHR>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eImportSemaphoreFdInfoKHR>
+ {
+ using Type = ImportSemaphoreFdInfoKHR;
+ };
+
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ struct ImportSemaphoreWin32HandleInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eImportSemaphoreWin32HandleInfoKHR;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ ImportSemaphoreWin32HandleInfoKHR( VULKAN_HPP_NAMESPACE::Semaphore semaphore_ = {},
+ VULKAN_HPP_NAMESPACE::SemaphoreImportFlags flags_ = {},
+ VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits handleType_ =
+ VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits::eOpaqueFd,
+ HANDLE handle_ = {},
+ LPCWSTR name_ = {} ) VULKAN_HPP_NOEXCEPT
+ : semaphore( semaphore_ )
+ , flags( flags_ )
+ , handleType( handleType_ )
+ , handle( handle_ )
+ , name( name_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ ImportSemaphoreWin32HandleInfoKHR( ImportSemaphoreWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImportSemaphoreWin32HandleInfoKHR( VkImportSemaphoreWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ImportSemaphoreWin32HandleInfoKHR( *reinterpret_cast<ImportSemaphoreWin32HandleInfoKHR const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ImportSemaphoreWin32HandleInfoKHR &
+ operator=( ImportSemaphoreWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImportSemaphoreWin32HandleInfoKHR & operator=( VkImportSemaphoreWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImportSemaphoreWin32HandleInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ ImportSemaphoreWin32HandleInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ ImportSemaphoreWin32HandleInfoKHR & setSemaphore( VULKAN_HPP_NAMESPACE::Semaphore semaphore_ ) VULKAN_HPP_NOEXCEPT
+ {
+ semaphore = semaphore_;
+ return *this;
+ }
+
+ ImportSemaphoreWin32HandleInfoKHR &
+ setFlags( VULKAN_HPP_NAMESPACE::SemaphoreImportFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ ImportSemaphoreWin32HandleInfoKHR &
+ setHandleType( VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits handleType_ ) VULKAN_HPP_NOEXCEPT
+ {
+ handleType = handleType_;
+ return *this;
+ }
+
+ ImportSemaphoreWin32HandleInfoKHR & setHandle( HANDLE handle_ ) VULKAN_HPP_NOEXCEPT
+ {
+ handle = handle_;
+ return *this;
+ }
+
+ ImportSemaphoreWin32HandleInfoKHR & setName( LPCWSTR name_ ) VULKAN_HPP_NOEXCEPT
+ {
+ name = name_;
+ return *this;
+ }
+
+ operator VkImportSemaphoreWin32HandleInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkImportSemaphoreWin32HandleInfoKHR *>( this );
+ }
+
+ operator VkImportSemaphoreWin32HandleInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkImportSemaphoreWin32HandleInfoKHR *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ImportSemaphoreWin32HandleInfoKHR const & ) const = default;
+# else
+ bool operator==( ImportSemaphoreWin32HandleInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( semaphore == rhs.semaphore ) &&
+ ( flags == rhs.flags ) && ( handleType == rhs.handleType ) && ( handle == rhs.handle ) &&
+ ( name == rhs.name );
+ }
+
+ bool operator!=( ImportSemaphoreWin32HandleInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImportSemaphoreWin32HandleInfoKHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Semaphore semaphore = {};
+ VULKAN_HPP_NAMESPACE::SemaphoreImportFlags flags = {};
+ VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits handleType =
+ VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits::eOpaqueFd;
+ HANDLE handle = {};
+ LPCWSTR name = {};
+ };
+ static_assert( sizeof( ImportSemaphoreWin32HandleInfoKHR ) == sizeof( VkImportSemaphoreWin32HandleInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ImportSemaphoreWin32HandleInfoKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eImportSemaphoreWin32HandleInfoKHR>
+ {
+ using Type = ImportSemaphoreWin32HandleInfoKHR;
+ };
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+
+#if defined( VK_USE_PLATFORM_FUCHSIA )
+ struct ImportSemaphoreZirconHandleInfoFUCHSIA
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eImportSemaphoreZirconHandleInfoFUCHSIA;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ ImportSemaphoreZirconHandleInfoFUCHSIA( VULKAN_HPP_NAMESPACE::Semaphore semaphore_ = {},
+ VULKAN_HPP_NAMESPACE::SemaphoreImportFlags flags_ = {},
+ VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits handleType_ =
+ VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits::eOpaqueFd,
+ zx_handle_t zirconHandle_ = {} ) VULKAN_HPP_NOEXCEPT
+ : semaphore( semaphore_ )
+ , flags( flags_ )
+ , handleType( handleType_ )
+ , zirconHandle( zirconHandle_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR ImportSemaphoreZirconHandleInfoFUCHSIA( ImportSemaphoreZirconHandleInfoFUCHSIA const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ ImportSemaphoreZirconHandleInfoFUCHSIA( VkImportSemaphoreZirconHandleInfoFUCHSIA const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ImportSemaphoreZirconHandleInfoFUCHSIA(
+ *reinterpret_cast<ImportSemaphoreZirconHandleInfoFUCHSIA const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ImportSemaphoreZirconHandleInfoFUCHSIA &
+ operator=( ImportSemaphoreZirconHandleInfoFUCHSIA const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ImportSemaphoreZirconHandleInfoFUCHSIA &
+ operator=( VkImportSemaphoreZirconHandleInfoFUCHSIA const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImportSemaphoreZirconHandleInfoFUCHSIA const *>( &rhs );
+ return *this;
+ }
+
+ ImportSemaphoreZirconHandleInfoFUCHSIA & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ ImportSemaphoreZirconHandleInfoFUCHSIA &
+ setSemaphore( VULKAN_HPP_NAMESPACE::Semaphore semaphore_ ) VULKAN_HPP_NOEXCEPT
+ {
+ semaphore = semaphore_;
+ return *this;
+ }
+
+ ImportSemaphoreZirconHandleInfoFUCHSIA &
+ setFlags( VULKAN_HPP_NAMESPACE::SemaphoreImportFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ ImportSemaphoreZirconHandleInfoFUCHSIA &
+ setHandleType( VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits handleType_ ) VULKAN_HPP_NOEXCEPT
+ {
+ handleType = handleType_;
+ return *this;
+ }
+
+ ImportSemaphoreZirconHandleInfoFUCHSIA & setZirconHandle( zx_handle_t zirconHandle_ ) VULKAN_HPP_NOEXCEPT
+ {
+ zirconHandle = zirconHandle_;
+ return *this;
+ }
+
+ operator VkImportSemaphoreZirconHandleInfoFUCHSIA const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkImportSemaphoreZirconHandleInfoFUCHSIA *>( this );
+ }
+
+ operator VkImportSemaphoreZirconHandleInfoFUCHSIA &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkImportSemaphoreZirconHandleInfoFUCHSIA *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ImportSemaphoreZirconHandleInfoFUCHSIA const & ) const = default;
+# else
+ bool operator==( ImportSemaphoreZirconHandleInfoFUCHSIA const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( semaphore == rhs.semaphore ) &&
+ ( flags == rhs.flags ) && ( handleType == rhs.handleType ) &&
+ ( memcmp( &zirconHandle, &rhs.zirconHandle, sizeof( zx_handle_t ) ) == 0 );
+ }
+
+ bool operator!=( ImportSemaphoreZirconHandleInfoFUCHSIA const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImportSemaphoreZirconHandleInfoFUCHSIA;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Semaphore semaphore = {};
+ VULKAN_HPP_NAMESPACE::SemaphoreImportFlags flags = {};
+ VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits handleType =
+ VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits::eOpaqueFd;
+ zx_handle_t zirconHandle = {};
+ };
+ static_assert( sizeof( ImportSemaphoreZirconHandleInfoFUCHSIA ) == sizeof( VkImportSemaphoreZirconHandleInfoFUCHSIA ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ImportSemaphoreZirconHandleInfoFUCHSIA>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eImportSemaphoreZirconHandleInfoFUCHSIA>
+ {
+ using Type = ImportSemaphoreZirconHandleInfoFUCHSIA;
+ };
+#endif /*VK_USE_PLATFORM_FUCHSIA*/
+
+ struct IndirectCommandsLayoutTokenNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eIndirectCommandsLayoutTokenNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ IndirectCommandsLayoutTokenNV( VULKAN_HPP_NAMESPACE::IndirectCommandsTokenTypeNV tokenType_ =
+ VULKAN_HPP_NAMESPACE::IndirectCommandsTokenTypeNV::eShaderGroup,
+ uint32_t stream_ = {},
+ uint32_t offset_ = {},
+ uint32_t vertexBindingUnit_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 vertexDynamicStride_ = {},
+ VULKAN_HPP_NAMESPACE::PipelineLayout pushconstantPipelineLayout_ = {},
+ VULKAN_HPP_NAMESPACE::ShaderStageFlags pushconstantShaderStageFlags_ = {},
+ uint32_t pushconstantOffset_ = {},
+ uint32_t pushconstantSize_ = {},
+ VULKAN_HPP_NAMESPACE::IndirectStateFlagsNV indirectStateFlags_ = {},
+ uint32_t indexTypeCount_ = {},
+ const VULKAN_HPP_NAMESPACE::IndexType * pIndexTypes_ = {},
+ const uint32_t * pIndexTypeValues_ = {} ) VULKAN_HPP_NOEXCEPT
+ : tokenType( tokenType_ )
+ , stream( stream_ )
+ , offset( offset_ )
+ , vertexBindingUnit( vertexBindingUnit_ )
+ , vertexDynamicStride( vertexDynamicStride_ )
+ , pushconstantPipelineLayout( pushconstantPipelineLayout_ )
+ , pushconstantShaderStageFlags( pushconstantShaderStageFlags_ )
+ , pushconstantOffset( pushconstantOffset_ )
+ , pushconstantSize( pushconstantSize_ )
+ , indirectStateFlags( indirectStateFlags_ )
+ , indexTypeCount( indexTypeCount_ )
+ , pIndexTypes( pIndexTypes_ )
+ , pIndexTypeValues( pIndexTypeValues_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ IndirectCommandsLayoutTokenNV( IndirectCommandsLayoutTokenNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ IndirectCommandsLayoutTokenNV( VkIndirectCommandsLayoutTokenNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ : IndirectCommandsLayoutTokenNV( *reinterpret_cast<IndirectCommandsLayoutTokenNV const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ IndirectCommandsLayoutTokenNV(
+ VULKAN_HPP_NAMESPACE::IndirectCommandsTokenTypeNV tokenType_,
+ uint32_t stream_,
+ uint32_t offset_,
+ uint32_t vertexBindingUnit_,
+ VULKAN_HPP_NAMESPACE::Bool32 vertexDynamicStride_,
+ VULKAN_HPP_NAMESPACE::PipelineLayout pushconstantPipelineLayout_,
+ VULKAN_HPP_NAMESPACE::ShaderStageFlags pushconstantShaderStageFlags_,
+ uint32_t pushconstantOffset_,
+ uint32_t pushconstantSize_,
+ VULKAN_HPP_NAMESPACE::IndirectStateFlagsNV indirectStateFlags_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::IndexType> const & indexTypes_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & indexTypeValues_ = {} )
+ : tokenType( tokenType_ )
+ , stream( stream_ )
+ , offset( offset_ )
+ , vertexBindingUnit( vertexBindingUnit_ )
+ , vertexDynamicStride( vertexDynamicStride_ )
+ , pushconstantPipelineLayout( pushconstantPipelineLayout_ )
+ , pushconstantShaderStageFlags( pushconstantShaderStageFlags_ )
+ , pushconstantOffset( pushconstantOffset_ )
+ , pushconstantSize( pushconstantSize_ )
+ , indirectStateFlags( indirectStateFlags_ )
+ , indexTypeCount( static_cast<uint32_t>( indexTypes_.size() ) )
+ , pIndexTypes( indexTypes_.data() )
+ , pIndexTypeValues( indexTypeValues_.data() )
+ {
+# ifdef VULKAN_HPP_NO_EXCEPTIONS
+ VULKAN_HPP_ASSERT( indexTypes_.size() == indexTypeValues_.size() );
+# else
+ if ( indexTypes_.size() != indexTypeValues_.size() )
+ {
+ throw LogicError(
+ VULKAN_HPP_NAMESPACE_STRING
+ "::IndirectCommandsLayoutTokenNV::IndirectCommandsLayoutTokenNV: indexTypes_.size() != indexTypeValues_.size()" );
+ }
+# endif /*VULKAN_HPP_NO_EXCEPTIONS*/
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 IndirectCommandsLayoutTokenNV &
+ operator=( IndirectCommandsLayoutTokenNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ IndirectCommandsLayoutTokenNV & operator=( VkIndirectCommandsLayoutTokenNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutTokenNV const *>( &rhs );
+ return *this;
+ }
+
+ IndirectCommandsLayoutTokenNV & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ IndirectCommandsLayoutTokenNV &
+ setTokenType( VULKAN_HPP_NAMESPACE::IndirectCommandsTokenTypeNV tokenType_ ) VULKAN_HPP_NOEXCEPT
+ {
+ tokenType = tokenType_;
+ return *this;
+ }
+
+ IndirectCommandsLayoutTokenNV & setStream( uint32_t stream_ ) VULKAN_HPP_NOEXCEPT
+ {
+ stream = stream_;
+ return *this;
+ }
+
+ IndirectCommandsLayoutTokenNV & setOffset( uint32_t offset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ offset = offset_;
+ return *this;
+ }
+
+ IndirectCommandsLayoutTokenNV & setVertexBindingUnit( uint32_t vertexBindingUnit_ ) VULKAN_HPP_NOEXCEPT
+ {
+ vertexBindingUnit = vertexBindingUnit_;
+ return *this;
+ }
+
+ IndirectCommandsLayoutTokenNV &
+ setVertexDynamicStride( VULKAN_HPP_NAMESPACE::Bool32 vertexDynamicStride_ ) VULKAN_HPP_NOEXCEPT
+ {
+ vertexDynamicStride = vertexDynamicStride_;
+ return *this;
+ }
+
+ IndirectCommandsLayoutTokenNV & setPushconstantPipelineLayout(
+ VULKAN_HPP_NAMESPACE::PipelineLayout pushconstantPipelineLayout_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pushconstantPipelineLayout = pushconstantPipelineLayout_;
+ return *this;
+ }
+
+ IndirectCommandsLayoutTokenNV & setPushconstantShaderStageFlags(
+ VULKAN_HPP_NAMESPACE::ShaderStageFlags pushconstantShaderStageFlags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pushconstantShaderStageFlags = pushconstantShaderStageFlags_;
+ return *this;
+ }
+
+ IndirectCommandsLayoutTokenNV & setPushconstantOffset( uint32_t pushconstantOffset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pushconstantOffset = pushconstantOffset_;
+ return *this;
+ }
+
+ IndirectCommandsLayoutTokenNV & setPushconstantSize( uint32_t pushconstantSize_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pushconstantSize = pushconstantSize_;
+ return *this;
+ }
+
+ IndirectCommandsLayoutTokenNV &
+ setIndirectStateFlags( VULKAN_HPP_NAMESPACE::IndirectStateFlagsNV indirectStateFlags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ indirectStateFlags = indirectStateFlags_;
+ return *this;
+ }
+
+ IndirectCommandsLayoutTokenNV & setIndexTypeCount( uint32_t indexTypeCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ indexTypeCount = indexTypeCount_;
+ return *this;
+ }
+
+ IndirectCommandsLayoutTokenNV &
+ setPIndexTypes( const VULKAN_HPP_NAMESPACE::IndexType * pIndexTypes_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pIndexTypes = pIndexTypes_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ IndirectCommandsLayoutTokenNV & setIndexTypes(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::IndexType> const & indexTypes_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ indexTypeCount = static_cast<uint32_t>( indexTypes_.size() );
+ pIndexTypes = indexTypes_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ IndirectCommandsLayoutTokenNV & setPIndexTypeValues( const uint32_t * pIndexTypeValues_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pIndexTypeValues = pIndexTypeValues_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ IndirectCommandsLayoutTokenNV & setIndexTypeValues(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & indexTypeValues_ ) VULKAN_HPP_NOEXCEPT
+ {
+ indexTypeCount = static_cast<uint32_t>( indexTypeValues_.size() );
+ pIndexTypeValues = indexTypeValues_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkIndirectCommandsLayoutTokenNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkIndirectCommandsLayoutTokenNV *>( this );
+ }
+
+ operator VkIndirectCommandsLayoutTokenNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkIndirectCommandsLayoutTokenNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( IndirectCommandsLayoutTokenNV const & ) const = default;
+#else
+ bool operator==( IndirectCommandsLayoutTokenNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( tokenType == rhs.tokenType ) &&
+ ( stream == rhs.stream ) && ( offset == rhs.offset ) && ( vertexBindingUnit == rhs.vertexBindingUnit ) &&
+ ( vertexDynamicStride == rhs.vertexDynamicStride ) &&
+ ( pushconstantPipelineLayout == rhs.pushconstantPipelineLayout ) &&
+ ( pushconstantShaderStageFlags == rhs.pushconstantShaderStageFlags ) &&
+ ( pushconstantOffset == rhs.pushconstantOffset ) && ( pushconstantSize == rhs.pushconstantSize ) &&
+ ( indirectStateFlags == rhs.indirectStateFlags ) && ( indexTypeCount == rhs.indexTypeCount ) &&
+ ( pIndexTypes == rhs.pIndexTypes ) && ( pIndexTypeValues == rhs.pIndexTypeValues );
+ }
+
+ bool operator!=( IndirectCommandsLayoutTokenNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eIndirectCommandsLayoutTokenNV;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::IndirectCommandsTokenTypeNV tokenType =
+ VULKAN_HPP_NAMESPACE::IndirectCommandsTokenTypeNV::eShaderGroup;
+ uint32_t stream = {};
+ uint32_t offset = {};
+ uint32_t vertexBindingUnit = {};
+ VULKAN_HPP_NAMESPACE::Bool32 vertexDynamicStride = {};
+ VULKAN_HPP_NAMESPACE::PipelineLayout pushconstantPipelineLayout = {};
+ VULKAN_HPP_NAMESPACE::ShaderStageFlags pushconstantShaderStageFlags = {};
+ uint32_t pushconstantOffset = {};
+ uint32_t pushconstantSize = {};
+ VULKAN_HPP_NAMESPACE::IndirectStateFlagsNV indirectStateFlags = {};
+ uint32_t indexTypeCount = {};
+ const VULKAN_HPP_NAMESPACE::IndexType * pIndexTypes = {};
+ const uint32_t * pIndexTypeValues = {};
+ };
+ static_assert( sizeof( IndirectCommandsLayoutTokenNV ) == sizeof( VkIndirectCommandsLayoutTokenNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<IndirectCommandsLayoutTokenNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eIndirectCommandsLayoutTokenNV>
+ {
+ using Type = IndirectCommandsLayoutTokenNV;
+ };
+
+ struct IndirectCommandsLayoutCreateInfoNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eIndirectCommandsLayoutCreateInfoNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR IndirectCommandsLayoutCreateInfoNV(
+ VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutUsageFlagsNV flags_ = {},
+ VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint_ = VULKAN_HPP_NAMESPACE::PipelineBindPoint::eGraphics,
+ uint32_t tokenCount_ = {},
+ const VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutTokenNV * pTokens_ = {},
+ uint32_t streamCount_ = {},
+ const uint32_t * pStreamStrides_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , pipelineBindPoint( pipelineBindPoint_ )
+ , tokenCount( tokenCount_ )
+ , pTokens( pTokens_ )
+ , streamCount( streamCount_ )
+ , pStreamStrides( pStreamStrides_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR IndirectCommandsLayoutCreateInfoNV( IndirectCommandsLayoutCreateInfoNV const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ IndirectCommandsLayoutCreateInfoNV( VkIndirectCommandsLayoutCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ : IndirectCommandsLayoutCreateInfoNV( *reinterpret_cast<IndirectCommandsLayoutCreateInfoNV const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ IndirectCommandsLayoutCreateInfoNV(
+ VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutUsageFlagsNV flags_,
+ VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutTokenNV> const &
+ tokens_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & streamStrides_ = {} )
+ : flags( flags_ )
+ , pipelineBindPoint( pipelineBindPoint_ )
+ , tokenCount( static_cast<uint32_t>( tokens_.size() ) )
+ , pTokens( tokens_.data() )
+ , streamCount( static_cast<uint32_t>( streamStrides_.size() ) )
+ , pStreamStrides( streamStrides_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 IndirectCommandsLayoutCreateInfoNV &
+ operator=( IndirectCommandsLayoutCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ IndirectCommandsLayoutCreateInfoNV &
+ operator=( VkIndirectCommandsLayoutCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutCreateInfoNV const *>( &rhs );
+ return *this;
+ }
+
+ IndirectCommandsLayoutCreateInfoNV & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ IndirectCommandsLayoutCreateInfoNV &
+ setFlags( VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutUsageFlagsNV flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ IndirectCommandsLayoutCreateInfoNV &
+ setPipelineBindPoint( VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pipelineBindPoint = pipelineBindPoint_;
+ return *this;
+ }
+
+ IndirectCommandsLayoutCreateInfoNV & setTokenCount( uint32_t tokenCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ tokenCount = tokenCount_;
+ return *this;
+ }
+
+ IndirectCommandsLayoutCreateInfoNV &
+ setPTokens( const VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutTokenNV * pTokens_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pTokens = pTokens_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ IndirectCommandsLayoutCreateInfoNV & setTokens(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutTokenNV> const &
+ tokens_ ) VULKAN_HPP_NOEXCEPT
+ {
+ tokenCount = static_cast<uint32_t>( tokens_.size() );
+ pTokens = tokens_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ IndirectCommandsLayoutCreateInfoNV & setStreamCount( uint32_t streamCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ streamCount = streamCount_;
+ return *this;
+ }
+
+ IndirectCommandsLayoutCreateInfoNV & setPStreamStrides( const uint32_t * pStreamStrides_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pStreamStrides = pStreamStrides_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ IndirectCommandsLayoutCreateInfoNV & setStreamStrides(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & streamStrides_ ) VULKAN_HPP_NOEXCEPT
+ {
+ streamCount = static_cast<uint32_t>( streamStrides_.size() );
+ pStreamStrides = streamStrides_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkIndirectCommandsLayoutCreateInfoNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkIndirectCommandsLayoutCreateInfoNV *>( this );
+ }
+
+ operator VkIndirectCommandsLayoutCreateInfoNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkIndirectCommandsLayoutCreateInfoNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( IndirectCommandsLayoutCreateInfoNV const & ) const = default;
+#else
+ bool operator==( IndirectCommandsLayoutCreateInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( pipelineBindPoint == rhs.pipelineBindPoint ) && ( tokenCount == rhs.tokenCount ) &&
+ ( pTokens == rhs.pTokens ) && ( streamCount == rhs.streamCount ) &&
+ ( pStreamStrides == rhs.pStreamStrides );
+ }
+
+ bool operator!=( IndirectCommandsLayoutCreateInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eIndirectCommandsLayoutCreateInfoNV;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutUsageFlagsNV flags = {};
+ VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint = VULKAN_HPP_NAMESPACE::PipelineBindPoint::eGraphics;
+ uint32_t tokenCount = {};
+ const VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutTokenNV * pTokens = {};
+ uint32_t streamCount = {};
+ const uint32_t * pStreamStrides = {};
+ };
+ static_assert( sizeof( IndirectCommandsLayoutCreateInfoNV ) == sizeof( VkIndirectCommandsLayoutCreateInfoNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<IndirectCommandsLayoutCreateInfoNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eIndirectCommandsLayoutCreateInfoNV>
+ {
+ using Type = IndirectCommandsLayoutCreateInfoNV;
+ };
+
+ struct InitializePerformanceApiInfoINTEL
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eInitializePerformanceApiInfoINTEL;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR InitializePerformanceApiInfoINTEL( void * pUserData_ = {} ) VULKAN_HPP_NOEXCEPT
+ : pUserData( pUserData_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ InitializePerformanceApiInfoINTEL( InitializePerformanceApiInfoINTEL const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ InitializePerformanceApiInfoINTEL( VkInitializePerformanceApiInfoINTEL const & rhs ) VULKAN_HPP_NOEXCEPT
+ : InitializePerformanceApiInfoINTEL( *reinterpret_cast<InitializePerformanceApiInfoINTEL const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 InitializePerformanceApiInfoINTEL &
+ operator=( InitializePerformanceApiInfoINTEL const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ InitializePerformanceApiInfoINTEL & operator=( VkInitializePerformanceApiInfoINTEL const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::InitializePerformanceApiInfoINTEL const *>( &rhs );
+ return *this;
+ }
+
+ InitializePerformanceApiInfoINTEL & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ InitializePerformanceApiInfoINTEL & setPUserData( void * pUserData_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pUserData = pUserData_;
+ return *this;
+ }
+
+ operator VkInitializePerformanceApiInfoINTEL const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkInitializePerformanceApiInfoINTEL *>( this );
+ }
+
+ operator VkInitializePerformanceApiInfoINTEL &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkInitializePerformanceApiInfoINTEL *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( InitializePerformanceApiInfoINTEL const & ) const = default;
+#else
+ bool operator==( InitializePerformanceApiInfoINTEL const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( pUserData == rhs.pUserData );
+ }
+
+ bool operator!=( InitializePerformanceApiInfoINTEL const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eInitializePerformanceApiInfoINTEL;
+ const void * pNext = {};
+ void * pUserData = {};
+ };
+ static_assert( sizeof( InitializePerformanceApiInfoINTEL ) == sizeof( VkInitializePerformanceApiInfoINTEL ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<InitializePerformanceApiInfoINTEL>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eInitializePerformanceApiInfoINTEL>
+ {
+ using Type = InitializePerformanceApiInfoINTEL;
+ };
+
+ struct InputAttachmentAspectReference
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ InputAttachmentAspectReference( uint32_t subpass_ = {},
+ uint32_t inputAttachmentIndex_ = {},
+ VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask_ = {} ) VULKAN_HPP_NOEXCEPT
+ : subpass( subpass_ )
+ , inputAttachmentIndex( inputAttachmentIndex_ )
+ , aspectMask( aspectMask_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ InputAttachmentAspectReference( InputAttachmentAspectReference const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ InputAttachmentAspectReference( VkInputAttachmentAspectReference const & rhs ) VULKAN_HPP_NOEXCEPT
+ : InputAttachmentAspectReference( *reinterpret_cast<InputAttachmentAspectReference const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 InputAttachmentAspectReference &
+ operator=( InputAttachmentAspectReference const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ InputAttachmentAspectReference & operator=( VkInputAttachmentAspectReference const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::InputAttachmentAspectReference const *>( &rhs );
+ return *this;
+ }
+
+ InputAttachmentAspectReference & setSubpass( uint32_t subpass_ ) VULKAN_HPP_NOEXCEPT
+ {
+ subpass = subpass_;
+ return *this;
+ }
+
+ InputAttachmentAspectReference & setInputAttachmentIndex( uint32_t inputAttachmentIndex_ ) VULKAN_HPP_NOEXCEPT
+ {
+ inputAttachmentIndex = inputAttachmentIndex_;
+ return *this;
+ }
+
+ InputAttachmentAspectReference &
+ setAspectMask( VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask_ ) VULKAN_HPP_NOEXCEPT
+ {
+ aspectMask = aspectMask_;
+ return *this;
+ }
+
+ operator VkInputAttachmentAspectReference const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkInputAttachmentAspectReference *>( this );
+ }
+
+ operator VkInputAttachmentAspectReference &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkInputAttachmentAspectReference *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( InputAttachmentAspectReference const & ) const = default;
+#else
+ bool operator==( InputAttachmentAspectReference const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( subpass == rhs.subpass ) && ( inputAttachmentIndex == rhs.inputAttachmentIndex ) &&
+ ( aspectMask == rhs.aspectMask );
+ }
+
+ bool operator!=( InputAttachmentAspectReference const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ uint32_t subpass = {};
+ uint32_t inputAttachmentIndex = {};
+ VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask = {};
+ };
+ static_assert( sizeof( InputAttachmentAspectReference ) == sizeof( VkInputAttachmentAspectReference ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<InputAttachmentAspectReference>::value,
+ "struct wrapper is not a standard layout!" );
+ using InputAttachmentAspectReferenceKHR = InputAttachmentAspectReference;
+
+ struct InstanceCreateInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eInstanceCreateInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR InstanceCreateInfo( VULKAN_HPP_NAMESPACE::InstanceCreateFlags flags_ = {},
+ const VULKAN_HPP_NAMESPACE::ApplicationInfo * pApplicationInfo_ = {},
+ uint32_t enabledLayerCount_ = {},
+ const char * const * ppEnabledLayerNames_ = {},
+ uint32_t enabledExtensionCount_ = {},
+ const char * const * ppEnabledExtensionNames_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , pApplicationInfo( pApplicationInfo_ )
+ , enabledLayerCount( enabledLayerCount_ )
+ , ppEnabledLayerNames( ppEnabledLayerNames_ )
+ , enabledExtensionCount( enabledExtensionCount_ )
+ , ppEnabledExtensionNames( ppEnabledExtensionNames_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR InstanceCreateInfo( InstanceCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ InstanceCreateInfo( VkInstanceCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : InstanceCreateInfo( *reinterpret_cast<InstanceCreateInfo const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ InstanceCreateInfo(
+ VULKAN_HPP_NAMESPACE::InstanceCreateFlags flags_,
+ const VULKAN_HPP_NAMESPACE::ApplicationInfo * pApplicationInfo_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const char * const> const & pEnabledLayerNames_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const char * const> const & pEnabledExtensionNames_ = {} )
+ : flags( flags_ )
+ , pApplicationInfo( pApplicationInfo_ )
+ , enabledLayerCount( static_cast<uint32_t>( pEnabledLayerNames_.size() ) )
+ , ppEnabledLayerNames( pEnabledLayerNames_.data() )
+ , enabledExtensionCount( static_cast<uint32_t>( pEnabledExtensionNames_.size() ) )
+ , ppEnabledExtensionNames( pEnabledExtensionNames_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 InstanceCreateInfo &
+ operator=( InstanceCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ InstanceCreateInfo & operator=( VkInstanceCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::InstanceCreateInfo const *>( &rhs );
+ return *this;
+ }
+
+ InstanceCreateInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ InstanceCreateInfo & setFlags( VULKAN_HPP_NAMESPACE::InstanceCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ InstanceCreateInfo &
+ setPApplicationInfo( const VULKAN_HPP_NAMESPACE::ApplicationInfo * pApplicationInfo_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pApplicationInfo = pApplicationInfo_;
+ return *this;
+ }
+
+ InstanceCreateInfo & setEnabledLayerCount( uint32_t enabledLayerCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ enabledLayerCount = enabledLayerCount_;
+ return *this;
+ }
+
+ InstanceCreateInfo & setPpEnabledLayerNames( const char * const * ppEnabledLayerNames_ ) VULKAN_HPP_NOEXCEPT
+ {
+ ppEnabledLayerNames = ppEnabledLayerNames_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ InstanceCreateInfo & setPEnabledLayerNames(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const char * const> const & pEnabledLayerNames_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ enabledLayerCount = static_cast<uint32_t>( pEnabledLayerNames_.size() );
+ ppEnabledLayerNames = pEnabledLayerNames_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ InstanceCreateInfo & setEnabledExtensionCount( uint32_t enabledExtensionCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ enabledExtensionCount = enabledExtensionCount_;
+ return *this;
+ }
+
+ InstanceCreateInfo & setPpEnabledExtensionNames( const char * const * ppEnabledExtensionNames_ ) VULKAN_HPP_NOEXCEPT
+ {
+ ppEnabledExtensionNames = ppEnabledExtensionNames_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ InstanceCreateInfo & setPEnabledExtensionNames(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const char * const> const & pEnabledExtensionNames_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ enabledExtensionCount = static_cast<uint32_t>( pEnabledExtensionNames_.size() );
+ ppEnabledExtensionNames = pEnabledExtensionNames_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkInstanceCreateInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkInstanceCreateInfo *>( this );
+ }
+
+ operator VkInstanceCreateInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkInstanceCreateInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( InstanceCreateInfo const & ) const = default;
+#else
+ bool operator==( InstanceCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( pApplicationInfo == rhs.pApplicationInfo ) && ( enabledLayerCount == rhs.enabledLayerCount ) &&
+ ( ppEnabledLayerNames == rhs.ppEnabledLayerNames ) &&
+ ( enabledExtensionCount == rhs.enabledExtensionCount ) &&
+ ( ppEnabledExtensionNames == rhs.ppEnabledExtensionNames );
+ }
+
+ bool operator!=( InstanceCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eInstanceCreateInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::InstanceCreateFlags flags = {};
+ const VULKAN_HPP_NAMESPACE::ApplicationInfo * pApplicationInfo = {};
+ uint32_t enabledLayerCount = {};
+ const char * const * ppEnabledLayerNames = {};
+ uint32_t enabledExtensionCount = {};
+ const char * const * ppEnabledExtensionNames = {};
+ };
+ static_assert( sizeof( InstanceCreateInfo ) == sizeof( VkInstanceCreateInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<InstanceCreateInfo>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eInstanceCreateInfo>
+ {
+ using Type = InstanceCreateInfo;
+ };
+
+ struct LayerProperties
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR_14
+ LayerProperties( std::array<char, VK_MAX_EXTENSION_NAME_SIZE> const & layerName_ = {},
+ uint32_t specVersion_ = {},
+ uint32_t implementationVersion_ = {},
+ std::array<char, VK_MAX_DESCRIPTION_SIZE> const & description_ = {} ) VULKAN_HPP_NOEXCEPT
+ : layerName( layerName_ )
+ , specVersion( specVersion_ )
+ , implementationVersion( implementationVersion_ )
+ , description( description_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR_14 LayerProperties( LayerProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ LayerProperties( VkLayerProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ : LayerProperties( *reinterpret_cast<LayerProperties const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 LayerProperties & operator=( LayerProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ LayerProperties & operator=( VkLayerProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::LayerProperties const *>( &rhs );
+ return *this;
+ }
+
+ operator VkLayerProperties const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkLayerProperties *>( this );
+ }
+
+ operator VkLayerProperties &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkLayerProperties *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( LayerProperties const & ) const = default;
+#else
+ bool operator==( LayerProperties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( layerName == rhs.layerName ) && ( specVersion == rhs.specVersion ) &&
+ ( implementationVersion == rhs.implementationVersion ) && ( description == rhs.description );
+ }
+
+ bool operator!=( LayerProperties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_EXTENSION_NAME_SIZE> layerName = {};
+ uint32_t specVersion = {};
+ uint32_t implementationVersion = {};
+ VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DESCRIPTION_SIZE> description = {};
+ };
+ static_assert( sizeof( LayerProperties ) == sizeof( VkLayerProperties ), "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<LayerProperties>::value, "struct wrapper is not a standard layout!" );
+
+#if defined( VK_USE_PLATFORM_MACOS_MVK )
+ struct MacOSSurfaceCreateInfoMVK
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMacosSurfaceCreateInfoMVK;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR MacOSSurfaceCreateInfoMVK( VULKAN_HPP_NAMESPACE::MacOSSurfaceCreateFlagsMVK flags_ = {},
+ const void * pView_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , pView( pView_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ MacOSSurfaceCreateInfoMVK( MacOSSurfaceCreateInfoMVK const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ MacOSSurfaceCreateInfoMVK( VkMacOSSurfaceCreateInfoMVK const & rhs ) VULKAN_HPP_NOEXCEPT
+ : MacOSSurfaceCreateInfoMVK( *reinterpret_cast<MacOSSurfaceCreateInfoMVK const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 MacOSSurfaceCreateInfoMVK &
+ operator=( MacOSSurfaceCreateInfoMVK const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ MacOSSurfaceCreateInfoMVK & operator=( VkMacOSSurfaceCreateInfoMVK const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MacOSSurfaceCreateInfoMVK const *>( &rhs );
+ return *this;
+ }
+
+ MacOSSurfaceCreateInfoMVK & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ MacOSSurfaceCreateInfoMVK & setFlags( VULKAN_HPP_NAMESPACE::MacOSSurfaceCreateFlagsMVK flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ MacOSSurfaceCreateInfoMVK & setPView( const void * pView_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pView = pView_;
+ return *this;
+ }
+
+ operator VkMacOSSurfaceCreateInfoMVK const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkMacOSSurfaceCreateInfoMVK *>( this );
+ }
+
+ operator VkMacOSSurfaceCreateInfoMVK &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkMacOSSurfaceCreateInfoMVK *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( MacOSSurfaceCreateInfoMVK const & ) const = default;
+# else
+ bool operator==( MacOSSurfaceCreateInfoMVK const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) && ( pView == rhs.pView );
+ }
+
+ bool operator!=( MacOSSurfaceCreateInfoMVK const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMacosSurfaceCreateInfoMVK;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::MacOSSurfaceCreateFlagsMVK flags = {};
+ const void * pView = {};
+ };
+ static_assert( sizeof( MacOSSurfaceCreateInfoMVK ) == sizeof( VkMacOSSurfaceCreateInfoMVK ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<MacOSSurfaceCreateInfoMVK>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eMacosSurfaceCreateInfoMVK>
+ {
+ using Type = MacOSSurfaceCreateInfoMVK;
+ };
+#endif /*VK_USE_PLATFORM_MACOS_MVK*/
+
+ struct MappedMemoryRange
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMappedMemoryRange;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR MappedMemoryRange( VULKAN_HPP_NAMESPACE::DeviceMemory memory_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize offset_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize size_ = {} ) VULKAN_HPP_NOEXCEPT
+ : memory( memory_ )
+ , offset( offset_ )
+ , size( size_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR MappedMemoryRange( MappedMemoryRange const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ MappedMemoryRange( VkMappedMemoryRange const & rhs ) VULKAN_HPP_NOEXCEPT
+ : MappedMemoryRange( *reinterpret_cast<MappedMemoryRange const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 MappedMemoryRange &
+ operator=( MappedMemoryRange const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ MappedMemoryRange & operator=( VkMappedMemoryRange const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MappedMemoryRange const *>( &rhs );
+ return *this;
+ }
+
+ MappedMemoryRange & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ MappedMemoryRange & setMemory( VULKAN_HPP_NAMESPACE::DeviceMemory memory_ ) VULKAN_HPP_NOEXCEPT
+ {
+ memory = memory_;
+ return *this;
+ }
+
+ MappedMemoryRange & setOffset( VULKAN_HPP_NAMESPACE::DeviceSize offset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ offset = offset_;
+ return *this;
+ }
+
+ MappedMemoryRange & setSize( VULKAN_HPP_NAMESPACE::DeviceSize size_ ) VULKAN_HPP_NOEXCEPT
+ {
+ size = size_;
+ return *this;
+ }
+
+ operator VkMappedMemoryRange const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkMappedMemoryRange *>( this );
+ }
+
+ operator VkMappedMemoryRange &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkMappedMemoryRange *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( MappedMemoryRange const & ) const = default;
+#else
+ bool operator==( MappedMemoryRange const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( memory == rhs.memory ) && ( offset == rhs.offset ) &&
+ ( size == rhs.size );
+ }
+
+ bool operator!=( MappedMemoryRange const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMappedMemoryRange;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::DeviceMemory memory = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize offset = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize size = {};
+ };
+ static_assert( sizeof( MappedMemoryRange ) == sizeof( VkMappedMemoryRange ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<MappedMemoryRange>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eMappedMemoryRange>
+ {
+ using Type = MappedMemoryRange;
+ };
+
+ struct MemoryAllocateFlagsInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMemoryAllocateFlagsInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR MemoryAllocateFlagsInfo( VULKAN_HPP_NAMESPACE::MemoryAllocateFlags flags_ = {},
+ uint32_t deviceMask_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , deviceMask( deviceMask_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR MemoryAllocateFlagsInfo( MemoryAllocateFlagsInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ MemoryAllocateFlagsInfo( VkMemoryAllocateFlagsInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : MemoryAllocateFlagsInfo( *reinterpret_cast<MemoryAllocateFlagsInfo const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 MemoryAllocateFlagsInfo &
+ operator=( MemoryAllocateFlagsInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ MemoryAllocateFlagsInfo & operator=( VkMemoryAllocateFlagsInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MemoryAllocateFlagsInfo const *>( &rhs );
+ return *this;
+ }
+
+ MemoryAllocateFlagsInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ MemoryAllocateFlagsInfo & setFlags( VULKAN_HPP_NAMESPACE::MemoryAllocateFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ MemoryAllocateFlagsInfo & setDeviceMask( uint32_t deviceMask_ ) VULKAN_HPP_NOEXCEPT
+ {
+ deviceMask = deviceMask_;
+ return *this;
+ }
+
+ operator VkMemoryAllocateFlagsInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkMemoryAllocateFlagsInfo *>( this );
+ }
+
+ operator VkMemoryAllocateFlagsInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkMemoryAllocateFlagsInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( MemoryAllocateFlagsInfo const & ) const = default;
+#else
+ bool operator==( MemoryAllocateFlagsInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( deviceMask == rhs.deviceMask );
+ }
+
+ bool operator!=( MemoryAllocateFlagsInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMemoryAllocateFlagsInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::MemoryAllocateFlags flags = {};
+ uint32_t deviceMask = {};
+ };
+ static_assert( sizeof( MemoryAllocateFlagsInfo ) == sizeof( VkMemoryAllocateFlagsInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<MemoryAllocateFlagsInfo>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eMemoryAllocateFlagsInfo>
+ {
+ using Type = MemoryAllocateFlagsInfo;
+ };
+ using MemoryAllocateFlagsInfoKHR = MemoryAllocateFlagsInfo;
+
+ struct MemoryAllocateInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMemoryAllocateInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR MemoryAllocateInfo( VULKAN_HPP_NAMESPACE::DeviceSize allocationSize_ = {},
+ uint32_t memoryTypeIndex_ = {} ) VULKAN_HPP_NOEXCEPT
+ : allocationSize( allocationSize_ )
+ , memoryTypeIndex( memoryTypeIndex_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR MemoryAllocateInfo( MemoryAllocateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ MemoryAllocateInfo( VkMemoryAllocateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : MemoryAllocateInfo( *reinterpret_cast<MemoryAllocateInfo const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 MemoryAllocateInfo &
+ operator=( MemoryAllocateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ MemoryAllocateInfo & operator=( VkMemoryAllocateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MemoryAllocateInfo const *>( &rhs );
+ return *this;
+ }
+
+ MemoryAllocateInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ MemoryAllocateInfo & setAllocationSize( VULKAN_HPP_NAMESPACE::DeviceSize allocationSize_ ) VULKAN_HPP_NOEXCEPT
+ {
+ allocationSize = allocationSize_;
+ return *this;
+ }
+
+ MemoryAllocateInfo & setMemoryTypeIndex( uint32_t memoryTypeIndex_ ) VULKAN_HPP_NOEXCEPT
+ {
+ memoryTypeIndex = memoryTypeIndex_;
+ return *this;
+ }
+
+ operator VkMemoryAllocateInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkMemoryAllocateInfo *>( this );
+ }
+
+ operator VkMemoryAllocateInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkMemoryAllocateInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( MemoryAllocateInfo const & ) const = default;
+#else
+ bool operator==( MemoryAllocateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( allocationSize == rhs.allocationSize ) &&
+ ( memoryTypeIndex == rhs.memoryTypeIndex );
+ }
+
+ bool operator!=( MemoryAllocateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMemoryAllocateInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize allocationSize = {};
+ uint32_t memoryTypeIndex = {};
+ };
+ static_assert( sizeof( MemoryAllocateInfo ) == sizeof( VkMemoryAllocateInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<MemoryAllocateInfo>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eMemoryAllocateInfo>
+ {
+ using Type = MemoryAllocateInfo;
+ };
+
+ struct MemoryBarrier
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMemoryBarrier;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR MemoryBarrier( VULKAN_HPP_NAMESPACE::AccessFlags srcAccessMask_ = {},
+ VULKAN_HPP_NAMESPACE::AccessFlags dstAccessMask_ = {} ) VULKAN_HPP_NOEXCEPT
+ : srcAccessMask( srcAccessMask_ )
+ , dstAccessMask( dstAccessMask_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR MemoryBarrier( MemoryBarrier const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ MemoryBarrier( VkMemoryBarrier const & rhs ) VULKAN_HPP_NOEXCEPT
+ : MemoryBarrier( *reinterpret_cast<MemoryBarrier const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 MemoryBarrier & operator=( MemoryBarrier const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ MemoryBarrier & operator=( VkMemoryBarrier const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MemoryBarrier const *>( &rhs );
+ return *this;
+ }
+
+ MemoryBarrier & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ MemoryBarrier & setSrcAccessMask( VULKAN_HPP_NAMESPACE::AccessFlags srcAccessMask_ ) VULKAN_HPP_NOEXCEPT
+ {
+ srcAccessMask = srcAccessMask_;
+ return *this;
+ }
+
+ MemoryBarrier & setDstAccessMask( VULKAN_HPP_NAMESPACE::AccessFlags dstAccessMask_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstAccessMask = dstAccessMask_;
+ return *this;
+ }
+
+ operator VkMemoryBarrier const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkMemoryBarrier *>( this );
+ }
+
+ operator VkMemoryBarrier &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkMemoryBarrier *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( MemoryBarrier const & ) const = default;
+#else
+ bool operator==( MemoryBarrier const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( srcAccessMask == rhs.srcAccessMask ) &&
+ ( dstAccessMask == rhs.dstAccessMask );
+ }
+
+ bool operator!=( MemoryBarrier const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMemoryBarrier;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::AccessFlags srcAccessMask = {};
+ VULKAN_HPP_NAMESPACE::AccessFlags dstAccessMask = {};
+ };
+ static_assert( sizeof( MemoryBarrier ) == sizeof( VkMemoryBarrier ), "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<MemoryBarrier>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eMemoryBarrier>
+ {
+ using Type = MemoryBarrier;
+ };
+
+ struct MemoryDedicatedAllocateInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMemoryDedicatedAllocateInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR MemoryDedicatedAllocateInfo( VULKAN_HPP_NAMESPACE::Image image_ = {},
+ VULKAN_HPP_NAMESPACE::Buffer buffer_ = {} ) VULKAN_HPP_NOEXCEPT
+ : image( image_ )
+ , buffer( buffer_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ MemoryDedicatedAllocateInfo( MemoryDedicatedAllocateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ MemoryDedicatedAllocateInfo( VkMemoryDedicatedAllocateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : MemoryDedicatedAllocateInfo( *reinterpret_cast<MemoryDedicatedAllocateInfo const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 MemoryDedicatedAllocateInfo &
+ operator=( MemoryDedicatedAllocateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ MemoryDedicatedAllocateInfo & operator=( VkMemoryDedicatedAllocateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MemoryDedicatedAllocateInfo const *>( &rhs );
+ return *this;
+ }
+
+ MemoryDedicatedAllocateInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ MemoryDedicatedAllocateInfo & setImage( VULKAN_HPP_NAMESPACE::Image image_ ) VULKAN_HPP_NOEXCEPT
+ {
+ image = image_;
+ return *this;
+ }
+
+ MemoryDedicatedAllocateInfo & setBuffer( VULKAN_HPP_NAMESPACE::Buffer buffer_ ) VULKAN_HPP_NOEXCEPT
+ {
+ buffer = buffer_;
+ return *this;
+ }
+
+ operator VkMemoryDedicatedAllocateInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkMemoryDedicatedAllocateInfo *>( this );
+ }
+
+ operator VkMemoryDedicatedAllocateInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkMemoryDedicatedAllocateInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( MemoryDedicatedAllocateInfo const & ) const = default;
+#else
+ bool operator==( MemoryDedicatedAllocateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( image == rhs.image ) && ( buffer == rhs.buffer );
+ }
+
+ bool operator!=( MemoryDedicatedAllocateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMemoryDedicatedAllocateInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Image image = {};
+ VULKAN_HPP_NAMESPACE::Buffer buffer = {};
+ };
+ static_assert( sizeof( MemoryDedicatedAllocateInfo ) == sizeof( VkMemoryDedicatedAllocateInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<MemoryDedicatedAllocateInfo>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eMemoryDedicatedAllocateInfo>
+ {
+ using Type = MemoryDedicatedAllocateInfo;
+ };
+ using MemoryDedicatedAllocateInfoKHR = MemoryDedicatedAllocateInfo;
+
+ struct MemoryDedicatedRequirements
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMemoryDedicatedRequirements;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ MemoryDedicatedRequirements( VULKAN_HPP_NAMESPACE::Bool32 prefersDedicatedAllocation_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 requiresDedicatedAllocation_ = {} ) VULKAN_HPP_NOEXCEPT
+ : prefersDedicatedAllocation( prefersDedicatedAllocation_ )
+ , requiresDedicatedAllocation( requiresDedicatedAllocation_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ MemoryDedicatedRequirements( MemoryDedicatedRequirements const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ MemoryDedicatedRequirements( VkMemoryDedicatedRequirements const & rhs ) VULKAN_HPP_NOEXCEPT
+ : MemoryDedicatedRequirements( *reinterpret_cast<MemoryDedicatedRequirements const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 MemoryDedicatedRequirements &
+ operator=( MemoryDedicatedRequirements const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ MemoryDedicatedRequirements & operator=( VkMemoryDedicatedRequirements const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MemoryDedicatedRequirements const *>( &rhs );
+ return *this;
+ }
+
+ operator VkMemoryDedicatedRequirements const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkMemoryDedicatedRequirements *>( this );
+ }
+
+ operator VkMemoryDedicatedRequirements &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkMemoryDedicatedRequirements *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( MemoryDedicatedRequirements const & ) const = default;
+#else
+ bool operator==( MemoryDedicatedRequirements const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( prefersDedicatedAllocation == rhs.prefersDedicatedAllocation ) &&
+ ( requiresDedicatedAllocation == rhs.requiresDedicatedAllocation );
+ }
+
+ bool operator!=( MemoryDedicatedRequirements const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMemoryDedicatedRequirements;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 prefersDedicatedAllocation = {};
+ VULKAN_HPP_NAMESPACE::Bool32 requiresDedicatedAllocation = {};
+ };
+ static_assert( sizeof( MemoryDedicatedRequirements ) == sizeof( VkMemoryDedicatedRequirements ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<MemoryDedicatedRequirements>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eMemoryDedicatedRequirements>
+ {
+ using Type = MemoryDedicatedRequirements;
+ };
+ using MemoryDedicatedRequirementsKHR = MemoryDedicatedRequirements;
+
+ struct MemoryFdPropertiesKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMemoryFdPropertiesKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR MemoryFdPropertiesKHR( uint32_t memoryTypeBits_ = {} ) VULKAN_HPP_NOEXCEPT
+ : memoryTypeBits( memoryTypeBits_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR MemoryFdPropertiesKHR( MemoryFdPropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ MemoryFdPropertiesKHR( VkMemoryFdPropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : MemoryFdPropertiesKHR( *reinterpret_cast<MemoryFdPropertiesKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 MemoryFdPropertiesKHR &
+ operator=( MemoryFdPropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ MemoryFdPropertiesKHR & operator=( VkMemoryFdPropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MemoryFdPropertiesKHR const *>( &rhs );
+ return *this;
+ }
+
+ operator VkMemoryFdPropertiesKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkMemoryFdPropertiesKHR *>( this );
+ }
+
+ operator VkMemoryFdPropertiesKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkMemoryFdPropertiesKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( MemoryFdPropertiesKHR const & ) const = default;
+#else
+ bool operator==( MemoryFdPropertiesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( memoryTypeBits == rhs.memoryTypeBits );
+ }
+
+ bool operator!=( MemoryFdPropertiesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMemoryFdPropertiesKHR;
+ void * pNext = {};
+ uint32_t memoryTypeBits = {};
+ };
+ static_assert( sizeof( MemoryFdPropertiesKHR ) == sizeof( VkMemoryFdPropertiesKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<MemoryFdPropertiesKHR>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eMemoryFdPropertiesKHR>
+ {
+ using Type = MemoryFdPropertiesKHR;
+ };
+
+#if defined( VK_USE_PLATFORM_ANDROID_KHR )
+ struct MemoryGetAndroidHardwareBufferInfoANDROID
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eMemoryGetAndroidHardwareBufferInfoANDROID;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ MemoryGetAndroidHardwareBufferInfoANDROID( VULKAN_HPP_NAMESPACE::DeviceMemory memory_ = {} ) VULKAN_HPP_NOEXCEPT
+ : memory( memory_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR MemoryGetAndroidHardwareBufferInfoANDROID(
+ MemoryGetAndroidHardwareBufferInfoANDROID const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ MemoryGetAndroidHardwareBufferInfoANDROID( VkMemoryGetAndroidHardwareBufferInfoANDROID const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : MemoryGetAndroidHardwareBufferInfoANDROID(
+ *reinterpret_cast<MemoryGetAndroidHardwareBufferInfoANDROID const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 MemoryGetAndroidHardwareBufferInfoANDROID &
+ operator=( MemoryGetAndroidHardwareBufferInfoANDROID const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ MemoryGetAndroidHardwareBufferInfoANDROID &
+ operator=( VkMemoryGetAndroidHardwareBufferInfoANDROID const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MemoryGetAndroidHardwareBufferInfoANDROID const *>( &rhs );
+ return *this;
+ }
+
+ MemoryGetAndroidHardwareBufferInfoANDROID & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ MemoryGetAndroidHardwareBufferInfoANDROID &
+ setMemory( VULKAN_HPP_NAMESPACE::DeviceMemory memory_ ) VULKAN_HPP_NOEXCEPT
+ {
+ memory = memory_;
+ return *this;
+ }
+
+ operator VkMemoryGetAndroidHardwareBufferInfoANDROID const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkMemoryGetAndroidHardwareBufferInfoANDROID *>( this );
+ }
+
+ operator VkMemoryGetAndroidHardwareBufferInfoANDROID &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkMemoryGetAndroidHardwareBufferInfoANDROID *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( MemoryGetAndroidHardwareBufferInfoANDROID const & ) const = default;
+# else
+ bool operator==( MemoryGetAndroidHardwareBufferInfoANDROID const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( memory == rhs.memory );
+ }
+
+ bool operator!=( MemoryGetAndroidHardwareBufferInfoANDROID const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMemoryGetAndroidHardwareBufferInfoANDROID;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::DeviceMemory memory = {};
+ };
+ static_assert( sizeof( MemoryGetAndroidHardwareBufferInfoANDROID ) ==
+ sizeof( VkMemoryGetAndroidHardwareBufferInfoANDROID ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<MemoryGetAndroidHardwareBufferInfoANDROID>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eMemoryGetAndroidHardwareBufferInfoANDROID>
+ {
+ using Type = MemoryGetAndroidHardwareBufferInfoANDROID;
+ };
+#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
+
+ struct MemoryGetFdInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMemoryGetFdInfoKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ MemoryGetFdInfoKHR( VULKAN_HPP_NAMESPACE::DeviceMemory memory_ = {},
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType_ =
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits::eOpaqueFd ) VULKAN_HPP_NOEXCEPT
+ : memory( memory_ )
+ , handleType( handleType_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR MemoryGetFdInfoKHR( MemoryGetFdInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ MemoryGetFdInfoKHR( VkMemoryGetFdInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : MemoryGetFdInfoKHR( *reinterpret_cast<MemoryGetFdInfoKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 MemoryGetFdInfoKHR &
+ operator=( MemoryGetFdInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ MemoryGetFdInfoKHR & operator=( VkMemoryGetFdInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MemoryGetFdInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ MemoryGetFdInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ MemoryGetFdInfoKHR & setMemory( VULKAN_HPP_NAMESPACE::DeviceMemory memory_ ) VULKAN_HPP_NOEXCEPT
+ {
+ memory = memory_;
+ return *this;
+ }
+
+ MemoryGetFdInfoKHR &
+ setHandleType( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType_ ) VULKAN_HPP_NOEXCEPT
+ {
+ handleType = handleType_;
+ return *this;
+ }
+
+ operator VkMemoryGetFdInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkMemoryGetFdInfoKHR *>( this );
+ }
+
+ operator VkMemoryGetFdInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkMemoryGetFdInfoKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( MemoryGetFdInfoKHR const & ) const = default;
+#else
+ bool operator==( MemoryGetFdInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( memory == rhs.memory ) &&
+ ( handleType == rhs.handleType );
+ }
+
+ bool operator!=( MemoryGetFdInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMemoryGetFdInfoKHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::DeviceMemory memory = {};
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType =
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits::eOpaqueFd;
+ };
+ static_assert( sizeof( MemoryGetFdInfoKHR ) == sizeof( VkMemoryGetFdInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<MemoryGetFdInfoKHR>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eMemoryGetFdInfoKHR>
+ {
+ using Type = MemoryGetFdInfoKHR;
+ };
+
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ struct MemoryGetWin32HandleInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMemoryGetWin32HandleInfoKHR;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR MemoryGetWin32HandleInfoKHR(
+ VULKAN_HPP_NAMESPACE::DeviceMemory memory_ = {},
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType_ =
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits::eOpaqueFd ) VULKAN_HPP_NOEXCEPT
+ : memory( memory_ )
+ , handleType( handleType_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ MemoryGetWin32HandleInfoKHR( MemoryGetWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ MemoryGetWin32HandleInfoKHR( VkMemoryGetWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : MemoryGetWin32HandleInfoKHR( *reinterpret_cast<MemoryGetWin32HandleInfoKHR const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 MemoryGetWin32HandleInfoKHR &
+ operator=( MemoryGetWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ MemoryGetWin32HandleInfoKHR & operator=( VkMemoryGetWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MemoryGetWin32HandleInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ MemoryGetWin32HandleInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ MemoryGetWin32HandleInfoKHR & setMemory( VULKAN_HPP_NAMESPACE::DeviceMemory memory_ ) VULKAN_HPP_NOEXCEPT
+ {
+ memory = memory_;
+ return *this;
+ }
+
+ MemoryGetWin32HandleInfoKHR &
+ setHandleType( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType_ ) VULKAN_HPP_NOEXCEPT
+ {
+ handleType = handleType_;
+ return *this;
+ }
+
+ operator VkMemoryGetWin32HandleInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkMemoryGetWin32HandleInfoKHR *>( this );
+ }
+
+ operator VkMemoryGetWin32HandleInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkMemoryGetWin32HandleInfoKHR *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( MemoryGetWin32HandleInfoKHR const & ) const = default;
+# else
+ bool operator==( MemoryGetWin32HandleInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( memory == rhs.memory ) &&
+ ( handleType == rhs.handleType );
+ }
+
+ bool operator!=( MemoryGetWin32HandleInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMemoryGetWin32HandleInfoKHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::DeviceMemory memory = {};
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType =
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits::eOpaqueFd;
+ };
+ static_assert( sizeof( MemoryGetWin32HandleInfoKHR ) == sizeof( VkMemoryGetWin32HandleInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<MemoryGetWin32HandleInfoKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eMemoryGetWin32HandleInfoKHR>
+ {
+ using Type = MemoryGetWin32HandleInfoKHR;
+ };
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+
+#if defined( VK_USE_PLATFORM_FUCHSIA )
+ struct MemoryGetZirconHandleInfoFUCHSIA
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMemoryGetZirconHandleInfoFUCHSIA;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR MemoryGetZirconHandleInfoFUCHSIA(
+ VULKAN_HPP_NAMESPACE::DeviceMemory memory_ = {},
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType_ =
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits::eOpaqueFd ) VULKAN_HPP_NOEXCEPT
+ : memory( memory_ )
+ , handleType( handleType_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ MemoryGetZirconHandleInfoFUCHSIA( MemoryGetZirconHandleInfoFUCHSIA const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ MemoryGetZirconHandleInfoFUCHSIA( VkMemoryGetZirconHandleInfoFUCHSIA const & rhs ) VULKAN_HPP_NOEXCEPT
+ : MemoryGetZirconHandleInfoFUCHSIA( *reinterpret_cast<MemoryGetZirconHandleInfoFUCHSIA const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 MemoryGetZirconHandleInfoFUCHSIA &
+ operator=( MemoryGetZirconHandleInfoFUCHSIA const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ MemoryGetZirconHandleInfoFUCHSIA & operator=( VkMemoryGetZirconHandleInfoFUCHSIA const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MemoryGetZirconHandleInfoFUCHSIA const *>( &rhs );
+ return *this;
+ }
+
+ MemoryGetZirconHandleInfoFUCHSIA & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ MemoryGetZirconHandleInfoFUCHSIA & setMemory( VULKAN_HPP_NAMESPACE::DeviceMemory memory_ ) VULKAN_HPP_NOEXCEPT
+ {
+ memory = memory_;
+ return *this;
+ }
+
+ MemoryGetZirconHandleInfoFUCHSIA &
+ setHandleType( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType_ ) VULKAN_HPP_NOEXCEPT
+ {
+ handleType = handleType_;
+ return *this;
+ }
+
+ operator VkMemoryGetZirconHandleInfoFUCHSIA const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkMemoryGetZirconHandleInfoFUCHSIA *>( this );
+ }
+
+ operator VkMemoryGetZirconHandleInfoFUCHSIA &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkMemoryGetZirconHandleInfoFUCHSIA *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( MemoryGetZirconHandleInfoFUCHSIA const & ) const = default;
+# else
+ bool operator==( MemoryGetZirconHandleInfoFUCHSIA const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( memory == rhs.memory ) &&
+ ( handleType == rhs.handleType );
+ }
+
+ bool operator!=( MemoryGetZirconHandleInfoFUCHSIA const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMemoryGetZirconHandleInfoFUCHSIA;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::DeviceMemory memory = {};
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType =
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits::eOpaqueFd;
+ };
+ static_assert( sizeof( MemoryGetZirconHandleInfoFUCHSIA ) == sizeof( VkMemoryGetZirconHandleInfoFUCHSIA ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<MemoryGetZirconHandleInfoFUCHSIA>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eMemoryGetZirconHandleInfoFUCHSIA>
+ {
+ using Type = MemoryGetZirconHandleInfoFUCHSIA;
+ };
+#endif /*VK_USE_PLATFORM_FUCHSIA*/
+
+ struct MemoryHeap
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR MemoryHeap( VULKAN_HPP_NAMESPACE::DeviceSize size_ = {},
+ VULKAN_HPP_NAMESPACE::MemoryHeapFlags flags_ = {} ) VULKAN_HPP_NOEXCEPT
+ : size( size_ )
+ , flags( flags_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR MemoryHeap( MemoryHeap const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ MemoryHeap( VkMemoryHeap const & rhs ) VULKAN_HPP_NOEXCEPT
+ : MemoryHeap( *reinterpret_cast<MemoryHeap const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 MemoryHeap & operator=( MemoryHeap const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ MemoryHeap & operator=( VkMemoryHeap const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MemoryHeap const *>( &rhs );
+ return *this;
+ }
+
+ operator VkMemoryHeap const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkMemoryHeap *>( this );
+ }
+
+ operator VkMemoryHeap &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkMemoryHeap *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( MemoryHeap const & ) const = default;
+#else
+ bool operator==( MemoryHeap const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( size == rhs.size ) && ( flags == rhs.flags );
+ }
+
+ bool operator!=( MemoryHeap const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::DeviceSize size = {};
+ VULKAN_HPP_NAMESPACE::MemoryHeapFlags flags = {};
+ };
+ static_assert( sizeof( MemoryHeap ) == sizeof( VkMemoryHeap ), "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<MemoryHeap>::value, "struct wrapper is not a standard layout!" );
+
+ struct MemoryHostPointerPropertiesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMemoryHostPointerPropertiesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR MemoryHostPointerPropertiesEXT( uint32_t memoryTypeBits_ = {} ) VULKAN_HPP_NOEXCEPT
+ : memoryTypeBits( memoryTypeBits_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ MemoryHostPointerPropertiesEXT( MemoryHostPointerPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ MemoryHostPointerPropertiesEXT( VkMemoryHostPointerPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : MemoryHostPointerPropertiesEXT( *reinterpret_cast<MemoryHostPointerPropertiesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 MemoryHostPointerPropertiesEXT &
+ operator=( MemoryHostPointerPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ MemoryHostPointerPropertiesEXT & operator=( VkMemoryHostPointerPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MemoryHostPointerPropertiesEXT const *>( &rhs );
+ return *this;
+ }
+
+ operator VkMemoryHostPointerPropertiesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkMemoryHostPointerPropertiesEXT *>( this );
+ }
+
+ operator VkMemoryHostPointerPropertiesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkMemoryHostPointerPropertiesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( MemoryHostPointerPropertiesEXT const & ) const = default;
+#else
+ bool operator==( MemoryHostPointerPropertiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( memoryTypeBits == rhs.memoryTypeBits );
+ }
+
+ bool operator!=( MemoryHostPointerPropertiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMemoryHostPointerPropertiesEXT;
+ void * pNext = {};
+ uint32_t memoryTypeBits = {};
+ };
+ static_assert( sizeof( MemoryHostPointerPropertiesEXT ) == sizeof( VkMemoryHostPointerPropertiesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<MemoryHostPointerPropertiesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eMemoryHostPointerPropertiesEXT>
+ {
+ using Type = MemoryHostPointerPropertiesEXT;
+ };
+
+ struct MemoryOpaqueCaptureAddressAllocateInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eMemoryOpaqueCaptureAddressAllocateInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ MemoryOpaqueCaptureAddressAllocateInfo( uint64_t opaqueCaptureAddress_ = {} ) VULKAN_HPP_NOEXCEPT
+ : opaqueCaptureAddress( opaqueCaptureAddress_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR MemoryOpaqueCaptureAddressAllocateInfo( MemoryOpaqueCaptureAddressAllocateInfo const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ MemoryOpaqueCaptureAddressAllocateInfo( VkMemoryOpaqueCaptureAddressAllocateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : MemoryOpaqueCaptureAddressAllocateInfo(
+ *reinterpret_cast<MemoryOpaqueCaptureAddressAllocateInfo const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 MemoryOpaqueCaptureAddressAllocateInfo &
+ operator=( MemoryOpaqueCaptureAddressAllocateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ MemoryOpaqueCaptureAddressAllocateInfo &
+ operator=( VkMemoryOpaqueCaptureAddressAllocateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MemoryOpaqueCaptureAddressAllocateInfo const *>( &rhs );
+ return *this;
+ }
+
+ MemoryOpaqueCaptureAddressAllocateInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ MemoryOpaqueCaptureAddressAllocateInfo &
+ setOpaqueCaptureAddress( uint64_t opaqueCaptureAddress_ ) VULKAN_HPP_NOEXCEPT
+ {
+ opaqueCaptureAddress = opaqueCaptureAddress_;
+ return *this;
+ }
+
+ operator VkMemoryOpaqueCaptureAddressAllocateInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkMemoryOpaqueCaptureAddressAllocateInfo *>( this );
+ }
+
+ operator VkMemoryOpaqueCaptureAddressAllocateInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkMemoryOpaqueCaptureAddressAllocateInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( MemoryOpaqueCaptureAddressAllocateInfo const & ) const = default;
+#else
+ bool operator==( MemoryOpaqueCaptureAddressAllocateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( opaqueCaptureAddress == rhs.opaqueCaptureAddress );
+ }
+
+ bool operator!=( MemoryOpaqueCaptureAddressAllocateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMemoryOpaqueCaptureAddressAllocateInfo;
+ const void * pNext = {};
+ uint64_t opaqueCaptureAddress = {};
+ };
+ static_assert( sizeof( MemoryOpaqueCaptureAddressAllocateInfo ) == sizeof( VkMemoryOpaqueCaptureAddressAllocateInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<MemoryOpaqueCaptureAddressAllocateInfo>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eMemoryOpaqueCaptureAddressAllocateInfo>
+ {
+ using Type = MemoryOpaqueCaptureAddressAllocateInfo;
+ };
+ using MemoryOpaqueCaptureAddressAllocateInfoKHR = MemoryOpaqueCaptureAddressAllocateInfo;
+
+ struct MemoryPriorityAllocateInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMemoryPriorityAllocateInfoEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR MemoryPriorityAllocateInfoEXT( float priority_ = {} ) VULKAN_HPP_NOEXCEPT
+ : priority( priority_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ MemoryPriorityAllocateInfoEXT( MemoryPriorityAllocateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ MemoryPriorityAllocateInfoEXT( VkMemoryPriorityAllocateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : MemoryPriorityAllocateInfoEXT( *reinterpret_cast<MemoryPriorityAllocateInfoEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 MemoryPriorityAllocateInfoEXT &
+ operator=( MemoryPriorityAllocateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ MemoryPriorityAllocateInfoEXT & operator=( VkMemoryPriorityAllocateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MemoryPriorityAllocateInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ MemoryPriorityAllocateInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ MemoryPriorityAllocateInfoEXT & setPriority( float priority_ ) VULKAN_HPP_NOEXCEPT
+ {
+ priority = priority_;
+ return *this;
+ }
+
+ operator VkMemoryPriorityAllocateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkMemoryPriorityAllocateInfoEXT *>( this );
+ }
+
+ operator VkMemoryPriorityAllocateInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkMemoryPriorityAllocateInfoEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( MemoryPriorityAllocateInfoEXT const & ) const = default;
+#else
+ bool operator==( MemoryPriorityAllocateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( priority == rhs.priority );
+ }
+
+ bool operator!=( MemoryPriorityAllocateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMemoryPriorityAllocateInfoEXT;
+ const void * pNext = {};
+ float priority = {};
+ };
+ static_assert( sizeof( MemoryPriorityAllocateInfoEXT ) == sizeof( VkMemoryPriorityAllocateInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<MemoryPriorityAllocateInfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eMemoryPriorityAllocateInfoEXT>
+ {
+ using Type = MemoryPriorityAllocateInfoEXT;
+ };
+
+ struct MemoryRequirements
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR MemoryRequirements( VULKAN_HPP_NAMESPACE::DeviceSize size_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize alignment_ = {},
+ uint32_t memoryTypeBits_ = {} ) VULKAN_HPP_NOEXCEPT
+ : size( size_ )
+ , alignment( alignment_ )
+ , memoryTypeBits( memoryTypeBits_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR MemoryRequirements( MemoryRequirements const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ MemoryRequirements( VkMemoryRequirements const & rhs ) VULKAN_HPP_NOEXCEPT
+ : MemoryRequirements( *reinterpret_cast<MemoryRequirements const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 MemoryRequirements &
+ operator=( MemoryRequirements const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ MemoryRequirements & operator=( VkMemoryRequirements const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MemoryRequirements const *>( &rhs );
+ return *this;
+ }
+
+ operator VkMemoryRequirements const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkMemoryRequirements *>( this );
+ }
+
+ operator VkMemoryRequirements &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkMemoryRequirements *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( MemoryRequirements const & ) const = default;
+#else
+ bool operator==( MemoryRequirements const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( size == rhs.size ) && ( alignment == rhs.alignment ) && ( memoryTypeBits == rhs.memoryTypeBits );
+ }
+
+ bool operator!=( MemoryRequirements const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::DeviceSize size = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize alignment = {};
+ uint32_t memoryTypeBits = {};
+ };
+ static_assert( sizeof( MemoryRequirements ) == sizeof( VkMemoryRequirements ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<MemoryRequirements>::value, "struct wrapper is not a standard layout!" );
+
+ struct MemoryRequirements2
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMemoryRequirements2;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ MemoryRequirements2( VULKAN_HPP_NAMESPACE::MemoryRequirements memoryRequirements_ = {} ) VULKAN_HPP_NOEXCEPT
+ : memoryRequirements( memoryRequirements_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR MemoryRequirements2( MemoryRequirements2 const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ MemoryRequirements2( VkMemoryRequirements2 const & rhs ) VULKAN_HPP_NOEXCEPT
+ : MemoryRequirements2( *reinterpret_cast<MemoryRequirements2 const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 MemoryRequirements2 &
+ operator=( MemoryRequirements2 const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ MemoryRequirements2 & operator=( VkMemoryRequirements2 const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MemoryRequirements2 const *>( &rhs );
+ return *this;
+ }
+
+ operator VkMemoryRequirements2 const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkMemoryRequirements2 *>( this );
+ }
+
+ operator VkMemoryRequirements2 &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkMemoryRequirements2 *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( MemoryRequirements2 const & ) const = default;
+#else
+ bool operator==( MemoryRequirements2 const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( memoryRequirements == rhs.memoryRequirements );
+ }
+
+ bool operator!=( MemoryRequirements2 const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMemoryRequirements2;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::MemoryRequirements memoryRequirements = {};
+ };
+ static_assert( sizeof( MemoryRequirements2 ) == sizeof( VkMemoryRequirements2 ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<MemoryRequirements2>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eMemoryRequirements2>
+ {
+ using Type = MemoryRequirements2;
+ };
+ using MemoryRequirements2KHR = MemoryRequirements2;
+
+ struct MemoryType
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR MemoryType( VULKAN_HPP_NAMESPACE::MemoryPropertyFlags propertyFlags_ = {},
+ uint32_t heapIndex_ = {} ) VULKAN_HPP_NOEXCEPT
+ : propertyFlags( propertyFlags_ )
+ , heapIndex( heapIndex_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR MemoryType( MemoryType const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ MemoryType( VkMemoryType const & rhs ) VULKAN_HPP_NOEXCEPT
+ : MemoryType( *reinterpret_cast<MemoryType const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 MemoryType & operator=( MemoryType const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ MemoryType & operator=( VkMemoryType const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MemoryType const *>( &rhs );
+ return *this;
+ }
+
+ operator VkMemoryType const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkMemoryType *>( this );
+ }
+
+ operator VkMemoryType &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkMemoryType *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( MemoryType const & ) const = default;
+#else
+ bool operator==( MemoryType const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( propertyFlags == rhs.propertyFlags ) && ( heapIndex == rhs.heapIndex );
+ }
+
+ bool operator!=( MemoryType const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::MemoryPropertyFlags propertyFlags = {};
+ uint32_t heapIndex = {};
+ };
+ static_assert( sizeof( MemoryType ) == sizeof( VkMemoryType ), "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<MemoryType>::value, "struct wrapper is not a standard layout!" );
+
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ struct MemoryWin32HandlePropertiesKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMemoryWin32HandlePropertiesKHR;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR MemoryWin32HandlePropertiesKHR( uint32_t memoryTypeBits_ = {} ) VULKAN_HPP_NOEXCEPT
+ : memoryTypeBits( memoryTypeBits_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ MemoryWin32HandlePropertiesKHR( MemoryWin32HandlePropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ MemoryWin32HandlePropertiesKHR( VkMemoryWin32HandlePropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : MemoryWin32HandlePropertiesKHR( *reinterpret_cast<MemoryWin32HandlePropertiesKHR const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 MemoryWin32HandlePropertiesKHR &
+ operator=( MemoryWin32HandlePropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ MemoryWin32HandlePropertiesKHR & operator=( VkMemoryWin32HandlePropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MemoryWin32HandlePropertiesKHR const *>( &rhs );
+ return *this;
+ }
+
+ operator VkMemoryWin32HandlePropertiesKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkMemoryWin32HandlePropertiesKHR *>( this );
+ }
+
+ operator VkMemoryWin32HandlePropertiesKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkMemoryWin32HandlePropertiesKHR *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( MemoryWin32HandlePropertiesKHR const & ) const = default;
+# else
+ bool operator==( MemoryWin32HandlePropertiesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( memoryTypeBits == rhs.memoryTypeBits );
+ }
+
+ bool operator!=( MemoryWin32HandlePropertiesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMemoryWin32HandlePropertiesKHR;
+ void * pNext = {};
+ uint32_t memoryTypeBits = {};
+ };
+ static_assert( sizeof( MemoryWin32HandlePropertiesKHR ) == sizeof( VkMemoryWin32HandlePropertiesKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<MemoryWin32HandlePropertiesKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eMemoryWin32HandlePropertiesKHR>
+ {
+ using Type = MemoryWin32HandlePropertiesKHR;
+ };
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+
+#if defined( VK_USE_PLATFORM_FUCHSIA )
+ struct MemoryZirconHandlePropertiesFUCHSIA
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eMemoryZirconHandlePropertiesFUCHSIA;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR MemoryZirconHandlePropertiesFUCHSIA( uint32_t memoryTypeBits_ = {} ) VULKAN_HPP_NOEXCEPT
+ : memoryTypeBits( memoryTypeBits_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR MemoryZirconHandlePropertiesFUCHSIA( MemoryZirconHandlePropertiesFUCHSIA const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ MemoryZirconHandlePropertiesFUCHSIA( VkMemoryZirconHandlePropertiesFUCHSIA const & rhs ) VULKAN_HPP_NOEXCEPT
+ : MemoryZirconHandlePropertiesFUCHSIA( *reinterpret_cast<MemoryZirconHandlePropertiesFUCHSIA const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 MemoryZirconHandlePropertiesFUCHSIA &
+ operator=( MemoryZirconHandlePropertiesFUCHSIA const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ MemoryZirconHandlePropertiesFUCHSIA &
+ operator=( VkMemoryZirconHandlePropertiesFUCHSIA const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MemoryZirconHandlePropertiesFUCHSIA const *>( &rhs );
+ return *this;
+ }
+
+ operator VkMemoryZirconHandlePropertiesFUCHSIA const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkMemoryZirconHandlePropertiesFUCHSIA *>( this );
+ }
+
+ operator VkMemoryZirconHandlePropertiesFUCHSIA &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkMemoryZirconHandlePropertiesFUCHSIA *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( MemoryZirconHandlePropertiesFUCHSIA const & ) const = default;
+# else
+ bool operator==( MemoryZirconHandlePropertiesFUCHSIA const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( memoryTypeBits == rhs.memoryTypeBits );
+ }
+
+ bool operator!=( MemoryZirconHandlePropertiesFUCHSIA const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMemoryZirconHandlePropertiesFUCHSIA;
+ void * pNext = {};
+ uint32_t memoryTypeBits = {};
+ };
+ static_assert( sizeof( MemoryZirconHandlePropertiesFUCHSIA ) == sizeof( VkMemoryZirconHandlePropertiesFUCHSIA ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<MemoryZirconHandlePropertiesFUCHSIA>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eMemoryZirconHandlePropertiesFUCHSIA>
+ {
+ using Type = MemoryZirconHandlePropertiesFUCHSIA;
+ };
+#endif /*VK_USE_PLATFORM_FUCHSIA*/
+
+#if defined( VK_USE_PLATFORM_METAL_EXT )
+ struct MetalSurfaceCreateInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMetalSurfaceCreateInfoEXT;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR MetalSurfaceCreateInfoEXT( VULKAN_HPP_NAMESPACE::MetalSurfaceCreateFlagsEXT flags_ = {},
+ const CAMetalLayer * pLayer_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , pLayer( pLayer_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ MetalSurfaceCreateInfoEXT( MetalSurfaceCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ MetalSurfaceCreateInfoEXT( VkMetalSurfaceCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : MetalSurfaceCreateInfoEXT( *reinterpret_cast<MetalSurfaceCreateInfoEXT const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 MetalSurfaceCreateInfoEXT &
+ operator=( MetalSurfaceCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ MetalSurfaceCreateInfoEXT & operator=( VkMetalSurfaceCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MetalSurfaceCreateInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ MetalSurfaceCreateInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ MetalSurfaceCreateInfoEXT & setFlags( VULKAN_HPP_NAMESPACE::MetalSurfaceCreateFlagsEXT flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ MetalSurfaceCreateInfoEXT & setPLayer( const CAMetalLayer * pLayer_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pLayer = pLayer_;
+ return *this;
+ }
+
+ operator VkMetalSurfaceCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkMetalSurfaceCreateInfoEXT *>( this );
+ }
+
+ operator VkMetalSurfaceCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkMetalSurfaceCreateInfoEXT *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( MetalSurfaceCreateInfoEXT const & ) const = default;
+# else
+ bool operator==( MetalSurfaceCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) && ( pLayer == rhs.pLayer );
+ }
+
+ bool operator!=( MetalSurfaceCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMetalSurfaceCreateInfoEXT;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::MetalSurfaceCreateFlagsEXT flags = {};
+ const CAMetalLayer * pLayer = {};
+ };
+ static_assert( sizeof( MetalSurfaceCreateInfoEXT ) == sizeof( VkMetalSurfaceCreateInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<MetalSurfaceCreateInfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eMetalSurfaceCreateInfoEXT>
+ {
+ using Type = MetalSurfaceCreateInfoEXT;
+ };
+#endif /*VK_USE_PLATFORM_METAL_EXT*/
+
+ struct MultiDrawIndexedInfoEXT
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR MultiDrawIndexedInfoEXT( uint32_t firstIndex_ = {},
+ uint32_t indexCount_ = {},
+ int32_t vertexOffset_ = {} ) VULKAN_HPP_NOEXCEPT
+ : firstIndex( firstIndex_ )
+ , indexCount( indexCount_ )
+ , vertexOffset( vertexOffset_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR MultiDrawIndexedInfoEXT( MultiDrawIndexedInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ MultiDrawIndexedInfoEXT( VkMultiDrawIndexedInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : MultiDrawIndexedInfoEXT( *reinterpret_cast<MultiDrawIndexedInfoEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 MultiDrawIndexedInfoEXT &
+ operator=( MultiDrawIndexedInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ MultiDrawIndexedInfoEXT & operator=( VkMultiDrawIndexedInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MultiDrawIndexedInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ MultiDrawIndexedInfoEXT & setFirstIndex( uint32_t firstIndex_ ) VULKAN_HPP_NOEXCEPT
+ {
+ firstIndex = firstIndex_;
+ return *this;
+ }
+
+ MultiDrawIndexedInfoEXT & setIndexCount( uint32_t indexCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ indexCount = indexCount_;
+ return *this;
+ }
+
+ MultiDrawIndexedInfoEXT & setVertexOffset( int32_t vertexOffset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ vertexOffset = vertexOffset_;
+ return *this;
+ }
+
+ operator VkMultiDrawIndexedInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkMultiDrawIndexedInfoEXT *>( this );
+ }
+
+ operator VkMultiDrawIndexedInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkMultiDrawIndexedInfoEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( MultiDrawIndexedInfoEXT const & ) const = default;
+#else
+ bool operator==( MultiDrawIndexedInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( firstIndex == rhs.firstIndex ) && ( indexCount == rhs.indexCount ) &&
+ ( vertexOffset == rhs.vertexOffset );
+ }
+
+ bool operator!=( MultiDrawIndexedInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ uint32_t firstIndex = {};
+ uint32_t indexCount = {};
+ int32_t vertexOffset = {};
+ };
+ static_assert( sizeof( MultiDrawIndexedInfoEXT ) == sizeof( VkMultiDrawIndexedInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<MultiDrawIndexedInfoEXT>::value, "struct wrapper is not a standard layout!" );
+
+ struct MultiDrawInfoEXT
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR MultiDrawInfoEXT( uint32_t firstVertex_ = {}, uint32_t vertexCount_ = {} ) VULKAN_HPP_NOEXCEPT
+ : firstVertex( firstVertex_ )
+ , vertexCount( vertexCount_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR MultiDrawInfoEXT( MultiDrawInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ MultiDrawInfoEXT( VkMultiDrawInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : MultiDrawInfoEXT( *reinterpret_cast<MultiDrawInfoEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 MultiDrawInfoEXT & operator=( MultiDrawInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ MultiDrawInfoEXT & operator=( VkMultiDrawInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MultiDrawInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ MultiDrawInfoEXT & setFirstVertex( uint32_t firstVertex_ ) VULKAN_HPP_NOEXCEPT
+ {
+ firstVertex = firstVertex_;
+ return *this;
+ }
+
+ MultiDrawInfoEXT & setVertexCount( uint32_t vertexCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ vertexCount = vertexCount_;
+ return *this;
+ }
+
+ operator VkMultiDrawInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkMultiDrawInfoEXT *>( this );
+ }
+
+ operator VkMultiDrawInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkMultiDrawInfoEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( MultiDrawInfoEXT const & ) const = default;
+#else
+ bool operator==( MultiDrawInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( firstVertex == rhs.firstVertex ) && ( vertexCount == rhs.vertexCount );
+ }
+
+ bool operator!=( MultiDrawInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ uint32_t firstVertex = {};
+ uint32_t vertexCount = {};
+ };
+ static_assert( sizeof( MultiDrawInfoEXT ) == sizeof( VkMultiDrawInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<MultiDrawInfoEXT>::value, "struct wrapper is not a standard layout!" );
+
+ struct MultisamplePropertiesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMultisamplePropertiesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ MultisamplePropertiesEXT( VULKAN_HPP_NAMESPACE::Extent2D maxSampleLocationGridSize_ = {} ) VULKAN_HPP_NOEXCEPT
+ : maxSampleLocationGridSize( maxSampleLocationGridSize_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR MultisamplePropertiesEXT( MultisamplePropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ MultisamplePropertiesEXT( VkMultisamplePropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : MultisamplePropertiesEXT( *reinterpret_cast<MultisamplePropertiesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 MultisamplePropertiesEXT &
+ operator=( MultisamplePropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ MultisamplePropertiesEXT & operator=( VkMultisamplePropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MultisamplePropertiesEXT const *>( &rhs );
+ return *this;
+ }
+
+ operator VkMultisamplePropertiesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkMultisamplePropertiesEXT *>( this );
+ }
+
+ operator VkMultisamplePropertiesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkMultisamplePropertiesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( MultisamplePropertiesEXT const & ) const = default;
+#else
+ bool operator==( MultisamplePropertiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( maxSampleLocationGridSize == rhs.maxSampleLocationGridSize );
+ }
+
+ bool operator!=( MultisamplePropertiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMultisamplePropertiesEXT;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Extent2D maxSampleLocationGridSize = {};
+ };
+ static_assert( sizeof( MultisamplePropertiesEXT ) == sizeof( VkMultisamplePropertiesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<MultisamplePropertiesEXT>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eMultisamplePropertiesEXT>
+ {
+ using Type = MultisamplePropertiesEXT;
+ };
+
+ struct MutableDescriptorTypeListVALVE
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR MutableDescriptorTypeListVALVE(
+ uint32_t descriptorTypeCount_ = {},
+ const VULKAN_HPP_NAMESPACE::DescriptorType * pDescriptorTypes_ = {} ) VULKAN_HPP_NOEXCEPT
+ : descriptorTypeCount( descriptorTypeCount_ )
+ , pDescriptorTypes( pDescriptorTypes_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ MutableDescriptorTypeListVALVE( MutableDescriptorTypeListVALVE const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ MutableDescriptorTypeListVALVE( VkMutableDescriptorTypeListVALVE const & rhs ) VULKAN_HPP_NOEXCEPT
+ : MutableDescriptorTypeListVALVE( *reinterpret_cast<MutableDescriptorTypeListVALVE const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ MutableDescriptorTypeListVALVE(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DescriptorType> const &
+ descriptorTypes_ )
+ : descriptorTypeCount( static_cast<uint32_t>( descriptorTypes_.size() ) )
+ , pDescriptorTypes( descriptorTypes_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 MutableDescriptorTypeListVALVE &
+ operator=( MutableDescriptorTypeListVALVE const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ MutableDescriptorTypeListVALVE & operator=( VkMutableDescriptorTypeListVALVE const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MutableDescriptorTypeListVALVE const *>( &rhs );
+ return *this;
+ }
+
+ MutableDescriptorTypeListVALVE & setDescriptorTypeCount( uint32_t descriptorTypeCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ descriptorTypeCount = descriptorTypeCount_;
+ return *this;
+ }
+
+ MutableDescriptorTypeListVALVE &
+ setPDescriptorTypes( const VULKAN_HPP_NAMESPACE::DescriptorType * pDescriptorTypes_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pDescriptorTypes = pDescriptorTypes_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ MutableDescriptorTypeListVALVE & setDescriptorTypes(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DescriptorType> const &
+ descriptorTypes_ ) VULKAN_HPP_NOEXCEPT
+ {
+ descriptorTypeCount = static_cast<uint32_t>( descriptorTypes_.size() );
+ pDescriptorTypes = descriptorTypes_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkMutableDescriptorTypeListVALVE const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkMutableDescriptorTypeListVALVE *>( this );
+ }
+
+ operator VkMutableDescriptorTypeListVALVE &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkMutableDescriptorTypeListVALVE *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( MutableDescriptorTypeListVALVE const & ) const = default;
+#else
+ bool operator==( MutableDescriptorTypeListVALVE const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( descriptorTypeCount == rhs.descriptorTypeCount ) && ( pDescriptorTypes == rhs.pDescriptorTypes );
+ }
+
+ bool operator!=( MutableDescriptorTypeListVALVE const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ uint32_t descriptorTypeCount = {};
+ const VULKAN_HPP_NAMESPACE::DescriptorType * pDescriptorTypes = {};
+ };
+ static_assert( sizeof( MutableDescriptorTypeListVALVE ) == sizeof( VkMutableDescriptorTypeListVALVE ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<MutableDescriptorTypeListVALVE>::value,
+ "struct wrapper is not a standard layout!" );
+
+ struct MutableDescriptorTypeCreateInfoVALVE
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eMutableDescriptorTypeCreateInfoVALVE;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR MutableDescriptorTypeCreateInfoVALVE(
+ uint32_t mutableDescriptorTypeListCount_ = {},
+ const VULKAN_HPP_NAMESPACE::MutableDescriptorTypeListVALVE * pMutableDescriptorTypeLists_ = {} )
+ VULKAN_HPP_NOEXCEPT
+ : mutableDescriptorTypeListCount( mutableDescriptorTypeListCount_ )
+ , pMutableDescriptorTypeLists( pMutableDescriptorTypeLists_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR MutableDescriptorTypeCreateInfoVALVE( MutableDescriptorTypeCreateInfoVALVE const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ MutableDescriptorTypeCreateInfoVALVE( VkMutableDescriptorTypeCreateInfoVALVE const & rhs ) VULKAN_HPP_NOEXCEPT
+ : MutableDescriptorTypeCreateInfoVALVE( *reinterpret_cast<MutableDescriptorTypeCreateInfoVALVE const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ MutableDescriptorTypeCreateInfoVALVE(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::MutableDescriptorTypeListVALVE> const &
+ mutableDescriptorTypeLists_ )
+ : mutableDescriptorTypeListCount( static_cast<uint32_t>( mutableDescriptorTypeLists_.size() ) )
+ , pMutableDescriptorTypeLists( mutableDescriptorTypeLists_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 MutableDescriptorTypeCreateInfoVALVE &
+ operator=( MutableDescriptorTypeCreateInfoVALVE const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ MutableDescriptorTypeCreateInfoVALVE &
+ operator=( VkMutableDescriptorTypeCreateInfoVALVE const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MutableDescriptorTypeCreateInfoVALVE const *>( &rhs );
+ return *this;
+ }
+
+ MutableDescriptorTypeCreateInfoVALVE & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ MutableDescriptorTypeCreateInfoVALVE &
+ setMutableDescriptorTypeListCount( uint32_t mutableDescriptorTypeListCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ mutableDescriptorTypeListCount = mutableDescriptorTypeListCount_;
+ return *this;
+ }
+
+ MutableDescriptorTypeCreateInfoVALVE & setPMutableDescriptorTypeLists(
+ const VULKAN_HPP_NAMESPACE::MutableDescriptorTypeListVALVE * pMutableDescriptorTypeLists_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pMutableDescriptorTypeLists = pMutableDescriptorTypeLists_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ MutableDescriptorTypeCreateInfoVALVE & setMutableDescriptorTypeLists(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::MutableDescriptorTypeListVALVE> const &
+ mutableDescriptorTypeLists_ ) VULKAN_HPP_NOEXCEPT
+ {
+ mutableDescriptorTypeListCount = static_cast<uint32_t>( mutableDescriptorTypeLists_.size() );
+ pMutableDescriptorTypeLists = mutableDescriptorTypeLists_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkMutableDescriptorTypeCreateInfoVALVE const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkMutableDescriptorTypeCreateInfoVALVE *>( this );
+ }
+
+ operator VkMutableDescriptorTypeCreateInfoVALVE &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkMutableDescriptorTypeCreateInfoVALVE *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( MutableDescriptorTypeCreateInfoVALVE const & ) const = default;
+#else
+ bool operator==( MutableDescriptorTypeCreateInfoVALVE const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( mutableDescriptorTypeListCount == rhs.mutableDescriptorTypeListCount ) &&
+ ( pMutableDescriptorTypeLists == rhs.pMutableDescriptorTypeLists );
+ }
+
+ bool operator!=( MutableDescriptorTypeCreateInfoVALVE const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMutableDescriptorTypeCreateInfoVALVE;
+ const void * pNext = {};
+ uint32_t mutableDescriptorTypeListCount = {};
+ const VULKAN_HPP_NAMESPACE::MutableDescriptorTypeListVALVE * pMutableDescriptorTypeLists = {};
+ };
+ static_assert( sizeof( MutableDescriptorTypeCreateInfoVALVE ) == sizeof( VkMutableDescriptorTypeCreateInfoVALVE ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<MutableDescriptorTypeCreateInfoVALVE>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eMutableDescriptorTypeCreateInfoVALVE>
+ {
+ using Type = MutableDescriptorTypeCreateInfoVALVE;
+ };
+
+ struct PastPresentationTimingGOOGLE
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PastPresentationTimingGOOGLE( uint32_t presentID_ = {},
+ uint64_t desiredPresentTime_ = {},
+ uint64_t actualPresentTime_ = {},
+ uint64_t earliestPresentTime_ = {},
+ uint64_t presentMargin_ = {} ) VULKAN_HPP_NOEXCEPT
+ : presentID( presentID_ )
+ , desiredPresentTime( desiredPresentTime_ )
+ , actualPresentTime( actualPresentTime_ )
+ , earliestPresentTime( earliestPresentTime_ )
+ , presentMargin( presentMargin_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ PastPresentationTimingGOOGLE( PastPresentationTimingGOOGLE const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PastPresentationTimingGOOGLE( VkPastPresentationTimingGOOGLE const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PastPresentationTimingGOOGLE( *reinterpret_cast<PastPresentationTimingGOOGLE const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PastPresentationTimingGOOGLE &
+ operator=( PastPresentationTimingGOOGLE const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PastPresentationTimingGOOGLE & operator=( VkPastPresentationTimingGOOGLE const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PastPresentationTimingGOOGLE const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPastPresentationTimingGOOGLE const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPastPresentationTimingGOOGLE *>( this );
+ }
+
+ operator VkPastPresentationTimingGOOGLE &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPastPresentationTimingGOOGLE *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PastPresentationTimingGOOGLE const & ) const = default;
+#else
+ bool operator==( PastPresentationTimingGOOGLE const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( presentID == rhs.presentID ) && ( desiredPresentTime == rhs.desiredPresentTime ) &&
+ ( actualPresentTime == rhs.actualPresentTime ) && ( earliestPresentTime == rhs.earliestPresentTime ) &&
+ ( presentMargin == rhs.presentMargin );
+ }
+
+ bool operator!=( PastPresentationTimingGOOGLE const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ uint32_t presentID = {};
+ uint64_t desiredPresentTime = {};
+ uint64_t actualPresentTime = {};
+ uint64_t earliestPresentTime = {};
+ uint64_t presentMargin = {};
+ };
+ static_assert( sizeof( PastPresentationTimingGOOGLE ) == sizeof( VkPastPresentationTimingGOOGLE ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PastPresentationTimingGOOGLE>::value,
+ "struct wrapper is not a standard layout!" );
+
+ struct PerformanceConfigurationAcquireInfoINTEL
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePerformanceConfigurationAcquireInfoINTEL;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PerformanceConfigurationAcquireInfoINTEL(
+ VULKAN_HPP_NAMESPACE::PerformanceConfigurationTypeINTEL type_ =
+ VULKAN_HPP_NAMESPACE::PerformanceConfigurationTypeINTEL::eCommandQueueMetricsDiscoveryActivated )
+ VULKAN_HPP_NOEXCEPT : type( type_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PerformanceConfigurationAcquireInfoINTEL(
+ PerformanceConfigurationAcquireInfoINTEL const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PerformanceConfigurationAcquireInfoINTEL( VkPerformanceConfigurationAcquireInfoINTEL const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PerformanceConfigurationAcquireInfoINTEL(
+ *reinterpret_cast<PerformanceConfigurationAcquireInfoINTEL const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PerformanceConfigurationAcquireInfoINTEL &
+ operator=( PerformanceConfigurationAcquireInfoINTEL const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PerformanceConfigurationAcquireInfoINTEL &
+ operator=( VkPerformanceConfigurationAcquireInfoINTEL const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PerformanceConfigurationAcquireInfoINTEL const *>( &rhs );
+ return *this;
+ }
+
+ PerformanceConfigurationAcquireInfoINTEL & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PerformanceConfigurationAcquireInfoINTEL &
+ setType( VULKAN_HPP_NAMESPACE::PerformanceConfigurationTypeINTEL type_ ) VULKAN_HPP_NOEXCEPT
+ {
+ type = type_;
+ return *this;
+ }
+
+ operator VkPerformanceConfigurationAcquireInfoINTEL const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPerformanceConfigurationAcquireInfoINTEL *>( this );
+ }
+
+ operator VkPerformanceConfigurationAcquireInfoINTEL &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPerformanceConfigurationAcquireInfoINTEL *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PerformanceConfigurationAcquireInfoINTEL const & ) const = default;
+#else
+ bool operator==( PerformanceConfigurationAcquireInfoINTEL const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( type == rhs.type );
+ }
+
+ bool operator!=( PerformanceConfigurationAcquireInfoINTEL const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePerformanceConfigurationAcquireInfoINTEL;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::PerformanceConfigurationTypeINTEL type =
+ VULKAN_HPP_NAMESPACE::PerformanceConfigurationTypeINTEL::eCommandQueueMetricsDiscoveryActivated;
+ };
+ static_assert( sizeof( PerformanceConfigurationAcquireInfoINTEL ) ==
+ sizeof( VkPerformanceConfigurationAcquireInfoINTEL ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PerformanceConfigurationAcquireInfoINTEL>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePerformanceConfigurationAcquireInfoINTEL>
+ {
+ using Type = PerformanceConfigurationAcquireInfoINTEL;
+ };
+
+ struct PerformanceCounterDescriptionKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePerformanceCounterDescriptionKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR_14 PerformanceCounterDescriptionKHR(
+ VULKAN_HPP_NAMESPACE::PerformanceCounterDescriptionFlagsKHR flags_ = {},
+ std::array<char, VK_MAX_DESCRIPTION_SIZE> const & name_ = {},
+ std::array<char, VK_MAX_DESCRIPTION_SIZE> const & category_ = {},
+ std::array<char, VK_MAX_DESCRIPTION_SIZE> const & description_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , name( name_ )
+ , category( category_ )
+ , description( description_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR_14
+ PerformanceCounterDescriptionKHR( PerformanceCounterDescriptionKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PerformanceCounterDescriptionKHR( VkPerformanceCounterDescriptionKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PerformanceCounterDescriptionKHR( *reinterpret_cast<PerformanceCounterDescriptionKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PerformanceCounterDescriptionKHR &
+ operator=( PerformanceCounterDescriptionKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PerformanceCounterDescriptionKHR & operator=( VkPerformanceCounterDescriptionKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PerformanceCounterDescriptionKHR const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPerformanceCounterDescriptionKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPerformanceCounterDescriptionKHR *>( this );
+ }
+
+ operator VkPerformanceCounterDescriptionKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPerformanceCounterDescriptionKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PerformanceCounterDescriptionKHR const & ) const = default;
+#else
+ bool operator==( PerformanceCounterDescriptionKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) && ( name == rhs.name ) &&
+ ( category == rhs.category ) && ( description == rhs.description );
+ }
+
+ bool operator!=( PerformanceCounterDescriptionKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePerformanceCounterDescriptionKHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::PerformanceCounterDescriptionFlagsKHR flags = {};
+ VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DESCRIPTION_SIZE> name = {};
+ VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DESCRIPTION_SIZE> category = {};
+ VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DESCRIPTION_SIZE> description = {};
+ };
+ static_assert( sizeof( PerformanceCounterDescriptionKHR ) == sizeof( VkPerformanceCounterDescriptionKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PerformanceCounterDescriptionKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePerformanceCounterDescriptionKHR>
+ {
+ using Type = PerformanceCounterDescriptionKHR;
+ };
+
+ struct PerformanceCounterKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePerformanceCounterKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR_14 PerformanceCounterKHR(
+ VULKAN_HPP_NAMESPACE::PerformanceCounterUnitKHR unit_ = VULKAN_HPP_NAMESPACE::PerformanceCounterUnitKHR::eGeneric,
+ VULKAN_HPP_NAMESPACE::PerformanceCounterScopeKHR scope_ =
+ VULKAN_HPP_NAMESPACE::PerformanceCounterScopeKHR::eCommandBuffer,
+ VULKAN_HPP_NAMESPACE::PerformanceCounterStorageKHR storage_ =
+ VULKAN_HPP_NAMESPACE::PerformanceCounterStorageKHR::eInt32,
+ std::array<uint8_t, VK_UUID_SIZE> const & uuid_ = {} ) VULKAN_HPP_NOEXCEPT
+ : unit( unit_ )
+ , scope( scope_ )
+ , storage( storage_ )
+ , uuid( uuid_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR_14 PerformanceCounterKHR( PerformanceCounterKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PerformanceCounterKHR( VkPerformanceCounterKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PerformanceCounterKHR( *reinterpret_cast<PerformanceCounterKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PerformanceCounterKHR &
+ operator=( PerformanceCounterKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PerformanceCounterKHR & operator=( VkPerformanceCounterKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PerformanceCounterKHR const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPerformanceCounterKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPerformanceCounterKHR *>( this );
+ }
+
+ operator VkPerformanceCounterKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPerformanceCounterKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PerformanceCounterKHR const & ) const = default;
+#else
+ bool operator==( PerformanceCounterKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( unit == rhs.unit ) && ( scope == rhs.scope ) &&
+ ( storage == rhs.storage ) && ( uuid == rhs.uuid );
+ }
+
+ bool operator!=( PerformanceCounterKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePerformanceCounterKHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::PerformanceCounterUnitKHR unit = VULKAN_HPP_NAMESPACE::PerformanceCounterUnitKHR::eGeneric;
+ VULKAN_HPP_NAMESPACE::PerformanceCounterScopeKHR scope =
+ VULKAN_HPP_NAMESPACE::PerformanceCounterScopeKHR::eCommandBuffer;
+ VULKAN_HPP_NAMESPACE::PerformanceCounterStorageKHR storage =
+ VULKAN_HPP_NAMESPACE::PerformanceCounterStorageKHR::eInt32;
+ VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, VK_UUID_SIZE> uuid = {};
+ };
+ static_assert( sizeof( PerformanceCounterKHR ) == sizeof( VkPerformanceCounterKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PerformanceCounterKHR>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePerformanceCounterKHR>
+ {
+ using Type = PerformanceCounterKHR;
+ };
+
+ union PerformanceCounterResultKHR
+ {
+ PerformanceCounterResultKHR( VULKAN_HPP_NAMESPACE::PerformanceCounterResultKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ memcpy( static_cast<void *>( this ), &rhs, sizeof( VULKAN_HPP_NAMESPACE::PerformanceCounterResultKHR ) );
+ }
+
+ PerformanceCounterResultKHR( int32_t int32_ = {} ) : int32( int32_ ) {}
+
+ PerformanceCounterResultKHR( int64_t int64_ ) : int64( int64_ ) {}
+
+ PerformanceCounterResultKHR( uint32_t uint32_ ) : uint32( uint32_ ) {}
+
+ PerformanceCounterResultKHR( uint64_t uint64_ ) : uint64( uint64_ ) {}
+
+ PerformanceCounterResultKHR( float float32_ ) : float32( float32_ ) {}
+
+ PerformanceCounterResultKHR( double float64_ ) : float64( float64_ ) {}
+
+ PerformanceCounterResultKHR & setInt32( int32_t int32_ ) VULKAN_HPP_NOEXCEPT
+ {
+ int32 = int32_;
+ return *this;
+ }
+
+ PerformanceCounterResultKHR & setInt64( int64_t int64_ ) VULKAN_HPP_NOEXCEPT
+ {
+ int64 = int64_;
+ return *this;
+ }
+
+ PerformanceCounterResultKHR & setUint32( uint32_t uint32_ ) VULKAN_HPP_NOEXCEPT
+ {
+ uint32 = uint32_;
+ return *this;
+ }
+
+ PerformanceCounterResultKHR & setUint64( uint64_t uint64_ ) VULKAN_HPP_NOEXCEPT
+ {
+ uint64 = uint64_;
+ return *this;
+ }
+
+ PerformanceCounterResultKHR & setFloat32( float float32_ ) VULKAN_HPP_NOEXCEPT
+ {
+ float32 = float32_;
+ return *this;
+ }
+
+ PerformanceCounterResultKHR & setFloat64( double float64_ ) VULKAN_HPP_NOEXCEPT
+ {
+ float64 = float64_;
+ return *this;
+ }
+
+ VULKAN_HPP_NAMESPACE::PerformanceCounterResultKHR &
+ operator=( VULKAN_HPP_NAMESPACE::PerformanceCounterResultKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ memcpy( static_cast<void *>( this ), &rhs, sizeof( VULKAN_HPP_NAMESPACE::PerformanceCounterResultKHR ) );
+ return *this;
+ }
+
+ operator VkPerformanceCounterResultKHR const &() const
+ {
+ return *reinterpret_cast<const VkPerformanceCounterResultKHR *>( this );
+ }
+
+ operator VkPerformanceCounterResultKHR &()
+ {
+ return *reinterpret_cast<VkPerformanceCounterResultKHR *>( this );
+ }
+
+ int32_t int32;
+ int64_t int64;
+ uint32_t uint32;
+ uint64_t uint64;
+ float float32;
+ double float64;
+ };
+
+ struct PerformanceMarkerInfoINTEL
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePerformanceMarkerInfoINTEL;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PerformanceMarkerInfoINTEL( uint64_t marker_ = {} ) VULKAN_HPP_NOEXCEPT : marker( marker_ ) {}
+
+ VULKAN_HPP_CONSTEXPR
+ PerformanceMarkerInfoINTEL( PerformanceMarkerInfoINTEL const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PerformanceMarkerInfoINTEL( VkPerformanceMarkerInfoINTEL const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PerformanceMarkerInfoINTEL( *reinterpret_cast<PerformanceMarkerInfoINTEL const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PerformanceMarkerInfoINTEL &
+ operator=( PerformanceMarkerInfoINTEL const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PerformanceMarkerInfoINTEL & operator=( VkPerformanceMarkerInfoINTEL const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PerformanceMarkerInfoINTEL const *>( &rhs );
+ return *this;
+ }
+
+ PerformanceMarkerInfoINTEL & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PerformanceMarkerInfoINTEL & setMarker( uint64_t marker_ ) VULKAN_HPP_NOEXCEPT
+ {
+ marker = marker_;
+ return *this;
+ }
+
+ operator VkPerformanceMarkerInfoINTEL const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPerformanceMarkerInfoINTEL *>( this );
+ }
+
+ operator VkPerformanceMarkerInfoINTEL &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPerformanceMarkerInfoINTEL *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PerformanceMarkerInfoINTEL const & ) const = default;
+#else
+ bool operator==( PerformanceMarkerInfoINTEL const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( marker == rhs.marker );
+ }
+
+ bool operator!=( PerformanceMarkerInfoINTEL const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePerformanceMarkerInfoINTEL;
+ const void * pNext = {};
+ uint64_t marker = {};
+ };
+ static_assert( sizeof( PerformanceMarkerInfoINTEL ) == sizeof( VkPerformanceMarkerInfoINTEL ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PerformanceMarkerInfoINTEL>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePerformanceMarkerInfoINTEL>
+ {
+ using Type = PerformanceMarkerInfoINTEL;
+ };
+
+ struct PerformanceOverrideInfoINTEL
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePerformanceOverrideInfoINTEL;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ PerformanceOverrideInfoINTEL( VULKAN_HPP_NAMESPACE::PerformanceOverrideTypeINTEL type_ =
+ VULKAN_HPP_NAMESPACE::PerformanceOverrideTypeINTEL::eNullHardware,
+ VULKAN_HPP_NAMESPACE::Bool32 enable_ = {},
+ uint64_t parameter_ = {} ) VULKAN_HPP_NOEXCEPT
+ : type( type_ )
+ , enable( enable_ )
+ , parameter( parameter_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ PerformanceOverrideInfoINTEL( PerformanceOverrideInfoINTEL const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PerformanceOverrideInfoINTEL( VkPerformanceOverrideInfoINTEL const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PerformanceOverrideInfoINTEL( *reinterpret_cast<PerformanceOverrideInfoINTEL const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PerformanceOverrideInfoINTEL &
+ operator=( PerformanceOverrideInfoINTEL const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PerformanceOverrideInfoINTEL & operator=( VkPerformanceOverrideInfoINTEL const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PerformanceOverrideInfoINTEL const *>( &rhs );
+ return *this;
+ }
+
+ PerformanceOverrideInfoINTEL & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PerformanceOverrideInfoINTEL &
+ setType( VULKAN_HPP_NAMESPACE::PerformanceOverrideTypeINTEL type_ ) VULKAN_HPP_NOEXCEPT
+ {
+ type = type_;
+ return *this;
+ }
+
+ PerformanceOverrideInfoINTEL & setEnable( VULKAN_HPP_NAMESPACE::Bool32 enable_ ) VULKAN_HPP_NOEXCEPT
+ {
+ enable = enable_;
+ return *this;
+ }
+
+ PerformanceOverrideInfoINTEL & setParameter( uint64_t parameter_ ) VULKAN_HPP_NOEXCEPT
+ {
+ parameter = parameter_;
+ return *this;
+ }
+
+ operator VkPerformanceOverrideInfoINTEL const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPerformanceOverrideInfoINTEL *>( this );
+ }
+
+ operator VkPerformanceOverrideInfoINTEL &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPerformanceOverrideInfoINTEL *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PerformanceOverrideInfoINTEL const & ) const = default;
+#else
+ bool operator==( PerformanceOverrideInfoINTEL const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( type == rhs.type ) && ( enable == rhs.enable ) &&
+ ( parameter == rhs.parameter );
+ }
+
+ bool operator!=( PerformanceOverrideInfoINTEL const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePerformanceOverrideInfoINTEL;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::PerformanceOverrideTypeINTEL type =
+ VULKAN_HPP_NAMESPACE::PerformanceOverrideTypeINTEL::eNullHardware;
+ VULKAN_HPP_NAMESPACE::Bool32 enable = {};
+ uint64_t parameter = {};
+ };
+ static_assert( sizeof( PerformanceOverrideInfoINTEL ) == sizeof( VkPerformanceOverrideInfoINTEL ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PerformanceOverrideInfoINTEL>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePerformanceOverrideInfoINTEL>
+ {
+ using Type = PerformanceOverrideInfoINTEL;
+ };
+
+ struct PerformanceQuerySubmitInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePerformanceQuerySubmitInfoKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PerformanceQuerySubmitInfoKHR( uint32_t counterPassIndex_ = {} ) VULKAN_HPP_NOEXCEPT
+ : counterPassIndex( counterPassIndex_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ PerformanceQuerySubmitInfoKHR( PerformanceQuerySubmitInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PerformanceQuerySubmitInfoKHR( VkPerformanceQuerySubmitInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PerformanceQuerySubmitInfoKHR( *reinterpret_cast<PerformanceQuerySubmitInfoKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PerformanceQuerySubmitInfoKHR &
+ operator=( PerformanceQuerySubmitInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PerformanceQuerySubmitInfoKHR & operator=( VkPerformanceQuerySubmitInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PerformanceQuerySubmitInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ PerformanceQuerySubmitInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PerformanceQuerySubmitInfoKHR & setCounterPassIndex( uint32_t counterPassIndex_ ) VULKAN_HPP_NOEXCEPT
+ {
+ counterPassIndex = counterPassIndex_;
+ return *this;
+ }
+
+ operator VkPerformanceQuerySubmitInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPerformanceQuerySubmitInfoKHR *>( this );
+ }
+
+ operator VkPerformanceQuerySubmitInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPerformanceQuerySubmitInfoKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PerformanceQuerySubmitInfoKHR const & ) const = default;
+#else
+ bool operator==( PerformanceQuerySubmitInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( counterPassIndex == rhs.counterPassIndex );
+ }
+
+ bool operator!=( PerformanceQuerySubmitInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePerformanceQuerySubmitInfoKHR;
+ const void * pNext = {};
+ uint32_t counterPassIndex = {};
+ };
+ static_assert( sizeof( PerformanceQuerySubmitInfoKHR ) == sizeof( VkPerformanceQuerySubmitInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PerformanceQuerySubmitInfoKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePerformanceQuerySubmitInfoKHR>
+ {
+ using Type = PerformanceQuerySubmitInfoKHR;
+ };
+
+ struct PerformanceStreamMarkerInfoINTEL
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePerformanceStreamMarkerInfoINTEL;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PerformanceStreamMarkerInfoINTEL( uint32_t marker_ = {} ) VULKAN_HPP_NOEXCEPT
+ : marker( marker_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ PerformanceStreamMarkerInfoINTEL( PerformanceStreamMarkerInfoINTEL const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PerformanceStreamMarkerInfoINTEL( VkPerformanceStreamMarkerInfoINTEL const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PerformanceStreamMarkerInfoINTEL( *reinterpret_cast<PerformanceStreamMarkerInfoINTEL const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PerformanceStreamMarkerInfoINTEL &
+ operator=( PerformanceStreamMarkerInfoINTEL const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PerformanceStreamMarkerInfoINTEL & operator=( VkPerformanceStreamMarkerInfoINTEL const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PerformanceStreamMarkerInfoINTEL const *>( &rhs );
+ return *this;
+ }
+
+ PerformanceStreamMarkerInfoINTEL & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PerformanceStreamMarkerInfoINTEL & setMarker( uint32_t marker_ ) VULKAN_HPP_NOEXCEPT
+ {
+ marker = marker_;
+ return *this;
+ }
+
+ operator VkPerformanceStreamMarkerInfoINTEL const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPerformanceStreamMarkerInfoINTEL *>( this );
+ }
+
+ operator VkPerformanceStreamMarkerInfoINTEL &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPerformanceStreamMarkerInfoINTEL *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PerformanceStreamMarkerInfoINTEL const & ) const = default;
+#else
+ bool operator==( PerformanceStreamMarkerInfoINTEL const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( marker == rhs.marker );
+ }
+
+ bool operator!=( PerformanceStreamMarkerInfoINTEL const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePerformanceStreamMarkerInfoINTEL;
+ const void * pNext = {};
+ uint32_t marker = {};
+ };
+ static_assert( sizeof( PerformanceStreamMarkerInfoINTEL ) == sizeof( VkPerformanceStreamMarkerInfoINTEL ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PerformanceStreamMarkerInfoINTEL>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePerformanceStreamMarkerInfoINTEL>
+ {
+ using Type = PerformanceStreamMarkerInfoINTEL;
+ };
+
+ union PerformanceValueDataINTEL
+ {
+ PerformanceValueDataINTEL( VULKAN_HPP_NAMESPACE::PerformanceValueDataINTEL const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ memcpy( static_cast<void *>( this ), &rhs, sizeof( VULKAN_HPP_NAMESPACE::PerformanceValueDataINTEL ) );
+ }
+
+ PerformanceValueDataINTEL( uint32_t value32_ = {} ) : value32( value32_ ) {}
+
+ PerformanceValueDataINTEL( uint64_t value64_ ) : value64( value64_ ) {}
+
+ PerformanceValueDataINTEL( float valueFloat_ ) : valueFloat( valueFloat_ ) {}
+
+ PerformanceValueDataINTEL( const char * valueString_ ) : valueString( valueString_ ) {}
+
+ PerformanceValueDataINTEL & setValue32( uint32_t value32_ ) VULKAN_HPP_NOEXCEPT
+ {
+ value32 = value32_;
+ return *this;
+ }
+
+ PerformanceValueDataINTEL & setValue64( uint64_t value64_ ) VULKAN_HPP_NOEXCEPT
+ {
+ value64 = value64_;
+ return *this;
+ }
+
+ PerformanceValueDataINTEL & setValueFloat( float valueFloat_ ) VULKAN_HPP_NOEXCEPT
+ {
+ valueFloat = valueFloat_;
+ return *this;
+ }
+
+ PerformanceValueDataINTEL & setValueBool( VULKAN_HPP_NAMESPACE::Bool32 valueBool_ ) VULKAN_HPP_NOEXCEPT
+ {
+ valueBool = valueBool_;
+ return *this;
+ }
+
+ PerformanceValueDataINTEL & setValueString( const char * valueString_ ) VULKAN_HPP_NOEXCEPT
+ {
+ valueString = valueString_;
+ return *this;
+ }
+
+ VULKAN_HPP_NAMESPACE::PerformanceValueDataINTEL &
+ operator=( VULKAN_HPP_NAMESPACE::PerformanceValueDataINTEL const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ memcpy( static_cast<void *>( this ), &rhs, sizeof( VULKAN_HPP_NAMESPACE::PerformanceValueDataINTEL ) );
+ return *this;
+ }
+
+ operator VkPerformanceValueDataINTEL const &() const
+ {
+ return *reinterpret_cast<const VkPerformanceValueDataINTEL *>( this );
+ }
+
+ operator VkPerformanceValueDataINTEL &()
+ {
+ return *reinterpret_cast<VkPerformanceValueDataINTEL *>( this );
+ }
+
+#ifdef VULKAN_HPP_HAS_UNRESTRICTED_UNIONS
+ uint32_t value32;
+ uint64_t value64;
+ float valueFloat;
+ VULKAN_HPP_NAMESPACE::Bool32 valueBool;
+ const char * valueString;
+#else
+ uint32_t value32;
+ uint64_t value64;
+ float valueFloat;
+ VkBool32 valueBool;
+ const char * valueString;
+#endif /*VULKAN_HPP_HAS_UNRESTRICTED_UNIONS*/
+ };
+
+ struct PerformanceValueINTEL
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ PerformanceValueINTEL(
+ VULKAN_HPP_NAMESPACE::PerformanceValueTypeINTEL type_ = VULKAN_HPP_NAMESPACE::PerformanceValueTypeINTEL::eUint32,
+ VULKAN_HPP_NAMESPACE::PerformanceValueDataINTEL data_ = {} ) VULKAN_HPP_NOEXCEPT
+ : type( type_ )
+ , data( data_ )
+ {}
+
+ PerformanceValueINTEL( PerformanceValueINTEL const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PerformanceValueINTEL( VkPerformanceValueINTEL const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PerformanceValueINTEL( *reinterpret_cast<PerformanceValueINTEL const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ PerformanceValueINTEL & operator=( PerformanceValueINTEL const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PerformanceValueINTEL & operator=( VkPerformanceValueINTEL const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PerformanceValueINTEL const *>( &rhs );
+ return *this;
+ }
+
+ PerformanceValueINTEL & setType( VULKAN_HPP_NAMESPACE::PerformanceValueTypeINTEL type_ ) VULKAN_HPP_NOEXCEPT
+ {
+ type = type_;
+ return *this;
+ }
+
+ PerformanceValueINTEL & setData( VULKAN_HPP_NAMESPACE::PerformanceValueDataINTEL const & data_ ) VULKAN_HPP_NOEXCEPT
+ {
+ data = data_;
+ return *this;
+ }
+
+ operator VkPerformanceValueINTEL const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPerformanceValueINTEL *>( this );
+ }
+
+ operator VkPerformanceValueINTEL &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPerformanceValueINTEL *>( this );
+ }
+
+ public:
+ VULKAN_HPP_NAMESPACE::PerformanceValueTypeINTEL type = VULKAN_HPP_NAMESPACE::PerformanceValueTypeINTEL::eUint32;
+ VULKAN_HPP_NAMESPACE::PerformanceValueDataINTEL data = {};
+ };
+ static_assert( sizeof( PerformanceValueINTEL ) == sizeof( VkPerformanceValueINTEL ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PerformanceValueINTEL>::value, "struct wrapper is not a standard layout!" );
+
+ struct PhysicalDevice16BitStorageFeatures
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDevice16BitStorageFeatures;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ PhysicalDevice16BitStorageFeatures( VULKAN_HPP_NAMESPACE::Bool32 storageBuffer16BitAccess_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 uniformAndStorageBuffer16BitAccess_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 storagePushConstant16_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 storageInputOutput16_ = {} ) VULKAN_HPP_NOEXCEPT
+ : storageBuffer16BitAccess( storageBuffer16BitAccess_ )
+ , uniformAndStorageBuffer16BitAccess( uniformAndStorageBuffer16BitAccess_ )
+ , storagePushConstant16( storagePushConstant16_ )
+ , storageInputOutput16( storageInputOutput16_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDevice16BitStorageFeatures( PhysicalDevice16BitStorageFeatures const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDevice16BitStorageFeatures( VkPhysicalDevice16BitStorageFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDevice16BitStorageFeatures( *reinterpret_cast<PhysicalDevice16BitStorageFeatures const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDevice16BitStorageFeatures &
+ operator=( PhysicalDevice16BitStorageFeatures const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDevice16BitStorageFeatures &
+ operator=( VkPhysicalDevice16BitStorageFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDevice16BitStorageFeatures const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDevice16BitStorageFeatures & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDevice16BitStorageFeatures &
+ setStorageBuffer16BitAccess( VULKAN_HPP_NAMESPACE::Bool32 storageBuffer16BitAccess_ ) VULKAN_HPP_NOEXCEPT
+ {
+ storageBuffer16BitAccess = storageBuffer16BitAccess_;
+ return *this;
+ }
+
+ PhysicalDevice16BitStorageFeatures & setUniformAndStorageBuffer16BitAccess(
+ VULKAN_HPP_NAMESPACE::Bool32 uniformAndStorageBuffer16BitAccess_ ) VULKAN_HPP_NOEXCEPT
+ {
+ uniformAndStorageBuffer16BitAccess = uniformAndStorageBuffer16BitAccess_;
+ return *this;
+ }
+
+ PhysicalDevice16BitStorageFeatures &
+ setStoragePushConstant16( VULKAN_HPP_NAMESPACE::Bool32 storagePushConstant16_ ) VULKAN_HPP_NOEXCEPT
+ {
+ storagePushConstant16 = storagePushConstant16_;
+ return *this;
+ }
+
+ PhysicalDevice16BitStorageFeatures &
+ setStorageInputOutput16( VULKAN_HPP_NAMESPACE::Bool32 storageInputOutput16_ ) VULKAN_HPP_NOEXCEPT
+ {
+ storageInputOutput16 = storageInputOutput16_;
+ return *this;
+ }
+
+ operator VkPhysicalDevice16BitStorageFeatures const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDevice16BitStorageFeatures *>( this );
+ }
+
+ operator VkPhysicalDevice16BitStorageFeatures &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDevice16BitStorageFeatures *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDevice16BitStorageFeatures const & ) const = default;
+#else
+ bool operator==( PhysicalDevice16BitStorageFeatures const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( storageBuffer16BitAccess == rhs.storageBuffer16BitAccess ) &&
+ ( uniformAndStorageBuffer16BitAccess == rhs.uniformAndStorageBuffer16BitAccess ) &&
+ ( storagePushConstant16 == rhs.storagePushConstant16 ) &&
+ ( storageInputOutput16 == rhs.storageInputOutput16 );
+ }
+
+ bool operator!=( PhysicalDevice16BitStorageFeatures const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDevice16BitStorageFeatures;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 storageBuffer16BitAccess = {};
+ VULKAN_HPP_NAMESPACE::Bool32 uniformAndStorageBuffer16BitAccess = {};
+ VULKAN_HPP_NAMESPACE::Bool32 storagePushConstant16 = {};
+ VULKAN_HPP_NAMESPACE::Bool32 storageInputOutput16 = {};
+ };
+ static_assert( sizeof( PhysicalDevice16BitStorageFeatures ) == sizeof( VkPhysicalDevice16BitStorageFeatures ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDevice16BitStorageFeatures>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDevice16BitStorageFeatures>
+ {
+ using Type = PhysicalDevice16BitStorageFeatures;
+ };
+ using PhysicalDevice16BitStorageFeaturesKHR = PhysicalDevice16BitStorageFeatures;
+
+ struct PhysicalDevice4444FormatsFeaturesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDevice4444FormatsFeaturesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ PhysicalDevice4444FormatsFeaturesEXT( VULKAN_HPP_NAMESPACE::Bool32 formatA4R4G4B4_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 formatA4B4G4R4_ = {} ) VULKAN_HPP_NOEXCEPT
+ : formatA4R4G4B4( formatA4R4G4B4_ )
+ , formatA4B4G4R4( formatA4B4G4R4_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDevice4444FormatsFeaturesEXT( PhysicalDevice4444FormatsFeaturesEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDevice4444FormatsFeaturesEXT( VkPhysicalDevice4444FormatsFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDevice4444FormatsFeaturesEXT( *reinterpret_cast<PhysicalDevice4444FormatsFeaturesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDevice4444FormatsFeaturesEXT &
+ operator=( PhysicalDevice4444FormatsFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDevice4444FormatsFeaturesEXT &
+ operator=( VkPhysicalDevice4444FormatsFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDevice4444FormatsFeaturesEXT const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDevice4444FormatsFeaturesEXT & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDevice4444FormatsFeaturesEXT &
+ setFormatA4R4G4B4( VULKAN_HPP_NAMESPACE::Bool32 formatA4R4G4B4_ ) VULKAN_HPP_NOEXCEPT
+ {
+ formatA4R4G4B4 = formatA4R4G4B4_;
+ return *this;
+ }
+
+ PhysicalDevice4444FormatsFeaturesEXT &
+ setFormatA4B4G4R4( VULKAN_HPP_NAMESPACE::Bool32 formatA4B4G4R4_ ) VULKAN_HPP_NOEXCEPT
+ {
+ formatA4B4G4R4 = formatA4B4G4R4_;
+ return *this;
+ }
+
+ operator VkPhysicalDevice4444FormatsFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDevice4444FormatsFeaturesEXT *>( this );
+ }
+
+ operator VkPhysicalDevice4444FormatsFeaturesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDevice4444FormatsFeaturesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDevice4444FormatsFeaturesEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDevice4444FormatsFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( formatA4R4G4B4 == rhs.formatA4R4G4B4 ) &&
+ ( formatA4B4G4R4 == rhs.formatA4B4G4R4 );
+ }
+
+ bool operator!=( PhysicalDevice4444FormatsFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDevice4444FormatsFeaturesEXT;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 formatA4R4G4B4 = {};
+ VULKAN_HPP_NAMESPACE::Bool32 formatA4B4G4R4 = {};
+ };
+ static_assert( sizeof( PhysicalDevice4444FormatsFeaturesEXT ) == sizeof( VkPhysicalDevice4444FormatsFeaturesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDevice4444FormatsFeaturesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDevice4444FormatsFeaturesEXT>
+ {
+ using Type = PhysicalDevice4444FormatsFeaturesEXT;
+ };
+
+ struct PhysicalDevice8BitStorageFeatures
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDevice8BitStorageFeatures;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ PhysicalDevice8BitStorageFeatures( VULKAN_HPP_NAMESPACE::Bool32 storageBuffer8BitAccess_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 uniformAndStorageBuffer8BitAccess_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 storagePushConstant8_ = {} ) VULKAN_HPP_NOEXCEPT
+ : storageBuffer8BitAccess( storageBuffer8BitAccess_ )
+ , uniformAndStorageBuffer8BitAccess( uniformAndStorageBuffer8BitAccess_ )
+ , storagePushConstant8( storagePushConstant8_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ PhysicalDevice8BitStorageFeatures( PhysicalDevice8BitStorageFeatures const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDevice8BitStorageFeatures( VkPhysicalDevice8BitStorageFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDevice8BitStorageFeatures( *reinterpret_cast<PhysicalDevice8BitStorageFeatures const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDevice8BitStorageFeatures &
+ operator=( PhysicalDevice8BitStorageFeatures const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDevice8BitStorageFeatures & operator=( VkPhysicalDevice8BitStorageFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDevice8BitStorageFeatures const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDevice8BitStorageFeatures & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDevice8BitStorageFeatures &
+ setStorageBuffer8BitAccess( VULKAN_HPP_NAMESPACE::Bool32 storageBuffer8BitAccess_ ) VULKAN_HPP_NOEXCEPT
+ {
+ storageBuffer8BitAccess = storageBuffer8BitAccess_;
+ return *this;
+ }
+
+ PhysicalDevice8BitStorageFeatures & setUniformAndStorageBuffer8BitAccess(
+ VULKAN_HPP_NAMESPACE::Bool32 uniformAndStorageBuffer8BitAccess_ ) VULKAN_HPP_NOEXCEPT
+ {
+ uniformAndStorageBuffer8BitAccess = uniformAndStorageBuffer8BitAccess_;
+ return *this;
+ }
+
+ PhysicalDevice8BitStorageFeatures &
+ setStoragePushConstant8( VULKAN_HPP_NAMESPACE::Bool32 storagePushConstant8_ ) VULKAN_HPP_NOEXCEPT
+ {
+ storagePushConstant8 = storagePushConstant8_;
+ return *this;
+ }
+
+ operator VkPhysicalDevice8BitStorageFeatures const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDevice8BitStorageFeatures *>( this );
+ }
+
+ operator VkPhysicalDevice8BitStorageFeatures &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDevice8BitStorageFeatures *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDevice8BitStorageFeatures const & ) const = default;
+#else
+ bool operator==( PhysicalDevice8BitStorageFeatures const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( storageBuffer8BitAccess == rhs.storageBuffer8BitAccess ) &&
+ ( uniformAndStorageBuffer8BitAccess == rhs.uniformAndStorageBuffer8BitAccess ) &&
+ ( storagePushConstant8 == rhs.storagePushConstant8 );
+ }
+
+ bool operator!=( PhysicalDevice8BitStorageFeatures const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDevice8BitStorageFeatures;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 storageBuffer8BitAccess = {};
+ VULKAN_HPP_NAMESPACE::Bool32 uniformAndStorageBuffer8BitAccess = {};
+ VULKAN_HPP_NAMESPACE::Bool32 storagePushConstant8 = {};
+ };
+ static_assert( sizeof( PhysicalDevice8BitStorageFeatures ) == sizeof( VkPhysicalDevice8BitStorageFeatures ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDevice8BitStorageFeatures>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDevice8BitStorageFeatures>
+ {
+ using Type = PhysicalDevice8BitStorageFeatures;
+ };
+ using PhysicalDevice8BitStorageFeaturesKHR = PhysicalDevice8BitStorageFeatures;
+
+ struct PhysicalDeviceASTCDecodeFeaturesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceAstcDecodeFeaturesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceASTCDecodeFeaturesEXT(
+ VULKAN_HPP_NAMESPACE::Bool32 decodeModeSharedExponent_ = {} ) VULKAN_HPP_NOEXCEPT
+ : decodeModeSharedExponent( decodeModeSharedExponent_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceASTCDecodeFeaturesEXT( PhysicalDeviceASTCDecodeFeaturesEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceASTCDecodeFeaturesEXT( VkPhysicalDeviceASTCDecodeFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceASTCDecodeFeaturesEXT( *reinterpret_cast<PhysicalDeviceASTCDecodeFeaturesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceASTCDecodeFeaturesEXT &
+ operator=( PhysicalDeviceASTCDecodeFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceASTCDecodeFeaturesEXT &
+ operator=( VkPhysicalDeviceASTCDecodeFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceASTCDecodeFeaturesEXT const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceASTCDecodeFeaturesEXT & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceASTCDecodeFeaturesEXT &
+ setDecodeModeSharedExponent( VULKAN_HPP_NAMESPACE::Bool32 decodeModeSharedExponent_ ) VULKAN_HPP_NOEXCEPT
+ {
+ decodeModeSharedExponent = decodeModeSharedExponent_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceASTCDecodeFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceASTCDecodeFeaturesEXT *>( this );
+ }
+
+ operator VkPhysicalDeviceASTCDecodeFeaturesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceASTCDecodeFeaturesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceASTCDecodeFeaturesEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceASTCDecodeFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( decodeModeSharedExponent == rhs.decodeModeSharedExponent );
+ }
+
+ bool operator!=( PhysicalDeviceASTCDecodeFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceAstcDecodeFeaturesEXT;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 decodeModeSharedExponent = {};
+ };
+ static_assert( sizeof( PhysicalDeviceASTCDecodeFeaturesEXT ) == sizeof( VkPhysicalDeviceASTCDecodeFeaturesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceASTCDecodeFeaturesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceAstcDecodeFeaturesEXT>
+ {
+ using Type = PhysicalDeviceASTCDecodeFeaturesEXT;
+ };
+
+ struct PhysicalDeviceAccelerationStructureFeaturesKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceAccelerationStructureFeaturesKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceAccelerationStructureFeaturesKHR(
+ VULKAN_HPP_NAMESPACE::Bool32 accelerationStructure_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 accelerationStructureCaptureReplay_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 accelerationStructureIndirectBuild_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 accelerationStructureHostCommands_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingAccelerationStructureUpdateAfterBind_ = {} ) VULKAN_HPP_NOEXCEPT
+ : accelerationStructure( accelerationStructure_ )
+ , accelerationStructureCaptureReplay( accelerationStructureCaptureReplay_ )
+ , accelerationStructureIndirectBuild( accelerationStructureIndirectBuild_ )
+ , accelerationStructureHostCommands( accelerationStructureHostCommands_ )
+ , descriptorBindingAccelerationStructureUpdateAfterBind( descriptorBindingAccelerationStructureUpdateAfterBind_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceAccelerationStructureFeaturesKHR(
+ PhysicalDeviceAccelerationStructureFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceAccelerationStructureFeaturesKHR( VkPhysicalDeviceAccelerationStructureFeaturesKHR const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceAccelerationStructureFeaturesKHR(
+ *reinterpret_cast<PhysicalDeviceAccelerationStructureFeaturesKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceAccelerationStructureFeaturesKHR &
+ operator=( PhysicalDeviceAccelerationStructureFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceAccelerationStructureFeaturesKHR &
+ operator=( VkPhysicalDeviceAccelerationStructureFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceAccelerationStructureFeaturesKHR const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceAccelerationStructureFeaturesKHR & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceAccelerationStructureFeaturesKHR &
+ setAccelerationStructure( VULKAN_HPP_NAMESPACE::Bool32 accelerationStructure_ ) VULKAN_HPP_NOEXCEPT
+ {
+ accelerationStructure = accelerationStructure_;
+ return *this;
+ }
+
+ PhysicalDeviceAccelerationStructureFeaturesKHR & setAccelerationStructureCaptureReplay(
+ VULKAN_HPP_NAMESPACE::Bool32 accelerationStructureCaptureReplay_ ) VULKAN_HPP_NOEXCEPT
+ {
+ accelerationStructureCaptureReplay = accelerationStructureCaptureReplay_;
+ return *this;
+ }
+
+ PhysicalDeviceAccelerationStructureFeaturesKHR & setAccelerationStructureIndirectBuild(
+ VULKAN_HPP_NAMESPACE::Bool32 accelerationStructureIndirectBuild_ ) VULKAN_HPP_NOEXCEPT
+ {
+ accelerationStructureIndirectBuild = accelerationStructureIndirectBuild_;
+ return *this;
+ }
+
+ PhysicalDeviceAccelerationStructureFeaturesKHR & setAccelerationStructureHostCommands(
+ VULKAN_HPP_NAMESPACE::Bool32 accelerationStructureHostCommands_ ) VULKAN_HPP_NOEXCEPT
+ {
+ accelerationStructureHostCommands = accelerationStructureHostCommands_;
+ return *this;
+ }
+
+ PhysicalDeviceAccelerationStructureFeaturesKHR & setDescriptorBindingAccelerationStructureUpdateAfterBind(
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingAccelerationStructureUpdateAfterBind_ ) VULKAN_HPP_NOEXCEPT
+ {
+ descriptorBindingAccelerationStructureUpdateAfterBind = descriptorBindingAccelerationStructureUpdateAfterBind_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceAccelerationStructureFeaturesKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceAccelerationStructureFeaturesKHR *>( this );
+ }
+
+ operator VkPhysicalDeviceAccelerationStructureFeaturesKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceAccelerationStructureFeaturesKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceAccelerationStructureFeaturesKHR const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceAccelerationStructureFeaturesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( accelerationStructure == rhs.accelerationStructure ) &&
+ ( accelerationStructureCaptureReplay == rhs.accelerationStructureCaptureReplay ) &&
+ ( accelerationStructureIndirectBuild == rhs.accelerationStructureIndirectBuild ) &&
+ ( accelerationStructureHostCommands == rhs.accelerationStructureHostCommands ) &&
+ ( descriptorBindingAccelerationStructureUpdateAfterBind ==
+ rhs.descriptorBindingAccelerationStructureUpdateAfterBind );
+ }
+
+ bool operator!=( PhysicalDeviceAccelerationStructureFeaturesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceAccelerationStructureFeaturesKHR;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 accelerationStructure = {};
+ VULKAN_HPP_NAMESPACE::Bool32 accelerationStructureCaptureReplay = {};
+ VULKAN_HPP_NAMESPACE::Bool32 accelerationStructureIndirectBuild = {};
+ VULKAN_HPP_NAMESPACE::Bool32 accelerationStructureHostCommands = {};
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingAccelerationStructureUpdateAfterBind = {};
+ };
+ static_assert( sizeof( PhysicalDeviceAccelerationStructureFeaturesKHR ) ==
+ sizeof( VkPhysicalDeviceAccelerationStructureFeaturesKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceAccelerationStructureFeaturesKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceAccelerationStructureFeaturesKHR>
+ {
+ using Type = PhysicalDeviceAccelerationStructureFeaturesKHR;
+ };
+
+ struct PhysicalDeviceAccelerationStructurePropertiesKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceAccelerationStructurePropertiesKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceAccelerationStructurePropertiesKHR(
+ uint64_t maxGeometryCount_ = {},
+ uint64_t maxInstanceCount_ = {},
+ uint64_t maxPrimitiveCount_ = {},
+ uint32_t maxPerStageDescriptorAccelerationStructures_ = {},
+ uint32_t maxPerStageDescriptorUpdateAfterBindAccelerationStructures_ = {},
+ uint32_t maxDescriptorSetAccelerationStructures_ = {},
+ uint32_t maxDescriptorSetUpdateAfterBindAccelerationStructures_ = {},
+ uint32_t minAccelerationStructureScratchOffsetAlignment_ = {} ) VULKAN_HPP_NOEXCEPT
+ : maxGeometryCount( maxGeometryCount_ )
+ , maxInstanceCount( maxInstanceCount_ )
+ , maxPrimitiveCount( maxPrimitiveCount_ )
+ , maxPerStageDescriptorAccelerationStructures( maxPerStageDescriptorAccelerationStructures_ )
+ , maxPerStageDescriptorUpdateAfterBindAccelerationStructures(
+ maxPerStageDescriptorUpdateAfterBindAccelerationStructures_ )
+ , maxDescriptorSetAccelerationStructures( maxDescriptorSetAccelerationStructures_ )
+ , maxDescriptorSetUpdateAfterBindAccelerationStructures( maxDescriptorSetUpdateAfterBindAccelerationStructures_ )
+ , minAccelerationStructureScratchOffsetAlignment( minAccelerationStructureScratchOffsetAlignment_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceAccelerationStructurePropertiesKHR(
+ PhysicalDeviceAccelerationStructurePropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceAccelerationStructurePropertiesKHR( VkPhysicalDeviceAccelerationStructurePropertiesKHR const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceAccelerationStructurePropertiesKHR(
+ *reinterpret_cast<PhysicalDeviceAccelerationStructurePropertiesKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceAccelerationStructurePropertiesKHR &
+ operator=( PhysicalDeviceAccelerationStructurePropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceAccelerationStructurePropertiesKHR &
+ operator=( VkPhysicalDeviceAccelerationStructurePropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceAccelerationStructurePropertiesKHR const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDeviceAccelerationStructurePropertiesKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceAccelerationStructurePropertiesKHR *>( this );
+ }
+
+ operator VkPhysicalDeviceAccelerationStructurePropertiesKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceAccelerationStructurePropertiesKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceAccelerationStructurePropertiesKHR const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceAccelerationStructurePropertiesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( maxGeometryCount == rhs.maxGeometryCount ) &&
+ ( maxInstanceCount == rhs.maxInstanceCount ) && ( maxPrimitiveCount == rhs.maxPrimitiveCount ) &&
+ ( maxPerStageDescriptorAccelerationStructures == rhs.maxPerStageDescriptorAccelerationStructures ) &&
+ ( maxPerStageDescriptorUpdateAfterBindAccelerationStructures ==
+ rhs.maxPerStageDescriptorUpdateAfterBindAccelerationStructures ) &&
+ ( maxDescriptorSetAccelerationStructures == rhs.maxDescriptorSetAccelerationStructures ) &&
+ ( maxDescriptorSetUpdateAfterBindAccelerationStructures ==
+ rhs.maxDescriptorSetUpdateAfterBindAccelerationStructures ) &&
+ ( minAccelerationStructureScratchOffsetAlignment == rhs.minAccelerationStructureScratchOffsetAlignment );
+ }
+
+ bool operator!=( PhysicalDeviceAccelerationStructurePropertiesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceAccelerationStructurePropertiesKHR;
+ void * pNext = {};
+ uint64_t maxGeometryCount = {};
+ uint64_t maxInstanceCount = {};
+ uint64_t maxPrimitiveCount = {};
+ uint32_t maxPerStageDescriptorAccelerationStructures = {};
+ uint32_t maxPerStageDescriptorUpdateAfterBindAccelerationStructures = {};
+ uint32_t maxDescriptorSetAccelerationStructures = {};
+ uint32_t maxDescriptorSetUpdateAfterBindAccelerationStructures = {};
+ uint32_t minAccelerationStructureScratchOffsetAlignment = {};
+ };
+ static_assert( sizeof( PhysicalDeviceAccelerationStructurePropertiesKHR ) ==
+ sizeof( VkPhysicalDeviceAccelerationStructurePropertiesKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceAccelerationStructurePropertiesKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceAccelerationStructurePropertiesKHR>
+ {
+ using Type = PhysicalDeviceAccelerationStructurePropertiesKHR;
+ };
+
+ struct PhysicalDeviceBlendOperationAdvancedFeaturesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceBlendOperationAdvancedFeaturesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceBlendOperationAdvancedFeaturesEXT(
+ VULKAN_HPP_NAMESPACE::Bool32 advancedBlendCoherentOperations_ = {} ) VULKAN_HPP_NOEXCEPT
+ : advancedBlendCoherentOperations( advancedBlendCoherentOperations_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceBlendOperationAdvancedFeaturesEXT(
+ PhysicalDeviceBlendOperationAdvancedFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceBlendOperationAdvancedFeaturesEXT( VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceBlendOperationAdvancedFeaturesEXT(
+ *reinterpret_cast<PhysicalDeviceBlendOperationAdvancedFeaturesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceBlendOperationAdvancedFeaturesEXT &
+ operator=( PhysicalDeviceBlendOperationAdvancedFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceBlendOperationAdvancedFeaturesEXT &
+ operator=( VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceBlendOperationAdvancedFeaturesEXT const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceBlendOperationAdvancedFeaturesEXT & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceBlendOperationAdvancedFeaturesEXT & setAdvancedBlendCoherentOperations(
+ VULKAN_HPP_NAMESPACE::Bool32 advancedBlendCoherentOperations_ ) VULKAN_HPP_NOEXCEPT
+ {
+ advancedBlendCoherentOperations = advancedBlendCoherentOperations_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT *>( this );
+ }
+
+ operator VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceBlendOperationAdvancedFeaturesEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceBlendOperationAdvancedFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( advancedBlendCoherentOperations == rhs.advancedBlendCoherentOperations );
+ }
+
+ bool operator!=( PhysicalDeviceBlendOperationAdvancedFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceBlendOperationAdvancedFeaturesEXT;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 advancedBlendCoherentOperations = {};
+ };
+ static_assert( sizeof( PhysicalDeviceBlendOperationAdvancedFeaturesEXT ) ==
+ sizeof( VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceBlendOperationAdvancedFeaturesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceBlendOperationAdvancedFeaturesEXT>
+ {
+ using Type = PhysicalDeviceBlendOperationAdvancedFeaturesEXT;
+ };
+
+ struct PhysicalDeviceBlendOperationAdvancedPropertiesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceBlendOperationAdvancedPropertiesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceBlendOperationAdvancedPropertiesEXT(
+ uint32_t advancedBlendMaxColorAttachments_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 advancedBlendIndependentBlend_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 advancedBlendNonPremultipliedSrcColor_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 advancedBlendNonPremultipliedDstColor_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 advancedBlendCorrelatedOverlap_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 advancedBlendAllOperations_ = {} ) VULKAN_HPP_NOEXCEPT
+ : advancedBlendMaxColorAttachments( advancedBlendMaxColorAttachments_ )
+ , advancedBlendIndependentBlend( advancedBlendIndependentBlend_ )
+ , advancedBlendNonPremultipliedSrcColor( advancedBlendNonPremultipliedSrcColor_ )
+ , advancedBlendNonPremultipliedDstColor( advancedBlendNonPremultipliedDstColor_ )
+ , advancedBlendCorrelatedOverlap( advancedBlendCorrelatedOverlap_ )
+ , advancedBlendAllOperations( advancedBlendAllOperations_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceBlendOperationAdvancedPropertiesEXT(
+ PhysicalDeviceBlendOperationAdvancedPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceBlendOperationAdvancedPropertiesEXT( VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceBlendOperationAdvancedPropertiesEXT(
+ *reinterpret_cast<PhysicalDeviceBlendOperationAdvancedPropertiesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceBlendOperationAdvancedPropertiesEXT &
+ operator=( PhysicalDeviceBlendOperationAdvancedPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceBlendOperationAdvancedPropertiesEXT &
+ operator=( VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this =
+ *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceBlendOperationAdvancedPropertiesEXT const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT *>( this );
+ }
+
+ operator VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceBlendOperationAdvancedPropertiesEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceBlendOperationAdvancedPropertiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( advancedBlendMaxColorAttachments == rhs.advancedBlendMaxColorAttachments ) &&
+ ( advancedBlendIndependentBlend == rhs.advancedBlendIndependentBlend ) &&
+ ( advancedBlendNonPremultipliedSrcColor == rhs.advancedBlendNonPremultipliedSrcColor ) &&
+ ( advancedBlendNonPremultipliedDstColor == rhs.advancedBlendNonPremultipliedDstColor ) &&
+ ( advancedBlendCorrelatedOverlap == rhs.advancedBlendCorrelatedOverlap ) &&
+ ( advancedBlendAllOperations == rhs.advancedBlendAllOperations );
+ }
+
+ bool operator!=( PhysicalDeviceBlendOperationAdvancedPropertiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceBlendOperationAdvancedPropertiesEXT;
+ void * pNext = {};
+ uint32_t advancedBlendMaxColorAttachments = {};
+ VULKAN_HPP_NAMESPACE::Bool32 advancedBlendIndependentBlend = {};
+ VULKAN_HPP_NAMESPACE::Bool32 advancedBlendNonPremultipliedSrcColor = {};
+ VULKAN_HPP_NAMESPACE::Bool32 advancedBlendNonPremultipliedDstColor = {};
+ VULKAN_HPP_NAMESPACE::Bool32 advancedBlendCorrelatedOverlap = {};
+ VULKAN_HPP_NAMESPACE::Bool32 advancedBlendAllOperations = {};
+ };
+ static_assert( sizeof( PhysicalDeviceBlendOperationAdvancedPropertiesEXT ) ==
+ sizeof( VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceBlendOperationAdvancedPropertiesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceBlendOperationAdvancedPropertiesEXT>
+ {
+ using Type = PhysicalDeviceBlendOperationAdvancedPropertiesEXT;
+ };
+
+ struct PhysicalDeviceBufferDeviceAddressFeatures
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceBufferDeviceAddressFeatures;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceBufferDeviceAddressFeatures(
+ VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddress_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddressCaptureReplay_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddressMultiDevice_ = {} ) VULKAN_HPP_NOEXCEPT
+ : bufferDeviceAddress( bufferDeviceAddress_ )
+ , bufferDeviceAddressCaptureReplay( bufferDeviceAddressCaptureReplay_ )
+ , bufferDeviceAddressMultiDevice( bufferDeviceAddressMultiDevice_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceBufferDeviceAddressFeatures(
+ PhysicalDeviceBufferDeviceAddressFeatures const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceBufferDeviceAddressFeatures( VkPhysicalDeviceBufferDeviceAddressFeatures const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceBufferDeviceAddressFeatures(
+ *reinterpret_cast<PhysicalDeviceBufferDeviceAddressFeatures const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceBufferDeviceAddressFeatures &
+ operator=( PhysicalDeviceBufferDeviceAddressFeatures const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceBufferDeviceAddressFeatures &
+ operator=( VkPhysicalDeviceBufferDeviceAddressFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceBufferDeviceAddressFeatures const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceBufferDeviceAddressFeatures & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceBufferDeviceAddressFeatures &
+ setBufferDeviceAddress( VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddress_ ) VULKAN_HPP_NOEXCEPT
+ {
+ bufferDeviceAddress = bufferDeviceAddress_;
+ return *this;
+ }
+
+ PhysicalDeviceBufferDeviceAddressFeatures & setBufferDeviceAddressCaptureReplay(
+ VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddressCaptureReplay_ ) VULKAN_HPP_NOEXCEPT
+ {
+ bufferDeviceAddressCaptureReplay = bufferDeviceAddressCaptureReplay_;
+ return *this;
+ }
+
+ PhysicalDeviceBufferDeviceAddressFeatures & setBufferDeviceAddressMultiDevice(
+ VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddressMultiDevice_ ) VULKAN_HPP_NOEXCEPT
+ {
+ bufferDeviceAddressMultiDevice = bufferDeviceAddressMultiDevice_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceBufferDeviceAddressFeatures const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceBufferDeviceAddressFeatures *>( this );
+ }
+
+ operator VkPhysicalDeviceBufferDeviceAddressFeatures &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceBufferDeviceAddressFeatures *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceBufferDeviceAddressFeatures const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceBufferDeviceAddressFeatures const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( bufferDeviceAddress == rhs.bufferDeviceAddress ) &&
+ ( bufferDeviceAddressCaptureReplay == rhs.bufferDeviceAddressCaptureReplay ) &&
+ ( bufferDeviceAddressMultiDevice == rhs.bufferDeviceAddressMultiDevice );
+ }
+
+ bool operator!=( PhysicalDeviceBufferDeviceAddressFeatures const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceBufferDeviceAddressFeatures;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddress = {};
+ VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddressCaptureReplay = {};
+ VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddressMultiDevice = {};
+ };
+ static_assert( sizeof( PhysicalDeviceBufferDeviceAddressFeatures ) ==
+ sizeof( VkPhysicalDeviceBufferDeviceAddressFeatures ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceBufferDeviceAddressFeatures>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceBufferDeviceAddressFeatures>
+ {
+ using Type = PhysicalDeviceBufferDeviceAddressFeatures;
+ };
+ using PhysicalDeviceBufferDeviceAddressFeaturesKHR = PhysicalDeviceBufferDeviceAddressFeatures;
+
+ struct PhysicalDeviceBufferDeviceAddressFeaturesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceBufferDeviceAddressFeaturesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceBufferDeviceAddressFeaturesEXT(
+ VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddress_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddressCaptureReplay_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddressMultiDevice_ = {} ) VULKAN_HPP_NOEXCEPT
+ : bufferDeviceAddress( bufferDeviceAddress_ )
+ , bufferDeviceAddressCaptureReplay( bufferDeviceAddressCaptureReplay_ )
+ , bufferDeviceAddressMultiDevice( bufferDeviceAddressMultiDevice_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceBufferDeviceAddressFeaturesEXT(
+ PhysicalDeviceBufferDeviceAddressFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceBufferDeviceAddressFeaturesEXT( VkPhysicalDeviceBufferDeviceAddressFeaturesEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceBufferDeviceAddressFeaturesEXT(
+ *reinterpret_cast<PhysicalDeviceBufferDeviceAddressFeaturesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceBufferDeviceAddressFeaturesEXT &
+ operator=( PhysicalDeviceBufferDeviceAddressFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceBufferDeviceAddressFeaturesEXT &
+ operator=( VkPhysicalDeviceBufferDeviceAddressFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceBufferDeviceAddressFeaturesEXT const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceBufferDeviceAddressFeaturesEXT & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceBufferDeviceAddressFeaturesEXT &
+ setBufferDeviceAddress( VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddress_ ) VULKAN_HPP_NOEXCEPT
+ {
+ bufferDeviceAddress = bufferDeviceAddress_;
+ return *this;
+ }
+
+ PhysicalDeviceBufferDeviceAddressFeaturesEXT & setBufferDeviceAddressCaptureReplay(
+ VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddressCaptureReplay_ ) VULKAN_HPP_NOEXCEPT
+ {
+ bufferDeviceAddressCaptureReplay = bufferDeviceAddressCaptureReplay_;
+ return *this;
+ }
+
+ PhysicalDeviceBufferDeviceAddressFeaturesEXT & setBufferDeviceAddressMultiDevice(
+ VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddressMultiDevice_ ) VULKAN_HPP_NOEXCEPT
+ {
+ bufferDeviceAddressMultiDevice = bufferDeviceAddressMultiDevice_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceBufferDeviceAddressFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceBufferDeviceAddressFeaturesEXT *>( this );
+ }
+
+ operator VkPhysicalDeviceBufferDeviceAddressFeaturesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceBufferDeviceAddressFeaturesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceBufferDeviceAddressFeaturesEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceBufferDeviceAddressFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( bufferDeviceAddress == rhs.bufferDeviceAddress ) &&
+ ( bufferDeviceAddressCaptureReplay == rhs.bufferDeviceAddressCaptureReplay ) &&
+ ( bufferDeviceAddressMultiDevice == rhs.bufferDeviceAddressMultiDevice );
+ }
+
+ bool operator!=( PhysicalDeviceBufferDeviceAddressFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceBufferDeviceAddressFeaturesEXT;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddress = {};
+ VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddressCaptureReplay = {};
+ VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddressMultiDevice = {};
+ };
+ static_assert( sizeof( PhysicalDeviceBufferDeviceAddressFeaturesEXT ) ==
+ sizeof( VkPhysicalDeviceBufferDeviceAddressFeaturesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceBufferDeviceAddressFeaturesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceBufferDeviceAddressFeaturesEXT>
+ {
+ using Type = PhysicalDeviceBufferDeviceAddressFeaturesEXT;
+ };
+ using PhysicalDeviceBufferAddressFeaturesEXT = PhysicalDeviceBufferDeviceAddressFeaturesEXT;
+
+ struct PhysicalDeviceCoherentMemoryFeaturesAMD
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceCoherentMemoryFeaturesAMD;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceCoherentMemoryFeaturesAMD(
+ VULKAN_HPP_NAMESPACE::Bool32 deviceCoherentMemory_ = {} ) VULKAN_HPP_NOEXCEPT
+ : deviceCoherentMemory( deviceCoherentMemory_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceCoherentMemoryFeaturesAMD( PhysicalDeviceCoherentMemoryFeaturesAMD const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceCoherentMemoryFeaturesAMD( VkPhysicalDeviceCoherentMemoryFeaturesAMD const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceCoherentMemoryFeaturesAMD(
+ *reinterpret_cast<PhysicalDeviceCoherentMemoryFeaturesAMD const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceCoherentMemoryFeaturesAMD &
+ operator=( PhysicalDeviceCoherentMemoryFeaturesAMD const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceCoherentMemoryFeaturesAMD &
+ operator=( VkPhysicalDeviceCoherentMemoryFeaturesAMD const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceCoherentMemoryFeaturesAMD const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceCoherentMemoryFeaturesAMD & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceCoherentMemoryFeaturesAMD &
+ setDeviceCoherentMemory( VULKAN_HPP_NAMESPACE::Bool32 deviceCoherentMemory_ ) VULKAN_HPP_NOEXCEPT
+ {
+ deviceCoherentMemory = deviceCoherentMemory_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceCoherentMemoryFeaturesAMD const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceCoherentMemoryFeaturesAMD *>( this );
+ }
+
+ operator VkPhysicalDeviceCoherentMemoryFeaturesAMD &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceCoherentMemoryFeaturesAMD *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceCoherentMemoryFeaturesAMD const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceCoherentMemoryFeaturesAMD const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( deviceCoherentMemory == rhs.deviceCoherentMemory );
+ }
+
+ bool operator!=( PhysicalDeviceCoherentMemoryFeaturesAMD const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceCoherentMemoryFeaturesAMD;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 deviceCoherentMemory = {};
+ };
+ static_assert( sizeof( PhysicalDeviceCoherentMemoryFeaturesAMD ) ==
+ sizeof( VkPhysicalDeviceCoherentMemoryFeaturesAMD ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceCoherentMemoryFeaturesAMD>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceCoherentMemoryFeaturesAMD>
+ {
+ using Type = PhysicalDeviceCoherentMemoryFeaturesAMD;
+ };
+
+ struct PhysicalDeviceColorWriteEnableFeaturesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceColorWriteEnableFeaturesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceColorWriteEnableFeaturesEXT(
+ VULKAN_HPP_NAMESPACE::Bool32 colorWriteEnable_ = {} ) VULKAN_HPP_NOEXCEPT : colorWriteEnable( colorWriteEnable_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceColorWriteEnableFeaturesEXT(
+ PhysicalDeviceColorWriteEnableFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceColorWriteEnableFeaturesEXT( VkPhysicalDeviceColorWriteEnableFeaturesEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceColorWriteEnableFeaturesEXT(
+ *reinterpret_cast<PhysicalDeviceColorWriteEnableFeaturesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceColorWriteEnableFeaturesEXT &
+ operator=( PhysicalDeviceColorWriteEnableFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceColorWriteEnableFeaturesEXT &
+ operator=( VkPhysicalDeviceColorWriteEnableFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceColorWriteEnableFeaturesEXT const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceColorWriteEnableFeaturesEXT & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceColorWriteEnableFeaturesEXT &
+ setColorWriteEnable( VULKAN_HPP_NAMESPACE::Bool32 colorWriteEnable_ ) VULKAN_HPP_NOEXCEPT
+ {
+ colorWriteEnable = colorWriteEnable_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceColorWriteEnableFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceColorWriteEnableFeaturesEXT *>( this );
+ }
+
+ operator VkPhysicalDeviceColorWriteEnableFeaturesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceColorWriteEnableFeaturesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceColorWriteEnableFeaturesEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceColorWriteEnableFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( colorWriteEnable == rhs.colorWriteEnable );
+ }
+
+ bool operator!=( PhysicalDeviceColorWriteEnableFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceColorWriteEnableFeaturesEXT;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 colorWriteEnable = {};
+ };
+ static_assert( sizeof( PhysicalDeviceColorWriteEnableFeaturesEXT ) ==
+ sizeof( VkPhysicalDeviceColorWriteEnableFeaturesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceColorWriteEnableFeaturesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceColorWriteEnableFeaturesEXT>
+ {
+ using Type = PhysicalDeviceColorWriteEnableFeaturesEXT;
+ };
+
+ struct PhysicalDeviceComputeShaderDerivativesFeaturesNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceComputeShaderDerivativesFeaturesNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceComputeShaderDerivativesFeaturesNV(
+ VULKAN_HPP_NAMESPACE::Bool32 computeDerivativeGroupQuads_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 computeDerivativeGroupLinear_ = {} ) VULKAN_HPP_NOEXCEPT
+ : computeDerivativeGroupQuads( computeDerivativeGroupQuads_ )
+ , computeDerivativeGroupLinear( computeDerivativeGroupLinear_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceComputeShaderDerivativesFeaturesNV(
+ PhysicalDeviceComputeShaderDerivativesFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceComputeShaderDerivativesFeaturesNV( VkPhysicalDeviceComputeShaderDerivativesFeaturesNV const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceComputeShaderDerivativesFeaturesNV(
+ *reinterpret_cast<PhysicalDeviceComputeShaderDerivativesFeaturesNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceComputeShaderDerivativesFeaturesNV &
+ operator=( PhysicalDeviceComputeShaderDerivativesFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceComputeShaderDerivativesFeaturesNV &
+ operator=( VkPhysicalDeviceComputeShaderDerivativesFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceComputeShaderDerivativesFeaturesNV const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceComputeShaderDerivativesFeaturesNV & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceComputeShaderDerivativesFeaturesNV &
+ setComputeDerivativeGroupQuads( VULKAN_HPP_NAMESPACE::Bool32 computeDerivativeGroupQuads_ ) VULKAN_HPP_NOEXCEPT
+ {
+ computeDerivativeGroupQuads = computeDerivativeGroupQuads_;
+ return *this;
+ }
+
+ PhysicalDeviceComputeShaderDerivativesFeaturesNV &
+ setComputeDerivativeGroupLinear( VULKAN_HPP_NAMESPACE::Bool32 computeDerivativeGroupLinear_ ) VULKAN_HPP_NOEXCEPT
+ {
+ computeDerivativeGroupLinear = computeDerivativeGroupLinear_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceComputeShaderDerivativesFeaturesNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceComputeShaderDerivativesFeaturesNV *>( this );
+ }
+
+ operator VkPhysicalDeviceComputeShaderDerivativesFeaturesNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceComputeShaderDerivativesFeaturesNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceComputeShaderDerivativesFeaturesNV const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceComputeShaderDerivativesFeaturesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( computeDerivativeGroupQuads == rhs.computeDerivativeGroupQuads ) &&
+ ( computeDerivativeGroupLinear == rhs.computeDerivativeGroupLinear );
+ }
+
+ bool operator!=( PhysicalDeviceComputeShaderDerivativesFeaturesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceComputeShaderDerivativesFeaturesNV;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 computeDerivativeGroupQuads = {};
+ VULKAN_HPP_NAMESPACE::Bool32 computeDerivativeGroupLinear = {};
+ };
+ static_assert( sizeof( PhysicalDeviceComputeShaderDerivativesFeaturesNV ) ==
+ sizeof( VkPhysicalDeviceComputeShaderDerivativesFeaturesNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceComputeShaderDerivativesFeaturesNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceComputeShaderDerivativesFeaturesNV>
+ {
+ using Type = PhysicalDeviceComputeShaderDerivativesFeaturesNV;
+ };
+
+ struct PhysicalDeviceConditionalRenderingFeaturesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceConditionalRenderingFeaturesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceConditionalRenderingFeaturesEXT(
+ VULKAN_HPP_NAMESPACE::Bool32 conditionalRendering_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 inheritedConditionalRendering_ = {} ) VULKAN_HPP_NOEXCEPT
+ : conditionalRendering( conditionalRendering_ )
+ , inheritedConditionalRendering( inheritedConditionalRendering_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceConditionalRenderingFeaturesEXT(
+ PhysicalDeviceConditionalRenderingFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceConditionalRenderingFeaturesEXT( VkPhysicalDeviceConditionalRenderingFeaturesEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceConditionalRenderingFeaturesEXT(
+ *reinterpret_cast<PhysicalDeviceConditionalRenderingFeaturesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceConditionalRenderingFeaturesEXT &
+ operator=( PhysicalDeviceConditionalRenderingFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceConditionalRenderingFeaturesEXT &
+ operator=( VkPhysicalDeviceConditionalRenderingFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceConditionalRenderingFeaturesEXT const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceConditionalRenderingFeaturesEXT & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceConditionalRenderingFeaturesEXT &
+ setConditionalRendering( VULKAN_HPP_NAMESPACE::Bool32 conditionalRendering_ ) VULKAN_HPP_NOEXCEPT
+ {
+ conditionalRendering = conditionalRendering_;
+ return *this;
+ }
+
+ PhysicalDeviceConditionalRenderingFeaturesEXT & setInheritedConditionalRendering(
+ VULKAN_HPP_NAMESPACE::Bool32 inheritedConditionalRendering_ ) VULKAN_HPP_NOEXCEPT
+ {
+ inheritedConditionalRendering = inheritedConditionalRendering_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceConditionalRenderingFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceConditionalRenderingFeaturesEXT *>( this );
+ }
+
+ operator VkPhysicalDeviceConditionalRenderingFeaturesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceConditionalRenderingFeaturesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceConditionalRenderingFeaturesEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceConditionalRenderingFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( conditionalRendering == rhs.conditionalRendering ) &&
+ ( inheritedConditionalRendering == rhs.inheritedConditionalRendering );
+ }
+
+ bool operator!=( PhysicalDeviceConditionalRenderingFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceConditionalRenderingFeaturesEXT;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 conditionalRendering = {};
+ VULKAN_HPP_NAMESPACE::Bool32 inheritedConditionalRendering = {};
+ };
+ static_assert( sizeof( PhysicalDeviceConditionalRenderingFeaturesEXT ) ==
+ sizeof( VkPhysicalDeviceConditionalRenderingFeaturesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceConditionalRenderingFeaturesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceConditionalRenderingFeaturesEXT>
+ {
+ using Type = PhysicalDeviceConditionalRenderingFeaturesEXT;
+ };
+
+ struct PhysicalDeviceConservativeRasterizationPropertiesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceConservativeRasterizationPropertiesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceConservativeRasterizationPropertiesEXT(
+ float primitiveOverestimationSize_ = {},
+ float maxExtraPrimitiveOverestimationSize_ = {},
+ float extraPrimitiveOverestimationSizeGranularity_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 primitiveUnderestimation_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 conservativePointAndLineRasterization_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 degenerateTrianglesRasterized_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 degenerateLinesRasterized_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 fullyCoveredFragmentShaderInputVariable_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 conservativeRasterizationPostDepthCoverage_ = {} ) VULKAN_HPP_NOEXCEPT
+ : primitiveOverestimationSize( primitiveOverestimationSize_ )
+ , maxExtraPrimitiveOverestimationSize( maxExtraPrimitiveOverestimationSize_ )
+ , extraPrimitiveOverestimationSizeGranularity( extraPrimitiveOverestimationSizeGranularity_ )
+ , primitiveUnderestimation( primitiveUnderestimation_ )
+ , conservativePointAndLineRasterization( conservativePointAndLineRasterization_ )
+ , degenerateTrianglesRasterized( degenerateTrianglesRasterized_ )
+ , degenerateLinesRasterized( degenerateLinesRasterized_ )
+ , fullyCoveredFragmentShaderInputVariable( fullyCoveredFragmentShaderInputVariable_ )
+ , conservativeRasterizationPostDepthCoverage( conservativeRasterizationPostDepthCoverage_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceConservativeRasterizationPropertiesEXT(
+ PhysicalDeviceConservativeRasterizationPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceConservativeRasterizationPropertiesEXT(
+ VkPhysicalDeviceConservativeRasterizationPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceConservativeRasterizationPropertiesEXT(
+ *reinterpret_cast<PhysicalDeviceConservativeRasterizationPropertiesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceConservativeRasterizationPropertiesEXT &
+ operator=( PhysicalDeviceConservativeRasterizationPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceConservativeRasterizationPropertiesEXT &
+ operator=( VkPhysicalDeviceConservativeRasterizationPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this =
+ *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceConservativeRasterizationPropertiesEXT const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDeviceConservativeRasterizationPropertiesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceConservativeRasterizationPropertiesEXT *>( this );
+ }
+
+ operator VkPhysicalDeviceConservativeRasterizationPropertiesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceConservativeRasterizationPropertiesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceConservativeRasterizationPropertiesEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceConservativeRasterizationPropertiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( primitiveOverestimationSize == rhs.primitiveOverestimationSize ) &&
+ ( maxExtraPrimitiveOverestimationSize == rhs.maxExtraPrimitiveOverestimationSize ) &&
+ ( extraPrimitiveOverestimationSizeGranularity == rhs.extraPrimitiveOverestimationSizeGranularity ) &&
+ ( primitiveUnderestimation == rhs.primitiveUnderestimation ) &&
+ ( conservativePointAndLineRasterization == rhs.conservativePointAndLineRasterization ) &&
+ ( degenerateTrianglesRasterized == rhs.degenerateTrianglesRasterized ) &&
+ ( degenerateLinesRasterized == rhs.degenerateLinesRasterized ) &&
+ ( fullyCoveredFragmentShaderInputVariable == rhs.fullyCoveredFragmentShaderInputVariable ) &&
+ ( conservativeRasterizationPostDepthCoverage == rhs.conservativeRasterizationPostDepthCoverage );
+ }
+
+ bool operator!=( PhysicalDeviceConservativeRasterizationPropertiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceConservativeRasterizationPropertiesEXT;
+ void * pNext = {};
+ float primitiveOverestimationSize = {};
+ float maxExtraPrimitiveOverestimationSize = {};
+ float extraPrimitiveOverestimationSizeGranularity = {};
+ VULKAN_HPP_NAMESPACE::Bool32 primitiveUnderestimation = {};
+ VULKAN_HPP_NAMESPACE::Bool32 conservativePointAndLineRasterization = {};
+ VULKAN_HPP_NAMESPACE::Bool32 degenerateTrianglesRasterized = {};
+ VULKAN_HPP_NAMESPACE::Bool32 degenerateLinesRasterized = {};
+ VULKAN_HPP_NAMESPACE::Bool32 fullyCoveredFragmentShaderInputVariable = {};
+ VULKAN_HPP_NAMESPACE::Bool32 conservativeRasterizationPostDepthCoverage = {};
+ };
+ static_assert( sizeof( PhysicalDeviceConservativeRasterizationPropertiesEXT ) ==
+ sizeof( VkPhysicalDeviceConservativeRasterizationPropertiesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceConservativeRasterizationPropertiesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceConservativeRasterizationPropertiesEXT>
+ {
+ using Type = PhysicalDeviceConservativeRasterizationPropertiesEXT;
+ };
+
+ struct PhysicalDeviceCooperativeMatrixFeaturesNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceCooperativeMatrixFeaturesNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceCooperativeMatrixFeaturesNV(
+ VULKAN_HPP_NAMESPACE::Bool32 cooperativeMatrix_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 cooperativeMatrixRobustBufferAccess_ = {} ) VULKAN_HPP_NOEXCEPT
+ : cooperativeMatrix( cooperativeMatrix_ )
+ , cooperativeMatrixRobustBufferAccess( cooperativeMatrixRobustBufferAccess_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceCooperativeMatrixFeaturesNV(
+ PhysicalDeviceCooperativeMatrixFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceCooperativeMatrixFeaturesNV( VkPhysicalDeviceCooperativeMatrixFeaturesNV const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceCooperativeMatrixFeaturesNV(
+ *reinterpret_cast<PhysicalDeviceCooperativeMatrixFeaturesNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceCooperativeMatrixFeaturesNV &
+ operator=( PhysicalDeviceCooperativeMatrixFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceCooperativeMatrixFeaturesNV &
+ operator=( VkPhysicalDeviceCooperativeMatrixFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceCooperativeMatrixFeaturesNV const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceCooperativeMatrixFeaturesNV & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceCooperativeMatrixFeaturesNV &
+ setCooperativeMatrix( VULKAN_HPP_NAMESPACE::Bool32 cooperativeMatrix_ ) VULKAN_HPP_NOEXCEPT
+ {
+ cooperativeMatrix = cooperativeMatrix_;
+ return *this;
+ }
+
+ PhysicalDeviceCooperativeMatrixFeaturesNV & setCooperativeMatrixRobustBufferAccess(
+ VULKAN_HPP_NAMESPACE::Bool32 cooperativeMatrixRobustBufferAccess_ ) VULKAN_HPP_NOEXCEPT
+ {
+ cooperativeMatrixRobustBufferAccess = cooperativeMatrixRobustBufferAccess_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceCooperativeMatrixFeaturesNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceCooperativeMatrixFeaturesNV *>( this );
+ }
+
+ operator VkPhysicalDeviceCooperativeMatrixFeaturesNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceCooperativeMatrixFeaturesNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceCooperativeMatrixFeaturesNV const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceCooperativeMatrixFeaturesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( cooperativeMatrix == rhs.cooperativeMatrix ) &&
+ ( cooperativeMatrixRobustBufferAccess == rhs.cooperativeMatrixRobustBufferAccess );
+ }
+
+ bool operator!=( PhysicalDeviceCooperativeMatrixFeaturesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceCooperativeMatrixFeaturesNV;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 cooperativeMatrix = {};
+ VULKAN_HPP_NAMESPACE::Bool32 cooperativeMatrixRobustBufferAccess = {};
+ };
+ static_assert( sizeof( PhysicalDeviceCooperativeMatrixFeaturesNV ) ==
+ sizeof( VkPhysicalDeviceCooperativeMatrixFeaturesNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceCooperativeMatrixFeaturesNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceCooperativeMatrixFeaturesNV>
+ {
+ using Type = PhysicalDeviceCooperativeMatrixFeaturesNV;
+ };
+
+ struct PhysicalDeviceCooperativeMatrixPropertiesNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceCooperativeMatrixPropertiesNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceCooperativeMatrixPropertiesNV(
+ VULKAN_HPP_NAMESPACE::ShaderStageFlags cooperativeMatrixSupportedStages_ = {} ) VULKAN_HPP_NOEXCEPT
+ : cooperativeMatrixSupportedStages( cooperativeMatrixSupportedStages_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceCooperativeMatrixPropertiesNV(
+ PhysicalDeviceCooperativeMatrixPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceCooperativeMatrixPropertiesNV( VkPhysicalDeviceCooperativeMatrixPropertiesNV const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceCooperativeMatrixPropertiesNV(
+ *reinterpret_cast<PhysicalDeviceCooperativeMatrixPropertiesNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceCooperativeMatrixPropertiesNV &
+ operator=( PhysicalDeviceCooperativeMatrixPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceCooperativeMatrixPropertiesNV &
+ operator=( VkPhysicalDeviceCooperativeMatrixPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceCooperativeMatrixPropertiesNV const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDeviceCooperativeMatrixPropertiesNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceCooperativeMatrixPropertiesNV *>( this );
+ }
+
+ operator VkPhysicalDeviceCooperativeMatrixPropertiesNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceCooperativeMatrixPropertiesNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceCooperativeMatrixPropertiesNV const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceCooperativeMatrixPropertiesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( cooperativeMatrixSupportedStages == rhs.cooperativeMatrixSupportedStages );
+ }
+
+ bool operator!=( PhysicalDeviceCooperativeMatrixPropertiesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceCooperativeMatrixPropertiesNV;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ShaderStageFlags cooperativeMatrixSupportedStages = {};
+ };
+ static_assert( sizeof( PhysicalDeviceCooperativeMatrixPropertiesNV ) ==
+ sizeof( VkPhysicalDeviceCooperativeMatrixPropertiesNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceCooperativeMatrixPropertiesNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceCooperativeMatrixPropertiesNV>
+ {
+ using Type = PhysicalDeviceCooperativeMatrixPropertiesNV;
+ };
+
+ struct PhysicalDeviceCornerSampledImageFeaturesNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceCornerSampledImageFeaturesNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceCornerSampledImageFeaturesNV(
+ VULKAN_HPP_NAMESPACE::Bool32 cornerSampledImage_ = {} ) VULKAN_HPP_NOEXCEPT
+ : cornerSampledImage( cornerSampledImage_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceCornerSampledImageFeaturesNV(
+ PhysicalDeviceCornerSampledImageFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceCornerSampledImageFeaturesNV( VkPhysicalDeviceCornerSampledImageFeaturesNV const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceCornerSampledImageFeaturesNV(
+ *reinterpret_cast<PhysicalDeviceCornerSampledImageFeaturesNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceCornerSampledImageFeaturesNV &
+ operator=( PhysicalDeviceCornerSampledImageFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceCornerSampledImageFeaturesNV &
+ operator=( VkPhysicalDeviceCornerSampledImageFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceCornerSampledImageFeaturesNV const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceCornerSampledImageFeaturesNV & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceCornerSampledImageFeaturesNV &
+ setCornerSampledImage( VULKAN_HPP_NAMESPACE::Bool32 cornerSampledImage_ ) VULKAN_HPP_NOEXCEPT
+ {
+ cornerSampledImage = cornerSampledImage_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceCornerSampledImageFeaturesNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceCornerSampledImageFeaturesNV *>( this );
+ }
+
+ operator VkPhysicalDeviceCornerSampledImageFeaturesNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceCornerSampledImageFeaturesNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceCornerSampledImageFeaturesNV const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceCornerSampledImageFeaturesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( cornerSampledImage == rhs.cornerSampledImage );
+ }
+
+ bool operator!=( PhysicalDeviceCornerSampledImageFeaturesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceCornerSampledImageFeaturesNV;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 cornerSampledImage = {};
+ };
+ static_assert( sizeof( PhysicalDeviceCornerSampledImageFeaturesNV ) ==
+ sizeof( VkPhysicalDeviceCornerSampledImageFeaturesNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceCornerSampledImageFeaturesNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceCornerSampledImageFeaturesNV>
+ {
+ using Type = PhysicalDeviceCornerSampledImageFeaturesNV;
+ };
+
+ struct PhysicalDeviceCoverageReductionModeFeaturesNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceCoverageReductionModeFeaturesNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceCoverageReductionModeFeaturesNV(
+ VULKAN_HPP_NAMESPACE::Bool32 coverageReductionMode_ = {} ) VULKAN_HPP_NOEXCEPT
+ : coverageReductionMode( coverageReductionMode_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceCoverageReductionModeFeaturesNV(
+ PhysicalDeviceCoverageReductionModeFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceCoverageReductionModeFeaturesNV( VkPhysicalDeviceCoverageReductionModeFeaturesNV const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceCoverageReductionModeFeaturesNV(
+ *reinterpret_cast<PhysicalDeviceCoverageReductionModeFeaturesNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceCoverageReductionModeFeaturesNV &
+ operator=( PhysicalDeviceCoverageReductionModeFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceCoverageReductionModeFeaturesNV &
+ operator=( VkPhysicalDeviceCoverageReductionModeFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceCoverageReductionModeFeaturesNV const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceCoverageReductionModeFeaturesNV & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceCoverageReductionModeFeaturesNV &
+ setCoverageReductionMode( VULKAN_HPP_NAMESPACE::Bool32 coverageReductionMode_ ) VULKAN_HPP_NOEXCEPT
+ {
+ coverageReductionMode = coverageReductionMode_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceCoverageReductionModeFeaturesNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceCoverageReductionModeFeaturesNV *>( this );
+ }
+
+ operator VkPhysicalDeviceCoverageReductionModeFeaturesNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceCoverageReductionModeFeaturesNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceCoverageReductionModeFeaturesNV const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceCoverageReductionModeFeaturesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( coverageReductionMode == rhs.coverageReductionMode );
+ }
+
+ bool operator!=( PhysicalDeviceCoverageReductionModeFeaturesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceCoverageReductionModeFeaturesNV;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 coverageReductionMode = {};
+ };
+ static_assert( sizeof( PhysicalDeviceCoverageReductionModeFeaturesNV ) ==
+ sizeof( VkPhysicalDeviceCoverageReductionModeFeaturesNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceCoverageReductionModeFeaturesNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceCoverageReductionModeFeaturesNV>
+ {
+ using Type = PhysicalDeviceCoverageReductionModeFeaturesNV;
+ };
+
+ struct PhysicalDeviceCustomBorderColorFeaturesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceCustomBorderColorFeaturesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceCustomBorderColorFeaturesEXT(
+ VULKAN_HPP_NAMESPACE::Bool32 customBorderColors_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 customBorderColorWithoutFormat_ = {} ) VULKAN_HPP_NOEXCEPT
+ : customBorderColors( customBorderColors_ )
+ , customBorderColorWithoutFormat( customBorderColorWithoutFormat_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceCustomBorderColorFeaturesEXT(
+ PhysicalDeviceCustomBorderColorFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceCustomBorderColorFeaturesEXT( VkPhysicalDeviceCustomBorderColorFeaturesEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceCustomBorderColorFeaturesEXT(
+ *reinterpret_cast<PhysicalDeviceCustomBorderColorFeaturesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceCustomBorderColorFeaturesEXT &
+ operator=( PhysicalDeviceCustomBorderColorFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceCustomBorderColorFeaturesEXT &
+ operator=( VkPhysicalDeviceCustomBorderColorFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceCustomBorderColorFeaturesEXT const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceCustomBorderColorFeaturesEXT & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceCustomBorderColorFeaturesEXT &
+ setCustomBorderColors( VULKAN_HPP_NAMESPACE::Bool32 customBorderColors_ ) VULKAN_HPP_NOEXCEPT
+ {
+ customBorderColors = customBorderColors_;
+ return *this;
+ }
+
+ PhysicalDeviceCustomBorderColorFeaturesEXT & setCustomBorderColorWithoutFormat(
+ VULKAN_HPP_NAMESPACE::Bool32 customBorderColorWithoutFormat_ ) VULKAN_HPP_NOEXCEPT
+ {
+ customBorderColorWithoutFormat = customBorderColorWithoutFormat_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceCustomBorderColorFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceCustomBorderColorFeaturesEXT *>( this );
+ }
+
+ operator VkPhysicalDeviceCustomBorderColorFeaturesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceCustomBorderColorFeaturesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceCustomBorderColorFeaturesEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceCustomBorderColorFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( customBorderColors == rhs.customBorderColors ) &&
+ ( customBorderColorWithoutFormat == rhs.customBorderColorWithoutFormat );
+ }
+
+ bool operator!=( PhysicalDeviceCustomBorderColorFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceCustomBorderColorFeaturesEXT;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 customBorderColors = {};
+ VULKAN_HPP_NAMESPACE::Bool32 customBorderColorWithoutFormat = {};
+ };
+ static_assert( sizeof( PhysicalDeviceCustomBorderColorFeaturesEXT ) ==
+ sizeof( VkPhysicalDeviceCustomBorderColorFeaturesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceCustomBorderColorFeaturesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceCustomBorderColorFeaturesEXT>
+ {
+ using Type = PhysicalDeviceCustomBorderColorFeaturesEXT;
+ };
+
+ struct PhysicalDeviceCustomBorderColorPropertiesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceCustomBorderColorPropertiesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ PhysicalDeviceCustomBorderColorPropertiesEXT( uint32_t maxCustomBorderColorSamplers_ = {} ) VULKAN_HPP_NOEXCEPT
+ : maxCustomBorderColorSamplers( maxCustomBorderColorSamplers_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceCustomBorderColorPropertiesEXT(
+ PhysicalDeviceCustomBorderColorPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceCustomBorderColorPropertiesEXT( VkPhysicalDeviceCustomBorderColorPropertiesEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceCustomBorderColorPropertiesEXT(
+ *reinterpret_cast<PhysicalDeviceCustomBorderColorPropertiesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceCustomBorderColorPropertiesEXT &
+ operator=( PhysicalDeviceCustomBorderColorPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceCustomBorderColorPropertiesEXT &
+ operator=( VkPhysicalDeviceCustomBorderColorPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceCustomBorderColorPropertiesEXT const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDeviceCustomBorderColorPropertiesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceCustomBorderColorPropertiesEXT *>( this );
+ }
+
+ operator VkPhysicalDeviceCustomBorderColorPropertiesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceCustomBorderColorPropertiesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceCustomBorderColorPropertiesEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceCustomBorderColorPropertiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( maxCustomBorderColorSamplers == rhs.maxCustomBorderColorSamplers );
+ }
+
+ bool operator!=( PhysicalDeviceCustomBorderColorPropertiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceCustomBorderColorPropertiesEXT;
+ void * pNext = {};
+ uint32_t maxCustomBorderColorSamplers = {};
+ };
+ static_assert( sizeof( PhysicalDeviceCustomBorderColorPropertiesEXT ) ==
+ sizeof( VkPhysicalDeviceCustomBorderColorPropertiesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceCustomBorderColorPropertiesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceCustomBorderColorPropertiesEXT>
+ {
+ using Type = PhysicalDeviceCustomBorderColorPropertiesEXT;
+ };
+
+ struct PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV(
+ VULKAN_HPP_NAMESPACE::Bool32 dedicatedAllocationImageAliasing_ = {} ) VULKAN_HPP_NOEXCEPT
+ : dedicatedAllocationImageAliasing( dedicatedAllocationImageAliasing_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV(
+ PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV(
+ VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV(
+ *reinterpret_cast<PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV &
+ operator=( PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV &
+ operator=( VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV const *>(
+ &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV & setDedicatedAllocationImageAliasing(
+ VULKAN_HPP_NAMESPACE::Bool32 dedicatedAllocationImageAliasing_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dedicatedAllocationImageAliasing = dedicatedAllocationImageAliasing_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV *>( this );
+ }
+
+ operator VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( dedicatedAllocationImageAliasing == rhs.dedicatedAllocationImageAliasing );
+ }
+
+ bool operator!=( PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType =
+ StructureType::ePhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 dedicatedAllocationImageAliasing = {};
+ };
+ static_assert( sizeof( PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV ) ==
+ sizeof( VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV>
+ {
+ using Type = PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV;
+ };
+
+ struct PhysicalDeviceDepthClipEnableFeaturesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceDepthClipEnableFeaturesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ PhysicalDeviceDepthClipEnableFeaturesEXT( VULKAN_HPP_NAMESPACE::Bool32 depthClipEnable_ = {} ) VULKAN_HPP_NOEXCEPT
+ : depthClipEnable( depthClipEnable_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceDepthClipEnableFeaturesEXT(
+ PhysicalDeviceDepthClipEnableFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceDepthClipEnableFeaturesEXT( VkPhysicalDeviceDepthClipEnableFeaturesEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceDepthClipEnableFeaturesEXT(
+ *reinterpret_cast<PhysicalDeviceDepthClipEnableFeaturesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDepthClipEnableFeaturesEXT &
+ operator=( PhysicalDeviceDepthClipEnableFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceDepthClipEnableFeaturesEXT &
+ operator=( VkPhysicalDeviceDepthClipEnableFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceDepthClipEnableFeaturesEXT const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceDepthClipEnableFeaturesEXT & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceDepthClipEnableFeaturesEXT &
+ setDepthClipEnable( VULKAN_HPP_NAMESPACE::Bool32 depthClipEnable_ ) VULKAN_HPP_NOEXCEPT
+ {
+ depthClipEnable = depthClipEnable_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceDepthClipEnableFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceDepthClipEnableFeaturesEXT *>( this );
+ }
+
+ operator VkPhysicalDeviceDepthClipEnableFeaturesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceDepthClipEnableFeaturesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceDepthClipEnableFeaturesEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceDepthClipEnableFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( depthClipEnable == rhs.depthClipEnable );
+ }
+
+ bool operator!=( PhysicalDeviceDepthClipEnableFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceDepthClipEnableFeaturesEXT;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 depthClipEnable = {};
+ };
+ static_assert( sizeof( PhysicalDeviceDepthClipEnableFeaturesEXT ) ==
+ sizeof( VkPhysicalDeviceDepthClipEnableFeaturesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceDepthClipEnableFeaturesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceDepthClipEnableFeaturesEXT>
+ {
+ using Type = PhysicalDeviceDepthClipEnableFeaturesEXT;
+ };
+
+ struct PhysicalDeviceDepthStencilResolveProperties
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceDepthStencilResolveProperties;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceDepthStencilResolveProperties(
+ VULKAN_HPP_NAMESPACE::ResolveModeFlags supportedDepthResolveModes_ = {},
+ VULKAN_HPP_NAMESPACE::ResolveModeFlags supportedStencilResolveModes_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 independentResolveNone_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 independentResolve_ = {} ) VULKAN_HPP_NOEXCEPT
+ : supportedDepthResolveModes( supportedDepthResolveModes_ )
+ , supportedStencilResolveModes( supportedStencilResolveModes_ )
+ , independentResolveNone( independentResolveNone_ )
+ , independentResolve( independentResolve_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceDepthStencilResolveProperties(
+ PhysicalDeviceDepthStencilResolveProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceDepthStencilResolveProperties( VkPhysicalDeviceDepthStencilResolveProperties const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceDepthStencilResolveProperties(
+ *reinterpret_cast<PhysicalDeviceDepthStencilResolveProperties const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDepthStencilResolveProperties &
+ operator=( PhysicalDeviceDepthStencilResolveProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceDepthStencilResolveProperties &
+ operator=( VkPhysicalDeviceDepthStencilResolveProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceDepthStencilResolveProperties const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDeviceDepthStencilResolveProperties const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceDepthStencilResolveProperties *>( this );
+ }
+
+ operator VkPhysicalDeviceDepthStencilResolveProperties &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceDepthStencilResolveProperties *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceDepthStencilResolveProperties const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceDepthStencilResolveProperties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( supportedDepthResolveModes == rhs.supportedDepthResolveModes ) &&
+ ( supportedStencilResolveModes == rhs.supportedStencilResolveModes ) &&
+ ( independentResolveNone == rhs.independentResolveNone ) &&
+ ( independentResolve == rhs.independentResolve );
+ }
+
+ bool operator!=( PhysicalDeviceDepthStencilResolveProperties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceDepthStencilResolveProperties;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ResolveModeFlags supportedDepthResolveModes = {};
+ VULKAN_HPP_NAMESPACE::ResolveModeFlags supportedStencilResolveModes = {};
+ VULKAN_HPP_NAMESPACE::Bool32 independentResolveNone = {};
+ VULKAN_HPP_NAMESPACE::Bool32 independentResolve = {};
+ };
+ static_assert( sizeof( PhysicalDeviceDepthStencilResolveProperties ) ==
+ sizeof( VkPhysicalDeviceDepthStencilResolveProperties ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceDepthStencilResolveProperties>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceDepthStencilResolveProperties>
+ {
+ using Type = PhysicalDeviceDepthStencilResolveProperties;
+ };
+ using PhysicalDeviceDepthStencilResolvePropertiesKHR = PhysicalDeviceDepthStencilResolveProperties;
+
+ struct PhysicalDeviceDescriptorIndexingFeatures
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceDescriptorIndexingFeatures;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceDescriptorIndexingFeatures(
+ VULKAN_HPP_NAMESPACE::Bool32 shaderInputAttachmentArrayDynamicIndexing_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderUniformTexelBufferArrayDynamicIndexing_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderStorageTexelBufferArrayDynamicIndexing_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderUniformBufferArrayNonUniformIndexing_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderSampledImageArrayNonUniformIndexing_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderStorageBufferArrayNonUniformIndexing_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageArrayNonUniformIndexing_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderInputAttachmentArrayNonUniformIndexing_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderUniformTexelBufferArrayNonUniformIndexing_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderStorageTexelBufferArrayNonUniformIndexing_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingUniformBufferUpdateAfterBind_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingSampledImageUpdateAfterBind_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingStorageImageUpdateAfterBind_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingStorageBufferUpdateAfterBind_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingUniformTexelBufferUpdateAfterBind_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingStorageTexelBufferUpdateAfterBind_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingUpdateUnusedWhilePending_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingPartiallyBound_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingVariableDescriptorCount_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 runtimeDescriptorArray_ = {} ) VULKAN_HPP_NOEXCEPT
+ : shaderInputAttachmentArrayDynamicIndexing( shaderInputAttachmentArrayDynamicIndexing_ )
+ , shaderUniformTexelBufferArrayDynamicIndexing( shaderUniformTexelBufferArrayDynamicIndexing_ )
+ , shaderStorageTexelBufferArrayDynamicIndexing( shaderStorageTexelBufferArrayDynamicIndexing_ )
+ , shaderUniformBufferArrayNonUniformIndexing( shaderUniformBufferArrayNonUniformIndexing_ )
+ , shaderSampledImageArrayNonUniformIndexing( shaderSampledImageArrayNonUniformIndexing_ )
+ , shaderStorageBufferArrayNonUniformIndexing( shaderStorageBufferArrayNonUniformIndexing_ )
+ , shaderStorageImageArrayNonUniformIndexing( shaderStorageImageArrayNonUniformIndexing_ )
+ , shaderInputAttachmentArrayNonUniformIndexing( shaderInputAttachmentArrayNonUniformIndexing_ )
+ , shaderUniformTexelBufferArrayNonUniformIndexing( shaderUniformTexelBufferArrayNonUniformIndexing_ )
+ , shaderStorageTexelBufferArrayNonUniformIndexing( shaderStorageTexelBufferArrayNonUniformIndexing_ )
+ , descriptorBindingUniformBufferUpdateAfterBind( descriptorBindingUniformBufferUpdateAfterBind_ )
+ , descriptorBindingSampledImageUpdateAfterBind( descriptorBindingSampledImageUpdateAfterBind_ )
+ , descriptorBindingStorageImageUpdateAfterBind( descriptorBindingStorageImageUpdateAfterBind_ )
+ , descriptorBindingStorageBufferUpdateAfterBind( descriptorBindingStorageBufferUpdateAfterBind_ )
+ , descriptorBindingUniformTexelBufferUpdateAfterBind( descriptorBindingUniformTexelBufferUpdateAfterBind_ )
+ , descriptorBindingStorageTexelBufferUpdateAfterBind( descriptorBindingStorageTexelBufferUpdateAfterBind_ )
+ , descriptorBindingUpdateUnusedWhilePending( descriptorBindingUpdateUnusedWhilePending_ )
+ , descriptorBindingPartiallyBound( descriptorBindingPartiallyBound_ )
+ , descriptorBindingVariableDescriptorCount( descriptorBindingVariableDescriptorCount_ )
+ , runtimeDescriptorArray( runtimeDescriptorArray_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceDescriptorIndexingFeatures(
+ PhysicalDeviceDescriptorIndexingFeatures const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceDescriptorIndexingFeatures( VkPhysicalDeviceDescriptorIndexingFeatures const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceDescriptorIndexingFeatures(
+ *reinterpret_cast<PhysicalDeviceDescriptorIndexingFeatures const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDescriptorIndexingFeatures &
+ operator=( PhysicalDeviceDescriptorIndexingFeatures const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceDescriptorIndexingFeatures &
+ operator=( VkPhysicalDeviceDescriptorIndexingFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceDescriptorIndexingFeatures const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceDescriptorIndexingFeatures & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceDescriptorIndexingFeatures & setShaderInputAttachmentArrayDynamicIndexing(
+ VULKAN_HPP_NAMESPACE::Bool32 shaderInputAttachmentArrayDynamicIndexing_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderInputAttachmentArrayDynamicIndexing = shaderInputAttachmentArrayDynamicIndexing_;
+ return *this;
+ }
+
+ PhysicalDeviceDescriptorIndexingFeatures & setShaderUniformTexelBufferArrayDynamicIndexing(
+ VULKAN_HPP_NAMESPACE::Bool32 shaderUniformTexelBufferArrayDynamicIndexing_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderUniformTexelBufferArrayDynamicIndexing = shaderUniformTexelBufferArrayDynamicIndexing_;
+ return *this;
+ }
+
+ PhysicalDeviceDescriptorIndexingFeatures & setShaderStorageTexelBufferArrayDynamicIndexing(
+ VULKAN_HPP_NAMESPACE::Bool32 shaderStorageTexelBufferArrayDynamicIndexing_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderStorageTexelBufferArrayDynamicIndexing = shaderStorageTexelBufferArrayDynamicIndexing_;
+ return *this;
+ }
+
+ PhysicalDeviceDescriptorIndexingFeatures & setShaderUniformBufferArrayNonUniformIndexing(
+ VULKAN_HPP_NAMESPACE::Bool32 shaderUniformBufferArrayNonUniformIndexing_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderUniformBufferArrayNonUniformIndexing = shaderUniformBufferArrayNonUniformIndexing_;
+ return *this;
+ }
+
+ PhysicalDeviceDescriptorIndexingFeatures & setShaderSampledImageArrayNonUniformIndexing(
+ VULKAN_HPP_NAMESPACE::Bool32 shaderSampledImageArrayNonUniformIndexing_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderSampledImageArrayNonUniformIndexing = shaderSampledImageArrayNonUniformIndexing_;
+ return *this;
+ }
+
+ PhysicalDeviceDescriptorIndexingFeatures & setShaderStorageBufferArrayNonUniformIndexing(
+ VULKAN_HPP_NAMESPACE::Bool32 shaderStorageBufferArrayNonUniformIndexing_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderStorageBufferArrayNonUniformIndexing = shaderStorageBufferArrayNonUniformIndexing_;
+ return *this;
+ }
+
+ PhysicalDeviceDescriptorIndexingFeatures & setShaderStorageImageArrayNonUniformIndexing(
+ VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageArrayNonUniformIndexing_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderStorageImageArrayNonUniformIndexing = shaderStorageImageArrayNonUniformIndexing_;
+ return *this;
+ }
+
+ PhysicalDeviceDescriptorIndexingFeatures & setShaderInputAttachmentArrayNonUniformIndexing(
+ VULKAN_HPP_NAMESPACE::Bool32 shaderInputAttachmentArrayNonUniformIndexing_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderInputAttachmentArrayNonUniformIndexing = shaderInputAttachmentArrayNonUniformIndexing_;
+ return *this;
+ }
+
+ PhysicalDeviceDescriptorIndexingFeatures & setShaderUniformTexelBufferArrayNonUniformIndexing(
+ VULKAN_HPP_NAMESPACE::Bool32 shaderUniformTexelBufferArrayNonUniformIndexing_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderUniformTexelBufferArrayNonUniformIndexing = shaderUniformTexelBufferArrayNonUniformIndexing_;
+ return *this;
+ }
+
+ PhysicalDeviceDescriptorIndexingFeatures & setShaderStorageTexelBufferArrayNonUniformIndexing(
+ VULKAN_HPP_NAMESPACE::Bool32 shaderStorageTexelBufferArrayNonUniformIndexing_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderStorageTexelBufferArrayNonUniformIndexing = shaderStorageTexelBufferArrayNonUniformIndexing_;
+ return *this;
+ }
+
+ PhysicalDeviceDescriptorIndexingFeatures & setDescriptorBindingUniformBufferUpdateAfterBind(
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingUniformBufferUpdateAfterBind_ ) VULKAN_HPP_NOEXCEPT
+ {
+ descriptorBindingUniformBufferUpdateAfterBind = descriptorBindingUniformBufferUpdateAfterBind_;
+ return *this;
+ }
+
+ PhysicalDeviceDescriptorIndexingFeatures & setDescriptorBindingSampledImageUpdateAfterBind(
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingSampledImageUpdateAfterBind_ ) VULKAN_HPP_NOEXCEPT
+ {
+ descriptorBindingSampledImageUpdateAfterBind = descriptorBindingSampledImageUpdateAfterBind_;
+ return *this;
+ }
+
+ PhysicalDeviceDescriptorIndexingFeatures & setDescriptorBindingStorageImageUpdateAfterBind(
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingStorageImageUpdateAfterBind_ ) VULKAN_HPP_NOEXCEPT
+ {
+ descriptorBindingStorageImageUpdateAfterBind = descriptorBindingStorageImageUpdateAfterBind_;
+ return *this;
+ }
+
+ PhysicalDeviceDescriptorIndexingFeatures & setDescriptorBindingStorageBufferUpdateAfterBind(
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingStorageBufferUpdateAfterBind_ ) VULKAN_HPP_NOEXCEPT
+ {
+ descriptorBindingStorageBufferUpdateAfterBind = descriptorBindingStorageBufferUpdateAfterBind_;
+ return *this;
+ }
+
+ PhysicalDeviceDescriptorIndexingFeatures & setDescriptorBindingUniformTexelBufferUpdateAfterBind(
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingUniformTexelBufferUpdateAfterBind_ ) VULKAN_HPP_NOEXCEPT
+ {
+ descriptorBindingUniformTexelBufferUpdateAfterBind = descriptorBindingUniformTexelBufferUpdateAfterBind_;
+ return *this;
+ }
+
+ PhysicalDeviceDescriptorIndexingFeatures & setDescriptorBindingStorageTexelBufferUpdateAfterBind(
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingStorageTexelBufferUpdateAfterBind_ ) VULKAN_HPP_NOEXCEPT
+ {
+ descriptorBindingStorageTexelBufferUpdateAfterBind = descriptorBindingStorageTexelBufferUpdateAfterBind_;
+ return *this;
+ }
+
+ PhysicalDeviceDescriptorIndexingFeatures & setDescriptorBindingUpdateUnusedWhilePending(
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingUpdateUnusedWhilePending_ ) VULKAN_HPP_NOEXCEPT
+ {
+ descriptorBindingUpdateUnusedWhilePending = descriptorBindingUpdateUnusedWhilePending_;
+ return *this;
+ }
+
+ PhysicalDeviceDescriptorIndexingFeatures & setDescriptorBindingPartiallyBound(
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingPartiallyBound_ ) VULKAN_HPP_NOEXCEPT
+ {
+ descriptorBindingPartiallyBound = descriptorBindingPartiallyBound_;
+ return *this;
+ }
+
+ PhysicalDeviceDescriptorIndexingFeatures & setDescriptorBindingVariableDescriptorCount(
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingVariableDescriptorCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ descriptorBindingVariableDescriptorCount = descriptorBindingVariableDescriptorCount_;
+ return *this;
+ }
+
+ PhysicalDeviceDescriptorIndexingFeatures &
+ setRuntimeDescriptorArray( VULKAN_HPP_NAMESPACE::Bool32 runtimeDescriptorArray_ ) VULKAN_HPP_NOEXCEPT
+ {
+ runtimeDescriptorArray = runtimeDescriptorArray_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceDescriptorIndexingFeatures const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceDescriptorIndexingFeatures *>( this );
+ }
+
+ operator VkPhysicalDeviceDescriptorIndexingFeatures &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceDescriptorIndexingFeatures *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceDescriptorIndexingFeatures const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceDescriptorIndexingFeatures const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( shaderInputAttachmentArrayDynamicIndexing == rhs.shaderInputAttachmentArrayDynamicIndexing ) &&
+ ( shaderUniformTexelBufferArrayDynamicIndexing == rhs.shaderUniformTexelBufferArrayDynamicIndexing ) &&
+ ( shaderStorageTexelBufferArrayDynamicIndexing == rhs.shaderStorageTexelBufferArrayDynamicIndexing ) &&
+ ( shaderUniformBufferArrayNonUniformIndexing == rhs.shaderUniformBufferArrayNonUniformIndexing ) &&
+ ( shaderSampledImageArrayNonUniformIndexing == rhs.shaderSampledImageArrayNonUniformIndexing ) &&
+ ( shaderStorageBufferArrayNonUniformIndexing == rhs.shaderStorageBufferArrayNonUniformIndexing ) &&
+ ( shaderStorageImageArrayNonUniformIndexing == rhs.shaderStorageImageArrayNonUniformIndexing ) &&
+ ( shaderInputAttachmentArrayNonUniformIndexing == rhs.shaderInputAttachmentArrayNonUniformIndexing ) &&
+ ( shaderUniformTexelBufferArrayNonUniformIndexing ==
+ rhs.shaderUniformTexelBufferArrayNonUniformIndexing ) &&
+ ( shaderStorageTexelBufferArrayNonUniformIndexing ==
+ rhs.shaderStorageTexelBufferArrayNonUniformIndexing ) &&
+ ( descriptorBindingUniformBufferUpdateAfterBind == rhs.descriptorBindingUniformBufferUpdateAfterBind ) &&
+ ( descriptorBindingSampledImageUpdateAfterBind == rhs.descriptorBindingSampledImageUpdateAfterBind ) &&
+ ( descriptorBindingStorageImageUpdateAfterBind == rhs.descriptorBindingStorageImageUpdateAfterBind ) &&
+ ( descriptorBindingStorageBufferUpdateAfterBind == rhs.descriptorBindingStorageBufferUpdateAfterBind ) &&
+ ( descriptorBindingUniformTexelBufferUpdateAfterBind ==
+ rhs.descriptorBindingUniformTexelBufferUpdateAfterBind ) &&
+ ( descriptorBindingStorageTexelBufferUpdateAfterBind ==
+ rhs.descriptorBindingStorageTexelBufferUpdateAfterBind ) &&
+ ( descriptorBindingUpdateUnusedWhilePending == rhs.descriptorBindingUpdateUnusedWhilePending ) &&
+ ( descriptorBindingPartiallyBound == rhs.descriptorBindingPartiallyBound ) &&
+ ( descriptorBindingVariableDescriptorCount == rhs.descriptorBindingVariableDescriptorCount ) &&
+ ( runtimeDescriptorArray == rhs.runtimeDescriptorArray );
+ }
+
+ bool operator!=( PhysicalDeviceDescriptorIndexingFeatures const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceDescriptorIndexingFeatures;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderInputAttachmentArrayDynamicIndexing = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderUniformTexelBufferArrayDynamicIndexing = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderStorageTexelBufferArrayDynamicIndexing = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderUniformBufferArrayNonUniformIndexing = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderSampledImageArrayNonUniformIndexing = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderStorageBufferArrayNonUniformIndexing = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageArrayNonUniformIndexing = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderInputAttachmentArrayNonUniformIndexing = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderUniformTexelBufferArrayNonUniformIndexing = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderStorageTexelBufferArrayNonUniformIndexing = {};
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingUniformBufferUpdateAfterBind = {};
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingSampledImageUpdateAfterBind = {};
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingStorageImageUpdateAfterBind = {};
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingStorageBufferUpdateAfterBind = {};
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingUniformTexelBufferUpdateAfterBind = {};
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingStorageTexelBufferUpdateAfterBind = {};
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingUpdateUnusedWhilePending = {};
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingPartiallyBound = {};
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingVariableDescriptorCount = {};
+ VULKAN_HPP_NAMESPACE::Bool32 runtimeDescriptorArray = {};
+ };
+ static_assert( sizeof( PhysicalDeviceDescriptorIndexingFeatures ) ==
+ sizeof( VkPhysicalDeviceDescriptorIndexingFeatures ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceDescriptorIndexingFeatures>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceDescriptorIndexingFeatures>
+ {
+ using Type = PhysicalDeviceDescriptorIndexingFeatures;
+ };
+ using PhysicalDeviceDescriptorIndexingFeaturesEXT = PhysicalDeviceDescriptorIndexingFeatures;
+
+ struct PhysicalDeviceDescriptorIndexingProperties
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceDescriptorIndexingProperties;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceDescriptorIndexingProperties(
+ uint32_t maxUpdateAfterBindDescriptorsInAllPools_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderUniformBufferArrayNonUniformIndexingNative_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderSampledImageArrayNonUniformIndexingNative_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderStorageBufferArrayNonUniformIndexingNative_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageArrayNonUniformIndexingNative_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderInputAttachmentArrayNonUniformIndexingNative_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 robustBufferAccessUpdateAfterBind_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 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_ = {} ) VULKAN_HPP_NOEXCEPT
+ : maxUpdateAfterBindDescriptorsInAllPools( maxUpdateAfterBindDescriptorsInAllPools_ )
+ , shaderUniformBufferArrayNonUniformIndexingNative( shaderUniformBufferArrayNonUniformIndexingNative_ )
+ , shaderSampledImageArrayNonUniformIndexingNative( shaderSampledImageArrayNonUniformIndexingNative_ )
+ , shaderStorageBufferArrayNonUniformIndexingNative( shaderStorageBufferArrayNonUniformIndexingNative_ )
+ , shaderStorageImageArrayNonUniformIndexingNative( shaderStorageImageArrayNonUniformIndexingNative_ )
+ , shaderInputAttachmentArrayNonUniformIndexingNative( shaderInputAttachmentArrayNonUniformIndexingNative_ )
+ , robustBufferAccessUpdateAfterBind( robustBufferAccessUpdateAfterBind_ )
+ , quadDivergentImplicitLod( quadDivergentImplicitLod_ )
+ , maxPerStageDescriptorUpdateAfterBindSamplers( maxPerStageDescriptorUpdateAfterBindSamplers_ )
+ , maxPerStageDescriptorUpdateAfterBindUniformBuffers( maxPerStageDescriptorUpdateAfterBindUniformBuffers_ )
+ , maxPerStageDescriptorUpdateAfterBindStorageBuffers( maxPerStageDescriptorUpdateAfterBindStorageBuffers_ )
+ , maxPerStageDescriptorUpdateAfterBindSampledImages( maxPerStageDescriptorUpdateAfterBindSampledImages_ )
+ , maxPerStageDescriptorUpdateAfterBindStorageImages( maxPerStageDescriptorUpdateAfterBindStorageImages_ )
+ , maxPerStageDescriptorUpdateAfterBindInputAttachments( maxPerStageDescriptorUpdateAfterBindInputAttachments_ )
+ , maxPerStageUpdateAfterBindResources( maxPerStageUpdateAfterBindResources_ )
+ , maxDescriptorSetUpdateAfterBindSamplers( maxDescriptorSetUpdateAfterBindSamplers_ )
+ , maxDescriptorSetUpdateAfterBindUniformBuffers( maxDescriptorSetUpdateAfterBindUniformBuffers_ )
+ , maxDescriptorSetUpdateAfterBindUniformBuffersDynamic( maxDescriptorSetUpdateAfterBindUniformBuffersDynamic_ )
+ , maxDescriptorSetUpdateAfterBindStorageBuffers( maxDescriptorSetUpdateAfterBindStorageBuffers_ )
+ , maxDescriptorSetUpdateAfterBindStorageBuffersDynamic( maxDescriptorSetUpdateAfterBindStorageBuffersDynamic_ )
+ , maxDescriptorSetUpdateAfterBindSampledImages( maxDescriptorSetUpdateAfterBindSampledImages_ )
+ , maxDescriptorSetUpdateAfterBindStorageImages( maxDescriptorSetUpdateAfterBindStorageImages_ )
+ , maxDescriptorSetUpdateAfterBindInputAttachments( maxDescriptorSetUpdateAfterBindInputAttachments_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceDescriptorIndexingProperties(
+ PhysicalDeviceDescriptorIndexingProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceDescriptorIndexingProperties( VkPhysicalDeviceDescriptorIndexingProperties const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceDescriptorIndexingProperties(
+ *reinterpret_cast<PhysicalDeviceDescriptorIndexingProperties const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDescriptorIndexingProperties &
+ operator=( PhysicalDeviceDescriptorIndexingProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceDescriptorIndexingProperties &
+ operator=( VkPhysicalDeviceDescriptorIndexingProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceDescriptorIndexingProperties const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDeviceDescriptorIndexingProperties const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceDescriptorIndexingProperties *>( this );
+ }
+
+ operator VkPhysicalDeviceDescriptorIndexingProperties &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceDescriptorIndexingProperties *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceDescriptorIndexingProperties const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceDescriptorIndexingProperties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( maxUpdateAfterBindDescriptorsInAllPools == rhs.maxUpdateAfterBindDescriptorsInAllPools ) &&
+ ( shaderUniformBufferArrayNonUniformIndexingNative ==
+ rhs.shaderUniformBufferArrayNonUniformIndexingNative ) &&
+ ( shaderSampledImageArrayNonUniformIndexingNative ==
+ rhs.shaderSampledImageArrayNonUniformIndexingNative ) &&
+ ( shaderStorageBufferArrayNonUniformIndexingNative ==
+ rhs.shaderStorageBufferArrayNonUniformIndexingNative ) &&
+ ( shaderStorageImageArrayNonUniformIndexingNative ==
+ rhs.shaderStorageImageArrayNonUniformIndexingNative ) &&
+ ( shaderInputAttachmentArrayNonUniformIndexingNative ==
+ rhs.shaderInputAttachmentArrayNonUniformIndexingNative ) &&
+ ( robustBufferAccessUpdateAfterBind == rhs.robustBufferAccessUpdateAfterBind ) &&
+ ( quadDivergentImplicitLod == rhs.quadDivergentImplicitLod ) &&
+ ( maxPerStageDescriptorUpdateAfterBindSamplers == rhs.maxPerStageDescriptorUpdateAfterBindSamplers ) &&
+ ( maxPerStageDescriptorUpdateAfterBindUniformBuffers ==
+ rhs.maxPerStageDescriptorUpdateAfterBindUniformBuffers ) &&
+ ( maxPerStageDescriptorUpdateAfterBindStorageBuffers ==
+ rhs.maxPerStageDescriptorUpdateAfterBindStorageBuffers ) &&
+ ( maxPerStageDescriptorUpdateAfterBindSampledImages ==
+ rhs.maxPerStageDescriptorUpdateAfterBindSampledImages ) &&
+ ( maxPerStageDescriptorUpdateAfterBindStorageImages ==
+ rhs.maxPerStageDescriptorUpdateAfterBindStorageImages ) &&
+ ( maxPerStageDescriptorUpdateAfterBindInputAttachments ==
+ rhs.maxPerStageDescriptorUpdateAfterBindInputAttachments ) &&
+ ( maxPerStageUpdateAfterBindResources == rhs.maxPerStageUpdateAfterBindResources ) &&
+ ( maxDescriptorSetUpdateAfterBindSamplers == rhs.maxDescriptorSetUpdateAfterBindSamplers ) &&
+ ( maxDescriptorSetUpdateAfterBindUniformBuffers == rhs.maxDescriptorSetUpdateAfterBindUniformBuffers ) &&
+ ( maxDescriptorSetUpdateAfterBindUniformBuffersDynamic ==
+ rhs.maxDescriptorSetUpdateAfterBindUniformBuffersDynamic ) &&
+ ( maxDescriptorSetUpdateAfterBindStorageBuffers == rhs.maxDescriptorSetUpdateAfterBindStorageBuffers ) &&
+ ( maxDescriptorSetUpdateAfterBindStorageBuffersDynamic ==
+ rhs.maxDescriptorSetUpdateAfterBindStorageBuffersDynamic ) &&
+ ( maxDescriptorSetUpdateAfterBindSampledImages == rhs.maxDescriptorSetUpdateAfterBindSampledImages ) &&
+ ( maxDescriptorSetUpdateAfterBindStorageImages == rhs.maxDescriptorSetUpdateAfterBindStorageImages ) &&
+ ( maxDescriptorSetUpdateAfterBindInputAttachments == rhs.maxDescriptorSetUpdateAfterBindInputAttachments );
+ }
+
+ bool operator!=( PhysicalDeviceDescriptorIndexingProperties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceDescriptorIndexingProperties;
+ void * pNext = {};
+ uint32_t maxUpdateAfterBindDescriptorsInAllPools = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderUniformBufferArrayNonUniformIndexingNative = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderSampledImageArrayNonUniformIndexingNative = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderStorageBufferArrayNonUniformIndexingNative = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageArrayNonUniformIndexingNative = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderInputAttachmentArrayNonUniformIndexingNative = {};
+ VULKAN_HPP_NAMESPACE::Bool32 robustBufferAccessUpdateAfterBind = {};
+ VULKAN_HPP_NAMESPACE::Bool32 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 = {};
+ };
+ static_assert( sizeof( PhysicalDeviceDescriptorIndexingProperties ) ==
+ sizeof( VkPhysicalDeviceDescriptorIndexingProperties ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceDescriptorIndexingProperties>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceDescriptorIndexingProperties>
+ {
+ using Type = PhysicalDeviceDescriptorIndexingProperties;
+ };
+ using PhysicalDeviceDescriptorIndexingPropertiesEXT = PhysicalDeviceDescriptorIndexingProperties;
+
+ struct PhysicalDeviceDeviceGeneratedCommandsFeaturesNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceDeviceGeneratedCommandsFeaturesNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceDeviceGeneratedCommandsFeaturesNV(
+ VULKAN_HPP_NAMESPACE::Bool32 deviceGeneratedCommands_ = {} ) VULKAN_HPP_NOEXCEPT
+ : deviceGeneratedCommands( deviceGeneratedCommands_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceDeviceGeneratedCommandsFeaturesNV(
+ PhysicalDeviceDeviceGeneratedCommandsFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceDeviceGeneratedCommandsFeaturesNV( VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceDeviceGeneratedCommandsFeaturesNV(
+ *reinterpret_cast<PhysicalDeviceDeviceGeneratedCommandsFeaturesNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDeviceGeneratedCommandsFeaturesNV &
+ operator=( PhysicalDeviceDeviceGeneratedCommandsFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceDeviceGeneratedCommandsFeaturesNV &
+ operator=( VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceDeviceGeneratedCommandsFeaturesNV const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceDeviceGeneratedCommandsFeaturesNV & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceDeviceGeneratedCommandsFeaturesNV &
+ setDeviceGeneratedCommands( VULKAN_HPP_NAMESPACE::Bool32 deviceGeneratedCommands_ ) VULKAN_HPP_NOEXCEPT
+ {
+ deviceGeneratedCommands = deviceGeneratedCommands_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV *>( this );
+ }
+
+ operator VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceDeviceGeneratedCommandsFeaturesNV const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceDeviceGeneratedCommandsFeaturesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( deviceGeneratedCommands == rhs.deviceGeneratedCommands );
+ }
+
+ bool operator!=( PhysicalDeviceDeviceGeneratedCommandsFeaturesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceDeviceGeneratedCommandsFeaturesNV;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 deviceGeneratedCommands = {};
+ };
+ static_assert( sizeof( PhysicalDeviceDeviceGeneratedCommandsFeaturesNV ) ==
+ sizeof( VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceDeviceGeneratedCommandsFeaturesNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceDeviceGeneratedCommandsFeaturesNV>
+ {
+ using Type = PhysicalDeviceDeviceGeneratedCommandsFeaturesNV;
+ };
+
+ struct PhysicalDeviceDeviceGeneratedCommandsPropertiesNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceDeviceGeneratedCommandsPropertiesNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceDeviceGeneratedCommandsPropertiesNV(
+ 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_ = {} ) VULKAN_HPP_NOEXCEPT
+ : maxGraphicsShaderGroupCount( maxGraphicsShaderGroupCount_ )
+ , maxIndirectSequenceCount( maxIndirectSequenceCount_ )
+ , maxIndirectCommandsTokenCount( maxIndirectCommandsTokenCount_ )
+ , maxIndirectCommandsStreamCount( maxIndirectCommandsStreamCount_ )
+ , maxIndirectCommandsTokenOffset( maxIndirectCommandsTokenOffset_ )
+ , maxIndirectCommandsStreamStride( maxIndirectCommandsStreamStride_ )
+ , minSequencesCountBufferOffsetAlignment( minSequencesCountBufferOffsetAlignment_ )
+ , minSequencesIndexBufferOffsetAlignment( minSequencesIndexBufferOffsetAlignment_ )
+ , minIndirectCommandsBufferOffsetAlignment( minIndirectCommandsBufferOffsetAlignment_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceDeviceGeneratedCommandsPropertiesNV(
+ PhysicalDeviceDeviceGeneratedCommandsPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceDeviceGeneratedCommandsPropertiesNV( VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceDeviceGeneratedCommandsPropertiesNV(
+ *reinterpret_cast<PhysicalDeviceDeviceGeneratedCommandsPropertiesNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDeviceGeneratedCommandsPropertiesNV &
+ operator=( PhysicalDeviceDeviceGeneratedCommandsPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceDeviceGeneratedCommandsPropertiesNV &
+ operator=( VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this =
+ *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceDeviceGeneratedCommandsPropertiesNV const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV *>( this );
+ }
+
+ operator VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceDeviceGeneratedCommandsPropertiesNV const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceDeviceGeneratedCommandsPropertiesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( maxGraphicsShaderGroupCount == rhs.maxGraphicsShaderGroupCount ) &&
+ ( maxIndirectSequenceCount == rhs.maxIndirectSequenceCount ) &&
+ ( maxIndirectCommandsTokenCount == rhs.maxIndirectCommandsTokenCount ) &&
+ ( maxIndirectCommandsStreamCount == rhs.maxIndirectCommandsStreamCount ) &&
+ ( maxIndirectCommandsTokenOffset == rhs.maxIndirectCommandsTokenOffset ) &&
+ ( maxIndirectCommandsStreamStride == rhs.maxIndirectCommandsStreamStride ) &&
+ ( minSequencesCountBufferOffsetAlignment == rhs.minSequencesCountBufferOffsetAlignment ) &&
+ ( minSequencesIndexBufferOffsetAlignment == rhs.minSequencesIndexBufferOffsetAlignment ) &&
+ ( minIndirectCommandsBufferOffsetAlignment == rhs.minIndirectCommandsBufferOffsetAlignment );
+ }
+
+ bool operator!=( PhysicalDeviceDeviceGeneratedCommandsPropertiesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceDeviceGeneratedCommandsPropertiesNV;
+ 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 = {};
+ };
+ static_assert( sizeof( PhysicalDeviceDeviceGeneratedCommandsPropertiesNV ) ==
+ sizeof( VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceDeviceGeneratedCommandsPropertiesNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceDeviceGeneratedCommandsPropertiesNV>
+ {
+ using Type = PhysicalDeviceDeviceGeneratedCommandsPropertiesNV;
+ };
+
+ struct PhysicalDeviceDeviceMemoryReportFeaturesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceDeviceMemoryReportFeaturesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceDeviceMemoryReportFeaturesEXT(
+ VULKAN_HPP_NAMESPACE::Bool32 deviceMemoryReport_ = {} ) VULKAN_HPP_NOEXCEPT
+ : deviceMemoryReport( deviceMemoryReport_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceDeviceMemoryReportFeaturesEXT(
+ PhysicalDeviceDeviceMemoryReportFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceDeviceMemoryReportFeaturesEXT( VkPhysicalDeviceDeviceMemoryReportFeaturesEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceDeviceMemoryReportFeaturesEXT(
+ *reinterpret_cast<PhysicalDeviceDeviceMemoryReportFeaturesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDeviceMemoryReportFeaturesEXT &
+ operator=( PhysicalDeviceDeviceMemoryReportFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceDeviceMemoryReportFeaturesEXT &
+ operator=( VkPhysicalDeviceDeviceMemoryReportFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceDeviceMemoryReportFeaturesEXT const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceDeviceMemoryReportFeaturesEXT & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceDeviceMemoryReportFeaturesEXT &
+ setDeviceMemoryReport( VULKAN_HPP_NAMESPACE::Bool32 deviceMemoryReport_ ) VULKAN_HPP_NOEXCEPT
+ {
+ deviceMemoryReport = deviceMemoryReport_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceDeviceMemoryReportFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceDeviceMemoryReportFeaturesEXT *>( this );
+ }
+
+ operator VkPhysicalDeviceDeviceMemoryReportFeaturesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceDeviceMemoryReportFeaturesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceDeviceMemoryReportFeaturesEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceDeviceMemoryReportFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( deviceMemoryReport == rhs.deviceMemoryReport );
+ }
+
+ bool operator!=( PhysicalDeviceDeviceMemoryReportFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceDeviceMemoryReportFeaturesEXT;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 deviceMemoryReport = {};
+ };
+ static_assert( sizeof( PhysicalDeviceDeviceMemoryReportFeaturesEXT ) ==
+ sizeof( VkPhysicalDeviceDeviceMemoryReportFeaturesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceDeviceMemoryReportFeaturesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceDeviceMemoryReportFeaturesEXT>
+ {
+ using Type = PhysicalDeviceDeviceMemoryReportFeaturesEXT;
+ };
+
+ struct PhysicalDeviceDiagnosticsConfigFeaturesNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceDiagnosticsConfigFeaturesNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceDiagnosticsConfigFeaturesNV(
+ VULKAN_HPP_NAMESPACE::Bool32 diagnosticsConfig_ = {} ) VULKAN_HPP_NOEXCEPT
+ : diagnosticsConfig( diagnosticsConfig_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceDiagnosticsConfigFeaturesNV(
+ PhysicalDeviceDiagnosticsConfigFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceDiagnosticsConfigFeaturesNV( VkPhysicalDeviceDiagnosticsConfigFeaturesNV const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceDiagnosticsConfigFeaturesNV(
+ *reinterpret_cast<PhysicalDeviceDiagnosticsConfigFeaturesNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDiagnosticsConfigFeaturesNV &
+ operator=( PhysicalDeviceDiagnosticsConfigFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceDiagnosticsConfigFeaturesNV &
+ operator=( VkPhysicalDeviceDiagnosticsConfigFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceDiagnosticsConfigFeaturesNV const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceDiagnosticsConfigFeaturesNV & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceDiagnosticsConfigFeaturesNV &
+ setDiagnosticsConfig( VULKAN_HPP_NAMESPACE::Bool32 diagnosticsConfig_ ) VULKAN_HPP_NOEXCEPT
+ {
+ diagnosticsConfig = diagnosticsConfig_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceDiagnosticsConfigFeaturesNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceDiagnosticsConfigFeaturesNV *>( this );
+ }
+
+ operator VkPhysicalDeviceDiagnosticsConfigFeaturesNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceDiagnosticsConfigFeaturesNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceDiagnosticsConfigFeaturesNV const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceDiagnosticsConfigFeaturesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( diagnosticsConfig == rhs.diagnosticsConfig );
+ }
+
+ bool operator!=( PhysicalDeviceDiagnosticsConfigFeaturesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceDiagnosticsConfigFeaturesNV;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 diagnosticsConfig = {};
+ };
+ static_assert( sizeof( PhysicalDeviceDiagnosticsConfigFeaturesNV ) ==
+ sizeof( VkPhysicalDeviceDiagnosticsConfigFeaturesNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceDiagnosticsConfigFeaturesNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceDiagnosticsConfigFeaturesNV>
+ {
+ using Type = PhysicalDeviceDiagnosticsConfigFeaturesNV;
+ };
+
+ struct PhysicalDeviceDiscardRectanglePropertiesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceDiscardRectanglePropertiesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ PhysicalDeviceDiscardRectanglePropertiesEXT( uint32_t maxDiscardRectangles_ = {} ) VULKAN_HPP_NOEXCEPT
+ : maxDiscardRectangles( maxDiscardRectangles_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceDiscardRectanglePropertiesEXT(
+ PhysicalDeviceDiscardRectanglePropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceDiscardRectanglePropertiesEXT( VkPhysicalDeviceDiscardRectanglePropertiesEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceDiscardRectanglePropertiesEXT(
+ *reinterpret_cast<PhysicalDeviceDiscardRectanglePropertiesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDiscardRectanglePropertiesEXT &
+ operator=( PhysicalDeviceDiscardRectanglePropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceDiscardRectanglePropertiesEXT &
+ operator=( VkPhysicalDeviceDiscardRectanglePropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceDiscardRectanglePropertiesEXT const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDeviceDiscardRectanglePropertiesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceDiscardRectanglePropertiesEXT *>( this );
+ }
+
+ operator VkPhysicalDeviceDiscardRectanglePropertiesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceDiscardRectanglePropertiesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceDiscardRectanglePropertiesEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceDiscardRectanglePropertiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( maxDiscardRectangles == rhs.maxDiscardRectangles );
+ }
+
+ bool operator!=( PhysicalDeviceDiscardRectanglePropertiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceDiscardRectanglePropertiesEXT;
+ void * pNext = {};
+ uint32_t maxDiscardRectangles = {};
+ };
+ static_assert( sizeof( PhysicalDeviceDiscardRectanglePropertiesEXT ) ==
+ sizeof( VkPhysicalDeviceDiscardRectanglePropertiesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceDiscardRectanglePropertiesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceDiscardRectanglePropertiesEXT>
+ {
+ using Type = PhysicalDeviceDiscardRectanglePropertiesEXT;
+ };
+
+ struct PhysicalDeviceDriverProperties
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceDriverProperties;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDriverProperties(
+ VULKAN_HPP_NAMESPACE::DriverId driverID_ = VULKAN_HPP_NAMESPACE::DriverId::eAmdProprietary,
+ std::array<char, VK_MAX_DRIVER_NAME_SIZE> const & driverName_ = {},
+ std::array<char, VK_MAX_DRIVER_INFO_SIZE> const & driverInfo_ = {},
+ VULKAN_HPP_NAMESPACE::ConformanceVersion conformanceVersion_ = {} ) VULKAN_HPP_NOEXCEPT
+ : driverID( driverID_ )
+ , driverName( driverName_ )
+ , driverInfo( driverInfo_ )
+ , conformanceVersion( conformanceVersion_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR_14
+ PhysicalDeviceDriverProperties( PhysicalDeviceDriverProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceDriverProperties( VkPhysicalDeviceDriverProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceDriverProperties( *reinterpret_cast<PhysicalDeviceDriverProperties const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDriverProperties &
+ operator=( PhysicalDeviceDriverProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceDriverProperties & operator=( VkPhysicalDeviceDriverProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceDriverProperties const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDeviceDriverProperties const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceDriverProperties *>( this );
+ }
+
+ operator VkPhysicalDeviceDriverProperties &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceDriverProperties *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceDriverProperties const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceDriverProperties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( driverID == rhs.driverID ) &&
+ ( driverName == rhs.driverName ) && ( driverInfo == rhs.driverInfo ) &&
+ ( conformanceVersion == rhs.conformanceVersion );
+ }
+
+ bool operator!=( PhysicalDeviceDriverProperties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceDriverProperties;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::DriverId driverID = VULKAN_HPP_NAMESPACE::DriverId::eAmdProprietary;
+ VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DRIVER_NAME_SIZE> driverName = {};
+ VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DRIVER_INFO_SIZE> driverInfo = {};
+ VULKAN_HPP_NAMESPACE::ConformanceVersion conformanceVersion = {};
+ };
+ static_assert( sizeof( PhysicalDeviceDriverProperties ) == sizeof( VkPhysicalDeviceDriverProperties ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceDriverProperties>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceDriverProperties>
+ {
+ using Type = PhysicalDeviceDriverProperties;
+ };
+ using PhysicalDeviceDriverPropertiesKHR = PhysicalDeviceDriverProperties;
+
+ struct PhysicalDeviceDrmPropertiesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceDrmPropertiesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceDrmPropertiesEXT( VULKAN_HPP_NAMESPACE::Bool32 hasPrimary_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 hasRender_ = {},
+ int64_t primaryMajor_ = {},
+ int64_t primaryMinor_ = {},
+ int64_t renderMajor_ = {},
+ int64_t renderMinor_ = {} ) VULKAN_HPP_NOEXCEPT
+ : hasPrimary( hasPrimary_ )
+ , hasRender( hasRender_ )
+ , primaryMajor( primaryMajor_ )
+ , primaryMinor( primaryMinor_ )
+ , renderMajor( renderMajor_ )
+ , renderMinor( renderMinor_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ PhysicalDeviceDrmPropertiesEXT( PhysicalDeviceDrmPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceDrmPropertiesEXT( VkPhysicalDeviceDrmPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceDrmPropertiesEXT( *reinterpret_cast<PhysicalDeviceDrmPropertiesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDrmPropertiesEXT &
+ operator=( PhysicalDeviceDrmPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceDrmPropertiesEXT & operator=( VkPhysicalDeviceDrmPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceDrmPropertiesEXT const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDeviceDrmPropertiesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceDrmPropertiesEXT *>( this );
+ }
+
+ operator VkPhysicalDeviceDrmPropertiesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceDrmPropertiesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceDrmPropertiesEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceDrmPropertiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( hasPrimary == rhs.hasPrimary ) &&
+ ( hasRender == rhs.hasRender ) && ( primaryMajor == rhs.primaryMajor ) &&
+ ( primaryMinor == rhs.primaryMinor ) && ( renderMajor == rhs.renderMajor ) &&
+ ( renderMinor == rhs.renderMinor );
+ }
+
+ bool operator!=( PhysicalDeviceDrmPropertiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceDrmPropertiesEXT;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 hasPrimary = {};
+ VULKAN_HPP_NAMESPACE::Bool32 hasRender = {};
+ int64_t primaryMajor = {};
+ int64_t primaryMinor = {};
+ int64_t renderMajor = {};
+ int64_t renderMinor = {};
+ };
+ static_assert( sizeof( PhysicalDeviceDrmPropertiesEXT ) == sizeof( VkPhysicalDeviceDrmPropertiesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceDrmPropertiesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceDrmPropertiesEXT>
+ {
+ using Type = PhysicalDeviceDrmPropertiesEXT;
+ };
+
+ struct PhysicalDeviceExclusiveScissorFeaturesNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceExclusiveScissorFeaturesNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceExclusiveScissorFeaturesNV( VULKAN_HPP_NAMESPACE::Bool32 exclusiveScissor_ = {} )
+ VULKAN_HPP_NOEXCEPT : exclusiveScissor( exclusiveScissor_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceExclusiveScissorFeaturesNV(
+ PhysicalDeviceExclusiveScissorFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceExclusiveScissorFeaturesNV( VkPhysicalDeviceExclusiveScissorFeaturesNV const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceExclusiveScissorFeaturesNV(
+ *reinterpret_cast<PhysicalDeviceExclusiveScissorFeaturesNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceExclusiveScissorFeaturesNV &
+ operator=( PhysicalDeviceExclusiveScissorFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceExclusiveScissorFeaturesNV &
+ operator=( VkPhysicalDeviceExclusiveScissorFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceExclusiveScissorFeaturesNV const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceExclusiveScissorFeaturesNV & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceExclusiveScissorFeaturesNV &
+ setExclusiveScissor( VULKAN_HPP_NAMESPACE::Bool32 exclusiveScissor_ ) VULKAN_HPP_NOEXCEPT
+ {
+ exclusiveScissor = exclusiveScissor_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceExclusiveScissorFeaturesNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceExclusiveScissorFeaturesNV *>( this );
+ }
+
+ operator VkPhysicalDeviceExclusiveScissorFeaturesNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceExclusiveScissorFeaturesNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceExclusiveScissorFeaturesNV const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceExclusiveScissorFeaturesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( exclusiveScissor == rhs.exclusiveScissor );
+ }
+
+ bool operator!=( PhysicalDeviceExclusiveScissorFeaturesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceExclusiveScissorFeaturesNV;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 exclusiveScissor = {};
+ };
+ static_assert( sizeof( PhysicalDeviceExclusiveScissorFeaturesNV ) ==
+ sizeof( VkPhysicalDeviceExclusiveScissorFeaturesNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceExclusiveScissorFeaturesNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceExclusiveScissorFeaturesNV>
+ {
+ using Type = PhysicalDeviceExclusiveScissorFeaturesNV;
+ };
+
+ struct PhysicalDeviceExtendedDynamicState2FeaturesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceExtendedDynamicState2FeaturesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceExtendedDynamicState2FeaturesEXT(
+ VULKAN_HPP_NAMESPACE::Bool32 extendedDynamicState2_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 extendedDynamicState2LogicOp_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 extendedDynamicState2PatchControlPoints_ = {} ) VULKAN_HPP_NOEXCEPT
+ : extendedDynamicState2( extendedDynamicState2_ )
+ , extendedDynamicState2LogicOp( extendedDynamicState2LogicOp_ )
+ , extendedDynamicState2PatchControlPoints( extendedDynamicState2PatchControlPoints_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceExtendedDynamicState2FeaturesEXT(
+ PhysicalDeviceExtendedDynamicState2FeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceExtendedDynamicState2FeaturesEXT( VkPhysicalDeviceExtendedDynamicState2FeaturesEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceExtendedDynamicState2FeaturesEXT(
+ *reinterpret_cast<PhysicalDeviceExtendedDynamicState2FeaturesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceExtendedDynamicState2FeaturesEXT &
+ operator=( PhysicalDeviceExtendedDynamicState2FeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceExtendedDynamicState2FeaturesEXT &
+ operator=( VkPhysicalDeviceExtendedDynamicState2FeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceExtendedDynamicState2FeaturesEXT const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceExtendedDynamicState2FeaturesEXT & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceExtendedDynamicState2FeaturesEXT &
+ setExtendedDynamicState2( VULKAN_HPP_NAMESPACE::Bool32 extendedDynamicState2_ ) VULKAN_HPP_NOEXCEPT
+ {
+ extendedDynamicState2 = extendedDynamicState2_;
+ return *this;
+ }
+
+ PhysicalDeviceExtendedDynamicState2FeaturesEXT &
+ setExtendedDynamicState2LogicOp( VULKAN_HPP_NAMESPACE::Bool32 extendedDynamicState2LogicOp_ ) VULKAN_HPP_NOEXCEPT
+ {
+ extendedDynamicState2LogicOp = extendedDynamicState2LogicOp_;
+ return *this;
+ }
+
+ PhysicalDeviceExtendedDynamicState2FeaturesEXT & setExtendedDynamicState2PatchControlPoints(
+ VULKAN_HPP_NAMESPACE::Bool32 extendedDynamicState2PatchControlPoints_ ) VULKAN_HPP_NOEXCEPT
+ {
+ extendedDynamicState2PatchControlPoints = extendedDynamicState2PatchControlPoints_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceExtendedDynamicState2FeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceExtendedDynamicState2FeaturesEXT *>( this );
+ }
+
+ operator VkPhysicalDeviceExtendedDynamicState2FeaturesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceExtendedDynamicState2FeaturesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceExtendedDynamicState2FeaturesEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceExtendedDynamicState2FeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( extendedDynamicState2 == rhs.extendedDynamicState2 ) &&
+ ( extendedDynamicState2LogicOp == rhs.extendedDynamicState2LogicOp ) &&
+ ( extendedDynamicState2PatchControlPoints == rhs.extendedDynamicState2PatchControlPoints );
+ }
+
+ bool operator!=( PhysicalDeviceExtendedDynamicState2FeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceExtendedDynamicState2FeaturesEXT;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 extendedDynamicState2 = {};
+ VULKAN_HPP_NAMESPACE::Bool32 extendedDynamicState2LogicOp = {};
+ VULKAN_HPP_NAMESPACE::Bool32 extendedDynamicState2PatchControlPoints = {};
+ };
+ static_assert( sizeof( PhysicalDeviceExtendedDynamicState2FeaturesEXT ) ==
+ sizeof( VkPhysicalDeviceExtendedDynamicState2FeaturesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceExtendedDynamicState2FeaturesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceExtendedDynamicState2FeaturesEXT>
+ {
+ using Type = PhysicalDeviceExtendedDynamicState2FeaturesEXT;
+ };
+
+ struct PhysicalDeviceExtendedDynamicStateFeaturesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceExtendedDynamicStateFeaturesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceExtendedDynamicStateFeaturesEXT(
+ VULKAN_HPP_NAMESPACE::Bool32 extendedDynamicState_ = {} ) VULKAN_HPP_NOEXCEPT
+ : extendedDynamicState( extendedDynamicState_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceExtendedDynamicStateFeaturesEXT(
+ PhysicalDeviceExtendedDynamicStateFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceExtendedDynamicStateFeaturesEXT( VkPhysicalDeviceExtendedDynamicStateFeaturesEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceExtendedDynamicStateFeaturesEXT(
+ *reinterpret_cast<PhysicalDeviceExtendedDynamicStateFeaturesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceExtendedDynamicStateFeaturesEXT &
+ operator=( PhysicalDeviceExtendedDynamicStateFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceExtendedDynamicStateFeaturesEXT &
+ operator=( VkPhysicalDeviceExtendedDynamicStateFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceExtendedDynamicStateFeaturesEXT const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceExtendedDynamicStateFeaturesEXT & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceExtendedDynamicStateFeaturesEXT &
+ setExtendedDynamicState( VULKAN_HPP_NAMESPACE::Bool32 extendedDynamicState_ ) VULKAN_HPP_NOEXCEPT
+ {
+ extendedDynamicState = extendedDynamicState_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceExtendedDynamicStateFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceExtendedDynamicStateFeaturesEXT *>( this );
+ }
+
+ operator VkPhysicalDeviceExtendedDynamicStateFeaturesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceExtendedDynamicStateFeaturesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceExtendedDynamicStateFeaturesEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceExtendedDynamicStateFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( extendedDynamicState == rhs.extendedDynamicState );
+ }
+
+ bool operator!=( PhysicalDeviceExtendedDynamicStateFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceExtendedDynamicStateFeaturesEXT;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 extendedDynamicState = {};
+ };
+ static_assert( sizeof( PhysicalDeviceExtendedDynamicStateFeaturesEXT ) ==
+ sizeof( VkPhysicalDeviceExtendedDynamicStateFeaturesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceExtendedDynamicStateFeaturesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceExtendedDynamicStateFeaturesEXT>
+ {
+ using Type = PhysicalDeviceExtendedDynamicStateFeaturesEXT;
+ };
+
+ struct PhysicalDeviceExternalBufferInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceExternalBufferInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceExternalBufferInfo(
+ VULKAN_HPP_NAMESPACE::BufferCreateFlags flags_ = {},
+ VULKAN_HPP_NAMESPACE::BufferUsageFlags usage_ = {},
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType_ =
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits::eOpaqueFd ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , usage( usage_ )
+ , handleType( handleType_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ PhysicalDeviceExternalBufferInfo( PhysicalDeviceExternalBufferInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceExternalBufferInfo( VkPhysicalDeviceExternalBufferInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceExternalBufferInfo( *reinterpret_cast<PhysicalDeviceExternalBufferInfo const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceExternalBufferInfo &
+ operator=( PhysicalDeviceExternalBufferInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceExternalBufferInfo & operator=( VkPhysicalDeviceExternalBufferInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceExternalBufferInfo const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceExternalBufferInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceExternalBufferInfo & setFlags( VULKAN_HPP_NAMESPACE::BufferCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ PhysicalDeviceExternalBufferInfo & setUsage( VULKAN_HPP_NAMESPACE::BufferUsageFlags usage_ ) VULKAN_HPP_NOEXCEPT
+ {
+ usage = usage_;
+ return *this;
+ }
+
+ PhysicalDeviceExternalBufferInfo &
+ setHandleType( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType_ ) VULKAN_HPP_NOEXCEPT
+ {
+ handleType = handleType_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceExternalBufferInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceExternalBufferInfo *>( this );
+ }
+
+ operator VkPhysicalDeviceExternalBufferInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceExternalBufferInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceExternalBufferInfo const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceExternalBufferInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) && ( usage == rhs.usage ) &&
+ ( handleType == rhs.handleType );
+ }
+
+ bool operator!=( PhysicalDeviceExternalBufferInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceExternalBufferInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::BufferCreateFlags flags = {};
+ VULKAN_HPP_NAMESPACE::BufferUsageFlags usage = {};
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType =
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits::eOpaqueFd;
+ };
+ static_assert( sizeof( PhysicalDeviceExternalBufferInfo ) == sizeof( VkPhysicalDeviceExternalBufferInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceExternalBufferInfo>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceExternalBufferInfo>
+ {
+ using Type = PhysicalDeviceExternalBufferInfo;
+ };
+ using PhysicalDeviceExternalBufferInfoKHR = PhysicalDeviceExternalBufferInfo;
+
+ struct PhysicalDeviceExternalFenceInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceExternalFenceInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceExternalFenceInfo(
+ VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits handleType_ =
+ VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits::eOpaqueFd ) VULKAN_HPP_NOEXCEPT
+ : handleType( handleType_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ PhysicalDeviceExternalFenceInfo( PhysicalDeviceExternalFenceInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceExternalFenceInfo( VkPhysicalDeviceExternalFenceInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceExternalFenceInfo( *reinterpret_cast<PhysicalDeviceExternalFenceInfo const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceExternalFenceInfo &
+ operator=( PhysicalDeviceExternalFenceInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceExternalFenceInfo & operator=( VkPhysicalDeviceExternalFenceInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceExternalFenceInfo const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceExternalFenceInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceExternalFenceInfo &
+ setHandleType( VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits handleType_ ) VULKAN_HPP_NOEXCEPT
+ {
+ handleType = handleType_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceExternalFenceInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceExternalFenceInfo *>( this );
+ }
+
+ operator VkPhysicalDeviceExternalFenceInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceExternalFenceInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceExternalFenceInfo const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceExternalFenceInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( handleType == rhs.handleType );
+ }
+
+ bool operator!=( PhysicalDeviceExternalFenceInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceExternalFenceInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits handleType =
+ VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits::eOpaqueFd;
+ };
+ static_assert( sizeof( PhysicalDeviceExternalFenceInfo ) == sizeof( VkPhysicalDeviceExternalFenceInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceExternalFenceInfo>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceExternalFenceInfo>
+ {
+ using Type = PhysicalDeviceExternalFenceInfo;
+ };
+ using PhysicalDeviceExternalFenceInfoKHR = PhysicalDeviceExternalFenceInfo;
+
+ struct PhysicalDeviceExternalImageFormatInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceExternalImageFormatInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceExternalImageFormatInfo(
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType_ =
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits::eOpaqueFd ) VULKAN_HPP_NOEXCEPT
+ : handleType( handleType_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceExternalImageFormatInfo( PhysicalDeviceExternalImageFormatInfo const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceExternalImageFormatInfo( VkPhysicalDeviceExternalImageFormatInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceExternalImageFormatInfo(
+ *reinterpret_cast<PhysicalDeviceExternalImageFormatInfo const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceExternalImageFormatInfo &
+ operator=( PhysicalDeviceExternalImageFormatInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceExternalImageFormatInfo &
+ operator=( VkPhysicalDeviceExternalImageFormatInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceExternalImageFormatInfo const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceExternalImageFormatInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceExternalImageFormatInfo &
+ setHandleType( VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType_ ) VULKAN_HPP_NOEXCEPT
+ {
+ handleType = handleType_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceExternalImageFormatInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceExternalImageFormatInfo *>( this );
+ }
+
+ operator VkPhysicalDeviceExternalImageFormatInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceExternalImageFormatInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceExternalImageFormatInfo const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceExternalImageFormatInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( handleType == rhs.handleType );
+ }
+
+ bool operator!=( PhysicalDeviceExternalImageFormatInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceExternalImageFormatInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType =
+ VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits::eOpaqueFd;
+ };
+ static_assert( sizeof( PhysicalDeviceExternalImageFormatInfo ) == sizeof( VkPhysicalDeviceExternalImageFormatInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceExternalImageFormatInfo>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceExternalImageFormatInfo>
+ {
+ using Type = PhysicalDeviceExternalImageFormatInfo;
+ };
+ using PhysicalDeviceExternalImageFormatInfoKHR = PhysicalDeviceExternalImageFormatInfo;
+
+ struct PhysicalDeviceExternalMemoryHostPropertiesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceExternalMemoryHostPropertiesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceExternalMemoryHostPropertiesEXT(
+ VULKAN_HPP_NAMESPACE::DeviceSize minImportedHostPointerAlignment_ = {} ) VULKAN_HPP_NOEXCEPT
+ : minImportedHostPointerAlignment( minImportedHostPointerAlignment_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceExternalMemoryHostPropertiesEXT(
+ PhysicalDeviceExternalMemoryHostPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceExternalMemoryHostPropertiesEXT( VkPhysicalDeviceExternalMemoryHostPropertiesEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceExternalMemoryHostPropertiesEXT(
+ *reinterpret_cast<PhysicalDeviceExternalMemoryHostPropertiesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceExternalMemoryHostPropertiesEXT &
+ operator=( PhysicalDeviceExternalMemoryHostPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceExternalMemoryHostPropertiesEXT &
+ operator=( VkPhysicalDeviceExternalMemoryHostPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceExternalMemoryHostPropertiesEXT const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDeviceExternalMemoryHostPropertiesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceExternalMemoryHostPropertiesEXT *>( this );
+ }
+
+ operator VkPhysicalDeviceExternalMemoryHostPropertiesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceExternalMemoryHostPropertiesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceExternalMemoryHostPropertiesEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceExternalMemoryHostPropertiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( minImportedHostPointerAlignment == rhs.minImportedHostPointerAlignment );
+ }
+
+ bool operator!=( PhysicalDeviceExternalMemoryHostPropertiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceExternalMemoryHostPropertiesEXT;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize minImportedHostPointerAlignment = {};
+ };
+ static_assert( sizeof( PhysicalDeviceExternalMemoryHostPropertiesEXT ) ==
+ sizeof( VkPhysicalDeviceExternalMemoryHostPropertiesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceExternalMemoryHostPropertiesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceExternalMemoryHostPropertiesEXT>
+ {
+ using Type = PhysicalDeviceExternalMemoryHostPropertiesEXT;
+ };
+
+ struct PhysicalDeviceExternalSemaphoreInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceExternalSemaphoreInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceExternalSemaphoreInfo(
+ VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits handleType_ =
+ VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits::eOpaqueFd ) VULKAN_HPP_NOEXCEPT
+ : handleType( handleType_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceExternalSemaphoreInfo( PhysicalDeviceExternalSemaphoreInfo const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceExternalSemaphoreInfo( VkPhysicalDeviceExternalSemaphoreInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceExternalSemaphoreInfo( *reinterpret_cast<PhysicalDeviceExternalSemaphoreInfo const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceExternalSemaphoreInfo &
+ operator=( PhysicalDeviceExternalSemaphoreInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceExternalSemaphoreInfo &
+ operator=( VkPhysicalDeviceExternalSemaphoreInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceExternalSemaphoreInfo const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceExternalSemaphoreInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceExternalSemaphoreInfo &
+ setHandleType( VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits handleType_ ) VULKAN_HPP_NOEXCEPT
+ {
+ handleType = handleType_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceExternalSemaphoreInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceExternalSemaphoreInfo *>( this );
+ }
+
+ operator VkPhysicalDeviceExternalSemaphoreInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceExternalSemaphoreInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceExternalSemaphoreInfo const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceExternalSemaphoreInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( handleType == rhs.handleType );
+ }
+
+ bool operator!=( PhysicalDeviceExternalSemaphoreInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceExternalSemaphoreInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits handleType =
+ VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits::eOpaqueFd;
+ };
+ static_assert( sizeof( PhysicalDeviceExternalSemaphoreInfo ) == sizeof( VkPhysicalDeviceExternalSemaphoreInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceExternalSemaphoreInfo>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceExternalSemaphoreInfo>
+ {
+ using Type = PhysicalDeviceExternalSemaphoreInfo;
+ };
+ using PhysicalDeviceExternalSemaphoreInfoKHR = PhysicalDeviceExternalSemaphoreInfo;
+
+ struct PhysicalDeviceFeatures2
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceFeatures2;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ PhysicalDeviceFeatures2( VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures features_ = {} ) VULKAN_HPP_NOEXCEPT
+ : features( features_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceFeatures2( PhysicalDeviceFeatures2 const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceFeatures2( VkPhysicalDeviceFeatures2 const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceFeatures2( *reinterpret_cast<PhysicalDeviceFeatures2 const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures2 &
+ operator=( PhysicalDeviceFeatures2 const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceFeatures2 & operator=( VkPhysicalDeviceFeatures2 const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures2 const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceFeatures2 & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceFeatures2 &
+ setFeatures( VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures const & features_ ) VULKAN_HPP_NOEXCEPT
+ {
+ features = features_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceFeatures2 const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceFeatures2 *>( this );
+ }
+
+ operator VkPhysicalDeviceFeatures2 &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceFeatures2 *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceFeatures2 const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceFeatures2 const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( features == rhs.features );
+ }
+
+ bool operator!=( PhysicalDeviceFeatures2 const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceFeatures2;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures features = {};
+ };
+ static_assert( sizeof( PhysicalDeviceFeatures2 ) == sizeof( VkPhysicalDeviceFeatures2 ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceFeatures2>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceFeatures2>
+ {
+ using Type = PhysicalDeviceFeatures2;
+ };
+ using PhysicalDeviceFeatures2KHR = PhysicalDeviceFeatures2;
+
+ struct PhysicalDeviceFloatControlsProperties
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceFloatControlsProperties;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceFloatControlsProperties(
+ VULKAN_HPP_NAMESPACE::ShaderFloatControlsIndependence denormBehaviorIndependence_ =
+ VULKAN_HPP_NAMESPACE::ShaderFloatControlsIndependence::e32BitOnly,
+ VULKAN_HPP_NAMESPACE::ShaderFloatControlsIndependence roundingModeIndependence_ =
+ VULKAN_HPP_NAMESPACE::ShaderFloatControlsIndependence::e32BitOnly,
+ VULKAN_HPP_NAMESPACE::Bool32 shaderSignedZeroInfNanPreserveFloat16_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderSignedZeroInfNanPreserveFloat32_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderSignedZeroInfNanPreserveFloat64_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderDenormPreserveFloat16_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderDenormPreserveFloat32_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderDenormPreserveFloat64_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderDenormFlushToZeroFloat16_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderDenormFlushToZeroFloat32_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderDenormFlushToZeroFloat64_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTEFloat16_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTEFloat32_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTEFloat64_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTZFloat16_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTZFloat32_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTZFloat64_ = {} ) VULKAN_HPP_NOEXCEPT
+ : denormBehaviorIndependence( denormBehaviorIndependence_ )
+ , roundingModeIndependence( roundingModeIndependence_ )
+ , shaderSignedZeroInfNanPreserveFloat16( shaderSignedZeroInfNanPreserveFloat16_ )
+ , shaderSignedZeroInfNanPreserveFloat32( shaderSignedZeroInfNanPreserveFloat32_ )
+ , shaderSignedZeroInfNanPreserveFloat64( shaderSignedZeroInfNanPreserveFloat64_ )
+ , shaderDenormPreserveFloat16( shaderDenormPreserveFloat16_ )
+ , shaderDenormPreserveFloat32( shaderDenormPreserveFloat32_ )
+ , shaderDenormPreserveFloat64( shaderDenormPreserveFloat64_ )
+ , shaderDenormFlushToZeroFloat16( shaderDenormFlushToZeroFloat16_ )
+ , shaderDenormFlushToZeroFloat32( shaderDenormFlushToZeroFloat32_ )
+ , shaderDenormFlushToZeroFloat64( shaderDenormFlushToZeroFloat64_ )
+ , shaderRoundingModeRTEFloat16( shaderRoundingModeRTEFloat16_ )
+ , shaderRoundingModeRTEFloat32( shaderRoundingModeRTEFloat32_ )
+ , shaderRoundingModeRTEFloat64( shaderRoundingModeRTEFloat64_ )
+ , shaderRoundingModeRTZFloat16( shaderRoundingModeRTZFloat16_ )
+ , shaderRoundingModeRTZFloat32( shaderRoundingModeRTZFloat32_ )
+ , shaderRoundingModeRTZFloat64( shaderRoundingModeRTZFloat64_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceFloatControlsProperties( PhysicalDeviceFloatControlsProperties const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceFloatControlsProperties( VkPhysicalDeviceFloatControlsProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceFloatControlsProperties(
+ *reinterpret_cast<PhysicalDeviceFloatControlsProperties const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFloatControlsProperties &
+ operator=( PhysicalDeviceFloatControlsProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceFloatControlsProperties &
+ operator=( VkPhysicalDeviceFloatControlsProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceFloatControlsProperties const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDeviceFloatControlsProperties const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceFloatControlsProperties *>( this );
+ }
+
+ operator VkPhysicalDeviceFloatControlsProperties &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceFloatControlsProperties *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceFloatControlsProperties const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceFloatControlsProperties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( denormBehaviorIndependence == rhs.denormBehaviorIndependence ) &&
+ ( roundingModeIndependence == rhs.roundingModeIndependence ) &&
+ ( shaderSignedZeroInfNanPreserveFloat16 == rhs.shaderSignedZeroInfNanPreserveFloat16 ) &&
+ ( shaderSignedZeroInfNanPreserveFloat32 == rhs.shaderSignedZeroInfNanPreserveFloat32 ) &&
+ ( shaderSignedZeroInfNanPreserveFloat64 == rhs.shaderSignedZeroInfNanPreserveFloat64 ) &&
+ ( shaderDenormPreserveFloat16 == rhs.shaderDenormPreserveFloat16 ) &&
+ ( shaderDenormPreserveFloat32 == rhs.shaderDenormPreserveFloat32 ) &&
+ ( shaderDenormPreserveFloat64 == rhs.shaderDenormPreserveFloat64 ) &&
+ ( shaderDenormFlushToZeroFloat16 == rhs.shaderDenormFlushToZeroFloat16 ) &&
+ ( shaderDenormFlushToZeroFloat32 == rhs.shaderDenormFlushToZeroFloat32 ) &&
+ ( shaderDenormFlushToZeroFloat64 == rhs.shaderDenormFlushToZeroFloat64 ) &&
+ ( shaderRoundingModeRTEFloat16 == rhs.shaderRoundingModeRTEFloat16 ) &&
+ ( shaderRoundingModeRTEFloat32 == rhs.shaderRoundingModeRTEFloat32 ) &&
+ ( shaderRoundingModeRTEFloat64 == rhs.shaderRoundingModeRTEFloat64 ) &&
+ ( shaderRoundingModeRTZFloat16 == rhs.shaderRoundingModeRTZFloat16 ) &&
+ ( shaderRoundingModeRTZFloat32 == rhs.shaderRoundingModeRTZFloat32 ) &&
+ ( shaderRoundingModeRTZFloat64 == rhs.shaderRoundingModeRTZFloat64 );
+ }
+
+ bool operator!=( PhysicalDeviceFloatControlsProperties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceFloatControlsProperties;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ShaderFloatControlsIndependence denormBehaviorIndependence =
+ VULKAN_HPP_NAMESPACE::ShaderFloatControlsIndependence::e32BitOnly;
+ VULKAN_HPP_NAMESPACE::ShaderFloatControlsIndependence roundingModeIndependence =
+ VULKAN_HPP_NAMESPACE::ShaderFloatControlsIndependence::e32BitOnly;
+ VULKAN_HPP_NAMESPACE::Bool32 shaderSignedZeroInfNanPreserveFloat16 = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderSignedZeroInfNanPreserveFloat32 = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderSignedZeroInfNanPreserveFloat64 = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderDenormPreserveFloat16 = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderDenormPreserveFloat32 = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderDenormPreserveFloat64 = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderDenormFlushToZeroFloat16 = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderDenormFlushToZeroFloat32 = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderDenormFlushToZeroFloat64 = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTEFloat16 = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTEFloat32 = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTEFloat64 = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTZFloat16 = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTZFloat32 = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTZFloat64 = {};
+ };
+ static_assert( sizeof( PhysicalDeviceFloatControlsProperties ) == sizeof( VkPhysicalDeviceFloatControlsProperties ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceFloatControlsProperties>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceFloatControlsProperties>
+ {
+ using Type = PhysicalDeviceFloatControlsProperties;
+ };
+ using PhysicalDeviceFloatControlsPropertiesKHR = PhysicalDeviceFloatControlsProperties;
+
+ struct PhysicalDeviceFragmentDensityMap2FeaturesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceFragmentDensityMap2FeaturesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentDensityMap2FeaturesEXT(
+ VULKAN_HPP_NAMESPACE::Bool32 fragmentDensityMapDeferred_ = {} ) VULKAN_HPP_NOEXCEPT
+ : fragmentDensityMapDeferred( fragmentDensityMapDeferred_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentDensityMap2FeaturesEXT(
+ PhysicalDeviceFragmentDensityMap2FeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceFragmentDensityMap2FeaturesEXT( VkPhysicalDeviceFragmentDensityMap2FeaturesEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceFragmentDensityMap2FeaturesEXT(
+ *reinterpret_cast<PhysicalDeviceFragmentDensityMap2FeaturesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFragmentDensityMap2FeaturesEXT &
+ operator=( PhysicalDeviceFragmentDensityMap2FeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceFragmentDensityMap2FeaturesEXT &
+ operator=( VkPhysicalDeviceFragmentDensityMap2FeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentDensityMap2FeaturesEXT const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceFragmentDensityMap2FeaturesEXT & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceFragmentDensityMap2FeaturesEXT &
+ setFragmentDensityMapDeferred( VULKAN_HPP_NAMESPACE::Bool32 fragmentDensityMapDeferred_ ) VULKAN_HPP_NOEXCEPT
+ {
+ fragmentDensityMapDeferred = fragmentDensityMapDeferred_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceFragmentDensityMap2FeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceFragmentDensityMap2FeaturesEXT *>( this );
+ }
+
+ operator VkPhysicalDeviceFragmentDensityMap2FeaturesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceFragmentDensityMap2FeaturesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceFragmentDensityMap2FeaturesEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceFragmentDensityMap2FeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( fragmentDensityMapDeferred == rhs.fragmentDensityMapDeferred );
+ }
+
+ bool operator!=( PhysicalDeviceFragmentDensityMap2FeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceFragmentDensityMap2FeaturesEXT;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 fragmentDensityMapDeferred = {};
+ };
+ static_assert( sizeof( PhysicalDeviceFragmentDensityMap2FeaturesEXT ) ==
+ sizeof( VkPhysicalDeviceFragmentDensityMap2FeaturesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceFragmentDensityMap2FeaturesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceFragmentDensityMap2FeaturesEXT>
+ {
+ using Type = PhysicalDeviceFragmentDensityMap2FeaturesEXT;
+ };
+
+ struct PhysicalDeviceFragmentDensityMap2PropertiesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceFragmentDensityMap2PropertiesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentDensityMap2PropertiesEXT(
+ VULKAN_HPP_NAMESPACE::Bool32 subsampledLoads_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 subsampledCoarseReconstructionEarlyAccess_ = {},
+ uint32_t maxSubsampledArrayLayers_ = {},
+ uint32_t maxDescriptorSetSubsampledSamplers_ = {} ) VULKAN_HPP_NOEXCEPT
+ : subsampledLoads( subsampledLoads_ )
+ , subsampledCoarseReconstructionEarlyAccess( subsampledCoarseReconstructionEarlyAccess_ )
+ , maxSubsampledArrayLayers( maxSubsampledArrayLayers_ )
+ , maxDescriptorSetSubsampledSamplers( maxDescriptorSetSubsampledSamplers_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentDensityMap2PropertiesEXT(
+ PhysicalDeviceFragmentDensityMap2PropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceFragmentDensityMap2PropertiesEXT( VkPhysicalDeviceFragmentDensityMap2PropertiesEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceFragmentDensityMap2PropertiesEXT(
+ *reinterpret_cast<PhysicalDeviceFragmentDensityMap2PropertiesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFragmentDensityMap2PropertiesEXT &
+ operator=( PhysicalDeviceFragmentDensityMap2PropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceFragmentDensityMap2PropertiesEXT &
+ operator=( VkPhysicalDeviceFragmentDensityMap2PropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentDensityMap2PropertiesEXT const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDeviceFragmentDensityMap2PropertiesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceFragmentDensityMap2PropertiesEXT *>( this );
+ }
+
+ operator VkPhysicalDeviceFragmentDensityMap2PropertiesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceFragmentDensityMap2PropertiesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceFragmentDensityMap2PropertiesEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceFragmentDensityMap2PropertiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( subsampledLoads == rhs.subsampledLoads ) &&
+ ( subsampledCoarseReconstructionEarlyAccess == rhs.subsampledCoarseReconstructionEarlyAccess ) &&
+ ( maxSubsampledArrayLayers == rhs.maxSubsampledArrayLayers ) &&
+ ( maxDescriptorSetSubsampledSamplers == rhs.maxDescriptorSetSubsampledSamplers );
+ }
+
+ bool operator!=( PhysicalDeviceFragmentDensityMap2PropertiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceFragmentDensityMap2PropertiesEXT;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 subsampledLoads = {};
+ VULKAN_HPP_NAMESPACE::Bool32 subsampledCoarseReconstructionEarlyAccess = {};
+ uint32_t maxSubsampledArrayLayers = {};
+ uint32_t maxDescriptorSetSubsampledSamplers = {};
+ };
+ static_assert( sizeof( PhysicalDeviceFragmentDensityMap2PropertiesEXT ) ==
+ sizeof( VkPhysicalDeviceFragmentDensityMap2PropertiesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceFragmentDensityMap2PropertiesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceFragmentDensityMap2PropertiesEXT>
+ {
+ using Type = PhysicalDeviceFragmentDensityMap2PropertiesEXT;
+ };
+
+ struct PhysicalDeviceFragmentDensityMapFeaturesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceFragmentDensityMapFeaturesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentDensityMapFeaturesEXT(
+ VULKAN_HPP_NAMESPACE::Bool32 fragmentDensityMap_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 fragmentDensityMapDynamic_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 fragmentDensityMapNonSubsampledImages_ = {} ) VULKAN_HPP_NOEXCEPT
+ : fragmentDensityMap( fragmentDensityMap_ )
+ , fragmentDensityMapDynamic( fragmentDensityMapDynamic_ )
+ , fragmentDensityMapNonSubsampledImages( fragmentDensityMapNonSubsampledImages_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentDensityMapFeaturesEXT(
+ PhysicalDeviceFragmentDensityMapFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceFragmentDensityMapFeaturesEXT( VkPhysicalDeviceFragmentDensityMapFeaturesEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceFragmentDensityMapFeaturesEXT(
+ *reinterpret_cast<PhysicalDeviceFragmentDensityMapFeaturesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFragmentDensityMapFeaturesEXT &
+ operator=( PhysicalDeviceFragmentDensityMapFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceFragmentDensityMapFeaturesEXT &
+ operator=( VkPhysicalDeviceFragmentDensityMapFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentDensityMapFeaturesEXT const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceFragmentDensityMapFeaturesEXT & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceFragmentDensityMapFeaturesEXT &
+ setFragmentDensityMap( VULKAN_HPP_NAMESPACE::Bool32 fragmentDensityMap_ ) VULKAN_HPP_NOEXCEPT
+ {
+ fragmentDensityMap = fragmentDensityMap_;
+ return *this;
+ }
+
+ PhysicalDeviceFragmentDensityMapFeaturesEXT &
+ setFragmentDensityMapDynamic( VULKAN_HPP_NAMESPACE::Bool32 fragmentDensityMapDynamic_ ) VULKAN_HPP_NOEXCEPT
+ {
+ fragmentDensityMapDynamic = fragmentDensityMapDynamic_;
+ return *this;
+ }
+
+ PhysicalDeviceFragmentDensityMapFeaturesEXT & setFragmentDensityMapNonSubsampledImages(
+ VULKAN_HPP_NAMESPACE::Bool32 fragmentDensityMapNonSubsampledImages_ ) VULKAN_HPP_NOEXCEPT
+ {
+ fragmentDensityMapNonSubsampledImages = fragmentDensityMapNonSubsampledImages_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceFragmentDensityMapFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceFragmentDensityMapFeaturesEXT *>( this );
+ }
+
+ operator VkPhysicalDeviceFragmentDensityMapFeaturesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceFragmentDensityMapFeaturesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceFragmentDensityMapFeaturesEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceFragmentDensityMapFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( fragmentDensityMap == rhs.fragmentDensityMap ) &&
+ ( fragmentDensityMapDynamic == rhs.fragmentDensityMapDynamic ) &&
+ ( fragmentDensityMapNonSubsampledImages == rhs.fragmentDensityMapNonSubsampledImages );
+ }
+
+ bool operator!=( PhysicalDeviceFragmentDensityMapFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceFragmentDensityMapFeaturesEXT;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 fragmentDensityMap = {};
+ VULKAN_HPP_NAMESPACE::Bool32 fragmentDensityMapDynamic = {};
+ VULKAN_HPP_NAMESPACE::Bool32 fragmentDensityMapNonSubsampledImages = {};
+ };
+ static_assert( sizeof( PhysicalDeviceFragmentDensityMapFeaturesEXT ) ==
+ sizeof( VkPhysicalDeviceFragmentDensityMapFeaturesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceFragmentDensityMapFeaturesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceFragmentDensityMapFeaturesEXT>
+ {
+ using Type = PhysicalDeviceFragmentDensityMapFeaturesEXT;
+ };
+
+ struct PhysicalDeviceFragmentDensityMapPropertiesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceFragmentDensityMapPropertiesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentDensityMapPropertiesEXT(
+ VULKAN_HPP_NAMESPACE::Extent2D minFragmentDensityTexelSize_ = {},
+ VULKAN_HPP_NAMESPACE::Extent2D maxFragmentDensityTexelSize_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 fragmentDensityInvocations_ = {} ) VULKAN_HPP_NOEXCEPT
+ : minFragmentDensityTexelSize( minFragmentDensityTexelSize_ )
+ , maxFragmentDensityTexelSize( maxFragmentDensityTexelSize_ )
+ , fragmentDensityInvocations( fragmentDensityInvocations_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentDensityMapPropertiesEXT(
+ PhysicalDeviceFragmentDensityMapPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceFragmentDensityMapPropertiesEXT( VkPhysicalDeviceFragmentDensityMapPropertiesEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceFragmentDensityMapPropertiesEXT(
+ *reinterpret_cast<PhysicalDeviceFragmentDensityMapPropertiesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFragmentDensityMapPropertiesEXT &
+ operator=( PhysicalDeviceFragmentDensityMapPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceFragmentDensityMapPropertiesEXT &
+ operator=( VkPhysicalDeviceFragmentDensityMapPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentDensityMapPropertiesEXT const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDeviceFragmentDensityMapPropertiesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceFragmentDensityMapPropertiesEXT *>( this );
+ }
+
+ operator VkPhysicalDeviceFragmentDensityMapPropertiesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceFragmentDensityMapPropertiesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceFragmentDensityMapPropertiesEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceFragmentDensityMapPropertiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( minFragmentDensityTexelSize == rhs.minFragmentDensityTexelSize ) &&
+ ( maxFragmentDensityTexelSize == rhs.maxFragmentDensityTexelSize ) &&
+ ( fragmentDensityInvocations == rhs.fragmentDensityInvocations );
+ }
+
+ bool operator!=( PhysicalDeviceFragmentDensityMapPropertiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceFragmentDensityMapPropertiesEXT;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Extent2D minFragmentDensityTexelSize = {};
+ VULKAN_HPP_NAMESPACE::Extent2D maxFragmentDensityTexelSize = {};
+ VULKAN_HPP_NAMESPACE::Bool32 fragmentDensityInvocations = {};
+ };
+ static_assert( sizeof( PhysicalDeviceFragmentDensityMapPropertiesEXT ) ==
+ sizeof( VkPhysicalDeviceFragmentDensityMapPropertiesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceFragmentDensityMapPropertiesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceFragmentDensityMapPropertiesEXT>
+ {
+ using Type = PhysicalDeviceFragmentDensityMapPropertiesEXT;
+ };
+
+ struct PhysicalDeviceFragmentShaderBarycentricFeaturesNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceFragmentShaderBarycentricFeaturesNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentShaderBarycentricFeaturesNV(
+ VULKAN_HPP_NAMESPACE::Bool32 fragmentShaderBarycentric_ = {} ) VULKAN_HPP_NOEXCEPT
+ : fragmentShaderBarycentric( fragmentShaderBarycentric_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentShaderBarycentricFeaturesNV(
+ PhysicalDeviceFragmentShaderBarycentricFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceFragmentShaderBarycentricFeaturesNV( VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceFragmentShaderBarycentricFeaturesNV(
+ *reinterpret_cast<PhysicalDeviceFragmentShaderBarycentricFeaturesNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFragmentShaderBarycentricFeaturesNV &
+ operator=( PhysicalDeviceFragmentShaderBarycentricFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceFragmentShaderBarycentricFeaturesNV &
+ operator=( VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this =
+ *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentShaderBarycentricFeaturesNV const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceFragmentShaderBarycentricFeaturesNV & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceFragmentShaderBarycentricFeaturesNV &
+ setFragmentShaderBarycentric( VULKAN_HPP_NAMESPACE::Bool32 fragmentShaderBarycentric_ ) VULKAN_HPP_NOEXCEPT
+ {
+ fragmentShaderBarycentric = fragmentShaderBarycentric_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV *>( this );
+ }
+
+ operator VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceFragmentShaderBarycentricFeaturesNV const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceFragmentShaderBarycentricFeaturesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( fragmentShaderBarycentric == rhs.fragmentShaderBarycentric );
+ }
+
+ bool operator!=( PhysicalDeviceFragmentShaderBarycentricFeaturesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceFragmentShaderBarycentricFeaturesNV;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 fragmentShaderBarycentric = {};
+ };
+ static_assert( sizeof( PhysicalDeviceFragmentShaderBarycentricFeaturesNV ) ==
+ sizeof( VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceFragmentShaderBarycentricFeaturesNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceFragmentShaderBarycentricFeaturesNV>
+ {
+ using Type = PhysicalDeviceFragmentShaderBarycentricFeaturesNV;
+ };
+
+ struct PhysicalDeviceFragmentShaderInterlockFeaturesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceFragmentShaderInterlockFeaturesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentShaderInterlockFeaturesEXT(
+ VULKAN_HPP_NAMESPACE::Bool32 fragmentShaderSampleInterlock_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 fragmentShaderPixelInterlock_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 fragmentShaderShadingRateInterlock_ = {} ) VULKAN_HPP_NOEXCEPT
+ : fragmentShaderSampleInterlock( fragmentShaderSampleInterlock_ )
+ , fragmentShaderPixelInterlock( fragmentShaderPixelInterlock_ )
+ , fragmentShaderShadingRateInterlock( fragmentShaderShadingRateInterlock_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentShaderInterlockFeaturesEXT(
+ PhysicalDeviceFragmentShaderInterlockFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceFragmentShaderInterlockFeaturesEXT( VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceFragmentShaderInterlockFeaturesEXT(
+ *reinterpret_cast<PhysicalDeviceFragmentShaderInterlockFeaturesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFragmentShaderInterlockFeaturesEXT &
+ operator=( PhysicalDeviceFragmentShaderInterlockFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceFragmentShaderInterlockFeaturesEXT &
+ operator=( VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentShaderInterlockFeaturesEXT const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceFragmentShaderInterlockFeaturesEXT & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceFragmentShaderInterlockFeaturesEXT & setFragmentShaderSampleInterlock(
+ VULKAN_HPP_NAMESPACE::Bool32 fragmentShaderSampleInterlock_ ) VULKAN_HPP_NOEXCEPT
+ {
+ fragmentShaderSampleInterlock = fragmentShaderSampleInterlock_;
+ return *this;
+ }
+
+ PhysicalDeviceFragmentShaderInterlockFeaturesEXT &
+ setFragmentShaderPixelInterlock( VULKAN_HPP_NAMESPACE::Bool32 fragmentShaderPixelInterlock_ ) VULKAN_HPP_NOEXCEPT
+ {
+ fragmentShaderPixelInterlock = fragmentShaderPixelInterlock_;
+ return *this;
+ }
+
+ PhysicalDeviceFragmentShaderInterlockFeaturesEXT & setFragmentShaderShadingRateInterlock(
+ VULKAN_HPP_NAMESPACE::Bool32 fragmentShaderShadingRateInterlock_ ) VULKAN_HPP_NOEXCEPT
+ {
+ fragmentShaderShadingRateInterlock = fragmentShaderShadingRateInterlock_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT *>( this );
+ }
+
+ operator VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceFragmentShaderInterlockFeaturesEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceFragmentShaderInterlockFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( fragmentShaderSampleInterlock == rhs.fragmentShaderSampleInterlock ) &&
+ ( fragmentShaderPixelInterlock == rhs.fragmentShaderPixelInterlock ) &&
+ ( fragmentShaderShadingRateInterlock == rhs.fragmentShaderShadingRateInterlock );
+ }
+
+ bool operator!=( PhysicalDeviceFragmentShaderInterlockFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceFragmentShaderInterlockFeaturesEXT;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 fragmentShaderSampleInterlock = {};
+ VULKAN_HPP_NAMESPACE::Bool32 fragmentShaderPixelInterlock = {};
+ VULKAN_HPP_NAMESPACE::Bool32 fragmentShaderShadingRateInterlock = {};
+ };
+ static_assert( sizeof( PhysicalDeviceFragmentShaderInterlockFeaturesEXT ) ==
+ sizeof( VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceFragmentShaderInterlockFeaturesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceFragmentShaderInterlockFeaturesEXT>
+ {
+ using Type = PhysicalDeviceFragmentShaderInterlockFeaturesEXT;
+ };
+
+ struct PhysicalDeviceFragmentShadingRateEnumsFeaturesNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceFragmentShadingRateEnumsFeaturesNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentShadingRateEnumsFeaturesNV(
+ VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateEnums_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 supersampleFragmentShadingRates_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 noInvocationFragmentShadingRates_ = {} ) VULKAN_HPP_NOEXCEPT
+ : fragmentShadingRateEnums( fragmentShadingRateEnums_ )
+ , supersampleFragmentShadingRates( supersampleFragmentShadingRates_ )
+ , noInvocationFragmentShadingRates( noInvocationFragmentShadingRates_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentShadingRateEnumsFeaturesNV(
+ PhysicalDeviceFragmentShadingRateEnumsFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceFragmentShadingRateEnumsFeaturesNV( VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceFragmentShadingRateEnumsFeaturesNV(
+ *reinterpret_cast<PhysicalDeviceFragmentShadingRateEnumsFeaturesNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFragmentShadingRateEnumsFeaturesNV &
+ operator=( PhysicalDeviceFragmentShadingRateEnumsFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceFragmentShadingRateEnumsFeaturesNV &
+ operator=( VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentShadingRateEnumsFeaturesNV const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceFragmentShadingRateEnumsFeaturesNV & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceFragmentShadingRateEnumsFeaturesNV &
+ setFragmentShadingRateEnums( VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateEnums_ ) VULKAN_HPP_NOEXCEPT
+ {
+ fragmentShadingRateEnums = fragmentShadingRateEnums_;
+ return *this;
+ }
+
+ PhysicalDeviceFragmentShadingRateEnumsFeaturesNV & setSupersampleFragmentShadingRates(
+ VULKAN_HPP_NAMESPACE::Bool32 supersampleFragmentShadingRates_ ) VULKAN_HPP_NOEXCEPT
+ {
+ supersampleFragmentShadingRates = supersampleFragmentShadingRates_;
+ return *this;
+ }
+
+ PhysicalDeviceFragmentShadingRateEnumsFeaturesNV & setNoInvocationFragmentShadingRates(
+ VULKAN_HPP_NAMESPACE::Bool32 noInvocationFragmentShadingRates_ ) VULKAN_HPP_NOEXCEPT
+ {
+ noInvocationFragmentShadingRates = noInvocationFragmentShadingRates_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV *>( this );
+ }
+
+ operator VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceFragmentShadingRateEnumsFeaturesNV const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceFragmentShadingRateEnumsFeaturesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( fragmentShadingRateEnums == rhs.fragmentShadingRateEnums ) &&
+ ( supersampleFragmentShadingRates == rhs.supersampleFragmentShadingRates ) &&
+ ( noInvocationFragmentShadingRates == rhs.noInvocationFragmentShadingRates );
+ }
+
+ bool operator!=( PhysicalDeviceFragmentShadingRateEnumsFeaturesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceFragmentShadingRateEnumsFeaturesNV;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateEnums = {};
+ VULKAN_HPP_NAMESPACE::Bool32 supersampleFragmentShadingRates = {};
+ VULKAN_HPP_NAMESPACE::Bool32 noInvocationFragmentShadingRates = {};
+ };
+ static_assert( sizeof( PhysicalDeviceFragmentShadingRateEnumsFeaturesNV ) ==
+ sizeof( VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceFragmentShadingRateEnumsFeaturesNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceFragmentShadingRateEnumsFeaturesNV>
+ {
+ using Type = PhysicalDeviceFragmentShadingRateEnumsFeaturesNV;
+ };
+
+ struct PhysicalDeviceFragmentShadingRateEnumsPropertiesNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceFragmentShadingRateEnumsPropertiesNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentShadingRateEnumsPropertiesNV(
+ VULKAN_HPP_NAMESPACE::SampleCountFlagBits maxFragmentShadingRateInvocationCount_ =
+ VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1 ) VULKAN_HPP_NOEXCEPT
+ : maxFragmentShadingRateInvocationCount( maxFragmentShadingRateInvocationCount_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentShadingRateEnumsPropertiesNV(
+ PhysicalDeviceFragmentShadingRateEnumsPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceFragmentShadingRateEnumsPropertiesNV(
+ VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceFragmentShadingRateEnumsPropertiesNV(
+ *reinterpret_cast<PhysicalDeviceFragmentShadingRateEnumsPropertiesNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFragmentShadingRateEnumsPropertiesNV &
+ operator=( PhysicalDeviceFragmentShadingRateEnumsPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceFragmentShadingRateEnumsPropertiesNV &
+ operator=( VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this =
+ *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentShadingRateEnumsPropertiesNV const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceFragmentShadingRateEnumsPropertiesNV & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceFragmentShadingRateEnumsPropertiesNV & setMaxFragmentShadingRateInvocationCount(
+ VULKAN_HPP_NAMESPACE::SampleCountFlagBits maxFragmentShadingRateInvocationCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ maxFragmentShadingRateInvocationCount = maxFragmentShadingRateInvocationCount_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV *>( this );
+ }
+
+ operator VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceFragmentShadingRateEnumsPropertiesNV const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceFragmentShadingRateEnumsPropertiesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( maxFragmentShadingRateInvocationCount == rhs.maxFragmentShadingRateInvocationCount );
+ }
+
+ bool operator!=( PhysicalDeviceFragmentShadingRateEnumsPropertiesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceFragmentShadingRateEnumsPropertiesNV;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::SampleCountFlagBits maxFragmentShadingRateInvocationCount =
+ VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1;
+ };
+ static_assert( sizeof( PhysicalDeviceFragmentShadingRateEnumsPropertiesNV ) ==
+ sizeof( VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceFragmentShadingRateEnumsPropertiesNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceFragmentShadingRateEnumsPropertiesNV>
+ {
+ using Type = PhysicalDeviceFragmentShadingRateEnumsPropertiesNV;
+ };
+
+ struct PhysicalDeviceFragmentShadingRateFeaturesKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceFragmentShadingRateFeaturesKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentShadingRateFeaturesKHR(
+ VULKAN_HPP_NAMESPACE::Bool32 pipelineFragmentShadingRate_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 primitiveFragmentShadingRate_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 attachmentFragmentShadingRate_ = {} ) VULKAN_HPP_NOEXCEPT
+ : pipelineFragmentShadingRate( pipelineFragmentShadingRate_ )
+ , primitiveFragmentShadingRate( primitiveFragmentShadingRate_ )
+ , attachmentFragmentShadingRate( attachmentFragmentShadingRate_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentShadingRateFeaturesKHR(
+ PhysicalDeviceFragmentShadingRateFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceFragmentShadingRateFeaturesKHR( VkPhysicalDeviceFragmentShadingRateFeaturesKHR const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceFragmentShadingRateFeaturesKHR(
+ *reinterpret_cast<PhysicalDeviceFragmentShadingRateFeaturesKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFragmentShadingRateFeaturesKHR &
+ operator=( PhysicalDeviceFragmentShadingRateFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceFragmentShadingRateFeaturesKHR &
+ operator=( VkPhysicalDeviceFragmentShadingRateFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentShadingRateFeaturesKHR const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceFragmentShadingRateFeaturesKHR & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceFragmentShadingRateFeaturesKHR &
+ setPipelineFragmentShadingRate( VULKAN_HPP_NAMESPACE::Bool32 pipelineFragmentShadingRate_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pipelineFragmentShadingRate = pipelineFragmentShadingRate_;
+ return *this;
+ }
+
+ PhysicalDeviceFragmentShadingRateFeaturesKHR &
+ setPrimitiveFragmentShadingRate( VULKAN_HPP_NAMESPACE::Bool32 primitiveFragmentShadingRate_ ) VULKAN_HPP_NOEXCEPT
+ {
+ primitiveFragmentShadingRate = primitiveFragmentShadingRate_;
+ return *this;
+ }
+
+ PhysicalDeviceFragmentShadingRateFeaturesKHR & setAttachmentFragmentShadingRate(
+ VULKAN_HPP_NAMESPACE::Bool32 attachmentFragmentShadingRate_ ) VULKAN_HPP_NOEXCEPT
+ {
+ attachmentFragmentShadingRate = attachmentFragmentShadingRate_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceFragmentShadingRateFeaturesKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceFragmentShadingRateFeaturesKHR *>( this );
+ }
+
+ operator VkPhysicalDeviceFragmentShadingRateFeaturesKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceFragmentShadingRateFeaturesKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceFragmentShadingRateFeaturesKHR const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceFragmentShadingRateFeaturesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( pipelineFragmentShadingRate == rhs.pipelineFragmentShadingRate ) &&
+ ( primitiveFragmentShadingRate == rhs.primitiveFragmentShadingRate ) &&
+ ( attachmentFragmentShadingRate == rhs.attachmentFragmentShadingRate );
+ }
+
+ bool operator!=( PhysicalDeviceFragmentShadingRateFeaturesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceFragmentShadingRateFeaturesKHR;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 pipelineFragmentShadingRate = {};
+ VULKAN_HPP_NAMESPACE::Bool32 primitiveFragmentShadingRate = {};
+ VULKAN_HPP_NAMESPACE::Bool32 attachmentFragmentShadingRate = {};
+ };
+ static_assert( sizeof( PhysicalDeviceFragmentShadingRateFeaturesKHR ) ==
+ sizeof( VkPhysicalDeviceFragmentShadingRateFeaturesKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceFragmentShadingRateFeaturesKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceFragmentShadingRateFeaturesKHR>
+ {
+ using Type = PhysicalDeviceFragmentShadingRateFeaturesKHR;
+ };
+
+ struct PhysicalDeviceFragmentShadingRateKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceFragmentShadingRateKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ PhysicalDeviceFragmentShadingRateKHR( VULKAN_HPP_NAMESPACE::SampleCountFlags sampleCounts_ = {},
+ VULKAN_HPP_NAMESPACE::Extent2D fragmentSize_ = {} ) VULKAN_HPP_NOEXCEPT
+ : sampleCounts( sampleCounts_ )
+ , fragmentSize( fragmentSize_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentShadingRateKHR( PhysicalDeviceFragmentShadingRateKHR const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceFragmentShadingRateKHR( VkPhysicalDeviceFragmentShadingRateKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceFragmentShadingRateKHR( *reinterpret_cast<PhysicalDeviceFragmentShadingRateKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFragmentShadingRateKHR &
+ operator=( PhysicalDeviceFragmentShadingRateKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceFragmentShadingRateKHR &
+ operator=( VkPhysicalDeviceFragmentShadingRateKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentShadingRateKHR const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDeviceFragmentShadingRateKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceFragmentShadingRateKHR *>( this );
+ }
+
+ operator VkPhysicalDeviceFragmentShadingRateKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceFragmentShadingRateKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceFragmentShadingRateKHR const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceFragmentShadingRateKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( sampleCounts == rhs.sampleCounts ) &&
+ ( fragmentSize == rhs.fragmentSize );
+ }
+
+ bool operator!=( PhysicalDeviceFragmentShadingRateKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceFragmentShadingRateKHR;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::SampleCountFlags sampleCounts = {};
+ VULKAN_HPP_NAMESPACE::Extent2D fragmentSize = {};
+ };
+ static_assert( sizeof( PhysicalDeviceFragmentShadingRateKHR ) == sizeof( VkPhysicalDeviceFragmentShadingRateKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceFragmentShadingRateKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceFragmentShadingRateKHR>
+ {
+ using Type = PhysicalDeviceFragmentShadingRateKHR;
+ };
+
+ struct PhysicalDeviceFragmentShadingRatePropertiesKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceFragmentShadingRatePropertiesKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentShadingRatePropertiesKHR(
+ VULKAN_HPP_NAMESPACE::Extent2D minFragmentShadingRateAttachmentTexelSize_ = {},
+ VULKAN_HPP_NAMESPACE::Extent2D maxFragmentShadingRateAttachmentTexelSize_ = {},
+ uint32_t maxFragmentShadingRateAttachmentTexelSizeAspectRatio_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 primitiveFragmentShadingRateWithMultipleViewports_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 layeredShadingRateAttachments_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateNonTrivialCombinerOps_ = {},
+ VULKAN_HPP_NAMESPACE::Extent2D maxFragmentSize_ = {},
+ uint32_t maxFragmentSizeAspectRatio_ = {},
+ uint32_t maxFragmentShadingRateCoverageSamples_ = {},
+ VULKAN_HPP_NAMESPACE::SampleCountFlagBits maxFragmentShadingRateRasterizationSamples_ =
+ VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1,
+ VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateWithShaderDepthStencilWrites_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateWithSampleMask_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateWithShaderSampleMask_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateWithConservativeRasterization_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateWithFragmentShaderInterlock_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateWithCustomSampleLocations_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateStrictMultiplyCombiner_ = {} ) VULKAN_HPP_NOEXCEPT
+ : minFragmentShadingRateAttachmentTexelSize( minFragmentShadingRateAttachmentTexelSize_ )
+ , maxFragmentShadingRateAttachmentTexelSize( maxFragmentShadingRateAttachmentTexelSize_ )
+ , maxFragmentShadingRateAttachmentTexelSizeAspectRatio( maxFragmentShadingRateAttachmentTexelSizeAspectRatio_ )
+ , primitiveFragmentShadingRateWithMultipleViewports( primitiveFragmentShadingRateWithMultipleViewports_ )
+ , layeredShadingRateAttachments( layeredShadingRateAttachments_ )
+ , fragmentShadingRateNonTrivialCombinerOps( fragmentShadingRateNonTrivialCombinerOps_ )
+ , maxFragmentSize( maxFragmentSize_ )
+ , maxFragmentSizeAspectRatio( maxFragmentSizeAspectRatio_ )
+ , maxFragmentShadingRateCoverageSamples( maxFragmentShadingRateCoverageSamples_ )
+ , maxFragmentShadingRateRasterizationSamples( maxFragmentShadingRateRasterizationSamples_ )
+ , fragmentShadingRateWithShaderDepthStencilWrites( fragmentShadingRateWithShaderDepthStencilWrites_ )
+ , fragmentShadingRateWithSampleMask( fragmentShadingRateWithSampleMask_ )
+ , fragmentShadingRateWithShaderSampleMask( fragmentShadingRateWithShaderSampleMask_ )
+ , fragmentShadingRateWithConservativeRasterization( fragmentShadingRateWithConservativeRasterization_ )
+ , fragmentShadingRateWithFragmentShaderInterlock( fragmentShadingRateWithFragmentShaderInterlock_ )
+ , fragmentShadingRateWithCustomSampleLocations( fragmentShadingRateWithCustomSampleLocations_ )
+ , fragmentShadingRateStrictMultiplyCombiner( fragmentShadingRateStrictMultiplyCombiner_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentShadingRatePropertiesKHR(
+ PhysicalDeviceFragmentShadingRatePropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceFragmentShadingRatePropertiesKHR( VkPhysicalDeviceFragmentShadingRatePropertiesKHR const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceFragmentShadingRatePropertiesKHR(
+ *reinterpret_cast<PhysicalDeviceFragmentShadingRatePropertiesKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFragmentShadingRatePropertiesKHR &
+ operator=( PhysicalDeviceFragmentShadingRatePropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceFragmentShadingRatePropertiesKHR &
+ operator=( VkPhysicalDeviceFragmentShadingRatePropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentShadingRatePropertiesKHR const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDeviceFragmentShadingRatePropertiesKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceFragmentShadingRatePropertiesKHR *>( this );
+ }
+
+ operator VkPhysicalDeviceFragmentShadingRatePropertiesKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceFragmentShadingRatePropertiesKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceFragmentShadingRatePropertiesKHR const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceFragmentShadingRatePropertiesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( minFragmentShadingRateAttachmentTexelSize == rhs.minFragmentShadingRateAttachmentTexelSize ) &&
+ ( maxFragmentShadingRateAttachmentTexelSize == rhs.maxFragmentShadingRateAttachmentTexelSize ) &&
+ ( maxFragmentShadingRateAttachmentTexelSizeAspectRatio ==
+ rhs.maxFragmentShadingRateAttachmentTexelSizeAspectRatio ) &&
+ ( primitiveFragmentShadingRateWithMultipleViewports ==
+ rhs.primitiveFragmentShadingRateWithMultipleViewports ) &&
+ ( layeredShadingRateAttachments == rhs.layeredShadingRateAttachments ) &&
+ ( fragmentShadingRateNonTrivialCombinerOps == rhs.fragmentShadingRateNonTrivialCombinerOps ) &&
+ ( maxFragmentSize == rhs.maxFragmentSize ) &&
+ ( maxFragmentSizeAspectRatio == rhs.maxFragmentSizeAspectRatio ) &&
+ ( maxFragmentShadingRateCoverageSamples == rhs.maxFragmentShadingRateCoverageSamples ) &&
+ ( maxFragmentShadingRateRasterizationSamples == rhs.maxFragmentShadingRateRasterizationSamples ) &&
+ ( fragmentShadingRateWithShaderDepthStencilWrites ==
+ rhs.fragmentShadingRateWithShaderDepthStencilWrites ) &&
+ ( fragmentShadingRateWithSampleMask == rhs.fragmentShadingRateWithSampleMask ) &&
+ ( fragmentShadingRateWithShaderSampleMask == rhs.fragmentShadingRateWithShaderSampleMask ) &&
+ ( fragmentShadingRateWithConservativeRasterization ==
+ rhs.fragmentShadingRateWithConservativeRasterization ) &&
+ ( fragmentShadingRateWithFragmentShaderInterlock == rhs.fragmentShadingRateWithFragmentShaderInterlock ) &&
+ ( fragmentShadingRateWithCustomSampleLocations == rhs.fragmentShadingRateWithCustomSampleLocations ) &&
+ ( fragmentShadingRateStrictMultiplyCombiner == rhs.fragmentShadingRateStrictMultiplyCombiner );
+ }
+
+ bool operator!=( PhysicalDeviceFragmentShadingRatePropertiesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceFragmentShadingRatePropertiesKHR;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Extent2D minFragmentShadingRateAttachmentTexelSize = {};
+ VULKAN_HPP_NAMESPACE::Extent2D maxFragmentShadingRateAttachmentTexelSize = {};
+ uint32_t maxFragmentShadingRateAttachmentTexelSizeAspectRatio = {};
+ VULKAN_HPP_NAMESPACE::Bool32 primitiveFragmentShadingRateWithMultipleViewports = {};
+ VULKAN_HPP_NAMESPACE::Bool32 layeredShadingRateAttachments = {};
+ VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateNonTrivialCombinerOps = {};
+ VULKAN_HPP_NAMESPACE::Extent2D maxFragmentSize = {};
+ uint32_t maxFragmentSizeAspectRatio = {};
+ uint32_t maxFragmentShadingRateCoverageSamples = {};
+ VULKAN_HPP_NAMESPACE::SampleCountFlagBits maxFragmentShadingRateRasterizationSamples =
+ VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1;
+ VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateWithShaderDepthStencilWrites = {};
+ VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateWithSampleMask = {};
+ VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateWithShaderSampleMask = {};
+ VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateWithConservativeRasterization = {};
+ VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateWithFragmentShaderInterlock = {};
+ VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateWithCustomSampleLocations = {};
+ VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateStrictMultiplyCombiner = {};
+ };
+ static_assert( sizeof( PhysicalDeviceFragmentShadingRatePropertiesKHR ) ==
+ sizeof( VkPhysicalDeviceFragmentShadingRatePropertiesKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceFragmentShadingRatePropertiesKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceFragmentShadingRatePropertiesKHR>
+ {
+ using Type = PhysicalDeviceFragmentShadingRatePropertiesKHR;
+ };
+
+ struct PhysicalDeviceGlobalPriorityQueryFeaturesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceGlobalPriorityQueryFeaturesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceGlobalPriorityQueryFeaturesEXT(
+ VULKAN_HPP_NAMESPACE::Bool32 globalPriorityQuery_ = {} ) VULKAN_HPP_NOEXCEPT
+ : globalPriorityQuery( globalPriorityQuery_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceGlobalPriorityQueryFeaturesEXT(
+ PhysicalDeviceGlobalPriorityQueryFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceGlobalPriorityQueryFeaturesEXT( VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceGlobalPriorityQueryFeaturesEXT(
+ *reinterpret_cast<PhysicalDeviceGlobalPriorityQueryFeaturesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceGlobalPriorityQueryFeaturesEXT &
+ operator=( PhysicalDeviceGlobalPriorityQueryFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceGlobalPriorityQueryFeaturesEXT &
+ operator=( VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceGlobalPriorityQueryFeaturesEXT const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceGlobalPriorityQueryFeaturesEXT & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceGlobalPriorityQueryFeaturesEXT &
+ setGlobalPriorityQuery( VULKAN_HPP_NAMESPACE::Bool32 globalPriorityQuery_ ) VULKAN_HPP_NOEXCEPT
+ {
+ globalPriorityQuery = globalPriorityQuery_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT *>( this );
+ }
+
+ operator VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceGlobalPriorityQueryFeaturesEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceGlobalPriorityQueryFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( globalPriorityQuery == rhs.globalPriorityQuery );
+ }
+
+ bool operator!=( PhysicalDeviceGlobalPriorityQueryFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceGlobalPriorityQueryFeaturesEXT;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 globalPriorityQuery = {};
+ };
+ static_assert( sizeof( PhysicalDeviceGlobalPriorityQueryFeaturesEXT ) ==
+ sizeof( VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceGlobalPriorityQueryFeaturesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceGlobalPriorityQueryFeaturesEXT>
+ {
+ using Type = PhysicalDeviceGlobalPriorityQueryFeaturesEXT;
+ };
+
+ struct PhysicalDeviceGroupProperties
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceGroupProperties;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceGroupProperties(
+ uint32_t physicalDeviceCount_ = {},
+ std::array<VULKAN_HPP_NAMESPACE::PhysicalDevice, VK_MAX_DEVICE_GROUP_SIZE> const & physicalDevices_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 subsetAllocation_ = {} ) VULKAN_HPP_NOEXCEPT
+ : physicalDeviceCount( physicalDeviceCount_ )
+ , physicalDevices( physicalDevices_ )
+ , subsetAllocation( subsetAllocation_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR_14
+ PhysicalDeviceGroupProperties( PhysicalDeviceGroupProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceGroupProperties( VkPhysicalDeviceGroupProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceGroupProperties( *reinterpret_cast<PhysicalDeviceGroupProperties const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceGroupProperties &
+ operator=( PhysicalDeviceGroupProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceGroupProperties & operator=( VkPhysicalDeviceGroupProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceGroupProperties const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDeviceGroupProperties const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceGroupProperties *>( this );
+ }
+
+ operator VkPhysicalDeviceGroupProperties &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceGroupProperties *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceGroupProperties const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceGroupProperties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( physicalDeviceCount == rhs.physicalDeviceCount ) &&
+ ( physicalDevices == rhs.physicalDevices ) && ( subsetAllocation == rhs.subsetAllocation );
+ }
+
+ bool operator!=( PhysicalDeviceGroupProperties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceGroupProperties;
+ void * pNext = {};
+ uint32_t physicalDeviceCount = {};
+ VULKAN_HPP_NAMESPACE::ArrayWrapper1D<VULKAN_HPP_NAMESPACE::PhysicalDevice, VK_MAX_DEVICE_GROUP_SIZE>
+ physicalDevices = {};
+ VULKAN_HPP_NAMESPACE::Bool32 subsetAllocation = {};
+ };
+ static_assert( sizeof( PhysicalDeviceGroupProperties ) == sizeof( VkPhysicalDeviceGroupProperties ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceGroupProperties>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceGroupProperties>
+ {
+ using Type = PhysicalDeviceGroupProperties;
+ };
+ using PhysicalDeviceGroupPropertiesKHR = PhysicalDeviceGroupProperties;
+
+ struct PhysicalDeviceHostQueryResetFeatures
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceHostQueryResetFeatures;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ PhysicalDeviceHostQueryResetFeatures( VULKAN_HPP_NAMESPACE::Bool32 hostQueryReset_ = {} ) VULKAN_HPP_NOEXCEPT
+ : hostQueryReset( hostQueryReset_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceHostQueryResetFeatures( PhysicalDeviceHostQueryResetFeatures const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceHostQueryResetFeatures( VkPhysicalDeviceHostQueryResetFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceHostQueryResetFeatures( *reinterpret_cast<PhysicalDeviceHostQueryResetFeatures const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceHostQueryResetFeatures &
+ operator=( PhysicalDeviceHostQueryResetFeatures const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceHostQueryResetFeatures &
+ operator=( VkPhysicalDeviceHostQueryResetFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceHostQueryResetFeatures const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceHostQueryResetFeatures & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceHostQueryResetFeatures &
+ setHostQueryReset( VULKAN_HPP_NAMESPACE::Bool32 hostQueryReset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ hostQueryReset = hostQueryReset_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceHostQueryResetFeatures const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceHostQueryResetFeatures *>( this );
+ }
+
+ operator VkPhysicalDeviceHostQueryResetFeatures &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceHostQueryResetFeatures *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceHostQueryResetFeatures const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceHostQueryResetFeatures const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( hostQueryReset == rhs.hostQueryReset );
+ }
+
+ bool operator!=( PhysicalDeviceHostQueryResetFeatures const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceHostQueryResetFeatures;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 hostQueryReset = {};
+ };
+ static_assert( sizeof( PhysicalDeviceHostQueryResetFeatures ) == sizeof( VkPhysicalDeviceHostQueryResetFeatures ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceHostQueryResetFeatures>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceHostQueryResetFeatures>
+ {
+ using Type = PhysicalDeviceHostQueryResetFeatures;
+ };
+ using PhysicalDeviceHostQueryResetFeaturesEXT = PhysicalDeviceHostQueryResetFeatures;
+
+ struct PhysicalDeviceIDProperties
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceIdProperties;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR_14
+ PhysicalDeviceIDProperties( std::array<uint8_t, VK_UUID_SIZE> const & deviceUUID_ = {},
+ std::array<uint8_t, VK_UUID_SIZE> const & driverUUID_ = {},
+ std::array<uint8_t, VK_LUID_SIZE> const & deviceLUID_ = {},
+ uint32_t deviceNodeMask_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 deviceLUIDValid_ = {} ) VULKAN_HPP_NOEXCEPT
+ : deviceUUID( deviceUUID_ )
+ , driverUUID( driverUUID_ )
+ , deviceLUID( deviceLUID_ )
+ , deviceNodeMask( deviceNodeMask_ )
+ , deviceLUIDValid( deviceLUIDValid_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR_14
+ PhysicalDeviceIDProperties( PhysicalDeviceIDProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceIDProperties( VkPhysicalDeviceIDProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceIDProperties( *reinterpret_cast<PhysicalDeviceIDProperties const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceIDProperties &
+ operator=( PhysicalDeviceIDProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceIDProperties & operator=( VkPhysicalDeviceIDProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceIDProperties const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDeviceIDProperties const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceIDProperties *>( this );
+ }
+
+ operator VkPhysicalDeviceIDProperties &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceIDProperties *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceIDProperties const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceIDProperties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( deviceUUID == rhs.deviceUUID ) &&
+ ( driverUUID == rhs.driverUUID ) && ( deviceLUID == rhs.deviceLUID ) &&
+ ( deviceNodeMask == rhs.deviceNodeMask ) && ( deviceLUIDValid == rhs.deviceLUIDValid );
+ }
+
+ bool operator!=( PhysicalDeviceIDProperties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceIdProperties;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, VK_UUID_SIZE> deviceUUID = {};
+ VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, VK_UUID_SIZE> driverUUID = {};
+ VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, VK_LUID_SIZE> deviceLUID = {};
+ uint32_t deviceNodeMask = {};
+ VULKAN_HPP_NAMESPACE::Bool32 deviceLUIDValid = {};
+ };
+ static_assert( sizeof( PhysicalDeviceIDProperties ) == sizeof( VkPhysicalDeviceIDProperties ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceIDProperties>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceIdProperties>
+ {
+ using Type = PhysicalDeviceIDProperties;
+ };
+ using PhysicalDeviceIDPropertiesKHR = PhysicalDeviceIDProperties;
+
+ struct PhysicalDeviceImageDrmFormatModifierInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceImageDrmFormatModifierInfoEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceImageDrmFormatModifierInfoEXT(
+ uint64_t drmFormatModifier_ = {},
+ VULKAN_HPP_NAMESPACE::SharingMode sharingMode_ = VULKAN_HPP_NAMESPACE::SharingMode::eExclusive,
+ uint32_t queueFamilyIndexCount_ = {},
+ const uint32_t * pQueueFamilyIndices_ = {} ) VULKAN_HPP_NOEXCEPT
+ : drmFormatModifier( drmFormatModifier_ )
+ , sharingMode( sharingMode_ )
+ , queueFamilyIndexCount( queueFamilyIndexCount_ )
+ , pQueueFamilyIndices( pQueueFamilyIndices_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceImageDrmFormatModifierInfoEXT(
+ PhysicalDeviceImageDrmFormatModifierInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceImageDrmFormatModifierInfoEXT( VkPhysicalDeviceImageDrmFormatModifierInfoEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceImageDrmFormatModifierInfoEXT(
+ *reinterpret_cast<PhysicalDeviceImageDrmFormatModifierInfoEXT const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ PhysicalDeviceImageDrmFormatModifierInfoEXT(
+ uint64_t drmFormatModifier_,
+ VULKAN_HPP_NAMESPACE::SharingMode sharingMode_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & queueFamilyIndices_ )
+ : drmFormatModifier( drmFormatModifier_ )
+ , sharingMode( sharingMode_ )
+ , queueFamilyIndexCount( static_cast<uint32_t>( queueFamilyIndices_.size() ) )
+ , pQueueFamilyIndices( queueFamilyIndices_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceImageDrmFormatModifierInfoEXT &
+ operator=( PhysicalDeviceImageDrmFormatModifierInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceImageDrmFormatModifierInfoEXT &
+ operator=( VkPhysicalDeviceImageDrmFormatModifierInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceImageDrmFormatModifierInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceImageDrmFormatModifierInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceImageDrmFormatModifierInfoEXT &
+ setDrmFormatModifier( uint64_t drmFormatModifier_ ) VULKAN_HPP_NOEXCEPT
+ {
+ drmFormatModifier = drmFormatModifier_;
+ return *this;
+ }
+
+ PhysicalDeviceImageDrmFormatModifierInfoEXT &
+ setSharingMode( VULKAN_HPP_NAMESPACE::SharingMode sharingMode_ ) VULKAN_HPP_NOEXCEPT
+ {
+ sharingMode = sharingMode_;
+ return *this;
+ }
+
+ PhysicalDeviceImageDrmFormatModifierInfoEXT &
+ setQueueFamilyIndexCount( uint32_t queueFamilyIndexCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ queueFamilyIndexCount = queueFamilyIndexCount_;
+ return *this;
+ }
+
+ PhysicalDeviceImageDrmFormatModifierInfoEXT &
+ setPQueueFamilyIndices( const uint32_t * pQueueFamilyIndices_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pQueueFamilyIndices = pQueueFamilyIndices_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ PhysicalDeviceImageDrmFormatModifierInfoEXT & setQueueFamilyIndices(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & queueFamilyIndices_ ) VULKAN_HPP_NOEXCEPT
+ {
+ queueFamilyIndexCount = static_cast<uint32_t>( queueFamilyIndices_.size() );
+ pQueueFamilyIndices = queueFamilyIndices_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkPhysicalDeviceImageDrmFormatModifierInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceImageDrmFormatModifierInfoEXT *>( this );
+ }
+
+ operator VkPhysicalDeviceImageDrmFormatModifierInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceImageDrmFormatModifierInfoEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceImageDrmFormatModifierInfoEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceImageDrmFormatModifierInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( drmFormatModifier == rhs.drmFormatModifier ) &&
+ ( sharingMode == rhs.sharingMode ) && ( queueFamilyIndexCount == rhs.queueFamilyIndexCount ) &&
+ ( pQueueFamilyIndices == rhs.pQueueFamilyIndices );
+ }
+
+ bool operator!=( PhysicalDeviceImageDrmFormatModifierInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceImageDrmFormatModifierInfoEXT;
+ const void * pNext = {};
+ uint64_t drmFormatModifier = {};
+ VULKAN_HPP_NAMESPACE::SharingMode sharingMode = VULKAN_HPP_NAMESPACE::SharingMode::eExclusive;
+ uint32_t queueFamilyIndexCount = {};
+ const uint32_t * pQueueFamilyIndices = {};
+ };
+ static_assert( sizeof( PhysicalDeviceImageDrmFormatModifierInfoEXT ) ==
+ sizeof( VkPhysicalDeviceImageDrmFormatModifierInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceImageDrmFormatModifierInfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceImageDrmFormatModifierInfoEXT>
+ {
+ using Type = PhysicalDeviceImageDrmFormatModifierInfoEXT;
+ };
+
+ struct PhysicalDeviceImageFormatInfo2
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceImageFormatInfo2;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceImageFormatInfo2(
+ VULKAN_HPP_NAMESPACE::Format format_ = VULKAN_HPP_NAMESPACE::Format::eUndefined,
+ VULKAN_HPP_NAMESPACE::ImageType type_ = VULKAN_HPP_NAMESPACE::ImageType::e1D,
+ VULKAN_HPP_NAMESPACE::ImageTiling tiling_ = VULKAN_HPP_NAMESPACE::ImageTiling::eOptimal,
+ VULKAN_HPP_NAMESPACE::ImageUsageFlags usage_ = {},
+ VULKAN_HPP_NAMESPACE::ImageCreateFlags flags_ = {} ) VULKAN_HPP_NOEXCEPT
+ : format( format_ )
+ , type( type_ )
+ , tiling( tiling_ )
+ , usage( usage_ )
+ , flags( flags_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ PhysicalDeviceImageFormatInfo2( PhysicalDeviceImageFormatInfo2 const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceImageFormatInfo2( VkPhysicalDeviceImageFormatInfo2 const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceImageFormatInfo2( *reinterpret_cast<PhysicalDeviceImageFormatInfo2 const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceImageFormatInfo2 &
+ operator=( PhysicalDeviceImageFormatInfo2 const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceImageFormatInfo2 & operator=( VkPhysicalDeviceImageFormatInfo2 const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceImageFormatInfo2 const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceImageFormatInfo2 & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceImageFormatInfo2 & setFormat( VULKAN_HPP_NAMESPACE::Format format_ ) VULKAN_HPP_NOEXCEPT
+ {
+ format = format_;
+ return *this;
+ }
+
+ PhysicalDeviceImageFormatInfo2 & setType( VULKAN_HPP_NAMESPACE::ImageType type_ ) VULKAN_HPP_NOEXCEPT
+ {
+ type = type_;
+ return *this;
+ }
+
+ PhysicalDeviceImageFormatInfo2 & setTiling( VULKAN_HPP_NAMESPACE::ImageTiling tiling_ ) VULKAN_HPP_NOEXCEPT
+ {
+ tiling = tiling_;
+ return *this;
+ }
+
+ PhysicalDeviceImageFormatInfo2 & setUsage( VULKAN_HPP_NAMESPACE::ImageUsageFlags usage_ ) VULKAN_HPP_NOEXCEPT
+ {
+ usage = usage_;
+ return *this;
+ }
+
+ PhysicalDeviceImageFormatInfo2 & setFlags( VULKAN_HPP_NAMESPACE::ImageCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceImageFormatInfo2 const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceImageFormatInfo2 *>( this );
+ }
+
+ operator VkPhysicalDeviceImageFormatInfo2 &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceImageFormatInfo2 *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceImageFormatInfo2 const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceImageFormatInfo2 const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( format == rhs.format ) && ( type == rhs.type ) &&
+ ( tiling == rhs.tiling ) && ( usage == rhs.usage ) && ( flags == rhs.flags );
+ }
+
+ bool operator!=( PhysicalDeviceImageFormatInfo2 const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceImageFormatInfo2;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Format format = VULKAN_HPP_NAMESPACE::Format::eUndefined;
+ VULKAN_HPP_NAMESPACE::ImageType type = VULKAN_HPP_NAMESPACE::ImageType::e1D;
+ VULKAN_HPP_NAMESPACE::ImageTiling tiling = VULKAN_HPP_NAMESPACE::ImageTiling::eOptimal;
+ VULKAN_HPP_NAMESPACE::ImageUsageFlags usage = {};
+ VULKAN_HPP_NAMESPACE::ImageCreateFlags flags = {};
+ };
+ static_assert( sizeof( PhysicalDeviceImageFormatInfo2 ) == sizeof( VkPhysicalDeviceImageFormatInfo2 ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceImageFormatInfo2>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceImageFormatInfo2>
+ {
+ using Type = PhysicalDeviceImageFormatInfo2;
+ };
+ using PhysicalDeviceImageFormatInfo2KHR = PhysicalDeviceImageFormatInfo2;
+
+ struct PhysicalDeviceImageRobustnessFeaturesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceImageRobustnessFeaturesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceImageRobustnessFeaturesEXT(
+ VULKAN_HPP_NAMESPACE::Bool32 robustImageAccess_ = {} ) VULKAN_HPP_NOEXCEPT
+ : robustImageAccess( robustImageAccess_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceImageRobustnessFeaturesEXT(
+ PhysicalDeviceImageRobustnessFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceImageRobustnessFeaturesEXT( VkPhysicalDeviceImageRobustnessFeaturesEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceImageRobustnessFeaturesEXT(
+ *reinterpret_cast<PhysicalDeviceImageRobustnessFeaturesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceImageRobustnessFeaturesEXT &
+ operator=( PhysicalDeviceImageRobustnessFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceImageRobustnessFeaturesEXT &
+ operator=( VkPhysicalDeviceImageRobustnessFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceImageRobustnessFeaturesEXT const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceImageRobustnessFeaturesEXT & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceImageRobustnessFeaturesEXT &
+ setRobustImageAccess( VULKAN_HPP_NAMESPACE::Bool32 robustImageAccess_ ) VULKAN_HPP_NOEXCEPT
+ {
+ robustImageAccess = robustImageAccess_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceImageRobustnessFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceImageRobustnessFeaturesEXT *>( this );
+ }
+
+ operator VkPhysicalDeviceImageRobustnessFeaturesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceImageRobustnessFeaturesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceImageRobustnessFeaturesEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceImageRobustnessFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( robustImageAccess == rhs.robustImageAccess );
+ }
+
+ bool operator!=( PhysicalDeviceImageRobustnessFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceImageRobustnessFeaturesEXT;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 robustImageAccess = {};
+ };
+ static_assert( sizeof( PhysicalDeviceImageRobustnessFeaturesEXT ) ==
+ sizeof( VkPhysicalDeviceImageRobustnessFeaturesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceImageRobustnessFeaturesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceImageRobustnessFeaturesEXT>
+ {
+ using Type = PhysicalDeviceImageRobustnessFeaturesEXT;
+ };
+
+ struct PhysicalDeviceImageViewImageFormatInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceImageViewImageFormatInfoEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ PhysicalDeviceImageViewImageFormatInfoEXT( VULKAN_HPP_NAMESPACE::ImageViewType imageViewType_ =
+ VULKAN_HPP_NAMESPACE::ImageViewType::e1D ) VULKAN_HPP_NOEXCEPT
+ : imageViewType( imageViewType_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceImageViewImageFormatInfoEXT(
+ PhysicalDeviceImageViewImageFormatInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceImageViewImageFormatInfoEXT( VkPhysicalDeviceImageViewImageFormatInfoEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceImageViewImageFormatInfoEXT(
+ *reinterpret_cast<PhysicalDeviceImageViewImageFormatInfoEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceImageViewImageFormatInfoEXT &
+ operator=( PhysicalDeviceImageViewImageFormatInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceImageViewImageFormatInfoEXT &
+ operator=( VkPhysicalDeviceImageViewImageFormatInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceImageViewImageFormatInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceImageViewImageFormatInfoEXT & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceImageViewImageFormatInfoEXT &
+ setImageViewType( VULKAN_HPP_NAMESPACE::ImageViewType imageViewType_ ) VULKAN_HPP_NOEXCEPT
+ {
+ imageViewType = imageViewType_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceImageViewImageFormatInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceImageViewImageFormatInfoEXT *>( this );
+ }
+
+ operator VkPhysicalDeviceImageViewImageFormatInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceImageViewImageFormatInfoEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceImageViewImageFormatInfoEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceImageViewImageFormatInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( imageViewType == rhs.imageViewType );
+ }
+
+ bool operator!=( PhysicalDeviceImageViewImageFormatInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceImageViewImageFormatInfoEXT;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ImageViewType imageViewType = VULKAN_HPP_NAMESPACE::ImageViewType::e1D;
+ };
+ static_assert( sizeof( PhysicalDeviceImageViewImageFormatInfoEXT ) ==
+ sizeof( VkPhysicalDeviceImageViewImageFormatInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceImageViewImageFormatInfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceImageViewImageFormatInfoEXT>
+ {
+ using Type = PhysicalDeviceImageViewImageFormatInfoEXT;
+ };
+
+ struct PhysicalDeviceImagelessFramebufferFeatures
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceImagelessFramebufferFeatures;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceImagelessFramebufferFeatures(
+ VULKAN_HPP_NAMESPACE::Bool32 imagelessFramebuffer_ = {} ) VULKAN_HPP_NOEXCEPT
+ : imagelessFramebuffer( imagelessFramebuffer_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceImagelessFramebufferFeatures(
+ PhysicalDeviceImagelessFramebufferFeatures const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceImagelessFramebufferFeatures( VkPhysicalDeviceImagelessFramebufferFeatures const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceImagelessFramebufferFeatures(
+ *reinterpret_cast<PhysicalDeviceImagelessFramebufferFeatures const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceImagelessFramebufferFeatures &
+ operator=( PhysicalDeviceImagelessFramebufferFeatures const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceImagelessFramebufferFeatures &
+ operator=( VkPhysicalDeviceImagelessFramebufferFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceImagelessFramebufferFeatures const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceImagelessFramebufferFeatures & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceImagelessFramebufferFeatures &
+ setImagelessFramebuffer( VULKAN_HPP_NAMESPACE::Bool32 imagelessFramebuffer_ ) VULKAN_HPP_NOEXCEPT
+ {
+ imagelessFramebuffer = imagelessFramebuffer_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceImagelessFramebufferFeatures const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceImagelessFramebufferFeatures *>( this );
+ }
+
+ operator VkPhysicalDeviceImagelessFramebufferFeatures &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceImagelessFramebufferFeatures *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceImagelessFramebufferFeatures const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceImagelessFramebufferFeatures const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( imagelessFramebuffer == rhs.imagelessFramebuffer );
+ }
+
+ bool operator!=( PhysicalDeviceImagelessFramebufferFeatures const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceImagelessFramebufferFeatures;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 imagelessFramebuffer = {};
+ };
+ static_assert( sizeof( PhysicalDeviceImagelessFramebufferFeatures ) ==
+ sizeof( VkPhysicalDeviceImagelessFramebufferFeatures ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceImagelessFramebufferFeatures>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceImagelessFramebufferFeatures>
+ {
+ using Type = PhysicalDeviceImagelessFramebufferFeatures;
+ };
+ using PhysicalDeviceImagelessFramebufferFeaturesKHR = PhysicalDeviceImagelessFramebufferFeatures;
+
+ struct PhysicalDeviceIndexTypeUint8FeaturesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceIndexTypeUint8FeaturesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ PhysicalDeviceIndexTypeUint8FeaturesEXT( VULKAN_HPP_NAMESPACE::Bool32 indexTypeUint8_ = {} ) VULKAN_HPP_NOEXCEPT
+ : indexTypeUint8( indexTypeUint8_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceIndexTypeUint8FeaturesEXT( PhysicalDeviceIndexTypeUint8FeaturesEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceIndexTypeUint8FeaturesEXT( VkPhysicalDeviceIndexTypeUint8FeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceIndexTypeUint8FeaturesEXT(
+ *reinterpret_cast<PhysicalDeviceIndexTypeUint8FeaturesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceIndexTypeUint8FeaturesEXT &
+ operator=( PhysicalDeviceIndexTypeUint8FeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceIndexTypeUint8FeaturesEXT &
+ operator=( VkPhysicalDeviceIndexTypeUint8FeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceIndexTypeUint8FeaturesEXT const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceIndexTypeUint8FeaturesEXT & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceIndexTypeUint8FeaturesEXT &
+ setIndexTypeUint8( VULKAN_HPP_NAMESPACE::Bool32 indexTypeUint8_ ) VULKAN_HPP_NOEXCEPT
+ {
+ indexTypeUint8 = indexTypeUint8_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceIndexTypeUint8FeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceIndexTypeUint8FeaturesEXT *>( this );
+ }
+
+ operator VkPhysicalDeviceIndexTypeUint8FeaturesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceIndexTypeUint8FeaturesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceIndexTypeUint8FeaturesEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceIndexTypeUint8FeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( indexTypeUint8 == rhs.indexTypeUint8 );
+ }
+
+ bool operator!=( PhysicalDeviceIndexTypeUint8FeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceIndexTypeUint8FeaturesEXT;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 indexTypeUint8 = {};
+ };
+ static_assert( sizeof( PhysicalDeviceIndexTypeUint8FeaturesEXT ) ==
+ sizeof( VkPhysicalDeviceIndexTypeUint8FeaturesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceIndexTypeUint8FeaturesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceIndexTypeUint8FeaturesEXT>
+ {
+ using Type = PhysicalDeviceIndexTypeUint8FeaturesEXT;
+ };
+
+ struct PhysicalDeviceInheritedViewportScissorFeaturesNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceInheritedViewportScissorFeaturesNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceInheritedViewportScissorFeaturesNV(
+ VULKAN_HPP_NAMESPACE::Bool32 inheritedViewportScissor2D_ = {} ) VULKAN_HPP_NOEXCEPT
+ : inheritedViewportScissor2D( inheritedViewportScissor2D_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceInheritedViewportScissorFeaturesNV(
+ PhysicalDeviceInheritedViewportScissorFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceInheritedViewportScissorFeaturesNV( VkPhysicalDeviceInheritedViewportScissorFeaturesNV const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceInheritedViewportScissorFeaturesNV(
+ *reinterpret_cast<PhysicalDeviceInheritedViewportScissorFeaturesNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceInheritedViewportScissorFeaturesNV &
+ operator=( PhysicalDeviceInheritedViewportScissorFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceInheritedViewportScissorFeaturesNV &
+ operator=( VkPhysicalDeviceInheritedViewportScissorFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceInheritedViewportScissorFeaturesNV const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceInheritedViewportScissorFeaturesNV & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceInheritedViewportScissorFeaturesNV &
+ setInheritedViewportScissor2D( VULKAN_HPP_NAMESPACE::Bool32 inheritedViewportScissor2D_ ) VULKAN_HPP_NOEXCEPT
+ {
+ inheritedViewportScissor2D = inheritedViewportScissor2D_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceInheritedViewportScissorFeaturesNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceInheritedViewportScissorFeaturesNV *>( this );
+ }
+
+ operator VkPhysicalDeviceInheritedViewportScissorFeaturesNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceInheritedViewportScissorFeaturesNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceInheritedViewportScissorFeaturesNV const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceInheritedViewportScissorFeaturesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( inheritedViewportScissor2D == rhs.inheritedViewportScissor2D );
+ }
+
+ bool operator!=( PhysicalDeviceInheritedViewportScissorFeaturesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceInheritedViewportScissorFeaturesNV;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 inheritedViewportScissor2D = {};
+ };
+ static_assert( sizeof( PhysicalDeviceInheritedViewportScissorFeaturesNV ) ==
+ sizeof( VkPhysicalDeviceInheritedViewportScissorFeaturesNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceInheritedViewportScissorFeaturesNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceInheritedViewportScissorFeaturesNV>
+ {
+ using Type = PhysicalDeviceInheritedViewportScissorFeaturesNV;
+ };
+
+ struct PhysicalDeviceInlineUniformBlockFeaturesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceInlineUniformBlockFeaturesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceInlineUniformBlockFeaturesEXT(
+ VULKAN_HPP_NAMESPACE::Bool32 inlineUniformBlock_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingInlineUniformBlockUpdateAfterBind_ = {} ) VULKAN_HPP_NOEXCEPT
+ : inlineUniformBlock( inlineUniformBlock_ )
+ , descriptorBindingInlineUniformBlockUpdateAfterBind( descriptorBindingInlineUniformBlockUpdateAfterBind_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceInlineUniformBlockFeaturesEXT(
+ PhysicalDeviceInlineUniformBlockFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceInlineUniformBlockFeaturesEXT( VkPhysicalDeviceInlineUniformBlockFeaturesEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceInlineUniformBlockFeaturesEXT(
+ *reinterpret_cast<PhysicalDeviceInlineUniformBlockFeaturesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceInlineUniformBlockFeaturesEXT &
+ operator=( PhysicalDeviceInlineUniformBlockFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceInlineUniformBlockFeaturesEXT &
+ operator=( VkPhysicalDeviceInlineUniformBlockFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceInlineUniformBlockFeaturesEXT const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceInlineUniformBlockFeaturesEXT & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceInlineUniformBlockFeaturesEXT &
+ setInlineUniformBlock( VULKAN_HPP_NAMESPACE::Bool32 inlineUniformBlock_ ) VULKAN_HPP_NOEXCEPT
+ {
+ inlineUniformBlock = inlineUniformBlock_;
+ return *this;
+ }
+
+ PhysicalDeviceInlineUniformBlockFeaturesEXT & setDescriptorBindingInlineUniformBlockUpdateAfterBind(
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingInlineUniformBlockUpdateAfterBind_ ) VULKAN_HPP_NOEXCEPT
+ {
+ descriptorBindingInlineUniformBlockUpdateAfterBind = descriptorBindingInlineUniformBlockUpdateAfterBind_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceInlineUniformBlockFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceInlineUniformBlockFeaturesEXT *>( this );
+ }
+
+ operator VkPhysicalDeviceInlineUniformBlockFeaturesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceInlineUniformBlockFeaturesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceInlineUniformBlockFeaturesEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceInlineUniformBlockFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( inlineUniformBlock == rhs.inlineUniformBlock ) &&
+ ( descriptorBindingInlineUniformBlockUpdateAfterBind ==
+ rhs.descriptorBindingInlineUniformBlockUpdateAfterBind );
+ }
+
+ bool operator!=( PhysicalDeviceInlineUniformBlockFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceInlineUniformBlockFeaturesEXT;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 inlineUniformBlock = {};
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingInlineUniformBlockUpdateAfterBind = {};
+ };
+ static_assert( sizeof( PhysicalDeviceInlineUniformBlockFeaturesEXT ) ==
+ sizeof( VkPhysicalDeviceInlineUniformBlockFeaturesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceInlineUniformBlockFeaturesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceInlineUniformBlockFeaturesEXT>
+ {
+ using Type = PhysicalDeviceInlineUniformBlockFeaturesEXT;
+ };
+
+ struct PhysicalDeviceInlineUniformBlockPropertiesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceInlineUniformBlockPropertiesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceInlineUniformBlockPropertiesEXT(
+ uint32_t maxInlineUniformBlockSize_ = {},
+ uint32_t maxPerStageDescriptorInlineUniformBlocks_ = {},
+ uint32_t maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks_ = {},
+ uint32_t maxDescriptorSetInlineUniformBlocks_ = {},
+ uint32_t maxDescriptorSetUpdateAfterBindInlineUniformBlocks_ = {} ) VULKAN_HPP_NOEXCEPT
+ : maxInlineUniformBlockSize( maxInlineUniformBlockSize_ )
+ , maxPerStageDescriptorInlineUniformBlocks( maxPerStageDescriptorInlineUniformBlocks_ )
+ , maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks(
+ maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks_ )
+ , maxDescriptorSetInlineUniformBlocks( maxDescriptorSetInlineUniformBlocks_ )
+ , maxDescriptorSetUpdateAfterBindInlineUniformBlocks( maxDescriptorSetUpdateAfterBindInlineUniformBlocks_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceInlineUniformBlockPropertiesEXT(
+ PhysicalDeviceInlineUniformBlockPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceInlineUniformBlockPropertiesEXT( VkPhysicalDeviceInlineUniformBlockPropertiesEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceInlineUniformBlockPropertiesEXT(
+ *reinterpret_cast<PhysicalDeviceInlineUniformBlockPropertiesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceInlineUniformBlockPropertiesEXT &
+ operator=( PhysicalDeviceInlineUniformBlockPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceInlineUniformBlockPropertiesEXT &
+ operator=( VkPhysicalDeviceInlineUniformBlockPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceInlineUniformBlockPropertiesEXT const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDeviceInlineUniformBlockPropertiesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceInlineUniformBlockPropertiesEXT *>( this );
+ }
+
+ operator VkPhysicalDeviceInlineUniformBlockPropertiesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceInlineUniformBlockPropertiesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceInlineUniformBlockPropertiesEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceInlineUniformBlockPropertiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( maxInlineUniformBlockSize == rhs.maxInlineUniformBlockSize ) &&
+ ( maxPerStageDescriptorInlineUniformBlocks == rhs.maxPerStageDescriptorInlineUniformBlocks ) &&
+ ( maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks ==
+ rhs.maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks ) &&
+ ( maxDescriptorSetInlineUniformBlocks == rhs.maxDescriptorSetInlineUniformBlocks ) &&
+ ( maxDescriptorSetUpdateAfterBindInlineUniformBlocks ==
+ rhs.maxDescriptorSetUpdateAfterBindInlineUniformBlocks );
+ }
+
+ bool operator!=( PhysicalDeviceInlineUniformBlockPropertiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceInlineUniformBlockPropertiesEXT;
+ void * pNext = {};
+ uint32_t maxInlineUniformBlockSize = {};
+ uint32_t maxPerStageDescriptorInlineUniformBlocks = {};
+ uint32_t maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks = {};
+ uint32_t maxDescriptorSetInlineUniformBlocks = {};
+ uint32_t maxDescriptorSetUpdateAfterBindInlineUniformBlocks = {};
+ };
+ static_assert( sizeof( PhysicalDeviceInlineUniformBlockPropertiesEXT ) ==
+ sizeof( VkPhysicalDeviceInlineUniformBlockPropertiesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceInlineUniformBlockPropertiesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceInlineUniformBlockPropertiesEXT>
+ {
+ using Type = PhysicalDeviceInlineUniformBlockPropertiesEXT;
+ };
+
+ struct PhysicalDeviceLimits
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR_14
+ PhysicalDeviceLimits( 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_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize bufferImageGranularity_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize 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_ = {},
+ std::array<uint32_t, 3> const & maxComputeWorkGroupCount_ = {},
+ uint32_t maxComputeWorkGroupInvocations_ = {},
+ std::array<uint32_t, 3> const & maxComputeWorkGroupSize_ = {},
+ uint32_t subPixelPrecisionBits_ = {},
+ uint32_t subTexelPrecisionBits_ = {},
+ uint32_t mipmapPrecisionBits_ = {},
+ uint32_t maxDrawIndexedIndexValue_ = {},
+ uint32_t maxDrawIndirectCount_ = {},
+ float maxSamplerLodBias_ = {},
+ float maxSamplerAnisotropy_ = {},
+ uint32_t maxViewports_ = {},
+ std::array<uint32_t, 2> const & maxViewportDimensions_ = {},
+ std::array<float, 2> const & viewportBoundsRange_ = {},
+ uint32_t viewportSubPixelBits_ = {},
+ size_t minMemoryMapAlignment_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize minTexelBufferOffsetAlignment_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize minUniformBufferOffsetAlignment_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize 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_ = {},
+ VULKAN_HPP_NAMESPACE::SampleCountFlags framebufferColorSampleCounts_ = {},
+ VULKAN_HPP_NAMESPACE::SampleCountFlags framebufferDepthSampleCounts_ = {},
+ VULKAN_HPP_NAMESPACE::SampleCountFlags framebufferStencilSampleCounts_ = {},
+ VULKAN_HPP_NAMESPACE::SampleCountFlags framebufferNoAttachmentsSampleCounts_ = {},
+ uint32_t maxColorAttachments_ = {},
+ VULKAN_HPP_NAMESPACE::SampleCountFlags sampledImageColorSampleCounts_ = {},
+ VULKAN_HPP_NAMESPACE::SampleCountFlags sampledImageIntegerSampleCounts_ = {},
+ VULKAN_HPP_NAMESPACE::SampleCountFlags sampledImageDepthSampleCounts_ = {},
+ VULKAN_HPP_NAMESPACE::SampleCountFlags sampledImageStencilSampleCounts_ = {},
+ VULKAN_HPP_NAMESPACE::SampleCountFlags storageImageSampleCounts_ = {},
+ uint32_t maxSampleMaskWords_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 timestampComputeAndGraphics_ = {},
+ float timestampPeriod_ = {},
+ uint32_t maxClipDistances_ = {},
+ uint32_t maxCullDistances_ = {},
+ uint32_t maxCombinedClipAndCullDistances_ = {},
+ uint32_t discreteQueuePriorities_ = {},
+ std::array<float, 2> const & pointSizeRange_ = {},
+ std::array<float, 2> const & lineWidthRange_ = {},
+ float pointSizeGranularity_ = {},
+ float lineWidthGranularity_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 strictLines_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 standardSampleLocations_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize optimalBufferCopyOffsetAlignment_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize optimalBufferCopyRowPitchAlignment_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize nonCoherentAtomSize_ = {} ) VULKAN_HPP_NOEXCEPT
+ : maxImageDimension1D( maxImageDimension1D_ )
+ , maxImageDimension2D( maxImageDimension2D_ )
+ , maxImageDimension3D( maxImageDimension3D_ )
+ , maxImageDimensionCube( maxImageDimensionCube_ )
+ , maxImageArrayLayers( maxImageArrayLayers_ )
+ , maxTexelBufferElements( maxTexelBufferElements_ )
+ , maxUniformBufferRange( maxUniformBufferRange_ )
+ , maxStorageBufferRange( maxStorageBufferRange_ )
+ , maxPushConstantsSize( maxPushConstantsSize_ )
+ , maxMemoryAllocationCount( maxMemoryAllocationCount_ )
+ , maxSamplerAllocationCount( maxSamplerAllocationCount_ )
+ , bufferImageGranularity( bufferImageGranularity_ )
+ , sparseAddressSpaceSize( sparseAddressSpaceSize_ )
+ , maxBoundDescriptorSets( maxBoundDescriptorSets_ )
+ , maxPerStageDescriptorSamplers( maxPerStageDescriptorSamplers_ )
+ , maxPerStageDescriptorUniformBuffers( maxPerStageDescriptorUniformBuffers_ )
+ , maxPerStageDescriptorStorageBuffers( maxPerStageDescriptorStorageBuffers_ )
+ , maxPerStageDescriptorSampledImages( maxPerStageDescriptorSampledImages_ )
+ , maxPerStageDescriptorStorageImages( maxPerStageDescriptorStorageImages_ )
+ , maxPerStageDescriptorInputAttachments( maxPerStageDescriptorInputAttachments_ )
+ , maxPerStageResources( maxPerStageResources_ )
+ , maxDescriptorSetSamplers( maxDescriptorSetSamplers_ )
+ , maxDescriptorSetUniformBuffers( maxDescriptorSetUniformBuffers_ )
+ , maxDescriptorSetUniformBuffersDynamic( maxDescriptorSetUniformBuffersDynamic_ )
+ , maxDescriptorSetStorageBuffers( maxDescriptorSetStorageBuffers_ )
+ , maxDescriptorSetStorageBuffersDynamic( maxDescriptorSetStorageBuffersDynamic_ )
+ , maxDescriptorSetSampledImages( maxDescriptorSetSampledImages_ )
+ , maxDescriptorSetStorageImages( maxDescriptorSetStorageImages_ )
+ , maxDescriptorSetInputAttachments( maxDescriptorSetInputAttachments_ )
+ , maxVertexInputAttributes( maxVertexInputAttributes_ )
+ , maxVertexInputBindings( maxVertexInputBindings_ )
+ , maxVertexInputAttributeOffset( maxVertexInputAttributeOffset_ )
+ , maxVertexInputBindingStride( maxVertexInputBindingStride_ )
+ , maxVertexOutputComponents( maxVertexOutputComponents_ )
+ , maxTessellationGenerationLevel( maxTessellationGenerationLevel_ )
+ , maxTessellationPatchSize( maxTessellationPatchSize_ )
+ , maxTessellationControlPerVertexInputComponents( maxTessellationControlPerVertexInputComponents_ )
+ , maxTessellationControlPerVertexOutputComponents( maxTessellationControlPerVertexOutputComponents_ )
+ , maxTessellationControlPerPatchOutputComponents( maxTessellationControlPerPatchOutputComponents_ )
+ , maxTessellationControlTotalOutputComponents( maxTessellationControlTotalOutputComponents_ )
+ , maxTessellationEvaluationInputComponents( maxTessellationEvaluationInputComponents_ )
+ , maxTessellationEvaluationOutputComponents( maxTessellationEvaluationOutputComponents_ )
+ , maxGeometryShaderInvocations( maxGeometryShaderInvocations_ )
+ , maxGeometryInputComponents( maxGeometryInputComponents_ )
+ , maxGeometryOutputComponents( maxGeometryOutputComponents_ )
+ , maxGeometryOutputVertices( maxGeometryOutputVertices_ )
+ , maxGeometryTotalOutputComponents( maxGeometryTotalOutputComponents_ )
+ , maxFragmentInputComponents( maxFragmentInputComponents_ )
+ , maxFragmentOutputAttachments( maxFragmentOutputAttachments_ )
+ , maxFragmentDualSrcAttachments( maxFragmentDualSrcAttachments_ )
+ , maxFragmentCombinedOutputResources( maxFragmentCombinedOutputResources_ )
+ , maxComputeSharedMemorySize( maxComputeSharedMemorySize_ )
+ , maxComputeWorkGroupCount( maxComputeWorkGroupCount_ )
+ , maxComputeWorkGroupInvocations( maxComputeWorkGroupInvocations_ )
+ , maxComputeWorkGroupSize( maxComputeWorkGroupSize_ )
+ , subPixelPrecisionBits( subPixelPrecisionBits_ )
+ , subTexelPrecisionBits( subTexelPrecisionBits_ )
+ , mipmapPrecisionBits( mipmapPrecisionBits_ )
+ , maxDrawIndexedIndexValue( maxDrawIndexedIndexValue_ )
+ , maxDrawIndirectCount( maxDrawIndirectCount_ )
+ , maxSamplerLodBias( maxSamplerLodBias_ )
+ , maxSamplerAnisotropy( maxSamplerAnisotropy_ )
+ , maxViewports( maxViewports_ )
+ , maxViewportDimensions( maxViewportDimensions_ )
+ , viewportBoundsRange( viewportBoundsRange_ )
+ , viewportSubPixelBits( viewportSubPixelBits_ )
+ , minMemoryMapAlignment( minMemoryMapAlignment_ )
+ , minTexelBufferOffsetAlignment( minTexelBufferOffsetAlignment_ )
+ , minUniformBufferOffsetAlignment( minUniformBufferOffsetAlignment_ )
+ , minStorageBufferOffsetAlignment( minStorageBufferOffsetAlignment_ )
+ , minTexelOffset( minTexelOffset_ )
+ , maxTexelOffset( maxTexelOffset_ )
+ , minTexelGatherOffset( minTexelGatherOffset_ )
+ , maxTexelGatherOffset( maxTexelGatherOffset_ )
+ , minInterpolationOffset( minInterpolationOffset_ )
+ , maxInterpolationOffset( maxInterpolationOffset_ )
+ , subPixelInterpolationOffsetBits( subPixelInterpolationOffsetBits_ )
+ , maxFramebufferWidth( maxFramebufferWidth_ )
+ , maxFramebufferHeight( maxFramebufferHeight_ )
+ , maxFramebufferLayers( maxFramebufferLayers_ )
+ , framebufferColorSampleCounts( framebufferColorSampleCounts_ )
+ , framebufferDepthSampleCounts( framebufferDepthSampleCounts_ )
+ , framebufferStencilSampleCounts( framebufferStencilSampleCounts_ )
+ , framebufferNoAttachmentsSampleCounts( framebufferNoAttachmentsSampleCounts_ )
+ , maxColorAttachments( maxColorAttachments_ )
+ , sampledImageColorSampleCounts( sampledImageColorSampleCounts_ )
+ , sampledImageIntegerSampleCounts( sampledImageIntegerSampleCounts_ )
+ , sampledImageDepthSampleCounts( sampledImageDepthSampleCounts_ )
+ , sampledImageStencilSampleCounts( sampledImageStencilSampleCounts_ )
+ , storageImageSampleCounts( storageImageSampleCounts_ )
+ , maxSampleMaskWords( maxSampleMaskWords_ )
+ , timestampComputeAndGraphics( timestampComputeAndGraphics_ )
+ , timestampPeriod( timestampPeriod_ )
+ , maxClipDistances( maxClipDistances_ )
+ , maxCullDistances( maxCullDistances_ )
+ , maxCombinedClipAndCullDistances( maxCombinedClipAndCullDistances_ )
+ , discreteQueuePriorities( discreteQueuePriorities_ )
+ , pointSizeRange( pointSizeRange_ )
+ , lineWidthRange( lineWidthRange_ )
+ , pointSizeGranularity( pointSizeGranularity_ )
+ , lineWidthGranularity( lineWidthGranularity_ )
+ , strictLines( strictLines_ )
+ , standardSampleLocations( standardSampleLocations_ )
+ , optimalBufferCopyOffsetAlignment( optimalBufferCopyOffsetAlignment_ )
+ , optimalBufferCopyRowPitchAlignment( optimalBufferCopyRowPitchAlignment_ )
+ , nonCoherentAtomSize( nonCoherentAtomSize_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceLimits( PhysicalDeviceLimits const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceLimits( VkPhysicalDeviceLimits const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceLimits( *reinterpret_cast<PhysicalDeviceLimits const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceLimits &
+ operator=( PhysicalDeviceLimits const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceLimits & operator=( VkPhysicalDeviceLimits const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceLimits const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDeviceLimits const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceLimits *>( this );
+ }
+
+ operator VkPhysicalDeviceLimits &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceLimits *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceLimits const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceLimits const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( maxImageDimension1D == rhs.maxImageDimension1D ) && ( maxImageDimension2D == rhs.maxImageDimension2D ) &&
+ ( maxImageDimension3D == rhs.maxImageDimension3D ) &&
+ ( maxImageDimensionCube == rhs.maxImageDimensionCube ) &&
+ ( maxImageArrayLayers == rhs.maxImageArrayLayers ) &&
+ ( maxTexelBufferElements == rhs.maxTexelBufferElements ) &&
+ ( maxUniformBufferRange == rhs.maxUniformBufferRange ) &&
+ ( maxStorageBufferRange == rhs.maxStorageBufferRange ) &&
+ ( maxPushConstantsSize == rhs.maxPushConstantsSize ) &&
+ ( maxMemoryAllocationCount == rhs.maxMemoryAllocationCount ) &&
+ ( maxSamplerAllocationCount == rhs.maxSamplerAllocationCount ) &&
+ ( bufferImageGranularity == rhs.bufferImageGranularity ) &&
+ ( sparseAddressSpaceSize == rhs.sparseAddressSpaceSize ) &&
+ ( maxBoundDescriptorSets == rhs.maxBoundDescriptorSets ) &&
+ ( maxPerStageDescriptorSamplers == rhs.maxPerStageDescriptorSamplers ) &&
+ ( maxPerStageDescriptorUniformBuffers == rhs.maxPerStageDescriptorUniformBuffers ) &&
+ ( maxPerStageDescriptorStorageBuffers == rhs.maxPerStageDescriptorStorageBuffers ) &&
+ ( maxPerStageDescriptorSampledImages == rhs.maxPerStageDescriptorSampledImages ) &&
+ ( maxPerStageDescriptorStorageImages == rhs.maxPerStageDescriptorStorageImages ) &&
+ ( maxPerStageDescriptorInputAttachments == rhs.maxPerStageDescriptorInputAttachments ) &&
+ ( maxPerStageResources == rhs.maxPerStageResources ) &&
+ ( maxDescriptorSetSamplers == rhs.maxDescriptorSetSamplers ) &&
+ ( maxDescriptorSetUniformBuffers == rhs.maxDescriptorSetUniformBuffers ) &&
+ ( maxDescriptorSetUniformBuffersDynamic == rhs.maxDescriptorSetUniformBuffersDynamic ) &&
+ ( maxDescriptorSetStorageBuffers == rhs.maxDescriptorSetStorageBuffers ) &&
+ ( maxDescriptorSetStorageBuffersDynamic == rhs.maxDescriptorSetStorageBuffersDynamic ) &&
+ ( maxDescriptorSetSampledImages == rhs.maxDescriptorSetSampledImages ) &&
+ ( maxDescriptorSetStorageImages == rhs.maxDescriptorSetStorageImages ) &&
+ ( maxDescriptorSetInputAttachments == rhs.maxDescriptorSetInputAttachments ) &&
+ ( maxVertexInputAttributes == rhs.maxVertexInputAttributes ) &&
+ ( maxVertexInputBindings == rhs.maxVertexInputBindings ) &&
+ ( maxVertexInputAttributeOffset == rhs.maxVertexInputAttributeOffset ) &&
+ ( maxVertexInputBindingStride == rhs.maxVertexInputBindingStride ) &&
+ ( maxVertexOutputComponents == rhs.maxVertexOutputComponents ) &&
+ ( maxTessellationGenerationLevel == rhs.maxTessellationGenerationLevel ) &&
+ ( maxTessellationPatchSize == rhs.maxTessellationPatchSize ) &&
+ ( maxTessellationControlPerVertexInputComponents == rhs.maxTessellationControlPerVertexInputComponents ) &&
+ ( maxTessellationControlPerVertexOutputComponents ==
+ rhs.maxTessellationControlPerVertexOutputComponents ) &&
+ ( maxTessellationControlPerPatchOutputComponents == rhs.maxTessellationControlPerPatchOutputComponents ) &&
+ ( maxTessellationControlTotalOutputComponents == rhs.maxTessellationControlTotalOutputComponents ) &&
+ ( maxTessellationEvaluationInputComponents == rhs.maxTessellationEvaluationInputComponents ) &&
+ ( maxTessellationEvaluationOutputComponents == rhs.maxTessellationEvaluationOutputComponents ) &&
+ ( maxGeometryShaderInvocations == rhs.maxGeometryShaderInvocations ) &&
+ ( maxGeometryInputComponents == rhs.maxGeometryInputComponents ) &&
+ ( maxGeometryOutputComponents == rhs.maxGeometryOutputComponents ) &&
+ ( maxGeometryOutputVertices == rhs.maxGeometryOutputVertices ) &&
+ ( maxGeometryTotalOutputComponents == rhs.maxGeometryTotalOutputComponents ) &&
+ ( maxFragmentInputComponents == rhs.maxFragmentInputComponents ) &&
+ ( maxFragmentOutputAttachments == rhs.maxFragmentOutputAttachments ) &&
+ ( maxFragmentDualSrcAttachments == rhs.maxFragmentDualSrcAttachments ) &&
+ ( maxFragmentCombinedOutputResources == rhs.maxFragmentCombinedOutputResources ) &&
+ ( maxComputeSharedMemorySize == rhs.maxComputeSharedMemorySize ) &&
+ ( maxComputeWorkGroupCount == rhs.maxComputeWorkGroupCount ) &&
+ ( maxComputeWorkGroupInvocations == rhs.maxComputeWorkGroupInvocations ) &&
+ ( maxComputeWorkGroupSize == rhs.maxComputeWorkGroupSize ) &&
+ ( subPixelPrecisionBits == rhs.subPixelPrecisionBits ) &&
+ ( subTexelPrecisionBits == rhs.subTexelPrecisionBits ) &&
+ ( mipmapPrecisionBits == rhs.mipmapPrecisionBits ) &&
+ ( maxDrawIndexedIndexValue == rhs.maxDrawIndexedIndexValue ) &&
+ ( maxDrawIndirectCount == rhs.maxDrawIndirectCount ) && ( maxSamplerLodBias == rhs.maxSamplerLodBias ) &&
+ ( maxSamplerAnisotropy == rhs.maxSamplerAnisotropy ) && ( maxViewports == rhs.maxViewports ) &&
+ ( maxViewportDimensions == rhs.maxViewportDimensions ) &&
+ ( viewportBoundsRange == rhs.viewportBoundsRange ) &&
+ ( viewportSubPixelBits == rhs.viewportSubPixelBits ) &&
+ ( minMemoryMapAlignment == rhs.minMemoryMapAlignment ) &&
+ ( minTexelBufferOffsetAlignment == rhs.minTexelBufferOffsetAlignment ) &&
+ ( minUniformBufferOffsetAlignment == rhs.minUniformBufferOffsetAlignment ) &&
+ ( minStorageBufferOffsetAlignment == rhs.minStorageBufferOffsetAlignment ) &&
+ ( minTexelOffset == rhs.minTexelOffset ) && ( maxTexelOffset == rhs.maxTexelOffset ) &&
+ ( minTexelGatherOffset == rhs.minTexelGatherOffset ) &&
+ ( maxTexelGatherOffset == rhs.maxTexelGatherOffset ) &&
+ ( minInterpolationOffset == rhs.minInterpolationOffset ) &&
+ ( maxInterpolationOffset == rhs.maxInterpolationOffset ) &&
+ ( subPixelInterpolationOffsetBits == rhs.subPixelInterpolationOffsetBits ) &&
+ ( maxFramebufferWidth == rhs.maxFramebufferWidth ) &&
+ ( maxFramebufferHeight == rhs.maxFramebufferHeight ) &&
+ ( maxFramebufferLayers == rhs.maxFramebufferLayers ) &&
+ ( framebufferColorSampleCounts == rhs.framebufferColorSampleCounts ) &&
+ ( framebufferDepthSampleCounts == rhs.framebufferDepthSampleCounts ) &&
+ ( framebufferStencilSampleCounts == rhs.framebufferStencilSampleCounts ) &&
+ ( framebufferNoAttachmentsSampleCounts == rhs.framebufferNoAttachmentsSampleCounts ) &&
+ ( maxColorAttachments == rhs.maxColorAttachments ) &&
+ ( sampledImageColorSampleCounts == rhs.sampledImageColorSampleCounts ) &&
+ ( sampledImageIntegerSampleCounts == rhs.sampledImageIntegerSampleCounts ) &&
+ ( sampledImageDepthSampleCounts == rhs.sampledImageDepthSampleCounts ) &&
+ ( sampledImageStencilSampleCounts == rhs.sampledImageStencilSampleCounts ) &&
+ ( storageImageSampleCounts == rhs.storageImageSampleCounts ) &&
+ ( maxSampleMaskWords == rhs.maxSampleMaskWords ) &&
+ ( timestampComputeAndGraphics == rhs.timestampComputeAndGraphics ) &&
+ ( timestampPeriod == rhs.timestampPeriod ) && ( maxClipDistances == rhs.maxClipDistances ) &&
+ ( maxCullDistances == rhs.maxCullDistances ) &&
+ ( maxCombinedClipAndCullDistances == rhs.maxCombinedClipAndCullDistances ) &&
+ ( discreteQueuePriorities == rhs.discreteQueuePriorities ) && ( pointSizeRange == rhs.pointSizeRange ) &&
+ ( lineWidthRange == rhs.lineWidthRange ) && ( pointSizeGranularity == rhs.pointSizeGranularity ) &&
+ ( lineWidthGranularity == rhs.lineWidthGranularity ) && ( strictLines == rhs.strictLines ) &&
+ ( standardSampleLocations == rhs.standardSampleLocations ) &&
+ ( optimalBufferCopyOffsetAlignment == rhs.optimalBufferCopyOffsetAlignment ) &&
+ ( optimalBufferCopyRowPitchAlignment == rhs.optimalBufferCopyRowPitchAlignment ) &&
+ ( nonCoherentAtomSize == rhs.nonCoherentAtomSize );
+ }
+
+ bool operator!=( PhysicalDeviceLimits const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ 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 = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize bufferImageGranularity = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize 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 = {};
+ VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint32_t, 3> maxComputeWorkGroupCount = {};
+ uint32_t maxComputeWorkGroupInvocations = {};
+ VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint32_t, 3> maxComputeWorkGroupSize = {};
+ uint32_t subPixelPrecisionBits = {};
+ uint32_t subTexelPrecisionBits = {};
+ uint32_t mipmapPrecisionBits = {};
+ uint32_t maxDrawIndexedIndexValue = {};
+ uint32_t maxDrawIndirectCount = {};
+ float maxSamplerLodBias = {};
+ float maxSamplerAnisotropy = {};
+ uint32_t maxViewports = {};
+ VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint32_t, 2> maxViewportDimensions = {};
+ VULKAN_HPP_NAMESPACE::ArrayWrapper1D<float, 2> viewportBoundsRange = {};
+ uint32_t viewportSubPixelBits = {};
+ size_t minMemoryMapAlignment = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize minTexelBufferOffsetAlignment = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize minUniformBufferOffsetAlignment = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize 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 = {};
+ VULKAN_HPP_NAMESPACE::SampleCountFlags framebufferColorSampleCounts = {};
+ VULKAN_HPP_NAMESPACE::SampleCountFlags framebufferDepthSampleCounts = {};
+ VULKAN_HPP_NAMESPACE::SampleCountFlags framebufferStencilSampleCounts = {};
+ VULKAN_HPP_NAMESPACE::SampleCountFlags framebufferNoAttachmentsSampleCounts = {};
+ uint32_t maxColorAttachments = {};
+ VULKAN_HPP_NAMESPACE::SampleCountFlags sampledImageColorSampleCounts = {};
+ VULKAN_HPP_NAMESPACE::SampleCountFlags sampledImageIntegerSampleCounts = {};
+ VULKAN_HPP_NAMESPACE::SampleCountFlags sampledImageDepthSampleCounts = {};
+ VULKAN_HPP_NAMESPACE::SampleCountFlags sampledImageStencilSampleCounts = {};
+ VULKAN_HPP_NAMESPACE::SampleCountFlags storageImageSampleCounts = {};
+ uint32_t maxSampleMaskWords = {};
+ VULKAN_HPP_NAMESPACE::Bool32 timestampComputeAndGraphics = {};
+ float timestampPeriod = {};
+ uint32_t maxClipDistances = {};
+ uint32_t maxCullDistances = {};
+ uint32_t maxCombinedClipAndCullDistances = {};
+ uint32_t discreteQueuePriorities = {};
+ VULKAN_HPP_NAMESPACE::ArrayWrapper1D<float, 2> pointSizeRange = {};
+ VULKAN_HPP_NAMESPACE::ArrayWrapper1D<float, 2> lineWidthRange = {};
+ float pointSizeGranularity = {};
+ float lineWidthGranularity = {};
+ VULKAN_HPP_NAMESPACE::Bool32 strictLines = {};
+ VULKAN_HPP_NAMESPACE::Bool32 standardSampleLocations = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize optimalBufferCopyOffsetAlignment = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize optimalBufferCopyRowPitchAlignment = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize nonCoherentAtomSize = {};
+ };
+ static_assert( sizeof( PhysicalDeviceLimits ) == sizeof( VkPhysicalDeviceLimits ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceLimits>::value, "struct wrapper is not a standard layout!" );
+
+ struct PhysicalDeviceLineRasterizationFeaturesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceLineRasterizationFeaturesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceLineRasterizationFeaturesEXT(
+ VULKAN_HPP_NAMESPACE::Bool32 rectangularLines_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 bresenhamLines_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 smoothLines_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 stippledRectangularLines_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 stippledBresenhamLines_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 stippledSmoothLines_ = {} ) VULKAN_HPP_NOEXCEPT
+ : rectangularLines( rectangularLines_ )
+ , bresenhamLines( bresenhamLines_ )
+ , smoothLines( smoothLines_ )
+ , stippledRectangularLines( stippledRectangularLines_ )
+ , stippledBresenhamLines( stippledBresenhamLines_ )
+ , stippledSmoothLines( stippledSmoothLines_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceLineRasterizationFeaturesEXT(
+ PhysicalDeviceLineRasterizationFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceLineRasterizationFeaturesEXT( VkPhysicalDeviceLineRasterizationFeaturesEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceLineRasterizationFeaturesEXT(
+ *reinterpret_cast<PhysicalDeviceLineRasterizationFeaturesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceLineRasterizationFeaturesEXT &
+ operator=( PhysicalDeviceLineRasterizationFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceLineRasterizationFeaturesEXT &
+ operator=( VkPhysicalDeviceLineRasterizationFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceLineRasterizationFeaturesEXT const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceLineRasterizationFeaturesEXT & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceLineRasterizationFeaturesEXT &
+ setRectangularLines( VULKAN_HPP_NAMESPACE::Bool32 rectangularLines_ ) VULKAN_HPP_NOEXCEPT
+ {
+ rectangularLines = rectangularLines_;
+ return *this;
+ }
+
+ PhysicalDeviceLineRasterizationFeaturesEXT &
+ setBresenhamLines( VULKAN_HPP_NAMESPACE::Bool32 bresenhamLines_ ) VULKAN_HPP_NOEXCEPT
+ {
+ bresenhamLines = bresenhamLines_;
+ return *this;
+ }
+
+ PhysicalDeviceLineRasterizationFeaturesEXT &
+ setSmoothLines( VULKAN_HPP_NAMESPACE::Bool32 smoothLines_ ) VULKAN_HPP_NOEXCEPT
+ {
+ smoothLines = smoothLines_;
+ return *this;
+ }
+
+ PhysicalDeviceLineRasterizationFeaturesEXT &
+ setStippledRectangularLines( VULKAN_HPP_NAMESPACE::Bool32 stippledRectangularLines_ ) VULKAN_HPP_NOEXCEPT
+ {
+ stippledRectangularLines = stippledRectangularLines_;
+ return *this;
+ }
+
+ PhysicalDeviceLineRasterizationFeaturesEXT &
+ setStippledBresenhamLines( VULKAN_HPP_NAMESPACE::Bool32 stippledBresenhamLines_ ) VULKAN_HPP_NOEXCEPT
+ {
+ stippledBresenhamLines = stippledBresenhamLines_;
+ return *this;
+ }
+
+ PhysicalDeviceLineRasterizationFeaturesEXT &
+ setStippledSmoothLines( VULKAN_HPP_NAMESPACE::Bool32 stippledSmoothLines_ ) VULKAN_HPP_NOEXCEPT
+ {
+ stippledSmoothLines = stippledSmoothLines_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceLineRasterizationFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceLineRasterizationFeaturesEXT *>( this );
+ }
+
+ operator VkPhysicalDeviceLineRasterizationFeaturesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceLineRasterizationFeaturesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceLineRasterizationFeaturesEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceLineRasterizationFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( rectangularLines == rhs.rectangularLines ) &&
+ ( bresenhamLines == rhs.bresenhamLines ) && ( smoothLines == rhs.smoothLines ) &&
+ ( stippledRectangularLines == rhs.stippledRectangularLines ) &&
+ ( stippledBresenhamLines == rhs.stippledBresenhamLines ) &&
+ ( stippledSmoothLines == rhs.stippledSmoothLines );
+ }
+
+ bool operator!=( PhysicalDeviceLineRasterizationFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceLineRasterizationFeaturesEXT;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 rectangularLines = {};
+ VULKAN_HPP_NAMESPACE::Bool32 bresenhamLines = {};
+ VULKAN_HPP_NAMESPACE::Bool32 smoothLines = {};
+ VULKAN_HPP_NAMESPACE::Bool32 stippledRectangularLines = {};
+ VULKAN_HPP_NAMESPACE::Bool32 stippledBresenhamLines = {};
+ VULKAN_HPP_NAMESPACE::Bool32 stippledSmoothLines = {};
+ };
+ static_assert( sizeof( PhysicalDeviceLineRasterizationFeaturesEXT ) ==
+ sizeof( VkPhysicalDeviceLineRasterizationFeaturesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceLineRasterizationFeaturesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceLineRasterizationFeaturesEXT>
+ {
+ using Type = PhysicalDeviceLineRasterizationFeaturesEXT;
+ };
+
+ struct PhysicalDeviceLineRasterizationPropertiesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceLineRasterizationPropertiesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ PhysicalDeviceLineRasterizationPropertiesEXT( uint32_t lineSubPixelPrecisionBits_ = {} ) VULKAN_HPP_NOEXCEPT
+ : lineSubPixelPrecisionBits( lineSubPixelPrecisionBits_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceLineRasterizationPropertiesEXT(
+ PhysicalDeviceLineRasterizationPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceLineRasterizationPropertiesEXT( VkPhysicalDeviceLineRasterizationPropertiesEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceLineRasterizationPropertiesEXT(
+ *reinterpret_cast<PhysicalDeviceLineRasterizationPropertiesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceLineRasterizationPropertiesEXT &
+ operator=( PhysicalDeviceLineRasterizationPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceLineRasterizationPropertiesEXT &
+ operator=( VkPhysicalDeviceLineRasterizationPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceLineRasterizationPropertiesEXT const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDeviceLineRasterizationPropertiesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceLineRasterizationPropertiesEXT *>( this );
+ }
+
+ operator VkPhysicalDeviceLineRasterizationPropertiesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceLineRasterizationPropertiesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceLineRasterizationPropertiesEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceLineRasterizationPropertiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( lineSubPixelPrecisionBits == rhs.lineSubPixelPrecisionBits );
+ }
+
+ bool operator!=( PhysicalDeviceLineRasterizationPropertiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceLineRasterizationPropertiesEXT;
+ void * pNext = {};
+ uint32_t lineSubPixelPrecisionBits = {};
+ };
+ static_assert( sizeof( PhysicalDeviceLineRasterizationPropertiesEXT ) ==
+ sizeof( VkPhysicalDeviceLineRasterizationPropertiesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceLineRasterizationPropertiesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceLineRasterizationPropertiesEXT>
+ {
+ using Type = PhysicalDeviceLineRasterizationPropertiesEXT;
+ };
+
+ struct PhysicalDeviceMaintenance3Properties
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceMaintenance3Properties;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceMaintenance3Properties(
+ uint32_t maxPerSetDescriptors_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize maxMemoryAllocationSize_ = {} ) VULKAN_HPP_NOEXCEPT
+ : maxPerSetDescriptors( maxPerSetDescriptors_ )
+ , maxMemoryAllocationSize( maxMemoryAllocationSize_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceMaintenance3Properties( PhysicalDeviceMaintenance3Properties const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceMaintenance3Properties( VkPhysicalDeviceMaintenance3Properties const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceMaintenance3Properties( *reinterpret_cast<PhysicalDeviceMaintenance3Properties const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceMaintenance3Properties &
+ operator=( PhysicalDeviceMaintenance3Properties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceMaintenance3Properties &
+ operator=( VkPhysicalDeviceMaintenance3Properties const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceMaintenance3Properties const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDeviceMaintenance3Properties const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceMaintenance3Properties *>( this );
+ }
+
+ operator VkPhysicalDeviceMaintenance3Properties &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceMaintenance3Properties *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceMaintenance3Properties const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceMaintenance3Properties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( maxPerSetDescriptors == rhs.maxPerSetDescriptors ) &&
+ ( maxMemoryAllocationSize == rhs.maxMemoryAllocationSize );
+ }
+
+ bool operator!=( PhysicalDeviceMaintenance3Properties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceMaintenance3Properties;
+ void * pNext = {};
+ uint32_t maxPerSetDescriptors = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize maxMemoryAllocationSize = {};
+ };
+ static_assert( sizeof( PhysicalDeviceMaintenance3Properties ) == sizeof( VkPhysicalDeviceMaintenance3Properties ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceMaintenance3Properties>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceMaintenance3Properties>
+ {
+ using Type = PhysicalDeviceMaintenance3Properties;
+ };
+ using PhysicalDeviceMaintenance3PropertiesKHR = PhysicalDeviceMaintenance3Properties;
+
+ struct PhysicalDeviceMemoryBudgetPropertiesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceMemoryBudgetPropertiesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceMemoryBudgetPropertiesEXT(
+ std::array<VULKAN_HPP_NAMESPACE::DeviceSize, VK_MAX_MEMORY_HEAPS> const & heapBudget_ = {},
+ std::array<VULKAN_HPP_NAMESPACE::DeviceSize, VK_MAX_MEMORY_HEAPS> const & heapUsage_ = {} ) VULKAN_HPP_NOEXCEPT
+ : heapBudget( heapBudget_ )
+ , heapUsage( heapUsage_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceMemoryBudgetPropertiesEXT(
+ PhysicalDeviceMemoryBudgetPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceMemoryBudgetPropertiesEXT( VkPhysicalDeviceMemoryBudgetPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceMemoryBudgetPropertiesEXT(
+ *reinterpret_cast<PhysicalDeviceMemoryBudgetPropertiesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceMemoryBudgetPropertiesEXT &
+ operator=( PhysicalDeviceMemoryBudgetPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceMemoryBudgetPropertiesEXT &
+ operator=( VkPhysicalDeviceMemoryBudgetPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryBudgetPropertiesEXT const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDeviceMemoryBudgetPropertiesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceMemoryBudgetPropertiesEXT *>( this );
+ }
+
+ operator VkPhysicalDeviceMemoryBudgetPropertiesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceMemoryBudgetPropertiesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceMemoryBudgetPropertiesEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceMemoryBudgetPropertiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( heapBudget == rhs.heapBudget ) &&
+ ( heapUsage == rhs.heapUsage );
+ }
+
+ bool operator!=( PhysicalDeviceMemoryBudgetPropertiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceMemoryBudgetPropertiesEXT;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ArrayWrapper1D<VULKAN_HPP_NAMESPACE::DeviceSize, VK_MAX_MEMORY_HEAPS> heapBudget = {};
+ VULKAN_HPP_NAMESPACE::ArrayWrapper1D<VULKAN_HPP_NAMESPACE::DeviceSize, VK_MAX_MEMORY_HEAPS> heapUsage = {};
+ };
+ static_assert( sizeof( PhysicalDeviceMemoryBudgetPropertiesEXT ) ==
+ sizeof( VkPhysicalDeviceMemoryBudgetPropertiesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceMemoryBudgetPropertiesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceMemoryBudgetPropertiesEXT>
+ {
+ using Type = PhysicalDeviceMemoryBudgetPropertiesEXT;
+ };
+
+ struct PhysicalDeviceMemoryPriorityFeaturesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceMemoryPriorityFeaturesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ PhysicalDeviceMemoryPriorityFeaturesEXT( VULKAN_HPP_NAMESPACE::Bool32 memoryPriority_ = {} ) VULKAN_HPP_NOEXCEPT
+ : memoryPriority( memoryPriority_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceMemoryPriorityFeaturesEXT( PhysicalDeviceMemoryPriorityFeaturesEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceMemoryPriorityFeaturesEXT( VkPhysicalDeviceMemoryPriorityFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceMemoryPriorityFeaturesEXT(
+ *reinterpret_cast<PhysicalDeviceMemoryPriorityFeaturesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceMemoryPriorityFeaturesEXT &
+ operator=( PhysicalDeviceMemoryPriorityFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceMemoryPriorityFeaturesEXT &
+ operator=( VkPhysicalDeviceMemoryPriorityFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryPriorityFeaturesEXT const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceMemoryPriorityFeaturesEXT & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceMemoryPriorityFeaturesEXT &
+ setMemoryPriority( VULKAN_HPP_NAMESPACE::Bool32 memoryPriority_ ) VULKAN_HPP_NOEXCEPT
+ {
+ memoryPriority = memoryPriority_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceMemoryPriorityFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceMemoryPriorityFeaturesEXT *>( this );
+ }
+
+ operator VkPhysicalDeviceMemoryPriorityFeaturesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceMemoryPriorityFeaturesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceMemoryPriorityFeaturesEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceMemoryPriorityFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( memoryPriority == rhs.memoryPriority );
+ }
+
+ bool operator!=( PhysicalDeviceMemoryPriorityFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceMemoryPriorityFeaturesEXT;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 memoryPriority = {};
+ };
+ static_assert( sizeof( PhysicalDeviceMemoryPriorityFeaturesEXT ) ==
+ sizeof( VkPhysicalDeviceMemoryPriorityFeaturesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceMemoryPriorityFeaturesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceMemoryPriorityFeaturesEXT>
+ {
+ using Type = PhysicalDeviceMemoryPriorityFeaturesEXT;
+ };
+
+ struct PhysicalDeviceMemoryProperties
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceMemoryProperties(
+ uint32_t memoryTypeCount_ = {},
+ std::array<VULKAN_HPP_NAMESPACE::MemoryType, VK_MAX_MEMORY_TYPES> const & memoryTypes_ = {},
+ uint32_t memoryHeapCount_ = {},
+ std::array<VULKAN_HPP_NAMESPACE::MemoryHeap, VK_MAX_MEMORY_HEAPS> const & memoryHeaps_ = {} ) VULKAN_HPP_NOEXCEPT
+ : memoryTypeCount( memoryTypeCount_ )
+ , memoryTypes( memoryTypes_ )
+ , memoryHeapCount( memoryHeapCount_ )
+ , memoryHeaps( memoryHeaps_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR_14
+ PhysicalDeviceMemoryProperties( PhysicalDeviceMemoryProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceMemoryProperties( VkPhysicalDeviceMemoryProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceMemoryProperties( *reinterpret_cast<PhysicalDeviceMemoryProperties const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceMemoryProperties &
+ operator=( PhysicalDeviceMemoryProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceMemoryProperties & operator=( VkPhysicalDeviceMemoryProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDeviceMemoryProperties const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceMemoryProperties *>( this );
+ }
+
+ operator VkPhysicalDeviceMemoryProperties &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceMemoryProperties *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceMemoryProperties const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceMemoryProperties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( memoryTypeCount == rhs.memoryTypeCount ) && ( memoryTypes == rhs.memoryTypes ) &&
+ ( memoryHeapCount == rhs.memoryHeapCount ) && ( memoryHeaps == rhs.memoryHeaps );
+ }
+
+ bool operator!=( PhysicalDeviceMemoryProperties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ uint32_t memoryTypeCount = {};
+ VULKAN_HPP_NAMESPACE::ArrayWrapper1D<VULKAN_HPP_NAMESPACE::MemoryType, VK_MAX_MEMORY_TYPES> memoryTypes = {};
+ uint32_t memoryHeapCount = {};
+ VULKAN_HPP_NAMESPACE::ArrayWrapper1D<VULKAN_HPP_NAMESPACE::MemoryHeap, VK_MAX_MEMORY_HEAPS> memoryHeaps = {};
+ };
+ static_assert( sizeof( PhysicalDeviceMemoryProperties ) == sizeof( VkPhysicalDeviceMemoryProperties ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceMemoryProperties>::value,
+ "struct wrapper is not a standard layout!" );
+
+ struct PhysicalDeviceMemoryProperties2
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceMemoryProperties2;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceMemoryProperties2(
+ VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties memoryProperties_ = {} ) VULKAN_HPP_NOEXCEPT
+ : memoryProperties( memoryProperties_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR_14
+ PhysicalDeviceMemoryProperties2( PhysicalDeviceMemoryProperties2 const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceMemoryProperties2( VkPhysicalDeviceMemoryProperties2 const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceMemoryProperties2( *reinterpret_cast<PhysicalDeviceMemoryProperties2 const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceMemoryProperties2 &
+ operator=( PhysicalDeviceMemoryProperties2 const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceMemoryProperties2 & operator=( VkPhysicalDeviceMemoryProperties2 const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties2 const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDeviceMemoryProperties2 const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceMemoryProperties2 *>( this );
+ }
+
+ operator VkPhysicalDeviceMemoryProperties2 &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceMemoryProperties2 *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceMemoryProperties2 const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceMemoryProperties2 const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( memoryProperties == rhs.memoryProperties );
+ }
+
+ bool operator!=( PhysicalDeviceMemoryProperties2 const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceMemoryProperties2;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties memoryProperties = {};
+ };
+ static_assert( sizeof( PhysicalDeviceMemoryProperties2 ) == sizeof( VkPhysicalDeviceMemoryProperties2 ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceMemoryProperties2>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceMemoryProperties2>
+ {
+ using Type = PhysicalDeviceMemoryProperties2;
+ };
+ using PhysicalDeviceMemoryProperties2KHR = PhysicalDeviceMemoryProperties2;
+
+ struct PhysicalDeviceMeshShaderFeaturesNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceMeshShaderFeaturesNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ PhysicalDeviceMeshShaderFeaturesNV( VULKAN_HPP_NAMESPACE::Bool32 taskShader_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 meshShader_ = {} ) VULKAN_HPP_NOEXCEPT
+ : taskShader( taskShader_ )
+ , meshShader( meshShader_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceMeshShaderFeaturesNV( PhysicalDeviceMeshShaderFeaturesNV const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceMeshShaderFeaturesNV( VkPhysicalDeviceMeshShaderFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceMeshShaderFeaturesNV( *reinterpret_cast<PhysicalDeviceMeshShaderFeaturesNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceMeshShaderFeaturesNV &
+ operator=( PhysicalDeviceMeshShaderFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceMeshShaderFeaturesNV &
+ operator=( VkPhysicalDeviceMeshShaderFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceMeshShaderFeaturesNV const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceMeshShaderFeaturesNV & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceMeshShaderFeaturesNV & setTaskShader( VULKAN_HPP_NAMESPACE::Bool32 taskShader_ ) VULKAN_HPP_NOEXCEPT
+ {
+ taskShader = taskShader_;
+ return *this;
+ }
+
+ PhysicalDeviceMeshShaderFeaturesNV & setMeshShader( VULKAN_HPP_NAMESPACE::Bool32 meshShader_ ) VULKAN_HPP_NOEXCEPT
+ {
+ meshShader = meshShader_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceMeshShaderFeaturesNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceMeshShaderFeaturesNV *>( this );
+ }
+
+ operator VkPhysicalDeviceMeshShaderFeaturesNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceMeshShaderFeaturesNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceMeshShaderFeaturesNV const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceMeshShaderFeaturesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( taskShader == rhs.taskShader ) &&
+ ( meshShader == rhs.meshShader );
+ }
+
+ bool operator!=( PhysicalDeviceMeshShaderFeaturesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceMeshShaderFeaturesNV;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 taskShader = {};
+ VULKAN_HPP_NAMESPACE::Bool32 meshShader = {};
+ };
+ static_assert( sizeof( PhysicalDeviceMeshShaderFeaturesNV ) == sizeof( VkPhysicalDeviceMeshShaderFeaturesNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceMeshShaderFeaturesNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceMeshShaderFeaturesNV>
+ {
+ using Type = PhysicalDeviceMeshShaderFeaturesNV;
+ };
+
+ struct PhysicalDeviceMeshShaderPropertiesNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceMeshShaderPropertiesNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR_14
+ PhysicalDeviceMeshShaderPropertiesNV( uint32_t maxDrawMeshTasksCount_ = {},
+ uint32_t maxTaskWorkGroupInvocations_ = {},
+ std::array<uint32_t, 3> const & maxTaskWorkGroupSize_ = {},
+ uint32_t maxTaskTotalMemorySize_ = {},
+ uint32_t maxTaskOutputCount_ = {},
+ uint32_t maxMeshWorkGroupInvocations_ = {},
+ std::array<uint32_t, 3> const & maxMeshWorkGroupSize_ = {},
+ uint32_t maxMeshTotalMemorySize_ = {},
+ uint32_t maxMeshOutputVertices_ = {},
+ uint32_t maxMeshOutputPrimitives_ = {},
+ uint32_t maxMeshMultiviewViewCount_ = {},
+ uint32_t meshOutputPerVertexGranularity_ = {},
+ uint32_t meshOutputPerPrimitiveGranularity_ = {} ) VULKAN_HPP_NOEXCEPT
+ : maxDrawMeshTasksCount( maxDrawMeshTasksCount_ )
+ , maxTaskWorkGroupInvocations( maxTaskWorkGroupInvocations_ )
+ , maxTaskWorkGroupSize( maxTaskWorkGroupSize_ )
+ , maxTaskTotalMemorySize( maxTaskTotalMemorySize_ )
+ , maxTaskOutputCount( maxTaskOutputCount_ )
+ , maxMeshWorkGroupInvocations( maxMeshWorkGroupInvocations_ )
+ , maxMeshWorkGroupSize( maxMeshWorkGroupSize_ )
+ , maxMeshTotalMemorySize( maxMeshTotalMemorySize_ )
+ , maxMeshOutputVertices( maxMeshOutputVertices_ )
+ , maxMeshOutputPrimitives( maxMeshOutputPrimitives_ )
+ , maxMeshMultiviewViewCount( maxMeshMultiviewViewCount_ )
+ , meshOutputPerVertexGranularity( meshOutputPerVertexGranularity_ )
+ , meshOutputPerPrimitiveGranularity( meshOutputPerPrimitiveGranularity_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceMeshShaderPropertiesNV( PhysicalDeviceMeshShaderPropertiesNV const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceMeshShaderPropertiesNV( VkPhysicalDeviceMeshShaderPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceMeshShaderPropertiesNV( *reinterpret_cast<PhysicalDeviceMeshShaderPropertiesNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceMeshShaderPropertiesNV &
+ operator=( PhysicalDeviceMeshShaderPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceMeshShaderPropertiesNV &
+ operator=( VkPhysicalDeviceMeshShaderPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceMeshShaderPropertiesNV const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDeviceMeshShaderPropertiesNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceMeshShaderPropertiesNV *>( this );
+ }
+
+ operator VkPhysicalDeviceMeshShaderPropertiesNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceMeshShaderPropertiesNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceMeshShaderPropertiesNV const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceMeshShaderPropertiesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( maxDrawMeshTasksCount == rhs.maxDrawMeshTasksCount ) &&
+ ( maxTaskWorkGroupInvocations == rhs.maxTaskWorkGroupInvocations ) &&
+ ( maxTaskWorkGroupSize == rhs.maxTaskWorkGroupSize ) &&
+ ( maxTaskTotalMemorySize == rhs.maxTaskTotalMemorySize ) &&
+ ( maxTaskOutputCount == rhs.maxTaskOutputCount ) &&
+ ( maxMeshWorkGroupInvocations == rhs.maxMeshWorkGroupInvocations ) &&
+ ( maxMeshWorkGroupSize == rhs.maxMeshWorkGroupSize ) &&
+ ( maxMeshTotalMemorySize == rhs.maxMeshTotalMemorySize ) &&
+ ( maxMeshOutputVertices == rhs.maxMeshOutputVertices ) &&
+ ( maxMeshOutputPrimitives == rhs.maxMeshOutputPrimitives ) &&
+ ( maxMeshMultiviewViewCount == rhs.maxMeshMultiviewViewCount ) &&
+ ( meshOutputPerVertexGranularity == rhs.meshOutputPerVertexGranularity ) &&
+ ( meshOutputPerPrimitiveGranularity == rhs.meshOutputPerPrimitiveGranularity );
+ }
+
+ bool operator!=( PhysicalDeviceMeshShaderPropertiesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceMeshShaderPropertiesNV;
+ void * pNext = {};
+ uint32_t maxDrawMeshTasksCount = {};
+ uint32_t maxTaskWorkGroupInvocations = {};
+ VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint32_t, 3> maxTaskWorkGroupSize = {};
+ uint32_t maxTaskTotalMemorySize = {};
+ uint32_t maxTaskOutputCount = {};
+ uint32_t maxMeshWorkGroupInvocations = {};
+ VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint32_t, 3> maxMeshWorkGroupSize = {};
+ uint32_t maxMeshTotalMemorySize = {};
+ uint32_t maxMeshOutputVertices = {};
+ uint32_t maxMeshOutputPrimitives = {};
+ uint32_t maxMeshMultiviewViewCount = {};
+ uint32_t meshOutputPerVertexGranularity = {};
+ uint32_t meshOutputPerPrimitiveGranularity = {};
+ };
+ static_assert( sizeof( PhysicalDeviceMeshShaderPropertiesNV ) == sizeof( VkPhysicalDeviceMeshShaderPropertiesNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceMeshShaderPropertiesNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceMeshShaderPropertiesNV>
+ {
+ using Type = PhysicalDeviceMeshShaderPropertiesNV;
+ };
+
+ struct PhysicalDeviceMultiDrawFeaturesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceMultiDrawFeaturesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ PhysicalDeviceMultiDrawFeaturesEXT( VULKAN_HPP_NAMESPACE::Bool32 multiDraw_ = {} ) VULKAN_HPP_NOEXCEPT
+ : multiDraw( multiDraw_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceMultiDrawFeaturesEXT( PhysicalDeviceMultiDrawFeaturesEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceMultiDrawFeaturesEXT( VkPhysicalDeviceMultiDrawFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceMultiDrawFeaturesEXT( *reinterpret_cast<PhysicalDeviceMultiDrawFeaturesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceMultiDrawFeaturesEXT &
+ operator=( PhysicalDeviceMultiDrawFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceMultiDrawFeaturesEXT &
+ operator=( VkPhysicalDeviceMultiDrawFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceMultiDrawFeaturesEXT const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceMultiDrawFeaturesEXT & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceMultiDrawFeaturesEXT & setMultiDraw( VULKAN_HPP_NAMESPACE::Bool32 multiDraw_ ) VULKAN_HPP_NOEXCEPT
+ {
+ multiDraw = multiDraw_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceMultiDrawFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceMultiDrawFeaturesEXT *>( this );
+ }
+
+ operator VkPhysicalDeviceMultiDrawFeaturesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceMultiDrawFeaturesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceMultiDrawFeaturesEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceMultiDrawFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( multiDraw == rhs.multiDraw );
+ }
+
+ bool operator!=( PhysicalDeviceMultiDrawFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceMultiDrawFeaturesEXT;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 multiDraw = {};
+ };
+ static_assert( sizeof( PhysicalDeviceMultiDrawFeaturesEXT ) == sizeof( VkPhysicalDeviceMultiDrawFeaturesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceMultiDrawFeaturesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceMultiDrawFeaturesEXT>
+ {
+ using Type = PhysicalDeviceMultiDrawFeaturesEXT;
+ };
+
+ struct PhysicalDeviceMultiDrawPropertiesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceMultiDrawPropertiesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceMultiDrawPropertiesEXT( uint32_t maxMultiDrawCount_ = {} ) VULKAN_HPP_NOEXCEPT
+ : maxMultiDrawCount( maxMultiDrawCount_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceMultiDrawPropertiesEXT( PhysicalDeviceMultiDrawPropertiesEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceMultiDrawPropertiesEXT( VkPhysicalDeviceMultiDrawPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceMultiDrawPropertiesEXT( *reinterpret_cast<PhysicalDeviceMultiDrawPropertiesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceMultiDrawPropertiesEXT &
+ operator=( PhysicalDeviceMultiDrawPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceMultiDrawPropertiesEXT &
+ operator=( VkPhysicalDeviceMultiDrawPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceMultiDrawPropertiesEXT const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDeviceMultiDrawPropertiesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceMultiDrawPropertiesEXT *>( this );
+ }
+
+ operator VkPhysicalDeviceMultiDrawPropertiesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceMultiDrawPropertiesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceMultiDrawPropertiesEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceMultiDrawPropertiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( maxMultiDrawCount == rhs.maxMultiDrawCount );
+ }
+
+ bool operator!=( PhysicalDeviceMultiDrawPropertiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceMultiDrawPropertiesEXT;
+ void * pNext = {};
+ uint32_t maxMultiDrawCount = {};
+ };
+ static_assert( sizeof( PhysicalDeviceMultiDrawPropertiesEXT ) == sizeof( VkPhysicalDeviceMultiDrawPropertiesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceMultiDrawPropertiesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceMultiDrawPropertiesEXT>
+ {
+ using Type = PhysicalDeviceMultiDrawPropertiesEXT;
+ };
+
+ struct PhysicalDeviceMultiviewFeatures
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceMultiviewFeatures;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceMultiviewFeatures(
+ VULKAN_HPP_NAMESPACE::Bool32 multiview_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 multiviewGeometryShader_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 multiviewTessellationShader_ = {} ) VULKAN_HPP_NOEXCEPT
+ : multiview( multiview_ )
+ , multiviewGeometryShader( multiviewGeometryShader_ )
+ , multiviewTessellationShader( multiviewTessellationShader_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ PhysicalDeviceMultiviewFeatures( PhysicalDeviceMultiviewFeatures const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceMultiviewFeatures( VkPhysicalDeviceMultiviewFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceMultiviewFeatures( *reinterpret_cast<PhysicalDeviceMultiviewFeatures const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceMultiviewFeatures &
+ operator=( PhysicalDeviceMultiviewFeatures const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceMultiviewFeatures & operator=( VkPhysicalDeviceMultiviewFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceMultiviewFeatures const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceMultiviewFeatures & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceMultiviewFeatures & setMultiview( VULKAN_HPP_NAMESPACE::Bool32 multiview_ ) VULKAN_HPP_NOEXCEPT
+ {
+ multiview = multiview_;
+ return *this;
+ }
+
+ PhysicalDeviceMultiviewFeatures &
+ setMultiviewGeometryShader( VULKAN_HPP_NAMESPACE::Bool32 multiviewGeometryShader_ ) VULKAN_HPP_NOEXCEPT
+ {
+ multiviewGeometryShader = multiviewGeometryShader_;
+ return *this;
+ }
+
+ PhysicalDeviceMultiviewFeatures &
+ setMultiviewTessellationShader( VULKAN_HPP_NAMESPACE::Bool32 multiviewTessellationShader_ ) VULKAN_HPP_NOEXCEPT
+ {
+ multiviewTessellationShader = multiviewTessellationShader_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceMultiviewFeatures const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceMultiviewFeatures *>( this );
+ }
+
+ operator VkPhysicalDeviceMultiviewFeatures &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceMultiviewFeatures *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceMultiviewFeatures const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceMultiviewFeatures const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( multiview == rhs.multiview ) &&
+ ( multiviewGeometryShader == rhs.multiviewGeometryShader ) &&
+ ( multiviewTessellationShader == rhs.multiviewTessellationShader );
+ }
+
+ bool operator!=( PhysicalDeviceMultiviewFeatures const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceMultiviewFeatures;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 multiview = {};
+ VULKAN_HPP_NAMESPACE::Bool32 multiviewGeometryShader = {};
+ VULKAN_HPP_NAMESPACE::Bool32 multiviewTessellationShader = {};
+ };
+ static_assert( sizeof( PhysicalDeviceMultiviewFeatures ) == sizeof( VkPhysicalDeviceMultiviewFeatures ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceMultiviewFeatures>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceMultiviewFeatures>
+ {
+ using Type = PhysicalDeviceMultiviewFeatures;
+ };
+ using PhysicalDeviceMultiviewFeaturesKHR = PhysicalDeviceMultiviewFeatures;
+
+ struct PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceMultiviewPerViewAttributesPropertiesNVX;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX(
+ VULKAN_HPP_NAMESPACE::Bool32 perViewPositionAllComponents_ = {} ) VULKAN_HPP_NOEXCEPT
+ : perViewPositionAllComponents( perViewPositionAllComponents_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX(
+ PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX(
+ VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX(
+ *reinterpret_cast<PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX &
+ operator=( PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX &
+ operator=( VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this =
+ *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX *>( this );
+ }
+
+ operator VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( perViewPositionAllComponents == rhs.perViewPositionAllComponents );
+ }
+
+ bool operator!=( PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceMultiviewPerViewAttributesPropertiesNVX;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 perViewPositionAllComponents = {};
+ };
+ static_assert( sizeof( PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX ) ==
+ sizeof( VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceMultiviewPerViewAttributesPropertiesNVX>
+ {
+ using Type = PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX;
+ };
+
+ struct PhysicalDeviceMultiviewProperties
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceMultiviewProperties;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ PhysicalDeviceMultiviewProperties( uint32_t maxMultiviewViewCount_ = {},
+ uint32_t maxMultiviewInstanceIndex_ = {} ) VULKAN_HPP_NOEXCEPT
+ : maxMultiviewViewCount( maxMultiviewViewCount_ )
+ , maxMultiviewInstanceIndex( maxMultiviewInstanceIndex_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ PhysicalDeviceMultiviewProperties( PhysicalDeviceMultiviewProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceMultiviewProperties( VkPhysicalDeviceMultiviewProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceMultiviewProperties( *reinterpret_cast<PhysicalDeviceMultiviewProperties const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceMultiviewProperties &
+ operator=( PhysicalDeviceMultiviewProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceMultiviewProperties & operator=( VkPhysicalDeviceMultiviewProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceMultiviewProperties const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDeviceMultiviewProperties const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceMultiviewProperties *>( this );
+ }
+
+ operator VkPhysicalDeviceMultiviewProperties &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceMultiviewProperties *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceMultiviewProperties const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceMultiviewProperties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( maxMultiviewViewCount == rhs.maxMultiviewViewCount ) &&
+ ( maxMultiviewInstanceIndex == rhs.maxMultiviewInstanceIndex );
+ }
+
+ bool operator!=( PhysicalDeviceMultiviewProperties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceMultiviewProperties;
+ void * pNext = {};
+ uint32_t maxMultiviewViewCount = {};
+ uint32_t maxMultiviewInstanceIndex = {};
+ };
+ static_assert( sizeof( PhysicalDeviceMultiviewProperties ) == sizeof( VkPhysicalDeviceMultiviewProperties ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceMultiviewProperties>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceMultiviewProperties>
+ {
+ using Type = PhysicalDeviceMultiviewProperties;
+ };
+ using PhysicalDeviceMultiviewPropertiesKHR = PhysicalDeviceMultiviewProperties;
+
+ struct PhysicalDeviceMutableDescriptorTypeFeaturesVALVE
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceMutableDescriptorTypeFeaturesVALVE;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceMutableDescriptorTypeFeaturesVALVE(
+ VULKAN_HPP_NAMESPACE::Bool32 mutableDescriptorType_ = {} ) VULKAN_HPP_NOEXCEPT
+ : mutableDescriptorType( mutableDescriptorType_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceMutableDescriptorTypeFeaturesVALVE(
+ PhysicalDeviceMutableDescriptorTypeFeaturesVALVE const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceMutableDescriptorTypeFeaturesVALVE( VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceMutableDescriptorTypeFeaturesVALVE(
+ *reinterpret_cast<PhysicalDeviceMutableDescriptorTypeFeaturesVALVE const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceMutableDescriptorTypeFeaturesVALVE &
+ operator=( PhysicalDeviceMutableDescriptorTypeFeaturesVALVE const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceMutableDescriptorTypeFeaturesVALVE &
+ operator=( VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceMutableDescriptorTypeFeaturesVALVE const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceMutableDescriptorTypeFeaturesVALVE & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceMutableDescriptorTypeFeaturesVALVE &
+ setMutableDescriptorType( VULKAN_HPP_NAMESPACE::Bool32 mutableDescriptorType_ ) VULKAN_HPP_NOEXCEPT
+ {
+ mutableDescriptorType = mutableDescriptorType_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE *>( this );
+ }
+
+ operator VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceMutableDescriptorTypeFeaturesVALVE const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceMutableDescriptorTypeFeaturesVALVE const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( mutableDescriptorType == rhs.mutableDescriptorType );
+ }
+
+ bool operator!=( PhysicalDeviceMutableDescriptorTypeFeaturesVALVE const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceMutableDescriptorTypeFeaturesVALVE;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 mutableDescriptorType = {};
+ };
+ static_assert( sizeof( PhysicalDeviceMutableDescriptorTypeFeaturesVALVE ) ==
+ sizeof( VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceMutableDescriptorTypeFeaturesVALVE>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceMutableDescriptorTypeFeaturesVALVE>
+ {
+ using Type = PhysicalDeviceMutableDescriptorTypeFeaturesVALVE;
+ };
+
+ struct PhysicalDevicePCIBusInfoPropertiesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDevicePciBusInfoPropertiesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDevicePCIBusInfoPropertiesEXT( uint32_t pciDomain_ = {},
+ uint32_t pciBus_ = {},
+ uint32_t pciDevice_ = {},
+ uint32_t pciFunction_ = {} ) VULKAN_HPP_NOEXCEPT
+ : pciDomain( pciDomain_ )
+ , pciBus( pciBus_ )
+ , pciDevice( pciDevice_ )
+ , pciFunction( pciFunction_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDevicePCIBusInfoPropertiesEXT( PhysicalDevicePCIBusInfoPropertiesEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDevicePCIBusInfoPropertiesEXT( VkPhysicalDevicePCIBusInfoPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDevicePCIBusInfoPropertiesEXT(
+ *reinterpret_cast<PhysicalDevicePCIBusInfoPropertiesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDevicePCIBusInfoPropertiesEXT &
+ operator=( PhysicalDevicePCIBusInfoPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDevicePCIBusInfoPropertiesEXT &
+ operator=( VkPhysicalDevicePCIBusInfoPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDevicePCIBusInfoPropertiesEXT const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDevicePCIBusInfoPropertiesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDevicePCIBusInfoPropertiesEXT *>( this );
+ }
+
+ operator VkPhysicalDevicePCIBusInfoPropertiesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDevicePCIBusInfoPropertiesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDevicePCIBusInfoPropertiesEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDevicePCIBusInfoPropertiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( pciDomain == rhs.pciDomain ) &&
+ ( pciBus == rhs.pciBus ) && ( pciDevice == rhs.pciDevice ) && ( pciFunction == rhs.pciFunction );
+ }
+
+ bool operator!=( PhysicalDevicePCIBusInfoPropertiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDevicePciBusInfoPropertiesEXT;
+ void * pNext = {};
+ uint32_t pciDomain = {};
+ uint32_t pciBus = {};
+ uint32_t pciDevice = {};
+ uint32_t pciFunction = {};
+ };
+ static_assert( sizeof( PhysicalDevicePCIBusInfoPropertiesEXT ) == sizeof( VkPhysicalDevicePCIBusInfoPropertiesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDevicePCIBusInfoPropertiesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDevicePciBusInfoPropertiesEXT>
+ {
+ using Type = PhysicalDevicePCIBusInfoPropertiesEXT;
+ };
+
+ struct PhysicalDevicePerformanceQueryFeaturesKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDevicePerformanceQueryFeaturesKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDevicePerformanceQueryFeaturesKHR(
+ VULKAN_HPP_NAMESPACE::Bool32 performanceCounterQueryPools_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 performanceCounterMultipleQueryPools_ = {} ) VULKAN_HPP_NOEXCEPT
+ : performanceCounterQueryPools( performanceCounterQueryPools_ )
+ , performanceCounterMultipleQueryPools( performanceCounterMultipleQueryPools_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDevicePerformanceQueryFeaturesKHR(
+ PhysicalDevicePerformanceQueryFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDevicePerformanceQueryFeaturesKHR( VkPhysicalDevicePerformanceQueryFeaturesKHR const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDevicePerformanceQueryFeaturesKHR(
+ *reinterpret_cast<PhysicalDevicePerformanceQueryFeaturesKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDevicePerformanceQueryFeaturesKHR &
+ operator=( PhysicalDevicePerformanceQueryFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDevicePerformanceQueryFeaturesKHR &
+ operator=( VkPhysicalDevicePerformanceQueryFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDevicePerformanceQueryFeaturesKHR const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDevicePerformanceQueryFeaturesKHR & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDevicePerformanceQueryFeaturesKHR &
+ setPerformanceCounterQueryPools( VULKAN_HPP_NAMESPACE::Bool32 performanceCounterQueryPools_ ) VULKAN_HPP_NOEXCEPT
+ {
+ performanceCounterQueryPools = performanceCounterQueryPools_;
+ return *this;
+ }
+
+ PhysicalDevicePerformanceQueryFeaturesKHR & setPerformanceCounterMultipleQueryPools(
+ VULKAN_HPP_NAMESPACE::Bool32 performanceCounterMultipleQueryPools_ ) VULKAN_HPP_NOEXCEPT
+ {
+ performanceCounterMultipleQueryPools = performanceCounterMultipleQueryPools_;
+ return *this;
+ }
+
+ operator VkPhysicalDevicePerformanceQueryFeaturesKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDevicePerformanceQueryFeaturesKHR *>( this );
+ }
+
+ operator VkPhysicalDevicePerformanceQueryFeaturesKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDevicePerformanceQueryFeaturesKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDevicePerformanceQueryFeaturesKHR const & ) const = default;
+#else
+ bool operator==( PhysicalDevicePerformanceQueryFeaturesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( performanceCounterQueryPools == rhs.performanceCounterQueryPools ) &&
+ ( performanceCounterMultipleQueryPools == rhs.performanceCounterMultipleQueryPools );
+ }
+
+ bool operator!=( PhysicalDevicePerformanceQueryFeaturesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDevicePerformanceQueryFeaturesKHR;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 performanceCounterQueryPools = {};
+ VULKAN_HPP_NAMESPACE::Bool32 performanceCounterMultipleQueryPools = {};
+ };
+ static_assert( sizeof( PhysicalDevicePerformanceQueryFeaturesKHR ) ==
+ sizeof( VkPhysicalDevicePerformanceQueryFeaturesKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDevicePerformanceQueryFeaturesKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDevicePerformanceQueryFeaturesKHR>
+ {
+ using Type = PhysicalDevicePerformanceQueryFeaturesKHR;
+ };
+
+ struct PhysicalDevicePerformanceQueryPropertiesKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDevicePerformanceQueryPropertiesKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDevicePerformanceQueryPropertiesKHR(
+ VULKAN_HPP_NAMESPACE::Bool32 allowCommandBufferQueryCopies_ = {} ) VULKAN_HPP_NOEXCEPT
+ : allowCommandBufferQueryCopies( allowCommandBufferQueryCopies_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDevicePerformanceQueryPropertiesKHR(
+ PhysicalDevicePerformanceQueryPropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDevicePerformanceQueryPropertiesKHR( VkPhysicalDevicePerformanceQueryPropertiesKHR const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDevicePerformanceQueryPropertiesKHR(
+ *reinterpret_cast<PhysicalDevicePerformanceQueryPropertiesKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDevicePerformanceQueryPropertiesKHR &
+ operator=( PhysicalDevicePerformanceQueryPropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDevicePerformanceQueryPropertiesKHR &
+ operator=( VkPhysicalDevicePerformanceQueryPropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDevicePerformanceQueryPropertiesKHR const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDevicePerformanceQueryPropertiesKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDevicePerformanceQueryPropertiesKHR *>( this );
+ }
+
+ operator VkPhysicalDevicePerformanceQueryPropertiesKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDevicePerformanceQueryPropertiesKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDevicePerformanceQueryPropertiesKHR const & ) const = default;
+#else
+ bool operator==( PhysicalDevicePerformanceQueryPropertiesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( allowCommandBufferQueryCopies == rhs.allowCommandBufferQueryCopies );
+ }
+
+ bool operator!=( PhysicalDevicePerformanceQueryPropertiesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDevicePerformanceQueryPropertiesKHR;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 allowCommandBufferQueryCopies = {};
+ };
+ static_assert( sizeof( PhysicalDevicePerformanceQueryPropertiesKHR ) ==
+ sizeof( VkPhysicalDevicePerformanceQueryPropertiesKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDevicePerformanceQueryPropertiesKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDevicePerformanceQueryPropertiesKHR>
+ {
+ using Type = PhysicalDevicePerformanceQueryPropertiesKHR;
+ };
+
+ struct PhysicalDevicePipelineCreationCacheControlFeaturesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDevicePipelineCreationCacheControlFeaturesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDevicePipelineCreationCacheControlFeaturesEXT(
+ VULKAN_HPP_NAMESPACE::Bool32 pipelineCreationCacheControl_ = {} ) VULKAN_HPP_NOEXCEPT
+ : pipelineCreationCacheControl( pipelineCreationCacheControl_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDevicePipelineCreationCacheControlFeaturesEXT(
+ PhysicalDevicePipelineCreationCacheControlFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDevicePipelineCreationCacheControlFeaturesEXT(
+ VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDevicePipelineCreationCacheControlFeaturesEXT(
+ *reinterpret_cast<PhysicalDevicePipelineCreationCacheControlFeaturesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDevicePipelineCreationCacheControlFeaturesEXT &
+ operator=( PhysicalDevicePipelineCreationCacheControlFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDevicePipelineCreationCacheControlFeaturesEXT &
+ operator=( VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this =
+ *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDevicePipelineCreationCacheControlFeaturesEXT const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDevicePipelineCreationCacheControlFeaturesEXT & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDevicePipelineCreationCacheControlFeaturesEXT &
+ setPipelineCreationCacheControl( VULKAN_HPP_NAMESPACE::Bool32 pipelineCreationCacheControl_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pipelineCreationCacheControl = pipelineCreationCacheControl_;
+ return *this;
+ }
+
+ operator VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT *>( this );
+ }
+
+ operator VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDevicePipelineCreationCacheControlFeaturesEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDevicePipelineCreationCacheControlFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( pipelineCreationCacheControl == rhs.pipelineCreationCacheControl );
+ }
+
+ bool operator!=( PhysicalDevicePipelineCreationCacheControlFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDevicePipelineCreationCacheControlFeaturesEXT;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 pipelineCreationCacheControl = {};
+ };
+ static_assert( sizeof( PhysicalDevicePipelineCreationCacheControlFeaturesEXT ) ==
+ sizeof( VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDevicePipelineCreationCacheControlFeaturesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDevicePipelineCreationCacheControlFeaturesEXT>
+ {
+ using Type = PhysicalDevicePipelineCreationCacheControlFeaturesEXT;
+ };
+
+ struct PhysicalDevicePipelineExecutablePropertiesFeaturesKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDevicePipelineExecutablePropertiesFeaturesKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDevicePipelineExecutablePropertiesFeaturesKHR(
+ VULKAN_HPP_NAMESPACE::Bool32 pipelineExecutableInfo_ = {} ) VULKAN_HPP_NOEXCEPT
+ : pipelineExecutableInfo( pipelineExecutableInfo_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDevicePipelineExecutablePropertiesFeaturesKHR(
+ PhysicalDevicePipelineExecutablePropertiesFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDevicePipelineExecutablePropertiesFeaturesKHR(
+ VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDevicePipelineExecutablePropertiesFeaturesKHR(
+ *reinterpret_cast<PhysicalDevicePipelineExecutablePropertiesFeaturesKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDevicePipelineExecutablePropertiesFeaturesKHR &
+ operator=( PhysicalDevicePipelineExecutablePropertiesFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDevicePipelineExecutablePropertiesFeaturesKHR &
+ operator=( VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this =
+ *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDevicePipelineExecutablePropertiesFeaturesKHR const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDevicePipelineExecutablePropertiesFeaturesKHR & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDevicePipelineExecutablePropertiesFeaturesKHR &
+ setPipelineExecutableInfo( VULKAN_HPP_NAMESPACE::Bool32 pipelineExecutableInfo_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pipelineExecutableInfo = pipelineExecutableInfo_;
+ return *this;
+ }
+
+ operator VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR *>( this );
+ }
+
+ operator VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDevicePipelineExecutablePropertiesFeaturesKHR const & ) const = default;
+#else
+ bool operator==( PhysicalDevicePipelineExecutablePropertiesFeaturesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( pipelineExecutableInfo == rhs.pipelineExecutableInfo );
+ }
+
+ bool operator!=( PhysicalDevicePipelineExecutablePropertiesFeaturesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDevicePipelineExecutablePropertiesFeaturesKHR;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 pipelineExecutableInfo = {};
+ };
+ static_assert( sizeof( PhysicalDevicePipelineExecutablePropertiesFeaturesKHR ) ==
+ sizeof( VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDevicePipelineExecutablePropertiesFeaturesKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDevicePipelineExecutablePropertiesFeaturesKHR>
+ {
+ using Type = PhysicalDevicePipelineExecutablePropertiesFeaturesKHR;
+ };
+
+ struct PhysicalDevicePointClippingProperties
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDevicePointClippingProperties;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDevicePointClippingProperties(
+ VULKAN_HPP_NAMESPACE::PointClippingBehavior pointClippingBehavior_ =
+ VULKAN_HPP_NAMESPACE::PointClippingBehavior::eAllClipPlanes ) VULKAN_HPP_NOEXCEPT
+ : pointClippingBehavior( pointClippingBehavior_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDevicePointClippingProperties( PhysicalDevicePointClippingProperties const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDevicePointClippingProperties( VkPhysicalDevicePointClippingProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDevicePointClippingProperties(
+ *reinterpret_cast<PhysicalDevicePointClippingProperties const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDevicePointClippingProperties &
+ operator=( PhysicalDevicePointClippingProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDevicePointClippingProperties &
+ operator=( VkPhysicalDevicePointClippingProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDevicePointClippingProperties const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDevicePointClippingProperties const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDevicePointClippingProperties *>( this );
+ }
+
+ operator VkPhysicalDevicePointClippingProperties &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDevicePointClippingProperties *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDevicePointClippingProperties const & ) const = default;
+#else
+ bool operator==( PhysicalDevicePointClippingProperties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( pointClippingBehavior == rhs.pointClippingBehavior );
+ }
+
+ bool operator!=( PhysicalDevicePointClippingProperties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDevicePointClippingProperties;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::PointClippingBehavior pointClippingBehavior =
+ VULKAN_HPP_NAMESPACE::PointClippingBehavior::eAllClipPlanes;
+ };
+ static_assert( sizeof( PhysicalDevicePointClippingProperties ) == sizeof( VkPhysicalDevicePointClippingProperties ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDevicePointClippingProperties>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDevicePointClippingProperties>
+ {
+ using Type = PhysicalDevicePointClippingProperties;
+ };
+ using PhysicalDevicePointClippingPropertiesKHR = PhysicalDevicePointClippingProperties;
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct PhysicalDevicePortabilitySubsetFeaturesKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDevicePortabilitySubsetFeaturesKHR;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDevicePortabilitySubsetFeaturesKHR(
+ VULKAN_HPP_NAMESPACE::Bool32 constantAlphaColorBlendFactors_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 events_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 imageViewFormatReinterpretation_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 imageViewFormatSwizzle_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 imageView2DOn3DImage_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 multisampleArrayImage_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 mutableComparisonSamplers_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 pointPolygons_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 samplerMipLodBias_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 separateStencilMaskRef_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderSampleRateInterpolationFunctions_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 tessellationIsolines_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 tessellationPointMode_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 triangleFans_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 vertexAttributeAccessBeyondStride_ = {} ) VULKAN_HPP_NOEXCEPT
+ : constantAlphaColorBlendFactors( constantAlphaColorBlendFactors_ )
+ , events( events_ )
+ , imageViewFormatReinterpretation( imageViewFormatReinterpretation_ )
+ , imageViewFormatSwizzle( imageViewFormatSwizzle_ )
+ , imageView2DOn3DImage( imageView2DOn3DImage_ )
+ , multisampleArrayImage( multisampleArrayImage_ )
+ , mutableComparisonSamplers( mutableComparisonSamplers_ )
+ , pointPolygons( pointPolygons_ )
+ , samplerMipLodBias( samplerMipLodBias_ )
+ , separateStencilMaskRef( separateStencilMaskRef_ )
+ , shaderSampleRateInterpolationFunctions( shaderSampleRateInterpolationFunctions_ )
+ , tessellationIsolines( tessellationIsolines_ )
+ , tessellationPointMode( tessellationPointMode_ )
+ , triangleFans( triangleFans_ )
+ , vertexAttributeAccessBeyondStride( vertexAttributeAccessBeyondStride_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDevicePortabilitySubsetFeaturesKHR(
+ PhysicalDevicePortabilitySubsetFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDevicePortabilitySubsetFeaturesKHR( VkPhysicalDevicePortabilitySubsetFeaturesKHR const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDevicePortabilitySubsetFeaturesKHR(
+ *reinterpret_cast<PhysicalDevicePortabilitySubsetFeaturesKHR const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDevicePortabilitySubsetFeaturesKHR &
+ operator=( PhysicalDevicePortabilitySubsetFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDevicePortabilitySubsetFeaturesKHR &
+ operator=( VkPhysicalDevicePortabilitySubsetFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDevicePortabilitySubsetFeaturesKHR const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDevicePortabilitySubsetFeaturesKHR & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDevicePortabilitySubsetFeaturesKHR & setConstantAlphaColorBlendFactors(
+ VULKAN_HPP_NAMESPACE::Bool32 constantAlphaColorBlendFactors_ ) VULKAN_HPP_NOEXCEPT
+ {
+ constantAlphaColorBlendFactors = constantAlphaColorBlendFactors_;
+ return *this;
+ }
+
+ PhysicalDevicePortabilitySubsetFeaturesKHR & setEvents( VULKAN_HPP_NAMESPACE::Bool32 events_ ) VULKAN_HPP_NOEXCEPT
+ {
+ events = events_;
+ return *this;
+ }
+
+ PhysicalDevicePortabilitySubsetFeaturesKHR & setImageViewFormatReinterpretation(
+ VULKAN_HPP_NAMESPACE::Bool32 imageViewFormatReinterpretation_ ) VULKAN_HPP_NOEXCEPT
+ {
+ imageViewFormatReinterpretation = imageViewFormatReinterpretation_;
+ return *this;
+ }
+
+ PhysicalDevicePortabilitySubsetFeaturesKHR &
+ setImageViewFormatSwizzle( VULKAN_HPP_NAMESPACE::Bool32 imageViewFormatSwizzle_ ) VULKAN_HPP_NOEXCEPT
+ {
+ imageViewFormatSwizzle = imageViewFormatSwizzle_;
+ return *this;
+ }
+
+ PhysicalDevicePortabilitySubsetFeaturesKHR &
+ setImageView2DOn3DImage( VULKAN_HPP_NAMESPACE::Bool32 imageView2DOn3DImage_ ) VULKAN_HPP_NOEXCEPT
+ {
+ imageView2DOn3DImage = imageView2DOn3DImage_;
+ return *this;
+ }
+
+ PhysicalDevicePortabilitySubsetFeaturesKHR &
+ setMultisampleArrayImage( VULKAN_HPP_NAMESPACE::Bool32 multisampleArrayImage_ ) VULKAN_HPP_NOEXCEPT
+ {
+ multisampleArrayImage = multisampleArrayImage_;
+ return *this;
+ }
+
+ PhysicalDevicePortabilitySubsetFeaturesKHR &
+ setMutableComparisonSamplers( VULKAN_HPP_NAMESPACE::Bool32 mutableComparisonSamplers_ ) VULKAN_HPP_NOEXCEPT
+ {
+ mutableComparisonSamplers = mutableComparisonSamplers_;
+ return *this;
+ }
+
+ PhysicalDevicePortabilitySubsetFeaturesKHR &
+ setPointPolygons( VULKAN_HPP_NAMESPACE::Bool32 pointPolygons_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pointPolygons = pointPolygons_;
+ return *this;
+ }
+
+ PhysicalDevicePortabilitySubsetFeaturesKHR &
+ setSamplerMipLodBias( VULKAN_HPP_NAMESPACE::Bool32 samplerMipLodBias_ ) VULKAN_HPP_NOEXCEPT
+ {
+ samplerMipLodBias = samplerMipLodBias_;
+ return *this;
+ }
+
+ PhysicalDevicePortabilitySubsetFeaturesKHR &
+ setSeparateStencilMaskRef( VULKAN_HPP_NAMESPACE::Bool32 separateStencilMaskRef_ ) VULKAN_HPP_NOEXCEPT
+ {
+ separateStencilMaskRef = separateStencilMaskRef_;
+ return *this;
+ }
+
+ PhysicalDevicePortabilitySubsetFeaturesKHR & setShaderSampleRateInterpolationFunctions(
+ VULKAN_HPP_NAMESPACE::Bool32 shaderSampleRateInterpolationFunctions_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderSampleRateInterpolationFunctions = shaderSampleRateInterpolationFunctions_;
+ return *this;
+ }
+
+ PhysicalDevicePortabilitySubsetFeaturesKHR &
+ setTessellationIsolines( VULKAN_HPP_NAMESPACE::Bool32 tessellationIsolines_ ) VULKAN_HPP_NOEXCEPT
+ {
+ tessellationIsolines = tessellationIsolines_;
+ return *this;
+ }
+
+ PhysicalDevicePortabilitySubsetFeaturesKHR &
+ setTessellationPointMode( VULKAN_HPP_NAMESPACE::Bool32 tessellationPointMode_ ) VULKAN_HPP_NOEXCEPT
+ {
+ tessellationPointMode = tessellationPointMode_;
+ return *this;
+ }
+
+ PhysicalDevicePortabilitySubsetFeaturesKHR &
+ setTriangleFans( VULKAN_HPP_NAMESPACE::Bool32 triangleFans_ ) VULKAN_HPP_NOEXCEPT
+ {
+ triangleFans = triangleFans_;
+ return *this;
+ }
+
+ PhysicalDevicePortabilitySubsetFeaturesKHR & setVertexAttributeAccessBeyondStride(
+ VULKAN_HPP_NAMESPACE::Bool32 vertexAttributeAccessBeyondStride_ ) VULKAN_HPP_NOEXCEPT
+ {
+ vertexAttributeAccessBeyondStride = vertexAttributeAccessBeyondStride_;
+ return *this;
+ }
+
+ operator VkPhysicalDevicePortabilitySubsetFeaturesKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDevicePortabilitySubsetFeaturesKHR *>( this );
+ }
+
+ operator VkPhysicalDevicePortabilitySubsetFeaturesKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDevicePortabilitySubsetFeaturesKHR *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDevicePortabilitySubsetFeaturesKHR const & ) const = default;
+# else
+ bool operator==( PhysicalDevicePortabilitySubsetFeaturesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( constantAlphaColorBlendFactors == rhs.constantAlphaColorBlendFactors ) && ( events == rhs.events ) &&
+ ( imageViewFormatReinterpretation == rhs.imageViewFormatReinterpretation ) &&
+ ( imageViewFormatSwizzle == rhs.imageViewFormatSwizzle ) &&
+ ( imageView2DOn3DImage == rhs.imageView2DOn3DImage ) &&
+ ( multisampleArrayImage == rhs.multisampleArrayImage ) &&
+ ( mutableComparisonSamplers == rhs.mutableComparisonSamplers ) && ( pointPolygons == rhs.pointPolygons ) &&
+ ( samplerMipLodBias == rhs.samplerMipLodBias ) &&
+ ( separateStencilMaskRef == rhs.separateStencilMaskRef ) &&
+ ( shaderSampleRateInterpolationFunctions == rhs.shaderSampleRateInterpolationFunctions ) &&
+ ( tessellationIsolines == rhs.tessellationIsolines ) &&
+ ( tessellationPointMode == rhs.tessellationPointMode ) && ( triangleFans == rhs.triangleFans ) &&
+ ( vertexAttributeAccessBeyondStride == rhs.vertexAttributeAccessBeyondStride );
+ }
+
+ bool operator!=( PhysicalDevicePortabilitySubsetFeaturesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDevicePortabilitySubsetFeaturesKHR;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 constantAlphaColorBlendFactors = {};
+ VULKAN_HPP_NAMESPACE::Bool32 events = {};
+ VULKAN_HPP_NAMESPACE::Bool32 imageViewFormatReinterpretation = {};
+ VULKAN_HPP_NAMESPACE::Bool32 imageViewFormatSwizzle = {};
+ VULKAN_HPP_NAMESPACE::Bool32 imageView2DOn3DImage = {};
+ VULKAN_HPP_NAMESPACE::Bool32 multisampleArrayImage = {};
+ VULKAN_HPP_NAMESPACE::Bool32 mutableComparisonSamplers = {};
+ VULKAN_HPP_NAMESPACE::Bool32 pointPolygons = {};
+ VULKAN_HPP_NAMESPACE::Bool32 samplerMipLodBias = {};
+ VULKAN_HPP_NAMESPACE::Bool32 separateStencilMaskRef = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderSampleRateInterpolationFunctions = {};
+ VULKAN_HPP_NAMESPACE::Bool32 tessellationIsolines = {};
+ VULKAN_HPP_NAMESPACE::Bool32 tessellationPointMode = {};
+ VULKAN_HPP_NAMESPACE::Bool32 triangleFans = {};
+ VULKAN_HPP_NAMESPACE::Bool32 vertexAttributeAccessBeyondStride = {};
+ };
+ static_assert( sizeof( PhysicalDevicePortabilitySubsetFeaturesKHR ) ==
+ sizeof( VkPhysicalDevicePortabilitySubsetFeaturesKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDevicePortabilitySubsetFeaturesKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDevicePortabilitySubsetFeaturesKHR>
+ {
+ using Type = PhysicalDevicePortabilitySubsetFeaturesKHR;
+ };
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct PhysicalDevicePortabilitySubsetPropertiesKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDevicePortabilitySubsetPropertiesKHR;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDevicePortabilitySubsetPropertiesKHR(
+ uint32_t minVertexInputBindingStrideAlignment_ = {} ) VULKAN_HPP_NOEXCEPT
+ : minVertexInputBindingStrideAlignment( minVertexInputBindingStrideAlignment_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDevicePortabilitySubsetPropertiesKHR(
+ PhysicalDevicePortabilitySubsetPropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDevicePortabilitySubsetPropertiesKHR( VkPhysicalDevicePortabilitySubsetPropertiesKHR const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDevicePortabilitySubsetPropertiesKHR(
+ *reinterpret_cast<PhysicalDevicePortabilitySubsetPropertiesKHR const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDevicePortabilitySubsetPropertiesKHR &
+ operator=( PhysicalDevicePortabilitySubsetPropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDevicePortabilitySubsetPropertiesKHR &
+ operator=( VkPhysicalDevicePortabilitySubsetPropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDevicePortabilitySubsetPropertiesKHR const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDevicePortabilitySubsetPropertiesKHR & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDevicePortabilitySubsetPropertiesKHR &
+ setMinVertexInputBindingStrideAlignment( uint32_t minVertexInputBindingStrideAlignment_ ) VULKAN_HPP_NOEXCEPT
+ {
+ minVertexInputBindingStrideAlignment = minVertexInputBindingStrideAlignment_;
+ return *this;
+ }
+
+ operator VkPhysicalDevicePortabilitySubsetPropertiesKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDevicePortabilitySubsetPropertiesKHR *>( this );
+ }
+
+ operator VkPhysicalDevicePortabilitySubsetPropertiesKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDevicePortabilitySubsetPropertiesKHR *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDevicePortabilitySubsetPropertiesKHR const & ) const = default;
+# else
+ bool operator==( PhysicalDevicePortabilitySubsetPropertiesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( minVertexInputBindingStrideAlignment == rhs.minVertexInputBindingStrideAlignment );
+ }
+
+ bool operator!=( PhysicalDevicePortabilitySubsetPropertiesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDevicePortabilitySubsetPropertiesKHR;
+ void * pNext = {};
+ uint32_t minVertexInputBindingStrideAlignment = {};
+ };
+ static_assert( sizeof( PhysicalDevicePortabilitySubsetPropertiesKHR ) ==
+ sizeof( VkPhysicalDevicePortabilitySubsetPropertiesKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDevicePortabilitySubsetPropertiesKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDevicePortabilitySubsetPropertiesKHR>
+ {
+ using Type = PhysicalDevicePortabilitySubsetPropertiesKHR;
+ };
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+ struct PhysicalDevicePrivateDataFeaturesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDevicePrivateDataFeaturesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ PhysicalDevicePrivateDataFeaturesEXT( VULKAN_HPP_NAMESPACE::Bool32 privateData_ = {} ) VULKAN_HPP_NOEXCEPT
+ : privateData( privateData_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDevicePrivateDataFeaturesEXT( PhysicalDevicePrivateDataFeaturesEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDevicePrivateDataFeaturesEXT( VkPhysicalDevicePrivateDataFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDevicePrivateDataFeaturesEXT( *reinterpret_cast<PhysicalDevicePrivateDataFeaturesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDevicePrivateDataFeaturesEXT &
+ operator=( PhysicalDevicePrivateDataFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDevicePrivateDataFeaturesEXT &
+ operator=( VkPhysicalDevicePrivateDataFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDevicePrivateDataFeaturesEXT const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDevicePrivateDataFeaturesEXT & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDevicePrivateDataFeaturesEXT &
+ setPrivateData( VULKAN_HPP_NAMESPACE::Bool32 privateData_ ) VULKAN_HPP_NOEXCEPT
+ {
+ privateData = privateData_;
+ return *this;
+ }
+
+ operator VkPhysicalDevicePrivateDataFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDevicePrivateDataFeaturesEXT *>( this );
+ }
+
+ operator VkPhysicalDevicePrivateDataFeaturesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDevicePrivateDataFeaturesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDevicePrivateDataFeaturesEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDevicePrivateDataFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( privateData == rhs.privateData );
+ }
+
+ bool operator!=( PhysicalDevicePrivateDataFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDevicePrivateDataFeaturesEXT;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 privateData = {};
+ };
+ static_assert( sizeof( PhysicalDevicePrivateDataFeaturesEXT ) == sizeof( VkPhysicalDevicePrivateDataFeaturesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDevicePrivateDataFeaturesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDevicePrivateDataFeaturesEXT>
+ {
+ using Type = PhysicalDevicePrivateDataFeaturesEXT;
+ };
+
+ struct PhysicalDeviceSparseProperties
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceSparseProperties(
+ VULKAN_HPP_NAMESPACE::Bool32 residencyStandard2DBlockShape_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 residencyStandard2DMultisampleBlockShape_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 residencyStandard3DBlockShape_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 residencyAlignedMipSize_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 residencyNonResidentStrict_ = {} ) VULKAN_HPP_NOEXCEPT
+ : residencyStandard2DBlockShape( residencyStandard2DBlockShape_ )
+ , residencyStandard2DMultisampleBlockShape( residencyStandard2DMultisampleBlockShape_ )
+ , residencyStandard3DBlockShape( residencyStandard3DBlockShape_ )
+ , residencyAlignedMipSize( residencyAlignedMipSize_ )
+ , residencyNonResidentStrict( residencyNonResidentStrict_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ PhysicalDeviceSparseProperties( PhysicalDeviceSparseProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceSparseProperties( VkPhysicalDeviceSparseProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceSparseProperties( *reinterpret_cast<PhysicalDeviceSparseProperties const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceSparseProperties &
+ operator=( PhysicalDeviceSparseProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceSparseProperties & operator=( VkPhysicalDeviceSparseProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceSparseProperties const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDeviceSparseProperties const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceSparseProperties *>( this );
+ }
+
+ operator VkPhysicalDeviceSparseProperties &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceSparseProperties *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceSparseProperties const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceSparseProperties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( residencyStandard2DBlockShape == rhs.residencyStandard2DBlockShape ) &&
+ ( residencyStandard2DMultisampleBlockShape == rhs.residencyStandard2DMultisampleBlockShape ) &&
+ ( residencyStandard3DBlockShape == rhs.residencyStandard3DBlockShape ) &&
+ ( residencyAlignedMipSize == rhs.residencyAlignedMipSize ) &&
+ ( residencyNonResidentStrict == rhs.residencyNonResidentStrict );
+ }
+
+ bool operator!=( PhysicalDeviceSparseProperties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::Bool32 residencyStandard2DBlockShape = {};
+ VULKAN_HPP_NAMESPACE::Bool32 residencyStandard2DMultisampleBlockShape = {};
+ VULKAN_HPP_NAMESPACE::Bool32 residencyStandard3DBlockShape = {};
+ VULKAN_HPP_NAMESPACE::Bool32 residencyAlignedMipSize = {};
+ VULKAN_HPP_NAMESPACE::Bool32 residencyNonResidentStrict = {};
+ };
+ static_assert( sizeof( PhysicalDeviceSparseProperties ) == sizeof( VkPhysicalDeviceSparseProperties ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceSparseProperties>::value,
+ "struct wrapper is not a standard layout!" );
+
+ struct PhysicalDeviceProperties
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceProperties(
+ uint32_t apiVersion_ = {},
+ uint32_t driverVersion_ = {},
+ uint32_t vendorID_ = {},
+ uint32_t deviceID_ = {},
+ VULKAN_HPP_NAMESPACE::PhysicalDeviceType deviceType_ = VULKAN_HPP_NAMESPACE::PhysicalDeviceType::eOther,
+ std::array<char, VK_MAX_PHYSICAL_DEVICE_NAME_SIZE> const & deviceName_ = {},
+ std::array<uint8_t, VK_UUID_SIZE> const & pipelineCacheUUID_ = {},
+ VULKAN_HPP_NAMESPACE::PhysicalDeviceLimits limits_ = {},
+ VULKAN_HPP_NAMESPACE::PhysicalDeviceSparseProperties sparseProperties_ = {} ) VULKAN_HPP_NOEXCEPT
+ : apiVersion( apiVersion_ )
+ , driverVersion( driverVersion_ )
+ , vendorID( vendorID_ )
+ , deviceID( deviceID_ )
+ , deviceType( deviceType_ )
+ , deviceName( deviceName_ )
+ , pipelineCacheUUID( pipelineCacheUUID_ )
+ , limits( limits_ )
+ , sparseProperties( sparseProperties_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR_14
+ PhysicalDeviceProperties( PhysicalDeviceProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceProperties( VkPhysicalDeviceProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceProperties( *reinterpret_cast<PhysicalDeviceProperties const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceProperties &
+ operator=( PhysicalDeviceProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceProperties & operator=( VkPhysicalDeviceProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDeviceProperties const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceProperties *>( this );
+ }
+
+ operator VkPhysicalDeviceProperties &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceProperties *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceProperties const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceProperties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( apiVersion == rhs.apiVersion ) && ( driverVersion == rhs.driverVersion ) &&
+ ( vendorID == rhs.vendorID ) && ( deviceID == rhs.deviceID ) && ( deviceType == rhs.deviceType ) &&
+ ( deviceName == rhs.deviceName ) && ( pipelineCacheUUID == rhs.pipelineCacheUUID ) &&
+ ( limits == rhs.limits ) && ( sparseProperties == rhs.sparseProperties );
+ }
+
+ bool operator!=( PhysicalDeviceProperties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ uint32_t apiVersion = {};
+ uint32_t driverVersion = {};
+ uint32_t vendorID = {};
+ uint32_t deviceID = {};
+ VULKAN_HPP_NAMESPACE::PhysicalDeviceType deviceType = VULKAN_HPP_NAMESPACE::PhysicalDeviceType::eOther;
+ VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_PHYSICAL_DEVICE_NAME_SIZE> deviceName = {};
+ VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, VK_UUID_SIZE> pipelineCacheUUID = {};
+ VULKAN_HPP_NAMESPACE::PhysicalDeviceLimits limits = {};
+ VULKAN_HPP_NAMESPACE::PhysicalDeviceSparseProperties sparseProperties = {};
+ };
+ static_assert( sizeof( PhysicalDeviceProperties ) == sizeof( VkPhysicalDeviceProperties ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceProperties>::value, "struct wrapper is not a standard layout!" );
+
+ struct PhysicalDeviceProperties2
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceProperties2;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR_14
+ PhysicalDeviceProperties2( VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties properties_ = {} ) VULKAN_HPP_NOEXCEPT
+ : properties( properties_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR_14
+ PhysicalDeviceProperties2( PhysicalDeviceProperties2 const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceProperties2( VkPhysicalDeviceProperties2 const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceProperties2( *reinterpret_cast<PhysicalDeviceProperties2 const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceProperties2 &
+ operator=( PhysicalDeviceProperties2 const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceProperties2 & operator=( VkPhysicalDeviceProperties2 const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties2 const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDeviceProperties2 const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceProperties2 *>( this );
+ }
+
+ operator VkPhysicalDeviceProperties2 &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceProperties2 *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceProperties2 const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceProperties2 const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( properties == rhs.properties );
+ }
+
+ bool operator!=( PhysicalDeviceProperties2 const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceProperties2;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties properties = {};
+ };
+ static_assert( sizeof( PhysicalDeviceProperties2 ) == sizeof( VkPhysicalDeviceProperties2 ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceProperties2>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceProperties2>
+ {
+ using Type = PhysicalDeviceProperties2;
+ };
+ using PhysicalDeviceProperties2KHR = PhysicalDeviceProperties2;
+
+ struct PhysicalDeviceProtectedMemoryFeatures
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceProtectedMemoryFeatures;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ PhysicalDeviceProtectedMemoryFeatures( VULKAN_HPP_NAMESPACE::Bool32 protectedMemory_ = {} ) VULKAN_HPP_NOEXCEPT
+ : protectedMemory( protectedMemory_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceProtectedMemoryFeatures( PhysicalDeviceProtectedMemoryFeatures const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceProtectedMemoryFeatures( VkPhysicalDeviceProtectedMemoryFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceProtectedMemoryFeatures(
+ *reinterpret_cast<PhysicalDeviceProtectedMemoryFeatures const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceProtectedMemoryFeatures &
+ operator=( PhysicalDeviceProtectedMemoryFeatures const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceProtectedMemoryFeatures &
+ operator=( VkPhysicalDeviceProtectedMemoryFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceProtectedMemoryFeatures const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceProtectedMemoryFeatures & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceProtectedMemoryFeatures &
+ setProtectedMemory( VULKAN_HPP_NAMESPACE::Bool32 protectedMemory_ ) VULKAN_HPP_NOEXCEPT
+ {
+ protectedMemory = protectedMemory_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceProtectedMemoryFeatures const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceProtectedMemoryFeatures *>( this );
+ }
+
+ operator VkPhysicalDeviceProtectedMemoryFeatures &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceProtectedMemoryFeatures *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceProtectedMemoryFeatures const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceProtectedMemoryFeatures const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( protectedMemory == rhs.protectedMemory );
+ }
+
+ bool operator!=( PhysicalDeviceProtectedMemoryFeatures const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceProtectedMemoryFeatures;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 protectedMemory = {};
+ };
+ static_assert( sizeof( PhysicalDeviceProtectedMemoryFeatures ) == sizeof( VkPhysicalDeviceProtectedMemoryFeatures ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceProtectedMemoryFeatures>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceProtectedMemoryFeatures>
+ {
+ using Type = PhysicalDeviceProtectedMemoryFeatures;
+ };
+
+ struct PhysicalDeviceProtectedMemoryProperties
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceProtectedMemoryProperties;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ PhysicalDeviceProtectedMemoryProperties( VULKAN_HPP_NAMESPACE::Bool32 protectedNoFault_ = {} ) VULKAN_HPP_NOEXCEPT
+ : protectedNoFault( protectedNoFault_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceProtectedMemoryProperties( PhysicalDeviceProtectedMemoryProperties const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceProtectedMemoryProperties( VkPhysicalDeviceProtectedMemoryProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceProtectedMemoryProperties(
+ *reinterpret_cast<PhysicalDeviceProtectedMemoryProperties const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceProtectedMemoryProperties &
+ operator=( PhysicalDeviceProtectedMemoryProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceProtectedMemoryProperties &
+ operator=( VkPhysicalDeviceProtectedMemoryProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceProtectedMemoryProperties const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDeviceProtectedMemoryProperties const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceProtectedMemoryProperties *>( this );
+ }
+
+ operator VkPhysicalDeviceProtectedMemoryProperties &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceProtectedMemoryProperties *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceProtectedMemoryProperties const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceProtectedMemoryProperties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( protectedNoFault == rhs.protectedNoFault );
+ }
+
+ bool operator!=( PhysicalDeviceProtectedMemoryProperties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceProtectedMemoryProperties;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 protectedNoFault = {};
+ };
+ static_assert( sizeof( PhysicalDeviceProtectedMemoryProperties ) ==
+ sizeof( VkPhysicalDeviceProtectedMemoryProperties ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceProtectedMemoryProperties>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceProtectedMemoryProperties>
+ {
+ using Type = PhysicalDeviceProtectedMemoryProperties;
+ };
+
+ struct PhysicalDeviceProvokingVertexFeaturesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceProvokingVertexFeaturesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceProvokingVertexFeaturesEXT(
+ VULKAN_HPP_NAMESPACE::Bool32 provokingVertexLast_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 transformFeedbackPreservesProvokingVertex_ = {} ) VULKAN_HPP_NOEXCEPT
+ : provokingVertexLast( provokingVertexLast_ )
+ , transformFeedbackPreservesProvokingVertex( transformFeedbackPreservesProvokingVertex_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceProvokingVertexFeaturesEXT(
+ PhysicalDeviceProvokingVertexFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceProvokingVertexFeaturesEXT( VkPhysicalDeviceProvokingVertexFeaturesEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceProvokingVertexFeaturesEXT(
+ *reinterpret_cast<PhysicalDeviceProvokingVertexFeaturesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceProvokingVertexFeaturesEXT &
+ operator=( PhysicalDeviceProvokingVertexFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceProvokingVertexFeaturesEXT &
+ operator=( VkPhysicalDeviceProvokingVertexFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceProvokingVertexFeaturesEXT const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceProvokingVertexFeaturesEXT & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceProvokingVertexFeaturesEXT &
+ setProvokingVertexLast( VULKAN_HPP_NAMESPACE::Bool32 provokingVertexLast_ ) VULKAN_HPP_NOEXCEPT
+ {
+ provokingVertexLast = provokingVertexLast_;
+ return *this;
+ }
+
+ PhysicalDeviceProvokingVertexFeaturesEXT & setTransformFeedbackPreservesProvokingVertex(
+ VULKAN_HPP_NAMESPACE::Bool32 transformFeedbackPreservesProvokingVertex_ ) VULKAN_HPP_NOEXCEPT
+ {
+ transformFeedbackPreservesProvokingVertex = transformFeedbackPreservesProvokingVertex_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceProvokingVertexFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceProvokingVertexFeaturesEXT *>( this );
+ }
+
+ operator VkPhysicalDeviceProvokingVertexFeaturesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceProvokingVertexFeaturesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceProvokingVertexFeaturesEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceProvokingVertexFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( provokingVertexLast == rhs.provokingVertexLast ) &&
+ ( transformFeedbackPreservesProvokingVertex == rhs.transformFeedbackPreservesProvokingVertex );
+ }
+
+ bool operator!=( PhysicalDeviceProvokingVertexFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceProvokingVertexFeaturesEXT;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 provokingVertexLast = {};
+ VULKAN_HPP_NAMESPACE::Bool32 transformFeedbackPreservesProvokingVertex = {};
+ };
+ static_assert( sizeof( PhysicalDeviceProvokingVertexFeaturesEXT ) ==
+ sizeof( VkPhysicalDeviceProvokingVertexFeaturesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceProvokingVertexFeaturesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceProvokingVertexFeaturesEXT>
+ {
+ using Type = PhysicalDeviceProvokingVertexFeaturesEXT;
+ };
+
+ struct PhysicalDeviceProvokingVertexPropertiesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceProvokingVertexPropertiesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceProvokingVertexPropertiesEXT(
+ VULKAN_HPP_NAMESPACE::Bool32 provokingVertexModePerPipeline_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 transformFeedbackPreservesTriangleFanProvokingVertex_ = {} ) VULKAN_HPP_NOEXCEPT
+ : provokingVertexModePerPipeline( provokingVertexModePerPipeline_ )
+ , transformFeedbackPreservesTriangleFanProvokingVertex( transformFeedbackPreservesTriangleFanProvokingVertex_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceProvokingVertexPropertiesEXT(
+ PhysicalDeviceProvokingVertexPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceProvokingVertexPropertiesEXT( VkPhysicalDeviceProvokingVertexPropertiesEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceProvokingVertexPropertiesEXT(
+ *reinterpret_cast<PhysicalDeviceProvokingVertexPropertiesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceProvokingVertexPropertiesEXT &
+ operator=( PhysicalDeviceProvokingVertexPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceProvokingVertexPropertiesEXT &
+ operator=( VkPhysicalDeviceProvokingVertexPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceProvokingVertexPropertiesEXT const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDeviceProvokingVertexPropertiesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceProvokingVertexPropertiesEXT *>( this );
+ }
+
+ operator VkPhysicalDeviceProvokingVertexPropertiesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceProvokingVertexPropertiesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceProvokingVertexPropertiesEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceProvokingVertexPropertiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( provokingVertexModePerPipeline == rhs.provokingVertexModePerPipeline ) &&
+ ( transformFeedbackPreservesTriangleFanProvokingVertex ==
+ rhs.transformFeedbackPreservesTriangleFanProvokingVertex );
+ }
+
+ bool operator!=( PhysicalDeviceProvokingVertexPropertiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceProvokingVertexPropertiesEXT;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 provokingVertexModePerPipeline = {};
+ VULKAN_HPP_NAMESPACE::Bool32 transformFeedbackPreservesTriangleFanProvokingVertex = {};
+ };
+ static_assert( sizeof( PhysicalDeviceProvokingVertexPropertiesEXT ) ==
+ sizeof( VkPhysicalDeviceProvokingVertexPropertiesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceProvokingVertexPropertiesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceProvokingVertexPropertiesEXT>
+ {
+ using Type = PhysicalDeviceProvokingVertexPropertiesEXT;
+ };
+
+ struct PhysicalDevicePushDescriptorPropertiesKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDevicePushDescriptorPropertiesKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ PhysicalDevicePushDescriptorPropertiesKHR( uint32_t maxPushDescriptors_ = {} ) VULKAN_HPP_NOEXCEPT
+ : maxPushDescriptors( maxPushDescriptors_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDevicePushDescriptorPropertiesKHR(
+ PhysicalDevicePushDescriptorPropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDevicePushDescriptorPropertiesKHR( VkPhysicalDevicePushDescriptorPropertiesKHR const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDevicePushDescriptorPropertiesKHR(
+ *reinterpret_cast<PhysicalDevicePushDescriptorPropertiesKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDevicePushDescriptorPropertiesKHR &
+ operator=( PhysicalDevicePushDescriptorPropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDevicePushDescriptorPropertiesKHR &
+ operator=( VkPhysicalDevicePushDescriptorPropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDevicePushDescriptorPropertiesKHR const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDevicePushDescriptorPropertiesKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDevicePushDescriptorPropertiesKHR *>( this );
+ }
+
+ operator VkPhysicalDevicePushDescriptorPropertiesKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDevicePushDescriptorPropertiesKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDevicePushDescriptorPropertiesKHR const & ) const = default;
+#else
+ bool operator==( PhysicalDevicePushDescriptorPropertiesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( maxPushDescriptors == rhs.maxPushDescriptors );
+ }
+
+ bool operator!=( PhysicalDevicePushDescriptorPropertiesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDevicePushDescriptorPropertiesKHR;
+ void * pNext = {};
+ uint32_t maxPushDescriptors = {};
+ };
+ static_assert( sizeof( PhysicalDevicePushDescriptorPropertiesKHR ) ==
+ sizeof( VkPhysicalDevicePushDescriptorPropertiesKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDevicePushDescriptorPropertiesKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDevicePushDescriptorPropertiesKHR>
+ {
+ using Type = PhysicalDevicePushDescriptorPropertiesKHR;
+ };
+
+ struct PhysicalDeviceRayQueryFeaturesKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceRayQueryFeaturesKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ PhysicalDeviceRayQueryFeaturesKHR( VULKAN_HPP_NAMESPACE::Bool32 rayQuery_ = {} ) VULKAN_HPP_NOEXCEPT
+ : rayQuery( rayQuery_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ PhysicalDeviceRayQueryFeaturesKHR( PhysicalDeviceRayQueryFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceRayQueryFeaturesKHR( VkPhysicalDeviceRayQueryFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceRayQueryFeaturesKHR( *reinterpret_cast<PhysicalDeviceRayQueryFeaturesKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceRayQueryFeaturesKHR &
+ operator=( PhysicalDeviceRayQueryFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceRayQueryFeaturesKHR & operator=( VkPhysicalDeviceRayQueryFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceRayQueryFeaturesKHR const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceRayQueryFeaturesKHR & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceRayQueryFeaturesKHR & setRayQuery( VULKAN_HPP_NAMESPACE::Bool32 rayQuery_ ) VULKAN_HPP_NOEXCEPT
+ {
+ rayQuery = rayQuery_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceRayQueryFeaturesKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceRayQueryFeaturesKHR *>( this );
+ }
+
+ operator VkPhysicalDeviceRayQueryFeaturesKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceRayQueryFeaturesKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceRayQueryFeaturesKHR const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceRayQueryFeaturesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( rayQuery == rhs.rayQuery );
+ }
+
+ bool operator!=( PhysicalDeviceRayQueryFeaturesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceRayQueryFeaturesKHR;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 rayQuery = {};
+ };
+ static_assert( sizeof( PhysicalDeviceRayQueryFeaturesKHR ) == sizeof( VkPhysicalDeviceRayQueryFeaturesKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceRayQueryFeaturesKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceRayQueryFeaturesKHR>
+ {
+ using Type = PhysicalDeviceRayQueryFeaturesKHR;
+ };
+
+ struct PhysicalDeviceRayTracingMotionBlurFeaturesNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceRayTracingMotionBlurFeaturesNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceRayTracingMotionBlurFeaturesNV(
+ VULKAN_HPP_NAMESPACE::Bool32 rayTracingMotionBlur_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 rayTracingMotionBlurPipelineTraceRaysIndirect_ = {} ) VULKAN_HPP_NOEXCEPT
+ : rayTracingMotionBlur( rayTracingMotionBlur_ )
+ , rayTracingMotionBlurPipelineTraceRaysIndirect( rayTracingMotionBlurPipelineTraceRaysIndirect_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceRayTracingMotionBlurFeaturesNV(
+ PhysicalDeviceRayTracingMotionBlurFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceRayTracingMotionBlurFeaturesNV( VkPhysicalDeviceRayTracingMotionBlurFeaturesNV const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceRayTracingMotionBlurFeaturesNV(
+ *reinterpret_cast<PhysicalDeviceRayTracingMotionBlurFeaturesNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceRayTracingMotionBlurFeaturesNV &
+ operator=( PhysicalDeviceRayTracingMotionBlurFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceRayTracingMotionBlurFeaturesNV &
+ operator=( VkPhysicalDeviceRayTracingMotionBlurFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceRayTracingMotionBlurFeaturesNV const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceRayTracingMotionBlurFeaturesNV & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceRayTracingMotionBlurFeaturesNV &
+ setRayTracingMotionBlur( VULKAN_HPP_NAMESPACE::Bool32 rayTracingMotionBlur_ ) VULKAN_HPP_NOEXCEPT
+ {
+ rayTracingMotionBlur = rayTracingMotionBlur_;
+ return *this;
+ }
+
+ PhysicalDeviceRayTracingMotionBlurFeaturesNV & setRayTracingMotionBlurPipelineTraceRaysIndirect(
+ VULKAN_HPP_NAMESPACE::Bool32 rayTracingMotionBlurPipelineTraceRaysIndirect_ ) VULKAN_HPP_NOEXCEPT
+ {
+ rayTracingMotionBlurPipelineTraceRaysIndirect = rayTracingMotionBlurPipelineTraceRaysIndirect_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceRayTracingMotionBlurFeaturesNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceRayTracingMotionBlurFeaturesNV *>( this );
+ }
+
+ operator VkPhysicalDeviceRayTracingMotionBlurFeaturesNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceRayTracingMotionBlurFeaturesNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceRayTracingMotionBlurFeaturesNV const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceRayTracingMotionBlurFeaturesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( rayTracingMotionBlur == rhs.rayTracingMotionBlur ) &&
+ ( rayTracingMotionBlurPipelineTraceRaysIndirect == rhs.rayTracingMotionBlurPipelineTraceRaysIndirect );
+ }
+
+ bool operator!=( PhysicalDeviceRayTracingMotionBlurFeaturesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceRayTracingMotionBlurFeaturesNV;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 rayTracingMotionBlur = {};
+ VULKAN_HPP_NAMESPACE::Bool32 rayTracingMotionBlurPipelineTraceRaysIndirect = {};
+ };
+ static_assert( sizeof( PhysicalDeviceRayTracingMotionBlurFeaturesNV ) ==
+ sizeof( VkPhysicalDeviceRayTracingMotionBlurFeaturesNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceRayTracingMotionBlurFeaturesNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceRayTracingMotionBlurFeaturesNV>
+ {
+ using Type = PhysicalDeviceRayTracingMotionBlurFeaturesNV;
+ };
+
+ struct PhysicalDeviceRayTracingPipelineFeaturesKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceRayTracingPipelineFeaturesKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceRayTracingPipelineFeaturesKHR(
+ VULKAN_HPP_NAMESPACE::Bool32 rayTracingPipeline_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 rayTracingPipelineShaderGroupHandleCaptureReplay_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 rayTracingPipelineShaderGroupHandleCaptureReplayMixed_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 rayTracingPipelineTraceRaysIndirect_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 rayTraversalPrimitiveCulling_ = {} ) VULKAN_HPP_NOEXCEPT
+ : rayTracingPipeline( rayTracingPipeline_ )
+ , rayTracingPipelineShaderGroupHandleCaptureReplay( rayTracingPipelineShaderGroupHandleCaptureReplay_ )
+ , rayTracingPipelineShaderGroupHandleCaptureReplayMixed( rayTracingPipelineShaderGroupHandleCaptureReplayMixed_ )
+ , rayTracingPipelineTraceRaysIndirect( rayTracingPipelineTraceRaysIndirect_ )
+ , rayTraversalPrimitiveCulling( rayTraversalPrimitiveCulling_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceRayTracingPipelineFeaturesKHR(
+ PhysicalDeviceRayTracingPipelineFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceRayTracingPipelineFeaturesKHR( VkPhysicalDeviceRayTracingPipelineFeaturesKHR const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceRayTracingPipelineFeaturesKHR(
+ *reinterpret_cast<PhysicalDeviceRayTracingPipelineFeaturesKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceRayTracingPipelineFeaturesKHR &
+ operator=( PhysicalDeviceRayTracingPipelineFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceRayTracingPipelineFeaturesKHR &
+ operator=( VkPhysicalDeviceRayTracingPipelineFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceRayTracingPipelineFeaturesKHR const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceRayTracingPipelineFeaturesKHR & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceRayTracingPipelineFeaturesKHR &
+ setRayTracingPipeline( VULKAN_HPP_NAMESPACE::Bool32 rayTracingPipeline_ ) VULKAN_HPP_NOEXCEPT
+ {
+ rayTracingPipeline = rayTracingPipeline_;
+ return *this;
+ }
+
+ PhysicalDeviceRayTracingPipelineFeaturesKHR & setRayTracingPipelineShaderGroupHandleCaptureReplay(
+ VULKAN_HPP_NAMESPACE::Bool32 rayTracingPipelineShaderGroupHandleCaptureReplay_ ) VULKAN_HPP_NOEXCEPT
+ {
+ rayTracingPipelineShaderGroupHandleCaptureReplay = rayTracingPipelineShaderGroupHandleCaptureReplay_;
+ return *this;
+ }
+
+ PhysicalDeviceRayTracingPipelineFeaturesKHR & setRayTracingPipelineShaderGroupHandleCaptureReplayMixed(
+ VULKAN_HPP_NAMESPACE::Bool32 rayTracingPipelineShaderGroupHandleCaptureReplayMixed_ ) VULKAN_HPP_NOEXCEPT
+ {
+ rayTracingPipelineShaderGroupHandleCaptureReplayMixed = rayTracingPipelineShaderGroupHandleCaptureReplayMixed_;
+ return *this;
+ }
+
+ PhysicalDeviceRayTracingPipelineFeaturesKHR & setRayTracingPipelineTraceRaysIndirect(
+ VULKAN_HPP_NAMESPACE::Bool32 rayTracingPipelineTraceRaysIndirect_ ) VULKAN_HPP_NOEXCEPT
+ {
+ rayTracingPipelineTraceRaysIndirect = rayTracingPipelineTraceRaysIndirect_;
+ return *this;
+ }
+
+ PhysicalDeviceRayTracingPipelineFeaturesKHR &
+ setRayTraversalPrimitiveCulling( VULKAN_HPP_NAMESPACE::Bool32 rayTraversalPrimitiveCulling_ ) VULKAN_HPP_NOEXCEPT
+ {
+ rayTraversalPrimitiveCulling = rayTraversalPrimitiveCulling_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceRayTracingPipelineFeaturesKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceRayTracingPipelineFeaturesKHR *>( this );
+ }
+
+ operator VkPhysicalDeviceRayTracingPipelineFeaturesKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceRayTracingPipelineFeaturesKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceRayTracingPipelineFeaturesKHR const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceRayTracingPipelineFeaturesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( rayTracingPipeline == rhs.rayTracingPipeline ) &&
+ ( rayTracingPipelineShaderGroupHandleCaptureReplay ==
+ rhs.rayTracingPipelineShaderGroupHandleCaptureReplay ) &&
+ ( rayTracingPipelineShaderGroupHandleCaptureReplayMixed ==
+ rhs.rayTracingPipelineShaderGroupHandleCaptureReplayMixed ) &&
+ ( rayTracingPipelineTraceRaysIndirect == rhs.rayTracingPipelineTraceRaysIndirect ) &&
+ ( rayTraversalPrimitiveCulling == rhs.rayTraversalPrimitiveCulling );
+ }
+
+ bool operator!=( PhysicalDeviceRayTracingPipelineFeaturesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceRayTracingPipelineFeaturesKHR;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 rayTracingPipeline = {};
+ VULKAN_HPP_NAMESPACE::Bool32 rayTracingPipelineShaderGroupHandleCaptureReplay = {};
+ VULKAN_HPP_NAMESPACE::Bool32 rayTracingPipelineShaderGroupHandleCaptureReplayMixed = {};
+ VULKAN_HPP_NAMESPACE::Bool32 rayTracingPipelineTraceRaysIndirect = {};
+ VULKAN_HPP_NAMESPACE::Bool32 rayTraversalPrimitiveCulling = {};
+ };
+ static_assert( sizeof( PhysicalDeviceRayTracingPipelineFeaturesKHR ) ==
+ sizeof( VkPhysicalDeviceRayTracingPipelineFeaturesKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceRayTracingPipelineFeaturesKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceRayTracingPipelineFeaturesKHR>
+ {
+ using Type = PhysicalDeviceRayTracingPipelineFeaturesKHR;
+ };
+
+ struct PhysicalDeviceRayTracingPipelinePropertiesKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceRayTracingPipelinePropertiesKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ PhysicalDeviceRayTracingPipelinePropertiesKHR( uint32_t shaderGroupHandleSize_ = {},
+ uint32_t maxRayRecursionDepth_ = {},
+ uint32_t maxShaderGroupStride_ = {},
+ uint32_t shaderGroupBaseAlignment_ = {},
+ uint32_t shaderGroupHandleCaptureReplaySize_ = {},
+ uint32_t maxRayDispatchInvocationCount_ = {},
+ uint32_t shaderGroupHandleAlignment_ = {},
+ uint32_t maxRayHitAttributeSize_ = {} ) VULKAN_HPP_NOEXCEPT
+ : shaderGroupHandleSize( shaderGroupHandleSize_ )
+ , maxRayRecursionDepth( maxRayRecursionDepth_ )
+ , maxShaderGroupStride( maxShaderGroupStride_ )
+ , shaderGroupBaseAlignment( shaderGroupBaseAlignment_ )
+ , shaderGroupHandleCaptureReplaySize( shaderGroupHandleCaptureReplaySize_ )
+ , maxRayDispatchInvocationCount( maxRayDispatchInvocationCount_ )
+ , shaderGroupHandleAlignment( shaderGroupHandleAlignment_ )
+ , maxRayHitAttributeSize( maxRayHitAttributeSize_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceRayTracingPipelinePropertiesKHR(
+ PhysicalDeviceRayTracingPipelinePropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceRayTracingPipelinePropertiesKHR( VkPhysicalDeviceRayTracingPipelinePropertiesKHR const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceRayTracingPipelinePropertiesKHR(
+ *reinterpret_cast<PhysicalDeviceRayTracingPipelinePropertiesKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceRayTracingPipelinePropertiesKHR &
+ operator=( PhysicalDeviceRayTracingPipelinePropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceRayTracingPipelinePropertiesKHR &
+ operator=( VkPhysicalDeviceRayTracingPipelinePropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceRayTracingPipelinePropertiesKHR const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDeviceRayTracingPipelinePropertiesKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceRayTracingPipelinePropertiesKHR *>( this );
+ }
+
+ operator VkPhysicalDeviceRayTracingPipelinePropertiesKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceRayTracingPipelinePropertiesKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceRayTracingPipelinePropertiesKHR const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceRayTracingPipelinePropertiesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( shaderGroupHandleSize == rhs.shaderGroupHandleSize ) &&
+ ( maxRayRecursionDepth == rhs.maxRayRecursionDepth ) &&
+ ( maxShaderGroupStride == rhs.maxShaderGroupStride ) &&
+ ( shaderGroupBaseAlignment == rhs.shaderGroupBaseAlignment ) &&
+ ( shaderGroupHandleCaptureReplaySize == rhs.shaderGroupHandleCaptureReplaySize ) &&
+ ( maxRayDispatchInvocationCount == rhs.maxRayDispatchInvocationCount ) &&
+ ( shaderGroupHandleAlignment == rhs.shaderGroupHandleAlignment ) &&
+ ( maxRayHitAttributeSize == rhs.maxRayHitAttributeSize );
+ }
+
+ bool operator!=( PhysicalDeviceRayTracingPipelinePropertiesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceRayTracingPipelinePropertiesKHR;
+ 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 = {};
+ };
+ static_assert( sizeof( PhysicalDeviceRayTracingPipelinePropertiesKHR ) ==
+ sizeof( VkPhysicalDeviceRayTracingPipelinePropertiesKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceRayTracingPipelinePropertiesKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceRayTracingPipelinePropertiesKHR>
+ {
+ using Type = PhysicalDeviceRayTracingPipelinePropertiesKHR;
+ };
+
+ struct PhysicalDeviceRayTracingPropertiesNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceRayTracingPropertiesNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ PhysicalDeviceRayTracingPropertiesNV( uint32_t shaderGroupHandleSize_ = {},
+ uint32_t maxRecursionDepth_ = {},
+ uint32_t maxShaderGroupStride_ = {},
+ uint32_t shaderGroupBaseAlignment_ = {},
+ uint64_t maxGeometryCount_ = {},
+ uint64_t maxInstanceCount_ = {},
+ uint64_t maxTriangleCount_ = {},
+ uint32_t maxDescriptorSetAccelerationStructures_ = {} ) VULKAN_HPP_NOEXCEPT
+ : shaderGroupHandleSize( shaderGroupHandleSize_ )
+ , maxRecursionDepth( maxRecursionDepth_ )
+ , maxShaderGroupStride( maxShaderGroupStride_ )
+ , shaderGroupBaseAlignment( shaderGroupBaseAlignment_ )
+ , maxGeometryCount( maxGeometryCount_ )
+ , maxInstanceCount( maxInstanceCount_ )
+ , maxTriangleCount( maxTriangleCount_ )
+ , maxDescriptorSetAccelerationStructures( maxDescriptorSetAccelerationStructures_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceRayTracingPropertiesNV( PhysicalDeviceRayTracingPropertiesNV const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceRayTracingPropertiesNV( VkPhysicalDeviceRayTracingPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceRayTracingPropertiesNV( *reinterpret_cast<PhysicalDeviceRayTracingPropertiesNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceRayTracingPropertiesNV &
+ operator=( PhysicalDeviceRayTracingPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceRayTracingPropertiesNV &
+ operator=( VkPhysicalDeviceRayTracingPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceRayTracingPropertiesNV const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDeviceRayTracingPropertiesNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceRayTracingPropertiesNV *>( this );
+ }
+
+ operator VkPhysicalDeviceRayTracingPropertiesNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceRayTracingPropertiesNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceRayTracingPropertiesNV const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceRayTracingPropertiesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( shaderGroupHandleSize == rhs.shaderGroupHandleSize ) && ( maxRecursionDepth == rhs.maxRecursionDepth ) &&
+ ( maxShaderGroupStride == rhs.maxShaderGroupStride ) &&
+ ( shaderGroupBaseAlignment == rhs.shaderGroupBaseAlignment ) &&
+ ( maxGeometryCount == rhs.maxGeometryCount ) && ( maxInstanceCount == rhs.maxInstanceCount ) &&
+ ( maxTriangleCount == rhs.maxTriangleCount ) &&
+ ( maxDescriptorSetAccelerationStructures == rhs.maxDescriptorSetAccelerationStructures );
+ }
+
+ bool operator!=( PhysicalDeviceRayTracingPropertiesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceRayTracingPropertiesNV;
+ void * pNext = {};
+ uint32_t shaderGroupHandleSize = {};
+ uint32_t maxRecursionDepth = {};
+ uint32_t maxShaderGroupStride = {};
+ uint32_t shaderGroupBaseAlignment = {};
+ uint64_t maxGeometryCount = {};
+ uint64_t maxInstanceCount = {};
+ uint64_t maxTriangleCount = {};
+ uint32_t maxDescriptorSetAccelerationStructures = {};
+ };
+ static_assert( sizeof( PhysicalDeviceRayTracingPropertiesNV ) == sizeof( VkPhysicalDeviceRayTracingPropertiesNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceRayTracingPropertiesNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceRayTracingPropertiesNV>
+ {
+ using Type = PhysicalDeviceRayTracingPropertiesNV;
+ };
+
+ struct PhysicalDeviceRepresentativeFragmentTestFeaturesNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceRepresentativeFragmentTestFeaturesNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceRepresentativeFragmentTestFeaturesNV(
+ VULKAN_HPP_NAMESPACE::Bool32 representativeFragmentTest_ = {} ) VULKAN_HPP_NOEXCEPT
+ : representativeFragmentTest( representativeFragmentTest_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceRepresentativeFragmentTestFeaturesNV(
+ PhysicalDeviceRepresentativeFragmentTestFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceRepresentativeFragmentTestFeaturesNV(
+ VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceRepresentativeFragmentTestFeaturesNV(
+ *reinterpret_cast<PhysicalDeviceRepresentativeFragmentTestFeaturesNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceRepresentativeFragmentTestFeaturesNV &
+ operator=( PhysicalDeviceRepresentativeFragmentTestFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceRepresentativeFragmentTestFeaturesNV &
+ operator=( VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this =
+ *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceRepresentativeFragmentTestFeaturesNV const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceRepresentativeFragmentTestFeaturesNV & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceRepresentativeFragmentTestFeaturesNV &
+ setRepresentativeFragmentTest( VULKAN_HPP_NAMESPACE::Bool32 representativeFragmentTest_ ) VULKAN_HPP_NOEXCEPT
+ {
+ representativeFragmentTest = representativeFragmentTest_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV *>( this );
+ }
+
+ operator VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceRepresentativeFragmentTestFeaturesNV const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceRepresentativeFragmentTestFeaturesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( representativeFragmentTest == rhs.representativeFragmentTest );
+ }
+
+ bool operator!=( PhysicalDeviceRepresentativeFragmentTestFeaturesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceRepresentativeFragmentTestFeaturesNV;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 representativeFragmentTest = {};
+ };
+ static_assert( sizeof( PhysicalDeviceRepresentativeFragmentTestFeaturesNV ) ==
+ sizeof( VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceRepresentativeFragmentTestFeaturesNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceRepresentativeFragmentTestFeaturesNV>
+ {
+ using Type = PhysicalDeviceRepresentativeFragmentTestFeaturesNV;
+ };
+
+ struct PhysicalDeviceRobustness2FeaturesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceRobustness2FeaturesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ PhysicalDeviceRobustness2FeaturesEXT( VULKAN_HPP_NAMESPACE::Bool32 robustBufferAccess2_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 robustImageAccess2_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 nullDescriptor_ = {} ) VULKAN_HPP_NOEXCEPT
+ : robustBufferAccess2( robustBufferAccess2_ )
+ , robustImageAccess2( robustImageAccess2_ )
+ , nullDescriptor( nullDescriptor_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceRobustness2FeaturesEXT( PhysicalDeviceRobustness2FeaturesEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceRobustness2FeaturesEXT( VkPhysicalDeviceRobustness2FeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceRobustness2FeaturesEXT( *reinterpret_cast<PhysicalDeviceRobustness2FeaturesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceRobustness2FeaturesEXT &
+ operator=( PhysicalDeviceRobustness2FeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceRobustness2FeaturesEXT &
+ operator=( VkPhysicalDeviceRobustness2FeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceRobustness2FeaturesEXT const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceRobustness2FeaturesEXT & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceRobustness2FeaturesEXT &
+ setRobustBufferAccess2( VULKAN_HPP_NAMESPACE::Bool32 robustBufferAccess2_ ) VULKAN_HPP_NOEXCEPT
+ {
+ robustBufferAccess2 = robustBufferAccess2_;
+ return *this;
+ }
+
+ PhysicalDeviceRobustness2FeaturesEXT &
+ setRobustImageAccess2( VULKAN_HPP_NAMESPACE::Bool32 robustImageAccess2_ ) VULKAN_HPP_NOEXCEPT
+ {
+ robustImageAccess2 = robustImageAccess2_;
+ return *this;
+ }
+
+ PhysicalDeviceRobustness2FeaturesEXT &
+ setNullDescriptor( VULKAN_HPP_NAMESPACE::Bool32 nullDescriptor_ ) VULKAN_HPP_NOEXCEPT
+ {
+ nullDescriptor = nullDescriptor_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceRobustness2FeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceRobustness2FeaturesEXT *>( this );
+ }
+
+ operator VkPhysicalDeviceRobustness2FeaturesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceRobustness2FeaturesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceRobustness2FeaturesEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceRobustness2FeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( robustBufferAccess2 == rhs.robustBufferAccess2 ) &&
+ ( robustImageAccess2 == rhs.robustImageAccess2 ) && ( nullDescriptor == rhs.nullDescriptor );
+ }
+
+ bool operator!=( PhysicalDeviceRobustness2FeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceRobustness2FeaturesEXT;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 robustBufferAccess2 = {};
+ VULKAN_HPP_NAMESPACE::Bool32 robustImageAccess2 = {};
+ VULKAN_HPP_NAMESPACE::Bool32 nullDescriptor = {};
+ };
+ static_assert( sizeof( PhysicalDeviceRobustness2FeaturesEXT ) == sizeof( VkPhysicalDeviceRobustness2FeaturesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceRobustness2FeaturesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceRobustness2FeaturesEXT>
+ {
+ using Type = PhysicalDeviceRobustness2FeaturesEXT;
+ };
+
+ struct PhysicalDeviceRobustness2PropertiesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceRobustness2PropertiesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceRobustness2PropertiesEXT(
+ VULKAN_HPP_NAMESPACE::DeviceSize robustStorageBufferAccessSizeAlignment_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize robustUniformBufferAccessSizeAlignment_ = {} ) VULKAN_HPP_NOEXCEPT
+ : robustStorageBufferAccessSizeAlignment( robustStorageBufferAccessSizeAlignment_ )
+ , robustUniformBufferAccessSizeAlignment( robustUniformBufferAccessSizeAlignment_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceRobustness2PropertiesEXT( PhysicalDeviceRobustness2PropertiesEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceRobustness2PropertiesEXT( VkPhysicalDeviceRobustness2PropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceRobustness2PropertiesEXT(
+ *reinterpret_cast<PhysicalDeviceRobustness2PropertiesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceRobustness2PropertiesEXT &
+ operator=( PhysicalDeviceRobustness2PropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceRobustness2PropertiesEXT &
+ operator=( VkPhysicalDeviceRobustness2PropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceRobustness2PropertiesEXT const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDeviceRobustness2PropertiesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceRobustness2PropertiesEXT *>( this );
+ }
+
+ operator VkPhysicalDeviceRobustness2PropertiesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceRobustness2PropertiesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceRobustness2PropertiesEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceRobustness2PropertiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( robustStorageBufferAccessSizeAlignment == rhs.robustStorageBufferAccessSizeAlignment ) &&
+ ( robustUniformBufferAccessSizeAlignment == rhs.robustUniformBufferAccessSizeAlignment );
+ }
+
+ bool operator!=( PhysicalDeviceRobustness2PropertiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceRobustness2PropertiesEXT;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize robustStorageBufferAccessSizeAlignment = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize robustUniformBufferAccessSizeAlignment = {};
+ };
+ static_assert( sizeof( PhysicalDeviceRobustness2PropertiesEXT ) == sizeof( VkPhysicalDeviceRobustness2PropertiesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceRobustness2PropertiesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceRobustness2PropertiesEXT>
+ {
+ using Type = PhysicalDeviceRobustness2PropertiesEXT;
+ };
+
+ struct PhysicalDeviceSampleLocationsPropertiesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceSampleLocationsPropertiesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceSampleLocationsPropertiesEXT(
+ VULKAN_HPP_NAMESPACE::SampleCountFlags sampleLocationSampleCounts_ = {},
+ VULKAN_HPP_NAMESPACE::Extent2D maxSampleLocationGridSize_ = {},
+ std::array<float, 2> const & sampleLocationCoordinateRange_ = {},
+ uint32_t sampleLocationSubPixelBits_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 variableSampleLocations_ = {} ) VULKAN_HPP_NOEXCEPT
+ : sampleLocationSampleCounts( sampleLocationSampleCounts_ )
+ , maxSampleLocationGridSize( maxSampleLocationGridSize_ )
+ , sampleLocationCoordinateRange( sampleLocationCoordinateRange_ )
+ , sampleLocationSubPixelBits( sampleLocationSubPixelBits_ )
+ , variableSampleLocations( variableSampleLocations_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceSampleLocationsPropertiesEXT(
+ PhysicalDeviceSampleLocationsPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceSampleLocationsPropertiesEXT( VkPhysicalDeviceSampleLocationsPropertiesEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceSampleLocationsPropertiesEXT(
+ *reinterpret_cast<PhysicalDeviceSampleLocationsPropertiesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceSampleLocationsPropertiesEXT &
+ operator=( PhysicalDeviceSampleLocationsPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceSampleLocationsPropertiesEXT &
+ operator=( VkPhysicalDeviceSampleLocationsPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceSampleLocationsPropertiesEXT const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDeviceSampleLocationsPropertiesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceSampleLocationsPropertiesEXT *>( this );
+ }
+
+ operator VkPhysicalDeviceSampleLocationsPropertiesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceSampleLocationsPropertiesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceSampleLocationsPropertiesEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceSampleLocationsPropertiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( sampleLocationSampleCounts == rhs.sampleLocationSampleCounts ) &&
+ ( maxSampleLocationGridSize == rhs.maxSampleLocationGridSize ) &&
+ ( sampleLocationCoordinateRange == rhs.sampleLocationCoordinateRange ) &&
+ ( sampleLocationSubPixelBits == rhs.sampleLocationSubPixelBits ) &&
+ ( variableSampleLocations == rhs.variableSampleLocations );
+ }
+
+ bool operator!=( PhysicalDeviceSampleLocationsPropertiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceSampleLocationsPropertiesEXT;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::SampleCountFlags sampleLocationSampleCounts = {};
+ VULKAN_HPP_NAMESPACE::Extent2D maxSampleLocationGridSize = {};
+ VULKAN_HPP_NAMESPACE::ArrayWrapper1D<float, 2> sampleLocationCoordinateRange = {};
+ uint32_t sampleLocationSubPixelBits = {};
+ VULKAN_HPP_NAMESPACE::Bool32 variableSampleLocations = {};
+ };
+ static_assert( sizeof( PhysicalDeviceSampleLocationsPropertiesEXT ) ==
+ sizeof( VkPhysicalDeviceSampleLocationsPropertiesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceSampleLocationsPropertiesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceSampleLocationsPropertiesEXT>
+ {
+ using Type = PhysicalDeviceSampleLocationsPropertiesEXT;
+ };
+
+ struct PhysicalDeviceSamplerFilterMinmaxProperties
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceSamplerFilterMinmaxProperties;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceSamplerFilterMinmaxProperties(
+ VULKAN_HPP_NAMESPACE::Bool32 filterMinmaxSingleComponentFormats_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 filterMinmaxImageComponentMapping_ = {} ) VULKAN_HPP_NOEXCEPT
+ : filterMinmaxSingleComponentFormats( filterMinmaxSingleComponentFormats_ )
+ , filterMinmaxImageComponentMapping( filterMinmaxImageComponentMapping_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceSamplerFilterMinmaxProperties(
+ PhysicalDeviceSamplerFilterMinmaxProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceSamplerFilterMinmaxProperties( VkPhysicalDeviceSamplerFilterMinmaxProperties const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceSamplerFilterMinmaxProperties(
+ *reinterpret_cast<PhysicalDeviceSamplerFilterMinmaxProperties const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceSamplerFilterMinmaxProperties &
+ operator=( PhysicalDeviceSamplerFilterMinmaxProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceSamplerFilterMinmaxProperties &
+ operator=( VkPhysicalDeviceSamplerFilterMinmaxProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceSamplerFilterMinmaxProperties const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDeviceSamplerFilterMinmaxProperties const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceSamplerFilterMinmaxProperties *>( this );
+ }
+
+ operator VkPhysicalDeviceSamplerFilterMinmaxProperties &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceSamplerFilterMinmaxProperties *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceSamplerFilterMinmaxProperties const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceSamplerFilterMinmaxProperties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( filterMinmaxSingleComponentFormats == rhs.filterMinmaxSingleComponentFormats ) &&
+ ( filterMinmaxImageComponentMapping == rhs.filterMinmaxImageComponentMapping );
+ }
+
+ bool operator!=( PhysicalDeviceSamplerFilterMinmaxProperties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceSamplerFilterMinmaxProperties;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 filterMinmaxSingleComponentFormats = {};
+ VULKAN_HPP_NAMESPACE::Bool32 filterMinmaxImageComponentMapping = {};
+ };
+ static_assert( sizeof( PhysicalDeviceSamplerFilterMinmaxProperties ) ==
+ sizeof( VkPhysicalDeviceSamplerFilterMinmaxProperties ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceSamplerFilterMinmaxProperties>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceSamplerFilterMinmaxProperties>
+ {
+ using Type = PhysicalDeviceSamplerFilterMinmaxProperties;
+ };
+ using PhysicalDeviceSamplerFilterMinmaxPropertiesEXT = PhysicalDeviceSamplerFilterMinmaxProperties;
+
+ struct PhysicalDeviceSamplerYcbcrConversionFeatures
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceSamplerYcbcrConversionFeatures;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceSamplerYcbcrConversionFeatures(
+ VULKAN_HPP_NAMESPACE::Bool32 samplerYcbcrConversion_ = {} ) VULKAN_HPP_NOEXCEPT
+ : samplerYcbcrConversion( samplerYcbcrConversion_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceSamplerYcbcrConversionFeatures(
+ PhysicalDeviceSamplerYcbcrConversionFeatures const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceSamplerYcbcrConversionFeatures( VkPhysicalDeviceSamplerYcbcrConversionFeatures const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceSamplerYcbcrConversionFeatures(
+ *reinterpret_cast<PhysicalDeviceSamplerYcbcrConversionFeatures const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceSamplerYcbcrConversionFeatures &
+ operator=( PhysicalDeviceSamplerYcbcrConversionFeatures const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceSamplerYcbcrConversionFeatures &
+ operator=( VkPhysicalDeviceSamplerYcbcrConversionFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceSamplerYcbcrConversionFeatures const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceSamplerYcbcrConversionFeatures & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceSamplerYcbcrConversionFeatures &
+ setSamplerYcbcrConversion( VULKAN_HPP_NAMESPACE::Bool32 samplerYcbcrConversion_ ) VULKAN_HPP_NOEXCEPT
+ {
+ samplerYcbcrConversion = samplerYcbcrConversion_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceSamplerYcbcrConversionFeatures const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceSamplerYcbcrConversionFeatures *>( this );
+ }
+
+ operator VkPhysicalDeviceSamplerYcbcrConversionFeatures &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceSamplerYcbcrConversionFeatures *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceSamplerYcbcrConversionFeatures const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceSamplerYcbcrConversionFeatures const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( samplerYcbcrConversion == rhs.samplerYcbcrConversion );
+ }
+
+ bool operator!=( PhysicalDeviceSamplerYcbcrConversionFeatures const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceSamplerYcbcrConversionFeatures;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 samplerYcbcrConversion = {};
+ };
+ static_assert( sizeof( PhysicalDeviceSamplerYcbcrConversionFeatures ) ==
+ sizeof( VkPhysicalDeviceSamplerYcbcrConversionFeatures ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceSamplerYcbcrConversionFeatures>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceSamplerYcbcrConversionFeatures>
+ {
+ using Type = PhysicalDeviceSamplerYcbcrConversionFeatures;
+ };
+ using PhysicalDeviceSamplerYcbcrConversionFeaturesKHR = PhysicalDeviceSamplerYcbcrConversionFeatures;
+
+ struct PhysicalDeviceScalarBlockLayoutFeatures
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceScalarBlockLayoutFeatures;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceScalarBlockLayoutFeatures( VULKAN_HPP_NAMESPACE::Bool32 scalarBlockLayout_ = {} )
+ VULKAN_HPP_NOEXCEPT : scalarBlockLayout( scalarBlockLayout_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceScalarBlockLayoutFeatures( PhysicalDeviceScalarBlockLayoutFeatures const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceScalarBlockLayoutFeatures( VkPhysicalDeviceScalarBlockLayoutFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceScalarBlockLayoutFeatures(
+ *reinterpret_cast<PhysicalDeviceScalarBlockLayoutFeatures const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceScalarBlockLayoutFeatures &
+ operator=( PhysicalDeviceScalarBlockLayoutFeatures const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceScalarBlockLayoutFeatures &
+ operator=( VkPhysicalDeviceScalarBlockLayoutFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceScalarBlockLayoutFeatures const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceScalarBlockLayoutFeatures & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceScalarBlockLayoutFeatures &
+ setScalarBlockLayout( VULKAN_HPP_NAMESPACE::Bool32 scalarBlockLayout_ ) VULKAN_HPP_NOEXCEPT
+ {
+ scalarBlockLayout = scalarBlockLayout_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceScalarBlockLayoutFeatures const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceScalarBlockLayoutFeatures *>( this );
+ }
+
+ operator VkPhysicalDeviceScalarBlockLayoutFeatures &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceScalarBlockLayoutFeatures *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceScalarBlockLayoutFeatures const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceScalarBlockLayoutFeatures const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( scalarBlockLayout == rhs.scalarBlockLayout );
+ }
+
+ bool operator!=( PhysicalDeviceScalarBlockLayoutFeatures const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceScalarBlockLayoutFeatures;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 scalarBlockLayout = {};
+ };
+ static_assert( sizeof( PhysicalDeviceScalarBlockLayoutFeatures ) ==
+ sizeof( VkPhysicalDeviceScalarBlockLayoutFeatures ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceScalarBlockLayoutFeatures>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceScalarBlockLayoutFeatures>
+ {
+ using Type = PhysicalDeviceScalarBlockLayoutFeatures;
+ };
+ using PhysicalDeviceScalarBlockLayoutFeaturesEXT = PhysicalDeviceScalarBlockLayoutFeatures;
+
+ struct PhysicalDeviceSeparateDepthStencilLayoutsFeatures
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceSeparateDepthStencilLayoutsFeatures;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceSeparateDepthStencilLayoutsFeatures(
+ VULKAN_HPP_NAMESPACE::Bool32 separateDepthStencilLayouts_ = {} ) VULKAN_HPP_NOEXCEPT
+ : separateDepthStencilLayouts( separateDepthStencilLayouts_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceSeparateDepthStencilLayoutsFeatures(
+ PhysicalDeviceSeparateDepthStencilLayoutsFeatures const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceSeparateDepthStencilLayoutsFeatures( VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceSeparateDepthStencilLayoutsFeatures(
+ *reinterpret_cast<PhysicalDeviceSeparateDepthStencilLayoutsFeatures const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceSeparateDepthStencilLayoutsFeatures &
+ operator=( PhysicalDeviceSeparateDepthStencilLayoutsFeatures const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceSeparateDepthStencilLayoutsFeatures &
+ operator=( VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this =
+ *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceSeparateDepthStencilLayoutsFeatures const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceSeparateDepthStencilLayoutsFeatures & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceSeparateDepthStencilLayoutsFeatures &
+ setSeparateDepthStencilLayouts( VULKAN_HPP_NAMESPACE::Bool32 separateDepthStencilLayouts_ ) VULKAN_HPP_NOEXCEPT
+ {
+ separateDepthStencilLayouts = separateDepthStencilLayouts_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures *>( this );
+ }
+
+ operator VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceSeparateDepthStencilLayoutsFeatures const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceSeparateDepthStencilLayoutsFeatures const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( separateDepthStencilLayouts == rhs.separateDepthStencilLayouts );
+ }
+
+ bool operator!=( PhysicalDeviceSeparateDepthStencilLayoutsFeatures const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceSeparateDepthStencilLayoutsFeatures;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 separateDepthStencilLayouts = {};
+ };
+ static_assert( sizeof( PhysicalDeviceSeparateDepthStencilLayoutsFeatures ) ==
+ sizeof( VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceSeparateDepthStencilLayoutsFeatures>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceSeparateDepthStencilLayoutsFeatures>
+ {
+ using Type = PhysicalDeviceSeparateDepthStencilLayoutsFeatures;
+ };
+ using PhysicalDeviceSeparateDepthStencilLayoutsFeaturesKHR = PhysicalDeviceSeparateDepthStencilLayoutsFeatures;
+
+ struct PhysicalDeviceShaderAtomicFloatFeaturesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceShaderAtomicFloatFeaturesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderAtomicFloatFeaturesEXT(
+ VULKAN_HPP_NAMESPACE::Bool32 shaderBufferFloat32Atomics_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderBufferFloat32AtomicAdd_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderBufferFloat64Atomics_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderBufferFloat64AtomicAdd_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderSharedFloat32Atomics_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderSharedFloat32AtomicAdd_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderSharedFloat64Atomics_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderSharedFloat64AtomicAdd_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderImageFloat32Atomics_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderImageFloat32AtomicAdd_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 sparseImageFloat32Atomics_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 sparseImageFloat32AtomicAdd_ = {} ) VULKAN_HPP_NOEXCEPT
+ : shaderBufferFloat32Atomics( shaderBufferFloat32Atomics_ )
+ , shaderBufferFloat32AtomicAdd( shaderBufferFloat32AtomicAdd_ )
+ , shaderBufferFloat64Atomics( shaderBufferFloat64Atomics_ )
+ , shaderBufferFloat64AtomicAdd( shaderBufferFloat64AtomicAdd_ )
+ , shaderSharedFloat32Atomics( shaderSharedFloat32Atomics_ )
+ , shaderSharedFloat32AtomicAdd( shaderSharedFloat32AtomicAdd_ )
+ , shaderSharedFloat64Atomics( shaderSharedFloat64Atomics_ )
+ , shaderSharedFloat64AtomicAdd( shaderSharedFloat64AtomicAdd_ )
+ , shaderImageFloat32Atomics( shaderImageFloat32Atomics_ )
+ , shaderImageFloat32AtomicAdd( shaderImageFloat32AtomicAdd_ )
+ , sparseImageFloat32Atomics( sparseImageFloat32Atomics_ )
+ , sparseImageFloat32AtomicAdd( sparseImageFloat32AtomicAdd_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderAtomicFloatFeaturesEXT(
+ PhysicalDeviceShaderAtomicFloatFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceShaderAtomicFloatFeaturesEXT( VkPhysicalDeviceShaderAtomicFloatFeaturesEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceShaderAtomicFloatFeaturesEXT(
+ *reinterpret_cast<PhysicalDeviceShaderAtomicFloatFeaturesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderAtomicFloatFeaturesEXT &
+ operator=( PhysicalDeviceShaderAtomicFloatFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceShaderAtomicFloatFeaturesEXT &
+ operator=( VkPhysicalDeviceShaderAtomicFloatFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderAtomicFloatFeaturesEXT const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceShaderAtomicFloatFeaturesEXT & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceShaderAtomicFloatFeaturesEXT &
+ setShaderBufferFloat32Atomics( VULKAN_HPP_NAMESPACE::Bool32 shaderBufferFloat32Atomics_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderBufferFloat32Atomics = shaderBufferFloat32Atomics_;
+ return *this;
+ }
+
+ PhysicalDeviceShaderAtomicFloatFeaturesEXT &
+ setShaderBufferFloat32AtomicAdd( VULKAN_HPP_NAMESPACE::Bool32 shaderBufferFloat32AtomicAdd_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderBufferFloat32AtomicAdd = shaderBufferFloat32AtomicAdd_;
+ return *this;
+ }
+
+ PhysicalDeviceShaderAtomicFloatFeaturesEXT &
+ setShaderBufferFloat64Atomics( VULKAN_HPP_NAMESPACE::Bool32 shaderBufferFloat64Atomics_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderBufferFloat64Atomics = shaderBufferFloat64Atomics_;
+ return *this;
+ }
+
+ PhysicalDeviceShaderAtomicFloatFeaturesEXT &
+ setShaderBufferFloat64AtomicAdd( VULKAN_HPP_NAMESPACE::Bool32 shaderBufferFloat64AtomicAdd_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderBufferFloat64AtomicAdd = shaderBufferFloat64AtomicAdd_;
+ return *this;
+ }
+
+ PhysicalDeviceShaderAtomicFloatFeaturesEXT &
+ setShaderSharedFloat32Atomics( VULKAN_HPP_NAMESPACE::Bool32 shaderSharedFloat32Atomics_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderSharedFloat32Atomics = shaderSharedFloat32Atomics_;
+ return *this;
+ }
+
+ PhysicalDeviceShaderAtomicFloatFeaturesEXT &
+ setShaderSharedFloat32AtomicAdd( VULKAN_HPP_NAMESPACE::Bool32 shaderSharedFloat32AtomicAdd_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderSharedFloat32AtomicAdd = shaderSharedFloat32AtomicAdd_;
+ return *this;
+ }
+
+ PhysicalDeviceShaderAtomicFloatFeaturesEXT &
+ setShaderSharedFloat64Atomics( VULKAN_HPP_NAMESPACE::Bool32 shaderSharedFloat64Atomics_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderSharedFloat64Atomics = shaderSharedFloat64Atomics_;
+ return *this;
+ }
+
+ PhysicalDeviceShaderAtomicFloatFeaturesEXT &
+ setShaderSharedFloat64AtomicAdd( VULKAN_HPP_NAMESPACE::Bool32 shaderSharedFloat64AtomicAdd_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderSharedFloat64AtomicAdd = shaderSharedFloat64AtomicAdd_;
+ return *this;
+ }
+
+ PhysicalDeviceShaderAtomicFloatFeaturesEXT &
+ setShaderImageFloat32Atomics( VULKAN_HPP_NAMESPACE::Bool32 shaderImageFloat32Atomics_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderImageFloat32Atomics = shaderImageFloat32Atomics_;
+ return *this;
+ }
+
+ PhysicalDeviceShaderAtomicFloatFeaturesEXT &
+ setShaderImageFloat32AtomicAdd( VULKAN_HPP_NAMESPACE::Bool32 shaderImageFloat32AtomicAdd_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderImageFloat32AtomicAdd = shaderImageFloat32AtomicAdd_;
+ return *this;
+ }
+
+ PhysicalDeviceShaderAtomicFloatFeaturesEXT &
+ setSparseImageFloat32Atomics( VULKAN_HPP_NAMESPACE::Bool32 sparseImageFloat32Atomics_ ) VULKAN_HPP_NOEXCEPT
+ {
+ sparseImageFloat32Atomics = sparseImageFloat32Atomics_;
+ return *this;
+ }
+
+ PhysicalDeviceShaderAtomicFloatFeaturesEXT &
+ setSparseImageFloat32AtomicAdd( VULKAN_HPP_NAMESPACE::Bool32 sparseImageFloat32AtomicAdd_ ) VULKAN_HPP_NOEXCEPT
+ {
+ sparseImageFloat32AtomicAdd = sparseImageFloat32AtomicAdd_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceShaderAtomicFloatFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceShaderAtomicFloatFeaturesEXT *>( this );
+ }
+
+ operator VkPhysicalDeviceShaderAtomicFloatFeaturesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceShaderAtomicFloatFeaturesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceShaderAtomicFloatFeaturesEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceShaderAtomicFloatFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( shaderBufferFloat32Atomics == rhs.shaderBufferFloat32Atomics ) &&
+ ( shaderBufferFloat32AtomicAdd == rhs.shaderBufferFloat32AtomicAdd ) &&
+ ( shaderBufferFloat64Atomics == rhs.shaderBufferFloat64Atomics ) &&
+ ( shaderBufferFloat64AtomicAdd == rhs.shaderBufferFloat64AtomicAdd ) &&
+ ( shaderSharedFloat32Atomics == rhs.shaderSharedFloat32Atomics ) &&
+ ( shaderSharedFloat32AtomicAdd == rhs.shaderSharedFloat32AtomicAdd ) &&
+ ( shaderSharedFloat64Atomics == rhs.shaderSharedFloat64Atomics ) &&
+ ( shaderSharedFloat64AtomicAdd == rhs.shaderSharedFloat64AtomicAdd ) &&
+ ( shaderImageFloat32Atomics == rhs.shaderImageFloat32Atomics ) &&
+ ( shaderImageFloat32AtomicAdd == rhs.shaderImageFloat32AtomicAdd ) &&
+ ( sparseImageFloat32Atomics == rhs.sparseImageFloat32Atomics ) &&
+ ( sparseImageFloat32AtomicAdd == rhs.sparseImageFloat32AtomicAdd );
+ }
+
+ bool operator!=( PhysicalDeviceShaderAtomicFloatFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceShaderAtomicFloatFeaturesEXT;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderBufferFloat32Atomics = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderBufferFloat32AtomicAdd = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderBufferFloat64Atomics = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderBufferFloat64AtomicAdd = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderSharedFloat32Atomics = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderSharedFloat32AtomicAdd = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderSharedFloat64Atomics = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderSharedFloat64AtomicAdd = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderImageFloat32Atomics = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderImageFloat32AtomicAdd = {};
+ VULKAN_HPP_NAMESPACE::Bool32 sparseImageFloat32Atomics = {};
+ VULKAN_HPP_NAMESPACE::Bool32 sparseImageFloat32AtomicAdd = {};
+ };
+ static_assert( sizeof( PhysicalDeviceShaderAtomicFloatFeaturesEXT ) ==
+ sizeof( VkPhysicalDeviceShaderAtomicFloatFeaturesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceShaderAtomicFloatFeaturesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceShaderAtomicFloatFeaturesEXT>
+ {
+ using Type = PhysicalDeviceShaderAtomicFloatFeaturesEXT;
+ };
+
+ struct PhysicalDeviceShaderAtomicInt64Features
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceShaderAtomicInt64Features;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderAtomicInt64Features(
+ VULKAN_HPP_NAMESPACE::Bool32 shaderBufferInt64Atomics_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderSharedInt64Atomics_ = {} ) VULKAN_HPP_NOEXCEPT
+ : shaderBufferInt64Atomics( shaderBufferInt64Atomics_ )
+ , shaderSharedInt64Atomics( shaderSharedInt64Atomics_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderAtomicInt64Features( PhysicalDeviceShaderAtomicInt64Features const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceShaderAtomicInt64Features( VkPhysicalDeviceShaderAtomicInt64Features const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceShaderAtomicInt64Features(
+ *reinterpret_cast<PhysicalDeviceShaderAtomicInt64Features const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderAtomicInt64Features &
+ operator=( PhysicalDeviceShaderAtomicInt64Features const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceShaderAtomicInt64Features &
+ operator=( VkPhysicalDeviceShaderAtomicInt64Features const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderAtomicInt64Features const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceShaderAtomicInt64Features & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceShaderAtomicInt64Features &
+ setShaderBufferInt64Atomics( VULKAN_HPP_NAMESPACE::Bool32 shaderBufferInt64Atomics_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderBufferInt64Atomics = shaderBufferInt64Atomics_;
+ return *this;
+ }
+
+ PhysicalDeviceShaderAtomicInt64Features &
+ setShaderSharedInt64Atomics( VULKAN_HPP_NAMESPACE::Bool32 shaderSharedInt64Atomics_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderSharedInt64Atomics = shaderSharedInt64Atomics_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceShaderAtomicInt64Features const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceShaderAtomicInt64Features *>( this );
+ }
+
+ operator VkPhysicalDeviceShaderAtomicInt64Features &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceShaderAtomicInt64Features *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceShaderAtomicInt64Features const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceShaderAtomicInt64Features const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( shaderBufferInt64Atomics == rhs.shaderBufferInt64Atomics ) &&
+ ( shaderSharedInt64Atomics == rhs.shaderSharedInt64Atomics );
+ }
+
+ bool operator!=( PhysicalDeviceShaderAtomicInt64Features const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceShaderAtomicInt64Features;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderBufferInt64Atomics = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderSharedInt64Atomics = {};
+ };
+ static_assert( sizeof( PhysicalDeviceShaderAtomicInt64Features ) ==
+ sizeof( VkPhysicalDeviceShaderAtomicInt64Features ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceShaderAtomicInt64Features>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceShaderAtomicInt64Features>
+ {
+ using Type = PhysicalDeviceShaderAtomicInt64Features;
+ };
+ using PhysicalDeviceShaderAtomicInt64FeaturesKHR = PhysicalDeviceShaderAtomicInt64Features;
+
+ struct PhysicalDeviceShaderClockFeaturesKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceShaderClockFeaturesKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ PhysicalDeviceShaderClockFeaturesKHR( VULKAN_HPP_NAMESPACE::Bool32 shaderSubgroupClock_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderDeviceClock_ = {} ) VULKAN_HPP_NOEXCEPT
+ : shaderSubgroupClock( shaderSubgroupClock_ )
+ , shaderDeviceClock( shaderDeviceClock_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderClockFeaturesKHR( PhysicalDeviceShaderClockFeaturesKHR const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceShaderClockFeaturesKHR( VkPhysicalDeviceShaderClockFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceShaderClockFeaturesKHR( *reinterpret_cast<PhysicalDeviceShaderClockFeaturesKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderClockFeaturesKHR &
+ operator=( PhysicalDeviceShaderClockFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceShaderClockFeaturesKHR &
+ operator=( VkPhysicalDeviceShaderClockFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderClockFeaturesKHR const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceShaderClockFeaturesKHR & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceShaderClockFeaturesKHR &
+ setShaderSubgroupClock( VULKAN_HPP_NAMESPACE::Bool32 shaderSubgroupClock_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderSubgroupClock = shaderSubgroupClock_;
+ return *this;
+ }
+
+ PhysicalDeviceShaderClockFeaturesKHR &
+ setShaderDeviceClock( VULKAN_HPP_NAMESPACE::Bool32 shaderDeviceClock_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderDeviceClock = shaderDeviceClock_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceShaderClockFeaturesKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceShaderClockFeaturesKHR *>( this );
+ }
+
+ operator VkPhysicalDeviceShaderClockFeaturesKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceShaderClockFeaturesKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceShaderClockFeaturesKHR const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceShaderClockFeaturesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( shaderSubgroupClock == rhs.shaderSubgroupClock ) &&
+ ( shaderDeviceClock == rhs.shaderDeviceClock );
+ }
+
+ bool operator!=( PhysicalDeviceShaderClockFeaturesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceShaderClockFeaturesKHR;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderSubgroupClock = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderDeviceClock = {};
+ };
+ static_assert( sizeof( PhysicalDeviceShaderClockFeaturesKHR ) == sizeof( VkPhysicalDeviceShaderClockFeaturesKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceShaderClockFeaturesKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceShaderClockFeaturesKHR>
+ {
+ using Type = PhysicalDeviceShaderClockFeaturesKHR;
+ };
+
+ struct PhysicalDeviceShaderCoreProperties2AMD
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceShaderCoreProperties2AMD;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderCoreProperties2AMD(
+ VULKAN_HPP_NAMESPACE::ShaderCorePropertiesFlagsAMD shaderCoreFeatures_ = {},
+ uint32_t activeComputeUnitCount_ = {} ) VULKAN_HPP_NOEXCEPT
+ : shaderCoreFeatures( shaderCoreFeatures_ )
+ , activeComputeUnitCount( activeComputeUnitCount_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderCoreProperties2AMD( PhysicalDeviceShaderCoreProperties2AMD const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceShaderCoreProperties2AMD( VkPhysicalDeviceShaderCoreProperties2AMD const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceShaderCoreProperties2AMD(
+ *reinterpret_cast<PhysicalDeviceShaderCoreProperties2AMD const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderCoreProperties2AMD &
+ operator=( PhysicalDeviceShaderCoreProperties2AMD const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceShaderCoreProperties2AMD &
+ operator=( VkPhysicalDeviceShaderCoreProperties2AMD const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderCoreProperties2AMD const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDeviceShaderCoreProperties2AMD const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceShaderCoreProperties2AMD *>( this );
+ }
+
+ operator VkPhysicalDeviceShaderCoreProperties2AMD &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceShaderCoreProperties2AMD *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceShaderCoreProperties2AMD const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceShaderCoreProperties2AMD const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( shaderCoreFeatures == rhs.shaderCoreFeatures ) &&
+ ( activeComputeUnitCount == rhs.activeComputeUnitCount );
+ }
+
+ bool operator!=( PhysicalDeviceShaderCoreProperties2AMD const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceShaderCoreProperties2AMD;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ShaderCorePropertiesFlagsAMD shaderCoreFeatures = {};
+ uint32_t activeComputeUnitCount = {};
+ };
+ static_assert( sizeof( PhysicalDeviceShaderCoreProperties2AMD ) == sizeof( VkPhysicalDeviceShaderCoreProperties2AMD ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceShaderCoreProperties2AMD>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceShaderCoreProperties2AMD>
+ {
+ using Type = PhysicalDeviceShaderCoreProperties2AMD;
+ };
+
+ struct PhysicalDeviceShaderCorePropertiesAMD
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceShaderCorePropertiesAMD;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ PhysicalDeviceShaderCorePropertiesAMD( 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_ = {} ) VULKAN_HPP_NOEXCEPT
+ : shaderEngineCount( shaderEngineCount_ )
+ , shaderArraysPerEngineCount( shaderArraysPerEngineCount_ )
+ , computeUnitsPerShaderArray( computeUnitsPerShaderArray_ )
+ , simdPerComputeUnit( simdPerComputeUnit_ )
+ , wavefrontsPerSimd( wavefrontsPerSimd_ )
+ , wavefrontSize( wavefrontSize_ )
+ , sgprsPerSimd( sgprsPerSimd_ )
+ , minSgprAllocation( minSgprAllocation_ )
+ , maxSgprAllocation( maxSgprAllocation_ )
+ , sgprAllocationGranularity( sgprAllocationGranularity_ )
+ , vgprsPerSimd( vgprsPerSimd_ )
+ , minVgprAllocation( minVgprAllocation_ )
+ , maxVgprAllocation( maxVgprAllocation_ )
+ , vgprAllocationGranularity( vgprAllocationGranularity_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderCorePropertiesAMD( PhysicalDeviceShaderCorePropertiesAMD const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceShaderCorePropertiesAMD( VkPhysicalDeviceShaderCorePropertiesAMD const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceShaderCorePropertiesAMD(
+ *reinterpret_cast<PhysicalDeviceShaderCorePropertiesAMD const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderCorePropertiesAMD &
+ operator=( PhysicalDeviceShaderCorePropertiesAMD const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceShaderCorePropertiesAMD &
+ operator=( VkPhysicalDeviceShaderCorePropertiesAMD const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderCorePropertiesAMD const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDeviceShaderCorePropertiesAMD const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceShaderCorePropertiesAMD *>( this );
+ }
+
+ operator VkPhysicalDeviceShaderCorePropertiesAMD &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceShaderCorePropertiesAMD *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceShaderCorePropertiesAMD const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceShaderCorePropertiesAMD const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( shaderEngineCount == rhs.shaderEngineCount ) &&
+ ( shaderArraysPerEngineCount == rhs.shaderArraysPerEngineCount ) &&
+ ( computeUnitsPerShaderArray == rhs.computeUnitsPerShaderArray ) &&
+ ( simdPerComputeUnit == rhs.simdPerComputeUnit ) && ( wavefrontsPerSimd == rhs.wavefrontsPerSimd ) &&
+ ( wavefrontSize == rhs.wavefrontSize ) && ( sgprsPerSimd == rhs.sgprsPerSimd ) &&
+ ( minSgprAllocation == rhs.minSgprAllocation ) && ( maxSgprAllocation == rhs.maxSgprAllocation ) &&
+ ( sgprAllocationGranularity == rhs.sgprAllocationGranularity ) && ( vgprsPerSimd == rhs.vgprsPerSimd ) &&
+ ( minVgprAllocation == rhs.minVgprAllocation ) && ( maxVgprAllocation == rhs.maxVgprAllocation ) &&
+ ( vgprAllocationGranularity == rhs.vgprAllocationGranularity );
+ }
+
+ bool operator!=( PhysicalDeviceShaderCorePropertiesAMD const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceShaderCorePropertiesAMD;
+ 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 = {};
+ };
+ static_assert( sizeof( PhysicalDeviceShaderCorePropertiesAMD ) == sizeof( VkPhysicalDeviceShaderCorePropertiesAMD ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceShaderCorePropertiesAMD>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceShaderCorePropertiesAMD>
+ {
+ using Type = PhysicalDeviceShaderCorePropertiesAMD;
+ };
+
+ struct PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT(
+ VULKAN_HPP_NAMESPACE::Bool32 shaderDemoteToHelperInvocation_ = {} ) VULKAN_HPP_NOEXCEPT
+ : shaderDemoteToHelperInvocation( shaderDemoteToHelperInvocation_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT(
+ PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT(
+ VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT(
+ *reinterpret_cast<PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT &
+ operator=( PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT &
+ operator=( VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT const *>(
+ &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT & setShaderDemoteToHelperInvocation(
+ VULKAN_HPP_NAMESPACE::Bool32 shaderDemoteToHelperInvocation_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderDemoteToHelperInvocation = shaderDemoteToHelperInvocation_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT *>( this );
+ }
+
+ operator VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( shaderDemoteToHelperInvocation == rhs.shaderDemoteToHelperInvocation );
+ }
+
+ bool operator!=( PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderDemoteToHelperInvocation = {};
+ };
+ static_assert( sizeof( PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT ) ==
+ sizeof( VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT>
+ {
+ using Type = PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT;
+ };
+
+ struct PhysicalDeviceShaderDrawParametersFeatures
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceShaderDrawParametersFeatures;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderDrawParametersFeatures(
+ VULKAN_HPP_NAMESPACE::Bool32 shaderDrawParameters_ = {} ) VULKAN_HPP_NOEXCEPT
+ : shaderDrawParameters( shaderDrawParameters_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderDrawParametersFeatures(
+ PhysicalDeviceShaderDrawParametersFeatures const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceShaderDrawParametersFeatures( VkPhysicalDeviceShaderDrawParametersFeatures const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceShaderDrawParametersFeatures(
+ *reinterpret_cast<PhysicalDeviceShaderDrawParametersFeatures const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderDrawParametersFeatures &
+ operator=( PhysicalDeviceShaderDrawParametersFeatures const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceShaderDrawParametersFeatures &
+ operator=( VkPhysicalDeviceShaderDrawParametersFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderDrawParametersFeatures const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceShaderDrawParametersFeatures & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceShaderDrawParametersFeatures &
+ setShaderDrawParameters( VULKAN_HPP_NAMESPACE::Bool32 shaderDrawParameters_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderDrawParameters = shaderDrawParameters_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceShaderDrawParametersFeatures const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceShaderDrawParametersFeatures *>( this );
+ }
+
+ operator VkPhysicalDeviceShaderDrawParametersFeatures &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceShaderDrawParametersFeatures *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceShaderDrawParametersFeatures const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceShaderDrawParametersFeatures const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( shaderDrawParameters == rhs.shaderDrawParameters );
+ }
+
+ bool operator!=( PhysicalDeviceShaderDrawParametersFeatures const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceShaderDrawParametersFeatures;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderDrawParameters = {};
+ };
+ static_assert( sizeof( PhysicalDeviceShaderDrawParametersFeatures ) ==
+ sizeof( VkPhysicalDeviceShaderDrawParametersFeatures ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceShaderDrawParametersFeatures>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceShaderDrawParametersFeatures>
+ {
+ using Type = PhysicalDeviceShaderDrawParametersFeatures;
+ };
+ using PhysicalDeviceShaderDrawParameterFeatures = PhysicalDeviceShaderDrawParametersFeatures;
+
+ struct PhysicalDeviceShaderFloat16Int8Features
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceShaderFloat16Int8Features;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ PhysicalDeviceShaderFloat16Int8Features( VULKAN_HPP_NAMESPACE::Bool32 shaderFloat16_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderInt8_ = {} ) VULKAN_HPP_NOEXCEPT
+ : shaderFloat16( shaderFloat16_ )
+ , shaderInt8( shaderInt8_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderFloat16Int8Features( PhysicalDeviceShaderFloat16Int8Features const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceShaderFloat16Int8Features( VkPhysicalDeviceShaderFloat16Int8Features const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceShaderFloat16Int8Features(
+ *reinterpret_cast<PhysicalDeviceShaderFloat16Int8Features const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderFloat16Int8Features &
+ operator=( PhysicalDeviceShaderFloat16Int8Features const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceShaderFloat16Int8Features &
+ operator=( VkPhysicalDeviceShaderFloat16Int8Features const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderFloat16Int8Features const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceShaderFloat16Int8Features & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceShaderFloat16Int8Features &
+ setShaderFloat16( VULKAN_HPP_NAMESPACE::Bool32 shaderFloat16_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderFloat16 = shaderFloat16_;
+ return *this;
+ }
+
+ PhysicalDeviceShaderFloat16Int8Features &
+ setShaderInt8( VULKAN_HPP_NAMESPACE::Bool32 shaderInt8_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderInt8 = shaderInt8_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceShaderFloat16Int8Features const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceShaderFloat16Int8Features *>( this );
+ }
+
+ operator VkPhysicalDeviceShaderFloat16Int8Features &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceShaderFloat16Int8Features *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceShaderFloat16Int8Features const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceShaderFloat16Int8Features const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( shaderFloat16 == rhs.shaderFloat16 ) &&
+ ( shaderInt8 == rhs.shaderInt8 );
+ }
+
+ bool operator!=( PhysicalDeviceShaderFloat16Int8Features const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceShaderFloat16Int8Features;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderFloat16 = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderInt8 = {};
+ };
+ static_assert( sizeof( PhysicalDeviceShaderFloat16Int8Features ) ==
+ sizeof( VkPhysicalDeviceShaderFloat16Int8Features ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceShaderFloat16Int8Features>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceShaderFloat16Int8Features>
+ {
+ using Type = PhysicalDeviceShaderFloat16Int8Features;
+ };
+ using PhysicalDeviceFloat16Int8FeaturesKHR = PhysicalDeviceShaderFloat16Int8Features;
+ using PhysicalDeviceShaderFloat16Int8FeaturesKHR = PhysicalDeviceShaderFloat16Int8Features;
+
+ struct PhysicalDeviceShaderImageAtomicInt64FeaturesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceShaderImageAtomicInt64FeaturesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderImageAtomicInt64FeaturesEXT(
+ VULKAN_HPP_NAMESPACE::Bool32 shaderImageInt64Atomics_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 sparseImageInt64Atomics_ = {} ) VULKAN_HPP_NOEXCEPT
+ : shaderImageInt64Atomics( shaderImageInt64Atomics_ )
+ , sparseImageInt64Atomics( sparseImageInt64Atomics_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderImageAtomicInt64FeaturesEXT(
+ PhysicalDeviceShaderImageAtomicInt64FeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceShaderImageAtomicInt64FeaturesEXT( VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceShaderImageAtomicInt64FeaturesEXT(
+ *reinterpret_cast<PhysicalDeviceShaderImageAtomicInt64FeaturesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderImageAtomicInt64FeaturesEXT &
+ operator=( PhysicalDeviceShaderImageAtomicInt64FeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceShaderImageAtomicInt64FeaturesEXT &
+ operator=( VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderImageAtomicInt64FeaturesEXT const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceShaderImageAtomicInt64FeaturesEXT & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceShaderImageAtomicInt64FeaturesEXT &
+ setShaderImageInt64Atomics( VULKAN_HPP_NAMESPACE::Bool32 shaderImageInt64Atomics_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderImageInt64Atomics = shaderImageInt64Atomics_;
+ return *this;
+ }
+
+ PhysicalDeviceShaderImageAtomicInt64FeaturesEXT &
+ setSparseImageInt64Atomics( VULKAN_HPP_NAMESPACE::Bool32 sparseImageInt64Atomics_ ) VULKAN_HPP_NOEXCEPT
+ {
+ sparseImageInt64Atomics = sparseImageInt64Atomics_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT *>( this );
+ }
+
+ operator VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceShaderImageAtomicInt64FeaturesEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceShaderImageAtomicInt64FeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( shaderImageInt64Atomics == rhs.shaderImageInt64Atomics ) &&
+ ( sparseImageInt64Atomics == rhs.sparseImageInt64Atomics );
+ }
+
+ bool operator!=( PhysicalDeviceShaderImageAtomicInt64FeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceShaderImageAtomicInt64FeaturesEXT;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderImageInt64Atomics = {};
+ VULKAN_HPP_NAMESPACE::Bool32 sparseImageInt64Atomics = {};
+ };
+ static_assert( sizeof( PhysicalDeviceShaderImageAtomicInt64FeaturesEXT ) ==
+ sizeof( VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceShaderImageAtomicInt64FeaturesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceShaderImageAtomicInt64FeaturesEXT>
+ {
+ using Type = PhysicalDeviceShaderImageAtomicInt64FeaturesEXT;
+ };
+
+ struct PhysicalDeviceShaderImageFootprintFeaturesNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceShaderImageFootprintFeaturesNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderImageFootprintFeaturesNV(
+ VULKAN_HPP_NAMESPACE::Bool32 imageFootprint_ = {} ) VULKAN_HPP_NOEXCEPT : imageFootprint( imageFootprint_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderImageFootprintFeaturesNV(
+ PhysicalDeviceShaderImageFootprintFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceShaderImageFootprintFeaturesNV( VkPhysicalDeviceShaderImageFootprintFeaturesNV const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceShaderImageFootprintFeaturesNV(
+ *reinterpret_cast<PhysicalDeviceShaderImageFootprintFeaturesNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderImageFootprintFeaturesNV &
+ operator=( PhysicalDeviceShaderImageFootprintFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceShaderImageFootprintFeaturesNV &
+ operator=( VkPhysicalDeviceShaderImageFootprintFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderImageFootprintFeaturesNV const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceShaderImageFootprintFeaturesNV & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceShaderImageFootprintFeaturesNV &
+ setImageFootprint( VULKAN_HPP_NAMESPACE::Bool32 imageFootprint_ ) VULKAN_HPP_NOEXCEPT
+ {
+ imageFootprint = imageFootprint_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceShaderImageFootprintFeaturesNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceShaderImageFootprintFeaturesNV *>( this );
+ }
+
+ operator VkPhysicalDeviceShaderImageFootprintFeaturesNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceShaderImageFootprintFeaturesNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceShaderImageFootprintFeaturesNV const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceShaderImageFootprintFeaturesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( imageFootprint == rhs.imageFootprint );
+ }
+
+ bool operator!=( PhysicalDeviceShaderImageFootprintFeaturesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceShaderImageFootprintFeaturesNV;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 imageFootprint = {};
+ };
+ static_assert( sizeof( PhysicalDeviceShaderImageFootprintFeaturesNV ) ==
+ sizeof( VkPhysicalDeviceShaderImageFootprintFeaturesNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceShaderImageFootprintFeaturesNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceShaderImageFootprintFeaturesNV>
+ {
+ using Type = PhysicalDeviceShaderImageFootprintFeaturesNV;
+ };
+
+ struct PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceShaderIntegerFunctions2FeaturesINTEL;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL(
+ VULKAN_HPP_NAMESPACE::Bool32 shaderIntegerFunctions2_ = {} ) VULKAN_HPP_NOEXCEPT
+ : shaderIntegerFunctions2( shaderIntegerFunctions2_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL(
+ PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL(
+ VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL(
+ *reinterpret_cast<PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL &
+ operator=( PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL &
+ operator=( VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this =
+ *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL &
+ setShaderIntegerFunctions2( VULKAN_HPP_NAMESPACE::Bool32 shaderIntegerFunctions2_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderIntegerFunctions2 = shaderIntegerFunctions2_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL *>( this );
+ }
+
+ operator VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( shaderIntegerFunctions2 == rhs.shaderIntegerFunctions2 );
+ }
+
+ bool operator!=( PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceShaderIntegerFunctions2FeaturesINTEL;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderIntegerFunctions2 = {};
+ };
+ static_assert( sizeof( PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL ) ==
+ sizeof( VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceShaderIntegerFunctions2FeaturesINTEL>
+ {
+ using Type = PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL;
+ };
+
+ struct PhysicalDeviceShaderSMBuiltinsFeaturesNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceShaderSmBuiltinsFeaturesNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderSMBuiltinsFeaturesNV( VULKAN_HPP_NAMESPACE::Bool32 shaderSMBuiltins_ = {} )
+ VULKAN_HPP_NOEXCEPT : shaderSMBuiltins( shaderSMBuiltins_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderSMBuiltinsFeaturesNV(
+ PhysicalDeviceShaderSMBuiltinsFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceShaderSMBuiltinsFeaturesNV( VkPhysicalDeviceShaderSMBuiltinsFeaturesNV const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceShaderSMBuiltinsFeaturesNV(
+ *reinterpret_cast<PhysicalDeviceShaderSMBuiltinsFeaturesNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderSMBuiltinsFeaturesNV &
+ operator=( PhysicalDeviceShaderSMBuiltinsFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceShaderSMBuiltinsFeaturesNV &
+ operator=( VkPhysicalDeviceShaderSMBuiltinsFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderSMBuiltinsFeaturesNV const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceShaderSMBuiltinsFeaturesNV & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceShaderSMBuiltinsFeaturesNV &
+ setShaderSMBuiltins( VULKAN_HPP_NAMESPACE::Bool32 shaderSMBuiltins_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderSMBuiltins = shaderSMBuiltins_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceShaderSMBuiltinsFeaturesNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceShaderSMBuiltinsFeaturesNV *>( this );
+ }
+
+ operator VkPhysicalDeviceShaderSMBuiltinsFeaturesNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceShaderSMBuiltinsFeaturesNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceShaderSMBuiltinsFeaturesNV const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceShaderSMBuiltinsFeaturesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( shaderSMBuiltins == rhs.shaderSMBuiltins );
+ }
+
+ bool operator!=( PhysicalDeviceShaderSMBuiltinsFeaturesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceShaderSmBuiltinsFeaturesNV;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderSMBuiltins = {};
+ };
+ static_assert( sizeof( PhysicalDeviceShaderSMBuiltinsFeaturesNV ) ==
+ sizeof( VkPhysicalDeviceShaderSMBuiltinsFeaturesNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceShaderSMBuiltinsFeaturesNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceShaderSmBuiltinsFeaturesNV>
+ {
+ using Type = PhysicalDeviceShaderSMBuiltinsFeaturesNV;
+ };
+
+ struct PhysicalDeviceShaderSMBuiltinsPropertiesNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceShaderSmBuiltinsPropertiesNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ PhysicalDeviceShaderSMBuiltinsPropertiesNV( uint32_t shaderSMCount_ = {},
+ uint32_t shaderWarpsPerSM_ = {} ) VULKAN_HPP_NOEXCEPT
+ : shaderSMCount( shaderSMCount_ )
+ , shaderWarpsPerSM( shaderWarpsPerSM_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderSMBuiltinsPropertiesNV(
+ PhysicalDeviceShaderSMBuiltinsPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceShaderSMBuiltinsPropertiesNV( VkPhysicalDeviceShaderSMBuiltinsPropertiesNV const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceShaderSMBuiltinsPropertiesNV(
+ *reinterpret_cast<PhysicalDeviceShaderSMBuiltinsPropertiesNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderSMBuiltinsPropertiesNV &
+ operator=( PhysicalDeviceShaderSMBuiltinsPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceShaderSMBuiltinsPropertiesNV &
+ operator=( VkPhysicalDeviceShaderSMBuiltinsPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderSMBuiltinsPropertiesNV const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDeviceShaderSMBuiltinsPropertiesNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceShaderSMBuiltinsPropertiesNV *>( this );
+ }
+
+ operator VkPhysicalDeviceShaderSMBuiltinsPropertiesNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceShaderSMBuiltinsPropertiesNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceShaderSMBuiltinsPropertiesNV const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceShaderSMBuiltinsPropertiesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( shaderSMCount == rhs.shaderSMCount ) &&
+ ( shaderWarpsPerSM == rhs.shaderWarpsPerSM );
+ }
+
+ bool operator!=( PhysicalDeviceShaderSMBuiltinsPropertiesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceShaderSmBuiltinsPropertiesNV;
+ void * pNext = {};
+ uint32_t shaderSMCount = {};
+ uint32_t shaderWarpsPerSM = {};
+ };
+ static_assert( sizeof( PhysicalDeviceShaderSMBuiltinsPropertiesNV ) ==
+ sizeof( VkPhysicalDeviceShaderSMBuiltinsPropertiesNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceShaderSMBuiltinsPropertiesNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceShaderSmBuiltinsPropertiesNV>
+ {
+ using Type = PhysicalDeviceShaderSMBuiltinsPropertiesNV;
+ };
+
+ struct PhysicalDeviceShaderSubgroupExtendedTypesFeatures
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceShaderSubgroupExtendedTypesFeatures;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderSubgroupExtendedTypesFeatures(
+ VULKAN_HPP_NAMESPACE::Bool32 shaderSubgroupExtendedTypes_ = {} ) VULKAN_HPP_NOEXCEPT
+ : shaderSubgroupExtendedTypes( shaderSubgroupExtendedTypes_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderSubgroupExtendedTypesFeatures(
+ PhysicalDeviceShaderSubgroupExtendedTypesFeatures const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceShaderSubgroupExtendedTypesFeatures( VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceShaderSubgroupExtendedTypesFeatures(
+ *reinterpret_cast<PhysicalDeviceShaderSubgroupExtendedTypesFeatures const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderSubgroupExtendedTypesFeatures &
+ operator=( PhysicalDeviceShaderSubgroupExtendedTypesFeatures const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceShaderSubgroupExtendedTypesFeatures &
+ operator=( VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this =
+ *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderSubgroupExtendedTypesFeatures const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceShaderSubgroupExtendedTypesFeatures & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceShaderSubgroupExtendedTypesFeatures &
+ setShaderSubgroupExtendedTypes( VULKAN_HPP_NAMESPACE::Bool32 shaderSubgroupExtendedTypes_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderSubgroupExtendedTypes = shaderSubgroupExtendedTypes_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures *>( this );
+ }
+
+ operator VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceShaderSubgroupExtendedTypesFeatures const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceShaderSubgroupExtendedTypesFeatures const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( shaderSubgroupExtendedTypes == rhs.shaderSubgroupExtendedTypes );
+ }
+
+ bool operator!=( PhysicalDeviceShaderSubgroupExtendedTypesFeatures const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceShaderSubgroupExtendedTypesFeatures;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderSubgroupExtendedTypes = {};
+ };
+ static_assert( sizeof( PhysicalDeviceShaderSubgroupExtendedTypesFeatures ) ==
+ sizeof( VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceShaderSubgroupExtendedTypesFeatures>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceShaderSubgroupExtendedTypesFeatures>
+ {
+ using Type = PhysicalDeviceShaderSubgroupExtendedTypesFeatures;
+ };
+ using PhysicalDeviceShaderSubgroupExtendedTypesFeaturesKHR = PhysicalDeviceShaderSubgroupExtendedTypesFeatures;
+
+ struct PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR(
+ VULKAN_HPP_NAMESPACE::Bool32 shaderSubgroupUniformControlFlow_ = {} ) VULKAN_HPP_NOEXCEPT
+ : shaderSubgroupUniformControlFlow( shaderSubgroupUniformControlFlow_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR(
+ PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR(
+ VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR(
+ *reinterpret_cast<PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR &
+ operator=( PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR &
+ operator=( VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this =
+ *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR const *>(
+ &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR & setShaderSubgroupUniformControlFlow(
+ VULKAN_HPP_NAMESPACE::Bool32 shaderSubgroupUniformControlFlow_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderSubgroupUniformControlFlow = shaderSubgroupUniformControlFlow_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR *>( this );
+ }
+
+ operator VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( shaderSubgroupUniformControlFlow == rhs.shaderSubgroupUniformControlFlow );
+ }
+
+ bool operator!=( PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType =
+ StructureType::ePhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderSubgroupUniformControlFlow = {};
+ };
+ static_assert( sizeof( PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR ) ==
+ sizeof( VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR>
+ {
+ using Type = PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR;
+ };
+
+ struct PhysicalDeviceShaderTerminateInvocationFeaturesKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceShaderTerminateInvocationFeaturesKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderTerminateInvocationFeaturesKHR(
+ VULKAN_HPP_NAMESPACE::Bool32 shaderTerminateInvocation_ = {} ) VULKAN_HPP_NOEXCEPT
+ : shaderTerminateInvocation( shaderTerminateInvocation_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderTerminateInvocationFeaturesKHR(
+ PhysicalDeviceShaderTerminateInvocationFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceShaderTerminateInvocationFeaturesKHR(
+ VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceShaderTerminateInvocationFeaturesKHR(
+ *reinterpret_cast<PhysicalDeviceShaderTerminateInvocationFeaturesKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderTerminateInvocationFeaturesKHR &
+ operator=( PhysicalDeviceShaderTerminateInvocationFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceShaderTerminateInvocationFeaturesKHR &
+ operator=( VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this =
+ *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderTerminateInvocationFeaturesKHR const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceShaderTerminateInvocationFeaturesKHR & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceShaderTerminateInvocationFeaturesKHR &
+ setShaderTerminateInvocation( VULKAN_HPP_NAMESPACE::Bool32 shaderTerminateInvocation_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderTerminateInvocation = shaderTerminateInvocation_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR *>( this );
+ }
+
+ operator VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceShaderTerminateInvocationFeaturesKHR const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceShaderTerminateInvocationFeaturesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( shaderTerminateInvocation == rhs.shaderTerminateInvocation );
+ }
+
+ bool operator!=( PhysicalDeviceShaderTerminateInvocationFeaturesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceShaderTerminateInvocationFeaturesKHR;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderTerminateInvocation = {};
+ };
+ static_assert( sizeof( PhysicalDeviceShaderTerminateInvocationFeaturesKHR ) ==
+ sizeof( VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceShaderTerminateInvocationFeaturesKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceShaderTerminateInvocationFeaturesKHR>
+ {
+ using Type = PhysicalDeviceShaderTerminateInvocationFeaturesKHR;
+ };
+
+ struct PhysicalDeviceShadingRateImageFeaturesNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceShadingRateImageFeaturesNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceShadingRateImageFeaturesNV(
+ VULKAN_HPP_NAMESPACE::Bool32 shadingRateImage_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shadingRateCoarseSampleOrder_ = {} ) VULKAN_HPP_NOEXCEPT
+ : shadingRateImage( shadingRateImage_ )
+ , shadingRateCoarseSampleOrder( shadingRateCoarseSampleOrder_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceShadingRateImageFeaturesNV(
+ PhysicalDeviceShadingRateImageFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceShadingRateImageFeaturesNV( VkPhysicalDeviceShadingRateImageFeaturesNV const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceShadingRateImageFeaturesNV(
+ *reinterpret_cast<PhysicalDeviceShadingRateImageFeaturesNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShadingRateImageFeaturesNV &
+ operator=( PhysicalDeviceShadingRateImageFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceShadingRateImageFeaturesNV &
+ operator=( VkPhysicalDeviceShadingRateImageFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceShadingRateImageFeaturesNV const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceShadingRateImageFeaturesNV & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceShadingRateImageFeaturesNV &
+ setShadingRateImage( VULKAN_HPP_NAMESPACE::Bool32 shadingRateImage_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shadingRateImage = shadingRateImage_;
+ return *this;
+ }
+
+ PhysicalDeviceShadingRateImageFeaturesNV &
+ setShadingRateCoarseSampleOrder( VULKAN_HPP_NAMESPACE::Bool32 shadingRateCoarseSampleOrder_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shadingRateCoarseSampleOrder = shadingRateCoarseSampleOrder_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceShadingRateImageFeaturesNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceShadingRateImageFeaturesNV *>( this );
+ }
+
+ operator VkPhysicalDeviceShadingRateImageFeaturesNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceShadingRateImageFeaturesNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceShadingRateImageFeaturesNV const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceShadingRateImageFeaturesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( shadingRateImage == rhs.shadingRateImage ) &&
+ ( shadingRateCoarseSampleOrder == rhs.shadingRateCoarseSampleOrder );
+ }
+
+ bool operator!=( PhysicalDeviceShadingRateImageFeaturesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceShadingRateImageFeaturesNV;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shadingRateImage = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shadingRateCoarseSampleOrder = {};
+ };
+ static_assert( sizeof( PhysicalDeviceShadingRateImageFeaturesNV ) ==
+ sizeof( VkPhysicalDeviceShadingRateImageFeaturesNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceShadingRateImageFeaturesNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceShadingRateImageFeaturesNV>
+ {
+ using Type = PhysicalDeviceShadingRateImageFeaturesNV;
+ };
+
+ struct PhysicalDeviceShadingRateImagePropertiesNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceShadingRateImagePropertiesNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ PhysicalDeviceShadingRateImagePropertiesNV( VULKAN_HPP_NAMESPACE::Extent2D shadingRateTexelSize_ = {},
+ uint32_t shadingRatePaletteSize_ = {},
+ uint32_t shadingRateMaxCoarseSamples_ = {} ) VULKAN_HPP_NOEXCEPT
+ : shadingRateTexelSize( shadingRateTexelSize_ )
+ , shadingRatePaletteSize( shadingRatePaletteSize_ )
+ , shadingRateMaxCoarseSamples( shadingRateMaxCoarseSamples_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceShadingRateImagePropertiesNV(
+ PhysicalDeviceShadingRateImagePropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceShadingRateImagePropertiesNV( VkPhysicalDeviceShadingRateImagePropertiesNV const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceShadingRateImagePropertiesNV(
+ *reinterpret_cast<PhysicalDeviceShadingRateImagePropertiesNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShadingRateImagePropertiesNV &
+ operator=( PhysicalDeviceShadingRateImagePropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceShadingRateImagePropertiesNV &
+ operator=( VkPhysicalDeviceShadingRateImagePropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceShadingRateImagePropertiesNV const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDeviceShadingRateImagePropertiesNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceShadingRateImagePropertiesNV *>( this );
+ }
+
+ operator VkPhysicalDeviceShadingRateImagePropertiesNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceShadingRateImagePropertiesNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceShadingRateImagePropertiesNV const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceShadingRateImagePropertiesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( shadingRateTexelSize == rhs.shadingRateTexelSize ) &&
+ ( shadingRatePaletteSize == rhs.shadingRatePaletteSize ) &&
+ ( shadingRateMaxCoarseSamples == rhs.shadingRateMaxCoarseSamples );
+ }
+
+ bool operator!=( PhysicalDeviceShadingRateImagePropertiesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceShadingRateImagePropertiesNV;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Extent2D shadingRateTexelSize = {};
+ uint32_t shadingRatePaletteSize = {};
+ uint32_t shadingRateMaxCoarseSamples = {};
+ };
+ static_assert( sizeof( PhysicalDeviceShadingRateImagePropertiesNV ) ==
+ sizeof( VkPhysicalDeviceShadingRateImagePropertiesNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceShadingRateImagePropertiesNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceShadingRateImagePropertiesNV>
+ {
+ using Type = PhysicalDeviceShadingRateImagePropertiesNV;
+ };
+
+ struct PhysicalDeviceSparseImageFormatInfo2
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceSparseImageFormatInfo2;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceSparseImageFormatInfo2(
+ VULKAN_HPP_NAMESPACE::Format format_ = VULKAN_HPP_NAMESPACE::Format::eUndefined,
+ VULKAN_HPP_NAMESPACE::ImageType type_ = VULKAN_HPP_NAMESPACE::ImageType::e1D,
+ VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples_ = VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1,
+ VULKAN_HPP_NAMESPACE::ImageUsageFlags usage_ = {},
+ VULKAN_HPP_NAMESPACE::ImageTiling tiling_ = VULKAN_HPP_NAMESPACE::ImageTiling::eOptimal ) VULKAN_HPP_NOEXCEPT
+ : format( format_ )
+ , type( type_ )
+ , samples( samples_ )
+ , usage( usage_ )
+ , tiling( tiling_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceSparseImageFormatInfo2( PhysicalDeviceSparseImageFormatInfo2 const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceSparseImageFormatInfo2( VkPhysicalDeviceSparseImageFormatInfo2 const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceSparseImageFormatInfo2( *reinterpret_cast<PhysicalDeviceSparseImageFormatInfo2 const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceSparseImageFormatInfo2 &
+ operator=( PhysicalDeviceSparseImageFormatInfo2 const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceSparseImageFormatInfo2 &
+ operator=( VkPhysicalDeviceSparseImageFormatInfo2 const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceSparseImageFormatInfo2 const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceSparseImageFormatInfo2 & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceSparseImageFormatInfo2 & setFormat( VULKAN_HPP_NAMESPACE::Format format_ ) VULKAN_HPP_NOEXCEPT
+ {
+ format = format_;
+ return *this;
+ }
+
+ PhysicalDeviceSparseImageFormatInfo2 & setType( VULKAN_HPP_NAMESPACE::ImageType type_ ) VULKAN_HPP_NOEXCEPT
+ {
+ type = type_;
+ return *this;
+ }
+
+ PhysicalDeviceSparseImageFormatInfo2 &
+ setSamples( VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples_ ) VULKAN_HPP_NOEXCEPT
+ {
+ samples = samples_;
+ return *this;
+ }
+
+ PhysicalDeviceSparseImageFormatInfo2 & setUsage( VULKAN_HPP_NAMESPACE::ImageUsageFlags usage_ ) VULKAN_HPP_NOEXCEPT
+ {
+ usage = usage_;
+ return *this;
+ }
+
+ PhysicalDeviceSparseImageFormatInfo2 & setTiling( VULKAN_HPP_NAMESPACE::ImageTiling tiling_ ) VULKAN_HPP_NOEXCEPT
+ {
+ tiling = tiling_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceSparseImageFormatInfo2 const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceSparseImageFormatInfo2 *>( this );
+ }
+
+ operator VkPhysicalDeviceSparseImageFormatInfo2 &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceSparseImageFormatInfo2 *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceSparseImageFormatInfo2 const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceSparseImageFormatInfo2 const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( format == rhs.format ) && ( type == rhs.type ) &&
+ ( samples == rhs.samples ) && ( usage == rhs.usage ) && ( tiling == rhs.tiling );
+ }
+
+ bool operator!=( PhysicalDeviceSparseImageFormatInfo2 const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceSparseImageFormatInfo2;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Format format = VULKAN_HPP_NAMESPACE::Format::eUndefined;
+ VULKAN_HPP_NAMESPACE::ImageType type = VULKAN_HPP_NAMESPACE::ImageType::e1D;
+ VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples = VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1;
+ VULKAN_HPP_NAMESPACE::ImageUsageFlags usage = {};
+ VULKAN_HPP_NAMESPACE::ImageTiling tiling = VULKAN_HPP_NAMESPACE::ImageTiling::eOptimal;
+ };
+ static_assert( sizeof( PhysicalDeviceSparseImageFormatInfo2 ) == sizeof( VkPhysicalDeviceSparseImageFormatInfo2 ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceSparseImageFormatInfo2>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceSparseImageFormatInfo2>
+ {
+ using Type = PhysicalDeviceSparseImageFormatInfo2;
+ };
+ using PhysicalDeviceSparseImageFormatInfo2KHR = PhysicalDeviceSparseImageFormatInfo2;
+
+ struct PhysicalDeviceSubgroupProperties
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceSubgroupProperties;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceSubgroupProperties(
+ uint32_t subgroupSize_ = {},
+ VULKAN_HPP_NAMESPACE::ShaderStageFlags supportedStages_ = {},
+ VULKAN_HPP_NAMESPACE::SubgroupFeatureFlags supportedOperations_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 quadOperationsInAllStages_ = {} ) VULKAN_HPP_NOEXCEPT
+ : subgroupSize( subgroupSize_ )
+ , supportedStages( supportedStages_ )
+ , supportedOperations( supportedOperations_ )
+ , quadOperationsInAllStages( quadOperationsInAllStages_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ PhysicalDeviceSubgroupProperties( PhysicalDeviceSubgroupProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceSubgroupProperties( VkPhysicalDeviceSubgroupProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceSubgroupProperties( *reinterpret_cast<PhysicalDeviceSubgroupProperties const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceSubgroupProperties &
+ operator=( PhysicalDeviceSubgroupProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceSubgroupProperties & operator=( VkPhysicalDeviceSubgroupProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceSubgroupProperties const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDeviceSubgroupProperties const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceSubgroupProperties *>( this );
+ }
+
+ operator VkPhysicalDeviceSubgroupProperties &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceSubgroupProperties *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceSubgroupProperties const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceSubgroupProperties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( subgroupSize == rhs.subgroupSize ) &&
+ ( supportedStages == rhs.supportedStages ) && ( supportedOperations == rhs.supportedOperations ) &&
+ ( quadOperationsInAllStages == rhs.quadOperationsInAllStages );
+ }
+
+ bool operator!=( PhysicalDeviceSubgroupProperties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceSubgroupProperties;
+ void * pNext = {};
+ uint32_t subgroupSize = {};
+ VULKAN_HPP_NAMESPACE::ShaderStageFlags supportedStages = {};
+ VULKAN_HPP_NAMESPACE::SubgroupFeatureFlags supportedOperations = {};
+ VULKAN_HPP_NAMESPACE::Bool32 quadOperationsInAllStages = {};
+ };
+ static_assert( sizeof( PhysicalDeviceSubgroupProperties ) == sizeof( VkPhysicalDeviceSubgroupProperties ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceSubgroupProperties>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceSubgroupProperties>
+ {
+ using Type = PhysicalDeviceSubgroupProperties;
+ };
+
+ struct PhysicalDeviceSubgroupSizeControlFeaturesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceSubgroupSizeControlFeaturesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceSubgroupSizeControlFeaturesEXT(
+ VULKAN_HPP_NAMESPACE::Bool32 subgroupSizeControl_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 computeFullSubgroups_ = {} ) VULKAN_HPP_NOEXCEPT
+ : subgroupSizeControl( subgroupSizeControl_ )
+ , computeFullSubgroups( computeFullSubgroups_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceSubgroupSizeControlFeaturesEXT(
+ PhysicalDeviceSubgroupSizeControlFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceSubgroupSizeControlFeaturesEXT( VkPhysicalDeviceSubgroupSizeControlFeaturesEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceSubgroupSizeControlFeaturesEXT(
+ *reinterpret_cast<PhysicalDeviceSubgroupSizeControlFeaturesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceSubgroupSizeControlFeaturesEXT &
+ operator=( PhysicalDeviceSubgroupSizeControlFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceSubgroupSizeControlFeaturesEXT &
+ operator=( VkPhysicalDeviceSubgroupSizeControlFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceSubgroupSizeControlFeaturesEXT const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceSubgroupSizeControlFeaturesEXT & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceSubgroupSizeControlFeaturesEXT &
+ setSubgroupSizeControl( VULKAN_HPP_NAMESPACE::Bool32 subgroupSizeControl_ ) VULKAN_HPP_NOEXCEPT
+ {
+ subgroupSizeControl = subgroupSizeControl_;
+ return *this;
+ }
+
+ PhysicalDeviceSubgroupSizeControlFeaturesEXT &
+ setComputeFullSubgroups( VULKAN_HPP_NAMESPACE::Bool32 computeFullSubgroups_ ) VULKAN_HPP_NOEXCEPT
+ {
+ computeFullSubgroups = computeFullSubgroups_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceSubgroupSizeControlFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceSubgroupSizeControlFeaturesEXT *>( this );
+ }
+
+ operator VkPhysicalDeviceSubgroupSizeControlFeaturesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceSubgroupSizeControlFeaturesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceSubgroupSizeControlFeaturesEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceSubgroupSizeControlFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( subgroupSizeControl == rhs.subgroupSizeControl ) &&
+ ( computeFullSubgroups == rhs.computeFullSubgroups );
+ }
+
+ bool operator!=( PhysicalDeviceSubgroupSizeControlFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceSubgroupSizeControlFeaturesEXT;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 subgroupSizeControl = {};
+ VULKAN_HPP_NAMESPACE::Bool32 computeFullSubgroups = {};
+ };
+ static_assert( sizeof( PhysicalDeviceSubgroupSizeControlFeaturesEXT ) ==
+ sizeof( VkPhysicalDeviceSubgroupSizeControlFeaturesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceSubgroupSizeControlFeaturesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceSubgroupSizeControlFeaturesEXT>
+ {
+ using Type = PhysicalDeviceSubgroupSizeControlFeaturesEXT;
+ };
+
+ struct PhysicalDeviceSubgroupSizeControlPropertiesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceSubgroupSizeControlPropertiesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceSubgroupSizeControlPropertiesEXT(
+ uint32_t minSubgroupSize_ = {},
+ uint32_t maxSubgroupSize_ = {},
+ uint32_t maxComputeWorkgroupSubgroups_ = {},
+ VULKAN_HPP_NAMESPACE::ShaderStageFlags requiredSubgroupSizeStages_ = {} ) VULKAN_HPP_NOEXCEPT
+ : minSubgroupSize( minSubgroupSize_ )
+ , maxSubgroupSize( maxSubgroupSize_ )
+ , maxComputeWorkgroupSubgroups( maxComputeWorkgroupSubgroups_ )
+ , requiredSubgroupSizeStages( requiredSubgroupSizeStages_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceSubgroupSizeControlPropertiesEXT(
+ PhysicalDeviceSubgroupSizeControlPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceSubgroupSizeControlPropertiesEXT( VkPhysicalDeviceSubgroupSizeControlPropertiesEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceSubgroupSizeControlPropertiesEXT(
+ *reinterpret_cast<PhysicalDeviceSubgroupSizeControlPropertiesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceSubgroupSizeControlPropertiesEXT &
+ operator=( PhysicalDeviceSubgroupSizeControlPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceSubgroupSizeControlPropertiesEXT &
+ operator=( VkPhysicalDeviceSubgroupSizeControlPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceSubgroupSizeControlPropertiesEXT const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDeviceSubgroupSizeControlPropertiesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceSubgroupSizeControlPropertiesEXT *>( this );
+ }
+
+ operator VkPhysicalDeviceSubgroupSizeControlPropertiesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceSubgroupSizeControlPropertiesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceSubgroupSizeControlPropertiesEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceSubgroupSizeControlPropertiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( minSubgroupSize == rhs.minSubgroupSize ) &&
+ ( maxSubgroupSize == rhs.maxSubgroupSize ) &&
+ ( maxComputeWorkgroupSubgroups == rhs.maxComputeWorkgroupSubgroups ) &&
+ ( requiredSubgroupSizeStages == rhs.requiredSubgroupSizeStages );
+ }
+
+ bool operator!=( PhysicalDeviceSubgroupSizeControlPropertiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceSubgroupSizeControlPropertiesEXT;
+ void * pNext = {};
+ uint32_t minSubgroupSize = {};
+ uint32_t maxSubgroupSize = {};
+ uint32_t maxComputeWorkgroupSubgroups = {};
+ VULKAN_HPP_NAMESPACE::ShaderStageFlags requiredSubgroupSizeStages = {};
+ };
+ static_assert( sizeof( PhysicalDeviceSubgroupSizeControlPropertiesEXT ) ==
+ sizeof( VkPhysicalDeviceSubgroupSizeControlPropertiesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceSubgroupSizeControlPropertiesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceSubgroupSizeControlPropertiesEXT>
+ {
+ using Type = PhysicalDeviceSubgroupSizeControlPropertiesEXT;
+ };
+
+ struct PhysicalDeviceSubpassShadingFeaturesHUAWEI
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceSubpassShadingFeaturesHUAWEI;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceSubpassShadingFeaturesHUAWEI( VULKAN_HPP_NAMESPACE::Bool32 subpassShading_ = {} )
+ VULKAN_HPP_NOEXCEPT : subpassShading( subpassShading_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceSubpassShadingFeaturesHUAWEI(
+ PhysicalDeviceSubpassShadingFeaturesHUAWEI const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceSubpassShadingFeaturesHUAWEI( VkPhysicalDeviceSubpassShadingFeaturesHUAWEI const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceSubpassShadingFeaturesHUAWEI(
+ *reinterpret_cast<PhysicalDeviceSubpassShadingFeaturesHUAWEI const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceSubpassShadingFeaturesHUAWEI &
+ operator=( PhysicalDeviceSubpassShadingFeaturesHUAWEI const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceSubpassShadingFeaturesHUAWEI &
+ operator=( VkPhysicalDeviceSubpassShadingFeaturesHUAWEI const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceSubpassShadingFeaturesHUAWEI const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceSubpassShadingFeaturesHUAWEI & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceSubpassShadingFeaturesHUAWEI &
+ setSubpassShading( VULKAN_HPP_NAMESPACE::Bool32 subpassShading_ ) VULKAN_HPP_NOEXCEPT
+ {
+ subpassShading = subpassShading_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceSubpassShadingFeaturesHUAWEI const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceSubpassShadingFeaturesHUAWEI *>( this );
+ }
+
+ operator VkPhysicalDeviceSubpassShadingFeaturesHUAWEI &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceSubpassShadingFeaturesHUAWEI *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceSubpassShadingFeaturesHUAWEI const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceSubpassShadingFeaturesHUAWEI const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( subpassShading == rhs.subpassShading );
+ }
+
+ bool operator!=( PhysicalDeviceSubpassShadingFeaturesHUAWEI const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceSubpassShadingFeaturesHUAWEI;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 subpassShading = {};
+ };
+ static_assert( sizeof( PhysicalDeviceSubpassShadingFeaturesHUAWEI ) ==
+ sizeof( VkPhysicalDeviceSubpassShadingFeaturesHUAWEI ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceSubpassShadingFeaturesHUAWEI>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceSubpassShadingFeaturesHUAWEI>
+ {
+ using Type = PhysicalDeviceSubpassShadingFeaturesHUAWEI;
+ };
+
+ struct PhysicalDeviceSubpassShadingPropertiesHUAWEI
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceSubpassShadingPropertiesHUAWEI;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceSubpassShadingPropertiesHUAWEI(
+ uint32_t maxSubpassShadingWorkgroupSizeAspectRatio_ = {} ) VULKAN_HPP_NOEXCEPT
+ : maxSubpassShadingWorkgroupSizeAspectRatio( maxSubpassShadingWorkgroupSizeAspectRatio_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceSubpassShadingPropertiesHUAWEI(
+ PhysicalDeviceSubpassShadingPropertiesHUAWEI const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceSubpassShadingPropertiesHUAWEI( VkPhysicalDeviceSubpassShadingPropertiesHUAWEI const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceSubpassShadingPropertiesHUAWEI(
+ *reinterpret_cast<PhysicalDeviceSubpassShadingPropertiesHUAWEI const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceSubpassShadingPropertiesHUAWEI &
+ operator=( PhysicalDeviceSubpassShadingPropertiesHUAWEI const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceSubpassShadingPropertiesHUAWEI &
+ operator=( VkPhysicalDeviceSubpassShadingPropertiesHUAWEI const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceSubpassShadingPropertiesHUAWEI const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDeviceSubpassShadingPropertiesHUAWEI const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceSubpassShadingPropertiesHUAWEI *>( this );
+ }
+
+ operator VkPhysicalDeviceSubpassShadingPropertiesHUAWEI &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceSubpassShadingPropertiesHUAWEI *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceSubpassShadingPropertiesHUAWEI const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceSubpassShadingPropertiesHUAWEI const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( maxSubpassShadingWorkgroupSizeAspectRatio == rhs.maxSubpassShadingWorkgroupSizeAspectRatio );
+ }
+
+ bool operator!=( PhysicalDeviceSubpassShadingPropertiesHUAWEI const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceSubpassShadingPropertiesHUAWEI;
+ void * pNext = {};
+ uint32_t maxSubpassShadingWorkgroupSizeAspectRatio = {};
+ };
+ static_assert( sizeof( PhysicalDeviceSubpassShadingPropertiesHUAWEI ) ==
+ sizeof( VkPhysicalDeviceSubpassShadingPropertiesHUAWEI ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceSubpassShadingPropertiesHUAWEI>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceSubpassShadingPropertiesHUAWEI>
+ {
+ using Type = PhysicalDeviceSubpassShadingPropertiesHUAWEI;
+ };
+
+ struct PhysicalDeviceSurfaceInfo2KHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceSurfaceInfo2KHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ PhysicalDeviceSurfaceInfo2KHR( VULKAN_HPP_NAMESPACE::SurfaceKHR surface_ = {} ) VULKAN_HPP_NOEXCEPT
+ : surface( surface_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ PhysicalDeviceSurfaceInfo2KHR( PhysicalDeviceSurfaceInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceSurfaceInfo2KHR( VkPhysicalDeviceSurfaceInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceSurfaceInfo2KHR( *reinterpret_cast<PhysicalDeviceSurfaceInfo2KHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceSurfaceInfo2KHR &
+ operator=( PhysicalDeviceSurfaceInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceSurfaceInfo2KHR & operator=( VkPhysicalDeviceSurfaceInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceSurfaceInfo2KHR const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceSurfaceInfo2KHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceSurfaceInfo2KHR & setSurface( VULKAN_HPP_NAMESPACE::SurfaceKHR surface_ ) VULKAN_HPP_NOEXCEPT
+ {
+ surface = surface_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceSurfaceInfo2KHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceSurfaceInfo2KHR *>( this );
+ }
+
+ operator VkPhysicalDeviceSurfaceInfo2KHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceSurfaceInfo2KHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceSurfaceInfo2KHR const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceSurfaceInfo2KHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( surface == rhs.surface );
+ }
+
+ bool operator!=( PhysicalDeviceSurfaceInfo2KHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceSurfaceInfo2KHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::SurfaceKHR surface = {};
+ };
+ static_assert( sizeof( PhysicalDeviceSurfaceInfo2KHR ) == sizeof( VkPhysicalDeviceSurfaceInfo2KHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceSurfaceInfo2KHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceSurfaceInfo2KHR>
+ {
+ using Type = PhysicalDeviceSurfaceInfo2KHR;
+ };
+
+ struct PhysicalDeviceSynchronization2FeaturesKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceSynchronization2FeaturesKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceSynchronization2FeaturesKHR(
+ VULKAN_HPP_NAMESPACE::Bool32 synchronization2_ = {} ) VULKAN_HPP_NOEXCEPT : synchronization2( synchronization2_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceSynchronization2FeaturesKHR(
+ PhysicalDeviceSynchronization2FeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceSynchronization2FeaturesKHR( VkPhysicalDeviceSynchronization2FeaturesKHR const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceSynchronization2FeaturesKHR(
+ *reinterpret_cast<PhysicalDeviceSynchronization2FeaturesKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceSynchronization2FeaturesKHR &
+ operator=( PhysicalDeviceSynchronization2FeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceSynchronization2FeaturesKHR &
+ operator=( VkPhysicalDeviceSynchronization2FeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceSynchronization2FeaturesKHR const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceSynchronization2FeaturesKHR & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceSynchronization2FeaturesKHR &
+ setSynchronization2( VULKAN_HPP_NAMESPACE::Bool32 synchronization2_ ) VULKAN_HPP_NOEXCEPT
+ {
+ synchronization2 = synchronization2_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceSynchronization2FeaturesKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceSynchronization2FeaturesKHR *>( this );
+ }
+
+ operator VkPhysicalDeviceSynchronization2FeaturesKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceSynchronization2FeaturesKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceSynchronization2FeaturesKHR const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceSynchronization2FeaturesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( synchronization2 == rhs.synchronization2 );
+ }
+
+ bool operator!=( PhysicalDeviceSynchronization2FeaturesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceSynchronization2FeaturesKHR;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 synchronization2 = {};
+ };
+ static_assert( sizeof( PhysicalDeviceSynchronization2FeaturesKHR ) ==
+ sizeof( VkPhysicalDeviceSynchronization2FeaturesKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceSynchronization2FeaturesKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceSynchronization2FeaturesKHR>
+ {
+ using Type = PhysicalDeviceSynchronization2FeaturesKHR;
+ };
+
+ struct PhysicalDeviceTexelBufferAlignmentFeaturesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceTexelBufferAlignmentFeaturesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceTexelBufferAlignmentFeaturesEXT(
+ VULKAN_HPP_NAMESPACE::Bool32 texelBufferAlignment_ = {} ) VULKAN_HPP_NOEXCEPT
+ : texelBufferAlignment( texelBufferAlignment_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceTexelBufferAlignmentFeaturesEXT(
+ PhysicalDeviceTexelBufferAlignmentFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceTexelBufferAlignmentFeaturesEXT( VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceTexelBufferAlignmentFeaturesEXT(
+ *reinterpret_cast<PhysicalDeviceTexelBufferAlignmentFeaturesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceTexelBufferAlignmentFeaturesEXT &
+ operator=( PhysicalDeviceTexelBufferAlignmentFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceTexelBufferAlignmentFeaturesEXT &
+ operator=( VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceTexelBufferAlignmentFeaturesEXT const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceTexelBufferAlignmentFeaturesEXT & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceTexelBufferAlignmentFeaturesEXT &
+ setTexelBufferAlignment( VULKAN_HPP_NAMESPACE::Bool32 texelBufferAlignment_ ) VULKAN_HPP_NOEXCEPT
+ {
+ texelBufferAlignment = texelBufferAlignment_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT *>( this );
+ }
+
+ operator VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceTexelBufferAlignmentFeaturesEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceTexelBufferAlignmentFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( texelBufferAlignment == rhs.texelBufferAlignment );
+ }
+
+ bool operator!=( PhysicalDeviceTexelBufferAlignmentFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceTexelBufferAlignmentFeaturesEXT;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 texelBufferAlignment = {};
+ };
+ static_assert( sizeof( PhysicalDeviceTexelBufferAlignmentFeaturesEXT ) ==
+ sizeof( VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceTexelBufferAlignmentFeaturesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceTexelBufferAlignmentFeaturesEXT>
+ {
+ using Type = PhysicalDeviceTexelBufferAlignmentFeaturesEXT;
+ };
+
+ struct PhysicalDeviceTexelBufferAlignmentPropertiesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceTexelBufferAlignmentPropertiesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceTexelBufferAlignmentPropertiesEXT(
+ VULKAN_HPP_NAMESPACE::DeviceSize storageTexelBufferOffsetAlignmentBytes_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 storageTexelBufferOffsetSingleTexelAlignment_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize uniformTexelBufferOffsetAlignmentBytes_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 uniformTexelBufferOffsetSingleTexelAlignment_ = {} ) VULKAN_HPP_NOEXCEPT
+ : storageTexelBufferOffsetAlignmentBytes( storageTexelBufferOffsetAlignmentBytes_ )
+ , storageTexelBufferOffsetSingleTexelAlignment( storageTexelBufferOffsetSingleTexelAlignment_ )
+ , uniformTexelBufferOffsetAlignmentBytes( uniformTexelBufferOffsetAlignmentBytes_ )
+ , uniformTexelBufferOffsetSingleTexelAlignment( uniformTexelBufferOffsetSingleTexelAlignment_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceTexelBufferAlignmentPropertiesEXT(
+ PhysicalDeviceTexelBufferAlignmentPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceTexelBufferAlignmentPropertiesEXT( VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceTexelBufferAlignmentPropertiesEXT(
+ *reinterpret_cast<PhysicalDeviceTexelBufferAlignmentPropertiesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceTexelBufferAlignmentPropertiesEXT &
+ operator=( PhysicalDeviceTexelBufferAlignmentPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceTexelBufferAlignmentPropertiesEXT &
+ operator=( VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceTexelBufferAlignmentPropertiesEXT const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT *>( this );
+ }
+
+ operator VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceTexelBufferAlignmentPropertiesEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceTexelBufferAlignmentPropertiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( storageTexelBufferOffsetAlignmentBytes == rhs.storageTexelBufferOffsetAlignmentBytes ) &&
+ ( storageTexelBufferOffsetSingleTexelAlignment == rhs.storageTexelBufferOffsetSingleTexelAlignment ) &&
+ ( uniformTexelBufferOffsetAlignmentBytes == rhs.uniformTexelBufferOffsetAlignmentBytes ) &&
+ ( uniformTexelBufferOffsetSingleTexelAlignment == rhs.uniformTexelBufferOffsetSingleTexelAlignment );
+ }
+
+ bool operator!=( PhysicalDeviceTexelBufferAlignmentPropertiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceTexelBufferAlignmentPropertiesEXT;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize storageTexelBufferOffsetAlignmentBytes = {};
+ VULKAN_HPP_NAMESPACE::Bool32 storageTexelBufferOffsetSingleTexelAlignment = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize uniformTexelBufferOffsetAlignmentBytes = {};
+ VULKAN_HPP_NAMESPACE::Bool32 uniformTexelBufferOffsetSingleTexelAlignment = {};
+ };
+ static_assert( sizeof( PhysicalDeviceTexelBufferAlignmentPropertiesEXT ) ==
+ sizeof( VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceTexelBufferAlignmentPropertiesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceTexelBufferAlignmentPropertiesEXT>
+ {
+ using Type = PhysicalDeviceTexelBufferAlignmentPropertiesEXT;
+ };
+
+ struct PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceTextureCompressionAstcHdrFeaturesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT(
+ VULKAN_HPP_NAMESPACE::Bool32 textureCompressionASTC_HDR_ = {} ) VULKAN_HPP_NOEXCEPT
+ : textureCompressionASTC_HDR( textureCompressionASTC_HDR_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT(
+ PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT(
+ VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT(
+ *reinterpret_cast<PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT &
+ operator=( PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT &
+ operator=( VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this =
+ *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT &
+ setTextureCompressionASTC_HDR( VULKAN_HPP_NAMESPACE::Bool32 textureCompressionASTC_HDR_ ) VULKAN_HPP_NOEXCEPT
+ {
+ textureCompressionASTC_HDR = textureCompressionASTC_HDR_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT *>( this );
+ }
+
+ operator VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( textureCompressionASTC_HDR == rhs.textureCompressionASTC_HDR );
+ }
+
+ bool operator!=( PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceTextureCompressionAstcHdrFeaturesEXT;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 textureCompressionASTC_HDR = {};
+ };
+ static_assert( sizeof( PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT ) ==
+ sizeof( VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceTextureCompressionAstcHdrFeaturesEXT>
+ {
+ using Type = PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT;
+ };
+
+ struct PhysicalDeviceTimelineSemaphoreFeatures
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceTimelineSemaphoreFeatures;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceTimelineSemaphoreFeatures( VULKAN_HPP_NAMESPACE::Bool32 timelineSemaphore_ = {} )
+ VULKAN_HPP_NOEXCEPT : timelineSemaphore( timelineSemaphore_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceTimelineSemaphoreFeatures( PhysicalDeviceTimelineSemaphoreFeatures const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceTimelineSemaphoreFeatures( VkPhysicalDeviceTimelineSemaphoreFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceTimelineSemaphoreFeatures(
+ *reinterpret_cast<PhysicalDeviceTimelineSemaphoreFeatures const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceTimelineSemaphoreFeatures &
+ operator=( PhysicalDeviceTimelineSemaphoreFeatures const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceTimelineSemaphoreFeatures &
+ operator=( VkPhysicalDeviceTimelineSemaphoreFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceTimelineSemaphoreFeatures const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceTimelineSemaphoreFeatures & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceTimelineSemaphoreFeatures &
+ setTimelineSemaphore( VULKAN_HPP_NAMESPACE::Bool32 timelineSemaphore_ ) VULKAN_HPP_NOEXCEPT
+ {
+ timelineSemaphore = timelineSemaphore_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceTimelineSemaphoreFeatures const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceTimelineSemaphoreFeatures *>( this );
+ }
+
+ operator VkPhysicalDeviceTimelineSemaphoreFeatures &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceTimelineSemaphoreFeatures *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceTimelineSemaphoreFeatures const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceTimelineSemaphoreFeatures const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( timelineSemaphore == rhs.timelineSemaphore );
+ }
+
+ bool operator!=( PhysicalDeviceTimelineSemaphoreFeatures const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceTimelineSemaphoreFeatures;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 timelineSemaphore = {};
+ };
+ static_assert( sizeof( PhysicalDeviceTimelineSemaphoreFeatures ) ==
+ sizeof( VkPhysicalDeviceTimelineSemaphoreFeatures ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceTimelineSemaphoreFeatures>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceTimelineSemaphoreFeatures>
+ {
+ using Type = PhysicalDeviceTimelineSemaphoreFeatures;
+ };
+ using PhysicalDeviceTimelineSemaphoreFeaturesKHR = PhysicalDeviceTimelineSemaphoreFeatures;
+
+ struct PhysicalDeviceTimelineSemaphoreProperties
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceTimelineSemaphoreProperties;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceTimelineSemaphoreProperties( uint64_t maxTimelineSemaphoreValueDifference_ = {} )
+ VULKAN_HPP_NOEXCEPT : maxTimelineSemaphoreValueDifference( maxTimelineSemaphoreValueDifference_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceTimelineSemaphoreProperties(
+ PhysicalDeviceTimelineSemaphoreProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceTimelineSemaphoreProperties( VkPhysicalDeviceTimelineSemaphoreProperties const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceTimelineSemaphoreProperties(
+ *reinterpret_cast<PhysicalDeviceTimelineSemaphoreProperties const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceTimelineSemaphoreProperties &
+ operator=( PhysicalDeviceTimelineSemaphoreProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceTimelineSemaphoreProperties &
+ operator=( VkPhysicalDeviceTimelineSemaphoreProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceTimelineSemaphoreProperties const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDeviceTimelineSemaphoreProperties const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceTimelineSemaphoreProperties *>( this );
+ }
+
+ operator VkPhysicalDeviceTimelineSemaphoreProperties &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceTimelineSemaphoreProperties *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceTimelineSemaphoreProperties const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceTimelineSemaphoreProperties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( maxTimelineSemaphoreValueDifference == rhs.maxTimelineSemaphoreValueDifference );
+ }
+
+ bool operator!=( PhysicalDeviceTimelineSemaphoreProperties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceTimelineSemaphoreProperties;
+ void * pNext = {};
+ uint64_t maxTimelineSemaphoreValueDifference = {};
+ };
+ static_assert( sizeof( PhysicalDeviceTimelineSemaphoreProperties ) ==
+ sizeof( VkPhysicalDeviceTimelineSemaphoreProperties ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceTimelineSemaphoreProperties>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceTimelineSemaphoreProperties>
+ {
+ using Type = PhysicalDeviceTimelineSemaphoreProperties;
+ };
+ using PhysicalDeviceTimelineSemaphorePropertiesKHR = PhysicalDeviceTimelineSemaphoreProperties;
+
+ struct PhysicalDeviceToolPropertiesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceToolPropertiesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceToolPropertiesEXT(
+ std::array<char, VK_MAX_EXTENSION_NAME_SIZE> const & name_ = {},
+ std::array<char, VK_MAX_EXTENSION_NAME_SIZE> const & version_ = {},
+ VULKAN_HPP_NAMESPACE::ToolPurposeFlagsEXT purposes_ = {},
+ std::array<char, VK_MAX_DESCRIPTION_SIZE> const & description_ = {},
+ std::array<char, VK_MAX_EXTENSION_NAME_SIZE> const & layer_ = {} ) VULKAN_HPP_NOEXCEPT
+ : name( name_ )
+ , version( version_ )
+ , purposes( purposes_ )
+ , description( description_ )
+ , layer( layer_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR_14
+ PhysicalDeviceToolPropertiesEXT( PhysicalDeviceToolPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceToolPropertiesEXT( VkPhysicalDeviceToolPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceToolPropertiesEXT( *reinterpret_cast<PhysicalDeviceToolPropertiesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceToolPropertiesEXT &
+ operator=( PhysicalDeviceToolPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceToolPropertiesEXT & operator=( VkPhysicalDeviceToolPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceToolPropertiesEXT const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDeviceToolPropertiesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceToolPropertiesEXT *>( this );
+ }
+
+ operator VkPhysicalDeviceToolPropertiesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceToolPropertiesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceToolPropertiesEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceToolPropertiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( name == rhs.name ) && ( version == rhs.version ) &&
+ ( purposes == rhs.purposes ) && ( description == rhs.description ) && ( layer == rhs.layer );
+ }
+
+ bool operator!=( PhysicalDeviceToolPropertiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceToolPropertiesEXT;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_EXTENSION_NAME_SIZE> name = {};
+ VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_EXTENSION_NAME_SIZE> version = {};
+ VULKAN_HPP_NAMESPACE::ToolPurposeFlagsEXT purposes = {};
+ VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DESCRIPTION_SIZE> description = {};
+ VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_EXTENSION_NAME_SIZE> layer = {};
+ };
+ static_assert( sizeof( PhysicalDeviceToolPropertiesEXT ) == sizeof( VkPhysicalDeviceToolPropertiesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceToolPropertiesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceToolPropertiesEXT>
+ {
+ using Type = PhysicalDeviceToolPropertiesEXT;
+ };
+
+ struct PhysicalDeviceTransformFeedbackFeaturesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceTransformFeedbackFeaturesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceTransformFeedbackFeaturesEXT(
+ VULKAN_HPP_NAMESPACE::Bool32 transformFeedback_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 geometryStreams_ = {} ) VULKAN_HPP_NOEXCEPT
+ : transformFeedback( transformFeedback_ )
+ , geometryStreams( geometryStreams_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceTransformFeedbackFeaturesEXT(
+ PhysicalDeviceTransformFeedbackFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceTransformFeedbackFeaturesEXT( VkPhysicalDeviceTransformFeedbackFeaturesEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceTransformFeedbackFeaturesEXT(
+ *reinterpret_cast<PhysicalDeviceTransformFeedbackFeaturesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceTransformFeedbackFeaturesEXT &
+ operator=( PhysicalDeviceTransformFeedbackFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceTransformFeedbackFeaturesEXT &
+ operator=( VkPhysicalDeviceTransformFeedbackFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceTransformFeedbackFeaturesEXT const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceTransformFeedbackFeaturesEXT & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceTransformFeedbackFeaturesEXT &
+ setTransformFeedback( VULKAN_HPP_NAMESPACE::Bool32 transformFeedback_ ) VULKAN_HPP_NOEXCEPT
+ {
+ transformFeedback = transformFeedback_;
+ return *this;
+ }
+
+ PhysicalDeviceTransformFeedbackFeaturesEXT &
+ setGeometryStreams( VULKAN_HPP_NAMESPACE::Bool32 geometryStreams_ ) VULKAN_HPP_NOEXCEPT
+ {
+ geometryStreams = geometryStreams_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceTransformFeedbackFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceTransformFeedbackFeaturesEXT *>( this );
+ }
+
+ operator VkPhysicalDeviceTransformFeedbackFeaturesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceTransformFeedbackFeaturesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceTransformFeedbackFeaturesEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceTransformFeedbackFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( transformFeedback == rhs.transformFeedback ) &&
+ ( geometryStreams == rhs.geometryStreams );
+ }
+
+ bool operator!=( PhysicalDeviceTransformFeedbackFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceTransformFeedbackFeaturesEXT;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 transformFeedback = {};
+ VULKAN_HPP_NAMESPACE::Bool32 geometryStreams = {};
+ };
+ static_assert( sizeof( PhysicalDeviceTransformFeedbackFeaturesEXT ) ==
+ sizeof( VkPhysicalDeviceTransformFeedbackFeaturesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceTransformFeedbackFeaturesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceTransformFeedbackFeaturesEXT>
+ {
+ using Type = PhysicalDeviceTransformFeedbackFeaturesEXT;
+ };
+
+ struct PhysicalDeviceTransformFeedbackPropertiesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceTransformFeedbackPropertiesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceTransformFeedbackPropertiesEXT(
+ uint32_t maxTransformFeedbackStreams_ = {},
+ uint32_t maxTransformFeedbackBuffers_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize maxTransformFeedbackBufferSize_ = {},
+ uint32_t maxTransformFeedbackStreamDataSize_ = {},
+ uint32_t maxTransformFeedbackBufferDataSize_ = {},
+ uint32_t maxTransformFeedbackBufferDataStride_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 transformFeedbackQueries_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 transformFeedbackStreamsLinesTriangles_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 transformFeedbackRasterizationStreamSelect_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 transformFeedbackDraw_ = {} ) VULKAN_HPP_NOEXCEPT
+ : maxTransformFeedbackStreams( maxTransformFeedbackStreams_ )
+ , maxTransformFeedbackBuffers( maxTransformFeedbackBuffers_ )
+ , maxTransformFeedbackBufferSize( maxTransformFeedbackBufferSize_ )
+ , maxTransformFeedbackStreamDataSize( maxTransformFeedbackStreamDataSize_ )
+ , maxTransformFeedbackBufferDataSize( maxTransformFeedbackBufferDataSize_ )
+ , maxTransformFeedbackBufferDataStride( maxTransformFeedbackBufferDataStride_ )
+ , transformFeedbackQueries( transformFeedbackQueries_ )
+ , transformFeedbackStreamsLinesTriangles( transformFeedbackStreamsLinesTriangles_ )
+ , transformFeedbackRasterizationStreamSelect( transformFeedbackRasterizationStreamSelect_ )
+ , transformFeedbackDraw( transformFeedbackDraw_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceTransformFeedbackPropertiesEXT(
+ PhysicalDeviceTransformFeedbackPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceTransformFeedbackPropertiesEXT( VkPhysicalDeviceTransformFeedbackPropertiesEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceTransformFeedbackPropertiesEXT(
+ *reinterpret_cast<PhysicalDeviceTransformFeedbackPropertiesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceTransformFeedbackPropertiesEXT &
+ operator=( PhysicalDeviceTransformFeedbackPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceTransformFeedbackPropertiesEXT &
+ operator=( VkPhysicalDeviceTransformFeedbackPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceTransformFeedbackPropertiesEXT const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDeviceTransformFeedbackPropertiesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceTransformFeedbackPropertiesEXT *>( this );
+ }
+
+ operator VkPhysicalDeviceTransformFeedbackPropertiesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceTransformFeedbackPropertiesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceTransformFeedbackPropertiesEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceTransformFeedbackPropertiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( maxTransformFeedbackStreams == rhs.maxTransformFeedbackStreams ) &&
+ ( maxTransformFeedbackBuffers == rhs.maxTransformFeedbackBuffers ) &&
+ ( maxTransformFeedbackBufferSize == rhs.maxTransformFeedbackBufferSize ) &&
+ ( maxTransformFeedbackStreamDataSize == rhs.maxTransformFeedbackStreamDataSize ) &&
+ ( maxTransformFeedbackBufferDataSize == rhs.maxTransformFeedbackBufferDataSize ) &&
+ ( maxTransformFeedbackBufferDataStride == rhs.maxTransformFeedbackBufferDataStride ) &&
+ ( transformFeedbackQueries == rhs.transformFeedbackQueries ) &&
+ ( transformFeedbackStreamsLinesTriangles == rhs.transformFeedbackStreamsLinesTriangles ) &&
+ ( transformFeedbackRasterizationStreamSelect == rhs.transformFeedbackRasterizationStreamSelect ) &&
+ ( transformFeedbackDraw == rhs.transformFeedbackDraw );
+ }
+
+ bool operator!=( PhysicalDeviceTransformFeedbackPropertiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceTransformFeedbackPropertiesEXT;
+ void * pNext = {};
+ uint32_t maxTransformFeedbackStreams = {};
+ uint32_t maxTransformFeedbackBuffers = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize maxTransformFeedbackBufferSize = {};
+ uint32_t maxTransformFeedbackStreamDataSize = {};
+ uint32_t maxTransformFeedbackBufferDataSize = {};
+ uint32_t maxTransformFeedbackBufferDataStride = {};
+ VULKAN_HPP_NAMESPACE::Bool32 transformFeedbackQueries = {};
+ VULKAN_HPP_NAMESPACE::Bool32 transformFeedbackStreamsLinesTriangles = {};
+ VULKAN_HPP_NAMESPACE::Bool32 transformFeedbackRasterizationStreamSelect = {};
+ VULKAN_HPP_NAMESPACE::Bool32 transformFeedbackDraw = {};
+ };
+ static_assert( sizeof( PhysicalDeviceTransformFeedbackPropertiesEXT ) ==
+ sizeof( VkPhysicalDeviceTransformFeedbackPropertiesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceTransformFeedbackPropertiesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceTransformFeedbackPropertiesEXT>
+ {
+ using Type = PhysicalDeviceTransformFeedbackPropertiesEXT;
+ };
+
+ struct PhysicalDeviceUniformBufferStandardLayoutFeatures
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceUniformBufferStandardLayoutFeatures;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceUniformBufferStandardLayoutFeatures(
+ VULKAN_HPP_NAMESPACE::Bool32 uniformBufferStandardLayout_ = {} ) VULKAN_HPP_NOEXCEPT
+ : uniformBufferStandardLayout( uniformBufferStandardLayout_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceUniformBufferStandardLayoutFeatures(
+ PhysicalDeviceUniformBufferStandardLayoutFeatures const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceUniformBufferStandardLayoutFeatures( VkPhysicalDeviceUniformBufferStandardLayoutFeatures const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceUniformBufferStandardLayoutFeatures(
+ *reinterpret_cast<PhysicalDeviceUniformBufferStandardLayoutFeatures const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceUniformBufferStandardLayoutFeatures &
+ operator=( PhysicalDeviceUniformBufferStandardLayoutFeatures const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceUniformBufferStandardLayoutFeatures &
+ operator=( VkPhysicalDeviceUniformBufferStandardLayoutFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this =
+ *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceUniformBufferStandardLayoutFeatures const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceUniformBufferStandardLayoutFeatures & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceUniformBufferStandardLayoutFeatures &
+ setUniformBufferStandardLayout( VULKAN_HPP_NAMESPACE::Bool32 uniformBufferStandardLayout_ ) VULKAN_HPP_NOEXCEPT
+ {
+ uniformBufferStandardLayout = uniformBufferStandardLayout_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceUniformBufferStandardLayoutFeatures const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceUniformBufferStandardLayoutFeatures *>( this );
+ }
+
+ operator VkPhysicalDeviceUniformBufferStandardLayoutFeatures &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceUniformBufferStandardLayoutFeatures *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceUniformBufferStandardLayoutFeatures const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceUniformBufferStandardLayoutFeatures const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( uniformBufferStandardLayout == rhs.uniformBufferStandardLayout );
+ }
+
+ bool operator!=( PhysicalDeviceUniformBufferStandardLayoutFeatures const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceUniformBufferStandardLayoutFeatures;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 uniformBufferStandardLayout = {};
+ };
+ static_assert( sizeof( PhysicalDeviceUniformBufferStandardLayoutFeatures ) ==
+ sizeof( VkPhysicalDeviceUniformBufferStandardLayoutFeatures ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceUniformBufferStandardLayoutFeatures>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceUniformBufferStandardLayoutFeatures>
+ {
+ using Type = PhysicalDeviceUniformBufferStandardLayoutFeatures;
+ };
+ using PhysicalDeviceUniformBufferStandardLayoutFeaturesKHR = PhysicalDeviceUniformBufferStandardLayoutFeatures;
+
+ struct PhysicalDeviceVariablePointersFeatures
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceVariablePointersFeatures;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ PhysicalDeviceVariablePointersFeatures( VULKAN_HPP_NAMESPACE::Bool32 variablePointersStorageBuffer_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 variablePointers_ = {} ) VULKAN_HPP_NOEXCEPT
+ : variablePointersStorageBuffer( variablePointersStorageBuffer_ )
+ , variablePointers( variablePointers_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceVariablePointersFeatures( PhysicalDeviceVariablePointersFeatures const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceVariablePointersFeatures( VkPhysicalDeviceVariablePointersFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceVariablePointersFeatures(
+ *reinterpret_cast<PhysicalDeviceVariablePointersFeatures const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVariablePointersFeatures &
+ operator=( PhysicalDeviceVariablePointersFeatures const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceVariablePointersFeatures &
+ operator=( VkPhysicalDeviceVariablePointersFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceVariablePointersFeatures const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceVariablePointersFeatures & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceVariablePointersFeatures & setVariablePointersStorageBuffer(
+ VULKAN_HPP_NAMESPACE::Bool32 variablePointersStorageBuffer_ ) VULKAN_HPP_NOEXCEPT
+ {
+ variablePointersStorageBuffer = variablePointersStorageBuffer_;
+ return *this;
+ }
+
+ PhysicalDeviceVariablePointersFeatures &
+ setVariablePointers( VULKAN_HPP_NAMESPACE::Bool32 variablePointers_ ) VULKAN_HPP_NOEXCEPT
+ {
+ variablePointers = variablePointers_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceVariablePointersFeatures const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceVariablePointersFeatures *>( this );
+ }
+
+ operator VkPhysicalDeviceVariablePointersFeatures &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceVariablePointersFeatures *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceVariablePointersFeatures const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceVariablePointersFeatures const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( variablePointersStorageBuffer == rhs.variablePointersStorageBuffer ) &&
+ ( variablePointers == rhs.variablePointers );
+ }
+
+ bool operator!=( PhysicalDeviceVariablePointersFeatures const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceVariablePointersFeatures;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 variablePointersStorageBuffer = {};
+ VULKAN_HPP_NAMESPACE::Bool32 variablePointers = {};
+ };
+ static_assert( sizeof( PhysicalDeviceVariablePointersFeatures ) == sizeof( VkPhysicalDeviceVariablePointersFeatures ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceVariablePointersFeatures>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceVariablePointersFeatures>
+ {
+ using Type = PhysicalDeviceVariablePointersFeatures;
+ };
+ using PhysicalDeviceVariablePointerFeatures = PhysicalDeviceVariablePointersFeatures;
+ using PhysicalDeviceVariablePointerFeaturesKHR = PhysicalDeviceVariablePointersFeatures;
+ using PhysicalDeviceVariablePointersFeaturesKHR = PhysicalDeviceVariablePointersFeatures;
+
+ struct PhysicalDeviceVertexAttributeDivisorFeaturesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceVertexAttributeDivisorFeaturesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceVertexAttributeDivisorFeaturesEXT(
+ VULKAN_HPP_NAMESPACE::Bool32 vertexAttributeInstanceRateDivisor_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 vertexAttributeInstanceRateZeroDivisor_ = {} ) VULKAN_HPP_NOEXCEPT
+ : vertexAttributeInstanceRateDivisor( vertexAttributeInstanceRateDivisor_ )
+ , vertexAttributeInstanceRateZeroDivisor( vertexAttributeInstanceRateZeroDivisor_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceVertexAttributeDivisorFeaturesEXT(
+ PhysicalDeviceVertexAttributeDivisorFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceVertexAttributeDivisorFeaturesEXT( VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceVertexAttributeDivisorFeaturesEXT(
+ *reinterpret_cast<PhysicalDeviceVertexAttributeDivisorFeaturesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVertexAttributeDivisorFeaturesEXT &
+ operator=( PhysicalDeviceVertexAttributeDivisorFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceVertexAttributeDivisorFeaturesEXT &
+ operator=( VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceVertexAttributeDivisorFeaturesEXT const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceVertexAttributeDivisorFeaturesEXT & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceVertexAttributeDivisorFeaturesEXT & setVertexAttributeInstanceRateDivisor(
+ VULKAN_HPP_NAMESPACE::Bool32 vertexAttributeInstanceRateDivisor_ ) VULKAN_HPP_NOEXCEPT
+ {
+ vertexAttributeInstanceRateDivisor = vertexAttributeInstanceRateDivisor_;
+ return *this;
+ }
+
+ PhysicalDeviceVertexAttributeDivisorFeaturesEXT & setVertexAttributeInstanceRateZeroDivisor(
+ VULKAN_HPP_NAMESPACE::Bool32 vertexAttributeInstanceRateZeroDivisor_ ) VULKAN_HPP_NOEXCEPT
+ {
+ vertexAttributeInstanceRateZeroDivisor = vertexAttributeInstanceRateZeroDivisor_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT *>( this );
+ }
+
+ operator VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceVertexAttributeDivisorFeaturesEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceVertexAttributeDivisorFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( vertexAttributeInstanceRateDivisor == rhs.vertexAttributeInstanceRateDivisor ) &&
+ ( vertexAttributeInstanceRateZeroDivisor == rhs.vertexAttributeInstanceRateZeroDivisor );
+ }
+
+ bool operator!=( PhysicalDeviceVertexAttributeDivisorFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceVertexAttributeDivisorFeaturesEXT;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 vertexAttributeInstanceRateDivisor = {};
+ VULKAN_HPP_NAMESPACE::Bool32 vertexAttributeInstanceRateZeroDivisor = {};
+ };
+ static_assert( sizeof( PhysicalDeviceVertexAttributeDivisorFeaturesEXT ) ==
+ sizeof( VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceVertexAttributeDivisorFeaturesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceVertexAttributeDivisorFeaturesEXT>
+ {
+ using Type = PhysicalDeviceVertexAttributeDivisorFeaturesEXT;
+ };
+
+ struct PhysicalDeviceVertexAttributeDivisorPropertiesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceVertexAttributeDivisorPropertiesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ PhysicalDeviceVertexAttributeDivisorPropertiesEXT( uint32_t maxVertexAttribDivisor_ = {} ) VULKAN_HPP_NOEXCEPT
+ : maxVertexAttribDivisor( maxVertexAttribDivisor_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceVertexAttributeDivisorPropertiesEXT(
+ PhysicalDeviceVertexAttributeDivisorPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceVertexAttributeDivisorPropertiesEXT( VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceVertexAttributeDivisorPropertiesEXT(
+ *reinterpret_cast<PhysicalDeviceVertexAttributeDivisorPropertiesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVertexAttributeDivisorPropertiesEXT &
+ operator=( PhysicalDeviceVertexAttributeDivisorPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceVertexAttributeDivisorPropertiesEXT &
+ operator=( VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this =
+ *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceVertexAttributeDivisorPropertiesEXT const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT *>( this );
+ }
+
+ operator VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceVertexAttributeDivisorPropertiesEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceVertexAttributeDivisorPropertiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( maxVertexAttribDivisor == rhs.maxVertexAttribDivisor );
+ }
+
+ bool operator!=( PhysicalDeviceVertexAttributeDivisorPropertiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceVertexAttributeDivisorPropertiesEXT;
+ void * pNext = {};
+ uint32_t maxVertexAttribDivisor = {};
+ };
+ static_assert( sizeof( PhysicalDeviceVertexAttributeDivisorPropertiesEXT ) ==
+ sizeof( VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceVertexAttributeDivisorPropertiesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceVertexAttributeDivisorPropertiesEXT>
+ {
+ using Type = PhysicalDeviceVertexAttributeDivisorPropertiesEXT;
+ };
+
+ struct PhysicalDeviceVertexInputDynamicStateFeaturesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceVertexInputDynamicStateFeaturesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceVertexInputDynamicStateFeaturesEXT(
+ VULKAN_HPP_NAMESPACE::Bool32 vertexInputDynamicState_ = {} ) VULKAN_HPP_NOEXCEPT
+ : vertexInputDynamicState( vertexInputDynamicState_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceVertexInputDynamicStateFeaturesEXT(
+ PhysicalDeviceVertexInputDynamicStateFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceVertexInputDynamicStateFeaturesEXT( VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceVertexInputDynamicStateFeaturesEXT(
+ *reinterpret_cast<PhysicalDeviceVertexInputDynamicStateFeaturesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVertexInputDynamicStateFeaturesEXT &
+ operator=( PhysicalDeviceVertexInputDynamicStateFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceVertexInputDynamicStateFeaturesEXT &
+ operator=( VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceVertexInputDynamicStateFeaturesEXT const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceVertexInputDynamicStateFeaturesEXT & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceVertexInputDynamicStateFeaturesEXT &
+ setVertexInputDynamicState( VULKAN_HPP_NAMESPACE::Bool32 vertexInputDynamicState_ ) VULKAN_HPP_NOEXCEPT
+ {
+ vertexInputDynamicState = vertexInputDynamicState_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT *>( this );
+ }
+
+ operator VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceVertexInputDynamicStateFeaturesEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceVertexInputDynamicStateFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( vertexInputDynamicState == rhs.vertexInputDynamicState );
+ }
+
+ bool operator!=( PhysicalDeviceVertexInputDynamicStateFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceVertexInputDynamicStateFeaturesEXT;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 vertexInputDynamicState = {};
+ };
+ static_assert( sizeof( PhysicalDeviceVertexInputDynamicStateFeaturesEXT ) ==
+ sizeof( VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceVertexInputDynamicStateFeaturesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceVertexInputDynamicStateFeaturesEXT>
+ {
+ using Type = PhysicalDeviceVertexInputDynamicStateFeaturesEXT;
+ };
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoProfileKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoProfileKHR;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ VideoProfileKHR( VULKAN_HPP_NAMESPACE::VideoCodecOperationFlagBitsKHR videoCodecOperation_ =
+ VULKAN_HPP_NAMESPACE::VideoCodecOperationFlagBitsKHR::eInvalid,
+ VULKAN_HPP_NAMESPACE::VideoChromaSubsamplingFlagsKHR chromaSubsampling_ = {},
+ VULKAN_HPP_NAMESPACE::VideoComponentBitDepthFlagsKHR lumaBitDepth_ = {},
+ VULKAN_HPP_NAMESPACE::VideoComponentBitDepthFlagsKHR chromaBitDepth_ = {} ) VULKAN_HPP_NOEXCEPT
+ : videoCodecOperation( videoCodecOperation_ )
+ , chromaSubsampling( chromaSubsampling_ )
+ , lumaBitDepth( lumaBitDepth_ )
+ , chromaBitDepth( chromaBitDepth_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR VideoProfileKHR( VideoProfileKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoProfileKHR( VkVideoProfileKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : VideoProfileKHR( *reinterpret_cast<VideoProfileKHR const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 VideoProfileKHR & operator=( VideoProfileKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoProfileKHR & operator=( VkVideoProfileKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoProfileKHR const *>( &rhs );
+ return *this;
+ }
+
+ VideoProfileKHR & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ VideoProfileKHR & setVideoCodecOperation(
+ VULKAN_HPP_NAMESPACE::VideoCodecOperationFlagBitsKHR videoCodecOperation_ ) VULKAN_HPP_NOEXCEPT
+ {
+ videoCodecOperation = videoCodecOperation_;
+ return *this;
+ }
+
+ VideoProfileKHR & setChromaSubsampling( VULKAN_HPP_NAMESPACE::VideoChromaSubsamplingFlagsKHR chromaSubsampling_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ chromaSubsampling = chromaSubsampling_;
+ return *this;
+ }
+
+ VideoProfileKHR &
+ setLumaBitDepth( VULKAN_HPP_NAMESPACE::VideoComponentBitDepthFlagsKHR lumaBitDepth_ ) VULKAN_HPP_NOEXCEPT
+ {
+ lumaBitDepth = lumaBitDepth_;
+ return *this;
+ }
+
+ VideoProfileKHR &
+ setChromaBitDepth( VULKAN_HPP_NAMESPACE::VideoComponentBitDepthFlagsKHR chromaBitDepth_ ) VULKAN_HPP_NOEXCEPT
+ {
+ chromaBitDepth = chromaBitDepth_;
+ return *this;
+ }
+
+ operator VkVideoProfileKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkVideoProfileKHR *>( this );
+ }
+
+ operator VkVideoProfileKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkVideoProfileKHR *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( VideoProfileKHR const & ) const = default;
+# else
+ bool operator==( VideoProfileKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( videoCodecOperation == rhs.videoCodecOperation ) &&
+ ( chromaSubsampling == rhs.chromaSubsampling ) && ( lumaBitDepth == rhs.lumaBitDepth ) &&
+ ( chromaBitDepth == rhs.chromaBitDepth );
+ }
+
+ bool operator!=( VideoProfileKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoProfileKHR;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::VideoCodecOperationFlagBitsKHR videoCodecOperation =
+ VULKAN_HPP_NAMESPACE::VideoCodecOperationFlagBitsKHR::eInvalid;
+ VULKAN_HPP_NAMESPACE::VideoChromaSubsamplingFlagsKHR chromaSubsampling = {};
+ VULKAN_HPP_NAMESPACE::VideoComponentBitDepthFlagsKHR lumaBitDepth = {};
+ VULKAN_HPP_NAMESPACE::VideoComponentBitDepthFlagsKHR chromaBitDepth = {};
+ };
+ static_assert( sizeof( VideoProfileKHR ) == sizeof( VkVideoProfileKHR ), "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<VideoProfileKHR>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eVideoProfileKHR>
+ {
+ using Type = VideoProfileKHR;
+ };
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoProfilesKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoProfilesKHR;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ VideoProfilesKHR( uint32_t profileCount_ = {},
+ const VULKAN_HPP_NAMESPACE::VideoProfileKHR * pProfiles_ = {} ) VULKAN_HPP_NOEXCEPT
+ : profileCount( profileCount_ )
+ , pProfiles( pProfiles_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR VideoProfilesKHR( VideoProfilesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoProfilesKHR( VkVideoProfilesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : VideoProfilesKHR( *reinterpret_cast<VideoProfilesKHR const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 VideoProfilesKHR & operator=( VideoProfilesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoProfilesKHR & operator=( VkVideoProfilesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoProfilesKHR const *>( &rhs );
+ return *this;
+ }
+
+ VideoProfilesKHR & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ VideoProfilesKHR & setProfileCount( uint32_t profileCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ profileCount = profileCount_;
+ return *this;
+ }
+
+ VideoProfilesKHR & setPProfiles( const VULKAN_HPP_NAMESPACE::VideoProfileKHR * pProfiles_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pProfiles = pProfiles_;
+ return *this;
+ }
+
+ operator VkVideoProfilesKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkVideoProfilesKHR *>( this );
+ }
+
+ operator VkVideoProfilesKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkVideoProfilesKHR *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( VideoProfilesKHR const & ) const = default;
+# else
+ bool operator==( VideoProfilesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( profileCount == rhs.profileCount ) &&
+ ( pProfiles == rhs.pProfiles );
+ }
+
+ bool operator!=( VideoProfilesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoProfilesKHR;
+ void * pNext = {};
+ uint32_t profileCount = {};
+ const VULKAN_HPP_NAMESPACE::VideoProfileKHR * pProfiles = {};
+ };
+ static_assert( sizeof( VideoProfilesKHR ) == sizeof( VkVideoProfilesKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<VideoProfilesKHR>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eVideoProfilesKHR>
+ {
+ using Type = VideoProfilesKHR;
+ };
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct PhysicalDeviceVideoFormatInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceVideoFormatInfoKHR;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceVideoFormatInfoKHR(
+ VULKAN_HPP_NAMESPACE::ImageUsageFlags imageUsage_ = {},
+ const VULKAN_HPP_NAMESPACE::VideoProfilesKHR * pVideoProfiles_ = {} ) VULKAN_HPP_NOEXCEPT
+ : imageUsage( imageUsage_ )
+ , pVideoProfiles( pVideoProfiles_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ PhysicalDeviceVideoFormatInfoKHR( PhysicalDeviceVideoFormatInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceVideoFormatInfoKHR( VkPhysicalDeviceVideoFormatInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceVideoFormatInfoKHR( *reinterpret_cast<PhysicalDeviceVideoFormatInfoKHR const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVideoFormatInfoKHR &
+ operator=( PhysicalDeviceVideoFormatInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceVideoFormatInfoKHR & operator=( VkPhysicalDeviceVideoFormatInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceVideoFormatInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDeviceVideoFormatInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceVideoFormatInfoKHR *>( this );
+ }
+
+ operator VkPhysicalDeviceVideoFormatInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceVideoFormatInfoKHR *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceVideoFormatInfoKHR const & ) const = default;
+# else
+ bool operator==( PhysicalDeviceVideoFormatInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( imageUsage == rhs.imageUsage ) &&
+ ( pVideoProfiles == rhs.pVideoProfiles );
+ }
+
+ bool operator!=( PhysicalDeviceVideoFormatInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceVideoFormatInfoKHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ImageUsageFlags imageUsage = {};
+ const VULKAN_HPP_NAMESPACE::VideoProfilesKHR * pVideoProfiles = {};
+ };
+ static_assert( sizeof( PhysicalDeviceVideoFormatInfoKHR ) == sizeof( VkPhysicalDeviceVideoFormatInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceVideoFormatInfoKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceVideoFormatInfoKHR>
+ {
+ using Type = PhysicalDeviceVideoFormatInfoKHR;
+ };
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+ struct PhysicalDeviceVulkan11Features
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceVulkan11Features;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ PhysicalDeviceVulkan11Features( VULKAN_HPP_NAMESPACE::Bool32 storageBuffer16BitAccess_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 uniformAndStorageBuffer16BitAccess_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 storagePushConstant16_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 storageInputOutput16_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 multiview_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 multiviewGeometryShader_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 multiviewTessellationShader_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 variablePointersStorageBuffer_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 variablePointers_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 protectedMemory_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 samplerYcbcrConversion_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderDrawParameters_ = {} ) VULKAN_HPP_NOEXCEPT
+ : storageBuffer16BitAccess( storageBuffer16BitAccess_ )
+ , uniformAndStorageBuffer16BitAccess( uniformAndStorageBuffer16BitAccess_ )
+ , storagePushConstant16( storagePushConstant16_ )
+ , storageInputOutput16( storageInputOutput16_ )
+ , multiview( multiview_ )
+ , multiviewGeometryShader( multiviewGeometryShader_ )
+ , multiviewTessellationShader( multiviewTessellationShader_ )
+ , variablePointersStorageBuffer( variablePointersStorageBuffer_ )
+ , variablePointers( variablePointers_ )
+ , protectedMemory( protectedMemory_ )
+ , samplerYcbcrConversion( samplerYcbcrConversion_ )
+ , shaderDrawParameters( shaderDrawParameters_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ PhysicalDeviceVulkan11Features( PhysicalDeviceVulkan11Features const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceVulkan11Features( VkPhysicalDeviceVulkan11Features const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceVulkan11Features( *reinterpret_cast<PhysicalDeviceVulkan11Features const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan11Features &
+ operator=( PhysicalDeviceVulkan11Features const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceVulkan11Features & operator=( VkPhysicalDeviceVulkan11Features const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceVulkan11Features const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceVulkan11Features & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan11Features &
+ setStorageBuffer16BitAccess( VULKAN_HPP_NAMESPACE::Bool32 storageBuffer16BitAccess_ ) VULKAN_HPP_NOEXCEPT
+ {
+ storageBuffer16BitAccess = storageBuffer16BitAccess_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan11Features & setUniformAndStorageBuffer16BitAccess(
+ VULKAN_HPP_NAMESPACE::Bool32 uniformAndStorageBuffer16BitAccess_ ) VULKAN_HPP_NOEXCEPT
+ {
+ uniformAndStorageBuffer16BitAccess = uniformAndStorageBuffer16BitAccess_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan11Features &
+ setStoragePushConstant16( VULKAN_HPP_NAMESPACE::Bool32 storagePushConstant16_ ) VULKAN_HPP_NOEXCEPT
+ {
+ storagePushConstant16 = storagePushConstant16_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan11Features &
+ setStorageInputOutput16( VULKAN_HPP_NAMESPACE::Bool32 storageInputOutput16_ ) VULKAN_HPP_NOEXCEPT
+ {
+ storageInputOutput16 = storageInputOutput16_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan11Features & setMultiview( VULKAN_HPP_NAMESPACE::Bool32 multiview_ ) VULKAN_HPP_NOEXCEPT
+ {
+ multiview = multiview_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan11Features &
+ setMultiviewGeometryShader( VULKAN_HPP_NAMESPACE::Bool32 multiviewGeometryShader_ ) VULKAN_HPP_NOEXCEPT
+ {
+ multiviewGeometryShader = multiviewGeometryShader_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan11Features &
+ setMultiviewTessellationShader( VULKAN_HPP_NAMESPACE::Bool32 multiviewTessellationShader_ ) VULKAN_HPP_NOEXCEPT
+ {
+ multiviewTessellationShader = multiviewTessellationShader_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan11Features & setVariablePointersStorageBuffer(
+ VULKAN_HPP_NAMESPACE::Bool32 variablePointersStorageBuffer_ ) VULKAN_HPP_NOEXCEPT
+ {
+ variablePointersStorageBuffer = variablePointersStorageBuffer_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan11Features &
+ setVariablePointers( VULKAN_HPP_NAMESPACE::Bool32 variablePointers_ ) VULKAN_HPP_NOEXCEPT
+ {
+ variablePointers = variablePointers_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan11Features &
+ setProtectedMemory( VULKAN_HPP_NAMESPACE::Bool32 protectedMemory_ ) VULKAN_HPP_NOEXCEPT
+ {
+ protectedMemory = protectedMemory_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan11Features &
+ setSamplerYcbcrConversion( VULKAN_HPP_NAMESPACE::Bool32 samplerYcbcrConversion_ ) VULKAN_HPP_NOEXCEPT
+ {
+ samplerYcbcrConversion = samplerYcbcrConversion_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan11Features &
+ setShaderDrawParameters( VULKAN_HPP_NAMESPACE::Bool32 shaderDrawParameters_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderDrawParameters = shaderDrawParameters_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceVulkan11Features const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceVulkan11Features *>( this );
+ }
+
+ operator VkPhysicalDeviceVulkan11Features &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceVulkan11Features *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceVulkan11Features const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceVulkan11Features const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( storageBuffer16BitAccess == rhs.storageBuffer16BitAccess ) &&
+ ( uniformAndStorageBuffer16BitAccess == rhs.uniformAndStorageBuffer16BitAccess ) &&
+ ( storagePushConstant16 == rhs.storagePushConstant16 ) &&
+ ( storageInputOutput16 == rhs.storageInputOutput16 ) && ( multiview == rhs.multiview ) &&
+ ( multiviewGeometryShader == rhs.multiviewGeometryShader ) &&
+ ( multiviewTessellationShader == rhs.multiviewTessellationShader ) &&
+ ( variablePointersStorageBuffer == rhs.variablePointersStorageBuffer ) &&
+ ( variablePointers == rhs.variablePointers ) && ( protectedMemory == rhs.protectedMemory ) &&
+ ( samplerYcbcrConversion == rhs.samplerYcbcrConversion ) &&
+ ( shaderDrawParameters == rhs.shaderDrawParameters );
+ }
+
+ bool operator!=( PhysicalDeviceVulkan11Features const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceVulkan11Features;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 storageBuffer16BitAccess = {};
+ VULKAN_HPP_NAMESPACE::Bool32 uniformAndStorageBuffer16BitAccess = {};
+ VULKAN_HPP_NAMESPACE::Bool32 storagePushConstant16 = {};
+ VULKAN_HPP_NAMESPACE::Bool32 storageInputOutput16 = {};
+ VULKAN_HPP_NAMESPACE::Bool32 multiview = {};
+ VULKAN_HPP_NAMESPACE::Bool32 multiviewGeometryShader = {};
+ VULKAN_HPP_NAMESPACE::Bool32 multiviewTessellationShader = {};
+ VULKAN_HPP_NAMESPACE::Bool32 variablePointersStorageBuffer = {};
+ VULKAN_HPP_NAMESPACE::Bool32 variablePointers = {};
+ VULKAN_HPP_NAMESPACE::Bool32 protectedMemory = {};
+ VULKAN_HPP_NAMESPACE::Bool32 samplerYcbcrConversion = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderDrawParameters = {};
+ };
+ static_assert( sizeof( PhysicalDeviceVulkan11Features ) == sizeof( VkPhysicalDeviceVulkan11Features ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceVulkan11Features>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceVulkan11Features>
+ {
+ using Type = PhysicalDeviceVulkan11Features;
+ };
+
+ struct PhysicalDeviceVulkan11Properties
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceVulkan11Properties;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan11Properties(
+ std::array<uint8_t, VK_UUID_SIZE> const & deviceUUID_ = {},
+ std::array<uint8_t, VK_UUID_SIZE> const & driverUUID_ = {},
+ std::array<uint8_t, VK_LUID_SIZE> const & deviceLUID_ = {},
+ uint32_t deviceNodeMask_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 deviceLUIDValid_ = {},
+ uint32_t subgroupSize_ = {},
+ VULKAN_HPP_NAMESPACE::ShaderStageFlags subgroupSupportedStages_ = {},
+ VULKAN_HPP_NAMESPACE::SubgroupFeatureFlags subgroupSupportedOperations_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 subgroupQuadOperationsInAllStages_ = {},
+ VULKAN_HPP_NAMESPACE::PointClippingBehavior pointClippingBehavior_ =
+ VULKAN_HPP_NAMESPACE::PointClippingBehavior::eAllClipPlanes,
+ uint32_t maxMultiviewViewCount_ = {},
+ uint32_t maxMultiviewInstanceIndex_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 protectedNoFault_ = {},
+ uint32_t maxPerSetDescriptors_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize maxMemoryAllocationSize_ = {} ) VULKAN_HPP_NOEXCEPT
+ : deviceUUID( deviceUUID_ )
+ , driverUUID( driverUUID_ )
+ , deviceLUID( deviceLUID_ )
+ , deviceNodeMask( deviceNodeMask_ )
+ , deviceLUIDValid( deviceLUIDValid_ )
+ , subgroupSize( subgroupSize_ )
+ , subgroupSupportedStages( subgroupSupportedStages_ )
+ , subgroupSupportedOperations( subgroupSupportedOperations_ )
+ , subgroupQuadOperationsInAllStages( subgroupQuadOperationsInAllStages_ )
+ , pointClippingBehavior( pointClippingBehavior_ )
+ , maxMultiviewViewCount( maxMultiviewViewCount_ )
+ , maxMultiviewInstanceIndex( maxMultiviewInstanceIndex_ )
+ , protectedNoFault( protectedNoFault_ )
+ , maxPerSetDescriptors( maxPerSetDescriptors_ )
+ , maxMemoryAllocationSize( maxMemoryAllocationSize_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR_14
+ PhysicalDeviceVulkan11Properties( PhysicalDeviceVulkan11Properties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceVulkan11Properties( VkPhysicalDeviceVulkan11Properties const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceVulkan11Properties( *reinterpret_cast<PhysicalDeviceVulkan11Properties const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan11Properties &
+ operator=( PhysicalDeviceVulkan11Properties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceVulkan11Properties & operator=( VkPhysicalDeviceVulkan11Properties const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceVulkan11Properties const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDeviceVulkan11Properties const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceVulkan11Properties *>( this );
+ }
+
+ operator VkPhysicalDeviceVulkan11Properties &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceVulkan11Properties *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceVulkan11Properties const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceVulkan11Properties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( deviceUUID == rhs.deviceUUID ) &&
+ ( driverUUID == rhs.driverUUID ) && ( deviceLUID == rhs.deviceLUID ) &&
+ ( deviceNodeMask == rhs.deviceNodeMask ) && ( deviceLUIDValid == rhs.deviceLUIDValid ) &&
+ ( subgroupSize == rhs.subgroupSize ) && ( subgroupSupportedStages == rhs.subgroupSupportedStages ) &&
+ ( subgroupSupportedOperations == rhs.subgroupSupportedOperations ) &&
+ ( subgroupQuadOperationsInAllStages == rhs.subgroupQuadOperationsInAllStages ) &&
+ ( pointClippingBehavior == rhs.pointClippingBehavior ) &&
+ ( maxMultiviewViewCount == rhs.maxMultiviewViewCount ) &&
+ ( maxMultiviewInstanceIndex == rhs.maxMultiviewInstanceIndex ) &&
+ ( protectedNoFault == rhs.protectedNoFault ) && ( maxPerSetDescriptors == rhs.maxPerSetDescriptors ) &&
+ ( maxMemoryAllocationSize == rhs.maxMemoryAllocationSize );
+ }
+
+ bool operator!=( PhysicalDeviceVulkan11Properties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceVulkan11Properties;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, VK_UUID_SIZE> deviceUUID = {};
+ VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, VK_UUID_SIZE> driverUUID = {};
+ VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, VK_LUID_SIZE> deviceLUID = {};
+ uint32_t deviceNodeMask = {};
+ VULKAN_HPP_NAMESPACE::Bool32 deviceLUIDValid = {};
+ uint32_t subgroupSize = {};
+ VULKAN_HPP_NAMESPACE::ShaderStageFlags subgroupSupportedStages = {};
+ VULKAN_HPP_NAMESPACE::SubgroupFeatureFlags subgroupSupportedOperations = {};
+ VULKAN_HPP_NAMESPACE::Bool32 subgroupQuadOperationsInAllStages = {};
+ VULKAN_HPP_NAMESPACE::PointClippingBehavior pointClippingBehavior =
+ VULKAN_HPP_NAMESPACE::PointClippingBehavior::eAllClipPlanes;
+ uint32_t maxMultiviewViewCount = {};
+ uint32_t maxMultiviewInstanceIndex = {};
+ VULKAN_HPP_NAMESPACE::Bool32 protectedNoFault = {};
+ uint32_t maxPerSetDescriptors = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize maxMemoryAllocationSize = {};
+ };
+ static_assert( sizeof( PhysicalDeviceVulkan11Properties ) == sizeof( VkPhysicalDeviceVulkan11Properties ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceVulkan11Properties>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceVulkan11Properties>
+ {
+ using Type = PhysicalDeviceVulkan11Properties;
+ };
+
+ struct PhysicalDeviceVulkan12Features
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceVulkan12Features;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceVulkan12Features(
+ VULKAN_HPP_NAMESPACE::Bool32 samplerMirrorClampToEdge_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 drawIndirectCount_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 storageBuffer8BitAccess_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 uniformAndStorageBuffer8BitAccess_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 storagePushConstant8_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderBufferInt64Atomics_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderSharedInt64Atomics_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderFloat16_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderInt8_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorIndexing_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderInputAttachmentArrayDynamicIndexing_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderUniformTexelBufferArrayDynamicIndexing_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderStorageTexelBufferArrayDynamicIndexing_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderUniformBufferArrayNonUniformIndexing_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderSampledImageArrayNonUniformIndexing_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderStorageBufferArrayNonUniformIndexing_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageArrayNonUniformIndexing_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderInputAttachmentArrayNonUniformIndexing_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderUniformTexelBufferArrayNonUniformIndexing_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderStorageTexelBufferArrayNonUniformIndexing_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingUniformBufferUpdateAfterBind_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingSampledImageUpdateAfterBind_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingStorageImageUpdateAfterBind_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingStorageBufferUpdateAfterBind_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingUniformTexelBufferUpdateAfterBind_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingStorageTexelBufferUpdateAfterBind_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingUpdateUnusedWhilePending_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingPartiallyBound_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingVariableDescriptorCount_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 runtimeDescriptorArray_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 samplerFilterMinmax_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 scalarBlockLayout_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 imagelessFramebuffer_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 uniformBufferStandardLayout_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderSubgroupExtendedTypes_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 separateDepthStencilLayouts_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 hostQueryReset_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 timelineSemaphore_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddress_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddressCaptureReplay_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddressMultiDevice_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 vulkanMemoryModel_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 vulkanMemoryModelDeviceScope_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 vulkanMemoryModelAvailabilityVisibilityChains_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderOutputViewportIndex_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderOutputLayer_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 subgroupBroadcastDynamicId_ = {} ) VULKAN_HPP_NOEXCEPT
+ : samplerMirrorClampToEdge( samplerMirrorClampToEdge_ )
+ , drawIndirectCount( drawIndirectCount_ )
+ , storageBuffer8BitAccess( storageBuffer8BitAccess_ )
+ , uniformAndStorageBuffer8BitAccess( uniformAndStorageBuffer8BitAccess_ )
+ , storagePushConstant8( storagePushConstant8_ )
+ , shaderBufferInt64Atomics( shaderBufferInt64Atomics_ )
+ , shaderSharedInt64Atomics( shaderSharedInt64Atomics_ )
+ , shaderFloat16( shaderFloat16_ )
+ , shaderInt8( shaderInt8_ )
+ , descriptorIndexing( descriptorIndexing_ )
+ , shaderInputAttachmentArrayDynamicIndexing( shaderInputAttachmentArrayDynamicIndexing_ )
+ , shaderUniformTexelBufferArrayDynamicIndexing( shaderUniformTexelBufferArrayDynamicIndexing_ )
+ , shaderStorageTexelBufferArrayDynamicIndexing( shaderStorageTexelBufferArrayDynamicIndexing_ )
+ , shaderUniformBufferArrayNonUniformIndexing( shaderUniformBufferArrayNonUniformIndexing_ )
+ , shaderSampledImageArrayNonUniformIndexing( shaderSampledImageArrayNonUniformIndexing_ )
+ , shaderStorageBufferArrayNonUniformIndexing( shaderStorageBufferArrayNonUniformIndexing_ )
+ , shaderStorageImageArrayNonUniformIndexing( shaderStorageImageArrayNonUniformIndexing_ )
+ , shaderInputAttachmentArrayNonUniformIndexing( shaderInputAttachmentArrayNonUniformIndexing_ )
+ , shaderUniformTexelBufferArrayNonUniformIndexing( shaderUniformTexelBufferArrayNonUniformIndexing_ )
+ , shaderStorageTexelBufferArrayNonUniformIndexing( shaderStorageTexelBufferArrayNonUniformIndexing_ )
+ , descriptorBindingUniformBufferUpdateAfterBind( descriptorBindingUniformBufferUpdateAfterBind_ )
+ , descriptorBindingSampledImageUpdateAfterBind( descriptorBindingSampledImageUpdateAfterBind_ )
+ , descriptorBindingStorageImageUpdateAfterBind( descriptorBindingStorageImageUpdateAfterBind_ )
+ , descriptorBindingStorageBufferUpdateAfterBind( descriptorBindingStorageBufferUpdateAfterBind_ )
+ , descriptorBindingUniformTexelBufferUpdateAfterBind( descriptorBindingUniformTexelBufferUpdateAfterBind_ )
+ , descriptorBindingStorageTexelBufferUpdateAfterBind( descriptorBindingStorageTexelBufferUpdateAfterBind_ )
+ , descriptorBindingUpdateUnusedWhilePending( descriptorBindingUpdateUnusedWhilePending_ )
+ , descriptorBindingPartiallyBound( descriptorBindingPartiallyBound_ )
+ , descriptorBindingVariableDescriptorCount( descriptorBindingVariableDescriptorCount_ )
+ , runtimeDescriptorArray( runtimeDescriptorArray_ )
+ , samplerFilterMinmax( samplerFilterMinmax_ )
+ , scalarBlockLayout( scalarBlockLayout_ )
+ , imagelessFramebuffer( imagelessFramebuffer_ )
+ , uniformBufferStandardLayout( uniformBufferStandardLayout_ )
+ , shaderSubgroupExtendedTypes( shaderSubgroupExtendedTypes_ )
+ , separateDepthStencilLayouts( separateDepthStencilLayouts_ )
+ , hostQueryReset( hostQueryReset_ )
+ , timelineSemaphore( timelineSemaphore_ )
+ , bufferDeviceAddress( bufferDeviceAddress_ )
+ , bufferDeviceAddressCaptureReplay( bufferDeviceAddressCaptureReplay_ )
+ , bufferDeviceAddressMultiDevice( bufferDeviceAddressMultiDevice_ )
+ , vulkanMemoryModel( vulkanMemoryModel_ )
+ , vulkanMemoryModelDeviceScope( vulkanMemoryModelDeviceScope_ )
+ , vulkanMemoryModelAvailabilityVisibilityChains( vulkanMemoryModelAvailabilityVisibilityChains_ )
+ , shaderOutputViewportIndex( shaderOutputViewportIndex_ )
+ , shaderOutputLayer( shaderOutputLayer_ )
+ , subgroupBroadcastDynamicId( subgroupBroadcastDynamicId_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ PhysicalDeviceVulkan12Features( PhysicalDeviceVulkan12Features const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceVulkan12Features( VkPhysicalDeviceVulkan12Features const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceVulkan12Features( *reinterpret_cast<PhysicalDeviceVulkan12Features const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan12Features &
+ operator=( PhysicalDeviceVulkan12Features const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceVulkan12Features & operator=( VkPhysicalDeviceVulkan12Features const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceVulkan12Features const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceVulkan12Features & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan12Features &
+ setSamplerMirrorClampToEdge( VULKAN_HPP_NAMESPACE::Bool32 samplerMirrorClampToEdge_ ) VULKAN_HPP_NOEXCEPT
+ {
+ samplerMirrorClampToEdge = samplerMirrorClampToEdge_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan12Features &
+ setDrawIndirectCount( VULKAN_HPP_NAMESPACE::Bool32 drawIndirectCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ drawIndirectCount = drawIndirectCount_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan12Features &
+ setStorageBuffer8BitAccess( VULKAN_HPP_NAMESPACE::Bool32 storageBuffer8BitAccess_ ) VULKAN_HPP_NOEXCEPT
+ {
+ storageBuffer8BitAccess = storageBuffer8BitAccess_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan12Features & setUniformAndStorageBuffer8BitAccess(
+ VULKAN_HPP_NAMESPACE::Bool32 uniformAndStorageBuffer8BitAccess_ ) VULKAN_HPP_NOEXCEPT
+ {
+ uniformAndStorageBuffer8BitAccess = uniformAndStorageBuffer8BitAccess_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan12Features &
+ setStoragePushConstant8( VULKAN_HPP_NAMESPACE::Bool32 storagePushConstant8_ ) VULKAN_HPP_NOEXCEPT
+ {
+ storagePushConstant8 = storagePushConstant8_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan12Features &
+ setShaderBufferInt64Atomics( VULKAN_HPP_NAMESPACE::Bool32 shaderBufferInt64Atomics_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderBufferInt64Atomics = shaderBufferInt64Atomics_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan12Features &
+ setShaderSharedInt64Atomics( VULKAN_HPP_NAMESPACE::Bool32 shaderSharedInt64Atomics_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderSharedInt64Atomics = shaderSharedInt64Atomics_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan12Features & setShaderFloat16( VULKAN_HPP_NAMESPACE::Bool32 shaderFloat16_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderFloat16 = shaderFloat16_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan12Features & setShaderInt8( VULKAN_HPP_NAMESPACE::Bool32 shaderInt8_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderInt8 = shaderInt8_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan12Features &
+ setDescriptorIndexing( VULKAN_HPP_NAMESPACE::Bool32 descriptorIndexing_ ) VULKAN_HPP_NOEXCEPT
+ {
+ descriptorIndexing = descriptorIndexing_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan12Features & setShaderInputAttachmentArrayDynamicIndexing(
+ VULKAN_HPP_NAMESPACE::Bool32 shaderInputAttachmentArrayDynamicIndexing_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderInputAttachmentArrayDynamicIndexing = shaderInputAttachmentArrayDynamicIndexing_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan12Features & setShaderUniformTexelBufferArrayDynamicIndexing(
+ VULKAN_HPP_NAMESPACE::Bool32 shaderUniformTexelBufferArrayDynamicIndexing_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderUniformTexelBufferArrayDynamicIndexing = shaderUniformTexelBufferArrayDynamicIndexing_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan12Features & setShaderStorageTexelBufferArrayDynamicIndexing(
+ VULKAN_HPP_NAMESPACE::Bool32 shaderStorageTexelBufferArrayDynamicIndexing_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderStorageTexelBufferArrayDynamicIndexing = shaderStorageTexelBufferArrayDynamicIndexing_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan12Features & setShaderUniformBufferArrayNonUniformIndexing(
+ VULKAN_HPP_NAMESPACE::Bool32 shaderUniformBufferArrayNonUniformIndexing_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderUniformBufferArrayNonUniformIndexing = shaderUniformBufferArrayNonUniformIndexing_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan12Features & setShaderSampledImageArrayNonUniformIndexing(
+ VULKAN_HPP_NAMESPACE::Bool32 shaderSampledImageArrayNonUniformIndexing_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderSampledImageArrayNonUniformIndexing = shaderSampledImageArrayNonUniformIndexing_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan12Features & setShaderStorageBufferArrayNonUniformIndexing(
+ VULKAN_HPP_NAMESPACE::Bool32 shaderStorageBufferArrayNonUniformIndexing_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderStorageBufferArrayNonUniformIndexing = shaderStorageBufferArrayNonUniformIndexing_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan12Features & setShaderStorageImageArrayNonUniformIndexing(
+ VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageArrayNonUniformIndexing_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderStorageImageArrayNonUniformIndexing = shaderStorageImageArrayNonUniformIndexing_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan12Features & setShaderInputAttachmentArrayNonUniformIndexing(
+ VULKAN_HPP_NAMESPACE::Bool32 shaderInputAttachmentArrayNonUniformIndexing_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderInputAttachmentArrayNonUniformIndexing = shaderInputAttachmentArrayNonUniformIndexing_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan12Features & setShaderUniformTexelBufferArrayNonUniformIndexing(
+ VULKAN_HPP_NAMESPACE::Bool32 shaderUniformTexelBufferArrayNonUniformIndexing_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderUniformTexelBufferArrayNonUniformIndexing = shaderUniformTexelBufferArrayNonUniformIndexing_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan12Features & setShaderStorageTexelBufferArrayNonUniformIndexing(
+ VULKAN_HPP_NAMESPACE::Bool32 shaderStorageTexelBufferArrayNonUniformIndexing_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderStorageTexelBufferArrayNonUniformIndexing = shaderStorageTexelBufferArrayNonUniformIndexing_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan12Features & setDescriptorBindingUniformBufferUpdateAfterBind(
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingUniformBufferUpdateAfterBind_ ) VULKAN_HPP_NOEXCEPT
+ {
+ descriptorBindingUniformBufferUpdateAfterBind = descriptorBindingUniformBufferUpdateAfterBind_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan12Features & setDescriptorBindingSampledImageUpdateAfterBind(
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingSampledImageUpdateAfterBind_ ) VULKAN_HPP_NOEXCEPT
+ {
+ descriptorBindingSampledImageUpdateAfterBind = descriptorBindingSampledImageUpdateAfterBind_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan12Features & setDescriptorBindingStorageImageUpdateAfterBind(
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingStorageImageUpdateAfterBind_ ) VULKAN_HPP_NOEXCEPT
+ {
+ descriptorBindingStorageImageUpdateAfterBind = descriptorBindingStorageImageUpdateAfterBind_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan12Features & setDescriptorBindingStorageBufferUpdateAfterBind(
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingStorageBufferUpdateAfterBind_ ) VULKAN_HPP_NOEXCEPT
+ {
+ descriptorBindingStorageBufferUpdateAfterBind = descriptorBindingStorageBufferUpdateAfterBind_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan12Features & setDescriptorBindingUniformTexelBufferUpdateAfterBind(
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingUniformTexelBufferUpdateAfterBind_ ) VULKAN_HPP_NOEXCEPT
+ {
+ descriptorBindingUniformTexelBufferUpdateAfterBind = descriptorBindingUniformTexelBufferUpdateAfterBind_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan12Features & setDescriptorBindingStorageTexelBufferUpdateAfterBind(
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingStorageTexelBufferUpdateAfterBind_ ) VULKAN_HPP_NOEXCEPT
+ {
+ descriptorBindingStorageTexelBufferUpdateAfterBind = descriptorBindingStorageTexelBufferUpdateAfterBind_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan12Features & setDescriptorBindingUpdateUnusedWhilePending(
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingUpdateUnusedWhilePending_ ) VULKAN_HPP_NOEXCEPT
+ {
+ descriptorBindingUpdateUnusedWhilePending = descriptorBindingUpdateUnusedWhilePending_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan12Features & setDescriptorBindingPartiallyBound(
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingPartiallyBound_ ) VULKAN_HPP_NOEXCEPT
+ {
+ descriptorBindingPartiallyBound = descriptorBindingPartiallyBound_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan12Features & setDescriptorBindingVariableDescriptorCount(
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingVariableDescriptorCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ descriptorBindingVariableDescriptorCount = descriptorBindingVariableDescriptorCount_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan12Features &
+ setRuntimeDescriptorArray( VULKAN_HPP_NAMESPACE::Bool32 runtimeDescriptorArray_ ) VULKAN_HPP_NOEXCEPT
+ {
+ runtimeDescriptorArray = runtimeDescriptorArray_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan12Features &
+ setSamplerFilterMinmax( VULKAN_HPP_NAMESPACE::Bool32 samplerFilterMinmax_ ) VULKAN_HPP_NOEXCEPT
+ {
+ samplerFilterMinmax = samplerFilterMinmax_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan12Features &
+ setScalarBlockLayout( VULKAN_HPP_NAMESPACE::Bool32 scalarBlockLayout_ ) VULKAN_HPP_NOEXCEPT
+ {
+ scalarBlockLayout = scalarBlockLayout_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan12Features &
+ setImagelessFramebuffer( VULKAN_HPP_NAMESPACE::Bool32 imagelessFramebuffer_ ) VULKAN_HPP_NOEXCEPT
+ {
+ imagelessFramebuffer = imagelessFramebuffer_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan12Features &
+ setUniformBufferStandardLayout( VULKAN_HPP_NAMESPACE::Bool32 uniformBufferStandardLayout_ ) VULKAN_HPP_NOEXCEPT
+ {
+ uniformBufferStandardLayout = uniformBufferStandardLayout_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan12Features &
+ setShaderSubgroupExtendedTypes( VULKAN_HPP_NAMESPACE::Bool32 shaderSubgroupExtendedTypes_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderSubgroupExtendedTypes = shaderSubgroupExtendedTypes_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan12Features &
+ setSeparateDepthStencilLayouts( VULKAN_HPP_NAMESPACE::Bool32 separateDepthStencilLayouts_ ) VULKAN_HPP_NOEXCEPT
+ {
+ separateDepthStencilLayouts = separateDepthStencilLayouts_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan12Features &
+ setHostQueryReset( VULKAN_HPP_NAMESPACE::Bool32 hostQueryReset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ hostQueryReset = hostQueryReset_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan12Features &
+ setTimelineSemaphore( VULKAN_HPP_NAMESPACE::Bool32 timelineSemaphore_ ) VULKAN_HPP_NOEXCEPT
+ {
+ timelineSemaphore = timelineSemaphore_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan12Features &
+ setBufferDeviceAddress( VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddress_ ) VULKAN_HPP_NOEXCEPT
+ {
+ bufferDeviceAddress = bufferDeviceAddress_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan12Features & setBufferDeviceAddressCaptureReplay(
+ VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddressCaptureReplay_ ) VULKAN_HPP_NOEXCEPT
+ {
+ bufferDeviceAddressCaptureReplay = bufferDeviceAddressCaptureReplay_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan12Features & setBufferDeviceAddressMultiDevice(
+ VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddressMultiDevice_ ) VULKAN_HPP_NOEXCEPT
+ {
+ bufferDeviceAddressMultiDevice = bufferDeviceAddressMultiDevice_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan12Features &
+ setVulkanMemoryModel( VULKAN_HPP_NAMESPACE::Bool32 vulkanMemoryModel_ ) VULKAN_HPP_NOEXCEPT
+ {
+ vulkanMemoryModel = vulkanMemoryModel_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan12Features &
+ setVulkanMemoryModelDeviceScope( VULKAN_HPP_NAMESPACE::Bool32 vulkanMemoryModelDeviceScope_ ) VULKAN_HPP_NOEXCEPT
+ {
+ vulkanMemoryModelDeviceScope = vulkanMemoryModelDeviceScope_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan12Features & setVulkanMemoryModelAvailabilityVisibilityChains(
+ VULKAN_HPP_NAMESPACE::Bool32 vulkanMemoryModelAvailabilityVisibilityChains_ ) VULKAN_HPP_NOEXCEPT
+ {
+ vulkanMemoryModelAvailabilityVisibilityChains = vulkanMemoryModelAvailabilityVisibilityChains_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan12Features &
+ setShaderOutputViewportIndex( VULKAN_HPP_NAMESPACE::Bool32 shaderOutputViewportIndex_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderOutputViewportIndex = shaderOutputViewportIndex_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan12Features &
+ setShaderOutputLayer( VULKAN_HPP_NAMESPACE::Bool32 shaderOutputLayer_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderOutputLayer = shaderOutputLayer_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkan12Features &
+ setSubgroupBroadcastDynamicId( VULKAN_HPP_NAMESPACE::Bool32 subgroupBroadcastDynamicId_ ) VULKAN_HPP_NOEXCEPT
+ {
+ subgroupBroadcastDynamicId = subgroupBroadcastDynamicId_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceVulkan12Features const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceVulkan12Features *>( this );
+ }
+
+ operator VkPhysicalDeviceVulkan12Features &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceVulkan12Features *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceVulkan12Features const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceVulkan12Features const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( samplerMirrorClampToEdge == rhs.samplerMirrorClampToEdge ) &&
+ ( drawIndirectCount == rhs.drawIndirectCount ) &&
+ ( storageBuffer8BitAccess == rhs.storageBuffer8BitAccess ) &&
+ ( uniformAndStorageBuffer8BitAccess == rhs.uniformAndStorageBuffer8BitAccess ) &&
+ ( storagePushConstant8 == rhs.storagePushConstant8 ) &&
+ ( shaderBufferInt64Atomics == rhs.shaderBufferInt64Atomics ) &&
+ ( shaderSharedInt64Atomics == rhs.shaderSharedInt64Atomics ) && ( shaderFloat16 == rhs.shaderFloat16 ) &&
+ ( shaderInt8 == rhs.shaderInt8 ) && ( descriptorIndexing == rhs.descriptorIndexing ) &&
+ ( shaderInputAttachmentArrayDynamicIndexing == rhs.shaderInputAttachmentArrayDynamicIndexing ) &&
+ ( shaderUniformTexelBufferArrayDynamicIndexing == rhs.shaderUniformTexelBufferArrayDynamicIndexing ) &&
+ ( shaderStorageTexelBufferArrayDynamicIndexing == rhs.shaderStorageTexelBufferArrayDynamicIndexing ) &&
+ ( shaderUniformBufferArrayNonUniformIndexing == rhs.shaderUniformBufferArrayNonUniformIndexing ) &&
+ ( shaderSampledImageArrayNonUniformIndexing == rhs.shaderSampledImageArrayNonUniformIndexing ) &&
+ ( shaderStorageBufferArrayNonUniformIndexing == rhs.shaderStorageBufferArrayNonUniformIndexing ) &&
+ ( shaderStorageImageArrayNonUniformIndexing == rhs.shaderStorageImageArrayNonUniformIndexing ) &&
+ ( shaderInputAttachmentArrayNonUniformIndexing == rhs.shaderInputAttachmentArrayNonUniformIndexing ) &&
+ ( shaderUniformTexelBufferArrayNonUniformIndexing ==
+ rhs.shaderUniformTexelBufferArrayNonUniformIndexing ) &&
+ ( shaderStorageTexelBufferArrayNonUniformIndexing ==
+ rhs.shaderStorageTexelBufferArrayNonUniformIndexing ) &&
+ ( descriptorBindingUniformBufferUpdateAfterBind == rhs.descriptorBindingUniformBufferUpdateAfterBind ) &&
+ ( descriptorBindingSampledImageUpdateAfterBind == rhs.descriptorBindingSampledImageUpdateAfterBind ) &&
+ ( descriptorBindingStorageImageUpdateAfterBind == rhs.descriptorBindingStorageImageUpdateAfterBind ) &&
+ ( descriptorBindingStorageBufferUpdateAfterBind == rhs.descriptorBindingStorageBufferUpdateAfterBind ) &&
+ ( descriptorBindingUniformTexelBufferUpdateAfterBind ==
+ rhs.descriptorBindingUniformTexelBufferUpdateAfterBind ) &&
+ ( descriptorBindingStorageTexelBufferUpdateAfterBind ==
+ rhs.descriptorBindingStorageTexelBufferUpdateAfterBind ) &&
+ ( descriptorBindingUpdateUnusedWhilePending == rhs.descriptorBindingUpdateUnusedWhilePending ) &&
+ ( descriptorBindingPartiallyBound == rhs.descriptorBindingPartiallyBound ) &&
+ ( descriptorBindingVariableDescriptorCount == rhs.descriptorBindingVariableDescriptorCount ) &&
+ ( runtimeDescriptorArray == rhs.runtimeDescriptorArray ) &&
+ ( samplerFilterMinmax == rhs.samplerFilterMinmax ) && ( scalarBlockLayout == rhs.scalarBlockLayout ) &&
+ ( imagelessFramebuffer == rhs.imagelessFramebuffer ) &&
+ ( uniformBufferStandardLayout == rhs.uniformBufferStandardLayout ) &&
+ ( shaderSubgroupExtendedTypes == rhs.shaderSubgroupExtendedTypes ) &&
+ ( separateDepthStencilLayouts == rhs.separateDepthStencilLayouts ) &&
+ ( hostQueryReset == rhs.hostQueryReset ) && ( timelineSemaphore == rhs.timelineSemaphore ) &&
+ ( bufferDeviceAddress == rhs.bufferDeviceAddress ) &&
+ ( bufferDeviceAddressCaptureReplay == rhs.bufferDeviceAddressCaptureReplay ) &&
+ ( bufferDeviceAddressMultiDevice == rhs.bufferDeviceAddressMultiDevice ) &&
+ ( vulkanMemoryModel == rhs.vulkanMemoryModel ) &&
+ ( vulkanMemoryModelDeviceScope == rhs.vulkanMemoryModelDeviceScope ) &&
+ ( vulkanMemoryModelAvailabilityVisibilityChains == rhs.vulkanMemoryModelAvailabilityVisibilityChains ) &&
+ ( shaderOutputViewportIndex == rhs.shaderOutputViewportIndex ) &&
+ ( shaderOutputLayer == rhs.shaderOutputLayer ) &&
+ ( subgroupBroadcastDynamicId == rhs.subgroupBroadcastDynamicId );
+ }
+
+ bool operator!=( PhysicalDeviceVulkan12Features const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceVulkan12Features;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 samplerMirrorClampToEdge = {};
+ VULKAN_HPP_NAMESPACE::Bool32 drawIndirectCount = {};
+ VULKAN_HPP_NAMESPACE::Bool32 storageBuffer8BitAccess = {};
+ VULKAN_HPP_NAMESPACE::Bool32 uniformAndStorageBuffer8BitAccess = {};
+ VULKAN_HPP_NAMESPACE::Bool32 storagePushConstant8 = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderBufferInt64Atomics = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderSharedInt64Atomics = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderFloat16 = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderInt8 = {};
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorIndexing = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderInputAttachmentArrayDynamicIndexing = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderUniformTexelBufferArrayDynamicIndexing = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderStorageTexelBufferArrayDynamicIndexing = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderUniformBufferArrayNonUniformIndexing = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderSampledImageArrayNonUniformIndexing = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderStorageBufferArrayNonUniformIndexing = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageArrayNonUniformIndexing = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderInputAttachmentArrayNonUniformIndexing = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderUniformTexelBufferArrayNonUniformIndexing = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderStorageTexelBufferArrayNonUniformIndexing = {};
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingUniformBufferUpdateAfterBind = {};
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingSampledImageUpdateAfterBind = {};
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingStorageImageUpdateAfterBind = {};
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingStorageBufferUpdateAfterBind = {};
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingUniformTexelBufferUpdateAfterBind = {};
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingStorageTexelBufferUpdateAfterBind = {};
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingUpdateUnusedWhilePending = {};
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingPartiallyBound = {};
+ VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingVariableDescriptorCount = {};
+ VULKAN_HPP_NAMESPACE::Bool32 runtimeDescriptorArray = {};
+ VULKAN_HPP_NAMESPACE::Bool32 samplerFilterMinmax = {};
+ VULKAN_HPP_NAMESPACE::Bool32 scalarBlockLayout = {};
+ VULKAN_HPP_NAMESPACE::Bool32 imagelessFramebuffer = {};
+ VULKAN_HPP_NAMESPACE::Bool32 uniformBufferStandardLayout = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderSubgroupExtendedTypes = {};
+ VULKAN_HPP_NAMESPACE::Bool32 separateDepthStencilLayouts = {};
+ VULKAN_HPP_NAMESPACE::Bool32 hostQueryReset = {};
+ VULKAN_HPP_NAMESPACE::Bool32 timelineSemaphore = {};
+ VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddress = {};
+ VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddressCaptureReplay = {};
+ VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddressMultiDevice = {};
+ VULKAN_HPP_NAMESPACE::Bool32 vulkanMemoryModel = {};
+ VULKAN_HPP_NAMESPACE::Bool32 vulkanMemoryModelDeviceScope = {};
+ VULKAN_HPP_NAMESPACE::Bool32 vulkanMemoryModelAvailabilityVisibilityChains = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderOutputViewportIndex = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderOutputLayer = {};
+ VULKAN_HPP_NAMESPACE::Bool32 subgroupBroadcastDynamicId = {};
+ };
+ static_assert( sizeof( PhysicalDeviceVulkan12Features ) == sizeof( VkPhysicalDeviceVulkan12Features ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceVulkan12Features>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceVulkan12Features>
+ {
+ using Type = PhysicalDeviceVulkan12Features;
+ };
+
+ struct PhysicalDeviceVulkan12Properties
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceVulkan12Properties;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan12Properties(
+ VULKAN_HPP_NAMESPACE::DriverId driverID_ = VULKAN_HPP_NAMESPACE::DriverId::eAmdProprietary,
+ std::array<char, VK_MAX_DRIVER_NAME_SIZE> const & driverName_ = {},
+ std::array<char, VK_MAX_DRIVER_INFO_SIZE> const & driverInfo_ = {},
+ VULKAN_HPP_NAMESPACE::ConformanceVersion conformanceVersion_ = {},
+ VULKAN_HPP_NAMESPACE::ShaderFloatControlsIndependence denormBehaviorIndependence_ =
+ VULKAN_HPP_NAMESPACE::ShaderFloatControlsIndependence::e32BitOnly,
+ VULKAN_HPP_NAMESPACE::ShaderFloatControlsIndependence roundingModeIndependence_ =
+ VULKAN_HPP_NAMESPACE::ShaderFloatControlsIndependence::e32BitOnly,
+ VULKAN_HPP_NAMESPACE::Bool32 shaderSignedZeroInfNanPreserveFloat16_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderSignedZeroInfNanPreserveFloat32_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderSignedZeroInfNanPreserveFloat64_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderDenormPreserveFloat16_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderDenormPreserveFloat32_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderDenormPreserveFloat64_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderDenormFlushToZeroFloat16_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderDenormFlushToZeroFloat32_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderDenormFlushToZeroFloat64_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTEFloat16_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTEFloat32_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTEFloat64_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTZFloat16_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTZFloat32_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTZFloat64_ = {},
+ uint32_t maxUpdateAfterBindDescriptorsInAllPools_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderUniformBufferArrayNonUniformIndexingNative_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderSampledImageArrayNonUniformIndexingNative_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderStorageBufferArrayNonUniformIndexingNative_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageArrayNonUniformIndexingNative_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 shaderInputAttachmentArrayNonUniformIndexingNative_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 robustBufferAccessUpdateAfterBind_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 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_ = {},
+ VULKAN_HPP_NAMESPACE::ResolveModeFlags supportedDepthResolveModes_ = {},
+ VULKAN_HPP_NAMESPACE::ResolveModeFlags supportedStencilResolveModes_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 independentResolveNone_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 independentResolve_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 filterMinmaxSingleComponentFormats_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 filterMinmaxImageComponentMapping_ = {},
+ uint64_t maxTimelineSemaphoreValueDifference_ = {},
+ VULKAN_HPP_NAMESPACE::SampleCountFlags framebufferIntegerColorSampleCounts_ = {} ) VULKAN_HPP_NOEXCEPT
+ : driverID( driverID_ )
+ , driverName( driverName_ )
+ , driverInfo( driverInfo_ )
+ , conformanceVersion( conformanceVersion_ )
+ , denormBehaviorIndependence( denormBehaviorIndependence_ )
+ , roundingModeIndependence( roundingModeIndependence_ )
+ , shaderSignedZeroInfNanPreserveFloat16( shaderSignedZeroInfNanPreserveFloat16_ )
+ , shaderSignedZeroInfNanPreserveFloat32( shaderSignedZeroInfNanPreserveFloat32_ )
+ , shaderSignedZeroInfNanPreserveFloat64( shaderSignedZeroInfNanPreserveFloat64_ )
+ , shaderDenormPreserveFloat16( shaderDenormPreserveFloat16_ )
+ , shaderDenormPreserveFloat32( shaderDenormPreserveFloat32_ )
+ , shaderDenormPreserveFloat64( shaderDenormPreserveFloat64_ )
+ , shaderDenormFlushToZeroFloat16( shaderDenormFlushToZeroFloat16_ )
+ , shaderDenormFlushToZeroFloat32( shaderDenormFlushToZeroFloat32_ )
+ , shaderDenormFlushToZeroFloat64( shaderDenormFlushToZeroFloat64_ )
+ , shaderRoundingModeRTEFloat16( shaderRoundingModeRTEFloat16_ )
+ , shaderRoundingModeRTEFloat32( shaderRoundingModeRTEFloat32_ )
+ , shaderRoundingModeRTEFloat64( shaderRoundingModeRTEFloat64_ )
+ , shaderRoundingModeRTZFloat16( shaderRoundingModeRTZFloat16_ )
+ , shaderRoundingModeRTZFloat32( shaderRoundingModeRTZFloat32_ )
+ , shaderRoundingModeRTZFloat64( shaderRoundingModeRTZFloat64_ )
+ , maxUpdateAfterBindDescriptorsInAllPools( maxUpdateAfterBindDescriptorsInAllPools_ )
+ , shaderUniformBufferArrayNonUniformIndexingNative( shaderUniformBufferArrayNonUniformIndexingNative_ )
+ , shaderSampledImageArrayNonUniformIndexingNative( shaderSampledImageArrayNonUniformIndexingNative_ )
+ , shaderStorageBufferArrayNonUniformIndexingNative( shaderStorageBufferArrayNonUniformIndexingNative_ )
+ , shaderStorageImageArrayNonUniformIndexingNative( shaderStorageImageArrayNonUniformIndexingNative_ )
+ , shaderInputAttachmentArrayNonUniformIndexingNative( shaderInputAttachmentArrayNonUniformIndexingNative_ )
+ , robustBufferAccessUpdateAfterBind( robustBufferAccessUpdateAfterBind_ )
+ , quadDivergentImplicitLod( quadDivergentImplicitLod_ )
+ , maxPerStageDescriptorUpdateAfterBindSamplers( maxPerStageDescriptorUpdateAfterBindSamplers_ )
+ , maxPerStageDescriptorUpdateAfterBindUniformBuffers( maxPerStageDescriptorUpdateAfterBindUniformBuffers_ )
+ , maxPerStageDescriptorUpdateAfterBindStorageBuffers( maxPerStageDescriptorUpdateAfterBindStorageBuffers_ )
+ , maxPerStageDescriptorUpdateAfterBindSampledImages( maxPerStageDescriptorUpdateAfterBindSampledImages_ )
+ , maxPerStageDescriptorUpdateAfterBindStorageImages( maxPerStageDescriptorUpdateAfterBindStorageImages_ )
+ , maxPerStageDescriptorUpdateAfterBindInputAttachments( maxPerStageDescriptorUpdateAfterBindInputAttachments_ )
+ , maxPerStageUpdateAfterBindResources( maxPerStageUpdateAfterBindResources_ )
+ , maxDescriptorSetUpdateAfterBindSamplers( maxDescriptorSetUpdateAfterBindSamplers_ )
+ , maxDescriptorSetUpdateAfterBindUniformBuffers( maxDescriptorSetUpdateAfterBindUniformBuffers_ )
+ , maxDescriptorSetUpdateAfterBindUniformBuffersDynamic( maxDescriptorSetUpdateAfterBindUniformBuffersDynamic_ )
+ , maxDescriptorSetUpdateAfterBindStorageBuffers( maxDescriptorSetUpdateAfterBindStorageBuffers_ )
+ , maxDescriptorSetUpdateAfterBindStorageBuffersDynamic( maxDescriptorSetUpdateAfterBindStorageBuffersDynamic_ )
+ , maxDescriptorSetUpdateAfterBindSampledImages( maxDescriptorSetUpdateAfterBindSampledImages_ )
+ , maxDescriptorSetUpdateAfterBindStorageImages( maxDescriptorSetUpdateAfterBindStorageImages_ )
+ , maxDescriptorSetUpdateAfterBindInputAttachments( maxDescriptorSetUpdateAfterBindInputAttachments_ )
+ , supportedDepthResolveModes( supportedDepthResolveModes_ )
+ , supportedStencilResolveModes( supportedStencilResolveModes_ )
+ , independentResolveNone( independentResolveNone_ )
+ , independentResolve( independentResolve_ )
+ , filterMinmaxSingleComponentFormats( filterMinmaxSingleComponentFormats_ )
+ , filterMinmaxImageComponentMapping( filterMinmaxImageComponentMapping_ )
+ , maxTimelineSemaphoreValueDifference( maxTimelineSemaphoreValueDifference_ )
+ , framebufferIntegerColorSampleCounts( framebufferIntegerColorSampleCounts_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR_14
+ PhysicalDeviceVulkan12Properties( PhysicalDeviceVulkan12Properties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceVulkan12Properties( VkPhysicalDeviceVulkan12Properties const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceVulkan12Properties( *reinterpret_cast<PhysicalDeviceVulkan12Properties const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan12Properties &
+ operator=( PhysicalDeviceVulkan12Properties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceVulkan12Properties & operator=( VkPhysicalDeviceVulkan12Properties const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceVulkan12Properties const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPhysicalDeviceVulkan12Properties const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceVulkan12Properties *>( this );
+ }
+
+ operator VkPhysicalDeviceVulkan12Properties &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceVulkan12Properties *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceVulkan12Properties const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceVulkan12Properties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( driverID == rhs.driverID ) &&
+ ( driverName == rhs.driverName ) && ( driverInfo == rhs.driverInfo ) &&
+ ( conformanceVersion == rhs.conformanceVersion ) &&
+ ( denormBehaviorIndependence == rhs.denormBehaviorIndependence ) &&
+ ( roundingModeIndependence == rhs.roundingModeIndependence ) &&
+ ( shaderSignedZeroInfNanPreserveFloat16 == rhs.shaderSignedZeroInfNanPreserveFloat16 ) &&
+ ( shaderSignedZeroInfNanPreserveFloat32 == rhs.shaderSignedZeroInfNanPreserveFloat32 ) &&
+ ( shaderSignedZeroInfNanPreserveFloat64 == rhs.shaderSignedZeroInfNanPreserveFloat64 ) &&
+ ( shaderDenormPreserveFloat16 == rhs.shaderDenormPreserveFloat16 ) &&
+ ( shaderDenormPreserveFloat32 == rhs.shaderDenormPreserveFloat32 ) &&
+ ( shaderDenormPreserveFloat64 == rhs.shaderDenormPreserveFloat64 ) &&
+ ( shaderDenormFlushToZeroFloat16 == rhs.shaderDenormFlushToZeroFloat16 ) &&
+ ( shaderDenormFlushToZeroFloat32 == rhs.shaderDenormFlushToZeroFloat32 ) &&
+ ( shaderDenormFlushToZeroFloat64 == rhs.shaderDenormFlushToZeroFloat64 ) &&
+ ( shaderRoundingModeRTEFloat16 == rhs.shaderRoundingModeRTEFloat16 ) &&
+ ( shaderRoundingModeRTEFloat32 == rhs.shaderRoundingModeRTEFloat32 ) &&
+ ( shaderRoundingModeRTEFloat64 == rhs.shaderRoundingModeRTEFloat64 ) &&
+ ( shaderRoundingModeRTZFloat16 == rhs.shaderRoundingModeRTZFloat16 ) &&
+ ( shaderRoundingModeRTZFloat32 == rhs.shaderRoundingModeRTZFloat32 ) &&
+ ( shaderRoundingModeRTZFloat64 == rhs.shaderRoundingModeRTZFloat64 ) &&
+ ( maxUpdateAfterBindDescriptorsInAllPools == rhs.maxUpdateAfterBindDescriptorsInAllPools ) &&
+ ( shaderUniformBufferArrayNonUniformIndexingNative ==
+ rhs.shaderUniformBufferArrayNonUniformIndexingNative ) &&
+ ( shaderSampledImageArrayNonUniformIndexingNative ==
+ rhs.shaderSampledImageArrayNonUniformIndexingNative ) &&
+ ( shaderStorageBufferArrayNonUniformIndexingNative ==
+ rhs.shaderStorageBufferArrayNonUniformIndexingNative ) &&
+ ( shaderStorageImageArrayNonUniformIndexingNative ==
+ rhs.shaderStorageImageArrayNonUniformIndexingNative ) &&
+ ( shaderInputAttachmentArrayNonUniformIndexingNative ==
+ rhs.shaderInputAttachmentArrayNonUniformIndexingNative ) &&
+ ( robustBufferAccessUpdateAfterBind == rhs.robustBufferAccessUpdateAfterBind ) &&
+ ( quadDivergentImplicitLod == rhs.quadDivergentImplicitLod ) &&
+ ( maxPerStageDescriptorUpdateAfterBindSamplers == rhs.maxPerStageDescriptorUpdateAfterBindSamplers ) &&
+ ( maxPerStageDescriptorUpdateAfterBindUniformBuffers ==
+ rhs.maxPerStageDescriptorUpdateAfterBindUniformBuffers ) &&
+ ( maxPerStageDescriptorUpdateAfterBindStorageBuffers ==
+ rhs.maxPerStageDescriptorUpdateAfterBindStorageBuffers ) &&
+ ( maxPerStageDescriptorUpdateAfterBindSampledImages ==
+ rhs.maxPerStageDescriptorUpdateAfterBindSampledImages ) &&
+ ( maxPerStageDescriptorUpdateAfterBindStorageImages ==
+ rhs.maxPerStageDescriptorUpdateAfterBindStorageImages ) &&
+ ( maxPerStageDescriptorUpdateAfterBindInputAttachments ==
+ rhs.maxPerStageDescriptorUpdateAfterBindInputAttachments ) &&
+ ( maxPerStageUpdateAfterBindResources == rhs.maxPerStageUpdateAfterBindResources ) &&
+ ( maxDescriptorSetUpdateAfterBindSamplers == rhs.maxDescriptorSetUpdateAfterBindSamplers ) &&
+ ( maxDescriptorSetUpdateAfterBindUniformBuffers == rhs.maxDescriptorSetUpdateAfterBindUniformBuffers ) &&
+ ( maxDescriptorSetUpdateAfterBindUniformBuffersDynamic ==
+ rhs.maxDescriptorSetUpdateAfterBindUniformBuffersDynamic ) &&
+ ( maxDescriptorSetUpdateAfterBindStorageBuffers == rhs.maxDescriptorSetUpdateAfterBindStorageBuffers ) &&
+ ( maxDescriptorSetUpdateAfterBindStorageBuffersDynamic ==
+ rhs.maxDescriptorSetUpdateAfterBindStorageBuffersDynamic ) &&
+ ( maxDescriptorSetUpdateAfterBindSampledImages == rhs.maxDescriptorSetUpdateAfterBindSampledImages ) &&
+ ( maxDescriptorSetUpdateAfterBindStorageImages == rhs.maxDescriptorSetUpdateAfterBindStorageImages ) &&
+ ( maxDescriptorSetUpdateAfterBindInputAttachments ==
+ rhs.maxDescriptorSetUpdateAfterBindInputAttachments ) &&
+ ( supportedDepthResolveModes == rhs.supportedDepthResolveModes ) &&
+ ( supportedStencilResolveModes == rhs.supportedStencilResolveModes ) &&
+ ( independentResolveNone == rhs.independentResolveNone ) &&
+ ( independentResolve == rhs.independentResolve ) &&
+ ( filterMinmaxSingleComponentFormats == rhs.filterMinmaxSingleComponentFormats ) &&
+ ( filterMinmaxImageComponentMapping == rhs.filterMinmaxImageComponentMapping ) &&
+ ( maxTimelineSemaphoreValueDifference == rhs.maxTimelineSemaphoreValueDifference ) &&
+ ( framebufferIntegerColorSampleCounts == rhs.framebufferIntegerColorSampleCounts );
+ }
+
+ bool operator!=( PhysicalDeviceVulkan12Properties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceVulkan12Properties;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::DriverId driverID = VULKAN_HPP_NAMESPACE::DriverId::eAmdProprietary;
+ VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DRIVER_NAME_SIZE> driverName = {};
+ VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DRIVER_INFO_SIZE> driverInfo = {};
+ VULKAN_HPP_NAMESPACE::ConformanceVersion conformanceVersion = {};
+ VULKAN_HPP_NAMESPACE::ShaderFloatControlsIndependence denormBehaviorIndependence =
+ VULKAN_HPP_NAMESPACE::ShaderFloatControlsIndependence::e32BitOnly;
+ VULKAN_HPP_NAMESPACE::ShaderFloatControlsIndependence roundingModeIndependence =
+ VULKAN_HPP_NAMESPACE::ShaderFloatControlsIndependence::e32BitOnly;
+ VULKAN_HPP_NAMESPACE::Bool32 shaderSignedZeroInfNanPreserveFloat16 = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderSignedZeroInfNanPreserveFloat32 = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderSignedZeroInfNanPreserveFloat64 = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderDenormPreserveFloat16 = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderDenormPreserveFloat32 = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderDenormPreserveFloat64 = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderDenormFlushToZeroFloat16 = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderDenormFlushToZeroFloat32 = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderDenormFlushToZeroFloat64 = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTEFloat16 = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTEFloat32 = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTEFloat64 = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTZFloat16 = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTZFloat32 = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTZFloat64 = {};
+ uint32_t maxUpdateAfterBindDescriptorsInAllPools = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderUniformBufferArrayNonUniformIndexingNative = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderSampledImageArrayNonUniformIndexingNative = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderStorageBufferArrayNonUniformIndexingNative = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageArrayNonUniformIndexingNative = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderInputAttachmentArrayNonUniformIndexingNative = {};
+ VULKAN_HPP_NAMESPACE::Bool32 robustBufferAccessUpdateAfterBind = {};
+ VULKAN_HPP_NAMESPACE::Bool32 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 = {};
+ VULKAN_HPP_NAMESPACE::ResolveModeFlags supportedDepthResolveModes = {};
+ VULKAN_HPP_NAMESPACE::ResolveModeFlags supportedStencilResolveModes = {};
+ VULKAN_HPP_NAMESPACE::Bool32 independentResolveNone = {};
+ VULKAN_HPP_NAMESPACE::Bool32 independentResolve = {};
+ VULKAN_HPP_NAMESPACE::Bool32 filterMinmaxSingleComponentFormats = {};
+ VULKAN_HPP_NAMESPACE::Bool32 filterMinmaxImageComponentMapping = {};
+ uint64_t maxTimelineSemaphoreValueDifference = {};
+ VULKAN_HPP_NAMESPACE::SampleCountFlags framebufferIntegerColorSampleCounts = {};
+ };
+ static_assert( sizeof( PhysicalDeviceVulkan12Properties ) == sizeof( VkPhysicalDeviceVulkan12Properties ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceVulkan12Properties>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceVulkan12Properties>
+ {
+ using Type = PhysicalDeviceVulkan12Properties;
+ };
+
+ struct PhysicalDeviceVulkanMemoryModelFeatures
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceVulkanMemoryModelFeatures;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceVulkanMemoryModelFeatures(
+ VULKAN_HPP_NAMESPACE::Bool32 vulkanMemoryModel_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 vulkanMemoryModelDeviceScope_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 vulkanMemoryModelAvailabilityVisibilityChains_ = {} ) VULKAN_HPP_NOEXCEPT
+ : vulkanMemoryModel( vulkanMemoryModel_ )
+ , vulkanMemoryModelDeviceScope( vulkanMemoryModelDeviceScope_ )
+ , vulkanMemoryModelAvailabilityVisibilityChains( vulkanMemoryModelAvailabilityVisibilityChains_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceVulkanMemoryModelFeatures( PhysicalDeviceVulkanMemoryModelFeatures const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceVulkanMemoryModelFeatures( VkPhysicalDeviceVulkanMemoryModelFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceVulkanMemoryModelFeatures(
+ *reinterpret_cast<PhysicalDeviceVulkanMemoryModelFeatures const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkanMemoryModelFeatures &
+ operator=( PhysicalDeviceVulkanMemoryModelFeatures const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceVulkanMemoryModelFeatures &
+ operator=( VkPhysicalDeviceVulkanMemoryModelFeatures const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceVulkanMemoryModelFeatures const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceVulkanMemoryModelFeatures & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkanMemoryModelFeatures &
+ setVulkanMemoryModel( VULKAN_HPP_NAMESPACE::Bool32 vulkanMemoryModel_ ) VULKAN_HPP_NOEXCEPT
+ {
+ vulkanMemoryModel = vulkanMemoryModel_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkanMemoryModelFeatures &
+ setVulkanMemoryModelDeviceScope( VULKAN_HPP_NAMESPACE::Bool32 vulkanMemoryModelDeviceScope_ ) VULKAN_HPP_NOEXCEPT
+ {
+ vulkanMemoryModelDeviceScope = vulkanMemoryModelDeviceScope_;
+ return *this;
+ }
+
+ PhysicalDeviceVulkanMemoryModelFeatures & setVulkanMemoryModelAvailabilityVisibilityChains(
+ VULKAN_HPP_NAMESPACE::Bool32 vulkanMemoryModelAvailabilityVisibilityChains_ ) VULKAN_HPP_NOEXCEPT
+ {
+ vulkanMemoryModelAvailabilityVisibilityChains = vulkanMemoryModelAvailabilityVisibilityChains_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceVulkanMemoryModelFeatures const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceVulkanMemoryModelFeatures *>( this );
+ }
+
+ operator VkPhysicalDeviceVulkanMemoryModelFeatures &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceVulkanMemoryModelFeatures *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceVulkanMemoryModelFeatures const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceVulkanMemoryModelFeatures const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( vulkanMemoryModel == rhs.vulkanMemoryModel ) &&
+ ( vulkanMemoryModelDeviceScope == rhs.vulkanMemoryModelDeviceScope ) &&
+ ( vulkanMemoryModelAvailabilityVisibilityChains == rhs.vulkanMemoryModelAvailabilityVisibilityChains );
+ }
+
+ bool operator!=( PhysicalDeviceVulkanMemoryModelFeatures const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceVulkanMemoryModelFeatures;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 vulkanMemoryModel = {};
+ VULKAN_HPP_NAMESPACE::Bool32 vulkanMemoryModelDeviceScope = {};
+ VULKAN_HPP_NAMESPACE::Bool32 vulkanMemoryModelAvailabilityVisibilityChains = {};
+ };
+ static_assert( sizeof( PhysicalDeviceVulkanMemoryModelFeatures ) ==
+ sizeof( VkPhysicalDeviceVulkanMemoryModelFeatures ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceVulkanMemoryModelFeatures>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceVulkanMemoryModelFeatures>
+ {
+ using Type = PhysicalDeviceVulkanMemoryModelFeatures;
+ };
+ using PhysicalDeviceVulkanMemoryModelFeaturesKHR = PhysicalDeviceVulkanMemoryModelFeatures;
+
+ struct PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR(
+ VULKAN_HPP_NAMESPACE::Bool32 workgroupMemoryExplicitLayout_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 workgroupMemoryExplicitLayoutScalarBlockLayout_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 workgroupMemoryExplicitLayout8BitAccess_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 workgroupMemoryExplicitLayout16BitAccess_ = {} ) VULKAN_HPP_NOEXCEPT
+ : workgroupMemoryExplicitLayout( workgroupMemoryExplicitLayout_ )
+ , workgroupMemoryExplicitLayoutScalarBlockLayout( workgroupMemoryExplicitLayoutScalarBlockLayout_ )
+ , workgroupMemoryExplicitLayout8BitAccess( workgroupMemoryExplicitLayout8BitAccess_ )
+ , workgroupMemoryExplicitLayout16BitAccess( workgroupMemoryExplicitLayout16BitAccess_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR(
+ PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR(
+ VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR(
+ *reinterpret_cast<PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR &
+ operator=( PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR &
+ operator=( VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this =
+ *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR & setWorkgroupMemoryExplicitLayout(
+ VULKAN_HPP_NAMESPACE::Bool32 workgroupMemoryExplicitLayout_ ) VULKAN_HPP_NOEXCEPT
+ {
+ workgroupMemoryExplicitLayout = workgroupMemoryExplicitLayout_;
+ return *this;
+ }
+
+ PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR & setWorkgroupMemoryExplicitLayoutScalarBlockLayout(
+ VULKAN_HPP_NAMESPACE::Bool32 workgroupMemoryExplicitLayoutScalarBlockLayout_ ) VULKAN_HPP_NOEXCEPT
+ {
+ workgroupMemoryExplicitLayoutScalarBlockLayout = workgroupMemoryExplicitLayoutScalarBlockLayout_;
+ return *this;
+ }
+
+ PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR & setWorkgroupMemoryExplicitLayout8BitAccess(
+ VULKAN_HPP_NAMESPACE::Bool32 workgroupMemoryExplicitLayout8BitAccess_ ) VULKAN_HPP_NOEXCEPT
+ {
+ workgroupMemoryExplicitLayout8BitAccess = workgroupMemoryExplicitLayout8BitAccess_;
+ return *this;
+ }
+
+ PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR & setWorkgroupMemoryExplicitLayout16BitAccess(
+ VULKAN_HPP_NAMESPACE::Bool32 workgroupMemoryExplicitLayout16BitAccess_ ) VULKAN_HPP_NOEXCEPT
+ {
+ workgroupMemoryExplicitLayout16BitAccess = workgroupMemoryExplicitLayout16BitAccess_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR *>( this );
+ }
+
+ operator VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( workgroupMemoryExplicitLayout == rhs.workgroupMemoryExplicitLayout ) &&
+ ( workgroupMemoryExplicitLayoutScalarBlockLayout == rhs.workgroupMemoryExplicitLayoutScalarBlockLayout ) &&
+ ( workgroupMemoryExplicitLayout8BitAccess == rhs.workgroupMemoryExplicitLayout8BitAccess ) &&
+ ( workgroupMemoryExplicitLayout16BitAccess == rhs.workgroupMemoryExplicitLayout16BitAccess );
+ }
+
+ bool operator!=( PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 workgroupMemoryExplicitLayout = {};
+ VULKAN_HPP_NAMESPACE::Bool32 workgroupMemoryExplicitLayoutScalarBlockLayout = {};
+ VULKAN_HPP_NAMESPACE::Bool32 workgroupMemoryExplicitLayout8BitAccess = {};
+ VULKAN_HPP_NAMESPACE::Bool32 workgroupMemoryExplicitLayout16BitAccess = {};
+ };
+ static_assert( sizeof( PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR ) ==
+ sizeof( VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR>
+ {
+ using Type = PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR;
+ };
+
+ struct PhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT(
+ VULKAN_HPP_NAMESPACE::Bool32 ycbcr2plane444Formats_ = {} ) VULKAN_HPP_NOEXCEPT
+ : ycbcr2plane444Formats( ycbcr2plane444Formats_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT(
+ PhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT( VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT(
+ *reinterpret_cast<PhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT &
+ operator=( PhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT &
+ operator=( VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT &
+ setYcbcr2plane444Formats( VULKAN_HPP_NAMESPACE::Bool32 ycbcr2plane444Formats_ ) VULKAN_HPP_NOEXCEPT
+ {
+ ycbcr2plane444Formats = ycbcr2plane444Formats_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT *>( this );
+ }
+
+ operator VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( ycbcr2plane444Formats == rhs.ycbcr2plane444Formats );
+ }
+
+ bool operator!=( PhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 ycbcr2plane444Formats = {};
+ };
+ static_assert( sizeof( PhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT ) ==
+ sizeof( VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT>
+ {
+ using Type = PhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT;
+ };
+
+ struct PhysicalDeviceYcbcrImageArraysFeaturesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceYcbcrImageArraysFeaturesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceYcbcrImageArraysFeaturesEXT(
+ VULKAN_HPP_NAMESPACE::Bool32 ycbcrImageArrays_ = {} ) VULKAN_HPP_NOEXCEPT : ycbcrImageArrays( ycbcrImageArrays_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceYcbcrImageArraysFeaturesEXT(
+ PhysicalDeviceYcbcrImageArraysFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceYcbcrImageArraysFeaturesEXT( VkPhysicalDeviceYcbcrImageArraysFeaturesEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceYcbcrImageArraysFeaturesEXT(
+ *reinterpret_cast<PhysicalDeviceYcbcrImageArraysFeaturesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceYcbcrImageArraysFeaturesEXT &
+ operator=( PhysicalDeviceYcbcrImageArraysFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceYcbcrImageArraysFeaturesEXT &
+ operator=( VkPhysicalDeviceYcbcrImageArraysFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceYcbcrImageArraysFeaturesEXT const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceYcbcrImageArraysFeaturesEXT & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceYcbcrImageArraysFeaturesEXT &
+ setYcbcrImageArrays( VULKAN_HPP_NAMESPACE::Bool32 ycbcrImageArrays_ ) VULKAN_HPP_NOEXCEPT
+ {
+ ycbcrImageArrays = ycbcrImageArrays_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceYcbcrImageArraysFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceYcbcrImageArraysFeaturesEXT *>( this );
+ }
+
+ operator VkPhysicalDeviceYcbcrImageArraysFeaturesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceYcbcrImageArraysFeaturesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceYcbcrImageArraysFeaturesEXT const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceYcbcrImageArraysFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( ycbcrImageArrays == rhs.ycbcrImageArrays );
+ }
+
+ bool operator!=( PhysicalDeviceYcbcrImageArraysFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceYcbcrImageArraysFeaturesEXT;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 ycbcrImageArrays = {};
+ };
+ static_assert( sizeof( PhysicalDeviceYcbcrImageArraysFeaturesEXT ) ==
+ sizeof( VkPhysicalDeviceYcbcrImageArraysFeaturesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceYcbcrImageArraysFeaturesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceYcbcrImageArraysFeaturesEXT>
+ {
+ using Type = PhysicalDeviceYcbcrImageArraysFeaturesEXT;
+ };
+
+ struct PhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR(
+ VULKAN_HPP_NAMESPACE::Bool32 shaderZeroInitializeWorkgroupMemory_ = {} ) VULKAN_HPP_NOEXCEPT
+ : shaderZeroInitializeWorkgroupMemory( shaderZeroInitializeWorkgroupMemory_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR(
+ PhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR(
+ VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR(
+ *reinterpret_cast<PhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR &
+ operator=( PhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR &
+ operator=( VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this =
+ *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR const *>( &rhs );
+ return *this;
+ }
+
+ PhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR & setShaderZeroInitializeWorkgroupMemory(
+ VULKAN_HPP_NAMESPACE::Bool32 shaderZeroInitializeWorkgroupMemory_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shaderZeroInitializeWorkgroupMemory = shaderZeroInitializeWorkgroupMemory_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR *>( this );
+ }
+
+ operator VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR const & ) const = default;
+#else
+ bool operator==( PhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( shaderZeroInitializeWorkgroupMemory == rhs.shaderZeroInitializeWorkgroupMemory );
+ }
+
+ bool operator!=( PhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shaderZeroInitializeWorkgroupMemory = {};
+ };
+ static_assert( sizeof( PhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR ) ==
+ sizeof( VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR>
+ {
+ using Type = PhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR;
+ };
+
+ struct PipelineCacheCreateInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineCacheCreateInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PipelineCacheCreateInfo( VULKAN_HPP_NAMESPACE::PipelineCacheCreateFlags flags_ = {},
+ size_t initialDataSize_ = {},
+ const void * pInitialData_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , initialDataSize( initialDataSize_ )
+ , pInitialData( pInitialData_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PipelineCacheCreateInfo( PipelineCacheCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineCacheCreateInfo( VkPipelineCacheCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PipelineCacheCreateInfo( *reinterpret_cast<PipelineCacheCreateInfo const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ template <typename T>
+ PipelineCacheCreateInfo( VULKAN_HPP_NAMESPACE::PipelineCacheCreateFlags flags_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const T> const & initialData_ )
+ : flags( flags_ ), initialDataSize( initialData_.size() * sizeof( T ) ), pInitialData( initialData_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PipelineCacheCreateInfo &
+ operator=( PipelineCacheCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineCacheCreateInfo & operator=( VkPipelineCacheCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineCacheCreateInfo const *>( &rhs );
+ return *this;
+ }
+
+ PipelineCacheCreateInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PipelineCacheCreateInfo & setFlags( VULKAN_HPP_NAMESPACE::PipelineCacheCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ PipelineCacheCreateInfo & setInitialDataSize( size_t initialDataSize_ ) VULKAN_HPP_NOEXCEPT
+ {
+ initialDataSize = initialDataSize_;
+ return *this;
+ }
+
+ PipelineCacheCreateInfo & setPInitialData( const void * pInitialData_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pInitialData = pInitialData_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ template <typename T>
+ PipelineCacheCreateInfo &
+ setInitialData( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const T> const & initialData_ ) VULKAN_HPP_NOEXCEPT
+ {
+ initialDataSize = initialData_.size() * sizeof( T );
+ pInitialData = initialData_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkPipelineCacheCreateInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPipelineCacheCreateInfo *>( this );
+ }
+
+ operator VkPipelineCacheCreateInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPipelineCacheCreateInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PipelineCacheCreateInfo const & ) const = default;
+#else
+ bool operator==( PipelineCacheCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( initialDataSize == rhs.initialDataSize ) && ( pInitialData == rhs.pInitialData );
+ }
+
+ bool operator!=( PipelineCacheCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineCacheCreateInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::PipelineCacheCreateFlags flags = {};
+ size_t initialDataSize = {};
+ const void * pInitialData = {};
+ };
+ static_assert( sizeof( PipelineCacheCreateInfo ) == sizeof( VkPipelineCacheCreateInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PipelineCacheCreateInfo>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePipelineCacheCreateInfo>
+ {
+ using Type = PipelineCacheCreateInfo;
+ };
+
+ struct PipelineColorBlendAdvancedStateCreateInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePipelineColorBlendAdvancedStateCreateInfoEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PipelineColorBlendAdvancedStateCreateInfoEXT(
+ VULKAN_HPP_NAMESPACE::Bool32 srcPremultiplied_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 dstPremultiplied_ = {},
+ VULKAN_HPP_NAMESPACE::BlendOverlapEXT blendOverlap_ = VULKAN_HPP_NAMESPACE::BlendOverlapEXT::eUncorrelated )
+ VULKAN_HPP_NOEXCEPT
+ : srcPremultiplied( srcPremultiplied_ )
+ , dstPremultiplied( dstPremultiplied_ )
+ , blendOverlap( blendOverlap_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PipelineColorBlendAdvancedStateCreateInfoEXT(
+ PipelineColorBlendAdvancedStateCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineColorBlendAdvancedStateCreateInfoEXT( VkPipelineColorBlendAdvancedStateCreateInfoEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PipelineColorBlendAdvancedStateCreateInfoEXT(
+ *reinterpret_cast<PipelineColorBlendAdvancedStateCreateInfoEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PipelineColorBlendAdvancedStateCreateInfoEXT &
+ operator=( PipelineColorBlendAdvancedStateCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineColorBlendAdvancedStateCreateInfoEXT &
+ operator=( VkPipelineColorBlendAdvancedStateCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineColorBlendAdvancedStateCreateInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ PipelineColorBlendAdvancedStateCreateInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PipelineColorBlendAdvancedStateCreateInfoEXT &
+ setSrcPremultiplied( VULKAN_HPP_NAMESPACE::Bool32 srcPremultiplied_ ) VULKAN_HPP_NOEXCEPT
+ {
+ srcPremultiplied = srcPremultiplied_;
+ return *this;
+ }
+
+ PipelineColorBlendAdvancedStateCreateInfoEXT &
+ setDstPremultiplied( VULKAN_HPP_NAMESPACE::Bool32 dstPremultiplied_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstPremultiplied = dstPremultiplied_;
+ return *this;
+ }
+
+ PipelineColorBlendAdvancedStateCreateInfoEXT &
+ setBlendOverlap( VULKAN_HPP_NAMESPACE::BlendOverlapEXT blendOverlap_ ) VULKAN_HPP_NOEXCEPT
+ {
+ blendOverlap = blendOverlap_;
+ return *this;
+ }
+
+ operator VkPipelineColorBlendAdvancedStateCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPipelineColorBlendAdvancedStateCreateInfoEXT *>( this );
+ }
+
+ operator VkPipelineColorBlendAdvancedStateCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPipelineColorBlendAdvancedStateCreateInfoEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PipelineColorBlendAdvancedStateCreateInfoEXT const & ) const = default;
+#else
+ bool operator==( PipelineColorBlendAdvancedStateCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( srcPremultiplied == rhs.srcPremultiplied ) &&
+ ( dstPremultiplied == rhs.dstPremultiplied ) && ( blendOverlap == rhs.blendOverlap );
+ }
+
+ bool operator!=( PipelineColorBlendAdvancedStateCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineColorBlendAdvancedStateCreateInfoEXT;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 srcPremultiplied = {};
+ VULKAN_HPP_NAMESPACE::Bool32 dstPremultiplied = {};
+ VULKAN_HPP_NAMESPACE::BlendOverlapEXT blendOverlap = VULKAN_HPP_NAMESPACE::BlendOverlapEXT::eUncorrelated;
+ };
+ static_assert( sizeof( PipelineColorBlendAdvancedStateCreateInfoEXT ) ==
+ sizeof( VkPipelineColorBlendAdvancedStateCreateInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PipelineColorBlendAdvancedStateCreateInfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePipelineColorBlendAdvancedStateCreateInfoEXT>
+ {
+ using Type = PipelineColorBlendAdvancedStateCreateInfoEXT;
+ };
+
+ struct PipelineColorWriteCreateInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineColorWriteCreateInfoEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PipelineColorWriteCreateInfoEXT(
+ uint32_t attachmentCount_ = {},
+ const VULKAN_HPP_NAMESPACE::Bool32 * pColorWriteEnables_ = {} ) VULKAN_HPP_NOEXCEPT
+ : attachmentCount( attachmentCount_ )
+ , pColorWriteEnables( pColorWriteEnables_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ PipelineColorWriteCreateInfoEXT( PipelineColorWriteCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineColorWriteCreateInfoEXT( VkPipelineColorWriteCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PipelineColorWriteCreateInfoEXT( *reinterpret_cast<PipelineColorWriteCreateInfoEXT const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ PipelineColorWriteCreateInfoEXT(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Bool32> const & colorWriteEnables_ )
+ : attachmentCount( static_cast<uint32_t>( colorWriteEnables_.size() ) )
+ , pColorWriteEnables( colorWriteEnables_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PipelineColorWriteCreateInfoEXT &
+ operator=( PipelineColorWriteCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineColorWriteCreateInfoEXT & operator=( VkPipelineColorWriteCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineColorWriteCreateInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ PipelineColorWriteCreateInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PipelineColorWriteCreateInfoEXT & setAttachmentCount( uint32_t attachmentCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ attachmentCount = attachmentCount_;
+ return *this;
+ }
+
+ PipelineColorWriteCreateInfoEXT &
+ setPColorWriteEnables( const VULKAN_HPP_NAMESPACE::Bool32 * pColorWriteEnables_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pColorWriteEnables = pColorWriteEnables_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ PipelineColorWriteCreateInfoEXT & setColorWriteEnables(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Bool32> const & colorWriteEnables_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ attachmentCount = static_cast<uint32_t>( colorWriteEnables_.size() );
+ pColorWriteEnables = colorWriteEnables_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkPipelineColorWriteCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPipelineColorWriteCreateInfoEXT *>( this );
+ }
+
+ operator VkPipelineColorWriteCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPipelineColorWriteCreateInfoEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PipelineColorWriteCreateInfoEXT const & ) const = default;
+#else
+ bool operator==( PipelineColorWriteCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( attachmentCount == rhs.attachmentCount ) &&
+ ( pColorWriteEnables == rhs.pColorWriteEnables );
+ }
+
+ bool operator!=( PipelineColorWriteCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineColorWriteCreateInfoEXT;
+ const void * pNext = {};
+ uint32_t attachmentCount = {};
+ const VULKAN_HPP_NAMESPACE::Bool32 * pColorWriteEnables = {};
+ };
+ static_assert( sizeof( PipelineColorWriteCreateInfoEXT ) == sizeof( VkPipelineColorWriteCreateInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PipelineColorWriteCreateInfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePipelineColorWriteCreateInfoEXT>
+ {
+ using Type = PipelineColorWriteCreateInfoEXT;
+ };
+
+ struct PipelineCompilerControlCreateInfoAMD
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePipelineCompilerControlCreateInfoAMD;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PipelineCompilerControlCreateInfoAMD(
+ VULKAN_HPP_NAMESPACE::PipelineCompilerControlFlagsAMD compilerControlFlags_ = {} ) VULKAN_HPP_NOEXCEPT
+ : compilerControlFlags( compilerControlFlags_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PipelineCompilerControlCreateInfoAMD( PipelineCompilerControlCreateInfoAMD const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineCompilerControlCreateInfoAMD( VkPipelineCompilerControlCreateInfoAMD const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PipelineCompilerControlCreateInfoAMD( *reinterpret_cast<PipelineCompilerControlCreateInfoAMD const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PipelineCompilerControlCreateInfoAMD &
+ operator=( PipelineCompilerControlCreateInfoAMD const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineCompilerControlCreateInfoAMD &
+ operator=( VkPipelineCompilerControlCreateInfoAMD const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineCompilerControlCreateInfoAMD const *>( &rhs );
+ return *this;
+ }
+
+ PipelineCompilerControlCreateInfoAMD & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PipelineCompilerControlCreateInfoAMD & setCompilerControlFlags(
+ VULKAN_HPP_NAMESPACE::PipelineCompilerControlFlagsAMD compilerControlFlags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ compilerControlFlags = compilerControlFlags_;
+ return *this;
+ }
+
+ operator VkPipelineCompilerControlCreateInfoAMD const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPipelineCompilerControlCreateInfoAMD *>( this );
+ }
+
+ operator VkPipelineCompilerControlCreateInfoAMD &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPipelineCompilerControlCreateInfoAMD *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PipelineCompilerControlCreateInfoAMD const & ) const = default;
+#else
+ bool operator==( PipelineCompilerControlCreateInfoAMD const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( compilerControlFlags == rhs.compilerControlFlags );
+ }
+
+ bool operator!=( PipelineCompilerControlCreateInfoAMD const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineCompilerControlCreateInfoAMD;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::PipelineCompilerControlFlagsAMD compilerControlFlags = {};
+ };
+ static_assert( sizeof( PipelineCompilerControlCreateInfoAMD ) == sizeof( VkPipelineCompilerControlCreateInfoAMD ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PipelineCompilerControlCreateInfoAMD>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePipelineCompilerControlCreateInfoAMD>
+ {
+ using Type = PipelineCompilerControlCreateInfoAMD;
+ };
+
+ struct PipelineCoverageModulationStateCreateInfoNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePipelineCoverageModulationStateCreateInfoNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PipelineCoverageModulationStateCreateInfoNV(
+ VULKAN_HPP_NAMESPACE::PipelineCoverageModulationStateCreateFlagsNV flags_ = {},
+ VULKAN_HPP_NAMESPACE::CoverageModulationModeNV coverageModulationMode_ =
+ VULKAN_HPP_NAMESPACE::CoverageModulationModeNV::eNone,
+ VULKAN_HPP_NAMESPACE::Bool32 coverageModulationTableEnable_ = {},
+ uint32_t coverageModulationTableCount_ = {},
+ const float * pCoverageModulationTable_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , coverageModulationMode( coverageModulationMode_ )
+ , coverageModulationTableEnable( coverageModulationTableEnable_ )
+ , coverageModulationTableCount( coverageModulationTableCount_ )
+ , pCoverageModulationTable( pCoverageModulationTable_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PipelineCoverageModulationStateCreateInfoNV(
+ PipelineCoverageModulationStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineCoverageModulationStateCreateInfoNV( VkPipelineCoverageModulationStateCreateInfoNV const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PipelineCoverageModulationStateCreateInfoNV(
+ *reinterpret_cast<PipelineCoverageModulationStateCreateInfoNV const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ PipelineCoverageModulationStateCreateInfoNV(
+ VULKAN_HPP_NAMESPACE::PipelineCoverageModulationStateCreateFlagsNV flags_,
+ VULKAN_HPP_NAMESPACE::CoverageModulationModeNV coverageModulationMode_,
+ VULKAN_HPP_NAMESPACE::Bool32 coverageModulationTableEnable_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const float> const & coverageModulationTable_ )
+ : flags( flags_ )
+ , coverageModulationMode( coverageModulationMode_ )
+ , coverageModulationTableEnable( coverageModulationTableEnable_ )
+ , coverageModulationTableCount( static_cast<uint32_t>( coverageModulationTable_.size() ) )
+ , pCoverageModulationTable( coverageModulationTable_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PipelineCoverageModulationStateCreateInfoNV &
+ operator=( PipelineCoverageModulationStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineCoverageModulationStateCreateInfoNV &
+ operator=( VkPipelineCoverageModulationStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineCoverageModulationStateCreateInfoNV const *>( &rhs );
+ return *this;
+ }
+
+ PipelineCoverageModulationStateCreateInfoNV & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PipelineCoverageModulationStateCreateInfoNV &
+ setFlags( VULKAN_HPP_NAMESPACE::PipelineCoverageModulationStateCreateFlagsNV flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ PipelineCoverageModulationStateCreateInfoNV & setCoverageModulationMode(
+ VULKAN_HPP_NAMESPACE::CoverageModulationModeNV coverageModulationMode_ ) VULKAN_HPP_NOEXCEPT
+ {
+ coverageModulationMode = coverageModulationMode_;
+ return *this;
+ }
+
+ PipelineCoverageModulationStateCreateInfoNV & setCoverageModulationTableEnable(
+ VULKAN_HPP_NAMESPACE::Bool32 coverageModulationTableEnable_ ) VULKAN_HPP_NOEXCEPT
+ {
+ coverageModulationTableEnable = coverageModulationTableEnable_;
+ return *this;
+ }
+
+ PipelineCoverageModulationStateCreateInfoNV &
+ setCoverageModulationTableCount( uint32_t coverageModulationTableCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ coverageModulationTableCount = coverageModulationTableCount_;
+ return *this;
+ }
+
+ PipelineCoverageModulationStateCreateInfoNV &
+ setPCoverageModulationTable( const float * pCoverageModulationTable_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pCoverageModulationTable = pCoverageModulationTable_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ PipelineCoverageModulationStateCreateInfoNV & setCoverageModulationTable(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const float> const & coverageModulationTable_ ) VULKAN_HPP_NOEXCEPT
+ {
+ coverageModulationTableCount = static_cast<uint32_t>( coverageModulationTable_.size() );
+ pCoverageModulationTable = coverageModulationTable_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkPipelineCoverageModulationStateCreateInfoNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPipelineCoverageModulationStateCreateInfoNV *>( this );
+ }
+
+ operator VkPipelineCoverageModulationStateCreateInfoNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPipelineCoverageModulationStateCreateInfoNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PipelineCoverageModulationStateCreateInfoNV const & ) const = default;
+#else
+ bool operator==( PipelineCoverageModulationStateCreateInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( coverageModulationMode == rhs.coverageModulationMode ) &&
+ ( coverageModulationTableEnable == rhs.coverageModulationTableEnable ) &&
+ ( coverageModulationTableCount == rhs.coverageModulationTableCount ) &&
+ ( pCoverageModulationTable == rhs.pCoverageModulationTable );
+ }
+
+ bool operator!=( PipelineCoverageModulationStateCreateInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineCoverageModulationStateCreateInfoNV;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::PipelineCoverageModulationStateCreateFlagsNV flags = {};
+ VULKAN_HPP_NAMESPACE::CoverageModulationModeNV coverageModulationMode =
+ VULKAN_HPP_NAMESPACE::CoverageModulationModeNV::eNone;
+ VULKAN_HPP_NAMESPACE::Bool32 coverageModulationTableEnable = {};
+ uint32_t coverageModulationTableCount = {};
+ const float * pCoverageModulationTable = {};
+ };
+ static_assert( sizeof( PipelineCoverageModulationStateCreateInfoNV ) ==
+ sizeof( VkPipelineCoverageModulationStateCreateInfoNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PipelineCoverageModulationStateCreateInfoNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePipelineCoverageModulationStateCreateInfoNV>
+ {
+ using Type = PipelineCoverageModulationStateCreateInfoNV;
+ };
+
+ struct PipelineCoverageReductionStateCreateInfoNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePipelineCoverageReductionStateCreateInfoNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PipelineCoverageReductionStateCreateInfoNV(
+ VULKAN_HPP_NAMESPACE::PipelineCoverageReductionStateCreateFlagsNV flags_ = {},
+ VULKAN_HPP_NAMESPACE::CoverageReductionModeNV coverageReductionMode_ =
+ VULKAN_HPP_NAMESPACE::CoverageReductionModeNV::eMerge ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , coverageReductionMode( coverageReductionMode_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PipelineCoverageReductionStateCreateInfoNV(
+ PipelineCoverageReductionStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineCoverageReductionStateCreateInfoNV( VkPipelineCoverageReductionStateCreateInfoNV const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PipelineCoverageReductionStateCreateInfoNV(
+ *reinterpret_cast<PipelineCoverageReductionStateCreateInfoNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PipelineCoverageReductionStateCreateInfoNV &
+ operator=( PipelineCoverageReductionStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineCoverageReductionStateCreateInfoNV &
+ operator=( VkPipelineCoverageReductionStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineCoverageReductionStateCreateInfoNV const *>( &rhs );
+ return *this;
+ }
+
+ PipelineCoverageReductionStateCreateInfoNV & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PipelineCoverageReductionStateCreateInfoNV &
+ setFlags( VULKAN_HPP_NAMESPACE::PipelineCoverageReductionStateCreateFlagsNV flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ PipelineCoverageReductionStateCreateInfoNV & setCoverageReductionMode(
+ VULKAN_HPP_NAMESPACE::CoverageReductionModeNV coverageReductionMode_ ) VULKAN_HPP_NOEXCEPT
+ {
+ coverageReductionMode = coverageReductionMode_;
+ return *this;
+ }
+
+ operator VkPipelineCoverageReductionStateCreateInfoNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPipelineCoverageReductionStateCreateInfoNV *>( this );
+ }
+
+ operator VkPipelineCoverageReductionStateCreateInfoNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPipelineCoverageReductionStateCreateInfoNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PipelineCoverageReductionStateCreateInfoNV const & ) const = default;
+#else
+ bool operator==( PipelineCoverageReductionStateCreateInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( coverageReductionMode == rhs.coverageReductionMode );
+ }
+
+ bool operator!=( PipelineCoverageReductionStateCreateInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineCoverageReductionStateCreateInfoNV;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::PipelineCoverageReductionStateCreateFlagsNV flags = {};
+ VULKAN_HPP_NAMESPACE::CoverageReductionModeNV coverageReductionMode =
+ VULKAN_HPP_NAMESPACE::CoverageReductionModeNV::eMerge;
+ };
+ static_assert( sizeof( PipelineCoverageReductionStateCreateInfoNV ) ==
+ sizeof( VkPipelineCoverageReductionStateCreateInfoNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PipelineCoverageReductionStateCreateInfoNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePipelineCoverageReductionStateCreateInfoNV>
+ {
+ using Type = PipelineCoverageReductionStateCreateInfoNV;
+ };
+
+ struct PipelineCoverageToColorStateCreateInfoNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePipelineCoverageToColorStateCreateInfoNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PipelineCoverageToColorStateCreateInfoNV(
+ VULKAN_HPP_NAMESPACE::PipelineCoverageToColorStateCreateFlagsNV flags_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 coverageToColorEnable_ = {},
+ uint32_t coverageToColorLocation_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , coverageToColorEnable( coverageToColorEnable_ )
+ , coverageToColorLocation( coverageToColorLocation_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PipelineCoverageToColorStateCreateInfoNV(
+ PipelineCoverageToColorStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineCoverageToColorStateCreateInfoNV( VkPipelineCoverageToColorStateCreateInfoNV const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PipelineCoverageToColorStateCreateInfoNV(
+ *reinterpret_cast<PipelineCoverageToColorStateCreateInfoNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PipelineCoverageToColorStateCreateInfoNV &
+ operator=( PipelineCoverageToColorStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineCoverageToColorStateCreateInfoNV &
+ operator=( VkPipelineCoverageToColorStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineCoverageToColorStateCreateInfoNV const *>( &rhs );
+ return *this;
+ }
+
+ PipelineCoverageToColorStateCreateInfoNV & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PipelineCoverageToColorStateCreateInfoNV &
+ setFlags( VULKAN_HPP_NAMESPACE::PipelineCoverageToColorStateCreateFlagsNV flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ PipelineCoverageToColorStateCreateInfoNV &
+ setCoverageToColorEnable( VULKAN_HPP_NAMESPACE::Bool32 coverageToColorEnable_ ) VULKAN_HPP_NOEXCEPT
+ {
+ coverageToColorEnable = coverageToColorEnable_;
+ return *this;
+ }
+
+ PipelineCoverageToColorStateCreateInfoNV &
+ setCoverageToColorLocation( uint32_t coverageToColorLocation_ ) VULKAN_HPP_NOEXCEPT
+ {
+ coverageToColorLocation = coverageToColorLocation_;
+ return *this;
+ }
+
+ operator VkPipelineCoverageToColorStateCreateInfoNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPipelineCoverageToColorStateCreateInfoNV *>( this );
+ }
+
+ operator VkPipelineCoverageToColorStateCreateInfoNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPipelineCoverageToColorStateCreateInfoNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PipelineCoverageToColorStateCreateInfoNV const & ) const = default;
+#else
+ bool operator==( PipelineCoverageToColorStateCreateInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( coverageToColorEnable == rhs.coverageToColorEnable ) &&
+ ( coverageToColorLocation == rhs.coverageToColorLocation );
+ }
+
+ bool operator!=( PipelineCoverageToColorStateCreateInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineCoverageToColorStateCreateInfoNV;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::PipelineCoverageToColorStateCreateFlagsNV flags = {};
+ VULKAN_HPP_NAMESPACE::Bool32 coverageToColorEnable = {};
+ uint32_t coverageToColorLocation = {};
+ };
+ static_assert( sizeof( PipelineCoverageToColorStateCreateInfoNV ) ==
+ sizeof( VkPipelineCoverageToColorStateCreateInfoNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PipelineCoverageToColorStateCreateInfoNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePipelineCoverageToColorStateCreateInfoNV>
+ {
+ using Type = PipelineCoverageToColorStateCreateInfoNV;
+ };
+
+ struct PipelineCreationFeedbackEXT
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ PipelineCreationFeedbackEXT( VULKAN_HPP_NAMESPACE::PipelineCreationFeedbackFlagsEXT flags_ = {},
+ uint64_t duration_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , duration( duration_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ PipelineCreationFeedbackEXT( PipelineCreationFeedbackEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineCreationFeedbackEXT( VkPipelineCreationFeedbackEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PipelineCreationFeedbackEXT( *reinterpret_cast<PipelineCreationFeedbackEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PipelineCreationFeedbackEXT &
+ operator=( PipelineCreationFeedbackEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineCreationFeedbackEXT & operator=( VkPipelineCreationFeedbackEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineCreationFeedbackEXT const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPipelineCreationFeedbackEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPipelineCreationFeedbackEXT *>( this );
+ }
+
+ operator VkPipelineCreationFeedbackEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPipelineCreationFeedbackEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PipelineCreationFeedbackEXT const & ) const = default;
+#else
+ bool operator==( PipelineCreationFeedbackEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( flags == rhs.flags ) && ( duration == rhs.duration );
+ }
+
+ bool operator!=( PipelineCreationFeedbackEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::PipelineCreationFeedbackFlagsEXT flags = {};
+ uint64_t duration = {};
+ };
+ static_assert( sizeof( PipelineCreationFeedbackEXT ) == sizeof( VkPipelineCreationFeedbackEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PipelineCreationFeedbackEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ struct PipelineCreationFeedbackCreateInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePipelineCreationFeedbackCreateInfoEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PipelineCreationFeedbackCreateInfoEXT(
+ VULKAN_HPP_NAMESPACE::PipelineCreationFeedbackEXT * pPipelineCreationFeedback_ = {},
+ uint32_t pipelineStageCreationFeedbackCount_ = {},
+ VULKAN_HPP_NAMESPACE::PipelineCreationFeedbackEXT * pPipelineStageCreationFeedbacks_ = {} ) VULKAN_HPP_NOEXCEPT
+ : pPipelineCreationFeedback( pPipelineCreationFeedback_ )
+ , pipelineStageCreationFeedbackCount( pipelineStageCreationFeedbackCount_ )
+ , pPipelineStageCreationFeedbacks( pPipelineStageCreationFeedbacks_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PipelineCreationFeedbackCreateInfoEXT( PipelineCreationFeedbackCreateInfoEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineCreationFeedbackCreateInfoEXT( VkPipelineCreationFeedbackCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PipelineCreationFeedbackCreateInfoEXT(
+ *reinterpret_cast<PipelineCreationFeedbackCreateInfoEXT const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ PipelineCreationFeedbackCreateInfoEXT(
+ VULKAN_HPP_NAMESPACE::PipelineCreationFeedbackEXT * pPipelineCreationFeedback_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<VULKAN_HPP_NAMESPACE::PipelineCreationFeedbackEXT> const &
+ pipelineStageCreationFeedbacks_ )
+ : pPipelineCreationFeedback( pPipelineCreationFeedback_ )
+ , pipelineStageCreationFeedbackCount( static_cast<uint32_t>( pipelineStageCreationFeedbacks_.size() ) )
+ , pPipelineStageCreationFeedbacks( pipelineStageCreationFeedbacks_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PipelineCreationFeedbackCreateInfoEXT &
+ operator=( PipelineCreationFeedbackCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineCreationFeedbackCreateInfoEXT &
+ operator=( VkPipelineCreationFeedbackCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineCreationFeedbackCreateInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ PipelineCreationFeedbackCreateInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PipelineCreationFeedbackCreateInfoEXT & setPPipelineCreationFeedback(
+ VULKAN_HPP_NAMESPACE::PipelineCreationFeedbackEXT * pPipelineCreationFeedback_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pPipelineCreationFeedback = pPipelineCreationFeedback_;
+ return *this;
+ }
+
+ PipelineCreationFeedbackCreateInfoEXT &
+ setPipelineStageCreationFeedbackCount( uint32_t pipelineStageCreationFeedbackCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pipelineStageCreationFeedbackCount = pipelineStageCreationFeedbackCount_;
+ return *this;
+ }
+
+ PipelineCreationFeedbackCreateInfoEXT & setPPipelineStageCreationFeedbacks(
+ VULKAN_HPP_NAMESPACE::PipelineCreationFeedbackEXT * pPipelineStageCreationFeedbacks_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pPipelineStageCreationFeedbacks = pPipelineStageCreationFeedbacks_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ PipelineCreationFeedbackCreateInfoEXT & setPipelineStageCreationFeedbacks(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<VULKAN_HPP_NAMESPACE::PipelineCreationFeedbackEXT> const &
+ pipelineStageCreationFeedbacks_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pipelineStageCreationFeedbackCount = static_cast<uint32_t>( pipelineStageCreationFeedbacks_.size() );
+ pPipelineStageCreationFeedbacks = pipelineStageCreationFeedbacks_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkPipelineCreationFeedbackCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPipelineCreationFeedbackCreateInfoEXT *>( this );
+ }
+
+ operator VkPipelineCreationFeedbackCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPipelineCreationFeedbackCreateInfoEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PipelineCreationFeedbackCreateInfoEXT const & ) const = default;
+#else
+ bool operator==( PipelineCreationFeedbackCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( pPipelineCreationFeedback == rhs.pPipelineCreationFeedback ) &&
+ ( pipelineStageCreationFeedbackCount == rhs.pipelineStageCreationFeedbackCount ) &&
+ ( pPipelineStageCreationFeedbacks == rhs.pPipelineStageCreationFeedbacks );
+ }
+
+ bool operator!=( PipelineCreationFeedbackCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineCreationFeedbackCreateInfoEXT;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::PipelineCreationFeedbackEXT * pPipelineCreationFeedback = {};
+ uint32_t pipelineStageCreationFeedbackCount = {};
+ VULKAN_HPP_NAMESPACE::PipelineCreationFeedbackEXT * pPipelineStageCreationFeedbacks = {};
+ };
+ static_assert( sizeof( PipelineCreationFeedbackCreateInfoEXT ) == sizeof( VkPipelineCreationFeedbackCreateInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PipelineCreationFeedbackCreateInfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePipelineCreationFeedbackCreateInfoEXT>
+ {
+ using Type = PipelineCreationFeedbackCreateInfoEXT;
+ };
+
+ struct PipelineDiscardRectangleStateCreateInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePipelineDiscardRectangleStateCreateInfoEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PipelineDiscardRectangleStateCreateInfoEXT(
+ VULKAN_HPP_NAMESPACE::PipelineDiscardRectangleStateCreateFlagsEXT flags_ = {},
+ VULKAN_HPP_NAMESPACE::DiscardRectangleModeEXT discardRectangleMode_ =
+ VULKAN_HPP_NAMESPACE::DiscardRectangleModeEXT::eInclusive,
+ uint32_t discardRectangleCount_ = {},
+ const VULKAN_HPP_NAMESPACE::Rect2D * pDiscardRectangles_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , discardRectangleMode( discardRectangleMode_ )
+ , discardRectangleCount( discardRectangleCount_ )
+ , pDiscardRectangles( pDiscardRectangles_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PipelineDiscardRectangleStateCreateInfoEXT(
+ PipelineDiscardRectangleStateCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineDiscardRectangleStateCreateInfoEXT( VkPipelineDiscardRectangleStateCreateInfoEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PipelineDiscardRectangleStateCreateInfoEXT(
+ *reinterpret_cast<PipelineDiscardRectangleStateCreateInfoEXT const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ PipelineDiscardRectangleStateCreateInfoEXT(
+ VULKAN_HPP_NAMESPACE::PipelineDiscardRectangleStateCreateFlagsEXT flags_,
+ VULKAN_HPP_NAMESPACE::DiscardRectangleModeEXT discardRectangleMode_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Rect2D> const & discardRectangles_ )
+ : flags( flags_ )
+ , discardRectangleMode( discardRectangleMode_ )
+ , discardRectangleCount( static_cast<uint32_t>( discardRectangles_.size() ) )
+ , pDiscardRectangles( discardRectangles_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PipelineDiscardRectangleStateCreateInfoEXT &
+ operator=( PipelineDiscardRectangleStateCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineDiscardRectangleStateCreateInfoEXT &
+ operator=( VkPipelineDiscardRectangleStateCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineDiscardRectangleStateCreateInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ PipelineDiscardRectangleStateCreateInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PipelineDiscardRectangleStateCreateInfoEXT &
+ setFlags( VULKAN_HPP_NAMESPACE::PipelineDiscardRectangleStateCreateFlagsEXT flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ PipelineDiscardRectangleStateCreateInfoEXT &
+ setDiscardRectangleMode( VULKAN_HPP_NAMESPACE::DiscardRectangleModeEXT discardRectangleMode_ ) VULKAN_HPP_NOEXCEPT
+ {
+ discardRectangleMode = discardRectangleMode_;
+ return *this;
+ }
+
+ PipelineDiscardRectangleStateCreateInfoEXT &
+ setDiscardRectangleCount( uint32_t discardRectangleCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ discardRectangleCount = discardRectangleCount_;
+ return *this;
+ }
+
+ PipelineDiscardRectangleStateCreateInfoEXT &
+ setPDiscardRectangles( const VULKAN_HPP_NAMESPACE::Rect2D * pDiscardRectangles_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pDiscardRectangles = pDiscardRectangles_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ PipelineDiscardRectangleStateCreateInfoEXT & setDiscardRectangles(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Rect2D> const & discardRectangles_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ discardRectangleCount = static_cast<uint32_t>( discardRectangles_.size() );
+ pDiscardRectangles = discardRectangles_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkPipelineDiscardRectangleStateCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPipelineDiscardRectangleStateCreateInfoEXT *>( this );
+ }
+
+ operator VkPipelineDiscardRectangleStateCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPipelineDiscardRectangleStateCreateInfoEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PipelineDiscardRectangleStateCreateInfoEXT const & ) const = default;
+#else
+ bool operator==( PipelineDiscardRectangleStateCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( discardRectangleMode == rhs.discardRectangleMode ) &&
+ ( discardRectangleCount == rhs.discardRectangleCount ) && ( pDiscardRectangles == rhs.pDiscardRectangles );
+ }
+
+ bool operator!=( PipelineDiscardRectangleStateCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineDiscardRectangleStateCreateInfoEXT;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::PipelineDiscardRectangleStateCreateFlagsEXT flags = {};
+ VULKAN_HPP_NAMESPACE::DiscardRectangleModeEXT discardRectangleMode =
+ VULKAN_HPP_NAMESPACE::DiscardRectangleModeEXT::eInclusive;
+ uint32_t discardRectangleCount = {};
+ const VULKAN_HPP_NAMESPACE::Rect2D * pDiscardRectangles = {};
+ };
+ static_assert( sizeof( PipelineDiscardRectangleStateCreateInfoEXT ) ==
+ sizeof( VkPipelineDiscardRectangleStateCreateInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PipelineDiscardRectangleStateCreateInfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePipelineDiscardRectangleStateCreateInfoEXT>
+ {
+ using Type = PipelineDiscardRectangleStateCreateInfoEXT;
+ };
+
+ struct PipelineExecutableInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineExecutableInfoKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PipelineExecutableInfoKHR( VULKAN_HPP_NAMESPACE::Pipeline pipeline_ = {},
+ uint32_t executableIndex_ = {} ) VULKAN_HPP_NOEXCEPT
+ : pipeline( pipeline_ )
+ , executableIndex( executableIndex_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ PipelineExecutableInfoKHR( PipelineExecutableInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineExecutableInfoKHR( VkPipelineExecutableInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PipelineExecutableInfoKHR( *reinterpret_cast<PipelineExecutableInfoKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PipelineExecutableInfoKHR &
+ operator=( PipelineExecutableInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineExecutableInfoKHR & operator=( VkPipelineExecutableInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineExecutableInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ PipelineExecutableInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PipelineExecutableInfoKHR & setPipeline( VULKAN_HPP_NAMESPACE::Pipeline pipeline_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pipeline = pipeline_;
+ return *this;
+ }
+
+ PipelineExecutableInfoKHR & setExecutableIndex( uint32_t executableIndex_ ) VULKAN_HPP_NOEXCEPT
+ {
+ executableIndex = executableIndex_;
+ return *this;
+ }
+
+ operator VkPipelineExecutableInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPipelineExecutableInfoKHR *>( this );
+ }
+
+ operator VkPipelineExecutableInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPipelineExecutableInfoKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PipelineExecutableInfoKHR const & ) const = default;
+#else
+ bool operator==( PipelineExecutableInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( pipeline == rhs.pipeline ) &&
+ ( executableIndex == rhs.executableIndex );
+ }
+
+ bool operator!=( PipelineExecutableInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineExecutableInfoKHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Pipeline pipeline = {};
+ uint32_t executableIndex = {};
+ };
+ static_assert( sizeof( PipelineExecutableInfoKHR ) == sizeof( VkPipelineExecutableInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PipelineExecutableInfoKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePipelineExecutableInfoKHR>
+ {
+ using Type = PipelineExecutableInfoKHR;
+ };
+
+ struct PipelineExecutableInternalRepresentationKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePipelineExecutableInternalRepresentationKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR_14
+ PipelineExecutableInternalRepresentationKHR( std::array<char, VK_MAX_DESCRIPTION_SIZE> const & name_ = {},
+ std::array<char, VK_MAX_DESCRIPTION_SIZE> const & description_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 isText_ = {},
+ size_t dataSize_ = {},
+ void * pData_ = {} ) VULKAN_HPP_NOEXCEPT
+ : name( name_ )
+ , description( description_ )
+ , isText( isText_ )
+ , dataSize( dataSize_ )
+ , pData( pData_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR_14 PipelineExecutableInternalRepresentationKHR(
+ PipelineExecutableInternalRepresentationKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineExecutableInternalRepresentationKHR( VkPipelineExecutableInternalRepresentationKHR const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PipelineExecutableInternalRepresentationKHR(
+ *reinterpret_cast<PipelineExecutableInternalRepresentationKHR const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ template <typename T>
+ PipelineExecutableInternalRepresentationKHR( std::array<char, VK_MAX_DESCRIPTION_SIZE> const & name_,
+ std::array<char, VK_MAX_DESCRIPTION_SIZE> const & description_,
+ VULKAN_HPP_NAMESPACE::Bool32 isText_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<T> const & data_ )
+ : name( name_ )
+ , description( description_ )
+ , isText( isText_ )
+ , dataSize( data_.size() * sizeof( T ) )
+ , pData( data_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PipelineExecutableInternalRepresentationKHR &
+ operator=( PipelineExecutableInternalRepresentationKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineExecutableInternalRepresentationKHR &
+ operator=( VkPipelineExecutableInternalRepresentationKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineExecutableInternalRepresentationKHR const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPipelineExecutableInternalRepresentationKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPipelineExecutableInternalRepresentationKHR *>( this );
+ }
+
+ operator VkPipelineExecutableInternalRepresentationKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPipelineExecutableInternalRepresentationKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PipelineExecutableInternalRepresentationKHR const & ) const = default;
+#else
+ bool operator==( PipelineExecutableInternalRepresentationKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( name == rhs.name ) &&
+ ( description == rhs.description ) && ( isText == rhs.isText ) && ( dataSize == rhs.dataSize ) &&
+ ( pData == rhs.pData );
+ }
+
+ bool operator!=( PipelineExecutableInternalRepresentationKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineExecutableInternalRepresentationKHR;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DESCRIPTION_SIZE> name = {};
+ VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DESCRIPTION_SIZE> description = {};
+ VULKAN_HPP_NAMESPACE::Bool32 isText = {};
+ size_t dataSize = {};
+ void * pData = {};
+ };
+ static_assert( sizeof( PipelineExecutableInternalRepresentationKHR ) ==
+ sizeof( VkPipelineExecutableInternalRepresentationKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PipelineExecutableInternalRepresentationKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePipelineExecutableInternalRepresentationKHR>
+ {
+ using Type = PipelineExecutableInternalRepresentationKHR;
+ };
+
+ struct PipelineExecutablePropertiesKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineExecutablePropertiesKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR_14
+ PipelineExecutablePropertiesKHR( VULKAN_HPP_NAMESPACE::ShaderStageFlags stages_ = {},
+ std::array<char, VK_MAX_DESCRIPTION_SIZE> const & name_ = {},
+ std::array<char, VK_MAX_DESCRIPTION_SIZE> const & description_ = {},
+ uint32_t subgroupSize_ = {} ) VULKAN_HPP_NOEXCEPT
+ : stages( stages_ )
+ , name( name_ )
+ , description( description_ )
+ , subgroupSize( subgroupSize_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR_14
+ PipelineExecutablePropertiesKHR( PipelineExecutablePropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineExecutablePropertiesKHR( VkPipelineExecutablePropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PipelineExecutablePropertiesKHR( *reinterpret_cast<PipelineExecutablePropertiesKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PipelineExecutablePropertiesKHR &
+ operator=( PipelineExecutablePropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineExecutablePropertiesKHR & operator=( VkPipelineExecutablePropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineExecutablePropertiesKHR const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPipelineExecutablePropertiesKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPipelineExecutablePropertiesKHR *>( this );
+ }
+
+ operator VkPipelineExecutablePropertiesKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPipelineExecutablePropertiesKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PipelineExecutablePropertiesKHR const & ) const = default;
+#else
+ bool operator==( PipelineExecutablePropertiesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( stages == rhs.stages ) && ( name == rhs.name ) &&
+ ( description == rhs.description ) && ( subgroupSize == rhs.subgroupSize );
+ }
+
+ bool operator!=( PipelineExecutablePropertiesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineExecutablePropertiesKHR;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ShaderStageFlags stages = {};
+ VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DESCRIPTION_SIZE> name = {};
+ VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DESCRIPTION_SIZE> description = {};
+ uint32_t subgroupSize = {};
+ };
+ static_assert( sizeof( PipelineExecutablePropertiesKHR ) == sizeof( VkPipelineExecutablePropertiesKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PipelineExecutablePropertiesKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePipelineExecutablePropertiesKHR>
+ {
+ using Type = PipelineExecutablePropertiesKHR;
+ };
+
+ union PipelineExecutableStatisticValueKHR
+ {
+ PipelineExecutableStatisticValueKHR( VULKAN_HPP_NAMESPACE::PipelineExecutableStatisticValueKHR const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ {
+ memcpy( static_cast<void *>( this ), &rhs, sizeof( VULKAN_HPP_NAMESPACE::PipelineExecutableStatisticValueKHR ) );
+ }
+
+ PipelineExecutableStatisticValueKHR( VULKAN_HPP_NAMESPACE::Bool32 b32_ = {} ) : b32( b32_ ) {}
+
+ PipelineExecutableStatisticValueKHR( int64_t i64_ ) : i64( i64_ ) {}
+
+ PipelineExecutableStatisticValueKHR( uint64_t u64_ ) : u64( u64_ ) {}
+
+ PipelineExecutableStatisticValueKHR( double f64_ ) : f64( f64_ ) {}
+
+ PipelineExecutableStatisticValueKHR & setB32( VULKAN_HPP_NAMESPACE::Bool32 b32_ ) VULKAN_HPP_NOEXCEPT
+ {
+ b32 = b32_;
+ return *this;
+ }
+
+ PipelineExecutableStatisticValueKHR & setI64( int64_t i64_ ) VULKAN_HPP_NOEXCEPT
+ {
+ i64 = i64_;
+ return *this;
+ }
+
+ PipelineExecutableStatisticValueKHR & setU64( uint64_t u64_ ) VULKAN_HPP_NOEXCEPT
+ {
+ u64 = u64_;
+ return *this;
+ }
+
+ PipelineExecutableStatisticValueKHR & setF64( double f64_ ) VULKAN_HPP_NOEXCEPT
+ {
+ f64 = f64_;
+ return *this;
+ }
+
+ VULKAN_HPP_NAMESPACE::PipelineExecutableStatisticValueKHR &
+ operator=( VULKAN_HPP_NAMESPACE::PipelineExecutableStatisticValueKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ memcpy( static_cast<void *>( this ), &rhs, sizeof( VULKAN_HPP_NAMESPACE::PipelineExecutableStatisticValueKHR ) );
+ return *this;
+ }
+
+ operator VkPipelineExecutableStatisticValueKHR const &() const
+ {
+ return *reinterpret_cast<const VkPipelineExecutableStatisticValueKHR *>( this );
+ }
+
+ operator VkPipelineExecutableStatisticValueKHR &()
+ {
+ return *reinterpret_cast<VkPipelineExecutableStatisticValueKHR *>( this );
+ }
+
+#ifdef VULKAN_HPP_HAS_UNRESTRICTED_UNIONS
+ VULKAN_HPP_NAMESPACE::Bool32 b32;
+ int64_t i64;
+ uint64_t u64;
+ double f64;
+#else
+ VkBool32 b32;
+ int64_t i64;
+ uint64_t u64;
+ double f64;
+#endif /*VULKAN_HPP_HAS_UNRESTRICTED_UNIONS*/
+ };
+
+ struct PipelineExecutableStatisticKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineExecutableStatisticKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ PipelineExecutableStatisticKHR( std::array<char, VK_MAX_DESCRIPTION_SIZE> const & name_ = {},
+ std::array<char, VK_MAX_DESCRIPTION_SIZE> const & description_ = {},
+ VULKAN_HPP_NAMESPACE::PipelineExecutableStatisticFormatKHR format_ =
+ VULKAN_HPP_NAMESPACE::PipelineExecutableStatisticFormatKHR::eBool32,
+ VULKAN_HPP_NAMESPACE::PipelineExecutableStatisticValueKHR value_ = {} )
+ VULKAN_HPP_NOEXCEPT
+ : name( name_ )
+ , description( description_ )
+ , format( format_ )
+ , value( value_ )
+ {}
+
+ PipelineExecutableStatisticKHR( PipelineExecutableStatisticKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineExecutableStatisticKHR( VkPipelineExecutableStatisticKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PipelineExecutableStatisticKHR( *reinterpret_cast<PipelineExecutableStatisticKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ PipelineExecutableStatisticKHR &
+ operator=( PipelineExecutableStatisticKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineExecutableStatisticKHR & operator=( VkPipelineExecutableStatisticKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineExecutableStatisticKHR const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPipelineExecutableStatisticKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPipelineExecutableStatisticKHR *>( this );
+ }
+
+ operator VkPipelineExecutableStatisticKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPipelineExecutableStatisticKHR *>( this );
+ }
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineExecutableStatisticKHR;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DESCRIPTION_SIZE> name = {};
+ VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DESCRIPTION_SIZE> description = {};
+ VULKAN_HPP_NAMESPACE::PipelineExecutableStatisticFormatKHR format =
+ VULKAN_HPP_NAMESPACE::PipelineExecutableStatisticFormatKHR::eBool32;
+ VULKAN_HPP_NAMESPACE::PipelineExecutableStatisticValueKHR value = {};
+ };
+ static_assert( sizeof( PipelineExecutableStatisticKHR ) == sizeof( VkPipelineExecutableStatisticKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PipelineExecutableStatisticKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePipelineExecutableStatisticKHR>
+ {
+ using Type = PipelineExecutableStatisticKHR;
+ };
+
+ struct PipelineFragmentShadingRateEnumStateCreateInfoNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePipelineFragmentShadingRateEnumStateCreateInfoNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR_14 PipelineFragmentShadingRateEnumStateCreateInfoNV(
+ VULKAN_HPP_NAMESPACE::FragmentShadingRateTypeNV shadingRateType_ =
+ VULKAN_HPP_NAMESPACE::FragmentShadingRateTypeNV::eFragmentSize,
+ VULKAN_HPP_NAMESPACE::FragmentShadingRateNV shadingRate_ =
+ VULKAN_HPP_NAMESPACE::FragmentShadingRateNV::e1InvocationPerPixel,
+ std::array<VULKAN_HPP_NAMESPACE::FragmentShadingRateCombinerOpKHR, 2> const &
+ combinerOps_ = { { VULKAN_HPP_NAMESPACE::FragmentShadingRateCombinerOpKHR::eKeep,
+ VULKAN_HPP_NAMESPACE::FragmentShadingRateCombinerOpKHR::eKeep } } ) VULKAN_HPP_NOEXCEPT
+ : shadingRateType( shadingRateType_ )
+ , shadingRate( shadingRate_ )
+ , combinerOps( combinerOps_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR_14 PipelineFragmentShadingRateEnumStateCreateInfoNV(
+ PipelineFragmentShadingRateEnumStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineFragmentShadingRateEnumStateCreateInfoNV( VkPipelineFragmentShadingRateEnumStateCreateInfoNV const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PipelineFragmentShadingRateEnumStateCreateInfoNV(
+ *reinterpret_cast<PipelineFragmentShadingRateEnumStateCreateInfoNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PipelineFragmentShadingRateEnumStateCreateInfoNV &
+ operator=( PipelineFragmentShadingRateEnumStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineFragmentShadingRateEnumStateCreateInfoNV &
+ operator=( VkPipelineFragmentShadingRateEnumStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineFragmentShadingRateEnumStateCreateInfoNV const *>( &rhs );
+ return *this;
+ }
+
+ PipelineFragmentShadingRateEnumStateCreateInfoNV & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PipelineFragmentShadingRateEnumStateCreateInfoNV &
+ setShadingRateType( VULKAN_HPP_NAMESPACE::FragmentShadingRateTypeNV shadingRateType_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shadingRateType = shadingRateType_;
+ return *this;
+ }
+
+ PipelineFragmentShadingRateEnumStateCreateInfoNV &
+ setShadingRate( VULKAN_HPP_NAMESPACE::FragmentShadingRateNV shadingRate_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shadingRate = shadingRate_;
+ return *this;
+ }
+
+ PipelineFragmentShadingRateEnumStateCreateInfoNV & setCombinerOps(
+ std::array<VULKAN_HPP_NAMESPACE::FragmentShadingRateCombinerOpKHR, 2> combinerOps_ ) VULKAN_HPP_NOEXCEPT
+ {
+ combinerOps = combinerOps_;
+ return *this;
+ }
+
+ operator VkPipelineFragmentShadingRateEnumStateCreateInfoNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPipelineFragmentShadingRateEnumStateCreateInfoNV *>( this );
+ }
+
+ operator VkPipelineFragmentShadingRateEnumStateCreateInfoNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPipelineFragmentShadingRateEnumStateCreateInfoNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PipelineFragmentShadingRateEnumStateCreateInfoNV const & ) const = default;
+#else
+ bool operator==( PipelineFragmentShadingRateEnumStateCreateInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( shadingRateType == rhs.shadingRateType ) &&
+ ( shadingRate == rhs.shadingRate ) && ( combinerOps == rhs.combinerOps );
+ }
+
+ bool operator!=( PipelineFragmentShadingRateEnumStateCreateInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineFragmentShadingRateEnumStateCreateInfoNV;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::FragmentShadingRateTypeNV shadingRateType =
+ VULKAN_HPP_NAMESPACE::FragmentShadingRateTypeNV::eFragmentSize;
+ VULKAN_HPP_NAMESPACE::FragmentShadingRateNV shadingRate =
+ VULKAN_HPP_NAMESPACE::FragmentShadingRateNV::e1InvocationPerPixel;
+ VULKAN_HPP_NAMESPACE::ArrayWrapper1D<VULKAN_HPP_NAMESPACE::FragmentShadingRateCombinerOpKHR, 2> combinerOps = {};
+ };
+ static_assert( sizeof( PipelineFragmentShadingRateEnumStateCreateInfoNV ) ==
+ sizeof( VkPipelineFragmentShadingRateEnumStateCreateInfoNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PipelineFragmentShadingRateEnumStateCreateInfoNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePipelineFragmentShadingRateEnumStateCreateInfoNV>
+ {
+ using Type = PipelineFragmentShadingRateEnumStateCreateInfoNV;
+ };
+
+ struct PipelineFragmentShadingRateStateCreateInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePipelineFragmentShadingRateStateCreateInfoKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR_14 PipelineFragmentShadingRateStateCreateInfoKHR(
+ VULKAN_HPP_NAMESPACE::Extent2D fragmentSize_ = {},
+ std::array<VULKAN_HPP_NAMESPACE::FragmentShadingRateCombinerOpKHR, 2> const &
+ combinerOps_ = { { VULKAN_HPP_NAMESPACE::FragmentShadingRateCombinerOpKHR::eKeep,
+ VULKAN_HPP_NAMESPACE::FragmentShadingRateCombinerOpKHR::eKeep } } ) VULKAN_HPP_NOEXCEPT
+ : fragmentSize( fragmentSize_ )
+ , combinerOps( combinerOps_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR_14 PipelineFragmentShadingRateStateCreateInfoKHR(
+ PipelineFragmentShadingRateStateCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineFragmentShadingRateStateCreateInfoKHR( VkPipelineFragmentShadingRateStateCreateInfoKHR const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PipelineFragmentShadingRateStateCreateInfoKHR(
+ *reinterpret_cast<PipelineFragmentShadingRateStateCreateInfoKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PipelineFragmentShadingRateStateCreateInfoKHR &
+ operator=( PipelineFragmentShadingRateStateCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineFragmentShadingRateStateCreateInfoKHR &
+ operator=( VkPipelineFragmentShadingRateStateCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineFragmentShadingRateStateCreateInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ PipelineFragmentShadingRateStateCreateInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PipelineFragmentShadingRateStateCreateInfoKHR &
+ setFragmentSize( VULKAN_HPP_NAMESPACE::Extent2D const & fragmentSize_ ) VULKAN_HPP_NOEXCEPT
+ {
+ fragmentSize = fragmentSize_;
+ return *this;
+ }
+
+ PipelineFragmentShadingRateStateCreateInfoKHR & setCombinerOps(
+ std::array<VULKAN_HPP_NAMESPACE::FragmentShadingRateCombinerOpKHR, 2> combinerOps_ ) VULKAN_HPP_NOEXCEPT
+ {
+ combinerOps = combinerOps_;
+ return *this;
+ }
+
+ operator VkPipelineFragmentShadingRateStateCreateInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPipelineFragmentShadingRateStateCreateInfoKHR *>( this );
+ }
+
+ operator VkPipelineFragmentShadingRateStateCreateInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPipelineFragmentShadingRateStateCreateInfoKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PipelineFragmentShadingRateStateCreateInfoKHR const & ) const = default;
+#else
+ bool operator==( PipelineFragmentShadingRateStateCreateInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( fragmentSize == rhs.fragmentSize ) &&
+ ( combinerOps == rhs.combinerOps );
+ }
+
+ bool operator!=( PipelineFragmentShadingRateStateCreateInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineFragmentShadingRateStateCreateInfoKHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Extent2D fragmentSize = {};
+ VULKAN_HPP_NAMESPACE::ArrayWrapper1D<VULKAN_HPP_NAMESPACE::FragmentShadingRateCombinerOpKHR, 2> combinerOps = {};
+ };
+ static_assert( sizeof( PipelineFragmentShadingRateStateCreateInfoKHR ) ==
+ sizeof( VkPipelineFragmentShadingRateStateCreateInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PipelineFragmentShadingRateStateCreateInfoKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePipelineFragmentShadingRateStateCreateInfoKHR>
+ {
+ using Type = PipelineFragmentShadingRateStateCreateInfoKHR;
+ };
+
+ struct PipelineInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineInfoKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PipelineInfoKHR( VULKAN_HPP_NAMESPACE::Pipeline pipeline_ = {} ) VULKAN_HPP_NOEXCEPT
+ : pipeline( pipeline_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PipelineInfoKHR( PipelineInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineInfoKHR( VkPipelineInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PipelineInfoKHR( *reinterpret_cast<PipelineInfoKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PipelineInfoKHR & operator=( PipelineInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineInfoKHR & operator=( VkPipelineInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ PipelineInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PipelineInfoKHR & setPipeline( VULKAN_HPP_NAMESPACE::Pipeline pipeline_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pipeline = pipeline_;
+ return *this;
+ }
+
+ operator VkPipelineInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPipelineInfoKHR *>( this );
+ }
+
+ operator VkPipelineInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPipelineInfoKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PipelineInfoKHR const & ) const = default;
+#else
+ bool operator==( PipelineInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( pipeline == rhs.pipeline );
+ }
+
+ bool operator!=( PipelineInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineInfoKHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Pipeline pipeline = {};
+ };
+ static_assert( sizeof( PipelineInfoKHR ) == sizeof( VkPipelineInfoKHR ), "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PipelineInfoKHR>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePipelineInfoKHR>
+ {
+ using Type = PipelineInfoKHR;
+ };
+
+ struct PushConstantRange
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PushConstantRange( VULKAN_HPP_NAMESPACE::ShaderStageFlags stageFlags_ = {},
+ uint32_t offset_ = {},
+ uint32_t size_ = {} ) VULKAN_HPP_NOEXCEPT
+ : stageFlags( stageFlags_ )
+ , offset( offset_ )
+ , size( size_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PushConstantRange( PushConstantRange const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PushConstantRange( VkPushConstantRange const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PushConstantRange( *reinterpret_cast<PushConstantRange const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PushConstantRange &
+ operator=( PushConstantRange const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PushConstantRange & operator=( VkPushConstantRange const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PushConstantRange const *>( &rhs );
+ return *this;
+ }
+
+ PushConstantRange & setStageFlags( VULKAN_HPP_NAMESPACE::ShaderStageFlags stageFlags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ stageFlags = stageFlags_;
+ return *this;
+ }
+
+ PushConstantRange & setOffset( uint32_t offset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ offset = offset_;
+ return *this;
+ }
+
+ PushConstantRange & setSize( uint32_t size_ ) VULKAN_HPP_NOEXCEPT
+ {
+ size = size_;
+ return *this;
+ }
+
+ operator VkPushConstantRange const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPushConstantRange *>( this );
+ }
+
+ operator VkPushConstantRange &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPushConstantRange *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PushConstantRange const & ) const = default;
+#else
+ bool operator==( PushConstantRange const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( stageFlags == rhs.stageFlags ) && ( offset == rhs.offset ) && ( size == rhs.size );
+ }
+
+ bool operator!=( PushConstantRange const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::ShaderStageFlags stageFlags = {};
+ uint32_t offset = {};
+ uint32_t size = {};
+ };
+ static_assert( sizeof( PushConstantRange ) == sizeof( VkPushConstantRange ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PushConstantRange>::value, "struct wrapper is not a standard layout!" );
+
+ struct PipelineLayoutCreateInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineLayoutCreateInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PipelineLayoutCreateInfo(
+ VULKAN_HPP_NAMESPACE::PipelineLayoutCreateFlags flags_ = {},
+ uint32_t setLayoutCount_ = {},
+ const VULKAN_HPP_NAMESPACE::DescriptorSetLayout * pSetLayouts_ = {},
+ uint32_t pushConstantRangeCount_ = {},
+ const VULKAN_HPP_NAMESPACE::PushConstantRange * pPushConstantRanges_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , setLayoutCount( setLayoutCount_ )
+ , pSetLayouts( pSetLayouts_ )
+ , pushConstantRangeCount( pushConstantRangeCount_ )
+ , pPushConstantRanges( pPushConstantRanges_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PipelineLayoutCreateInfo( PipelineLayoutCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineLayoutCreateInfo( VkPipelineLayoutCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PipelineLayoutCreateInfo( *reinterpret_cast<PipelineLayoutCreateInfo const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ PipelineLayoutCreateInfo(
+ VULKAN_HPP_NAMESPACE::PipelineLayoutCreateFlags flags_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DescriptorSetLayout> const &
+ setLayouts_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::PushConstantRange> const &
+ pushConstantRanges_ = {} )
+ : flags( flags_ )
+ , setLayoutCount( static_cast<uint32_t>( setLayouts_.size() ) )
+ , pSetLayouts( setLayouts_.data() )
+ , pushConstantRangeCount( static_cast<uint32_t>( pushConstantRanges_.size() ) )
+ , pPushConstantRanges( pushConstantRanges_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PipelineLayoutCreateInfo &
+ operator=( PipelineLayoutCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineLayoutCreateInfo & operator=( VkPipelineLayoutCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineLayoutCreateInfo const *>( &rhs );
+ return *this;
+ }
+
+ PipelineLayoutCreateInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PipelineLayoutCreateInfo & setFlags( VULKAN_HPP_NAMESPACE::PipelineLayoutCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ PipelineLayoutCreateInfo & setSetLayoutCount( uint32_t setLayoutCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ setLayoutCount = setLayoutCount_;
+ return *this;
+ }
+
+ PipelineLayoutCreateInfo &
+ setPSetLayouts( const VULKAN_HPP_NAMESPACE::DescriptorSetLayout * pSetLayouts_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pSetLayouts = pSetLayouts_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ PipelineLayoutCreateInfo & setSetLayouts(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DescriptorSetLayout> const &
+ setLayouts_ ) VULKAN_HPP_NOEXCEPT
+ {
+ setLayoutCount = static_cast<uint32_t>( setLayouts_.size() );
+ pSetLayouts = setLayouts_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ PipelineLayoutCreateInfo & setPushConstantRangeCount( uint32_t pushConstantRangeCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pushConstantRangeCount = pushConstantRangeCount_;
+ return *this;
+ }
+
+ PipelineLayoutCreateInfo &
+ setPPushConstantRanges( const VULKAN_HPP_NAMESPACE::PushConstantRange * pPushConstantRanges_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pPushConstantRanges = pPushConstantRanges_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ PipelineLayoutCreateInfo & setPushConstantRanges(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::PushConstantRange> const &
+ pushConstantRanges_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pushConstantRangeCount = static_cast<uint32_t>( pushConstantRanges_.size() );
+ pPushConstantRanges = pushConstantRanges_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkPipelineLayoutCreateInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPipelineLayoutCreateInfo *>( this );
+ }
+
+ operator VkPipelineLayoutCreateInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPipelineLayoutCreateInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PipelineLayoutCreateInfo const & ) const = default;
+#else
+ bool operator==( PipelineLayoutCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( setLayoutCount == rhs.setLayoutCount ) && ( pSetLayouts == rhs.pSetLayouts ) &&
+ ( pushConstantRangeCount == rhs.pushConstantRangeCount ) &&
+ ( pPushConstantRanges == rhs.pPushConstantRanges );
+ }
+
+ bool operator!=( PipelineLayoutCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineLayoutCreateInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::PipelineLayoutCreateFlags flags = {};
+ uint32_t setLayoutCount = {};
+ const VULKAN_HPP_NAMESPACE::DescriptorSetLayout * pSetLayouts = {};
+ uint32_t pushConstantRangeCount = {};
+ const VULKAN_HPP_NAMESPACE::PushConstantRange * pPushConstantRanges = {};
+ };
+ static_assert( sizeof( PipelineLayoutCreateInfo ) == sizeof( VkPipelineLayoutCreateInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PipelineLayoutCreateInfo>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePipelineLayoutCreateInfo>
+ {
+ using Type = PipelineLayoutCreateInfo;
+ };
+
+ struct PipelineLibraryCreateInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineLibraryCreateInfoKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ PipelineLibraryCreateInfoKHR( uint32_t libraryCount_ = {},
+ const VULKAN_HPP_NAMESPACE::Pipeline * pLibraries_ = {} ) VULKAN_HPP_NOEXCEPT
+ : libraryCount( libraryCount_ )
+ , pLibraries( pLibraries_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ PipelineLibraryCreateInfoKHR( PipelineLibraryCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineLibraryCreateInfoKHR( VkPipelineLibraryCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PipelineLibraryCreateInfoKHR( *reinterpret_cast<PipelineLibraryCreateInfoKHR const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ PipelineLibraryCreateInfoKHR(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Pipeline> const & libraries_ )
+ : libraryCount( static_cast<uint32_t>( libraries_.size() ) ), pLibraries( libraries_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PipelineLibraryCreateInfoKHR &
+ operator=( PipelineLibraryCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineLibraryCreateInfoKHR & operator=( VkPipelineLibraryCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineLibraryCreateInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ PipelineLibraryCreateInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PipelineLibraryCreateInfoKHR & setLibraryCount( uint32_t libraryCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ libraryCount = libraryCount_;
+ return *this;
+ }
+
+ PipelineLibraryCreateInfoKHR &
+ setPLibraries( const VULKAN_HPP_NAMESPACE::Pipeline * pLibraries_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pLibraries = pLibraries_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ PipelineLibraryCreateInfoKHR & setLibraries(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Pipeline> const & libraries_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ libraryCount = static_cast<uint32_t>( libraries_.size() );
+ pLibraries = libraries_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkPipelineLibraryCreateInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPipelineLibraryCreateInfoKHR *>( this );
+ }
+
+ operator VkPipelineLibraryCreateInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPipelineLibraryCreateInfoKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PipelineLibraryCreateInfoKHR const & ) const = default;
+#else
+ bool operator==( PipelineLibraryCreateInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( libraryCount == rhs.libraryCount ) &&
+ ( pLibraries == rhs.pLibraries );
+ }
+
+ bool operator!=( PipelineLibraryCreateInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineLibraryCreateInfoKHR;
+ const void * pNext = {};
+ uint32_t libraryCount = {};
+ const VULKAN_HPP_NAMESPACE::Pipeline * pLibraries = {};
+ };
+ static_assert( sizeof( PipelineLibraryCreateInfoKHR ) == sizeof( VkPipelineLibraryCreateInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PipelineLibraryCreateInfoKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePipelineLibraryCreateInfoKHR>
+ {
+ using Type = PipelineLibraryCreateInfoKHR;
+ };
+
+ struct PipelineRasterizationConservativeStateCreateInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePipelineRasterizationConservativeStateCreateInfoEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PipelineRasterizationConservativeStateCreateInfoEXT(
+ VULKAN_HPP_NAMESPACE::PipelineRasterizationConservativeStateCreateFlagsEXT flags_ = {},
+ VULKAN_HPP_NAMESPACE::ConservativeRasterizationModeEXT conservativeRasterizationMode_ =
+ VULKAN_HPP_NAMESPACE::ConservativeRasterizationModeEXT::eDisabled,
+ float extraPrimitiveOverestimationSize_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , conservativeRasterizationMode( conservativeRasterizationMode_ )
+ , extraPrimitiveOverestimationSize( extraPrimitiveOverestimationSize_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PipelineRasterizationConservativeStateCreateInfoEXT(
+ PipelineRasterizationConservativeStateCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineRasterizationConservativeStateCreateInfoEXT(
+ VkPipelineRasterizationConservativeStateCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PipelineRasterizationConservativeStateCreateInfoEXT(
+ *reinterpret_cast<PipelineRasterizationConservativeStateCreateInfoEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PipelineRasterizationConservativeStateCreateInfoEXT &
+ operator=( PipelineRasterizationConservativeStateCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineRasterizationConservativeStateCreateInfoEXT &
+ operator=( VkPipelineRasterizationConservativeStateCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this =
+ *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineRasterizationConservativeStateCreateInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ PipelineRasterizationConservativeStateCreateInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PipelineRasterizationConservativeStateCreateInfoEXT &
+ setFlags( VULKAN_HPP_NAMESPACE::PipelineRasterizationConservativeStateCreateFlagsEXT flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ PipelineRasterizationConservativeStateCreateInfoEXT & setConservativeRasterizationMode(
+ VULKAN_HPP_NAMESPACE::ConservativeRasterizationModeEXT conservativeRasterizationMode_ ) VULKAN_HPP_NOEXCEPT
+ {
+ conservativeRasterizationMode = conservativeRasterizationMode_;
+ return *this;
+ }
+
+ PipelineRasterizationConservativeStateCreateInfoEXT &
+ setExtraPrimitiveOverestimationSize( float extraPrimitiveOverestimationSize_ ) VULKAN_HPP_NOEXCEPT
+ {
+ extraPrimitiveOverestimationSize = extraPrimitiveOverestimationSize_;
+ return *this;
+ }
+
+ operator VkPipelineRasterizationConservativeStateCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPipelineRasterizationConservativeStateCreateInfoEXT *>( this );
+ }
+
+ operator VkPipelineRasterizationConservativeStateCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPipelineRasterizationConservativeStateCreateInfoEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PipelineRasterizationConservativeStateCreateInfoEXT const & ) const = default;
+#else
+ bool operator==( PipelineRasterizationConservativeStateCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( conservativeRasterizationMode == rhs.conservativeRasterizationMode ) &&
+ ( extraPrimitiveOverestimationSize == rhs.extraPrimitiveOverestimationSize );
+ }
+
+ bool operator!=( PipelineRasterizationConservativeStateCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineRasterizationConservativeStateCreateInfoEXT;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::PipelineRasterizationConservativeStateCreateFlagsEXT flags = {};
+ VULKAN_HPP_NAMESPACE::ConservativeRasterizationModeEXT conservativeRasterizationMode =
+ VULKAN_HPP_NAMESPACE::ConservativeRasterizationModeEXT::eDisabled;
+ float extraPrimitiveOverestimationSize = {};
+ };
+ static_assert( sizeof( PipelineRasterizationConservativeStateCreateInfoEXT ) ==
+ sizeof( VkPipelineRasterizationConservativeStateCreateInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PipelineRasterizationConservativeStateCreateInfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePipelineRasterizationConservativeStateCreateInfoEXT>
+ {
+ using Type = PipelineRasterizationConservativeStateCreateInfoEXT;
+ };
+
+ struct PipelineRasterizationDepthClipStateCreateInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePipelineRasterizationDepthClipStateCreateInfoEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PipelineRasterizationDepthClipStateCreateInfoEXT(
+ VULKAN_HPP_NAMESPACE::PipelineRasterizationDepthClipStateCreateFlagsEXT flags_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 depthClipEnable_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , depthClipEnable( depthClipEnable_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PipelineRasterizationDepthClipStateCreateInfoEXT(
+ PipelineRasterizationDepthClipStateCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineRasterizationDepthClipStateCreateInfoEXT( VkPipelineRasterizationDepthClipStateCreateInfoEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PipelineRasterizationDepthClipStateCreateInfoEXT(
+ *reinterpret_cast<PipelineRasterizationDepthClipStateCreateInfoEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PipelineRasterizationDepthClipStateCreateInfoEXT &
+ operator=( PipelineRasterizationDepthClipStateCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineRasterizationDepthClipStateCreateInfoEXT &
+ operator=( VkPipelineRasterizationDepthClipStateCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineRasterizationDepthClipStateCreateInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ PipelineRasterizationDepthClipStateCreateInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PipelineRasterizationDepthClipStateCreateInfoEXT &
+ setFlags( VULKAN_HPP_NAMESPACE::PipelineRasterizationDepthClipStateCreateFlagsEXT flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ PipelineRasterizationDepthClipStateCreateInfoEXT &
+ setDepthClipEnable( VULKAN_HPP_NAMESPACE::Bool32 depthClipEnable_ ) VULKAN_HPP_NOEXCEPT
+ {
+ depthClipEnable = depthClipEnable_;
+ return *this;
+ }
+
+ operator VkPipelineRasterizationDepthClipStateCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPipelineRasterizationDepthClipStateCreateInfoEXT *>( this );
+ }
+
+ operator VkPipelineRasterizationDepthClipStateCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPipelineRasterizationDepthClipStateCreateInfoEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PipelineRasterizationDepthClipStateCreateInfoEXT const & ) const = default;
+#else
+ bool operator==( PipelineRasterizationDepthClipStateCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( depthClipEnable == rhs.depthClipEnable );
+ }
+
+ bool operator!=( PipelineRasterizationDepthClipStateCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineRasterizationDepthClipStateCreateInfoEXT;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::PipelineRasterizationDepthClipStateCreateFlagsEXT flags = {};
+ VULKAN_HPP_NAMESPACE::Bool32 depthClipEnable = {};
+ };
+ static_assert( sizeof( PipelineRasterizationDepthClipStateCreateInfoEXT ) ==
+ sizeof( VkPipelineRasterizationDepthClipStateCreateInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PipelineRasterizationDepthClipStateCreateInfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePipelineRasterizationDepthClipStateCreateInfoEXT>
+ {
+ using Type = PipelineRasterizationDepthClipStateCreateInfoEXT;
+ };
+
+ struct PipelineRasterizationLineStateCreateInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePipelineRasterizationLineStateCreateInfoEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PipelineRasterizationLineStateCreateInfoEXT(
+ VULKAN_HPP_NAMESPACE::LineRasterizationModeEXT lineRasterizationMode_ =
+ VULKAN_HPP_NAMESPACE::LineRasterizationModeEXT::eDefault,
+ VULKAN_HPP_NAMESPACE::Bool32 stippledLineEnable_ = {},
+ uint32_t lineStippleFactor_ = {},
+ uint16_t lineStipplePattern_ = {} ) VULKAN_HPP_NOEXCEPT
+ : lineRasterizationMode( lineRasterizationMode_ )
+ , stippledLineEnable( stippledLineEnable_ )
+ , lineStippleFactor( lineStippleFactor_ )
+ , lineStipplePattern( lineStipplePattern_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PipelineRasterizationLineStateCreateInfoEXT(
+ PipelineRasterizationLineStateCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineRasterizationLineStateCreateInfoEXT( VkPipelineRasterizationLineStateCreateInfoEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PipelineRasterizationLineStateCreateInfoEXT(
+ *reinterpret_cast<PipelineRasterizationLineStateCreateInfoEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PipelineRasterizationLineStateCreateInfoEXT &
+ operator=( PipelineRasterizationLineStateCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineRasterizationLineStateCreateInfoEXT &
+ operator=( VkPipelineRasterizationLineStateCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineRasterizationLineStateCreateInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ PipelineRasterizationLineStateCreateInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PipelineRasterizationLineStateCreateInfoEXT & setLineRasterizationMode(
+ VULKAN_HPP_NAMESPACE::LineRasterizationModeEXT lineRasterizationMode_ ) VULKAN_HPP_NOEXCEPT
+ {
+ lineRasterizationMode = lineRasterizationMode_;
+ return *this;
+ }
+
+ PipelineRasterizationLineStateCreateInfoEXT &
+ setStippledLineEnable( VULKAN_HPP_NAMESPACE::Bool32 stippledLineEnable_ ) VULKAN_HPP_NOEXCEPT
+ {
+ stippledLineEnable = stippledLineEnable_;
+ return *this;
+ }
+
+ PipelineRasterizationLineStateCreateInfoEXT &
+ setLineStippleFactor( uint32_t lineStippleFactor_ ) VULKAN_HPP_NOEXCEPT
+ {
+ lineStippleFactor = lineStippleFactor_;
+ return *this;
+ }
+
+ PipelineRasterizationLineStateCreateInfoEXT &
+ setLineStipplePattern( uint16_t lineStipplePattern_ ) VULKAN_HPP_NOEXCEPT
+ {
+ lineStipplePattern = lineStipplePattern_;
+ return *this;
+ }
+
+ operator VkPipelineRasterizationLineStateCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPipelineRasterizationLineStateCreateInfoEXT *>( this );
+ }
+
+ operator VkPipelineRasterizationLineStateCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPipelineRasterizationLineStateCreateInfoEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PipelineRasterizationLineStateCreateInfoEXT const & ) const = default;
+#else
+ bool operator==( PipelineRasterizationLineStateCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( lineRasterizationMode == rhs.lineRasterizationMode ) &&
+ ( stippledLineEnable == rhs.stippledLineEnable ) && ( lineStippleFactor == rhs.lineStippleFactor ) &&
+ ( lineStipplePattern == rhs.lineStipplePattern );
+ }
+
+ bool operator!=( PipelineRasterizationLineStateCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineRasterizationLineStateCreateInfoEXT;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::LineRasterizationModeEXT lineRasterizationMode =
+ VULKAN_HPP_NAMESPACE::LineRasterizationModeEXT::eDefault;
+ VULKAN_HPP_NAMESPACE::Bool32 stippledLineEnable = {};
+ uint32_t lineStippleFactor = {};
+ uint16_t lineStipplePattern = {};
+ };
+ static_assert( sizeof( PipelineRasterizationLineStateCreateInfoEXT ) ==
+ sizeof( VkPipelineRasterizationLineStateCreateInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PipelineRasterizationLineStateCreateInfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePipelineRasterizationLineStateCreateInfoEXT>
+ {
+ using Type = PipelineRasterizationLineStateCreateInfoEXT;
+ };
+
+ struct PipelineRasterizationProvokingVertexStateCreateInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePipelineRasterizationProvokingVertexStateCreateInfoEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PipelineRasterizationProvokingVertexStateCreateInfoEXT(
+ VULKAN_HPP_NAMESPACE::ProvokingVertexModeEXT provokingVertexMode_ =
+ VULKAN_HPP_NAMESPACE::ProvokingVertexModeEXT::eFirstVertex ) VULKAN_HPP_NOEXCEPT
+ : provokingVertexMode( provokingVertexMode_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PipelineRasterizationProvokingVertexStateCreateInfoEXT(
+ PipelineRasterizationProvokingVertexStateCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineRasterizationProvokingVertexStateCreateInfoEXT(
+ VkPipelineRasterizationProvokingVertexStateCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PipelineRasterizationProvokingVertexStateCreateInfoEXT(
+ *reinterpret_cast<PipelineRasterizationProvokingVertexStateCreateInfoEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PipelineRasterizationProvokingVertexStateCreateInfoEXT &
+ operator=( PipelineRasterizationProvokingVertexStateCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineRasterizationProvokingVertexStateCreateInfoEXT &
+ operator=( VkPipelineRasterizationProvokingVertexStateCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this =
+ *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineRasterizationProvokingVertexStateCreateInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ PipelineRasterizationProvokingVertexStateCreateInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PipelineRasterizationProvokingVertexStateCreateInfoEXT &
+ setProvokingVertexMode( VULKAN_HPP_NAMESPACE::ProvokingVertexModeEXT provokingVertexMode_ ) VULKAN_HPP_NOEXCEPT
+ {
+ provokingVertexMode = provokingVertexMode_;
+ return *this;
+ }
+
+ operator VkPipelineRasterizationProvokingVertexStateCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPipelineRasterizationProvokingVertexStateCreateInfoEXT *>( this );
+ }
+
+ operator VkPipelineRasterizationProvokingVertexStateCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPipelineRasterizationProvokingVertexStateCreateInfoEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PipelineRasterizationProvokingVertexStateCreateInfoEXT const & ) const = default;
+#else
+ bool operator==( PipelineRasterizationProvokingVertexStateCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( provokingVertexMode == rhs.provokingVertexMode );
+ }
+
+ bool operator!=( PipelineRasterizationProvokingVertexStateCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineRasterizationProvokingVertexStateCreateInfoEXT;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ProvokingVertexModeEXT provokingVertexMode =
+ VULKAN_HPP_NAMESPACE::ProvokingVertexModeEXT::eFirstVertex;
+ };
+ static_assert( sizeof( PipelineRasterizationProvokingVertexStateCreateInfoEXT ) ==
+ sizeof( VkPipelineRasterizationProvokingVertexStateCreateInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PipelineRasterizationProvokingVertexStateCreateInfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePipelineRasterizationProvokingVertexStateCreateInfoEXT>
+ {
+ using Type = PipelineRasterizationProvokingVertexStateCreateInfoEXT;
+ };
+
+ struct PipelineRasterizationStateRasterizationOrderAMD
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePipelineRasterizationStateRasterizationOrderAMD;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PipelineRasterizationStateRasterizationOrderAMD(
+ VULKAN_HPP_NAMESPACE::RasterizationOrderAMD rasterizationOrder_ =
+ VULKAN_HPP_NAMESPACE::RasterizationOrderAMD::eStrict ) VULKAN_HPP_NOEXCEPT
+ : rasterizationOrder( rasterizationOrder_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PipelineRasterizationStateRasterizationOrderAMD(
+ PipelineRasterizationStateRasterizationOrderAMD const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineRasterizationStateRasterizationOrderAMD( VkPipelineRasterizationStateRasterizationOrderAMD const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PipelineRasterizationStateRasterizationOrderAMD(
+ *reinterpret_cast<PipelineRasterizationStateRasterizationOrderAMD const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PipelineRasterizationStateRasterizationOrderAMD &
+ operator=( PipelineRasterizationStateRasterizationOrderAMD const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineRasterizationStateRasterizationOrderAMD &
+ operator=( VkPipelineRasterizationStateRasterizationOrderAMD const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineRasterizationStateRasterizationOrderAMD const *>( &rhs );
+ return *this;
+ }
+
+ PipelineRasterizationStateRasterizationOrderAMD & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PipelineRasterizationStateRasterizationOrderAMD &
+ setRasterizationOrder( VULKAN_HPP_NAMESPACE::RasterizationOrderAMD rasterizationOrder_ ) VULKAN_HPP_NOEXCEPT
+ {
+ rasterizationOrder = rasterizationOrder_;
+ return *this;
+ }
+
+ operator VkPipelineRasterizationStateRasterizationOrderAMD const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPipelineRasterizationStateRasterizationOrderAMD *>( this );
+ }
+
+ operator VkPipelineRasterizationStateRasterizationOrderAMD &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPipelineRasterizationStateRasterizationOrderAMD *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PipelineRasterizationStateRasterizationOrderAMD const & ) const = default;
+#else
+ bool operator==( PipelineRasterizationStateRasterizationOrderAMD const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( rasterizationOrder == rhs.rasterizationOrder );
+ }
+
+ bool operator!=( PipelineRasterizationStateRasterizationOrderAMD const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineRasterizationStateRasterizationOrderAMD;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::RasterizationOrderAMD rasterizationOrder =
+ VULKAN_HPP_NAMESPACE::RasterizationOrderAMD::eStrict;
+ };
+ static_assert( sizeof( PipelineRasterizationStateRasterizationOrderAMD ) ==
+ sizeof( VkPipelineRasterizationStateRasterizationOrderAMD ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PipelineRasterizationStateRasterizationOrderAMD>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePipelineRasterizationStateRasterizationOrderAMD>
+ {
+ using Type = PipelineRasterizationStateRasterizationOrderAMD;
+ };
+
+ struct PipelineRasterizationStateStreamCreateInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePipelineRasterizationStateStreamCreateInfoEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PipelineRasterizationStateStreamCreateInfoEXT(
+ VULKAN_HPP_NAMESPACE::PipelineRasterizationStateStreamCreateFlagsEXT flags_ = {},
+ uint32_t rasterizationStream_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , rasterizationStream( rasterizationStream_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PipelineRasterizationStateStreamCreateInfoEXT(
+ PipelineRasterizationStateStreamCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineRasterizationStateStreamCreateInfoEXT( VkPipelineRasterizationStateStreamCreateInfoEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PipelineRasterizationStateStreamCreateInfoEXT(
+ *reinterpret_cast<PipelineRasterizationStateStreamCreateInfoEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PipelineRasterizationStateStreamCreateInfoEXT &
+ operator=( PipelineRasterizationStateStreamCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineRasterizationStateStreamCreateInfoEXT &
+ operator=( VkPipelineRasterizationStateStreamCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineRasterizationStateStreamCreateInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ PipelineRasterizationStateStreamCreateInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PipelineRasterizationStateStreamCreateInfoEXT &
+ setFlags( VULKAN_HPP_NAMESPACE::PipelineRasterizationStateStreamCreateFlagsEXT flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ PipelineRasterizationStateStreamCreateInfoEXT &
+ setRasterizationStream( uint32_t rasterizationStream_ ) VULKAN_HPP_NOEXCEPT
+ {
+ rasterizationStream = rasterizationStream_;
+ return *this;
+ }
+
+ operator VkPipelineRasterizationStateStreamCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPipelineRasterizationStateStreamCreateInfoEXT *>( this );
+ }
+
+ operator VkPipelineRasterizationStateStreamCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPipelineRasterizationStateStreamCreateInfoEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PipelineRasterizationStateStreamCreateInfoEXT const & ) const = default;
+#else
+ bool operator==( PipelineRasterizationStateStreamCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( rasterizationStream == rhs.rasterizationStream );
+ }
+
+ bool operator!=( PipelineRasterizationStateStreamCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineRasterizationStateStreamCreateInfoEXT;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::PipelineRasterizationStateStreamCreateFlagsEXT flags = {};
+ uint32_t rasterizationStream = {};
+ };
+ static_assert( sizeof( PipelineRasterizationStateStreamCreateInfoEXT ) ==
+ sizeof( VkPipelineRasterizationStateStreamCreateInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PipelineRasterizationStateStreamCreateInfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePipelineRasterizationStateStreamCreateInfoEXT>
+ {
+ using Type = PipelineRasterizationStateStreamCreateInfoEXT;
+ };
+
+ struct PipelineRepresentativeFragmentTestStateCreateInfoNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePipelineRepresentativeFragmentTestStateCreateInfoNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PipelineRepresentativeFragmentTestStateCreateInfoNV(
+ VULKAN_HPP_NAMESPACE::Bool32 representativeFragmentTestEnable_ = {} ) VULKAN_HPP_NOEXCEPT
+ : representativeFragmentTestEnable( representativeFragmentTestEnable_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PipelineRepresentativeFragmentTestStateCreateInfoNV(
+ PipelineRepresentativeFragmentTestStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineRepresentativeFragmentTestStateCreateInfoNV(
+ VkPipelineRepresentativeFragmentTestStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PipelineRepresentativeFragmentTestStateCreateInfoNV(
+ *reinterpret_cast<PipelineRepresentativeFragmentTestStateCreateInfoNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PipelineRepresentativeFragmentTestStateCreateInfoNV &
+ operator=( PipelineRepresentativeFragmentTestStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineRepresentativeFragmentTestStateCreateInfoNV &
+ operator=( VkPipelineRepresentativeFragmentTestStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this =
+ *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineRepresentativeFragmentTestStateCreateInfoNV const *>( &rhs );
+ return *this;
+ }
+
+ PipelineRepresentativeFragmentTestStateCreateInfoNV & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PipelineRepresentativeFragmentTestStateCreateInfoNV & setRepresentativeFragmentTestEnable(
+ VULKAN_HPP_NAMESPACE::Bool32 representativeFragmentTestEnable_ ) VULKAN_HPP_NOEXCEPT
+ {
+ representativeFragmentTestEnable = representativeFragmentTestEnable_;
+ return *this;
+ }
+
+ operator VkPipelineRepresentativeFragmentTestStateCreateInfoNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPipelineRepresentativeFragmentTestStateCreateInfoNV *>( this );
+ }
+
+ operator VkPipelineRepresentativeFragmentTestStateCreateInfoNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPipelineRepresentativeFragmentTestStateCreateInfoNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PipelineRepresentativeFragmentTestStateCreateInfoNV const & ) const = default;
+#else
+ bool operator==( PipelineRepresentativeFragmentTestStateCreateInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( representativeFragmentTestEnable == rhs.representativeFragmentTestEnable );
+ }
+
+ bool operator!=( PipelineRepresentativeFragmentTestStateCreateInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineRepresentativeFragmentTestStateCreateInfoNV;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 representativeFragmentTestEnable = {};
+ };
+ static_assert( sizeof( PipelineRepresentativeFragmentTestStateCreateInfoNV ) ==
+ sizeof( VkPipelineRepresentativeFragmentTestStateCreateInfoNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PipelineRepresentativeFragmentTestStateCreateInfoNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePipelineRepresentativeFragmentTestStateCreateInfoNV>
+ {
+ using Type = PipelineRepresentativeFragmentTestStateCreateInfoNV;
+ };
+
+ struct PipelineSampleLocationsStateCreateInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePipelineSampleLocationsStateCreateInfoEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PipelineSampleLocationsStateCreateInfoEXT(
+ VULKAN_HPP_NAMESPACE::Bool32 sampleLocationsEnable_ = {},
+ VULKAN_HPP_NAMESPACE::SampleLocationsInfoEXT sampleLocationsInfo_ = {} ) VULKAN_HPP_NOEXCEPT
+ : sampleLocationsEnable( sampleLocationsEnable_ )
+ , sampleLocationsInfo( sampleLocationsInfo_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PipelineSampleLocationsStateCreateInfoEXT(
+ PipelineSampleLocationsStateCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineSampleLocationsStateCreateInfoEXT( VkPipelineSampleLocationsStateCreateInfoEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PipelineSampleLocationsStateCreateInfoEXT(
+ *reinterpret_cast<PipelineSampleLocationsStateCreateInfoEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PipelineSampleLocationsStateCreateInfoEXT &
+ operator=( PipelineSampleLocationsStateCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineSampleLocationsStateCreateInfoEXT &
+ operator=( VkPipelineSampleLocationsStateCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineSampleLocationsStateCreateInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ PipelineSampleLocationsStateCreateInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PipelineSampleLocationsStateCreateInfoEXT &
+ setSampleLocationsEnable( VULKAN_HPP_NAMESPACE::Bool32 sampleLocationsEnable_ ) VULKAN_HPP_NOEXCEPT
+ {
+ sampleLocationsEnable = sampleLocationsEnable_;
+ return *this;
+ }
+
+ PipelineSampleLocationsStateCreateInfoEXT & setSampleLocationsInfo(
+ VULKAN_HPP_NAMESPACE::SampleLocationsInfoEXT const & sampleLocationsInfo_ ) VULKAN_HPP_NOEXCEPT
+ {
+ sampleLocationsInfo = sampleLocationsInfo_;
+ return *this;
+ }
+
+ operator VkPipelineSampleLocationsStateCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPipelineSampleLocationsStateCreateInfoEXT *>( this );
+ }
+
+ operator VkPipelineSampleLocationsStateCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPipelineSampleLocationsStateCreateInfoEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PipelineSampleLocationsStateCreateInfoEXT const & ) const = default;
+#else
+ bool operator==( PipelineSampleLocationsStateCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( sampleLocationsEnable == rhs.sampleLocationsEnable ) &&
+ ( sampleLocationsInfo == rhs.sampleLocationsInfo );
+ }
+
+ bool operator!=( PipelineSampleLocationsStateCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineSampleLocationsStateCreateInfoEXT;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 sampleLocationsEnable = {};
+ VULKAN_HPP_NAMESPACE::SampleLocationsInfoEXT sampleLocationsInfo = {};
+ };
+ static_assert( sizeof( PipelineSampleLocationsStateCreateInfoEXT ) ==
+ sizeof( VkPipelineSampleLocationsStateCreateInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PipelineSampleLocationsStateCreateInfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePipelineSampleLocationsStateCreateInfoEXT>
+ {
+ using Type = PipelineSampleLocationsStateCreateInfoEXT;
+ };
+
+ struct PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePipelineShaderStageRequiredSubgroupSizeCreateInfoEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT( uint32_t requiredSubgroupSize_ = {} ) VULKAN_HPP_NOEXCEPT
+ : requiredSubgroupSize( requiredSubgroupSize_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT(
+ PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT(
+ VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT(
+ *reinterpret_cast<PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT &
+ operator=( PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT &
+ operator=( VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this =
+ *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ operator VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT *>( this );
+ }
+
+ operator VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT const & ) const = default;
+#else
+ bool operator==( PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( requiredSubgroupSize == rhs.requiredSubgroupSize );
+ }
+
+ bool operator!=( PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineShaderStageRequiredSubgroupSizeCreateInfoEXT;
+ void * pNext = {};
+ uint32_t requiredSubgroupSize = {};
+ };
+ static_assert( sizeof( PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT ) ==
+ sizeof( VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePipelineShaderStageRequiredSubgroupSizeCreateInfoEXT>
+ {
+ using Type = PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT;
+ };
+
+ struct PipelineTessellationDomainOriginStateCreateInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePipelineTessellationDomainOriginStateCreateInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PipelineTessellationDomainOriginStateCreateInfo(
+ VULKAN_HPP_NAMESPACE::TessellationDomainOrigin domainOrigin_ =
+ VULKAN_HPP_NAMESPACE::TessellationDomainOrigin::eUpperLeft ) VULKAN_HPP_NOEXCEPT : domainOrigin( domainOrigin_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PipelineTessellationDomainOriginStateCreateInfo(
+ PipelineTessellationDomainOriginStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineTessellationDomainOriginStateCreateInfo( VkPipelineTessellationDomainOriginStateCreateInfo const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PipelineTessellationDomainOriginStateCreateInfo(
+ *reinterpret_cast<PipelineTessellationDomainOriginStateCreateInfo const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PipelineTessellationDomainOriginStateCreateInfo &
+ operator=( PipelineTessellationDomainOriginStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineTessellationDomainOriginStateCreateInfo &
+ operator=( VkPipelineTessellationDomainOriginStateCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineTessellationDomainOriginStateCreateInfo const *>( &rhs );
+ return *this;
+ }
+
+ PipelineTessellationDomainOriginStateCreateInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PipelineTessellationDomainOriginStateCreateInfo &
+ setDomainOrigin( VULKAN_HPP_NAMESPACE::TessellationDomainOrigin domainOrigin_ ) VULKAN_HPP_NOEXCEPT
+ {
+ domainOrigin = domainOrigin_;
+ return *this;
+ }
+
+ operator VkPipelineTessellationDomainOriginStateCreateInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPipelineTessellationDomainOriginStateCreateInfo *>( this );
+ }
+
+ operator VkPipelineTessellationDomainOriginStateCreateInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPipelineTessellationDomainOriginStateCreateInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PipelineTessellationDomainOriginStateCreateInfo const & ) const = default;
+#else
+ bool operator==( PipelineTessellationDomainOriginStateCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( domainOrigin == rhs.domainOrigin );
+ }
+
+ bool operator!=( PipelineTessellationDomainOriginStateCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineTessellationDomainOriginStateCreateInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::TessellationDomainOrigin domainOrigin =
+ VULKAN_HPP_NAMESPACE::TessellationDomainOrigin::eUpperLeft;
+ };
+ static_assert( sizeof( PipelineTessellationDomainOriginStateCreateInfo ) ==
+ sizeof( VkPipelineTessellationDomainOriginStateCreateInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PipelineTessellationDomainOriginStateCreateInfo>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePipelineTessellationDomainOriginStateCreateInfo>
+ {
+ using Type = PipelineTessellationDomainOriginStateCreateInfo;
+ };
+ using PipelineTessellationDomainOriginStateCreateInfoKHR = PipelineTessellationDomainOriginStateCreateInfo;
+
+ struct VertexInputBindingDivisorDescriptionEXT
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR VertexInputBindingDivisorDescriptionEXT( uint32_t binding_ = {},
+ uint32_t divisor_ = {} ) VULKAN_HPP_NOEXCEPT
+ : binding( binding_ )
+ , divisor( divisor_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR VertexInputBindingDivisorDescriptionEXT( VertexInputBindingDivisorDescriptionEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ VertexInputBindingDivisorDescriptionEXT( VkVertexInputBindingDivisorDescriptionEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : VertexInputBindingDivisorDescriptionEXT(
+ *reinterpret_cast<VertexInputBindingDivisorDescriptionEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 VertexInputBindingDivisorDescriptionEXT &
+ operator=( VertexInputBindingDivisorDescriptionEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VertexInputBindingDivisorDescriptionEXT &
+ operator=( VkVertexInputBindingDivisorDescriptionEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VertexInputBindingDivisorDescriptionEXT const *>( &rhs );
+ return *this;
+ }
+
+ VertexInputBindingDivisorDescriptionEXT & setBinding( uint32_t binding_ ) VULKAN_HPP_NOEXCEPT
+ {
+ binding = binding_;
+ return *this;
+ }
+
+ VertexInputBindingDivisorDescriptionEXT & setDivisor( uint32_t divisor_ ) VULKAN_HPP_NOEXCEPT
+ {
+ divisor = divisor_;
+ return *this;
+ }
+
+ operator VkVertexInputBindingDivisorDescriptionEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkVertexInputBindingDivisorDescriptionEXT *>( this );
+ }
+
+ operator VkVertexInputBindingDivisorDescriptionEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkVertexInputBindingDivisorDescriptionEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( VertexInputBindingDivisorDescriptionEXT const & ) const = default;
+#else
+ bool operator==( VertexInputBindingDivisorDescriptionEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( binding == rhs.binding ) && ( divisor == rhs.divisor );
+ }
+
+ bool operator!=( VertexInputBindingDivisorDescriptionEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ uint32_t binding = {};
+ uint32_t divisor = {};
+ };
+ static_assert( sizeof( VertexInputBindingDivisorDescriptionEXT ) ==
+ sizeof( VkVertexInputBindingDivisorDescriptionEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<VertexInputBindingDivisorDescriptionEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ struct PipelineVertexInputDivisorStateCreateInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePipelineVertexInputDivisorStateCreateInfoEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PipelineVertexInputDivisorStateCreateInfoEXT(
+ uint32_t vertexBindingDivisorCount_ = {},
+ const VULKAN_HPP_NAMESPACE::VertexInputBindingDivisorDescriptionEXT * pVertexBindingDivisors_ = {} )
+ VULKAN_HPP_NOEXCEPT
+ : vertexBindingDivisorCount( vertexBindingDivisorCount_ )
+ , pVertexBindingDivisors( pVertexBindingDivisors_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PipelineVertexInputDivisorStateCreateInfoEXT(
+ PipelineVertexInputDivisorStateCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineVertexInputDivisorStateCreateInfoEXT( VkPipelineVertexInputDivisorStateCreateInfoEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PipelineVertexInputDivisorStateCreateInfoEXT(
+ *reinterpret_cast<PipelineVertexInputDivisorStateCreateInfoEXT const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ PipelineVertexInputDivisorStateCreateInfoEXT(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<
+ const VULKAN_HPP_NAMESPACE::VertexInputBindingDivisorDescriptionEXT> const & vertexBindingDivisors_ )
+ : vertexBindingDivisorCount( static_cast<uint32_t>( vertexBindingDivisors_.size() ) )
+ , pVertexBindingDivisors( vertexBindingDivisors_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PipelineVertexInputDivisorStateCreateInfoEXT &
+ operator=( PipelineVertexInputDivisorStateCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineVertexInputDivisorStateCreateInfoEXT &
+ operator=( VkPipelineVertexInputDivisorStateCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineVertexInputDivisorStateCreateInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ PipelineVertexInputDivisorStateCreateInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PipelineVertexInputDivisorStateCreateInfoEXT &
+ setVertexBindingDivisorCount( uint32_t vertexBindingDivisorCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ vertexBindingDivisorCount = vertexBindingDivisorCount_;
+ return *this;
+ }
+
+ PipelineVertexInputDivisorStateCreateInfoEXT & setPVertexBindingDivisors(
+ const VULKAN_HPP_NAMESPACE::VertexInputBindingDivisorDescriptionEXT * pVertexBindingDivisors_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ pVertexBindingDivisors = pVertexBindingDivisors_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ PipelineVertexInputDivisorStateCreateInfoEXT & setVertexBindingDivisors(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<
+ const VULKAN_HPP_NAMESPACE::VertexInputBindingDivisorDescriptionEXT> const & vertexBindingDivisors_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ vertexBindingDivisorCount = static_cast<uint32_t>( vertexBindingDivisors_.size() );
+ pVertexBindingDivisors = vertexBindingDivisors_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkPipelineVertexInputDivisorStateCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPipelineVertexInputDivisorStateCreateInfoEXT *>( this );
+ }
+
+ operator VkPipelineVertexInputDivisorStateCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPipelineVertexInputDivisorStateCreateInfoEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PipelineVertexInputDivisorStateCreateInfoEXT const & ) const = default;
+#else
+ bool operator==( PipelineVertexInputDivisorStateCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( vertexBindingDivisorCount == rhs.vertexBindingDivisorCount ) &&
+ ( pVertexBindingDivisors == rhs.pVertexBindingDivisors );
+ }
+
+ bool operator!=( PipelineVertexInputDivisorStateCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineVertexInputDivisorStateCreateInfoEXT;
+ const void * pNext = {};
+ uint32_t vertexBindingDivisorCount = {};
+ const VULKAN_HPP_NAMESPACE::VertexInputBindingDivisorDescriptionEXT * pVertexBindingDivisors = {};
+ };
+ static_assert( sizeof( PipelineVertexInputDivisorStateCreateInfoEXT ) ==
+ sizeof( VkPipelineVertexInputDivisorStateCreateInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PipelineVertexInputDivisorStateCreateInfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePipelineVertexInputDivisorStateCreateInfoEXT>
+ {
+ using Type = PipelineVertexInputDivisorStateCreateInfoEXT;
+ };
+
+ struct PipelineViewportCoarseSampleOrderStateCreateInfoNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePipelineViewportCoarseSampleOrderStateCreateInfoNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PipelineViewportCoarseSampleOrderStateCreateInfoNV(
+ VULKAN_HPP_NAMESPACE::CoarseSampleOrderTypeNV sampleOrderType_ =
+ VULKAN_HPP_NAMESPACE::CoarseSampleOrderTypeNV::eDefault,
+ uint32_t customSampleOrderCount_ = {},
+ const VULKAN_HPP_NAMESPACE::CoarseSampleOrderCustomNV * pCustomSampleOrders_ = {} ) VULKAN_HPP_NOEXCEPT
+ : sampleOrderType( sampleOrderType_ )
+ , customSampleOrderCount( customSampleOrderCount_ )
+ , pCustomSampleOrders( pCustomSampleOrders_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PipelineViewportCoarseSampleOrderStateCreateInfoNV(
+ PipelineViewportCoarseSampleOrderStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineViewportCoarseSampleOrderStateCreateInfoNV(
+ VkPipelineViewportCoarseSampleOrderStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PipelineViewportCoarseSampleOrderStateCreateInfoNV(
+ *reinterpret_cast<PipelineViewportCoarseSampleOrderStateCreateInfoNV const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ PipelineViewportCoarseSampleOrderStateCreateInfoNV(
+ VULKAN_HPP_NAMESPACE::CoarseSampleOrderTypeNV sampleOrderType_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::CoarseSampleOrderCustomNV> const &
+ customSampleOrders_ )
+ : sampleOrderType( sampleOrderType_ )
+ , customSampleOrderCount( static_cast<uint32_t>( customSampleOrders_.size() ) )
+ , pCustomSampleOrders( customSampleOrders_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PipelineViewportCoarseSampleOrderStateCreateInfoNV &
+ operator=( PipelineViewportCoarseSampleOrderStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineViewportCoarseSampleOrderStateCreateInfoNV &
+ operator=( VkPipelineViewportCoarseSampleOrderStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this =
+ *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineViewportCoarseSampleOrderStateCreateInfoNV const *>( &rhs );
+ return *this;
+ }
+
+ PipelineViewportCoarseSampleOrderStateCreateInfoNV & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PipelineViewportCoarseSampleOrderStateCreateInfoNV &
+ setSampleOrderType( VULKAN_HPP_NAMESPACE::CoarseSampleOrderTypeNV sampleOrderType_ ) VULKAN_HPP_NOEXCEPT
+ {
+ sampleOrderType = sampleOrderType_;
+ return *this;
+ }
+
+ PipelineViewportCoarseSampleOrderStateCreateInfoNV &
+ setCustomSampleOrderCount( uint32_t customSampleOrderCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ customSampleOrderCount = customSampleOrderCount_;
+ return *this;
+ }
+
+ PipelineViewportCoarseSampleOrderStateCreateInfoNV & setPCustomSampleOrders(
+ const VULKAN_HPP_NAMESPACE::CoarseSampleOrderCustomNV * pCustomSampleOrders_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pCustomSampleOrders = pCustomSampleOrders_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ PipelineViewportCoarseSampleOrderStateCreateInfoNV & setCustomSampleOrders(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::CoarseSampleOrderCustomNV> const &
+ customSampleOrders_ ) VULKAN_HPP_NOEXCEPT
+ {
+ customSampleOrderCount = static_cast<uint32_t>( customSampleOrders_.size() );
+ pCustomSampleOrders = customSampleOrders_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkPipelineViewportCoarseSampleOrderStateCreateInfoNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPipelineViewportCoarseSampleOrderStateCreateInfoNV *>( this );
+ }
+
+ operator VkPipelineViewportCoarseSampleOrderStateCreateInfoNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPipelineViewportCoarseSampleOrderStateCreateInfoNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PipelineViewportCoarseSampleOrderStateCreateInfoNV const & ) const = default;
+#else
+ bool operator==( PipelineViewportCoarseSampleOrderStateCreateInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( sampleOrderType == rhs.sampleOrderType ) &&
+ ( customSampleOrderCount == rhs.customSampleOrderCount ) &&
+ ( pCustomSampleOrders == rhs.pCustomSampleOrders );
+ }
+
+ bool operator!=( PipelineViewportCoarseSampleOrderStateCreateInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineViewportCoarseSampleOrderStateCreateInfoNV;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::CoarseSampleOrderTypeNV sampleOrderType =
+ VULKAN_HPP_NAMESPACE::CoarseSampleOrderTypeNV::eDefault;
+ uint32_t customSampleOrderCount = {};
+ const VULKAN_HPP_NAMESPACE::CoarseSampleOrderCustomNV * pCustomSampleOrders = {};
+ };
+ static_assert( sizeof( PipelineViewportCoarseSampleOrderStateCreateInfoNV ) ==
+ sizeof( VkPipelineViewportCoarseSampleOrderStateCreateInfoNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PipelineViewportCoarseSampleOrderStateCreateInfoNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePipelineViewportCoarseSampleOrderStateCreateInfoNV>
+ {
+ using Type = PipelineViewportCoarseSampleOrderStateCreateInfoNV;
+ };
+
+ struct PipelineViewportExclusiveScissorStateCreateInfoNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePipelineViewportExclusiveScissorStateCreateInfoNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PipelineViewportExclusiveScissorStateCreateInfoNV(
+ uint32_t exclusiveScissorCount_ = {},
+ const VULKAN_HPP_NAMESPACE::Rect2D * pExclusiveScissors_ = {} ) VULKAN_HPP_NOEXCEPT
+ : exclusiveScissorCount( exclusiveScissorCount_ )
+ , pExclusiveScissors( pExclusiveScissors_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PipelineViewportExclusiveScissorStateCreateInfoNV(
+ PipelineViewportExclusiveScissorStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineViewportExclusiveScissorStateCreateInfoNV( VkPipelineViewportExclusiveScissorStateCreateInfoNV const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PipelineViewportExclusiveScissorStateCreateInfoNV(
+ *reinterpret_cast<PipelineViewportExclusiveScissorStateCreateInfoNV const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ PipelineViewportExclusiveScissorStateCreateInfoNV(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Rect2D> const & exclusiveScissors_ )
+ : exclusiveScissorCount( static_cast<uint32_t>( exclusiveScissors_.size() ) )
+ , pExclusiveScissors( exclusiveScissors_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PipelineViewportExclusiveScissorStateCreateInfoNV &
+ operator=( PipelineViewportExclusiveScissorStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineViewportExclusiveScissorStateCreateInfoNV &
+ operator=( VkPipelineViewportExclusiveScissorStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this =
+ *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineViewportExclusiveScissorStateCreateInfoNV const *>( &rhs );
+ return *this;
+ }
+
+ PipelineViewportExclusiveScissorStateCreateInfoNV & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PipelineViewportExclusiveScissorStateCreateInfoNV &
+ setExclusiveScissorCount( uint32_t exclusiveScissorCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ exclusiveScissorCount = exclusiveScissorCount_;
+ return *this;
+ }
+
+ PipelineViewportExclusiveScissorStateCreateInfoNV &
+ setPExclusiveScissors( const VULKAN_HPP_NAMESPACE::Rect2D * pExclusiveScissors_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pExclusiveScissors = pExclusiveScissors_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ PipelineViewportExclusiveScissorStateCreateInfoNV & setExclusiveScissors(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Rect2D> const & exclusiveScissors_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ exclusiveScissorCount = static_cast<uint32_t>( exclusiveScissors_.size() );
+ pExclusiveScissors = exclusiveScissors_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkPipelineViewportExclusiveScissorStateCreateInfoNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPipelineViewportExclusiveScissorStateCreateInfoNV *>( this );
+ }
+
+ operator VkPipelineViewportExclusiveScissorStateCreateInfoNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPipelineViewportExclusiveScissorStateCreateInfoNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PipelineViewportExclusiveScissorStateCreateInfoNV const & ) const = default;
+#else
+ bool operator==( PipelineViewportExclusiveScissorStateCreateInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( exclusiveScissorCount == rhs.exclusiveScissorCount ) && ( pExclusiveScissors == rhs.pExclusiveScissors );
+ }
+
+ bool operator!=( PipelineViewportExclusiveScissorStateCreateInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineViewportExclusiveScissorStateCreateInfoNV;
+ const void * pNext = {};
+ uint32_t exclusiveScissorCount = {};
+ const VULKAN_HPP_NAMESPACE::Rect2D * pExclusiveScissors = {};
+ };
+ static_assert( sizeof( PipelineViewportExclusiveScissorStateCreateInfoNV ) ==
+ sizeof( VkPipelineViewportExclusiveScissorStateCreateInfoNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PipelineViewportExclusiveScissorStateCreateInfoNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePipelineViewportExclusiveScissorStateCreateInfoNV>
+ {
+ using Type = PipelineViewportExclusiveScissorStateCreateInfoNV;
+ };
+
+ struct ShadingRatePaletteNV
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR ShadingRatePaletteNV(
+ uint32_t shadingRatePaletteEntryCount_ = {},
+ const VULKAN_HPP_NAMESPACE::ShadingRatePaletteEntryNV * pShadingRatePaletteEntries_ = {} ) VULKAN_HPP_NOEXCEPT
+ : shadingRatePaletteEntryCount( shadingRatePaletteEntryCount_ )
+ , pShadingRatePaletteEntries( pShadingRatePaletteEntries_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR ShadingRatePaletteNV( ShadingRatePaletteNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ShadingRatePaletteNV( VkShadingRatePaletteNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ShadingRatePaletteNV( *reinterpret_cast<ShadingRatePaletteNV const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ ShadingRatePaletteNV(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ShadingRatePaletteEntryNV> const &
+ shadingRatePaletteEntries_ )
+ : shadingRatePaletteEntryCount( static_cast<uint32_t>( shadingRatePaletteEntries_.size() ) )
+ , pShadingRatePaletteEntries( shadingRatePaletteEntries_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ShadingRatePaletteNV &
+ operator=( ShadingRatePaletteNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ShadingRatePaletteNV & operator=( VkShadingRatePaletteNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ShadingRatePaletteNV const *>( &rhs );
+ return *this;
+ }
+
+ ShadingRatePaletteNV & setShadingRatePaletteEntryCount( uint32_t shadingRatePaletteEntryCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shadingRatePaletteEntryCount = shadingRatePaletteEntryCount_;
+ return *this;
+ }
+
+ ShadingRatePaletteNV & setPShadingRatePaletteEntries(
+ const VULKAN_HPP_NAMESPACE::ShadingRatePaletteEntryNV * pShadingRatePaletteEntries_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pShadingRatePaletteEntries = pShadingRatePaletteEntries_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ ShadingRatePaletteNV & setShadingRatePaletteEntries(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ShadingRatePaletteEntryNV> const &
+ shadingRatePaletteEntries_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shadingRatePaletteEntryCount = static_cast<uint32_t>( shadingRatePaletteEntries_.size() );
+ pShadingRatePaletteEntries = shadingRatePaletteEntries_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkShadingRatePaletteNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkShadingRatePaletteNV *>( this );
+ }
+
+ operator VkShadingRatePaletteNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkShadingRatePaletteNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ShadingRatePaletteNV const & ) const = default;
+#else
+ bool operator==( ShadingRatePaletteNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( shadingRatePaletteEntryCount == rhs.shadingRatePaletteEntryCount ) &&
+ ( pShadingRatePaletteEntries == rhs.pShadingRatePaletteEntries );
+ }
+
+ bool operator!=( ShadingRatePaletteNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ uint32_t shadingRatePaletteEntryCount = {};
+ const VULKAN_HPP_NAMESPACE::ShadingRatePaletteEntryNV * pShadingRatePaletteEntries = {};
+ };
+ static_assert( sizeof( ShadingRatePaletteNV ) == sizeof( VkShadingRatePaletteNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ShadingRatePaletteNV>::value, "struct wrapper is not a standard layout!" );
+
+ struct PipelineViewportShadingRateImageStateCreateInfoNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePipelineViewportShadingRateImageStateCreateInfoNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PipelineViewportShadingRateImageStateCreateInfoNV(
+ VULKAN_HPP_NAMESPACE::Bool32 shadingRateImageEnable_ = {},
+ uint32_t viewportCount_ = {},
+ const VULKAN_HPP_NAMESPACE::ShadingRatePaletteNV * pShadingRatePalettes_ = {} ) VULKAN_HPP_NOEXCEPT
+ : shadingRateImageEnable( shadingRateImageEnable_ )
+ , viewportCount( viewportCount_ )
+ , pShadingRatePalettes( pShadingRatePalettes_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PipelineViewportShadingRateImageStateCreateInfoNV(
+ PipelineViewportShadingRateImageStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineViewportShadingRateImageStateCreateInfoNV( VkPipelineViewportShadingRateImageStateCreateInfoNV const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PipelineViewportShadingRateImageStateCreateInfoNV(
+ *reinterpret_cast<PipelineViewportShadingRateImageStateCreateInfoNV const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ PipelineViewportShadingRateImageStateCreateInfoNV(
+ VULKAN_HPP_NAMESPACE::Bool32 shadingRateImageEnable_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ShadingRatePaletteNV> const &
+ shadingRatePalettes_ )
+ : shadingRateImageEnable( shadingRateImageEnable_ )
+ , viewportCount( static_cast<uint32_t>( shadingRatePalettes_.size() ) )
+ , pShadingRatePalettes( shadingRatePalettes_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PipelineViewportShadingRateImageStateCreateInfoNV &
+ operator=( PipelineViewportShadingRateImageStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineViewportShadingRateImageStateCreateInfoNV &
+ operator=( VkPipelineViewportShadingRateImageStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this =
+ *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineViewportShadingRateImageStateCreateInfoNV const *>( &rhs );
+ return *this;
+ }
+
+ PipelineViewportShadingRateImageStateCreateInfoNV & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PipelineViewportShadingRateImageStateCreateInfoNV &
+ setShadingRateImageEnable( VULKAN_HPP_NAMESPACE::Bool32 shadingRateImageEnable_ ) VULKAN_HPP_NOEXCEPT
+ {
+ shadingRateImageEnable = shadingRateImageEnable_;
+ return *this;
+ }
+
+ PipelineViewportShadingRateImageStateCreateInfoNV & setViewportCount( uint32_t viewportCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ viewportCount = viewportCount_;
+ return *this;
+ }
+
+ PipelineViewportShadingRateImageStateCreateInfoNV & setPShadingRatePalettes(
+ const VULKAN_HPP_NAMESPACE::ShadingRatePaletteNV * pShadingRatePalettes_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pShadingRatePalettes = pShadingRatePalettes_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ PipelineViewportShadingRateImageStateCreateInfoNV & setShadingRatePalettes(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ShadingRatePaletteNV> const &
+ shadingRatePalettes_ ) VULKAN_HPP_NOEXCEPT
+ {
+ viewportCount = static_cast<uint32_t>( shadingRatePalettes_.size() );
+ pShadingRatePalettes = shadingRatePalettes_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkPipelineViewportShadingRateImageStateCreateInfoNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPipelineViewportShadingRateImageStateCreateInfoNV *>( this );
+ }
+
+ operator VkPipelineViewportShadingRateImageStateCreateInfoNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPipelineViewportShadingRateImageStateCreateInfoNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PipelineViewportShadingRateImageStateCreateInfoNV const & ) const = default;
+#else
+ bool operator==( PipelineViewportShadingRateImageStateCreateInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( shadingRateImageEnable == rhs.shadingRateImageEnable ) && ( viewportCount == rhs.viewportCount ) &&
+ ( pShadingRatePalettes == rhs.pShadingRatePalettes );
+ }
+
+ bool operator!=( PipelineViewportShadingRateImageStateCreateInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineViewportShadingRateImageStateCreateInfoNV;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 shadingRateImageEnable = {};
+ uint32_t viewportCount = {};
+ const VULKAN_HPP_NAMESPACE::ShadingRatePaletteNV * pShadingRatePalettes = {};
+ };
+ static_assert( sizeof( PipelineViewportShadingRateImageStateCreateInfoNV ) ==
+ sizeof( VkPipelineViewportShadingRateImageStateCreateInfoNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PipelineViewportShadingRateImageStateCreateInfoNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePipelineViewportShadingRateImageStateCreateInfoNV>
+ {
+ using Type = PipelineViewportShadingRateImageStateCreateInfoNV;
+ };
+
+ struct ViewportSwizzleNV
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ ViewportSwizzleNV( VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV x_ =
+ VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV::ePositiveX,
+ VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV y_ =
+ VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV::ePositiveX,
+ VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV z_ =
+ VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV::ePositiveX,
+ VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV w_ =
+ VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV::ePositiveX ) VULKAN_HPP_NOEXCEPT
+ : x( x_ )
+ , y( y_ )
+ , z( z_ )
+ , w( w_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR ViewportSwizzleNV( ViewportSwizzleNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ViewportSwizzleNV( VkViewportSwizzleNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ViewportSwizzleNV( *reinterpret_cast<ViewportSwizzleNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ViewportSwizzleNV &
+ operator=( ViewportSwizzleNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ViewportSwizzleNV & operator=( VkViewportSwizzleNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ViewportSwizzleNV const *>( &rhs );
+ return *this;
+ }
+
+ ViewportSwizzleNV & setX( VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV x_ ) VULKAN_HPP_NOEXCEPT
+ {
+ x = x_;
+ return *this;
+ }
+
+ ViewportSwizzleNV & setY( VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV y_ ) VULKAN_HPP_NOEXCEPT
+ {
+ y = y_;
+ return *this;
+ }
+
+ ViewportSwizzleNV & setZ( VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV z_ ) VULKAN_HPP_NOEXCEPT
+ {
+ z = z_;
+ return *this;
+ }
+
+ ViewportSwizzleNV & setW( VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV w_ ) VULKAN_HPP_NOEXCEPT
+ {
+ w = w_;
+ return *this;
+ }
+
+ operator VkViewportSwizzleNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkViewportSwizzleNV *>( this );
+ }
+
+ operator VkViewportSwizzleNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkViewportSwizzleNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ViewportSwizzleNV const & ) const = default;
+#else
+ bool operator==( ViewportSwizzleNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( x == rhs.x ) && ( y == rhs.y ) && ( z == rhs.z ) && ( w == rhs.w );
+ }
+
+ bool operator!=( ViewportSwizzleNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV x = VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV::ePositiveX;
+ VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV y = VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV::ePositiveX;
+ VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV z = VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV::ePositiveX;
+ VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV w = VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV::ePositiveX;
+ };
+ static_assert( sizeof( ViewportSwizzleNV ) == sizeof( VkViewportSwizzleNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ViewportSwizzleNV>::value, "struct wrapper is not a standard layout!" );
+
+ struct PipelineViewportSwizzleStateCreateInfoNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePipelineViewportSwizzleStateCreateInfoNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PipelineViewportSwizzleStateCreateInfoNV(
+ VULKAN_HPP_NAMESPACE::PipelineViewportSwizzleStateCreateFlagsNV flags_ = {},
+ uint32_t viewportCount_ = {},
+ const VULKAN_HPP_NAMESPACE::ViewportSwizzleNV * pViewportSwizzles_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , viewportCount( viewportCount_ )
+ , pViewportSwizzles( pViewportSwizzles_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PipelineViewportSwizzleStateCreateInfoNV(
+ PipelineViewportSwizzleStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineViewportSwizzleStateCreateInfoNV( VkPipelineViewportSwizzleStateCreateInfoNV const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PipelineViewportSwizzleStateCreateInfoNV(
+ *reinterpret_cast<PipelineViewportSwizzleStateCreateInfoNV const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ PipelineViewportSwizzleStateCreateInfoNV(
+ VULKAN_HPP_NAMESPACE::PipelineViewportSwizzleStateCreateFlagsNV flags_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ViewportSwizzleNV> const &
+ viewportSwizzles_ )
+ : flags( flags_ )
+ , viewportCount( static_cast<uint32_t>( viewportSwizzles_.size() ) )
+ , pViewportSwizzles( viewportSwizzles_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PipelineViewportSwizzleStateCreateInfoNV &
+ operator=( PipelineViewportSwizzleStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineViewportSwizzleStateCreateInfoNV &
+ operator=( VkPipelineViewportSwizzleStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineViewportSwizzleStateCreateInfoNV const *>( &rhs );
+ return *this;
+ }
+
+ PipelineViewportSwizzleStateCreateInfoNV & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PipelineViewportSwizzleStateCreateInfoNV &
+ setFlags( VULKAN_HPP_NAMESPACE::PipelineViewportSwizzleStateCreateFlagsNV flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ PipelineViewportSwizzleStateCreateInfoNV & setViewportCount( uint32_t viewportCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ viewportCount = viewportCount_;
+ return *this;
+ }
+
+ PipelineViewportSwizzleStateCreateInfoNV &
+ setPViewportSwizzles( const VULKAN_HPP_NAMESPACE::ViewportSwizzleNV * pViewportSwizzles_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pViewportSwizzles = pViewportSwizzles_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ PipelineViewportSwizzleStateCreateInfoNV & setViewportSwizzles(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ViewportSwizzleNV> const &
+ viewportSwizzles_ ) VULKAN_HPP_NOEXCEPT
+ {
+ viewportCount = static_cast<uint32_t>( viewportSwizzles_.size() );
+ pViewportSwizzles = viewportSwizzles_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkPipelineViewportSwizzleStateCreateInfoNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPipelineViewportSwizzleStateCreateInfoNV *>( this );
+ }
+
+ operator VkPipelineViewportSwizzleStateCreateInfoNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPipelineViewportSwizzleStateCreateInfoNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PipelineViewportSwizzleStateCreateInfoNV const & ) const = default;
+#else
+ bool operator==( PipelineViewportSwizzleStateCreateInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( viewportCount == rhs.viewportCount ) && ( pViewportSwizzles == rhs.pViewportSwizzles );
+ }
+
+ bool operator!=( PipelineViewportSwizzleStateCreateInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineViewportSwizzleStateCreateInfoNV;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::PipelineViewportSwizzleStateCreateFlagsNV flags = {};
+ uint32_t viewportCount = {};
+ const VULKAN_HPP_NAMESPACE::ViewportSwizzleNV * pViewportSwizzles = {};
+ };
+ static_assert( sizeof( PipelineViewportSwizzleStateCreateInfoNV ) ==
+ sizeof( VkPipelineViewportSwizzleStateCreateInfoNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PipelineViewportSwizzleStateCreateInfoNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePipelineViewportSwizzleStateCreateInfoNV>
+ {
+ using Type = PipelineViewportSwizzleStateCreateInfoNV;
+ };
+
+ struct ViewportWScalingNV
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR ViewportWScalingNV( float xcoeff_ = {}, float ycoeff_ = {} ) VULKAN_HPP_NOEXCEPT
+ : xcoeff( xcoeff_ )
+ , ycoeff( ycoeff_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR ViewportWScalingNV( ViewportWScalingNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ViewportWScalingNV( VkViewportWScalingNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ViewportWScalingNV( *reinterpret_cast<ViewportWScalingNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ViewportWScalingNV &
+ operator=( ViewportWScalingNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ViewportWScalingNV & operator=( VkViewportWScalingNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ViewportWScalingNV const *>( &rhs );
+ return *this;
+ }
+
+ ViewportWScalingNV & setXcoeff( float xcoeff_ ) VULKAN_HPP_NOEXCEPT
+ {
+ xcoeff = xcoeff_;
+ return *this;
+ }
+
+ ViewportWScalingNV & setYcoeff( float ycoeff_ ) VULKAN_HPP_NOEXCEPT
+ {
+ ycoeff = ycoeff_;
+ return *this;
+ }
+
+ operator VkViewportWScalingNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkViewportWScalingNV *>( this );
+ }
+
+ operator VkViewportWScalingNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkViewportWScalingNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ViewportWScalingNV const & ) const = default;
+#else
+ bool operator==( ViewportWScalingNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( xcoeff == rhs.xcoeff ) && ( ycoeff == rhs.ycoeff );
+ }
+
+ bool operator!=( ViewportWScalingNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ float xcoeff = {};
+ float ycoeff = {};
+ };
+ static_assert( sizeof( ViewportWScalingNV ) == sizeof( VkViewportWScalingNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ViewportWScalingNV>::value, "struct wrapper is not a standard layout!" );
+
+ struct PipelineViewportWScalingStateCreateInfoNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::ePipelineViewportWScalingStateCreateInfoNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PipelineViewportWScalingStateCreateInfoNV(
+ VULKAN_HPP_NAMESPACE::Bool32 viewportWScalingEnable_ = {},
+ uint32_t viewportCount_ = {},
+ const VULKAN_HPP_NAMESPACE::ViewportWScalingNV * pViewportWScalings_ = {} ) VULKAN_HPP_NOEXCEPT
+ : viewportWScalingEnable( viewportWScalingEnable_ )
+ , viewportCount( viewportCount_ )
+ , pViewportWScalings( pViewportWScalings_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PipelineViewportWScalingStateCreateInfoNV(
+ PipelineViewportWScalingStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineViewportWScalingStateCreateInfoNV( VkPipelineViewportWScalingStateCreateInfoNV const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : PipelineViewportWScalingStateCreateInfoNV(
+ *reinterpret_cast<PipelineViewportWScalingStateCreateInfoNV const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ PipelineViewportWScalingStateCreateInfoNV(
+ VULKAN_HPP_NAMESPACE::Bool32 viewportWScalingEnable_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ViewportWScalingNV> const &
+ viewportWScalings_ )
+ : viewportWScalingEnable( viewportWScalingEnable_ )
+ , viewportCount( static_cast<uint32_t>( viewportWScalings_.size() ) )
+ , pViewportWScalings( viewportWScalings_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PipelineViewportWScalingStateCreateInfoNV &
+ operator=( PipelineViewportWScalingStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PipelineViewportWScalingStateCreateInfoNV &
+ operator=( VkPipelineViewportWScalingStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineViewportWScalingStateCreateInfoNV const *>( &rhs );
+ return *this;
+ }
+
+ PipelineViewportWScalingStateCreateInfoNV & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PipelineViewportWScalingStateCreateInfoNV &
+ setViewportWScalingEnable( VULKAN_HPP_NAMESPACE::Bool32 viewportWScalingEnable_ ) VULKAN_HPP_NOEXCEPT
+ {
+ viewportWScalingEnable = viewportWScalingEnable_;
+ return *this;
+ }
+
+ PipelineViewportWScalingStateCreateInfoNV & setViewportCount( uint32_t viewportCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ viewportCount = viewportCount_;
+ return *this;
+ }
+
+ PipelineViewportWScalingStateCreateInfoNV &
+ setPViewportWScalings( const VULKAN_HPP_NAMESPACE::ViewportWScalingNV * pViewportWScalings_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pViewportWScalings = pViewportWScalings_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ PipelineViewportWScalingStateCreateInfoNV & setViewportWScalings(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ViewportWScalingNV> const &
+ viewportWScalings_ ) VULKAN_HPP_NOEXCEPT
+ {
+ viewportCount = static_cast<uint32_t>( viewportWScalings_.size() );
+ pViewportWScalings = viewportWScalings_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkPipelineViewportWScalingStateCreateInfoNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPipelineViewportWScalingStateCreateInfoNV *>( this );
+ }
+
+ operator VkPipelineViewportWScalingStateCreateInfoNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPipelineViewportWScalingStateCreateInfoNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PipelineViewportWScalingStateCreateInfoNV const & ) const = default;
+#else
+ bool operator==( PipelineViewportWScalingStateCreateInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( viewportWScalingEnable == rhs.viewportWScalingEnable ) && ( viewportCount == rhs.viewportCount ) &&
+ ( pViewportWScalings == rhs.pViewportWScalings );
+ }
+
+ bool operator!=( PipelineViewportWScalingStateCreateInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineViewportWScalingStateCreateInfoNV;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 viewportWScalingEnable = {};
+ uint32_t viewportCount = {};
+ const VULKAN_HPP_NAMESPACE::ViewportWScalingNV * pViewportWScalings = {};
+ };
+ static_assert( sizeof( PipelineViewportWScalingStateCreateInfoNV ) ==
+ sizeof( VkPipelineViewportWScalingStateCreateInfoNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PipelineViewportWScalingStateCreateInfoNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePipelineViewportWScalingStateCreateInfoNV>
+ {
+ using Type = PipelineViewportWScalingStateCreateInfoNV;
+ };
+
+#if defined( VK_USE_PLATFORM_GGP )
+ struct PresentFrameTokenGGP
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePresentFrameTokenGGP;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PresentFrameTokenGGP( GgpFrameToken frameToken_ = {} ) VULKAN_HPP_NOEXCEPT
+ : frameToken( frameToken_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PresentFrameTokenGGP( PresentFrameTokenGGP const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PresentFrameTokenGGP( VkPresentFrameTokenGGP const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PresentFrameTokenGGP( *reinterpret_cast<PresentFrameTokenGGP const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PresentFrameTokenGGP &
+ operator=( PresentFrameTokenGGP const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PresentFrameTokenGGP & operator=( VkPresentFrameTokenGGP const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PresentFrameTokenGGP const *>( &rhs );
+ return *this;
+ }
+
+ PresentFrameTokenGGP & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PresentFrameTokenGGP & setFrameToken( GgpFrameToken frameToken_ ) VULKAN_HPP_NOEXCEPT
+ {
+ frameToken = frameToken_;
+ return *this;
+ }
+
+ operator VkPresentFrameTokenGGP const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPresentFrameTokenGGP *>( this );
+ }
+
+ operator VkPresentFrameTokenGGP &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPresentFrameTokenGGP *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PresentFrameTokenGGP const & ) const = default;
+# else
+ bool operator==( PresentFrameTokenGGP const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( memcmp( &frameToken, &rhs.frameToken, sizeof( GgpFrameToken ) ) == 0 );
+ }
+
+ bool operator!=( PresentFrameTokenGGP const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePresentFrameTokenGGP;
+ const void * pNext = {};
+ GgpFrameToken frameToken = {};
+ };
+ static_assert( sizeof( PresentFrameTokenGGP ) == sizeof( VkPresentFrameTokenGGP ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PresentFrameTokenGGP>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePresentFrameTokenGGP>
+ {
+ using Type = PresentFrameTokenGGP;
+ };
+#endif /*VK_USE_PLATFORM_GGP*/
+
+ struct PresentInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePresentInfoKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PresentInfoKHR( uint32_t waitSemaphoreCount_ = {},
+ const VULKAN_HPP_NAMESPACE::Semaphore * pWaitSemaphores_ = {},
+ uint32_t swapchainCount_ = {},
+ const VULKAN_HPP_NAMESPACE::SwapchainKHR * pSwapchains_ = {},
+ const uint32_t * pImageIndices_ = {},
+ VULKAN_HPP_NAMESPACE::Result * pResults_ = {} ) VULKAN_HPP_NOEXCEPT
+ : waitSemaphoreCount( waitSemaphoreCount_ )
+ , pWaitSemaphores( pWaitSemaphores_ )
+ , swapchainCount( swapchainCount_ )
+ , pSwapchains( pSwapchains_ )
+ , pImageIndices( pImageIndices_ )
+ , pResults( pResults_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PresentInfoKHR( PresentInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PresentInfoKHR( VkPresentInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PresentInfoKHR( *reinterpret_cast<PresentInfoKHR const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ PresentInfoKHR(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Semaphore> const & waitSemaphores_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SwapchainKHR> const & swapchains_ = {},
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & imageIndices_ = {},
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<VULKAN_HPP_NAMESPACE::Result> const & results_ = {} )
+ : waitSemaphoreCount( static_cast<uint32_t>( waitSemaphores_.size() ) )
+ , pWaitSemaphores( waitSemaphores_.data() )
+ , swapchainCount( static_cast<uint32_t>( swapchains_.size() ) )
+ , pSwapchains( swapchains_.data() )
+ , pImageIndices( imageIndices_.data() )
+ , pResults( results_.data() )
+ {
+# ifdef VULKAN_HPP_NO_EXCEPTIONS
+ VULKAN_HPP_ASSERT( swapchains_.size() == imageIndices_.size() );
+ VULKAN_HPP_ASSERT( results_.empty() || ( swapchains_.size() == results_.size() ) );
+ VULKAN_HPP_ASSERT( results_.empty() || ( imageIndices_.size() == results_.size() ) );
+# else
+ if ( swapchains_.size() != imageIndices_.size() )
+ {
+ throw LogicError( VULKAN_HPP_NAMESPACE_STRING
+ "::PresentInfoKHR::PresentInfoKHR: swapchains_.size() != imageIndices_.size()" );
+ }
+ if ( !results_.empty() && ( swapchains_.size() != results_.size() ) )
+ {
+ throw LogicError(
+ VULKAN_HPP_NAMESPACE_STRING
+ "::PresentInfoKHR::PresentInfoKHR: !results_.empty() && ( swapchains_.size() != results_.size() )" );
+ }
+ if ( !results_.empty() && ( imageIndices_.size() != results_.size() ) )
+ {
+ throw LogicError(
+ VULKAN_HPP_NAMESPACE_STRING
+ "::PresentInfoKHR::PresentInfoKHR: !results_.empty() && ( imageIndices_.size() != results_.size() )" );
+ }
+# endif /*VULKAN_HPP_NO_EXCEPTIONS*/
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PresentInfoKHR & operator=( PresentInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PresentInfoKHR & operator=( VkPresentInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PresentInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ PresentInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PresentInfoKHR & setWaitSemaphoreCount( uint32_t waitSemaphoreCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ waitSemaphoreCount = waitSemaphoreCount_;
+ return *this;
+ }
+
+ PresentInfoKHR & setPWaitSemaphores( const VULKAN_HPP_NAMESPACE::Semaphore * pWaitSemaphores_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pWaitSemaphores = pWaitSemaphores_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ PresentInfoKHR & setWaitSemaphores(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Semaphore> const & waitSemaphores_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ waitSemaphoreCount = static_cast<uint32_t>( waitSemaphores_.size() );
+ pWaitSemaphores = waitSemaphores_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ PresentInfoKHR & setSwapchainCount( uint32_t swapchainCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ swapchainCount = swapchainCount_;
+ return *this;
+ }
+
+ PresentInfoKHR & setPSwapchains( const VULKAN_HPP_NAMESPACE::SwapchainKHR * pSwapchains_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pSwapchains = pSwapchains_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ PresentInfoKHR & setSwapchains(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SwapchainKHR> const & swapchains_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ swapchainCount = static_cast<uint32_t>( swapchains_.size() );
+ pSwapchains = swapchains_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ PresentInfoKHR & setPImageIndices( const uint32_t * pImageIndices_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pImageIndices = pImageIndices_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ PresentInfoKHR & setImageIndices(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & imageIndices_ ) VULKAN_HPP_NOEXCEPT
+ {
+ swapchainCount = static_cast<uint32_t>( imageIndices_.size() );
+ pImageIndices = imageIndices_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ PresentInfoKHR & setPResults( VULKAN_HPP_NAMESPACE::Result * pResults_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pResults = pResults_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ PresentInfoKHR & setResults(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<VULKAN_HPP_NAMESPACE::Result> const & results_ ) VULKAN_HPP_NOEXCEPT
+ {
+ swapchainCount = static_cast<uint32_t>( results_.size() );
+ pResults = results_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkPresentInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPresentInfoKHR *>( this );
+ }
+
+ operator VkPresentInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPresentInfoKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PresentInfoKHR const & ) const = default;
+#else
+ bool operator==( PresentInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( waitSemaphoreCount == rhs.waitSemaphoreCount ) &&
+ ( pWaitSemaphores == rhs.pWaitSemaphores ) && ( swapchainCount == rhs.swapchainCount ) &&
+ ( pSwapchains == rhs.pSwapchains ) && ( pImageIndices == rhs.pImageIndices ) &&
+ ( pResults == rhs.pResults );
+ }
+
+ bool operator!=( PresentInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePresentInfoKHR;
+ const void * pNext = {};
+ uint32_t waitSemaphoreCount = {};
+ const VULKAN_HPP_NAMESPACE::Semaphore * pWaitSemaphores = {};
+ uint32_t swapchainCount = {};
+ const VULKAN_HPP_NAMESPACE::SwapchainKHR * pSwapchains = {};
+ const uint32_t * pImageIndices = {};
+ VULKAN_HPP_NAMESPACE::Result * pResults = {};
+ };
+ static_assert( sizeof( PresentInfoKHR ) == sizeof( VkPresentInfoKHR ), "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PresentInfoKHR>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePresentInfoKHR>
+ {
+ using Type = PresentInfoKHR;
+ };
+
+ struct RectLayerKHR
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR RectLayerKHR( VULKAN_HPP_NAMESPACE::Offset2D offset_ = {},
+ VULKAN_HPP_NAMESPACE::Extent2D extent_ = {},
+ uint32_t layer_ = {} ) VULKAN_HPP_NOEXCEPT
+ : offset( offset_ )
+ , extent( extent_ )
+ , layer( layer_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR RectLayerKHR( RectLayerKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ RectLayerKHR( VkRectLayerKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : RectLayerKHR( *reinterpret_cast<RectLayerKHR const *>( &rhs ) )
+ {}
+
+ explicit RectLayerKHR( Rect2D const & rect2D, uint32_t layer_ = {} )
+ : offset( rect2D.offset ), extent( rect2D.extent ), layer( layer_ )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 RectLayerKHR & operator=( RectLayerKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ RectLayerKHR & operator=( VkRectLayerKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::RectLayerKHR const *>( &rhs );
+ return *this;
+ }
+
+ RectLayerKHR & setOffset( VULKAN_HPP_NAMESPACE::Offset2D const & offset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ offset = offset_;
+ return *this;
+ }
+
+ RectLayerKHR & setExtent( VULKAN_HPP_NAMESPACE::Extent2D const & extent_ ) VULKAN_HPP_NOEXCEPT
+ {
+ extent = extent_;
+ return *this;
+ }
+
+ RectLayerKHR & setLayer( uint32_t layer_ ) VULKAN_HPP_NOEXCEPT
+ {
+ layer = layer_;
+ return *this;
+ }
+
+ operator VkRectLayerKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkRectLayerKHR *>( this );
+ }
+
+ operator VkRectLayerKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkRectLayerKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( RectLayerKHR const & ) const = default;
+#else
+ bool operator==( RectLayerKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( offset == rhs.offset ) && ( extent == rhs.extent ) && ( layer == rhs.layer );
+ }
+
+ bool operator!=( RectLayerKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::Offset2D offset = {};
+ VULKAN_HPP_NAMESPACE::Extent2D extent = {};
+ uint32_t layer = {};
+ };
+ static_assert( sizeof( RectLayerKHR ) == sizeof( VkRectLayerKHR ), "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<RectLayerKHR>::value, "struct wrapper is not a standard layout!" );
+
+ struct PresentRegionKHR
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ PresentRegionKHR( uint32_t rectangleCount_ = {},
+ const VULKAN_HPP_NAMESPACE::RectLayerKHR * pRectangles_ = {} ) VULKAN_HPP_NOEXCEPT
+ : rectangleCount( rectangleCount_ )
+ , pRectangles( pRectangles_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PresentRegionKHR( PresentRegionKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PresentRegionKHR( VkPresentRegionKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PresentRegionKHR( *reinterpret_cast<PresentRegionKHR const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ PresentRegionKHR(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::RectLayerKHR> const & rectangles_ )
+ : rectangleCount( static_cast<uint32_t>( rectangles_.size() ) ), pRectangles( rectangles_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PresentRegionKHR & operator=( PresentRegionKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PresentRegionKHR & operator=( VkPresentRegionKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PresentRegionKHR const *>( &rhs );
+ return *this;
+ }
+
+ PresentRegionKHR & setRectangleCount( uint32_t rectangleCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ rectangleCount = rectangleCount_;
+ return *this;
+ }
+
+ PresentRegionKHR & setPRectangles( const VULKAN_HPP_NAMESPACE::RectLayerKHR * pRectangles_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pRectangles = pRectangles_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ PresentRegionKHR & setRectangles(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::RectLayerKHR> const & rectangles_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ rectangleCount = static_cast<uint32_t>( rectangles_.size() );
+ pRectangles = rectangles_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkPresentRegionKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPresentRegionKHR *>( this );
+ }
+
+ operator VkPresentRegionKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPresentRegionKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PresentRegionKHR const & ) const = default;
+#else
+ bool operator==( PresentRegionKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( rectangleCount == rhs.rectangleCount ) && ( pRectangles == rhs.pRectangles );
+ }
+
+ bool operator!=( PresentRegionKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ uint32_t rectangleCount = {};
+ const VULKAN_HPP_NAMESPACE::RectLayerKHR * pRectangles = {};
+ };
+ static_assert( sizeof( PresentRegionKHR ) == sizeof( VkPresentRegionKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PresentRegionKHR>::value, "struct wrapper is not a standard layout!" );
+
+ struct PresentRegionsKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePresentRegionsKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ PresentRegionsKHR( uint32_t swapchainCount_ = {},
+ const VULKAN_HPP_NAMESPACE::PresentRegionKHR * pRegions_ = {} ) VULKAN_HPP_NOEXCEPT
+ : swapchainCount( swapchainCount_ )
+ , pRegions( pRegions_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PresentRegionsKHR( PresentRegionsKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PresentRegionsKHR( VkPresentRegionsKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PresentRegionsKHR( *reinterpret_cast<PresentRegionsKHR const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ PresentRegionsKHR(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::PresentRegionKHR> const & regions_ )
+ : swapchainCount( static_cast<uint32_t>( regions_.size() ) ), pRegions( regions_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PresentRegionsKHR &
+ operator=( PresentRegionsKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PresentRegionsKHR & operator=( VkPresentRegionsKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PresentRegionsKHR const *>( &rhs );
+ return *this;
+ }
+
+ PresentRegionsKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PresentRegionsKHR & setSwapchainCount( uint32_t swapchainCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ swapchainCount = swapchainCount_;
+ return *this;
+ }
+
+ PresentRegionsKHR & setPRegions( const VULKAN_HPP_NAMESPACE::PresentRegionKHR * pRegions_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pRegions = pRegions_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ PresentRegionsKHR & setRegions(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::PresentRegionKHR> const & regions_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ swapchainCount = static_cast<uint32_t>( regions_.size() );
+ pRegions = regions_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkPresentRegionsKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPresentRegionsKHR *>( this );
+ }
+
+ operator VkPresentRegionsKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPresentRegionsKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PresentRegionsKHR const & ) const = default;
+#else
+ bool operator==( PresentRegionsKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( swapchainCount == rhs.swapchainCount ) &&
+ ( pRegions == rhs.pRegions );
+ }
+
+ bool operator!=( PresentRegionsKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePresentRegionsKHR;
+ const void * pNext = {};
+ uint32_t swapchainCount = {};
+ const VULKAN_HPP_NAMESPACE::PresentRegionKHR * pRegions = {};
+ };
+ static_assert( sizeof( PresentRegionsKHR ) == sizeof( VkPresentRegionsKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PresentRegionsKHR>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePresentRegionsKHR>
+ {
+ using Type = PresentRegionsKHR;
+ };
+
+ struct PresentTimeGOOGLE
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PresentTimeGOOGLE( uint32_t presentID_ = {},
+ uint64_t desiredPresentTime_ = {} ) VULKAN_HPP_NOEXCEPT
+ : presentID( presentID_ )
+ , desiredPresentTime( desiredPresentTime_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PresentTimeGOOGLE( PresentTimeGOOGLE const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PresentTimeGOOGLE( VkPresentTimeGOOGLE const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PresentTimeGOOGLE( *reinterpret_cast<PresentTimeGOOGLE const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PresentTimeGOOGLE &
+ operator=( PresentTimeGOOGLE const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PresentTimeGOOGLE & operator=( VkPresentTimeGOOGLE const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PresentTimeGOOGLE const *>( &rhs );
+ return *this;
+ }
+
+ PresentTimeGOOGLE & setPresentID( uint32_t presentID_ ) VULKAN_HPP_NOEXCEPT
+ {
+ presentID = presentID_;
+ return *this;
+ }
+
+ PresentTimeGOOGLE & setDesiredPresentTime( uint64_t desiredPresentTime_ ) VULKAN_HPP_NOEXCEPT
+ {
+ desiredPresentTime = desiredPresentTime_;
+ return *this;
+ }
+
+ operator VkPresentTimeGOOGLE const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPresentTimeGOOGLE *>( this );
+ }
+
+ operator VkPresentTimeGOOGLE &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPresentTimeGOOGLE *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PresentTimeGOOGLE const & ) const = default;
+#else
+ bool operator==( PresentTimeGOOGLE const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( presentID == rhs.presentID ) && ( desiredPresentTime == rhs.desiredPresentTime );
+ }
+
+ bool operator!=( PresentTimeGOOGLE const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ uint32_t presentID = {};
+ uint64_t desiredPresentTime = {};
+ };
+ static_assert( sizeof( PresentTimeGOOGLE ) == sizeof( VkPresentTimeGOOGLE ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PresentTimeGOOGLE>::value, "struct wrapper is not a standard layout!" );
+
+ struct PresentTimesInfoGOOGLE
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePresentTimesInfoGOOGLE;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ PresentTimesInfoGOOGLE( uint32_t swapchainCount_ = {},
+ const VULKAN_HPP_NAMESPACE::PresentTimeGOOGLE * pTimes_ = {} ) VULKAN_HPP_NOEXCEPT
+ : swapchainCount( swapchainCount_ )
+ , pTimes( pTimes_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR PresentTimesInfoGOOGLE( PresentTimesInfoGOOGLE const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PresentTimesInfoGOOGLE( VkPresentTimesInfoGOOGLE const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PresentTimesInfoGOOGLE( *reinterpret_cast<PresentTimesInfoGOOGLE const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ PresentTimesInfoGOOGLE(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::PresentTimeGOOGLE> const & times_ )
+ : swapchainCount( static_cast<uint32_t>( times_.size() ) ), pTimes( times_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PresentTimesInfoGOOGLE &
+ operator=( PresentTimesInfoGOOGLE const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PresentTimesInfoGOOGLE & operator=( VkPresentTimesInfoGOOGLE const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PresentTimesInfoGOOGLE const *>( &rhs );
+ return *this;
+ }
+
+ PresentTimesInfoGOOGLE & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PresentTimesInfoGOOGLE & setSwapchainCount( uint32_t swapchainCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ swapchainCount = swapchainCount_;
+ return *this;
+ }
+
+ PresentTimesInfoGOOGLE & setPTimes( const VULKAN_HPP_NAMESPACE::PresentTimeGOOGLE * pTimes_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pTimes = pTimes_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ PresentTimesInfoGOOGLE & setTimes(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::PresentTimeGOOGLE> const & times_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ swapchainCount = static_cast<uint32_t>( times_.size() );
+ pTimes = times_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkPresentTimesInfoGOOGLE const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPresentTimesInfoGOOGLE *>( this );
+ }
+
+ operator VkPresentTimesInfoGOOGLE &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPresentTimesInfoGOOGLE *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PresentTimesInfoGOOGLE const & ) const = default;
+#else
+ bool operator==( PresentTimesInfoGOOGLE const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( swapchainCount == rhs.swapchainCount ) &&
+ ( pTimes == rhs.pTimes );
+ }
+
+ bool operator!=( PresentTimesInfoGOOGLE const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePresentTimesInfoGOOGLE;
+ const void * pNext = {};
+ uint32_t swapchainCount = {};
+ const VULKAN_HPP_NAMESPACE::PresentTimeGOOGLE * pTimes = {};
+ };
+ static_assert( sizeof( PresentTimesInfoGOOGLE ) == sizeof( VkPresentTimesInfoGOOGLE ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PresentTimesInfoGOOGLE>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePresentTimesInfoGOOGLE>
+ {
+ using Type = PresentTimesInfoGOOGLE;
+ };
+
+ struct PrivateDataSlotCreateInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePrivateDataSlotCreateInfoEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR PrivateDataSlotCreateInfoEXT( VULKAN_HPP_NAMESPACE::PrivateDataSlotCreateFlagsEXT flags_ = {} )
+ VULKAN_HPP_NOEXCEPT : flags( flags_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ PrivateDataSlotCreateInfoEXT( PrivateDataSlotCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PrivateDataSlotCreateInfoEXT( VkPrivateDataSlotCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : PrivateDataSlotCreateInfoEXT( *reinterpret_cast<PrivateDataSlotCreateInfoEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 PrivateDataSlotCreateInfoEXT &
+ operator=( PrivateDataSlotCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ PrivateDataSlotCreateInfoEXT & operator=( VkPrivateDataSlotCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PrivateDataSlotCreateInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ PrivateDataSlotCreateInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PrivateDataSlotCreateInfoEXT &
+ setFlags( VULKAN_HPP_NAMESPACE::PrivateDataSlotCreateFlagsEXT flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ operator VkPrivateDataSlotCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkPrivateDataSlotCreateInfoEXT *>( this );
+ }
+
+ operator VkPrivateDataSlotCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkPrivateDataSlotCreateInfoEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( PrivateDataSlotCreateInfoEXT const & ) const = default;
+#else
+ bool operator==( PrivateDataSlotCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags );
+ }
+
+ bool operator!=( PrivateDataSlotCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePrivateDataSlotCreateInfoEXT;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::PrivateDataSlotCreateFlagsEXT flags = {};
+ };
+ static_assert( sizeof( PrivateDataSlotCreateInfoEXT ) == sizeof( VkPrivateDataSlotCreateInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<PrivateDataSlotCreateInfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::ePrivateDataSlotCreateInfoEXT>
+ {
+ using Type = PrivateDataSlotCreateInfoEXT;
+ };
+
+ struct ProtectedSubmitInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eProtectedSubmitInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR ProtectedSubmitInfo( VULKAN_HPP_NAMESPACE::Bool32 protectedSubmit_ = {} ) VULKAN_HPP_NOEXCEPT
+ : protectedSubmit( protectedSubmit_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR ProtectedSubmitInfo( ProtectedSubmitInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ProtectedSubmitInfo( VkProtectedSubmitInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ProtectedSubmitInfo( *reinterpret_cast<ProtectedSubmitInfo const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ProtectedSubmitInfo &
+ operator=( ProtectedSubmitInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ProtectedSubmitInfo & operator=( VkProtectedSubmitInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ProtectedSubmitInfo const *>( &rhs );
+ return *this;
+ }
+
+ ProtectedSubmitInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ ProtectedSubmitInfo & setProtectedSubmit( VULKAN_HPP_NAMESPACE::Bool32 protectedSubmit_ ) VULKAN_HPP_NOEXCEPT
+ {
+ protectedSubmit = protectedSubmit_;
+ return *this;
+ }
+
+ operator VkProtectedSubmitInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkProtectedSubmitInfo *>( this );
+ }
+
+ operator VkProtectedSubmitInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkProtectedSubmitInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ProtectedSubmitInfo const & ) const = default;
+#else
+ bool operator==( ProtectedSubmitInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( protectedSubmit == rhs.protectedSubmit );
+ }
+
+ bool operator!=( ProtectedSubmitInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eProtectedSubmitInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 protectedSubmit = {};
+ };
+ static_assert( sizeof( ProtectedSubmitInfo ) == sizeof( VkProtectedSubmitInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ProtectedSubmitInfo>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eProtectedSubmitInfo>
+ {
+ using Type = ProtectedSubmitInfo;
+ };
+
+ struct QueryPoolCreateInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eQueryPoolCreateInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR QueryPoolCreateInfo(
+ VULKAN_HPP_NAMESPACE::QueryPoolCreateFlags flags_ = {},
+ VULKAN_HPP_NAMESPACE::QueryType queryType_ = VULKAN_HPP_NAMESPACE::QueryType::eOcclusion,
+ uint32_t queryCount_ = {},
+ VULKAN_HPP_NAMESPACE::QueryPipelineStatisticFlags pipelineStatistics_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , queryType( queryType_ )
+ , queryCount( queryCount_ )
+ , pipelineStatistics( pipelineStatistics_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR QueryPoolCreateInfo( QueryPoolCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ QueryPoolCreateInfo( VkQueryPoolCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : QueryPoolCreateInfo( *reinterpret_cast<QueryPoolCreateInfo const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 QueryPoolCreateInfo &
+ operator=( QueryPoolCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ QueryPoolCreateInfo & operator=( VkQueryPoolCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::QueryPoolCreateInfo const *>( &rhs );
+ return *this;
+ }
+
+ QueryPoolCreateInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ QueryPoolCreateInfo & setFlags( VULKAN_HPP_NAMESPACE::QueryPoolCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ QueryPoolCreateInfo & setQueryType( VULKAN_HPP_NAMESPACE::QueryType queryType_ ) VULKAN_HPP_NOEXCEPT
+ {
+ queryType = queryType_;
+ return *this;
+ }
+
+ QueryPoolCreateInfo & setQueryCount( uint32_t queryCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ queryCount = queryCount_;
+ return *this;
+ }
+
+ QueryPoolCreateInfo &
+ setPipelineStatistics( VULKAN_HPP_NAMESPACE::QueryPipelineStatisticFlags pipelineStatistics_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pipelineStatistics = pipelineStatistics_;
+ return *this;
+ }
+
+ operator VkQueryPoolCreateInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkQueryPoolCreateInfo *>( this );
+ }
+
+ operator VkQueryPoolCreateInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkQueryPoolCreateInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( QueryPoolCreateInfo const & ) const = default;
+#else
+ bool operator==( QueryPoolCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( queryType == rhs.queryType ) && ( queryCount == rhs.queryCount ) &&
+ ( pipelineStatistics == rhs.pipelineStatistics );
+ }
+
+ bool operator!=( QueryPoolCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eQueryPoolCreateInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::QueryPoolCreateFlags flags = {};
+ VULKAN_HPP_NAMESPACE::QueryType queryType = VULKAN_HPP_NAMESPACE::QueryType::eOcclusion;
+ uint32_t queryCount = {};
+ VULKAN_HPP_NAMESPACE::QueryPipelineStatisticFlags pipelineStatistics = {};
+ };
+ static_assert( sizeof( QueryPoolCreateInfo ) == sizeof( VkQueryPoolCreateInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<QueryPoolCreateInfo>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eQueryPoolCreateInfo>
+ {
+ using Type = QueryPoolCreateInfo;
+ };
+
+ struct QueryPoolPerformanceCreateInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eQueryPoolPerformanceCreateInfoKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR QueryPoolPerformanceCreateInfoKHR( uint32_t queueFamilyIndex_ = {},
+ uint32_t counterIndexCount_ = {},
+ const uint32_t * pCounterIndices_ = {} ) VULKAN_HPP_NOEXCEPT
+ : queueFamilyIndex( queueFamilyIndex_ )
+ , counterIndexCount( counterIndexCount_ )
+ , pCounterIndices( pCounterIndices_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ QueryPoolPerformanceCreateInfoKHR( QueryPoolPerformanceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ QueryPoolPerformanceCreateInfoKHR( VkQueryPoolPerformanceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : QueryPoolPerformanceCreateInfoKHR( *reinterpret_cast<QueryPoolPerformanceCreateInfoKHR const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ QueryPoolPerformanceCreateInfoKHR(
+ uint32_t queueFamilyIndex_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & counterIndices_ )
+ : queueFamilyIndex( queueFamilyIndex_ )
+ , counterIndexCount( static_cast<uint32_t>( counterIndices_.size() ) )
+ , pCounterIndices( counterIndices_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 QueryPoolPerformanceCreateInfoKHR &
+ operator=( QueryPoolPerformanceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ QueryPoolPerformanceCreateInfoKHR & operator=( VkQueryPoolPerformanceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::QueryPoolPerformanceCreateInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ QueryPoolPerformanceCreateInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ QueryPoolPerformanceCreateInfoKHR & setQueueFamilyIndex( uint32_t queueFamilyIndex_ ) VULKAN_HPP_NOEXCEPT
+ {
+ queueFamilyIndex = queueFamilyIndex_;
+ return *this;
+ }
+
+ QueryPoolPerformanceCreateInfoKHR & setCounterIndexCount( uint32_t counterIndexCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ counterIndexCount = counterIndexCount_;
+ return *this;
+ }
+
+ QueryPoolPerformanceCreateInfoKHR & setPCounterIndices( const uint32_t * pCounterIndices_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pCounterIndices = pCounterIndices_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ QueryPoolPerformanceCreateInfoKHR & setCounterIndices(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & counterIndices_ ) VULKAN_HPP_NOEXCEPT
+ {
+ counterIndexCount = static_cast<uint32_t>( counterIndices_.size() );
+ pCounterIndices = counterIndices_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkQueryPoolPerformanceCreateInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkQueryPoolPerformanceCreateInfoKHR *>( this );
+ }
+
+ operator VkQueryPoolPerformanceCreateInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkQueryPoolPerformanceCreateInfoKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( QueryPoolPerformanceCreateInfoKHR const & ) const = default;
+#else
+ bool operator==( QueryPoolPerformanceCreateInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( queueFamilyIndex == rhs.queueFamilyIndex ) &&
+ ( counterIndexCount == rhs.counterIndexCount ) && ( pCounterIndices == rhs.pCounterIndices );
+ }
+
+ bool operator!=( QueryPoolPerformanceCreateInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eQueryPoolPerformanceCreateInfoKHR;
+ const void * pNext = {};
+ uint32_t queueFamilyIndex = {};
+ uint32_t counterIndexCount = {};
+ const uint32_t * pCounterIndices = {};
+ };
+ static_assert( sizeof( QueryPoolPerformanceCreateInfoKHR ) == sizeof( VkQueryPoolPerformanceCreateInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<QueryPoolPerformanceCreateInfoKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eQueryPoolPerformanceCreateInfoKHR>
+ {
+ using Type = QueryPoolPerformanceCreateInfoKHR;
+ };
+
+ struct QueryPoolPerformanceQueryCreateInfoINTEL
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eQueryPoolPerformanceQueryCreateInfoINTEL;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR QueryPoolPerformanceQueryCreateInfoINTEL(
+ VULKAN_HPP_NAMESPACE::QueryPoolSamplingModeINTEL performanceCountersSampling_ =
+ VULKAN_HPP_NAMESPACE::QueryPoolSamplingModeINTEL::eManual ) VULKAN_HPP_NOEXCEPT
+ : performanceCountersSampling( performanceCountersSampling_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR QueryPoolPerformanceQueryCreateInfoINTEL(
+ QueryPoolPerformanceQueryCreateInfoINTEL const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ QueryPoolPerformanceQueryCreateInfoINTEL( VkQueryPoolPerformanceQueryCreateInfoINTEL const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : QueryPoolPerformanceQueryCreateInfoINTEL(
+ *reinterpret_cast<QueryPoolPerformanceQueryCreateInfoINTEL const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 QueryPoolPerformanceQueryCreateInfoINTEL &
+ operator=( QueryPoolPerformanceQueryCreateInfoINTEL const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ QueryPoolPerformanceQueryCreateInfoINTEL &
+ operator=( VkQueryPoolPerformanceQueryCreateInfoINTEL const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::QueryPoolPerformanceQueryCreateInfoINTEL const *>( &rhs );
+ return *this;
+ }
+
+ QueryPoolPerformanceQueryCreateInfoINTEL & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ QueryPoolPerformanceQueryCreateInfoINTEL & setPerformanceCountersSampling(
+ VULKAN_HPP_NAMESPACE::QueryPoolSamplingModeINTEL performanceCountersSampling_ ) VULKAN_HPP_NOEXCEPT
+ {
+ performanceCountersSampling = performanceCountersSampling_;
+ return *this;
+ }
+
+ operator VkQueryPoolPerformanceQueryCreateInfoINTEL const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkQueryPoolPerformanceQueryCreateInfoINTEL *>( this );
+ }
+
+ operator VkQueryPoolPerformanceQueryCreateInfoINTEL &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkQueryPoolPerformanceQueryCreateInfoINTEL *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( QueryPoolPerformanceQueryCreateInfoINTEL const & ) const = default;
+#else
+ bool operator==( QueryPoolPerformanceQueryCreateInfoINTEL const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( performanceCountersSampling == rhs.performanceCountersSampling );
+ }
+
+ bool operator!=( QueryPoolPerformanceQueryCreateInfoINTEL const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eQueryPoolPerformanceQueryCreateInfoINTEL;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::QueryPoolSamplingModeINTEL performanceCountersSampling =
+ VULKAN_HPP_NAMESPACE::QueryPoolSamplingModeINTEL::eManual;
+ };
+ static_assert( sizeof( QueryPoolPerformanceQueryCreateInfoINTEL ) ==
+ sizeof( VkQueryPoolPerformanceQueryCreateInfoINTEL ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<QueryPoolPerformanceQueryCreateInfoINTEL>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eQueryPoolPerformanceQueryCreateInfoINTEL>
+ {
+ using Type = QueryPoolPerformanceQueryCreateInfoINTEL;
+ };
+ using QueryPoolCreateInfoINTEL = QueryPoolPerformanceQueryCreateInfoINTEL;
+
+ struct QueueFamilyCheckpointProperties2NV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eQueueFamilyCheckpointProperties2NV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR QueueFamilyCheckpointProperties2NV(
+ VULKAN_HPP_NAMESPACE::PipelineStageFlags2KHR checkpointExecutionStageMask_ = {} ) VULKAN_HPP_NOEXCEPT
+ : checkpointExecutionStageMask( checkpointExecutionStageMask_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR QueueFamilyCheckpointProperties2NV( QueueFamilyCheckpointProperties2NV const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ QueueFamilyCheckpointProperties2NV( VkQueueFamilyCheckpointProperties2NV const & rhs ) VULKAN_HPP_NOEXCEPT
+ : QueueFamilyCheckpointProperties2NV( *reinterpret_cast<QueueFamilyCheckpointProperties2NV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 QueueFamilyCheckpointProperties2NV &
+ operator=( QueueFamilyCheckpointProperties2NV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ QueueFamilyCheckpointProperties2NV &
+ operator=( VkQueueFamilyCheckpointProperties2NV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::QueueFamilyCheckpointProperties2NV const *>( &rhs );
+ return *this;
+ }
+
+ operator VkQueueFamilyCheckpointProperties2NV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkQueueFamilyCheckpointProperties2NV *>( this );
+ }
+
+ operator VkQueueFamilyCheckpointProperties2NV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkQueueFamilyCheckpointProperties2NV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( QueueFamilyCheckpointProperties2NV const & ) const = default;
+#else
+ bool operator==( QueueFamilyCheckpointProperties2NV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( checkpointExecutionStageMask == rhs.checkpointExecutionStageMask );
+ }
+
+ bool operator!=( QueueFamilyCheckpointProperties2NV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eQueueFamilyCheckpointProperties2NV;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::PipelineStageFlags2KHR checkpointExecutionStageMask = {};
+ };
+ static_assert( sizeof( QueueFamilyCheckpointProperties2NV ) == sizeof( VkQueueFamilyCheckpointProperties2NV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<QueueFamilyCheckpointProperties2NV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eQueueFamilyCheckpointProperties2NV>
+ {
+ using Type = QueueFamilyCheckpointProperties2NV;
+ };
+
+ struct QueueFamilyCheckpointPropertiesNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eQueueFamilyCheckpointPropertiesNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR QueueFamilyCheckpointPropertiesNV(
+ VULKAN_HPP_NAMESPACE::PipelineStageFlags checkpointExecutionStageMask_ = {} ) VULKAN_HPP_NOEXCEPT
+ : checkpointExecutionStageMask( checkpointExecutionStageMask_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ QueueFamilyCheckpointPropertiesNV( QueueFamilyCheckpointPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ QueueFamilyCheckpointPropertiesNV( VkQueueFamilyCheckpointPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ : QueueFamilyCheckpointPropertiesNV( *reinterpret_cast<QueueFamilyCheckpointPropertiesNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 QueueFamilyCheckpointPropertiesNV &
+ operator=( QueueFamilyCheckpointPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ QueueFamilyCheckpointPropertiesNV & operator=( VkQueueFamilyCheckpointPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::QueueFamilyCheckpointPropertiesNV const *>( &rhs );
+ return *this;
+ }
+
+ operator VkQueueFamilyCheckpointPropertiesNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkQueueFamilyCheckpointPropertiesNV *>( this );
+ }
+
+ operator VkQueueFamilyCheckpointPropertiesNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkQueueFamilyCheckpointPropertiesNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( QueueFamilyCheckpointPropertiesNV const & ) const = default;
+#else
+ bool operator==( QueueFamilyCheckpointPropertiesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( checkpointExecutionStageMask == rhs.checkpointExecutionStageMask );
+ }
+
+ bool operator!=( QueueFamilyCheckpointPropertiesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eQueueFamilyCheckpointPropertiesNV;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::PipelineStageFlags checkpointExecutionStageMask = {};
+ };
+ static_assert( sizeof( QueueFamilyCheckpointPropertiesNV ) == sizeof( VkQueueFamilyCheckpointPropertiesNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<QueueFamilyCheckpointPropertiesNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eQueueFamilyCheckpointPropertiesNV>
+ {
+ using Type = QueueFamilyCheckpointPropertiesNV;
+ };
+
+ struct QueueFamilyGlobalPriorityPropertiesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eQueueFamilyGlobalPriorityPropertiesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR_14 QueueFamilyGlobalPriorityPropertiesEXT(
+ uint32_t priorityCount_ = {},
+ std::array<VULKAN_HPP_NAMESPACE::QueueGlobalPriorityEXT, VK_MAX_GLOBAL_PRIORITY_SIZE_EXT> const &
+ priorities_ = { { VULKAN_HPP_NAMESPACE::QueueGlobalPriorityEXT::eLow,
+ VULKAN_HPP_NAMESPACE::QueueGlobalPriorityEXT::eLow,
+ VULKAN_HPP_NAMESPACE::QueueGlobalPriorityEXT::eLow,
+ VULKAN_HPP_NAMESPACE::QueueGlobalPriorityEXT::eLow,
+ VULKAN_HPP_NAMESPACE::QueueGlobalPriorityEXT::eLow,
+ VULKAN_HPP_NAMESPACE::QueueGlobalPriorityEXT::eLow,
+ VULKAN_HPP_NAMESPACE::QueueGlobalPriorityEXT::eLow,
+ VULKAN_HPP_NAMESPACE::QueueGlobalPriorityEXT::eLow,
+ VULKAN_HPP_NAMESPACE::QueueGlobalPriorityEXT::eLow,
+ VULKAN_HPP_NAMESPACE::QueueGlobalPriorityEXT::eLow,
+ VULKAN_HPP_NAMESPACE::QueueGlobalPriorityEXT::eLow,
+ VULKAN_HPP_NAMESPACE::QueueGlobalPriorityEXT::eLow,
+ VULKAN_HPP_NAMESPACE::QueueGlobalPriorityEXT::eLow,
+ VULKAN_HPP_NAMESPACE::QueueGlobalPriorityEXT::eLow,
+ VULKAN_HPP_NAMESPACE::QueueGlobalPriorityEXT::eLow,
+ VULKAN_HPP_NAMESPACE::QueueGlobalPriorityEXT::eLow } } ) VULKAN_HPP_NOEXCEPT
+ : priorityCount( priorityCount_ )
+ , priorities( priorities_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR_14 QueueFamilyGlobalPriorityPropertiesEXT( QueueFamilyGlobalPriorityPropertiesEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ QueueFamilyGlobalPriorityPropertiesEXT( VkQueueFamilyGlobalPriorityPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : QueueFamilyGlobalPriorityPropertiesEXT(
+ *reinterpret_cast<QueueFamilyGlobalPriorityPropertiesEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 QueueFamilyGlobalPriorityPropertiesEXT &
+ operator=( QueueFamilyGlobalPriorityPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ QueueFamilyGlobalPriorityPropertiesEXT &
+ operator=( VkQueueFamilyGlobalPriorityPropertiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::QueueFamilyGlobalPriorityPropertiesEXT const *>( &rhs );
+ return *this;
+ }
+
+ QueueFamilyGlobalPriorityPropertiesEXT & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ QueueFamilyGlobalPriorityPropertiesEXT & setPriorityCount( uint32_t priorityCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ priorityCount = priorityCount_;
+ return *this;
+ }
+
+ QueueFamilyGlobalPriorityPropertiesEXT & setPriorities(
+ std::array<VULKAN_HPP_NAMESPACE::QueueGlobalPriorityEXT, VK_MAX_GLOBAL_PRIORITY_SIZE_EXT> priorities_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ priorities = priorities_;
+ return *this;
+ }
+
+ operator VkQueueFamilyGlobalPriorityPropertiesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkQueueFamilyGlobalPriorityPropertiesEXT *>( this );
+ }
+
+ operator VkQueueFamilyGlobalPriorityPropertiesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkQueueFamilyGlobalPriorityPropertiesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( QueueFamilyGlobalPriorityPropertiesEXT const & ) const = default;
+#else
+ bool operator==( QueueFamilyGlobalPriorityPropertiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( priorityCount == rhs.priorityCount ) &&
+ ( priorities == rhs.priorities );
+ }
+
+ bool operator!=( QueueFamilyGlobalPriorityPropertiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eQueueFamilyGlobalPriorityPropertiesEXT;
+ void * pNext = {};
+ uint32_t priorityCount = {};
+ VULKAN_HPP_NAMESPACE::ArrayWrapper1D<VULKAN_HPP_NAMESPACE::QueueGlobalPriorityEXT, VK_MAX_GLOBAL_PRIORITY_SIZE_EXT>
+ priorities = {};
+ };
+ static_assert( sizeof( QueueFamilyGlobalPriorityPropertiesEXT ) == sizeof( VkQueueFamilyGlobalPriorityPropertiesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<QueueFamilyGlobalPriorityPropertiesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eQueueFamilyGlobalPriorityPropertiesEXT>
+ {
+ using Type = QueueFamilyGlobalPriorityPropertiesEXT;
+ };
+
+ struct QueueFamilyProperties
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ QueueFamilyProperties( VULKAN_HPP_NAMESPACE::QueueFlags queueFlags_ = {},
+ uint32_t queueCount_ = {},
+ uint32_t timestampValidBits_ = {},
+ VULKAN_HPP_NAMESPACE::Extent3D minImageTransferGranularity_ = {} ) VULKAN_HPP_NOEXCEPT
+ : queueFlags( queueFlags_ )
+ , queueCount( queueCount_ )
+ , timestampValidBits( timestampValidBits_ )
+ , minImageTransferGranularity( minImageTransferGranularity_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR QueueFamilyProperties( QueueFamilyProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ QueueFamilyProperties( VkQueueFamilyProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ : QueueFamilyProperties( *reinterpret_cast<QueueFamilyProperties const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 QueueFamilyProperties &
+ operator=( QueueFamilyProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ QueueFamilyProperties & operator=( VkQueueFamilyProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::QueueFamilyProperties const *>( &rhs );
+ return *this;
+ }
+
+ operator VkQueueFamilyProperties const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkQueueFamilyProperties *>( this );
+ }
+
+ operator VkQueueFamilyProperties &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkQueueFamilyProperties *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( QueueFamilyProperties const & ) const = default;
+#else
+ bool operator==( QueueFamilyProperties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( queueFlags == rhs.queueFlags ) && ( queueCount == rhs.queueCount ) &&
+ ( timestampValidBits == rhs.timestampValidBits ) &&
+ ( minImageTransferGranularity == rhs.minImageTransferGranularity );
+ }
+
+ bool operator!=( QueueFamilyProperties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::QueueFlags queueFlags = {};
+ uint32_t queueCount = {};
+ uint32_t timestampValidBits = {};
+ VULKAN_HPP_NAMESPACE::Extent3D minImageTransferGranularity = {};
+ };
+ static_assert( sizeof( QueueFamilyProperties ) == sizeof( VkQueueFamilyProperties ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<QueueFamilyProperties>::value, "struct wrapper is not a standard layout!" );
+
+ struct QueueFamilyProperties2
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eQueueFamilyProperties2;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR QueueFamilyProperties2(
+ VULKAN_HPP_NAMESPACE::QueueFamilyProperties queueFamilyProperties_ = {} ) VULKAN_HPP_NOEXCEPT
+ : queueFamilyProperties( queueFamilyProperties_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR QueueFamilyProperties2( QueueFamilyProperties2 const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ QueueFamilyProperties2( VkQueueFamilyProperties2 const & rhs ) VULKAN_HPP_NOEXCEPT
+ : QueueFamilyProperties2( *reinterpret_cast<QueueFamilyProperties2 const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 QueueFamilyProperties2 &
+ operator=( QueueFamilyProperties2 const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ QueueFamilyProperties2 & operator=( VkQueueFamilyProperties2 const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::QueueFamilyProperties2 const *>( &rhs );
+ return *this;
+ }
+
+ operator VkQueueFamilyProperties2 const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkQueueFamilyProperties2 *>( this );
+ }
+
+ operator VkQueueFamilyProperties2 &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkQueueFamilyProperties2 *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( QueueFamilyProperties2 const & ) const = default;
+#else
+ bool operator==( QueueFamilyProperties2 const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( queueFamilyProperties == rhs.queueFamilyProperties );
+ }
+
+ bool operator!=( QueueFamilyProperties2 const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eQueueFamilyProperties2;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::QueueFamilyProperties queueFamilyProperties = {};
+ };
+ static_assert( sizeof( QueueFamilyProperties2 ) == sizeof( VkQueueFamilyProperties2 ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<QueueFamilyProperties2>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eQueueFamilyProperties2>
+ {
+ using Type = QueueFamilyProperties2;
+ };
+ using QueueFamilyProperties2KHR = QueueFamilyProperties2;
+
+ struct RayTracingShaderGroupCreateInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eRayTracingShaderGroupCreateInfoKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ RayTracingShaderGroupCreateInfoKHR( VULKAN_HPP_NAMESPACE::RayTracingShaderGroupTypeKHR type_ =
+ VULKAN_HPP_NAMESPACE::RayTracingShaderGroupTypeKHR::eGeneral,
+ uint32_t generalShader_ = {},
+ uint32_t closestHitShader_ = {},
+ uint32_t anyHitShader_ = {},
+ uint32_t intersectionShader_ = {},
+ const void * pShaderGroupCaptureReplayHandle_ = {} ) VULKAN_HPP_NOEXCEPT
+ : type( type_ )
+ , generalShader( generalShader_ )
+ , closestHitShader( closestHitShader_ )
+ , anyHitShader( anyHitShader_ )
+ , intersectionShader( intersectionShader_ )
+ , pShaderGroupCaptureReplayHandle( pShaderGroupCaptureReplayHandle_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR RayTracingShaderGroupCreateInfoKHR( RayTracingShaderGroupCreateInfoKHR const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ RayTracingShaderGroupCreateInfoKHR( VkRayTracingShaderGroupCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : RayTracingShaderGroupCreateInfoKHR( *reinterpret_cast<RayTracingShaderGroupCreateInfoKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 RayTracingShaderGroupCreateInfoKHR &
+ operator=( RayTracingShaderGroupCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ RayTracingShaderGroupCreateInfoKHR &
+ operator=( VkRayTracingShaderGroupCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::RayTracingShaderGroupCreateInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ RayTracingShaderGroupCreateInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ RayTracingShaderGroupCreateInfoKHR &
+ setType( VULKAN_HPP_NAMESPACE::RayTracingShaderGroupTypeKHR type_ ) VULKAN_HPP_NOEXCEPT
+ {
+ type = type_;
+ return *this;
+ }
+
+ RayTracingShaderGroupCreateInfoKHR & setGeneralShader( uint32_t generalShader_ ) VULKAN_HPP_NOEXCEPT
+ {
+ generalShader = generalShader_;
+ return *this;
+ }
+
+ RayTracingShaderGroupCreateInfoKHR & setClosestHitShader( uint32_t closestHitShader_ ) VULKAN_HPP_NOEXCEPT
+ {
+ closestHitShader = closestHitShader_;
+ return *this;
+ }
+
+ RayTracingShaderGroupCreateInfoKHR & setAnyHitShader( uint32_t anyHitShader_ ) VULKAN_HPP_NOEXCEPT
+ {
+ anyHitShader = anyHitShader_;
+ return *this;
+ }
+
+ RayTracingShaderGroupCreateInfoKHR & setIntersectionShader( uint32_t intersectionShader_ ) VULKAN_HPP_NOEXCEPT
+ {
+ intersectionShader = intersectionShader_;
+ return *this;
+ }
+
+ RayTracingShaderGroupCreateInfoKHR &
+ setPShaderGroupCaptureReplayHandle( const void * pShaderGroupCaptureReplayHandle_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pShaderGroupCaptureReplayHandle = pShaderGroupCaptureReplayHandle_;
+ return *this;
+ }
+
+ operator VkRayTracingShaderGroupCreateInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkRayTracingShaderGroupCreateInfoKHR *>( this );
+ }
+
+ operator VkRayTracingShaderGroupCreateInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkRayTracingShaderGroupCreateInfoKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( RayTracingShaderGroupCreateInfoKHR const & ) const = default;
+#else
+ bool operator==( RayTracingShaderGroupCreateInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( type == rhs.type ) &&
+ ( generalShader == rhs.generalShader ) && ( closestHitShader == rhs.closestHitShader ) &&
+ ( anyHitShader == rhs.anyHitShader ) && ( intersectionShader == rhs.intersectionShader ) &&
+ ( pShaderGroupCaptureReplayHandle == rhs.pShaderGroupCaptureReplayHandle );
+ }
+
+ bool operator!=( RayTracingShaderGroupCreateInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eRayTracingShaderGroupCreateInfoKHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::RayTracingShaderGroupTypeKHR type =
+ VULKAN_HPP_NAMESPACE::RayTracingShaderGroupTypeKHR::eGeneral;
+ uint32_t generalShader = {};
+ uint32_t closestHitShader = {};
+ uint32_t anyHitShader = {};
+ uint32_t intersectionShader = {};
+ const void * pShaderGroupCaptureReplayHandle = {};
+ };
+ static_assert( sizeof( RayTracingShaderGroupCreateInfoKHR ) == sizeof( VkRayTracingShaderGroupCreateInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<RayTracingShaderGroupCreateInfoKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eRayTracingShaderGroupCreateInfoKHR>
+ {
+ using Type = RayTracingShaderGroupCreateInfoKHR;
+ };
+
+ struct RayTracingPipelineInterfaceCreateInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eRayTracingPipelineInterfaceCreateInfoKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ RayTracingPipelineInterfaceCreateInfoKHR( uint32_t maxPipelineRayPayloadSize_ = {},
+ uint32_t maxPipelineRayHitAttributeSize_ = {} ) VULKAN_HPP_NOEXCEPT
+ : maxPipelineRayPayloadSize( maxPipelineRayPayloadSize_ )
+ , maxPipelineRayHitAttributeSize( maxPipelineRayHitAttributeSize_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR RayTracingPipelineInterfaceCreateInfoKHR(
+ RayTracingPipelineInterfaceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ RayTracingPipelineInterfaceCreateInfoKHR( VkRayTracingPipelineInterfaceCreateInfoKHR const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : RayTracingPipelineInterfaceCreateInfoKHR(
+ *reinterpret_cast<RayTracingPipelineInterfaceCreateInfoKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 RayTracingPipelineInterfaceCreateInfoKHR &
+ operator=( RayTracingPipelineInterfaceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ RayTracingPipelineInterfaceCreateInfoKHR &
+ operator=( VkRayTracingPipelineInterfaceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::RayTracingPipelineInterfaceCreateInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ RayTracingPipelineInterfaceCreateInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ RayTracingPipelineInterfaceCreateInfoKHR &
+ setMaxPipelineRayPayloadSize( uint32_t maxPipelineRayPayloadSize_ ) VULKAN_HPP_NOEXCEPT
+ {
+ maxPipelineRayPayloadSize = maxPipelineRayPayloadSize_;
+ return *this;
+ }
+
+ RayTracingPipelineInterfaceCreateInfoKHR &
+ setMaxPipelineRayHitAttributeSize( uint32_t maxPipelineRayHitAttributeSize_ ) VULKAN_HPP_NOEXCEPT
+ {
+ maxPipelineRayHitAttributeSize = maxPipelineRayHitAttributeSize_;
+ return *this;
+ }
+
+ operator VkRayTracingPipelineInterfaceCreateInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkRayTracingPipelineInterfaceCreateInfoKHR *>( this );
+ }
+
+ operator VkRayTracingPipelineInterfaceCreateInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkRayTracingPipelineInterfaceCreateInfoKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( RayTracingPipelineInterfaceCreateInfoKHR const & ) const = default;
+#else
+ bool operator==( RayTracingPipelineInterfaceCreateInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( maxPipelineRayPayloadSize == rhs.maxPipelineRayPayloadSize ) &&
+ ( maxPipelineRayHitAttributeSize == rhs.maxPipelineRayHitAttributeSize );
+ }
+
+ bool operator!=( RayTracingPipelineInterfaceCreateInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eRayTracingPipelineInterfaceCreateInfoKHR;
+ const void * pNext = {};
+ uint32_t maxPipelineRayPayloadSize = {};
+ uint32_t maxPipelineRayHitAttributeSize = {};
+ };
+ static_assert( sizeof( RayTracingPipelineInterfaceCreateInfoKHR ) ==
+ sizeof( VkRayTracingPipelineInterfaceCreateInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<RayTracingPipelineInterfaceCreateInfoKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eRayTracingPipelineInterfaceCreateInfoKHR>
+ {
+ using Type = RayTracingPipelineInterfaceCreateInfoKHR;
+ };
+
+ struct RayTracingPipelineCreateInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eRayTracingPipelineCreateInfoKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR RayTracingPipelineCreateInfoKHR(
+ VULKAN_HPP_NAMESPACE::PipelineCreateFlags flags_ = {},
+ uint32_t stageCount_ = {},
+ const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo * pStages_ = {},
+ uint32_t groupCount_ = {},
+ const VULKAN_HPP_NAMESPACE::RayTracingShaderGroupCreateInfoKHR * pGroups_ = {},
+ uint32_t maxPipelineRayRecursionDepth_ = {},
+ const VULKAN_HPP_NAMESPACE::PipelineLibraryCreateInfoKHR * pLibraryInfo_ = {},
+ const VULKAN_HPP_NAMESPACE::RayTracingPipelineInterfaceCreateInfoKHR * pLibraryInterface_ = {},
+ const VULKAN_HPP_NAMESPACE::PipelineDynamicStateCreateInfo * pDynamicState_ = {},
+ VULKAN_HPP_NAMESPACE::PipelineLayout layout_ = {},
+ VULKAN_HPP_NAMESPACE::Pipeline basePipelineHandle_ = {},
+ int32_t basePipelineIndex_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , stageCount( stageCount_ )
+ , pStages( pStages_ )
+ , groupCount( groupCount_ )
+ , pGroups( pGroups_ )
+ , maxPipelineRayRecursionDepth( maxPipelineRayRecursionDepth_ )
+ , pLibraryInfo( pLibraryInfo_ )
+ , pLibraryInterface( pLibraryInterface_ )
+ , pDynamicState( pDynamicState_ )
+ , layout( layout_ )
+ , basePipelineHandle( basePipelineHandle_ )
+ , basePipelineIndex( basePipelineIndex_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ RayTracingPipelineCreateInfoKHR( RayTracingPipelineCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ RayTracingPipelineCreateInfoKHR( VkRayTracingPipelineCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : RayTracingPipelineCreateInfoKHR( *reinterpret_cast<RayTracingPipelineCreateInfoKHR const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ RayTracingPipelineCreateInfoKHR(
+ VULKAN_HPP_NAMESPACE::PipelineCreateFlags flags_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo> const &
+ stages_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<
+ const VULKAN_HPP_NAMESPACE::RayTracingShaderGroupCreateInfoKHR> const & groups_ = {},
+ uint32_t maxPipelineRayRecursionDepth_ = {},
+ const VULKAN_HPP_NAMESPACE::PipelineLibraryCreateInfoKHR * pLibraryInfo_ = {},
+ const VULKAN_HPP_NAMESPACE::RayTracingPipelineInterfaceCreateInfoKHR * pLibraryInterface_ = {},
+ const VULKAN_HPP_NAMESPACE::PipelineDynamicStateCreateInfo * pDynamicState_ = {},
+ VULKAN_HPP_NAMESPACE::PipelineLayout layout_ = {},
+ VULKAN_HPP_NAMESPACE::Pipeline basePipelineHandle_ = {},
+ int32_t basePipelineIndex_ = {} )
+ : flags( flags_ )
+ , stageCount( static_cast<uint32_t>( stages_.size() ) )
+ , pStages( stages_.data() )
+ , groupCount( static_cast<uint32_t>( groups_.size() ) )
+ , pGroups( groups_.data() )
+ , maxPipelineRayRecursionDepth( maxPipelineRayRecursionDepth_ )
+ , pLibraryInfo( pLibraryInfo_ )
+ , pLibraryInterface( pLibraryInterface_ )
+ , pDynamicState( pDynamicState_ )
+ , layout( layout_ )
+ , basePipelineHandle( basePipelineHandle_ )
+ , basePipelineIndex( basePipelineIndex_ )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 RayTracingPipelineCreateInfoKHR &
+ operator=( RayTracingPipelineCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ RayTracingPipelineCreateInfoKHR & operator=( VkRayTracingPipelineCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ RayTracingPipelineCreateInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ RayTracingPipelineCreateInfoKHR & setFlags( VULKAN_HPP_NAMESPACE::PipelineCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ RayTracingPipelineCreateInfoKHR & setStageCount( uint32_t stageCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ stageCount = stageCount_;
+ return *this;
+ }
+
+ RayTracingPipelineCreateInfoKHR &
+ setPStages( const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo * pStages_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pStages = pStages_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ RayTracingPipelineCreateInfoKHR & setStages(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo> const &
+ stages_ ) VULKAN_HPP_NOEXCEPT
+ {
+ stageCount = static_cast<uint32_t>( stages_.size() );
+ pStages = stages_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ RayTracingPipelineCreateInfoKHR & setGroupCount( uint32_t groupCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ groupCount = groupCount_;
+ return *this;
+ }
+
+ RayTracingPipelineCreateInfoKHR &
+ setPGroups( const VULKAN_HPP_NAMESPACE::RayTracingShaderGroupCreateInfoKHR * pGroups_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pGroups = pGroups_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ RayTracingPipelineCreateInfoKHR &
+ setGroups( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<
+ const VULKAN_HPP_NAMESPACE::RayTracingShaderGroupCreateInfoKHR> const & groups_ ) VULKAN_HPP_NOEXCEPT
+ {
+ groupCount = static_cast<uint32_t>( groups_.size() );
+ pGroups = groups_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ RayTracingPipelineCreateInfoKHR &
+ setMaxPipelineRayRecursionDepth( uint32_t maxPipelineRayRecursionDepth_ ) VULKAN_HPP_NOEXCEPT
+ {
+ maxPipelineRayRecursionDepth = maxPipelineRayRecursionDepth_;
+ return *this;
+ }
+
+ RayTracingPipelineCreateInfoKHR &
+ setPLibraryInfo( const VULKAN_HPP_NAMESPACE::PipelineLibraryCreateInfoKHR * pLibraryInfo_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pLibraryInfo = pLibraryInfo_;
+ return *this;
+ }
+
+ RayTracingPipelineCreateInfoKHR & setPLibraryInterface(
+ const VULKAN_HPP_NAMESPACE::RayTracingPipelineInterfaceCreateInfoKHR * pLibraryInterface_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pLibraryInterface = pLibraryInterface_;
+ return *this;
+ }
+
+ RayTracingPipelineCreateInfoKHR & setPDynamicState(
+ const VULKAN_HPP_NAMESPACE::PipelineDynamicStateCreateInfo * pDynamicState_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pDynamicState = pDynamicState_;
+ return *this;
+ }
+
+ RayTracingPipelineCreateInfoKHR & setLayout( VULKAN_HPP_NAMESPACE::PipelineLayout layout_ ) VULKAN_HPP_NOEXCEPT
+ {
+ layout = layout_;
+ return *this;
+ }
+
+ RayTracingPipelineCreateInfoKHR &
+ setBasePipelineHandle( VULKAN_HPP_NAMESPACE::Pipeline basePipelineHandle_ ) VULKAN_HPP_NOEXCEPT
+ {
+ basePipelineHandle = basePipelineHandle_;
+ return *this;
+ }
+
+ RayTracingPipelineCreateInfoKHR & setBasePipelineIndex( int32_t basePipelineIndex_ ) VULKAN_HPP_NOEXCEPT
+ {
+ basePipelineIndex = basePipelineIndex_;
+ return *this;
+ }
+
+ operator VkRayTracingPipelineCreateInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkRayTracingPipelineCreateInfoKHR *>( this );
+ }
+
+ operator VkRayTracingPipelineCreateInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkRayTracingPipelineCreateInfoKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( RayTracingPipelineCreateInfoKHR const & ) const = default;
+#else
+ bool operator==( RayTracingPipelineCreateInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( stageCount == rhs.stageCount ) && ( pStages == rhs.pStages ) && ( groupCount == rhs.groupCount ) &&
+ ( pGroups == rhs.pGroups ) && ( maxPipelineRayRecursionDepth == rhs.maxPipelineRayRecursionDepth ) &&
+ ( pLibraryInfo == rhs.pLibraryInfo ) && ( pLibraryInterface == rhs.pLibraryInterface ) &&
+ ( pDynamicState == rhs.pDynamicState ) && ( layout == rhs.layout ) &&
+ ( basePipelineHandle == rhs.basePipelineHandle ) && ( basePipelineIndex == rhs.basePipelineIndex );
+ }
+
+ bool operator!=( RayTracingPipelineCreateInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eRayTracingPipelineCreateInfoKHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::PipelineCreateFlags flags = {};
+ uint32_t stageCount = {};
+ const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo * pStages = {};
+ uint32_t groupCount = {};
+ const VULKAN_HPP_NAMESPACE::RayTracingShaderGroupCreateInfoKHR * pGroups = {};
+ uint32_t maxPipelineRayRecursionDepth = {};
+ const VULKAN_HPP_NAMESPACE::PipelineLibraryCreateInfoKHR * pLibraryInfo = {};
+ const VULKAN_HPP_NAMESPACE::RayTracingPipelineInterfaceCreateInfoKHR * pLibraryInterface = {};
+ const VULKAN_HPP_NAMESPACE::PipelineDynamicStateCreateInfo * pDynamicState = {};
+ VULKAN_HPP_NAMESPACE::PipelineLayout layout = {};
+ VULKAN_HPP_NAMESPACE::Pipeline basePipelineHandle = {};
+ int32_t basePipelineIndex = {};
+ };
+ static_assert( sizeof( RayTracingPipelineCreateInfoKHR ) == sizeof( VkRayTracingPipelineCreateInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<RayTracingPipelineCreateInfoKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eRayTracingPipelineCreateInfoKHR>
+ {
+ using Type = RayTracingPipelineCreateInfoKHR;
+ };
+
+ struct RayTracingShaderGroupCreateInfoNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eRayTracingShaderGroupCreateInfoNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ RayTracingShaderGroupCreateInfoNV( VULKAN_HPP_NAMESPACE::RayTracingShaderGroupTypeKHR type_ =
+ VULKAN_HPP_NAMESPACE::RayTracingShaderGroupTypeKHR::eGeneral,
+ uint32_t generalShader_ = {},
+ uint32_t closestHitShader_ = {},
+ uint32_t anyHitShader_ = {},
+ uint32_t intersectionShader_ = {} ) VULKAN_HPP_NOEXCEPT
+ : type( type_ )
+ , generalShader( generalShader_ )
+ , closestHitShader( closestHitShader_ )
+ , anyHitShader( anyHitShader_ )
+ , intersectionShader( intersectionShader_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ RayTracingShaderGroupCreateInfoNV( RayTracingShaderGroupCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ RayTracingShaderGroupCreateInfoNV( VkRayTracingShaderGroupCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ : RayTracingShaderGroupCreateInfoNV( *reinterpret_cast<RayTracingShaderGroupCreateInfoNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 RayTracingShaderGroupCreateInfoNV &
+ operator=( RayTracingShaderGroupCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ RayTracingShaderGroupCreateInfoNV & operator=( VkRayTracingShaderGroupCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::RayTracingShaderGroupCreateInfoNV const *>( &rhs );
+ return *this;
+ }
+
+ RayTracingShaderGroupCreateInfoNV & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ RayTracingShaderGroupCreateInfoNV &
+ setType( VULKAN_HPP_NAMESPACE::RayTracingShaderGroupTypeKHR type_ ) VULKAN_HPP_NOEXCEPT
+ {
+ type = type_;
+ return *this;
+ }
+
+ RayTracingShaderGroupCreateInfoNV & setGeneralShader( uint32_t generalShader_ ) VULKAN_HPP_NOEXCEPT
+ {
+ generalShader = generalShader_;
+ return *this;
+ }
+
+ RayTracingShaderGroupCreateInfoNV & setClosestHitShader( uint32_t closestHitShader_ ) VULKAN_HPP_NOEXCEPT
+ {
+ closestHitShader = closestHitShader_;
+ return *this;
+ }
+
+ RayTracingShaderGroupCreateInfoNV & setAnyHitShader( uint32_t anyHitShader_ ) VULKAN_HPP_NOEXCEPT
+ {
+ anyHitShader = anyHitShader_;
+ return *this;
+ }
+
+ RayTracingShaderGroupCreateInfoNV & setIntersectionShader( uint32_t intersectionShader_ ) VULKAN_HPP_NOEXCEPT
+ {
+ intersectionShader = intersectionShader_;
+ return *this;
+ }
+
+ operator VkRayTracingShaderGroupCreateInfoNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkRayTracingShaderGroupCreateInfoNV *>( this );
+ }
+
+ operator VkRayTracingShaderGroupCreateInfoNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkRayTracingShaderGroupCreateInfoNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( RayTracingShaderGroupCreateInfoNV const & ) const = default;
+#else
+ bool operator==( RayTracingShaderGroupCreateInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( type == rhs.type ) &&
+ ( generalShader == rhs.generalShader ) && ( closestHitShader == rhs.closestHitShader ) &&
+ ( anyHitShader == rhs.anyHitShader ) && ( intersectionShader == rhs.intersectionShader );
+ }
+
+ bool operator!=( RayTracingShaderGroupCreateInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eRayTracingShaderGroupCreateInfoNV;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::RayTracingShaderGroupTypeKHR type =
+ VULKAN_HPP_NAMESPACE::RayTracingShaderGroupTypeKHR::eGeneral;
+ uint32_t generalShader = {};
+ uint32_t closestHitShader = {};
+ uint32_t anyHitShader = {};
+ uint32_t intersectionShader = {};
+ };
+ static_assert( sizeof( RayTracingShaderGroupCreateInfoNV ) == sizeof( VkRayTracingShaderGroupCreateInfoNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<RayTracingShaderGroupCreateInfoNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eRayTracingShaderGroupCreateInfoNV>
+ {
+ using Type = RayTracingShaderGroupCreateInfoNV;
+ };
+
+ struct RayTracingPipelineCreateInfoNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eRayTracingPipelineCreateInfoNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ RayTracingPipelineCreateInfoNV( VULKAN_HPP_NAMESPACE::PipelineCreateFlags flags_ = {},
+ uint32_t stageCount_ = {},
+ const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo * pStages_ = {},
+ uint32_t groupCount_ = {},
+ const VULKAN_HPP_NAMESPACE::RayTracingShaderGroupCreateInfoNV * pGroups_ = {},
+ uint32_t maxRecursionDepth_ = {},
+ VULKAN_HPP_NAMESPACE::PipelineLayout layout_ = {},
+ VULKAN_HPP_NAMESPACE::Pipeline basePipelineHandle_ = {},
+ int32_t basePipelineIndex_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , stageCount( stageCount_ )
+ , pStages( pStages_ )
+ , groupCount( groupCount_ )
+ , pGroups( pGroups_ )
+ , maxRecursionDepth( maxRecursionDepth_ )
+ , layout( layout_ )
+ , basePipelineHandle( basePipelineHandle_ )
+ , basePipelineIndex( basePipelineIndex_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ RayTracingPipelineCreateInfoNV( RayTracingPipelineCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ RayTracingPipelineCreateInfoNV( VkRayTracingPipelineCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ : RayTracingPipelineCreateInfoNV( *reinterpret_cast<RayTracingPipelineCreateInfoNV const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ RayTracingPipelineCreateInfoNV(
+ VULKAN_HPP_NAMESPACE::PipelineCreateFlags flags_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo> const &
+ stages_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<
+ const VULKAN_HPP_NAMESPACE::RayTracingShaderGroupCreateInfoNV> const & groups_ = {},
+ uint32_t maxRecursionDepth_ = {},
+ VULKAN_HPP_NAMESPACE::PipelineLayout layout_ = {},
+ VULKAN_HPP_NAMESPACE::Pipeline basePipelineHandle_ = {},
+ int32_t basePipelineIndex_ = {} )
+ : flags( flags_ )
+ , stageCount( static_cast<uint32_t>( stages_.size() ) )
+ , pStages( stages_.data() )
+ , groupCount( static_cast<uint32_t>( groups_.size() ) )
+ , pGroups( groups_.data() )
+ , maxRecursionDepth( maxRecursionDepth_ )
+ , layout( layout_ )
+ , basePipelineHandle( basePipelineHandle_ )
+ , basePipelineIndex( basePipelineIndex_ )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 RayTracingPipelineCreateInfoNV &
+ operator=( RayTracingPipelineCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ RayTracingPipelineCreateInfoNV & operator=( VkRayTracingPipelineCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoNV const *>( &rhs );
+ return *this;
+ }
+
+ RayTracingPipelineCreateInfoNV & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ RayTracingPipelineCreateInfoNV & setFlags( VULKAN_HPP_NAMESPACE::PipelineCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ RayTracingPipelineCreateInfoNV & setStageCount( uint32_t stageCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ stageCount = stageCount_;
+ return *this;
+ }
+
+ RayTracingPipelineCreateInfoNV &
+ setPStages( const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo * pStages_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pStages = pStages_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ RayTracingPipelineCreateInfoNV & setStages(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo> const &
+ stages_ ) VULKAN_HPP_NOEXCEPT
+ {
+ stageCount = static_cast<uint32_t>( stages_.size() );
+ pStages = stages_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ RayTracingPipelineCreateInfoNV & setGroupCount( uint32_t groupCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ groupCount = groupCount_;
+ return *this;
+ }
+
+ RayTracingPipelineCreateInfoNV &
+ setPGroups( const VULKAN_HPP_NAMESPACE::RayTracingShaderGroupCreateInfoNV * pGroups_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pGroups = pGroups_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ RayTracingPipelineCreateInfoNV &
+ setGroups( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<
+ const VULKAN_HPP_NAMESPACE::RayTracingShaderGroupCreateInfoNV> const & groups_ ) VULKAN_HPP_NOEXCEPT
+ {
+ groupCount = static_cast<uint32_t>( groups_.size() );
+ pGroups = groups_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ RayTracingPipelineCreateInfoNV & setMaxRecursionDepth( uint32_t maxRecursionDepth_ ) VULKAN_HPP_NOEXCEPT
+ {
+ maxRecursionDepth = maxRecursionDepth_;
+ return *this;
+ }
+
+ RayTracingPipelineCreateInfoNV & setLayout( VULKAN_HPP_NAMESPACE::PipelineLayout layout_ ) VULKAN_HPP_NOEXCEPT
+ {
+ layout = layout_;
+ return *this;
+ }
+
+ RayTracingPipelineCreateInfoNV &
+ setBasePipelineHandle( VULKAN_HPP_NAMESPACE::Pipeline basePipelineHandle_ ) VULKAN_HPP_NOEXCEPT
+ {
+ basePipelineHandle = basePipelineHandle_;
+ return *this;
+ }
+
+ RayTracingPipelineCreateInfoNV & setBasePipelineIndex( int32_t basePipelineIndex_ ) VULKAN_HPP_NOEXCEPT
+ {
+ basePipelineIndex = basePipelineIndex_;
+ return *this;
+ }
+
+ operator VkRayTracingPipelineCreateInfoNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkRayTracingPipelineCreateInfoNV *>( this );
+ }
+
+ operator VkRayTracingPipelineCreateInfoNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkRayTracingPipelineCreateInfoNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( RayTracingPipelineCreateInfoNV const & ) const = default;
+#else
+ bool operator==( RayTracingPipelineCreateInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( stageCount == rhs.stageCount ) && ( pStages == rhs.pStages ) && ( groupCount == rhs.groupCount ) &&
+ ( pGroups == rhs.pGroups ) && ( maxRecursionDepth == rhs.maxRecursionDepth ) && ( layout == rhs.layout ) &&
+ ( basePipelineHandle == rhs.basePipelineHandle ) && ( basePipelineIndex == rhs.basePipelineIndex );
+ }
+
+ bool operator!=( RayTracingPipelineCreateInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eRayTracingPipelineCreateInfoNV;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::PipelineCreateFlags flags = {};
+ uint32_t stageCount = {};
+ const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo * pStages = {};
+ uint32_t groupCount = {};
+ const VULKAN_HPP_NAMESPACE::RayTracingShaderGroupCreateInfoNV * pGroups = {};
+ uint32_t maxRecursionDepth = {};
+ VULKAN_HPP_NAMESPACE::PipelineLayout layout = {};
+ VULKAN_HPP_NAMESPACE::Pipeline basePipelineHandle = {};
+ int32_t basePipelineIndex = {};
+ };
+ static_assert( sizeof( RayTracingPipelineCreateInfoNV ) == sizeof( VkRayTracingPipelineCreateInfoNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<RayTracingPipelineCreateInfoNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eRayTracingPipelineCreateInfoNV>
+ {
+ using Type = RayTracingPipelineCreateInfoNV;
+ };
+
+ struct RefreshCycleDurationGOOGLE
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR RefreshCycleDurationGOOGLE( uint64_t refreshDuration_ = {} ) VULKAN_HPP_NOEXCEPT
+ : refreshDuration( refreshDuration_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ RefreshCycleDurationGOOGLE( RefreshCycleDurationGOOGLE const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ RefreshCycleDurationGOOGLE( VkRefreshCycleDurationGOOGLE const & rhs ) VULKAN_HPP_NOEXCEPT
+ : RefreshCycleDurationGOOGLE( *reinterpret_cast<RefreshCycleDurationGOOGLE const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 RefreshCycleDurationGOOGLE &
+ operator=( RefreshCycleDurationGOOGLE const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ RefreshCycleDurationGOOGLE & operator=( VkRefreshCycleDurationGOOGLE const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::RefreshCycleDurationGOOGLE const *>( &rhs );
+ return *this;
+ }
+
+ operator VkRefreshCycleDurationGOOGLE const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkRefreshCycleDurationGOOGLE *>( this );
+ }
+
+ operator VkRefreshCycleDurationGOOGLE &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkRefreshCycleDurationGOOGLE *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( RefreshCycleDurationGOOGLE const & ) const = default;
+#else
+ bool operator==( RefreshCycleDurationGOOGLE const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( refreshDuration == rhs.refreshDuration );
+ }
+
+ bool operator!=( RefreshCycleDurationGOOGLE const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ uint64_t refreshDuration = {};
+ };
+ static_assert( sizeof( RefreshCycleDurationGOOGLE ) == sizeof( VkRefreshCycleDurationGOOGLE ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<RefreshCycleDurationGOOGLE>::value,
+ "struct wrapper is not a standard layout!" );
+
+ struct RenderPassAttachmentBeginInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eRenderPassAttachmentBeginInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ RenderPassAttachmentBeginInfo( uint32_t attachmentCount_ = {},
+ const VULKAN_HPP_NAMESPACE::ImageView * pAttachments_ = {} ) VULKAN_HPP_NOEXCEPT
+ : attachmentCount( attachmentCount_ )
+ , pAttachments( pAttachments_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ RenderPassAttachmentBeginInfo( RenderPassAttachmentBeginInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ RenderPassAttachmentBeginInfo( VkRenderPassAttachmentBeginInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : RenderPassAttachmentBeginInfo( *reinterpret_cast<RenderPassAttachmentBeginInfo const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ RenderPassAttachmentBeginInfo(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ImageView> const & attachments_ )
+ : attachmentCount( static_cast<uint32_t>( attachments_.size() ) ), pAttachments( attachments_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 RenderPassAttachmentBeginInfo &
+ operator=( RenderPassAttachmentBeginInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ RenderPassAttachmentBeginInfo & operator=( VkRenderPassAttachmentBeginInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::RenderPassAttachmentBeginInfo const *>( &rhs );
+ return *this;
+ }
+
+ RenderPassAttachmentBeginInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ RenderPassAttachmentBeginInfo & setAttachmentCount( uint32_t attachmentCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ attachmentCount = attachmentCount_;
+ return *this;
+ }
+
+ RenderPassAttachmentBeginInfo &
+ setPAttachments( const VULKAN_HPP_NAMESPACE::ImageView * pAttachments_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pAttachments = pAttachments_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ RenderPassAttachmentBeginInfo & setAttachments(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ImageView> const & attachments_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ attachmentCount = static_cast<uint32_t>( attachments_.size() );
+ pAttachments = attachments_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkRenderPassAttachmentBeginInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkRenderPassAttachmentBeginInfo *>( this );
+ }
+
+ operator VkRenderPassAttachmentBeginInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkRenderPassAttachmentBeginInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( RenderPassAttachmentBeginInfo const & ) const = default;
+#else
+ bool operator==( RenderPassAttachmentBeginInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( attachmentCount == rhs.attachmentCount ) &&
+ ( pAttachments == rhs.pAttachments );
+ }
+
+ bool operator!=( RenderPassAttachmentBeginInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eRenderPassAttachmentBeginInfo;
+ const void * pNext = {};
+ uint32_t attachmentCount = {};
+ const VULKAN_HPP_NAMESPACE::ImageView * pAttachments = {};
+ };
+ static_assert( sizeof( RenderPassAttachmentBeginInfo ) == sizeof( VkRenderPassAttachmentBeginInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<RenderPassAttachmentBeginInfo>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eRenderPassAttachmentBeginInfo>
+ {
+ using Type = RenderPassAttachmentBeginInfo;
+ };
+ using RenderPassAttachmentBeginInfoKHR = RenderPassAttachmentBeginInfo;
+
+ struct RenderPassBeginInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eRenderPassBeginInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR_14
+ RenderPassBeginInfo( VULKAN_HPP_NAMESPACE::RenderPass renderPass_ = {},
+ VULKAN_HPP_NAMESPACE::Framebuffer framebuffer_ = {},
+ VULKAN_HPP_NAMESPACE::Rect2D renderArea_ = {},
+ uint32_t clearValueCount_ = {},
+ const VULKAN_HPP_NAMESPACE::ClearValue * pClearValues_ = {} ) VULKAN_HPP_NOEXCEPT
+ : renderPass( renderPass_ )
+ , framebuffer( framebuffer_ )
+ , renderArea( renderArea_ )
+ , clearValueCount( clearValueCount_ )
+ , pClearValues( pClearValues_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR_14 RenderPassBeginInfo( RenderPassBeginInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ RenderPassBeginInfo( VkRenderPassBeginInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : RenderPassBeginInfo( *reinterpret_cast<RenderPassBeginInfo const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ RenderPassBeginInfo(
+ VULKAN_HPP_NAMESPACE::RenderPass renderPass_,
+ VULKAN_HPP_NAMESPACE::Framebuffer framebuffer_,
+ VULKAN_HPP_NAMESPACE::Rect2D renderArea_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ClearValue> const & clearValues_ )
+ : renderPass( renderPass_ )
+ , framebuffer( framebuffer_ )
+ , renderArea( renderArea_ )
+ , clearValueCount( static_cast<uint32_t>( clearValues_.size() ) )
+ , pClearValues( clearValues_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 RenderPassBeginInfo &
+ operator=( RenderPassBeginInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ RenderPassBeginInfo & operator=( VkRenderPassBeginInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::RenderPassBeginInfo const *>( &rhs );
+ return *this;
+ }
+
+ RenderPassBeginInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ RenderPassBeginInfo & setRenderPass( VULKAN_HPP_NAMESPACE::RenderPass renderPass_ ) VULKAN_HPP_NOEXCEPT
+ {
+ renderPass = renderPass_;
+ return *this;
+ }
+
+ RenderPassBeginInfo & setFramebuffer( VULKAN_HPP_NAMESPACE::Framebuffer framebuffer_ ) VULKAN_HPP_NOEXCEPT
+ {
+ framebuffer = framebuffer_;
+ return *this;
+ }
+
+ RenderPassBeginInfo & setRenderArea( VULKAN_HPP_NAMESPACE::Rect2D const & renderArea_ ) VULKAN_HPP_NOEXCEPT
+ {
+ renderArea = renderArea_;
+ return *this;
+ }
+
+ RenderPassBeginInfo & setClearValueCount( uint32_t clearValueCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ clearValueCount = clearValueCount_;
+ return *this;
+ }
+
+ RenderPassBeginInfo & setPClearValues( const VULKAN_HPP_NAMESPACE::ClearValue * pClearValues_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pClearValues = pClearValues_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ RenderPassBeginInfo & setClearValues(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ClearValue> const & clearValues_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ clearValueCount = static_cast<uint32_t>( clearValues_.size() );
+ pClearValues = clearValues_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkRenderPassBeginInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkRenderPassBeginInfo *>( this );
+ }
+
+ operator VkRenderPassBeginInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkRenderPassBeginInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( RenderPassBeginInfo const & ) const = default;
+#else
+ bool operator==( RenderPassBeginInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( renderPass == rhs.renderPass ) &&
+ ( framebuffer == rhs.framebuffer ) && ( renderArea == rhs.renderArea ) &&
+ ( clearValueCount == rhs.clearValueCount ) && ( pClearValues == rhs.pClearValues );
+ }
+
+ bool operator!=( RenderPassBeginInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eRenderPassBeginInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::RenderPass renderPass = {};
+ VULKAN_HPP_NAMESPACE::Framebuffer framebuffer = {};
+ VULKAN_HPP_NAMESPACE::Rect2D renderArea = {};
+ uint32_t clearValueCount = {};
+ const VULKAN_HPP_NAMESPACE::ClearValue * pClearValues = {};
+ };
+ static_assert( sizeof( RenderPassBeginInfo ) == sizeof( VkRenderPassBeginInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<RenderPassBeginInfo>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eRenderPassBeginInfo>
+ {
+ using Type = RenderPassBeginInfo;
+ };
+
+ struct SubpassDescription
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR SubpassDescription(
+ VULKAN_HPP_NAMESPACE::SubpassDescriptionFlags flags_ = {},
+ VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint_ = VULKAN_HPP_NAMESPACE::PipelineBindPoint::eGraphics,
+ uint32_t inputAttachmentCount_ = {},
+ const VULKAN_HPP_NAMESPACE::AttachmentReference * pInputAttachments_ = {},
+ uint32_t colorAttachmentCount_ = {},
+ const VULKAN_HPP_NAMESPACE::AttachmentReference * pColorAttachments_ = {},
+ const VULKAN_HPP_NAMESPACE::AttachmentReference * pResolveAttachments_ = {},
+ const VULKAN_HPP_NAMESPACE::AttachmentReference * pDepthStencilAttachment_ = {},
+ uint32_t preserveAttachmentCount_ = {},
+ const uint32_t * pPreserveAttachments_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , pipelineBindPoint( pipelineBindPoint_ )
+ , inputAttachmentCount( inputAttachmentCount_ )
+ , pInputAttachments( pInputAttachments_ )
+ , colorAttachmentCount( colorAttachmentCount_ )
+ , pColorAttachments( pColorAttachments_ )
+ , pResolveAttachments( pResolveAttachments_ )
+ , pDepthStencilAttachment( pDepthStencilAttachment_ )
+ , preserveAttachmentCount( preserveAttachmentCount_ )
+ , pPreserveAttachments( pPreserveAttachments_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR SubpassDescription( SubpassDescription const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SubpassDescription( VkSubpassDescription const & rhs ) VULKAN_HPP_NOEXCEPT
+ : SubpassDescription( *reinterpret_cast<SubpassDescription const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ SubpassDescription(
+ VULKAN_HPP_NAMESPACE::SubpassDescriptionFlags flags_,
+ VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AttachmentReference> const &
+ inputAttachments_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AttachmentReference> const &
+ colorAttachments_ = {},
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AttachmentReference> const &
+ resolveAttachments_ = {},
+ const VULKAN_HPP_NAMESPACE::AttachmentReference * pDepthStencilAttachment_ = {},
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & preserveAttachments_ = {} )
+ : flags( flags_ )
+ , pipelineBindPoint( pipelineBindPoint_ )
+ , inputAttachmentCount( static_cast<uint32_t>( inputAttachments_.size() ) )
+ , pInputAttachments( inputAttachments_.data() )
+ , colorAttachmentCount( static_cast<uint32_t>( colorAttachments_.size() ) )
+ , pColorAttachments( colorAttachments_.data() )
+ , pResolveAttachments( resolveAttachments_.data() )
+ , pDepthStencilAttachment( pDepthStencilAttachment_ )
+ , preserveAttachmentCount( static_cast<uint32_t>( preserveAttachments_.size() ) )
+ , pPreserveAttachments( preserveAttachments_.data() )
+ {
+# ifdef VULKAN_HPP_NO_EXCEPTIONS
+ VULKAN_HPP_ASSERT( resolveAttachments_.empty() || ( colorAttachments_.size() == resolveAttachments_.size() ) );
+# else
+ if ( !resolveAttachments_.empty() && ( colorAttachments_.size() != resolveAttachments_.size() ) )
+ {
+ throw LogicError(
+ VULKAN_HPP_NAMESPACE_STRING
+ "::SubpassDescription::SubpassDescription: !resolveAttachments_.empty() && ( colorAttachments_.size() != resolveAttachments_.size() )" );
+ }
+# endif /*VULKAN_HPP_NO_EXCEPTIONS*/
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 SubpassDescription &
+ operator=( SubpassDescription const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SubpassDescription & operator=( VkSubpassDescription const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SubpassDescription const *>( &rhs );
+ return *this;
+ }
+
+ SubpassDescription & setFlags( VULKAN_HPP_NAMESPACE::SubpassDescriptionFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ SubpassDescription &
+ setPipelineBindPoint( VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pipelineBindPoint = pipelineBindPoint_;
+ return *this;
+ }
+
+ SubpassDescription & setInputAttachmentCount( uint32_t inputAttachmentCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ inputAttachmentCount = inputAttachmentCount_;
+ return *this;
+ }
+
+ SubpassDescription &
+ setPInputAttachments( const VULKAN_HPP_NAMESPACE::AttachmentReference * pInputAttachments_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pInputAttachments = pInputAttachments_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ SubpassDescription & setInputAttachments(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AttachmentReference> const &
+ inputAttachments_ ) VULKAN_HPP_NOEXCEPT
+ {
+ inputAttachmentCount = static_cast<uint32_t>( inputAttachments_.size() );
+ pInputAttachments = inputAttachments_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ SubpassDescription & setColorAttachmentCount( uint32_t colorAttachmentCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ colorAttachmentCount = colorAttachmentCount_;
+ return *this;
+ }
+
+ SubpassDescription &
+ setPColorAttachments( const VULKAN_HPP_NAMESPACE::AttachmentReference * pColorAttachments_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pColorAttachments = pColorAttachments_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ SubpassDescription & setColorAttachments(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AttachmentReference> const &
+ colorAttachments_ ) VULKAN_HPP_NOEXCEPT
+ {
+ colorAttachmentCount = static_cast<uint32_t>( colorAttachments_.size() );
+ pColorAttachments = colorAttachments_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ SubpassDescription & setPResolveAttachments(
+ const VULKAN_HPP_NAMESPACE::AttachmentReference * pResolveAttachments_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pResolveAttachments = pResolveAttachments_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ SubpassDescription & setResolveAttachments(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AttachmentReference> const &
+ resolveAttachments_ ) VULKAN_HPP_NOEXCEPT
+ {
+ colorAttachmentCount = static_cast<uint32_t>( resolveAttachments_.size() );
+ pResolveAttachments = resolveAttachments_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ SubpassDescription & setPDepthStencilAttachment(
+ const VULKAN_HPP_NAMESPACE::AttachmentReference * pDepthStencilAttachment_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pDepthStencilAttachment = pDepthStencilAttachment_;
+ return *this;
+ }
+
+ SubpassDescription & setPreserveAttachmentCount( uint32_t preserveAttachmentCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ preserveAttachmentCount = preserveAttachmentCount_;
+ return *this;
+ }
+
+ SubpassDescription & setPPreserveAttachments( const uint32_t * pPreserveAttachments_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pPreserveAttachments = pPreserveAttachments_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ SubpassDescription & setPreserveAttachments(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & preserveAttachments_ ) VULKAN_HPP_NOEXCEPT
+ {
+ preserveAttachmentCount = static_cast<uint32_t>( preserveAttachments_.size() );
+ pPreserveAttachments = preserveAttachments_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkSubpassDescription const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkSubpassDescription *>( this );
+ }
+
+ operator VkSubpassDescription &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkSubpassDescription *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( SubpassDescription const & ) const = default;
+#else
+ bool operator==( SubpassDescription const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( flags == rhs.flags ) && ( pipelineBindPoint == rhs.pipelineBindPoint ) &&
+ ( inputAttachmentCount == rhs.inputAttachmentCount ) && ( pInputAttachments == rhs.pInputAttachments ) &&
+ ( colorAttachmentCount == rhs.colorAttachmentCount ) && ( pColorAttachments == rhs.pColorAttachments ) &&
+ ( pResolveAttachments == rhs.pResolveAttachments ) &&
+ ( pDepthStencilAttachment == rhs.pDepthStencilAttachment ) &&
+ ( preserveAttachmentCount == rhs.preserveAttachmentCount ) &&
+ ( pPreserveAttachments == rhs.pPreserveAttachments );
+ }
+
+ bool operator!=( SubpassDescription const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::SubpassDescriptionFlags flags = {};
+ VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint = VULKAN_HPP_NAMESPACE::PipelineBindPoint::eGraphics;
+ uint32_t inputAttachmentCount = {};
+ const VULKAN_HPP_NAMESPACE::AttachmentReference * pInputAttachments = {};
+ uint32_t colorAttachmentCount = {};
+ const VULKAN_HPP_NAMESPACE::AttachmentReference * pColorAttachments = {};
+ const VULKAN_HPP_NAMESPACE::AttachmentReference * pResolveAttachments = {};
+ const VULKAN_HPP_NAMESPACE::AttachmentReference * pDepthStencilAttachment = {};
+ uint32_t preserveAttachmentCount = {};
+ const uint32_t * pPreserveAttachments = {};
+ };
+ static_assert( sizeof( SubpassDescription ) == sizeof( VkSubpassDescription ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<SubpassDescription>::value, "struct wrapper is not a standard layout!" );
+
+ struct SubpassDependency
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ SubpassDependency( uint32_t srcSubpass_ = {},
+ uint32_t dstSubpass_ = {},
+ VULKAN_HPP_NAMESPACE::PipelineStageFlags srcStageMask_ = {},
+ VULKAN_HPP_NAMESPACE::PipelineStageFlags dstStageMask_ = {},
+ VULKAN_HPP_NAMESPACE::AccessFlags srcAccessMask_ = {},
+ VULKAN_HPP_NAMESPACE::AccessFlags dstAccessMask_ = {},
+ VULKAN_HPP_NAMESPACE::DependencyFlags dependencyFlags_ = {} ) VULKAN_HPP_NOEXCEPT
+ : srcSubpass( srcSubpass_ )
+ , dstSubpass( dstSubpass_ )
+ , srcStageMask( srcStageMask_ )
+ , dstStageMask( dstStageMask_ )
+ , srcAccessMask( srcAccessMask_ )
+ , dstAccessMask( dstAccessMask_ )
+ , dependencyFlags( dependencyFlags_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR SubpassDependency( SubpassDependency const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SubpassDependency( VkSubpassDependency const & rhs ) VULKAN_HPP_NOEXCEPT
+ : SubpassDependency( *reinterpret_cast<SubpassDependency const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 SubpassDependency &
+ operator=( SubpassDependency const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SubpassDependency & operator=( VkSubpassDependency const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SubpassDependency const *>( &rhs );
+ return *this;
+ }
+
+ SubpassDependency & setSrcSubpass( uint32_t srcSubpass_ ) VULKAN_HPP_NOEXCEPT
+ {
+ srcSubpass = srcSubpass_;
+ return *this;
+ }
+
+ SubpassDependency & setDstSubpass( uint32_t dstSubpass_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstSubpass = dstSubpass_;
+ return *this;
+ }
+
+ SubpassDependency & setSrcStageMask( VULKAN_HPP_NAMESPACE::PipelineStageFlags srcStageMask_ ) VULKAN_HPP_NOEXCEPT
+ {
+ srcStageMask = srcStageMask_;
+ return *this;
+ }
+
+ SubpassDependency & setDstStageMask( VULKAN_HPP_NAMESPACE::PipelineStageFlags dstStageMask_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstStageMask = dstStageMask_;
+ return *this;
+ }
+
+ SubpassDependency & setSrcAccessMask( VULKAN_HPP_NAMESPACE::AccessFlags srcAccessMask_ ) VULKAN_HPP_NOEXCEPT
+ {
+ srcAccessMask = srcAccessMask_;
+ return *this;
+ }
+
+ SubpassDependency & setDstAccessMask( VULKAN_HPP_NAMESPACE::AccessFlags dstAccessMask_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstAccessMask = dstAccessMask_;
+ return *this;
+ }
+
+ SubpassDependency & setDependencyFlags( VULKAN_HPP_NAMESPACE::DependencyFlags dependencyFlags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dependencyFlags = dependencyFlags_;
+ return *this;
+ }
+
+ operator VkSubpassDependency const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkSubpassDependency *>( this );
+ }
+
+ operator VkSubpassDependency &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkSubpassDependency *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( SubpassDependency const & ) const = default;
+#else
+ bool operator==( SubpassDependency const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( srcSubpass == rhs.srcSubpass ) && ( dstSubpass == rhs.dstSubpass ) &&
+ ( srcStageMask == rhs.srcStageMask ) && ( dstStageMask == rhs.dstStageMask ) &&
+ ( srcAccessMask == rhs.srcAccessMask ) && ( dstAccessMask == rhs.dstAccessMask ) &&
+ ( dependencyFlags == rhs.dependencyFlags );
+ }
+
+ bool operator!=( SubpassDependency const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ uint32_t srcSubpass = {};
+ uint32_t dstSubpass = {};
+ VULKAN_HPP_NAMESPACE::PipelineStageFlags srcStageMask = {};
+ VULKAN_HPP_NAMESPACE::PipelineStageFlags dstStageMask = {};
+ VULKAN_HPP_NAMESPACE::AccessFlags srcAccessMask = {};
+ VULKAN_HPP_NAMESPACE::AccessFlags dstAccessMask = {};
+ VULKAN_HPP_NAMESPACE::DependencyFlags dependencyFlags = {};
+ };
+ static_assert( sizeof( SubpassDependency ) == sizeof( VkSubpassDependency ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<SubpassDependency>::value, "struct wrapper is not a standard layout!" );
+
+ struct RenderPassCreateInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eRenderPassCreateInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ RenderPassCreateInfo( VULKAN_HPP_NAMESPACE::RenderPassCreateFlags flags_ = {},
+ uint32_t attachmentCount_ = {},
+ const VULKAN_HPP_NAMESPACE::AttachmentDescription * pAttachments_ = {},
+ uint32_t subpassCount_ = {},
+ const VULKAN_HPP_NAMESPACE::SubpassDescription * pSubpasses_ = {},
+ uint32_t dependencyCount_ = {},
+ const VULKAN_HPP_NAMESPACE::SubpassDependency * pDependencies_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , attachmentCount( attachmentCount_ )
+ , pAttachments( pAttachments_ )
+ , subpassCount( subpassCount_ )
+ , pSubpasses( pSubpasses_ )
+ , dependencyCount( dependencyCount_ )
+ , pDependencies( pDependencies_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR RenderPassCreateInfo( RenderPassCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ RenderPassCreateInfo( VkRenderPassCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : RenderPassCreateInfo( *reinterpret_cast<RenderPassCreateInfo const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ RenderPassCreateInfo(
+ VULKAN_HPP_NAMESPACE::RenderPassCreateFlags flags_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AttachmentDescription> const &
+ attachments_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SubpassDescription> const &
+ subpasses_ = {},
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SubpassDependency> const &
+ dependencies_ = {} )
+ : flags( flags_ )
+ , attachmentCount( static_cast<uint32_t>( attachments_.size() ) )
+ , pAttachments( attachments_.data() )
+ , subpassCount( static_cast<uint32_t>( subpasses_.size() ) )
+ , pSubpasses( subpasses_.data() )
+ , dependencyCount( static_cast<uint32_t>( dependencies_.size() ) )
+ , pDependencies( dependencies_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 RenderPassCreateInfo &
+ operator=( RenderPassCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ RenderPassCreateInfo & operator=( VkRenderPassCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::RenderPassCreateInfo const *>( &rhs );
+ return *this;
+ }
+
+ RenderPassCreateInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ RenderPassCreateInfo & setFlags( VULKAN_HPP_NAMESPACE::RenderPassCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ RenderPassCreateInfo & setAttachmentCount( uint32_t attachmentCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ attachmentCount = attachmentCount_;
+ return *this;
+ }
+
+ RenderPassCreateInfo &
+ setPAttachments( const VULKAN_HPP_NAMESPACE::AttachmentDescription * pAttachments_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pAttachments = pAttachments_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ RenderPassCreateInfo & setAttachments(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AttachmentDescription> const &
+ attachments_ ) VULKAN_HPP_NOEXCEPT
+ {
+ attachmentCount = static_cast<uint32_t>( attachments_.size() );
+ pAttachments = attachments_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ RenderPassCreateInfo & setSubpassCount( uint32_t subpassCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ subpassCount = subpassCount_;
+ return *this;
+ }
+
+ RenderPassCreateInfo &
+ setPSubpasses( const VULKAN_HPP_NAMESPACE::SubpassDescription * pSubpasses_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pSubpasses = pSubpasses_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ RenderPassCreateInfo & setSubpasses(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SubpassDescription> const & subpasses_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ subpassCount = static_cast<uint32_t>( subpasses_.size() );
+ pSubpasses = subpasses_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ RenderPassCreateInfo & setDependencyCount( uint32_t dependencyCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dependencyCount = dependencyCount_;
+ return *this;
+ }
+
+ RenderPassCreateInfo &
+ setPDependencies( const VULKAN_HPP_NAMESPACE::SubpassDependency * pDependencies_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pDependencies = pDependencies_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ RenderPassCreateInfo & setDependencies(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SubpassDependency> const &
+ dependencies_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dependencyCount = static_cast<uint32_t>( dependencies_.size() );
+ pDependencies = dependencies_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkRenderPassCreateInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkRenderPassCreateInfo *>( this );
+ }
+
+ operator VkRenderPassCreateInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkRenderPassCreateInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( RenderPassCreateInfo const & ) const = default;
+#else
+ bool operator==( RenderPassCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( attachmentCount == rhs.attachmentCount ) && ( pAttachments == rhs.pAttachments ) &&
+ ( subpassCount == rhs.subpassCount ) && ( pSubpasses == rhs.pSubpasses ) &&
+ ( dependencyCount == rhs.dependencyCount ) && ( pDependencies == rhs.pDependencies );
+ }
+
+ bool operator!=( RenderPassCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eRenderPassCreateInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::RenderPassCreateFlags flags = {};
+ uint32_t attachmentCount = {};
+ const VULKAN_HPP_NAMESPACE::AttachmentDescription * pAttachments = {};
+ uint32_t subpassCount = {};
+ const VULKAN_HPP_NAMESPACE::SubpassDescription * pSubpasses = {};
+ uint32_t dependencyCount = {};
+ const VULKAN_HPP_NAMESPACE::SubpassDependency * pDependencies = {};
+ };
+ static_assert( sizeof( RenderPassCreateInfo ) == sizeof( VkRenderPassCreateInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<RenderPassCreateInfo>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eRenderPassCreateInfo>
+ {
+ using Type = RenderPassCreateInfo;
+ };
+
+ struct SubpassDescription2
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSubpassDescription2;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR SubpassDescription2(
+ VULKAN_HPP_NAMESPACE::SubpassDescriptionFlags flags_ = {},
+ VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint_ = VULKAN_HPP_NAMESPACE::PipelineBindPoint::eGraphics,
+ uint32_t viewMask_ = {},
+ uint32_t inputAttachmentCount_ = {},
+ const VULKAN_HPP_NAMESPACE::AttachmentReference2 * pInputAttachments_ = {},
+ uint32_t colorAttachmentCount_ = {},
+ const VULKAN_HPP_NAMESPACE::AttachmentReference2 * pColorAttachments_ = {},
+ const VULKAN_HPP_NAMESPACE::AttachmentReference2 * pResolveAttachments_ = {},
+ const VULKAN_HPP_NAMESPACE::AttachmentReference2 * pDepthStencilAttachment_ = {},
+ uint32_t preserveAttachmentCount_ = {},
+ const uint32_t * pPreserveAttachments_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , pipelineBindPoint( pipelineBindPoint_ )
+ , viewMask( viewMask_ )
+ , inputAttachmentCount( inputAttachmentCount_ )
+ , pInputAttachments( pInputAttachments_ )
+ , colorAttachmentCount( colorAttachmentCount_ )
+ , pColorAttachments( pColorAttachments_ )
+ , pResolveAttachments( pResolveAttachments_ )
+ , pDepthStencilAttachment( pDepthStencilAttachment_ )
+ , preserveAttachmentCount( preserveAttachmentCount_ )
+ , pPreserveAttachments( pPreserveAttachments_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR SubpassDescription2( SubpassDescription2 const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SubpassDescription2( VkSubpassDescription2 const & rhs ) VULKAN_HPP_NOEXCEPT
+ : SubpassDescription2( *reinterpret_cast<SubpassDescription2 const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ SubpassDescription2(
+ VULKAN_HPP_NAMESPACE::SubpassDescriptionFlags flags_,
+ VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint_,
+ uint32_t viewMask_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AttachmentReference2> const &
+ inputAttachments_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AttachmentReference2> const &
+ colorAttachments_ = {},
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AttachmentReference2> const &
+ resolveAttachments_ = {},
+ const VULKAN_HPP_NAMESPACE::AttachmentReference2 * pDepthStencilAttachment_ = {},
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & preserveAttachments_ = {} )
+ : flags( flags_ )
+ , pipelineBindPoint( pipelineBindPoint_ )
+ , viewMask( viewMask_ )
+ , inputAttachmentCount( static_cast<uint32_t>( inputAttachments_.size() ) )
+ , pInputAttachments( inputAttachments_.data() )
+ , colorAttachmentCount( static_cast<uint32_t>( colorAttachments_.size() ) )
+ , pColorAttachments( colorAttachments_.data() )
+ , pResolveAttachments( resolveAttachments_.data() )
+ , pDepthStencilAttachment( pDepthStencilAttachment_ )
+ , preserveAttachmentCount( static_cast<uint32_t>( preserveAttachments_.size() ) )
+ , pPreserveAttachments( preserveAttachments_.data() )
+ {
+# ifdef VULKAN_HPP_NO_EXCEPTIONS
+ VULKAN_HPP_ASSERT( resolveAttachments_.empty() || ( colorAttachments_.size() == resolveAttachments_.size() ) );
+# else
+ if ( !resolveAttachments_.empty() && ( colorAttachments_.size() != resolveAttachments_.size() ) )
+ {
+ throw LogicError(
+ VULKAN_HPP_NAMESPACE_STRING
+ "::SubpassDescription2::SubpassDescription2: !resolveAttachments_.empty() && ( colorAttachments_.size() != resolveAttachments_.size() )" );
+ }
+# endif /*VULKAN_HPP_NO_EXCEPTIONS*/
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 SubpassDescription2 &
+ operator=( SubpassDescription2 const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SubpassDescription2 & operator=( VkSubpassDescription2 const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SubpassDescription2 const *>( &rhs );
+ return *this;
+ }
+
+ SubpassDescription2 & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ SubpassDescription2 & setFlags( VULKAN_HPP_NAMESPACE::SubpassDescriptionFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ SubpassDescription2 &
+ setPipelineBindPoint( VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pipelineBindPoint = pipelineBindPoint_;
+ return *this;
+ }
+
+ SubpassDescription2 & setViewMask( uint32_t viewMask_ ) VULKAN_HPP_NOEXCEPT
+ {
+ viewMask = viewMask_;
+ return *this;
+ }
+
+ SubpassDescription2 & setInputAttachmentCount( uint32_t inputAttachmentCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ inputAttachmentCount = inputAttachmentCount_;
+ return *this;
+ }
+
+ SubpassDescription2 &
+ setPInputAttachments( const VULKAN_HPP_NAMESPACE::AttachmentReference2 * pInputAttachments_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pInputAttachments = pInputAttachments_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ SubpassDescription2 & setInputAttachments(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AttachmentReference2> const &
+ inputAttachments_ ) VULKAN_HPP_NOEXCEPT
+ {
+ inputAttachmentCount = static_cast<uint32_t>( inputAttachments_.size() );
+ pInputAttachments = inputAttachments_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ SubpassDescription2 & setColorAttachmentCount( uint32_t colorAttachmentCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ colorAttachmentCount = colorAttachmentCount_;
+ return *this;
+ }
+
+ SubpassDescription2 &
+ setPColorAttachments( const VULKAN_HPP_NAMESPACE::AttachmentReference2 * pColorAttachments_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pColorAttachments = pColorAttachments_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ SubpassDescription2 & setColorAttachments(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AttachmentReference2> const &
+ colorAttachments_ ) VULKAN_HPP_NOEXCEPT
+ {
+ colorAttachmentCount = static_cast<uint32_t>( colorAttachments_.size() );
+ pColorAttachments = colorAttachments_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ SubpassDescription2 & setPResolveAttachments(
+ const VULKAN_HPP_NAMESPACE::AttachmentReference2 * pResolveAttachments_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pResolveAttachments = pResolveAttachments_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ SubpassDescription2 & setResolveAttachments(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AttachmentReference2> const &
+ resolveAttachments_ ) VULKAN_HPP_NOEXCEPT
+ {
+ colorAttachmentCount = static_cast<uint32_t>( resolveAttachments_.size() );
+ pResolveAttachments = resolveAttachments_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ SubpassDescription2 & setPDepthStencilAttachment(
+ const VULKAN_HPP_NAMESPACE::AttachmentReference2 * pDepthStencilAttachment_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pDepthStencilAttachment = pDepthStencilAttachment_;
+ return *this;
+ }
+
+ SubpassDescription2 & setPreserveAttachmentCount( uint32_t preserveAttachmentCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ preserveAttachmentCount = preserveAttachmentCount_;
+ return *this;
+ }
+
+ SubpassDescription2 & setPPreserveAttachments( const uint32_t * pPreserveAttachments_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pPreserveAttachments = pPreserveAttachments_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ SubpassDescription2 & setPreserveAttachments(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & preserveAttachments_ ) VULKAN_HPP_NOEXCEPT
+ {
+ preserveAttachmentCount = static_cast<uint32_t>( preserveAttachments_.size() );
+ pPreserveAttachments = preserveAttachments_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkSubpassDescription2 const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkSubpassDescription2 *>( this );
+ }
+
+ operator VkSubpassDescription2 &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkSubpassDescription2 *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( SubpassDescription2 const & ) const = default;
+#else
+ bool operator==( SubpassDescription2 const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( pipelineBindPoint == rhs.pipelineBindPoint ) && ( viewMask == rhs.viewMask ) &&
+ ( inputAttachmentCount == rhs.inputAttachmentCount ) && ( pInputAttachments == rhs.pInputAttachments ) &&
+ ( colorAttachmentCount == rhs.colorAttachmentCount ) && ( pColorAttachments == rhs.pColorAttachments ) &&
+ ( pResolveAttachments == rhs.pResolveAttachments ) &&
+ ( pDepthStencilAttachment == rhs.pDepthStencilAttachment ) &&
+ ( preserveAttachmentCount == rhs.preserveAttachmentCount ) &&
+ ( pPreserveAttachments == rhs.pPreserveAttachments );
+ }
+
+ bool operator!=( SubpassDescription2 const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSubpassDescription2;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::SubpassDescriptionFlags flags = {};
+ VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint = VULKAN_HPP_NAMESPACE::PipelineBindPoint::eGraphics;
+ uint32_t viewMask = {};
+ uint32_t inputAttachmentCount = {};
+ const VULKAN_HPP_NAMESPACE::AttachmentReference2 * pInputAttachments = {};
+ uint32_t colorAttachmentCount = {};
+ const VULKAN_HPP_NAMESPACE::AttachmentReference2 * pColorAttachments = {};
+ const VULKAN_HPP_NAMESPACE::AttachmentReference2 * pResolveAttachments = {};
+ const VULKAN_HPP_NAMESPACE::AttachmentReference2 * pDepthStencilAttachment = {};
+ uint32_t preserveAttachmentCount = {};
+ const uint32_t * pPreserveAttachments = {};
+ };
+ static_assert( sizeof( SubpassDescription2 ) == sizeof( VkSubpassDescription2 ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<SubpassDescription2>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eSubpassDescription2>
+ {
+ using Type = SubpassDescription2;
+ };
+ using SubpassDescription2KHR = SubpassDescription2;
+
+ struct SubpassDependency2
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSubpassDependency2;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR SubpassDependency2( uint32_t srcSubpass_ = {},
+ uint32_t dstSubpass_ = {},
+ VULKAN_HPP_NAMESPACE::PipelineStageFlags srcStageMask_ = {},
+ VULKAN_HPP_NAMESPACE::PipelineStageFlags dstStageMask_ = {},
+ VULKAN_HPP_NAMESPACE::AccessFlags srcAccessMask_ = {},
+ VULKAN_HPP_NAMESPACE::AccessFlags dstAccessMask_ = {},
+ VULKAN_HPP_NAMESPACE::DependencyFlags dependencyFlags_ = {},
+ int32_t viewOffset_ = {} ) VULKAN_HPP_NOEXCEPT
+ : srcSubpass( srcSubpass_ )
+ , dstSubpass( dstSubpass_ )
+ , srcStageMask( srcStageMask_ )
+ , dstStageMask( dstStageMask_ )
+ , srcAccessMask( srcAccessMask_ )
+ , dstAccessMask( dstAccessMask_ )
+ , dependencyFlags( dependencyFlags_ )
+ , viewOffset( viewOffset_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR SubpassDependency2( SubpassDependency2 const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SubpassDependency2( VkSubpassDependency2 const & rhs ) VULKAN_HPP_NOEXCEPT
+ : SubpassDependency2( *reinterpret_cast<SubpassDependency2 const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 SubpassDependency2 &
+ operator=( SubpassDependency2 const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SubpassDependency2 & operator=( VkSubpassDependency2 const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SubpassDependency2 const *>( &rhs );
+ return *this;
+ }
+
+ SubpassDependency2 & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ SubpassDependency2 & setSrcSubpass( uint32_t srcSubpass_ ) VULKAN_HPP_NOEXCEPT
+ {
+ srcSubpass = srcSubpass_;
+ return *this;
+ }
+
+ SubpassDependency2 & setDstSubpass( uint32_t dstSubpass_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstSubpass = dstSubpass_;
+ return *this;
+ }
+
+ SubpassDependency2 & setSrcStageMask( VULKAN_HPP_NAMESPACE::PipelineStageFlags srcStageMask_ ) VULKAN_HPP_NOEXCEPT
+ {
+ srcStageMask = srcStageMask_;
+ return *this;
+ }
+
+ SubpassDependency2 & setDstStageMask( VULKAN_HPP_NAMESPACE::PipelineStageFlags dstStageMask_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstStageMask = dstStageMask_;
+ return *this;
+ }
+
+ SubpassDependency2 & setSrcAccessMask( VULKAN_HPP_NAMESPACE::AccessFlags srcAccessMask_ ) VULKAN_HPP_NOEXCEPT
+ {
+ srcAccessMask = srcAccessMask_;
+ return *this;
+ }
+
+ SubpassDependency2 & setDstAccessMask( VULKAN_HPP_NAMESPACE::AccessFlags dstAccessMask_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstAccessMask = dstAccessMask_;
+ return *this;
+ }
+
+ SubpassDependency2 &
+ setDependencyFlags( VULKAN_HPP_NAMESPACE::DependencyFlags dependencyFlags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dependencyFlags = dependencyFlags_;
+ return *this;
+ }
+
+ SubpassDependency2 & setViewOffset( int32_t viewOffset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ viewOffset = viewOffset_;
+ return *this;
+ }
+
+ operator VkSubpassDependency2 const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkSubpassDependency2 *>( this );
+ }
+
+ operator VkSubpassDependency2 &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkSubpassDependency2 *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( SubpassDependency2 const & ) const = default;
+#else
+ bool operator==( SubpassDependency2 const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( srcSubpass == rhs.srcSubpass ) &&
+ ( dstSubpass == rhs.dstSubpass ) && ( srcStageMask == rhs.srcStageMask ) &&
+ ( dstStageMask == rhs.dstStageMask ) && ( srcAccessMask == rhs.srcAccessMask ) &&
+ ( dstAccessMask == rhs.dstAccessMask ) && ( dependencyFlags == rhs.dependencyFlags ) &&
+ ( viewOffset == rhs.viewOffset );
+ }
+
+ bool operator!=( SubpassDependency2 const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSubpassDependency2;
+ const void * pNext = {};
+ uint32_t srcSubpass = {};
+ uint32_t dstSubpass = {};
+ VULKAN_HPP_NAMESPACE::PipelineStageFlags srcStageMask = {};
+ VULKAN_HPP_NAMESPACE::PipelineStageFlags dstStageMask = {};
+ VULKAN_HPP_NAMESPACE::AccessFlags srcAccessMask = {};
+ VULKAN_HPP_NAMESPACE::AccessFlags dstAccessMask = {};
+ VULKAN_HPP_NAMESPACE::DependencyFlags dependencyFlags = {};
+ int32_t viewOffset = {};
+ };
+ static_assert( sizeof( SubpassDependency2 ) == sizeof( VkSubpassDependency2 ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<SubpassDependency2>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eSubpassDependency2>
+ {
+ using Type = SubpassDependency2;
+ };
+ using SubpassDependency2KHR = SubpassDependency2;
+
+ struct RenderPassCreateInfo2
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eRenderPassCreateInfo2;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR RenderPassCreateInfo2( VULKAN_HPP_NAMESPACE::RenderPassCreateFlags flags_ = {},
+ uint32_t attachmentCount_ = {},
+ const VULKAN_HPP_NAMESPACE::AttachmentDescription2 * pAttachments_ = {},
+ uint32_t subpassCount_ = {},
+ const VULKAN_HPP_NAMESPACE::SubpassDescription2 * pSubpasses_ = {},
+ uint32_t dependencyCount_ = {},
+ const VULKAN_HPP_NAMESPACE::SubpassDependency2 * pDependencies_ = {},
+ uint32_t correlatedViewMaskCount_ = {},
+ const uint32_t * pCorrelatedViewMasks_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , attachmentCount( attachmentCount_ )
+ , pAttachments( pAttachments_ )
+ , subpassCount( subpassCount_ )
+ , pSubpasses( pSubpasses_ )
+ , dependencyCount( dependencyCount_ )
+ , pDependencies( pDependencies_ )
+ , correlatedViewMaskCount( correlatedViewMaskCount_ )
+ , pCorrelatedViewMasks( pCorrelatedViewMasks_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR RenderPassCreateInfo2( RenderPassCreateInfo2 const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ RenderPassCreateInfo2( VkRenderPassCreateInfo2 const & rhs ) VULKAN_HPP_NOEXCEPT
+ : RenderPassCreateInfo2( *reinterpret_cast<RenderPassCreateInfo2 const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ RenderPassCreateInfo2(
+ VULKAN_HPP_NAMESPACE::RenderPassCreateFlags flags_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AttachmentDescription2> const &
+ attachments_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SubpassDescription2> const &
+ subpasses_ = {},
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SubpassDependency2> const &
+ dependencies_ = {},
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & correlatedViewMasks_ = {} )
+ : flags( flags_ )
+ , attachmentCount( static_cast<uint32_t>( attachments_.size() ) )
+ , pAttachments( attachments_.data() )
+ , subpassCount( static_cast<uint32_t>( subpasses_.size() ) )
+ , pSubpasses( subpasses_.data() )
+ , dependencyCount( static_cast<uint32_t>( dependencies_.size() ) )
+ , pDependencies( dependencies_.data() )
+ , correlatedViewMaskCount( static_cast<uint32_t>( correlatedViewMasks_.size() ) )
+ , pCorrelatedViewMasks( correlatedViewMasks_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 RenderPassCreateInfo2 &
+ operator=( RenderPassCreateInfo2 const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ RenderPassCreateInfo2 & operator=( VkRenderPassCreateInfo2 const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::RenderPassCreateInfo2 const *>( &rhs );
+ return *this;
+ }
+
+ RenderPassCreateInfo2 & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ RenderPassCreateInfo2 & setFlags( VULKAN_HPP_NAMESPACE::RenderPassCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ RenderPassCreateInfo2 & setAttachmentCount( uint32_t attachmentCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ attachmentCount = attachmentCount_;
+ return *this;
+ }
+
+ RenderPassCreateInfo2 &
+ setPAttachments( const VULKAN_HPP_NAMESPACE::AttachmentDescription2 * pAttachments_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pAttachments = pAttachments_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ RenderPassCreateInfo2 & setAttachments(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AttachmentDescription2> const &
+ attachments_ ) VULKAN_HPP_NOEXCEPT
+ {
+ attachmentCount = static_cast<uint32_t>( attachments_.size() );
+ pAttachments = attachments_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ RenderPassCreateInfo2 & setSubpassCount( uint32_t subpassCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ subpassCount = subpassCount_;
+ return *this;
+ }
+
+ RenderPassCreateInfo2 &
+ setPSubpasses( const VULKAN_HPP_NAMESPACE::SubpassDescription2 * pSubpasses_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pSubpasses = pSubpasses_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ RenderPassCreateInfo2 & setSubpasses(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SubpassDescription2> const &
+ subpasses_ ) VULKAN_HPP_NOEXCEPT
+ {
+ subpassCount = static_cast<uint32_t>( subpasses_.size() );
+ pSubpasses = subpasses_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ RenderPassCreateInfo2 & setDependencyCount( uint32_t dependencyCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dependencyCount = dependencyCount_;
+ return *this;
+ }
+
+ RenderPassCreateInfo2 &
+ setPDependencies( const VULKAN_HPP_NAMESPACE::SubpassDependency2 * pDependencies_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pDependencies = pDependencies_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ RenderPassCreateInfo2 & setDependencies(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SubpassDependency2> const &
+ dependencies_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dependencyCount = static_cast<uint32_t>( dependencies_.size() );
+ pDependencies = dependencies_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ RenderPassCreateInfo2 & setCorrelatedViewMaskCount( uint32_t correlatedViewMaskCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ correlatedViewMaskCount = correlatedViewMaskCount_;
+ return *this;
+ }
+
+ RenderPassCreateInfo2 & setPCorrelatedViewMasks( const uint32_t * pCorrelatedViewMasks_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pCorrelatedViewMasks = pCorrelatedViewMasks_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ RenderPassCreateInfo2 & setCorrelatedViewMasks(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & correlatedViewMasks_ ) VULKAN_HPP_NOEXCEPT
+ {
+ correlatedViewMaskCount = static_cast<uint32_t>( correlatedViewMasks_.size() );
+ pCorrelatedViewMasks = correlatedViewMasks_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkRenderPassCreateInfo2 const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkRenderPassCreateInfo2 *>( this );
+ }
+
+ operator VkRenderPassCreateInfo2 &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkRenderPassCreateInfo2 *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( RenderPassCreateInfo2 const & ) const = default;
+#else
+ bool operator==( RenderPassCreateInfo2 const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( attachmentCount == rhs.attachmentCount ) && ( pAttachments == rhs.pAttachments ) &&
+ ( subpassCount == rhs.subpassCount ) && ( pSubpasses == rhs.pSubpasses ) &&
+ ( dependencyCount == rhs.dependencyCount ) && ( pDependencies == rhs.pDependencies ) &&
+ ( correlatedViewMaskCount == rhs.correlatedViewMaskCount ) &&
+ ( pCorrelatedViewMasks == rhs.pCorrelatedViewMasks );
+ }
+
+ bool operator!=( RenderPassCreateInfo2 const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eRenderPassCreateInfo2;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::RenderPassCreateFlags flags = {};
+ uint32_t attachmentCount = {};
+ const VULKAN_HPP_NAMESPACE::AttachmentDescription2 * pAttachments = {};
+ uint32_t subpassCount = {};
+ const VULKAN_HPP_NAMESPACE::SubpassDescription2 * pSubpasses = {};
+ uint32_t dependencyCount = {};
+ const VULKAN_HPP_NAMESPACE::SubpassDependency2 * pDependencies = {};
+ uint32_t correlatedViewMaskCount = {};
+ const uint32_t * pCorrelatedViewMasks = {};
+ };
+ static_assert( sizeof( RenderPassCreateInfo2 ) == sizeof( VkRenderPassCreateInfo2 ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<RenderPassCreateInfo2>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eRenderPassCreateInfo2>
+ {
+ using Type = RenderPassCreateInfo2;
+ };
+ using RenderPassCreateInfo2KHR = RenderPassCreateInfo2;
+
+ struct RenderPassFragmentDensityMapCreateInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eRenderPassFragmentDensityMapCreateInfoEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR RenderPassFragmentDensityMapCreateInfoEXT(
+ VULKAN_HPP_NAMESPACE::AttachmentReference fragmentDensityMapAttachment_ = {} ) VULKAN_HPP_NOEXCEPT
+ : fragmentDensityMapAttachment( fragmentDensityMapAttachment_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR RenderPassFragmentDensityMapCreateInfoEXT(
+ RenderPassFragmentDensityMapCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ RenderPassFragmentDensityMapCreateInfoEXT( VkRenderPassFragmentDensityMapCreateInfoEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : RenderPassFragmentDensityMapCreateInfoEXT(
+ *reinterpret_cast<RenderPassFragmentDensityMapCreateInfoEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 RenderPassFragmentDensityMapCreateInfoEXT &
+ operator=( RenderPassFragmentDensityMapCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ RenderPassFragmentDensityMapCreateInfoEXT &
+ operator=( VkRenderPassFragmentDensityMapCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::RenderPassFragmentDensityMapCreateInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ RenderPassFragmentDensityMapCreateInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ RenderPassFragmentDensityMapCreateInfoEXT & setFragmentDensityMapAttachment(
+ VULKAN_HPP_NAMESPACE::AttachmentReference const & fragmentDensityMapAttachment_ ) VULKAN_HPP_NOEXCEPT
+ {
+ fragmentDensityMapAttachment = fragmentDensityMapAttachment_;
+ return *this;
+ }
+
+ operator VkRenderPassFragmentDensityMapCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkRenderPassFragmentDensityMapCreateInfoEXT *>( this );
+ }
+
+ operator VkRenderPassFragmentDensityMapCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkRenderPassFragmentDensityMapCreateInfoEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( RenderPassFragmentDensityMapCreateInfoEXT const & ) const = default;
+#else
+ bool operator==( RenderPassFragmentDensityMapCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( fragmentDensityMapAttachment == rhs.fragmentDensityMapAttachment );
+ }
+
+ bool operator!=( RenderPassFragmentDensityMapCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eRenderPassFragmentDensityMapCreateInfoEXT;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::AttachmentReference fragmentDensityMapAttachment = {};
+ };
+ static_assert( sizeof( RenderPassFragmentDensityMapCreateInfoEXT ) ==
+ sizeof( VkRenderPassFragmentDensityMapCreateInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<RenderPassFragmentDensityMapCreateInfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eRenderPassFragmentDensityMapCreateInfoEXT>
+ {
+ using Type = RenderPassFragmentDensityMapCreateInfoEXT;
+ };
+
+ struct RenderPassInputAttachmentAspectCreateInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eRenderPassInputAttachmentAspectCreateInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR RenderPassInputAttachmentAspectCreateInfo(
+ uint32_t aspectReferenceCount_ = {},
+ const VULKAN_HPP_NAMESPACE::InputAttachmentAspectReference * pAspectReferences_ = {} ) VULKAN_HPP_NOEXCEPT
+ : aspectReferenceCount( aspectReferenceCount_ )
+ , pAspectReferences( pAspectReferences_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR RenderPassInputAttachmentAspectCreateInfo(
+ RenderPassInputAttachmentAspectCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ RenderPassInputAttachmentAspectCreateInfo( VkRenderPassInputAttachmentAspectCreateInfo const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : RenderPassInputAttachmentAspectCreateInfo(
+ *reinterpret_cast<RenderPassInputAttachmentAspectCreateInfo const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ RenderPassInputAttachmentAspectCreateInfo(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::InputAttachmentAspectReference> const &
+ aspectReferences_ )
+ : aspectReferenceCount( static_cast<uint32_t>( aspectReferences_.size() ) )
+ , pAspectReferences( aspectReferences_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 RenderPassInputAttachmentAspectCreateInfo &
+ operator=( RenderPassInputAttachmentAspectCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ RenderPassInputAttachmentAspectCreateInfo &
+ operator=( VkRenderPassInputAttachmentAspectCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::RenderPassInputAttachmentAspectCreateInfo const *>( &rhs );
+ return *this;
+ }
+
+ RenderPassInputAttachmentAspectCreateInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ RenderPassInputAttachmentAspectCreateInfo &
+ setAspectReferenceCount( uint32_t aspectReferenceCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ aspectReferenceCount = aspectReferenceCount_;
+ return *this;
+ }
+
+ RenderPassInputAttachmentAspectCreateInfo & setPAspectReferences(
+ const VULKAN_HPP_NAMESPACE::InputAttachmentAspectReference * pAspectReferences_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pAspectReferences = pAspectReferences_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ RenderPassInputAttachmentAspectCreateInfo & setAspectReferences(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::InputAttachmentAspectReference> const &
+ aspectReferences_ ) VULKAN_HPP_NOEXCEPT
+ {
+ aspectReferenceCount = static_cast<uint32_t>( aspectReferences_.size() );
+ pAspectReferences = aspectReferences_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkRenderPassInputAttachmentAspectCreateInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkRenderPassInputAttachmentAspectCreateInfo *>( this );
+ }
+
+ operator VkRenderPassInputAttachmentAspectCreateInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkRenderPassInputAttachmentAspectCreateInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( RenderPassInputAttachmentAspectCreateInfo const & ) const = default;
+#else
+ bool operator==( RenderPassInputAttachmentAspectCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( aspectReferenceCount == rhs.aspectReferenceCount ) &&
+ ( pAspectReferences == rhs.pAspectReferences );
+ }
+
+ bool operator!=( RenderPassInputAttachmentAspectCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eRenderPassInputAttachmentAspectCreateInfo;
+ const void * pNext = {};
+ uint32_t aspectReferenceCount = {};
+ const VULKAN_HPP_NAMESPACE::InputAttachmentAspectReference * pAspectReferences = {};
+ };
+ static_assert( sizeof( RenderPassInputAttachmentAspectCreateInfo ) ==
+ sizeof( VkRenderPassInputAttachmentAspectCreateInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<RenderPassInputAttachmentAspectCreateInfo>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eRenderPassInputAttachmentAspectCreateInfo>
+ {
+ using Type = RenderPassInputAttachmentAspectCreateInfo;
+ };
+ using RenderPassInputAttachmentAspectCreateInfoKHR = RenderPassInputAttachmentAspectCreateInfo;
+
+ struct RenderPassMultiviewCreateInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eRenderPassMultiviewCreateInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR RenderPassMultiviewCreateInfo( uint32_t subpassCount_ = {},
+ const uint32_t * pViewMasks_ = {},
+ uint32_t dependencyCount_ = {},
+ const int32_t * pViewOffsets_ = {},
+ uint32_t correlationMaskCount_ = {},
+ const uint32_t * pCorrelationMasks_ = {} ) VULKAN_HPP_NOEXCEPT
+ : subpassCount( subpassCount_ )
+ , pViewMasks( pViewMasks_ )
+ , dependencyCount( dependencyCount_ )
+ , pViewOffsets( pViewOffsets_ )
+ , correlationMaskCount( correlationMaskCount_ )
+ , pCorrelationMasks( pCorrelationMasks_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ RenderPassMultiviewCreateInfo( RenderPassMultiviewCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ RenderPassMultiviewCreateInfo( VkRenderPassMultiviewCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : RenderPassMultiviewCreateInfo( *reinterpret_cast<RenderPassMultiviewCreateInfo const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ RenderPassMultiviewCreateInfo(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & viewMasks_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const int32_t> const & viewOffsets_ = {},
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & correlationMasks_ = {} )
+ : subpassCount( static_cast<uint32_t>( viewMasks_.size() ) )
+ , pViewMasks( viewMasks_.data() )
+ , dependencyCount( static_cast<uint32_t>( viewOffsets_.size() ) )
+ , pViewOffsets( viewOffsets_.data() )
+ , correlationMaskCount( static_cast<uint32_t>( correlationMasks_.size() ) )
+ , pCorrelationMasks( correlationMasks_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 RenderPassMultiviewCreateInfo &
+ operator=( RenderPassMultiviewCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ RenderPassMultiviewCreateInfo & operator=( VkRenderPassMultiviewCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::RenderPassMultiviewCreateInfo const *>( &rhs );
+ return *this;
+ }
+
+ RenderPassMultiviewCreateInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ RenderPassMultiviewCreateInfo & setSubpassCount( uint32_t subpassCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ subpassCount = subpassCount_;
+ return *this;
+ }
+
+ RenderPassMultiviewCreateInfo & setPViewMasks( const uint32_t * pViewMasks_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pViewMasks = pViewMasks_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ RenderPassMultiviewCreateInfo & setViewMasks(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & viewMasks_ ) VULKAN_HPP_NOEXCEPT
+ {
+ subpassCount = static_cast<uint32_t>( viewMasks_.size() );
+ pViewMasks = viewMasks_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ RenderPassMultiviewCreateInfo & setDependencyCount( uint32_t dependencyCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dependencyCount = dependencyCount_;
+ return *this;
+ }
+
+ RenderPassMultiviewCreateInfo & setPViewOffsets( const int32_t * pViewOffsets_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pViewOffsets = pViewOffsets_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ RenderPassMultiviewCreateInfo & setViewOffsets(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const int32_t> const & viewOffsets_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dependencyCount = static_cast<uint32_t>( viewOffsets_.size() );
+ pViewOffsets = viewOffsets_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ RenderPassMultiviewCreateInfo & setCorrelationMaskCount( uint32_t correlationMaskCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ correlationMaskCount = correlationMaskCount_;
+ return *this;
+ }
+
+ RenderPassMultiviewCreateInfo & setPCorrelationMasks( const uint32_t * pCorrelationMasks_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pCorrelationMasks = pCorrelationMasks_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ RenderPassMultiviewCreateInfo & setCorrelationMasks(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & correlationMasks_ ) VULKAN_HPP_NOEXCEPT
+ {
+ correlationMaskCount = static_cast<uint32_t>( correlationMasks_.size() );
+ pCorrelationMasks = correlationMasks_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkRenderPassMultiviewCreateInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkRenderPassMultiviewCreateInfo *>( this );
+ }
+
+ operator VkRenderPassMultiviewCreateInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkRenderPassMultiviewCreateInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( RenderPassMultiviewCreateInfo const & ) const = default;
+#else
+ bool operator==( RenderPassMultiviewCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( subpassCount == rhs.subpassCount ) &&
+ ( pViewMasks == rhs.pViewMasks ) && ( dependencyCount == rhs.dependencyCount ) &&
+ ( pViewOffsets == rhs.pViewOffsets ) && ( correlationMaskCount == rhs.correlationMaskCount ) &&
+ ( pCorrelationMasks == rhs.pCorrelationMasks );
+ }
+
+ bool operator!=( RenderPassMultiviewCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eRenderPassMultiviewCreateInfo;
+ const void * pNext = {};
+ uint32_t subpassCount = {};
+ const uint32_t * pViewMasks = {};
+ uint32_t dependencyCount = {};
+ const int32_t * pViewOffsets = {};
+ uint32_t correlationMaskCount = {};
+ const uint32_t * pCorrelationMasks = {};
+ };
+ static_assert( sizeof( RenderPassMultiviewCreateInfo ) == sizeof( VkRenderPassMultiviewCreateInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<RenderPassMultiviewCreateInfo>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eRenderPassMultiviewCreateInfo>
+ {
+ using Type = RenderPassMultiviewCreateInfo;
+ };
+ using RenderPassMultiviewCreateInfoKHR = RenderPassMultiviewCreateInfo;
+
+ struct SubpassSampleLocationsEXT
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR SubpassSampleLocationsEXT(
+ uint32_t subpassIndex_ = {},
+ VULKAN_HPP_NAMESPACE::SampleLocationsInfoEXT sampleLocationsInfo_ = {} ) VULKAN_HPP_NOEXCEPT
+ : subpassIndex( subpassIndex_ )
+ , sampleLocationsInfo( sampleLocationsInfo_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ SubpassSampleLocationsEXT( SubpassSampleLocationsEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SubpassSampleLocationsEXT( VkSubpassSampleLocationsEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : SubpassSampleLocationsEXT( *reinterpret_cast<SubpassSampleLocationsEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 SubpassSampleLocationsEXT &
+ operator=( SubpassSampleLocationsEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SubpassSampleLocationsEXT & operator=( VkSubpassSampleLocationsEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SubpassSampleLocationsEXT const *>( &rhs );
+ return *this;
+ }
+
+ SubpassSampleLocationsEXT & setSubpassIndex( uint32_t subpassIndex_ ) VULKAN_HPP_NOEXCEPT
+ {
+ subpassIndex = subpassIndex_;
+ return *this;
+ }
+
+ SubpassSampleLocationsEXT & setSampleLocationsInfo(
+ VULKAN_HPP_NAMESPACE::SampleLocationsInfoEXT const & sampleLocationsInfo_ ) VULKAN_HPP_NOEXCEPT
+ {
+ sampleLocationsInfo = sampleLocationsInfo_;
+ return *this;
+ }
+
+ operator VkSubpassSampleLocationsEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkSubpassSampleLocationsEXT *>( this );
+ }
+
+ operator VkSubpassSampleLocationsEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkSubpassSampleLocationsEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( SubpassSampleLocationsEXT const & ) const = default;
+#else
+ bool operator==( SubpassSampleLocationsEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( subpassIndex == rhs.subpassIndex ) && ( sampleLocationsInfo == rhs.sampleLocationsInfo );
+ }
+
+ bool operator!=( SubpassSampleLocationsEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ uint32_t subpassIndex = {};
+ VULKAN_HPP_NAMESPACE::SampleLocationsInfoEXT sampleLocationsInfo = {};
+ };
+ static_assert( sizeof( SubpassSampleLocationsEXT ) == sizeof( VkSubpassSampleLocationsEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<SubpassSampleLocationsEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ struct RenderPassSampleLocationsBeginInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eRenderPassSampleLocationsBeginInfoEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR RenderPassSampleLocationsBeginInfoEXT(
+ uint32_t attachmentInitialSampleLocationsCount_ = {},
+ const VULKAN_HPP_NAMESPACE::AttachmentSampleLocationsEXT * pAttachmentInitialSampleLocations_ = {},
+ uint32_t postSubpassSampleLocationsCount_ = {},
+ const VULKAN_HPP_NAMESPACE::SubpassSampleLocationsEXT * pPostSubpassSampleLocations_ = {} ) VULKAN_HPP_NOEXCEPT
+ : attachmentInitialSampleLocationsCount( attachmentInitialSampleLocationsCount_ )
+ , pAttachmentInitialSampleLocations( pAttachmentInitialSampleLocations_ )
+ , postSubpassSampleLocationsCount( postSubpassSampleLocationsCount_ )
+ , pPostSubpassSampleLocations( pPostSubpassSampleLocations_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR RenderPassSampleLocationsBeginInfoEXT( RenderPassSampleLocationsBeginInfoEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ RenderPassSampleLocationsBeginInfoEXT( VkRenderPassSampleLocationsBeginInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : RenderPassSampleLocationsBeginInfoEXT(
+ *reinterpret_cast<RenderPassSampleLocationsBeginInfoEXT const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ RenderPassSampleLocationsBeginInfoEXT(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AttachmentSampleLocationsEXT> const &
+ attachmentInitialSampleLocations_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SubpassSampleLocationsEXT> const &
+ postSubpassSampleLocations_ = {} )
+ : attachmentInitialSampleLocationsCount( static_cast<uint32_t>( attachmentInitialSampleLocations_.size() ) )
+ , pAttachmentInitialSampleLocations( attachmentInitialSampleLocations_.data() )
+ , postSubpassSampleLocationsCount( static_cast<uint32_t>( postSubpassSampleLocations_.size() ) )
+ , pPostSubpassSampleLocations( postSubpassSampleLocations_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 RenderPassSampleLocationsBeginInfoEXT &
+ operator=( RenderPassSampleLocationsBeginInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ RenderPassSampleLocationsBeginInfoEXT &
+ operator=( VkRenderPassSampleLocationsBeginInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::RenderPassSampleLocationsBeginInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ RenderPassSampleLocationsBeginInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ RenderPassSampleLocationsBeginInfoEXT &
+ setAttachmentInitialSampleLocationsCount( uint32_t attachmentInitialSampleLocationsCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ attachmentInitialSampleLocationsCount = attachmentInitialSampleLocationsCount_;
+ return *this;
+ }
+
+ RenderPassSampleLocationsBeginInfoEXT & setPAttachmentInitialSampleLocations(
+ const VULKAN_HPP_NAMESPACE::AttachmentSampleLocationsEXT * pAttachmentInitialSampleLocations_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ pAttachmentInitialSampleLocations = pAttachmentInitialSampleLocations_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ RenderPassSampleLocationsBeginInfoEXT & setAttachmentInitialSampleLocations(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AttachmentSampleLocationsEXT> const &
+ attachmentInitialSampleLocations_ ) VULKAN_HPP_NOEXCEPT
+ {
+ attachmentInitialSampleLocationsCount = static_cast<uint32_t>( attachmentInitialSampleLocations_.size() );
+ pAttachmentInitialSampleLocations = attachmentInitialSampleLocations_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ RenderPassSampleLocationsBeginInfoEXT &
+ setPostSubpassSampleLocationsCount( uint32_t postSubpassSampleLocationsCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ postSubpassSampleLocationsCount = postSubpassSampleLocationsCount_;
+ return *this;
+ }
+
+ RenderPassSampleLocationsBeginInfoEXT & setPPostSubpassSampleLocations(
+ const VULKAN_HPP_NAMESPACE::SubpassSampleLocationsEXT * pPostSubpassSampleLocations_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pPostSubpassSampleLocations = pPostSubpassSampleLocations_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ RenderPassSampleLocationsBeginInfoEXT & setPostSubpassSampleLocations(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SubpassSampleLocationsEXT> const &
+ postSubpassSampleLocations_ ) VULKAN_HPP_NOEXCEPT
+ {
+ postSubpassSampleLocationsCount = static_cast<uint32_t>( postSubpassSampleLocations_.size() );
+ pPostSubpassSampleLocations = postSubpassSampleLocations_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkRenderPassSampleLocationsBeginInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkRenderPassSampleLocationsBeginInfoEXT *>( this );
+ }
+
+ operator VkRenderPassSampleLocationsBeginInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkRenderPassSampleLocationsBeginInfoEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( RenderPassSampleLocationsBeginInfoEXT const & ) const = default;
+#else
+ bool operator==( RenderPassSampleLocationsBeginInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( attachmentInitialSampleLocationsCount == rhs.attachmentInitialSampleLocationsCount ) &&
+ ( pAttachmentInitialSampleLocations == rhs.pAttachmentInitialSampleLocations ) &&
+ ( postSubpassSampleLocationsCount == rhs.postSubpassSampleLocationsCount ) &&
+ ( pPostSubpassSampleLocations == rhs.pPostSubpassSampleLocations );
+ }
+
+ bool operator!=( RenderPassSampleLocationsBeginInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eRenderPassSampleLocationsBeginInfoEXT;
+ const void * pNext = {};
+ uint32_t attachmentInitialSampleLocationsCount = {};
+ const VULKAN_HPP_NAMESPACE::AttachmentSampleLocationsEXT * pAttachmentInitialSampleLocations = {};
+ uint32_t postSubpassSampleLocationsCount = {};
+ const VULKAN_HPP_NAMESPACE::SubpassSampleLocationsEXT * pPostSubpassSampleLocations = {};
+ };
+ static_assert( sizeof( RenderPassSampleLocationsBeginInfoEXT ) == sizeof( VkRenderPassSampleLocationsBeginInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<RenderPassSampleLocationsBeginInfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eRenderPassSampleLocationsBeginInfoEXT>
+ {
+ using Type = RenderPassSampleLocationsBeginInfoEXT;
+ };
+
+ struct RenderPassTransformBeginInfoQCOM
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eRenderPassTransformBeginInfoQCOM;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR RenderPassTransformBeginInfoQCOM(
+ VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR transform_ =
+ VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR::eIdentity ) VULKAN_HPP_NOEXCEPT : transform( transform_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ RenderPassTransformBeginInfoQCOM( RenderPassTransformBeginInfoQCOM const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ RenderPassTransformBeginInfoQCOM( VkRenderPassTransformBeginInfoQCOM const & rhs ) VULKAN_HPP_NOEXCEPT
+ : RenderPassTransformBeginInfoQCOM( *reinterpret_cast<RenderPassTransformBeginInfoQCOM const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 RenderPassTransformBeginInfoQCOM &
+ operator=( RenderPassTransformBeginInfoQCOM const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ RenderPassTransformBeginInfoQCOM & operator=( VkRenderPassTransformBeginInfoQCOM const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::RenderPassTransformBeginInfoQCOM const *>( &rhs );
+ return *this;
+ }
+
+ RenderPassTransformBeginInfoQCOM & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ RenderPassTransformBeginInfoQCOM &
+ setTransform( VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR transform_ ) VULKAN_HPP_NOEXCEPT
+ {
+ transform = transform_;
+ return *this;
+ }
+
+ operator VkRenderPassTransformBeginInfoQCOM const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkRenderPassTransformBeginInfoQCOM *>( this );
+ }
+
+ operator VkRenderPassTransformBeginInfoQCOM &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkRenderPassTransformBeginInfoQCOM *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( RenderPassTransformBeginInfoQCOM const & ) const = default;
+#else
+ bool operator==( RenderPassTransformBeginInfoQCOM const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( transform == rhs.transform );
+ }
+
+ bool operator!=( RenderPassTransformBeginInfoQCOM const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eRenderPassTransformBeginInfoQCOM;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR transform =
+ VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR::eIdentity;
+ };
+ static_assert( sizeof( RenderPassTransformBeginInfoQCOM ) == sizeof( VkRenderPassTransformBeginInfoQCOM ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<RenderPassTransformBeginInfoQCOM>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eRenderPassTransformBeginInfoQCOM>
+ {
+ using Type = RenderPassTransformBeginInfoQCOM;
+ };
+
+ struct ResolveImageInfo2KHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eResolveImageInfo2KHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR ResolveImageInfo2KHR(
+ VULKAN_HPP_NAMESPACE::Image srcImage_ = {},
+ VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined,
+ VULKAN_HPP_NAMESPACE::Image dstImage_ = {},
+ VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined,
+ uint32_t regionCount_ = {},
+ const VULKAN_HPP_NAMESPACE::ImageResolve2KHR * pRegions_ = {} ) VULKAN_HPP_NOEXCEPT
+ : srcImage( srcImage_ )
+ , srcImageLayout( srcImageLayout_ )
+ , dstImage( dstImage_ )
+ , dstImageLayout( dstImageLayout_ )
+ , regionCount( regionCount_ )
+ , pRegions( pRegions_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR ResolveImageInfo2KHR( ResolveImageInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ResolveImageInfo2KHR( VkResolveImageInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ResolveImageInfo2KHR( *reinterpret_cast<ResolveImageInfo2KHR const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ ResolveImageInfo2KHR(
+ VULKAN_HPP_NAMESPACE::Image srcImage_,
+ VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout_,
+ VULKAN_HPP_NAMESPACE::Image dstImage_,
+ VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ImageResolve2KHR> const & regions_ )
+ : srcImage( srcImage_ )
+ , srcImageLayout( srcImageLayout_ )
+ , dstImage( dstImage_ )
+ , dstImageLayout( dstImageLayout_ )
+ , regionCount( static_cast<uint32_t>( regions_.size() ) )
+ , pRegions( regions_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ResolveImageInfo2KHR &
+ operator=( ResolveImageInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ResolveImageInfo2KHR & operator=( VkResolveImageInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ResolveImageInfo2KHR const *>( &rhs );
+ return *this;
+ }
+
+ ResolveImageInfo2KHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ ResolveImageInfo2KHR & setSrcImage( VULKAN_HPP_NAMESPACE::Image srcImage_ ) VULKAN_HPP_NOEXCEPT
+ {
+ srcImage = srcImage_;
+ return *this;
+ }
+
+ ResolveImageInfo2KHR & setSrcImageLayout( VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout_ ) VULKAN_HPP_NOEXCEPT
+ {
+ srcImageLayout = srcImageLayout_;
+ return *this;
+ }
+
+ ResolveImageInfo2KHR & setDstImage( VULKAN_HPP_NAMESPACE::Image dstImage_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstImage = dstImage_;
+ return *this;
+ }
+
+ ResolveImageInfo2KHR & setDstImageLayout( VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstImageLayout = dstImageLayout_;
+ return *this;
+ }
+
+ ResolveImageInfo2KHR & setRegionCount( uint32_t regionCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ regionCount = regionCount_;
+ return *this;
+ }
+
+ ResolveImageInfo2KHR & setPRegions( const VULKAN_HPP_NAMESPACE::ImageResolve2KHR * pRegions_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pRegions = pRegions_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ ResolveImageInfo2KHR & setRegions(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ImageResolve2KHR> const & regions_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ regionCount = static_cast<uint32_t>( regions_.size() );
+ pRegions = regions_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkResolveImageInfo2KHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkResolveImageInfo2KHR *>( this );
+ }
+
+ operator VkResolveImageInfo2KHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkResolveImageInfo2KHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ResolveImageInfo2KHR const & ) const = default;
+#else
+ bool operator==( ResolveImageInfo2KHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( srcImage == rhs.srcImage ) &&
+ ( srcImageLayout == rhs.srcImageLayout ) && ( dstImage == rhs.dstImage ) &&
+ ( dstImageLayout == rhs.dstImageLayout ) && ( regionCount == rhs.regionCount ) &&
+ ( pRegions == rhs.pRegions );
+ }
+
+ bool operator!=( ResolveImageInfo2KHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eResolveImageInfo2KHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Image srcImage = {};
+ VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
+ VULKAN_HPP_NAMESPACE::Image dstImage = {};
+ VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
+ uint32_t regionCount = {};
+ const VULKAN_HPP_NAMESPACE::ImageResolve2KHR * pRegions = {};
+ };
+ static_assert( sizeof( ResolveImageInfo2KHR ) == sizeof( VkResolveImageInfo2KHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ResolveImageInfo2KHR>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eResolveImageInfo2KHR>
+ {
+ using Type = ResolveImageInfo2KHR;
+ };
+
+ struct SamplerCreateInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSamplerCreateInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR SamplerCreateInfo(
+ VULKAN_HPP_NAMESPACE::SamplerCreateFlags flags_ = {},
+ VULKAN_HPP_NAMESPACE::Filter magFilter_ = VULKAN_HPP_NAMESPACE::Filter::eNearest,
+ VULKAN_HPP_NAMESPACE::Filter minFilter_ = VULKAN_HPP_NAMESPACE::Filter::eNearest,
+ VULKAN_HPP_NAMESPACE::SamplerMipmapMode mipmapMode_ = VULKAN_HPP_NAMESPACE::SamplerMipmapMode::eNearest,
+ VULKAN_HPP_NAMESPACE::SamplerAddressMode addressModeU_ = VULKAN_HPP_NAMESPACE::SamplerAddressMode::eRepeat,
+ VULKAN_HPP_NAMESPACE::SamplerAddressMode addressModeV_ = VULKAN_HPP_NAMESPACE::SamplerAddressMode::eRepeat,
+ VULKAN_HPP_NAMESPACE::SamplerAddressMode addressModeW_ = VULKAN_HPP_NAMESPACE::SamplerAddressMode::eRepeat,
+ float mipLodBias_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 anisotropyEnable_ = {},
+ float maxAnisotropy_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 compareEnable_ = {},
+ VULKAN_HPP_NAMESPACE::CompareOp compareOp_ = VULKAN_HPP_NAMESPACE::CompareOp::eNever,
+ float minLod_ = {},
+ float maxLod_ = {},
+ VULKAN_HPP_NAMESPACE::BorderColor borderColor_ = VULKAN_HPP_NAMESPACE::BorderColor::eFloatTransparentBlack,
+ VULKAN_HPP_NAMESPACE::Bool32 unnormalizedCoordinates_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , magFilter( magFilter_ )
+ , minFilter( minFilter_ )
+ , mipmapMode( mipmapMode_ )
+ , addressModeU( addressModeU_ )
+ , addressModeV( addressModeV_ )
+ , addressModeW( addressModeW_ )
+ , mipLodBias( mipLodBias_ )
+ , anisotropyEnable( anisotropyEnable_ )
+ , maxAnisotropy( maxAnisotropy_ )
+ , compareEnable( compareEnable_ )
+ , compareOp( compareOp_ )
+ , minLod( minLod_ )
+ , maxLod( maxLod_ )
+ , borderColor( borderColor_ )
+ , unnormalizedCoordinates( unnormalizedCoordinates_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR SamplerCreateInfo( SamplerCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SamplerCreateInfo( VkSamplerCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : SamplerCreateInfo( *reinterpret_cast<SamplerCreateInfo const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 SamplerCreateInfo &
+ operator=( SamplerCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SamplerCreateInfo & operator=( VkSamplerCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SamplerCreateInfo const *>( &rhs );
+ return *this;
+ }
+
+ SamplerCreateInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ SamplerCreateInfo & setFlags( VULKAN_HPP_NAMESPACE::SamplerCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ SamplerCreateInfo & setMagFilter( VULKAN_HPP_NAMESPACE::Filter magFilter_ ) VULKAN_HPP_NOEXCEPT
+ {
+ magFilter = magFilter_;
+ return *this;
+ }
+
+ SamplerCreateInfo & setMinFilter( VULKAN_HPP_NAMESPACE::Filter minFilter_ ) VULKAN_HPP_NOEXCEPT
+ {
+ minFilter = minFilter_;
+ return *this;
+ }
+
+ SamplerCreateInfo & setMipmapMode( VULKAN_HPP_NAMESPACE::SamplerMipmapMode mipmapMode_ ) VULKAN_HPP_NOEXCEPT
+ {
+ mipmapMode = mipmapMode_;
+ return *this;
+ }
+
+ SamplerCreateInfo & setAddressModeU( VULKAN_HPP_NAMESPACE::SamplerAddressMode addressModeU_ ) VULKAN_HPP_NOEXCEPT
+ {
+ addressModeU = addressModeU_;
+ return *this;
+ }
+
+ SamplerCreateInfo & setAddressModeV( VULKAN_HPP_NAMESPACE::SamplerAddressMode addressModeV_ ) VULKAN_HPP_NOEXCEPT
+ {
+ addressModeV = addressModeV_;
+ return *this;
+ }
+
+ SamplerCreateInfo & setAddressModeW( VULKAN_HPP_NAMESPACE::SamplerAddressMode addressModeW_ ) VULKAN_HPP_NOEXCEPT
+ {
+ addressModeW = addressModeW_;
+ return *this;
+ }
+
+ SamplerCreateInfo & setMipLodBias( float mipLodBias_ ) VULKAN_HPP_NOEXCEPT
+ {
+ mipLodBias = mipLodBias_;
+ return *this;
+ }
+
+ SamplerCreateInfo & setAnisotropyEnable( VULKAN_HPP_NAMESPACE::Bool32 anisotropyEnable_ ) VULKAN_HPP_NOEXCEPT
+ {
+ anisotropyEnable = anisotropyEnable_;
+ return *this;
+ }
+
+ SamplerCreateInfo & setMaxAnisotropy( float maxAnisotropy_ ) VULKAN_HPP_NOEXCEPT
+ {
+ maxAnisotropy = maxAnisotropy_;
+ return *this;
+ }
+
+ SamplerCreateInfo & setCompareEnable( VULKAN_HPP_NAMESPACE::Bool32 compareEnable_ ) VULKAN_HPP_NOEXCEPT
+ {
+ compareEnable = compareEnable_;
+ return *this;
+ }
+
+ SamplerCreateInfo & setCompareOp( VULKAN_HPP_NAMESPACE::CompareOp compareOp_ ) VULKAN_HPP_NOEXCEPT
+ {
+ compareOp = compareOp_;
+ return *this;
+ }
+
+ SamplerCreateInfo & setMinLod( float minLod_ ) VULKAN_HPP_NOEXCEPT
+ {
+ minLod = minLod_;
+ return *this;
+ }
+
+ SamplerCreateInfo & setMaxLod( float maxLod_ ) VULKAN_HPP_NOEXCEPT
+ {
+ maxLod = maxLod_;
+ return *this;
+ }
+
+ SamplerCreateInfo & setBorderColor( VULKAN_HPP_NAMESPACE::BorderColor borderColor_ ) VULKAN_HPP_NOEXCEPT
+ {
+ borderColor = borderColor_;
+ return *this;
+ }
+
+ SamplerCreateInfo &
+ setUnnormalizedCoordinates( VULKAN_HPP_NAMESPACE::Bool32 unnormalizedCoordinates_ ) VULKAN_HPP_NOEXCEPT
+ {
+ unnormalizedCoordinates = unnormalizedCoordinates_;
+ return *this;
+ }
+
+ operator VkSamplerCreateInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkSamplerCreateInfo *>( this );
+ }
+
+ operator VkSamplerCreateInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkSamplerCreateInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( SamplerCreateInfo const & ) const = default;
+#else
+ bool operator==( SamplerCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( magFilter == rhs.magFilter ) && ( minFilter == rhs.minFilter ) && ( mipmapMode == rhs.mipmapMode ) &&
+ ( addressModeU == rhs.addressModeU ) && ( addressModeV == rhs.addressModeV ) &&
+ ( addressModeW == rhs.addressModeW ) && ( mipLodBias == rhs.mipLodBias ) &&
+ ( anisotropyEnable == rhs.anisotropyEnable ) && ( maxAnisotropy == rhs.maxAnisotropy ) &&
+ ( compareEnable == rhs.compareEnable ) && ( compareOp == rhs.compareOp ) && ( minLod == rhs.minLod ) &&
+ ( maxLod == rhs.maxLod ) && ( borderColor == rhs.borderColor ) &&
+ ( unnormalizedCoordinates == rhs.unnormalizedCoordinates );
+ }
+
+ bool operator!=( SamplerCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSamplerCreateInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::SamplerCreateFlags flags = {};
+ VULKAN_HPP_NAMESPACE::Filter magFilter = VULKAN_HPP_NAMESPACE::Filter::eNearest;
+ VULKAN_HPP_NAMESPACE::Filter minFilter = VULKAN_HPP_NAMESPACE::Filter::eNearest;
+ VULKAN_HPP_NAMESPACE::SamplerMipmapMode mipmapMode = VULKAN_HPP_NAMESPACE::SamplerMipmapMode::eNearest;
+ VULKAN_HPP_NAMESPACE::SamplerAddressMode addressModeU = VULKAN_HPP_NAMESPACE::SamplerAddressMode::eRepeat;
+ VULKAN_HPP_NAMESPACE::SamplerAddressMode addressModeV = VULKAN_HPP_NAMESPACE::SamplerAddressMode::eRepeat;
+ VULKAN_HPP_NAMESPACE::SamplerAddressMode addressModeW = VULKAN_HPP_NAMESPACE::SamplerAddressMode::eRepeat;
+ float mipLodBias = {};
+ VULKAN_HPP_NAMESPACE::Bool32 anisotropyEnable = {};
+ float maxAnisotropy = {};
+ VULKAN_HPP_NAMESPACE::Bool32 compareEnable = {};
+ VULKAN_HPP_NAMESPACE::CompareOp compareOp = VULKAN_HPP_NAMESPACE::CompareOp::eNever;
+ float minLod = {};
+ float maxLod = {};
+ VULKAN_HPP_NAMESPACE::BorderColor borderColor = VULKAN_HPP_NAMESPACE::BorderColor::eFloatTransparentBlack;
+ VULKAN_HPP_NAMESPACE::Bool32 unnormalizedCoordinates = {};
+ };
+ static_assert( sizeof( SamplerCreateInfo ) == sizeof( VkSamplerCreateInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<SamplerCreateInfo>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eSamplerCreateInfo>
+ {
+ using Type = SamplerCreateInfo;
+ };
+
+ struct SamplerCustomBorderColorCreateInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eSamplerCustomBorderColorCreateInfoEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ SamplerCustomBorderColorCreateInfoEXT(
+ VULKAN_HPP_NAMESPACE::ClearColorValue customBorderColor_ = {},
+ VULKAN_HPP_NAMESPACE::Format format_ = VULKAN_HPP_NAMESPACE::Format::eUndefined ) VULKAN_HPP_NOEXCEPT
+ : customBorderColor( customBorderColor_ )
+ , format( format_ )
+ {}
+
+ SamplerCustomBorderColorCreateInfoEXT( SamplerCustomBorderColorCreateInfoEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ SamplerCustomBorderColorCreateInfoEXT( VkSamplerCustomBorderColorCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : SamplerCustomBorderColorCreateInfoEXT(
+ *reinterpret_cast<SamplerCustomBorderColorCreateInfoEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ SamplerCustomBorderColorCreateInfoEXT &
+ operator=( SamplerCustomBorderColorCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SamplerCustomBorderColorCreateInfoEXT &
+ operator=( VkSamplerCustomBorderColorCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SamplerCustomBorderColorCreateInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ SamplerCustomBorderColorCreateInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ SamplerCustomBorderColorCreateInfoEXT &
+ setCustomBorderColor( VULKAN_HPP_NAMESPACE::ClearColorValue const & customBorderColor_ ) VULKAN_HPP_NOEXCEPT
+ {
+ customBorderColor = customBorderColor_;
+ return *this;
+ }
+
+ SamplerCustomBorderColorCreateInfoEXT & setFormat( VULKAN_HPP_NAMESPACE::Format format_ ) VULKAN_HPP_NOEXCEPT
+ {
+ format = format_;
+ return *this;
+ }
+
+ operator VkSamplerCustomBorderColorCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkSamplerCustomBorderColorCreateInfoEXT *>( this );
+ }
+
+ operator VkSamplerCustomBorderColorCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkSamplerCustomBorderColorCreateInfoEXT *>( this );
+ }
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSamplerCustomBorderColorCreateInfoEXT;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ClearColorValue customBorderColor = {};
+ VULKAN_HPP_NAMESPACE::Format format = VULKAN_HPP_NAMESPACE::Format::eUndefined;
+ };
+ static_assert( sizeof( SamplerCustomBorderColorCreateInfoEXT ) == sizeof( VkSamplerCustomBorderColorCreateInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<SamplerCustomBorderColorCreateInfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eSamplerCustomBorderColorCreateInfoEXT>
+ {
+ using Type = SamplerCustomBorderColorCreateInfoEXT;
+ };
+
+ struct SamplerReductionModeCreateInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSamplerReductionModeCreateInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR SamplerReductionModeCreateInfo(
+ VULKAN_HPP_NAMESPACE::SamplerReductionMode reductionMode_ =
+ VULKAN_HPP_NAMESPACE::SamplerReductionMode::eWeightedAverage ) VULKAN_HPP_NOEXCEPT
+ : reductionMode( reductionMode_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ SamplerReductionModeCreateInfo( SamplerReductionModeCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SamplerReductionModeCreateInfo( VkSamplerReductionModeCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : SamplerReductionModeCreateInfo( *reinterpret_cast<SamplerReductionModeCreateInfo const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 SamplerReductionModeCreateInfo &
+ operator=( SamplerReductionModeCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SamplerReductionModeCreateInfo & operator=( VkSamplerReductionModeCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SamplerReductionModeCreateInfo const *>( &rhs );
+ return *this;
+ }
+
+ SamplerReductionModeCreateInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ SamplerReductionModeCreateInfo &
+ setReductionMode( VULKAN_HPP_NAMESPACE::SamplerReductionMode reductionMode_ ) VULKAN_HPP_NOEXCEPT
+ {
+ reductionMode = reductionMode_;
+ return *this;
+ }
+
+ operator VkSamplerReductionModeCreateInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkSamplerReductionModeCreateInfo *>( this );
+ }
+
+ operator VkSamplerReductionModeCreateInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkSamplerReductionModeCreateInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( SamplerReductionModeCreateInfo const & ) const = default;
+#else
+ bool operator==( SamplerReductionModeCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( reductionMode == rhs.reductionMode );
+ }
+
+ bool operator!=( SamplerReductionModeCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSamplerReductionModeCreateInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::SamplerReductionMode reductionMode =
+ VULKAN_HPP_NAMESPACE::SamplerReductionMode::eWeightedAverage;
+ };
+ static_assert( sizeof( SamplerReductionModeCreateInfo ) == sizeof( VkSamplerReductionModeCreateInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<SamplerReductionModeCreateInfo>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eSamplerReductionModeCreateInfo>
+ {
+ using Type = SamplerReductionModeCreateInfo;
+ };
+ using SamplerReductionModeCreateInfoEXT = SamplerReductionModeCreateInfo;
+
+ struct SamplerYcbcrConversionCreateInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSamplerYcbcrConversionCreateInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR SamplerYcbcrConversionCreateInfo(
+ VULKAN_HPP_NAMESPACE::Format format_ = VULKAN_HPP_NAMESPACE::Format::eUndefined,
+ VULKAN_HPP_NAMESPACE::SamplerYcbcrModelConversion ycbcrModel_ =
+ VULKAN_HPP_NAMESPACE::SamplerYcbcrModelConversion::eRgbIdentity,
+ VULKAN_HPP_NAMESPACE::SamplerYcbcrRange ycbcrRange_ = VULKAN_HPP_NAMESPACE::SamplerYcbcrRange::eItuFull,
+ VULKAN_HPP_NAMESPACE::ComponentMapping components_ = {},
+ VULKAN_HPP_NAMESPACE::ChromaLocation xChromaOffset_ = VULKAN_HPP_NAMESPACE::ChromaLocation::eCositedEven,
+ VULKAN_HPP_NAMESPACE::ChromaLocation yChromaOffset_ = VULKAN_HPP_NAMESPACE::ChromaLocation::eCositedEven,
+ VULKAN_HPP_NAMESPACE::Filter chromaFilter_ = VULKAN_HPP_NAMESPACE::Filter::eNearest,
+ VULKAN_HPP_NAMESPACE::Bool32 forceExplicitReconstruction_ = {} ) VULKAN_HPP_NOEXCEPT
+ : format( format_ )
+ , ycbcrModel( ycbcrModel_ )
+ , ycbcrRange( ycbcrRange_ )
+ , components( components_ )
+ , xChromaOffset( xChromaOffset_ )
+ , yChromaOffset( yChromaOffset_ )
+ , chromaFilter( chromaFilter_ )
+ , forceExplicitReconstruction( forceExplicitReconstruction_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ SamplerYcbcrConversionCreateInfo( SamplerYcbcrConversionCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SamplerYcbcrConversionCreateInfo( VkSamplerYcbcrConversionCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : SamplerYcbcrConversionCreateInfo( *reinterpret_cast<SamplerYcbcrConversionCreateInfo const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 SamplerYcbcrConversionCreateInfo &
+ operator=( SamplerYcbcrConversionCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SamplerYcbcrConversionCreateInfo & operator=( VkSamplerYcbcrConversionCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SamplerYcbcrConversionCreateInfo const *>( &rhs );
+ return *this;
+ }
+
+ SamplerYcbcrConversionCreateInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ SamplerYcbcrConversionCreateInfo & setFormat( VULKAN_HPP_NAMESPACE::Format format_ ) VULKAN_HPP_NOEXCEPT
+ {
+ format = format_;
+ return *this;
+ }
+
+ SamplerYcbcrConversionCreateInfo &
+ setYcbcrModel( VULKAN_HPP_NAMESPACE::SamplerYcbcrModelConversion ycbcrModel_ ) VULKAN_HPP_NOEXCEPT
+ {
+ ycbcrModel = ycbcrModel_;
+ return *this;
+ }
+
+ SamplerYcbcrConversionCreateInfo &
+ setYcbcrRange( VULKAN_HPP_NAMESPACE::SamplerYcbcrRange ycbcrRange_ ) VULKAN_HPP_NOEXCEPT
+ {
+ ycbcrRange = ycbcrRange_;
+ return *this;
+ }
+
+ SamplerYcbcrConversionCreateInfo &
+ setComponents( VULKAN_HPP_NAMESPACE::ComponentMapping const & components_ ) VULKAN_HPP_NOEXCEPT
+ {
+ components = components_;
+ return *this;
+ }
+
+ SamplerYcbcrConversionCreateInfo &
+ setXChromaOffset( VULKAN_HPP_NAMESPACE::ChromaLocation xChromaOffset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ xChromaOffset = xChromaOffset_;
+ return *this;
+ }
+
+ SamplerYcbcrConversionCreateInfo &
+ setYChromaOffset( VULKAN_HPP_NAMESPACE::ChromaLocation yChromaOffset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ yChromaOffset = yChromaOffset_;
+ return *this;
+ }
+
+ SamplerYcbcrConversionCreateInfo & setChromaFilter( VULKAN_HPP_NAMESPACE::Filter chromaFilter_ ) VULKAN_HPP_NOEXCEPT
+ {
+ chromaFilter = chromaFilter_;
+ return *this;
+ }
+
+ SamplerYcbcrConversionCreateInfo &
+ setForceExplicitReconstruction( VULKAN_HPP_NAMESPACE::Bool32 forceExplicitReconstruction_ ) VULKAN_HPP_NOEXCEPT
+ {
+ forceExplicitReconstruction = forceExplicitReconstruction_;
+ return *this;
+ }
+
+ operator VkSamplerYcbcrConversionCreateInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkSamplerYcbcrConversionCreateInfo *>( this );
+ }
+
+ operator VkSamplerYcbcrConversionCreateInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkSamplerYcbcrConversionCreateInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( SamplerYcbcrConversionCreateInfo const & ) const = default;
+#else
+ bool operator==( SamplerYcbcrConversionCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( format == rhs.format ) &&
+ ( ycbcrModel == rhs.ycbcrModel ) && ( ycbcrRange == rhs.ycbcrRange ) && ( components == rhs.components ) &&
+ ( xChromaOffset == rhs.xChromaOffset ) && ( yChromaOffset == rhs.yChromaOffset ) &&
+ ( chromaFilter == rhs.chromaFilter ) && ( forceExplicitReconstruction == rhs.forceExplicitReconstruction );
+ }
+
+ bool operator!=( SamplerYcbcrConversionCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSamplerYcbcrConversionCreateInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Format format = VULKAN_HPP_NAMESPACE::Format::eUndefined;
+ VULKAN_HPP_NAMESPACE::SamplerYcbcrModelConversion ycbcrModel =
+ VULKAN_HPP_NAMESPACE::SamplerYcbcrModelConversion::eRgbIdentity;
+ VULKAN_HPP_NAMESPACE::SamplerYcbcrRange ycbcrRange = VULKAN_HPP_NAMESPACE::SamplerYcbcrRange::eItuFull;
+ VULKAN_HPP_NAMESPACE::ComponentMapping components = {};
+ VULKAN_HPP_NAMESPACE::ChromaLocation xChromaOffset = VULKAN_HPP_NAMESPACE::ChromaLocation::eCositedEven;
+ VULKAN_HPP_NAMESPACE::ChromaLocation yChromaOffset = VULKAN_HPP_NAMESPACE::ChromaLocation::eCositedEven;
+ VULKAN_HPP_NAMESPACE::Filter chromaFilter = VULKAN_HPP_NAMESPACE::Filter::eNearest;
+ VULKAN_HPP_NAMESPACE::Bool32 forceExplicitReconstruction = {};
+ };
+ static_assert( sizeof( SamplerYcbcrConversionCreateInfo ) == sizeof( VkSamplerYcbcrConversionCreateInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<SamplerYcbcrConversionCreateInfo>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eSamplerYcbcrConversionCreateInfo>
+ {
+ using Type = SamplerYcbcrConversionCreateInfo;
+ };
+ using SamplerYcbcrConversionCreateInfoKHR = SamplerYcbcrConversionCreateInfo;
+
+ struct SamplerYcbcrConversionImageFormatProperties
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eSamplerYcbcrConversionImageFormatProperties;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR SamplerYcbcrConversionImageFormatProperties(
+ uint32_t combinedImageSamplerDescriptorCount_ = {} ) VULKAN_HPP_NOEXCEPT
+ : combinedImageSamplerDescriptorCount( combinedImageSamplerDescriptorCount_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR SamplerYcbcrConversionImageFormatProperties(
+ SamplerYcbcrConversionImageFormatProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SamplerYcbcrConversionImageFormatProperties( VkSamplerYcbcrConversionImageFormatProperties const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : SamplerYcbcrConversionImageFormatProperties(
+ *reinterpret_cast<SamplerYcbcrConversionImageFormatProperties const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 SamplerYcbcrConversionImageFormatProperties &
+ operator=( SamplerYcbcrConversionImageFormatProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SamplerYcbcrConversionImageFormatProperties &
+ operator=( VkSamplerYcbcrConversionImageFormatProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SamplerYcbcrConversionImageFormatProperties const *>( &rhs );
+ return *this;
+ }
+
+ operator VkSamplerYcbcrConversionImageFormatProperties const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkSamplerYcbcrConversionImageFormatProperties *>( this );
+ }
+
+ operator VkSamplerYcbcrConversionImageFormatProperties &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkSamplerYcbcrConversionImageFormatProperties *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( SamplerYcbcrConversionImageFormatProperties const & ) const = default;
+#else
+ bool operator==( SamplerYcbcrConversionImageFormatProperties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( combinedImageSamplerDescriptorCount == rhs.combinedImageSamplerDescriptorCount );
+ }
+
+ bool operator!=( SamplerYcbcrConversionImageFormatProperties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSamplerYcbcrConversionImageFormatProperties;
+ void * pNext = {};
+ uint32_t combinedImageSamplerDescriptorCount = {};
+ };
+ static_assert( sizeof( SamplerYcbcrConversionImageFormatProperties ) ==
+ sizeof( VkSamplerYcbcrConversionImageFormatProperties ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<SamplerYcbcrConversionImageFormatProperties>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eSamplerYcbcrConversionImageFormatProperties>
+ {
+ using Type = SamplerYcbcrConversionImageFormatProperties;
+ };
+ using SamplerYcbcrConversionImageFormatPropertiesKHR = SamplerYcbcrConversionImageFormatProperties;
+
+ struct SamplerYcbcrConversionInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSamplerYcbcrConversionInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ SamplerYcbcrConversionInfo( VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion conversion_ = {} ) VULKAN_HPP_NOEXCEPT
+ : conversion( conversion_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ SamplerYcbcrConversionInfo( SamplerYcbcrConversionInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SamplerYcbcrConversionInfo( VkSamplerYcbcrConversionInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : SamplerYcbcrConversionInfo( *reinterpret_cast<SamplerYcbcrConversionInfo const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 SamplerYcbcrConversionInfo &
+ operator=( SamplerYcbcrConversionInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SamplerYcbcrConversionInfo & operator=( VkSamplerYcbcrConversionInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SamplerYcbcrConversionInfo const *>( &rhs );
+ return *this;
+ }
+
+ SamplerYcbcrConversionInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ SamplerYcbcrConversionInfo &
+ setConversion( VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion conversion_ ) VULKAN_HPP_NOEXCEPT
+ {
+ conversion = conversion_;
+ return *this;
+ }
+
+ operator VkSamplerYcbcrConversionInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkSamplerYcbcrConversionInfo *>( this );
+ }
+
+ operator VkSamplerYcbcrConversionInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkSamplerYcbcrConversionInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( SamplerYcbcrConversionInfo const & ) const = default;
+#else
+ bool operator==( SamplerYcbcrConversionInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( conversion == rhs.conversion );
+ }
+
+ bool operator!=( SamplerYcbcrConversionInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSamplerYcbcrConversionInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion conversion = {};
+ };
+ static_assert( sizeof( SamplerYcbcrConversionInfo ) == sizeof( VkSamplerYcbcrConversionInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<SamplerYcbcrConversionInfo>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eSamplerYcbcrConversionInfo>
+ {
+ using Type = SamplerYcbcrConversionInfo;
+ };
+ using SamplerYcbcrConversionInfoKHR = SamplerYcbcrConversionInfo;
+
+#if defined( VK_USE_PLATFORM_SCREEN_QNX )
+ struct ScreenSurfaceCreateInfoQNX
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eScreenSurfaceCreateInfoQNX;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR ScreenSurfaceCreateInfoQNX( VULKAN_HPP_NAMESPACE::ScreenSurfaceCreateFlagsQNX flags_ = {},
+ struct _screen_context * context_ = {},
+ struct _screen_window * window_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , context( context_ )
+ , window( window_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ ScreenSurfaceCreateInfoQNX( ScreenSurfaceCreateInfoQNX const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ScreenSurfaceCreateInfoQNX( VkScreenSurfaceCreateInfoQNX const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ScreenSurfaceCreateInfoQNX( *reinterpret_cast<ScreenSurfaceCreateInfoQNX const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ScreenSurfaceCreateInfoQNX &
+ operator=( ScreenSurfaceCreateInfoQNX const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ScreenSurfaceCreateInfoQNX & operator=( VkScreenSurfaceCreateInfoQNX const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ScreenSurfaceCreateInfoQNX const *>( &rhs );
+ return *this;
+ }
+
+ ScreenSurfaceCreateInfoQNX & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ ScreenSurfaceCreateInfoQNX &
+ setFlags( VULKAN_HPP_NAMESPACE::ScreenSurfaceCreateFlagsQNX flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ ScreenSurfaceCreateInfoQNX & setContext( struct _screen_context * context_ ) VULKAN_HPP_NOEXCEPT
+ {
+ context = context_;
+ return *this;
+ }
+
+ ScreenSurfaceCreateInfoQNX & setWindow( struct _screen_window * window_ ) VULKAN_HPP_NOEXCEPT
+ {
+ window = window_;
+ return *this;
+ }
+
+ operator VkScreenSurfaceCreateInfoQNX const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkScreenSurfaceCreateInfoQNX *>( this );
+ }
+
+ operator VkScreenSurfaceCreateInfoQNX &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkScreenSurfaceCreateInfoQNX *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ScreenSurfaceCreateInfoQNX const & ) const = default;
+# else
+ bool operator==( ScreenSurfaceCreateInfoQNX const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) && ( context == rhs.context ) &&
+ ( window == rhs.window );
+ }
+
+ bool operator!=( ScreenSurfaceCreateInfoQNX const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eScreenSurfaceCreateInfoQNX;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ScreenSurfaceCreateFlagsQNX flags = {};
+ struct _screen_context * context = {};
+ struct _screen_window * window = {};
+ };
+ static_assert( sizeof( ScreenSurfaceCreateInfoQNX ) == sizeof( VkScreenSurfaceCreateInfoQNX ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ScreenSurfaceCreateInfoQNX>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eScreenSurfaceCreateInfoQNX>
+ {
+ using Type = ScreenSurfaceCreateInfoQNX;
+ };
+#endif /*VK_USE_PLATFORM_SCREEN_QNX*/
+
+ struct SemaphoreCreateInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSemaphoreCreateInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ SemaphoreCreateInfo( VULKAN_HPP_NAMESPACE::SemaphoreCreateFlags flags_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR SemaphoreCreateInfo( SemaphoreCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SemaphoreCreateInfo( VkSemaphoreCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : SemaphoreCreateInfo( *reinterpret_cast<SemaphoreCreateInfo const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 SemaphoreCreateInfo &
+ operator=( SemaphoreCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SemaphoreCreateInfo & operator=( VkSemaphoreCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SemaphoreCreateInfo const *>( &rhs );
+ return *this;
+ }
+
+ SemaphoreCreateInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ SemaphoreCreateInfo & setFlags( VULKAN_HPP_NAMESPACE::SemaphoreCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ operator VkSemaphoreCreateInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkSemaphoreCreateInfo *>( this );
+ }
+
+ operator VkSemaphoreCreateInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkSemaphoreCreateInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( SemaphoreCreateInfo const & ) const = default;
+#else
+ bool operator==( SemaphoreCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags );
+ }
+
+ bool operator!=( SemaphoreCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSemaphoreCreateInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::SemaphoreCreateFlags flags = {};
+ };
+ static_assert( sizeof( SemaphoreCreateInfo ) == sizeof( VkSemaphoreCreateInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<SemaphoreCreateInfo>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eSemaphoreCreateInfo>
+ {
+ using Type = SemaphoreCreateInfo;
+ };
+
+ struct SemaphoreGetFdInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSemaphoreGetFdInfoKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR SemaphoreGetFdInfoKHR( VULKAN_HPP_NAMESPACE::Semaphore semaphore_ = {},
+ VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits handleType_ =
+ VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits::eOpaqueFd )
+ VULKAN_HPP_NOEXCEPT
+ : semaphore( semaphore_ )
+ , handleType( handleType_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR SemaphoreGetFdInfoKHR( SemaphoreGetFdInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SemaphoreGetFdInfoKHR( VkSemaphoreGetFdInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : SemaphoreGetFdInfoKHR( *reinterpret_cast<SemaphoreGetFdInfoKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 SemaphoreGetFdInfoKHR &
+ operator=( SemaphoreGetFdInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SemaphoreGetFdInfoKHR & operator=( VkSemaphoreGetFdInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SemaphoreGetFdInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ SemaphoreGetFdInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ SemaphoreGetFdInfoKHR & setSemaphore( VULKAN_HPP_NAMESPACE::Semaphore semaphore_ ) VULKAN_HPP_NOEXCEPT
+ {
+ semaphore = semaphore_;
+ return *this;
+ }
+
+ SemaphoreGetFdInfoKHR &
+ setHandleType( VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits handleType_ ) VULKAN_HPP_NOEXCEPT
+ {
+ handleType = handleType_;
+ return *this;
+ }
+
+ operator VkSemaphoreGetFdInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkSemaphoreGetFdInfoKHR *>( this );
+ }
+
+ operator VkSemaphoreGetFdInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkSemaphoreGetFdInfoKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( SemaphoreGetFdInfoKHR const & ) const = default;
+#else
+ bool operator==( SemaphoreGetFdInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( semaphore == rhs.semaphore ) &&
+ ( handleType == rhs.handleType );
+ }
+
+ bool operator!=( SemaphoreGetFdInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSemaphoreGetFdInfoKHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Semaphore semaphore = {};
+ VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits handleType =
+ VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits::eOpaqueFd;
+ };
+ static_assert( sizeof( SemaphoreGetFdInfoKHR ) == sizeof( VkSemaphoreGetFdInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<SemaphoreGetFdInfoKHR>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eSemaphoreGetFdInfoKHR>
+ {
+ using Type = SemaphoreGetFdInfoKHR;
+ };
+
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ struct SemaphoreGetWin32HandleInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSemaphoreGetWin32HandleInfoKHR;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR SemaphoreGetWin32HandleInfoKHR(
+ VULKAN_HPP_NAMESPACE::Semaphore semaphore_ = {},
+ VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits handleType_ =
+ VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits::eOpaqueFd ) VULKAN_HPP_NOEXCEPT
+ : semaphore( semaphore_ )
+ , handleType( handleType_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ SemaphoreGetWin32HandleInfoKHR( SemaphoreGetWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SemaphoreGetWin32HandleInfoKHR( VkSemaphoreGetWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : SemaphoreGetWin32HandleInfoKHR( *reinterpret_cast<SemaphoreGetWin32HandleInfoKHR const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 SemaphoreGetWin32HandleInfoKHR &
+ operator=( SemaphoreGetWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SemaphoreGetWin32HandleInfoKHR & operator=( VkSemaphoreGetWin32HandleInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SemaphoreGetWin32HandleInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ SemaphoreGetWin32HandleInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ SemaphoreGetWin32HandleInfoKHR & setSemaphore( VULKAN_HPP_NAMESPACE::Semaphore semaphore_ ) VULKAN_HPP_NOEXCEPT
+ {
+ semaphore = semaphore_;
+ return *this;
+ }
+
+ SemaphoreGetWin32HandleInfoKHR &
+ setHandleType( VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits handleType_ ) VULKAN_HPP_NOEXCEPT
+ {
+ handleType = handleType_;
+ return *this;
+ }
+
+ operator VkSemaphoreGetWin32HandleInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkSemaphoreGetWin32HandleInfoKHR *>( this );
+ }
+
+ operator VkSemaphoreGetWin32HandleInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkSemaphoreGetWin32HandleInfoKHR *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( SemaphoreGetWin32HandleInfoKHR const & ) const = default;
+# else
+ bool operator==( SemaphoreGetWin32HandleInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( semaphore == rhs.semaphore ) &&
+ ( handleType == rhs.handleType );
+ }
+
+ bool operator!=( SemaphoreGetWin32HandleInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSemaphoreGetWin32HandleInfoKHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Semaphore semaphore = {};
+ VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits handleType =
+ VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits::eOpaqueFd;
+ };
+ static_assert( sizeof( SemaphoreGetWin32HandleInfoKHR ) == sizeof( VkSemaphoreGetWin32HandleInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<SemaphoreGetWin32HandleInfoKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eSemaphoreGetWin32HandleInfoKHR>
+ {
+ using Type = SemaphoreGetWin32HandleInfoKHR;
+ };
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+
+#if defined( VK_USE_PLATFORM_FUCHSIA )
+ struct SemaphoreGetZirconHandleInfoFUCHSIA
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eSemaphoreGetZirconHandleInfoFUCHSIA;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR SemaphoreGetZirconHandleInfoFUCHSIA(
+ VULKAN_HPP_NAMESPACE::Semaphore semaphore_ = {},
+ VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits handleType_ =
+ VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits::eOpaqueFd ) VULKAN_HPP_NOEXCEPT
+ : semaphore( semaphore_ )
+ , handleType( handleType_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR SemaphoreGetZirconHandleInfoFUCHSIA( SemaphoreGetZirconHandleInfoFUCHSIA const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ SemaphoreGetZirconHandleInfoFUCHSIA( VkSemaphoreGetZirconHandleInfoFUCHSIA const & rhs ) VULKAN_HPP_NOEXCEPT
+ : SemaphoreGetZirconHandleInfoFUCHSIA( *reinterpret_cast<SemaphoreGetZirconHandleInfoFUCHSIA const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 SemaphoreGetZirconHandleInfoFUCHSIA &
+ operator=( SemaphoreGetZirconHandleInfoFUCHSIA const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SemaphoreGetZirconHandleInfoFUCHSIA &
+ operator=( VkSemaphoreGetZirconHandleInfoFUCHSIA const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SemaphoreGetZirconHandleInfoFUCHSIA const *>( &rhs );
+ return *this;
+ }
+
+ SemaphoreGetZirconHandleInfoFUCHSIA & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ SemaphoreGetZirconHandleInfoFUCHSIA & setSemaphore( VULKAN_HPP_NAMESPACE::Semaphore semaphore_ ) VULKAN_HPP_NOEXCEPT
+ {
+ semaphore = semaphore_;
+ return *this;
+ }
+
+ SemaphoreGetZirconHandleInfoFUCHSIA &
+ setHandleType( VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits handleType_ ) VULKAN_HPP_NOEXCEPT
+ {
+ handleType = handleType_;
+ return *this;
+ }
+
+ operator VkSemaphoreGetZirconHandleInfoFUCHSIA const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkSemaphoreGetZirconHandleInfoFUCHSIA *>( this );
+ }
+
+ operator VkSemaphoreGetZirconHandleInfoFUCHSIA &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkSemaphoreGetZirconHandleInfoFUCHSIA *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( SemaphoreGetZirconHandleInfoFUCHSIA const & ) const = default;
+# else
+ bool operator==( SemaphoreGetZirconHandleInfoFUCHSIA const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( semaphore == rhs.semaphore ) &&
+ ( handleType == rhs.handleType );
+ }
+
+ bool operator!=( SemaphoreGetZirconHandleInfoFUCHSIA const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSemaphoreGetZirconHandleInfoFUCHSIA;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Semaphore semaphore = {};
+ VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits handleType =
+ VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits::eOpaqueFd;
+ };
+ static_assert( sizeof( SemaphoreGetZirconHandleInfoFUCHSIA ) == sizeof( VkSemaphoreGetZirconHandleInfoFUCHSIA ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<SemaphoreGetZirconHandleInfoFUCHSIA>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eSemaphoreGetZirconHandleInfoFUCHSIA>
+ {
+ using Type = SemaphoreGetZirconHandleInfoFUCHSIA;
+ };
+#endif /*VK_USE_PLATFORM_FUCHSIA*/
+
+ struct SemaphoreSignalInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSemaphoreSignalInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR SemaphoreSignalInfo( VULKAN_HPP_NAMESPACE::Semaphore semaphore_ = {},
+ uint64_t value_ = {} ) VULKAN_HPP_NOEXCEPT
+ : semaphore( semaphore_ )
+ , value( value_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR SemaphoreSignalInfo( SemaphoreSignalInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SemaphoreSignalInfo( VkSemaphoreSignalInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : SemaphoreSignalInfo( *reinterpret_cast<SemaphoreSignalInfo const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 SemaphoreSignalInfo &
+ operator=( SemaphoreSignalInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SemaphoreSignalInfo & operator=( VkSemaphoreSignalInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SemaphoreSignalInfo const *>( &rhs );
+ return *this;
+ }
+
+ SemaphoreSignalInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ SemaphoreSignalInfo & setSemaphore( VULKAN_HPP_NAMESPACE::Semaphore semaphore_ ) VULKAN_HPP_NOEXCEPT
+ {
+ semaphore = semaphore_;
+ return *this;
+ }
+
+ SemaphoreSignalInfo & setValue( uint64_t value_ ) VULKAN_HPP_NOEXCEPT
+ {
+ value = value_;
+ return *this;
+ }
+
+ operator VkSemaphoreSignalInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkSemaphoreSignalInfo *>( this );
+ }
+
+ operator VkSemaphoreSignalInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkSemaphoreSignalInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( SemaphoreSignalInfo const & ) const = default;
+#else
+ bool operator==( SemaphoreSignalInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( semaphore == rhs.semaphore ) &&
+ ( value == rhs.value );
+ }
+
+ bool operator!=( SemaphoreSignalInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSemaphoreSignalInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Semaphore semaphore = {};
+ uint64_t value = {};
+ };
+ static_assert( sizeof( SemaphoreSignalInfo ) == sizeof( VkSemaphoreSignalInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<SemaphoreSignalInfo>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eSemaphoreSignalInfo>
+ {
+ using Type = SemaphoreSignalInfo;
+ };
+ using SemaphoreSignalInfoKHR = SemaphoreSignalInfo;
+
+ struct SemaphoreSubmitInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSemaphoreSubmitInfoKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR SemaphoreSubmitInfoKHR( VULKAN_HPP_NAMESPACE::Semaphore semaphore_ = {},
+ uint64_t value_ = {},
+ VULKAN_HPP_NAMESPACE::PipelineStageFlags2KHR stageMask_ = {},
+ uint32_t deviceIndex_ = {} ) VULKAN_HPP_NOEXCEPT
+ : semaphore( semaphore_ )
+ , value( value_ )
+ , stageMask( stageMask_ )
+ , deviceIndex( deviceIndex_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR SemaphoreSubmitInfoKHR( SemaphoreSubmitInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SemaphoreSubmitInfoKHR( VkSemaphoreSubmitInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : SemaphoreSubmitInfoKHR( *reinterpret_cast<SemaphoreSubmitInfoKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 SemaphoreSubmitInfoKHR &
+ operator=( SemaphoreSubmitInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SemaphoreSubmitInfoKHR & operator=( VkSemaphoreSubmitInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SemaphoreSubmitInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ SemaphoreSubmitInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ SemaphoreSubmitInfoKHR & setSemaphore( VULKAN_HPP_NAMESPACE::Semaphore semaphore_ ) VULKAN_HPP_NOEXCEPT
+ {
+ semaphore = semaphore_;
+ return *this;
+ }
+
+ SemaphoreSubmitInfoKHR & setValue( uint64_t value_ ) VULKAN_HPP_NOEXCEPT
+ {
+ value = value_;
+ return *this;
+ }
+
+ SemaphoreSubmitInfoKHR & setStageMask( VULKAN_HPP_NAMESPACE::PipelineStageFlags2KHR stageMask_ ) VULKAN_HPP_NOEXCEPT
+ {
+ stageMask = stageMask_;
+ return *this;
+ }
+
+ SemaphoreSubmitInfoKHR & setDeviceIndex( uint32_t deviceIndex_ ) VULKAN_HPP_NOEXCEPT
+ {
+ deviceIndex = deviceIndex_;
+ return *this;
+ }
+
+ operator VkSemaphoreSubmitInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkSemaphoreSubmitInfoKHR *>( this );
+ }
+
+ operator VkSemaphoreSubmitInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkSemaphoreSubmitInfoKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( SemaphoreSubmitInfoKHR const & ) const = default;
+#else
+ bool operator==( SemaphoreSubmitInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( semaphore == rhs.semaphore ) &&
+ ( value == rhs.value ) && ( stageMask == rhs.stageMask ) && ( deviceIndex == rhs.deviceIndex );
+ }
+
+ bool operator!=( SemaphoreSubmitInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSemaphoreSubmitInfoKHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Semaphore semaphore = {};
+ uint64_t value = {};
+ VULKAN_HPP_NAMESPACE::PipelineStageFlags2KHR stageMask = {};
+ uint32_t deviceIndex = {};
+ };
+ static_assert( sizeof( SemaphoreSubmitInfoKHR ) == sizeof( VkSemaphoreSubmitInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<SemaphoreSubmitInfoKHR>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eSemaphoreSubmitInfoKHR>
+ {
+ using Type = SemaphoreSubmitInfoKHR;
+ };
+
+ struct SemaphoreTypeCreateInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSemaphoreTypeCreateInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR SemaphoreTypeCreateInfo(
+ VULKAN_HPP_NAMESPACE::SemaphoreType semaphoreType_ = VULKAN_HPP_NAMESPACE::SemaphoreType::eBinary,
+ uint64_t initialValue_ = {} ) VULKAN_HPP_NOEXCEPT
+ : semaphoreType( semaphoreType_ )
+ , initialValue( initialValue_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR SemaphoreTypeCreateInfo( SemaphoreTypeCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SemaphoreTypeCreateInfo( VkSemaphoreTypeCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : SemaphoreTypeCreateInfo( *reinterpret_cast<SemaphoreTypeCreateInfo const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 SemaphoreTypeCreateInfo &
+ operator=( SemaphoreTypeCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SemaphoreTypeCreateInfo & operator=( VkSemaphoreTypeCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SemaphoreTypeCreateInfo const *>( &rhs );
+ return *this;
+ }
+
+ SemaphoreTypeCreateInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ SemaphoreTypeCreateInfo & setSemaphoreType( VULKAN_HPP_NAMESPACE::SemaphoreType semaphoreType_ ) VULKAN_HPP_NOEXCEPT
+ {
+ semaphoreType = semaphoreType_;
+ return *this;
+ }
+
+ SemaphoreTypeCreateInfo & setInitialValue( uint64_t initialValue_ ) VULKAN_HPP_NOEXCEPT
+ {
+ initialValue = initialValue_;
+ return *this;
+ }
+
+ operator VkSemaphoreTypeCreateInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkSemaphoreTypeCreateInfo *>( this );
+ }
+
+ operator VkSemaphoreTypeCreateInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkSemaphoreTypeCreateInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( SemaphoreTypeCreateInfo const & ) const = default;
+#else
+ bool operator==( SemaphoreTypeCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( semaphoreType == rhs.semaphoreType ) &&
+ ( initialValue == rhs.initialValue );
+ }
+
+ bool operator!=( SemaphoreTypeCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSemaphoreTypeCreateInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::SemaphoreType semaphoreType = VULKAN_HPP_NAMESPACE::SemaphoreType::eBinary;
+ uint64_t initialValue = {};
+ };
+ static_assert( sizeof( SemaphoreTypeCreateInfo ) == sizeof( VkSemaphoreTypeCreateInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<SemaphoreTypeCreateInfo>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eSemaphoreTypeCreateInfo>
+ {
+ using Type = SemaphoreTypeCreateInfo;
+ };
+ using SemaphoreTypeCreateInfoKHR = SemaphoreTypeCreateInfo;
+
+ struct SemaphoreWaitInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSemaphoreWaitInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR SemaphoreWaitInfo( VULKAN_HPP_NAMESPACE::SemaphoreWaitFlags flags_ = {},
+ uint32_t semaphoreCount_ = {},
+ const VULKAN_HPP_NAMESPACE::Semaphore * pSemaphores_ = {},
+ const uint64_t * pValues_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , semaphoreCount( semaphoreCount_ )
+ , pSemaphores( pSemaphores_ )
+ , pValues( pValues_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR SemaphoreWaitInfo( SemaphoreWaitInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SemaphoreWaitInfo( VkSemaphoreWaitInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : SemaphoreWaitInfo( *reinterpret_cast<SemaphoreWaitInfo const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ SemaphoreWaitInfo(
+ VULKAN_HPP_NAMESPACE::SemaphoreWaitFlags flags_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Semaphore> const & semaphores_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const & values_ = {} )
+ : flags( flags_ )
+ , semaphoreCount( static_cast<uint32_t>( semaphores_.size() ) )
+ , pSemaphores( semaphores_.data() )
+ , pValues( values_.data() )
+ {
+# ifdef VULKAN_HPP_NO_EXCEPTIONS
+ VULKAN_HPP_ASSERT( semaphores_.size() == values_.size() );
+# else
+ if ( semaphores_.size() != values_.size() )
+ {
+ throw LogicError( VULKAN_HPP_NAMESPACE_STRING
+ "::SemaphoreWaitInfo::SemaphoreWaitInfo: semaphores_.size() != values_.size()" );
+ }
+# endif /*VULKAN_HPP_NO_EXCEPTIONS*/
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 SemaphoreWaitInfo &
+ operator=( SemaphoreWaitInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SemaphoreWaitInfo & operator=( VkSemaphoreWaitInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SemaphoreWaitInfo const *>( &rhs );
+ return *this;
+ }
+
+ SemaphoreWaitInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ SemaphoreWaitInfo & setFlags( VULKAN_HPP_NAMESPACE::SemaphoreWaitFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ SemaphoreWaitInfo & setSemaphoreCount( uint32_t semaphoreCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ semaphoreCount = semaphoreCount_;
+ return *this;
+ }
+
+ SemaphoreWaitInfo & setPSemaphores( const VULKAN_HPP_NAMESPACE::Semaphore * pSemaphores_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pSemaphores = pSemaphores_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ SemaphoreWaitInfo & setSemaphores(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Semaphore> const & semaphores_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ semaphoreCount = static_cast<uint32_t>( semaphores_.size() );
+ pSemaphores = semaphores_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ SemaphoreWaitInfo & setPValues( const uint64_t * pValues_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pValues = pValues_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ SemaphoreWaitInfo &
+ setValues( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const & values_ ) VULKAN_HPP_NOEXCEPT
+ {
+ semaphoreCount = static_cast<uint32_t>( values_.size() );
+ pValues = values_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkSemaphoreWaitInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkSemaphoreWaitInfo *>( this );
+ }
+
+ operator VkSemaphoreWaitInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkSemaphoreWaitInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( SemaphoreWaitInfo const & ) const = default;
+#else
+ bool operator==( SemaphoreWaitInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( semaphoreCount == rhs.semaphoreCount ) && ( pSemaphores == rhs.pSemaphores ) &&
+ ( pValues == rhs.pValues );
+ }
+
+ bool operator!=( SemaphoreWaitInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSemaphoreWaitInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::SemaphoreWaitFlags flags = {};
+ uint32_t semaphoreCount = {};
+ const VULKAN_HPP_NAMESPACE::Semaphore * pSemaphores = {};
+ const uint64_t * pValues = {};
+ };
+ static_assert( sizeof( SemaphoreWaitInfo ) == sizeof( VkSemaphoreWaitInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<SemaphoreWaitInfo>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eSemaphoreWaitInfo>
+ {
+ using Type = SemaphoreWaitInfo;
+ };
+ using SemaphoreWaitInfoKHR = SemaphoreWaitInfo;
+
+ struct SetStateFlagsIndirectCommandNV
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR SetStateFlagsIndirectCommandNV( uint32_t data_ = {} ) VULKAN_HPP_NOEXCEPT : data( data_ ) {}
+
+ VULKAN_HPP_CONSTEXPR
+ SetStateFlagsIndirectCommandNV( SetStateFlagsIndirectCommandNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SetStateFlagsIndirectCommandNV( VkSetStateFlagsIndirectCommandNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ : SetStateFlagsIndirectCommandNV( *reinterpret_cast<SetStateFlagsIndirectCommandNV const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 SetStateFlagsIndirectCommandNV &
+ operator=( SetStateFlagsIndirectCommandNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SetStateFlagsIndirectCommandNV & operator=( VkSetStateFlagsIndirectCommandNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SetStateFlagsIndirectCommandNV const *>( &rhs );
+ return *this;
+ }
+
+ SetStateFlagsIndirectCommandNV & setData( uint32_t data_ ) VULKAN_HPP_NOEXCEPT
+ {
+ data = data_;
+ return *this;
+ }
+
+ operator VkSetStateFlagsIndirectCommandNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkSetStateFlagsIndirectCommandNV *>( this );
+ }
+
+ operator VkSetStateFlagsIndirectCommandNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkSetStateFlagsIndirectCommandNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( SetStateFlagsIndirectCommandNV const & ) const = default;
+#else
+ bool operator==( SetStateFlagsIndirectCommandNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( data == rhs.data );
+ }
+
+ bool operator!=( SetStateFlagsIndirectCommandNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ uint32_t data = {};
+ };
+ static_assert( sizeof( SetStateFlagsIndirectCommandNV ) == sizeof( VkSetStateFlagsIndirectCommandNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<SetStateFlagsIndirectCommandNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ struct ShaderModuleCreateInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eShaderModuleCreateInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR ShaderModuleCreateInfo( VULKAN_HPP_NAMESPACE::ShaderModuleCreateFlags flags_ = {},
+ size_t codeSize_ = {},
+ const uint32_t * pCode_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , codeSize( codeSize_ )
+ , pCode( pCode_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR ShaderModuleCreateInfo( ShaderModuleCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ShaderModuleCreateInfo( VkShaderModuleCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ShaderModuleCreateInfo( *reinterpret_cast<ShaderModuleCreateInfo const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ ShaderModuleCreateInfo( VULKAN_HPP_NAMESPACE::ShaderModuleCreateFlags flags_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & code_ )
+ : flags( flags_ ), codeSize( code_.size() * 4 ), pCode( code_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ShaderModuleCreateInfo &
+ operator=( ShaderModuleCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ShaderModuleCreateInfo & operator=( VkShaderModuleCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ShaderModuleCreateInfo const *>( &rhs );
+ return *this;
+ }
+
+ ShaderModuleCreateInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ ShaderModuleCreateInfo & setFlags( VULKAN_HPP_NAMESPACE::ShaderModuleCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ ShaderModuleCreateInfo & setCodeSize( size_t codeSize_ ) VULKAN_HPP_NOEXCEPT
+ {
+ codeSize = codeSize_;
+ return *this;
+ }
+
+ ShaderModuleCreateInfo & setPCode( const uint32_t * pCode_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pCode = pCode_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ ShaderModuleCreateInfo &
+ setCode( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & code_ ) VULKAN_HPP_NOEXCEPT
+ {
+ codeSize = code_.size() * 4;
+ pCode = code_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkShaderModuleCreateInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkShaderModuleCreateInfo *>( this );
+ }
+
+ operator VkShaderModuleCreateInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkShaderModuleCreateInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ShaderModuleCreateInfo const & ) const = default;
+#else
+ bool operator==( ShaderModuleCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( codeSize == rhs.codeSize ) && ( pCode == rhs.pCode );
+ }
+
+ bool operator!=( ShaderModuleCreateInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eShaderModuleCreateInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ShaderModuleCreateFlags flags = {};
+ size_t codeSize = {};
+ const uint32_t * pCode = {};
+ };
+ static_assert( sizeof( ShaderModuleCreateInfo ) == sizeof( VkShaderModuleCreateInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ShaderModuleCreateInfo>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eShaderModuleCreateInfo>
+ {
+ using Type = ShaderModuleCreateInfo;
+ };
+
+ struct ShaderModuleValidationCacheCreateInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eShaderModuleValidationCacheCreateInfoEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR ShaderModuleValidationCacheCreateInfoEXT(
+ VULKAN_HPP_NAMESPACE::ValidationCacheEXT validationCache_ = {} ) VULKAN_HPP_NOEXCEPT
+ : validationCache( validationCache_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR ShaderModuleValidationCacheCreateInfoEXT(
+ ShaderModuleValidationCacheCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ShaderModuleValidationCacheCreateInfoEXT( VkShaderModuleValidationCacheCreateInfoEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : ShaderModuleValidationCacheCreateInfoEXT(
+ *reinterpret_cast<ShaderModuleValidationCacheCreateInfoEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ShaderModuleValidationCacheCreateInfoEXT &
+ operator=( ShaderModuleValidationCacheCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ShaderModuleValidationCacheCreateInfoEXT &
+ operator=( VkShaderModuleValidationCacheCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ShaderModuleValidationCacheCreateInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ ShaderModuleValidationCacheCreateInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ ShaderModuleValidationCacheCreateInfoEXT &
+ setValidationCache( VULKAN_HPP_NAMESPACE::ValidationCacheEXT validationCache_ ) VULKAN_HPP_NOEXCEPT
+ {
+ validationCache = validationCache_;
+ return *this;
+ }
+
+ operator VkShaderModuleValidationCacheCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkShaderModuleValidationCacheCreateInfoEXT *>( this );
+ }
+
+ operator VkShaderModuleValidationCacheCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkShaderModuleValidationCacheCreateInfoEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ShaderModuleValidationCacheCreateInfoEXT const & ) const = default;
+#else
+ bool operator==( ShaderModuleValidationCacheCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( validationCache == rhs.validationCache );
+ }
+
+ bool operator!=( ShaderModuleValidationCacheCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eShaderModuleValidationCacheCreateInfoEXT;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ValidationCacheEXT validationCache = {};
+ };
+ static_assert( sizeof( ShaderModuleValidationCacheCreateInfoEXT ) ==
+ sizeof( VkShaderModuleValidationCacheCreateInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ShaderModuleValidationCacheCreateInfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eShaderModuleValidationCacheCreateInfoEXT>
+ {
+ using Type = ShaderModuleValidationCacheCreateInfoEXT;
+ };
+
+ struct ShaderResourceUsageAMD
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR ShaderResourceUsageAMD( uint32_t numUsedVgprs_ = {},
+ uint32_t numUsedSgprs_ = {},
+ uint32_t ldsSizePerLocalWorkGroup_ = {},
+ size_t ldsUsageSizeInBytes_ = {},
+ size_t scratchMemUsageInBytes_ = {} ) VULKAN_HPP_NOEXCEPT
+ : numUsedVgprs( numUsedVgprs_ )
+ , numUsedSgprs( numUsedSgprs_ )
+ , ldsSizePerLocalWorkGroup( ldsSizePerLocalWorkGroup_ )
+ , ldsUsageSizeInBytes( ldsUsageSizeInBytes_ )
+ , scratchMemUsageInBytes( scratchMemUsageInBytes_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR ShaderResourceUsageAMD( ShaderResourceUsageAMD const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ShaderResourceUsageAMD( VkShaderResourceUsageAMD const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ShaderResourceUsageAMD( *reinterpret_cast<ShaderResourceUsageAMD const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ShaderResourceUsageAMD &
+ operator=( ShaderResourceUsageAMD const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ShaderResourceUsageAMD & operator=( VkShaderResourceUsageAMD const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ShaderResourceUsageAMD const *>( &rhs );
+ return *this;
+ }
+
+ operator VkShaderResourceUsageAMD const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkShaderResourceUsageAMD *>( this );
+ }
+
+ operator VkShaderResourceUsageAMD &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkShaderResourceUsageAMD *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ShaderResourceUsageAMD const & ) const = default;
+#else
+ bool operator==( ShaderResourceUsageAMD const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( numUsedVgprs == rhs.numUsedVgprs ) && ( numUsedSgprs == rhs.numUsedSgprs ) &&
+ ( ldsSizePerLocalWorkGroup == rhs.ldsSizePerLocalWorkGroup ) &&
+ ( ldsUsageSizeInBytes == rhs.ldsUsageSizeInBytes ) &&
+ ( scratchMemUsageInBytes == rhs.scratchMemUsageInBytes );
+ }
+
+ bool operator!=( ShaderResourceUsageAMD const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ uint32_t numUsedVgprs = {};
+ uint32_t numUsedSgprs = {};
+ uint32_t ldsSizePerLocalWorkGroup = {};
+ size_t ldsUsageSizeInBytes = {};
+ size_t scratchMemUsageInBytes = {};
+ };
+ static_assert( sizeof( ShaderResourceUsageAMD ) == sizeof( VkShaderResourceUsageAMD ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ShaderResourceUsageAMD>::value, "struct wrapper is not a standard layout!" );
+
+ struct ShaderStatisticsInfoAMD
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR_14
+ ShaderStatisticsInfoAMD( VULKAN_HPP_NAMESPACE::ShaderStageFlags shaderStageMask_ = {},
+ VULKAN_HPP_NAMESPACE::ShaderResourceUsageAMD resourceUsage_ = {},
+ uint32_t numPhysicalVgprs_ = {},
+ uint32_t numPhysicalSgprs_ = {},
+ uint32_t numAvailableVgprs_ = {},
+ uint32_t numAvailableSgprs_ = {},
+ std::array<uint32_t, 3> const & computeWorkGroupSize_ = {} ) VULKAN_HPP_NOEXCEPT
+ : shaderStageMask( shaderStageMask_ )
+ , resourceUsage( resourceUsage_ )
+ , numPhysicalVgprs( numPhysicalVgprs_ )
+ , numPhysicalSgprs( numPhysicalSgprs_ )
+ , numAvailableVgprs( numAvailableVgprs_ )
+ , numAvailableSgprs( numAvailableSgprs_ )
+ , computeWorkGroupSize( computeWorkGroupSize_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR_14
+ ShaderStatisticsInfoAMD( ShaderStatisticsInfoAMD const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ShaderStatisticsInfoAMD( VkShaderStatisticsInfoAMD const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ShaderStatisticsInfoAMD( *reinterpret_cast<ShaderStatisticsInfoAMD const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ShaderStatisticsInfoAMD &
+ operator=( ShaderStatisticsInfoAMD const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ShaderStatisticsInfoAMD & operator=( VkShaderStatisticsInfoAMD const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ShaderStatisticsInfoAMD const *>( &rhs );
+ return *this;
+ }
+
+ operator VkShaderStatisticsInfoAMD const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkShaderStatisticsInfoAMD *>( this );
+ }
+
+ operator VkShaderStatisticsInfoAMD &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkShaderStatisticsInfoAMD *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ShaderStatisticsInfoAMD const & ) const = default;
+#else
+ bool operator==( ShaderStatisticsInfoAMD const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( shaderStageMask == rhs.shaderStageMask ) && ( resourceUsage == rhs.resourceUsage ) &&
+ ( numPhysicalVgprs == rhs.numPhysicalVgprs ) && ( numPhysicalSgprs == rhs.numPhysicalSgprs ) &&
+ ( numAvailableVgprs == rhs.numAvailableVgprs ) && ( numAvailableSgprs == rhs.numAvailableSgprs ) &&
+ ( computeWorkGroupSize == rhs.computeWorkGroupSize );
+ }
+
+ bool operator!=( ShaderStatisticsInfoAMD const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::ShaderStageFlags shaderStageMask = {};
+ VULKAN_HPP_NAMESPACE::ShaderResourceUsageAMD resourceUsage = {};
+ uint32_t numPhysicalVgprs = {};
+ uint32_t numPhysicalSgprs = {};
+ uint32_t numAvailableVgprs = {};
+ uint32_t numAvailableSgprs = {};
+ VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint32_t, 3> computeWorkGroupSize = {};
+ };
+ static_assert( sizeof( ShaderStatisticsInfoAMD ) == sizeof( VkShaderStatisticsInfoAMD ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ShaderStatisticsInfoAMD>::value, "struct wrapper is not a standard layout!" );
+
+ struct SharedPresentSurfaceCapabilitiesKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eSharedPresentSurfaceCapabilitiesKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR SharedPresentSurfaceCapabilitiesKHR(
+ VULKAN_HPP_NAMESPACE::ImageUsageFlags sharedPresentSupportedUsageFlags_ = {} ) VULKAN_HPP_NOEXCEPT
+ : sharedPresentSupportedUsageFlags( sharedPresentSupportedUsageFlags_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR SharedPresentSurfaceCapabilitiesKHR( SharedPresentSurfaceCapabilitiesKHR const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ SharedPresentSurfaceCapabilitiesKHR( VkSharedPresentSurfaceCapabilitiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : SharedPresentSurfaceCapabilitiesKHR( *reinterpret_cast<SharedPresentSurfaceCapabilitiesKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 SharedPresentSurfaceCapabilitiesKHR &
+ operator=( SharedPresentSurfaceCapabilitiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SharedPresentSurfaceCapabilitiesKHR &
+ operator=( VkSharedPresentSurfaceCapabilitiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SharedPresentSurfaceCapabilitiesKHR const *>( &rhs );
+ return *this;
+ }
+
+ operator VkSharedPresentSurfaceCapabilitiesKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkSharedPresentSurfaceCapabilitiesKHR *>( this );
+ }
+
+ operator VkSharedPresentSurfaceCapabilitiesKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkSharedPresentSurfaceCapabilitiesKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( SharedPresentSurfaceCapabilitiesKHR const & ) const = default;
+#else
+ bool operator==( SharedPresentSurfaceCapabilitiesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( sharedPresentSupportedUsageFlags == rhs.sharedPresentSupportedUsageFlags );
+ }
+
+ bool operator!=( SharedPresentSurfaceCapabilitiesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSharedPresentSurfaceCapabilitiesKHR;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ImageUsageFlags sharedPresentSupportedUsageFlags = {};
+ };
+ static_assert( sizeof( SharedPresentSurfaceCapabilitiesKHR ) == sizeof( VkSharedPresentSurfaceCapabilitiesKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<SharedPresentSurfaceCapabilitiesKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eSharedPresentSurfaceCapabilitiesKHR>
+ {
+ using Type = SharedPresentSurfaceCapabilitiesKHR;
+ };
+
+ struct SparseImageFormatProperties
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ SparseImageFormatProperties( VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask_ = {},
+ VULKAN_HPP_NAMESPACE::Extent3D imageGranularity_ = {},
+ VULKAN_HPP_NAMESPACE::SparseImageFormatFlags flags_ = {} ) VULKAN_HPP_NOEXCEPT
+ : aspectMask( aspectMask_ )
+ , imageGranularity( imageGranularity_ )
+ , flags( flags_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ SparseImageFormatProperties( SparseImageFormatProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SparseImageFormatProperties( VkSparseImageFormatProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ : SparseImageFormatProperties( *reinterpret_cast<SparseImageFormatProperties const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 SparseImageFormatProperties &
+ operator=( SparseImageFormatProperties const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SparseImageFormatProperties & operator=( VkSparseImageFormatProperties const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SparseImageFormatProperties const *>( &rhs );
+ return *this;
+ }
+
+ operator VkSparseImageFormatProperties const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkSparseImageFormatProperties *>( this );
+ }
+
+ operator VkSparseImageFormatProperties &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkSparseImageFormatProperties *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( SparseImageFormatProperties const & ) const = default;
+#else
+ bool operator==( SparseImageFormatProperties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( aspectMask == rhs.aspectMask ) && ( imageGranularity == rhs.imageGranularity ) && ( flags == rhs.flags );
+ }
+
+ bool operator!=( SparseImageFormatProperties const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask = {};
+ VULKAN_HPP_NAMESPACE::Extent3D imageGranularity = {};
+ VULKAN_HPP_NAMESPACE::SparseImageFormatFlags flags = {};
+ };
+ static_assert( sizeof( SparseImageFormatProperties ) == sizeof( VkSparseImageFormatProperties ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<SparseImageFormatProperties>::value,
+ "struct wrapper is not a standard layout!" );
+
+ struct SparseImageFormatProperties2
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSparseImageFormatProperties2;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR SparseImageFormatProperties2(
+ VULKAN_HPP_NAMESPACE::SparseImageFormatProperties properties_ = {} ) VULKAN_HPP_NOEXCEPT
+ : properties( properties_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ SparseImageFormatProperties2( SparseImageFormatProperties2 const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SparseImageFormatProperties2( VkSparseImageFormatProperties2 const & rhs ) VULKAN_HPP_NOEXCEPT
+ : SparseImageFormatProperties2( *reinterpret_cast<SparseImageFormatProperties2 const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 SparseImageFormatProperties2 &
+ operator=( SparseImageFormatProperties2 const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SparseImageFormatProperties2 & operator=( VkSparseImageFormatProperties2 const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SparseImageFormatProperties2 const *>( &rhs );
+ return *this;
+ }
+
+ operator VkSparseImageFormatProperties2 const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkSparseImageFormatProperties2 *>( this );
+ }
+
+ operator VkSparseImageFormatProperties2 &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkSparseImageFormatProperties2 *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( SparseImageFormatProperties2 const & ) const = default;
+#else
+ bool operator==( SparseImageFormatProperties2 const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( properties == rhs.properties );
+ }
+
+ bool operator!=( SparseImageFormatProperties2 const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSparseImageFormatProperties2;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::SparseImageFormatProperties properties = {};
+ };
+ static_assert( sizeof( SparseImageFormatProperties2 ) == sizeof( VkSparseImageFormatProperties2 ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<SparseImageFormatProperties2>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eSparseImageFormatProperties2>
+ {
+ using Type = SparseImageFormatProperties2;
+ };
+ using SparseImageFormatProperties2KHR = SparseImageFormatProperties2;
+
+ struct SparseImageMemoryRequirements
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ SparseImageMemoryRequirements( VULKAN_HPP_NAMESPACE::SparseImageFormatProperties formatProperties_ = {},
+ uint32_t imageMipTailFirstLod_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize imageMipTailSize_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize imageMipTailOffset_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize imageMipTailStride_ = {} ) VULKAN_HPP_NOEXCEPT
+ : formatProperties( formatProperties_ )
+ , imageMipTailFirstLod( imageMipTailFirstLod_ )
+ , imageMipTailSize( imageMipTailSize_ )
+ , imageMipTailOffset( imageMipTailOffset_ )
+ , imageMipTailStride( imageMipTailStride_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ SparseImageMemoryRequirements( SparseImageMemoryRequirements const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SparseImageMemoryRequirements( VkSparseImageMemoryRequirements const & rhs ) VULKAN_HPP_NOEXCEPT
+ : SparseImageMemoryRequirements( *reinterpret_cast<SparseImageMemoryRequirements const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 SparseImageMemoryRequirements &
+ operator=( SparseImageMemoryRequirements const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SparseImageMemoryRequirements & operator=( VkSparseImageMemoryRequirements const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SparseImageMemoryRequirements const *>( &rhs );
+ return *this;
+ }
+
+ operator VkSparseImageMemoryRequirements const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkSparseImageMemoryRequirements *>( this );
+ }
+
+ operator VkSparseImageMemoryRequirements &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkSparseImageMemoryRequirements *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( SparseImageMemoryRequirements const & ) const = default;
+#else
+ bool operator==( SparseImageMemoryRequirements const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( formatProperties == rhs.formatProperties ) && ( imageMipTailFirstLod == rhs.imageMipTailFirstLod ) &&
+ ( imageMipTailSize == rhs.imageMipTailSize ) && ( imageMipTailOffset == rhs.imageMipTailOffset ) &&
+ ( imageMipTailStride == rhs.imageMipTailStride );
+ }
+
+ bool operator!=( SparseImageMemoryRequirements const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::SparseImageFormatProperties formatProperties = {};
+ uint32_t imageMipTailFirstLod = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize imageMipTailSize = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize imageMipTailOffset = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize imageMipTailStride = {};
+ };
+ static_assert( sizeof( SparseImageMemoryRequirements ) == sizeof( VkSparseImageMemoryRequirements ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<SparseImageMemoryRequirements>::value,
+ "struct wrapper is not a standard layout!" );
+
+ struct SparseImageMemoryRequirements2
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSparseImageMemoryRequirements2;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR SparseImageMemoryRequirements2(
+ VULKAN_HPP_NAMESPACE::SparseImageMemoryRequirements memoryRequirements_ = {} ) VULKAN_HPP_NOEXCEPT
+ : memoryRequirements( memoryRequirements_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ SparseImageMemoryRequirements2( SparseImageMemoryRequirements2 const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SparseImageMemoryRequirements2( VkSparseImageMemoryRequirements2 const & rhs ) VULKAN_HPP_NOEXCEPT
+ : SparseImageMemoryRequirements2( *reinterpret_cast<SparseImageMemoryRequirements2 const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 SparseImageMemoryRequirements2 &
+ operator=( SparseImageMemoryRequirements2 const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SparseImageMemoryRequirements2 & operator=( VkSparseImageMemoryRequirements2 const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SparseImageMemoryRequirements2 const *>( &rhs );
+ return *this;
+ }
+
+ operator VkSparseImageMemoryRequirements2 const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkSparseImageMemoryRequirements2 *>( this );
+ }
+
+ operator VkSparseImageMemoryRequirements2 &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkSparseImageMemoryRequirements2 *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( SparseImageMemoryRequirements2 const & ) const = default;
+#else
+ bool operator==( SparseImageMemoryRequirements2 const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( memoryRequirements == rhs.memoryRequirements );
+ }
+
+ bool operator!=( SparseImageMemoryRequirements2 const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSparseImageMemoryRequirements2;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::SparseImageMemoryRequirements memoryRequirements = {};
+ };
+ static_assert( sizeof( SparseImageMemoryRequirements2 ) == sizeof( VkSparseImageMemoryRequirements2 ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<SparseImageMemoryRequirements2>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eSparseImageMemoryRequirements2>
+ {
+ using Type = SparseImageMemoryRequirements2;
+ };
+ using SparseImageMemoryRequirements2KHR = SparseImageMemoryRequirements2;
+
+#if defined( VK_USE_PLATFORM_GGP )
+ struct StreamDescriptorSurfaceCreateInfoGGP
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eStreamDescriptorSurfaceCreateInfoGGP;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ StreamDescriptorSurfaceCreateInfoGGP( VULKAN_HPP_NAMESPACE::StreamDescriptorSurfaceCreateFlagsGGP flags_ = {},
+ GgpStreamDescriptor streamDescriptor_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , streamDescriptor( streamDescriptor_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR StreamDescriptorSurfaceCreateInfoGGP( StreamDescriptorSurfaceCreateInfoGGP const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ StreamDescriptorSurfaceCreateInfoGGP( VkStreamDescriptorSurfaceCreateInfoGGP const & rhs ) VULKAN_HPP_NOEXCEPT
+ : StreamDescriptorSurfaceCreateInfoGGP( *reinterpret_cast<StreamDescriptorSurfaceCreateInfoGGP const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 StreamDescriptorSurfaceCreateInfoGGP &
+ operator=( StreamDescriptorSurfaceCreateInfoGGP const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ StreamDescriptorSurfaceCreateInfoGGP &
+ operator=( VkStreamDescriptorSurfaceCreateInfoGGP const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::StreamDescriptorSurfaceCreateInfoGGP const *>( &rhs );
+ return *this;
+ }
+
+ StreamDescriptorSurfaceCreateInfoGGP & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ StreamDescriptorSurfaceCreateInfoGGP &
+ setFlags( VULKAN_HPP_NAMESPACE::StreamDescriptorSurfaceCreateFlagsGGP flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ StreamDescriptorSurfaceCreateInfoGGP &
+ setStreamDescriptor( GgpStreamDescriptor streamDescriptor_ ) VULKAN_HPP_NOEXCEPT
+ {
+ streamDescriptor = streamDescriptor_;
+ return *this;
+ }
+
+ operator VkStreamDescriptorSurfaceCreateInfoGGP const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkStreamDescriptorSurfaceCreateInfoGGP *>( this );
+ }
+
+ operator VkStreamDescriptorSurfaceCreateInfoGGP &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkStreamDescriptorSurfaceCreateInfoGGP *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( StreamDescriptorSurfaceCreateInfoGGP const & ) const = default;
+# else
+ bool operator==( StreamDescriptorSurfaceCreateInfoGGP const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( memcmp( &streamDescriptor, &rhs.streamDescriptor, sizeof( GgpStreamDescriptor ) ) == 0 );
+ }
+
+ bool operator!=( StreamDescriptorSurfaceCreateInfoGGP const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eStreamDescriptorSurfaceCreateInfoGGP;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::StreamDescriptorSurfaceCreateFlagsGGP flags = {};
+ GgpStreamDescriptor streamDescriptor = {};
+ };
+ static_assert( sizeof( StreamDescriptorSurfaceCreateInfoGGP ) == sizeof( VkStreamDescriptorSurfaceCreateInfoGGP ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<StreamDescriptorSurfaceCreateInfoGGP>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eStreamDescriptorSurfaceCreateInfoGGP>
+ {
+ using Type = StreamDescriptorSurfaceCreateInfoGGP;
+ };
+#endif /*VK_USE_PLATFORM_GGP*/
+
+ struct StridedDeviceAddressRegionKHR
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ StridedDeviceAddressRegionKHR( VULKAN_HPP_NAMESPACE::DeviceAddress deviceAddress_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize stride_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize size_ = {} ) VULKAN_HPP_NOEXCEPT
+ : deviceAddress( deviceAddress_ )
+ , stride( stride_ )
+ , size( size_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ StridedDeviceAddressRegionKHR( StridedDeviceAddressRegionKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ StridedDeviceAddressRegionKHR( VkStridedDeviceAddressRegionKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : StridedDeviceAddressRegionKHR( *reinterpret_cast<StridedDeviceAddressRegionKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 StridedDeviceAddressRegionKHR &
+ operator=( StridedDeviceAddressRegionKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ StridedDeviceAddressRegionKHR & operator=( VkStridedDeviceAddressRegionKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::StridedDeviceAddressRegionKHR const *>( &rhs );
+ return *this;
+ }
+
+ StridedDeviceAddressRegionKHR &
+ setDeviceAddress( VULKAN_HPP_NAMESPACE::DeviceAddress deviceAddress_ ) VULKAN_HPP_NOEXCEPT
+ {
+ deviceAddress = deviceAddress_;
+ return *this;
+ }
+
+ StridedDeviceAddressRegionKHR & setStride( VULKAN_HPP_NAMESPACE::DeviceSize stride_ ) VULKAN_HPP_NOEXCEPT
+ {
+ stride = stride_;
+ return *this;
+ }
+
+ StridedDeviceAddressRegionKHR & setSize( VULKAN_HPP_NAMESPACE::DeviceSize size_ ) VULKAN_HPP_NOEXCEPT
+ {
+ size = size_;
+ return *this;
+ }
+
+ operator VkStridedDeviceAddressRegionKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkStridedDeviceAddressRegionKHR *>( this );
+ }
+
+ operator VkStridedDeviceAddressRegionKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkStridedDeviceAddressRegionKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( StridedDeviceAddressRegionKHR const & ) const = default;
+#else
+ bool operator==( StridedDeviceAddressRegionKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( deviceAddress == rhs.deviceAddress ) && ( stride == rhs.stride ) && ( size == rhs.size );
+ }
+
+ bool operator!=( StridedDeviceAddressRegionKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::DeviceAddress deviceAddress = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize stride = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize size = {};
+ };
+ static_assert( sizeof( StridedDeviceAddressRegionKHR ) == sizeof( VkStridedDeviceAddressRegionKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<StridedDeviceAddressRegionKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ struct SubmitInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSubmitInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ SubmitInfo( uint32_t waitSemaphoreCount_ = {},
+ const VULKAN_HPP_NAMESPACE::Semaphore * pWaitSemaphores_ = {},
+ const VULKAN_HPP_NAMESPACE::PipelineStageFlags * pWaitDstStageMask_ = {},
+ uint32_t commandBufferCount_ = {},
+ const VULKAN_HPP_NAMESPACE::CommandBuffer * pCommandBuffers_ = {},
+ uint32_t signalSemaphoreCount_ = {},
+ const VULKAN_HPP_NAMESPACE::Semaphore * pSignalSemaphores_ = {} ) VULKAN_HPP_NOEXCEPT
+ : waitSemaphoreCount( waitSemaphoreCount_ )
+ , pWaitSemaphores( pWaitSemaphores_ )
+ , pWaitDstStageMask( pWaitDstStageMask_ )
+ , commandBufferCount( commandBufferCount_ )
+ , pCommandBuffers( pCommandBuffers_ )
+ , signalSemaphoreCount( signalSemaphoreCount_ )
+ , pSignalSemaphores( pSignalSemaphores_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR SubmitInfo( SubmitInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SubmitInfo( VkSubmitInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : SubmitInfo( *reinterpret_cast<SubmitInfo const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ SubmitInfo(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Semaphore> const & waitSemaphores_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::PipelineStageFlags> const &
+ waitDstStageMask_ = {},
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::CommandBuffer> const &
+ commandBuffers_ = {},
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Semaphore> const &
+ signalSemaphores_ = {} )
+ : waitSemaphoreCount( static_cast<uint32_t>( waitSemaphores_.size() ) )
+ , pWaitSemaphores( waitSemaphores_.data() )
+ , pWaitDstStageMask( waitDstStageMask_.data() )
+ , commandBufferCount( static_cast<uint32_t>( commandBuffers_.size() ) )
+ , pCommandBuffers( commandBuffers_.data() )
+ , signalSemaphoreCount( static_cast<uint32_t>( signalSemaphores_.size() ) )
+ , pSignalSemaphores( signalSemaphores_.data() )
+ {
+# ifdef VULKAN_HPP_NO_EXCEPTIONS
+ VULKAN_HPP_ASSERT( waitSemaphores_.size() == waitDstStageMask_.size() );
+# else
+ if ( waitSemaphores_.size() != waitDstStageMask_.size() )
+ {
+ throw LogicError( VULKAN_HPP_NAMESPACE_STRING
+ "::SubmitInfo::SubmitInfo: waitSemaphores_.size() != waitDstStageMask_.size()" );
+ }
+# endif /*VULKAN_HPP_NO_EXCEPTIONS*/
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 SubmitInfo & operator=( SubmitInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SubmitInfo & operator=( VkSubmitInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SubmitInfo const *>( &rhs );
+ return *this;
+ }
+
+ SubmitInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ SubmitInfo & setWaitSemaphoreCount( uint32_t waitSemaphoreCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ waitSemaphoreCount = waitSemaphoreCount_;
+ return *this;
+ }
+
+ SubmitInfo & setPWaitSemaphores( const VULKAN_HPP_NAMESPACE::Semaphore * pWaitSemaphores_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pWaitSemaphores = pWaitSemaphores_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ SubmitInfo & setWaitSemaphores(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Semaphore> const & waitSemaphores_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ waitSemaphoreCount = static_cast<uint32_t>( waitSemaphores_.size() );
+ pWaitSemaphores = waitSemaphores_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ SubmitInfo &
+ setPWaitDstStageMask( const VULKAN_HPP_NAMESPACE::PipelineStageFlags * pWaitDstStageMask_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pWaitDstStageMask = pWaitDstStageMask_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ SubmitInfo & setWaitDstStageMask(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::PipelineStageFlags> const &
+ waitDstStageMask_ ) VULKAN_HPP_NOEXCEPT
+ {
+ waitSemaphoreCount = static_cast<uint32_t>( waitDstStageMask_.size() );
+ pWaitDstStageMask = waitDstStageMask_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ SubmitInfo & setCommandBufferCount( uint32_t commandBufferCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ commandBufferCount = commandBufferCount_;
+ return *this;
+ }
+
+ SubmitInfo & setPCommandBuffers( const VULKAN_HPP_NAMESPACE::CommandBuffer * pCommandBuffers_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pCommandBuffers = pCommandBuffers_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ SubmitInfo & setCommandBuffers(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::CommandBuffer> const & commandBuffers_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ commandBufferCount = static_cast<uint32_t>( commandBuffers_.size() );
+ pCommandBuffers = commandBuffers_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ SubmitInfo & setSignalSemaphoreCount( uint32_t signalSemaphoreCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ signalSemaphoreCount = signalSemaphoreCount_;
+ return *this;
+ }
+
+ SubmitInfo & setPSignalSemaphores( const VULKAN_HPP_NAMESPACE::Semaphore * pSignalSemaphores_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pSignalSemaphores = pSignalSemaphores_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ SubmitInfo & setSignalSemaphores(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Semaphore> const & signalSemaphores_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ signalSemaphoreCount = static_cast<uint32_t>( signalSemaphores_.size() );
+ pSignalSemaphores = signalSemaphores_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkSubmitInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkSubmitInfo *>( this );
+ }
+
+ operator VkSubmitInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkSubmitInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( SubmitInfo const & ) const = default;
+#else
+ bool operator==( SubmitInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( waitSemaphoreCount == rhs.waitSemaphoreCount ) &&
+ ( pWaitSemaphores == rhs.pWaitSemaphores ) && ( pWaitDstStageMask == rhs.pWaitDstStageMask ) &&
+ ( commandBufferCount == rhs.commandBufferCount ) && ( pCommandBuffers == rhs.pCommandBuffers ) &&
+ ( signalSemaphoreCount == rhs.signalSemaphoreCount ) && ( pSignalSemaphores == rhs.pSignalSemaphores );
+ }
+
+ bool operator!=( SubmitInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSubmitInfo;
+ const void * pNext = {};
+ uint32_t waitSemaphoreCount = {};
+ const VULKAN_HPP_NAMESPACE::Semaphore * pWaitSemaphores = {};
+ const VULKAN_HPP_NAMESPACE::PipelineStageFlags * pWaitDstStageMask = {};
+ uint32_t commandBufferCount = {};
+ const VULKAN_HPP_NAMESPACE::CommandBuffer * pCommandBuffers = {};
+ uint32_t signalSemaphoreCount = {};
+ const VULKAN_HPP_NAMESPACE::Semaphore * pSignalSemaphores = {};
+ };
+ static_assert( sizeof( SubmitInfo ) == sizeof( VkSubmitInfo ), "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<SubmitInfo>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eSubmitInfo>
+ {
+ using Type = SubmitInfo;
+ };
+
+ struct SubmitInfo2KHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSubmitInfo2KHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR SubmitInfo2KHR(
+ VULKAN_HPP_NAMESPACE::SubmitFlagsKHR flags_ = {},
+ uint32_t waitSemaphoreInfoCount_ = {},
+ const VULKAN_HPP_NAMESPACE::SemaphoreSubmitInfoKHR * pWaitSemaphoreInfos_ = {},
+ uint32_t commandBufferInfoCount_ = {},
+ const VULKAN_HPP_NAMESPACE::CommandBufferSubmitInfoKHR * pCommandBufferInfos_ = {},
+ uint32_t signalSemaphoreInfoCount_ = {},
+ const VULKAN_HPP_NAMESPACE::SemaphoreSubmitInfoKHR * pSignalSemaphoreInfos_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , waitSemaphoreInfoCount( waitSemaphoreInfoCount_ )
+ , pWaitSemaphoreInfos( pWaitSemaphoreInfos_ )
+ , commandBufferInfoCount( commandBufferInfoCount_ )
+ , pCommandBufferInfos( pCommandBufferInfos_ )
+ , signalSemaphoreInfoCount( signalSemaphoreInfoCount_ )
+ , pSignalSemaphoreInfos( pSignalSemaphoreInfos_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR SubmitInfo2KHR( SubmitInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SubmitInfo2KHR( VkSubmitInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : SubmitInfo2KHR( *reinterpret_cast<SubmitInfo2KHR const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ SubmitInfo2KHR(
+ VULKAN_HPP_NAMESPACE::SubmitFlagsKHR flags_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SemaphoreSubmitInfoKHR> const &
+ waitSemaphoreInfos_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::CommandBufferSubmitInfoKHR> const &
+ commandBufferInfos_ = {},
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SemaphoreSubmitInfoKHR> const &
+ signalSemaphoreInfos_ = {} )
+ : flags( flags_ )
+ , waitSemaphoreInfoCount( static_cast<uint32_t>( waitSemaphoreInfos_.size() ) )
+ , pWaitSemaphoreInfos( waitSemaphoreInfos_.data() )
+ , commandBufferInfoCount( static_cast<uint32_t>( commandBufferInfos_.size() ) )
+ , pCommandBufferInfos( commandBufferInfos_.data() )
+ , signalSemaphoreInfoCount( static_cast<uint32_t>( signalSemaphoreInfos_.size() ) )
+ , pSignalSemaphoreInfos( signalSemaphoreInfos_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 SubmitInfo2KHR & operator=( SubmitInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SubmitInfo2KHR & operator=( VkSubmitInfo2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SubmitInfo2KHR const *>( &rhs );
+ return *this;
+ }
+
+ SubmitInfo2KHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ SubmitInfo2KHR & setFlags( VULKAN_HPP_NAMESPACE::SubmitFlagsKHR flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ SubmitInfo2KHR & setWaitSemaphoreInfoCount( uint32_t waitSemaphoreInfoCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ waitSemaphoreInfoCount = waitSemaphoreInfoCount_;
+ return *this;
+ }
+
+ SubmitInfo2KHR & setPWaitSemaphoreInfos( const VULKAN_HPP_NAMESPACE::SemaphoreSubmitInfoKHR * pWaitSemaphoreInfos_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ pWaitSemaphoreInfos = pWaitSemaphoreInfos_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ SubmitInfo2KHR & setWaitSemaphoreInfos(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SemaphoreSubmitInfoKHR> const &
+ waitSemaphoreInfos_ ) VULKAN_HPP_NOEXCEPT
+ {
+ waitSemaphoreInfoCount = static_cast<uint32_t>( waitSemaphoreInfos_.size() );
+ pWaitSemaphoreInfos = waitSemaphoreInfos_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ SubmitInfo2KHR & setCommandBufferInfoCount( uint32_t commandBufferInfoCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ commandBufferInfoCount = commandBufferInfoCount_;
+ return *this;
+ }
+
+ SubmitInfo2KHR & setPCommandBufferInfos(
+ const VULKAN_HPP_NAMESPACE::CommandBufferSubmitInfoKHR * pCommandBufferInfos_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pCommandBufferInfos = pCommandBufferInfos_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ SubmitInfo2KHR & setCommandBufferInfos(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::CommandBufferSubmitInfoKHR> const &
+ commandBufferInfos_ ) VULKAN_HPP_NOEXCEPT
+ {
+ commandBufferInfoCount = static_cast<uint32_t>( commandBufferInfos_.size() );
+ pCommandBufferInfos = commandBufferInfos_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ SubmitInfo2KHR & setSignalSemaphoreInfoCount( uint32_t signalSemaphoreInfoCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ signalSemaphoreInfoCount = signalSemaphoreInfoCount_;
+ return *this;
+ }
+
+ SubmitInfo2KHR & setPSignalSemaphoreInfos(
+ const VULKAN_HPP_NAMESPACE::SemaphoreSubmitInfoKHR * pSignalSemaphoreInfos_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pSignalSemaphoreInfos = pSignalSemaphoreInfos_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ SubmitInfo2KHR & setSignalSemaphoreInfos(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SemaphoreSubmitInfoKHR> const &
+ signalSemaphoreInfos_ ) VULKAN_HPP_NOEXCEPT
+ {
+ signalSemaphoreInfoCount = static_cast<uint32_t>( signalSemaphoreInfos_.size() );
+ pSignalSemaphoreInfos = signalSemaphoreInfos_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkSubmitInfo2KHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkSubmitInfo2KHR *>( this );
+ }
+
+ operator VkSubmitInfo2KHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkSubmitInfo2KHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( SubmitInfo2KHR const & ) const = default;
+#else
+ bool operator==( SubmitInfo2KHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( waitSemaphoreInfoCount == rhs.waitSemaphoreInfoCount ) &&
+ ( pWaitSemaphoreInfos == rhs.pWaitSemaphoreInfos ) &&
+ ( commandBufferInfoCount == rhs.commandBufferInfoCount ) &&
+ ( pCommandBufferInfos == rhs.pCommandBufferInfos ) &&
+ ( signalSemaphoreInfoCount == rhs.signalSemaphoreInfoCount ) &&
+ ( pSignalSemaphoreInfos == rhs.pSignalSemaphoreInfos );
+ }
+
+ bool operator!=( SubmitInfo2KHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSubmitInfo2KHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::SubmitFlagsKHR flags = {};
+ uint32_t waitSemaphoreInfoCount = {};
+ const VULKAN_HPP_NAMESPACE::SemaphoreSubmitInfoKHR * pWaitSemaphoreInfos = {};
+ uint32_t commandBufferInfoCount = {};
+ const VULKAN_HPP_NAMESPACE::CommandBufferSubmitInfoKHR * pCommandBufferInfos = {};
+ uint32_t signalSemaphoreInfoCount = {};
+ const VULKAN_HPP_NAMESPACE::SemaphoreSubmitInfoKHR * pSignalSemaphoreInfos = {};
+ };
+ static_assert( sizeof( SubmitInfo2KHR ) == sizeof( VkSubmitInfo2KHR ), "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<SubmitInfo2KHR>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eSubmitInfo2KHR>
+ {
+ using Type = SubmitInfo2KHR;
+ };
+
+ struct SubpassBeginInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSubpassBeginInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR SubpassBeginInfo( VULKAN_HPP_NAMESPACE::SubpassContents contents_ =
+ VULKAN_HPP_NAMESPACE::SubpassContents::eInline ) VULKAN_HPP_NOEXCEPT
+ : contents( contents_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR SubpassBeginInfo( SubpassBeginInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SubpassBeginInfo( VkSubpassBeginInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : SubpassBeginInfo( *reinterpret_cast<SubpassBeginInfo const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 SubpassBeginInfo & operator=( SubpassBeginInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SubpassBeginInfo & operator=( VkSubpassBeginInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SubpassBeginInfo const *>( &rhs );
+ return *this;
+ }
+
+ SubpassBeginInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ SubpassBeginInfo & setContents( VULKAN_HPP_NAMESPACE::SubpassContents contents_ ) VULKAN_HPP_NOEXCEPT
+ {
+ contents = contents_;
+ return *this;
+ }
+
+ operator VkSubpassBeginInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkSubpassBeginInfo *>( this );
+ }
+
+ operator VkSubpassBeginInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkSubpassBeginInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( SubpassBeginInfo const & ) const = default;
+#else
+ bool operator==( SubpassBeginInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( contents == rhs.contents );
+ }
+
+ bool operator!=( SubpassBeginInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSubpassBeginInfo;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::SubpassContents contents = VULKAN_HPP_NAMESPACE::SubpassContents::eInline;
+ };
+ static_assert( sizeof( SubpassBeginInfo ) == sizeof( VkSubpassBeginInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<SubpassBeginInfo>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eSubpassBeginInfo>
+ {
+ using Type = SubpassBeginInfo;
+ };
+ using SubpassBeginInfoKHR = SubpassBeginInfo;
+
+ struct SubpassDescriptionDepthStencilResolve
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eSubpassDescriptionDepthStencilResolve;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR SubpassDescriptionDepthStencilResolve(
+ VULKAN_HPP_NAMESPACE::ResolveModeFlagBits depthResolveMode_ = VULKAN_HPP_NAMESPACE::ResolveModeFlagBits::eNone,
+ VULKAN_HPP_NAMESPACE::ResolveModeFlagBits stencilResolveMode_ = VULKAN_HPP_NAMESPACE::ResolveModeFlagBits::eNone,
+ const VULKAN_HPP_NAMESPACE::AttachmentReference2 * pDepthStencilResolveAttachment_ = {} ) VULKAN_HPP_NOEXCEPT
+ : depthResolveMode( depthResolveMode_ )
+ , stencilResolveMode( stencilResolveMode_ )
+ , pDepthStencilResolveAttachment( pDepthStencilResolveAttachment_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR SubpassDescriptionDepthStencilResolve( SubpassDescriptionDepthStencilResolve const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ SubpassDescriptionDepthStencilResolve( VkSubpassDescriptionDepthStencilResolve const & rhs ) VULKAN_HPP_NOEXCEPT
+ : SubpassDescriptionDepthStencilResolve(
+ *reinterpret_cast<SubpassDescriptionDepthStencilResolve const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 SubpassDescriptionDepthStencilResolve &
+ operator=( SubpassDescriptionDepthStencilResolve const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SubpassDescriptionDepthStencilResolve &
+ operator=( VkSubpassDescriptionDepthStencilResolve const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SubpassDescriptionDepthStencilResolve const *>( &rhs );
+ return *this;
+ }
+
+ SubpassDescriptionDepthStencilResolve & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ SubpassDescriptionDepthStencilResolve &
+ setDepthResolveMode( VULKAN_HPP_NAMESPACE::ResolveModeFlagBits depthResolveMode_ ) VULKAN_HPP_NOEXCEPT
+ {
+ depthResolveMode = depthResolveMode_;
+ return *this;
+ }
+
+ SubpassDescriptionDepthStencilResolve &
+ setStencilResolveMode( VULKAN_HPP_NAMESPACE::ResolveModeFlagBits stencilResolveMode_ ) VULKAN_HPP_NOEXCEPT
+ {
+ stencilResolveMode = stencilResolveMode_;
+ return *this;
+ }
+
+ SubpassDescriptionDepthStencilResolve & setPDepthStencilResolveAttachment(
+ const VULKAN_HPP_NAMESPACE::AttachmentReference2 * pDepthStencilResolveAttachment_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pDepthStencilResolveAttachment = pDepthStencilResolveAttachment_;
+ return *this;
+ }
+
+ operator VkSubpassDescriptionDepthStencilResolve const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkSubpassDescriptionDepthStencilResolve *>( this );
+ }
+
+ operator VkSubpassDescriptionDepthStencilResolve &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkSubpassDescriptionDepthStencilResolve *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( SubpassDescriptionDepthStencilResolve const & ) const = default;
+#else
+ bool operator==( SubpassDescriptionDepthStencilResolve const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( depthResolveMode == rhs.depthResolveMode ) &&
+ ( stencilResolveMode == rhs.stencilResolveMode ) &&
+ ( pDepthStencilResolveAttachment == rhs.pDepthStencilResolveAttachment );
+ }
+
+ bool operator!=( SubpassDescriptionDepthStencilResolve const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSubpassDescriptionDepthStencilResolve;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ResolveModeFlagBits depthResolveMode = VULKAN_HPP_NAMESPACE::ResolveModeFlagBits::eNone;
+ VULKAN_HPP_NAMESPACE::ResolveModeFlagBits stencilResolveMode = VULKAN_HPP_NAMESPACE::ResolveModeFlagBits::eNone;
+ const VULKAN_HPP_NAMESPACE::AttachmentReference2 * pDepthStencilResolveAttachment = {};
+ };
+ static_assert( sizeof( SubpassDescriptionDepthStencilResolve ) == sizeof( VkSubpassDescriptionDepthStencilResolve ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<SubpassDescriptionDepthStencilResolve>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eSubpassDescriptionDepthStencilResolve>
+ {
+ using Type = SubpassDescriptionDepthStencilResolve;
+ };
+ using SubpassDescriptionDepthStencilResolveKHR = SubpassDescriptionDepthStencilResolve;
+
+ struct SubpassEndInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSubpassEndInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR SubpassEndInfo() VULKAN_HPP_NOEXCEPT {}
+
+ VULKAN_HPP_CONSTEXPR SubpassEndInfo( SubpassEndInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SubpassEndInfo( VkSubpassEndInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : SubpassEndInfo( *reinterpret_cast<SubpassEndInfo const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 SubpassEndInfo & operator=( SubpassEndInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SubpassEndInfo & operator=( VkSubpassEndInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SubpassEndInfo const *>( &rhs );
+ return *this;
+ }
+
+ SubpassEndInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ operator VkSubpassEndInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkSubpassEndInfo *>( this );
+ }
+
+ operator VkSubpassEndInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkSubpassEndInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( SubpassEndInfo const & ) const = default;
+#else
+ bool operator==( SubpassEndInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext );
+ }
+
+ bool operator!=( SubpassEndInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSubpassEndInfo;
+ const void * pNext = {};
+ };
+ static_assert( sizeof( SubpassEndInfo ) == sizeof( VkSubpassEndInfo ), "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<SubpassEndInfo>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eSubpassEndInfo>
+ {
+ using Type = SubpassEndInfo;
+ };
+ using SubpassEndInfoKHR = SubpassEndInfo;
+
+ struct SubpassShadingPipelineCreateInfoHUAWEI
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eSubpasssShadingPipelineCreateInfoHUAWEI;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR SubpassShadingPipelineCreateInfoHUAWEI( VULKAN_HPP_NAMESPACE::RenderPass renderPass_ = {},
+ uint32_t subpass_ = {} ) VULKAN_HPP_NOEXCEPT
+ : renderPass( renderPass_ )
+ , subpass( subpass_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR SubpassShadingPipelineCreateInfoHUAWEI( SubpassShadingPipelineCreateInfoHUAWEI const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ SubpassShadingPipelineCreateInfoHUAWEI( VkSubpassShadingPipelineCreateInfoHUAWEI const & rhs ) VULKAN_HPP_NOEXCEPT
+ : SubpassShadingPipelineCreateInfoHUAWEI(
+ *reinterpret_cast<SubpassShadingPipelineCreateInfoHUAWEI const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 SubpassShadingPipelineCreateInfoHUAWEI &
+ operator=( SubpassShadingPipelineCreateInfoHUAWEI const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SubpassShadingPipelineCreateInfoHUAWEI &
+ operator=( VkSubpassShadingPipelineCreateInfoHUAWEI const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SubpassShadingPipelineCreateInfoHUAWEI const *>( &rhs );
+ return *this;
+ }
+
+ operator VkSubpassShadingPipelineCreateInfoHUAWEI const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkSubpassShadingPipelineCreateInfoHUAWEI *>( this );
+ }
+
+ operator VkSubpassShadingPipelineCreateInfoHUAWEI &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkSubpassShadingPipelineCreateInfoHUAWEI *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( SubpassShadingPipelineCreateInfoHUAWEI const & ) const = default;
+#else
+ bool operator==( SubpassShadingPipelineCreateInfoHUAWEI const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( renderPass == rhs.renderPass ) &&
+ ( subpass == rhs.subpass );
+ }
+
+ bool operator!=( SubpassShadingPipelineCreateInfoHUAWEI const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSubpasssShadingPipelineCreateInfoHUAWEI;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::RenderPass renderPass = {};
+ uint32_t subpass = {};
+ };
+ static_assert( sizeof( SubpassShadingPipelineCreateInfoHUAWEI ) == sizeof( VkSubpassShadingPipelineCreateInfoHUAWEI ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<SubpassShadingPipelineCreateInfoHUAWEI>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eSubpasssShadingPipelineCreateInfoHUAWEI>
+ {
+ using Type = SubpassShadingPipelineCreateInfoHUAWEI;
+ };
+
+ struct SurfaceCapabilities2EXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSurfaceCapabilities2EXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR SurfaceCapabilities2EXT(
+ uint32_t minImageCount_ = {},
+ uint32_t maxImageCount_ = {},
+ VULKAN_HPP_NAMESPACE::Extent2D currentExtent_ = {},
+ VULKAN_HPP_NAMESPACE::Extent2D minImageExtent_ = {},
+ VULKAN_HPP_NAMESPACE::Extent2D maxImageExtent_ = {},
+ uint32_t maxImageArrayLayers_ = {},
+ VULKAN_HPP_NAMESPACE::SurfaceTransformFlagsKHR supportedTransforms_ = {},
+ VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR currentTransform_ =
+ VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR::eIdentity,
+ VULKAN_HPP_NAMESPACE::CompositeAlphaFlagsKHR supportedCompositeAlpha_ = {},
+ VULKAN_HPP_NAMESPACE::ImageUsageFlags supportedUsageFlags_ = {},
+ VULKAN_HPP_NAMESPACE::SurfaceCounterFlagsEXT supportedSurfaceCounters_ = {} ) VULKAN_HPP_NOEXCEPT
+ : minImageCount( minImageCount_ )
+ , maxImageCount( maxImageCount_ )
+ , currentExtent( currentExtent_ )
+ , minImageExtent( minImageExtent_ )
+ , maxImageExtent( maxImageExtent_ )
+ , maxImageArrayLayers( maxImageArrayLayers_ )
+ , supportedTransforms( supportedTransforms_ )
+ , currentTransform( currentTransform_ )
+ , supportedCompositeAlpha( supportedCompositeAlpha_ )
+ , supportedUsageFlags( supportedUsageFlags_ )
+ , supportedSurfaceCounters( supportedSurfaceCounters_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR SurfaceCapabilities2EXT( SurfaceCapabilities2EXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SurfaceCapabilities2EXT( VkSurfaceCapabilities2EXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : SurfaceCapabilities2EXT( *reinterpret_cast<SurfaceCapabilities2EXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 SurfaceCapabilities2EXT &
+ operator=( SurfaceCapabilities2EXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SurfaceCapabilities2EXT & operator=( VkSurfaceCapabilities2EXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SurfaceCapabilities2EXT const *>( &rhs );
+ return *this;
+ }
+
+ operator VkSurfaceCapabilities2EXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkSurfaceCapabilities2EXT *>( this );
+ }
+
+ operator VkSurfaceCapabilities2EXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkSurfaceCapabilities2EXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( SurfaceCapabilities2EXT const & ) const = default;
+#else
+ bool operator==( SurfaceCapabilities2EXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( minImageCount == rhs.minImageCount ) &&
+ ( maxImageCount == rhs.maxImageCount ) && ( currentExtent == rhs.currentExtent ) &&
+ ( minImageExtent == rhs.minImageExtent ) && ( maxImageExtent == rhs.maxImageExtent ) &&
+ ( maxImageArrayLayers == rhs.maxImageArrayLayers ) && ( supportedTransforms == rhs.supportedTransforms ) &&
+ ( currentTransform == rhs.currentTransform ) &&
+ ( supportedCompositeAlpha == rhs.supportedCompositeAlpha ) &&
+ ( supportedUsageFlags == rhs.supportedUsageFlags ) &&
+ ( supportedSurfaceCounters == rhs.supportedSurfaceCounters );
+ }
+
+ bool operator!=( SurfaceCapabilities2EXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSurfaceCapabilities2EXT;
+ void * pNext = {};
+ uint32_t minImageCount = {};
+ uint32_t maxImageCount = {};
+ VULKAN_HPP_NAMESPACE::Extent2D currentExtent = {};
+ VULKAN_HPP_NAMESPACE::Extent2D minImageExtent = {};
+ VULKAN_HPP_NAMESPACE::Extent2D maxImageExtent = {};
+ uint32_t maxImageArrayLayers = {};
+ VULKAN_HPP_NAMESPACE::SurfaceTransformFlagsKHR supportedTransforms = {};
+ VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR currentTransform =
+ VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR::eIdentity;
+ VULKAN_HPP_NAMESPACE::CompositeAlphaFlagsKHR supportedCompositeAlpha = {};
+ VULKAN_HPP_NAMESPACE::ImageUsageFlags supportedUsageFlags = {};
+ VULKAN_HPP_NAMESPACE::SurfaceCounterFlagsEXT supportedSurfaceCounters = {};
+ };
+ static_assert( sizeof( SurfaceCapabilities2EXT ) == sizeof( VkSurfaceCapabilities2EXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<SurfaceCapabilities2EXT>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eSurfaceCapabilities2EXT>
+ {
+ using Type = SurfaceCapabilities2EXT;
+ };
+
+ struct SurfaceCapabilitiesKHR
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ SurfaceCapabilitiesKHR( uint32_t minImageCount_ = {},
+ uint32_t maxImageCount_ = {},
+ VULKAN_HPP_NAMESPACE::Extent2D currentExtent_ = {},
+ VULKAN_HPP_NAMESPACE::Extent2D minImageExtent_ = {},
+ VULKAN_HPP_NAMESPACE::Extent2D maxImageExtent_ = {},
+ uint32_t maxImageArrayLayers_ = {},
+ VULKAN_HPP_NAMESPACE::SurfaceTransformFlagsKHR supportedTransforms_ = {},
+ VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR currentTransform_ =
+ VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR::eIdentity,
+ VULKAN_HPP_NAMESPACE::CompositeAlphaFlagsKHR supportedCompositeAlpha_ = {},
+ VULKAN_HPP_NAMESPACE::ImageUsageFlags supportedUsageFlags_ = {} ) VULKAN_HPP_NOEXCEPT
+ : minImageCount( minImageCount_ )
+ , maxImageCount( maxImageCount_ )
+ , currentExtent( currentExtent_ )
+ , minImageExtent( minImageExtent_ )
+ , maxImageExtent( maxImageExtent_ )
+ , maxImageArrayLayers( maxImageArrayLayers_ )
+ , supportedTransforms( supportedTransforms_ )
+ , currentTransform( currentTransform_ )
+ , supportedCompositeAlpha( supportedCompositeAlpha_ )
+ , supportedUsageFlags( supportedUsageFlags_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR SurfaceCapabilitiesKHR( SurfaceCapabilitiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SurfaceCapabilitiesKHR( VkSurfaceCapabilitiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : SurfaceCapabilitiesKHR( *reinterpret_cast<SurfaceCapabilitiesKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 SurfaceCapabilitiesKHR &
+ operator=( SurfaceCapabilitiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SurfaceCapabilitiesKHR & operator=( VkSurfaceCapabilitiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SurfaceCapabilitiesKHR const *>( &rhs );
+ return *this;
+ }
+
+ operator VkSurfaceCapabilitiesKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkSurfaceCapabilitiesKHR *>( this );
+ }
+
+ operator VkSurfaceCapabilitiesKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkSurfaceCapabilitiesKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( SurfaceCapabilitiesKHR const & ) const = default;
+#else
+ bool operator==( SurfaceCapabilitiesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( minImageCount == rhs.minImageCount ) && ( maxImageCount == rhs.maxImageCount ) &&
+ ( currentExtent == rhs.currentExtent ) && ( minImageExtent == rhs.minImageExtent ) &&
+ ( maxImageExtent == rhs.maxImageExtent ) && ( maxImageArrayLayers == rhs.maxImageArrayLayers ) &&
+ ( supportedTransforms == rhs.supportedTransforms ) && ( currentTransform == rhs.currentTransform ) &&
+ ( supportedCompositeAlpha == rhs.supportedCompositeAlpha ) &&
+ ( supportedUsageFlags == rhs.supportedUsageFlags );
+ }
+
+ bool operator!=( SurfaceCapabilitiesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ uint32_t minImageCount = {};
+ uint32_t maxImageCount = {};
+ VULKAN_HPP_NAMESPACE::Extent2D currentExtent = {};
+ VULKAN_HPP_NAMESPACE::Extent2D minImageExtent = {};
+ VULKAN_HPP_NAMESPACE::Extent2D maxImageExtent = {};
+ uint32_t maxImageArrayLayers = {};
+ VULKAN_HPP_NAMESPACE::SurfaceTransformFlagsKHR supportedTransforms = {};
+ VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR currentTransform =
+ VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR::eIdentity;
+ VULKAN_HPP_NAMESPACE::CompositeAlphaFlagsKHR supportedCompositeAlpha = {};
+ VULKAN_HPP_NAMESPACE::ImageUsageFlags supportedUsageFlags = {};
+ };
+ static_assert( sizeof( SurfaceCapabilitiesKHR ) == sizeof( VkSurfaceCapabilitiesKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<SurfaceCapabilitiesKHR>::value, "struct wrapper is not a standard layout!" );
+
+ struct SurfaceCapabilities2KHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSurfaceCapabilities2KHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR SurfaceCapabilities2KHR(
+ VULKAN_HPP_NAMESPACE::SurfaceCapabilitiesKHR surfaceCapabilities_ = {} ) VULKAN_HPP_NOEXCEPT
+ : surfaceCapabilities( surfaceCapabilities_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR SurfaceCapabilities2KHR( SurfaceCapabilities2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SurfaceCapabilities2KHR( VkSurfaceCapabilities2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : SurfaceCapabilities2KHR( *reinterpret_cast<SurfaceCapabilities2KHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 SurfaceCapabilities2KHR &
+ operator=( SurfaceCapabilities2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SurfaceCapabilities2KHR & operator=( VkSurfaceCapabilities2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SurfaceCapabilities2KHR const *>( &rhs );
+ return *this;
+ }
+
+ operator VkSurfaceCapabilities2KHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkSurfaceCapabilities2KHR *>( this );
+ }
+
+ operator VkSurfaceCapabilities2KHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkSurfaceCapabilities2KHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( SurfaceCapabilities2KHR const & ) const = default;
+#else
+ bool operator==( SurfaceCapabilities2KHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( surfaceCapabilities == rhs.surfaceCapabilities );
+ }
+
+ bool operator!=( SurfaceCapabilities2KHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSurfaceCapabilities2KHR;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::SurfaceCapabilitiesKHR surfaceCapabilities = {};
+ };
+ static_assert( sizeof( SurfaceCapabilities2KHR ) == sizeof( VkSurfaceCapabilities2KHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<SurfaceCapabilities2KHR>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eSurfaceCapabilities2KHR>
+ {
+ using Type = SurfaceCapabilities2KHR;
+ };
+
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ struct SurfaceCapabilitiesFullScreenExclusiveEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eSurfaceCapabilitiesFullScreenExclusiveEXT;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR SurfaceCapabilitiesFullScreenExclusiveEXT(
+ VULKAN_HPP_NAMESPACE::Bool32 fullScreenExclusiveSupported_ = {} ) VULKAN_HPP_NOEXCEPT
+ : fullScreenExclusiveSupported( fullScreenExclusiveSupported_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR SurfaceCapabilitiesFullScreenExclusiveEXT(
+ SurfaceCapabilitiesFullScreenExclusiveEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SurfaceCapabilitiesFullScreenExclusiveEXT( VkSurfaceCapabilitiesFullScreenExclusiveEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : SurfaceCapabilitiesFullScreenExclusiveEXT(
+ *reinterpret_cast<SurfaceCapabilitiesFullScreenExclusiveEXT const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 SurfaceCapabilitiesFullScreenExclusiveEXT &
+ operator=( SurfaceCapabilitiesFullScreenExclusiveEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SurfaceCapabilitiesFullScreenExclusiveEXT &
+ operator=( VkSurfaceCapabilitiesFullScreenExclusiveEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SurfaceCapabilitiesFullScreenExclusiveEXT const *>( &rhs );
+ return *this;
+ }
+
+ SurfaceCapabilitiesFullScreenExclusiveEXT & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ SurfaceCapabilitiesFullScreenExclusiveEXT &
+ setFullScreenExclusiveSupported( VULKAN_HPP_NAMESPACE::Bool32 fullScreenExclusiveSupported_ ) VULKAN_HPP_NOEXCEPT
+ {
+ fullScreenExclusiveSupported = fullScreenExclusiveSupported_;
+ return *this;
+ }
+
+ operator VkSurfaceCapabilitiesFullScreenExclusiveEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkSurfaceCapabilitiesFullScreenExclusiveEXT *>( this );
+ }
+
+ operator VkSurfaceCapabilitiesFullScreenExclusiveEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkSurfaceCapabilitiesFullScreenExclusiveEXT *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( SurfaceCapabilitiesFullScreenExclusiveEXT const & ) const = default;
+# else
+ bool operator==( SurfaceCapabilitiesFullScreenExclusiveEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( fullScreenExclusiveSupported == rhs.fullScreenExclusiveSupported );
+ }
+
+ bool operator!=( SurfaceCapabilitiesFullScreenExclusiveEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSurfaceCapabilitiesFullScreenExclusiveEXT;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 fullScreenExclusiveSupported = {};
+ };
+ static_assert( sizeof( SurfaceCapabilitiesFullScreenExclusiveEXT ) ==
+ sizeof( VkSurfaceCapabilitiesFullScreenExclusiveEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<SurfaceCapabilitiesFullScreenExclusiveEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eSurfaceCapabilitiesFullScreenExclusiveEXT>
+ {
+ using Type = SurfaceCapabilitiesFullScreenExclusiveEXT;
+ };
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+
+ struct SurfaceFormatKHR
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ SurfaceFormatKHR( VULKAN_HPP_NAMESPACE::Format format_ = VULKAN_HPP_NAMESPACE::Format::eUndefined,
+ VULKAN_HPP_NAMESPACE::ColorSpaceKHR colorSpace_ =
+ VULKAN_HPP_NAMESPACE::ColorSpaceKHR::eSrgbNonlinear ) VULKAN_HPP_NOEXCEPT
+ : format( format_ )
+ , colorSpace( colorSpace_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR SurfaceFormatKHR( SurfaceFormatKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SurfaceFormatKHR( VkSurfaceFormatKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : SurfaceFormatKHR( *reinterpret_cast<SurfaceFormatKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 SurfaceFormatKHR & operator=( SurfaceFormatKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SurfaceFormatKHR & operator=( VkSurfaceFormatKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SurfaceFormatKHR const *>( &rhs );
+ return *this;
+ }
+
+ operator VkSurfaceFormatKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkSurfaceFormatKHR *>( this );
+ }
+
+ operator VkSurfaceFormatKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkSurfaceFormatKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( SurfaceFormatKHR const & ) const = default;
+#else
+ bool operator==( SurfaceFormatKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( format == rhs.format ) && ( colorSpace == rhs.colorSpace );
+ }
+
+ bool operator!=( SurfaceFormatKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::Format format = VULKAN_HPP_NAMESPACE::Format::eUndefined;
+ VULKAN_HPP_NAMESPACE::ColorSpaceKHR colorSpace = VULKAN_HPP_NAMESPACE::ColorSpaceKHR::eSrgbNonlinear;
+ };
+ static_assert( sizeof( SurfaceFormatKHR ) == sizeof( VkSurfaceFormatKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<SurfaceFormatKHR>::value, "struct wrapper is not a standard layout!" );
+
+ struct SurfaceFormat2KHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSurfaceFormat2KHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ SurfaceFormat2KHR( VULKAN_HPP_NAMESPACE::SurfaceFormatKHR surfaceFormat_ = {} ) VULKAN_HPP_NOEXCEPT
+ : surfaceFormat( surfaceFormat_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR SurfaceFormat2KHR( SurfaceFormat2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SurfaceFormat2KHR( VkSurfaceFormat2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : SurfaceFormat2KHR( *reinterpret_cast<SurfaceFormat2KHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 SurfaceFormat2KHR &
+ operator=( SurfaceFormat2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SurfaceFormat2KHR & operator=( VkSurfaceFormat2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SurfaceFormat2KHR const *>( &rhs );
+ return *this;
+ }
+
+ operator VkSurfaceFormat2KHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkSurfaceFormat2KHR *>( this );
+ }
+
+ operator VkSurfaceFormat2KHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkSurfaceFormat2KHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( SurfaceFormat2KHR const & ) const = default;
+#else
+ bool operator==( SurfaceFormat2KHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( surfaceFormat == rhs.surfaceFormat );
+ }
+
+ bool operator!=( SurfaceFormat2KHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSurfaceFormat2KHR;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::SurfaceFormatKHR surfaceFormat = {};
+ };
+ static_assert( sizeof( SurfaceFormat2KHR ) == sizeof( VkSurfaceFormat2KHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<SurfaceFormat2KHR>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eSurfaceFormat2KHR>
+ {
+ using Type = SurfaceFormat2KHR;
+ };
+
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ struct SurfaceFullScreenExclusiveInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eSurfaceFullScreenExclusiveInfoEXT;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ SurfaceFullScreenExclusiveInfoEXT( VULKAN_HPP_NAMESPACE::FullScreenExclusiveEXT fullScreenExclusive_ =
+ VULKAN_HPP_NAMESPACE::FullScreenExclusiveEXT::eDefault ) VULKAN_HPP_NOEXCEPT
+ : fullScreenExclusive( fullScreenExclusive_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ SurfaceFullScreenExclusiveInfoEXT( SurfaceFullScreenExclusiveInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SurfaceFullScreenExclusiveInfoEXT( VkSurfaceFullScreenExclusiveInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : SurfaceFullScreenExclusiveInfoEXT( *reinterpret_cast<SurfaceFullScreenExclusiveInfoEXT const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 SurfaceFullScreenExclusiveInfoEXT &
+ operator=( SurfaceFullScreenExclusiveInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SurfaceFullScreenExclusiveInfoEXT & operator=( VkSurfaceFullScreenExclusiveInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SurfaceFullScreenExclusiveInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ SurfaceFullScreenExclusiveInfoEXT & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ SurfaceFullScreenExclusiveInfoEXT &
+ setFullScreenExclusive( VULKAN_HPP_NAMESPACE::FullScreenExclusiveEXT fullScreenExclusive_ ) VULKAN_HPP_NOEXCEPT
+ {
+ fullScreenExclusive = fullScreenExclusive_;
+ return *this;
+ }
+
+ operator VkSurfaceFullScreenExclusiveInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkSurfaceFullScreenExclusiveInfoEXT *>( this );
+ }
+
+ operator VkSurfaceFullScreenExclusiveInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkSurfaceFullScreenExclusiveInfoEXT *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( SurfaceFullScreenExclusiveInfoEXT const & ) const = default;
+# else
+ bool operator==( SurfaceFullScreenExclusiveInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( fullScreenExclusive == rhs.fullScreenExclusive );
+ }
+
+ bool operator!=( SurfaceFullScreenExclusiveInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSurfaceFullScreenExclusiveInfoEXT;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::FullScreenExclusiveEXT fullScreenExclusive =
+ VULKAN_HPP_NAMESPACE::FullScreenExclusiveEXT::eDefault;
+ };
+ static_assert( sizeof( SurfaceFullScreenExclusiveInfoEXT ) == sizeof( VkSurfaceFullScreenExclusiveInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<SurfaceFullScreenExclusiveInfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eSurfaceFullScreenExclusiveInfoEXT>
+ {
+ using Type = SurfaceFullScreenExclusiveInfoEXT;
+ };
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ struct SurfaceFullScreenExclusiveWin32InfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eSurfaceFullScreenExclusiveWin32InfoEXT;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR SurfaceFullScreenExclusiveWin32InfoEXT( HMONITOR hmonitor_ = {} ) VULKAN_HPP_NOEXCEPT
+ : hmonitor( hmonitor_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR SurfaceFullScreenExclusiveWin32InfoEXT( SurfaceFullScreenExclusiveWin32InfoEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ SurfaceFullScreenExclusiveWin32InfoEXT( VkSurfaceFullScreenExclusiveWin32InfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : SurfaceFullScreenExclusiveWin32InfoEXT(
+ *reinterpret_cast<SurfaceFullScreenExclusiveWin32InfoEXT const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 SurfaceFullScreenExclusiveWin32InfoEXT &
+ operator=( SurfaceFullScreenExclusiveWin32InfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SurfaceFullScreenExclusiveWin32InfoEXT &
+ operator=( VkSurfaceFullScreenExclusiveWin32InfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SurfaceFullScreenExclusiveWin32InfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ SurfaceFullScreenExclusiveWin32InfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ SurfaceFullScreenExclusiveWin32InfoEXT & setHmonitor( HMONITOR hmonitor_ ) VULKAN_HPP_NOEXCEPT
+ {
+ hmonitor = hmonitor_;
+ return *this;
+ }
+
+ operator VkSurfaceFullScreenExclusiveWin32InfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkSurfaceFullScreenExclusiveWin32InfoEXT *>( this );
+ }
+
+ operator VkSurfaceFullScreenExclusiveWin32InfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkSurfaceFullScreenExclusiveWin32InfoEXT *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( SurfaceFullScreenExclusiveWin32InfoEXT const & ) const = default;
+# else
+ bool operator==( SurfaceFullScreenExclusiveWin32InfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( hmonitor == rhs.hmonitor );
+ }
+
+ bool operator!=( SurfaceFullScreenExclusiveWin32InfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSurfaceFullScreenExclusiveWin32InfoEXT;
+ const void * pNext = {};
+ HMONITOR hmonitor = {};
+ };
+ static_assert( sizeof( SurfaceFullScreenExclusiveWin32InfoEXT ) == sizeof( VkSurfaceFullScreenExclusiveWin32InfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<SurfaceFullScreenExclusiveWin32InfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eSurfaceFullScreenExclusiveWin32InfoEXT>
+ {
+ using Type = SurfaceFullScreenExclusiveWin32InfoEXT;
+ };
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+
+ struct SurfaceProtectedCapabilitiesKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSurfaceProtectedCapabilitiesKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ SurfaceProtectedCapabilitiesKHR( VULKAN_HPP_NAMESPACE::Bool32 supportsProtected_ = {} ) VULKAN_HPP_NOEXCEPT
+ : supportsProtected( supportsProtected_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ SurfaceProtectedCapabilitiesKHR( SurfaceProtectedCapabilitiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SurfaceProtectedCapabilitiesKHR( VkSurfaceProtectedCapabilitiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : SurfaceProtectedCapabilitiesKHR( *reinterpret_cast<SurfaceProtectedCapabilitiesKHR const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 SurfaceProtectedCapabilitiesKHR &
+ operator=( SurfaceProtectedCapabilitiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SurfaceProtectedCapabilitiesKHR & operator=( VkSurfaceProtectedCapabilitiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SurfaceProtectedCapabilitiesKHR const *>( &rhs );
+ return *this;
+ }
+
+ SurfaceProtectedCapabilitiesKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ SurfaceProtectedCapabilitiesKHR &
+ setSupportsProtected( VULKAN_HPP_NAMESPACE::Bool32 supportsProtected_ ) VULKAN_HPP_NOEXCEPT
+ {
+ supportsProtected = supportsProtected_;
+ return *this;
+ }
+
+ operator VkSurfaceProtectedCapabilitiesKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkSurfaceProtectedCapabilitiesKHR *>( this );
+ }
+
+ operator VkSurfaceProtectedCapabilitiesKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkSurfaceProtectedCapabilitiesKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( SurfaceProtectedCapabilitiesKHR const & ) const = default;
+#else
+ bool operator==( SurfaceProtectedCapabilitiesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( supportsProtected == rhs.supportsProtected );
+ }
+
+ bool operator!=( SurfaceProtectedCapabilitiesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSurfaceProtectedCapabilitiesKHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 supportsProtected = {};
+ };
+ static_assert( sizeof( SurfaceProtectedCapabilitiesKHR ) == sizeof( VkSurfaceProtectedCapabilitiesKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<SurfaceProtectedCapabilitiesKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eSurfaceProtectedCapabilitiesKHR>
+ {
+ using Type = SurfaceProtectedCapabilitiesKHR;
+ };
+
+ struct SwapchainCounterCreateInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSwapchainCounterCreateInfoEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR SwapchainCounterCreateInfoEXT(
+ VULKAN_HPP_NAMESPACE::SurfaceCounterFlagsEXT surfaceCounters_ = {} ) VULKAN_HPP_NOEXCEPT
+ : surfaceCounters( surfaceCounters_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ SwapchainCounterCreateInfoEXT( SwapchainCounterCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SwapchainCounterCreateInfoEXT( VkSwapchainCounterCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : SwapchainCounterCreateInfoEXT( *reinterpret_cast<SwapchainCounterCreateInfoEXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 SwapchainCounterCreateInfoEXT &
+ operator=( SwapchainCounterCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SwapchainCounterCreateInfoEXT & operator=( VkSwapchainCounterCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SwapchainCounterCreateInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ SwapchainCounterCreateInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ SwapchainCounterCreateInfoEXT &
+ setSurfaceCounters( VULKAN_HPP_NAMESPACE::SurfaceCounterFlagsEXT surfaceCounters_ ) VULKAN_HPP_NOEXCEPT
+ {
+ surfaceCounters = surfaceCounters_;
+ return *this;
+ }
+
+ operator VkSwapchainCounterCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkSwapchainCounterCreateInfoEXT *>( this );
+ }
+
+ operator VkSwapchainCounterCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkSwapchainCounterCreateInfoEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( SwapchainCounterCreateInfoEXT const & ) const = default;
+#else
+ bool operator==( SwapchainCounterCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( surfaceCounters == rhs.surfaceCounters );
+ }
+
+ bool operator!=( SwapchainCounterCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSwapchainCounterCreateInfoEXT;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::SurfaceCounterFlagsEXT surfaceCounters = {};
+ };
+ static_assert( sizeof( SwapchainCounterCreateInfoEXT ) == sizeof( VkSwapchainCounterCreateInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<SwapchainCounterCreateInfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eSwapchainCounterCreateInfoEXT>
+ {
+ using Type = SwapchainCounterCreateInfoEXT;
+ };
+
+ struct SwapchainCreateInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSwapchainCreateInfoKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR SwapchainCreateInfoKHR(
+ VULKAN_HPP_NAMESPACE::SwapchainCreateFlagsKHR flags_ = {},
+ VULKAN_HPP_NAMESPACE::SurfaceKHR surface_ = {},
+ uint32_t minImageCount_ = {},
+ VULKAN_HPP_NAMESPACE::Format imageFormat_ = VULKAN_HPP_NAMESPACE::Format::eUndefined,
+ VULKAN_HPP_NAMESPACE::ColorSpaceKHR imageColorSpace_ = VULKAN_HPP_NAMESPACE::ColorSpaceKHR::eSrgbNonlinear,
+ VULKAN_HPP_NAMESPACE::Extent2D imageExtent_ = {},
+ uint32_t imageArrayLayers_ = {},
+ VULKAN_HPP_NAMESPACE::ImageUsageFlags imageUsage_ = {},
+ VULKAN_HPP_NAMESPACE::SharingMode imageSharingMode_ = VULKAN_HPP_NAMESPACE::SharingMode::eExclusive,
+ uint32_t queueFamilyIndexCount_ = {},
+ const uint32_t * pQueueFamilyIndices_ = {},
+ VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR preTransform_ =
+ VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR::eIdentity,
+ VULKAN_HPP_NAMESPACE::CompositeAlphaFlagBitsKHR compositeAlpha_ =
+ VULKAN_HPP_NAMESPACE::CompositeAlphaFlagBitsKHR::eOpaque,
+ VULKAN_HPP_NAMESPACE::PresentModeKHR presentMode_ = VULKAN_HPP_NAMESPACE::PresentModeKHR::eImmediate,
+ VULKAN_HPP_NAMESPACE::Bool32 clipped_ = {},
+ VULKAN_HPP_NAMESPACE::SwapchainKHR oldSwapchain_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , surface( surface_ )
+ , minImageCount( minImageCount_ )
+ , imageFormat( imageFormat_ )
+ , imageColorSpace( imageColorSpace_ )
+ , imageExtent( imageExtent_ )
+ , imageArrayLayers( imageArrayLayers_ )
+ , imageUsage( imageUsage_ )
+ , imageSharingMode( imageSharingMode_ )
+ , queueFamilyIndexCount( queueFamilyIndexCount_ )
+ , pQueueFamilyIndices( pQueueFamilyIndices_ )
+ , preTransform( preTransform_ )
+ , compositeAlpha( compositeAlpha_ )
+ , presentMode( presentMode_ )
+ , clipped( clipped_ )
+ , oldSwapchain( oldSwapchain_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR SwapchainCreateInfoKHR( SwapchainCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SwapchainCreateInfoKHR( VkSwapchainCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : SwapchainCreateInfoKHR( *reinterpret_cast<SwapchainCreateInfoKHR const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ SwapchainCreateInfoKHR(
+ VULKAN_HPP_NAMESPACE::SwapchainCreateFlagsKHR flags_,
+ VULKAN_HPP_NAMESPACE::SurfaceKHR surface_,
+ uint32_t minImageCount_,
+ VULKAN_HPP_NAMESPACE::Format imageFormat_,
+ VULKAN_HPP_NAMESPACE::ColorSpaceKHR imageColorSpace_,
+ VULKAN_HPP_NAMESPACE::Extent2D imageExtent_,
+ uint32_t imageArrayLayers_,
+ VULKAN_HPP_NAMESPACE::ImageUsageFlags imageUsage_,
+ VULKAN_HPP_NAMESPACE::SharingMode imageSharingMode_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & queueFamilyIndices_,
+ VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR preTransform_ =
+ VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR::eIdentity,
+ VULKAN_HPP_NAMESPACE::CompositeAlphaFlagBitsKHR compositeAlpha_ =
+ VULKAN_HPP_NAMESPACE::CompositeAlphaFlagBitsKHR::eOpaque,
+ VULKAN_HPP_NAMESPACE::PresentModeKHR presentMode_ = VULKAN_HPP_NAMESPACE::PresentModeKHR::eImmediate,
+ VULKAN_HPP_NAMESPACE::Bool32 clipped_ = {},
+ VULKAN_HPP_NAMESPACE::SwapchainKHR oldSwapchain_ = {} )
+ : flags( flags_ )
+ , surface( surface_ )
+ , minImageCount( minImageCount_ )
+ , imageFormat( imageFormat_ )
+ , imageColorSpace( imageColorSpace_ )
+ , imageExtent( imageExtent_ )
+ , imageArrayLayers( imageArrayLayers_ )
+ , imageUsage( imageUsage_ )
+ , imageSharingMode( imageSharingMode_ )
+ , queueFamilyIndexCount( static_cast<uint32_t>( queueFamilyIndices_.size() ) )
+ , pQueueFamilyIndices( queueFamilyIndices_.data() )
+ , preTransform( preTransform_ )
+ , compositeAlpha( compositeAlpha_ )
+ , presentMode( presentMode_ )
+ , clipped( clipped_ )
+ , oldSwapchain( oldSwapchain_ )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 SwapchainCreateInfoKHR &
+ operator=( SwapchainCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SwapchainCreateInfoKHR & operator=( VkSwapchainCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SwapchainCreateInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ SwapchainCreateInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ SwapchainCreateInfoKHR & setFlags( VULKAN_HPP_NAMESPACE::SwapchainCreateFlagsKHR flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ SwapchainCreateInfoKHR & setSurface( VULKAN_HPP_NAMESPACE::SurfaceKHR surface_ ) VULKAN_HPP_NOEXCEPT
+ {
+ surface = surface_;
+ return *this;
+ }
+
+ SwapchainCreateInfoKHR & setMinImageCount( uint32_t minImageCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ minImageCount = minImageCount_;
+ return *this;
+ }
+
+ SwapchainCreateInfoKHR & setImageFormat( VULKAN_HPP_NAMESPACE::Format imageFormat_ ) VULKAN_HPP_NOEXCEPT
+ {
+ imageFormat = imageFormat_;
+ return *this;
+ }
+
+ SwapchainCreateInfoKHR &
+ setImageColorSpace( VULKAN_HPP_NAMESPACE::ColorSpaceKHR imageColorSpace_ ) VULKAN_HPP_NOEXCEPT
+ {
+ imageColorSpace = imageColorSpace_;
+ return *this;
+ }
+
+ SwapchainCreateInfoKHR & setImageExtent( VULKAN_HPP_NAMESPACE::Extent2D const & imageExtent_ ) VULKAN_HPP_NOEXCEPT
+ {
+ imageExtent = imageExtent_;
+ return *this;
+ }
+
+ SwapchainCreateInfoKHR & setImageArrayLayers( uint32_t imageArrayLayers_ ) VULKAN_HPP_NOEXCEPT
+ {
+ imageArrayLayers = imageArrayLayers_;
+ return *this;
+ }
+
+ SwapchainCreateInfoKHR & setImageUsage( VULKAN_HPP_NAMESPACE::ImageUsageFlags imageUsage_ ) VULKAN_HPP_NOEXCEPT
+ {
+ imageUsage = imageUsage_;
+ return *this;
+ }
+
+ SwapchainCreateInfoKHR &
+ setImageSharingMode( VULKAN_HPP_NAMESPACE::SharingMode imageSharingMode_ ) VULKAN_HPP_NOEXCEPT
+ {
+ imageSharingMode = imageSharingMode_;
+ return *this;
+ }
+
+ SwapchainCreateInfoKHR & setQueueFamilyIndexCount( uint32_t queueFamilyIndexCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ queueFamilyIndexCount = queueFamilyIndexCount_;
+ return *this;
+ }
+
+ SwapchainCreateInfoKHR & setPQueueFamilyIndices( const uint32_t * pQueueFamilyIndices_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pQueueFamilyIndices = pQueueFamilyIndices_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ SwapchainCreateInfoKHR & setQueueFamilyIndices(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & queueFamilyIndices_ ) VULKAN_HPP_NOEXCEPT
+ {
+ queueFamilyIndexCount = static_cast<uint32_t>( queueFamilyIndices_.size() );
+ pQueueFamilyIndices = queueFamilyIndices_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ SwapchainCreateInfoKHR &
+ setPreTransform( VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR preTransform_ ) VULKAN_HPP_NOEXCEPT
+ {
+ preTransform = preTransform_;
+ return *this;
+ }
+
+ SwapchainCreateInfoKHR &
+ setCompositeAlpha( VULKAN_HPP_NAMESPACE::CompositeAlphaFlagBitsKHR compositeAlpha_ ) VULKAN_HPP_NOEXCEPT
+ {
+ compositeAlpha = compositeAlpha_;
+ return *this;
+ }
+
+ SwapchainCreateInfoKHR & setPresentMode( VULKAN_HPP_NAMESPACE::PresentModeKHR presentMode_ ) VULKAN_HPP_NOEXCEPT
+ {
+ presentMode = presentMode_;
+ return *this;
+ }
+
+ SwapchainCreateInfoKHR & setClipped( VULKAN_HPP_NAMESPACE::Bool32 clipped_ ) VULKAN_HPP_NOEXCEPT
+ {
+ clipped = clipped_;
+ return *this;
+ }
+
+ SwapchainCreateInfoKHR & setOldSwapchain( VULKAN_HPP_NAMESPACE::SwapchainKHR oldSwapchain_ ) VULKAN_HPP_NOEXCEPT
+ {
+ oldSwapchain = oldSwapchain_;
+ return *this;
+ }
+
+ operator VkSwapchainCreateInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkSwapchainCreateInfoKHR *>( this );
+ }
+
+ operator VkSwapchainCreateInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkSwapchainCreateInfoKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( SwapchainCreateInfoKHR const & ) const = default;
+#else
+ bool operator==( SwapchainCreateInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) && ( surface == rhs.surface ) &&
+ ( minImageCount == rhs.minImageCount ) && ( imageFormat == rhs.imageFormat ) &&
+ ( imageColorSpace == rhs.imageColorSpace ) && ( imageExtent == rhs.imageExtent ) &&
+ ( imageArrayLayers == rhs.imageArrayLayers ) && ( imageUsage == rhs.imageUsage ) &&
+ ( imageSharingMode == rhs.imageSharingMode ) && ( queueFamilyIndexCount == rhs.queueFamilyIndexCount ) &&
+ ( pQueueFamilyIndices == rhs.pQueueFamilyIndices ) && ( preTransform == rhs.preTransform ) &&
+ ( compositeAlpha == rhs.compositeAlpha ) && ( presentMode == rhs.presentMode ) &&
+ ( clipped == rhs.clipped ) && ( oldSwapchain == rhs.oldSwapchain );
+ }
+
+ bool operator!=( SwapchainCreateInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSwapchainCreateInfoKHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::SwapchainCreateFlagsKHR flags = {};
+ VULKAN_HPP_NAMESPACE::SurfaceKHR surface = {};
+ uint32_t minImageCount = {};
+ VULKAN_HPP_NAMESPACE::Format imageFormat = VULKAN_HPP_NAMESPACE::Format::eUndefined;
+ VULKAN_HPP_NAMESPACE::ColorSpaceKHR imageColorSpace = VULKAN_HPP_NAMESPACE::ColorSpaceKHR::eSrgbNonlinear;
+ VULKAN_HPP_NAMESPACE::Extent2D imageExtent = {};
+ uint32_t imageArrayLayers = {};
+ VULKAN_HPP_NAMESPACE::ImageUsageFlags imageUsage = {};
+ VULKAN_HPP_NAMESPACE::SharingMode imageSharingMode = VULKAN_HPP_NAMESPACE::SharingMode::eExclusive;
+ uint32_t queueFamilyIndexCount = {};
+ const uint32_t * pQueueFamilyIndices = {};
+ VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR preTransform =
+ VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR::eIdentity;
+ VULKAN_HPP_NAMESPACE::CompositeAlphaFlagBitsKHR compositeAlpha =
+ VULKAN_HPP_NAMESPACE::CompositeAlphaFlagBitsKHR::eOpaque;
+ VULKAN_HPP_NAMESPACE::PresentModeKHR presentMode = VULKAN_HPP_NAMESPACE::PresentModeKHR::eImmediate;
+ VULKAN_HPP_NAMESPACE::Bool32 clipped = {};
+ VULKAN_HPP_NAMESPACE::SwapchainKHR oldSwapchain = {};
+ };
+ static_assert( sizeof( SwapchainCreateInfoKHR ) == sizeof( VkSwapchainCreateInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<SwapchainCreateInfoKHR>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eSwapchainCreateInfoKHR>
+ {
+ using Type = SwapchainCreateInfoKHR;
+ };
+
+ struct SwapchainDisplayNativeHdrCreateInfoAMD
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eSwapchainDisplayNativeHdrCreateInfoAMD;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR SwapchainDisplayNativeHdrCreateInfoAMD( VULKAN_HPP_NAMESPACE::Bool32 localDimmingEnable_ = {} )
+ VULKAN_HPP_NOEXCEPT : localDimmingEnable( localDimmingEnable_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR SwapchainDisplayNativeHdrCreateInfoAMD( SwapchainDisplayNativeHdrCreateInfoAMD const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ SwapchainDisplayNativeHdrCreateInfoAMD( VkSwapchainDisplayNativeHdrCreateInfoAMD const & rhs ) VULKAN_HPP_NOEXCEPT
+ : SwapchainDisplayNativeHdrCreateInfoAMD(
+ *reinterpret_cast<SwapchainDisplayNativeHdrCreateInfoAMD const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 SwapchainDisplayNativeHdrCreateInfoAMD &
+ operator=( SwapchainDisplayNativeHdrCreateInfoAMD const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ SwapchainDisplayNativeHdrCreateInfoAMD &
+ operator=( VkSwapchainDisplayNativeHdrCreateInfoAMD const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SwapchainDisplayNativeHdrCreateInfoAMD const *>( &rhs );
+ return *this;
+ }
+
+ SwapchainDisplayNativeHdrCreateInfoAMD & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ SwapchainDisplayNativeHdrCreateInfoAMD &
+ setLocalDimmingEnable( VULKAN_HPP_NAMESPACE::Bool32 localDimmingEnable_ ) VULKAN_HPP_NOEXCEPT
+ {
+ localDimmingEnable = localDimmingEnable_;
+ return *this;
+ }
+
+ operator VkSwapchainDisplayNativeHdrCreateInfoAMD const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkSwapchainDisplayNativeHdrCreateInfoAMD *>( this );
+ }
+
+ operator VkSwapchainDisplayNativeHdrCreateInfoAMD &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkSwapchainDisplayNativeHdrCreateInfoAMD *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( SwapchainDisplayNativeHdrCreateInfoAMD const & ) const = default;
+#else
+ bool operator==( SwapchainDisplayNativeHdrCreateInfoAMD const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( localDimmingEnable == rhs.localDimmingEnable );
+ }
+
+ bool operator!=( SwapchainDisplayNativeHdrCreateInfoAMD const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSwapchainDisplayNativeHdrCreateInfoAMD;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 localDimmingEnable = {};
+ };
+ static_assert( sizeof( SwapchainDisplayNativeHdrCreateInfoAMD ) == sizeof( VkSwapchainDisplayNativeHdrCreateInfoAMD ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<SwapchainDisplayNativeHdrCreateInfoAMD>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eSwapchainDisplayNativeHdrCreateInfoAMD>
+ {
+ using Type = SwapchainDisplayNativeHdrCreateInfoAMD;
+ };
+
+ struct TextureLODGatherFormatPropertiesAMD
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eTextureLodGatherFormatPropertiesAMD;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR TextureLODGatherFormatPropertiesAMD(
+ VULKAN_HPP_NAMESPACE::Bool32 supportsTextureGatherLODBiasAMD_ = {} ) VULKAN_HPP_NOEXCEPT
+ : supportsTextureGatherLODBiasAMD( supportsTextureGatherLODBiasAMD_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR TextureLODGatherFormatPropertiesAMD( TextureLODGatherFormatPropertiesAMD const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ TextureLODGatherFormatPropertiesAMD( VkTextureLODGatherFormatPropertiesAMD const & rhs ) VULKAN_HPP_NOEXCEPT
+ : TextureLODGatherFormatPropertiesAMD( *reinterpret_cast<TextureLODGatherFormatPropertiesAMD const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 TextureLODGatherFormatPropertiesAMD &
+ operator=( TextureLODGatherFormatPropertiesAMD const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ TextureLODGatherFormatPropertiesAMD &
+ operator=( VkTextureLODGatherFormatPropertiesAMD const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::TextureLODGatherFormatPropertiesAMD const *>( &rhs );
+ return *this;
+ }
+
+ operator VkTextureLODGatherFormatPropertiesAMD const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkTextureLODGatherFormatPropertiesAMD *>( this );
+ }
+
+ operator VkTextureLODGatherFormatPropertiesAMD &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkTextureLODGatherFormatPropertiesAMD *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( TextureLODGatherFormatPropertiesAMD const & ) const = default;
+#else
+ bool operator==( TextureLODGatherFormatPropertiesAMD const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( supportsTextureGatherLODBiasAMD == rhs.supportsTextureGatherLODBiasAMD );
+ }
+
+ bool operator!=( TextureLODGatherFormatPropertiesAMD const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eTextureLodGatherFormatPropertiesAMD;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Bool32 supportsTextureGatherLODBiasAMD = {};
+ };
+ static_assert( sizeof( TextureLODGatherFormatPropertiesAMD ) == sizeof( VkTextureLODGatherFormatPropertiesAMD ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<TextureLODGatherFormatPropertiesAMD>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eTextureLodGatherFormatPropertiesAMD>
+ {
+ using Type = TextureLODGatherFormatPropertiesAMD;
+ };
+
+ struct TimelineSemaphoreSubmitInfo
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eTimelineSemaphoreSubmitInfo;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ TimelineSemaphoreSubmitInfo( uint32_t waitSemaphoreValueCount_ = {},
+ const uint64_t * pWaitSemaphoreValues_ = {},
+ uint32_t signalSemaphoreValueCount_ = {},
+ const uint64_t * pSignalSemaphoreValues_ = {} ) VULKAN_HPP_NOEXCEPT
+ : waitSemaphoreValueCount( waitSemaphoreValueCount_ )
+ , pWaitSemaphoreValues( pWaitSemaphoreValues_ )
+ , signalSemaphoreValueCount( signalSemaphoreValueCount_ )
+ , pSignalSemaphoreValues( pSignalSemaphoreValues_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ TimelineSemaphoreSubmitInfo( TimelineSemaphoreSubmitInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ TimelineSemaphoreSubmitInfo( VkTimelineSemaphoreSubmitInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ : TimelineSemaphoreSubmitInfo( *reinterpret_cast<TimelineSemaphoreSubmitInfo const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ TimelineSemaphoreSubmitInfo(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const & waitSemaphoreValues_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const & signalSemaphoreValues_ = {} )
+ : waitSemaphoreValueCount( static_cast<uint32_t>( waitSemaphoreValues_.size() ) )
+ , pWaitSemaphoreValues( waitSemaphoreValues_.data() )
+ , signalSemaphoreValueCount( static_cast<uint32_t>( signalSemaphoreValues_.size() ) )
+ , pSignalSemaphoreValues( signalSemaphoreValues_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 TimelineSemaphoreSubmitInfo &
+ operator=( TimelineSemaphoreSubmitInfo const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ TimelineSemaphoreSubmitInfo & operator=( VkTimelineSemaphoreSubmitInfo const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::TimelineSemaphoreSubmitInfo const *>( &rhs );
+ return *this;
+ }
+
+ TimelineSemaphoreSubmitInfo & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ TimelineSemaphoreSubmitInfo & setWaitSemaphoreValueCount( uint32_t waitSemaphoreValueCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ waitSemaphoreValueCount = waitSemaphoreValueCount_;
+ return *this;
+ }
+
+ TimelineSemaphoreSubmitInfo & setPWaitSemaphoreValues( const uint64_t * pWaitSemaphoreValues_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pWaitSemaphoreValues = pWaitSemaphoreValues_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ TimelineSemaphoreSubmitInfo & setWaitSemaphoreValues(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const & waitSemaphoreValues_ ) VULKAN_HPP_NOEXCEPT
+ {
+ waitSemaphoreValueCount = static_cast<uint32_t>( waitSemaphoreValues_.size() );
+ pWaitSemaphoreValues = waitSemaphoreValues_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ TimelineSemaphoreSubmitInfo &
+ setSignalSemaphoreValueCount( uint32_t signalSemaphoreValueCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ signalSemaphoreValueCount = signalSemaphoreValueCount_;
+ return *this;
+ }
+
+ TimelineSemaphoreSubmitInfo &
+ setPSignalSemaphoreValues( const uint64_t * pSignalSemaphoreValues_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pSignalSemaphoreValues = pSignalSemaphoreValues_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ TimelineSemaphoreSubmitInfo & setSignalSemaphoreValues(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const & signalSemaphoreValues_ ) VULKAN_HPP_NOEXCEPT
+ {
+ signalSemaphoreValueCount = static_cast<uint32_t>( signalSemaphoreValues_.size() );
+ pSignalSemaphoreValues = signalSemaphoreValues_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkTimelineSemaphoreSubmitInfo const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkTimelineSemaphoreSubmitInfo *>( this );
+ }
+
+ operator VkTimelineSemaphoreSubmitInfo &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkTimelineSemaphoreSubmitInfo *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( TimelineSemaphoreSubmitInfo const & ) const = default;
+#else
+ bool operator==( TimelineSemaphoreSubmitInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( waitSemaphoreValueCount == rhs.waitSemaphoreValueCount ) &&
+ ( pWaitSemaphoreValues == rhs.pWaitSemaphoreValues ) &&
+ ( signalSemaphoreValueCount == rhs.signalSemaphoreValueCount ) &&
+ ( pSignalSemaphoreValues == rhs.pSignalSemaphoreValues );
+ }
+
+ bool operator!=( TimelineSemaphoreSubmitInfo const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eTimelineSemaphoreSubmitInfo;
+ const void * pNext = {};
+ uint32_t waitSemaphoreValueCount = {};
+ const uint64_t * pWaitSemaphoreValues = {};
+ uint32_t signalSemaphoreValueCount = {};
+ const uint64_t * pSignalSemaphoreValues = {};
+ };
+ static_assert( sizeof( TimelineSemaphoreSubmitInfo ) == sizeof( VkTimelineSemaphoreSubmitInfo ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<TimelineSemaphoreSubmitInfo>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eTimelineSemaphoreSubmitInfo>
+ {
+ using Type = TimelineSemaphoreSubmitInfo;
+ };
+ using TimelineSemaphoreSubmitInfoKHR = TimelineSemaphoreSubmitInfo;
+
+ struct TraceRaysIndirectCommandKHR
+ {
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR TraceRaysIndirectCommandKHR( uint32_t width_ = {},
+ uint32_t height_ = {},
+ uint32_t depth_ = {} ) VULKAN_HPP_NOEXCEPT
+ : width( width_ )
+ , height( height_ )
+ , depth( depth_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ TraceRaysIndirectCommandKHR( TraceRaysIndirectCommandKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ TraceRaysIndirectCommandKHR( VkTraceRaysIndirectCommandKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : TraceRaysIndirectCommandKHR( *reinterpret_cast<TraceRaysIndirectCommandKHR const *>( &rhs ) )
+ {}
+
+ explicit TraceRaysIndirectCommandKHR( Extent2D const & extent2D, uint32_t depth_ = {} )
+ : width( extent2D.width ), height( extent2D.height ), depth( depth_ )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 TraceRaysIndirectCommandKHR &
+ operator=( TraceRaysIndirectCommandKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ TraceRaysIndirectCommandKHR & operator=( VkTraceRaysIndirectCommandKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::TraceRaysIndirectCommandKHR const *>( &rhs );
+ return *this;
+ }
+
+ TraceRaysIndirectCommandKHR & setWidth( uint32_t width_ ) VULKAN_HPP_NOEXCEPT
+ {
+ width = width_;
+ return *this;
+ }
+
+ TraceRaysIndirectCommandKHR & setHeight( uint32_t height_ ) VULKAN_HPP_NOEXCEPT
+ {
+ height = height_;
+ return *this;
+ }
+
+ TraceRaysIndirectCommandKHR & setDepth( uint32_t depth_ ) VULKAN_HPP_NOEXCEPT
+ {
+ depth = depth_;
+ return *this;
+ }
+
+ operator VkTraceRaysIndirectCommandKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkTraceRaysIndirectCommandKHR *>( this );
+ }
+
+ operator VkTraceRaysIndirectCommandKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkTraceRaysIndirectCommandKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( TraceRaysIndirectCommandKHR const & ) const = default;
+#else
+ bool operator==( TraceRaysIndirectCommandKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( width == rhs.width ) && ( height == rhs.height ) && ( depth == rhs.depth );
+ }
+
+ bool operator!=( TraceRaysIndirectCommandKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ uint32_t width = {};
+ uint32_t height = {};
+ uint32_t depth = {};
+ };
+ static_assert( sizeof( TraceRaysIndirectCommandKHR ) == sizeof( VkTraceRaysIndirectCommandKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<TraceRaysIndirectCommandKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ struct ValidationCacheCreateInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eValidationCacheCreateInfoEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR ValidationCacheCreateInfoEXT( VULKAN_HPP_NAMESPACE::ValidationCacheCreateFlagsEXT flags_ = {},
+ size_t initialDataSize_ = {},
+ const void * pInitialData_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , initialDataSize( initialDataSize_ )
+ , pInitialData( pInitialData_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ ValidationCacheCreateInfoEXT( ValidationCacheCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ValidationCacheCreateInfoEXT( VkValidationCacheCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ValidationCacheCreateInfoEXT( *reinterpret_cast<ValidationCacheCreateInfoEXT const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ template <typename T>
+ ValidationCacheCreateInfoEXT( VULKAN_HPP_NAMESPACE::ValidationCacheCreateFlagsEXT flags_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const T> const & initialData_ )
+ : flags( flags_ ), initialDataSize( initialData_.size() * sizeof( T ) ), pInitialData( initialData_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ValidationCacheCreateInfoEXT &
+ operator=( ValidationCacheCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ValidationCacheCreateInfoEXT & operator=( VkValidationCacheCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ValidationCacheCreateInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ ValidationCacheCreateInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ ValidationCacheCreateInfoEXT &
+ setFlags( VULKAN_HPP_NAMESPACE::ValidationCacheCreateFlagsEXT flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ ValidationCacheCreateInfoEXT & setInitialDataSize( size_t initialDataSize_ ) VULKAN_HPP_NOEXCEPT
+ {
+ initialDataSize = initialDataSize_;
+ return *this;
+ }
+
+ ValidationCacheCreateInfoEXT & setPInitialData( const void * pInitialData_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pInitialData = pInitialData_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ template <typename T>
+ ValidationCacheCreateInfoEXT &
+ setInitialData( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const T> const & initialData_ ) VULKAN_HPP_NOEXCEPT
+ {
+ initialDataSize = initialData_.size() * sizeof( T );
+ pInitialData = initialData_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkValidationCacheCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkValidationCacheCreateInfoEXT *>( this );
+ }
+
+ operator VkValidationCacheCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkValidationCacheCreateInfoEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ValidationCacheCreateInfoEXT const & ) const = default;
+#else
+ bool operator==( ValidationCacheCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( initialDataSize == rhs.initialDataSize ) && ( pInitialData == rhs.pInitialData );
+ }
+
+ bool operator!=( ValidationCacheCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eValidationCacheCreateInfoEXT;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ValidationCacheCreateFlagsEXT flags = {};
+ size_t initialDataSize = {};
+ const void * pInitialData = {};
+ };
+ static_assert( sizeof( ValidationCacheCreateInfoEXT ) == sizeof( VkValidationCacheCreateInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ValidationCacheCreateInfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eValidationCacheCreateInfoEXT>
+ {
+ using Type = ValidationCacheCreateInfoEXT;
+ };
+
+ struct ValidationFeaturesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eValidationFeaturesEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR ValidationFeaturesEXT(
+ uint32_t enabledValidationFeatureCount_ = {},
+ const VULKAN_HPP_NAMESPACE::ValidationFeatureEnableEXT * pEnabledValidationFeatures_ = {},
+ uint32_t disabledValidationFeatureCount_ = {},
+ const VULKAN_HPP_NAMESPACE::ValidationFeatureDisableEXT * pDisabledValidationFeatures_ = {} ) VULKAN_HPP_NOEXCEPT
+ : enabledValidationFeatureCount( enabledValidationFeatureCount_ )
+ , pEnabledValidationFeatures( pEnabledValidationFeatures_ )
+ , disabledValidationFeatureCount( disabledValidationFeatureCount_ )
+ , pDisabledValidationFeatures( pDisabledValidationFeatures_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR ValidationFeaturesEXT( ValidationFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ValidationFeaturesEXT( VkValidationFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ValidationFeaturesEXT( *reinterpret_cast<ValidationFeaturesEXT const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ ValidationFeaturesEXT(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ValidationFeatureEnableEXT> const &
+ enabledValidationFeatures_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ValidationFeatureDisableEXT> const &
+ disabledValidationFeatures_ = {} )
+ : enabledValidationFeatureCount( static_cast<uint32_t>( enabledValidationFeatures_.size() ) )
+ , pEnabledValidationFeatures( enabledValidationFeatures_.data() )
+ , disabledValidationFeatureCount( static_cast<uint32_t>( disabledValidationFeatures_.size() ) )
+ , pDisabledValidationFeatures( disabledValidationFeatures_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ValidationFeaturesEXT &
+ operator=( ValidationFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ValidationFeaturesEXT & operator=( VkValidationFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ValidationFeaturesEXT const *>( &rhs );
+ return *this;
+ }
+
+ ValidationFeaturesEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ ValidationFeaturesEXT &
+ setEnabledValidationFeatureCount( uint32_t enabledValidationFeatureCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ enabledValidationFeatureCount = enabledValidationFeatureCount_;
+ return *this;
+ }
+
+ ValidationFeaturesEXT & setPEnabledValidationFeatures(
+ const VULKAN_HPP_NAMESPACE::ValidationFeatureEnableEXT * pEnabledValidationFeatures_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pEnabledValidationFeatures = pEnabledValidationFeatures_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ ValidationFeaturesEXT & setEnabledValidationFeatures(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ValidationFeatureEnableEXT> const &
+ enabledValidationFeatures_ ) VULKAN_HPP_NOEXCEPT
+ {
+ enabledValidationFeatureCount = static_cast<uint32_t>( enabledValidationFeatures_.size() );
+ pEnabledValidationFeatures = enabledValidationFeatures_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ ValidationFeaturesEXT &
+ setDisabledValidationFeatureCount( uint32_t disabledValidationFeatureCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ disabledValidationFeatureCount = disabledValidationFeatureCount_;
+ return *this;
+ }
+
+ ValidationFeaturesEXT & setPDisabledValidationFeatures(
+ const VULKAN_HPP_NAMESPACE::ValidationFeatureDisableEXT * pDisabledValidationFeatures_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pDisabledValidationFeatures = pDisabledValidationFeatures_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ ValidationFeaturesEXT & setDisabledValidationFeatures(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ValidationFeatureDisableEXT> const &
+ disabledValidationFeatures_ ) VULKAN_HPP_NOEXCEPT
+ {
+ disabledValidationFeatureCount = static_cast<uint32_t>( disabledValidationFeatures_.size() );
+ pDisabledValidationFeatures = disabledValidationFeatures_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkValidationFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkValidationFeaturesEXT *>( this );
+ }
+
+ operator VkValidationFeaturesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkValidationFeaturesEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ValidationFeaturesEXT const & ) const = default;
+#else
+ bool operator==( ValidationFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( enabledValidationFeatureCount == rhs.enabledValidationFeatureCount ) &&
+ ( pEnabledValidationFeatures == rhs.pEnabledValidationFeatures ) &&
+ ( disabledValidationFeatureCount == rhs.disabledValidationFeatureCount ) &&
+ ( pDisabledValidationFeatures == rhs.pDisabledValidationFeatures );
+ }
+
+ bool operator!=( ValidationFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eValidationFeaturesEXT;
+ const void * pNext = {};
+ uint32_t enabledValidationFeatureCount = {};
+ const VULKAN_HPP_NAMESPACE::ValidationFeatureEnableEXT * pEnabledValidationFeatures = {};
+ uint32_t disabledValidationFeatureCount = {};
+ const VULKAN_HPP_NAMESPACE::ValidationFeatureDisableEXT * pDisabledValidationFeatures = {};
+ };
+ static_assert( sizeof( ValidationFeaturesEXT ) == sizeof( VkValidationFeaturesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ValidationFeaturesEXT>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eValidationFeaturesEXT>
+ {
+ using Type = ValidationFeaturesEXT;
+ };
+
+ struct ValidationFlagsEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eValidationFlagsEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR ValidationFlagsEXT(
+ uint32_t disabledValidationCheckCount_ = {},
+ const VULKAN_HPP_NAMESPACE::ValidationCheckEXT * pDisabledValidationChecks_ = {} ) VULKAN_HPP_NOEXCEPT
+ : disabledValidationCheckCount( disabledValidationCheckCount_ )
+ , pDisabledValidationChecks( pDisabledValidationChecks_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR ValidationFlagsEXT( ValidationFlagsEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ValidationFlagsEXT( VkValidationFlagsEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ValidationFlagsEXT( *reinterpret_cast<ValidationFlagsEXT const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ ValidationFlagsEXT(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ValidationCheckEXT> const &
+ disabledValidationChecks_ )
+ : disabledValidationCheckCount( static_cast<uint32_t>( disabledValidationChecks_.size() ) )
+ , pDisabledValidationChecks( disabledValidationChecks_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ValidationFlagsEXT &
+ operator=( ValidationFlagsEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ValidationFlagsEXT & operator=( VkValidationFlagsEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ValidationFlagsEXT const *>( &rhs );
+ return *this;
+ }
+
+ ValidationFlagsEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ ValidationFlagsEXT & setDisabledValidationCheckCount( uint32_t disabledValidationCheckCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ disabledValidationCheckCount = disabledValidationCheckCount_;
+ return *this;
+ }
+
+ ValidationFlagsEXT & setPDisabledValidationChecks(
+ const VULKAN_HPP_NAMESPACE::ValidationCheckEXT * pDisabledValidationChecks_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pDisabledValidationChecks = pDisabledValidationChecks_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ ValidationFlagsEXT & setDisabledValidationChecks(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ValidationCheckEXT> const &
+ disabledValidationChecks_ ) VULKAN_HPP_NOEXCEPT
+ {
+ disabledValidationCheckCount = static_cast<uint32_t>( disabledValidationChecks_.size() );
+ pDisabledValidationChecks = disabledValidationChecks_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkValidationFlagsEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkValidationFlagsEXT *>( this );
+ }
+
+ operator VkValidationFlagsEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkValidationFlagsEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ValidationFlagsEXT const & ) const = default;
+#else
+ bool operator==( ValidationFlagsEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( disabledValidationCheckCount == rhs.disabledValidationCheckCount ) &&
+ ( pDisabledValidationChecks == rhs.pDisabledValidationChecks );
+ }
+
+ bool operator!=( ValidationFlagsEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eValidationFlagsEXT;
+ const void * pNext = {};
+ uint32_t disabledValidationCheckCount = {};
+ const VULKAN_HPP_NAMESPACE::ValidationCheckEXT * pDisabledValidationChecks = {};
+ };
+ static_assert( sizeof( ValidationFlagsEXT ) == sizeof( VkValidationFlagsEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ValidationFlagsEXT>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eValidationFlagsEXT>
+ {
+ using Type = ValidationFlagsEXT;
+ };
+
+ struct VertexInputAttributeDescription2EXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eVertexInputAttributeDescription2EXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR VertexInputAttributeDescription2EXT(
+ uint32_t location_ = {},
+ uint32_t binding_ = {},
+ VULKAN_HPP_NAMESPACE::Format format_ = VULKAN_HPP_NAMESPACE::Format::eUndefined,
+ uint32_t offset_ = {} ) VULKAN_HPP_NOEXCEPT
+ : location( location_ )
+ , binding( binding_ )
+ , format( format_ )
+ , offset( offset_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR VertexInputAttributeDescription2EXT( VertexInputAttributeDescription2EXT const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ VertexInputAttributeDescription2EXT( VkVertexInputAttributeDescription2EXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : VertexInputAttributeDescription2EXT( *reinterpret_cast<VertexInputAttributeDescription2EXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 VertexInputAttributeDescription2EXT &
+ operator=( VertexInputAttributeDescription2EXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VertexInputAttributeDescription2EXT &
+ operator=( VkVertexInputAttributeDescription2EXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VertexInputAttributeDescription2EXT const *>( &rhs );
+ return *this;
+ }
+
+ VertexInputAttributeDescription2EXT & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ VertexInputAttributeDescription2EXT & setLocation( uint32_t location_ ) VULKAN_HPP_NOEXCEPT
+ {
+ location = location_;
+ return *this;
+ }
+
+ VertexInputAttributeDescription2EXT & setBinding( uint32_t binding_ ) VULKAN_HPP_NOEXCEPT
+ {
+ binding = binding_;
+ return *this;
+ }
+
+ VertexInputAttributeDescription2EXT & setFormat( VULKAN_HPP_NAMESPACE::Format format_ ) VULKAN_HPP_NOEXCEPT
+ {
+ format = format_;
+ return *this;
+ }
+
+ VertexInputAttributeDescription2EXT & setOffset( uint32_t offset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ offset = offset_;
+ return *this;
+ }
+
+ operator VkVertexInputAttributeDescription2EXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkVertexInputAttributeDescription2EXT *>( this );
+ }
+
+ operator VkVertexInputAttributeDescription2EXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkVertexInputAttributeDescription2EXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( VertexInputAttributeDescription2EXT const & ) const = default;
+#else
+ bool operator==( VertexInputAttributeDescription2EXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( location == rhs.location ) &&
+ ( binding == rhs.binding ) && ( format == rhs.format ) && ( offset == rhs.offset );
+ }
+
+ bool operator!=( VertexInputAttributeDescription2EXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVertexInputAttributeDescription2EXT;
+ void * pNext = {};
+ uint32_t location = {};
+ uint32_t binding = {};
+ VULKAN_HPP_NAMESPACE::Format format = VULKAN_HPP_NAMESPACE::Format::eUndefined;
+ uint32_t offset = {};
+ };
+ static_assert( sizeof( VertexInputAttributeDescription2EXT ) == sizeof( VkVertexInputAttributeDescription2EXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<VertexInputAttributeDescription2EXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eVertexInputAttributeDescription2EXT>
+ {
+ using Type = VertexInputAttributeDescription2EXT;
+ };
+
+ struct VertexInputBindingDescription2EXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eVertexInputBindingDescription2EXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR VertexInputBindingDescription2EXT(
+ uint32_t binding_ = {},
+ uint32_t stride_ = {},
+ VULKAN_HPP_NAMESPACE::VertexInputRate inputRate_ = VULKAN_HPP_NAMESPACE::VertexInputRate::eVertex,
+ uint32_t divisor_ = {} ) VULKAN_HPP_NOEXCEPT
+ : binding( binding_ )
+ , stride( stride_ )
+ , inputRate( inputRate_ )
+ , divisor( divisor_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ VertexInputBindingDescription2EXT( VertexInputBindingDescription2EXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VertexInputBindingDescription2EXT( VkVertexInputBindingDescription2EXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : VertexInputBindingDescription2EXT( *reinterpret_cast<VertexInputBindingDescription2EXT const *>( &rhs ) )
+ {}
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 VertexInputBindingDescription2EXT &
+ operator=( VertexInputBindingDescription2EXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VertexInputBindingDescription2EXT & operator=( VkVertexInputBindingDescription2EXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VertexInputBindingDescription2EXT const *>( &rhs );
+ return *this;
+ }
+
+ VertexInputBindingDescription2EXT & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ VertexInputBindingDescription2EXT & setBinding( uint32_t binding_ ) VULKAN_HPP_NOEXCEPT
+ {
+ binding = binding_;
+ return *this;
+ }
+
+ VertexInputBindingDescription2EXT & setStride( uint32_t stride_ ) VULKAN_HPP_NOEXCEPT
+ {
+ stride = stride_;
+ return *this;
+ }
+
+ VertexInputBindingDescription2EXT &
+ setInputRate( VULKAN_HPP_NAMESPACE::VertexInputRate inputRate_ ) VULKAN_HPP_NOEXCEPT
+ {
+ inputRate = inputRate_;
+ return *this;
+ }
+
+ VertexInputBindingDescription2EXT & setDivisor( uint32_t divisor_ ) VULKAN_HPP_NOEXCEPT
+ {
+ divisor = divisor_;
+ return *this;
+ }
+
+ operator VkVertexInputBindingDescription2EXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkVertexInputBindingDescription2EXT *>( this );
+ }
+
+ operator VkVertexInputBindingDescription2EXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkVertexInputBindingDescription2EXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( VertexInputBindingDescription2EXT const & ) const = default;
+#else
+ bool operator==( VertexInputBindingDescription2EXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( binding == rhs.binding ) &&
+ ( stride == rhs.stride ) && ( inputRate == rhs.inputRate ) && ( divisor == rhs.divisor );
+ }
+
+ bool operator!=( VertexInputBindingDescription2EXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVertexInputBindingDescription2EXT;
+ void * pNext = {};
+ uint32_t binding = {};
+ uint32_t stride = {};
+ VULKAN_HPP_NAMESPACE::VertexInputRate inputRate = VULKAN_HPP_NAMESPACE::VertexInputRate::eVertex;
+ uint32_t divisor = {};
+ };
+ static_assert( sizeof( VertexInputBindingDescription2EXT ) == sizeof( VkVertexInputBindingDescription2EXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<VertexInputBindingDescription2EXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eVertexInputBindingDescription2EXT>
+ {
+ using Type = VertexInputBindingDescription2EXT;
+ };
+
+#if defined( VK_USE_PLATFORM_VI_NN )
+ struct ViSurfaceCreateInfoNN
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eViSurfaceCreateInfoNN;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR ViSurfaceCreateInfoNN( VULKAN_HPP_NAMESPACE::ViSurfaceCreateFlagsNN flags_ = {},
+ void * window_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , window( window_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR ViSurfaceCreateInfoNN( ViSurfaceCreateInfoNN const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ViSurfaceCreateInfoNN( VkViSurfaceCreateInfoNN const & rhs ) VULKAN_HPP_NOEXCEPT
+ : ViSurfaceCreateInfoNN( *reinterpret_cast<ViSurfaceCreateInfoNN const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 ViSurfaceCreateInfoNN &
+ operator=( ViSurfaceCreateInfoNN const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ ViSurfaceCreateInfoNN & operator=( VkViSurfaceCreateInfoNN const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ViSurfaceCreateInfoNN const *>( &rhs );
+ return *this;
+ }
+
+ ViSurfaceCreateInfoNN & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ ViSurfaceCreateInfoNN & setFlags( VULKAN_HPP_NAMESPACE::ViSurfaceCreateFlagsNN flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ ViSurfaceCreateInfoNN & setWindow( void * window_ ) VULKAN_HPP_NOEXCEPT
+ {
+ window = window_;
+ return *this;
+ }
+
+ operator VkViSurfaceCreateInfoNN const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkViSurfaceCreateInfoNN *>( this );
+ }
+
+ operator VkViSurfaceCreateInfoNN &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkViSurfaceCreateInfoNN *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( ViSurfaceCreateInfoNN const & ) const = default;
+# else
+ bool operator==( ViSurfaceCreateInfoNN const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) && ( window == rhs.window );
+ }
+
+ bool operator!=( ViSurfaceCreateInfoNN const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eViSurfaceCreateInfoNN;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::ViSurfaceCreateFlagsNN flags = {};
+ void * window = {};
+ };
+ static_assert( sizeof( ViSurfaceCreateInfoNN ) == sizeof( VkViSurfaceCreateInfoNN ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<ViSurfaceCreateInfoNN>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eViSurfaceCreateInfoNN>
+ {
+ using Type = ViSurfaceCreateInfoNN;
+ };
+#endif /*VK_USE_PLATFORM_VI_NN*/
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoPictureResourceKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoPictureResourceKHR;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ VideoPictureResourceKHR( VULKAN_HPP_NAMESPACE::Offset2D codedOffset_ = {},
+ VULKAN_HPP_NAMESPACE::Extent2D codedExtent_ = {},
+ uint32_t baseArrayLayer_ = {},
+ VULKAN_HPP_NAMESPACE::ImageView imageViewBinding_ = {} ) VULKAN_HPP_NOEXCEPT
+ : codedOffset( codedOffset_ )
+ , codedExtent( codedExtent_ )
+ , baseArrayLayer( baseArrayLayer_ )
+ , imageViewBinding( imageViewBinding_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR VideoPictureResourceKHR( VideoPictureResourceKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoPictureResourceKHR( VkVideoPictureResourceKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : VideoPictureResourceKHR( *reinterpret_cast<VideoPictureResourceKHR const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 VideoPictureResourceKHR &
+ operator=( VideoPictureResourceKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoPictureResourceKHR & operator=( VkVideoPictureResourceKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoPictureResourceKHR const *>( &rhs );
+ return *this;
+ }
+
+ VideoPictureResourceKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ VideoPictureResourceKHR & setCodedOffset( VULKAN_HPP_NAMESPACE::Offset2D const & codedOffset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ codedOffset = codedOffset_;
+ return *this;
+ }
+
+ VideoPictureResourceKHR & setCodedExtent( VULKAN_HPP_NAMESPACE::Extent2D const & codedExtent_ ) VULKAN_HPP_NOEXCEPT
+ {
+ codedExtent = codedExtent_;
+ return *this;
+ }
+
+ VideoPictureResourceKHR & setBaseArrayLayer( uint32_t baseArrayLayer_ ) VULKAN_HPP_NOEXCEPT
+ {
+ baseArrayLayer = baseArrayLayer_;
+ return *this;
+ }
+
+ VideoPictureResourceKHR &
+ setImageViewBinding( VULKAN_HPP_NAMESPACE::ImageView imageViewBinding_ ) VULKAN_HPP_NOEXCEPT
+ {
+ imageViewBinding = imageViewBinding_;
+ return *this;
+ }
+
+ operator VkVideoPictureResourceKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkVideoPictureResourceKHR *>( this );
+ }
+
+ operator VkVideoPictureResourceKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkVideoPictureResourceKHR *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( VideoPictureResourceKHR const & ) const = default;
+# else
+ bool operator==( VideoPictureResourceKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( codedOffset == rhs.codedOffset ) &&
+ ( codedExtent == rhs.codedExtent ) && ( baseArrayLayer == rhs.baseArrayLayer ) &&
+ ( imageViewBinding == rhs.imageViewBinding );
+ }
+
+ bool operator!=( VideoPictureResourceKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoPictureResourceKHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Offset2D codedOffset = {};
+ VULKAN_HPP_NAMESPACE::Extent2D codedExtent = {};
+ uint32_t baseArrayLayer = {};
+ VULKAN_HPP_NAMESPACE::ImageView imageViewBinding = {};
+ };
+ static_assert( sizeof( VideoPictureResourceKHR ) == sizeof( VkVideoPictureResourceKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<VideoPictureResourceKHR>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eVideoPictureResourceKHR>
+ {
+ using Type = VideoPictureResourceKHR;
+ };
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoReferenceSlotKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoReferenceSlotKHR;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR VideoReferenceSlotKHR(
+ int8_t slotIndex_ = {},
+ const VULKAN_HPP_NAMESPACE::VideoPictureResourceKHR * pPictureResource_ = {} ) VULKAN_HPP_NOEXCEPT
+ : slotIndex( slotIndex_ )
+ , pPictureResource( pPictureResource_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR VideoReferenceSlotKHR( VideoReferenceSlotKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoReferenceSlotKHR( VkVideoReferenceSlotKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : VideoReferenceSlotKHR( *reinterpret_cast<VideoReferenceSlotKHR const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 VideoReferenceSlotKHR &
+ operator=( VideoReferenceSlotKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoReferenceSlotKHR & operator=( VkVideoReferenceSlotKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoReferenceSlotKHR const *>( &rhs );
+ return *this;
+ }
+
+ VideoReferenceSlotKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ VideoReferenceSlotKHR & setSlotIndex( int8_t slotIndex_ ) VULKAN_HPP_NOEXCEPT
+ {
+ slotIndex = slotIndex_;
+ return *this;
+ }
+
+ VideoReferenceSlotKHR &
+ setPPictureResource( const VULKAN_HPP_NAMESPACE::VideoPictureResourceKHR * pPictureResource_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pPictureResource = pPictureResource_;
+ return *this;
+ }
+
+ operator VkVideoReferenceSlotKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkVideoReferenceSlotKHR *>( this );
+ }
+
+ operator VkVideoReferenceSlotKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkVideoReferenceSlotKHR *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( VideoReferenceSlotKHR const & ) const = default;
+# else
+ bool operator==( VideoReferenceSlotKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( slotIndex == rhs.slotIndex ) &&
+ ( pPictureResource == rhs.pPictureResource );
+ }
+
+ bool operator!=( VideoReferenceSlotKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoReferenceSlotKHR;
+ const void * pNext = {};
+ int8_t slotIndex = {};
+ const VULKAN_HPP_NAMESPACE::VideoPictureResourceKHR * pPictureResource = {};
+ };
+ static_assert( sizeof( VideoReferenceSlotKHR ) == sizeof( VkVideoReferenceSlotKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<VideoReferenceSlotKHR>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eVideoReferenceSlotKHR>
+ {
+ using Type = VideoReferenceSlotKHR;
+ };
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoBeginCodingInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoBeginCodingInfoKHR;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR VideoBeginCodingInfoKHR(
+ VULKAN_HPP_NAMESPACE::VideoBeginCodingFlagsKHR flags_ = {},
+ VULKAN_HPP_NAMESPACE::VideoCodingQualityPresetFlagsKHR codecQualityPreset_ = {},
+ VULKAN_HPP_NAMESPACE::VideoSessionKHR videoSession_ = {},
+ VULKAN_HPP_NAMESPACE::VideoSessionParametersKHR videoSessionParameters_ = {},
+ uint32_t referenceSlotCount_ = {},
+ const VULKAN_HPP_NAMESPACE::VideoReferenceSlotKHR * pReferenceSlots_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , codecQualityPreset( codecQualityPreset_ )
+ , videoSession( videoSession_ )
+ , videoSessionParameters( videoSessionParameters_ )
+ , referenceSlotCount( referenceSlotCount_ )
+ , pReferenceSlots( pReferenceSlots_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR VideoBeginCodingInfoKHR( VideoBeginCodingInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoBeginCodingInfoKHR( VkVideoBeginCodingInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : VideoBeginCodingInfoKHR( *reinterpret_cast<VideoBeginCodingInfoKHR const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ VideoBeginCodingInfoKHR(
+ VULKAN_HPP_NAMESPACE::VideoBeginCodingFlagsKHR flags_,
+ VULKAN_HPP_NAMESPACE::VideoCodingQualityPresetFlagsKHR codecQualityPreset_,
+ VULKAN_HPP_NAMESPACE::VideoSessionKHR videoSession_,
+ VULKAN_HPP_NAMESPACE::VideoSessionParametersKHR videoSessionParameters_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::VideoReferenceSlotKHR> const &
+ referenceSlots_ )
+ : flags( flags_ )
+ , codecQualityPreset( codecQualityPreset_ )
+ , videoSession( videoSession_ )
+ , videoSessionParameters( videoSessionParameters_ )
+ , referenceSlotCount( static_cast<uint32_t>( referenceSlots_.size() ) )
+ , pReferenceSlots( referenceSlots_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 VideoBeginCodingInfoKHR &
+ operator=( VideoBeginCodingInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoBeginCodingInfoKHR & operator=( VkVideoBeginCodingInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoBeginCodingInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ VideoBeginCodingInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ VideoBeginCodingInfoKHR & setFlags( VULKAN_HPP_NAMESPACE::VideoBeginCodingFlagsKHR flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ VideoBeginCodingInfoKHR & setCodecQualityPreset(
+ VULKAN_HPP_NAMESPACE::VideoCodingQualityPresetFlagsKHR codecQualityPreset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ codecQualityPreset = codecQualityPreset_;
+ return *this;
+ }
+
+ VideoBeginCodingInfoKHR & setVideoSession( VULKAN_HPP_NAMESPACE::VideoSessionKHR videoSession_ ) VULKAN_HPP_NOEXCEPT
+ {
+ videoSession = videoSession_;
+ return *this;
+ }
+
+ VideoBeginCodingInfoKHR & setVideoSessionParameters(
+ VULKAN_HPP_NAMESPACE::VideoSessionParametersKHR videoSessionParameters_ ) VULKAN_HPP_NOEXCEPT
+ {
+ videoSessionParameters = videoSessionParameters_;
+ return *this;
+ }
+
+ VideoBeginCodingInfoKHR & setReferenceSlotCount( uint32_t referenceSlotCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ referenceSlotCount = referenceSlotCount_;
+ return *this;
+ }
+
+ VideoBeginCodingInfoKHR &
+ setPReferenceSlots( const VULKAN_HPP_NAMESPACE::VideoReferenceSlotKHR * pReferenceSlots_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pReferenceSlots = pReferenceSlots_;
+ return *this;
+ }
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ VideoBeginCodingInfoKHR & setReferenceSlots(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::VideoReferenceSlotKHR> const &
+ referenceSlots_ ) VULKAN_HPP_NOEXCEPT
+ {
+ referenceSlotCount = static_cast<uint32_t>( referenceSlots_.size() );
+ pReferenceSlots = referenceSlots_.data();
+ return *this;
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkVideoBeginCodingInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkVideoBeginCodingInfoKHR *>( this );
+ }
+
+ operator VkVideoBeginCodingInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkVideoBeginCodingInfoKHR *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( VideoBeginCodingInfoKHR const & ) const = default;
+# else
+ bool operator==( VideoBeginCodingInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( codecQualityPreset == rhs.codecQualityPreset ) && ( videoSession == rhs.videoSession ) &&
+ ( videoSessionParameters == rhs.videoSessionParameters ) &&
+ ( referenceSlotCount == rhs.referenceSlotCount ) && ( pReferenceSlots == rhs.pReferenceSlots );
+ }
+
+ bool operator!=( VideoBeginCodingInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoBeginCodingInfoKHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::VideoBeginCodingFlagsKHR flags = {};
+ VULKAN_HPP_NAMESPACE::VideoCodingQualityPresetFlagsKHR codecQualityPreset = {};
+ VULKAN_HPP_NAMESPACE::VideoSessionKHR videoSession = {};
+ VULKAN_HPP_NAMESPACE::VideoSessionParametersKHR videoSessionParameters = {};
+ uint32_t referenceSlotCount = {};
+ const VULKAN_HPP_NAMESPACE::VideoReferenceSlotKHR * pReferenceSlots = {};
+ };
+ static_assert( sizeof( VideoBeginCodingInfoKHR ) == sizeof( VkVideoBeginCodingInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<VideoBeginCodingInfoKHR>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eVideoBeginCodingInfoKHR>
+ {
+ using Type = VideoBeginCodingInfoKHR;
+ };
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoBindMemoryKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoBindMemoryKHR;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR VideoBindMemoryKHR( uint32_t memoryBindIndex_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceMemory memory_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize memorySize_ = {} ) VULKAN_HPP_NOEXCEPT
+ : memoryBindIndex( memoryBindIndex_ )
+ , memory( memory_ )
+ , memoryOffset( memoryOffset_ )
+ , memorySize( memorySize_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR VideoBindMemoryKHR( VideoBindMemoryKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoBindMemoryKHR( VkVideoBindMemoryKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : VideoBindMemoryKHR( *reinterpret_cast<VideoBindMemoryKHR const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 VideoBindMemoryKHR &
+ operator=( VideoBindMemoryKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoBindMemoryKHR & operator=( VkVideoBindMemoryKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoBindMemoryKHR const *>( &rhs );
+ return *this;
+ }
+
+ VideoBindMemoryKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ VideoBindMemoryKHR & setMemoryBindIndex( uint32_t memoryBindIndex_ ) VULKAN_HPP_NOEXCEPT
+ {
+ memoryBindIndex = memoryBindIndex_;
+ return *this;
+ }
+
+ VideoBindMemoryKHR & setMemory( VULKAN_HPP_NAMESPACE::DeviceMemory memory_ ) VULKAN_HPP_NOEXCEPT
+ {
+ memory = memory_;
+ return *this;
+ }
+
+ VideoBindMemoryKHR & setMemoryOffset( VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ memoryOffset = memoryOffset_;
+ return *this;
+ }
+
+ VideoBindMemoryKHR & setMemorySize( VULKAN_HPP_NAMESPACE::DeviceSize memorySize_ ) VULKAN_HPP_NOEXCEPT
+ {
+ memorySize = memorySize_;
+ return *this;
+ }
+
+ operator VkVideoBindMemoryKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkVideoBindMemoryKHR *>( this );
+ }
+
+ operator VkVideoBindMemoryKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkVideoBindMemoryKHR *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( VideoBindMemoryKHR const & ) const = default;
+# else
+ bool operator==( VideoBindMemoryKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( memoryBindIndex == rhs.memoryBindIndex ) &&
+ ( memory == rhs.memory ) && ( memoryOffset == rhs.memoryOffset ) && ( memorySize == rhs.memorySize );
+ }
+
+ bool operator!=( VideoBindMemoryKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoBindMemoryKHR;
+ const void * pNext = {};
+ uint32_t memoryBindIndex = {};
+ VULKAN_HPP_NAMESPACE::DeviceMemory memory = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize memorySize = {};
+ };
+ static_assert( sizeof( VideoBindMemoryKHR ) == sizeof( VkVideoBindMemoryKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<VideoBindMemoryKHR>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eVideoBindMemoryKHR>
+ {
+ using Type = VideoBindMemoryKHR;
+ };
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoCapabilitiesKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoCapabilitiesKHR;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR VideoCapabilitiesKHR( VULKAN_HPP_NAMESPACE::VideoCapabilitiesFlagsKHR capabilityFlags_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize minBitstreamBufferOffsetAlignment_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize minBitstreamBufferSizeAlignment_ = {},
+ VULKAN_HPP_NAMESPACE::Extent2D videoPictureExtentGranularity_ = {},
+ VULKAN_HPP_NAMESPACE::Extent2D minExtent_ = {},
+ VULKAN_HPP_NAMESPACE::Extent2D maxExtent_ = {},
+ uint32_t maxReferencePicturesSlotsCount_ = {},
+ uint32_t maxReferencePicturesActiveCount_ = {} ) VULKAN_HPP_NOEXCEPT
+ : capabilityFlags( capabilityFlags_ )
+ , minBitstreamBufferOffsetAlignment( minBitstreamBufferOffsetAlignment_ )
+ , minBitstreamBufferSizeAlignment( minBitstreamBufferSizeAlignment_ )
+ , videoPictureExtentGranularity( videoPictureExtentGranularity_ )
+ , minExtent( minExtent_ )
+ , maxExtent( maxExtent_ )
+ , maxReferencePicturesSlotsCount( maxReferencePicturesSlotsCount_ )
+ , maxReferencePicturesActiveCount( maxReferencePicturesActiveCount_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR VideoCapabilitiesKHR( VideoCapabilitiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoCapabilitiesKHR( VkVideoCapabilitiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : VideoCapabilitiesKHR( *reinterpret_cast<VideoCapabilitiesKHR const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 VideoCapabilitiesKHR &
+ operator=( VideoCapabilitiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoCapabilitiesKHR & operator=( VkVideoCapabilitiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoCapabilitiesKHR const *>( &rhs );
+ return *this;
+ }
+
+ operator VkVideoCapabilitiesKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkVideoCapabilitiesKHR *>( this );
+ }
+
+ operator VkVideoCapabilitiesKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkVideoCapabilitiesKHR *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( VideoCapabilitiesKHR const & ) const = default;
+# else
+ bool operator==( VideoCapabilitiesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( capabilityFlags == rhs.capabilityFlags ) &&
+ ( minBitstreamBufferOffsetAlignment == rhs.minBitstreamBufferOffsetAlignment ) &&
+ ( minBitstreamBufferSizeAlignment == rhs.minBitstreamBufferSizeAlignment ) &&
+ ( videoPictureExtentGranularity == rhs.videoPictureExtentGranularity ) && ( minExtent == rhs.minExtent ) &&
+ ( maxExtent == rhs.maxExtent ) &&
+ ( maxReferencePicturesSlotsCount == rhs.maxReferencePicturesSlotsCount ) &&
+ ( maxReferencePicturesActiveCount == rhs.maxReferencePicturesActiveCount );
+ }
+
+ bool operator!=( VideoCapabilitiesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoCapabilitiesKHR;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::VideoCapabilitiesFlagsKHR capabilityFlags = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize minBitstreamBufferOffsetAlignment = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize minBitstreamBufferSizeAlignment = {};
+ VULKAN_HPP_NAMESPACE::Extent2D videoPictureExtentGranularity = {};
+ VULKAN_HPP_NAMESPACE::Extent2D minExtent = {};
+ VULKAN_HPP_NAMESPACE::Extent2D maxExtent = {};
+ uint32_t maxReferencePicturesSlotsCount = {};
+ uint32_t maxReferencePicturesActiveCount = {};
+ };
+ static_assert( sizeof( VideoCapabilitiesKHR ) == sizeof( VkVideoCapabilitiesKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<VideoCapabilitiesKHR>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eVideoCapabilitiesKHR>
+ {
+ using Type = VideoCapabilitiesKHR;
+ };
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoCodingControlInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoCodingControlInfoKHR;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ VideoCodingControlInfoKHR( VULKAN_HPP_NAMESPACE::VideoCodingControlFlagsKHR flags_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ VideoCodingControlInfoKHR( VideoCodingControlInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoCodingControlInfoKHR( VkVideoCodingControlInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : VideoCodingControlInfoKHR( *reinterpret_cast<VideoCodingControlInfoKHR const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 VideoCodingControlInfoKHR &
+ operator=( VideoCodingControlInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoCodingControlInfoKHR & operator=( VkVideoCodingControlInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoCodingControlInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ VideoCodingControlInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ VideoCodingControlInfoKHR & setFlags( VULKAN_HPP_NAMESPACE::VideoCodingControlFlagsKHR flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ operator VkVideoCodingControlInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkVideoCodingControlInfoKHR *>( this );
+ }
+
+ operator VkVideoCodingControlInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkVideoCodingControlInfoKHR *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( VideoCodingControlInfoKHR const & ) const = default;
+# else
+ bool operator==( VideoCodingControlInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags );
+ }
+
+ bool operator!=( VideoCodingControlInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoCodingControlInfoKHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::VideoCodingControlFlagsKHR flags = {};
+ };
+ static_assert( sizeof( VideoCodingControlInfoKHR ) == sizeof( VkVideoCodingControlInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<VideoCodingControlInfoKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eVideoCodingControlInfoKHR>
+ {
+ using Type = VideoCodingControlInfoKHR;
+ };
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoDecodeH264CapabilitiesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoDecodeH264CapabilitiesEXT;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR_14 VideoDecodeH264CapabilitiesEXT(
+ uint32_t maxLevel_ = {},
+ VULKAN_HPP_NAMESPACE::Offset2D fieldOffsetGranularity_ = {},
+ VULKAN_HPP_NAMESPACE::ExtensionProperties stdExtensionVersion_ = {} ) VULKAN_HPP_NOEXCEPT
+ : maxLevel( maxLevel_ )
+ , fieldOffsetGranularity( fieldOffsetGranularity_ )
+ , stdExtensionVersion( stdExtensionVersion_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR_14
+ VideoDecodeH264CapabilitiesEXT( VideoDecodeH264CapabilitiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoDecodeH264CapabilitiesEXT( VkVideoDecodeH264CapabilitiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : VideoDecodeH264CapabilitiesEXT( *reinterpret_cast<VideoDecodeH264CapabilitiesEXT const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 VideoDecodeH264CapabilitiesEXT &
+ operator=( VideoDecodeH264CapabilitiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoDecodeH264CapabilitiesEXT & operator=( VkVideoDecodeH264CapabilitiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoDecodeH264CapabilitiesEXT const *>( &rhs );
+ return *this;
+ }
+
+ operator VkVideoDecodeH264CapabilitiesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkVideoDecodeH264CapabilitiesEXT *>( this );
+ }
+
+ operator VkVideoDecodeH264CapabilitiesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkVideoDecodeH264CapabilitiesEXT *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( VideoDecodeH264CapabilitiesEXT const & ) const = default;
+# else
+ bool operator==( VideoDecodeH264CapabilitiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( maxLevel == rhs.maxLevel ) &&
+ ( fieldOffsetGranularity == rhs.fieldOffsetGranularity ) &&
+ ( stdExtensionVersion == rhs.stdExtensionVersion );
+ }
+
+ bool operator!=( VideoDecodeH264CapabilitiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoDecodeH264CapabilitiesEXT;
+ void * pNext = {};
+ uint32_t maxLevel = {};
+ VULKAN_HPP_NAMESPACE::Offset2D fieldOffsetGranularity = {};
+ VULKAN_HPP_NAMESPACE::ExtensionProperties stdExtensionVersion = {};
+ };
+ static_assert( sizeof( VideoDecodeH264CapabilitiesEXT ) == sizeof( VkVideoDecodeH264CapabilitiesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<VideoDecodeH264CapabilitiesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eVideoDecodeH264CapabilitiesEXT>
+ {
+ using Type = VideoDecodeH264CapabilitiesEXT;
+ };
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoDecodeH264DpbSlotInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoDecodeH264DpbSlotInfoEXT;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR VideoDecodeH264DpbSlotInfoEXT(
+ const StdVideoDecodeH264ReferenceInfo * pStdReferenceInfo_ = {} ) VULKAN_HPP_NOEXCEPT
+ : pStdReferenceInfo( pStdReferenceInfo_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ VideoDecodeH264DpbSlotInfoEXT( VideoDecodeH264DpbSlotInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoDecodeH264DpbSlotInfoEXT( VkVideoDecodeH264DpbSlotInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : VideoDecodeH264DpbSlotInfoEXT( *reinterpret_cast<VideoDecodeH264DpbSlotInfoEXT const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 VideoDecodeH264DpbSlotInfoEXT &
+ operator=( VideoDecodeH264DpbSlotInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoDecodeH264DpbSlotInfoEXT & operator=( VkVideoDecodeH264DpbSlotInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoDecodeH264DpbSlotInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ VideoDecodeH264DpbSlotInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ VideoDecodeH264DpbSlotInfoEXT &
+ setPStdReferenceInfo( const StdVideoDecodeH264ReferenceInfo * pStdReferenceInfo_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pStdReferenceInfo = pStdReferenceInfo_;
+ return *this;
+ }
+
+ operator VkVideoDecodeH264DpbSlotInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkVideoDecodeH264DpbSlotInfoEXT *>( this );
+ }
+
+ operator VkVideoDecodeH264DpbSlotInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkVideoDecodeH264DpbSlotInfoEXT *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( VideoDecodeH264DpbSlotInfoEXT const & ) const = default;
+# else
+ bool operator==( VideoDecodeH264DpbSlotInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( pStdReferenceInfo == rhs.pStdReferenceInfo );
+ }
+
+ bool operator!=( VideoDecodeH264DpbSlotInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoDecodeH264DpbSlotInfoEXT;
+ const void * pNext = {};
+ const StdVideoDecodeH264ReferenceInfo * pStdReferenceInfo = {};
+ };
+ static_assert( sizeof( VideoDecodeH264DpbSlotInfoEXT ) == sizeof( VkVideoDecodeH264DpbSlotInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<VideoDecodeH264DpbSlotInfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eVideoDecodeH264DpbSlotInfoEXT>
+ {
+ using Type = VideoDecodeH264DpbSlotInfoEXT;
+ };
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoDecodeH264MvcEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoDecodeH264MvcEXT;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR VideoDecodeH264MvcEXT( const StdVideoDecodeH264Mvc * pStdMvc_ = {} ) VULKAN_HPP_NOEXCEPT
+ : pStdMvc( pStdMvc_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR VideoDecodeH264MvcEXT( VideoDecodeH264MvcEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoDecodeH264MvcEXT( VkVideoDecodeH264MvcEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : VideoDecodeH264MvcEXT( *reinterpret_cast<VideoDecodeH264MvcEXT const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 VideoDecodeH264MvcEXT &
+ operator=( VideoDecodeH264MvcEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoDecodeH264MvcEXT & operator=( VkVideoDecodeH264MvcEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoDecodeH264MvcEXT const *>( &rhs );
+ return *this;
+ }
+
+ VideoDecodeH264MvcEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ VideoDecodeH264MvcEXT & setPStdMvc( const StdVideoDecodeH264Mvc * pStdMvc_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pStdMvc = pStdMvc_;
+ return *this;
+ }
+
+ operator VkVideoDecodeH264MvcEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkVideoDecodeH264MvcEXT *>( this );
+ }
+
+ operator VkVideoDecodeH264MvcEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkVideoDecodeH264MvcEXT *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( VideoDecodeH264MvcEXT const & ) const = default;
+# else
+ bool operator==( VideoDecodeH264MvcEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( pStdMvc == rhs.pStdMvc );
+ }
+
+ bool operator!=( VideoDecodeH264MvcEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoDecodeH264MvcEXT;
+ const void * pNext = {};
+ const StdVideoDecodeH264Mvc * pStdMvc = {};
+ };
+ static_assert( sizeof( VideoDecodeH264MvcEXT ) == sizeof( VkVideoDecodeH264MvcEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<VideoDecodeH264MvcEXT>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eVideoDecodeH264MvcEXT>
+ {
+ using Type = VideoDecodeH264MvcEXT;
+ };
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoDecodeH264PictureInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoDecodeH264PictureInfoEXT;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR VideoDecodeH264PictureInfoEXT( const StdVideoDecodeH264PictureInfo * pStdPictureInfo_ = {},
+ uint32_t slicesCount_ = {},
+ const uint32_t * pSlicesDataOffsets_ = {} ) VULKAN_HPP_NOEXCEPT
+ : pStdPictureInfo( pStdPictureInfo_ )
+ , slicesCount( slicesCount_ )
+ , pSlicesDataOffsets( pSlicesDataOffsets_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ VideoDecodeH264PictureInfoEXT( VideoDecodeH264PictureInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoDecodeH264PictureInfoEXT( VkVideoDecodeH264PictureInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : VideoDecodeH264PictureInfoEXT( *reinterpret_cast<VideoDecodeH264PictureInfoEXT const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ VideoDecodeH264PictureInfoEXT(
+ const StdVideoDecodeH264PictureInfo * pStdPictureInfo_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & slicesDataOffsets_ )
+ : pStdPictureInfo( pStdPictureInfo_ )
+ , slicesCount( static_cast<uint32_t>( slicesDataOffsets_.size() ) )
+ , pSlicesDataOffsets( slicesDataOffsets_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 VideoDecodeH264PictureInfoEXT &
+ operator=( VideoDecodeH264PictureInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoDecodeH264PictureInfoEXT & operator=( VkVideoDecodeH264PictureInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoDecodeH264PictureInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ VideoDecodeH264PictureInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ VideoDecodeH264PictureInfoEXT &
+ setPStdPictureInfo( const StdVideoDecodeH264PictureInfo * pStdPictureInfo_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pStdPictureInfo = pStdPictureInfo_;
+ return *this;
+ }
+
+ VideoDecodeH264PictureInfoEXT & setSlicesCount( uint32_t slicesCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ slicesCount = slicesCount_;
+ return *this;
+ }
+
+ VideoDecodeH264PictureInfoEXT & setPSlicesDataOffsets( const uint32_t * pSlicesDataOffsets_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pSlicesDataOffsets = pSlicesDataOffsets_;
+ return *this;
+ }
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ VideoDecodeH264PictureInfoEXT & setSlicesDataOffsets(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & slicesDataOffsets_ ) VULKAN_HPP_NOEXCEPT
+ {
+ slicesCount = static_cast<uint32_t>( slicesDataOffsets_.size() );
+ pSlicesDataOffsets = slicesDataOffsets_.data();
+ return *this;
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkVideoDecodeH264PictureInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkVideoDecodeH264PictureInfoEXT *>( this );
+ }
+
+ operator VkVideoDecodeH264PictureInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkVideoDecodeH264PictureInfoEXT *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( VideoDecodeH264PictureInfoEXT const & ) const = default;
+# else
+ bool operator==( VideoDecodeH264PictureInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( pStdPictureInfo == rhs.pStdPictureInfo ) &&
+ ( slicesCount == rhs.slicesCount ) && ( pSlicesDataOffsets == rhs.pSlicesDataOffsets );
+ }
+
+ bool operator!=( VideoDecodeH264PictureInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoDecodeH264PictureInfoEXT;
+ const void * pNext = {};
+ const StdVideoDecodeH264PictureInfo * pStdPictureInfo = {};
+ uint32_t slicesCount = {};
+ const uint32_t * pSlicesDataOffsets = {};
+ };
+ static_assert( sizeof( VideoDecodeH264PictureInfoEXT ) == sizeof( VkVideoDecodeH264PictureInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<VideoDecodeH264PictureInfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eVideoDecodeH264PictureInfoEXT>
+ {
+ using Type = VideoDecodeH264PictureInfoEXT;
+ };
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoDecodeH264ProfileEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoDecodeH264ProfileEXT;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR VideoDecodeH264ProfileEXT(
+ StdVideoH264ProfileIdc stdProfileIdc_ = {},
+ VULKAN_HPP_NAMESPACE::VideoDecodeH264FieldLayoutFlagsEXT fieldLayout_ = {} ) VULKAN_HPP_NOEXCEPT
+ : stdProfileIdc( stdProfileIdc_ )
+ , fieldLayout( fieldLayout_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ VideoDecodeH264ProfileEXT( VideoDecodeH264ProfileEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoDecodeH264ProfileEXT( VkVideoDecodeH264ProfileEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : VideoDecodeH264ProfileEXT( *reinterpret_cast<VideoDecodeH264ProfileEXT const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 VideoDecodeH264ProfileEXT &
+ operator=( VideoDecodeH264ProfileEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoDecodeH264ProfileEXT & operator=( VkVideoDecodeH264ProfileEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoDecodeH264ProfileEXT const *>( &rhs );
+ return *this;
+ }
+
+ VideoDecodeH264ProfileEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ VideoDecodeH264ProfileEXT & setStdProfileIdc( StdVideoH264ProfileIdc stdProfileIdc_ ) VULKAN_HPP_NOEXCEPT
+ {
+ stdProfileIdc = stdProfileIdc_;
+ return *this;
+ }
+
+ VideoDecodeH264ProfileEXT &
+ setFieldLayout( VULKAN_HPP_NAMESPACE::VideoDecodeH264FieldLayoutFlagsEXT fieldLayout_ ) VULKAN_HPP_NOEXCEPT
+ {
+ fieldLayout = fieldLayout_;
+ return *this;
+ }
+
+ operator VkVideoDecodeH264ProfileEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkVideoDecodeH264ProfileEXT *>( this );
+ }
+
+ operator VkVideoDecodeH264ProfileEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkVideoDecodeH264ProfileEXT *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( VideoDecodeH264ProfileEXT const & ) const = default;
+# else
+ bool operator==( VideoDecodeH264ProfileEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( memcmp( &stdProfileIdc, &rhs.stdProfileIdc, sizeof( StdVideoH264ProfileIdc ) ) == 0 ) &&
+ ( fieldLayout == rhs.fieldLayout );
+ }
+
+ bool operator!=( VideoDecodeH264ProfileEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoDecodeH264ProfileEXT;
+ const void * pNext = {};
+ StdVideoH264ProfileIdc stdProfileIdc = {};
+ VULKAN_HPP_NAMESPACE::VideoDecodeH264FieldLayoutFlagsEXT fieldLayout = {};
+ };
+ static_assert( sizeof( VideoDecodeH264ProfileEXT ) == sizeof( VkVideoDecodeH264ProfileEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<VideoDecodeH264ProfileEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eVideoDecodeH264ProfileEXT>
+ {
+ using Type = VideoDecodeH264ProfileEXT;
+ };
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoDecodeH264SessionCreateInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eVideoDecodeH264SessionCreateInfoEXT;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR_14 VideoDecodeH264SessionCreateInfoEXT(
+ VULKAN_HPP_NAMESPACE::VideoDecodeH264CreateFlagsEXT flags_ = {},
+ const VULKAN_HPP_NAMESPACE::ExtensionProperties * pStdExtensionVersion_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , pStdExtensionVersion( pStdExtensionVersion_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR_14 VideoDecodeH264SessionCreateInfoEXT( VideoDecodeH264SessionCreateInfoEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ VideoDecodeH264SessionCreateInfoEXT( VkVideoDecodeH264SessionCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : VideoDecodeH264SessionCreateInfoEXT( *reinterpret_cast<VideoDecodeH264SessionCreateInfoEXT const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 VideoDecodeH264SessionCreateInfoEXT &
+ operator=( VideoDecodeH264SessionCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoDecodeH264SessionCreateInfoEXT &
+ operator=( VkVideoDecodeH264SessionCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoDecodeH264SessionCreateInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ VideoDecodeH264SessionCreateInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ VideoDecodeH264SessionCreateInfoEXT &
+ setFlags( VULKAN_HPP_NAMESPACE::VideoDecodeH264CreateFlagsEXT flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ VideoDecodeH264SessionCreateInfoEXT & setPStdExtensionVersion(
+ const VULKAN_HPP_NAMESPACE::ExtensionProperties * pStdExtensionVersion_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pStdExtensionVersion = pStdExtensionVersion_;
+ return *this;
+ }
+
+ operator VkVideoDecodeH264SessionCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkVideoDecodeH264SessionCreateInfoEXT *>( this );
+ }
+
+ operator VkVideoDecodeH264SessionCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkVideoDecodeH264SessionCreateInfoEXT *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( VideoDecodeH264SessionCreateInfoEXT const & ) const = default;
+# else
+ bool operator==( VideoDecodeH264SessionCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( pStdExtensionVersion == rhs.pStdExtensionVersion );
+ }
+
+ bool operator!=( VideoDecodeH264SessionCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoDecodeH264SessionCreateInfoEXT;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::VideoDecodeH264CreateFlagsEXT flags = {};
+ const VULKAN_HPP_NAMESPACE::ExtensionProperties * pStdExtensionVersion = {};
+ };
+ static_assert( sizeof( VideoDecodeH264SessionCreateInfoEXT ) == sizeof( VkVideoDecodeH264SessionCreateInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<VideoDecodeH264SessionCreateInfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eVideoDecodeH264SessionCreateInfoEXT>
+ {
+ using Type = VideoDecodeH264SessionCreateInfoEXT;
+ };
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoDecodeH264SessionParametersAddInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eVideoDecodeH264SessionParametersAddInfoEXT;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR VideoDecodeH264SessionParametersAddInfoEXT(
+ uint32_t spsStdCount_ = {},
+ const StdVideoH264SequenceParameterSet * pSpsStd_ = {},
+ uint32_t ppsStdCount_ = {},
+ const StdVideoH264PictureParameterSet * pPpsStd_ = {} ) VULKAN_HPP_NOEXCEPT
+ : spsStdCount( spsStdCount_ )
+ , pSpsStd( pSpsStd_ )
+ , ppsStdCount( ppsStdCount_ )
+ , pPpsStd( pPpsStd_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR VideoDecodeH264SessionParametersAddInfoEXT(
+ VideoDecodeH264SessionParametersAddInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoDecodeH264SessionParametersAddInfoEXT( VkVideoDecodeH264SessionParametersAddInfoEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : VideoDecodeH264SessionParametersAddInfoEXT(
+ *reinterpret_cast<VideoDecodeH264SessionParametersAddInfoEXT const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ VideoDecodeH264SessionParametersAddInfoEXT(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const StdVideoH264SequenceParameterSet> const & spsStd_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const StdVideoH264PictureParameterSet> const & ppsStd_ = {} )
+ : spsStdCount( static_cast<uint32_t>( spsStd_.size() ) )
+ , pSpsStd( spsStd_.data() )
+ , ppsStdCount( static_cast<uint32_t>( ppsStd_.size() ) )
+ , pPpsStd( ppsStd_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 VideoDecodeH264SessionParametersAddInfoEXT &
+ operator=( VideoDecodeH264SessionParametersAddInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoDecodeH264SessionParametersAddInfoEXT &
+ operator=( VkVideoDecodeH264SessionParametersAddInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoDecodeH264SessionParametersAddInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ VideoDecodeH264SessionParametersAddInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ VideoDecodeH264SessionParametersAddInfoEXT & setSpsStdCount( uint32_t spsStdCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ spsStdCount = spsStdCount_;
+ return *this;
+ }
+
+ VideoDecodeH264SessionParametersAddInfoEXT &
+ setPSpsStd( const StdVideoH264SequenceParameterSet * pSpsStd_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pSpsStd = pSpsStd_;
+ return *this;
+ }
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ VideoDecodeH264SessionParametersAddInfoEXT &
+ setSpsStd( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const StdVideoH264SequenceParameterSet> const & spsStd_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ spsStdCount = static_cast<uint32_t>( spsStd_.size() );
+ pSpsStd = spsStd_.data();
+ return *this;
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ VideoDecodeH264SessionParametersAddInfoEXT & setPpsStdCount( uint32_t ppsStdCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ ppsStdCount = ppsStdCount_;
+ return *this;
+ }
+
+ VideoDecodeH264SessionParametersAddInfoEXT &
+ setPPpsStd( const StdVideoH264PictureParameterSet * pPpsStd_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pPpsStd = pPpsStd_;
+ return *this;
+ }
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ VideoDecodeH264SessionParametersAddInfoEXT &
+ setPpsStd( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const StdVideoH264PictureParameterSet> const & ppsStd_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ ppsStdCount = static_cast<uint32_t>( ppsStd_.size() );
+ pPpsStd = ppsStd_.data();
+ return *this;
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkVideoDecodeH264SessionParametersAddInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkVideoDecodeH264SessionParametersAddInfoEXT *>( this );
+ }
+
+ operator VkVideoDecodeH264SessionParametersAddInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkVideoDecodeH264SessionParametersAddInfoEXT *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( VideoDecodeH264SessionParametersAddInfoEXT const & ) const = default;
+# else
+ bool operator==( VideoDecodeH264SessionParametersAddInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( spsStdCount == rhs.spsStdCount ) &&
+ ( pSpsStd == rhs.pSpsStd ) && ( ppsStdCount == rhs.ppsStdCount ) && ( pPpsStd == rhs.pPpsStd );
+ }
+
+ bool operator!=( VideoDecodeH264SessionParametersAddInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoDecodeH264SessionParametersAddInfoEXT;
+ const void * pNext = {};
+ uint32_t spsStdCount = {};
+ const StdVideoH264SequenceParameterSet * pSpsStd = {};
+ uint32_t ppsStdCount = {};
+ const StdVideoH264PictureParameterSet * pPpsStd = {};
+ };
+ static_assert( sizeof( VideoDecodeH264SessionParametersAddInfoEXT ) ==
+ sizeof( VkVideoDecodeH264SessionParametersAddInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<VideoDecodeH264SessionParametersAddInfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eVideoDecodeH264SessionParametersAddInfoEXT>
+ {
+ using Type = VideoDecodeH264SessionParametersAddInfoEXT;
+ };
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoDecodeH264SessionParametersCreateInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eVideoDecodeH264SessionParametersCreateInfoEXT;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR VideoDecodeH264SessionParametersCreateInfoEXT(
+ uint32_t maxSpsStdCount_ = {},
+ uint32_t maxPpsStdCount_ = {},
+ const VULKAN_HPP_NAMESPACE::VideoDecodeH264SessionParametersAddInfoEXT * pParametersAddInfo_ = {} )
+ VULKAN_HPP_NOEXCEPT
+ : maxSpsStdCount( maxSpsStdCount_ )
+ , maxPpsStdCount( maxPpsStdCount_ )
+ , pParametersAddInfo( pParametersAddInfo_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR VideoDecodeH264SessionParametersCreateInfoEXT(
+ VideoDecodeH264SessionParametersCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoDecodeH264SessionParametersCreateInfoEXT( VkVideoDecodeH264SessionParametersCreateInfoEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : VideoDecodeH264SessionParametersCreateInfoEXT(
+ *reinterpret_cast<VideoDecodeH264SessionParametersCreateInfoEXT const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 VideoDecodeH264SessionParametersCreateInfoEXT &
+ operator=( VideoDecodeH264SessionParametersCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoDecodeH264SessionParametersCreateInfoEXT &
+ operator=( VkVideoDecodeH264SessionParametersCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoDecodeH264SessionParametersCreateInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ VideoDecodeH264SessionParametersCreateInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ VideoDecodeH264SessionParametersCreateInfoEXT & setMaxSpsStdCount( uint32_t maxSpsStdCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ maxSpsStdCount = maxSpsStdCount_;
+ return *this;
+ }
+
+ VideoDecodeH264SessionParametersCreateInfoEXT & setMaxPpsStdCount( uint32_t maxPpsStdCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ maxPpsStdCount = maxPpsStdCount_;
+ return *this;
+ }
+
+ VideoDecodeH264SessionParametersCreateInfoEXT & setPParametersAddInfo(
+ const VULKAN_HPP_NAMESPACE::VideoDecodeH264SessionParametersAddInfoEXT * pParametersAddInfo_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pParametersAddInfo = pParametersAddInfo_;
+ return *this;
+ }
+
+ operator VkVideoDecodeH264SessionParametersCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkVideoDecodeH264SessionParametersCreateInfoEXT *>( this );
+ }
+
+ operator VkVideoDecodeH264SessionParametersCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkVideoDecodeH264SessionParametersCreateInfoEXT *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( VideoDecodeH264SessionParametersCreateInfoEXT const & ) const = default;
+# else
+ bool operator==( VideoDecodeH264SessionParametersCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( maxSpsStdCount == rhs.maxSpsStdCount ) &&
+ ( maxPpsStdCount == rhs.maxPpsStdCount ) && ( pParametersAddInfo == rhs.pParametersAddInfo );
+ }
+
+ bool operator!=( VideoDecodeH264SessionParametersCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoDecodeH264SessionParametersCreateInfoEXT;
+ const void * pNext = {};
+ uint32_t maxSpsStdCount = {};
+ uint32_t maxPpsStdCount = {};
+ const VULKAN_HPP_NAMESPACE::VideoDecodeH264SessionParametersAddInfoEXT * pParametersAddInfo = {};
+ };
+ static_assert( sizeof( VideoDecodeH264SessionParametersCreateInfoEXT ) ==
+ sizeof( VkVideoDecodeH264SessionParametersCreateInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<VideoDecodeH264SessionParametersCreateInfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eVideoDecodeH264SessionParametersCreateInfoEXT>
+ {
+ using Type = VideoDecodeH264SessionParametersCreateInfoEXT;
+ };
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoDecodeH265CapabilitiesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoDecodeH265CapabilitiesEXT;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR_14 VideoDecodeH265CapabilitiesEXT(
+ uint32_t maxLevel_ = {}, VULKAN_HPP_NAMESPACE::ExtensionProperties stdExtensionVersion_ = {} ) VULKAN_HPP_NOEXCEPT
+ : maxLevel( maxLevel_ )
+ , stdExtensionVersion( stdExtensionVersion_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR_14
+ VideoDecodeH265CapabilitiesEXT( VideoDecodeH265CapabilitiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoDecodeH265CapabilitiesEXT( VkVideoDecodeH265CapabilitiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : VideoDecodeH265CapabilitiesEXT( *reinterpret_cast<VideoDecodeH265CapabilitiesEXT const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 VideoDecodeH265CapabilitiesEXT &
+ operator=( VideoDecodeH265CapabilitiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoDecodeH265CapabilitiesEXT & operator=( VkVideoDecodeH265CapabilitiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoDecodeH265CapabilitiesEXT const *>( &rhs );
+ return *this;
+ }
+
+ operator VkVideoDecodeH265CapabilitiesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkVideoDecodeH265CapabilitiesEXT *>( this );
+ }
+
+ operator VkVideoDecodeH265CapabilitiesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkVideoDecodeH265CapabilitiesEXT *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( VideoDecodeH265CapabilitiesEXT const & ) const = default;
+# else
+ bool operator==( VideoDecodeH265CapabilitiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( maxLevel == rhs.maxLevel ) &&
+ ( stdExtensionVersion == rhs.stdExtensionVersion );
+ }
+
+ bool operator!=( VideoDecodeH265CapabilitiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoDecodeH265CapabilitiesEXT;
+ void * pNext = {};
+ uint32_t maxLevel = {};
+ VULKAN_HPP_NAMESPACE::ExtensionProperties stdExtensionVersion = {};
+ };
+ static_assert( sizeof( VideoDecodeH265CapabilitiesEXT ) == sizeof( VkVideoDecodeH265CapabilitiesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<VideoDecodeH265CapabilitiesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eVideoDecodeH265CapabilitiesEXT>
+ {
+ using Type = VideoDecodeH265CapabilitiesEXT;
+ };
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoDecodeH265DpbSlotInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoDecodeH265DpbSlotInfoEXT;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR VideoDecodeH265DpbSlotInfoEXT(
+ const StdVideoDecodeH265ReferenceInfo * pStdReferenceInfo_ = {} ) VULKAN_HPP_NOEXCEPT
+ : pStdReferenceInfo( pStdReferenceInfo_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ VideoDecodeH265DpbSlotInfoEXT( VideoDecodeH265DpbSlotInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoDecodeH265DpbSlotInfoEXT( VkVideoDecodeH265DpbSlotInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : VideoDecodeH265DpbSlotInfoEXT( *reinterpret_cast<VideoDecodeH265DpbSlotInfoEXT const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 VideoDecodeH265DpbSlotInfoEXT &
+ operator=( VideoDecodeH265DpbSlotInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoDecodeH265DpbSlotInfoEXT & operator=( VkVideoDecodeH265DpbSlotInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoDecodeH265DpbSlotInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ VideoDecodeH265DpbSlotInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ VideoDecodeH265DpbSlotInfoEXT &
+ setPStdReferenceInfo( const StdVideoDecodeH265ReferenceInfo * pStdReferenceInfo_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pStdReferenceInfo = pStdReferenceInfo_;
+ return *this;
+ }
+
+ operator VkVideoDecodeH265DpbSlotInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkVideoDecodeH265DpbSlotInfoEXT *>( this );
+ }
+
+ operator VkVideoDecodeH265DpbSlotInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkVideoDecodeH265DpbSlotInfoEXT *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( VideoDecodeH265DpbSlotInfoEXT const & ) const = default;
+# else
+ bool operator==( VideoDecodeH265DpbSlotInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( pStdReferenceInfo == rhs.pStdReferenceInfo );
+ }
+
+ bool operator!=( VideoDecodeH265DpbSlotInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoDecodeH265DpbSlotInfoEXT;
+ const void * pNext = {};
+ const StdVideoDecodeH265ReferenceInfo * pStdReferenceInfo = {};
+ };
+ static_assert( sizeof( VideoDecodeH265DpbSlotInfoEXT ) == sizeof( VkVideoDecodeH265DpbSlotInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<VideoDecodeH265DpbSlotInfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eVideoDecodeH265DpbSlotInfoEXT>
+ {
+ using Type = VideoDecodeH265DpbSlotInfoEXT;
+ };
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoDecodeH265PictureInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoDecodeH265PictureInfoEXT;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR VideoDecodeH265PictureInfoEXT( StdVideoDecodeH265PictureInfo * pStdPictureInfo_ = {},
+ uint32_t slicesCount_ = {},
+ const uint32_t * pSlicesDataOffsets_ = {} ) VULKAN_HPP_NOEXCEPT
+ : pStdPictureInfo( pStdPictureInfo_ )
+ , slicesCount( slicesCount_ )
+ , pSlicesDataOffsets( pSlicesDataOffsets_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ VideoDecodeH265PictureInfoEXT( VideoDecodeH265PictureInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoDecodeH265PictureInfoEXT( VkVideoDecodeH265PictureInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : VideoDecodeH265PictureInfoEXT( *reinterpret_cast<VideoDecodeH265PictureInfoEXT const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ VideoDecodeH265PictureInfoEXT(
+ StdVideoDecodeH265PictureInfo * pStdPictureInfo_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & slicesDataOffsets_ )
+ : pStdPictureInfo( pStdPictureInfo_ )
+ , slicesCount( static_cast<uint32_t>( slicesDataOffsets_.size() ) )
+ , pSlicesDataOffsets( slicesDataOffsets_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 VideoDecodeH265PictureInfoEXT &
+ operator=( VideoDecodeH265PictureInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoDecodeH265PictureInfoEXT & operator=( VkVideoDecodeH265PictureInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoDecodeH265PictureInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ VideoDecodeH265PictureInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ VideoDecodeH265PictureInfoEXT &
+ setPStdPictureInfo( StdVideoDecodeH265PictureInfo * pStdPictureInfo_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pStdPictureInfo = pStdPictureInfo_;
+ return *this;
+ }
+
+ VideoDecodeH265PictureInfoEXT & setSlicesCount( uint32_t slicesCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ slicesCount = slicesCount_;
+ return *this;
+ }
+
+ VideoDecodeH265PictureInfoEXT & setPSlicesDataOffsets( const uint32_t * pSlicesDataOffsets_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pSlicesDataOffsets = pSlicesDataOffsets_;
+ return *this;
+ }
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ VideoDecodeH265PictureInfoEXT & setSlicesDataOffsets(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & slicesDataOffsets_ ) VULKAN_HPP_NOEXCEPT
+ {
+ slicesCount = static_cast<uint32_t>( slicesDataOffsets_.size() );
+ pSlicesDataOffsets = slicesDataOffsets_.data();
+ return *this;
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkVideoDecodeH265PictureInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkVideoDecodeH265PictureInfoEXT *>( this );
+ }
+
+ operator VkVideoDecodeH265PictureInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkVideoDecodeH265PictureInfoEXT *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( VideoDecodeH265PictureInfoEXT const & ) const = default;
+# else
+ bool operator==( VideoDecodeH265PictureInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( pStdPictureInfo == rhs.pStdPictureInfo ) &&
+ ( slicesCount == rhs.slicesCount ) && ( pSlicesDataOffsets == rhs.pSlicesDataOffsets );
+ }
+
+ bool operator!=( VideoDecodeH265PictureInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoDecodeH265PictureInfoEXT;
+ const void * pNext = {};
+ StdVideoDecodeH265PictureInfo * pStdPictureInfo = {};
+ uint32_t slicesCount = {};
+ const uint32_t * pSlicesDataOffsets = {};
+ };
+ static_assert( sizeof( VideoDecodeH265PictureInfoEXT ) == sizeof( VkVideoDecodeH265PictureInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<VideoDecodeH265PictureInfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eVideoDecodeH265PictureInfoEXT>
+ {
+ using Type = VideoDecodeH265PictureInfoEXT;
+ };
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoDecodeH265ProfileEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoDecodeH265ProfileEXT;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR VideoDecodeH265ProfileEXT( StdVideoH265ProfileIdc stdProfileIdc_ = {} ) VULKAN_HPP_NOEXCEPT
+ : stdProfileIdc( stdProfileIdc_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ VideoDecodeH265ProfileEXT( VideoDecodeH265ProfileEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoDecodeH265ProfileEXT( VkVideoDecodeH265ProfileEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : VideoDecodeH265ProfileEXT( *reinterpret_cast<VideoDecodeH265ProfileEXT const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 VideoDecodeH265ProfileEXT &
+ operator=( VideoDecodeH265ProfileEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoDecodeH265ProfileEXT & operator=( VkVideoDecodeH265ProfileEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoDecodeH265ProfileEXT const *>( &rhs );
+ return *this;
+ }
+
+ VideoDecodeH265ProfileEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ VideoDecodeH265ProfileEXT & setStdProfileIdc( StdVideoH265ProfileIdc stdProfileIdc_ ) VULKAN_HPP_NOEXCEPT
+ {
+ stdProfileIdc = stdProfileIdc_;
+ return *this;
+ }
+
+ operator VkVideoDecodeH265ProfileEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkVideoDecodeH265ProfileEXT *>( this );
+ }
+
+ operator VkVideoDecodeH265ProfileEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkVideoDecodeH265ProfileEXT *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( VideoDecodeH265ProfileEXT const & ) const = default;
+# else
+ bool operator==( VideoDecodeH265ProfileEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( memcmp( &stdProfileIdc, &rhs.stdProfileIdc, sizeof( StdVideoH265ProfileIdc ) ) == 0 );
+ }
+
+ bool operator!=( VideoDecodeH265ProfileEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoDecodeH265ProfileEXT;
+ const void * pNext = {};
+ StdVideoH265ProfileIdc stdProfileIdc = {};
+ };
+ static_assert( sizeof( VideoDecodeH265ProfileEXT ) == sizeof( VkVideoDecodeH265ProfileEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<VideoDecodeH265ProfileEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eVideoDecodeH265ProfileEXT>
+ {
+ using Type = VideoDecodeH265ProfileEXT;
+ };
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoDecodeH265SessionCreateInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eVideoDecodeH265SessionCreateInfoEXT;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR_14 VideoDecodeH265SessionCreateInfoEXT(
+ VULKAN_HPP_NAMESPACE::VideoDecodeH265CreateFlagsEXT flags_ = {},
+ const VULKAN_HPP_NAMESPACE::ExtensionProperties * pStdExtensionVersion_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , pStdExtensionVersion( pStdExtensionVersion_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR_14 VideoDecodeH265SessionCreateInfoEXT( VideoDecodeH265SessionCreateInfoEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ VideoDecodeH265SessionCreateInfoEXT( VkVideoDecodeH265SessionCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : VideoDecodeH265SessionCreateInfoEXT( *reinterpret_cast<VideoDecodeH265SessionCreateInfoEXT const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 VideoDecodeH265SessionCreateInfoEXT &
+ operator=( VideoDecodeH265SessionCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoDecodeH265SessionCreateInfoEXT &
+ operator=( VkVideoDecodeH265SessionCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoDecodeH265SessionCreateInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ VideoDecodeH265SessionCreateInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ VideoDecodeH265SessionCreateInfoEXT &
+ setFlags( VULKAN_HPP_NAMESPACE::VideoDecodeH265CreateFlagsEXT flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ VideoDecodeH265SessionCreateInfoEXT & setPStdExtensionVersion(
+ const VULKAN_HPP_NAMESPACE::ExtensionProperties * pStdExtensionVersion_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pStdExtensionVersion = pStdExtensionVersion_;
+ return *this;
+ }
+
+ operator VkVideoDecodeH265SessionCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkVideoDecodeH265SessionCreateInfoEXT *>( this );
+ }
+
+ operator VkVideoDecodeH265SessionCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkVideoDecodeH265SessionCreateInfoEXT *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( VideoDecodeH265SessionCreateInfoEXT const & ) const = default;
+# else
+ bool operator==( VideoDecodeH265SessionCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( pStdExtensionVersion == rhs.pStdExtensionVersion );
+ }
+
+ bool operator!=( VideoDecodeH265SessionCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoDecodeH265SessionCreateInfoEXT;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::VideoDecodeH265CreateFlagsEXT flags = {};
+ const VULKAN_HPP_NAMESPACE::ExtensionProperties * pStdExtensionVersion = {};
+ };
+ static_assert( sizeof( VideoDecodeH265SessionCreateInfoEXT ) == sizeof( VkVideoDecodeH265SessionCreateInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<VideoDecodeH265SessionCreateInfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eVideoDecodeH265SessionCreateInfoEXT>
+ {
+ using Type = VideoDecodeH265SessionCreateInfoEXT;
+ };
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoDecodeH265SessionParametersAddInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eVideoDecodeH265SessionParametersAddInfoEXT;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR VideoDecodeH265SessionParametersAddInfoEXT(
+ uint32_t spsStdCount_ = {},
+ const StdVideoH265SequenceParameterSet * pSpsStd_ = {},
+ uint32_t ppsStdCount_ = {},
+ const StdVideoH265PictureParameterSet * pPpsStd_ = {} ) VULKAN_HPP_NOEXCEPT
+ : spsStdCount( spsStdCount_ )
+ , pSpsStd( pSpsStd_ )
+ , ppsStdCount( ppsStdCount_ )
+ , pPpsStd( pPpsStd_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR VideoDecodeH265SessionParametersAddInfoEXT(
+ VideoDecodeH265SessionParametersAddInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoDecodeH265SessionParametersAddInfoEXT( VkVideoDecodeH265SessionParametersAddInfoEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : VideoDecodeH265SessionParametersAddInfoEXT(
+ *reinterpret_cast<VideoDecodeH265SessionParametersAddInfoEXT const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ VideoDecodeH265SessionParametersAddInfoEXT(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const StdVideoH265SequenceParameterSet> const & spsStd_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const StdVideoH265PictureParameterSet> const & ppsStd_ = {} )
+ : spsStdCount( static_cast<uint32_t>( spsStd_.size() ) )
+ , pSpsStd( spsStd_.data() )
+ , ppsStdCount( static_cast<uint32_t>( ppsStd_.size() ) )
+ , pPpsStd( ppsStd_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 VideoDecodeH265SessionParametersAddInfoEXT &
+ operator=( VideoDecodeH265SessionParametersAddInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoDecodeH265SessionParametersAddInfoEXT &
+ operator=( VkVideoDecodeH265SessionParametersAddInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoDecodeH265SessionParametersAddInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ VideoDecodeH265SessionParametersAddInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ VideoDecodeH265SessionParametersAddInfoEXT & setSpsStdCount( uint32_t spsStdCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ spsStdCount = spsStdCount_;
+ return *this;
+ }
+
+ VideoDecodeH265SessionParametersAddInfoEXT &
+ setPSpsStd( const StdVideoH265SequenceParameterSet * pSpsStd_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pSpsStd = pSpsStd_;
+ return *this;
+ }
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ VideoDecodeH265SessionParametersAddInfoEXT &
+ setSpsStd( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const StdVideoH265SequenceParameterSet> const & spsStd_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ spsStdCount = static_cast<uint32_t>( spsStd_.size() );
+ pSpsStd = spsStd_.data();
+ return *this;
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ VideoDecodeH265SessionParametersAddInfoEXT & setPpsStdCount( uint32_t ppsStdCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ ppsStdCount = ppsStdCount_;
+ return *this;
+ }
+
+ VideoDecodeH265SessionParametersAddInfoEXT &
+ setPPpsStd( const StdVideoH265PictureParameterSet * pPpsStd_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pPpsStd = pPpsStd_;
+ return *this;
+ }
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ VideoDecodeH265SessionParametersAddInfoEXT &
+ setPpsStd( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const StdVideoH265PictureParameterSet> const & ppsStd_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ ppsStdCount = static_cast<uint32_t>( ppsStd_.size() );
+ pPpsStd = ppsStd_.data();
+ return *this;
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkVideoDecodeH265SessionParametersAddInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkVideoDecodeH265SessionParametersAddInfoEXT *>( this );
+ }
+
+ operator VkVideoDecodeH265SessionParametersAddInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkVideoDecodeH265SessionParametersAddInfoEXT *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( VideoDecodeH265SessionParametersAddInfoEXT const & ) const = default;
+# else
+ bool operator==( VideoDecodeH265SessionParametersAddInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( spsStdCount == rhs.spsStdCount ) &&
+ ( pSpsStd == rhs.pSpsStd ) && ( ppsStdCount == rhs.ppsStdCount ) && ( pPpsStd == rhs.pPpsStd );
+ }
+
+ bool operator!=( VideoDecodeH265SessionParametersAddInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoDecodeH265SessionParametersAddInfoEXT;
+ const void * pNext = {};
+ uint32_t spsStdCount = {};
+ const StdVideoH265SequenceParameterSet * pSpsStd = {};
+ uint32_t ppsStdCount = {};
+ const StdVideoH265PictureParameterSet * pPpsStd = {};
+ };
+ static_assert( sizeof( VideoDecodeH265SessionParametersAddInfoEXT ) ==
+ sizeof( VkVideoDecodeH265SessionParametersAddInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<VideoDecodeH265SessionParametersAddInfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eVideoDecodeH265SessionParametersAddInfoEXT>
+ {
+ using Type = VideoDecodeH265SessionParametersAddInfoEXT;
+ };
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoDecodeH265SessionParametersCreateInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eVideoDecodeH265SessionParametersCreateInfoEXT;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR VideoDecodeH265SessionParametersCreateInfoEXT(
+ uint32_t maxSpsStdCount_ = {},
+ uint32_t maxPpsStdCount_ = {},
+ const VULKAN_HPP_NAMESPACE::VideoDecodeH265SessionParametersAddInfoEXT * pParametersAddInfo_ = {} )
+ VULKAN_HPP_NOEXCEPT
+ : maxSpsStdCount( maxSpsStdCount_ )
+ , maxPpsStdCount( maxPpsStdCount_ )
+ , pParametersAddInfo( pParametersAddInfo_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR VideoDecodeH265SessionParametersCreateInfoEXT(
+ VideoDecodeH265SessionParametersCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoDecodeH265SessionParametersCreateInfoEXT( VkVideoDecodeH265SessionParametersCreateInfoEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : VideoDecodeH265SessionParametersCreateInfoEXT(
+ *reinterpret_cast<VideoDecodeH265SessionParametersCreateInfoEXT const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 VideoDecodeH265SessionParametersCreateInfoEXT &
+ operator=( VideoDecodeH265SessionParametersCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoDecodeH265SessionParametersCreateInfoEXT &
+ operator=( VkVideoDecodeH265SessionParametersCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoDecodeH265SessionParametersCreateInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ VideoDecodeH265SessionParametersCreateInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ VideoDecodeH265SessionParametersCreateInfoEXT & setMaxSpsStdCount( uint32_t maxSpsStdCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ maxSpsStdCount = maxSpsStdCount_;
+ return *this;
+ }
+
+ VideoDecodeH265SessionParametersCreateInfoEXT & setMaxPpsStdCount( uint32_t maxPpsStdCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ maxPpsStdCount = maxPpsStdCount_;
+ return *this;
+ }
+
+ VideoDecodeH265SessionParametersCreateInfoEXT & setPParametersAddInfo(
+ const VULKAN_HPP_NAMESPACE::VideoDecodeH265SessionParametersAddInfoEXT * pParametersAddInfo_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pParametersAddInfo = pParametersAddInfo_;
+ return *this;
+ }
+
+ operator VkVideoDecodeH265SessionParametersCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkVideoDecodeH265SessionParametersCreateInfoEXT *>( this );
+ }
+
+ operator VkVideoDecodeH265SessionParametersCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkVideoDecodeH265SessionParametersCreateInfoEXT *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( VideoDecodeH265SessionParametersCreateInfoEXT const & ) const = default;
+# else
+ bool operator==( VideoDecodeH265SessionParametersCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( maxSpsStdCount == rhs.maxSpsStdCount ) &&
+ ( maxPpsStdCount == rhs.maxPpsStdCount ) && ( pParametersAddInfo == rhs.pParametersAddInfo );
+ }
+
+ bool operator!=( VideoDecodeH265SessionParametersCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoDecodeH265SessionParametersCreateInfoEXT;
+ const void * pNext = {};
+ uint32_t maxSpsStdCount = {};
+ uint32_t maxPpsStdCount = {};
+ const VULKAN_HPP_NAMESPACE::VideoDecodeH265SessionParametersAddInfoEXT * pParametersAddInfo = {};
+ };
+ static_assert( sizeof( VideoDecodeH265SessionParametersCreateInfoEXT ) ==
+ sizeof( VkVideoDecodeH265SessionParametersCreateInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<VideoDecodeH265SessionParametersCreateInfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eVideoDecodeH265SessionParametersCreateInfoEXT>
+ {
+ using Type = VideoDecodeH265SessionParametersCreateInfoEXT;
+ };
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoDecodeInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoDecodeInfoKHR;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR VideoDecodeInfoKHR(
+ VULKAN_HPP_NAMESPACE::VideoDecodeFlagsKHR flags_ = {},
+ VULKAN_HPP_NAMESPACE::Offset2D codedOffset_ = {},
+ VULKAN_HPP_NAMESPACE::Extent2D codedExtent_ = {},
+ VULKAN_HPP_NAMESPACE::Buffer srcBuffer_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize srcBufferOffset_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize srcBufferRange_ = {},
+ VULKAN_HPP_NAMESPACE::VideoPictureResourceKHR dstPictureResource_ = {},
+ const VULKAN_HPP_NAMESPACE::VideoReferenceSlotKHR * pSetupReferenceSlot_ = {},
+ uint32_t referenceSlotCount_ = {},
+ const VULKAN_HPP_NAMESPACE::VideoReferenceSlotKHR * pReferenceSlots_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , codedOffset( codedOffset_ )
+ , codedExtent( codedExtent_ )
+ , srcBuffer( srcBuffer_ )
+ , srcBufferOffset( srcBufferOffset_ )
+ , srcBufferRange( srcBufferRange_ )
+ , dstPictureResource( dstPictureResource_ )
+ , pSetupReferenceSlot( pSetupReferenceSlot_ )
+ , referenceSlotCount( referenceSlotCount_ )
+ , pReferenceSlots( pReferenceSlots_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR VideoDecodeInfoKHR( VideoDecodeInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoDecodeInfoKHR( VkVideoDecodeInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : VideoDecodeInfoKHR( *reinterpret_cast<VideoDecodeInfoKHR const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ VideoDecodeInfoKHR(
+ VULKAN_HPP_NAMESPACE::VideoDecodeFlagsKHR flags_,
+ VULKAN_HPP_NAMESPACE::Offset2D codedOffset_,
+ VULKAN_HPP_NAMESPACE::Extent2D codedExtent_,
+ VULKAN_HPP_NAMESPACE::Buffer srcBuffer_,
+ VULKAN_HPP_NAMESPACE::DeviceSize srcBufferOffset_,
+ VULKAN_HPP_NAMESPACE::DeviceSize srcBufferRange_,
+ VULKAN_HPP_NAMESPACE::VideoPictureResourceKHR dstPictureResource_,
+ const VULKAN_HPP_NAMESPACE::VideoReferenceSlotKHR * pSetupReferenceSlot_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::VideoReferenceSlotKHR> const &
+ referenceSlots_ )
+ : flags( flags_ )
+ , codedOffset( codedOffset_ )
+ , codedExtent( codedExtent_ )
+ , srcBuffer( srcBuffer_ )
+ , srcBufferOffset( srcBufferOffset_ )
+ , srcBufferRange( srcBufferRange_ )
+ , dstPictureResource( dstPictureResource_ )
+ , pSetupReferenceSlot( pSetupReferenceSlot_ )
+ , referenceSlotCount( static_cast<uint32_t>( referenceSlots_.size() ) )
+ , pReferenceSlots( referenceSlots_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 VideoDecodeInfoKHR &
+ operator=( VideoDecodeInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoDecodeInfoKHR & operator=( VkVideoDecodeInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoDecodeInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ VideoDecodeInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ VideoDecodeInfoKHR & setFlags( VULKAN_HPP_NAMESPACE::VideoDecodeFlagsKHR flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ VideoDecodeInfoKHR & setCodedOffset( VULKAN_HPP_NAMESPACE::Offset2D const & codedOffset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ codedOffset = codedOffset_;
+ return *this;
+ }
+
+ VideoDecodeInfoKHR & setCodedExtent( VULKAN_HPP_NAMESPACE::Extent2D const & codedExtent_ ) VULKAN_HPP_NOEXCEPT
+ {
+ codedExtent = codedExtent_;
+ return *this;
+ }
+
+ VideoDecodeInfoKHR & setSrcBuffer( VULKAN_HPP_NAMESPACE::Buffer srcBuffer_ ) VULKAN_HPP_NOEXCEPT
+ {
+ srcBuffer = srcBuffer_;
+ return *this;
+ }
+
+ VideoDecodeInfoKHR & setSrcBufferOffset( VULKAN_HPP_NAMESPACE::DeviceSize srcBufferOffset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ srcBufferOffset = srcBufferOffset_;
+ return *this;
+ }
+
+ VideoDecodeInfoKHR & setSrcBufferRange( VULKAN_HPP_NAMESPACE::DeviceSize srcBufferRange_ ) VULKAN_HPP_NOEXCEPT
+ {
+ srcBufferRange = srcBufferRange_;
+ return *this;
+ }
+
+ VideoDecodeInfoKHR & setDstPictureResource(
+ VULKAN_HPP_NAMESPACE::VideoPictureResourceKHR const & dstPictureResource_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstPictureResource = dstPictureResource_;
+ return *this;
+ }
+
+ VideoDecodeInfoKHR & setPSetupReferenceSlot(
+ const VULKAN_HPP_NAMESPACE::VideoReferenceSlotKHR * pSetupReferenceSlot_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pSetupReferenceSlot = pSetupReferenceSlot_;
+ return *this;
+ }
+
+ VideoDecodeInfoKHR & setReferenceSlotCount( uint32_t referenceSlotCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ referenceSlotCount = referenceSlotCount_;
+ return *this;
+ }
+
+ VideoDecodeInfoKHR &
+ setPReferenceSlots( const VULKAN_HPP_NAMESPACE::VideoReferenceSlotKHR * pReferenceSlots_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pReferenceSlots = pReferenceSlots_;
+ return *this;
+ }
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ VideoDecodeInfoKHR & setReferenceSlots(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::VideoReferenceSlotKHR> const &
+ referenceSlots_ ) VULKAN_HPP_NOEXCEPT
+ {
+ referenceSlotCount = static_cast<uint32_t>( referenceSlots_.size() );
+ pReferenceSlots = referenceSlots_.data();
+ return *this;
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkVideoDecodeInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkVideoDecodeInfoKHR *>( this );
+ }
+
+ operator VkVideoDecodeInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkVideoDecodeInfoKHR *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( VideoDecodeInfoKHR const & ) const = default;
+# else
+ bool operator==( VideoDecodeInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( codedOffset == rhs.codedOffset ) && ( codedExtent == rhs.codedExtent ) &&
+ ( srcBuffer == rhs.srcBuffer ) && ( srcBufferOffset == rhs.srcBufferOffset ) &&
+ ( srcBufferRange == rhs.srcBufferRange ) && ( dstPictureResource == rhs.dstPictureResource ) &&
+ ( pSetupReferenceSlot == rhs.pSetupReferenceSlot ) && ( referenceSlotCount == rhs.referenceSlotCount ) &&
+ ( pReferenceSlots == rhs.pReferenceSlots );
+ }
+
+ bool operator!=( VideoDecodeInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoDecodeInfoKHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::VideoDecodeFlagsKHR flags = {};
+ VULKAN_HPP_NAMESPACE::Offset2D codedOffset = {};
+ VULKAN_HPP_NAMESPACE::Extent2D codedExtent = {};
+ VULKAN_HPP_NAMESPACE::Buffer srcBuffer = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize srcBufferOffset = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize srcBufferRange = {};
+ VULKAN_HPP_NAMESPACE::VideoPictureResourceKHR dstPictureResource = {};
+ const VULKAN_HPP_NAMESPACE::VideoReferenceSlotKHR * pSetupReferenceSlot = {};
+ uint32_t referenceSlotCount = {};
+ const VULKAN_HPP_NAMESPACE::VideoReferenceSlotKHR * pReferenceSlots = {};
+ };
+ static_assert( sizeof( VideoDecodeInfoKHR ) == sizeof( VkVideoDecodeInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<VideoDecodeInfoKHR>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eVideoDecodeInfoKHR>
+ {
+ using Type = VideoDecodeInfoKHR;
+ };
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoEncodeH264CapabilitiesEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoEncodeH264CapabilitiesEXT;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264CapabilitiesEXT(
+ VULKAN_HPP_NAMESPACE::VideoEncodeH264CapabilitiesFlagsEXT flags_ = {},
+ VULKAN_HPP_NAMESPACE::VideoEncodeH264InputModeFlagsEXT inputModeFlags_ = {},
+ VULKAN_HPP_NAMESPACE::VideoEncodeH264OutputModeFlagsEXT outputModeFlags_ = {},
+ VULKAN_HPP_NAMESPACE::Extent2D minPictureSizeInMbs_ = {},
+ VULKAN_HPP_NAMESPACE::Extent2D maxPictureSizeInMbs_ = {},
+ VULKAN_HPP_NAMESPACE::Extent2D inputImageDataAlignment_ = {},
+ uint8_t maxNumL0ReferenceForP_ = {},
+ uint8_t maxNumL0ReferenceForB_ = {},
+ uint8_t maxNumL1Reference_ = {},
+ uint8_t qualityLevelCount_ = {},
+ VULKAN_HPP_NAMESPACE::ExtensionProperties stdExtensionVersion_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , inputModeFlags( inputModeFlags_ )
+ , outputModeFlags( outputModeFlags_ )
+ , minPictureSizeInMbs( minPictureSizeInMbs_ )
+ , maxPictureSizeInMbs( maxPictureSizeInMbs_ )
+ , inputImageDataAlignment( inputImageDataAlignment_ )
+ , maxNumL0ReferenceForP( maxNumL0ReferenceForP_ )
+ , maxNumL0ReferenceForB( maxNumL0ReferenceForB_ )
+ , maxNumL1Reference( maxNumL1Reference_ )
+ , qualityLevelCount( qualityLevelCount_ )
+ , stdExtensionVersion( stdExtensionVersion_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR_14
+ VideoEncodeH264CapabilitiesEXT( VideoEncodeH264CapabilitiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoEncodeH264CapabilitiesEXT( VkVideoEncodeH264CapabilitiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : VideoEncodeH264CapabilitiesEXT( *reinterpret_cast<VideoEncodeH264CapabilitiesEXT const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264CapabilitiesEXT &
+ operator=( VideoEncodeH264CapabilitiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoEncodeH264CapabilitiesEXT & operator=( VkVideoEncodeH264CapabilitiesEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoEncodeH264CapabilitiesEXT const *>( &rhs );
+ return *this;
+ }
+
+ VideoEncodeH264CapabilitiesEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ VideoEncodeH264CapabilitiesEXT &
+ setFlags( VULKAN_HPP_NAMESPACE::VideoEncodeH264CapabilitiesFlagsEXT flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ VideoEncodeH264CapabilitiesEXT &
+ setInputModeFlags( VULKAN_HPP_NAMESPACE::VideoEncodeH264InputModeFlagsEXT inputModeFlags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ inputModeFlags = inputModeFlags_;
+ return *this;
+ }
+
+ VideoEncodeH264CapabilitiesEXT &
+ setOutputModeFlags( VULKAN_HPP_NAMESPACE::VideoEncodeH264OutputModeFlagsEXT outputModeFlags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ outputModeFlags = outputModeFlags_;
+ return *this;
+ }
+
+ VideoEncodeH264CapabilitiesEXT &
+ setMinPictureSizeInMbs( VULKAN_HPP_NAMESPACE::Extent2D const & minPictureSizeInMbs_ ) VULKAN_HPP_NOEXCEPT
+ {
+ minPictureSizeInMbs = minPictureSizeInMbs_;
+ return *this;
+ }
+
+ VideoEncodeH264CapabilitiesEXT &
+ setMaxPictureSizeInMbs( VULKAN_HPP_NAMESPACE::Extent2D const & maxPictureSizeInMbs_ ) VULKAN_HPP_NOEXCEPT
+ {
+ maxPictureSizeInMbs = maxPictureSizeInMbs_;
+ return *this;
+ }
+
+ VideoEncodeH264CapabilitiesEXT &
+ setInputImageDataAlignment( VULKAN_HPP_NAMESPACE::Extent2D const & inputImageDataAlignment_ ) VULKAN_HPP_NOEXCEPT
+ {
+ inputImageDataAlignment = inputImageDataAlignment_;
+ return *this;
+ }
+
+ VideoEncodeH264CapabilitiesEXT & setMaxNumL0ReferenceForP( uint8_t maxNumL0ReferenceForP_ ) VULKAN_HPP_NOEXCEPT
+ {
+ maxNumL0ReferenceForP = maxNumL0ReferenceForP_;
+ return *this;
+ }
+
+ VideoEncodeH264CapabilitiesEXT & setMaxNumL0ReferenceForB( uint8_t maxNumL0ReferenceForB_ ) VULKAN_HPP_NOEXCEPT
+ {
+ maxNumL0ReferenceForB = maxNumL0ReferenceForB_;
+ return *this;
+ }
+
+ VideoEncodeH264CapabilitiesEXT & setMaxNumL1Reference( uint8_t maxNumL1Reference_ ) VULKAN_HPP_NOEXCEPT
+ {
+ maxNumL1Reference = maxNumL1Reference_;
+ return *this;
+ }
+
+ VideoEncodeH264CapabilitiesEXT & setQualityLevelCount( uint8_t qualityLevelCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ qualityLevelCount = qualityLevelCount_;
+ return *this;
+ }
+
+ VideoEncodeH264CapabilitiesEXT & setStdExtensionVersion(
+ VULKAN_HPP_NAMESPACE::ExtensionProperties const & stdExtensionVersion_ ) VULKAN_HPP_NOEXCEPT
+ {
+ stdExtensionVersion = stdExtensionVersion_;
+ return *this;
+ }
+
+ operator VkVideoEncodeH264CapabilitiesEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkVideoEncodeH264CapabilitiesEXT *>( this );
+ }
+
+ operator VkVideoEncodeH264CapabilitiesEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkVideoEncodeH264CapabilitiesEXT *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( VideoEncodeH264CapabilitiesEXT const & ) const = default;
+# else
+ bool operator==( VideoEncodeH264CapabilitiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( inputModeFlags == rhs.inputModeFlags ) && ( outputModeFlags == rhs.outputModeFlags ) &&
+ ( minPictureSizeInMbs == rhs.minPictureSizeInMbs ) && ( maxPictureSizeInMbs == rhs.maxPictureSizeInMbs ) &&
+ ( inputImageDataAlignment == rhs.inputImageDataAlignment ) &&
+ ( maxNumL0ReferenceForP == rhs.maxNumL0ReferenceForP ) &&
+ ( maxNumL0ReferenceForB == rhs.maxNumL0ReferenceForB ) && ( maxNumL1Reference == rhs.maxNumL1Reference ) &&
+ ( qualityLevelCount == rhs.qualityLevelCount ) && ( stdExtensionVersion == rhs.stdExtensionVersion );
+ }
+
+ bool operator!=( VideoEncodeH264CapabilitiesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoEncodeH264CapabilitiesEXT;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::VideoEncodeH264CapabilitiesFlagsEXT flags = {};
+ VULKAN_HPP_NAMESPACE::VideoEncodeH264InputModeFlagsEXT inputModeFlags = {};
+ VULKAN_HPP_NAMESPACE::VideoEncodeH264OutputModeFlagsEXT outputModeFlags = {};
+ VULKAN_HPP_NAMESPACE::Extent2D minPictureSizeInMbs = {};
+ VULKAN_HPP_NAMESPACE::Extent2D maxPictureSizeInMbs = {};
+ VULKAN_HPP_NAMESPACE::Extent2D inputImageDataAlignment = {};
+ uint8_t maxNumL0ReferenceForP = {};
+ uint8_t maxNumL0ReferenceForB = {};
+ uint8_t maxNumL1Reference = {};
+ uint8_t qualityLevelCount = {};
+ VULKAN_HPP_NAMESPACE::ExtensionProperties stdExtensionVersion = {};
+ };
+ static_assert( sizeof( VideoEncodeH264CapabilitiesEXT ) == sizeof( VkVideoEncodeH264CapabilitiesEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<VideoEncodeH264CapabilitiesEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eVideoEncodeH264CapabilitiesEXT>
+ {
+ using Type = VideoEncodeH264CapabilitiesEXT;
+ };
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoEncodeH264DpbSlotInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoEncodeH264DpbSlotInfoEXT;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ VideoEncodeH264DpbSlotInfoEXT( int8_t slotIndex_ = {},
+ const StdVideoEncodeH264PictureInfo * pStdPictureInfo_ = {} ) VULKAN_HPP_NOEXCEPT
+ : slotIndex( slotIndex_ )
+ , pStdPictureInfo( pStdPictureInfo_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ VideoEncodeH264DpbSlotInfoEXT( VideoEncodeH264DpbSlotInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoEncodeH264DpbSlotInfoEXT( VkVideoEncodeH264DpbSlotInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : VideoEncodeH264DpbSlotInfoEXT( *reinterpret_cast<VideoEncodeH264DpbSlotInfoEXT const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264DpbSlotInfoEXT &
+ operator=( VideoEncodeH264DpbSlotInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoEncodeH264DpbSlotInfoEXT & operator=( VkVideoEncodeH264DpbSlotInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoEncodeH264DpbSlotInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ VideoEncodeH264DpbSlotInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ VideoEncodeH264DpbSlotInfoEXT & setSlotIndex( int8_t slotIndex_ ) VULKAN_HPP_NOEXCEPT
+ {
+ slotIndex = slotIndex_;
+ return *this;
+ }
+
+ VideoEncodeH264DpbSlotInfoEXT &
+ setPStdPictureInfo( const StdVideoEncodeH264PictureInfo * pStdPictureInfo_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pStdPictureInfo = pStdPictureInfo_;
+ return *this;
+ }
+
+ operator VkVideoEncodeH264DpbSlotInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkVideoEncodeH264DpbSlotInfoEXT *>( this );
+ }
+
+ operator VkVideoEncodeH264DpbSlotInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkVideoEncodeH264DpbSlotInfoEXT *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( VideoEncodeH264DpbSlotInfoEXT const & ) const = default;
+# else
+ bool operator==( VideoEncodeH264DpbSlotInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( slotIndex == rhs.slotIndex ) &&
+ ( pStdPictureInfo == rhs.pStdPictureInfo );
+ }
+
+ bool operator!=( VideoEncodeH264DpbSlotInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoEncodeH264DpbSlotInfoEXT;
+ const void * pNext = {};
+ int8_t slotIndex = {};
+ const StdVideoEncodeH264PictureInfo * pStdPictureInfo = {};
+ };
+ static_assert( sizeof( VideoEncodeH264DpbSlotInfoEXT ) == sizeof( VkVideoEncodeH264DpbSlotInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<VideoEncodeH264DpbSlotInfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eVideoEncodeH264DpbSlotInfoEXT>
+ {
+ using Type = VideoEncodeH264DpbSlotInfoEXT;
+ };
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoEncodeH264EmitPictureParametersEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eVideoEncodeH264EmitPictureParametersEXT;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ VideoEncodeH264EmitPictureParametersEXT( uint8_t spsId_ = {},
+ VULKAN_HPP_NAMESPACE::Bool32 emitSpsEnable_ = {},
+ uint32_t ppsIdEntryCount_ = {},
+ const uint8_t * ppsIdEntries_ = {} ) VULKAN_HPP_NOEXCEPT
+ : spsId( spsId_ )
+ , emitSpsEnable( emitSpsEnable_ )
+ , ppsIdEntryCount( ppsIdEntryCount_ )
+ , ppsIdEntries( ppsIdEntries_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR VideoEncodeH264EmitPictureParametersEXT( VideoEncodeH264EmitPictureParametersEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ VideoEncodeH264EmitPictureParametersEXT( VkVideoEncodeH264EmitPictureParametersEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : VideoEncodeH264EmitPictureParametersEXT(
+ *reinterpret_cast<VideoEncodeH264EmitPictureParametersEXT const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ VideoEncodeH264EmitPictureParametersEXT(
+ uint8_t spsId_,
+ VULKAN_HPP_NAMESPACE::Bool32 emitSpsEnable_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint8_t> const & psIdEntries_ )
+ : spsId( spsId_ )
+ , emitSpsEnable( emitSpsEnable_ )
+ , ppsIdEntryCount( static_cast<uint32_t>( psIdEntries_.size() ) )
+ , ppsIdEntries( psIdEntries_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264EmitPictureParametersEXT &
+ operator=( VideoEncodeH264EmitPictureParametersEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoEncodeH264EmitPictureParametersEXT &
+ operator=( VkVideoEncodeH264EmitPictureParametersEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoEncodeH264EmitPictureParametersEXT const *>( &rhs );
+ return *this;
+ }
+
+ VideoEncodeH264EmitPictureParametersEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ VideoEncodeH264EmitPictureParametersEXT & setSpsId( uint8_t spsId_ ) VULKAN_HPP_NOEXCEPT
+ {
+ spsId = spsId_;
+ return *this;
+ }
+
+ VideoEncodeH264EmitPictureParametersEXT &
+ setEmitSpsEnable( VULKAN_HPP_NAMESPACE::Bool32 emitSpsEnable_ ) VULKAN_HPP_NOEXCEPT
+ {
+ emitSpsEnable = emitSpsEnable_;
+ return *this;
+ }
+
+ VideoEncodeH264EmitPictureParametersEXT & setPpsIdEntryCount( uint32_t ppsIdEntryCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ ppsIdEntryCount = ppsIdEntryCount_;
+ return *this;
+ }
+
+ VideoEncodeH264EmitPictureParametersEXT & setPpsIdEntries( const uint8_t * ppsIdEntries_ ) VULKAN_HPP_NOEXCEPT
+ {
+ ppsIdEntries = ppsIdEntries_;
+ return *this;
+ }
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ VideoEncodeH264EmitPictureParametersEXT & setPsIdEntries(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint8_t> const & psIdEntries_ ) VULKAN_HPP_NOEXCEPT
+ {
+ ppsIdEntryCount = static_cast<uint32_t>( psIdEntries_.size() );
+ ppsIdEntries = psIdEntries_.data();
+ return *this;
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkVideoEncodeH264EmitPictureParametersEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkVideoEncodeH264EmitPictureParametersEXT *>( this );
+ }
+
+ operator VkVideoEncodeH264EmitPictureParametersEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkVideoEncodeH264EmitPictureParametersEXT *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( VideoEncodeH264EmitPictureParametersEXT const & ) const = default;
+# else
+ bool operator==( VideoEncodeH264EmitPictureParametersEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( spsId == rhs.spsId ) &&
+ ( emitSpsEnable == rhs.emitSpsEnable ) && ( ppsIdEntryCount == rhs.ppsIdEntryCount ) &&
+ ( ppsIdEntries == rhs.ppsIdEntries );
+ }
+
+ bool operator!=( VideoEncodeH264EmitPictureParametersEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoEncodeH264EmitPictureParametersEXT;
+ const void * pNext = {};
+ uint8_t spsId = {};
+ VULKAN_HPP_NAMESPACE::Bool32 emitSpsEnable = {};
+ uint32_t ppsIdEntryCount = {};
+ const uint8_t * ppsIdEntries = {};
+ };
+ static_assert( sizeof( VideoEncodeH264EmitPictureParametersEXT ) ==
+ sizeof( VkVideoEncodeH264EmitPictureParametersEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<VideoEncodeH264EmitPictureParametersEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eVideoEncodeH264EmitPictureParametersEXT>
+ {
+ using Type = VideoEncodeH264EmitPictureParametersEXT;
+ };
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoEncodeH264NaluSliceEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoEncodeH264NaluSliceEXT;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR VideoEncodeH264NaluSliceEXT(
+ const StdVideoEncodeH264SliceHeader * pSliceHeaderStd_ = {},
+ uint32_t mbCount_ = {},
+ uint8_t refFinalList0EntryCount_ = {},
+ const VULKAN_HPP_NAMESPACE::VideoEncodeH264DpbSlotInfoEXT * pRefFinalList0Entries_ = {},
+ uint8_t refFinalList1EntryCount_ = {},
+ const VULKAN_HPP_NAMESPACE::VideoEncodeH264DpbSlotInfoEXT * pRefFinalList1Entries_ = {},
+ uint32_t precedingNaluBytes_ = {},
+ uint8_t minQp_ = {},
+ uint8_t maxQp_ = {} ) VULKAN_HPP_NOEXCEPT
+ : pSliceHeaderStd( pSliceHeaderStd_ )
+ , mbCount( mbCount_ )
+ , refFinalList0EntryCount( refFinalList0EntryCount_ )
+ , pRefFinalList0Entries( pRefFinalList0Entries_ )
+ , refFinalList1EntryCount( refFinalList1EntryCount_ )
+ , pRefFinalList1Entries( pRefFinalList1Entries_ )
+ , precedingNaluBytes( precedingNaluBytes_ )
+ , minQp( minQp_ )
+ , maxQp( maxQp_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ VideoEncodeH264NaluSliceEXT( VideoEncodeH264NaluSliceEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoEncodeH264NaluSliceEXT( VkVideoEncodeH264NaluSliceEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : VideoEncodeH264NaluSliceEXT( *reinterpret_cast<VideoEncodeH264NaluSliceEXT const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ VideoEncodeH264NaluSliceEXT(
+ const StdVideoEncodeH264SliceHeader * pSliceHeaderStd_,
+ uint32_t mbCount_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::VideoEncodeH264DpbSlotInfoEXT> const &
+ refFinalList0Entries_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::VideoEncodeH264DpbSlotInfoEXT> const &
+ refFinalList1Entries_ = {},
+ uint32_t precedingNaluBytes_ = {},
+ uint8_t minQp_ = {},
+ uint8_t maxQp_ = {} )
+ : pSliceHeaderStd( pSliceHeaderStd_ )
+ , mbCount( mbCount_ )
+ , refFinalList0EntryCount( static_cast<uint8_t>( refFinalList0Entries_.size() ) )
+ , pRefFinalList0Entries( refFinalList0Entries_.data() )
+ , refFinalList1EntryCount( static_cast<uint8_t>( refFinalList1Entries_.size() ) )
+ , pRefFinalList1Entries( refFinalList1Entries_.data() )
+ , precedingNaluBytes( precedingNaluBytes_ )
+ , minQp( minQp_ )
+ , maxQp( maxQp_ )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264NaluSliceEXT &
+ operator=( VideoEncodeH264NaluSliceEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoEncodeH264NaluSliceEXT & operator=( VkVideoEncodeH264NaluSliceEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoEncodeH264NaluSliceEXT const *>( &rhs );
+ return *this;
+ }
+
+ VideoEncodeH264NaluSliceEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ VideoEncodeH264NaluSliceEXT &
+ setPSliceHeaderStd( const StdVideoEncodeH264SliceHeader * pSliceHeaderStd_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pSliceHeaderStd = pSliceHeaderStd_;
+ return *this;
+ }
+
+ VideoEncodeH264NaluSliceEXT & setMbCount( uint32_t mbCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ mbCount = mbCount_;
+ return *this;
+ }
+
+ VideoEncodeH264NaluSliceEXT & setRefFinalList0EntryCount( uint8_t refFinalList0EntryCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ refFinalList0EntryCount = refFinalList0EntryCount_;
+ return *this;
+ }
+
+ VideoEncodeH264NaluSliceEXT & setPRefFinalList0Entries(
+ const VULKAN_HPP_NAMESPACE::VideoEncodeH264DpbSlotInfoEXT * pRefFinalList0Entries_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pRefFinalList0Entries = pRefFinalList0Entries_;
+ return *this;
+ }
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ VideoEncodeH264NaluSliceEXT & setRefFinalList0Entries(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::VideoEncodeH264DpbSlotInfoEXT> const &
+ refFinalList0Entries_ ) VULKAN_HPP_NOEXCEPT
+ {
+ refFinalList0EntryCount = static_cast<uint8_t>( refFinalList0Entries_.size() );
+ pRefFinalList0Entries = refFinalList0Entries_.data();
+ return *this;
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ VideoEncodeH264NaluSliceEXT & setRefFinalList1EntryCount( uint8_t refFinalList1EntryCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ refFinalList1EntryCount = refFinalList1EntryCount_;
+ return *this;
+ }
+
+ VideoEncodeH264NaluSliceEXT & setPRefFinalList1Entries(
+ const VULKAN_HPP_NAMESPACE::VideoEncodeH264DpbSlotInfoEXT * pRefFinalList1Entries_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pRefFinalList1Entries = pRefFinalList1Entries_;
+ return *this;
+ }
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ VideoEncodeH264NaluSliceEXT & setRefFinalList1Entries(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::VideoEncodeH264DpbSlotInfoEXT> const &
+ refFinalList1Entries_ ) VULKAN_HPP_NOEXCEPT
+ {
+ refFinalList1EntryCount = static_cast<uint8_t>( refFinalList1Entries_.size() );
+ pRefFinalList1Entries = refFinalList1Entries_.data();
+ return *this;
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ VideoEncodeH264NaluSliceEXT & setPrecedingNaluBytes( uint32_t precedingNaluBytes_ ) VULKAN_HPP_NOEXCEPT
+ {
+ precedingNaluBytes = precedingNaluBytes_;
+ return *this;
+ }
+
+ VideoEncodeH264NaluSliceEXT & setMinQp( uint8_t minQp_ ) VULKAN_HPP_NOEXCEPT
+ {
+ minQp = minQp_;
+ return *this;
+ }
+
+ VideoEncodeH264NaluSliceEXT & setMaxQp( uint8_t maxQp_ ) VULKAN_HPP_NOEXCEPT
+ {
+ maxQp = maxQp_;
+ return *this;
+ }
+
+ operator VkVideoEncodeH264NaluSliceEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkVideoEncodeH264NaluSliceEXT *>( this );
+ }
+
+ operator VkVideoEncodeH264NaluSliceEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkVideoEncodeH264NaluSliceEXT *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( VideoEncodeH264NaluSliceEXT const & ) const = default;
+# else
+ bool operator==( VideoEncodeH264NaluSliceEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( pSliceHeaderStd == rhs.pSliceHeaderStd ) &&
+ ( mbCount == rhs.mbCount ) && ( refFinalList0EntryCount == rhs.refFinalList0EntryCount ) &&
+ ( pRefFinalList0Entries == rhs.pRefFinalList0Entries ) &&
+ ( refFinalList1EntryCount == rhs.refFinalList1EntryCount ) &&
+ ( pRefFinalList1Entries == rhs.pRefFinalList1Entries ) &&
+ ( precedingNaluBytes == rhs.precedingNaluBytes ) && ( minQp == rhs.minQp ) && ( maxQp == rhs.maxQp );
+ }
+
+ bool operator!=( VideoEncodeH264NaluSliceEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoEncodeH264NaluSliceEXT;
+ const void * pNext = {};
+ const StdVideoEncodeH264SliceHeader * pSliceHeaderStd = {};
+ uint32_t mbCount = {};
+ uint8_t refFinalList0EntryCount = {};
+ const VULKAN_HPP_NAMESPACE::VideoEncodeH264DpbSlotInfoEXT * pRefFinalList0Entries = {};
+ uint8_t refFinalList1EntryCount = {};
+ const VULKAN_HPP_NAMESPACE::VideoEncodeH264DpbSlotInfoEXT * pRefFinalList1Entries = {};
+ uint32_t precedingNaluBytes = {};
+ uint8_t minQp = {};
+ uint8_t maxQp = {};
+ };
+ static_assert( sizeof( VideoEncodeH264NaluSliceEXT ) == sizeof( VkVideoEncodeH264NaluSliceEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<VideoEncodeH264NaluSliceEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eVideoEncodeH264NaluSliceEXT>
+ {
+ using Type = VideoEncodeH264NaluSliceEXT;
+ };
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoEncodeH264ProfileEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoEncodeH264ProfileEXT;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR VideoEncodeH264ProfileEXT( StdVideoH264ProfileIdc stdProfileIdc_ = {} ) VULKAN_HPP_NOEXCEPT
+ : stdProfileIdc( stdProfileIdc_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ VideoEncodeH264ProfileEXT( VideoEncodeH264ProfileEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoEncodeH264ProfileEXT( VkVideoEncodeH264ProfileEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : VideoEncodeH264ProfileEXT( *reinterpret_cast<VideoEncodeH264ProfileEXT const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264ProfileEXT &
+ operator=( VideoEncodeH264ProfileEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoEncodeH264ProfileEXT & operator=( VkVideoEncodeH264ProfileEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoEncodeH264ProfileEXT const *>( &rhs );
+ return *this;
+ }
+
+ VideoEncodeH264ProfileEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ VideoEncodeH264ProfileEXT & setStdProfileIdc( StdVideoH264ProfileIdc stdProfileIdc_ ) VULKAN_HPP_NOEXCEPT
+ {
+ stdProfileIdc = stdProfileIdc_;
+ return *this;
+ }
+
+ operator VkVideoEncodeH264ProfileEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkVideoEncodeH264ProfileEXT *>( this );
+ }
+
+ operator VkVideoEncodeH264ProfileEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkVideoEncodeH264ProfileEXT *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( VideoEncodeH264ProfileEXT const & ) const = default;
+# else
+ bool operator==( VideoEncodeH264ProfileEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( memcmp( &stdProfileIdc, &rhs.stdProfileIdc, sizeof( StdVideoH264ProfileIdc ) ) == 0 );
+ }
+
+ bool operator!=( VideoEncodeH264ProfileEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoEncodeH264ProfileEXT;
+ const void * pNext = {};
+ StdVideoH264ProfileIdc stdProfileIdc = {};
+ };
+ static_assert( sizeof( VideoEncodeH264ProfileEXT ) == sizeof( VkVideoEncodeH264ProfileEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<VideoEncodeH264ProfileEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eVideoEncodeH264ProfileEXT>
+ {
+ using Type = VideoEncodeH264ProfileEXT;
+ };
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoEncodeH264SessionCreateInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eVideoEncodeH264SessionCreateInfoEXT;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264SessionCreateInfoEXT(
+ VULKAN_HPP_NAMESPACE::VideoEncodeH264CreateFlagsEXT flags_ = {},
+ VULKAN_HPP_NAMESPACE::Extent2D maxPictureSizeInMbs_ = {},
+ const VULKAN_HPP_NAMESPACE::ExtensionProperties * pStdExtensionVersion_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , maxPictureSizeInMbs( maxPictureSizeInMbs_ )
+ , pStdExtensionVersion( pStdExtensionVersion_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264SessionCreateInfoEXT( VideoEncodeH264SessionCreateInfoEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ VideoEncodeH264SessionCreateInfoEXT( VkVideoEncodeH264SessionCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : VideoEncodeH264SessionCreateInfoEXT( *reinterpret_cast<VideoEncodeH264SessionCreateInfoEXT const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264SessionCreateInfoEXT &
+ operator=( VideoEncodeH264SessionCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoEncodeH264SessionCreateInfoEXT &
+ operator=( VkVideoEncodeH264SessionCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoEncodeH264SessionCreateInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ VideoEncodeH264SessionCreateInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ VideoEncodeH264SessionCreateInfoEXT &
+ setFlags( VULKAN_HPP_NAMESPACE::VideoEncodeH264CreateFlagsEXT flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ VideoEncodeH264SessionCreateInfoEXT &
+ setMaxPictureSizeInMbs( VULKAN_HPP_NAMESPACE::Extent2D const & maxPictureSizeInMbs_ ) VULKAN_HPP_NOEXCEPT
+ {
+ maxPictureSizeInMbs = maxPictureSizeInMbs_;
+ return *this;
+ }
+
+ VideoEncodeH264SessionCreateInfoEXT & setPStdExtensionVersion(
+ const VULKAN_HPP_NAMESPACE::ExtensionProperties * pStdExtensionVersion_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pStdExtensionVersion = pStdExtensionVersion_;
+ return *this;
+ }
+
+ operator VkVideoEncodeH264SessionCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkVideoEncodeH264SessionCreateInfoEXT *>( this );
+ }
+
+ operator VkVideoEncodeH264SessionCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkVideoEncodeH264SessionCreateInfoEXT *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( VideoEncodeH264SessionCreateInfoEXT const & ) const = default;
+# else
+ bool operator==( VideoEncodeH264SessionCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( maxPictureSizeInMbs == rhs.maxPictureSizeInMbs ) && ( pStdExtensionVersion == rhs.pStdExtensionVersion );
+ }
+
+ bool operator!=( VideoEncodeH264SessionCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoEncodeH264SessionCreateInfoEXT;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::VideoEncodeH264CreateFlagsEXT flags = {};
+ VULKAN_HPP_NAMESPACE::Extent2D maxPictureSizeInMbs = {};
+ const VULKAN_HPP_NAMESPACE::ExtensionProperties * pStdExtensionVersion = {};
+ };
+ static_assert( sizeof( VideoEncodeH264SessionCreateInfoEXT ) == sizeof( VkVideoEncodeH264SessionCreateInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<VideoEncodeH264SessionCreateInfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eVideoEncodeH264SessionCreateInfoEXT>
+ {
+ using Type = VideoEncodeH264SessionCreateInfoEXT;
+ };
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoEncodeH264SessionParametersAddInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eVideoEncodeH264SessionParametersAddInfoEXT;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR VideoEncodeH264SessionParametersAddInfoEXT(
+ uint32_t spsStdCount_ = {},
+ const StdVideoH264SequenceParameterSet * pSpsStd_ = {},
+ uint32_t ppsStdCount_ = {},
+ const StdVideoH264PictureParameterSet * pPpsStd_ = {} ) VULKAN_HPP_NOEXCEPT
+ : spsStdCount( spsStdCount_ )
+ , pSpsStd( pSpsStd_ )
+ , ppsStdCount( ppsStdCount_ )
+ , pPpsStd( pPpsStd_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR VideoEncodeH264SessionParametersAddInfoEXT(
+ VideoEncodeH264SessionParametersAddInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoEncodeH264SessionParametersAddInfoEXT( VkVideoEncodeH264SessionParametersAddInfoEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : VideoEncodeH264SessionParametersAddInfoEXT(
+ *reinterpret_cast<VideoEncodeH264SessionParametersAddInfoEXT const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ VideoEncodeH264SessionParametersAddInfoEXT(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const StdVideoH264SequenceParameterSet> const & spsStd_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const StdVideoH264PictureParameterSet> const & ppsStd_ = {} )
+ : spsStdCount( static_cast<uint32_t>( spsStd_.size() ) )
+ , pSpsStd( spsStd_.data() )
+ , ppsStdCount( static_cast<uint32_t>( ppsStd_.size() ) )
+ , pPpsStd( ppsStd_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264SessionParametersAddInfoEXT &
+ operator=( VideoEncodeH264SessionParametersAddInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoEncodeH264SessionParametersAddInfoEXT &
+ operator=( VkVideoEncodeH264SessionParametersAddInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoEncodeH264SessionParametersAddInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ VideoEncodeH264SessionParametersAddInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ VideoEncodeH264SessionParametersAddInfoEXT & setSpsStdCount( uint32_t spsStdCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ spsStdCount = spsStdCount_;
+ return *this;
+ }
+
+ VideoEncodeH264SessionParametersAddInfoEXT &
+ setPSpsStd( const StdVideoH264SequenceParameterSet * pSpsStd_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pSpsStd = pSpsStd_;
+ return *this;
+ }
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ VideoEncodeH264SessionParametersAddInfoEXT &
+ setSpsStd( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const StdVideoH264SequenceParameterSet> const & spsStd_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ spsStdCount = static_cast<uint32_t>( spsStd_.size() );
+ pSpsStd = spsStd_.data();
+ return *this;
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ VideoEncodeH264SessionParametersAddInfoEXT & setPpsStdCount( uint32_t ppsStdCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ ppsStdCount = ppsStdCount_;
+ return *this;
+ }
+
+ VideoEncodeH264SessionParametersAddInfoEXT &
+ setPPpsStd( const StdVideoH264PictureParameterSet * pPpsStd_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pPpsStd = pPpsStd_;
+ return *this;
+ }
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ VideoEncodeH264SessionParametersAddInfoEXT &
+ setPpsStd( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const StdVideoH264PictureParameterSet> const & ppsStd_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ ppsStdCount = static_cast<uint32_t>( ppsStd_.size() );
+ pPpsStd = ppsStd_.data();
+ return *this;
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkVideoEncodeH264SessionParametersAddInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkVideoEncodeH264SessionParametersAddInfoEXT *>( this );
+ }
+
+ operator VkVideoEncodeH264SessionParametersAddInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkVideoEncodeH264SessionParametersAddInfoEXT *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( VideoEncodeH264SessionParametersAddInfoEXT const & ) const = default;
+# else
+ bool operator==( VideoEncodeH264SessionParametersAddInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( spsStdCount == rhs.spsStdCount ) &&
+ ( pSpsStd == rhs.pSpsStd ) && ( ppsStdCount == rhs.ppsStdCount ) && ( pPpsStd == rhs.pPpsStd );
+ }
+
+ bool operator!=( VideoEncodeH264SessionParametersAddInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoEncodeH264SessionParametersAddInfoEXT;
+ const void * pNext = {};
+ uint32_t spsStdCount = {};
+ const StdVideoH264SequenceParameterSet * pSpsStd = {};
+ uint32_t ppsStdCount = {};
+ const StdVideoH264PictureParameterSet * pPpsStd = {};
+ };
+ static_assert( sizeof( VideoEncodeH264SessionParametersAddInfoEXT ) ==
+ sizeof( VkVideoEncodeH264SessionParametersAddInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<VideoEncodeH264SessionParametersAddInfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eVideoEncodeH264SessionParametersAddInfoEXT>
+ {
+ using Type = VideoEncodeH264SessionParametersAddInfoEXT;
+ };
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoEncodeH264SessionParametersCreateInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eVideoEncodeH264SessionParametersCreateInfoEXT;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR VideoEncodeH264SessionParametersCreateInfoEXT(
+ uint32_t maxSpsStdCount_ = {},
+ uint32_t maxPpsStdCount_ = {},
+ const VULKAN_HPP_NAMESPACE::VideoEncodeH264SessionParametersAddInfoEXT * pParametersAddInfo_ = {} )
+ VULKAN_HPP_NOEXCEPT
+ : maxSpsStdCount( maxSpsStdCount_ )
+ , maxPpsStdCount( maxPpsStdCount_ )
+ , pParametersAddInfo( pParametersAddInfo_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR VideoEncodeH264SessionParametersCreateInfoEXT(
+ VideoEncodeH264SessionParametersCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoEncodeH264SessionParametersCreateInfoEXT( VkVideoEncodeH264SessionParametersCreateInfoEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : VideoEncodeH264SessionParametersCreateInfoEXT(
+ *reinterpret_cast<VideoEncodeH264SessionParametersCreateInfoEXT const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264SessionParametersCreateInfoEXT &
+ operator=( VideoEncodeH264SessionParametersCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoEncodeH264SessionParametersCreateInfoEXT &
+ operator=( VkVideoEncodeH264SessionParametersCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoEncodeH264SessionParametersCreateInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ VideoEncodeH264SessionParametersCreateInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ VideoEncodeH264SessionParametersCreateInfoEXT & setMaxSpsStdCount( uint32_t maxSpsStdCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ maxSpsStdCount = maxSpsStdCount_;
+ return *this;
+ }
+
+ VideoEncodeH264SessionParametersCreateInfoEXT & setMaxPpsStdCount( uint32_t maxPpsStdCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ maxPpsStdCount = maxPpsStdCount_;
+ return *this;
+ }
+
+ VideoEncodeH264SessionParametersCreateInfoEXT & setPParametersAddInfo(
+ const VULKAN_HPP_NAMESPACE::VideoEncodeH264SessionParametersAddInfoEXT * pParametersAddInfo_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pParametersAddInfo = pParametersAddInfo_;
+ return *this;
+ }
+
+ operator VkVideoEncodeH264SessionParametersCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkVideoEncodeH264SessionParametersCreateInfoEXT *>( this );
+ }
+
+ operator VkVideoEncodeH264SessionParametersCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkVideoEncodeH264SessionParametersCreateInfoEXT *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( VideoEncodeH264SessionParametersCreateInfoEXT const & ) const = default;
+# else
+ bool operator==( VideoEncodeH264SessionParametersCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( maxSpsStdCount == rhs.maxSpsStdCount ) &&
+ ( maxPpsStdCount == rhs.maxPpsStdCount ) && ( pParametersAddInfo == rhs.pParametersAddInfo );
+ }
+
+ bool operator!=( VideoEncodeH264SessionParametersCreateInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoEncodeH264SessionParametersCreateInfoEXT;
+ const void * pNext = {};
+ uint32_t maxSpsStdCount = {};
+ uint32_t maxPpsStdCount = {};
+ const VULKAN_HPP_NAMESPACE::VideoEncodeH264SessionParametersAddInfoEXT * pParametersAddInfo = {};
+ };
+ static_assert( sizeof( VideoEncodeH264SessionParametersCreateInfoEXT ) ==
+ sizeof( VkVideoEncodeH264SessionParametersCreateInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<VideoEncodeH264SessionParametersCreateInfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eVideoEncodeH264SessionParametersCreateInfoEXT>
+ {
+ using Type = VideoEncodeH264SessionParametersCreateInfoEXT;
+ };
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoEncodeH264VclFrameInfoEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoEncodeH264VclFrameInfoEXT;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR VideoEncodeH264VclFrameInfoEXT(
+ uint8_t refDefaultFinalList0EntryCount_ = {},
+ const VULKAN_HPP_NAMESPACE::VideoEncodeH264DpbSlotInfoEXT * pRefDefaultFinalList0Entries_ = {},
+ uint8_t refDefaultFinalList1EntryCount_ = {},
+ const VULKAN_HPP_NAMESPACE::VideoEncodeH264DpbSlotInfoEXT * pRefDefaultFinalList1Entries_ = {},
+ uint32_t naluSliceEntryCount_ = {},
+ const VULKAN_HPP_NAMESPACE::VideoEncodeH264NaluSliceEXT * pNaluSliceEntries_ = {},
+ const VULKAN_HPP_NAMESPACE::VideoEncodeH264DpbSlotInfoEXT * pCurrentPictureInfo_ = {} ) VULKAN_HPP_NOEXCEPT
+ : refDefaultFinalList0EntryCount( refDefaultFinalList0EntryCount_ )
+ , pRefDefaultFinalList0Entries( pRefDefaultFinalList0Entries_ )
+ , refDefaultFinalList1EntryCount( refDefaultFinalList1EntryCount_ )
+ , pRefDefaultFinalList1Entries( pRefDefaultFinalList1Entries_ )
+ , naluSliceEntryCount( naluSliceEntryCount_ )
+ , pNaluSliceEntries( pNaluSliceEntries_ )
+ , pCurrentPictureInfo( pCurrentPictureInfo_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ VideoEncodeH264VclFrameInfoEXT( VideoEncodeH264VclFrameInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoEncodeH264VclFrameInfoEXT( VkVideoEncodeH264VclFrameInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : VideoEncodeH264VclFrameInfoEXT( *reinterpret_cast<VideoEncodeH264VclFrameInfoEXT const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ VideoEncodeH264VclFrameInfoEXT(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::VideoEncodeH264DpbSlotInfoEXT> const &
+ refDefaultFinalList0Entries_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::VideoEncodeH264DpbSlotInfoEXT> const &
+ refDefaultFinalList1Entries_ = {},
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::VideoEncodeH264NaluSliceEXT> const &
+ naluSliceEntries_ = {},
+ const VULKAN_HPP_NAMESPACE::VideoEncodeH264DpbSlotInfoEXT * pCurrentPictureInfo_ = {} )
+ : refDefaultFinalList0EntryCount( static_cast<uint8_t>( refDefaultFinalList0Entries_.size() ) )
+ , pRefDefaultFinalList0Entries( refDefaultFinalList0Entries_.data() )
+ , refDefaultFinalList1EntryCount( static_cast<uint8_t>( refDefaultFinalList1Entries_.size() ) )
+ , pRefDefaultFinalList1Entries( refDefaultFinalList1Entries_.data() )
+ , naluSliceEntryCount( static_cast<uint32_t>( naluSliceEntries_.size() ) )
+ , pNaluSliceEntries( naluSliceEntries_.data() )
+ , pCurrentPictureInfo( pCurrentPictureInfo_ )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264VclFrameInfoEXT &
+ operator=( VideoEncodeH264VclFrameInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoEncodeH264VclFrameInfoEXT & operator=( VkVideoEncodeH264VclFrameInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoEncodeH264VclFrameInfoEXT const *>( &rhs );
+ return *this;
+ }
+
+ VideoEncodeH264VclFrameInfoEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ VideoEncodeH264VclFrameInfoEXT &
+ setRefDefaultFinalList0EntryCount( uint8_t refDefaultFinalList0EntryCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ refDefaultFinalList0EntryCount = refDefaultFinalList0EntryCount_;
+ return *this;
+ }
+
+ VideoEncodeH264VclFrameInfoEXT & setPRefDefaultFinalList0Entries(
+ const VULKAN_HPP_NAMESPACE::VideoEncodeH264DpbSlotInfoEXT * pRefDefaultFinalList0Entries_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pRefDefaultFinalList0Entries = pRefDefaultFinalList0Entries_;
+ return *this;
+ }
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ VideoEncodeH264VclFrameInfoEXT & setRefDefaultFinalList0Entries(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::VideoEncodeH264DpbSlotInfoEXT> const &
+ refDefaultFinalList0Entries_ ) VULKAN_HPP_NOEXCEPT
+ {
+ refDefaultFinalList0EntryCount = static_cast<uint8_t>( refDefaultFinalList0Entries_.size() );
+ pRefDefaultFinalList0Entries = refDefaultFinalList0Entries_.data();
+ return *this;
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ VideoEncodeH264VclFrameInfoEXT &
+ setRefDefaultFinalList1EntryCount( uint8_t refDefaultFinalList1EntryCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ refDefaultFinalList1EntryCount = refDefaultFinalList1EntryCount_;
+ return *this;
+ }
+
+ VideoEncodeH264VclFrameInfoEXT & setPRefDefaultFinalList1Entries(
+ const VULKAN_HPP_NAMESPACE::VideoEncodeH264DpbSlotInfoEXT * pRefDefaultFinalList1Entries_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pRefDefaultFinalList1Entries = pRefDefaultFinalList1Entries_;
+ return *this;
+ }
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ VideoEncodeH264VclFrameInfoEXT & setRefDefaultFinalList1Entries(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::VideoEncodeH264DpbSlotInfoEXT> const &
+ refDefaultFinalList1Entries_ ) VULKAN_HPP_NOEXCEPT
+ {
+ refDefaultFinalList1EntryCount = static_cast<uint8_t>( refDefaultFinalList1Entries_.size() );
+ pRefDefaultFinalList1Entries = refDefaultFinalList1Entries_.data();
+ return *this;
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ VideoEncodeH264VclFrameInfoEXT & setNaluSliceEntryCount( uint32_t naluSliceEntryCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ naluSliceEntryCount = naluSliceEntryCount_;
+ return *this;
+ }
+
+ VideoEncodeH264VclFrameInfoEXT & setPNaluSliceEntries(
+ const VULKAN_HPP_NAMESPACE::VideoEncodeH264NaluSliceEXT * pNaluSliceEntries_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNaluSliceEntries = pNaluSliceEntries_;
+ return *this;
+ }
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ VideoEncodeH264VclFrameInfoEXT & setNaluSliceEntries(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::VideoEncodeH264NaluSliceEXT> const &
+ naluSliceEntries_ ) VULKAN_HPP_NOEXCEPT
+ {
+ naluSliceEntryCount = static_cast<uint32_t>( naluSliceEntries_.size() );
+ pNaluSliceEntries = naluSliceEntries_.data();
+ return *this;
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ VideoEncodeH264VclFrameInfoEXT & setPCurrentPictureInfo(
+ const VULKAN_HPP_NAMESPACE::VideoEncodeH264DpbSlotInfoEXT * pCurrentPictureInfo_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pCurrentPictureInfo = pCurrentPictureInfo_;
+ return *this;
+ }
+
+ operator VkVideoEncodeH264VclFrameInfoEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkVideoEncodeH264VclFrameInfoEXT *>( this );
+ }
+
+ operator VkVideoEncodeH264VclFrameInfoEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkVideoEncodeH264VclFrameInfoEXT *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( VideoEncodeH264VclFrameInfoEXT const & ) const = default;
+# else
+ bool operator==( VideoEncodeH264VclFrameInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( refDefaultFinalList0EntryCount == rhs.refDefaultFinalList0EntryCount ) &&
+ ( pRefDefaultFinalList0Entries == rhs.pRefDefaultFinalList0Entries ) &&
+ ( refDefaultFinalList1EntryCount == rhs.refDefaultFinalList1EntryCount ) &&
+ ( pRefDefaultFinalList1Entries == rhs.pRefDefaultFinalList1Entries ) &&
+ ( naluSliceEntryCount == rhs.naluSliceEntryCount ) && ( pNaluSliceEntries == rhs.pNaluSliceEntries ) &&
+ ( pCurrentPictureInfo == rhs.pCurrentPictureInfo );
+ }
+
+ bool operator!=( VideoEncodeH264VclFrameInfoEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoEncodeH264VclFrameInfoEXT;
+ const void * pNext = {};
+ uint8_t refDefaultFinalList0EntryCount = {};
+ const VULKAN_HPP_NAMESPACE::VideoEncodeH264DpbSlotInfoEXT * pRefDefaultFinalList0Entries = {};
+ uint8_t refDefaultFinalList1EntryCount = {};
+ const VULKAN_HPP_NAMESPACE::VideoEncodeH264DpbSlotInfoEXT * pRefDefaultFinalList1Entries = {};
+ uint32_t naluSliceEntryCount = {};
+ const VULKAN_HPP_NAMESPACE::VideoEncodeH264NaluSliceEXT * pNaluSliceEntries = {};
+ const VULKAN_HPP_NAMESPACE::VideoEncodeH264DpbSlotInfoEXT * pCurrentPictureInfo = {};
+ };
+ static_assert( sizeof( VideoEncodeH264VclFrameInfoEXT ) == sizeof( VkVideoEncodeH264VclFrameInfoEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<VideoEncodeH264VclFrameInfoEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eVideoEncodeH264VclFrameInfoEXT>
+ {
+ using Type = VideoEncodeH264VclFrameInfoEXT;
+ };
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoEncodeInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoEncodeInfoKHR;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR VideoEncodeInfoKHR(
+ VULKAN_HPP_NAMESPACE::VideoEncodeFlagsKHR flags_ = {},
+ uint32_t qualityLevel_ = {},
+ VULKAN_HPP_NAMESPACE::Extent2D codedExtent_ = {},
+ VULKAN_HPP_NAMESPACE::Buffer dstBitstreamBuffer_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize dstBitstreamBufferOffset_ = {},
+ VULKAN_HPP_NAMESPACE::DeviceSize dstBitstreamBufferMaxRange_ = {},
+ VULKAN_HPP_NAMESPACE::VideoPictureResourceKHR srcPictureResource_ = {},
+ const VULKAN_HPP_NAMESPACE::VideoReferenceSlotKHR * pSetupReferenceSlot_ = {},
+ uint32_t referenceSlotCount_ = {},
+ const VULKAN_HPP_NAMESPACE::VideoReferenceSlotKHR * pReferenceSlots_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , qualityLevel( qualityLevel_ )
+ , codedExtent( codedExtent_ )
+ , dstBitstreamBuffer( dstBitstreamBuffer_ )
+ , dstBitstreamBufferOffset( dstBitstreamBufferOffset_ )
+ , dstBitstreamBufferMaxRange( dstBitstreamBufferMaxRange_ )
+ , srcPictureResource( srcPictureResource_ )
+ , pSetupReferenceSlot( pSetupReferenceSlot_ )
+ , referenceSlotCount( referenceSlotCount_ )
+ , pReferenceSlots( pReferenceSlots_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR VideoEncodeInfoKHR( VideoEncodeInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoEncodeInfoKHR( VkVideoEncodeInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : VideoEncodeInfoKHR( *reinterpret_cast<VideoEncodeInfoKHR const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ VideoEncodeInfoKHR(
+ VULKAN_HPP_NAMESPACE::VideoEncodeFlagsKHR flags_,
+ uint32_t qualityLevel_,
+ VULKAN_HPP_NAMESPACE::Extent2D codedExtent_,
+ VULKAN_HPP_NAMESPACE::Buffer dstBitstreamBuffer_,
+ VULKAN_HPP_NAMESPACE::DeviceSize dstBitstreamBufferOffset_,
+ VULKAN_HPP_NAMESPACE::DeviceSize dstBitstreamBufferMaxRange_,
+ VULKAN_HPP_NAMESPACE::VideoPictureResourceKHR srcPictureResource_,
+ const VULKAN_HPP_NAMESPACE::VideoReferenceSlotKHR * pSetupReferenceSlot_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::VideoReferenceSlotKHR> const &
+ referenceSlots_ )
+ : flags( flags_ )
+ , qualityLevel( qualityLevel_ )
+ , codedExtent( codedExtent_ )
+ , dstBitstreamBuffer( dstBitstreamBuffer_ )
+ , dstBitstreamBufferOffset( dstBitstreamBufferOffset_ )
+ , dstBitstreamBufferMaxRange( dstBitstreamBufferMaxRange_ )
+ , srcPictureResource( srcPictureResource_ )
+ , pSetupReferenceSlot( pSetupReferenceSlot_ )
+ , referenceSlotCount( static_cast<uint32_t>( referenceSlots_.size() ) )
+ , pReferenceSlots( referenceSlots_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 VideoEncodeInfoKHR &
+ operator=( VideoEncodeInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoEncodeInfoKHR & operator=( VkVideoEncodeInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoEncodeInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ VideoEncodeInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ VideoEncodeInfoKHR & setFlags( VULKAN_HPP_NAMESPACE::VideoEncodeFlagsKHR flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ VideoEncodeInfoKHR & setQualityLevel( uint32_t qualityLevel_ ) VULKAN_HPP_NOEXCEPT
+ {
+ qualityLevel = qualityLevel_;
+ return *this;
+ }
+
+ VideoEncodeInfoKHR & setCodedExtent( VULKAN_HPP_NAMESPACE::Extent2D const & codedExtent_ ) VULKAN_HPP_NOEXCEPT
+ {
+ codedExtent = codedExtent_;
+ return *this;
+ }
+
+ VideoEncodeInfoKHR & setDstBitstreamBuffer( VULKAN_HPP_NAMESPACE::Buffer dstBitstreamBuffer_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstBitstreamBuffer = dstBitstreamBuffer_;
+ return *this;
+ }
+
+ VideoEncodeInfoKHR &
+ setDstBitstreamBufferOffset( VULKAN_HPP_NAMESPACE::DeviceSize dstBitstreamBufferOffset_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstBitstreamBufferOffset = dstBitstreamBufferOffset_;
+ return *this;
+ }
+
+ VideoEncodeInfoKHR &
+ setDstBitstreamBufferMaxRange( VULKAN_HPP_NAMESPACE::DeviceSize dstBitstreamBufferMaxRange_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstBitstreamBufferMaxRange = dstBitstreamBufferMaxRange_;
+ return *this;
+ }
+
+ VideoEncodeInfoKHR & setSrcPictureResource(
+ VULKAN_HPP_NAMESPACE::VideoPictureResourceKHR const & srcPictureResource_ ) VULKAN_HPP_NOEXCEPT
+ {
+ srcPictureResource = srcPictureResource_;
+ return *this;
+ }
+
+ VideoEncodeInfoKHR & setPSetupReferenceSlot(
+ const VULKAN_HPP_NAMESPACE::VideoReferenceSlotKHR * pSetupReferenceSlot_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pSetupReferenceSlot = pSetupReferenceSlot_;
+ return *this;
+ }
+
+ VideoEncodeInfoKHR & setReferenceSlotCount( uint32_t referenceSlotCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ referenceSlotCount = referenceSlotCount_;
+ return *this;
+ }
+
+ VideoEncodeInfoKHR &
+ setPReferenceSlots( const VULKAN_HPP_NAMESPACE::VideoReferenceSlotKHR * pReferenceSlots_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pReferenceSlots = pReferenceSlots_;
+ return *this;
+ }
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ VideoEncodeInfoKHR & setReferenceSlots(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::VideoReferenceSlotKHR> const &
+ referenceSlots_ ) VULKAN_HPP_NOEXCEPT
+ {
+ referenceSlotCount = static_cast<uint32_t>( referenceSlots_.size() );
+ pReferenceSlots = referenceSlots_.data();
+ return *this;
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkVideoEncodeInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkVideoEncodeInfoKHR *>( this );
+ }
+
+ operator VkVideoEncodeInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkVideoEncodeInfoKHR *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( VideoEncodeInfoKHR const & ) const = default;
+# else
+ bool operator==( VideoEncodeInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( qualityLevel == rhs.qualityLevel ) && ( codedExtent == rhs.codedExtent ) &&
+ ( dstBitstreamBuffer == rhs.dstBitstreamBuffer ) &&
+ ( dstBitstreamBufferOffset == rhs.dstBitstreamBufferOffset ) &&
+ ( dstBitstreamBufferMaxRange == rhs.dstBitstreamBufferMaxRange ) &&
+ ( srcPictureResource == rhs.srcPictureResource ) && ( pSetupReferenceSlot == rhs.pSetupReferenceSlot ) &&
+ ( referenceSlotCount == rhs.referenceSlotCount ) && ( pReferenceSlots == rhs.pReferenceSlots );
+ }
+
+ bool operator!=( VideoEncodeInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoEncodeInfoKHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::VideoEncodeFlagsKHR flags = {};
+ uint32_t qualityLevel = {};
+ VULKAN_HPP_NAMESPACE::Extent2D codedExtent = {};
+ VULKAN_HPP_NAMESPACE::Buffer dstBitstreamBuffer = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize dstBitstreamBufferOffset = {};
+ VULKAN_HPP_NAMESPACE::DeviceSize dstBitstreamBufferMaxRange = {};
+ VULKAN_HPP_NAMESPACE::VideoPictureResourceKHR srcPictureResource = {};
+ const VULKAN_HPP_NAMESPACE::VideoReferenceSlotKHR * pSetupReferenceSlot = {};
+ uint32_t referenceSlotCount = {};
+ const VULKAN_HPP_NAMESPACE::VideoReferenceSlotKHR * pReferenceSlots = {};
+ };
+ static_assert( sizeof( VideoEncodeInfoKHR ) == sizeof( VkVideoEncodeInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<VideoEncodeInfoKHR>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eVideoEncodeInfoKHR>
+ {
+ using Type = VideoEncodeInfoKHR;
+ };
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoEncodeRateControlInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoEncodeRateControlInfoKHR;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ VideoEncodeRateControlInfoKHR( VULKAN_HPP_NAMESPACE::VideoEncodeRateControlFlagsKHR flags_ = {},
+ VULKAN_HPP_NAMESPACE::VideoEncodeRateControlModeFlagBitsKHR rateControlMode_ =
+ VULKAN_HPP_NAMESPACE::VideoEncodeRateControlModeFlagBitsKHR::eNone,
+ uint32_t averageBitrate_ = {},
+ uint16_t peakToAverageBitrateRatio_ = {},
+ uint16_t frameRateNumerator_ = {},
+ uint16_t frameRateDenominator_ = {},
+ uint32_t virtualBufferSizeInMs_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , rateControlMode( rateControlMode_ )
+ , averageBitrate( averageBitrate_ )
+ , peakToAverageBitrateRatio( peakToAverageBitrateRatio_ )
+ , frameRateNumerator( frameRateNumerator_ )
+ , frameRateDenominator( frameRateDenominator_ )
+ , virtualBufferSizeInMs( virtualBufferSizeInMs_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ VideoEncodeRateControlInfoKHR( VideoEncodeRateControlInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoEncodeRateControlInfoKHR( VkVideoEncodeRateControlInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : VideoEncodeRateControlInfoKHR( *reinterpret_cast<VideoEncodeRateControlInfoKHR const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 VideoEncodeRateControlInfoKHR &
+ operator=( VideoEncodeRateControlInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoEncodeRateControlInfoKHR & operator=( VkVideoEncodeRateControlInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoEncodeRateControlInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ VideoEncodeRateControlInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ VideoEncodeRateControlInfoKHR &
+ setFlags( VULKAN_HPP_NAMESPACE::VideoEncodeRateControlFlagsKHR flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ VideoEncodeRateControlInfoKHR & setRateControlMode(
+ VULKAN_HPP_NAMESPACE::VideoEncodeRateControlModeFlagBitsKHR rateControlMode_ ) VULKAN_HPP_NOEXCEPT
+ {
+ rateControlMode = rateControlMode_;
+ return *this;
+ }
+
+ VideoEncodeRateControlInfoKHR & setAverageBitrate( uint32_t averageBitrate_ ) VULKAN_HPP_NOEXCEPT
+ {
+ averageBitrate = averageBitrate_;
+ return *this;
+ }
+
+ VideoEncodeRateControlInfoKHR &
+ setPeakToAverageBitrateRatio( uint16_t peakToAverageBitrateRatio_ ) VULKAN_HPP_NOEXCEPT
+ {
+ peakToAverageBitrateRatio = peakToAverageBitrateRatio_;
+ return *this;
+ }
+
+ VideoEncodeRateControlInfoKHR & setFrameRateNumerator( uint16_t frameRateNumerator_ ) VULKAN_HPP_NOEXCEPT
+ {
+ frameRateNumerator = frameRateNumerator_;
+ return *this;
+ }
+
+ VideoEncodeRateControlInfoKHR & setFrameRateDenominator( uint16_t frameRateDenominator_ ) VULKAN_HPP_NOEXCEPT
+ {
+ frameRateDenominator = frameRateDenominator_;
+ return *this;
+ }
+
+ VideoEncodeRateControlInfoKHR & setVirtualBufferSizeInMs( uint32_t virtualBufferSizeInMs_ ) VULKAN_HPP_NOEXCEPT
+ {
+ virtualBufferSizeInMs = virtualBufferSizeInMs_;
+ return *this;
+ }
+
+ operator VkVideoEncodeRateControlInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkVideoEncodeRateControlInfoKHR *>( this );
+ }
+
+ operator VkVideoEncodeRateControlInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkVideoEncodeRateControlInfoKHR *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( VideoEncodeRateControlInfoKHR const & ) const = default;
+# else
+ bool operator==( VideoEncodeRateControlInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( rateControlMode == rhs.rateControlMode ) && ( averageBitrate == rhs.averageBitrate ) &&
+ ( peakToAverageBitrateRatio == rhs.peakToAverageBitrateRatio ) &&
+ ( frameRateNumerator == rhs.frameRateNumerator ) && ( frameRateDenominator == rhs.frameRateDenominator ) &&
+ ( virtualBufferSizeInMs == rhs.virtualBufferSizeInMs );
+ }
+
+ bool operator!=( VideoEncodeRateControlInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoEncodeRateControlInfoKHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::VideoEncodeRateControlFlagsKHR flags = {};
+ VULKAN_HPP_NAMESPACE::VideoEncodeRateControlModeFlagBitsKHR rateControlMode =
+ VULKAN_HPP_NAMESPACE::VideoEncodeRateControlModeFlagBitsKHR::eNone;
+ uint32_t averageBitrate = {};
+ uint16_t peakToAverageBitrateRatio = {};
+ uint16_t frameRateNumerator = {};
+ uint16_t frameRateDenominator = {};
+ uint32_t virtualBufferSizeInMs = {};
+ };
+ static_assert( sizeof( VideoEncodeRateControlInfoKHR ) == sizeof( VkVideoEncodeRateControlInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<VideoEncodeRateControlInfoKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eVideoEncodeRateControlInfoKHR>
+ {
+ using Type = VideoEncodeRateControlInfoKHR;
+ };
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoEndCodingInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoEndCodingInfoKHR;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ VideoEndCodingInfoKHR( VULKAN_HPP_NAMESPACE::VideoEndCodingFlagsKHR flags_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR VideoEndCodingInfoKHR( VideoEndCodingInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoEndCodingInfoKHR( VkVideoEndCodingInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : VideoEndCodingInfoKHR( *reinterpret_cast<VideoEndCodingInfoKHR const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 VideoEndCodingInfoKHR &
+ operator=( VideoEndCodingInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoEndCodingInfoKHR & operator=( VkVideoEndCodingInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoEndCodingInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ VideoEndCodingInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ VideoEndCodingInfoKHR & setFlags( VULKAN_HPP_NAMESPACE::VideoEndCodingFlagsKHR flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ operator VkVideoEndCodingInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkVideoEndCodingInfoKHR *>( this );
+ }
+
+ operator VkVideoEndCodingInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkVideoEndCodingInfoKHR *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( VideoEndCodingInfoKHR const & ) const = default;
+# else
+ bool operator==( VideoEndCodingInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags );
+ }
+
+ bool operator!=( VideoEndCodingInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoEndCodingInfoKHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::VideoEndCodingFlagsKHR flags = {};
+ };
+ static_assert( sizeof( VideoEndCodingInfoKHR ) == sizeof( VkVideoEndCodingInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<VideoEndCodingInfoKHR>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eVideoEndCodingInfoKHR>
+ {
+ using Type = VideoEndCodingInfoKHR;
+ };
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoFormatPropertiesKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoFormatPropertiesKHR;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR VideoFormatPropertiesKHR(
+ VULKAN_HPP_NAMESPACE::Format format_ = VULKAN_HPP_NAMESPACE::Format::eUndefined ) VULKAN_HPP_NOEXCEPT
+ : format( format_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR VideoFormatPropertiesKHR( VideoFormatPropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoFormatPropertiesKHR( VkVideoFormatPropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : VideoFormatPropertiesKHR( *reinterpret_cast<VideoFormatPropertiesKHR const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 VideoFormatPropertiesKHR &
+ operator=( VideoFormatPropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoFormatPropertiesKHR & operator=( VkVideoFormatPropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoFormatPropertiesKHR const *>( &rhs );
+ return *this;
+ }
+
+ operator VkVideoFormatPropertiesKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkVideoFormatPropertiesKHR *>( this );
+ }
+
+ operator VkVideoFormatPropertiesKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkVideoFormatPropertiesKHR *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( VideoFormatPropertiesKHR const & ) const = default;
+# else
+ bool operator==( VideoFormatPropertiesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( format == rhs.format );
+ }
+
+ bool operator!=( VideoFormatPropertiesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoFormatPropertiesKHR;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Format format = VULKAN_HPP_NAMESPACE::Format::eUndefined;
+ };
+ static_assert( sizeof( VideoFormatPropertiesKHR ) == sizeof( VkVideoFormatPropertiesKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<VideoFormatPropertiesKHR>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eVideoFormatPropertiesKHR>
+ {
+ using Type = VideoFormatPropertiesKHR;
+ };
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoGetMemoryPropertiesKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoGetMemoryPropertiesKHR;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR VideoGetMemoryPropertiesKHR(
+ uint32_t memoryBindIndex_ = {},
+ VULKAN_HPP_NAMESPACE::MemoryRequirements2 * pMemoryRequirements_ = {} ) VULKAN_HPP_NOEXCEPT
+ : memoryBindIndex( memoryBindIndex_ )
+ , pMemoryRequirements( pMemoryRequirements_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ VideoGetMemoryPropertiesKHR( VideoGetMemoryPropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoGetMemoryPropertiesKHR( VkVideoGetMemoryPropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : VideoGetMemoryPropertiesKHR( *reinterpret_cast<VideoGetMemoryPropertiesKHR const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 VideoGetMemoryPropertiesKHR &
+ operator=( VideoGetMemoryPropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoGetMemoryPropertiesKHR & operator=( VkVideoGetMemoryPropertiesKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoGetMemoryPropertiesKHR const *>( &rhs );
+ return *this;
+ }
+
+ VideoGetMemoryPropertiesKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ VideoGetMemoryPropertiesKHR & setMemoryBindIndex( uint32_t memoryBindIndex_ ) VULKAN_HPP_NOEXCEPT
+ {
+ memoryBindIndex = memoryBindIndex_;
+ return *this;
+ }
+
+ VideoGetMemoryPropertiesKHR &
+ setPMemoryRequirements( VULKAN_HPP_NAMESPACE::MemoryRequirements2 * pMemoryRequirements_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pMemoryRequirements = pMemoryRequirements_;
+ return *this;
+ }
+
+ operator VkVideoGetMemoryPropertiesKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkVideoGetMemoryPropertiesKHR *>( this );
+ }
+
+ operator VkVideoGetMemoryPropertiesKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkVideoGetMemoryPropertiesKHR *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( VideoGetMemoryPropertiesKHR const & ) const = default;
+# else
+ bool operator==( VideoGetMemoryPropertiesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( memoryBindIndex == rhs.memoryBindIndex ) &&
+ ( pMemoryRequirements == rhs.pMemoryRequirements );
+ }
+
+ bool operator!=( VideoGetMemoryPropertiesKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoGetMemoryPropertiesKHR;
+ const void * pNext = {};
+ uint32_t memoryBindIndex = {};
+ VULKAN_HPP_NAMESPACE::MemoryRequirements2 * pMemoryRequirements = {};
+ };
+ static_assert( sizeof( VideoGetMemoryPropertiesKHR ) == sizeof( VkVideoGetMemoryPropertiesKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<VideoGetMemoryPropertiesKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eVideoGetMemoryPropertiesKHR>
+ {
+ using Type = VideoGetMemoryPropertiesKHR;
+ };
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoQueueFamilyProperties2KHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoQueueFamilyProperties2KHR;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR VideoQueueFamilyProperties2KHR(
+ VULKAN_HPP_NAMESPACE::VideoCodecOperationFlagsKHR videoCodecOperations_ = {} ) VULKAN_HPP_NOEXCEPT
+ : videoCodecOperations( videoCodecOperations_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ VideoQueueFamilyProperties2KHR( VideoQueueFamilyProperties2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoQueueFamilyProperties2KHR( VkVideoQueueFamilyProperties2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : VideoQueueFamilyProperties2KHR( *reinterpret_cast<VideoQueueFamilyProperties2KHR const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 VideoQueueFamilyProperties2KHR &
+ operator=( VideoQueueFamilyProperties2KHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoQueueFamilyProperties2KHR & operator=( VkVideoQueueFamilyProperties2KHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoQueueFamilyProperties2KHR const *>( &rhs );
+ return *this;
+ }
+
+ VideoQueueFamilyProperties2KHR & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ VideoQueueFamilyProperties2KHR & setVideoCodecOperations(
+ VULKAN_HPP_NAMESPACE::VideoCodecOperationFlagsKHR videoCodecOperations_ ) VULKAN_HPP_NOEXCEPT
+ {
+ videoCodecOperations = videoCodecOperations_;
+ return *this;
+ }
+
+ operator VkVideoQueueFamilyProperties2KHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkVideoQueueFamilyProperties2KHR *>( this );
+ }
+
+ operator VkVideoQueueFamilyProperties2KHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkVideoQueueFamilyProperties2KHR *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( VideoQueueFamilyProperties2KHR const & ) const = default;
+# else
+ bool operator==( VideoQueueFamilyProperties2KHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( videoCodecOperations == rhs.videoCodecOperations );
+ }
+
+ bool operator!=( VideoQueueFamilyProperties2KHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoQueueFamilyProperties2KHR;
+ void * pNext = {};
+ VULKAN_HPP_NAMESPACE::VideoCodecOperationFlagsKHR videoCodecOperations = {};
+ };
+ static_assert( sizeof( VideoQueueFamilyProperties2KHR ) == sizeof( VkVideoQueueFamilyProperties2KHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<VideoQueueFamilyProperties2KHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eVideoQueueFamilyProperties2KHR>
+ {
+ using Type = VideoQueueFamilyProperties2KHR;
+ };
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoSessionCreateInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoSessionCreateInfoKHR;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR VideoSessionCreateInfoKHR(
+ uint32_t queueFamilyIndex_ = {},
+ VULKAN_HPP_NAMESPACE::VideoSessionCreateFlagsKHR flags_ = {},
+ const VULKAN_HPP_NAMESPACE::VideoProfileKHR * pVideoProfile_ = {},
+ VULKAN_HPP_NAMESPACE::Format pictureFormat_ = VULKAN_HPP_NAMESPACE::Format::eUndefined,
+ VULKAN_HPP_NAMESPACE::Extent2D maxCodedExtent_ = {},
+ VULKAN_HPP_NAMESPACE::Format referencePicturesFormat_ = VULKAN_HPP_NAMESPACE::Format::eUndefined,
+ uint32_t maxReferencePicturesSlotsCount_ = {},
+ uint32_t maxReferencePicturesActiveCount_ = {} ) VULKAN_HPP_NOEXCEPT
+ : queueFamilyIndex( queueFamilyIndex_ )
+ , flags( flags_ )
+ , pVideoProfile( pVideoProfile_ )
+ , pictureFormat( pictureFormat_ )
+ , maxCodedExtent( maxCodedExtent_ )
+ , referencePicturesFormat( referencePicturesFormat_ )
+ , maxReferencePicturesSlotsCount( maxReferencePicturesSlotsCount_ )
+ , maxReferencePicturesActiveCount( maxReferencePicturesActiveCount_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ VideoSessionCreateInfoKHR( VideoSessionCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoSessionCreateInfoKHR( VkVideoSessionCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : VideoSessionCreateInfoKHR( *reinterpret_cast<VideoSessionCreateInfoKHR const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 VideoSessionCreateInfoKHR &
+ operator=( VideoSessionCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoSessionCreateInfoKHR & operator=( VkVideoSessionCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoSessionCreateInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ VideoSessionCreateInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ VideoSessionCreateInfoKHR & setQueueFamilyIndex( uint32_t queueFamilyIndex_ ) VULKAN_HPP_NOEXCEPT
+ {
+ queueFamilyIndex = queueFamilyIndex_;
+ return *this;
+ }
+
+ VideoSessionCreateInfoKHR & setFlags( VULKAN_HPP_NAMESPACE::VideoSessionCreateFlagsKHR flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ VideoSessionCreateInfoKHR &
+ setPVideoProfile( const VULKAN_HPP_NAMESPACE::VideoProfileKHR * pVideoProfile_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pVideoProfile = pVideoProfile_;
+ return *this;
+ }
+
+ VideoSessionCreateInfoKHR & setPictureFormat( VULKAN_HPP_NAMESPACE::Format pictureFormat_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pictureFormat = pictureFormat_;
+ return *this;
+ }
+
+ VideoSessionCreateInfoKHR &
+ setMaxCodedExtent( VULKAN_HPP_NAMESPACE::Extent2D const & maxCodedExtent_ ) VULKAN_HPP_NOEXCEPT
+ {
+ maxCodedExtent = maxCodedExtent_;
+ return *this;
+ }
+
+ VideoSessionCreateInfoKHR &
+ setReferencePicturesFormat( VULKAN_HPP_NAMESPACE::Format referencePicturesFormat_ ) VULKAN_HPP_NOEXCEPT
+ {
+ referencePicturesFormat = referencePicturesFormat_;
+ return *this;
+ }
+
+ VideoSessionCreateInfoKHR &
+ setMaxReferencePicturesSlotsCount( uint32_t maxReferencePicturesSlotsCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ maxReferencePicturesSlotsCount = maxReferencePicturesSlotsCount_;
+ return *this;
+ }
+
+ VideoSessionCreateInfoKHR &
+ setMaxReferencePicturesActiveCount( uint32_t maxReferencePicturesActiveCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ maxReferencePicturesActiveCount = maxReferencePicturesActiveCount_;
+ return *this;
+ }
+
+ operator VkVideoSessionCreateInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkVideoSessionCreateInfoKHR *>( this );
+ }
+
+ operator VkVideoSessionCreateInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkVideoSessionCreateInfoKHR *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( VideoSessionCreateInfoKHR const & ) const = default;
+# else
+ bool operator==( VideoSessionCreateInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( queueFamilyIndex == rhs.queueFamilyIndex ) &&
+ ( flags == rhs.flags ) && ( pVideoProfile == rhs.pVideoProfile ) &&
+ ( pictureFormat == rhs.pictureFormat ) && ( maxCodedExtent == rhs.maxCodedExtent ) &&
+ ( referencePicturesFormat == rhs.referencePicturesFormat ) &&
+ ( maxReferencePicturesSlotsCount == rhs.maxReferencePicturesSlotsCount ) &&
+ ( maxReferencePicturesActiveCount == rhs.maxReferencePicturesActiveCount );
+ }
+
+ bool operator!=( VideoSessionCreateInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoSessionCreateInfoKHR;
+ const void * pNext = {};
+ uint32_t queueFamilyIndex = {};
+ VULKAN_HPP_NAMESPACE::VideoSessionCreateFlagsKHR flags = {};
+ const VULKAN_HPP_NAMESPACE::VideoProfileKHR * pVideoProfile = {};
+ VULKAN_HPP_NAMESPACE::Format pictureFormat = VULKAN_HPP_NAMESPACE::Format::eUndefined;
+ VULKAN_HPP_NAMESPACE::Extent2D maxCodedExtent = {};
+ VULKAN_HPP_NAMESPACE::Format referencePicturesFormat = VULKAN_HPP_NAMESPACE::Format::eUndefined;
+ uint32_t maxReferencePicturesSlotsCount = {};
+ uint32_t maxReferencePicturesActiveCount = {};
+ };
+ static_assert( sizeof( VideoSessionCreateInfoKHR ) == sizeof( VkVideoSessionCreateInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<VideoSessionCreateInfoKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eVideoSessionCreateInfoKHR>
+ {
+ using Type = VideoSessionCreateInfoKHR;
+ };
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoSessionParametersCreateInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eVideoSessionParametersCreateInfoKHR;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR VideoSessionParametersCreateInfoKHR(
+ VULKAN_HPP_NAMESPACE::VideoSessionParametersKHR videoSessionParametersTemplate_ = {},
+ VULKAN_HPP_NAMESPACE::VideoSessionKHR videoSession_ = {} ) VULKAN_HPP_NOEXCEPT
+ : videoSessionParametersTemplate( videoSessionParametersTemplate_ )
+ , videoSession( videoSession_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR VideoSessionParametersCreateInfoKHR( VideoSessionParametersCreateInfoKHR const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ VideoSessionParametersCreateInfoKHR( VkVideoSessionParametersCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : VideoSessionParametersCreateInfoKHR( *reinterpret_cast<VideoSessionParametersCreateInfoKHR const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 VideoSessionParametersCreateInfoKHR &
+ operator=( VideoSessionParametersCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoSessionParametersCreateInfoKHR &
+ operator=( VkVideoSessionParametersCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoSessionParametersCreateInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ VideoSessionParametersCreateInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ VideoSessionParametersCreateInfoKHR & setVideoSessionParametersTemplate(
+ VULKAN_HPP_NAMESPACE::VideoSessionParametersKHR videoSessionParametersTemplate_ ) VULKAN_HPP_NOEXCEPT
+ {
+ videoSessionParametersTemplate = videoSessionParametersTemplate_;
+ return *this;
+ }
+
+ VideoSessionParametersCreateInfoKHR &
+ setVideoSession( VULKAN_HPP_NAMESPACE::VideoSessionKHR videoSession_ ) VULKAN_HPP_NOEXCEPT
+ {
+ videoSession = videoSession_;
+ return *this;
+ }
+
+ operator VkVideoSessionParametersCreateInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkVideoSessionParametersCreateInfoKHR *>( this );
+ }
+
+ operator VkVideoSessionParametersCreateInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkVideoSessionParametersCreateInfoKHR *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( VideoSessionParametersCreateInfoKHR const & ) const = default;
+# else
+ bool operator==( VideoSessionParametersCreateInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( videoSessionParametersTemplate == rhs.videoSessionParametersTemplate ) &&
+ ( videoSession == rhs.videoSession );
+ }
+
+ bool operator!=( VideoSessionParametersCreateInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoSessionParametersCreateInfoKHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::VideoSessionParametersKHR videoSessionParametersTemplate = {};
+ VULKAN_HPP_NAMESPACE::VideoSessionKHR videoSession = {};
+ };
+ static_assert( sizeof( VideoSessionParametersCreateInfoKHR ) == sizeof( VkVideoSessionParametersCreateInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<VideoSessionParametersCreateInfoKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eVideoSessionParametersCreateInfoKHR>
+ {
+ using Type = VideoSessionParametersCreateInfoKHR;
+ };
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+#if defined( VK_ENABLE_BETA_EXTENSIONS )
+ struct VideoSessionParametersUpdateInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eVideoSessionParametersUpdateInfoKHR;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR VideoSessionParametersUpdateInfoKHR( uint32_t updateSequenceCount_ = {} ) VULKAN_HPP_NOEXCEPT
+ : updateSequenceCount( updateSequenceCount_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR VideoSessionParametersUpdateInfoKHR( VideoSessionParametersUpdateInfoKHR const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ VideoSessionParametersUpdateInfoKHR( VkVideoSessionParametersUpdateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : VideoSessionParametersUpdateInfoKHR( *reinterpret_cast<VideoSessionParametersUpdateInfoKHR const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 VideoSessionParametersUpdateInfoKHR &
+ operator=( VideoSessionParametersUpdateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ VideoSessionParametersUpdateInfoKHR &
+ operator=( VkVideoSessionParametersUpdateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoSessionParametersUpdateInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ VideoSessionParametersUpdateInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ VideoSessionParametersUpdateInfoKHR & setUpdateSequenceCount( uint32_t updateSequenceCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ updateSequenceCount = updateSequenceCount_;
+ return *this;
+ }
+
+ operator VkVideoSessionParametersUpdateInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkVideoSessionParametersUpdateInfoKHR *>( this );
+ }
+
+ operator VkVideoSessionParametersUpdateInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkVideoSessionParametersUpdateInfoKHR *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( VideoSessionParametersUpdateInfoKHR const & ) const = default;
+# else
+ bool operator==( VideoSessionParametersUpdateInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( updateSequenceCount == rhs.updateSequenceCount );
+ }
+
+ bool operator!=( VideoSessionParametersUpdateInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoSessionParametersUpdateInfoKHR;
+ const void * pNext = {};
+ uint32_t updateSequenceCount = {};
+ };
+ static_assert( sizeof( VideoSessionParametersUpdateInfoKHR ) == sizeof( VkVideoSessionParametersUpdateInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<VideoSessionParametersUpdateInfoKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eVideoSessionParametersUpdateInfoKHR>
+ {
+ using Type = VideoSessionParametersUpdateInfoKHR;
+ };
+#endif /*VK_ENABLE_BETA_EXTENSIONS*/
+
+#if defined( VK_USE_PLATFORM_WAYLAND_KHR )
+ struct WaylandSurfaceCreateInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eWaylandSurfaceCreateInfoKHR;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR WaylandSurfaceCreateInfoKHR( VULKAN_HPP_NAMESPACE::WaylandSurfaceCreateFlagsKHR flags_ = {},
+ struct wl_display * display_ = {},
+ struct wl_surface * surface_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , display( display_ )
+ , surface( surface_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ WaylandSurfaceCreateInfoKHR( WaylandSurfaceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ WaylandSurfaceCreateInfoKHR( VkWaylandSurfaceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : WaylandSurfaceCreateInfoKHR( *reinterpret_cast<WaylandSurfaceCreateInfoKHR const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 WaylandSurfaceCreateInfoKHR &
+ operator=( WaylandSurfaceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ WaylandSurfaceCreateInfoKHR & operator=( VkWaylandSurfaceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::WaylandSurfaceCreateInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ WaylandSurfaceCreateInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ WaylandSurfaceCreateInfoKHR &
+ setFlags( VULKAN_HPP_NAMESPACE::WaylandSurfaceCreateFlagsKHR flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ WaylandSurfaceCreateInfoKHR & setDisplay( struct wl_display * display_ ) VULKAN_HPP_NOEXCEPT
+ {
+ display = display_;
+ return *this;
+ }
+
+ WaylandSurfaceCreateInfoKHR & setSurface( struct wl_surface * surface_ ) VULKAN_HPP_NOEXCEPT
+ {
+ surface = surface_;
+ return *this;
+ }
+
+ operator VkWaylandSurfaceCreateInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkWaylandSurfaceCreateInfoKHR *>( this );
+ }
+
+ operator VkWaylandSurfaceCreateInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkWaylandSurfaceCreateInfoKHR *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( WaylandSurfaceCreateInfoKHR const & ) const = default;
+# else
+ bool operator==( WaylandSurfaceCreateInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) && ( display == rhs.display ) &&
+ ( surface == rhs.surface );
+ }
+
+ bool operator!=( WaylandSurfaceCreateInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eWaylandSurfaceCreateInfoKHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::WaylandSurfaceCreateFlagsKHR flags = {};
+ struct wl_display * display = {};
+ struct wl_surface * surface = {};
+ };
+ static_assert( sizeof( WaylandSurfaceCreateInfoKHR ) == sizeof( VkWaylandSurfaceCreateInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<WaylandSurfaceCreateInfoKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eWaylandSurfaceCreateInfoKHR>
+ {
+ using Type = WaylandSurfaceCreateInfoKHR;
+ };
+#endif /*VK_USE_PLATFORM_WAYLAND_KHR*/
+
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ struct Win32KeyedMutexAcquireReleaseInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eWin32KeyedMutexAcquireReleaseInfoKHR;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ Win32KeyedMutexAcquireReleaseInfoKHR( uint32_t acquireCount_ = {},
+ const VULKAN_HPP_NAMESPACE::DeviceMemory * pAcquireSyncs_ = {},
+ const uint64_t * pAcquireKeys_ = {},
+ const uint32_t * pAcquireTimeouts_ = {},
+ uint32_t releaseCount_ = {},
+ const VULKAN_HPP_NAMESPACE::DeviceMemory * pReleaseSyncs_ = {},
+ const uint64_t * pReleaseKeys_ = {} ) VULKAN_HPP_NOEXCEPT
+ : acquireCount( acquireCount_ )
+ , pAcquireSyncs( pAcquireSyncs_ )
+ , pAcquireKeys( pAcquireKeys_ )
+ , pAcquireTimeouts( pAcquireTimeouts_ )
+ , releaseCount( releaseCount_ )
+ , pReleaseSyncs( pReleaseSyncs_ )
+ , pReleaseKeys( pReleaseKeys_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR Win32KeyedMutexAcquireReleaseInfoKHR( Win32KeyedMutexAcquireReleaseInfoKHR const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ Win32KeyedMutexAcquireReleaseInfoKHR( VkWin32KeyedMutexAcquireReleaseInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : Win32KeyedMutexAcquireReleaseInfoKHR( *reinterpret_cast<Win32KeyedMutexAcquireReleaseInfoKHR const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ Win32KeyedMutexAcquireReleaseInfoKHR(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DeviceMemory> const & acquireSyncs_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const & acquireKeys_ = {},
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & acquireTimeouts_ = {},
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DeviceMemory> const &
+ releaseSyncs_ = {},
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const & releaseKeys_ = {} )
+ : acquireCount( static_cast<uint32_t>( acquireSyncs_.size() ) )
+ , pAcquireSyncs( acquireSyncs_.data() )
+ , pAcquireKeys( acquireKeys_.data() )
+ , pAcquireTimeouts( acquireTimeouts_.data() )
+ , releaseCount( static_cast<uint32_t>( releaseSyncs_.size() ) )
+ , pReleaseSyncs( releaseSyncs_.data() )
+ , pReleaseKeys( releaseKeys_.data() )
+ {
+# ifdef VULKAN_HPP_NO_EXCEPTIONS
+ VULKAN_HPP_ASSERT( acquireSyncs_.size() == acquireKeys_.size() );
+ VULKAN_HPP_ASSERT( acquireSyncs_.size() == acquireTimeouts_.size() );
+ VULKAN_HPP_ASSERT( acquireKeys_.size() == acquireTimeouts_.size() );
+# else
+ if ( acquireSyncs_.size() != acquireKeys_.size() )
+ {
+ throw LogicError(
+ VULKAN_HPP_NAMESPACE_STRING
+ "::Win32KeyedMutexAcquireReleaseInfoKHR::Win32KeyedMutexAcquireReleaseInfoKHR: acquireSyncs_.size() != acquireKeys_.size()" );
+ }
+ if ( acquireSyncs_.size() != acquireTimeouts_.size() )
+ {
+ throw LogicError(
+ VULKAN_HPP_NAMESPACE_STRING
+ "::Win32KeyedMutexAcquireReleaseInfoKHR::Win32KeyedMutexAcquireReleaseInfoKHR: acquireSyncs_.size() != acquireTimeouts_.size()" );
+ }
+ if ( acquireKeys_.size() != acquireTimeouts_.size() )
+ {
+ throw LogicError(
+ VULKAN_HPP_NAMESPACE_STRING
+ "::Win32KeyedMutexAcquireReleaseInfoKHR::Win32KeyedMutexAcquireReleaseInfoKHR: acquireKeys_.size() != acquireTimeouts_.size()" );
+ }
+# endif /*VULKAN_HPP_NO_EXCEPTIONS*/
+
+# ifdef VULKAN_HPP_NO_EXCEPTIONS
+ VULKAN_HPP_ASSERT( releaseSyncs_.size() == releaseKeys_.size() );
+# else
+ if ( releaseSyncs_.size() != releaseKeys_.size() )
+ {
+ throw LogicError(
+ VULKAN_HPP_NAMESPACE_STRING
+ "::Win32KeyedMutexAcquireReleaseInfoKHR::Win32KeyedMutexAcquireReleaseInfoKHR: releaseSyncs_.size() != releaseKeys_.size()" );
+ }
+# endif /*VULKAN_HPP_NO_EXCEPTIONS*/
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 Win32KeyedMutexAcquireReleaseInfoKHR &
+ operator=( Win32KeyedMutexAcquireReleaseInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ Win32KeyedMutexAcquireReleaseInfoKHR &
+ operator=( VkWin32KeyedMutexAcquireReleaseInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::Win32KeyedMutexAcquireReleaseInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ Win32KeyedMutexAcquireReleaseInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ Win32KeyedMutexAcquireReleaseInfoKHR & setAcquireCount( uint32_t acquireCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ acquireCount = acquireCount_;
+ return *this;
+ }
+
+ Win32KeyedMutexAcquireReleaseInfoKHR &
+ setPAcquireSyncs( const VULKAN_HPP_NAMESPACE::DeviceMemory * pAcquireSyncs_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pAcquireSyncs = pAcquireSyncs_;
+ return *this;
+ }
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ Win32KeyedMutexAcquireReleaseInfoKHR & setAcquireSyncs(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DeviceMemory> const & acquireSyncs_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ acquireCount = static_cast<uint32_t>( acquireSyncs_.size() );
+ pAcquireSyncs = acquireSyncs_.data();
+ return *this;
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ Win32KeyedMutexAcquireReleaseInfoKHR & setPAcquireKeys( const uint64_t * pAcquireKeys_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pAcquireKeys = pAcquireKeys_;
+ return *this;
+ }
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ Win32KeyedMutexAcquireReleaseInfoKHR & setAcquireKeys(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const & acquireKeys_ ) VULKAN_HPP_NOEXCEPT
+ {
+ acquireCount = static_cast<uint32_t>( acquireKeys_.size() );
+ pAcquireKeys = acquireKeys_.data();
+ return *this;
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ Win32KeyedMutexAcquireReleaseInfoKHR & setPAcquireTimeouts( const uint32_t * pAcquireTimeouts_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pAcquireTimeouts = pAcquireTimeouts_;
+ return *this;
+ }
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ Win32KeyedMutexAcquireReleaseInfoKHR & setAcquireTimeouts(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & acquireTimeouts_ ) VULKAN_HPP_NOEXCEPT
+ {
+ acquireCount = static_cast<uint32_t>( acquireTimeouts_.size() );
+ pAcquireTimeouts = acquireTimeouts_.data();
+ return *this;
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ Win32KeyedMutexAcquireReleaseInfoKHR & setReleaseCount( uint32_t releaseCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ releaseCount = releaseCount_;
+ return *this;
+ }
+
+ Win32KeyedMutexAcquireReleaseInfoKHR &
+ setPReleaseSyncs( const VULKAN_HPP_NAMESPACE::DeviceMemory * pReleaseSyncs_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pReleaseSyncs = pReleaseSyncs_;
+ return *this;
+ }
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ Win32KeyedMutexAcquireReleaseInfoKHR & setReleaseSyncs(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DeviceMemory> const & releaseSyncs_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ releaseCount = static_cast<uint32_t>( releaseSyncs_.size() );
+ pReleaseSyncs = releaseSyncs_.data();
+ return *this;
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ Win32KeyedMutexAcquireReleaseInfoKHR & setPReleaseKeys( const uint64_t * pReleaseKeys_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pReleaseKeys = pReleaseKeys_;
+ return *this;
+ }
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ Win32KeyedMutexAcquireReleaseInfoKHR & setReleaseKeys(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const & releaseKeys_ ) VULKAN_HPP_NOEXCEPT
+ {
+ releaseCount = static_cast<uint32_t>( releaseKeys_.size() );
+ pReleaseKeys = releaseKeys_.data();
+ return *this;
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkWin32KeyedMutexAcquireReleaseInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkWin32KeyedMutexAcquireReleaseInfoKHR *>( this );
+ }
+
+ operator VkWin32KeyedMutexAcquireReleaseInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkWin32KeyedMutexAcquireReleaseInfoKHR *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( Win32KeyedMutexAcquireReleaseInfoKHR const & ) const = default;
+# else
+ bool operator==( Win32KeyedMutexAcquireReleaseInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( acquireCount == rhs.acquireCount ) &&
+ ( pAcquireSyncs == rhs.pAcquireSyncs ) && ( pAcquireKeys == rhs.pAcquireKeys ) &&
+ ( pAcquireTimeouts == rhs.pAcquireTimeouts ) && ( releaseCount == rhs.releaseCount ) &&
+ ( pReleaseSyncs == rhs.pReleaseSyncs ) && ( pReleaseKeys == rhs.pReleaseKeys );
+ }
+
+ bool operator!=( Win32KeyedMutexAcquireReleaseInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eWin32KeyedMutexAcquireReleaseInfoKHR;
+ const void * pNext = {};
+ uint32_t acquireCount = {};
+ const VULKAN_HPP_NAMESPACE::DeviceMemory * pAcquireSyncs = {};
+ const uint64_t * pAcquireKeys = {};
+ const uint32_t * pAcquireTimeouts = {};
+ uint32_t releaseCount = {};
+ const VULKAN_HPP_NAMESPACE::DeviceMemory * pReleaseSyncs = {};
+ const uint64_t * pReleaseKeys = {};
+ };
+ static_assert( sizeof( Win32KeyedMutexAcquireReleaseInfoKHR ) == sizeof( VkWin32KeyedMutexAcquireReleaseInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<Win32KeyedMutexAcquireReleaseInfoKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eWin32KeyedMutexAcquireReleaseInfoKHR>
+ {
+ using Type = Win32KeyedMutexAcquireReleaseInfoKHR;
+ };
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ struct Win32KeyedMutexAcquireReleaseInfoNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eWin32KeyedMutexAcquireReleaseInfoNV;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR
+ Win32KeyedMutexAcquireReleaseInfoNV( uint32_t acquireCount_ = {},
+ const VULKAN_HPP_NAMESPACE::DeviceMemory * pAcquireSyncs_ = {},
+ const uint64_t * pAcquireKeys_ = {},
+ const uint32_t * pAcquireTimeoutMilliseconds_ = {},
+ uint32_t releaseCount_ = {},
+ const VULKAN_HPP_NAMESPACE::DeviceMemory * pReleaseSyncs_ = {},
+ const uint64_t * pReleaseKeys_ = {} ) VULKAN_HPP_NOEXCEPT
+ : acquireCount( acquireCount_ )
+ , pAcquireSyncs( pAcquireSyncs_ )
+ , pAcquireKeys( pAcquireKeys_ )
+ , pAcquireTimeoutMilliseconds( pAcquireTimeoutMilliseconds_ )
+ , releaseCount( releaseCount_ )
+ , pReleaseSyncs( pReleaseSyncs_ )
+ , pReleaseKeys( pReleaseKeys_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR Win32KeyedMutexAcquireReleaseInfoNV( Win32KeyedMutexAcquireReleaseInfoNV const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ Win32KeyedMutexAcquireReleaseInfoNV( VkWin32KeyedMutexAcquireReleaseInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ : Win32KeyedMutexAcquireReleaseInfoNV( *reinterpret_cast<Win32KeyedMutexAcquireReleaseInfoNV const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ Win32KeyedMutexAcquireReleaseInfoNV(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DeviceMemory> const & acquireSyncs_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const & acquireKeys_ = {},
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & acquireTimeoutMilliseconds_ = {},
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DeviceMemory> const &
+ releaseSyncs_ = {},
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const & releaseKeys_ = {} )
+ : acquireCount( static_cast<uint32_t>( acquireSyncs_.size() ) )
+ , pAcquireSyncs( acquireSyncs_.data() )
+ , pAcquireKeys( acquireKeys_.data() )
+ , pAcquireTimeoutMilliseconds( acquireTimeoutMilliseconds_.data() )
+ , releaseCount( static_cast<uint32_t>( releaseSyncs_.size() ) )
+ , pReleaseSyncs( releaseSyncs_.data() )
+ , pReleaseKeys( releaseKeys_.data() )
+ {
+# ifdef VULKAN_HPP_NO_EXCEPTIONS
+ VULKAN_HPP_ASSERT( acquireSyncs_.size() == acquireKeys_.size() );
+ VULKAN_HPP_ASSERT( acquireSyncs_.size() == acquireTimeoutMilliseconds_.size() );
+ VULKAN_HPP_ASSERT( acquireKeys_.size() == acquireTimeoutMilliseconds_.size() );
+# else
+ if ( acquireSyncs_.size() != acquireKeys_.size() )
+ {
+ throw LogicError(
+ VULKAN_HPP_NAMESPACE_STRING
+ "::Win32KeyedMutexAcquireReleaseInfoNV::Win32KeyedMutexAcquireReleaseInfoNV: acquireSyncs_.size() != acquireKeys_.size()" );
+ }
+ if ( acquireSyncs_.size() != acquireTimeoutMilliseconds_.size() )
+ {
+ throw LogicError(
+ VULKAN_HPP_NAMESPACE_STRING
+ "::Win32KeyedMutexAcquireReleaseInfoNV::Win32KeyedMutexAcquireReleaseInfoNV: acquireSyncs_.size() != acquireTimeoutMilliseconds_.size()" );
+ }
+ if ( acquireKeys_.size() != acquireTimeoutMilliseconds_.size() )
+ {
+ throw LogicError(
+ VULKAN_HPP_NAMESPACE_STRING
+ "::Win32KeyedMutexAcquireReleaseInfoNV::Win32KeyedMutexAcquireReleaseInfoNV: acquireKeys_.size() != acquireTimeoutMilliseconds_.size()" );
+ }
+# endif /*VULKAN_HPP_NO_EXCEPTIONS*/
+
+# ifdef VULKAN_HPP_NO_EXCEPTIONS
+ VULKAN_HPP_ASSERT( releaseSyncs_.size() == releaseKeys_.size() );
+# else
+ if ( releaseSyncs_.size() != releaseKeys_.size() )
+ {
+ throw LogicError(
+ VULKAN_HPP_NAMESPACE_STRING
+ "::Win32KeyedMutexAcquireReleaseInfoNV::Win32KeyedMutexAcquireReleaseInfoNV: releaseSyncs_.size() != releaseKeys_.size()" );
+ }
+# endif /*VULKAN_HPP_NO_EXCEPTIONS*/
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 Win32KeyedMutexAcquireReleaseInfoNV &
+ operator=( Win32KeyedMutexAcquireReleaseInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ Win32KeyedMutexAcquireReleaseInfoNV &
+ operator=( VkWin32KeyedMutexAcquireReleaseInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::Win32KeyedMutexAcquireReleaseInfoNV const *>( &rhs );
+ return *this;
+ }
+
+ Win32KeyedMutexAcquireReleaseInfoNV & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ Win32KeyedMutexAcquireReleaseInfoNV & setAcquireCount( uint32_t acquireCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ acquireCount = acquireCount_;
+ return *this;
+ }
+
+ Win32KeyedMutexAcquireReleaseInfoNV &
+ setPAcquireSyncs( const VULKAN_HPP_NAMESPACE::DeviceMemory * pAcquireSyncs_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pAcquireSyncs = pAcquireSyncs_;
+ return *this;
+ }
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ Win32KeyedMutexAcquireReleaseInfoNV & setAcquireSyncs(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DeviceMemory> const & acquireSyncs_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ acquireCount = static_cast<uint32_t>( acquireSyncs_.size() );
+ pAcquireSyncs = acquireSyncs_.data();
+ return *this;
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ Win32KeyedMutexAcquireReleaseInfoNV & setPAcquireKeys( const uint64_t * pAcquireKeys_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pAcquireKeys = pAcquireKeys_;
+ return *this;
+ }
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ Win32KeyedMutexAcquireReleaseInfoNV & setAcquireKeys(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const & acquireKeys_ ) VULKAN_HPP_NOEXCEPT
+ {
+ acquireCount = static_cast<uint32_t>( acquireKeys_.size() );
+ pAcquireKeys = acquireKeys_.data();
+ return *this;
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ Win32KeyedMutexAcquireReleaseInfoNV &
+ setPAcquireTimeoutMilliseconds( const uint32_t * pAcquireTimeoutMilliseconds_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pAcquireTimeoutMilliseconds = pAcquireTimeoutMilliseconds_;
+ return *this;
+ }
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ Win32KeyedMutexAcquireReleaseInfoNV & setAcquireTimeoutMilliseconds(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const & acquireTimeoutMilliseconds_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ acquireCount = static_cast<uint32_t>( acquireTimeoutMilliseconds_.size() );
+ pAcquireTimeoutMilliseconds = acquireTimeoutMilliseconds_.data();
+ return *this;
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ Win32KeyedMutexAcquireReleaseInfoNV & setReleaseCount( uint32_t releaseCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ releaseCount = releaseCount_;
+ return *this;
+ }
+
+ Win32KeyedMutexAcquireReleaseInfoNV &
+ setPReleaseSyncs( const VULKAN_HPP_NAMESPACE::DeviceMemory * pReleaseSyncs_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pReleaseSyncs = pReleaseSyncs_;
+ return *this;
+ }
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ Win32KeyedMutexAcquireReleaseInfoNV & setReleaseSyncs(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DeviceMemory> const & releaseSyncs_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ releaseCount = static_cast<uint32_t>( releaseSyncs_.size() );
+ pReleaseSyncs = releaseSyncs_.data();
+ return *this;
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ Win32KeyedMutexAcquireReleaseInfoNV & setPReleaseKeys( const uint64_t * pReleaseKeys_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pReleaseKeys = pReleaseKeys_;
+ return *this;
+ }
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ Win32KeyedMutexAcquireReleaseInfoNV & setReleaseKeys(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const & releaseKeys_ ) VULKAN_HPP_NOEXCEPT
+ {
+ releaseCount = static_cast<uint32_t>( releaseKeys_.size() );
+ pReleaseKeys = releaseKeys_.data();
+ return *this;
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkWin32KeyedMutexAcquireReleaseInfoNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkWin32KeyedMutexAcquireReleaseInfoNV *>( this );
+ }
+
+ operator VkWin32KeyedMutexAcquireReleaseInfoNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkWin32KeyedMutexAcquireReleaseInfoNV *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( Win32KeyedMutexAcquireReleaseInfoNV const & ) const = default;
+# else
+ bool operator==( Win32KeyedMutexAcquireReleaseInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( acquireCount == rhs.acquireCount ) &&
+ ( pAcquireSyncs == rhs.pAcquireSyncs ) && ( pAcquireKeys == rhs.pAcquireKeys ) &&
+ ( pAcquireTimeoutMilliseconds == rhs.pAcquireTimeoutMilliseconds ) &&
+ ( releaseCount == rhs.releaseCount ) && ( pReleaseSyncs == rhs.pReleaseSyncs ) &&
+ ( pReleaseKeys == rhs.pReleaseKeys );
+ }
+
+ bool operator!=( Win32KeyedMutexAcquireReleaseInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eWin32KeyedMutexAcquireReleaseInfoNV;
+ const void * pNext = {};
+ uint32_t acquireCount = {};
+ const VULKAN_HPP_NAMESPACE::DeviceMemory * pAcquireSyncs = {};
+ const uint64_t * pAcquireKeys = {};
+ const uint32_t * pAcquireTimeoutMilliseconds = {};
+ uint32_t releaseCount = {};
+ const VULKAN_HPP_NAMESPACE::DeviceMemory * pReleaseSyncs = {};
+ const uint64_t * pReleaseKeys = {};
+ };
+ static_assert( sizeof( Win32KeyedMutexAcquireReleaseInfoNV ) == sizeof( VkWin32KeyedMutexAcquireReleaseInfoNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<Win32KeyedMutexAcquireReleaseInfoNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eWin32KeyedMutexAcquireReleaseInfoNV>
+ {
+ using Type = Win32KeyedMutexAcquireReleaseInfoNV;
+ };
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+
+#if defined( VK_USE_PLATFORM_WIN32_KHR )
+ struct Win32SurfaceCreateInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eWin32SurfaceCreateInfoKHR;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR Win32SurfaceCreateInfoKHR( VULKAN_HPP_NAMESPACE::Win32SurfaceCreateFlagsKHR flags_ = {},
+ HINSTANCE hinstance_ = {},
+ HWND hwnd_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , hinstance( hinstance_ )
+ , hwnd( hwnd_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR
+ Win32SurfaceCreateInfoKHR( Win32SurfaceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ Win32SurfaceCreateInfoKHR( VkWin32SurfaceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : Win32SurfaceCreateInfoKHR( *reinterpret_cast<Win32SurfaceCreateInfoKHR const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 Win32SurfaceCreateInfoKHR &
+ operator=( Win32SurfaceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ Win32SurfaceCreateInfoKHR & operator=( VkWin32SurfaceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::Win32SurfaceCreateInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ Win32SurfaceCreateInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ Win32SurfaceCreateInfoKHR & setFlags( VULKAN_HPP_NAMESPACE::Win32SurfaceCreateFlagsKHR flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ Win32SurfaceCreateInfoKHR & setHinstance( HINSTANCE hinstance_ ) VULKAN_HPP_NOEXCEPT
+ {
+ hinstance = hinstance_;
+ return *this;
+ }
+
+ Win32SurfaceCreateInfoKHR & setHwnd( HWND hwnd_ ) VULKAN_HPP_NOEXCEPT
+ {
+ hwnd = hwnd_;
+ return *this;
+ }
+
+ operator VkWin32SurfaceCreateInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkWin32SurfaceCreateInfoKHR *>( this );
+ }
+
+ operator VkWin32SurfaceCreateInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkWin32SurfaceCreateInfoKHR *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( Win32SurfaceCreateInfoKHR const & ) const = default;
+# else
+ bool operator==( Win32SurfaceCreateInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( hinstance == rhs.hinstance ) && ( hwnd == rhs.hwnd );
+ }
+
+ bool operator!=( Win32SurfaceCreateInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eWin32SurfaceCreateInfoKHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::Win32SurfaceCreateFlagsKHR flags = {};
+ HINSTANCE hinstance = {};
+ HWND hwnd = {};
+ };
+ static_assert( sizeof( Win32SurfaceCreateInfoKHR ) == sizeof( VkWin32SurfaceCreateInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<Win32SurfaceCreateInfoKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eWin32SurfaceCreateInfoKHR>
+ {
+ using Type = Win32SurfaceCreateInfoKHR;
+ };
+#endif /*VK_USE_PLATFORM_WIN32_KHR*/
+
+ struct WriteDescriptorSet
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eWriteDescriptorSet;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR WriteDescriptorSet(
+ VULKAN_HPP_NAMESPACE::DescriptorSet dstSet_ = {},
+ uint32_t dstBinding_ = {},
+ uint32_t dstArrayElement_ = {},
+ uint32_t descriptorCount_ = {},
+ VULKAN_HPP_NAMESPACE::DescriptorType descriptorType_ = VULKAN_HPP_NAMESPACE::DescriptorType::eSampler,
+ const VULKAN_HPP_NAMESPACE::DescriptorImageInfo * pImageInfo_ = {},
+ const VULKAN_HPP_NAMESPACE::DescriptorBufferInfo * pBufferInfo_ = {},
+ const VULKAN_HPP_NAMESPACE::BufferView * pTexelBufferView_ = {} ) VULKAN_HPP_NOEXCEPT
+ : dstSet( dstSet_ )
+ , dstBinding( dstBinding_ )
+ , dstArrayElement( dstArrayElement_ )
+ , descriptorCount( descriptorCount_ )
+ , descriptorType( descriptorType_ )
+ , pImageInfo( pImageInfo_ )
+ , pBufferInfo( pBufferInfo_ )
+ , pTexelBufferView( pTexelBufferView_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR WriteDescriptorSet( WriteDescriptorSet const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ WriteDescriptorSet( VkWriteDescriptorSet const & rhs ) VULKAN_HPP_NOEXCEPT
+ : WriteDescriptorSet( *reinterpret_cast<WriteDescriptorSet const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ WriteDescriptorSet(
+ VULKAN_HPP_NAMESPACE::DescriptorSet dstSet_,
+ uint32_t dstBinding_,
+ uint32_t dstArrayElement_,
+ VULKAN_HPP_NAMESPACE::DescriptorType descriptorType_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DescriptorImageInfo> const & imageInfo_,
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DescriptorBufferInfo> const &
+ bufferInfo_ = {},
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::BufferView> const &
+ texelBufferView_ = {} )
+ : dstSet( dstSet_ )
+ , dstBinding( dstBinding_ )
+ , dstArrayElement( dstArrayElement_ )
+ , descriptorCount( static_cast<uint32_t>( !imageInfo_.empty() ? imageInfo_.size()
+ : !bufferInfo_.empty() ? bufferInfo_.size()
+ : texelBufferView_.size() ) )
+ , descriptorType( descriptorType_ )
+ , pImageInfo( imageInfo_.data() )
+ , pBufferInfo( bufferInfo_.data() )
+ , pTexelBufferView( texelBufferView_.data() )
+ {
+# ifdef VULKAN_HPP_NO_EXCEPTIONS
+ VULKAN_HPP_ASSERT( ( !imageInfo_.empty() + !bufferInfo_.empty() + !texelBufferView_.empty() ) <= 1 );
+# else
+ if ( 1 < ( !imageInfo_.empty() + !bufferInfo_.empty() + !texelBufferView_.empty() ) )
+ {
+ throw LogicError(
+ VULKAN_HPP_NAMESPACE_STRING
+ "::WriteDescriptorSet::WriteDescriptorSet: 1 < ( !imageInfo_.empty() + !bufferInfo_.empty() + !texelBufferView_.empty() )" );
+ }
+# endif /*VULKAN_HPP_NO_EXCEPTIONS*/
+ }
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 WriteDescriptorSet &
+ operator=( WriteDescriptorSet const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ WriteDescriptorSet & operator=( VkWriteDescriptorSet const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::WriteDescriptorSet const *>( &rhs );
+ return *this;
+ }
+
+ WriteDescriptorSet & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ WriteDescriptorSet & setDstSet( VULKAN_HPP_NAMESPACE::DescriptorSet dstSet_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstSet = dstSet_;
+ return *this;
+ }
+
+ WriteDescriptorSet & setDstBinding( uint32_t dstBinding_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstBinding = dstBinding_;
+ return *this;
+ }
+
+ WriteDescriptorSet & setDstArrayElement( uint32_t dstArrayElement_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dstArrayElement = dstArrayElement_;
+ return *this;
+ }
+
+ WriteDescriptorSet & setDescriptorCount( uint32_t descriptorCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ descriptorCount = descriptorCount_;
+ return *this;
+ }
+
+ WriteDescriptorSet & setDescriptorType( VULKAN_HPP_NAMESPACE::DescriptorType descriptorType_ ) VULKAN_HPP_NOEXCEPT
+ {
+ descriptorType = descriptorType_;
+ return *this;
+ }
+
+ WriteDescriptorSet &
+ setPImageInfo( const VULKAN_HPP_NAMESPACE::DescriptorImageInfo * pImageInfo_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pImageInfo = pImageInfo_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ WriteDescriptorSet & setImageInfo(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DescriptorImageInfo> const &
+ imageInfo_ ) VULKAN_HPP_NOEXCEPT
+ {
+ descriptorCount = static_cast<uint32_t>( imageInfo_.size() );
+ pImageInfo = imageInfo_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ WriteDescriptorSet &
+ setPBufferInfo( const VULKAN_HPP_NAMESPACE::DescriptorBufferInfo * pBufferInfo_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pBufferInfo = pBufferInfo_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ WriteDescriptorSet & setBufferInfo(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DescriptorBufferInfo> const &
+ bufferInfo_ ) VULKAN_HPP_NOEXCEPT
+ {
+ descriptorCount = static_cast<uint32_t>( bufferInfo_.size() );
+ pBufferInfo = bufferInfo_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ WriteDescriptorSet &
+ setPTexelBufferView( const VULKAN_HPP_NAMESPACE::BufferView * pTexelBufferView_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pTexelBufferView = pTexelBufferView_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ WriteDescriptorSet & setTexelBufferView(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::BufferView> const & texelBufferView_ )
+ VULKAN_HPP_NOEXCEPT
+ {
+ descriptorCount = static_cast<uint32_t>( texelBufferView_.size() );
+ pTexelBufferView = texelBufferView_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkWriteDescriptorSet const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkWriteDescriptorSet *>( this );
+ }
+
+ operator VkWriteDescriptorSet &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkWriteDescriptorSet *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( WriteDescriptorSet const & ) const = default;
+#else
+ bool operator==( WriteDescriptorSet const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( dstSet == rhs.dstSet ) &&
+ ( dstBinding == rhs.dstBinding ) && ( dstArrayElement == rhs.dstArrayElement ) &&
+ ( descriptorCount == rhs.descriptorCount ) && ( descriptorType == rhs.descriptorType ) &&
+ ( pImageInfo == rhs.pImageInfo ) && ( pBufferInfo == rhs.pBufferInfo ) &&
+ ( pTexelBufferView == rhs.pTexelBufferView );
+ }
+
+ bool operator!=( WriteDescriptorSet const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eWriteDescriptorSet;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::DescriptorSet dstSet = {};
+ uint32_t dstBinding = {};
+ uint32_t dstArrayElement = {};
+ uint32_t descriptorCount = {};
+ VULKAN_HPP_NAMESPACE::DescriptorType descriptorType = VULKAN_HPP_NAMESPACE::DescriptorType::eSampler;
+ const VULKAN_HPP_NAMESPACE::DescriptorImageInfo * pImageInfo = {};
+ const VULKAN_HPP_NAMESPACE::DescriptorBufferInfo * pBufferInfo = {};
+ const VULKAN_HPP_NAMESPACE::BufferView * pTexelBufferView = {};
+ };
+ static_assert( sizeof( WriteDescriptorSet ) == sizeof( VkWriteDescriptorSet ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<WriteDescriptorSet>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eWriteDescriptorSet>
+ {
+ using Type = WriteDescriptorSet;
+ };
+
+ struct WriteDescriptorSetAccelerationStructureKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eWriteDescriptorSetAccelerationStructureKHR;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR WriteDescriptorSetAccelerationStructureKHR(
+ uint32_t accelerationStructureCount_ = {},
+ const VULKAN_HPP_NAMESPACE::AccelerationStructureKHR * pAccelerationStructures_ = {} ) VULKAN_HPP_NOEXCEPT
+ : accelerationStructureCount( accelerationStructureCount_ )
+ , pAccelerationStructures( pAccelerationStructures_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR WriteDescriptorSetAccelerationStructureKHR(
+ WriteDescriptorSetAccelerationStructureKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ WriteDescriptorSetAccelerationStructureKHR( VkWriteDescriptorSetAccelerationStructureKHR const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : WriteDescriptorSetAccelerationStructureKHR(
+ *reinterpret_cast<WriteDescriptorSetAccelerationStructureKHR const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ WriteDescriptorSetAccelerationStructureKHR(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AccelerationStructureKHR> const &
+ accelerationStructures_ )
+ : accelerationStructureCount( static_cast<uint32_t>( accelerationStructures_.size() ) )
+ , pAccelerationStructures( accelerationStructures_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 WriteDescriptorSetAccelerationStructureKHR &
+ operator=( WriteDescriptorSetAccelerationStructureKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ WriteDescriptorSetAccelerationStructureKHR &
+ operator=( VkWriteDescriptorSetAccelerationStructureKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::WriteDescriptorSetAccelerationStructureKHR const *>( &rhs );
+ return *this;
+ }
+
+ WriteDescriptorSetAccelerationStructureKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ WriteDescriptorSetAccelerationStructureKHR &
+ setAccelerationStructureCount( uint32_t accelerationStructureCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ accelerationStructureCount = accelerationStructureCount_;
+ return *this;
+ }
+
+ WriteDescriptorSetAccelerationStructureKHR & setPAccelerationStructures(
+ const VULKAN_HPP_NAMESPACE::AccelerationStructureKHR * pAccelerationStructures_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pAccelerationStructures = pAccelerationStructures_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ WriteDescriptorSetAccelerationStructureKHR & setAccelerationStructures(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AccelerationStructureKHR> const &
+ accelerationStructures_ ) VULKAN_HPP_NOEXCEPT
+ {
+ accelerationStructureCount = static_cast<uint32_t>( accelerationStructures_.size() );
+ pAccelerationStructures = accelerationStructures_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkWriteDescriptorSetAccelerationStructureKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkWriteDescriptorSetAccelerationStructureKHR *>( this );
+ }
+
+ operator VkWriteDescriptorSetAccelerationStructureKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkWriteDescriptorSetAccelerationStructureKHR *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( WriteDescriptorSetAccelerationStructureKHR const & ) const = default;
+#else
+ bool operator==( WriteDescriptorSetAccelerationStructureKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( accelerationStructureCount == rhs.accelerationStructureCount ) &&
+ ( pAccelerationStructures == rhs.pAccelerationStructures );
+ }
+
+ bool operator!=( WriteDescriptorSetAccelerationStructureKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eWriteDescriptorSetAccelerationStructureKHR;
+ const void * pNext = {};
+ uint32_t accelerationStructureCount = {};
+ const VULKAN_HPP_NAMESPACE::AccelerationStructureKHR * pAccelerationStructures = {};
+ };
+ static_assert( sizeof( WriteDescriptorSetAccelerationStructureKHR ) ==
+ sizeof( VkWriteDescriptorSetAccelerationStructureKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<WriteDescriptorSetAccelerationStructureKHR>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eWriteDescriptorSetAccelerationStructureKHR>
+ {
+ using Type = WriteDescriptorSetAccelerationStructureKHR;
+ };
+
+ struct WriteDescriptorSetAccelerationStructureNV
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eWriteDescriptorSetAccelerationStructureNV;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR WriteDescriptorSetAccelerationStructureNV(
+ uint32_t accelerationStructureCount_ = {},
+ const VULKAN_HPP_NAMESPACE::AccelerationStructureNV * pAccelerationStructures_ = {} ) VULKAN_HPP_NOEXCEPT
+ : accelerationStructureCount( accelerationStructureCount_ )
+ , pAccelerationStructures( pAccelerationStructures_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR WriteDescriptorSetAccelerationStructureNV(
+ WriteDescriptorSetAccelerationStructureNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ WriteDescriptorSetAccelerationStructureNV( VkWriteDescriptorSetAccelerationStructureNV const & rhs )
+ VULKAN_HPP_NOEXCEPT
+ : WriteDescriptorSetAccelerationStructureNV(
+ *reinterpret_cast<WriteDescriptorSetAccelerationStructureNV const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ WriteDescriptorSetAccelerationStructureNV(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AccelerationStructureNV> const &
+ accelerationStructures_ )
+ : accelerationStructureCount( static_cast<uint32_t>( accelerationStructures_.size() ) )
+ , pAccelerationStructures( accelerationStructures_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 WriteDescriptorSetAccelerationStructureNV &
+ operator=( WriteDescriptorSetAccelerationStructureNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ WriteDescriptorSetAccelerationStructureNV &
+ operator=( VkWriteDescriptorSetAccelerationStructureNV const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::WriteDescriptorSetAccelerationStructureNV const *>( &rhs );
+ return *this;
+ }
+
+ WriteDescriptorSetAccelerationStructureNV & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ WriteDescriptorSetAccelerationStructureNV &
+ setAccelerationStructureCount( uint32_t accelerationStructureCount_ ) VULKAN_HPP_NOEXCEPT
+ {
+ accelerationStructureCount = accelerationStructureCount_;
+ return *this;
+ }
+
+ WriteDescriptorSetAccelerationStructureNV & setPAccelerationStructures(
+ const VULKAN_HPP_NAMESPACE::AccelerationStructureNV * pAccelerationStructures_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pAccelerationStructures = pAccelerationStructures_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ WriteDescriptorSetAccelerationStructureNV & setAccelerationStructures(
+ VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AccelerationStructureNV> const &
+ accelerationStructures_ ) VULKAN_HPP_NOEXCEPT
+ {
+ accelerationStructureCount = static_cast<uint32_t>( accelerationStructures_.size() );
+ pAccelerationStructures = accelerationStructures_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkWriteDescriptorSetAccelerationStructureNV const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkWriteDescriptorSetAccelerationStructureNV *>( this );
+ }
+
+ operator VkWriteDescriptorSetAccelerationStructureNV &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkWriteDescriptorSetAccelerationStructureNV *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( WriteDescriptorSetAccelerationStructureNV const & ) const = default;
+#else
+ bool operator==( WriteDescriptorSetAccelerationStructureNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
+ ( accelerationStructureCount == rhs.accelerationStructureCount ) &&
+ ( pAccelerationStructures == rhs.pAccelerationStructures );
+ }
+
+ bool operator!=( WriteDescriptorSetAccelerationStructureNV const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eWriteDescriptorSetAccelerationStructureNV;
+ const void * pNext = {};
+ uint32_t accelerationStructureCount = {};
+ const VULKAN_HPP_NAMESPACE::AccelerationStructureNV * pAccelerationStructures = {};
+ };
+ static_assert( sizeof( WriteDescriptorSetAccelerationStructureNV ) ==
+ sizeof( VkWriteDescriptorSetAccelerationStructureNV ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<WriteDescriptorSetAccelerationStructureNV>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eWriteDescriptorSetAccelerationStructureNV>
+ {
+ using Type = WriteDescriptorSetAccelerationStructureNV;
+ };
+
+ struct WriteDescriptorSetInlineUniformBlockEXT
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
+ StructureType::eWriteDescriptorSetInlineUniformBlockEXT;
+
+#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR WriteDescriptorSetInlineUniformBlockEXT( uint32_t dataSize_ = {},
+ const void * pData_ = {} ) VULKAN_HPP_NOEXCEPT
+ : dataSize( dataSize_ )
+ , pData( pData_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR WriteDescriptorSetInlineUniformBlockEXT( WriteDescriptorSetInlineUniformBlockEXT const & rhs )
+ VULKAN_HPP_NOEXCEPT = default;
+
+ WriteDescriptorSetInlineUniformBlockEXT( VkWriteDescriptorSetInlineUniformBlockEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ : WriteDescriptorSetInlineUniformBlockEXT(
+ *reinterpret_cast<WriteDescriptorSetInlineUniformBlockEXT const *>( &rhs ) )
+ {}
+
+# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ template <typename T>
+ WriteDescriptorSetInlineUniformBlockEXT( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const T> const & data_ )
+ : dataSize( static_cast<uint32_t>( data_.size() * sizeof( T ) ) ), pData( data_.data() )
+ {}
+# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 WriteDescriptorSetInlineUniformBlockEXT &
+ operator=( WriteDescriptorSetInlineUniformBlockEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ WriteDescriptorSetInlineUniformBlockEXT &
+ operator=( VkWriteDescriptorSetInlineUniformBlockEXT const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::WriteDescriptorSetInlineUniformBlockEXT const *>( &rhs );
+ return *this;
+ }
+
+ WriteDescriptorSetInlineUniformBlockEXT & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ WriteDescriptorSetInlineUniformBlockEXT & setDataSize( uint32_t dataSize_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dataSize = dataSize_;
+ return *this;
+ }
+
+ WriteDescriptorSetInlineUniformBlockEXT & setPData( const void * pData_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pData = pData_;
+ return *this;
+ }
+
+#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
+ template <typename T>
+ WriteDescriptorSetInlineUniformBlockEXT &
+ setData( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const T> const & data_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dataSize = static_cast<uint32_t>( data_.size() * sizeof( T ) );
+ pData = data_.data();
+ return *this;
+ }
+#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
+
+ operator VkWriteDescriptorSetInlineUniformBlockEXT const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkWriteDescriptorSetInlineUniformBlockEXT *>( this );
+ }
+
+ operator VkWriteDescriptorSetInlineUniformBlockEXT &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkWriteDescriptorSetInlineUniformBlockEXT *>( this );
+ }
+
+#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( WriteDescriptorSetInlineUniformBlockEXT const & ) const = default;
+#else
+ bool operator==( WriteDescriptorSetInlineUniformBlockEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( dataSize == rhs.dataSize ) && ( pData == rhs.pData );
+ }
+
+ bool operator!=( WriteDescriptorSetInlineUniformBlockEXT const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+#endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eWriteDescriptorSetInlineUniformBlockEXT;
+ const void * pNext = {};
+ uint32_t dataSize = {};
+ const void * pData = {};
+ };
+ static_assert( sizeof( WriteDescriptorSetInlineUniformBlockEXT ) ==
+ sizeof( VkWriteDescriptorSetInlineUniformBlockEXT ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<WriteDescriptorSetInlineUniformBlockEXT>::value,
+ "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eWriteDescriptorSetInlineUniformBlockEXT>
+ {
+ using Type = WriteDescriptorSetInlineUniformBlockEXT;
+ };
+
+#if defined( VK_USE_PLATFORM_XCB_KHR )
+ struct XcbSurfaceCreateInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eXcbSurfaceCreateInfoKHR;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR XcbSurfaceCreateInfoKHR( VULKAN_HPP_NAMESPACE::XcbSurfaceCreateFlagsKHR flags_ = {},
+ xcb_connection_t * connection_ = {},
+ xcb_window_t window_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , connection( connection_ )
+ , window( window_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR XcbSurfaceCreateInfoKHR( XcbSurfaceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ XcbSurfaceCreateInfoKHR( VkXcbSurfaceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : XcbSurfaceCreateInfoKHR( *reinterpret_cast<XcbSurfaceCreateInfoKHR const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 XcbSurfaceCreateInfoKHR &
+ operator=( XcbSurfaceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ XcbSurfaceCreateInfoKHR & operator=( VkXcbSurfaceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::XcbSurfaceCreateInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ XcbSurfaceCreateInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ XcbSurfaceCreateInfoKHR & setFlags( VULKAN_HPP_NAMESPACE::XcbSurfaceCreateFlagsKHR flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ XcbSurfaceCreateInfoKHR & setConnection( xcb_connection_t * connection_ ) VULKAN_HPP_NOEXCEPT
+ {
+ connection = connection_;
+ return *this;
+ }
+
+ XcbSurfaceCreateInfoKHR & setWindow( xcb_window_t window_ ) VULKAN_HPP_NOEXCEPT
+ {
+ window = window_;
+ return *this;
+ }
+
+ operator VkXcbSurfaceCreateInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkXcbSurfaceCreateInfoKHR *>( this );
+ }
+
+ operator VkXcbSurfaceCreateInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkXcbSurfaceCreateInfoKHR *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( XcbSurfaceCreateInfoKHR const & ) const = default;
+# else
+ bool operator==( XcbSurfaceCreateInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) &&
+ ( connection == rhs.connection ) && ( memcmp( &window, &rhs.window, sizeof( xcb_window_t ) ) == 0 );
+ }
+
+ bool operator!=( XcbSurfaceCreateInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eXcbSurfaceCreateInfoKHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::XcbSurfaceCreateFlagsKHR flags = {};
+ xcb_connection_t * connection = {};
+ xcb_window_t window = {};
+ };
+ static_assert( sizeof( XcbSurfaceCreateInfoKHR ) == sizeof( VkXcbSurfaceCreateInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<XcbSurfaceCreateInfoKHR>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eXcbSurfaceCreateInfoKHR>
+ {
+ using Type = XcbSurfaceCreateInfoKHR;
+ };
+#endif /*VK_USE_PLATFORM_XCB_KHR*/
+
+#if defined( VK_USE_PLATFORM_XLIB_KHR )
+ struct XlibSurfaceCreateInfoKHR
+ {
+ static const bool allowDuplicate = false;
+ static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eXlibSurfaceCreateInfoKHR;
+
+# if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
+ VULKAN_HPP_CONSTEXPR XlibSurfaceCreateInfoKHR( VULKAN_HPP_NAMESPACE::XlibSurfaceCreateFlagsKHR flags_ = {},
+ Display * dpy_ = {},
+ Window window_ = {} ) VULKAN_HPP_NOEXCEPT
+ : flags( flags_ )
+ , dpy( dpy_ )
+ , window( window_ )
+ {}
+
+ VULKAN_HPP_CONSTEXPR XlibSurfaceCreateInfoKHR( XlibSurfaceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ XlibSurfaceCreateInfoKHR( VkXlibSurfaceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ : XlibSurfaceCreateInfoKHR( *reinterpret_cast<XlibSurfaceCreateInfoKHR const *>( &rhs ) )
+ {}
+# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
+
+ VULKAN_HPP_CONSTEXPR_14 XlibSurfaceCreateInfoKHR &
+ operator=( XlibSurfaceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT = default;
+
+ XlibSurfaceCreateInfoKHR & operator=( VkXlibSurfaceCreateInfoKHR const & rhs ) VULKAN_HPP_NOEXCEPT
+ {
+ *this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::XlibSurfaceCreateInfoKHR const *>( &rhs );
+ return *this;
+ }
+
+ XlibSurfaceCreateInfoKHR & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ XlibSurfaceCreateInfoKHR & setFlags( VULKAN_HPP_NAMESPACE::XlibSurfaceCreateFlagsKHR flags_ ) VULKAN_HPP_NOEXCEPT
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ XlibSurfaceCreateInfoKHR & setDpy( Display * dpy_ ) VULKAN_HPP_NOEXCEPT
+ {
+ dpy = dpy_;
+ return *this;
+ }
+
+ XlibSurfaceCreateInfoKHR & setWindow( Window window_ ) VULKAN_HPP_NOEXCEPT
+ {
+ window = window_;
+ return *this;
+ }
+
+ operator VkXlibSurfaceCreateInfoKHR const &() const VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<const VkXlibSurfaceCreateInfoKHR *>( this );
+ }
+
+ operator VkXlibSurfaceCreateInfoKHR &() VULKAN_HPP_NOEXCEPT
+ {
+ return *reinterpret_cast<VkXlibSurfaceCreateInfoKHR *>( this );
+ }
+
+# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
+ auto operator<=>( XlibSurfaceCreateInfoKHR const & ) const = default;
+# else
+ bool operator==( XlibSurfaceCreateInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( flags == rhs.flags ) && ( dpy == rhs.dpy ) &&
+ ( memcmp( &window, &rhs.window, sizeof( Window ) ) == 0 );
+ }
+
+ bool operator!=( XlibSurfaceCreateInfoKHR const & rhs ) const VULKAN_HPP_NOEXCEPT
+ {
+ return !operator==( rhs );
+ }
+# endif
+
+ public:
+ VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eXlibSurfaceCreateInfoKHR;
+ const void * pNext = {};
+ VULKAN_HPP_NAMESPACE::XlibSurfaceCreateFlagsKHR flags = {};
+ Display * dpy = {};
+ Window window = {};
+ };
+ static_assert( sizeof( XlibSurfaceCreateInfoKHR ) == sizeof( VkXlibSurfaceCreateInfoKHR ),
+ "struct and wrapper have different size!" );
+ static_assert( std::is_standard_layout<XlibSurfaceCreateInfoKHR>::value, "struct wrapper is not a standard layout!" );
+
+ template <>
+ struct CppType<StructureType, StructureType::eXlibSurfaceCreateInfoKHR>
+ {
+ using Type = XlibSurfaceCreateInfoKHR;
+ };
+#endif /*VK_USE_PLATFORM_XLIB_KHR*/
+
+} // namespace VULKAN_HPP_NAMESPACE
+#endif
diff --git a/thirdparty/vulkan/include/vulkan/vulkan_vi.h b/thirdparty/vulkan/include/vulkan/vulkan_vi.h
index 2e62d7d3a7..9e0dcca200 100644
--- a/thirdparty/vulkan/include/vulkan/vulkan_vi.h
+++ b/thirdparty/vulkan/include/vulkan/vulkan_vi.h
@@ -2,7 +2,7 @@
#define VULKAN_VI_H_ 1
/*
-** Copyright (c) 2015-2020 The Khronos Group Inc.
+** Copyright 2015-2021 The Khronos Group Inc.
**
** SPDX-License-Identifier: Apache-2.0
*/
diff --git a/thirdparty/vulkan/include/vulkan/vulkan_wayland.h b/thirdparty/vulkan/include/vulkan/vulkan_wayland.h
index f7b307e519..2a329be9dd 100644
--- a/thirdparty/vulkan/include/vulkan/vulkan_wayland.h
+++ b/thirdparty/vulkan/include/vulkan/vulkan_wayland.h
@@ -2,7 +2,7 @@
#define VULKAN_WAYLAND_H_ 1
/*
-** Copyright (c) 2015-2020 The Khronos Group Inc.
+** Copyright 2015-2021 The Khronos Group Inc.
**
** SPDX-License-Identifier: Apache-2.0
*/
diff --git a/thirdparty/vulkan/include/vulkan/vulkan_win32.h b/thirdparty/vulkan/include/vulkan/vulkan_win32.h
index 4b561ea10a..1b680f0b1a 100644
--- a/thirdparty/vulkan/include/vulkan/vulkan_win32.h
+++ b/thirdparty/vulkan/include/vulkan/vulkan_win32.h
@@ -2,7 +2,7 @@
#define VULKAN_WIN32_H_ 1
/*
-** Copyright (c) 2015-2020 The Khronos Group Inc.
+** Copyright 2015-2021 The Khronos Group Inc.
**
** SPDX-License-Identifier: Apache-2.0
*/
diff --git a/thirdparty/vulkan/include/vulkan/vulkan_xcb.h b/thirdparty/vulkan/include/vulkan/vulkan_xcb.h
index c5441b239d..5ba2ad850a 100644
--- a/thirdparty/vulkan/include/vulkan/vulkan_xcb.h
+++ b/thirdparty/vulkan/include/vulkan/vulkan_xcb.h
@@ -2,7 +2,7 @@
#define VULKAN_XCB_H_ 1
/*
-** Copyright (c) 2015-2020 The Khronos Group Inc.
+** Copyright 2015-2021 The Khronos Group Inc.
**
** SPDX-License-Identifier: Apache-2.0
*/
diff --git a/thirdparty/vulkan/include/vulkan/vulkan_xlib.h b/thirdparty/vulkan/include/vulkan/vulkan_xlib.h
index c54628a7ec..75c75dc2e3 100644
--- a/thirdparty/vulkan/include/vulkan/vulkan_xlib.h
+++ b/thirdparty/vulkan/include/vulkan/vulkan_xlib.h
@@ -2,7 +2,7 @@
#define VULKAN_XLIB_H_ 1
/*
-** Copyright (c) 2015-2020 The Khronos Group Inc.
+** Copyright 2015-2021 The Khronos Group Inc.
**
** SPDX-License-Identifier: Apache-2.0
*/
diff --git a/thirdparty/vulkan/include/vulkan/vulkan_xlib_xrandr.h b/thirdparty/vulkan/include/vulkan/vulkan_xlib_xrandr.h
index 436432f842..fa27493422 100644
--- a/thirdparty/vulkan/include/vulkan/vulkan_xlib_xrandr.h
+++ b/thirdparty/vulkan/include/vulkan/vulkan_xlib_xrandr.h
@@ -2,7 +2,7 @@
#define VULKAN_XLIB_XRANDR_H_ 1
/*
-** Copyright (c) 2015-2020 The Khronos Group Inc.
+** Copyright 2015-2021 The Khronos Group Inc.
**
** SPDX-License-Identifier: Apache-2.0
*/
diff --git a/thirdparty/vulkan/loader/adapters.h b/thirdparty/vulkan/loader/adapters.h
deleted file mode 100644
index ef97d66573..0000000000
--- a/thirdparty/vulkan/loader/adapters.h
+++ /dev/null
@@ -1,80 +0,0 @@
-/*
-* Copyright (c) 2019 The Khronos Group Inc.
-* Copyright (c) 2019 Valve Corporation
-* Copyright (c) 2019 LunarG, Inc.
-*
-* Licensed under the Apache License, Version 2.0 (the "License");
-* you may not use this file except in compliance with the License.
-* You may obtain a copy of the License at
-*
-* http://www.apache.org/licenses/LICENSE-2.0
-*
-* Unless required by applicable law or agreed to in writing, software
-* distributed under the License is distributed on an "AS IS" BASIS,
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-* See the License for the specific language governing permissions and
-* limitations under the License.
-*
-* Author: Lenny Komow <lenny@lunarg.com>
-*/
-
-typedef struct LoaderEnumAdapters2 {
- ULONG adapter_count;
- struct {
- UINT handle;
- LUID luid;
- ULONG source_count;
- BOOL present_move_regions_preferred;
- } * adapters;
-} LoaderEnumAdapters2;
-
-typedef _Check_return_ NTSTATUS(APIENTRY *PFN_LoaderEnumAdapters2)(const LoaderEnumAdapters2 *);
-
-typedef enum AdapterInfoType {
- LOADER_QUERY_TYPE_REGISTRY = 48,
-} AdapterInfoType;
-
-typedef struct LoaderQueryAdapterInfo {
- UINT handle;
- AdapterInfoType type;
- VOID *private_data;
- UINT private_data_size;
-} LoaderQueryAdapterInfo;
-
-typedef _Check_return_ NTSTATUS(APIENTRY *PFN_LoaderQueryAdapterInfo)(const LoaderQueryAdapterInfo *);
-
-typedef enum LoaderQueryRegistryType {
- LOADER_QUERY_REGISTRY_ADAPTER_KEY = 1,
-} LoaderQueryRegistryType;
-
-typedef enum LoaderQueryRegistryStatus {
- LOADER_QUERY_REGISTRY_STATUS_SUCCESS = 0,
- LOADER_QUERY_REGISTRY_STATUS_BUFFER_OVERFLOW = 1,
-} LoaderQueryRegistryStatus;
-
-typedef struct LoaderQueryRegistryFlags {
- union {
- struct {
- UINT translate_path : 1;
- UINT mutable_value : 1;
- UINT reserved : 30;
- };
- UINT value;
- };
-} LoaderQueryRegistryFlags;
-
-typedef struct LoaderQueryRegistryInfo {
- LoaderQueryRegistryType query_type;
- LoaderQueryRegistryFlags query_flags;
- WCHAR value_name[MAX_PATH];
- ULONG value_type;
- ULONG physical_adapter_index;
- ULONG output_value_size;
- LoaderQueryRegistryStatus status;
- union {
- DWORD output_dword;
- UINT64 output_qword;
- WCHAR output_string[1];
- BYTE output_binary[1];
- };
-} LoaderQueryRegistryInfo;
diff --git a/thirdparty/vulkan/loader/asm_offset.c b/thirdparty/vulkan/loader/asm_offset.c
deleted file mode 100644
index 97832afa03..0000000000
--- a/thirdparty/vulkan/loader/asm_offset.c
+++ /dev/null
@@ -1,94 +0,0 @@
-/*
- * Copyright (c) 2017-2018 The Khronos Group Inc.
- * Copyright (c) 2017-2018 Valve Corporation
- * Copyright (c) 2017-2018 LunarG, Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * Author: Lenny Komow <lenny@lunarg.com>
- */
-
-// This code generates an assembly file which provides offsets to get struct members from assembly code.
-
-#include <stdio.h>
-#include "loader.h"
-
-#if !defined(_MSC_VER) || (_MSC_VER >= 1900)
-#define SIZE_T_FMT "%-8zu"
-#else
-#define SIZE_T_FMT "%-8lu"
-#endif
-
-struct ValueInfo
-{
- const char *name;
- size_t value;
- const char *comment;
-};
-
-int main(int argc, char **argv) {
- const char *assembler = NULL;
- for (int i = 0; i < argc; ++i) {
- if (!strcmp(argv[i], "MASM")) {
- assembler = "MASM";
- } else if (!strcmp(argv[i], "GAS")) {
- assembler = "GAS";
- }
- }
- if (assembler == NULL) {
- return 1;
- }
-
- struct ValueInfo values[] = {
- { .name = "VK_DEBUG_REPORT_ERROR_BIT_EXT", .value = (size_t) VK_DEBUG_REPORT_ERROR_BIT_EXT,
- .comment = "The numerical value of the enum value 'VK_DEBUG_REPORT_ERROR_BIT_EXT'" },
- { .name = "PTR_SIZE", .value = sizeof(void*),
- .comment = "The size of a pointer" },
- { .name = "HASH_SIZE", .value = sizeof(struct loader_dispatch_hash_entry),
- .comment = "The size of a 'loader_dispatch_hash_entry' struct" },
- { .name = "HASH_OFFSET_INSTANCE", .value = offsetof(struct loader_instance, phys_dev_ext_disp_hash),
- .comment = "The offset of 'phys_dev_ext_disp_hash' within a 'loader_instance' struct" },
- { .name = "PHYS_DEV_OFFSET_INST_DISPATCH", .value = offsetof(struct loader_instance_dispatch_table, phys_dev_ext),
- .comment = "The offset of 'phys_dev_ext' within in 'loader_instance_dispatch_table' struct" },
- { .name = "PHYS_DEV_OFFSET_PHYS_DEV_TRAMP", .value = offsetof(struct loader_physical_device_tramp, phys_dev),
- .comment = "The offset of 'phys_dev' within a 'loader_physical_device_tramp' struct" },
- { .name = "ICD_TERM_OFFSET_PHYS_DEV_TERM", .value = offsetof(struct loader_physical_device_term, this_icd_term),
- .comment = "The offset of 'this_icd_term' within a 'loader_physical_device_term' struct" },
- { .name = "PHYS_DEV_OFFSET_PHYS_DEV_TERM", .value = offsetof(struct loader_physical_device_term, phys_dev),
- .comment = "The offset of 'phys_dev' within a 'loader_physical_device_term' struct" },
- { .name = "INSTANCE_OFFSET_ICD_TERM", .value = offsetof(struct loader_icd_term, this_instance),
- .comment = "The offset of 'this_instance' within a 'loader_icd_term' struct" },
- { .name = "DISPATCH_OFFSET_ICD_TERM", .value = offsetof(struct loader_icd_term, phys_dev_ext),
- .comment = "The offset of 'phys_dev_ext' within a 'loader_icd_term' struct" },
- { .name = "FUNC_NAME_OFFSET_HASH", .value = offsetof(struct loader_dispatch_hash_entry, func_name),
- .comment = "The offset of 'func_name' within a 'loader_dispatch_hash_entry' struct" },
- { .name = "EXT_OFFSET_DEVICE_DISPATCH", .value = offsetof(struct loader_dev_dispatch_table, ext_dispatch),
- .comment = "The offset of 'ext_dispatch' within a 'loader_dev_dispatch_table' struct" },
- };
-
- FILE *file = fopen("gen_defines.asm", "w");
- fprintf(file, "\n");
- if (!strcmp(assembler, "MASM")) {
- for (size_t i = 0; i < sizeof(values)/sizeof(values[0]); ++i) {
- fprintf(file, "%-32s equ " SIZE_T_FMT "; %s\n", values[i].name, values[i].value, values[i].comment);
- }
- } else if (!strcmp(assembler, "GAS")) {
-#ifdef __x86_64__
- fprintf(file, ".set X86_64, 1\n");
-#endif // __x86_64__
- for (size_t i = 0; i < sizeof(values)/sizeof(values[0]); ++i) {
- fprintf(file, ".set %-32s, " SIZE_T_FMT "# %s\n", values[i].name, values[i].value, values[i].comment);
- }
- }
- return fclose(file);
-}
diff --git a/thirdparty/vulkan/loader/cJSON.c b/thirdparty/vulkan/loader/cJSON.c
deleted file mode 100644
index 8da6d83c32..0000000000
--- a/thirdparty/vulkan/loader/cJSON.c
+++ /dev/null
@@ -1,1215 +0,0 @@
-/*
- Copyright (c) 2009 Dave Gamble
- Copyright (c) 2015-2016 The Khronos Group Inc.
- Copyright (c) 2015-2016 Valve Corporation
- Copyright (c) 2015-2016 LunarG, Inc.
-
- Permission is hereby granted, free of charge, to any person obtaining a copy
- of this software and associated documentation files (the "Software"), to deal
- in the Software without restriction, including without limitation the rights
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- copies of the Software, and to permit persons to whom the Software is
- furnished to do so, subject to the following conditions:
-
- The above copyright notice and this permission notice shall be included in
- all copies or substantial portions of the Software.
-
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- THE SOFTWARE.
-*/
-
-/* cJSON */
-/* JSON parser in C. */
-
-#include <string.h>
-#include <stdio.h>
-#include <math.h>
-#include <stdlib.h>
-#include <float.h>
-#include <limits.h>
-#include <ctype.h>
-#include "cJSON.h"
-
-static const char *ep;
-
-const char *cJSON_GetErrorPtr(void) { return ep; }
-
-static void *(*cJSON_malloc)(size_t sz) = malloc;
-static void (*cJSON_free)(void *ptr) = free;
-
-static char *cJSON_strdup(const char *str) {
- size_t len;
- char *copy;
-
- len = strlen(str) + 1;
- if (!(copy = (char *)cJSON_malloc(len))) return 0;
- memcpy(copy, str, len);
- return copy;
-}
-
-void cJSON_InitHooks(cJSON_Hooks *hooks) {
- if (!hooks) { /* Reset hooks */
- cJSON_malloc = malloc;
- cJSON_free = free;
- return;
- }
-
- cJSON_malloc = (hooks->malloc_fn) ? hooks->malloc_fn : malloc;
- cJSON_free = (hooks->free_fn) ? hooks->free_fn : free;
-}
-
-/* Internal constructor. */
-static cJSON *cJSON_New_Item(void) {
- cJSON *node = (cJSON *)cJSON_malloc(sizeof(cJSON));
- if (node) memset(node, 0, sizeof(cJSON));
- return node;
-}
-
-/* Delete a cJSON structure. */
-void cJSON_Delete(cJSON *c) {
- cJSON *next;
- while (c) {
- next = c->next;
- if (!(c->type & cJSON_IsReference) && c->child) cJSON_Delete(c->child);
- if (!(c->type & cJSON_IsReference) && c->valuestring) cJSON_free(c->valuestring);
- if (!(c->type & cJSON_StringIsConst) && c->string) cJSON_free(c->string);
- cJSON_free(c);
- c = next;
- }
-}
-
-void cJSON_Free(void *p) { cJSON_free(p); }
-
-/* Parse the input text to generate a number, and populate the result into item.
- */
-static const char *parse_number(cJSON *item, const char *num) {
- double n = 0, sign = 1, scale = 0;
- int subscale = 0, signsubscale = 1;
-
- if (*num == '-') sign = -1, num++; /* Has sign? */
- if (*num == '0') num++; /* is zero */
- if (*num >= '1' && *num <= '9') do
- n = (n * 10.0) + (*num++ - '0');
- while (*num >= '0' && *num <= '9'); /* Number? */
- if (*num == '.' && num[1] >= '0' && num[1] <= '9') {
- num++;
- do
- n = (n * 10.0) + (*num++ - '0'), scale--;
- while (*num >= '0' && *num <= '9');
- } /* Fractional part? */
- if (*num == 'e' || *num == 'E') /* Exponent? */
- {
- num++;
- if (*num == '+')
- num++;
- else if (*num == '-')
- signsubscale = -1, num++; /* With sign? */
- while (*num >= '0' && *num <= '9') subscale = (subscale * 10) + (*num++ - '0'); /* Number? */
- }
-
- n = sign * n * pow(10.0, (scale + subscale * signsubscale)); /* number = +/-
- number.fraction *
- 10^+/- exponent */
-
- item->valuedouble = n;
- item->valueint = (int)n;
- item->type = cJSON_Number;
- return num;
-}
-
-static size_t pow2gt(size_t x) {
- --x;
- x |= x >> 1;
- x |= x >> 2;
- x |= x >> 4;
- x |= x >> 8;
- x |= x >> 16;
- return x + 1;
-}
-
-typedef struct {
- char *buffer;
- size_t length;
- size_t offset;
-} printbuffer;
-
-static char *ensure(printbuffer *p, size_t needed) {
- char *newbuffer;
- size_t newsize;
- if (!p || !p->buffer) return 0;
- needed += p->offset;
- if (needed <= p->length) return p->buffer + p->offset;
-
- newsize = pow2gt(needed);
- newbuffer = (char *)cJSON_malloc(newsize);
- if (!newbuffer) {
- cJSON_free(p->buffer);
- p->length = 0, p->buffer = 0;
- return 0;
- }
- if (newbuffer) memcpy(newbuffer, p->buffer, p->length);
- cJSON_free(p->buffer);
- p->length = newsize;
- p->buffer = newbuffer;
- return newbuffer + p->offset;
-}
-
-static size_t update(printbuffer *p) {
- char *str;
- if (!p || !p->buffer) return 0;
- str = p->buffer + p->offset;
- return p->offset + strlen(str);
-}
-
-/* Render the number nicely from the given item into a string. */
-static char *print_number(cJSON *item, printbuffer *p) {
- char *str = 0;
- double d = item->valuedouble;
- if (d == 0) {
- if (p)
- str = ensure(p, 2);
- else
- str = (char *)cJSON_malloc(2); /* special case for 0. */
- if (str) strcpy(str, "0");
- } else if (fabs(((double)item->valueint) - d) <= DBL_EPSILON && d <= INT_MAX && d >= INT_MIN) {
- if (p)
- str = ensure(p, 21);
- else
- str = (char *)cJSON_malloc(21); /* 2^64+1 can be represented in 21 chars. */
- if (str) sprintf(str, "%d", item->valueint);
- } else {
- if (p)
- str = ensure(p, 64);
- else
- str = (char *)cJSON_malloc(64); /* This is a nice tradeoff. */
- if (str) {
- if (fabs(floor(d) - d) <= DBL_EPSILON && fabs(d) < 1.0e60)
- sprintf(str, "%.0f", d);
- else if (fabs(d) < 1.0e-6 || fabs(d) > 1.0e9)
- sprintf(str, "%e", d);
- else
- sprintf(str, "%f", d);
- }
- }
- return str;
-}
-
-static unsigned parse_hex4(const char *str) {
- unsigned h = 0;
- if (*str >= '0' && *str <= '9')
- h += (*str) - '0';
- else if (*str >= 'A' && *str <= 'F')
- h += 10 + (*str) - 'A';
- else if (*str >= 'a' && *str <= 'f')
- h += 10 + (*str) - 'a';
- else
- return 0;
- h = h << 4;
- str++;
- if (*str >= '0' && *str <= '9')
- h += (*str) - '0';
- else if (*str >= 'A' && *str <= 'F')
- h += 10 + (*str) - 'A';
- else if (*str >= 'a' && *str <= 'f')
- h += 10 + (*str) - 'a';
- else
- return 0;
- h = h << 4;
- str++;
- if (*str >= '0' && *str <= '9')
- h += (*str) - '0';
- else if (*str >= 'A' && *str <= 'F')
- h += 10 + (*str) - 'A';
- else if (*str >= 'a' && *str <= 'f')
- h += 10 + (*str) - 'a';
- else
- return 0;
- h = h << 4;
- str++;
- if (*str >= '0' && *str <= '9')
- h += (*str) - '0';
- else if (*str >= 'A' && *str <= 'F')
- h += 10 + (*str) - 'A';
- else if (*str >= 'a' && *str <= 'f')
- h += 10 + (*str) - 'a';
- else
- return 0;
- return h;
-}
-
-/* Parse the input text into an unescaped cstring, and populate item. */
-static const unsigned char firstByteMark[7] = {0x00, 0x00, 0xC0, 0xE0, 0xF0, 0xF8, 0xFC};
-static const char *parse_string(cJSON *item, const char *str) {
- const char *ptr = str + 1;
- char *ptr2;
- char *out;
- int len = 0;
- unsigned uc, uc2;
- if (*str != '\"') {
- ep = str;
- return 0;
- } /* not a string! */
-
- while (*ptr != '\"' && *ptr && ++len)
- if (*ptr++ == '\\') ptr++; /* Skip escaped quotes. */
-
- out = (char *)cJSON_malloc(len + 1); /* This is how long we need for the string, roughly. */
- if (!out) return 0;
-
- ptr = str + 1;
- ptr2 = out;
- while (*ptr != '\"' && *ptr) {
- if (*ptr != '\\')
- *ptr2++ = *ptr++;
- else {
- ptr++;
- switch (*ptr) {
- case 'b':
- *ptr2++ = '\b';
- break;
- case 'f':
- *ptr2++ = '\f';
- break;
- case 'n':
- *ptr2++ = '\n';
- break;
- case 'r':
- *ptr2++ = '\r';
- break;
- case 't':
- *ptr2++ = '\t';
- break;
- case 'u': /* transcode utf16 to utf8. */
- uc = parse_hex4(ptr + 1);
- ptr += 4; /* get the unicode char. */
-
- if ((uc >= 0xDC00 && uc <= 0xDFFF) || uc == 0) break; /* check for invalid. */
-
- if (uc >= 0xD800 && uc <= 0xDBFF) /* UTF16 surrogate pairs. */
- {
- if (ptr[1] != '\\' || ptr[2] != 'u') break; /* missing second-half of surrogate. */
- uc2 = parse_hex4(ptr + 3);
- ptr += 6;
- if (uc2 < 0xDC00 || uc2 > 0xDFFF) break; /* invalid second-half of surrogate. */
- uc = 0x10000 + (((uc & 0x3FF) << 10) | (uc2 & 0x3FF));
- }
-
- len = 4;
- if (uc < 0x80)
- len = 1;
- else if (uc < 0x800)
- len = 2;
- else if (uc < 0x10000)
- len = 3;
- ptr2 += len;
-
- switch (len) {
- case 4:
- *--ptr2 = ((uc | 0x80) & 0xBF);
- uc >>= 6;
- // fall through
- case 3:
- *--ptr2 = ((uc | 0x80) & 0xBF);
- uc >>= 6;
- // fall through
- case 2:
- *--ptr2 = ((uc | 0x80) & 0xBF);
- uc >>= 6;
- // fall through
- case 1:
- *--ptr2 = ((unsigned char)uc | firstByteMark[len]);
- }
- ptr2 += len;
- break;
- default:
- *ptr2++ = *ptr;
- break;
- }
- ptr++;
- }
- }
- *ptr2 = 0;
- if (*ptr == '\"') ptr++;
- item->valuestring = out;
- item->type = cJSON_String;
- return ptr;
-}
-
-/* Render the cstring provided to an escaped version that can be printed. */
-static char *print_string_ptr(const char *str, printbuffer *p) {
- const char *ptr;
- char *ptr2;
- char *out;
- size_t len = 0, flag = 0;
- unsigned char token;
-
- for (ptr = str; *ptr; ptr++) flag |= ((*ptr > 0 && *ptr < 32) || (*ptr == '\"') || (*ptr == '\\')) ? 1 : 0;
- if (!flag) {
- len = ptr - str;
- if (p)
- out = ensure(p, len + 3);
- else
- out = (char *)cJSON_malloc(len + 3);
- if (!out) return 0;
- ptr2 = out;
- *ptr2++ = '\"';
- strcpy(ptr2, str);
- ptr2[len] = '\"';
- ptr2[len + 1] = 0;
- return out;
- }
-
- if (!str) {
- if (p)
- out = ensure(p, 3);
- else
- out = (char *)cJSON_malloc(3);
- if (!out) return 0;
- strcpy(out, "\"\"");
- return out;
- }
- ptr = str;
- while ((token = *ptr) && ++len) {
- if (strchr("\"\\\b\f\n\r\t", token))
- len++;
- else if (token < 32)
- len += 5;
- ptr++;
- }
-
- if (p)
- out = ensure(p, len + 3);
- else
- out = (char *)cJSON_malloc(len + 3);
- if (!out) return 0;
-
- ptr2 = out;
- ptr = str;
- *ptr2++ = '\"';
- while (*ptr) {
- if ((unsigned char)*ptr > 31 && *ptr != '\"' && *ptr != '\\')
- *ptr2++ = *ptr++;
- else {
- switch (token = *ptr++) {
- case '\\':
- *ptr2++ = '\\';
- break;
- case '\"':
- *ptr2++ = '\"';
- break;
- case '\b':
- *ptr2++ = '\b';
- break;
- case '\f':
- *ptr2++ = '\f';
- break;
- case '\n':
- *ptr2++ = '\n';
- break;
- case '\r':
- *ptr2++ = '\r';
- break;
- case '\t':
- *ptr2++ = '\t';
- break;
- default:
- sprintf(ptr2, "u%04x", token);
- ptr2 += 5;
- break; /* escape and print */
- }
- }
- }
- *ptr2++ = '\"';
- *ptr2++ = 0;
- return out;
-}
-/* Invote print_string_ptr (which is useful) on an item. */
-static char *print_string(cJSON *item, printbuffer *p) { return print_string_ptr(item->valuestring, p); }
-
-/* Predeclare these prototypes. */
-static const char *parse_value(cJSON *item, const char *value);
-static char *print_value(cJSON *item, int depth, int fmt, printbuffer *p);
-static const char *parse_array(cJSON *item, const char *value);
-static char *print_array(cJSON *item, int depth, int fmt, printbuffer *p);
-static const char *parse_object(cJSON *item, const char *value);
-static char *print_object(cJSON *item, int depth, int fmt, printbuffer *p);
-
-/* Utility to jump whitespace and cr/lf */
-static const char *skip(const char *in) {
- while (in && *in && (unsigned char)*in <= 32) in++;
- return in;
-}
-
-/* Parse an object - create a new root, and populate. */
-cJSON *cJSON_ParseWithOpts(const char *value, const char **return_parse_end, int require_null_terminated) {
- const char *end = 0;
- cJSON *c = cJSON_New_Item();
- ep = 0;
- if (!c) return 0; /* memory fail */
-
- end = parse_value(c, skip(value));
- if (!end) {
- cJSON_Delete(c);
- return 0;
- } /* parse failure. ep is set. */
-
- /* if we require null-terminated JSON without appended garbage, skip and
- * then check for a null terminator */
- if (require_null_terminated) {
- end = skip(end);
- if (*end) {
- cJSON_Delete(c);
- ep = end;
- return 0;
- }
- }
- if (return_parse_end) *return_parse_end = end;
- return c;
-}
-/* Default options for cJSON_Parse */
-cJSON *cJSON_Parse(const char *value) { return cJSON_ParseWithOpts(value, 0, 0); }
-
-/* Render a cJSON item/entity/structure to text. */
-char *cJSON_Print(cJSON *item) { return print_value(item, 0, 1, 0); }
-char *cJSON_PrintUnformatted(cJSON *item) { return print_value(item, 0, 0, 0); }
-
-char *cJSON_PrintBuffered(cJSON *item, int prebuffer, int fmt) {
- printbuffer p;
- p.buffer = (char *)cJSON_malloc(prebuffer);
- p.length = prebuffer;
- p.offset = 0;
- return print_value(item, 0, fmt, &p);
-}
-
-/* Parser core - when encountering text, process appropriately. */
-static const char *parse_value(cJSON *item, const char *value) {
- if (!value) return 0; /* Fail on null. */
- if (!strncmp(value, "null", 4)) {
- item->type = cJSON_NULL;
- return value + 4;
- }
- if (!strncmp(value, "false", 5)) {
- item->type = cJSON_False;
- return value + 5;
- }
- if (!strncmp(value, "true", 4)) {
- item->type = cJSON_True;
- item->valueint = 1;
- return value + 4;
- }
- if (*value == '\"') {
- return parse_string(item, value);
- }
- if (*value == '-' || (*value >= '0' && *value <= '9')) {
- return parse_number(item, value);
- }
- if (*value == '[') {
- return parse_array(item, value);
- }
- if (*value == '{') {
- return parse_object(item, value);
- }
-
- ep = value;
- return 0; /* failure. */
-}
-
-/* Render a value to text. */
-static char *print_value(cJSON *item, int depth, int fmt, printbuffer *p) {
- char *out = 0;
- if (!item) return 0;
- if (p) {
- switch ((item->type) & 255) {
- case cJSON_NULL: {
- out = ensure(p, 5);
- if (out) strcpy(out, "null");
- break;
- }
- case cJSON_False: {
- out = ensure(p, 6);
- if (out) strcpy(out, "false");
- break;
- }
- case cJSON_True: {
- out = ensure(p, 5);
- if (out) strcpy(out, "true");
- break;
- }
- case cJSON_Number:
- out = print_number(item, p);
- break;
- case cJSON_String:
- out = print_string(item, p);
- break;
- case cJSON_Array:
- out = print_array(item, depth, fmt, p);
- break;
- case cJSON_Object:
- out = print_object(item, depth, fmt, p);
- break;
- }
- } else {
- switch ((item->type) & 255) {
- case cJSON_NULL:
- out = cJSON_strdup("null");
- break;
- case cJSON_False:
- out = cJSON_strdup("false");
- break;
- case cJSON_True:
- out = cJSON_strdup("true");
- break;
- case cJSON_Number:
- out = print_number(item, 0);
- break;
- case cJSON_String:
- out = print_string(item, 0);
- break;
- case cJSON_Array:
- out = print_array(item, depth, fmt, 0);
- break;
- case cJSON_Object:
- out = print_object(item, depth, fmt, 0);
- break;
- }
- }
- return out;
-}
-
-/* Build an array from input text. */
-static const char *parse_array(cJSON *item, const char *value) {
- cJSON *child;
- if (*value != '[') {
- ep = value;
- return 0;
- } /* not an array! */
-
- item->type = cJSON_Array;
- value = skip(value + 1);
- if (*value == ']') return value + 1; /* empty array. */
-
- item->child = child = cJSON_New_Item();
- if (!item->child) return 0; /* memory fail */
- value = skip(parse_value(child, skip(value))); /* skip any spacing, get the value. */
- if (!value) return 0;
-
- while (*value == ',') {
- cJSON *new_item;
- if (!(new_item = cJSON_New_Item())) return 0; /* memory fail */
- child->next = new_item;
- new_item->prev = child;
- child = new_item;
- value = skip(parse_value(child, skip(value + 1)));
- if (!value) return 0; /* memory fail */
- }
-
- if (*value == ']') return value + 1; /* end of array */
- ep = value;
- return 0; /* malformed. */
-}
-
-/* Render an array to text */
-static char *print_array(cJSON *item, int depth, int fmt, printbuffer *p) {
- char **entries;
- char *out = 0, *ptr, *ret;
- size_t len = 5;
- cJSON *child = item->child;
- int numentries = 0, fail = 0, j = 0;
- size_t tmplen = 0, i = 0;
-
- /* How many entries in the array? */
- while (child) numentries++, child = child->next;
- /* Explicitly handle numentries==0 */
- if (!numentries) {
- if (p)
- out = ensure(p, 3);
- else
- out = (char *)cJSON_malloc(3);
- if (out) strcpy(out, "[]");
- return out;
- }
-
- if (p) {
- /* Compose the output array. */
- i = p->offset;
- ptr = ensure(p, 1);
- if (!ptr) return 0;
- *ptr = '[';
- p->offset++;
- child = item->child;
- while (child && !fail) {
- print_value(child, depth + 1, fmt, p);
- p->offset = update(p);
- if (child->next) {
- len = fmt ? 2 : 1;
- ptr = ensure(p, len + 1);
- if (!ptr) return 0;
- *ptr++ = ',';
- if (fmt) *ptr++ = ' ';
- *ptr = 0;
- p->offset += len;
- }
- child = child->next;
- }
- ptr = ensure(p, 2);
- if (!ptr) return 0;
- *ptr++ = ']';
- *ptr = 0;
- out = (p->buffer) + i;
- } else {
- /* Allocate an array to hold the values for each */
- entries = (char **)cJSON_malloc(numentries * sizeof(char *));
- if (!entries) return 0;
- memset(entries, 0, numentries * sizeof(char *));
- /* Retrieve all the results: */
- child = item->child;
- while (child && !fail) {
- ret = print_value(child, depth + 1, fmt, 0);
- entries[i++] = ret;
- if (ret)
- len += strlen(ret) + 2 + (fmt ? 1 : 0);
- else
- fail = 1;
- child = child->next;
- }
-
- /* If we didn't fail, try to malloc the output string */
- if (!fail) out = (char *)cJSON_malloc(len);
- /* If that fails, we fail. */
- if (!out) fail = 1;
-
- /* Handle failure. */
- if (fail) {
- for (j = 0; j < numentries; j++)
- if (entries[j]) cJSON_free(entries[j]);
- cJSON_free(entries);
- return 0;
- }
-
- /* Compose the output array. */
- *out = '[';
- ptr = out + 1;
- *ptr = 0;
- for (j = 0; j < numentries; j++) {
- tmplen = strlen(entries[j]);
- memcpy(ptr, entries[j], tmplen);
- ptr += tmplen;
- if (j != numentries - 1) {
- *ptr++ = ',';
- if (fmt) *ptr++ = ' ';
- *ptr = 0;
- }
- cJSON_free(entries[j]);
- }
- cJSON_free(entries);
- *ptr++ = ']';
- *ptr++ = 0;
- }
- return out;
-}
-
-/* Build an object from the text. */
-static const char *parse_object(cJSON *item, const char *value) {
- cJSON *child;
- if (*value != '{') {
- ep = value;
- return 0;
- } /* not an object! */
-
- item->type = cJSON_Object;
- value = skip(value + 1);
- if (*value == '}') return value + 1; /* empty array. */
-
- item->child = child = cJSON_New_Item();
- if (!item->child) return 0;
- value = skip(parse_string(child, skip(value)));
- if (!value) return 0;
- child->string = child->valuestring;
- child->valuestring = 0;
- if (*value != ':') {
- ep = value;
- return 0;
- } /* fail! */
- value = skip(parse_value(child, skip(value + 1))); /* skip any spacing, get the value. */
- if (!value) return 0;
-
- while (*value == ',') {
- cJSON *new_item;
- if (!(new_item = cJSON_New_Item())) return 0; /* memory fail */
- child->next = new_item;
- new_item->prev = child;
- child = new_item;
- value = skip(parse_string(child, skip(value + 1)));
- if (!value) return 0;
- child->string = child->valuestring;
- child->valuestring = 0;
- if (*value != ':') {
- ep = value;
- return 0;
- } /* fail! */
- value = skip(parse_value(child, skip(value + 1))); /* skip any spacing, get the value. */
- if (!value) return 0;
- }
-
- if (*value == '}') return value + 1; /* end of array */
- ep = value;
- return 0; /* malformed. */
-}
-
-/* Render an object to text. */
-static char *print_object(cJSON *item, int depth, int fmt, printbuffer *p) {
- char **entries = 0, **names = 0;
- char *out = 0, *ptr, *ret, *str;
- int j;
- cJSON *child = item->child;
- int numentries = 0, fail = 0, k;
- size_t tmplen = 0, i = 0, len = 7;
- /* Count the number of entries. */
- while (child) numentries++, child = child->next;
- /* Explicitly handle empty object case */
- if (!numentries) {
- if (p)
- out = ensure(p, fmt ? depth + 4 : 3);
- else
- out = (char *)cJSON_malloc(fmt ? depth + 4 : 3);
- if (!out) return 0;
- ptr = out;
- *ptr++ = '{';
- if (fmt) {
- *ptr++ = '\n';
- for (j = 0; j < depth - 1; j++) *ptr++ = '\t';
- }
- *ptr++ = '}';
- *ptr++ = 0;
- return out;
- }
- if (p) {
- /* Compose the output: */
- i = p->offset;
- len = fmt ? 2 : 1;
- ptr = ensure(p, len + 1);
- if (!ptr) return 0;
- *ptr++ = '{';
- if (fmt) *ptr++ = '\n';
- *ptr = 0;
- p->offset += len;
- child = item->child;
- depth++;
- while (child) {
- if (fmt) {
- ptr = ensure(p, depth);
- if (!ptr) return 0;
- for (j = 0; j < depth; j++) *ptr++ = '\t';
- p->offset += depth;
- }
- print_string_ptr(child->string, p);
- p->offset = update(p);
-
- len = fmt ? 2 : 1;
- ptr = ensure(p, len);
- if (!ptr) return 0;
- *ptr++ = ':';
- if (fmt) *ptr++ = '\t';
- p->offset += len;
-
- print_value(child, depth, fmt, p);
- p->offset = update(p);
-
- len = (fmt ? 1 : 0) + (child->next ? 1 : 0);
- ptr = ensure(p, len + 1);
- if (!ptr) return 0;
- if (child->next) *ptr++ = ',';
- if (fmt) *ptr++ = '\n';
- *ptr = 0;
- p->offset += len;
- child = child->next;
- }
- ptr = ensure(p, fmt ? (depth + 1) : 2);
- if (!ptr) return 0;
- if (fmt)
- for (j = 0; j < depth - 1; j++) *ptr++ = '\t';
- *ptr++ = '}';
- *ptr = 0;
- out = (p->buffer) + i;
- } else {
- /* Allocate space for the names and the objects */
- entries = (char **)cJSON_malloc(numentries * sizeof(char *));
- if (!entries) return 0;
- names = (char **)cJSON_malloc(numentries * sizeof(char *));
- if (!names) {
- cJSON_free(entries);
- return 0;
- }
- memset(entries, 0, sizeof(char *) * numentries);
- memset(names, 0, sizeof(char *) * numentries);
-
- /* Collect all the results into our arrays: */
- child = item->child;
- depth++;
- if (fmt) len += depth;
- while (child) {
- names[i] = str = print_string_ptr(child->string, 0);
- entries[i++] = ret = print_value(child, depth, fmt, 0);
- if (str && ret)
- len += strlen(ret) + strlen(str) + 2 + (fmt ? 2 + depth : 0);
- else
- fail = 1;
- child = child->next;
- }
-
- /* Try to allocate the output string */
- if (!fail) out = (char *)cJSON_malloc(len);
- if (!out) fail = 1;
-
- /* Handle failure */
- if (fail) {
- for (j = 0; j < numentries; j++) {
- if (names[i]) cJSON_free(names[j]);
- if (entries[j]) cJSON_free(entries[j]);
- }
- cJSON_free(names);
- cJSON_free(entries);
- return 0;
- }
-
- /* Compose the output: */
- *out = '{';
- ptr = out + 1;
- if (fmt) *ptr++ = '\n';
- *ptr = 0;
- for (j = 0; j < numentries; j++) {
- if (fmt)
- for (k = 0; k < depth; k++) *ptr++ = '\t';
- tmplen = strlen(names[j]);
- memcpy(ptr, names[j], tmplen);
- ptr += tmplen;
- *ptr++ = ':';
- if (fmt) *ptr++ = '\t';
- strcpy(ptr, entries[j]);
- ptr += strlen(entries[j]);
- if (j != numentries - 1) *ptr++ = ',';
- if (fmt) *ptr++ = '\n';
- *ptr = 0;
- cJSON_free(names[j]);
- cJSON_free(entries[j]);
- }
-
- cJSON_free(names);
- cJSON_free(entries);
- if (fmt)
- for (j = 0; j < depth - 1; j++) *ptr++ = '\t';
- *ptr++ = '}';
- *ptr++ = 0;
- }
- return out;
-}
-
-/* Get Array size/item / object item. */
-int cJSON_GetArraySize(cJSON *array) {
- cJSON *c = array->child;
- int i = 0;
- while (c) i++, c = c->next;
- return i;
-}
-cJSON *cJSON_GetArrayItem(cJSON *array, int item) {
- cJSON *c = array->child;
- while (c && item > 0) item--, c = c->next;
- return c;
-}
-cJSON *cJSON_GetObjectItem(cJSON *object, const char *string) {
- cJSON *c = object->child;
- while (c && strcmp(c->string, string)) c = c->next;
- return c;
-}
-
-/* Utility for array list handling. */
-static void suffix_object(cJSON *prev, cJSON *item) {
- prev->next = item;
- item->prev = prev;
-}
-/* Utility for handling references. */
-static cJSON *create_reference(cJSON *item) {
- cJSON *ref = cJSON_New_Item();
- if (!ref) return 0;
- memcpy(ref, item, sizeof(cJSON));
- ref->string = 0;
- ref->type |= cJSON_IsReference;
- ref->next = ref->prev = 0;
- return ref;
-}
-
-/* Add item to array/object. */
-void cJSON_AddItemToArray(cJSON *array, cJSON *item) {
- cJSON *c = array->child;
- if (!item) return;
- if (!c) {
- array->child = item;
- } else {
- while (c && c->next) c = c->next;
- suffix_object(c, item);
- }
-}
-void cJSON_AddItemToObject(cJSON *object, const char *string, cJSON *item) {
- if (!item) return;
- if (item->string) cJSON_free(item->string);
- item->string = cJSON_strdup(string);
- cJSON_AddItemToArray(object, item);
-}
-void cJSON_AddItemToObjectCS(cJSON *object, const char *string, cJSON *item) {
- if (!item) return;
- if (!(item->type & cJSON_StringIsConst) && item->string) cJSON_free(item->string);
- item->string = (char *)string;
- item->type |= cJSON_StringIsConst;
- cJSON_AddItemToArray(object, item);
-}
-void cJSON_AddItemReferenceToArray(cJSON *array, cJSON *item) { cJSON_AddItemToArray(array, create_reference(item)); }
-void cJSON_AddItemReferenceToObject(cJSON *object, const char *string, cJSON *item) {
- cJSON_AddItemToObject(object, string, create_reference(item));
-}
-
-cJSON *cJSON_DetachItemFromArray(cJSON *array, int which) {
- cJSON *c = array->child;
- while (c && which > 0) c = c->next, which--;
- if (!c) return 0;
- if (c->prev) c->prev->next = c->next;
- if (c->next) c->next->prev = c->prev;
- if (c == array->child) array->child = c->next;
- c->prev = c->next = 0;
- return c;
-}
-void cJSON_DeleteItemFromArray(cJSON *array, int which) { cJSON_Delete(cJSON_DetachItemFromArray(array, which)); }
-cJSON *cJSON_DetachItemFromObject(cJSON *object, const char *string) {
- int i = 0;
- cJSON *c = object->child;
- while (c && strcmp(c->string, string)) i++, c = c->next;
- if (c) return cJSON_DetachItemFromArray(object, i);
- return 0;
-}
-void cJSON_DeleteItemFromObject(cJSON *object, const char *string) { cJSON_Delete(cJSON_DetachItemFromObject(object, string)); }
-
-/* Replace array/object items with new ones. */
-void cJSON_InsertItemInArray(cJSON *array, int which, cJSON *newitem) {
- cJSON *c = array->child;
- while (c && which > 0) c = c->next, which--;
- if (!c) {
- cJSON_AddItemToArray(array, newitem);
- return;
- }
- newitem->next = c;
- newitem->prev = c->prev;
- c->prev = newitem;
- if (c == array->child)
- array->child = newitem;
- else
- newitem->prev->next = newitem;
-}
-void cJSON_ReplaceItemInArray(cJSON *array, int which, cJSON *newitem) {
- cJSON *c = array->child;
- while (c && which > 0) c = c->next, which--;
- if (!c) return;
- newitem->next = c->next;
- newitem->prev = c->prev;
- if (newitem->next) newitem->next->prev = newitem;
- if (c == array->child)
- array->child = newitem;
- else
- newitem->prev->next = newitem;
- c->next = c->prev = 0;
- cJSON_Delete(c);
-}
-void cJSON_ReplaceItemInObject(cJSON *object, const char *string, cJSON *newitem) {
- int i = 0;
- cJSON *c = object->child;
- while (c && strcmp(c->string, string)) i++, c = c->next;
- if (c) {
- newitem->string = cJSON_strdup(string);
- cJSON_ReplaceItemInArray(object, i, newitem);
- }
-}
-
-/* Create basic types: */
-cJSON *cJSON_CreateNull(void) {
- cJSON *item = cJSON_New_Item();
- if (item) item->type = cJSON_NULL;
- return item;
-}
-cJSON *cJSON_CreateTrue(void) {
- cJSON *item = cJSON_New_Item();
- if (item) item->type = cJSON_True;
- return item;
-}
-cJSON *cJSON_CreateFalse(void) {
- cJSON *item = cJSON_New_Item();
- if (item) item->type = cJSON_False;
- return item;
-}
-cJSON *cJSON_CreateBool(int b) {
- cJSON *item = cJSON_New_Item();
- if (item) item->type = b ? cJSON_True : cJSON_False;
- return item;
-}
-cJSON *cJSON_CreateNumber(double num) {
- cJSON *item = cJSON_New_Item();
- if (item) {
- item->type = cJSON_Number;
- item->valuedouble = num;
- item->valueint = (int)num;
- }
- return item;
-}
-cJSON *cJSON_CreateString(const char *string) {
- cJSON *item = cJSON_New_Item();
- if (item) {
- item->type = cJSON_String;
- item->valuestring = cJSON_strdup(string);
- }
- return item;
-}
-cJSON *cJSON_CreateArray(void) {
- cJSON *item = cJSON_New_Item();
- if (item) item->type = cJSON_Array;
- return item;
-}
-cJSON *cJSON_CreateObject(void) {
- cJSON *item = cJSON_New_Item();
- if (item) item->type = cJSON_Object;
- return item;
-}
-
-/* Create Arrays: */
-cJSON *cJSON_CreateIntArray(const int *numbers, int count) {
- int i;
- cJSON *n = 0, *p = 0, *a = cJSON_CreateArray();
- for (i = 0; a && i < count; i++) {
- n = cJSON_CreateNumber(numbers[i]);
- if (!i)
- a->child = n;
- else
- suffix_object(p, n);
- p = n;
- }
- return a;
-}
-cJSON *cJSON_CreateFloatArray(const float *numbers, int count) {
- int i;
- cJSON *n = 0, *p = 0, *a = cJSON_CreateArray();
- for (i = 0; a && i < count; i++) {
- n = cJSON_CreateNumber(numbers[i]);
- if (!i)
- a->child = n;
- else
- suffix_object(p, n);
- p = n;
- }
- return a;
-}
-cJSON *cJSON_CreateDoubleArray(const double *numbers, int count) {
- int i;
- cJSON *n = 0, *p = 0, *a = cJSON_CreateArray();
- for (i = 0; a && i < count; i++) {
- n = cJSON_CreateNumber(numbers[i]);
- if (!i)
- a->child = n;
- else
- suffix_object(p, n);
- p = n;
- }
- return a;
-}
-cJSON *cJSON_CreateStringArray(const char **strings, int count) {
- int i;
- cJSON *n = 0, *p = 0, *a = cJSON_CreateArray();
- for (i = 0; a && i < count; i++) {
- n = cJSON_CreateString(strings[i]);
- if (!i)
- a->child = n;
- else
- suffix_object(p, n);
- p = n;
- }
- return a;
-}
-
-/* Duplication */
-cJSON *cJSON_Duplicate(cJSON *item, int recurse) {
- cJSON *newitem, *cptr, *nptr = 0, *newchild;
- /* Bail on bad ptr */
- if (!item) return 0;
- /* Create new item */
- newitem = cJSON_New_Item();
- if (!newitem) return 0;
- /* Copy over all vars */
- newitem->type = item->type & (~cJSON_IsReference), newitem->valueint = item->valueint, newitem->valuedouble = item->valuedouble;
- if (item->valuestring) {
- newitem->valuestring = cJSON_strdup(item->valuestring);
- if (!newitem->valuestring) {
- cJSON_Delete(newitem);
- return 0;
- }
- }
- if (item->string) {
- newitem->string = cJSON_strdup(item->string);
- if (!newitem->string) {
- cJSON_Delete(newitem);
- return 0;
- }
- }
- /* If non-recursive, then we're done! */
- if (!recurse) return newitem;
- /* Walk the ->next chain for the child. */
- cptr = item->child;
- while (cptr) {
- newchild = cJSON_Duplicate(cptr, 1); /* Duplicate (with recurse) each item in the ->next chain */
- if (!newchild) {
- cJSON_Delete(newitem);
- return 0;
- }
- if (nptr) {
- nptr->next = newchild, newchild->prev = nptr;
- nptr = newchild;
- } /* If newitem->child already set, then crosswire ->prev and ->next and
- move on */
- else {
- newitem->child = newchild;
- nptr = newchild;
- } /* Set newitem->child and move to it */
- cptr = cptr->next;
- }
- return newitem;
-}
-
-void cJSON_Minify(char *json) {
- char *into = json;
- while (*json) {
- if (*json == ' ')
- json++;
- else if (*json == '\t')
- json++; /* Whitespace characters. */
- else if (*json == '\r')
- json++;
- else if (*json == '\n')
- json++;
- else if (*json == '/' && json[1] == '/')
- while (*json && *json != '\n') json++; /* double-slash comments, to end of line. */
- else if (*json == '/' && json[1] == '*') {
- while (*json && !(*json == '*' && json[1] == '/')) json++;
- json += 2;
- } /* multiline comments. */
- else if (*json == '\"') {
- *into++ = *json++;
- while (*json && *json != '\"') {
- if (*json == '\\') *into++ = *json++;
- *into++ = *json++;
- }
- *into++ = *json++;
- } /* string literals, which are \" sensitive. */
- else
- *into++ = *json++; /* All other characters. */
- }
- *into = 0; /* and null-terminate. */
-}
diff --git a/thirdparty/vulkan/loader/cJSON.h b/thirdparty/vulkan/loader/cJSON.h
deleted file mode 100644
index f0059abdcb..0000000000
--- a/thirdparty/vulkan/loader/cJSON.h
+++ /dev/null
@@ -1,174 +0,0 @@
-/*
- Copyright (c) 2009 Dave Gamble
- Copyright (c) 2015-2016 The Khronos Group Inc.
- Copyright (c) 2015-2016 Valve Corporation
- Copyright (c) 2015-2016 LunarG, Inc.
-
- Permission is hereby granted, free of charge, to any person obtaining a copy
- of this software and associated documentation files (the "Software"), to deal
- in the Software without restriction, including without limitation the rights
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- copies of the Software, and to permit persons to whom the Software is
- furnished to do so, subject to the following conditions:
-
- The above copyright notice and this permission notice shall be included in
- all copies or substantial portions of the Software.
-
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- THE SOFTWARE.
-*/
-
-#ifndef cJSON__h
-#define cJSON__h
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/* cJSON Types: */
-#define cJSON_False 0
-#define cJSON_True 1
-#define cJSON_NULL 2
-#define cJSON_Number 3
-#define cJSON_String 4
-#define cJSON_Array 5
-#define cJSON_Object 6
-
-#define cJSON_IsReference 256
-#define cJSON_StringIsConst 512
-
-/* The cJSON structure: */
-typedef struct cJSON {
- struct cJSON *next, *prev; /* next/prev allow you to walk array/object
- chains. Alternatively, use
- GetArraySize/GetArrayItem/GetObjectItem */
- struct cJSON *child; /* An array or object item will have a child pointer
- pointing to a chain of the items in the
- array/object. */
-
- int type; /* The type of the item, as above. */
-
- char *valuestring; /* The item's string, if type==cJSON_String */
- int valueint; /* The item's number, if type==cJSON_Number */
- double valuedouble; /* The item's number, if type==cJSON_Number */
-
- char *string; /* The item's name string, if this item is the child of, or is
- in the list of subitems of an object. */
-} cJSON;
-
-typedef struct cJSON_Hooks {
- void *(*malloc_fn)(size_t sz);
- void (*free_fn)(void *ptr);
-} cJSON_Hooks;
-
-/* Supply malloc, realloc and free functions to cJSON */
-extern void cJSON_InitHooks(cJSON_Hooks *hooks);
-
-/* Supply a block of JSON, and this returns a cJSON object you can interrogate.
- * Call cJSON_Delete when finished. */
-extern cJSON *cJSON_Parse(const char *value);
-/* Render a cJSON entity to text for transfer/storage. Free the char* when
- * finished. */
-extern char *cJSON_Print(cJSON *item);
-/* Render a cJSON entity to text for transfer/storage without any formatting.
- * Free the char* when finished. */
-extern char *cJSON_PrintUnformatted(cJSON *item);
-/* Render a cJSON entity to text using a buffered strategy. prebuffer is a guess
- * at the final size. guessing well reduces reallocation. fmt=0 gives
- * unformatted, =1 gives formatted */
-extern char *cJSON_PrintBuffered(cJSON *item, int prebuffer, int fmt);
-/* Delete a cJSON entity and all subentities. */
-extern void cJSON_Delete(cJSON *c);
-/* Delete an item allocated inside the JSON parser*/
-extern void cJSON_Free(void *p);
-
-/* Returns the number of items in an array (or object). */
-extern int cJSON_GetArraySize(cJSON *array);
-/* Retrieve item number "item" from array "array". Returns NULL if unsuccessful.
- */
-extern cJSON *cJSON_GetArrayItem(cJSON *array, int item);
-/* Get item "string" from object. Case insensitive. */
-extern cJSON *cJSON_GetObjectItem(cJSON *object, const char *string);
-
-/* For analysing failed parses. This returns a pointer to the parse error.
- * You'll probably need to look a few chars back to make sense of it. Defined
- * when cJSON_Parse() returns 0. 0 when cJSON_Parse() succeeds. */
-extern const char *cJSON_GetErrorPtr(void);
-
-/* These calls create a cJSON item of the appropriate type. */
-extern cJSON *cJSON_CreateNull(void);
-extern cJSON *cJSON_CreateTrue(void);
-extern cJSON *cJSON_CreateFalse(void);
-extern cJSON *cJSON_CreateBool(int b);
-extern cJSON *cJSON_CreateNumber(double num);
-extern cJSON *cJSON_CreateString(const char *string);
-extern cJSON *cJSON_CreateArray(void);
-extern cJSON *cJSON_CreateObject(void);
-
-/* These utilities create an Array of count items. */
-extern cJSON *cJSON_CreateIntArray(const int *numbers, int count);
-extern cJSON *cJSON_CreateFloatArray(const float *numbers, int count);
-extern cJSON *cJSON_CreateDoubleArray(const double *numbers, int count);
-extern cJSON *cJSON_CreateStringArray(const char **strings, int count);
-
-/* Append item to the specified array/object. */
-extern void cJSON_AddItemToArray(cJSON *array, cJSON *item);
-extern void cJSON_AddItemToObject(cJSON *object, const char *string, cJSON *item);
-extern void cJSON_AddItemToObjectCS(cJSON *object, const char *string,
- cJSON *item); /* Use this when string is definitely const (i.e. a literal,
- or as good as), and will definitely survive the cJSON
- object */
-/* Append reference to item to the specified array/object. Use this when you
- * want to add an existing cJSON to a new cJSON, but don't want to corrupt your
- * existing cJSON. */
-extern void cJSON_AddItemReferenceToArray(cJSON *array, cJSON *item);
-extern void cJSON_AddItemReferenceToObject(cJSON *object, const char *string, cJSON *item);
-
-/* Remove/Detatch items from Arrays/Objects. */
-extern cJSON *cJSON_DetachItemFromArray(cJSON *array, int which);
-extern void cJSON_DeleteItemFromArray(cJSON *array, int which);
-extern cJSON *cJSON_DetachItemFromObject(cJSON *object, const char *string);
-extern void cJSON_DeleteItemFromObject(cJSON *object, const char *string);
-
-/* Update array items. */
-extern void cJSON_InsertItemInArray(cJSON *array, int which, cJSON *newitem); /* Shifts pre-existing items to the right. */
-extern void cJSON_ReplaceItemInArray(cJSON *array, int which, cJSON *newitem);
-extern void cJSON_ReplaceItemInObject(cJSON *object, const char *string, cJSON *newitem);
-
-/* Duplicate a cJSON item */
-extern cJSON *cJSON_Duplicate(cJSON *item, int recurse);
-/* Duplicate will create a new, identical cJSON item to the one you pass, in new
-memory that will
-need to be released. With recurse!=0, it will duplicate any children connected
-to the item.
-The item->next and ->prev pointers are always zero on return from Duplicate. */
-
-/* ParseWithOpts allows you to require (and check) that the JSON is null
- * terminated, and to retrieve the pointer to the final byte parsed. */
-extern cJSON *cJSON_ParseWithOpts(const char *value, const char **return_parse_end, int require_null_terminated);
-
-extern void cJSON_Minify(char *json);
-
-/* Macros for creating things quickly. */
-#define cJSON_AddNullToObject(object, name) cJSON_AddItemToObject(object, name, cJSON_CreateNull())
-#define cJSON_AddTrueToObject(object, name) cJSON_AddItemToObject(object, name, cJSON_CreateTrue())
-#define cJSON_AddFalseToObject(object, name) cJSON_AddItemToObject(object, name, cJSON_CreateFalse())
-#define cJSON_AddBoolToObject(object, name, b) cJSON_AddItemToObject(object, name, cJSON_CreateBool(b))
-#define cJSON_AddNumberToObject(object, name, n) cJSON_AddItemToObject(object, name, cJSON_CreateNumber(n))
-#define cJSON_AddStringToObject(object, name, s) cJSON_AddItemToObject(object, name, cJSON_CreateString(s))
-
-/* When assigning an integer value, it needs to be propagated to valuedouble
- * too. */
-#define cJSON_SetIntValue(object, val) ((object) ? (object)->valueint = (object)->valuedouble = (val) : (val))
-#define cJSON_SetNumberValue(object, val) ((object) ? (object)->valueint = (object)->valuedouble = (val) : (val))
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif
diff --git a/thirdparty/vulkan/loader/debug_utils.c b/thirdparty/vulkan/loader/debug_utils.c
deleted file mode 100644
index 10701e7991..0000000000
--- a/thirdparty/vulkan/loader/debug_utils.c
+++ /dev/null
@@ -1,996 +0,0 @@
-/*
- * Copyright (c) 2015-2017 The Khronos Group Inc.
- * Copyright (c) 2015-2017 Valve Corporation
- * Copyright (c) 2015-2017 LunarG, Inc.
- * Copyright (C) 2015-2016 Google Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * Author: Courtney Goeltzenleuchter <courtney@LunarG.com>
- * Author: Jon Ashburn <jon@LunarG.com>
- * Author: Mark Young <marky@lunarg.com>
- *
- */
-
-#ifndef _GNU_SOURCE
-#define _GNU_SOURCE
-#endif
-#include <stdio.h>
-#include <string.h>
-#include <stdlib.h>
-#include <inttypes.h>
-#ifndef WIN32
-#include <signal.h>
-#else
-#endif
-#include "vk_loader_platform.h"
-#include "debug_utils.h"
-#include "vulkan/vk_layer.h"
-#include "vk_object_types.h"
-
-// VK_EXT_debug_report related items
-
-VkResult util_CreateDebugUtilsMessenger(struct loader_instance *inst, const VkDebugUtilsMessengerCreateInfoEXT *pCreateInfo,
- const VkAllocationCallbacks *pAllocator, VkDebugUtilsMessengerEXT messenger) {
- VkLayerDbgFunctionNode *pNewDbgFuncNode = NULL;
-
-#if (DEBUG_DISABLE_APP_ALLOCATORS == 1)
- {
-#else
- if (pAllocator != NULL) {
- pNewDbgFuncNode = (VkLayerDbgFunctionNode *)pAllocator->pfnAllocation(pAllocator->pUserData, sizeof(VkLayerDbgFunctionNode),
- sizeof(int *), VK_SYSTEM_ALLOCATION_SCOPE_OBJECT);
- } else {
-#endif
- pNewDbgFuncNode = (VkLayerDbgFunctionNode *)loader_instance_heap_alloc(inst, sizeof(VkLayerDbgFunctionNode),
- VK_SYSTEM_ALLOCATION_SCOPE_OBJECT);
- }
- if (!pNewDbgFuncNode) {
- return VK_ERROR_OUT_OF_HOST_MEMORY;
- }
- memset(pNewDbgFuncNode, 0, sizeof(VkLayerDbgFunctionNode));
-
- pNewDbgFuncNode->is_messenger = true;
- pNewDbgFuncNode->messenger.messenger = messenger;
- pNewDbgFuncNode->messenger.pfnUserCallback = pCreateInfo->pfnUserCallback;
- pNewDbgFuncNode->messenger.messageSeverity = pCreateInfo->messageSeverity;
- pNewDbgFuncNode->messenger.messageType = pCreateInfo->messageType;
- pNewDbgFuncNode->pUserData = pCreateInfo->pUserData;
- pNewDbgFuncNode->pNext = inst->DbgFunctionHead;
- inst->DbgFunctionHead = pNewDbgFuncNode;
-
- return VK_SUCCESS;
-}
-
-static VKAPI_ATTR VkResult VKAPI_CALL
-debug_utils_CreateDebugUtilsMessengerEXT(VkInstance instance, const VkDebugUtilsMessengerCreateInfoEXT *pCreateInfo,
- const VkAllocationCallbacks *pAllocator, VkDebugUtilsMessengerEXT *pMessenger) {
- struct loader_instance *inst = loader_get_instance(instance);
- loader_platform_thread_lock_mutex(&loader_lock);
- VkResult result = inst->disp->layer_inst_disp.CreateDebugUtilsMessengerEXT(instance, pCreateInfo, pAllocator, pMessenger);
- loader_platform_thread_unlock_mutex(&loader_lock);
- return result;
-}
-
-VkBool32 util_SubmitDebugUtilsMessageEXT(const struct loader_instance *inst, VkDebugUtilsMessageSeverityFlagBitsEXT messageSeverity,
- VkDebugUtilsMessageTypeFlagsEXT messageTypes,
- const VkDebugUtilsMessengerCallbackDataEXT *pCallbackData) {
- VkBool32 bail = false;
-
- if (NULL != pCallbackData) {
- VkLayerDbgFunctionNode *pTrav = inst->DbgFunctionHead;
- VkDebugReportObjectTypeEXT object_type = VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT;
- VkDebugReportFlagsEXT object_flags = 0;
- uint64_t object_handle = 0;
-
- debug_utils_AnnotFlagsToReportFlags(messageSeverity, messageTypes, &object_flags);
- if (0 < pCallbackData->objectCount) {
- debug_utils_AnnotObjectToDebugReportObject(pCallbackData->pObjects, &object_type, &object_handle);
- }
-
- while (pTrav) {
- if (pTrav->is_messenger && (pTrav->messenger.messageSeverity & messageSeverity) &&
- (pTrav->messenger.messageType & messageTypes)) {
- if (pTrav->messenger.pfnUserCallback(messageSeverity, messageTypes, pCallbackData, pTrav->pUserData)) {
- bail = true;
- }
- }
- if (!pTrav->is_messenger && pTrav->report.msgFlags & object_flags) {
- if (pTrav->report.pfnMsgCallback(object_flags, object_type, object_handle, 0, pCallbackData->messageIdNumber,
- pCallbackData->pMessageIdName, pCallbackData->pMessage, pTrav->pUserData)) {
- bail = true;
- }
- }
-
- pTrav = pTrav->pNext;
- }
- }
-
- return bail;
-}
-
-void util_DestroyDebugUtilsMessenger(struct loader_instance *inst, VkDebugUtilsMessengerEXT messenger,
- const VkAllocationCallbacks *pAllocator) {
- VkLayerDbgFunctionNode *pTrav = inst->DbgFunctionHead;
- VkLayerDbgFunctionNode *pPrev = pTrav;
-
- while (pTrav) {
- if (pTrav->is_messenger && pTrav->messenger.messenger == messenger) {
- pPrev->pNext = pTrav->pNext;
- if (inst->DbgFunctionHead == pTrav) inst->DbgFunctionHead = pTrav->pNext;
-#if (DEBUG_DISABLE_APP_ALLOCATORS == 1)
- {
-#else
- if (pAllocator != NULL) {
- pAllocator->pfnFree(pAllocator->pUserData, pTrav);
- } else {
-#endif
- loader_instance_heap_free(inst, pTrav);
- }
- break;
- }
- pPrev = pTrav;
- pTrav = pTrav->pNext;
- }
-}
-
-// This utility (used by vkInstanceCreateInfo(), looks at a pNext chain. It
-// counts any VkDebugUtilsMessengerCreateInfoEXT structs that it finds. It
-// then allocates array that can hold that many structs, as well as that many
-// VkDebugUtilsMessengerEXT handles. It then copies each
-// VkDebugUtilsMessengerCreateInfoEXT, and initializes each handle.
-VkResult util_CopyDebugUtilsMessengerCreateInfos(const void *pChain, const VkAllocationCallbacks *pAllocator,
- uint32_t *num_messengers, VkDebugUtilsMessengerCreateInfoEXT **infos,
- VkDebugUtilsMessengerEXT **messengers) {
- uint32_t n = *num_messengers = 0;
- VkDebugUtilsMessengerCreateInfoEXT *pInfos = NULL;
- VkDebugUtilsMessengerEXT *pMessengers = NULL;
-
- const void *pNext = pChain;
- while (pNext) {
- // 1st, count the number VkDebugUtilsMessengerCreateInfoEXT:
- if (((VkDebugUtilsMessengerCreateInfoEXT *)pNext)->sType == VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT) {
- n++;
- }
- pNext = (void *)((VkDebugUtilsMessengerCreateInfoEXT *)pNext)->pNext;
- }
- if (n == 0) {
- return VK_SUCCESS;
- }
-
-// 2nd, allocate memory for each VkDebugUtilsMessengerCreateInfoEXT:
-#if (DEBUG_DISABLE_APP_ALLOCATORS == 1)
- {
-#else
- if (pAllocator != NULL) {
- pInfos = *infos = ((VkDebugUtilsMessengerCreateInfoEXT *)pAllocator->pfnAllocation(
- pAllocator->pUserData, n * sizeof(VkDebugUtilsMessengerCreateInfoEXT), sizeof(void *),
- VK_SYSTEM_ALLOCATION_SCOPE_OBJECT));
- } else {
-#endif
- pInfos = *infos = ((VkDebugUtilsMessengerCreateInfoEXT *)malloc(n * sizeof(VkDebugUtilsMessengerCreateInfoEXT)));
- }
- if (!pInfos) {
- return VK_ERROR_OUT_OF_HOST_MEMORY;
- }
-// 3rd, allocate memory for a unique handle for each callback:
-#if (DEBUG_DISABLE_APP_ALLOCATORS == 1)
- {
-#else
- if (pAllocator != NULL) {
- pMessengers = *messengers = ((VkDebugUtilsMessengerEXT *)pAllocator->pfnAllocation(
- pAllocator->pUserData, n * sizeof(VkDebugUtilsMessengerEXT), sizeof(void *), VK_SYSTEM_ALLOCATION_SCOPE_OBJECT));
- if (NULL == pMessengers) {
- pAllocator->pfnFree(pAllocator->pUserData, pInfos);
- return VK_ERROR_OUT_OF_HOST_MEMORY;
- }
- } else {
-#endif
- pMessengers = *messengers = ((VkDebugUtilsMessengerEXT *)malloc(n * sizeof(VkDebugUtilsMessengerEXT)));
- if (NULL == pMessengers) {
- free(pInfos);
- return VK_ERROR_OUT_OF_HOST_MEMORY;
- }
- }
- // 4th, copy each VkDebugUtilsMessengerCreateInfoEXT for use by
- // vkDestroyInstance, and assign a unique handle to each messenger (just
- // use the address of the copied VkDebugUtilsMessengerCreateInfoEXT):
- pNext = pChain;
- while (pNext) {
- if (((VkInstanceCreateInfo *)pNext)->sType == VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT) {
- memcpy(pInfos, pNext, sizeof(VkDebugUtilsMessengerCreateInfoEXT));
- *pMessengers++ = (VkDebugUtilsMessengerEXT)(uintptr_t)pInfos++;
- }
- pNext = (void *)((VkInstanceCreateInfo *)pNext)->pNext;
- }
-
- *num_messengers = n;
- return VK_SUCCESS;
-}
-
-void util_FreeDebugUtilsMessengerCreateInfos(const VkAllocationCallbacks *pAllocator, VkDebugUtilsMessengerCreateInfoEXT *infos,
- VkDebugUtilsMessengerEXT *messengers) {
-#if (DEBUG_DISABLE_APP_ALLOCATORS == 1)
- {
-#else
- if (pAllocator != NULL) {
- pAllocator->pfnFree(pAllocator->pUserData, infos);
- pAllocator->pfnFree(pAllocator->pUserData, messengers);
- } else {
-#endif
- free(infos);
- free(messengers);
- }
-}
-
-VkResult util_CreateDebugUtilsMessengers(struct loader_instance *inst, const VkAllocationCallbacks *pAllocator,
- uint32_t num_messengers, VkDebugUtilsMessengerCreateInfoEXT *infos,
- VkDebugUtilsMessengerEXT *messengers) {
- VkResult rtn = VK_SUCCESS;
- for (uint32_t i = 0; i < num_messengers; i++) {
- rtn = util_CreateDebugUtilsMessenger(inst, &infos[i], pAllocator, messengers[i]);
- if (rtn != VK_SUCCESS) {
- for (uint32_t j = 0; j < i; j++) {
- util_DestroyDebugUtilsMessenger(inst, messengers[j], pAllocator);
- }
- return rtn;
- }
- }
- return rtn;
-}
-
-void util_DestroyDebugUtilsMessengers(struct loader_instance *inst, const VkAllocationCallbacks *pAllocator,
- uint32_t num_messengers, VkDebugUtilsMessengerEXT *messengers) {
- for (uint32_t i = 0; i < num_messengers; i++) {
- util_DestroyDebugUtilsMessenger(inst, messengers[i], pAllocator);
- }
-}
-
-static VKAPI_ATTR void VKAPI_CALL debug_utils_SubmitDebugUtilsMessageEXT(
- VkInstance instance, VkDebugUtilsMessageSeverityFlagBitsEXT messageSeverity, VkDebugUtilsMessageTypeFlagsEXT messageTypes,
- const VkDebugUtilsMessengerCallbackDataEXT *pCallbackData) {
- struct loader_instance *inst = loader_get_instance(instance);
-
- inst->disp->layer_inst_disp.SubmitDebugUtilsMessageEXT(instance, messageSeverity, messageTypes, pCallbackData);
-}
-
-static VKAPI_ATTR void VKAPI_CALL debug_utils_DestroyDebugUtilsMessengerEXT(VkInstance instance, VkDebugUtilsMessengerEXT messenger,
- const VkAllocationCallbacks *pAllocator) {
- struct loader_instance *inst = loader_get_instance(instance);
- loader_platform_thread_lock_mutex(&loader_lock);
-
- inst->disp->layer_inst_disp.DestroyDebugUtilsMessengerEXT(instance, messenger, pAllocator);
-
- loader_platform_thread_unlock_mutex(&loader_lock);
-}
-
-// This is the instance chain terminator function for CreateDebugUtilsMessenger
-VKAPI_ATTR VkResult VKAPI_CALL terminator_CreateDebugUtilsMessengerEXT(VkInstance instance,
- const VkDebugUtilsMessengerCreateInfoEXT *pCreateInfo,
- const VkAllocationCallbacks *pAllocator,
- VkDebugUtilsMessengerEXT *pMessenger) {
- VkDebugUtilsMessengerEXT *icd_info = NULL;
- const struct loader_icd_term *icd_term;
- struct loader_instance *inst = (struct loader_instance *)instance;
- VkResult res = VK_SUCCESS;
- uint32_t storage_idx;
- VkLayerDbgFunctionNode *pNewDbgFuncNode = NULL;
-
-#if (DEBUG_DISABLE_APP_ALLOCATORS == 1)
- {
-#else
- if (pAllocator != NULL) {
- icd_info = ((VkDebugUtilsMessengerEXT *)pAllocator->pfnAllocation(pAllocator->pUserData,
- inst->total_icd_count * sizeof(VkDebugUtilsMessengerEXT),
- sizeof(void *), VK_SYSTEM_ALLOCATION_SCOPE_OBJECT));
- if (icd_info) {
- memset(icd_info, 0, inst->total_icd_count * sizeof(VkDebugUtilsMessengerEXT));
- }
- } else {
-#endif
- icd_info = calloc(sizeof(VkDebugUtilsMessengerEXT), inst->total_icd_count);
- }
- if (!icd_info) {
- res = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
-
- storage_idx = 0;
- for (icd_term = inst->icd_terms; icd_term; icd_term = icd_term->next) {
- if (!icd_term->dispatch.CreateDebugUtilsMessengerEXT) {
- continue;
- }
-
- res = icd_term->dispatch.CreateDebugUtilsMessengerEXT(icd_term->instance, pCreateInfo, pAllocator, &icd_info[storage_idx]);
-
- if (res != VK_SUCCESS) {
- goto out;
- }
- storage_idx++;
- }
-
-// Setup the debug report callback in the terminator since a layer may want
-// to grab the information itself (RenderDoc) and then return back to the
-// user callback a sub-set of the messages.
-#if (DEBUG_DISABLE_APP_ALLOCATORS == 0)
- if (pAllocator != NULL) {
- pNewDbgFuncNode = (VkLayerDbgFunctionNode *)pAllocator->pfnAllocation(pAllocator->pUserData, sizeof(VkLayerDbgFunctionNode),
- sizeof(int *), VK_SYSTEM_ALLOCATION_SCOPE_OBJECT);
- } else {
-#else
- {
-#endif
- pNewDbgFuncNode = (VkLayerDbgFunctionNode *)loader_instance_heap_alloc(inst, sizeof(VkLayerDbgFunctionNode),
- VK_SYSTEM_ALLOCATION_SCOPE_OBJECT);
- }
- if (!pNewDbgFuncNode) {
- res = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
- memset(pNewDbgFuncNode, 0, sizeof(VkLayerDbgFunctionNode));
-
- pNewDbgFuncNode->is_messenger = true;
- pNewDbgFuncNode->messenger.pfnUserCallback = pCreateInfo->pfnUserCallback;
- pNewDbgFuncNode->messenger.messageSeverity = pCreateInfo->messageSeverity;
- pNewDbgFuncNode->messenger.messageType = pCreateInfo->messageType;
- pNewDbgFuncNode->pUserData = pCreateInfo->pUserData;
- pNewDbgFuncNode->pNext = inst->DbgFunctionHead;
- inst->DbgFunctionHead = pNewDbgFuncNode;
-
- *(VkDebugUtilsMessengerEXT **)pMessenger = icd_info;
- pNewDbgFuncNode->messenger.messenger = *pMessenger;
-
-out:
-
- // Roll back on errors
- if (VK_SUCCESS != res) {
- storage_idx = 0;
- for (icd_term = inst->icd_terms; icd_term; icd_term = icd_term->next) {
- if (NULL == icd_term->dispatch.DestroyDebugUtilsMessengerEXT) {
- continue;
- }
-
- if (icd_info && icd_info[storage_idx]) {
- icd_term->dispatch.DestroyDebugUtilsMessengerEXT(icd_term->instance, icd_info[storage_idx], pAllocator);
- }
- storage_idx++;
- }
-
-#if (DEBUG_DISABLE_APP_ALLOCATORS == 1)
- {
-#else
- if (pAllocator != NULL) {
- if (NULL != pNewDbgFuncNode) {
- pAllocator->pfnFree(pAllocator->pUserData, pNewDbgFuncNode);
- }
- if (NULL != icd_info) {
- pAllocator->pfnFree(pAllocator->pUserData, icd_info);
- }
- } else {
-#endif
- if (NULL != pNewDbgFuncNode) {
- free(pNewDbgFuncNode);
- }
- if (NULL != icd_info) {
- free(icd_info);
- }
- }
- }
-
- return res;
-}
-
-// This is the instance chain terminator function for DestroyDebugUtilsMessenger
-VKAPI_ATTR void VKAPI_CALL terminator_DestroyDebugUtilsMessengerEXT(VkInstance instance, VkDebugUtilsMessengerEXT messenger,
- const VkAllocationCallbacks *pAllocator) {
- uint32_t storage_idx;
- VkDebugUtilsMessengerEXT *icd_info;
- const struct loader_icd_term *icd_term;
-
- struct loader_instance *inst = (struct loader_instance *)instance;
- icd_info = *(VkDebugUtilsMessengerEXT **)&messenger;
- storage_idx = 0;
- for (icd_term = inst->icd_terms; icd_term; icd_term = icd_term->next) {
- if (NULL == icd_term->dispatch.DestroyDebugUtilsMessengerEXT) {
- continue;
- }
-
- if (icd_info[storage_idx]) {
- icd_term->dispatch.DestroyDebugUtilsMessengerEXT(icd_term->instance, icd_info[storage_idx], pAllocator);
- }
- storage_idx++;
- }
-
- util_DestroyDebugUtilsMessenger(inst, messenger, pAllocator);
-
-#if (DEBUG_DISABLE_APP_ALLOCATORS == 1)
- {
-#else
- if (pAllocator != NULL) {
- pAllocator->pfnFree(pAllocator->pUserData, icd_info);
- } else {
-#endif
- free(icd_info);
- }
-}
-
-// This is the instance chain terminator function for SubmitDebugUtilsMessageEXT
-VKAPI_ATTR void VKAPI_CALL terminator_SubmitDebugUtilsMessageEXT(VkInstance instance,
- VkDebugUtilsMessageSeverityFlagBitsEXT messageSeverity,
- VkDebugUtilsMessageTypeFlagsEXT messageTypes,
- const VkDebugUtilsMessengerCallbackDataEXT *pCallbackData) {
- loader_platform_thread_lock_mutex(&loader_lock);
- // NOTE: Just make the callback ourselves because there could be one or more ICDs that support this extension
- // and each one will trigger the callback to the user. This would result in multiple callback triggers
- // per message. Instead, if we get a messaged up to here, then just trigger the message ourselves and
- // return. This would still allow the ICDs to trigger their own messages, but won't get any external ones.
- struct loader_instance *inst = (struct loader_instance *)instance;
- util_SubmitDebugUtilsMessageEXT(inst, messageSeverity, messageTypes, pCallbackData);
- loader_platform_thread_unlock_mutex(&loader_lock);
-}
-
-// VK_EXT_debug_report related items
-
-VkResult util_CreateDebugReportCallback(struct loader_instance *inst, VkDebugReportCallbackCreateInfoEXT *pCreateInfo,
- const VkAllocationCallbacks *pAllocator, VkDebugReportCallbackEXT callback) {
- VkLayerDbgFunctionNode *pNewDbgFuncNode = NULL;
-
-#if (DEBUG_DISABLE_APP_ALLOCATORS == 1)
- {
-#else
- if (pAllocator != NULL) {
- pNewDbgFuncNode = (VkLayerDbgFunctionNode *)pAllocator->pfnAllocation(pAllocator->pUserData, sizeof(VkLayerDbgFunctionNode),
- sizeof(int *), VK_SYSTEM_ALLOCATION_SCOPE_OBJECT);
- } else {
-#endif
- pNewDbgFuncNode = (VkLayerDbgFunctionNode *)loader_instance_heap_alloc(inst, sizeof(VkLayerDbgFunctionNode),
- VK_SYSTEM_ALLOCATION_SCOPE_OBJECT);
- }
- if (!pNewDbgFuncNode) {
- return VK_ERROR_OUT_OF_HOST_MEMORY;
- }
- memset(pNewDbgFuncNode, 0, sizeof(VkLayerDbgFunctionNode));
-
- pNewDbgFuncNode->is_messenger = false;
- pNewDbgFuncNode->report.msgCallback = callback;
- pNewDbgFuncNode->report.pfnMsgCallback = pCreateInfo->pfnCallback;
- pNewDbgFuncNode->report.msgFlags = pCreateInfo->flags;
- pNewDbgFuncNode->pUserData = pCreateInfo->pUserData;
- pNewDbgFuncNode->pNext = inst->DbgFunctionHead;
- inst->DbgFunctionHead = pNewDbgFuncNode;
-
- return VK_SUCCESS;
-}
-
-static VKAPI_ATTR VkResult VKAPI_CALL
-debug_utils_CreateDebugReportCallbackEXT(VkInstance instance, const VkDebugReportCallbackCreateInfoEXT *pCreateInfo,
- const VkAllocationCallbacks *pAllocator, VkDebugReportCallbackEXT *pCallback) {
- struct loader_instance *inst = loader_get_instance(instance);
- loader_platform_thread_lock_mutex(&loader_lock);
- VkResult result = inst->disp->layer_inst_disp.CreateDebugReportCallbackEXT(instance, pCreateInfo, pAllocator, pCallback);
- loader_platform_thread_unlock_mutex(&loader_lock);
- return result;
-}
-
-// Utility function to handle reporting
-VkBool32 util_DebugReportMessage(const struct loader_instance *inst, VkFlags msgFlags, VkDebugReportObjectTypeEXT objectType,
- uint64_t srcObject, size_t location, int32_t msgCode, const char *pLayerPrefix, const char *pMsg) {
- VkBool32 bail = false;
- VkLayerDbgFunctionNode *pTrav = inst->DbgFunctionHead;
- VkDebugUtilsMessageSeverityFlagBitsEXT severity;
- VkDebugUtilsMessageTypeFlagsEXT types;
- VkDebugUtilsMessengerCallbackDataEXT callback_data;
- VkDebugUtilsObjectNameInfoEXT object_name;
-
- debug_utils_ReportFlagsToAnnotFlags(msgFlags, false, &severity, &types);
- debug_utils_ReportObjectToAnnotObject(objectType, srcObject, &object_name);
-
- callback_data.sType = VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT;
- callback_data.pNext = NULL;
- callback_data.flags = 0;
- callback_data.pMessageIdName = pLayerPrefix;
- callback_data.messageIdNumber = msgCode;
- callback_data.pMessage = pMsg;
- callback_data.cmdBufLabelCount = 0;
- callback_data.pCmdBufLabels = NULL;
- callback_data.queueLabelCount = 0;
- callback_data.pQueueLabels = NULL;
- callback_data.objectCount = 1;
- callback_data.pObjects = &object_name;
-
- while (pTrav) {
- if (!pTrav->is_messenger && pTrav->report.msgFlags & msgFlags) {
- if (pTrav->report.pfnMsgCallback(msgFlags, objectType, srcObject, location, msgCode, pLayerPrefix, pMsg,
- pTrav->pUserData)) {
- bail = true;
- }
- }
- if (pTrav->is_messenger && (pTrav->messenger.messageSeverity & severity) && (pTrav->messenger.messageType & types)) {
- if (pTrav->messenger.pfnUserCallback(severity, types, &callback_data, pTrav->pUserData)) {
- bail = true;
- }
- }
-
- pTrav = pTrav->pNext;
- }
-
- return bail;
-}
-
-void util_DestroyDebugReportCallback(struct loader_instance *inst, VkDebugReportCallbackEXT callback,
- const VkAllocationCallbacks *pAllocator) {
- VkLayerDbgFunctionNode *pTrav = inst->DbgFunctionHead;
- VkLayerDbgFunctionNode *pPrev = pTrav;
-
- while (pTrav) {
- if (!pTrav->is_messenger && pTrav->report.msgCallback == callback) {
- pPrev->pNext = pTrav->pNext;
- if (inst->DbgFunctionHead == pTrav) inst->DbgFunctionHead = pTrav->pNext;
-#if (DEBUG_DISABLE_APP_ALLOCATORS == 1)
- {
-#else
- if (pAllocator != NULL) {
- pAllocator->pfnFree(pAllocator->pUserData, pTrav);
- } else {
-#endif
- loader_instance_heap_free(inst, pTrav);
- }
- break;
- }
- pPrev = pTrav;
- pTrav = pTrav->pNext;
- }
-}
-
-// This utility (used by vkInstanceCreateInfo(), looks at a pNext chain. It
-// counts any VkDebugReportCallbackCreateInfoEXT structs that it finds. It
-// then allocates array that can hold that many structs, as well as that many
-// VkDebugReportCallbackEXT handles. It then copies each
-// VkDebugReportCallbackCreateInfoEXT, and initializes each handle.
-VkResult util_CopyDebugReportCreateInfos(const void *pChain, const VkAllocationCallbacks *pAllocator, uint32_t *num_callbacks,
- VkDebugReportCallbackCreateInfoEXT **infos, VkDebugReportCallbackEXT **callbacks) {
- uint32_t n = *num_callbacks = 0;
- VkDebugReportCallbackCreateInfoEXT *pInfos = NULL;
- VkDebugReportCallbackEXT *pCallbacks = NULL;
-
- const void *pNext = pChain;
- while (pNext) {
- // 1st, count the number VkDebugReportCallbackCreateInfoEXT:
- if (((VkDebugReportCallbackCreateInfoEXT *)pNext)->sType == VK_STRUCTURE_TYPE_DEBUG_REPORT_CREATE_INFO_EXT) {
- n++;
- }
- pNext = (void *)((VkDebugReportCallbackCreateInfoEXT *)pNext)->pNext;
- }
- if (n == 0) {
- return VK_SUCCESS;
- }
-
-// 2nd, allocate memory for each VkDebugReportCallbackCreateInfoEXT:
-#if (DEBUG_DISABLE_APP_ALLOCATORS == 1)
- {
-#else
- if (pAllocator != NULL) {
- pInfos = *infos = ((VkDebugReportCallbackCreateInfoEXT *)pAllocator->pfnAllocation(
- pAllocator->pUserData, n * sizeof(VkDebugReportCallbackCreateInfoEXT), sizeof(void *),
- VK_SYSTEM_ALLOCATION_SCOPE_OBJECT));
- } else {
-#endif
- pInfos = *infos = ((VkDebugReportCallbackCreateInfoEXT *)malloc(n * sizeof(VkDebugReportCallbackCreateInfoEXT)));
- }
- if (!pInfos) {
- return VK_ERROR_OUT_OF_HOST_MEMORY;
- }
-// 3rd, allocate memory for a unique handle for each callback:
-#if (DEBUG_DISABLE_APP_ALLOCATORS == 1)
- {
-#else
- if (pAllocator != NULL) {
- pCallbacks = *callbacks = ((VkDebugReportCallbackEXT *)pAllocator->pfnAllocation(
- pAllocator->pUserData, n * sizeof(VkDebugReportCallbackEXT), sizeof(void *), VK_SYSTEM_ALLOCATION_SCOPE_OBJECT));
- if (!pCallbacks) {
- pAllocator->pfnFree(pAllocator->pUserData, pInfos);
- return VK_ERROR_OUT_OF_HOST_MEMORY;
- }
- } else {
-#endif
- pCallbacks = *callbacks = ((VkDebugReportCallbackEXT *)malloc(n * sizeof(VkDebugReportCallbackEXT)));
- if (!pCallbacks) {
- free(pInfos);
- return VK_ERROR_OUT_OF_HOST_MEMORY;
- }
- }
- // 4th, copy each VkDebugReportCallbackCreateInfoEXT for use by
- // vkDestroyInstance, and assign a unique handle to each callback (just
- // use the address of the copied VkDebugReportCallbackCreateInfoEXT):
- pNext = pChain;
- while (pNext) {
- if (((VkInstanceCreateInfo *)pNext)->sType == VK_STRUCTURE_TYPE_DEBUG_REPORT_CREATE_INFO_EXT) {
- memcpy(pInfos, pNext, sizeof(VkDebugReportCallbackCreateInfoEXT));
- *pCallbacks++ = (VkDebugReportCallbackEXT)(uintptr_t)pInfos++;
- }
- pNext = (void *)((VkInstanceCreateInfo *)pNext)->pNext;
- }
-
- *num_callbacks = n;
- return VK_SUCCESS;
-}
-
-void util_FreeDebugReportCreateInfos(const VkAllocationCallbacks *pAllocator, VkDebugReportCallbackCreateInfoEXT *infos,
- VkDebugReportCallbackEXT *callbacks) {
-#if (DEBUG_DISABLE_APP_ALLOCATORS == 1)
- {
-#else
- if (pAllocator != NULL) {
- pAllocator->pfnFree(pAllocator->pUserData, infos);
- pAllocator->pfnFree(pAllocator->pUserData, callbacks);
- } else {
-#endif
- free(infos);
- free(callbacks);
- }
-}
-
-VkResult util_CreateDebugReportCallbacks(struct loader_instance *inst, const VkAllocationCallbacks *pAllocator,
- uint32_t num_callbacks, VkDebugReportCallbackCreateInfoEXT *infos,
- VkDebugReportCallbackEXT *callbacks) {
- VkResult rtn = VK_SUCCESS;
- for (uint32_t i = 0; i < num_callbacks; i++) {
- rtn = util_CreateDebugReportCallback(inst, &infos[i], pAllocator, callbacks[i]);
- if (rtn != VK_SUCCESS) {
- for (uint32_t j = 0; j < i; j++) {
- util_DestroyDebugReportCallback(inst, callbacks[j], pAllocator);
- }
- return rtn;
- }
- }
- return rtn;
-}
-
-void util_DestroyDebugReportCallbacks(struct loader_instance *inst, const VkAllocationCallbacks *pAllocator, uint32_t num_callbacks,
- VkDebugReportCallbackEXT *callbacks) {
- for (uint32_t i = 0; i < num_callbacks; i++) {
- util_DestroyDebugReportCallback(inst, callbacks[i], pAllocator);
- }
-}
-
-static VKAPI_ATTR void VKAPI_CALL debug_utils_DestroyDebugReportCallbackEXT(VkInstance instance, VkDebugReportCallbackEXT callback,
- const VkAllocationCallbacks *pAllocator) {
- struct loader_instance *inst = loader_get_instance(instance);
- loader_platform_thread_lock_mutex(&loader_lock);
-
- inst->disp->layer_inst_disp.DestroyDebugReportCallbackEXT(instance, callback, pAllocator);
-
- loader_platform_thread_unlock_mutex(&loader_lock);
-}
-
-static VKAPI_ATTR void VKAPI_CALL debug_utils_DebugReportMessageEXT(VkInstance instance, VkDebugReportFlagsEXT flags,
- VkDebugReportObjectTypeEXT objType, uint64_t object,
- size_t location, int32_t msgCode, const char *pLayerPrefix,
- const char *pMsg) {
- struct loader_instance *inst = loader_get_instance(instance);
-
- inst->disp->layer_inst_disp.DebugReportMessageEXT(instance, flags, objType, object, location, msgCode, pLayerPrefix, pMsg);
-}
-
-// This is the instance chain terminator function
-// for CreateDebugReportCallback
-VKAPI_ATTR VkResult VKAPI_CALL terminator_CreateDebugReportCallbackEXT(VkInstance instance,
- const VkDebugReportCallbackCreateInfoEXT *pCreateInfo,
- const VkAllocationCallbacks *pAllocator,
- VkDebugReportCallbackEXT *pCallback) {
- VkDebugReportCallbackEXT *icd_info = NULL;
- const struct loader_icd_term *icd_term;
- struct loader_instance *inst = (struct loader_instance *)instance;
- VkResult res = VK_SUCCESS;
- uint32_t storage_idx;
- VkLayerDbgFunctionNode *pNewDbgFuncNode = NULL;
-
-#if (DEBUG_DISABLE_APP_ALLOCATORS == 1)
- {
-#else
- if (pAllocator != NULL) {
- icd_info = ((VkDebugReportCallbackEXT *)pAllocator->pfnAllocation(pAllocator->pUserData,
- inst->total_icd_count * sizeof(VkDebugReportCallbackEXT),
- sizeof(void *), VK_SYSTEM_ALLOCATION_SCOPE_OBJECT));
- if (icd_info) {
- memset(icd_info, 0, inst->total_icd_count * sizeof(VkDebugReportCallbackEXT));
- }
- } else {
-#endif
- icd_info = calloc(sizeof(VkDebugReportCallbackEXT), inst->total_icd_count);
- }
- if (!icd_info) {
- res = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
-
- storage_idx = 0;
- for (icd_term = inst->icd_terms; icd_term; icd_term = icd_term->next) {
- if (!icd_term->dispatch.CreateDebugReportCallbackEXT) {
- continue;
- }
-
- res = icd_term->dispatch.CreateDebugReportCallbackEXT(icd_term->instance, pCreateInfo, pAllocator, &icd_info[storage_idx]);
-
- if (res != VK_SUCCESS) {
- goto out;
- }
- storage_idx++;
- }
-
-// Setup the debug report callback in the terminator since a layer may want
-// to grab the information itself (RenderDoc) and then return back to the
-// user callback a sub-set of the messages.
-#if (DEBUG_DISABLE_APP_ALLOCATORS == 0)
- if (pAllocator != NULL) {
- pNewDbgFuncNode = (VkLayerDbgFunctionNode *)pAllocator->pfnAllocation(pAllocator->pUserData, sizeof(VkLayerDbgFunctionNode),
- sizeof(int *), VK_SYSTEM_ALLOCATION_SCOPE_OBJECT);
- } else {
-#else
- {
-#endif
- pNewDbgFuncNode = (VkLayerDbgFunctionNode *)loader_instance_heap_alloc(inst, sizeof(VkLayerDbgFunctionNode),
- VK_SYSTEM_ALLOCATION_SCOPE_OBJECT);
- }
- if (!pNewDbgFuncNode) {
- res = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
- memset(pNewDbgFuncNode, 0, sizeof(VkLayerDbgFunctionNode));
-
- pNewDbgFuncNode->is_messenger = false;
- pNewDbgFuncNode->report.pfnMsgCallback = pCreateInfo->pfnCallback;
- pNewDbgFuncNode->report.msgFlags = pCreateInfo->flags;
- pNewDbgFuncNode->pUserData = pCreateInfo->pUserData;
- pNewDbgFuncNode->pNext = inst->DbgFunctionHead;
- inst->DbgFunctionHead = pNewDbgFuncNode;
-
- *(VkDebugReportCallbackEXT **)pCallback = icd_info;
- pNewDbgFuncNode->report.msgCallback = *pCallback;
-
-out:
-
- // Roll back on errors
- if (VK_SUCCESS != res) {
- storage_idx = 0;
- for (icd_term = inst->icd_terms; icd_term; icd_term = icd_term->next) {
- if (NULL == icd_term->dispatch.DestroyDebugReportCallbackEXT) {
- continue;
- }
-
- if (icd_info && icd_info[storage_idx]) {
- icd_term->dispatch.DestroyDebugReportCallbackEXT(icd_term->instance, icd_info[storage_idx], pAllocator);
- }
- storage_idx++;
- }
-
-#if (DEBUG_DISABLE_APP_ALLOCATORS == 1)
- {
-#else
- if (pAllocator != NULL) {
- if (NULL != pNewDbgFuncNode) {
- pAllocator->pfnFree(pAllocator->pUserData, pNewDbgFuncNode);
- }
- if (NULL != icd_info) {
- pAllocator->pfnFree(pAllocator->pUserData, icd_info);
- }
- } else {
-#endif
- if (NULL != pNewDbgFuncNode) {
- free(pNewDbgFuncNode);
- }
- if (NULL != icd_info) {
- free(icd_info);
- }
- }
- }
-
- return res;
-}
-
-// This is the instance chain terminator function for DestroyDebugReportCallback
-VKAPI_ATTR void VKAPI_CALL terminator_DestroyDebugReportCallbackEXT(VkInstance instance, VkDebugReportCallbackEXT callback,
- const VkAllocationCallbacks *pAllocator) {
- uint32_t storage_idx;
- VkDebugReportCallbackEXT *icd_info;
- const struct loader_icd_term *icd_term;
-
- struct loader_instance *inst = (struct loader_instance *)instance;
- icd_info = *(VkDebugReportCallbackEXT **)&callback;
- storage_idx = 0;
- for (icd_term = inst->icd_terms; icd_term; icd_term = icd_term->next) {
- if (NULL == icd_term->dispatch.DestroyDebugReportCallbackEXT) {
- continue;
- }
-
- if (icd_info[storage_idx]) {
- icd_term->dispatch.DestroyDebugReportCallbackEXT(icd_term->instance, icd_info[storage_idx], pAllocator);
- }
- storage_idx++;
- }
-
- util_DestroyDebugReportCallback(inst, callback, pAllocator);
-
-#if (DEBUG_DISABLE_APP_ALLOCATORS == 1)
- {
-#else
- if (pAllocator != NULL) {
- pAllocator->pfnFree(pAllocator->pUserData, icd_info);
- } else {
-#endif
- free(icd_info);
- }
-}
-
-// This is the instance chain terminator function for DebugReportMessage
-VKAPI_ATTR void VKAPI_CALL terminator_DebugReportMessageEXT(VkInstance instance, VkDebugReportFlagsEXT flags,
- VkDebugReportObjectTypeEXT objType, uint64_t object, size_t location,
- int32_t msgCode, const char *pLayerPrefix, const char *pMsg) {
- const struct loader_icd_term *icd_term;
-
- struct loader_instance *inst = (struct loader_instance *)instance;
-
- loader_platform_thread_lock_mutex(&loader_lock);
- for (icd_term = inst->icd_terms; icd_term; icd_term = icd_term->next) {
- if (icd_term->dispatch.DebugReportMessageEXT != NULL) {
- icd_term->dispatch.DebugReportMessageEXT(icd_term->instance, flags, objType, object, location, msgCode, pLayerPrefix,
- pMsg);
- }
- }
-
- // Now that all ICDs have seen the message, call the necessary callbacks. Ignoring "bail" return value
- // as there is nothing to bail from at this point.
-
- util_DebugReportMessage(inst, flags, objType, object, location, msgCode, pLayerPrefix, pMsg);
-
- loader_platform_thread_unlock_mutex(&loader_lock);
-}
-
-// General utilities
-
-static const VkExtensionProperties debug_utils_extension_info[] = {
- {VK_EXT_DEBUG_REPORT_EXTENSION_NAME, VK_EXT_DEBUG_REPORT_SPEC_VERSION},
- {VK_EXT_DEBUG_UTILS_EXTENSION_NAME, VK_EXT_DEBUG_UTILS_SPEC_VERSION},
-};
-
-void debug_utils_AddInstanceExtensions(const struct loader_instance *inst, struct loader_extension_list *ext_list) {
- loader_add_to_ext_list(inst, ext_list, sizeof(debug_utils_extension_info) / sizeof(VkExtensionProperties),
- debug_utils_extension_info);
-}
-
-void debug_utils_CreateInstance(struct loader_instance *ptr_instance, const VkInstanceCreateInfo *pCreateInfo) {
- ptr_instance->enabled_known_extensions.ext_debug_report = 0;
- ptr_instance->enabled_known_extensions.ext_debug_utils = 0;
-
- for (uint32_t i = 0; i < pCreateInfo->enabledExtensionCount; i++) {
- if (strcmp(pCreateInfo->ppEnabledExtensionNames[i], VK_EXT_DEBUG_REPORT_EXTENSION_NAME) == 0) {
- ptr_instance->enabled_known_extensions.ext_debug_report = 1;
- } else if (strcmp(pCreateInfo->ppEnabledExtensionNames[i], VK_EXT_DEBUG_UTILS_EXTENSION_NAME) == 0) {
- ptr_instance->enabled_known_extensions.ext_debug_utils = 1;
- }
- }
-}
-
-bool debug_utils_InstanceGpa(struct loader_instance *ptr_instance, const char *name, void **addr) {
- bool ret_type = false;
-
- *addr = NULL;
-
- if (!strcmp("vkCreateDebugReportCallbackEXT", name)) {
- *addr = ptr_instance->enabled_known_extensions.ext_debug_report == 1 ? (void *)debug_utils_CreateDebugReportCallbackEXT : NULL;
- ret_type = true;
- } else if (!strcmp("vkDestroyDebugReportCallbackEXT", name)) {
- *addr = ptr_instance->enabled_known_extensions.ext_debug_report == 1 ? (void *)debug_utils_DestroyDebugReportCallbackEXT : NULL;
- ret_type = true;
- } else if (!strcmp("vkDebugReportMessageEXT", name)) {
- *addr = ptr_instance->enabled_known_extensions.ext_debug_report == 1 ? (void *)debug_utils_DebugReportMessageEXT : NULL;
- return true;
- }
- if (!strcmp("vkCreateDebugUtilsMessengerEXT", name)) {
- *addr = ptr_instance->enabled_known_extensions.ext_debug_utils == 1 ? (void *)debug_utils_CreateDebugUtilsMessengerEXT : NULL;
- ret_type = true;
- } else if (!strcmp("vkDestroyDebugUtilsMessengerEXT", name)) {
- *addr = ptr_instance->enabled_known_extensions.ext_debug_utils == 1 ? (void *)debug_utils_DestroyDebugUtilsMessengerEXT : NULL;
- ret_type = true;
- } else if (!strcmp("vkSubmitDebugUtilsMessageEXT", name)) {
- *addr = ptr_instance->enabled_known_extensions.ext_debug_utils == 1 ? (void *)debug_utils_SubmitDebugUtilsMessageEXT : NULL;
- ret_type = true;
- }
-
- return ret_type;
-}
-
-bool debug_utils_ReportFlagsToAnnotFlags(VkDebugReportFlagsEXT dr_flags, bool default_flag_is_spec,
- VkDebugUtilsMessageSeverityFlagBitsEXT *da_severity,
- VkDebugUtilsMessageTypeFlagsEXT *da_type) {
- bool type_set = false;
- if (NULL == da_severity || NULL == da_type) {
- return false;
- }
- *da_type = 0;
- *da_severity = 0;
-
- if ((dr_flags & VK_DEBUG_REPORT_INFORMATION_BIT_EXT) != 0) {
- *da_severity = VK_DEBUG_UTILS_MESSAGE_SEVERITY_INFO_BIT_EXT;
- *da_type |= VK_DEBUG_UTILS_MESSAGE_TYPE_GENERAL_BIT_EXT;
- type_set = true;
- } else if ((dr_flags & (VK_DEBUG_REPORT_WARNING_BIT_EXT | VK_DEBUG_REPORT_PERFORMANCE_WARNING_BIT_EXT)) != 0) {
- *da_severity = VK_DEBUG_UTILS_MESSAGE_SEVERITY_WARNING_BIT_EXT;
- } else if ((dr_flags & VK_DEBUG_REPORT_ERROR_BIT_EXT) != 0) {
- *da_severity = VK_DEBUG_UTILS_MESSAGE_SEVERITY_ERROR_BIT_EXT;
- } else if ((dr_flags & VK_DEBUG_REPORT_DEBUG_BIT_EXT) != 0) {
- *da_severity = VK_DEBUG_UTILS_MESSAGE_SEVERITY_VERBOSE_BIT_EXT;
- *da_type |= VK_DEBUG_UTILS_MESSAGE_TYPE_GENERAL_BIT_EXT;
- type_set = true;
- }
-
- if ((dr_flags & VK_DEBUG_REPORT_PERFORMANCE_WARNING_BIT_EXT) != 0) {
- *da_type |= VK_DEBUG_UTILS_MESSAGE_TYPE_PERFORMANCE_BIT_EXT;
- } else if (!type_set) {
- if (default_flag_is_spec) {
- *da_type |= VK_DEBUG_UTILS_MESSAGE_TYPE_VALIDATION_BIT_EXT;
- } else {
- *da_type |= VK_DEBUG_UTILS_MESSAGE_TYPE_GENERAL_BIT_EXT;
- }
- }
-
- return true;
-}
-
-bool debug_utils_AnnotFlagsToReportFlags(VkDebugUtilsMessageSeverityFlagBitsEXT da_severity,
- VkDebugUtilsMessageTypeFlagsEXT da_type, VkDebugReportFlagsEXT *dr_flags) {
- if (NULL == dr_flags) {
- return false;
- }
-
- *dr_flags = 0;
-
- if ((da_severity & VK_DEBUG_UTILS_MESSAGE_SEVERITY_ERROR_BIT_EXT) != 0) {
- *dr_flags |= VK_DEBUG_REPORT_ERROR_BIT_EXT;
- } else if ((da_severity & VK_DEBUG_UTILS_MESSAGE_SEVERITY_WARNING_BIT_EXT) != 0) {
- if ((da_type & VK_DEBUG_UTILS_MESSAGE_TYPE_PERFORMANCE_BIT_EXT) != 0) {
- *dr_flags |= VK_DEBUG_REPORT_PERFORMANCE_WARNING_BIT_EXT;
- } else {
- *dr_flags |= VK_DEBUG_REPORT_WARNING_BIT_EXT;
- }
- } else if ((da_severity & VK_DEBUG_UTILS_MESSAGE_SEVERITY_INFO_BIT_EXT) != 0) {
- *dr_flags |= VK_DEBUG_REPORT_INFORMATION_BIT_EXT;
- } else if ((da_severity & VK_DEBUG_UTILS_MESSAGE_SEVERITY_VERBOSE_BIT_EXT) != 0) {
- *dr_flags |= VK_DEBUG_REPORT_DEBUG_BIT_EXT;
- }
-
- return true;
-}
-
-bool debug_utils_ReportObjectToAnnotObject(VkDebugReportObjectTypeEXT dr_object_type, uint64_t object_handle,
- VkDebugUtilsObjectNameInfoEXT *da_object_name_info) {
- if (NULL == da_object_name_info) {
- return false;
- }
- da_object_name_info->sType = VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT;
- da_object_name_info->pNext = NULL;
- da_object_name_info->objectHandle = (uint64_t)(uintptr_t)object_handle;
- da_object_name_info->pObjectName = NULL;
- da_object_name_info->objectType = convertDebugReportObjectToCoreObject(dr_object_type);
- return true;
-}
-
-bool debug_utils_AnnotObjectToDebugReportObject(const VkDebugUtilsObjectNameInfoEXT *da_object_name_info,
- VkDebugReportObjectTypeEXT *dr_object_type, uint64_t *dr_object_handle) {
- if (NULL == da_object_name_info || NULL == dr_object_type || NULL == dr_object_handle) {
- return false;
- }
- *dr_object_type = convertCoreObjectToDebugReportObject(da_object_name_info->objectType);
- *dr_object_handle = da_object_name_info->objectHandle;
- return true;
-}
diff --git a/thirdparty/vulkan/loader/debug_utils.h b/thirdparty/vulkan/loader/debug_utils.h
deleted file mode 100644
index c33a6fcee6..0000000000
--- a/thirdparty/vulkan/loader/debug_utils.h
+++ /dev/null
@@ -1,101 +0,0 @@
-/*
- * Copyright (c) 2015-2017 The Khronos Group Inc.
- * Copyright (c) 2015-2017 Valve Corporation
- * Copyright (c) 2015-2017 LunarG, Inc.
- * Copyright (C) 2015-2016 Google Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * Author: Courtney Goeltzenleuchter <courtney@LunarG.com>
- * Author: Jon Ashburn <jon@lunarg.com>
- * Author: Mark Young <markyk@lunarg.com>
- *
- */
-
-#include "vk_loader_platform.h"
-#include "loader.h"
-
-// General utilities
-
-void debug_utils_AddInstanceExtensions(const struct loader_instance *inst, struct loader_extension_list *ext_list);
-void debug_utils_CreateInstance(struct loader_instance *ptr_instance, const VkInstanceCreateInfo *pCreateInfo);
-bool debug_utils_InstanceGpa(struct loader_instance *ptr_instance, const char *name, void **addr);
-bool debug_utils_ReportFlagsToAnnotFlags(VkDebugReportFlagsEXT dr_flags, bool default_flag_is_spec,
- VkDebugUtilsMessageSeverityFlagBitsEXT *da_severity,
- VkDebugUtilsMessageTypeFlagsEXT *da_type);
-bool debug_utils_AnnotFlagsToReportFlags(VkDebugUtilsMessageSeverityFlagBitsEXT da_severity,
- VkDebugUtilsMessageTypeFlagsEXT da_type, VkDebugReportFlagsEXT *dr_flags);
-bool debug_utils_ReportObjectToAnnotObject(VkDebugReportObjectTypeEXT dr_object_type, uint64_t object_handle,
- VkDebugUtilsObjectNameInfoEXT *da_object_name_info);
-bool debug_utils_AnnotObjectToDebugReportObject(const VkDebugUtilsObjectNameInfoEXT *da_object_name_info,
- VkDebugReportObjectTypeEXT *dr_object_type, uint64_t *dr_object_handle);
-
-// VK_EXT_debug_utils related items
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_CreateDebugUtilsMessengerEXT(VkInstance instance,
- const VkDebugUtilsMessengerCreateInfoEXT *pCreateInfo,
- const VkAllocationCallbacks *pAllocator,
- VkDebugUtilsMessengerEXT *pMessenger);
-VKAPI_ATTR void VKAPI_CALL terminator_DestroyDebugUtilsMessengerEXT(VkInstance instance, VkDebugUtilsMessengerEXT messenger,
- const VkAllocationCallbacks *pAllocator);
-VKAPI_ATTR void VKAPI_CALL terminator_SubmitDebugUtilsMessageEXT(VkInstance instance,
- VkDebugUtilsMessageSeverityFlagBitsEXT messageSeverity,
- VkDebugUtilsMessageTypeFlagsEXT messageTypes,
- const VkDebugUtilsMessengerCallbackDataEXT *pCallbackData);
-VkResult util_CreateDebugUtilsMessenger(struct loader_instance *inst, const VkDebugUtilsMessengerCreateInfoEXT *pCreateInfo,
- const VkAllocationCallbacks *pAllocator, VkDebugUtilsMessengerEXT messenger);
-VkResult util_CreateDebugUtilsMessengers(struct loader_instance *inst, const VkAllocationCallbacks *pAllocator,
- uint32_t num_messengers, VkDebugUtilsMessengerCreateInfoEXT *infos,
- VkDebugUtilsMessengerEXT *messengers);
-VkBool32 util_SubmitDebugUtilsMessageEXT(const struct loader_instance *inst, VkDebugUtilsMessageSeverityFlagBitsEXT messageSeverity,
- VkDebugUtilsMessageTypeFlagsEXT messageTypes,
- const VkDebugUtilsMessengerCallbackDataEXT *pCallbackData);
-VkResult util_CopyDebugUtilsMessengerCreateInfos(const void *pChain, const VkAllocationCallbacks *pAllocator,
- uint32_t *num_messengers, VkDebugUtilsMessengerCreateInfoEXT **infos,
- VkDebugUtilsMessengerEXT **messengers);
-void util_DestroyDebugUtilsMessenger(struct loader_instance *inst, VkDebugUtilsMessengerEXT messenger,
- const VkAllocationCallbacks *pAllocator);
-void util_DestroyDebugUtilsMessengers(struct loader_instance *inst, const VkAllocationCallbacks *pAllocator,
- uint32_t num_messengers, VkDebugUtilsMessengerEXT *messengers);
-void util_FreeDebugUtilsMessengerCreateInfos(const VkAllocationCallbacks *pAllocator, VkDebugUtilsMessengerCreateInfoEXT *infos,
- VkDebugUtilsMessengerEXT *messengers);
-
-// VK_EXT_debug_report related items
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_CreateDebugReportCallbackEXT(VkInstance instance,
- const VkDebugReportCallbackCreateInfoEXT *pCreateInfo,
- const VkAllocationCallbacks *pAllocator,
- VkDebugReportCallbackEXT *pCallback);
-
-VKAPI_ATTR void VKAPI_CALL terminator_DestroyDebugReportCallbackEXT(VkInstance instance, VkDebugReportCallbackEXT callback,
- const VkAllocationCallbacks *pAllocator);
-
-VKAPI_ATTR void VKAPI_CALL terminator_DebugReportMessageEXT(VkInstance instance, VkDebugReportFlagsEXT flags,
- VkDebugReportObjectTypeEXT objType, uint64_t object, size_t location,
- int32_t msgCode, const char *pLayerPrefix, const char *pMsg);
-
-VkResult util_CreateDebugReportCallback(struct loader_instance *inst, VkDebugReportCallbackCreateInfoEXT *pCreateInfo,
- const VkAllocationCallbacks *pAllocator, VkDebugReportCallbackEXT callback);
-VkResult util_CreateDebugReportCallbacks(struct loader_instance *inst, const VkAllocationCallbacks *pAllocator,
- uint32_t num_callbacks, VkDebugReportCallbackCreateInfoEXT *infos,
- VkDebugReportCallbackEXT *callbacks);
-VkBool32 util_DebugReportMessage(const struct loader_instance *inst, VkFlags msgFlags, VkDebugReportObjectTypeEXT objectType,
- uint64_t srcObject, size_t location, int32_t msgCode, const char *pLayerPrefix, const char *pMsg);
-VkResult util_CopyDebugReportCreateInfos(const void *pChain, const VkAllocationCallbacks *pAllocator, uint32_t *num_callbacks,
- VkDebugReportCallbackCreateInfoEXT **infos, VkDebugReportCallbackEXT **callbacks);
-void util_DestroyDebugReportCallback(struct loader_instance *inst, VkDebugReportCallbackEXT callback,
- const VkAllocationCallbacks *pAllocator);
-void util_DestroyDebugReportCallbacks(struct loader_instance *inst, const VkAllocationCallbacks *pAllocator, uint32_t num_callbacks,
- VkDebugReportCallbackEXT *callbacks);
-void util_FreeDebugReportCreateInfos(const VkAllocationCallbacks *pAllocator, VkDebugReportCallbackCreateInfoEXT *infos,
- VkDebugReportCallbackEXT *callbacks);
diff --git a/thirdparty/vulkan/loader/dev_ext_trampoline.c b/thirdparty/vulkan/loader/dev_ext_trampoline.c
deleted file mode 100644
index 55eee0c25f..0000000000
--- a/thirdparty/vulkan/loader/dev_ext_trampoline.c
+++ /dev/null
@@ -1,538 +0,0 @@
-/*
- * Copyright (c) 2015-2016 The Khronos Group Inc.
- * Copyright (c) 2015-2016 Valve Corporation
- * Copyright (c) 2015-2016 LunarG, Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * Author: Jon Ashburn <jon@lunarg.com>
- * Author: Lenny Komow <lenny@lunarg.com>
- */
-
-#include "vk_loader_platform.h"
-#include "loader.h"
-#if defined(__GNUC__) && !defined(__clang__)
-#pragma GCC optimize(3) // force gcc to use tail-calls
-#endif
-
-// Clang-format does not understand macros.
-// clang-format off
-
-VKAPI_ATTR void VKAPI_CALL vkdev_ext0(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext1(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext2(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext3(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext4(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext5(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext6(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext7(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext8(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext9(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext10(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext11(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext12(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext13(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext14(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext15(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext16(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext17(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext18(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext19(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext20(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext21(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext22(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext23(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext24(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext25(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext26(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext27(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext28(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext29(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext30(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext31(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext32(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext33(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext34(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext35(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext36(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext37(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext38(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext39(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext40(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext41(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext42(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext43(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext44(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext45(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext46(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext47(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext48(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext49(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext50(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext51(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext52(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext53(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext54(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext55(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext56(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext57(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext58(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext59(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext60(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext61(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext62(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext63(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext64(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext65(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext66(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext67(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext68(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext69(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext70(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext71(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext72(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext73(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext74(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext75(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext76(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext77(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext78(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext79(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext80(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext81(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext82(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext83(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext84(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext85(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext86(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext87(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext88(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext89(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext90(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext91(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext92(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext93(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext94(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext95(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext96(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext97(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext98(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext99(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext100(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext101(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext102(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext103(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext104(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext105(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext106(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext107(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext108(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext109(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext110(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext111(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext112(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext113(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext114(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext115(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext116(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext117(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext118(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext119(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext120(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext121(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext122(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext123(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext124(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext125(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext126(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext127(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext128(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext129(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext130(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext131(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext132(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext133(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext134(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext135(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext136(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext137(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext138(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext139(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext140(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext141(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext142(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext143(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext144(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext145(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext146(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext147(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext148(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext149(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext150(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext151(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext152(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext153(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext154(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext155(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext156(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext157(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext158(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext159(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext160(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext161(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext162(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext163(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext164(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext165(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext166(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext167(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext168(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext169(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext170(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext171(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext172(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext173(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext174(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext175(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext176(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext177(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext178(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext179(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext180(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext181(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext182(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext183(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext184(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext185(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext186(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext187(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext188(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext189(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext190(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext191(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext192(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext193(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext194(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext195(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext196(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext197(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext198(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext199(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext200(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext201(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext202(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext203(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext204(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext205(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext206(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext207(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext208(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext209(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext210(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext211(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext212(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext213(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext214(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext215(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext216(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext217(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext218(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext219(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext220(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext221(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext222(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext223(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext224(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext225(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext226(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext227(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext228(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext229(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext230(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext231(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext232(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext233(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext234(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext235(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext236(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext237(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext238(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext239(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext240(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext241(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext242(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext243(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext244(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext245(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext246(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext247(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext248(VkDevice device);
-VKAPI_ATTR void VKAPI_CALL vkdev_ext249(VkDevice device);
-
-void *loader_get_dev_ext_trampoline(uint32_t index) {
- switch (index) {
-#define CASE_HANDLE(num) case num: return vkdev_ext##num
- CASE_HANDLE(0);
- CASE_HANDLE(1);
- CASE_HANDLE(2);
- CASE_HANDLE(3);
- CASE_HANDLE(4);
- CASE_HANDLE(5);
- CASE_HANDLE(6);
- CASE_HANDLE(7);
- CASE_HANDLE(8);
- CASE_HANDLE(9);
- CASE_HANDLE(10);
- CASE_HANDLE(11);
- CASE_HANDLE(12);
- CASE_HANDLE(13);
- CASE_HANDLE(14);
- CASE_HANDLE(15);
- CASE_HANDLE(16);
- CASE_HANDLE(17);
- CASE_HANDLE(18);
- CASE_HANDLE(19);
- CASE_HANDLE(20);
- CASE_HANDLE(21);
- CASE_HANDLE(22);
- CASE_HANDLE(23);
- CASE_HANDLE(24);
- CASE_HANDLE(25);
- CASE_HANDLE(26);
- CASE_HANDLE(27);
- CASE_HANDLE(28);
- CASE_HANDLE(29);
- CASE_HANDLE(30);
- CASE_HANDLE(31);
- CASE_HANDLE(32);
- CASE_HANDLE(33);
- CASE_HANDLE(34);
- CASE_HANDLE(35);
- CASE_HANDLE(36);
- CASE_HANDLE(37);
- CASE_HANDLE(38);
- CASE_HANDLE(39);
- CASE_HANDLE(40);
- CASE_HANDLE(41);
- CASE_HANDLE(42);
- CASE_HANDLE(43);
- CASE_HANDLE(44);
- CASE_HANDLE(45);
- CASE_HANDLE(46);
- CASE_HANDLE(47);
- CASE_HANDLE(48);
- CASE_HANDLE(49);
- CASE_HANDLE(50);
- CASE_HANDLE(51);
- CASE_HANDLE(52);
- CASE_HANDLE(53);
- CASE_HANDLE(54);
- CASE_HANDLE(55);
- CASE_HANDLE(56);
- CASE_HANDLE(57);
- CASE_HANDLE(58);
- CASE_HANDLE(59);
- CASE_HANDLE(60);
- CASE_HANDLE(61);
- CASE_HANDLE(62);
- CASE_HANDLE(63);
- CASE_HANDLE(64);
- CASE_HANDLE(65);
- CASE_HANDLE(66);
- CASE_HANDLE(67);
- CASE_HANDLE(68);
- CASE_HANDLE(69);
- CASE_HANDLE(70);
- CASE_HANDLE(71);
- CASE_HANDLE(72);
- CASE_HANDLE(73);
- CASE_HANDLE(74);
- CASE_HANDLE(75);
- CASE_HANDLE(76);
- CASE_HANDLE(77);
- CASE_HANDLE(78);
- CASE_HANDLE(79);
- CASE_HANDLE(80);
- CASE_HANDLE(81);
- CASE_HANDLE(82);
- CASE_HANDLE(83);
- CASE_HANDLE(84);
- CASE_HANDLE(85);
- CASE_HANDLE(86);
- CASE_HANDLE(87);
- CASE_HANDLE(88);
- CASE_HANDLE(89);
- CASE_HANDLE(90);
- CASE_HANDLE(91);
- CASE_HANDLE(92);
- CASE_HANDLE(93);
- CASE_HANDLE(94);
- CASE_HANDLE(95);
- CASE_HANDLE(96);
- CASE_HANDLE(97);
- CASE_HANDLE(98);
- CASE_HANDLE(99);
- CASE_HANDLE(100);
- CASE_HANDLE(101);
- CASE_HANDLE(102);
- CASE_HANDLE(103);
- CASE_HANDLE(104);
- CASE_HANDLE(105);
- CASE_HANDLE(106);
- CASE_HANDLE(107);
- CASE_HANDLE(108);
- CASE_HANDLE(109);
- CASE_HANDLE(110);
- CASE_HANDLE(111);
- CASE_HANDLE(112);
- CASE_HANDLE(113);
- CASE_HANDLE(114);
- CASE_HANDLE(115);
- CASE_HANDLE(116);
- CASE_HANDLE(117);
- CASE_HANDLE(118);
- CASE_HANDLE(119);
- CASE_HANDLE(120);
- CASE_HANDLE(121);
- CASE_HANDLE(122);
- CASE_HANDLE(123);
- CASE_HANDLE(124);
- CASE_HANDLE(125);
- CASE_HANDLE(126);
- CASE_HANDLE(127);
- CASE_HANDLE(128);
- CASE_HANDLE(129);
- CASE_HANDLE(130);
- CASE_HANDLE(131);
- CASE_HANDLE(132);
- CASE_HANDLE(133);
- CASE_HANDLE(134);
- CASE_HANDLE(135);
- CASE_HANDLE(136);
- CASE_HANDLE(137);
- CASE_HANDLE(138);
- CASE_HANDLE(139);
- CASE_HANDLE(140);
- CASE_HANDLE(141);
- CASE_HANDLE(142);
- CASE_HANDLE(143);
- CASE_HANDLE(144);
- CASE_HANDLE(145);
- CASE_HANDLE(146);
- CASE_HANDLE(147);
- CASE_HANDLE(148);
- CASE_HANDLE(149);
- CASE_HANDLE(150);
- CASE_HANDLE(151);
- CASE_HANDLE(152);
- CASE_HANDLE(153);
- CASE_HANDLE(154);
- CASE_HANDLE(155);
- CASE_HANDLE(156);
- CASE_HANDLE(157);
- CASE_HANDLE(158);
- CASE_HANDLE(159);
- CASE_HANDLE(160);
- CASE_HANDLE(161);
- CASE_HANDLE(162);
- CASE_HANDLE(163);
- CASE_HANDLE(164);
- CASE_HANDLE(165);
- CASE_HANDLE(166);
- CASE_HANDLE(167);
- CASE_HANDLE(168);
- CASE_HANDLE(169);
- CASE_HANDLE(170);
- CASE_HANDLE(171);
- CASE_HANDLE(172);
- CASE_HANDLE(173);
- CASE_HANDLE(174);
- CASE_HANDLE(175);
- CASE_HANDLE(176);
- CASE_HANDLE(177);
- CASE_HANDLE(178);
- CASE_HANDLE(179);
- CASE_HANDLE(180);
- CASE_HANDLE(181);
- CASE_HANDLE(182);
- CASE_HANDLE(183);
- CASE_HANDLE(184);
- CASE_HANDLE(185);
- CASE_HANDLE(186);
- CASE_HANDLE(187);
- CASE_HANDLE(188);
- CASE_HANDLE(189);
- CASE_HANDLE(190);
- CASE_HANDLE(191);
- CASE_HANDLE(192);
- CASE_HANDLE(193);
- CASE_HANDLE(194);
- CASE_HANDLE(195);
- CASE_HANDLE(196);
- CASE_HANDLE(197);
- CASE_HANDLE(198);
- CASE_HANDLE(199);
- CASE_HANDLE(200);
- CASE_HANDLE(201);
- CASE_HANDLE(202);
- CASE_HANDLE(203);
- CASE_HANDLE(204);
- CASE_HANDLE(205);
- CASE_HANDLE(206);
- CASE_HANDLE(207);
- CASE_HANDLE(208);
- CASE_HANDLE(209);
- CASE_HANDLE(210);
- CASE_HANDLE(211);
- CASE_HANDLE(212);
- CASE_HANDLE(213);
- CASE_HANDLE(214);
- CASE_HANDLE(215);
- CASE_HANDLE(216);
- CASE_HANDLE(217);
- CASE_HANDLE(218);
- CASE_HANDLE(219);
- CASE_HANDLE(220);
- CASE_HANDLE(221);
- CASE_HANDLE(222);
- CASE_HANDLE(223);
- CASE_HANDLE(224);
- CASE_HANDLE(225);
- CASE_HANDLE(226);
- CASE_HANDLE(227);
- CASE_HANDLE(228);
- CASE_HANDLE(229);
- CASE_HANDLE(230);
- CASE_HANDLE(231);
- CASE_HANDLE(232);
- CASE_HANDLE(233);
- CASE_HANDLE(234);
- CASE_HANDLE(235);
- CASE_HANDLE(236);
- CASE_HANDLE(237);
- CASE_HANDLE(238);
- CASE_HANDLE(239);
- CASE_HANDLE(240);
- CASE_HANDLE(241);
- CASE_HANDLE(242);
- CASE_HANDLE(243);
- CASE_HANDLE(244);
- CASE_HANDLE(245);
- CASE_HANDLE(246);
- CASE_HANDLE(247);
- CASE_HANDLE(248);
- CASE_HANDLE(249);
- }
-
- return NULL;
-}
diff --git a/thirdparty/vulkan/loader/dirent_on_windows.c b/thirdparty/vulkan/loader/dirent_on_windows.c
deleted file mode 100644
index 16318cc70d..0000000000
--- a/thirdparty/vulkan/loader/dirent_on_windows.c
+++ /dev/null
@@ -1,128 +0,0 @@
-/*
-
- Implementation of POSIX directory browsing functions and types for Win32.
-
- Author: Kevlin Henney (kevlin@acm.org, kevlin@curbralan.com)
- History: Created March 1997. Updated June 2003 and July 2012.
- Rights: See end of file.
-
-*/
-#include "dirent_on_windows.h"
-#include <errno.h>
-#include <io.h> /* _findfirst and _findnext set errno iff they return -1 */
-#include <stdlib.h>
-#include <string.h>
-#include "vk_loader_platform.h"
-#include "loader.h"
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-typedef ptrdiff_t handle_type; /* C99's intptr_t not sufficiently portable */
-
-struct DIR {
- handle_type handle; /* -1 for failed rewind */
- struct _finddata_t info;
- struct dirent result; /* d_name null iff first time */
- char *name; /* null-terminated char string */
-};
-
-DIR *opendir(const char *name) {
- DIR *dir = 0;
-
- if (name && name[0]) {
- size_t base_length = strlen(name);
- const char *all = /* search pattern must end with suitable wildcard */
- strchr("/\\", name[base_length - 1]) ? "*" : "/*";
-
- if ((dir = (DIR *)loader_instance_tls_heap_alloc(sizeof *dir)) != 0 &&
- (dir->name = (char *)loader_instance_tls_heap_alloc(base_length + strlen(all) + 1)) != 0) {
- strcat(strcpy(dir->name, name), all);
-
- if ((dir->handle = (handle_type)_findfirst(dir->name, &dir->info)) != -1) {
- dir->result.d_name = 0;
- } else /* rollback */
- {
- loader_instance_tls_heap_free(dir->name);
- loader_instance_tls_heap_free(dir);
- dir = 0;
- }
- } else /* rollback */
- {
- loader_instance_tls_heap_free(dir);
- dir = 0;
- errno = ENOMEM;
- }
- } else {
- errno = EINVAL;
- }
-
- return dir;
-}
-
-int closedir(DIR *dir) {
- int result = -1;
-
- if (dir) {
- if (dir->handle != -1) {
- result = _findclose(dir->handle);
- }
-
- loader_instance_tls_heap_free(dir->name);
- loader_instance_tls_heap_free(dir);
- }
-
- if (result == -1) /* map all errors to EBADF */
- {
- errno = EBADF;
- }
-
- return result;
-}
-
-struct dirent *readdir(DIR *dir) {
- struct dirent *result = 0;
-
- if (dir && dir->handle != -1) {
- if (!dir->result.d_name || _findnext(dir->handle, &dir->info) != -1) {
- result = &dir->result;
- result->d_name = dir->info.name;
- }
- } else {
- errno = EBADF;
- }
-
- return result;
-}
-
-void rewinddir(DIR *dir) {
- if (dir && dir->handle != -1) {
- _findclose(dir->handle);
- dir->handle = (handle_type)_findfirst(dir->name, &dir->info);
- dir->result.d_name = 0;
- } else {
- errno = EBADF;
- }
-}
-
-#ifdef __cplusplus
-}
-#endif
-
-/*
-
- Copyright Kevlin Henney, 1997, 2003, 2012. All rights reserved.
- Copyright (c) 2015 The Khronos Group Inc.
- Copyright (c) 2015 Valve Corporation
- Copyright (c) 2015 LunarG, Inc.
- Permission to use, copy, modify, and distribute this software and its
- documentation for any purpose is hereby granted without fee, provided
- that this copyright and permissions notice appear in all copies and
- derivatives.
-
- This software is supplied "as is" without express or implied warranty.
-
- But that said, if there are any problems please get in touch.
-
-*/
diff --git a/thirdparty/vulkan/loader/dirent_on_windows.h b/thirdparty/vulkan/loader/dirent_on_windows.h
deleted file mode 100644
index 8600f8ef04..0000000000
--- a/thirdparty/vulkan/loader/dirent_on_windows.h
+++ /dev/null
@@ -1,51 +0,0 @@
-#ifndef DIRENT_INCLUDED
-#define DIRENT_INCLUDED
-
-/*
-
- Declaration of POSIX directory browsing functions and types for Win32.
-
- Author: Kevlin Henney (kevlin@acm.org, kevlin@curbralan.com)
- History: Created March 1997. Updated June 2003.
- Rights: See end of file.
-
-*/
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-typedef struct DIR DIR;
-
-struct dirent {
- char *d_name;
-};
-
-DIR *opendir(const char *);
-int closedir(DIR *);
-struct dirent *readdir(DIR *);
-void rewinddir(DIR *);
-
-/*
-
- Copyright Kevlin Henney, 1997, 2003. All rights reserved.
- Copyright (c) 2015 The Khronos Group Inc.
- Copyright (c) 2015 Valve Corporation
- Copyright (c) 2015 LunarG, Inc.
-
- Permission to use, copy, modify, and distribute this software and its
- documentation for any purpose is hereby granted without fee, provided
- that this copyright and permissions notice appear in all copies and
- derivatives.
-
- This software is supplied "as is" without express or implied warranty.
-
- But that said, if there are any problems please get in touch.
-
-*/
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif
diff --git a/thirdparty/vulkan/loader/extension_manual.c b/thirdparty/vulkan/loader/extension_manual.c
deleted file mode 100644
index fab25813f5..0000000000
--- a/thirdparty/vulkan/loader/extension_manual.c
+++ /dev/null
@@ -1,315 +0,0 @@
-/*
- * Copyright (c) 2015-2017 The Khronos Group Inc.
- * Copyright (c) 2015-2017 Valve Corporation
- * Copyright (c) 2015-2017 LunarG, Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * Author: Mark Young <marky@lunarg.com>
- * Author: Lenny Komow <lenny@lunarg.com>
- */
-
-#ifndef _GNU_SOURCE
-#define _GNU_SOURCE
-#endif
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include "vk_loader_platform.h"
-#include "loader.h"
-#include "vk_loader_extensions.h"
-#include <vulkan/vk_icd.h>
-#include "wsi.h"
-#include "debug_utils.h"
-
-// ---- Manually added trampoline/terminator functions
-
-// These functions, for whatever reason, require more complex changes than
-// can easily be automatically generated.
-
-// ---- VK_NV_external_memory_capabilities extension trampoline/terminators
-
-VKAPI_ATTR VkResult VKAPI_CALL
-GetPhysicalDeviceExternalImageFormatPropertiesNV(
- VkPhysicalDevice physicalDevice, VkFormat format, VkImageType type,
- VkImageTiling tiling, VkImageUsageFlags usage, VkImageCreateFlags flags,
- VkExternalMemoryHandleTypeFlagsNV externalHandleType,
- VkExternalImageFormatPropertiesNV *pExternalImageFormatProperties) {
- const VkLayerInstanceDispatchTable *disp;
- VkPhysicalDevice unwrapped_phys_dev = loader_unwrap_physical_device(physicalDevice);
- disp = loader_get_instance_layer_dispatch(physicalDevice);
-
- return disp->GetPhysicalDeviceExternalImageFormatPropertiesNV(
- unwrapped_phys_dev, format, type, tiling, usage, flags,
- externalHandleType, pExternalImageFormatProperties);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL
-terminator_GetPhysicalDeviceExternalImageFormatPropertiesNV(
- VkPhysicalDevice physicalDevice, VkFormat format, VkImageType type,
- VkImageTiling tiling, VkImageUsageFlags usage, VkImageCreateFlags flags,
- VkExternalMemoryHandleTypeFlagsNV externalHandleType,
- VkExternalImageFormatPropertiesNV *pExternalImageFormatProperties) {
- struct loader_physical_device_term *phys_dev_term =
- (struct loader_physical_device_term *)physicalDevice;
- struct loader_icd_term *icd_term = phys_dev_term->this_icd_term;
-
- if (!icd_term->dispatch.GetPhysicalDeviceExternalImageFormatPropertiesNV) {
- if (externalHandleType) {
- return VK_ERROR_FORMAT_NOT_SUPPORTED;
- }
-
- if (!icd_term->dispatch.GetPhysicalDeviceImageFormatProperties) {
- return VK_ERROR_INITIALIZATION_FAILED;
- }
-
- pExternalImageFormatProperties->externalMemoryFeatures = 0;
- pExternalImageFormatProperties->exportFromImportedHandleTypes = 0;
- pExternalImageFormatProperties->compatibleHandleTypes = 0;
-
- return icd_term->dispatch.GetPhysicalDeviceImageFormatProperties(
- phys_dev_term->phys_dev, format, type, tiling, usage, flags,
- &pExternalImageFormatProperties->imageFormatProperties);
- }
-
- return icd_term->dispatch.GetPhysicalDeviceExternalImageFormatPropertiesNV(
- phys_dev_term->phys_dev, format, type, tiling, usage, flags,
- externalHandleType, pExternalImageFormatProperties);
-}
-
-// ---- VK_EXT_display_surface_counter extension trampoline/terminators
-
-VKAPI_ATTR VkResult VKAPI_CALL GetPhysicalDeviceSurfaceCapabilities2EXT(VkPhysicalDevice physicalDevice, VkSurfaceKHR surface,
- VkSurfaceCapabilities2EXT *pSurfaceCapabilities) {
- const VkLayerInstanceDispatchTable *disp;
- VkPhysicalDevice unwrapped_phys_dev = loader_unwrap_physical_device(physicalDevice);
- disp = loader_get_instance_layer_dispatch(physicalDevice);
- return disp->GetPhysicalDeviceSurfaceCapabilities2EXT(unwrapped_phys_dev, surface, pSurfaceCapabilities);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_GetPhysicalDeviceSurfaceCapabilities2EXT(
- VkPhysicalDevice physicalDevice, VkSurfaceKHR surface, VkSurfaceCapabilities2EXT *pSurfaceCapabilities) {
- struct loader_physical_device_term *phys_dev_term = (struct loader_physical_device_term *)physicalDevice;
- struct loader_icd_term *icd_term = phys_dev_term->this_icd_term;
-
- VkIcdSurface *icd_surface = (VkIcdSurface *)(surface);
- uint8_t icd_index = phys_dev_term->icd_index;
-
- // Unwrap the surface if needed
- VkSurfaceKHR unwrapped_surface = surface;
- if (icd_surface->real_icd_surfaces != NULL && (void *)icd_surface->real_icd_surfaces[icd_index] != NULL) {
- unwrapped_surface = icd_surface->real_icd_surfaces[icd_index];
- }
-
- if (icd_term->dispatch.GetPhysicalDeviceSurfaceCapabilities2EXT != NULL) {
- // Pass the call to the driver
- return icd_term->dispatch.GetPhysicalDeviceSurfaceCapabilities2EXT(phys_dev_term->phys_dev, unwrapped_surface,
- pSurfaceCapabilities);
- } else {
- // Emulate the call
- loader_log(icd_term->this_instance, VK_DEBUG_REPORT_INFORMATION_BIT_EXT, 0,
- "vkGetPhysicalDeviceSurfaceCapabilities2EXT: Emulating call in ICD \"%s\" using "
- "vkGetPhysicalDeviceSurfaceCapabilitiesKHR",
- icd_term->scanned_icd->lib_name);
-
- VkSurfaceCapabilitiesKHR surface_caps;
- VkResult res =
- icd_term->dispatch.GetPhysicalDeviceSurfaceCapabilitiesKHR(phys_dev_term->phys_dev, unwrapped_surface, &surface_caps);
- pSurfaceCapabilities->minImageCount = surface_caps.minImageCount;
- pSurfaceCapabilities->maxImageCount = surface_caps.maxImageCount;
- pSurfaceCapabilities->currentExtent = surface_caps.currentExtent;
- pSurfaceCapabilities->minImageExtent = surface_caps.minImageExtent;
- pSurfaceCapabilities->maxImageExtent = surface_caps.maxImageExtent;
- pSurfaceCapabilities->maxImageArrayLayers = surface_caps.maxImageArrayLayers;
- pSurfaceCapabilities->supportedTransforms = surface_caps.supportedTransforms;
- pSurfaceCapabilities->currentTransform = surface_caps.currentTransform;
- pSurfaceCapabilities->supportedCompositeAlpha = surface_caps.supportedCompositeAlpha;
- pSurfaceCapabilities->supportedUsageFlags = surface_caps.supportedUsageFlags;
- pSurfaceCapabilities->supportedSurfaceCounters = 0;
-
- if (pSurfaceCapabilities->pNext != NULL) {
- loader_log(icd_term->this_instance, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "vkGetPhysicalDeviceSurfaceCapabilities2EXT: Emulation found unrecognized structure type in "
- "pSurfaceCapabilities->pNext - this struct will be ignored");
- }
-
- return res;
- }
-}
-
-// ---- VK_EXT_direct_mode_display extension trampoline/terminators
-
-VKAPI_ATTR VkResult VKAPI_CALL ReleaseDisplayEXT(VkPhysicalDevice physicalDevice, VkDisplayKHR display) {
- const VkLayerInstanceDispatchTable *disp;
- VkPhysicalDevice unwrapped_phys_dev = loader_unwrap_physical_device(physicalDevice);
- disp = loader_get_instance_layer_dispatch(physicalDevice);
- return disp->ReleaseDisplayEXT(unwrapped_phys_dev, display);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_ReleaseDisplayEXT(VkPhysicalDevice physicalDevice, VkDisplayKHR display) {
- struct loader_physical_device_term *phys_dev_term = (struct loader_physical_device_term *)physicalDevice;
- struct loader_icd_term *icd_term = phys_dev_term->this_icd_term;
-
- if (icd_term->dispatch.ReleaseDisplayEXT == NULL) {
- loader_log(icd_term->this_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "ICD \"%s\" associated with VkPhysicalDevice does not support vkReleaseDisplayEXT - Consequently, the call is "
- "invalid because it should not be possible to acquire a display on this device",
- icd_term->scanned_icd->lib_name);
- }
- return icd_term->dispatch.ReleaseDisplayEXT(phys_dev_term->phys_dev, display);
-}
-
-// ---- VK_EXT_acquire_xlib_display extension trampoline/terminators
-
-#ifdef VK_USE_PLATFORM_XLIB_XRANDR_EXT
-VKAPI_ATTR VkResult VKAPI_CALL AcquireXlibDisplayEXT(VkPhysicalDevice physicalDevice, Display *dpy, VkDisplayKHR display) {
- const VkLayerInstanceDispatchTable *disp;
- VkPhysicalDevice unwrapped_phys_dev = loader_unwrap_physical_device(physicalDevice);
- disp = loader_get_instance_layer_dispatch(physicalDevice);
- return disp->AcquireXlibDisplayEXT(unwrapped_phys_dev, dpy, display);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_AcquireXlibDisplayEXT(VkPhysicalDevice physicalDevice, Display *dpy,
- VkDisplayKHR display) {
- struct loader_physical_device_term *phys_dev_term = (struct loader_physical_device_term *)physicalDevice;
- struct loader_icd_term *icd_term = phys_dev_term->this_icd_term;
-
- if (icd_term->dispatch.AcquireXlibDisplayEXT != NULL) {
- // Pass the call to the driver
- return icd_term->dispatch.AcquireXlibDisplayEXT(phys_dev_term->phys_dev, dpy, display);
- } else {
- // Emulate the call
- loader_log(icd_term->this_instance, VK_DEBUG_REPORT_INFORMATION_BIT_EXT, 0,
- "vkAcquireXLibDisplayEXT: Emulating call in ICD \"%s\" by returning error", icd_term->scanned_icd->lib_name);
-
- // Fail for the unsupported command
- return VK_ERROR_INITIALIZATION_FAILED;
- }
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL GetRandROutputDisplayEXT(VkPhysicalDevice physicalDevice, Display *dpy, RROutput rrOutput,
- VkDisplayKHR *pDisplay) {
- const VkLayerInstanceDispatchTable *disp;
- VkPhysicalDevice unwrapped_phys_dev = loader_unwrap_physical_device(physicalDevice);
- disp = loader_get_instance_layer_dispatch(physicalDevice);
- return disp->GetRandROutputDisplayEXT(unwrapped_phys_dev, dpy, rrOutput, pDisplay);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_GetRandROutputDisplayEXT(VkPhysicalDevice physicalDevice, Display *dpy, RROutput rrOutput,
- VkDisplayKHR *pDisplay) {
- struct loader_physical_device_term *phys_dev_term = (struct loader_physical_device_term *)physicalDevice;
- struct loader_icd_term *icd_term = phys_dev_term->this_icd_term;
-
- if (icd_term->dispatch.GetRandROutputDisplayEXT != NULL) {
- // Pass the call to the driver
- return icd_term->dispatch.GetRandROutputDisplayEXT(phys_dev_term->phys_dev, dpy, rrOutput, pDisplay);
- } else {
- // Emulate the call
- loader_log(icd_term->this_instance, VK_DEBUG_REPORT_INFORMATION_BIT_EXT, 0,
- "vkGetRandROutputDisplayEXT: Emulating call in ICD \"%s\" by returning null display",
- icd_term->scanned_icd->lib_name);
-
- // Return a null handle to indicate this can't be done
- *pDisplay = VK_NULL_HANDLE;
- return VK_SUCCESS;
- }
-}
-
-#endif // VK_USE_PLATFORM_XLIB_XRANDR_EXT
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
-VKAPI_ATTR VkResult VKAPI_CALL GetPhysicalDeviceSurfacePresentModes2EXT(
- VkPhysicalDevice physicalDevice,
- const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo,
- uint32_t* pPresentModeCount,
- VkPresentModeKHR* pPresentModes) {
- const VkLayerInstanceDispatchTable *disp;
- VkPhysicalDevice unwrapped_phys_dev = loader_unwrap_physical_device(physicalDevice);
- disp = loader_get_instance_layer_dispatch(physicalDevice);
- return disp->GetPhysicalDeviceSurfacePresentModes2EXT(unwrapped_phys_dev, pSurfaceInfo, pPresentModeCount, pPresentModes);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_GetPhysicalDeviceSurfacePresentModes2EXT(
- VkPhysicalDevice physicalDevice,
- const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo,
- uint32_t* pPresentModeCount,
- VkPresentModeKHR* pPresentModes) {
- struct loader_physical_device_term *phys_dev_term = (struct loader_physical_device_term *)physicalDevice;
- struct loader_icd_term *icd_term = phys_dev_term->this_icd_term;
- if (NULL == icd_term->dispatch.GetPhysicalDeviceSurfacePresentModes2EXT) {
- loader_log(icd_term->this_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "ICD associated with VkPhysicalDevice does not support GetPhysicalDeviceSurfacePresentModes2EXT");
- }
- VkIcdSurface *icd_surface = (VkIcdSurface *)(pSurfaceInfo->surface);
- uint8_t icd_index = phys_dev_term->icd_index;
- if (NULL != icd_surface->real_icd_surfaces && NULL != (void *)icd_surface->real_icd_surfaces[icd_index]) {
- const VkPhysicalDeviceSurfaceInfo2KHR surface_info_copy = {
- .sType = pSurfaceInfo->sType,
- .pNext = pSurfaceInfo->pNext,
- .surface = icd_surface->real_icd_surfaces[icd_index],
- };
- return icd_term->dispatch.GetPhysicalDeviceSurfacePresentModes2EXT(phys_dev_term->phys_dev, &surface_info_copy, pPresentModeCount, pPresentModes);
- }
- return icd_term->dispatch.GetPhysicalDeviceSurfacePresentModes2EXT(phys_dev_term->phys_dev, pSurfaceInfo, pPresentModeCount, pPresentModes);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL GetDeviceGroupSurfacePresentModes2EXT(
- VkDevice device,
- const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo,
- VkDeviceGroupPresentModeFlagsKHR* pModes) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->GetDeviceGroupSurfacePresentModes2EXT(device, pSurfaceInfo, pModes);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_GetDeviceGroupSurfacePresentModes2EXT(
- VkDevice device,
- const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo,
- VkDeviceGroupPresentModeFlagsKHR* pModes) {
- uint32_t icd_index = 0;
- struct loader_device *dev;
- struct loader_icd_term *icd_term = loader_get_icd_and_device(device, &dev, &icd_index);
- if (NULL != icd_term && NULL != icd_term->dispatch.GetDeviceGroupSurfacePresentModes2EXT) {
- VkIcdSurface *icd_surface = (VkIcdSurface *)(uintptr_t)pSurfaceInfo->surface;
- if (NULL != icd_surface->real_icd_surfaces && (VkSurfaceKHR)NULL != icd_surface->real_icd_surfaces[icd_index]) {
- const VkPhysicalDeviceSurfaceInfo2KHR surface_info_copy = {
- .sType = pSurfaceInfo->sType,
- .pNext = pSurfaceInfo->pNext,
- .surface = icd_surface->real_icd_surfaces[icd_index],
- };
- return icd_term->dispatch.GetDeviceGroupSurfacePresentModes2EXT(device, &surface_info_copy, pModes);
- }
- return icd_term->dispatch.GetDeviceGroupSurfacePresentModes2EXT(device, pSurfaceInfo, pModes);
- }
- return VK_SUCCESS;
-}
-
-#endif // VK_USE_PLATFORM_WIN32_KHR
-
-// ---- VK_EXT_tooling_info extension trampoline/terminators
-
-VKAPI_ATTR VkResult VKAPI_CALL GetPhysicalDeviceToolPropertiesEXT(
- VkPhysicalDevice physicalDevice,
- uint32_t* pToolCount,
- VkPhysicalDeviceToolPropertiesEXT* pToolProperties) {
- const VkLayerInstanceDispatchTable *disp;
- VkPhysicalDevice unwrapped_phys_dev = loader_unwrap_physical_device(physicalDevice);
- disp = loader_get_instance_layer_dispatch(physicalDevice);
- return disp->GetPhysicalDeviceToolPropertiesEXT(unwrapped_phys_dev, pToolCount, pToolProperties);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_GetPhysicalDeviceToolPropertiesEXT(
- VkPhysicalDevice physicalDevice,
- uint32_t* pToolCount,
- VkPhysicalDeviceToolPropertiesEXT* pToolProperties) {
- return VK_SUCCESS;
-}
diff --git a/thirdparty/vulkan/loader/extension_manual.h b/thirdparty/vulkan/loader/extension_manual.h
deleted file mode 100644
index b60a799eb2..0000000000
--- a/thirdparty/vulkan/loader/extension_manual.h
+++ /dev/null
@@ -1,100 +0,0 @@
-/*
- * Copyright (c) 2015-2017 The Khronos Group Inc.
- * Copyright (c) 2015-2017 Valve Corporation
- * Copyright (c) 2015-2017 LunarG, Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * Author: Mark Young <marky@lunarg.com>
- */
-
-#pragma once
-
-// ---- Manually added trampoline/terminator functions
-
-// These functions, for whatever reason, require more complex changes than
-// can easily be automatically generated.
-
-VKAPI_ATTR VkResult VKAPI_CALL
-GetPhysicalDeviceExternalImageFormatPropertiesNV(
- VkPhysicalDevice physicalDevice, VkFormat format, VkImageType type,
- VkImageTiling tiling, VkImageUsageFlags usage, VkImageCreateFlags flags,
- VkExternalMemoryHandleTypeFlagsNV externalHandleType,
- VkExternalImageFormatPropertiesNV *pExternalImageFormatProperties);
-
-VKAPI_ATTR VkResult VKAPI_CALL
-terminator_GetPhysicalDeviceExternalImageFormatPropertiesNV(
- VkPhysicalDevice physicalDevice, VkFormat format, VkImageType type,
- VkImageTiling tiling, VkImageUsageFlags usage, VkImageCreateFlags flags,
- VkExternalMemoryHandleTypeFlagsNV externalHandleType,
- VkExternalImageFormatPropertiesNV *pExternalImageFormatProperties);
-
-VKAPI_ATTR VkResult VKAPI_CALL GetPhysicalDeviceSurfaceCapabilities2EXT(VkPhysicalDevice physicalDevice, VkSurfaceKHR surface,
- VkSurfaceCapabilities2EXT* pSurfaceCapabilities);
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_GetPhysicalDeviceSurfaceCapabilities2EXT(VkPhysicalDevice physicalDevice,
- VkSurfaceKHR surface,
- VkSurfaceCapabilities2EXT* pSurfaceCapabilities);
-
-VKAPI_ATTR VkResult VKAPI_CALL ReleaseDisplayEXT(VkPhysicalDevice physicalDevice, VkDisplayKHR display);
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_ReleaseDisplayEXT(VkPhysicalDevice physicalDevice, VkDisplayKHR display);
-
-#ifdef VK_USE_PLATFORM_XLIB_XRANDR_EXT
-VKAPI_ATTR VkResult VKAPI_CALL AcquireXlibDisplayEXT(VkPhysicalDevice physicalDevice, Display* dpy, VkDisplayKHR display);
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_AcquireXlibDisplayEXT(VkPhysicalDevice physicalDevice, Display* dpy,
- VkDisplayKHR display);
-
-VKAPI_ATTR VkResult VKAPI_CALL GetRandROutputDisplayEXT(VkPhysicalDevice physicalDevice, Display* dpy, RROutput rrOutput,
- VkDisplayKHR* pDisplay);
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_GetRandROutputDisplayEXT(VkPhysicalDevice physicalDevice, Display* dpy, RROutput rrOutput,
- VkDisplayKHR* pDisplay);
-#endif // VK_USE_PLATFORM_XLIB_XRANDR_EXT
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
-VKAPI_ATTR VkResult VKAPI_CALL GetPhysicalDeviceSurfacePresentModes2EXT(
- VkPhysicalDevice physicalDevice,
- const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo,
- uint32_t* pPresentModeCount,
- VkPresentModeKHR* pPresentModes);
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_GetPhysicalDeviceSurfacePresentModes2EXT(
- VkPhysicalDevice physicalDevice,
- const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo,
- uint32_t* pPresentModeCount,
- VkPresentModeKHR* pPresentModes);
-#endif // VK_USE_PLATFORM_WIN32_KHR
-
-VKAPI_ATTR VkResult VKAPI_CALL GetDeviceGroupSurfacePresentModes2EXT(
- VkDevice device,
- const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo,
- VkDeviceGroupPresentModeFlagsKHR* pModes);
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_GetDeviceGroupSurfacePresentModes2EXT(
- VkDevice device,
- const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo,
- VkDeviceGroupPresentModeFlagsKHR* pModes);
-
-// ---- VK_EXT_tooling_info extension trampoline/terminators
-
-VKAPI_ATTR VkResult VKAPI_CALL GetPhysicalDeviceToolPropertiesEXT(
- VkPhysicalDevice physicalDevice,
- uint32_t* pToolCount,
- VkPhysicalDeviceToolPropertiesEXT* pToolProperties);
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_GetPhysicalDeviceToolPropertiesEXT(
- VkPhysicalDevice physicalDevice,
- uint32_t* pToolCount,
- VkPhysicalDeviceToolPropertiesEXT* pToolProperties);
diff --git a/thirdparty/vulkan/loader/gpa_helper.h b/thirdparty/vulkan/loader/gpa_helper.h
deleted file mode 100644
index 01dec6fa72..0000000000
--- a/thirdparty/vulkan/loader/gpa_helper.h
+++ /dev/null
@@ -1,249 +0,0 @@
-/*
- *
- * Copyright (c) 2015-18, 2020 The Khronos Group Inc.
- * Copyright (c) 2015-18, 2020 Valve Corporation
- * Copyright (c) 2015-18, 2020 LunarG, Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * Author: Jon Ashburn <jon@lunarg.com>
- */
-
-#include <string.h>
-#include "debug_utils.h"
-#include "wsi.h"
-
-static inline void *trampolineGetProcAddr(struct loader_instance *inst, const char *funcName) {
- // Don't include or check global functions
- if (!strcmp(funcName, "vkGetInstanceProcAddr")) return vkGetInstanceProcAddr;
- if (!strcmp(funcName, "vkDestroyInstance")) return vkDestroyInstance;
- if (!strcmp(funcName, "vkEnumeratePhysicalDevices")) return vkEnumeratePhysicalDevices;
- if (!strcmp(funcName, "vkGetPhysicalDeviceFeatures")) return vkGetPhysicalDeviceFeatures;
- if (!strcmp(funcName, "vkGetPhysicalDeviceFormatProperties")) return vkGetPhysicalDeviceFormatProperties;
- if (!strcmp(funcName, "vkGetPhysicalDeviceImageFormatProperties")) return vkGetPhysicalDeviceImageFormatProperties;
- if (!strcmp(funcName, "vkGetPhysicalDeviceSparseImageFormatProperties")) return vkGetPhysicalDeviceSparseImageFormatProperties;
- if (!strcmp(funcName, "vkGetPhysicalDeviceProperties")) return vkGetPhysicalDeviceProperties;
- if (!strcmp(funcName, "vkGetPhysicalDeviceQueueFamilyProperties")) return vkGetPhysicalDeviceQueueFamilyProperties;
- if (!strcmp(funcName, "vkGetPhysicalDeviceMemoryProperties")) return vkGetPhysicalDeviceMemoryProperties;
- if (!strcmp(funcName, "vkEnumerateDeviceLayerProperties")) return vkEnumerateDeviceLayerProperties;
- if (!strcmp(funcName, "vkEnumerateDeviceExtensionProperties")) return vkEnumerateDeviceExtensionProperties;
- if (!strcmp(funcName, "vkCreateDevice")) return vkCreateDevice;
- if (!strcmp(funcName, "vkGetDeviceProcAddr")) return vkGetDeviceProcAddr;
- if (!strcmp(funcName, "vkDestroyDevice")) return vkDestroyDevice;
- if (!strcmp(funcName, "vkGetDeviceQueue")) return vkGetDeviceQueue;
- if (!strcmp(funcName, "vkQueueSubmit")) return vkQueueSubmit;
- if (!strcmp(funcName, "vkQueueWaitIdle")) return vkQueueWaitIdle;
- if (!strcmp(funcName, "vkDeviceWaitIdle")) return vkDeviceWaitIdle;
- if (!strcmp(funcName, "vkAllocateMemory")) return vkAllocateMemory;
- if (!strcmp(funcName, "vkFreeMemory")) return vkFreeMemory;
- if (!strcmp(funcName, "vkMapMemory")) return vkMapMemory;
- if (!strcmp(funcName, "vkUnmapMemory")) return vkUnmapMemory;
- if (!strcmp(funcName, "vkFlushMappedMemoryRanges")) return vkFlushMappedMemoryRanges;
- if (!strcmp(funcName, "vkInvalidateMappedMemoryRanges")) return vkInvalidateMappedMemoryRanges;
- if (!strcmp(funcName, "vkGetDeviceMemoryCommitment")) return vkGetDeviceMemoryCommitment;
- if (!strcmp(funcName, "vkGetImageSparseMemoryRequirements")) return vkGetImageSparseMemoryRequirements;
- if (!strcmp(funcName, "vkGetImageMemoryRequirements")) return vkGetImageMemoryRequirements;
- if (!strcmp(funcName, "vkGetBufferMemoryRequirements")) return vkGetBufferMemoryRequirements;
- if (!strcmp(funcName, "vkBindImageMemory")) return vkBindImageMemory;
- if (!strcmp(funcName, "vkBindBufferMemory")) return vkBindBufferMemory;
- if (!strcmp(funcName, "vkQueueBindSparse")) return vkQueueBindSparse;
- if (!strcmp(funcName, "vkCreateFence")) return vkCreateFence;
- if (!strcmp(funcName, "vkDestroyFence")) return vkDestroyFence;
- if (!strcmp(funcName, "vkGetFenceStatus")) return vkGetFenceStatus;
- if (!strcmp(funcName, "vkResetFences")) return vkResetFences;
- if (!strcmp(funcName, "vkWaitForFences")) return vkWaitForFences;
- if (!strcmp(funcName, "vkCreateSemaphore")) return vkCreateSemaphore;
- if (!strcmp(funcName, "vkDestroySemaphore")) return vkDestroySemaphore;
- if (!strcmp(funcName, "vkCreateEvent")) return vkCreateEvent;
- if (!strcmp(funcName, "vkDestroyEvent")) return vkDestroyEvent;
- if (!strcmp(funcName, "vkGetEventStatus")) return vkGetEventStatus;
- if (!strcmp(funcName, "vkSetEvent")) return vkSetEvent;
- if (!strcmp(funcName, "vkResetEvent")) return vkResetEvent;
- if (!strcmp(funcName, "vkCreateQueryPool")) return vkCreateQueryPool;
- if (!strcmp(funcName, "vkDestroyQueryPool")) return vkDestroyQueryPool;
- if (!strcmp(funcName, "vkGetQueryPoolResults")) return vkGetQueryPoolResults;
- if (!strcmp(funcName, "vkCreateBuffer")) return vkCreateBuffer;
- if (!strcmp(funcName, "vkDestroyBuffer")) return vkDestroyBuffer;
- if (!strcmp(funcName, "vkCreateBufferView")) return vkCreateBufferView;
- if (!strcmp(funcName, "vkDestroyBufferView")) return vkDestroyBufferView;
- if (!strcmp(funcName, "vkCreateImage")) return vkCreateImage;
- if (!strcmp(funcName, "vkDestroyImage")) return vkDestroyImage;
- if (!strcmp(funcName, "vkGetImageSubresourceLayout")) return vkGetImageSubresourceLayout;
- if (!strcmp(funcName, "vkCreateImageView")) return vkCreateImageView;
- if (!strcmp(funcName, "vkDestroyImageView")) return vkDestroyImageView;
- if (!strcmp(funcName, "vkCreateShaderModule")) return vkCreateShaderModule;
- if (!strcmp(funcName, "vkDestroyShaderModule")) return vkDestroyShaderModule;
- if (!strcmp(funcName, "vkCreatePipelineCache")) return vkCreatePipelineCache;
- if (!strcmp(funcName, "vkDestroyPipelineCache")) return vkDestroyPipelineCache;
- if (!strcmp(funcName, "vkGetPipelineCacheData")) return vkGetPipelineCacheData;
- if (!strcmp(funcName, "vkMergePipelineCaches")) return vkMergePipelineCaches;
- if (!strcmp(funcName, "vkCreateGraphicsPipelines")) return vkCreateGraphicsPipelines;
- if (!strcmp(funcName, "vkCreateComputePipelines")) return vkCreateComputePipelines;
- if (!strcmp(funcName, "vkDestroyPipeline")) return vkDestroyPipeline;
- if (!strcmp(funcName, "vkCreatePipelineLayout")) return vkCreatePipelineLayout;
- if (!strcmp(funcName, "vkDestroyPipelineLayout")) return vkDestroyPipelineLayout;
- if (!strcmp(funcName, "vkCreateSampler")) return vkCreateSampler;
- if (!strcmp(funcName, "vkDestroySampler")) return vkDestroySampler;
- if (!strcmp(funcName, "vkCreateDescriptorSetLayout")) return vkCreateDescriptorSetLayout;
- if (!strcmp(funcName, "vkDestroyDescriptorSetLayout")) return vkDestroyDescriptorSetLayout;
- if (!strcmp(funcName, "vkCreateDescriptorPool")) return vkCreateDescriptorPool;
- if (!strcmp(funcName, "vkDestroyDescriptorPool")) return vkDestroyDescriptorPool;
- if (!strcmp(funcName, "vkResetDescriptorPool")) return vkResetDescriptorPool;
- if (!strcmp(funcName, "vkAllocateDescriptorSets")) return vkAllocateDescriptorSets;
- if (!strcmp(funcName, "vkFreeDescriptorSets")) return vkFreeDescriptorSets;
- if (!strcmp(funcName, "vkUpdateDescriptorSets")) return vkUpdateDescriptorSets;
- if (!strcmp(funcName, "vkCreateFramebuffer")) return vkCreateFramebuffer;
- if (!strcmp(funcName, "vkDestroyFramebuffer")) return vkDestroyFramebuffer;
- if (!strcmp(funcName, "vkCreateRenderPass")) return vkCreateRenderPass;
- if (!strcmp(funcName, "vkDestroyRenderPass")) return vkDestroyRenderPass;
- if (!strcmp(funcName, "vkGetRenderAreaGranularity")) return vkGetRenderAreaGranularity;
- if (!strcmp(funcName, "vkCreateCommandPool")) return vkCreateCommandPool;
- if (!strcmp(funcName, "vkDestroyCommandPool")) return vkDestroyCommandPool;
- if (!strcmp(funcName, "vkResetCommandPool")) return vkResetCommandPool;
- if (!strcmp(funcName, "vkAllocateCommandBuffers")) return vkAllocateCommandBuffers;
- if (!strcmp(funcName, "vkFreeCommandBuffers")) return vkFreeCommandBuffers;
- if (!strcmp(funcName, "vkBeginCommandBuffer")) return vkBeginCommandBuffer;
- if (!strcmp(funcName, "vkEndCommandBuffer")) return vkEndCommandBuffer;
- if (!strcmp(funcName, "vkResetCommandBuffer")) return vkResetCommandBuffer;
- if (!strcmp(funcName, "vkCmdBindPipeline")) return vkCmdBindPipeline;
- if (!strcmp(funcName, "vkCmdBindDescriptorSets")) return vkCmdBindDescriptorSets;
- if (!strcmp(funcName, "vkCmdBindVertexBuffers")) return vkCmdBindVertexBuffers;
- if (!strcmp(funcName, "vkCmdBindIndexBuffer")) return vkCmdBindIndexBuffer;
- if (!strcmp(funcName, "vkCmdSetViewport")) return vkCmdSetViewport;
- if (!strcmp(funcName, "vkCmdSetScissor")) return vkCmdSetScissor;
- if (!strcmp(funcName, "vkCmdSetLineWidth")) return vkCmdSetLineWidth;
- if (!strcmp(funcName, "vkCmdSetDepthBias")) return vkCmdSetDepthBias;
- if (!strcmp(funcName, "vkCmdSetBlendConstants")) return vkCmdSetBlendConstants;
- if (!strcmp(funcName, "vkCmdSetDepthBounds")) return vkCmdSetDepthBounds;
- if (!strcmp(funcName, "vkCmdSetStencilCompareMask")) return vkCmdSetStencilCompareMask;
- if (!strcmp(funcName, "vkCmdSetStencilWriteMask")) return vkCmdSetStencilWriteMask;
- if (!strcmp(funcName, "vkCmdSetStencilReference")) return vkCmdSetStencilReference;
- if (!strcmp(funcName, "vkCmdDraw")) return vkCmdDraw;
- if (!strcmp(funcName, "vkCmdDrawIndexed")) return vkCmdDrawIndexed;
- if (!strcmp(funcName, "vkCmdDrawIndirect")) return vkCmdDrawIndirect;
- if (!strcmp(funcName, "vkCmdDrawIndexedIndirect")) return vkCmdDrawIndexedIndirect;
- if (!strcmp(funcName, "vkCmdDispatch")) return vkCmdDispatch;
- if (!strcmp(funcName, "vkCmdDispatchIndirect")) return vkCmdDispatchIndirect;
- if (!strcmp(funcName, "vkCmdCopyBuffer")) return vkCmdCopyBuffer;
- if (!strcmp(funcName, "vkCmdCopyImage")) return vkCmdCopyImage;
- if (!strcmp(funcName, "vkCmdBlitImage")) return vkCmdBlitImage;
- if (!strcmp(funcName, "vkCmdCopyBufferToImage")) return vkCmdCopyBufferToImage;
- if (!strcmp(funcName, "vkCmdCopyImageToBuffer")) return vkCmdCopyImageToBuffer;
- if (!strcmp(funcName, "vkCmdUpdateBuffer")) return vkCmdUpdateBuffer;
- if (!strcmp(funcName, "vkCmdFillBuffer")) return vkCmdFillBuffer;
- if (!strcmp(funcName, "vkCmdClearColorImage")) return vkCmdClearColorImage;
- if (!strcmp(funcName, "vkCmdClearDepthStencilImage")) return vkCmdClearDepthStencilImage;
- if (!strcmp(funcName, "vkCmdClearAttachments")) return vkCmdClearAttachments;
- if (!strcmp(funcName, "vkCmdResolveImage")) return vkCmdResolveImage;
- if (!strcmp(funcName, "vkCmdSetEvent")) return vkCmdSetEvent;
- if (!strcmp(funcName, "vkCmdResetEvent")) return vkCmdResetEvent;
- if (!strcmp(funcName, "vkCmdWaitEvents")) return vkCmdWaitEvents;
- if (!strcmp(funcName, "vkCmdPipelineBarrier")) return vkCmdPipelineBarrier;
- if (!strcmp(funcName, "vkCmdBeginQuery")) return vkCmdBeginQuery;
- if (!strcmp(funcName, "vkCmdEndQuery")) return vkCmdEndQuery;
- if (!strcmp(funcName, "vkCmdResetQueryPool")) return vkCmdResetQueryPool;
- if (!strcmp(funcName, "vkCmdWriteTimestamp")) return vkCmdWriteTimestamp;
- if (!strcmp(funcName, "vkCmdCopyQueryPoolResults")) return vkCmdCopyQueryPoolResults;
- if (!strcmp(funcName, "vkCmdPushConstants")) return vkCmdPushConstants;
- if (!strcmp(funcName, "vkCmdBeginRenderPass")) return vkCmdBeginRenderPass;
- if (!strcmp(funcName, "vkCmdNextSubpass")) return vkCmdNextSubpass;
- if (!strcmp(funcName, "vkCmdEndRenderPass")) return vkCmdEndRenderPass;
- if (!strcmp(funcName, "vkCmdExecuteCommands")) return vkCmdExecuteCommands;
-
- // Core 1.1 functions
- if (!strcmp(funcName, "vkEnumeratePhysicalDeviceGroups")) return vkEnumeratePhysicalDeviceGroups;
- if (!strcmp(funcName, "vkGetPhysicalDeviceFeatures2")) return vkGetPhysicalDeviceFeatures2;
- if (!strcmp(funcName, "vkGetPhysicalDeviceProperties2")) return vkGetPhysicalDeviceProperties2;
- if (!strcmp(funcName, "vkGetPhysicalDeviceFormatProperties2")) return vkGetPhysicalDeviceFormatProperties2;
- if (!strcmp(funcName, "vkGetPhysicalDeviceImageFormatProperties2")) return vkGetPhysicalDeviceImageFormatProperties2;
- if (!strcmp(funcName, "vkGetPhysicalDeviceQueueFamilyProperties2")) return vkGetPhysicalDeviceQueueFamilyProperties2;
- if (!strcmp(funcName, "vkGetPhysicalDeviceMemoryProperties2")) return vkGetPhysicalDeviceMemoryProperties2;
- if (!strcmp(funcName, "vkGetPhysicalDeviceSparseImageFormatProperties2"))
- return vkGetPhysicalDeviceSparseImageFormatProperties2;
- if (!strcmp(funcName, "vkGetPhysicalDeviceExternalBufferProperties")) return vkGetPhysicalDeviceExternalBufferProperties;
- if (!strcmp(funcName, "vkGetPhysicalDeviceExternalSemaphoreProperties")) return vkGetPhysicalDeviceExternalSemaphoreProperties;
- if (!strcmp(funcName, "vkGetPhysicalDeviceExternalFenceProperties")) return vkGetPhysicalDeviceExternalFenceProperties;
- if (!strcmp(funcName, "vkBindBufferMemory2")) return vkBindBufferMemory2;
- if (!strcmp(funcName, "vkBindImageMemory2")) return vkBindImageMemory2;
- if (!strcmp(funcName, "vkGetDeviceGroupPeerMemoryFeatures")) return vkGetDeviceGroupPeerMemoryFeatures;
- if (!strcmp(funcName, "vkCmdSetDeviceMask")) return vkCmdSetDeviceMask;
- if (!strcmp(funcName, "vkCmdDispatchBase")) return vkCmdDispatchBase;
- if (!strcmp(funcName, "vkGetImageMemoryRequirements2")) return vkGetImageMemoryRequirements2;
- if (!strcmp(funcName, "vkTrimCommandPool")) return vkTrimCommandPool;
- if (!strcmp(funcName, "vkGetDeviceQueue2")) return vkGetDeviceQueue2;
- if (!strcmp(funcName, "vkCreateSamplerYcbcrConversion")) return vkCreateSamplerYcbcrConversion;
- if (!strcmp(funcName, "vkDestroySamplerYcbcrConversion")) return vkDestroySamplerYcbcrConversion;
- if (!strcmp(funcName, "vkGetDescriptorSetLayoutSupport")) return vkGetDescriptorSetLayoutSupport;
- if (!strcmp(funcName, "vkCreateDescriptorUpdateTemplate")) return vkCreateDescriptorUpdateTemplate;
- if (!strcmp(funcName, "vkDestroyDescriptorUpdateTemplate")) return vkDestroyDescriptorUpdateTemplate;
- if (!strcmp(funcName, "vkUpdateDescriptorSetWithTemplate")) return vkUpdateDescriptorSetWithTemplate;
- if (!strcmp(funcName, "vkGetImageSparseMemoryRequirements2")) return vkGetImageSparseMemoryRequirements2;
- if (!strcmp(funcName, "vkGetBufferMemoryRequirements2")) return vkGetBufferMemoryRequirements2;
-
- // Core 1.2 functions
- if (!strcmp(funcName, "vkCreateRenderPass2")) return vkCreateRenderPass2;
- if (!strcmp(funcName, "vkCmdBeginRenderPass2")) return vkCmdBeginRenderPass2;
- if (!strcmp(funcName, "vkCmdNextSubpass2")) return vkCmdNextSubpass2;
- if (!strcmp(funcName, "vkCmdEndRenderPass2")) return vkCmdEndRenderPass2;
- if (!strcmp(funcName, "vkCmdDrawIndirectCount")) return vkCmdDrawIndirectCount;
- if (!strcmp(funcName, "vkCmdDrawIndexedIndirectCount")) return vkCmdDrawIndexedIndirectCount;
- if (!strcmp(funcName, "vkGetSemaphoreCounterValue")) return vkGetSemaphoreCounterValue;
- if (!strcmp(funcName, "vkWaitSemaphores")) return vkWaitSemaphores;
- if (!strcmp(funcName, "vkSignalSemaphore")) return vkSignalSemaphore;
- if (!strcmp(funcName, "vkGetBufferDeviceAddress")) return vkGetBufferDeviceAddress;
- if (!strcmp(funcName, "vkGetBufferOpaqueCaptureAddress")) return vkGetBufferOpaqueCaptureAddress;
- if (!strcmp(funcName, "vkGetDeviceMemoryOpaqueCaptureAddress")) return vkGetDeviceMemoryOpaqueCaptureAddress;
- if (!strcmp(funcName, "vkResetQueryPool")) return vkResetQueryPool;
-
- // Instance extensions
- void *addr;
- if (debug_utils_InstanceGpa(inst, funcName, &addr)) return addr;
-
- if (wsi_swapchain_instance_gpa(inst, funcName, &addr)) return addr;
-
- if (extension_instance_gpa(inst, funcName, &addr)) return addr;
-
- // Unknown physical device extensions
- if (loader_phys_dev_ext_gpa(inst, funcName, true, &addr, NULL)) return addr;
-
- // Unknown device extensions
- addr = loader_dev_ext_gpa(inst, funcName);
- return addr;
-}
-
-static inline void *globalGetProcAddr(const char *name) {
- if (!name || name[0] != 'v' || name[1] != 'k') return NULL;
-
- name += 2;
- if (!strcmp(name, "CreateInstance")) return vkCreateInstance;
- if (!strcmp(name, "EnumerateInstanceExtensionProperties")) return vkEnumerateInstanceExtensionProperties;
- if (!strcmp(name, "EnumerateInstanceLayerProperties")) return vkEnumerateInstanceLayerProperties;
- if (!strcmp(name, "EnumerateInstanceVersion")) return vkEnumerateInstanceVersion;
- if (!strcmp(name, "GetInstanceProcAddr")) return vkGetInstanceProcAddr;
-
- return NULL;
-}
-
-static inline void *loader_non_passthrough_gdpa(const char *name) {
- if (!name || name[0] != 'v' || name[1] != 'k') return NULL;
-
- name += 2;
-
- if (!strcmp(name, "GetDeviceProcAddr")) return vkGetDeviceProcAddr;
- if (!strcmp(name, "DestroyDevice")) return vkDestroyDevice;
- if (!strcmp(name, "GetDeviceQueue")) return vkGetDeviceQueue;
- if (!strcmp(name, "GetDeviceQueue2")) return vkGetDeviceQueue2;
- if (!strcmp(name, "AllocateCommandBuffers")) return vkAllocateCommandBuffers;
-
- return NULL;
-}
diff --git a/thirdparty/vulkan/loader/loader.c b/thirdparty/vulkan/loader/loader.c
deleted file mode 100644
index 158097a8aa..0000000000
--- a/thirdparty/vulkan/loader/loader.c
+++ /dev/null
@@ -1,8751 +0,0 @@
-/*
- *
- * Copyright (c) 2014-2020 The Khronos Group Inc.
- * Copyright (c) 2014-2020 Valve Corporation
- * Copyright (c) 2014-2020 LunarG, Inc.
- * Copyright (C) 2015 Google Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
-
- *
- * Author: Jon Ashburn <jon@lunarg.com>
- * Author: Courtney Goeltzenleuchter <courtney@LunarG.com>
- * Author: Mark Young <marky@lunarg.com>
- * Author: Lenny Komow <lenny@lunarg.com>
- *
- */
-
-// This needs to be defined first, or else we'll get redefinitions on NTSTATUS values
-#ifdef _WIN32
-#define UMDF_USING_NTSTATUS
-#include <ntstatus.h>
-#endif
-
-#ifndef _GNU_SOURCE
-#define _GNU_SOURCE
-#endif
-#include <inttypes.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <stdarg.h>
-#include <stdbool.h>
-#include <string.h>
-#include <stddef.h>
-
-#if defined(__APPLE__)
-#include <CoreFoundation/CoreFoundation.h>
-#include <sys/param.h>
-#endif
-
-// Time related functions
-#include <time.h>
-
-#include <sys/types.h>
-#if defined(_WIN32)
-#include "dirent_on_windows.h"
-#else // _WIN32
-#include <dirent.h>
-#endif // _WIN32
-#include "vk_loader_platform.h"
-#include "loader.h"
-#include "gpa_helper.h"
-#include "debug_utils.h"
-#include "wsi.h"
-#include "vulkan/vk_icd.h"
-#include "cJSON.h"
-#include "murmurhash.h"
-
-#if defined(_WIN32)
-#include <cfgmgr32.h>
-#include <initguid.h>
-#include <devpkey.h>
-#include <winternl.h>
-#include <strsafe.h>
-#ifdef __MINGW32__
-#undef strcpy // fix error with redfined strcpy when building with MinGW-w64
-#endif
-#include <dxgi1_6.h>
-#include "adapters.h"
-
-typedef HRESULT (APIENTRY *PFN_CreateDXGIFactory1)(REFIID riid, void **ppFactory);
-static PFN_CreateDXGIFactory1 fpCreateDXGIFactory1;
-#endif
-
-// This is a CMake generated file with #defines for any functions/includes
-// that it found present. This is currently necessary to properly determine
-// if secure_getenv or __secure_getenv are present
-#if !defined(VULKAN_NON_CMAKE_BUILD)
-#include "loader_cmake_config.h"
-#endif // !defined(VULKAN_NON_CMAKE_BUILD)
-
-// Generated file containing all the extension data
-#include "vk_loader_extensions.c"
-
-// Environment Variable information
-#define VK_ICD_FILENAMES_ENV_VAR "VK_ICD_FILENAMES"
-#define VK_LAYER_PATH_ENV_VAR "VK_LAYER_PATH"
-
-// Override layer information
-#define VK_OVERRIDE_LAYER_NAME "VK_LAYER_LUNARG_override"
-
-struct loader_struct loader = {0};
-// TLS for instance for alloc/free callbacks
-THREAD_LOCAL_DECL struct loader_instance *tls_instance;
-
-static size_t loader_platform_combine_path(char *dest, size_t len, ...);
-
-struct loader_phys_dev_per_icd {
- uint32_t count;
- VkPhysicalDevice *phys_devs;
- struct loader_icd_term *this_icd_term;
-};
-
-enum loader_debug {
- LOADER_INFO_BIT = 0x01,
- LOADER_WARN_BIT = 0x02,
- LOADER_PERF_BIT = 0x04,
- LOADER_ERROR_BIT = 0x08,
- LOADER_DEBUG_BIT = 0x10,
-};
-
-uint32_t g_loader_debug = 0;
-uint32_t g_loader_log_msgs = 0;
-
-enum loader_data_files_type {
- LOADER_DATA_FILE_MANIFEST_ICD = 0,
- LOADER_DATA_FILE_MANIFEST_LAYER,
- LOADER_DATA_FILE_NUM_TYPES // Not a real field, used for possible loop terminator
-};
-
-// thread safety lock for accessing global data structures such as "loader"
-// all entrypoints on the instance chain need to be locked except GPA
-// additionally CreateDevice and DestroyDevice needs to be locked
-loader_platform_thread_mutex loader_lock;
-loader_platform_thread_mutex loader_json_lock;
-loader_platform_thread_mutex loader_preload_icd_lock;
-
-// A list of ICDs that gets initialized when the loader does its global initialization. This list should never be used by anything
-// other than EnumerateInstanceExtensionProperties(), vkDestroyInstance, and loader_release(). This list does not change
-// functionality, but the fact that the libraries already been loaded causes any call that needs to load ICD libraries to speed up
-// significantly. This can have a huge impact when making repeated calls to vkEnumerateInstanceExtensionProperties and
-// vkCreateInstance.
-static struct loader_icd_tramp_list scanned_icds;
-
-LOADER_PLATFORM_THREAD_ONCE_DECLARATION(once_init);
-
-void *loader_instance_heap_alloc(const struct loader_instance *instance, size_t size, VkSystemAllocationScope alloc_scope) {
- void *pMemory = NULL;
-#if (DEBUG_DISABLE_APP_ALLOCATORS == 1)
- {
-#else
- if (instance && instance->alloc_callbacks.pfnAllocation) {
- // These are internal structures, so it's best to align everything to
- // the largest unit size which is the size of a uint64_t.
- pMemory = instance->alloc_callbacks.pfnAllocation(instance->alloc_callbacks.pUserData, size, sizeof(uint64_t), alloc_scope);
- } else {
-#endif
- pMemory = malloc(size);
- }
-
- return pMemory;
-}
-
-void loader_instance_heap_free(const struct loader_instance *instance, void *pMemory) {
- if (pMemory != NULL) {
-#if (DEBUG_DISABLE_APP_ALLOCATORS == 1)
- {
-#else
- if (instance && instance->alloc_callbacks.pfnFree) {
- instance->alloc_callbacks.pfnFree(instance->alloc_callbacks.pUserData, pMemory);
- } else {
-#endif
- free(pMemory);
- }
- }
-}
-
-void *loader_instance_heap_realloc(const struct loader_instance *instance, void *pMemory, size_t orig_size, size_t size,
- VkSystemAllocationScope alloc_scope) {
- void *pNewMem = NULL;
- if (pMemory == NULL || orig_size == 0) {
- pNewMem = loader_instance_heap_alloc(instance, size, alloc_scope);
- } else if (size == 0) {
- loader_instance_heap_free(instance, pMemory);
-#if (DEBUG_DISABLE_APP_ALLOCATORS == 1)
-#else
- } else if (instance && instance->alloc_callbacks.pfnReallocation) {
- // These are internal structures, so it's best to align everything to
- // the largest unit size which is the size of a uint64_t.
- pNewMem = instance->alloc_callbacks.pfnReallocation(instance->alloc_callbacks.pUserData, pMemory, size, sizeof(uint64_t),
- alloc_scope);
-#endif
- } else {
- pNewMem = realloc(pMemory, size);
- }
- return pNewMem;
-}
-
-void *loader_instance_tls_heap_alloc(size_t size) {
- return loader_instance_heap_alloc(tls_instance, size, VK_SYSTEM_ALLOCATION_SCOPE_COMMAND);
-}
-
-void loader_instance_tls_heap_free(void *pMemory) { loader_instance_heap_free(tls_instance, pMemory); }
-
-void *loader_device_heap_alloc(const struct loader_device *device, size_t size, VkSystemAllocationScope alloc_scope) {
- void *pMemory = NULL;
-#if (DEBUG_DISABLE_APP_ALLOCATORS == 1)
- {
-#else
- if (device && device->alloc_callbacks.pfnAllocation) {
- // These are internal structures, so it's best to align everything to
- // the largest unit size which is the size of a uint64_t.
- pMemory = device->alloc_callbacks.pfnAllocation(device->alloc_callbacks.pUserData, size, sizeof(uint64_t), alloc_scope);
- } else {
-#endif
- pMemory = malloc(size);
- }
- return pMemory;
-}
-
-void loader_device_heap_free(const struct loader_device *device, void *pMemory) {
- if (pMemory != NULL) {
-#if (DEBUG_DISABLE_APP_ALLOCATORS == 1)
- {
-#else
- if (device && device->alloc_callbacks.pfnFree) {
- device->alloc_callbacks.pfnFree(device->alloc_callbacks.pUserData, pMemory);
- } else {
-#endif
- free(pMemory);
- }
- }
-}
-
-void *loader_device_heap_realloc(const struct loader_device *device, void *pMemory, size_t orig_size, size_t size,
- VkSystemAllocationScope alloc_scope) {
- void *pNewMem = NULL;
- if (pMemory == NULL || orig_size == 0) {
- pNewMem = loader_device_heap_alloc(device, size, alloc_scope);
- } else if (size == 0) {
- loader_device_heap_free(device, pMemory);
-#if (DEBUG_DISABLE_APP_ALLOCATORS == 1)
-#else
- } else if (device && device->alloc_callbacks.pfnReallocation) {
- // These are internal structures, so it's best to align everything to
- // the largest unit size which is the size of a uint64_t.
- pNewMem = device->alloc_callbacks.pfnReallocation(device->alloc_callbacks.pUserData, pMemory, size, sizeof(uint64_t),
- alloc_scope);
-#endif
- } else {
- pNewMem = realloc(pMemory, size);
- }
- return pNewMem;
-}
-
-// Environment variables
-#if defined(__linux__) || defined(__APPLE__) || defined(__Fuchsia__)
-
-static inline bool IsHighIntegrity() {
- return geteuid() != getuid() || getegid() != getgid();
-}
-
-static inline char *loader_getenv(const char *name, const struct loader_instance *inst) {
- // No allocation of memory necessary for Linux, but we should at least touch
- // the inst pointer to get rid of compiler warnings.
- (void)inst;
- return getenv(name);
-}
-
-static inline char *loader_secure_getenv(const char *name, const struct loader_instance *inst) {
- char *out;
-#if defined(__APPLE__)
- // Apple does not appear to have a secure getenv implementation.
- // The main difference between secure getenv and getenv is that secure getenv
- // returns NULL if the process is being run with elevated privileges by a normal user.
- // The idea is to prevent the reading of malicious environment variables by a process
- // that can do damage.
- // This algorithm is derived from glibc code that sets an internal
- // variable (__libc_enable_secure) if the process is running under setuid or setgid.
- return IsHighIntegrity() ? NULL : loader_getenv(name, inst);
-#elif defined(__Fuchsia__)
- return loader_getenv(name, inst);
-#else
-// Linux
-#if defined(HAVE_SECURE_GETENV) && !defined(USE_UNSAFE_FILE_SEARCH)
- (void)inst;
- out = secure_getenv(name);
-#elif defined(HAVE___SECURE_GETENV) && !defined(USE_UNSAFE_FILE_SEARCH)
- (void)inst;
- out = __secure_getenv(name);
-#else
- out = loader_getenv(name, inst);
-#if !defined(USE_UNSAFE_FILE_SEARCH)
- loader_log(inst, LOADER_INFO_BIT, 0, "Loader is using non-secure environment variable lookup for %s", name);
-#endif
-#endif
- return out;
-#endif
-}
-
-static inline void loader_free_getenv(char *val, const struct loader_instance *inst) {
- // No freeing of memory necessary for Linux, but we should at least touch
- // the val and inst pointers to get rid of compiler warnings.
- (void)val;
- (void)inst;
-}
-
-#elif defined(WIN32)
-
-static inline bool IsHighIntegrity() {
- HANDLE process_token;
- if (OpenProcessToken(GetCurrentProcess(), TOKEN_QUERY | TOKEN_QUERY_SOURCE, &process_token)) {
- // Maximum possible size of SID_AND_ATTRIBUTES is maximum size of a SID + size of attributes DWORD.
- uint8_t mandatory_label_buffer[SECURITY_MAX_SID_SIZE + sizeof(DWORD)];
- DWORD buffer_size;
- if (GetTokenInformation(process_token, TokenIntegrityLevel, mandatory_label_buffer, sizeof(mandatory_label_buffer),
- &buffer_size) != 0) {
- const TOKEN_MANDATORY_LABEL *mandatory_label = (const TOKEN_MANDATORY_LABEL *)mandatory_label_buffer;
- const DWORD sub_authority_count = *GetSidSubAuthorityCount(mandatory_label->Label.Sid);
- const DWORD integrity_level = *GetSidSubAuthority(mandatory_label->Label.Sid, sub_authority_count - 1);
-
- CloseHandle(process_token);
- return integrity_level > SECURITY_MANDATORY_MEDIUM_RID;
- }
-
- CloseHandle(process_token);
- }
-
- return false;
-}
-
-static inline char *loader_getenv(const char *name, const struct loader_instance *inst) {
- char *retVal;
- DWORD valSize;
-
- valSize = GetEnvironmentVariableA(name, NULL, 0);
-
- // valSize DOES include the null terminator, so for any set variable
- // will always be at least 1. If it's 0, the variable wasn't set.
- if (valSize == 0) return NULL;
-
- // Allocate the space necessary for the registry entry
- if (NULL != inst && NULL != inst->alloc_callbacks.pfnAllocation) {
- retVal = (char *)inst->alloc_callbacks.pfnAllocation(inst->alloc_callbacks.pUserData, valSize, sizeof(char *),
- VK_SYSTEM_ALLOCATION_SCOPE_COMMAND);
- } else {
- retVal = (char *)malloc(valSize);
- }
-
- if (NULL != retVal) {
- GetEnvironmentVariableA(name, retVal, valSize);
- }
-
- return retVal;
-}
-
-static inline char *loader_secure_getenv(const char *name, const struct loader_instance *inst) {
-#if !defined(USE_UNSAFE_FILE_SEARCH)
- if (IsHighIntegrity()) {
- loader_log(inst, LOADER_INFO_BIT, 0, "Loader is running with elevated permissions. Environment variable %s will be ignored",
- name);
- return NULL;
- }
-#endif
-
- return loader_getenv(name, inst);
-}
-
-static inline void loader_free_getenv(char *val, const struct loader_instance *inst) {
- if (NULL != inst && NULL != inst->alloc_callbacks.pfnFree) {
- inst->alloc_callbacks.pfnFree(inst->alloc_callbacks.pUserData, val);
- } else {
- free((void *)val);
- }
-}
-
-#else
-
-static inline char *loader_getenv(const char *name, const struct loader_instance *inst) {
- // stub func
- (void)inst;
- (void)name;
- return NULL;
-}
-static inline void loader_free_getenv(char *val, const struct loader_instance *inst) {
- // stub func
- (void)val;
- (void)inst;
-}
-
-#endif
-
-void loader_log(const struct loader_instance *inst, VkFlags msg_type, int32_t msg_code, const char *format, ...) {
- char msg[512];
- char cmd_line_msg[512];
- size_t cmd_line_size = sizeof(cmd_line_msg);
- va_list ap;
- int ret;
-
- va_start(ap, format);
- ret = vsnprintf(msg, sizeof(msg), format, ap);
- if ((ret >= (int)sizeof(msg)) || ret < 0) {
- msg[sizeof(msg) - 1] = '\0';
- }
- va_end(ap);
-
- if (inst) {
- VkDebugUtilsMessageSeverityFlagBitsEXT severity = 0;
- VkDebugUtilsMessageTypeFlagsEXT type;
- VkDebugUtilsMessengerCallbackDataEXT callback_data;
- VkDebugUtilsObjectNameInfoEXT object_name;
-
- if ((msg_type & LOADER_INFO_BIT) != 0) {
- severity = VK_DEBUG_UTILS_MESSAGE_SEVERITY_INFO_BIT_EXT;
- } else if ((msg_type & LOADER_WARN_BIT) != 0) {
- severity = VK_DEBUG_UTILS_MESSAGE_SEVERITY_WARNING_BIT_EXT;
- } else if ((msg_type & LOADER_ERROR_BIT) != 0) {
- severity = VK_DEBUG_UTILS_MESSAGE_SEVERITY_ERROR_BIT_EXT;
- } else if ((msg_type & LOADER_DEBUG_BIT) != 0) {
- severity = VK_DEBUG_UTILS_MESSAGE_SEVERITY_VERBOSE_BIT_EXT;
- }
-
- if ((msg_type & LOADER_PERF_BIT) != 0) {
- type = VK_DEBUG_UTILS_MESSAGE_TYPE_PERFORMANCE_BIT_EXT;
- } else {
- type = VK_DEBUG_UTILS_MESSAGE_TYPE_GENERAL_BIT_EXT;
- }
-
- callback_data.sType = VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT;
- callback_data.pNext = NULL;
- callback_data.flags = 0;
- callback_data.pMessageIdName = "Loader Message";
- callback_data.messageIdNumber = 0;
- callback_data.pMessage = msg;
- callback_data.queueLabelCount = 0;
- callback_data.pQueueLabels = NULL;
- callback_data.cmdBufLabelCount = 0;
- callback_data.pCmdBufLabels = NULL;
- callback_data.objectCount = 1;
- callback_data.pObjects = &object_name;
- object_name.sType = VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT;
- object_name.pNext = NULL;
- object_name.objectType = VK_OBJECT_TYPE_INSTANCE;
- object_name.objectHandle = (uint64_t)(uintptr_t)inst;
- object_name.pObjectName = NULL;
-
- util_SubmitDebugUtilsMessageEXT(inst, severity, type, &callback_data);
- }
-
- if (!(msg_type & g_loader_log_msgs)) {
- return;
- }
-
- cmd_line_msg[0] = '\0';
- cmd_line_size -= 1;
- size_t original_size = cmd_line_size;
-
- if ((msg_type & LOADER_INFO_BIT) != 0) {
- strncat(cmd_line_msg, "INFO", cmd_line_size);
- cmd_line_size -= 4;
- }
- if ((msg_type & LOADER_WARN_BIT) != 0) {
- if (cmd_line_size != original_size) {
- strncat(cmd_line_msg, " | ", cmd_line_size);
- cmd_line_size -= 3;
- }
- strncat(cmd_line_msg, "WARNING", cmd_line_size);
- cmd_line_size -= 7;
- }
- if ((msg_type & LOADER_PERF_BIT) != 0) {
- if (cmd_line_size != original_size) {
- strncat(cmd_line_msg, " | ", cmd_line_size);
- cmd_line_size -= 3;
- }
- strncat(cmd_line_msg, "PERF", cmd_line_size);
- cmd_line_size -= 4;
- }
- if ((msg_type & LOADER_ERROR_BIT) != 0) {
- if (cmd_line_size != original_size) {
- strncat(cmd_line_msg, " | ", cmd_line_size);
- cmd_line_size -= 3;
- }
- strncat(cmd_line_msg, "ERROR", cmd_line_size);
- cmd_line_size -= 5;
- }
- if ((msg_type & LOADER_DEBUG_BIT) != 0) {
- if (cmd_line_size != original_size) {
- strncat(cmd_line_msg, " | ", cmd_line_size);
- cmd_line_size -= 3;
- }
- strncat(cmd_line_msg, "DEBUG", cmd_line_size);
- cmd_line_size -= 5;
- }
- if (cmd_line_size != original_size) {
- strncat(cmd_line_msg, ": ", cmd_line_size);
- cmd_line_size -= 2;
- }
-
- if (0 < cmd_line_size) {
- // If the message is too long, trim it down
- if (strlen(msg) > cmd_line_size) {
- msg[cmd_line_size - 1] = '\0';
- }
- strncat(cmd_line_msg, msg, cmd_line_size);
- } else {
- // Shouldn't get here, but check to make sure if we've already overrun
- // the string boundary
- assert(false);
- }
-
-#if defined(WIN32)
- OutputDebugString(cmd_line_msg);
- OutputDebugString("\n");
-#endif
-
- fputs(cmd_line_msg, stderr);
- fputc('\n', stderr);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL vkSetInstanceDispatch(VkInstance instance, void *object) {
- struct loader_instance *inst = loader_get_instance(instance);
- if (!inst) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "vkSetInstanceDispatch: Can not retrieve Instance "
- "dispatch table.");
- return VK_ERROR_INITIALIZATION_FAILED;
- }
- loader_set_dispatch(object, inst->disp);
- return VK_SUCCESS;
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL vkSetDeviceDispatch(VkDevice device, void *object) {
- struct loader_device *dev;
- struct loader_icd_term *icd_term = loader_get_icd_and_device(device, &dev, NULL);
-
- if (NULL == icd_term) {
- return VK_ERROR_INITIALIZATION_FAILED;
- }
- loader_set_dispatch(object, &dev->loader_dispatch);
- return VK_SUCCESS;
-}
-
-#if defined(_WIN32)
-
-// Append the JSON path data to the list and allocate/grow the list if it's not large enough.
-// Function returns true if filename was appended to reg_data list.
-// Caller should free reg_data.
-static bool loaderAddJsonEntry(const struct loader_instance *inst,
- char **reg_data, // list of JSON files
- PDWORD total_size, // size of reg_data
- LPCSTR key_name, // key name - used for debug prints - i.e. VulkanDriverName
- DWORD key_type, // key data type
- LPSTR json_path, // JSON string to add to the list reg_data
- DWORD json_size, // size in bytes of json_path
- VkResult *result) {
- // Check for and ignore duplicates.
- if (*reg_data && strstr(*reg_data, json_path)) {
- // Success. The json_path is already in the list.
- return true;
- }
-
- if (NULL == *reg_data) {
- *reg_data = loader_instance_heap_alloc(inst, *total_size, VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE);
- if (NULL == *reg_data) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "loaderAddJsonEntry: Failed to allocate space for registry data for key %s", json_path);
- *result = VK_ERROR_OUT_OF_HOST_MEMORY;
- return false;
- }
- *reg_data[0] = '\0';
- } else if (strlen(*reg_data) + json_size + 1 > *total_size) {
- void *new_ptr =
- loader_instance_heap_realloc(inst, *reg_data, *total_size, *total_size * 2, VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE);
- if (NULL == new_ptr) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "loaderAddJsonEntry: Failed to reallocate space for registry value of size %d for key %s", *total_size * 2,
- json_path);
- *result = VK_ERROR_OUT_OF_HOST_MEMORY;
- return false;
- }
- *reg_data = new_ptr;
- *total_size *= 2;
- }
-
- for (char *curr_filename = json_path; curr_filename[0] != '\0'; curr_filename += strlen(curr_filename) + 1) {
- if (strlen(*reg_data) == 0) {
- (void)snprintf(*reg_data, json_size + 1, "%s", curr_filename);
- } else {
- (void)snprintf(*reg_data + strlen(*reg_data), json_size + 2, "%c%s", PATH_SEPARATOR, curr_filename);
- }
- loader_log(inst, VK_DEBUG_REPORT_INFORMATION_BIT_EXT, 0, "%s: Located json file \"%s\" from PnP registry: %s", __FUNCTION__,
- curr_filename, key_name);
-
- if (key_type == REG_SZ) {
- break;
- }
- }
- return true;
-}
-
-// Find the list of registry files (names VulkanDriverName/VulkanDriverNameWow) in hkr.
-//
-// This function looks for filename in given device handle, filename is then added to return list
-// function return true if filename was appended to reg_data list
-// If error occurs result is updated with failure reason
-bool loaderGetDeviceRegistryEntry(const struct loader_instance *inst, char **reg_data, PDWORD total_size, DEVINST dev_id,
- LPCSTR value_name, VkResult *result) {
- HKEY hkrKey = INVALID_HANDLE_VALUE;
- DWORD requiredSize, data_type;
- char *manifest_path = NULL;
- bool found = false;
-
- if (NULL == total_size || NULL == reg_data) {
- *result = VK_ERROR_INITIALIZATION_FAILED;
- return false;
- }
-
- CONFIGRET status = CM_Open_DevNode_Key(dev_id, KEY_QUERY_VALUE, 0, RegDisposition_OpenExisting, &hkrKey, CM_REGISTRY_SOFTWARE);
- if (status != CR_SUCCESS) {
- loader_log(inst, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "loaderGetDeviceRegistryEntry: Failed to open registry key for DeviceID(%d)", dev_id);
- *result = VK_ERROR_INITIALIZATION_FAILED;
- return false;
- }
-
- // query value
- LSTATUS ret = RegQueryValueEx(
- hkrKey,
- value_name,
- NULL,
- NULL,
- NULL,
- &requiredSize);
-
- if (ret != ERROR_SUCCESS) {
- if (ret == ERROR_FILE_NOT_FOUND) {
- loader_log(inst, VK_DEBUG_REPORT_INFORMATION_BIT_EXT, 0,
- "loaderGetDeviceRegistryEntry: Device ID(%d) Does not contain a value for \"%s\"", dev_id, value_name);
- } else {
- loader_log(inst, VK_DEBUG_REPORT_INFORMATION_BIT_EXT, 0,
- "loaderGetDeviceRegistryEntry: DeviceID(%d) Failed to obtain %s size", dev_id, value_name);
- }
- goto out;
- }
-
- manifest_path = loader_instance_heap_alloc(inst, requiredSize, VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE);
- if (manifest_path == NULL) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "loaderGetDeviceRegistryEntry: Failed to allocate space for DriverName.");
- *result = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
-
- ret = RegQueryValueEx(
- hkrKey,
- value_name,
- NULL,
- &data_type,
- (BYTE *)manifest_path,
- &requiredSize
- );
-
- if (ret != ERROR_SUCCESS) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "loaderGetDeviceRegistryEntry: DeviceID(%d) Failed to obtain %s", value_name);
-
- *result = VK_ERROR_INITIALIZATION_FAILED;
- goto out;
- }
-
- if (data_type != REG_SZ && data_type != REG_MULTI_SZ) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "loaderGetDeviceRegistryEntry: Invalid %s data type. Expected REG_SZ or REG_MULTI_SZ.", value_name);
- *result = VK_ERROR_INITIALIZATION_FAILED;
- goto out;
- }
-
- found = loaderAddJsonEntry(inst, reg_data, total_size, value_name, data_type, manifest_path, requiredSize, result);
-
-out:
- if (manifest_path != NULL) {
- loader_instance_heap_free(inst, manifest_path);
- }
- RegCloseKey(hkrKey);
- return found;
-}
-
-// Find the list of registry files (names VulkanDriverName/VulkanDriverNameWow) in hkr .
-//
-// This function looks for display devices and childish software components
-// for a list of files which are added to a returned list (function return
-// value).
-// Function return is a string with a ';' separated list of filenames.
-// Function return is NULL if no valid name/value pairs are found in the key,
-// or the key is not found.
-//
-// *reg_data contains a string list of filenames as pointer.
-// When done using the returned string list, the caller should free the pointer.
-VkResult loaderGetDeviceRegistryFiles(const struct loader_instance *inst, char **reg_data, PDWORD reg_data_size,
- LPCSTR value_name) {
- static const wchar_t *softwareComponentGUID = L"{5c4c3332-344d-483c-8739-259e934c9cc8}";
- static const wchar_t *displayGUID = L"{4d36e968-e325-11ce-bfc1-08002be10318}";
-#ifdef CM_GETIDLIST_FILTER_PRESENT
- const ULONG flags = CM_GETIDLIST_FILTER_CLASS | CM_GETIDLIST_FILTER_PRESENT;
-#else
- const ULONG flags = 0x300;
-#endif
-
- wchar_t childGuid[MAX_GUID_STRING_LEN + 2]; // +2 for brackets {}
- ULONG childGuidSize = sizeof(childGuid);
-
- DEVINST devID = 0, childID = 0;
- wchar_t *pDeviceNames = NULL;
- ULONG deviceNamesSize = 0;
- VkResult result = VK_SUCCESS;
- bool found = false;
-
- if (NULL == reg_data) {
- result = VK_ERROR_INITIALIZATION_FAILED;
- return result;
- }
-
- // if after obtaining the DeviceNameSize, new device is added start over
- do {
- CM_Get_Device_ID_List_SizeW(&deviceNamesSize, displayGUID, flags);
-
- if (pDeviceNames != NULL) {
- loader_instance_heap_free(inst, pDeviceNames);
- }
-
- pDeviceNames = loader_instance_heap_alloc(inst, deviceNamesSize * sizeof(wchar_t), VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE);
- if (pDeviceNames == NULL) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "loaderGetDeviceRegistryFiles: Failed to allocate space for display device names.");
- result = VK_ERROR_OUT_OF_HOST_MEMORY;
- return result;
- }
- } while (CM_Get_Device_ID_ListW(displayGUID, pDeviceNames, deviceNamesSize, flags) == CR_BUFFER_SMALL);
-
- if (pDeviceNames) {
- for (wchar_t *deviceName = pDeviceNames; *deviceName; deviceName += wcslen(deviceName) + 1) {
- CONFIGRET status = CM_Locate_DevNodeW(&devID, deviceName, CM_LOCATE_DEVNODE_NORMAL);
- if (CR_SUCCESS != status) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0, "loaderGetDeviceRegistryFiles: failed to open DevNode %ls",
- deviceName);
- continue;
- }
- ULONG ulStatus, ulProblem;
- status = CM_Get_DevNode_Status(&ulStatus, &ulProblem, devID, 0);
-
- if (CR_SUCCESS != status)
- {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0, "loaderGetDeviceRegistryFiles: failed to probe device status %ls",
- deviceName);
- continue;
- }
- if ((ulStatus & DN_HAS_PROBLEM) && (ulProblem == CM_PROB_NEED_RESTART || ulProblem == DN_NEED_RESTART)) {
- loader_log(inst, VK_DEBUG_REPORT_INFORMATION_BIT_EXT, 0,
- "loaderGetDeviceRegistryFiles: device %ls is pending reboot, skipping ...", deviceName);
- continue;
- }
-
- loader_log(inst, VK_DEBUG_REPORT_INFORMATION_BIT_EXT, 0, "loaderGetDeviceRegistryFiles: opening device %ls", deviceName);
-
- if (loaderGetDeviceRegistryEntry(inst, reg_data, reg_data_size, devID, value_name, &result)) {
- found = true;
- continue;
- }
- else if (result == VK_ERROR_OUT_OF_HOST_MEMORY) {
- break;
- }
-
- status = CM_Get_Child(&childID, devID, 0);
- if (status != CR_SUCCESS) {
- loader_log(inst, VK_DEBUG_REPORT_INFORMATION_BIT_EXT, 0,
- "loaderGetDeviceRegistryFiles: unable to open child-device error:%d", status);
- continue;
- }
-
- do {
- wchar_t buffer[MAX_DEVICE_ID_LEN];
- CM_Get_Device_IDW(childID, buffer, MAX_DEVICE_ID_LEN, 0);
-
- loader_log(inst, VK_DEBUG_REPORT_INFORMATION_BIT_EXT, 0,
- "loaderGetDeviceRegistryFiles: Opening child device %d - %ls", childID, buffer);
-
- status = CM_Get_DevNode_Registry_PropertyW(childID, CM_DRP_CLASSGUID, NULL, &childGuid, &childGuidSize, 0);
- if (status != CR_SUCCESS) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "loaderGetDeviceRegistryFiles: unable to obtain GUID for:%d error:%d", childID, status);
-
- result = VK_ERROR_INITIALIZATION_FAILED;
- continue;
- }
-
- if (wcscmp(childGuid, softwareComponentGUID) != 0) {
- loader_log(inst, VK_DEBUG_REPORT_DEBUG_BIT_EXT, 0,
- "loaderGetDeviceRegistryFiles: GUID for %d is not SoftwareComponent skipping", childID);
- continue;
- }
-
- if (loaderGetDeviceRegistryEntry(inst, reg_data, reg_data_size, childID, value_name, &result)) {
- found = true;
- break; // check next-display-device
- }
-
- } while (CM_Get_Sibling(&childID, childID, 0) == CR_SUCCESS);
- }
-
- loader_instance_heap_free(inst, pDeviceNames);
- }
-
- if (!found && result != VK_ERROR_OUT_OF_HOST_MEMORY) {
- result = VK_ERROR_INITIALIZATION_FAILED;
- }
-
- return result;
-}
-
-static char *loader_get_next_path(char *path);
-
-// Find the list of registry files (names within a key) in key "location".
-//
-// This function looks in the registry (hive = DEFAULT_VK_REGISTRY_HIVE) key as
-// given in "location"
-// for a list or name/values which are added to a returned list (function return
-// value).
-// The DWORD values within the key must be 0 or they are skipped.
-// Function return is a string with a ';' separated list of filenames.
-// Function return is NULL if no valid name/value pairs are found in the key,
-// or the key is not found.
-//
-// *reg_data contains a string list of filenames as pointer.
-// When done using the returned string list, the caller should free the pointer.
-VkResult loaderGetRegistryFiles(const struct loader_instance *inst, char *location, bool use_secondary_hive, char **reg_data,
- PDWORD reg_data_size) {
- // This list contains all of the allowed ICDs. This allows us to verify that a device is actually present from the vendor
- // specified. This does disallow other vendors, but any new driver should use the device-specific registries anyway.
- static const struct {
- const char *filename;
- int vendor_id;
- } known_drivers[] = {
-#if defined(_WIN64)
- {
- .filename = "igvk64.json",
- .vendor_id = 0x8086,
- },
- {
- .filename = "nv-vk64.json",
- .vendor_id = 0x10de,
- },
- {
- .filename = "amd-vulkan64.json",
- .vendor_id = 0x1002,
- },
- {
- .filename = "amdvlk64.json",
- .vendor_id = 0x1002,
- },
-#else
- {
- .filename = "igvk32.json",
- .vendor_id = 0x8086,
- },
- {
- .filename = "nv-vk32.json",
- .vendor_id = 0x10de,
- },
- {
- .filename = "amd-vulkan32.json",
- .vendor_id = 0x1002,
- },
- {
- .filename = "amdvlk32.json",
- .vendor_id = 0x1002,
- },
-#endif
- };
-
- LONG rtn_value;
- HKEY hive = DEFAULT_VK_REGISTRY_HIVE, key;
- DWORD access_flags;
- char name[2048];
- char *loc = location;
- char *next;
- DWORD name_size = sizeof(name);
- DWORD value;
- DWORD value_size = sizeof(value);
- VkResult result = VK_SUCCESS;
- bool found = false;
- IDXGIFactory1 *dxgi_factory = NULL;
- bool is_driver = !strcmp(location, VK_DRIVERS_INFO_REGISTRY_LOC);
-
- if (NULL == reg_data) {
- result = VK_ERROR_INITIALIZATION_FAILED;
- goto out;
- }
-
- if (is_driver) {
- HRESULT hres = fpCreateDXGIFactory1(&IID_IDXGIFactory1, (void **)&dxgi_factory);
- if (hres != S_OK) {
- loader_log(
- inst, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "loaderGetRegistryFiles: Failed to create dxgi factory for ICD registry verification. No ICDs will be added from "
- "legacy registry locations");
- goto out;
- }
- }
-
- while (*loc) {
- next = loader_get_next_path(loc);
- access_flags = KEY_QUERY_VALUE;
- rtn_value = RegOpenKeyEx(hive, loc, 0, access_flags, &key);
- if (ERROR_SUCCESS == rtn_value) {
- for (DWORD idx = 0;
- (rtn_value = RegEnumValue(key, idx++, name, &name_size, NULL, NULL, (LPBYTE)&value, &value_size)) == ERROR_SUCCESS;
- name_size = sizeof(name), value_size = sizeof(value)) {
- if (value_size == sizeof(value) && value == 0) {
- if (NULL == *reg_data) {
- *reg_data = loader_instance_heap_alloc(inst, *reg_data_size, VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE);
- if (NULL == *reg_data) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "loaderGetRegistryFiles: Failed to allocate space for registry data for key %s", name);
- RegCloseKey(key);
- result = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
- *reg_data[0] = '\0';
- } else if (strlen(*reg_data) + name_size + 1 > *reg_data_size) {
- void *new_ptr = loader_instance_heap_realloc(inst, *reg_data, *reg_data_size, *reg_data_size * 2,
- VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE);
- if (NULL == new_ptr) {
- loader_log(
- inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "loaderGetRegistryFiles: Failed to reallocate space for registry value of size %d for key %s",
- *reg_data_size * 2, name);
- RegCloseKey(key);
- result = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
- *reg_data = new_ptr;
- *reg_data_size *= 2;
- }
-
- // We've now found a json file. If this is an ICD, we still need to check if there is actually a device
- // that matches this ICD
- loader_log(
- inst, VK_DEBUG_REPORT_INFORMATION_BIT_EXT, 0, "Located json file \"%s\" from registry \"%s\\%s\"", name,
- hive == DEFAULT_VK_REGISTRY_HIVE ? DEFAULT_VK_REGISTRY_HIVE_STR : SECONDARY_VK_REGISTRY_HIVE_STR, location);
- if (is_driver) {
- int i;
- for (i = 0; i < sizeof(known_drivers) / sizeof(known_drivers[0]); ++i) {
- if (!strcmp(name + strlen(name) - strlen(known_drivers[i].filename), known_drivers[i].filename)) {
- break;
- }
- }
- if (i == sizeof(known_drivers) / sizeof(known_drivers[0])) {
- loader_log(inst, VK_DEBUG_REPORT_INFORMATION_BIT_EXT, 0,
- "Driver %s is not recognized as a known driver. It will be assumed to be active", name);
- } else {
- bool found_gpu = false;
- for (int j = 0;; ++j) {
- IDXGIAdapter1 *adapter;
- HRESULT hres = dxgi_factory->lpVtbl->EnumAdapters1(dxgi_factory, j, &adapter);
- if (hres == DXGI_ERROR_NOT_FOUND) {
- break;
- } else if (hres != S_OK) {
- loader_log(inst, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "Failed to enumerate DXGI adapters at index %d. As a result, drivers may be skipped", j);
- continue;
- }
-
- DXGI_ADAPTER_DESC1 description;
- hres = adapter->lpVtbl->GetDesc1(adapter, &description);
- if (hres != S_OK) {
- loader_log(
- inst, VK_DEBUG_REPORT_INFORMATION_BIT_EXT, 0,
- "Failed to get DXGI adapter information at index %d. As a result, drivers may be skipped", j);
- continue;
- }
-
- if (description.VendorId == known_drivers[i].vendor_id) {
- found_gpu = true;
- break;
- }
- }
-
- if (!found_gpu) {
- loader_log(inst, VK_DEBUG_REPORT_INFORMATION_BIT_EXT, 0,
- "Dropping driver %s as no corresponding DXGI adapter was found", name);
- continue;
- }
- }
- }
-
- if (strlen(*reg_data) == 0) {
- // The list is emtpy. Add the first entry.
- (void)snprintf(*reg_data, name_size + 1, "%s", name);
- found = true;
- } else {
- // At this point the reg_data variable contains other JSON paths, likely from the PNP/device section
- // of the registry that we want to have precedence over this non-device specific section of the registry.
- // To make sure we avoid enumerating old JSON files/drivers that might be present in the non-device specific
- // area of the registry when a newer device specific JSON file is present, do a check before adding.
- // Find the file name, without path, of the JSON file found in the non-device specific registry location.
- // If the same JSON file name is already found in the list, don't add it again.
- bool foundDuplicate = false;
- char *pLastSlashName = strrchr(name, '\\');
- if (pLastSlashName != NULL) {
- char *foundMatch = strstr(*reg_data, pLastSlashName + 1);
- if (foundMatch != NULL) {
- foundDuplicate = true;
- }
- }
-
- if (foundDuplicate == false) {
- // Add the new entry to the list.
- (void)snprintf(*reg_data + strlen(*reg_data), name_size + 2, "%c%s", PATH_SEPARATOR, name);
- found = true;
- } else {
- loader_log(
- inst, VK_DEBUG_REPORT_INFORMATION_BIT_EXT, 0,
- "Skipping adding of json file \"%s\" from registry \"%s\\%s\" to the list due to duplication", name,
- hive == DEFAULT_VK_REGISTRY_HIVE ? DEFAULT_VK_REGISTRY_HIVE_STR : SECONDARY_VK_REGISTRY_HIVE_STR,
- location);
- }
- }
- }
- }
- RegCloseKey(key);
- }
-
- // Advance the location - if the next location is in the secondary hive, then reset the locations and advance the hive
- if (use_secondary_hive && (hive == DEFAULT_VK_REGISTRY_HIVE) && (*next == '\0')) {
- loc = location;
- hive = SECONDARY_VK_REGISTRY_HIVE;
- } else {
- loc = next;
- }
- }
-
- if (!found && result != VK_ERROR_OUT_OF_HOST_MEMORY) {
- result = VK_ERROR_INITIALIZATION_FAILED;
- }
-
-out:
- if (is_driver && dxgi_factory != NULL) {
- dxgi_factory->lpVtbl->Release(dxgi_factory);
- }
-
- return result;
-}
-
-#endif // WIN32
-
-// Combine path elements, separating each element with the platform-specific
-// directory separator, and save the combined string to a destination buffer,
-// not exceeding the given length. Path elements are given as variable args,
-// with a NULL element terminating the list.
-//
-// \returns the total length of the combined string, not including an ASCII
-// NUL termination character. This length may exceed the available storage:
-// in this case, the written string will be truncated to avoid a buffer
-// overrun, and the return value will greater than or equal to the storage
-// size. A NULL argument may be provided as the destination buffer in order
-// to determine the required string length without actually writing a string.
-static size_t loader_platform_combine_path(char *dest, size_t len, ...) {
- size_t required_len = 0;
- va_list ap;
- const char *component;
-
- va_start(ap, len);
-
- while ((component = va_arg(ap, const char *))) {
- if (required_len > 0) {
- // This path element is not the first non-empty element; prepend
- // a directory separator if space allows
- if (dest && required_len + 1 < len) {
- (void)snprintf(dest + required_len, len - required_len, "%c", DIRECTORY_SYMBOL);
- }
- required_len++;
- }
-
- if (dest && required_len < len) {
- strncpy(dest + required_len, component, len - required_len);
- }
- required_len += strlen(component);
- }
-
- va_end(ap);
-
- // strncpy(3) won't add a NUL terminating byte in the event of truncation.
- if (dest && required_len >= len) {
- dest[len - 1] = '\0';
- }
-
- return required_len;
-}
-
-// Given string of three part form "maj.min.pat" convert to a vulkan version number.
-static uint32_t loader_make_version(char *vers_str) {
- uint32_t major = 0, minor = 0, patch = 0;
- char *vers_tok;
-
- if (!vers_str) {
- return 0;
- }
-
- vers_tok = strtok(vers_str, ".\"\n\r");
- if (NULL != vers_tok) {
- major = (uint16_t)atoi(vers_tok);
- vers_tok = strtok(NULL, ".\"\n\r");
- if (NULL != vers_tok) {
- minor = (uint16_t)atoi(vers_tok);
- vers_tok = strtok(NULL, ".\"\n\r");
- if (NULL != vers_tok) {
- patch = (uint16_t)atoi(vers_tok);
- }
- }
- }
-
- return VK_MAKE_VERSION(major, minor, patch);
-}
-
-bool compare_vk_extension_properties(const VkExtensionProperties *op1, const VkExtensionProperties *op2) {
- return strcmp(op1->extensionName, op2->extensionName) == 0 ? true : false;
-}
-
-// Search the given ext_array for an extension matching the given vk_ext_prop
-bool has_vk_extension_property_array(const VkExtensionProperties *vk_ext_prop, const uint32_t count,
- const VkExtensionProperties *ext_array) {
- for (uint32_t i = 0; i < count; i++) {
- if (compare_vk_extension_properties(vk_ext_prop, &ext_array[i])) return true;
- }
- return false;
-}
-
-// Search the given ext_list for an extension matching the given vk_ext_prop
-bool has_vk_extension_property(const VkExtensionProperties *vk_ext_prop, const struct loader_extension_list *ext_list) {
- for (uint32_t i = 0; i < ext_list->count; i++) {
- if (compare_vk_extension_properties(&ext_list->list[i], vk_ext_prop)) return true;
- }
- return false;
-}
-
-// Search the given ext_list for a device extension matching the given ext_prop
-bool has_vk_dev_ext_property(const VkExtensionProperties *ext_prop, const struct loader_device_extension_list *ext_list) {
- for (uint32_t i = 0; i < ext_list->count; i++) {
- if (compare_vk_extension_properties(&ext_list->list[i].props, ext_prop)) return true;
- }
- return false;
-}
-
-// Get the next unused layer property in the list. Init the property to zero.
-static struct loader_layer_properties *loaderGetNextLayerPropertySlot(const struct loader_instance *inst,
- struct loader_layer_list *layer_list) {
- if (layer_list->capacity == 0) {
- layer_list->list =
- loader_instance_heap_alloc(inst, sizeof(struct loader_layer_properties) * 64, VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE);
- if (layer_list->list == NULL) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "loaderGetNextLayerPropertySlot: Out of memory can "
- "not add any layer properties to list");
- return NULL;
- }
- memset(layer_list->list, 0, sizeof(struct loader_layer_properties) * 64);
- layer_list->capacity = sizeof(struct loader_layer_properties) * 64;
- }
-
- // Ensure enough room to add an entry
- if ((layer_list->count + 1) * sizeof(struct loader_layer_properties) > layer_list->capacity) {
- void *new_ptr = loader_instance_heap_realloc(inst, layer_list->list, layer_list->capacity, layer_list->capacity * 2,
- VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE);
- if (NULL == new_ptr) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0, "loaderGetNextLayerPropertySlot: realloc failed for layer list");
- return NULL;
- }
- layer_list->list = new_ptr;
- memset((uint8_t *)layer_list->list + layer_list->capacity, 0, layer_list->capacity);
- layer_list->capacity *= 2;
- }
-
- layer_list->count++;
- return &(layer_list->list[layer_list->count - 1]);
-}
-
-// Search the given layer list for a layer property matching the given layer name
-static struct loader_layer_properties *loaderFindLayerProperty(const char *name, const struct loader_layer_list *layer_list) {
- for (uint32_t i = 0; i < layer_list->count; i++) {
- const VkLayerProperties *item = &layer_list->list[i].info;
- if (strcmp(name, item->layerName) == 0) return &layer_list->list[i];
- }
- return NULL;
-}
-
-// Search the given layer list for a layer matching the given layer name
-static bool loaderFindLayerNameInList(const char *name, const struct loader_layer_list *layer_list) {
- if (NULL == layer_list) {
- return false;
- }
- if (NULL != loaderFindLayerProperty(name, layer_list)) {
- return true;
- }
- return false;
-}
-
-// Search the given meta-layer's component list for a layer matching the given layer name
-static bool loaderFindLayerNameInMetaLayer(const struct loader_instance *inst, const char *layer_name,
- struct loader_layer_list *layer_list, struct loader_layer_properties *meta_layer_props) {
- for (uint32_t comp_layer = 0; comp_layer < meta_layer_props->num_component_layers; comp_layer++) {
- if (!strcmp(meta_layer_props->component_layer_names[comp_layer], layer_name)) {
- return true;
- }
- struct loader_layer_properties *comp_layer_props =
- loaderFindLayerProperty(meta_layer_props->component_layer_names[comp_layer], layer_list);
- if (comp_layer_props->type_flags & VK_LAYER_TYPE_FLAG_META_LAYER) {
- return loaderFindLayerNameInMetaLayer(inst, layer_name, layer_list, comp_layer_props);
- }
- }
- return false;
-}
-
-// Search the override layer's blacklist for a layer matching the given layer name
-static bool loaderFindLayerNameInBlacklist(const struct loader_instance *inst, const char *layer_name,
- struct loader_layer_list *layer_list, struct loader_layer_properties *meta_layer_props) {
- for (uint32_t black_layer = 0; black_layer < meta_layer_props->num_blacklist_layers; ++black_layer) {
- if (!strcmp(meta_layer_props->blacklist_layer_names[black_layer], layer_name)) {
- return true;
- }
- }
- return false;
-}
-
-// Remove all layer properties entries from the list
-void loaderDeleteLayerListAndProperties(const struct loader_instance *inst, struct loader_layer_list *layer_list) {
- uint32_t i, j, k;
- struct loader_device_extension_list *dev_ext_list;
- struct loader_dev_ext_props *ext_props;
- if (!layer_list) return;
-
- for (i = 0; i < layer_list->count; i++) {
- if (NULL != layer_list->list[i].blacklist_layer_names) {
- loader_instance_heap_free(inst, layer_list->list[i].blacklist_layer_names);
- layer_list->list[i].blacklist_layer_names = NULL;
- }
- if (NULL != layer_list->list[i].component_layer_names) {
- loader_instance_heap_free(inst, layer_list->list[i].component_layer_names);
- layer_list->list[i].component_layer_names = NULL;
- }
- if (NULL != layer_list->list[i].override_paths) {
- loader_instance_heap_free(inst, layer_list->list[i].override_paths);
- layer_list->list[i].override_paths = NULL;
- }
- if (NULL != layer_list->list[i].app_key_paths) {
- loader_instance_heap_free(inst, layer_list->list[i].app_key_paths);
- layer_list->list[i].app_key_paths = NULL;
- }
- loader_destroy_generic_list(inst, (struct loader_generic_list *)&layer_list->list[i].instance_extension_list);
- dev_ext_list = &layer_list->list[i].device_extension_list;
- if (dev_ext_list->capacity > 0 && NULL != dev_ext_list->list) {
- for (j = 0; j < dev_ext_list->count; j++) {
- ext_props = &dev_ext_list->list[j];
- if (ext_props->entrypoint_count > 0) {
- for (k = 0; k < ext_props->entrypoint_count; k++) {
- loader_instance_heap_free(inst, ext_props->entrypoints[k]);
- }
- loader_instance_heap_free(inst, ext_props->entrypoints);
- }
- }
- }
- loader_destroy_generic_list(inst, (struct loader_generic_list *)dev_ext_list);
- }
- layer_list->count = 0;
-
- if (layer_list->capacity > 0) {
- layer_list->capacity = 0;
- loader_instance_heap_free(inst, layer_list->list);
- }
-}
-
-void loaderRemoveLayerInList(const struct loader_instance *inst, struct loader_layer_list *layer_list, uint32_t layer_to_remove) {
- if (layer_list == NULL || layer_to_remove >= layer_list->count) {
- return;
- }
- if (layer_list->list[layer_to_remove].type_flags & VK_LAYER_TYPE_FLAG_META_LAYER) {
- // Delete the component layers
- loader_instance_heap_free(inst, layer_list->list[layer_to_remove].component_layer_names);
- loader_instance_heap_free(inst, layer_list->list[layer_to_remove].override_paths);
- loader_instance_heap_free(inst, layer_list->list[layer_to_remove].blacklist_layer_names);
- loader_instance_heap_free(inst, layer_list->list[layer_to_remove].app_key_paths);
- }
-
- // Remove the current invalid meta-layer from the layer list. Use memmove since we are
- // overlapping the source and destination addresses.
- memmove(&layer_list->list[layer_to_remove], &layer_list->list[layer_to_remove + 1],
- sizeof(struct loader_layer_properties) * (layer_list->count - 1 - layer_to_remove));
-
- // Make sure to clear out the removed layer, in case new layers are added in the previous location
- memset(&layer_list->list[layer_list->count - 1], 0, sizeof(struct loader_layer_properties));
-
- // Decrement the count (because we now have one less) and decrement the loop index since we need to
- // re-check this index.
- layer_list->count--;
-}
-
-// Remove all layers in the layer list that are blacklisted by the override layer.
-// NOTE: This should only be called if an override layer is found and not expired.
-void loaderRemoveLayersInBlacklist(const struct loader_instance *inst, struct loader_layer_list *layer_list) {
- struct loader_layer_properties *override_prop = loaderFindLayerProperty(VK_OVERRIDE_LAYER_NAME, layer_list);
- if (NULL == override_prop) {
- return;
- }
-
- for (int32_t j = 0; j < (int32_t)(layer_list->count); j++) {
- struct loader_layer_properties cur_layer_prop = layer_list->list[j];
- const char *cur_layer_name = &cur_layer_prop.info.layerName[0];
-
- // Skip the override layer itself.
- if (!strcmp(VK_OVERRIDE_LAYER_NAME, cur_layer_name)) {
- continue;
- }
-
- // If found in the override layer's blacklist, remove it
- if (loaderFindLayerNameInBlacklist(inst, cur_layer_name, layer_list, override_prop)) {
- loader_log(inst, VK_DEBUG_REPORT_DEBUG_BIT_EXT, 0,
- "loaderRemoveLayersInBlacklist: Override layer is active and layer %s is in the blacklist"
- " inside of it. Removing that layer from current layer list.",
- cur_layer_name);
-
- if (cur_layer_prop.type_flags & VK_LAYER_TYPE_FLAG_META_LAYER) {
- // Delete the component layers
- loader_instance_heap_free(inst, cur_layer_prop.component_layer_names);
- loader_instance_heap_free(inst, cur_layer_prop.override_paths);
- // Never need to free the blacklist, since it can only exist in the override layer
- }
-
- // Remove the current invalid meta-layer from the layer list. Use memmove since we are
- // overlapping the source and destination addresses.
- memmove(&layer_list->list[j], &layer_list->list[j + 1],
- sizeof(struct loader_layer_properties) * (layer_list->count - 1 - j));
-
- // Decrement the count (because we now have one less) and decrement the loop index since we need to
- // re-check this index.
- layer_list->count--;
- j--;
-
- // Re-do the query for the override layer
- override_prop = loaderFindLayerProperty(VK_OVERRIDE_LAYER_NAME, layer_list);
- }
- }
-}
-
-// Remove all layers in the layer list that are not found inside any implicit meta-layers.
-void loaderRemoveLayersNotInImplicitMetaLayers(const struct loader_instance *inst, struct loader_layer_list *layer_list) {
- int32_t i;
- int32_t j;
- int32_t layer_count = (int32_t)(layer_list->count);
-
- for (i = 0; i < layer_count; i++) {
- layer_list->list[i].keep = false;
- }
-
- for (i = 0; i < layer_count; i++) {
- struct loader_layer_properties cur_layer_prop = layer_list->list[i];
-
- if (0 == (cur_layer_prop.type_flags & VK_LAYER_TYPE_FLAG_EXPLICIT_LAYER)) {
- cur_layer_prop.keep = true;
- } else {
- continue;
- }
-
- if (cur_layer_prop.type_flags & VK_LAYER_TYPE_FLAG_META_LAYER) {
- for (j = 0; j < layer_count; j++) {
- struct loader_layer_properties layer_to_check = layer_list->list[j];
-
- if (i == j) {
- continue;
- }
-
- // For all layers found in this meta layer, we want to keep them as well.
- if (loaderFindLayerNameInMetaLayer(inst, layer_to_check.info.layerName, layer_list, &cur_layer_prop)) {
- cur_layer_prop.keep = true;
- }
- }
- }
- }
-
- // Remove any layers we don't want to keep (Don't use layer_count here as we need it to be
- // dynamically updated if we delete a layer property in the list).
- for (i = 0; i < (int32_t)(layer_list->count); i++) {
- struct loader_layer_properties cur_layer_prop = layer_list->list[i];
- if (!cur_layer_prop.keep) {
- loader_log(inst, VK_DEBUG_REPORT_DEBUG_BIT_EXT, 0,
- "loaderRemoveLayersNotInImplicitMetaLayers : Implicit meta-layers are active, and layer %s is not list"
- " inside of any. So removing layer from current layer list.",
- cur_layer_prop.info.layerName);
-
- if (cur_layer_prop.type_flags & VK_LAYER_TYPE_FLAG_META_LAYER) {
- // Delete the component layers
- loader_instance_heap_free(inst, cur_layer_prop.component_layer_names);
- loader_instance_heap_free(inst, cur_layer_prop.override_paths);
- }
-
- // Remove the current invalid meta-layer from the layer list. Use memmove since we are
- // overlapping the source and destination addresses.
- memmove(&layer_list->list[i], &layer_list->list[i + 1],
- sizeof(struct loader_layer_properties) * (layer_list->count - 1 - i));
-
- // Decrement the count (because we now have one less) and decrement the loop index since we need to
- // re-check this index.
- layer_list->count--;
- i--;
- }
- }
-}
-
-static VkResult loader_add_instance_extensions(const struct loader_instance *inst,
- const PFN_vkEnumerateInstanceExtensionProperties fp_get_props, const char *lib_name,
- struct loader_extension_list *ext_list) {
- uint32_t i, count = 0;
- VkExtensionProperties *ext_props;
- VkResult res = VK_SUCCESS;
-
- if (!fp_get_props) {
- // No EnumerateInstanceExtensionProperties defined
- goto out;
- }
-
- res = fp_get_props(NULL, &count, NULL);
- if (res != VK_SUCCESS) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "loader_add_instance_extensions: Error getting Instance "
- "extension count from %s",
- lib_name);
- goto out;
- }
-
- if (count == 0) {
- // No ExtensionProperties to report
- goto out;
- }
-
- ext_props = loader_stack_alloc(count * sizeof(VkExtensionProperties));
- if (NULL == ext_props) {
- res = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
-
- res = fp_get_props(NULL, &count, ext_props);
- if (res != VK_SUCCESS) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "loader_add_instance_extensions: Error getting Instance "
- "extensions from %s",
- lib_name);
- goto out;
- }
-
- for (i = 0; i < count; i++) {
- char spec_version[64];
-
- bool ext_unsupported = wsi_unsupported_instance_extension(&ext_props[i]);
- if (!ext_unsupported) {
- (void)snprintf(spec_version, sizeof(spec_version), "%d.%d.%d", VK_VERSION_MAJOR(ext_props[i].specVersion),
- VK_VERSION_MINOR(ext_props[i].specVersion), VK_VERSION_PATCH(ext_props[i].specVersion));
- loader_log(inst, VK_DEBUG_REPORT_DEBUG_BIT_EXT, 0, "Instance Extension: %s (%s) version %s", ext_props[i].extensionName,
- lib_name, spec_version);
-
- res = loader_add_to_ext_list(inst, ext_list, 1, &ext_props[i]);
- if (res != VK_SUCCESS) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "loader_add_instance_extensions: Failed to add %s "
- "to Instance extension list",
- lib_name);
- goto out;
- }
- }
- }
-
-out:
- return res;
-}
-
-// Initialize ext_list with the physical device extensions.
-// The extension properties are passed as inputs in count and ext_props.
-static VkResult loader_init_device_extensions(const struct loader_instance *inst, struct loader_physical_device_term *phys_dev_term,
- uint32_t count, VkExtensionProperties *ext_props,
- struct loader_extension_list *ext_list) {
- VkResult res;
- uint32_t i;
-
- res = loader_init_generic_list(inst, (struct loader_generic_list *)ext_list, sizeof(VkExtensionProperties));
- if (VK_SUCCESS != res) {
- return res;
- }
-
- for (i = 0; i < count; i++) {
- char spec_version[64];
- (void)snprintf(spec_version, sizeof(spec_version), "%d.%d.%d", VK_VERSION_MAJOR(ext_props[i].specVersion),
- VK_VERSION_MINOR(ext_props[i].specVersion), VK_VERSION_PATCH(ext_props[i].specVersion));
- loader_log(inst, VK_DEBUG_REPORT_DEBUG_BIT_EXT, 0, "Device Extension: %s (%s) version %s", ext_props[i].extensionName,
- phys_dev_term->this_icd_term->scanned_icd->lib_name, spec_version);
- res = loader_add_to_ext_list(inst, ext_list, 1, &ext_props[i]);
- if (res != VK_SUCCESS) return res;
- }
-
- return VK_SUCCESS;
-}
-
-VkResult loader_add_device_extensions(const struct loader_instance *inst,
- PFN_vkEnumerateDeviceExtensionProperties fpEnumerateDeviceExtensionProperties,
- VkPhysicalDevice physical_device, const char *lib_name,
- struct loader_extension_list *ext_list) {
- uint32_t i, count;
- VkResult res;
- VkExtensionProperties *ext_props;
-
- res = fpEnumerateDeviceExtensionProperties(physical_device, NULL, &count, NULL);
- if (res == VK_SUCCESS && count > 0) {
- ext_props = loader_stack_alloc(count * sizeof(VkExtensionProperties));
- if (!ext_props) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "loader_add_device_extensions: Failed to allocate space"
- " for device extension properties.");
- return VK_ERROR_OUT_OF_HOST_MEMORY;
- }
- res = fpEnumerateDeviceExtensionProperties(physical_device, NULL, &count, ext_props);
- if (res != VK_SUCCESS) {
- return res;
- }
- for (i = 0; i < count; i++) {
- char spec_version[64];
- (void)snprintf(spec_version, sizeof(spec_version), "%d.%d.%d", VK_VERSION_MAJOR(ext_props[i].specVersion),
- VK_VERSION_MINOR(ext_props[i].specVersion), VK_VERSION_PATCH(ext_props[i].specVersion));
- loader_log(inst, VK_DEBUG_REPORT_DEBUG_BIT_EXT, 0, "Device Extension: %s (%s) version %s", ext_props[i].extensionName,
- lib_name, spec_version);
- res = loader_add_to_ext_list(inst, ext_list, 1, &ext_props[i]);
- if (res != VK_SUCCESS) {
- return res;
- }
- }
- } else {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "loader_add_device_extensions: Error getting physical "
- "device extension info count from library %s",
- lib_name);
- return res;
- }
-
- return VK_SUCCESS;
-}
-
-VkResult loader_init_generic_list(const struct loader_instance *inst, struct loader_generic_list *list_info, size_t element_size) {
- size_t capacity = 32 * element_size;
- list_info->count = 0;
- list_info->capacity = 0;
- list_info->list = loader_instance_heap_alloc(inst, capacity, VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE);
- if (list_info->list == NULL) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "loader_init_generic_list: Failed to allocate space "
- "for generic list");
- return VK_ERROR_OUT_OF_HOST_MEMORY;
- }
- memset(list_info->list, 0, capacity);
- list_info->capacity = capacity;
- return VK_SUCCESS;
-}
-
-void loader_destroy_generic_list(const struct loader_instance *inst, struct loader_generic_list *list) {
- loader_instance_heap_free(inst, list->list);
- list->count = 0;
- list->capacity = 0;
-}
-
-// Append non-duplicate extension properties defined in props to the given ext_list.
-// Return - Vk_SUCCESS on success
-VkResult loader_add_to_ext_list(const struct loader_instance *inst, struct loader_extension_list *ext_list,
- uint32_t prop_list_count, const VkExtensionProperties *props) {
- uint32_t i;
- const VkExtensionProperties *cur_ext;
-
- if (ext_list->list == NULL || ext_list->capacity == 0) {
- VkResult res = loader_init_generic_list(inst, (struct loader_generic_list *)ext_list, sizeof(VkExtensionProperties));
- if (VK_SUCCESS != res) {
- return res;
- }
- }
-
- for (i = 0; i < prop_list_count; i++) {
- cur_ext = &props[i];
-
- // look for duplicates
- if (has_vk_extension_property(cur_ext, ext_list)) {
- continue;
- }
-
- // add to list at end
- // check for enough capacity
- if (ext_list->count * sizeof(VkExtensionProperties) >= ext_list->capacity) {
- void *new_ptr = loader_instance_heap_realloc(inst, ext_list->list, ext_list->capacity, ext_list->capacity * 2,
- VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE);
- if (new_ptr == NULL) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "loader_add_to_ext_list: Failed to reallocate "
- "space for extension list");
- return VK_ERROR_OUT_OF_HOST_MEMORY;
- }
- ext_list->list = new_ptr;
-
- // double capacity
- ext_list->capacity *= 2;
- }
-
- memcpy(&ext_list->list[ext_list->count], cur_ext, sizeof(VkExtensionProperties));
- ext_list->count++;
- }
- return VK_SUCCESS;
-}
-
-// Append one extension property defined in props with entrypoints defined in entries to the given
-// ext_list. Do not append if a duplicate.
-// Return - Vk_SUCCESS on success
-VkResult loader_add_to_dev_ext_list(const struct loader_instance *inst, struct loader_device_extension_list *ext_list,
- const VkExtensionProperties *props, uint32_t entry_count, char **entrys) {
- uint32_t idx;
- if (ext_list->list == NULL || ext_list->capacity == 0) {
- VkResult res = loader_init_generic_list(inst, (struct loader_generic_list *)ext_list, sizeof(struct loader_dev_ext_props));
- if (VK_SUCCESS != res) {
- return res;
- }
- }
-
- // look for duplicates
- if (has_vk_dev_ext_property(props, ext_list)) {
- return VK_SUCCESS;
- }
-
- idx = ext_list->count;
- // add to list at end
- // check for enough capacity
- if (idx * sizeof(struct loader_dev_ext_props) >= ext_list->capacity) {
- void *new_ptr = loader_instance_heap_realloc(inst, ext_list->list, ext_list->capacity, ext_list->capacity * 2,
- VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE);
-
- if (NULL == new_ptr) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "loader_add_to_dev_ext_list: Failed to reallocate space for device extension list");
- return VK_ERROR_OUT_OF_HOST_MEMORY;
- }
- ext_list->list = new_ptr;
-
- // double capacity
- ext_list->capacity *= 2;
- }
-
- memcpy(&ext_list->list[idx].props, props, sizeof(*props));
- ext_list->list[idx].entrypoint_count = entry_count;
- if (entry_count == 0) {
- ext_list->list[idx].entrypoints = NULL;
- } else {
- ext_list->list[idx].entrypoints =
- loader_instance_heap_alloc(inst, sizeof(char *) * entry_count, VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE);
- if (ext_list->list[idx].entrypoints == NULL) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "loader_add_to_dev_ext_list: Failed to allocate space "
- "for device extension entrypoint list in list %d",
- idx);
- ext_list->list[idx].entrypoint_count = 0;
- return VK_ERROR_OUT_OF_HOST_MEMORY;
- }
- for (uint32_t i = 0; i < entry_count; i++) {
- ext_list->list[idx].entrypoints[i] =
- loader_instance_heap_alloc(inst, strlen(entrys[i]) + 1, VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE);
- if (ext_list->list[idx].entrypoints[i] == NULL) {
- for (uint32_t j = 0; j < i; j++) {
- loader_instance_heap_free(inst, ext_list->list[idx].entrypoints[j]);
- }
- loader_instance_heap_free(inst, ext_list->list[idx].entrypoints);
- ext_list->list[idx].entrypoint_count = 0;
- ext_list->list[idx].entrypoints = NULL;
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "loader_add_to_dev_ext_list: Failed to allocate space "
- "for device extension entrypoint %d name",
- i);
- return VK_ERROR_OUT_OF_HOST_MEMORY;
- }
- strcpy(ext_list->list[idx].entrypoints[i], entrys[i]);
- }
- }
- ext_list->count++;
-
- return VK_SUCCESS;
-}
-
-// Prototypes needed.
-bool loaderAddMetaLayer(const struct loader_instance *inst, const struct loader_layer_properties *prop,
- struct loader_layer_list *target_list, struct loader_layer_list *expanded_target_list,
- const struct loader_layer_list *source_list);
-
-// Manage lists of VkLayerProperties
-static bool loaderInitLayerList(const struct loader_instance *inst, struct loader_layer_list *list) {
- list->capacity = 32 * sizeof(struct loader_layer_properties);
- list->list = loader_instance_heap_alloc(inst, list->capacity, VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE);
- if (list->list == NULL) {
- return false;
- }
- memset(list->list, 0, list->capacity);
- list->count = 0;
- return true;
-}
-
-// Search the given layer list for a list matching the given VkLayerProperties
-bool loaderListHasLayerProperty(const VkLayerProperties *vk_layer_prop, const struct loader_layer_list *list) {
- for (uint32_t i = 0; i < list->count; i++) {
- if (strcmp(vk_layer_prop->layerName, list->list[i].info.layerName) == 0) return true;
- }
- return false;
-}
-
-void loaderDestroyLayerList(const struct loader_instance *inst, struct loader_device *device,
- struct loader_layer_list *layer_list) {
- if (device) {
- loader_device_heap_free(device, layer_list->list);
- } else {
- loader_instance_heap_free(inst, layer_list->list);
- }
- layer_list->count = 0;
- layer_list->capacity = 0;
-}
-
-// Append non-duplicate layer properties defined in prop_list to the given layer_info list
-VkResult loaderAddLayerPropertiesToList(const struct loader_instance *inst, struct loader_layer_list *list,
- uint32_t prop_list_count, const struct loader_layer_properties *props) {
- uint32_t i;
- struct loader_layer_properties *layer;
-
- if (list->list == NULL || list->capacity == 0) {
- if (!loaderInitLayerList(inst, list)) {
- return VK_ERROR_OUT_OF_HOST_MEMORY;
- }
- }
-
- if (list->list == NULL) return VK_SUCCESS;
-
- for (i = 0; i < prop_list_count; i++) {
- layer = (struct loader_layer_properties *)&props[i];
-
- // Look for duplicates, and skip
- if (loaderListHasLayerProperty(&layer->info, list)) {
- continue;
- }
-
- // Check for enough capacity
- if (((list->count + 1) * sizeof(struct loader_layer_properties)) >= list->capacity) {
- size_t new_capacity = list->capacity * 2;
- void *new_ptr =
- loader_instance_heap_realloc(inst, list->list, list->capacity, new_capacity, VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE);
- if (NULL == new_ptr) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "loaderAddLayerPropertiesToList: Realloc failed for when attempting to add new layer");
- return VK_ERROR_OUT_OF_HOST_MEMORY;
- }
- list->list = new_ptr;
- list->capacity = new_capacity;
- }
-
- memcpy(&list->list[list->count], layer, sizeof(struct loader_layer_properties));
- list->count++;
- }
-
- return VK_SUCCESS;
-}
-
-// Search the given search_list for any layers in the props list. Add these to the
-// output layer_list. Don't add duplicates to the output layer_list.
-static VkResult loaderAddLayerNamesToList(const struct loader_instance *inst, struct loader_layer_list *output_list,
- struct loader_layer_list *expanded_output_list, uint32_t name_count,
- const char *const *names, const struct loader_layer_list *source_list) {
- struct loader_layer_properties *layer_prop;
- VkResult err = VK_SUCCESS;
-
- for (uint32_t i = 0; i < name_count; i++) {
- const char *source_name = names[i];
- layer_prop = loaderFindLayerProperty(source_name, source_list);
- if (NULL == layer_prop) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0, "loaderAddLayerNamesToList: Unable to find layer %s", source_name);
- err = VK_ERROR_LAYER_NOT_PRESENT;
- continue;
- }
-
- // If not a meta-layer, simply add it.
- if (0 == (layer_prop->type_flags & VK_LAYER_TYPE_FLAG_META_LAYER)) {
- if (!loaderListHasLayerProperty(&layer_prop->info, output_list)) {
- loaderAddLayerPropertiesToList(inst, output_list, 1, layer_prop);
- }
- if (!loaderListHasLayerProperty(&layer_prop->info, expanded_output_list)) {
- loaderAddLayerPropertiesToList(inst, expanded_output_list, 1, layer_prop);
- }
- } else {
- if (!loaderListHasLayerProperty(&layer_prop->info, output_list) ||
- !loaderListHasLayerProperty(&layer_prop->info, expanded_output_list)) {
- loaderAddMetaLayer(inst, layer_prop, output_list, expanded_output_list, source_list);
- }
- }
- }
-
- return err;
-}
-
-static bool checkExpiration(const struct loader_instance *inst, const struct loader_layer_properties *prop) {
- time_t current = time(NULL);
- struct tm tm_current = *localtime(&current);
-
- struct tm tm_expiration = {
- .tm_sec = 0,
- .tm_min = prop->expiration.minute,
- .tm_hour = prop->expiration.hour,
- .tm_mday = prop->expiration.day,
- .tm_mon = prop->expiration.month - 1,
- .tm_year = prop->expiration.year - 1900,
- .tm_isdst = tm_current.tm_isdst,
- // wday and yday are ignored by mktime
- };
- time_t expiration = mktime(&tm_expiration);
-
- return current < expiration;
-}
-
-// Determine if the provided implicit layer should be enabled by querying the appropriate environmental variables.
-// For an implicit layer, at least a disable environment variable is required.
-bool loaderImplicitLayerIsEnabled(const struct loader_instance *inst, const struct loader_layer_properties *prop) {
- bool enable = false;
- char *env_value = NULL;
-
- // If no enable_environment variable is specified, this implicit layer is always be enabled by default.
- if (prop->enable_env_var.name[0] == 0) {
- enable = true;
- } else {
- // Otherwise, only enable this layer if the enable environment variable is defined
- env_value = loader_getenv(prop->enable_env_var.name, inst);
- if (env_value && !strcmp(prop->enable_env_var.value, env_value)) {
- enable = true;
- }
- loader_free_getenv(env_value, inst);
- }
-
- // The disable_environment has priority over everything else. If it is defined, the layer is always
- // disabled.
- env_value = loader_getenv(prop->disable_env_var.name, inst);
- if (env_value) {
- enable = false;
- }
- loader_free_getenv(env_value, inst);
-
- // If this layer has an expiration, check it to determine if this layer has expired.
- if (prop->has_expiration) {
- enable = checkExpiration(inst, prop);
- }
-
- // Enable this layer if it is included in the override layer
- if (inst != NULL && inst->override_layer_present) {
- struct loader_layer_properties *override = NULL;
- for (uint32_t i = 0; i < inst->instance_layer_list.count; ++i) {
- if (strcmp(inst->instance_layer_list.list[i].info.layerName, VK_OVERRIDE_LAYER_NAME) == 0) {
- override = &inst->instance_layer_list.list[i];
- break;
- }
- }
- if (override != NULL) {
- for (uint32_t i = 0; i < override->num_component_layers; ++i) {
- if (strcmp(override->component_layer_names[i], prop->info.layerName) == 0) {
- enable = true;
- break;
- }
- }
- }
- }
-
- return enable;
-}
-
-// Check the individual implicit layer for the enable/disable environment variable settings. Only add it after
-// every check has passed indicating it should be used.
-static void loaderAddImplicitLayer(const struct loader_instance *inst, const struct loader_layer_properties *prop,
- struct loader_layer_list *target_list, struct loader_layer_list *expanded_target_list,
- const struct loader_layer_list *source_list) {
- bool enable = loaderImplicitLayerIsEnabled(inst, prop);
-
- // If the implicit layer is supposed to be enable, make sure the layer supports at least the same API version
- // that the application is asking (i.e. layer's API >= app's API). If it's not, disable this layer.
- if (enable) {
- uint16_t layer_api_major_version = VK_VERSION_MAJOR(prop->info.specVersion);
- uint16_t layer_api_minor_version = VK_VERSION_MINOR(prop->info.specVersion);
- if (inst->app_api_major_version > layer_api_major_version ||
- (inst->app_api_major_version == layer_api_major_version && inst->app_api_minor_version > layer_api_minor_version)) {
- loader_log(inst, VK_DEBUG_REPORT_INFORMATION_BIT_EXT, 0,
- "loader_add_implicit_layer: Disabling implicit layer %s for using an old API version %d.%d versus "
- "application requested %d.%d",
- prop->info.layerName, layer_api_major_version, layer_api_minor_version, inst->app_api_major_version,
- inst->app_api_minor_version);
- enable = false;
- }
- }
-
- if (enable) {
- if (0 == (prop->type_flags & VK_LAYER_TYPE_FLAG_META_LAYER)) {
- if (!loaderListHasLayerProperty(&prop->info, target_list)) {
- loaderAddLayerPropertiesToList(inst, target_list, 1, prop);
- }
- if (NULL != expanded_target_list && !loaderListHasLayerProperty(&prop->info, expanded_target_list)) {
- loaderAddLayerPropertiesToList(inst, expanded_target_list, 1, prop);
- }
- } else {
- if (!loaderListHasLayerProperty(&prop->info, target_list) ||
- (NULL != expanded_target_list && !loaderListHasLayerProperty(&prop->info, expanded_target_list))) {
- loaderAddMetaLayer(inst, prop, target_list, expanded_target_list, source_list);
- }
- }
- }
-}
-
-// Add the component layers of a meta-layer to the active list of layers
-bool loaderAddMetaLayer(const struct loader_instance *inst, const struct loader_layer_properties *prop,
- struct loader_layer_list *target_list, struct loader_layer_list *expanded_target_list,
- const struct loader_layer_list *source_list) {
- bool found = true;
-
- // If the meta-layer isn't present in the unexpanded list, add it.
- if (!loaderListHasLayerProperty(&prop->info, target_list)) {
- loaderAddLayerPropertiesToList(inst, target_list, 1, prop);
- }
-
- // We need to add all the individual component layers
- for (uint32_t comp_layer = 0; comp_layer < prop->num_component_layers; comp_layer++) {
- bool found_comp = false;
- const struct loader_layer_properties *search_prop =
- loaderFindLayerProperty(prop->component_layer_names[comp_layer], source_list);
- if (search_prop != NULL) {
- found_comp = true;
-
- // If the component layer is itself an implicit layer, we need to do the implicit layer enable
- // checks
- if (0 == (search_prop->type_flags & VK_LAYER_TYPE_FLAG_EXPLICIT_LAYER)) {
- loaderAddImplicitLayer(inst, search_prop, target_list, expanded_target_list, source_list);
- } else {
- if (0 != (search_prop->type_flags & VK_LAYER_TYPE_FLAG_META_LAYER)) {
- found = loaderAddMetaLayer(inst, search_prop, target_list, expanded_target_list, source_list);
- } else {
- // Otherwise, just make sure it hasn't already been added to either list before we add it
- if (!loaderListHasLayerProperty(&search_prop->info, target_list)) {
- loaderAddLayerPropertiesToList(inst, target_list, 1, search_prop);
- }
- if (NULL != expanded_target_list && !loaderListHasLayerProperty(&search_prop->info, expanded_target_list)) {
- loaderAddLayerPropertiesToList(inst, expanded_target_list, 1, search_prop);
- }
- }
- }
- }
- if (!found_comp) {
- loader_log(inst, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "loaderAddMetaLayer: Failed to find layer name %s component layer "
- "%s to activate",
- search_prop->info.layerName, prop->component_layer_names[comp_layer]);
- found = false;
- }
- }
-
- // Add this layer to the overall target list (not the expanded one)
- if (found && !loaderListHasLayerProperty(&prop->info, target_list)) {
- loaderAddLayerPropertiesToList(inst, target_list, 1, prop);
- }
-
- return found;
-}
-
-// Search the source_list for any layer with a name that matches the given name and a type
-// that matches the given type. Add all matching layers to the target_list.
-// Do not add if found loader_layer_properties is already on the target_list.
-VkResult loaderAddLayerNameToList(const struct loader_instance *inst, const char *name, const enum layer_type_flags type_flags,
- const struct loader_layer_list *source_list, struct loader_layer_list *target_list,
- struct loader_layer_list *expanded_target_list) {
- VkResult res = VK_SUCCESS;
- bool found = false;
- for (uint32_t i = 0; i < source_list->count; i++) {
- struct loader_layer_properties *source_prop = &source_list->list[i];
- if (0 == strcmp(source_prop->info.layerName, name) && (source_prop->type_flags & type_flags) == type_flags) {
- // If not a meta-layer, simply add it.
- if (0 == (source_prop->type_flags & VK_LAYER_TYPE_FLAG_META_LAYER)) {
- if (!loaderListHasLayerProperty(&source_prop->info, target_list) &&
- VK_SUCCESS == loaderAddLayerPropertiesToList(inst, target_list, 1, source_prop)) {
- found = true;
- }
- if (!loaderListHasLayerProperty(&source_prop->info, expanded_target_list) &&
- VK_SUCCESS == loaderAddLayerPropertiesToList(inst, expanded_target_list, 1, source_prop)) {
- found = true;
- }
- } else {
- found = loaderAddMetaLayer(inst, source_prop, target_list, expanded_target_list, source_list);
- }
- }
- }
- if (!found) {
- if (strcmp(name, "VK_LAYER_LUNARG_standard_validation")) {
- loader_log(inst, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "loaderAddLayerNameToList: Failed to find layer name %s to activate", name);
- } else {
- res = VK_ERROR_LAYER_NOT_PRESENT;
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "Layer VK_LAYER_LUNARG_standard_validation has been changed to VK_LAYER_KHRONOS_validation. Please use the "
- "new version of the layer.");
- }
- }
- return res;
-}
-
-static VkExtensionProperties *get_extension_property(const char *name, const struct loader_extension_list *list) {
- for (uint32_t i = 0; i < list->count; i++) {
- if (strcmp(name, list->list[i].extensionName) == 0) return &list->list[i];
- }
- return NULL;
-}
-
-static VkExtensionProperties *get_dev_extension_property(const char *name, const struct loader_device_extension_list *list) {
- for (uint32_t i = 0; i < list->count; i++) {
- if (strcmp(name, list->list[i].props.extensionName) == 0) return &list->list[i].props;
- }
- return NULL;
-}
-
-// For Instance extensions implemented within the loader (i.e. DEBUG_REPORT
-// the extension must provide two entry points for the loader to use:
-// - "trampoline" entry point - this is the address returned by GetProcAddr
-// and will always do what's necessary to support a
-// global call.
-// - "terminator" function - this function will be put at the end of the
-// instance chain and will contain the necessary logic
-// to call / process the extension for the appropriate
-// ICDs that are available.
-// There is no generic mechanism for including these functions, the references
-// must be placed into the appropriate loader entry points.
-// GetInstanceProcAddr: call extension GetInstanceProcAddr to check for GetProcAddr
-// requests
-// loader_coalesce_extensions(void) - add extension records to the list of global
-// extension available to the app.
-// instance_disp - add function pointer for terminator function
-// to this array.
-// The extension itself should be in a separate file that will be linked directly
-// with the loader.
-VkResult loader_get_icd_loader_instance_extensions(const struct loader_instance *inst, struct loader_icd_tramp_list *icd_tramp_list,
- struct loader_extension_list *inst_exts) {
- struct loader_extension_list icd_exts;
- VkResult res = VK_SUCCESS;
- char *env_value;
- bool filter_extensions = true;
-
- loader_log(inst, VK_DEBUG_REPORT_DEBUG_BIT_EXT, 0, "Build ICD instance extension list");
-
- // Check if a user wants to disable the instance extension filtering behavior
- env_value = loader_getenv("VK_LOADER_DISABLE_INST_EXT_FILTER", inst);
- if (NULL != env_value && atoi(env_value) != 0) {
- filter_extensions = false;
- }
- loader_free_getenv(env_value, inst);
-
- // traverse scanned icd list adding non-duplicate extensions to the list
- for (uint32_t i = 0; i < icd_tramp_list->count; i++) {
- res = loader_init_generic_list(inst, (struct loader_generic_list *)&icd_exts, sizeof(VkExtensionProperties));
- if (VK_SUCCESS != res) {
- goto out;
- }
- res = loader_add_instance_extensions(inst, icd_tramp_list->scanned_list[i].EnumerateInstanceExtensionProperties,
- icd_tramp_list->scanned_list[i].lib_name, &icd_exts);
- if (VK_SUCCESS == res) {
- if (filter_extensions) {
- // Remove any extensions not recognized by the loader
- for (int32_t j = 0; j < (int32_t)icd_exts.count; j++) {
- // See if the extension is in the list of supported extensions
- bool found = false;
- for (uint32_t k = 0; LOADER_INSTANCE_EXTENSIONS[k] != NULL; k++) {
- if (strcmp(icd_exts.list[j].extensionName, LOADER_INSTANCE_EXTENSIONS[k]) == 0) {
- found = true;
- break;
- }
- }
-
- // If it isn't in the list, remove it
- if (!found) {
- for (uint32_t k = j + 1; k < icd_exts.count; k++) {
- icd_exts.list[k - 1] = icd_exts.list[k];
- }
- --icd_exts.count;
- --j;
- }
- }
- }
-
- res = loader_add_to_ext_list(inst, inst_exts, icd_exts.count, icd_exts.list);
- }
- loader_destroy_generic_list(inst, (struct loader_generic_list *)&icd_exts);
- if (VK_SUCCESS != res) {
- goto out;
- }
- };
-
- // Traverse loader's extensions, adding non-duplicate extensions to the list
- debug_utils_AddInstanceExtensions(inst, inst_exts);
-
-out:
- return res;
-}
-
-struct loader_icd_term *loader_get_icd_and_device(const void *device, struct loader_device **found_dev, uint32_t *icd_index) {
- *found_dev = NULL;
- for (struct loader_instance *inst = loader.instances; inst; inst = inst->next) {
- uint32_t index = 0;
- for (struct loader_icd_term *icd_term = inst->icd_terms; icd_term; icd_term = icd_term->next) {
- for (struct loader_device *dev = icd_term->logical_device_list; dev; dev = dev->next)
- // Value comparison of device prevents object wrapping by layers
- if (loader_get_dispatch(dev->icd_device) == loader_get_dispatch(device) ||
- (dev->chain_device != VK_NULL_HANDLE &&
- loader_get_dispatch(dev->chain_device) == loader_get_dispatch(device))) {
- *found_dev = dev;
- if (NULL != icd_index) {
- *icd_index = index;
- }
- return icd_term;
- }
- index++;
- }
- }
- return NULL;
-}
-
-void loader_destroy_logical_device(const struct loader_instance *inst, struct loader_device *dev,
- const VkAllocationCallbacks *pAllocator) {
- if (pAllocator) {
- dev->alloc_callbacks = *pAllocator;
- }
- if (NULL != dev->expanded_activated_layer_list.list) {
- loaderDeactivateLayers(inst, dev, &dev->expanded_activated_layer_list);
- }
- if (NULL != dev->app_activated_layer_list.list) {
- loaderDestroyLayerList(inst, dev, &dev->app_activated_layer_list);
- }
- loader_device_heap_free(dev, dev);
-}
-
-struct loader_device *loader_create_logical_device(const struct loader_instance *inst, const VkAllocationCallbacks *pAllocator) {
- struct loader_device *new_dev;
-#if (DEBUG_DISABLE_APP_ALLOCATORS == 1)
- {
-#else
- if (pAllocator) {
- new_dev = (struct loader_device *)pAllocator->pfnAllocation(pAllocator->pUserData, sizeof(struct loader_device),
- sizeof(int *), VK_SYSTEM_ALLOCATION_SCOPE_DEVICE);
- } else {
-#endif
- new_dev = (struct loader_device *)malloc(sizeof(struct loader_device));
- }
-
- if (!new_dev) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "loader_create_logical_device: Failed to alloc struct "
- "loader_device");
- return NULL;
- }
-
- memset(new_dev, 0, sizeof(struct loader_device));
- if (pAllocator) {
- new_dev->alloc_callbacks = *pAllocator;
- }
-
- return new_dev;
-}
-
-void loader_add_logical_device(const struct loader_instance *inst, struct loader_icd_term *icd_term, struct loader_device *dev) {
- dev->next = icd_term->logical_device_list;
- icd_term->logical_device_list = dev;
-}
-
-void loader_remove_logical_device(const struct loader_instance *inst, struct loader_icd_term *icd_term,
- struct loader_device *found_dev, const VkAllocationCallbacks *pAllocator) {
- struct loader_device *dev, *prev_dev;
-
- if (!icd_term || !found_dev) return;
-
- prev_dev = NULL;
- dev = icd_term->logical_device_list;
- while (dev && dev != found_dev) {
- prev_dev = dev;
- dev = dev->next;
- }
-
- if (prev_dev)
- prev_dev->next = found_dev->next;
- else
- icd_term->logical_device_list = found_dev->next;
- loader_destroy_logical_device(inst, found_dev, pAllocator);
-}
-
-static void loader_icd_destroy(struct loader_instance *ptr_inst, struct loader_icd_term *icd_term,
- const VkAllocationCallbacks *pAllocator) {
- ptr_inst->total_icd_count--;
- for (struct loader_device *dev = icd_term->logical_device_list; dev;) {
- struct loader_device *next_dev = dev->next;
- loader_destroy_logical_device(ptr_inst, dev, pAllocator);
- dev = next_dev;
- }
-
- loader_instance_heap_free(ptr_inst, icd_term);
-}
-
-static struct loader_icd_term *loader_icd_create(const struct loader_instance *inst) {
- struct loader_icd_term *icd_term;
-
- icd_term = loader_instance_heap_alloc(inst, sizeof(struct loader_icd_term), VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE);
- if (!icd_term) {
- return NULL;
- }
-
- memset(icd_term, 0, sizeof(struct loader_icd_term));
-
- return icd_term;
-}
-
-static struct loader_icd_term *loader_icd_add(struct loader_instance *ptr_inst, const struct loader_scanned_icd *scanned_icd) {
- struct loader_icd_term *icd_term;
-
- icd_term = loader_icd_create(ptr_inst);
- if (!icd_term) {
- return NULL;
- }
-
- icd_term->scanned_icd = scanned_icd;
- icd_term->this_instance = ptr_inst;
-
- // Prepend to the list
- icd_term->next = ptr_inst->icd_terms;
- ptr_inst->icd_terms = icd_term;
- ptr_inst->total_icd_count++;
-
- return icd_term;
-}
-
-// Determine the ICD interface version to use.
-// @param icd
-// @param pVersion Output parameter indicating which version to use or 0 if
-// the negotiation API is not supported by the ICD
-// @return bool indicating true if the selected interface version is supported
-// by the loader, false indicates the version is not supported
-bool loader_get_icd_interface_version(PFN_vkNegotiateLoaderICDInterfaceVersion fp_negotiate_icd_version, uint32_t *pVersion) {
- if (fp_negotiate_icd_version == NULL) {
- // ICD does not support the negotiation API, it supports version 0 or 1
- // calling code must determine if it is version 0 or 1
- *pVersion = 0;
- } else {
- // ICD supports the negotiation API, so call it with the loader's
- // latest version supported
- *pVersion = CURRENT_LOADER_ICD_INTERFACE_VERSION;
- VkResult result = fp_negotiate_icd_version(pVersion);
-
- if (result == VK_ERROR_INCOMPATIBLE_DRIVER) {
- // ICD no longer supports the loader's latest interface version so
- // fail loading the ICD
- return false;
- }
- }
-
-#if MIN_SUPPORTED_LOADER_ICD_INTERFACE_VERSION > 0
- if (*pVersion < MIN_SUPPORTED_LOADER_ICD_INTERFACE_VERSION) {
- // Loader no longer supports the ICD's latest interface version so fail
- // loading the ICD
- return false;
- }
-#endif
- return true;
-}
-
-void loader_scanned_icd_clear(const struct loader_instance *inst, struct loader_icd_tramp_list *icd_tramp_list) {
- if (0 != icd_tramp_list->capacity) {
- for (uint32_t i = 0; i < icd_tramp_list->count; i++) {
- loader_platform_close_library(icd_tramp_list->scanned_list[i].handle);
- loader_instance_heap_free(inst, icd_tramp_list->scanned_list[i].lib_name);
- }
- loader_instance_heap_free(inst, icd_tramp_list->scanned_list);
- icd_tramp_list->capacity = 0;
- icd_tramp_list->count = 0;
- icd_tramp_list->scanned_list = NULL;
- }
-}
-
-static VkResult loader_scanned_icd_init(const struct loader_instance *inst, struct loader_icd_tramp_list *icd_tramp_list) {
- VkResult err = VK_SUCCESS;
- loader_scanned_icd_clear(inst, icd_tramp_list);
- icd_tramp_list->capacity = 8 * sizeof(struct loader_scanned_icd);
- icd_tramp_list->scanned_list = loader_instance_heap_alloc(inst, icd_tramp_list->capacity, VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE);
- if (NULL == icd_tramp_list->scanned_list) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "loader_scanned_icd_init: Realloc failed for layer list when "
- "attempting to add new layer");
- err = VK_ERROR_OUT_OF_HOST_MEMORY;
- }
- return err;
-}
-
-static VkResult loader_scanned_icd_add(const struct loader_instance *inst, struct loader_icd_tramp_list *icd_tramp_list,
- const char *filename, uint32_t api_version) {
- loader_platform_dl_handle handle;
- PFN_vkCreateInstance fp_create_inst;
- PFN_vkEnumerateInstanceExtensionProperties fp_get_inst_ext_props;
- PFN_vkGetInstanceProcAddr fp_get_proc_addr;
- PFN_GetPhysicalDeviceProcAddr fp_get_phys_dev_proc_addr = NULL;
- PFN_vkNegotiateLoaderICDInterfaceVersion fp_negotiate_icd_version;
-#if defined(VK_USE_PLATFORM_WIN32_KHR)
- PFN_vk_icdEnumerateAdapterPhysicalDevices fp_enum_dxgi_adapter_phys_devs = NULL;
-#endif
- struct loader_scanned_icd *new_scanned_icd;
- uint32_t interface_vers;
- VkResult res = VK_SUCCESS;
-
- // TODO implement smarter opening/closing of libraries. For now this
- // function leaves libraries open and the scanned_icd_clear closes them
-#if defined(__Fuchsia__)
- handle = loader_platform_open_driver(filename);
-#else
- handle = loader_platform_open_library(filename);
-#endif
- if (NULL == handle) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0, loader_platform_open_library_error(filename));
- goto out;
- }
-
- // Get and settle on an ICD interface version
- fp_negotiate_icd_version = loader_platform_get_proc_address(handle, "vk_icdNegotiateLoaderICDInterfaceVersion");
-
- if (!loader_get_icd_interface_version(fp_negotiate_icd_version, &interface_vers)) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "loader_scanned_icd_add: ICD %s doesn't support interface"
- " version compatible with loader, skip this ICD.",
- filename);
- goto out;
- }
-
- fp_get_proc_addr = loader_platform_get_proc_address(handle, "vk_icdGetInstanceProcAddr");
- if (NULL == fp_get_proc_addr) {
- assert(interface_vers == 0);
- // Use deprecated interface from version 0
- fp_get_proc_addr = loader_platform_get_proc_address(handle, "vkGetInstanceProcAddr");
- if (NULL == fp_get_proc_addr) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "loader_scanned_icd_add: Attempt to retrieve either "
- "\'vkGetInstanceProcAddr\' or "
- "\'vk_icdGetInstanceProcAddr\' from ICD %s failed.",
- filename);
- goto out;
- } else {
- loader_log(inst, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "loader_scanned_icd_add: Using deprecated ICD "
- "interface of \'vkGetInstanceProcAddr\' instead of "
- "\'vk_icdGetInstanceProcAddr\' for ICD %s",
- filename);
- }
- fp_create_inst = loader_platform_get_proc_address(handle, "vkCreateInstance");
- if (NULL == fp_create_inst) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "loader_scanned_icd_add: Failed querying "
- "\'vkCreateInstance\' via dlsym/loadlibrary for "
- "ICD %s",
- filename);
- goto out;
- }
- fp_get_inst_ext_props = loader_platform_get_proc_address(handle, "vkEnumerateInstanceExtensionProperties");
- if (NULL == fp_get_inst_ext_props) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "loader_scanned_icd_add: Could not get \'vkEnumerate"
- "InstanceExtensionProperties\' via dlsym/loadlibrary "
- "for ICD %s",
- filename);
- goto out;
- }
- } else {
- // Use newer interface version 1 or later
- if (interface_vers == 0) {
- interface_vers = 1;
- }
-
- fp_create_inst = (PFN_vkCreateInstance)fp_get_proc_addr(NULL, "vkCreateInstance");
- if (NULL == fp_create_inst) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "loader_scanned_icd_add: Could not get "
- "\'vkCreateInstance\' via \'vk_icdGetInstanceProcAddr\'"
- " for ICD %s",
- filename);
- goto out;
- }
- fp_get_inst_ext_props =
- (PFN_vkEnumerateInstanceExtensionProperties)fp_get_proc_addr(NULL, "vkEnumerateInstanceExtensionProperties");
- if (NULL == fp_get_inst_ext_props) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "loader_scanned_icd_add: Could not get \'vkEnumerate"
- "InstanceExtensionProperties\' via "
- "\'vk_icdGetInstanceProcAddr\' for ICD %s",
- filename);
- goto out;
- }
- fp_get_phys_dev_proc_addr = loader_platform_get_proc_address(handle, "vk_icdGetPhysicalDeviceProcAddr");
-#if defined(VK_USE_PLATFORM_WIN32_KHR)
- if (interface_vers >= 6) {
- fp_enum_dxgi_adapter_phys_devs = loader_platform_get_proc_address(handle, "vk_icdEnumerateAdapterPhysicalDevices");
- }
-#endif
- }
-
- // check for enough capacity
- if ((icd_tramp_list->count * sizeof(struct loader_scanned_icd)) >= icd_tramp_list->capacity) {
- void *new_ptr = loader_instance_heap_realloc(inst, icd_tramp_list->scanned_list, icd_tramp_list->capacity,
- icd_tramp_list->capacity * 2, VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE);
- if (NULL == new_ptr) {
- res = VK_ERROR_OUT_OF_HOST_MEMORY;
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "loader_scanned_icd_add: Realloc failed on icd library list for ICD %s", filename);
- goto out;
- }
- icd_tramp_list->scanned_list = new_ptr;
-
- // double capacity
- icd_tramp_list->capacity *= 2;
- }
-
- new_scanned_icd = &(icd_tramp_list->scanned_list[icd_tramp_list->count]);
- new_scanned_icd->handle = handle;
- new_scanned_icd->api_version = api_version;
- new_scanned_icd->GetInstanceProcAddr = fp_get_proc_addr;
- new_scanned_icd->GetPhysicalDeviceProcAddr = fp_get_phys_dev_proc_addr;
- new_scanned_icd->EnumerateInstanceExtensionProperties = fp_get_inst_ext_props;
- new_scanned_icd->CreateInstance = fp_create_inst;
-#if defined(VK_USE_PLATFORM_WIN32_KHR)
- new_scanned_icd->EnumerateAdapterPhysicalDevices = fp_enum_dxgi_adapter_phys_devs;
-#endif
- new_scanned_icd->interface_version = interface_vers;
-
- new_scanned_icd->lib_name = (char *)loader_instance_heap_alloc(inst, strlen(filename) + 1, VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE);
- if (NULL == new_scanned_icd->lib_name) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0, "loader_scanned_icd_add: Out of memory can't add ICD %s", filename);
- res = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
- strcpy(new_scanned_icd->lib_name, filename);
- icd_tramp_list->count++;
-
-out:
-
- return res;
-}
-
-static void loader_debug_init(void) {
- char *env, *orig;
-
- if (g_loader_debug > 0) return;
-
- g_loader_debug = 0;
-
- // Parse comma-separated debug options
- orig = env = loader_getenv("VK_LOADER_DEBUG", NULL);
- while (env) {
- char *p = strchr(env, ',');
- size_t len;
-
- if (p)
- len = p - env;
- else
- len = strlen(env);
-
- if (len > 0) {
- if (strncmp(env, "all", len) == 0) {
- g_loader_debug = ~0u;
- g_loader_log_msgs = ~0u;
- } else if (strncmp(env, "warn", len) == 0) {
- g_loader_debug |= LOADER_WARN_BIT;
- g_loader_log_msgs |= VK_DEBUG_REPORT_WARNING_BIT_EXT;
- } else if (strncmp(env, "info", len) == 0) {
- g_loader_debug |= LOADER_INFO_BIT;
- g_loader_log_msgs |= VK_DEBUG_REPORT_INFORMATION_BIT_EXT;
- } else if (strncmp(env, "perf", len) == 0) {
- g_loader_debug |= LOADER_PERF_BIT;
- g_loader_log_msgs |= VK_DEBUG_REPORT_PERFORMANCE_WARNING_BIT_EXT;
- } else if (strncmp(env, "error", len) == 0) {
- g_loader_debug |= LOADER_ERROR_BIT;
- g_loader_log_msgs |= VK_DEBUG_REPORT_ERROR_BIT_EXT;
- } else if (strncmp(env, "debug", len) == 0) {
- g_loader_debug |= LOADER_DEBUG_BIT;
- g_loader_log_msgs |= VK_DEBUG_REPORT_DEBUG_BIT_EXT;
- }
- }
-
- if (!p) break;
-
- env = p + 1;
- }
-
- loader_free_getenv(orig, NULL);
-}
-
-void loader_initialize(void) {
- // initialize mutexes
- loader_platform_thread_create_mutex(&loader_lock);
- loader_platform_thread_create_mutex(&loader_json_lock);
- loader_platform_thread_create_mutex(&loader_preload_icd_lock);
- // initialize logging
- loader_debug_init();
-
- // initial cJSON to use alloc callbacks
- cJSON_Hooks alloc_fns = {
- .malloc_fn = loader_instance_tls_heap_alloc, .free_fn = loader_instance_tls_heap_free,
- };
- cJSON_InitHooks(&alloc_fns);
-
-#if defined(_WIN32)
- // This is needed to ensure that newer APIs are available right away
- // and not after the first call that has been statically linked
- LoadLibrary("gdi32.dll");
-
- TCHAR systemPath[MAX_PATH] = "";
- GetSystemDirectory(systemPath, MAX_PATH);
- StringCchCat(systemPath, MAX_PATH, TEXT("\\dxgi.dll"));
- HMODULE dxgi_module = LoadLibrary(systemPath);
- fpCreateDXGIFactory1 = dxgi_module == NULL ? NULL :
- (PFN_CreateDXGIFactory1)GetProcAddress(dxgi_module, "CreateDXGIFactory1");
-#endif
-}
-
-struct loader_data_files {
- uint32_t count;
- uint32_t alloc_count;
- char **filename_list;
-};
-
-void loader_release() {
- // Guarantee release of the preloaded ICD libraries. This may have already been called in vkDestroyInstance.
- loader_unload_preloaded_icds();
-
- // release mutexes
- loader_platform_thread_delete_mutex(&loader_lock);
- loader_platform_thread_delete_mutex(&loader_json_lock);
- loader_platform_thread_delete_mutex(&loader_preload_icd_lock);
-}
-
-// Preload the ICD libraries that are likely to be needed so we don't repeatedly load/unload them later
-void loader_preload_icds(void) {
- loader_platform_thread_lock_mutex(&loader_preload_icd_lock);
-
- // Already preloaded, skip loading again.
- if (scanned_icds.scanned_list != NULL) {
- loader_platform_thread_unlock_mutex(&loader_preload_icd_lock);
- return;
- }
-
- memset(&scanned_icds, 0, sizeof(scanned_icds));
- VkResult result = loader_icd_scan(NULL, &scanned_icds);
- if (result != VK_SUCCESS) {
- loader_scanned_icd_clear(NULL, &scanned_icds);
- }
- loader_platform_thread_unlock_mutex(&loader_preload_icd_lock);
-}
-
-// Release the ICD libraries that were preloaded
-void loader_unload_preloaded_icds(void) {
- loader_platform_thread_lock_mutex(&loader_preload_icd_lock);
- loader_scanned_icd_clear(NULL, &scanned_icds);
- loader_platform_thread_unlock_mutex(&loader_preload_icd_lock);
-}
-
-// Get next file or dirname given a string list or registry key path
-//
-// \returns
-// A pointer to first char in the next path.
-// The next path (or NULL) in the list is returned in next_path.
-// Note: input string is modified in some cases. PASS IN A COPY!
-static char *loader_get_next_path(char *path) {
- uint32_t len;
- char *next;
-
- if (path == NULL) return NULL;
- next = strchr(path, PATH_SEPARATOR);
- if (next == NULL) {
- len = (uint32_t)strlen(path);
- next = path + len;
- } else {
- *next = '\0';
- next++;
- }
-
- return next;
-}
-
-// Given a path which is absolute or relative, expand the path if relative or
-// leave the path unmodified if absolute. The base path to prepend to relative
-// paths is given in rel_base.
-//
-// @return - A string in out_fullpath of the full absolute path
-static void loader_expand_path(const char *path, const char *rel_base, size_t out_size, char *out_fullpath) {
- if (loader_platform_is_path_absolute(path)) {
- // do not prepend a base to an absolute path
- rel_base = "";
- }
-
- loader_platform_combine_path(out_fullpath, out_size, rel_base, path, NULL);
-}
-
-// Given a filename (file) and a list of paths (dir), try to find an existing
-// file in the paths. If filename already is a path then no searching in the given paths.
-//
-// @return - A string in out_fullpath of either the full path or file.
-static void loader_get_fullpath(const char *file, const char *dirs, size_t out_size, char *out_fullpath) {
- if (!loader_platform_is_path(file) && *dirs) {
- char *dirs_copy, *dir, *next_dir;
-
- dirs_copy = loader_stack_alloc(strlen(dirs) + 1);
- strcpy(dirs_copy, dirs);
-
- // find if file exists after prepending paths in given list
- for (dir = dirs_copy; *dir && (next_dir = loader_get_next_path(dir)); dir = next_dir) {
- loader_platform_combine_path(out_fullpath, out_size, dir, file, NULL);
- if (loader_platform_file_exists(out_fullpath)) {
- return;
- }
- }
- }
-
- (void)snprintf(out_fullpath, out_size, "%s", file);
-}
-
-// Read a JSON file into a buffer.
-//
-// @return - A pointer to a cJSON object representing the JSON parse tree.
-// This returned buffer should be freed by caller.
-static VkResult loader_get_json(const struct loader_instance *inst, const char *filename, cJSON **json) {
- FILE *file = NULL;
- char *json_buf;
- size_t len;
- VkResult res = VK_SUCCESS;
-
- if (NULL == json) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0, "loader_get_json: Received invalid JSON file");
- res = VK_ERROR_INITIALIZATION_FAILED;
- goto out;
- }
-
- *json = NULL;
-
- file = fopen(filename, "rb");
- if (!file) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0, "loader_get_json: Failed to open JSON file %s", filename);
- res = VK_ERROR_INITIALIZATION_FAILED;
- goto out;
- }
- // NOTE: We can't just use fseek(file, 0, SEEK_END) because that isn't guaranteed to be supported on all systems
- do {
- // We're just seeking the end of the file, so this buffer is never used
- char buffer[256];
- fread(buffer, 1, sizeof(buffer), file);
- } while (!feof(file));
- len = ftell(file);
- fseek(file, 0, SEEK_SET);
- json_buf = (char *)loader_stack_alloc(len + 1);
- if (json_buf == NULL) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "loader_get_json: Failed to allocate space for "
- "JSON file %s buffer of length %d",
- filename, len);
- res = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
- if (fread(json_buf, sizeof(char), len, file) != len) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0, "loader_get_json: Failed to read JSON file %s.", filename);
- res = VK_ERROR_INITIALIZATION_FAILED;
- goto out;
- }
- json_buf[len] = '\0';
-
- // Can't be a valid json if the string is of length zero
- if (len == 0) {
- res = VK_ERROR_INITIALIZATION_FAILED;
- goto out;
- }
- // Parse text from file
- *json = cJSON_Parse(json_buf);
- if (*json == NULL) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "loader_get_json: Failed to parse JSON file %s, "
- "this is usually because something ran out of "
- "memory.",
- filename);
- res = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
-
-out:
- if (NULL != file) {
- fclose(file);
- }
-
- return res;
-}
-
-// Verify that all component layers in a meta-layer are valid.
-static bool verifyMetaLayerComponentLayers(const struct loader_instance *inst, struct loader_layer_properties *prop,
- struct loader_layer_list *instance_layers) {
- bool success = true;
- const uint32_t expected_major = VK_VERSION_MAJOR(prop->info.specVersion);
- const uint32_t expected_minor = VK_VERSION_MINOR(prop->info.specVersion);
-
- for (uint32_t comp_layer = 0; comp_layer < prop->num_component_layers; comp_layer++) {
- if (!loaderFindLayerNameInList(prop->component_layer_names[comp_layer], instance_layers)) {
- if (NULL != inst) {
- loader_log(inst, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "verifyMetaLayerComponentLayers: Meta-layer %s can't find component layer %s at index %d."
- " Skipping this layer.",
- prop->info.layerName, prop->component_layer_names[comp_layer], comp_layer);
- }
- success = false;
- break;
- } else {
- struct loader_layer_properties *comp_prop =
- loaderFindLayerProperty(prop->component_layer_names[comp_layer], instance_layers);
- if (comp_prop == NULL) {
- if (NULL != inst) {
- loader_log(inst, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "verifyMetaLayerComponentLayers: Meta-layer %s can't find property for component layer "
- "%s at index %d. Skipping this layer.",
- prop->info.layerName, prop->component_layer_names[comp_layer], comp_layer);
- }
- success = false;
- break;
- }
-
- // Check the version of each layer, they need to at least match MAJOR and MINOR
- uint32_t cur_major = VK_VERSION_MAJOR(comp_prop->info.specVersion);
- uint32_t cur_minor = VK_VERSION_MINOR(comp_prop->info.specVersion);
- if (cur_major != expected_major || cur_minor != expected_minor) {
- if (NULL != inst) {
- loader_log(inst, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "verifyMetaLayerComponentLayers: Meta-layer uses API version %d.%d, but component "
- "layer %d uses API version %d.%d. Skipping this layer.",
- expected_major, expected_minor, comp_layer, cur_major, cur_minor);
- }
- success = false;
- break;
- }
-
- // Make sure the layer isn't using it's own name
- if (!strcmp(prop->info.layerName, prop->component_layer_names[comp_layer])) {
- if (NULL != inst) {
- loader_log(inst, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "verifyMetaLayerComponentLayers: Meta-layer %s lists itself in its component layer "
- "list at index %d. Skipping this layer.",
- prop->info.layerName, comp_layer);
- }
- success = false;
- break;
- }
- if (comp_prop->type_flags & VK_LAYER_TYPE_FLAG_META_LAYER) {
- if (NULL != inst) {
- loader_log(inst, VK_DEBUG_REPORT_INFORMATION_BIT_EXT, 0,
- "verifyMetaLayerComponentLayers: Adding meta-layer %s which also contains meta-layer %s",
- prop->info.layerName, comp_prop->info.layerName);
- }
-
- // Make sure if the layer is using a meta-layer in its component list that we also verify that.
- if (!verifyMetaLayerComponentLayers(inst, comp_prop, instance_layers)) {
- if (NULL != inst) {
- loader_log(inst, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "Meta-layer %s component layer %s can not find all component layers."
- " Skipping this layer.",
- prop->info.layerName, prop->component_layer_names[comp_layer]);
- }
- success = false;
- break;
- }
- }
-
- // Add any instance and device extensions from component layers to this layer
- // list, so that anyone querying extensions will only need to look at the meta-layer
- for (uint32_t ext = 0; ext < comp_prop->instance_extension_list.count; ext++) {
- if (NULL != inst) {
- loader_log(inst, VK_DEBUG_REPORT_DEBUG_BIT_EXT, 0,
- "Meta-layer %s component layer %s adding instance extension %s", prop->info.layerName,
- prop->component_layer_names[comp_layer], comp_prop->instance_extension_list.list[ext].extensionName);
- }
- if (!has_vk_extension_property(&comp_prop->instance_extension_list.list[ext], &prop->instance_extension_list)) {
- loader_add_to_ext_list(inst, &prop->instance_extension_list, 1, &comp_prop->instance_extension_list.list[ext]);
- }
- }
-
- for (uint32_t ext = 0; ext < comp_prop->device_extension_list.count; ext++) {
- if (NULL != inst) {
- loader_log(inst, VK_DEBUG_REPORT_DEBUG_BIT_EXT, 0,
- "Meta-layer %s component layer %s adding device extension %s", prop->info.layerName,
- prop->component_layer_names[comp_layer],
- comp_prop->device_extension_list.list[ext].props.extensionName);
- }
- if (!has_vk_dev_ext_property(&comp_prop->device_extension_list.list[ext].props, &prop->device_extension_list)) {
- loader_add_to_dev_ext_list(inst, &prop->device_extension_list,
- &comp_prop->device_extension_list.list[ext].props, 0, NULL);
- }
- }
- }
- }
- if (success) {
- loader_log(inst, VK_DEBUG_REPORT_INFORMATION_BIT_EXT, 0, "Meta-layer %s all %d component layers appear to be valid.",
- prop->info.layerName, prop->num_component_layers);
- }
- return success;
-}
-
-// Verify that all meta-layers in a layer list are valid.
-static void VerifyAllMetaLayers(struct loader_instance *inst, struct loader_layer_list *instance_layers,
- bool *override_layer_present) {
- *override_layer_present = false;
- for (int32_t i = 0; i < (int32_t)instance_layers->count; i++) {
- struct loader_layer_properties *prop = &instance_layers->list[i];
-
- // If this is a meta-layer, make sure it is valid
- if ((prop->type_flags & VK_LAYER_TYPE_FLAG_META_LAYER) && !verifyMetaLayerComponentLayers(inst, prop, instance_layers)) {
- if (NULL != inst) {
- loader_log(inst, VK_DEBUG_REPORT_DEBUG_BIT_EXT, 0,
- "Removing meta-layer %s from instance layer list since it appears invalid.", prop->info.layerName);
- }
-
- // Delete the component layers
- loader_instance_heap_free(inst, prop->component_layer_names);
- if (prop->blacklist_layer_names != NULL) {
- loader_instance_heap_free(inst, prop->blacklist_layer_names);
- }
- if (prop->override_paths != NULL) {
- loader_instance_heap_free(inst, prop->override_paths);
- }
-
- // Remove the current invalid meta-layer from the layer list. Use memmove since we are
- // overlapping the source and destination addresses.
- memmove(&instance_layers->list[i], &instance_layers->list[i + 1],
- sizeof(struct loader_layer_properties) * (instance_layers->count - 1 - i));
-
- // Decrement the count (because we now have one less) and decrement the loop index since we need to
- // re-check this index.
- instance_layers->count--;
- i--;
- } else if (prop->is_override && loaderImplicitLayerIsEnabled(inst, prop)) {
- *override_layer_present = true;
- }
- }
-}
-
-// If the current working directory matches any app_key_path of the layers, remove all other override layers.
-// Otherwise if no matching app_key was found, remove all but the global override layer, which has no app_key_path.
-static void RemoveAllNonValidOverrideLayers(struct loader_instance *inst, struct loader_layer_list *instance_layers) {
- if (instance_layers == NULL) {
- return;
- }
-
- char cur_path[MAX_STRING_SIZE];
- char *ret = loader_platform_executable_path(cur_path, sizeof(cur_path));
- if (ret == NULL) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "RemoveAllNonValidOverrideLayers: Failed to get executable path and name");
- return;
- }
-
- // Find out if there is an override layer with same the app_key_path as the path to the current executable.
- // If more than one is found, remove it and use the first layer
- // Remove any layers which aren't global and do not have the same app_key_path as the path to the current executable.
- bool found_active_override_layer = false;
- int global_layer_index = -1;
- for (uint32_t i = 0; i < instance_layers->count; i++) {
- struct loader_layer_properties *props = &instance_layers->list[i];
- if (strcmp(props->info.layerName, VK_OVERRIDE_LAYER_NAME) == 0) {
- if (props->num_app_key_paths > 0) { // not the global layer
- for (uint32_t j = 0; j < props->num_app_key_paths; j++) {
- if (strcmp(props->app_key_paths[j], cur_path) == 0) {
- if (!found_active_override_layer) {
- found_active_override_layer = true;
- } else {
- loader_log(inst, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "RemoveAllNonValidOverrideLayers: Multiple override layers where the same"
- "path in app_keys was found. Using the first layer found");
-
- // Remove duplicate active override layers that have the same app_key_path
- loaderRemoveLayerInList(inst, instance_layers, i);
- i--;
- }
- }
- }
- if (!found_active_override_layer) {
- // Remove non-global override layers that don't have an app_key that matches cur_path
- loaderRemoveLayerInList(inst, instance_layers, i);
- i--;
- }
- } else {
- if (global_layer_index == -1) {
- global_layer_index = i;
- } else {
- loader_log(inst, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "RemoveAllNonValidOverrideLayers: Multiple global override layers "
- "found. Using the first global layer found");
- loaderRemoveLayerInList(inst, instance_layers, i);
- i--;
- }
- }
- }
- }
- // Remove global layer if layer with same the app_key_path as the path to the current executable is found
- if (found_active_override_layer && global_layer_index >= 0) {
- loaderRemoveLayerInList(inst, instance_layers, global_layer_index);
- }
- // Should be at most 1 override layer in the list now.
- if (found_active_override_layer) {
- loader_log(inst, VK_DEBUG_REPORT_INFORMATION_BIT_EXT, 0, "Using the override layer for app key %s", cur_path);
- } else if (global_layer_index >= 0) {
- loader_log(inst, VK_DEBUG_REPORT_INFORMATION_BIT_EXT, 0, "Using the global override layer");
- }
-}
-
-// This structure is used to store the json file version
-// in a more manageable way.
-typedef struct {
- uint16_t major;
- uint16_t minor;
- uint16_t patch;
-} layer_json_version;
-
-static inline bool layer_json_supports_pre_instance_tag(const layer_json_version *layer_json) {
- // Supported versions started in 1.1.2, so anything newer
- return layer_json->major > 1 || layer_json->minor > 1 || (layer_json->minor == 1 && layer_json->patch > 1);
-}
-
-static VkResult loaderReadLayerJson(const struct loader_instance *inst, struct loader_layer_list *layer_instance_list,
- cJSON *layer_node, layer_json_version version, cJSON *item, cJSON *disable_environment,
- bool is_implicit, char *filename) {
- char *temp;
- char *name, *type, *library_path_str, *api_version;
- char *implementation_version, *description;
- cJSON *ext_item;
- cJSON *library_path;
- cJSON *component_layers;
- cJSON *override_paths;
- cJSON *blacklisted_layers;
- VkExtensionProperties ext_prop;
- VkResult result = VK_ERROR_INITIALIZATION_FAILED;
- struct loader_layer_properties *props = NULL;
- int i, j;
-
-// The following are required in the "layer" object:
-// (required) "name"
-// (required) "type"
-// (required) "library_path"
-// (required) "api_version"
-// (required) "implementation_version"
-// (required) "description"
-// (required for implicit layers) "disable_environment"
-#define GET_JSON_OBJECT(node, var) \
- { \
- var = cJSON_GetObjectItem(node, #var); \
- if (var == NULL) { \
- layer_node = layer_node->next; \
- loader_log(inst, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0, \
- "Didn't find required layer object %s in manifest " \
- "JSON file, skipping this layer", \
- #var); \
- goto out; \
- } \
- }
-#define GET_JSON_ITEM(node, var) \
- { \
- item = cJSON_GetObjectItem(node, #var); \
- if (item == NULL) { \
- layer_node = layer_node->next; \
- loader_log(inst, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0, \
- "Didn't find required layer value %s in manifest JSON " \
- "file, skipping this layer", \
- #var); \
- goto out; \
- } \
- temp = cJSON_Print(item); \
- if (temp == NULL) { \
- layer_node = layer_node->next; \
- loader_log(inst, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0, \
- "Problem accessing layer value %s in manifest JSON " \
- "file, skipping this layer", \
- #var); \
- result = VK_ERROR_OUT_OF_HOST_MEMORY; \
- goto out; \
- } \
- temp[strlen(temp) - 1] = '\0'; \
- var = loader_stack_alloc(strlen(temp) + 1); \
- strcpy(var, &temp[1]); \
- cJSON_Free(temp); \
- }
- GET_JSON_ITEM(layer_node, name)
- GET_JSON_ITEM(layer_node, type)
- GET_JSON_ITEM(layer_node, api_version)
- GET_JSON_ITEM(layer_node, implementation_version)
- GET_JSON_ITEM(layer_node, description)
-
- // Add list entry
- if (!strcmp(type, "DEVICE")) {
- loader_log(inst, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0, "Device layers are deprecated skipping this layer");
- layer_node = layer_node->next;
- goto out;
- }
-
- // Allow either GLOBAL or INSTANCE type interchangeably to handle
- // layers that must work with older loaders
- if (!strcmp(type, "INSTANCE") || !strcmp(type, "GLOBAL")) {
- if (layer_instance_list == NULL) {
- layer_node = layer_node->next;
- goto out;
- }
- props = loaderGetNextLayerPropertySlot(inst, layer_instance_list);
- if (NULL == props) {
- // Error already triggered in loaderGetNextLayerPropertySlot.
- result = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
- props->type_flags = VK_LAYER_TYPE_FLAG_INSTANCE_LAYER;
- if (!is_implicit) {
- props->type_flags |= VK_LAYER_TYPE_FLAG_EXPLICIT_LAYER;
- }
- } else {
- layer_node = layer_node->next;
- goto out;
- }
-
- // Expiration date for override layer. Field starte with JSON file 1.1.2 and
- // is completely optional. So, no check put in place.
- if (!strcmp(name, VK_OVERRIDE_LAYER_NAME)) {
- cJSON *expiration;
-
- if (version.major < 1 && version.minor < 1 && version.patch < 2) {
- loader_log(
- inst, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "Override layer expiration date not added until version 1.1.2. Please update JSON file version appropriately.");
- }
-
- props->is_override = true;
- expiration = cJSON_GetObjectItem(layer_node, "expiration_date");
- if (NULL != expiration) {
- char date_copy[32];
- uint8_t cur_item = 0;
-
- // Get the string for the current item
- temp = cJSON_Print(expiration);
- if (temp == NULL) {
- loader_log(inst, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "Problem accessing layer value 'expiration_date' in manifest JSON file, skipping this layer");
- result = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
- temp[strlen(temp) - 1] = '\0';
- strcpy(date_copy, &temp[1]);
- cJSON_Free(temp);
-
- if (strlen(date_copy) == 16) {
- char *cur_start = &date_copy[0];
- char *next_dash = strchr(date_copy, '-');
- if (NULL != next_dash) {
- while (cur_item < 5 && strlen(cur_start)) {
- if (next_dash != NULL) {
- *next_dash = '\0';
- }
- switch (cur_item) {
- case 0: // Year
- props->expiration.year = atoi(cur_start);
- break;
- case 1: // Month
- props->expiration.month = atoi(cur_start);
- break;
- case 2: // Day
- props->expiration.day = atoi(cur_start);
- break;
- case 3: // Hour
- props->expiration.hour = atoi(cur_start);
- break;
- case 4: // Minute
- props->expiration.minute = atoi(cur_start);
- props->has_expiration = true;
- break;
- default: // Ignore
- break;
- }
- if (next_dash != NULL) {
- cur_start = next_dash + 1;
- next_dash = strchr(cur_start, '-');
- }
- cur_item++;
- }
- }
- }
- }
- }
-
- // Library path no longer required unless component_layers is also not defined
- library_path = cJSON_GetObjectItem(layer_node, "library_path");
- component_layers = cJSON_GetObjectItem(layer_node, "component_layers");
- if (NULL != library_path) {
- if (NULL != component_layers) {
- loader_log(inst, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "Indicating meta-layer-specific component_layers, but also "
- "defining layer library path. Both are not compatible, so "
- "skipping this layer");
- goto out;
- }
- props->num_component_layers = 0;
- props->component_layer_names = NULL;
-
- temp = cJSON_Print(library_path);
- if (NULL == temp) {
- layer_node = layer_node->next;
- loader_log(inst, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "Problem accessing layer value library_path in manifest JSON "
- "file, skipping this layer");
- result = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
- temp[strlen(temp) - 1] = '\0';
- library_path_str = loader_stack_alloc(strlen(temp) + 1);
- strcpy(library_path_str, &temp[1]);
- cJSON_Free(temp);
-
- char *fullpath = props->lib_name;
- char *rel_base;
- if (NULL != library_path_str) {
- if (loader_platform_is_path(library_path_str)) {
- // A relative or absolute path
- char *name_copy = loader_stack_alloc(strlen(filename) + 1);
- strcpy(name_copy, filename);
- rel_base = loader_platform_dirname(name_copy);
- loader_expand_path(library_path_str, rel_base, MAX_STRING_SIZE, fullpath);
- } else {
-// A filename which is assumed in a system directory
-#if defined(DEFAULT_VK_LAYERS_PATH)
- loader_get_fullpath(library_path_str, DEFAULT_VK_LAYERS_PATH, MAX_STRING_SIZE, fullpath);
-#else
- loader_get_fullpath(library_path_str, "", MAX_STRING_SIZE, fullpath);
-#endif
- }
- }
- } else if (NULL != component_layers) {
- if (version.major == 1 && (version.minor < 1 || version.patch < 1)) {
- loader_log(inst, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "Indicating meta-layer-specific component_layers, but using older "
- "JSON file version.");
- }
- int count = cJSON_GetArraySize(component_layers);
- props->num_component_layers = count;
-
- // Allocate buffer for layer names
- props->component_layer_names =
- loader_instance_heap_alloc(inst, sizeof(char[MAX_STRING_SIZE]) * count, VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE);
- if (NULL == props->component_layer_names) {
- result = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
-
- // Copy the component layers into the array
- for (i = 0; i < count; i++) {
- cJSON *comp_layer = cJSON_GetArrayItem(component_layers, i);
- if (NULL != comp_layer) {
- temp = cJSON_Print(comp_layer);
- if (NULL == temp) {
- result = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
- temp[strlen(temp) - 1] = '\0';
- strncpy(props->component_layer_names[i], temp + 1, MAX_STRING_SIZE - 1);
- props->component_layer_names[i][MAX_STRING_SIZE - 1] = '\0';
- cJSON_Free(temp);
- }
- }
-
- // This is now, officially, a meta-layer
- props->type_flags |= VK_LAYER_TYPE_FLAG_META_LAYER;
- loader_log(inst, VK_DEBUG_REPORT_INFORMATION_BIT_EXT, 0, "Encountered meta-layer %s", name);
-
- // Make sure we set up other things so we head down the correct branches below
- library_path_str = NULL;
- } else {
- loader_log(inst, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "Layer missing both library_path and component_layers fields. One or the "
- "other MUST be defined. Skipping this layer");
- goto out;
- }
-
- props->num_blacklist_layers = 0;
- props->blacklist_layer_names = NULL;
- blacklisted_layers = cJSON_GetObjectItem(layer_node, "blacklisted_layers");
- if (blacklisted_layers != NULL) {
- if (strcmp(name, VK_OVERRIDE_LAYER_NAME)) {
- loader_log(inst, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "Layer %s contains a blacklist, but a blacklist can only be provided by the override metalayer. "
- "This blacklist will be ignored.",
- name);
- } else {
- props->num_blacklist_layers = cJSON_GetArraySize(blacklisted_layers);
- if (props->num_blacklist_layers > 0) {
- // Allocate the blacklist array
- props->blacklist_layer_names = loader_instance_heap_alloc(
- inst, sizeof(char[MAX_STRING_SIZE]) * props->num_blacklist_layers, VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE);
- if (props->blacklist_layer_names == NULL) {
- result = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
-
- // Copy the blacklisted layers into the array
- for (i = 0; i < (int)props->num_blacklist_layers; ++i) {
- cJSON *black_layer = cJSON_GetArrayItem(blacklisted_layers, i);
- if (black_layer == NULL) {
- continue;
- }
- temp = cJSON_Print(black_layer);
- if (temp == NULL) {
- result = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
- temp[strlen(temp) - 1] = '\0';
- strncpy(props->blacklist_layer_names[i], temp + 1, MAX_STRING_SIZE - 1);
- props->blacklist_layer_names[i][MAX_STRING_SIZE - 1] = '\0';
- cJSON_Free(temp);
- }
- }
- }
- }
-
- override_paths = cJSON_GetObjectItem(layer_node, "override_paths");
- if (NULL != override_paths) {
- if (version.major == 1 && (version.minor < 1 || version.patch < 1)) {
- loader_log(inst, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "Indicating meta-layer-specific override paths, but using older "
- "JSON file version.");
- }
- int count = cJSON_GetArraySize(override_paths);
- props->num_override_paths = count;
- if (count > 0) {
- // Allocate buffer for override paths
- props->override_paths =
- loader_instance_heap_alloc(inst, sizeof(char[MAX_STRING_SIZE]) * count, VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE);
- if (NULL == props->override_paths) {
- result = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
-
- // Copy the override paths into the array
- for (i = 0; i < count; i++) {
- cJSON *override_path = cJSON_GetArrayItem(override_paths, i);
- if (NULL != override_path) {
- temp = cJSON_Print(override_path);
- if (NULL == temp) {
- result = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
- temp[strlen(temp) - 1] = '\0';
- strncpy(props->override_paths[i], temp + 1, MAX_STRING_SIZE - 1);
- props->override_paths[i][MAX_STRING_SIZE - 1] = '\0';
- cJSON_Free(temp);
- }
- }
- }
- }
-
- if (is_implicit) {
- GET_JSON_OBJECT(layer_node, disable_environment)
- }
-#undef GET_JSON_ITEM
-#undef GET_JSON_OBJECT
-
- strncpy(props->info.layerName, name, sizeof(props->info.layerName));
- props->info.layerName[sizeof(props->info.layerName) - 1] = '\0';
- props->info.specVersion = loader_make_version(api_version);
- props->info.implementationVersion = atoi(implementation_version);
- strncpy((char *)props->info.description, description, sizeof(props->info.description));
- props->info.description[sizeof(props->info.description) - 1] = '\0';
- if (is_implicit) {
- if (!disable_environment || !disable_environment->child) {
- loader_log(inst, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "Didn't find required layer child value disable_environment"
- "in manifest JSON file, skipping this layer");
- layer_node = layer_node->next;
- goto out;
- }
- strncpy(props->disable_env_var.name, disable_environment->child->string, sizeof(props->disable_env_var.name));
- props->disable_env_var.name[sizeof(props->disable_env_var.name) - 1] = '\0';
- strncpy(props->disable_env_var.value, disable_environment->child->valuestring, sizeof(props->disable_env_var.value));
- props->disable_env_var.value[sizeof(props->disable_env_var.value) - 1] = '\0';
- }
-
-// Now get all optional items and objects and put in list:
-// functions
-// instance_extensions
-// device_extensions
-// enable_environment (implicit layers only)
-#define GET_JSON_OBJECT(node, var) \
- { var = cJSON_GetObjectItem(node, #var); }
-#define GET_JSON_ITEM(node, var) \
- { \
- item = cJSON_GetObjectItem(node, #var); \
- if (item != NULL) { \
- temp = cJSON_Print(item); \
- if (temp != NULL) { \
- temp[strlen(temp) - 1] = '\0'; \
- var = loader_stack_alloc(strlen(temp) + 1); \
- strcpy(var, &temp[1]); \
- cJSON_Free(temp); \
- } else { \
- result = VK_ERROR_OUT_OF_HOST_MEMORY; \
- goto out; \
- } \
- } \
- }
-
- cJSON *instance_extensions, *device_extensions, *functions, *enable_environment;
- cJSON *entrypoints = NULL;
- char *vkGetInstanceProcAddr = NULL;
- char *vkGetDeviceProcAddr = NULL;
- char *vkNegotiateLoaderLayerInterfaceVersion = NULL;
- char *spec_version = NULL;
- char **entry_array = NULL;
- cJSON *app_keys = NULL;
-
- // Layer interface functions
- // vkGetInstanceProcAddr
- // vkGetDeviceProcAddr
- // vkNegotiateLoaderLayerInterfaceVersion (starting with JSON file 1.1.0)
- GET_JSON_OBJECT(layer_node, functions)
- if (functions != NULL) {
- if (version.major > 1 || version.minor >= 1) {
- GET_JSON_ITEM(functions, vkNegotiateLoaderLayerInterfaceVersion)
- if (vkNegotiateLoaderLayerInterfaceVersion != NULL)
- strncpy(props->functions.str_negotiate_interface, vkNegotiateLoaderLayerInterfaceVersion,
- sizeof(props->functions.str_negotiate_interface));
- props->functions.str_negotiate_interface[sizeof(props->functions.str_negotiate_interface) - 1] = '\0';
- } else {
- props->functions.str_negotiate_interface[0] = '\0';
- }
- GET_JSON_ITEM(functions, vkGetInstanceProcAddr)
- GET_JSON_ITEM(functions, vkGetDeviceProcAddr)
- if (vkGetInstanceProcAddr != NULL) {
- strncpy(props->functions.str_gipa, vkGetInstanceProcAddr, sizeof(props->functions.str_gipa));
- if (version.major > 1 || version.minor >= 1) {
- loader_log(inst, VK_DEBUG_REPORT_INFORMATION_BIT_EXT, 0,
- "Layer \"%s\" using deprecated \'vkGetInstanceProcAddr\' tag which was deprecated starting with JSON "
- "file version 1.1.0. The new vkNegotiateLoaderLayerInterfaceVersion function is preferred, though for "
- "compatibility reasons it may be desirable to continue using the deprecated tag.",
- name);
- }
- }
- props->functions.str_gipa[sizeof(props->functions.str_gipa) - 1] = '\0';
- if (vkGetDeviceProcAddr != NULL) {
- strncpy(props->functions.str_gdpa, vkGetDeviceProcAddr, sizeof(props->functions.str_gdpa));
- if (version.major > 1 || version.minor >= 1) {
- loader_log(inst, VK_DEBUG_REPORT_INFORMATION_BIT_EXT, 0,
- "Layer \"%s\" using deprecated \'vkGetDeviceProcAddr\' tag which was deprecated starting with JSON "
- "file version 1.1.0. The new vkNegotiateLoaderLayerInterfaceVersion function is preferred, though for "
- "compatibility reasons it may be desirable to continue using the deprecated tag.",
- name);
- }
- }
- props->functions.str_gdpa[sizeof(props->functions.str_gdpa) - 1] = '\0';
- }
-
- // instance_extensions
- // array of {
- // name
- // spec_version
- // }
- GET_JSON_OBJECT(layer_node, instance_extensions)
- if (instance_extensions != NULL) {
- int count = cJSON_GetArraySize(instance_extensions);
- for (i = 0; i < count; i++) {
- ext_item = cJSON_GetArrayItem(instance_extensions, i);
- GET_JSON_ITEM(ext_item, name)
- if (name != NULL) {
- strncpy(ext_prop.extensionName, name, sizeof(ext_prop.extensionName));
- ext_prop.extensionName[sizeof(ext_prop.extensionName) - 1] = '\0';
- }
- GET_JSON_ITEM(ext_item, spec_version)
- if (NULL != spec_version) {
- ext_prop.specVersion = atoi(spec_version);
- } else {
- ext_prop.specVersion = 0;
- }
- bool ext_unsupported = wsi_unsupported_instance_extension(&ext_prop);
- if (!ext_unsupported) {
- loader_add_to_ext_list(inst, &props->instance_extension_list, 1, &ext_prop);
- }
- }
- }
-
- // device_extensions
- // array of {
- // name
- // spec_version
- // entrypoints
- // }
- GET_JSON_OBJECT(layer_node, device_extensions)
- if (device_extensions != NULL) {
- int count = cJSON_GetArraySize(device_extensions);
- for (i = 0; i < count; i++) {
- ext_item = cJSON_GetArrayItem(device_extensions, i);
- GET_JSON_ITEM(ext_item, name)
- GET_JSON_ITEM(ext_item, spec_version)
- if (name != NULL) {
- strncpy(ext_prop.extensionName, name, sizeof(ext_prop.extensionName));
- ext_prop.extensionName[sizeof(ext_prop.extensionName) - 1] = '\0';
- }
- if (NULL != spec_version) {
- ext_prop.specVersion = atoi(spec_version);
- } else {
- ext_prop.specVersion = 0;
- }
- // entrypoints = cJSON_GetObjectItem(ext_item, "entrypoints");
- GET_JSON_OBJECT(ext_item, entrypoints)
- int entry_count;
- if (entrypoints == NULL) {
- loader_add_to_dev_ext_list(inst, &props->device_extension_list, &ext_prop, 0, NULL);
- continue;
- }
- entry_count = cJSON_GetArraySize(entrypoints);
- if (entry_count) {
- entry_array = (char **)loader_stack_alloc(sizeof(char *) * entry_count);
- }
- for (j = 0; j < entry_count; j++) {
- ext_item = cJSON_GetArrayItem(entrypoints, j);
- if (ext_item != NULL) {
- temp = cJSON_Print(ext_item);
- if (NULL == temp) {
- entry_array[j] = NULL;
- result = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
- temp[strlen(temp) - 1] = '\0';
- entry_array[j] = loader_stack_alloc(strlen(temp) + 1);
- strcpy(entry_array[j], &temp[1]);
- cJSON_Free(temp);
- }
- }
- loader_add_to_dev_ext_list(inst, &props->device_extension_list, &ext_prop, entry_count, entry_array);
- }
- }
- if (is_implicit) {
- GET_JSON_OBJECT(layer_node, enable_environment)
-
- // enable_environment is optional
- if (enable_environment) {
- strncpy(props->enable_env_var.name, enable_environment->child->string, sizeof(props->enable_env_var.name));
- props->enable_env_var.name[sizeof(props->enable_env_var.name) - 1] = '\0';
- strncpy(props->enable_env_var.value, enable_environment->child->valuestring, sizeof(props->enable_env_var.value));
- props->enable_env_var.value[sizeof(props->enable_env_var.value) - 1] = '\0';
- }
- }
-
- // Read in the pre-instance stuff
- cJSON *pre_instance = cJSON_GetObjectItem(layer_node, "pre_instance_functions");
- if (pre_instance) {
- if (!layer_json_supports_pre_instance_tag(&version)) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "Found pre_instance_functions section in layer from \"%s\". "
- "This section is only valid in manifest version 1.1.2 or later. The section will be ignored",
- filename);
- } else if (!is_implicit) {
- loader_log(inst, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "Found pre_instance_functions section in explicit layer from "
- "\"%s\". This section is only valid in implicit layers. The section will be ignored",
- filename);
- } else {
- cJSON *inst_ext_json = cJSON_GetObjectItem(pre_instance, "vkEnumerateInstanceExtensionProperties");
- if (inst_ext_json) {
- char *inst_ext_name = cJSON_Print(inst_ext_json);
- if (inst_ext_name == NULL) {
- result = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
- size_t len = strlen(inst_ext_name) >= MAX_STRING_SIZE ? MAX_STRING_SIZE - 3 : strlen(inst_ext_name) - 2;
- strncpy(props->pre_instance_functions.enumerate_instance_extension_properties, inst_ext_name + 1, len);
- props->pre_instance_functions.enumerate_instance_extension_properties[len] = '\0';
- cJSON_Free(inst_ext_name);
- }
-
- cJSON *inst_layer_json = cJSON_GetObjectItem(pre_instance, "vkEnumerateInstanceLayerProperties");
- if (inst_layer_json) {
- char *inst_layer_name = cJSON_Print(inst_layer_json);
- if (inst_layer_name == NULL) {
- result = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
- size_t len = strlen(inst_layer_name) >= MAX_STRING_SIZE ? MAX_STRING_SIZE - 3 : strlen(inst_layer_name) - 2;
- strncpy(props->pre_instance_functions.enumerate_instance_layer_properties, inst_layer_name + 1, len);
- props->pre_instance_functions.enumerate_instance_layer_properties[len] = '\0';
- cJSON_Free(inst_layer_name);
- }
-
- cJSON *inst_version_json = cJSON_GetObjectItem(pre_instance, "vkEnumerateInstanceVersion");
- if (inst_version_json) {
- char *inst_version_name = cJSON_Print(inst_version_json);
- if (inst_version_json) {
- result = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
- size_t len = strlen(inst_version_name) >= MAX_STRING_SIZE ? MAX_STRING_SIZE - 3 : strlen(inst_version_name) - 2;
- strncpy(props->pre_instance_functions.enumerate_instance_version, inst_version_name + 1, len);
- props->pre_instance_functions.enumerate_instance_version[len] = '\0';
- cJSON_Free(inst_version_name);
- }
- }
- }
-
- props->num_app_key_paths = 0;
- props->app_key_paths = NULL;
- app_keys = cJSON_GetObjectItem(layer_node, "app_keys");
- if (app_keys != NULL) {
- if (strcmp(name, VK_OVERRIDE_LAYER_NAME)) {
- loader_log(inst, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "Layer %s contains app_keys, but any app_keys can only be provided by the override metalayer. "
- "These will be ignored.",
- name);
- } else {
- props->num_app_key_paths = cJSON_GetArraySize(app_keys);
-
- // Allocate the blacklist array
- props->app_key_paths = loader_instance_heap_alloc(inst, sizeof(char[MAX_STRING_SIZE]) * props->num_app_key_paths,
- VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE);
- if (props->app_key_paths == NULL) {
- result = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
-
- // Copy the app_key_paths into the array
- for (i = 0; i < (int)props->num_app_key_paths; ++i) {
- cJSON *app_key_path = cJSON_GetArrayItem(app_keys, i);
- if (app_key_path == NULL) {
- continue;
- }
- temp = cJSON_Print(app_key_path);
- if (temp == NULL) {
- result = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
- temp[strlen(temp) - 1] = '\0';
- strncpy(props->app_key_paths[i], temp + 1, MAX_STRING_SIZE - 1);
- props->app_key_paths[i][MAX_STRING_SIZE - 1] = '\0';
- cJSON_Free(temp);
- }
- }
- }
-
- result = VK_SUCCESS;
-
-out:
-#undef GET_JSON_ITEM
-#undef GET_JSON_OBJECT
-
- if (VK_SUCCESS != result && NULL != props) {
- if (NULL != props->blacklist_layer_names) {
- loader_instance_heap_free(inst, props->blacklist_layer_names);
- }
- if (NULL != props->component_layer_names) {
- loader_instance_heap_free(inst, props->component_layer_names);
- }
- if (NULL != props->override_paths) {
- loader_instance_heap_free(inst, props->override_paths);
- }
- if (NULL != props->app_key_paths) {
- loader_instance_heap_free(inst, props->app_key_paths);
- }
- props->num_blacklist_layers = 0;
- props->blacklist_layer_names = NULL;
- props->num_component_layers = 0;
- props->component_layer_names = NULL;
- props->num_override_paths = 0;
- props->override_paths = NULL;
- props->num_app_key_paths = 0;
- props->app_key_paths = NULL;
- }
-
- return result;
-}
-
-static inline bool isValidLayerJsonVersion(const layer_json_version *layer_json) {
- // Supported versions are: 1.0.0, 1.0.1, and 1.1.0 - 1.1.2.
- if ((layer_json->major == 1 && layer_json->minor == 1 && layer_json->patch < 3) ||
- (layer_json->major == 1 && layer_json->minor == 0 && layer_json->patch < 2)) {
- return true;
- }
- return false;
-}
-
-static inline bool layerJsonSupportsMultipleLayers(const layer_json_version *layer_json) {
- // Supported versions started in 1.0.1, so anything newer
- if ((layer_json->major > 1 || layer_json->minor > 0 || layer_json->patch > 1)) {
- return true;
- }
- return false;
-}
-
-// Given a cJSON struct (json) of the top level JSON object from layer manifest
-// file, add entry to the layer_list. Fill out the layer_properties in this list
-// entry from the input cJSON object.
-//
-// \returns
-// void
-// layer_list has a new entry and initialized accordingly.
-// If the json input object does not have all the required fields no entry
-// is added to the list.
-static VkResult loaderAddLayerProperties(const struct loader_instance *inst, struct loader_layer_list *layer_instance_list,
- cJSON *json, bool is_implicit, char *filename) {
- // The following Fields in layer manifest file that are required:
- // - "file_format_version"
- // - If more than one "layer" object are used, then the "layers" array is
- // required
- VkResult result = VK_ERROR_INITIALIZATION_FAILED;
- cJSON *item, *layers_node, *layer_node;
- layer_json_version json_version = {0, 0, 0};
- char *vers_tok;
- cJSON *disable_environment = NULL;
- // Make sure sure the top level json value is an object
- if (!json || json->type != 6) {
- goto out;
- }
- item = cJSON_GetObjectItem(json, "file_format_version");
- if (item == NULL) {
- goto out;
- }
- char *file_vers = cJSON_PrintUnformatted(item);
- if (NULL == file_vers) {
- goto out;
- }
- loader_log(inst, VK_DEBUG_REPORT_INFORMATION_BIT_EXT, 0, "Found manifest file %s, version %s", filename, file_vers);
- // Get the major/minor/and patch as integers for easier comparison
- vers_tok = strtok(file_vers, ".\"\n\r");
- if (NULL != vers_tok) {
- json_version.major = (uint16_t)atoi(vers_tok);
- vers_tok = strtok(NULL, ".\"\n\r");
- if (NULL != vers_tok) {
- json_version.minor = (uint16_t)atoi(vers_tok);
- vers_tok = strtok(NULL, ".\"\n\r");
- if (NULL != vers_tok) {
- json_version.patch = (uint16_t)atoi(vers_tok);
- }
- }
- }
-
- if (!isValidLayerJsonVersion(&json_version)) {
- loader_log(inst, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "loaderAddLayerProperties: %s invalid layer manifest file version %d.%d.%d. May cause errors.", filename,
- json_version.major, json_version.minor, json_version.patch);
- }
- cJSON_Free(file_vers);
-
- // If "layers" is present, read in the array of layer objects
- layers_node = cJSON_GetObjectItem(json, "layers");
- if (layers_node != NULL) {
- int numItems = cJSON_GetArraySize(layers_node);
- if (!layerJsonSupportsMultipleLayers(&json_version)) {
- loader_log(
- inst, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "loaderAddLayerProperties: \'layers\' tag not supported until file version 1.0.1, but %s is reporting version %s",
- filename, file_vers);
- }
- for (int curLayer = 0; curLayer < numItems; curLayer++) {
- layer_node = cJSON_GetArrayItem(layers_node, curLayer);
- if (layer_node == NULL) {
- loader_log(inst, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "loaderAddLayerProperties: Can not find 'layers' array element %d object in manifest JSON file %s. "
- "Skipping this file",
- curLayer, filename);
- goto out;
- }
- result = loaderReadLayerJson(inst, layer_instance_list, layer_node, json_version, item, disable_environment,
- is_implicit, filename);
- }
- } else {
- // Otherwise, try to read in individual layers
- layer_node = cJSON_GetObjectItem(json, "layer");
- if (layer_node == NULL) {
- loader_log(inst, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "loaderAddLayerProperties: Can not find 'layer' object in manifest JSON file %s. Skipping this file.",
- filename);
- goto out;
- }
- // Loop through all "layer" objects in the file to get a count of them
- // first.
- uint16_t layer_count = 0;
- cJSON *tempNode = layer_node;
- do {
- tempNode = tempNode->next;
- layer_count++;
- } while (tempNode != NULL);
-
- // Throw a warning if we encounter multiple "layer" objects in file
- // versions newer than 1.0.0. Having multiple objects with the same
- // name at the same level is actually a JSON standard violation.
- if (layer_count > 1 && layerJsonSupportsMultipleLayers(&json_version)) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "loaderAddLayerProperties: Multiple 'layer' nodes are deprecated starting in file version \"1.0.1\". "
- "Please use 'layers' : [] array instead in %s.",
- filename);
- } else {
- do {
- result = loaderReadLayerJson(inst, layer_instance_list, layer_node, json_version, item, disable_environment,
- is_implicit, filename);
- layer_node = layer_node->next;
- } while (layer_node != NULL);
- }
- }
-
-out:
-
- return result;
-}
-
-static inline size_t DetermineDataFilePathSize(const char *cur_path, size_t relative_path_size) {
- size_t path_size = 0;
-
- if (NULL != cur_path) {
- // For each folder in cur_path, (detected by finding additional
- // path separators in the string) we need to add the relative path on
- // the end. Plus, leave an additional two slots on the end to add an
- // additional directory slash and path separator if needed
- path_size += strlen(cur_path) + relative_path_size + 2;
- for (const char *x = cur_path; *x; ++x) {
- if (*x == PATH_SEPARATOR) {
- path_size += relative_path_size + 2;
- }
- }
- }
-
- return path_size;
-}
-
-static inline void CopyDataFilePath(const char *cur_path, const char *relative_path, size_t relative_path_size,
- char **output_path) {
- if (NULL != cur_path) {
- uint32_t start = 0;
- uint32_t stop = 0;
- char *cur_write = *output_path;
-
- while (cur_path[start] != '\0') {
- while (cur_path[start] == PATH_SEPARATOR) {
- start++;
- }
- stop = start;
- while (cur_path[stop] != PATH_SEPARATOR && cur_path[stop] != '\0') {
- stop++;
- }
- const size_t s = stop - start;
- if (s) {
- memcpy(cur_write, &cur_path[start], s);
- cur_write += s;
-
- // If last symbol written was not a directory symbol, add it.
- if (*(cur_write - 1) != DIRECTORY_SYMBOL) {
- *cur_write++ = DIRECTORY_SYMBOL;
- }
-
- if (relative_path_size > 0) {
- memcpy(cur_write, relative_path, relative_path_size);
- cur_write += relative_path_size;
- }
- *cur_write++ = PATH_SEPARATOR;
- start = stop;
- }
- }
- *output_path = cur_write;
- }
-}
-
-// Check to see if there's enough space in the data file list. If not, add some.
-static inline VkResult CheckAndAdjustDataFileList(const struct loader_instance *inst, struct loader_data_files *out_files) {
- if (out_files->count == 0) {
- out_files->filename_list = loader_instance_heap_alloc(inst, 64 * sizeof(char *), VK_SYSTEM_ALLOCATION_SCOPE_COMMAND);
- if (NULL == out_files->filename_list) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "CheckAndAdjustDataFileList: Failed to allocate space for manifest file name list");
- return VK_ERROR_OUT_OF_HOST_MEMORY;
- }
- out_files->alloc_count = 64;
- } else if (out_files->count == out_files->alloc_count) {
- size_t new_size = out_files->alloc_count * sizeof(char *) * 2;
- void *new_ptr = loader_instance_heap_realloc(inst, out_files->filename_list, out_files->alloc_count * sizeof(char *),
- new_size, VK_SYSTEM_ALLOCATION_SCOPE_COMMAND);
- if (NULL == new_ptr) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "CheckAndAdjustDataFileList: Failed to reallocate space for manifest file name list");
- return VK_ERROR_OUT_OF_HOST_MEMORY;
- }
- out_files->filename_list = new_ptr;
- out_files->alloc_count *= 2;
- }
-
- return VK_SUCCESS;
-}
-
-// If the file found is a manifest file name, add it to the out_files manifest list.
-static VkResult AddIfManifestFile(const struct loader_instance *inst, const char *file_name, struct loader_data_files *out_files) {
- VkResult vk_result = VK_SUCCESS;
-
- if (NULL == file_name || NULL == out_files) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0, "AddIfManfistFile: Received NULL pointer");
- vk_result = VK_ERROR_INITIALIZATION_FAILED;
- goto out;
- }
-
- // Look for files ending with ".json" suffix
- size_t name_len = strlen(file_name);
- const char *name_suffix = file_name + name_len - 5;
- if ((name_len < 5) || 0 != strncmp(name_suffix, ".json", 5)) {
- // Use incomplete to indicate invalid name, but to keep going.
- vk_result = VK_INCOMPLETE;
- goto out;
- }
-
- // Check and allocate space in the manifest list if necessary
- vk_result = CheckAndAdjustDataFileList(inst, out_files);
- if (VK_SUCCESS != vk_result) {
- goto out;
- }
-
- out_files->filename_list[out_files->count] =
- loader_instance_heap_alloc(inst, strlen(file_name) + 1, VK_SYSTEM_ALLOCATION_SCOPE_COMMAND);
- if (out_files->filename_list[out_files->count] == NULL) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0, "AddIfManfistFile: Failed to allocate space for manifest file %d list",
- out_files->count);
- vk_result = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
-
- strcpy(out_files->filename_list[out_files->count++], file_name);
-
-out:
-
- return vk_result;
-}
-
-static VkResult AddDataFilesInPath(const struct loader_instance *inst, char *search_path, bool is_directory_list,
- struct loader_data_files *out_files, bool use_first_found_manifest) {
- VkResult vk_result = VK_SUCCESS;
- DIR *dir_stream = NULL;
- struct dirent *dir_entry;
- char *cur_file;
- char *next_file;
- char *name;
- char full_path[2048];
-#ifndef _WIN32
- char temp_path[2048];
-#endif
-
- // Now, parse the paths
- next_file = search_path;
- while (NULL != next_file && *next_file != '\0') {
- name = NULL;
- cur_file = next_file;
- next_file = loader_get_next_path(cur_file);
-
- // Get the next name in the list and verify it's valid
- if (is_directory_list) {
- dir_stream = opendir(cur_file);
- if (NULL == dir_stream) {
- continue;
- }
- while (1) {
- dir_entry = readdir(dir_stream);
- if (NULL == dir_entry) {
- break;
- }
-
- name = &(dir_entry->d_name[0]);
- loader_get_fullpath(name, cur_file, sizeof(full_path), full_path);
- name = full_path;
-
- VkResult local_res;
- local_res = AddIfManifestFile(inst, name, out_files);
-
- // Incomplete means this was not a valid data file.
- if (local_res == VK_INCOMPLETE) {
- continue;
- } else if (local_res != VK_SUCCESS) {
- vk_result = local_res;
- break;
- }
- }
- closedir(dir_stream);
- if (vk_result != VK_SUCCESS) {
- goto out;
- }
- } else {
-#ifdef _WIN32
- name = cur_file;
-#else
- // Only Linux has relative paths, make a copy of location so it isn't modified
- size_t str_len;
- if (NULL != next_file) {
- str_len = next_file - cur_file + 1;
- } else {
- str_len = strlen(cur_file) + 1;
- }
- if (str_len > sizeof(temp_path)) {
- loader_log(inst, VK_DEBUG_REPORT_DEBUG_BIT_EXT, 0, "AddDataFilesInPath: Path to %s too long\n", cur_file);
- continue;
- }
- strcpy(temp_path, cur_file);
- name = temp_path;
-#endif
- loader_get_fullpath(cur_file, name, sizeof(full_path), full_path);
- name = full_path;
-
- VkResult local_res;
- local_res = AddIfManifestFile(inst, name, out_files);
-
- // Incomplete means this was not a valid data file.
- if (local_res == VK_INCOMPLETE) {
- continue;
- } else if (local_res != VK_SUCCESS) {
- vk_result = local_res;
- break;
- }
- }
- if (use_first_found_manifest && out_files->count > 0) {
- break;
- }
- }
-
-out:
-
- return vk_result;
-}
-
-// Look for data files in the provided paths, but first check the environment override to determine if we should use that
-// instead.
-static VkResult ReadDataFilesInSearchPaths(const struct loader_instance *inst, enum loader_data_files_type data_file_type,
- const char *env_override, const char *path_override, const char *relative_location,
- bool *override_active, struct loader_data_files *out_files) {
- VkResult vk_result = VK_SUCCESS;
- bool is_directory_list = true;
- bool is_icd = (data_file_type == LOADER_DATA_FILE_MANIFEST_ICD);
- char *override_env = NULL;
- const char *override_path = NULL;
- size_t search_path_size = 0;
- char *search_path = NULL;
- char *cur_path_ptr = NULL;
- size_t rel_size = 0;
- bool use_first_found_manifest = false;
-#ifndef _WIN32
- bool xdgconfig_alloc = true;
- bool xdgdata_alloc = true;
-#endif
-
-#ifndef _WIN32
- // Determine how much space is needed to generate the full search path
- // for the current manifest files.
- char *xdgconfdirs = loader_secure_getenv("XDG_CONFIG_DIRS", inst);
- char *xdgdatadirs = loader_secure_getenv("XDG_DATA_DIRS", inst);
- char *xdgdatahome = loader_secure_getenv("XDG_DATA_HOME", inst);
- char *home = NULL;
- char* home_root = NULL;
-
- if (xdgconfdirs == NULL) {
- xdgconfig_alloc = false;
- }
- if (xdgdatadirs == NULL) {
- xdgdata_alloc = false;
- }
-#if !defined(__Fuchsia__)
- if (xdgconfdirs == NULL || xdgconfdirs[0] == '\0') {
- xdgconfdirs = FALLBACK_CONFIG_DIRS;
- }
- if (xdgdatadirs == NULL || xdgdatadirs[0] == '\0') {
- xdgdatadirs = FALLBACK_DATA_DIRS;
- }
-#endif
-
- // Only use HOME if XDG_DATA_HOME is not present on the system
- if (NULL == xdgdatahome) {
- home = loader_secure_getenv("HOME", inst);
- if (home != NULL) {
- home_root = loader_instance_heap_alloc(inst, strlen(home) + 14, VK_SYSTEM_ALLOCATION_SCOPE_COMMAND);
- if (home_root == NULL) {
- vk_result = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
- strcpy(home_root, home);
- strcat(home_root, "/.local/share");
- }
- }
-#endif
-
- if (path_override != NULL) {
- override_path = path_override;
- } else if (env_override != NULL) {
-#ifndef _WIN32
- if (geteuid() != getuid() || getegid() != getgid()) {
- // Don't allow setuid apps to use the env var:
- env_override = NULL;
- } else
-#endif
- {
- override_env = loader_secure_getenv(env_override, inst);
-
- // The ICD override is actually a specific list of filenames, not directories
- if (is_icd && NULL != override_env) {
- is_directory_list = false;
- }
- override_path = override_env;
- }
- }
-
- // Add two by default for NULL terminator and one path separator on end (just in case)
- search_path_size = 2;
-
- // If there's an override, use that (and the local folder if required) and nothing else
- if (NULL != override_path) {
- // Local folder and null terminator
- search_path_size += strlen(override_path) + 1;
- } else if (NULL == relative_location) {
- // If there's no override, and no relative location, bail out. This is usually
- // the case when we're on Windows and the default path is to use the registry.
- goto out;
- } else {
- // Add the general search folders (with the appropriate relative folder added)
- rel_size = strlen(relative_location);
- if (rel_size == 0) {
- goto out;
- } else {
-#if defined(__APPLE__)
- search_path_size += MAXPATHLEN;
-#endif
-#ifndef _WIN32
- search_path_size += DetermineDataFilePathSize(xdgconfdirs, rel_size);
- search_path_size += DetermineDataFilePathSize(xdgdatadirs, rel_size);
- search_path_size += DetermineDataFilePathSize(SYSCONFDIR, rel_size);
-#if defined(EXTRASYSCONFDIR)
- search_path_size += DetermineDataFilePathSize(EXTRASYSCONFDIR, rel_size);
-#endif
- if (is_directory_list) {
- if (!IsHighIntegrity()) {
- search_path_size += DetermineDataFilePathSize(xdgdatahome, rel_size);
- search_path_size += DetermineDataFilePathSize(home_root, rel_size);
- }
- }
-#endif
- }
- }
-
- // Allocate the required space
- search_path = loader_instance_heap_alloc(inst, search_path_size, VK_SYSTEM_ALLOCATION_SCOPE_COMMAND);
- if (NULL == search_path) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "ReadDataFilesInSearchPaths: Failed to allocate space for search path of length %d", (uint32_t)search_path_size);
- vk_result = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
-
- cur_path_ptr = search_path;
-
- // Add the remaining paths to the list
- if (NULL != override_path) {
- strcpy(cur_path_ptr, override_path);
- } else {
-#ifndef _WIN32
- if (rel_size > 0) {
-#if defined(__APPLE__)
- // Add the bundle's Resources dir to the beginning of the search path.
- // Looks for manifests in the bundle first, before any system directories.
- CFBundleRef main_bundle = CFBundleGetMainBundle();
- if (NULL != main_bundle) {
- CFURLRef ref = CFBundleCopyResourcesDirectoryURL(main_bundle);
- if (NULL != ref) {
- if (CFURLGetFileSystemRepresentation(ref, TRUE, (UInt8 *)cur_path_ptr, search_path_size)) {
- cur_path_ptr += strlen(cur_path_ptr);
- *cur_path_ptr++ = DIRECTORY_SYMBOL;
- memcpy(cur_path_ptr, relative_location, rel_size);
- cur_path_ptr += rel_size;
- *cur_path_ptr++ = PATH_SEPARATOR;
- // only for ICD manifests
- if (env_override != NULL && strcmp(VK_ICD_FILENAMES_ENV_VAR, env_override) == 0) {
- use_first_found_manifest = true;
- }
- }
- CFRelease(ref);
- }
- }
-#endif
- CopyDataFilePath(xdgconfdirs, relative_location, rel_size, &cur_path_ptr);
- CopyDataFilePath(SYSCONFDIR, relative_location, rel_size, &cur_path_ptr);
-#if defined(EXTRASYSCONFDIR)
- CopyDataFilePath(EXTRASYSCONFDIR, relative_location, rel_size, &cur_path_ptr);
-#endif
- CopyDataFilePath(xdgdatadirs, relative_location, rel_size, &cur_path_ptr);
- if (is_directory_list) {
- CopyDataFilePath(xdgdatahome, relative_location, rel_size, &cur_path_ptr);
- CopyDataFilePath(home_root, relative_location, rel_size, &cur_path_ptr);
- }
- }
-
- // Remove the last path separator
- --cur_path_ptr;
-
- assert(cur_path_ptr - search_path < (ptrdiff_t)search_path_size);
- *cur_path_ptr = '\0';
-#endif
- }
-
- // Remove duplicate paths, or it would result in duplicate extensions, duplicate devices, etc.
- // This uses minimal memory, but is O(N^2) on the number of paths. Expect only a few paths.
- char path_sep_str[2] = {PATH_SEPARATOR, '\0'};
- size_t search_path_updated_size = strlen(search_path);
- for (size_t first = 0; first < search_path_updated_size;) {
- // If this is an empty path, erase it
- if (search_path[first] == PATH_SEPARATOR) {
- memmove(&search_path[first], &search_path[first + 1], search_path_updated_size - first + 1);
- search_path_updated_size -= 1;
- continue;
- }
-
- size_t first_end = first + 1;
- first_end += strcspn(&search_path[first_end], path_sep_str);
- for (size_t second = first_end + 1; second < search_path_updated_size;) {
- size_t second_end = second + 1;
- second_end += strcspn(&search_path[second_end], path_sep_str);
- if (first_end - first == second_end - second &&
- !strncmp(&search_path[first], &search_path[second], second_end - second)) {
- // Found duplicate. Include PATH_SEPARATOR in second_end, then erase it from search_path.
- if (search_path[second_end] == PATH_SEPARATOR) {
- second_end++;
- }
- memmove(&search_path[second], &search_path[second_end], search_path_updated_size - second_end + 1);
- search_path_updated_size -= second_end - second;
- } else {
- second = second_end + 1;
- }
- }
- first = first_end + 1;
- }
- search_path_size = search_path_updated_size;
-
- // Print out the paths being searched if debugging is enabled
- if (search_path_size > 0) {
- loader_log(inst, VK_DEBUG_REPORT_DEBUG_BIT_EXT, 0,
- "ReadDataFilesInSearchPaths: Searching the following paths for manifest files: %s\n", search_path);
- }
-
- // Now, parse the paths and add any manifest files found in them.
- vk_result = AddDataFilesInPath(inst, search_path, is_directory_list, out_files, use_first_found_manifest);
-
- if (NULL != override_path) {
- *override_active = true;
- } else {
- *override_active = false;
- }
-
-out:
-
- if (NULL != override_env) {
- loader_free_getenv(override_env, inst);
- }
-#ifndef _WIN32
- if (xdgconfig_alloc) {
- loader_free_getenv(xdgconfdirs, inst);
- }
- if (xdgdata_alloc) {
- loader_free_getenv(xdgdatadirs, inst);
- }
- if (NULL != xdgdatahome) {
- loader_free_getenv(xdgdatahome, inst);
- }
- if (NULL != home) {
- loader_free_getenv(home, inst);
- }
- if (NULL != home_root) {
- loader_instance_heap_free(inst, home_root);
- }
-#endif
-
- if (NULL != search_path) {
- loader_instance_heap_free(inst, search_path);
- }
-
- return vk_result;
-}
-
-#ifdef _WIN32
-// Read manifest JSON files using the Windows driver interface
-static VkResult ReadManifestsFromD3DAdapters(const struct loader_instance *inst, char **reg_data, PDWORD reg_data_size,
- const wchar_t *value_name) {
- VkResult result = VK_INCOMPLETE;
- LoaderEnumAdapters2 adapters = {.adapter_count = 0, .adapters = NULL};
- LoaderQueryRegistryInfo *full_info = NULL;
- size_t full_info_size = 0;
- char *json_path = NULL;
- size_t json_path_size = 0;
-
- PFN_LoaderEnumAdapters2 fpLoaderEnumAdapters2 =
- (PFN_LoaderEnumAdapters2)GetProcAddress(GetModuleHandle("gdi32.dll"), "D3DKMTEnumAdapters2");
- PFN_LoaderQueryAdapterInfo fpLoaderQueryAdapterInfo =
- (PFN_LoaderQueryAdapterInfo)GetProcAddress(GetModuleHandle("gdi32.dll"), "D3DKMTQueryAdapterInfo");
- if (fpLoaderEnumAdapters2 == NULL || fpLoaderQueryAdapterInfo == NULL) {
- result = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
-
- // Get all of the adapters
- NTSTATUS status = fpLoaderEnumAdapters2(&adapters);
- if (status == STATUS_SUCCESS && adapters.adapter_count > 0) {
- adapters.adapters = loader_instance_heap_alloc(inst, sizeof(*adapters.adapters) * adapters.adapter_count,
- VK_SYSTEM_ALLOCATION_SCOPE_COMMAND);
- if (adapters.adapters == NULL) {
- goto out;
- }
- status = fpLoaderEnumAdapters2(&adapters);
- }
- if (status != STATUS_SUCCESS) {
- goto out;
- }
-
- // If that worked, we need to get the manifest file(s) for each adapter
- for (ULONG i = 0; i < adapters.adapter_count; ++i) {
- // The first query should just check if the field exists and how big it is
- LoaderQueryRegistryInfo filename_info = {
- .query_type = LOADER_QUERY_REGISTRY_ADAPTER_KEY,
- .query_flags =
- {
- .translate_path = true,
- },
- .value_type = REG_MULTI_SZ,
- .physical_adapter_index = 0,
- };
- wcsncpy(filename_info.value_name, value_name, sizeof(filename_info.value_name) / sizeof(WCHAR));
- LoaderQueryAdapterInfo query_info = {
- .handle = adapters.adapters[i].handle,
- .type = LOADER_QUERY_TYPE_REGISTRY,
- .private_data = &filename_info,
- .private_data_size = sizeof(filename_info),
- };
- status = fpLoaderQueryAdapterInfo(&query_info);
-
- // This error indicates that the type didn't match, so we'll try a REG_SZ
- if (status != STATUS_SUCCESS) {
- filename_info.value_type = REG_SZ;
- status = fpLoaderQueryAdapterInfo(&query_info);
- }
-
- if (status != STATUS_SUCCESS || filename_info.status != LOADER_QUERY_REGISTRY_STATUS_BUFFER_OVERFLOW) {
- continue;
- }
-
- while (status == STATUS_SUCCESS &&
- ((LoaderQueryRegistryInfo *)query_info.private_data)->status == LOADER_QUERY_REGISTRY_STATUS_BUFFER_OVERFLOW) {
- bool needs_copy = (full_info == NULL);
- size_t full_size = sizeof(LoaderQueryRegistryInfo) + filename_info.output_value_size;
- void *buffer =
- loader_instance_heap_realloc(inst, full_info, full_info_size, full_size, VK_SYSTEM_ALLOCATION_SCOPE_COMMAND);
- if (buffer == NULL) {
- result = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
- full_info = buffer;
- full_info_size = full_size;
-
- if (needs_copy) {
- memcpy(full_info, &filename_info, sizeof(LoaderQueryRegistryInfo));
- }
- query_info.private_data = full_info;
- query_info.private_data_size = (UINT)full_info_size;
- status = fpLoaderQueryAdapterInfo(&query_info);
- }
-
- if (status != STATUS_SUCCESS || full_info->status != LOADER_QUERY_REGISTRY_STATUS_SUCCESS) {
- goto out;
- }
-
- // Convert the wide string to a narrow string
- void *buffer = loader_instance_heap_realloc(inst, json_path, json_path_size, full_info->output_value_size,
- VK_SYSTEM_ALLOCATION_SCOPE_COMMAND);
- if (buffer == NULL) {
- result = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
- json_path = buffer;
- json_path_size = full_info->output_value_size;
-
- // Iterate over each component string
- for (const wchar_t *curr_path = full_info->output_string; curr_path[0] != '\0'; curr_path += wcslen(curr_path) + 1) {
- WideCharToMultiByte(CP_UTF8, 0, curr_path, -1, json_path, (int)json_path_size, NULL, NULL);
-
- // Add the string to the output list
- result = VK_SUCCESS;
- loaderAddJsonEntry(inst, reg_data, reg_data_size, (LPCTSTR)L"EnumAdapters", REG_SZ, json_path,
- (DWORD)strlen(json_path) + 1, &result);
- if (result != VK_SUCCESS) {
- goto out;
- }
-
- // If this is a string and not a multi-string, we don't want to go throught the loop more than once
- if (full_info->value_type == REG_SZ) {
- break;
- }
- }
- }
-
-out:
- if (json_path != NULL) {
- loader_instance_heap_free(inst, json_path);
- }
- if (full_info != NULL) {
- loader_instance_heap_free(inst, full_info);
- }
- if (adapters.adapters != NULL) {
- loader_instance_heap_free(inst, adapters.adapters);
- }
-
- return result;
-}
-
-// Look for data files in the registry.
-static VkResult ReadDataFilesInRegistry(const struct loader_instance *inst, enum loader_data_files_type data_file_type,
- bool warn_if_not_present, char *registry_location, struct loader_data_files *out_files) {
- VkResult vk_result = VK_SUCCESS;
- char *search_path = NULL;
-
- // These calls look at the PNP/Device section of the registry.
- VkResult regHKR_result = VK_SUCCESS;
- DWORD reg_size = 4096;
- if (!strncmp(registry_location, VK_DRIVERS_INFO_REGISTRY_LOC, sizeof(VK_DRIVERS_INFO_REGISTRY_LOC))) {
- // If we're looking for drivers we need to try enumerating adapters
- regHKR_result = ReadManifestsFromD3DAdapters(inst, &search_path, &reg_size, LoaderPnpDriverRegistryWide());
- if (regHKR_result == VK_INCOMPLETE) {
- regHKR_result = loaderGetDeviceRegistryFiles(inst, &search_path, &reg_size, LoaderPnpDriverRegistry());
- }
- } else if (!strncmp(registry_location, VK_ELAYERS_INFO_REGISTRY_LOC, sizeof(VK_ELAYERS_INFO_REGISTRY_LOC))) {
- regHKR_result = ReadManifestsFromD3DAdapters(inst, &search_path, &reg_size, LoaderPnpELayerRegistryWide());
- if (regHKR_result == VK_INCOMPLETE) {
- regHKR_result = loaderGetDeviceRegistryFiles(inst, &search_path, &reg_size, LoaderPnpELayerRegistry());
- }
- } else if (!strncmp(registry_location, VK_ILAYERS_INFO_REGISTRY_LOC, sizeof(VK_ILAYERS_INFO_REGISTRY_LOC))) {
- regHKR_result = ReadManifestsFromD3DAdapters(inst, &search_path, &reg_size, LoaderPnpILayerRegistryWide());
- if (regHKR_result == VK_INCOMPLETE) {
- regHKR_result = loaderGetDeviceRegistryFiles(inst, &search_path, &reg_size, LoaderPnpILayerRegistry());
- }
- }
-
- // This call looks into the Khronos non-device specific section of the registry.
- bool use_secondary_hive = (data_file_type == LOADER_DATA_FILE_MANIFEST_LAYER) && (!IsHighIntegrity());
- VkResult reg_result = loaderGetRegistryFiles(inst, registry_location, use_secondary_hive, &search_path, &reg_size);
-
- if ((VK_SUCCESS != reg_result && VK_SUCCESS != regHKR_result) || NULL == search_path) {
- if (data_file_type == LOADER_DATA_FILE_MANIFEST_ICD) {
- loader_log(
- inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "ReadDataFilesInRegistry: Registry lookup failed to get ICD manifest files. Possibly missing Vulkan driver?");
- if (VK_SUCCESS == reg_result || VK_ERROR_OUT_OF_HOST_MEMORY == reg_result) {
- vk_result = reg_result;
- } else {
- vk_result = regHKR_result;
- }
- } else {
- if (warn_if_not_present) {
- if (data_file_type == LOADER_DATA_FILE_MANIFEST_LAYER) {
- // This is only a warning for layers
- loader_log(inst, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "ReadDataFilesInRegistry: Registry lookup failed to get layer manifest files.");
- } else {
- // This is only a warning for general data files
- loader_log(inst, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "ReadDataFilesInRegistry: Registry lookup failed to get data files.");
- }
- }
- if (reg_result == VK_ERROR_OUT_OF_HOST_MEMORY) {
- vk_result = reg_result;
- } else {
- // Return success for now since it's not critical for layers
- vk_result = VK_SUCCESS;
- }
- }
- goto out;
- }
-
- // Now, parse the paths and add any manifest files found in them.
- vk_result = AddDataFilesInPath(inst, search_path, false, out_files, false);
-
-out:
-
- if (NULL != search_path) {
- loader_instance_heap_free(inst, search_path);
- }
-
- return vk_result;
-}
-#endif // _WIN32
-
-// Find the Vulkan library manifest files.
-//
-// This function scans the "location" or "env_override" directories/files
-// for a list of JSON manifest files. If env_override is non-NULL
-// and has a valid value. Then the location is ignored. Otherwise
-// location is used to look for manifest files. The location
-// is interpreted as Registry path on Windows and a directory path(s)
-// on Linux. "home_location" is an additional directory in the users home
-// directory to look at. It is expanded into the dir path
-// $XDG_DATA_HOME/home_location or $HOME/.local/share/home_location depending
-// on environment variables. This "home_location" is only used on Linux.
-//
-// \returns
-// VKResult
-// A string list of manifest files to be opened in out_files param.
-// List has a pointer to string for each manifest filename.
-// When done using the list in out_files, pointers should be freed.
-// Location or override string lists can be either files or directories as
-// follows:
-// | location | override
-// --------------------------------
-// Win ICD | files | files
-// Win Layer | files | dirs
-// Linux ICD | dirs | files
-// Linux Layer| dirs | dirs
-static VkResult loaderGetDataFiles(const struct loader_instance *inst, enum loader_data_files_type data_file_type,
- bool warn_if_not_present, const char *env_override, const char *path_override,
- char *registry_location, const char *relative_location, struct loader_data_files *out_files) {
- VkResult res = VK_SUCCESS;
- bool override_active = false;
-
- // Free and init the out_files information so there's no false data left from uninitialized variables.
- if (out_files->filename_list != NULL) {
- for (uint32_t i = 0; i < out_files->count; i++) {
- if (NULL != out_files->filename_list[i]) {
- loader_instance_heap_free(inst, out_files->filename_list[i]);
- out_files->filename_list[i] = NULL;
- }
- }
- loader_instance_heap_free(inst, out_files->filename_list);
- }
- out_files->count = 0;
- out_files->alloc_count = 0;
- out_files->filename_list = NULL;
-
- res = ReadDataFilesInSearchPaths(inst, data_file_type, env_override, path_override, relative_location, &override_active,
- out_files);
- if (VK_SUCCESS != res) {
- goto out;
- }
-
-#ifdef _WIN32
- // Read the registry if the override wasn't active.
- if (!override_active) {
- res = ReadDataFilesInRegistry(inst, data_file_type, warn_if_not_present, registry_location, out_files);
- if (VK_SUCCESS != res) {
- goto out;
- }
- }
-#endif
-
-out:
-
- if (VK_SUCCESS != res && NULL != out_files->filename_list) {
- for (uint32_t remove = 0; remove < out_files->count; remove++) {
- loader_instance_heap_free(inst, out_files->filename_list[remove]);
- }
- loader_instance_heap_free(inst, out_files->filename_list);
- out_files->count = 0;
- out_files->alloc_count = 0;
- out_files->filename_list = NULL;
- }
-
- return res;
-}
-
-void loader_init_icd_lib_list() {}
-
-void loader_destroy_icd_lib_list() {}
-
-// Try to find the Vulkan ICD driver(s).
-//
-// This function scans the default system loader path(s) or path
-// specified by the \c VK_ICD_FILENAMES environment variable in
-// order to find loadable VK ICDs manifest files. From these
-// manifest files it finds the ICD libraries.
-//
-// \returns
-// Vulkan result
-// (on result == VK_SUCCESS) a list of icds that were discovered
-VkResult loader_icd_scan(const struct loader_instance *inst, struct loader_icd_tramp_list *icd_tramp_list) {
- char *file_str;
- uint16_t file_major_vers = 0;
- uint16_t file_minor_vers = 0;
- uint16_t file_patch_vers = 0;
- char *vers_tok;
- struct loader_data_files manifest_files;
- VkResult res = VK_SUCCESS;
- bool lockedMutex = false;
- cJSON *json = NULL;
- uint32_t num_good_icds = 0;
-
- memset(&manifest_files, 0, sizeof(struct loader_data_files));
-
- res = loader_scanned_icd_init(inst, icd_tramp_list);
- if (VK_SUCCESS != res) {
- goto out;
- }
- // Get a list of manifest files for ICDs
- res = loaderGetDataFiles(inst, LOADER_DATA_FILE_MANIFEST_ICD, true, VK_ICD_FILENAMES_ENV_VAR, NULL,
- VK_DRIVERS_INFO_REGISTRY_LOC, VK_DRIVERS_INFO_RELATIVE_DIR, &manifest_files);
- if (VK_SUCCESS != res || manifest_files.count == 0) {
- goto out;
- }
- loader_platform_thread_lock_mutex(&loader_json_lock);
- lockedMutex = true;
- for (uint32_t i = 0; i < manifest_files.count; i++) {
- file_str = manifest_files.filename_list[i];
- if (file_str == NULL) {
- continue;
- }
-
- VkResult temp_res = loader_get_json(inst, file_str, &json);
- if (NULL == json || temp_res != VK_SUCCESS) {
- if (NULL != json) {
- cJSON_Delete(json);
- json = NULL;
- }
- // If we haven't already found an ICD, copy this result to
- // the returned result.
- if (num_good_icds == 0) {
- res = temp_res;
- }
- if (temp_res == VK_ERROR_OUT_OF_HOST_MEMORY) {
- res = VK_ERROR_OUT_OF_HOST_MEMORY;
- break;
- } else {
- continue;
- }
- }
- res = temp_res;
-
- cJSON *item, *itemICD;
- item = cJSON_GetObjectItem(json, "file_format_version");
- if (item == NULL) {
- if (num_good_icds == 0) {
- res = VK_ERROR_INITIALIZATION_FAILED;
- }
- loader_log(inst, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "loader_icd_scan: ICD JSON %s does not have a"
- " \'file_format_version\' field. Skipping ICD JSON.",
- file_str);
- cJSON_Delete(json);
- json = NULL;
- continue;
- }
-
- char *file_vers = cJSON_Print(item);
- if (NULL == file_vers) {
- // Only reason the print can fail is if there was an allocation issue
- if (num_good_icds == 0) {
- res = VK_ERROR_OUT_OF_HOST_MEMORY;
- }
- loader_log(inst, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "loader_icd_scan: Failed retrieving ICD JSON %s"
- " \'file_format_version\' field. Skipping ICD JSON",
- file_str);
- cJSON_Delete(json);
- json = NULL;
- continue;
- }
- loader_log(inst, VK_DEBUG_REPORT_INFORMATION_BIT_EXT, 0, "Found ICD manifest file %s, version %s", file_str, file_vers);
-
- // Get the major/minor/and patch as integers for easier comparison
- vers_tok = strtok(file_vers, ".\"\n\r");
- if (NULL != vers_tok) {
- file_major_vers = (uint16_t)atoi(vers_tok);
- vers_tok = strtok(NULL, ".\"\n\r");
- if (NULL != vers_tok) {
- file_minor_vers = (uint16_t)atoi(vers_tok);
- vers_tok = strtok(NULL, ".\"\n\r");
- if (NULL != vers_tok) {
- file_patch_vers = (uint16_t)atoi(vers_tok);
- }
- }
- }
-
- if (file_major_vers != 1 || file_minor_vers != 0 || file_patch_vers > 1) {
- loader_log(inst, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "loader_icd_scan: Unexpected manifest file version "
- "(expected 1.0.0 or 1.0.1), may cause errors");
- }
- cJSON_Free(file_vers);
-
- itemICD = cJSON_GetObjectItem(json, "ICD");
- if (itemICD != NULL) {
- item = cJSON_GetObjectItem(itemICD, "library_path");
- if (item != NULL) {
- char *temp = cJSON_Print(item);
- if (!temp || strlen(temp) == 0) {
- if (num_good_icds == 0) {
- res = VK_ERROR_OUT_OF_HOST_MEMORY;
- }
- loader_log(inst, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "loader_icd_scan: Failed retrieving ICD JSON %s"
- " \'library_path\' field. Skipping ICD JSON.",
- file_str);
- cJSON_Free(temp);
- cJSON_Delete(json);
- json = NULL;
- continue;
- }
- // strip out extra quotes
- temp[strlen(temp) - 1] = '\0';
- char *library_path = loader_stack_alloc(strlen(temp) + 1);
- if (NULL == library_path) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "loader_icd_scan: Failed to allocate space for "
- "ICD JSON %s \'library_path\' value. Skipping "
- "ICD JSON.",
- file_str);
- res = VK_ERROR_OUT_OF_HOST_MEMORY;
- cJSON_Free(temp);
- cJSON_Delete(json);
- json = NULL;
- goto out;
- }
- strcpy(library_path, &temp[1]);
- cJSON_Free(temp);
- if (strlen(library_path) == 0) {
- loader_log(inst, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "loader_icd_scan: ICD JSON %s \'library_path\'"
- " field is empty. Skipping ICD JSON.",
- file_str);
- cJSON_Delete(json);
- json = NULL;
- continue;
- }
- char fullpath[MAX_STRING_SIZE];
- // Print out the paths being searched if debugging is enabled
- loader_log(inst, VK_DEBUG_REPORT_DEBUG_BIT_EXT, 0, "Searching for ICD drivers named %s", library_path);
- if (loader_platform_is_path(library_path)) {
- // a relative or absolute path
- char *name_copy = loader_stack_alloc(strlen(file_str) + 1);
- char *rel_base;
- strcpy(name_copy, file_str);
- rel_base = loader_platform_dirname(name_copy);
- loader_expand_path(library_path, rel_base, sizeof(fullpath), fullpath);
- } else {
-// a filename which is assumed in a system directory
-#if defined(DEFAULT_VK_DRIVERS_PATH)
- loader_get_fullpath(library_path, DEFAULT_VK_DRIVERS_PATH, sizeof(fullpath), fullpath);
-#else
- loader_get_fullpath(library_path, "", sizeof(fullpath), fullpath);
-#endif
- }
-
- uint32_t vers = 0;
- item = cJSON_GetObjectItem(itemICD, "api_version");
- if (item != NULL) {
- temp = cJSON_Print(item);
- if (NULL == temp) {
- loader_log(inst, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "loader_icd_scan: Failed retrieving ICD JSON %s"
- " \'api_version\' field. Skipping ICD JSON.",
- file_str);
-
- // Only reason the print can fail is if there was an
- // allocation issue
- if (num_good_icds == 0) {
- res = VK_ERROR_OUT_OF_HOST_MEMORY;
- }
-
- cJSON_Free(temp);
- cJSON_Delete(json);
- json = NULL;
- continue;
- }
- vers = loader_make_version(temp);
- cJSON_Free(temp);
- } else {
- loader_log(inst, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "loader_icd_scan: ICD JSON %s does not have an"
- " \'api_version\' field.",
- file_str);
- }
-
- res = loader_scanned_icd_add(inst, icd_tramp_list, fullpath, vers);
- if (VK_SUCCESS != res) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "loader_icd_scan: Failed to add ICD JSON %s. "
- " Skipping ICD JSON.",
- fullpath);
- cJSON_Delete(json);
- json = NULL;
- continue;
- }
- num_good_icds++;
- } else {
- loader_log(inst, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "loader_icd_scan: Failed to find \'library_path\' "
- "object in ICD JSON file %s. Skipping ICD JSON.",
- file_str);
- }
- } else {
- loader_log(inst, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "loader_icd_scan: Can not find \'ICD\' object in ICD JSON "
- "file %s. Skipping ICD JSON",
- file_str);
- }
-
- cJSON_Delete(json);
- json = NULL;
- }
-
-out:
-
- if (NULL != json) {
- cJSON_Delete(json);
- }
-
- if (NULL != manifest_files.filename_list) {
- for (uint32_t i = 0; i < manifest_files.count; i++) {
- if (NULL != manifest_files.filename_list[i]) {
- loader_instance_heap_free(inst, manifest_files.filename_list[i]);
- }
- }
- loader_instance_heap_free(inst, manifest_files.filename_list);
- }
- if (lockedMutex) {
- loader_platform_thread_unlock_mutex(&loader_json_lock);
- }
-
- return res;
-}
-
-void loaderScanForLayers(struct loader_instance *inst, struct loader_layer_list *instance_layers) {
- char *file_str;
- struct loader_data_files manifest_files;
- cJSON *json;
- bool override_layer_valid = false;
- char *override_paths = NULL;
- uint32_t total_count = 0;
-
- memset(&manifest_files, 0, sizeof(struct loader_data_files));
-
- // Cleanup any previously scanned libraries
- loaderDeleteLayerListAndProperties(inst, instance_layers);
-
- loader_platform_thread_lock_mutex(&loader_json_lock);
-
- // Get a list of manifest files for any implicit layers
- // Pass NULL for environment variable override - implicit layers are not overridden by LAYERS_PATH_ENV
- if (VK_SUCCESS != loaderGetDataFiles(inst, LOADER_DATA_FILE_MANIFEST_LAYER, false, NULL, NULL, VK_ILAYERS_INFO_REGISTRY_LOC,
- VK_ILAYERS_INFO_RELATIVE_DIR, &manifest_files)) {
- goto out;
- }
-
- if (manifest_files.count != 0) {
- total_count += manifest_files.count;
- for (uint32_t i = 0; i < manifest_files.count; i++) {
- file_str = manifest_files.filename_list[i];
- if (file_str == NULL) {
- continue;
- }
-
- // Parse file into JSON struct
- VkResult res = loader_get_json(inst, file_str, &json);
- if (VK_ERROR_OUT_OF_HOST_MEMORY == res) {
- goto out;
- } else if (VK_SUCCESS != res || NULL == json) {
- continue;
- }
-
- VkResult local_res = loaderAddLayerProperties(inst, instance_layers, json, true, file_str);
- cJSON_Delete(json);
-
- // If the error is anything other than out of memory we still want to try to load the other layers
- if (VK_ERROR_OUT_OF_HOST_MEMORY == local_res) {
- goto out;
- }
- }
- }
-
- // Remove any extraneous override layers.
- RemoveAllNonValidOverrideLayers(inst, instance_layers);
-
- // Check to see if the override layer is present, and use it's override paths.
- for (int32_t i = 0; i < (int32_t)instance_layers->count; i++) {
- struct loader_layer_properties *prop = &instance_layers->list[i];
- if (prop->is_override && loaderImplicitLayerIsEnabled(inst, prop) && prop->num_override_paths > 0) {
- char *cur_write_ptr = NULL;
- size_t override_path_size = 0;
- for (uint32_t j = 0; j < prop->num_override_paths; j++) {
- override_path_size += DetermineDataFilePathSize(prop->override_paths[j], 0);
- }
- override_paths = loader_instance_heap_alloc(inst, override_path_size, VK_SYSTEM_ALLOCATION_SCOPE_COMMAND);
- if (override_paths == NULL) {
- goto out;
- }
- cur_write_ptr = &override_paths[0];
- for (uint32_t j = 0; j < prop->num_override_paths; j++) {
- CopyDataFilePath(prop->override_paths[j], NULL, 0, &cur_write_ptr);
- }
- // Remove the last path separator
- --cur_write_ptr;
- assert(cur_write_ptr - override_paths < (ptrdiff_t)override_path_size);
- *cur_write_ptr = '\0';
- loader_log(NULL, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0, "loaderScanForLayers: Override layer has override paths set to %s",
- override_paths);
- }
- }
-
- // Get a list of manifest files for explicit layers
- if (VK_SUCCESS != loaderGetDataFiles(inst, LOADER_DATA_FILE_MANIFEST_LAYER, true, VK_LAYER_PATH_ENV_VAR, override_paths,
- VK_ELAYERS_INFO_REGISTRY_LOC, VK_ELAYERS_INFO_RELATIVE_DIR, &manifest_files)) {
- goto out;
- }
-
- // Make sure we have at least one layer, if not, go ahead and return
- if (manifest_files.count == 0 && total_count == 0) {
- goto out;
- } else {
- total_count += manifest_files.count;
- for (uint32_t i = 0; i < manifest_files.count; i++) {
- file_str = manifest_files.filename_list[i];
- if (file_str == NULL) {
- continue;
- }
-
- // Parse file into JSON struct
- VkResult res = loader_get_json(inst, file_str, &json);
- if (VK_ERROR_OUT_OF_HOST_MEMORY == res) {
- goto out;
- } else if (VK_SUCCESS != res || NULL == json) {
- continue;
- }
-
- VkResult local_res = loaderAddLayerProperties(inst, instance_layers, json, false, file_str);
- cJSON_Delete(json);
-
- // If the error is anything other than out of memory we still want to try to load the other layers
- if (VK_ERROR_OUT_OF_HOST_MEMORY == local_res) {
- goto out;
- }
- }
- }
-
- // Verify any meta-layers in the list are valid and all the component layers are
- // actually present in the available layer list
- VerifyAllMetaLayers(inst, instance_layers, &override_layer_valid);
-
- if (override_layer_valid) {
- loaderRemoveLayersInBlacklist(inst, instance_layers);
- if (NULL != inst) {
- inst->override_layer_present = true;
- }
- }
-
-out:
-
- if (NULL != override_paths) {
- loader_instance_heap_free(inst, override_paths);
- }
- if (NULL != manifest_files.filename_list) {
- for (uint32_t i = 0; i < manifest_files.count; i++) {
- if (NULL != manifest_files.filename_list[i]) {
- loader_instance_heap_free(inst, manifest_files.filename_list[i]);
- }
- }
- loader_instance_heap_free(inst, manifest_files.filename_list);
- }
- loader_platform_thread_unlock_mutex(&loader_json_lock);
-}
-
-void loaderScanForImplicitLayers(struct loader_instance *inst, struct loader_layer_list *instance_layers) {
- char *file_str;
- struct loader_data_files manifest_files;
- cJSON *json;
- bool override_layer_valid = false;
- char *override_paths = NULL;
- bool implicit_metalayer_present = false;
- bool have_json_lock = false;
-
- // Before we begin anything, init manifest_files to avoid a delete of garbage memory if
- // a failure occurs before allocating the manifest filename_list.
- memset(&manifest_files, 0, sizeof(struct loader_data_files));
-
- // Pass NULL for environment variable override - implicit layers are not overridden by LAYERS_PATH_ENV
- VkResult res = loaderGetDataFiles(inst, LOADER_DATA_FILE_MANIFEST_LAYER, false, NULL, NULL, VK_ILAYERS_INFO_REGISTRY_LOC,
- VK_ILAYERS_INFO_RELATIVE_DIR, &manifest_files);
- if (VK_SUCCESS != res || manifest_files.count == 0) {
- goto out;
- }
-
- // Cleanup any previously scanned libraries
- loaderDeleteLayerListAndProperties(inst, instance_layers);
-
- loader_platform_thread_lock_mutex(&loader_json_lock);
- have_json_lock = true;
-
- for (uint32_t i = 0; i < manifest_files.count; i++) {
- file_str = manifest_files.filename_list[i];
- if (file_str == NULL) {
- continue;
- }
-
- // parse file into JSON struct
- res = loader_get_json(inst, file_str, &json);
- if (VK_ERROR_OUT_OF_HOST_MEMORY == res) {
- goto out;
- } else if (VK_SUCCESS != res || NULL == json) {
- continue;
- }
-
- res = loaderAddLayerProperties(inst, instance_layers, json, true, file_str);
-
- loader_instance_heap_free(inst, file_str);
- manifest_files.filename_list[i] = NULL;
- cJSON_Delete(json);
-
- if (VK_ERROR_OUT_OF_HOST_MEMORY == res) {
- goto out;
- }
- }
-
- // Remove any extraneous override layers.
- RemoveAllNonValidOverrideLayers(inst, instance_layers);
-
- // Check to see if either the override layer is present, or another implicit meta-layer.
- // Each of these may require explicit layers to be enabled at this time.
- for (int32_t i = 0; i < (int32_t)instance_layers->count; i++) {
- struct loader_layer_properties *prop = &instance_layers->list[i];
- if (prop->is_override && loaderImplicitLayerIsEnabled(inst, prop)) {
- override_layer_valid = true;
- if (prop->num_override_paths > 0) {
- char *cur_write_ptr = NULL;
- size_t override_path_size = 0;
- for (uint32_t j = 0; j < prop->num_override_paths; j++) {
- override_path_size += DetermineDataFilePathSize(prop->override_paths[j], 0);
- }
- override_paths = loader_instance_heap_alloc(inst, override_path_size, VK_SYSTEM_ALLOCATION_SCOPE_COMMAND);
- if (override_paths == NULL) {
- goto out;
- }
- cur_write_ptr = &override_paths[0];
- for (uint32_t j = 0; j < prop->num_override_paths; j++) {
- CopyDataFilePath(prop->override_paths[j], NULL, 0, &cur_write_ptr);
- }
- // Remove the last path separator
- --cur_write_ptr;
- assert(cur_write_ptr - override_paths < (ptrdiff_t)override_path_size);
- *cur_write_ptr = '\0';
- loader_log(NULL, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "loaderScanForImplicitLayers: Override layer has override paths set to %s", override_paths);
- }
- } else if (!prop->is_override && prop->type_flags & VK_LAYER_TYPE_FLAG_META_LAYER) {
- implicit_metalayer_present = true;
- }
- }
-
- // If either the override layer or an implicit meta-layer are present, we need to add
- // explicit layer info as well. Not to worry, though, all explicit layers not included
- // in the override layer will be removed below in loaderRemoveLayersInBlacklist().
- if (override_layer_valid || implicit_metalayer_present) {
- if (VK_SUCCESS != loaderGetDataFiles(inst, LOADER_DATA_FILE_MANIFEST_LAYER, true, VK_LAYER_PATH_ENV_VAR, override_paths,
- VK_ELAYERS_INFO_REGISTRY_LOC, VK_ELAYERS_INFO_RELATIVE_DIR, &manifest_files)) {
- goto out;
- }
-
- for (uint32_t i = 0; i < manifest_files.count; i++) {
- file_str = manifest_files.filename_list[i];
- if (file_str == NULL) {
- continue;
- }
-
- // parse file into JSON struct
- res = loader_get_json(inst, file_str, &json);
- if (VK_ERROR_OUT_OF_HOST_MEMORY == res) {
- goto out;
- } else if (VK_SUCCESS != res || NULL == json) {
- continue;
- }
-
- res = loaderAddLayerProperties(inst, instance_layers, json, true, file_str);
-
- loader_instance_heap_free(inst, file_str);
- manifest_files.filename_list[i] = NULL;
- cJSON_Delete(json);
-
- if (VK_ERROR_OUT_OF_HOST_MEMORY == res) {
- goto out;
- }
- }
- }
-
- // Verify any meta-layers in the list are valid and all the component layers are
- // actually present in the available layer list
- VerifyAllMetaLayers(inst, instance_layers, &override_layer_valid);
-
- if (override_layer_valid || implicit_metalayer_present) {
- loaderRemoveLayersNotInImplicitMetaLayers(inst, instance_layers);
- if (override_layer_valid && inst != NULL) {
- inst->override_layer_present = true;
- }
- }
-
-out:
-
- if (NULL != override_paths) {
- loader_instance_heap_free(inst, override_paths);
- }
- for (uint32_t i = 0; i < manifest_files.count; i++) {
- if (NULL != manifest_files.filename_list[i]) {
- loader_instance_heap_free(inst, manifest_files.filename_list[i]);
- }
- }
- if (NULL != manifest_files.filename_list) {
- loader_instance_heap_free(inst, manifest_files.filename_list);
- }
-
- if (have_json_lock) {
- loader_platform_thread_unlock_mutex(&loader_json_lock);
- }
-}
-
-static VKAPI_ATTR PFN_vkVoidFunction VKAPI_CALL loader_gpdpa_instance_internal(VkInstance inst, const char *pName) {
- // inst is not wrapped
- if (inst == VK_NULL_HANDLE) {
- return NULL;
- }
- VkLayerInstanceDispatchTable *disp_table = *(VkLayerInstanceDispatchTable **)inst;
- void *addr;
-
- if (disp_table == NULL) return NULL;
-
- bool found_name;
- addr = loader_lookup_instance_dispatch_table(disp_table, pName, &found_name);
- if (found_name) {
- return addr;
- }
-
- if (loader_phys_dev_ext_gpa(loader_get_instance(inst), pName, true, NULL, &addr)) return addr;
-
- // Don't call down the chain, this would be an infinite loop
- loader_log(NULL, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0, "loader_gpdpa_instance_internal() unrecognized name %s", pName);
- return NULL;
-}
-
-static VKAPI_ATTR PFN_vkVoidFunction VKAPI_CALL loader_gpdpa_instance_terminator(VkInstance inst, const char *pName) {
- // inst is not wrapped
- if (inst == VK_NULL_HANDLE) {
- return NULL;
- }
- VkLayerInstanceDispatchTable *disp_table = *(VkLayerInstanceDispatchTable **)inst;
- void *addr;
-
- if (disp_table == NULL) return NULL;
-
- bool found_name;
- addr = loader_lookup_instance_dispatch_table(disp_table, pName, &found_name);
- if (found_name) {
- return addr;
- }
-
- // Get the terminator, but don't perform checking since it should already
- // have been setup if we get here.
- if (loader_phys_dev_ext_gpa(loader_get_instance(inst), pName, false, NULL, &addr)) {
- return addr;
- }
-
- // Don't call down the chain, this would be an infinite loop
- loader_log(NULL, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0, "loader_gpdpa_instance_terminator() unrecognized name %s", pName);
- return NULL;
-}
-
-static VKAPI_ATTR PFN_vkVoidFunction VKAPI_CALL loader_gpa_instance_internal(VkInstance inst, const char *pName) {
- if (!strcmp(pName, "vkGetInstanceProcAddr")) {
- return (PFN_vkVoidFunction)loader_gpa_instance_internal;
- }
- if (!strcmp(pName, "vk_layerGetPhysicalDeviceProcAddr")) {
- return (PFN_vkVoidFunction)loader_gpdpa_instance_terminator;
- }
- if (!strcmp(pName, "vkCreateInstance")) {
- return (PFN_vkVoidFunction)terminator_CreateInstance;
- }
- if (!strcmp(pName, "vkCreateDevice")) {
- return (PFN_vkVoidFunction)terminator_CreateDevice;
- }
-
- // The VK_EXT_debug_utils functions need a special case here so the terminators can still be found from vkGetInstanceProcAddr
- if (!strcmp(pName, "vkSetDebugUtilsObjectNameEXT")) {
- return (PFN_vkVoidFunction)terminator_SetDebugUtilsObjectNameEXT;
- }
- if (!strcmp(pName, "vkSetDebugUtilsObjectTagEXT")) {
- return (PFN_vkVoidFunction)terminator_SetDebugUtilsObjectTagEXT;
- }
- if (!strcmp(pName, "vkQueueBeginDebugUtilsLabelEXT")) {
- return (PFN_vkVoidFunction)terminator_QueueBeginDebugUtilsLabelEXT;
- }
- if (!strcmp(pName, "vkQueueEndDebugUtilsLabelEXT")) {
- return (PFN_vkVoidFunction)terminator_QueueEndDebugUtilsLabelEXT;
- }
- if (!strcmp(pName, "vkQueueInsertDebugUtilsLabelEXT")) {
- return (PFN_vkVoidFunction)terminator_QueueInsertDebugUtilsLabelEXT;
- }
- if (!strcmp(pName, "vkCmdBeginDebugUtilsLabelEXT")) {
- return (PFN_vkVoidFunction)terminator_CmdBeginDebugUtilsLabelEXT;
- }
- if (!strcmp(pName, "vkCmdEndDebugUtilsLabelEXT")) {
- return (PFN_vkVoidFunction)terminator_CmdEndDebugUtilsLabelEXT;
- }
- if (!strcmp(pName, "vkCmdInsertDebugUtilsLabelEXT")) {
- return (PFN_vkVoidFunction)terminator_CmdInsertDebugUtilsLabelEXT;
- }
-
- // inst is not wrapped
- if (inst == VK_NULL_HANDLE) {
- return NULL;
- }
- VkLayerInstanceDispatchTable *disp_table = *(VkLayerInstanceDispatchTable **)inst;
- void *addr;
-
- if (disp_table == NULL) return NULL;
-
- bool found_name;
- addr = loader_lookup_instance_dispatch_table(disp_table, pName, &found_name);
- if (found_name) {
- return addr;
- }
-
- // Don't call down the chain, this would be an infinite loop
- loader_log(NULL, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0, "loader_gpa_instance_internal() unrecognized name %s", pName);
- return NULL;
-}
-
-VKAPI_ATTR PFN_vkVoidFunction VKAPI_CALL loader_gpa_device_internal(VkDevice device, const char *pName) {
- struct loader_device *dev;
- struct loader_icd_term *icd_term = loader_get_icd_and_device(device, &dev, NULL);
-
- // Return this function if a layer above here is asking for the vkGetDeviceProcAddr.
- // This is so we can properly intercept any device commands needing a terminator.
- if (!strcmp(pName, "vkGetDeviceProcAddr")) {
- return (PFN_vkVoidFunction)loader_gpa_device_internal;
- }
-
- // NOTE: Device Funcs needing Trampoline/Terminator.
- // Overrides for device functions needing a trampoline and
- // a terminator because certain device entry-points still need to go
- // through a terminator before hitting the ICD. This could be for
- // several reasons, but the main one is currently unwrapping an
- // object before passing the appropriate info along to the ICD.
- // This is why we also have to override the direct ICD call to
- // vkGetDeviceProcAddr to intercept those calls.
- PFN_vkVoidFunction addr = get_extension_device_proc_terminator(dev, pName);
- if (NULL != addr) {
- return addr;
- }
-
- return icd_term->dispatch.GetDeviceProcAddr(device, pName);
-}
-
-// Initialize device_ext dispatch table entry as follows:
-// If dev == NULL find all logical devices created within this instance and
-// init the entry (given by idx) in the ext dispatch table.
-// If dev != NULL only initialize the entry in the given dev's dispatch table.
-// The initialization value is gotten by calling down the device chain with
-// GDPA.
-// If GDPA returns NULL then don't initialize the dispatch table entry.
-static void loader_init_dispatch_dev_ext_entry(struct loader_instance *inst, struct loader_device *dev, uint32_t idx,
- const char *funcName)
-
-{
- void *gdpa_value;
- if (dev != NULL) {
- gdpa_value = dev->loader_dispatch.core_dispatch.GetDeviceProcAddr(dev->chain_device, funcName);
- if (gdpa_value != NULL) dev->loader_dispatch.ext_dispatch.dev_ext[idx] = (PFN_vkDevExt)gdpa_value;
- } else {
- for (struct loader_icd_term *icd_term = inst->icd_terms; icd_term != NULL; icd_term = icd_term->next) {
- struct loader_device *ldev = icd_term->logical_device_list;
- while (ldev) {
- gdpa_value = ldev->loader_dispatch.core_dispatch.GetDeviceProcAddr(ldev->chain_device, funcName);
- if (gdpa_value != NULL) ldev->loader_dispatch.ext_dispatch.dev_ext[idx] = (PFN_vkDevExt)gdpa_value;
- ldev = ldev->next;
- }
- }
- }
-}
-
-// Find all dev extension in the hash table and initialize the dispatch table
-// for dev for each of those extension entrypoints found in hash table.
-void loader_init_dispatch_dev_ext(struct loader_instance *inst, struct loader_device *dev) {
- for (uint32_t i = 0; i < MAX_NUM_UNKNOWN_EXTS; i++) {
- if (inst->dev_ext_disp_hash[i].func_name != NULL)
- loader_init_dispatch_dev_ext_entry(inst, dev, i, inst->dev_ext_disp_hash[i].func_name);
- }
-}
-
-static bool loader_check_icds_for_dev_ext_address(struct loader_instance *inst, const char *funcName) {
- struct loader_icd_term *icd_term;
- icd_term = inst->icd_terms;
- while (NULL != icd_term) {
- if (icd_term->scanned_icd->GetInstanceProcAddr(icd_term->instance, funcName))
- // this icd supports funcName
- return true;
- icd_term = icd_term->next;
- }
-
- return false;
-}
-
-static bool loader_check_layer_list_for_dev_ext_address(const struct loader_layer_list *const layers, const char *funcName) {
- // Iterate over the layers.
- for (uint32_t layer = 0; layer < layers->count; ++layer) {
- // Iterate over the extensions.
- const struct loader_device_extension_list *const extensions = &(layers->list[layer].device_extension_list);
- for (uint32_t extension = 0; extension < extensions->count; ++extension) {
- // Iterate over the entry points.
- const struct loader_dev_ext_props *const property = &(extensions->list[extension]);
- for (uint32_t entry = 0; entry < property->entrypoint_count; ++entry) {
- if (strcmp(property->entrypoints[entry], funcName) == 0) {
- return true;
- }
- }
- }
- }
-
- return false;
-}
-
-static void loader_free_dev_ext_table(struct loader_instance *inst) {
- for (uint32_t i = 0; i < MAX_NUM_UNKNOWN_EXTS; i++) {
- loader_instance_heap_free(inst, inst->dev_ext_disp_hash[i].func_name);
- loader_instance_heap_free(inst, inst->dev_ext_disp_hash[i].list.index);
- }
- memset(inst->dev_ext_disp_hash, 0, sizeof(inst->dev_ext_disp_hash));
-}
-
-static bool loader_add_dev_ext_table(struct loader_instance *inst, uint32_t *ptr_idx, const char *funcName) {
- uint32_t i;
- uint32_t idx = *ptr_idx;
- struct loader_dispatch_hash_list *list = &inst->dev_ext_disp_hash[idx].list;
-
- if (!inst->dev_ext_disp_hash[idx].func_name) {
- // no entry here at this idx, so use it
- assert(list->capacity == 0);
- inst->dev_ext_disp_hash[idx].func_name =
- (char *)loader_instance_heap_alloc(inst, strlen(funcName) + 1, VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE);
- if (inst->dev_ext_disp_hash[idx].func_name == NULL) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "loader_add_dev_ext_table: Failed to allocate memory "
- "for func_name %s",
- funcName);
- return false;
- }
- strncpy(inst->dev_ext_disp_hash[idx].func_name, funcName, strlen(funcName) + 1);
- return true;
- }
-
- // check for enough capacity
- if (list->capacity == 0) {
- list->index = loader_instance_heap_alloc(inst, 8 * sizeof(*(list->index)), VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE);
- if (list->index == NULL) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "loader_add_dev_ext_table: Failed to allocate memory for list index of function %s", funcName);
- return false;
- }
- list->capacity = 8 * sizeof(*(list->index));
- } else if (list->capacity < (list->count + 1) * sizeof(*(list->index))) {
- void *new_ptr = loader_instance_heap_realloc(inst, list->index, list->capacity, list->capacity * 2,
- VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE);
- if (NULL == new_ptr) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "loader_add_dev_ext_table: Failed to reallocate memory for list index of function %s", funcName);
- return false;
- }
- list->index = new_ptr;
- list->capacity *= 2;
- }
-
- // find an unused index in the hash table and use it
- i = (idx + 1) % MAX_NUM_UNKNOWN_EXTS;
- do {
- if (!inst->dev_ext_disp_hash[i].func_name) {
- assert(inst->dev_ext_disp_hash[i].list.capacity == 0);
- inst->dev_ext_disp_hash[i].func_name =
- (char *)loader_instance_heap_alloc(inst, strlen(funcName) + 1, VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE);
- if (inst->dev_ext_disp_hash[i].func_name == NULL) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "loader_add_dev_ext_table: Failed to allocate memory "
- "for func_name %s",
- funcName);
- return false;
- }
- strncpy(inst->dev_ext_disp_hash[i].func_name, funcName, strlen(funcName) + 1);
- list->index[list->count] = i;
- list->count++;
- *ptr_idx = i;
- return true;
- }
- i = (i + 1) % MAX_NUM_UNKNOWN_EXTS;
- } while (i != idx);
-
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "loader_add_dev_ext_table: Could not insert into hash table; is "
- "it full?");
-
- return false;
-}
-
-static bool loader_name_in_dev_ext_table(struct loader_instance *inst, uint32_t *idx, const char *funcName) {
- uint32_t alt_idx;
- if (inst->dev_ext_disp_hash[*idx].func_name && !strcmp(inst->dev_ext_disp_hash[*idx].func_name, funcName)) return true;
-
- // funcName wasn't at the primary spot in the hash table
- // search the list of secondary locations (shallow search, not deep search)
- for (uint32_t i = 0; i < inst->dev_ext_disp_hash[*idx].list.count; i++) {
- alt_idx = inst->dev_ext_disp_hash[*idx].list.index[i];
- if (!strcmp(inst->dev_ext_disp_hash[*idx].func_name, funcName)) {
- *idx = alt_idx;
- return true;
- }
- }
-
- return false;
-}
-
-// This function returns generic trampoline code address for unknown entry
-// points.
-// Presumably, these unknown entry points (as given by funcName) are device
-// extension entrypoints. A hash table is used to keep a list of unknown entry
-// points and their mapping to the device extension dispatch table
-// (struct loader_dev_ext_dispatch_table).
-// \returns
-// For a given entry point string (funcName), if an existing mapping is found
-// the
-// trampoline address for that mapping is returned. Otherwise, this unknown
-// entry point
-// has not been seen yet. Next check if a layer or ICD supports it. If so then
-// a
-// new entry in the hash table is initialized and that trampoline address for
-// the new entry is returned. Null is returned if the hash table is full or
-// if no discovered layer or ICD returns a non-NULL GetProcAddr for it.
-void *loader_dev_ext_gpa(struct loader_instance *inst, const char *funcName) {
- uint32_t idx;
- uint32_t seed = 0;
-
- idx = murmurhash(funcName, strlen(funcName), seed) % MAX_NUM_UNKNOWN_EXTS;
-
- if (loader_name_in_dev_ext_table(inst, &idx, funcName))
- // found funcName already in hash
- return loader_get_dev_ext_trampoline(idx);
-
- // Check if funcName is supported in either ICDs or a layer library
- if (!loader_check_icds_for_dev_ext_address(inst, funcName) &&
- !loader_check_layer_list_for_dev_ext_address(&inst->app_activated_layer_list, funcName)) {
- // if support found in layers continue on
- return NULL;
- }
-
- if (loader_add_dev_ext_table(inst, &idx, funcName)) {
- // successfully added new table entry
- // init any dev dispatch table entries as needed
- loader_init_dispatch_dev_ext_entry(inst, NULL, idx, funcName);
- return loader_get_dev_ext_trampoline(idx);
- }
-
- return NULL;
-}
-
-static bool loader_check_icds_for_phys_dev_ext_address(struct loader_instance *inst, const char *funcName) {
- struct loader_icd_term *icd_term;
- icd_term = inst->icd_terms;
- while (NULL != icd_term) {
- if (icd_term->scanned_icd->interface_version >= MIN_PHYS_DEV_EXTENSION_ICD_INTERFACE_VERSION &&
- icd_term->scanned_icd->GetPhysicalDeviceProcAddr(icd_term->instance, funcName))
- // this icd supports funcName
- return true;
- icd_term = icd_term->next;
- }
-
- return false;
-}
-
-static bool loader_check_layer_list_for_phys_dev_ext_address(struct loader_instance *inst, const char *funcName) {
- struct loader_layer_properties *layer_prop_list = inst->expanded_activated_layer_list.list;
- for (uint32_t layer = 0; layer < inst->expanded_activated_layer_list.count; ++layer) {
- // If this layer supports the vk_layerGetPhysicalDeviceProcAddr, then call
- // it and see if it returns a valid pointer for this function name.
- if (layer_prop_list[layer].interface_version > 1) {
- const struct loader_layer_functions *const functions = &(layer_prop_list[layer].functions);
- if (NULL != functions->get_physical_device_proc_addr &&
- NULL != functions->get_physical_device_proc_addr((VkInstance)inst->instance, funcName)) {
- return true;
- }
- }
- }
-
- return false;
-}
-
-static void loader_free_phys_dev_ext_table(struct loader_instance *inst) {
- for (uint32_t i = 0; i < MAX_NUM_UNKNOWN_EXTS; i++) {
- loader_instance_heap_free(inst, inst->phys_dev_ext_disp_hash[i].func_name);
- loader_instance_heap_free(inst, inst->phys_dev_ext_disp_hash[i].list.index);
- }
- memset(inst->phys_dev_ext_disp_hash, 0, sizeof(inst->phys_dev_ext_disp_hash));
-}
-
-static bool loader_add_phys_dev_ext_table(struct loader_instance *inst, uint32_t *ptr_idx, const char *funcName) {
- uint32_t i;
- uint32_t idx = *ptr_idx;
- struct loader_dispatch_hash_list *list = &inst->phys_dev_ext_disp_hash[idx].list;
-
- if (!inst->phys_dev_ext_disp_hash[idx].func_name) {
- // no entry here at this idx, so use it
- assert(list->capacity == 0);
- inst->phys_dev_ext_disp_hash[idx].func_name =
- (char *)loader_instance_heap_alloc(inst, strlen(funcName) + 1, VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE);
- if (inst->phys_dev_ext_disp_hash[idx].func_name == NULL) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "loader_add_phys_dev_ext_table() can't allocate memory for "
- "func_name");
- return false;
- }
- strncpy(inst->phys_dev_ext_disp_hash[idx].func_name, funcName, strlen(funcName) + 1);
- return true;
- }
-
- // check for enough capacity
- if (list->capacity == 0) {
- list->index = loader_instance_heap_alloc(inst, 8 * sizeof(*(list->index)), VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE);
- if (list->index == NULL) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0, "loader_add_phys_dev_ext_table() can't allocate list memory");
- return false;
- }
- list->capacity = 8 * sizeof(*(list->index));
- } else if (list->capacity < (list->count + 1) * sizeof(*(list->index))) {
- void *new_ptr = loader_instance_heap_realloc(inst, list->index, list->capacity, list->capacity * 2,
- VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE);
- if (NULL == new_ptr) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0, "loader_add_phys_dev_ext_table() can't reallocate list memory");
- return false;
- }
- list->index = new_ptr;
- list->capacity *= 2;
- }
-
- // find an unused index in the hash table and use it
- i = (idx + 1) % MAX_NUM_UNKNOWN_EXTS;
- do {
- if (!inst->phys_dev_ext_disp_hash[i].func_name) {
- assert(inst->phys_dev_ext_disp_hash[i].list.capacity == 0);
- inst->phys_dev_ext_disp_hash[i].func_name =
- (char *)loader_instance_heap_alloc(inst, strlen(funcName) + 1, VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE);
- if (inst->phys_dev_ext_disp_hash[i].func_name == NULL) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "loader_add_dev_ext_table() can't reallocate "
- "func_name memory");
- return false;
- }
- strncpy(inst->phys_dev_ext_disp_hash[i].func_name, funcName, strlen(funcName) + 1);
- list->index[list->count] = i;
- list->count++;
- *ptr_idx = i;
- return true;
- }
- i = (i + 1) % MAX_NUM_UNKNOWN_EXTS;
- } while (i != idx);
-
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "loader_add_phys_dev_ext_table() couldn't insert into hash table; is "
- "it full?");
- return false;
-}
-
-static bool loader_name_in_phys_dev_ext_table(struct loader_instance *inst, uint32_t *idx, const char *funcName) {
- uint32_t alt_idx;
- if (inst->phys_dev_ext_disp_hash[*idx].func_name && !strcmp(inst->phys_dev_ext_disp_hash[*idx].func_name, funcName))
- return true;
-
- // funcName wasn't at the primary spot in the hash table
- // search the list of secondary locations (shallow search, not deep search)
- for (uint32_t i = 0; i < inst->phys_dev_ext_disp_hash[*idx].list.count; i++) {
- alt_idx = inst->phys_dev_ext_disp_hash[*idx].list.index[i];
- if (!strcmp(inst->phys_dev_ext_disp_hash[*idx].func_name, funcName)) {
- *idx = alt_idx;
- return true;
- }
- }
-
- return false;
-}
-
-// This function returns a generic trampoline and/or terminator function
-// address for any unknown physical device extension commands. A hash
-// table is used to keep a list of unknown entry points and their
-// mapping to the physical device extension dispatch table (struct
-// loader_phys_dev_ext_dispatch_table).
-// For a given entry point string (funcName), if an existing mapping is
-// found, then the trampoline address for that mapping is returned in
-// tramp_addr (if it is not NULL) and the terminator address for that
-// mapping is returned in term_addr (if it is not NULL). Otherwise,
-// this unknown entry point has not been seen yet.
-// If it has not been seen before, and perform_checking is 'true',
-// check if a layer or and ICD supports it. If so then a new entry in
-// the hash table is initialized and the trampoline and/or terminator
-// addresses are returned.
-// Null is returned if the hash table is full or if no discovered layer or
-// ICD returns a non-NULL GetProcAddr for it.
-bool loader_phys_dev_ext_gpa(struct loader_instance *inst, const char *funcName, bool perform_checking, void **tramp_addr,
- void **term_addr) {
- uint32_t idx;
- uint32_t seed = 0;
- bool success = false;
-
- if (inst == NULL) {
- goto out;
- }
-
- if (NULL != tramp_addr) {
- *tramp_addr = NULL;
- }
- if (NULL != term_addr) {
- *term_addr = NULL;
- }
-
- // We should always check to see if any ICD supports it.
- if (!loader_check_icds_for_phys_dev_ext_address(inst, funcName)) {
- // If we're not checking layers, or we are and it's not in a layer, just
- // return
- if (!perform_checking || !loader_check_layer_list_for_phys_dev_ext_address(inst, funcName)) {
- goto out;
- }
- }
-
- idx = murmurhash(funcName, strlen(funcName), seed) % MAX_NUM_UNKNOWN_EXTS;
- if (perform_checking && !loader_name_in_phys_dev_ext_table(inst, &idx, funcName)) {
- uint32_t i;
- bool added = false;
-
- // Only need to add first one to get index in Instance. Others will use
- // the same index.
- if (!added && loader_add_phys_dev_ext_table(inst, &idx, funcName)) {
- added = true;
- }
-
- // Setup the ICD function pointers
- struct loader_icd_term *icd_term = inst->icd_terms;
- while (NULL != icd_term) {
- if (MIN_PHYS_DEV_EXTENSION_ICD_INTERFACE_VERSION <= icd_term->scanned_icd->interface_version &&
- NULL != icd_term->scanned_icd->GetPhysicalDeviceProcAddr) {
- icd_term->phys_dev_ext[idx] =
- (PFN_PhysDevExt)icd_term->scanned_icd->GetPhysicalDeviceProcAddr(icd_term->instance, funcName);
-
- // Make sure we set the instance dispatch to point to the
- // loader's terminator now since we can at least handle it
- // in one ICD.
- inst->disp->phys_dev_ext[idx] = loader_get_phys_dev_ext_termin(idx);
- } else {
- icd_term->phys_dev_ext[idx] = NULL;
- }
-
- icd_term = icd_term->next;
- }
-
- // Now, search for the first layer attached and query using it to get
- // the first entry point.
- for (i = 0; i < inst->expanded_activated_layer_list.count; i++) {
- struct loader_layer_properties *layer_prop = &inst->expanded_activated_layer_list.list[i];
- if (layer_prop->interface_version > 1 && NULL != layer_prop->functions.get_physical_device_proc_addr) {
- inst->disp->phys_dev_ext[idx] =
- (PFN_PhysDevExt)layer_prop->functions.get_physical_device_proc_addr((VkInstance)inst->instance, funcName);
- if (NULL != inst->disp->phys_dev_ext[idx]) {
- break;
- }
- }
- }
- }
-
- if (NULL != tramp_addr) {
- *tramp_addr = loader_get_phys_dev_ext_tramp(idx);
- }
-
- if (NULL != term_addr) {
- *term_addr = loader_get_phys_dev_ext_termin(idx);
- }
-
- success = true;
-
-out:
- return success;
-}
-
-struct loader_instance *loader_get_instance(const VkInstance instance) {
- // look up the loader_instance in our list by comparing dispatch tables, as
- // there is no guarantee the instance is still a loader_instance* after any
- // layers which wrap the instance object.
- const VkLayerInstanceDispatchTable *disp;
- struct loader_instance *ptr_instance = NULL;
- disp = loader_get_instance_layer_dispatch(instance);
- for (struct loader_instance *inst = loader.instances; inst; inst = inst->next) {
- if (&inst->disp->layer_inst_disp == disp) {
- ptr_instance = inst;
- break;
- }
- }
- return ptr_instance;
-}
-
-static loader_platform_dl_handle loaderOpenLayerFile(const struct loader_instance *inst, const char *chain_type,
- struct loader_layer_properties *prop) {
- if ((prop->lib_handle = loader_platform_open_library(prop->lib_name)) == NULL) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0, loader_platform_open_library_error(prop->lib_name));
- } else {
- loader_log(inst, VK_DEBUG_REPORT_DEBUG_BIT_EXT, 0, "Loading layer library %s", prop->lib_name);
- }
-
- return prop->lib_handle;
-}
-
-static void loaderCloseLayerFile(const struct loader_instance *inst, struct loader_layer_properties *prop) {
- if (prop->lib_handle) {
- loader_platform_close_library(prop->lib_handle);
- loader_log(inst, VK_DEBUG_REPORT_DEBUG_BIT_EXT, 0, "Unloading layer library %s", prop->lib_name);
- prop->lib_handle = NULL;
- }
-}
-
-void loaderDeactivateLayers(const struct loader_instance *instance, struct loader_device *device, struct loader_layer_list *list) {
- // Delete instance list of enabled layers and close any layer libraries
- for (uint32_t i = 0; i < list->count; i++) {
- struct loader_layer_properties *layer_prop = &list->list[i];
-
- loaderCloseLayerFile(instance, layer_prop);
- }
- loaderDestroyLayerList(instance, device, list);
-}
-
-// Go through the search_list and find any layers which match type. If layer
-// type match is found in then add it to ext_list.
-static void loaderAddImplicitLayers(const struct loader_instance *inst, struct loader_layer_list *target_list,
- struct loader_layer_list *expanded_target_list, const struct loader_layer_list *source_list) {
- for (uint32_t src_layer = 0; src_layer < source_list->count; src_layer++) {
- const struct loader_layer_properties *prop = &source_list->list[src_layer];
- if (0 == (prop->type_flags & VK_LAYER_TYPE_FLAG_EXPLICIT_LAYER)) {
- loaderAddImplicitLayer(inst, prop, target_list, expanded_target_list, source_list);
- }
- }
-}
-
-// Get the layer name(s) from the env_name environment variable. If layer is found in
-// search_list then add it to layer_list. But only add it to layer_list if type_flags matches.
-static VkResult loaderAddEnvironmentLayers(struct loader_instance *inst, const enum layer_type_flags type_flags,
- const char *env_name, struct loader_layer_list *target_list,
- struct loader_layer_list *expanded_target_list,
- const struct loader_layer_list *source_list) {
- VkResult res = VK_SUCCESS;
- char *next, *name;
- char *layer_env = loader_getenv(env_name, inst);
- if (layer_env == NULL) {
- goto out;
- }
- name = loader_stack_alloc(strlen(layer_env) + 1);
- if (name == NULL) {
- goto out;
- }
- strcpy(name, layer_env);
-
- while (name && *name) {
- next = loader_get_next_path(name);
- res = loaderAddLayerNameToList(inst, name, type_flags, source_list, target_list, expanded_target_list);
- if (res != VK_SUCCESS) {
- goto out;
- }
- name = next;
- }
-
-out:
-
- if (layer_env != NULL) {
- loader_free_getenv(layer_env, inst);
- }
-
- return res;
-}
-
-VkResult loaderEnableInstanceLayers(struct loader_instance *inst, const VkInstanceCreateInfo *pCreateInfo,
- const struct loader_layer_list *instance_layers) {
- VkResult err = VK_SUCCESS;
- uint16_t layer_api_major_version;
- uint16_t layer_api_minor_version;
- uint32_t i;
- struct loader_layer_properties *prop;
-
- assert(inst && "Cannot have null instance");
-
- if (!loaderInitLayerList(inst, &inst->app_activated_layer_list)) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "loaderEnableInstanceLayers: Failed to initialize application version of the layer list");
- return VK_ERROR_OUT_OF_HOST_MEMORY;
- }
-
- if (!loaderInitLayerList(inst, &inst->expanded_activated_layer_list)) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "loaderEnableInstanceLayers: Failed to initialize expanded version of the layer list");
- return VK_ERROR_OUT_OF_HOST_MEMORY;
- }
-
- // Add any implicit layers first
- loaderAddImplicitLayers(inst, &inst->app_activated_layer_list, &inst->expanded_activated_layer_list, instance_layers);
-
- // Add any layers specified via environment variable next
- err = loaderAddEnvironmentLayers(inst, VK_LAYER_TYPE_FLAG_EXPLICIT_LAYER, "VK_INSTANCE_LAYERS", &inst->app_activated_layer_list,
- &inst->expanded_activated_layer_list, instance_layers);
- if (err != VK_SUCCESS) {
- goto out;
- }
-
- // Add layers specified by the application
- err = loaderAddLayerNamesToList(inst, &inst->app_activated_layer_list, &inst->expanded_activated_layer_list,
- pCreateInfo->enabledLayerCount, pCreateInfo->ppEnabledLayerNames, instance_layers);
-
- for (i = 0; i < inst->expanded_activated_layer_list.count; i++) {
- // Verify that the layer api version is at least that of the application's request, if not, throw a warning since
- // undefined behavior could occur.
- prop = inst->expanded_activated_layer_list.list + i;
- layer_api_major_version = VK_VERSION_MAJOR(prop->info.specVersion);
- layer_api_minor_version = VK_VERSION_MINOR(prop->info.specVersion);
- if (inst->app_api_major_version > layer_api_major_version ||
- (inst->app_api_major_version == layer_api_major_version && inst->app_api_minor_version > layer_api_minor_version)) {
- loader_log(inst, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "loader_add_to_layer_list: Explicit layer %s is using an old API version %" PRIu16 ".%" PRIu16
- " versus application requested %" PRIu16 ".%" PRIu16,
- prop->info.layerName, layer_api_major_version, layer_api_minor_version, inst->app_api_major_version,
- inst->app_api_minor_version);
- }
- }
-
-out:
- return err;
-}
-
-// Determine the layer interface version to use.
-bool loaderGetLayerInterfaceVersion(PFN_vkNegotiateLoaderLayerInterfaceVersion fp_negotiate_layer_version,
- VkNegotiateLayerInterface *interface_struct) {
- memset(interface_struct, 0, sizeof(VkNegotiateLayerInterface));
- interface_struct->sType = LAYER_NEGOTIATE_INTERFACE_STRUCT;
- interface_struct->loaderLayerInterfaceVersion = 1;
- interface_struct->pNext = NULL;
-
- if (fp_negotiate_layer_version != NULL) {
- // Layer supports the negotiation API, so call it with the loader's
- // latest version supported
- interface_struct->loaderLayerInterfaceVersion = CURRENT_LOADER_LAYER_INTERFACE_VERSION;
- VkResult result = fp_negotiate_layer_version(interface_struct);
-
- if (result != VK_SUCCESS) {
- // Layer no longer supports the loader's latest interface version so
- // fail loading the Layer
- return false;
- }
- }
-
- if (interface_struct->loaderLayerInterfaceVersion < MIN_SUPPORTED_LOADER_LAYER_INTERFACE_VERSION) {
- // Loader no longer supports the layer's latest interface version so
- // fail loading the layer
- return false;
- }
-
- return true;
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL loader_layer_create_device(VkInstance instance, VkPhysicalDevice physicalDevice,
- const VkDeviceCreateInfo *pCreateInfo,
- const VkAllocationCallbacks *pAllocator, VkDevice *pDevice,
- PFN_vkGetInstanceProcAddr layerGIPA, PFN_vkGetDeviceProcAddr *nextGDPA) {
- VkResult res;
- VkPhysicalDevice internal_device = VK_NULL_HANDLE;
- struct loader_device *dev = NULL;
- struct loader_instance *inst = NULL;
-
- if (instance != NULL) {
- inst = loader_get_instance(instance);
- internal_device = physicalDevice;
- } else {
- struct loader_physical_device_tramp *phys_dev = (struct loader_physical_device_tramp *)physicalDevice;
- internal_device = phys_dev->phys_dev;
- inst = (struct loader_instance *)phys_dev->this_instance;
- }
-
- // Get the physical device (ICD) extensions
- struct loader_extension_list icd_exts;
- icd_exts.list = NULL;
- res = loader_init_generic_list(inst, (struct loader_generic_list *)&icd_exts, sizeof(VkExtensionProperties));
- if (VK_SUCCESS != res) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0, "vkCreateDevice: Failed to create ICD extension list");
- goto out;
- }
-
- PFN_vkEnumerateDeviceExtensionProperties enumDeviceExtensionProperties = NULL;
- if (layerGIPA != NULL) {
- enumDeviceExtensionProperties =
- (PFN_vkEnumerateDeviceExtensionProperties)layerGIPA(instance, "vkEnumerateDeviceExtensionProperties");
- } else {
- enumDeviceExtensionProperties = inst->disp->layer_inst_disp.EnumerateDeviceExtensionProperties;
- }
- res = loader_add_device_extensions(inst, enumDeviceExtensionProperties, internal_device, "Unknown", &icd_exts);
- if (res != VK_SUCCESS) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0, "vkCreateDevice: Failed to add extensions to list");
- goto out;
- }
-
- // Make sure requested extensions to be enabled are supported
- res = loader_validate_device_extensions(inst, &inst->expanded_activated_layer_list, &icd_exts, pCreateInfo);
- if (res != VK_SUCCESS) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0, "vkCreateDevice: Failed to validate extensions in list");
- goto out;
- }
-
- dev = loader_create_logical_device(inst, pAllocator);
- if (dev == NULL) {
- res = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
-
- // Copy the application enabled instance layer list into the device
- if (NULL != inst->app_activated_layer_list.list) {
- dev->app_activated_layer_list.capacity = inst->app_activated_layer_list.capacity;
- dev->app_activated_layer_list.count = inst->app_activated_layer_list.count;
- dev->app_activated_layer_list.list =
- loader_device_heap_alloc(dev, inst->app_activated_layer_list.capacity, VK_SYSTEM_ALLOCATION_SCOPE_DEVICE);
- if (dev->app_activated_layer_list.list == NULL) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "vkCreateDevice: Failed to allocate application activated layer list of size %d.",
- inst->app_activated_layer_list.capacity);
- res = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
- memcpy(dev->app_activated_layer_list.list, inst->app_activated_layer_list.list,
- sizeof(*dev->app_activated_layer_list.list) * dev->app_activated_layer_list.count);
- } else {
- dev->app_activated_layer_list.capacity = 0;
- dev->app_activated_layer_list.count = 0;
- dev->app_activated_layer_list.list = NULL;
- }
-
- // Copy the expanded enabled instance layer list into the device
- if (NULL != inst->expanded_activated_layer_list.list) {
- dev->expanded_activated_layer_list.capacity = inst->expanded_activated_layer_list.capacity;
- dev->expanded_activated_layer_list.count = inst->expanded_activated_layer_list.count;
- dev->expanded_activated_layer_list.list =
- loader_device_heap_alloc(dev, inst->expanded_activated_layer_list.capacity, VK_SYSTEM_ALLOCATION_SCOPE_DEVICE);
- if (dev->expanded_activated_layer_list.list == NULL) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "vkCreateDevice: Failed to allocate expanded activated layer list of size %d.",
- inst->expanded_activated_layer_list.capacity);
- res = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
- memcpy(dev->expanded_activated_layer_list.list, inst->expanded_activated_layer_list.list,
- sizeof(*dev->expanded_activated_layer_list.list) * dev->expanded_activated_layer_list.count);
- } else {
- dev->expanded_activated_layer_list.capacity = 0;
- dev->expanded_activated_layer_list.count = 0;
- dev->expanded_activated_layer_list.list = NULL;
- }
-
- res = loader_create_device_chain(internal_device, pCreateInfo, pAllocator, inst, dev, layerGIPA, nextGDPA);
- if (res != VK_SUCCESS) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0, "vkCreateDevice: Failed to create device chain.");
- goto out;
- }
-
- *pDevice = dev->chain_device;
-
- // Initialize any device extension dispatch entry's from the instance list
- loader_init_dispatch_dev_ext(inst, dev);
-
- // Initialize WSI device extensions as part of core dispatch since loader
- // has dedicated trampoline code for these
- loader_init_device_extension_dispatch_table(&dev->loader_dispatch, inst->disp->layer_inst_disp.GetInstanceProcAddr,
- dev->loader_dispatch.core_dispatch.GetDeviceProcAddr, inst->instance, *pDevice);
-
-out:
-
- // Failure cleanup
- if (VK_SUCCESS != res) {
- if (NULL != dev) {
- loader_destroy_logical_device(inst, dev, pAllocator);
- }
- }
-
- if (NULL != icd_exts.list) {
- loader_destroy_generic_list(inst, (struct loader_generic_list *)&icd_exts);
- }
- return res;
-}
-
-VKAPI_ATTR void VKAPI_CALL loader_layer_destroy_device(VkDevice device, const VkAllocationCallbacks *pAllocator,
- PFN_vkDestroyDevice destroyFunction) {
- struct loader_device *dev;
-
- if (device == VK_NULL_HANDLE) {
- return;
- }
-
- struct loader_icd_term *icd_term = loader_get_icd_and_device(device, &dev, NULL);
- const struct loader_instance *inst = icd_term->this_instance;
-
- destroyFunction(device, pAllocator);
- dev->chain_device = NULL;
- dev->icd_device = NULL;
- loader_remove_logical_device(inst, icd_term, dev, pAllocator);
-}
-
-// Given the list of layers to activate in the loader_instance
-// structure. This function will add a VkLayerInstanceCreateInfo
-// structure to the VkInstanceCreateInfo.pNext pointer.
-// Each activated layer will have it's own VkLayerInstanceLink
-// structure that tells the layer what Get*ProcAddr to call to
-// get function pointers to the next layer down.
-// Once the chain info has been created this function will
-// execute the CreateInstance call chain. Each layer will
-// then have an opportunity in it's CreateInstance function
-// to setup it's dispatch table when the lower layer returns
-// successfully.
-// Each layer can wrap or not-wrap the returned VkInstance object
-// as it sees fit.
-// The instance chain is terminated by a loader function
-// that will call CreateInstance on all available ICD's and
-// cache those VkInstance objects for future use.
-VkResult loader_create_instance_chain(const VkInstanceCreateInfo *pCreateInfo, const VkAllocationCallbacks *pAllocator,
- struct loader_instance *inst, VkInstance *created_instance) {
- uint32_t activated_layers = 0;
- VkLayerInstanceCreateInfo chain_info;
- VkLayerInstanceLink *layer_instance_link_info = NULL;
- VkInstanceCreateInfo loader_create_info;
- VkResult res;
-
- PFN_vkGetInstanceProcAddr next_gipa = loader_gpa_instance_internal;
- PFN_vkGetInstanceProcAddr cur_gipa = loader_gpa_instance_internal;
- PFN_vkGetDeviceProcAddr cur_gdpa = loader_gpa_device_internal;
- PFN_GetPhysicalDeviceProcAddr next_gpdpa = loader_gpdpa_instance_internal;
- PFN_GetPhysicalDeviceProcAddr cur_gpdpa = loader_gpdpa_instance_internal;
-
- memcpy(&loader_create_info, pCreateInfo, sizeof(VkInstanceCreateInfo));
-
- if (inst->expanded_activated_layer_list.count > 0) {
- chain_info.u.pLayerInfo = NULL;
- chain_info.pNext = pCreateInfo->pNext;
- chain_info.sType = VK_STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO;
- chain_info.function = VK_LAYER_LINK_INFO;
- loader_create_info.pNext = &chain_info;
-
- layer_instance_link_info = loader_stack_alloc(sizeof(VkLayerInstanceLink) * inst->expanded_activated_layer_list.count);
- if (!layer_instance_link_info) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "loader_create_instance_chain: Failed to alloc Instance"
- " objects for layer");
- return VK_ERROR_OUT_OF_HOST_MEMORY;
- }
-
- // Create instance chain of enabled layers
- for (int32_t i = inst->expanded_activated_layer_list.count - 1; i >= 0; i--) {
- struct loader_layer_properties *layer_prop = &inst->expanded_activated_layer_list.list[i];
- loader_platform_dl_handle lib_handle;
-
- lib_handle = loaderOpenLayerFile(inst, "instance", layer_prop);
- if (!lib_handle) {
- continue;
- }
-
- if (NULL == layer_prop->functions.negotiate_layer_interface) {
- PFN_vkNegotiateLoaderLayerInterfaceVersion negotiate_interface = NULL;
- bool functions_in_interface = false;
- if (strlen(layer_prop->functions.str_negotiate_interface) == 0) {
- negotiate_interface = (PFN_vkNegotiateLoaderLayerInterfaceVersion)loader_platform_get_proc_address(
- lib_handle, "vkNegotiateLoaderLayerInterfaceVersion");
- } else {
- negotiate_interface = (PFN_vkNegotiateLoaderLayerInterfaceVersion)loader_platform_get_proc_address(
- lib_handle, layer_prop->functions.str_negotiate_interface);
- }
-
- // If we can negotiate an interface version, then we can also
- // get everything we need from the one function call, so try
- // that first, and see if we can get all the function pointers
- // necessary from that one call.
- if (NULL != negotiate_interface) {
- layer_prop->functions.negotiate_layer_interface = negotiate_interface;
-
- VkNegotiateLayerInterface interface_struct;
-
- if (loaderGetLayerInterfaceVersion(negotiate_interface, &interface_struct)) {
- // Go ahead and set the properties version to the
- // correct value.
- layer_prop->interface_version = interface_struct.loaderLayerInterfaceVersion;
-
- // If the interface is 2 or newer, we have access to the
- // new GetPhysicalDeviceProcAddr function, so grab it,
- // and the other necessary functions, from the
- // structure.
- if (interface_struct.loaderLayerInterfaceVersion > 1) {
- cur_gipa = interface_struct.pfnGetInstanceProcAddr;
- cur_gdpa = interface_struct.pfnGetDeviceProcAddr;
- cur_gpdpa = interface_struct.pfnGetPhysicalDeviceProcAddr;
- if (cur_gipa != NULL) {
- // We've set the functions, so make sure we
- // don't do the unnecessary calls later.
- functions_in_interface = true;
- }
- }
- }
- }
-
- if (!functions_in_interface) {
- if ((cur_gipa = layer_prop->functions.get_instance_proc_addr) == NULL) {
- if (strlen(layer_prop->functions.str_gipa) == 0) {
- cur_gipa =
- (PFN_vkGetInstanceProcAddr)loader_platform_get_proc_address(lib_handle, "vkGetInstanceProcAddr");
- layer_prop->functions.get_instance_proc_addr = cur_gipa;
- } else {
- cur_gipa = (PFN_vkGetInstanceProcAddr)loader_platform_get_proc_address(lib_handle,
- layer_prop->functions.str_gipa);
- }
-
- if (NULL == cur_gipa) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "loader_create_instance_chain: Failed to"
- " find \'vkGetInstanceProcAddr\' in "
- "layer %s",
- layer_prop->lib_name);
- continue;
- }
- }
- }
- }
-
- layer_instance_link_info[activated_layers].pNext = chain_info.u.pLayerInfo;
- layer_instance_link_info[activated_layers].pfnNextGetInstanceProcAddr = next_gipa;
- layer_instance_link_info[activated_layers].pfnNextGetPhysicalDeviceProcAddr = next_gpdpa;
- next_gipa = cur_gipa;
- if (layer_prop->interface_version > 1 && cur_gpdpa != NULL) {
- layer_prop->functions.get_physical_device_proc_addr = cur_gpdpa;
- next_gpdpa = cur_gpdpa;
- }
- if (layer_prop->interface_version > 1 && cur_gipa != NULL) {
- layer_prop->functions.get_instance_proc_addr = cur_gipa;
- }
- if (layer_prop->interface_version > 1 && cur_gdpa != NULL) {
- layer_prop->functions.get_device_proc_addr = cur_gdpa;
- }
-
- chain_info.u.pLayerInfo = &layer_instance_link_info[activated_layers];
-
- loader_log(inst, VK_DEBUG_REPORT_INFORMATION_BIT_EXT, 0, "Insert instance layer %s (%s)", layer_prop->info.layerName,
- layer_prop->lib_name);
-
- activated_layers++;
- }
- }
-
- VkLoaderFeatureFlags feature_flags = 0;
-#if defined(_WIN32)
- IDXGIFactory6* dxgi_factory = NULL;
- HRESULT hres = fpCreateDXGIFactory1(&IID_IDXGIFactory6, (void **)&dxgi_factory);
- if (hres == S_OK) {
- feature_flags |= VK_LOADER_FEATURE_PHYSICAL_DEVICE_SORTING;
- dxgi_factory->lpVtbl->Release(dxgi_factory);
- }
-#endif
-
- PFN_vkCreateInstance fpCreateInstance = (PFN_vkCreateInstance)next_gipa(*created_instance, "vkCreateInstance");
- if (fpCreateInstance) {
- const VkLayerInstanceCreateInfo instance_dispatch = {
- .sType = VK_STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO,
- .pNext = loader_create_info.pNext,
- .function = VK_LOADER_DATA_CALLBACK,
- .u = {
- .pfnSetInstanceLoaderData = vkSetInstanceDispatch,
- },
- };
- const VkLayerInstanceCreateInfo device_callback = {
- .sType = VK_STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO,
- .pNext = &instance_dispatch,
- .function = VK_LOADER_LAYER_CREATE_DEVICE_CALLBACK,
- .u = {
- .layerDevice = {
- .pfnLayerCreateDevice = loader_layer_create_device,
- .pfnLayerDestroyDevice = loader_layer_destroy_device,
- },
- },
- };
- const VkLayerInstanceCreateInfo loader_features = {
- .sType = VK_STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO,
- .pNext = &device_callback,
- .function = VK_LOADER_FEATURES,
- .u = {
- .loaderFeatures = feature_flags,
- },
- };
- loader_create_info.pNext = &loader_features;
-
- res = fpCreateInstance(&loader_create_info, pAllocator, created_instance);
- } else {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "loader_create_instance_chain: Failed to find "
- "\'vkCreateInstance\'");
- // Couldn't find CreateInstance function!
- res = VK_ERROR_INITIALIZATION_FAILED;
- }
-
- if (res == VK_SUCCESS) {
- loader_init_instance_core_dispatch_table(&inst->disp->layer_inst_disp, next_gipa, *created_instance);
- inst->instance = *created_instance;
- }
-
- return res;
-}
-
-void loaderActivateInstanceLayerExtensions(struct loader_instance *inst, VkInstance created_inst) {
- loader_init_instance_extension_dispatch_table(&inst->disp->layer_inst_disp, inst->disp->layer_inst_disp.GetInstanceProcAddr,
- created_inst);
-}
-
-VkResult loader_create_device_chain(const VkPhysicalDevice pd, const VkDeviceCreateInfo *pCreateInfo,
- const VkAllocationCallbacks *pAllocator, const struct loader_instance *inst,
- struct loader_device *dev, PFN_vkGetInstanceProcAddr callingLayer,
- PFN_vkGetDeviceProcAddr *layerNextGDPA) {
- uint32_t activated_layers = 0;
- VkLayerDeviceLink *layer_device_link_info;
- VkLayerDeviceCreateInfo chain_info;
- VkDeviceCreateInfo loader_create_info;
- VkResult res;
-
- PFN_vkGetDeviceProcAddr fpGDPA = NULL, nextGDPA = loader_gpa_device_internal;
- PFN_vkGetInstanceProcAddr fpGIPA = NULL, nextGIPA = loader_gpa_instance_internal;
-
- memcpy(&loader_create_info, pCreateInfo, sizeof(VkDeviceCreateInfo));
-
- // Before we continue, we need to find out if the KHR_device_group extension is in the enabled list. If it is, we then
- // need to look for the corresponding VkDeviceGroupDeviceCreateInfoKHR struct in the device list. This is because we
- // need to replace all the incoming physical device values (which are really loader trampoline physical device values)
- // with the layer/ICD version.
- {
- VkBaseOutStructure *pNext = (VkBaseOutStructure *)loader_create_info.pNext;
- VkBaseOutStructure *pPrev = (VkBaseOutStructure *)&loader_create_info;
- while (NULL != pNext) {
- if (VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO == pNext->sType) {
- VkDeviceGroupDeviceCreateInfoKHR *cur_struct = (VkDeviceGroupDeviceCreateInfoKHR *)pNext;
- if (0 < cur_struct->physicalDeviceCount && NULL != cur_struct->pPhysicalDevices) {
- VkDeviceGroupDeviceCreateInfoKHR *temp_struct = loader_stack_alloc(sizeof(VkDeviceGroupDeviceCreateInfoKHR));
- VkPhysicalDevice *phys_dev_array = NULL;
- if (NULL == temp_struct) {
- return VK_ERROR_OUT_OF_HOST_MEMORY;
- }
- memcpy(temp_struct, cur_struct, sizeof(VkDeviceGroupDeviceCreateInfoKHR));
- phys_dev_array = loader_stack_alloc(sizeof(VkPhysicalDevice) * cur_struct->physicalDeviceCount);
- if (NULL == phys_dev_array) {
- return VK_ERROR_OUT_OF_HOST_MEMORY;
- }
-
- // Before calling down, replace the incoming physical device values (which are really loader trampoline
- // physical devices) with the next layer (or possibly even the terminator) physical device values.
- struct loader_physical_device_tramp *cur_tramp;
- for (uint32_t phys_dev = 0; phys_dev < cur_struct->physicalDeviceCount; phys_dev++) {
- cur_tramp = (struct loader_physical_device_tramp *)cur_struct->pPhysicalDevices[phys_dev];
- phys_dev_array[phys_dev] = cur_tramp->phys_dev;
- }
- temp_struct->pPhysicalDevices = phys_dev_array;
-
- // Replace the old struct in the pNext chain with this one.
- pPrev->pNext = (VkBaseOutStructure *)temp_struct;
- pNext = (VkBaseOutStructure *)temp_struct;
- }
- break;
- }
-
- pPrev = pNext;
- pNext = pNext->pNext;
- }
- }
-
- layer_device_link_info = loader_stack_alloc(sizeof(VkLayerDeviceLink) * dev->expanded_activated_layer_list.count);
- if (!layer_device_link_info) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "loader_create_device_chain: Failed to alloc Device objects"
- " for layer. Skipping Layer.");
- return VK_ERROR_OUT_OF_HOST_MEMORY;
- }
-
- if (dev->expanded_activated_layer_list.count > 0) {
- chain_info.sType = VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO;
- chain_info.function = VK_LAYER_LINK_INFO;
- chain_info.u.pLayerInfo = NULL;
- chain_info.pNext = loader_create_info.pNext;
- loader_create_info.pNext = &chain_info;
-
- bool done = false;
-
- // Create instance chain of enabled layers
- for (int32_t i = dev->expanded_activated_layer_list.count - 1; i >= 0; i--) {
- struct loader_layer_properties *layer_prop = &dev->expanded_activated_layer_list.list[i];
- loader_platform_dl_handle lib_handle;
-
- lib_handle = loaderOpenLayerFile(inst, "device", layer_prop);
- if (!lib_handle || done) {
- continue;
- }
-
- // The Get*ProcAddr pointers will already be filled in if they were received from either the json file or the
- // version negotiation
- if ((fpGIPA = layer_prop->functions.get_instance_proc_addr) == NULL) {
- if (strlen(layer_prop->functions.str_gipa) == 0) {
- fpGIPA = (PFN_vkGetInstanceProcAddr)loader_platform_get_proc_address(lib_handle, "vkGetInstanceProcAddr");
- layer_prop->functions.get_instance_proc_addr = fpGIPA;
- } else
- fpGIPA =
- (PFN_vkGetInstanceProcAddr)loader_platform_get_proc_address(lib_handle, layer_prop->functions.str_gipa);
- if (!fpGIPA) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "loader_create_device_chain: Failed to find "
- "\'vkGetInstanceProcAddr\' in layer %s. Skipping"
- " layer.",
- layer_prop->lib_name);
- continue;
- }
- }
-
- if (fpGIPA == callingLayer) {
- if (layerNextGDPA != NULL) {
- *layerNextGDPA = nextGDPA;
- }
- done = true;
- continue;
- }
-
- if ((fpGDPA = layer_prop->functions.get_device_proc_addr) == NULL) {
- if (strlen(layer_prop->functions.str_gdpa) == 0) {
- fpGDPA = (PFN_vkGetDeviceProcAddr)loader_platform_get_proc_address(lib_handle, "vkGetDeviceProcAddr");
- layer_prop->functions.get_device_proc_addr = fpGDPA;
- } else
- fpGDPA =
- (PFN_vkGetDeviceProcAddr)loader_platform_get_proc_address(lib_handle, layer_prop->functions.str_gdpa);
- if (!fpGDPA) {
- loader_log(inst, VK_DEBUG_REPORT_INFORMATION_BIT_EXT, 0, "Failed to find vkGetDeviceProcAddr in layer %s",
- layer_prop->lib_name);
- continue;
- }
- }
-
- layer_device_link_info[activated_layers].pNext = chain_info.u.pLayerInfo;
- layer_device_link_info[activated_layers].pfnNextGetInstanceProcAddr = nextGIPA;
- layer_device_link_info[activated_layers].pfnNextGetDeviceProcAddr = nextGDPA;
- chain_info.u.pLayerInfo = &layer_device_link_info[activated_layers];
- nextGIPA = fpGIPA;
- nextGDPA = fpGDPA;
-
- loader_log(inst, VK_DEBUG_REPORT_INFORMATION_BIT_EXT, 0, "Inserted device layer %s (%s)", layer_prop->info.layerName,
- layer_prop->lib_name);
-
- activated_layers++;
- }
- }
-
- VkDevice created_device = (VkDevice)dev;
- PFN_vkCreateDevice fpCreateDevice = (PFN_vkCreateDevice)nextGIPA(inst->instance, "vkCreateDevice");
- if (fpCreateDevice) {
- VkLayerDeviceCreateInfo create_info_disp;
-
- create_info_disp.sType = VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO;
- create_info_disp.function = VK_LOADER_DATA_CALLBACK;
-
- create_info_disp.u.pfnSetDeviceLoaderData = vkSetDeviceDispatch;
-
- create_info_disp.pNext = loader_create_info.pNext;
- loader_create_info.pNext = &create_info_disp;
- res = fpCreateDevice(pd, &loader_create_info, pAllocator, &created_device);
- if (res != VK_SUCCESS) {
- return res;
- }
- dev->chain_device = created_device;
- } else {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "loader_create_device_chain: Failed to find \'vkCreateDevice\' "
- "in layers or ICD");
- // Couldn't find CreateDevice function!
- return VK_ERROR_INITIALIZATION_FAILED;
- }
-
- // Initialize device dispatch table
- loader_init_device_dispatch_table(&dev->loader_dispatch, nextGDPA, dev->chain_device);
-
- return res;
-}
-
-VkResult loaderValidateLayers(const struct loader_instance *inst, const uint32_t layer_count,
- const char *const *ppEnabledLayerNames, const struct loader_layer_list *list) {
- struct loader_layer_properties *prop;
-
- for (uint32_t i = 0; i < layer_count; i++) {
- VkStringErrorFlags result = vk_string_validate(MaxLoaderStringLength, ppEnabledLayerNames[i]);
- if (result != VK_STRING_ERROR_NONE) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "loaderValidateLayers: Device ppEnabledLayerNames "
- "contains string that is too long or is badly formed");
- return VK_ERROR_LAYER_NOT_PRESENT;
- }
-
- prop = loaderFindLayerProperty(ppEnabledLayerNames[i], list);
- if (NULL == prop) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "loaderValidateLayers: Layer %d does not exist in the list of available layers", i);
- return VK_ERROR_LAYER_NOT_PRESENT;
- }
- }
- return VK_SUCCESS;
-}
-
-VkResult loader_validate_instance_extensions(struct loader_instance *inst, const struct loader_extension_list *icd_exts,
- const struct loader_layer_list *instance_layers,
- const VkInstanceCreateInfo *pCreateInfo) {
- VkExtensionProperties *extension_prop;
- char *env_value;
- bool check_if_known = true;
- VkResult res = VK_SUCCESS;
-
- struct loader_layer_list active_layers;
- struct loader_layer_list expanded_layers;
- memset(&active_layers, 0, sizeof(active_layers));
- memset(&expanded_layers, 0, sizeof(expanded_layers));
- if (!loaderInitLayerList(inst, &active_layers)) {
- res = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
- if (!loaderInitLayerList(inst, &expanded_layers)) {
- res = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
-
- // Build the lists of active layers (including metalayers) and expanded layers (with metalayers resolved to their components)
- loaderAddImplicitLayers(inst, &active_layers, &expanded_layers, instance_layers);
- res = loaderAddEnvironmentLayers(inst, VK_LAYER_TYPE_FLAG_EXPLICIT_LAYER, ENABLED_LAYERS_ENV, &active_layers, &expanded_layers,
- instance_layers);
- if (res != VK_SUCCESS) {
- goto out;
- }
- res = loaderAddLayerNamesToList(inst, &active_layers, &expanded_layers, pCreateInfo->enabledLayerCount,
- pCreateInfo->ppEnabledLayerNames, instance_layers);
- if (VK_SUCCESS != res) {
- goto out;
- }
-
- for (uint32_t i = 0; i < pCreateInfo->enabledExtensionCount; i++) {
- VkStringErrorFlags result = vk_string_validate(MaxLoaderStringLength, pCreateInfo->ppEnabledExtensionNames[i]);
- if (result != VK_STRING_ERROR_NONE) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "loader_validate_instance_extensions: Instance ppEnabledExtensionNames contains "
- "string that is too long or is badly formed");
- res = VK_ERROR_EXTENSION_NOT_PRESENT;
- goto out;
- }
-
- // Check if a user wants to disable the instance extension filtering behavior
- env_value = loader_getenv("VK_LOADER_DISABLE_INST_EXT_FILTER", inst);
- if (NULL != env_value && atoi(env_value) != 0) {
- check_if_known = false;
- }
- loader_free_getenv(env_value, inst);
-
- if (check_if_known) {
- // See if the extension is in the list of supported extensions
- bool found = false;
- for (uint32_t j = 0; LOADER_INSTANCE_EXTENSIONS[j] != NULL; j++) {
- if (strcmp(pCreateInfo->ppEnabledExtensionNames[i], LOADER_INSTANCE_EXTENSIONS[j]) == 0) {
- found = true;
- break;
- }
- }
-
- // If it isn't in the list, return an error
- if (!found) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "loader_validate_instance_extensions: Extension %s not found in list of known instance extensions.",
- pCreateInfo->ppEnabledExtensionNames[i]);
- res = VK_ERROR_EXTENSION_NOT_PRESENT;
- goto out;
- }
- }
-
- extension_prop = get_extension_property(pCreateInfo->ppEnabledExtensionNames[i], icd_exts);
-
- if (extension_prop) {
- continue;
- }
-
- extension_prop = NULL;
-
- // Not in global list, search layer extension lists
- struct loader_layer_properties *layer_prop = NULL;
- for (uint32_t j = 0; NULL == extension_prop && j < expanded_layers.count; ++j) {
- extension_prop =
- get_extension_property(pCreateInfo->ppEnabledExtensionNames[i], &expanded_layers.list[j].instance_extension_list);
- if (extension_prop) {
- // Found the extension in one of the layers enabled by the app.
- break;
- }
-
- layer_prop = loaderFindLayerProperty(expanded_layers.list[j].info.layerName, instance_layers);
- if (NULL == layer_prop) {
- // Should NOT get here, loaderValidateLayers should have already filtered this case out.
- continue;
- }
- }
-
- if (!extension_prop) {
- // Didn't find extension name in any of the global layers, error out
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "loader_validate_instance_extensions: Instance extension %s not supported by available ICDs or enabled "
- "layers.",
- pCreateInfo->ppEnabledExtensionNames[i]);
- res = VK_ERROR_EXTENSION_NOT_PRESENT;
- goto out;
- }
- }
-
-out:
- loaderDestroyLayerList(inst, NULL, &active_layers);
- loaderDestroyLayerList(inst, NULL, &expanded_layers);
- return res;
-}
-
-VkResult loader_validate_device_extensions(struct loader_instance *this_instance,
- const struct loader_layer_list *activated_device_layers,
- const struct loader_extension_list *icd_exts, const VkDeviceCreateInfo *pCreateInfo) {
- VkExtensionProperties *extension_prop;
- struct loader_layer_properties *layer_prop;
-
- for (uint32_t i = 0; i < pCreateInfo->enabledExtensionCount; i++) {
- VkStringErrorFlags result = vk_string_validate(MaxLoaderStringLength, pCreateInfo->ppEnabledExtensionNames[i]);
- if (result != VK_STRING_ERROR_NONE) {
- loader_log(this_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "loader_validate_device_extensions: Device ppEnabledExtensionNames contains "
- "string that is too long or is badly formed");
- return VK_ERROR_EXTENSION_NOT_PRESENT;
- }
-
- const char *extension_name = pCreateInfo->ppEnabledExtensionNames[i];
- extension_prop = get_extension_property(extension_name, icd_exts);
-
- if (extension_prop) {
- continue;
- }
-
- // Not in global list, search activated layer extension lists
- for (uint32_t j = 0; j < activated_device_layers->count; j++) {
- layer_prop = &activated_device_layers->list[j];
-
- extension_prop = get_dev_extension_property(extension_name, &layer_prop->device_extension_list);
- if (extension_prop) {
- // Found the extension in one of the layers enabled by the app.
- break;
- }
- }
-
- if (!extension_prop) {
- // Didn't find extension name in any of the device layers, error out
- loader_log(this_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "loader_validate_device_extensions: Device extension %s not supported by selected physical device "
- "or enabled layers.",
- pCreateInfo->ppEnabledExtensionNames[i]);
- return VK_ERROR_EXTENSION_NOT_PRESENT;
- }
- }
- return VK_SUCCESS;
-}
-
-// Terminator functions for the Instance chain
-// All named terminator_<Vulkan API name>
-VKAPI_ATTR VkResult VKAPI_CALL terminator_CreateInstance(const VkInstanceCreateInfo *pCreateInfo,
- const VkAllocationCallbacks *pAllocator, VkInstance *pInstance) {
- struct loader_icd_term *icd_term;
- VkExtensionProperties *prop;
- char **filtered_extension_names = NULL;
- VkInstanceCreateInfo icd_create_info;
- VkResult res = VK_SUCCESS;
- bool one_icd_successful = false;
-
- struct loader_instance *ptr_instance = (struct loader_instance *)*pInstance;
- memcpy(&icd_create_info, pCreateInfo, sizeof(icd_create_info));
-
- icd_create_info.enabledLayerCount = 0;
- icd_create_info.ppEnabledLayerNames = NULL;
-
- // NOTE: Need to filter the extensions to only those supported by the ICD.
- // No ICD will advertise support for layers. An ICD library could
- // support a layer, but it would be independent of the actual ICD,
- // just in the same library.
- filtered_extension_names = loader_stack_alloc(pCreateInfo->enabledExtensionCount * sizeof(char *));
- if (!filtered_extension_names) {
- loader_log(ptr_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "terminator_CreateInstance: Failed create extension name array for %d extensions",
- pCreateInfo->enabledExtensionCount);
- res = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
- icd_create_info.ppEnabledExtensionNames = (const char *const *)filtered_extension_names;
-
- for (uint32_t i = 0; i < ptr_instance->icd_tramp_list.count; i++) {
- icd_term = loader_icd_add(ptr_instance, &ptr_instance->icd_tramp_list.scanned_list[i]);
- if (NULL == icd_term) {
- loader_log(ptr_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "terminator_CreateInstance: Failed to add ICD %d to ICD trampoline list.", i);
- res = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
-
- // If any error happens after here, we need to remove the ICD from the list,
- // because we've already added it, but haven't validated it
-
- // Make sure that we reset the pApplicationInfo so we don't get an old pointer
- icd_create_info.pApplicationInfo = pCreateInfo->pApplicationInfo;
- icd_create_info.enabledExtensionCount = 0;
- struct loader_extension_list icd_exts;
-
- loader_log(ptr_instance, VK_DEBUG_REPORT_DEBUG_BIT_EXT, 0, "Build ICD instance extension list");
- // traverse scanned icd list adding non-duplicate extensions to the list
- res = loader_init_generic_list(ptr_instance, (struct loader_generic_list *)&icd_exts, sizeof(VkExtensionProperties));
- if (VK_ERROR_OUT_OF_HOST_MEMORY == res) {
- // If out of memory, bail immediately.
- goto out;
- } else if (VK_SUCCESS != res) {
- // Something bad happened with this ICD, so free it and try the
- // next.
- ptr_instance->icd_terms = icd_term->next;
- icd_term->next = NULL;
- loader_icd_destroy(ptr_instance, icd_term, pAllocator);
- continue;
- }
-
- res = loader_add_instance_extensions(ptr_instance, icd_term->scanned_icd->EnumerateInstanceExtensionProperties,
- icd_term->scanned_icd->lib_name, &icd_exts);
- if (VK_SUCCESS != res) {
- loader_destroy_generic_list(ptr_instance, (struct loader_generic_list *)&icd_exts);
- if (VK_ERROR_OUT_OF_HOST_MEMORY == res) {
- // If out of memory, bail immediately.
- goto out;
- } else {
- // Something bad happened with this ICD, so free it and try the next.
- ptr_instance->icd_terms = icd_term->next;
- icd_term->next = NULL;
- loader_icd_destroy(ptr_instance, icd_term, pAllocator);
- continue;
- }
- }
-
- for (uint32_t j = 0; j < pCreateInfo->enabledExtensionCount; j++) {
- prop = get_extension_property(pCreateInfo->ppEnabledExtensionNames[j], &icd_exts);
- if (prop) {
- filtered_extension_names[icd_create_info.enabledExtensionCount] = (char *)pCreateInfo->ppEnabledExtensionNames[j];
- icd_create_info.enabledExtensionCount++;
- }
- }
-
- loader_destroy_generic_list(ptr_instance, (struct loader_generic_list *)&icd_exts);
-
- // Get the driver version from vkEnumerateInstanceVersion
- uint32_t icd_version = VK_API_VERSION_1_0;
- VkResult icd_result = VK_SUCCESS;
- if (icd_term->scanned_icd->api_version >= VK_API_VERSION_1_1) {
- PFN_vkEnumerateInstanceVersion icd_enumerate_instance_version = (PFN_vkEnumerateInstanceVersion)
- icd_term->scanned_icd->GetInstanceProcAddr(NULL, "vkEnumerateInstanceVersion");
- if (icd_enumerate_instance_version != NULL) {
- icd_result = icd_enumerate_instance_version(&icd_version);
- if (icd_result != VK_SUCCESS) {
- icd_version = VK_API_VERSION_1_0;
- loader_log(ptr_instance, VK_DEBUG_REPORT_DEBUG_BIT_EXT, 0, "terminator_CreateInstance: ICD \"%s\" "
- "vkEnumerateInstanceVersion returned error. The ICD will be treated as a 1.0 ICD",
- icd_term->scanned_icd->lib_name);
- }
- }
- }
-
- // Create an instance, substituting the version to 1.0 if necessary
- VkApplicationInfo icd_app_info;
- uint32_t icd_version_nopatch = VK_MAKE_VERSION(VK_VERSION_MAJOR(icd_version), VK_VERSION_MINOR(icd_version), 0);
- uint32_t requested_version = pCreateInfo == NULL || pCreateInfo->pApplicationInfo == NULL ? VK_API_VERSION_1_0 : pCreateInfo->pApplicationInfo->apiVersion;
- if ((requested_version != 0) && (icd_version_nopatch == VK_API_VERSION_1_0)) {
- if (icd_create_info.pApplicationInfo == NULL) {
- memset(&icd_app_info, 0, sizeof(icd_app_info));
- } else {
- memcpy(&icd_app_info, icd_create_info.pApplicationInfo, sizeof(icd_app_info));
- }
- icd_app_info.apiVersion = icd_version;
- icd_create_info.pApplicationInfo = &icd_app_info;
- }
- icd_result = ptr_instance->icd_tramp_list.scanned_list[i].CreateInstance(&icd_create_info, pAllocator, &(icd_term->instance));
- if (VK_ERROR_OUT_OF_HOST_MEMORY == icd_result) {
- // If out of memory, bail immediately.
- res = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- } else if (VK_SUCCESS != icd_result) {
- loader_log(ptr_instance, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "terminator_CreateInstance: Failed to CreateInstance in "
- "ICD %d. Skipping ICD.",
- i);
- ptr_instance->icd_terms = icd_term->next;
- icd_term->next = NULL;
- loader_icd_destroy(ptr_instance, icd_term, pAllocator);
- continue;
- }
-
- if (!loader_icd_init_entries(icd_term, icd_term->instance,
- ptr_instance->icd_tramp_list.scanned_list[i].GetInstanceProcAddr)) {
- loader_log(ptr_instance, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "terminator_CreateInstance: Failed to CreateInstance and find "
- "entrypoints with ICD. Skipping ICD.");
- ptr_instance->icd_terms = icd_term->next;
- icd_term->next = NULL;
- loader_icd_destroy(ptr_instance, icd_term, pAllocator);
- continue;
- }
-
- // If we made it this far, at least one ICD was successful
- one_icd_successful = true;
- }
-
- // If no ICDs were added to instance list and res is unchanged from it's initial value, the loader was unable to
- // find a suitable ICD.
- if (VK_SUCCESS == res && (ptr_instance->icd_terms == NULL || !one_icd_successful)) {
- res = VK_ERROR_INCOMPATIBLE_DRIVER;
- }
-
-out:
-
- if (VK_SUCCESS != res) {
- while (NULL != ptr_instance->icd_terms) {
- icd_term = ptr_instance->icd_terms;
- ptr_instance->icd_terms = icd_term->next;
- if (NULL != icd_term->instance) {
- icd_term->dispatch.DestroyInstance(icd_term->instance, pAllocator);
- }
- loader_icd_destroy(ptr_instance, icd_term, pAllocator);
- }
- }
-
- return res;
-}
-
-VKAPI_ATTR void VKAPI_CALL terminator_DestroyInstance(VkInstance instance, const VkAllocationCallbacks *pAllocator) {
- struct loader_instance *ptr_instance = loader_instance(instance);
- if (NULL == ptr_instance) {
- return;
- }
- struct loader_icd_term *icd_terms = ptr_instance->icd_terms;
- struct loader_icd_term *next_icd_term;
-
- // Remove this instance from the list of instances:
- struct loader_instance *prev = NULL;
- struct loader_instance *next = loader.instances;
- while (next != NULL) {
- if (next == ptr_instance) {
- // Remove this instance from the list:
- if (prev)
- prev->next = next->next;
- else
- loader.instances = next->next;
- break;
- }
- prev = next;
- next = next->next;
- }
-
- while (NULL != icd_terms) {
- if (icd_terms->instance) {
- icd_terms->dispatch.DestroyInstance(icd_terms->instance, pAllocator);
- }
- next_icd_term = icd_terms->next;
- icd_terms->instance = VK_NULL_HANDLE;
- loader_icd_destroy(ptr_instance, icd_terms, pAllocator);
-
- icd_terms = next_icd_term;
- }
-
- loaderDeleteLayerListAndProperties(ptr_instance, &ptr_instance->instance_layer_list);
- loader_scanned_icd_clear(ptr_instance, &ptr_instance->icd_tramp_list);
- loader_destroy_generic_list(ptr_instance, (struct loader_generic_list *)&ptr_instance->ext_list);
- if (NULL != ptr_instance->phys_devs_term) {
- for (uint32_t i = 0; i < ptr_instance->phys_dev_count_term; i++) {
- loader_instance_heap_free(ptr_instance, ptr_instance->phys_devs_term[i]);
- }
- loader_instance_heap_free(ptr_instance, ptr_instance->phys_devs_term);
- }
- if (NULL != ptr_instance->phys_dev_groups_term) {
- for (uint32_t i = 0; i < ptr_instance->phys_dev_group_count_term; i++) {
- loader_instance_heap_free(ptr_instance, ptr_instance->phys_dev_groups_term[i]);
- }
- loader_instance_heap_free(ptr_instance, ptr_instance->phys_dev_groups_term);
- }
- loader_free_dev_ext_table(ptr_instance);
- loader_free_phys_dev_ext_table(ptr_instance);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_CreateDevice(VkPhysicalDevice physicalDevice, const VkDeviceCreateInfo *pCreateInfo,
- const VkAllocationCallbacks *pAllocator, VkDevice *pDevice) {
- VkResult res = VK_SUCCESS;
- struct loader_physical_device_term *phys_dev_term;
- phys_dev_term = (struct loader_physical_device_term *)physicalDevice;
- struct loader_icd_term *icd_term = phys_dev_term->this_icd_term;
-
- struct loader_device *dev = (struct loader_device *)*pDevice;
- PFN_vkCreateDevice fpCreateDevice = icd_term->dispatch.CreateDevice;
- struct loader_extension_list icd_exts;
-
- VkBaseOutStructure *caller_dgci_container = NULL;
- VkDeviceGroupDeviceCreateInfoKHR *caller_dgci = NULL;
-
- dev->phys_dev_term = phys_dev_term;
-
- icd_exts.list = NULL;
-
- if (fpCreateDevice == NULL) {
- loader_log(icd_term->this_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "terminator_CreateDevice: No vkCreateDevice command exposed "
- "by ICD %s",
- icd_term->scanned_icd->lib_name);
- res = VK_ERROR_INITIALIZATION_FAILED;
- goto out;
- }
-
- VkDeviceCreateInfo localCreateInfo;
- memcpy(&localCreateInfo, pCreateInfo, sizeof(localCreateInfo));
-
- // NOTE: Need to filter the extensions to only those supported by the ICD.
- // No ICD will advertise support for layers. An ICD library could support a layer,
- // but it would be independent of the actual ICD, just in the same library.
- char **filtered_extension_names = NULL;
- if (0 < pCreateInfo->enabledExtensionCount) {
- filtered_extension_names = loader_stack_alloc(pCreateInfo->enabledExtensionCount * sizeof(char *));
- if (NULL == filtered_extension_names) {
- loader_log(icd_term->this_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "terminator_CreateDevice: Failed to create extension name "
- "storage for %d extensions",
- pCreateInfo->enabledExtensionCount);
- return VK_ERROR_OUT_OF_HOST_MEMORY;
- }
- }
-
- localCreateInfo.enabledLayerCount = 0;
- localCreateInfo.ppEnabledLayerNames = NULL;
-
- localCreateInfo.enabledExtensionCount = 0;
- localCreateInfo.ppEnabledExtensionNames = (const char *const *)filtered_extension_names;
-
- // Get the physical device (ICD) extensions
- res = loader_init_generic_list(icd_term->this_instance, (struct loader_generic_list *)&icd_exts, sizeof(VkExtensionProperties));
- if (VK_SUCCESS != res) {
- goto out;
- }
-
- res = loader_add_device_extensions(icd_term->this_instance, icd_term->dispatch.EnumerateDeviceExtensionProperties,
- phys_dev_term->phys_dev, icd_term->scanned_icd->lib_name, &icd_exts);
- if (res != VK_SUCCESS) {
- goto out;
- }
-
- for (uint32_t i = 0; i < pCreateInfo->enabledExtensionCount; i++) {
- const char *extension_name = pCreateInfo->ppEnabledExtensionNames[i];
- VkExtensionProperties *prop = get_extension_property(extension_name, &icd_exts);
- if (prop) {
- filtered_extension_names[localCreateInfo.enabledExtensionCount] = (char *)extension_name;
- localCreateInfo.enabledExtensionCount++;
- } else {
- loader_log(icd_term->this_instance, VK_DEBUG_REPORT_DEBUG_BIT_EXT, 0,
- "vkCreateDevice extension %s not available for "
- "devices associated with ICD %s",
- extension_name, icd_term->scanned_icd->lib_name);
- }
- }
-
- // Before we continue, If KHX_device_group is the list of enabled and viable extensions, then we then need to look for the
- // corresponding VkDeviceGroupDeviceCreateInfo struct in the device list and replace all the physical device values (which
- // are really loader physical device terminator values) with the ICD versions.
- //if (icd_term->this_instance->enabled_known_extensions.khr_device_group_creation == 1) {
- {
- VkBaseOutStructure *pNext = (VkBaseOutStructure *)localCreateInfo.pNext;
- VkBaseOutStructure *pPrev = (VkBaseOutStructure *)&localCreateInfo;
- while (NULL != pNext) {
- if (VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO == pNext->sType) {
- VkDeviceGroupDeviceCreateInfo *cur_struct = (VkDeviceGroupDeviceCreateInfo *)pNext;
- if (0 < cur_struct->physicalDeviceCount && NULL != cur_struct->pPhysicalDevices) {
- VkDeviceGroupDeviceCreateInfo *temp_struct = loader_stack_alloc(sizeof(VkDeviceGroupDeviceCreateInfo));
- VkPhysicalDevice *phys_dev_array = NULL;
- if (NULL == temp_struct) {
- return VK_ERROR_OUT_OF_HOST_MEMORY;
- }
- memcpy(temp_struct, cur_struct, sizeof(VkDeviceGroupDeviceCreateInfo));
- phys_dev_array = loader_stack_alloc(sizeof(VkPhysicalDevice) * cur_struct->physicalDeviceCount);
- if (NULL == phys_dev_array) {
- return VK_ERROR_OUT_OF_HOST_MEMORY;
- }
-
- // Before calling down, replace the incoming physical device values (which are really loader terminator
- // physical devices) with the ICDs physical device values.
- struct loader_physical_device_term *cur_term;
- for (uint32_t phys_dev = 0; phys_dev < cur_struct->physicalDeviceCount; phys_dev++) {
- cur_term = (struct loader_physical_device_term *)cur_struct->pPhysicalDevices[phys_dev];
- phys_dev_array[phys_dev] = cur_term->phys_dev;
- }
- temp_struct->pPhysicalDevices = phys_dev_array;
-
- // Keep track of pointers to restore pNext chain before returning
- caller_dgci_container = pPrev;
- caller_dgci = cur_struct;
-
- // Replace the old struct in the pNext chain with this one.
- pPrev->pNext = (VkBaseOutStructure *)temp_struct;
- pNext = (VkBaseOutStructure *)temp_struct;
- }
- break;
- }
-
- pPrev = pNext;
- pNext = pNext->pNext;
- }
- }
-
- // Handle loader emulation for structs that are not supported by the ICD:
- // Presently, the emulation leaves the pNext chain alone. This means that the ICD will receive items in the chain which
- // are not recognized by the ICD. If this causes the ICD to fail, then the items would have to be removed here. The current
- // implementation does not remove them because copying the pNext chain would be impossible if the loader does not recognize
- // the any of the struct types, as the loader would not know the size to allocate and copy.
- //if (icd_term->dispatch.GetPhysicalDeviceFeatures2 == NULL && icd_term->dispatch.GetPhysicalDeviceFeatures2KHR == NULL) {
- {
- const void *pNext = localCreateInfo.pNext;
- while (pNext != NULL) {
- switch (*(VkStructureType *)pNext) {
- case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2: {
- const VkPhysicalDeviceFeatures2KHR *features = pNext;
-
- if (icd_term->dispatch.GetPhysicalDeviceFeatures2 == NULL && icd_term->dispatch.GetPhysicalDeviceFeatures2KHR == NULL) {
- loader_log(icd_term->this_instance, VK_DEBUG_REPORT_INFORMATION_BIT_EXT, 0,
- "vkCreateDevice: Emulating handling of VkPhysicalDeviceFeatures2 in pNext chain for ICD \"%s\"",
- icd_term->scanned_icd->lib_name);
-
- // Verify that VK_KHR_get_physical_device_properties2 is enabled
- if (icd_term->this_instance->enabled_known_extensions.khr_get_physical_device_properties2) {
- localCreateInfo.pEnabledFeatures = &features->features;
- }
- }
-
- // Leave this item in the pNext chain for now
-
- pNext = features->pNext;
- break;
- }
-
- case VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO: {
- const VkDeviceGroupDeviceCreateInfoKHR *group_info = pNext;
-
- if (icd_term->dispatch.EnumeratePhysicalDeviceGroups == NULL && icd_term->dispatch.EnumeratePhysicalDeviceGroupsKHR == NULL) {
- loader_log(
- icd_term->this_instance, VK_DEBUG_REPORT_INFORMATION_BIT_EXT, 0,
- "vkCreateDevice: Emulating handling of VkPhysicalDeviceGroupProperties in pNext chain for ICD \"%s\"",
- icd_term->scanned_icd->lib_name);
-
- // The group must contain only this one device, since physical device groups aren't actually supported
- if (group_info->physicalDeviceCount != 1) {
- loader_log(icd_term->this_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "vkCreateDevice: Emulation failed to create device from device group info");
- res = VK_ERROR_INITIALIZATION_FAILED;
- goto out;
- }
- }
-
- // Nothing needs to be done here because we're leaving the item in the pNext chain and because the spec states
- // that the physicalDevice argument must be included in the device group, and we've already checked that it is
-
- pNext = group_info->pNext;
- break;
- }
-
- // Multiview properties are also allowed, but since VK_KHX_multiview is a device extension, we'll just let the ICD
- // handle that error when the user enables the extension here
- default: {
- const VkBaseInStructure *header = pNext;
- pNext = header->pNext;
- break;
- }
- }
- }
- }
-
- // Every extension that has a loader-defined terminator needs to be marked as enabled or disabled so that we know whether or
- // not to return that terminator when vkGetDeviceProcAddr is called
- for (uint32_t i = 0; i < localCreateInfo.enabledExtensionCount; ++i) {
- if (!strcmp(localCreateInfo.ppEnabledExtensionNames[i], VK_KHR_SWAPCHAIN_EXTENSION_NAME)) {
- dev->extensions.khr_swapchain_enabled = true;
- } else if (!strcmp(localCreateInfo.ppEnabledExtensionNames[i], VK_KHR_DISPLAY_SWAPCHAIN_EXTENSION_NAME)) {
- dev->extensions.khr_display_swapchain_enabled = true;
- } else if (!strcmp(localCreateInfo.ppEnabledExtensionNames[i], VK_KHR_DEVICE_GROUP_EXTENSION_NAME)) {
- dev->extensions.khr_device_group_enabled = true;
- } else if (!strcmp(localCreateInfo.ppEnabledExtensionNames[i], VK_EXT_DEBUG_MARKER_EXTENSION_NAME)) {
- dev->extensions.ext_debug_marker_enabled = true;
- } else if (!strcmp(localCreateInfo.ppEnabledExtensionNames[i], "VK_EXT_full_screen_exclusive")) {
- dev->extensions.ext_full_screen_exclusive_enabled = true;
- }
- }
- dev->extensions.ext_debug_utils_enabled = icd_term->this_instance->enabled_known_extensions.ext_debug_utils;
-
- if (!dev->extensions.khr_device_group_enabled) {
- VkPhysicalDeviceProperties properties;
- icd_term->dispatch.GetPhysicalDeviceProperties(phys_dev_term->phys_dev, &properties);
- if (properties.apiVersion >= VK_API_VERSION_1_1) {
- dev->extensions.khr_device_group_enabled = true;
- }
- }
-
- res = fpCreateDevice(phys_dev_term->phys_dev, &localCreateInfo, pAllocator, &dev->icd_device);
- if (res != VK_SUCCESS) {
- loader_log(icd_term->this_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "terminator_CreateDevice: Failed in ICD %s vkCreateDevice"
- "call",
- icd_term->scanned_icd->lib_name);
- goto out;
- }
-
- *pDevice = dev->icd_device;
- loader_add_logical_device(icd_term->this_instance, icd_term, dev);
-
- // Init dispatch pointer in new device object
- loader_init_dispatch(*pDevice, &dev->loader_dispatch);
-
-out:
- if (NULL != icd_exts.list) {
- loader_destroy_generic_list(icd_term->this_instance, (struct loader_generic_list *)&icd_exts);
- }
-
- // Restore pNext pointer to old VkDeviceGroupDeviceCreateInfoKHX
- // in the chain to maintain consistency for the caller.
- if (caller_dgci_container != NULL) {
- caller_dgci_container->pNext = (VkBaseOutStructure *)caller_dgci;
- }
-
- return res;
-}
-
-VkResult setupLoaderTrampPhysDevs(VkInstance instance) {
- VkResult res = VK_SUCCESS;
- VkPhysicalDevice *local_phys_devs = NULL;
- struct loader_instance *inst;
- uint32_t total_count = 0;
- struct loader_physical_device_tramp **new_phys_devs = NULL;
-
- inst = loader_get_instance(instance);
- if (NULL == inst) {
- res = VK_ERROR_INITIALIZATION_FAILED;
- goto out;
- }
-
- // Query how many GPUs there
- res = inst->disp->layer_inst_disp.EnumeratePhysicalDevices(instance, &total_count, NULL);
- if (res != VK_SUCCESS) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "setupLoaderTrampPhysDevs: Failed during dispatch call "
- "of \'vkEnumeratePhysicalDevices\' to lower layers or "
- "loader to get count.");
- goto out;
- }
-
- // Really use what the total GPU count is since Optimus and other layers may mess
- // the count up.
- total_count = inst->total_gpu_count;
-
- // Create an array for the new physical devices, which will be stored
- // in the instance for the trampoline code.
- new_phys_devs = (struct loader_physical_device_tramp **)loader_instance_heap_alloc(
- inst, total_count * sizeof(struct loader_physical_device_tramp *), VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE);
- if (NULL == new_phys_devs) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "setupLoaderTrampPhysDevs: Failed to allocate new physical device"
- " array of size %d",
- total_count);
- res = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
- memset(new_phys_devs, 0, total_count * sizeof(struct loader_physical_device_tramp *));
-
- // Create a temporary array (on the stack) to keep track of the
- // returned VkPhysicalDevice values.
- local_phys_devs = loader_stack_alloc(sizeof(VkPhysicalDevice) * total_count);
- if (NULL == local_phys_devs) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "setupLoaderTrampPhysDevs: Failed to allocate local "
- "physical device array of size %d",
- total_count);
- res = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
- memset(local_phys_devs, 0, sizeof(VkPhysicalDevice) * total_count);
-
- res = inst->disp->layer_inst_disp.EnumeratePhysicalDevices(instance, &total_count, local_phys_devs);
- if (VK_SUCCESS != res) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "setupLoaderTrampPhysDevs: Failed during dispatch call "
- "of \'vkEnumeratePhysicalDevices\' to lower layers or "
- "loader to get content.");
- goto out;
- }
-
- // Copy or create everything to fill the new array of physical devices
- for (uint32_t new_idx = 0; new_idx < total_count; new_idx++) {
- // Check if this physical device is already in the old buffer
- for (uint32_t old_idx = 0; old_idx < inst->phys_dev_count_tramp; old_idx++) {
- if (local_phys_devs[new_idx] == inst->phys_devs_tramp[old_idx]->phys_dev) {
- new_phys_devs[new_idx] = inst->phys_devs_tramp[old_idx];
- break;
- }
- }
-
- // If this physical device isn't in the old buffer, create it
- if (NULL == new_phys_devs[new_idx]) {
- new_phys_devs[new_idx] = (struct loader_physical_device_tramp *)loader_instance_heap_alloc(
- inst, sizeof(struct loader_physical_device_tramp), VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE);
- if (NULL == new_phys_devs[new_idx]) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "setupLoaderTrampPhysDevs: Failed to allocate "
- "physical device trampoline object %d",
- new_idx);
- total_count = new_idx;
- res = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
-
- // Initialize the new physicalDevice object
- loader_set_dispatch((void *)new_phys_devs[new_idx], inst->disp);
- new_phys_devs[new_idx]->this_instance = inst;
- new_phys_devs[new_idx]->phys_dev = local_phys_devs[new_idx];
- }
- }
-
-out:
-
- if (VK_SUCCESS != res) {
- if (NULL != new_phys_devs) {
- for (uint32_t i = 0; i < total_count; i++) {
- loader_instance_heap_free(inst, new_phys_devs[i]);
- }
- loader_instance_heap_free(inst, new_phys_devs);
- }
- total_count = 0;
- } else {
- // Free everything that didn't carry over to the new array of
- // physical devices
- if (NULL != inst->phys_devs_tramp) {
- for (uint32_t i = 0; i < inst->phys_dev_count_tramp; i++) {
- bool found = false;
- for (uint32_t j = 0; j < total_count; j++) {
- if (inst->phys_devs_tramp[i] == new_phys_devs[j]) {
- found = true;
- break;
- }
- }
- if (!found) {
- loader_instance_heap_free(inst, inst->phys_devs_tramp[i]);
- }
- }
- loader_instance_heap_free(inst, inst->phys_devs_tramp);
- }
-
- // Swap in the new physical device list
- inst->phys_dev_count_tramp = total_count;
- inst->phys_devs_tramp = new_phys_devs;
- }
-
- return res;
-}
-
-struct LoaderSortedPhysicalDevice {
- uint32_t device_count;
- VkPhysicalDevice* physical_devices;
- uint32_t icd_index;
- struct loader_icd_term* icd_term;
-};
-
-// This function allocates an array in sorted_devices which must be freed by the caller if not null
-VkResult ReadSortedPhysicalDevices(struct loader_instance *inst, struct LoaderSortedPhysicalDevice **sorted_devices, uint32_t* sorted_count)
-{
- VkResult res = VK_SUCCESS;
-
-#if defined(_WIN32)
- uint32_t sorted_alloc = 0;
- struct loader_icd_term *icd_term = NULL;
- IDXGIFactory6* dxgi_factory = NULL;
- HRESULT hres = fpCreateDXGIFactory1(&IID_IDXGIFactory6, (void **)&dxgi_factory);
- if (hres != S_OK) {
- loader_log(inst, VK_DEBUG_REPORT_INFORMATION_BIT_EXT, 0, "Failed to create DXGI factory 6. Physical devices will not be sorted");
- }
- else {
- sorted_alloc = 16;
- *sorted_devices = loader_instance_heap_alloc(inst, sorted_alloc * sizeof(struct LoaderSortedPhysicalDevice), VK_SYSTEM_ALLOCATION_SCOPE_COMMAND);
- if (*sorted_devices == NULL) {
- res = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
-
- memset(*sorted_devices, 0, sorted_alloc * sizeof(struct LoaderSortedPhysicalDevice));
-
- *sorted_count = 0;
- for (uint32_t i = 0; ; ++i) {
- IDXGIAdapter1* adapter;
- hres = dxgi_factory->lpVtbl->EnumAdapterByGpuPreference(dxgi_factory, i, DXGI_GPU_PREFERENCE_UNSPECIFIED, &IID_IDXGIAdapter1, (void **)&adapter);
- if (hres == DXGI_ERROR_NOT_FOUND) {
- break; // No more adapters
- }
- else if (hres != S_OK) {
- loader_log(inst, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0, "Failed to enumerate adapters by GPU preference at index %u. This adapter will not be sorted", i);
- break;
- }
-
- DXGI_ADAPTER_DESC1 description;
- hres = adapter->lpVtbl->GetDesc1(adapter, &description);
- if (hres != S_OK) {
- loader_log(inst, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0, "Failed to get adapter LUID index %u. This adapter will not be sorted", i);
- continue;
- }
-
- if (sorted_alloc <= i) {
- uint32_t old_size = sorted_alloc * sizeof(struct LoaderSortedPhysicalDevice);
- *sorted_devices = loader_instance_heap_realloc(inst, *sorted_devices, old_size, 2 * old_size, VK_SYSTEM_ALLOCATION_SCOPE_COMMAND);
- if (*sorted_devices == NULL) {
- adapter->lpVtbl->Release(adapter);
- res = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
- sorted_alloc *= 2;
- }
- struct LoaderSortedPhysicalDevice *sorted_array = *sorted_devices;
- sorted_array[*sorted_count].device_count = 0;
- sorted_array[*sorted_count].physical_devices = NULL;
- //*sorted_count = i;
-
- icd_term = inst->icd_terms;
- for (uint32_t icd_idx = 0; NULL != icd_term; icd_term = icd_term->next, icd_idx++) {
- // This is the new behavior, which cannot be run unless the ICD provides EnumerateAdapterPhysicalDevices
- if (icd_term->scanned_icd->EnumerateAdapterPhysicalDevices == NULL) {
- continue;
- }
-
- uint32_t count;
- VkResult vkres = icd_term->scanned_icd->EnumerateAdapterPhysicalDevices(icd_term->instance, description.AdapterLuid, &count, NULL);
- if (vkres == VK_ERROR_INCOMPATIBLE_DRIVER) {
- continue; // This driver doesn't support the adapter
- } else if (vkres == VK_ERROR_OUT_OF_HOST_MEMORY) {
- res = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- } else if (vkres != VK_SUCCESS) {
- loader_log(inst, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0, "Failed to convert DXGI adapter into Vulkan physical device with unexpected error code");
- continue;
- }
-
- // Get the actual physical devices
- if (0 != count)
- {
- do {
- sorted_array[*sorted_count].physical_devices = loader_instance_heap_realloc(inst, sorted_array[*sorted_count].physical_devices, sorted_array[*sorted_count].device_count * sizeof(VkPhysicalDevice), count * sizeof(VkPhysicalDevice), VK_SYSTEM_ALLOCATION_SCOPE_COMMAND);
- if (sorted_array[*sorted_count].physical_devices == NULL) {
- res = VK_ERROR_OUT_OF_HOST_MEMORY;
- break;
- }
- sorted_array[*sorted_count].device_count = count;
- } while ((vkres = icd_term->scanned_icd->EnumerateAdapterPhysicalDevices(icd_term->instance, description.AdapterLuid, &count, sorted_array[*sorted_count].physical_devices)) == VK_INCOMPLETE);
- }
-
- if (vkres != VK_SUCCESS) {
- loader_instance_heap_free(inst, sorted_array[*sorted_count].physical_devices);
- sorted_array[*sorted_count].physical_devices = NULL;
- if (vkres == VK_ERROR_OUT_OF_HOST_MEMORY) {
- res = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- } else {
- loader_log(inst, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "Failed to convert DXGI adapter into Vulkan physical device");
- continue;
- }
- }
- inst->total_gpu_count += (sorted_array[*sorted_count].device_count = count);
- sorted_array[*sorted_count].icd_index = icd_idx;
- sorted_array[*sorted_count].icd_term = icd_term;
- ++(*sorted_count);
- }
-
- adapter->lpVtbl->Release(adapter);
- }
-
- dxgi_factory->lpVtbl->Release(dxgi_factory);
- }
-
-out:
-#endif
-
- if (*sorted_count == 0 && *sorted_devices != NULL) {
- loader_instance_heap_free(inst, *sorted_devices);
- *sorted_devices = NULL;
- }
- return res;
-}
-
-VkResult setupLoaderTermPhysDevs(struct loader_instance *inst) {
- VkResult res = VK_SUCCESS;
- struct loader_icd_term *icd_term;
- struct loader_phys_dev_per_icd *icd_phys_dev_array = NULL;
- struct loader_physical_device_term **new_phys_devs = NULL;
- struct LoaderSortedPhysicalDevice *sorted_phys_dev_array = NULL;
- uint32_t sorted_count = 0;
-
- inst->total_gpu_count = 0;
-
- // Allocate something to store the physical device characteristics
- // that we read from each ICD.
- icd_phys_dev_array =
- (struct loader_phys_dev_per_icd *)loader_stack_alloc(sizeof(struct loader_phys_dev_per_icd) * inst->total_icd_count);
- if (NULL == icd_phys_dev_array) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "setupLoaderTermPhysDevs: Failed to allocate temporary "
- "ICD Physical device info array of size %d",
- inst->total_gpu_count);
- res = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
- memset(icd_phys_dev_array, 0, sizeof(struct loader_phys_dev_per_icd) * inst->total_icd_count);
-
- // Get the physical devices supported by platform sorting mechanism into a separate list
- res = ReadSortedPhysicalDevices(inst, &sorted_phys_dev_array, &sorted_count);
- if (VK_SUCCESS != res) {
- goto out;
- }
-
- // For each ICD, query the number of physical devices, and then get an
- // internal value for those physical devices.
- icd_term = inst->icd_terms;
- for (uint32_t icd_idx = 0; NULL != icd_term; icd_term = icd_term->next, icd_idx++) {
- icd_phys_dev_array[icd_idx].count = 0;
- icd_phys_dev_array[icd_idx].phys_devs = NULL;
- icd_phys_dev_array[icd_idx].this_icd_term = NULL;
-
- // This is the legacy behavior which should be skipped if EnumerateAdapterPhysicalDevices is available
- // and we successfully enumerated sorted adapters using ReadSortedPhysicalDevices.
-#if defined(VK_USE_PLATFORM_WIN32_KHR)
- if (sorted_count && icd_term->scanned_icd->EnumerateAdapterPhysicalDevices != NULL) {
- continue;
- }
-#endif
-
- res = icd_term->dispatch.EnumeratePhysicalDevices(icd_term->instance, &icd_phys_dev_array[icd_idx].count, NULL);
- if (VK_SUCCESS != res) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "setupLoaderTermPhysDevs: Call to "
- "ICD %d's \'vkEnumeratePhysicalDevices\' failed with"
- " error 0x%08x",
- icd_idx, res);
- goto out;
- }
-
- icd_phys_dev_array[icd_idx].phys_devs =
- (VkPhysicalDevice *)loader_stack_alloc(icd_phys_dev_array[icd_idx].count * sizeof(VkPhysicalDevice));
- if (NULL == icd_phys_dev_array[icd_idx].phys_devs) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "setupLoaderTermPhysDevs: Failed to allocate temporary "
- "ICD Physical device array for ICD %d of size %d",
- icd_idx, inst->total_gpu_count);
- res = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
-
- res = icd_term->dispatch.EnumeratePhysicalDevices(icd_term->instance, &(icd_phys_dev_array[icd_idx].count),
- icd_phys_dev_array[icd_idx].phys_devs);
- if (VK_SUCCESS != res) {
- goto out;
- }
- inst->total_gpu_count += icd_phys_dev_array[icd_idx].count;
- icd_phys_dev_array[icd_idx].this_icd_term = icd_term;
- }
-
- if (0 == inst->total_gpu_count) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "setupLoaderTermPhysDevs: Failed to detect any valid"
- " GPUs in the current config");
- res = VK_ERROR_INITIALIZATION_FAILED;
- goto out;
- }
-
- new_phys_devs = loader_instance_heap_alloc(inst, sizeof(struct loader_physical_device_term *) * inst->total_gpu_count,
- VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE);
- if (NULL == new_phys_devs) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "setupLoaderTermPhysDevs: Failed to allocate new physical"
- " device array of size %d",
- inst->total_gpu_count);
- res = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
- memset(new_phys_devs, 0, sizeof(struct loader_physical_device_term *) * inst->total_gpu_count);
-
- // Copy or create everything to fill the new array of physical devices
- uint32_t idx = 0;
-
-#if defined(_WIN32)
- // Copy over everything found through sorted enumeration
- for (uint32_t i = 0; i < sorted_count; ++i) {
- for (uint32_t j = 0; j < sorted_phys_dev_array[i].device_count; ++j) {
- // Check if this physical device is already in the old buffer
- if (NULL != inst->phys_devs_term) {
- for (uint32_t old_idx = 0; old_idx < inst->phys_dev_count_term; old_idx++) {
- if (sorted_phys_dev_array[i].physical_devices[j] == inst->phys_devs_term[old_idx]->phys_dev) {
- new_phys_devs[idx] = inst->phys_devs_term[old_idx];
- break;
- }
- }
- }
-
- // If this physical device isn't in the old buffer, then we need to create it.
- if (NULL == new_phys_devs[idx]) {
- new_phys_devs[idx] = loader_instance_heap_alloc(inst, sizeof(struct loader_physical_device_term),
- VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE);
- if (NULL == new_phys_devs[idx]) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "setupLoaderTermPhysDevs: Failed to allocate "
- "physical device terminator object %d",
- idx);
- inst->total_gpu_count = idx;
- res = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
-
- loader_set_dispatch((void *)new_phys_devs[idx], inst->disp);
- new_phys_devs[idx]->this_icd_term = sorted_phys_dev_array[i].icd_term;
- new_phys_devs[idx]->icd_index = (uint8_t)(sorted_phys_dev_array[i].icd_index);
- new_phys_devs[idx]->phys_dev = sorted_phys_dev_array[i].physical_devices[j];
- }
-
- // Increment the count of new physical devices
- idx++;
- }
- }
-#endif
-
- // Copy over everything found through EnumeratePhysicalDevices
- for (uint32_t icd_idx = 0; icd_idx < inst->total_icd_count; icd_idx++) {
- for (uint32_t pd_idx = 0; pd_idx < icd_phys_dev_array[icd_idx].count; pd_idx++) {
- // Check if this physical device is already in the old buffer
- if (NULL != inst->phys_devs_term) {
- for (uint32_t old_idx = 0; old_idx < inst->phys_dev_count_term; old_idx++) {
- if (icd_phys_dev_array[icd_idx].phys_devs[pd_idx] == inst->phys_devs_term[old_idx]->phys_dev) {
- new_phys_devs[idx] = inst->phys_devs_term[old_idx];
- break;
- }
- }
- }
- // If this physical device isn't in the old buffer, then we
- // need to create it.
- if (NULL == new_phys_devs[idx]) {
- new_phys_devs[idx] = loader_instance_heap_alloc(inst, sizeof(struct loader_physical_device_term),
- VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE);
- if (NULL == new_phys_devs[idx]) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "setupLoaderTermPhysDevs: Failed to allocate "
- "physical device terminator object %d",
- idx);
- inst->total_gpu_count = idx;
- res = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
-
- loader_set_dispatch((void *)new_phys_devs[idx], inst->disp);
- new_phys_devs[idx]->this_icd_term = icd_phys_dev_array[icd_idx].this_icd_term;
- new_phys_devs[idx]->icd_index = (uint8_t)(icd_idx);
- new_phys_devs[idx]->phys_dev = icd_phys_dev_array[icd_idx].phys_devs[pd_idx];
- }
- idx++;
- }
- }
-
-out:
-
- if (VK_SUCCESS != res) {
- if (NULL != new_phys_devs) {
- // We've encountered an error, so we should free the new buffers.
- for (uint32_t i = 0; i < inst->total_gpu_count; i++) {
- loader_instance_heap_free(inst, new_phys_devs[i]);
- }
- loader_instance_heap_free(inst, new_phys_devs);
- }
- inst->total_gpu_count = 0;
- } else {
- // Free everything that didn't carry over to the new array of
- // physical devices. Everything else will have been copied over
- // to the new array.
- if (NULL != inst->phys_devs_term) {
- for (uint32_t cur_pd = 0; cur_pd < inst->phys_dev_count_term; cur_pd++) {
- bool found = false;
- for (uint32_t new_pd_idx = 0; new_pd_idx < inst->total_gpu_count; new_pd_idx++) {
- if (inst->phys_devs_term[cur_pd] == new_phys_devs[new_pd_idx]) {
- found = true;
- break;
- }
- }
- if (!found) {
- loader_instance_heap_free(inst, inst->phys_devs_term[cur_pd]);
- }
- }
- loader_instance_heap_free(inst, inst->phys_devs_term);
- }
-
- // Swap out old and new devices list
- inst->phys_dev_count_term = inst->total_gpu_count;
- inst->phys_devs_term = new_phys_devs;
- }
-
- if (sorted_phys_dev_array != NULL) {
- for (uint32_t i = 0; i < sorted_count; ++i) {
- if (sorted_phys_dev_array[i].device_count > 0 && sorted_phys_dev_array[i].physical_devices != NULL) {
- loader_instance_heap_free(inst, sorted_phys_dev_array[i].physical_devices);
- }
- }
- loader_instance_heap_free(inst, sorted_phys_dev_array);
- }
-
- return res;
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_EnumeratePhysicalDevices(VkInstance instance, uint32_t *pPhysicalDeviceCount,
- VkPhysicalDevice *pPhysicalDevices) {
- struct loader_instance *inst = (struct loader_instance *)instance;
- VkResult res = VK_SUCCESS;
-
- // Always call the setup loader terminator physical devices because they may
- // have changed at any point.
- res = setupLoaderTermPhysDevs(inst);
- if (VK_SUCCESS != res) {
- goto out;
- }
-
- uint32_t copy_count = inst->total_gpu_count;
- if (NULL != pPhysicalDevices) {
- if (copy_count > *pPhysicalDeviceCount) {
- copy_count = *pPhysicalDeviceCount;
- res = VK_INCOMPLETE;
- }
-
- for (uint32_t i = 0; i < copy_count; i++) {
- pPhysicalDevices[i] = (VkPhysicalDevice)inst->phys_devs_term[i];
- }
- }
-
- *pPhysicalDeviceCount = copy_count;
-
-out:
-
- return res;
-}
-
-VKAPI_ATTR void VKAPI_CALL terminator_GetPhysicalDeviceProperties(VkPhysicalDevice physicalDevice,
- VkPhysicalDeviceProperties *pProperties) {
- struct loader_physical_device_term *phys_dev_term = (struct loader_physical_device_term *)physicalDevice;
- struct loader_icd_term *icd_term = phys_dev_term->this_icd_term;
- if (NULL != icd_term->dispatch.GetPhysicalDeviceProperties) {
- icd_term->dispatch.GetPhysicalDeviceProperties(phys_dev_term->phys_dev, pProperties);
- }
-}
-
-VKAPI_ATTR void VKAPI_CALL terminator_GetPhysicalDeviceQueueFamilyProperties(VkPhysicalDevice physicalDevice,
- uint32_t *pQueueFamilyPropertyCount,
- VkQueueFamilyProperties *pProperties) {
- struct loader_physical_device_term *phys_dev_term = (struct loader_physical_device_term *)physicalDevice;
- struct loader_icd_term *icd_term = phys_dev_term->this_icd_term;
- if (NULL != icd_term->dispatch.GetPhysicalDeviceQueueFamilyProperties) {
- icd_term->dispatch.GetPhysicalDeviceQueueFamilyProperties(phys_dev_term->phys_dev, pQueueFamilyPropertyCount, pProperties);
- }
-}
-
-VKAPI_ATTR void VKAPI_CALL terminator_GetPhysicalDeviceMemoryProperties(VkPhysicalDevice physicalDevice,
- VkPhysicalDeviceMemoryProperties *pProperties) {
- struct loader_physical_device_term *phys_dev_term = (struct loader_physical_device_term *)physicalDevice;
- struct loader_icd_term *icd_term = phys_dev_term->this_icd_term;
- if (NULL != icd_term->dispatch.GetPhysicalDeviceMemoryProperties) {
- icd_term->dispatch.GetPhysicalDeviceMemoryProperties(phys_dev_term->phys_dev, pProperties);
- }
-}
-
-VKAPI_ATTR void VKAPI_CALL terminator_GetPhysicalDeviceFeatures(VkPhysicalDevice physicalDevice,
- VkPhysicalDeviceFeatures *pFeatures) {
- struct loader_physical_device_term *phys_dev_term = (struct loader_physical_device_term *)physicalDevice;
- struct loader_icd_term *icd_term = phys_dev_term->this_icd_term;
- if (NULL != icd_term->dispatch.GetPhysicalDeviceFeatures) {
- icd_term->dispatch.GetPhysicalDeviceFeatures(phys_dev_term->phys_dev, pFeatures);
- }
-}
-
-VKAPI_ATTR void VKAPI_CALL terminator_GetPhysicalDeviceFormatProperties(VkPhysicalDevice physicalDevice, VkFormat format,
- VkFormatProperties *pFormatInfo) {
- struct loader_physical_device_term *phys_dev_term = (struct loader_physical_device_term *)physicalDevice;
- struct loader_icd_term *icd_term = phys_dev_term->this_icd_term;
- if (NULL != icd_term->dispatch.GetPhysicalDeviceFormatProperties) {
- icd_term->dispatch.GetPhysicalDeviceFormatProperties(phys_dev_term->phys_dev, format, pFormatInfo);
- }
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_GetPhysicalDeviceImageFormatProperties(VkPhysicalDevice physicalDevice, VkFormat format,
- VkImageType type, VkImageTiling tiling,
- VkImageUsageFlags usage, VkImageCreateFlags flags,
- VkImageFormatProperties *pImageFormatProperties) {
- struct loader_physical_device_term *phys_dev_term = (struct loader_physical_device_term *)physicalDevice;
- struct loader_icd_term *icd_term = phys_dev_term->this_icd_term;
- if (NULL == icd_term->dispatch.GetPhysicalDeviceImageFormatProperties) {
- loader_log(icd_term->this_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "Encountered the vkEnumerateDeviceLayerProperties "
- "terminator. This means a layer improperly continued.");
- return VK_ERROR_INITIALIZATION_FAILED;
- }
- return icd_term->dispatch.GetPhysicalDeviceImageFormatProperties(phys_dev_term->phys_dev, format, type, tiling, usage, flags,
- pImageFormatProperties);
-}
-
-VKAPI_ATTR void VKAPI_CALL terminator_GetPhysicalDeviceSparseImageFormatProperties(VkPhysicalDevice physicalDevice, VkFormat format,
- VkImageType type, VkSampleCountFlagBits samples,
- VkImageUsageFlags usage, VkImageTiling tiling,
- uint32_t *pNumProperties,
- VkSparseImageFormatProperties *pProperties) {
- struct loader_physical_device_term *phys_dev_term = (struct loader_physical_device_term *)physicalDevice;
- struct loader_icd_term *icd_term = phys_dev_term->this_icd_term;
- if (NULL != icd_term->dispatch.GetPhysicalDeviceSparseImageFormatProperties) {
- icd_term->dispatch.GetPhysicalDeviceSparseImageFormatProperties(phys_dev_term->phys_dev, format, type, samples, usage,
- tiling, pNumProperties, pProperties);
- }
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_EnumerateDeviceExtensionProperties(VkPhysicalDevice physicalDevice,
- const char *pLayerName, uint32_t *pPropertyCount,
- VkExtensionProperties *pProperties) {
- struct loader_physical_device_term *phys_dev_term;
-
- struct loader_layer_list implicit_layer_list = {0};
- struct loader_extension_list all_exts = {0};
- struct loader_extension_list icd_exts = {0};
-
- // Any layer or trampoline wrapping should be removed at this point in time can just cast to the expected
- // type for VkPhysicalDevice.
- phys_dev_term = (struct loader_physical_device_term *)physicalDevice;
-
- // if we got here with a non-empty pLayerName, look up the extensions
- // from the json
- if (pLayerName != NULL && strlen(pLayerName) > 0) {
- uint32_t count;
- uint32_t copy_size;
- const struct loader_instance *inst = phys_dev_term->this_icd_term->this_instance;
- struct loader_device_extension_list *dev_ext_list = NULL;
- struct loader_device_extension_list local_ext_list;
- memset(&local_ext_list, 0, sizeof(local_ext_list));
- if (vk_string_validate(MaxLoaderStringLength, pLayerName) == VK_STRING_ERROR_NONE) {
- for (uint32_t i = 0; i < inst->instance_layer_list.count; i++) {
- struct loader_layer_properties *props = &inst->instance_layer_list.list[i];
- if (strcmp(props->info.layerName, pLayerName) == 0) {
- dev_ext_list = &props->device_extension_list;
- }
- }
-
- count = (dev_ext_list == NULL) ? 0 : dev_ext_list->count;
- if (pProperties == NULL) {
- *pPropertyCount = count;
- loader_destroy_generic_list(inst, (struct loader_generic_list *)&local_ext_list);
- return VK_SUCCESS;
- }
-
- copy_size = *pPropertyCount < count ? *pPropertyCount : count;
- for (uint32_t i = 0; i < copy_size; i++) {
- memcpy(&pProperties[i], &dev_ext_list->list[i].props, sizeof(VkExtensionProperties));
- }
- *pPropertyCount = copy_size;
-
- loader_destroy_generic_list(inst, (struct loader_generic_list *)&local_ext_list);
- if (copy_size < count) {
- return VK_INCOMPLETE;
- }
- } else {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "vkEnumerateDeviceExtensionProperties: pLayerName "
- "is too long or is badly formed");
- return VK_ERROR_EXTENSION_NOT_PRESENT;
- }
-
- return VK_SUCCESS;
- }
-
- // This case is during the call down the instance chain with pLayerName == NULL
- struct loader_icd_term *icd_term = phys_dev_term->this_icd_term;
- uint32_t icd_ext_count = *pPropertyCount;
- VkExtensionProperties *icd_props_list = pProperties;
- VkResult res;
-
- if (NULL == icd_props_list) {
- // We need to find the count without duplicates. This requires querying the driver for the names of the extensions.
- // A small amount of storage is then needed to facilitate the de-duplication.
- res = icd_term->dispatch.EnumerateDeviceExtensionProperties(phys_dev_term->phys_dev, NULL, &icd_ext_count, NULL);
- if (res != VK_SUCCESS) {
- goto out;
- }
- icd_props_list = loader_instance_heap_alloc(icd_term->this_instance, sizeof(VkExtensionProperties) * icd_ext_count,
- VK_SYSTEM_ALLOCATION_SCOPE_COMMAND);
- if (NULL == icd_props_list) {
- res = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
- }
-
- // Get the available device extension count, and if pProperties is not NULL, the extensions as well
- res = icd_term->dispatch.EnumerateDeviceExtensionProperties(phys_dev_term->phys_dev, NULL, &icd_ext_count, icd_props_list);
- if (res != VK_SUCCESS) {
- goto out;
- }
-
- if (!loaderInitLayerList(icd_term->this_instance, &implicit_layer_list)) {
- res = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
-
- loaderAddImplicitLayers(icd_term->this_instance, &implicit_layer_list, NULL, &icd_term->this_instance->instance_layer_list);
-
- // Initialize dev_extension list within the physicalDevice object
- res = loader_init_device_extensions(icd_term->this_instance, phys_dev_term, icd_ext_count, icd_props_list, &icd_exts);
- if (res != VK_SUCCESS) {
- goto out;
- }
-
- // We need to determine which implicit layers are active, and then add their extensions. This can't be cached as
- // it depends on results of environment variables (which can change).
- res = loader_add_to_ext_list(icd_term->this_instance, &all_exts, icd_exts.count, icd_exts.list);
- if (res != VK_SUCCESS) {
- goto out;
- }
-
- loaderAddImplicitLayers(icd_term->this_instance, &implicit_layer_list, NULL, &icd_term->this_instance->instance_layer_list);
-
- for (uint32_t i = 0; i < implicit_layer_list.count; i++) {
- for (uint32_t j = 0; j < implicit_layer_list.list[i].device_extension_list.count; j++) {
- res = loader_add_to_ext_list(icd_term->this_instance, &all_exts, 1,
- &implicit_layer_list.list[i].device_extension_list.list[j].props);
- if (res != VK_SUCCESS) {
- goto out;
- }
- }
- }
- uint32_t capacity = *pPropertyCount;
- VkExtensionProperties *props = pProperties;
-
- res = VK_SUCCESS;
- if (NULL != pProperties) {
- for (uint32_t i = 0; i < all_exts.count && i < capacity; i++) {
- props[i] = all_exts.list[i];
- }
-
- // Wasn't enough space for the extensions, we did partial copy now return VK_INCOMPLETE
- if (capacity < all_exts.count) {
- res = VK_INCOMPLETE;
- } else {
- *pPropertyCount = all_exts.count;
- }
- } else {
- *pPropertyCount = all_exts.count;
- }
-
-out:
-
- if (NULL != implicit_layer_list.list) {
- loader_destroy_generic_list(icd_term->this_instance, (struct loader_generic_list *)&implicit_layer_list);
- }
- if (NULL != all_exts.list) {
- loader_destroy_generic_list(icd_term->this_instance, (struct loader_generic_list *)&all_exts);
- }
- if (NULL != icd_exts.list) {
- loader_destroy_generic_list(icd_term->this_instance, (struct loader_generic_list *)&icd_exts);
- }
- if (NULL == pProperties && NULL != icd_props_list) {
- loader_instance_heap_free(icd_term->this_instance, icd_props_list);
- }
- return res;
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_EnumerateDeviceLayerProperties(VkPhysicalDevice physicalDevice, uint32_t *pPropertyCount,
- VkLayerProperties *pProperties) {
- struct loader_physical_device_term *phys_dev_term = (struct loader_physical_device_term *)physicalDevice;
- struct loader_icd_term *icd_term = phys_dev_term->this_icd_term;
- loader_log(icd_term->this_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "Encountered the vkEnumerateDeviceLayerProperties "
- "terminator. This means a layer improperly continued.");
- // Should never get here this call isn't dispatched down the chain
- return VK_ERROR_INITIALIZATION_FAILED;
-}
-
-VkStringErrorFlags vk_string_validate(const int max_length, const char *utf8) {
- VkStringErrorFlags result = VK_STRING_ERROR_NONE;
- int num_char_bytes = 0;
- int i, j;
-
- if (utf8 == NULL) {
- return VK_STRING_ERROR_NULL_PTR;
- }
-
- for (i = 0; i <= max_length; i++) {
- if (utf8[i] == 0) {
- break;
- } else if (i == max_length) {
- result |= VK_STRING_ERROR_LENGTH;
- break;
- } else if ((utf8[i] >= 0x20) && (utf8[i] < 0x7f)) {
- num_char_bytes = 0;
- } else if ((utf8[i] & UTF8_ONE_BYTE_MASK) == UTF8_ONE_BYTE_CODE) {
- num_char_bytes = 1;
- } else if ((utf8[i] & UTF8_TWO_BYTE_MASK) == UTF8_TWO_BYTE_CODE) {
- num_char_bytes = 2;
- } else if ((utf8[i] & UTF8_THREE_BYTE_MASK) == UTF8_THREE_BYTE_CODE) {
- num_char_bytes = 3;
- } else {
- result = VK_STRING_ERROR_BAD_DATA;
- }
-
- // Validate the following num_char_bytes of data
- for (j = 0; (j < num_char_bytes) && (i < max_length); j++) {
- if (++i == max_length) {
- result |= VK_STRING_ERROR_LENGTH;
- break;
- }
- if ((utf8[i] & UTF8_DATA_BYTE_MASK) != UTF8_DATA_BYTE_CODE) {
- result |= VK_STRING_ERROR_BAD_DATA;
- }
- }
- }
- return result;
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL
-terminator_EnumerateInstanceVersion(const VkEnumerateInstanceVersionChain *chain, uint32_t* pApiVersion) {
- // NOTE: The Vulkan WG doesn't want us checking pApiVersion for NULL, but instead
- // prefers us crashing.
- *pApiVersion = VK_HEADER_VERSION_COMPLETE;
- return VK_SUCCESS;
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL
-terminator_EnumerateInstanceExtensionProperties(const VkEnumerateInstanceExtensionPropertiesChain *chain, const char *pLayerName,
- uint32_t *pPropertyCount, VkExtensionProperties *pProperties) {
- struct loader_extension_list *global_ext_list = NULL;
- struct loader_layer_list instance_layers;
- struct loader_extension_list local_ext_list;
- struct loader_icd_tramp_list icd_tramp_list;
- uint32_t copy_size;
- VkResult res = VK_SUCCESS;
-
- // tls_instance = NULL;
- memset(&local_ext_list, 0, sizeof(local_ext_list));
- memset(&instance_layers, 0, sizeof(instance_layers));
-
- // Get layer libraries if needed
- if (pLayerName && strlen(pLayerName) != 0) {
- if (vk_string_validate(MaxLoaderStringLength, pLayerName) != VK_STRING_ERROR_NONE) {
- assert(VK_FALSE &&
- "vkEnumerateInstanceExtensionProperties: "
- "pLayerName is too long or is badly formed");
- res = VK_ERROR_EXTENSION_NOT_PRESENT;
- goto out;
- }
-
- loaderScanForLayers(NULL, &instance_layers);
- for (uint32_t i = 0; i < instance_layers.count; i++) {
- struct loader_layer_properties *props = &instance_layers.list[i];
- if (strcmp(props->info.layerName, pLayerName) == 0) {
- global_ext_list = &props->instance_extension_list;
- break;
- }
- }
- } else {
- // Preload ICD libraries so subsequent calls to EnumerateInstanceExtensionProperties don't have to load them
- loader_preload_icds();
-
- // Scan/discover all ICD libraries
- memset(&icd_tramp_list, 0, sizeof(icd_tramp_list));
- res = loader_icd_scan(NULL, &icd_tramp_list);
- // EnumerateInstanceExtensionProperties can't return anything other than OOM or VK_ERROR_LAYER_NOT_PRESENT
- if ((VK_SUCCESS != res && icd_tramp_list.count > 0) || res == VK_ERROR_OUT_OF_HOST_MEMORY) {
- goto out;
- }
- // Get extensions from all ICD's, merge so no duplicates
- res = loader_get_icd_loader_instance_extensions(NULL, &icd_tramp_list, &local_ext_list);
- if (VK_SUCCESS != res) {
- goto out;
- }
- loader_scanned_icd_clear(NULL, &icd_tramp_list);
-
- // Append enabled implicit layers.
- loaderScanForImplicitLayers(NULL, &instance_layers);
- for (uint32_t i = 0; i < instance_layers.count; i++) {
- if (!loaderImplicitLayerIsEnabled(NULL, &instance_layers.list[i])) {
- continue;
- }
- struct loader_extension_list *ext_list = &instance_layers.list[i].instance_extension_list;
- loader_add_to_ext_list(NULL, &local_ext_list, ext_list->count, ext_list->list);
- }
-
- global_ext_list = &local_ext_list;
- }
-
- if (global_ext_list == NULL) {
- res = VK_ERROR_LAYER_NOT_PRESENT;
- goto out;
- }
-
- if (pProperties == NULL) {
- *pPropertyCount = global_ext_list->count;
- goto out;
- }
-
- copy_size = *pPropertyCount < global_ext_list->count ? *pPropertyCount : global_ext_list->count;
- for (uint32_t i = 0; i < copy_size; i++) {
- memcpy(&pProperties[i], &global_ext_list->list[i], sizeof(VkExtensionProperties));
- }
- *pPropertyCount = copy_size;
-
- if (copy_size < global_ext_list->count) {
- res = VK_INCOMPLETE;
- goto out;
- }
-
-out:
-
- loader_destroy_generic_list(NULL, (struct loader_generic_list *)&local_ext_list);
- loaderDeleteLayerListAndProperties(NULL, &instance_layers);
- return res;
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_EnumerateInstanceLayerProperties(const VkEnumerateInstanceLayerPropertiesChain *chain,
- uint32_t *pPropertyCount,
- VkLayerProperties *pProperties) {
- VkResult result = VK_SUCCESS;
- struct loader_layer_list instance_layer_list;
- tls_instance = NULL;
-
- LOADER_PLATFORM_THREAD_ONCE(&once_init, loader_initialize);
-
- uint32_t copy_size;
-
- // Get layer libraries
- memset(&instance_layer_list, 0, sizeof(instance_layer_list));
- loaderScanForLayers(NULL, &instance_layer_list);
-
- if (pProperties == NULL) {
- *pPropertyCount = instance_layer_list.count;
- goto out;
- }
-
- copy_size = (*pPropertyCount < instance_layer_list.count) ? *pPropertyCount : instance_layer_list.count;
- for (uint32_t i = 0; i < copy_size; i++) {
- memcpy(&pProperties[i], &instance_layer_list.list[i].info, sizeof(VkLayerProperties));
- }
-
- *pPropertyCount = copy_size;
-
- if (copy_size < instance_layer_list.count) {
- result = VK_INCOMPLETE;
- goto out;
- }
-
-out:
-
- loaderDeleteLayerListAndProperties(NULL, &instance_layer_list);
- return result;
-}
-
-#if defined(_WIN32) && defined(LOADER_DYNAMIC_LIB)
-BOOL WINAPI DllMain(HINSTANCE hinst, DWORD reason, LPVOID reserved) {
- switch (reason) {
- case DLL_PROCESS_ATTACH:
- loader_initialize();
- break;
- case DLL_PROCESS_DETACH:
- if (NULL == reserved) {
- loader_release();
- }
- break;
- default:
- // Do nothing
- break;
- }
- return TRUE;
-}
-#elif !defined(_WIN32)
-__attribute__((constructor)) void loader_init_library() { loader_initialize(); }
-
-__attribute__((destructor)) void loader_free_library() { loader_release(); }
-#endif
-
-// ---- Vulkan Core 1.1 terminators
-
-VkResult setupLoaderTermPhysDevGroups(struct loader_instance *inst) {
- VkResult res = VK_SUCCESS;
- struct loader_icd_term *icd_term;
- uint32_t total_count = 0;
- uint32_t cur_icd_group_count = 0;
- VkPhysicalDeviceGroupPropertiesKHR **new_phys_dev_groups = NULL;
- VkPhysicalDeviceGroupPropertiesKHR *local_phys_dev_groups = NULL;
- bool *local_phys_dev_group_sorted = NULL;
- PFN_vkEnumeratePhysicalDeviceGroups fpEnumeratePhysicalDeviceGroups = NULL;
- struct LoaderSortedPhysicalDevice* sorted_phys_dev_array = NULL;
- uint32_t sorted_count = 0;
-
- if (0 == inst->phys_dev_count_term) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "setupLoaderTermPhysDevGroups: Loader failed to setup physical "
- "device terminator info before calling \'EnumeratePhysicalDeviceGroups\'.");
- assert(false);
- res = VK_ERROR_INITIALIZATION_FAILED;
- goto out;
- }
-
- // For each ICD, query the number of physical device groups, and then get an
- // internal value for those physical devices.
- icd_term = inst->icd_terms;
- for (uint32_t icd_idx = 0; NULL != icd_term; icd_term = icd_term->next, icd_idx++) {
- // Get the function pointer to use to call into the ICD. This could be the core or KHR version
- if (inst->enabled_known_extensions.khr_device_group_creation) {
- fpEnumeratePhysicalDeviceGroups = icd_term->dispatch.EnumeratePhysicalDeviceGroupsKHR;
- } else {
- fpEnumeratePhysicalDeviceGroups = icd_term->dispatch.EnumeratePhysicalDeviceGroups;
- }
-
- cur_icd_group_count = 0;
- if (NULL == fpEnumeratePhysicalDeviceGroups) {
- // Treat each ICD's GPU as it's own group if the extension isn't supported
- res = icd_term->dispatch.EnumeratePhysicalDevices(icd_term->instance, &cur_icd_group_count, NULL);
- if (res != VK_SUCCESS) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "setupLoaderTermPhysDevGroups: Failed during dispatch call of "
- "\'EnumeratePhysicalDevices\' to ICD %d to get plain phys dev count.",
- icd_idx);
- goto out;
- }
- } else {
- // Query the actual group info
- res = fpEnumeratePhysicalDeviceGroups(icd_term->instance, &cur_icd_group_count, NULL);
- if (res != VK_SUCCESS) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "setupLoaderTermPhysDevGroups: Failed during dispatch call of "
- "\'EnumeratePhysicalDeviceGroups\' to ICD %d to get count.",
- icd_idx);
- goto out;
- }
- }
- total_count += cur_icd_group_count;
- }
-
- // Create an array for the new physical device groups, which will be stored
- // in the instance for the Terminator code.
- new_phys_dev_groups = (VkPhysicalDeviceGroupProperties **)loader_instance_heap_alloc(
- inst, total_count * sizeof(VkPhysicalDeviceGroupProperties *), VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE);
- if (NULL == new_phys_dev_groups) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "setupLoaderTermPhysDevGroups: Failed to allocate new physical device"
- " group array of size %d",
- total_count);
- res = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
- memset(new_phys_dev_groups, 0, total_count * sizeof(VkPhysicalDeviceGroupProperties *));
-
- // Create a temporary array (on the stack) to keep track of the
- // returned VkPhysicalDevice values.
- local_phys_dev_groups = loader_stack_alloc(sizeof(VkPhysicalDeviceGroupProperties) * total_count);
- local_phys_dev_group_sorted = loader_stack_alloc(sizeof(bool) * total_count);
- if (NULL == local_phys_dev_groups || NULL == local_phys_dev_group_sorted) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "setupLoaderTermPhysDevGroups: Failed to allocate local "
- "physical device group array of size %d",
- total_count);
- res = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
- // Initialize the memory to something valid
- memset(local_phys_dev_groups, 0, sizeof(VkPhysicalDeviceGroupProperties) * total_count);
- memset(local_phys_dev_group_sorted, 0, sizeof(bool) * total_count);
- for (uint32_t group = 0; group < total_count; group++) {
- local_phys_dev_groups[group].sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES_KHR;
- local_phys_dev_groups[group].pNext = NULL;
- local_phys_dev_groups[group].subsetAllocation = false;
- }
-
- // Get the physical devices supported by platform sorting mechanism into a separate list
- res = ReadSortedPhysicalDevices(inst, &sorted_phys_dev_array, &sorted_count);
- if (VK_SUCCESS != res) {
- goto out;
- }
-
- cur_icd_group_count = 0;
- icd_term = inst->icd_terms;
- for (uint32_t icd_idx = 0; NULL != icd_term; icd_term = icd_term->next, icd_idx++) {
- uint32_t count_this_time = total_count - cur_icd_group_count;
-
- // Check if this group can be sorted
-#if defined(VK_USE_PLATFORM_WIN32_KHR)
- bool icd_sorted = sorted_count && (icd_term->scanned_icd->EnumerateAdapterPhysicalDevices != NULL);
-#else
- bool icd_sorted = false;
-#endif
-
- // Get the function pointer to use to call into the ICD. This could be the core or KHR version
- if (inst->enabled_known_extensions.khr_device_group_creation) {
- fpEnumeratePhysicalDeviceGroups = icd_term->dispatch.EnumeratePhysicalDeviceGroupsKHR;
- } else {
- fpEnumeratePhysicalDeviceGroups = icd_term->dispatch.EnumeratePhysicalDeviceGroups;
- }
-
- if (NULL == fpEnumeratePhysicalDeviceGroups) {
- VkPhysicalDevice* phys_dev_array = loader_stack_alloc(sizeof(VkPhysicalDevice) * count_this_time);
- if (NULL == phys_dev_array) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "setupLoaderTermPhysDevGroups: Failed to allocate local "
- "physical device array of size %d",
- count_this_time);
- res = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
-
- res = icd_term->dispatch.EnumeratePhysicalDevices(icd_term->instance, &count_this_time, phys_dev_array);
- if (res != VK_SUCCESS) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "setupLoaderTermPhysDevGroups: Failed during dispatch call of "
- "\'EnumeratePhysicalDevices\' to ICD %d to get plain phys dev count.",
- icd_idx);
- goto out;
- }
-
- // Add each GPU as it's own group
- for (uint32_t indiv_gpu = 0; indiv_gpu < count_this_time; indiv_gpu++) {
- local_phys_dev_groups[indiv_gpu + cur_icd_group_count].physicalDeviceCount = 1;
- local_phys_dev_groups[indiv_gpu + cur_icd_group_count].physicalDevices[0] = phys_dev_array[indiv_gpu];
- local_phys_dev_group_sorted[indiv_gpu + cur_icd_group_count] = icd_sorted;
- }
-
- } else {
- res = fpEnumeratePhysicalDeviceGroups(icd_term->instance, &count_this_time, &local_phys_dev_groups[cur_icd_group_count]);
- for (uint32_t group = 0; group < count_this_time; ++group) {
- local_phys_dev_group_sorted[group + cur_icd_group_count] = icd_sorted;
- }
- if (VK_SUCCESS != res) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "setupLoaderTermPhysDevGroups: Failed during dispatch call of "
- "\'EnumeratePhysicalDeviceGroups\' to ICD %d to get content.",
- icd_idx);
- goto out;
- }
- }
-
- cur_icd_group_count += count_this_time;
- }
-
- // Replace all the physical device IDs with the proper loader values
- for (uint32_t group = 0; group < total_count; group++) {
- for (uint32_t group_gpu = 0; group_gpu < local_phys_dev_groups[group].physicalDeviceCount; group_gpu++) {
- bool found = false;
- for (uint32_t term_gpu = 0; term_gpu < inst->phys_dev_count_term; term_gpu++) {
- if (local_phys_dev_groups[group].physicalDevices[group_gpu] == inst->phys_devs_term[term_gpu]->phys_dev) {
- local_phys_dev_groups[group].physicalDevices[group_gpu] = (VkPhysicalDevice)inst->phys_devs_term[term_gpu];
- found = true;
- break;
- }
- }
- if (!found) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "setupLoaderTermPhysDevGroups: Failed to find GPU %d in group %d"
- " returned by \'EnumeratePhysicalDeviceGroups\' in list returned"
- " by \'EnumeratePhysicalDevices\'", group_gpu, group);
- res = VK_ERROR_INITIALIZATION_FAILED;
- goto out;
- }
- }
- }
-
- uint32_t idx = 0;
-
-#if defined(_WIN32)
- // Copy over everything found through sorted enumeration
- for (uint32_t i = 0; i < sorted_count; ++i) {
-
- // Find the VkPhysicalDeviceGroupProperties object in local_phys_dev_groups
- VkPhysicalDeviceGroupProperties *group_properties = NULL;
- for (uint32_t group = 0; group < total_count; group++) {
- if (sorted_phys_dev_array[i].device_count != local_phys_dev_groups[group].physicalDeviceCount) {
- continue;
- }
-
- bool match = true;
- for (uint32_t group_gpu = 0; group_gpu < local_phys_dev_groups[group].physicalDeviceCount; group_gpu++) {
- if (sorted_phys_dev_array[i].physical_devices[group_gpu] != ((struct loader_physical_device_term*) local_phys_dev_groups[group].physicalDevices[group_gpu])->phys_dev) {
- match = false;
- break;
- }
- }
-
- if (match) {
- group_properties = &local_phys_dev_groups[group];
- }
- }
-
- // Check if this physical device group with the same contents is already in the old buffer
- for (uint32_t old_idx = 0; old_idx < inst->phys_dev_group_count_term; old_idx++) {
- if (NULL != group_properties && group_properties->physicalDeviceCount == inst->phys_dev_groups_term[old_idx]->physicalDeviceCount) {
- bool found_all_gpus = true;
- for (uint32_t old_gpu = 0; old_gpu < inst->phys_dev_groups_term[old_idx]->physicalDeviceCount; old_gpu++) {
- bool found_gpu = false;
- for (uint32_t new_gpu = 0; new_gpu < group_properties->physicalDeviceCount; new_gpu++) {
- if (group_properties->physicalDevices[new_gpu] == inst->phys_dev_groups_term[old_idx]->physicalDevices[old_gpu]) {
- found_gpu = true;
- break;
- }
- }
-
- if (!found_gpu) {
- found_all_gpus = false;
- break;
- }
- }
- if (!found_all_gpus) {
- continue;
- }
- else {
- new_phys_dev_groups[idx] = inst->phys_dev_groups_term[old_idx];
- break;
- }
- }
- }
-
- // If this physical device group isn't in the old buffer, create it
- if (group_properties != NULL && NULL == new_phys_dev_groups[idx]) {
- new_phys_dev_groups[idx] = (VkPhysicalDeviceGroupPropertiesKHR*)loader_instance_heap_alloc(
- inst, sizeof(VkPhysicalDeviceGroupPropertiesKHR), VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE);
- if (NULL == new_phys_dev_groups[idx]) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "setupLoaderTermPhysDevGroups: Failed to allocate "
- "physical device group Terminator object %d",
- idx);
- total_count = idx;
- res = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
- memcpy(new_phys_dev_groups[idx], group_properties, sizeof(VkPhysicalDeviceGroupPropertiesKHR));
- }
-
- ++idx;
- }
-#endif
-
- // Copy or create everything to fill the new array of physical device groups
- for (uint32_t new_idx = 0; new_idx < total_count; new_idx++) {
- // Skip groups which have been included through sorting
- if (local_phys_dev_group_sorted[new_idx] || local_phys_dev_groups[new_idx].physicalDeviceCount == 0) {
- continue;
- }
-
- // Check if this physical device group with the same contents is already in the old buffer
- for (uint32_t old_idx = 0; old_idx < inst->phys_dev_group_count_term; old_idx++) {
- if (local_phys_dev_groups[new_idx].physicalDeviceCount == inst->phys_dev_groups_term[old_idx]->physicalDeviceCount) {
- bool found_all_gpus = true;
- for (uint32_t old_gpu = 0; old_gpu < inst->phys_dev_groups_term[old_idx]->physicalDeviceCount; old_gpu++) {
- bool found_gpu = false;
- for (uint32_t new_gpu = 0; new_gpu < local_phys_dev_groups[new_idx].physicalDeviceCount; new_gpu++) {
- if (local_phys_dev_groups[new_idx].physicalDevices[new_gpu] == inst->phys_dev_groups_term[old_idx]->physicalDevices[old_gpu]) {
- found_gpu = true;
- break;
- }
- }
-
- if (!found_gpu) {
- found_all_gpus = false;
- break;
- }
- }
- if (!found_all_gpus) {
- continue;
- } else {
- new_phys_dev_groups[idx] = inst->phys_dev_groups_term[old_idx];
- break;
- }
- }
- }
-
- // If this physical device group isn't in the old buffer, create it
- if (NULL == new_phys_dev_groups[idx]) {
- new_phys_dev_groups[idx] = (VkPhysicalDeviceGroupPropertiesKHR *)loader_instance_heap_alloc(
- inst, sizeof(VkPhysicalDeviceGroupPropertiesKHR), VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE);
- if (NULL == new_phys_dev_groups[idx]) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "setupLoaderTermPhysDevGroups: Failed to allocate "
- "physical device group Terminator object %d",
- idx);
- total_count = idx;
- res = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
- memcpy(new_phys_dev_groups[idx], &local_phys_dev_groups[new_idx],
- sizeof(VkPhysicalDeviceGroupPropertiesKHR));
- }
-
- ++idx;
- }
-
-out:
-
- if (VK_SUCCESS != res) {
- if (NULL != new_phys_dev_groups) {
- for (uint32_t i = 0; i < total_count; i++) {
- loader_instance_heap_free(inst, new_phys_dev_groups[i]);
- }
- loader_instance_heap_free(inst, new_phys_dev_groups);
- }
- total_count = 0;
- } else {
- // Free everything that didn't carry over to the new array of
- // physical device groups
- if (NULL != inst->phys_dev_groups_term) {
- for (uint32_t i = 0; i < inst->phys_dev_group_count_term; i++) {
- bool found = false;
- for (uint32_t j = 0; j < total_count; j++) {
- if (inst->phys_dev_groups_term[i] == new_phys_dev_groups[j]) {
- found = true;
- break;
- }
- }
- if (!found) {
- loader_instance_heap_free(inst, inst->phys_dev_groups_term[i]);
- }
- }
- loader_instance_heap_free(inst, inst->phys_dev_groups_term);
- }
-
- // Swap in the new physical device group list
- inst->phys_dev_group_count_term = total_count;
- inst->phys_dev_groups_term = new_phys_dev_groups;
- }
-
- if (sorted_phys_dev_array != NULL) {
- for (uint32_t i = 0; i < sorted_count; ++i) {
- if (sorted_phys_dev_array[i].device_count > 0 && sorted_phys_dev_array[i].physical_devices != NULL) {
- loader_instance_heap_free(inst, sorted_phys_dev_array[i].physical_devices);
- }
- }
- loader_instance_heap_free(inst, sorted_phys_dev_array);
- }
-
- return res;
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_EnumeratePhysicalDeviceGroups(
- VkInstance instance, uint32_t *pPhysicalDeviceGroupCount,
- VkPhysicalDeviceGroupProperties *pPhysicalDeviceGroupProperties) {
- struct loader_instance *inst = (struct loader_instance *)instance;
- VkResult res = VK_SUCCESS;
-
- // Always call the setup loader terminator physical device groups because they may
- // have changed at any point.
- res = setupLoaderTermPhysDevGroups(inst);
- if (VK_SUCCESS != res) {
- goto out;
- }
-
- uint32_t copy_count = inst->phys_dev_group_count_term;
- if (NULL != pPhysicalDeviceGroupProperties) {
- if (copy_count > *pPhysicalDeviceGroupCount) {
- copy_count = *pPhysicalDeviceGroupCount;
- res = VK_INCOMPLETE;
- }
-
- for (uint32_t i = 0; i < copy_count; i++) {
- memcpy(&pPhysicalDeviceGroupProperties[i], inst->phys_dev_groups_term[i],
- sizeof(VkPhysicalDeviceGroupPropertiesKHR));
- }
- }
-
- *pPhysicalDeviceGroupCount = copy_count;
-
-out:
-
- return res;
-}
-
-VKAPI_ATTR void VKAPI_CALL terminator_GetPhysicalDeviceFeatures2(VkPhysicalDevice physicalDevice,
- VkPhysicalDeviceFeatures2 *pFeatures) {
- struct loader_physical_device_term *phys_dev_term = (struct loader_physical_device_term *)physicalDevice;
- struct loader_icd_term *icd_term = phys_dev_term->this_icd_term;
- const struct loader_instance *inst = icd_term->this_instance;
-
- // Get the function pointer to use to call into the ICD. This could be the core or KHR version
- PFN_vkGetPhysicalDeviceFeatures2 fpGetPhysicalDeviceFeatures2 = NULL;
- if (inst != NULL && inst->enabled_known_extensions.khr_get_physical_device_properties2) {
- fpGetPhysicalDeviceFeatures2 = icd_term->dispatch.GetPhysicalDeviceFeatures2KHR;
- } else {
- fpGetPhysicalDeviceFeatures2 = icd_term->dispatch.GetPhysicalDeviceFeatures2;
- }
-
- if (fpGetPhysicalDeviceFeatures2 != NULL || !inst->enabled_known_extensions.khr_get_physical_device_properties2) {
- // Pass the call to the driver
- fpGetPhysicalDeviceFeatures2(phys_dev_term->phys_dev, pFeatures);
- } else {
- // Emulate the call
- loader_log(icd_term->this_instance, VK_DEBUG_REPORT_INFORMATION_BIT_EXT, 0,
- "vkGetPhysicalDeviceFeatures2: Emulating call in ICD \"%s\" using vkGetPhysicalDeviceFeatures",
- icd_term->scanned_icd->lib_name);
-
- // Write to the VkPhysicalDeviceFeatures2 struct
- icd_term->dispatch.GetPhysicalDeviceFeatures(phys_dev_term->phys_dev, &pFeatures->features);
-
- const VkBaseInStructure *pNext = pFeatures->pNext;
- while (pNext != NULL) {
- switch (pNext->sType) {
- case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES: {
- // Skip the check if VK_KHR_multiview is enabled because it's a device extension
- // Write to the VkPhysicalDeviceMultiviewFeaturesKHR struct
- VkPhysicalDeviceMultiviewFeaturesKHR *multiview_features = (VkPhysicalDeviceMultiviewFeaturesKHR *)pNext;
- multiview_features->multiview = VK_FALSE;
- multiview_features->multiviewGeometryShader = VK_FALSE;
- multiview_features->multiviewTessellationShader = VK_FALSE;
-
- pNext = multiview_features->pNext;
- break;
- }
- default: {
- loader_log(icd_term->this_instance, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "vkGetPhysicalDeviceFeatures2: Emulation found unrecognized structure type in pFeatures->pNext - "
- "this struct will be ignored");
-
- pNext = pNext->pNext;
- break;
- }
- }
- }
- }
-}
-
-VKAPI_ATTR void VKAPI_CALL terminator_GetPhysicalDeviceProperties2(VkPhysicalDevice physicalDevice,
- VkPhysicalDeviceProperties2 *pProperties) {
- struct loader_physical_device_term *phys_dev_term = (struct loader_physical_device_term *)physicalDevice;
- struct loader_icd_term *icd_term = phys_dev_term->this_icd_term;
- const struct loader_instance *inst = icd_term->this_instance;
-
- // Get the function pointer to use to call into the ICD. This could be the core or KHR version
- PFN_vkGetPhysicalDeviceProperties2 fpGetPhysicalDeviceProperties2 = NULL;
- if (inst != NULL && inst->enabled_known_extensions.khr_get_physical_device_properties2) {
- fpGetPhysicalDeviceProperties2 = icd_term->dispatch.GetPhysicalDeviceProperties2KHR;
- } else {
- fpGetPhysicalDeviceProperties2 = icd_term->dispatch.GetPhysicalDeviceProperties2;
- }
-
- if (fpGetPhysicalDeviceProperties2 != NULL || !inst->enabled_known_extensions.khr_get_physical_device_properties2) {
- // Pass the call to the driver
- fpGetPhysicalDeviceProperties2(phys_dev_term->phys_dev, pProperties);
- } else {
- // Emulate the call
- loader_log(icd_term->this_instance, VK_DEBUG_REPORT_INFORMATION_BIT_EXT, 0,
- "vkGetPhysicalDeviceProperties2: Emulating call in ICD \"%s\" using vkGetPhysicalDeviceProperties",
- icd_term->scanned_icd->lib_name);
-
- // Write to the VkPhysicalDeviceProperties2 struct
- icd_term->dispatch.GetPhysicalDeviceProperties(phys_dev_term->phys_dev, &pProperties->properties);
-
- const VkBaseInStructure *pNext = pProperties->pNext;
- while (pNext != NULL) {
- switch (pNext->sType) {
- case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES: {
- VkPhysicalDeviceIDPropertiesKHR *id_properties = (VkPhysicalDeviceIDPropertiesKHR *)pNext;
-
- // Verify that "VK_KHR_external_memory_capabilities" is enabled
- if (icd_term->this_instance->enabled_known_extensions.khr_external_memory_capabilities) {
- loader_log(icd_term->this_instance, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "vkGetPhysicalDeviceProperties2: Emulation cannot generate unique IDs for struct "
- "VkPhysicalDeviceIDProperties - setting IDs to zero instead");
-
- // Write to the VkPhysicalDeviceIDPropertiesKHR struct
- memset(id_properties->deviceUUID, 0, VK_UUID_SIZE);
- memset(id_properties->driverUUID, 0, VK_UUID_SIZE);
- id_properties->deviceLUIDValid = VK_FALSE;
- }
-
- pNext = id_properties->pNext;
- break;
- }
- default: {
- loader_log(icd_term->this_instance, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "vkGetPhysicalDeviceProperties2KHR: Emulation found unrecognized structure type in "
- "pProperties->pNext - this struct will be ignored");
-
- pNext = pNext->pNext;
- break;
- }
- }
- }
- }
-}
-
-VKAPI_ATTR void VKAPI_CALL terminator_GetPhysicalDeviceFormatProperties2(VkPhysicalDevice physicalDevice, VkFormat format,
- VkFormatProperties2 *pFormatProperties) {
- struct loader_physical_device_term *phys_dev_term = (struct loader_physical_device_term *)physicalDevice;
- struct loader_icd_term *icd_term = phys_dev_term->this_icd_term;
- const struct loader_instance *inst = icd_term->this_instance;
-
- // Get the function pointer to use to call into the ICD. This could be the core or KHR version
- PFN_vkGetPhysicalDeviceFormatProperties2 fpGetPhysicalDeviceFormatProperties2 = NULL;
- if (inst != NULL && inst->enabled_known_extensions.khr_get_physical_device_properties2) {
- fpGetPhysicalDeviceFormatProperties2 = icd_term->dispatch.GetPhysicalDeviceFormatProperties2KHR;
- } else {
- fpGetPhysicalDeviceFormatProperties2 = icd_term->dispatch.GetPhysicalDeviceFormatProperties2;
- }
-
- if (fpGetPhysicalDeviceFormatProperties2 != NULL || !inst->enabled_known_extensions.khr_get_physical_device_properties2) {
- // Pass the call to the driver
- fpGetPhysicalDeviceFormatProperties2(phys_dev_term->phys_dev, format, pFormatProperties);
- } else {
- // Emulate the call
- loader_log(
- icd_term->this_instance, VK_DEBUG_REPORT_INFORMATION_BIT_EXT, 0,
- "vkGetPhysicalDeviceFormatProperties2: Emulating call in ICD \"%s\" using vkGetPhysicalDeviceFormatProperties",
- icd_term->scanned_icd->lib_name);
-
- // Write to the VkFormatProperties2 struct
- icd_term->dispatch.GetPhysicalDeviceFormatProperties(phys_dev_term->phys_dev, format, &pFormatProperties->formatProperties);
-
- if (pFormatProperties->pNext != NULL) {
- loader_log(icd_term->this_instance, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "vkGetPhysicalDeviceFormatProperties2: Emulation found unrecognized structure type in "
- "pFormatProperties->pNext - this struct will be ignored");
- }
- }
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_GetPhysicalDeviceImageFormatProperties2(
- VkPhysicalDevice physicalDevice, const VkPhysicalDeviceImageFormatInfo2KHR *pImageFormatInfo,
- VkImageFormatProperties2KHR *pImageFormatProperties) {
- struct loader_physical_device_term *phys_dev_term = (struct loader_physical_device_term *)physicalDevice;
- struct loader_icd_term *icd_term = phys_dev_term->this_icd_term;
- const struct loader_instance *inst = icd_term->this_instance;
-
- // Get the function pointer to use to call into the ICD. This could be the core or KHR version
- PFN_vkGetPhysicalDeviceImageFormatProperties2 fpGetPhysicalDeviceImageFormatProperties2 = NULL;
- if (inst != NULL && inst->enabled_known_extensions.khr_get_physical_device_properties2) {
- fpGetPhysicalDeviceImageFormatProperties2 = icd_term->dispatch.GetPhysicalDeviceImageFormatProperties2KHR;
- } else {
- fpGetPhysicalDeviceImageFormatProperties2 = icd_term->dispatch.GetPhysicalDeviceImageFormatProperties2;
- }
-
- if (fpGetPhysicalDeviceImageFormatProperties2 != NULL || !inst->enabled_known_extensions.khr_get_physical_device_properties2) {
- // Pass the call to the driver
- return fpGetPhysicalDeviceImageFormatProperties2(phys_dev_term->phys_dev, pImageFormatInfo, pImageFormatProperties);
- } else {
- // Emulate the call
- loader_log(icd_term->this_instance, VK_DEBUG_REPORT_INFORMATION_BIT_EXT, 0,
- "vkGetPhysicalDeviceImageFormatProperties2: Emulating call in ICD \"%s\" using "
- "vkGetPhysicalDeviceImageFormatProperties",
- icd_term->scanned_icd->lib_name);
-
- // If there is more info in either pNext, then this is unsupported
- if (pImageFormatInfo->pNext != NULL || pImageFormatProperties->pNext != NULL) {
- return VK_ERROR_FORMAT_NOT_SUPPORTED;
- }
-
- // Write to the VkImageFormatProperties2KHR struct
- return icd_term->dispatch.GetPhysicalDeviceImageFormatProperties(
- phys_dev_term->phys_dev, pImageFormatInfo->format, pImageFormatInfo->type, pImageFormatInfo->tiling,
- pImageFormatInfo->usage, pImageFormatInfo->flags, &pImageFormatProperties->imageFormatProperties);
- }
-}
-
-VKAPI_ATTR void VKAPI_CALL terminator_GetPhysicalDeviceQueueFamilyProperties2(
- VkPhysicalDevice physicalDevice, uint32_t *pQueueFamilyPropertyCount, VkQueueFamilyProperties2KHR *pQueueFamilyProperties) {
- struct loader_physical_device_term *phys_dev_term = (struct loader_physical_device_term *)physicalDevice;
- struct loader_icd_term *icd_term = phys_dev_term->this_icd_term;
- const struct loader_instance *inst = icd_term->this_instance;
-
- // Get the function pointer to use to call into the ICD. This could be the core or KHR version
- PFN_vkGetPhysicalDeviceQueueFamilyProperties2 fpGetPhysicalDeviceQueueFamilyProperties2 = NULL;
- if (inst != NULL && inst->enabled_known_extensions.khr_get_physical_device_properties2) {
- fpGetPhysicalDeviceQueueFamilyProperties2 = icd_term->dispatch.GetPhysicalDeviceQueueFamilyProperties2KHR;
- } else {
- fpGetPhysicalDeviceQueueFamilyProperties2 = icd_term->dispatch.GetPhysicalDeviceQueueFamilyProperties2;
- }
-
- if (fpGetPhysicalDeviceQueueFamilyProperties2 != NULL || !inst->enabled_known_extensions.khr_get_physical_device_properties2) {
- // Pass the call to the driver
- fpGetPhysicalDeviceQueueFamilyProperties2(phys_dev_term->phys_dev, pQueueFamilyPropertyCount, pQueueFamilyProperties);
- } else {
- // Emulate the call
- loader_log(icd_term->this_instance, VK_DEBUG_REPORT_INFORMATION_BIT_EXT, 0,
- "vkGetPhysicalDeviceQueueFamilyProperties2: Emulating call in ICD \"%s\" using "
- "vkGetPhysicalDeviceQueueFamilyProperties",
- icd_term->scanned_icd->lib_name);
-
- if (pQueueFamilyProperties == NULL || *pQueueFamilyPropertyCount == 0) {
- // Write to pQueueFamilyPropertyCount
- icd_term->dispatch.GetPhysicalDeviceQueueFamilyProperties(phys_dev_term->phys_dev, pQueueFamilyPropertyCount, NULL);
- } else {
- // Allocate a temporary array for the output of the old function
- VkQueueFamilyProperties *properties = loader_stack_alloc(*pQueueFamilyPropertyCount * sizeof(VkQueueFamilyProperties));
- if (properties == NULL) {
- *pQueueFamilyPropertyCount = 0;
- loader_log(
- icd_term->this_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "vkGetPhysicalDeviceQueueFamilyProperties2: Out of memory - Failed to allocate array for loader emulation.");
- return;
- }
-
- icd_term->dispatch.GetPhysicalDeviceQueueFamilyProperties(phys_dev_term->phys_dev, pQueueFamilyPropertyCount,
- properties);
- for (uint32_t i = 0; i < *pQueueFamilyPropertyCount; ++i) {
- // Write to the VkQueueFamilyProperties2KHR struct
- memcpy(&pQueueFamilyProperties[i].queueFamilyProperties, &properties[i], sizeof(VkQueueFamilyProperties));
-
- if (pQueueFamilyProperties[i].pNext != NULL) {
- loader_log(icd_term->this_instance, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "vkGetPhysicalDeviceQueueFamilyProperties2: Emulation found unrecognized structure type in "
- "pQueueFamilyProperties[%d].pNext - this struct will be ignored",
- i);
- }
- }
- }
- }
-}
-
-VKAPI_ATTR void VKAPI_CALL terminator_GetPhysicalDeviceMemoryProperties2(
- VkPhysicalDevice physicalDevice, VkPhysicalDeviceMemoryProperties2 *pMemoryProperties) {
- struct loader_physical_device_term *phys_dev_term = (struct loader_physical_device_term *)physicalDevice;
- struct loader_icd_term *icd_term = phys_dev_term->this_icd_term;
- const struct loader_instance *inst = icd_term->this_instance;
-
- // Get the function pointer to use to call into the ICD. This could be the core or KHR version
- PFN_vkGetPhysicalDeviceMemoryProperties2 fpGetPhysicalDeviceMemoryProperties2 = NULL;
- if (inst != NULL && inst->enabled_known_extensions.khr_get_physical_device_properties2) {
- fpGetPhysicalDeviceMemoryProperties2 = icd_term->dispatch.GetPhysicalDeviceMemoryProperties2KHR;
- } else {
- fpGetPhysicalDeviceMemoryProperties2 = icd_term->dispatch.GetPhysicalDeviceMemoryProperties2;
- }
-
- if (fpGetPhysicalDeviceMemoryProperties2 != NULL || !inst->enabled_known_extensions.khr_get_physical_device_properties2) {
- // Pass the call to the driver
- fpGetPhysicalDeviceMemoryProperties2(phys_dev_term->phys_dev, pMemoryProperties);
- } else {
- // Emulate the call
- loader_log(
- icd_term->this_instance, VK_DEBUG_REPORT_INFORMATION_BIT_EXT, 0,
- "vkGetPhysicalDeviceMemoryProperties2: Emulating call in ICD \"%s\" using vkGetPhysicalDeviceMemoryProperties",
- icd_term->scanned_icd->lib_name);
-
- // Write to the VkPhysicalDeviceMemoryProperties2 struct
- icd_term->dispatch.GetPhysicalDeviceMemoryProperties(phys_dev_term->phys_dev, &pMemoryProperties->memoryProperties);
-
- if (pMemoryProperties->pNext != NULL) {
- loader_log(icd_term->this_instance, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "vkGetPhysicalDeviceMemoryProperties2: Emulation found unrecognized structure type in "
- "pMemoryProperties->pNext - this struct will be ignored");
- }
- }
-}
-
-VKAPI_ATTR void VKAPI_CALL terminator_GetPhysicalDeviceSparseImageFormatProperties2(
- VkPhysicalDevice physicalDevice, const VkPhysicalDeviceSparseImageFormatInfo2KHR *pFormatInfo, uint32_t *pPropertyCount,
- VkSparseImageFormatProperties2KHR *pProperties) {
- struct loader_physical_device_term *phys_dev_term = (struct loader_physical_device_term *)physicalDevice;
- struct loader_icd_term *icd_term = phys_dev_term->this_icd_term;
- const struct loader_instance *inst = icd_term->this_instance;
-
- // Get the function pointer to use to call into the ICD. This could be the core or KHR version
- PFN_vkGetPhysicalDeviceSparseImageFormatProperties2 fpGetPhysicalDeviceSparseImageFormatProperties2 = NULL;
- if (inst != NULL && inst->enabled_known_extensions.khr_get_physical_device_properties2) {
- fpGetPhysicalDeviceSparseImageFormatProperties2 = icd_term->dispatch.GetPhysicalDeviceSparseImageFormatProperties2KHR;
- } else {
- fpGetPhysicalDeviceSparseImageFormatProperties2 = icd_term->dispatch.GetPhysicalDeviceSparseImageFormatProperties2;
- }
-
- if (fpGetPhysicalDeviceSparseImageFormatProperties2 != NULL || !inst->enabled_known_extensions.khr_get_physical_device_properties2) {
- // Pass the call to the driver
- fpGetPhysicalDeviceSparseImageFormatProperties2(phys_dev_term->phys_dev, pFormatInfo, pPropertyCount, pProperties);
- } else {
- // Emulate the call
- loader_log(icd_term->this_instance, VK_DEBUG_REPORT_INFORMATION_BIT_EXT, 0,
- "vkGetPhysicalDeviceSparseImageFormatProperties2: Emulating call in ICD \"%s\" using "
- "vkGetPhysicalDeviceSparseImageFormatProperties",
- icd_term->scanned_icd->lib_name);
-
- if (pFormatInfo->pNext != NULL) {
- loader_log(icd_term->this_instance, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "vkGetPhysicalDeviceSparseImageFormatProperties2: Emulation found unrecognized structure type in "
- "pFormatInfo->pNext - this struct will be ignored");
- }
-
- if (pProperties == NULL || *pPropertyCount == 0) {
- // Write to pPropertyCount
- icd_term->dispatch.GetPhysicalDeviceSparseImageFormatProperties(
- phys_dev_term->phys_dev, pFormatInfo->format, pFormatInfo->type, pFormatInfo->samples, pFormatInfo->usage,
- pFormatInfo->tiling, pPropertyCount, NULL);
- } else {
- // Allocate a temporary array for the output of the old function
- VkSparseImageFormatProperties *properties =
- loader_stack_alloc(*pPropertyCount * sizeof(VkSparseImageMemoryRequirements));
- if (properties == NULL) {
- *pPropertyCount = 0;
- loader_log(icd_term->this_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "vkGetPhysicalDeviceSparseImageFormatProperties2: Out of memory - Failed to allocate array for "
- "loader emulation.");
- return;
- }
-
- icd_term->dispatch.GetPhysicalDeviceSparseImageFormatProperties(
- phys_dev_term->phys_dev, pFormatInfo->format, pFormatInfo->type, pFormatInfo->samples, pFormatInfo->usage,
- pFormatInfo->tiling, pPropertyCount, properties);
- for (uint32_t i = 0; i < *pPropertyCount; ++i) {
- // Write to the VkSparseImageFormatProperties2KHR struct
- memcpy(&pProperties[i].properties, &properties[i], sizeof(VkSparseImageFormatProperties));
-
- if (pProperties[i].pNext != NULL) {
- loader_log(icd_term->this_instance, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "vkGetPhysicalDeviceSparseImageFormatProperties2: Emulation found unrecognized structure type in "
- "pProperties[%d].pNext - this struct will be ignored",
- i);
- }
- }
- }
- }
-}
-
-VKAPI_ATTR void VKAPI_CALL terminator_GetPhysicalDeviceExternalBufferProperties(
- VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalBufferInfo *pExternalBufferInfo,
- VkExternalBufferProperties *pExternalBufferProperties) {
- struct loader_physical_device_term *phys_dev_term = (struct loader_physical_device_term *)physicalDevice;
- struct loader_icd_term *icd_term = phys_dev_term->this_icd_term;
- const struct loader_instance *inst = icd_term->this_instance;
-
- // Get the function pointer to use to call into the ICD. This could be the core or KHR version
- PFN_vkGetPhysicalDeviceExternalBufferProperties fpGetPhysicalDeviceExternalBufferProperties = NULL;
- if (inst != NULL && inst->enabled_known_extensions.khr_external_memory_capabilities) {
- fpGetPhysicalDeviceExternalBufferProperties = icd_term->dispatch.GetPhysicalDeviceExternalBufferPropertiesKHR;
- } else {
- fpGetPhysicalDeviceExternalBufferProperties = icd_term->dispatch.GetPhysicalDeviceExternalBufferProperties;
- }
-
- if (fpGetPhysicalDeviceExternalBufferProperties || !inst->enabled_known_extensions.khr_external_memory_capabilities) {
- // Pass the call to the driver
- fpGetPhysicalDeviceExternalBufferProperties(phys_dev_term->phys_dev, pExternalBufferInfo, pExternalBufferProperties);
- } else {
- // Emulate the call
- loader_log(icd_term->this_instance, VK_DEBUG_REPORT_INFORMATION_BIT_EXT, 0,
- "vkGetPhysicalDeviceExternalBufferProperties: Emulating call in ICD \"%s\"", icd_term->scanned_icd->lib_name);
-
- if (pExternalBufferInfo->pNext != NULL) {
- loader_log(icd_term->this_instance, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "vkGetPhysicalDeviceExternalBufferProperties: Emulation found unrecognized structure type in "
- "pExternalBufferInfo->pNext - this struct will be ignored");
- }
-
- // Fill in everything being unsupported
- memset(&pExternalBufferProperties->externalMemoryProperties, 0, sizeof(VkExternalMemoryPropertiesKHR));
-
- if (pExternalBufferProperties->pNext != NULL) {
- loader_log(icd_term->this_instance, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "vkGetPhysicalDeviceExternalBufferProperties: Emulation found unrecognized structure type in "
- "pExternalBufferProperties->pNext - this struct will be ignored");
- }
- }
-}
-
-VKAPI_ATTR void VKAPI_CALL terminator_GetPhysicalDeviceExternalSemaphoreProperties(
- VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalSemaphoreInfo *pExternalSemaphoreInfo,
- VkExternalSemaphoreProperties *pExternalSemaphoreProperties) {
- struct loader_physical_device_term *phys_dev_term = (struct loader_physical_device_term *)physicalDevice;
- struct loader_icd_term *icd_term = phys_dev_term->this_icd_term;
- const struct loader_instance *inst = icd_term->this_instance;
-
- // Get the function pointer to use to call into the ICD. This could be the core or KHR version
- PFN_vkGetPhysicalDeviceExternalSemaphoreProperties fpGetPhysicalDeviceExternalSemaphoreProperties = NULL;
- if (inst != NULL && inst->enabled_known_extensions.khr_external_semaphore_capabilities) {
- fpGetPhysicalDeviceExternalSemaphoreProperties = icd_term->dispatch.GetPhysicalDeviceExternalSemaphorePropertiesKHR;
- } else {
- fpGetPhysicalDeviceExternalSemaphoreProperties = icd_term->dispatch.GetPhysicalDeviceExternalSemaphoreProperties;
- }
-
- if (fpGetPhysicalDeviceExternalSemaphoreProperties != NULL || !inst->enabled_known_extensions.khr_external_semaphore_capabilities) {
- // Pass the call to the driver
- fpGetPhysicalDeviceExternalSemaphoreProperties(phys_dev_term->phys_dev, pExternalSemaphoreInfo, pExternalSemaphoreProperties);
- } else {
- // Emulate the call
- loader_log(icd_term->this_instance, VK_DEBUG_REPORT_INFORMATION_BIT_EXT, 0,
- "vkGetPhysicalDeviceExternalSemaphoreProperties: Emulating call in ICD \"%s\"",
- icd_term->scanned_icd->lib_name);
-
- if (pExternalSemaphoreInfo->pNext != NULL) {
- loader_log(icd_term->this_instance, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "vkGetPhysicalDeviceExternalSemaphoreProperties: Emulation found unrecognized structure type in "
- "pExternalSemaphoreInfo->pNext - this struct will be ignored");
- }
-
- // Fill in everything being unsupported
- pExternalSemaphoreProperties->exportFromImportedHandleTypes = 0;
- pExternalSemaphoreProperties->compatibleHandleTypes = 0;
- pExternalSemaphoreProperties->externalSemaphoreFeatures = 0;
-
- if (pExternalSemaphoreProperties->pNext != NULL) {
- loader_log(icd_term->this_instance, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "vkGetPhysicalDeviceExternalSemaphoreProperties: Emulation found unrecognized structure type in "
- "pExternalSemaphoreProperties->pNext - this struct will be ignored");
- }
- }
-}
-
-VKAPI_ATTR void VKAPI_CALL terminator_GetPhysicalDeviceExternalFenceProperties(
- VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalFenceInfo *pExternalFenceInfo,
- VkExternalFenceProperties *pExternalFenceProperties) {
- struct loader_physical_device_term *phys_dev_term = (struct loader_physical_device_term *)physicalDevice;
- struct loader_icd_term *icd_term = phys_dev_term->this_icd_term;
- const struct loader_instance *inst = icd_term->this_instance;
-
- // Get the function pointer to use to call into the ICD. This could be the core or KHR version
- PFN_vkGetPhysicalDeviceExternalFenceProperties fpGetPhysicalDeviceExternalFenceProperties = NULL;
- if (inst != NULL && inst->enabled_known_extensions.khr_external_fence_capabilities) {
- fpGetPhysicalDeviceExternalFenceProperties = icd_term->dispatch.GetPhysicalDeviceExternalFencePropertiesKHR;
- } else {
- fpGetPhysicalDeviceExternalFenceProperties = icd_term->dispatch.GetPhysicalDeviceExternalFenceProperties;
- }
-
- if (fpGetPhysicalDeviceExternalFenceProperties != NULL || !inst->enabled_known_extensions.khr_external_fence_capabilities) {
- // Pass the call to the driver
- fpGetPhysicalDeviceExternalFenceProperties(phys_dev_term->phys_dev, pExternalFenceInfo, pExternalFenceProperties);
- } else {
- // Emulate the call
- loader_log(icd_term->this_instance, VK_DEBUG_REPORT_INFORMATION_BIT_EXT, 0,
- "vkGetPhysicalDeviceExternalFenceProperties: Emulating call in ICD \"%s\"", icd_term->scanned_icd->lib_name);
-
- if (pExternalFenceInfo->pNext != NULL) {
- loader_log(icd_term->this_instance, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "vkGetPhysicalDeviceExternalFenceProperties: Emulation found unrecognized structure type in "
- "pExternalFenceInfo->pNext - this struct will be ignored");
- }
-
- // Fill in everything being unsupported
- pExternalFenceProperties->exportFromImportedHandleTypes = 0;
- pExternalFenceProperties->compatibleHandleTypes = 0;
- pExternalFenceProperties->externalFenceFeatures = 0;
-
- if (pExternalFenceProperties->pNext != NULL) {
- loader_log(icd_term->this_instance, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "vkGetPhysicalDeviceExternalFenceProperties: Emulation found unrecognized structure type in "
- "pExternalFenceProperties->pNext - this struct will be ignored");
- }
- }
-}
diff --git a/thirdparty/vulkan/loader/loader.h b/thirdparty/vulkan/loader/loader.h
deleted file mode 100644
index 847bc6101e..0000000000
--- a/thirdparty/vulkan/loader/loader.h
+++ /dev/null
@@ -1,550 +0,0 @@
-/*
- *
- * Copyright (c) 2014-2019 The Khronos Group Inc.
- * Copyright (c) 2014-2019 Valve Corporation
- * Copyright (c) 2014-2019 LunarG, Inc.
- * Copyright (C) 2015 Google Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * Author: Jon Ashburn <jon@lunarg.com>
- * Author: Courtney Goeltzenleuchter <courtney@LunarG.com>
- * Author: Chia-I Wu <olvaffe@gmail.com>
- * Author: Chia-I Wu <olv@lunarg.com>
- * Author: Mark Lobodzinski <mark@LunarG.com>
- * Author: Lenny Komow <lenny@lunarg.com>
- *
- */
-
-#ifndef LOADER_H
-#define LOADER_H
-
-#include <vulkan/vulkan.h>
-#include "vk_loader_platform.h"
-#include "vk_loader_layer.h"
-#include <vulkan/vk_layer.h>
-#include <vulkan/vk_icd.h>
-#include <assert.h>
-#include "vk_layer_dispatch_table.h"
-#include "vk_loader_extensions.h"
-
-#if defined(__GNUC__) && __GNUC__ >= 4
-#define LOADER_EXPORT __attribute__((visibility("default")))
-#elif defined(__SUNPRO_C) && (__SUNPRO_C >= 0x590)
-#define LOADER_EXPORT __attribute__((visibility("default")))
-#else
-#define LOADER_EXPORT
-#endif
-
-// A debug option to disable allocators at compile time to investigate future issues.
-#define DEBUG_DISABLE_APP_ALLOCATORS 0
-
-#define MAX_STRING_SIZE 1024
-
-// This is defined in vk_layer.h, but if there's problems we need to create the define
-// here.
-#ifndef MAX_NUM_UNKNOWN_EXTS
-#define MAX_NUM_UNKNOWN_EXTS 250
-#endif
-
-enum layer_type_flags {
- VK_LAYER_TYPE_FLAG_INSTANCE_LAYER = 0x1, // If not set, indicates Device layer
- VK_LAYER_TYPE_FLAG_EXPLICIT_LAYER = 0x2, // If not set, indicates Implicit layer
- VK_LAYER_TYPE_FLAG_META_LAYER = 0x4, // If not set, indicates standard layer
-};
-
-typedef enum VkStringErrorFlagBits {
- VK_STRING_ERROR_NONE = 0x00000000,
- VK_STRING_ERROR_LENGTH = 0x00000001,
- VK_STRING_ERROR_BAD_DATA = 0x00000002,
- VK_STRING_ERROR_NULL_PTR = 0x00000004,
-} VkStringErrorFlagBits;
-typedef VkFlags VkStringErrorFlags;
-
-static const int MaxLoaderStringLength = 256;
-static const char UTF8_ONE_BYTE_CODE = 0xC0;
-static const char UTF8_ONE_BYTE_MASK = 0xE0;
-static const char UTF8_TWO_BYTE_CODE = 0xE0;
-static const char UTF8_TWO_BYTE_MASK = 0xF0;
-static const char UTF8_THREE_BYTE_CODE = 0xF0;
-static const char UTF8_THREE_BYTE_MASK = 0xF8;
-static const char UTF8_DATA_BYTE_CODE = 0x80;
-static const char UTF8_DATA_BYTE_MASK = 0xC0;
-
-// form of all dynamic lists/arrays
-// only the list element should be changed
-struct loader_generic_list {
- size_t capacity;
- uint32_t count;
- void *list;
-};
-
-struct loader_extension_list {
- size_t capacity;
- uint32_t count;
- VkExtensionProperties *list;
-};
-
-struct loader_dev_ext_props {
- VkExtensionProperties props;
- uint32_t entrypoint_count;
- char **entrypoints;
-};
-
-struct loader_device_extension_list {
- size_t capacity;
- uint32_t count;
- struct loader_dev_ext_props *list;
-};
-
-struct loader_name_value {
- char name[MAX_STRING_SIZE];
- char value[MAX_STRING_SIZE];
-};
-
-struct loader_layer_functions {
- char str_gipa[MAX_STRING_SIZE];
- char str_gdpa[MAX_STRING_SIZE];
- char str_negotiate_interface[MAX_STRING_SIZE];
- PFN_vkNegotiateLoaderLayerInterfaceVersion negotiate_layer_interface;
- PFN_vkGetInstanceProcAddr get_instance_proc_addr;
- PFN_vkGetDeviceProcAddr get_device_proc_addr;
- PFN_GetPhysicalDeviceProcAddr get_physical_device_proc_addr;
-};
-
-struct loader_override_expiration {
- uint16_t year;
- uint8_t month;
- uint8_t day;
- uint8_t hour;
- uint8_t minute;
-};
-
-struct loader_layer_properties {
- VkLayerProperties info;
- enum layer_type_flags type_flags;
- uint32_t interface_version; // PFN_vkNegotiateLoaderLayerInterfaceVersion
- char lib_name[MAX_STRING_SIZE];
- loader_platform_dl_handle lib_handle;
- struct loader_layer_functions functions;
- struct loader_extension_list instance_extension_list;
- struct loader_device_extension_list device_extension_list;
- struct loader_name_value disable_env_var;
- struct loader_name_value enable_env_var;
- uint32_t num_component_layers;
- char (*component_layer_names)[MAX_STRING_SIZE];
- struct {
- char enumerate_instance_extension_properties[MAX_STRING_SIZE];
- char enumerate_instance_layer_properties[MAX_STRING_SIZE];
- char enumerate_instance_version[MAX_STRING_SIZE];
- } pre_instance_functions;
- uint32_t num_override_paths;
- char (*override_paths)[MAX_STRING_SIZE];
- bool is_override;
- bool has_expiration;
- struct loader_override_expiration expiration;
- bool keep;
- uint32_t num_blacklist_layers;
- char (*blacklist_layer_names)[MAX_STRING_SIZE];
- uint32_t num_app_key_paths;
- char (*app_key_paths)[MAX_STRING_SIZE];
-};
-
-struct loader_layer_list {
- size_t capacity;
- uint32_t count;
- struct loader_layer_properties *list;
-};
-
-struct loader_dispatch_hash_list {
- size_t capacity;
- uint32_t count;
- uint32_t *index; // index into the dev_ext dispatch table
-};
-
-// loader_dispatch_hash_entry and loader_dev_ext_dispatch_table.dev_ext have
-// one to one correspondence; one loader_dispatch_hash_entry for one dev_ext
-// dispatch entry.
-// Also have a one to one correspondence with functions in dev_ext_trampoline.c
-struct loader_dispatch_hash_entry {
- char *func_name;
- struct loader_dispatch_hash_list list; // to handle hashing collisions
-};
-
-typedef VkResult(VKAPI_PTR *PFN_vkDevExt)(VkDevice device);
-struct loader_dev_ext_dispatch_table {
- PFN_vkDevExt dev_ext[MAX_NUM_UNKNOWN_EXTS];
-};
-
-struct loader_dev_dispatch_table {
- VkLayerDispatchTable core_dispatch;
- struct loader_dev_ext_dispatch_table ext_dispatch;
-};
-
-// per CreateDevice structure
-struct loader_device {
- struct loader_dev_dispatch_table loader_dispatch;
- VkDevice chain_device; // device object from the dispatch chain
- VkDevice icd_device; // device object from the icd
- struct loader_physical_device_term *phys_dev_term;
-
- // List of activated layers.
- // app_ is the version based on exactly what the application asked for.
- // This is what must be returned to the application on Enumerate calls.
- // expanded_ is the version based on expanding meta-layers into their
- // individual component layers. This is what is used internally.
- struct loader_layer_list app_activated_layer_list;
- struct loader_layer_list expanded_activated_layer_list;
-
- VkAllocationCallbacks alloc_callbacks;
-
- // List of activated device extensions that have terminators implemented in the loader
- struct {
- bool khr_swapchain_enabled;
- bool khr_display_swapchain_enabled;
- bool khr_device_group_enabled;
- bool ext_debug_marker_enabled;
- bool ext_debug_utils_enabled;
- bool ext_full_screen_exclusive_enabled;
- } extensions;
-
- struct loader_device *next;
-};
-
-// Per ICD information
-
-// Per ICD structure
-struct loader_icd_term {
- // pointers to find other structs
- const struct loader_scanned_icd *scanned_icd;
- const struct loader_instance *this_instance;
- struct loader_device *logical_device_list;
- VkInstance instance; // instance object from the icd
- struct loader_icd_term_dispatch dispatch;
-
- struct loader_icd_term *next;
-
- PFN_PhysDevExt phys_dev_ext[MAX_NUM_UNKNOWN_EXTS];
-};
-
-// Per ICD library structure
-struct loader_icd_tramp_list {
- size_t capacity;
- uint32_t count;
- struct loader_scanned_icd *scanned_list;
-};
-
-struct loader_instance_dispatch_table {
- VkLayerInstanceDispatchTable layer_inst_disp; // must be first entry in structure
-
- // Physical device functions unknown to the loader
- PFN_PhysDevExt phys_dev_ext[MAX_NUM_UNKNOWN_EXTS];
-};
-
-// Per instance structure
-struct loader_instance {
- struct loader_instance_dispatch_table *disp; // must be first entry in structure
-
- // Vulkan API version the app is intending to use.
- uint16_t app_api_major_version;
- uint16_t app_api_minor_version;
-
- // We need to manually track physical devices over time. If the user
- // re-queries the information, we don't want to delete old data or
- // create new data unless necessary.
- uint32_t total_gpu_count;
- uint32_t phys_dev_count_term;
- struct loader_physical_device_term **phys_devs_term;
- uint32_t phys_dev_count_tramp;
- struct loader_physical_device_tramp **phys_devs_tramp;
-
- // We also need to manually track physical device groups, but we don't need
- // loader specific structures since we have that content in the physical
- // device stored internal to the public structures.
- uint32_t phys_dev_group_count_term;
- struct VkPhysicalDeviceGroupProperties **phys_dev_groups_term;
- uint32_t phys_dev_group_count_tramp;
- struct VkPhysicalDeviceGroupProperties **phys_dev_groups_tramp;
-
- struct loader_instance *next;
-
- uint32_t total_icd_count;
- struct loader_icd_term *icd_terms;
- struct loader_icd_tramp_list icd_tramp_list;
-
- struct loader_dispatch_hash_entry dev_ext_disp_hash[MAX_NUM_UNKNOWN_EXTS];
- struct loader_dispatch_hash_entry phys_dev_ext_disp_hash[MAX_NUM_UNKNOWN_EXTS];
-
- struct loader_msg_callback_map_entry *icd_msg_callback_map;
-
- struct loader_layer_list instance_layer_list;
- bool override_layer_present;
-
- // List of activated layers.
- // app_ is the version based on exactly what the application asked for.
- // This is what must be returned to the application on Enumerate calls.
- // expanded_ is the version based on expanding meta-layers into their
- // individual component layers. This is what is used internally.
- struct loader_layer_list app_activated_layer_list;
- struct loader_layer_list expanded_activated_layer_list;
-
- VkInstance instance; // layers/ICD instance returned to trampoline
-
- struct loader_extension_list ext_list; // icds and loaders extensions
- union loader_instance_extension_enables enabled_known_extensions;
-
- VkLayerDbgFunctionNode *DbgFunctionHead;
- uint32_t num_tmp_report_callbacks;
- VkDebugReportCallbackCreateInfoEXT *tmp_report_create_infos;
- VkDebugReportCallbackEXT *tmp_report_callbacks;
- uint32_t num_tmp_messengers;
- VkDebugUtilsMessengerCreateInfoEXT *tmp_messenger_create_infos;
- VkDebugUtilsMessengerEXT *tmp_messengers;
-
- VkAllocationCallbacks alloc_callbacks;
-
- bool wsi_surface_enabled;
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- bool wsi_win32_surface_enabled;
-#endif
-#ifdef VK_USE_PLATFORM_WAYLAND_KHR
- bool wsi_wayland_surface_enabled;
-#endif
-#ifdef VK_USE_PLATFORM_XCB_KHR
- bool wsi_xcb_surface_enabled;
-#endif
-#ifdef VK_USE_PLATFORM_XLIB_KHR
- bool wsi_xlib_surface_enabled;
-#endif
-#ifdef VK_USE_PLATFORM_DIRECTFB_EXT
- bool wsi_directfb_surface_enabled;
-#endif
-#ifdef VK_USE_PLATFORM_ANDROID_KHR
- bool wsi_android_surface_enabled;
-#endif
-#ifdef VK_USE_PLATFORM_MACOS_MVK
- bool wsi_macos_surface_enabled;
-#endif
-#ifdef VK_USE_PLATFORM_IOS_MVK
- bool wsi_ios_surface_enabled;
-#endif
-#ifdef VK_USE_PLATFORM_GGP
- bool wsi_ggp_surface_enabled;
-#endif
- bool wsi_headless_surface_enabled;
-#if defined(VK_USE_PLATFORM_METAL_EXT)
- bool wsi_metal_surface_enabled;
-#endif
-#ifdef VK_USE_PLATFORM_FUCHSIA
- bool wsi_imagepipe_surface_enabled;
-#endif
- bool wsi_display_enabled;
- bool wsi_display_props2_enabled;
-};
-
-// VkPhysicalDevice requires special treatment by loader. Firstly, terminator
-// code must be able to get the struct loader_icd_term to call into the proper
-// driver (multiple ICD/gpu case). This can be accomplished by wrapping the
-// created VkPhysicalDevice in loader terminate_EnumeratePhysicalDevices().
-// Secondly, the loader must be able to handle wrapped by layer VkPhysicalDevice
-// in trampoline code. This implies, that the loader trampoline code must also
-// wrap the VkPhysicalDevice object in trampoline code. Thus, loader has to
-// wrap the VkPhysicalDevice created object twice. In trampoline code it can't
-// rely on the terminator object wrapping since a layer may also wrap. Since
-// trampoline code wraps the VkPhysicalDevice this means all loader trampoline
-// code that passes a VkPhysicalDevice should unwrap it.
-
-// Per enumerated PhysicalDevice structure, used to wrap in trampoline code and
-// also same structure used to wrap in terminator code
-struct loader_physical_device_tramp {
- struct loader_instance_dispatch_table *disp; // must be first entry in structure
- struct loader_instance *this_instance;
- VkPhysicalDevice phys_dev; // object from layers/loader terminator
-};
-
-// Per enumerated PhysicalDevice structure, used to wrap in terminator code
-struct loader_physical_device_term {
- struct loader_instance_dispatch_table *disp; // must be first entry in structure
- struct loader_icd_term *this_icd_term;
- uint8_t icd_index;
- VkPhysicalDevice phys_dev; // object from ICD
-};
-
-struct loader_struct {
- struct loader_instance *instances;
-};
-
-struct loader_scanned_icd {
- char *lib_name;
- loader_platform_dl_handle handle;
- uint32_t api_version;
- uint32_t interface_version;
- PFN_vkGetInstanceProcAddr GetInstanceProcAddr;
- PFN_GetPhysicalDeviceProcAddr GetPhysicalDeviceProcAddr;
- PFN_vkCreateInstance CreateInstance;
- PFN_vkEnumerateInstanceExtensionProperties EnumerateInstanceExtensionProperties;
-#if defined(VK_USE_PLATFORM_WIN32_KHR)
- PFN_vk_icdEnumerateAdapterPhysicalDevices EnumerateAdapterPhysicalDevices;
-#endif
-};
-
-static inline struct loader_instance *loader_instance(VkInstance instance) { return (struct loader_instance *)instance; }
-
-static inline VkPhysicalDevice loader_unwrap_physical_device(VkPhysicalDevice physicalDevice) {
- struct loader_physical_device_tramp *phys_dev = (struct loader_physical_device_tramp *)physicalDevice;
- return phys_dev->phys_dev;
-}
-
-static inline void loader_set_dispatch(void *obj, const void *data) { *((const void **)obj) = data; }
-
-static inline VkLayerDispatchTable *loader_get_dispatch(const void *obj) { return *((VkLayerDispatchTable **)obj); }
-
-static inline struct loader_dev_dispatch_table *loader_get_dev_dispatch(const void *obj) {
- return *((struct loader_dev_dispatch_table **)obj);
-}
-
-static inline VkLayerInstanceDispatchTable *loader_get_instance_layer_dispatch(const void *obj) {
- return *((VkLayerInstanceDispatchTable **)obj);
-}
-
-static inline struct loader_instance_dispatch_table *loader_get_instance_dispatch(const void *obj) {
- return *((struct loader_instance_dispatch_table **)obj);
-}
-
-static inline void loader_init_dispatch(void *obj, const void *data) {
-#ifdef DEBUG
- assert(valid_loader_magic_value(obj) &&
- "Incompatible ICD, first dword must be initialized to "
- "ICD_LOADER_MAGIC. See loader/README.md for details.");
-#endif
-
- loader_set_dispatch(obj, data);
-}
-
-// Global variables used across files
-extern struct loader_struct loader;
-extern THREAD_LOCAL_DECL struct loader_instance *tls_instance;
-#if defined(_WIN32) && !defined(LOADER_DYNAMIC_LIB)
-extern LOADER_PLATFORM_THREAD_ONCE_DEFINITION(once_init);
-#endif
-extern loader_platform_thread_mutex loader_lock;
-extern loader_platform_thread_mutex loader_json_lock;
-extern loader_platform_thread_mutex loader_preload_icd_lock;
-
-struct loader_msg_callback_map_entry {
- VkDebugReportCallbackEXT icd_obj;
- VkDebugReportCallbackEXT loader_obj;
-};
-
-// Helper function definitions
-void *loader_instance_heap_alloc(const struct loader_instance *instance, size_t size, VkSystemAllocationScope allocationScope);
-void loader_instance_heap_free(const struct loader_instance *instance, void *pMemory);
-void *loader_instance_heap_realloc(const struct loader_instance *instance, void *pMemory, size_t orig_size, size_t size,
- VkSystemAllocationScope alloc_scope);
-void *loader_instance_tls_heap_alloc(size_t size);
-void loader_instance_tls_heap_free(void *pMemory);
-void *loader_device_heap_alloc(const struct loader_device *device, size_t size, VkSystemAllocationScope allocationScope);
-void loader_device_heap_free(const struct loader_device *device, void *pMemory);
-void *loader_device_heap_realloc(const struct loader_device *device, void *pMemory, size_t orig_size, size_t size,
- VkSystemAllocationScope alloc_scope);
-
-void loader_log(const struct loader_instance *inst, VkFlags msg_type, int32_t msg_code, const char *format, ...);
-
-bool compare_vk_extension_properties(const VkExtensionProperties *op1, const VkExtensionProperties *op2);
-
-VkResult loaderValidateLayers(const struct loader_instance *inst, const uint32_t layer_count,
- const char *const *ppEnabledLayerNames, const struct loader_layer_list *list);
-
-VkResult loader_validate_instance_extensions(struct loader_instance *inst, const struct loader_extension_list *icd_exts,
- const struct loader_layer_list *instance_layer,
- const VkInstanceCreateInfo *pCreateInfo);
-
-void loader_initialize(void);
-void loader_preload_icds(void);
-void loader_unload_preloaded_icds(void);
-bool has_vk_extension_property_array(const VkExtensionProperties *vk_ext_prop, const uint32_t count,
- const VkExtensionProperties *ext_array);
-bool has_vk_extension_property(const VkExtensionProperties *vk_ext_prop, const struct loader_extension_list *ext_list);
-
-VkResult loader_add_to_ext_list(const struct loader_instance *inst, struct loader_extension_list *ext_list,
- uint32_t prop_list_count, const VkExtensionProperties *props);
-VkResult loader_add_to_dev_ext_list(const struct loader_instance *inst, struct loader_device_extension_list *ext_list,
- const VkExtensionProperties *props, uint32_t entry_count, char **entrys);
-VkResult loader_add_device_extensions(const struct loader_instance *inst,
- PFN_vkEnumerateDeviceExtensionProperties fpEnumerateDeviceExtensionProperties,
- VkPhysicalDevice physical_device, const char *lib_name,
- struct loader_extension_list *ext_list);
-VkResult loader_init_generic_list(const struct loader_instance *inst, struct loader_generic_list *list_info, size_t element_size);
-void loader_destroy_generic_list(const struct loader_instance *inst, struct loader_generic_list *list);
-void loaderDestroyLayerList(const struct loader_instance *inst, struct loader_device *device, struct loader_layer_list *layer_list);
-void loaderDeleteLayerListAndProperties(const struct loader_instance *inst, struct loader_layer_list *layer_list);
-VkResult loaderAddLayerNameToList(const struct loader_instance *inst, const char *name, const enum layer_type_flags type_flags,
- const struct loader_layer_list *source_list, struct loader_layer_list *target_list,
- struct loader_layer_list *expanded_target_list);
-void loader_scanned_icd_clear(const struct loader_instance *inst, struct loader_icd_tramp_list *icd_tramp_list);
-VkResult loader_icd_scan(const struct loader_instance *inst, struct loader_icd_tramp_list *icd_tramp_list);
-void loaderScanForLayers(struct loader_instance *inst, struct loader_layer_list *instance_layers);
-void loaderScanForImplicitLayers(struct loader_instance *inst, struct loader_layer_list *instance_layers);
-bool loaderImplicitLayerIsEnabled(const struct loader_instance *inst, const struct loader_layer_properties *prop);
-VkResult loader_get_icd_loader_instance_extensions(const struct loader_instance *inst, struct loader_icd_tramp_list *icd_tramp_list,
- struct loader_extension_list *inst_exts);
-struct loader_icd_term *loader_get_icd_and_device(const void *device, struct loader_device **found_dev, uint32_t *icd_index);
-void loader_init_dispatch_dev_ext(struct loader_instance *inst, struct loader_device *dev);
-void *loader_dev_ext_gpa(struct loader_instance *inst, const char *funcName);
-void *loader_get_dev_ext_trampoline(uint32_t index);
-bool loader_phys_dev_ext_gpa(struct loader_instance *inst, const char *funcName, bool perform_checking, void **tramp_addr,
- void **term_addr);
-void *loader_get_phys_dev_ext_tramp(uint32_t index);
-void *loader_get_phys_dev_ext_termin(uint32_t index);
-struct loader_instance *loader_get_instance(const VkInstance instance);
-void loaderDeactivateLayers(const struct loader_instance *instance, struct loader_device *device, struct loader_layer_list *list);
-struct loader_device *loader_create_logical_device(const struct loader_instance *inst, const VkAllocationCallbacks *pAllocator);
-void loader_add_logical_device(const struct loader_instance *inst, struct loader_icd_term *icd_term,
- struct loader_device *found_dev);
-void loader_remove_logical_device(const struct loader_instance *inst, struct loader_icd_term *icd_term,
- struct loader_device *found_dev, const VkAllocationCallbacks *pAllocator);
-// NOTE: Outside of loader, this entry-point is only provided for error
-// cleanup.
-void loader_destroy_logical_device(const struct loader_instance *inst, struct loader_device *dev,
- const VkAllocationCallbacks *pAllocator);
-
-VkResult loaderEnableInstanceLayers(struct loader_instance *inst, const VkInstanceCreateInfo *pCreateInfo,
- const struct loader_layer_list *instance_layers);
-
-VkResult loader_create_instance_chain(const VkInstanceCreateInfo *pCreateInfo, const VkAllocationCallbacks *pAllocator,
- struct loader_instance *inst, VkInstance *created_instance);
-
-void loaderActivateInstanceLayerExtensions(struct loader_instance *inst, VkInstance created_inst);
-
-VKAPI_ATTR VkResult VKAPI_CALL loader_layer_create_device(VkInstance instance, VkPhysicalDevice physicalDevice,
- const VkDeviceCreateInfo *pCreateInfo,
- const VkAllocationCallbacks *pAllocator, VkDevice *pDevice,
- PFN_vkGetInstanceProcAddr layerGIPA, PFN_vkGetDeviceProcAddr *nextGDPA);
-VKAPI_ATTR void VKAPI_CALL loader_layer_destroy_device(VkDevice device, const VkAllocationCallbacks *pAllocator,
- PFN_vkDestroyDevice destroyFunction);
-
-VkResult loader_create_device_chain(const VkPhysicalDevice pd, const VkDeviceCreateInfo *pCreateInfo,
- const VkAllocationCallbacks *pAllocator, const struct loader_instance *inst,
- struct loader_device *dev, PFN_vkGetInstanceProcAddr callingLayer,
- PFN_vkGetDeviceProcAddr *layerNextGDPA);
-
-VkResult loader_validate_device_extensions(struct loader_instance *this_instance,
- const struct loader_layer_list *activated_device_layers,
- const struct loader_extension_list *icd_exts, const VkDeviceCreateInfo *pCreateInfo);
-
-VkResult setupLoaderTrampPhysDevs(VkInstance instance);
-VkResult setupLoaderTermPhysDevs(struct loader_instance *inst);
-
-VkStringErrorFlags vk_string_validate(const int max_length, const char *char_array);
-
-#endif // LOADER_H
diff --git a/thirdparty/vulkan/loader/murmurhash.c b/thirdparty/vulkan/loader/murmurhash.c
deleted file mode 100644
index 40f0d5e975..0000000000
--- a/thirdparty/vulkan/loader/murmurhash.c
+++ /dev/null
@@ -1,98 +0,0 @@
-
-/**
- * `murmurhash.h' - murmurhash
- *
- * copyright (c) 2014 joseph werle <joseph.werle@gmail.com>
- * Copyright (c) 2015-2016 The Khronos Group Inc.
- * Copyright (c) 2015-2016 Valve Corporation
- * Copyright (c) 2015-2016 LunarG, Inc.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and/or associated documentation files (the "Materials"), to
- * deal in the Materials without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Materials, and to permit persons to whom the Materials are
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice(s) and this permission notice shall be included in
- * all copies or substantial portions of the Materials.
- *
- * THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
- *
- * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
- * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
- * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE MATERIALS OR THE
- * USE OR OTHER DEALINGS IN THE MATERIALS.
- */
-
-#include <stdlib.h>
-#include <stdio.h>
-#include <stdint.h>
-#include "murmurhash.h"
-
-uint32_t murmurhash(const char *key, size_t len, uint32_t seed) {
- uint32_t c1 = 0xcc9e2d51;
- uint32_t c2 = 0x1b873593;
- uint32_t r1 = 15;
- uint32_t r2 = 13;
- uint32_t m = 5;
- uint32_t n = 0xe6546b64;
- uint32_t h = 0;
- uint32_t k = 0;
- uint8_t *d = (uint8_t *)key; // 32 bit extract from `key'
- const uint32_t *chunks = NULL;
- const uint8_t *tail = NULL; // tail - last 8 bytes
- int i = 0;
- int l = (int)len / 4; // chunk length
-
- h = seed;
-
- chunks = (const uint32_t *)(d + l * 4); // body
- tail = (const uint8_t *)(d + l * 4); // last 8 byte chunk of `key'
-
- // for each 4 byte chunk of `key'
- for (i = -l; i != 0; ++i) {
- // next 4 byte chunk of `key'
- k = chunks[i];
-
- // encode next 4 byte chunk of `key'
- k *= c1;
- k = (k << r1) | (k >> (32 - r1));
- k *= c2;
-
- // append to hash
- h ^= k;
- h = (h << r2) | (h >> (32 - r2));
- h = h * m + n;
- }
-
- k = 0;
-
- // remainder
- switch (len & 3) { // `len % 4'
- case 3:
- k ^= (tail[2] << 16);
- // fall through
- case 2:
- k ^= (tail[1] << 8);
- // fall through
- case 1:
- k ^= tail[0];
- k *= c1;
- k = (k << r1) | (k >> (32 - r1));
- k *= c2;
- h ^= k;
- }
-
- h ^= len;
-
- h ^= (h >> 16);
- h *= 0x85ebca6b;
- h ^= (h >> 13);
- h *= 0xc2b2ae35;
- h ^= (h >> 16);
-
- return h;
-}
diff --git a/thirdparty/vulkan/loader/murmurhash.h b/thirdparty/vulkan/loader/murmurhash.h
deleted file mode 100644
index 775532e8b8..0000000000
--- a/thirdparty/vulkan/loader/murmurhash.h
+++ /dev/null
@@ -1,52 +0,0 @@
-
-/**
- * `murmurhash.h' - murmurhash
- *
- * copyright (c) 2014 joseph werle <joseph.werle@gmail.com>
- * Copyright (c) 2015-2016 The Khronos Group Inc.
- * Copyright (c) 2015-2016 Valve Corporation
- * Copyright (c) 2015-2016 LunarG, Inc.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and/or associated documentation files (the "Materials"), to
- * deal in the Materials without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Materials, and to permit persons to whom the Materials are
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice(s) and this permission notice shall be included in
- * all copies or substantial portions of the Materials.
- *
- * THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
- *
- * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
- * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
- * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE MATERIALS OR THE
- * USE OR OTHER DEALINGS IN THE MATERIALS.
- */
-
-#ifndef MURMURHASH_H
-#define MURMURHASH_H 1
-
-#include <stdint.h>
-
-#define MURMURHASH_VERSION "0.0.3"
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/**
- * Returns a murmur hash of `key' based on `seed'
- * using the MurmurHash3 algorithm
- */
-
-uint32_t murmurhash(const char *key, size_t len, uint32_t seed);
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif
diff --git a/thirdparty/vulkan/loader/phys_dev_ext.c b/thirdparty/vulkan/loader/phys_dev_ext.c
deleted file mode 100644
index 91e0ef8f67..0000000000
--- a/thirdparty/vulkan/loader/phys_dev_ext.c
+++ /dev/null
@@ -1,1056 +0,0 @@
-/*
- *
- * Copyright (c) 2016-17 The Khronos Group Inc.
- * Copyright (c) 2016-17 Valve Corporation
- * Copyright (c) 2016-17 LunarG, Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * Author: Mark Young <marky@lunarg.com>
- * Author: Lenny Komow <lenny@lunarg.com>
- *
- */
-
-// This code is used to enable generic instance extensions which use a physical device
-// as the first parameter. If the extension is already known by the loader, it will
-// not use this code, but instead use the more direct route. However, if it is
-// unknown to the loader, it will use this code. Technically, this is not trampoline
-// code since we don't want to optimize it out.
-
-#include "vk_loader_platform.h"
-#include "loader.h"
-
-#if defined(__GNUC__) && !defined(__clang__)
-#pragma GCC optimize(3) // force gcc to use tail-calls
-#endif
-
-// Declarations for the trampoline
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp0(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp1(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp2(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp3(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp4(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp5(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp6(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp7(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp8(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp9(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp10(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp11(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp12(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp13(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp14(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp15(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp16(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp17(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp18(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp19(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp20(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp21(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp22(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp23(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp24(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp25(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp26(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp27(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp28(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp29(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp30(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp31(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp32(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp33(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp34(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp35(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp36(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp37(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp38(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp39(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp40(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp41(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp42(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp43(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp44(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp45(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp46(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp47(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp48(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp49(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp50(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp51(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp52(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp53(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp54(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp55(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp56(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp57(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp58(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp59(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp60(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp61(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp62(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp63(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp64(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp65(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp66(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp67(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp68(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp69(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp70(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp71(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp72(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp73(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp74(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp75(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp76(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp77(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp78(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp79(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp80(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp81(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp82(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp83(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp84(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp85(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp86(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp87(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp88(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp89(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp90(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp91(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp92(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp93(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp94(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp95(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp96(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp97(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp98(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp99(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp100(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp101(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp102(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp103(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp104(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp105(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp106(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp107(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp108(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp109(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp110(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp111(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp112(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp113(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp114(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp115(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp116(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp117(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp118(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp119(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp120(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp121(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp122(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp123(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp124(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp125(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp126(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp127(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp128(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp129(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp130(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp131(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp132(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp133(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp134(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp135(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp136(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp137(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp138(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp139(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp140(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp141(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp142(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp143(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp144(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp145(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp146(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp147(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp148(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp149(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp150(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp151(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp152(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp153(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp154(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp155(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp156(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp157(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp158(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp159(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp160(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp161(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp162(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp163(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp164(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp165(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp166(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp167(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp168(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp169(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp170(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp171(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp172(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp173(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp174(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp175(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp176(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp177(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp178(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp179(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp180(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp181(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp182(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp183(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp184(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp185(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp186(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp187(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp188(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp189(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp190(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp191(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp192(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp193(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp194(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp195(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp196(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp197(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp198(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp199(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp200(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp201(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp202(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp203(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp204(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp205(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp206(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp207(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp208(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp209(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp210(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp211(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp212(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp213(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp214(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp215(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp216(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp217(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp218(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp219(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp220(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp221(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp222(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp223(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp224(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp225(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp226(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp227(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp228(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp229(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp230(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp231(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp232(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp233(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp234(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp235(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp236(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp237(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp238(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp239(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp240(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp241(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp242(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp243(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp244(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp245(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp246(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp247(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp248(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp249(VkPhysicalDevice);
-
-// Disable clang-format for lists of macros
-// clang-format off
-
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin0(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin1(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin2(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin3(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin4(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin5(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin6(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin7(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin8(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin9(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin10(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin11(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin12(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin13(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin14(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin15(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin16(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin17(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin18(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin19(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin20(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin21(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin22(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin23(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin24(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin25(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin26(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin27(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin28(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin29(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin30(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin31(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin32(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin33(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin34(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin35(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin36(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin37(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin38(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin39(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin40(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin41(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin42(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin43(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin44(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin45(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin46(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin47(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin48(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin49(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin50(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin51(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin52(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin53(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin54(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin55(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin56(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin57(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin58(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin59(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin60(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin61(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin62(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin63(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin64(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin65(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin66(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin67(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin68(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin69(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin70(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin71(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin72(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin73(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin74(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin75(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin76(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin77(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin78(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin79(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin80(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin81(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin82(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin83(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin84(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin85(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin86(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin87(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin88(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin89(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin90(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin91(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin92(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin93(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin94(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin95(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin96(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin97(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin98(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin99(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin100(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin101(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin102(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin103(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin104(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin105(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin106(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin107(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin108(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin109(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin110(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin111(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin112(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin113(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin114(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin115(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin116(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin117(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin118(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin119(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin120(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin121(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin122(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin123(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin124(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin125(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin126(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin127(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin128(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin129(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin130(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin131(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin132(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin133(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin134(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin135(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin136(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin137(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin138(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin139(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin140(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin141(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin142(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin143(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin144(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin145(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin146(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin147(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin148(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin149(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin150(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin151(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin152(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin153(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin154(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin155(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin156(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin157(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin158(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin159(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin160(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin161(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin162(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin163(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin164(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin165(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin166(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin167(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin168(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin169(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin170(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin171(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin172(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin173(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin174(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin175(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin176(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin177(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin178(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin179(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin180(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin181(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin182(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin183(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin184(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin185(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin186(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin187(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin188(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin189(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin190(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin191(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin192(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin193(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin194(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin195(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin196(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin197(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin198(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin199(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin200(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin201(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin202(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin203(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin204(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin205(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin206(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin207(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin208(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin209(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin210(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin211(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin212(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin213(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin214(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin215(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin216(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin217(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin218(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin219(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin220(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin221(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin222(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin223(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin224(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin225(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin226(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin227(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin228(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin229(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin230(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin231(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin232(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin233(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin234(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin235(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin236(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin237(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin238(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin239(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin240(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin241(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin242(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin243(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin244(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin245(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin246(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin247(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin248(VkPhysicalDevice);
-VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin249(VkPhysicalDevice);
-
-
-void *loader_get_phys_dev_ext_tramp(uint32_t index) {
- switch (index) {
-#define TRAMP_CASE_HANDLE(num) case num: return vkPhysDevExtTramp##num
- TRAMP_CASE_HANDLE(0);
- TRAMP_CASE_HANDLE(1);
- TRAMP_CASE_HANDLE(2);
- TRAMP_CASE_HANDLE(3);
- TRAMP_CASE_HANDLE(4);
- TRAMP_CASE_HANDLE(5);
- TRAMP_CASE_HANDLE(6);
- TRAMP_CASE_HANDLE(7);
- TRAMP_CASE_HANDLE(8);
- TRAMP_CASE_HANDLE(9);
- TRAMP_CASE_HANDLE(10);
- TRAMP_CASE_HANDLE(11);
- TRAMP_CASE_HANDLE(12);
- TRAMP_CASE_HANDLE(13);
- TRAMP_CASE_HANDLE(14);
- TRAMP_CASE_HANDLE(15);
- TRAMP_CASE_HANDLE(16);
- TRAMP_CASE_HANDLE(17);
- TRAMP_CASE_HANDLE(18);
- TRAMP_CASE_HANDLE(19);
- TRAMP_CASE_HANDLE(20);
- TRAMP_CASE_HANDLE(21);
- TRAMP_CASE_HANDLE(22);
- TRAMP_CASE_HANDLE(23);
- TRAMP_CASE_HANDLE(24);
- TRAMP_CASE_HANDLE(25);
- TRAMP_CASE_HANDLE(26);
- TRAMP_CASE_HANDLE(27);
- TRAMP_CASE_HANDLE(28);
- TRAMP_CASE_HANDLE(29);
- TRAMP_CASE_HANDLE(30);
- TRAMP_CASE_HANDLE(31);
- TRAMP_CASE_HANDLE(32);
- TRAMP_CASE_HANDLE(33);
- TRAMP_CASE_HANDLE(34);
- TRAMP_CASE_HANDLE(35);
- TRAMP_CASE_HANDLE(36);
- TRAMP_CASE_HANDLE(37);
- TRAMP_CASE_HANDLE(38);
- TRAMP_CASE_HANDLE(39);
- TRAMP_CASE_HANDLE(40);
- TRAMP_CASE_HANDLE(41);
- TRAMP_CASE_HANDLE(42);
- TRAMP_CASE_HANDLE(43);
- TRAMP_CASE_HANDLE(44);
- TRAMP_CASE_HANDLE(45);
- TRAMP_CASE_HANDLE(46);
- TRAMP_CASE_HANDLE(47);
- TRAMP_CASE_HANDLE(48);
- TRAMP_CASE_HANDLE(49);
- TRAMP_CASE_HANDLE(50);
- TRAMP_CASE_HANDLE(51);
- TRAMP_CASE_HANDLE(52);
- TRAMP_CASE_HANDLE(53);
- TRAMP_CASE_HANDLE(54);
- TRAMP_CASE_HANDLE(55);
- TRAMP_CASE_HANDLE(56);
- TRAMP_CASE_HANDLE(57);
- TRAMP_CASE_HANDLE(58);
- TRAMP_CASE_HANDLE(59);
- TRAMP_CASE_HANDLE(60);
- TRAMP_CASE_HANDLE(61);
- TRAMP_CASE_HANDLE(62);
- TRAMP_CASE_HANDLE(63);
- TRAMP_CASE_HANDLE(64);
- TRAMP_CASE_HANDLE(65);
- TRAMP_CASE_HANDLE(66);
- TRAMP_CASE_HANDLE(67);
- TRAMP_CASE_HANDLE(68);
- TRAMP_CASE_HANDLE(69);
- TRAMP_CASE_HANDLE(70);
- TRAMP_CASE_HANDLE(71);
- TRAMP_CASE_HANDLE(72);
- TRAMP_CASE_HANDLE(73);
- TRAMP_CASE_HANDLE(74);
- TRAMP_CASE_HANDLE(75);
- TRAMP_CASE_HANDLE(76);
- TRAMP_CASE_HANDLE(77);
- TRAMP_CASE_HANDLE(78);
- TRAMP_CASE_HANDLE(79);
- TRAMP_CASE_HANDLE(80);
- TRAMP_CASE_HANDLE(81);
- TRAMP_CASE_HANDLE(82);
- TRAMP_CASE_HANDLE(83);
- TRAMP_CASE_HANDLE(84);
- TRAMP_CASE_HANDLE(85);
- TRAMP_CASE_HANDLE(86);
- TRAMP_CASE_HANDLE(87);
- TRAMP_CASE_HANDLE(88);
- TRAMP_CASE_HANDLE(89);
- TRAMP_CASE_HANDLE(90);
- TRAMP_CASE_HANDLE(91);
- TRAMP_CASE_HANDLE(92);
- TRAMP_CASE_HANDLE(93);
- TRAMP_CASE_HANDLE(94);
- TRAMP_CASE_HANDLE(95);
- TRAMP_CASE_HANDLE(96);
- TRAMP_CASE_HANDLE(97);
- TRAMP_CASE_HANDLE(98);
- TRAMP_CASE_HANDLE(99);
- TRAMP_CASE_HANDLE(100);
- TRAMP_CASE_HANDLE(101);
- TRAMP_CASE_HANDLE(102);
- TRAMP_CASE_HANDLE(103);
- TRAMP_CASE_HANDLE(104);
- TRAMP_CASE_HANDLE(105);
- TRAMP_CASE_HANDLE(106);
- TRAMP_CASE_HANDLE(107);
- TRAMP_CASE_HANDLE(108);
- TRAMP_CASE_HANDLE(109);
- TRAMP_CASE_HANDLE(110);
- TRAMP_CASE_HANDLE(111);
- TRAMP_CASE_HANDLE(112);
- TRAMP_CASE_HANDLE(113);
- TRAMP_CASE_HANDLE(114);
- TRAMP_CASE_HANDLE(115);
- TRAMP_CASE_HANDLE(116);
- TRAMP_CASE_HANDLE(117);
- TRAMP_CASE_HANDLE(118);
- TRAMP_CASE_HANDLE(119);
- TRAMP_CASE_HANDLE(120);
- TRAMP_CASE_HANDLE(121);
- TRAMP_CASE_HANDLE(122);
- TRAMP_CASE_HANDLE(123);
- TRAMP_CASE_HANDLE(124);
- TRAMP_CASE_HANDLE(125);
- TRAMP_CASE_HANDLE(126);
- TRAMP_CASE_HANDLE(127);
- TRAMP_CASE_HANDLE(128);
- TRAMP_CASE_HANDLE(129);
- TRAMP_CASE_HANDLE(130);
- TRAMP_CASE_HANDLE(131);
- TRAMP_CASE_HANDLE(132);
- TRAMP_CASE_HANDLE(133);
- TRAMP_CASE_HANDLE(134);
- TRAMP_CASE_HANDLE(135);
- TRAMP_CASE_HANDLE(136);
- TRAMP_CASE_HANDLE(137);
- TRAMP_CASE_HANDLE(138);
- TRAMP_CASE_HANDLE(139);
- TRAMP_CASE_HANDLE(140);
- TRAMP_CASE_HANDLE(141);
- TRAMP_CASE_HANDLE(142);
- TRAMP_CASE_HANDLE(143);
- TRAMP_CASE_HANDLE(144);
- TRAMP_CASE_HANDLE(145);
- TRAMP_CASE_HANDLE(146);
- TRAMP_CASE_HANDLE(147);
- TRAMP_CASE_HANDLE(148);
- TRAMP_CASE_HANDLE(149);
- TRAMP_CASE_HANDLE(150);
- TRAMP_CASE_HANDLE(151);
- TRAMP_CASE_HANDLE(152);
- TRAMP_CASE_HANDLE(153);
- TRAMP_CASE_HANDLE(154);
- TRAMP_CASE_HANDLE(155);
- TRAMP_CASE_HANDLE(156);
- TRAMP_CASE_HANDLE(157);
- TRAMP_CASE_HANDLE(158);
- TRAMP_CASE_HANDLE(159);
- TRAMP_CASE_HANDLE(160);
- TRAMP_CASE_HANDLE(161);
- TRAMP_CASE_HANDLE(162);
- TRAMP_CASE_HANDLE(163);
- TRAMP_CASE_HANDLE(164);
- TRAMP_CASE_HANDLE(165);
- TRAMP_CASE_HANDLE(166);
- TRAMP_CASE_HANDLE(167);
- TRAMP_CASE_HANDLE(168);
- TRAMP_CASE_HANDLE(169);
- TRAMP_CASE_HANDLE(170);
- TRAMP_CASE_HANDLE(171);
- TRAMP_CASE_HANDLE(172);
- TRAMP_CASE_HANDLE(173);
- TRAMP_CASE_HANDLE(174);
- TRAMP_CASE_HANDLE(175);
- TRAMP_CASE_HANDLE(176);
- TRAMP_CASE_HANDLE(177);
- TRAMP_CASE_HANDLE(178);
- TRAMP_CASE_HANDLE(179);
- TRAMP_CASE_HANDLE(180);
- TRAMP_CASE_HANDLE(181);
- TRAMP_CASE_HANDLE(182);
- TRAMP_CASE_HANDLE(183);
- TRAMP_CASE_HANDLE(184);
- TRAMP_CASE_HANDLE(185);
- TRAMP_CASE_HANDLE(186);
- TRAMP_CASE_HANDLE(187);
- TRAMP_CASE_HANDLE(188);
- TRAMP_CASE_HANDLE(189);
- TRAMP_CASE_HANDLE(190);
- TRAMP_CASE_HANDLE(191);
- TRAMP_CASE_HANDLE(192);
- TRAMP_CASE_HANDLE(193);
- TRAMP_CASE_HANDLE(194);
- TRAMP_CASE_HANDLE(195);
- TRAMP_CASE_HANDLE(196);
- TRAMP_CASE_HANDLE(197);
- TRAMP_CASE_HANDLE(198);
- TRAMP_CASE_HANDLE(199);
- TRAMP_CASE_HANDLE(200);
- TRAMP_CASE_HANDLE(201);
- TRAMP_CASE_HANDLE(202);
- TRAMP_CASE_HANDLE(203);
- TRAMP_CASE_HANDLE(204);
- TRAMP_CASE_HANDLE(205);
- TRAMP_CASE_HANDLE(206);
- TRAMP_CASE_HANDLE(207);
- TRAMP_CASE_HANDLE(208);
- TRAMP_CASE_HANDLE(209);
- TRAMP_CASE_HANDLE(210);
- TRAMP_CASE_HANDLE(211);
- TRAMP_CASE_HANDLE(212);
- TRAMP_CASE_HANDLE(213);
- TRAMP_CASE_HANDLE(214);
- TRAMP_CASE_HANDLE(215);
- TRAMP_CASE_HANDLE(216);
- TRAMP_CASE_HANDLE(217);
- TRAMP_CASE_HANDLE(218);
- TRAMP_CASE_HANDLE(219);
- TRAMP_CASE_HANDLE(220);
- TRAMP_CASE_HANDLE(221);
- TRAMP_CASE_HANDLE(222);
- TRAMP_CASE_HANDLE(223);
- TRAMP_CASE_HANDLE(224);
- TRAMP_CASE_HANDLE(225);
- TRAMP_CASE_HANDLE(226);
- TRAMP_CASE_HANDLE(227);
- TRAMP_CASE_HANDLE(228);
- TRAMP_CASE_HANDLE(229);
- TRAMP_CASE_HANDLE(230);
- TRAMP_CASE_HANDLE(231);
- TRAMP_CASE_HANDLE(232);
- TRAMP_CASE_HANDLE(233);
- TRAMP_CASE_HANDLE(234);
- TRAMP_CASE_HANDLE(235);
- TRAMP_CASE_HANDLE(236);
- TRAMP_CASE_HANDLE(237);
- TRAMP_CASE_HANDLE(238);
- TRAMP_CASE_HANDLE(239);
- TRAMP_CASE_HANDLE(240);
- TRAMP_CASE_HANDLE(241);
- TRAMP_CASE_HANDLE(242);
- TRAMP_CASE_HANDLE(243);
- TRAMP_CASE_HANDLE(244);
- TRAMP_CASE_HANDLE(245);
- TRAMP_CASE_HANDLE(246);
- TRAMP_CASE_HANDLE(247);
- TRAMP_CASE_HANDLE(248);
- TRAMP_CASE_HANDLE(249);
- }
- return NULL;
-}
-
-void *loader_get_phys_dev_ext_termin(uint32_t index) {
- switch (index) {
-#define TERM_CASE_HANDLE(num) case num: return vkPhysDevExtTermin##num
- TERM_CASE_HANDLE(0);
- TERM_CASE_HANDLE(1);
- TERM_CASE_HANDLE(2);
- TERM_CASE_HANDLE(3);
- TERM_CASE_HANDLE(4);
- TERM_CASE_HANDLE(5);
- TERM_CASE_HANDLE(6);
- TERM_CASE_HANDLE(7);
- TERM_CASE_HANDLE(8);
- TERM_CASE_HANDLE(9);
- TERM_CASE_HANDLE(10);
- TERM_CASE_HANDLE(11);
- TERM_CASE_HANDLE(12);
- TERM_CASE_HANDLE(13);
- TERM_CASE_HANDLE(14);
- TERM_CASE_HANDLE(15);
- TERM_CASE_HANDLE(16);
- TERM_CASE_HANDLE(17);
- TERM_CASE_HANDLE(18);
- TERM_CASE_HANDLE(19);
- TERM_CASE_HANDLE(20);
- TERM_CASE_HANDLE(21);
- TERM_CASE_HANDLE(22);
- TERM_CASE_HANDLE(23);
- TERM_CASE_HANDLE(24);
- TERM_CASE_HANDLE(25);
- TERM_CASE_HANDLE(26);
- TERM_CASE_HANDLE(27);
- TERM_CASE_HANDLE(28);
- TERM_CASE_HANDLE(29);
- TERM_CASE_HANDLE(30);
- TERM_CASE_HANDLE(31);
- TERM_CASE_HANDLE(32);
- TERM_CASE_HANDLE(33);
- TERM_CASE_HANDLE(34);
- TERM_CASE_HANDLE(35);
- TERM_CASE_HANDLE(36);
- TERM_CASE_HANDLE(37);
- TERM_CASE_HANDLE(38);
- TERM_CASE_HANDLE(39);
- TERM_CASE_HANDLE(40);
- TERM_CASE_HANDLE(41);
- TERM_CASE_HANDLE(42);
- TERM_CASE_HANDLE(43);
- TERM_CASE_HANDLE(44);
- TERM_CASE_HANDLE(45);
- TERM_CASE_HANDLE(46);
- TERM_CASE_HANDLE(47);
- TERM_CASE_HANDLE(48);
- TERM_CASE_HANDLE(49);
- TERM_CASE_HANDLE(50);
- TERM_CASE_HANDLE(51);
- TERM_CASE_HANDLE(52);
- TERM_CASE_HANDLE(53);
- TERM_CASE_HANDLE(54);
- TERM_CASE_HANDLE(55);
- TERM_CASE_HANDLE(56);
- TERM_CASE_HANDLE(57);
- TERM_CASE_HANDLE(58);
- TERM_CASE_HANDLE(59);
- TERM_CASE_HANDLE(60);
- TERM_CASE_HANDLE(61);
- TERM_CASE_HANDLE(62);
- TERM_CASE_HANDLE(63);
- TERM_CASE_HANDLE(64);
- TERM_CASE_HANDLE(65);
- TERM_CASE_HANDLE(66);
- TERM_CASE_HANDLE(67);
- TERM_CASE_HANDLE(68);
- TERM_CASE_HANDLE(69);
- TERM_CASE_HANDLE(70);
- TERM_CASE_HANDLE(71);
- TERM_CASE_HANDLE(72);
- TERM_CASE_HANDLE(73);
- TERM_CASE_HANDLE(74);
- TERM_CASE_HANDLE(75);
- TERM_CASE_HANDLE(76);
- TERM_CASE_HANDLE(77);
- TERM_CASE_HANDLE(78);
- TERM_CASE_HANDLE(79);
- TERM_CASE_HANDLE(80);
- TERM_CASE_HANDLE(81);
- TERM_CASE_HANDLE(82);
- TERM_CASE_HANDLE(83);
- TERM_CASE_HANDLE(84);
- TERM_CASE_HANDLE(85);
- TERM_CASE_HANDLE(86);
- TERM_CASE_HANDLE(87);
- TERM_CASE_HANDLE(88);
- TERM_CASE_HANDLE(89);
- TERM_CASE_HANDLE(90);
- TERM_CASE_HANDLE(91);
- TERM_CASE_HANDLE(92);
- TERM_CASE_HANDLE(93);
- TERM_CASE_HANDLE(94);
- TERM_CASE_HANDLE(95);
- TERM_CASE_HANDLE(96);
- TERM_CASE_HANDLE(97);
- TERM_CASE_HANDLE(98);
- TERM_CASE_HANDLE(99);
- TERM_CASE_HANDLE(100);
- TERM_CASE_HANDLE(101);
- TERM_CASE_HANDLE(102);
- TERM_CASE_HANDLE(103);
- TERM_CASE_HANDLE(104);
- TERM_CASE_HANDLE(105);
- TERM_CASE_HANDLE(106);
- TERM_CASE_HANDLE(107);
- TERM_CASE_HANDLE(108);
- TERM_CASE_HANDLE(109);
- TERM_CASE_HANDLE(110);
- TERM_CASE_HANDLE(111);
- TERM_CASE_HANDLE(112);
- TERM_CASE_HANDLE(113);
- TERM_CASE_HANDLE(114);
- TERM_CASE_HANDLE(115);
- TERM_CASE_HANDLE(116);
- TERM_CASE_HANDLE(117);
- TERM_CASE_HANDLE(118);
- TERM_CASE_HANDLE(119);
- TERM_CASE_HANDLE(120);
- TERM_CASE_HANDLE(121);
- TERM_CASE_HANDLE(122);
- TERM_CASE_HANDLE(123);
- TERM_CASE_HANDLE(124);
- TERM_CASE_HANDLE(125);
- TERM_CASE_HANDLE(126);
- TERM_CASE_HANDLE(127);
- TERM_CASE_HANDLE(128);
- TERM_CASE_HANDLE(129);
- TERM_CASE_HANDLE(130);
- TERM_CASE_HANDLE(131);
- TERM_CASE_HANDLE(132);
- TERM_CASE_HANDLE(133);
- TERM_CASE_HANDLE(134);
- TERM_CASE_HANDLE(135);
- TERM_CASE_HANDLE(136);
- TERM_CASE_HANDLE(137);
- TERM_CASE_HANDLE(138);
- TERM_CASE_HANDLE(139);
- TERM_CASE_HANDLE(140);
- TERM_CASE_HANDLE(141);
- TERM_CASE_HANDLE(142);
- TERM_CASE_HANDLE(143);
- TERM_CASE_HANDLE(144);
- TERM_CASE_HANDLE(145);
- TERM_CASE_HANDLE(146);
- TERM_CASE_HANDLE(147);
- TERM_CASE_HANDLE(148);
- TERM_CASE_HANDLE(149);
- TERM_CASE_HANDLE(150);
- TERM_CASE_HANDLE(151);
- TERM_CASE_HANDLE(152);
- TERM_CASE_HANDLE(153);
- TERM_CASE_HANDLE(154);
- TERM_CASE_HANDLE(155);
- TERM_CASE_HANDLE(156);
- TERM_CASE_HANDLE(157);
- TERM_CASE_HANDLE(158);
- TERM_CASE_HANDLE(159);
- TERM_CASE_HANDLE(160);
- TERM_CASE_HANDLE(161);
- TERM_CASE_HANDLE(162);
- TERM_CASE_HANDLE(163);
- TERM_CASE_HANDLE(164);
- TERM_CASE_HANDLE(165);
- TERM_CASE_HANDLE(166);
- TERM_CASE_HANDLE(167);
- TERM_CASE_HANDLE(168);
- TERM_CASE_HANDLE(169);
- TERM_CASE_HANDLE(170);
- TERM_CASE_HANDLE(171);
- TERM_CASE_HANDLE(172);
- TERM_CASE_HANDLE(173);
- TERM_CASE_HANDLE(174);
- TERM_CASE_HANDLE(175);
- TERM_CASE_HANDLE(176);
- TERM_CASE_HANDLE(177);
- TERM_CASE_HANDLE(178);
- TERM_CASE_HANDLE(179);
- TERM_CASE_HANDLE(180);
- TERM_CASE_HANDLE(181);
- TERM_CASE_HANDLE(182);
- TERM_CASE_HANDLE(183);
- TERM_CASE_HANDLE(184);
- TERM_CASE_HANDLE(185);
- TERM_CASE_HANDLE(186);
- TERM_CASE_HANDLE(187);
- TERM_CASE_HANDLE(188);
- TERM_CASE_HANDLE(189);
- TERM_CASE_HANDLE(190);
- TERM_CASE_HANDLE(191);
- TERM_CASE_HANDLE(192);
- TERM_CASE_HANDLE(193);
- TERM_CASE_HANDLE(194);
- TERM_CASE_HANDLE(195);
- TERM_CASE_HANDLE(196);
- TERM_CASE_HANDLE(197);
- TERM_CASE_HANDLE(198);
- TERM_CASE_HANDLE(199);
- TERM_CASE_HANDLE(200);
- TERM_CASE_HANDLE(201);
- TERM_CASE_HANDLE(202);
- TERM_CASE_HANDLE(203);
- TERM_CASE_HANDLE(204);
- TERM_CASE_HANDLE(205);
- TERM_CASE_HANDLE(206);
- TERM_CASE_HANDLE(207);
- TERM_CASE_HANDLE(208);
- TERM_CASE_HANDLE(209);
- TERM_CASE_HANDLE(210);
- TERM_CASE_HANDLE(211);
- TERM_CASE_HANDLE(212);
- TERM_CASE_HANDLE(213);
- TERM_CASE_HANDLE(214);
- TERM_CASE_HANDLE(215);
- TERM_CASE_HANDLE(216);
- TERM_CASE_HANDLE(217);
- TERM_CASE_HANDLE(218);
- TERM_CASE_HANDLE(219);
- TERM_CASE_HANDLE(220);
- TERM_CASE_HANDLE(221);
- TERM_CASE_HANDLE(222);
- TERM_CASE_HANDLE(223);
- TERM_CASE_HANDLE(224);
- TERM_CASE_HANDLE(225);
- TERM_CASE_HANDLE(226);
- TERM_CASE_HANDLE(227);
- TERM_CASE_HANDLE(228);
- TERM_CASE_HANDLE(229);
- TERM_CASE_HANDLE(230);
- TERM_CASE_HANDLE(231);
- TERM_CASE_HANDLE(232);
- TERM_CASE_HANDLE(233);
- TERM_CASE_HANDLE(234);
- TERM_CASE_HANDLE(235);
- TERM_CASE_HANDLE(236);
- TERM_CASE_HANDLE(237);
- TERM_CASE_HANDLE(238);
- TERM_CASE_HANDLE(239);
- TERM_CASE_HANDLE(240);
- TERM_CASE_HANDLE(241);
- TERM_CASE_HANDLE(242);
- TERM_CASE_HANDLE(243);
- TERM_CASE_HANDLE(244);
- TERM_CASE_HANDLE(245);
- TERM_CASE_HANDLE(246);
- TERM_CASE_HANDLE(247);
- TERM_CASE_HANDLE(248);
- TERM_CASE_HANDLE(249);
- }
- return NULL;
-}
diff --git a/thirdparty/vulkan/loader/trampoline.c b/thirdparty/vulkan/loader/trampoline.c
deleted file mode 100644
index e0530802a2..0000000000
--- a/thirdparty/vulkan/loader/trampoline.c
+++ /dev/null
@@ -1,2599 +0,0 @@
-/*
- *
- * Copyright (c) 2015-2016 The Khronos Group Inc.
- * Copyright (c) 2015-2016 Valve Corporation
- * Copyright (c) 2015-2016 LunarG, Inc.
- * Copyright (C) 2015 Google Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * Author: Courtney Goeltzenleuchter <courtney@lunarg.com>
- * Author: Jon Ashburn <jon@lunarg.com>
- * Author: Tony Barbour <tony@LunarG.com>
- * Author: Chia-I Wu <olv@lunarg.com>
- */
-
-#ifndef _GNU_SOURCE
-#define _GNU_SOURCE
-#endif
-#include <stdlib.h>
-#include <string.h>
-
-#include "vk_loader_platform.h"
-#include "loader.h"
-#include "debug_utils.h"
-#include "wsi.h"
-#include "vk_loader_extensions.h"
-#include "gpa_helper.h"
-
-
-// Trampoline entrypoints are in this file for core Vulkan commands
-
-// Get an instance level or global level entry point address.
-// @param instance
-// @param pName
-// @return
-// If instance == NULL returns a global level functions only
-// If instance is valid returns a trampoline entry point for all dispatchable Vulkan
-// functions both core and extensions.
-LOADER_EXPORT VKAPI_ATTR PFN_vkVoidFunction VKAPI_CALL vkGetInstanceProcAddr(VkInstance instance, const char *pName) {
- void *addr;
-
- addr = globalGetProcAddr(pName);
- if (instance == VK_NULL_HANDLE || addr != NULL) {
- return addr;
- }
-
- struct loader_instance *ptr_instance = loader_get_instance(instance);
- if (ptr_instance == NULL) return NULL;
- // Return trampoline code for non-global entrypoints including any extensions.
- // Device extensions are returned if a layer or ICD supports the extension.
- // Instance extensions are returned if the extension is enabled and the
- // loader or someone else supports the extension
- return trampolineGetProcAddr(ptr_instance, pName);
-}
-
-// Get a device level or global level entry point address.
-// @param device
-// @param pName
-// @return
-// If device is valid, returns a device relative entry point for device level
-// entry points both core and extensions.
-// Device relative means call down the device chain.
-LOADER_EXPORT VKAPI_ATTR PFN_vkVoidFunction VKAPI_CALL vkGetDeviceProcAddr(VkDevice device, const char *pName) {
- void *addr;
-
- // For entrypoints that loader must handle (ie non-dispatchable or create object)
- // make sure the loader entrypoint is returned
- addr = loader_non_passthrough_gdpa(pName);
- if (addr) {
- return addr;
- }
-
- // Although CreateDevice is on device chain it's dispatchable object isn't
- // a VkDevice or child of VkDevice so return NULL.
- if (!strcmp(pName, "CreateDevice")) return NULL;
-
- // Return the dispatch table entrypoint for the fastest case
- const VkLayerDispatchTable *disp_table = *(VkLayerDispatchTable **)device;
- if (disp_table == NULL) return NULL;
-
- addr = loader_lookup_device_dispatch_table(disp_table, pName);
- if (addr) return addr;
-
- if (disp_table->GetDeviceProcAddr == NULL) return NULL;
- return disp_table->GetDeviceProcAddr(device, pName);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkEnumerateInstanceExtensionProperties(const char *pLayerName,
- uint32_t *pPropertyCount,
- VkExtensionProperties *pProperties) {
- tls_instance = NULL;
- LOADER_PLATFORM_THREAD_ONCE(&once_init, loader_initialize);
-
- // We know we need to call at least the terminator
- VkResult res = VK_SUCCESS;
- VkEnumerateInstanceExtensionPropertiesChain chain_tail = {
- .header =
- {
- .type = VK_CHAIN_TYPE_ENUMERATE_INSTANCE_EXTENSION_PROPERTIES,
- .version = VK_CURRENT_CHAIN_VERSION,
- .size = sizeof(chain_tail),
- },
- .pfnNextLayer = &terminator_EnumerateInstanceExtensionProperties,
- .pNextLink = NULL,
- };
- VkEnumerateInstanceExtensionPropertiesChain *chain_head = &chain_tail;
-
- // Get the implicit layers
- struct loader_layer_list layers;
- memset(&layers, 0, sizeof(layers));
- loaderScanForImplicitLayers(NULL, &layers);
-
- // We'll need to save the dl handles so we can close them later
- loader_platform_dl_handle *libs = malloc(sizeof(loader_platform_dl_handle) * layers.count);
- if (libs == NULL) {
- return VK_ERROR_OUT_OF_HOST_MEMORY;
- }
- size_t lib_count = 0;
-
- // Prepend layers onto the chain if they implement this entry point
- for (uint32_t i = 0; i < layers.count; ++i) {
- if (!loaderImplicitLayerIsEnabled(NULL, layers.list + i) ||
- layers.list[i].pre_instance_functions.enumerate_instance_extension_properties[0] == '\0') {
- continue;
- }
-
- loader_platform_dl_handle layer_lib = loader_platform_open_library(layers.list[i].lib_name);
- if (layer_lib == NULL) {
- loader_log(NULL, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0, "%s: Unable to load implicit layer library \"%s\"", __FUNCTION__,
- layers.list[i].lib_name);
- continue;
- }
-
- libs[lib_count++] = layer_lib;
- void *pfn = loader_platform_get_proc_address(layer_lib,
- layers.list[i].pre_instance_functions.enumerate_instance_extension_properties);
- if (pfn == NULL) {
- loader_log(NULL, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "%s: Unable to resolve symbol \"%s\" in implicit layer library \"%s\"", __FUNCTION__,
- layers.list[i].pre_instance_functions.enumerate_instance_extension_properties, layers.list[i].lib_name);
- continue;
- }
-
- VkEnumerateInstanceExtensionPropertiesChain *chain_link = malloc(sizeof(VkEnumerateInstanceExtensionPropertiesChain));
- if (chain_link == NULL) {
- res = VK_ERROR_OUT_OF_HOST_MEMORY;
- break;
- }
-
- chain_link->header.type = VK_CHAIN_TYPE_ENUMERATE_INSTANCE_EXTENSION_PROPERTIES;
- chain_link->header.version = VK_CURRENT_CHAIN_VERSION;
- chain_link->header.size = sizeof(*chain_link);
- chain_link->pfnNextLayer = pfn;
- chain_link->pNextLink = chain_head;
-
- chain_head = chain_link;
- }
-
- // Call down the chain
- if (res == VK_SUCCESS) {
- res = chain_head->pfnNextLayer(chain_head->pNextLink, pLayerName, pPropertyCount, pProperties);
- }
-
- // Free up the layers
- loaderDeleteLayerListAndProperties(NULL, &layers);
-
- // Tear down the chain
- while (chain_head != &chain_tail) {
- VkEnumerateInstanceExtensionPropertiesChain *holder = chain_head;
- chain_head = (VkEnumerateInstanceExtensionPropertiesChain *)chain_head->pNextLink;
- free(holder);
- }
-
- // Close the dl handles
- for (size_t i = 0; i < lib_count; ++i) {
- loader_platform_close_library(libs[i]);
- }
- free(libs);
-
- return res;
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkEnumerateInstanceLayerProperties(uint32_t *pPropertyCount,
- VkLayerProperties *pProperties) {
- tls_instance = NULL;
- LOADER_PLATFORM_THREAD_ONCE(&once_init, loader_initialize);
-
- // We know we need to call at least the terminator
- VkResult res = VK_SUCCESS;
- VkEnumerateInstanceLayerPropertiesChain chain_tail = {
- .header =
- {
- .type = VK_CHAIN_TYPE_ENUMERATE_INSTANCE_LAYER_PROPERTIES,
- .version = VK_CURRENT_CHAIN_VERSION,
- .size = sizeof(chain_tail),
- },
- .pfnNextLayer = &terminator_EnumerateInstanceLayerProperties,
- .pNextLink = NULL,
- };
- VkEnumerateInstanceLayerPropertiesChain *chain_head = &chain_tail;
-
- // Get the implicit layers
- struct loader_layer_list layers;
- memset(&layers, 0, sizeof(layers));
- loaderScanForImplicitLayers(NULL, &layers);
-
- // We'll need to save the dl handles so we can close them later
- loader_platform_dl_handle *libs = malloc(sizeof(loader_platform_dl_handle) * layers.count);
- if (libs == NULL) {
- return VK_ERROR_OUT_OF_HOST_MEMORY;
- }
- size_t lib_count = 0;
-
- // Prepend layers onto the chain if they implement this entry point
- for (uint32_t i = 0; i < layers.count; ++i) {
- if (!loaderImplicitLayerIsEnabled(NULL, layers.list + i) ||
- layers.list[i].pre_instance_functions.enumerate_instance_layer_properties[0] == '\0') {
- continue;
- }
-
- loader_platform_dl_handle layer_lib = loader_platform_open_library(layers.list[i].lib_name);
- if (layer_lib == NULL) {
- loader_log(NULL, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0, "%s: Unable to load implicit layer library \"%s\"", __FUNCTION__,
- layers.list[i].lib_name);
- continue;
- }
-
- libs[lib_count++] = layer_lib;
- void *pfn =
- loader_platform_get_proc_address(layer_lib, layers.list[i].pre_instance_functions.enumerate_instance_layer_properties);
- if (pfn == NULL) {
- loader_log(NULL, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "%s: Unable to resolve symbol \"%s\" in implicit layer library \"%s\"", __FUNCTION__,
- layers.list[i].pre_instance_functions.enumerate_instance_layer_properties, layers.list[i].lib_name);
- continue;
- }
-
- VkEnumerateInstanceLayerPropertiesChain *chain_link = malloc(sizeof(VkEnumerateInstanceLayerPropertiesChain));
- if (chain_link == NULL) {
- res = VK_ERROR_OUT_OF_HOST_MEMORY;
- break;
- }
-
- chain_link->header.type = VK_CHAIN_TYPE_ENUMERATE_INSTANCE_LAYER_PROPERTIES;
- chain_link->header.version = VK_CURRENT_CHAIN_VERSION;
- chain_link->header.size = sizeof(*chain_link);
- chain_link->pfnNextLayer = pfn;
- chain_link->pNextLink = chain_head;
-
- chain_head = chain_link;
- }
-
- // Call down the chain
- if (res == VK_SUCCESS) {
- res = chain_head->pfnNextLayer(chain_head->pNextLink, pPropertyCount, pProperties);
- }
-
- // Free up the layers
- loaderDeleteLayerListAndProperties(NULL, &layers);
-
- // Tear down the chain
- while (chain_head != &chain_tail) {
- VkEnumerateInstanceLayerPropertiesChain *holder = chain_head;
- chain_head = (VkEnumerateInstanceLayerPropertiesChain *)chain_head->pNextLink;
- free(holder);
- }
-
- // Close the dl handles
- for (size_t i = 0; i < lib_count; ++i) {
- loader_platform_close_library(libs[i]);
- }
- free(libs);
-
- return res;
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkEnumerateInstanceVersion(uint32_t* pApiVersion) {
-
- tls_instance = NULL;
- LOADER_PLATFORM_THREAD_ONCE(&once_init, loader_initialize);
-
- // We know we need to call at least the terminator
- VkResult res = VK_SUCCESS;
- VkEnumerateInstanceVersionChain chain_tail = {
- .header =
- {
- .type = VK_CHAIN_TYPE_ENUMERATE_INSTANCE_VERSION,
- .version = VK_CURRENT_CHAIN_VERSION,
- .size = sizeof(chain_tail),
- },
- .pfnNextLayer = &terminator_EnumerateInstanceVersion,
- .pNextLink = NULL,
- };
- VkEnumerateInstanceVersionChain *chain_head = &chain_tail;
-
- // Get the implicit layers
- struct loader_layer_list layers;
- memset(&layers, 0, sizeof(layers));
- loaderScanForImplicitLayers(NULL, &layers);
-
- // We'll need to save the dl handles so we can close them later
- loader_platform_dl_handle *libs = malloc(sizeof(loader_platform_dl_handle) * layers.count);
- if (libs == NULL) {
- return VK_ERROR_OUT_OF_HOST_MEMORY;
- }
- size_t lib_count = 0;
-
- // Prepend layers onto the chain if they implement this entry point
- for (uint32_t i = 0; i < layers.count; ++i) {
- if (!loaderImplicitLayerIsEnabled(NULL, layers.list + i) ||
- layers.list[i].pre_instance_functions.enumerate_instance_version[0] == '\0') {
- continue;
- }
-
- loader_platform_dl_handle layer_lib = loader_platform_open_library(layers.list[i].lib_name);
- if (layer_lib == NULL) {
- loader_log(NULL, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0, "%s: Unable to load implicit layer library \"%s\"", __FUNCTION__,
- layers.list[i].lib_name);
- continue;
- }
-
- libs[lib_count++] = layer_lib;
- void *pfn = loader_platform_get_proc_address(layer_lib,
- layers.list[i].pre_instance_functions.enumerate_instance_version);
- if (pfn == NULL) {
- loader_log(NULL, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "%s: Unable to resolve symbol \"%s\" in implicit layer library \"%s\"", __FUNCTION__,
- layers.list[i].pre_instance_functions.enumerate_instance_version, layers.list[i].lib_name);
- continue;
- }
-
- VkEnumerateInstanceVersionChain *chain_link = malloc(sizeof(VkEnumerateInstanceVersionChain));
- if (chain_link == NULL) {
- res = VK_ERROR_OUT_OF_HOST_MEMORY;
- break;
- }
-
- chain_link->header.type = VK_CHAIN_TYPE_ENUMERATE_INSTANCE_VERSION;
- chain_link->header.version = VK_CURRENT_CHAIN_VERSION;
- chain_link->header.size = sizeof(*chain_link);
- chain_link->pfnNextLayer = pfn;
- chain_link->pNextLink = chain_head;
-
- chain_head = chain_link;
- }
-
- // Call down the chain
- if (res == VK_SUCCESS) {
- res = chain_head->pfnNextLayer(chain_head->pNextLink, pApiVersion);
- }
-
- // Free up the layers
- loaderDeleteLayerListAndProperties(NULL, &layers);
-
- // Tear down the chain
- while (chain_head != &chain_tail) {
- VkEnumerateInstanceVersionChain *holder = chain_head;
- chain_head = (VkEnumerateInstanceVersionChain *)chain_head->pNextLink;
- free(holder);
- }
-
- // Close the dl handles
- for (size_t i = 0; i < lib_count; ++i) {
- loader_platform_close_library(libs[i]);
- }
- free(libs);
-
- return res;
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkCreateInstance(const VkInstanceCreateInfo *pCreateInfo,
- const VkAllocationCallbacks *pAllocator, VkInstance *pInstance) {
- struct loader_instance *ptr_instance = NULL;
- VkInstance created_instance = VK_NULL_HANDLE;
- bool loaderLocked = false;
- VkResult res = VK_ERROR_INITIALIZATION_FAILED;
-
- LOADER_PLATFORM_THREAD_ONCE(&once_init, loader_initialize);
-
-#if (DEBUG_DISABLE_APP_ALLOCATORS == 1)
- {
-#else
- if (pAllocator) {
- ptr_instance = (struct loader_instance *)pAllocator->pfnAllocation(pAllocator->pUserData, sizeof(struct loader_instance),
- sizeof(int *), VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE);
- } else {
-#endif
- ptr_instance = (struct loader_instance *)malloc(sizeof(struct loader_instance));
- }
-
- VkInstanceCreateInfo ici = *pCreateInfo;
-
- if (ptr_instance == NULL) {
- res = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
-
- tls_instance = ptr_instance;
- loader_platform_thread_lock_mutex(&loader_lock);
- loaderLocked = true;
- memset(ptr_instance, 0, sizeof(struct loader_instance));
- if (pAllocator) {
- ptr_instance->alloc_callbacks = *pAllocator;
- }
-
- // Save the application version
- if (NULL == pCreateInfo || NULL == pCreateInfo->pApplicationInfo || 0 == pCreateInfo->pApplicationInfo->apiVersion)
-{
- ptr_instance->app_api_major_version = 1;
- ptr_instance->app_api_minor_version = 0;
- } else {
- ptr_instance->app_api_major_version = VK_VERSION_MAJOR(pCreateInfo->pApplicationInfo->apiVersion);
- ptr_instance->app_api_minor_version = VK_VERSION_MINOR(pCreateInfo->pApplicationInfo->apiVersion);
- }
-
- // Look for one or more VK_EXT_debug_report or VK_EXT_debug_utils create info structures
- // and setup a callback(s) for each one found.
- ptr_instance->num_tmp_report_callbacks = 0;
- ptr_instance->tmp_report_create_infos = NULL;
- ptr_instance->tmp_report_callbacks = NULL;
- ptr_instance->num_tmp_messengers = 0;
- ptr_instance->tmp_messenger_create_infos = NULL;
- ptr_instance->tmp_messengers = NULL;
-
- // Handle cases of VK_EXT_debug_utils
- if (util_CopyDebugUtilsMessengerCreateInfos(pCreateInfo->pNext, pAllocator, &ptr_instance->num_tmp_messengers,
- &ptr_instance->tmp_messenger_create_infos, &ptr_instance->tmp_messengers)) {
- // One or more were found, but allocation failed. Therefore, clean up and fail this function:
- res = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- } else if (ptr_instance->num_tmp_messengers > 0) {
- // Setup the temporary messenger(s) here to catch early issues:
- if (util_CreateDebugUtilsMessengers(ptr_instance, pAllocator, ptr_instance->num_tmp_messengers,
- ptr_instance->tmp_messenger_create_infos, ptr_instance->tmp_messengers)) {
- // Failure of setting up one or more of the messenger. Therefore, clean up and fail this function:
- res = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
- }
-
- // Handle cases of VK_EXT_debug_report
- if (util_CopyDebugReportCreateInfos(pCreateInfo->pNext, pAllocator, &ptr_instance->num_tmp_report_callbacks,
- &ptr_instance->tmp_report_create_infos, &ptr_instance->tmp_report_callbacks)) {
- // One or more were found, but allocation failed. Therefore, clean up and fail this function:
- res = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- } else if (ptr_instance->num_tmp_report_callbacks > 0) {
- // Setup the temporary callback(s) here to catch early issues:
- if (util_CreateDebugReportCallbacks(ptr_instance, pAllocator, ptr_instance->num_tmp_report_callbacks,
- ptr_instance->tmp_report_create_infos, ptr_instance->tmp_report_callbacks)) {
- // Failure of setting up one or more of the callback. Therefore, clean up and fail this function:
- res = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
- }
-
- // Due to implicit layers need to get layer list even if
- // enabledLayerCount == 0 and VK_INSTANCE_LAYERS is unset. For now always
- // get layer list via loaderScanForLayers().
- memset(&ptr_instance->instance_layer_list, 0, sizeof(ptr_instance->instance_layer_list));
- loaderScanForLayers(ptr_instance, &ptr_instance->instance_layer_list);
-
- // Validate the app requested layers to be enabled
- if (pCreateInfo->enabledLayerCount > 0) {
- res = loaderValidateLayers(ptr_instance, pCreateInfo->enabledLayerCount, pCreateInfo->ppEnabledLayerNames,
- &ptr_instance->instance_layer_list);
- if (res != VK_SUCCESS) {
- goto out;
- }
- }
-
- // Scan/discover all ICD libraries
- memset(&ptr_instance->icd_tramp_list, 0, sizeof(ptr_instance->icd_tramp_list));
- res = loader_icd_scan(ptr_instance, &ptr_instance->icd_tramp_list);
- if (res != VK_SUCCESS) {
- goto out;
- }
-
- // Get extensions from all ICD's, merge so no duplicates, then validate
- res = loader_get_icd_loader_instance_extensions(ptr_instance, &ptr_instance->icd_tramp_list, &ptr_instance->ext_list);
- if (res != VK_SUCCESS) {
- goto out;
- }
- res = loader_validate_instance_extensions(ptr_instance, &ptr_instance->ext_list, &ptr_instance->instance_layer_list, &ici);
- if (res != VK_SUCCESS) {
- goto out;
- }
-
- ptr_instance->disp = loader_instance_heap_alloc(ptr_instance, sizeof(struct loader_instance_dispatch_table),
- VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE);
- if (ptr_instance->disp == NULL) {
- loader_log(ptr_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "vkCreateInstance: Failed to allocate Loader's full Instance dispatch table.");
- res = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
- memcpy(&ptr_instance->disp->layer_inst_disp, &instance_disp, sizeof(instance_disp));
-
- ptr_instance->next = loader.instances;
- loader.instances = ptr_instance;
-
- // Activate any layers on instance chain
- res = loaderEnableInstanceLayers(ptr_instance, &ici, &ptr_instance->instance_layer_list);
- if (res != VK_SUCCESS) {
- goto out;
- }
-
- created_instance = (VkInstance)ptr_instance;
- res = loader_create_instance_chain(&ici, pAllocator, ptr_instance, &created_instance);
-
- if (res == VK_SUCCESS) {
- memset(ptr_instance->enabled_known_extensions.padding, 0, sizeof(uint64_t) * 4);
-
- wsi_create_instance(ptr_instance, &ici);
- debug_utils_CreateInstance(ptr_instance, &ici);
- extensions_create_instance(ptr_instance, &ici);
-
- *pInstance = created_instance;
-
- // Finally have the layers in place and everyone has seen
- // the CreateInstance command go by. This allows the layer's
- // GetInstanceProcAddr functions to return valid extension functions
- // if enabled.
- loaderActivateInstanceLayerExtensions(ptr_instance, *pInstance);
- }
-
-out:
-
- if (NULL != ptr_instance) {
- if (res != VK_SUCCESS) {
- if (loader.instances == ptr_instance) {
- loader.instances = ptr_instance->next;
- }
- if (NULL != ptr_instance->disp) {
- loader_instance_heap_free(ptr_instance, ptr_instance->disp);
- }
- if (ptr_instance->num_tmp_report_callbacks > 0) {
- // Remove temporary VK_EXT_debug_report items
- util_DestroyDebugReportCallbacks(ptr_instance, pAllocator, ptr_instance->num_tmp_report_callbacks,
- ptr_instance->tmp_report_callbacks);
- util_FreeDebugReportCreateInfos(pAllocator, ptr_instance->tmp_report_create_infos,
- ptr_instance->tmp_report_callbacks);
- }
- if (ptr_instance->num_tmp_messengers > 0) {
- // Remove temporary VK_EXT_debug_utils items
- util_DestroyDebugUtilsMessengers(ptr_instance, pAllocator, ptr_instance->num_tmp_messengers,
- ptr_instance->tmp_messengers);
- util_FreeDebugUtilsMessengerCreateInfos(pAllocator, ptr_instance->tmp_messenger_create_infos,
- ptr_instance->tmp_messengers);
- }
-
- if (NULL != ptr_instance->expanded_activated_layer_list.list) {
- loaderDeactivateLayers(ptr_instance, NULL, &ptr_instance->expanded_activated_layer_list);
- }
- if (NULL != ptr_instance->app_activated_layer_list.list) {
- loaderDestroyLayerList(ptr_instance, NULL, &ptr_instance->app_activated_layer_list);
- }
-
- loaderDeleteLayerListAndProperties(ptr_instance, &ptr_instance->instance_layer_list);
- loader_scanned_icd_clear(ptr_instance, &ptr_instance->icd_tramp_list);
- loader_destroy_generic_list(ptr_instance, (struct loader_generic_list *)&ptr_instance->ext_list);
-
- loader_instance_heap_free(ptr_instance, ptr_instance);
- } else {
- // Remove temporary VK_EXT_debug_report or VK_EXT_debug_utils items
- util_DestroyDebugUtilsMessengers(ptr_instance, pAllocator, ptr_instance->num_tmp_messengers,
- ptr_instance->tmp_messengers);
- util_DestroyDebugReportCallbacks(ptr_instance, pAllocator, ptr_instance->num_tmp_report_callbacks,
- ptr_instance->tmp_report_callbacks);
- }
-
- if (loaderLocked) {
- loader_platform_thread_unlock_mutex(&loader_lock);
- }
- }
-
- return res;
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkDestroyInstance(VkInstance instance, const VkAllocationCallbacks *pAllocator) {
- const VkLayerInstanceDispatchTable *disp;
- struct loader_instance *ptr_instance = NULL;
- bool callback_setup = false;
- bool messenger_setup = false;
-
- if (instance == VK_NULL_HANDLE) {
- return;
- }
-
- disp = loader_get_instance_layer_dispatch(instance);
-
- loader_platform_thread_lock_mutex(&loader_lock);
-
- ptr_instance = loader_get_instance(instance);
-
- if (pAllocator) {
- ptr_instance->alloc_callbacks = *pAllocator;
- }
-
- if (ptr_instance->num_tmp_messengers > 0) {
- // Setup the temporary VK_EXT_debug_utils messenger(s) here to catch cleanup issues:
- if (!util_CreateDebugUtilsMessengers(ptr_instance, pAllocator, ptr_instance->num_tmp_messengers,
- ptr_instance->tmp_messenger_create_infos, ptr_instance->tmp_messengers)) {
- messenger_setup = true;
- }
- }
-
- if (ptr_instance->num_tmp_report_callbacks > 0) {
- // Setup the temporary VK_EXT_debug_report callback(s) here to catch cleanup issues:
- if (!util_CreateDebugReportCallbacks(ptr_instance, pAllocator, ptr_instance->num_tmp_report_callbacks,
- ptr_instance->tmp_report_create_infos, ptr_instance->tmp_report_callbacks)) {
- callback_setup = true;
- }
- }
-
- disp->DestroyInstance(instance, pAllocator);
-
- if (NULL != ptr_instance->expanded_activated_layer_list.list) {
- loaderDeactivateLayers(ptr_instance, NULL, &ptr_instance->expanded_activated_layer_list);
- }
- if (NULL != ptr_instance->app_activated_layer_list.list) {
- loaderDestroyLayerList(ptr_instance, NULL, &ptr_instance->app_activated_layer_list);
- }
-
- if (ptr_instance->phys_devs_tramp) {
- for (uint32_t i = 0; i < ptr_instance->phys_dev_count_tramp; i++) {
- loader_instance_heap_free(ptr_instance, ptr_instance->phys_devs_tramp[i]);
- }
- loader_instance_heap_free(ptr_instance, ptr_instance->phys_devs_tramp);
- }
-
- if (ptr_instance->phys_dev_groups_tramp) {
- for (uint32_t i = 0; i < ptr_instance->phys_dev_group_count_tramp; i++) {
- loader_instance_heap_free(ptr_instance, ptr_instance->phys_dev_groups_tramp[i]);
- }
- loader_instance_heap_free(ptr_instance, ptr_instance->phys_dev_groups_tramp);
- }
-
- if (messenger_setup) {
- util_DestroyDebugUtilsMessengers(ptr_instance, pAllocator, ptr_instance->num_tmp_messengers, ptr_instance->tmp_messengers);
- util_FreeDebugUtilsMessengerCreateInfos(pAllocator, ptr_instance->tmp_messenger_create_infos, ptr_instance->tmp_messengers);
- }
-
- if (callback_setup) {
- util_DestroyDebugReportCallbacks(ptr_instance, pAllocator, ptr_instance->num_tmp_report_callbacks,
- ptr_instance->tmp_report_callbacks);
- util_FreeDebugReportCreateInfos(pAllocator, ptr_instance->tmp_report_create_infos, ptr_instance->tmp_report_callbacks);
- }
-
- loader_instance_heap_free(ptr_instance, ptr_instance->disp);
- loader_instance_heap_free(ptr_instance, ptr_instance);
- loader_platform_thread_unlock_mutex(&loader_lock);
-
- // Unload preloaded layers, so if vkEnumerateInstanceExtensionProperties or vkCreateInstance is called again, the ICD's are up
- // to date
- loader_unload_preloaded_icds();
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkEnumeratePhysicalDevices(VkInstance instance, uint32_t *pPhysicalDeviceCount,
- VkPhysicalDevice *pPhysicalDevices) {
- VkResult res = VK_SUCCESS;
- uint32_t count;
- uint32_t i;
- struct loader_instance *inst;
-
- loader_platform_thread_lock_mutex(&loader_lock);
-
- inst = loader_get_instance(instance);
- if (NULL == inst) {
- res = VK_ERROR_INITIALIZATION_FAILED;
- goto out;
- }
-
- if (NULL == pPhysicalDeviceCount) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "vkEnumeratePhysicalDevices: Received NULL pointer for physical device count return value.");
- res = VK_ERROR_INITIALIZATION_FAILED;
- goto out;
- }
-
- // Setup the trampoline loader physical devices. This will actually
- // call down and setup the terminator loader physical devices during the
- // process.
- VkResult setup_res = setupLoaderTrampPhysDevs(instance);
- if (setup_res != VK_SUCCESS && setup_res != VK_INCOMPLETE) {
- res = setup_res;
- goto out;
- }
-
- count = inst->phys_dev_count_tramp;
-
- // Wrap the PhysDev object for loader usage, return wrapped objects
- if (NULL != pPhysicalDevices) {
- if (inst->phys_dev_count_tramp > *pPhysicalDeviceCount) {
- loader_log(inst, VK_DEBUG_REPORT_INFORMATION_BIT_EXT, 0,
- "vkEnumeratePhysicalDevices: Trimming device count down"
- " by application request from %d to %d physical devices",
- inst->phys_dev_count_tramp, *pPhysicalDeviceCount);
- count = *pPhysicalDeviceCount;
- res = VK_INCOMPLETE;
- }
- for (i = 0; i < count; i++) {
- pPhysicalDevices[i] = (VkPhysicalDevice)inst->phys_devs_tramp[i];
- }
- }
-
- *pPhysicalDeviceCount = count;
-
-out:
-
- loader_platform_thread_unlock_mutex(&loader_lock);
- return res;
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceFeatures(VkPhysicalDevice physicalDevice,
- VkPhysicalDeviceFeatures *pFeatures) {
- const VkLayerInstanceDispatchTable *disp;
- VkPhysicalDevice unwrapped_phys_dev = loader_unwrap_physical_device(physicalDevice);
- disp = loader_get_instance_layer_dispatch(physicalDevice);
- disp->GetPhysicalDeviceFeatures(unwrapped_phys_dev, pFeatures);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceFormatProperties(VkPhysicalDevice physicalDevice, VkFormat format,
- VkFormatProperties *pFormatInfo) {
- const VkLayerInstanceDispatchTable *disp;
- VkPhysicalDevice unwrapped_pd = loader_unwrap_physical_device(physicalDevice);
- disp = loader_get_instance_layer_dispatch(physicalDevice);
- disp->GetPhysicalDeviceFormatProperties(unwrapped_pd, format, pFormatInfo);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceImageFormatProperties(
- VkPhysicalDevice physicalDevice, VkFormat format, VkImageType type, VkImageTiling tiling, VkImageUsageFlags usage,
- VkImageCreateFlags flags, VkImageFormatProperties *pImageFormatProperties) {
- const VkLayerInstanceDispatchTable *disp;
- VkPhysicalDevice unwrapped_phys_dev = loader_unwrap_physical_device(physicalDevice);
- disp = loader_get_instance_layer_dispatch(physicalDevice);
- return disp->GetPhysicalDeviceImageFormatProperties(unwrapped_phys_dev, format, type, tiling, usage, flags,
- pImageFormatProperties);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceProperties(VkPhysicalDevice physicalDevice,
- VkPhysicalDeviceProperties *pProperties) {
- const VkLayerInstanceDispatchTable *disp;
- VkPhysicalDevice unwrapped_phys_dev = loader_unwrap_physical_device(physicalDevice);
- disp = loader_get_instance_layer_dispatch(physicalDevice);
- disp->GetPhysicalDeviceProperties(unwrapped_phys_dev, pProperties);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceQueueFamilyProperties(VkPhysicalDevice physicalDevice,
- uint32_t *pQueueFamilyPropertyCount,
- VkQueueFamilyProperties *pQueueProperties) {
- const VkLayerInstanceDispatchTable *disp;
- VkPhysicalDevice unwrapped_phys_dev = loader_unwrap_physical_device(physicalDevice);
- disp = loader_get_instance_layer_dispatch(physicalDevice);
- disp->GetPhysicalDeviceQueueFamilyProperties(unwrapped_phys_dev, pQueueFamilyPropertyCount, pQueueProperties);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceMemoryProperties(VkPhysicalDevice physicalDevice,
- VkPhysicalDeviceMemoryProperties *pMemoryProperties) {
- const VkLayerInstanceDispatchTable *disp;
- VkPhysicalDevice unwrapped_phys_dev = loader_unwrap_physical_device(physicalDevice);
- disp = loader_get_instance_layer_dispatch(physicalDevice);
- disp->GetPhysicalDeviceMemoryProperties(unwrapped_phys_dev, pMemoryProperties);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkCreateDevice(VkPhysicalDevice physicalDevice, const VkDeviceCreateInfo *pCreateInfo,
- const VkAllocationCallbacks *pAllocator, VkDevice *pDevice) {
- loader_platform_thread_lock_mutex(&loader_lock);
- VkResult res = loader_layer_create_device(NULL, physicalDevice, pCreateInfo, pAllocator, pDevice, NULL, NULL);
- loader_platform_thread_unlock_mutex(&loader_lock);
- return res;
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkDestroyDevice(VkDevice device, const VkAllocationCallbacks *pAllocator) {
- const VkLayerDispatchTable *disp;
-
- if (device == VK_NULL_HANDLE) {
- return;
- }
- disp = loader_get_dispatch(device);
-
- loader_platform_thread_lock_mutex(&loader_lock);
-
- loader_layer_destroy_device(device, pAllocator, disp->DestroyDevice);
-
- loader_platform_thread_unlock_mutex(&loader_lock);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkEnumerateDeviceExtensionProperties(VkPhysicalDevice physicalDevice,
- const char *pLayerName, uint32_t *pPropertyCount,
- VkExtensionProperties *pProperties) {
- VkResult res = VK_SUCCESS;
- struct loader_physical_device_tramp *phys_dev;
- const VkLayerInstanceDispatchTable *disp;
- phys_dev = (struct loader_physical_device_tramp *)physicalDevice;
-
- loader_platform_thread_lock_mutex(&loader_lock);
-
- // always pass this call down the instance chain which will terminate
- // in the ICD. This allows layers to filter the extensions coming back
- // up the chain. In the terminator we look up layer extensions from the
- // manifest file if it wasn't provided by the layer itself.
- disp = loader_get_instance_layer_dispatch(physicalDevice);
- res = disp->EnumerateDeviceExtensionProperties(phys_dev->phys_dev, pLayerName, pPropertyCount, pProperties);
-
- loader_platform_thread_unlock_mutex(&loader_lock);
- return res;
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkEnumerateDeviceLayerProperties(VkPhysicalDevice physicalDevice,
- uint32_t *pPropertyCount,
- VkLayerProperties *pProperties) {
- uint32_t copy_size;
- struct loader_physical_device_tramp *phys_dev;
- struct loader_layer_list *enabled_layers, layers_list;
- memset(&layers_list, 0, sizeof(layers_list));
- loader_platform_thread_lock_mutex(&loader_lock);
-
- // Don't dispatch this call down the instance chain, want all device layers
- // enumerated and instance chain may not contain all device layers
- // TODO re-evaluate the above statement we maybe able to start calling
- // down the chain
-
- phys_dev = (struct loader_physical_device_tramp *)physicalDevice;
- const struct loader_instance *inst = phys_dev->this_instance;
-
- uint32_t count = inst->app_activated_layer_list.count;
- if (count == 0 || pProperties == NULL) {
- *pPropertyCount = count;
- loader_platform_thread_unlock_mutex(&loader_lock);
- return VK_SUCCESS;
- }
- enabled_layers = (struct loader_layer_list *)&inst->app_activated_layer_list;
-
- copy_size = (*pPropertyCount < count) ? *pPropertyCount : count;
- for (uint32_t i = 0; i < copy_size; i++) {
- memcpy(&pProperties[i], &(enabled_layers->list[i].info), sizeof(VkLayerProperties));
- }
- *pPropertyCount = copy_size;
-
- if (copy_size < count) {
- loader_platform_thread_unlock_mutex(&loader_lock);
- return VK_INCOMPLETE;
- }
-
- loader_platform_thread_unlock_mutex(&loader_lock);
- return VK_SUCCESS;
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkGetDeviceQueue(VkDevice device, uint32_t queueNodeIndex, uint32_t queueIndex,
- VkQueue *pQueue) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- disp->GetDeviceQueue(device, queueNodeIndex, queueIndex, pQueue);
- if (pQueue != NULL) {
- loader_set_dispatch(*pQueue, disp);
- }
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkQueueSubmit(VkQueue queue, uint32_t submitCount, const VkSubmitInfo *pSubmits,
- VkFence fence) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(queue);
-
- return disp->QueueSubmit(queue, submitCount, pSubmits, fence);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkQueueWaitIdle(VkQueue queue) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(queue);
-
- return disp->QueueWaitIdle(queue);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkDeviceWaitIdle(VkDevice device) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- return disp->DeviceWaitIdle(device);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkAllocateMemory(VkDevice device, const VkMemoryAllocateInfo *pAllocateInfo,
- const VkAllocationCallbacks *pAllocator, VkDeviceMemory *pMemory) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- return disp->AllocateMemory(device, pAllocateInfo, pAllocator, pMemory);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkFreeMemory(VkDevice device, VkDeviceMemory mem,
- const VkAllocationCallbacks *pAllocator) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- disp->FreeMemory(device, mem, pAllocator);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkMapMemory(VkDevice device, VkDeviceMemory mem, VkDeviceSize offset,
- VkDeviceSize size, VkFlags flags, void **ppData) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- return disp->MapMemory(device, mem, offset, size, flags, ppData);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkUnmapMemory(VkDevice device, VkDeviceMemory mem) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- disp->UnmapMemory(device, mem);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkFlushMappedMemoryRanges(VkDevice device, uint32_t memoryRangeCount,
- const VkMappedMemoryRange *pMemoryRanges) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- return disp->FlushMappedMemoryRanges(device, memoryRangeCount, pMemoryRanges);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkInvalidateMappedMemoryRanges(VkDevice device, uint32_t memoryRangeCount,
- const VkMappedMemoryRange *pMemoryRanges) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- return disp->InvalidateMappedMemoryRanges(device, memoryRangeCount, pMemoryRanges);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkGetDeviceMemoryCommitment(VkDevice device, VkDeviceMemory memory,
- VkDeviceSize *pCommittedMemoryInBytes) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- disp->GetDeviceMemoryCommitment(device, memory, pCommittedMemoryInBytes);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkBindBufferMemory(VkDevice device, VkBuffer buffer, VkDeviceMemory mem,
- VkDeviceSize offset) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- return disp->BindBufferMemory(device, buffer, mem, offset);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkBindImageMemory(VkDevice device, VkImage image, VkDeviceMemory mem,
- VkDeviceSize offset) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- return disp->BindImageMemory(device, image, mem, offset);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkGetBufferMemoryRequirements(VkDevice device, VkBuffer buffer,
- VkMemoryRequirements *pMemoryRequirements) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- disp->GetBufferMemoryRequirements(device, buffer, pMemoryRequirements);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkGetImageMemoryRequirements(VkDevice device, VkImage image,
- VkMemoryRequirements *pMemoryRequirements) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- disp->GetImageMemoryRequirements(device, image, pMemoryRequirements);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL
-vkGetImageSparseMemoryRequirements(VkDevice device, VkImage image, uint32_t *pSparseMemoryRequirementCount,
- VkSparseImageMemoryRequirements *pSparseMemoryRequirements) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- disp->GetImageSparseMemoryRequirements(device, image, pSparseMemoryRequirementCount, pSparseMemoryRequirements);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceSparseImageFormatProperties(
- VkPhysicalDevice physicalDevice, VkFormat format, VkImageType type, VkSampleCountFlagBits samples, VkImageUsageFlags usage,
- VkImageTiling tiling, uint32_t *pPropertyCount, VkSparseImageFormatProperties *pProperties) {
- const VkLayerInstanceDispatchTable *disp;
- VkPhysicalDevice unwrapped_phys_dev = loader_unwrap_physical_device(physicalDevice);
- disp = loader_get_instance_layer_dispatch(physicalDevice);
-
- disp->GetPhysicalDeviceSparseImageFormatProperties(unwrapped_phys_dev, format, type, samples, usage, tiling, pPropertyCount,
- pProperties);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkQueueBindSparse(VkQueue queue, uint32_t bindInfoCount,
- const VkBindSparseInfo *pBindInfo, VkFence fence) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(queue);
-
- return disp->QueueBindSparse(queue, bindInfoCount, pBindInfo, fence);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkCreateFence(VkDevice device, const VkFenceCreateInfo *pCreateInfo,
- const VkAllocationCallbacks *pAllocator, VkFence *pFence) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- return disp->CreateFence(device, pCreateInfo, pAllocator, pFence);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkDestroyFence(VkDevice device, VkFence fence, const VkAllocationCallbacks *pAllocator) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- disp->DestroyFence(device, fence, pAllocator);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkResetFences(VkDevice device, uint32_t fenceCount, const VkFence *pFences) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- return disp->ResetFences(device, fenceCount, pFences);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkGetFenceStatus(VkDevice device, VkFence fence) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- return disp->GetFenceStatus(device, fence);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkWaitForFences(VkDevice device, uint32_t fenceCount, const VkFence *pFences,
- VkBool32 waitAll, uint64_t timeout) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- return disp->WaitForFences(device, fenceCount, pFences, waitAll, timeout);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkCreateSemaphore(VkDevice device, const VkSemaphoreCreateInfo *pCreateInfo,
- const VkAllocationCallbacks *pAllocator, VkSemaphore *pSemaphore) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- return disp->CreateSemaphore(device, pCreateInfo, pAllocator, pSemaphore);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkDestroySemaphore(VkDevice device, VkSemaphore semaphore,
- const VkAllocationCallbacks *pAllocator) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- disp->DestroySemaphore(device, semaphore, pAllocator);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkCreateEvent(VkDevice device, const VkEventCreateInfo *pCreateInfo,
- const VkAllocationCallbacks *pAllocator, VkEvent *pEvent) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- return disp->CreateEvent(device, pCreateInfo, pAllocator, pEvent);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkDestroyEvent(VkDevice device, VkEvent event, const VkAllocationCallbacks *pAllocator) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- disp->DestroyEvent(device, event, pAllocator);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkGetEventStatus(VkDevice device, VkEvent event) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- return disp->GetEventStatus(device, event);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkSetEvent(VkDevice device, VkEvent event) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- return disp->SetEvent(device, event);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkResetEvent(VkDevice device, VkEvent event) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- return disp->ResetEvent(device, event);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkCreateQueryPool(VkDevice device, const VkQueryPoolCreateInfo *pCreateInfo,
- const VkAllocationCallbacks *pAllocator, VkQueryPool *pQueryPool) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- return disp->CreateQueryPool(device, pCreateInfo, pAllocator, pQueryPool);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkDestroyQueryPool(VkDevice device, VkQueryPool queryPool,
- const VkAllocationCallbacks *pAllocator) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- disp->DestroyQueryPool(device, queryPool, pAllocator);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkGetQueryPoolResults(VkDevice device, VkQueryPool queryPool, uint32_t firstQuery,
- uint32_t queryCount, size_t dataSize, void *pData,
- VkDeviceSize stride, VkQueryResultFlags flags) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- return disp->GetQueryPoolResults(device, queryPool, firstQuery, queryCount, dataSize, pData, stride, flags);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkCreateBuffer(VkDevice device, const VkBufferCreateInfo *pCreateInfo,
- const VkAllocationCallbacks *pAllocator, VkBuffer *pBuffer) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- return disp->CreateBuffer(device, pCreateInfo, pAllocator, pBuffer);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkDestroyBuffer(VkDevice device, VkBuffer buffer,
- const VkAllocationCallbacks *pAllocator) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- disp->DestroyBuffer(device, buffer, pAllocator);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkCreateBufferView(VkDevice device, const VkBufferViewCreateInfo *pCreateInfo,
- const VkAllocationCallbacks *pAllocator, VkBufferView *pView) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- return disp->CreateBufferView(device, pCreateInfo, pAllocator, pView);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkDestroyBufferView(VkDevice device, VkBufferView bufferView,
- const VkAllocationCallbacks *pAllocator) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- disp->DestroyBufferView(device, bufferView, pAllocator);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkCreateImage(VkDevice device, const VkImageCreateInfo *pCreateInfo,
- const VkAllocationCallbacks *pAllocator, VkImage *pImage) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- return disp->CreateImage(device, pCreateInfo, pAllocator, pImage);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkDestroyImage(VkDevice device, VkImage image, const VkAllocationCallbacks *pAllocator) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- disp->DestroyImage(device, image, pAllocator);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkGetImageSubresourceLayout(VkDevice device, VkImage image,
- const VkImageSubresource *pSubresource,
- VkSubresourceLayout *pLayout) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- disp->GetImageSubresourceLayout(device, image, pSubresource, pLayout);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkCreateImageView(VkDevice device, const VkImageViewCreateInfo *pCreateInfo,
- const VkAllocationCallbacks *pAllocator, VkImageView *pView) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- return disp->CreateImageView(device, pCreateInfo, pAllocator, pView);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkDestroyImageView(VkDevice device, VkImageView imageView,
- const VkAllocationCallbacks *pAllocator) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- disp->DestroyImageView(device, imageView, pAllocator);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkCreateShaderModule(VkDevice device, const VkShaderModuleCreateInfo *pCreateInfo,
- const VkAllocationCallbacks *pAllocator,
- VkShaderModule *pShader) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- return disp->CreateShaderModule(device, pCreateInfo, pAllocator, pShader);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkDestroyShaderModule(VkDevice device, VkShaderModule shaderModule,
- const VkAllocationCallbacks *pAllocator) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- disp->DestroyShaderModule(device, shaderModule, pAllocator);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkCreatePipelineCache(VkDevice device, const VkPipelineCacheCreateInfo *pCreateInfo,
- const VkAllocationCallbacks *pAllocator,
- VkPipelineCache *pPipelineCache) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- return disp->CreatePipelineCache(device, pCreateInfo, pAllocator, pPipelineCache);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkDestroyPipelineCache(VkDevice device, VkPipelineCache pipelineCache,
- const VkAllocationCallbacks *pAllocator) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- disp->DestroyPipelineCache(device, pipelineCache, pAllocator);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkGetPipelineCacheData(VkDevice device, VkPipelineCache pipelineCache,
- size_t *pDataSize, void *pData) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- return disp->GetPipelineCacheData(device, pipelineCache, pDataSize, pData);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkMergePipelineCaches(VkDevice device, VkPipelineCache dstCache,
- uint32_t srcCacheCount, const VkPipelineCache *pSrcCaches) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- return disp->MergePipelineCaches(device, dstCache, srcCacheCount, pSrcCaches);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkCreateGraphicsPipelines(VkDevice device, VkPipelineCache pipelineCache,
- uint32_t createInfoCount,
- const VkGraphicsPipelineCreateInfo *pCreateInfos,
- const VkAllocationCallbacks *pAllocator,
- VkPipeline *pPipelines) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- return disp->CreateGraphicsPipelines(device, pipelineCache, createInfoCount, pCreateInfos, pAllocator, pPipelines);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkCreateComputePipelines(VkDevice device, VkPipelineCache pipelineCache,
- uint32_t createInfoCount,
- const VkComputePipelineCreateInfo *pCreateInfos,
- const VkAllocationCallbacks *pAllocator,
- VkPipeline *pPipelines) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- return disp->CreateComputePipelines(device, pipelineCache, createInfoCount, pCreateInfos, pAllocator, pPipelines);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkDestroyPipeline(VkDevice device, VkPipeline pipeline,
- const VkAllocationCallbacks *pAllocator) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- disp->DestroyPipeline(device, pipeline, pAllocator);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkCreatePipelineLayout(VkDevice device, const VkPipelineLayoutCreateInfo *pCreateInfo,
- const VkAllocationCallbacks *pAllocator,
- VkPipelineLayout *pPipelineLayout) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- return disp->CreatePipelineLayout(device, pCreateInfo, pAllocator, pPipelineLayout);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkDestroyPipelineLayout(VkDevice device, VkPipelineLayout pipelineLayout,
- const VkAllocationCallbacks *pAllocator) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- disp->DestroyPipelineLayout(device, pipelineLayout, pAllocator);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkCreateSampler(VkDevice device, const VkSamplerCreateInfo *pCreateInfo,
- const VkAllocationCallbacks *pAllocator, VkSampler *pSampler) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- return disp->CreateSampler(device, pCreateInfo, pAllocator, pSampler);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkDestroySampler(VkDevice device, VkSampler sampler,
- const VkAllocationCallbacks *pAllocator) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- disp->DestroySampler(device, sampler, pAllocator);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkCreateDescriptorSetLayout(VkDevice device,
- const VkDescriptorSetLayoutCreateInfo *pCreateInfo,
- const VkAllocationCallbacks *pAllocator,
- VkDescriptorSetLayout *pSetLayout) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- return disp->CreateDescriptorSetLayout(device, pCreateInfo, pAllocator, pSetLayout);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkDestroyDescriptorSetLayout(VkDevice device, VkDescriptorSetLayout descriptorSetLayout,
- const VkAllocationCallbacks *pAllocator) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- disp->DestroyDescriptorSetLayout(device, descriptorSetLayout, pAllocator);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkCreateDescriptorPool(VkDevice device, const VkDescriptorPoolCreateInfo *pCreateInfo,
- const VkAllocationCallbacks *pAllocator,
- VkDescriptorPool *pDescriptorPool) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- return disp->CreateDescriptorPool(device, pCreateInfo, pAllocator, pDescriptorPool);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkDestroyDescriptorPool(VkDevice device, VkDescriptorPool descriptorPool,
- const VkAllocationCallbacks *pAllocator) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- disp->DestroyDescriptorPool(device, descriptorPool, pAllocator);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkResetDescriptorPool(VkDevice device, VkDescriptorPool descriptorPool,
- VkDescriptorPoolResetFlags flags) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- return disp->ResetDescriptorPool(device, descriptorPool, flags);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkAllocateDescriptorSets(VkDevice device,
- const VkDescriptorSetAllocateInfo *pAllocateInfo,
- VkDescriptorSet *pDescriptorSets) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- return disp->AllocateDescriptorSets(device, pAllocateInfo, pDescriptorSets);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkFreeDescriptorSets(VkDevice device, VkDescriptorPool descriptorPool,
- uint32_t descriptorSetCount,
- const VkDescriptorSet *pDescriptorSets) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- return disp->FreeDescriptorSets(device, descriptorPool, descriptorSetCount, pDescriptorSets);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkUpdateDescriptorSets(VkDevice device, uint32_t descriptorWriteCount,
- const VkWriteDescriptorSet *pDescriptorWrites,
- uint32_t descriptorCopyCount,
- const VkCopyDescriptorSet *pDescriptorCopies) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- disp->UpdateDescriptorSets(device, descriptorWriteCount, pDescriptorWrites, descriptorCopyCount, pDescriptorCopies);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkCreateFramebuffer(VkDevice device, const VkFramebufferCreateInfo *pCreateInfo,
- const VkAllocationCallbacks *pAllocator,
- VkFramebuffer *pFramebuffer) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- return disp->CreateFramebuffer(device, pCreateInfo, pAllocator, pFramebuffer);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkDestroyFramebuffer(VkDevice device, VkFramebuffer framebuffer,
- const VkAllocationCallbacks *pAllocator) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- disp->DestroyFramebuffer(device, framebuffer, pAllocator);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkCreateRenderPass(VkDevice device, const VkRenderPassCreateInfo *pCreateInfo,
- const VkAllocationCallbacks *pAllocator,
- VkRenderPass *pRenderPass) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- return disp->CreateRenderPass(device, pCreateInfo, pAllocator, pRenderPass);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkDestroyRenderPass(VkDevice device, VkRenderPass renderPass,
- const VkAllocationCallbacks *pAllocator) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- disp->DestroyRenderPass(device, renderPass, pAllocator);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkGetRenderAreaGranularity(VkDevice device, VkRenderPass renderPass,
- VkExtent2D *pGranularity) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- disp->GetRenderAreaGranularity(device, renderPass, pGranularity);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkCreateCommandPool(VkDevice device, const VkCommandPoolCreateInfo *pCreateInfo,
- const VkAllocationCallbacks *pAllocator,
- VkCommandPool *pCommandPool) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- return disp->CreateCommandPool(device, pCreateInfo, pAllocator, pCommandPool);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkDestroyCommandPool(VkDevice device, VkCommandPool commandPool,
- const VkAllocationCallbacks *pAllocator) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- disp->DestroyCommandPool(device, commandPool, pAllocator);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkResetCommandPool(VkDevice device, VkCommandPool commandPool,
- VkCommandPoolResetFlags flags) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- return disp->ResetCommandPool(device, commandPool, flags);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkAllocateCommandBuffers(VkDevice device,
- const VkCommandBufferAllocateInfo *pAllocateInfo,
- VkCommandBuffer *pCommandBuffers) {
- const VkLayerDispatchTable *disp;
- VkResult res;
-
- disp = loader_get_dispatch(device);
-
- res = disp->AllocateCommandBuffers(device, pAllocateInfo, pCommandBuffers);
- if (res == VK_SUCCESS) {
- for (uint32_t i = 0; i < pAllocateInfo->commandBufferCount; i++) {
- if (pCommandBuffers[i]) {
- loader_init_dispatch(pCommandBuffers[i], disp);
- }
- }
- }
-
- return res;
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkFreeCommandBuffers(VkDevice device, VkCommandPool commandPool,
- uint32_t commandBufferCount, const VkCommandBuffer *pCommandBuffers) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(device);
-
- disp->FreeCommandBuffers(device, commandPool, commandBufferCount, pCommandBuffers);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkBeginCommandBuffer(VkCommandBuffer commandBuffer,
- const VkCommandBufferBeginInfo *pBeginInfo) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(commandBuffer);
-
- return disp->BeginCommandBuffer(commandBuffer, pBeginInfo);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkEndCommandBuffer(VkCommandBuffer commandBuffer) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(commandBuffer);
-
- return disp->EndCommandBuffer(commandBuffer);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkResetCommandBuffer(VkCommandBuffer commandBuffer, VkCommandBufferResetFlags flags) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(commandBuffer);
-
- return disp->ResetCommandBuffer(commandBuffer, flags);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkCmdBindPipeline(VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint,
- VkPipeline pipeline) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(commandBuffer);
-
- disp->CmdBindPipeline(commandBuffer, pipelineBindPoint, pipeline);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkCmdSetViewport(VkCommandBuffer commandBuffer, uint32_t firstViewport,
- uint32_t viewportCount, const VkViewport *pViewports) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(commandBuffer);
-
- disp->CmdSetViewport(commandBuffer, firstViewport, viewportCount, pViewports);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkCmdSetScissor(VkCommandBuffer commandBuffer, uint32_t firstScissor,
- uint32_t scissorCount, const VkRect2D *pScissors) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(commandBuffer);
-
- disp->CmdSetScissor(commandBuffer, firstScissor, scissorCount, pScissors);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkCmdSetLineWidth(VkCommandBuffer commandBuffer, float lineWidth) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(commandBuffer);
-
- disp->CmdSetLineWidth(commandBuffer, lineWidth);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkCmdSetDepthBias(VkCommandBuffer commandBuffer, float depthBiasConstantFactor,
- float depthBiasClamp, float depthBiasSlopeFactor) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(commandBuffer);
-
- disp->CmdSetDepthBias(commandBuffer, depthBiasConstantFactor, depthBiasClamp, depthBiasSlopeFactor);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkCmdSetBlendConstants(VkCommandBuffer commandBuffer, const float blendConstants[4]) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(commandBuffer);
-
- disp->CmdSetBlendConstants(commandBuffer, blendConstants);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkCmdSetDepthBounds(VkCommandBuffer commandBuffer, float minDepthBounds,
- float maxDepthBounds) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(commandBuffer);
-
- disp->CmdSetDepthBounds(commandBuffer, minDepthBounds, maxDepthBounds);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkCmdSetStencilCompareMask(VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask,
- uint32_t compareMask) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(commandBuffer);
-
- disp->CmdSetStencilCompareMask(commandBuffer, faceMask, compareMask);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkCmdSetStencilWriteMask(VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask,
- uint32_t writeMask) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(commandBuffer);
-
- disp->CmdSetStencilWriteMask(commandBuffer, faceMask, writeMask);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkCmdSetStencilReference(VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask,
- uint32_t reference) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(commandBuffer);
-
- disp->CmdSetStencilReference(commandBuffer, faceMask, reference);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkCmdBindDescriptorSets(VkCommandBuffer commandBuffer,
- VkPipelineBindPoint pipelineBindPoint, VkPipelineLayout layout,
- uint32_t firstSet, uint32_t descriptorSetCount,
- const VkDescriptorSet *pDescriptorSets,
- uint32_t dynamicOffsetCount, const uint32_t *pDynamicOffsets) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(commandBuffer);
-
- disp->CmdBindDescriptorSets(commandBuffer, pipelineBindPoint, layout, firstSet, descriptorSetCount, pDescriptorSets,
- dynamicOffsetCount, pDynamicOffsets);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkCmdBindIndexBuffer(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset,
- VkIndexType indexType) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(commandBuffer);
-
- disp->CmdBindIndexBuffer(commandBuffer, buffer, offset, indexType);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkCmdBindVertexBuffers(VkCommandBuffer commandBuffer, uint32_t firstBinding,
- uint32_t bindingCount, const VkBuffer *pBuffers,
- const VkDeviceSize *pOffsets) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(commandBuffer);
-
- disp->CmdBindVertexBuffers(commandBuffer, firstBinding, bindingCount, pBuffers, pOffsets);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkCmdDraw(VkCommandBuffer commandBuffer, uint32_t vertexCount, uint32_t instanceCount,
- uint32_t firstVertex, uint32_t firstInstance) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(commandBuffer);
-
- disp->CmdDraw(commandBuffer, vertexCount, instanceCount, firstVertex, firstInstance);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkCmdDrawIndexed(VkCommandBuffer commandBuffer, uint32_t indexCount,
- uint32_t instanceCount, uint32_t firstIndex, int32_t vertexOffset,
- uint32_t firstInstance) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(commandBuffer);
-
- disp->CmdDrawIndexed(commandBuffer, indexCount, instanceCount, firstIndex, vertexOffset, firstInstance);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkCmdDrawIndirect(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset,
- uint32_t drawCount, uint32_t stride) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(commandBuffer);
-
- disp->CmdDrawIndirect(commandBuffer, buffer, offset, drawCount, stride);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkCmdDrawIndexedIndirect(VkCommandBuffer commandBuffer, VkBuffer buffer,
- VkDeviceSize offset, uint32_t drawCount, uint32_t stride) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(commandBuffer);
-
- disp->CmdDrawIndexedIndirect(commandBuffer, buffer, offset, drawCount, stride);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkCmdDispatch(VkCommandBuffer commandBuffer, uint32_t x, uint32_t y, uint32_t z) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(commandBuffer);
-
- disp->CmdDispatch(commandBuffer, x, y, z);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkCmdDispatchIndirect(VkCommandBuffer commandBuffer, VkBuffer buffer,
- VkDeviceSize offset) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(commandBuffer);
-
- disp->CmdDispatchIndirect(commandBuffer, buffer, offset);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkCmdCopyBuffer(VkCommandBuffer commandBuffer, VkBuffer srcBuffer, VkBuffer dstBuffer,
- uint32_t regionCount, const VkBufferCopy *pRegions) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(commandBuffer);
-
- disp->CmdCopyBuffer(commandBuffer, srcBuffer, dstBuffer, regionCount, pRegions);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkCmdCopyImage(VkCommandBuffer commandBuffer, VkImage srcImage,
- VkImageLayout srcImageLayout, VkImage dstImage,
- VkImageLayout dstImageLayout, uint32_t regionCount,
- const VkImageCopy *pRegions) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(commandBuffer);
-
- disp->CmdCopyImage(commandBuffer, srcImage, srcImageLayout, dstImage, dstImageLayout, regionCount, pRegions);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkCmdBlitImage(VkCommandBuffer commandBuffer, VkImage srcImage,
- VkImageLayout srcImageLayout, VkImage dstImage,
- VkImageLayout dstImageLayout, uint32_t regionCount,
- const VkImageBlit *pRegions, VkFilter filter) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(commandBuffer);
-
- disp->CmdBlitImage(commandBuffer, srcImage, srcImageLayout, dstImage, dstImageLayout, regionCount, pRegions, filter);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkCmdCopyBufferToImage(VkCommandBuffer commandBuffer, VkBuffer srcBuffer, VkImage dstImage,
- VkImageLayout dstImageLayout, uint32_t regionCount,
- const VkBufferImageCopy *pRegions) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(commandBuffer);
-
- disp->CmdCopyBufferToImage(commandBuffer, srcBuffer, dstImage, dstImageLayout, regionCount, pRegions);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkCmdCopyImageToBuffer(VkCommandBuffer commandBuffer, VkImage srcImage,
- VkImageLayout srcImageLayout, VkBuffer dstBuffer,
- uint32_t regionCount, const VkBufferImageCopy *pRegions) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(commandBuffer);
-
- disp->CmdCopyImageToBuffer(commandBuffer, srcImage, srcImageLayout, dstBuffer, regionCount, pRegions);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkCmdUpdateBuffer(VkCommandBuffer commandBuffer, VkBuffer dstBuffer,
- VkDeviceSize dstOffset, VkDeviceSize dataSize, const void *pData) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(commandBuffer);
-
- disp->CmdUpdateBuffer(commandBuffer, dstBuffer, dstOffset, dataSize, pData);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkCmdFillBuffer(VkCommandBuffer commandBuffer, VkBuffer dstBuffer, VkDeviceSize dstOffset,
- VkDeviceSize size, uint32_t data) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(commandBuffer);
-
- disp->CmdFillBuffer(commandBuffer, dstBuffer, dstOffset, size, data);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkCmdClearColorImage(VkCommandBuffer commandBuffer, VkImage image,
- VkImageLayout imageLayout, const VkClearColorValue *pColor,
- uint32_t rangeCount, const VkImageSubresourceRange *pRanges) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(commandBuffer);
-
- disp->CmdClearColorImage(commandBuffer, image, imageLayout, pColor, rangeCount, pRanges);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkCmdClearDepthStencilImage(VkCommandBuffer commandBuffer, VkImage image,
- VkImageLayout imageLayout,
- const VkClearDepthStencilValue *pDepthStencil,
- uint32_t rangeCount, const VkImageSubresourceRange *pRanges) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(commandBuffer);
-
- disp->CmdClearDepthStencilImage(commandBuffer, image, imageLayout, pDepthStencil, rangeCount, pRanges);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkCmdClearAttachments(VkCommandBuffer commandBuffer, uint32_t attachmentCount,
- const VkClearAttachment *pAttachments, uint32_t rectCount,
- const VkClearRect *pRects) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(commandBuffer);
-
- disp->CmdClearAttachments(commandBuffer, attachmentCount, pAttachments, rectCount, pRects);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkCmdResolveImage(VkCommandBuffer commandBuffer, VkImage srcImage,
- VkImageLayout srcImageLayout, VkImage dstImage,
- VkImageLayout dstImageLayout, uint32_t regionCount,
- const VkImageResolve *pRegions) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(commandBuffer);
-
- disp->CmdResolveImage(commandBuffer, srcImage, srcImageLayout, dstImage, dstImageLayout, regionCount, pRegions);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkCmdSetEvent(VkCommandBuffer commandBuffer, VkEvent event,
- VkPipelineStageFlags stageMask) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(commandBuffer);
-
- disp->CmdSetEvent(commandBuffer, event, stageMask);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkCmdResetEvent(VkCommandBuffer commandBuffer, VkEvent event,
- VkPipelineStageFlags stageMask) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(commandBuffer);
-
- disp->CmdResetEvent(commandBuffer, event, stageMask);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkCmdWaitEvents(VkCommandBuffer commandBuffer, uint32_t eventCount, const VkEvent *pEvents,
- VkPipelineStageFlags sourceStageMask, VkPipelineStageFlags dstStageMask,
- uint32_t memoryBarrierCount, const VkMemoryBarrier *pMemoryBarriers,
- uint32_t bufferMemoryBarrierCount,
- const VkBufferMemoryBarrier *pBufferMemoryBarriers,
- uint32_t imageMemoryBarrierCount,
- const VkImageMemoryBarrier *pImageMemoryBarriers) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(commandBuffer);
-
- disp->CmdWaitEvents(commandBuffer, eventCount, pEvents, sourceStageMask, dstStageMask, memoryBarrierCount, pMemoryBarriers,
- bufferMemoryBarrierCount, pBufferMemoryBarriers, imageMemoryBarrierCount, pImageMemoryBarriers);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkCmdPipelineBarrier(VkCommandBuffer commandBuffer, VkPipelineStageFlags srcStageMask,
- VkPipelineStageFlags dstStageMask, VkDependencyFlags dependencyFlags,
- uint32_t memoryBarrierCount, const VkMemoryBarrier *pMemoryBarriers,
- uint32_t bufferMemoryBarrierCount,
- const VkBufferMemoryBarrier *pBufferMemoryBarriers,
- uint32_t imageMemoryBarrierCount,
- const VkImageMemoryBarrier *pImageMemoryBarriers) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(commandBuffer);
-
- disp->CmdPipelineBarrier(commandBuffer, srcStageMask, dstStageMask, dependencyFlags, memoryBarrierCount, pMemoryBarriers,
- bufferMemoryBarrierCount, pBufferMemoryBarriers, imageMemoryBarrierCount, pImageMemoryBarriers);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkCmdBeginQuery(VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t slot,
- VkFlags flags) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(commandBuffer);
-
- disp->CmdBeginQuery(commandBuffer, queryPool, slot, flags);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkCmdEndQuery(VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t slot) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(commandBuffer);
-
- disp->CmdEndQuery(commandBuffer, queryPool, slot);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkCmdResetQueryPool(VkCommandBuffer commandBuffer, VkQueryPool queryPool,
- uint32_t firstQuery, uint32_t queryCount) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(commandBuffer);
-
- disp->CmdResetQueryPool(commandBuffer, queryPool, firstQuery, queryCount);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkCmdWriteTimestamp(VkCommandBuffer commandBuffer, VkPipelineStageFlagBits pipelineStage,
- VkQueryPool queryPool, uint32_t slot) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(commandBuffer);
-
- disp->CmdWriteTimestamp(commandBuffer, pipelineStage, queryPool, slot);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkCmdCopyQueryPoolResults(VkCommandBuffer commandBuffer, VkQueryPool queryPool,
- uint32_t firstQuery, uint32_t queryCount, VkBuffer dstBuffer,
- VkDeviceSize dstOffset, VkDeviceSize stride, VkFlags flags) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(commandBuffer);
-
- disp->CmdCopyQueryPoolResults(commandBuffer, queryPool, firstQuery, queryCount, dstBuffer, dstOffset, stride, flags);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkCmdPushConstants(VkCommandBuffer commandBuffer, VkPipelineLayout layout,
- VkShaderStageFlags stageFlags, uint32_t offset, uint32_t size,
- const void *pValues) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(commandBuffer);
-
- disp->CmdPushConstants(commandBuffer, layout, stageFlags, offset, size, pValues);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkCmdBeginRenderPass(VkCommandBuffer commandBuffer,
- const VkRenderPassBeginInfo *pRenderPassBegin,
- VkSubpassContents contents) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(commandBuffer);
-
- disp->CmdBeginRenderPass(commandBuffer, pRenderPassBegin, contents);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkCmdNextSubpass(VkCommandBuffer commandBuffer, VkSubpassContents contents) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(commandBuffer);
-
- disp->CmdNextSubpass(commandBuffer, contents);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkCmdEndRenderPass(VkCommandBuffer commandBuffer) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(commandBuffer);
-
- disp->CmdEndRenderPass(commandBuffer);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkCmdExecuteCommands(VkCommandBuffer commandBuffer, uint32_t commandBuffersCount,
- const VkCommandBuffer *pCommandBuffers) {
- const VkLayerDispatchTable *disp;
-
- disp = loader_get_dispatch(commandBuffer);
-
- disp->CmdExecuteCommands(commandBuffer, commandBuffersCount, pCommandBuffers);
-}
-
-// ---- Vulkan core 1.1 trampolines
-
-VkResult setupLoaderTrampPhysDevGroups(VkInstance instance) {
- VkResult res = VK_SUCCESS;
- struct loader_instance *inst;
- uint32_t total_count = 0;
- VkPhysicalDeviceGroupPropertiesKHR **new_phys_dev_groups = NULL;
- VkPhysicalDeviceGroupPropertiesKHR *local_phys_dev_groups = NULL;
- PFN_vkEnumeratePhysicalDeviceGroups fpEnumeratePhysicalDeviceGroups = NULL;
-
- inst = loader_get_instance(instance);
- if (NULL == inst) {
- res = VK_ERROR_INITIALIZATION_FAILED;
- goto out;
- }
-
- // Get the function pointer to use to call into the ICD. This could be the core or KHR version
- if (inst->enabled_known_extensions.khr_device_group_creation) {
- fpEnumeratePhysicalDeviceGroups = inst->disp->layer_inst_disp.EnumeratePhysicalDeviceGroupsKHR;
- } else {
- fpEnumeratePhysicalDeviceGroups = inst->disp->layer_inst_disp.EnumeratePhysicalDeviceGroups;
- }
-
- // Setup the trampoline loader physical devices. This will actually
- // call down and setup the terminator loader physical devices during the
- // process.
- VkResult setup_res = setupLoaderTrampPhysDevs(instance);
- if (setup_res != VK_SUCCESS && setup_res != VK_INCOMPLETE) {
- res = setup_res;
- goto out;
- }
-
- // Query how many physical device groups there
- res = fpEnumeratePhysicalDeviceGroups(instance, &total_count, NULL);
- if (res != VK_SUCCESS) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "setupLoaderTrampPhysDevGroups: Failed during dispatch call of "
- "\'EnumeratePhysicalDeviceGroupsKHR\' to lower layers or "
- "loader to get count.");
- goto out;
- }
-
- // Create an array for the new physical device groups, which will be stored
- // in the instance for the trampoline code.
- new_phys_dev_groups = (VkPhysicalDeviceGroupPropertiesKHR **)loader_instance_heap_alloc(
- inst, total_count * sizeof(VkPhysicalDeviceGroupPropertiesKHR *), VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE);
- if (NULL == new_phys_dev_groups) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "setupLoaderTrampPhysDevGroups: Failed to allocate new physical device"
- " group array of size %d",
- total_count);
- res = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
- memset(new_phys_dev_groups, 0, total_count * sizeof(VkPhysicalDeviceGroupPropertiesKHR *));
-
- // Create a temporary array (on the stack) to keep track of the
- // returned VkPhysicalDevice values.
- local_phys_dev_groups = loader_stack_alloc(sizeof(VkPhysicalDeviceGroupPropertiesKHR) * total_count);
- if (NULL == local_phys_dev_groups) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "setupLoaderTrampPhysDevGroups: Failed to allocate local "
- "physical device group array of size %d",
- total_count);
- res = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
- // Initialize the memory to something valid
- memset(local_phys_dev_groups, 0, sizeof(VkPhysicalDeviceGroupPropertiesKHR) * total_count);
- for (uint32_t group = 0; group < total_count; group++) {
- local_phys_dev_groups[group].sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES_KHR;
- local_phys_dev_groups[group].pNext = NULL;
- local_phys_dev_groups[group].subsetAllocation = false;
- }
-
- // Call down and get the content
- fpEnumeratePhysicalDeviceGroups(instance, &total_count, local_phys_dev_groups);
- if (VK_SUCCESS != res) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "setupLoaderTrampPhysDevGroups: Failed during dispatch call of "
- "\'EnumeratePhysicalDeviceGroupsKHR\' to lower layers or "
- "loader to get content.");
- goto out;
- }
-
- // Replace all the physical device IDs with the proper loader values
- for (uint32_t group = 0; group < total_count; group++) {
- for (uint32_t group_gpu = 0; group_gpu < local_phys_dev_groups[group].physicalDeviceCount; group_gpu++) {
- bool found = false;
- for (uint32_t tramp_gpu = 0; tramp_gpu < inst->phys_dev_count_tramp; tramp_gpu++) {
- if (local_phys_dev_groups[group].physicalDevices[group_gpu] == inst->phys_devs_tramp[tramp_gpu]->phys_dev) {
- local_phys_dev_groups[group].physicalDevices[group_gpu] = (VkPhysicalDevice)inst->phys_devs_tramp[tramp_gpu];
- found = true;
- break;
- }
- }
- if (!found) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "setupLoaderTrampPhysDevGroups: Failed to find GPU %d in group %d"
- " returned by \'EnumeratePhysicalDeviceGroupsKHR\' in list returned"
- " by \'EnumeratePhysicalDevices\'", group_gpu, group);
- res = VK_ERROR_INITIALIZATION_FAILED;
- goto out;
- }
- }
- }
-
- // Copy or create everything to fill the new array of physical device groups
- for (uint32_t new_idx = 0; new_idx < total_count; new_idx++) {
- // Check if this physical device group with the same contents is already in the old buffer
- for (uint32_t old_idx = 0; old_idx < inst->phys_dev_group_count_tramp; old_idx++) {
- if (local_phys_dev_groups[new_idx].physicalDeviceCount == inst->phys_dev_groups_tramp[old_idx]->physicalDeviceCount) {
- bool found_all_gpus = true;
- for (uint32_t old_gpu = 0; old_gpu < inst->phys_dev_groups_tramp[old_idx]->physicalDeviceCount; old_gpu++) {
- bool found_gpu = false;
- for (uint32_t new_gpu = 0; new_gpu < local_phys_dev_groups[new_idx].physicalDeviceCount; new_gpu++) {
- if (local_phys_dev_groups[new_idx].physicalDevices[new_gpu] == inst->phys_dev_groups_tramp[old_idx]->physicalDevices[old_gpu]) {
- found_gpu = true;
- break;
- }
- }
-
- if (!found_gpu) {
- found_all_gpus = false;
- break;
- }
- }
- if (!found_all_gpus) {
- continue;
- } else {
- new_phys_dev_groups[new_idx] = inst->phys_dev_groups_tramp[old_idx];
- break;
- }
- }
- }
-
- // If this physical device group isn't in the old buffer, create it
- if (NULL == new_phys_dev_groups[new_idx]) {
- new_phys_dev_groups[new_idx] = (VkPhysicalDeviceGroupPropertiesKHR *)loader_instance_heap_alloc(
- inst, sizeof(VkPhysicalDeviceGroupPropertiesKHR), VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE);
- if (NULL == new_phys_dev_groups[new_idx]) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "setupLoaderTrampPhysDevGroups: Failed to allocate "
- "physical device group trampoline object %d",
- new_idx);
- total_count = new_idx;
- res = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
- memcpy(new_phys_dev_groups[new_idx], &local_phys_dev_groups[new_idx],
- sizeof(VkPhysicalDeviceGroupPropertiesKHR));
- }
- }
-
-out:
-
- if (VK_SUCCESS != res) {
- if (NULL != new_phys_dev_groups) {
- for (uint32_t i = 0; i < total_count; i++) {
- loader_instance_heap_free(inst, new_phys_dev_groups[i]);
- }
- loader_instance_heap_free(inst, new_phys_dev_groups);
- }
- total_count = 0;
- } else {
- // Free everything that didn't carry over to the new array of
- // physical device groups
- if (NULL != inst->phys_dev_groups_tramp) {
- for (uint32_t i = 0; i < inst->phys_dev_group_count_tramp; i++) {
- bool found = false;
- for (uint32_t j = 0; j < total_count; j++) {
- if (inst->phys_dev_groups_tramp[i] == new_phys_dev_groups[j]) {
- found = true;
- break;
- }
- }
- if (!found) {
- loader_instance_heap_free(inst, inst->phys_dev_groups_tramp[i]);
- }
- }
- loader_instance_heap_free(inst, inst->phys_dev_groups_tramp);
- }
-
- // Swap in the new physical device group list
- inst->phys_dev_group_count_tramp = total_count;
- inst->phys_dev_groups_tramp = new_phys_dev_groups;
- }
-
- return res;
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkEnumeratePhysicalDeviceGroups(
- VkInstance instance, uint32_t *pPhysicalDeviceGroupCount,
- VkPhysicalDeviceGroupProperties *pPhysicalDeviceGroupProperties) {
- VkResult res = VK_SUCCESS;
- uint32_t count;
- uint32_t i;
- struct loader_instance *inst = NULL;
-
- loader_platform_thread_lock_mutex(&loader_lock);
-
- inst = loader_get_instance(instance);
- if (NULL == inst) {
- res = VK_ERROR_INITIALIZATION_FAILED;
- goto out;
- }
-
- if (NULL == pPhysicalDeviceGroupCount) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "vkEnumeratePhysicalDeviceGroupsKHR: Received NULL pointer for physical "
- "device group count return value.");
- res = VK_ERROR_INITIALIZATION_FAILED;
- goto out;
- }
-
- VkResult setup_res = setupLoaderTrampPhysDevGroups(instance);
- if (VK_SUCCESS != setup_res) {
- res = setup_res;
- goto out;
- }
-
- count = inst->phys_dev_group_count_tramp;
-
- // Wrap the PhysDev object for loader usage, return wrapped objects
- if (NULL != pPhysicalDeviceGroupProperties) {
- if (inst->phys_dev_group_count_tramp > *pPhysicalDeviceGroupCount) {
- loader_log(inst, VK_DEBUG_REPORT_INFORMATION_BIT_EXT, 0,
- "vkEnumeratePhysicalDeviceGroupsKHR: Trimming device group count down"
- " by application request from %d to %d physical device groups",
- inst->phys_dev_group_count_tramp, *pPhysicalDeviceGroupCount);
- count = *pPhysicalDeviceGroupCount;
- res = VK_INCOMPLETE;
- }
- for (i = 0; i < count; i++) {
- memcpy(&pPhysicalDeviceGroupProperties[i], inst->phys_dev_groups_tramp[i],
- sizeof(VkPhysicalDeviceGroupPropertiesKHR));
- }
- }
-
- *pPhysicalDeviceGroupCount = count;
-
-out:
-
- loader_platform_thread_unlock_mutex(&loader_lock);
- return res;
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceFeatures2(VkPhysicalDevice physicalDevice, VkPhysicalDeviceFeatures2 *pFeatures) {
- VkPhysicalDevice unwrapped_phys_dev = loader_unwrap_physical_device(physicalDevice);
- const VkLayerInstanceDispatchTable *disp = loader_get_instance_layer_dispatch(physicalDevice);
- const struct loader_instance *inst = ((struct loader_physical_device_tramp*) physicalDevice)->this_instance;
-
- if (inst != NULL && inst->enabled_known_extensions.khr_get_physical_device_properties2) {
- disp->GetPhysicalDeviceFeatures2KHR(unwrapped_phys_dev, pFeatures);
- } else {
- disp->GetPhysicalDeviceFeatures2(unwrapped_phys_dev, pFeatures);
- }
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceProperties2(VkPhysicalDevice physicalDevice,
- VkPhysicalDeviceProperties2 *pProperties) {
- VkPhysicalDevice unwrapped_phys_dev = loader_unwrap_physical_device(physicalDevice);
- const VkLayerInstanceDispatchTable *disp = loader_get_instance_layer_dispatch(physicalDevice);
- const struct loader_instance *inst = ((struct loader_physical_device_tramp*) physicalDevice)->this_instance;
-
- if (inst != NULL && inst->enabled_known_extensions.khr_get_physical_device_properties2) {
- disp->GetPhysicalDeviceProperties2KHR(unwrapped_phys_dev, pProperties);
- } else {
- disp->GetPhysicalDeviceProperties2(unwrapped_phys_dev, pProperties);
- }
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceFormatProperties2(VkPhysicalDevice physicalDevice, VkFormat format,
- VkFormatProperties2 *pFormatProperties) {
- VkPhysicalDevice unwrapped_phys_dev = loader_unwrap_physical_device(physicalDevice);
- const VkLayerInstanceDispatchTable *disp = loader_get_instance_layer_dispatch(physicalDevice);
- const struct loader_instance *inst = ((struct loader_physical_device_tramp*) physicalDevice)->this_instance;
-
- if (inst != NULL && inst->enabled_known_extensions.khr_get_physical_device_properties2) {
- disp->GetPhysicalDeviceFormatProperties2KHR(unwrapped_phys_dev, format, pFormatProperties);
- } else {
- disp->GetPhysicalDeviceFormatProperties2(unwrapped_phys_dev, format, pFormatProperties);
- }
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceImageFormatProperties2(
- VkPhysicalDevice physicalDevice, const VkPhysicalDeviceImageFormatInfo2 *pImageFormatInfo,
- VkImageFormatProperties2 *pImageFormatProperties) {
- VkPhysicalDevice unwrapped_phys_dev = loader_unwrap_physical_device(physicalDevice);
- const VkLayerInstanceDispatchTable *disp = loader_get_instance_layer_dispatch(physicalDevice);
- const struct loader_instance *inst = ((struct loader_physical_device_tramp*) physicalDevice)->this_instance;
-
- if (inst != NULL && inst->enabled_known_extensions.khr_get_physical_device_properties2) {
- return disp->GetPhysicalDeviceImageFormatProperties2KHR(unwrapped_phys_dev, pImageFormatInfo, pImageFormatProperties);
- } else {
- return disp->GetPhysicalDeviceImageFormatProperties2(unwrapped_phys_dev, pImageFormatInfo, pImageFormatProperties);
- }
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceQueueFamilyProperties2(VkPhysicalDevice physicalDevice,
- uint32_t *pQueueFamilyPropertyCount,
- VkQueueFamilyProperties2 *pQueueFamilyProperties) {
- VkPhysicalDevice unwrapped_phys_dev = loader_unwrap_physical_device(physicalDevice);
- const VkLayerInstanceDispatchTable *disp = loader_get_instance_layer_dispatch(physicalDevice);
- const struct loader_instance *inst = ((struct loader_physical_device_tramp*) physicalDevice)->this_instance;
-
- if (inst != NULL && inst->enabled_known_extensions.khr_get_physical_device_properties2) {
- disp->GetPhysicalDeviceQueueFamilyProperties2KHR(unwrapped_phys_dev, pQueueFamilyPropertyCount, pQueueFamilyProperties);
- } else {
- disp->GetPhysicalDeviceQueueFamilyProperties2(unwrapped_phys_dev, pQueueFamilyPropertyCount, pQueueFamilyProperties);
- }
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceMemoryProperties2(VkPhysicalDevice physicalDevice,
- VkPhysicalDeviceMemoryProperties2 *pMemoryProperties) {
- VkPhysicalDevice unwrapped_phys_dev = loader_unwrap_physical_device(physicalDevice);
- const VkLayerInstanceDispatchTable *disp = loader_get_instance_layer_dispatch(physicalDevice);
- const struct loader_instance *inst = ((struct loader_physical_device_tramp*) physicalDevice)->this_instance;
-
- if (inst != NULL && inst->enabled_known_extensions.khr_get_physical_device_properties2) {
- disp->GetPhysicalDeviceMemoryProperties2KHR(unwrapped_phys_dev, pMemoryProperties);
- } else {
- disp->GetPhysicalDeviceMemoryProperties2(unwrapped_phys_dev, pMemoryProperties);
- }
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceSparseImageFormatProperties2(
- VkPhysicalDevice physicalDevice, const VkPhysicalDeviceSparseImageFormatInfo2 *pFormatInfo, uint32_t *pPropertyCount,
- VkSparseImageFormatProperties2 *pProperties) {
- VkPhysicalDevice unwrapped_phys_dev = loader_unwrap_physical_device(physicalDevice);
- const VkLayerInstanceDispatchTable *disp = loader_get_instance_layer_dispatch(physicalDevice);
- const struct loader_instance *inst = ((struct loader_physical_device_tramp*) physicalDevice)->this_instance;
-
- if (inst != NULL && inst->enabled_known_extensions.khr_get_physical_device_properties2) {
- disp->GetPhysicalDeviceSparseImageFormatProperties2KHR(unwrapped_phys_dev, pFormatInfo, pPropertyCount, pProperties);
- } else {
- disp->GetPhysicalDeviceSparseImageFormatProperties2(unwrapped_phys_dev, pFormatInfo, pPropertyCount, pProperties);
- }
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceExternalBufferProperties(
- VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalBufferInfo *pExternalBufferInfo,
- VkExternalBufferProperties *pExternalBufferProperties) {
- VkPhysicalDevice unwrapped_phys_dev = loader_unwrap_physical_device(physicalDevice);
- const VkLayerInstanceDispatchTable *disp = loader_get_instance_layer_dispatch(physicalDevice);
- const struct loader_instance *inst = ((struct loader_physical_device_tramp*) physicalDevice)->this_instance;
-
- if (inst != NULL && inst->enabled_known_extensions.khr_external_memory_capabilities){
- disp->GetPhysicalDeviceExternalBufferPropertiesKHR(unwrapped_phys_dev, pExternalBufferInfo, pExternalBufferProperties);
- } else {
- disp->GetPhysicalDeviceExternalBufferProperties(unwrapped_phys_dev, pExternalBufferInfo, pExternalBufferProperties);
- }
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceExternalSemaphoreProperties(
- VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalSemaphoreInfoKHR *pExternalSemaphoreInfo,
- VkExternalSemaphoreProperties *pExternalSemaphoreProperties) {
- VkPhysicalDevice unwrapped_phys_dev = loader_unwrap_physical_device(physicalDevice);
- const VkLayerInstanceDispatchTable *disp = loader_get_instance_layer_dispatch(physicalDevice);
- const struct loader_instance *inst = ((struct loader_physical_device_tramp*) physicalDevice)->this_instance;
-
- if (inst != NULL && inst->enabled_known_extensions.khr_external_semaphore_capabilities) {
- disp->GetPhysicalDeviceExternalSemaphorePropertiesKHR(unwrapped_phys_dev, pExternalSemaphoreInfo, pExternalSemaphoreProperties);
- } else {
- disp->GetPhysicalDeviceExternalSemaphoreProperties(unwrapped_phys_dev, pExternalSemaphoreInfo, pExternalSemaphoreProperties);
- }
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceExternalFenceProperties(
- VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalFenceInfo *pExternalFenceInfo,
- VkExternalFenceProperties *pExternalFenceProperties) {
- VkPhysicalDevice unwrapped_phys_dev = loader_unwrap_physical_device(physicalDevice);
- const VkLayerInstanceDispatchTable *disp = loader_get_instance_layer_dispatch(physicalDevice);
- const struct loader_instance *inst = ((struct loader_physical_device_tramp*) physicalDevice)->this_instance;
-
- if (inst != NULL && inst->enabled_known_extensions.khr_external_fence_capabilities) {
- disp->GetPhysicalDeviceExternalFencePropertiesKHR(unwrapped_phys_dev, pExternalFenceInfo, pExternalFenceProperties);
- } else {
- disp->GetPhysicalDeviceExternalFenceProperties(unwrapped_phys_dev, pExternalFenceInfo, pExternalFenceProperties);
- }
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkBindBufferMemory2(
- VkDevice device,
- uint32_t bindInfoCount,
- const VkBindBufferMemoryInfo* pBindInfos) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->BindBufferMemory2(device, bindInfoCount, pBindInfos);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkBindImageMemory2(
- VkDevice device,
- uint32_t bindInfoCount,
- const VkBindImageMemoryInfo* pBindInfos) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->BindImageMemory2(device, bindInfoCount, pBindInfos);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkGetDeviceGroupPeerMemoryFeatures(
- VkDevice device,
- uint32_t heapIndex,
- uint32_t localDeviceIndex,
- uint32_t remoteDeviceIndex,
- VkPeerMemoryFeatureFlags* pPeerMemoryFeatures) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- disp->GetDeviceGroupPeerMemoryFeatures(device, heapIndex, localDeviceIndex, remoteDeviceIndex, pPeerMemoryFeatures);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkCmdSetDeviceMask(
- VkCommandBuffer commandBuffer,
- uint32_t deviceMask) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdSetDeviceMask(commandBuffer, deviceMask);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkCmdDispatchBase(
- VkCommandBuffer commandBuffer,
- uint32_t baseGroupX,
- uint32_t baseGroupY,
- uint32_t baseGroupZ,
- uint32_t groupCountX,
- uint32_t groupCountY,
- uint32_t groupCountZ) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdDispatchBase(commandBuffer, baseGroupX, baseGroupY, baseGroupZ, groupCountX, groupCountY, groupCountZ);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkGetImageMemoryRequirements2(
- VkDevice device,
- const VkImageMemoryRequirementsInfo2* pInfo,
- VkMemoryRequirements2* pMemoryRequirements) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- disp->GetImageMemoryRequirements2(device, pInfo, pMemoryRequirements);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkGetBufferMemoryRequirements2(
- VkDevice device,
- const VkBufferMemoryRequirementsInfo2* pInfo,
- VkMemoryRequirements2* pMemoryRequirements) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- disp->GetBufferMemoryRequirements2(device, pInfo, pMemoryRequirements);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkGetImageSparseMemoryRequirements2(
- VkDevice device,
- const VkImageSparseMemoryRequirementsInfo2* pInfo,
- uint32_t* pSparseMemoryRequirementCount,
- VkSparseImageMemoryRequirements2* pSparseMemoryRequirements) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- disp->GetImageSparseMemoryRequirements2(device, pInfo, pSparseMemoryRequirementCount, pSparseMemoryRequirements);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkTrimCommandPool(
- VkDevice device,
- VkCommandPool commandPool,
- VkCommandPoolTrimFlags flags) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- disp->TrimCommandPool(device, commandPool, flags);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkGetDeviceQueue2(VkDevice device, const VkDeviceQueueInfo2 *pQueueInfo, VkQueue *pQueue) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- disp->GetDeviceQueue2(device, pQueueInfo, pQueue);
- if (pQueue != NULL && *pQueue != NULL) {
- loader_set_dispatch(*pQueue, disp);
- }
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkCreateSamplerYcbcrConversion(
- VkDevice device,
- const VkSamplerYcbcrConversionCreateInfo* pCreateInfo,
- const VkAllocationCallbacks* pAllocator,
- VkSamplerYcbcrConversion* pYcbcrConversion) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->CreateSamplerYcbcrConversion(device, pCreateInfo, pAllocator, pYcbcrConversion);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkDestroySamplerYcbcrConversion(
- VkDevice device,
- VkSamplerYcbcrConversion ycbcrConversion,
- const VkAllocationCallbacks* pAllocator) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- disp->DestroySamplerYcbcrConversion(device, ycbcrConversion, pAllocator);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkGetDescriptorSetLayoutSupport(
- VkDevice device,
- const VkDescriptorSetLayoutCreateInfo* pCreateInfo,
- VkDescriptorSetLayoutSupport* pSupport) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- disp->GetDescriptorSetLayoutSupport(device, pCreateInfo, pSupport);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL
-vkCreateDescriptorUpdateTemplate(VkDevice device, const VkDescriptorUpdateTemplateCreateInfo *pCreateInfo,
- const VkAllocationCallbacks *pAllocator, VkDescriptorUpdateTemplate *pDescriptorUpdateTemplate) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->CreateDescriptorUpdateTemplate(device, pCreateInfo, pAllocator, pDescriptorUpdateTemplate);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkDestroyDescriptorUpdateTemplate(VkDevice device,
- VkDescriptorUpdateTemplate descriptorUpdateTemplate,
- const VkAllocationCallbacks *pAllocator) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- disp->DestroyDescriptorUpdateTemplate(device, descriptorUpdateTemplate, pAllocator);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkUpdateDescriptorSetWithTemplate(VkDevice device, VkDescriptorSet descriptorSet,
- VkDescriptorUpdateTemplate descriptorUpdateTemplate,
- const void *pData) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- disp->UpdateDescriptorSetWithTemplate(device, descriptorSet, descriptorUpdateTemplate, pData);
-}
-
-// ---- Vulkan core 1.2 trampolines
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkCreateRenderPass2(VkDevice device, const VkRenderPassCreateInfo2* pCreateInfo,
- const VkAllocationCallbacks* pAllocator, VkRenderPass* pRenderPass)
-{
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->CreateRenderPass2(device, pCreateInfo, pAllocator, pRenderPass);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkCmdBeginRenderPass2(VkCommandBuffer commandBuffer,
- const VkRenderPassBeginInfo* pRenderPassBegin,
- const VkSubpassBeginInfo* pSubpassBeginInfo)
-{
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdBeginRenderPass2(commandBuffer, pRenderPassBegin, pSubpassBeginInfo);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkCmdNextSubpass2(VkCommandBuffer commandBuffer,
- const VkSubpassBeginInfo* pSubpassBeginInfo,
- const VkSubpassEndInfo* pSubpassEndInfo)
-{
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdNextSubpass2(commandBuffer, pSubpassBeginInfo, pSubpassEndInfo);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkCmdEndRenderPass2(VkCommandBuffer commandBuffer, const VkSubpassEndInfo* pSubpassEndInfo)
-{
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdEndRenderPass2(commandBuffer, pSubpassEndInfo);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkCmdDrawIndirectCount(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset,
- VkBuffer countBuffer, VkDeviceSize countBufferOffset,
- uint32_t maxDrawCount, uint32_t stride)
-{
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdDrawIndirectCount(commandBuffer, buffer, offset, countBuffer, countBufferOffset, maxDrawCount, stride);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkCmdDrawIndexedIndirectCount(VkCommandBuffer commandBuffer, VkBuffer buffer,
- VkDeviceSize offset, VkBuffer countBuffer,
- VkDeviceSize countBufferOffset, uint32_t maxDrawCount,
- uint32_t stride)
-{
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdDrawIndexedIndirectCount(commandBuffer, buffer, offset, countBuffer, countBufferOffset, maxDrawCount, stride);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkGetSemaphoreCounterValue(VkDevice device, VkSemaphore semaphore, uint64_t* pValue)
-{
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->GetSemaphoreCounterValue(device, semaphore, pValue);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkWaitSemaphores(VkDevice device, const VkSemaphoreWaitInfo* pWaitInfo,
- uint64_t timeout)
-{
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->WaitSemaphores(device, pWaitInfo, timeout);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkSignalSemaphore(VkDevice device, const VkSemaphoreSignalInfo* pSignalInfo)
-{
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->SignalSemaphore(device, pSignalInfo);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkDeviceAddress VKAPI_CALL vkGetBufferDeviceAddress(VkDevice device,
- const VkBufferDeviceAddressInfo* pInfo)
-{
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->GetBufferDeviceAddress(device, pInfo);
-}
-
-LOADER_EXPORT VKAPI_ATTR uint64_t VKAPI_CALL vkGetBufferOpaqueCaptureAddress(VkDevice device,
- const VkBufferDeviceAddressInfo* pInfo)
-{
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->GetBufferOpaqueCaptureAddress(device, pInfo);
-}
-
-LOADER_EXPORT VKAPI_ATTR uint64_t VKAPI_CALL vkGetDeviceMemoryOpaqueCaptureAddress(VkDevice device,
- const VkDeviceMemoryOpaqueCaptureAddressInfo* pInfo)
-{
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->GetDeviceMemoryOpaqueCaptureAddress(device, pInfo);
-}
-
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkResetQueryPool(VkDevice device, VkQueryPool queryPool, uint32_t firstQuery,
- uint32_t queryCount)
-{
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- disp->ResetQueryPool(device, queryPool, firstQuery, queryCount);
-}
diff --git a/thirdparty/vulkan/loader/unknown_ext_chain.c b/thirdparty/vulkan/loader/unknown_ext_chain.c
deleted file mode 100644
index 1c8560dd61..0000000000
--- a/thirdparty/vulkan/loader/unknown_ext_chain.c
+++ /dev/null
@@ -1,819 +0,0 @@
-/*
- * Copyright (c) 2017 The Khronos Group Inc.
- * Copyright (c) 2017 Valve Corporation
- * Copyright (c) 2017 LunarG, Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * Author Jon Ashburn <jon@lunarg.com>
- * Author: Lenny Komow <lenny@lunarg.com>
- */
-
- // This code is used to pass on physical device extensions through the call chain. It must do this without creating a stack frame,
- // because the actual parameters of the call are not known. Since the first parameter is known to be a VkPhysicalDevice, it can
-// unwrap the physical device, overwriting the wrapped device, and then jump to the next function in the call chain. This code
-// attempts to accomplish this by relying on tail-call optimizations, but there is no guarantee that this will work. As a result,
-// this code is only compiled on systems where an assembly alternative has not been written.
-
- #include "vk_loader_platform.h"
- #include "loader.h"
-
- #if defined(__GNUC__) && !defined(__clang__)
- #pragma GCC optimize(3) // force gcc to use tail-calls
- #endif
-
- // Trampoline function macro for unknown physical device extension command.
- #define PhysDevExtTramp(num) \
- VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp##num(VkPhysicalDevice physical_device) { \
- const struct loader_instance_dispatch_table *disp; \
- disp = loader_get_instance_dispatch(physical_device); \
- disp->phys_dev_ext[num](loader_unwrap_physical_device(physical_device)); \
- }
-
-// Terminator function macro for unknown physical device extension command.
-#define PhysDevExtTermin(num) \
- VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin##num(VkPhysicalDevice physical_device) { \
- struct loader_physical_device_term *phys_dev_term = (struct loader_physical_device_term *)physical_device; \
- struct loader_icd_term *icd_term = phys_dev_term->this_icd_term; \
- struct loader_instance *inst = (struct loader_instance *)icd_term->this_instance; \
- if (NULL == icd_term->phys_dev_ext[num]) { \
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0, "Extension %s not supported for this physical device", \
- inst->phys_dev_ext_disp_hash[num].func_name); \
- } \
- icd_term->phys_dev_ext[num](phys_dev_term->phys_dev); \
- }
-
-// Trampoline function macro for unknown physical device extension command.
-#define DevExtTramp(num) \
- VKAPI_ATTR void VKAPI_CALL vkdev_ext##num(VkDevice device) { \
- const struct loader_dev_dispatch_table *disp; \
- disp = loader_get_dev_dispatch(device); \
- disp->ext_dispatch.dev_ext[num](device); \
- }
-
-
-// Instantiations of the trampoline
-PhysDevExtTramp(0)
-PhysDevExtTramp(1)
-PhysDevExtTramp(2)
-PhysDevExtTramp(3)
-PhysDevExtTramp(4)
-PhysDevExtTramp(5)
-PhysDevExtTramp(6)
-PhysDevExtTramp(7)
-PhysDevExtTramp(8)
-PhysDevExtTramp(9)
-PhysDevExtTramp(10)
-PhysDevExtTramp(11)
-PhysDevExtTramp(12)
-PhysDevExtTramp(13)
-PhysDevExtTramp(14)
-PhysDevExtTramp(15)
-PhysDevExtTramp(16)
-PhysDevExtTramp(17)
-PhysDevExtTramp(18)
-PhysDevExtTramp(19)
-PhysDevExtTramp(20)
-PhysDevExtTramp(21)
-PhysDevExtTramp(22)
-PhysDevExtTramp(23)
-PhysDevExtTramp(24)
-PhysDevExtTramp(25)
-PhysDevExtTramp(26)
-PhysDevExtTramp(27)
-PhysDevExtTramp(28)
-PhysDevExtTramp(29)
-PhysDevExtTramp(30)
-PhysDevExtTramp(31)
-PhysDevExtTramp(32)
-PhysDevExtTramp(33)
-PhysDevExtTramp(34)
-PhysDevExtTramp(35)
-PhysDevExtTramp(36)
-PhysDevExtTramp(37)
-PhysDevExtTramp(38)
-PhysDevExtTramp(39)
-PhysDevExtTramp(40)
-PhysDevExtTramp(41)
-PhysDevExtTramp(42)
-PhysDevExtTramp(43)
-PhysDevExtTramp(44)
-PhysDevExtTramp(45)
-PhysDevExtTramp(46)
-PhysDevExtTramp(47)
-PhysDevExtTramp(48)
-PhysDevExtTramp(49)
-PhysDevExtTramp(50)
-PhysDevExtTramp(51)
-PhysDevExtTramp(52)
-PhysDevExtTramp(53)
-PhysDevExtTramp(54)
-PhysDevExtTramp(55)
-PhysDevExtTramp(56)
-PhysDevExtTramp(57)
-PhysDevExtTramp(58)
-PhysDevExtTramp(59)
-PhysDevExtTramp(60)
-PhysDevExtTramp(61)
-PhysDevExtTramp(62)
-PhysDevExtTramp(63)
-PhysDevExtTramp(64)
-PhysDevExtTramp(65)
-PhysDevExtTramp(66)
-PhysDevExtTramp(67)
-PhysDevExtTramp(68)
-PhysDevExtTramp(69)
-PhysDevExtTramp(70)
-PhysDevExtTramp(71)
-PhysDevExtTramp(72)
-PhysDevExtTramp(73)
-PhysDevExtTramp(74)
-PhysDevExtTramp(75)
-PhysDevExtTramp(76)
-PhysDevExtTramp(77)
-PhysDevExtTramp(78)
-PhysDevExtTramp(79)
-PhysDevExtTramp(80)
-PhysDevExtTramp(81)
-PhysDevExtTramp(82)
-PhysDevExtTramp(83)
-PhysDevExtTramp(84)
-PhysDevExtTramp(85)
-PhysDevExtTramp(86)
-PhysDevExtTramp(87)
-PhysDevExtTramp(88)
-PhysDevExtTramp(89)
-PhysDevExtTramp(90)
-PhysDevExtTramp(91)
-PhysDevExtTramp(92)
-PhysDevExtTramp(93)
-PhysDevExtTramp(94)
-PhysDevExtTramp(95)
-PhysDevExtTramp(96)
-PhysDevExtTramp(97)
-PhysDevExtTramp(98)
-PhysDevExtTramp(99)
-PhysDevExtTramp(100)
-PhysDevExtTramp(101)
-PhysDevExtTramp(102)
-PhysDevExtTramp(103)
-PhysDevExtTramp(104)
-PhysDevExtTramp(105)
-PhysDevExtTramp(106)
-PhysDevExtTramp(107)
-PhysDevExtTramp(108)
-PhysDevExtTramp(109)
-PhysDevExtTramp(110)
-PhysDevExtTramp(111)
-PhysDevExtTramp(112)
-PhysDevExtTramp(113)
-PhysDevExtTramp(114)
-PhysDevExtTramp(115)
-PhysDevExtTramp(116)
-PhysDevExtTramp(117)
-PhysDevExtTramp(118)
-PhysDevExtTramp(119)
-PhysDevExtTramp(120)
-PhysDevExtTramp(121)
-PhysDevExtTramp(122)
-PhysDevExtTramp(123)
-PhysDevExtTramp(124)
-PhysDevExtTramp(125)
-PhysDevExtTramp(126)
-PhysDevExtTramp(127)
-PhysDevExtTramp(128)
-PhysDevExtTramp(129)
-PhysDevExtTramp(130)
-PhysDevExtTramp(131)
-PhysDevExtTramp(132)
-PhysDevExtTramp(133)
-PhysDevExtTramp(134)
-PhysDevExtTramp(135)
-PhysDevExtTramp(136)
-PhysDevExtTramp(137)
-PhysDevExtTramp(138)
-PhysDevExtTramp(139)
-PhysDevExtTramp(140)
-PhysDevExtTramp(141)
-PhysDevExtTramp(142)
-PhysDevExtTramp(143)
-PhysDevExtTramp(144)
-PhysDevExtTramp(145)
-PhysDevExtTramp(146)
-PhysDevExtTramp(147)
-PhysDevExtTramp(148)
-PhysDevExtTramp(149)
-PhysDevExtTramp(150)
-PhysDevExtTramp(151)
-PhysDevExtTramp(152)
-PhysDevExtTramp(153)
-PhysDevExtTramp(154)
-PhysDevExtTramp(155)
-PhysDevExtTramp(156)
-PhysDevExtTramp(157)
-PhysDevExtTramp(158)
-PhysDevExtTramp(159)
-PhysDevExtTramp(160)
-PhysDevExtTramp(161)
-PhysDevExtTramp(162)
-PhysDevExtTramp(163)
-PhysDevExtTramp(164)
-PhysDevExtTramp(165)
-PhysDevExtTramp(166)
-PhysDevExtTramp(167)
-PhysDevExtTramp(168)
-PhysDevExtTramp(169)
-PhysDevExtTramp(170)
-PhysDevExtTramp(171)
-PhysDevExtTramp(172)
-PhysDevExtTramp(173)
-PhysDevExtTramp(174)
-PhysDevExtTramp(175)
-PhysDevExtTramp(176)
-PhysDevExtTramp(177)
-PhysDevExtTramp(178)
-PhysDevExtTramp(179)
-PhysDevExtTramp(180)
-PhysDevExtTramp(181)
-PhysDevExtTramp(182)
-PhysDevExtTramp(183)
-PhysDevExtTramp(184)
-PhysDevExtTramp(185)
-PhysDevExtTramp(186)
-PhysDevExtTramp(187)
-PhysDevExtTramp(188)
-PhysDevExtTramp(189)
-PhysDevExtTramp(190)
-PhysDevExtTramp(191)
-PhysDevExtTramp(192)
-PhysDevExtTramp(193)
-PhysDevExtTramp(194)
-PhysDevExtTramp(195)
-PhysDevExtTramp(196)
-PhysDevExtTramp(197)
-PhysDevExtTramp(198)
-PhysDevExtTramp(199)
-PhysDevExtTramp(200)
-PhysDevExtTramp(201)
-PhysDevExtTramp(202)
-PhysDevExtTramp(203)
-PhysDevExtTramp(204)
-PhysDevExtTramp(205)
-PhysDevExtTramp(206)
-PhysDevExtTramp(207)
-PhysDevExtTramp(208)
-PhysDevExtTramp(209)
-PhysDevExtTramp(210)
-PhysDevExtTramp(211)
-PhysDevExtTramp(212)
-PhysDevExtTramp(213)
-PhysDevExtTramp(214)
-PhysDevExtTramp(215)
-PhysDevExtTramp(216)
-PhysDevExtTramp(217)
-PhysDevExtTramp(218)
-PhysDevExtTramp(219)
-PhysDevExtTramp(220)
-PhysDevExtTramp(221)
-PhysDevExtTramp(222)
-PhysDevExtTramp(223)
-PhysDevExtTramp(224)
-PhysDevExtTramp(225)
-PhysDevExtTramp(226)
-PhysDevExtTramp(227)
-PhysDevExtTramp(228)
-PhysDevExtTramp(229)
-PhysDevExtTramp(230)
-PhysDevExtTramp(231)
-PhysDevExtTramp(232)
-PhysDevExtTramp(233)
-PhysDevExtTramp(234)
-PhysDevExtTramp(235)
-PhysDevExtTramp(236)
-PhysDevExtTramp(237)
-PhysDevExtTramp(238)
-PhysDevExtTramp(239)
-PhysDevExtTramp(240)
-PhysDevExtTramp(241)
-PhysDevExtTramp(242)
-PhysDevExtTramp(243)
-PhysDevExtTramp(244)
-PhysDevExtTramp(245)
-PhysDevExtTramp(246)
-PhysDevExtTramp(247)
-PhysDevExtTramp(248)
-PhysDevExtTramp(249)
-
-// Instantiations of the terminator
-PhysDevExtTermin(0)
-PhysDevExtTermin(1)
-PhysDevExtTermin(2)
-PhysDevExtTermin(3)
-PhysDevExtTermin(4)
-PhysDevExtTermin(5)
-PhysDevExtTermin(6)
-PhysDevExtTermin(7)
-PhysDevExtTermin(8)
-PhysDevExtTermin(9)
-PhysDevExtTermin(10)
-PhysDevExtTermin(11)
-PhysDevExtTermin(12)
-PhysDevExtTermin(13)
-PhysDevExtTermin(14)
-PhysDevExtTermin(15)
-PhysDevExtTermin(16)
-PhysDevExtTermin(17)
-PhysDevExtTermin(18)
-PhysDevExtTermin(19)
-PhysDevExtTermin(20)
-PhysDevExtTermin(21)
-PhysDevExtTermin(22)
-PhysDevExtTermin(23)
-PhysDevExtTermin(24)
-PhysDevExtTermin(25)
-PhysDevExtTermin(26)
-PhysDevExtTermin(27)
-PhysDevExtTermin(28)
-PhysDevExtTermin(29)
-PhysDevExtTermin(30)
-PhysDevExtTermin(31)
-PhysDevExtTermin(32)
-PhysDevExtTermin(33)
-PhysDevExtTermin(34)
-PhysDevExtTermin(35)
-PhysDevExtTermin(36)
-PhysDevExtTermin(37)
-PhysDevExtTermin(38)
-PhysDevExtTermin(39)
-PhysDevExtTermin(40)
-PhysDevExtTermin(41)
-PhysDevExtTermin(42)
-PhysDevExtTermin(43)
-PhysDevExtTermin(44)
-PhysDevExtTermin(45)
-PhysDevExtTermin(46)
-PhysDevExtTermin(47)
-PhysDevExtTermin(48)
-PhysDevExtTermin(49)
-PhysDevExtTermin(50)
-PhysDevExtTermin(51)
-PhysDevExtTermin(52)
-PhysDevExtTermin(53)
-PhysDevExtTermin(54)
-PhysDevExtTermin(55)
-PhysDevExtTermin(56)
-PhysDevExtTermin(57)
-PhysDevExtTermin(58)
-PhysDevExtTermin(59)
-PhysDevExtTermin(60)
-PhysDevExtTermin(61)
-PhysDevExtTermin(62)
-PhysDevExtTermin(63)
-PhysDevExtTermin(64)
-PhysDevExtTermin(65)
-PhysDevExtTermin(66)
-PhysDevExtTermin(67)
-PhysDevExtTermin(68)
-PhysDevExtTermin(69)
-PhysDevExtTermin(70)
-PhysDevExtTermin(71)
-PhysDevExtTermin(72)
-PhysDevExtTermin(73)
-PhysDevExtTermin(74)
-PhysDevExtTermin(75)
-PhysDevExtTermin(76)
-PhysDevExtTermin(77)
-PhysDevExtTermin(78)
-PhysDevExtTermin(79)
-PhysDevExtTermin(80)
-PhysDevExtTermin(81)
-PhysDevExtTermin(82)
-PhysDevExtTermin(83)
-PhysDevExtTermin(84)
-PhysDevExtTermin(85)
-PhysDevExtTermin(86)
-PhysDevExtTermin(87)
-PhysDevExtTermin(88)
-PhysDevExtTermin(89)
-PhysDevExtTermin(90)
-PhysDevExtTermin(91)
-PhysDevExtTermin(92)
-PhysDevExtTermin(93)
-PhysDevExtTermin(94)
-PhysDevExtTermin(95)
-PhysDevExtTermin(96)
-PhysDevExtTermin(97)
-PhysDevExtTermin(98)
-PhysDevExtTermin(99)
-PhysDevExtTermin(100)
-PhysDevExtTermin(101)
-PhysDevExtTermin(102)
-PhysDevExtTermin(103)
-PhysDevExtTermin(104)
-PhysDevExtTermin(105)
-PhysDevExtTermin(106)
-PhysDevExtTermin(107)
-PhysDevExtTermin(108)
-PhysDevExtTermin(109)
-PhysDevExtTermin(110)
-PhysDevExtTermin(111)
-PhysDevExtTermin(112)
-PhysDevExtTermin(113)
-PhysDevExtTermin(114)
-PhysDevExtTermin(115)
-PhysDevExtTermin(116)
-PhysDevExtTermin(117)
-PhysDevExtTermin(118)
-PhysDevExtTermin(119)
-PhysDevExtTermin(120)
-PhysDevExtTermin(121)
-PhysDevExtTermin(122)
-PhysDevExtTermin(123)
-PhysDevExtTermin(124)
-PhysDevExtTermin(125)
-PhysDevExtTermin(126)
-PhysDevExtTermin(127)
-PhysDevExtTermin(128)
-PhysDevExtTermin(129)
-PhysDevExtTermin(130)
-PhysDevExtTermin(131)
-PhysDevExtTermin(132)
-PhysDevExtTermin(133)
-PhysDevExtTermin(134)
-PhysDevExtTermin(135)
-PhysDevExtTermin(136)
-PhysDevExtTermin(137)
-PhysDevExtTermin(138)
-PhysDevExtTermin(139)
-PhysDevExtTermin(140)
-PhysDevExtTermin(141)
-PhysDevExtTermin(142)
-PhysDevExtTermin(143)
-PhysDevExtTermin(144)
-PhysDevExtTermin(145)
-PhysDevExtTermin(146)
-PhysDevExtTermin(147)
-PhysDevExtTermin(148)
-PhysDevExtTermin(149)
-PhysDevExtTermin(150)
-PhysDevExtTermin(151)
-PhysDevExtTermin(152)
-PhysDevExtTermin(153)
-PhysDevExtTermin(154)
-PhysDevExtTermin(155)
-PhysDevExtTermin(156)
-PhysDevExtTermin(157)
-PhysDevExtTermin(158)
-PhysDevExtTermin(159)
-PhysDevExtTermin(160)
-PhysDevExtTermin(161)
-PhysDevExtTermin(162)
-PhysDevExtTermin(163)
-PhysDevExtTermin(164)
-PhysDevExtTermin(165)
-PhysDevExtTermin(166)
-PhysDevExtTermin(167)
-PhysDevExtTermin(168)
-PhysDevExtTermin(169)
-PhysDevExtTermin(170)
-PhysDevExtTermin(171)
-PhysDevExtTermin(172)
-PhysDevExtTermin(173)
-PhysDevExtTermin(174)
-PhysDevExtTermin(175)
-PhysDevExtTermin(176)
-PhysDevExtTermin(177)
-PhysDevExtTermin(178)
-PhysDevExtTermin(179)
-PhysDevExtTermin(180)
-PhysDevExtTermin(181)
-PhysDevExtTermin(182)
-PhysDevExtTermin(183)
-PhysDevExtTermin(184)
-PhysDevExtTermin(185)
-PhysDevExtTermin(186)
-PhysDevExtTermin(187)
-PhysDevExtTermin(188)
-PhysDevExtTermin(189)
-PhysDevExtTermin(190)
-PhysDevExtTermin(191)
-PhysDevExtTermin(192)
-PhysDevExtTermin(193)
-PhysDevExtTermin(194)
-PhysDevExtTermin(195)
-PhysDevExtTermin(196)
-PhysDevExtTermin(197)
-PhysDevExtTermin(198)
-PhysDevExtTermin(199)
-PhysDevExtTermin(200)
-PhysDevExtTermin(201)
-PhysDevExtTermin(202)
-PhysDevExtTermin(203)
-PhysDevExtTermin(204)
-PhysDevExtTermin(205)
-PhysDevExtTermin(206)
-PhysDevExtTermin(207)
-PhysDevExtTermin(208)
-PhysDevExtTermin(209)
-PhysDevExtTermin(210)
-PhysDevExtTermin(211)
-PhysDevExtTermin(212)
-PhysDevExtTermin(213)
-PhysDevExtTermin(214)
-PhysDevExtTermin(215)
-PhysDevExtTermin(216)
-PhysDevExtTermin(217)
-PhysDevExtTermin(218)
-PhysDevExtTermin(219)
-PhysDevExtTermin(220)
-PhysDevExtTermin(221)
-PhysDevExtTermin(222)
-PhysDevExtTermin(223)
-PhysDevExtTermin(224)
-PhysDevExtTermin(225)
-PhysDevExtTermin(226)
-PhysDevExtTermin(227)
-PhysDevExtTermin(228)
-PhysDevExtTermin(229)
-PhysDevExtTermin(230)
-PhysDevExtTermin(231)
-PhysDevExtTermin(232)
-PhysDevExtTermin(233)
-PhysDevExtTermin(234)
-PhysDevExtTermin(235)
-PhysDevExtTermin(236)
-PhysDevExtTermin(237)
-PhysDevExtTermin(238)
-PhysDevExtTermin(239)
-PhysDevExtTermin(240)
-PhysDevExtTermin(241)
-PhysDevExtTermin(242)
-PhysDevExtTermin(243)
-PhysDevExtTermin(244)
-PhysDevExtTermin(245)
-PhysDevExtTermin(246)
-PhysDevExtTermin(247)
-PhysDevExtTermin(248)
-PhysDevExtTermin(249)
-
-// Instantiations of the device trampoline
-DevExtTramp(0)
-DevExtTramp(1)
-DevExtTramp(2)
-DevExtTramp(3)
-DevExtTramp(4)
-DevExtTramp(5)
-DevExtTramp(6)
-DevExtTramp(7)
-DevExtTramp(8)
-DevExtTramp(9)
-DevExtTramp(10)
-DevExtTramp(11)
-DevExtTramp(12)
-DevExtTramp(13)
-DevExtTramp(14)
-DevExtTramp(15)
-DevExtTramp(16)
-DevExtTramp(17)
-DevExtTramp(18)
-DevExtTramp(19)
-DevExtTramp(20)
-DevExtTramp(21)
-DevExtTramp(22)
-DevExtTramp(23)
-DevExtTramp(24)
-DevExtTramp(25)
-DevExtTramp(26)
-DevExtTramp(27)
-DevExtTramp(28)
-DevExtTramp(29)
-DevExtTramp(30)
-DevExtTramp(31)
-DevExtTramp(32)
-DevExtTramp(33)
-DevExtTramp(34)
-DevExtTramp(35)
-DevExtTramp(36)
-DevExtTramp(37)
-DevExtTramp(38)
-DevExtTramp(39)
-DevExtTramp(40)
-DevExtTramp(41)
-DevExtTramp(42)
-DevExtTramp(43)
-DevExtTramp(44)
-DevExtTramp(45)
-DevExtTramp(46)
-DevExtTramp(47)
-DevExtTramp(48)
-DevExtTramp(49)
-DevExtTramp(50)
-DevExtTramp(51)
-DevExtTramp(52)
-DevExtTramp(53)
-DevExtTramp(54)
-DevExtTramp(55)
-DevExtTramp(56)
-DevExtTramp(57)
-DevExtTramp(58)
-DevExtTramp(59)
-DevExtTramp(60)
-DevExtTramp(61)
-DevExtTramp(62)
-DevExtTramp(63)
-DevExtTramp(64)
-DevExtTramp(65)
-DevExtTramp(66)
-DevExtTramp(67)
-DevExtTramp(68)
-DevExtTramp(69)
-DevExtTramp(70)
-DevExtTramp(71)
-DevExtTramp(72)
-DevExtTramp(73)
-DevExtTramp(74)
-DevExtTramp(75)
-DevExtTramp(76)
-DevExtTramp(77)
-DevExtTramp(78)
-DevExtTramp(79)
-DevExtTramp(80)
-DevExtTramp(81)
-DevExtTramp(82)
-DevExtTramp(83)
-DevExtTramp(84)
-DevExtTramp(85)
-DevExtTramp(86)
-DevExtTramp(87)
-DevExtTramp(88)
-DevExtTramp(89)
-DevExtTramp(90)
-DevExtTramp(91)
-DevExtTramp(92)
-DevExtTramp(93)
-DevExtTramp(94)
-DevExtTramp(95)
-DevExtTramp(96)
-DevExtTramp(97)
-DevExtTramp(98)
-DevExtTramp(99)
-DevExtTramp(100)
-DevExtTramp(101)
-DevExtTramp(102)
-DevExtTramp(103)
-DevExtTramp(104)
-DevExtTramp(105)
-DevExtTramp(106)
-DevExtTramp(107)
-DevExtTramp(108)
-DevExtTramp(109)
-DevExtTramp(110)
-DevExtTramp(111)
-DevExtTramp(112)
-DevExtTramp(113)
-DevExtTramp(114)
-DevExtTramp(115)
-DevExtTramp(116)
-DevExtTramp(117)
-DevExtTramp(118)
-DevExtTramp(119)
-DevExtTramp(120)
-DevExtTramp(121)
-DevExtTramp(122)
-DevExtTramp(123)
-DevExtTramp(124)
-DevExtTramp(125)
-DevExtTramp(126)
-DevExtTramp(127)
-DevExtTramp(128)
-DevExtTramp(129)
-DevExtTramp(130)
-DevExtTramp(131)
-DevExtTramp(132)
-DevExtTramp(133)
-DevExtTramp(134)
-DevExtTramp(135)
-DevExtTramp(136)
-DevExtTramp(137)
-DevExtTramp(138)
-DevExtTramp(139)
-DevExtTramp(140)
-DevExtTramp(141)
-DevExtTramp(142)
-DevExtTramp(143)
-DevExtTramp(144)
-DevExtTramp(145)
-DevExtTramp(146)
-DevExtTramp(147)
-DevExtTramp(148)
-DevExtTramp(149)
-DevExtTramp(150)
-DevExtTramp(151)
-DevExtTramp(152)
-DevExtTramp(153)
-DevExtTramp(154)
-DevExtTramp(155)
-DevExtTramp(156)
-DevExtTramp(157)
-DevExtTramp(158)
-DevExtTramp(159)
-DevExtTramp(160)
-DevExtTramp(161)
-DevExtTramp(162)
-DevExtTramp(163)
-DevExtTramp(164)
-DevExtTramp(165)
-DevExtTramp(166)
-DevExtTramp(167)
-DevExtTramp(168)
-DevExtTramp(169)
-DevExtTramp(170)
-DevExtTramp(171)
-DevExtTramp(172)
-DevExtTramp(173)
-DevExtTramp(174)
-DevExtTramp(175)
-DevExtTramp(176)
-DevExtTramp(177)
-DevExtTramp(178)
-DevExtTramp(179)
-DevExtTramp(180)
-DevExtTramp(181)
-DevExtTramp(182)
-DevExtTramp(183)
-DevExtTramp(184)
-DevExtTramp(185)
-DevExtTramp(186)
-DevExtTramp(187)
-DevExtTramp(188)
-DevExtTramp(189)
-DevExtTramp(190)
-DevExtTramp(191)
-DevExtTramp(192)
-DevExtTramp(193)
-DevExtTramp(194)
-DevExtTramp(195)
-DevExtTramp(196)
-DevExtTramp(197)
-DevExtTramp(198)
-DevExtTramp(199)
-DevExtTramp(200)
-DevExtTramp(201)
-DevExtTramp(202)
-DevExtTramp(203)
-DevExtTramp(204)
-DevExtTramp(205)
-DevExtTramp(206)
-DevExtTramp(207)
-DevExtTramp(208)
-DevExtTramp(209)
-DevExtTramp(210)
-DevExtTramp(211)
-DevExtTramp(212)
-DevExtTramp(213)
-DevExtTramp(214)
-DevExtTramp(215)
-DevExtTramp(216)
-DevExtTramp(217)
-DevExtTramp(218)
-DevExtTramp(219)
-DevExtTramp(220)
-DevExtTramp(221)
-DevExtTramp(222)
-DevExtTramp(223)
-DevExtTramp(224)
-DevExtTramp(225)
-DevExtTramp(226)
-DevExtTramp(227)
-DevExtTramp(228)
-DevExtTramp(229)
-DevExtTramp(230)
-DevExtTramp(231)
-DevExtTramp(232)
-DevExtTramp(233)
-DevExtTramp(234)
-DevExtTramp(235)
-DevExtTramp(236)
-DevExtTramp(237)
-DevExtTramp(238)
-DevExtTramp(239)
-DevExtTramp(240)
-DevExtTramp(241)
-DevExtTramp(242)
-DevExtTramp(243)
-DevExtTramp(244)
-DevExtTramp(245)
-DevExtTramp(246)
-DevExtTramp(247)
-DevExtTramp(248)
-DevExtTramp(249)
diff --git a/thirdparty/vulkan/loader/vk_dispatch_table_helper.h b/thirdparty/vulkan/loader/vk_dispatch_table_helper.h
deleted file mode 100644
index 0eabfdb79c..0000000000
--- a/thirdparty/vulkan/loader/vk_dispatch_table_helper.h
+++ /dev/null
@@ -1,951 +0,0 @@
-#pragma once
-// *** THIS FILE IS GENERATED - DO NOT EDIT ***
-// See dispatch_helper_generator.py for modifications
-
-/*
- * Copyright (c) 2015-2017 The Khronos Group Inc.
- * Copyright (c) 2015-2017 Valve Corporation
- * Copyright (c) 2015-2017 LunarG, Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * Author: Courtney Goeltzenleuchter <courtney@LunarG.com>
- * Author: Jon Ashburn <jon@lunarg.com>
- * Author: Mark Lobodzinski <mark@lunarg.com>
- */
-
-#include <vulkan/vulkan.h>
-#include <vulkan/vk_layer.h>
-#include <string.h>
-#include "vk_layer_dispatch_table.h"
-
-static VKAPI_ATTR VkResult VKAPI_CALL StubCreateSwapchainKHR(VkDevice device, const VkSwapchainCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSwapchainKHR* pSwapchain) { return VK_SUCCESS; };
-static VKAPI_ATTR void VKAPI_CALL StubDestroySwapchainKHR(VkDevice device, VkSwapchainKHR swapchain, const VkAllocationCallbacks* pAllocator) { };
-static VKAPI_ATTR VkResult VKAPI_CALL StubGetSwapchainImagesKHR(VkDevice device, VkSwapchainKHR swapchain, uint32_t* pSwapchainImageCount, VkImage* pSwapchainImages) { return VK_SUCCESS; };
-static VKAPI_ATTR VkResult VKAPI_CALL StubAcquireNextImageKHR(VkDevice device, VkSwapchainKHR swapchain, uint64_t timeout, VkSemaphore semaphore, VkFence fence, uint32_t* pImageIndex) { return VK_SUCCESS; };
-static VKAPI_ATTR VkResult VKAPI_CALL StubQueuePresentKHR(VkQueue queue, const VkPresentInfoKHR* pPresentInfo) { return VK_SUCCESS; };
-static VKAPI_ATTR VkResult VKAPI_CALL StubGetDeviceGroupPresentCapabilitiesKHR(VkDevice device, VkDeviceGroupPresentCapabilitiesKHR* pDeviceGroupPresentCapabilities) { return VK_SUCCESS; };
-static VKAPI_ATTR VkResult VKAPI_CALL StubGetDeviceGroupSurfacePresentModesKHR(VkDevice device, VkSurfaceKHR surface, VkDeviceGroupPresentModeFlagsKHR* pModes) { return VK_SUCCESS; };
-static VKAPI_ATTR VkResult VKAPI_CALL StubAcquireNextImage2KHR(VkDevice device, const VkAcquireNextImageInfoKHR* pAcquireInfo, uint32_t* pImageIndex) { return VK_SUCCESS; };
-static VKAPI_ATTR VkResult VKAPI_CALL StubCreateSharedSwapchainsKHR(VkDevice device, uint32_t swapchainCount, const VkSwapchainCreateInfoKHR* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkSwapchainKHR* pSwapchains) { return VK_SUCCESS; };
-static VKAPI_ATTR void VKAPI_CALL StubGetDeviceGroupPeerMemoryFeaturesKHR(VkDevice device, uint32_t heapIndex, uint32_t localDeviceIndex, uint32_t remoteDeviceIndex, VkPeerMemoryFeatureFlags* pPeerMemoryFeatures) { };
-static VKAPI_ATTR void VKAPI_CALL StubCmdSetDeviceMaskKHR(VkCommandBuffer commandBuffer, uint32_t deviceMask) { };
-static VKAPI_ATTR void VKAPI_CALL StubCmdDispatchBaseKHR(VkCommandBuffer commandBuffer, uint32_t baseGroupX, uint32_t baseGroupY, uint32_t baseGroupZ, uint32_t groupCountX, uint32_t groupCountY, uint32_t groupCountZ) { };
-static VKAPI_ATTR void VKAPI_CALL StubTrimCommandPoolKHR(VkDevice device, VkCommandPool commandPool, VkCommandPoolTrimFlags flags) { };
-#ifdef VK_USE_PLATFORM_WIN32_KHR
-static VKAPI_ATTR VkResult VKAPI_CALL StubGetMemoryWin32HandleKHR(VkDevice device, const VkMemoryGetWin32HandleInfoKHR* pGetWin32HandleInfo, HANDLE* pHandle) { return VK_SUCCESS; };
-#endif // VK_USE_PLATFORM_WIN32_KHR
-#ifdef VK_USE_PLATFORM_WIN32_KHR
-static VKAPI_ATTR VkResult VKAPI_CALL StubGetMemoryWin32HandlePropertiesKHR(VkDevice device, VkExternalMemoryHandleTypeFlagBits handleType, HANDLE handle, VkMemoryWin32HandlePropertiesKHR* pMemoryWin32HandleProperties) { return VK_SUCCESS; };
-#endif // VK_USE_PLATFORM_WIN32_KHR
-static VKAPI_ATTR VkResult VKAPI_CALL StubGetMemoryFdKHR(VkDevice device, const VkMemoryGetFdInfoKHR* pGetFdInfo, int* pFd) { return VK_SUCCESS; };
-static VKAPI_ATTR VkResult VKAPI_CALL StubGetMemoryFdPropertiesKHR(VkDevice device, VkExternalMemoryHandleTypeFlagBits handleType, int fd, VkMemoryFdPropertiesKHR* pMemoryFdProperties) { return VK_SUCCESS; };
-#ifdef VK_USE_PLATFORM_WIN32_KHR
-static VKAPI_ATTR VkResult VKAPI_CALL StubImportSemaphoreWin32HandleKHR(VkDevice device, const VkImportSemaphoreWin32HandleInfoKHR* pImportSemaphoreWin32HandleInfo) { return VK_SUCCESS; };
-#endif // VK_USE_PLATFORM_WIN32_KHR
-#ifdef VK_USE_PLATFORM_WIN32_KHR
-static VKAPI_ATTR VkResult VKAPI_CALL StubGetSemaphoreWin32HandleKHR(VkDevice device, const VkSemaphoreGetWin32HandleInfoKHR* pGetWin32HandleInfo, HANDLE* pHandle) { return VK_SUCCESS; };
-#endif // VK_USE_PLATFORM_WIN32_KHR
-static VKAPI_ATTR VkResult VKAPI_CALL StubImportSemaphoreFdKHR(VkDevice device, const VkImportSemaphoreFdInfoKHR* pImportSemaphoreFdInfo) { return VK_SUCCESS; };
-static VKAPI_ATTR VkResult VKAPI_CALL StubGetSemaphoreFdKHR(VkDevice device, const VkSemaphoreGetFdInfoKHR* pGetFdInfo, int* pFd) { return VK_SUCCESS; };
-static VKAPI_ATTR void VKAPI_CALL StubCmdPushDescriptorSetKHR(VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipelineLayout layout, uint32_t set, uint32_t descriptorWriteCount, const VkWriteDescriptorSet* pDescriptorWrites) { };
-static VKAPI_ATTR void VKAPI_CALL StubCmdPushDescriptorSetWithTemplateKHR(VkCommandBuffer commandBuffer, VkDescriptorUpdateTemplate descriptorUpdateTemplate, VkPipelineLayout layout, uint32_t set, const void* pData) { };
-static VKAPI_ATTR VkResult VKAPI_CALL StubCreateDescriptorUpdateTemplateKHR(VkDevice device, const VkDescriptorUpdateTemplateCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDescriptorUpdateTemplate* pDescriptorUpdateTemplate) { return VK_SUCCESS; };
-static VKAPI_ATTR void VKAPI_CALL StubDestroyDescriptorUpdateTemplateKHR(VkDevice device, VkDescriptorUpdateTemplate descriptorUpdateTemplate, const VkAllocationCallbacks* pAllocator) { };
-static VKAPI_ATTR void VKAPI_CALL StubUpdateDescriptorSetWithTemplateKHR(VkDevice device, VkDescriptorSet descriptorSet, VkDescriptorUpdateTemplate descriptorUpdateTemplate, const void* pData) { };
-static VKAPI_ATTR VkResult VKAPI_CALL StubCreateRenderPass2KHR(VkDevice device, const VkRenderPassCreateInfo2* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkRenderPass* pRenderPass) { return VK_SUCCESS; };
-static VKAPI_ATTR void VKAPI_CALL StubCmdBeginRenderPass2KHR(VkCommandBuffer commandBuffer, const VkRenderPassBeginInfo* pRenderPassBegin, const VkSubpassBeginInfo* pSubpassBeginInfo) { };
-static VKAPI_ATTR void VKAPI_CALL StubCmdNextSubpass2KHR(VkCommandBuffer commandBuffer, const VkSubpassBeginInfo* pSubpassBeginInfo, const VkSubpassEndInfo* pSubpassEndInfo) { };
-static VKAPI_ATTR void VKAPI_CALL StubCmdEndRenderPass2KHR(VkCommandBuffer commandBuffer, const VkSubpassEndInfo* pSubpassEndInfo) { };
-static VKAPI_ATTR VkResult VKAPI_CALL StubGetSwapchainStatusKHR(VkDevice device, VkSwapchainKHR swapchain) { return VK_SUCCESS; };
-#ifdef VK_USE_PLATFORM_WIN32_KHR
-static VKAPI_ATTR VkResult VKAPI_CALL StubImportFenceWin32HandleKHR(VkDevice device, const VkImportFenceWin32HandleInfoKHR* pImportFenceWin32HandleInfo) { return VK_SUCCESS; };
-#endif // VK_USE_PLATFORM_WIN32_KHR
-#ifdef VK_USE_PLATFORM_WIN32_KHR
-static VKAPI_ATTR VkResult VKAPI_CALL StubGetFenceWin32HandleKHR(VkDevice device, const VkFenceGetWin32HandleInfoKHR* pGetWin32HandleInfo, HANDLE* pHandle) { return VK_SUCCESS; };
-#endif // VK_USE_PLATFORM_WIN32_KHR
-static VKAPI_ATTR VkResult VKAPI_CALL StubImportFenceFdKHR(VkDevice device, const VkImportFenceFdInfoKHR* pImportFenceFdInfo) { return VK_SUCCESS; };
-static VKAPI_ATTR VkResult VKAPI_CALL StubGetFenceFdKHR(VkDevice device, const VkFenceGetFdInfoKHR* pGetFdInfo, int* pFd) { return VK_SUCCESS; };
-static VKAPI_ATTR VkResult VKAPI_CALL StubAcquireProfilingLockKHR(VkDevice device, const VkAcquireProfilingLockInfoKHR* pInfo) { return VK_SUCCESS; };
-static VKAPI_ATTR void VKAPI_CALL StubReleaseProfilingLockKHR(VkDevice device) { };
-static VKAPI_ATTR void VKAPI_CALL StubGetImageMemoryRequirements2KHR(VkDevice device, const VkImageMemoryRequirementsInfo2* pInfo, VkMemoryRequirements2* pMemoryRequirements) { };
-static VKAPI_ATTR void VKAPI_CALL StubGetBufferMemoryRequirements2KHR(VkDevice device, const VkBufferMemoryRequirementsInfo2* pInfo, VkMemoryRequirements2* pMemoryRequirements) { };
-static VKAPI_ATTR void VKAPI_CALL StubGetImageSparseMemoryRequirements2KHR(VkDevice device, const VkImageSparseMemoryRequirementsInfo2* pInfo, uint32_t* pSparseMemoryRequirementCount, VkSparseImageMemoryRequirements2* pSparseMemoryRequirements) { };
-static VKAPI_ATTR VkResult VKAPI_CALL StubCreateSamplerYcbcrConversionKHR(VkDevice device, const VkSamplerYcbcrConversionCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSamplerYcbcrConversion* pYcbcrConversion) { return VK_SUCCESS; };
-static VKAPI_ATTR void VKAPI_CALL StubDestroySamplerYcbcrConversionKHR(VkDevice device, VkSamplerYcbcrConversion ycbcrConversion, const VkAllocationCallbacks* pAllocator) { };
-static VKAPI_ATTR VkResult VKAPI_CALL StubBindBufferMemory2KHR(VkDevice device, uint32_t bindInfoCount, const VkBindBufferMemoryInfo* pBindInfos) { return VK_SUCCESS; };
-static VKAPI_ATTR VkResult VKAPI_CALL StubBindImageMemory2KHR(VkDevice device, uint32_t bindInfoCount, const VkBindImageMemoryInfo* pBindInfos) { return VK_SUCCESS; };
-static VKAPI_ATTR void VKAPI_CALL StubGetDescriptorSetLayoutSupportKHR(VkDevice device, const VkDescriptorSetLayoutCreateInfo* pCreateInfo, VkDescriptorSetLayoutSupport* pSupport) { };
-static VKAPI_ATTR void VKAPI_CALL StubCmdDrawIndirectCountKHR(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkBuffer countBuffer, VkDeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride) { };
-static VKAPI_ATTR void VKAPI_CALL StubCmdDrawIndexedIndirectCountKHR(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkBuffer countBuffer, VkDeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride) { };
-static VKAPI_ATTR VkResult VKAPI_CALL StubGetSemaphoreCounterValueKHR(VkDevice device, VkSemaphore semaphore, uint64_t* pValue) { return VK_SUCCESS; };
-static VKAPI_ATTR VkResult VKAPI_CALL StubWaitSemaphoresKHR(VkDevice device, const VkSemaphoreWaitInfo* pWaitInfo, uint64_t timeout) { return VK_SUCCESS; };
-static VKAPI_ATTR VkResult VKAPI_CALL StubSignalSemaphoreKHR(VkDevice device, const VkSemaphoreSignalInfo* pSignalInfo) { return VK_SUCCESS; };
-static VKAPI_ATTR void VKAPI_CALL StubCmdSetFragmentShadingRateKHR(VkCommandBuffer commandBuffer, const VkExtent2D* pFragmentSize, const VkFragmentShadingRateCombinerOpKHR combinerOps[2]) { };
-static VKAPI_ATTR VkDeviceAddress VKAPI_CALL StubGetBufferDeviceAddressKHR(VkDevice device, const VkBufferDeviceAddressInfo* pInfo) { return 0L; };
-static VKAPI_ATTR uint64_t VKAPI_CALL StubGetBufferOpaqueCaptureAddressKHR(VkDevice device, const VkBufferDeviceAddressInfo* pInfo) { return 0L; };
-static VKAPI_ATTR uint64_t VKAPI_CALL StubGetDeviceMemoryOpaqueCaptureAddressKHR(VkDevice device, const VkDeviceMemoryOpaqueCaptureAddressInfo* pInfo) { return 0L; };
-static VKAPI_ATTR VkResult VKAPI_CALL StubCreateDeferredOperationKHR(VkDevice device, const VkAllocationCallbacks* pAllocator, VkDeferredOperationKHR* pDeferredOperation) { return VK_SUCCESS; };
-static VKAPI_ATTR void VKAPI_CALL StubDestroyDeferredOperationKHR(VkDevice device, VkDeferredOperationKHR operation, const VkAllocationCallbacks* pAllocator) { };
-static VKAPI_ATTR uint32_t VKAPI_CALL StubGetDeferredOperationMaxConcurrencyKHR(VkDevice device, VkDeferredOperationKHR operation) { return 0; };
-static VKAPI_ATTR VkResult VKAPI_CALL StubGetDeferredOperationResultKHR(VkDevice device, VkDeferredOperationKHR operation) { return VK_SUCCESS; };
-static VKAPI_ATTR VkResult VKAPI_CALL StubDeferredOperationJoinKHR(VkDevice device, VkDeferredOperationKHR operation) { return VK_SUCCESS; };
-static VKAPI_ATTR VkResult VKAPI_CALL StubGetPipelineExecutablePropertiesKHR(VkDevice device, const VkPipelineInfoKHR* pPipelineInfo, uint32_t* pExecutableCount, VkPipelineExecutablePropertiesKHR* pProperties) { return VK_SUCCESS; };
-static VKAPI_ATTR VkResult VKAPI_CALL StubGetPipelineExecutableStatisticsKHR(VkDevice device, const VkPipelineExecutableInfoKHR* pExecutableInfo, uint32_t* pStatisticCount, VkPipelineExecutableStatisticKHR* pStatistics) { return VK_SUCCESS; };
-static VKAPI_ATTR VkResult VKAPI_CALL StubGetPipelineExecutableInternalRepresentationsKHR(VkDevice device, const VkPipelineExecutableInfoKHR* pExecutableInfo, uint32_t* pInternalRepresentationCount, VkPipelineExecutableInternalRepresentationKHR* pInternalRepresentations) { return VK_SUCCESS; };
-static VKAPI_ATTR void VKAPI_CALL StubCmdCopyBuffer2KHR(VkCommandBuffer commandBuffer, const VkCopyBufferInfo2KHR* pCopyBufferInfo) { };
-static VKAPI_ATTR void VKAPI_CALL StubCmdCopyImage2KHR(VkCommandBuffer commandBuffer, const VkCopyImageInfo2KHR* pCopyImageInfo) { };
-static VKAPI_ATTR void VKAPI_CALL StubCmdCopyBufferToImage2KHR(VkCommandBuffer commandBuffer, const VkCopyBufferToImageInfo2KHR* pCopyBufferToImageInfo) { };
-static VKAPI_ATTR void VKAPI_CALL StubCmdCopyImageToBuffer2KHR(VkCommandBuffer commandBuffer, const VkCopyImageToBufferInfo2KHR* pCopyImageToBufferInfo) { };
-static VKAPI_ATTR void VKAPI_CALL StubCmdBlitImage2KHR(VkCommandBuffer commandBuffer, const VkBlitImageInfo2KHR* pBlitImageInfo) { };
-static VKAPI_ATTR void VKAPI_CALL StubCmdResolveImage2KHR(VkCommandBuffer commandBuffer, const VkResolveImageInfo2KHR* pResolveImageInfo) { };
-static VKAPI_ATTR VkResult VKAPI_CALL StubDebugMarkerSetObjectTagEXT(VkDevice device, const VkDebugMarkerObjectTagInfoEXT* pTagInfo) { return VK_SUCCESS; };
-static VKAPI_ATTR VkResult VKAPI_CALL StubDebugMarkerSetObjectNameEXT(VkDevice device, const VkDebugMarkerObjectNameInfoEXT* pNameInfo) { return VK_SUCCESS; };
-static VKAPI_ATTR void VKAPI_CALL StubCmdDebugMarkerBeginEXT(VkCommandBuffer commandBuffer, const VkDebugMarkerMarkerInfoEXT* pMarkerInfo) { };
-static VKAPI_ATTR void VKAPI_CALL StubCmdDebugMarkerEndEXT(VkCommandBuffer commandBuffer) { };
-static VKAPI_ATTR void VKAPI_CALL StubCmdDebugMarkerInsertEXT(VkCommandBuffer commandBuffer, const VkDebugMarkerMarkerInfoEXT* pMarkerInfo) { };
-static VKAPI_ATTR void VKAPI_CALL StubCmdBindTransformFeedbackBuffersEXT(VkCommandBuffer commandBuffer, uint32_t firstBinding, uint32_t bindingCount, const VkBuffer* pBuffers, const VkDeviceSize* pOffsets, const VkDeviceSize* pSizes) { };
-static VKAPI_ATTR void VKAPI_CALL StubCmdBeginTransformFeedbackEXT(VkCommandBuffer commandBuffer, uint32_t firstCounterBuffer, uint32_t counterBufferCount, const VkBuffer* pCounterBuffers, const VkDeviceSize* pCounterBufferOffsets) { };
-static VKAPI_ATTR void VKAPI_CALL StubCmdEndTransformFeedbackEXT(VkCommandBuffer commandBuffer, uint32_t firstCounterBuffer, uint32_t counterBufferCount, const VkBuffer* pCounterBuffers, const VkDeviceSize* pCounterBufferOffsets) { };
-static VKAPI_ATTR void VKAPI_CALL StubCmdBeginQueryIndexedEXT(VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t query, VkQueryControlFlags flags, uint32_t index) { };
-static VKAPI_ATTR void VKAPI_CALL StubCmdEndQueryIndexedEXT(VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t query, uint32_t index) { };
-static VKAPI_ATTR void VKAPI_CALL StubCmdDrawIndirectByteCountEXT(VkCommandBuffer commandBuffer, uint32_t instanceCount, uint32_t firstInstance, VkBuffer counterBuffer, VkDeviceSize counterBufferOffset, uint32_t counterOffset, uint32_t vertexStride) { };
-static VKAPI_ATTR uint32_t VKAPI_CALL StubGetImageViewHandleNVX(VkDevice device, const VkImageViewHandleInfoNVX* pInfo) { return 0; };
-static VKAPI_ATTR VkResult VKAPI_CALL StubGetImageViewAddressNVX(VkDevice device, VkImageView imageView, VkImageViewAddressPropertiesNVX* pProperties) { return VK_SUCCESS; };
-static VKAPI_ATTR void VKAPI_CALL StubCmdDrawIndirectCountAMD(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkBuffer countBuffer, VkDeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride) { };
-static VKAPI_ATTR void VKAPI_CALL StubCmdDrawIndexedIndirectCountAMD(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkBuffer countBuffer, VkDeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride) { };
-static VKAPI_ATTR VkResult VKAPI_CALL StubGetShaderInfoAMD(VkDevice device, VkPipeline pipeline, VkShaderStageFlagBits shaderStage, VkShaderInfoTypeAMD infoType, size_t* pInfoSize, void* pInfo) { return VK_SUCCESS; };
-#ifdef VK_USE_PLATFORM_WIN32_KHR
-static VKAPI_ATTR VkResult VKAPI_CALL StubGetMemoryWin32HandleNV(VkDevice device, VkDeviceMemory memory, VkExternalMemoryHandleTypeFlagsNV handleType, HANDLE* pHandle) { return VK_SUCCESS; };
-#endif // VK_USE_PLATFORM_WIN32_KHR
-static VKAPI_ATTR void VKAPI_CALL StubCmdBeginConditionalRenderingEXT(VkCommandBuffer commandBuffer, const VkConditionalRenderingBeginInfoEXT* pConditionalRenderingBegin) { };
-static VKAPI_ATTR void VKAPI_CALL StubCmdEndConditionalRenderingEXT(VkCommandBuffer commandBuffer) { };
-static VKAPI_ATTR void VKAPI_CALL StubCmdSetViewportWScalingNV(VkCommandBuffer commandBuffer, uint32_t firstViewport, uint32_t viewportCount, const VkViewportWScalingNV* pViewportWScalings) { };
-static VKAPI_ATTR VkResult VKAPI_CALL StubDisplayPowerControlEXT(VkDevice device, VkDisplayKHR display, const VkDisplayPowerInfoEXT* pDisplayPowerInfo) { return VK_SUCCESS; };
-static VKAPI_ATTR VkResult VKAPI_CALL StubRegisterDeviceEventEXT(VkDevice device, const VkDeviceEventInfoEXT* pDeviceEventInfo, const VkAllocationCallbacks* pAllocator, VkFence* pFence) { return VK_SUCCESS; };
-static VKAPI_ATTR VkResult VKAPI_CALL StubRegisterDisplayEventEXT(VkDevice device, VkDisplayKHR display, const VkDisplayEventInfoEXT* pDisplayEventInfo, const VkAllocationCallbacks* pAllocator, VkFence* pFence) { return VK_SUCCESS; };
-static VKAPI_ATTR VkResult VKAPI_CALL StubGetSwapchainCounterEXT(VkDevice device, VkSwapchainKHR swapchain, VkSurfaceCounterFlagBitsEXT counter, uint64_t* pCounterValue) { return VK_SUCCESS; };
-static VKAPI_ATTR VkResult VKAPI_CALL StubGetRefreshCycleDurationGOOGLE(VkDevice device, VkSwapchainKHR swapchain, VkRefreshCycleDurationGOOGLE* pDisplayTimingProperties) { return VK_SUCCESS; };
-static VKAPI_ATTR VkResult VKAPI_CALL StubGetPastPresentationTimingGOOGLE(VkDevice device, VkSwapchainKHR swapchain, uint32_t* pPresentationTimingCount, VkPastPresentationTimingGOOGLE* pPresentationTimings) { return VK_SUCCESS; };
-static VKAPI_ATTR void VKAPI_CALL StubCmdSetDiscardRectangleEXT(VkCommandBuffer commandBuffer, uint32_t firstDiscardRectangle, uint32_t discardRectangleCount, const VkRect2D* pDiscardRectangles) { };
-static VKAPI_ATTR void VKAPI_CALL StubSetHdrMetadataEXT(VkDevice device, uint32_t swapchainCount, const VkSwapchainKHR* pSwapchains, const VkHdrMetadataEXT* pMetadata) { };
-#ifdef VK_USE_PLATFORM_ANDROID_KHR
-static VKAPI_ATTR VkResult VKAPI_CALL StubGetAndroidHardwareBufferPropertiesANDROID(VkDevice device, const struct AHardwareBuffer* buffer, VkAndroidHardwareBufferPropertiesANDROID* pProperties) { return VK_SUCCESS; };
-#endif // VK_USE_PLATFORM_ANDROID_KHR
-#ifdef VK_USE_PLATFORM_ANDROID_KHR
-static VKAPI_ATTR VkResult VKAPI_CALL StubGetMemoryAndroidHardwareBufferANDROID(VkDevice device, const VkMemoryGetAndroidHardwareBufferInfoANDROID* pInfo, struct AHardwareBuffer** pBuffer) { return VK_SUCCESS; };
-#endif // VK_USE_PLATFORM_ANDROID_KHR
-static VKAPI_ATTR void VKAPI_CALL StubCmdSetSampleLocationsEXT(VkCommandBuffer commandBuffer, const VkSampleLocationsInfoEXT* pSampleLocationsInfo) { };
-static VKAPI_ATTR VkResult VKAPI_CALL StubGetImageDrmFormatModifierPropertiesEXT(VkDevice device, VkImage image, VkImageDrmFormatModifierPropertiesEXT* pProperties) { return VK_SUCCESS; };
-static VKAPI_ATTR VkResult VKAPI_CALL StubCreateValidationCacheEXT(VkDevice device, const VkValidationCacheCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkValidationCacheEXT* pValidationCache) { return VK_SUCCESS; };
-static VKAPI_ATTR void VKAPI_CALL StubDestroyValidationCacheEXT(VkDevice device, VkValidationCacheEXT validationCache, const VkAllocationCallbacks* pAllocator) { };
-static VKAPI_ATTR VkResult VKAPI_CALL StubMergeValidationCachesEXT(VkDevice device, VkValidationCacheEXT dstCache, uint32_t srcCacheCount, const VkValidationCacheEXT* pSrcCaches) { return VK_SUCCESS; };
-static VKAPI_ATTR VkResult VKAPI_CALL StubGetValidationCacheDataEXT(VkDevice device, VkValidationCacheEXT validationCache, size_t* pDataSize, void* pData) { return VK_SUCCESS; };
-static VKAPI_ATTR void VKAPI_CALL StubCmdBindShadingRateImageNV(VkCommandBuffer commandBuffer, VkImageView imageView, VkImageLayout imageLayout) { };
-static VKAPI_ATTR void VKAPI_CALL StubCmdSetViewportShadingRatePaletteNV(VkCommandBuffer commandBuffer, uint32_t firstViewport, uint32_t viewportCount, const VkShadingRatePaletteNV* pShadingRatePalettes) { };
-static VKAPI_ATTR void VKAPI_CALL StubCmdSetCoarseSampleOrderNV(VkCommandBuffer commandBuffer, VkCoarseSampleOrderTypeNV sampleOrderType, uint32_t customSampleOrderCount, const VkCoarseSampleOrderCustomNV* pCustomSampleOrders) { };
-static VKAPI_ATTR VkResult VKAPI_CALL StubCreateAccelerationStructureNV(VkDevice device, const VkAccelerationStructureCreateInfoNV* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkAccelerationStructureNV* pAccelerationStructure) { return VK_SUCCESS; };
-static VKAPI_ATTR void VKAPI_CALL StubDestroyAccelerationStructureNV(VkDevice device, VkAccelerationStructureNV accelerationStructure, const VkAllocationCallbacks* pAllocator) { };
-static VKAPI_ATTR void VKAPI_CALL StubGetAccelerationStructureMemoryRequirementsNV(VkDevice device, const VkAccelerationStructureMemoryRequirementsInfoNV* pInfo, VkMemoryRequirements2KHR* pMemoryRequirements) { };
-static VKAPI_ATTR VkResult VKAPI_CALL StubBindAccelerationStructureMemoryNV(VkDevice device, uint32_t bindInfoCount, const VkBindAccelerationStructureMemoryInfoNV* pBindInfos) { return VK_SUCCESS; };
-static VKAPI_ATTR void VKAPI_CALL StubCmdBuildAccelerationStructureNV(VkCommandBuffer commandBuffer, const VkAccelerationStructureInfoNV* pInfo, VkBuffer instanceData, VkDeviceSize instanceOffset, VkBool32 update, VkAccelerationStructureNV dst, VkAccelerationStructureNV src, VkBuffer scratch, VkDeviceSize scratchOffset) { };
-static VKAPI_ATTR void VKAPI_CALL StubCmdCopyAccelerationStructureNV(VkCommandBuffer commandBuffer, VkAccelerationStructureNV dst, VkAccelerationStructureNV src, VkCopyAccelerationStructureModeKHR mode) { };
-static VKAPI_ATTR void VKAPI_CALL StubCmdTraceRaysNV(VkCommandBuffer commandBuffer, VkBuffer raygenShaderBindingTableBuffer, VkDeviceSize raygenShaderBindingOffset, VkBuffer missShaderBindingTableBuffer, VkDeviceSize missShaderBindingOffset, VkDeviceSize missShaderBindingStride, VkBuffer hitShaderBindingTableBuffer, VkDeviceSize hitShaderBindingOffset, VkDeviceSize hitShaderBindingStride, VkBuffer callableShaderBindingTableBuffer, VkDeviceSize callableShaderBindingOffset, VkDeviceSize callableShaderBindingStride, uint32_t width, uint32_t height, uint32_t depth) { };
-static VKAPI_ATTR VkResult VKAPI_CALL StubCreateRayTracingPipelinesNV(VkDevice device, VkPipelineCache pipelineCache, uint32_t createInfoCount, const VkRayTracingPipelineCreateInfoNV* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkPipeline* pPipelines) { return VK_SUCCESS; };
-static VKAPI_ATTR VkResult VKAPI_CALL StubGetRayTracingShaderGroupHandlesKHR(VkDevice device, VkPipeline pipeline, uint32_t firstGroup, uint32_t groupCount, size_t dataSize, void* pData) { return VK_SUCCESS; };
-static VKAPI_ATTR VkResult VKAPI_CALL StubGetRayTracingShaderGroupHandlesNV(VkDevice device, VkPipeline pipeline, uint32_t firstGroup, uint32_t groupCount, size_t dataSize, void* pData) { return VK_SUCCESS; };
-static VKAPI_ATTR VkResult VKAPI_CALL StubGetAccelerationStructureHandleNV(VkDevice device, VkAccelerationStructureNV accelerationStructure, size_t dataSize, void* pData) { return VK_SUCCESS; };
-static VKAPI_ATTR void VKAPI_CALL StubCmdWriteAccelerationStructuresPropertiesNV(VkCommandBuffer commandBuffer, uint32_t accelerationStructureCount, const VkAccelerationStructureNV* pAccelerationStructures, VkQueryType queryType, VkQueryPool queryPool, uint32_t firstQuery) { };
-static VKAPI_ATTR VkResult VKAPI_CALL StubCompileDeferredNV(VkDevice device, VkPipeline pipeline, uint32_t shader) { return VK_SUCCESS; };
-static VKAPI_ATTR VkResult VKAPI_CALL StubGetMemoryHostPointerPropertiesEXT(VkDevice device, VkExternalMemoryHandleTypeFlagBits handleType, const void* pHostPointer, VkMemoryHostPointerPropertiesEXT* pMemoryHostPointerProperties) { return VK_SUCCESS; };
-static VKAPI_ATTR void VKAPI_CALL StubCmdWriteBufferMarkerAMD(VkCommandBuffer commandBuffer, VkPipelineStageFlagBits pipelineStage, VkBuffer dstBuffer, VkDeviceSize dstOffset, uint32_t marker) { };
-static VKAPI_ATTR VkResult VKAPI_CALL StubGetCalibratedTimestampsEXT(VkDevice device, uint32_t timestampCount, const VkCalibratedTimestampInfoEXT* pTimestampInfos, uint64_t* pTimestamps, uint64_t* pMaxDeviation) { return VK_SUCCESS; };
-static VKAPI_ATTR void VKAPI_CALL StubCmdDrawMeshTasksNV(VkCommandBuffer commandBuffer, uint32_t taskCount, uint32_t firstTask) { };
-static VKAPI_ATTR void VKAPI_CALL StubCmdDrawMeshTasksIndirectNV(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, uint32_t drawCount, uint32_t stride) { };
-static VKAPI_ATTR void VKAPI_CALL StubCmdDrawMeshTasksIndirectCountNV(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkBuffer countBuffer, VkDeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride) { };
-static VKAPI_ATTR void VKAPI_CALL StubCmdSetExclusiveScissorNV(VkCommandBuffer commandBuffer, uint32_t firstExclusiveScissor, uint32_t exclusiveScissorCount, const VkRect2D* pExclusiveScissors) { };
-static VKAPI_ATTR void VKAPI_CALL StubCmdSetCheckpointNV(VkCommandBuffer commandBuffer, const void* pCheckpointMarker) { };
-static VKAPI_ATTR void VKAPI_CALL StubGetQueueCheckpointDataNV(VkQueue queue, uint32_t* pCheckpointDataCount, VkCheckpointDataNV* pCheckpointData) { };
-static VKAPI_ATTR VkResult VKAPI_CALL StubInitializePerformanceApiINTEL(VkDevice device, const VkInitializePerformanceApiInfoINTEL* pInitializeInfo) { return VK_SUCCESS; };
-static VKAPI_ATTR void VKAPI_CALL StubUninitializePerformanceApiINTEL(VkDevice device) { };
-static VKAPI_ATTR VkResult VKAPI_CALL StubCmdSetPerformanceMarkerINTEL(VkCommandBuffer commandBuffer, const VkPerformanceMarkerInfoINTEL* pMarkerInfo) { return VK_SUCCESS; };
-static VKAPI_ATTR VkResult VKAPI_CALL StubCmdSetPerformanceStreamMarkerINTEL(VkCommandBuffer commandBuffer, const VkPerformanceStreamMarkerInfoINTEL* pMarkerInfo) { return VK_SUCCESS; };
-static VKAPI_ATTR VkResult VKAPI_CALL StubCmdSetPerformanceOverrideINTEL(VkCommandBuffer commandBuffer, const VkPerformanceOverrideInfoINTEL* pOverrideInfo) { return VK_SUCCESS; };
-static VKAPI_ATTR VkResult VKAPI_CALL StubAcquirePerformanceConfigurationINTEL(VkDevice device, const VkPerformanceConfigurationAcquireInfoINTEL* pAcquireInfo, VkPerformanceConfigurationINTEL* pConfiguration) { return VK_SUCCESS; };
-static VKAPI_ATTR VkResult VKAPI_CALL StubReleasePerformanceConfigurationINTEL(VkDevice device, VkPerformanceConfigurationINTEL configuration) { return VK_SUCCESS; };
-static VKAPI_ATTR VkResult VKAPI_CALL StubQueueSetPerformanceConfigurationINTEL(VkQueue queue, VkPerformanceConfigurationINTEL configuration) { return VK_SUCCESS; };
-static VKAPI_ATTR VkResult VKAPI_CALL StubGetPerformanceParameterINTEL(VkDevice device, VkPerformanceParameterTypeINTEL parameter, VkPerformanceValueINTEL* pValue) { return VK_SUCCESS; };
-static VKAPI_ATTR void VKAPI_CALL StubSetLocalDimmingAMD(VkDevice device, VkSwapchainKHR swapChain, VkBool32 localDimmingEnable) { };
-static VKAPI_ATTR VkDeviceAddress VKAPI_CALL StubGetBufferDeviceAddressEXT(VkDevice device, const VkBufferDeviceAddressInfo* pInfo) { return 0L; };
-#ifdef VK_USE_PLATFORM_WIN32_KHR
-static VKAPI_ATTR VkResult VKAPI_CALL StubAcquireFullScreenExclusiveModeEXT(VkDevice device, VkSwapchainKHR swapchain) { return VK_SUCCESS; };
-#endif // VK_USE_PLATFORM_WIN32_KHR
-#ifdef VK_USE_PLATFORM_WIN32_KHR
-static VKAPI_ATTR VkResult VKAPI_CALL StubReleaseFullScreenExclusiveModeEXT(VkDevice device, VkSwapchainKHR swapchain) { return VK_SUCCESS; };
-#endif // VK_USE_PLATFORM_WIN32_KHR
-#ifdef VK_USE_PLATFORM_WIN32_KHR
-static VKAPI_ATTR VkResult VKAPI_CALL StubGetDeviceGroupSurfacePresentModes2EXT(VkDevice device, const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo, VkDeviceGroupPresentModeFlagsKHR* pModes) { return VK_SUCCESS; };
-#endif // VK_USE_PLATFORM_WIN32_KHR
-static VKAPI_ATTR void VKAPI_CALL StubCmdSetLineStippleEXT(VkCommandBuffer commandBuffer, uint32_t lineStippleFactor, uint16_t lineStipplePattern) { };
-static VKAPI_ATTR void VKAPI_CALL StubResetQueryPoolEXT(VkDevice device, VkQueryPool queryPool, uint32_t firstQuery, uint32_t queryCount) { };
-static VKAPI_ATTR void VKAPI_CALL StubCmdSetCullModeEXT(VkCommandBuffer commandBuffer, VkCullModeFlags cullMode) { };
-static VKAPI_ATTR void VKAPI_CALL StubCmdSetFrontFaceEXT(VkCommandBuffer commandBuffer, VkFrontFace frontFace) { };
-static VKAPI_ATTR void VKAPI_CALL StubCmdSetPrimitiveTopologyEXT(VkCommandBuffer commandBuffer, VkPrimitiveTopology primitiveTopology) { };
-static VKAPI_ATTR void VKAPI_CALL StubCmdSetViewportWithCountEXT(VkCommandBuffer commandBuffer, uint32_t viewportCount, const VkViewport* pViewports) { };
-static VKAPI_ATTR void VKAPI_CALL StubCmdSetScissorWithCountEXT(VkCommandBuffer commandBuffer, uint32_t scissorCount, const VkRect2D* pScissors) { };
-static VKAPI_ATTR void VKAPI_CALL StubCmdBindVertexBuffers2EXT(VkCommandBuffer commandBuffer, uint32_t firstBinding, uint32_t bindingCount, const VkBuffer* pBuffers, const VkDeviceSize* pOffsets, const VkDeviceSize* pSizes, const VkDeviceSize* pStrides) { };
-static VKAPI_ATTR void VKAPI_CALL StubCmdSetDepthTestEnableEXT(VkCommandBuffer commandBuffer, VkBool32 depthTestEnable) { };
-static VKAPI_ATTR void VKAPI_CALL StubCmdSetDepthWriteEnableEXT(VkCommandBuffer commandBuffer, VkBool32 depthWriteEnable) { };
-static VKAPI_ATTR void VKAPI_CALL StubCmdSetDepthCompareOpEXT(VkCommandBuffer commandBuffer, VkCompareOp depthCompareOp) { };
-static VKAPI_ATTR void VKAPI_CALL StubCmdSetDepthBoundsTestEnableEXT(VkCommandBuffer commandBuffer, VkBool32 depthBoundsTestEnable) { };
-static VKAPI_ATTR void VKAPI_CALL StubCmdSetStencilTestEnableEXT(VkCommandBuffer commandBuffer, VkBool32 stencilTestEnable) { };
-static VKAPI_ATTR void VKAPI_CALL StubCmdSetStencilOpEXT(VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask, VkStencilOp failOp, VkStencilOp passOp, VkStencilOp depthFailOp, VkCompareOp compareOp) { };
-static VKAPI_ATTR void VKAPI_CALL StubGetGeneratedCommandsMemoryRequirementsNV(VkDevice device, const VkGeneratedCommandsMemoryRequirementsInfoNV* pInfo, VkMemoryRequirements2* pMemoryRequirements) { };
-static VKAPI_ATTR void VKAPI_CALL StubCmdPreprocessGeneratedCommandsNV(VkCommandBuffer commandBuffer, const VkGeneratedCommandsInfoNV* pGeneratedCommandsInfo) { };
-static VKAPI_ATTR void VKAPI_CALL StubCmdExecuteGeneratedCommandsNV(VkCommandBuffer commandBuffer, VkBool32 isPreprocessed, const VkGeneratedCommandsInfoNV* pGeneratedCommandsInfo) { };
-static VKAPI_ATTR void VKAPI_CALL StubCmdBindPipelineShaderGroupNV(VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipeline pipeline, uint32_t groupIndex) { };
-static VKAPI_ATTR VkResult VKAPI_CALL StubCreateIndirectCommandsLayoutNV(VkDevice device, const VkIndirectCommandsLayoutCreateInfoNV* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkIndirectCommandsLayoutNV* pIndirectCommandsLayout) { return VK_SUCCESS; };
-static VKAPI_ATTR void VKAPI_CALL StubDestroyIndirectCommandsLayoutNV(VkDevice device, VkIndirectCommandsLayoutNV indirectCommandsLayout, const VkAllocationCallbacks* pAllocator) { };
-static VKAPI_ATTR VkResult VKAPI_CALL StubCreatePrivateDataSlotEXT(VkDevice device, const VkPrivateDataSlotCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkPrivateDataSlotEXT* pPrivateDataSlot) { return VK_SUCCESS; };
-static VKAPI_ATTR void VKAPI_CALL StubDestroyPrivateDataSlotEXT(VkDevice device, VkPrivateDataSlotEXT privateDataSlot, const VkAllocationCallbacks* pAllocator) { };
-static VKAPI_ATTR VkResult VKAPI_CALL StubSetPrivateDataEXT(VkDevice device, VkObjectType objectType, uint64_t objectHandle, VkPrivateDataSlotEXT privateDataSlot, uint64_t data) { return VK_SUCCESS; };
-static VKAPI_ATTR void VKAPI_CALL StubGetPrivateDataEXT(VkDevice device, VkObjectType objectType, uint64_t objectHandle, VkPrivateDataSlotEXT privateDataSlot, uint64_t* pData) { };
-static VKAPI_ATTR void VKAPI_CALL StubCmdSetFragmentShadingRateEnumNV(VkCommandBuffer commandBuffer, VkFragmentShadingRateNV shadingRate, const VkFragmentShadingRateCombinerOpKHR combinerOps[2]) { };
-static VKAPI_ATTR VkResult VKAPI_CALL StubCreateAccelerationStructureKHR(VkDevice device, const VkAccelerationStructureCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkAccelerationStructureKHR* pAccelerationStructure) { return VK_SUCCESS; };
-static VKAPI_ATTR void VKAPI_CALL StubDestroyAccelerationStructureKHR(VkDevice device, VkAccelerationStructureKHR accelerationStructure, const VkAllocationCallbacks* pAllocator) { };
-static VKAPI_ATTR void VKAPI_CALL StubCmdBuildAccelerationStructuresKHR(VkCommandBuffer commandBuffer, uint32_t infoCount, const VkAccelerationStructureBuildGeometryInfoKHR* pInfos, const VkAccelerationStructureBuildRangeInfoKHR* const* ppBuildRangeInfos) { };
-static VKAPI_ATTR void VKAPI_CALL StubCmdBuildAccelerationStructuresIndirectKHR(VkCommandBuffer commandBuffer, uint32_t infoCount, const VkAccelerationStructureBuildGeometryInfoKHR* pInfos, const VkDeviceAddress* pIndirectDeviceAddresses, const uint32_t* pIndirectStrides, const uint32_t* const* ppMaxPrimitiveCounts) { };
-static VKAPI_ATTR VkResult VKAPI_CALL StubBuildAccelerationStructuresKHR(VkDevice device, VkDeferredOperationKHR deferredOperation, uint32_t infoCount, const VkAccelerationStructureBuildGeometryInfoKHR* pInfos, const VkAccelerationStructureBuildRangeInfoKHR* const* ppBuildRangeInfos) { return VK_SUCCESS; };
-static VKAPI_ATTR VkResult VKAPI_CALL StubCopyAccelerationStructureKHR(VkDevice device, VkDeferredOperationKHR deferredOperation, const VkCopyAccelerationStructureInfoKHR* pInfo) { return VK_SUCCESS; };
-static VKAPI_ATTR VkResult VKAPI_CALL StubCopyAccelerationStructureToMemoryKHR(VkDevice device, VkDeferredOperationKHR deferredOperation, const VkCopyAccelerationStructureToMemoryInfoKHR* pInfo) { return VK_SUCCESS; };
-static VKAPI_ATTR VkResult VKAPI_CALL StubCopyMemoryToAccelerationStructureKHR(VkDevice device, VkDeferredOperationKHR deferredOperation, const VkCopyMemoryToAccelerationStructureInfoKHR* pInfo) { return VK_SUCCESS; };
-static VKAPI_ATTR VkResult VKAPI_CALL StubWriteAccelerationStructuresPropertiesKHR(VkDevice device, uint32_t accelerationStructureCount, const VkAccelerationStructureKHR* pAccelerationStructures, VkQueryType queryType, size_t dataSize, void* pData, size_t stride) { return VK_SUCCESS; };
-static VKAPI_ATTR void VKAPI_CALL StubCmdCopyAccelerationStructureKHR(VkCommandBuffer commandBuffer, const VkCopyAccelerationStructureInfoKHR* pInfo) { };
-static VKAPI_ATTR void VKAPI_CALL StubCmdCopyAccelerationStructureToMemoryKHR(VkCommandBuffer commandBuffer, const VkCopyAccelerationStructureToMemoryInfoKHR* pInfo) { };
-static VKAPI_ATTR void VKAPI_CALL StubCmdCopyMemoryToAccelerationStructureKHR(VkCommandBuffer commandBuffer, const VkCopyMemoryToAccelerationStructureInfoKHR* pInfo) { };
-static VKAPI_ATTR VkDeviceAddress VKAPI_CALL StubGetAccelerationStructureDeviceAddressKHR(VkDevice device, const VkAccelerationStructureDeviceAddressInfoKHR* pInfo) { return 0L; };
-static VKAPI_ATTR void VKAPI_CALL StubCmdWriteAccelerationStructuresPropertiesKHR(VkCommandBuffer commandBuffer, uint32_t accelerationStructureCount, const VkAccelerationStructureKHR* pAccelerationStructures, VkQueryType queryType, VkQueryPool queryPool, uint32_t firstQuery) { };
-static VKAPI_ATTR void VKAPI_CALL StubGetDeviceAccelerationStructureCompatibilityKHR(VkDevice device, const VkAccelerationStructureVersionInfoKHR* pVersionInfo, VkAccelerationStructureCompatibilityKHR* pCompatibility) { };
-static VKAPI_ATTR void VKAPI_CALL StubGetAccelerationStructureBuildSizesKHR(VkDevice device, VkAccelerationStructureBuildTypeKHR buildType, const VkAccelerationStructureBuildGeometryInfoKHR* pBuildInfo, const uint32_t* pMaxPrimitiveCounts, VkAccelerationStructureBuildSizesInfoKHR* pSizeInfo) { };
-static VKAPI_ATTR void VKAPI_CALL StubCmdTraceRaysKHR(VkCommandBuffer commandBuffer, const VkStridedDeviceAddressRegionKHR* pRaygenShaderBindingTable, const VkStridedDeviceAddressRegionKHR* pMissShaderBindingTable, const VkStridedDeviceAddressRegionKHR* pHitShaderBindingTable, const VkStridedDeviceAddressRegionKHR* pCallableShaderBindingTable, uint32_t width, uint32_t height, uint32_t depth) { };
-static VKAPI_ATTR VkResult VKAPI_CALL StubCreateRayTracingPipelinesKHR(VkDevice device, VkDeferredOperationKHR deferredOperation, VkPipelineCache pipelineCache, uint32_t createInfoCount, const VkRayTracingPipelineCreateInfoKHR* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkPipeline* pPipelines) { return VK_SUCCESS; };
-static VKAPI_ATTR VkResult VKAPI_CALL StubGetRayTracingCaptureReplayShaderGroupHandlesKHR(VkDevice device, VkPipeline pipeline, uint32_t firstGroup, uint32_t groupCount, size_t dataSize, void* pData) { return VK_SUCCESS; };
-static VKAPI_ATTR void VKAPI_CALL StubCmdTraceRaysIndirectKHR(VkCommandBuffer commandBuffer, const VkStridedDeviceAddressRegionKHR* pRaygenShaderBindingTable, const VkStridedDeviceAddressRegionKHR* pMissShaderBindingTable, const VkStridedDeviceAddressRegionKHR* pHitShaderBindingTable, const VkStridedDeviceAddressRegionKHR* pCallableShaderBindingTable, VkDeviceAddress indirectDeviceAddress) { };
-static VKAPI_ATTR VkDeviceSize VKAPI_CALL StubGetRayTracingShaderGroupStackSizeKHR(VkDevice device, VkPipeline pipeline, uint32_t group, VkShaderGroupShaderKHR groupShader) { return 0L; };
-static VKAPI_ATTR void VKAPI_CALL StubCmdSetRayTracingPipelineStackSizeKHR(VkCommandBuffer commandBuffer, uint32_t pipelineStackSize) { };
-
-
-
-static inline void layer_init_device_dispatch_table(VkDevice device, VkLayerDispatchTable *table, PFN_vkGetDeviceProcAddr gpa) {
- memset(table, 0, sizeof(*table));
- // Device function pointers
- table->GetDeviceProcAddr = gpa;
- table->DestroyDevice = (PFN_vkDestroyDevice) gpa(device, "vkDestroyDevice");
- table->GetDeviceQueue = (PFN_vkGetDeviceQueue) gpa(device, "vkGetDeviceQueue");
- table->QueueSubmit = (PFN_vkQueueSubmit) gpa(device, "vkQueueSubmit");
- table->QueueWaitIdle = (PFN_vkQueueWaitIdle) gpa(device, "vkQueueWaitIdle");
- table->DeviceWaitIdle = (PFN_vkDeviceWaitIdle) gpa(device, "vkDeviceWaitIdle");
- table->AllocateMemory = (PFN_vkAllocateMemory) gpa(device, "vkAllocateMemory");
- table->FreeMemory = (PFN_vkFreeMemory) gpa(device, "vkFreeMemory");
- table->MapMemory = (PFN_vkMapMemory) gpa(device, "vkMapMemory");
- table->UnmapMemory = (PFN_vkUnmapMemory) gpa(device, "vkUnmapMemory");
- table->FlushMappedMemoryRanges = (PFN_vkFlushMappedMemoryRanges) gpa(device, "vkFlushMappedMemoryRanges");
- table->InvalidateMappedMemoryRanges = (PFN_vkInvalidateMappedMemoryRanges) gpa(device, "vkInvalidateMappedMemoryRanges");
- table->GetDeviceMemoryCommitment = (PFN_vkGetDeviceMemoryCommitment) gpa(device, "vkGetDeviceMemoryCommitment");
- table->BindBufferMemory = (PFN_vkBindBufferMemory) gpa(device, "vkBindBufferMemory");
- table->BindImageMemory = (PFN_vkBindImageMemory) gpa(device, "vkBindImageMemory");
- table->GetBufferMemoryRequirements = (PFN_vkGetBufferMemoryRequirements) gpa(device, "vkGetBufferMemoryRequirements");
- table->GetImageMemoryRequirements = (PFN_vkGetImageMemoryRequirements) gpa(device, "vkGetImageMemoryRequirements");
- table->GetImageSparseMemoryRequirements = (PFN_vkGetImageSparseMemoryRequirements) gpa(device, "vkGetImageSparseMemoryRequirements");
- table->QueueBindSparse = (PFN_vkQueueBindSparse) gpa(device, "vkQueueBindSparse");
- table->CreateFence = (PFN_vkCreateFence) gpa(device, "vkCreateFence");
- table->DestroyFence = (PFN_vkDestroyFence) gpa(device, "vkDestroyFence");
- table->ResetFences = (PFN_vkResetFences) gpa(device, "vkResetFences");
- table->GetFenceStatus = (PFN_vkGetFenceStatus) gpa(device, "vkGetFenceStatus");
- table->WaitForFences = (PFN_vkWaitForFences) gpa(device, "vkWaitForFences");
- table->CreateSemaphore = (PFN_vkCreateSemaphore) gpa(device, "vkCreateSemaphore");
- table->DestroySemaphore = (PFN_vkDestroySemaphore) gpa(device, "vkDestroySemaphore");
- table->CreateEvent = (PFN_vkCreateEvent) gpa(device, "vkCreateEvent");
- table->DestroyEvent = (PFN_vkDestroyEvent) gpa(device, "vkDestroyEvent");
- table->GetEventStatus = (PFN_vkGetEventStatus) gpa(device, "vkGetEventStatus");
- table->SetEvent = (PFN_vkSetEvent) gpa(device, "vkSetEvent");
- table->ResetEvent = (PFN_vkResetEvent) gpa(device, "vkResetEvent");
- table->CreateQueryPool = (PFN_vkCreateQueryPool) gpa(device, "vkCreateQueryPool");
- table->DestroyQueryPool = (PFN_vkDestroyQueryPool) gpa(device, "vkDestroyQueryPool");
- table->GetQueryPoolResults = (PFN_vkGetQueryPoolResults) gpa(device, "vkGetQueryPoolResults");
- table->CreateBuffer = (PFN_vkCreateBuffer) gpa(device, "vkCreateBuffer");
- table->DestroyBuffer = (PFN_vkDestroyBuffer) gpa(device, "vkDestroyBuffer");
- table->CreateBufferView = (PFN_vkCreateBufferView) gpa(device, "vkCreateBufferView");
- table->DestroyBufferView = (PFN_vkDestroyBufferView) gpa(device, "vkDestroyBufferView");
- table->CreateImage = (PFN_vkCreateImage) gpa(device, "vkCreateImage");
- table->DestroyImage = (PFN_vkDestroyImage) gpa(device, "vkDestroyImage");
- table->GetImageSubresourceLayout = (PFN_vkGetImageSubresourceLayout) gpa(device, "vkGetImageSubresourceLayout");
- table->CreateImageView = (PFN_vkCreateImageView) gpa(device, "vkCreateImageView");
- table->DestroyImageView = (PFN_vkDestroyImageView) gpa(device, "vkDestroyImageView");
- table->CreateShaderModule = (PFN_vkCreateShaderModule) gpa(device, "vkCreateShaderModule");
- table->DestroyShaderModule = (PFN_vkDestroyShaderModule) gpa(device, "vkDestroyShaderModule");
- table->CreatePipelineCache = (PFN_vkCreatePipelineCache) gpa(device, "vkCreatePipelineCache");
- table->DestroyPipelineCache = (PFN_vkDestroyPipelineCache) gpa(device, "vkDestroyPipelineCache");
- table->GetPipelineCacheData = (PFN_vkGetPipelineCacheData) gpa(device, "vkGetPipelineCacheData");
- table->MergePipelineCaches = (PFN_vkMergePipelineCaches) gpa(device, "vkMergePipelineCaches");
- table->CreateGraphicsPipelines = (PFN_vkCreateGraphicsPipelines) gpa(device, "vkCreateGraphicsPipelines");
- table->CreateComputePipelines = (PFN_vkCreateComputePipelines) gpa(device, "vkCreateComputePipelines");
- table->DestroyPipeline = (PFN_vkDestroyPipeline) gpa(device, "vkDestroyPipeline");
- table->CreatePipelineLayout = (PFN_vkCreatePipelineLayout) gpa(device, "vkCreatePipelineLayout");
- table->DestroyPipelineLayout = (PFN_vkDestroyPipelineLayout) gpa(device, "vkDestroyPipelineLayout");
- table->CreateSampler = (PFN_vkCreateSampler) gpa(device, "vkCreateSampler");
- table->DestroySampler = (PFN_vkDestroySampler) gpa(device, "vkDestroySampler");
- table->CreateDescriptorSetLayout = (PFN_vkCreateDescriptorSetLayout) gpa(device, "vkCreateDescriptorSetLayout");
- table->DestroyDescriptorSetLayout = (PFN_vkDestroyDescriptorSetLayout) gpa(device, "vkDestroyDescriptorSetLayout");
- table->CreateDescriptorPool = (PFN_vkCreateDescriptorPool) gpa(device, "vkCreateDescriptorPool");
- table->DestroyDescriptorPool = (PFN_vkDestroyDescriptorPool) gpa(device, "vkDestroyDescriptorPool");
- table->ResetDescriptorPool = (PFN_vkResetDescriptorPool) gpa(device, "vkResetDescriptorPool");
- table->AllocateDescriptorSets = (PFN_vkAllocateDescriptorSets) gpa(device, "vkAllocateDescriptorSets");
- table->FreeDescriptorSets = (PFN_vkFreeDescriptorSets) gpa(device, "vkFreeDescriptorSets");
- table->UpdateDescriptorSets = (PFN_vkUpdateDescriptorSets) gpa(device, "vkUpdateDescriptorSets");
- table->CreateFramebuffer = (PFN_vkCreateFramebuffer) gpa(device, "vkCreateFramebuffer");
- table->DestroyFramebuffer = (PFN_vkDestroyFramebuffer) gpa(device, "vkDestroyFramebuffer");
- table->CreateRenderPass = (PFN_vkCreateRenderPass) gpa(device, "vkCreateRenderPass");
- table->DestroyRenderPass = (PFN_vkDestroyRenderPass) gpa(device, "vkDestroyRenderPass");
- table->GetRenderAreaGranularity = (PFN_vkGetRenderAreaGranularity) gpa(device, "vkGetRenderAreaGranularity");
- table->CreateCommandPool = (PFN_vkCreateCommandPool) gpa(device, "vkCreateCommandPool");
- table->DestroyCommandPool = (PFN_vkDestroyCommandPool) gpa(device, "vkDestroyCommandPool");
- table->ResetCommandPool = (PFN_vkResetCommandPool) gpa(device, "vkResetCommandPool");
- table->AllocateCommandBuffers = (PFN_vkAllocateCommandBuffers) gpa(device, "vkAllocateCommandBuffers");
- table->FreeCommandBuffers = (PFN_vkFreeCommandBuffers) gpa(device, "vkFreeCommandBuffers");
- table->BeginCommandBuffer = (PFN_vkBeginCommandBuffer) gpa(device, "vkBeginCommandBuffer");
- table->EndCommandBuffer = (PFN_vkEndCommandBuffer) gpa(device, "vkEndCommandBuffer");
- table->ResetCommandBuffer = (PFN_vkResetCommandBuffer) gpa(device, "vkResetCommandBuffer");
- table->CmdBindPipeline = (PFN_vkCmdBindPipeline) gpa(device, "vkCmdBindPipeline");
- table->CmdSetViewport = (PFN_vkCmdSetViewport) gpa(device, "vkCmdSetViewport");
- table->CmdSetScissor = (PFN_vkCmdSetScissor) gpa(device, "vkCmdSetScissor");
- table->CmdSetLineWidth = (PFN_vkCmdSetLineWidth) gpa(device, "vkCmdSetLineWidth");
- table->CmdSetDepthBias = (PFN_vkCmdSetDepthBias) gpa(device, "vkCmdSetDepthBias");
- table->CmdSetBlendConstants = (PFN_vkCmdSetBlendConstants) gpa(device, "vkCmdSetBlendConstants");
- table->CmdSetDepthBounds = (PFN_vkCmdSetDepthBounds) gpa(device, "vkCmdSetDepthBounds");
- table->CmdSetStencilCompareMask = (PFN_vkCmdSetStencilCompareMask) gpa(device, "vkCmdSetStencilCompareMask");
- table->CmdSetStencilWriteMask = (PFN_vkCmdSetStencilWriteMask) gpa(device, "vkCmdSetStencilWriteMask");
- table->CmdSetStencilReference = (PFN_vkCmdSetStencilReference) gpa(device, "vkCmdSetStencilReference");
- table->CmdBindDescriptorSets = (PFN_vkCmdBindDescriptorSets) gpa(device, "vkCmdBindDescriptorSets");
- table->CmdBindIndexBuffer = (PFN_vkCmdBindIndexBuffer) gpa(device, "vkCmdBindIndexBuffer");
- table->CmdBindVertexBuffers = (PFN_vkCmdBindVertexBuffers) gpa(device, "vkCmdBindVertexBuffers");
- table->CmdDraw = (PFN_vkCmdDraw) gpa(device, "vkCmdDraw");
- table->CmdDrawIndexed = (PFN_vkCmdDrawIndexed) gpa(device, "vkCmdDrawIndexed");
- table->CmdDrawIndirect = (PFN_vkCmdDrawIndirect) gpa(device, "vkCmdDrawIndirect");
- table->CmdDrawIndexedIndirect = (PFN_vkCmdDrawIndexedIndirect) gpa(device, "vkCmdDrawIndexedIndirect");
- table->CmdDispatch = (PFN_vkCmdDispatch) gpa(device, "vkCmdDispatch");
- table->CmdDispatchIndirect = (PFN_vkCmdDispatchIndirect) gpa(device, "vkCmdDispatchIndirect");
- table->CmdCopyBuffer = (PFN_vkCmdCopyBuffer) gpa(device, "vkCmdCopyBuffer");
- table->CmdCopyImage = (PFN_vkCmdCopyImage) gpa(device, "vkCmdCopyImage");
- table->CmdBlitImage = (PFN_vkCmdBlitImage) gpa(device, "vkCmdBlitImage");
- table->CmdCopyBufferToImage = (PFN_vkCmdCopyBufferToImage) gpa(device, "vkCmdCopyBufferToImage");
- table->CmdCopyImageToBuffer = (PFN_vkCmdCopyImageToBuffer) gpa(device, "vkCmdCopyImageToBuffer");
- table->CmdUpdateBuffer = (PFN_vkCmdUpdateBuffer) gpa(device, "vkCmdUpdateBuffer");
- table->CmdFillBuffer = (PFN_vkCmdFillBuffer) gpa(device, "vkCmdFillBuffer");
- table->CmdClearColorImage = (PFN_vkCmdClearColorImage) gpa(device, "vkCmdClearColorImage");
- table->CmdClearDepthStencilImage = (PFN_vkCmdClearDepthStencilImage) gpa(device, "vkCmdClearDepthStencilImage");
- table->CmdClearAttachments = (PFN_vkCmdClearAttachments) gpa(device, "vkCmdClearAttachments");
- table->CmdResolveImage = (PFN_vkCmdResolveImage) gpa(device, "vkCmdResolveImage");
- table->CmdSetEvent = (PFN_vkCmdSetEvent) gpa(device, "vkCmdSetEvent");
- table->CmdResetEvent = (PFN_vkCmdResetEvent) gpa(device, "vkCmdResetEvent");
- table->CmdWaitEvents = (PFN_vkCmdWaitEvents) gpa(device, "vkCmdWaitEvents");
- table->CmdPipelineBarrier = (PFN_vkCmdPipelineBarrier) gpa(device, "vkCmdPipelineBarrier");
- table->CmdBeginQuery = (PFN_vkCmdBeginQuery) gpa(device, "vkCmdBeginQuery");
- table->CmdEndQuery = (PFN_vkCmdEndQuery) gpa(device, "vkCmdEndQuery");
- table->CmdResetQueryPool = (PFN_vkCmdResetQueryPool) gpa(device, "vkCmdResetQueryPool");
- table->CmdWriteTimestamp = (PFN_vkCmdWriteTimestamp) gpa(device, "vkCmdWriteTimestamp");
- table->CmdCopyQueryPoolResults = (PFN_vkCmdCopyQueryPoolResults) gpa(device, "vkCmdCopyQueryPoolResults");
- table->CmdPushConstants = (PFN_vkCmdPushConstants) gpa(device, "vkCmdPushConstants");
- table->CmdBeginRenderPass = (PFN_vkCmdBeginRenderPass) gpa(device, "vkCmdBeginRenderPass");
- table->CmdNextSubpass = (PFN_vkCmdNextSubpass) gpa(device, "vkCmdNextSubpass");
- table->CmdEndRenderPass = (PFN_vkCmdEndRenderPass) gpa(device, "vkCmdEndRenderPass");
- table->CmdExecuteCommands = (PFN_vkCmdExecuteCommands) gpa(device, "vkCmdExecuteCommands");
- table->BindBufferMemory2 = (PFN_vkBindBufferMemory2) gpa(device, "vkBindBufferMemory2");
- table->BindImageMemory2 = (PFN_vkBindImageMemory2) gpa(device, "vkBindImageMemory2");
- table->GetDeviceGroupPeerMemoryFeatures = (PFN_vkGetDeviceGroupPeerMemoryFeatures) gpa(device, "vkGetDeviceGroupPeerMemoryFeatures");
- table->CmdSetDeviceMask = (PFN_vkCmdSetDeviceMask) gpa(device, "vkCmdSetDeviceMask");
- table->CmdDispatchBase = (PFN_vkCmdDispatchBase) gpa(device, "vkCmdDispatchBase");
- table->GetImageMemoryRequirements2 = (PFN_vkGetImageMemoryRequirements2) gpa(device, "vkGetImageMemoryRequirements2");
- table->GetBufferMemoryRequirements2 = (PFN_vkGetBufferMemoryRequirements2) gpa(device, "vkGetBufferMemoryRequirements2");
- table->GetImageSparseMemoryRequirements2 = (PFN_vkGetImageSparseMemoryRequirements2) gpa(device, "vkGetImageSparseMemoryRequirements2");
- table->TrimCommandPool = (PFN_vkTrimCommandPool) gpa(device, "vkTrimCommandPool");
- table->GetDeviceQueue2 = (PFN_vkGetDeviceQueue2) gpa(device, "vkGetDeviceQueue2");
- table->CreateSamplerYcbcrConversion = (PFN_vkCreateSamplerYcbcrConversion) gpa(device, "vkCreateSamplerYcbcrConversion");
- table->DestroySamplerYcbcrConversion = (PFN_vkDestroySamplerYcbcrConversion) gpa(device, "vkDestroySamplerYcbcrConversion");
- table->CreateDescriptorUpdateTemplate = (PFN_vkCreateDescriptorUpdateTemplate) gpa(device, "vkCreateDescriptorUpdateTemplate");
- table->DestroyDescriptorUpdateTemplate = (PFN_vkDestroyDescriptorUpdateTemplate) gpa(device, "vkDestroyDescriptorUpdateTemplate");
- table->UpdateDescriptorSetWithTemplate = (PFN_vkUpdateDescriptorSetWithTemplate) gpa(device, "vkUpdateDescriptorSetWithTemplate");
- table->GetDescriptorSetLayoutSupport = (PFN_vkGetDescriptorSetLayoutSupport) gpa(device, "vkGetDescriptorSetLayoutSupport");
- table->CmdDrawIndirectCount = (PFN_vkCmdDrawIndirectCount) gpa(device, "vkCmdDrawIndirectCount");
- table->CmdDrawIndexedIndirectCount = (PFN_vkCmdDrawIndexedIndirectCount) gpa(device, "vkCmdDrawIndexedIndirectCount");
- table->CreateRenderPass2 = (PFN_vkCreateRenderPass2) gpa(device, "vkCreateRenderPass2");
- table->CmdBeginRenderPass2 = (PFN_vkCmdBeginRenderPass2) gpa(device, "vkCmdBeginRenderPass2");
- table->CmdNextSubpass2 = (PFN_vkCmdNextSubpass2) gpa(device, "vkCmdNextSubpass2");
- table->CmdEndRenderPass2 = (PFN_vkCmdEndRenderPass2) gpa(device, "vkCmdEndRenderPass2");
- table->ResetQueryPool = (PFN_vkResetQueryPool) gpa(device, "vkResetQueryPool");
- table->GetSemaphoreCounterValue = (PFN_vkGetSemaphoreCounterValue) gpa(device, "vkGetSemaphoreCounterValue");
- table->WaitSemaphores = (PFN_vkWaitSemaphores) gpa(device, "vkWaitSemaphores");
- table->SignalSemaphore = (PFN_vkSignalSemaphore) gpa(device, "vkSignalSemaphore");
- table->GetBufferDeviceAddress = (PFN_vkGetBufferDeviceAddress) gpa(device, "vkGetBufferDeviceAddress");
- table->GetBufferOpaqueCaptureAddress = (PFN_vkGetBufferOpaqueCaptureAddress) gpa(device, "vkGetBufferOpaqueCaptureAddress");
- table->GetDeviceMemoryOpaqueCaptureAddress = (PFN_vkGetDeviceMemoryOpaqueCaptureAddress) gpa(device, "vkGetDeviceMemoryOpaqueCaptureAddress");
- table->CreateSwapchainKHR = (PFN_vkCreateSwapchainKHR) gpa(device, "vkCreateSwapchainKHR");
- if (table->CreateSwapchainKHR == nullptr) { table->CreateSwapchainKHR = (PFN_vkCreateSwapchainKHR)StubCreateSwapchainKHR; }
- table->DestroySwapchainKHR = (PFN_vkDestroySwapchainKHR) gpa(device, "vkDestroySwapchainKHR");
- if (table->DestroySwapchainKHR == nullptr) { table->DestroySwapchainKHR = (PFN_vkDestroySwapchainKHR)StubDestroySwapchainKHR; }
- table->GetSwapchainImagesKHR = (PFN_vkGetSwapchainImagesKHR) gpa(device, "vkGetSwapchainImagesKHR");
- if (table->GetSwapchainImagesKHR == nullptr) { table->GetSwapchainImagesKHR = (PFN_vkGetSwapchainImagesKHR)StubGetSwapchainImagesKHR; }
- table->AcquireNextImageKHR = (PFN_vkAcquireNextImageKHR) gpa(device, "vkAcquireNextImageKHR");
- if (table->AcquireNextImageKHR == nullptr) { table->AcquireNextImageKHR = (PFN_vkAcquireNextImageKHR)StubAcquireNextImageKHR; }
- table->QueuePresentKHR = (PFN_vkQueuePresentKHR) gpa(device, "vkQueuePresentKHR");
- if (table->QueuePresentKHR == nullptr) { table->QueuePresentKHR = (PFN_vkQueuePresentKHR)StubQueuePresentKHR; }
- table->GetDeviceGroupPresentCapabilitiesKHR = (PFN_vkGetDeviceGroupPresentCapabilitiesKHR) gpa(device, "vkGetDeviceGroupPresentCapabilitiesKHR");
- if (table->GetDeviceGroupPresentCapabilitiesKHR == nullptr) { table->GetDeviceGroupPresentCapabilitiesKHR = (PFN_vkGetDeviceGroupPresentCapabilitiesKHR)StubGetDeviceGroupPresentCapabilitiesKHR; }
- table->GetDeviceGroupSurfacePresentModesKHR = (PFN_vkGetDeviceGroupSurfacePresentModesKHR) gpa(device, "vkGetDeviceGroupSurfacePresentModesKHR");
- if (table->GetDeviceGroupSurfacePresentModesKHR == nullptr) { table->GetDeviceGroupSurfacePresentModesKHR = (PFN_vkGetDeviceGroupSurfacePresentModesKHR)StubGetDeviceGroupSurfacePresentModesKHR; }
- table->AcquireNextImage2KHR = (PFN_vkAcquireNextImage2KHR) gpa(device, "vkAcquireNextImage2KHR");
- if (table->AcquireNextImage2KHR == nullptr) { table->AcquireNextImage2KHR = (PFN_vkAcquireNextImage2KHR)StubAcquireNextImage2KHR; }
- table->CreateSharedSwapchainsKHR = (PFN_vkCreateSharedSwapchainsKHR) gpa(device, "vkCreateSharedSwapchainsKHR");
- if (table->CreateSharedSwapchainsKHR == nullptr) { table->CreateSharedSwapchainsKHR = (PFN_vkCreateSharedSwapchainsKHR)StubCreateSharedSwapchainsKHR; }
- table->GetDeviceGroupPeerMemoryFeaturesKHR = (PFN_vkGetDeviceGroupPeerMemoryFeaturesKHR) gpa(device, "vkGetDeviceGroupPeerMemoryFeaturesKHR");
- if (table->GetDeviceGroupPeerMemoryFeaturesKHR == nullptr) { table->GetDeviceGroupPeerMemoryFeaturesKHR = (PFN_vkGetDeviceGroupPeerMemoryFeaturesKHR)StubGetDeviceGroupPeerMemoryFeaturesKHR; }
- table->CmdSetDeviceMaskKHR = (PFN_vkCmdSetDeviceMaskKHR) gpa(device, "vkCmdSetDeviceMaskKHR");
- if (table->CmdSetDeviceMaskKHR == nullptr) { table->CmdSetDeviceMaskKHR = (PFN_vkCmdSetDeviceMaskKHR)StubCmdSetDeviceMaskKHR; }
- table->CmdDispatchBaseKHR = (PFN_vkCmdDispatchBaseKHR) gpa(device, "vkCmdDispatchBaseKHR");
- if (table->CmdDispatchBaseKHR == nullptr) { table->CmdDispatchBaseKHR = (PFN_vkCmdDispatchBaseKHR)StubCmdDispatchBaseKHR; }
- table->TrimCommandPoolKHR = (PFN_vkTrimCommandPoolKHR) gpa(device, "vkTrimCommandPoolKHR");
- if (table->TrimCommandPoolKHR == nullptr) { table->TrimCommandPoolKHR = (PFN_vkTrimCommandPoolKHR)StubTrimCommandPoolKHR; }
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- table->GetMemoryWin32HandleKHR = (PFN_vkGetMemoryWin32HandleKHR) gpa(device, "vkGetMemoryWin32HandleKHR");
- if (table->GetMemoryWin32HandleKHR == nullptr) { table->GetMemoryWin32HandleKHR = (PFN_vkGetMemoryWin32HandleKHR)StubGetMemoryWin32HandleKHR; }
-#endif // VK_USE_PLATFORM_WIN32_KHR
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- table->GetMemoryWin32HandlePropertiesKHR = (PFN_vkGetMemoryWin32HandlePropertiesKHR) gpa(device, "vkGetMemoryWin32HandlePropertiesKHR");
- if (table->GetMemoryWin32HandlePropertiesKHR == nullptr) { table->GetMemoryWin32HandlePropertiesKHR = (PFN_vkGetMemoryWin32HandlePropertiesKHR)StubGetMemoryWin32HandlePropertiesKHR; }
-#endif // VK_USE_PLATFORM_WIN32_KHR
- table->GetMemoryFdKHR = (PFN_vkGetMemoryFdKHR) gpa(device, "vkGetMemoryFdKHR");
- if (table->GetMemoryFdKHR == nullptr) { table->GetMemoryFdKHR = (PFN_vkGetMemoryFdKHR)StubGetMemoryFdKHR; }
- table->GetMemoryFdPropertiesKHR = (PFN_vkGetMemoryFdPropertiesKHR) gpa(device, "vkGetMemoryFdPropertiesKHR");
- if (table->GetMemoryFdPropertiesKHR == nullptr) { table->GetMemoryFdPropertiesKHR = (PFN_vkGetMemoryFdPropertiesKHR)StubGetMemoryFdPropertiesKHR; }
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- table->ImportSemaphoreWin32HandleKHR = (PFN_vkImportSemaphoreWin32HandleKHR) gpa(device, "vkImportSemaphoreWin32HandleKHR");
- if (table->ImportSemaphoreWin32HandleKHR == nullptr) { table->ImportSemaphoreWin32HandleKHR = (PFN_vkImportSemaphoreWin32HandleKHR)StubImportSemaphoreWin32HandleKHR; }
-#endif // VK_USE_PLATFORM_WIN32_KHR
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- table->GetSemaphoreWin32HandleKHR = (PFN_vkGetSemaphoreWin32HandleKHR) gpa(device, "vkGetSemaphoreWin32HandleKHR");
- if (table->GetSemaphoreWin32HandleKHR == nullptr) { table->GetSemaphoreWin32HandleKHR = (PFN_vkGetSemaphoreWin32HandleKHR)StubGetSemaphoreWin32HandleKHR; }
-#endif // VK_USE_PLATFORM_WIN32_KHR
- table->ImportSemaphoreFdKHR = (PFN_vkImportSemaphoreFdKHR) gpa(device, "vkImportSemaphoreFdKHR");
- if (table->ImportSemaphoreFdKHR == nullptr) { table->ImportSemaphoreFdKHR = (PFN_vkImportSemaphoreFdKHR)StubImportSemaphoreFdKHR; }
- table->GetSemaphoreFdKHR = (PFN_vkGetSemaphoreFdKHR) gpa(device, "vkGetSemaphoreFdKHR");
- if (table->GetSemaphoreFdKHR == nullptr) { table->GetSemaphoreFdKHR = (PFN_vkGetSemaphoreFdKHR)StubGetSemaphoreFdKHR; }
- table->CmdPushDescriptorSetKHR = (PFN_vkCmdPushDescriptorSetKHR) gpa(device, "vkCmdPushDescriptorSetKHR");
- if (table->CmdPushDescriptorSetKHR == nullptr) { table->CmdPushDescriptorSetKHR = (PFN_vkCmdPushDescriptorSetKHR)StubCmdPushDescriptorSetKHR; }
- table->CmdPushDescriptorSetWithTemplateKHR = (PFN_vkCmdPushDescriptorSetWithTemplateKHR) gpa(device, "vkCmdPushDescriptorSetWithTemplateKHR");
- if (table->CmdPushDescriptorSetWithTemplateKHR == nullptr) { table->CmdPushDescriptorSetWithTemplateKHR = (PFN_vkCmdPushDescriptorSetWithTemplateKHR)StubCmdPushDescriptorSetWithTemplateKHR; }
- table->CreateDescriptorUpdateTemplateKHR = (PFN_vkCreateDescriptorUpdateTemplateKHR) gpa(device, "vkCreateDescriptorUpdateTemplateKHR");
- if (table->CreateDescriptorUpdateTemplateKHR == nullptr) { table->CreateDescriptorUpdateTemplateKHR = (PFN_vkCreateDescriptorUpdateTemplateKHR)StubCreateDescriptorUpdateTemplateKHR; }
- table->DestroyDescriptorUpdateTemplateKHR = (PFN_vkDestroyDescriptorUpdateTemplateKHR) gpa(device, "vkDestroyDescriptorUpdateTemplateKHR");
- if (table->DestroyDescriptorUpdateTemplateKHR == nullptr) { table->DestroyDescriptorUpdateTemplateKHR = (PFN_vkDestroyDescriptorUpdateTemplateKHR)StubDestroyDescriptorUpdateTemplateKHR; }
- table->UpdateDescriptorSetWithTemplateKHR = (PFN_vkUpdateDescriptorSetWithTemplateKHR) gpa(device, "vkUpdateDescriptorSetWithTemplateKHR");
- if (table->UpdateDescriptorSetWithTemplateKHR == nullptr) { table->UpdateDescriptorSetWithTemplateKHR = (PFN_vkUpdateDescriptorSetWithTemplateKHR)StubUpdateDescriptorSetWithTemplateKHR; }
- table->CreateRenderPass2KHR = (PFN_vkCreateRenderPass2KHR) gpa(device, "vkCreateRenderPass2KHR");
- if (table->CreateRenderPass2KHR == nullptr) { table->CreateRenderPass2KHR = (PFN_vkCreateRenderPass2KHR)StubCreateRenderPass2KHR; }
- table->CmdBeginRenderPass2KHR = (PFN_vkCmdBeginRenderPass2KHR) gpa(device, "vkCmdBeginRenderPass2KHR");
- if (table->CmdBeginRenderPass2KHR == nullptr) { table->CmdBeginRenderPass2KHR = (PFN_vkCmdBeginRenderPass2KHR)StubCmdBeginRenderPass2KHR; }
- table->CmdNextSubpass2KHR = (PFN_vkCmdNextSubpass2KHR) gpa(device, "vkCmdNextSubpass2KHR");
- if (table->CmdNextSubpass2KHR == nullptr) { table->CmdNextSubpass2KHR = (PFN_vkCmdNextSubpass2KHR)StubCmdNextSubpass2KHR; }
- table->CmdEndRenderPass2KHR = (PFN_vkCmdEndRenderPass2KHR) gpa(device, "vkCmdEndRenderPass2KHR");
- if (table->CmdEndRenderPass2KHR == nullptr) { table->CmdEndRenderPass2KHR = (PFN_vkCmdEndRenderPass2KHR)StubCmdEndRenderPass2KHR; }
- table->GetSwapchainStatusKHR = (PFN_vkGetSwapchainStatusKHR) gpa(device, "vkGetSwapchainStatusKHR");
- if (table->GetSwapchainStatusKHR == nullptr) { table->GetSwapchainStatusKHR = (PFN_vkGetSwapchainStatusKHR)StubGetSwapchainStatusKHR; }
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- table->ImportFenceWin32HandleKHR = (PFN_vkImportFenceWin32HandleKHR) gpa(device, "vkImportFenceWin32HandleKHR");
- if (table->ImportFenceWin32HandleKHR == nullptr) { table->ImportFenceWin32HandleKHR = (PFN_vkImportFenceWin32HandleKHR)StubImportFenceWin32HandleKHR; }
-#endif // VK_USE_PLATFORM_WIN32_KHR
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- table->GetFenceWin32HandleKHR = (PFN_vkGetFenceWin32HandleKHR) gpa(device, "vkGetFenceWin32HandleKHR");
- if (table->GetFenceWin32HandleKHR == nullptr) { table->GetFenceWin32HandleKHR = (PFN_vkGetFenceWin32HandleKHR)StubGetFenceWin32HandleKHR; }
-#endif // VK_USE_PLATFORM_WIN32_KHR
- table->ImportFenceFdKHR = (PFN_vkImportFenceFdKHR) gpa(device, "vkImportFenceFdKHR");
- if (table->ImportFenceFdKHR == nullptr) { table->ImportFenceFdKHR = (PFN_vkImportFenceFdKHR)StubImportFenceFdKHR; }
- table->GetFenceFdKHR = (PFN_vkGetFenceFdKHR) gpa(device, "vkGetFenceFdKHR");
- if (table->GetFenceFdKHR == nullptr) { table->GetFenceFdKHR = (PFN_vkGetFenceFdKHR)StubGetFenceFdKHR; }
- table->AcquireProfilingLockKHR = (PFN_vkAcquireProfilingLockKHR) gpa(device, "vkAcquireProfilingLockKHR");
- if (table->AcquireProfilingLockKHR == nullptr) { table->AcquireProfilingLockKHR = (PFN_vkAcquireProfilingLockKHR)StubAcquireProfilingLockKHR; }
- table->ReleaseProfilingLockKHR = (PFN_vkReleaseProfilingLockKHR) gpa(device, "vkReleaseProfilingLockKHR");
- if (table->ReleaseProfilingLockKHR == nullptr) { table->ReleaseProfilingLockKHR = (PFN_vkReleaseProfilingLockKHR)StubReleaseProfilingLockKHR; }
- table->GetImageMemoryRequirements2KHR = (PFN_vkGetImageMemoryRequirements2KHR) gpa(device, "vkGetImageMemoryRequirements2KHR");
- if (table->GetImageMemoryRequirements2KHR == nullptr) { table->GetImageMemoryRequirements2KHR = (PFN_vkGetImageMemoryRequirements2KHR)StubGetImageMemoryRequirements2KHR; }
- table->GetBufferMemoryRequirements2KHR = (PFN_vkGetBufferMemoryRequirements2KHR) gpa(device, "vkGetBufferMemoryRequirements2KHR");
- if (table->GetBufferMemoryRequirements2KHR == nullptr) { table->GetBufferMemoryRequirements2KHR = (PFN_vkGetBufferMemoryRequirements2KHR)StubGetBufferMemoryRequirements2KHR; }
- table->GetImageSparseMemoryRequirements2KHR = (PFN_vkGetImageSparseMemoryRequirements2KHR) gpa(device, "vkGetImageSparseMemoryRequirements2KHR");
- if (table->GetImageSparseMemoryRequirements2KHR == nullptr) { table->GetImageSparseMemoryRequirements2KHR = (PFN_vkGetImageSparseMemoryRequirements2KHR)StubGetImageSparseMemoryRequirements2KHR; }
- table->CreateSamplerYcbcrConversionKHR = (PFN_vkCreateSamplerYcbcrConversionKHR) gpa(device, "vkCreateSamplerYcbcrConversionKHR");
- if (table->CreateSamplerYcbcrConversionKHR == nullptr) { table->CreateSamplerYcbcrConversionKHR = (PFN_vkCreateSamplerYcbcrConversionKHR)StubCreateSamplerYcbcrConversionKHR; }
- table->DestroySamplerYcbcrConversionKHR = (PFN_vkDestroySamplerYcbcrConversionKHR) gpa(device, "vkDestroySamplerYcbcrConversionKHR");
- if (table->DestroySamplerYcbcrConversionKHR == nullptr) { table->DestroySamplerYcbcrConversionKHR = (PFN_vkDestroySamplerYcbcrConversionKHR)StubDestroySamplerYcbcrConversionKHR; }
- table->BindBufferMemory2KHR = (PFN_vkBindBufferMemory2KHR) gpa(device, "vkBindBufferMemory2KHR");
- if (table->BindBufferMemory2KHR == nullptr) { table->BindBufferMemory2KHR = (PFN_vkBindBufferMemory2KHR)StubBindBufferMemory2KHR; }
- table->BindImageMemory2KHR = (PFN_vkBindImageMemory2KHR) gpa(device, "vkBindImageMemory2KHR");
- if (table->BindImageMemory2KHR == nullptr) { table->BindImageMemory2KHR = (PFN_vkBindImageMemory2KHR)StubBindImageMemory2KHR; }
- table->GetDescriptorSetLayoutSupportKHR = (PFN_vkGetDescriptorSetLayoutSupportKHR) gpa(device, "vkGetDescriptorSetLayoutSupportKHR");
- if (table->GetDescriptorSetLayoutSupportKHR == nullptr) { table->GetDescriptorSetLayoutSupportKHR = (PFN_vkGetDescriptorSetLayoutSupportKHR)StubGetDescriptorSetLayoutSupportKHR; }
- table->CmdDrawIndirectCountKHR = (PFN_vkCmdDrawIndirectCountKHR) gpa(device, "vkCmdDrawIndirectCountKHR");
- if (table->CmdDrawIndirectCountKHR == nullptr) { table->CmdDrawIndirectCountKHR = (PFN_vkCmdDrawIndirectCountKHR)StubCmdDrawIndirectCountKHR; }
- table->CmdDrawIndexedIndirectCountKHR = (PFN_vkCmdDrawIndexedIndirectCountKHR) gpa(device, "vkCmdDrawIndexedIndirectCountKHR");
- if (table->CmdDrawIndexedIndirectCountKHR == nullptr) { table->CmdDrawIndexedIndirectCountKHR = (PFN_vkCmdDrawIndexedIndirectCountKHR)StubCmdDrawIndexedIndirectCountKHR; }
- table->GetSemaphoreCounterValueKHR = (PFN_vkGetSemaphoreCounterValueKHR) gpa(device, "vkGetSemaphoreCounterValueKHR");
- if (table->GetSemaphoreCounterValueKHR == nullptr) { table->GetSemaphoreCounterValueKHR = (PFN_vkGetSemaphoreCounterValueKHR)StubGetSemaphoreCounterValueKHR; }
- table->WaitSemaphoresKHR = (PFN_vkWaitSemaphoresKHR) gpa(device, "vkWaitSemaphoresKHR");
- if (table->WaitSemaphoresKHR == nullptr) { table->WaitSemaphoresKHR = (PFN_vkWaitSemaphoresKHR)StubWaitSemaphoresKHR; }
- table->SignalSemaphoreKHR = (PFN_vkSignalSemaphoreKHR) gpa(device, "vkSignalSemaphoreKHR");
- if (table->SignalSemaphoreKHR == nullptr) { table->SignalSemaphoreKHR = (PFN_vkSignalSemaphoreKHR)StubSignalSemaphoreKHR; }
- table->CmdSetFragmentShadingRateKHR = (PFN_vkCmdSetFragmentShadingRateKHR) gpa(device, "vkCmdSetFragmentShadingRateKHR");
- if (table->CmdSetFragmentShadingRateKHR == nullptr) { table->CmdSetFragmentShadingRateKHR = (PFN_vkCmdSetFragmentShadingRateKHR)StubCmdSetFragmentShadingRateKHR; }
- table->GetBufferDeviceAddressKHR = (PFN_vkGetBufferDeviceAddressKHR) gpa(device, "vkGetBufferDeviceAddressKHR");
- if (table->GetBufferDeviceAddressKHR == nullptr) { table->GetBufferDeviceAddressKHR = (PFN_vkGetBufferDeviceAddressKHR)StubGetBufferDeviceAddressKHR; }
- table->GetBufferOpaqueCaptureAddressKHR = (PFN_vkGetBufferOpaqueCaptureAddressKHR) gpa(device, "vkGetBufferOpaqueCaptureAddressKHR");
- if (table->GetBufferOpaqueCaptureAddressKHR == nullptr) { table->GetBufferOpaqueCaptureAddressKHR = (PFN_vkGetBufferOpaqueCaptureAddressKHR)StubGetBufferOpaqueCaptureAddressKHR; }
- table->GetDeviceMemoryOpaqueCaptureAddressKHR = (PFN_vkGetDeviceMemoryOpaqueCaptureAddressKHR) gpa(device, "vkGetDeviceMemoryOpaqueCaptureAddressKHR");
- if (table->GetDeviceMemoryOpaqueCaptureAddressKHR == nullptr) { table->GetDeviceMemoryOpaqueCaptureAddressKHR = (PFN_vkGetDeviceMemoryOpaqueCaptureAddressKHR)StubGetDeviceMemoryOpaqueCaptureAddressKHR; }
- table->CreateDeferredOperationKHR = (PFN_vkCreateDeferredOperationKHR) gpa(device, "vkCreateDeferredOperationKHR");
- if (table->CreateDeferredOperationKHR == nullptr) { table->CreateDeferredOperationKHR = (PFN_vkCreateDeferredOperationKHR)StubCreateDeferredOperationKHR; }
- table->DestroyDeferredOperationKHR = (PFN_vkDestroyDeferredOperationKHR) gpa(device, "vkDestroyDeferredOperationKHR");
- if (table->DestroyDeferredOperationKHR == nullptr) { table->DestroyDeferredOperationKHR = (PFN_vkDestroyDeferredOperationKHR)StubDestroyDeferredOperationKHR; }
- table->GetDeferredOperationMaxConcurrencyKHR = (PFN_vkGetDeferredOperationMaxConcurrencyKHR) gpa(device, "vkGetDeferredOperationMaxConcurrencyKHR");
- if (table->GetDeferredOperationMaxConcurrencyKHR == nullptr) { table->GetDeferredOperationMaxConcurrencyKHR = (PFN_vkGetDeferredOperationMaxConcurrencyKHR)StubGetDeferredOperationMaxConcurrencyKHR; }
- table->GetDeferredOperationResultKHR = (PFN_vkGetDeferredOperationResultKHR) gpa(device, "vkGetDeferredOperationResultKHR");
- if (table->GetDeferredOperationResultKHR == nullptr) { table->GetDeferredOperationResultKHR = (PFN_vkGetDeferredOperationResultKHR)StubGetDeferredOperationResultKHR; }
- table->DeferredOperationJoinKHR = (PFN_vkDeferredOperationJoinKHR) gpa(device, "vkDeferredOperationJoinKHR");
- if (table->DeferredOperationJoinKHR == nullptr) { table->DeferredOperationJoinKHR = (PFN_vkDeferredOperationJoinKHR)StubDeferredOperationJoinKHR; }
- table->GetPipelineExecutablePropertiesKHR = (PFN_vkGetPipelineExecutablePropertiesKHR) gpa(device, "vkGetPipelineExecutablePropertiesKHR");
- if (table->GetPipelineExecutablePropertiesKHR == nullptr) { table->GetPipelineExecutablePropertiesKHR = (PFN_vkGetPipelineExecutablePropertiesKHR)StubGetPipelineExecutablePropertiesKHR; }
- table->GetPipelineExecutableStatisticsKHR = (PFN_vkGetPipelineExecutableStatisticsKHR) gpa(device, "vkGetPipelineExecutableStatisticsKHR");
- if (table->GetPipelineExecutableStatisticsKHR == nullptr) { table->GetPipelineExecutableStatisticsKHR = (PFN_vkGetPipelineExecutableStatisticsKHR)StubGetPipelineExecutableStatisticsKHR; }
- table->GetPipelineExecutableInternalRepresentationsKHR = (PFN_vkGetPipelineExecutableInternalRepresentationsKHR) gpa(device, "vkGetPipelineExecutableInternalRepresentationsKHR");
- if (table->GetPipelineExecutableInternalRepresentationsKHR == nullptr) { table->GetPipelineExecutableInternalRepresentationsKHR = (PFN_vkGetPipelineExecutableInternalRepresentationsKHR)StubGetPipelineExecutableInternalRepresentationsKHR; }
- table->CmdCopyBuffer2KHR = (PFN_vkCmdCopyBuffer2KHR) gpa(device, "vkCmdCopyBuffer2KHR");
- if (table->CmdCopyBuffer2KHR == nullptr) { table->CmdCopyBuffer2KHR = (PFN_vkCmdCopyBuffer2KHR)StubCmdCopyBuffer2KHR; }
- table->CmdCopyImage2KHR = (PFN_vkCmdCopyImage2KHR) gpa(device, "vkCmdCopyImage2KHR");
- if (table->CmdCopyImage2KHR == nullptr) { table->CmdCopyImage2KHR = (PFN_vkCmdCopyImage2KHR)StubCmdCopyImage2KHR; }
- table->CmdCopyBufferToImage2KHR = (PFN_vkCmdCopyBufferToImage2KHR) gpa(device, "vkCmdCopyBufferToImage2KHR");
- if (table->CmdCopyBufferToImage2KHR == nullptr) { table->CmdCopyBufferToImage2KHR = (PFN_vkCmdCopyBufferToImage2KHR)StubCmdCopyBufferToImage2KHR; }
- table->CmdCopyImageToBuffer2KHR = (PFN_vkCmdCopyImageToBuffer2KHR) gpa(device, "vkCmdCopyImageToBuffer2KHR");
- if (table->CmdCopyImageToBuffer2KHR == nullptr) { table->CmdCopyImageToBuffer2KHR = (PFN_vkCmdCopyImageToBuffer2KHR)StubCmdCopyImageToBuffer2KHR; }
- table->CmdBlitImage2KHR = (PFN_vkCmdBlitImage2KHR) gpa(device, "vkCmdBlitImage2KHR");
- if (table->CmdBlitImage2KHR == nullptr) { table->CmdBlitImage2KHR = (PFN_vkCmdBlitImage2KHR)StubCmdBlitImage2KHR; }
- table->CmdResolveImage2KHR = (PFN_vkCmdResolveImage2KHR) gpa(device, "vkCmdResolveImage2KHR");
- if (table->CmdResolveImage2KHR == nullptr) { table->CmdResolveImage2KHR = (PFN_vkCmdResolveImage2KHR)StubCmdResolveImage2KHR; }
- table->DebugMarkerSetObjectTagEXT = (PFN_vkDebugMarkerSetObjectTagEXT) gpa(device, "vkDebugMarkerSetObjectTagEXT");
- if (table->DebugMarkerSetObjectTagEXT == nullptr) { table->DebugMarkerSetObjectTagEXT = (PFN_vkDebugMarkerSetObjectTagEXT)StubDebugMarkerSetObjectTagEXT; }
- table->DebugMarkerSetObjectNameEXT = (PFN_vkDebugMarkerSetObjectNameEXT) gpa(device, "vkDebugMarkerSetObjectNameEXT");
- if (table->DebugMarkerSetObjectNameEXT == nullptr) { table->DebugMarkerSetObjectNameEXT = (PFN_vkDebugMarkerSetObjectNameEXT)StubDebugMarkerSetObjectNameEXT; }
- table->CmdDebugMarkerBeginEXT = (PFN_vkCmdDebugMarkerBeginEXT) gpa(device, "vkCmdDebugMarkerBeginEXT");
- if (table->CmdDebugMarkerBeginEXT == nullptr) { table->CmdDebugMarkerBeginEXT = (PFN_vkCmdDebugMarkerBeginEXT)StubCmdDebugMarkerBeginEXT; }
- table->CmdDebugMarkerEndEXT = (PFN_vkCmdDebugMarkerEndEXT) gpa(device, "vkCmdDebugMarkerEndEXT");
- if (table->CmdDebugMarkerEndEXT == nullptr) { table->CmdDebugMarkerEndEXT = (PFN_vkCmdDebugMarkerEndEXT)StubCmdDebugMarkerEndEXT; }
- table->CmdDebugMarkerInsertEXT = (PFN_vkCmdDebugMarkerInsertEXT) gpa(device, "vkCmdDebugMarkerInsertEXT");
- if (table->CmdDebugMarkerInsertEXT == nullptr) { table->CmdDebugMarkerInsertEXT = (PFN_vkCmdDebugMarkerInsertEXT)StubCmdDebugMarkerInsertEXT; }
- table->CmdBindTransformFeedbackBuffersEXT = (PFN_vkCmdBindTransformFeedbackBuffersEXT) gpa(device, "vkCmdBindTransformFeedbackBuffersEXT");
- if (table->CmdBindTransformFeedbackBuffersEXT == nullptr) { table->CmdBindTransformFeedbackBuffersEXT = (PFN_vkCmdBindTransformFeedbackBuffersEXT)StubCmdBindTransformFeedbackBuffersEXT; }
- table->CmdBeginTransformFeedbackEXT = (PFN_vkCmdBeginTransformFeedbackEXT) gpa(device, "vkCmdBeginTransformFeedbackEXT");
- if (table->CmdBeginTransformFeedbackEXT == nullptr) { table->CmdBeginTransformFeedbackEXT = (PFN_vkCmdBeginTransformFeedbackEXT)StubCmdBeginTransformFeedbackEXT; }
- table->CmdEndTransformFeedbackEXT = (PFN_vkCmdEndTransformFeedbackEXT) gpa(device, "vkCmdEndTransformFeedbackEXT");
- if (table->CmdEndTransformFeedbackEXT == nullptr) { table->CmdEndTransformFeedbackEXT = (PFN_vkCmdEndTransformFeedbackEXT)StubCmdEndTransformFeedbackEXT; }
- table->CmdBeginQueryIndexedEXT = (PFN_vkCmdBeginQueryIndexedEXT) gpa(device, "vkCmdBeginQueryIndexedEXT");
- if (table->CmdBeginQueryIndexedEXT == nullptr) { table->CmdBeginQueryIndexedEXT = (PFN_vkCmdBeginQueryIndexedEXT)StubCmdBeginQueryIndexedEXT; }
- table->CmdEndQueryIndexedEXT = (PFN_vkCmdEndQueryIndexedEXT) gpa(device, "vkCmdEndQueryIndexedEXT");
- if (table->CmdEndQueryIndexedEXT == nullptr) { table->CmdEndQueryIndexedEXT = (PFN_vkCmdEndQueryIndexedEXT)StubCmdEndQueryIndexedEXT; }
- table->CmdDrawIndirectByteCountEXT = (PFN_vkCmdDrawIndirectByteCountEXT) gpa(device, "vkCmdDrawIndirectByteCountEXT");
- if (table->CmdDrawIndirectByteCountEXT == nullptr) { table->CmdDrawIndirectByteCountEXT = (PFN_vkCmdDrawIndirectByteCountEXT)StubCmdDrawIndirectByteCountEXT; }
- table->GetImageViewHandleNVX = (PFN_vkGetImageViewHandleNVX) gpa(device, "vkGetImageViewHandleNVX");
- if (table->GetImageViewHandleNVX == nullptr) { table->GetImageViewHandleNVX = (PFN_vkGetImageViewHandleNVX)StubGetImageViewHandleNVX; }
- table->GetImageViewAddressNVX = (PFN_vkGetImageViewAddressNVX) gpa(device, "vkGetImageViewAddressNVX");
- if (table->GetImageViewAddressNVX == nullptr) { table->GetImageViewAddressNVX = (PFN_vkGetImageViewAddressNVX)StubGetImageViewAddressNVX; }
- table->CmdDrawIndirectCountAMD = (PFN_vkCmdDrawIndirectCountAMD) gpa(device, "vkCmdDrawIndirectCountAMD");
- if (table->CmdDrawIndirectCountAMD == nullptr) { table->CmdDrawIndirectCountAMD = (PFN_vkCmdDrawIndirectCountAMD)StubCmdDrawIndirectCountAMD; }
- table->CmdDrawIndexedIndirectCountAMD = (PFN_vkCmdDrawIndexedIndirectCountAMD) gpa(device, "vkCmdDrawIndexedIndirectCountAMD");
- if (table->CmdDrawIndexedIndirectCountAMD == nullptr) { table->CmdDrawIndexedIndirectCountAMD = (PFN_vkCmdDrawIndexedIndirectCountAMD)StubCmdDrawIndexedIndirectCountAMD; }
- table->GetShaderInfoAMD = (PFN_vkGetShaderInfoAMD) gpa(device, "vkGetShaderInfoAMD");
- if (table->GetShaderInfoAMD == nullptr) { table->GetShaderInfoAMD = (PFN_vkGetShaderInfoAMD)StubGetShaderInfoAMD; }
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- table->GetMemoryWin32HandleNV = (PFN_vkGetMemoryWin32HandleNV) gpa(device, "vkGetMemoryWin32HandleNV");
- if (table->GetMemoryWin32HandleNV == nullptr) { table->GetMemoryWin32HandleNV = (PFN_vkGetMemoryWin32HandleNV)StubGetMemoryWin32HandleNV; }
-#endif // VK_USE_PLATFORM_WIN32_KHR
- table->CmdBeginConditionalRenderingEXT = (PFN_vkCmdBeginConditionalRenderingEXT) gpa(device, "vkCmdBeginConditionalRenderingEXT");
- if (table->CmdBeginConditionalRenderingEXT == nullptr) { table->CmdBeginConditionalRenderingEXT = (PFN_vkCmdBeginConditionalRenderingEXT)StubCmdBeginConditionalRenderingEXT; }
- table->CmdEndConditionalRenderingEXT = (PFN_vkCmdEndConditionalRenderingEXT) gpa(device, "vkCmdEndConditionalRenderingEXT");
- if (table->CmdEndConditionalRenderingEXT == nullptr) { table->CmdEndConditionalRenderingEXT = (PFN_vkCmdEndConditionalRenderingEXT)StubCmdEndConditionalRenderingEXT; }
- table->CmdSetViewportWScalingNV = (PFN_vkCmdSetViewportWScalingNV) gpa(device, "vkCmdSetViewportWScalingNV");
- if (table->CmdSetViewportWScalingNV == nullptr) { table->CmdSetViewportWScalingNV = (PFN_vkCmdSetViewportWScalingNV)StubCmdSetViewportWScalingNV; }
- table->DisplayPowerControlEXT = (PFN_vkDisplayPowerControlEXT) gpa(device, "vkDisplayPowerControlEXT");
- if (table->DisplayPowerControlEXT == nullptr) { table->DisplayPowerControlEXT = (PFN_vkDisplayPowerControlEXT)StubDisplayPowerControlEXT; }
- table->RegisterDeviceEventEXT = (PFN_vkRegisterDeviceEventEXT) gpa(device, "vkRegisterDeviceEventEXT");
- if (table->RegisterDeviceEventEXT == nullptr) { table->RegisterDeviceEventEXT = (PFN_vkRegisterDeviceEventEXT)StubRegisterDeviceEventEXT; }
- table->RegisterDisplayEventEXT = (PFN_vkRegisterDisplayEventEXT) gpa(device, "vkRegisterDisplayEventEXT");
- if (table->RegisterDisplayEventEXT == nullptr) { table->RegisterDisplayEventEXT = (PFN_vkRegisterDisplayEventEXT)StubRegisterDisplayEventEXT; }
- table->GetSwapchainCounterEXT = (PFN_vkGetSwapchainCounterEXT) gpa(device, "vkGetSwapchainCounterEXT");
- if (table->GetSwapchainCounterEXT == nullptr) { table->GetSwapchainCounterEXT = (PFN_vkGetSwapchainCounterEXT)StubGetSwapchainCounterEXT; }
- table->GetRefreshCycleDurationGOOGLE = (PFN_vkGetRefreshCycleDurationGOOGLE) gpa(device, "vkGetRefreshCycleDurationGOOGLE");
- if (table->GetRefreshCycleDurationGOOGLE == nullptr) { table->GetRefreshCycleDurationGOOGLE = (PFN_vkGetRefreshCycleDurationGOOGLE)StubGetRefreshCycleDurationGOOGLE; }
- table->GetPastPresentationTimingGOOGLE = (PFN_vkGetPastPresentationTimingGOOGLE) gpa(device, "vkGetPastPresentationTimingGOOGLE");
- if (table->GetPastPresentationTimingGOOGLE == nullptr) { table->GetPastPresentationTimingGOOGLE = (PFN_vkGetPastPresentationTimingGOOGLE)StubGetPastPresentationTimingGOOGLE; }
- table->CmdSetDiscardRectangleEXT = (PFN_vkCmdSetDiscardRectangleEXT) gpa(device, "vkCmdSetDiscardRectangleEXT");
- if (table->CmdSetDiscardRectangleEXT == nullptr) { table->CmdSetDiscardRectangleEXT = (PFN_vkCmdSetDiscardRectangleEXT)StubCmdSetDiscardRectangleEXT; }
- table->SetHdrMetadataEXT = (PFN_vkSetHdrMetadataEXT) gpa(device, "vkSetHdrMetadataEXT");
- if (table->SetHdrMetadataEXT == nullptr) { table->SetHdrMetadataEXT = (PFN_vkSetHdrMetadataEXT)StubSetHdrMetadataEXT; }
- table->SetDebugUtilsObjectNameEXT = (PFN_vkSetDebugUtilsObjectNameEXT) gpa(device, "vkSetDebugUtilsObjectNameEXT");
- table->SetDebugUtilsObjectTagEXT = (PFN_vkSetDebugUtilsObjectTagEXT) gpa(device, "vkSetDebugUtilsObjectTagEXT");
- table->QueueBeginDebugUtilsLabelEXT = (PFN_vkQueueBeginDebugUtilsLabelEXT) gpa(device, "vkQueueBeginDebugUtilsLabelEXT");
- table->QueueEndDebugUtilsLabelEXT = (PFN_vkQueueEndDebugUtilsLabelEXT) gpa(device, "vkQueueEndDebugUtilsLabelEXT");
- table->QueueInsertDebugUtilsLabelEXT = (PFN_vkQueueInsertDebugUtilsLabelEXT) gpa(device, "vkQueueInsertDebugUtilsLabelEXT");
- table->CmdBeginDebugUtilsLabelEXT = (PFN_vkCmdBeginDebugUtilsLabelEXT) gpa(device, "vkCmdBeginDebugUtilsLabelEXT");
- table->CmdEndDebugUtilsLabelEXT = (PFN_vkCmdEndDebugUtilsLabelEXT) gpa(device, "vkCmdEndDebugUtilsLabelEXT");
- table->CmdInsertDebugUtilsLabelEXT = (PFN_vkCmdInsertDebugUtilsLabelEXT) gpa(device, "vkCmdInsertDebugUtilsLabelEXT");
-#ifdef VK_USE_PLATFORM_ANDROID_KHR
- table->GetAndroidHardwareBufferPropertiesANDROID = (PFN_vkGetAndroidHardwareBufferPropertiesANDROID) gpa(device, "vkGetAndroidHardwareBufferPropertiesANDROID");
- if (table->GetAndroidHardwareBufferPropertiesANDROID == nullptr) { table->GetAndroidHardwareBufferPropertiesANDROID = (PFN_vkGetAndroidHardwareBufferPropertiesANDROID)StubGetAndroidHardwareBufferPropertiesANDROID; }
-#endif // VK_USE_PLATFORM_ANDROID_KHR
-#ifdef VK_USE_PLATFORM_ANDROID_KHR
- table->GetMemoryAndroidHardwareBufferANDROID = (PFN_vkGetMemoryAndroidHardwareBufferANDROID) gpa(device, "vkGetMemoryAndroidHardwareBufferANDROID");
- if (table->GetMemoryAndroidHardwareBufferANDROID == nullptr) { table->GetMemoryAndroidHardwareBufferANDROID = (PFN_vkGetMemoryAndroidHardwareBufferANDROID)StubGetMemoryAndroidHardwareBufferANDROID; }
-#endif // VK_USE_PLATFORM_ANDROID_KHR
- table->CmdSetSampleLocationsEXT = (PFN_vkCmdSetSampleLocationsEXT) gpa(device, "vkCmdSetSampleLocationsEXT");
- if (table->CmdSetSampleLocationsEXT == nullptr) { table->CmdSetSampleLocationsEXT = (PFN_vkCmdSetSampleLocationsEXT)StubCmdSetSampleLocationsEXT; }
- table->GetImageDrmFormatModifierPropertiesEXT = (PFN_vkGetImageDrmFormatModifierPropertiesEXT) gpa(device, "vkGetImageDrmFormatModifierPropertiesEXT");
- if (table->GetImageDrmFormatModifierPropertiesEXT == nullptr) { table->GetImageDrmFormatModifierPropertiesEXT = (PFN_vkGetImageDrmFormatModifierPropertiesEXT)StubGetImageDrmFormatModifierPropertiesEXT; }
- table->CreateValidationCacheEXT = (PFN_vkCreateValidationCacheEXT) gpa(device, "vkCreateValidationCacheEXT");
- if (table->CreateValidationCacheEXT == nullptr) { table->CreateValidationCacheEXT = (PFN_vkCreateValidationCacheEXT)StubCreateValidationCacheEXT; }
- table->DestroyValidationCacheEXT = (PFN_vkDestroyValidationCacheEXT) gpa(device, "vkDestroyValidationCacheEXT");
- if (table->DestroyValidationCacheEXT == nullptr) { table->DestroyValidationCacheEXT = (PFN_vkDestroyValidationCacheEXT)StubDestroyValidationCacheEXT; }
- table->MergeValidationCachesEXT = (PFN_vkMergeValidationCachesEXT) gpa(device, "vkMergeValidationCachesEXT");
- if (table->MergeValidationCachesEXT == nullptr) { table->MergeValidationCachesEXT = (PFN_vkMergeValidationCachesEXT)StubMergeValidationCachesEXT; }
- table->GetValidationCacheDataEXT = (PFN_vkGetValidationCacheDataEXT) gpa(device, "vkGetValidationCacheDataEXT");
- if (table->GetValidationCacheDataEXT == nullptr) { table->GetValidationCacheDataEXT = (PFN_vkGetValidationCacheDataEXT)StubGetValidationCacheDataEXT; }
- table->CmdBindShadingRateImageNV = (PFN_vkCmdBindShadingRateImageNV) gpa(device, "vkCmdBindShadingRateImageNV");
- if (table->CmdBindShadingRateImageNV == nullptr) { table->CmdBindShadingRateImageNV = (PFN_vkCmdBindShadingRateImageNV)StubCmdBindShadingRateImageNV; }
- table->CmdSetViewportShadingRatePaletteNV = (PFN_vkCmdSetViewportShadingRatePaletteNV) gpa(device, "vkCmdSetViewportShadingRatePaletteNV");
- if (table->CmdSetViewportShadingRatePaletteNV == nullptr) { table->CmdSetViewportShadingRatePaletteNV = (PFN_vkCmdSetViewportShadingRatePaletteNV)StubCmdSetViewportShadingRatePaletteNV; }
- table->CmdSetCoarseSampleOrderNV = (PFN_vkCmdSetCoarseSampleOrderNV) gpa(device, "vkCmdSetCoarseSampleOrderNV");
- if (table->CmdSetCoarseSampleOrderNV == nullptr) { table->CmdSetCoarseSampleOrderNV = (PFN_vkCmdSetCoarseSampleOrderNV)StubCmdSetCoarseSampleOrderNV; }
- table->CreateAccelerationStructureNV = (PFN_vkCreateAccelerationStructureNV) gpa(device, "vkCreateAccelerationStructureNV");
- if (table->CreateAccelerationStructureNV == nullptr) { table->CreateAccelerationStructureNV = (PFN_vkCreateAccelerationStructureNV)StubCreateAccelerationStructureNV; }
- table->DestroyAccelerationStructureNV = (PFN_vkDestroyAccelerationStructureNV) gpa(device, "vkDestroyAccelerationStructureNV");
- if (table->DestroyAccelerationStructureNV == nullptr) { table->DestroyAccelerationStructureNV = (PFN_vkDestroyAccelerationStructureNV)StubDestroyAccelerationStructureNV; }
- table->GetAccelerationStructureMemoryRequirementsNV = (PFN_vkGetAccelerationStructureMemoryRequirementsNV) gpa(device, "vkGetAccelerationStructureMemoryRequirementsNV");
- if (table->GetAccelerationStructureMemoryRequirementsNV == nullptr) { table->GetAccelerationStructureMemoryRequirementsNV = (PFN_vkGetAccelerationStructureMemoryRequirementsNV)StubGetAccelerationStructureMemoryRequirementsNV; }
- table->BindAccelerationStructureMemoryNV = (PFN_vkBindAccelerationStructureMemoryNV) gpa(device, "vkBindAccelerationStructureMemoryNV");
- if (table->BindAccelerationStructureMemoryNV == nullptr) { table->BindAccelerationStructureMemoryNV = (PFN_vkBindAccelerationStructureMemoryNV)StubBindAccelerationStructureMemoryNV; }
- table->CmdBuildAccelerationStructureNV = (PFN_vkCmdBuildAccelerationStructureNV) gpa(device, "vkCmdBuildAccelerationStructureNV");
- if (table->CmdBuildAccelerationStructureNV == nullptr) { table->CmdBuildAccelerationStructureNV = (PFN_vkCmdBuildAccelerationStructureNV)StubCmdBuildAccelerationStructureNV; }
- table->CmdCopyAccelerationStructureNV = (PFN_vkCmdCopyAccelerationStructureNV) gpa(device, "vkCmdCopyAccelerationStructureNV");
- if (table->CmdCopyAccelerationStructureNV == nullptr) { table->CmdCopyAccelerationStructureNV = (PFN_vkCmdCopyAccelerationStructureNV)StubCmdCopyAccelerationStructureNV; }
- table->CmdTraceRaysNV = (PFN_vkCmdTraceRaysNV) gpa(device, "vkCmdTraceRaysNV");
- if (table->CmdTraceRaysNV == nullptr) { table->CmdTraceRaysNV = (PFN_vkCmdTraceRaysNV)StubCmdTraceRaysNV; }
- table->CreateRayTracingPipelinesNV = (PFN_vkCreateRayTracingPipelinesNV) gpa(device, "vkCreateRayTracingPipelinesNV");
- if (table->CreateRayTracingPipelinesNV == nullptr) { table->CreateRayTracingPipelinesNV = (PFN_vkCreateRayTracingPipelinesNV)StubCreateRayTracingPipelinesNV; }
- table->GetRayTracingShaderGroupHandlesKHR = (PFN_vkGetRayTracingShaderGroupHandlesKHR) gpa(device, "vkGetRayTracingShaderGroupHandlesKHR");
- if (table->GetRayTracingShaderGroupHandlesKHR == nullptr) { table->GetRayTracingShaderGroupHandlesKHR = (PFN_vkGetRayTracingShaderGroupHandlesKHR)StubGetRayTracingShaderGroupHandlesKHR; }
- table->GetRayTracingShaderGroupHandlesNV = (PFN_vkGetRayTracingShaderGroupHandlesNV) gpa(device, "vkGetRayTracingShaderGroupHandlesNV");
- if (table->GetRayTracingShaderGroupHandlesNV == nullptr) { table->GetRayTracingShaderGroupHandlesNV = (PFN_vkGetRayTracingShaderGroupHandlesNV)StubGetRayTracingShaderGroupHandlesNV; }
- table->GetAccelerationStructureHandleNV = (PFN_vkGetAccelerationStructureHandleNV) gpa(device, "vkGetAccelerationStructureHandleNV");
- if (table->GetAccelerationStructureHandleNV == nullptr) { table->GetAccelerationStructureHandleNV = (PFN_vkGetAccelerationStructureHandleNV)StubGetAccelerationStructureHandleNV; }
- table->CmdWriteAccelerationStructuresPropertiesNV = (PFN_vkCmdWriteAccelerationStructuresPropertiesNV) gpa(device, "vkCmdWriteAccelerationStructuresPropertiesNV");
- if (table->CmdWriteAccelerationStructuresPropertiesNV == nullptr) { table->CmdWriteAccelerationStructuresPropertiesNV = (PFN_vkCmdWriteAccelerationStructuresPropertiesNV)StubCmdWriteAccelerationStructuresPropertiesNV; }
- table->CompileDeferredNV = (PFN_vkCompileDeferredNV) gpa(device, "vkCompileDeferredNV");
- if (table->CompileDeferredNV == nullptr) { table->CompileDeferredNV = (PFN_vkCompileDeferredNV)StubCompileDeferredNV; }
- table->GetMemoryHostPointerPropertiesEXT = (PFN_vkGetMemoryHostPointerPropertiesEXT) gpa(device, "vkGetMemoryHostPointerPropertiesEXT");
- if (table->GetMemoryHostPointerPropertiesEXT == nullptr) { table->GetMemoryHostPointerPropertiesEXT = (PFN_vkGetMemoryHostPointerPropertiesEXT)StubGetMemoryHostPointerPropertiesEXT; }
- table->CmdWriteBufferMarkerAMD = (PFN_vkCmdWriteBufferMarkerAMD) gpa(device, "vkCmdWriteBufferMarkerAMD");
- if (table->CmdWriteBufferMarkerAMD == nullptr) { table->CmdWriteBufferMarkerAMD = (PFN_vkCmdWriteBufferMarkerAMD)StubCmdWriteBufferMarkerAMD; }
- table->GetCalibratedTimestampsEXT = (PFN_vkGetCalibratedTimestampsEXT) gpa(device, "vkGetCalibratedTimestampsEXT");
- if (table->GetCalibratedTimestampsEXT == nullptr) { table->GetCalibratedTimestampsEXT = (PFN_vkGetCalibratedTimestampsEXT)StubGetCalibratedTimestampsEXT; }
- table->CmdDrawMeshTasksNV = (PFN_vkCmdDrawMeshTasksNV) gpa(device, "vkCmdDrawMeshTasksNV");
- if (table->CmdDrawMeshTasksNV == nullptr) { table->CmdDrawMeshTasksNV = (PFN_vkCmdDrawMeshTasksNV)StubCmdDrawMeshTasksNV; }
- table->CmdDrawMeshTasksIndirectNV = (PFN_vkCmdDrawMeshTasksIndirectNV) gpa(device, "vkCmdDrawMeshTasksIndirectNV");
- if (table->CmdDrawMeshTasksIndirectNV == nullptr) { table->CmdDrawMeshTasksIndirectNV = (PFN_vkCmdDrawMeshTasksIndirectNV)StubCmdDrawMeshTasksIndirectNV; }
- table->CmdDrawMeshTasksIndirectCountNV = (PFN_vkCmdDrawMeshTasksIndirectCountNV) gpa(device, "vkCmdDrawMeshTasksIndirectCountNV");
- if (table->CmdDrawMeshTasksIndirectCountNV == nullptr) { table->CmdDrawMeshTasksIndirectCountNV = (PFN_vkCmdDrawMeshTasksIndirectCountNV)StubCmdDrawMeshTasksIndirectCountNV; }
- table->CmdSetExclusiveScissorNV = (PFN_vkCmdSetExclusiveScissorNV) gpa(device, "vkCmdSetExclusiveScissorNV");
- if (table->CmdSetExclusiveScissorNV == nullptr) { table->CmdSetExclusiveScissorNV = (PFN_vkCmdSetExclusiveScissorNV)StubCmdSetExclusiveScissorNV; }
- table->CmdSetCheckpointNV = (PFN_vkCmdSetCheckpointNV) gpa(device, "vkCmdSetCheckpointNV");
- if (table->CmdSetCheckpointNV == nullptr) { table->CmdSetCheckpointNV = (PFN_vkCmdSetCheckpointNV)StubCmdSetCheckpointNV; }
- table->GetQueueCheckpointDataNV = (PFN_vkGetQueueCheckpointDataNV) gpa(device, "vkGetQueueCheckpointDataNV");
- if (table->GetQueueCheckpointDataNV == nullptr) { table->GetQueueCheckpointDataNV = (PFN_vkGetQueueCheckpointDataNV)StubGetQueueCheckpointDataNV; }
- table->InitializePerformanceApiINTEL = (PFN_vkInitializePerformanceApiINTEL) gpa(device, "vkInitializePerformanceApiINTEL");
- if (table->InitializePerformanceApiINTEL == nullptr) { table->InitializePerformanceApiINTEL = (PFN_vkInitializePerformanceApiINTEL)StubInitializePerformanceApiINTEL; }
- table->UninitializePerformanceApiINTEL = (PFN_vkUninitializePerformanceApiINTEL) gpa(device, "vkUninitializePerformanceApiINTEL");
- if (table->UninitializePerformanceApiINTEL == nullptr) { table->UninitializePerformanceApiINTEL = (PFN_vkUninitializePerformanceApiINTEL)StubUninitializePerformanceApiINTEL; }
- table->CmdSetPerformanceMarkerINTEL = (PFN_vkCmdSetPerformanceMarkerINTEL) gpa(device, "vkCmdSetPerformanceMarkerINTEL");
- if (table->CmdSetPerformanceMarkerINTEL == nullptr) { table->CmdSetPerformanceMarkerINTEL = (PFN_vkCmdSetPerformanceMarkerINTEL)StubCmdSetPerformanceMarkerINTEL; }
- table->CmdSetPerformanceStreamMarkerINTEL = (PFN_vkCmdSetPerformanceStreamMarkerINTEL) gpa(device, "vkCmdSetPerformanceStreamMarkerINTEL");
- if (table->CmdSetPerformanceStreamMarkerINTEL == nullptr) { table->CmdSetPerformanceStreamMarkerINTEL = (PFN_vkCmdSetPerformanceStreamMarkerINTEL)StubCmdSetPerformanceStreamMarkerINTEL; }
- table->CmdSetPerformanceOverrideINTEL = (PFN_vkCmdSetPerformanceOverrideINTEL) gpa(device, "vkCmdSetPerformanceOverrideINTEL");
- if (table->CmdSetPerformanceOverrideINTEL == nullptr) { table->CmdSetPerformanceOverrideINTEL = (PFN_vkCmdSetPerformanceOverrideINTEL)StubCmdSetPerformanceOverrideINTEL; }
- table->AcquirePerformanceConfigurationINTEL = (PFN_vkAcquirePerformanceConfigurationINTEL) gpa(device, "vkAcquirePerformanceConfigurationINTEL");
- if (table->AcquirePerformanceConfigurationINTEL == nullptr) { table->AcquirePerformanceConfigurationINTEL = (PFN_vkAcquirePerformanceConfigurationINTEL)StubAcquirePerformanceConfigurationINTEL; }
- table->ReleasePerformanceConfigurationINTEL = (PFN_vkReleasePerformanceConfigurationINTEL) gpa(device, "vkReleasePerformanceConfigurationINTEL");
- if (table->ReleasePerformanceConfigurationINTEL == nullptr) { table->ReleasePerformanceConfigurationINTEL = (PFN_vkReleasePerformanceConfigurationINTEL)StubReleasePerformanceConfigurationINTEL; }
- table->QueueSetPerformanceConfigurationINTEL = (PFN_vkQueueSetPerformanceConfigurationINTEL) gpa(device, "vkQueueSetPerformanceConfigurationINTEL");
- if (table->QueueSetPerformanceConfigurationINTEL == nullptr) { table->QueueSetPerformanceConfigurationINTEL = (PFN_vkQueueSetPerformanceConfigurationINTEL)StubQueueSetPerformanceConfigurationINTEL; }
- table->GetPerformanceParameterINTEL = (PFN_vkGetPerformanceParameterINTEL) gpa(device, "vkGetPerformanceParameterINTEL");
- if (table->GetPerformanceParameterINTEL == nullptr) { table->GetPerformanceParameterINTEL = (PFN_vkGetPerformanceParameterINTEL)StubGetPerformanceParameterINTEL; }
- table->SetLocalDimmingAMD = (PFN_vkSetLocalDimmingAMD) gpa(device, "vkSetLocalDimmingAMD");
- if (table->SetLocalDimmingAMD == nullptr) { table->SetLocalDimmingAMD = (PFN_vkSetLocalDimmingAMD)StubSetLocalDimmingAMD; }
- table->GetBufferDeviceAddressEXT = (PFN_vkGetBufferDeviceAddressEXT) gpa(device, "vkGetBufferDeviceAddressEXT");
- if (table->GetBufferDeviceAddressEXT == nullptr) { table->GetBufferDeviceAddressEXT = (PFN_vkGetBufferDeviceAddressEXT)StubGetBufferDeviceAddressEXT; }
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- table->AcquireFullScreenExclusiveModeEXT = (PFN_vkAcquireFullScreenExclusiveModeEXT) gpa(device, "vkAcquireFullScreenExclusiveModeEXT");
- if (table->AcquireFullScreenExclusiveModeEXT == nullptr) { table->AcquireFullScreenExclusiveModeEXT = (PFN_vkAcquireFullScreenExclusiveModeEXT)StubAcquireFullScreenExclusiveModeEXT; }
-#endif // VK_USE_PLATFORM_WIN32_KHR
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- table->ReleaseFullScreenExclusiveModeEXT = (PFN_vkReleaseFullScreenExclusiveModeEXT) gpa(device, "vkReleaseFullScreenExclusiveModeEXT");
- if (table->ReleaseFullScreenExclusiveModeEXT == nullptr) { table->ReleaseFullScreenExclusiveModeEXT = (PFN_vkReleaseFullScreenExclusiveModeEXT)StubReleaseFullScreenExclusiveModeEXT; }
-#endif // VK_USE_PLATFORM_WIN32_KHR
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- table->GetDeviceGroupSurfacePresentModes2EXT = (PFN_vkGetDeviceGroupSurfacePresentModes2EXT) gpa(device, "vkGetDeviceGroupSurfacePresentModes2EXT");
- if (table->GetDeviceGroupSurfacePresentModes2EXT == nullptr) { table->GetDeviceGroupSurfacePresentModes2EXT = (PFN_vkGetDeviceGroupSurfacePresentModes2EXT)StubGetDeviceGroupSurfacePresentModes2EXT; }
-#endif // VK_USE_PLATFORM_WIN32_KHR
- table->CmdSetLineStippleEXT = (PFN_vkCmdSetLineStippleEXT) gpa(device, "vkCmdSetLineStippleEXT");
- if (table->CmdSetLineStippleEXT == nullptr) { table->CmdSetLineStippleEXT = (PFN_vkCmdSetLineStippleEXT)StubCmdSetLineStippleEXT; }
- table->ResetQueryPoolEXT = (PFN_vkResetQueryPoolEXT) gpa(device, "vkResetQueryPoolEXT");
- if (table->ResetQueryPoolEXT == nullptr) { table->ResetQueryPoolEXT = (PFN_vkResetQueryPoolEXT)StubResetQueryPoolEXT; }
- table->CmdSetCullModeEXT = (PFN_vkCmdSetCullModeEXT) gpa(device, "vkCmdSetCullModeEXT");
- if (table->CmdSetCullModeEXT == nullptr) { table->CmdSetCullModeEXT = (PFN_vkCmdSetCullModeEXT)StubCmdSetCullModeEXT; }
- table->CmdSetFrontFaceEXT = (PFN_vkCmdSetFrontFaceEXT) gpa(device, "vkCmdSetFrontFaceEXT");
- if (table->CmdSetFrontFaceEXT == nullptr) { table->CmdSetFrontFaceEXT = (PFN_vkCmdSetFrontFaceEXT)StubCmdSetFrontFaceEXT; }
- table->CmdSetPrimitiveTopologyEXT = (PFN_vkCmdSetPrimitiveTopologyEXT) gpa(device, "vkCmdSetPrimitiveTopologyEXT");
- if (table->CmdSetPrimitiveTopologyEXT == nullptr) { table->CmdSetPrimitiveTopologyEXT = (PFN_vkCmdSetPrimitiveTopologyEXT)StubCmdSetPrimitiveTopologyEXT; }
- table->CmdSetViewportWithCountEXT = (PFN_vkCmdSetViewportWithCountEXT) gpa(device, "vkCmdSetViewportWithCountEXT");
- if (table->CmdSetViewportWithCountEXT == nullptr) { table->CmdSetViewportWithCountEXT = (PFN_vkCmdSetViewportWithCountEXT)StubCmdSetViewportWithCountEXT; }
- table->CmdSetScissorWithCountEXT = (PFN_vkCmdSetScissorWithCountEXT) gpa(device, "vkCmdSetScissorWithCountEXT");
- if (table->CmdSetScissorWithCountEXT == nullptr) { table->CmdSetScissorWithCountEXT = (PFN_vkCmdSetScissorWithCountEXT)StubCmdSetScissorWithCountEXT; }
- table->CmdBindVertexBuffers2EXT = (PFN_vkCmdBindVertexBuffers2EXT) gpa(device, "vkCmdBindVertexBuffers2EXT");
- if (table->CmdBindVertexBuffers2EXT == nullptr) { table->CmdBindVertexBuffers2EXT = (PFN_vkCmdBindVertexBuffers2EXT)StubCmdBindVertexBuffers2EXT; }
- table->CmdSetDepthTestEnableEXT = (PFN_vkCmdSetDepthTestEnableEXT) gpa(device, "vkCmdSetDepthTestEnableEXT");
- if (table->CmdSetDepthTestEnableEXT == nullptr) { table->CmdSetDepthTestEnableEXT = (PFN_vkCmdSetDepthTestEnableEXT)StubCmdSetDepthTestEnableEXT; }
- table->CmdSetDepthWriteEnableEXT = (PFN_vkCmdSetDepthWriteEnableEXT) gpa(device, "vkCmdSetDepthWriteEnableEXT");
- if (table->CmdSetDepthWriteEnableEXT == nullptr) { table->CmdSetDepthWriteEnableEXT = (PFN_vkCmdSetDepthWriteEnableEXT)StubCmdSetDepthWriteEnableEXT; }
- table->CmdSetDepthCompareOpEXT = (PFN_vkCmdSetDepthCompareOpEXT) gpa(device, "vkCmdSetDepthCompareOpEXT");
- if (table->CmdSetDepthCompareOpEXT == nullptr) { table->CmdSetDepthCompareOpEXT = (PFN_vkCmdSetDepthCompareOpEXT)StubCmdSetDepthCompareOpEXT; }
- table->CmdSetDepthBoundsTestEnableEXT = (PFN_vkCmdSetDepthBoundsTestEnableEXT) gpa(device, "vkCmdSetDepthBoundsTestEnableEXT");
- if (table->CmdSetDepthBoundsTestEnableEXT == nullptr) { table->CmdSetDepthBoundsTestEnableEXT = (PFN_vkCmdSetDepthBoundsTestEnableEXT)StubCmdSetDepthBoundsTestEnableEXT; }
- table->CmdSetStencilTestEnableEXT = (PFN_vkCmdSetStencilTestEnableEXT) gpa(device, "vkCmdSetStencilTestEnableEXT");
- if (table->CmdSetStencilTestEnableEXT == nullptr) { table->CmdSetStencilTestEnableEXT = (PFN_vkCmdSetStencilTestEnableEXT)StubCmdSetStencilTestEnableEXT; }
- table->CmdSetStencilOpEXT = (PFN_vkCmdSetStencilOpEXT) gpa(device, "vkCmdSetStencilOpEXT");
- if (table->CmdSetStencilOpEXT == nullptr) { table->CmdSetStencilOpEXT = (PFN_vkCmdSetStencilOpEXT)StubCmdSetStencilOpEXT; }
- table->GetGeneratedCommandsMemoryRequirementsNV = (PFN_vkGetGeneratedCommandsMemoryRequirementsNV) gpa(device, "vkGetGeneratedCommandsMemoryRequirementsNV");
- if (table->GetGeneratedCommandsMemoryRequirementsNV == nullptr) { table->GetGeneratedCommandsMemoryRequirementsNV = (PFN_vkGetGeneratedCommandsMemoryRequirementsNV)StubGetGeneratedCommandsMemoryRequirementsNV; }
- table->CmdPreprocessGeneratedCommandsNV = (PFN_vkCmdPreprocessGeneratedCommandsNV) gpa(device, "vkCmdPreprocessGeneratedCommandsNV");
- if (table->CmdPreprocessGeneratedCommandsNV == nullptr) { table->CmdPreprocessGeneratedCommandsNV = (PFN_vkCmdPreprocessGeneratedCommandsNV)StubCmdPreprocessGeneratedCommandsNV; }
- table->CmdExecuteGeneratedCommandsNV = (PFN_vkCmdExecuteGeneratedCommandsNV) gpa(device, "vkCmdExecuteGeneratedCommandsNV");
- if (table->CmdExecuteGeneratedCommandsNV == nullptr) { table->CmdExecuteGeneratedCommandsNV = (PFN_vkCmdExecuteGeneratedCommandsNV)StubCmdExecuteGeneratedCommandsNV; }
- table->CmdBindPipelineShaderGroupNV = (PFN_vkCmdBindPipelineShaderGroupNV) gpa(device, "vkCmdBindPipelineShaderGroupNV");
- if (table->CmdBindPipelineShaderGroupNV == nullptr) { table->CmdBindPipelineShaderGroupNV = (PFN_vkCmdBindPipelineShaderGroupNV)StubCmdBindPipelineShaderGroupNV; }
- table->CreateIndirectCommandsLayoutNV = (PFN_vkCreateIndirectCommandsLayoutNV) gpa(device, "vkCreateIndirectCommandsLayoutNV");
- if (table->CreateIndirectCommandsLayoutNV == nullptr) { table->CreateIndirectCommandsLayoutNV = (PFN_vkCreateIndirectCommandsLayoutNV)StubCreateIndirectCommandsLayoutNV; }
- table->DestroyIndirectCommandsLayoutNV = (PFN_vkDestroyIndirectCommandsLayoutNV) gpa(device, "vkDestroyIndirectCommandsLayoutNV");
- if (table->DestroyIndirectCommandsLayoutNV == nullptr) { table->DestroyIndirectCommandsLayoutNV = (PFN_vkDestroyIndirectCommandsLayoutNV)StubDestroyIndirectCommandsLayoutNV; }
- table->CreatePrivateDataSlotEXT = (PFN_vkCreatePrivateDataSlotEXT) gpa(device, "vkCreatePrivateDataSlotEXT");
- if (table->CreatePrivateDataSlotEXT == nullptr) { table->CreatePrivateDataSlotEXT = (PFN_vkCreatePrivateDataSlotEXT)StubCreatePrivateDataSlotEXT; }
- table->DestroyPrivateDataSlotEXT = (PFN_vkDestroyPrivateDataSlotEXT) gpa(device, "vkDestroyPrivateDataSlotEXT");
- if (table->DestroyPrivateDataSlotEXT == nullptr) { table->DestroyPrivateDataSlotEXT = (PFN_vkDestroyPrivateDataSlotEXT)StubDestroyPrivateDataSlotEXT; }
- table->SetPrivateDataEXT = (PFN_vkSetPrivateDataEXT) gpa(device, "vkSetPrivateDataEXT");
- if (table->SetPrivateDataEXT == nullptr) { table->SetPrivateDataEXT = (PFN_vkSetPrivateDataEXT)StubSetPrivateDataEXT; }
- table->GetPrivateDataEXT = (PFN_vkGetPrivateDataEXT) gpa(device, "vkGetPrivateDataEXT");
- if (table->GetPrivateDataEXT == nullptr) { table->GetPrivateDataEXT = (PFN_vkGetPrivateDataEXT)StubGetPrivateDataEXT; }
- table->CmdSetFragmentShadingRateEnumNV = (PFN_vkCmdSetFragmentShadingRateEnumNV) gpa(device, "vkCmdSetFragmentShadingRateEnumNV");
- if (table->CmdSetFragmentShadingRateEnumNV == nullptr) { table->CmdSetFragmentShadingRateEnumNV = (PFN_vkCmdSetFragmentShadingRateEnumNV)StubCmdSetFragmentShadingRateEnumNV; }
- table->CreateAccelerationStructureKHR = (PFN_vkCreateAccelerationStructureKHR) gpa(device, "vkCreateAccelerationStructureKHR");
- if (table->CreateAccelerationStructureKHR == nullptr) { table->CreateAccelerationStructureKHR = (PFN_vkCreateAccelerationStructureKHR)StubCreateAccelerationStructureKHR; }
- table->DestroyAccelerationStructureKHR = (PFN_vkDestroyAccelerationStructureKHR) gpa(device, "vkDestroyAccelerationStructureKHR");
- if (table->DestroyAccelerationStructureKHR == nullptr) { table->DestroyAccelerationStructureKHR = (PFN_vkDestroyAccelerationStructureKHR)StubDestroyAccelerationStructureKHR; }
- table->CmdBuildAccelerationStructuresKHR = (PFN_vkCmdBuildAccelerationStructuresKHR) gpa(device, "vkCmdBuildAccelerationStructuresKHR");
- if (table->CmdBuildAccelerationStructuresKHR == nullptr) { table->CmdBuildAccelerationStructuresKHR = (PFN_vkCmdBuildAccelerationStructuresKHR)StubCmdBuildAccelerationStructuresKHR; }
- table->CmdBuildAccelerationStructuresIndirectKHR = (PFN_vkCmdBuildAccelerationStructuresIndirectKHR) gpa(device, "vkCmdBuildAccelerationStructuresIndirectKHR");
- if (table->CmdBuildAccelerationStructuresIndirectKHR == nullptr) { table->CmdBuildAccelerationStructuresIndirectKHR = (PFN_vkCmdBuildAccelerationStructuresIndirectKHR)StubCmdBuildAccelerationStructuresIndirectKHR; }
- table->BuildAccelerationStructuresKHR = (PFN_vkBuildAccelerationStructuresKHR) gpa(device, "vkBuildAccelerationStructuresKHR");
- if (table->BuildAccelerationStructuresKHR == nullptr) { table->BuildAccelerationStructuresKHR = (PFN_vkBuildAccelerationStructuresKHR)StubBuildAccelerationStructuresKHR; }
- table->CopyAccelerationStructureKHR = (PFN_vkCopyAccelerationStructureKHR) gpa(device, "vkCopyAccelerationStructureKHR");
- if (table->CopyAccelerationStructureKHR == nullptr) { table->CopyAccelerationStructureKHR = (PFN_vkCopyAccelerationStructureKHR)StubCopyAccelerationStructureKHR; }
- table->CopyAccelerationStructureToMemoryKHR = (PFN_vkCopyAccelerationStructureToMemoryKHR) gpa(device, "vkCopyAccelerationStructureToMemoryKHR");
- if (table->CopyAccelerationStructureToMemoryKHR == nullptr) { table->CopyAccelerationStructureToMemoryKHR = (PFN_vkCopyAccelerationStructureToMemoryKHR)StubCopyAccelerationStructureToMemoryKHR; }
- table->CopyMemoryToAccelerationStructureKHR = (PFN_vkCopyMemoryToAccelerationStructureKHR) gpa(device, "vkCopyMemoryToAccelerationStructureKHR");
- if (table->CopyMemoryToAccelerationStructureKHR == nullptr) { table->CopyMemoryToAccelerationStructureKHR = (PFN_vkCopyMemoryToAccelerationStructureKHR)StubCopyMemoryToAccelerationStructureKHR; }
- table->WriteAccelerationStructuresPropertiesKHR = (PFN_vkWriteAccelerationStructuresPropertiesKHR) gpa(device, "vkWriteAccelerationStructuresPropertiesKHR");
- if (table->WriteAccelerationStructuresPropertiesKHR == nullptr) { table->WriteAccelerationStructuresPropertiesKHR = (PFN_vkWriteAccelerationStructuresPropertiesKHR)StubWriteAccelerationStructuresPropertiesKHR; }
- table->CmdCopyAccelerationStructureKHR = (PFN_vkCmdCopyAccelerationStructureKHR) gpa(device, "vkCmdCopyAccelerationStructureKHR");
- if (table->CmdCopyAccelerationStructureKHR == nullptr) { table->CmdCopyAccelerationStructureKHR = (PFN_vkCmdCopyAccelerationStructureKHR)StubCmdCopyAccelerationStructureKHR; }
- table->CmdCopyAccelerationStructureToMemoryKHR = (PFN_vkCmdCopyAccelerationStructureToMemoryKHR) gpa(device, "vkCmdCopyAccelerationStructureToMemoryKHR");
- if (table->CmdCopyAccelerationStructureToMemoryKHR == nullptr) { table->CmdCopyAccelerationStructureToMemoryKHR = (PFN_vkCmdCopyAccelerationStructureToMemoryKHR)StubCmdCopyAccelerationStructureToMemoryKHR; }
- table->CmdCopyMemoryToAccelerationStructureKHR = (PFN_vkCmdCopyMemoryToAccelerationStructureKHR) gpa(device, "vkCmdCopyMemoryToAccelerationStructureKHR");
- if (table->CmdCopyMemoryToAccelerationStructureKHR == nullptr) { table->CmdCopyMemoryToAccelerationStructureKHR = (PFN_vkCmdCopyMemoryToAccelerationStructureKHR)StubCmdCopyMemoryToAccelerationStructureKHR; }
- table->GetAccelerationStructureDeviceAddressKHR = (PFN_vkGetAccelerationStructureDeviceAddressKHR) gpa(device, "vkGetAccelerationStructureDeviceAddressKHR");
- if (table->GetAccelerationStructureDeviceAddressKHR == nullptr) { table->GetAccelerationStructureDeviceAddressKHR = (PFN_vkGetAccelerationStructureDeviceAddressKHR)StubGetAccelerationStructureDeviceAddressKHR; }
- table->CmdWriteAccelerationStructuresPropertiesKHR = (PFN_vkCmdWriteAccelerationStructuresPropertiesKHR) gpa(device, "vkCmdWriteAccelerationStructuresPropertiesKHR");
- if (table->CmdWriteAccelerationStructuresPropertiesKHR == nullptr) { table->CmdWriteAccelerationStructuresPropertiesKHR = (PFN_vkCmdWriteAccelerationStructuresPropertiesKHR)StubCmdWriteAccelerationStructuresPropertiesKHR; }
- table->GetDeviceAccelerationStructureCompatibilityKHR = (PFN_vkGetDeviceAccelerationStructureCompatibilityKHR) gpa(device, "vkGetDeviceAccelerationStructureCompatibilityKHR");
- if (table->GetDeviceAccelerationStructureCompatibilityKHR == nullptr) { table->GetDeviceAccelerationStructureCompatibilityKHR = (PFN_vkGetDeviceAccelerationStructureCompatibilityKHR)StubGetDeviceAccelerationStructureCompatibilityKHR; }
- table->GetAccelerationStructureBuildSizesKHR = (PFN_vkGetAccelerationStructureBuildSizesKHR) gpa(device, "vkGetAccelerationStructureBuildSizesKHR");
- if (table->GetAccelerationStructureBuildSizesKHR == nullptr) { table->GetAccelerationStructureBuildSizesKHR = (PFN_vkGetAccelerationStructureBuildSizesKHR)StubGetAccelerationStructureBuildSizesKHR; }
- table->CmdTraceRaysKHR = (PFN_vkCmdTraceRaysKHR) gpa(device, "vkCmdTraceRaysKHR");
- if (table->CmdTraceRaysKHR == nullptr) { table->CmdTraceRaysKHR = (PFN_vkCmdTraceRaysKHR)StubCmdTraceRaysKHR; }
- table->CreateRayTracingPipelinesKHR = (PFN_vkCreateRayTracingPipelinesKHR) gpa(device, "vkCreateRayTracingPipelinesKHR");
- if (table->CreateRayTracingPipelinesKHR == nullptr) { table->CreateRayTracingPipelinesKHR = (PFN_vkCreateRayTracingPipelinesKHR)StubCreateRayTracingPipelinesKHR; }
- table->GetRayTracingCaptureReplayShaderGroupHandlesKHR = (PFN_vkGetRayTracingCaptureReplayShaderGroupHandlesKHR) gpa(device, "vkGetRayTracingCaptureReplayShaderGroupHandlesKHR");
- if (table->GetRayTracingCaptureReplayShaderGroupHandlesKHR == nullptr) { table->GetRayTracingCaptureReplayShaderGroupHandlesKHR = (PFN_vkGetRayTracingCaptureReplayShaderGroupHandlesKHR)StubGetRayTracingCaptureReplayShaderGroupHandlesKHR; }
- table->CmdTraceRaysIndirectKHR = (PFN_vkCmdTraceRaysIndirectKHR) gpa(device, "vkCmdTraceRaysIndirectKHR");
- if (table->CmdTraceRaysIndirectKHR == nullptr) { table->CmdTraceRaysIndirectKHR = (PFN_vkCmdTraceRaysIndirectKHR)StubCmdTraceRaysIndirectKHR; }
- table->GetRayTracingShaderGroupStackSizeKHR = (PFN_vkGetRayTracingShaderGroupStackSizeKHR) gpa(device, "vkGetRayTracingShaderGroupStackSizeKHR");
- if (table->GetRayTracingShaderGroupStackSizeKHR == nullptr) { table->GetRayTracingShaderGroupStackSizeKHR = (PFN_vkGetRayTracingShaderGroupStackSizeKHR)StubGetRayTracingShaderGroupStackSizeKHR; }
- table->CmdSetRayTracingPipelineStackSizeKHR = (PFN_vkCmdSetRayTracingPipelineStackSizeKHR) gpa(device, "vkCmdSetRayTracingPipelineStackSizeKHR");
- if (table->CmdSetRayTracingPipelineStackSizeKHR == nullptr) { table->CmdSetRayTracingPipelineStackSizeKHR = (PFN_vkCmdSetRayTracingPipelineStackSizeKHR)StubCmdSetRayTracingPipelineStackSizeKHR; }
-}
-
-
-static inline void layer_init_instance_dispatch_table(VkInstance instance, VkLayerInstanceDispatchTable *table, PFN_vkGetInstanceProcAddr gpa) {
- memset(table, 0, sizeof(*table));
- // Instance function pointers
- table->DestroyInstance = (PFN_vkDestroyInstance) gpa(instance, "vkDestroyInstance");
- table->EnumeratePhysicalDevices = (PFN_vkEnumeratePhysicalDevices) gpa(instance, "vkEnumeratePhysicalDevices");
- table->GetPhysicalDeviceFeatures = (PFN_vkGetPhysicalDeviceFeatures) gpa(instance, "vkGetPhysicalDeviceFeatures");
- table->GetPhysicalDeviceFormatProperties = (PFN_vkGetPhysicalDeviceFormatProperties) gpa(instance, "vkGetPhysicalDeviceFormatProperties");
- table->GetPhysicalDeviceImageFormatProperties = (PFN_vkGetPhysicalDeviceImageFormatProperties) gpa(instance, "vkGetPhysicalDeviceImageFormatProperties");
- table->GetPhysicalDeviceProperties = (PFN_vkGetPhysicalDeviceProperties) gpa(instance, "vkGetPhysicalDeviceProperties");
- table->GetPhysicalDeviceQueueFamilyProperties = (PFN_vkGetPhysicalDeviceQueueFamilyProperties) gpa(instance, "vkGetPhysicalDeviceQueueFamilyProperties");
- table->GetPhysicalDeviceMemoryProperties = (PFN_vkGetPhysicalDeviceMemoryProperties) gpa(instance, "vkGetPhysicalDeviceMemoryProperties");
- table->GetInstanceProcAddr = gpa;
- table->EnumerateDeviceExtensionProperties = (PFN_vkEnumerateDeviceExtensionProperties) gpa(instance, "vkEnumerateDeviceExtensionProperties");
- table->EnumerateDeviceLayerProperties = (PFN_vkEnumerateDeviceLayerProperties) gpa(instance, "vkEnumerateDeviceLayerProperties");
- table->GetPhysicalDeviceSparseImageFormatProperties = (PFN_vkGetPhysicalDeviceSparseImageFormatProperties) gpa(instance, "vkGetPhysicalDeviceSparseImageFormatProperties");
- table->EnumeratePhysicalDeviceGroups = (PFN_vkEnumeratePhysicalDeviceGroups) gpa(instance, "vkEnumeratePhysicalDeviceGroups");
- table->GetPhysicalDeviceFeatures2 = (PFN_vkGetPhysicalDeviceFeatures2) gpa(instance, "vkGetPhysicalDeviceFeatures2");
- table->GetPhysicalDeviceProperties2 = (PFN_vkGetPhysicalDeviceProperties2) gpa(instance, "vkGetPhysicalDeviceProperties2");
- table->GetPhysicalDeviceFormatProperties2 = (PFN_vkGetPhysicalDeviceFormatProperties2) gpa(instance, "vkGetPhysicalDeviceFormatProperties2");
- table->GetPhysicalDeviceImageFormatProperties2 = (PFN_vkGetPhysicalDeviceImageFormatProperties2) gpa(instance, "vkGetPhysicalDeviceImageFormatProperties2");
- table->GetPhysicalDeviceQueueFamilyProperties2 = (PFN_vkGetPhysicalDeviceQueueFamilyProperties2) gpa(instance, "vkGetPhysicalDeviceQueueFamilyProperties2");
- table->GetPhysicalDeviceMemoryProperties2 = (PFN_vkGetPhysicalDeviceMemoryProperties2) gpa(instance, "vkGetPhysicalDeviceMemoryProperties2");
- table->GetPhysicalDeviceSparseImageFormatProperties2 = (PFN_vkGetPhysicalDeviceSparseImageFormatProperties2) gpa(instance, "vkGetPhysicalDeviceSparseImageFormatProperties2");
- table->GetPhysicalDeviceExternalBufferProperties = (PFN_vkGetPhysicalDeviceExternalBufferProperties) gpa(instance, "vkGetPhysicalDeviceExternalBufferProperties");
- table->GetPhysicalDeviceExternalFenceProperties = (PFN_vkGetPhysicalDeviceExternalFenceProperties) gpa(instance, "vkGetPhysicalDeviceExternalFenceProperties");
- table->GetPhysicalDeviceExternalSemaphoreProperties = (PFN_vkGetPhysicalDeviceExternalSemaphoreProperties) gpa(instance, "vkGetPhysicalDeviceExternalSemaphoreProperties");
- table->DestroySurfaceKHR = (PFN_vkDestroySurfaceKHR) gpa(instance, "vkDestroySurfaceKHR");
- table->GetPhysicalDeviceSurfaceSupportKHR = (PFN_vkGetPhysicalDeviceSurfaceSupportKHR) gpa(instance, "vkGetPhysicalDeviceSurfaceSupportKHR");
- table->GetPhysicalDeviceSurfaceCapabilitiesKHR = (PFN_vkGetPhysicalDeviceSurfaceCapabilitiesKHR) gpa(instance, "vkGetPhysicalDeviceSurfaceCapabilitiesKHR");
- table->GetPhysicalDeviceSurfaceFormatsKHR = (PFN_vkGetPhysicalDeviceSurfaceFormatsKHR) gpa(instance, "vkGetPhysicalDeviceSurfaceFormatsKHR");
- table->GetPhysicalDeviceSurfacePresentModesKHR = (PFN_vkGetPhysicalDeviceSurfacePresentModesKHR) gpa(instance, "vkGetPhysicalDeviceSurfacePresentModesKHR");
- table->GetPhysicalDevicePresentRectanglesKHR = (PFN_vkGetPhysicalDevicePresentRectanglesKHR) gpa(instance, "vkGetPhysicalDevicePresentRectanglesKHR");
- table->GetPhysicalDeviceDisplayPropertiesKHR = (PFN_vkGetPhysicalDeviceDisplayPropertiesKHR) gpa(instance, "vkGetPhysicalDeviceDisplayPropertiesKHR");
- table->GetPhysicalDeviceDisplayPlanePropertiesKHR = (PFN_vkGetPhysicalDeviceDisplayPlanePropertiesKHR) gpa(instance, "vkGetPhysicalDeviceDisplayPlanePropertiesKHR");
- table->GetDisplayPlaneSupportedDisplaysKHR = (PFN_vkGetDisplayPlaneSupportedDisplaysKHR) gpa(instance, "vkGetDisplayPlaneSupportedDisplaysKHR");
- table->GetDisplayModePropertiesKHR = (PFN_vkGetDisplayModePropertiesKHR) gpa(instance, "vkGetDisplayModePropertiesKHR");
- table->CreateDisplayModeKHR = (PFN_vkCreateDisplayModeKHR) gpa(instance, "vkCreateDisplayModeKHR");
- table->GetDisplayPlaneCapabilitiesKHR = (PFN_vkGetDisplayPlaneCapabilitiesKHR) gpa(instance, "vkGetDisplayPlaneCapabilitiesKHR");
- table->CreateDisplayPlaneSurfaceKHR = (PFN_vkCreateDisplayPlaneSurfaceKHR) gpa(instance, "vkCreateDisplayPlaneSurfaceKHR");
-#ifdef VK_USE_PLATFORM_XLIB_KHR
- table->CreateXlibSurfaceKHR = (PFN_vkCreateXlibSurfaceKHR) gpa(instance, "vkCreateXlibSurfaceKHR");
-#endif // VK_USE_PLATFORM_XLIB_KHR
-#ifdef VK_USE_PLATFORM_XLIB_KHR
- table->GetPhysicalDeviceXlibPresentationSupportKHR = (PFN_vkGetPhysicalDeviceXlibPresentationSupportKHR) gpa(instance, "vkGetPhysicalDeviceXlibPresentationSupportKHR");
-#endif // VK_USE_PLATFORM_XLIB_KHR
-#ifdef VK_USE_PLATFORM_XCB_KHR
- table->CreateXcbSurfaceKHR = (PFN_vkCreateXcbSurfaceKHR) gpa(instance, "vkCreateXcbSurfaceKHR");
-#endif // VK_USE_PLATFORM_XCB_KHR
-#ifdef VK_USE_PLATFORM_XCB_KHR
- table->GetPhysicalDeviceXcbPresentationSupportKHR = (PFN_vkGetPhysicalDeviceXcbPresentationSupportKHR) gpa(instance, "vkGetPhysicalDeviceXcbPresentationSupportKHR");
-#endif // VK_USE_PLATFORM_XCB_KHR
-#ifdef VK_USE_PLATFORM_WAYLAND_KHR
- table->CreateWaylandSurfaceKHR = (PFN_vkCreateWaylandSurfaceKHR) gpa(instance, "vkCreateWaylandSurfaceKHR");
-#endif // VK_USE_PLATFORM_WAYLAND_KHR
-#ifdef VK_USE_PLATFORM_WAYLAND_KHR
- table->GetPhysicalDeviceWaylandPresentationSupportKHR = (PFN_vkGetPhysicalDeviceWaylandPresentationSupportKHR) gpa(instance, "vkGetPhysicalDeviceWaylandPresentationSupportKHR");
-#endif // VK_USE_PLATFORM_WAYLAND_KHR
-#ifdef VK_USE_PLATFORM_ANDROID_KHR
- table->CreateAndroidSurfaceKHR = (PFN_vkCreateAndroidSurfaceKHR) gpa(instance, "vkCreateAndroidSurfaceKHR");
-#endif // VK_USE_PLATFORM_ANDROID_KHR
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- table->CreateWin32SurfaceKHR = (PFN_vkCreateWin32SurfaceKHR) gpa(instance, "vkCreateWin32SurfaceKHR");
-#endif // VK_USE_PLATFORM_WIN32_KHR
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- table->GetPhysicalDeviceWin32PresentationSupportKHR = (PFN_vkGetPhysicalDeviceWin32PresentationSupportKHR) gpa(instance, "vkGetPhysicalDeviceWin32PresentationSupportKHR");
-#endif // VK_USE_PLATFORM_WIN32_KHR
- table->GetPhysicalDeviceFeatures2KHR = (PFN_vkGetPhysicalDeviceFeatures2KHR) gpa(instance, "vkGetPhysicalDeviceFeatures2KHR");
- table->GetPhysicalDeviceProperties2KHR = (PFN_vkGetPhysicalDeviceProperties2KHR) gpa(instance, "vkGetPhysicalDeviceProperties2KHR");
- table->GetPhysicalDeviceFormatProperties2KHR = (PFN_vkGetPhysicalDeviceFormatProperties2KHR) gpa(instance, "vkGetPhysicalDeviceFormatProperties2KHR");
- table->GetPhysicalDeviceImageFormatProperties2KHR = (PFN_vkGetPhysicalDeviceImageFormatProperties2KHR) gpa(instance, "vkGetPhysicalDeviceImageFormatProperties2KHR");
- table->GetPhysicalDeviceQueueFamilyProperties2KHR = (PFN_vkGetPhysicalDeviceQueueFamilyProperties2KHR) gpa(instance, "vkGetPhysicalDeviceQueueFamilyProperties2KHR");
- table->GetPhysicalDeviceMemoryProperties2KHR = (PFN_vkGetPhysicalDeviceMemoryProperties2KHR) gpa(instance, "vkGetPhysicalDeviceMemoryProperties2KHR");
- table->GetPhysicalDeviceSparseImageFormatProperties2KHR = (PFN_vkGetPhysicalDeviceSparseImageFormatProperties2KHR) gpa(instance, "vkGetPhysicalDeviceSparseImageFormatProperties2KHR");
- table->EnumeratePhysicalDeviceGroupsKHR = (PFN_vkEnumeratePhysicalDeviceGroupsKHR) gpa(instance, "vkEnumeratePhysicalDeviceGroupsKHR");
- table->GetPhysicalDeviceExternalBufferPropertiesKHR = (PFN_vkGetPhysicalDeviceExternalBufferPropertiesKHR) gpa(instance, "vkGetPhysicalDeviceExternalBufferPropertiesKHR");
- table->GetPhysicalDeviceExternalSemaphorePropertiesKHR = (PFN_vkGetPhysicalDeviceExternalSemaphorePropertiesKHR) gpa(instance, "vkGetPhysicalDeviceExternalSemaphorePropertiesKHR");
- table->GetPhysicalDeviceExternalFencePropertiesKHR = (PFN_vkGetPhysicalDeviceExternalFencePropertiesKHR) gpa(instance, "vkGetPhysicalDeviceExternalFencePropertiesKHR");
- table->EnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR = (PFN_vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR) gpa(instance, "vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR");
- table->GetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR = (PFN_vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR) gpa(instance, "vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR");
- table->GetPhysicalDeviceSurfaceCapabilities2KHR = (PFN_vkGetPhysicalDeviceSurfaceCapabilities2KHR) gpa(instance, "vkGetPhysicalDeviceSurfaceCapabilities2KHR");
- table->GetPhysicalDeviceSurfaceFormats2KHR = (PFN_vkGetPhysicalDeviceSurfaceFormats2KHR) gpa(instance, "vkGetPhysicalDeviceSurfaceFormats2KHR");
- table->GetPhysicalDeviceDisplayProperties2KHR = (PFN_vkGetPhysicalDeviceDisplayProperties2KHR) gpa(instance, "vkGetPhysicalDeviceDisplayProperties2KHR");
- table->GetPhysicalDeviceDisplayPlaneProperties2KHR = (PFN_vkGetPhysicalDeviceDisplayPlaneProperties2KHR) gpa(instance, "vkGetPhysicalDeviceDisplayPlaneProperties2KHR");
- table->GetDisplayModeProperties2KHR = (PFN_vkGetDisplayModeProperties2KHR) gpa(instance, "vkGetDisplayModeProperties2KHR");
- table->GetDisplayPlaneCapabilities2KHR = (PFN_vkGetDisplayPlaneCapabilities2KHR) gpa(instance, "vkGetDisplayPlaneCapabilities2KHR");
- table->GetPhysicalDeviceFragmentShadingRatesKHR = (PFN_vkGetPhysicalDeviceFragmentShadingRatesKHR) gpa(instance, "vkGetPhysicalDeviceFragmentShadingRatesKHR");
- table->CreateDebugReportCallbackEXT = (PFN_vkCreateDebugReportCallbackEXT) gpa(instance, "vkCreateDebugReportCallbackEXT");
- table->DestroyDebugReportCallbackEXT = (PFN_vkDestroyDebugReportCallbackEXT) gpa(instance, "vkDestroyDebugReportCallbackEXT");
- table->DebugReportMessageEXT = (PFN_vkDebugReportMessageEXT) gpa(instance, "vkDebugReportMessageEXT");
-#ifdef VK_USE_PLATFORM_GGP
- table->CreateStreamDescriptorSurfaceGGP = (PFN_vkCreateStreamDescriptorSurfaceGGP) gpa(instance, "vkCreateStreamDescriptorSurfaceGGP");
-#endif // VK_USE_PLATFORM_GGP
- table->GetPhysicalDeviceExternalImageFormatPropertiesNV = (PFN_vkGetPhysicalDeviceExternalImageFormatPropertiesNV) gpa(instance, "vkGetPhysicalDeviceExternalImageFormatPropertiesNV");
-#ifdef VK_USE_PLATFORM_VI_NN
- table->CreateViSurfaceNN = (PFN_vkCreateViSurfaceNN) gpa(instance, "vkCreateViSurfaceNN");
-#endif // VK_USE_PLATFORM_VI_NN
- table->ReleaseDisplayEXT = (PFN_vkReleaseDisplayEXT) gpa(instance, "vkReleaseDisplayEXT");
-#ifdef VK_USE_PLATFORM_XLIB_XRANDR_EXT
- table->AcquireXlibDisplayEXT = (PFN_vkAcquireXlibDisplayEXT) gpa(instance, "vkAcquireXlibDisplayEXT");
-#endif // VK_USE_PLATFORM_XLIB_XRANDR_EXT
-#ifdef VK_USE_PLATFORM_XLIB_XRANDR_EXT
- table->GetRandROutputDisplayEXT = (PFN_vkGetRandROutputDisplayEXT) gpa(instance, "vkGetRandROutputDisplayEXT");
-#endif // VK_USE_PLATFORM_XLIB_XRANDR_EXT
- table->GetPhysicalDeviceSurfaceCapabilities2EXT = (PFN_vkGetPhysicalDeviceSurfaceCapabilities2EXT) gpa(instance, "vkGetPhysicalDeviceSurfaceCapabilities2EXT");
-#ifdef VK_USE_PLATFORM_IOS_MVK
- table->CreateIOSSurfaceMVK = (PFN_vkCreateIOSSurfaceMVK) gpa(instance, "vkCreateIOSSurfaceMVK");
-#endif // VK_USE_PLATFORM_IOS_MVK
-#ifdef VK_USE_PLATFORM_MACOS_MVK
- table->CreateMacOSSurfaceMVK = (PFN_vkCreateMacOSSurfaceMVK) gpa(instance, "vkCreateMacOSSurfaceMVK");
-#endif // VK_USE_PLATFORM_MACOS_MVK
- table->CreateDebugUtilsMessengerEXT = (PFN_vkCreateDebugUtilsMessengerEXT) gpa(instance, "vkCreateDebugUtilsMessengerEXT");
- table->DestroyDebugUtilsMessengerEXT = (PFN_vkDestroyDebugUtilsMessengerEXT) gpa(instance, "vkDestroyDebugUtilsMessengerEXT");
- table->SubmitDebugUtilsMessageEXT = (PFN_vkSubmitDebugUtilsMessageEXT) gpa(instance, "vkSubmitDebugUtilsMessageEXT");
- table->GetPhysicalDeviceMultisamplePropertiesEXT = (PFN_vkGetPhysicalDeviceMultisamplePropertiesEXT) gpa(instance, "vkGetPhysicalDeviceMultisamplePropertiesEXT");
- table->GetPhysicalDeviceCalibrateableTimeDomainsEXT = (PFN_vkGetPhysicalDeviceCalibrateableTimeDomainsEXT) gpa(instance, "vkGetPhysicalDeviceCalibrateableTimeDomainsEXT");
-#ifdef VK_USE_PLATFORM_FUCHSIA
- table->CreateImagePipeSurfaceFUCHSIA = (PFN_vkCreateImagePipeSurfaceFUCHSIA) gpa(instance, "vkCreateImagePipeSurfaceFUCHSIA");
-#endif // VK_USE_PLATFORM_FUCHSIA
-#ifdef VK_USE_PLATFORM_METAL_EXT
- table->CreateMetalSurfaceEXT = (PFN_vkCreateMetalSurfaceEXT) gpa(instance, "vkCreateMetalSurfaceEXT");
-#endif // VK_USE_PLATFORM_METAL_EXT
- table->GetPhysicalDeviceToolPropertiesEXT = (PFN_vkGetPhysicalDeviceToolPropertiesEXT) gpa(instance, "vkGetPhysicalDeviceToolPropertiesEXT");
- table->GetPhysicalDeviceCooperativeMatrixPropertiesNV = (PFN_vkGetPhysicalDeviceCooperativeMatrixPropertiesNV) gpa(instance, "vkGetPhysicalDeviceCooperativeMatrixPropertiesNV");
- table->GetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV = (PFN_vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV) gpa(instance, "vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV");
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- table->GetPhysicalDeviceSurfacePresentModes2EXT = (PFN_vkGetPhysicalDeviceSurfacePresentModes2EXT) gpa(instance, "vkGetPhysicalDeviceSurfacePresentModes2EXT");
-#endif // VK_USE_PLATFORM_WIN32_KHR
- table->CreateHeadlessSurfaceEXT = (PFN_vkCreateHeadlessSurfaceEXT) gpa(instance, "vkCreateHeadlessSurfaceEXT");
-#ifdef VK_USE_PLATFORM_DIRECTFB_EXT
- table->CreateDirectFBSurfaceEXT = (PFN_vkCreateDirectFBSurfaceEXT) gpa(instance, "vkCreateDirectFBSurfaceEXT");
-#endif // VK_USE_PLATFORM_DIRECTFB_EXT
-#ifdef VK_USE_PLATFORM_DIRECTFB_EXT
- table->GetPhysicalDeviceDirectFBPresentationSupportEXT = (PFN_vkGetPhysicalDeviceDirectFBPresentationSupportEXT) gpa(instance, "vkGetPhysicalDeviceDirectFBPresentationSupportEXT");
-#endif // VK_USE_PLATFORM_DIRECTFB_EXT
-}
diff --git a/thirdparty/vulkan/loader/vk_layer_dispatch_table.h b/thirdparty/vulkan/loader/vk_layer_dispatch_table.h
deleted file mode 100644
index 45b20db45c..0000000000
--- a/thirdparty/vulkan/loader/vk_layer_dispatch_table.h
+++ /dev/null
@@ -1,757 +0,0 @@
-// *** THIS FILE IS GENERATED - DO NOT EDIT ***
-// See loader_extension_generator.py for modifications
-
-/*
- * Copyright (c) 2015-2017 The Khronos Group Inc.
- * Copyright (c) 2015-2017 Valve Corporation
- * Copyright (c) 2015-2017 LunarG, Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * Author: Mark Lobodzinski <mark@lunarg.com>
- * Author: Mark Young <marky@lunarg.com>
- */
-
-#pragma once
-
-typedef PFN_vkVoidFunction (VKAPI_PTR *PFN_GetPhysicalDeviceProcAddr)(VkInstance instance, const char* pName);
-
-// Instance function pointer dispatch table
-typedef struct VkLayerInstanceDispatchTable_ {
- // Manually add in GetPhysicalDeviceProcAddr entry
- PFN_GetPhysicalDeviceProcAddr GetPhysicalDeviceProcAddr;
-
- // ---- Core 1_0 commands
- PFN_vkCreateInstance CreateInstance;
- PFN_vkDestroyInstance DestroyInstance;
- PFN_vkEnumeratePhysicalDevices EnumeratePhysicalDevices;
- PFN_vkGetPhysicalDeviceFeatures GetPhysicalDeviceFeatures;
- PFN_vkGetPhysicalDeviceFormatProperties GetPhysicalDeviceFormatProperties;
- PFN_vkGetPhysicalDeviceImageFormatProperties GetPhysicalDeviceImageFormatProperties;
- PFN_vkGetPhysicalDeviceProperties GetPhysicalDeviceProperties;
- PFN_vkGetPhysicalDeviceQueueFamilyProperties GetPhysicalDeviceQueueFamilyProperties;
- PFN_vkGetPhysicalDeviceMemoryProperties GetPhysicalDeviceMemoryProperties;
- PFN_vkGetInstanceProcAddr GetInstanceProcAddr;
- PFN_vkCreateDevice CreateDevice;
- PFN_vkEnumerateInstanceExtensionProperties EnumerateInstanceExtensionProperties;
- PFN_vkEnumerateDeviceExtensionProperties EnumerateDeviceExtensionProperties;
- PFN_vkEnumerateInstanceLayerProperties EnumerateInstanceLayerProperties;
- PFN_vkEnumerateDeviceLayerProperties EnumerateDeviceLayerProperties;
- PFN_vkGetPhysicalDeviceSparseImageFormatProperties GetPhysicalDeviceSparseImageFormatProperties;
-
- // ---- Core 1_1 commands
- PFN_vkEnumerateInstanceVersion EnumerateInstanceVersion;
- PFN_vkEnumeratePhysicalDeviceGroups EnumeratePhysicalDeviceGroups;
- PFN_vkGetPhysicalDeviceFeatures2 GetPhysicalDeviceFeatures2;
- PFN_vkGetPhysicalDeviceProperties2 GetPhysicalDeviceProperties2;
- PFN_vkGetPhysicalDeviceFormatProperties2 GetPhysicalDeviceFormatProperties2;
- PFN_vkGetPhysicalDeviceImageFormatProperties2 GetPhysicalDeviceImageFormatProperties2;
- PFN_vkGetPhysicalDeviceQueueFamilyProperties2 GetPhysicalDeviceQueueFamilyProperties2;
- PFN_vkGetPhysicalDeviceMemoryProperties2 GetPhysicalDeviceMemoryProperties2;
- PFN_vkGetPhysicalDeviceSparseImageFormatProperties2 GetPhysicalDeviceSparseImageFormatProperties2;
- PFN_vkGetPhysicalDeviceExternalBufferProperties GetPhysicalDeviceExternalBufferProperties;
- PFN_vkGetPhysicalDeviceExternalFenceProperties GetPhysicalDeviceExternalFenceProperties;
- PFN_vkGetPhysicalDeviceExternalSemaphoreProperties GetPhysicalDeviceExternalSemaphoreProperties;
-
- // ---- VK_KHR_surface extension commands
- PFN_vkDestroySurfaceKHR DestroySurfaceKHR;
- PFN_vkGetPhysicalDeviceSurfaceSupportKHR GetPhysicalDeviceSurfaceSupportKHR;
- PFN_vkGetPhysicalDeviceSurfaceCapabilitiesKHR GetPhysicalDeviceSurfaceCapabilitiesKHR;
- PFN_vkGetPhysicalDeviceSurfaceFormatsKHR GetPhysicalDeviceSurfaceFormatsKHR;
- PFN_vkGetPhysicalDeviceSurfacePresentModesKHR GetPhysicalDeviceSurfacePresentModesKHR;
-
- // ---- VK_KHR_swapchain extension commands
- PFN_vkGetPhysicalDevicePresentRectanglesKHR GetPhysicalDevicePresentRectanglesKHR;
-
- // ---- VK_KHR_display extension commands
- PFN_vkGetPhysicalDeviceDisplayPropertiesKHR GetPhysicalDeviceDisplayPropertiesKHR;
- PFN_vkGetPhysicalDeviceDisplayPlanePropertiesKHR GetPhysicalDeviceDisplayPlanePropertiesKHR;
- PFN_vkGetDisplayPlaneSupportedDisplaysKHR GetDisplayPlaneSupportedDisplaysKHR;
- PFN_vkGetDisplayModePropertiesKHR GetDisplayModePropertiesKHR;
- PFN_vkCreateDisplayModeKHR CreateDisplayModeKHR;
- PFN_vkGetDisplayPlaneCapabilitiesKHR GetDisplayPlaneCapabilitiesKHR;
- PFN_vkCreateDisplayPlaneSurfaceKHR CreateDisplayPlaneSurfaceKHR;
-
- // ---- VK_KHR_xlib_surface extension commands
-#ifdef VK_USE_PLATFORM_XLIB_KHR
- PFN_vkCreateXlibSurfaceKHR CreateXlibSurfaceKHR;
-#endif // VK_USE_PLATFORM_XLIB_KHR
-#ifdef VK_USE_PLATFORM_XLIB_KHR
- PFN_vkGetPhysicalDeviceXlibPresentationSupportKHR GetPhysicalDeviceXlibPresentationSupportKHR;
-#endif // VK_USE_PLATFORM_XLIB_KHR
-
- // ---- VK_KHR_xcb_surface extension commands
-#ifdef VK_USE_PLATFORM_XCB_KHR
- PFN_vkCreateXcbSurfaceKHR CreateXcbSurfaceKHR;
-#endif // VK_USE_PLATFORM_XCB_KHR
-#ifdef VK_USE_PLATFORM_XCB_KHR
- PFN_vkGetPhysicalDeviceXcbPresentationSupportKHR GetPhysicalDeviceXcbPresentationSupportKHR;
-#endif // VK_USE_PLATFORM_XCB_KHR
-
- // ---- VK_KHR_wayland_surface extension commands
-#ifdef VK_USE_PLATFORM_WAYLAND_KHR
- PFN_vkCreateWaylandSurfaceKHR CreateWaylandSurfaceKHR;
-#endif // VK_USE_PLATFORM_WAYLAND_KHR
-#ifdef VK_USE_PLATFORM_WAYLAND_KHR
- PFN_vkGetPhysicalDeviceWaylandPresentationSupportKHR GetPhysicalDeviceWaylandPresentationSupportKHR;
-#endif // VK_USE_PLATFORM_WAYLAND_KHR
-
- // ---- VK_KHR_android_surface extension commands
-#ifdef VK_USE_PLATFORM_ANDROID_KHR
- PFN_vkCreateAndroidSurfaceKHR CreateAndroidSurfaceKHR;
-#endif // VK_USE_PLATFORM_ANDROID_KHR
-
- // ---- VK_KHR_win32_surface extension commands
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- PFN_vkCreateWin32SurfaceKHR CreateWin32SurfaceKHR;
-#endif // VK_USE_PLATFORM_WIN32_KHR
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- PFN_vkGetPhysicalDeviceWin32PresentationSupportKHR GetPhysicalDeviceWin32PresentationSupportKHR;
-#endif // VK_USE_PLATFORM_WIN32_KHR
-
- // ---- VK_KHR_get_physical_device_properties2 extension commands
- PFN_vkGetPhysicalDeviceFeatures2KHR GetPhysicalDeviceFeatures2KHR;
- PFN_vkGetPhysicalDeviceProperties2KHR GetPhysicalDeviceProperties2KHR;
- PFN_vkGetPhysicalDeviceFormatProperties2KHR GetPhysicalDeviceFormatProperties2KHR;
- PFN_vkGetPhysicalDeviceImageFormatProperties2KHR GetPhysicalDeviceImageFormatProperties2KHR;
- PFN_vkGetPhysicalDeviceQueueFamilyProperties2KHR GetPhysicalDeviceQueueFamilyProperties2KHR;
- PFN_vkGetPhysicalDeviceMemoryProperties2KHR GetPhysicalDeviceMemoryProperties2KHR;
- PFN_vkGetPhysicalDeviceSparseImageFormatProperties2KHR GetPhysicalDeviceSparseImageFormatProperties2KHR;
-
- // ---- VK_KHR_device_group_creation extension commands
- PFN_vkEnumeratePhysicalDeviceGroupsKHR EnumeratePhysicalDeviceGroupsKHR;
-
- // ---- VK_KHR_external_memory_capabilities extension commands
- PFN_vkGetPhysicalDeviceExternalBufferPropertiesKHR GetPhysicalDeviceExternalBufferPropertiesKHR;
-
- // ---- VK_KHR_external_semaphore_capabilities extension commands
- PFN_vkGetPhysicalDeviceExternalSemaphorePropertiesKHR GetPhysicalDeviceExternalSemaphorePropertiesKHR;
-
- // ---- VK_KHR_external_fence_capabilities extension commands
- PFN_vkGetPhysicalDeviceExternalFencePropertiesKHR GetPhysicalDeviceExternalFencePropertiesKHR;
-
- // ---- VK_KHR_performance_query extension commands
- PFN_vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR EnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR;
- PFN_vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR GetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR;
-
- // ---- VK_KHR_get_surface_capabilities2 extension commands
- PFN_vkGetPhysicalDeviceSurfaceCapabilities2KHR GetPhysicalDeviceSurfaceCapabilities2KHR;
- PFN_vkGetPhysicalDeviceSurfaceFormats2KHR GetPhysicalDeviceSurfaceFormats2KHR;
-
- // ---- VK_KHR_get_display_properties2 extension commands
- PFN_vkGetPhysicalDeviceDisplayProperties2KHR GetPhysicalDeviceDisplayProperties2KHR;
- PFN_vkGetPhysicalDeviceDisplayPlaneProperties2KHR GetPhysicalDeviceDisplayPlaneProperties2KHR;
- PFN_vkGetDisplayModeProperties2KHR GetDisplayModeProperties2KHR;
- PFN_vkGetDisplayPlaneCapabilities2KHR GetDisplayPlaneCapabilities2KHR;
-
- // ---- VK_KHR_fragment_shading_rate extension commands
- PFN_vkGetPhysicalDeviceFragmentShadingRatesKHR GetPhysicalDeviceFragmentShadingRatesKHR;
-
- // ---- VK_EXT_debug_report extension commands
- PFN_vkCreateDebugReportCallbackEXT CreateDebugReportCallbackEXT;
- PFN_vkDestroyDebugReportCallbackEXT DestroyDebugReportCallbackEXT;
- PFN_vkDebugReportMessageEXT DebugReportMessageEXT;
-
- // ---- VK_GGP_stream_descriptor_surface extension commands
-#ifdef VK_USE_PLATFORM_GGP
- PFN_vkCreateStreamDescriptorSurfaceGGP CreateStreamDescriptorSurfaceGGP;
-#endif // VK_USE_PLATFORM_GGP
-
- // ---- VK_NV_external_memory_capabilities extension commands
- PFN_vkGetPhysicalDeviceExternalImageFormatPropertiesNV GetPhysicalDeviceExternalImageFormatPropertiesNV;
-
- // ---- VK_NN_vi_surface extension commands
-#ifdef VK_USE_PLATFORM_VI_NN
- PFN_vkCreateViSurfaceNN CreateViSurfaceNN;
-#endif // VK_USE_PLATFORM_VI_NN
-
- // ---- VK_EXT_direct_mode_display extension commands
- PFN_vkReleaseDisplayEXT ReleaseDisplayEXT;
-
- // ---- VK_EXT_acquire_xlib_display extension commands
-#ifdef VK_USE_PLATFORM_XLIB_XRANDR_EXT
- PFN_vkAcquireXlibDisplayEXT AcquireXlibDisplayEXT;
-#endif // VK_USE_PLATFORM_XLIB_XRANDR_EXT
-#ifdef VK_USE_PLATFORM_XLIB_XRANDR_EXT
- PFN_vkGetRandROutputDisplayEXT GetRandROutputDisplayEXT;
-#endif // VK_USE_PLATFORM_XLIB_XRANDR_EXT
-
- // ---- VK_EXT_display_surface_counter extension commands
- PFN_vkGetPhysicalDeviceSurfaceCapabilities2EXT GetPhysicalDeviceSurfaceCapabilities2EXT;
-
- // ---- VK_MVK_ios_surface extension commands
-#ifdef VK_USE_PLATFORM_IOS_MVK
- PFN_vkCreateIOSSurfaceMVK CreateIOSSurfaceMVK;
-#endif // VK_USE_PLATFORM_IOS_MVK
-
- // ---- VK_MVK_macos_surface extension commands
-#ifdef VK_USE_PLATFORM_MACOS_MVK
- PFN_vkCreateMacOSSurfaceMVK CreateMacOSSurfaceMVK;
-#endif // VK_USE_PLATFORM_MACOS_MVK
-
- // ---- VK_EXT_debug_utils extension commands
- PFN_vkCreateDebugUtilsMessengerEXT CreateDebugUtilsMessengerEXT;
- PFN_vkDestroyDebugUtilsMessengerEXT DestroyDebugUtilsMessengerEXT;
- PFN_vkSubmitDebugUtilsMessageEXT SubmitDebugUtilsMessageEXT;
-
- // ---- VK_EXT_sample_locations extension commands
- PFN_vkGetPhysicalDeviceMultisamplePropertiesEXT GetPhysicalDeviceMultisamplePropertiesEXT;
-
- // ---- VK_EXT_calibrated_timestamps extension commands
- PFN_vkGetPhysicalDeviceCalibrateableTimeDomainsEXT GetPhysicalDeviceCalibrateableTimeDomainsEXT;
-
- // ---- VK_FUCHSIA_imagepipe_surface extension commands
-#ifdef VK_USE_PLATFORM_FUCHSIA
- PFN_vkCreateImagePipeSurfaceFUCHSIA CreateImagePipeSurfaceFUCHSIA;
-#endif // VK_USE_PLATFORM_FUCHSIA
-
- // ---- VK_EXT_metal_surface extension commands
-#ifdef VK_USE_PLATFORM_METAL_EXT
- PFN_vkCreateMetalSurfaceEXT CreateMetalSurfaceEXT;
-#endif // VK_USE_PLATFORM_METAL_EXT
-
- // ---- VK_EXT_tooling_info extension commands
- PFN_vkGetPhysicalDeviceToolPropertiesEXT GetPhysicalDeviceToolPropertiesEXT;
-
- // ---- VK_NV_cooperative_matrix extension commands
- PFN_vkGetPhysicalDeviceCooperativeMatrixPropertiesNV GetPhysicalDeviceCooperativeMatrixPropertiesNV;
-
- // ---- VK_NV_coverage_reduction_mode extension commands
- PFN_vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV GetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV;
-
- // ---- VK_EXT_full_screen_exclusive extension commands
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- PFN_vkGetPhysicalDeviceSurfacePresentModes2EXT GetPhysicalDeviceSurfacePresentModes2EXT;
-#endif // VK_USE_PLATFORM_WIN32_KHR
-
- // ---- VK_EXT_headless_surface extension commands
- PFN_vkCreateHeadlessSurfaceEXT CreateHeadlessSurfaceEXT;
-
- // ---- VK_EXT_directfb_surface extension commands
-#ifdef VK_USE_PLATFORM_DIRECTFB_EXT
- PFN_vkCreateDirectFBSurfaceEXT CreateDirectFBSurfaceEXT;
-#endif // VK_USE_PLATFORM_DIRECTFB_EXT
-#ifdef VK_USE_PLATFORM_DIRECTFB_EXT
- PFN_vkGetPhysicalDeviceDirectFBPresentationSupportEXT GetPhysicalDeviceDirectFBPresentationSupportEXT;
-#endif // VK_USE_PLATFORM_DIRECTFB_EXT
-} VkLayerInstanceDispatchTable;
-
-// Device function pointer dispatch table
-typedef struct VkLayerDispatchTable_ {
-
- // ---- Core 1_0 commands
- PFN_vkGetDeviceProcAddr GetDeviceProcAddr;
- PFN_vkDestroyDevice DestroyDevice;
- PFN_vkGetDeviceQueue GetDeviceQueue;
- PFN_vkQueueSubmit QueueSubmit;
- PFN_vkQueueWaitIdle QueueWaitIdle;
- PFN_vkDeviceWaitIdle DeviceWaitIdle;
- PFN_vkAllocateMemory AllocateMemory;
- PFN_vkFreeMemory FreeMemory;
- PFN_vkMapMemory MapMemory;
- PFN_vkUnmapMemory UnmapMemory;
- PFN_vkFlushMappedMemoryRanges FlushMappedMemoryRanges;
- PFN_vkInvalidateMappedMemoryRanges InvalidateMappedMemoryRanges;
- PFN_vkGetDeviceMemoryCommitment GetDeviceMemoryCommitment;
- PFN_vkBindBufferMemory BindBufferMemory;
- PFN_vkBindImageMemory BindImageMemory;
- PFN_vkGetBufferMemoryRequirements GetBufferMemoryRequirements;
- PFN_vkGetImageMemoryRequirements GetImageMemoryRequirements;
- PFN_vkGetImageSparseMemoryRequirements GetImageSparseMemoryRequirements;
- PFN_vkQueueBindSparse QueueBindSparse;
- PFN_vkCreateFence CreateFence;
- PFN_vkDestroyFence DestroyFence;
- PFN_vkResetFences ResetFences;
- PFN_vkGetFenceStatus GetFenceStatus;
- PFN_vkWaitForFences WaitForFences;
- PFN_vkCreateSemaphore CreateSemaphore;
- PFN_vkDestroySemaphore DestroySemaphore;
- PFN_vkCreateEvent CreateEvent;
- PFN_vkDestroyEvent DestroyEvent;
- PFN_vkGetEventStatus GetEventStatus;
- PFN_vkSetEvent SetEvent;
- PFN_vkResetEvent ResetEvent;
- PFN_vkCreateQueryPool CreateQueryPool;
- PFN_vkDestroyQueryPool DestroyQueryPool;
- PFN_vkGetQueryPoolResults GetQueryPoolResults;
- PFN_vkCreateBuffer CreateBuffer;
- PFN_vkDestroyBuffer DestroyBuffer;
- PFN_vkCreateBufferView CreateBufferView;
- PFN_vkDestroyBufferView DestroyBufferView;
- PFN_vkCreateImage CreateImage;
- PFN_vkDestroyImage DestroyImage;
- PFN_vkGetImageSubresourceLayout GetImageSubresourceLayout;
- PFN_vkCreateImageView CreateImageView;
- PFN_vkDestroyImageView DestroyImageView;
- PFN_vkCreateShaderModule CreateShaderModule;
- PFN_vkDestroyShaderModule DestroyShaderModule;
- PFN_vkCreatePipelineCache CreatePipelineCache;
- PFN_vkDestroyPipelineCache DestroyPipelineCache;
- PFN_vkGetPipelineCacheData GetPipelineCacheData;
- PFN_vkMergePipelineCaches MergePipelineCaches;
- PFN_vkCreateGraphicsPipelines CreateGraphicsPipelines;
- PFN_vkCreateComputePipelines CreateComputePipelines;
- PFN_vkDestroyPipeline DestroyPipeline;
- PFN_vkCreatePipelineLayout CreatePipelineLayout;
- PFN_vkDestroyPipelineLayout DestroyPipelineLayout;
- PFN_vkCreateSampler CreateSampler;
- PFN_vkDestroySampler DestroySampler;
- PFN_vkCreateDescriptorSetLayout CreateDescriptorSetLayout;
- PFN_vkDestroyDescriptorSetLayout DestroyDescriptorSetLayout;
- PFN_vkCreateDescriptorPool CreateDescriptorPool;
- PFN_vkDestroyDescriptorPool DestroyDescriptorPool;
- PFN_vkResetDescriptorPool ResetDescriptorPool;
- PFN_vkAllocateDescriptorSets AllocateDescriptorSets;
- PFN_vkFreeDescriptorSets FreeDescriptorSets;
- PFN_vkUpdateDescriptorSets UpdateDescriptorSets;
- PFN_vkCreateFramebuffer CreateFramebuffer;
- PFN_vkDestroyFramebuffer DestroyFramebuffer;
- PFN_vkCreateRenderPass CreateRenderPass;
- PFN_vkDestroyRenderPass DestroyRenderPass;
- PFN_vkGetRenderAreaGranularity GetRenderAreaGranularity;
- PFN_vkCreateCommandPool CreateCommandPool;
- PFN_vkDestroyCommandPool DestroyCommandPool;
- PFN_vkResetCommandPool ResetCommandPool;
- PFN_vkAllocateCommandBuffers AllocateCommandBuffers;
- PFN_vkFreeCommandBuffers FreeCommandBuffers;
- PFN_vkBeginCommandBuffer BeginCommandBuffer;
- PFN_vkEndCommandBuffer EndCommandBuffer;
- PFN_vkResetCommandBuffer ResetCommandBuffer;
- PFN_vkCmdBindPipeline CmdBindPipeline;
- PFN_vkCmdSetViewport CmdSetViewport;
- PFN_vkCmdSetScissor CmdSetScissor;
- PFN_vkCmdSetLineWidth CmdSetLineWidth;
- PFN_vkCmdSetDepthBias CmdSetDepthBias;
- PFN_vkCmdSetBlendConstants CmdSetBlendConstants;
- PFN_vkCmdSetDepthBounds CmdSetDepthBounds;
- PFN_vkCmdSetStencilCompareMask CmdSetStencilCompareMask;
- PFN_vkCmdSetStencilWriteMask CmdSetStencilWriteMask;
- PFN_vkCmdSetStencilReference CmdSetStencilReference;
- PFN_vkCmdBindDescriptorSets CmdBindDescriptorSets;
- PFN_vkCmdBindIndexBuffer CmdBindIndexBuffer;
- PFN_vkCmdBindVertexBuffers CmdBindVertexBuffers;
- PFN_vkCmdDraw CmdDraw;
- PFN_vkCmdDrawIndexed CmdDrawIndexed;
- PFN_vkCmdDrawIndirect CmdDrawIndirect;
- PFN_vkCmdDrawIndexedIndirect CmdDrawIndexedIndirect;
- PFN_vkCmdDispatch CmdDispatch;
- PFN_vkCmdDispatchIndirect CmdDispatchIndirect;
- PFN_vkCmdCopyBuffer CmdCopyBuffer;
- PFN_vkCmdCopyImage CmdCopyImage;
- PFN_vkCmdBlitImage CmdBlitImage;
- PFN_vkCmdCopyBufferToImage CmdCopyBufferToImage;
- PFN_vkCmdCopyImageToBuffer CmdCopyImageToBuffer;
- PFN_vkCmdUpdateBuffer CmdUpdateBuffer;
- PFN_vkCmdFillBuffer CmdFillBuffer;
- PFN_vkCmdClearColorImage CmdClearColorImage;
- PFN_vkCmdClearDepthStencilImage CmdClearDepthStencilImage;
- PFN_vkCmdClearAttachments CmdClearAttachments;
- PFN_vkCmdResolveImage CmdResolveImage;
- PFN_vkCmdSetEvent CmdSetEvent;
- PFN_vkCmdResetEvent CmdResetEvent;
- PFN_vkCmdWaitEvents CmdWaitEvents;
- PFN_vkCmdPipelineBarrier CmdPipelineBarrier;
- PFN_vkCmdBeginQuery CmdBeginQuery;
- PFN_vkCmdEndQuery CmdEndQuery;
- PFN_vkCmdResetQueryPool CmdResetQueryPool;
- PFN_vkCmdWriteTimestamp CmdWriteTimestamp;
- PFN_vkCmdCopyQueryPoolResults CmdCopyQueryPoolResults;
- PFN_vkCmdPushConstants CmdPushConstants;
- PFN_vkCmdBeginRenderPass CmdBeginRenderPass;
- PFN_vkCmdNextSubpass CmdNextSubpass;
- PFN_vkCmdEndRenderPass CmdEndRenderPass;
- PFN_vkCmdExecuteCommands CmdExecuteCommands;
-
- // ---- Core 1_1 commands
- PFN_vkBindBufferMemory2 BindBufferMemory2;
- PFN_vkBindImageMemory2 BindImageMemory2;
- PFN_vkGetDeviceGroupPeerMemoryFeatures GetDeviceGroupPeerMemoryFeatures;
- PFN_vkCmdSetDeviceMask CmdSetDeviceMask;
- PFN_vkCmdDispatchBase CmdDispatchBase;
- PFN_vkGetImageMemoryRequirements2 GetImageMemoryRequirements2;
- PFN_vkGetBufferMemoryRequirements2 GetBufferMemoryRequirements2;
- PFN_vkGetImageSparseMemoryRequirements2 GetImageSparseMemoryRequirements2;
- PFN_vkTrimCommandPool TrimCommandPool;
- PFN_vkGetDeviceQueue2 GetDeviceQueue2;
- PFN_vkCreateSamplerYcbcrConversion CreateSamplerYcbcrConversion;
- PFN_vkDestroySamplerYcbcrConversion DestroySamplerYcbcrConversion;
- PFN_vkCreateDescriptorUpdateTemplate CreateDescriptorUpdateTemplate;
- PFN_vkDestroyDescriptorUpdateTemplate DestroyDescriptorUpdateTemplate;
- PFN_vkUpdateDescriptorSetWithTemplate UpdateDescriptorSetWithTemplate;
- PFN_vkGetDescriptorSetLayoutSupport GetDescriptorSetLayoutSupport;
-
- // ---- Core 1_2 commands
- PFN_vkCmdDrawIndirectCount CmdDrawIndirectCount;
- PFN_vkCmdDrawIndexedIndirectCount CmdDrawIndexedIndirectCount;
- PFN_vkCreateRenderPass2 CreateRenderPass2;
- PFN_vkCmdBeginRenderPass2 CmdBeginRenderPass2;
- PFN_vkCmdNextSubpass2 CmdNextSubpass2;
- PFN_vkCmdEndRenderPass2 CmdEndRenderPass2;
- PFN_vkResetQueryPool ResetQueryPool;
- PFN_vkGetSemaphoreCounterValue GetSemaphoreCounterValue;
- PFN_vkWaitSemaphores WaitSemaphores;
- PFN_vkSignalSemaphore SignalSemaphore;
- PFN_vkGetBufferDeviceAddress GetBufferDeviceAddress;
- PFN_vkGetBufferOpaqueCaptureAddress GetBufferOpaqueCaptureAddress;
- PFN_vkGetDeviceMemoryOpaqueCaptureAddress GetDeviceMemoryOpaqueCaptureAddress;
-
- // ---- VK_KHR_swapchain extension commands
- PFN_vkCreateSwapchainKHR CreateSwapchainKHR;
- PFN_vkDestroySwapchainKHR DestroySwapchainKHR;
- PFN_vkGetSwapchainImagesKHR GetSwapchainImagesKHR;
- PFN_vkAcquireNextImageKHR AcquireNextImageKHR;
- PFN_vkQueuePresentKHR QueuePresentKHR;
- PFN_vkGetDeviceGroupPresentCapabilitiesKHR GetDeviceGroupPresentCapabilitiesKHR;
- PFN_vkGetDeviceGroupSurfacePresentModesKHR GetDeviceGroupSurfacePresentModesKHR;
- PFN_vkAcquireNextImage2KHR AcquireNextImage2KHR;
-
- // ---- VK_KHR_display_swapchain extension commands
- PFN_vkCreateSharedSwapchainsKHR CreateSharedSwapchainsKHR;
-
- // ---- VK_KHR_device_group extension commands
- PFN_vkGetDeviceGroupPeerMemoryFeaturesKHR GetDeviceGroupPeerMemoryFeaturesKHR;
- PFN_vkCmdSetDeviceMaskKHR CmdSetDeviceMaskKHR;
- PFN_vkCmdDispatchBaseKHR CmdDispatchBaseKHR;
-
- // ---- VK_KHR_maintenance1 extension commands
- PFN_vkTrimCommandPoolKHR TrimCommandPoolKHR;
-
- // ---- VK_KHR_external_memory_win32 extension commands
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- PFN_vkGetMemoryWin32HandleKHR GetMemoryWin32HandleKHR;
-#endif // VK_USE_PLATFORM_WIN32_KHR
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- PFN_vkGetMemoryWin32HandlePropertiesKHR GetMemoryWin32HandlePropertiesKHR;
-#endif // VK_USE_PLATFORM_WIN32_KHR
-
- // ---- VK_KHR_external_memory_fd extension commands
- PFN_vkGetMemoryFdKHR GetMemoryFdKHR;
- PFN_vkGetMemoryFdPropertiesKHR GetMemoryFdPropertiesKHR;
-
- // ---- VK_KHR_external_semaphore_win32 extension commands
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- PFN_vkImportSemaphoreWin32HandleKHR ImportSemaphoreWin32HandleKHR;
-#endif // VK_USE_PLATFORM_WIN32_KHR
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- PFN_vkGetSemaphoreWin32HandleKHR GetSemaphoreWin32HandleKHR;
-#endif // VK_USE_PLATFORM_WIN32_KHR
-
- // ---- VK_KHR_external_semaphore_fd extension commands
- PFN_vkImportSemaphoreFdKHR ImportSemaphoreFdKHR;
- PFN_vkGetSemaphoreFdKHR GetSemaphoreFdKHR;
-
- // ---- VK_KHR_push_descriptor extension commands
- PFN_vkCmdPushDescriptorSetKHR CmdPushDescriptorSetKHR;
- PFN_vkCmdPushDescriptorSetWithTemplateKHR CmdPushDescriptorSetWithTemplateKHR;
-
- // ---- VK_KHR_descriptor_update_template extension commands
- PFN_vkCreateDescriptorUpdateTemplateKHR CreateDescriptorUpdateTemplateKHR;
- PFN_vkDestroyDescriptorUpdateTemplateKHR DestroyDescriptorUpdateTemplateKHR;
- PFN_vkUpdateDescriptorSetWithTemplateKHR UpdateDescriptorSetWithTemplateKHR;
-
- // ---- VK_KHR_create_renderpass2 extension commands
- PFN_vkCreateRenderPass2KHR CreateRenderPass2KHR;
- PFN_vkCmdBeginRenderPass2KHR CmdBeginRenderPass2KHR;
- PFN_vkCmdNextSubpass2KHR CmdNextSubpass2KHR;
- PFN_vkCmdEndRenderPass2KHR CmdEndRenderPass2KHR;
-
- // ---- VK_KHR_shared_presentable_image extension commands
- PFN_vkGetSwapchainStatusKHR GetSwapchainStatusKHR;
-
- // ---- VK_KHR_external_fence_win32 extension commands
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- PFN_vkImportFenceWin32HandleKHR ImportFenceWin32HandleKHR;
-#endif // VK_USE_PLATFORM_WIN32_KHR
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- PFN_vkGetFenceWin32HandleKHR GetFenceWin32HandleKHR;
-#endif // VK_USE_PLATFORM_WIN32_KHR
-
- // ---- VK_KHR_external_fence_fd extension commands
- PFN_vkImportFenceFdKHR ImportFenceFdKHR;
- PFN_vkGetFenceFdKHR GetFenceFdKHR;
-
- // ---- VK_KHR_performance_query extension commands
- PFN_vkAcquireProfilingLockKHR AcquireProfilingLockKHR;
- PFN_vkReleaseProfilingLockKHR ReleaseProfilingLockKHR;
-
- // ---- VK_KHR_get_memory_requirements2 extension commands
- PFN_vkGetImageMemoryRequirements2KHR GetImageMemoryRequirements2KHR;
- PFN_vkGetBufferMemoryRequirements2KHR GetBufferMemoryRequirements2KHR;
- PFN_vkGetImageSparseMemoryRequirements2KHR GetImageSparseMemoryRequirements2KHR;
-
- // ---- VK_KHR_sampler_ycbcr_conversion extension commands
- PFN_vkCreateSamplerYcbcrConversionKHR CreateSamplerYcbcrConversionKHR;
- PFN_vkDestroySamplerYcbcrConversionKHR DestroySamplerYcbcrConversionKHR;
-
- // ---- VK_KHR_bind_memory2 extension commands
- PFN_vkBindBufferMemory2KHR BindBufferMemory2KHR;
- PFN_vkBindImageMemory2KHR BindImageMemory2KHR;
-
- // ---- VK_KHR_maintenance3 extension commands
- PFN_vkGetDescriptorSetLayoutSupportKHR GetDescriptorSetLayoutSupportKHR;
-
- // ---- VK_KHR_draw_indirect_count extension commands
- PFN_vkCmdDrawIndirectCountKHR CmdDrawIndirectCountKHR;
- PFN_vkCmdDrawIndexedIndirectCountKHR CmdDrawIndexedIndirectCountKHR;
-
- // ---- VK_KHR_timeline_semaphore extension commands
- PFN_vkGetSemaphoreCounterValueKHR GetSemaphoreCounterValueKHR;
- PFN_vkWaitSemaphoresKHR WaitSemaphoresKHR;
- PFN_vkSignalSemaphoreKHR SignalSemaphoreKHR;
-
- // ---- VK_KHR_fragment_shading_rate extension commands
- PFN_vkCmdSetFragmentShadingRateKHR CmdSetFragmentShadingRateKHR;
-
- // ---- VK_KHR_buffer_device_address extension commands
- PFN_vkGetBufferDeviceAddressKHR GetBufferDeviceAddressKHR;
- PFN_vkGetBufferOpaqueCaptureAddressKHR GetBufferOpaqueCaptureAddressKHR;
- PFN_vkGetDeviceMemoryOpaqueCaptureAddressKHR GetDeviceMemoryOpaqueCaptureAddressKHR;
-
- // ---- VK_KHR_deferred_host_operations extension commands
- PFN_vkCreateDeferredOperationKHR CreateDeferredOperationKHR;
- PFN_vkDestroyDeferredOperationKHR DestroyDeferredOperationKHR;
- PFN_vkGetDeferredOperationMaxConcurrencyKHR GetDeferredOperationMaxConcurrencyKHR;
- PFN_vkGetDeferredOperationResultKHR GetDeferredOperationResultKHR;
- PFN_vkDeferredOperationJoinKHR DeferredOperationJoinKHR;
-
- // ---- VK_KHR_pipeline_executable_properties extension commands
- PFN_vkGetPipelineExecutablePropertiesKHR GetPipelineExecutablePropertiesKHR;
- PFN_vkGetPipelineExecutableStatisticsKHR GetPipelineExecutableStatisticsKHR;
- PFN_vkGetPipelineExecutableInternalRepresentationsKHR GetPipelineExecutableInternalRepresentationsKHR;
-
- // ---- VK_KHR_copy_commands2 extension commands
- PFN_vkCmdCopyBuffer2KHR CmdCopyBuffer2KHR;
- PFN_vkCmdCopyImage2KHR CmdCopyImage2KHR;
- PFN_vkCmdCopyBufferToImage2KHR CmdCopyBufferToImage2KHR;
- PFN_vkCmdCopyImageToBuffer2KHR CmdCopyImageToBuffer2KHR;
- PFN_vkCmdBlitImage2KHR CmdBlitImage2KHR;
- PFN_vkCmdResolveImage2KHR CmdResolveImage2KHR;
-
- // ---- VK_EXT_debug_marker extension commands
- PFN_vkDebugMarkerSetObjectTagEXT DebugMarkerSetObjectTagEXT;
- PFN_vkDebugMarkerSetObjectNameEXT DebugMarkerSetObjectNameEXT;
- PFN_vkCmdDebugMarkerBeginEXT CmdDebugMarkerBeginEXT;
- PFN_vkCmdDebugMarkerEndEXT CmdDebugMarkerEndEXT;
- PFN_vkCmdDebugMarkerInsertEXT CmdDebugMarkerInsertEXT;
-
- // ---- VK_EXT_transform_feedback extension commands
- PFN_vkCmdBindTransformFeedbackBuffersEXT CmdBindTransformFeedbackBuffersEXT;
- PFN_vkCmdBeginTransformFeedbackEXT CmdBeginTransformFeedbackEXT;
- PFN_vkCmdEndTransformFeedbackEXT CmdEndTransformFeedbackEXT;
- PFN_vkCmdBeginQueryIndexedEXT CmdBeginQueryIndexedEXT;
- PFN_vkCmdEndQueryIndexedEXT CmdEndQueryIndexedEXT;
- PFN_vkCmdDrawIndirectByteCountEXT CmdDrawIndirectByteCountEXT;
-
- // ---- VK_NVX_image_view_handle extension commands
- PFN_vkGetImageViewHandleNVX GetImageViewHandleNVX;
- PFN_vkGetImageViewAddressNVX GetImageViewAddressNVX;
-
- // ---- VK_AMD_draw_indirect_count extension commands
- PFN_vkCmdDrawIndirectCountAMD CmdDrawIndirectCountAMD;
- PFN_vkCmdDrawIndexedIndirectCountAMD CmdDrawIndexedIndirectCountAMD;
-
- // ---- VK_AMD_shader_info extension commands
- PFN_vkGetShaderInfoAMD GetShaderInfoAMD;
-
- // ---- VK_NV_external_memory_win32 extension commands
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- PFN_vkGetMemoryWin32HandleNV GetMemoryWin32HandleNV;
-#endif // VK_USE_PLATFORM_WIN32_KHR
-
- // ---- VK_EXT_conditional_rendering extension commands
- PFN_vkCmdBeginConditionalRenderingEXT CmdBeginConditionalRenderingEXT;
- PFN_vkCmdEndConditionalRenderingEXT CmdEndConditionalRenderingEXT;
-
- // ---- VK_NV_clip_space_w_scaling extension commands
- PFN_vkCmdSetViewportWScalingNV CmdSetViewportWScalingNV;
-
- // ---- VK_EXT_display_control extension commands
- PFN_vkDisplayPowerControlEXT DisplayPowerControlEXT;
- PFN_vkRegisterDeviceEventEXT RegisterDeviceEventEXT;
- PFN_vkRegisterDisplayEventEXT RegisterDisplayEventEXT;
- PFN_vkGetSwapchainCounterEXT GetSwapchainCounterEXT;
-
- // ---- VK_GOOGLE_display_timing extension commands
- PFN_vkGetRefreshCycleDurationGOOGLE GetRefreshCycleDurationGOOGLE;
- PFN_vkGetPastPresentationTimingGOOGLE GetPastPresentationTimingGOOGLE;
-
- // ---- VK_EXT_discard_rectangles extension commands
- PFN_vkCmdSetDiscardRectangleEXT CmdSetDiscardRectangleEXT;
-
- // ---- VK_EXT_hdr_metadata extension commands
- PFN_vkSetHdrMetadataEXT SetHdrMetadataEXT;
-
- // ---- VK_EXT_debug_utils extension commands
- PFN_vkSetDebugUtilsObjectNameEXT SetDebugUtilsObjectNameEXT;
- PFN_vkSetDebugUtilsObjectTagEXT SetDebugUtilsObjectTagEXT;
- PFN_vkQueueBeginDebugUtilsLabelEXT QueueBeginDebugUtilsLabelEXT;
- PFN_vkQueueEndDebugUtilsLabelEXT QueueEndDebugUtilsLabelEXT;
- PFN_vkQueueInsertDebugUtilsLabelEXT QueueInsertDebugUtilsLabelEXT;
- PFN_vkCmdBeginDebugUtilsLabelEXT CmdBeginDebugUtilsLabelEXT;
- PFN_vkCmdEndDebugUtilsLabelEXT CmdEndDebugUtilsLabelEXT;
- PFN_vkCmdInsertDebugUtilsLabelEXT CmdInsertDebugUtilsLabelEXT;
-
- // ---- VK_ANDROID_external_memory_android_hardware_buffer extension commands
-#ifdef VK_USE_PLATFORM_ANDROID_KHR
- PFN_vkGetAndroidHardwareBufferPropertiesANDROID GetAndroidHardwareBufferPropertiesANDROID;
-#endif // VK_USE_PLATFORM_ANDROID_KHR
-#ifdef VK_USE_PLATFORM_ANDROID_KHR
- PFN_vkGetMemoryAndroidHardwareBufferANDROID GetMemoryAndroidHardwareBufferANDROID;
-#endif // VK_USE_PLATFORM_ANDROID_KHR
-
- // ---- VK_EXT_sample_locations extension commands
- PFN_vkCmdSetSampleLocationsEXT CmdSetSampleLocationsEXT;
-
- // ---- VK_EXT_image_drm_format_modifier extension commands
- PFN_vkGetImageDrmFormatModifierPropertiesEXT GetImageDrmFormatModifierPropertiesEXT;
-
- // ---- VK_EXT_validation_cache extension commands
- PFN_vkCreateValidationCacheEXT CreateValidationCacheEXT;
- PFN_vkDestroyValidationCacheEXT DestroyValidationCacheEXT;
- PFN_vkMergeValidationCachesEXT MergeValidationCachesEXT;
- PFN_vkGetValidationCacheDataEXT GetValidationCacheDataEXT;
-
- // ---- VK_NV_shading_rate_image extension commands
- PFN_vkCmdBindShadingRateImageNV CmdBindShadingRateImageNV;
- PFN_vkCmdSetViewportShadingRatePaletteNV CmdSetViewportShadingRatePaletteNV;
- PFN_vkCmdSetCoarseSampleOrderNV CmdSetCoarseSampleOrderNV;
-
- // ---- VK_NV_ray_tracing extension commands
- PFN_vkCreateAccelerationStructureNV CreateAccelerationStructureNV;
- PFN_vkDestroyAccelerationStructureNV DestroyAccelerationStructureNV;
- PFN_vkGetAccelerationStructureMemoryRequirementsNV GetAccelerationStructureMemoryRequirementsNV;
- PFN_vkBindAccelerationStructureMemoryNV BindAccelerationStructureMemoryNV;
- PFN_vkCmdBuildAccelerationStructureNV CmdBuildAccelerationStructureNV;
- PFN_vkCmdCopyAccelerationStructureNV CmdCopyAccelerationStructureNV;
- PFN_vkCmdTraceRaysNV CmdTraceRaysNV;
- PFN_vkCreateRayTracingPipelinesNV CreateRayTracingPipelinesNV;
- PFN_vkGetRayTracingShaderGroupHandlesKHR GetRayTracingShaderGroupHandlesKHR;
- PFN_vkGetRayTracingShaderGroupHandlesNV GetRayTracingShaderGroupHandlesNV;
- PFN_vkGetAccelerationStructureHandleNV GetAccelerationStructureHandleNV;
- PFN_vkCmdWriteAccelerationStructuresPropertiesNV CmdWriteAccelerationStructuresPropertiesNV;
- PFN_vkCompileDeferredNV CompileDeferredNV;
-
- // ---- VK_EXT_external_memory_host extension commands
- PFN_vkGetMemoryHostPointerPropertiesEXT GetMemoryHostPointerPropertiesEXT;
-
- // ---- VK_AMD_buffer_marker extension commands
- PFN_vkCmdWriteBufferMarkerAMD CmdWriteBufferMarkerAMD;
-
- // ---- VK_EXT_calibrated_timestamps extension commands
- PFN_vkGetCalibratedTimestampsEXT GetCalibratedTimestampsEXT;
-
- // ---- VK_NV_mesh_shader extension commands
- PFN_vkCmdDrawMeshTasksNV CmdDrawMeshTasksNV;
- PFN_vkCmdDrawMeshTasksIndirectNV CmdDrawMeshTasksIndirectNV;
- PFN_vkCmdDrawMeshTasksIndirectCountNV CmdDrawMeshTasksIndirectCountNV;
-
- // ---- VK_NV_scissor_exclusive extension commands
- PFN_vkCmdSetExclusiveScissorNV CmdSetExclusiveScissorNV;
-
- // ---- VK_NV_device_diagnostic_checkpoints extension commands
- PFN_vkCmdSetCheckpointNV CmdSetCheckpointNV;
- PFN_vkGetQueueCheckpointDataNV GetQueueCheckpointDataNV;
-
- // ---- VK_INTEL_performance_query extension commands
- PFN_vkInitializePerformanceApiINTEL InitializePerformanceApiINTEL;
- PFN_vkUninitializePerformanceApiINTEL UninitializePerformanceApiINTEL;
- PFN_vkCmdSetPerformanceMarkerINTEL CmdSetPerformanceMarkerINTEL;
- PFN_vkCmdSetPerformanceStreamMarkerINTEL CmdSetPerformanceStreamMarkerINTEL;
- PFN_vkCmdSetPerformanceOverrideINTEL CmdSetPerformanceOverrideINTEL;
- PFN_vkAcquirePerformanceConfigurationINTEL AcquirePerformanceConfigurationINTEL;
- PFN_vkReleasePerformanceConfigurationINTEL ReleasePerformanceConfigurationINTEL;
- PFN_vkQueueSetPerformanceConfigurationINTEL QueueSetPerformanceConfigurationINTEL;
- PFN_vkGetPerformanceParameterINTEL GetPerformanceParameterINTEL;
-
- // ---- VK_AMD_display_native_hdr extension commands
- PFN_vkSetLocalDimmingAMD SetLocalDimmingAMD;
-
- // ---- VK_EXT_buffer_device_address extension commands
- PFN_vkGetBufferDeviceAddressEXT GetBufferDeviceAddressEXT;
-
- // ---- VK_EXT_full_screen_exclusive extension commands
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- PFN_vkAcquireFullScreenExclusiveModeEXT AcquireFullScreenExclusiveModeEXT;
-#endif // VK_USE_PLATFORM_WIN32_KHR
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- PFN_vkReleaseFullScreenExclusiveModeEXT ReleaseFullScreenExclusiveModeEXT;
-#endif // VK_USE_PLATFORM_WIN32_KHR
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- PFN_vkGetDeviceGroupSurfacePresentModes2EXT GetDeviceGroupSurfacePresentModes2EXT;
-#endif // VK_USE_PLATFORM_WIN32_KHR
-
- // ---- VK_EXT_line_rasterization extension commands
- PFN_vkCmdSetLineStippleEXT CmdSetLineStippleEXT;
-
- // ---- VK_EXT_host_query_reset extension commands
- PFN_vkResetQueryPoolEXT ResetQueryPoolEXT;
-
- // ---- VK_EXT_extended_dynamic_state extension commands
- PFN_vkCmdSetCullModeEXT CmdSetCullModeEXT;
- PFN_vkCmdSetFrontFaceEXT CmdSetFrontFaceEXT;
- PFN_vkCmdSetPrimitiveTopologyEXT CmdSetPrimitiveTopologyEXT;
- PFN_vkCmdSetViewportWithCountEXT CmdSetViewportWithCountEXT;
- PFN_vkCmdSetScissorWithCountEXT CmdSetScissorWithCountEXT;
- PFN_vkCmdBindVertexBuffers2EXT CmdBindVertexBuffers2EXT;
- PFN_vkCmdSetDepthTestEnableEXT CmdSetDepthTestEnableEXT;
- PFN_vkCmdSetDepthWriteEnableEXT CmdSetDepthWriteEnableEXT;
- PFN_vkCmdSetDepthCompareOpEXT CmdSetDepthCompareOpEXT;
- PFN_vkCmdSetDepthBoundsTestEnableEXT CmdSetDepthBoundsTestEnableEXT;
- PFN_vkCmdSetStencilTestEnableEXT CmdSetStencilTestEnableEXT;
- PFN_vkCmdSetStencilOpEXT CmdSetStencilOpEXT;
-
- // ---- VK_NV_device_generated_commands extension commands
- PFN_vkGetGeneratedCommandsMemoryRequirementsNV GetGeneratedCommandsMemoryRequirementsNV;
- PFN_vkCmdPreprocessGeneratedCommandsNV CmdPreprocessGeneratedCommandsNV;
- PFN_vkCmdExecuteGeneratedCommandsNV CmdExecuteGeneratedCommandsNV;
- PFN_vkCmdBindPipelineShaderGroupNV CmdBindPipelineShaderGroupNV;
- PFN_vkCreateIndirectCommandsLayoutNV CreateIndirectCommandsLayoutNV;
- PFN_vkDestroyIndirectCommandsLayoutNV DestroyIndirectCommandsLayoutNV;
-
- // ---- VK_EXT_private_data extension commands
- PFN_vkCreatePrivateDataSlotEXT CreatePrivateDataSlotEXT;
- PFN_vkDestroyPrivateDataSlotEXT DestroyPrivateDataSlotEXT;
- PFN_vkSetPrivateDataEXT SetPrivateDataEXT;
- PFN_vkGetPrivateDataEXT GetPrivateDataEXT;
-
- // ---- VK_NV_fragment_shading_rate_enums extension commands
- PFN_vkCmdSetFragmentShadingRateEnumNV CmdSetFragmentShadingRateEnumNV;
-
- // ---- VK_KHR_acceleration_structure extension commands
- PFN_vkCreateAccelerationStructureKHR CreateAccelerationStructureKHR;
- PFN_vkDestroyAccelerationStructureKHR DestroyAccelerationStructureKHR;
- PFN_vkCmdBuildAccelerationStructuresKHR CmdBuildAccelerationStructuresKHR;
- PFN_vkCmdBuildAccelerationStructuresIndirectKHR CmdBuildAccelerationStructuresIndirectKHR;
- PFN_vkBuildAccelerationStructuresKHR BuildAccelerationStructuresKHR;
- PFN_vkCopyAccelerationStructureKHR CopyAccelerationStructureKHR;
- PFN_vkCopyAccelerationStructureToMemoryKHR CopyAccelerationStructureToMemoryKHR;
- PFN_vkCopyMemoryToAccelerationStructureKHR CopyMemoryToAccelerationStructureKHR;
- PFN_vkWriteAccelerationStructuresPropertiesKHR WriteAccelerationStructuresPropertiesKHR;
- PFN_vkCmdCopyAccelerationStructureKHR CmdCopyAccelerationStructureKHR;
- PFN_vkCmdCopyAccelerationStructureToMemoryKHR CmdCopyAccelerationStructureToMemoryKHR;
- PFN_vkCmdCopyMemoryToAccelerationStructureKHR CmdCopyMemoryToAccelerationStructureKHR;
- PFN_vkGetAccelerationStructureDeviceAddressKHR GetAccelerationStructureDeviceAddressKHR;
- PFN_vkCmdWriteAccelerationStructuresPropertiesKHR CmdWriteAccelerationStructuresPropertiesKHR;
- PFN_vkGetDeviceAccelerationStructureCompatibilityKHR GetDeviceAccelerationStructureCompatibilityKHR;
- PFN_vkGetAccelerationStructureBuildSizesKHR GetAccelerationStructureBuildSizesKHR;
-
- // ---- VK_KHR_ray_tracing_pipeline extension commands
- PFN_vkCmdTraceRaysKHR CmdTraceRaysKHR;
- PFN_vkCreateRayTracingPipelinesKHR CreateRayTracingPipelinesKHR;
- PFN_vkGetRayTracingCaptureReplayShaderGroupHandlesKHR GetRayTracingCaptureReplayShaderGroupHandlesKHR;
- PFN_vkCmdTraceRaysIndirectKHR CmdTraceRaysIndirectKHR;
- PFN_vkGetRayTracingShaderGroupStackSizeKHR GetRayTracingShaderGroupStackSizeKHR;
- PFN_vkCmdSetRayTracingPipelineStackSizeKHR CmdSetRayTracingPipelineStackSizeKHR;
-} VkLayerDispatchTable;
-
-
diff --git a/thirdparty/vulkan/loader/vk_loader_extensions.c b/thirdparty/vulkan/loader/vk_loader_extensions.c
deleted file mode 100644
index 7a37d0ec8b..0000000000
--- a/thirdparty/vulkan/loader/vk_loader_extensions.c
+++ /dev/null
@@ -1,5483 +0,0 @@
-// *** THIS FILE IS GENERATED - DO NOT EDIT ***
-// See loader_extension_generator.py for modifications
-
-/*
- * Copyright (c) 2015-2017 The Khronos Group Inc.
- * Copyright (c) 2015-2017 Valve Corporation
- * Copyright (c) 2015-2017 LunarG, Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * Author: Mark Lobodzinski <mark@lunarg.com>
- * Author: Mark Young <marky@lunarg.com>
- */
-
-#ifndef _GNU_SOURCE
-#define _GNU_SOURCE
-#endif
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include "vk_loader_platform.h"
-#include "loader.h"
-#include "vk_loader_extensions.h"
-#include <vulkan/vk_icd.h>
-#include "wsi.h"
-#include "debug_utils.h"
-#include "extension_manual.h"
-
-// Device extension error function
-VKAPI_ATTR VkResult VKAPI_CALL vkDevExtError(VkDevice dev) {
- struct loader_device *found_dev;
- // The device going in is a trampoline device
- struct loader_icd_term *icd_term = loader_get_icd_and_device(dev, &found_dev, NULL);
-
- if (icd_term)
- loader_log(icd_term->this_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "Bad destination in loader trampoline dispatch,"
- "Are layers and extensions that you are calling enabled?");
- return VK_ERROR_EXTENSION_NOT_PRESENT;
-}
-
-VKAPI_ATTR bool VKAPI_CALL loader_icd_init_entries(struct loader_icd_term *icd_term, VkInstance inst,
- const PFN_vkGetInstanceProcAddr fp_gipa) {
-
-#define LOOKUP_GIPA(func, required) \
- do { \
- icd_term->dispatch.func = (PFN_vk##func)fp_gipa(inst, "vk" #func); \
- if (!icd_term->dispatch.func && required) { \
- loader_log((struct loader_instance *)inst, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0, \
- loader_platform_get_proc_address_error("vk" #func)); \
- return false; \
- } \
- } while (0)
-
-
- // ---- Core 1_0
- LOOKUP_GIPA(DestroyInstance, true);
- LOOKUP_GIPA(EnumeratePhysicalDevices, true);
- LOOKUP_GIPA(GetPhysicalDeviceFeatures, true);
- LOOKUP_GIPA(GetPhysicalDeviceFormatProperties, true);
- LOOKUP_GIPA(GetPhysicalDeviceImageFormatProperties, true);
- LOOKUP_GIPA(GetPhysicalDeviceProperties, true);
- LOOKUP_GIPA(GetPhysicalDeviceQueueFamilyProperties, true);
- LOOKUP_GIPA(GetPhysicalDeviceMemoryProperties, true);
- LOOKUP_GIPA(GetDeviceProcAddr, true);
- LOOKUP_GIPA(CreateDevice, true);
- LOOKUP_GIPA(EnumerateDeviceExtensionProperties, true);
- LOOKUP_GIPA(GetPhysicalDeviceSparseImageFormatProperties, true);
-
- // ---- Core 1_1
- LOOKUP_GIPA(EnumeratePhysicalDeviceGroups, false);
- LOOKUP_GIPA(GetPhysicalDeviceFeatures2, false);
- LOOKUP_GIPA(GetPhysicalDeviceProperties2, false);
- LOOKUP_GIPA(GetPhysicalDeviceFormatProperties2, false);
- LOOKUP_GIPA(GetPhysicalDeviceImageFormatProperties2, false);
- LOOKUP_GIPA(GetPhysicalDeviceQueueFamilyProperties2, false);
- LOOKUP_GIPA(GetPhysicalDeviceMemoryProperties2, false);
- LOOKUP_GIPA(GetPhysicalDeviceSparseImageFormatProperties2, false);
- LOOKUP_GIPA(GetPhysicalDeviceExternalBufferProperties, false);
- LOOKUP_GIPA(GetPhysicalDeviceExternalFenceProperties, false);
- LOOKUP_GIPA(GetPhysicalDeviceExternalSemaphoreProperties, false);
-
- // ---- VK_KHR_surface extension commands
- LOOKUP_GIPA(DestroySurfaceKHR, false);
- LOOKUP_GIPA(GetPhysicalDeviceSurfaceSupportKHR, false);
- LOOKUP_GIPA(GetPhysicalDeviceSurfaceCapabilitiesKHR, false);
- LOOKUP_GIPA(GetPhysicalDeviceSurfaceFormatsKHR, false);
- LOOKUP_GIPA(GetPhysicalDeviceSurfacePresentModesKHR, false);
-
- // ---- VK_KHR_swapchain extension commands
- LOOKUP_GIPA(CreateSwapchainKHR, false);
- LOOKUP_GIPA(GetDeviceGroupSurfacePresentModesKHR, false);
- LOOKUP_GIPA(GetPhysicalDevicePresentRectanglesKHR, false);
-
- // ---- VK_KHR_display extension commands
- LOOKUP_GIPA(GetPhysicalDeviceDisplayPropertiesKHR, false);
- LOOKUP_GIPA(GetPhysicalDeviceDisplayPlanePropertiesKHR, false);
- LOOKUP_GIPA(GetDisplayPlaneSupportedDisplaysKHR, false);
- LOOKUP_GIPA(GetDisplayModePropertiesKHR, false);
- LOOKUP_GIPA(CreateDisplayModeKHR, false);
- LOOKUP_GIPA(GetDisplayPlaneCapabilitiesKHR, false);
- LOOKUP_GIPA(CreateDisplayPlaneSurfaceKHR, false);
-
- // ---- VK_KHR_display_swapchain extension commands
- LOOKUP_GIPA(CreateSharedSwapchainsKHR, false);
-
- // ---- VK_KHR_xlib_surface extension commands
-#ifdef VK_USE_PLATFORM_XLIB_KHR
- LOOKUP_GIPA(CreateXlibSurfaceKHR, false);
-#endif // VK_USE_PLATFORM_XLIB_KHR
-#ifdef VK_USE_PLATFORM_XLIB_KHR
- LOOKUP_GIPA(GetPhysicalDeviceXlibPresentationSupportKHR, false);
-#endif // VK_USE_PLATFORM_XLIB_KHR
-
- // ---- VK_KHR_xcb_surface extension commands
-#ifdef VK_USE_PLATFORM_XCB_KHR
- LOOKUP_GIPA(CreateXcbSurfaceKHR, false);
-#endif // VK_USE_PLATFORM_XCB_KHR
-#ifdef VK_USE_PLATFORM_XCB_KHR
- LOOKUP_GIPA(GetPhysicalDeviceXcbPresentationSupportKHR, false);
-#endif // VK_USE_PLATFORM_XCB_KHR
-
- // ---- VK_KHR_wayland_surface extension commands
-#ifdef VK_USE_PLATFORM_WAYLAND_KHR
- LOOKUP_GIPA(CreateWaylandSurfaceKHR, false);
-#endif // VK_USE_PLATFORM_WAYLAND_KHR
-#ifdef VK_USE_PLATFORM_WAYLAND_KHR
- LOOKUP_GIPA(GetPhysicalDeviceWaylandPresentationSupportKHR, false);
-#endif // VK_USE_PLATFORM_WAYLAND_KHR
-
- // ---- VK_KHR_android_surface extension commands
-#ifdef VK_USE_PLATFORM_ANDROID_KHR
- LOOKUP_GIPA(CreateAndroidSurfaceKHR, false);
-#endif // VK_USE_PLATFORM_ANDROID_KHR
-
- // ---- VK_KHR_win32_surface extension commands
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- LOOKUP_GIPA(CreateWin32SurfaceKHR, false);
-#endif // VK_USE_PLATFORM_WIN32_KHR
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- LOOKUP_GIPA(GetPhysicalDeviceWin32PresentationSupportKHR, false);
-#endif // VK_USE_PLATFORM_WIN32_KHR
-
- // ---- VK_KHR_get_physical_device_properties2 extension commands
- LOOKUP_GIPA(GetPhysicalDeviceFeatures2KHR, false);
- LOOKUP_GIPA(GetPhysicalDeviceProperties2KHR, false);
- LOOKUP_GIPA(GetPhysicalDeviceFormatProperties2KHR, false);
- LOOKUP_GIPA(GetPhysicalDeviceImageFormatProperties2KHR, false);
- LOOKUP_GIPA(GetPhysicalDeviceQueueFamilyProperties2KHR, false);
- LOOKUP_GIPA(GetPhysicalDeviceMemoryProperties2KHR, false);
- LOOKUP_GIPA(GetPhysicalDeviceSparseImageFormatProperties2KHR, false);
-
- // ---- VK_KHR_device_group_creation extension commands
- LOOKUP_GIPA(EnumeratePhysicalDeviceGroupsKHR, false);
-
- // ---- VK_KHR_external_memory_capabilities extension commands
- LOOKUP_GIPA(GetPhysicalDeviceExternalBufferPropertiesKHR, false);
-
- // ---- VK_KHR_external_semaphore_capabilities extension commands
- LOOKUP_GIPA(GetPhysicalDeviceExternalSemaphorePropertiesKHR, false);
-
- // ---- VK_KHR_external_fence_capabilities extension commands
- LOOKUP_GIPA(GetPhysicalDeviceExternalFencePropertiesKHR, false);
-
- // ---- VK_KHR_performance_query extension commands
- LOOKUP_GIPA(EnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR, false);
- LOOKUP_GIPA(GetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR, false);
-
- // ---- VK_KHR_get_surface_capabilities2 extension commands
- LOOKUP_GIPA(GetPhysicalDeviceSurfaceCapabilities2KHR, false);
- LOOKUP_GIPA(GetPhysicalDeviceSurfaceFormats2KHR, false);
-
- // ---- VK_KHR_get_display_properties2 extension commands
- LOOKUP_GIPA(GetPhysicalDeviceDisplayProperties2KHR, false);
- LOOKUP_GIPA(GetPhysicalDeviceDisplayPlaneProperties2KHR, false);
- LOOKUP_GIPA(GetDisplayModeProperties2KHR, false);
- LOOKUP_GIPA(GetDisplayPlaneCapabilities2KHR, false);
-
- // ---- VK_KHR_fragment_shading_rate extension commands
- LOOKUP_GIPA(GetPhysicalDeviceFragmentShadingRatesKHR, false);
-
- // ---- VK_EXT_debug_report extension commands
- LOOKUP_GIPA(CreateDebugReportCallbackEXT, false);
- LOOKUP_GIPA(DestroyDebugReportCallbackEXT, false);
- LOOKUP_GIPA(DebugReportMessageEXT, false);
-
- // ---- VK_EXT_debug_marker extension commands
- LOOKUP_GIPA(DebugMarkerSetObjectTagEXT, false);
- LOOKUP_GIPA(DebugMarkerSetObjectNameEXT, false);
-
- // ---- VK_GGP_stream_descriptor_surface extension commands
-#ifdef VK_USE_PLATFORM_GGP
- LOOKUP_GIPA(CreateStreamDescriptorSurfaceGGP, false);
-#endif // VK_USE_PLATFORM_GGP
-
- // ---- VK_NV_external_memory_capabilities extension commands
- LOOKUP_GIPA(GetPhysicalDeviceExternalImageFormatPropertiesNV, false);
-
- // ---- VK_NN_vi_surface extension commands
-#ifdef VK_USE_PLATFORM_VI_NN
- LOOKUP_GIPA(CreateViSurfaceNN, false);
-#endif // VK_USE_PLATFORM_VI_NN
-
- // ---- VK_EXT_direct_mode_display extension commands
- LOOKUP_GIPA(ReleaseDisplayEXT, false);
-
- // ---- VK_EXT_acquire_xlib_display extension commands
-#ifdef VK_USE_PLATFORM_XLIB_XRANDR_EXT
- LOOKUP_GIPA(AcquireXlibDisplayEXT, false);
-#endif // VK_USE_PLATFORM_XLIB_XRANDR_EXT
-#ifdef VK_USE_PLATFORM_XLIB_XRANDR_EXT
- LOOKUP_GIPA(GetRandROutputDisplayEXT, false);
-#endif // VK_USE_PLATFORM_XLIB_XRANDR_EXT
-
- // ---- VK_EXT_display_surface_counter extension commands
- LOOKUP_GIPA(GetPhysicalDeviceSurfaceCapabilities2EXT, false);
-
- // ---- VK_MVK_ios_surface extension commands
-#ifdef VK_USE_PLATFORM_IOS_MVK
- LOOKUP_GIPA(CreateIOSSurfaceMVK, false);
-#endif // VK_USE_PLATFORM_IOS_MVK
-
- // ---- VK_MVK_macos_surface extension commands
-#ifdef VK_USE_PLATFORM_MACOS_MVK
- LOOKUP_GIPA(CreateMacOSSurfaceMVK, false);
-#endif // VK_USE_PLATFORM_MACOS_MVK
-
- // ---- VK_EXT_debug_utils extension commands
- LOOKUP_GIPA(SetDebugUtilsObjectNameEXT, false);
- LOOKUP_GIPA(SetDebugUtilsObjectTagEXT, false);
- LOOKUP_GIPA(QueueBeginDebugUtilsLabelEXT, false);
- LOOKUP_GIPA(QueueEndDebugUtilsLabelEXT, false);
- LOOKUP_GIPA(QueueInsertDebugUtilsLabelEXT, false);
- LOOKUP_GIPA(CmdBeginDebugUtilsLabelEXT, false);
- LOOKUP_GIPA(CmdEndDebugUtilsLabelEXT, false);
- LOOKUP_GIPA(CmdInsertDebugUtilsLabelEXT, false);
- LOOKUP_GIPA(CreateDebugUtilsMessengerEXT, false);
- LOOKUP_GIPA(DestroyDebugUtilsMessengerEXT, false);
- LOOKUP_GIPA(SubmitDebugUtilsMessageEXT, false);
-
- // ---- VK_EXT_sample_locations extension commands
- LOOKUP_GIPA(GetPhysicalDeviceMultisamplePropertiesEXT, false);
-
- // ---- VK_EXT_calibrated_timestamps extension commands
- LOOKUP_GIPA(GetPhysicalDeviceCalibrateableTimeDomainsEXT, false);
-
- // ---- VK_FUCHSIA_imagepipe_surface extension commands
-#ifdef VK_USE_PLATFORM_FUCHSIA
- LOOKUP_GIPA(CreateImagePipeSurfaceFUCHSIA, false);
-#endif // VK_USE_PLATFORM_FUCHSIA
-
- // ---- VK_EXT_metal_surface extension commands
-#ifdef VK_USE_PLATFORM_METAL_EXT
- LOOKUP_GIPA(CreateMetalSurfaceEXT, false);
-#endif // VK_USE_PLATFORM_METAL_EXT
-
- // ---- VK_EXT_tooling_info extension commands
- LOOKUP_GIPA(GetPhysicalDeviceToolPropertiesEXT, false);
-
- // ---- VK_NV_cooperative_matrix extension commands
- LOOKUP_GIPA(GetPhysicalDeviceCooperativeMatrixPropertiesNV, false);
-
- // ---- VK_NV_coverage_reduction_mode extension commands
- LOOKUP_GIPA(GetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV, false);
-
- // ---- VK_EXT_full_screen_exclusive extension commands
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- LOOKUP_GIPA(GetPhysicalDeviceSurfacePresentModes2EXT, false);
-#endif // VK_USE_PLATFORM_WIN32_KHR
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- LOOKUP_GIPA(GetDeviceGroupSurfacePresentModes2EXT, false);
-#endif // VK_USE_PLATFORM_WIN32_KHR
-
- // ---- VK_EXT_headless_surface extension commands
- LOOKUP_GIPA(CreateHeadlessSurfaceEXT, false);
-
- // ---- VK_EXT_directfb_surface extension commands
-#ifdef VK_USE_PLATFORM_DIRECTFB_EXT
- LOOKUP_GIPA(CreateDirectFBSurfaceEXT, false);
-#endif // VK_USE_PLATFORM_DIRECTFB_EXT
-#ifdef VK_USE_PLATFORM_DIRECTFB_EXT
- LOOKUP_GIPA(GetPhysicalDeviceDirectFBPresentationSupportEXT, false);
-#endif // VK_USE_PLATFORM_DIRECTFB_EXT
-
-#undef LOOKUP_GIPA
-
- return true;
-};
-
-// Init Device function pointer dispatch table with core commands
-VKAPI_ATTR void VKAPI_CALL loader_init_device_dispatch_table(struct loader_dev_dispatch_table *dev_table, PFN_vkGetDeviceProcAddr gpa,
- VkDevice dev) {
- VkLayerDispatchTable *table = &dev_table->core_dispatch;
- for (uint32_t i = 0; i < MAX_NUM_UNKNOWN_EXTS; i++) dev_table->ext_dispatch.dev_ext[i] = (PFN_vkDevExt)vkDevExtError;
-
- // ---- Core 1_0 commands
- table->GetDeviceProcAddr = gpa;
- table->DestroyDevice = (PFN_vkDestroyDevice)gpa(dev, "vkDestroyDevice");
- table->GetDeviceQueue = (PFN_vkGetDeviceQueue)gpa(dev, "vkGetDeviceQueue");
- table->QueueSubmit = (PFN_vkQueueSubmit)gpa(dev, "vkQueueSubmit");
- table->QueueWaitIdle = (PFN_vkQueueWaitIdle)gpa(dev, "vkQueueWaitIdle");
- table->DeviceWaitIdle = (PFN_vkDeviceWaitIdle)gpa(dev, "vkDeviceWaitIdle");
- table->AllocateMemory = (PFN_vkAllocateMemory)gpa(dev, "vkAllocateMemory");
- table->FreeMemory = (PFN_vkFreeMemory)gpa(dev, "vkFreeMemory");
- table->MapMemory = (PFN_vkMapMemory)gpa(dev, "vkMapMemory");
- table->UnmapMemory = (PFN_vkUnmapMemory)gpa(dev, "vkUnmapMemory");
- table->FlushMappedMemoryRanges = (PFN_vkFlushMappedMemoryRanges)gpa(dev, "vkFlushMappedMemoryRanges");
- table->InvalidateMappedMemoryRanges = (PFN_vkInvalidateMappedMemoryRanges)gpa(dev, "vkInvalidateMappedMemoryRanges");
- table->GetDeviceMemoryCommitment = (PFN_vkGetDeviceMemoryCommitment)gpa(dev, "vkGetDeviceMemoryCommitment");
- table->BindBufferMemory = (PFN_vkBindBufferMemory)gpa(dev, "vkBindBufferMemory");
- table->BindImageMemory = (PFN_vkBindImageMemory)gpa(dev, "vkBindImageMemory");
- table->GetBufferMemoryRequirements = (PFN_vkGetBufferMemoryRequirements)gpa(dev, "vkGetBufferMemoryRequirements");
- table->GetImageMemoryRequirements = (PFN_vkGetImageMemoryRequirements)gpa(dev, "vkGetImageMemoryRequirements");
- table->GetImageSparseMemoryRequirements = (PFN_vkGetImageSparseMemoryRequirements)gpa(dev, "vkGetImageSparseMemoryRequirements");
- table->QueueBindSparse = (PFN_vkQueueBindSparse)gpa(dev, "vkQueueBindSparse");
- table->CreateFence = (PFN_vkCreateFence)gpa(dev, "vkCreateFence");
- table->DestroyFence = (PFN_vkDestroyFence)gpa(dev, "vkDestroyFence");
- table->ResetFences = (PFN_vkResetFences)gpa(dev, "vkResetFences");
- table->GetFenceStatus = (PFN_vkGetFenceStatus)gpa(dev, "vkGetFenceStatus");
- table->WaitForFences = (PFN_vkWaitForFences)gpa(dev, "vkWaitForFences");
- table->CreateSemaphore = (PFN_vkCreateSemaphore)gpa(dev, "vkCreateSemaphore");
- table->DestroySemaphore = (PFN_vkDestroySemaphore)gpa(dev, "vkDestroySemaphore");
- table->CreateEvent = (PFN_vkCreateEvent)gpa(dev, "vkCreateEvent");
- table->DestroyEvent = (PFN_vkDestroyEvent)gpa(dev, "vkDestroyEvent");
- table->GetEventStatus = (PFN_vkGetEventStatus)gpa(dev, "vkGetEventStatus");
- table->SetEvent = (PFN_vkSetEvent)gpa(dev, "vkSetEvent");
- table->ResetEvent = (PFN_vkResetEvent)gpa(dev, "vkResetEvent");
- table->CreateQueryPool = (PFN_vkCreateQueryPool)gpa(dev, "vkCreateQueryPool");
- table->DestroyQueryPool = (PFN_vkDestroyQueryPool)gpa(dev, "vkDestroyQueryPool");
- table->GetQueryPoolResults = (PFN_vkGetQueryPoolResults)gpa(dev, "vkGetQueryPoolResults");
- table->CreateBuffer = (PFN_vkCreateBuffer)gpa(dev, "vkCreateBuffer");
- table->DestroyBuffer = (PFN_vkDestroyBuffer)gpa(dev, "vkDestroyBuffer");
- table->CreateBufferView = (PFN_vkCreateBufferView)gpa(dev, "vkCreateBufferView");
- table->DestroyBufferView = (PFN_vkDestroyBufferView)gpa(dev, "vkDestroyBufferView");
- table->CreateImage = (PFN_vkCreateImage)gpa(dev, "vkCreateImage");
- table->DestroyImage = (PFN_vkDestroyImage)gpa(dev, "vkDestroyImage");
- table->GetImageSubresourceLayout = (PFN_vkGetImageSubresourceLayout)gpa(dev, "vkGetImageSubresourceLayout");
- table->CreateImageView = (PFN_vkCreateImageView)gpa(dev, "vkCreateImageView");
- table->DestroyImageView = (PFN_vkDestroyImageView)gpa(dev, "vkDestroyImageView");
- table->CreateShaderModule = (PFN_vkCreateShaderModule)gpa(dev, "vkCreateShaderModule");
- table->DestroyShaderModule = (PFN_vkDestroyShaderModule)gpa(dev, "vkDestroyShaderModule");
- table->CreatePipelineCache = (PFN_vkCreatePipelineCache)gpa(dev, "vkCreatePipelineCache");
- table->DestroyPipelineCache = (PFN_vkDestroyPipelineCache)gpa(dev, "vkDestroyPipelineCache");
- table->GetPipelineCacheData = (PFN_vkGetPipelineCacheData)gpa(dev, "vkGetPipelineCacheData");
- table->MergePipelineCaches = (PFN_vkMergePipelineCaches)gpa(dev, "vkMergePipelineCaches");
- table->CreateGraphicsPipelines = (PFN_vkCreateGraphicsPipelines)gpa(dev, "vkCreateGraphicsPipelines");
- table->CreateComputePipelines = (PFN_vkCreateComputePipelines)gpa(dev, "vkCreateComputePipelines");
- table->DestroyPipeline = (PFN_vkDestroyPipeline)gpa(dev, "vkDestroyPipeline");
- table->CreatePipelineLayout = (PFN_vkCreatePipelineLayout)gpa(dev, "vkCreatePipelineLayout");
- table->DestroyPipelineLayout = (PFN_vkDestroyPipelineLayout)gpa(dev, "vkDestroyPipelineLayout");
- table->CreateSampler = (PFN_vkCreateSampler)gpa(dev, "vkCreateSampler");
- table->DestroySampler = (PFN_vkDestroySampler)gpa(dev, "vkDestroySampler");
- table->CreateDescriptorSetLayout = (PFN_vkCreateDescriptorSetLayout)gpa(dev, "vkCreateDescriptorSetLayout");
- table->DestroyDescriptorSetLayout = (PFN_vkDestroyDescriptorSetLayout)gpa(dev, "vkDestroyDescriptorSetLayout");
- table->CreateDescriptorPool = (PFN_vkCreateDescriptorPool)gpa(dev, "vkCreateDescriptorPool");
- table->DestroyDescriptorPool = (PFN_vkDestroyDescriptorPool)gpa(dev, "vkDestroyDescriptorPool");
- table->ResetDescriptorPool = (PFN_vkResetDescriptorPool)gpa(dev, "vkResetDescriptorPool");
- table->AllocateDescriptorSets = (PFN_vkAllocateDescriptorSets)gpa(dev, "vkAllocateDescriptorSets");
- table->FreeDescriptorSets = (PFN_vkFreeDescriptorSets)gpa(dev, "vkFreeDescriptorSets");
- table->UpdateDescriptorSets = (PFN_vkUpdateDescriptorSets)gpa(dev, "vkUpdateDescriptorSets");
- table->CreateFramebuffer = (PFN_vkCreateFramebuffer)gpa(dev, "vkCreateFramebuffer");
- table->DestroyFramebuffer = (PFN_vkDestroyFramebuffer)gpa(dev, "vkDestroyFramebuffer");
- table->CreateRenderPass = (PFN_vkCreateRenderPass)gpa(dev, "vkCreateRenderPass");
- table->DestroyRenderPass = (PFN_vkDestroyRenderPass)gpa(dev, "vkDestroyRenderPass");
- table->GetRenderAreaGranularity = (PFN_vkGetRenderAreaGranularity)gpa(dev, "vkGetRenderAreaGranularity");
- table->CreateCommandPool = (PFN_vkCreateCommandPool)gpa(dev, "vkCreateCommandPool");
- table->DestroyCommandPool = (PFN_vkDestroyCommandPool)gpa(dev, "vkDestroyCommandPool");
- table->ResetCommandPool = (PFN_vkResetCommandPool)gpa(dev, "vkResetCommandPool");
- table->AllocateCommandBuffers = (PFN_vkAllocateCommandBuffers)gpa(dev, "vkAllocateCommandBuffers");
- table->FreeCommandBuffers = (PFN_vkFreeCommandBuffers)gpa(dev, "vkFreeCommandBuffers");
- table->BeginCommandBuffer = (PFN_vkBeginCommandBuffer)gpa(dev, "vkBeginCommandBuffer");
- table->EndCommandBuffer = (PFN_vkEndCommandBuffer)gpa(dev, "vkEndCommandBuffer");
- table->ResetCommandBuffer = (PFN_vkResetCommandBuffer)gpa(dev, "vkResetCommandBuffer");
- table->CmdBindPipeline = (PFN_vkCmdBindPipeline)gpa(dev, "vkCmdBindPipeline");
- table->CmdSetViewport = (PFN_vkCmdSetViewport)gpa(dev, "vkCmdSetViewport");
- table->CmdSetScissor = (PFN_vkCmdSetScissor)gpa(dev, "vkCmdSetScissor");
- table->CmdSetLineWidth = (PFN_vkCmdSetLineWidth)gpa(dev, "vkCmdSetLineWidth");
- table->CmdSetDepthBias = (PFN_vkCmdSetDepthBias)gpa(dev, "vkCmdSetDepthBias");
- table->CmdSetBlendConstants = (PFN_vkCmdSetBlendConstants)gpa(dev, "vkCmdSetBlendConstants");
- table->CmdSetDepthBounds = (PFN_vkCmdSetDepthBounds)gpa(dev, "vkCmdSetDepthBounds");
- table->CmdSetStencilCompareMask = (PFN_vkCmdSetStencilCompareMask)gpa(dev, "vkCmdSetStencilCompareMask");
- table->CmdSetStencilWriteMask = (PFN_vkCmdSetStencilWriteMask)gpa(dev, "vkCmdSetStencilWriteMask");
- table->CmdSetStencilReference = (PFN_vkCmdSetStencilReference)gpa(dev, "vkCmdSetStencilReference");
- table->CmdBindDescriptorSets = (PFN_vkCmdBindDescriptorSets)gpa(dev, "vkCmdBindDescriptorSets");
- table->CmdBindIndexBuffer = (PFN_vkCmdBindIndexBuffer)gpa(dev, "vkCmdBindIndexBuffer");
- table->CmdBindVertexBuffers = (PFN_vkCmdBindVertexBuffers)gpa(dev, "vkCmdBindVertexBuffers");
- table->CmdDraw = (PFN_vkCmdDraw)gpa(dev, "vkCmdDraw");
- table->CmdDrawIndexed = (PFN_vkCmdDrawIndexed)gpa(dev, "vkCmdDrawIndexed");
- table->CmdDrawIndirect = (PFN_vkCmdDrawIndirect)gpa(dev, "vkCmdDrawIndirect");
- table->CmdDrawIndexedIndirect = (PFN_vkCmdDrawIndexedIndirect)gpa(dev, "vkCmdDrawIndexedIndirect");
- table->CmdDispatch = (PFN_vkCmdDispatch)gpa(dev, "vkCmdDispatch");
- table->CmdDispatchIndirect = (PFN_vkCmdDispatchIndirect)gpa(dev, "vkCmdDispatchIndirect");
- table->CmdCopyBuffer = (PFN_vkCmdCopyBuffer)gpa(dev, "vkCmdCopyBuffer");
- table->CmdCopyImage = (PFN_vkCmdCopyImage)gpa(dev, "vkCmdCopyImage");
- table->CmdBlitImage = (PFN_vkCmdBlitImage)gpa(dev, "vkCmdBlitImage");
- table->CmdCopyBufferToImage = (PFN_vkCmdCopyBufferToImage)gpa(dev, "vkCmdCopyBufferToImage");
- table->CmdCopyImageToBuffer = (PFN_vkCmdCopyImageToBuffer)gpa(dev, "vkCmdCopyImageToBuffer");
- table->CmdUpdateBuffer = (PFN_vkCmdUpdateBuffer)gpa(dev, "vkCmdUpdateBuffer");
- table->CmdFillBuffer = (PFN_vkCmdFillBuffer)gpa(dev, "vkCmdFillBuffer");
- table->CmdClearColorImage = (PFN_vkCmdClearColorImage)gpa(dev, "vkCmdClearColorImage");
- table->CmdClearDepthStencilImage = (PFN_vkCmdClearDepthStencilImage)gpa(dev, "vkCmdClearDepthStencilImage");
- table->CmdClearAttachments = (PFN_vkCmdClearAttachments)gpa(dev, "vkCmdClearAttachments");
- table->CmdResolveImage = (PFN_vkCmdResolveImage)gpa(dev, "vkCmdResolveImage");
- table->CmdSetEvent = (PFN_vkCmdSetEvent)gpa(dev, "vkCmdSetEvent");
- table->CmdResetEvent = (PFN_vkCmdResetEvent)gpa(dev, "vkCmdResetEvent");
- table->CmdWaitEvents = (PFN_vkCmdWaitEvents)gpa(dev, "vkCmdWaitEvents");
- table->CmdPipelineBarrier = (PFN_vkCmdPipelineBarrier)gpa(dev, "vkCmdPipelineBarrier");
- table->CmdBeginQuery = (PFN_vkCmdBeginQuery)gpa(dev, "vkCmdBeginQuery");
- table->CmdEndQuery = (PFN_vkCmdEndQuery)gpa(dev, "vkCmdEndQuery");
- table->CmdResetQueryPool = (PFN_vkCmdResetQueryPool)gpa(dev, "vkCmdResetQueryPool");
- table->CmdWriteTimestamp = (PFN_vkCmdWriteTimestamp)gpa(dev, "vkCmdWriteTimestamp");
- table->CmdCopyQueryPoolResults = (PFN_vkCmdCopyQueryPoolResults)gpa(dev, "vkCmdCopyQueryPoolResults");
- table->CmdPushConstants = (PFN_vkCmdPushConstants)gpa(dev, "vkCmdPushConstants");
- table->CmdBeginRenderPass = (PFN_vkCmdBeginRenderPass)gpa(dev, "vkCmdBeginRenderPass");
- table->CmdNextSubpass = (PFN_vkCmdNextSubpass)gpa(dev, "vkCmdNextSubpass");
- table->CmdEndRenderPass = (PFN_vkCmdEndRenderPass)gpa(dev, "vkCmdEndRenderPass");
- table->CmdExecuteCommands = (PFN_vkCmdExecuteCommands)gpa(dev, "vkCmdExecuteCommands");
-
- // ---- Core 1_1 commands
- table->BindBufferMemory2 = (PFN_vkBindBufferMemory2)gpa(dev, "vkBindBufferMemory2");
- table->BindImageMemory2 = (PFN_vkBindImageMemory2)gpa(dev, "vkBindImageMemory2");
- table->GetDeviceGroupPeerMemoryFeatures = (PFN_vkGetDeviceGroupPeerMemoryFeatures)gpa(dev, "vkGetDeviceGroupPeerMemoryFeatures");
- table->CmdSetDeviceMask = (PFN_vkCmdSetDeviceMask)gpa(dev, "vkCmdSetDeviceMask");
- table->CmdDispatchBase = (PFN_vkCmdDispatchBase)gpa(dev, "vkCmdDispatchBase");
- table->GetImageMemoryRequirements2 = (PFN_vkGetImageMemoryRequirements2)gpa(dev, "vkGetImageMemoryRequirements2");
- table->GetBufferMemoryRequirements2 = (PFN_vkGetBufferMemoryRequirements2)gpa(dev, "vkGetBufferMemoryRequirements2");
- table->GetImageSparseMemoryRequirements2 = (PFN_vkGetImageSparseMemoryRequirements2)gpa(dev, "vkGetImageSparseMemoryRequirements2");
- table->TrimCommandPool = (PFN_vkTrimCommandPool)gpa(dev, "vkTrimCommandPool");
- table->GetDeviceQueue2 = (PFN_vkGetDeviceQueue2)gpa(dev, "vkGetDeviceQueue2");
- table->CreateSamplerYcbcrConversion = (PFN_vkCreateSamplerYcbcrConversion)gpa(dev, "vkCreateSamplerYcbcrConversion");
- table->DestroySamplerYcbcrConversion = (PFN_vkDestroySamplerYcbcrConversion)gpa(dev, "vkDestroySamplerYcbcrConversion");
- table->CreateDescriptorUpdateTemplate = (PFN_vkCreateDescriptorUpdateTemplate)gpa(dev, "vkCreateDescriptorUpdateTemplate");
- table->DestroyDescriptorUpdateTemplate = (PFN_vkDestroyDescriptorUpdateTemplate)gpa(dev, "vkDestroyDescriptorUpdateTemplate");
- table->UpdateDescriptorSetWithTemplate = (PFN_vkUpdateDescriptorSetWithTemplate)gpa(dev, "vkUpdateDescriptorSetWithTemplate");
- table->GetDescriptorSetLayoutSupport = (PFN_vkGetDescriptorSetLayoutSupport)gpa(dev, "vkGetDescriptorSetLayoutSupport");
-
- // ---- Core 1_2 commands
- table->CmdDrawIndirectCount = (PFN_vkCmdDrawIndirectCount)gpa(dev, "vkCmdDrawIndirectCount");
- table->CmdDrawIndexedIndirectCount = (PFN_vkCmdDrawIndexedIndirectCount)gpa(dev, "vkCmdDrawIndexedIndirectCount");
- table->CreateRenderPass2 = (PFN_vkCreateRenderPass2)gpa(dev, "vkCreateRenderPass2");
- table->CmdBeginRenderPass2 = (PFN_vkCmdBeginRenderPass2)gpa(dev, "vkCmdBeginRenderPass2");
- table->CmdNextSubpass2 = (PFN_vkCmdNextSubpass2)gpa(dev, "vkCmdNextSubpass2");
- table->CmdEndRenderPass2 = (PFN_vkCmdEndRenderPass2)gpa(dev, "vkCmdEndRenderPass2");
- table->ResetQueryPool = (PFN_vkResetQueryPool)gpa(dev, "vkResetQueryPool");
- table->GetSemaphoreCounterValue = (PFN_vkGetSemaphoreCounterValue)gpa(dev, "vkGetSemaphoreCounterValue");
- table->WaitSemaphores = (PFN_vkWaitSemaphores)gpa(dev, "vkWaitSemaphores");
- table->SignalSemaphore = (PFN_vkSignalSemaphore)gpa(dev, "vkSignalSemaphore");
- table->GetBufferDeviceAddress = (PFN_vkGetBufferDeviceAddress)gpa(dev, "vkGetBufferDeviceAddress");
- table->GetBufferOpaqueCaptureAddress = (PFN_vkGetBufferOpaqueCaptureAddress)gpa(dev, "vkGetBufferOpaqueCaptureAddress");
- table->GetDeviceMemoryOpaqueCaptureAddress = (PFN_vkGetDeviceMemoryOpaqueCaptureAddress)gpa(dev, "vkGetDeviceMemoryOpaqueCaptureAddress");
-}
-
-// Init Device function pointer dispatch table with extension commands
-VKAPI_ATTR void VKAPI_CALL loader_init_device_extension_dispatch_table(struct loader_dev_dispatch_table *dev_table,
- PFN_vkGetInstanceProcAddr gipa,
- PFN_vkGetDeviceProcAddr gdpa,
- VkInstance inst,
- VkDevice dev) {
- VkLayerDispatchTable *table = &dev_table->core_dispatch;
-
- // ---- VK_KHR_swapchain extension commands
- table->CreateSwapchainKHR = (PFN_vkCreateSwapchainKHR)gdpa(dev, "vkCreateSwapchainKHR");
- table->DestroySwapchainKHR = (PFN_vkDestroySwapchainKHR)gdpa(dev, "vkDestroySwapchainKHR");
- table->GetSwapchainImagesKHR = (PFN_vkGetSwapchainImagesKHR)gdpa(dev, "vkGetSwapchainImagesKHR");
- table->AcquireNextImageKHR = (PFN_vkAcquireNextImageKHR)gdpa(dev, "vkAcquireNextImageKHR");
- table->QueuePresentKHR = (PFN_vkQueuePresentKHR)gdpa(dev, "vkQueuePresentKHR");
- table->GetDeviceGroupPresentCapabilitiesKHR = (PFN_vkGetDeviceGroupPresentCapabilitiesKHR)gdpa(dev, "vkGetDeviceGroupPresentCapabilitiesKHR");
- table->GetDeviceGroupSurfacePresentModesKHR = (PFN_vkGetDeviceGroupSurfacePresentModesKHR)gdpa(dev, "vkGetDeviceGroupSurfacePresentModesKHR");
- table->AcquireNextImage2KHR = (PFN_vkAcquireNextImage2KHR)gdpa(dev, "vkAcquireNextImage2KHR");
-
- // ---- VK_KHR_display_swapchain extension commands
- table->CreateSharedSwapchainsKHR = (PFN_vkCreateSharedSwapchainsKHR)gdpa(dev, "vkCreateSharedSwapchainsKHR");
-
- // ---- VK_KHR_device_group extension commands
- table->GetDeviceGroupPeerMemoryFeaturesKHR = (PFN_vkGetDeviceGroupPeerMemoryFeaturesKHR)gdpa(dev, "vkGetDeviceGroupPeerMemoryFeaturesKHR");
- table->CmdSetDeviceMaskKHR = (PFN_vkCmdSetDeviceMaskKHR)gdpa(dev, "vkCmdSetDeviceMaskKHR");
- table->CmdDispatchBaseKHR = (PFN_vkCmdDispatchBaseKHR)gdpa(dev, "vkCmdDispatchBaseKHR");
-
- // ---- VK_KHR_maintenance1 extension commands
- table->TrimCommandPoolKHR = (PFN_vkTrimCommandPoolKHR)gdpa(dev, "vkTrimCommandPoolKHR");
-
- // ---- VK_KHR_external_memory_win32 extension commands
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- table->GetMemoryWin32HandleKHR = (PFN_vkGetMemoryWin32HandleKHR)gdpa(dev, "vkGetMemoryWin32HandleKHR");
-#endif // VK_USE_PLATFORM_WIN32_KHR
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- table->GetMemoryWin32HandlePropertiesKHR = (PFN_vkGetMemoryWin32HandlePropertiesKHR)gdpa(dev, "vkGetMemoryWin32HandlePropertiesKHR");
-#endif // VK_USE_PLATFORM_WIN32_KHR
-
- // ---- VK_KHR_external_memory_fd extension commands
- table->GetMemoryFdKHR = (PFN_vkGetMemoryFdKHR)gdpa(dev, "vkGetMemoryFdKHR");
- table->GetMemoryFdPropertiesKHR = (PFN_vkGetMemoryFdPropertiesKHR)gdpa(dev, "vkGetMemoryFdPropertiesKHR");
-
- // ---- VK_KHR_external_semaphore_win32 extension commands
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- table->ImportSemaphoreWin32HandleKHR = (PFN_vkImportSemaphoreWin32HandleKHR)gdpa(dev, "vkImportSemaphoreWin32HandleKHR");
-#endif // VK_USE_PLATFORM_WIN32_KHR
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- table->GetSemaphoreWin32HandleKHR = (PFN_vkGetSemaphoreWin32HandleKHR)gdpa(dev, "vkGetSemaphoreWin32HandleKHR");
-#endif // VK_USE_PLATFORM_WIN32_KHR
-
- // ---- VK_KHR_external_semaphore_fd extension commands
- table->ImportSemaphoreFdKHR = (PFN_vkImportSemaphoreFdKHR)gdpa(dev, "vkImportSemaphoreFdKHR");
- table->GetSemaphoreFdKHR = (PFN_vkGetSemaphoreFdKHR)gdpa(dev, "vkGetSemaphoreFdKHR");
-
- // ---- VK_KHR_push_descriptor extension commands
- table->CmdPushDescriptorSetKHR = (PFN_vkCmdPushDescriptorSetKHR)gdpa(dev, "vkCmdPushDescriptorSetKHR");
- table->CmdPushDescriptorSetWithTemplateKHR = (PFN_vkCmdPushDescriptorSetWithTemplateKHR)gdpa(dev, "vkCmdPushDescriptorSetWithTemplateKHR");
-
- // ---- VK_KHR_descriptor_update_template extension commands
- table->CreateDescriptorUpdateTemplateKHR = (PFN_vkCreateDescriptorUpdateTemplateKHR)gdpa(dev, "vkCreateDescriptorUpdateTemplateKHR");
- table->DestroyDescriptorUpdateTemplateKHR = (PFN_vkDestroyDescriptorUpdateTemplateKHR)gdpa(dev, "vkDestroyDescriptorUpdateTemplateKHR");
- table->UpdateDescriptorSetWithTemplateKHR = (PFN_vkUpdateDescriptorSetWithTemplateKHR)gdpa(dev, "vkUpdateDescriptorSetWithTemplateKHR");
-
- // ---- VK_KHR_create_renderpass2 extension commands
- table->CreateRenderPass2KHR = (PFN_vkCreateRenderPass2KHR)gdpa(dev, "vkCreateRenderPass2KHR");
- table->CmdBeginRenderPass2KHR = (PFN_vkCmdBeginRenderPass2KHR)gdpa(dev, "vkCmdBeginRenderPass2KHR");
- table->CmdNextSubpass2KHR = (PFN_vkCmdNextSubpass2KHR)gdpa(dev, "vkCmdNextSubpass2KHR");
- table->CmdEndRenderPass2KHR = (PFN_vkCmdEndRenderPass2KHR)gdpa(dev, "vkCmdEndRenderPass2KHR");
-
- // ---- VK_KHR_shared_presentable_image extension commands
- table->GetSwapchainStatusKHR = (PFN_vkGetSwapchainStatusKHR)gdpa(dev, "vkGetSwapchainStatusKHR");
-
- // ---- VK_KHR_external_fence_win32 extension commands
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- table->ImportFenceWin32HandleKHR = (PFN_vkImportFenceWin32HandleKHR)gdpa(dev, "vkImportFenceWin32HandleKHR");
-#endif // VK_USE_PLATFORM_WIN32_KHR
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- table->GetFenceWin32HandleKHR = (PFN_vkGetFenceWin32HandleKHR)gdpa(dev, "vkGetFenceWin32HandleKHR");
-#endif // VK_USE_PLATFORM_WIN32_KHR
-
- // ---- VK_KHR_external_fence_fd extension commands
- table->ImportFenceFdKHR = (PFN_vkImportFenceFdKHR)gdpa(dev, "vkImportFenceFdKHR");
- table->GetFenceFdKHR = (PFN_vkGetFenceFdKHR)gdpa(dev, "vkGetFenceFdKHR");
-
- // ---- VK_KHR_performance_query extension commands
- table->AcquireProfilingLockKHR = (PFN_vkAcquireProfilingLockKHR)gdpa(dev, "vkAcquireProfilingLockKHR");
- table->ReleaseProfilingLockKHR = (PFN_vkReleaseProfilingLockKHR)gdpa(dev, "vkReleaseProfilingLockKHR");
-
- // ---- VK_KHR_get_memory_requirements2 extension commands
- table->GetImageMemoryRequirements2KHR = (PFN_vkGetImageMemoryRequirements2KHR)gdpa(dev, "vkGetImageMemoryRequirements2KHR");
- table->GetBufferMemoryRequirements2KHR = (PFN_vkGetBufferMemoryRequirements2KHR)gdpa(dev, "vkGetBufferMemoryRequirements2KHR");
- table->GetImageSparseMemoryRequirements2KHR = (PFN_vkGetImageSparseMemoryRequirements2KHR)gdpa(dev, "vkGetImageSparseMemoryRequirements2KHR");
-
- // ---- VK_KHR_sampler_ycbcr_conversion extension commands
- table->CreateSamplerYcbcrConversionKHR = (PFN_vkCreateSamplerYcbcrConversionKHR)gdpa(dev, "vkCreateSamplerYcbcrConversionKHR");
- table->DestroySamplerYcbcrConversionKHR = (PFN_vkDestroySamplerYcbcrConversionKHR)gdpa(dev, "vkDestroySamplerYcbcrConversionKHR");
-
- // ---- VK_KHR_bind_memory2 extension commands
- table->BindBufferMemory2KHR = (PFN_vkBindBufferMemory2KHR)gdpa(dev, "vkBindBufferMemory2KHR");
- table->BindImageMemory2KHR = (PFN_vkBindImageMemory2KHR)gdpa(dev, "vkBindImageMemory2KHR");
-
- // ---- VK_KHR_maintenance3 extension commands
- table->GetDescriptorSetLayoutSupportKHR = (PFN_vkGetDescriptorSetLayoutSupportKHR)gdpa(dev, "vkGetDescriptorSetLayoutSupportKHR");
-
- // ---- VK_KHR_draw_indirect_count extension commands
- table->CmdDrawIndirectCountKHR = (PFN_vkCmdDrawIndirectCountKHR)gdpa(dev, "vkCmdDrawIndirectCountKHR");
- table->CmdDrawIndexedIndirectCountKHR = (PFN_vkCmdDrawIndexedIndirectCountKHR)gdpa(dev, "vkCmdDrawIndexedIndirectCountKHR");
-
- // ---- VK_KHR_timeline_semaphore extension commands
- table->GetSemaphoreCounterValueKHR = (PFN_vkGetSemaphoreCounterValueKHR)gdpa(dev, "vkGetSemaphoreCounterValueKHR");
- table->WaitSemaphoresKHR = (PFN_vkWaitSemaphoresKHR)gdpa(dev, "vkWaitSemaphoresKHR");
- table->SignalSemaphoreKHR = (PFN_vkSignalSemaphoreKHR)gdpa(dev, "vkSignalSemaphoreKHR");
-
- // ---- VK_KHR_fragment_shading_rate extension commands
- table->CmdSetFragmentShadingRateKHR = (PFN_vkCmdSetFragmentShadingRateKHR)gdpa(dev, "vkCmdSetFragmentShadingRateKHR");
-
- // ---- VK_KHR_buffer_device_address extension commands
- table->GetBufferDeviceAddressKHR = (PFN_vkGetBufferDeviceAddressKHR)gdpa(dev, "vkGetBufferDeviceAddressKHR");
- table->GetBufferOpaqueCaptureAddressKHR = (PFN_vkGetBufferOpaqueCaptureAddressKHR)gdpa(dev, "vkGetBufferOpaqueCaptureAddressKHR");
- table->GetDeviceMemoryOpaqueCaptureAddressKHR = (PFN_vkGetDeviceMemoryOpaqueCaptureAddressKHR)gdpa(dev, "vkGetDeviceMemoryOpaqueCaptureAddressKHR");
-
- // ---- VK_KHR_deferred_host_operations extension commands
- table->CreateDeferredOperationKHR = (PFN_vkCreateDeferredOperationKHR)gdpa(dev, "vkCreateDeferredOperationKHR");
- table->DestroyDeferredOperationKHR = (PFN_vkDestroyDeferredOperationKHR)gdpa(dev, "vkDestroyDeferredOperationKHR");
- table->GetDeferredOperationMaxConcurrencyKHR = (PFN_vkGetDeferredOperationMaxConcurrencyKHR)gdpa(dev, "vkGetDeferredOperationMaxConcurrencyKHR");
- table->GetDeferredOperationResultKHR = (PFN_vkGetDeferredOperationResultKHR)gdpa(dev, "vkGetDeferredOperationResultKHR");
- table->DeferredOperationJoinKHR = (PFN_vkDeferredOperationJoinKHR)gdpa(dev, "vkDeferredOperationJoinKHR");
-
- // ---- VK_KHR_pipeline_executable_properties extension commands
- table->GetPipelineExecutablePropertiesKHR = (PFN_vkGetPipelineExecutablePropertiesKHR)gdpa(dev, "vkGetPipelineExecutablePropertiesKHR");
- table->GetPipelineExecutableStatisticsKHR = (PFN_vkGetPipelineExecutableStatisticsKHR)gdpa(dev, "vkGetPipelineExecutableStatisticsKHR");
- table->GetPipelineExecutableInternalRepresentationsKHR = (PFN_vkGetPipelineExecutableInternalRepresentationsKHR)gdpa(dev, "vkGetPipelineExecutableInternalRepresentationsKHR");
-
- // ---- VK_KHR_copy_commands2 extension commands
- table->CmdCopyBuffer2KHR = (PFN_vkCmdCopyBuffer2KHR)gdpa(dev, "vkCmdCopyBuffer2KHR");
- table->CmdCopyImage2KHR = (PFN_vkCmdCopyImage2KHR)gdpa(dev, "vkCmdCopyImage2KHR");
- table->CmdCopyBufferToImage2KHR = (PFN_vkCmdCopyBufferToImage2KHR)gdpa(dev, "vkCmdCopyBufferToImage2KHR");
- table->CmdCopyImageToBuffer2KHR = (PFN_vkCmdCopyImageToBuffer2KHR)gdpa(dev, "vkCmdCopyImageToBuffer2KHR");
- table->CmdBlitImage2KHR = (PFN_vkCmdBlitImage2KHR)gdpa(dev, "vkCmdBlitImage2KHR");
- table->CmdResolveImage2KHR = (PFN_vkCmdResolveImage2KHR)gdpa(dev, "vkCmdResolveImage2KHR");
-
- // ---- VK_EXT_debug_marker extension commands
- table->DebugMarkerSetObjectTagEXT = (PFN_vkDebugMarkerSetObjectTagEXT)gdpa(dev, "vkDebugMarkerSetObjectTagEXT");
- table->DebugMarkerSetObjectNameEXT = (PFN_vkDebugMarkerSetObjectNameEXT)gdpa(dev, "vkDebugMarkerSetObjectNameEXT");
- table->CmdDebugMarkerBeginEXT = (PFN_vkCmdDebugMarkerBeginEXT)gdpa(dev, "vkCmdDebugMarkerBeginEXT");
- table->CmdDebugMarkerEndEXT = (PFN_vkCmdDebugMarkerEndEXT)gdpa(dev, "vkCmdDebugMarkerEndEXT");
- table->CmdDebugMarkerInsertEXT = (PFN_vkCmdDebugMarkerInsertEXT)gdpa(dev, "vkCmdDebugMarkerInsertEXT");
-
- // ---- VK_EXT_transform_feedback extension commands
- table->CmdBindTransformFeedbackBuffersEXT = (PFN_vkCmdBindTransformFeedbackBuffersEXT)gdpa(dev, "vkCmdBindTransformFeedbackBuffersEXT");
- table->CmdBeginTransformFeedbackEXT = (PFN_vkCmdBeginTransformFeedbackEXT)gdpa(dev, "vkCmdBeginTransformFeedbackEXT");
- table->CmdEndTransformFeedbackEXT = (PFN_vkCmdEndTransformFeedbackEXT)gdpa(dev, "vkCmdEndTransformFeedbackEXT");
- table->CmdBeginQueryIndexedEXT = (PFN_vkCmdBeginQueryIndexedEXT)gdpa(dev, "vkCmdBeginQueryIndexedEXT");
- table->CmdEndQueryIndexedEXT = (PFN_vkCmdEndQueryIndexedEXT)gdpa(dev, "vkCmdEndQueryIndexedEXT");
- table->CmdDrawIndirectByteCountEXT = (PFN_vkCmdDrawIndirectByteCountEXT)gdpa(dev, "vkCmdDrawIndirectByteCountEXT");
-
- // ---- VK_NVX_image_view_handle extension commands
- table->GetImageViewHandleNVX = (PFN_vkGetImageViewHandleNVX)gdpa(dev, "vkGetImageViewHandleNVX");
- table->GetImageViewAddressNVX = (PFN_vkGetImageViewAddressNVX)gdpa(dev, "vkGetImageViewAddressNVX");
-
- // ---- VK_AMD_draw_indirect_count extension commands
- table->CmdDrawIndirectCountAMD = (PFN_vkCmdDrawIndirectCountAMD)gdpa(dev, "vkCmdDrawIndirectCountAMD");
- table->CmdDrawIndexedIndirectCountAMD = (PFN_vkCmdDrawIndexedIndirectCountAMD)gdpa(dev, "vkCmdDrawIndexedIndirectCountAMD");
-
- // ---- VK_AMD_shader_info extension commands
- table->GetShaderInfoAMD = (PFN_vkGetShaderInfoAMD)gdpa(dev, "vkGetShaderInfoAMD");
-
- // ---- VK_NV_external_memory_win32 extension commands
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- table->GetMemoryWin32HandleNV = (PFN_vkGetMemoryWin32HandleNV)gdpa(dev, "vkGetMemoryWin32HandleNV");
-#endif // VK_USE_PLATFORM_WIN32_KHR
-
- // ---- VK_EXT_conditional_rendering extension commands
- table->CmdBeginConditionalRenderingEXT = (PFN_vkCmdBeginConditionalRenderingEXT)gdpa(dev, "vkCmdBeginConditionalRenderingEXT");
- table->CmdEndConditionalRenderingEXT = (PFN_vkCmdEndConditionalRenderingEXT)gdpa(dev, "vkCmdEndConditionalRenderingEXT");
-
- // ---- VK_NV_clip_space_w_scaling extension commands
- table->CmdSetViewportWScalingNV = (PFN_vkCmdSetViewportWScalingNV)gdpa(dev, "vkCmdSetViewportWScalingNV");
-
- // ---- VK_EXT_display_control extension commands
- table->DisplayPowerControlEXT = (PFN_vkDisplayPowerControlEXT)gdpa(dev, "vkDisplayPowerControlEXT");
- table->RegisterDeviceEventEXT = (PFN_vkRegisterDeviceEventEXT)gdpa(dev, "vkRegisterDeviceEventEXT");
- table->RegisterDisplayEventEXT = (PFN_vkRegisterDisplayEventEXT)gdpa(dev, "vkRegisterDisplayEventEXT");
- table->GetSwapchainCounterEXT = (PFN_vkGetSwapchainCounterEXT)gdpa(dev, "vkGetSwapchainCounterEXT");
-
- // ---- VK_GOOGLE_display_timing extension commands
- table->GetRefreshCycleDurationGOOGLE = (PFN_vkGetRefreshCycleDurationGOOGLE)gdpa(dev, "vkGetRefreshCycleDurationGOOGLE");
- table->GetPastPresentationTimingGOOGLE = (PFN_vkGetPastPresentationTimingGOOGLE)gdpa(dev, "vkGetPastPresentationTimingGOOGLE");
-
- // ---- VK_EXT_discard_rectangles extension commands
- table->CmdSetDiscardRectangleEXT = (PFN_vkCmdSetDiscardRectangleEXT)gdpa(dev, "vkCmdSetDiscardRectangleEXT");
-
- // ---- VK_EXT_hdr_metadata extension commands
- table->SetHdrMetadataEXT = (PFN_vkSetHdrMetadataEXT)gdpa(dev, "vkSetHdrMetadataEXT");
-
- // ---- VK_EXT_debug_utils extension commands
- table->SetDebugUtilsObjectNameEXT = (PFN_vkSetDebugUtilsObjectNameEXT)gipa(inst, "vkSetDebugUtilsObjectNameEXT");
- table->SetDebugUtilsObjectTagEXT = (PFN_vkSetDebugUtilsObjectTagEXT)gipa(inst, "vkSetDebugUtilsObjectTagEXT");
- table->QueueBeginDebugUtilsLabelEXT = (PFN_vkQueueBeginDebugUtilsLabelEXT)gipa(inst, "vkQueueBeginDebugUtilsLabelEXT");
- table->QueueEndDebugUtilsLabelEXT = (PFN_vkQueueEndDebugUtilsLabelEXT)gipa(inst, "vkQueueEndDebugUtilsLabelEXT");
- table->QueueInsertDebugUtilsLabelEXT = (PFN_vkQueueInsertDebugUtilsLabelEXT)gipa(inst, "vkQueueInsertDebugUtilsLabelEXT");
- table->CmdBeginDebugUtilsLabelEXT = (PFN_vkCmdBeginDebugUtilsLabelEXT)gipa(inst, "vkCmdBeginDebugUtilsLabelEXT");
- table->CmdEndDebugUtilsLabelEXT = (PFN_vkCmdEndDebugUtilsLabelEXT)gipa(inst, "vkCmdEndDebugUtilsLabelEXT");
- table->CmdInsertDebugUtilsLabelEXT = (PFN_vkCmdInsertDebugUtilsLabelEXT)gipa(inst, "vkCmdInsertDebugUtilsLabelEXT");
-
- // ---- VK_ANDROID_external_memory_android_hardware_buffer extension commands
-#ifdef VK_USE_PLATFORM_ANDROID_KHR
- table->GetAndroidHardwareBufferPropertiesANDROID = (PFN_vkGetAndroidHardwareBufferPropertiesANDROID)gdpa(dev, "vkGetAndroidHardwareBufferPropertiesANDROID");
-#endif // VK_USE_PLATFORM_ANDROID_KHR
-#ifdef VK_USE_PLATFORM_ANDROID_KHR
- table->GetMemoryAndroidHardwareBufferANDROID = (PFN_vkGetMemoryAndroidHardwareBufferANDROID)gdpa(dev, "vkGetMemoryAndroidHardwareBufferANDROID");
-#endif // VK_USE_PLATFORM_ANDROID_KHR
-
- // ---- VK_EXT_sample_locations extension commands
- table->CmdSetSampleLocationsEXT = (PFN_vkCmdSetSampleLocationsEXT)gdpa(dev, "vkCmdSetSampleLocationsEXT");
-
- // ---- VK_EXT_image_drm_format_modifier extension commands
- table->GetImageDrmFormatModifierPropertiesEXT = (PFN_vkGetImageDrmFormatModifierPropertiesEXT)gdpa(dev, "vkGetImageDrmFormatModifierPropertiesEXT");
-
- // ---- VK_EXT_validation_cache extension commands
- table->CreateValidationCacheEXT = (PFN_vkCreateValidationCacheEXT)gdpa(dev, "vkCreateValidationCacheEXT");
- table->DestroyValidationCacheEXT = (PFN_vkDestroyValidationCacheEXT)gdpa(dev, "vkDestroyValidationCacheEXT");
- table->MergeValidationCachesEXT = (PFN_vkMergeValidationCachesEXT)gdpa(dev, "vkMergeValidationCachesEXT");
- table->GetValidationCacheDataEXT = (PFN_vkGetValidationCacheDataEXT)gdpa(dev, "vkGetValidationCacheDataEXT");
-
- // ---- VK_NV_shading_rate_image extension commands
- table->CmdBindShadingRateImageNV = (PFN_vkCmdBindShadingRateImageNV)gdpa(dev, "vkCmdBindShadingRateImageNV");
- table->CmdSetViewportShadingRatePaletteNV = (PFN_vkCmdSetViewportShadingRatePaletteNV)gdpa(dev, "vkCmdSetViewportShadingRatePaletteNV");
- table->CmdSetCoarseSampleOrderNV = (PFN_vkCmdSetCoarseSampleOrderNV)gdpa(dev, "vkCmdSetCoarseSampleOrderNV");
-
- // ---- VK_NV_ray_tracing extension commands
- table->CreateAccelerationStructureNV = (PFN_vkCreateAccelerationStructureNV)gdpa(dev, "vkCreateAccelerationStructureNV");
- table->DestroyAccelerationStructureNV = (PFN_vkDestroyAccelerationStructureNV)gdpa(dev, "vkDestroyAccelerationStructureNV");
- table->GetAccelerationStructureMemoryRequirementsNV = (PFN_vkGetAccelerationStructureMemoryRequirementsNV)gdpa(dev, "vkGetAccelerationStructureMemoryRequirementsNV");
- table->BindAccelerationStructureMemoryNV = (PFN_vkBindAccelerationStructureMemoryNV)gdpa(dev, "vkBindAccelerationStructureMemoryNV");
- table->CmdBuildAccelerationStructureNV = (PFN_vkCmdBuildAccelerationStructureNV)gdpa(dev, "vkCmdBuildAccelerationStructureNV");
- table->CmdCopyAccelerationStructureNV = (PFN_vkCmdCopyAccelerationStructureNV)gdpa(dev, "vkCmdCopyAccelerationStructureNV");
- table->CmdTraceRaysNV = (PFN_vkCmdTraceRaysNV)gdpa(dev, "vkCmdTraceRaysNV");
- table->CreateRayTracingPipelinesNV = (PFN_vkCreateRayTracingPipelinesNV)gdpa(dev, "vkCreateRayTracingPipelinesNV");
- table->GetRayTracingShaderGroupHandlesKHR = (PFN_vkGetRayTracingShaderGroupHandlesKHR)gdpa(dev, "vkGetRayTracingShaderGroupHandlesKHR");
- table->GetRayTracingShaderGroupHandlesNV = (PFN_vkGetRayTracingShaderGroupHandlesNV)gdpa(dev, "vkGetRayTracingShaderGroupHandlesNV");
- table->GetAccelerationStructureHandleNV = (PFN_vkGetAccelerationStructureHandleNV)gdpa(dev, "vkGetAccelerationStructureHandleNV");
- table->CmdWriteAccelerationStructuresPropertiesNV = (PFN_vkCmdWriteAccelerationStructuresPropertiesNV)gdpa(dev, "vkCmdWriteAccelerationStructuresPropertiesNV");
- table->CompileDeferredNV = (PFN_vkCompileDeferredNV)gdpa(dev, "vkCompileDeferredNV");
-
- // ---- VK_EXT_external_memory_host extension commands
- table->GetMemoryHostPointerPropertiesEXT = (PFN_vkGetMemoryHostPointerPropertiesEXT)gdpa(dev, "vkGetMemoryHostPointerPropertiesEXT");
-
- // ---- VK_AMD_buffer_marker extension commands
- table->CmdWriteBufferMarkerAMD = (PFN_vkCmdWriteBufferMarkerAMD)gdpa(dev, "vkCmdWriteBufferMarkerAMD");
-
- // ---- VK_EXT_calibrated_timestamps extension commands
- table->GetCalibratedTimestampsEXT = (PFN_vkGetCalibratedTimestampsEXT)gdpa(dev, "vkGetCalibratedTimestampsEXT");
-
- // ---- VK_NV_mesh_shader extension commands
- table->CmdDrawMeshTasksNV = (PFN_vkCmdDrawMeshTasksNV)gdpa(dev, "vkCmdDrawMeshTasksNV");
- table->CmdDrawMeshTasksIndirectNV = (PFN_vkCmdDrawMeshTasksIndirectNV)gdpa(dev, "vkCmdDrawMeshTasksIndirectNV");
- table->CmdDrawMeshTasksIndirectCountNV = (PFN_vkCmdDrawMeshTasksIndirectCountNV)gdpa(dev, "vkCmdDrawMeshTasksIndirectCountNV");
-
- // ---- VK_NV_scissor_exclusive extension commands
- table->CmdSetExclusiveScissorNV = (PFN_vkCmdSetExclusiveScissorNV)gdpa(dev, "vkCmdSetExclusiveScissorNV");
-
- // ---- VK_NV_device_diagnostic_checkpoints extension commands
- table->CmdSetCheckpointNV = (PFN_vkCmdSetCheckpointNV)gdpa(dev, "vkCmdSetCheckpointNV");
- table->GetQueueCheckpointDataNV = (PFN_vkGetQueueCheckpointDataNV)gdpa(dev, "vkGetQueueCheckpointDataNV");
-
- // ---- VK_INTEL_performance_query extension commands
- table->InitializePerformanceApiINTEL = (PFN_vkInitializePerformanceApiINTEL)gdpa(dev, "vkInitializePerformanceApiINTEL");
- table->UninitializePerformanceApiINTEL = (PFN_vkUninitializePerformanceApiINTEL)gdpa(dev, "vkUninitializePerformanceApiINTEL");
- table->CmdSetPerformanceMarkerINTEL = (PFN_vkCmdSetPerformanceMarkerINTEL)gdpa(dev, "vkCmdSetPerformanceMarkerINTEL");
- table->CmdSetPerformanceStreamMarkerINTEL = (PFN_vkCmdSetPerformanceStreamMarkerINTEL)gdpa(dev, "vkCmdSetPerformanceStreamMarkerINTEL");
- table->CmdSetPerformanceOverrideINTEL = (PFN_vkCmdSetPerformanceOverrideINTEL)gdpa(dev, "vkCmdSetPerformanceOverrideINTEL");
- table->AcquirePerformanceConfigurationINTEL = (PFN_vkAcquirePerformanceConfigurationINTEL)gdpa(dev, "vkAcquirePerformanceConfigurationINTEL");
- table->ReleasePerformanceConfigurationINTEL = (PFN_vkReleasePerformanceConfigurationINTEL)gdpa(dev, "vkReleasePerformanceConfigurationINTEL");
- table->QueueSetPerformanceConfigurationINTEL = (PFN_vkQueueSetPerformanceConfigurationINTEL)gdpa(dev, "vkQueueSetPerformanceConfigurationINTEL");
- table->GetPerformanceParameterINTEL = (PFN_vkGetPerformanceParameterINTEL)gdpa(dev, "vkGetPerformanceParameterINTEL");
-
- // ---- VK_AMD_display_native_hdr extension commands
- table->SetLocalDimmingAMD = (PFN_vkSetLocalDimmingAMD)gdpa(dev, "vkSetLocalDimmingAMD");
-
- // ---- VK_EXT_buffer_device_address extension commands
- table->GetBufferDeviceAddressEXT = (PFN_vkGetBufferDeviceAddressEXT)gdpa(dev, "vkGetBufferDeviceAddressEXT");
-
- // ---- VK_EXT_full_screen_exclusive extension commands
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- table->AcquireFullScreenExclusiveModeEXT = (PFN_vkAcquireFullScreenExclusiveModeEXT)gdpa(dev, "vkAcquireFullScreenExclusiveModeEXT");
-#endif // VK_USE_PLATFORM_WIN32_KHR
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- table->ReleaseFullScreenExclusiveModeEXT = (PFN_vkReleaseFullScreenExclusiveModeEXT)gdpa(dev, "vkReleaseFullScreenExclusiveModeEXT");
-#endif // VK_USE_PLATFORM_WIN32_KHR
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- table->GetDeviceGroupSurfacePresentModes2EXT = (PFN_vkGetDeviceGroupSurfacePresentModes2EXT)gdpa(dev, "vkGetDeviceGroupSurfacePresentModes2EXT");
-#endif // VK_USE_PLATFORM_WIN32_KHR
-
- // ---- VK_EXT_line_rasterization extension commands
- table->CmdSetLineStippleEXT = (PFN_vkCmdSetLineStippleEXT)gdpa(dev, "vkCmdSetLineStippleEXT");
-
- // ---- VK_EXT_host_query_reset extension commands
- table->ResetQueryPoolEXT = (PFN_vkResetQueryPoolEXT)gdpa(dev, "vkResetQueryPoolEXT");
-
- // ---- VK_EXT_extended_dynamic_state extension commands
- table->CmdSetCullModeEXT = (PFN_vkCmdSetCullModeEXT)gdpa(dev, "vkCmdSetCullModeEXT");
- table->CmdSetFrontFaceEXT = (PFN_vkCmdSetFrontFaceEXT)gdpa(dev, "vkCmdSetFrontFaceEXT");
- table->CmdSetPrimitiveTopologyEXT = (PFN_vkCmdSetPrimitiveTopologyEXT)gdpa(dev, "vkCmdSetPrimitiveTopologyEXT");
- table->CmdSetViewportWithCountEXT = (PFN_vkCmdSetViewportWithCountEXT)gdpa(dev, "vkCmdSetViewportWithCountEXT");
- table->CmdSetScissorWithCountEXT = (PFN_vkCmdSetScissorWithCountEXT)gdpa(dev, "vkCmdSetScissorWithCountEXT");
- table->CmdBindVertexBuffers2EXT = (PFN_vkCmdBindVertexBuffers2EXT)gdpa(dev, "vkCmdBindVertexBuffers2EXT");
- table->CmdSetDepthTestEnableEXT = (PFN_vkCmdSetDepthTestEnableEXT)gdpa(dev, "vkCmdSetDepthTestEnableEXT");
- table->CmdSetDepthWriteEnableEXT = (PFN_vkCmdSetDepthWriteEnableEXT)gdpa(dev, "vkCmdSetDepthWriteEnableEXT");
- table->CmdSetDepthCompareOpEXT = (PFN_vkCmdSetDepthCompareOpEXT)gdpa(dev, "vkCmdSetDepthCompareOpEXT");
- table->CmdSetDepthBoundsTestEnableEXT = (PFN_vkCmdSetDepthBoundsTestEnableEXT)gdpa(dev, "vkCmdSetDepthBoundsTestEnableEXT");
- table->CmdSetStencilTestEnableEXT = (PFN_vkCmdSetStencilTestEnableEXT)gdpa(dev, "vkCmdSetStencilTestEnableEXT");
- table->CmdSetStencilOpEXT = (PFN_vkCmdSetStencilOpEXT)gdpa(dev, "vkCmdSetStencilOpEXT");
-
- // ---- VK_NV_device_generated_commands extension commands
- table->GetGeneratedCommandsMemoryRequirementsNV = (PFN_vkGetGeneratedCommandsMemoryRequirementsNV)gdpa(dev, "vkGetGeneratedCommandsMemoryRequirementsNV");
- table->CmdPreprocessGeneratedCommandsNV = (PFN_vkCmdPreprocessGeneratedCommandsNV)gdpa(dev, "vkCmdPreprocessGeneratedCommandsNV");
- table->CmdExecuteGeneratedCommandsNV = (PFN_vkCmdExecuteGeneratedCommandsNV)gdpa(dev, "vkCmdExecuteGeneratedCommandsNV");
- table->CmdBindPipelineShaderGroupNV = (PFN_vkCmdBindPipelineShaderGroupNV)gdpa(dev, "vkCmdBindPipelineShaderGroupNV");
- table->CreateIndirectCommandsLayoutNV = (PFN_vkCreateIndirectCommandsLayoutNV)gdpa(dev, "vkCreateIndirectCommandsLayoutNV");
- table->DestroyIndirectCommandsLayoutNV = (PFN_vkDestroyIndirectCommandsLayoutNV)gdpa(dev, "vkDestroyIndirectCommandsLayoutNV");
-
- // ---- VK_EXT_private_data extension commands
- table->CreatePrivateDataSlotEXT = (PFN_vkCreatePrivateDataSlotEXT)gdpa(dev, "vkCreatePrivateDataSlotEXT");
- table->DestroyPrivateDataSlotEXT = (PFN_vkDestroyPrivateDataSlotEXT)gdpa(dev, "vkDestroyPrivateDataSlotEXT");
- table->SetPrivateDataEXT = (PFN_vkSetPrivateDataEXT)gdpa(dev, "vkSetPrivateDataEXT");
- table->GetPrivateDataEXT = (PFN_vkGetPrivateDataEXT)gdpa(dev, "vkGetPrivateDataEXT");
-
- // ---- VK_NV_fragment_shading_rate_enums extension commands
- table->CmdSetFragmentShadingRateEnumNV = (PFN_vkCmdSetFragmentShadingRateEnumNV)gdpa(dev, "vkCmdSetFragmentShadingRateEnumNV");
-
- // ---- VK_KHR_acceleration_structure extension commands
- table->CreateAccelerationStructureKHR = (PFN_vkCreateAccelerationStructureKHR)gdpa(dev, "vkCreateAccelerationStructureKHR");
- table->DestroyAccelerationStructureKHR = (PFN_vkDestroyAccelerationStructureKHR)gdpa(dev, "vkDestroyAccelerationStructureKHR");
- table->CmdBuildAccelerationStructuresKHR = (PFN_vkCmdBuildAccelerationStructuresKHR)gdpa(dev, "vkCmdBuildAccelerationStructuresKHR");
- table->CmdBuildAccelerationStructuresIndirectKHR = (PFN_vkCmdBuildAccelerationStructuresIndirectKHR)gdpa(dev, "vkCmdBuildAccelerationStructuresIndirectKHR");
- table->BuildAccelerationStructuresKHR = (PFN_vkBuildAccelerationStructuresKHR)gdpa(dev, "vkBuildAccelerationStructuresKHR");
- table->CopyAccelerationStructureKHR = (PFN_vkCopyAccelerationStructureKHR)gdpa(dev, "vkCopyAccelerationStructureKHR");
- table->CopyAccelerationStructureToMemoryKHR = (PFN_vkCopyAccelerationStructureToMemoryKHR)gdpa(dev, "vkCopyAccelerationStructureToMemoryKHR");
- table->CopyMemoryToAccelerationStructureKHR = (PFN_vkCopyMemoryToAccelerationStructureKHR)gdpa(dev, "vkCopyMemoryToAccelerationStructureKHR");
- table->WriteAccelerationStructuresPropertiesKHR = (PFN_vkWriteAccelerationStructuresPropertiesKHR)gdpa(dev, "vkWriteAccelerationStructuresPropertiesKHR");
- table->CmdCopyAccelerationStructureKHR = (PFN_vkCmdCopyAccelerationStructureKHR)gdpa(dev, "vkCmdCopyAccelerationStructureKHR");
- table->CmdCopyAccelerationStructureToMemoryKHR = (PFN_vkCmdCopyAccelerationStructureToMemoryKHR)gdpa(dev, "vkCmdCopyAccelerationStructureToMemoryKHR");
- table->CmdCopyMemoryToAccelerationStructureKHR = (PFN_vkCmdCopyMemoryToAccelerationStructureKHR)gdpa(dev, "vkCmdCopyMemoryToAccelerationStructureKHR");
- table->GetAccelerationStructureDeviceAddressKHR = (PFN_vkGetAccelerationStructureDeviceAddressKHR)gdpa(dev, "vkGetAccelerationStructureDeviceAddressKHR");
- table->CmdWriteAccelerationStructuresPropertiesKHR = (PFN_vkCmdWriteAccelerationStructuresPropertiesKHR)gdpa(dev, "vkCmdWriteAccelerationStructuresPropertiesKHR");
- table->GetDeviceAccelerationStructureCompatibilityKHR = (PFN_vkGetDeviceAccelerationStructureCompatibilityKHR)gdpa(dev, "vkGetDeviceAccelerationStructureCompatibilityKHR");
- table->GetAccelerationStructureBuildSizesKHR = (PFN_vkGetAccelerationStructureBuildSizesKHR)gdpa(dev, "vkGetAccelerationStructureBuildSizesKHR");
-
- // ---- VK_KHR_ray_tracing_pipeline extension commands
- table->CmdTraceRaysKHR = (PFN_vkCmdTraceRaysKHR)gdpa(dev, "vkCmdTraceRaysKHR");
- table->CreateRayTracingPipelinesKHR = (PFN_vkCreateRayTracingPipelinesKHR)gdpa(dev, "vkCreateRayTracingPipelinesKHR");
- table->GetRayTracingCaptureReplayShaderGroupHandlesKHR = (PFN_vkGetRayTracingCaptureReplayShaderGroupHandlesKHR)gdpa(dev, "vkGetRayTracingCaptureReplayShaderGroupHandlesKHR");
- table->CmdTraceRaysIndirectKHR = (PFN_vkCmdTraceRaysIndirectKHR)gdpa(dev, "vkCmdTraceRaysIndirectKHR");
- table->GetRayTracingShaderGroupStackSizeKHR = (PFN_vkGetRayTracingShaderGroupStackSizeKHR)gdpa(dev, "vkGetRayTracingShaderGroupStackSizeKHR");
- table->CmdSetRayTracingPipelineStackSizeKHR = (PFN_vkCmdSetRayTracingPipelineStackSizeKHR)gdpa(dev, "vkCmdSetRayTracingPipelineStackSizeKHR");
-}
-
-// Init Instance function pointer dispatch table with core commands
-VKAPI_ATTR void VKAPI_CALL loader_init_instance_core_dispatch_table(VkLayerInstanceDispatchTable *table, PFN_vkGetInstanceProcAddr gpa,
- VkInstance inst) {
-
- // ---- Core 1_0 commands
- table->DestroyInstance = (PFN_vkDestroyInstance)gpa(inst, "vkDestroyInstance");
- table->EnumeratePhysicalDevices = (PFN_vkEnumeratePhysicalDevices)gpa(inst, "vkEnumeratePhysicalDevices");
- table->GetPhysicalDeviceFeatures = (PFN_vkGetPhysicalDeviceFeatures)gpa(inst, "vkGetPhysicalDeviceFeatures");
- table->GetPhysicalDeviceFormatProperties = (PFN_vkGetPhysicalDeviceFormatProperties)gpa(inst, "vkGetPhysicalDeviceFormatProperties");
- table->GetPhysicalDeviceImageFormatProperties = (PFN_vkGetPhysicalDeviceImageFormatProperties)gpa(inst, "vkGetPhysicalDeviceImageFormatProperties");
- table->GetPhysicalDeviceProperties = (PFN_vkGetPhysicalDeviceProperties)gpa(inst, "vkGetPhysicalDeviceProperties");
- table->GetPhysicalDeviceQueueFamilyProperties = (PFN_vkGetPhysicalDeviceQueueFamilyProperties)gpa(inst, "vkGetPhysicalDeviceQueueFamilyProperties");
- table->GetPhysicalDeviceMemoryProperties = (PFN_vkGetPhysicalDeviceMemoryProperties)gpa(inst, "vkGetPhysicalDeviceMemoryProperties");
- table->GetInstanceProcAddr = gpa;
- table->EnumerateDeviceExtensionProperties = (PFN_vkEnumerateDeviceExtensionProperties)gpa(inst, "vkEnumerateDeviceExtensionProperties");
- table->EnumerateDeviceLayerProperties = (PFN_vkEnumerateDeviceLayerProperties)gpa(inst, "vkEnumerateDeviceLayerProperties");
- table->GetPhysicalDeviceSparseImageFormatProperties = (PFN_vkGetPhysicalDeviceSparseImageFormatProperties)gpa(inst, "vkGetPhysicalDeviceSparseImageFormatProperties");
-
- // ---- Core 1_1 commands
- table->EnumeratePhysicalDeviceGroups = (PFN_vkEnumeratePhysicalDeviceGroups)gpa(inst, "vkEnumeratePhysicalDeviceGroups");
- table->GetPhysicalDeviceFeatures2 = (PFN_vkGetPhysicalDeviceFeatures2)gpa(inst, "vkGetPhysicalDeviceFeatures2");
- table->GetPhysicalDeviceProperties2 = (PFN_vkGetPhysicalDeviceProperties2)gpa(inst, "vkGetPhysicalDeviceProperties2");
- table->GetPhysicalDeviceFormatProperties2 = (PFN_vkGetPhysicalDeviceFormatProperties2)gpa(inst, "vkGetPhysicalDeviceFormatProperties2");
- table->GetPhysicalDeviceImageFormatProperties2 = (PFN_vkGetPhysicalDeviceImageFormatProperties2)gpa(inst, "vkGetPhysicalDeviceImageFormatProperties2");
- table->GetPhysicalDeviceQueueFamilyProperties2 = (PFN_vkGetPhysicalDeviceQueueFamilyProperties2)gpa(inst, "vkGetPhysicalDeviceQueueFamilyProperties2");
- table->GetPhysicalDeviceMemoryProperties2 = (PFN_vkGetPhysicalDeviceMemoryProperties2)gpa(inst, "vkGetPhysicalDeviceMemoryProperties2");
- table->GetPhysicalDeviceSparseImageFormatProperties2 = (PFN_vkGetPhysicalDeviceSparseImageFormatProperties2)gpa(inst, "vkGetPhysicalDeviceSparseImageFormatProperties2");
- table->GetPhysicalDeviceExternalBufferProperties = (PFN_vkGetPhysicalDeviceExternalBufferProperties)gpa(inst, "vkGetPhysicalDeviceExternalBufferProperties");
- table->GetPhysicalDeviceExternalFenceProperties = (PFN_vkGetPhysicalDeviceExternalFenceProperties)gpa(inst, "vkGetPhysicalDeviceExternalFenceProperties");
- table->GetPhysicalDeviceExternalSemaphoreProperties = (PFN_vkGetPhysicalDeviceExternalSemaphoreProperties)gpa(inst, "vkGetPhysicalDeviceExternalSemaphoreProperties");
-}
-
-// Init Instance function pointer dispatch table with core commands
-VKAPI_ATTR void VKAPI_CALL loader_init_instance_extension_dispatch_table(VkLayerInstanceDispatchTable *table, PFN_vkGetInstanceProcAddr gpa,
- VkInstance inst) {
-
- // ---- VK_KHR_surface extension commands
- table->DestroySurfaceKHR = (PFN_vkDestroySurfaceKHR)gpa(inst, "vkDestroySurfaceKHR");
- table->GetPhysicalDeviceSurfaceSupportKHR = (PFN_vkGetPhysicalDeviceSurfaceSupportKHR)gpa(inst, "vkGetPhysicalDeviceSurfaceSupportKHR");
- table->GetPhysicalDeviceSurfaceCapabilitiesKHR = (PFN_vkGetPhysicalDeviceSurfaceCapabilitiesKHR)gpa(inst, "vkGetPhysicalDeviceSurfaceCapabilitiesKHR");
- table->GetPhysicalDeviceSurfaceFormatsKHR = (PFN_vkGetPhysicalDeviceSurfaceFormatsKHR)gpa(inst, "vkGetPhysicalDeviceSurfaceFormatsKHR");
- table->GetPhysicalDeviceSurfacePresentModesKHR = (PFN_vkGetPhysicalDeviceSurfacePresentModesKHR)gpa(inst, "vkGetPhysicalDeviceSurfacePresentModesKHR");
-
- // ---- VK_KHR_swapchain extension commands
- table->GetPhysicalDevicePresentRectanglesKHR = (PFN_vkGetPhysicalDevicePresentRectanglesKHR)gpa(inst, "vkGetPhysicalDevicePresentRectanglesKHR");
-
- // ---- VK_KHR_display extension commands
- table->GetPhysicalDeviceDisplayPropertiesKHR = (PFN_vkGetPhysicalDeviceDisplayPropertiesKHR)gpa(inst, "vkGetPhysicalDeviceDisplayPropertiesKHR");
- table->GetPhysicalDeviceDisplayPlanePropertiesKHR = (PFN_vkGetPhysicalDeviceDisplayPlanePropertiesKHR)gpa(inst, "vkGetPhysicalDeviceDisplayPlanePropertiesKHR");
- table->GetDisplayPlaneSupportedDisplaysKHR = (PFN_vkGetDisplayPlaneSupportedDisplaysKHR)gpa(inst, "vkGetDisplayPlaneSupportedDisplaysKHR");
- table->GetDisplayModePropertiesKHR = (PFN_vkGetDisplayModePropertiesKHR)gpa(inst, "vkGetDisplayModePropertiesKHR");
- table->CreateDisplayModeKHR = (PFN_vkCreateDisplayModeKHR)gpa(inst, "vkCreateDisplayModeKHR");
- table->GetDisplayPlaneCapabilitiesKHR = (PFN_vkGetDisplayPlaneCapabilitiesKHR)gpa(inst, "vkGetDisplayPlaneCapabilitiesKHR");
- table->CreateDisplayPlaneSurfaceKHR = (PFN_vkCreateDisplayPlaneSurfaceKHR)gpa(inst, "vkCreateDisplayPlaneSurfaceKHR");
-
- // ---- VK_KHR_xlib_surface extension commands
-#ifdef VK_USE_PLATFORM_XLIB_KHR
- table->CreateXlibSurfaceKHR = (PFN_vkCreateXlibSurfaceKHR)gpa(inst, "vkCreateXlibSurfaceKHR");
-#endif // VK_USE_PLATFORM_XLIB_KHR
-#ifdef VK_USE_PLATFORM_XLIB_KHR
- table->GetPhysicalDeviceXlibPresentationSupportKHR = (PFN_vkGetPhysicalDeviceXlibPresentationSupportKHR)gpa(inst, "vkGetPhysicalDeviceXlibPresentationSupportKHR");
-#endif // VK_USE_PLATFORM_XLIB_KHR
-
- // ---- VK_KHR_xcb_surface extension commands
-#ifdef VK_USE_PLATFORM_XCB_KHR
- table->CreateXcbSurfaceKHR = (PFN_vkCreateXcbSurfaceKHR)gpa(inst, "vkCreateXcbSurfaceKHR");
-#endif // VK_USE_PLATFORM_XCB_KHR
-#ifdef VK_USE_PLATFORM_XCB_KHR
- table->GetPhysicalDeviceXcbPresentationSupportKHR = (PFN_vkGetPhysicalDeviceXcbPresentationSupportKHR)gpa(inst, "vkGetPhysicalDeviceXcbPresentationSupportKHR");
-#endif // VK_USE_PLATFORM_XCB_KHR
-
- // ---- VK_KHR_wayland_surface extension commands
-#ifdef VK_USE_PLATFORM_WAYLAND_KHR
- table->CreateWaylandSurfaceKHR = (PFN_vkCreateWaylandSurfaceKHR)gpa(inst, "vkCreateWaylandSurfaceKHR");
-#endif // VK_USE_PLATFORM_WAYLAND_KHR
-#ifdef VK_USE_PLATFORM_WAYLAND_KHR
- table->GetPhysicalDeviceWaylandPresentationSupportKHR = (PFN_vkGetPhysicalDeviceWaylandPresentationSupportKHR)gpa(inst, "vkGetPhysicalDeviceWaylandPresentationSupportKHR");
-#endif // VK_USE_PLATFORM_WAYLAND_KHR
-
- // ---- VK_KHR_android_surface extension commands
-#ifdef VK_USE_PLATFORM_ANDROID_KHR
- table->CreateAndroidSurfaceKHR = (PFN_vkCreateAndroidSurfaceKHR)gpa(inst, "vkCreateAndroidSurfaceKHR");
-#endif // VK_USE_PLATFORM_ANDROID_KHR
-
- // ---- VK_KHR_win32_surface extension commands
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- table->CreateWin32SurfaceKHR = (PFN_vkCreateWin32SurfaceKHR)gpa(inst, "vkCreateWin32SurfaceKHR");
-#endif // VK_USE_PLATFORM_WIN32_KHR
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- table->GetPhysicalDeviceWin32PresentationSupportKHR = (PFN_vkGetPhysicalDeviceWin32PresentationSupportKHR)gpa(inst, "vkGetPhysicalDeviceWin32PresentationSupportKHR");
-#endif // VK_USE_PLATFORM_WIN32_KHR
-
- // ---- VK_KHR_get_physical_device_properties2 extension commands
- table->GetPhysicalDeviceFeatures2KHR = (PFN_vkGetPhysicalDeviceFeatures2KHR)gpa(inst, "vkGetPhysicalDeviceFeatures2KHR");
- table->GetPhysicalDeviceProperties2KHR = (PFN_vkGetPhysicalDeviceProperties2KHR)gpa(inst, "vkGetPhysicalDeviceProperties2KHR");
- table->GetPhysicalDeviceFormatProperties2KHR = (PFN_vkGetPhysicalDeviceFormatProperties2KHR)gpa(inst, "vkGetPhysicalDeviceFormatProperties2KHR");
- table->GetPhysicalDeviceImageFormatProperties2KHR = (PFN_vkGetPhysicalDeviceImageFormatProperties2KHR)gpa(inst, "vkGetPhysicalDeviceImageFormatProperties2KHR");
- table->GetPhysicalDeviceQueueFamilyProperties2KHR = (PFN_vkGetPhysicalDeviceQueueFamilyProperties2KHR)gpa(inst, "vkGetPhysicalDeviceQueueFamilyProperties2KHR");
- table->GetPhysicalDeviceMemoryProperties2KHR = (PFN_vkGetPhysicalDeviceMemoryProperties2KHR)gpa(inst, "vkGetPhysicalDeviceMemoryProperties2KHR");
- table->GetPhysicalDeviceSparseImageFormatProperties2KHR = (PFN_vkGetPhysicalDeviceSparseImageFormatProperties2KHR)gpa(inst, "vkGetPhysicalDeviceSparseImageFormatProperties2KHR");
-
- // ---- VK_KHR_device_group_creation extension commands
- table->EnumeratePhysicalDeviceGroupsKHR = (PFN_vkEnumeratePhysicalDeviceGroupsKHR)gpa(inst, "vkEnumeratePhysicalDeviceGroupsKHR");
-
- // ---- VK_KHR_external_memory_capabilities extension commands
- table->GetPhysicalDeviceExternalBufferPropertiesKHR = (PFN_vkGetPhysicalDeviceExternalBufferPropertiesKHR)gpa(inst, "vkGetPhysicalDeviceExternalBufferPropertiesKHR");
-
- // ---- VK_KHR_external_semaphore_capabilities extension commands
- table->GetPhysicalDeviceExternalSemaphorePropertiesKHR = (PFN_vkGetPhysicalDeviceExternalSemaphorePropertiesKHR)gpa(inst, "vkGetPhysicalDeviceExternalSemaphorePropertiesKHR");
-
- // ---- VK_KHR_external_fence_capabilities extension commands
- table->GetPhysicalDeviceExternalFencePropertiesKHR = (PFN_vkGetPhysicalDeviceExternalFencePropertiesKHR)gpa(inst, "vkGetPhysicalDeviceExternalFencePropertiesKHR");
-
- // ---- VK_KHR_performance_query extension commands
- table->EnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR = (PFN_vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR)gpa(inst, "vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR");
- table->GetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR = (PFN_vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR)gpa(inst, "vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR");
-
- // ---- VK_KHR_get_surface_capabilities2 extension commands
- table->GetPhysicalDeviceSurfaceCapabilities2KHR = (PFN_vkGetPhysicalDeviceSurfaceCapabilities2KHR)gpa(inst, "vkGetPhysicalDeviceSurfaceCapabilities2KHR");
- table->GetPhysicalDeviceSurfaceFormats2KHR = (PFN_vkGetPhysicalDeviceSurfaceFormats2KHR)gpa(inst, "vkGetPhysicalDeviceSurfaceFormats2KHR");
-
- // ---- VK_KHR_get_display_properties2 extension commands
- table->GetPhysicalDeviceDisplayProperties2KHR = (PFN_vkGetPhysicalDeviceDisplayProperties2KHR)gpa(inst, "vkGetPhysicalDeviceDisplayProperties2KHR");
- table->GetPhysicalDeviceDisplayPlaneProperties2KHR = (PFN_vkGetPhysicalDeviceDisplayPlaneProperties2KHR)gpa(inst, "vkGetPhysicalDeviceDisplayPlaneProperties2KHR");
- table->GetDisplayModeProperties2KHR = (PFN_vkGetDisplayModeProperties2KHR)gpa(inst, "vkGetDisplayModeProperties2KHR");
- table->GetDisplayPlaneCapabilities2KHR = (PFN_vkGetDisplayPlaneCapabilities2KHR)gpa(inst, "vkGetDisplayPlaneCapabilities2KHR");
-
- // ---- VK_KHR_fragment_shading_rate extension commands
- table->GetPhysicalDeviceFragmentShadingRatesKHR = (PFN_vkGetPhysicalDeviceFragmentShadingRatesKHR)gpa(inst, "vkGetPhysicalDeviceFragmentShadingRatesKHR");
-
- // ---- VK_EXT_debug_report extension commands
- table->CreateDebugReportCallbackEXT = (PFN_vkCreateDebugReportCallbackEXT)gpa(inst, "vkCreateDebugReportCallbackEXT");
- table->DestroyDebugReportCallbackEXT = (PFN_vkDestroyDebugReportCallbackEXT)gpa(inst, "vkDestroyDebugReportCallbackEXT");
- table->DebugReportMessageEXT = (PFN_vkDebugReportMessageEXT)gpa(inst, "vkDebugReportMessageEXT");
-
- // ---- VK_GGP_stream_descriptor_surface extension commands
-#ifdef VK_USE_PLATFORM_GGP
- table->CreateStreamDescriptorSurfaceGGP = (PFN_vkCreateStreamDescriptorSurfaceGGP)gpa(inst, "vkCreateStreamDescriptorSurfaceGGP");
-#endif // VK_USE_PLATFORM_GGP
-
- // ---- VK_NV_external_memory_capabilities extension commands
- table->GetPhysicalDeviceExternalImageFormatPropertiesNV = (PFN_vkGetPhysicalDeviceExternalImageFormatPropertiesNV)gpa(inst, "vkGetPhysicalDeviceExternalImageFormatPropertiesNV");
-
- // ---- VK_NN_vi_surface extension commands
-#ifdef VK_USE_PLATFORM_VI_NN
- table->CreateViSurfaceNN = (PFN_vkCreateViSurfaceNN)gpa(inst, "vkCreateViSurfaceNN");
-#endif // VK_USE_PLATFORM_VI_NN
-
- // ---- VK_EXT_direct_mode_display extension commands
- table->ReleaseDisplayEXT = (PFN_vkReleaseDisplayEXT)gpa(inst, "vkReleaseDisplayEXT");
-
- // ---- VK_EXT_acquire_xlib_display extension commands
-#ifdef VK_USE_PLATFORM_XLIB_XRANDR_EXT
- table->AcquireXlibDisplayEXT = (PFN_vkAcquireXlibDisplayEXT)gpa(inst, "vkAcquireXlibDisplayEXT");
-#endif // VK_USE_PLATFORM_XLIB_XRANDR_EXT
-#ifdef VK_USE_PLATFORM_XLIB_XRANDR_EXT
- table->GetRandROutputDisplayEXT = (PFN_vkGetRandROutputDisplayEXT)gpa(inst, "vkGetRandROutputDisplayEXT");
-#endif // VK_USE_PLATFORM_XLIB_XRANDR_EXT
-
- // ---- VK_EXT_display_surface_counter extension commands
- table->GetPhysicalDeviceSurfaceCapabilities2EXT = (PFN_vkGetPhysicalDeviceSurfaceCapabilities2EXT)gpa(inst, "vkGetPhysicalDeviceSurfaceCapabilities2EXT");
-
- // ---- VK_MVK_ios_surface extension commands
-#ifdef VK_USE_PLATFORM_IOS_MVK
- table->CreateIOSSurfaceMVK = (PFN_vkCreateIOSSurfaceMVK)gpa(inst, "vkCreateIOSSurfaceMVK");
-#endif // VK_USE_PLATFORM_IOS_MVK
-
- // ---- VK_MVK_macos_surface extension commands
-#ifdef VK_USE_PLATFORM_MACOS_MVK
- table->CreateMacOSSurfaceMVK = (PFN_vkCreateMacOSSurfaceMVK)gpa(inst, "vkCreateMacOSSurfaceMVK");
-#endif // VK_USE_PLATFORM_MACOS_MVK
-
- // ---- VK_EXT_debug_utils extension commands
- table->CreateDebugUtilsMessengerEXT = (PFN_vkCreateDebugUtilsMessengerEXT)gpa(inst, "vkCreateDebugUtilsMessengerEXT");
- table->DestroyDebugUtilsMessengerEXT = (PFN_vkDestroyDebugUtilsMessengerEXT)gpa(inst, "vkDestroyDebugUtilsMessengerEXT");
- table->SubmitDebugUtilsMessageEXT = (PFN_vkSubmitDebugUtilsMessageEXT)gpa(inst, "vkSubmitDebugUtilsMessageEXT");
-
- // ---- VK_EXT_sample_locations extension commands
- table->GetPhysicalDeviceMultisamplePropertiesEXT = (PFN_vkGetPhysicalDeviceMultisamplePropertiesEXT)gpa(inst, "vkGetPhysicalDeviceMultisamplePropertiesEXT");
-
- // ---- VK_EXT_calibrated_timestamps extension commands
- table->GetPhysicalDeviceCalibrateableTimeDomainsEXT = (PFN_vkGetPhysicalDeviceCalibrateableTimeDomainsEXT)gpa(inst, "vkGetPhysicalDeviceCalibrateableTimeDomainsEXT");
-
- // ---- VK_FUCHSIA_imagepipe_surface extension commands
-#ifdef VK_USE_PLATFORM_FUCHSIA
- table->CreateImagePipeSurfaceFUCHSIA = (PFN_vkCreateImagePipeSurfaceFUCHSIA)gpa(inst, "vkCreateImagePipeSurfaceFUCHSIA");
-#endif // VK_USE_PLATFORM_FUCHSIA
-
- // ---- VK_EXT_metal_surface extension commands
-#ifdef VK_USE_PLATFORM_METAL_EXT
- table->CreateMetalSurfaceEXT = (PFN_vkCreateMetalSurfaceEXT)gpa(inst, "vkCreateMetalSurfaceEXT");
-#endif // VK_USE_PLATFORM_METAL_EXT
-
- // ---- VK_EXT_tooling_info extension commands
- table->GetPhysicalDeviceToolPropertiesEXT = (PFN_vkGetPhysicalDeviceToolPropertiesEXT)gpa(inst, "vkGetPhysicalDeviceToolPropertiesEXT");
-
- // ---- VK_NV_cooperative_matrix extension commands
- table->GetPhysicalDeviceCooperativeMatrixPropertiesNV = (PFN_vkGetPhysicalDeviceCooperativeMatrixPropertiesNV)gpa(inst, "vkGetPhysicalDeviceCooperativeMatrixPropertiesNV");
-
- // ---- VK_NV_coverage_reduction_mode extension commands
- table->GetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV = (PFN_vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV)gpa(inst, "vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV");
-
- // ---- VK_EXT_full_screen_exclusive extension commands
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- table->GetPhysicalDeviceSurfacePresentModes2EXT = (PFN_vkGetPhysicalDeviceSurfacePresentModes2EXT)gpa(inst, "vkGetPhysicalDeviceSurfacePresentModes2EXT");
-#endif // VK_USE_PLATFORM_WIN32_KHR
-
- // ---- VK_EXT_headless_surface extension commands
- table->CreateHeadlessSurfaceEXT = (PFN_vkCreateHeadlessSurfaceEXT)gpa(inst, "vkCreateHeadlessSurfaceEXT");
-
- // ---- VK_EXT_directfb_surface extension commands
-#ifdef VK_USE_PLATFORM_DIRECTFB_EXT
- table->CreateDirectFBSurfaceEXT = (PFN_vkCreateDirectFBSurfaceEXT)gpa(inst, "vkCreateDirectFBSurfaceEXT");
-#endif // VK_USE_PLATFORM_DIRECTFB_EXT
-#ifdef VK_USE_PLATFORM_DIRECTFB_EXT
- table->GetPhysicalDeviceDirectFBPresentationSupportEXT = (PFN_vkGetPhysicalDeviceDirectFBPresentationSupportEXT)gpa(inst, "vkGetPhysicalDeviceDirectFBPresentationSupportEXT");
-#endif // VK_USE_PLATFORM_DIRECTFB_EXT
-}
-
-// Device command lookup function
-VKAPI_ATTR void* VKAPI_CALL loader_lookup_device_dispatch_table(const VkLayerDispatchTable *table, const char *name) {
- if (!name || name[0] != 'v' || name[1] != 'k') return NULL;
-
- name += 2;
-
- // ---- Core 1_0 commands
- if (!strcmp(name, "GetDeviceProcAddr")) return (void *)table->GetDeviceProcAddr;
- if (!strcmp(name, "DestroyDevice")) return (void *)table->DestroyDevice;
- if (!strcmp(name, "GetDeviceQueue")) return (void *)table->GetDeviceQueue;
- if (!strcmp(name, "QueueSubmit")) return (void *)table->QueueSubmit;
- if (!strcmp(name, "QueueWaitIdle")) return (void *)table->QueueWaitIdle;
- if (!strcmp(name, "DeviceWaitIdle")) return (void *)table->DeviceWaitIdle;
- if (!strcmp(name, "AllocateMemory")) return (void *)table->AllocateMemory;
- if (!strcmp(name, "FreeMemory")) return (void *)table->FreeMemory;
- if (!strcmp(name, "MapMemory")) return (void *)table->MapMemory;
- if (!strcmp(name, "UnmapMemory")) return (void *)table->UnmapMemory;
- if (!strcmp(name, "FlushMappedMemoryRanges")) return (void *)table->FlushMappedMemoryRanges;
- if (!strcmp(name, "InvalidateMappedMemoryRanges")) return (void *)table->InvalidateMappedMemoryRanges;
- if (!strcmp(name, "GetDeviceMemoryCommitment")) return (void *)table->GetDeviceMemoryCommitment;
- if (!strcmp(name, "BindBufferMemory")) return (void *)table->BindBufferMemory;
- if (!strcmp(name, "BindImageMemory")) return (void *)table->BindImageMemory;
- if (!strcmp(name, "GetBufferMemoryRequirements")) return (void *)table->GetBufferMemoryRequirements;
- if (!strcmp(name, "GetImageMemoryRequirements")) return (void *)table->GetImageMemoryRequirements;
- if (!strcmp(name, "GetImageSparseMemoryRequirements")) return (void *)table->GetImageSparseMemoryRequirements;
- if (!strcmp(name, "QueueBindSparse")) return (void *)table->QueueBindSparse;
- if (!strcmp(name, "CreateFence")) return (void *)table->CreateFence;
- if (!strcmp(name, "DestroyFence")) return (void *)table->DestroyFence;
- if (!strcmp(name, "ResetFences")) return (void *)table->ResetFences;
- if (!strcmp(name, "GetFenceStatus")) return (void *)table->GetFenceStatus;
- if (!strcmp(name, "WaitForFences")) return (void *)table->WaitForFences;
- if (!strcmp(name, "CreateSemaphore")) return (void *)table->CreateSemaphore;
- if (!strcmp(name, "DestroySemaphore")) return (void *)table->DestroySemaphore;
- if (!strcmp(name, "CreateEvent")) return (void *)table->CreateEvent;
- if (!strcmp(name, "DestroyEvent")) return (void *)table->DestroyEvent;
- if (!strcmp(name, "GetEventStatus")) return (void *)table->GetEventStatus;
- if (!strcmp(name, "SetEvent")) return (void *)table->SetEvent;
- if (!strcmp(name, "ResetEvent")) return (void *)table->ResetEvent;
- if (!strcmp(name, "CreateQueryPool")) return (void *)table->CreateQueryPool;
- if (!strcmp(name, "DestroyQueryPool")) return (void *)table->DestroyQueryPool;
- if (!strcmp(name, "GetQueryPoolResults")) return (void *)table->GetQueryPoolResults;
- if (!strcmp(name, "CreateBuffer")) return (void *)table->CreateBuffer;
- if (!strcmp(name, "DestroyBuffer")) return (void *)table->DestroyBuffer;
- if (!strcmp(name, "CreateBufferView")) return (void *)table->CreateBufferView;
- if (!strcmp(name, "DestroyBufferView")) return (void *)table->DestroyBufferView;
- if (!strcmp(name, "CreateImage")) return (void *)table->CreateImage;
- if (!strcmp(name, "DestroyImage")) return (void *)table->DestroyImage;
- if (!strcmp(name, "GetImageSubresourceLayout")) return (void *)table->GetImageSubresourceLayout;
- if (!strcmp(name, "CreateImageView")) return (void *)table->CreateImageView;
- if (!strcmp(name, "DestroyImageView")) return (void *)table->DestroyImageView;
- if (!strcmp(name, "CreateShaderModule")) return (void *)table->CreateShaderModule;
- if (!strcmp(name, "DestroyShaderModule")) return (void *)table->DestroyShaderModule;
- if (!strcmp(name, "CreatePipelineCache")) return (void *)table->CreatePipelineCache;
- if (!strcmp(name, "DestroyPipelineCache")) return (void *)table->DestroyPipelineCache;
- if (!strcmp(name, "GetPipelineCacheData")) return (void *)table->GetPipelineCacheData;
- if (!strcmp(name, "MergePipelineCaches")) return (void *)table->MergePipelineCaches;
- if (!strcmp(name, "CreateGraphicsPipelines")) return (void *)table->CreateGraphicsPipelines;
- if (!strcmp(name, "CreateComputePipelines")) return (void *)table->CreateComputePipelines;
- if (!strcmp(name, "DestroyPipeline")) return (void *)table->DestroyPipeline;
- if (!strcmp(name, "CreatePipelineLayout")) return (void *)table->CreatePipelineLayout;
- if (!strcmp(name, "DestroyPipelineLayout")) return (void *)table->DestroyPipelineLayout;
- if (!strcmp(name, "CreateSampler")) return (void *)table->CreateSampler;
- if (!strcmp(name, "DestroySampler")) return (void *)table->DestroySampler;
- if (!strcmp(name, "CreateDescriptorSetLayout")) return (void *)table->CreateDescriptorSetLayout;
- if (!strcmp(name, "DestroyDescriptorSetLayout")) return (void *)table->DestroyDescriptorSetLayout;
- if (!strcmp(name, "CreateDescriptorPool")) return (void *)table->CreateDescriptorPool;
- if (!strcmp(name, "DestroyDescriptorPool")) return (void *)table->DestroyDescriptorPool;
- if (!strcmp(name, "ResetDescriptorPool")) return (void *)table->ResetDescriptorPool;
- if (!strcmp(name, "AllocateDescriptorSets")) return (void *)table->AllocateDescriptorSets;
- if (!strcmp(name, "FreeDescriptorSets")) return (void *)table->FreeDescriptorSets;
- if (!strcmp(name, "UpdateDescriptorSets")) return (void *)table->UpdateDescriptorSets;
- if (!strcmp(name, "CreateFramebuffer")) return (void *)table->CreateFramebuffer;
- if (!strcmp(name, "DestroyFramebuffer")) return (void *)table->DestroyFramebuffer;
- if (!strcmp(name, "CreateRenderPass")) return (void *)table->CreateRenderPass;
- if (!strcmp(name, "DestroyRenderPass")) return (void *)table->DestroyRenderPass;
- if (!strcmp(name, "GetRenderAreaGranularity")) return (void *)table->GetRenderAreaGranularity;
- if (!strcmp(name, "CreateCommandPool")) return (void *)table->CreateCommandPool;
- if (!strcmp(name, "DestroyCommandPool")) return (void *)table->DestroyCommandPool;
- if (!strcmp(name, "ResetCommandPool")) return (void *)table->ResetCommandPool;
- if (!strcmp(name, "AllocateCommandBuffers")) return (void *)table->AllocateCommandBuffers;
- if (!strcmp(name, "FreeCommandBuffers")) return (void *)table->FreeCommandBuffers;
- if (!strcmp(name, "BeginCommandBuffer")) return (void *)table->BeginCommandBuffer;
- if (!strcmp(name, "EndCommandBuffer")) return (void *)table->EndCommandBuffer;
- if (!strcmp(name, "ResetCommandBuffer")) return (void *)table->ResetCommandBuffer;
- if (!strcmp(name, "CmdBindPipeline")) return (void *)table->CmdBindPipeline;
- if (!strcmp(name, "CmdSetViewport")) return (void *)table->CmdSetViewport;
- if (!strcmp(name, "CmdSetScissor")) return (void *)table->CmdSetScissor;
- if (!strcmp(name, "CmdSetLineWidth")) return (void *)table->CmdSetLineWidth;
- if (!strcmp(name, "CmdSetDepthBias")) return (void *)table->CmdSetDepthBias;
- if (!strcmp(name, "CmdSetBlendConstants")) return (void *)table->CmdSetBlendConstants;
- if (!strcmp(name, "CmdSetDepthBounds")) return (void *)table->CmdSetDepthBounds;
- if (!strcmp(name, "CmdSetStencilCompareMask")) return (void *)table->CmdSetStencilCompareMask;
- if (!strcmp(name, "CmdSetStencilWriteMask")) return (void *)table->CmdSetStencilWriteMask;
- if (!strcmp(name, "CmdSetStencilReference")) return (void *)table->CmdSetStencilReference;
- if (!strcmp(name, "CmdBindDescriptorSets")) return (void *)table->CmdBindDescriptorSets;
- if (!strcmp(name, "CmdBindIndexBuffer")) return (void *)table->CmdBindIndexBuffer;
- if (!strcmp(name, "CmdBindVertexBuffers")) return (void *)table->CmdBindVertexBuffers;
- if (!strcmp(name, "CmdDraw")) return (void *)table->CmdDraw;
- if (!strcmp(name, "CmdDrawIndexed")) return (void *)table->CmdDrawIndexed;
- if (!strcmp(name, "CmdDrawIndirect")) return (void *)table->CmdDrawIndirect;
- if (!strcmp(name, "CmdDrawIndexedIndirect")) return (void *)table->CmdDrawIndexedIndirect;
- if (!strcmp(name, "CmdDispatch")) return (void *)table->CmdDispatch;
- if (!strcmp(name, "CmdDispatchIndirect")) return (void *)table->CmdDispatchIndirect;
- if (!strcmp(name, "CmdCopyBuffer")) return (void *)table->CmdCopyBuffer;
- if (!strcmp(name, "CmdCopyImage")) return (void *)table->CmdCopyImage;
- if (!strcmp(name, "CmdBlitImage")) return (void *)table->CmdBlitImage;
- if (!strcmp(name, "CmdCopyBufferToImage")) return (void *)table->CmdCopyBufferToImage;
- if (!strcmp(name, "CmdCopyImageToBuffer")) return (void *)table->CmdCopyImageToBuffer;
- if (!strcmp(name, "CmdUpdateBuffer")) return (void *)table->CmdUpdateBuffer;
- if (!strcmp(name, "CmdFillBuffer")) return (void *)table->CmdFillBuffer;
- if (!strcmp(name, "CmdClearColorImage")) return (void *)table->CmdClearColorImage;
- if (!strcmp(name, "CmdClearDepthStencilImage")) return (void *)table->CmdClearDepthStencilImage;
- if (!strcmp(name, "CmdClearAttachments")) return (void *)table->CmdClearAttachments;
- if (!strcmp(name, "CmdResolveImage")) return (void *)table->CmdResolveImage;
- if (!strcmp(name, "CmdSetEvent")) return (void *)table->CmdSetEvent;
- if (!strcmp(name, "CmdResetEvent")) return (void *)table->CmdResetEvent;
- if (!strcmp(name, "CmdWaitEvents")) return (void *)table->CmdWaitEvents;
- if (!strcmp(name, "CmdPipelineBarrier")) return (void *)table->CmdPipelineBarrier;
- if (!strcmp(name, "CmdBeginQuery")) return (void *)table->CmdBeginQuery;
- if (!strcmp(name, "CmdEndQuery")) return (void *)table->CmdEndQuery;
- if (!strcmp(name, "CmdResetQueryPool")) return (void *)table->CmdResetQueryPool;
- if (!strcmp(name, "CmdWriteTimestamp")) return (void *)table->CmdWriteTimestamp;
- if (!strcmp(name, "CmdCopyQueryPoolResults")) return (void *)table->CmdCopyQueryPoolResults;
- if (!strcmp(name, "CmdPushConstants")) return (void *)table->CmdPushConstants;
- if (!strcmp(name, "CmdBeginRenderPass")) return (void *)table->CmdBeginRenderPass;
- if (!strcmp(name, "CmdNextSubpass")) return (void *)table->CmdNextSubpass;
- if (!strcmp(name, "CmdEndRenderPass")) return (void *)table->CmdEndRenderPass;
- if (!strcmp(name, "CmdExecuteCommands")) return (void *)table->CmdExecuteCommands;
-
- // ---- Core 1_1 commands
- if (!strcmp(name, "BindBufferMemory2")) return (void *)table->BindBufferMemory2;
- if (!strcmp(name, "BindImageMemory2")) return (void *)table->BindImageMemory2;
- if (!strcmp(name, "GetDeviceGroupPeerMemoryFeatures")) return (void *)table->GetDeviceGroupPeerMemoryFeatures;
- if (!strcmp(name, "CmdSetDeviceMask")) return (void *)table->CmdSetDeviceMask;
- if (!strcmp(name, "CmdDispatchBase")) return (void *)table->CmdDispatchBase;
- if (!strcmp(name, "GetImageMemoryRequirements2")) return (void *)table->GetImageMemoryRequirements2;
- if (!strcmp(name, "GetBufferMemoryRequirements2")) return (void *)table->GetBufferMemoryRequirements2;
- if (!strcmp(name, "GetImageSparseMemoryRequirements2")) return (void *)table->GetImageSparseMemoryRequirements2;
- if (!strcmp(name, "TrimCommandPool")) return (void *)table->TrimCommandPool;
- if (!strcmp(name, "GetDeviceQueue2")) return (void *)table->GetDeviceQueue2;
- if (!strcmp(name, "CreateSamplerYcbcrConversion")) return (void *)table->CreateSamplerYcbcrConversion;
- if (!strcmp(name, "DestroySamplerYcbcrConversion")) return (void *)table->DestroySamplerYcbcrConversion;
- if (!strcmp(name, "CreateDescriptorUpdateTemplate")) return (void *)table->CreateDescriptorUpdateTemplate;
- if (!strcmp(name, "DestroyDescriptorUpdateTemplate")) return (void *)table->DestroyDescriptorUpdateTemplate;
- if (!strcmp(name, "UpdateDescriptorSetWithTemplate")) return (void *)table->UpdateDescriptorSetWithTemplate;
- if (!strcmp(name, "GetDescriptorSetLayoutSupport")) return (void *)table->GetDescriptorSetLayoutSupport;
-
- // ---- Core 1_2 commands
- if (!strcmp(name, "CmdDrawIndirectCount")) return (void *)table->CmdDrawIndirectCount;
- if (!strcmp(name, "CmdDrawIndexedIndirectCount")) return (void *)table->CmdDrawIndexedIndirectCount;
- if (!strcmp(name, "CreateRenderPass2")) return (void *)table->CreateRenderPass2;
- if (!strcmp(name, "CmdBeginRenderPass2")) return (void *)table->CmdBeginRenderPass2;
- if (!strcmp(name, "CmdNextSubpass2")) return (void *)table->CmdNextSubpass2;
- if (!strcmp(name, "CmdEndRenderPass2")) return (void *)table->CmdEndRenderPass2;
- if (!strcmp(name, "ResetQueryPool")) return (void *)table->ResetQueryPool;
- if (!strcmp(name, "GetSemaphoreCounterValue")) return (void *)table->GetSemaphoreCounterValue;
- if (!strcmp(name, "WaitSemaphores")) return (void *)table->WaitSemaphores;
- if (!strcmp(name, "SignalSemaphore")) return (void *)table->SignalSemaphore;
- if (!strcmp(name, "GetBufferDeviceAddress")) return (void *)table->GetBufferDeviceAddress;
- if (!strcmp(name, "GetBufferOpaqueCaptureAddress")) return (void *)table->GetBufferOpaqueCaptureAddress;
- if (!strcmp(name, "GetDeviceMemoryOpaqueCaptureAddress")) return (void *)table->GetDeviceMemoryOpaqueCaptureAddress;
-
- // ---- VK_KHR_swapchain extension commands
- if (!strcmp(name, "CreateSwapchainKHR")) return (void *)table->CreateSwapchainKHR;
- if (!strcmp(name, "DestroySwapchainKHR")) return (void *)table->DestroySwapchainKHR;
- if (!strcmp(name, "GetSwapchainImagesKHR")) return (void *)table->GetSwapchainImagesKHR;
- if (!strcmp(name, "AcquireNextImageKHR")) return (void *)table->AcquireNextImageKHR;
- if (!strcmp(name, "QueuePresentKHR")) return (void *)table->QueuePresentKHR;
- if (!strcmp(name, "GetDeviceGroupPresentCapabilitiesKHR")) return (void *)table->GetDeviceGroupPresentCapabilitiesKHR;
- if (!strcmp(name, "GetDeviceGroupSurfacePresentModesKHR")) return (void *)table->GetDeviceGroupSurfacePresentModesKHR;
- if (!strcmp(name, "AcquireNextImage2KHR")) return (void *)table->AcquireNextImage2KHR;
-
- // ---- VK_KHR_display_swapchain extension commands
- if (!strcmp(name, "CreateSharedSwapchainsKHR")) return (void *)table->CreateSharedSwapchainsKHR;
-
- // ---- VK_KHR_device_group extension commands
- if (!strcmp(name, "GetDeviceGroupPeerMemoryFeaturesKHR")) return (void *)table->GetDeviceGroupPeerMemoryFeaturesKHR;
- if (!strcmp(name, "CmdSetDeviceMaskKHR")) return (void *)table->CmdSetDeviceMaskKHR;
- if (!strcmp(name, "CmdDispatchBaseKHR")) return (void *)table->CmdDispatchBaseKHR;
-
- // ---- VK_KHR_maintenance1 extension commands
- if (!strcmp(name, "TrimCommandPoolKHR")) return (void *)table->TrimCommandPoolKHR;
-
- // ---- VK_KHR_external_memory_win32 extension commands
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- if (!strcmp(name, "GetMemoryWin32HandleKHR")) return (void *)table->GetMemoryWin32HandleKHR;
-#endif // VK_USE_PLATFORM_WIN32_KHR
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- if (!strcmp(name, "GetMemoryWin32HandlePropertiesKHR")) return (void *)table->GetMemoryWin32HandlePropertiesKHR;
-#endif // VK_USE_PLATFORM_WIN32_KHR
-
- // ---- VK_KHR_external_memory_fd extension commands
- if (!strcmp(name, "GetMemoryFdKHR")) return (void *)table->GetMemoryFdKHR;
- if (!strcmp(name, "GetMemoryFdPropertiesKHR")) return (void *)table->GetMemoryFdPropertiesKHR;
-
- // ---- VK_KHR_external_semaphore_win32 extension commands
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- if (!strcmp(name, "ImportSemaphoreWin32HandleKHR")) return (void *)table->ImportSemaphoreWin32HandleKHR;
-#endif // VK_USE_PLATFORM_WIN32_KHR
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- if (!strcmp(name, "GetSemaphoreWin32HandleKHR")) return (void *)table->GetSemaphoreWin32HandleKHR;
-#endif // VK_USE_PLATFORM_WIN32_KHR
-
- // ---- VK_KHR_external_semaphore_fd extension commands
- if (!strcmp(name, "ImportSemaphoreFdKHR")) return (void *)table->ImportSemaphoreFdKHR;
- if (!strcmp(name, "GetSemaphoreFdKHR")) return (void *)table->GetSemaphoreFdKHR;
-
- // ---- VK_KHR_push_descriptor extension commands
- if (!strcmp(name, "CmdPushDescriptorSetKHR")) return (void *)table->CmdPushDescriptorSetKHR;
- if (!strcmp(name, "CmdPushDescriptorSetWithTemplateKHR")) return (void *)table->CmdPushDescriptorSetWithTemplateKHR;
-
- // ---- VK_KHR_descriptor_update_template extension commands
- if (!strcmp(name, "CreateDescriptorUpdateTemplateKHR")) return (void *)table->CreateDescriptorUpdateTemplateKHR;
- if (!strcmp(name, "DestroyDescriptorUpdateTemplateKHR")) return (void *)table->DestroyDescriptorUpdateTemplateKHR;
- if (!strcmp(name, "UpdateDescriptorSetWithTemplateKHR")) return (void *)table->UpdateDescriptorSetWithTemplateKHR;
-
- // ---- VK_KHR_create_renderpass2 extension commands
- if (!strcmp(name, "CreateRenderPass2KHR")) return (void *)table->CreateRenderPass2KHR;
- if (!strcmp(name, "CmdBeginRenderPass2KHR")) return (void *)table->CmdBeginRenderPass2KHR;
- if (!strcmp(name, "CmdNextSubpass2KHR")) return (void *)table->CmdNextSubpass2KHR;
- if (!strcmp(name, "CmdEndRenderPass2KHR")) return (void *)table->CmdEndRenderPass2KHR;
-
- // ---- VK_KHR_shared_presentable_image extension commands
- if (!strcmp(name, "GetSwapchainStatusKHR")) return (void *)table->GetSwapchainStatusKHR;
-
- // ---- VK_KHR_external_fence_win32 extension commands
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- if (!strcmp(name, "ImportFenceWin32HandleKHR")) return (void *)table->ImportFenceWin32HandleKHR;
-#endif // VK_USE_PLATFORM_WIN32_KHR
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- if (!strcmp(name, "GetFenceWin32HandleKHR")) return (void *)table->GetFenceWin32HandleKHR;
-#endif // VK_USE_PLATFORM_WIN32_KHR
-
- // ---- VK_KHR_external_fence_fd extension commands
- if (!strcmp(name, "ImportFenceFdKHR")) return (void *)table->ImportFenceFdKHR;
- if (!strcmp(name, "GetFenceFdKHR")) return (void *)table->GetFenceFdKHR;
-
- // ---- VK_KHR_performance_query extension commands
- if (!strcmp(name, "AcquireProfilingLockKHR")) return (void *)table->AcquireProfilingLockKHR;
- if (!strcmp(name, "ReleaseProfilingLockKHR")) return (void *)table->ReleaseProfilingLockKHR;
-
- // ---- VK_KHR_get_memory_requirements2 extension commands
- if (!strcmp(name, "GetImageMemoryRequirements2KHR")) return (void *)table->GetImageMemoryRequirements2KHR;
- if (!strcmp(name, "GetBufferMemoryRequirements2KHR")) return (void *)table->GetBufferMemoryRequirements2KHR;
- if (!strcmp(name, "GetImageSparseMemoryRequirements2KHR")) return (void *)table->GetImageSparseMemoryRequirements2KHR;
-
- // ---- VK_KHR_sampler_ycbcr_conversion extension commands
- if (!strcmp(name, "CreateSamplerYcbcrConversionKHR")) return (void *)table->CreateSamplerYcbcrConversionKHR;
- if (!strcmp(name, "DestroySamplerYcbcrConversionKHR")) return (void *)table->DestroySamplerYcbcrConversionKHR;
-
- // ---- VK_KHR_bind_memory2 extension commands
- if (!strcmp(name, "BindBufferMemory2KHR")) return (void *)table->BindBufferMemory2KHR;
- if (!strcmp(name, "BindImageMemory2KHR")) return (void *)table->BindImageMemory2KHR;
-
- // ---- VK_KHR_maintenance3 extension commands
- if (!strcmp(name, "GetDescriptorSetLayoutSupportKHR")) return (void *)table->GetDescriptorSetLayoutSupportKHR;
-
- // ---- VK_KHR_draw_indirect_count extension commands
- if (!strcmp(name, "CmdDrawIndirectCountKHR")) return (void *)table->CmdDrawIndirectCountKHR;
- if (!strcmp(name, "CmdDrawIndexedIndirectCountKHR")) return (void *)table->CmdDrawIndexedIndirectCountKHR;
-
- // ---- VK_KHR_timeline_semaphore extension commands
- if (!strcmp(name, "GetSemaphoreCounterValueKHR")) return (void *)table->GetSemaphoreCounterValueKHR;
- if (!strcmp(name, "WaitSemaphoresKHR")) return (void *)table->WaitSemaphoresKHR;
- if (!strcmp(name, "SignalSemaphoreKHR")) return (void *)table->SignalSemaphoreKHR;
-
- // ---- VK_KHR_fragment_shading_rate extension commands
- if (!strcmp(name, "CmdSetFragmentShadingRateKHR")) return (void *)table->CmdSetFragmentShadingRateKHR;
-
- // ---- VK_KHR_buffer_device_address extension commands
- if (!strcmp(name, "GetBufferDeviceAddressKHR")) return (void *)table->GetBufferDeviceAddressKHR;
- if (!strcmp(name, "GetBufferOpaqueCaptureAddressKHR")) return (void *)table->GetBufferOpaqueCaptureAddressKHR;
- if (!strcmp(name, "GetDeviceMemoryOpaqueCaptureAddressKHR")) return (void *)table->GetDeviceMemoryOpaqueCaptureAddressKHR;
-
- // ---- VK_KHR_deferred_host_operations extension commands
- if (!strcmp(name, "CreateDeferredOperationKHR")) return (void *)table->CreateDeferredOperationKHR;
- if (!strcmp(name, "DestroyDeferredOperationKHR")) return (void *)table->DestroyDeferredOperationKHR;
- if (!strcmp(name, "GetDeferredOperationMaxConcurrencyKHR")) return (void *)table->GetDeferredOperationMaxConcurrencyKHR;
- if (!strcmp(name, "GetDeferredOperationResultKHR")) return (void *)table->GetDeferredOperationResultKHR;
- if (!strcmp(name, "DeferredOperationJoinKHR")) return (void *)table->DeferredOperationJoinKHR;
-
- // ---- VK_KHR_pipeline_executable_properties extension commands
- if (!strcmp(name, "GetPipelineExecutablePropertiesKHR")) return (void *)table->GetPipelineExecutablePropertiesKHR;
- if (!strcmp(name, "GetPipelineExecutableStatisticsKHR")) return (void *)table->GetPipelineExecutableStatisticsKHR;
- if (!strcmp(name, "GetPipelineExecutableInternalRepresentationsKHR")) return (void *)table->GetPipelineExecutableInternalRepresentationsKHR;
-
- // ---- VK_KHR_copy_commands2 extension commands
- if (!strcmp(name, "CmdCopyBuffer2KHR")) return (void *)table->CmdCopyBuffer2KHR;
- if (!strcmp(name, "CmdCopyImage2KHR")) return (void *)table->CmdCopyImage2KHR;
- if (!strcmp(name, "CmdCopyBufferToImage2KHR")) return (void *)table->CmdCopyBufferToImage2KHR;
- if (!strcmp(name, "CmdCopyImageToBuffer2KHR")) return (void *)table->CmdCopyImageToBuffer2KHR;
- if (!strcmp(name, "CmdBlitImage2KHR")) return (void *)table->CmdBlitImage2KHR;
- if (!strcmp(name, "CmdResolveImage2KHR")) return (void *)table->CmdResolveImage2KHR;
-
- // ---- VK_EXT_debug_marker extension commands
- if (!strcmp(name, "DebugMarkerSetObjectTagEXT")) return (void *)table->DebugMarkerSetObjectTagEXT;
- if (!strcmp(name, "DebugMarkerSetObjectNameEXT")) return (void *)table->DebugMarkerSetObjectNameEXT;
- if (!strcmp(name, "CmdDebugMarkerBeginEXT")) return (void *)table->CmdDebugMarkerBeginEXT;
- if (!strcmp(name, "CmdDebugMarkerEndEXT")) return (void *)table->CmdDebugMarkerEndEXT;
- if (!strcmp(name, "CmdDebugMarkerInsertEXT")) return (void *)table->CmdDebugMarkerInsertEXT;
-
- // ---- VK_EXT_transform_feedback extension commands
- if (!strcmp(name, "CmdBindTransformFeedbackBuffersEXT")) return (void *)table->CmdBindTransformFeedbackBuffersEXT;
- if (!strcmp(name, "CmdBeginTransformFeedbackEXT")) return (void *)table->CmdBeginTransformFeedbackEXT;
- if (!strcmp(name, "CmdEndTransformFeedbackEXT")) return (void *)table->CmdEndTransformFeedbackEXT;
- if (!strcmp(name, "CmdBeginQueryIndexedEXT")) return (void *)table->CmdBeginQueryIndexedEXT;
- if (!strcmp(name, "CmdEndQueryIndexedEXT")) return (void *)table->CmdEndQueryIndexedEXT;
- if (!strcmp(name, "CmdDrawIndirectByteCountEXT")) return (void *)table->CmdDrawIndirectByteCountEXT;
-
- // ---- VK_NVX_image_view_handle extension commands
- if (!strcmp(name, "GetImageViewHandleNVX")) return (void *)table->GetImageViewHandleNVX;
- if (!strcmp(name, "GetImageViewAddressNVX")) return (void *)table->GetImageViewAddressNVX;
-
- // ---- VK_AMD_draw_indirect_count extension commands
- if (!strcmp(name, "CmdDrawIndirectCountAMD")) return (void *)table->CmdDrawIndirectCountAMD;
- if (!strcmp(name, "CmdDrawIndexedIndirectCountAMD")) return (void *)table->CmdDrawIndexedIndirectCountAMD;
-
- // ---- VK_AMD_shader_info extension commands
- if (!strcmp(name, "GetShaderInfoAMD")) return (void *)table->GetShaderInfoAMD;
-
- // ---- VK_NV_external_memory_win32 extension commands
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- if (!strcmp(name, "GetMemoryWin32HandleNV")) return (void *)table->GetMemoryWin32HandleNV;
-#endif // VK_USE_PLATFORM_WIN32_KHR
-
- // ---- VK_EXT_conditional_rendering extension commands
- if (!strcmp(name, "CmdBeginConditionalRenderingEXT")) return (void *)table->CmdBeginConditionalRenderingEXT;
- if (!strcmp(name, "CmdEndConditionalRenderingEXT")) return (void *)table->CmdEndConditionalRenderingEXT;
-
- // ---- VK_NV_clip_space_w_scaling extension commands
- if (!strcmp(name, "CmdSetViewportWScalingNV")) return (void *)table->CmdSetViewportWScalingNV;
-
- // ---- VK_EXT_display_control extension commands
- if (!strcmp(name, "DisplayPowerControlEXT")) return (void *)table->DisplayPowerControlEXT;
- if (!strcmp(name, "RegisterDeviceEventEXT")) return (void *)table->RegisterDeviceEventEXT;
- if (!strcmp(name, "RegisterDisplayEventEXT")) return (void *)table->RegisterDisplayEventEXT;
- if (!strcmp(name, "GetSwapchainCounterEXT")) return (void *)table->GetSwapchainCounterEXT;
-
- // ---- VK_GOOGLE_display_timing extension commands
- if (!strcmp(name, "GetRefreshCycleDurationGOOGLE")) return (void *)table->GetRefreshCycleDurationGOOGLE;
- if (!strcmp(name, "GetPastPresentationTimingGOOGLE")) return (void *)table->GetPastPresentationTimingGOOGLE;
-
- // ---- VK_EXT_discard_rectangles extension commands
- if (!strcmp(name, "CmdSetDiscardRectangleEXT")) return (void *)table->CmdSetDiscardRectangleEXT;
-
- // ---- VK_EXT_hdr_metadata extension commands
- if (!strcmp(name, "SetHdrMetadataEXT")) return (void *)table->SetHdrMetadataEXT;
-
- // ---- VK_EXT_debug_utils extension commands
- if (!strcmp(name, "SetDebugUtilsObjectNameEXT")) return (void *)table->SetDebugUtilsObjectNameEXT;
- if (!strcmp(name, "SetDebugUtilsObjectTagEXT")) return (void *)table->SetDebugUtilsObjectTagEXT;
- if (!strcmp(name, "QueueBeginDebugUtilsLabelEXT")) return (void *)table->QueueBeginDebugUtilsLabelEXT;
- if (!strcmp(name, "QueueEndDebugUtilsLabelEXT")) return (void *)table->QueueEndDebugUtilsLabelEXT;
- if (!strcmp(name, "QueueInsertDebugUtilsLabelEXT")) return (void *)table->QueueInsertDebugUtilsLabelEXT;
- if (!strcmp(name, "CmdBeginDebugUtilsLabelEXT")) return (void *)table->CmdBeginDebugUtilsLabelEXT;
- if (!strcmp(name, "CmdEndDebugUtilsLabelEXT")) return (void *)table->CmdEndDebugUtilsLabelEXT;
- if (!strcmp(name, "CmdInsertDebugUtilsLabelEXT")) return (void *)table->CmdInsertDebugUtilsLabelEXT;
-
- // ---- VK_ANDROID_external_memory_android_hardware_buffer extension commands
-#ifdef VK_USE_PLATFORM_ANDROID_KHR
- if (!strcmp(name, "GetAndroidHardwareBufferPropertiesANDROID")) return (void *)table->GetAndroidHardwareBufferPropertiesANDROID;
-#endif // VK_USE_PLATFORM_ANDROID_KHR
-#ifdef VK_USE_PLATFORM_ANDROID_KHR
- if (!strcmp(name, "GetMemoryAndroidHardwareBufferANDROID")) return (void *)table->GetMemoryAndroidHardwareBufferANDROID;
-#endif // VK_USE_PLATFORM_ANDROID_KHR
-
- // ---- VK_EXT_sample_locations extension commands
- if (!strcmp(name, "CmdSetSampleLocationsEXT")) return (void *)table->CmdSetSampleLocationsEXT;
-
- // ---- VK_EXT_image_drm_format_modifier extension commands
- if (!strcmp(name, "GetImageDrmFormatModifierPropertiesEXT")) return (void *)table->GetImageDrmFormatModifierPropertiesEXT;
-
- // ---- VK_EXT_validation_cache extension commands
- if (!strcmp(name, "CreateValidationCacheEXT")) return (void *)table->CreateValidationCacheEXT;
- if (!strcmp(name, "DestroyValidationCacheEXT")) return (void *)table->DestroyValidationCacheEXT;
- if (!strcmp(name, "MergeValidationCachesEXT")) return (void *)table->MergeValidationCachesEXT;
- if (!strcmp(name, "GetValidationCacheDataEXT")) return (void *)table->GetValidationCacheDataEXT;
-
- // ---- VK_NV_shading_rate_image extension commands
- if (!strcmp(name, "CmdBindShadingRateImageNV")) return (void *)table->CmdBindShadingRateImageNV;
- if (!strcmp(name, "CmdSetViewportShadingRatePaletteNV")) return (void *)table->CmdSetViewportShadingRatePaletteNV;
- if (!strcmp(name, "CmdSetCoarseSampleOrderNV")) return (void *)table->CmdSetCoarseSampleOrderNV;
-
- // ---- VK_NV_ray_tracing extension commands
- if (!strcmp(name, "CreateAccelerationStructureNV")) return (void *)table->CreateAccelerationStructureNV;
- if (!strcmp(name, "DestroyAccelerationStructureNV")) return (void *)table->DestroyAccelerationStructureNV;
- if (!strcmp(name, "GetAccelerationStructureMemoryRequirementsNV")) return (void *)table->GetAccelerationStructureMemoryRequirementsNV;
- if (!strcmp(name, "BindAccelerationStructureMemoryNV")) return (void *)table->BindAccelerationStructureMemoryNV;
- if (!strcmp(name, "CmdBuildAccelerationStructureNV")) return (void *)table->CmdBuildAccelerationStructureNV;
- if (!strcmp(name, "CmdCopyAccelerationStructureNV")) return (void *)table->CmdCopyAccelerationStructureNV;
- if (!strcmp(name, "CmdTraceRaysNV")) return (void *)table->CmdTraceRaysNV;
- if (!strcmp(name, "CreateRayTracingPipelinesNV")) return (void *)table->CreateRayTracingPipelinesNV;
- if (!strcmp(name, "GetRayTracingShaderGroupHandlesKHR")) return (void *)table->GetRayTracingShaderGroupHandlesKHR;
- if (!strcmp(name, "GetRayTracingShaderGroupHandlesNV")) return (void *)table->GetRayTracingShaderGroupHandlesNV;
- if (!strcmp(name, "GetAccelerationStructureHandleNV")) return (void *)table->GetAccelerationStructureHandleNV;
- if (!strcmp(name, "CmdWriteAccelerationStructuresPropertiesNV")) return (void *)table->CmdWriteAccelerationStructuresPropertiesNV;
- if (!strcmp(name, "CompileDeferredNV")) return (void *)table->CompileDeferredNV;
-
- // ---- VK_EXT_external_memory_host extension commands
- if (!strcmp(name, "GetMemoryHostPointerPropertiesEXT")) return (void *)table->GetMemoryHostPointerPropertiesEXT;
-
- // ---- VK_AMD_buffer_marker extension commands
- if (!strcmp(name, "CmdWriteBufferMarkerAMD")) return (void *)table->CmdWriteBufferMarkerAMD;
-
- // ---- VK_EXT_calibrated_timestamps extension commands
- if (!strcmp(name, "GetCalibratedTimestampsEXT")) return (void *)table->GetCalibratedTimestampsEXT;
-
- // ---- VK_NV_mesh_shader extension commands
- if (!strcmp(name, "CmdDrawMeshTasksNV")) return (void *)table->CmdDrawMeshTasksNV;
- if (!strcmp(name, "CmdDrawMeshTasksIndirectNV")) return (void *)table->CmdDrawMeshTasksIndirectNV;
- if (!strcmp(name, "CmdDrawMeshTasksIndirectCountNV")) return (void *)table->CmdDrawMeshTasksIndirectCountNV;
-
- // ---- VK_NV_scissor_exclusive extension commands
- if (!strcmp(name, "CmdSetExclusiveScissorNV")) return (void *)table->CmdSetExclusiveScissorNV;
-
- // ---- VK_NV_device_diagnostic_checkpoints extension commands
- if (!strcmp(name, "CmdSetCheckpointNV")) return (void *)table->CmdSetCheckpointNV;
- if (!strcmp(name, "GetQueueCheckpointDataNV")) return (void *)table->GetQueueCheckpointDataNV;
-
- // ---- VK_INTEL_performance_query extension commands
- if (!strcmp(name, "InitializePerformanceApiINTEL")) return (void *)table->InitializePerformanceApiINTEL;
- if (!strcmp(name, "UninitializePerformanceApiINTEL")) return (void *)table->UninitializePerformanceApiINTEL;
- if (!strcmp(name, "CmdSetPerformanceMarkerINTEL")) return (void *)table->CmdSetPerformanceMarkerINTEL;
- if (!strcmp(name, "CmdSetPerformanceStreamMarkerINTEL")) return (void *)table->CmdSetPerformanceStreamMarkerINTEL;
- if (!strcmp(name, "CmdSetPerformanceOverrideINTEL")) return (void *)table->CmdSetPerformanceOverrideINTEL;
- if (!strcmp(name, "AcquirePerformanceConfigurationINTEL")) return (void *)table->AcquirePerformanceConfigurationINTEL;
- if (!strcmp(name, "ReleasePerformanceConfigurationINTEL")) return (void *)table->ReleasePerformanceConfigurationINTEL;
- if (!strcmp(name, "QueueSetPerformanceConfigurationINTEL")) return (void *)table->QueueSetPerformanceConfigurationINTEL;
- if (!strcmp(name, "GetPerformanceParameterINTEL")) return (void *)table->GetPerformanceParameterINTEL;
-
- // ---- VK_AMD_display_native_hdr extension commands
- if (!strcmp(name, "SetLocalDimmingAMD")) return (void *)table->SetLocalDimmingAMD;
-
- // ---- VK_EXT_buffer_device_address extension commands
- if (!strcmp(name, "GetBufferDeviceAddressEXT")) return (void *)table->GetBufferDeviceAddressEXT;
-
- // ---- VK_EXT_full_screen_exclusive extension commands
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- if (!strcmp(name, "AcquireFullScreenExclusiveModeEXT")) return (void *)table->AcquireFullScreenExclusiveModeEXT;
-#endif // VK_USE_PLATFORM_WIN32_KHR
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- if (!strcmp(name, "ReleaseFullScreenExclusiveModeEXT")) return (void *)table->ReleaseFullScreenExclusiveModeEXT;
-#endif // VK_USE_PLATFORM_WIN32_KHR
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- if (!strcmp(name, "GetDeviceGroupSurfacePresentModes2EXT")) return (void *)table->GetDeviceGroupSurfacePresentModes2EXT;
-#endif // VK_USE_PLATFORM_WIN32_KHR
-
- // ---- VK_EXT_line_rasterization extension commands
- if (!strcmp(name, "CmdSetLineStippleEXT")) return (void *)table->CmdSetLineStippleEXT;
-
- // ---- VK_EXT_host_query_reset extension commands
- if (!strcmp(name, "ResetQueryPoolEXT")) return (void *)table->ResetQueryPoolEXT;
-
- // ---- VK_EXT_extended_dynamic_state extension commands
- if (!strcmp(name, "CmdSetCullModeEXT")) return (void *)table->CmdSetCullModeEXT;
- if (!strcmp(name, "CmdSetFrontFaceEXT")) return (void *)table->CmdSetFrontFaceEXT;
- if (!strcmp(name, "CmdSetPrimitiveTopologyEXT")) return (void *)table->CmdSetPrimitiveTopologyEXT;
- if (!strcmp(name, "CmdSetViewportWithCountEXT")) return (void *)table->CmdSetViewportWithCountEXT;
- if (!strcmp(name, "CmdSetScissorWithCountEXT")) return (void *)table->CmdSetScissorWithCountEXT;
- if (!strcmp(name, "CmdBindVertexBuffers2EXT")) return (void *)table->CmdBindVertexBuffers2EXT;
- if (!strcmp(name, "CmdSetDepthTestEnableEXT")) return (void *)table->CmdSetDepthTestEnableEXT;
- if (!strcmp(name, "CmdSetDepthWriteEnableEXT")) return (void *)table->CmdSetDepthWriteEnableEXT;
- if (!strcmp(name, "CmdSetDepthCompareOpEXT")) return (void *)table->CmdSetDepthCompareOpEXT;
- if (!strcmp(name, "CmdSetDepthBoundsTestEnableEXT")) return (void *)table->CmdSetDepthBoundsTestEnableEXT;
- if (!strcmp(name, "CmdSetStencilTestEnableEXT")) return (void *)table->CmdSetStencilTestEnableEXT;
- if (!strcmp(name, "CmdSetStencilOpEXT")) return (void *)table->CmdSetStencilOpEXT;
-
- // ---- VK_NV_device_generated_commands extension commands
- if (!strcmp(name, "GetGeneratedCommandsMemoryRequirementsNV")) return (void *)table->GetGeneratedCommandsMemoryRequirementsNV;
- if (!strcmp(name, "CmdPreprocessGeneratedCommandsNV")) return (void *)table->CmdPreprocessGeneratedCommandsNV;
- if (!strcmp(name, "CmdExecuteGeneratedCommandsNV")) return (void *)table->CmdExecuteGeneratedCommandsNV;
- if (!strcmp(name, "CmdBindPipelineShaderGroupNV")) return (void *)table->CmdBindPipelineShaderGroupNV;
- if (!strcmp(name, "CreateIndirectCommandsLayoutNV")) return (void *)table->CreateIndirectCommandsLayoutNV;
- if (!strcmp(name, "DestroyIndirectCommandsLayoutNV")) return (void *)table->DestroyIndirectCommandsLayoutNV;
-
- // ---- VK_EXT_private_data extension commands
- if (!strcmp(name, "CreatePrivateDataSlotEXT")) return (void *)table->CreatePrivateDataSlotEXT;
- if (!strcmp(name, "DestroyPrivateDataSlotEXT")) return (void *)table->DestroyPrivateDataSlotEXT;
- if (!strcmp(name, "SetPrivateDataEXT")) return (void *)table->SetPrivateDataEXT;
- if (!strcmp(name, "GetPrivateDataEXT")) return (void *)table->GetPrivateDataEXT;
-
- // ---- VK_NV_fragment_shading_rate_enums extension commands
- if (!strcmp(name, "CmdSetFragmentShadingRateEnumNV")) return (void *)table->CmdSetFragmentShadingRateEnumNV;
-
- // ---- VK_KHR_acceleration_structure extension commands
- if (!strcmp(name, "CreateAccelerationStructureKHR")) return (void *)table->CreateAccelerationStructureKHR;
- if (!strcmp(name, "DestroyAccelerationStructureKHR")) return (void *)table->DestroyAccelerationStructureKHR;
- if (!strcmp(name, "CmdBuildAccelerationStructuresKHR")) return (void *)table->CmdBuildAccelerationStructuresKHR;
- if (!strcmp(name, "CmdBuildAccelerationStructuresIndirectKHR")) return (void *)table->CmdBuildAccelerationStructuresIndirectKHR;
- if (!strcmp(name, "BuildAccelerationStructuresKHR")) return (void *)table->BuildAccelerationStructuresKHR;
- if (!strcmp(name, "CopyAccelerationStructureKHR")) return (void *)table->CopyAccelerationStructureKHR;
- if (!strcmp(name, "CopyAccelerationStructureToMemoryKHR")) return (void *)table->CopyAccelerationStructureToMemoryKHR;
- if (!strcmp(name, "CopyMemoryToAccelerationStructureKHR")) return (void *)table->CopyMemoryToAccelerationStructureKHR;
- if (!strcmp(name, "WriteAccelerationStructuresPropertiesKHR")) return (void *)table->WriteAccelerationStructuresPropertiesKHR;
- if (!strcmp(name, "CmdCopyAccelerationStructureKHR")) return (void *)table->CmdCopyAccelerationStructureKHR;
- if (!strcmp(name, "CmdCopyAccelerationStructureToMemoryKHR")) return (void *)table->CmdCopyAccelerationStructureToMemoryKHR;
- if (!strcmp(name, "CmdCopyMemoryToAccelerationStructureKHR")) return (void *)table->CmdCopyMemoryToAccelerationStructureKHR;
- if (!strcmp(name, "GetAccelerationStructureDeviceAddressKHR")) return (void *)table->GetAccelerationStructureDeviceAddressKHR;
- if (!strcmp(name, "CmdWriteAccelerationStructuresPropertiesKHR")) return (void *)table->CmdWriteAccelerationStructuresPropertiesKHR;
- if (!strcmp(name, "GetDeviceAccelerationStructureCompatibilityKHR")) return (void *)table->GetDeviceAccelerationStructureCompatibilityKHR;
- if (!strcmp(name, "GetAccelerationStructureBuildSizesKHR")) return (void *)table->GetAccelerationStructureBuildSizesKHR;
-
- // ---- VK_KHR_ray_tracing_pipeline extension commands
- if (!strcmp(name, "CmdTraceRaysKHR")) return (void *)table->CmdTraceRaysKHR;
- if (!strcmp(name, "CreateRayTracingPipelinesKHR")) return (void *)table->CreateRayTracingPipelinesKHR;
- if (!strcmp(name, "GetRayTracingCaptureReplayShaderGroupHandlesKHR")) return (void *)table->GetRayTracingCaptureReplayShaderGroupHandlesKHR;
- if (!strcmp(name, "CmdTraceRaysIndirectKHR")) return (void *)table->CmdTraceRaysIndirectKHR;
- if (!strcmp(name, "GetRayTracingShaderGroupStackSizeKHR")) return (void *)table->GetRayTracingShaderGroupStackSizeKHR;
- if (!strcmp(name, "CmdSetRayTracingPipelineStackSizeKHR")) return (void *)table->CmdSetRayTracingPipelineStackSizeKHR;
-
- return NULL;
-}
-
-// Instance command lookup function
-VKAPI_ATTR void* VKAPI_CALL loader_lookup_instance_dispatch_table(const VkLayerInstanceDispatchTable *table, const char *name,
- bool *found_name) {
- if (!name || name[0] != 'v' || name[1] != 'k') {
- *found_name = false;
- return NULL;
- }
-
- *found_name = true;
- name += 2;
-
- // ---- Core 1_0 commands
- if (!strcmp(name, "DestroyInstance")) return (void *)table->DestroyInstance;
- if (!strcmp(name, "EnumeratePhysicalDevices")) return (void *)table->EnumeratePhysicalDevices;
- if (!strcmp(name, "GetPhysicalDeviceFeatures")) return (void *)table->GetPhysicalDeviceFeatures;
- if (!strcmp(name, "GetPhysicalDeviceFormatProperties")) return (void *)table->GetPhysicalDeviceFormatProperties;
- if (!strcmp(name, "GetPhysicalDeviceImageFormatProperties")) return (void *)table->GetPhysicalDeviceImageFormatProperties;
- if (!strcmp(name, "GetPhysicalDeviceProperties")) return (void *)table->GetPhysicalDeviceProperties;
- if (!strcmp(name, "GetPhysicalDeviceQueueFamilyProperties")) return (void *)table->GetPhysicalDeviceQueueFamilyProperties;
- if (!strcmp(name, "GetPhysicalDeviceMemoryProperties")) return (void *)table->GetPhysicalDeviceMemoryProperties;
- if (!strcmp(name, "GetInstanceProcAddr")) return (void *)table->GetInstanceProcAddr;
- if (!strcmp(name, "EnumerateDeviceExtensionProperties")) return (void *)table->EnumerateDeviceExtensionProperties;
- if (!strcmp(name, "EnumerateDeviceLayerProperties")) return (void *)table->EnumerateDeviceLayerProperties;
- if (!strcmp(name, "GetPhysicalDeviceSparseImageFormatProperties")) return (void *)table->GetPhysicalDeviceSparseImageFormatProperties;
-
- // ---- Core 1_1 commands
- if (!strcmp(name, "EnumeratePhysicalDeviceGroups")) return (void *)table->EnumeratePhysicalDeviceGroups;
- if (!strcmp(name, "GetPhysicalDeviceFeatures2")) return (void *)table->GetPhysicalDeviceFeatures2;
- if (!strcmp(name, "GetPhysicalDeviceProperties2")) return (void *)table->GetPhysicalDeviceProperties2;
- if (!strcmp(name, "GetPhysicalDeviceFormatProperties2")) return (void *)table->GetPhysicalDeviceFormatProperties2;
- if (!strcmp(name, "GetPhysicalDeviceImageFormatProperties2")) return (void *)table->GetPhysicalDeviceImageFormatProperties2;
- if (!strcmp(name, "GetPhysicalDeviceQueueFamilyProperties2")) return (void *)table->GetPhysicalDeviceQueueFamilyProperties2;
- if (!strcmp(name, "GetPhysicalDeviceMemoryProperties2")) return (void *)table->GetPhysicalDeviceMemoryProperties2;
- if (!strcmp(name, "GetPhysicalDeviceSparseImageFormatProperties2")) return (void *)table->GetPhysicalDeviceSparseImageFormatProperties2;
- if (!strcmp(name, "GetPhysicalDeviceExternalBufferProperties")) return (void *)table->GetPhysicalDeviceExternalBufferProperties;
- if (!strcmp(name, "GetPhysicalDeviceExternalFenceProperties")) return (void *)table->GetPhysicalDeviceExternalFenceProperties;
- if (!strcmp(name, "GetPhysicalDeviceExternalSemaphoreProperties")) return (void *)table->GetPhysicalDeviceExternalSemaphoreProperties;
-
- // ---- VK_KHR_surface extension commands
- if (!strcmp(name, "DestroySurfaceKHR")) return (void *)table->DestroySurfaceKHR;
- if (!strcmp(name, "GetPhysicalDeviceSurfaceSupportKHR")) return (void *)table->GetPhysicalDeviceSurfaceSupportKHR;
- if (!strcmp(name, "GetPhysicalDeviceSurfaceCapabilitiesKHR")) return (void *)table->GetPhysicalDeviceSurfaceCapabilitiesKHR;
- if (!strcmp(name, "GetPhysicalDeviceSurfaceFormatsKHR")) return (void *)table->GetPhysicalDeviceSurfaceFormatsKHR;
- if (!strcmp(name, "GetPhysicalDeviceSurfacePresentModesKHR")) return (void *)table->GetPhysicalDeviceSurfacePresentModesKHR;
-
- // ---- VK_KHR_swapchain extension commands
- if (!strcmp(name, "GetPhysicalDevicePresentRectanglesKHR")) return (void *)table->GetPhysicalDevicePresentRectanglesKHR;
-
- // ---- VK_KHR_display extension commands
- if (!strcmp(name, "GetPhysicalDeviceDisplayPropertiesKHR")) return (void *)table->GetPhysicalDeviceDisplayPropertiesKHR;
- if (!strcmp(name, "GetPhysicalDeviceDisplayPlanePropertiesKHR")) return (void *)table->GetPhysicalDeviceDisplayPlanePropertiesKHR;
- if (!strcmp(name, "GetDisplayPlaneSupportedDisplaysKHR")) return (void *)table->GetDisplayPlaneSupportedDisplaysKHR;
- if (!strcmp(name, "GetDisplayModePropertiesKHR")) return (void *)table->GetDisplayModePropertiesKHR;
- if (!strcmp(name, "CreateDisplayModeKHR")) return (void *)table->CreateDisplayModeKHR;
- if (!strcmp(name, "GetDisplayPlaneCapabilitiesKHR")) return (void *)table->GetDisplayPlaneCapabilitiesKHR;
- if (!strcmp(name, "CreateDisplayPlaneSurfaceKHR")) return (void *)table->CreateDisplayPlaneSurfaceKHR;
-
- // ---- VK_KHR_xlib_surface extension commands
-#ifdef VK_USE_PLATFORM_XLIB_KHR
- if (!strcmp(name, "CreateXlibSurfaceKHR")) return (void *)table->CreateXlibSurfaceKHR;
-#endif // VK_USE_PLATFORM_XLIB_KHR
-#ifdef VK_USE_PLATFORM_XLIB_KHR
- if (!strcmp(name, "GetPhysicalDeviceXlibPresentationSupportKHR")) return (void *)table->GetPhysicalDeviceXlibPresentationSupportKHR;
-#endif // VK_USE_PLATFORM_XLIB_KHR
-
- // ---- VK_KHR_xcb_surface extension commands
-#ifdef VK_USE_PLATFORM_XCB_KHR
- if (!strcmp(name, "CreateXcbSurfaceKHR")) return (void *)table->CreateXcbSurfaceKHR;
-#endif // VK_USE_PLATFORM_XCB_KHR
-#ifdef VK_USE_PLATFORM_XCB_KHR
- if (!strcmp(name, "GetPhysicalDeviceXcbPresentationSupportKHR")) return (void *)table->GetPhysicalDeviceXcbPresentationSupportKHR;
-#endif // VK_USE_PLATFORM_XCB_KHR
-
- // ---- VK_KHR_wayland_surface extension commands
-#ifdef VK_USE_PLATFORM_WAYLAND_KHR
- if (!strcmp(name, "CreateWaylandSurfaceKHR")) return (void *)table->CreateWaylandSurfaceKHR;
-#endif // VK_USE_PLATFORM_WAYLAND_KHR
-#ifdef VK_USE_PLATFORM_WAYLAND_KHR
- if (!strcmp(name, "GetPhysicalDeviceWaylandPresentationSupportKHR")) return (void *)table->GetPhysicalDeviceWaylandPresentationSupportKHR;
-#endif // VK_USE_PLATFORM_WAYLAND_KHR
-
- // ---- VK_KHR_android_surface extension commands
-#ifdef VK_USE_PLATFORM_ANDROID_KHR
- if (!strcmp(name, "CreateAndroidSurfaceKHR")) return (void *)table->CreateAndroidSurfaceKHR;
-#endif // VK_USE_PLATFORM_ANDROID_KHR
-
- // ---- VK_KHR_win32_surface extension commands
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- if (!strcmp(name, "CreateWin32SurfaceKHR")) return (void *)table->CreateWin32SurfaceKHR;
-#endif // VK_USE_PLATFORM_WIN32_KHR
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- if (!strcmp(name, "GetPhysicalDeviceWin32PresentationSupportKHR")) return (void *)table->GetPhysicalDeviceWin32PresentationSupportKHR;
-#endif // VK_USE_PLATFORM_WIN32_KHR
-
- // ---- VK_KHR_get_physical_device_properties2 extension commands
- if (!strcmp(name, "GetPhysicalDeviceFeatures2KHR")) return (void *)table->GetPhysicalDeviceFeatures2KHR;
- if (!strcmp(name, "GetPhysicalDeviceProperties2KHR")) return (void *)table->GetPhysicalDeviceProperties2KHR;
- if (!strcmp(name, "GetPhysicalDeviceFormatProperties2KHR")) return (void *)table->GetPhysicalDeviceFormatProperties2KHR;
- if (!strcmp(name, "GetPhysicalDeviceImageFormatProperties2KHR")) return (void *)table->GetPhysicalDeviceImageFormatProperties2KHR;
- if (!strcmp(name, "GetPhysicalDeviceQueueFamilyProperties2KHR")) return (void *)table->GetPhysicalDeviceQueueFamilyProperties2KHR;
- if (!strcmp(name, "GetPhysicalDeviceMemoryProperties2KHR")) return (void *)table->GetPhysicalDeviceMemoryProperties2KHR;
- if (!strcmp(name, "GetPhysicalDeviceSparseImageFormatProperties2KHR")) return (void *)table->GetPhysicalDeviceSparseImageFormatProperties2KHR;
-
- // ---- VK_KHR_device_group_creation extension commands
- if (!strcmp(name, "EnumeratePhysicalDeviceGroupsKHR")) return (void *)table->EnumeratePhysicalDeviceGroupsKHR;
-
- // ---- VK_KHR_external_memory_capabilities extension commands
- if (!strcmp(name, "GetPhysicalDeviceExternalBufferPropertiesKHR")) return (void *)table->GetPhysicalDeviceExternalBufferPropertiesKHR;
-
- // ---- VK_KHR_external_semaphore_capabilities extension commands
- if (!strcmp(name, "GetPhysicalDeviceExternalSemaphorePropertiesKHR")) return (void *)table->GetPhysicalDeviceExternalSemaphorePropertiesKHR;
-
- // ---- VK_KHR_external_fence_capabilities extension commands
- if (!strcmp(name, "GetPhysicalDeviceExternalFencePropertiesKHR")) return (void *)table->GetPhysicalDeviceExternalFencePropertiesKHR;
-
- // ---- VK_KHR_performance_query extension commands
- if (!strcmp(name, "EnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR")) return (void *)table->EnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR;
- if (!strcmp(name, "GetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR")) return (void *)table->GetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR;
-
- // ---- VK_KHR_get_surface_capabilities2 extension commands
- if (!strcmp(name, "GetPhysicalDeviceSurfaceCapabilities2KHR")) return (void *)table->GetPhysicalDeviceSurfaceCapabilities2KHR;
- if (!strcmp(name, "GetPhysicalDeviceSurfaceFormats2KHR")) return (void *)table->GetPhysicalDeviceSurfaceFormats2KHR;
-
- // ---- VK_KHR_get_display_properties2 extension commands
- if (!strcmp(name, "GetPhysicalDeviceDisplayProperties2KHR")) return (void *)table->GetPhysicalDeviceDisplayProperties2KHR;
- if (!strcmp(name, "GetPhysicalDeviceDisplayPlaneProperties2KHR")) return (void *)table->GetPhysicalDeviceDisplayPlaneProperties2KHR;
- if (!strcmp(name, "GetDisplayModeProperties2KHR")) return (void *)table->GetDisplayModeProperties2KHR;
- if (!strcmp(name, "GetDisplayPlaneCapabilities2KHR")) return (void *)table->GetDisplayPlaneCapabilities2KHR;
-
- // ---- VK_KHR_fragment_shading_rate extension commands
- if (!strcmp(name, "GetPhysicalDeviceFragmentShadingRatesKHR")) return (void *)table->GetPhysicalDeviceFragmentShadingRatesKHR;
-
- // ---- VK_EXT_debug_report extension commands
- if (!strcmp(name, "CreateDebugReportCallbackEXT")) return (void *)table->CreateDebugReportCallbackEXT;
- if (!strcmp(name, "DestroyDebugReportCallbackEXT")) return (void *)table->DestroyDebugReportCallbackEXT;
- if (!strcmp(name, "DebugReportMessageEXT")) return (void *)table->DebugReportMessageEXT;
-
- // ---- VK_GGP_stream_descriptor_surface extension commands
-#ifdef VK_USE_PLATFORM_GGP
- if (!strcmp(name, "CreateStreamDescriptorSurfaceGGP")) return (void *)table->CreateStreamDescriptorSurfaceGGP;
-#endif // VK_USE_PLATFORM_GGP
-
- // ---- VK_NV_external_memory_capabilities extension commands
- if (!strcmp(name, "GetPhysicalDeviceExternalImageFormatPropertiesNV")) return (void *)table->GetPhysicalDeviceExternalImageFormatPropertiesNV;
-
- // ---- VK_NN_vi_surface extension commands
-#ifdef VK_USE_PLATFORM_VI_NN
- if (!strcmp(name, "CreateViSurfaceNN")) return (void *)table->CreateViSurfaceNN;
-#endif // VK_USE_PLATFORM_VI_NN
-
- // ---- VK_EXT_direct_mode_display extension commands
- if (!strcmp(name, "ReleaseDisplayEXT")) return (void *)table->ReleaseDisplayEXT;
-
- // ---- VK_EXT_acquire_xlib_display extension commands
-#ifdef VK_USE_PLATFORM_XLIB_XRANDR_EXT
- if (!strcmp(name, "AcquireXlibDisplayEXT")) return (void *)table->AcquireXlibDisplayEXT;
-#endif // VK_USE_PLATFORM_XLIB_XRANDR_EXT
-#ifdef VK_USE_PLATFORM_XLIB_XRANDR_EXT
- if (!strcmp(name, "GetRandROutputDisplayEXT")) return (void *)table->GetRandROutputDisplayEXT;
-#endif // VK_USE_PLATFORM_XLIB_XRANDR_EXT
-
- // ---- VK_EXT_display_surface_counter extension commands
- if (!strcmp(name, "GetPhysicalDeviceSurfaceCapabilities2EXT")) return (void *)table->GetPhysicalDeviceSurfaceCapabilities2EXT;
-
- // ---- VK_MVK_ios_surface extension commands
-#ifdef VK_USE_PLATFORM_IOS_MVK
- if (!strcmp(name, "CreateIOSSurfaceMVK")) return (void *)table->CreateIOSSurfaceMVK;
-#endif // VK_USE_PLATFORM_IOS_MVK
-
- // ---- VK_MVK_macos_surface extension commands
-#ifdef VK_USE_PLATFORM_MACOS_MVK
- if (!strcmp(name, "CreateMacOSSurfaceMVK")) return (void *)table->CreateMacOSSurfaceMVK;
-#endif // VK_USE_PLATFORM_MACOS_MVK
-
- // ---- VK_EXT_debug_utils extension commands
- if (!strcmp(name, "CreateDebugUtilsMessengerEXT")) return (void *)table->CreateDebugUtilsMessengerEXT;
- if (!strcmp(name, "DestroyDebugUtilsMessengerEXT")) return (void *)table->DestroyDebugUtilsMessengerEXT;
- if (!strcmp(name, "SubmitDebugUtilsMessageEXT")) return (void *)table->SubmitDebugUtilsMessageEXT;
-
- // ---- VK_EXT_sample_locations extension commands
- if (!strcmp(name, "GetPhysicalDeviceMultisamplePropertiesEXT")) return (void *)table->GetPhysicalDeviceMultisamplePropertiesEXT;
-
- // ---- VK_EXT_calibrated_timestamps extension commands
- if (!strcmp(name, "GetPhysicalDeviceCalibrateableTimeDomainsEXT")) return (void *)table->GetPhysicalDeviceCalibrateableTimeDomainsEXT;
-
- // ---- VK_FUCHSIA_imagepipe_surface extension commands
-#ifdef VK_USE_PLATFORM_FUCHSIA
- if (!strcmp(name, "CreateImagePipeSurfaceFUCHSIA")) return (void *)table->CreateImagePipeSurfaceFUCHSIA;
-#endif // VK_USE_PLATFORM_FUCHSIA
-
- // ---- VK_EXT_metal_surface extension commands
-#ifdef VK_USE_PLATFORM_METAL_EXT
- if (!strcmp(name, "CreateMetalSurfaceEXT")) return (void *)table->CreateMetalSurfaceEXT;
-#endif // VK_USE_PLATFORM_METAL_EXT
-
- // ---- VK_EXT_tooling_info extension commands
- if (!strcmp(name, "GetPhysicalDeviceToolPropertiesEXT")) return (void *)table->GetPhysicalDeviceToolPropertiesEXT;
-
- // ---- VK_NV_cooperative_matrix extension commands
- if (!strcmp(name, "GetPhysicalDeviceCooperativeMatrixPropertiesNV")) return (void *)table->GetPhysicalDeviceCooperativeMatrixPropertiesNV;
-
- // ---- VK_NV_coverage_reduction_mode extension commands
- if (!strcmp(name, "GetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV")) return (void *)table->GetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV;
-
- // ---- VK_EXT_full_screen_exclusive extension commands
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- if (!strcmp(name, "GetPhysicalDeviceSurfacePresentModes2EXT")) return (void *)table->GetPhysicalDeviceSurfacePresentModes2EXT;
-#endif // VK_USE_PLATFORM_WIN32_KHR
-
- // ---- VK_EXT_headless_surface extension commands
- if (!strcmp(name, "CreateHeadlessSurfaceEXT")) return (void *)table->CreateHeadlessSurfaceEXT;
-
- // ---- VK_EXT_directfb_surface extension commands
-#ifdef VK_USE_PLATFORM_DIRECTFB_EXT
- if (!strcmp(name, "CreateDirectFBSurfaceEXT")) return (void *)table->CreateDirectFBSurfaceEXT;
-#endif // VK_USE_PLATFORM_DIRECTFB_EXT
-#ifdef VK_USE_PLATFORM_DIRECTFB_EXT
- if (!strcmp(name, "GetPhysicalDeviceDirectFBPresentationSupportEXT")) return (void *)table->GetPhysicalDeviceDirectFBPresentationSupportEXT;
-#endif // VK_USE_PLATFORM_DIRECTFB_EXT
-
- *found_name = false;
- return NULL;
-}
-
-
-// ---- VK_KHR_device_group extension trampoline/terminators
-
-VKAPI_ATTR void VKAPI_CALL GetDeviceGroupPeerMemoryFeaturesKHR(
- VkDevice device,
- uint32_t heapIndex,
- uint32_t localDeviceIndex,
- uint32_t remoteDeviceIndex,
- VkPeerMemoryFeatureFlags* pPeerMemoryFeatures) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- disp->GetDeviceGroupPeerMemoryFeaturesKHR(device, heapIndex, localDeviceIndex, remoteDeviceIndex, pPeerMemoryFeatures);
-}
-
-VKAPI_ATTR void VKAPI_CALL CmdSetDeviceMaskKHR(
- VkCommandBuffer commandBuffer,
- uint32_t deviceMask) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdSetDeviceMaskKHR(commandBuffer, deviceMask);
-}
-
-VKAPI_ATTR void VKAPI_CALL CmdDispatchBaseKHR(
- VkCommandBuffer commandBuffer,
- uint32_t baseGroupX,
- uint32_t baseGroupY,
- uint32_t baseGroupZ,
- uint32_t groupCountX,
- uint32_t groupCountY,
- uint32_t groupCountZ) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdDispatchBaseKHR(commandBuffer, baseGroupX, baseGroupY, baseGroupZ, groupCountX, groupCountY, groupCountZ);
-}
-
-
-// ---- VK_KHR_maintenance1 extension trampoline/terminators
-
-VKAPI_ATTR void VKAPI_CALL TrimCommandPoolKHR(
- VkDevice device,
- VkCommandPool commandPool,
- VkCommandPoolTrimFlags flags) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- disp->TrimCommandPoolKHR(device, commandPool, flags);
-}
-
-
-// ---- VK_KHR_external_memory_win32 extension trampoline/terminators
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
-VKAPI_ATTR VkResult VKAPI_CALL GetMemoryWin32HandleKHR(
- VkDevice device,
- const VkMemoryGetWin32HandleInfoKHR* pGetWin32HandleInfo,
- HANDLE* pHandle) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->GetMemoryWin32HandleKHR(device, pGetWin32HandleInfo, pHandle);
-}
-
-#endif // VK_USE_PLATFORM_WIN32_KHR
-#ifdef VK_USE_PLATFORM_WIN32_KHR
-VKAPI_ATTR VkResult VKAPI_CALL GetMemoryWin32HandlePropertiesKHR(
- VkDevice device,
- VkExternalMemoryHandleTypeFlagBits handleType,
- HANDLE handle,
- VkMemoryWin32HandlePropertiesKHR* pMemoryWin32HandleProperties) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->GetMemoryWin32HandlePropertiesKHR(device, handleType, handle, pMemoryWin32HandleProperties);
-}
-
-#endif // VK_USE_PLATFORM_WIN32_KHR
-
-// ---- VK_KHR_external_memory_fd extension trampoline/terminators
-
-VKAPI_ATTR VkResult VKAPI_CALL GetMemoryFdKHR(
- VkDevice device,
- const VkMemoryGetFdInfoKHR* pGetFdInfo,
- int* pFd) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->GetMemoryFdKHR(device, pGetFdInfo, pFd);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL GetMemoryFdPropertiesKHR(
- VkDevice device,
- VkExternalMemoryHandleTypeFlagBits handleType,
- int fd,
- VkMemoryFdPropertiesKHR* pMemoryFdProperties) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->GetMemoryFdPropertiesKHR(device, handleType, fd, pMemoryFdProperties);
-}
-
-
-// ---- VK_KHR_external_semaphore_win32 extension trampoline/terminators
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
-VKAPI_ATTR VkResult VKAPI_CALL ImportSemaphoreWin32HandleKHR(
- VkDevice device,
- const VkImportSemaphoreWin32HandleInfoKHR* pImportSemaphoreWin32HandleInfo) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->ImportSemaphoreWin32HandleKHR(device, pImportSemaphoreWin32HandleInfo);
-}
-
-#endif // VK_USE_PLATFORM_WIN32_KHR
-#ifdef VK_USE_PLATFORM_WIN32_KHR
-VKAPI_ATTR VkResult VKAPI_CALL GetSemaphoreWin32HandleKHR(
- VkDevice device,
- const VkSemaphoreGetWin32HandleInfoKHR* pGetWin32HandleInfo,
- HANDLE* pHandle) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->GetSemaphoreWin32HandleKHR(device, pGetWin32HandleInfo, pHandle);
-}
-
-#endif // VK_USE_PLATFORM_WIN32_KHR
-
-// ---- VK_KHR_external_semaphore_fd extension trampoline/terminators
-
-VKAPI_ATTR VkResult VKAPI_CALL ImportSemaphoreFdKHR(
- VkDevice device,
- const VkImportSemaphoreFdInfoKHR* pImportSemaphoreFdInfo) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->ImportSemaphoreFdKHR(device, pImportSemaphoreFdInfo);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL GetSemaphoreFdKHR(
- VkDevice device,
- const VkSemaphoreGetFdInfoKHR* pGetFdInfo,
- int* pFd) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->GetSemaphoreFdKHR(device, pGetFdInfo, pFd);
-}
-
-
-// ---- VK_KHR_push_descriptor extension trampoline/terminators
-
-VKAPI_ATTR void VKAPI_CALL CmdPushDescriptorSetKHR(
- VkCommandBuffer commandBuffer,
- VkPipelineBindPoint pipelineBindPoint,
- VkPipelineLayout layout,
- uint32_t set,
- uint32_t descriptorWriteCount,
- const VkWriteDescriptorSet* pDescriptorWrites) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdPushDescriptorSetKHR(commandBuffer, pipelineBindPoint, layout, set, descriptorWriteCount, pDescriptorWrites);
-}
-
-VKAPI_ATTR void VKAPI_CALL CmdPushDescriptorSetWithTemplateKHR(
- VkCommandBuffer commandBuffer,
- VkDescriptorUpdateTemplate descriptorUpdateTemplate,
- VkPipelineLayout layout,
- uint32_t set,
- const void* pData) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdPushDescriptorSetWithTemplateKHR(commandBuffer, descriptorUpdateTemplate, layout, set, pData);
-}
-
-
-// ---- VK_KHR_descriptor_update_template extension trampoline/terminators
-
-VKAPI_ATTR VkResult VKAPI_CALL CreateDescriptorUpdateTemplateKHR(
- VkDevice device,
- const VkDescriptorUpdateTemplateCreateInfo* pCreateInfo,
- const VkAllocationCallbacks* pAllocator,
- VkDescriptorUpdateTemplate* pDescriptorUpdateTemplate) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->CreateDescriptorUpdateTemplateKHR(device, pCreateInfo, pAllocator, pDescriptorUpdateTemplate);
-}
-
-VKAPI_ATTR void VKAPI_CALL DestroyDescriptorUpdateTemplateKHR(
- VkDevice device,
- VkDescriptorUpdateTemplate descriptorUpdateTemplate,
- const VkAllocationCallbacks* pAllocator) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- disp->DestroyDescriptorUpdateTemplateKHR(device, descriptorUpdateTemplate, pAllocator);
-}
-
-VKAPI_ATTR void VKAPI_CALL UpdateDescriptorSetWithTemplateKHR(
- VkDevice device,
- VkDescriptorSet descriptorSet,
- VkDescriptorUpdateTemplate descriptorUpdateTemplate,
- const void* pData) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- disp->UpdateDescriptorSetWithTemplateKHR(device, descriptorSet, descriptorUpdateTemplate, pData);
-}
-
-
-// ---- VK_KHR_create_renderpass2 extension trampoline/terminators
-
-VKAPI_ATTR VkResult VKAPI_CALL CreateRenderPass2KHR(
- VkDevice device,
- const VkRenderPassCreateInfo2* pCreateInfo,
- const VkAllocationCallbacks* pAllocator,
- VkRenderPass* pRenderPass) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->CreateRenderPass2KHR(device, pCreateInfo, pAllocator, pRenderPass);
-}
-
-VKAPI_ATTR void VKAPI_CALL CmdBeginRenderPass2KHR(
- VkCommandBuffer commandBuffer,
- const VkRenderPassBeginInfo* pRenderPassBegin,
- const VkSubpassBeginInfo* pSubpassBeginInfo) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdBeginRenderPass2KHR(commandBuffer, pRenderPassBegin, pSubpassBeginInfo);
-}
-
-VKAPI_ATTR void VKAPI_CALL CmdNextSubpass2KHR(
- VkCommandBuffer commandBuffer,
- const VkSubpassBeginInfo* pSubpassBeginInfo,
- const VkSubpassEndInfo* pSubpassEndInfo) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdNextSubpass2KHR(commandBuffer, pSubpassBeginInfo, pSubpassEndInfo);
-}
-
-VKAPI_ATTR void VKAPI_CALL CmdEndRenderPass2KHR(
- VkCommandBuffer commandBuffer,
- const VkSubpassEndInfo* pSubpassEndInfo) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdEndRenderPass2KHR(commandBuffer, pSubpassEndInfo);
-}
-
-
-// ---- VK_KHR_shared_presentable_image extension trampoline/terminators
-
-VKAPI_ATTR VkResult VKAPI_CALL GetSwapchainStatusKHR(
- VkDevice device,
- VkSwapchainKHR swapchain) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->GetSwapchainStatusKHR(device, swapchain);
-}
-
-
-// ---- VK_KHR_external_fence_win32 extension trampoline/terminators
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
-VKAPI_ATTR VkResult VKAPI_CALL ImportFenceWin32HandleKHR(
- VkDevice device,
- const VkImportFenceWin32HandleInfoKHR* pImportFenceWin32HandleInfo) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->ImportFenceWin32HandleKHR(device, pImportFenceWin32HandleInfo);
-}
-
-#endif // VK_USE_PLATFORM_WIN32_KHR
-#ifdef VK_USE_PLATFORM_WIN32_KHR
-VKAPI_ATTR VkResult VKAPI_CALL GetFenceWin32HandleKHR(
- VkDevice device,
- const VkFenceGetWin32HandleInfoKHR* pGetWin32HandleInfo,
- HANDLE* pHandle) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->GetFenceWin32HandleKHR(device, pGetWin32HandleInfo, pHandle);
-}
-
-#endif // VK_USE_PLATFORM_WIN32_KHR
-
-// ---- VK_KHR_external_fence_fd extension trampoline/terminators
-
-VKAPI_ATTR VkResult VKAPI_CALL ImportFenceFdKHR(
- VkDevice device,
- const VkImportFenceFdInfoKHR* pImportFenceFdInfo) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->ImportFenceFdKHR(device, pImportFenceFdInfo);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL GetFenceFdKHR(
- VkDevice device,
- const VkFenceGetFdInfoKHR* pGetFdInfo,
- int* pFd) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->GetFenceFdKHR(device, pGetFdInfo, pFd);
-}
-
-
-// ---- VK_KHR_performance_query extension trampoline/terminators
-
-VKAPI_ATTR VkResult VKAPI_CALL EnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR(
- VkPhysicalDevice physicalDevice,
- uint32_t queueFamilyIndex,
- uint32_t* pCounterCount,
- VkPerformanceCounterKHR* pCounters,
- VkPerformanceCounterDescriptionKHR* pCounterDescriptions) {
- const VkLayerInstanceDispatchTable *disp;
- VkPhysicalDevice unwrapped_phys_dev = loader_unwrap_physical_device(physicalDevice);
- disp = loader_get_instance_layer_dispatch(physicalDevice);
- return disp->EnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR(unwrapped_phys_dev, queueFamilyIndex, pCounterCount, pCounters, pCounterDescriptions);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_EnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR(
- VkPhysicalDevice physicalDevice,
- uint32_t queueFamilyIndex,
- uint32_t* pCounterCount,
- VkPerformanceCounterKHR* pCounters,
- VkPerformanceCounterDescriptionKHR* pCounterDescriptions) {
- struct loader_physical_device_term *phys_dev_term = (struct loader_physical_device_term *)physicalDevice;
- struct loader_icd_term *icd_term = phys_dev_term->this_icd_term;
- if (NULL == icd_term->dispatch.EnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR) {
- loader_log(icd_term->this_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "ICD associated with VkPhysicalDevice does not support EnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR");
- }
- return icd_term->dispatch.EnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR(phys_dev_term->phys_dev, queueFamilyIndex, pCounterCount, pCounters, pCounterDescriptions);
-}
-
-VKAPI_ATTR void VKAPI_CALL GetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR(
- VkPhysicalDevice physicalDevice,
- const VkQueryPoolPerformanceCreateInfoKHR* pPerformanceQueryCreateInfo,
- uint32_t* pNumPasses) {
- const VkLayerInstanceDispatchTable *disp;
- VkPhysicalDevice unwrapped_phys_dev = loader_unwrap_physical_device(physicalDevice);
- disp = loader_get_instance_layer_dispatch(physicalDevice);
- disp->GetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR(unwrapped_phys_dev, pPerformanceQueryCreateInfo, pNumPasses);
-}
-
-VKAPI_ATTR void VKAPI_CALL terminator_GetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR(
- VkPhysicalDevice physicalDevice,
- const VkQueryPoolPerformanceCreateInfoKHR* pPerformanceQueryCreateInfo,
- uint32_t* pNumPasses) {
- struct loader_physical_device_term *phys_dev_term = (struct loader_physical_device_term *)physicalDevice;
- struct loader_icd_term *icd_term = phys_dev_term->this_icd_term;
- if (NULL == icd_term->dispatch.GetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR) {
- loader_log(icd_term->this_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "ICD associated with VkPhysicalDevice does not support GetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR");
- }
- icd_term->dispatch.GetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR(phys_dev_term->phys_dev, pPerformanceQueryCreateInfo, pNumPasses);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL AcquireProfilingLockKHR(
- VkDevice device,
- const VkAcquireProfilingLockInfoKHR* pInfo) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->AcquireProfilingLockKHR(device, pInfo);
-}
-
-VKAPI_ATTR void VKAPI_CALL ReleaseProfilingLockKHR(
- VkDevice device) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- disp->ReleaseProfilingLockKHR(device);
-}
-
-
-// ---- VK_KHR_get_memory_requirements2 extension trampoline/terminators
-
-VKAPI_ATTR void VKAPI_CALL GetImageMemoryRequirements2KHR(
- VkDevice device,
- const VkImageMemoryRequirementsInfo2* pInfo,
- VkMemoryRequirements2* pMemoryRequirements) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- disp->GetImageMemoryRequirements2KHR(device, pInfo, pMemoryRequirements);
-}
-
-VKAPI_ATTR void VKAPI_CALL GetBufferMemoryRequirements2KHR(
- VkDevice device,
- const VkBufferMemoryRequirementsInfo2* pInfo,
- VkMemoryRequirements2* pMemoryRequirements) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- disp->GetBufferMemoryRequirements2KHR(device, pInfo, pMemoryRequirements);
-}
-
-VKAPI_ATTR void VKAPI_CALL GetImageSparseMemoryRequirements2KHR(
- VkDevice device,
- const VkImageSparseMemoryRequirementsInfo2* pInfo,
- uint32_t* pSparseMemoryRequirementCount,
- VkSparseImageMemoryRequirements2* pSparseMemoryRequirements) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- disp->GetImageSparseMemoryRequirements2KHR(device, pInfo, pSparseMemoryRequirementCount, pSparseMemoryRequirements);
-}
-
-
-// ---- VK_KHR_sampler_ycbcr_conversion extension trampoline/terminators
-
-VKAPI_ATTR VkResult VKAPI_CALL CreateSamplerYcbcrConversionKHR(
- VkDevice device,
- const VkSamplerYcbcrConversionCreateInfo* pCreateInfo,
- const VkAllocationCallbacks* pAllocator,
- VkSamplerYcbcrConversion* pYcbcrConversion) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->CreateSamplerYcbcrConversionKHR(device, pCreateInfo, pAllocator, pYcbcrConversion);
-}
-
-VKAPI_ATTR void VKAPI_CALL DestroySamplerYcbcrConversionKHR(
- VkDevice device,
- VkSamplerYcbcrConversion ycbcrConversion,
- const VkAllocationCallbacks* pAllocator) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- disp->DestroySamplerYcbcrConversionKHR(device, ycbcrConversion, pAllocator);
-}
-
-
-// ---- VK_KHR_bind_memory2 extension trampoline/terminators
-
-VKAPI_ATTR VkResult VKAPI_CALL BindBufferMemory2KHR(
- VkDevice device,
- uint32_t bindInfoCount,
- const VkBindBufferMemoryInfo* pBindInfos) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->BindBufferMemory2KHR(device, bindInfoCount, pBindInfos);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL BindImageMemory2KHR(
- VkDevice device,
- uint32_t bindInfoCount,
- const VkBindImageMemoryInfo* pBindInfos) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->BindImageMemory2KHR(device, bindInfoCount, pBindInfos);
-}
-
-
-// ---- VK_KHR_maintenance3 extension trampoline/terminators
-
-VKAPI_ATTR void VKAPI_CALL GetDescriptorSetLayoutSupportKHR(
- VkDevice device,
- const VkDescriptorSetLayoutCreateInfo* pCreateInfo,
- VkDescriptorSetLayoutSupport* pSupport) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- disp->GetDescriptorSetLayoutSupportKHR(device, pCreateInfo, pSupport);
-}
-
-
-// ---- VK_KHR_draw_indirect_count extension trampoline/terminators
-
-VKAPI_ATTR void VKAPI_CALL CmdDrawIndirectCountKHR(
- VkCommandBuffer commandBuffer,
- VkBuffer buffer,
- VkDeviceSize offset,
- VkBuffer countBuffer,
- VkDeviceSize countBufferOffset,
- uint32_t maxDrawCount,
- uint32_t stride) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdDrawIndirectCountKHR(commandBuffer, buffer, offset, countBuffer, countBufferOffset, maxDrawCount, stride);
-}
-
-VKAPI_ATTR void VKAPI_CALL CmdDrawIndexedIndirectCountKHR(
- VkCommandBuffer commandBuffer,
- VkBuffer buffer,
- VkDeviceSize offset,
- VkBuffer countBuffer,
- VkDeviceSize countBufferOffset,
- uint32_t maxDrawCount,
- uint32_t stride) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdDrawIndexedIndirectCountKHR(commandBuffer, buffer, offset, countBuffer, countBufferOffset, maxDrawCount, stride);
-}
-
-
-// ---- VK_KHR_timeline_semaphore extension trampoline/terminators
-
-VKAPI_ATTR VkResult VKAPI_CALL GetSemaphoreCounterValueKHR(
- VkDevice device,
- VkSemaphore semaphore,
- uint64_t* pValue) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->GetSemaphoreCounterValueKHR(device, semaphore, pValue);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL WaitSemaphoresKHR(
- VkDevice device,
- const VkSemaphoreWaitInfo* pWaitInfo,
- uint64_t timeout) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->WaitSemaphoresKHR(device, pWaitInfo, timeout);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL SignalSemaphoreKHR(
- VkDevice device,
- const VkSemaphoreSignalInfo* pSignalInfo) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->SignalSemaphoreKHR(device, pSignalInfo);
-}
-
-
-// ---- VK_KHR_fragment_shading_rate extension trampoline/terminators
-
-VKAPI_ATTR VkResult VKAPI_CALL GetPhysicalDeviceFragmentShadingRatesKHR(
- VkPhysicalDevice physicalDevice,
- uint32_t* pFragmentShadingRateCount,
- VkPhysicalDeviceFragmentShadingRateKHR* pFragmentShadingRates) {
- const VkLayerInstanceDispatchTable *disp;
- VkPhysicalDevice unwrapped_phys_dev = loader_unwrap_physical_device(physicalDevice);
- disp = loader_get_instance_layer_dispatch(physicalDevice);
- return disp->GetPhysicalDeviceFragmentShadingRatesKHR(unwrapped_phys_dev, pFragmentShadingRateCount, pFragmentShadingRates);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_GetPhysicalDeviceFragmentShadingRatesKHR(
- VkPhysicalDevice physicalDevice,
- uint32_t* pFragmentShadingRateCount,
- VkPhysicalDeviceFragmentShadingRateKHR* pFragmentShadingRates) {
- struct loader_physical_device_term *phys_dev_term = (struct loader_physical_device_term *)physicalDevice;
- struct loader_icd_term *icd_term = phys_dev_term->this_icd_term;
- if (NULL == icd_term->dispatch.GetPhysicalDeviceFragmentShadingRatesKHR) {
- loader_log(icd_term->this_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "ICD associated with VkPhysicalDevice does not support GetPhysicalDeviceFragmentShadingRatesKHR");
- }
- return icd_term->dispatch.GetPhysicalDeviceFragmentShadingRatesKHR(phys_dev_term->phys_dev, pFragmentShadingRateCount, pFragmentShadingRates);
-}
-
-VKAPI_ATTR void VKAPI_CALL CmdSetFragmentShadingRateKHR(
- VkCommandBuffer commandBuffer,
- const VkExtent2D* pFragmentSize,
- const VkFragmentShadingRateCombinerOpKHR combinerOps[2]) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdSetFragmentShadingRateKHR(commandBuffer, pFragmentSize, combinerOps);
-}
-
-
-// ---- VK_KHR_buffer_device_address extension trampoline/terminators
-
-VKAPI_ATTR VkDeviceAddress VKAPI_CALL GetBufferDeviceAddressKHR(
- VkDevice device,
- const VkBufferDeviceAddressInfo* pInfo) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->GetBufferDeviceAddressKHR(device, pInfo);
-}
-
-VKAPI_ATTR uint64_t VKAPI_CALL GetBufferOpaqueCaptureAddressKHR(
- VkDevice device,
- const VkBufferDeviceAddressInfo* pInfo) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->GetBufferOpaqueCaptureAddressKHR(device, pInfo);
-}
-
-VKAPI_ATTR uint64_t VKAPI_CALL GetDeviceMemoryOpaqueCaptureAddressKHR(
- VkDevice device,
- const VkDeviceMemoryOpaqueCaptureAddressInfo* pInfo) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->GetDeviceMemoryOpaqueCaptureAddressKHR(device, pInfo);
-}
-
-
-// ---- VK_KHR_deferred_host_operations extension trampoline/terminators
-
-VKAPI_ATTR VkResult VKAPI_CALL CreateDeferredOperationKHR(
- VkDevice device,
- const VkAllocationCallbacks* pAllocator,
- VkDeferredOperationKHR* pDeferredOperation) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->CreateDeferredOperationKHR(device, pAllocator, pDeferredOperation);
-}
-
-VKAPI_ATTR void VKAPI_CALL DestroyDeferredOperationKHR(
- VkDevice device,
- VkDeferredOperationKHR operation,
- const VkAllocationCallbacks* pAllocator) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- disp->DestroyDeferredOperationKHR(device, operation, pAllocator);
-}
-
-VKAPI_ATTR uint32_t VKAPI_CALL GetDeferredOperationMaxConcurrencyKHR(
- VkDevice device,
- VkDeferredOperationKHR operation) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->GetDeferredOperationMaxConcurrencyKHR(device, operation);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL GetDeferredOperationResultKHR(
- VkDevice device,
- VkDeferredOperationKHR operation) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->GetDeferredOperationResultKHR(device, operation);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL DeferredOperationJoinKHR(
- VkDevice device,
- VkDeferredOperationKHR operation) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->DeferredOperationJoinKHR(device, operation);
-}
-
-
-// ---- VK_KHR_pipeline_executable_properties extension trampoline/terminators
-
-VKAPI_ATTR VkResult VKAPI_CALL GetPipelineExecutablePropertiesKHR(
- VkDevice device,
- const VkPipelineInfoKHR* pPipelineInfo,
- uint32_t* pExecutableCount,
- VkPipelineExecutablePropertiesKHR* pProperties) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->GetPipelineExecutablePropertiesKHR(device, pPipelineInfo, pExecutableCount, pProperties);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL GetPipelineExecutableStatisticsKHR(
- VkDevice device,
- const VkPipelineExecutableInfoKHR* pExecutableInfo,
- uint32_t* pStatisticCount,
- VkPipelineExecutableStatisticKHR* pStatistics) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->GetPipelineExecutableStatisticsKHR(device, pExecutableInfo, pStatisticCount, pStatistics);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL GetPipelineExecutableInternalRepresentationsKHR(
- VkDevice device,
- const VkPipelineExecutableInfoKHR* pExecutableInfo,
- uint32_t* pInternalRepresentationCount,
- VkPipelineExecutableInternalRepresentationKHR* pInternalRepresentations) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->GetPipelineExecutableInternalRepresentationsKHR(device, pExecutableInfo, pInternalRepresentationCount, pInternalRepresentations);
-}
-
-
-// ---- VK_KHR_copy_commands2 extension trampoline/terminators
-
-VKAPI_ATTR void VKAPI_CALL CmdCopyBuffer2KHR(
- VkCommandBuffer commandBuffer,
- const VkCopyBufferInfo2KHR* pCopyBufferInfo) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdCopyBuffer2KHR(commandBuffer, pCopyBufferInfo);
-}
-
-VKAPI_ATTR void VKAPI_CALL CmdCopyImage2KHR(
- VkCommandBuffer commandBuffer,
- const VkCopyImageInfo2KHR* pCopyImageInfo) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdCopyImage2KHR(commandBuffer, pCopyImageInfo);
-}
-
-VKAPI_ATTR void VKAPI_CALL CmdCopyBufferToImage2KHR(
- VkCommandBuffer commandBuffer,
- const VkCopyBufferToImageInfo2KHR* pCopyBufferToImageInfo) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdCopyBufferToImage2KHR(commandBuffer, pCopyBufferToImageInfo);
-}
-
-VKAPI_ATTR void VKAPI_CALL CmdCopyImageToBuffer2KHR(
- VkCommandBuffer commandBuffer,
- const VkCopyImageToBufferInfo2KHR* pCopyImageToBufferInfo) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdCopyImageToBuffer2KHR(commandBuffer, pCopyImageToBufferInfo);
-}
-
-VKAPI_ATTR void VKAPI_CALL CmdBlitImage2KHR(
- VkCommandBuffer commandBuffer,
- const VkBlitImageInfo2KHR* pBlitImageInfo) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdBlitImage2KHR(commandBuffer, pBlitImageInfo);
-}
-
-VKAPI_ATTR void VKAPI_CALL CmdResolveImage2KHR(
- VkCommandBuffer commandBuffer,
- const VkResolveImageInfo2KHR* pResolveImageInfo) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdResolveImage2KHR(commandBuffer, pResolveImageInfo);
-}
-
-
-// ---- VK_EXT_debug_marker extension trampoline/terminators
-
-VKAPI_ATTR VkResult VKAPI_CALL DebugMarkerSetObjectTagEXT(
- VkDevice device,
- const VkDebugMarkerObjectTagInfoEXT* pTagInfo) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- VkDebugMarkerObjectTagInfoEXT local_tag_info;
- memcpy(&local_tag_info, pTagInfo, sizeof(VkDebugMarkerObjectTagInfoEXT));
- // If this is a physical device, we have to replace it with the proper one for the next call.
- if (pTagInfo->objectType == VK_DEBUG_REPORT_OBJECT_TYPE_PHYSICAL_DEVICE_EXT) {
- struct loader_physical_device_tramp *phys_dev_tramp = (struct loader_physical_device_tramp *)(uintptr_t)pTagInfo->object;
- local_tag_info.object = (uint64_t)(uintptr_t)phys_dev_tramp->phys_dev;
- }
- return disp->DebugMarkerSetObjectTagEXT(device, &local_tag_info);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_DebugMarkerSetObjectTagEXT(
- VkDevice device,
- const VkDebugMarkerObjectTagInfoEXT* pTagInfo) {
- uint32_t icd_index = 0;
- struct loader_device *dev;
- struct loader_icd_term *icd_term = loader_get_icd_and_device(device, &dev, &icd_index);
- if (NULL != icd_term && NULL != icd_term->dispatch.DebugMarkerSetObjectTagEXT) {
- VkDebugMarkerObjectTagInfoEXT local_tag_info;
- memcpy(&local_tag_info, pTagInfo, sizeof(VkDebugMarkerObjectTagInfoEXT));
- // If this is a physical device, we have to replace it with the proper one for the next call.
- if (pTagInfo->objectType == VK_DEBUG_REPORT_OBJECT_TYPE_PHYSICAL_DEVICE_EXT) {
- struct loader_physical_device_term *phys_dev_term = (struct loader_physical_device_term *)(uintptr_t)pTagInfo->object;
- local_tag_info.object = (uint64_t)(uintptr_t)phys_dev_term->phys_dev;
- // If this is a KHR_surface, and the ICD has created its own, we have to replace it with the proper one for the next call.
- } else if (pTagInfo->objectType == VK_DEBUG_REPORT_OBJECT_TYPE_SURFACE_KHR_EXT) {
- if (NULL != icd_term && NULL != icd_term->dispatch.CreateSwapchainKHR) {
- VkIcdSurface *icd_surface = (VkIcdSurface *)(uintptr_t)pTagInfo->object;
- if (NULL != icd_surface->real_icd_surfaces) {
- local_tag_info.object = (uint64_t)icd_surface->real_icd_surfaces[icd_index];
- }
- }
- }
- return icd_term->dispatch.DebugMarkerSetObjectTagEXT(device, &local_tag_info);
- } else {
- return VK_SUCCESS;
- }
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL DebugMarkerSetObjectNameEXT(
- VkDevice device,
- const VkDebugMarkerObjectNameInfoEXT* pNameInfo) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- VkDebugMarkerObjectNameInfoEXT local_name_info;
- memcpy(&local_name_info, pNameInfo, sizeof(VkDebugMarkerObjectNameInfoEXT));
- // If this is a physical device, we have to replace it with the proper one for the next call.
- if (pNameInfo->objectType == VK_DEBUG_REPORT_OBJECT_TYPE_PHYSICAL_DEVICE_EXT) {
- struct loader_physical_device_tramp *phys_dev_tramp = (struct loader_physical_device_tramp *)(uintptr_t)pNameInfo->object;
- local_name_info.object = (uint64_t)(uintptr_t)phys_dev_tramp->phys_dev;
- }
- return disp->DebugMarkerSetObjectNameEXT(device, &local_name_info);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_DebugMarkerSetObjectNameEXT(
- VkDevice device,
- const VkDebugMarkerObjectNameInfoEXT* pNameInfo) {
- uint32_t icd_index = 0;
- struct loader_device *dev;
- struct loader_icd_term *icd_term = loader_get_icd_and_device(device, &dev, &icd_index);
- if (NULL != icd_term && NULL != icd_term->dispatch.DebugMarkerSetObjectNameEXT) {
- VkDebugMarkerObjectNameInfoEXT local_name_info;
- memcpy(&local_name_info, pNameInfo, sizeof(VkDebugMarkerObjectNameInfoEXT));
- // If this is a physical device, we have to replace it with the proper one for the next call.
- if (pNameInfo->objectType == VK_DEBUG_REPORT_OBJECT_TYPE_PHYSICAL_DEVICE_EXT) {
- struct loader_physical_device_term *phys_dev_term = (struct loader_physical_device_term *)(uintptr_t)pNameInfo->object;
- local_name_info.object = (uint64_t)(uintptr_t)phys_dev_term->phys_dev;
- // If this is a KHR_surface, and the ICD has created its own, we have to replace it with the proper one for the next call.
- } else if (pNameInfo->objectType == VK_DEBUG_REPORT_OBJECT_TYPE_SURFACE_KHR_EXT) {
- if (NULL != icd_term && NULL != icd_term->dispatch.CreateSwapchainKHR) {
- VkIcdSurface *icd_surface = (VkIcdSurface *)(uintptr_t)pNameInfo->object;
- if (NULL != icd_surface->real_icd_surfaces) {
- local_name_info.object = (uint64_t)icd_surface->real_icd_surfaces[icd_index];
- }
- }
- }
- return icd_term->dispatch.DebugMarkerSetObjectNameEXT(device, &local_name_info);
- } else {
- return VK_SUCCESS;
- }
-}
-
-VKAPI_ATTR void VKAPI_CALL CmdDebugMarkerBeginEXT(
- VkCommandBuffer commandBuffer,
- const VkDebugMarkerMarkerInfoEXT* pMarkerInfo) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdDebugMarkerBeginEXT(commandBuffer, pMarkerInfo);
-}
-
-VKAPI_ATTR void VKAPI_CALL CmdDebugMarkerEndEXT(
- VkCommandBuffer commandBuffer) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdDebugMarkerEndEXT(commandBuffer);
-}
-
-VKAPI_ATTR void VKAPI_CALL CmdDebugMarkerInsertEXT(
- VkCommandBuffer commandBuffer,
- const VkDebugMarkerMarkerInfoEXT* pMarkerInfo) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdDebugMarkerInsertEXT(commandBuffer, pMarkerInfo);
-}
-
-
-// ---- VK_EXT_transform_feedback extension trampoline/terminators
-
-VKAPI_ATTR void VKAPI_CALL CmdBindTransformFeedbackBuffersEXT(
- VkCommandBuffer commandBuffer,
- uint32_t firstBinding,
- uint32_t bindingCount,
- const VkBuffer* pBuffers,
- const VkDeviceSize* pOffsets,
- const VkDeviceSize* pSizes) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdBindTransformFeedbackBuffersEXT(commandBuffer, firstBinding, bindingCount, pBuffers, pOffsets, pSizes);
-}
-
-VKAPI_ATTR void VKAPI_CALL CmdBeginTransformFeedbackEXT(
- VkCommandBuffer commandBuffer,
- uint32_t firstCounterBuffer,
- uint32_t counterBufferCount,
- const VkBuffer* pCounterBuffers,
- const VkDeviceSize* pCounterBufferOffsets) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdBeginTransformFeedbackEXT(commandBuffer, firstCounterBuffer, counterBufferCount, pCounterBuffers, pCounterBufferOffsets);
-}
-
-VKAPI_ATTR void VKAPI_CALL CmdEndTransformFeedbackEXT(
- VkCommandBuffer commandBuffer,
- uint32_t firstCounterBuffer,
- uint32_t counterBufferCount,
- const VkBuffer* pCounterBuffers,
- const VkDeviceSize* pCounterBufferOffsets) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdEndTransformFeedbackEXT(commandBuffer, firstCounterBuffer, counterBufferCount, pCounterBuffers, pCounterBufferOffsets);
-}
-
-VKAPI_ATTR void VKAPI_CALL CmdBeginQueryIndexedEXT(
- VkCommandBuffer commandBuffer,
- VkQueryPool queryPool,
- uint32_t query,
- VkQueryControlFlags flags,
- uint32_t index) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdBeginQueryIndexedEXT(commandBuffer, queryPool, query, flags, index);
-}
-
-VKAPI_ATTR void VKAPI_CALL CmdEndQueryIndexedEXT(
- VkCommandBuffer commandBuffer,
- VkQueryPool queryPool,
- uint32_t query,
- uint32_t index) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdEndQueryIndexedEXT(commandBuffer, queryPool, query, index);
-}
-
-VKAPI_ATTR void VKAPI_CALL CmdDrawIndirectByteCountEXT(
- VkCommandBuffer commandBuffer,
- uint32_t instanceCount,
- uint32_t firstInstance,
- VkBuffer counterBuffer,
- VkDeviceSize counterBufferOffset,
- uint32_t counterOffset,
- uint32_t vertexStride) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdDrawIndirectByteCountEXT(commandBuffer, instanceCount, firstInstance, counterBuffer, counterBufferOffset, counterOffset, vertexStride);
-}
-
-
-// ---- VK_NVX_image_view_handle extension trampoline/terminators
-
-VKAPI_ATTR uint32_t VKAPI_CALL GetImageViewHandleNVX(
- VkDevice device,
- const VkImageViewHandleInfoNVX* pInfo) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->GetImageViewHandleNVX(device, pInfo);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL GetImageViewAddressNVX(
- VkDevice device,
- VkImageView imageView,
- VkImageViewAddressPropertiesNVX* pProperties) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->GetImageViewAddressNVX(device, imageView, pProperties);
-}
-
-
-// ---- VK_AMD_draw_indirect_count extension trampoline/terminators
-
-VKAPI_ATTR void VKAPI_CALL CmdDrawIndirectCountAMD(
- VkCommandBuffer commandBuffer,
- VkBuffer buffer,
- VkDeviceSize offset,
- VkBuffer countBuffer,
- VkDeviceSize countBufferOffset,
- uint32_t maxDrawCount,
- uint32_t stride) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdDrawIndirectCountAMD(commandBuffer, buffer, offset, countBuffer, countBufferOffset, maxDrawCount, stride);
-}
-
-VKAPI_ATTR void VKAPI_CALL CmdDrawIndexedIndirectCountAMD(
- VkCommandBuffer commandBuffer,
- VkBuffer buffer,
- VkDeviceSize offset,
- VkBuffer countBuffer,
- VkDeviceSize countBufferOffset,
- uint32_t maxDrawCount,
- uint32_t stride) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdDrawIndexedIndirectCountAMD(commandBuffer, buffer, offset, countBuffer, countBufferOffset, maxDrawCount, stride);
-}
-
-
-// ---- VK_AMD_shader_info extension trampoline/terminators
-
-VKAPI_ATTR VkResult VKAPI_CALL GetShaderInfoAMD(
- VkDevice device,
- VkPipeline pipeline,
- VkShaderStageFlagBits shaderStage,
- VkShaderInfoTypeAMD infoType,
- size_t* pInfoSize,
- void* pInfo) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->GetShaderInfoAMD(device, pipeline, shaderStage, infoType, pInfoSize, pInfo);
-}
-
-
-// ---- VK_NV_external_memory_win32 extension trampoline/terminators
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
-VKAPI_ATTR VkResult VKAPI_CALL GetMemoryWin32HandleNV(
- VkDevice device,
- VkDeviceMemory memory,
- VkExternalMemoryHandleTypeFlagsNV handleType,
- HANDLE* pHandle) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->GetMemoryWin32HandleNV(device, memory, handleType, pHandle);
-}
-
-#endif // VK_USE_PLATFORM_WIN32_KHR
-
-// ---- VK_NN_vi_surface extension trampoline/terminators
-
-#ifdef VK_USE_PLATFORM_VI_NN
-VKAPI_ATTR VkResult VKAPI_CALL CreateViSurfaceNN(
- VkInstance instance,
- const VkViSurfaceCreateInfoNN* pCreateInfo,
- const VkAllocationCallbacks* pAllocator,
- VkSurfaceKHR* pSurface) {
-#error("Not implemented. Likely needs to be manually generated!");
- return disp->CreateViSurfaceNN(instance, pCreateInfo, pAllocator, pSurface);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_CreateViSurfaceNN(
- VkInstance instance,
- const VkViSurfaceCreateInfoNN* pCreateInfo,
- const VkAllocationCallbacks* pAllocator,
- VkSurfaceKHR* pSurface) {
-#error("Not implemented. Likely needs to be manually generated!");
-}
-
-#endif // VK_USE_PLATFORM_VI_NN
-
-// ---- VK_EXT_conditional_rendering extension trampoline/terminators
-
-VKAPI_ATTR void VKAPI_CALL CmdBeginConditionalRenderingEXT(
- VkCommandBuffer commandBuffer,
- const VkConditionalRenderingBeginInfoEXT* pConditionalRenderingBegin) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdBeginConditionalRenderingEXT(commandBuffer, pConditionalRenderingBegin);
-}
-
-VKAPI_ATTR void VKAPI_CALL CmdEndConditionalRenderingEXT(
- VkCommandBuffer commandBuffer) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdEndConditionalRenderingEXT(commandBuffer);
-}
-
-
-// ---- VK_NV_clip_space_w_scaling extension trampoline/terminators
-
-VKAPI_ATTR void VKAPI_CALL CmdSetViewportWScalingNV(
- VkCommandBuffer commandBuffer,
- uint32_t firstViewport,
- uint32_t viewportCount,
- const VkViewportWScalingNV* pViewportWScalings) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdSetViewportWScalingNV(commandBuffer, firstViewport, viewportCount, pViewportWScalings);
-}
-
-
-// ---- VK_EXT_display_control extension trampoline/terminators
-
-VKAPI_ATTR VkResult VKAPI_CALL DisplayPowerControlEXT(
- VkDevice device,
- VkDisplayKHR display,
- const VkDisplayPowerInfoEXT* pDisplayPowerInfo) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->DisplayPowerControlEXT(device, display, pDisplayPowerInfo);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL RegisterDeviceEventEXT(
- VkDevice device,
- const VkDeviceEventInfoEXT* pDeviceEventInfo,
- const VkAllocationCallbacks* pAllocator,
- VkFence* pFence) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->RegisterDeviceEventEXT(device, pDeviceEventInfo, pAllocator, pFence);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL RegisterDisplayEventEXT(
- VkDevice device,
- VkDisplayKHR display,
- const VkDisplayEventInfoEXT* pDisplayEventInfo,
- const VkAllocationCallbacks* pAllocator,
- VkFence* pFence) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->RegisterDisplayEventEXT(device, display, pDisplayEventInfo, pAllocator, pFence);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL GetSwapchainCounterEXT(
- VkDevice device,
- VkSwapchainKHR swapchain,
- VkSurfaceCounterFlagBitsEXT counter,
- uint64_t* pCounterValue) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->GetSwapchainCounterEXT(device, swapchain, counter, pCounterValue);
-}
-
-
-// ---- VK_GOOGLE_display_timing extension trampoline/terminators
-
-VKAPI_ATTR VkResult VKAPI_CALL GetRefreshCycleDurationGOOGLE(
- VkDevice device,
- VkSwapchainKHR swapchain,
- VkRefreshCycleDurationGOOGLE* pDisplayTimingProperties) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->GetRefreshCycleDurationGOOGLE(device, swapchain, pDisplayTimingProperties);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL GetPastPresentationTimingGOOGLE(
- VkDevice device,
- VkSwapchainKHR swapchain,
- uint32_t* pPresentationTimingCount,
- VkPastPresentationTimingGOOGLE* pPresentationTimings) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->GetPastPresentationTimingGOOGLE(device, swapchain, pPresentationTimingCount, pPresentationTimings);
-}
-
-
-// ---- VK_EXT_discard_rectangles extension trampoline/terminators
-
-VKAPI_ATTR void VKAPI_CALL CmdSetDiscardRectangleEXT(
- VkCommandBuffer commandBuffer,
- uint32_t firstDiscardRectangle,
- uint32_t discardRectangleCount,
- const VkRect2D* pDiscardRectangles) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdSetDiscardRectangleEXT(commandBuffer, firstDiscardRectangle, discardRectangleCount, pDiscardRectangles);
-}
-
-
-// ---- VK_EXT_hdr_metadata extension trampoline/terminators
-
-VKAPI_ATTR void VKAPI_CALL SetHdrMetadataEXT(
- VkDevice device,
- uint32_t swapchainCount,
- const VkSwapchainKHR* pSwapchains,
- const VkHdrMetadataEXT* pMetadata) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- disp->SetHdrMetadataEXT(device, swapchainCount, pSwapchains, pMetadata);
-}
-
-
-// ---- VK_EXT_debug_utils extension trampoline/terminators
-
-VKAPI_ATTR VkResult VKAPI_CALL SetDebugUtilsObjectNameEXT(
- VkDevice device,
- const VkDebugUtilsObjectNameInfoEXT* pNameInfo) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- VkDebugUtilsObjectNameInfoEXT local_name_info;
- memcpy(&local_name_info, pNameInfo, sizeof(VkDebugUtilsObjectNameInfoEXT));
- // If this is a physical device, we have to replace it with the proper one for the next call.
- if (pNameInfo->objectType == VK_OBJECT_TYPE_PHYSICAL_DEVICE) {
- struct loader_physical_device_tramp *phys_dev_tramp = (struct loader_physical_device_tramp *)(uintptr_t)pNameInfo->objectHandle;
- local_name_info.objectHandle = (uint64_t)(uintptr_t)phys_dev_tramp->phys_dev;
- }
- if (disp->SetDebugUtilsObjectNameEXT != NULL) {
- return disp->SetDebugUtilsObjectNameEXT(device, &local_name_info);
- } else {
- return VK_SUCCESS;
- }
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_SetDebugUtilsObjectNameEXT(
- VkDevice device,
- const VkDebugUtilsObjectNameInfoEXT* pNameInfo) {
- uint32_t icd_index = 0;
- struct loader_device *dev;
- struct loader_icd_term *icd_term = loader_get_icd_and_device(device, &dev, &icd_index);
- if (NULL != icd_term && NULL != icd_term->dispatch.SetDebugUtilsObjectNameEXT) {
- VkDebugUtilsObjectNameInfoEXT local_name_info;
- memcpy(&local_name_info, pNameInfo, sizeof(VkDebugUtilsObjectNameInfoEXT));
- // If this is a physical device, we have to replace it with the proper one for the next call.
- if (pNameInfo->objectType == VK_OBJECT_TYPE_PHYSICAL_DEVICE) {
- struct loader_physical_device_term *phys_dev_term = (struct loader_physical_device_term *)(uintptr_t)pNameInfo->objectHandle;
- local_name_info.objectHandle = (uint64_t)(uintptr_t)phys_dev_term->phys_dev;
- // If this is a KHR_surface, and the ICD has created its own, we have to replace it with the proper one for the next call.
- } else if (pNameInfo->objectType == VK_OBJECT_TYPE_SURFACE_KHR) {
- if (NULL != icd_term && NULL != icd_term->dispatch.CreateSwapchainKHR) {
- VkIcdSurface *icd_surface = (VkIcdSurface *)(uintptr_t)pNameInfo->objectHandle;
- if (NULL != icd_surface->real_icd_surfaces) {
- local_name_info.objectHandle = (uint64_t)icd_surface->real_icd_surfaces[icd_index];
- }
- }
- }
- return icd_term->dispatch.SetDebugUtilsObjectNameEXT(device, &local_name_info);
- } else {
- return VK_SUCCESS;
- }
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL SetDebugUtilsObjectTagEXT(
- VkDevice device,
- const VkDebugUtilsObjectTagInfoEXT* pTagInfo) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- VkDebugUtilsObjectTagInfoEXT local_tag_info;
- memcpy(&local_tag_info, pTagInfo, sizeof(VkDebugUtilsObjectTagInfoEXT));
- // If this is a physical device, we have to replace it with the proper one for the next call.
- if (pTagInfo->objectType == VK_OBJECT_TYPE_PHYSICAL_DEVICE) {
- struct loader_physical_device_tramp *phys_dev_tramp = (struct loader_physical_device_tramp *)(uintptr_t)pTagInfo->objectHandle;
- local_tag_info.objectHandle = (uint64_t)(uintptr_t)phys_dev_tramp->phys_dev;
- }
- if (disp->SetDebugUtilsObjectTagEXT != NULL) {
- return disp->SetDebugUtilsObjectTagEXT(device, &local_tag_info);
- } else {
- return VK_SUCCESS;
- }
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_SetDebugUtilsObjectTagEXT(
- VkDevice device,
- const VkDebugUtilsObjectTagInfoEXT* pTagInfo) {
- uint32_t icd_index = 0;
- struct loader_device *dev;
- struct loader_icd_term *icd_term = loader_get_icd_and_device(device, &dev, &icd_index);
- if (NULL != icd_term && NULL != icd_term->dispatch.SetDebugUtilsObjectTagEXT) {
- VkDebugUtilsObjectTagInfoEXT local_tag_info;
- memcpy(&local_tag_info, pTagInfo, sizeof(VkDebugUtilsObjectTagInfoEXT));
- // If this is a physical device, we have to replace it with the proper one for the next call.
- if (pTagInfo->objectType == VK_OBJECT_TYPE_PHYSICAL_DEVICE) {
- struct loader_physical_device_term *phys_dev_term = (struct loader_physical_device_term *)(uintptr_t)pTagInfo->objectHandle;
- local_tag_info.objectHandle = (uint64_t)(uintptr_t)phys_dev_term->phys_dev;
- // If this is a KHR_surface, and the ICD has created its own, we have to replace it with the proper one for the next call.
- } else if (pTagInfo->objectType == VK_OBJECT_TYPE_SURFACE_KHR) {
- if (NULL != icd_term && NULL != icd_term->dispatch.CreateSwapchainKHR) {
- VkIcdSurface *icd_surface = (VkIcdSurface *)(uintptr_t)pTagInfo->objectHandle;
- if (NULL != icd_surface->real_icd_surfaces) {
- local_tag_info.objectHandle = (uint64_t)icd_surface->real_icd_surfaces[icd_index];
- }
- }
- }
- return icd_term->dispatch.SetDebugUtilsObjectTagEXT(device, &local_tag_info);
- } else {
- return VK_SUCCESS;
- }
-}
-
-VKAPI_ATTR void VKAPI_CALL QueueBeginDebugUtilsLabelEXT(
- VkQueue queue,
- const VkDebugUtilsLabelEXT* pLabelInfo) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(queue);
- if (disp->QueueBeginDebugUtilsLabelEXT != NULL) {
- disp->QueueBeginDebugUtilsLabelEXT(queue, pLabelInfo);
- }
-}
-
-VKAPI_ATTR void VKAPI_CALL terminator_QueueBeginDebugUtilsLabelEXT(
- VkQueue queue,
- const VkDebugUtilsLabelEXT* pLabelInfo) {
- uint32_t icd_index = 0;
- struct loader_device *dev;
- struct loader_icd_term *icd_term = loader_get_icd_and_device(queue, &dev, &icd_index);
- if (NULL != icd_term && NULL != icd_term->dispatch.QueueBeginDebugUtilsLabelEXT) {
- icd_term->dispatch.QueueBeginDebugUtilsLabelEXT(queue, pLabelInfo);
- }
-}
-
-VKAPI_ATTR void VKAPI_CALL QueueEndDebugUtilsLabelEXT(
- VkQueue queue) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(queue);
- if (disp->QueueEndDebugUtilsLabelEXT != NULL) {
- disp->QueueEndDebugUtilsLabelEXT(queue);
- }
-}
-
-VKAPI_ATTR void VKAPI_CALL terminator_QueueEndDebugUtilsLabelEXT(
- VkQueue queue) {
- uint32_t icd_index = 0;
- struct loader_device *dev;
- struct loader_icd_term *icd_term = loader_get_icd_and_device(queue, &dev, &icd_index);
- if (NULL != icd_term && NULL != icd_term->dispatch.QueueEndDebugUtilsLabelEXT) {
- icd_term->dispatch.QueueEndDebugUtilsLabelEXT(queue);
- }
-}
-
-VKAPI_ATTR void VKAPI_CALL QueueInsertDebugUtilsLabelEXT(
- VkQueue queue,
- const VkDebugUtilsLabelEXT* pLabelInfo) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(queue);
- if (disp->QueueInsertDebugUtilsLabelEXT != NULL) {
- disp->QueueInsertDebugUtilsLabelEXT(queue, pLabelInfo);
- }
-}
-
-VKAPI_ATTR void VKAPI_CALL terminator_QueueInsertDebugUtilsLabelEXT(
- VkQueue queue,
- const VkDebugUtilsLabelEXT* pLabelInfo) {
- uint32_t icd_index = 0;
- struct loader_device *dev;
- struct loader_icd_term *icd_term = loader_get_icd_and_device(queue, &dev, &icd_index);
- if (NULL != icd_term && NULL != icd_term->dispatch.QueueInsertDebugUtilsLabelEXT) {
- icd_term->dispatch.QueueInsertDebugUtilsLabelEXT(queue, pLabelInfo);
- }
-}
-
-VKAPI_ATTR void VKAPI_CALL CmdBeginDebugUtilsLabelEXT(
- VkCommandBuffer commandBuffer,
- const VkDebugUtilsLabelEXT* pLabelInfo) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- if (disp->CmdBeginDebugUtilsLabelEXT != NULL) {
- disp->CmdBeginDebugUtilsLabelEXT(commandBuffer, pLabelInfo);
- }
-}
-
-VKAPI_ATTR void VKAPI_CALL terminator_CmdBeginDebugUtilsLabelEXT(
- VkCommandBuffer commandBuffer,
- const VkDebugUtilsLabelEXT* pLabelInfo) {
- uint32_t icd_index = 0;
- struct loader_device *dev;
- struct loader_icd_term *icd_term = loader_get_icd_and_device(commandBuffer, &dev, &icd_index);
- if (NULL != icd_term && NULL != icd_term->dispatch.CmdBeginDebugUtilsLabelEXT) {
- icd_term->dispatch.CmdBeginDebugUtilsLabelEXT(commandBuffer, pLabelInfo);
- }
-}
-
-VKAPI_ATTR void VKAPI_CALL CmdEndDebugUtilsLabelEXT(
- VkCommandBuffer commandBuffer) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- if (disp->CmdEndDebugUtilsLabelEXT != NULL) {
- disp->CmdEndDebugUtilsLabelEXT(commandBuffer);
- }
-}
-
-VKAPI_ATTR void VKAPI_CALL terminator_CmdEndDebugUtilsLabelEXT(
- VkCommandBuffer commandBuffer) {
- uint32_t icd_index = 0;
- struct loader_device *dev;
- struct loader_icd_term *icd_term = loader_get_icd_and_device(commandBuffer, &dev, &icd_index);
- if (NULL != icd_term && NULL != icd_term->dispatch.CmdEndDebugUtilsLabelEXT) {
- icd_term->dispatch.CmdEndDebugUtilsLabelEXT(commandBuffer);
- }
-}
-
-VKAPI_ATTR void VKAPI_CALL CmdInsertDebugUtilsLabelEXT(
- VkCommandBuffer commandBuffer,
- const VkDebugUtilsLabelEXT* pLabelInfo) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- if (disp->CmdInsertDebugUtilsLabelEXT != NULL) {
- disp->CmdInsertDebugUtilsLabelEXT(commandBuffer, pLabelInfo);
- }
-}
-
-VKAPI_ATTR void VKAPI_CALL terminator_CmdInsertDebugUtilsLabelEXT(
- VkCommandBuffer commandBuffer,
- const VkDebugUtilsLabelEXT* pLabelInfo) {
- uint32_t icd_index = 0;
- struct loader_device *dev;
- struct loader_icd_term *icd_term = loader_get_icd_and_device(commandBuffer, &dev, &icd_index);
- if (NULL != icd_term && NULL != icd_term->dispatch.CmdInsertDebugUtilsLabelEXT) {
- icd_term->dispatch.CmdInsertDebugUtilsLabelEXT(commandBuffer, pLabelInfo);
- }
-}
-
-
-// ---- VK_ANDROID_external_memory_android_hardware_buffer extension trampoline/terminators
-
-#ifdef VK_USE_PLATFORM_ANDROID_KHR
-VKAPI_ATTR VkResult VKAPI_CALL GetAndroidHardwareBufferPropertiesANDROID(
- VkDevice device,
- const struct AHardwareBuffer* buffer,
- VkAndroidHardwareBufferPropertiesANDROID* pProperties) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->GetAndroidHardwareBufferPropertiesANDROID(device, buffer, pProperties);
-}
-
-#endif // VK_USE_PLATFORM_ANDROID_KHR
-#ifdef VK_USE_PLATFORM_ANDROID_KHR
-VKAPI_ATTR VkResult VKAPI_CALL GetMemoryAndroidHardwareBufferANDROID(
- VkDevice device,
- const VkMemoryGetAndroidHardwareBufferInfoANDROID* pInfo,
- struct AHardwareBuffer** pBuffer) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->GetMemoryAndroidHardwareBufferANDROID(device, pInfo, pBuffer);
-}
-
-#endif // VK_USE_PLATFORM_ANDROID_KHR
-
-// ---- VK_EXT_sample_locations extension trampoline/terminators
-
-VKAPI_ATTR void VKAPI_CALL CmdSetSampleLocationsEXT(
- VkCommandBuffer commandBuffer,
- const VkSampleLocationsInfoEXT* pSampleLocationsInfo) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdSetSampleLocationsEXT(commandBuffer, pSampleLocationsInfo);
-}
-
-VKAPI_ATTR void VKAPI_CALL GetPhysicalDeviceMultisamplePropertiesEXT(
- VkPhysicalDevice physicalDevice,
- VkSampleCountFlagBits samples,
- VkMultisamplePropertiesEXT* pMultisampleProperties) {
- const VkLayerInstanceDispatchTable *disp;
- VkPhysicalDevice unwrapped_phys_dev = loader_unwrap_physical_device(physicalDevice);
- disp = loader_get_instance_layer_dispatch(physicalDevice);
- disp->GetPhysicalDeviceMultisamplePropertiesEXT(unwrapped_phys_dev, samples, pMultisampleProperties);
-}
-
-VKAPI_ATTR void VKAPI_CALL terminator_GetPhysicalDeviceMultisamplePropertiesEXT(
- VkPhysicalDevice physicalDevice,
- VkSampleCountFlagBits samples,
- VkMultisamplePropertiesEXT* pMultisampleProperties) {
- struct loader_physical_device_term *phys_dev_term = (struct loader_physical_device_term *)physicalDevice;
- struct loader_icd_term *icd_term = phys_dev_term->this_icd_term;
- if (NULL == icd_term->dispatch.GetPhysicalDeviceMultisamplePropertiesEXT) {
- loader_log(icd_term->this_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "ICD associated with VkPhysicalDevice does not support GetPhysicalDeviceMultisamplePropertiesEXT");
- }
- icd_term->dispatch.GetPhysicalDeviceMultisamplePropertiesEXT(phys_dev_term->phys_dev, samples, pMultisampleProperties);
-}
-
-
-// ---- VK_EXT_image_drm_format_modifier extension trampoline/terminators
-
-VKAPI_ATTR VkResult VKAPI_CALL GetImageDrmFormatModifierPropertiesEXT(
- VkDevice device,
- VkImage image,
- VkImageDrmFormatModifierPropertiesEXT* pProperties) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->GetImageDrmFormatModifierPropertiesEXT(device, image, pProperties);
-}
-
-
-// ---- VK_EXT_validation_cache extension trampoline/terminators
-
-VKAPI_ATTR VkResult VKAPI_CALL CreateValidationCacheEXT(
- VkDevice device,
- const VkValidationCacheCreateInfoEXT* pCreateInfo,
- const VkAllocationCallbacks* pAllocator,
- VkValidationCacheEXT* pValidationCache) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->CreateValidationCacheEXT(device, pCreateInfo, pAllocator, pValidationCache);
-}
-
-VKAPI_ATTR void VKAPI_CALL DestroyValidationCacheEXT(
- VkDevice device,
- VkValidationCacheEXT validationCache,
- const VkAllocationCallbacks* pAllocator) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- disp->DestroyValidationCacheEXT(device, validationCache, pAllocator);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL MergeValidationCachesEXT(
- VkDevice device,
- VkValidationCacheEXT dstCache,
- uint32_t srcCacheCount,
- const VkValidationCacheEXT* pSrcCaches) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->MergeValidationCachesEXT(device, dstCache, srcCacheCount, pSrcCaches);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL GetValidationCacheDataEXT(
- VkDevice device,
- VkValidationCacheEXT validationCache,
- size_t* pDataSize,
- void* pData) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->GetValidationCacheDataEXT(device, validationCache, pDataSize, pData);
-}
-
-
-// ---- VK_NV_shading_rate_image extension trampoline/terminators
-
-VKAPI_ATTR void VKAPI_CALL CmdBindShadingRateImageNV(
- VkCommandBuffer commandBuffer,
- VkImageView imageView,
- VkImageLayout imageLayout) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdBindShadingRateImageNV(commandBuffer, imageView, imageLayout);
-}
-
-VKAPI_ATTR void VKAPI_CALL CmdSetViewportShadingRatePaletteNV(
- VkCommandBuffer commandBuffer,
- uint32_t firstViewport,
- uint32_t viewportCount,
- const VkShadingRatePaletteNV* pShadingRatePalettes) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdSetViewportShadingRatePaletteNV(commandBuffer, firstViewport, viewportCount, pShadingRatePalettes);
-}
-
-VKAPI_ATTR void VKAPI_CALL CmdSetCoarseSampleOrderNV(
- VkCommandBuffer commandBuffer,
- VkCoarseSampleOrderTypeNV sampleOrderType,
- uint32_t customSampleOrderCount,
- const VkCoarseSampleOrderCustomNV* pCustomSampleOrders) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdSetCoarseSampleOrderNV(commandBuffer, sampleOrderType, customSampleOrderCount, pCustomSampleOrders);
-}
-
-
-// ---- VK_NV_ray_tracing extension trampoline/terminators
-
-VKAPI_ATTR VkResult VKAPI_CALL CreateAccelerationStructureNV(
- VkDevice device,
- const VkAccelerationStructureCreateInfoNV* pCreateInfo,
- const VkAllocationCallbacks* pAllocator,
- VkAccelerationStructureNV* pAccelerationStructure) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->CreateAccelerationStructureNV(device, pCreateInfo, pAllocator, pAccelerationStructure);
-}
-
-VKAPI_ATTR void VKAPI_CALL DestroyAccelerationStructureNV(
- VkDevice device,
- VkAccelerationStructureNV accelerationStructure,
- const VkAllocationCallbacks* pAllocator) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- disp->DestroyAccelerationStructureNV(device, accelerationStructure, pAllocator);
-}
-
-VKAPI_ATTR void VKAPI_CALL GetAccelerationStructureMemoryRequirementsNV(
- VkDevice device,
- const VkAccelerationStructureMemoryRequirementsInfoNV* pInfo,
- VkMemoryRequirements2KHR* pMemoryRequirements) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- disp->GetAccelerationStructureMemoryRequirementsNV(device, pInfo, pMemoryRequirements);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL BindAccelerationStructureMemoryNV(
- VkDevice device,
- uint32_t bindInfoCount,
- const VkBindAccelerationStructureMemoryInfoNV* pBindInfos) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->BindAccelerationStructureMemoryNV(device, bindInfoCount, pBindInfos);
-}
-
-VKAPI_ATTR void VKAPI_CALL CmdBuildAccelerationStructureNV(
- VkCommandBuffer commandBuffer,
- const VkAccelerationStructureInfoNV* pInfo,
- VkBuffer instanceData,
- VkDeviceSize instanceOffset,
- VkBool32 update,
- VkAccelerationStructureNV dst,
- VkAccelerationStructureNV src,
- VkBuffer scratch,
- VkDeviceSize scratchOffset) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdBuildAccelerationStructureNV(commandBuffer, pInfo, instanceData, instanceOffset, update, dst, src, scratch, scratchOffset);
-}
-
-VKAPI_ATTR void VKAPI_CALL CmdCopyAccelerationStructureNV(
- VkCommandBuffer commandBuffer,
- VkAccelerationStructureNV dst,
- VkAccelerationStructureNV src,
- VkCopyAccelerationStructureModeKHR mode) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdCopyAccelerationStructureNV(commandBuffer, dst, src, mode);
-}
-
-VKAPI_ATTR void VKAPI_CALL CmdTraceRaysNV(
- VkCommandBuffer commandBuffer,
- VkBuffer raygenShaderBindingTableBuffer,
- VkDeviceSize raygenShaderBindingOffset,
- VkBuffer missShaderBindingTableBuffer,
- VkDeviceSize missShaderBindingOffset,
- VkDeviceSize missShaderBindingStride,
- VkBuffer hitShaderBindingTableBuffer,
- VkDeviceSize hitShaderBindingOffset,
- VkDeviceSize hitShaderBindingStride,
- VkBuffer callableShaderBindingTableBuffer,
- VkDeviceSize callableShaderBindingOffset,
- VkDeviceSize callableShaderBindingStride,
- uint32_t width,
- uint32_t height,
- uint32_t depth) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdTraceRaysNV(commandBuffer, raygenShaderBindingTableBuffer, raygenShaderBindingOffset, missShaderBindingTableBuffer, missShaderBindingOffset, missShaderBindingStride, hitShaderBindingTableBuffer, hitShaderBindingOffset, hitShaderBindingStride, callableShaderBindingTableBuffer, callableShaderBindingOffset, callableShaderBindingStride, width, height, depth);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL CreateRayTracingPipelinesNV(
- VkDevice device,
- VkPipelineCache pipelineCache,
- uint32_t createInfoCount,
- const VkRayTracingPipelineCreateInfoNV* pCreateInfos,
- const VkAllocationCallbacks* pAllocator,
- VkPipeline* pPipelines) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->CreateRayTracingPipelinesNV(device, pipelineCache, createInfoCount, pCreateInfos, pAllocator, pPipelines);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL GetRayTracingShaderGroupHandlesKHR(
- VkDevice device,
- VkPipeline pipeline,
- uint32_t firstGroup,
- uint32_t groupCount,
- size_t dataSize,
- void* pData) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->GetRayTracingShaderGroupHandlesKHR(device, pipeline, firstGroup, groupCount, dataSize, pData);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL GetRayTracingShaderGroupHandlesNV(
- VkDevice device,
- VkPipeline pipeline,
- uint32_t firstGroup,
- uint32_t groupCount,
- size_t dataSize,
- void* pData) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->GetRayTracingShaderGroupHandlesNV(device, pipeline, firstGroup, groupCount, dataSize, pData);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL GetAccelerationStructureHandleNV(
- VkDevice device,
- VkAccelerationStructureNV accelerationStructure,
- size_t dataSize,
- void* pData) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->GetAccelerationStructureHandleNV(device, accelerationStructure, dataSize, pData);
-}
-
-VKAPI_ATTR void VKAPI_CALL CmdWriteAccelerationStructuresPropertiesNV(
- VkCommandBuffer commandBuffer,
- uint32_t accelerationStructureCount,
- const VkAccelerationStructureNV* pAccelerationStructures,
- VkQueryType queryType,
- VkQueryPool queryPool,
- uint32_t firstQuery) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdWriteAccelerationStructuresPropertiesNV(commandBuffer, accelerationStructureCount, pAccelerationStructures, queryType, queryPool, firstQuery);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL CompileDeferredNV(
- VkDevice device,
- VkPipeline pipeline,
- uint32_t shader) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->CompileDeferredNV(device, pipeline, shader);
-}
-
-
-// ---- VK_EXT_external_memory_host extension trampoline/terminators
-
-VKAPI_ATTR VkResult VKAPI_CALL GetMemoryHostPointerPropertiesEXT(
- VkDevice device,
- VkExternalMemoryHandleTypeFlagBits handleType,
- const void* pHostPointer,
- VkMemoryHostPointerPropertiesEXT* pMemoryHostPointerProperties) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->GetMemoryHostPointerPropertiesEXT(device, handleType, pHostPointer, pMemoryHostPointerProperties);
-}
-
-
-// ---- VK_AMD_buffer_marker extension trampoline/terminators
-
-VKAPI_ATTR void VKAPI_CALL CmdWriteBufferMarkerAMD(
- VkCommandBuffer commandBuffer,
- VkPipelineStageFlagBits pipelineStage,
- VkBuffer dstBuffer,
- VkDeviceSize dstOffset,
- uint32_t marker) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdWriteBufferMarkerAMD(commandBuffer, pipelineStage, dstBuffer, dstOffset, marker);
-}
-
-
-// ---- VK_EXT_calibrated_timestamps extension trampoline/terminators
-
-VKAPI_ATTR VkResult VKAPI_CALL GetPhysicalDeviceCalibrateableTimeDomainsEXT(
- VkPhysicalDevice physicalDevice,
- uint32_t* pTimeDomainCount,
- VkTimeDomainEXT* pTimeDomains) {
- const VkLayerInstanceDispatchTable *disp;
- VkPhysicalDevice unwrapped_phys_dev = loader_unwrap_physical_device(physicalDevice);
- disp = loader_get_instance_layer_dispatch(physicalDevice);
- return disp->GetPhysicalDeviceCalibrateableTimeDomainsEXT(unwrapped_phys_dev, pTimeDomainCount, pTimeDomains);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_GetPhysicalDeviceCalibrateableTimeDomainsEXT(
- VkPhysicalDevice physicalDevice,
- uint32_t* pTimeDomainCount,
- VkTimeDomainEXT* pTimeDomains) {
- struct loader_physical_device_term *phys_dev_term = (struct loader_physical_device_term *)physicalDevice;
- struct loader_icd_term *icd_term = phys_dev_term->this_icd_term;
- if (NULL == icd_term->dispatch.GetPhysicalDeviceCalibrateableTimeDomainsEXT) {
- loader_log(icd_term->this_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "ICD associated with VkPhysicalDevice does not support GetPhysicalDeviceCalibrateableTimeDomainsEXT");
- }
- return icd_term->dispatch.GetPhysicalDeviceCalibrateableTimeDomainsEXT(phys_dev_term->phys_dev, pTimeDomainCount, pTimeDomains);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL GetCalibratedTimestampsEXT(
- VkDevice device,
- uint32_t timestampCount,
- const VkCalibratedTimestampInfoEXT* pTimestampInfos,
- uint64_t* pTimestamps,
- uint64_t* pMaxDeviation) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->GetCalibratedTimestampsEXT(device, timestampCount, pTimestampInfos, pTimestamps, pMaxDeviation);
-}
-
-
-// ---- VK_NV_mesh_shader extension trampoline/terminators
-
-VKAPI_ATTR void VKAPI_CALL CmdDrawMeshTasksNV(
- VkCommandBuffer commandBuffer,
- uint32_t taskCount,
- uint32_t firstTask) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdDrawMeshTasksNV(commandBuffer, taskCount, firstTask);
-}
-
-VKAPI_ATTR void VKAPI_CALL CmdDrawMeshTasksIndirectNV(
- VkCommandBuffer commandBuffer,
- VkBuffer buffer,
- VkDeviceSize offset,
- uint32_t drawCount,
- uint32_t stride) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdDrawMeshTasksIndirectNV(commandBuffer, buffer, offset, drawCount, stride);
-}
-
-VKAPI_ATTR void VKAPI_CALL CmdDrawMeshTasksIndirectCountNV(
- VkCommandBuffer commandBuffer,
- VkBuffer buffer,
- VkDeviceSize offset,
- VkBuffer countBuffer,
- VkDeviceSize countBufferOffset,
- uint32_t maxDrawCount,
- uint32_t stride) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdDrawMeshTasksIndirectCountNV(commandBuffer, buffer, offset, countBuffer, countBufferOffset, maxDrawCount, stride);
-}
-
-
-// ---- VK_NV_scissor_exclusive extension trampoline/terminators
-
-VKAPI_ATTR void VKAPI_CALL CmdSetExclusiveScissorNV(
- VkCommandBuffer commandBuffer,
- uint32_t firstExclusiveScissor,
- uint32_t exclusiveScissorCount,
- const VkRect2D* pExclusiveScissors) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdSetExclusiveScissorNV(commandBuffer, firstExclusiveScissor, exclusiveScissorCount, pExclusiveScissors);
-}
-
-
-// ---- VK_NV_device_diagnostic_checkpoints extension trampoline/terminators
-
-VKAPI_ATTR void VKAPI_CALL CmdSetCheckpointNV(
- VkCommandBuffer commandBuffer,
- const void* pCheckpointMarker) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdSetCheckpointNV(commandBuffer, pCheckpointMarker);
-}
-
-VKAPI_ATTR void VKAPI_CALL GetQueueCheckpointDataNV(
- VkQueue queue,
- uint32_t* pCheckpointDataCount,
- VkCheckpointDataNV* pCheckpointData) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(queue);
- disp->GetQueueCheckpointDataNV(queue, pCheckpointDataCount, pCheckpointData);
-}
-
-
-// ---- VK_INTEL_performance_query extension trampoline/terminators
-
-VKAPI_ATTR VkResult VKAPI_CALL InitializePerformanceApiINTEL(
- VkDevice device,
- const VkInitializePerformanceApiInfoINTEL* pInitializeInfo) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->InitializePerformanceApiINTEL(device, pInitializeInfo);
-}
-
-VKAPI_ATTR void VKAPI_CALL UninitializePerformanceApiINTEL(
- VkDevice device) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- disp->UninitializePerformanceApiINTEL(device);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL CmdSetPerformanceMarkerINTEL(
- VkCommandBuffer commandBuffer,
- const VkPerformanceMarkerInfoINTEL* pMarkerInfo) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- return disp->CmdSetPerformanceMarkerINTEL(commandBuffer, pMarkerInfo);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL CmdSetPerformanceStreamMarkerINTEL(
- VkCommandBuffer commandBuffer,
- const VkPerformanceStreamMarkerInfoINTEL* pMarkerInfo) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- return disp->CmdSetPerformanceStreamMarkerINTEL(commandBuffer, pMarkerInfo);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL CmdSetPerformanceOverrideINTEL(
- VkCommandBuffer commandBuffer,
- const VkPerformanceOverrideInfoINTEL* pOverrideInfo) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- return disp->CmdSetPerformanceOverrideINTEL(commandBuffer, pOverrideInfo);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL AcquirePerformanceConfigurationINTEL(
- VkDevice device,
- const VkPerformanceConfigurationAcquireInfoINTEL* pAcquireInfo,
- VkPerformanceConfigurationINTEL* pConfiguration) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->AcquirePerformanceConfigurationINTEL(device, pAcquireInfo, pConfiguration);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL ReleasePerformanceConfigurationINTEL(
- VkDevice device,
- VkPerformanceConfigurationINTEL configuration) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->ReleasePerformanceConfigurationINTEL(device, configuration);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL QueueSetPerformanceConfigurationINTEL(
- VkQueue queue,
- VkPerformanceConfigurationINTEL configuration) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(queue);
- return disp->QueueSetPerformanceConfigurationINTEL(queue, configuration);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL GetPerformanceParameterINTEL(
- VkDevice device,
- VkPerformanceParameterTypeINTEL parameter,
- VkPerformanceValueINTEL* pValue) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->GetPerformanceParameterINTEL(device, parameter, pValue);
-}
-
-
-// ---- VK_AMD_display_native_hdr extension trampoline/terminators
-
-VKAPI_ATTR void VKAPI_CALL SetLocalDimmingAMD(
- VkDevice device,
- VkSwapchainKHR swapChain,
- VkBool32 localDimmingEnable) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- disp->SetLocalDimmingAMD(device, swapChain, localDimmingEnable);
-}
-
-
-// ---- VK_EXT_buffer_device_address extension trampoline/terminators
-
-VKAPI_ATTR VkDeviceAddress VKAPI_CALL GetBufferDeviceAddressEXT(
- VkDevice device,
- const VkBufferDeviceAddressInfo* pInfo) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->GetBufferDeviceAddressEXT(device, pInfo);
-}
-
-
-// ---- VK_NV_cooperative_matrix extension trampoline/terminators
-
-VKAPI_ATTR VkResult VKAPI_CALL GetPhysicalDeviceCooperativeMatrixPropertiesNV(
- VkPhysicalDevice physicalDevice,
- uint32_t* pPropertyCount,
- VkCooperativeMatrixPropertiesNV* pProperties) {
- const VkLayerInstanceDispatchTable *disp;
- VkPhysicalDevice unwrapped_phys_dev = loader_unwrap_physical_device(physicalDevice);
- disp = loader_get_instance_layer_dispatch(physicalDevice);
- return disp->GetPhysicalDeviceCooperativeMatrixPropertiesNV(unwrapped_phys_dev, pPropertyCount, pProperties);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_GetPhysicalDeviceCooperativeMatrixPropertiesNV(
- VkPhysicalDevice physicalDevice,
- uint32_t* pPropertyCount,
- VkCooperativeMatrixPropertiesNV* pProperties) {
- struct loader_physical_device_term *phys_dev_term = (struct loader_physical_device_term *)physicalDevice;
- struct loader_icd_term *icd_term = phys_dev_term->this_icd_term;
- if (NULL == icd_term->dispatch.GetPhysicalDeviceCooperativeMatrixPropertiesNV) {
- loader_log(icd_term->this_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "ICD associated with VkPhysicalDevice does not support GetPhysicalDeviceCooperativeMatrixPropertiesNV");
- }
- return icd_term->dispatch.GetPhysicalDeviceCooperativeMatrixPropertiesNV(phys_dev_term->phys_dev, pPropertyCount, pProperties);
-}
-
-
-// ---- VK_NV_coverage_reduction_mode extension trampoline/terminators
-
-VKAPI_ATTR VkResult VKAPI_CALL GetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV(
- VkPhysicalDevice physicalDevice,
- uint32_t* pCombinationCount,
- VkFramebufferMixedSamplesCombinationNV* pCombinations) {
- const VkLayerInstanceDispatchTable *disp;
- VkPhysicalDevice unwrapped_phys_dev = loader_unwrap_physical_device(physicalDevice);
- disp = loader_get_instance_layer_dispatch(physicalDevice);
- return disp->GetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV(unwrapped_phys_dev, pCombinationCount, pCombinations);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_GetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV(
- VkPhysicalDevice physicalDevice,
- uint32_t* pCombinationCount,
- VkFramebufferMixedSamplesCombinationNV* pCombinations) {
- struct loader_physical_device_term *phys_dev_term = (struct loader_physical_device_term *)physicalDevice;
- struct loader_icd_term *icd_term = phys_dev_term->this_icd_term;
- if (NULL == icd_term->dispatch.GetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV) {
- loader_log(icd_term->this_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "ICD associated with VkPhysicalDevice does not support GetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV");
- }
- return icd_term->dispatch.GetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV(phys_dev_term->phys_dev, pCombinationCount, pCombinations);
-}
-
-
-// ---- VK_EXT_full_screen_exclusive extension trampoline/terminators
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
-VKAPI_ATTR VkResult VKAPI_CALL AcquireFullScreenExclusiveModeEXT(
- VkDevice device,
- VkSwapchainKHR swapchain) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->AcquireFullScreenExclusiveModeEXT(device, swapchain);
-}
-
-#endif // VK_USE_PLATFORM_WIN32_KHR
-#ifdef VK_USE_PLATFORM_WIN32_KHR
-VKAPI_ATTR VkResult VKAPI_CALL ReleaseFullScreenExclusiveModeEXT(
- VkDevice device,
- VkSwapchainKHR swapchain) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->ReleaseFullScreenExclusiveModeEXT(device, swapchain);
-}
-
-#endif // VK_USE_PLATFORM_WIN32_KHR
-
-// ---- VK_EXT_line_rasterization extension trampoline/terminators
-
-VKAPI_ATTR void VKAPI_CALL CmdSetLineStippleEXT(
- VkCommandBuffer commandBuffer,
- uint32_t lineStippleFactor,
- uint16_t lineStipplePattern) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdSetLineStippleEXT(commandBuffer, lineStippleFactor, lineStipplePattern);
-}
-
-
-// ---- VK_EXT_host_query_reset extension trampoline/terminators
-
-VKAPI_ATTR void VKAPI_CALL ResetQueryPoolEXT(
- VkDevice device,
- VkQueryPool queryPool,
- uint32_t firstQuery,
- uint32_t queryCount) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- disp->ResetQueryPoolEXT(device, queryPool, firstQuery, queryCount);
-}
-
-
-// ---- VK_EXT_extended_dynamic_state extension trampoline/terminators
-
-VKAPI_ATTR void VKAPI_CALL CmdSetCullModeEXT(
- VkCommandBuffer commandBuffer,
- VkCullModeFlags cullMode) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdSetCullModeEXT(commandBuffer, cullMode);
-}
-
-VKAPI_ATTR void VKAPI_CALL CmdSetFrontFaceEXT(
- VkCommandBuffer commandBuffer,
- VkFrontFace frontFace) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdSetFrontFaceEXT(commandBuffer, frontFace);
-}
-
-VKAPI_ATTR void VKAPI_CALL CmdSetPrimitiveTopologyEXT(
- VkCommandBuffer commandBuffer,
- VkPrimitiveTopology primitiveTopology) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdSetPrimitiveTopologyEXT(commandBuffer, primitiveTopology);
-}
-
-VKAPI_ATTR void VKAPI_CALL CmdSetViewportWithCountEXT(
- VkCommandBuffer commandBuffer,
- uint32_t viewportCount,
- const VkViewport* pViewports) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdSetViewportWithCountEXT(commandBuffer, viewportCount, pViewports);
-}
-
-VKAPI_ATTR void VKAPI_CALL CmdSetScissorWithCountEXT(
- VkCommandBuffer commandBuffer,
- uint32_t scissorCount,
- const VkRect2D* pScissors) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdSetScissorWithCountEXT(commandBuffer, scissorCount, pScissors);
-}
-
-VKAPI_ATTR void VKAPI_CALL CmdBindVertexBuffers2EXT(
- VkCommandBuffer commandBuffer,
- uint32_t firstBinding,
- uint32_t bindingCount,
- const VkBuffer* pBuffers,
- const VkDeviceSize* pOffsets,
- const VkDeviceSize* pSizes,
- const VkDeviceSize* pStrides) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdBindVertexBuffers2EXT(commandBuffer, firstBinding, bindingCount, pBuffers, pOffsets, pSizes, pStrides);
-}
-
-VKAPI_ATTR void VKAPI_CALL CmdSetDepthTestEnableEXT(
- VkCommandBuffer commandBuffer,
- VkBool32 depthTestEnable) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdSetDepthTestEnableEXT(commandBuffer, depthTestEnable);
-}
-
-VKAPI_ATTR void VKAPI_CALL CmdSetDepthWriteEnableEXT(
- VkCommandBuffer commandBuffer,
- VkBool32 depthWriteEnable) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdSetDepthWriteEnableEXT(commandBuffer, depthWriteEnable);
-}
-
-VKAPI_ATTR void VKAPI_CALL CmdSetDepthCompareOpEXT(
- VkCommandBuffer commandBuffer,
- VkCompareOp depthCompareOp) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdSetDepthCompareOpEXT(commandBuffer, depthCompareOp);
-}
-
-VKAPI_ATTR void VKAPI_CALL CmdSetDepthBoundsTestEnableEXT(
- VkCommandBuffer commandBuffer,
- VkBool32 depthBoundsTestEnable) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdSetDepthBoundsTestEnableEXT(commandBuffer, depthBoundsTestEnable);
-}
-
-VKAPI_ATTR void VKAPI_CALL CmdSetStencilTestEnableEXT(
- VkCommandBuffer commandBuffer,
- VkBool32 stencilTestEnable) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdSetStencilTestEnableEXT(commandBuffer, stencilTestEnable);
-}
-
-VKAPI_ATTR void VKAPI_CALL CmdSetStencilOpEXT(
- VkCommandBuffer commandBuffer,
- VkStencilFaceFlags faceMask,
- VkStencilOp failOp,
- VkStencilOp passOp,
- VkStencilOp depthFailOp,
- VkCompareOp compareOp) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdSetStencilOpEXT(commandBuffer, faceMask, failOp, passOp, depthFailOp, compareOp);
-}
-
-
-// ---- VK_NV_device_generated_commands extension trampoline/terminators
-
-VKAPI_ATTR void VKAPI_CALL GetGeneratedCommandsMemoryRequirementsNV(
- VkDevice device,
- const VkGeneratedCommandsMemoryRequirementsInfoNV* pInfo,
- VkMemoryRequirements2* pMemoryRequirements) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- disp->GetGeneratedCommandsMemoryRequirementsNV(device, pInfo, pMemoryRequirements);
-}
-
-VKAPI_ATTR void VKAPI_CALL CmdPreprocessGeneratedCommandsNV(
- VkCommandBuffer commandBuffer,
- const VkGeneratedCommandsInfoNV* pGeneratedCommandsInfo) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdPreprocessGeneratedCommandsNV(commandBuffer, pGeneratedCommandsInfo);
-}
-
-VKAPI_ATTR void VKAPI_CALL CmdExecuteGeneratedCommandsNV(
- VkCommandBuffer commandBuffer,
- VkBool32 isPreprocessed,
- const VkGeneratedCommandsInfoNV* pGeneratedCommandsInfo) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdExecuteGeneratedCommandsNV(commandBuffer, isPreprocessed, pGeneratedCommandsInfo);
-}
-
-VKAPI_ATTR void VKAPI_CALL CmdBindPipelineShaderGroupNV(
- VkCommandBuffer commandBuffer,
- VkPipelineBindPoint pipelineBindPoint,
- VkPipeline pipeline,
- uint32_t groupIndex) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdBindPipelineShaderGroupNV(commandBuffer, pipelineBindPoint, pipeline, groupIndex);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL CreateIndirectCommandsLayoutNV(
- VkDevice device,
- const VkIndirectCommandsLayoutCreateInfoNV* pCreateInfo,
- const VkAllocationCallbacks* pAllocator,
- VkIndirectCommandsLayoutNV* pIndirectCommandsLayout) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->CreateIndirectCommandsLayoutNV(device, pCreateInfo, pAllocator, pIndirectCommandsLayout);
-}
-
-VKAPI_ATTR void VKAPI_CALL DestroyIndirectCommandsLayoutNV(
- VkDevice device,
- VkIndirectCommandsLayoutNV indirectCommandsLayout,
- const VkAllocationCallbacks* pAllocator) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- disp->DestroyIndirectCommandsLayoutNV(device, indirectCommandsLayout, pAllocator);
-}
-
-
-// ---- VK_EXT_private_data extension trampoline/terminators
-
-VKAPI_ATTR VkResult VKAPI_CALL CreatePrivateDataSlotEXT(
- VkDevice device,
- const VkPrivateDataSlotCreateInfoEXT* pCreateInfo,
- const VkAllocationCallbacks* pAllocator,
- VkPrivateDataSlotEXT* pPrivateDataSlot) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->CreatePrivateDataSlotEXT(device, pCreateInfo, pAllocator, pPrivateDataSlot);
-}
-
-VKAPI_ATTR void VKAPI_CALL DestroyPrivateDataSlotEXT(
- VkDevice device,
- VkPrivateDataSlotEXT privateDataSlot,
- const VkAllocationCallbacks* pAllocator) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- disp->DestroyPrivateDataSlotEXT(device, privateDataSlot, pAllocator);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL SetPrivateDataEXT(
- VkDevice device,
- VkObjectType objectType,
- uint64_t objectHandle,
- VkPrivateDataSlotEXT privateDataSlot,
- uint64_t data) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->SetPrivateDataEXT(device, objectType, objectHandle, privateDataSlot, data);
-}
-
-VKAPI_ATTR void VKAPI_CALL GetPrivateDataEXT(
- VkDevice device,
- VkObjectType objectType,
- uint64_t objectHandle,
- VkPrivateDataSlotEXT privateDataSlot,
- uint64_t* pData) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- disp->GetPrivateDataEXT(device, objectType, objectHandle, privateDataSlot, pData);
-}
-
-
-// ---- VK_NV_fragment_shading_rate_enums extension trampoline/terminators
-
-VKAPI_ATTR void VKAPI_CALL CmdSetFragmentShadingRateEnumNV(
- VkCommandBuffer commandBuffer,
- VkFragmentShadingRateNV shadingRate,
- const VkFragmentShadingRateCombinerOpKHR combinerOps[2]) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdSetFragmentShadingRateEnumNV(commandBuffer, shadingRate, combinerOps);
-}
-
-
-// ---- VK_KHR_acceleration_structure extension trampoline/terminators
-
-VKAPI_ATTR VkResult VKAPI_CALL CreateAccelerationStructureKHR(
- VkDevice device,
- const VkAccelerationStructureCreateInfoKHR* pCreateInfo,
- const VkAllocationCallbacks* pAllocator,
- VkAccelerationStructureKHR* pAccelerationStructure) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->CreateAccelerationStructureKHR(device, pCreateInfo, pAllocator, pAccelerationStructure);
-}
-
-VKAPI_ATTR void VKAPI_CALL DestroyAccelerationStructureKHR(
- VkDevice device,
- VkAccelerationStructureKHR accelerationStructure,
- const VkAllocationCallbacks* pAllocator) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- disp->DestroyAccelerationStructureKHR(device, accelerationStructure, pAllocator);
-}
-
-VKAPI_ATTR void VKAPI_CALL CmdBuildAccelerationStructuresKHR(
- VkCommandBuffer commandBuffer,
- uint32_t infoCount,
- const VkAccelerationStructureBuildGeometryInfoKHR* pInfos,
- const VkAccelerationStructureBuildRangeInfoKHR* const* ppBuildRangeInfos) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdBuildAccelerationStructuresKHR(commandBuffer, infoCount, pInfos, ppBuildRangeInfos);
-}
-
-VKAPI_ATTR void VKAPI_CALL CmdBuildAccelerationStructuresIndirectKHR(
- VkCommandBuffer commandBuffer,
- uint32_t infoCount,
- const VkAccelerationStructureBuildGeometryInfoKHR* pInfos,
- const VkDeviceAddress* pIndirectDeviceAddresses,
- const uint32_t* pIndirectStrides,
- const uint32_t* const* ppMaxPrimitiveCounts) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdBuildAccelerationStructuresIndirectKHR(commandBuffer, infoCount, pInfos, pIndirectDeviceAddresses, pIndirectStrides, ppMaxPrimitiveCounts);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL BuildAccelerationStructuresKHR(
- VkDevice device,
- VkDeferredOperationKHR deferredOperation,
- uint32_t infoCount,
- const VkAccelerationStructureBuildGeometryInfoKHR* pInfos,
- const VkAccelerationStructureBuildRangeInfoKHR* const* ppBuildRangeInfos) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->BuildAccelerationStructuresKHR(device, deferredOperation, infoCount, pInfos, ppBuildRangeInfos);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL CopyAccelerationStructureKHR(
- VkDevice device,
- VkDeferredOperationKHR deferredOperation,
- const VkCopyAccelerationStructureInfoKHR* pInfo) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->CopyAccelerationStructureKHR(device, deferredOperation, pInfo);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL CopyAccelerationStructureToMemoryKHR(
- VkDevice device,
- VkDeferredOperationKHR deferredOperation,
- const VkCopyAccelerationStructureToMemoryInfoKHR* pInfo) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->CopyAccelerationStructureToMemoryKHR(device, deferredOperation, pInfo);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL CopyMemoryToAccelerationStructureKHR(
- VkDevice device,
- VkDeferredOperationKHR deferredOperation,
- const VkCopyMemoryToAccelerationStructureInfoKHR* pInfo) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->CopyMemoryToAccelerationStructureKHR(device, deferredOperation, pInfo);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL WriteAccelerationStructuresPropertiesKHR(
- VkDevice device,
- uint32_t accelerationStructureCount,
- const VkAccelerationStructureKHR* pAccelerationStructures,
- VkQueryType queryType,
- size_t dataSize,
- void* pData,
- size_t stride) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->WriteAccelerationStructuresPropertiesKHR(device, accelerationStructureCount, pAccelerationStructures, queryType, dataSize, pData, stride);
-}
-
-VKAPI_ATTR void VKAPI_CALL CmdCopyAccelerationStructureKHR(
- VkCommandBuffer commandBuffer,
- const VkCopyAccelerationStructureInfoKHR* pInfo) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdCopyAccelerationStructureKHR(commandBuffer, pInfo);
-}
-
-VKAPI_ATTR void VKAPI_CALL CmdCopyAccelerationStructureToMemoryKHR(
- VkCommandBuffer commandBuffer,
- const VkCopyAccelerationStructureToMemoryInfoKHR* pInfo) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdCopyAccelerationStructureToMemoryKHR(commandBuffer, pInfo);
-}
-
-VKAPI_ATTR void VKAPI_CALL CmdCopyMemoryToAccelerationStructureKHR(
- VkCommandBuffer commandBuffer,
- const VkCopyMemoryToAccelerationStructureInfoKHR* pInfo) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdCopyMemoryToAccelerationStructureKHR(commandBuffer, pInfo);
-}
-
-VKAPI_ATTR VkDeviceAddress VKAPI_CALL GetAccelerationStructureDeviceAddressKHR(
- VkDevice device,
- const VkAccelerationStructureDeviceAddressInfoKHR* pInfo) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->GetAccelerationStructureDeviceAddressKHR(device, pInfo);
-}
-
-VKAPI_ATTR void VKAPI_CALL CmdWriteAccelerationStructuresPropertiesKHR(
- VkCommandBuffer commandBuffer,
- uint32_t accelerationStructureCount,
- const VkAccelerationStructureKHR* pAccelerationStructures,
- VkQueryType queryType,
- VkQueryPool queryPool,
- uint32_t firstQuery) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdWriteAccelerationStructuresPropertiesKHR(commandBuffer, accelerationStructureCount, pAccelerationStructures, queryType, queryPool, firstQuery);
-}
-
-VKAPI_ATTR void VKAPI_CALL GetDeviceAccelerationStructureCompatibilityKHR(
- VkDevice device,
- const VkAccelerationStructureVersionInfoKHR* pVersionInfo,
- VkAccelerationStructureCompatibilityKHR* pCompatibility) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- disp->GetDeviceAccelerationStructureCompatibilityKHR(device, pVersionInfo, pCompatibility);
-}
-
-VKAPI_ATTR void VKAPI_CALL GetAccelerationStructureBuildSizesKHR(
- VkDevice device,
- VkAccelerationStructureBuildTypeKHR buildType,
- const VkAccelerationStructureBuildGeometryInfoKHR* pBuildInfo,
- const uint32_t* pMaxPrimitiveCounts,
- VkAccelerationStructureBuildSizesInfoKHR* pSizeInfo) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- disp->GetAccelerationStructureBuildSizesKHR(device, buildType, pBuildInfo, pMaxPrimitiveCounts, pSizeInfo);
-}
-
-
-// ---- VK_KHR_ray_tracing_pipeline extension trampoline/terminators
-
-VKAPI_ATTR void VKAPI_CALL CmdTraceRaysKHR(
- VkCommandBuffer commandBuffer,
- const VkStridedDeviceAddressRegionKHR* pRaygenShaderBindingTable,
- const VkStridedDeviceAddressRegionKHR* pMissShaderBindingTable,
- const VkStridedDeviceAddressRegionKHR* pHitShaderBindingTable,
- const VkStridedDeviceAddressRegionKHR* pCallableShaderBindingTable,
- uint32_t width,
- uint32_t height,
- uint32_t depth) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdTraceRaysKHR(commandBuffer, pRaygenShaderBindingTable, pMissShaderBindingTable, pHitShaderBindingTable, pCallableShaderBindingTable, width, height, depth);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL CreateRayTracingPipelinesKHR(
- VkDevice device,
- VkDeferredOperationKHR deferredOperation,
- VkPipelineCache pipelineCache,
- uint32_t createInfoCount,
- const VkRayTracingPipelineCreateInfoKHR* pCreateInfos,
- const VkAllocationCallbacks* pAllocator,
- VkPipeline* pPipelines) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->CreateRayTracingPipelinesKHR(device, deferredOperation, pipelineCache, createInfoCount, pCreateInfos, pAllocator, pPipelines);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL GetRayTracingCaptureReplayShaderGroupHandlesKHR(
- VkDevice device,
- VkPipeline pipeline,
- uint32_t firstGroup,
- uint32_t groupCount,
- size_t dataSize,
- void* pData) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->GetRayTracingCaptureReplayShaderGroupHandlesKHR(device, pipeline, firstGroup, groupCount, dataSize, pData);
-}
-
-VKAPI_ATTR void VKAPI_CALL CmdTraceRaysIndirectKHR(
- VkCommandBuffer commandBuffer,
- const VkStridedDeviceAddressRegionKHR* pRaygenShaderBindingTable,
- const VkStridedDeviceAddressRegionKHR* pMissShaderBindingTable,
- const VkStridedDeviceAddressRegionKHR* pHitShaderBindingTable,
- const VkStridedDeviceAddressRegionKHR* pCallableShaderBindingTable,
- VkDeviceAddress indirectDeviceAddress) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdTraceRaysIndirectKHR(commandBuffer, pRaygenShaderBindingTable, pMissShaderBindingTable, pHitShaderBindingTable, pCallableShaderBindingTable, indirectDeviceAddress);
-}
-
-VKAPI_ATTR VkDeviceSize VKAPI_CALL GetRayTracingShaderGroupStackSizeKHR(
- VkDevice device,
- VkPipeline pipeline,
- uint32_t group,
- VkShaderGroupShaderKHR groupShader) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->GetRayTracingShaderGroupStackSizeKHR(device, pipeline, group, groupShader);
-}
-
-VKAPI_ATTR void VKAPI_CALL CmdSetRayTracingPipelineStackSizeKHR(
- VkCommandBuffer commandBuffer,
- uint32_t pipelineStackSize) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
- disp->CmdSetRayTracingPipelineStackSizeKHR(commandBuffer, pipelineStackSize);
-}
-
-// GPA helpers for extensions
-bool extension_instance_gpa(struct loader_instance *ptr_instance, const char *name, void **addr) {
- *addr = NULL;
-
-
- // ---- VK_KHR_get_physical_device_properties2 extension commands
- if (!strcmp("vkGetPhysicalDeviceFeatures2KHR", name)) {
- *addr = (ptr_instance->enabled_known_extensions.khr_get_physical_device_properties2 == 1)
- ? (void *)vkGetPhysicalDeviceFeatures2
- : NULL;
- return true;
- }
- if (!strcmp("vkGetPhysicalDeviceProperties2KHR", name)) {
- *addr = (ptr_instance->enabled_known_extensions.khr_get_physical_device_properties2 == 1)
- ? (void *)vkGetPhysicalDeviceProperties2
- : NULL;
- return true;
- }
- if (!strcmp("vkGetPhysicalDeviceFormatProperties2KHR", name)) {
- *addr = (ptr_instance->enabled_known_extensions.khr_get_physical_device_properties2 == 1)
- ? (void *)vkGetPhysicalDeviceFormatProperties2
- : NULL;
- return true;
- }
- if (!strcmp("vkGetPhysicalDeviceImageFormatProperties2KHR", name)) {
- *addr = (ptr_instance->enabled_known_extensions.khr_get_physical_device_properties2 == 1)
- ? (void *)vkGetPhysicalDeviceImageFormatProperties2
- : NULL;
- return true;
- }
- if (!strcmp("vkGetPhysicalDeviceQueueFamilyProperties2KHR", name)) {
- *addr = (ptr_instance->enabled_known_extensions.khr_get_physical_device_properties2 == 1)
- ? (void *)vkGetPhysicalDeviceQueueFamilyProperties2
- : NULL;
- return true;
- }
- if (!strcmp("vkGetPhysicalDeviceMemoryProperties2KHR", name)) {
- *addr = (ptr_instance->enabled_known_extensions.khr_get_physical_device_properties2 == 1)
- ? (void *)vkGetPhysicalDeviceMemoryProperties2
- : NULL;
- return true;
- }
- if (!strcmp("vkGetPhysicalDeviceSparseImageFormatProperties2KHR", name)) {
- *addr = (ptr_instance->enabled_known_extensions.khr_get_physical_device_properties2 == 1)
- ? (void *)vkGetPhysicalDeviceSparseImageFormatProperties2
- : NULL;
- return true;
- }
-
- // ---- VK_KHR_device_group extension commands
- if (!strcmp("vkGetDeviceGroupPeerMemoryFeaturesKHR", name)) {
- *addr = (void *)GetDeviceGroupPeerMemoryFeaturesKHR;
- return true;
- }
- if (!strcmp("vkCmdSetDeviceMaskKHR", name)) {
- *addr = (void *)CmdSetDeviceMaskKHR;
- return true;
- }
- if (!strcmp("vkCmdDispatchBaseKHR", name)) {
- *addr = (void *)CmdDispatchBaseKHR;
- return true;
- }
-
- // ---- VK_KHR_maintenance1 extension commands
- if (!strcmp("vkTrimCommandPoolKHR", name)) {
- *addr = (void *)TrimCommandPoolKHR;
- return true;
- }
-
- // ---- VK_KHR_device_group_creation extension commands
- if (!strcmp("vkEnumeratePhysicalDeviceGroupsKHR", name)) {
- *addr = (ptr_instance->enabled_known_extensions.khr_device_group_creation == 1)
- ? (void *)vkEnumeratePhysicalDeviceGroups
- : NULL;
- return true;
- }
-
- // ---- VK_KHR_external_memory_capabilities extension commands
- if (!strcmp("vkGetPhysicalDeviceExternalBufferPropertiesKHR", name)) {
- *addr = (ptr_instance->enabled_known_extensions.khr_external_memory_capabilities == 1)
- ? (void *)vkGetPhysicalDeviceExternalBufferProperties
- : NULL;
- return true;
- }
-
- // ---- VK_KHR_external_memory_win32 extension commands
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- if (!strcmp("vkGetMemoryWin32HandleKHR", name)) {
- *addr = (void *)GetMemoryWin32HandleKHR;
- return true;
- }
-#endif // VK_USE_PLATFORM_WIN32_KHR
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- if (!strcmp("vkGetMemoryWin32HandlePropertiesKHR", name)) {
- *addr = (void *)GetMemoryWin32HandlePropertiesKHR;
- return true;
- }
-#endif // VK_USE_PLATFORM_WIN32_KHR
-
- // ---- VK_KHR_external_memory_fd extension commands
- if (!strcmp("vkGetMemoryFdKHR", name)) {
- *addr = (void *)GetMemoryFdKHR;
- return true;
- }
- if (!strcmp("vkGetMemoryFdPropertiesKHR", name)) {
- *addr = (void *)GetMemoryFdPropertiesKHR;
- return true;
- }
-
- // ---- VK_KHR_external_semaphore_capabilities extension commands
- if (!strcmp("vkGetPhysicalDeviceExternalSemaphorePropertiesKHR", name)) {
- *addr = (ptr_instance->enabled_known_extensions.khr_external_semaphore_capabilities == 1)
- ? (void *)vkGetPhysicalDeviceExternalSemaphoreProperties
- : NULL;
- return true;
- }
-
- // ---- VK_KHR_external_semaphore_win32 extension commands
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- if (!strcmp("vkImportSemaphoreWin32HandleKHR", name)) {
- *addr = (void *)ImportSemaphoreWin32HandleKHR;
- return true;
- }
-#endif // VK_USE_PLATFORM_WIN32_KHR
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- if (!strcmp("vkGetSemaphoreWin32HandleKHR", name)) {
- *addr = (void *)GetSemaphoreWin32HandleKHR;
- return true;
- }
-#endif // VK_USE_PLATFORM_WIN32_KHR
-
- // ---- VK_KHR_external_semaphore_fd extension commands
- if (!strcmp("vkImportSemaphoreFdKHR", name)) {
- *addr = (void *)ImportSemaphoreFdKHR;
- return true;
- }
- if (!strcmp("vkGetSemaphoreFdKHR", name)) {
- *addr = (void *)GetSemaphoreFdKHR;
- return true;
- }
-
- // ---- VK_KHR_push_descriptor extension commands
- if (!strcmp("vkCmdPushDescriptorSetKHR", name)) {
- *addr = (void *)CmdPushDescriptorSetKHR;
- return true;
- }
- if (!strcmp("vkCmdPushDescriptorSetWithTemplateKHR", name)) {
- *addr = (void *)CmdPushDescriptorSetWithTemplateKHR;
- return true;
- }
-
- // ---- VK_KHR_descriptor_update_template extension commands
- if (!strcmp("vkCreateDescriptorUpdateTemplateKHR", name)) {
- *addr = (void *)CreateDescriptorUpdateTemplateKHR;
- return true;
- }
- if (!strcmp("vkDestroyDescriptorUpdateTemplateKHR", name)) {
- *addr = (void *)DestroyDescriptorUpdateTemplateKHR;
- return true;
- }
- if (!strcmp("vkUpdateDescriptorSetWithTemplateKHR", name)) {
- *addr = (void *)UpdateDescriptorSetWithTemplateKHR;
- return true;
- }
-
- // ---- VK_KHR_create_renderpass2 extension commands
- if (!strcmp("vkCreateRenderPass2KHR", name)) {
- *addr = (void *)CreateRenderPass2KHR;
- return true;
- }
- if (!strcmp("vkCmdBeginRenderPass2KHR", name)) {
- *addr = (void *)CmdBeginRenderPass2KHR;
- return true;
- }
- if (!strcmp("vkCmdNextSubpass2KHR", name)) {
- *addr = (void *)CmdNextSubpass2KHR;
- return true;
- }
- if (!strcmp("vkCmdEndRenderPass2KHR", name)) {
- *addr = (void *)CmdEndRenderPass2KHR;
- return true;
- }
-
- // ---- VK_KHR_shared_presentable_image extension commands
- if (!strcmp("vkGetSwapchainStatusKHR", name)) {
- *addr = (void *)GetSwapchainStatusKHR;
- return true;
- }
-
- // ---- VK_KHR_external_fence_capabilities extension commands
- if (!strcmp("vkGetPhysicalDeviceExternalFencePropertiesKHR", name)) {
- *addr = (ptr_instance->enabled_known_extensions.khr_external_fence_capabilities == 1)
- ? (void *)vkGetPhysicalDeviceExternalFenceProperties
- : NULL;
- return true;
- }
-
- // ---- VK_KHR_external_fence_win32 extension commands
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- if (!strcmp("vkImportFenceWin32HandleKHR", name)) {
- *addr = (void *)ImportFenceWin32HandleKHR;
- return true;
- }
-#endif // VK_USE_PLATFORM_WIN32_KHR
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- if (!strcmp("vkGetFenceWin32HandleKHR", name)) {
- *addr = (void *)GetFenceWin32HandleKHR;
- return true;
- }
-#endif // VK_USE_PLATFORM_WIN32_KHR
-
- // ---- VK_KHR_external_fence_fd extension commands
- if (!strcmp("vkImportFenceFdKHR", name)) {
- *addr = (void *)ImportFenceFdKHR;
- return true;
- }
- if (!strcmp("vkGetFenceFdKHR", name)) {
- *addr = (void *)GetFenceFdKHR;
- return true;
- }
-
- // ---- VK_KHR_performance_query extension commands
- if (!strcmp("vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR", name)) {
- *addr = (void *)EnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR;
- return true;
- }
- if (!strcmp("vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR", name)) {
- *addr = (void *)GetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR;
- return true;
- }
- if (!strcmp("vkAcquireProfilingLockKHR", name)) {
- *addr = (void *)AcquireProfilingLockKHR;
- return true;
- }
- if (!strcmp("vkReleaseProfilingLockKHR", name)) {
- *addr = (void *)ReleaseProfilingLockKHR;
- return true;
- }
-
- // ---- VK_KHR_get_memory_requirements2 extension commands
- if (!strcmp("vkGetImageMemoryRequirements2KHR", name)) {
- *addr = (void *)GetImageMemoryRequirements2KHR;
- return true;
- }
- if (!strcmp("vkGetBufferMemoryRequirements2KHR", name)) {
- *addr = (void *)GetBufferMemoryRequirements2KHR;
- return true;
- }
- if (!strcmp("vkGetImageSparseMemoryRequirements2KHR", name)) {
- *addr = (void *)GetImageSparseMemoryRequirements2KHR;
- return true;
- }
-
- // ---- VK_KHR_sampler_ycbcr_conversion extension commands
- if (!strcmp("vkCreateSamplerYcbcrConversionKHR", name)) {
- *addr = (void *)CreateSamplerYcbcrConversionKHR;
- return true;
- }
- if (!strcmp("vkDestroySamplerYcbcrConversionKHR", name)) {
- *addr = (void *)DestroySamplerYcbcrConversionKHR;
- return true;
- }
-
- // ---- VK_KHR_bind_memory2 extension commands
- if (!strcmp("vkBindBufferMemory2KHR", name)) {
- *addr = (void *)BindBufferMemory2KHR;
- return true;
- }
- if (!strcmp("vkBindImageMemory2KHR", name)) {
- *addr = (void *)BindImageMemory2KHR;
- return true;
- }
-
- // ---- VK_KHR_maintenance3 extension commands
- if (!strcmp("vkGetDescriptorSetLayoutSupportKHR", name)) {
- *addr = (void *)GetDescriptorSetLayoutSupportKHR;
- return true;
- }
-
- // ---- VK_KHR_draw_indirect_count extension commands
- if (!strcmp("vkCmdDrawIndirectCountKHR", name)) {
- *addr = (void *)CmdDrawIndirectCountKHR;
- return true;
- }
- if (!strcmp("vkCmdDrawIndexedIndirectCountKHR", name)) {
- *addr = (void *)CmdDrawIndexedIndirectCountKHR;
- return true;
- }
-
- // ---- VK_KHR_timeline_semaphore extension commands
- if (!strcmp("vkGetSemaphoreCounterValueKHR", name)) {
- *addr = (void *)GetSemaphoreCounterValueKHR;
- return true;
- }
- if (!strcmp("vkWaitSemaphoresKHR", name)) {
- *addr = (void *)WaitSemaphoresKHR;
- return true;
- }
- if (!strcmp("vkSignalSemaphoreKHR", name)) {
- *addr = (void *)SignalSemaphoreKHR;
- return true;
- }
-
- // ---- VK_KHR_fragment_shading_rate extension commands
- if (!strcmp("vkGetPhysicalDeviceFragmentShadingRatesKHR", name)) {
- *addr = (void *)GetPhysicalDeviceFragmentShadingRatesKHR;
- return true;
- }
- if (!strcmp("vkCmdSetFragmentShadingRateKHR", name)) {
- *addr = (void *)CmdSetFragmentShadingRateKHR;
- return true;
- }
-
- // ---- VK_KHR_buffer_device_address extension commands
- if (!strcmp("vkGetBufferDeviceAddressKHR", name)) {
- *addr = (void *)GetBufferDeviceAddressKHR;
- return true;
- }
- if (!strcmp("vkGetBufferOpaqueCaptureAddressKHR", name)) {
- *addr = (void *)GetBufferOpaqueCaptureAddressKHR;
- return true;
- }
- if (!strcmp("vkGetDeviceMemoryOpaqueCaptureAddressKHR", name)) {
- *addr = (void *)GetDeviceMemoryOpaqueCaptureAddressKHR;
- return true;
- }
-
- // ---- VK_KHR_deferred_host_operations extension commands
- if (!strcmp("vkCreateDeferredOperationKHR", name)) {
- *addr = (void *)CreateDeferredOperationKHR;
- return true;
- }
- if (!strcmp("vkDestroyDeferredOperationKHR", name)) {
- *addr = (void *)DestroyDeferredOperationKHR;
- return true;
- }
- if (!strcmp("vkGetDeferredOperationMaxConcurrencyKHR", name)) {
- *addr = (void *)GetDeferredOperationMaxConcurrencyKHR;
- return true;
- }
- if (!strcmp("vkGetDeferredOperationResultKHR", name)) {
- *addr = (void *)GetDeferredOperationResultKHR;
- return true;
- }
- if (!strcmp("vkDeferredOperationJoinKHR", name)) {
- *addr = (void *)DeferredOperationJoinKHR;
- return true;
- }
-
- // ---- VK_KHR_pipeline_executable_properties extension commands
- if (!strcmp("vkGetPipelineExecutablePropertiesKHR", name)) {
- *addr = (void *)GetPipelineExecutablePropertiesKHR;
- return true;
- }
- if (!strcmp("vkGetPipelineExecutableStatisticsKHR", name)) {
- *addr = (void *)GetPipelineExecutableStatisticsKHR;
- return true;
- }
- if (!strcmp("vkGetPipelineExecutableInternalRepresentationsKHR", name)) {
- *addr = (void *)GetPipelineExecutableInternalRepresentationsKHR;
- return true;
- }
-
- // ---- VK_KHR_copy_commands2 extension commands
- if (!strcmp("vkCmdCopyBuffer2KHR", name)) {
- *addr = (void *)CmdCopyBuffer2KHR;
- return true;
- }
- if (!strcmp("vkCmdCopyImage2KHR", name)) {
- *addr = (void *)CmdCopyImage2KHR;
- return true;
- }
- if (!strcmp("vkCmdCopyBufferToImage2KHR", name)) {
- *addr = (void *)CmdCopyBufferToImage2KHR;
- return true;
- }
- if (!strcmp("vkCmdCopyImageToBuffer2KHR", name)) {
- *addr = (void *)CmdCopyImageToBuffer2KHR;
- return true;
- }
- if (!strcmp("vkCmdBlitImage2KHR", name)) {
- *addr = (void *)CmdBlitImage2KHR;
- return true;
- }
- if (!strcmp("vkCmdResolveImage2KHR", name)) {
- *addr = (void *)CmdResolveImage2KHR;
- return true;
- }
-
- // ---- VK_EXT_debug_marker extension commands
- if (!strcmp("vkDebugMarkerSetObjectTagEXT", name)) {
- *addr = (void *)DebugMarkerSetObjectTagEXT;
- return true;
- }
- if (!strcmp("vkDebugMarkerSetObjectNameEXT", name)) {
- *addr = (void *)DebugMarkerSetObjectNameEXT;
- return true;
- }
- if (!strcmp("vkCmdDebugMarkerBeginEXT", name)) {
- *addr = (void *)CmdDebugMarkerBeginEXT;
- return true;
- }
- if (!strcmp("vkCmdDebugMarkerEndEXT", name)) {
- *addr = (void *)CmdDebugMarkerEndEXT;
- return true;
- }
- if (!strcmp("vkCmdDebugMarkerInsertEXT", name)) {
- *addr = (void *)CmdDebugMarkerInsertEXT;
- return true;
- }
-
- // ---- VK_EXT_transform_feedback extension commands
- if (!strcmp("vkCmdBindTransformFeedbackBuffersEXT", name)) {
- *addr = (void *)CmdBindTransformFeedbackBuffersEXT;
- return true;
- }
- if (!strcmp("vkCmdBeginTransformFeedbackEXT", name)) {
- *addr = (void *)CmdBeginTransformFeedbackEXT;
- return true;
- }
- if (!strcmp("vkCmdEndTransformFeedbackEXT", name)) {
- *addr = (void *)CmdEndTransformFeedbackEXT;
- return true;
- }
- if (!strcmp("vkCmdBeginQueryIndexedEXT", name)) {
- *addr = (void *)CmdBeginQueryIndexedEXT;
- return true;
- }
- if (!strcmp("vkCmdEndQueryIndexedEXT", name)) {
- *addr = (void *)CmdEndQueryIndexedEXT;
- return true;
- }
- if (!strcmp("vkCmdDrawIndirectByteCountEXT", name)) {
- *addr = (void *)CmdDrawIndirectByteCountEXT;
- return true;
- }
-
- // ---- VK_NVX_image_view_handle extension commands
- if (!strcmp("vkGetImageViewHandleNVX", name)) {
- *addr = (void *)GetImageViewHandleNVX;
- return true;
- }
- if (!strcmp("vkGetImageViewAddressNVX", name)) {
- *addr = (void *)GetImageViewAddressNVX;
- return true;
- }
-
- // ---- VK_AMD_draw_indirect_count extension commands
- if (!strcmp("vkCmdDrawIndirectCountAMD", name)) {
- *addr = (void *)CmdDrawIndirectCountAMD;
- return true;
- }
- if (!strcmp("vkCmdDrawIndexedIndirectCountAMD", name)) {
- *addr = (void *)CmdDrawIndexedIndirectCountAMD;
- return true;
- }
-
- // ---- VK_AMD_shader_info extension commands
- if (!strcmp("vkGetShaderInfoAMD", name)) {
- *addr = (void *)GetShaderInfoAMD;
- return true;
- }
-
- // ---- VK_NV_external_memory_capabilities extension commands
- if (!strcmp("vkGetPhysicalDeviceExternalImageFormatPropertiesNV", name)) {
- *addr = (ptr_instance->enabled_known_extensions.nv_external_memory_capabilities == 1)
- ? (void *)GetPhysicalDeviceExternalImageFormatPropertiesNV
- : NULL;
- return true;
- }
-
- // ---- VK_NV_external_memory_win32 extension commands
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- if (!strcmp("vkGetMemoryWin32HandleNV", name)) {
- *addr = (void *)GetMemoryWin32HandleNV;
- return true;
- }
-#endif // VK_USE_PLATFORM_WIN32_KHR
-
- // ---- VK_NN_vi_surface extension commands
-#ifdef VK_USE_PLATFORM_VI_NN
- if (!strcmp("vkCreateViSurfaceNN", name)) {
- *addr = (ptr_instance->enabled_known_extensions.nn_vi_surface == 1)
- ? (void *)CreateViSurfaceNN
- : NULL;
- return true;
- }
-#endif // VK_USE_PLATFORM_VI_NN
-
- // ---- VK_EXT_conditional_rendering extension commands
- if (!strcmp("vkCmdBeginConditionalRenderingEXT", name)) {
- *addr = (void *)CmdBeginConditionalRenderingEXT;
- return true;
- }
- if (!strcmp("vkCmdEndConditionalRenderingEXT", name)) {
- *addr = (void *)CmdEndConditionalRenderingEXT;
- return true;
- }
-
- // ---- VK_NV_clip_space_w_scaling extension commands
- if (!strcmp("vkCmdSetViewportWScalingNV", name)) {
- *addr = (void *)CmdSetViewportWScalingNV;
- return true;
- }
-
- // ---- VK_EXT_direct_mode_display extension commands
- if (!strcmp("vkReleaseDisplayEXT", name)) {
- *addr = (ptr_instance->enabled_known_extensions.ext_direct_mode_display == 1)
- ? (void *)ReleaseDisplayEXT
- : NULL;
- return true;
- }
-
- // ---- VK_EXT_acquire_xlib_display extension commands
-#ifdef VK_USE_PLATFORM_XLIB_XRANDR_EXT
- if (!strcmp("vkAcquireXlibDisplayEXT", name)) {
- *addr = (ptr_instance->enabled_known_extensions.ext_acquire_xlib_display == 1)
- ? (void *)AcquireXlibDisplayEXT
- : NULL;
- return true;
- }
-#endif // VK_USE_PLATFORM_XLIB_XRANDR_EXT
-#ifdef VK_USE_PLATFORM_XLIB_XRANDR_EXT
- if (!strcmp("vkGetRandROutputDisplayEXT", name)) {
- *addr = (ptr_instance->enabled_known_extensions.ext_acquire_xlib_display == 1)
- ? (void *)GetRandROutputDisplayEXT
- : NULL;
- return true;
- }
-#endif // VK_USE_PLATFORM_XLIB_XRANDR_EXT
-
- // ---- VK_EXT_display_surface_counter extension commands
- if (!strcmp("vkGetPhysicalDeviceSurfaceCapabilities2EXT", name)) {
- *addr = (ptr_instance->enabled_known_extensions.ext_display_surface_counter == 1)
- ? (void *)GetPhysicalDeviceSurfaceCapabilities2EXT
- : NULL;
- return true;
- }
-
- // ---- VK_EXT_display_control extension commands
- if (!strcmp("vkDisplayPowerControlEXT", name)) {
- *addr = (void *)DisplayPowerControlEXT;
- return true;
- }
- if (!strcmp("vkRegisterDeviceEventEXT", name)) {
- *addr = (void *)RegisterDeviceEventEXT;
- return true;
- }
- if (!strcmp("vkRegisterDisplayEventEXT", name)) {
- *addr = (void *)RegisterDisplayEventEXT;
- return true;
- }
- if (!strcmp("vkGetSwapchainCounterEXT", name)) {
- *addr = (void *)GetSwapchainCounterEXT;
- return true;
- }
-
- // ---- VK_GOOGLE_display_timing extension commands
- if (!strcmp("vkGetRefreshCycleDurationGOOGLE", name)) {
- *addr = (void *)GetRefreshCycleDurationGOOGLE;
- return true;
- }
- if (!strcmp("vkGetPastPresentationTimingGOOGLE", name)) {
- *addr = (void *)GetPastPresentationTimingGOOGLE;
- return true;
- }
-
- // ---- VK_EXT_discard_rectangles extension commands
- if (!strcmp("vkCmdSetDiscardRectangleEXT", name)) {
- *addr = (void *)CmdSetDiscardRectangleEXT;
- return true;
- }
-
- // ---- VK_EXT_hdr_metadata extension commands
- if (!strcmp("vkSetHdrMetadataEXT", name)) {
- *addr = (void *)SetHdrMetadataEXT;
- return true;
- }
-
- // ---- VK_EXT_debug_utils extension commands
- if (!strcmp("vkSetDebugUtilsObjectNameEXT", name)) {
- *addr = (ptr_instance->enabled_known_extensions.ext_debug_utils == 1)
- ? (void *)SetDebugUtilsObjectNameEXT
- : NULL;
- return true;
- }
- if (!strcmp("vkSetDebugUtilsObjectTagEXT", name)) {
- *addr = (ptr_instance->enabled_known_extensions.ext_debug_utils == 1)
- ? (void *)SetDebugUtilsObjectTagEXT
- : NULL;
- return true;
- }
- if (!strcmp("vkQueueBeginDebugUtilsLabelEXT", name)) {
- *addr = (ptr_instance->enabled_known_extensions.ext_debug_utils == 1)
- ? (void *)QueueBeginDebugUtilsLabelEXT
- : NULL;
- return true;
- }
- if (!strcmp("vkQueueEndDebugUtilsLabelEXT", name)) {
- *addr = (ptr_instance->enabled_known_extensions.ext_debug_utils == 1)
- ? (void *)QueueEndDebugUtilsLabelEXT
- : NULL;
- return true;
- }
- if (!strcmp("vkQueueInsertDebugUtilsLabelEXT", name)) {
- *addr = (ptr_instance->enabled_known_extensions.ext_debug_utils == 1)
- ? (void *)QueueInsertDebugUtilsLabelEXT
- : NULL;
- return true;
- }
- if (!strcmp("vkCmdBeginDebugUtilsLabelEXT", name)) {
- *addr = (ptr_instance->enabled_known_extensions.ext_debug_utils == 1)
- ? (void *)CmdBeginDebugUtilsLabelEXT
- : NULL;
- return true;
- }
- if (!strcmp("vkCmdEndDebugUtilsLabelEXT", name)) {
- *addr = (ptr_instance->enabled_known_extensions.ext_debug_utils == 1)
- ? (void *)CmdEndDebugUtilsLabelEXT
- : NULL;
- return true;
- }
- if (!strcmp("vkCmdInsertDebugUtilsLabelEXT", name)) {
- *addr = (ptr_instance->enabled_known_extensions.ext_debug_utils == 1)
- ? (void *)CmdInsertDebugUtilsLabelEXT
- : NULL;
- return true;
- }
-
- // ---- VK_ANDROID_external_memory_android_hardware_buffer extension commands
-#ifdef VK_USE_PLATFORM_ANDROID_KHR
- if (!strcmp("vkGetAndroidHardwareBufferPropertiesANDROID", name)) {
- *addr = (void *)GetAndroidHardwareBufferPropertiesANDROID;
- return true;
- }
-#endif // VK_USE_PLATFORM_ANDROID_KHR
-#ifdef VK_USE_PLATFORM_ANDROID_KHR
- if (!strcmp("vkGetMemoryAndroidHardwareBufferANDROID", name)) {
- *addr = (void *)GetMemoryAndroidHardwareBufferANDROID;
- return true;
- }
-#endif // VK_USE_PLATFORM_ANDROID_KHR
-
- // ---- VK_EXT_sample_locations extension commands
- if (!strcmp("vkCmdSetSampleLocationsEXT", name)) {
- *addr = (void *)CmdSetSampleLocationsEXT;
- return true;
- }
- if (!strcmp("vkGetPhysicalDeviceMultisamplePropertiesEXT", name)) {
- *addr = (void *)GetPhysicalDeviceMultisamplePropertiesEXT;
- return true;
- }
-
- // ---- VK_EXT_image_drm_format_modifier extension commands
- if (!strcmp("vkGetImageDrmFormatModifierPropertiesEXT", name)) {
- *addr = (void *)GetImageDrmFormatModifierPropertiesEXT;
- return true;
- }
-
- // ---- VK_EXT_validation_cache extension commands
- if (!strcmp("vkCreateValidationCacheEXT", name)) {
- *addr = (void *)CreateValidationCacheEXT;
- return true;
- }
- if (!strcmp("vkDestroyValidationCacheEXT", name)) {
- *addr = (void *)DestroyValidationCacheEXT;
- return true;
- }
- if (!strcmp("vkMergeValidationCachesEXT", name)) {
- *addr = (void *)MergeValidationCachesEXT;
- return true;
- }
- if (!strcmp("vkGetValidationCacheDataEXT", name)) {
- *addr = (void *)GetValidationCacheDataEXT;
- return true;
- }
-
- // ---- VK_NV_shading_rate_image extension commands
- if (!strcmp("vkCmdBindShadingRateImageNV", name)) {
- *addr = (void *)CmdBindShadingRateImageNV;
- return true;
- }
- if (!strcmp("vkCmdSetViewportShadingRatePaletteNV", name)) {
- *addr = (void *)CmdSetViewportShadingRatePaletteNV;
- return true;
- }
- if (!strcmp("vkCmdSetCoarseSampleOrderNV", name)) {
- *addr = (void *)CmdSetCoarseSampleOrderNV;
- return true;
- }
-
- // ---- VK_NV_ray_tracing extension commands
- if (!strcmp("vkCreateAccelerationStructureNV", name)) {
- *addr = (void *)CreateAccelerationStructureNV;
- return true;
- }
- if (!strcmp("vkDestroyAccelerationStructureNV", name)) {
- *addr = (void *)DestroyAccelerationStructureNV;
- return true;
- }
- if (!strcmp("vkGetAccelerationStructureMemoryRequirementsNV", name)) {
- *addr = (void *)GetAccelerationStructureMemoryRequirementsNV;
- return true;
- }
- if (!strcmp("vkBindAccelerationStructureMemoryNV", name)) {
- *addr = (void *)BindAccelerationStructureMemoryNV;
- return true;
- }
- if (!strcmp("vkCmdBuildAccelerationStructureNV", name)) {
- *addr = (void *)CmdBuildAccelerationStructureNV;
- return true;
- }
- if (!strcmp("vkCmdCopyAccelerationStructureNV", name)) {
- *addr = (void *)CmdCopyAccelerationStructureNV;
- return true;
- }
- if (!strcmp("vkCmdTraceRaysNV", name)) {
- *addr = (void *)CmdTraceRaysNV;
- return true;
- }
- if (!strcmp("vkCreateRayTracingPipelinesNV", name)) {
- *addr = (void *)CreateRayTracingPipelinesNV;
- return true;
- }
- if (!strcmp("vkGetRayTracingShaderGroupHandlesKHR", name)) {
- *addr = (void *)GetRayTracingShaderGroupHandlesKHR;
- return true;
- }
- if (!strcmp("vkGetRayTracingShaderGroupHandlesNV", name)) {
- *addr = (void *)GetRayTracingShaderGroupHandlesNV;
- return true;
- }
- if (!strcmp("vkGetAccelerationStructureHandleNV", name)) {
- *addr = (void *)GetAccelerationStructureHandleNV;
- return true;
- }
- if (!strcmp("vkCmdWriteAccelerationStructuresPropertiesNV", name)) {
- *addr = (void *)CmdWriteAccelerationStructuresPropertiesNV;
- return true;
- }
- if (!strcmp("vkCompileDeferredNV", name)) {
- *addr = (void *)CompileDeferredNV;
- return true;
- }
-
- // ---- VK_EXT_external_memory_host extension commands
- if (!strcmp("vkGetMemoryHostPointerPropertiesEXT", name)) {
- *addr = (void *)GetMemoryHostPointerPropertiesEXT;
- return true;
- }
-
- // ---- VK_AMD_buffer_marker extension commands
- if (!strcmp("vkCmdWriteBufferMarkerAMD", name)) {
- *addr = (void *)CmdWriteBufferMarkerAMD;
- return true;
- }
-
- // ---- VK_EXT_calibrated_timestamps extension commands
- if (!strcmp("vkGetPhysicalDeviceCalibrateableTimeDomainsEXT", name)) {
- *addr = (void *)GetPhysicalDeviceCalibrateableTimeDomainsEXT;
- return true;
- }
- if (!strcmp("vkGetCalibratedTimestampsEXT", name)) {
- *addr = (void *)GetCalibratedTimestampsEXT;
- return true;
- }
-
- // ---- VK_NV_mesh_shader extension commands
- if (!strcmp("vkCmdDrawMeshTasksNV", name)) {
- *addr = (void *)CmdDrawMeshTasksNV;
- return true;
- }
- if (!strcmp("vkCmdDrawMeshTasksIndirectNV", name)) {
- *addr = (void *)CmdDrawMeshTasksIndirectNV;
- return true;
- }
- if (!strcmp("vkCmdDrawMeshTasksIndirectCountNV", name)) {
- *addr = (void *)CmdDrawMeshTasksIndirectCountNV;
- return true;
- }
-
- // ---- VK_NV_scissor_exclusive extension commands
- if (!strcmp("vkCmdSetExclusiveScissorNV", name)) {
- *addr = (void *)CmdSetExclusiveScissorNV;
- return true;
- }
-
- // ---- VK_NV_device_diagnostic_checkpoints extension commands
- if (!strcmp("vkCmdSetCheckpointNV", name)) {
- *addr = (void *)CmdSetCheckpointNV;
- return true;
- }
- if (!strcmp("vkGetQueueCheckpointDataNV", name)) {
- *addr = (void *)GetQueueCheckpointDataNV;
- return true;
- }
-
- // ---- VK_INTEL_performance_query extension commands
- if (!strcmp("vkInitializePerformanceApiINTEL", name)) {
- *addr = (void *)InitializePerformanceApiINTEL;
- return true;
- }
- if (!strcmp("vkUninitializePerformanceApiINTEL", name)) {
- *addr = (void *)UninitializePerformanceApiINTEL;
- return true;
- }
- if (!strcmp("vkCmdSetPerformanceMarkerINTEL", name)) {
- *addr = (void *)CmdSetPerformanceMarkerINTEL;
- return true;
- }
- if (!strcmp("vkCmdSetPerformanceStreamMarkerINTEL", name)) {
- *addr = (void *)CmdSetPerformanceStreamMarkerINTEL;
- return true;
- }
- if (!strcmp("vkCmdSetPerformanceOverrideINTEL", name)) {
- *addr = (void *)CmdSetPerformanceOverrideINTEL;
- return true;
- }
- if (!strcmp("vkAcquirePerformanceConfigurationINTEL", name)) {
- *addr = (void *)AcquirePerformanceConfigurationINTEL;
- return true;
- }
- if (!strcmp("vkReleasePerformanceConfigurationINTEL", name)) {
- *addr = (void *)ReleasePerformanceConfigurationINTEL;
- return true;
- }
- if (!strcmp("vkQueueSetPerformanceConfigurationINTEL", name)) {
- *addr = (void *)QueueSetPerformanceConfigurationINTEL;
- return true;
- }
- if (!strcmp("vkGetPerformanceParameterINTEL", name)) {
- *addr = (void *)GetPerformanceParameterINTEL;
- return true;
- }
-
- // ---- VK_AMD_display_native_hdr extension commands
- if (!strcmp("vkSetLocalDimmingAMD", name)) {
- *addr = (void *)SetLocalDimmingAMD;
- return true;
- }
-
- // ---- VK_EXT_buffer_device_address extension commands
- if (!strcmp("vkGetBufferDeviceAddressEXT", name)) {
- *addr = (void *)GetBufferDeviceAddressEXT;
- return true;
- }
-
- // ---- VK_EXT_tooling_info extension commands
- if (!strcmp("vkGetPhysicalDeviceToolPropertiesEXT", name)) {
- *addr = (void *)GetPhysicalDeviceToolPropertiesEXT;
- return true;
- }
-
- // ---- VK_NV_cooperative_matrix extension commands
- if (!strcmp("vkGetPhysicalDeviceCooperativeMatrixPropertiesNV", name)) {
- *addr = (void *)GetPhysicalDeviceCooperativeMatrixPropertiesNV;
- return true;
- }
-
- // ---- VK_NV_coverage_reduction_mode extension commands
- if (!strcmp("vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV", name)) {
- *addr = (void *)GetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV;
- return true;
- }
-
- // ---- VK_EXT_full_screen_exclusive extension commands
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- if (!strcmp("vkGetPhysicalDeviceSurfacePresentModes2EXT", name)) {
- *addr = (void *)GetPhysicalDeviceSurfacePresentModes2EXT;
- return true;
- }
-#endif // VK_USE_PLATFORM_WIN32_KHR
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- if (!strcmp("vkAcquireFullScreenExclusiveModeEXT", name)) {
- *addr = (void *)AcquireFullScreenExclusiveModeEXT;
- return true;
- }
-#endif // VK_USE_PLATFORM_WIN32_KHR
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- if (!strcmp("vkReleaseFullScreenExclusiveModeEXT", name)) {
- *addr = (void *)ReleaseFullScreenExclusiveModeEXT;
- return true;
- }
-#endif // VK_USE_PLATFORM_WIN32_KHR
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- if (!strcmp("vkGetDeviceGroupSurfacePresentModes2EXT", name)) {
- *addr = (void *)GetDeviceGroupSurfacePresentModes2EXT;
- return true;
- }
-#endif // VK_USE_PLATFORM_WIN32_KHR
-
- // ---- VK_EXT_line_rasterization extension commands
- if (!strcmp("vkCmdSetLineStippleEXT", name)) {
- *addr = (void *)CmdSetLineStippleEXT;
- return true;
- }
-
- // ---- VK_EXT_host_query_reset extension commands
- if (!strcmp("vkResetQueryPoolEXT", name)) {
- *addr = (void *)ResetQueryPoolEXT;
- return true;
- }
-
- // ---- VK_EXT_extended_dynamic_state extension commands
- if (!strcmp("vkCmdSetCullModeEXT", name)) {
- *addr = (void *)CmdSetCullModeEXT;
- return true;
- }
- if (!strcmp("vkCmdSetFrontFaceEXT", name)) {
- *addr = (void *)CmdSetFrontFaceEXT;
- return true;
- }
- if (!strcmp("vkCmdSetPrimitiveTopologyEXT", name)) {
- *addr = (void *)CmdSetPrimitiveTopologyEXT;
- return true;
- }
- if (!strcmp("vkCmdSetViewportWithCountEXT", name)) {
- *addr = (void *)CmdSetViewportWithCountEXT;
- return true;
- }
- if (!strcmp("vkCmdSetScissorWithCountEXT", name)) {
- *addr = (void *)CmdSetScissorWithCountEXT;
- return true;
- }
- if (!strcmp("vkCmdBindVertexBuffers2EXT", name)) {
- *addr = (void *)CmdBindVertexBuffers2EXT;
- return true;
- }
- if (!strcmp("vkCmdSetDepthTestEnableEXT", name)) {
- *addr = (void *)CmdSetDepthTestEnableEXT;
- return true;
- }
- if (!strcmp("vkCmdSetDepthWriteEnableEXT", name)) {
- *addr = (void *)CmdSetDepthWriteEnableEXT;
- return true;
- }
- if (!strcmp("vkCmdSetDepthCompareOpEXT", name)) {
- *addr = (void *)CmdSetDepthCompareOpEXT;
- return true;
- }
- if (!strcmp("vkCmdSetDepthBoundsTestEnableEXT", name)) {
- *addr = (void *)CmdSetDepthBoundsTestEnableEXT;
- return true;
- }
- if (!strcmp("vkCmdSetStencilTestEnableEXT", name)) {
- *addr = (void *)CmdSetStencilTestEnableEXT;
- return true;
- }
- if (!strcmp("vkCmdSetStencilOpEXT", name)) {
- *addr = (void *)CmdSetStencilOpEXT;
- return true;
- }
-
- // ---- VK_NV_device_generated_commands extension commands
- if (!strcmp("vkGetGeneratedCommandsMemoryRequirementsNV", name)) {
- *addr = (void *)GetGeneratedCommandsMemoryRequirementsNV;
- return true;
- }
- if (!strcmp("vkCmdPreprocessGeneratedCommandsNV", name)) {
- *addr = (void *)CmdPreprocessGeneratedCommandsNV;
- return true;
- }
- if (!strcmp("vkCmdExecuteGeneratedCommandsNV", name)) {
- *addr = (void *)CmdExecuteGeneratedCommandsNV;
- return true;
- }
- if (!strcmp("vkCmdBindPipelineShaderGroupNV", name)) {
- *addr = (void *)CmdBindPipelineShaderGroupNV;
- return true;
- }
- if (!strcmp("vkCreateIndirectCommandsLayoutNV", name)) {
- *addr = (void *)CreateIndirectCommandsLayoutNV;
- return true;
- }
- if (!strcmp("vkDestroyIndirectCommandsLayoutNV", name)) {
- *addr = (void *)DestroyIndirectCommandsLayoutNV;
- return true;
- }
-
- // ---- VK_EXT_private_data extension commands
- if (!strcmp("vkCreatePrivateDataSlotEXT", name)) {
- *addr = (void *)CreatePrivateDataSlotEXT;
- return true;
- }
- if (!strcmp("vkDestroyPrivateDataSlotEXT", name)) {
- *addr = (void *)DestroyPrivateDataSlotEXT;
- return true;
- }
- if (!strcmp("vkSetPrivateDataEXT", name)) {
- *addr = (void *)SetPrivateDataEXT;
- return true;
- }
- if (!strcmp("vkGetPrivateDataEXT", name)) {
- *addr = (void *)GetPrivateDataEXT;
- return true;
- }
-
- // ---- VK_NV_fragment_shading_rate_enums extension commands
- if (!strcmp("vkCmdSetFragmentShadingRateEnumNV", name)) {
- *addr = (void *)CmdSetFragmentShadingRateEnumNV;
- return true;
- }
-
- // ---- VK_KHR_acceleration_structure extension commands
- if (!strcmp("vkCreateAccelerationStructureKHR", name)) {
- *addr = (void *)CreateAccelerationStructureKHR;
- return true;
- }
- if (!strcmp("vkDestroyAccelerationStructureKHR", name)) {
- *addr = (void *)DestroyAccelerationStructureKHR;
- return true;
- }
- if (!strcmp("vkCmdBuildAccelerationStructuresKHR", name)) {
- *addr = (void *)CmdBuildAccelerationStructuresKHR;
- return true;
- }
- if (!strcmp("vkCmdBuildAccelerationStructuresIndirectKHR", name)) {
- *addr = (void *)CmdBuildAccelerationStructuresIndirectKHR;
- return true;
- }
- if (!strcmp("vkBuildAccelerationStructuresKHR", name)) {
- *addr = (void *)BuildAccelerationStructuresKHR;
- return true;
- }
- if (!strcmp("vkCopyAccelerationStructureKHR", name)) {
- *addr = (void *)CopyAccelerationStructureKHR;
- return true;
- }
- if (!strcmp("vkCopyAccelerationStructureToMemoryKHR", name)) {
- *addr = (void *)CopyAccelerationStructureToMemoryKHR;
- return true;
- }
- if (!strcmp("vkCopyMemoryToAccelerationStructureKHR", name)) {
- *addr = (void *)CopyMemoryToAccelerationStructureKHR;
- return true;
- }
- if (!strcmp("vkWriteAccelerationStructuresPropertiesKHR", name)) {
- *addr = (void *)WriteAccelerationStructuresPropertiesKHR;
- return true;
- }
- if (!strcmp("vkCmdCopyAccelerationStructureKHR", name)) {
- *addr = (void *)CmdCopyAccelerationStructureKHR;
- return true;
- }
- if (!strcmp("vkCmdCopyAccelerationStructureToMemoryKHR", name)) {
- *addr = (void *)CmdCopyAccelerationStructureToMemoryKHR;
- return true;
- }
- if (!strcmp("vkCmdCopyMemoryToAccelerationStructureKHR", name)) {
- *addr = (void *)CmdCopyMemoryToAccelerationStructureKHR;
- return true;
- }
- if (!strcmp("vkGetAccelerationStructureDeviceAddressKHR", name)) {
- *addr = (void *)GetAccelerationStructureDeviceAddressKHR;
- return true;
- }
- if (!strcmp("vkCmdWriteAccelerationStructuresPropertiesKHR", name)) {
- *addr = (void *)CmdWriteAccelerationStructuresPropertiesKHR;
- return true;
- }
- if (!strcmp("vkGetDeviceAccelerationStructureCompatibilityKHR", name)) {
- *addr = (void *)GetDeviceAccelerationStructureCompatibilityKHR;
- return true;
- }
- if (!strcmp("vkGetAccelerationStructureBuildSizesKHR", name)) {
- *addr = (void *)GetAccelerationStructureBuildSizesKHR;
- return true;
- }
-
- // ---- VK_KHR_ray_tracing_pipeline extension commands
- if (!strcmp("vkCmdTraceRaysKHR", name)) {
- *addr = (void *)CmdTraceRaysKHR;
- return true;
- }
- if (!strcmp("vkCreateRayTracingPipelinesKHR", name)) {
- *addr = (void *)CreateRayTracingPipelinesKHR;
- return true;
- }
- if (!strcmp("vkGetRayTracingCaptureReplayShaderGroupHandlesKHR", name)) {
- *addr = (void *)GetRayTracingCaptureReplayShaderGroupHandlesKHR;
- return true;
- }
- if (!strcmp("vkCmdTraceRaysIndirectKHR", name)) {
- *addr = (void *)CmdTraceRaysIndirectKHR;
- return true;
- }
- if (!strcmp("vkGetRayTracingShaderGroupStackSizeKHR", name)) {
- *addr = (void *)GetRayTracingShaderGroupStackSizeKHR;
- return true;
- }
- if (!strcmp("vkCmdSetRayTracingPipelineStackSizeKHR", name)) {
- *addr = (void *)CmdSetRayTracingPipelineStackSizeKHR;
- return true;
- }
- return false;
-}
-
-// A function that can be used to query enabled extensions during a vkCreateInstance call
-void extensions_create_instance(struct loader_instance *ptr_instance, const VkInstanceCreateInfo *pCreateInfo) {
- for (uint32_t i = 0; i < pCreateInfo->enabledExtensionCount; i++) {
-
- // ---- VK_KHR_get_physical_device_properties2 extension commands
- if (0 == strcmp(pCreateInfo->ppEnabledExtensionNames[i], VK_KHR_GET_PHYSICAL_DEVICE_PROPERTIES_2_EXTENSION_NAME)) {
- ptr_instance->enabled_known_extensions.khr_get_physical_device_properties2 = 1;
-
- // ---- VK_KHR_device_group_creation extension commands
- } else if (0 == strcmp(pCreateInfo->ppEnabledExtensionNames[i], VK_KHR_DEVICE_GROUP_CREATION_EXTENSION_NAME)) {
- ptr_instance->enabled_known_extensions.khr_device_group_creation = 1;
-
- // ---- VK_KHR_external_memory_capabilities extension commands
- } else if (0 == strcmp(pCreateInfo->ppEnabledExtensionNames[i], VK_KHR_EXTERNAL_MEMORY_CAPABILITIES_EXTENSION_NAME)) {
- ptr_instance->enabled_known_extensions.khr_external_memory_capabilities = 1;
-
- // ---- VK_KHR_external_semaphore_capabilities extension commands
- } else if (0 == strcmp(pCreateInfo->ppEnabledExtensionNames[i], VK_KHR_EXTERNAL_SEMAPHORE_CAPABILITIES_EXTENSION_NAME)) {
- ptr_instance->enabled_known_extensions.khr_external_semaphore_capabilities = 1;
-
- // ---- VK_KHR_external_fence_capabilities extension commands
- } else if (0 == strcmp(pCreateInfo->ppEnabledExtensionNames[i], VK_KHR_EXTERNAL_FENCE_CAPABILITIES_EXTENSION_NAME)) {
- ptr_instance->enabled_known_extensions.khr_external_fence_capabilities = 1;
-
- // ---- VK_NV_external_memory_capabilities extension commands
- } else if (0 == strcmp(pCreateInfo->ppEnabledExtensionNames[i], VK_NV_EXTERNAL_MEMORY_CAPABILITIES_EXTENSION_NAME)) {
- ptr_instance->enabled_known_extensions.nv_external_memory_capabilities = 1;
-
- // ---- VK_NN_vi_surface extension commands
-#ifdef VK_USE_PLATFORM_VI_NN
- } else if (0 == strcmp(pCreateInfo->ppEnabledExtensionNames[i], VK_NN_VI_SURFACE_EXTENSION_NAME)) {
- ptr_instance->enabled_known_extensions.nn_vi_surface = 1;
-#endif // VK_USE_PLATFORM_VI_NN
-
- // ---- VK_EXT_direct_mode_display extension commands
- } else if (0 == strcmp(pCreateInfo->ppEnabledExtensionNames[i], VK_EXT_DIRECT_MODE_DISPLAY_EXTENSION_NAME)) {
- ptr_instance->enabled_known_extensions.ext_direct_mode_display = 1;
-
- // ---- VK_EXT_acquire_xlib_display extension commands
-#ifdef VK_USE_PLATFORM_XLIB_XRANDR_EXT
- } else if (0 == strcmp(pCreateInfo->ppEnabledExtensionNames[i], VK_EXT_ACQUIRE_XLIB_DISPLAY_EXTENSION_NAME)) {
- ptr_instance->enabled_known_extensions.ext_acquire_xlib_display = 1;
-#endif // VK_USE_PLATFORM_XLIB_XRANDR_EXT
-
- // ---- VK_EXT_display_surface_counter extension commands
- } else if (0 == strcmp(pCreateInfo->ppEnabledExtensionNames[i], VK_EXT_DISPLAY_SURFACE_COUNTER_EXTENSION_NAME)) {
- ptr_instance->enabled_known_extensions.ext_display_surface_counter = 1;
-
- // ---- VK_EXT_debug_utils extension commands
- } else if (0 == strcmp(pCreateInfo->ppEnabledExtensionNames[i], VK_EXT_DEBUG_UTILS_EXTENSION_NAME)) {
- ptr_instance->enabled_known_extensions.ext_debug_utils = 1;
- }
- }
-}
-
-// Some device commands still need a terminator because the loader needs to unwrap something about them.
-// In many cases, the item needing unwrapping is a VkPhysicalDevice or VkSurfaceKHR object. But there may be other items
-// in the future.
-PFN_vkVoidFunction get_extension_device_proc_terminator(struct loader_device *dev, const char *pName) {
- PFN_vkVoidFunction addr = NULL;
-
- // ---- VK_KHR_swapchain extension commands
- if (dev->extensions.khr_swapchain_enabled) {
- if(!strcmp(pName, "vkCreateSwapchainKHR")) {
- addr = (PFN_vkVoidFunction)terminator_CreateSwapchainKHR;
- } else if(!strcmp(pName, "vkGetDeviceGroupSurfacePresentModesKHR")) {
- addr = (PFN_vkVoidFunction)terminator_GetDeviceGroupSurfacePresentModesKHR;
- }
- }
-
- // ---- VK_KHR_display_swapchain extension commands
- if (dev->extensions.khr_display_swapchain_enabled) {
- if(!strcmp(pName, "vkCreateSharedSwapchainsKHR")) {
- addr = (PFN_vkVoidFunction)terminator_CreateSharedSwapchainsKHR;
- }
- }
-
- // ---- VK_EXT_debug_marker extension commands
- if (dev->extensions.ext_debug_marker_enabled) {
- if(!strcmp(pName, "vkDebugMarkerSetObjectTagEXT")) {
- addr = (PFN_vkVoidFunction)terminator_DebugMarkerSetObjectTagEXT;
- } else if(!strcmp(pName, "vkDebugMarkerSetObjectNameEXT")) {
- addr = (PFN_vkVoidFunction)terminator_DebugMarkerSetObjectNameEXT;
- }
- }
-
- // ---- VK_EXT_debug_utils extension commands
- if (dev->extensions.ext_debug_utils_enabled) {
- if(!strcmp(pName, "vkSetDebugUtilsObjectNameEXT")) {
- addr = (PFN_vkVoidFunction)terminator_SetDebugUtilsObjectNameEXT;
- } else if(!strcmp(pName, "vkSetDebugUtilsObjectTagEXT")) {
- addr = (PFN_vkVoidFunction)terminator_SetDebugUtilsObjectTagEXT;
- } else if(!strcmp(pName, "vkQueueBeginDebugUtilsLabelEXT")) {
- addr = (PFN_vkVoidFunction)terminator_QueueBeginDebugUtilsLabelEXT;
- } else if(!strcmp(pName, "vkQueueEndDebugUtilsLabelEXT")) {
- addr = (PFN_vkVoidFunction)terminator_QueueEndDebugUtilsLabelEXT;
- } else if(!strcmp(pName, "vkQueueInsertDebugUtilsLabelEXT")) {
- addr = (PFN_vkVoidFunction)terminator_QueueInsertDebugUtilsLabelEXT;
- } else if(!strcmp(pName, "vkCmdBeginDebugUtilsLabelEXT")) {
- addr = (PFN_vkVoidFunction)terminator_CmdBeginDebugUtilsLabelEXT;
- } else if(!strcmp(pName, "vkCmdEndDebugUtilsLabelEXT")) {
- addr = (PFN_vkVoidFunction)terminator_CmdEndDebugUtilsLabelEXT;
- } else if(!strcmp(pName, "vkCmdInsertDebugUtilsLabelEXT")) {
- addr = (PFN_vkVoidFunction)terminator_CmdInsertDebugUtilsLabelEXT;
- }
- }
-#ifdef VK_USE_PLATFORM_WIN32_KHR
-
- // ---- VK_EXT_full_screen_exclusive extension commands
- if (dev->extensions.ext_full_screen_exclusive_enabled && dev->extensions.khr_device_group_enabled) {
- if(!strcmp(pName, "vkGetDeviceGroupSurfacePresentModes2EXT")) {
- addr = (PFN_vkVoidFunction)terminator_GetDeviceGroupSurfacePresentModes2EXT;
- }
- }
-#endif // None
- return addr;
-}
-
-// This table contains the loader's instance dispatch table, which contains
-// default functions if no instance layers are activated. This contains
-// pointers to "terminator functions".
-const VkLayerInstanceDispatchTable instance_disp = {
-
- // ---- Core 1_0 commands
- .DestroyInstance = terminator_DestroyInstance,
- .EnumeratePhysicalDevices = terminator_EnumeratePhysicalDevices,
- .GetPhysicalDeviceFeatures = terminator_GetPhysicalDeviceFeatures,
- .GetPhysicalDeviceFormatProperties = terminator_GetPhysicalDeviceFormatProperties,
- .GetPhysicalDeviceImageFormatProperties = terminator_GetPhysicalDeviceImageFormatProperties,
- .GetPhysicalDeviceProperties = terminator_GetPhysicalDeviceProperties,
- .GetPhysicalDeviceQueueFamilyProperties = terminator_GetPhysicalDeviceQueueFamilyProperties,
- .GetPhysicalDeviceMemoryProperties = terminator_GetPhysicalDeviceMemoryProperties,
- .GetInstanceProcAddr = vkGetInstanceProcAddr,
- .EnumerateDeviceExtensionProperties = terminator_EnumerateDeviceExtensionProperties,
- .EnumerateDeviceLayerProperties = terminator_EnumerateDeviceLayerProperties,
- .GetPhysicalDeviceSparseImageFormatProperties = terminator_GetPhysicalDeviceSparseImageFormatProperties,
-
- // ---- Core 1_1 commands
- .EnumeratePhysicalDeviceGroups = terminator_EnumeratePhysicalDeviceGroups,
- .GetPhysicalDeviceFeatures2 = terminator_GetPhysicalDeviceFeatures2,
- .GetPhysicalDeviceProperties2 = terminator_GetPhysicalDeviceProperties2,
- .GetPhysicalDeviceFormatProperties2 = terminator_GetPhysicalDeviceFormatProperties2,
- .GetPhysicalDeviceImageFormatProperties2 = terminator_GetPhysicalDeviceImageFormatProperties2,
- .GetPhysicalDeviceQueueFamilyProperties2 = terminator_GetPhysicalDeviceQueueFamilyProperties2,
- .GetPhysicalDeviceMemoryProperties2 = terminator_GetPhysicalDeviceMemoryProperties2,
- .GetPhysicalDeviceSparseImageFormatProperties2 = terminator_GetPhysicalDeviceSparseImageFormatProperties2,
- .GetPhysicalDeviceExternalBufferProperties = terminator_GetPhysicalDeviceExternalBufferProperties,
- .GetPhysicalDeviceExternalFenceProperties = terminator_GetPhysicalDeviceExternalFenceProperties,
- .GetPhysicalDeviceExternalSemaphoreProperties = terminator_GetPhysicalDeviceExternalSemaphoreProperties,
-
- // ---- VK_KHR_surface extension commands
- .DestroySurfaceKHR = terminator_DestroySurfaceKHR,
- .GetPhysicalDeviceSurfaceSupportKHR = terminator_GetPhysicalDeviceSurfaceSupportKHR,
- .GetPhysicalDeviceSurfaceCapabilitiesKHR = terminator_GetPhysicalDeviceSurfaceCapabilitiesKHR,
- .GetPhysicalDeviceSurfaceFormatsKHR = terminator_GetPhysicalDeviceSurfaceFormatsKHR,
- .GetPhysicalDeviceSurfacePresentModesKHR = terminator_GetPhysicalDeviceSurfacePresentModesKHR,
-
- // ---- VK_KHR_swapchain extension commands
- .GetPhysicalDevicePresentRectanglesKHR = terminator_GetPhysicalDevicePresentRectanglesKHR,
-
- // ---- VK_KHR_display extension commands
- .GetPhysicalDeviceDisplayPropertiesKHR = terminator_GetPhysicalDeviceDisplayPropertiesKHR,
- .GetPhysicalDeviceDisplayPlanePropertiesKHR = terminator_GetPhysicalDeviceDisplayPlanePropertiesKHR,
- .GetDisplayPlaneSupportedDisplaysKHR = terminator_GetDisplayPlaneSupportedDisplaysKHR,
- .GetDisplayModePropertiesKHR = terminator_GetDisplayModePropertiesKHR,
- .CreateDisplayModeKHR = terminator_CreateDisplayModeKHR,
- .GetDisplayPlaneCapabilitiesKHR = terminator_GetDisplayPlaneCapabilitiesKHR,
- .CreateDisplayPlaneSurfaceKHR = terminator_CreateDisplayPlaneSurfaceKHR,
-
- // ---- VK_KHR_xlib_surface extension commands
-#ifdef VK_USE_PLATFORM_XLIB_KHR
- .CreateXlibSurfaceKHR = terminator_CreateXlibSurfaceKHR,
-#endif // VK_USE_PLATFORM_XLIB_KHR
-#ifdef VK_USE_PLATFORM_XLIB_KHR
- .GetPhysicalDeviceXlibPresentationSupportKHR = terminator_GetPhysicalDeviceXlibPresentationSupportKHR,
-#endif // VK_USE_PLATFORM_XLIB_KHR
-
- // ---- VK_KHR_xcb_surface extension commands
-#ifdef VK_USE_PLATFORM_XCB_KHR
- .CreateXcbSurfaceKHR = terminator_CreateXcbSurfaceKHR,
-#endif // VK_USE_PLATFORM_XCB_KHR
-#ifdef VK_USE_PLATFORM_XCB_KHR
- .GetPhysicalDeviceXcbPresentationSupportKHR = terminator_GetPhysicalDeviceXcbPresentationSupportKHR,
-#endif // VK_USE_PLATFORM_XCB_KHR
-
- // ---- VK_KHR_wayland_surface extension commands
-#ifdef VK_USE_PLATFORM_WAYLAND_KHR
- .CreateWaylandSurfaceKHR = terminator_CreateWaylandSurfaceKHR,
-#endif // VK_USE_PLATFORM_WAYLAND_KHR
-#ifdef VK_USE_PLATFORM_WAYLAND_KHR
- .GetPhysicalDeviceWaylandPresentationSupportKHR = terminator_GetPhysicalDeviceWaylandPresentationSupportKHR,
-#endif // VK_USE_PLATFORM_WAYLAND_KHR
-
- // ---- VK_KHR_android_surface extension commands
-#ifdef VK_USE_PLATFORM_ANDROID_KHR
- .CreateAndroidSurfaceKHR = terminator_CreateAndroidSurfaceKHR,
-#endif // VK_USE_PLATFORM_ANDROID_KHR
-
- // ---- VK_KHR_win32_surface extension commands
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- .CreateWin32SurfaceKHR = terminator_CreateWin32SurfaceKHR,
-#endif // VK_USE_PLATFORM_WIN32_KHR
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- .GetPhysicalDeviceWin32PresentationSupportKHR = terminator_GetPhysicalDeviceWin32PresentationSupportKHR,
-#endif // VK_USE_PLATFORM_WIN32_KHR
-
- // ---- VK_KHR_get_physical_device_properties2 extension commands
- .GetPhysicalDeviceFeatures2KHR = terminator_GetPhysicalDeviceFeatures2,
- .GetPhysicalDeviceProperties2KHR = terminator_GetPhysicalDeviceProperties2,
- .GetPhysicalDeviceFormatProperties2KHR = terminator_GetPhysicalDeviceFormatProperties2,
- .GetPhysicalDeviceImageFormatProperties2KHR = terminator_GetPhysicalDeviceImageFormatProperties2,
- .GetPhysicalDeviceQueueFamilyProperties2KHR = terminator_GetPhysicalDeviceQueueFamilyProperties2,
- .GetPhysicalDeviceMemoryProperties2KHR = terminator_GetPhysicalDeviceMemoryProperties2,
- .GetPhysicalDeviceSparseImageFormatProperties2KHR = terminator_GetPhysicalDeviceSparseImageFormatProperties2,
-
- // ---- VK_KHR_device_group_creation extension commands
- .EnumeratePhysicalDeviceGroupsKHR = terminator_EnumeratePhysicalDeviceGroups,
-
- // ---- VK_KHR_external_memory_capabilities extension commands
- .GetPhysicalDeviceExternalBufferPropertiesKHR = terminator_GetPhysicalDeviceExternalBufferProperties,
-
- // ---- VK_KHR_external_semaphore_capabilities extension commands
- .GetPhysicalDeviceExternalSemaphorePropertiesKHR = terminator_GetPhysicalDeviceExternalSemaphoreProperties,
-
- // ---- VK_KHR_external_fence_capabilities extension commands
- .GetPhysicalDeviceExternalFencePropertiesKHR = terminator_GetPhysicalDeviceExternalFenceProperties,
-
- // ---- VK_KHR_performance_query extension commands
- .EnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR = terminator_EnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR,
- .GetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR = terminator_GetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR,
-
- // ---- VK_KHR_get_surface_capabilities2 extension commands
- .GetPhysicalDeviceSurfaceCapabilities2KHR = terminator_GetPhysicalDeviceSurfaceCapabilities2KHR,
- .GetPhysicalDeviceSurfaceFormats2KHR = terminator_GetPhysicalDeviceSurfaceFormats2KHR,
-
- // ---- VK_KHR_get_display_properties2 extension commands
- .GetPhysicalDeviceDisplayProperties2KHR = terminator_GetPhysicalDeviceDisplayProperties2KHR,
- .GetPhysicalDeviceDisplayPlaneProperties2KHR = terminator_GetPhysicalDeviceDisplayPlaneProperties2KHR,
- .GetDisplayModeProperties2KHR = terminator_GetDisplayModeProperties2KHR,
- .GetDisplayPlaneCapabilities2KHR = terminator_GetDisplayPlaneCapabilities2KHR,
-
- // ---- VK_KHR_fragment_shading_rate extension commands
- .GetPhysicalDeviceFragmentShadingRatesKHR = terminator_GetPhysicalDeviceFragmentShadingRatesKHR,
-
- // ---- VK_EXT_debug_report extension commands
- .CreateDebugReportCallbackEXT = terminator_CreateDebugReportCallbackEXT,
- .DestroyDebugReportCallbackEXT = terminator_DestroyDebugReportCallbackEXT,
- .DebugReportMessageEXT = terminator_DebugReportMessageEXT,
-
- // ---- VK_GGP_stream_descriptor_surface extension commands
-#ifdef VK_USE_PLATFORM_GGP
- .CreateStreamDescriptorSurfaceGGP = terminator_CreateStreamDescriptorSurfaceGGP,
-#endif // VK_USE_PLATFORM_GGP
-
- // ---- VK_NV_external_memory_capabilities extension commands
- .GetPhysicalDeviceExternalImageFormatPropertiesNV = terminator_GetPhysicalDeviceExternalImageFormatPropertiesNV,
-
- // ---- VK_NN_vi_surface extension commands
-#ifdef VK_USE_PLATFORM_VI_NN
- .CreateViSurfaceNN = terminator_CreateViSurfaceNN,
-#endif // VK_USE_PLATFORM_VI_NN
-
- // ---- VK_EXT_direct_mode_display extension commands
- .ReleaseDisplayEXT = terminator_ReleaseDisplayEXT,
-
- // ---- VK_EXT_acquire_xlib_display extension commands
-#ifdef VK_USE_PLATFORM_XLIB_XRANDR_EXT
- .AcquireXlibDisplayEXT = terminator_AcquireXlibDisplayEXT,
-#endif // VK_USE_PLATFORM_XLIB_XRANDR_EXT
-#ifdef VK_USE_PLATFORM_XLIB_XRANDR_EXT
- .GetRandROutputDisplayEXT = terminator_GetRandROutputDisplayEXT,
-#endif // VK_USE_PLATFORM_XLIB_XRANDR_EXT
-
- // ---- VK_EXT_display_surface_counter extension commands
- .GetPhysicalDeviceSurfaceCapabilities2EXT = terminator_GetPhysicalDeviceSurfaceCapabilities2EXT,
-
- // ---- VK_MVK_ios_surface extension commands
-#ifdef VK_USE_PLATFORM_IOS_MVK
- .CreateIOSSurfaceMVK = terminator_CreateIOSSurfaceMVK,
-#endif // VK_USE_PLATFORM_IOS_MVK
-
- // ---- VK_MVK_macos_surface extension commands
-#ifdef VK_USE_PLATFORM_MACOS_MVK
- .CreateMacOSSurfaceMVK = terminator_CreateMacOSSurfaceMVK,
-#endif // VK_USE_PLATFORM_MACOS_MVK
-
- // ---- VK_EXT_debug_utils extension commands
- .CreateDebugUtilsMessengerEXT = terminator_CreateDebugUtilsMessengerEXT,
- .DestroyDebugUtilsMessengerEXT = terminator_DestroyDebugUtilsMessengerEXT,
- .SubmitDebugUtilsMessageEXT = terminator_SubmitDebugUtilsMessageEXT,
-
- // ---- VK_EXT_sample_locations extension commands
- .GetPhysicalDeviceMultisamplePropertiesEXT = terminator_GetPhysicalDeviceMultisamplePropertiesEXT,
-
- // ---- VK_EXT_calibrated_timestamps extension commands
- .GetPhysicalDeviceCalibrateableTimeDomainsEXT = terminator_GetPhysicalDeviceCalibrateableTimeDomainsEXT,
-
- // ---- VK_FUCHSIA_imagepipe_surface extension commands
-#ifdef VK_USE_PLATFORM_FUCHSIA
- .CreateImagePipeSurfaceFUCHSIA = terminator_CreateImagePipeSurfaceFUCHSIA,
-#endif // VK_USE_PLATFORM_FUCHSIA
-
- // ---- VK_EXT_metal_surface extension commands
-#ifdef VK_USE_PLATFORM_METAL_EXT
- .CreateMetalSurfaceEXT = terminator_CreateMetalSurfaceEXT,
-#endif // VK_USE_PLATFORM_METAL_EXT
-
- // ---- VK_EXT_tooling_info extension commands
- .GetPhysicalDeviceToolPropertiesEXT = terminator_GetPhysicalDeviceToolPropertiesEXT,
-
- // ---- VK_NV_cooperative_matrix extension commands
- .GetPhysicalDeviceCooperativeMatrixPropertiesNV = terminator_GetPhysicalDeviceCooperativeMatrixPropertiesNV,
-
- // ---- VK_NV_coverage_reduction_mode extension commands
- .GetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV = terminator_GetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV,
-
- // ---- VK_EXT_full_screen_exclusive extension commands
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- .GetPhysicalDeviceSurfacePresentModes2EXT = terminator_GetPhysicalDeviceSurfacePresentModes2EXT,
-#endif // VK_USE_PLATFORM_WIN32_KHR
-
- // ---- VK_EXT_headless_surface extension commands
- .CreateHeadlessSurfaceEXT = terminator_CreateHeadlessSurfaceEXT,
-
- // ---- VK_EXT_directfb_surface extension commands
-#ifdef VK_USE_PLATFORM_DIRECTFB_EXT
- .CreateDirectFBSurfaceEXT = terminator_CreateDirectFBSurfaceEXT,
-#endif // VK_USE_PLATFORM_DIRECTFB_EXT
-#ifdef VK_USE_PLATFORM_DIRECTFB_EXT
- .GetPhysicalDeviceDirectFBPresentationSupportEXT = terminator_GetPhysicalDeviceDirectFBPresentationSupportEXT,
-#endif // VK_USE_PLATFORM_DIRECTFB_EXT
-};
-
-// A null-terminated list of all of the instance extensions supported by the loader.
-// If an instance extension name is not in this list, but it is exported by one or more of the
-// ICDs detected by the loader, then the extension name not in the list will be filtered out
-// before passing the list of extensions to the application.
-const char *const LOADER_INSTANCE_EXTENSIONS[] = {
- VK_KHR_SURFACE_EXTENSION_NAME,
- VK_KHR_DISPLAY_EXTENSION_NAME,
-#ifdef VK_USE_PLATFORM_XLIB_KHR
- VK_KHR_XLIB_SURFACE_EXTENSION_NAME,
-#endif // VK_USE_PLATFORM_XLIB_KHR
-#ifdef VK_USE_PLATFORM_XCB_KHR
- VK_KHR_XCB_SURFACE_EXTENSION_NAME,
-#endif // VK_USE_PLATFORM_XCB_KHR
-#ifdef VK_USE_PLATFORM_WAYLAND_KHR
- VK_KHR_WAYLAND_SURFACE_EXTENSION_NAME,
-#endif // VK_USE_PLATFORM_WAYLAND_KHR
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- VK_KHR_WIN32_SURFACE_EXTENSION_NAME,
-#endif // VK_USE_PLATFORM_WIN32_KHR
- VK_KHR_GET_PHYSICAL_DEVICE_PROPERTIES_2_EXTENSION_NAME,
- VK_KHR_DEVICE_GROUP_CREATION_EXTENSION_NAME,
- VK_KHR_EXTERNAL_MEMORY_CAPABILITIES_EXTENSION_NAME,
- VK_KHR_EXTERNAL_SEMAPHORE_CAPABILITIES_EXTENSION_NAME,
- VK_KHR_EXTERNAL_FENCE_CAPABILITIES_EXTENSION_NAME,
- VK_KHR_GET_SURFACE_CAPABILITIES_2_EXTENSION_NAME,
- VK_KHR_GET_DISPLAY_PROPERTIES_2_EXTENSION_NAME,
- VK_KHR_SURFACE_PROTECTED_CAPABILITIES_EXTENSION_NAME,
- VK_EXT_DEBUG_REPORT_EXTENSION_NAME,
-#ifdef VK_USE_PLATFORM_GGP
- VK_GGP_STREAM_DESCRIPTOR_SURFACE_EXTENSION_NAME,
-#endif // VK_USE_PLATFORM_GGP
- VK_NV_EXTERNAL_MEMORY_CAPABILITIES_EXTENSION_NAME,
- VK_EXT_VALIDATION_FLAGS_EXTENSION_NAME,
-#ifdef VK_USE_PLATFORM_VI_NN
- VK_NN_VI_SURFACE_EXTENSION_NAME,
-#endif // VK_USE_PLATFORM_VI_NN
- VK_EXT_DIRECT_MODE_DISPLAY_EXTENSION_NAME,
-#ifdef VK_USE_PLATFORM_XLIB_XRANDR_EXT
- VK_EXT_ACQUIRE_XLIB_DISPLAY_EXTENSION_NAME,
-#endif // VK_USE_PLATFORM_XLIB_XRANDR_EXT
- VK_EXT_DISPLAY_SURFACE_COUNTER_EXTENSION_NAME,
- VK_EXT_SWAPCHAIN_COLOR_SPACE_EXTENSION_NAME,
-#ifdef VK_USE_PLATFORM_IOS_MVK
- VK_MVK_IOS_SURFACE_EXTENSION_NAME,
-#endif // VK_USE_PLATFORM_IOS_MVK
-#ifdef VK_USE_PLATFORM_MACOS_MVK
- VK_MVK_MACOS_SURFACE_EXTENSION_NAME,
-#endif // VK_USE_PLATFORM_MACOS_MVK
- VK_EXT_DEBUG_UTILS_EXTENSION_NAME,
-#ifdef VK_USE_PLATFORM_FUCHSIA
- VK_FUCHSIA_IMAGEPIPE_SURFACE_EXTENSION_NAME,
-#endif // VK_USE_PLATFORM_FUCHSIA
-#ifdef VK_USE_PLATFORM_METAL_EXT
- VK_EXT_METAL_SURFACE_EXTENSION_NAME,
-#endif // VK_USE_PLATFORM_METAL_EXT
- VK_EXT_VALIDATION_FEATURES_EXTENSION_NAME,
- VK_EXT_HEADLESS_SURFACE_EXTENSION_NAME,
-#ifdef VK_USE_PLATFORM_DIRECTFB_EXT
- VK_EXT_DIRECTFB_SURFACE_EXTENSION_NAME,
-#endif // VK_USE_PLATFORM_DIRECTFB_EXT
- NULL };
-
diff --git a/thirdparty/vulkan/loader/vk_loader_extensions.h b/thirdparty/vulkan/loader/vk_loader_extensions.h
deleted file mode 100644
index 84e2150e1d..0000000000
--- a/thirdparty/vulkan/loader/vk_loader_extensions.h
+++ /dev/null
@@ -1,462 +0,0 @@
-// *** THIS FILE IS GENERATED - DO NOT EDIT ***
-// See loader_extension_generator.py for modifications
-
-/*
- * Copyright (c) 2015-2017 The Khronos Group Inc.
- * Copyright (c) 2015-2017 Valve Corporation
- * Copyright (c) 2015-2017 LunarG, Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * Author: Mark Lobodzinski <mark@lunarg.com>
- * Author: Mark Young <marky@lunarg.com>
- */
-
-#pragma once
-
-// Structures defined externally, but used here
-struct loader_instance;
-struct loader_device;
-struct loader_icd_term;
-struct loader_dev_dispatch_table;
-
-// Device extension error function
-VKAPI_ATTR VkResult VKAPI_CALL vkDevExtError(VkDevice dev);
-
-// Extension interception for vkGetInstanceProcAddr function, so we can return
-// the appropriate information for any instance extensions we know about.
-bool extension_instance_gpa(struct loader_instance *ptr_instance, const char *name, void **addr);
-
-// Extension interception for vkCreateInstance function, so we can properly
-// detect and enable any instance extension information for extensions we know
-// about.
-void extensions_create_instance(struct loader_instance *ptr_instance, const VkInstanceCreateInfo *pCreateInfo);
-
-// Extension interception for vkGetDeviceProcAddr function, so we can return
-// an appropriate terminator if this is one of those few device commands requiring
-// a terminator.
-PFN_vkVoidFunction get_extension_device_proc_terminator(struct loader_device *dev, const char *pName);
-
-// Dispatch table properly filled in with appropriate terminators for the
-// supported extensions.
-extern const VkLayerInstanceDispatchTable instance_disp;
-
-// Array of extension strings for instance extensions we support.
-extern const char *const LOADER_INSTANCE_EXTENSIONS[];
-
-VKAPI_ATTR bool VKAPI_CALL loader_icd_init_entries(struct loader_icd_term *icd_term, VkInstance inst,
- const PFN_vkGetInstanceProcAddr fp_gipa);
-
-// Init Device function pointer dispatch table with core commands
-VKAPI_ATTR void VKAPI_CALL loader_init_device_dispatch_table(struct loader_dev_dispatch_table *dev_table, PFN_vkGetDeviceProcAddr gpa,
- VkDevice dev);
-
-// Init Device function pointer dispatch table with extension commands
-VKAPI_ATTR void VKAPI_CALL loader_init_device_extension_dispatch_table(struct loader_dev_dispatch_table *dev_table,
- PFN_vkGetInstanceProcAddr gipa,
- PFN_vkGetDeviceProcAddr gdpa,
- VkInstance inst,
- VkDevice dev);
-
-// Init Instance function pointer dispatch table with core commands
-VKAPI_ATTR void VKAPI_CALL loader_init_instance_core_dispatch_table(VkLayerInstanceDispatchTable *table, PFN_vkGetInstanceProcAddr gpa,
- VkInstance inst);
-
-// Init Instance function pointer dispatch table with core commands
-VKAPI_ATTR void VKAPI_CALL loader_init_instance_extension_dispatch_table(VkLayerInstanceDispatchTable *table, PFN_vkGetInstanceProcAddr gpa,
- VkInstance inst);
-
-// Device command lookup function
-VKAPI_ATTR void* VKAPI_CALL loader_lookup_device_dispatch_table(const VkLayerDispatchTable *table, const char *name);
-
-// Instance command lookup function
-VKAPI_ATTR void* VKAPI_CALL loader_lookup_instance_dispatch_table(const VkLayerInstanceDispatchTable *table, const char *name,
- bool *found_name);
-
-VKAPI_ATTR bool VKAPI_CALL loader_icd_init_entries(struct loader_icd_term *icd_term, VkInstance inst,
- const PFN_vkGetInstanceProcAddr fp_gipa);
-
-// Loader core instance terminators
-VKAPI_ATTR VkResult VKAPI_CALL terminator_CreateInstance(
- const VkInstanceCreateInfo* pCreateInfo,
- const VkAllocationCallbacks* pAllocator,
- VkInstance* pInstance);
-VKAPI_ATTR void VKAPI_CALL terminator_DestroyInstance(
- VkInstance instance,
- const VkAllocationCallbacks* pAllocator);
-VKAPI_ATTR VkResult VKAPI_CALL terminator_EnumeratePhysicalDevices(
- VkInstance instance,
- uint32_t* pPhysicalDeviceCount,
- VkPhysicalDevice* pPhysicalDevices);
-VKAPI_ATTR void VKAPI_CALL terminator_GetPhysicalDeviceFeatures(
- VkPhysicalDevice physicalDevice,
- VkPhysicalDeviceFeatures* pFeatures);
-VKAPI_ATTR void VKAPI_CALL terminator_GetPhysicalDeviceFormatProperties(
- VkPhysicalDevice physicalDevice,
- VkFormat format,
- VkFormatProperties* pFormatProperties);
-VKAPI_ATTR VkResult VKAPI_CALL terminator_GetPhysicalDeviceImageFormatProperties(
- VkPhysicalDevice physicalDevice,
- VkFormat format,
- VkImageType type,
- VkImageTiling tiling,
- VkImageUsageFlags usage,
- VkImageCreateFlags flags,
- VkImageFormatProperties* pImageFormatProperties);
-VKAPI_ATTR void VKAPI_CALL terminator_GetPhysicalDeviceProperties(
- VkPhysicalDevice physicalDevice,
- VkPhysicalDeviceProperties* pProperties);
-VKAPI_ATTR void VKAPI_CALL terminator_GetPhysicalDeviceQueueFamilyProperties(
- VkPhysicalDevice physicalDevice,
- uint32_t* pQueueFamilyPropertyCount,
- VkQueueFamilyProperties* pQueueFamilyProperties);
-VKAPI_ATTR void VKAPI_CALL terminator_GetPhysicalDeviceMemoryProperties(
- VkPhysicalDevice physicalDevice,
- VkPhysicalDeviceMemoryProperties* pMemoryProperties);
-VKAPI_ATTR PFN_vkVoidFunction VKAPI_CALL terminator_GetInstanceProcAddr(
- VkInstance instance,
- const char* pName);
-VKAPI_ATTR VkResult VKAPI_CALL terminator_CreateDevice(
- VkPhysicalDevice physicalDevice,
- const VkDeviceCreateInfo* pCreateInfo,
- const VkAllocationCallbacks* pAllocator,
- VkDevice* pDevice);
-VKAPI_ATTR VkResult VKAPI_CALL terminator_EnumerateInstanceExtensionProperties(
- const VkEnumerateInstanceExtensionPropertiesChain* chain,
- const char* pLayerName,
- uint32_t* pPropertyCount,
- VkExtensionProperties* pProperties);
-VKAPI_ATTR VkResult VKAPI_CALL terminator_EnumerateDeviceExtensionProperties(
- VkPhysicalDevice physicalDevice,
- const char* pLayerName,
- uint32_t* pPropertyCount,
- VkExtensionProperties* pProperties);
-VKAPI_ATTR VkResult VKAPI_CALL terminator_EnumerateInstanceLayerProperties(
- const VkEnumerateInstanceLayerPropertiesChain* chain,
- uint32_t* pPropertyCount,
- VkLayerProperties* pProperties);
-VKAPI_ATTR VkResult VKAPI_CALL terminator_EnumerateDeviceLayerProperties(
- VkPhysicalDevice physicalDevice,
- uint32_t* pPropertyCount,
- VkLayerProperties* pProperties);
-VKAPI_ATTR void VKAPI_CALL terminator_GetPhysicalDeviceSparseImageFormatProperties(
- VkPhysicalDevice physicalDevice,
- VkFormat format,
- VkImageType type,
- VkSampleCountFlagBits samples,
- VkImageUsageFlags usage,
- VkImageTiling tiling,
- uint32_t* pPropertyCount,
- VkSparseImageFormatProperties* pProperties);
-VKAPI_ATTR VkResult VKAPI_CALL terminator_EnumerateInstanceVersion(
- const VkEnumerateInstanceVersionChain* chain,
- uint32_t* pApiVersion);
-VKAPI_ATTR VkResult VKAPI_CALL terminator_EnumeratePhysicalDeviceGroups(
- VkInstance instance,
- uint32_t* pPhysicalDeviceGroupCount,
- VkPhysicalDeviceGroupProperties* pPhysicalDeviceGroupProperties);
-VKAPI_ATTR void VKAPI_CALL terminator_GetPhysicalDeviceFeatures2(
- VkPhysicalDevice physicalDevice,
- VkPhysicalDeviceFeatures2* pFeatures);
-VKAPI_ATTR void VKAPI_CALL terminator_GetPhysicalDeviceProperties2(
- VkPhysicalDevice physicalDevice,
- VkPhysicalDeviceProperties2* pProperties);
-VKAPI_ATTR void VKAPI_CALL terminator_GetPhysicalDeviceFormatProperties2(
- VkPhysicalDevice physicalDevice,
- VkFormat format,
- VkFormatProperties2* pFormatProperties);
-VKAPI_ATTR VkResult VKAPI_CALL terminator_GetPhysicalDeviceImageFormatProperties2(
- VkPhysicalDevice physicalDevice,
- const VkPhysicalDeviceImageFormatInfo2* pImageFormatInfo,
- VkImageFormatProperties2* pImageFormatProperties);
-VKAPI_ATTR void VKAPI_CALL terminator_GetPhysicalDeviceQueueFamilyProperties2(
- VkPhysicalDevice physicalDevice,
- uint32_t* pQueueFamilyPropertyCount,
- VkQueueFamilyProperties2* pQueueFamilyProperties);
-VKAPI_ATTR void VKAPI_CALL terminator_GetPhysicalDeviceMemoryProperties2(
- VkPhysicalDevice physicalDevice,
- VkPhysicalDeviceMemoryProperties2* pMemoryProperties);
-VKAPI_ATTR void VKAPI_CALL terminator_GetPhysicalDeviceSparseImageFormatProperties2(
- VkPhysicalDevice physicalDevice,
- const VkPhysicalDeviceSparseImageFormatInfo2* pFormatInfo,
- uint32_t* pPropertyCount,
- VkSparseImageFormatProperties2* pProperties);
-VKAPI_ATTR void VKAPI_CALL terminator_GetPhysicalDeviceExternalBufferProperties(
- VkPhysicalDevice physicalDevice,
- const VkPhysicalDeviceExternalBufferInfo* pExternalBufferInfo,
- VkExternalBufferProperties* pExternalBufferProperties);
-VKAPI_ATTR void VKAPI_CALL terminator_GetPhysicalDeviceExternalFenceProperties(
- VkPhysicalDevice physicalDevice,
- const VkPhysicalDeviceExternalFenceInfo* pExternalFenceInfo,
- VkExternalFenceProperties* pExternalFenceProperties);
-VKAPI_ATTR void VKAPI_CALL terminator_GetPhysicalDeviceExternalSemaphoreProperties(
- VkPhysicalDevice physicalDevice,
- const VkPhysicalDeviceExternalSemaphoreInfo* pExternalSemaphoreInfo,
- VkExternalSemaphoreProperties* pExternalSemaphoreProperties);
-
-// ICD function pointer dispatch table
-struct loader_icd_term_dispatch {
-
- // ---- Core 1_0 commands
- PFN_vkCreateInstance CreateInstance;
- PFN_vkDestroyInstance DestroyInstance;
- PFN_vkEnumeratePhysicalDevices EnumeratePhysicalDevices;
- PFN_vkGetPhysicalDeviceFeatures GetPhysicalDeviceFeatures;
- PFN_vkGetPhysicalDeviceFormatProperties GetPhysicalDeviceFormatProperties;
- PFN_vkGetPhysicalDeviceImageFormatProperties GetPhysicalDeviceImageFormatProperties;
- PFN_vkGetPhysicalDeviceProperties GetPhysicalDeviceProperties;
- PFN_vkGetPhysicalDeviceQueueFamilyProperties GetPhysicalDeviceQueueFamilyProperties;
- PFN_vkGetPhysicalDeviceMemoryProperties GetPhysicalDeviceMemoryProperties;
- PFN_vkGetDeviceProcAddr GetDeviceProcAddr;
- PFN_vkCreateDevice CreateDevice;
- PFN_vkEnumerateInstanceExtensionProperties EnumerateInstanceExtensionProperties;
- PFN_vkEnumerateDeviceExtensionProperties EnumerateDeviceExtensionProperties;
- PFN_vkEnumerateInstanceLayerProperties EnumerateInstanceLayerProperties;
- PFN_vkGetPhysicalDeviceSparseImageFormatProperties GetPhysicalDeviceSparseImageFormatProperties;
-
- // ---- Core 1_1 commands
- PFN_vkEnumerateInstanceVersion EnumerateInstanceVersion;
- PFN_vkEnumeratePhysicalDeviceGroups EnumeratePhysicalDeviceGroups;
- PFN_vkGetPhysicalDeviceFeatures2 GetPhysicalDeviceFeatures2;
- PFN_vkGetPhysicalDeviceProperties2 GetPhysicalDeviceProperties2;
- PFN_vkGetPhysicalDeviceFormatProperties2 GetPhysicalDeviceFormatProperties2;
- PFN_vkGetPhysicalDeviceImageFormatProperties2 GetPhysicalDeviceImageFormatProperties2;
- PFN_vkGetPhysicalDeviceQueueFamilyProperties2 GetPhysicalDeviceQueueFamilyProperties2;
- PFN_vkGetPhysicalDeviceMemoryProperties2 GetPhysicalDeviceMemoryProperties2;
- PFN_vkGetPhysicalDeviceSparseImageFormatProperties2 GetPhysicalDeviceSparseImageFormatProperties2;
- PFN_vkGetPhysicalDeviceExternalBufferProperties GetPhysicalDeviceExternalBufferProperties;
- PFN_vkGetPhysicalDeviceExternalFenceProperties GetPhysicalDeviceExternalFenceProperties;
- PFN_vkGetPhysicalDeviceExternalSemaphoreProperties GetPhysicalDeviceExternalSemaphoreProperties;
-
- // ---- VK_KHR_surface extension commands
- PFN_vkDestroySurfaceKHR DestroySurfaceKHR;
- PFN_vkGetPhysicalDeviceSurfaceSupportKHR GetPhysicalDeviceSurfaceSupportKHR;
- PFN_vkGetPhysicalDeviceSurfaceCapabilitiesKHR GetPhysicalDeviceSurfaceCapabilitiesKHR;
- PFN_vkGetPhysicalDeviceSurfaceFormatsKHR GetPhysicalDeviceSurfaceFormatsKHR;
- PFN_vkGetPhysicalDeviceSurfacePresentModesKHR GetPhysicalDeviceSurfacePresentModesKHR;
-
- // ---- VK_KHR_swapchain extension commands
- PFN_vkCreateSwapchainKHR CreateSwapchainKHR;
- PFN_vkGetDeviceGroupSurfacePresentModesKHR GetDeviceGroupSurfacePresentModesKHR;
- PFN_vkGetPhysicalDevicePresentRectanglesKHR GetPhysicalDevicePresentRectanglesKHR;
-
- // ---- VK_KHR_display extension commands
- PFN_vkGetPhysicalDeviceDisplayPropertiesKHR GetPhysicalDeviceDisplayPropertiesKHR;
- PFN_vkGetPhysicalDeviceDisplayPlanePropertiesKHR GetPhysicalDeviceDisplayPlanePropertiesKHR;
- PFN_vkGetDisplayPlaneSupportedDisplaysKHR GetDisplayPlaneSupportedDisplaysKHR;
- PFN_vkGetDisplayModePropertiesKHR GetDisplayModePropertiesKHR;
- PFN_vkCreateDisplayModeKHR CreateDisplayModeKHR;
- PFN_vkGetDisplayPlaneCapabilitiesKHR GetDisplayPlaneCapabilitiesKHR;
- PFN_vkCreateDisplayPlaneSurfaceKHR CreateDisplayPlaneSurfaceKHR;
-
- // ---- VK_KHR_display_swapchain extension commands
- PFN_vkCreateSharedSwapchainsKHR CreateSharedSwapchainsKHR;
-
- // ---- VK_KHR_xlib_surface extension commands
-#ifdef VK_USE_PLATFORM_XLIB_KHR
- PFN_vkCreateXlibSurfaceKHR CreateXlibSurfaceKHR;
-#endif // VK_USE_PLATFORM_XLIB_KHR
-#ifdef VK_USE_PLATFORM_XLIB_KHR
- PFN_vkGetPhysicalDeviceXlibPresentationSupportKHR GetPhysicalDeviceXlibPresentationSupportKHR;
-#endif // VK_USE_PLATFORM_XLIB_KHR
-
- // ---- VK_KHR_xcb_surface extension commands
-#ifdef VK_USE_PLATFORM_XCB_KHR
- PFN_vkCreateXcbSurfaceKHR CreateXcbSurfaceKHR;
-#endif // VK_USE_PLATFORM_XCB_KHR
-#ifdef VK_USE_PLATFORM_XCB_KHR
- PFN_vkGetPhysicalDeviceXcbPresentationSupportKHR GetPhysicalDeviceXcbPresentationSupportKHR;
-#endif // VK_USE_PLATFORM_XCB_KHR
-
- // ---- VK_KHR_wayland_surface extension commands
-#ifdef VK_USE_PLATFORM_WAYLAND_KHR
- PFN_vkCreateWaylandSurfaceKHR CreateWaylandSurfaceKHR;
-#endif // VK_USE_PLATFORM_WAYLAND_KHR
-#ifdef VK_USE_PLATFORM_WAYLAND_KHR
- PFN_vkGetPhysicalDeviceWaylandPresentationSupportKHR GetPhysicalDeviceWaylandPresentationSupportKHR;
-#endif // VK_USE_PLATFORM_WAYLAND_KHR
-
- // ---- VK_KHR_android_surface extension commands
-#ifdef VK_USE_PLATFORM_ANDROID_KHR
- PFN_vkCreateAndroidSurfaceKHR CreateAndroidSurfaceKHR;
-#endif // VK_USE_PLATFORM_ANDROID_KHR
-
- // ---- VK_KHR_win32_surface extension commands
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- PFN_vkCreateWin32SurfaceKHR CreateWin32SurfaceKHR;
-#endif // VK_USE_PLATFORM_WIN32_KHR
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- PFN_vkGetPhysicalDeviceWin32PresentationSupportKHR GetPhysicalDeviceWin32PresentationSupportKHR;
-#endif // VK_USE_PLATFORM_WIN32_KHR
-
- // ---- VK_KHR_get_physical_device_properties2 extension commands
- PFN_vkGetPhysicalDeviceFeatures2KHR GetPhysicalDeviceFeatures2KHR;
- PFN_vkGetPhysicalDeviceProperties2KHR GetPhysicalDeviceProperties2KHR;
- PFN_vkGetPhysicalDeviceFormatProperties2KHR GetPhysicalDeviceFormatProperties2KHR;
- PFN_vkGetPhysicalDeviceImageFormatProperties2KHR GetPhysicalDeviceImageFormatProperties2KHR;
- PFN_vkGetPhysicalDeviceQueueFamilyProperties2KHR GetPhysicalDeviceQueueFamilyProperties2KHR;
- PFN_vkGetPhysicalDeviceMemoryProperties2KHR GetPhysicalDeviceMemoryProperties2KHR;
- PFN_vkGetPhysicalDeviceSparseImageFormatProperties2KHR GetPhysicalDeviceSparseImageFormatProperties2KHR;
-
- // ---- VK_KHR_device_group_creation extension commands
- PFN_vkEnumeratePhysicalDeviceGroupsKHR EnumeratePhysicalDeviceGroupsKHR;
-
- // ---- VK_KHR_external_memory_capabilities extension commands
- PFN_vkGetPhysicalDeviceExternalBufferPropertiesKHR GetPhysicalDeviceExternalBufferPropertiesKHR;
-
- // ---- VK_KHR_external_semaphore_capabilities extension commands
- PFN_vkGetPhysicalDeviceExternalSemaphorePropertiesKHR GetPhysicalDeviceExternalSemaphorePropertiesKHR;
-
- // ---- VK_KHR_external_fence_capabilities extension commands
- PFN_vkGetPhysicalDeviceExternalFencePropertiesKHR GetPhysicalDeviceExternalFencePropertiesKHR;
-
- // ---- VK_KHR_performance_query extension commands
- PFN_vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR EnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR;
- PFN_vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR GetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR;
-
- // ---- VK_KHR_get_surface_capabilities2 extension commands
- PFN_vkGetPhysicalDeviceSurfaceCapabilities2KHR GetPhysicalDeviceSurfaceCapabilities2KHR;
- PFN_vkGetPhysicalDeviceSurfaceFormats2KHR GetPhysicalDeviceSurfaceFormats2KHR;
-
- // ---- VK_KHR_get_display_properties2 extension commands
- PFN_vkGetPhysicalDeviceDisplayProperties2KHR GetPhysicalDeviceDisplayProperties2KHR;
- PFN_vkGetPhysicalDeviceDisplayPlaneProperties2KHR GetPhysicalDeviceDisplayPlaneProperties2KHR;
- PFN_vkGetDisplayModeProperties2KHR GetDisplayModeProperties2KHR;
- PFN_vkGetDisplayPlaneCapabilities2KHR GetDisplayPlaneCapabilities2KHR;
-
- // ---- VK_KHR_fragment_shading_rate extension commands
- PFN_vkGetPhysicalDeviceFragmentShadingRatesKHR GetPhysicalDeviceFragmentShadingRatesKHR;
-
- // ---- VK_EXT_debug_report extension commands
- PFN_vkCreateDebugReportCallbackEXT CreateDebugReportCallbackEXT;
- PFN_vkDestroyDebugReportCallbackEXT DestroyDebugReportCallbackEXT;
- PFN_vkDebugReportMessageEXT DebugReportMessageEXT;
-
- // ---- VK_EXT_debug_marker extension commands
- PFN_vkDebugMarkerSetObjectTagEXT DebugMarkerSetObjectTagEXT;
- PFN_vkDebugMarkerSetObjectNameEXT DebugMarkerSetObjectNameEXT;
-
- // ---- VK_GGP_stream_descriptor_surface extension commands
-#ifdef VK_USE_PLATFORM_GGP
- PFN_vkCreateStreamDescriptorSurfaceGGP CreateStreamDescriptorSurfaceGGP;
-#endif // VK_USE_PLATFORM_GGP
-
- // ---- VK_NV_external_memory_capabilities extension commands
- PFN_vkGetPhysicalDeviceExternalImageFormatPropertiesNV GetPhysicalDeviceExternalImageFormatPropertiesNV;
-
- // ---- VK_NN_vi_surface extension commands
-#ifdef VK_USE_PLATFORM_VI_NN
- PFN_vkCreateViSurfaceNN CreateViSurfaceNN;
-#endif // VK_USE_PLATFORM_VI_NN
-
- // ---- VK_EXT_direct_mode_display extension commands
- PFN_vkReleaseDisplayEXT ReleaseDisplayEXT;
-
- // ---- VK_EXT_acquire_xlib_display extension commands
-#ifdef VK_USE_PLATFORM_XLIB_XRANDR_EXT
- PFN_vkAcquireXlibDisplayEXT AcquireXlibDisplayEXT;
-#endif // VK_USE_PLATFORM_XLIB_XRANDR_EXT
-#ifdef VK_USE_PLATFORM_XLIB_XRANDR_EXT
- PFN_vkGetRandROutputDisplayEXT GetRandROutputDisplayEXT;
-#endif // VK_USE_PLATFORM_XLIB_XRANDR_EXT
-
- // ---- VK_EXT_display_surface_counter extension commands
- PFN_vkGetPhysicalDeviceSurfaceCapabilities2EXT GetPhysicalDeviceSurfaceCapabilities2EXT;
-
- // ---- VK_MVK_ios_surface extension commands
-#ifdef VK_USE_PLATFORM_IOS_MVK
- PFN_vkCreateIOSSurfaceMVK CreateIOSSurfaceMVK;
-#endif // VK_USE_PLATFORM_IOS_MVK
-
- // ---- VK_MVK_macos_surface extension commands
-#ifdef VK_USE_PLATFORM_MACOS_MVK
- PFN_vkCreateMacOSSurfaceMVK CreateMacOSSurfaceMVK;
-#endif // VK_USE_PLATFORM_MACOS_MVK
-
- // ---- VK_EXT_debug_utils extension commands
- PFN_vkSetDebugUtilsObjectNameEXT SetDebugUtilsObjectNameEXT;
- PFN_vkSetDebugUtilsObjectTagEXT SetDebugUtilsObjectTagEXT;
- PFN_vkQueueBeginDebugUtilsLabelEXT QueueBeginDebugUtilsLabelEXT;
- PFN_vkQueueEndDebugUtilsLabelEXT QueueEndDebugUtilsLabelEXT;
- PFN_vkQueueInsertDebugUtilsLabelEXT QueueInsertDebugUtilsLabelEXT;
- PFN_vkCmdBeginDebugUtilsLabelEXT CmdBeginDebugUtilsLabelEXT;
- PFN_vkCmdEndDebugUtilsLabelEXT CmdEndDebugUtilsLabelEXT;
- PFN_vkCmdInsertDebugUtilsLabelEXT CmdInsertDebugUtilsLabelEXT;
- PFN_vkCreateDebugUtilsMessengerEXT CreateDebugUtilsMessengerEXT;
- PFN_vkDestroyDebugUtilsMessengerEXT DestroyDebugUtilsMessengerEXT;
- PFN_vkSubmitDebugUtilsMessageEXT SubmitDebugUtilsMessageEXT;
-
- // ---- VK_EXT_sample_locations extension commands
- PFN_vkGetPhysicalDeviceMultisamplePropertiesEXT GetPhysicalDeviceMultisamplePropertiesEXT;
-
- // ---- VK_EXT_calibrated_timestamps extension commands
- PFN_vkGetPhysicalDeviceCalibrateableTimeDomainsEXT GetPhysicalDeviceCalibrateableTimeDomainsEXT;
-
- // ---- VK_FUCHSIA_imagepipe_surface extension commands
-#ifdef VK_USE_PLATFORM_FUCHSIA
- PFN_vkCreateImagePipeSurfaceFUCHSIA CreateImagePipeSurfaceFUCHSIA;
-#endif // VK_USE_PLATFORM_FUCHSIA
-
- // ---- VK_EXT_metal_surface extension commands
-#ifdef VK_USE_PLATFORM_METAL_EXT
- PFN_vkCreateMetalSurfaceEXT CreateMetalSurfaceEXT;
-#endif // VK_USE_PLATFORM_METAL_EXT
-
- // ---- VK_EXT_tooling_info extension commands
- PFN_vkGetPhysicalDeviceToolPropertiesEXT GetPhysicalDeviceToolPropertiesEXT;
-
- // ---- VK_NV_cooperative_matrix extension commands
- PFN_vkGetPhysicalDeviceCooperativeMatrixPropertiesNV GetPhysicalDeviceCooperativeMatrixPropertiesNV;
-
- // ---- VK_NV_coverage_reduction_mode extension commands
- PFN_vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV GetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV;
-
- // ---- VK_EXT_full_screen_exclusive extension commands
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- PFN_vkGetPhysicalDeviceSurfacePresentModes2EXT GetPhysicalDeviceSurfacePresentModes2EXT;
-#endif // VK_USE_PLATFORM_WIN32_KHR
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- PFN_vkGetDeviceGroupSurfacePresentModes2EXT GetDeviceGroupSurfacePresentModes2EXT;
-#endif // VK_USE_PLATFORM_WIN32_KHR
-
- // ---- VK_EXT_headless_surface extension commands
- PFN_vkCreateHeadlessSurfaceEXT CreateHeadlessSurfaceEXT;
-
- // ---- VK_EXT_directfb_surface extension commands
-#ifdef VK_USE_PLATFORM_DIRECTFB_EXT
- PFN_vkCreateDirectFBSurfaceEXT CreateDirectFBSurfaceEXT;
-#endif // VK_USE_PLATFORM_DIRECTFB_EXT
-#ifdef VK_USE_PLATFORM_DIRECTFB_EXT
- PFN_vkGetPhysicalDeviceDirectFBPresentationSupportEXT GetPhysicalDeviceDirectFBPresentationSupportEXT;
-#endif // VK_USE_PLATFORM_DIRECTFB_EXT
-};
-
-union loader_instance_extension_enables {
- struct {
- uint8_t khr_get_physical_device_properties2 : 1;
- uint8_t khr_device_group_creation : 1;
- uint8_t khr_external_memory_capabilities : 1;
- uint8_t khr_external_semaphore_capabilities : 1;
- uint8_t khr_external_fence_capabilities : 1;
- uint8_t ext_debug_report : 1;
- uint8_t nv_external_memory_capabilities : 1;
- uint8_t nn_vi_surface : 1;
- uint8_t ext_direct_mode_display : 1;
- uint8_t ext_acquire_xlib_display : 1;
- uint8_t ext_display_surface_counter : 1;
- uint8_t ext_debug_utils : 1;
- };
- uint64_t padding[4];
-};
-
-
diff --git a/thirdparty/vulkan/loader/vk_loader_layer.h b/thirdparty/vulkan/loader/vk_loader_layer.h
deleted file mode 100644
index dfcf5b2a46..0000000000
--- a/thirdparty/vulkan/loader/vk_loader_layer.h
+++ /dev/null
@@ -1,46 +0,0 @@
-/*
-*
-* Copyright (c) 2016 The Khronos Group Inc.
-* Copyright (c) 2016 Valve Corporation
-* Copyright (c) 2016 LunarG, Inc.
-*
-* Licensed under the Apache License, Version 2.0 (the "License");
-* you may not use this file except in compliance with the License.
-* You may obtain a copy of the License at
-*
-* http://www.apache.org/licenses/LICENSE-2.0
-*
-* Unless required by applicable law or agreed to in writing, software
-* distributed under the License is distributed on an "AS IS" BASIS,
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-* See the License for the specific language governing permissions and
-* limitations under the License.
-*
-* Author: Mark Lobodzinski <mark@lunarg.com>
-*
-*/
-#pragma once
-
-// Linked list node for tree of debug callbacks
-typedef struct VkDebugReportContent {
- VkDebugReportCallbackEXT msgCallback;
- PFN_vkDebugReportCallbackEXT pfnMsgCallback;
- VkFlags msgFlags;
-} VkDebugReportContent;
-
-typedef struct VkDebugUtilsMessengerContent {
- VkDebugUtilsMessengerEXT messenger;
- VkDebugUtilsMessageSeverityFlagsEXT messageSeverity;
- VkDebugUtilsMessageTypeFlagsEXT messageType;
- PFN_vkDebugUtilsMessengerCallbackEXT pfnUserCallback;
-} VkDebugUtilsMessengerContent;
-
-typedef struct VkLayerDbgFunctionNode_ {
- bool is_messenger;
- union {
- VkDebugReportContent report;
- VkDebugUtilsMessengerContent messenger;
- };
- void *pUserData;
- struct VkLayerDbgFunctionNode_ *pNext;
-} VkLayerDbgFunctionNode;
diff --git a/thirdparty/vulkan/loader/vk_loader_platform.h b/thirdparty/vulkan/loader/vk_loader_platform.h
deleted file mode 100644
index 36698f7fa4..0000000000
--- a/thirdparty/vulkan/loader/vk_loader_platform.h
+++ /dev/null
@@ -1,448 +0,0 @@
-/*
- *
- * Copyright (c) 2015-2018 The Khronos Group Inc.
- * Copyright (c) 2015-2018 Valve Corporation
- * Copyright (c) 2015-2018 LunarG, Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * Author: Ian Elliot <ian@lunarg.com>
- * Author: Jon Ashburn <jon@lunarg.com>
- * Author: Lenny Komow <lenny@lunarg.com>
- *
- */
-#pragma once
-
-#if defined(_WIN32)
-// WinSock2.h must be included *BEFORE* windows.h
-#include <winsock2.h>
-#endif // _WIN32
-
-#if defined(__Fuchsia__)
-#include "dlopen_fuchsia.h"
-#endif // defined(__Fuchsia__)
-
-#include "vulkan/vk_platform.h"
-#include "vulkan/vk_sdk_platform.h"
-
-#if defined(__linux__) || defined(__APPLE__) || defined(__Fuchsia__)
-/* Linux-specific common code: */
-
-// Headers:
-//#ifndef _GNU_SOURCE
-//#define _GNU_SOURCE 1
-//#endif
-#include <unistd.h>
-// Note: The following file is for dynamic loading:
-#include <dlfcn.h>
-#include <pthread.h>
-#include <assert.h>
-#include <string.h>
-#include <stdbool.h>
-#include <stdlib.h>
-#include <libgen.h>
-
-// VK Library Filenames, Paths, etc.:
-#define PATH_SEPARATOR ':'
-#define DIRECTORY_SYMBOL '/'
-
-#define VULKAN_DIR "vulkan/"
-#define VULKAN_ICDCONF_DIR "icd.d"
-#define VULKAN_ICD_DIR "icd"
-#define VULKAN_SETTINGSCONF_DIR "settings.d"
-#define VULKAN_ELAYERCONF_DIR "explicit_layer.d"
-#define VULKAN_ILAYERCONF_DIR "implicit_layer.d"
-#define VULKAN_LAYER_DIR "layer"
-
-#define VK_DRIVERS_INFO_RELATIVE_DIR VULKAN_DIR VULKAN_ICDCONF_DIR
-#define VK_SETTINGS_INFO_RELATIVE_DIR VULKAN_DIR VULKAN_SETTINGSCONF_DIR
-#define VK_ELAYERS_INFO_RELATIVE_DIR VULKAN_DIR VULKAN_ELAYERCONF_DIR
-#define VK_ILAYERS_INFO_RELATIVE_DIR VULKAN_DIR VULKAN_ILAYERCONF_DIR
-
-#define VK_DRIVERS_INFO_REGISTRY_LOC ""
-#define VK_SETTINGS_INFO_REGISTRY_LOC ""
-#define VK_ELAYERS_INFO_REGISTRY_LOC ""
-#define VK_ILAYERS_INFO_REGISTRY_LOC ""
-
-#if !defined(DEFAULT_VK_LAYERS_PATH)
-#define DEFAULT_VK_LAYERS_PATH ""
-#endif
-#if !defined(LAYERS_SOURCE_PATH)
-#define LAYERS_SOURCE_PATH NULL
-#endif
-#define LAYERS_PATH_ENV "VK_LAYER_PATH"
-#define ENABLED_LAYERS_ENV "VK_INSTANCE_LAYERS"
-
-// C99:
-#define PRINTF_SIZE_T_SPECIFIER "%zu"
-
-// File IO
-static inline bool loader_platform_file_exists(const char *path) {
- if (access(path, F_OK))
- return false;
- else
- return true;
-}
-
-static inline bool loader_platform_is_path_absolute(const char *path) {
- if (path[0] == '/')
- return true;
- else
- return false;
-}
-
-static inline char *loader_platform_dirname(char *path) { return dirname(path); }
-
-#if defined(__linux__)
-
-// find application path + name. Path cannot be longer than 1024, returns NULL if it is greater than that.
-static inline char *loader_platform_executable_path(char *buffer, size_t size) {
- ssize_t count = readlink("/proc/self/exe", buffer, size);
- if (count == -1) return NULL;
- if (count == 0) return NULL;
- buffer[count] = '\0';
- return buffer;
-}
-#elif defined(__APPLE__) // defined(__linux__)
-#include <libproc.h>
-static inline char *loader_platform_executable_path(char *buffer, size_t size) {
- pid_t pid = getpid();
- int ret = proc_pidpath(pid, buffer, size);
- if (ret <= 0) return NULL;
- buffer[ret] = '\0';
- return buffer;
-}
-#elif defined(__Fuchsia__)
-static inline char *loader_platform_executable_path(char *buffer, size_t size) { return NULL; }
-#endif // defined (__APPLE__)
-
-// Compatability with compilers that don't support __has_feature
-#ifndef __has_feature
-#define __has_feature(x) 0
-#endif
-
-#if __has_feature(address_sanitizer) || defined(__SANITIZE_ADDRESS__)
-#define LOADER_ADDRESS_SANITIZER
-#endif
-
-// Dynamic Loading of libraries:
-typedef void *loader_platform_dl_handle;
-// When loading the library, we use RTLD_LAZY so that not all symbols have to be
-// resolved at this time (which improves performance). Note that if not all symbols
-// can be resolved, this could cause crashes later. Use the LD_BIND_NOW environment
-// variable to force all symbols to be resolved here.
-#define LOADER_DLOPEN_MODE (RTLD_LAZY | RTLD_LOCAL)
-
-#if defined(__Fuchsia__)
-static inline loader_platform_dl_handle loader_platform_open_driver(const char *libPath) {
- return dlopen_fuchsia(libPath, LOADER_DLOPEN_MODE, true);
-}
-static inline loader_platform_dl_handle loader_platform_open_library(const char *libPath) {
- return dlopen_fuchsia(libPath, LOADER_DLOPEN_MODE, false);
-}
-#else
-static inline loader_platform_dl_handle loader_platform_open_library(const char *libPath) {
- return dlopen(libPath, LOADER_DLOPEN_MODE);
-}
-#endif
-
-static inline const char *loader_platform_open_library_error(const char *libPath) {
-#ifdef __Fuchsia__
- return dlerror_fuchsia();
-#else
- return dlerror();
-#endif
-}
-static inline void loader_platform_close_library(loader_platform_dl_handle library) { dlclose(library); }
-static inline void *loader_platform_get_proc_address(loader_platform_dl_handle library, const char *name) {
- assert(library);
- assert(name);
- return dlsym(library, name);
-}
-static inline const char *loader_platform_get_proc_address_error(const char *name) { return dlerror(); }
-
-// Threads:
-typedef pthread_t loader_platform_thread;
-#define THREAD_LOCAL_DECL __thread
-
-// The once init functionality is not used on Linux
-#define LOADER_PLATFORM_THREAD_ONCE_DECLARATION(var)
-#define LOADER_PLATFORM_THREAD_ONCE_DEFINITION(var)
-#define LOADER_PLATFORM_THREAD_ONCE(ctl, func)
-
-// Thread IDs:
-typedef pthread_t loader_platform_thread_id;
-static inline loader_platform_thread_id loader_platform_get_thread_id() { return pthread_self(); }
-
-// Thread mutex:
-typedef pthread_mutex_t loader_platform_thread_mutex;
-static inline void loader_platform_thread_create_mutex(loader_platform_thread_mutex *pMutex) { pthread_mutex_init(pMutex, NULL); }
-static inline void loader_platform_thread_lock_mutex(loader_platform_thread_mutex *pMutex) { pthread_mutex_lock(pMutex); }
-static inline void loader_platform_thread_unlock_mutex(loader_platform_thread_mutex *pMutex) { pthread_mutex_unlock(pMutex); }
-static inline void loader_platform_thread_delete_mutex(loader_platform_thread_mutex *pMutex) { pthread_mutex_destroy(pMutex); }
-typedef pthread_cond_t loader_platform_thread_cond;
-static inline void loader_platform_thread_init_cond(loader_platform_thread_cond *pCond) { pthread_cond_init(pCond, NULL); }
-static inline void loader_platform_thread_cond_wait(loader_platform_thread_cond *pCond, loader_platform_thread_mutex *pMutex) {
- pthread_cond_wait(pCond, pMutex);
-}
-static inline void loader_platform_thread_cond_broadcast(loader_platform_thread_cond *pCond) { pthread_cond_broadcast(pCond); }
-
-#define loader_stack_alloc(size) alloca(size)
-
-#elif defined(_WIN32) // defined(__linux__)
-/* Windows-specific common code: */
-// WinBase.h defines CreateSemaphore and synchapi.h defines CreateEvent
-// undefine them to avoid conflicts with VkLayerDispatchTable struct members.
-#ifdef CreateSemaphore
-#undef CreateSemaphore
-#endif
-#ifdef CreateEvent
-#undef CreateEvent
-#endif
-#include <assert.h>
-#include <stdio.h>
-#include <string.h>
-#include <io.h>
-#include <stdbool.h>
-#include <shlwapi.h>
-#include <direct.h>
-#ifdef __cplusplus
-#include <iostream>
-#include <string>
-#endif // __cplusplus
-
-// VK Library Filenames, Paths, etc.:
-#define PATH_SEPARATOR ';'
-#define DIRECTORY_SYMBOL '\\'
-#define DEFAULT_VK_REGISTRY_HIVE HKEY_LOCAL_MACHINE
-#define DEFAULT_VK_REGISTRY_HIVE_STR "HKEY_LOCAL_MACHINE"
-#define SECONDARY_VK_REGISTRY_HIVE HKEY_CURRENT_USER
-#define SECONDARY_VK_REGISTRY_HIVE_STR "HKEY_CURRENT_USER"
-
-#define VK_DRIVERS_INFO_RELATIVE_DIR ""
-#define VK_SETTINGS_INFO_RELATIVE_DIR ""
-#define VK_ELAYERS_INFO_RELATIVE_DIR ""
-#define VK_ILAYERS_INFO_RELATIVE_DIR ""
-
-#ifdef _WIN64
-#define HKR_VK_DRIVER_NAME API_NAME "DriverName"
-#else
-#define HKR_VK_DRIVER_NAME API_NAME "DriverNameWow"
-#endif
-#define VK_DRIVERS_INFO_REGISTRY_LOC "SOFTWARE\\Khronos\\" API_NAME "\\Drivers"
-#define VK_SETTINGS_INFO_REGISTRY_LOC "SOFTWARE\\Khronos\\" API_NAME "\\Settings"
-#define VK_ELAYERS_INFO_REGISTRY_LOC "SOFTWARE\\Khronos\\" API_NAME "\\ExplicitLayers"
-#define VK_ILAYERS_INFO_REGISTRY_LOC "SOFTWARE\\Khronos\\" API_NAME "\\ImplicitLayers"
-
-#if !defined(DEFAULT_VK_LAYERS_PATH)
-#define DEFAULT_VK_LAYERS_PATH ""
-#endif
-#if !defined(LAYERS_SOURCE_PATH)
-#define LAYERS_SOURCE_PATH NULL
-#endif
-#define LAYERS_PATH_ENV "VK_LAYER_PATH"
-#define ENABLED_LAYERS_ENV "VK_INSTANCE_LAYERS"
-
-#define PRINTF_SIZE_T_SPECIFIER "%Iu"
-
-#if defined(_WIN32)
-// Get the key for the plug n play driver registry
-// The string returned by this function should NOT be freed
-static inline const char *LoaderPnpDriverRegistry() {
- BOOL is_wow;
- IsWow64Process(GetCurrentProcess(), &is_wow);
- return is_wow ? "VulkanDriverNameWow" : "VulkanDriverName";
-}
-static inline const wchar_t *LoaderPnpDriverRegistryWide() {
- BOOL is_wow;
- IsWow64Process(GetCurrentProcess(), &is_wow);
- return is_wow ? L"VulkanDriverNameWow" : L"VulkanDriverName";
-}
-
-// Get the key for the plug 'n play explicit layer registry
-// The string returned by this function should NOT be freed
-static inline const char *LoaderPnpELayerRegistry() {
- BOOL is_wow;
- IsWow64Process(GetCurrentProcess(), &is_wow);
- return is_wow ? "VulkanExplicitLayersWow" : "VulkanExplicitLayers";
-}
-static inline const wchar_t *LoaderPnpELayerRegistryWide() {
- BOOL is_wow;
- IsWow64Process(GetCurrentProcess(), &is_wow);
- return is_wow ? L"VulkanExplicitLayersWow" : L"VulkanExplicitLayers";
-}
-
-// Get the key for the plug 'n play implicit layer registry
-// The string returned by this function should NOT be freed
-static inline const char *LoaderPnpILayerRegistry() {
- BOOL is_wow;
- IsWow64Process(GetCurrentProcess(), &is_wow);
- return is_wow ? "VulkanImplicitLayersWow" : "VulkanImplicitLayers";
-}
-static inline const wchar_t *LoaderPnpILayerRegistryWide() {
- BOOL is_wow;
- IsWow64Process(GetCurrentProcess(), &is_wow);
- return is_wow ? L"VulkanImplicitLayersWow" : L"VulkanImplicitLayers";
-}
-#endif
-
-// File IO
-static bool loader_platform_file_exists(const char *path) {
- if ((_access(path, 0)) == -1)
- return false;
- else
- return true;
-}
-
-static bool loader_platform_is_path_absolute(const char *path) {
- if (!path || !*path) {
- return false;
- }
- if (*path == DIRECTORY_SYMBOL || path[1] == ':') {
- return true;
- }
- return false;
-}
-
-// WIN32 runtime doesn't have dirname().
-static inline char *loader_platform_dirname(char *path) {
- char *current, *next;
-
- // TODO/TBD: Do we need to deal with the Windows's ":" character?
-
- for (current = path; *current != '\0'; current = next) {
- next = strchr(current, DIRECTORY_SYMBOL);
- if (next == NULL) {
- if (current != path) *(current - 1) = '\0';
- return path;
- } else {
- // Point one character past the DIRECTORY_SYMBOL:
- next++;
- }
- }
- return path;
-}
-
-static inline char *loader_platform_executable_path(char *buffer, size_t size) {
- DWORD ret = GetModuleFileName(NULL, buffer, (DWORD)size);
- if (ret == 0) return NULL;
- if (ret > size) return NULL;
- buffer[ret] = '\0';
- return buffer;
-}
-
-// Dynamic Loading:
-typedef HMODULE loader_platform_dl_handle;
-static loader_platform_dl_handle loader_platform_open_library(const char *lib_path) {
- // Try loading the library the original way first.
- loader_platform_dl_handle lib_handle = LoadLibrary(lib_path);
- if (lib_handle == NULL && GetLastError() == ERROR_MOD_NOT_FOUND) {
- // If that failed, then try loading it with broader search folders.
- lib_handle = LoadLibraryEx(lib_path, NULL, LOAD_LIBRARY_SEARCH_DEFAULT_DIRS | LOAD_LIBRARY_SEARCH_DLL_LOAD_DIR);
- }
- return lib_handle;
-}
-static char *loader_platform_open_library_error(const char *libPath) {
- static char errorMsg[164];
- (void)snprintf(errorMsg, 163, "Failed to open dynamic library \"%s\" with error %lu", libPath, GetLastError());
- return errorMsg;
-}
-static void loader_platform_close_library(loader_platform_dl_handle library) { FreeLibrary(library); }
-static void *loader_platform_get_proc_address(loader_platform_dl_handle library, const char *name) {
- assert(library);
- assert(name);
- return (void *)GetProcAddress(library, name);
-}
-static char *loader_platform_get_proc_address_error(const char *name) {
- static char errorMsg[120];
- (void)snprintf(errorMsg, 119, "Failed to find function \"%s\" in dynamic library", name);
- return errorMsg;
-}
-
-// Threads:
-typedef HANDLE loader_platform_thread;
-
-// __declspec(thread) is not supported by MinGW compiler (ignored with warning or
-// cause error depending on compiler switches)
-//
-// __thread should be used instead
-//
-// __MINGW32__ defined for both 32 and 64 bit MinGW compilers, so it is enough to
-// detect any (32 or 64) flavor of MinGW compiler.
-//
-// @note __GNUC__ could be used as a more generic way to detect _any_
-// GCC[-compatible] compiler on Windows, but this fix was tested
-// only with MinGW, so keep it explicit at the moment.
-#if defined(__MINGW32__)
-#define THREAD_LOCAL_DECL __thread
-#else
-#define THREAD_LOCAL_DECL __declspec(thread)
-#endif
-
-// The once init functionality is not used when building a DLL on Windows. This is because there is no way to clean up the
-// resources allocated by anything allocated by once init. This isn't a problem for static libraries, but it is for dynamic
-// ones. When building a DLL, we use DllMain() instead to allow properly cleaning up resources.
-#if defined(LOADER_DYNAMIC_LIB)
-#define LOADER_PLATFORM_THREAD_ONCE_DECLARATION(var)
-#define LOADER_PLATFORM_THREAD_ONCE_DEFINITION(var)
-#define LOADER_PLATFORM_THREAD_ONCE(ctl, func)
-#else
-#define LOADER_PLATFORM_THREAD_ONCE_DECLARATION(var) INIT_ONCE var = INIT_ONCE_STATIC_INIT;
-#define LOADER_PLATFORM_THREAD_ONCE_DEFINITION(var) INIT_ONCE var;
-#define LOADER_PLATFORM_THREAD_ONCE(ctl, func) loader_platform_thread_once_fn(ctl, func)
-static BOOL CALLBACK InitFuncWrapper(PINIT_ONCE InitOnce, PVOID Parameter, PVOID *Context) {
- void (*func)(void) = (void (*)(void))Parameter;
- func();
- return TRUE;
-}
-static void loader_platform_thread_once_fn(void *ctl, void (*func)(void)) {
- assert(func != NULL);
- assert(ctl != NULL);
- InitOnceExecuteOnce((PINIT_ONCE)ctl, InitFuncWrapper, (void *)func, NULL);
-}
-#endif
-
-// Thread IDs:
-typedef DWORD loader_platform_thread_id;
-static loader_platform_thread_id loader_platform_get_thread_id() { return GetCurrentThreadId(); }
-
-// Thread mutex:
-typedef CRITICAL_SECTION loader_platform_thread_mutex;
-static void loader_platform_thread_create_mutex(loader_platform_thread_mutex *pMutex) { InitializeCriticalSection(pMutex); }
-static void loader_platform_thread_lock_mutex(loader_platform_thread_mutex *pMutex) { EnterCriticalSection(pMutex); }
-static void loader_platform_thread_unlock_mutex(loader_platform_thread_mutex *pMutex) { LeaveCriticalSection(pMutex); }
-static void loader_platform_thread_delete_mutex(loader_platform_thread_mutex *pMutex) { DeleteCriticalSection(pMutex); }
-typedef CONDITION_VARIABLE loader_platform_thread_cond;
-static void loader_platform_thread_init_cond(loader_platform_thread_cond *pCond) { InitializeConditionVariable(pCond); }
-static void loader_platform_thread_cond_wait(loader_platform_thread_cond *pCond, loader_platform_thread_mutex *pMutex) {
- SleepConditionVariableCS(pCond, pMutex, INFINITE);
-}
-static void loader_platform_thread_cond_broadcast(loader_platform_thread_cond *pCond) { WakeAllConditionVariable(pCond); }
-
-#define loader_stack_alloc(size) _alloca(size)
-#else // defined(_WIN32)
-
-#error The "loader_platform.h" file must be modified for this OS.
-
-// NOTE: In order to support another OS, an #elif needs to be added (above the
-// "#else // defined(_WIN32)") for that OS, and OS-specific versions of the
-// contents of this file must be created.
-
-// NOTE: Other OS-specific changes are also needed for this OS. Search for
-// files with "WIN32" in it, as a quick way to find files that must be changed.
-
-#endif // defined(_WIN32)
-
-// returns true if the given string appears to be a relative or absolute
-// path, as opposed to a bare filename.
-static inline bool loader_platform_is_path(const char *path) { return strchr(path, DIRECTORY_SYMBOL) != NULL; }
diff --git a/thirdparty/vulkan/loader/vk_object_types.h b/thirdparty/vulkan/loader/vk_object_types.h
deleted file mode 100644
index 807ff7c61e..0000000000
--- a/thirdparty/vulkan/loader/vk_object_types.h
+++ /dev/null
@@ -1,387 +0,0 @@
-// *** THIS FILE IS GENERATED - DO NOT EDIT ***
-// See helper_file_generator.py for modifications
-
-
-/***************************************************************************
- *
- * Copyright (c) 2015-2017 The Khronos Group Inc.
- * Copyright (c) 2015-2017 Valve Corporation
- * Copyright (c) 2015-2017 LunarG, Inc.
- * Copyright (c) 2015-2017 Google Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * Author: Mark Lobodzinski <mark@lunarg.com>
- * Author: Courtney Goeltzenleuchter <courtneygo@google.com>
- * Author: Tobin Ehlis <tobine@google.com>
- * Author: Chris Forbes <chrisforbes@google.com>
- * Author: John Zulauf<jzulauf@lunarg.com>
- *
- ****************************************************************************/
-
-
-#pragma once
-
-#include <vulkan/vulkan.h>
-
-// Object Type enum for validation layer internal object handling
-typedef enum VulkanObjectType {
- kVulkanObjectTypeUnknown = 0,
- kVulkanObjectTypeBuffer = 1,
- kVulkanObjectTypeImage = 2,
- kVulkanObjectTypeInstance = 3,
- kVulkanObjectTypePhysicalDevice = 4,
- kVulkanObjectTypeDevice = 5,
- kVulkanObjectTypeQueue = 6,
- kVulkanObjectTypeSemaphore = 7,
- kVulkanObjectTypeCommandBuffer = 8,
- kVulkanObjectTypeFence = 9,
- kVulkanObjectTypeDeviceMemory = 10,
- kVulkanObjectTypeEvent = 11,
- kVulkanObjectTypeQueryPool = 12,
- kVulkanObjectTypeBufferView = 13,
- kVulkanObjectTypeImageView = 14,
- kVulkanObjectTypeShaderModule = 15,
- kVulkanObjectTypePipelineCache = 16,
- kVulkanObjectTypePipelineLayout = 17,
- kVulkanObjectTypePipeline = 18,
- kVulkanObjectTypeRenderPass = 19,
- kVulkanObjectTypeDescriptorSetLayout = 20,
- kVulkanObjectTypeSampler = 21,
- kVulkanObjectTypeDescriptorSet = 22,
- kVulkanObjectTypeDescriptorPool = 23,
- kVulkanObjectTypeFramebuffer = 24,
- kVulkanObjectTypeCommandPool = 25,
- kVulkanObjectTypeSamplerYcbcrConversion = 26,
- kVulkanObjectTypeDescriptorUpdateTemplate = 27,
- kVulkanObjectTypeSurfaceKHR = 28,
- kVulkanObjectTypeSwapchainKHR = 29,
- kVulkanObjectTypeDisplayKHR = 30,
- kVulkanObjectTypeDisplayModeKHR = 31,
- kVulkanObjectTypeDeferredOperationKHR = 32,
- kVulkanObjectTypeDebugReportCallbackEXT = 33,
- kVulkanObjectTypeDebugUtilsMessengerEXT = 34,
- kVulkanObjectTypeValidationCacheEXT = 35,
- kVulkanObjectTypeAccelerationStructureNV = 36,
- kVulkanObjectTypePerformanceConfigurationINTEL = 37,
- kVulkanObjectTypeIndirectCommandsLayoutNV = 38,
- kVulkanObjectTypePrivateDataSlotEXT = 39,
- kVulkanObjectTypeAccelerationStructureKHR = 40,
- kVulkanObjectTypeMax = 41,
- // Aliases for backwards compatibilty of "promoted" types
- kVulkanObjectTypeDescriptorUpdateTemplateKHR = kVulkanObjectTypeDescriptorUpdateTemplate,
- kVulkanObjectTypeSamplerYcbcrConversionKHR = kVulkanObjectTypeSamplerYcbcrConversion,
-} VulkanObjectType;
-
-// Array of object name strings for OBJECT_TYPE enum conversion
-static const char * const object_string[kVulkanObjectTypeMax] = {
- "Unknown",
- "Buffer",
- "Image",
- "Instance",
- "PhysicalDevice",
- "Device",
- "Queue",
- "Semaphore",
- "CommandBuffer",
- "Fence",
- "DeviceMemory",
- "Event",
- "QueryPool",
- "BufferView",
- "ImageView",
- "ShaderModule",
- "PipelineCache",
- "PipelineLayout",
- "Pipeline",
- "RenderPass",
- "DescriptorSetLayout",
- "Sampler",
- "DescriptorSet",
- "DescriptorPool",
- "Framebuffer",
- "CommandPool",
- "SamplerYcbcrConversion",
- "DescriptorUpdateTemplate",
- "SurfaceKHR",
- "SwapchainKHR",
- "DisplayKHR",
- "DisplayModeKHR",
- "DeferredOperationKHR",
- "DebugReportCallbackEXT",
- "DebugUtilsMessengerEXT",
- "ValidationCacheEXT",
- "AccelerationStructureNV",
- "PerformanceConfigurationINTEL",
- "IndirectCommandsLayoutNV",
- "PrivateDataSlotEXT",
- "AccelerationStructureKHR",
-};
-
-// Helper array to get Vulkan VK_EXT_debug_report object type enum from the internal layers version
-const VkDebugReportObjectTypeEXT get_debug_report_enum[] = {
- VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, // kVulkanObjectTypeUnknown
- VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_EXT, // kVulkanObjectTypeBuffer
- VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_EXT, // kVulkanObjectTypeImage
- VK_DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT, // kVulkanObjectTypeInstance
- VK_DEBUG_REPORT_OBJECT_TYPE_PHYSICAL_DEVICE_EXT, // kVulkanObjectTypePhysicalDevice
- VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_EXT, // kVulkanObjectTypeDevice
- VK_DEBUG_REPORT_OBJECT_TYPE_QUEUE_EXT, // kVulkanObjectTypeQueue
- VK_DEBUG_REPORT_OBJECT_TYPE_SEMAPHORE_EXT, // kVulkanObjectTypeSemaphore
- VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT, // kVulkanObjectTypeCommandBuffer
- VK_DEBUG_REPORT_OBJECT_TYPE_FENCE_EXT, // kVulkanObjectTypeFence
- VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_MEMORY_EXT, // kVulkanObjectTypeDeviceMemory
- VK_DEBUG_REPORT_OBJECT_TYPE_EVENT_EXT, // kVulkanObjectTypeEvent
- VK_DEBUG_REPORT_OBJECT_TYPE_QUERY_POOL_EXT, // kVulkanObjectTypeQueryPool
- VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_VIEW_EXT, // kVulkanObjectTypeBufferView
- VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_VIEW_EXT, // kVulkanObjectTypeImageView
- VK_DEBUG_REPORT_OBJECT_TYPE_SHADER_MODULE_EXT, // kVulkanObjectTypeShaderModule
- VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_CACHE_EXT, // kVulkanObjectTypePipelineCache
- VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_LAYOUT_EXT, // kVulkanObjectTypePipelineLayout
- VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT, // kVulkanObjectTypePipeline
- VK_DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT, // kVulkanObjectTypeRenderPass
- VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT_EXT, // kVulkanObjectTypeDescriptorSetLayout
- VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_EXT, // kVulkanObjectTypeSampler
- VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_EXT, // kVulkanObjectTypeDescriptorSet
- VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_POOL_EXT, // kVulkanObjectTypeDescriptorPool
- VK_DEBUG_REPORT_OBJECT_TYPE_FRAMEBUFFER_EXT, // kVulkanObjectTypeFramebuffer
- VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_POOL_EXT, // kVulkanObjectTypeCommandPool
- VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_EXT, // kVulkanObjectTypeSamplerYcbcrConversion
- VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_EXT, // kVulkanObjectTypeDescriptorUpdateTemplate
- VK_DEBUG_REPORT_OBJECT_TYPE_SURFACE_KHR_EXT, // kVulkanObjectTypeSurfaceKHR
- VK_DEBUG_REPORT_OBJECT_TYPE_SWAPCHAIN_KHR_EXT, // kVulkanObjectTypeSwapchainKHR
- VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_KHR_EXT, // kVulkanObjectTypeDisplayKHR
- VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_MODE_KHR_EXT, // kVulkanObjectTypeDisplayModeKHR
- VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, // kVulkanObjectTypeDeferredOperationKHR
- VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT_EXT, // kVulkanObjectTypeDebugReportCallbackEXT
- VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, // kVulkanObjectTypeDebugUtilsMessengerEXT
- VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT, // kVulkanObjectTypeValidationCacheEXT
- VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV_EXT, // kVulkanObjectTypeAccelerationStructureNV
- VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, // kVulkanObjectTypePerformanceConfigurationINTEL
- VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, // kVulkanObjectTypeIndirectCommandsLayoutNV
- VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, // kVulkanObjectTypePrivateDataSlotEXT
- VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR_EXT, // kVulkanObjectTypeAccelerationStructureKHR
-};
-
-// Helper array to get Official Vulkan VkObjectType enum from the internal layers version
-const VkObjectType get_object_type_enum[] = {
- VK_OBJECT_TYPE_UNKNOWN, // kVulkanObjectTypeUnknown
- VK_OBJECT_TYPE_BUFFER, // kVulkanObjectTypeBuffer
- VK_OBJECT_TYPE_IMAGE, // kVulkanObjectTypeImage
- VK_OBJECT_TYPE_INSTANCE, // kVulkanObjectTypeInstance
- VK_OBJECT_TYPE_PHYSICAL_DEVICE, // kVulkanObjectTypePhysicalDevice
- VK_OBJECT_TYPE_DEVICE, // kVulkanObjectTypeDevice
- VK_OBJECT_TYPE_QUEUE, // kVulkanObjectTypeQueue
- VK_OBJECT_TYPE_SEMAPHORE, // kVulkanObjectTypeSemaphore
- VK_OBJECT_TYPE_COMMAND_BUFFER, // kVulkanObjectTypeCommandBuffer
- VK_OBJECT_TYPE_FENCE, // kVulkanObjectTypeFence
- VK_OBJECT_TYPE_DEVICE_MEMORY, // kVulkanObjectTypeDeviceMemory
- VK_OBJECT_TYPE_EVENT, // kVulkanObjectTypeEvent
- VK_OBJECT_TYPE_QUERY_POOL, // kVulkanObjectTypeQueryPool
- VK_OBJECT_TYPE_BUFFER_VIEW, // kVulkanObjectTypeBufferView
- VK_OBJECT_TYPE_IMAGE_VIEW, // kVulkanObjectTypeImageView
- VK_OBJECT_TYPE_SHADER_MODULE, // kVulkanObjectTypeShaderModule
- VK_OBJECT_TYPE_PIPELINE_CACHE, // kVulkanObjectTypePipelineCache
- VK_OBJECT_TYPE_PIPELINE_LAYOUT, // kVulkanObjectTypePipelineLayout
- VK_OBJECT_TYPE_PIPELINE, // kVulkanObjectTypePipeline
- VK_OBJECT_TYPE_RENDER_PASS, // kVulkanObjectTypeRenderPass
- VK_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT, // kVulkanObjectTypeDescriptorSetLayout
- VK_OBJECT_TYPE_SAMPLER, // kVulkanObjectTypeSampler
- VK_OBJECT_TYPE_DESCRIPTOR_SET, // kVulkanObjectTypeDescriptorSet
- VK_OBJECT_TYPE_DESCRIPTOR_POOL, // kVulkanObjectTypeDescriptorPool
- VK_OBJECT_TYPE_FRAMEBUFFER, // kVulkanObjectTypeFramebuffer
- VK_OBJECT_TYPE_COMMAND_POOL, // kVulkanObjectTypeCommandPool
- VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION, // kVulkanObjectTypeSamplerYcbcrConversion
- VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE, // kVulkanObjectTypeDescriptorUpdateTemplate
- VK_OBJECT_TYPE_SURFACE_KHR, // kVulkanObjectTypeSurfaceKHR
- VK_OBJECT_TYPE_SWAPCHAIN_KHR, // kVulkanObjectTypeSwapchainKHR
- VK_OBJECT_TYPE_DISPLAY_KHR, // kVulkanObjectTypeDisplayKHR
- VK_OBJECT_TYPE_DISPLAY_MODE_KHR, // kVulkanObjectTypeDisplayModeKHR
- VK_OBJECT_TYPE_DEFERRED_OPERATION_KHR, // kVulkanObjectTypeDeferredOperationKHR
- VK_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT, // kVulkanObjectTypeDebugReportCallbackEXT
- VK_OBJECT_TYPE_DEBUG_UTILS_MESSENGER_EXT, // kVulkanObjectTypeDebugUtilsMessengerEXT
- VK_OBJECT_TYPE_VALIDATION_CACHE_EXT, // kVulkanObjectTypeValidationCacheEXT
- VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV, // kVulkanObjectTypeAccelerationStructureNV
- VK_OBJECT_TYPE_PERFORMANCE_CONFIGURATION_INTEL, // kVulkanObjectTypePerformanceConfigurationINTEL
- VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NV, // kVulkanObjectTypeIndirectCommandsLayoutNV
- VK_OBJECT_TYPE_PRIVATE_DATA_SLOT_EXT, // kVulkanObjectTypePrivateDataSlotEXT
- VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR, // kVulkanObjectTypeAccelerationStructureKHR
-};
-
-// Helper function to convert from VkDebugReportObjectTypeEXT to VkObjectType
-static inline VkObjectType convertDebugReportObjectToCoreObject(VkDebugReportObjectTypeEXT debug_report_obj){
- if (debug_report_obj == VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT) {
- return VK_OBJECT_TYPE_UNKNOWN;
- } else if (debug_report_obj == VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT) {
- return VK_OBJECT_TYPE_UNKNOWN;
- } else if (debug_report_obj == VK_DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT) {
- return VK_OBJECT_TYPE_INSTANCE;
- } else if (debug_report_obj == VK_DEBUG_REPORT_OBJECT_TYPE_PHYSICAL_DEVICE_EXT) {
- return VK_OBJECT_TYPE_PHYSICAL_DEVICE;
- } else if (debug_report_obj == VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_EXT) {
- return VK_OBJECT_TYPE_DEVICE;
- } else if (debug_report_obj == VK_DEBUG_REPORT_OBJECT_TYPE_QUEUE_EXT) {
- return VK_OBJECT_TYPE_QUEUE;
- } else if (debug_report_obj == VK_DEBUG_REPORT_OBJECT_TYPE_SEMAPHORE_EXT) {
- return VK_OBJECT_TYPE_SEMAPHORE;
- } else if (debug_report_obj == VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT) {
- return VK_OBJECT_TYPE_COMMAND_BUFFER;
- } else if (debug_report_obj == VK_DEBUG_REPORT_OBJECT_TYPE_FENCE_EXT) {
- return VK_OBJECT_TYPE_FENCE;
- } else if (debug_report_obj == VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_MEMORY_EXT) {
- return VK_OBJECT_TYPE_DEVICE_MEMORY;
- } else if (debug_report_obj == VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_EXT) {
- return VK_OBJECT_TYPE_BUFFER;
- } else if (debug_report_obj == VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_EXT) {
- return VK_OBJECT_TYPE_IMAGE;
- } else if (debug_report_obj == VK_DEBUG_REPORT_OBJECT_TYPE_EVENT_EXT) {
- return VK_OBJECT_TYPE_EVENT;
- } else if (debug_report_obj == VK_DEBUG_REPORT_OBJECT_TYPE_QUERY_POOL_EXT) {
- return VK_OBJECT_TYPE_QUERY_POOL;
- } else if (debug_report_obj == VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_VIEW_EXT) {
- return VK_OBJECT_TYPE_BUFFER_VIEW;
- } else if (debug_report_obj == VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_VIEW_EXT) {
- return VK_OBJECT_TYPE_IMAGE_VIEW;
- } else if (debug_report_obj == VK_DEBUG_REPORT_OBJECT_TYPE_SHADER_MODULE_EXT) {
- return VK_OBJECT_TYPE_SHADER_MODULE;
- } else if (debug_report_obj == VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_CACHE_EXT) {
- return VK_OBJECT_TYPE_PIPELINE_CACHE;
- } else if (debug_report_obj == VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_LAYOUT_EXT) {
- return VK_OBJECT_TYPE_PIPELINE_LAYOUT;
- } else if (debug_report_obj == VK_DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT) {
- return VK_OBJECT_TYPE_RENDER_PASS;
- } else if (debug_report_obj == VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT) {
- return VK_OBJECT_TYPE_PIPELINE;
- } else if (debug_report_obj == VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT_EXT) {
- return VK_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT;
- } else if (debug_report_obj == VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_EXT) {
- return VK_OBJECT_TYPE_SAMPLER;
- } else if (debug_report_obj == VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_POOL_EXT) {
- return VK_OBJECT_TYPE_DESCRIPTOR_POOL;
- } else if (debug_report_obj == VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_EXT) {
- return VK_OBJECT_TYPE_DESCRIPTOR_SET;
- } else if (debug_report_obj == VK_DEBUG_REPORT_OBJECT_TYPE_FRAMEBUFFER_EXT) {
- return VK_OBJECT_TYPE_FRAMEBUFFER;
- } else if (debug_report_obj == VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_POOL_EXT) {
- return VK_OBJECT_TYPE_COMMAND_POOL;
- } else if (debug_report_obj == VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_EXT) {
- return VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION;
- } else if (debug_report_obj == VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_EXT) {
- return VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE;
- } else if (debug_report_obj == VK_DEBUG_REPORT_OBJECT_TYPE_SURFACE_KHR_EXT) {
- return VK_OBJECT_TYPE_SURFACE_KHR;
- } else if (debug_report_obj == VK_DEBUG_REPORT_OBJECT_TYPE_SWAPCHAIN_KHR_EXT) {
- return VK_OBJECT_TYPE_SWAPCHAIN_KHR;
- } else if (debug_report_obj == VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_KHR_EXT) {
- return VK_OBJECT_TYPE_DISPLAY_KHR;
- } else if (debug_report_obj == VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_MODE_KHR_EXT) {
- return VK_OBJECT_TYPE_DISPLAY_MODE_KHR;
- } else if (debug_report_obj == VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT_EXT) {
- return VK_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT;
- } else if (debug_report_obj == VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR_EXT) {
- return VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR;
- } else if (debug_report_obj == VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR_EXT) {
- return VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR;
- } else if (debug_report_obj == VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_KHR_EXT) {
- return VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_KHR;
- } else if (debug_report_obj == VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT) {
- return VK_OBJECT_TYPE_VALIDATION_CACHE_EXT;
- } else if (debug_report_obj == VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV_EXT) {
- return VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV;
- }
- return VK_OBJECT_TYPE_UNKNOWN;
-}
-
-// Helper function to convert from VkDebugReportObjectTypeEXT to VkObjectType
-static inline VkDebugReportObjectTypeEXT convertCoreObjectToDebugReportObject(VkObjectType core_report_obj){
- if (core_report_obj == VK_OBJECT_TYPE_UNKNOWN) {
- return VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT;
- } else if (core_report_obj == VK_OBJECT_TYPE_UNKNOWN) {
- return VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT;
- } else if (core_report_obj == VK_OBJECT_TYPE_INSTANCE) {
- return VK_DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT;
- } else if (core_report_obj == VK_OBJECT_TYPE_PHYSICAL_DEVICE) {
- return VK_DEBUG_REPORT_OBJECT_TYPE_PHYSICAL_DEVICE_EXT;
- } else if (core_report_obj == VK_OBJECT_TYPE_DEVICE) {
- return VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_EXT;
- } else if (core_report_obj == VK_OBJECT_TYPE_QUEUE) {
- return VK_DEBUG_REPORT_OBJECT_TYPE_QUEUE_EXT;
- } else if (core_report_obj == VK_OBJECT_TYPE_SEMAPHORE) {
- return VK_DEBUG_REPORT_OBJECT_TYPE_SEMAPHORE_EXT;
- } else if (core_report_obj == VK_OBJECT_TYPE_COMMAND_BUFFER) {
- return VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT;
- } else if (core_report_obj == VK_OBJECT_TYPE_FENCE) {
- return VK_DEBUG_REPORT_OBJECT_TYPE_FENCE_EXT;
- } else if (core_report_obj == VK_OBJECT_TYPE_DEVICE_MEMORY) {
- return VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_MEMORY_EXT;
- } else if (core_report_obj == VK_OBJECT_TYPE_BUFFER) {
- return VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_EXT;
- } else if (core_report_obj == VK_OBJECT_TYPE_IMAGE) {
- return VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_EXT;
- } else if (core_report_obj == VK_OBJECT_TYPE_EVENT) {
- return VK_DEBUG_REPORT_OBJECT_TYPE_EVENT_EXT;
- } else if (core_report_obj == VK_OBJECT_TYPE_QUERY_POOL) {
- return VK_DEBUG_REPORT_OBJECT_TYPE_QUERY_POOL_EXT;
- } else if (core_report_obj == VK_OBJECT_TYPE_BUFFER_VIEW) {
- return VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_VIEW_EXT;
- } else if (core_report_obj == VK_OBJECT_TYPE_IMAGE_VIEW) {
- return VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_VIEW_EXT;
- } else if (core_report_obj == VK_OBJECT_TYPE_SHADER_MODULE) {
- return VK_DEBUG_REPORT_OBJECT_TYPE_SHADER_MODULE_EXT;
- } else if (core_report_obj == VK_OBJECT_TYPE_PIPELINE_CACHE) {
- return VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_CACHE_EXT;
- } else if (core_report_obj == VK_OBJECT_TYPE_PIPELINE_LAYOUT) {
- return VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_LAYOUT_EXT;
- } else if (core_report_obj == VK_OBJECT_TYPE_RENDER_PASS) {
- return VK_DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT;
- } else if (core_report_obj == VK_OBJECT_TYPE_PIPELINE) {
- return VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT;
- } else if (core_report_obj == VK_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT) {
- return VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT_EXT;
- } else if (core_report_obj == VK_OBJECT_TYPE_SAMPLER) {
- return VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_EXT;
- } else if (core_report_obj == VK_OBJECT_TYPE_DESCRIPTOR_POOL) {
- return VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_POOL_EXT;
- } else if (core_report_obj == VK_OBJECT_TYPE_DESCRIPTOR_SET) {
- return VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_EXT;
- } else if (core_report_obj == VK_OBJECT_TYPE_FRAMEBUFFER) {
- return VK_DEBUG_REPORT_OBJECT_TYPE_FRAMEBUFFER_EXT;
- } else if (core_report_obj == VK_OBJECT_TYPE_COMMAND_POOL) {
- return VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_POOL_EXT;
- } else if (core_report_obj == VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION) {
- return VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_EXT;
- } else if (core_report_obj == VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE) {
- return VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_EXT;
- } else if (core_report_obj == VK_OBJECT_TYPE_SURFACE_KHR) {
- return VK_DEBUG_REPORT_OBJECT_TYPE_SURFACE_KHR_EXT;
- } else if (core_report_obj == VK_OBJECT_TYPE_SWAPCHAIN_KHR) {
- return VK_DEBUG_REPORT_OBJECT_TYPE_SWAPCHAIN_KHR_EXT;
- } else if (core_report_obj == VK_OBJECT_TYPE_DISPLAY_KHR) {
- return VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_KHR_EXT;
- } else if (core_report_obj == VK_OBJECT_TYPE_DISPLAY_MODE_KHR) {
- return VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_MODE_KHR_EXT;
- } else if (core_report_obj == VK_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT) {
- return VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT_EXT;
- } else if (core_report_obj == VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR) {
- return VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR_EXT;
- } else if (core_report_obj == VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR) {
- return VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR_EXT;
- } else if (core_report_obj == VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_KHR) {
- return VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_KHR_EXT;
- } else if (core_report_obj == VK_OBJECT_TYPE_VALIDATION_CACHE_EXT) {
- return VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT;
- } else if (core_report_obj == VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV) {
- return VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV_EXT;
- }
- return VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT;
-}
diff --git a/thirdparty/vulkan/loader/wsi.c b/thirdparty/vulkan/loader/wsi.c
deleted file mode 100644
index 523f16a280..0000000000
--- a/thirdparty/vulkan/loader/wsi.c
+++ /dev/null
@@ -1,2526 +0,0 @@
-/*
- * Copyright (c) 2015-2016, 2019 The Khronos Group Inc.
- * Copyright (c) 2015-2016, 2019 Valve Corporation
- * Copyright (c) 2015-2016, 2019 LunarG, Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * Author: Ian Elliott <ian@lunarg.com>
- * Author: Jon Ashburn <jon@lunarg.com>
- * Author: Ian Elliott <ianelliott@google.com>
- * Author: Mark Lobodzinski <mark@lunarg.com>
- * Author: Lenny Komow <lenny@lunarg.com>
- */
-
-#ifndef _GNU_SOURCE
-#define _GNU_SOURCE
-#endif
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include "vk_loader_platform.h"
-#include "loader.h"
-#include "wsi.h"
-#include <vulkan/vk_icd.h>
-
-// The first ICD/Loader interface that support querying the SurfaceKHR from
-// the ICDs.
-#define ICD_VER_SUPPORTS_ICD_SURFACE_KHR 3
-
-void wsi_create_instance(struct loader_instance *ptr_instance, const VkInstanceCreateInfo *pCreateInfo) {
- ptr_instance->wsi_surface_enabled = false;
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- ptr_instance->wsi_win32_surface_enabled = false;
-#endif // VK_USE_PLATFORM_WIN32_KHR
-#ifdef VK_USE_PLATFORM_WAYLAND_KHR
- ptr_instance->wsi_wayland_surface_enabled = false;
-#endif // VK_USE_PLATFORM_WAYLAND_KHR
-#ifdef VK_USE_PLATFORM_XCB_KHR
- ptr_instance->wsi_xcb_surface_enabled = false;
-#endif // VK_USE_PLATFORM_XCB_KHR
-#ifdef VK_USE_PLATFORM_XLIB_KHR
- ptr_instance->wsi_xlib_surface_enabled = false;
-#endif // VK_USE_PLATFORM_XLIB_KHR
-#ifdef VK_USE_PLATFORM_DIRECTFB_EXT
- ptr_instance->wsi_directfb_surface_enabled = false;
-#endif // VK_USE_PLATFORM_DIRECTFB_EXT
-#ifdef VK_USE_PLATFORM_ANDROID_KHR
- ptr_instance->wsi_android_surface_enabled = false;
-#endif // VK_USE_PLATFORM_ANDROID_KHR
-#ifdef VK_USE_PLATFORM_MACOS_MVK
- ptr_instance->wsi_macos_surface_enabled = false;
-#endif // VK_USE_PLATFORM_MACOS_MVK
-#ifdef VK_USE_PLATFORM_IOS_MVK
- ptr_instance->wsi_ios_surface_enabled = false;
-#endif // VK_USE_PLATFORM_IOS_MVK
-#ifdef VK_USE_PLATFORM_GGP
- ptr_instance->wsi_ggp_surface_enabled = false;
-#endif // VK_USE_PLATFORM_GGP
-#ifdef VK_USE_PLATFORM_FUCHSIA
- ptr_instance->wsi_imagepipe_surface_enabled = false;
-#endif // VK_USE_PLATFORM_FUCHSIA
- ptr_instance->wsi_display_enabled = false;
- ptr_instance->wsi_display_props2_enabled = false;
-#ifdef VK_USE_PLATFORM_METAL_EXT
- ptr_instance->wsi_metal_surface_enabled = false;
-#endif // VK_USE_PLATFORM_METAL_EXT
-
- for (uint32_t i = 0; i < pCreateInfo->enabledExtensionCount; i++) {
- if (strcmp(pCreateInfo->ppEnabledExtensionNames[i], VK_KHR_SURFACE_EXTENSION_NAME) == 0) {
- ptr_instance->wsi_surface_enabled = true;
- continue;
- }
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- if (strcmp(pCreateInfo->ppEnabledExtensionNames[i], VK_KHR_WIN32_SURFACE_EXTENSION_NAME) == 0) {
- ptr_instance->wsi_win32_surface_enabled = true;
- continue;
- }
-#endif // VK_USE_PLATFORM_WIN32_KHR
-#ifdef VK_USE_PLATFORM_WAYLAND_KHR
- if (strcmp(pCreateInfo->ppEnabledExtensionNames[i], VK_KHR_WAYLAND_SURFACE_EXTENSION_NAME) == 0) {
- ptr_instance->wsi_wayland_surface_enabled = true;
- continue;
- }
-#endif // VK_USE_PLATFORM_WAYLAND_KHR
-#ifdef VK_USE_PLATFORM_XCB_KHR
- if (strcmp(pCreateInfo->ppEnabledExtensionNames[i], VK_KHR_XCB_SURFACE_EXTENSION_NAME) == 0) {
- ptr_instance->wsi_xcb_surface_enabled = true;
- continue;
- }
-#endif // VK_USE_PLATFORM_XCB_KHR
-#ifdef VK_USE_PLATFORM_XLIB_KHR
- if (strcmp(pCreateInfo->ppEnabledExtensionNames[i], VK_KHR_XLIB_SURFACE_EXTENSION_NAME) == 0) {
- ptr_instance->wsi_xlib_surface_enabled = true;
- continue;
- }
-#endif // VK_USE_PLATFORM_XLIB_KHR
-#ifdef VK_USE_PLATFORM_DIRECTFB_EXT
- if (strcmp(pCreateInfo->ppEnabledExtensionNames[i], VK_EXT_DIRECTFB_SURFACE_EXTENSION_NAME) == 0) {
- ptr_instance->wsi_directfb_surface_enabled = true;
- continue;
- }
-#endif // VK_USE_PLATFORM_DIRECTFB_EXT
-#ifdef VK_USE_PLATFORM_ANDROID_KHR
- if (strcmp(pCreateInfo->ppEnabledExtensionNames[i], VK_KHR_ANDROID_SURFACE_EXTENSION_NAME) == 0) {
- ptr_instance->wsi_android_surface_enabled = true;
- continue;
- }
-#endif // VK_USE_PLATFORM_ANDROID_KHR
-#ifdef VK_USE_PLATFORM_MACOS_MVK
- if (strcmp(pCreateInfo->ppEnabledExtensionNames[i], VK_MVK_MACOS_SURFACE_EXTENSION_NAME) == 0) {
- ptr_instance->wsi_macos_surface_enabled = true;
- continue;
- }
-#endif // VK_USE_PLATFORM_MACOS_MVK
-#ifdef VK_USE_PLATFORM_IOS_MVK
- if (strcmp(pCreateInfo->ppEnabledExtensionNames[i], VK_MVK_IOS_SURFACE_EXTENSION_NAME) == 0) {
- ptr_instance->wsi_ios_surface_enabled = true;
- continue;
- }
-#endif // VK_USE_PLATFORM_IOS_MVK
-#ifdef VK_USE_PLATFORM_GGP
- if (strcmp(pCreateInfo->ppEnabledExtensionNames[i], VK_GGP_STREAM_DESCRIPTOR_SURFACE_EXTENSION_NAME) == 0) {
- ptr_instance->wsi_ggp_surface_enabled = true;
- continue;
- }
-#endif // VK_USE_PLATFORM_GGP
-#ifdef VK_USE_PLATFORM_FUCHSIA
- if (strcmp(pCreateInfo->ppEnabledExtensionNames[i], VK_FUCHSIA_IMAGEPIPE_SURFACE_EXTENSION_NAME) == 0) {
- ptr_instance->wsi_imagepipe_surface_enabled = true;
- continue;
- }
-#endif // VK_USE_PLATFORM_FUCHSIA
- if (strcmp(pCreateInfo->ppEnabledExtensionNames[i], VK_EXT_HEADLESS_SURFACE_EXTENSION_NAME) == 0) {
- ptr_instance->wsi_headless_surface_enabled = true;
- continue;
- }
-#if defined(VK_USE_PLATFORM_METAL_EXT)
- if (strcmp(pCreateInfo->ppEnabledExtensionNames[i], VK_EXT_METAL_SURFACE_EXTENSION_NAME) == 0) {
- ptr_instance->wsi_metal_surface_enabled = true;
- continue;
- }
-#endif
- if (strcmp(pCreateInfo->ppEnabledExtensionNames[i], VK_KHR_DISPLAY_EXTENSION_NAME) == 0) {
- ptr_instance->wsi_display_enabled = true;
- continue;
- }
- if (strcmp(pCreateInfo->ppEnabledExtensionNames[i], VK_KHR_GET_DISPLAY_PROPERTIES_2_EXTENSION_NAME) == 0) {
- ptr_instance->wsi_display_props2_enabled = true;
- continue;
- }
- }
-}
-
-// Linux WSI surface extensions are not always compiled into the loader. (Assume
-// for Windows the KHR_win32_surface is always compiled into loader). A given
-// Linux build environment might not have the headers required for building one
-// of the three extensions (Xlib, Xcb, Wayland). Thus, need to check if
-// the built loader actually supports the particular Linux surface extension.
-// If not supported by the built loader it will not be included in the list of
-// enumerated instance extensions. This solves the issue where an ICD or layer
-// advertises support for a given Linux surface extension but the loader was not
-// built to support the extension.
-bool wsi_unsupported_instance_extension(const VkExtensionProperties *ext_prop) {
-#ifndef VK_USE_PLATFORM_WAYLAND_KHR
- if (!strcmp(ext_prop->extensionName, "VK_KHR_wayland_surface")) return true;
-#endif // VK_USE_PLATFORM_WAYLAND_KHR
-#ifndef VK_USE_PLATFORM_XCB_KHR
- if (!strcmp(ext_prop->extensionName, "VK_KHR_xcb_surface")) return true;
-#endif // VK_USE_PLATFORM_XCB_KHR
-#ifndef VK_USE_PLATFORM_XLIB_KHR
- if (!strcmp(ext_prop->extensionName, "VK_KHR_xlib_surface")) return true;
-#endif // VK_USE_PLATFORM_XLIB_KHR
-#ifndef VK_USE_PLATFORM_DIRECTFB_EXT
- if (!strcmp(ext_prop->extensionName, "VK_EXT_directfb_surface")) return true;
-#endif // VK_USE_PLATFORM_DIRECTFB_EXT
-
- return false;
-}
-
-// Functions for the VK_KHR_surface extension:
-
-// This is the trampoline entrypoint for DestroySurfaceKHR
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkDestroySurfaceKHR(VkInstance instance, VkSurfaceKHR surface,
- const VkAllocationCallbacks *pAllocator) {
- const VkLayerInstanceDispatchTable *disp;
- disp = loader_get_instance_layer_dispatch(instance);
- disp->DestroySurfaceKHR(instance, surface, pAllocator);
-}
-
-// TODO probably need to lock around all the loader_get_instance() calls.
-
-// This is the instance chain terminator function for DestroySurfaceKHR
-VKAPI_ATTR void VKAPI_CALL terminator_DestroySurfaceKHR(VkInstance instance, VkSurfaceKHR surface,
- const VkAllocationCallbacks *pAllocator) {
- struct loader_instance *ptr_instance = loader_get_instance(instance);
-
- VkIcdSurface *icd_surface = (VkIcdSurface *)(uintptr_t)surface;
- if (NULL != icd_surface) {
- if (NULL != icd_surface->real_icd_surfaces) {
- uint32_t i = 0;
- for (struct loader_icd_term *icd_term = ptr_instance->icd_terms; icd_term != NULL; icd_term = icd_term->next, i++) {
- if (icd_term->scanned_icd->interface_version >= ICD_VER_SUPPORTS_ICD_SURFACE_KHR) {
- if (NULL != icd_term->dispatch.DestroySurfaceKHR && (VkSurfaceKHR)NULL != icd_surface->real_icd_surfaces[i]) {
- icd_term->dispatch.DestroySurfaceKHR(icd_term->instance, icd_surface->real_icd_surfaces[i], pAllocator);
- icd_surface->real_icd_surfaces[i] = (VkSurfaceKHR)NULL;
- }
- } else {
- // The real_icd_surface for any ICD not supporting the
- // proper interface version should be NULL. If not, then
- // we have a problem.
- assert((VkSurfaceKHR)NULL == icd_surface->real_icd_surfaces[i]);
- }
- }
- loader_instance_heap_free(ptr_instance, icd_surface->real_icd_surfaces);
- }
-
- loader_instance_heap_free(ptr_instance, (void *)(uintptr_t)surface);
- }
-}
-
-// This is the trampoline entrypoint for GetPhysicalDeviceSurfaceSupportKHR
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceSurfaceSupportKHR(VkPhysicalDevice physicalDevice,
- uint32_t queueFamilyIndex, VkSurfaceKHR surface,
- VkBool32 *pSupported) {
- const VkLayerInstanceDispatchTable *disp;
- VkPhysicalDevice unwrapped_phys_dev = loader_unwrap_physical_device(physicalDevice);
- disp = loader_get_instance_layer_dispatch(physicalDevice);
- VkResult res = disp->GetPhysicalDeviceSurfaceSupportKHR(unwrapped_phys_dev, queueFamilyIndex, surface, pSupported);
- return res;
-}
-
-// This is the instance chain terminator function for
-// GetPhysicalDeviceSurfaceSupportKHR
-VKAPI_ATTR VkResult VKAPI_CALL terminator_GetPhysicalDeviceSurfaceSupportKHR(VkPhysicalDevice physicalDevice,
- uint32_t queueFamilyIndex, VkSurfaceKHR surface,
- VkBool32 *pSupported) {
- // First, check to ensure the appropriate extension was enabled:
- struct loader_physical_device_term *phys_dev_term = (struct loader_physical_device_term *)physicalDevice;
- struct loader_icd_term *icd_term = phys_dev_term->this_icd_term;
- struct loader_instance *ptr_instance = (struct loader_instance *)icd_term->this_instance;
- if (!ptr_instance->wsi_surface_enabled) {
- loader_log(ptr_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "VK_KHR_surface extension not enabled. vkGetPhysicalDeviceSurfaceSupportKHR not executed!\n");
- return VK_SUCCESS;
- }
-
- if (NULL == pSupported) {
- loader_log(ptr_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "NULL pointer passed into vkGetPhysicalDeviceSurfaceSupportKHR for pSupported!\n");
- assert(false && "GetPhysicalDeviceSurfaceSupportKHR: Error, null pSupported");
- }
- *pSupported = false;
-
- if (NULL == icd_term->dispatch.GetPhysicalDeviceSurfaceSupportKHR) {
- loader_log(ptr_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "ICD for selected physical device is not exporting vkGetPhysicalDeviceSurfaceSupportKHR!\n");
- assert(false && "loader: null GetPhysicalDeviceSurfaceSupportKHR ICD pointer");
- }
-
- VkIcdSurface *icd_surface = (VkIcdSurface *)(uintptr_t)surface;
- if (NULL != icd_surface->real_icd_surfaces && (VkSurfaceKHR)NULL != icd_surface->real_icd_surfaces[phys_dev_term->icd_index]) {
- return icd_term->dispatch.GetPhysicalDeviceSurfaceSupportKHR(
- phys_dev_term->phys_dev, queueFamilyIndex, icd_surface->real_icd_surfaces[phys_dev_term->icd_index], pSupported);
- }
-
- return icd_term->dispatch.GetPhysicalDeviceSurfaceSupportKHR(phys_dev_term->phys_dev, queueFamilyIndex, surface, pSupported);
-}
-
-// This is the trampoline entrypoint for GetPhysicalDeviceSurfaceCapabilitiesKHR
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceSurfaceCapabilitiesKHR(
- VkPhysicalDevice physicalDevice, VkSurfaceKHR surface, VkSurfaceCapabilitiesKHR *pSurfaceCapabilities) {
- const VkLayerInstanceDispatchTable *disp;
- VkPhysicalDevice unwrapped_phys_dev = loader_unwrap_physical_device(physicalDevice);
- disp = loader_get_instance_layer_dispatch(physicalDevice);
- VkResult res = disp->GetPhysicalDeviceSurfaceCapabilitiesKHR(unwrapped_phys_dev, surface, pSurfaceCapabilities);
- return res;
-}
-
-// This is the instance chain terminator function for
-// GetPhysicalDeviceSurfaceCapabilitiesKHR
-VKAPI_ATTR VkResult VKAPI_CALL terminator_GetPhysicalDeviceSurfaceCapabilitiesKHR(VkPhysicalDevice physicalDevice,
- VkSurfaceKHR surface,
- VkSurfaceCapabilitiesKHR *pSurfaceCapabilities) {
- // First, check to ensure the appropriate extension was enabled:
- struct loader_physical_device_term *phys_dev_term = (struct loader_physical_device_term *)physicalDevice;
- struct loader_icd_term *icd_term = phys_dev_term->this_icd_term;
- struct loader_instance *ptr_instance = (struct loader_instance *)icd_term->this_instance;
- if (!ptr_instance->wsi_surface_enabled) {
- loader_log(ptr_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "VK_KHR_surface extension not enabled. vkGetPhysicalDeviceSurfaceCapabilitiesKHR not executed!\n");
- return VK_SUCCESS;
- }
-
- if (NULL == pSurfaceCapabilities) {
- loader_log(ptr_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "NULL pointer passed into vkGetPhysicalDeviceSurfaceCapabilitiesKHR for pSurfaceCapabilities!\n");
- assert(false && "GetPhysicalDeviceSurfaceCapabilitiesKHR: Error, null pSurfaceCapabilities");
- }
-
- if (NULL == icd_term->dispatch.GetPhysicalDeviceSurfaceCapabilitiesKHR) {
- loader_log(ptr_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "ICD for selected physical device is not exporting vkGetPhysicalDeviceSurfaceCapabilitiesKHR!\n");
- assert(false && "loader: null GetPhysicalDeviceSurfaceCapabilitiesKHR ICD pointer");
- }
-
- VkIcdSurface *icd_surface = (VkIcdSurface *)(uintptr_t)surface;
- if (NULL != icd_surface->real_icd_surfaces && (VkSurfaceKHR)NULL != icd_surface->real_icd_surfaces[phys_dev_term->icd_index]) {
- return icd_term->dispatch.GetPhysicalDeviceSurfaceCapabilitiesKHR(
- phys_dev_term->phys_dev, icd_surface->real_icd_surfaces[phys_dev_term->icd_index], pSurfaceCapabilities);
- }
-
- return icd_term->dispatch.GetPhysicalDeviceSurfaceCapabilitiesKHR(phys_dev_term->phys_dev, surface, pSurfaceCapabilities);
-}
-
-// This is the trampoline entrypoint for GetPhysicalDeviceSurfaceFormatsKHR
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceSurfaceFormatsKHR(VkPhysicalDevice physicalDevice,
- VkSurfaceKHR surface,
- uint32_t *pSurfaceFormatCount,
- VkSurfaceFormatKHR *pSurfaceFormats) {
- VkPhysicalDevice unwrapped_phys_dev = loader_unwrap_physical_device(physicalDevice);
- const VkLayerInstanceDispatchTable *disp;
- disp = loader_get_instance_layer_dispatch(physicalDevice);
- VkResult res = disp->GetPhysicalDeviceSurfaceFormatsKHR(unwrapped_phys_dev, surface, pSurfaceFormatCount, pSurfaceFormats);
- return res;
-}
-
-// This is the instance chain terminator function for
-// GetPhysicalDeviceSurfaceFormatsKHR
-VKAPI_ATTR VkResult VKAPI_CALL terminator_GetPhysicalDeviceSurfaceFormatsKHR(VkPhysicalDevice physicalDevice, VkSurfaceKHR surface,
- uint32_t *pSurfaceFormatCount,
- VkSurfaceFormatKHR *pSurfaceFormats) {
- // First, check to ensure the appropriate extension was enabled:
- struct loader_physical_device_term *phys_dev_term = (struct loader_physical_device_term *)physicalDevice;
- struct loader_icd_term *icd_term = phys_dev_term->this_icd_term;
- struct loader_instance *ptr_instance = (struct loader_instance *)icd_term->this_instance;
- if (!ptr_instance->wsi_surface_enabled) {
- loader_log(ptr_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "VK_KHR_surface extension not enabled. vkGetPhysicalDeviceSurfaceFormatsKHR not executed!\n");
- return VK_SUCCESS;
- }
-
- if (NULL == pSurfaceFormatCount) {
- loader_log(ptr_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "NULL pointer passed into vkGetPhysicalDeviceSurfaceFormatsKHR for pSurfaceFormatCount!\n");
- assert(false && "GetPhysicalDeviceSurfaceFormatsKHR(: Error, null pSurfaceFormatCount");
- }
-
- if (NULL == icd_term->dispatch.GetPhysicalDeviceSurfaceFormatsKHR) {
- loader_log(ptr_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "ICD for selected physical device is not exporting vkGetPhysicalDeviceSurfaceCapabilitiesKHR!\n");
- assert(false && "loader: null GetPhysicalDeviceSurfaceFormatsKHR ICD pointer");
- }
-
- VkIcdSurface *icd_surface = (VkIcdSurface *)(uintptr_t)surface;
- if (NULL != icd_surface->real_icd_surfaces && (VkSurfaceKHR)NULL != icd_surface->real_icd_surfaces[phys_dev_term->icd_index]) {
- return icd_term->dispatch.GetPhysicalDeviceSurfaceFormatsKHR(phys_dev_term->phys_dev,
- icd_surface->real_icd_surfaces[phys_dev_term->icd_index],
- pSurfaceFormatCount, pSurfaceFormats);
- }
-
- return icd_term->dispatch.GetPhysicalDeviceSurfaceFormatsKHR(phys_dev_term->phys_dev, surface, pSurfaceFormatCount,
- pSurfaceFormats);
-}
-
-// This is the trampoline entrypoint for GetPhysicalDeviceSurfacePresentModesKHR
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceSurfacePresentModesKHR(VkPhysicalDevice physicalDevice,
- VkSurfaceKHR surface,
- uint32_t *pPresentModeCount,
- VkPresentModeKHR *pPresentModes) {
- VkPhysicalDevice unwrapped_phys_dev = loader_unwrap_physical_device(physicalDevice);
- const VkLayerInstanceDispatchTable *disp;
- disp = loader_get_instance_layer_dispatch(physicalDevice);
- VkResult res = disp->GetPhysicalDeviceSurfacePresentModesKHR(unwrapped_phys_dev, surface, pPresentModeCount, pPresentModes);
- return res;
-}
-
-// This is the instance chain terminator function for
-// GetPhysicalDeviceSurfacePresentModesKHR
-VKAPI_ATTR VkResult VKAPI_CALL terminator_GetPhysicalDeviceSurfacePresentModesKHR(VkPhysicalDevice physicalDevice,
- VkSurfaceKHR surface, uint32_t *pPresentModeCount,
- VkPresentModeKHR *pPresentModes) {
- // First, check to ensure the appropriate extension was enabled:
- struct loader_physical_device_term *phys_dev_term = (struct loader_physical_device_term *)physicalDevice;
- struct loader_icd_term *icd_term = phys_dev_term->this_icd_term;
- struct loader_instance *ptr_instance = (struct loader_instance *)icd_term->this_instance;
- if (!ptr_instance->wsi_surface_enabled) {
- loader_log(ptr_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "VK_KHR_surface extension not enabled. vkGetPhysicalDeviceSurfacePresentModesKHR not executed!\n");
- return VK_SUCCESS;
- }
-
- if (NULL == pPresentModeCount) {
- loader_log(ptr_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "NULL pointer passed into vkGetPhysicalDeviceSurfacePresentModesKHR for pPresentModeCount!\n");
- assert(false && "GetPhysicalDeviceSurfacePresentModesKHR(: Error, null pPresentModeCount");
- }
-
- if (NULL == icd_term->dispatch.GetPhysicalDeviceSurfacePresentModesKHR) {
- loader_log(ptr_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "ICD for selected physical device is not exporting vkGetPhysicalDeviceSurfacePresentModesKHR!\n");
- assert(false && "loader: null GetPhysicalDeviceSurfacePresentModesKHR ICD pointer");
- }
-
- VkIcdSurface *icd_surface = (VkIcdSurface *)(uintptr_t)surface;
- if (NULL != icd_surface->real_icd_surfaces && (VkSurfaceKHR)NULL != icd_surface->real_icd_surfaces[phys_dev_term->icd_index]) {
- return icd_term->dispatch.GetPhysicalDeviceSurfacePresentModesKHR(
- phys_dev_term->phys_dev, icd_surface->real_icd_surfaces[phys_dev_term->icd_index], pPresentModeCount, pPresentModes);
- }
-
- return icd_term->dispatch.GetPhysicalDeviceSurfacePresentModesKHR(phys_dev_term->phys_dev, surface, pPresentModeCount,
- pPresentModes);
-}
-
-// Functions for the VK_KHR_swapchain extension:
-
-// This is the trampoline entrypoint for CreateSwapchainKHR
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkCreateSwapchainKHR(VkDevice device, const VkSwapchainCreateInfoKHR *pCreateInfo,
- const VkAllocationCallbacks *pAllocator,
- VkSwapchainKHR *pSwapchain) {
- const VkLayerDispatchTable *disp;
- disp = loader_get_dispatch(device);
- return disp->CreateSwapchainKHR(device, pCreateInfo, pAllocator, pSwapchain);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_CreateSwapchainKHR(VkDevice device, const VkSwapchainCreateInfoKHR *pCreateInfo,
- const VkAllocationCallbacks *pAllocator, VkSwapchainKHR *pSwapchain) {
- uint32_t icd_index = 0;
- struct loader_device *dev;
- struct loader_icd_term *icd_term = loader_get_icd_and_device(device, &dev, &icd_index);
- if (NULL != icd_term && NULL != icd_term->dispatch.CreateSwapchainKHR) {
- VkIcdSurface *icd_surface = (VkIcdSurface *)(uintptr_t)pCreateInfo->surface;
- if (NULL != icd_surface->real_icd_surfaces) {
- if ((VkSurfaceKHR)NULL != icd_surface->real_icd_surfaces[icd_index]) {
- // We found the ICD, and there is an ICD KHR surface
- // associated with it, so copy the CreateInfo struct
- // and point it at the ICD's surface.
- VkSwapchainCreateInfoKHR *pCreateCopy = loader_stack_alloc(sizeof(VkSwapchainCreateInfoKHR));
- if (NULL == pCreateCopy) {
- return VK_ERROR_OUT_OF_HOST_MEMORY;
- }
- memcpy(pCreateCopy, pCreateInfo, sizeof(VkSwapchainCreateInfoKHR));
- pCreateCopy->surface = icd_surface->real_icd_surfaces[icd_index];
- return icd_term->dispatch.CreateSwapchainKHR(device, pCreateCopy, pAllocator, pSwapchain);
- }
- }
- return icd_term->dispatch.CreateSwapchainKHR(device, pCreateInfo, pAllocator, pSwapchain);
- }
- return VK_SUCCESS;
-}
-
-// This is the trampoline entrypoint for DestroySwapchainKHR
-LOADER_EXPORT VKAPI_ATTR void VKAPI_CALL vkDestroySwapchainKHR(VkDevice device, VkSwapchainKHR swapchain,
- const VkAllocationCallbacks *pAllocator) {
- const VkLayerDispatchTable *disp;
- disp = loader_get_dispatch(device);
- disp->DestroySwapchainKHR(device, swapchain, pAllocator);
-}
-
-// This is the trampoline entrypoint for GetSwapchainImagesKHR
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkGetSwapchainImagesKHR(VkDevice device, VkSwapchainKHR swapchain,
- uint32_t *pSwapchainImageCount, VkImage *pSwapchainImages) {
- const VkLayerDispatchTable *disp;
- disp = loader_get_dispatch(device);
- return disp->GetSwapchainImagesKHR(device, swapchain, pSwapchainImageCount, pSwapchainImages);
-}
-
-// This is the trampoline entrypoint for AcquireNextImageKHR
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkAcquireNextImageKHR(VkDevice device, VkSwapchainKHR swapchain, uint64_t timeout,
- VkSemaphore semaphore, VkFence fence, uint32_t *pImageIndex) {
- const VkLayerDispatchTable *disp;
- disp = loader_get_dispatch(device);
- return disp->AcquireNextImageKHR(device, swapchain, timeout, semaphore, fence, pImageIndex);
-}
-
-// This is the trampoline entrypoint for QueuePresentKHR
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkQueuePresentKHR(VkQueue queue, const VkPresentInfoKHR *pPresentInfo) {
- const VkLayerDispatchTable *disp;
- disp = loader_get_dispatch(queue);
- return disp->QueuePresentKHR(queue, pPresentInfo);
-}
-
-static VkIcdSurface *AllocateIcdSurfaceStruct(struct loader_instance *instance, size_t base_size, size_t platform_size) {
- // Next, if so, proceed with the implementation of this function:
- VkIcdSurface *pIcdSurface = loader_instance_heap_alloc(instance, sizeof(VkIcdSurface), VK_SYSTEM_ALLOCATION_SCOPE_OBJECT);
- if (pIcdSurface != NULL) {
- // Setup the new sizes and offsets so we can grow the structures in the
- // future without having problems
- pIcdSurface->base_size = (uint32_t)base_size;
- pIcdSurface->platform_size = (uint32_t)platform_size;
- pIcdSurface->non_platform_offset = (uint32_t)((uint8_t *)(&pIcdSurface->base_size) - (uint8_t *)pIcdSurface);
- pIcdSurface->entire_size = sizeof(VkIcdSurface);
-
- pIcdSurface->real_icd_surfaces = loader_instance_heap_alloc(instance, sizeof(VkSurfaceKHR) * instance->total_icd_count,
- VK_SYSTEM_ALLOCATION_SCOPE_OBJECT);
- if (pIcdSurface->real_icd_surfaces == NULL) {
- loader_instance_heap_free(instance, pIcdSurface);
- pIcdSurface = NULL;
- } else {
- memset(pIcdSurface->real_icd_surfaces, 0, sizeof(VkSurfaceKHR) * instance->total_icd_count);
- }
- }
- return pIcdSurface;
-}
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
-
-// Functions for the VK_KHR_win32_surface extension:
-
-// This is the trampoline entrypoint for CreateWin32SurfaceKHR
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkCreateWin32SurfaceKHR(VkInstance instance,
- const VkWin32SurfaceCreateInfoKHR *pCreateInfo,
- const VkAllocationCallbacks *pAllocator,
- VkSurfaceKHR *pSurface) {
- const VkLayerInstanceDispatchTable *disp;
- disp = loader_get_instance_layer_dispatch(instance);
- VkResult res;
-
- res = disp->CreateWin32SurfaceKHR(instance, pCreateInfo, pAllocator, pSurface);
- return res;
-}
-
-// This is the instance chain terminator function for CreateWin32SurfaceKHR
-VKAPI_ATTR VkResult VKAPI_CALL terminator_CreateWin32SurfaceKHR(VkInstance instance, const VkWin32SurfaceCreateInfoKHR *pCreateInfo,
- const VkAllocationCallbacks *pAllocator, VkSurfaceKHR *pSurface) {
- VkResult vkRes = VK_SUCCESS;
- VkIcdSurface *pIcdSurface = NULL;
- uint32_t i = 0;
-
- // Initialize pSurface to NULL just to be safe.
- *pSurface = VK_NULL_HANDLE;
- // First, check to ensure the appropriate extension was enabled:
- struct loader_instance *ptr_instance = loader_get_instance(instance);
- if (!ptr_instance->wsi_win32_surface_enabled) {
- loader_log(ptr_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "VK_KHR_win32_surface extension not enabled. vkCreateWin32SurfaceKHR not executed!\n");
- vkRes = VK_ERROR_EXTENSION_NOT_PRESENT;
- goto out;
- }
-
- // Next, if so, proceed with the implementation of this function:
- pIcdSurface = AllocateIcdSurfaceStruct(ptr_instance, sizeof(pIcdSurface->win_surf.base), sizeof(pIcdSurface->win_surf));
- if (pIcdSurface == NULL) {
- vkRes = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
-
- pIcdSurface->win_surf.base.platform = VK_ICD_WSI_PLATFORM_WIN32;
- pIcdSurface->win_surf.hinstance = pCreateInfo->hinstance;
- pIcdSurface->win_surf.hwnd = pCreateInfo->hwnd;
-
- // Loop through each ICD and determine if they need to create a surface
- for (struct loader_icd_term *icd_term = ptr_instance->icd_terms; icd_term != NULL; icd_term = icd_term->next, i++) {
- if (icd_term->scanned_icd->interface_version >= ICD_VER_SUPPORTS_ICD_SURFACE_KHR) {
- if (NULL != icd_term->dispatch.CreateWin32SurfaceKHR) {
- vkRes = icd_term->dispatch.CreateWin32SurfaceKHR(icd_term->instance, pCreateInfo, pAllocator,
- &pIcdSurface->real_icd_surfaces[i]);
- if (VK_SUCCESS != vkRes) {
- goto out;
- }
- }
- }
- }
-
- *pSurface = (VkSurfaceKHR)(pIcdSurface);
-
-out:
-
- if (VK_SUCCESS != vkRes && NULL != pIcdSurface) {
- if (NULL != pIcdSurface->real_icd_surfaces) {
- i = 0;
- for (struct loader_icd_term *icd_term = ptr_instance->icd_terms; icd_term != NULL; icd_term = icd_term->next, i++) {
- if ((VkSurfaceKHR)NULL != pIcdSurface->real_icd_surfaces[i] && NULL != icd_term->dispatch.DestroySurfaceKHR) {
- icd_term->dispatch.DestroySurfaceKHR(icd_term->instance, pIcdSurface->real_icd_surfaces[i], pAllocator);
- }
- }
- loader_instance_heap_free(ptr_instance, pIcdSurface->real_icd_surfaces);
- }
- loader_instance_heap_free(ptr_instance, pIcdSurface);
- }
-
- return vkRes;
-}
-
-// This is the trampoline entrypoint for
-// GetPhysicalDeviceWin32PresentationSupportKHR
-LOADER_EXPORT VKAPI_ATTR VkBool32 VKAPI_CALL vkGetPhysicalDeviceWin32PresentationSupportKHR(VkPhysicalDevice physicalDevice,
- uint32_t queueFamilyIndex) {
- VkPhysicalDevice unwrapped_phys_dev = loader_unwrap_physical_device(physicalDevice);
- const VkLayerInstanceDispatchTable *disp;
- disp = loader_get_instance_layer_dispatch(physicalDevice);
- VkBool32 res = disp->GetPhysicalDeviceWin32PresentationSupportKHR(unwrapped_phys_dev, queueFamilyIndex);
- return res;
-}
-
-// This is the instance chain terminator function for
-// GetPhysicalDeviceWin32PresentationSupportKHR
-VKAPI_ATTR VkBool32 VKAPI_CALL terminator_GetPhysicalDeviceWin32PresentationSupportKHR(VkPhysicalDevice physicalDevice,
- uint32_t queueFamilyIndex) {
- // First, check to ensure the appropriate extension was enabled:
- struct loader_physical_device_term *phys_dev_term = (struct loader_physical_device_term *)physicalDevice;
- struct loader_icd_term *icd_term = phys_dev_term->this_icd_term;
- struct loader_instance *ptr_instance = (struct loader_instance *)icd_term->this_instance;
- if (!ptr_instance->wsi_win32_surface_enabled) {
- loader_log(ptr_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "VK_KHR_win32_surface extension not enabled. vkGetPhysicalDeviceWin32PresentationSupportKHR not executed!\n");
- return VK_SUCCESS;
- }
-
- if (NULL == icd_term->dispatch.GetPhysicalDeviceWin32PresentationSupportKHR) {
- loader_log(ptr_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "ICD for selected physical device is not exporting vkGetPhysicalDeviceWin32PresentationSupportKHR!\n");
- assert(false && "loader: null GetPhysicalDeviceWin32PresentationSupportKHR ICD pointer");
- }
-
- return icd_term->dispatch.GetPhysicalDeviceWin32PresentationSupportKHR(phys_dev_term->phys_dev, queueFamilyIndex);
-}
-#endif // VK_USE_PLATFORM_WIN32_KHR
-
-#ifdef VK_USE_PLATFORM_WAYLAND_KHR
-
-// This is the trampoline entrypoint for CreateWaylandSurfaceKHR
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkCreateWaylandSurfaceKHR(VkInstance instance,
- const VkWaylandSurfaceCreateInfoKHR *pCreateInfo,
- const VkAllocationCallbacks *pAllocator,
- VkSurfaceKHR *pSurface) {
- const VkLayerInstanceDispatchTable *disp;
- disp = loader_get_instance_layer_dispatch(instance);
- VkResult res;
-
- res = disp->CreateWaylandSurfaceKHR(instance, pCreateInfo, pAllocator, pSurface);
- return res;
-}
-
-// This is the instance chain terminator function for CreateWaylandSurfaceKHR
-VKAPI_ATTR VkResult VKAPI_CALL terminator_CreateWaylandSurfaceKHR(VkInstance instance,
- const VkWaylandSurfaceCreateInfoKHR *pCreateInfo,
- const VkAllocationCallbacks *pAllocator, VkSurfaceKHR *pSurface) {
- VkResult vkRes = VK_SUCCESS;
- VkIcdSurface *pIcdSurface = NULL;
- uint32_t i = 0;
-
- // First, check to ensure the appropriate extension was enabled:
- struct loader_instance *ptr_instance = loader_get_instance(instance);
- if (!ptr_instance->wsi_wayland_surface_enabled) {
- loader_log(ptr_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "VK_KHR_wayland_surface extension not enabled. vkCreateWaylandSurfaceKHR not executed!\n");
- vkRes = VK_ERROR_EXTENSION_NOT_PRESENT;
- goto out;
- }
-
- // Next, if so, proceed with the implementation of this function:
- pIcdSurface = AllocateIcdSurfaceStruct(ptr_instance, sizeof(pIcdSurface->wayland_surf.base), sizeof(pIcdSurface->wayland_surf));
- if (pIcdSurface == NULL) {
- vkRes = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
-
- pIcdSurface->wayland_surf.base.platform = VK_ICD_WSI_PLATFORM_WAYLAND;
- pIcdSurface->wayland_surf.display = pCreateInfo->display;
- pIcdSurface->wayland_surf.surface = pCreateInfo->surface;
-
- // Loop through each ICD and determine if they need to create a surface
- for (struct loader_icd_term *icd_term = ptr_instance->icd_terms; icd_term != NULL; icd_term = icd_term->next, i++) {
- if (icd_term->scanned_icd->interface_version >= ICD_VER_SUPPORTS_ICD_SURFACE_KHR) {
- if (NULL != icd_term->dispatch.CreateWaylandSurfaceKHR) {
- vkRes = icd_term->dispatch.CreateWaylandSurfaceKHR(icd_term->instance, pCreateInfo, pAllocator,
- &pIcdSurface->real_icd_surfaces[i]);
- if (VK_SUCCESS != vkRes) {
- goto out;
- }
- }
- }
- }
-
- *pSurface = (VkSurfaceKHR)pIcdSurface;
-
-out:
-
- if (VK_SUCCESS != vkRes && NULL != pIcdSurface) {
- if (NULL != pIcdSurface->real_icd_surfaces) {
- i = 0;
- for (struct loader_icd_term *icd_term = ptr_instance->icd_terms; icd_term != NULL; icd_term = icd_term->next, i++) {
- if ((VkSurfaceKHR)NULL != pIcdSurface->real_icd_surfaces[i] && NULL != icd_term->dispatch.DestroySurfaceKHR) {
- icd_term->dispatch.DestroySurfaceKHR(icd_term->instance, pIcdSurface->real_icd_surfaces[i], pAllocator);
- }
- }
- loader_instance_heap_free(ptr_instance, pIcdSurface->real_icd_surfaces);
- }
- loader_instance_heap_free(ptr_instance, pIcdSurface);
- }
-
- return vkRes;
-}
-
-// This is the trampoline entrypoint for
-// GetPhysicalDeviceWaylandPresentationSupportKHR
-LOADER_EXPORT VKAPI_ATTR VkBool32 VKAPI_CALL vkGetPhysicalDeviceWaylandPresentationSupportKHR(VkPhysicalDevice physicalDevice,
- uint32_t queueFamilyIndex,
- struct wl_display *display) {
- VkPhysicalDevice unwrapped_phys_dev = loader_unwrap_physical_device(physicalDevice);
- const VkLayerInstanceDispatchTable *disp;
- disp = loader_get_instance_layer_dispatch(physicalDevice);
- VkBool32 res = disp->GetPhysicalDeviceWaylandPresentationSupportKHR(unwrapped_phys_dev, queueFamilyIndex, display);
- return res;
-}
-
-// This is the instance chain terminator function for
-// GetPhysicalDeviceWaylandPresentationSupportKHR
-VKAPI_ATTR VkBool32 VKAPI_CALL terminator_GetPhysicalDeviceWaylandPresentationSupportKHR(VkPhysicalDevice physicalDevice,
- uint32_t queueFamilyIndex,
- struct wl_display *display) {
- // First, check to ensure the appropriate extension was enabled:
- struct loader_physical_device_term *phys_dev_term = (struct loader_physical_device_term *)physicalDevice;
- struct loader_icd_term *icd_term = phys_dev_term->this_icd_term;
- struct loader_instance *ptr_instance = (struct loader_instance *)icd_term->this_instance;
- if (!ptr_instance->wsi_wayland_surface_enabled) {
- loader_log(
- ptr_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "VK_KHR_wayland_surface extension not enabled. vkGetPhysicalDeviceWaylandPresentationSupportKHR not executed!\n");
- return VK_SUCCESS;
- }
-
- if (NULL == icd_term->dispatch.GetPhysicalDeviceWaylandPresentationSupportKHR) {
- loader_log(ptr_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "ICD for selected physical device is not exporting vkGetPhysicalDeviceWaylandPresentationSupportKHR!\n");
- assert(false && "loader: null GetPhysicalDeviceWaylandPresentationSupportKHR ICD pointer");
- }
-
- return icd_term->dispatch.GetPhysicalDeviceWaylandPresentationSupportKHR(phys_dev_term->phys_dev, queueFamilyIndex, display);
-}
-#endif // VK_USE_PLATFORM_WAYLAND_KHR
-
-#ifdef VK_USE_PLATFORM_XCB_KHR
-
-// Functions for the VK_KHR_xcb_surface extension:
-
-// This is the trampoline entrypoint for CreateXcbSurfaceKHR
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkCreateXcbSurfaceKHR(VkInstance instance,
- const VkXcbSurfaceCreateInfoKHR *pCreateInfo,
- const VkAllocationCallbacks *pAllocator,
- VkSurfaceKHR *pSurface) {
- const VkLayerInstanceDispatchTable *disp;
- disp = loader_get_instance_layer_dispatch(instance);
- VkResult res;
-
- res = disp->CreateXcbSurfaceKHR(instance, pCreateInfo, pAllocator, pSurface);
- return res;
-}
-
-// This is the instance chain terminator function for CreateXcbSurfaceKHR
-VKAPI_ATTR VkResult VKAPI_CALL terminator_CreateXcbSurfaceKHR(VkInstance instance, const VkXcbSurfaceCreateInfoKHR *pCreateInfo,
- const VkAllocationCallbacks *pAllocator, VkSurfaceKHR *pSurface) {
- VkResult vkRes = VK_SUCCESS;
- VkIcdSurface *pIcdSurface = NULL;
- uint32_t i = 0;
-
- // First, check to ensure the appropriate extension was enabled:
- struct loader_instance *ptr_instance = loader_get_instance(instance);
- if (!ptr_instance->wsi_xcb_surface_enabled) {
- loader_log(ptr_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "VK_KHR_xcb_surface extension not enabled. vkCreateXcbSurfaceKHR not executed!\n");
- vkRes = VK_ERROR_EXTENSION_NOT_PRESENT;
- goto out;
- }
-
- // Next, if so, proceed with the implementation of this function:
- pIcdSurface = AllocateIcdSurfaceStruct(ptr_instance, sizeof(pIcdSurface->xcb_surf.base), sizeof(pIcdSurface->xcb_surf));
- if (pIcdSurface == NULL) {
- vkRes = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
-
- pIcdSurface->xcb_surf.base.platform = VK_ICD_WSI_PLATFORM_XCB;
- pIcdSurface->xcb_surf.connection = pCreateInfo->connection;
- pIcdSurface->xcb_surf.window = pCreateInfo->window;
-
- // Loop through each ICD and determine if they need to create a surface
- for (struct loader_icd_term *icd_term = ptr_instance->icd_terms; icd_term != NULL; icd_term = icd_term->next, i++) {
- if (icd_term->scanned_icd->interface_version >= ICD_VER_SUPPORTS_ICD_SURFACE_KHR) {
- if (NULL != icd_term->dispatch.CreateXcbSurfaceKHR) {
- vkRes = icd_term->dispatch.CreateXcbSurfaceKHR(icd_term->instance, pCreateInfo, pAllocator,
- &pIcdSurface->real_icd_surfaces[i]);
- if (VK_SUCCESS != vkRes) {
- goto out;
- }
- }
- }
- }
-
- *pSurface = (VkSurfaceKHR)pIcdSurface;
-
-out:
-
- if (VK_SUCCESS != vkRes && NULL != pIcdSurface) {
- if (NULL != pIcdSurface->real_icd_surfaces) {
- i = 0;
- for (struct loader_icd_term *icd_term = ptr_instance->icd_terms; icd_term != NULL; icd_term = icd_term->next, i++) {
- if ((VkSurfaceKHR)NULL != pIcdSurface->real_icd_surfaces[i] && NULL != icd_term->dispatch.DestroySurfaceKHR) {
- icd_term->dispatch.DestroySurfaceKHR(icd_term->instance, pIcdSurface->real_icd_surfaces[i], pAllocator);
- }
- }
- loader_instance_heap_free(ptr_instance, pIcdSurface->real_icd_surfaces);
- }
- loader_instance_heap_free(ptr_instance, pIcdSurface);
- }
-
- return vkRes;
-}
-
-// This is the trampoline entrypoint for
-// GetPhysicalDeviceXcbPresentationSupportKHR
-LOADER_EXPORT VKAPI_ATTR VkBool32 VKAPI_CALL vkGetPhysicalDeviceXcbPresentationSupportKHR(VkPhysicalDevice physicalDevice,
- uint32_t queueFamilyIndex,
- xcb_connection_t *connection,
- xcb_visualid_t visual_id) {
- VkPhysicalDevice unwrapped_phys_dev = loader_unwrap_physical_device(physicalDevice);
- const VkLayerInstanceDispatchTable *disp;
- disp = loader_get_instance_layer_dispatch(physicalDevice);
- VkBool32 res = disp->GetPhysicalDeviceXcbPresentationSupportKHR(unwrapped_phys_dev, queueFamilyIndex, connection, visual_id);
- return res;
-}
-
-// This is the instance chain terminator function for
-// GetPhysicalDeviceXcbPresentationSupportKHR
-VKAPI_ATTR VkBool32 VKAPI_CALL terminator_GetPhysicalDeviceXcbPresentationSupportKHR(VkPhysicalDevice physicalDevice,
- uint32_t queueFamilyIndex,
- xcb_connection_t *connection,
- xcb_visualid_t visual_id) {
- // First, check to ensure the appropriate extension was enabled:
- struct loader_physical_device_term *phys_dev_term = (struct loader_physical_device_term *)physicalDevice;
- struct loader_icd_term *icd_term = phys_dev_term->this_icd_term;
- struct loader_instance *ptr_instance = (struct loader_instance *)icd_term->this_instance;
- if (!ptr_instance->wsi_xcb_surface_enabled) {
- loader_log(ptr_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "VK_KHR_xcb_surface extension not enabled. vkGetPhysicalDeviceXcbPresentationSupportKHR not executed!\n");
- return VK_SUCCESS;
- }
-
- if (NULL == icd_term->dispatch.GetPhysicalDeviceXcbPresentationSupportKHR) {
- loader_log(ptr_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "ICD for selected physical device is not exporting vkGetPhysicalDeviceXcbPresentationSupportKHR!\n");
- assert(false && "loader: null GetPhysicalDeviceXcbPresentationSupportKHR ICD pointer");
- }
-
- return icd_term->dispatch.GetPhysicalDeviceXcbPresentationSupportKHR(phys_dev_term->phys_dev, queueFamilyIndex, connection,
- visual_id);
-}
-#endif // VK_USE_PLATFORM_XCB_KHR
-
-#ifdef VK_USE_PLATFORM_XLIB_KHR
-
-// Functions for the VK_KHR_xlib_surface extension:
-
-// This is the trampoline entrypoint for CreateXlibSurfaceKHR
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkCreateXlibSurfaceKHR(VkInstance instance,
- const VkXlibSurfaceCreateInfoKHR *pCreateInfo,
- const VkAllocationCallbacks *pAllocator,
- VkSurfaceKHR *pSurface) {
- const VkLayerInstanceDispatchTable *disp;
- disp = loader_get_instance_layer_dispatch(instance);
- VkResult res;
-
- res = disp->CreateXlibSurfaceKHR(instance, pCreateInfo, pAllocator, pSurface);
- return res;
-}
-
-// This is the instance chain terminator function for CreateXlibSurfaceKHR
-VKAPI_ATTR VkResult VKAPI_CALL terminator_CreateXlibSurfaceKHR(VkInstance instance, const VkXlibSurfaceCreateInfoKHR *pCreateInfo,
- const VkAllocationCallbacks *pAllocator, VkSurfaceKHR *pSurface) {
- VkResult vkRes = VK_SUCCESS;
- VkIcdSurface *pIcdSurface = NULL;
- uint32_t i = 0;
-
- // First, check to ensure the appropriate extension was enabled:
- struct loader_instance *ptr_instance = loader_get_instance(instance);
- if (!ptr_instance->wsi_xlib_surface_enabled) {
- loader_log(ptr_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "VK_KHR_xlib_surface extension not enabled. vkCreateXlibSurfaceKHR not executed!\n");
- vkRes = VK_ERROR_EXTENSION_NOT_PRESENT;
- goto out;
- }
-
- // Next, if so, proceed with the implementation of this function:
- pIcdSurface = AllocateIcdSurfaceStruct(ptr_instance, sizeof(pIcdSurface->xlib_surf.base), sizeof(pIcdSurface->xlib_surf));
- if (pIcdSurface == NULL) {
- vkRes = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
-
- pIcdSurface->xlib_surf.base.platform = VK_ICD_WSI_PLATFORM_XLIB;
- pIcdSurface->xlib_surf.dpy = pCreateInfo->dpy;
- pIcdSurface->xlib_surf.window = pCreateInfo->window;
-
- // Loop through each ICD and determine if they need to create a surface
- for (struct loader_icd_term *icd_term = ptr_instance->icd_terms; icd_term != NULL; icd_term = icd_term->next, i++) {
- if (icd_term->scanned_icd->interface_version >= ICD_VER_SUPPORTS_ICD_SURFACE_KHR) {
- if (NULL != icd_term->dispatch.CreateXlibSurfaceKHR) {
- vkRes = icd_term->dispatch.CreateXlibSurfaceKHR(icd_term->instance, pCreateInfo, pAllocator,
- &pIcdSurface->real_icd_surfaces[i]);
- if (VK_SUCCESS != vkRes) {
- goto out;
- }
- }
- }
- }
-
- *pSurface = (VkSurfaceKHR)pIcdSurface;
-
-out:
-
- if (VK_SUCCESS != vkRes && NULL != pIcdSurface) {
- if (NULL != pIcdSurface->real_icd_surfaces) {
- i = 0;
- for (struct loader_icd_term *icd_term = ptr_instance->icd_terms; icd_term != NULL; icd_term = icd_term->next, i++) {
- if ((VkSurfaceKHR)NULL != pIcdSurface->real_icd_surfaces[i] && NULL != icd_term->dispatch.DestroySurfaceKHR) {
- icd_term->dispatch.DestroySurfaceKHR(icd_term->instance, pIcdSurface->real_icd_surfaces[i], pAllocator);
- }
- }
- loader_instance_heap_free(ptr_instance, pIcdSurface->real_icd_surfaces);
- }
- loader_instance_heap_free(ptr_instance, pIcdSurface);
- }
-
- return vkRes;
-}
-
-// This is the trampoline entrypoint for
-// GetPhysicalDeviceXlibPresentationSupportKHR
-LOADER_EXPORT VKAPI_ATTR VkBool32 VKAPI_CALL vkGetPhysicalDeviceXlibPresentationSupportKHR(VkPhysicalDevice physicalDevice,
- uint32_t queueFamilyIndex, Display *dpy,
- VisualID visualID) {
- VkPhysicalDevice unwrapped_phys_dev = loader_unwrap_physical_device(physicalDevice);
- const VkLayerInstanceDispatchTable *disp;
- disp = loader_get_instance_layer_dispatch(physicalDevice);
- VkBool32 res = disp->GetPhysicalDeviceXlibPresentationSupportKHR(unwrapped_phys_dev, queueFamilyIndex, dpy, visualID);
- return res;
-}
-
-// This is the instance chain terminator function for
-// GetPhysicalDeviceXlibPresentationSupportKHR
-VKAPI_ATTR VkBool32 VKAPI_CALL terminator_GetPhysicalDeviceXlibPresentationSupportKHR(VkPhysicalDevice physicalDevice,
- uint32_t queueFamilyIndex, Display *dpy,
- VisualID visualID) {
- // First, check to ensure the appropriate extension was enabled:
- struct loader_physical_device_term *phys_dev_term = (struct loader_physical_device_term *)physicalDevice;
- struct loader_icd_term *icd_term = phys_dev_term->this_icd_term;
- struct loader_instance *ptr_instance = (struct loader_instance *)icd_term->this_instance;
- if (!ptr_instance->wsi_xlib_surface_enabled) {
- loader_log(ptr_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "VK_KHR_xlib_surface extension not enabled. vkGetPhysicalDeviceXlibPresentationSupportKHR not executed!\n");
- return VK_SUCCESS;
- }
-
- if (NULL == icd_term->dispatch.GetPhysicalDeviceXlibPresentationSupportKHR) {
- loader_log(ptr_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "ICD for selected physical device is not exporting vkGetPhysicalDeviceXlibPresentationSupportKHR!\n");
- assert(false && "loader: null GetPhysicalDeviceXlibPresentationSupportKHR ICD pointer");
- }
-
- return icd_term->dispatch.GetPhysicalDeviceXlibPresentationSupportKHR(phys_dev_term->phys_dev, queueFamilyIndex, dpy, visualID);
-}
-#endif // VK_USE_PLATFORM_XLIB_KHR
-
-#ifdef VK_USE_PLATFORM_DIRECTFB_EXT
-
-// Functions for the VK_EXT_directfb_surface extension:
-
-// This is the trampoline entrypoint for CreateDirectFBSurfaceEXT
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkCreateDirectFBSurfaceEXT(VkInstance instance,
- const VkDirectFBSurfaceCreateInfoEXT *pCreateInfo,
- const VkAllocationCallbacks *pAllocator,
- VkSurfaceKHR *pSurface) {
- const VkLayerInstanceDispatchTable *disp;
- disp = loader_get_instance_layer_dispatch(instance);
- VkResult res;
-
- res = disp->CreateDirectFBSurfaceEXT(instance, pCreateInfo, pAllocator, pSurface);
- return res;
-}
-
-// This is the instance chain terminator function for CreateDirectFBSurfaceEXT
-VKAPI_ATTR VkResult VKAPI_CALL terminator_CreateDirectFBSurfaceEXT(VkInstance instance,
- const VkDirectFBSurfaceCreateInfoEXT *pCreateInfo,
- const VkAllocationCallbacks *pAllocator,
- VkSurfaceKHR *pSurface) {
- VkResult vkRes = VK_SUCCESS;
- VkIcdSurface *pIcdSurface = NULL;
- uint32_t i = 0;
-
- // First, check to ensure the appropriate extension was enabled:
- struct loader_instance *ptr_instance = loader_get_instance(instance);
- if (!ptr_instance->wsi_directfb_surface_enabled) {
- loader_log(ptr_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "VK_EXT_directfb_surface extension not enabled. vkCreateDirectFBSurfaceEXT not executed!\n");
- vkRes = VK_ERROR_EXTENSION_NOT_PRESENT;
- goto out;
- }
-
- // Next, if so, proceed with the implementation of this function:
- pIcdSurface =
- AllocateIcdSurfaceStruct(ptr_instance, sizeof(pIcdSurface->directfb_surf.base), sizeof(pIcdSurface->directfb_surf));
- if (pIcdSurface == NULL) {
- vkRes = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
-
- pIcdSurface->directfb_surf.base.platform = VK_ICD_WSI_PLATFORM_DIRECTFB;
- pIcdSurface->directfb_surf.dfb = pCreateInfo->dfb;
- pIcdSurface->directfb_surf.surface = pCreateInfo->surface;
-
- // Loop through each ICD and determine if they need to create a surface
- for (struct loader_icd_term *icd_term = ptr_instance->icd_terms; icd_term != NULL; icd_term = icd_term->next, i++) {
- if (icd_term->scanned_icd->interface_version >= ICD_VER_SUPPORTS_ICD_SURFACE_KHR) {
- if (NULL != icd_term->dispatch.CreateDirectFBSurfaceEXT) {
- vkRes = icd_term->dispatch.CreateDirectFBSurfaceEXT(icd_term->instance, pCreateInfo, pAllocator,
- &pIcdSurface->real_icd_surfaces[i]);
- if (VK_SUCCESS != vkRes) {
- goto out;
- }
- }
- }
- }
-
- *pSurface = (VkSurfaceKHR)pIcdSurface;
-
-out:
-
- if (VK_SUCCESS != vkRes && NULL != pIcdSurface) {
- if (NULL != pIcdSurface->real_icd_surfaces) {
- i = 0;
- for (struct loader_icd_term *icd_term = ptr_instance->icd_terms; icd_term != NULL; icd_term = icd_term->next, i++) {
- if ((VkSurfaceKHR)NULL != pIcdSurface->real_icd_surfaces[i] && NULL != icd_term->dispatch.DestroySurfaceKHR) {
- icd_term->dispatch.DestroySurfaceKHR(icd_term->instance, pIcdSurface->real_icd_surfaces[i], pAllocator);
- }
- }
- loader_instance_heap_free(ptr_instance, pIcdSurface->real_icd_surfaces);
- }
- loader_instance_heap_free(ptr_instance, pIcdSurface);
- }
-
- return vkRes;
-}
-
-// This is the trampoline entrypoint for
-// GetPhysicalDeviceDirectFBPresentationSupportEXT
-LOADER_EXPORT VKAPI_ATTR VkBool32 VKAPI_CALL vkGetPhysicalDeviceDirectFBPresentationSupportEXT(VkPhysicalDevice physicalDevice,
- uint32_t queueFamilyIndex,
- IDirectFB *dfb) {
- VkPhysicalDevice unwrapped_phys_dev = loader_unwrap_physical_device(physicalDevice);
- const VkLayerInstanceDispatchTable *disp;
- disp = loader_get_instance_layer_dispatch(physicalDevice);
- VkBool32 res = disp->GetPhysicalDeviceDirectFBPresentationSupportEXT(unwrapped_phys_dev, queueFamilyIndex, dfb);
- return res;
-}
-
-// This is the instance chain terminator function for
-// GetPhysicalDeviceDirectFBPresentationSupportEXT
-VKAPI_ATTR VkBool32 VKAPI_CALL terminator_GetPhysicalDeviceDirectFBPresentationSupportEXT(VkPhysicalDevice physicalDevice,
- uint32_t queueFamilyIndex,
- IDirectFB *dfb) {
- // First, check to ensure the appropriate extension was enabled:
- struct loader_physical_device_term *phys_dev_term = (struct loader_physical_device_term *)physicalDevice;
- struct loader_icd_term *icd_term = phys_dev_term->this_icd_term;
- struct loader_instance *ptr_instance = (struct loader_instance *)icd_term->this_instance;
- if (!ptr_instance->wsi_directfb_surface_enabled) {
- loader_log(
- ptr_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "VK_EXT_directfb_surface extension not enabled. vkGetPhysicalDeviceWaylandPresentationSupportKHR not executed!\n");
- return VK_SUCCESS;
- }
-
- if (NULL == icd_term->dispatch.GetPhysicalDeviceDirectFBPresentationSupportEXT) {
- loader_log(ptr_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "ICD for selected physical device is not exporting vkGetPhysicalDeviceDirectFBPresentationSupportEXT!\n");
- assert(false && "loader: null GetPhysicalDeviceDirectFBPresentationSupportEXT ICD pointer");
- }
-
- return icd_term->dispatch.GetPhysicalDeviceDirectFBPresentationSupportEXT(phys_dev_term->phys_dev, queueFamilyIndex, dfb);
-}
-#endif // VK_USE_PLATFORM_DIRECTFB_EXT
-
-#ifdef VK_USE_PLATFORM_ANDROID_KHR
-
-// Functions for the VK_KHR_android_surface extension:
-
-// This is the trampoline entrypoint for CreateAndroidSurfaceKHR
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkCreateAndroidSurfaceKHR(VkInstance instance, ANativeWindow *window,
- const VkAllocationCallbacks *pAllocator,
- VkSurfaceKHR *pSurface) {
- const VkLayerInstanceDispatchTable *disp;
- disp = loader_get_instance_layer_dispatch(instance);
- VkResult res;
-
- res = disp->CreateAndroidSurfaceKHR(instance, window, pAllocator, pSurface);
- return res;
-}
-
-// This is the instance chain terminator function for CreateAndroidSurfaceKHR
-VKAPI_ATTR VkResult VKAPI_CALL terminator_CreateAndroidSurfaceKHR(VkInstance instance, Window window,
- const VkAllocationCallbacks *pAllocator, VkSurfaceKHR *pSurface) {
- // First, check to ensure the appropriate extension was enabled:
- struct loader_instance *ptr_instance = loader_get_instance(instance);
- if (!ptr_instance->wsi_display_enabled) {
- loader_log(ptr_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "VK_KHR_display extension not enabled. vkCreateAndroidSurfaceKHR not executed!\n");
- return VK_ERROR_EXTENSION_NOT_PRESENT;
- }
-
- // Next, if so, proceed with the implementation of this function:
- VkIcdSurfaceAndroid *pIcdSurface =
- loader_instance_heap_alloc(ptr_instance, sizeof(VkIcdSurfaceAndroid), VK_SYSTEM_ALLOCATION_SCOPE_OBJECT);
- if (pIcdSurface == NULL) {
- return VK_ERROR_OUT_OF_HOST_MEMORY;
- }
-
- pIcdSurface->base.platform = VK_ICD_WSI_PLATFORM_ANDROID;
- pIcdSurface->window = window;
-
- *pSurface = (VkSurfaceKHR)pIcdSurface;
-
- return VK_SUCCESS;
-}
-
-#endif // VK_USE_PLATFORM_ANDROID_KHR
-
-// Functions for the VK_EXT_headless_surface extension:
-
-VKAPI_ATTR VkResult VKAPI_CALL vkCreateHeadlessSurfaceEXT(VkInstance instance, const VkHeadlessSurfaceCreateInfoEXT *pCreateInfo,
- const VkAllocationCallbacks *pAllocator, VkSurfaceKHR *pSurface) {
- const VkLayerInstanceDispatchTable *disp;
- disp = loader_get_instance_layer_dispatch(instance);
- VkResult res;
-
- res = disp->CreateHeadlessSurfaceEXT(instance, pCreateInfo, pAllocator, pSurface);
- return res;
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_CreateHeadlessSurfaceEXT(VkInstance instance,
- const VkHeadlessSurfaceCreateInfoEXT *pCreateInfo,
- const VkAllocationCallbacks *pAllocator,
- VkSurfaceKHR *pSurface) {
- struct loader_instance *inst = loader_get_instance(instance);
- VkIcdSurface *pIcdSurface = NULL;
- VkResult vkRes = VK_SUCCESS;
- uint32_t i = 0;
-
- if (!inst->wsi_headless_surface_enabled) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "VK_EXT_headless_surface extension not enabled. "
- "vkCreateHeadlessSurfaceEXT not executed!\n");
- return VK_SUCCESS;
- }
-
- // Next, if so, proceed with the implementation of this function:
- pIcdSurface = AllocateIcdSurfaceStruct(inst, sizeof(pIcdSurface->headless_surf.base), sizeof(pIcdSurface->headless_surf));
- if (pIcdSurface == NULL) {
- vkRes = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
-
- pIcdSurface->headless_surf.base.platform = VK_ICD_WSI_PLATFORM_HEADLESS;
- // Loop through each ICD and determine if they need to create a surface
- for (struct loader_icd_term *icd_term = inst->icd_terms; icd_term != NULL; icd_term = icd_term->next, i++) {
- if (icd_term->scanned_icd->interface_version >= ICD_VER_SUPPORTS_ICD_SURFACE_KHR) {
- if (NULL != icd_term->dispatch.CreateHeadlessSurfaceEXT) {
- vkRes = icd_term->dispatch.CreateHeadlessSurfaceEXT(icd_term->instance, pCreateInfo, pAllocator,
- &pIcdSurface->real_icd_surfaces[i]);
- if (VK_SUCCESS != vkRes) {
- goto out;
- }
- }
- }
- }
-
- *pSurface = (VkSurfaceKHR)pIcdSurface;
-
-out:
-
- if (VK_SUCCESS != vkRes && NULL != pIcdSurface) {
- if (NULL != pIcdSurface->real_icd_surfaces) {
- i = 0;
- for (struct loader_icd_term *icd_term = inst->icd_terms; icd_term != NULL; icd_term = icd_term->next, i++) {
- if ((VkSurfaceKHR)NULL != pIcdSurface->real_icd_surfaces[i] && NULL != icd_term->dispatch.DestroySurfaceKHR) {
- icd_term->dispatch.DestroySurfaceKHR(icd_term->instance, pIcdSurface->real_icd_surfaces[i], pAllocator);
- }
- }
- loader_instance_heap_free(inst, pIcdSurface->real_icd_surfaces);
- }
- loader_instance_heap_free(inst, pIcdSurface);
- }
-
- return vkRes;
-}
-
-#ifdef VK_USE_PLATFORM_MACOS_MVK
-
-// Functions for the VK_MVK_macos_surface extension:
-
-// This is the trampoline entrypoint for CreateMacOSSurfaceMVK
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkCreateMacOSSurfaceMVK(VkInstance instance,
- const VkMacOSSurfaceCreateInfoMVK *pCreateInfo,
- const VkAllocationCallbacks *pAllocator,
- VkSurfaceKHR *pSurface) {
- const VkLayerInstanceDispatchTable *disp;
- disp = loader_get_instance_layer_dispatch(instance);
- VkResult res;
-
- res = disp->CreateMacOSSurfaceMVK(instance, pCreateInfo, pAllocator, pSurface);
- return res;
-}
-
-// This is the instance chain terminator function for CreateMacOSSurfaceKHR
-VKAPI_ATTR VkResult VKAPI_CALL terminator_CreateMacOSSurfaceMVK(VkInstance instance, const VkMacOSSurfaceCreateInfoMVK *pCreateInfo,
- const VkAllocationCallbacks *pAllocator, VkSurfaceKHR *pSurface) {
- VkResult vkRes = VK_SUCCESS;
- VkIcdSurface *pIcdSurface = NULL;
- uint32_t i = 0;
-
- // First, check to ensure the appropriate extension was enabled:
- struct loader_instance *ptr_instance = loader_get_instance(instance);
- if (!ptr_instance->wsi_macos_surface_enabled) {
- loader_log(ptr_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "VK_MVK_macos_surface extension not enabled. vkCreateMacOSSurfaceMVK not executed!\n");
- vkRes = VK_ERROR_EXTENSION_NOT_PRESENT;
- goto out;
- }
-
- // Next, if so, proceed with the implementation of this function:
- pIcdSurface = AllocateIcdSurfaceStruct(ptr_instance, sizeof(pIcdSurface->macos_surf.base), sizeof(pIcdSurface->macos_surf));
- if (pIcdSurface == NULL) {
- vkRes = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
-
- pIcdSurface->macos_surf.base.platform = VK_ICD_WSI_PLATFORM_MACOS;
- pIcdSurface->macos_surf.pView = pCreateInfo->pView;
-
- // Loop through each ICD and determine if they need to create a surface
- for (struct loader_icd_term *icd_term = ptr_instance->icd_terms; icd_term != NULL; icd_term = icd_term->next, i++) {
- if (icd_term->scanned_icd->interface_version >= ICD_VER_SUPPORTS_ICD_SURFACE_KHR) {
- if (NULL != icd_term->dispatch.CreateMacOSSurfaceMVK) {
- vkRes = icd_term->dispatch.CreateMacOSSurfaceMVK(icd_term->instance, pCreateInfo, pAllocator,
- &pIcdSurface->real_icd_surfaces[i]);
- if (VK_SUCCESS != vkRes) {
- goto out;
- }
- }
- }
- }
-
- *pSurface = (VkSurfaceKHR)pIcdSurface;
-
-out:
-
- if (VK_SUCCESS != vkRes && NULL != pIcdSurface) {
- if (NULL != pIcdSurface->real_icd_surfaces) {
- i = 0;
- for (struct loader_icd_term *icd_term = ptr_instance->icd_terms; icd_term != NULL; icd_term = icd_term->next, i++) {
- if ((VkSurfaceKHR)NULL != pIcdSurface->real_icd_surfaces[i] && NULL != icd_term->dispatch.DestroySurfaceKHR) {
- icd_term->dispatch.DestroySurfaceKHR(icd_term->instance, pIcdSurface->real_icd_surfaces[i], pAllocator);
- }
- }
- loader_instance_heap_free(ptr_instance, pIcdSurface->real_icd_surfaces);
- }
- loader_instance_heap_free(ptr_instance, pIcdSurface);
- }
-
- return vkRes;
-}
-
-#endif // VK_USE_PLATFORM_MACOS_MVK
-
-#ifdef VK_USE_PLATFORM_IOS_MVK
-
-// Functions for the VK_MVK_ios_surface extension:
-
-// This is the trampoline entrypoint for CreateIOSSurfaceMVK
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkCreateIOSSurfaceMVK(VkInstance instance,
- const VkIOSSurfaceCreateInfoMVK *pCreateInfo,
- const VkAllocationCallbacks *pAllocator,
- VkSurfaceKHR *pSurface) {
- const VkLayerInstanceDispatchTable *disp;
- disp = loader_get_instance_layer_dispatch(instance);
- VkResult res;
-
- res = disp->CreateIOSSurfaceMVK(instance, pCreateInfo, pAllocator, pSurface);
- return res;
-}
-
-// This is the instance chain terminator function for CreateIOSSurfaceKHR
-VKAPI_ATTR VkResult VKAPI_CALL terminator_CreateIOSSurfaceMVK(VkInstance instance, const VkIOSSurfaceCreateInfoMVK *pCreateInfo,
- const VkAllocationCallbacks *pAllocator, VkSurfaceKHR *pSurface) {
- // First, check to ensure the appropriate extension was enabled:
- struct loader_instance *ptr_instance = loader_get_instance(instance);
- if (!ptr_instance->wsi_ios_surface_enabled) {
- loader_log(ptr_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "VK_MVK_ios_surface extension not enabled. vkCreateIOSSurfaceMVK not executed!\n");
- return VK_ERROR_EXTENSION_NOT_PRESENT;
- }
-
- // Next, if so, proceed with the implementation of this function:
- VkIcdSurfaceIOS *pIcdSurface =
- loader_instance_heap_alloc(ptr_instance, sizeof(VkIcdSurfaceIOS), VK_SYSTEM_ALLOCATION_SCOPE_OBJECT);
- if (pIcdSurface == NULL) {
- return VK_ERROR_OUT_OF_HOST_MEMORY;
- }
-
- pIcdSurface->base.platform = VK_ICD_WSI_PLATFORM_IOS;
- pIcdSurface->pView = pCreateInfo->pView;
-
- *pSurface = (VkSurfaceKHR)pIcdSurface;
-
- return VK_SUCCESS;
-}
-
-#endif // VK_USE_PLATFORM_IOS_MVK
-
-#ifdef VK_USE_PLATFORM_GGP
-
-// Functions for the VK_GGP_stream_descriptor_surface extension:
-
-// This is the trampoline entrypoint for CreateStreamDescriptorSurfaceGGP
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL
-vkCreateStreamDescriptorSurfaceGGP(VkInstance instance, const VkStreamDescriptorSurfaceCreateInfoGGP *pCreateInfo,
- const VkAllocationCallbacks *pAllocator, VkSurfaceKHR *pSurface) {
- const VkLayerInstanceDispatchTable *disp;
- disp = loader_get_instance_layer_dispatch(instance);
- VkResult res;
-
- res = disp->CreateStreamDescriptorSurfaceGGP(instance, pCreateInfo, pAllocator, pSurface);
- return res;
-}
-
-// This is the instance chain terminator function for CreateStreamDescriptorSurfaceGGP
-VKAPI_ATTR VkResult VKAPI_CALL
-terminator_CreateStreamDescriptorSurfaceGGP(VkInstance instance, const VkStreamDescriptorSurfaceCreateInfoGGP *pCreateInfo,
- const VkAllocationCallbacks *pAllocator, VkSurfaceKHR *pSurface) {
- VkResult vkRes = VK_SUCCESS;
- VkIcdSurface *pIcdSurface = NULL;
- uint32_t i = 0;
-
- // First, check to ensure the appropriate extension was enabled:
- struct loader_instance *ptr_instance = loader_get_instance(instance);
- if (!ptr_instance->wsi_ggp_surface_enabled) {
- loader_log(ptr_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "VK_GGP_stream_descriptor_surface extension not enabled. vkCreateStreamDescriptorSurfaceGGP not executed!\n");
- vkRes = VK_ERROR_EXTENSION_NOT_PRESENT;
- goto out;
- }
-
- // Next, if so, proceed with the implementation of this function:
- pIcdSurface = AllocateIcdSurfaceStruct(ptr_instance, sizeof(pIcdSurface->ggp_surf.base), sizeof(pIcdSurface->ggp_surf));
- if (pIcdSurface == NULL) {
- vkRes = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
-
- pIcdSurface->ggp_surf.base.platform = VK_ICD_WSI_PLATFORM_GGP;
- pIcdSurface->ggp_surf.streamDescriptor = pCreateInfo->streamDescriptor;
-
- // Loop through each ICD and determine if they need to create a surface
- for (struct loader_icd_term *icd_term = ptr_instance->icd_terms; icd_term != NULL; icd_term = icd_term->next, i++) {
- if (icd_term->scanned_icd->interface_version >= ICD_VER_SUPPORTS_ICD_SURFACE_KHR) {
- if (NULL != icd_term->dispatch.CreateStreamDescriptorSurfaceGGP) {
- vkRes = icd_term->dispatch.CreateStreamDescriptorSurfaceGGP(icd_term->instance, pCreateInfo, pAllocator,
- &pIcdSurface->real_icd_surfaces[i]);
- if (VK_SUCCESS != vkRes) {
- goto out;
- }
- }
- }
- }
-
- *pSurface = (VkSurfaceKHR)pIcdSurface;
-
-out:
-
- if (VK_SUCCESS != vkRes && NULL != pIcdSurface) {
- if (NULL != pIcdSurface->real_icd_surfaces) {
- i = 0;
- for (struct loader_icd_term *icd_term = ptr_instance->icd_terms; icd_term != NULL; icd_term = icd_term->next, i++) {
- if ((VkSurfaceKHR)NULL != pIcdSurface->real_icd_surfaces[i] && NULL != icd_term->dispatch.DestroySurfaceKHR) {
- icd_term->dispatch.DestroySurfaceKHR(icd_term->instance, pIcdSurface->real_icd_surfaces[i], pAllocator);
- }
- }
- loader_instance_heap_free(ptr_instance, pIcdSurface->real_icd_surfaces);
- }
- loader_instance_heap_free(ptr_instance, pIcdSurface);
- }
- return vkRes;
-}
-
-#endif // VK_USE_PLATFORM_GGP
-
-#if defined(VK_USE_PLATFORM_METAL_EXT)
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkCreateMetalSurfaceEXT(VkInstance instance,
- const VkMetalSurfaceCreateInfoEXT *pCreateInfo,
- const VkAllocationCallbacks *pAllocator,
- VkSurfaceKHR *pSurface) {
- const VkLayerInstanceDispatchTable *disp = loader_get_instance_layer_dispatch(instance);
- return disp->CreateMetalSurfaceEXT(instance, pCreateInfo, pAllocator, pSurface);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_CreateMetalSurfaceEXT(VkInstance instance, const VkMetalSurfaceCreateInfoEXT *pCreateInfo,
- const VkAllocationCallbacks *pAllocator, VkSurfaceKHR *pSurface) {
- VkResult result = VK_SUCCESS;
- VkIcdSurface *icd_surface = NULL;
- uint32_t i;
-
- // First, check to ensure the appropriate extension was enabled:
- struct loader_instance *ptr_instance = loader_get_instance(instance);
- if (!ptr_instance->wsi_metal_surface_enabled) {
- loader_log(ptr_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "VK_EXT_metal_surface extension not enabled. vkCreateMetalSurfaceEXT will not be executed.\n");
- }
-
- // Next, if so, proceed with the implementation of this function:
- icd_surface = AllocateIcdSurfaceStruct(ptr_instance, sizeof(icd_surface->metal_surf.base), sizeof(icd_surface->metal_surf));
- if (icd_surface == NULL) {
- result = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
-
- icd_surface->metal_surf.base.platform = VK_ICD_WSI_PLATFORM_METAL;
- icd_surface->metal_surf.pLayer = pCreateInfo->pLayer;
-
- // Loop through each ICD and determine if they need to create a surface
- i = 0;
- for (struct loader_icd_term *icd_term = ptr_instance->icd_terms; icd_term != NULL; icd_term = icd_term->next, ++i) {
- if (icd_term->scanned_icd->interface_version >= ICD_VER_SUPPORTS_ICD_SURFACE_KHR) {
- if (icd_term->dispatch.CreateMetalSurfaceEXT != NULL) {
- result = icd_term->dispatch.CreateMetalSurfaceEXT(icd_term->instance, pCreateInfo, pAllocator,
- &icd_surface->real_icd_surfaces[i]);
- if (result != VK_SUCCESS) {
- goto out;
- }
- }
- }
- }
- *pSurface = (VkSurfaceKHR)icd_surface;
-
-out:
- if (result != VK_SUCCESS && icd_surface != NULL) {
- if (icd_surface->real_icd_surfaces != NULL) {
- i = 0;
- for (struct loader_icd_term *icd_term = ptr_instance->icd_terms; icd_term != NULL; icd_term = icd_term->next, ++i) {
- if (icd_surface->real_icd_surfaces[i] == VK_NULL_HANDLE && icd_term->dispatch.DestroySurfaceKHR != NULL) {
- icd_term->dispatch.DestroySurfaceKHR(icd_term->instance, icd_surface->real_icd_surfaces[i], pAllocator);
- }
- }
- loader_instance_heap_free(ptr_instance, icd_surface->real_icd_surfaces);
- }
- loader_instance_heap_free(ptr_instance, icd_surface);
- }
- return result;
-}
-
-#endif
-
-// Functions for the VK_KHR_display instance extension:
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceDisplayPropertiesKHR(VkPhysicalDevice physicalDevice,
- uint32_t *pPropertyCount,
- VkDisplayPropertiesKHR *pProperties) {
- VkPhysicalDevice unwrapped_phys_dev = loader_unwrap_physical_device(physicalDevice);
- const VkLayerInstanceDispatchTable *disp;
- disp = loader_get_instance_layer_dispatch(physicalDevice);
- VkResult res = disp->GetPhysicalDeviceDisplayPropertiesKHR(unwrapped_phys_dev, pPropertyCount, pProperties);
- return res;
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_GetPhysicalDeviceDisplayPropertiesKHR(VkPhysicalDevice physicalDevice,
- uint32_t *pPropertyCount,
- VkDisplayPropertiesKHR *pProperties) {
- // First, check to ensure the appropriate extension was enabled:
- struct loader_physical_device_term *phys_dev_term = (struct loader_physical_device_term *)physicalDevice;
- struct loader_icd_term *icd_term = phys_dev_term->this_icd_term;
- struct loader_instance *ptr_instance = (struct loader_instance *)icd_term->this_instance;
- if (!ptr_instance->wsi_display_enabled) {
- loader_log(ptr_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "VK_KHR_display extension not enabled. vkGetPhysicalDeviceDisplayPropertiesKHR not executed!\n");
- return VK_SUCCESS;
- }
-
- if (NULL == icd_term->dispatch.GetPhysicalDeviceDisplayPropertiesKHR) {
- loader_log(ptr_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "ICD for selected physical device is not exporting vkGetPhysicalDeviceDisplayPropertiesKHR!\n");
- assert(false && "loader: null GetPhysicalDeviceDisplayPropertiesKHR ICD pointer");
- }
-
- return icd_term->dispatch.GetPhysicalDeviceDisplayPropertiesKHR(phys_dev_term->phys_dev, pPropertyCount, pProperties);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceDisplayPlanePropertiesKHR(
- VkPhysicalDevice physicalDevice, uint32_t *pPropertyCount, VkDisplayPlanePropertiesKHR *pProperties) {
- VkPhysicalDevice unwrapped_phys_dev = loader_unwrap_physical_device(physicalDevice);
- const VkLayerInstanceDispatchTable *disp;
- disp = loader_get_instance_layer_dispatch(physicalDevice);
- VkResult res = disp->GetPhysicalDeviceDisplayPlanePropertiesKHR(unwrapped_phys_dev, pPropertyCount, pProperties);
- return res;
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_GetPhysicalDeviceDisplayPlanePropertiesKHR(VkPhysicalDevice physicalDevice,
- uint32_t *pPropertyCount,
- VkDisplayPlanePropertiesKHR *pProperties) {
- // First, check to ensure the appropriate extension was enabled:
- struct loader_physical_device_term *phys_dev_term = (struct loader_physical_device_term *)physicalDevice;
- struct loader_icd_term *icd_term = phys_dev_term->this_icd_term;
- struct loader_instance *ptr_instance = (struct loader_instance *)icd_term->this_instance;
- if (!ptr_instance->wsi_display_enabled) {
- loader_log(ptr_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "VK_KHR_display extension not enabled. vkGetPhysicalDeviceDisplayPlanePropertiesKHR not executed!\n");
- return VK_SUCCESS;
- }
-
- if (NULL == icd_term->dispatch.GetPhysicalDeviceDisplayPlanePropertiesKHR) {
- loader_log(ptr_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "ICD for selected physical device is not exporting vkGetPhysicalDeviceDisplayPlanePropertiesKHR!\n");
- assert(false && "loader: null GetPhysicalDeviceDisplayPlanePropertiesKHR ICD pointer");
- }
-
- return icd_term->dispatch.GetPhysicalDeviceDisplayPlanePropertiesKHR(phys_dev_term->phys_dev, pPropertyCount, pProperties);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkGetDisplayPlaneSupportedDisplaysKHR(VkPhysicalDevice physicalDevice,
- uint32_t planeIndex, uint32_t *pDisplayCount,
- VkDisplayKHR *pDisplays) {
- VkPhysicalDevice unwrapped_phys_dev = loader_unwrap_physical_device(physicalDevice);
- const VkLayerInstanceDispatchTable *disp;
- disp = loader_get_instance_layer_dispatch(physicalDevice);
- VkResult res = disp->GetDisplayPlaneSupportedDisplaysKHR(unwrapped_phys_dev, planeIndex, pDisplayCount, pDisplays);
- return res;
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_GetDisplayPlaneSupportedDisplaysKHR(VkPhysicalDevice physicalDevice, uint32_t planeIndex,
- uint32_t *pDisplayCount, VkDisplayKHR *pDisplays) {
- // First, check to ensure the appropriate extension was enabled:
- struct loader_physical_device_term *phys_dev_term = (struct loader_physical_device_term *)physicalDevice;
- struct loader_icd_term *icd_term = phys_dev_term->this_icd_term;
- struct loader_instance *ptr_instance = (struct loader_instance *)icd_term->this_instance;
- if (!ptr_instance->wsi_display_enabled) {
- loader_log(ptr_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "VK_KHR_display extension not enabled. vkGetDisplayPlaneSupportedDisplaysKHR not executed!\n");
- return VK_SUCCESS;
- }
-
- if (NULL == icd_term->dispatch.GetDisplayPlaneSupportedDisplaysKHR) {
- loader_log(ptr_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "ICD for selected physical device is not exporting vkGetDisplayPlaneSupportedDisplaysKHR!\n");
- assert(false && "loader: null GetDisplayPlaneSupportedDisplaysKHR ICD pointer");
- }
-
- return icd_term->dispatch.GetDisplayPlaneSupportedDisplaysKHR(phys_dev_term->phys_dev, planeIndex, pDisplayCount, pDisplays);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkGetDisplayModePropertiesKHR(VkPhysicalDevice physicalDevice, VkDisplayKHR display,
- uint32_t *pPropertyCount,
- VkDisplayModePropertiesKHR *pProperties) {
- VkPhysicalDevice unwrapped_phys_dev = loader_unwrap_physical_device(physicalDevice);
- const VkLayerInstanceDispatchTable *disp;
- disp = loader_get_instance_layer_dispatch(physicalDevice);
- VkResult res = disp->GetDisplayModePropertiesKHR(unwrapped_phys_dev, display, pPropertyCount, pProperties);
- return res;
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_GetDisplayModePropertiesKHR(VkPhysicalDevice physicalDevice, VkDisplayKHR display,
- uint32_t *pPropertyCount,
- VkDisplayModePropertiesKHR *pProperties) {
- // First, check to ensure the appropriate extension was enabled:
- struct loader_physical_device_term *phys_dev_term = (struct loader_physical_device_term *)physicalDevice;
- struct loader_icd_term *icd_term = phys_dev_term->this_icd_term;
- struct loader_instance *ptr_instance = (struct loader_instance *)icd_term->this_instance;
- if (!ptr_instance->wsi_display_enabled) {
- loader_log(ptr_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "VK_KHR_display extension not enabled. vkGetDisplayModePropertiesKHR not executed!\n");
- return VK_SUCCESS;
- }
-
- if (NULL == icd_term->dispatch.GetDisplayModePropertiesKHR) {
- loader_log(ptr_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "ICD for selected physical device is not exporting vkGetDisplayModePropertiesKHR!\n");
- assert(false && "loader: null GetDisplayModePropertiesKHR ICD pointer");
- }
-
- return icd_term->dispatch.GetDisplayModePropertiesKHR(phys_dev_term->phys_dev, display, pPropertyCount, pProperties);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkCreateDisplayModeKHR(VkPhysicalDevice physicalDevice, VkDisplayKHR display,
- const VkDisplayModeCreateInfoKHR *pCreateInfo,
- const VkAllocationCallbacks *pAllocator,
- VkDisplayModeKHR *pMode) {
- VkPhysicalDevice unwrapped_phys_dev = loader_unwrap_physical_device(physicalDevice);
- const VkLayerInstanceDispatchTable *disp;
- disp = loader_get_instance_layer_dispatch(physicalDevice);
- VkResult res = disp->CreateDisplayModeKHR(unwrapped_phys_dev, display, pCreateInfo, pAllocator, pMode);
- return res;
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_CreateDisplayModeKHR(VkPhysicalDevice physicalDevice, VkDisplayKHR display,
- const VkDisplayModeCreateInfoKHR *pCreateInfo,
- const VkAllocationCallbacks *pAllocator, VkDisplayModeKHR *pMode) {
- // First, check to ensure the appropriate extension was enabled:
- struct loader_physical_device_term *phys_dev_term = (struct loader_physical_device_term *)physicalDevice;
- struct loader_icd_term *icd_term = phys_dev_term->this_icd_term;
- struct loader_instance *ptr_instance = (struct loader_instance *)icd_term->this_instance;
- if (!ptr_instance->wsi_display_enabled) {
- loader_log(ptr_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "VK_KHR_display extension not enabled. vkCreateDisplayModeKHR not executed!\n");
- return VK_ERROR_EXTENSION_NOT_PRESENT;
- }
-
- if (NULL == icd_term->dispatch.CreateDisplayModeKHR) {
- loader_log(ptr_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "ICD for selected physical device is not exporting vkCreateDisplayModeKHR!\n");
- assert(false && "loader: null CreateDisplayModeKHR ICD pointer");
- }
-
- return icd_term->dispatch.CreateDisplayModeKHR(phys_dev_term->phys_dev, display, pCreateInfo, pAllocator, pMode);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkGetDisplayPlaneCapabilitiesKHR(VkPhysicalDevice physicalDevice,
- VkDisplayModeKHR mode, uint32_t planeIndex,
- VkDisplayPlaneCapabilitiesKHR *pCapabilities) {
- VkPhysicalDevice unwrapped_phys_dev = loader_unwrap_physical_device(physicalDevice);
- const VkLayerInstanceDispatchTable *disp;
- disp = loader_get_instance_layer_dispatch(physicalDevice);
- VkResult res = disp->GetDisplayPlaneCapabilitiesKHR(unwrapped_phys_dev, mode, planeIndex, pCapabilities);
- return res;
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_GetDisplayPlaneCapabilitiesKHR(VkPhysicalDevice physicalDevice, VkDisplayModeKHR mode,
- uint32_t planeIndex,
- VkDisplayPlaneCapabilitiesKHR *pCapabilities) {
- // First, check to ensure the appropriate extension was enabled:
- struct loader_physical_device_term *phys_dev_term = (struct loader_physical_device_term *)physicalDevice;
- struct loader_icd_term *icd_term = phys_dev_term->this_icd_term;
- struct loader_instance *ptr_instance = (struct loader_instance *)icd_term->this_instance;
- if (!ptr_instance->wsi_display_enabled) {
- loader_log(ptr_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "VK_KHR_display extension not enabled. vkGetDisplayPlaneCapabilitiesKHR not executed!\n");
- return VK_SUCCESS;
- }
-
- if (NULL == icd_term->dispatch.GetDisplayPlaneCapabilitiesKHR) {
- loader_log(ptr_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "ICD for selected physical device is not exporting vkGetDisplayPlaneCapabilitiesKHR!\n");
- assert(false && "loader: null GetDisplayPlaneCapabilitiesKHR ICD pointer");
- }
-
- return icd_term->dispatch.GetDisplayPlaneCapabilitiesKHR(phys_dev_term->phys_dev, mode, planeIndex, pCapabilities);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkCreateDisplayPlaneSurfaceKHR(VkInstance instance,
- const VkDisplaySurfaceCreateInfoKHR *pCreateInfo,
- const VkAllocationCallbacks *pAllocator,
- VkSurfaceKHR *pSurface) {
- const VkLayerInstanceDispatchTable *disp;
- disp = loader_get_instance_layer_dispatch(instance);
- VkResult res;
-
- res = disp->CreateDisplayPlaneSurfaceKHR(instance, pCreateInfo, pAllocator, pSurface);
- return res;
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_CreateDisplayPlaneSurfaceKHR(VkInstance instance,
- const VkDisplaySurfaceCreateInfoKHR *pCreateInfo,
- const VkAllocationCallbacks *pAllocator,
- VkSurfaceKHR *pSurface) {
- struct loader_instance *inst = loader_get_instance(instance);
- VkIcdSurface *pIcdSurface = NULL;
- VkResult vkRes = VK_SUCCESS;
- uint32_t i = 0;
-
- if (!inst->wsi_display_enabled) {
- loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "VK_KHR_surface extension not enabled. vkCreateDisplayPlaneSurfaceKHR not executed!\n");
- vkRes = VK_ERROR_EXTENSION_NOT_PRESENT;
- goto out;
- }
-
- // Next, if so, proceed with the implementation of this function:
- pIcdSurface = AllocateIcdSurfaceStruct(inst, sizeof(pIcdSurface->display_surf.base), sizeof(pIcdSurface->display_surf));
- if (pIcdSurface == NULL) {
- vkRes = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
-
- pIcdSurface->display_surf.base.platform = VK_ICD_WSI_PLATFORM_DISPLAY;
- pIcdSurface->display_surf.displayMode = pCreateInfo->displayMode;
- pIcdSurface->display_surf.planeIndex = pCreateInfo->planeIndex;
- pIcdSurface->display_surf.planeStackIndex = pCreateInfo->planeStackIndex;
- pIcdSurface->display_surf.transform = pCreateInfo->transform;
- pIcdSurface->display_surf.globalAlpha = pCreateInfo->globalAlpha;
- pIcdSurface->display_surf.alphaMode = pCreateInfo->alphaMode;
- pIcdSurface->display_surf.imageExtent = pCreateInfo->imageExtent;
-
- // Loop through each ICD and determine if they need to create a surface
- for (struct loader_icd_term *icd_term = inst->icd_terms; icd_term != NULL; icd_term = icd_term->next, i++) {
- if (icd_term->scanned_icd->interface_version >= ICD_VER_SUPPORTS_ICD_SURFACE_KHR) {
- if (NULL != icd_term->dispatch.CreateDisplayPlaneSurfaceKHR) {
- vkRes = icd_term->dispatch.CreateDisplayPlaneSurfaceKHR(icd_term->instance, pCreateInfo, pAllocator,
- &pIcdSurface->real_icd_surfaces[i]);
- if (VK_SUCCESS != vkRes) {
- goto out;
- }
- }
- }
- }
-
- *pSurface = (VkSurfaceKHR)pIcdSurface;
-
-out:
-
- if (VK_SUCCESS != vkRes && NULL != pIcdSurface) {
- if (NULL != pIcdSurface->real_icd_surfaces) {
- i = 0;
- for (struct loader_icd_term *icd_term = inst->icd_terms; icd_term != NULL; icd_term = icd_term->next, i++) {
- if ((VkSurfaceKHR)NULL != pIcdSurface->real_icd_surfaces[i] && NULL != icd_term->dispatch.DestroySurfaceKHR) {
- icd_term->dispatch.DestroySurfaceKHR(icd_term->instance, pIcdSurface->real_icd_surfaces[i], pAllocator);
- }
- }
- loader_instance_heap_free(inst, pIcdSurface->real_icd_surfaces);
- }
- loader_instance_heap_free(inst, pIcdSurface);
- }
-
- return vkRes;
-}
-
-// EXT_display_swapchain Extension command
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkCreateSharedSwapchainsKHR(VkDevice device, uint32_t swapchainCount,
- const VkSwapchainCreateInfoKHR *pCreateInfos,
- const VkAllocationCallbacks *pAllocator,
- VkSwapchainKHR *pSwapchains) {
- const VkLayerDispatchTable *disp;
- disp = loader_get_dispatch(device);
- return disp->CreateSharedSwapchainsKHR(device, swapchainCount, pCreateInfos, pAllocator, pSwapchains);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_CreateSharedSwapchainsKHR(VkDevice device, uint32_t swapchainCount,
- const VkSwapchainCreateInfoKHR *pCreateInfos,
- const VkAllocationCallbacks *pAllocator,
- VkSwapchainKHR *pSwapchains) {
- uint32_t icd_index = 0;
- struct loader_device *dev;
- struct loader_icd_term *icd_term = loader_get_icd_and_device(device, &dev, &icd_index);
- if (NULL != icd_term && NULL != icd_term->dispatch.CreateSharedSwapchainsKHR) {
- VkIcdSurface *icd_surface = (VkIcdSurface *)(uintptr_t)pCreateInfos->surface;
- if (NULL != icd_surface->real_icd_surfaces) {
- if ((VkSurfaceKHR)NULL != icd_surface->real_icd_surfaces[icd_index]) {
- // We found the ICD, and there is an ICD KHR surface
- // associated with it, so copy the CreateInfo struct
- // and point it at the ICD's surface.
- VkSwapchainCreateInfoKHR *pCreateCopy = loader_stack_alloc(sizeof(VkSwapchainCreateInfoKHR) * swapchainCount);
- if (NULL == pCreateCopy) {
- return VK_ERROR_OUT_OF_HOST_MEMORY;
- }
- memcpy(pCreateCopy, pCreateInfos, sizeof(VkSwapchainCreateInfoKHR) * swapchainCount);
- for (uint32_t sc = 0; sc < swapchainCount; sc++) {
- pCreateCopy[sc].surface = icd_surface->real_icd_surfaces[icd_index];
- }
- return icd_term->dispatch.CreateSharedSwapchainsKHR(device, swapchainCount, pCreateCopy, pAllocator, pSwapchains);
- }
- }
- return icd_term->dispatch.CreateSharedSwapchainsKHR(device, swapchainCount, pCreateInfos, pAllocator, pSwapchains);
- }
- return VK_SUCCESS;
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkGetDeviceGroupPresentCapabilitiesKHR(
- VkDevice device,
- VkDeviceGroupPresentCapabilitiesKHR* pDeviceGroupPresentCapabilities) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->GetDeviceGroupPresentCapabilitiesKHR(device, pDeviceGroupPresentCapabilities);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkGetDeviceGroupSurfacePresentModesKHR(
- VkDevice device,
- VkSurfaceKHR surface,
- VkDeviceGroupPresentModeFlagsKHR* pModes) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->GetDeviceGroupSurfacePresentModesKHR(device, surface, pModes);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_GetDeviceGroupSurfacePresentModesKHR(
- VkDevice device,
- VkSurfaceKHR surface,
- VkDeviceGroupPresentModeFlagsKHR* pModes) {
- uint32_t icd_index = 0;
- struct loader_device *dev;
- struct loader_icd_term *icd_term = loader_get_icd_and_device(device, &dev, &icd_index);
- if (NULL != icd_term && NULL != icd_term->dispatch.GetDeviceGroupSurfacePresentModesKHR) {
- VkIcdSurface *icd_surface = (VkIcdSurface *)(uintptr_t)surface;
- if (NULL != icd_surface->real_icd_surfaces && (VkSurfaceKHR)NULL != icd_surface->real_icd_surfaces[icd_index]) {
- return icd_term->dispatch.GetDeviceGroupSurfacePresentModesKHR(device, icd_surface->real_icd_surfaces[icd_index], pModes);
- }
- return icd_term->dispatch.GetDeviceGroupSurfacePresentModesKHR(device, surface, pModes);
- }
- return VK_SUCCESS;
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDevicePresentRectanglesKHR(
- VkPhysicalDevice physicalDevice,
- VkSurfaceKHR surface,
- uint32_t* pRectCount,
- VkRect2D* pRects) {
- const VkLayerInstanceDispatchTable *disp;
- VkPhysicalDevice unwrapped_phys_dev = loader_unwrap_physical_device(physicalDevice);
- disp = loader_get_instance_layer_dispatch(physicalDevice);
- return disp->GetPhysicalDevicePresentRectanglesKHR(unwrapped_phys_dev, surface, pRectCount, pRects);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_GetPhysicalDevicePresentRectanglesKHR(
- VkPhysicalDevice physicalDevice,
- VkSurfaceKHR surface,
- uint32_t* pRectCount,
- VkRect2D* pRects) {
- struct loader_physical_device_term *phys_dev_term = (struct loader_physical_device_term *)physicalDevice;
- struct loader_icd_term *icd_term = phys_dev_term->this_icd_term;
- if (NULL == icd_term->dispatch.GetPhysicalDevicePresentRectanglesKHR) {
- loader_log(icd_term->this_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "ICD associated with VkPhysicalDevice does not support GetPhysicalDevicePresentRectanglesKHX");
- }
- VkIcdSurface *icd_surface = (VkIcdSurface *)(surface);
- uint8_t icd_index = phys_dev_term->icd_index;
- if (NULL != icd_surface->real_icd_surfaces && NULL != (void *)icd_surface->real_icd_surfaces[icd_index]) {
- return icd_term->dispatch.GetPhysicalDevicePresentRectanglesKHR(phys_dev_term->phys_dev, icd_surface->real_icd_surfaces[icd_index], pRectCount, pRects);
- }
- return icd_term->dispatch.GetPhysicalDevicePresentRectanglesKHR(phys_dev_term->phys_dev, surface, pRectCount, pRects);
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkAcquireNextImage2KHR(
- VkDevice device,
- const VkAcquireNextImageInfoKHR* pAcquireInfo,
- uint32_t* pImageIndex) {
- const VkLayerDispatchTable *disp = loader_get_dispatch(device);
- return disp->AcquireNextImage2KHR(device, pAcquireInfo, pImageIndex);
-}
-
-// ---- VK_KHR_get_display_properties2 extension trampoline/terminators
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceDisplayProperties2KHR(VkPhysicalDevice physicalDevice,
- uint32_t *pPropertyCount,
- VkDisplayProperties2KHR *pProperties) {
- const VkLayerInstanceDispatchTable *disp;
- VkPhysicalDevice unwrapped_phys_dev = loader_unwrap_physical_device(physicalDevice);
- disp = loader_get_instance_layer_dispatch(physicalDevice);
- return disp->GetPhysicalDeviceDisplayProperties2KHR(unwrapped_phys_dev, pPropertyCount, pProperties);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_GetPhysicalDeviceDisplayProperties2KHR(VkPhysicalDevice physicalDevice,
- uint32_t *pPropertyCount,
- VkDisplayProperties2KHR *pProperties) {
- struct loader_physical_device_term *phys_dev_term = (struct loader_physical_device_term *)physicalDevice;
- struct loader_icd_term *icd_term = phys_dev_term->this_icd_term;
-
- // If the function is available in the driver, just call into it
- if (icd_term->dispatch.GetPhysicalDeviceDisplayProperties2KHR != NULL) {
- return icd_term->dispatch.GetPhysicalDeviceDisplayProperties2KHR(phys_dev_term->phys_dev, pPropertyCount, pProperties);
- }
-
- // We have to emulate the function.
- loader_log(icd_term->this_instance, VK_DEBUG_REPORT_INFORMATION_BIT_EXT, 0,
- "vkGetPhysicalDeviceDisplayProperties2KHR: Emulating call in ICD \"%s\"", icd_term->scanned_icd->lib_name);
-
- // If the icd doesn't support VK_KHR_display, then no properties are available
- if (icd_term->dispatch.GetPhysicalDeviceDisplayPropertiesKHR == NULL) {
- *pPropertyCount = 0;
- return VK_SUCCESS;
- }
-
- // If we aren't writing to pProperties, then emulation is straightforward
- if (pProperties == NULL || *pPropertyCount == 0) {
- return icd_term->dispatch.GetPhysicalDeviceDisplayPropertiesKHR(phys_dev_term->phys_dev, pPropertyCount, NULL);
- }
-
- // If we do have to write to pProperties, then we need to write to a temporary array of VkDisplayPropertiesKHR and copy it
- VkDisplayPropertiesKHR *properties = loader_stack_alloc(*pPropertyCount * sizeof(VkDisplayPropertiesKHR));
- if (properties == NULL) {
- return VK_ERROR_OUT_OF_HOST_MEMORY;
- }
- VkResult res = icd_term->dispatch.GetPhysicalDeviceDisplayPropertiesKHR(phys_dev_term->phys_dev, pPropertyCount, properties);
- if (res < 0) {
- return res;
- }
- for (uint32_t i = 0; i < *pPropertyCount; ++i) {
- memcpy(&pProperties[i].displayProperties, &properties[i], sizeof(VkDisplayPropertiesKHR));
- }
- return res;
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceDisplayPlaneProperties2KHR(
- VkPhysicalDevice physicalDevice, uint32_t *pPropertyCount, VkDisplayPlaneProperties2KHR *pProperties) {
- const VkLayerInstanceDispatchTable *disp;
- VkPhysicalDevice unwrapped_phys_dev = loader_unwrap_physical_device(physicalDevice);
- disp = loader_get_instance_layer_dispatch(physicalDevice);
- return disp->GetPhysicalDeviceDisplayPlaneProperties2KHR(unwrapped_phys_dev, pPropertyCount, pProperties);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_GetPhysicalDeviceDisplayPlaneProperties2KHR(VkPhysicalDevice physicalDevice,
- uint32_t *pPropertyCount,
- VkDisplayPlaneProperties2KHR *pProperties) {
- struct loader_physical_device_term *phys_dev_term = (struct loader_physical_device_term *)physicalDevice;
- struct loader_icd_term *icd_term = phys_dev_term->this_icd_term;
-
- // If the function is available in the driver, just call into it
- if (icd_term->dispatch.GetPhysicalDeviceDisplayPlaneProperties2KHR != NULL) {
- return icd_term->dispatch.GetPhysicalDeviceDisplayPlaneProperties2KHR(phys_dev_term->phys_dev, pPropertyCount, pProperties);
- }
-
- // We have to emulate the function.
- loader_log(icd_term->this_instance, VK_DEBUG_REPORT_INFORMATION_BIT_EXT, 0,
- "vkGetPhysicalDeviceDisplayPlaneProperties2KHR: Emulating call in ICD \"%s\"", icd_term->scanned_icd->lib_name);
-
- // If the icd doesn't support VK_KHR_display, then no properties are available
- if (icd_term->dispatch.GetPhysicalDeviceDisplayPlanePropertiesKHR == NULL) {
- *pPropertyCount = 0;
- return VK_SUCCESS;
- }
-
- // If we aren't writing to pProperties, then emulation is straightforward
- if (pProperties == NULL || *pPropertyCount == 0) {
- return icd_term->dispatch.GetPhysicalDeviceDisplayPlanePropertiesKHR(phys_dev_term->phys_dev, pPropertyCount, NULL);
- }
-
- // If we do have to write to pProperties, then we need to write to a temporary array of VkDisplayPlanePropertiesKHR and copy it
- VkDisplayPlanePropertiesKHR *properties = loader_stack_alloc(*pPropertyCount * sizeof(VkDisplayPlanePropertiesKHR));
- if (properties == NULL) {
- return VK_ERROR_OUT_OF_HOST_MEMORY;
- }
- VkResult res =
- icd_term->dispatch.GetPhysicalDeviceDisplayPlanePropertiesKHR(phys_dev_term->phys_dev, pPropertyCount, properties);
- if (res < 0) {
- return res;
- }
- for (uint32_t i = 0; i < *pPropertyCount; ++i) {
- memcpy(&pProperties[i].displayPlaneProperties, &properties[i], sizeof(VkDisplayPlanePropertiesKHR));
- }
- return res;
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkGetDisplayModeProperties2KHR(VkPhysicalDevice physicalDevice, VkDisplayKHR display,
- uint32_t *pPropertyCount,
- VkDisplayModeProperties2KHR *pProperties) {
- const VkLayerInstanceDispatchTable *disp;
- VkPhysicalDevice unwrapped_phys_dev = loader_unwrap_physical_device(physicalDevice);
- disp = loader_get_instance_layer_dispatch(physicalDevice);
- return disp->GetDisplayModeProperties2KHR(unwrapped_phys_dev, display, pPropertyCount, pProperties);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_GetDisplayModeProperties2KHR(VkPhysicalDevice physicalDevice, VkDisplayKHR display,
- uint32_t *pPropertyCount,
- VkDisplayModeProperties2KHR *pProperties) {
- struct loader_physical_device_term *phys_dev_term = (struct loader_physical_device_term *)physicalDevice;
- struct loader_icd_term *icd_term = phys_dev_term->this_icd_term;
-
- // If the function is available in the driver, just call into it
- if (icd_term->dispatch.GetDisplayModeProperties2KHR != NULL) {
- return icd_term->dispatch.GetDisplayModeProperties2KHR(phys_dev_term->phys_dev, display, pPropertyCount, pProperties);
- }
-
- // We have to emulate the function.
- loader_log(icd_term->this_instance, VK_DEBUG_REPORT_INFORMATION_BIT_EXT, 0,
- "vkGetDisplayModeProperties2KHR: Emulating call in ICD \"%s\"", icd_term->scanned_icd->lib_name);
-
- // If the icd doesn't support VK_KHR_display, then no properties are available
- if (icd_term->dispatch.GetDisplayModePropertiesKHR == NULL) {
- *pPropertyCount = 0;
- return VK_SUCCESS;
- }
-
- // If we aren't writing to pProperties, then emulation is straightforward
- if (pProperties == NULL || *pPropertyCount == 0) {
- return icd_term->dispatch.GetDisplayModePropertiesKHR(phys_dev_term->phys_dev, display, pPropertyCount, NULL);
- }
-
- // If we do have to write to pProperties, then we need to write to a temporary array of VkDisplayModePropertiesKHR and copy it
- VkDisplayModePropertiesKHR *properties = loader_stack_alloc(*pPropertyCount * sizeof(VkDisplayModePropertiesKHR));
- if (properties == NULL) {
- return VK_ERROR_OUT_OF_HOST_MEMORY;
- }
- VkResult res = icd_term->dispatch.GetDisplayModePropertiesKHR(phys_dev_term->phys_dev, display, pPropertyCount, properties);
- if (res < 0) {
- return res;
- }
- for (uint32_t i = 0; i < *pPropertyCount; ++i) {
- memcpy(&pProperties[i].displayModeProperties, &properties[i], sizeof(VkDisplayModePropertiesKHR));
- }
- return res;
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkGetDisplayPlaneCapabilities2KHR(VkPhysicalDevice physicalDevice,
- const VkDisplayPlaneInfo2KHR *pDisplayPlaneInfo,
- VkDisplayPlaneCapabilities2KHR *pCapabilities) {
- const VkLayerInstanceDispatchTable *disp;
- VkPhysicalDevice unwrapped_phys_dev = loader_unwrap_physical_device(physicalDevice);
- disp = loader_get_instance_layer_dispatch(physicalDevice);
- return disp->GetDisplayPlaneCapabilities2KHR(unwrapped_phys_dev, pDisplayPlaneInfo, pCapabilities);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_GetDisplayPlaneCapabilities2KHR(VkPhysicalDevice physicalDevice,
- const VkDisplayPlaneInfo2KHR *pDisplayPlaneInfo,
- VkDisplayPlaneCapabilities2KHR *pCapabilities) {
- struct loader_physical_device_term *phys_dev_term = (struct loader_physical_device_term *)physicalDevice;
- struct loader_icd_term *icd_term = phys_dev_term->this_icd_term;
-
- // If the function is abailable in the driver, just call into it
- if (icd_term->dispatch.GetDisplayPlaneCapabilities2KHR != NULL) {
- return icd_term->dispatch.GetDisplayPlaneCapabilities2KHR(phys_dev_term->phys_dev, pDisplayPlaneInfo, pCapabilities);
- }
-
- // We have to emulate the function.
- loader_log(icd_term->this_instance, VK_DEBUG_REPORT_INFORMATION_BIT_EXT, 0,
- "vkGetDisplayPlaneCapabilities2KHR: Emulating call in ICD \"%s\"", icd_term->scanned_icd->lib_name);
-
- // Just call into the old version of the function.
- // If the icd doesn't support VK_KHR_display, there are zero planes and this call is invalid (and will crash)
- return icd_term->dispatch.GetDisplayPlaneCapabilitiesKHR(phys_dev_term->phys_dev, pDisplayPlaneInfo->mode,
- pDisplayPlaneInfo->planeIndex, &pCapabilities->capabilities);
-}
-
-#ifdef VK_USE_PLATFORM_FUCHSIA
-
-// This is the trampoline entrypoint for CreateImagePipeSurfaceFUCHSIA
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkCreateImagePipeSurfaceFUCHSIA(VkInstance instance,
- const VkImagePipeSurfaceCreateInfoFUCHSIA *pCreateInfo,
- const VkAllocationCallbacks *pAllocator,
- VkSurfaceKHR *pSurface) {
- const VkLayerInstanceDispatchTable *disp;
- disp = loader_get_instance_layer_dispatch(instance);
- VkResult res;
-
- res = disp->CreateImagePipeSurfaceFUCHSIA(instance, pCreateInfo, pAllocator, pSurface);
- return res;
-}
-
-// This is the instance chain terminator function for CreateImagePipeSurfaceFUCHSIA
-VKAPI_ATTR VkResult VKAPI_CALL terminator_CreateImagePipeSurfaceFUCHSIA(VkInstance instance,
- const VkImagePipeSurfaceCreateInfoFUCHSIA *pCreateInfo,
- const VkAllocationCallbacks *pAllocator,
- VkSurfaceKHR *pSurface) {
- VkResult vkRes = VK_SUCCESS;
- VkIcdSurface *pIcdSurface = NULL;
- uint32_t i = 0;
-
- // Initialize pSurface to NULL just to be safe.
- *pSurface = VK_NULL_HANDLE;
- // First, check to ensure the appropriate extension was enabled:
- struct loader_instance *ptr_instance = loader_get_instance(instance);
- if (!ptr_instance->wsi_imagepipe_surface_enabled) {
- loader_log(ptr_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "VK_FUCHSIA_imagepipe_surface extension not enabled. "
- "vkCreateImagePipeSurfaceFUCHSIA not executed!\n");
- vkRes = VK_ERROR_EXTENSION_NOT_PRESENT;
- goto out;
- }
-
- // Next, if so, proceed with the implementation of this function:
- pIcdSurface =
- AllocateIcdSurfaceStruct(ptr_instance, sizeof(pIcdSurface->imagepipe_surf.base), sizeof(pIcdSurface->imagepipe_surf));
- if (pIcdSurface == NULL) {
- vkRes = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto out;
- }
-
- pIcdSurface->imagepipe_surf.base.platform = VK_ICD_WSI_PLATFORM_FUCHSIA;
-
- // Loop through each ICD and determine if they need to create a surface
- for (struct loader_icd_term *icd_term = ptr_instance->icd_terms; icd_term != NULL; icd_term = icd_term->next, i++) {
- if (icd_term->scanned_icd->interface_version >= ICD_VER_SUPPORTS_ICD_SURFACE_KHR) {
- if (NULL != icd_term->dispatch.CreateImagePipeSurfaceFUCHSIA) {
- vkRes = icd_term->dispatch.CreateImagePipeSurfaceFUCHSIA(icd_term->instance, pCreateInfo, pAllocator,
- &pIcdSurface->real_icd_surfaces[i]);
- if (VK_SUCCESS != vkRes) {
- goto out;
- }
- }
- }
- }
-
- *pSurface = (VkSurfaceKHR)(pIcdSurface);
-
-out:
-
- if (VK_SUCCESS != vkRes && NULL != pIcdSurface) {
- if (NULL != pIcdSurface->real_icd_surfaces) {
- i = 0;
- for (struct loader_icd_term *icd_term = ptr_instance->icd_terms; icd_term != NULL; icd_term = icd_term->next, i++) {
- if ((VkSurfaceKHR)NULL != pIcdSurface->real_icd_surfaces[i] && NULL != icd_term->dispatch.DestroySurfaceKHR) {
- icd_term->dispatch.DestroySurfaceKHR(icd_term->instance, pIcdSurface->real_icd_surfaces[i], pAllocator);
- }
- }
- loader_instance_heap_free(ptr_instance, pIcdSurface->real_icd_surfaces);
- }
- loader_instance_heap_free(ptr_instance, pIcdSurface);
- }
-
- return vkRes;
-}
-#endif // VK_USE_PLATFORM_FUCHSIA
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL
-vkGetPhysicalDeviceSurfaceCapabilities2KHR(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceSurfaceInfo2KHR *pSurfaceInfo,
- VkSurfaceCapabilities2KHR *pSurfaceCapabilities) {
- const VkLayerInstanceDispatchTable *disp;
- VkPhysicalDevice unwrapped_phys_dev = loader_unwrap_physical_device(physicalDevice);
- disp = loader_get_instance_layer_dispatch(physicalDevice);
- return disp->GetPhysicalDeviceSurfaceCapabilities2KHR(unwrapped_phys_dev, pSurfaceInfo, pSurfaceCapabilities);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_GetPhysicalDeviceSurfaceCapabilities2KHR(
- VkPhysicalDevice physicalDevice, const VkPhysicalDeviceSurfaceInfo2KHR *pSurfaceInfo,
- VkSurfaceCapabilities2KHR *pSurfaceCapabilities) {
- struct loader_physical_device_term *phys_dev_term = (struct loader_physical_device_term *)physicalDevice;
- struct loader_icd_term *icd_term = phys_dev_term->this_icd_term;
- struct loader_instance *ptr_instance = (struct loader_instance *)icd_term->this_instance;
-
- if (!ptr_instance->wsi_surface_enabled) {
- loader_log(ptr_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "VK_KHR_surface extension not enabled. vkGetPhysicalDeviceSurfaceCapabilities2KHR not executed!\n");
- return VK_SUCCESS;
- }
-
- VkIcdSurface *icd_surface = (VkIcdSurface *)(pSurfaceInfo->surface);
- uint8_t icd_index = phys_dev_term->icd_index;
-
- if (icd_term->dispatch.GetPhysicalDeviceSurfaceCapabilities2KHR != NULL) {
- VkBaseOutStructure *pNext = (VkBaseOutStructure *)pSurfaceCapabilities->pNext;
- while (pNext != NULL) {
- if ((int)pNext->sType == VK_STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR) {
- // Not all ICDs may be supporting VK_KHR_surface_protected_capabilities
- // Initialize VkSurfaceProtectedCapabilitiesKHR.supportsProtected to false and
- // if an ICD supports protected surfaces, it will reset it to true accordingly.
- ((VkSurfaceProtectedCapabilitiesKHR *)pNext)->supportsProtected = VK_FALSE;
- }
- pNext = (VkBaseOutStructure *)pNext->pNext;
- }
-
- // Pass the call to the driver, possibly unwrapping the ICD surface
- if (icd_surface->real_icd_surfaces != NULL && (void *)icd_surface->real_icd_surfaces[icd_index] != NULL) {
- VkPhysicalDeviceSurfaceInfo2KHR info_copy = *pSurfaceInfo;
- info_copy.surface = icd_surface->real_icd_surfaces[icd_index];
- return icd_term->dispatch.GetPhysicalDeviceSurfaceCapabilities2KHR(phys_dev_term->phys_dev, &info_copy,
- pSurfaceCapabilities);
- } else {
- return icd_term->dispatch.GetPhysicalDeviceSurfaceCapabilities2KHR(phys_dev_term->phys_dev, pSurfaceInfo,
- pSurfaceCapabilities);
- }
- } else {
- // Emulate the call
- loader_log(icd_term->this_instance, VK_DEBUG_REPORT_INFORMATION_BIT_EXT, 0,
- "vkGetPhysicalDeviceSurfaceCapabilities2KHR: Emulating call in ICD \"%s\" using "
- "vkGetPhysicalDeviceSurfaceCapabilitiesKHR",
- icd_term->scanned_icd->lib_name);
-
- if (pSurfaceInfo->pNext != NULL) {
- loader_log(icd_term->this_instance, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "vkGetPhysicalDeviceSurfaceCapabilities2KHR: Emulation found unrecognized structure type in "
- "pSurfaceInfo->pNext - this struct will be ignored");
- }
-
- // Write to the VkSurfaceCapabilities2KHR struct
- VkSurfaceKHR surface = pSurfaceInfo->surface;
- if (icd_surface->real_icd_surfaces != NULL && (void *)icd_surface->real_icd_surfaces[icd_index] != NULL) {
- surface = icd_surface->real_icd_surfaces[icd_index];
- }
- VkResult res = icd_term->dispatch.GetPhysicalDeviceSurfaceCapabilitiesKHR(phys_dev_term->phys_dev, surface,
- &pSurfaceCapabilities->surfaceCapabilities);
-
- if (pSurfaceCapabilities->pNext != NULL) {
- loader_log(icd_term->this_instance, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "vkGetPhysicalDeviceSurfaceCapabilities2KHR: Emulation found unrecognized structure type in "
- "pSurfaceCapabilities->pNext - this struct will be ignored");
- }
- return res;
- }
-}
-
-LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL
-vkGetPhysicalDeviceSurfaceFormats2KHR(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceSurfaceInfo2KHR *pSurfaceInfo,
- uint32_t *pSurfaceFormatCount, VkSurfaceFormat2KHR *pSurfaceFormats) {
- const VkLayerInstanceDispatchTable *disp;
- VkPhysicalDevice unwrapped_phys_dev = loader_unwrap_physical_device(physicalDevice);
- disp = loader_get_instance_layer_dispatch(physicalDevice);
- return disp->GetPhysicalDeviceSurfaceFormats2KHR(unwrapped_phys_dev, pSurfaceInfo, pSurfaceFormatCount, pSurfaceFormats);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_GetPhysicalDeviceSurfaceFormats2KHR(VkPhysicalDevice physicalDevice,
- const VkPhysicalDeviceSurfaceInfo2KHR *pSurfaceInfo,
- uint32_t *pSurfaceFormatCount,
- VkSurfaceFormat2KHR *pSurfaceFormats) {
- struct loader_physical_device_term *phys_dev_term = (struct loader_physical_device_term *)physicalDevice;
- struct loader_icd_term *icd_term = phys_dev_term->this_icd_term;
- struct loader_instance *ptr_instance = (struct loader_instance *)icd_term->this_instance;
-
- if (!ptr_instance->wsi_surface_enabled) {
- loader_log(ptr_instance, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
- "VK_KHR_surface extension not enabled. vkGetPhysicalDeviceSurfaceFormats2KHR not executed!\n");
- return VK_SUCCESS;
- }
-
- VkIcdSurface *icd_surface = (VkIcdSurface *)(pSurfaceInfo->surface);
- uint8_t icd_index = phys_dev_term->icd_index;
-
- if (icd_term->dispatch.GetPhysicalDeviceSurfaceFormats2KHR != NULL) {
- // Pass the call to the driver, possibly unwrapping the ICD surface
- if (icd_surface->real_icd_surfaces != NULL && (void *)icd_surface->real_icd_surfaces[icd_index] != NULL) {
- VkPhysicalDeviceSurfaceInfo2KHR info_copy = *pSurfaceInfo;
- info_copy.surface = icd_surface->real_icd_surfaces[icd_index];
- return icd_term->dispatch.GetPhysicalDeviceSurfaceFormats2KHR(phys_dev_term->phys_dev, &info_copy, pSurfaceFormatCount,
- pSurfaceFormats);
- } else {
- return icd_term->dispatch.GetPhysicalDeviceSurfaceFormats2KHR(phys_dev_term->phys_dev, pSurfaceInfo,
- pSurfaceFormatCount, pSurfaceFormats);
- }
- } else {
- // Emulate the call
- loader_log(icd_term->this_instance, VK_DEBUG_REPORT_INFORMATION_BIT_EXT, 0,
- "vkGetPhysicalDeviceSurfaceFormats2KHR: Emulating call in ICD \"%s\" using vkGetPhysicalDeviceSurfaceFormatsKHR",
- icd_term->scanned_icd->lib_name);
-
- if (pSurfaceInfo->pNext != NULL) {
- loader_log(icd_term->this_instance, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "vkGetPhysicalDeviceSurfaceFormats2KHR: Emulation found unrecognized structure type in pSurfaceInfo->pNext "
- "- this struct will be ignored");
- }
-
- VkSurfaceKHR surface = pSurfaceInfo->surface;
- if (icd_surface->real_icd_surfaces != NULL && (void *)icd_surface->real_icd_surfaces[icd_index] != NULL) {
- surface = icd_surface->real_icd_surfaces[icd_index];
- }
-
- if (*pSurfaceFormatCount == 0 || pSurfaceFormats == NULL) {
- // Write to pSurfaceFormatCount
- return icd_term->dispatch.GetPhysicalDeviceSurfaceFormatsKHR(phys_dev_term->phys_dev, surface, pSurfaceFormatCount,
- NULL);
- } else {
- // Allocate a temporary array for the output of the old function
- VkSurfaceFormatKHR *formats = loader_stack_alloc(*pSurfaceFormatCount * sizeof(VkSurfaceFormatKHR));
- if (formats == NULL) {
- return VK_ERROR_OUT_OF_HOST_MEMORY;
- }
-
- VkResult res = icd_term->dispatch.GetPhysicalDeviceSurfaceFormatsKHR(phys_dev_term->phys_dev, surface,
- pSurfaceFormatCount, formats);
- for (uint32_t i = 0; i < *pSurfaceFormatCount; ++i) {
- pSurfaceFormats[i].surfaceFormat = formats[i];
- if (pSurfaceFormats[i].pNext != NULL) {
- loader_log(icd_term->this_instance, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
- "vkGetPhysicalDeviceSurfaceFormats2KHR: Emulation found unrecognized structure type in "
- "pSurfaceFormats[%d].pNext - this struct will be ignored",
- i);
- }
- }
- return res;
- }
- }
-}
-
-bool wsi_swapchain_instance_gpa(struct loader_instance *ptr_instance, const char *name, void **addr) {
- *addr = NULL;
-
- // Functions for the VK_KHR_surface extension:
- if (!strcmp("vkDestroySurfaceKHR", name)) {
- *addr = ptr_instance->wsi_surface_enabled ? (void *)vkDestroySurfaceKHR : NULL;
- return true;
- }
- if (!strcmp("vkGetPhysicalDeviceSurfaceSupportKHR", name)) {
- *addr = ptr_instance->wsi_surface_enabled ? (void *)vkGetPhysicalDeviceSurfaceSupportKHR : NULL;
- return true;
- }
- if (!strcmp("vkGetPhysicalDeviceSurfaceCapabilitiesKHR", name)) {
- *addr = ptr_instance->wsi_surface_enabled ? (void *)vkGetPhysicalDeviceSurfaceCapabilitiesKHR : NULL;
- return true;
- }
- if (!strcmp("vkGetPhysicalDeviceSurfaceFormatsKHR", name)) {
- *addr = ptr_instance->wsi_surface_enabled ? (void *)vkGetPhysicalDeviceSurfaceFormatsKHR : NULL;
- return true;
- }
- if (!strcmp("vkGetPhysicalDeviceSurfacePresentModesKHR", name)) {
- *addr = ptr_instance->wsi_surface_enabled ? (void *)vkGetPhysicalDeviceSurfacePresentModesKHR : NULL;
- return true;
- }
-
- if (!strcmp("vkGetDeviceGroupPresentCapabilitiesKHR", name)) {
- *addr = ptr_instance->wsi_surface_enabled ? (void *)vkGetDeviceGroupPresentCapabilitiesKHR : NULL;
- return true;
- }
-
- if (!strcmp("vkGetDeviceGroupSurfacePresentModesKHR", name)) {
- *addr = ptr_instance->wsi_surface_enabled ? (void *)vkGetDeviceGroupSurfacePresentModesKHR : NULL;
- return true;
- }
-
- if (!strcmp("vkGetPhysicalDevicePresentRectanglesKHR", name)) {
- *addr = ptr_instance->wsi_surface_enabled ? (void *)vkGetPhysicalDevicePresentRectanglesKHR : NULL;
- return true;
- }
-
- // Functions for VK_KHR_get_surface_capabilities2 extension:
- if (!strcmp("vkGetPhysicalDeviceSurfaceCapabilities2KHR", name)) {
- *addr = ptr_instance->wsi_surface_enabled ? (void *)vkGetPhysicalDeviceSurfaceCapabilities2KHR : NULL;
- return true;
- }
-
- if (!strcmp("vkGetPhysicalDeviceSurfaceFormats2KHR", name)) {
- *addr = ptr_instance->wsi_surface_enabled ? (void *)vkGetPhysicalDeviceSurfaceFormats2KHR : NULL;
- return true;
- }
-
- // Functions for the VK_KHR_swapchain extension:
-
- // Note: This is a device extension, and its functions are statically
- // exported from the loader. Per Khronos decisions, the loader's GIPA
- // function will return the trampoline function for such device-extension
- // functions, regardless of whether the extension has been enabled.
- if (!strcmp("vkCreateSwapchainKHR", name)) {
- *addr = (void *)vkCreateSwapchainKHR;
- return true;
- }
- if (!strcmp("vkDestroySwapchainKHR", name)) {
- *addr = (void *)vkDestroySwapchainKHR;
- return true;
- }
- if (!strcmp("vkGetSwapchainImagesKHR", name)) {
- *addr = (void *)vkGetSwapchainImagesKHR;
- return true;
- }
- if (!strcmp("vkAcquireNextImageKHR", name)) {
- *addr = (void *)vkAcquireNextImageKHR;
- return true;
- }
- if (!strcmp("vkQueuePresentKHR", name)) {
- *addr = (void *)vkQueuePresentKHR;
- return true;
- }
- if (!strcmp("vkAcquireNextImage2KHR", name)) {
- *addr = (void *)vkAcquireNextImage2KHR;
- return true;
- }
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
-
- // Functions for the VK_KHR_win32_surface extension:
- if (!strcmp("vkCreateWin32SurfaceKHR", name)) {
- *addr = ptr_instance->wsi_win32_surface_enabled ? (void *)vkCreateWin32SurfaceKHR : NULL;
- return true;
- }
- if (!strcmp("vkGetPhysicalDeviceWin32PresentationSupportKHR", name)) {
- *addr = ptr_instance->wsi_win32_surface_enabled ? (void *)vkGetPhysicalDeviceWin32PresentationSupportKHR : NULL;
- return true;
- }
-#endif // VK_USE_PLATFORM_WIN32_KHR
-#ifdef VK_USE_PLATFORM_WAYLAND_KHR
-
- // Functions for the VK_KHR_wayland_surface extension:
- if (!strcmp("vkCreateWaylandSurfaceKHR", name)) {
- *addr = ptr_instance->wsi_wayland_surface_enabled ? (void *)vkCreateWaylandSurfaceKHR : NULL;
- return true;
- }
- if (!strcmp("vkGetPhysicalDeviceWaylandPresentationSupportKHR", name)) {
- *addr = ptr_instance->wsi_wayland_surface_enabled ? (void *)vkGetPhysicalDeviceWaylandPresentationSupportKHR : NULL;
- return true;
- }
-#endif // VK_USE_PLATFORM_WAYLAND_KHR
-#ifdef VK_USE_PLATFORM_XCB_KHR
-
- // Functions for the VK_KHR_xcb_surface extension:
- if (!strcmp("vkCreateXcbSurfaceKHR", name)) {
- *addr = ptr_instance->wsi_xcb_surface_enabled ? (void *)vkCreateXcbSurfaceKHR : NULL;
- return true;
- }
- if (!strcmp("vkGetPhysicalDeviceXcbPresentationSupportKHR", name)) {
- *addr = ptr_instance->wsi_xcb_surface_enabled ? (void *)vkGetPhysicalDeviceXcbPresentationSupportKHR : NULL;
- return true;
- }
-#endif // VK_USE_PLATFORM_XCB_KHR
-#ifdef VK_USE_PLATFORM_XLIB_KHR
-
- // Functions for the VK_KHR_xlib_surface extension:
- if (!strcmp("vkCreateXlibSurfaceKHR", name)) {
- *addr = ptr_instance->wsi_xlib_surface_enabled ? (void *)vkCreateXlibSurfaceKHR : NULL;
- return true;
- }
- if (!strcmp("vkGetPhysicalDeviceXlibPresentationSupportKHR", name)) {
- *addr = ptr_instance->wsi_xlib_surface_enabled ? (void *)vkGetPhysicalDeviceXlibPresentationSupportKHR : NULL;
- return true;
- }
-#endif // VK_USE_PLATFORM_XLIB_KHR
-#ifdef VK_USE_PLATFORM_DIRECTFB_EXT
-
- // Functions for the VK_EXT_directfb_surface extension:
- if (!strcmp("vkCreateDirectFBSurfaceEXT", name)) {
- *addr = ptr_instance->wsi_directfb_surface_enabled ? (void *)vkCreateDirectFBSurfaceEXT : NULL;
- return true;
- }
- if (!strcmp("vkGetPhysicalDeviceDirectFBPresentationSupportEXT", name)) {
- *addr = ptr_instance->wsi_directfb_surface_enabled ? (void *)vkGetPhysicalDeviceDirectFBPresentationSupportEXT : NULL;
- return true;
- }
-#endif // VK_USE_PLATFORM_DIRECTFB_EXT
-#ifdef VK_USE_PLATFORM_ANDROID_KHR
-
- // Functions for the VK_KHR_android_surface extension:
- if (!strcmp("vkCreateAndroidSurfaceKHR", name)) {
- *addr = ptr_instance->wsi_android_surface_enabled ? (void *)vkCreateAndroidSurfaceKHR : NULL;
- return true;
- }
-#endif // VK_USE_PLATFORM_ANDROID_KHR
-
-#ifdef VK_USE_PLATFORM_MACOS_MVK
-
- // Functions for the VK_MVK_macos_surface extension:
- if (!strcmp("vkCreateMacOSSurfaceMVK", name)) {
- *addr = ptr_instance->wsi_macos_surface_enabled ? (void *)vkCreateMacOSSurfaceMVK : NULL;
- return true;
- }
-#endif // VK_USE_PLATFORM_MACOS_MVK
-#ifdef VK_USE_PLATFORM_IOS_MVK
-
- // Functions for the VK_MVK_ios_surface extension:
- if (!strcmp("vkCreateIOSSurfaceMVK", name)) {
- *addr = ptr_instance->wsi_ios_surface_enabled ? (void *)vkCreateIOSSurfaceMVK : NULL;
- return true;
- }
-#endif // VK_USE_PLATFORM_IOS_MVK
-#ifdef VK_USE_PLATFORM_GGP
-
- // Functions for the VK_GGP_stream_descriptor_surface extension:
- if (!strcmp("vkCreateStreamDescriptorSurfaceGGP", name)) {
- *addr = ptr_instance->wsi_ggp_surface_enabled ? (void *)vkCreateStreamDescriptorSurfaceGGP : NULL;
- return true;
- }
-#endif // VK_USE_PLATFORM_GGP
-#ifdef VK_USE_PLATFORM_FUCHSIA
-
- // Functions for the VK_FUCHSIA_imagepipe_surface extension:
- if (!strcmp("vkCreateImagePipeSurfaceFUCHSIA", name)) {
- *addr = ptr_instance->wsi_imagepipe_surface_enabled ? (void *)vkCreateImagePipeSurfaceFUCHSIA : NULL;
- return true;
- }
-
-#endif // VK_USE_PLATFORM_FUCHSIA
-
- // Functions for the VK_EXT_headless_surface extension:
- if (!strcmp("vkCreateHeadlessSurfaceEXT", name)) {
- *addr = ptr_instance->wsi_headless_surface_enabled ? (void *)vkCreateHeadlessSurfaceEXT : NULL;
- return true;
- }
-
-#if defined(VK_USE_PLATFORM_METAL_EXT)
- // Functions for the VK_MVK_macos_surface extension:
- if (!strcmp("vkCreateMetalSurfaceEXT", name)) {
- *addr = ptr_instance->wsi_metal_surface_enabled ? (void *)vkCreateMetalSurfaceEXT : NULL;
- return true;
- }
-#endif // VK_USE_PLATFORM_METAL_EXT
-
- // Functions for VK_KHR_display extension:
- if (!strcmp("vkGetPhysicalDeviceDisplayPropertiesKHR", name)) {
- *addr = ptr_instance->wsi_display_enabled ? (void *)vkGetPhysicalDeviceDisplayPropertiesKHR : NULL;
- return true;
- }
- if (!strcmp("vkGetPhysicalDeviceDisplayPlanePropertiesKHR", name)) {
- *addr = ptr_instance->wsi_display_enabled ? (void *)vkGetPhysicalDeviceDisplayPlanePropertiesKHR : NULL;
- return true;
- }
- if (!strcmp("vkGetDisplayPlaneSupportedDisplaysKHR", name)) {
- *addr = ptr_instance->wsi_display_enabled ? (void *)vkGetDisplayPlaneSupportedDisplaysKHR : NULL;
- return true;
- }
- if (!strcmp("vkGetDisplayModePropertiesKHR", name)) {
- *addr = ptr_instance->wsi_display_enabled ? (void *)vkGetDisplayModePropertiesKHR : NULL;
- return true;
- }
- if (!strcmp("vkCreateDisplayModeKHR", name)) {
- *addr = ptr_instance->wsi_display_enabled ? (void *)vkCreateDisplayModeKHR : NULL;
- return true;
- }
- if (!strcmp("vkGetDisplayPlaneCapabilitiesKHR", name)) {
- *addr = ptr_instance->wsi_display_enabled ? (void *)vkGetDisplayPlaneCapabilitiesKHR : NULL;
- return true;
- }
- if (!strcmp("vkCreateDisplayPlaneSurfaceKHR", name)) {
- *addr = ptr_instance->wsi_display_enabled ? (void *)vkCreateDisplayPlaneSurfaceKHR : NULL;
- return true;
- }
-
- // Functions for KHR_display_swapchain extension:
- if (!strcmp("vkCreateSharedSwapchainsKHR", name)) {
- *addr = (void *)vkCreateSharedSwapchainsKHR;
- return true;
- }
-
- // Functions for KHR_get_display_properties2
- if (!strcmp("vkGetPhysicalDeviceDisplayProperties2KHR", name)) {
- *addr = ptr_instance->wsi_display_props2_enabled ? (void *)vkGetPhysicalDeviceDisplayProperties2KHR : NULL;
- return true;
- }
- if (!strcmp("vkGetPhysicalDeviceDisplayPlaneProperties2KHR", name)) {
- *addr = ptr_instance->wsi_display_props2_enabled ? (void *)vkGetPhysicalDeviceDisplayPlaneProperties2KHR : NULL;
- return true;
- }
- if (!strcmp("vkGetDisplayModeProperties2KHR", name)) {
- *addr = ptr_instance->wsi_display_props2_enabled ? (void *)vkGetDisplayModeProperties2KHR : NULL;
- return true;
- }
- if (!strcmp("vkGetDisplayPlaneCapabilities2KHR", name)) {
- *addr = ptr_instance->wsi_display_props2_enabled ? (void *)vkGetDisplayPlaneCapabilities2KHR : NULL;
- return true;
- }
-
- return false;
-}
diff --git a/thirdparty/vulkan/loader/wsi.h b/thirdparty/vulkan/loader/wsi.h
deleted file mode 100644
index c9f4654914..0000000000
--- a/thirdparty/vulkan/loader/wsi.h
+++ /dev/null
@@ -1,219 +0,0 @@
-/*
- * Copyright (c) 2015-2016 The Khronos Group Inc.
- * Copyright (c) 2015-2016 Valve Corporation
- * Copyright (c) 2015-2016 LunarG, Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * Author: Ian Elliott <ian@lunarg.com>
- *
- */
-
-#ifndef WSI_H
-#define WSI_H
-
-#include "vk_loader_platform.h"
-#include "loader.h"
-
-typedef struct {
- union {
-#ifdef VK_USE_PLATFORM_WAYLAND_KHR
- VkIcdSurfaceWayland wayland_surf;
-#endif // VK_USE_PLATFORM_WAYLAND_KHR
-#ifdef VK_USE_PLATFORM_WIN32_KHR
- VkIcdSurfaceWin32 win_surf;
-#endif // VK_USE_PLATFORM_WIN32_KHR
-#ifdef VK_USE_PLATFORM_XCB_KHR
- VkIcdSurfaceXcb xcb_surf;
-#endif // VK_USE_PLATFORM_XCB_KHR
-#ifdef VK_USE_PLATFORM_XLIB_KHR
- VkIcdSurfaceXlib xlib_surf;
-#endif // VK_USE_PLATFORM_XLIB_KHR
-#ifdef VK_USE_PLATFORM_DIRECTFB_EXT
- VkIcdSurfaceDirectFB directfb_surf;
-#endif // VK_USE_PLATFORM_DIRECTFB_EXT
-#ifdef VK_USE_PLATFORM_MACOS_MVK
- VkIcdSurfaceMacOS macos_surf;
-#endif // VK_USE_PLATFORM_MACOS_MVK
-#ifdef VK_USE_PLATFORM_GGP
- VkIcdSurfaceGgp ggp_surf;
-#endif // VK_USE_PLATFORM_GGP
-#ifdef VK_USE_PLATFORM_FUCHSIA
- VkIcdSurfaceImagePipe imagepipe_surf;
-#endif // VK_USE_PLATFORM_FUCHSIA
-#ifdef VK_USE_PLATFORM_METAL_EXT
- VkIcdSurfaceMetal metal_surf;
-#endif // VK_USE_PLATFORM_METAL_EXT
- VkIcdSurfaceDisplay display_surf;
- VkIcdSurfaceHeadless headless_surf;
- };
- uint32_t base_size; // Size of VkIcdSurfaceBase
- uint32_t platform_size; // Size of corresponding VkIcdSurfaceXXX
- uint32_t non_platform_offset; // Start offset to base_size
- uint32_t entire_size; // Size of entire VkIcdSurface
- VkSurfaceKHR *real_icd_surfaces;
-} VkIcdSurface;
-
-bool wsi_swapchain_instance_gpa(struct loader_instance *ptr_instance, const char *name, void **addr);
-
-void wsi_create_instance(struct loader_instance *ptr_instance, const VkInstanceCreateInfo *pCreateInfo);
-bool wsi_unsupported_instance_extension(const VkExtensionProperties *ext_prop);
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_CreateHeadlessSurfaceEXT(VkInstance instance,
- const VkHeadlessSurfaceCreateInfoEXT *pCreateInfo,
- const VkAllocationCallbacks *pAllocator, VkSurfaceKHR *pSurface);
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_CreateSwapchainKHR(VkDevice device, const VkSwapchainCreateInfoKHR *pCreateInfo,
- const VkAllocationCallbacks *pAllocator, VkSwapchainKHR *pSwapchain);
-
-VKAPI_ATTR void VKAPI_CALL terminator_DestroySurfaceKHR(VkInstance instance, VkSurfaceKHR surface,
- const VkAllocationCallbacks *pAllocator);
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_GetPhysicalDeviceSurfaceSupportKHR(VkPhysicalDevice physicalDevice,
- uint32_t queueFamilyIndex, VkSurfaceKHR surface,
- VkBool32 *pSupported);
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_GetPhysicalDeviceSurfaceCapabilitiesKHR(VkPhysicalDevice physicalDevice,
- VkSurfaceKHR surface,
- VkSurfaceCapabilitiesKHR *pSurfaceCapabilities);
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_GetPhysicalDeviceSurfaceFormatsKHR(VkPhysicalDevice physicalDevice, VkSurfaceKHR surface,
- uint32_t *pSurfaceFormatCount,
- VkSurfaceFormatKHR *pSurfaceFormats);
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_GetPhysicalDeviceSurfacePresentModesKHR(VkPhysicalDevice physicalDevice,
- VkSurfaceKHR surface, uint32_t *pPresentModeCount,
- VkPresentModeKHR *pPresentModes);
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_GetDeviceGroupSurfacePresentModesKHR(
- VkDevice device,
- VkSurfaceKHR surface,
- VkDeviceGroupPresentModeFlagsKHR* pModes);
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
-VKAPI_ATTR VkResult VKAPI_CALL terminator_CreateWin32SurfaceKHR(VkInstance instance, const VkWin32SurfaceCreateInfoKHR *pCreateInfo,
- const VkAllocationCallbacks *pAllocator, VkSurfaceKHR *pSurface);
-VKAPI_ATTR VkBool32 VKAPI_CALL terminator_GetPhysicalDeviceWin32PresentationSupportKHR(VkPhysicalDevice physicalDevice,
- uint32_t queueFamilyIndex);
-#endif
-#ifdef VK_USE_PLATFORM_WAYLAND_KHR
-VKAPI_ATTR VkResult VKAPI_CALL terminator_CreateWaylandSurfaceKHR(VkInstance instance,
- const VkWaylandSurfaceCreateInfoKHR *pCreateInfo,
- const VkAllocationCallbacks *pAllocator, VkSurfaceKHR *pSurface);
-VKAPI_ATTR VkBool32 VKAPI_CALL terminator_GetPhysicalDeviceWaylandPresentationSupportKHR(VkPhysicalDevice physicalDevice,
- uint32_t queueFamilyIndex,
- struct wl_display *display);
-#endif
-#ifdef VK_USE_PLATFORM_XCB_KHR
-VKAPI_ATTR VkResult VKAPI_CALL terminator_CreateXcbSurfaceKHR(VkInstance instance, const VkXcbSurfaceCreateInfoKHR *pCreateInfo,
- const VkAllocationCallbacks *pAllocator, VkSurfaceKHR *pSurface);
-
-VKAPI_ATTR VkBool32 VKAPI_CALL terminator_GetPhysicalDeviceXcbPresentationSupportKHR(VkPhysicalDevice physicalDevice,
- uint32_t queueFamilyIndex,
- xcb_connection_t *connection,
- xcb_visualid_t visual_id);
-#endif
-#ifdef VK_USE_PLATFORM_XLIB_KHR
-VKAPI_ATTR VkResult VKAPI_CALL terminator_CreateXlibSurfaceKHR(VkInstance instance, const VkXlibSurfaceCreateInfoKHR *pCreateInfo,
- const VkAllocationCallbacks *pAllocator, VkSurfaceKHR *pSurface);
-VKAPI_ATTR VkBool32 VKAPI_CALL terminator_GetPhysicalDeviceXlibPresentationSupportKHR(VkPhysicalDevice physicalDevice,
- uint32_t queueFamilyIndex, Display *dpy,
- VisualID visualID);
-#endif
-#ifdef VK_USE_PLATFORM_DIRECTFB_EXT
-VKAPI_ATTR VkResult VKAPI_CALL terminator_CreateDirectFBSurfaceEXT(VkInstance instance,
- const VkDirectFBSurfaceCreateInfoEXT *pCreateInfo,
- const VkAllocationCallbacks *pAllocator, VkSurfaceKHR *pSurface);
-VKAPI_ATTR VkBool32 VKAPI_CALL terminator_GetPhysicalDeviceDirectFBPresentationSupportEXT(VkPhysicalDevice physicalDevice,
- uint32_t queueFamilyIndex,
- IDirectFB *dfb);
-#endif
-#ifdef VK_USE_PLATFORM_MACOS_MVK
-VKAPI_ATTR VkResult VKAPI_CALL terminator_CreateMacOSSurfaceMVK(VkInstance instance, const VkMacOSSurfaceCreateInfoMVK *pCreateInfo,
- const VkAllocationCallbacks *pAllocator, VkSurfaceKHR *pSurface);
-#endif
-#ifdef VK_USE_PLATFORM_IOS_MVK
-VKAPI_ATTR VkResult VKAPI_CALL terminator_CreateIOSSurfaceMVK(VkInstance instance, const VkIOSSurfaceCreateInfoMVK *pCreateInfo,
- const VkAllocationCallbacks *pAllocator, VkSurfaceKHR *pSurface);
-#endif
-#ifdef VK_USE_PLATFORM_GGP
-VKAPI_ATTR VkResult VKAPI_CALL
-terminator_CreateStreamDescriptorSurfaceGGP(VkInstance instance, const VkStreamDescriptorSurfaceCreateInfoGGP *pCreateInfo,
- const VkAllocationCallbacks *pAllocator, VkSurfaceKHR *pSurface);
-#endif
-#if defined(VK_USE_PLATFORM_METAL_EXT)
-VKAPI_ATTR VkResult VKAPI_CALL terminator_CreateMetalSurfaceEXT(VkInstance instance, const VkMetalSurfaceCreateInfoEXT *pCreateInfo,
- const VkAllocationCallbacks *pAllocator, VkSurfaceKHR *pSurface);
-#endif
-VKAPI_ATTR VkResult VKAPI_CALL terminator_GetPhysicalDeviceDisplayPropertiesKHR(VkPhysicalDevice physicalDevice,
- uint32_t *pPropertyCount,
- VkDisplayPropertiesKHR *pProperties);
-VKAPI_ATTR VkResult VKAPI_CALL terminator_GetPhysicalDeviceDisplayPlanePropertiesKHR(VkPhysicalDevice physicalDevice,
- uint32_t *pPropertyCount,
- VkDisplayPlanePropertiesKHR *pProperties);
-VKAPI_ATTR VkResult VKAPI_CALL terminator_GetDisplayPlaneSupportedDisplaysKHR(VkPhysicalDevice physicalDevice, uint32_t planeIndex,
- uint32_t *pDisplayCount, VkDisplayKHR *pDisplays);
-VKAPI_ATTR VkResult VKAPI_CALL terminator_GetDisplayModePropertiesKHR(VkPhysicalDevice physicalDevice, VkDisplayKHR display,
- uint32_t *pPropertyCount,
- VkDisplayModePropertiesKHR *pProperties);
-VKAPI_ATTR VkResult VKAPI_CALL terminator_CreateDisplayModeKHR(VkPhysicalDevice physicalDevice, VkDisplayKHR display,
- const VkDisplayModeCreateInfoKHR *pCreateInfo,
- const VkAllocationCallbacks *pAllocator, VkDisplayModeKHR *pMode);
-VKAPI_ATTR VkResult VKAPI_CALL terminator_GetDisplayPlaneCapabilitiesKHR(VkPhysicalDevice physicalDevice, VkDisplayModeKHR mode,
- uint32_t planeIndex,
- VkDisplayPlaneCapabilitiesKHR *pCapabilities);
-VKAPI_ATTR VkResult VKAPI_CALL terminator_CreateDisplayPlaneSurfaceKHR(VkInstance instance,
- const VkDisplaySurfaceCreateInfoKHR *pCreateInfo,
- const VkAllocationCallbacks *pAllocator,
- VkSurfaceKHR *pSurface);
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_CreateSharedSwapchainsKHR(VkDevice device, uint32_t swapchainCount,
- const VkSwapchainCreateInfoKHR *pCreateInfos,
- const VkAllocationCallbacks *pAllocator,
- VkSwapchainKHR *pSwapchains);
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_GetPhysicalDevicePresentRectanglesKHR(VkPhysicalDevice physicalDevice,
- VkSurfaceKHR surface,
- uint32_t* pRectCount,
- VkRect2D* pRects);
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_GetPhysicalDeviceDisplayProperties2KHR(VkPhysicalDevice physicalDevice,
- uint32_t *pPropertyCount,
- VkDisplayProperties2KHR *pProperties);
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_GetPhysicalDeviceDisplayPlaneProperties2KHR(VkPhysicalDevice physicalDevice,
- uint32_t *pPropertyCount,
- VkDisplayPlaneProperties2KHR *pProperties);
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_GetDisplayModeProperties2KHR(VkPhysicalDevice physicalDevice, VkDisplayKHR display,
- uint32_t *pPropertyCount,
- VkDisplayModeProperties2KHR *pProperties);
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_GetDisplayPlaneCapabilities2KHR(VkPhysicalDevice physicalDevice,
- const VkDisplayPlaneInfo2KHR *pDisplayPlaneInfo,
- VkDisplayPlaneCapabilities2KHR *pCapabilities);
-#ifdef VK_USE_PLATFORM_FUCHSIA
-VKAPI_ATTR VkResult VKAPI_CALL terminator_CreateImagePipeSurfaceFUCHSIA(VkInstance instance, const VkImagePipeSurfaceCreateInfoFUCHSIA *pCreateInfo,
- const VkAllocationCallbacks *pAllocator, VkSurfaceKHR *pSurface);
-#endif
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_GetPhysicalDeviceSurfaceCapabilities2KHR(
- VkPhysicalDevice physicalDevice, const VkPhysicalDeviceSurfaceInfo2KHR *pSurfaceInfo,
- VkSurfaceCapabilities2KHR *pSurfaceCapabilities);
-
-VKAPI_ATTR VkResult VKAPI_CALL terminator_GetPhysicalDeviceSurfaceFormats2KHR(VkPhysicalDevice physicalDevice,
- const VkPhysicalDeviceSurfaceInfo2KHR *pSurfaceInfo,
- uint32_t *pSurfaceFormatCount,
- VkSurfaceFormat2KHR *pSurfaceFormats);
-
-#endif // WSI_H
diff --git a/thirdparty/vulkan/patches/VKEnumStringHelper-use-volk.patch b/thirdparty/vulkan/patches/VKEnumStringHelper-use-volk.patch
new file mode 100644
index 0000000000..0fd22281d9
--- /dev/null
+++ b/thirdparty/vulkan/patches/VKEnumStringHelper-use-volk.patch
@@ -0,0 +1,17 @@
+diff --git a/thirdparty/vulkan/vk_enum_string_helper.h b/thirdparty/vulkan/vk_enum_string_helper.h
+index 4c36430341..004a861774 100755
+--- a/thirdparty/vulkan/vk_enum_string_helper.h
++++ b/thirdparty/vulkan/vk_enum_string_helper.h
+@@ -36,7 +36,11 @@
+ #endif
+
+ #include <string>
+-#include <vulkan/vulkan.h>
++#ifdef USE_VOLK
++ #include <volk.h>
++#else
++ #include <vulkan/vulkan.h>
++#endif
+
+
+ static inline const char* string_VkResult(VkResult input_value)
diff --git a/thirdparty/vulkan/patches/VMA-use-volk.patch b/thirdparty/vulkan/patches/VMA-use-volk.patch
new file mode 100644
index 0000000000..4ba84c9a60
--- /dev/null
+++ b/thirdparty/vulkan/patches/VMA-use-volk.patch
@@ -0,0 +1,17 @@
+diff --git a/thirdparty/vulkan/vk_mem_alloc.h b/thirdparty/vulkan/vk_mem_alloc.h
+index 8a42699e7f..510fa4d3ef 100644
+--- a/thirdparty/vulkan/vk_mem_alloc.h
++++ b/thirdparty/vulkan/vk_mem_alloc.h
+@@ -1771,7 +1771,11 @@ available through VmaAllocatorCreateInfo::pRecordSettings.
+ #endif
+
+ #ifndef VULKAN_H_
+- #include <vulkan/vulkan.h>
++ #ifdef USE_VOLK
++ #include <volk.h>
++ #else
++ #include <vulkan/vulkan.h>
++ #endif
+ #endif
+
+ #if VMA_RECORDING_ENABLED
diff --git a/thirdparty/vulkan/patches/Vulkan-Loader-pr475.patch b/thirdparty/vulkan/patches/Vulkan-Loader-pr475.patch
deleted file mode 100644
index 5303768f5c..0000000000
--- a/thirdparty/vulkan/patches/Vulkan-Loader-pr475.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-From e1c938170bba5879d95bf2d7b57b4d1d68557cd5 Mon Sep 17 00:00:00 2001
-From: Brecht Sanders <brecht@sanders.org>
-Date: Tue, 29 Sep 2020 18:14:55 +0200
-Subject: [PATCH] loader: Fixes build with MinGW-w64 8.0.0.
-
-See http://winlibs.com for a release of such GCC compiler
-See issue https://github.com/KhronosGroup/Vulkan-Loader/issues/474
----
- loader/loader.c | 7 +++++++
- 1 file changed, 7 insertions(+), 0 deletions(-)
-
-diff --git a/loader/loader.c b/loader/loader.c
-index 4d8865e13..509f2f420 100644
---- a/loader/loader.c
-+++ b/loader/loader.c
-@@ -71,6 +71,9 @@
- #include <devpkey.h>
- #include <winternl.h>
- #include <strsafe.h>
-+#ifdef __MINGW32__
-+#undef strcpy // fix error with redfined strcpy when building with MinGW-w64
-+#endif
- #include <dxgi1_6.h>
- #include "adapters.h"
-
-@@ -695,7 +698,11 @@ VkResult loaderGetDeviceRegistryFiles(const struct loader_instance *inst, char *
- LPCSTR value_name) {
- static const wchar_t *softwareComponentGUID = L"{5c4c3332-344d-483c-8739-259e934c9cc8}";
- static const wchar_t *displayGUID = L"{4d36e968-e325-11ce-bfc1-08002be10318}";
-+#ifdef CM_GETIDLIST_FILTER_PRESENT
- const ULONG flags = CM_GETIDLIST_FILTER_CLASS | CM_GETIDLIST_FILTER_PRESENT;
-+#else
-+ const ULONG flags = 0x300;
-+#endif
-
- wchar_t childGuid[MAX_GUID_STRING_LEN + 2]; // +2 for brackets {}
- ULONG childGuidSize = sizeof(childGuid);
diff --git a/thirdparty/vulkan/patches/Vulkan-Loader-revert-pr260.patch b/thirdparty/vulkan/patches/Vulkan-Loader-revert-pr260.patch
deleted file mode 100644
index 1267e560df..0000000000
--- a/thirdparty/vulkan/patches/Vulkan-Loader-revert-pr260.patch
+++ /dev/null
@@ -1,57 +0,0 @@
-diff --git a/thirdparty/vulkan/loader/loader.c b/thirdparty/vulkan/loader/loader.c
-index 87d08d5116..c7cdb47122 100644
---- a/thirdparty/vulkan/loader/loader.c
-+++ b/thirdparty/vulkan/loader/loader.c
-@@ -7330,7 +7330,7 @@ out:
- return result;
- }
-
--#if defined(_WIN32)
-+#if defined(_WIN32) && defined(LOADER_DYNAMIC_LIB)
- BOOL WINAPI DllMain(HINSTANCE hinst, DWORD reason, LPVOID reserved) {
- switch (reason) {
- case DLL_PROCESS_ATTACH:
-diff --git a/thirdparty/vulkan/loader/loader.h b/thirdparty/vulkan/loader/loader.h
-index 5e9495521b..56745a968d 100644
---- a/thirdparty/vulkan/loader/loader.h
-+++ b/thirdparty/vulkan/loader/loader.h
-@@ -420,6 +420,9 @@ static inline void loader_init_dispatch(void *obj, const void *data) {
- // Global variables used across files
- extern struct loader_struct loader;
- extern THREAD_LOCAL_DECL struct loader_instance *tls_instance;
-+#if defined(_WIN32) && !defined(LOADER_DYNAMIC_LIB)
-+extern LOADER_PLATFORM_THREAD_ONCE_DEFINITION(once_init);
-+#endif
- extern loader_platform_thread_mutex loader_lock;
- extern loader_platform_thread_mutex loader_json_lock;
-
-diff --git a/thirdparty/vulkan/loader/vk_loader_platform.h b/thirdparty/vulkan/loader/vk_loader_platform.h
-index 7824e35d6b..62e8e3ae09 100644
---- a/thirdparty/vulkan/loader/vk_loader_platform.h
-+++ b/thirdparty/vulkan/loader/vk_loader_platform.h
-@@ -330,9 +330,25 @@ typedef HANDLE loader_platform_thread;
- // The once init functionality is not used when building a DLL on Windows. This is because there is no way to clean up the
- // resources allocated by anything allocated by once init. This isn't a problem for static libraries, but it is for dynamic
- // ones. When building a DLL, we use DllMain() instead to allow properly cleaning up resources.
-+#if defined(LOADER_DYNAMIC_LIB)
- #define LOADER_PLATFORM_THREAD_ONCE_DECLARATION(var)
- #define LOADER_PLATFORM_THREAD_ONCE_DEFINITION(var)
- #define LOADER_PLATFORM_THREAD_ONCE(ctl, func)
-+#else
-+#define LOADER_PLATFORM_THREAD_ONCE_DECLARATION(var) INIT_ONCE var = INIT_ONCE_STATIC_INIT;
-+#define LOADER_PLATFORM_THREAD_ONCE_DEFINITION(var) INIT_ONCE var;
-+#define LOADER_PLATFORM_THREAD_ONCE(ctl, func) loader_platform_thread_once_fn(ctl, func)
-+static BOOL CALLBACK InitFuncWrapper(PINIT_ONCE InitOnce, PVOID Parameter, PVOID *Context) {
-+ void (*func)(void) = (void (*)(void))Parameter;
-+ func();
-+ return TRUE;
-+}
-+static void loader_platform_thread_once_fn(void *ctl, void (*func)(void)) {
-+ assert(func != NULL);
-+ assert(ctl != NULL);
-+ InitOnceExecuteOnce((PINIT_ONCE)ctl, InitFuncWrapper, (void *)func, NULL);
-+}
-+#endif
-
- // Thread IDs:
- typedef DWORD loader_platform_thread_id;
diff --git a/thirdparty/vulkan/vk_enum_string_helper.h b/thirdparty/vulkan/vk_enum_string_helper.h
index dccb1d0968..004a861774 100644
--- a/thirdparty/vulkan/vk_enum_string_helper.h
+++ b/thirdparty/vulkan/vk_enum_string_helper.h
@@ -4,10 +4,10 @@
/***************************************************************************
*
- * Copyright (c) 2015-2020 The Khronos Group Inc.
- * Copyright (c) 2015-2020 Valve Corporation
- * Copyright (c) 2015-2020 LunarG, Inc.
- * Copyright (c) 2015-2020 Google Inc.
+ * Copyright (c) 2015-2021 The Khronos Group Inc.
+ * Copyright (c) 2015-2021 Valve Corporation
+ * Copyright (c) 2015-2021 LunarG, Inc.
+ * Copyright (c) 2015-2021 Google Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -36,12 +36,16 @@
#endif
#include <string>
-#include <vulkan/vulkan.h>
+#ifdef USE_VOLK
+ #include <volk.h>
+#else
+ #include <vulkan/vulkan.h>
+#endif
static inline const char* string_VkResult(VkResult input_value)
{
- switch ((VkResult)input_value)
+ switch (input_value)
{
case VK_ERROR_DEVICE_LOST:
return "VK_ERROR_DEVICE_LOST";
@@ -126,7 +130,7 @@ static inline const char* string_VkResult(VkResult input_value)
static inline const char* string_VkStructureType(VkStructureType input_value)
{
- switch ((VkStructureType)input_value)
+ switch (input_value)
{
case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR:
return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR";
@@ -144,12 +148,16 @@ static inline const char* string_VkStructureType(VkStructureType input_value)
return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR";
case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR:
return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR";
+ case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_MOTION_TRIANGLES_DATA_NV:
+ return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_MOTION_TRIANGLES_DATA_NV";
case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR:
return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR";
case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV:
return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV";
case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV:
return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV";
+ case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MOTION_INFO_NV:
+ return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MOTION_INFO_NV";
case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_INFO_KHR:
return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_INFO_KHR";
case VK_STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR:
@@ -204,6 +212,8 @@ static inline const char* string_VkStructureType(VkStructureType input_value)
return "VK_STRUCTURE_TYPE_BUFFER_IMAGE_COPY_2_KHR";
case VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER:
return "VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER";
+ case VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER_2_KHR:
+ return "VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER_2_KHR";
case VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2:
return "VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2";
case VK_STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO:
@@ -212,6 +222,8 @@ static inline const char* string_VkStructureType(VkStructureType input_value)
return "VK_STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO";
case VK_STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT:
return "VK_STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT";
+ case VK_STRUCTURE_TYPE_CHECKPOINT_DATA_2_NV:
+ return "VK_STRUCTURE_TYPE_CHECKPOINT_DATA_2_NV";
case VK_STRUCTURE_TYPE_CHECKPOINT_DATA_NV:
return "VK_STRUCTURE_TYPE_CHECKPOINT_DATA_NV";
case VK_STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO:
@@ -224,6 +236,10 @@ static inline const char* string_VkStructureType(VkStructureType input_value)
return "VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO";
case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM:
return "VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM";
+ case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_VIEWPORT_SCISSOR_INFO_NV:
+ return "VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_VIEWPORT_SCISSOR_INFO_NV";
+ case VK_STRUCTURE_TYPE_COMMAND_BUFFER_SUBMIT_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_COMMAND_BUFFER_SUBMIT_INFO_KHR";
case VK_STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO:
return "VK_STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO";
case VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO:
@@ -250,6 +266,12 @@ static inline const char* string_VkStructureType(VkStructureType input_value)
return "VK_STRUCTURE_TYPE_COPY_IMAGE_TO_BUFFER_INFO_2_KHR";
case VK_STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR:
return "VK_STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR";
+ case VK_STRUCTURE_TYPE_CU_FUNCTION_CREATE_INFO_NVX:
+ return "VK_STRUCTURE_TYPE_CU_FUNCTION_CREATE_INFO_NVX";
+ case VK_STRUCTURE_TYPE_CU_LAUNCH_INFO_NVX:
+ return "VK_STRUCTURE_TYPE_CU_LAUNCH_INFO_NVX";
+ case VK_STRUCTURE_TYPE_CU_MODULE_CREATE_INFO_NVX:
+ return "VK_STRUCTURE_TYPE_CU_MODULE_CREATE_INFO_NVX";
case VK_STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR:
return "VK_STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR";
case VK_STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT:
@@ -276,6 +298,8 @@ static inline const char* string_VkStructureType(VkStructureType input_value)
return "VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV";
case VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV:
return "VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV";
+ case VK_STRUCTURE_TYPE_DEPENDENCY_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_DEPENDENCY_INFO_KHR";
case VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO:
return "VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO";
case VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT:
@@ -452,6 +476,8 @@ static inline const char* string_VkStructureType(VkStructureType input_value)
return "VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2";
case VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER:
return "VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER";
+ case VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER_2_KHR:
+ return "VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER_2_KHR";
case VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2:
return "VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2";
case VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO:
@@ -488,10 +514,14 @@ static inline const char* string_VkStructureType(VkStructureType input_value)
return "VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR";
case VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV:
return "VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV";
+ case VK_STRUCTURE_TYPE_IMPORT_MEMORY_ZIRCON_HANDLE_INFO_FUCHSIA:
+ return "VK_STRUCTURE_TYPE_IMPORT_MEMORY_ZIRCON_HANDLE_INFO_FUCHSIA";
case VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR:
return "VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR";
case VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR:
return "VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR";
+ case VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_ZIRCON_HANDLE_INFO_FUCHSIA:
+ return "VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_ZIRCON_HANDLE_INFO_FUCHSIA";
case VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV:
return "VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV";
case VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV:
@@ -516,6 +546,8 @@ static inline const char* string_VkStructureType(VkStructureType input_value)
return "VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO";
case VK_STRUCTURE_TYPE_MEMORY_BARRIER:
return "VK_STRUCTURE_TYPE_MEMORY_BARRIER";
+ case VK_STRUCTURE_TYPE_MEMORY_BARRIER_2_KHR:
+ return "VK_STRUCTURE_TYPE_MEMORY_BARRIER_2_KHR";
case VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO:
return "VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO";
case VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS:
@@ -528,6 +560,8 @@ static inline const char* string_VkStructureType(VkStructureType input_value)
return "VK_STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR";
case VK_STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR:
return "VK_STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR";
+ case VK_STRUCTURE_TYPE_MEMORY_GET_ZIRCON_HANDLE_INFO_FUCHSIA:
+ return "VK_STRUCTURE_TYPE_MEMORY_GET_ZIRCON_HANDLE_INFO_FUCHSIA";
case VK_STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT:
return "VK_STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT";
case VK_STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO:
@@ -538,10 +572,14 @@ static inline const char* string_VkStructureType(VkStructureType input_value)
return "VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2";
case VK_STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR:
return "VK_STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR";
+ case VK_STRUCTURE_TYPE_MEMORY_ZIRCON_HANDLE_PROPERTIES_FUCHSIA:
+ return "VK_STRUCTURE_TYPE_MEMORY_ZIRCON_HANDLE_PROPERTIES_FUCHSIA";
case VK_STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT:
return "VK_STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT";
case VK_STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT:
return "VK_STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT";
+ case VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_VALVE:
+ return "VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_VALVE";
case VK_STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL:
return "VK_STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL";
case VK_STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR:
@@ -578,6 +616,8 @@ static inline const char* string_VkStructureType(VkStructureType input_value)
return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD:
return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV:
return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT:
@@ -618,8 +658,12 @@ static inline const char* string_VkStructureType(VkStructureType input_value)
return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES:
return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRM_PROPERTIES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRM_PROPERTIES_EXT";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV:
return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_FEATURES_EXT:
return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_FEATURES_EXT";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO:
@@ -658,6 +702,8 @@ static inline const char* string_VkStructureType(VkStructureType input_value)
return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_KHR";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_PROPERTIES_KHR:
return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_PROPERTIES_KHR";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_EXT";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES:
return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES:
@@ -676,6 +722,8 @@ static inline const char* string_VkStructureType(VkStructureType input_value)
return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT:
return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INHERITED_VIEWPORT_SCISSOR_FEATURES_NV:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INHERITED_VIEWPORT_SCISSOR_FEATURES_NV";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT:
return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT:
@@ -702,6 +750,12 @@ static inline const char* string_VkStructureType(VkStructureType input_value)
return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES:
return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_VALVE:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_VALVE";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT:
return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR:
@@ -714,10 +768,14 @@ static inline const char* string_VkStructureType(VkStructureType input_value)
return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES:
return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES";
+#ifdef VK_ENABLE_BETA_EXTENSIONS
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_FEATURES_KHR:
return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_FEATURES_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_PROPERTIES_KHR:
return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_PROPERTIES_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT:
return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2:
@@ -726,10 +784,16 @@ static inline const char* string_VkStructureType(VkStructureType input_value)
return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES:
return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_PROPERTIES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_PROPERTIES_EXT";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR:
return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_QUERY_FEATURES_KHR:
return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_QUERY_FEATURES_KHR";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MOTION_BLUR_FEATURES_NV:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MOTION_BLUR_FEATURES_NV";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_FEATURES_KHR:
return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_FEATURES_KHR";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_PROPERTIES_KHR:
@@ -780,6 +844,8 @@ static inline const char* string_VkStructureType(VkStructureType input_value)
return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES:
return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES_KHR:
return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES_KHR";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV:
@@ -794,8 +860,14 @@ static inline const char* string_VkStructureType(VkStructureType input_value)
return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT:
return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_FEATURES_HUAWEI:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_FEATURES_HUAWEI";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_PROPERTIES_HUAWEI:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_PROPERTIES_HUAWEI";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR:
return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES_KHR:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES_KHR";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT:
return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT:
@@ -820,6 +892,12 @@ static inline const char* string_VkStructureType(VkStructureType input_value)
return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT:
return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_INPUT_DYNAMIC_STATE_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_INPUT_DYNAMIC_STATE_FEATURES_EXT";
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VIDEO_FORMAT_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VIDEO_FORMAT_INFO_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES:
return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES:
@@ -830,14 +908,22 @@ static inline const char* string_VkStructureType(VkStructureType input_value)
return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES:
return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_FEATURES_KHR:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_FEATURES_KHR";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_2_PLANE_444_FORMATS_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_2_PLANE_444_FORMATS_FEATURES_EXT";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT:
return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES_KHR:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES_KHR";
case VK_STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO:
return "VK_STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO";
case VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT:
return "VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT";
case VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO:
return "VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT";
case VK_STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD:
return "VK_STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD";
case VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV:
@@ -882,6 +968,8 @@ static inline const char* string_VkStructureType(VkStructureType input_value)
return "VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT";
case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT:
return "VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT";
+ case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_PROVOKING_VERTEX_STATE_CREATE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_PROVOKING_VERTEX_STATE_CREATE_INFO_EXT";
case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO:
return "VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO";
case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD:
@@ -934,8 +1022,12 @@ static inline const char* string_VkStructureType(VkStructureType input_value)
return "VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR";
case VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL:
return "VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL";
+ case VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_2_NV:
+ return "VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_2_NV";
case VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV:
return "VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV";
+ case VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_EXT:
+ return "VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_EXT";
case VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2:
return "VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2";
case VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR:
@@ -982,14 +1074,20 @@ static inline const char* string_VkStructureType(VkStructureType input_value)
return "VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO";
case VK_STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT:
return "VK_STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT";
+ case VK_STRUCTURE_TYPE_SCREEN_SURFACE_CREATE_INFO_QNX:
+ return "VK_STRUCTURE_TYPE_SCREEN_SURFACE_CREATE_INFO_QNX";
case VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO:
return "VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO";
case VK_STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR:
return "VK_STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR";
case VK_STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR:
return "VK_STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR";
+ case VK_STRUCTURE_TYPE_SEMAPHORE_GET_ZIRCON_HANDLE_INFO_FUCHSIA:
+ return "VK_STRUCTURE_TYPE_SEMAPHORE_GET_ZIRCON_HANDLE_INFO_FUCHSIA";
case VK_STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO:
return "VK_STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO";
+ case VK_STRUCTURE_TYPE_SEMAPHORE_SUBMIT_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_SEMAPHORE_SUBMIT_INFO_KHR";
case VK_STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO:
return "VK_STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO";
case VK_STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO:
@@ -1008,6 +1106,10 @@ static inline const char* string_VkStructureType(VkStructureType input_value)
return "VK_STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP";
case VK_STRUCTURE_TYPE_SUBMIT_INFO:
return "VK_STRUCTURE_TYPE_SUBMIT_INFO";
+ case VK_STRUCTURE_TYPE_SUBMIT_INFO_2_KHR:
+ return "VK_STRUCTURE_TYPE_SUBMIT_INFO_2_KHR";
+ case VK_STRUCTURE_TYPE_SUBPASSS_SHADING_PIPELINE_CREATE_INFO_HUAWEI:
+ return "VK_STRUCTURE_TYPE_SUBPASSS_SHADING_PIPELINE_CREATE_INFO_HUAWEI";
case VK_STRUCTURE_TYPE_SUBPASS_BEGIN_INFO:
return "VK_STRUCTURE_TYPE_SUBPASS_BEGIN_INFO";
case VK_STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2:
@@ -1048,6 +1150,178 @@ static inline const char* string_VkStructureType(VkStructureType input_value)
return "VK_STRUCTURE_TYPE_VALIDATION_FEATURES_EXT";
case VK_STRUCTURE_TYPE_VALIDATION_FLAGS_EXT:
return "VK_STRUCTURE_TYPE_VALIDATION_FLAGS_EXT";
+ case VK_STRUCTURE_TYPE_VERTEX_INPUT_ATTRIBUTE_DESCRIPTION_2_EXT:
+ return "VK_STRUCTURE_TYPE_VERTEX_INPUT_ATTRIBUTE_DESCRIPTION_2_EXT";
+ case VK_STRUCTURE_TYPE_VERTEX_INPUT_BINDING_DESCRIPTION_2_EXT:
+ return "VK_STRUCTURE_TYPE_VERTEX_INPUT_BINDING_DESCRIPTION_2_EXT";
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_BEGIN_CODING_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_VIDEO_BEGIN_CODING_INFO_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_BIND_MEMORY_KHR:
+ return "VK_STRUCTURE_TYPE_VIDEO_BIND_MEMORY_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_CAPABILITIES_KHR:
+ return "VK_STRUCTURE_TYPE_VIDEO_CAPABILITIES_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_CODING_CONTROL_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_VIDEO_CODING_CONTROL_INFO_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_CAPABILITIES_EXT:
+ return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_CAPABILITIES_EXT";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_DPB_SLOT_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_DPB_SLOT_INFO_EXT";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_MVC_EXT:
+ return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_MVC_EXT";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PICTURE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PICTURE_INFO_EXT";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PROFILE_EXT:
+ return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PROFILE_EXT";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_CREATE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_CREATE_INFO_EXT";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_CAPABILITIES_EXT:
+ return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_CAPABILITIES_EXT";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_DPB_SLOT_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_DPB_SLOT_INFO_EXT";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PICTURE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PICTURE_INFO_EXT";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PROFILE_EXT:
+ return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PROFILE_EXT";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_CREATE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_CREATE_INFO_EXT";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_VIDEO_DECODE_INFO_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_CAPABILITIES_EXT:
+ return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_CAPABILITIES_EXT";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_DPB_SLOT_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_DPB_SLOT_INFO_EXT";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_EMIT_PICTURE_PARAMETERS_EXT:
+ return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_EMIT_PICTURE_PARAMETERS_EXT";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_NALU_SLICE_EXT:
+ return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_NALU_SLICE_EXT";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_PROFILE_EXT:
+ return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_PROFILE_EXT";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_CREATE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_CREATE_INFO_EXT";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_VCL_FRAME_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_VCL_FRAME_INFO_EXT";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_INFO_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_INFO_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_END_CODING_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_VIDEO_END_CODING_INFO_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_FORMAT_PROPERTIES_KHR:
+ return "VK_STRUCTURE_TYPE_VIDEO_FORMAT_PROPERTIES_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_GET_MEMORY_PROPERTIES_KHR:
+ return "VK_STRUCTURE_TYPE_VIDEO_GET_MEMORY_PROPERTIES_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_PICTURE_RESOURCE_KHR:
+ return "VK_STRUCTURE_TYPE_VIDEO_PICTURE_RESOURCE_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_PROFILES_KHR:
+ return "VK_STRUCTURE_TYPE_VIDEO_PROFILES_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_PROFILE_KHR:
+ return "VK_STRUCTURE_TYPE_VIDEO_PROFILE_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_QUEUE_FAMILY_PROPERTIES_2_KHR:
+ return "VK_STRUCTURE_TYPE_VIDEO_QUEUE_FAMILY_PROPERTIES_2_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_REFERENCE_SLOT_KHR:
+ return "VK_STRUCTURE_TYPE_VIDEO_REFERENCE_SLOT_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_SESSION_CREATE_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_VIDEO_SESSION_CREATE_INFO_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_SESSION_PARAMETERS_CREATE_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_VIDEO_SESSION_PARAMETERS_CREATE_INFO_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_SESSION_PARAMETERS_UPDATE_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_VIDEO_SESSION_PARAMETERS_UPDATE_INFO_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
case VK_STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN:
return "VK_STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN";
case VK_STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR:
@@ -1077,7 +1351,7 @@ static inline const char* string_VkStructureType(VkStructureType input_value)
static inline const char* string_VkAccessFlagBits(VkAccessFlagBits input_value)
{
- switch ((VkAccessFlagBits)input_value)
+ switch (input_value)
{
case VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_KHR:
return "VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_KHR";
@@ -1101,6 +1375,8 @@ static inline const char* string_VkAccessFlagBits(VkAccessFlagBits input_value)
return "VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT";
case VK_ACCESS_FRAGMENT_DENSITY_MAP_READ_BIT_EXT:
return "VK_ACCESS_FRAGMENT_DENSITY_MAP_READ_BIT_EXT";
+ case VK_ACCESS_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR:
+ return "VK_ACCESS_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR";
case VK_ACCESS_HOST_READ_BIT:
return "VK_ACCESS_HOST_READ_BIT";
case VK_ACCESS_HOST_WRITE_BIT:
@@ -1115,12 +1391,12 @@ static inline const char* string_VkAccessFlagBits(VkAccessFlagBits input_value)
return "VK_ACCESS_MEMORY_READ_BIT";
case VK_ACCESS_MEMORY_WRITE_BIT:
return "VK_ACCESS_MEMORY_WRITE_BIT";
+ case VK_ACCESS_NONE_KHR:
+ return "VK_ACCESS_NONE_KHR";
case VK_ACCESS_SHADER_READ_BIT:
return "VK_ACCESS_SHADER_READ_BIT";
case VK_ACCESS_SHADER_WRITE_BIT:
return "VK_ACCESS_SHADER_WRITE_BIT";
- case VK_ACCESS_SHADING_RATE_IMAGE_READ_BIT_NV:
- return "VK_ACCESS_SHADING_RATE_IMAGE_READ_BIT_NV";
case VK_ACCESS_TRANSFER_READ_BIT:
return "VK_ACCESS_TRANSFER_READ_BIT";
case VK_ACCESS_TRANSFER_WRITE_BIT:
@@ -1147,7 +1423,7 @@ static inline std::string string_VkAccessFlags(VkAccessFlags input_value)
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkAccessFlagBits(static_cast<VkAccessFlagBits>(1 << index)));
+ ret.append(string_VkAccessFlagBits(static_cast<VkAccessFlagBits>(1U << index)));
}
++index;
input_value >>= 1;
@@ -1158,8 +1434,10 @@ static inline std::string string_VkAccessFlags(VkAccessFlags input_value)
static inline const char* string_VkImageLayout(VkImageLayout input_value)
{
- switch ((VkImageLayout)input_value)
+ switch (input_value)
{
+ case VK_IMAGE_LAYOUT_ATTACHMENT_OPTIMAL_KHR:
+ return "VK_IMAGE_LAYOUT_ATTACHMENT_OPTIMAL_KHR";
case VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL:
return "VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL";
case VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL:
@@ -1176,16 +1454,18 @@ static inline const char* string_VkImageLayout(VkImageLayout input_value)
return "VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL";
case VK_IMAGE_LAYOUT_FRAGMENT_DENSITY_MAP_OPTIMAL_EXT:
return "VK_IMAGE_LAYOUT_FRAGMENT_DENSITY_MAP_OPTIMAL_EXT";
+ case VK_IMAGE_LAYOUT_FRAGMENT_SHADING_RATE_ATTACHMENT_OPTIMAL_KHR:
+ return "VK_IMAGE_LAYOUT_FRAGMENT_SHADING_RATE_ATTACHMENT_OPTIMAL_KHR";
case VK_IMAGE_LAYOUT_GENERAL:
return "VK_IMAGE_LAYOUT_GENERAL";
case VK_IMAGE_LAYOUT_PREINITIALIZED:
return "VK_IMAGE_LAYOUT_PREINITIALIZED";
case VK_IMAGE_LAYOUT_PRESENT_SRC_KHR:
return "VK_IMAGE_LAYOUT_PRESENT_SRC_KHR";
+ case VK_IMAGE_LAYOUT_READ_ONLY_OPTIMAL_KHR:
+ return "VK_IMAGE_LAYOUT_READ_ONLY_OPTIMAL_KHR";
case VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL:
return "VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL";
- case VK_IMAGE_LAYOUT_SHADING_RATE_OPTIMAL_NV:
- return "VK_IMAGE_LAYOUT_SHADING_RATE_OPTIMAL_NV";
case VK_IMAGE_LAYOUT_SHARED_PRESENT_KHR:
return "VK_IMAGE_LAYOUT_SHARED_PRESENT_KHR";
case VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL:
@@ -1198,6 +1478,30 @@ static inline const char* string_VkImageLayout(VkImageLayout input_value)
return "VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL";
case VK_IMAGE_LAYOUT_UNDEFINED:
return "VK_IMAGE_LAYOUT_UNDEFINED";
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_IMAGE_LAYOUT_VIDEO_DECODE_DPB_KHR:
+ return "VK_IMAGE_LAYOUT_VIDEO_DECODE_DPB_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_IMAGE_LAYOUT_VIDEO_DECODE_DST_KHR:
+ return "VK_IMAGE_LAYOUT_VIDEO_DECODE_DST_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_IMAGE_LAYOUT_VIDEO_DECODE_SRC_KHR:
+ return "VK_IMAGE_LAYOUT_VIDEO_DECODE_SRC_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_IMAGE_LAYOUT_VIDEO_ENCODE_DPB_KHR:
+ return "VK_IMAGE_LAYOUT_VIDEO_ENCODE_DPB_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_IMAGE_LAYOUT_VIDEO_ENCODE_DST_KHR:
+ return "VK_IMAGE_LAYOUT_VIDEO_ENCODE_DST_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_IMAGE_LAYOUT_VIDEO_ENCODE_SRC_KHR:
+ return "VK_IMAGE_LAYOUT_VIDEO_ENCODE_SRC_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
default:
return "Unhandled VkImageLayout";
}
@@ -1205,7 +1509,7 @@ static inline const char* string_VkImageLayout(VkImageLayout input_value)
static inline const char* string_VkImageAspectFlagBits(VkImageAspectFlagBits input_value)
{
- switch ((VkImageAspectFlagBits)input_value)
+ switch (input_value)
{
case VK_IMAGE_ASPECT_COLOR_BIT:
return "VK_IMAGE_ASPECT_COLOR_BIT";
@@ -1241,7 +1545,7 @@ static inline std::string string_VkImageAspectFlags(VkImageAspectFlags input_val
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkImageAspectFlagBits(static_cast<VkImageAspectFlagBits>(1 << index)));
+ ret.append(string_VkImageAspectFlagBits(static_cast<VkImageAspectFlagBits>(1U << index)));
}
++index;
input_value >>= 1;
@@ -1252,7 +1556,7 @@ static inline std::string string_VkImageAspectFlags(VkImageAspectFlags input_val
static inline const char* string_VkObjectType(VkObjectType input_value)
{
- switch ((VkObjectType)input_value)
+ switch (input_value)
{
case VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR:
return "VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR";
@@ -1266,6 +1570,10 @@ static inline const char* string_VkObjectType(VkObjectType input_value)
return "VK_OBJECT_TYPE_COMMAND_BUFFER";
case VK_OBJECT_TYPE_COMMAND_POOL:
return "VK_OBJECT_TYPE_COMMAND_POOL";
+ case VK_OBJECT_TYPE_CU_FUNCTION_NVX:
+ return "VK_OBJECT_TYPE_CU_FUNCTION_NVX";
+ case VK_OBJECT_TYPE_CU_MODULE_NVX:
+ return "VK_OBJECT_TYPE_CU_MODULE_NVX";
case VK_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT:
return "VK_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT";
case VK_OBJECT_TYPE_DEBUG_UTILS_MESSENGER_EXT:
@@ -1336,6 +1644,14 @@ static inline const char* string_VkObjectType(VkObjectType input_value)
return "VK_OBJECT_TYPE_UNKNOWN";
case VK_OBJECT_TYPE_VALIDATION_CACHE_EXT:
return "VK_OBJECT_TYPE_VALIDATION_CACHE_EXT";
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_OBJECT_TYPE_VIDEO_SESSION_KHR:
+ return "VK_OBJECT_TYPE_VIDEO_SESSION_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_OBJECT_TYPE_VIDEO_SESSION_PARAMETERS_KHR:
+ return "VK_OBJECT_TYPE_VIDEO_SESSION_PARAMETERS_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
default:
return "Unhandled VkObjectType";
}
@@ -1343,7 +1659,7 @@ static inline const char* string_VkObjectType(VkObjectType input_value)
static inline const char* string_VkVendorId(VkVendorId input_value)
{
- switch ((VkVendorId)input_value)
+ switch (input_value)
{
case VK_VENDOR_ID_CODEPLAY:
return "VK_VENDOR_ID_CODEPLAY";
@@ -1351,6 +1667,8 @@ static inline const char* string_VkVendorId(VkVendorId input_value)
return "VK_VENDOR_ID_KAZAN";
case VK_VENDOR_ID_MESA:
return "VK_VENDOR_ID_MESA";
+ case VK_VENDOR_ID_POCL:
+ return "VK_VENDOR_ID_POCL";
case VK_VENDOR_ID_VIV:
return "VK_VENDOR_ID_VIV";
case VK_VENDOR_ID_VSI:
@@ -1362,7 +1680,7 @@ static inline const char* string_VkVendorId(VkVendorId input_value)
static inline const char* string_VkPipelineCacheHeaderVersion(VkPipelineCacheHeaderVersion input_value)
{
- switch ((VkPipelineCacheHeaderVersion)input_value)
+ switch (input_value)
{
case VK_PIPELINE_CACHE_HEADER_VERSION_ONE:
return "VK_PIPELINE_CACHE_HEADER_VERSION_ONE";
@@ -1373,7 +1691,7 @@ static inline const char* string_VkPipelineCacheHeaderVersion(VkPipelineCacheHea
static inline const char* string_VkSystemAllocationScope(VkSystemAllocationScope input_value)
{
- switch ((VkSystemAllocationScope)input_value)
+ switch (input_value)
{
case VK_SYSTEM_ALLOCATION_SCOPE_CACHE:
return "VK_SYSTEM_ALLOCATION_SCOPE_CACHE";
@@ -1392,7 +1710,7 @@ static inline const char* string_VkSystemAllocationScope(VkSystemAllocationScope
static inline const char* string_VkInternalAllocationType(VkInternalAllocationType input_value)
{
- switch ((VkInternalAllocationType)input_value)
+ switch (input_value)
{
case VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE:
return "VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE";
@@ -1403,7 +1721,7 @@ static inline const char* string_VkInternalAllocationType(VkInternalAllocationTy
static inline const char* string_VkFormat(VkFormat input_value)
{
- switch ((VkFormat)input_value)
+ switch (input_value)
{
case VK_FORMAT_A1R5G5B5_UNORM_PACK16:
return "VK_FORMAT_A1R5G5B5_UNORM_PACK16";
@@ -1647,6 +1965,8 @@ static inline const char* string_VkFormat(VkFormat input_value)
return "VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16";
case VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16:
return "VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16";
+ case VK_FORMAT_G10X6_B10X6R10X6_2PLANE_444_UNORM_3PACK16_EXT:
+ return "VK_FORMAT_G10X6_B10X6R10X6_2PLANE_444_UNORM_3PACK16_EXT";
case VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16:
return "VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16";
case VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16:
@@ -1659,6 +1979,8 @@ static inline const char* string_VkFormat(VkFormat input_value)
return "VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16";
case VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16:
return "VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16";
+ case VK_FORMAT_G12X4_B12X4R12X4_2PLANE_444_UNORM_3PACK16_EXT:
+ return "VK_FORMAT_G12X4_B12X4R12X4_2PLANE_444_UNORM_3PACK16_EXT";
case VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16:
return "VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16";
case VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16:
@@ -1671,6 +1993,8 @@ static inline const char* string_VkFormat(VkFormat input_value)
return "VK_FORMAT_G16_B16R16_2PLANE_420_UNORM";
case VK_FORMAT_G16_B16R16_2PLANE_422_UNORM:
return "VK_FORMAT_G16_B16R16_2PLANE_422_UNORM";
+ case VK_FORMAT_G16_B16R16_2PLANE_444_UNORM_EXT:
+ return "VK_FORMAT_G16_B16R16_2PLANE_444_UNORM_EXT";
case VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM:
return "VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM";
case VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM:
@@ -1683,6 +2007,8 @@ static inline const char* string_VkFormat(VkFormat input_value)
return "VK_FORMAT_G8_B8R8_2PLANE_420_UNORM";
case VK_FORMAT_G8_B8R8_2PLANE_422_UNORM:
return "VK_FORMAT_G8_B8R8_2PLANE_422_UNORM";
+ case VK_FORMAT_G8_B8R8_2PLANE_444_UNORM_EXT:
+ return "VK_FORMAT_G8_B8R8_2PLANE_444_UNORM_EXT";
case VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM:
return "VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM";
case VK_FORMAT_G8_B8_R8_3PLANE_422_UNORM:
@@ -1898,7 +2224,7 @@ static inline const char* string_VkFormat(VkFormat input_value)
static inline const char* string_VkFormatFeatureFlagBits(VkFormatFeatureFlagBits input_value)
{
- switch ((VkFormatFeatureFlagBits)input_value)
+ switch (input_value)
{
case VK_FORMAT_FEATURE_ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR:
return "VK_FORMAT_FEATURE_ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR";
@@ -1954,6 +2280,22 @@ static inline const char* string_VkFormatFeatureFlagBits(VkFormatFeatureFlagBits
return "VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT";
case VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT:
return "VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT";
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_FORMAT_FEATURE_VIDEO_DECODE_DPB_BIT_KHR:
+ return "VK_FORMAT_FEATURE_VIDEO_DECODE_DPB_BIT_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_FORMAT_FEATURE_VIDEO_DECODE_OUTPUT_BIT_KHR:
+ return "VK_FORMAT_FEATURE_VIDEO_DECODE_OUTPUT_BIT_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_FORMAT_FEATURE_VIDEO_ENCODE_DPB_BIT_KHR:
+ return "VK_FORMAT_FEATURE_VIDEO_ENCODE_DPB_BIT_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_FORMAT_FEATURE_VIDEO_ENCODE_INPUT_BIT_KHR:
+ return "VK_FORMAT_FEATURE_VIDEO_ENCODE_INPUT_BIT_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
default:
return "Unhandled VkFormatFeatureFlagBits";
}
@@ -1966,7 +2308,7 @@ static inline std::string string_VkFormatFeatureFlags(VkFormatFeatureFlags input
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkFormatFeatureFlagBits(static_cast<VkFormatFeatureFlagBits>(1 << index)));
+ ret.append(string_VkFormatFeatureFlagBits(static_cast<VkFormatFeatureFlagBits>(1U << index)));
}
++index;
input_value >>= 1;
@@ -1977,7 +2319,7 @@ static inline std::string string_VkFormatFeatureFlags(VkFormatFeatureFlags input
static inline const char* string_VkImageCreateFlagBits(VkImageCreateFlagBits input_value)
{
- switch ((VkImageCreateFlagBits)input_value)
+ switch (input_value)
{
case VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT:
return "VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT";
@@ -2021,7 +2363,7 @@ static inline std::string string_VkImageCreateFlags(VkImageCreateFlags input_val
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkImageCreateFlagBits(static_cast<VkImageCreateFlagBits>(1 << index)));
+ ret.append(string_VkImageCreateFlagBits(static_cast<VkImageCreateFlagBits>(1U << index)));
}
++index;
input_value >>= 1;
@@ -2032,7 +2374,7 @@ static inline std::string string_VkImageCreateFlags(VkImageCreateFlags input_val
static inline const char* string_VkSampleCountFlagBits(VkSampleCountFlagBits input_value)
{
- switch ((VkSampleCountFlagBits)input_value)
+ switch (input_value)
{
case VK_SAMPLE_COUNT_16_BIT:
return "VK_SAMPLE_COUNT_16_BIT";
@@ -2060,7 +2402,7 @@ static inline std::string string_VkSampleCountFlags(VkSampleCountFlags input_val
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkSampleCountFlagBits(static_cast<VkSampleCountFlagBits>(1 << index)));
+ ret.append(string_VkSampleCountFlagBits(static_cast<VkSampleCountFlagBits>(1U << index)));
}
++index;
input_value >>= 1;
@@ -2071,7 +2413,7 @@ static inline std::string string_VkSampleCountFlags(VkSampleCountFlags input_val
static inline const char* string_VkImageTiling(VkImageTiling input_value)
{
- switch ((VkImageTiling)input_value)
+ switch (input_value)
{
case VK_IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT:
return "VK_IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT";
@@ -2086,7 +2428,7 @@ static inline const char* string_VkImageTiling(VkImageTiling input_value)
static inline const char* string_VkImageType(VkImageType input_value)
{
- switch ((VkImageType)input_value)
+ switch (input_value)
{
case VK_IMAGE_TYPE_1D:
return "VK_IMAGE_TYPE_1D";
@@ -2101,7 +2443,7 @@ static inline const char* string_VkImageType(VkImageType input_value)
static inline const char* string_VkImageUsageFlagBits(VkImageUsageFlagBits input_value)
{
- switch ((VkImageUsageFlagBits)input_value)
+ switch (input_value)
{
case VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT:
return "VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT";
@@ -2109,12 +2451,12 @@ static inline const char* string_VkImageUsageFlagBits(VkImageUsageFlagBits input
return "VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT";
case VK_IMAGE_USAGE_FRAGMENT_DENSITY_MAP_BIT_EXT:
return "VK_IMAGE_USAGE_FRAGMENT_DENSITY_MAP_BIT_EXT";
+ case VK_IMAGE_USAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR:
+ return "VK_IMAGE_USAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR";
case VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT:
return "VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT";
case VK_IMAGE_USAGE_SAMPLED_BIT:
return "VK_IMAGE_USAGE_SAMPLED_BIT";
- case VK_IMAGE_USAGE_SHADING_RATE_IMAGE_BIT_NV:
- return "VK_IMAGE_USAGE_SHADING_RATE_IMAGE_BIT_NV";
case VK_IMAGE_USAGE_STORAGE_BIT:
return "VK_IMAGE_USAGE_STORAGE_BIT";
case VK_IMAGE_USAGE_TRANSFER_DST_BIT:
@@ -2123,6 +2465,30 @@ static inline const char* string_VkImageUsageFlagBits(VkImageUsageFlagBits input
return "VK_IMAGE_USAGE_TRANSFER_SRC_BIT";
case VK_IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT:
return "VK_IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT";
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_IMAGE_USAGE_VIDEO_DECODE_DPB_BIT_KHR:
+ return "VK_IMAGE_USAGE_VIDEO_DECODE_DPB_BIT_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_IMAGE_USAGE_VIDEO_DECODE_DST_BIT_KHR:
+ return "VK_IMAGE_USAGE_VIDEO_DECODE_DST_BIT_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_IMAGE_USAGE_VIDEO_DECODE_SRC_BIT_KHR:
+ return "VK_IMAGE_USAGE_VIDEO_DECODE_SRC_BIT_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_IMAGE_USAGE_VIDEO_ENCODE_DPB_BIT_KHR:
+ return "VK_IMAGE_USAGE_VIDEO_ENCODE_DPB_BIT_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_IMAGE_USAGE_VIDEO_ENCODE_DST_BIT_KHR:
+ return "VK_IMAGE_USAGE_VIDEO_ENCODE_DST_BIT_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_IMAGE_USAGE_VIDEO_ENCODE_SRC_BIT_KHR:
+ return "VK_IMAGE_USAGE_VIDEO_ENCODE_SRC_BIT_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
default:
return "Unhandled VkImageUsageFlagBits";
}
@@ -2135,7 +2501,7 @@ static inline std::string string_VkImageUsageFlags(VkImageUsageFlags input_value
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkImageUsageFlagBits(static_cast<VkImageUsageFlagBits>(1 << index)));
+ ret.append(string_VkImageUsageFlagBits(static_cast<VkImageUsageFlagBits>(1U << index)));
}
++index;
input_value >>= 1;
@@ -2146,7 +2512,7 @@ static inline std::string string_VkImageUsageFlags(VkImageUsageFlags input_value
static inline const char* string_VkMemoryHeapFlagBits(VkMemoryHeapFlagBits input_value)
{
- switch ((VkMemoryHeapFlagBits)input_value)
+ switch (input_value)
{
case VK_MEMORY_HEAP_DEVICE_LOCAL_BIT:
return "VK_MEMORY_HEAP_DEVICE_LOCAL_BIT";
@@ -2164,7 +2530,7 @@ static inline std::string string_VkMemoryHeapFlags(VkMemoryHeapFlags input_value
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkMemoryHeapFlagBits(static_cast<VkMemoryHeapFlagBits>(1 << index)));
+ ret.append(string_VkMemoryHeapFlagBits(static_cast<VkMemoryHeapFlagBits>(1U << index)));
}
++index;
input_value >>= 1;
@@ -2175,7 +2541,7 @@ static inline std::string string_VkMemoryHeapFlags(VkMemoryHeapFlags input_value
static inline const char* string_VkMemoryPropertyFlagBits(VkMemoryPropertyFlagBits input_value)
{
- switch ((VkMemoryPropertyFlagBits)input_value)
+ switch (input_value)
{
case VK_MEMORY_PROPERTY_DEVICE_COHERENT_BIT_AMD:
return "VK_MEMORY_PROPERTY_DEVICE_COHERENT_BIT_AMD";
@@ -2205,7 +2571,7 @@ static inline std::string string_VkMemoryPropertyFlags(VkMemoryPropertyFlags inp
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkMemoryPropertyFlagBits(static_cast<VkMemoryPropertyFlagBits>(1 << index)));
+ ret.append(string_VkMemoryPropertyFlagBits(static_cast<VkMemoryPropertyFlagBits>(1U << index)));
}
++index;
input_value >>= 1;
@@ -2216,7 +2582,7 @@ static inline std::string string_VkMemoryPropertyFlags(VkMemoryPropertyFlags inp
static inline const char* string_VkPhysicalDeviceType(VkPhysicalDeviceType input_value)
{
- switch ((VkPhysicalDeviceType)input_value)
+ switch (input_value)
{
case VK_PHYSICAL_DEVICE_TYPE_CPU:
return "VK_PHYSICAL_DEVICE_TYPE_CPU";
@@ -2235,7 +2601,7 @@ static inline const char* string_VkPhysicalDeviceType(VkPhysicalDeviceType input
static inline const char* string_VkQueueFlagBits(VkQueueFlagBits input_value)
{
- switch ((VkQueueFlagBits)input_value)
+ switch (input_value)
{
case VK_QUEUE_COMPUTE_BIT:
return "VK_QUEUE_COMPUTE_BIT";
@@ -2247,6 +2613,14 @@ static inline const char* string_VkQueueFlagBits(VkQueueFlagBits input_value)
return "VK_QUEUE_SPARSE_BINDING_BIT";
case VK_QUEUE_TRANSFER_BIT:
return "VK_QUEUE_TRANSFER_BIT";
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_QUEUE_VIDEO_DECODE_BIT_KHR:
+ return "VK_QUEUE_VIDEO_DECODE_BIT_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_QUEUE_VIDEO_ENCODE_BIT_KHR:
+ return "VK_QUEUE_VIDEO_ENCODE_BIT_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
default:
return "Unhandled VkQueueFlagBits";
}
@@ -2259,7 +2633,7 @@ static inline std::string string_VkQueueFlags(VkQueueFlags input_value)
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkQueueFlagBits(static_cast<VkQueueFlagBits>(1 << index)));
+ ret.append(string_VkQueueFlagBits(static_cast<VkQueueFlagBits>(1U << index)));
}
++index;
input_value >>= 1;
@@ -2270,7 +2644,7 @@ static inline std::string string_VkQueueFlags(VkQueueFlags input_value)
static inline const char* string_VkDeviceQueueCreateFlagBits(VkDeviceQueueCreateFlagBits input_value)
{
- switch ((VkDeviceQueueCreateFlagBits)input_value)
+ switch (input_value)
{
case VK_DEVICE_QUEUE_CREATE_PROTECTED_BIT:
return "VK_DEVICE_QUEUE_CREATE_PROTECTED_BIT";
@@ -2286,7 +2660,7 @@ static inline std::string string_VkDeviceQueueCreateFlags(VkDeviceQueueCreateFla
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkDeviceQueueCreateFlagBits(static_cast<VkDeviceQueueCreateFlagBits>(1 << index)));
+ ret.append(string_VkDeviceQueueCreateFlagBits(static_cast<VkDeviceQueueCreateFlagBits>(1U << index)));
}
++index;
input_value >>= 1;
@@ -2297,7 +2671,7 @@ static inline std::string string_VkDeviceQueueCreateFlags(VkDeviceQueueCreateFla
static inline const char* string_VkPipelineStageFlagBits(VkPipelineStageFlagBits input_value)
{
- switch ((VkPipelineStageFlagBits)input_value)
+ switch (input_value)
{
case VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_KHR:
return "VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_KHR";
@@ -2323,6 +2697,8 @@ static inline const char* string_VkPipelineStageFlagBits(VkPipelineStageFlagBits
return "VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT";
case VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT:
return "VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT";
+ case VK_PIPELINE_STAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR:
+ return "VK_PIPELINE_STAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR";
case VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT:
return "VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT";
case VK_PIPELINE_STAGE_HOST_BIT:
@@ -2331,10 +2707,10 @@ static inline const char* string_VkPipelineStageFlagBits(VkPipelineStageFlagBits
return "VK_PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT";
case VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV:
return "VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV";
+ case VK_PIPELINE_STAGE_NONE_KHR:
+ return "VK_PIPELINE_STAGE_NONE_KHR";
case VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_KHR:
return "VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_KHR";
- case VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV:
- return "VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV";
case VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV:
return "VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV";
case VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT:
@@ -2363,7 +2739,7 @@ static inline std::string string_VkPipelineStageFlags(VkPipelineStageFlags input
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkPipelineStageFlagBits(static_cast<VkPipelineStageFlagBits>(1 << index)));
+ ret.append(string_VkPipelineStageFlagBits(static_cast<VkPipelineStageFlagBits>(1U << index)));
}
++index;
input_value >>= 1;
@@ -2374,7 +2750,7 @@ static inline std::string string_VkPipelineStageFlags(VkPipelineStageFlags input
static inline const char* string_VkSparseMemoryBindFlagBits(VkSparseMemoryBindFlagBits input_value)
{
- switch ((VkSparseMemoryBindFlagBits)input_value)
+ switch (input_value)
{
case VK_SPARSE_MEMORY_BIND_METADATA_BIT:
return "VK_SPARSE_MEMORY_BIND_METADATA_BIT";
@@ -2390,7 +2766,7 @@ static inline std::string string_VkSparseMemoryBindFlags(VkSparseMemoryBindFlags
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkSparseMemoryBindFlagBits(static_cast<VkSparseMemoryBindFlagBits>(1 << index)));
+ ret.append(string_VkSparseMemoryBindFlagBits(static_cast<VkSparseMemoryBindFlagBits>(1U << index)));
}
++index;
input_value >>= 1;
@@ -2401,7 +2777,7 @@ static inline std::string string_VkSparseMemoryBindFlags(VkSparseMemoryBindFlags
static inline const char* string_VkSparseImageFormatFlagBits(VkSparseImageFormatFlagBits input_value)
{
- switch ((VkSparseImageFormatFlagBits)input_value)
+ switch (input_value)
{
case VK_SPARSE_IMAGE_FORMAT_ALIGNED_MIP_SIZE_BIT:
return "VK_SPARSE_IMAGE_FORMAT_ALIGNED_MIP_SIZE_BIT";
@@ -2421,7 +2797,7 @@ static inline std::string string_VkSparseImageFormatFlags(VkSparseImageFormatFla
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkSparseImageFormatFlagBits(static_cast<VkSparseImageFormatFlagBits>(1 << index)));
+ ret.append(string_VkSparseImageFormatFlagBits(static_cast<VkSparseImageFormatFlagBits>(1U << index)));
}
++index;
input_value >>= 1;
@@ -2432,7 +2808,7 @@ static inline std::string string_VkSparseImageFormatFlags(VkSparseImageFormatFla
static inline const char* string_VkFenceCreateFlagBits(VkFenceCreateFlagBits input_value)
{
- switch ((VkFenceCreateFlagBits)input_value)
+ switch (input_value)
{
case VK_FENCE_CREATE_SIGNALED_BIT:
return "VK_FENCE_CREATE_SIGNALED_BIT";
@@ -2448,7 +2824,7 @@ static inline std::string string_VkFenceCreateFlags(VkFenceCreateFlags input_val
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkFenceCreateFlagBits(static_cast<VkFenceCreateFlagBits>(1 << index)));
+ ret.append(string_VkFenceCreateFlagBits(static_cast<VkFenceCreateFlagBits>(1U << index)));
}
++index;
input_value >>= 1;
@@ -2457,9 +2833,36 @@ static inline std::string string_VkFenceCreateFlags(VkFenceCreateFlags input_val
return ret;
}
+static inline const char* string_VkEventCreateFlagBits(VkEventCreateFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_EVENT_CREATE_DEVICE_ONLY_BIT_KHR:
+ return "VK_EVENT_CREATE_DEVICE_ONLY_BIT_KHR";
+ default:
+ return "Unhandled VkEventCreateFlagBits";
+ }
+}
+
+static inline std::string string_VkEventCreateFlags(VkEventCreateFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkEventCreateFlagBits(static_cast<VkEventCreateFlagBits>(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkEventCreateFlagBits(static_cast<VkEventCreateFlagBits>(0)));
+ return ret;
+}
+
static inline const char* string_VkQueryPipelineStatisticFlagBits(VkQueryPipelineStatisticFlagBits input_value)
{
- switch ((VkQueryPipelineStatisticFlagBits)input_value)
+ switch (input_value)
{
case VK_QUERY_PIPELINE_STATISTIC_CLIPPING_INVOCATIONS_BIT:
return "VK_QUERY_PIPELINE_STATISTIC_CLIPPING_INVOCATIONS_BIT";
@@ -2495,7 +2898,7 @@ static inline std::string string_VkQueryPipelineStatisticFlags(VkQueryPipelineSt
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkQueryPipelineStatisticFlagBits(static_cast<VkQueryPipelineStatisticFlagBits>(1 << index)));
+ ret.append(string_VkQueryPipelineStatisticFlagBits(static_cast<VkQueryPipelineStatisticFlagBits>(1U << index)));
}
++index;
input_value >>= 1;
@@ -2506,7 +2909,7 @@ static inline std::string string_VkQueryPipelineStatisticFlags(VkQueryPipelineSt
static inline const char* string_VkQueryType(VkQueryType input_value)
{
- switch ((VkQueryType)input_value)
+ switch (input_value)
{
case VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR:
return "VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR";
@@ -2522,10 +2925,18 @@ static inline const char* string_VkQueryType(VkQueryType input_value)
return "VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR";
case VK_QUERY_TYPE_PIPELINE_STATISTICS:
return "VK_QUERY_TYPE_PIPELINE_STATISTICS";
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_QUERY_TYPE_RESULT_STATUS_ONLY_KHR:
+ return "VK_QUERY_TYPE_RESULT_STATUS_ONLY_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
case VK_QUERY_TYPE_TIMESTAMP:
return "VK_QUERY_TYPE_TIMESTAMP";
case VK_QUERY_TYPE_TRANSFORM_FEEDBACK_STREAM_EXT:
return "VK_QUERY_TYPE_TRANSFORM_FEEDBACK_STREAM_EXT";
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_QUERY_TYPE_VIDEO_ENCODE_BITSTREAM_BUFFER_RANGE_KHR:
+ return "VK_QUERY_TYPE_VIDEO_ENCODE_BITSTREAM_BUFFER_RANGE_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
default:
return "Unhandled VkQueryType";
}
@@ -2533,7 +2944,7 @@ static inline const char* string_VkQueryType(VkQueryType input_value)
static inline const char* string_VkQueryResultFlagBits(VkQueryResultFlagBits input_value)
{
- switch ((VkQueryResultFlagBits)input_value)
+ switch (input_value)
{
case VK_QUERY_RESULT_64_BIT:
return "VK_QUERY_RESULT_64_BIT";
@@ -2543,6 +2954,10 @@ static inline const char* string_VkQueryResultFlagBits(VkQueryResultFlagBits inp
return "VK_QUERY_RESULT_WAIT_BIT";
case VK_QUERY_RESULT_WITH_AVAILABILITY_BIT:
return "VK_QUERY_RESULT_WITH_AVAILABILITY_BIT";
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_QUERY_RESULT_WITH_STATUS_BIT_KHR:
+ return "VK_QUERY_RESULT_WITH_STATUS_BIT_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
default:
return "Unhandled VkQueryResultFlagBits";
}
@@ -2555,7 +2970,7 @@ static inline std::string string_VkQueryResultFlags(VkQueryResultFlags input_val
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkQueryResultFlagBits(static_cast<VkQueryResultFlagBits>(1 << index)));
+ ret.append(string_VkQueryResultFlagBits(static_cast<VkQueryResultFlagBits>(1U << index)));
}
++index;
input_value >>= 1;
@@ -2566,7 +2981,7 @@ static inline std::string string_VkQueryResultFlags(VkQueryResultFlags input_val
static inline const char* string_VkBufferCreateFlagBits(VkBufferCreateFlagBits input_value)
{
- switch ((VkBufferCreateFlagBits)input_value)
+ switch (input_value)
{
case VK_BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT:
return "VK_BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT";
@@ -2590,7 +3005,7 @@ static inline std::string string_VkBufferCreateFlags(VkBufferCreateFlags input_v
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkBufferCreateFlagBits(static_cast<VkBufferCreateFlagBits>(1 << index)));
+ ret.append(string_VkBufferCreateFlagBits(static_cast<VkBufferCreateFlagBits>(1U << index)));
}
++index;
input_value >>= 1;
@@ -2601,7 +3016,7 @@ static inline std::string string_VkBufferCreateFlags(VkBufferCreateFlags input_v
static inline const char* string_VkBufferUsageFlagBits(VkBufferUsageFlagBits input_value)
{
- switch ((VkBufferUsageFlagBits)input_value)
+ switch (input_value)
{
case VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_BIT_KHR:
return "VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_BIT_KHR";
@@ -2635,6 +3050,22 @@ static inline const char* string_VkBufferUsageFlagBits(VkBufferUsageFlagBits inp
return "VK_BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT";
case VK_BUFFER_USAGE_VERTEX_BUFFER_BIT:
return "VK_BUFFER_USAGE_VERTEX_BUFFER_BIT";
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_BUFFER_USAGE_VIDEO_DECODE_DST_BIT_KHR:
+ return "VK_BUFFER_USAGE_VIDEO_DECODE_DST_BIT_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_BUFFER_USAGE_VIDEO_DECODE_SRC_BIT_KHR:
+ return "VK_BUFFER_USAGE_VIDEO_DECODE_SRC_BIT_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_BUFFER_USAGE_VIDEO_ENCODE_DST_BIT_KHR:
+ return "VK_BUFFER_USAGE_VIDEO_ENCODE_DST_BIT_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_BUFFER_USAGE_VIDEO_ENCODE_SRC_BIT_KHR:
+ return "VK_BUFFER_USAGE_VIDEO_ENCODE_SRC_BIT_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
default:
return "Unhandled VkBufferUsageFlagBits";
}
@@ -2647,7 +3078,7 @@ static inline std::string string_VkBufferUsageFlags(VkBufferUsageFlags input_val
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkBufferUsageFlagBits(static_cast<VkBufferUsageFlagBits>(1 << index)));
+ ret.append(string_VkBufferUsageFlagBits(static_cast<VkBufferUsageFlagBits>(1U << index)));
}
++index;
input_value >>= 1;
@@ -2658,7 +3089,7 @@ static inline std::string string_VkBufferUsageFlags(VkBufferUsageFlags input_val
static inline const char* string_VkSharingMode(VkSharingMode input_value)
{
- switch ((VkSharingMode)input_value)
+ switch (input_value)
{
case VK_SHARING_MODE_CONCURRENT:
return "VK_SHARING_MODE_CONCURRENT";
@@ -2671,7 +3102,7 @@ static inline const char* string_VkSharingMode(VkSharingMode input_value)
static inline const char* string_VkComponentSwizzle(VkComponentSwizzle input_value)
{
- switch ((VkComponentSwizzle)input_value)
+ switch (input_value)
{
case VK_COMPONENT_SWIZZLE_A:
return "VK_COMPONENT_SWIZZLE_A";
@@ -2694,7 +3125,7 @@ static inline const char* string_VkComponentSwizzle(VkComponentSwizzle input_val
static inline const char* string_VkImageViewCreateFlagBits(VkImageViewCreateFlagBits input_value)
{
- switch ((VkImageViewCreateFlagBits)input_value)
+ switch (input_value)
{
case VK_IMAGE_VIEW_CREATE_FRAGMENT_DENSITY_MAP_DEFERRED_BIT_EXT:
return "VK_IMAGE_VIEW_CREATE_FRAGMENT_DENSITY_MAP_DEFERRED_BIT_EXT";
@@ -2712,7 +3143,7 @@ static inline std::string string_VkImageViewCreateFlags(VkImageViewCreateFlags i
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkImageViewCreateFlagBits(static_cast<VkImageViewCreateFlagBits>(1 << index)));
+ ret.append(string_VkImageViewCreateFlagBits(static_cast<VkImageViewCreateFlagBits>(1U << index)));
}
++index;
input_value >>= 1;
@@ -2723,7 +3154,7 @@ static inline std::string string_VkImageViewCreateFlags(VkImageViewCreateFlags i
static inline const char* string_VkImageViewType(VkImageViewType input_value)
{
- switch ((VkImageViewType)input_value)
+ switch (input_value)
{
case VK_IMAGE_VIEW_TYPE_1D:
return "VK_IMAGE_VIEW_TYPE_1D";
@@ -2746,7 +3177,7 @@ static inline const char* string_VkImageViewType(VkImageViewType input_value)
static inline const char* string_VkPipelineCacheCreateFlagBits(VkPipelineCacheCreateFlagBits input_value)
{
- switch ((VkPipelineCacheCreateFlagBits)input_value)
+ switch (input_value)
{
case VK_PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT_EXT:
return "VK_PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT_EXT";
@@ -2762,7 +3193,7 @@ static inline std::string string_VkPipelineCacheCreateFlags(VkPipelineCacheCreat
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkPipelineCacheCreateFlagBits(static_cast<VkPipelineCacheCreateFlagBits>(1 << index)));
+ ret.append(string_VkPipelineCacheCreateFlagBits(static_cast<VkPipelineCacheCreateFlagBits>(1U << index)));
}
++index;
input_value >>= 1;
@@ -2773,7 +3204,7 @@ static inline std::string string_VkPipelineCacheCreateFlags(VkPipelineCacheCreat
static inline const char* string_VkBlendFactor(VkBlendFactor input_value)
{
- switch ((VkBlendFactor)input_value)
+ switch (input_value)
{
case VK_BLEND_FACTOR_CONSTANT_ALPHA:
return "VK_BLEND_FACTOR_CONSTANT_ALPHA";
@@ -2820,7 +3251,7 @@ static inline const char* string_VkBlendFactor(VkBlendFactor input_value)
static inline const char* string_VkBlendOp(VkBlendOp input_value)
{
- switch ((VkBlendOp)input_value)
+ switch (input_value)
{
case VK_BLEND_OP_ADD:
return "VK_BLEND_OP_ADD";
@@ -2931,7 +3362,7 @@ static inline const char* string_VkBlendOp(VkBlendOp input_value)
static inline const char* string_VkColorComponentFlagBits(VkColorComponentFlagBits input_value)
{
- switch ((VkColorComponentFlagBits)input_value)
+ switch (input_value)
{
case VK_COLOR_COMPONENT_A_BIT:
return "VK_COLOR_COMPONENT_A_BIT";
@@ -2953,7 +3384,7 @@ static inline std::string string_VkColorComponentFlags(VkColorComponentFlags inp
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkColorComponentFlagBits(static_cast<VkColorComponentFlagBits>(1 << index)));
+ ret.append(string_VkColorComponentFlagBits(static_cast<VkColorComponentFlagBits>(1U << index)));
}
++index;
input_value >>= 1;
@@ -2964,7 +3395,7 @@ static inline std::string string_VkColorComponentFlags(VkColorComponentFlags inp
static inline const char* string_VkCompareOp(VkCompareOp input_value)
{
- switch ((VkCompareOp)input_value)
+ switch (input_value)
{
case VK_COMPARE_OP_ALWAYS:
return "VK_COMPARE_OP_ALWAYS";
@@ -2989,7 +3420,7 @@ static inline const char* string_VkCompareOp(VkCompareOp input_value)
static inline const char* string_VkPipelineCreateFlagBits(VkPipelineCreateFlagBits input_value)
{
- switch ((VkPipelineCreateFlagBits)input_value)
+ switch (input_value)
{
case VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT:
return "VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT";
@@ -3013,6 +3444,8 @@ static inline const char* string_VkPipelineCreateFlagBits(VkPipelineCreateFlagBi
return "VK_PIPELINE_CREATE_INDIRECT_BINDABLE_BIT_NV";
case VK_PIPELINE_CREATE_LIBRARY_BIT_KHR:
return "VK_PIPELINE_CREATE_LIBRARY_BIT_KHR";
+ case VK_PIPELINE_CREATE_RAY_TRACING_ALLOW_MOTION_BIT_NV:
+ return "VK_PIPELINE_CREATE_RAY_TRACING_ALLOW_MOTION_BIT_NV";
case VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR:
return "VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR";
case VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR:
@@ -3041,7 +3474,7 @@ static inline std::string string_VkPipelineCreateFlags(VkPipelineCreateFlags inp
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkPipelineCreateFlagBits(static_cast<VkPipelineCreateFlagBits>(1 << index)));
+ ret.append(string_VkPipelineCreateFlagBits(static_cast<VkPipelineCreateFlagBits>(1U << index)));
}
++index;
input_value >>= 1;
@@ -3052,7 +3485,7 @@ static inline std::string string_VkPipelineCreateFlags(VkPipelineCreateFlags inp
static inline const char* string_VkPipelineShaderStageCreateFlagBits(VkPipelineShaderStageCreateFlagBits input_value)
{
- switch ((VkPipelineShaderStageCreateFlagBits)input_value)
+ switch (input_value)
{
case VK_PIPELINE_SHADER_STAGE_CREATE_ALLOW_VARYING_SUBGROUP_SIZE_BIT_EXT:
return "VK_PIPELINE_SHADER_STAGE_CREATE_ALLOW_VARYING_SUBGROUP_SIZE_BIT_EXT";
@@ -3070,7 +3503,7 @@ static inline std::string string_VkPipelineShaderStageCreateFlags(VkPipelineShad
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkPipelineShaderStageCreateFlagBits(static_cast<VkPipelineShaderStageCreateFlagBits>(1 << index)));
+ ret.append(string_VkPipelineShaderStageCreateFlagBits(static_cast<VkPipelineShaderStageCreateFlagBits>(1U << index)));
}
++index;
input_value >>= 1;
@@ -3081,7 +3514,7 @@ static inline std::string string_VkPipelineShaderStageCreateFlags(VkPipelineShad
static inline const char* string_VkShaderStageFlagBits(VkShaderStageFlagBits input_value)
{
- switch ((VkShaderStageFlagBits)input_value)
+ switch (input_value)
{
case VK_SHADER_STAGE_ALL:
return "VK_SHADER_STAGE_ALL";
@@ -3107,6 +3540,8 @@ static inline const char* string_VkShaderStageFlagBits(VkShaderStageFlagBits inp
return "VK_SHADER_STAGE_MISS_BIT_KHR";
case VK_SHADER_STAGE_RAYGEN_BIT_KHR:
return "VK_SHADER_STAGE_RAYGEN_BIT_KHR";
+ case VK_SHADER_STAGE_SUBPASS_SHADING_BIT_HUAWEI:
+ return "VK_SHADER_STAGE_SUBPASS_SHADING_BIT_HUAWEI";
case VK_SHADER_STAGE_TASK_BIT_NV:
return "VK_SHADER_STAGE_TASK_BIT_NV";
case VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT:
@@ -3127,7 +3562,7 @@ static inline std::string string_VkShaderStageFlags(VkShaderStageFlags input_val
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkShaderStageFlagBits(static_cast<VkShaderStageFlagBits>(1 << index)));
+ ret.append(string_VkShaderStageFlagBits(static_cast<VkShaderStageFlagBits>(1U << index)));
}
++index;
input_value >>= 1;
@@ -3138,7 +3573,7 @@ static inline std::string string_VkShaderStageFlags(VkShaderStageFlags input_val
static inline const char* string_VkCullModeFlagBits(VkCullModeFlagBits input_value)
{
- switch ((VkCullModeFlagBits)input_value)
+ switch (input_value)
{
case VK_CULL_MODE_BACK_BIT:
return "VK_CULL_MODE_BACK_BIT";
@@ -3160,7 +3595,7 @@ static inline std::string string_VkCullModeFlags(VkCullModeFlags input_value)
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkCullModeFlagBits(static_cast<VkCullModeFlagBits>(1 << index)));
+ ret.append(string_VkCullModeFlagBits(static_cast<VkCullModeFlagBits>(1U << index)));
}
++index;
input_value >>= 1;
@@ -3171,14 +3606,18 @@ static inline std::string string_VkCullModeFlags(VkCullModeFlags input_value)
static inline const char* string_VkDynamicState(VkDynamicState input_value)
{
- switch ((VkDynamicState)input_value)
+ switch (input_value)
{
case VK_DYNAMIC_STATE_BLEND_CONSTANTS:
return "VK_DYNAMIC_STATE_BLEND_CONSTANTS";
+ case VK_DYNAMIC_STATE_COLOR_WRITE_ENABLE_EXT:
+ return "VK_DYNAMIC_STATE_COLOR_WRITE_ENABLE_EXT";
case VK_DYNAMIC_STATE_CULL_MODE_EXT:
return "VK_DYNAMIC_STATE_CULL_MODE_EXT";
case VK_DYNAMIC_STATE_DEPTH_BIAS:
return "VK_DYNAMIC_STATE_DEPTH_BIAS";
+ case VK_DYNAMIC_STATE_DEPTH_BIAS_ENABLE_EXT:
+ return "VK_DYNAMIC_STATE_DEPTH_BIAS_ENABLE_EXT";
case VK_DYNAMIC_STATE_DEPTH_BOUNDS:
return "VK_DYNAMIC_STATE_DEPTH_BOUNDS";
case VK_DYNAMIC_STATE_DEPTH_BOUNDS_TEST_ENABLE_EXT:
@@ -3201,8 +3640,16 @@ static inline const char* string_VkDynamicState(VkDynamicState input_value)
return "VK_DYNAMIC_STATE_LINE_STIPPLE_EXT";
case VK_DYNAMIC_STATE_LINE_WIDTH:
return "VK_DYNAMIC_STATE_LINE_WIDTH";
+ case VK_DYNAMIC_STATE_LOGIC_OP_EXT:
+ return "VK_DYNAMIC_STATE_LOGIC_OP_EXT";
+ case VK_DYNAMIC_STATE_PATCH_CONTROL_POINTS_EXT:
+ return "VK_DYNAMIC_STATE_PATCH_CONTROL_POINTS_EXT";
+ case VK_DYNAMIC_STATE_PRIMITIVE_RESTART_ENABLE_EXT:
+ return "VK_DYNAMIC_STATE_PRIMITIVE_RESTART_ENABLE_EXT";
case VK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGY_EXT:
return "VK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGY_EXT";
+ case VK_DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLE_EXT:
+ return "VK_DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLE_EXT";
case VK_DYNAMIC_STATE_RAY_TRACING_PIPELINE_STACK_SIZE_KHR:
return "VK_DYNAMIC_STATE_RAY_TRACING_PIPELINE_STACK_SIZE_KHR";
case VK_DYNAMIC_STATE_SAMPLE_LOCATIONS_EXT:
@@ -3223,6 +3670,8 @@ static inline const char* string_VkDynamicState(VkDynamicState input_value)
return "VK_DYNAMIC_STATE_STENCIL_WRITE_MASK";
case VK_DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE_EXT:
return "VK_DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE_EXT";
+ case VK_DYNAMIC_STATE_VERTEX_INPUT_EXT:
+ return "VK_DYNAMIC_STATE_VERTEX_INPUT_EXT";
case VK_DYNAMIC_STATE_VIEWPORT:
return "VK_DYNAMIC_STATE_VIEWPORT";
case VK_DYNAMIC_STATE_VIEWPORT_COARSE_SAMPLE_ORDER_NV:
@@ -3240,7 +3689,7 @@ static inline const char* string_VkDynamicState(VkDynamicState input_value)
static inline const char* string_VkFrontFace(VkFrontFace input_value)
{
- switch ((VkFrontFace)input_value)
+ switch (input_value)
{
case VK_FRONT_FACE_CLOCKWISE:
return "VK_FRONT_FACE_CLOCKWISE";
@@ -3253,7 +3702,7 @@ static inline const char* string_VkFrontFace(VkFrontFace input_value)
static inline const char* string_VkVertexInputRate(VkVertexInputRate input_value)
{
- switch ((VkVertexInputRate)input_value)
+ switch (input_value)
{
case VK_VERTEX_INPUT_RATE_INSTANCE:
return "VK_VERTEX_INPUT_RATE_INSTANCE";
@@ -3266,7 +3715,7 @@ static inline const char* string_VkVertexInputRate(VkVertexInputRate input_value
static inline const char* string_VkPrimitiveTopology(VkPrimitiveTopology input_value)
{
- switch ((VkPrimitiveTopology)input_value)
+ switch (input_value)
{
case VK_PRIMITIVE_TOPOLOGY_LINE_LIST:
return "VK_PRIMITIVE_TOPOLOGY_LINE_LIST";
@@ -3297,7 +3746,7 @@ static inline const char* string_VkPrimitiveTopology(VkPrimitiveTopology input_v
static inline const char* string_VkPolygonMode(VkPolygonMode input_value)
{
- switch ((VkPolygonMode)input_value)
+ switch (input_value)
{
case VK_POLYGON_MODE_FILL:
return "VK_POLYGON_MODE_FILL";
@@ -3314,7 +3763,7 @@ static inline const char* string_VkPolygonMode(VkPolygonMode input_value)
static inline const char* string_VkStencilOp(VkStencilOp input_value)
{
- switch ((VkStencilOp)input_value)
+ switch (input_value)
{
case VK_STENCIL_OP_DECREMENT_AND_CLAMP:
return "VK_STENCIL_OP_DECREMENT_AND_CLAMP";
@@ -3339,7 +3788,7 @@ static inline const char* string_VkStencilOp(VkStencilOp input_value)
static inline const char* string_VkLogicOp(VkLogicOp input_value)
{
- switch ((VkLogicOp)input_value)
+ switch (input_value)
{
case VK_LOGIC_OP_AND:
return "VK_LOGIC_OP_AND";
@@ -3380,7 +3829,7 @@ static inline const char* string_VkLogicOp(VkLogicOp input_value)
static inline const char* string_VkBorderColor(VkBorderColor input_value)
{
- switch ((VkBorderColor)input_value)
+ switch (input_value)
{
case VK_BORDER_COLOR_FLOAT_CUSTOM_EXT:
return "VK_BORDER_COLOR_FLOAT_CUSTOM_EXT";
@@ -3405,7 +3854,7 @@ static inline const char* string_VkBorderColor(VkBorderColor input_value)
static inline const char* string_VkFilter(VkFilter input_value)
{
- switch ((VkFilter)input_value)
+ switch (input_value)
{
case VK_FILTER_CUBIC_IMG:
return "VK_FILTER_CUBIC_IMG";
@@ -3420,7 +3869,7 @@ static inline const char* string_VkFilter(VkFilter input_value)
static inline const char* string_VkSamplerAddressMode(VkSamplerAddressMode input_value)
{
- switch ((VkSamplerAddressMode)input_value)
+ switch (input_value)
{
case VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER:
return "VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER";
@@ -3439,7 +3888,7 @@ static inline const char* string_VkSamplerAddressMode(VkSamplerAddressMode input
static inline const char* string_VkSamplerCreateFlagBits(VkSamplerCreateFlagBits input_value)
{
- switch ((VkSamplerCreateFlagBits)input_value)
+ switch (input_value)
{
case VK_SAMPLER_CREATE_SUBSAMPLED_BIT_EXT:
return "VK_SAMPLER_CREATE_SUBSAMPLED_BIT_EXT";
@@ -3457,7 +3906,7 @@ static inline std::string string_VkSamplerCreateFlags(VkSamplerCreateFlags input
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkSamplerCreateFlagBits(static_cast<VkSamplerCreateFlagBits>(1 << index)));
+ ret.append(string_VkSamplerCreateFlagBits(static_cast<VkSamplerCreateFlagBits>(1U << index)));
}
++index;
input_value >>= 1;
@@ -3468,7 +3917,7 @@ static inline std::string string_VkSamplerCreateFlags(VkSamplerCreateFlags input
static inline const char* string_VkSamplerMipmapMode(VkSamplerMipmapMode input_value)
{
- switch ((VkSamplerMipmapMode)input_value)
+ switch (input_value)
{
case VK_SAMPLER_MIPMAP_MODE_LINEAR:
return "VK_SAMPLER_MIPMAP_MODE_LINEAR";
@@ -3481,10 +3930,12 @@ static inline const char* string_VkSamplerMipmapMode(VkSamplerMipmapMode input_v
static inline const char* string_VkDescriptorPoolCreateFlagBits(VkDescriptorPoolCreateFlagBits input_value)
{
- switch ((VkDescriptorPoolCreateFlagBits)input_value)
+ switch (input_value)
{
case VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT:
return "VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT";
+ case VK_DESCRIPTOR_POOL_CREATE_HOST_ONLY_BIT_VALVE:
+ return "VK_DESCRIPTOR_POOL_CREATE_HOST_ONLY_BIT_VALVE";
case VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT:
return "VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT";
default:
@@ -3499,7 +3950,7 @@ static inline std::string string_VkDescriptorPoolCreateFlags(VkDescriptorPoolCre
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkDescriptorPoolCreateFlagBits(static_cast<VkDescriptorPoolCreateFlagBits>(1 << index)));
+ ret.append(string_VkDescriptorPoolCreateFlagBits(static_cast<VkDescriptorPoolCreateFlagBits>(1U << index)));
}
++index;
input_value >>= 1;
@@ -3510,7 +3961,7 @@ static inline std::string string_VkDescriptorPoolCreateFlags(VkDescriptorPoolCre
static inline const char* string_VkDescriptorType(VkDescriptorType input_value)
{
- switch ((VkDescriptorType)input_value)
+ switch (input_value)
{
case VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR:
return "VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR";
@@ -3522,6 +3973,8 @@ static inline const char* string_VkDescriptorType(VkDescriptorType input_value)
return "VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT";
case VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT:
return "VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT";
+ case VK_DESCRIPTOR_TYPE_MUTABLE_VALVE:
+ return "VK_DESCRIPTOR_TYPE_MUTABLE_VALVE";
case VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE:
return "VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE";
case VK_DESCRIPTOR_TYPE_SAMPLER:
@@ -3547,8 +4000,10 @@ static inline const char* string_VkDescriptorType(VkDescriptorType input_value)
static inline const char* string_VkDescriptorSetLayoutCreateFlagBits(VkDescriptorSetLayoutCreateFlagBits input_value)
{
- switch ((VkDescriptorSetLayoutCreateFlagBits)input_value)
+ switch (input_value)
{
+ case VK_DESCRIPTOR_SET_LAYOUT_CREATE_HOST_ONLY_POOL_BIT_VALVE:
+ return "VK_DESCRIPTOR_SET_LAYOUT_CREATE_HOST_ONLY_POOL_BIT_VALVE";
case VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR:
return "VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR";
case VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT:
@@ -3565,7 +4020,7 @@ static inline std::string string_VkDescriptorSetLayoutCreateFlags(VkDescriptorSe
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkDescriptorSetLayoutCreateFlagBits(static_cast<VkDescriptorSetLayoutCreateFlagBits>(1 << index)));
+ ret.append(string_VkDescriptorSetLayoutCreateFlagBits(static_cast<VkDescriptorSetLayoutCreateFlagBits>(1U << index)));
}
++index;
input_value >>= 1;
@@ -3576,7 +4031,7 @@ static inline std::string string_VkDescriptorSetLayoutCreateFlags(VkDescriptorSe
static inline const char* string_VkAttachmentDescriptionFlagBits(VkAttachmentDescriptionFlagBits input_value)
{
- switch ((VkAttachmentDescriptionFlagBits)input_value)
+ switch (input_value)
{
case VK_ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT:
return "VK_ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT";
@@ -3592,7 +4047,7 @@ static inline std::string string_VkAttachmentDescriptionFlags(VkAttachmentDescri
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkAttachmentDescriptionFlagBits(static_cast<VkAttachmentDescriptionFlagBits>(1 << index)));
+ ret.append(string_VkAttachmentDescriptionFlagBits(static_cast<VkAttachmentDescriptionFlagBits>(1U << index)));
}
++index;
input_value >>= 1;
@@ -3603,7 +4058,7 @@ static inline std::string string_VkAttachmentDescriptionFlags(VkAttachmentDescri
static inline const char* string_VkAttachmentLoadOp(VkAttachmentLoadOp input_value)
{
- switch ((VkAttachmentLoadOp)input_value)
+ switch (input_value)
{
case VK_ATTACHMENT_LOAD_OP_CLEAR:
return "VK_ATTACHMENT_LOAD_OP_CLEAR";
@@ -3618,7 +4073,7 @@ static inline const char* string_VkAttachmentLoadOp(VkAttachmentLoadOp input_val
static inline const char* string_VkAttachmentStoreOp(VkAttachmentStoreOp input_value)
{
- switch ((VkAttachmentStoreOp)input_value)
+ switch (input_value)
{
case VK_ATTACHMENT_STORE_OP_DONT_CARE:
return "VK_ATTACHMENT_STORE_OP_DONT_CARE";
@@ -3633,7 +4088,7 @@ static inline const char* string_VkAttachmentStoreOp(VkAttachmentStoreOp input_v
static inline const char* string_VkDependencyFlagBits(VkDependencyFlagBits input_value)
{
- switch ((VkDependencyFlagBits)input_value)
+ switch (input_value)
{
case VK_DEPENDENCY_BY_REGION_BIT:
return "VK_DEPENDENCY_BY_REGION_BIT";
@@ -3653,7 +4108,7 @@ static inline std::string string_VkDependencyFlags(VkDependencyFlags input_value
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkDependencyFlagBits(static_cast<VkDependencyFlagBits>(1 << index)));
+ ret.append(string_VkDependencyFlagBits(static_cast<VkDependencyFlagBits>(1U << index)));
}
++index;
input_value >>= 1;
@@ -3664,7 +4119,7 @@ static inline std::string string_VkDependencyFlags(VkDependencyFlags input_value
static inline const char* string_VkFramebufferCreateFlagBits(VkFramebufferCreateFlagBits input_value)
{
- switch ((VkFramebufferCreateFlagBits)input_value)
+ switch (input_value)
{
case VK_FRAMEBUFFER_CREATE_IMAGELESS_BIT:
return "VK_FRAMEBUFFER_CREATE_IMAGELESS_BIT";
@@ -3680,7 +4135,7 @@ static inline std::string string_VkFramebufferCreateFlags(VkFramebufferCreateFla
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkFramebufferCreateFlagBits(static_cast<VkFramebufferCreateFlagBits>(1 << index)));
+ ret.append(string_VkFramebufferCreateFlagBits(static_cast<VkFramebufferCreateFlagBits>(1U << index)));
}
++index;
input_value >>= 1;
@@ -3691,7 +4146,7 @@ static inline std::string string_VkFramebufferCreateFlags(VkFramebufferCreateFla
static inline const char* string_VkPipelineBindPoint(VkPipelineBindPoint input_value)
{
- switch ((VkPipelineBindPoint)input_value)
+ switch (input_value)
{
case VK_PIPELINE_BIND_POINT_COMPUTE:
return "VK_PIPELINE_BIND_POINT_COMPUTE";
@@ -3699,6 +4154,8 @@ static inline const char* string_VkPipelineBindPoint(VkPipelineBindPoint input_v
return "VK_PIPELINE_BIND_POINT_GRAPHICS";
case VK_PIPELINE_BIND_POINT_RAY_TRACING_KHR:
return "VK_PIPELINE_BIND_POINT_RAY_TRACING_KHR";
+ case VK_PIPELINE_BIND_POINT_SUBPASS_SHADING_HUAWEI:
+ return "VK_PIPELINE_BIND_POINT_SUBPASS_SHADING_HUAWEI";
default:
return "Unhandled VkPipelineBindPoint";
}
@@ -3706,7 +4163,7 @@ static inline const char* string_VkPipelineBindPoint(VkPipelineBindPoint input_v
static inline const char* string_VkRenderPassCreateFlagBits(VkRenderPassCreateFlagBits input_value)
{
- switch ((VkRenderPassCreateFlagBits)input_value)
+ switch (input_value)
{
case VK_RENDER_PASS_CREATE_TRANSFORM_BIT_QCOM:
return "VK_RENDER_PASS_CREATE_TRANSFORM_BIT_QCOM";
@@ -3722,7 +4179,7 @@ static inline std::string string_VkRenderPassCreateFlags(VkRenderPassCreateFlags
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkRenderPassCreateFlagBits(static_cast<VkRenderPassCreateFlagBits>(1 << index)));
+ ret.append(string_VkRenderPassCreateFlagBits(static_cast<VkRenderPassCreateFlagBits>(1U << index)));
}
++index;
input_value >>= 1;
@@ -3733,7 +4190,7 @@ static inline std::string string_VkRenderPassCreateFlags(VkRenderPassCreateFlags
static inline const char* string_VkSubpassDescriptionFlagBits(VkSubpassDescriptionFlagBits input_value)
{
- switch ((VkSubpassDescriptionFlagBits)input_value)
+ switch (input_value)
{
case VK_SUBPASS_DESCRIPTION_FRAGMENT_REGION_BIT_QCOM:
return "VK_SUBPASS_DESCRIPTION_FRAGMENT_REGION_BIT_QCOM";
@@ -3755,7 +4212,7 @@ static inline std::string string_VkSubpassDescriptionFlags(VkSubpassDescriptionF
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkSubpassDescriptionFlagBits(static_cast<VkSubpassDescriptionFlagBits>(1 << index)));
+ ret.append(string_VkSubpassDescriptionFlagBits(static_cast<VkSubpassDescriptionFlagBits>(1U << index)));
}
++index;
input_value >>= 1;
@@ -3766,7 +4223,7 @@ static inline std::string string_VkSubpassDescriptionFlags(VkSubpassDescriptionF
static inline const char* string_VkCommandPoolCreateFlagBits(VkCommandPoolCreateFlagBits input_value)
{
- switch ((VkCommandPoolCreateFlagBits)input_value)
+ switch (input_value)
{
case VK_COMMAND_POOL_CREATE_PROTECTED_BIT:
return "VK_COMMAND_POOL_CREATE_PROTECTED_BIT";
@@ -3786,7 +4243,7 @@ static inline std::string string_VkCommandPoolCreateFlags(VkCommandPoolCreateFla
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkCommandPoolCreateFlagBits(static_cast<VkCommandPoolCreateFlagBits>(1 << index)));
+ ret.append(string_VkCommandPoolCreateFlagBits(static_cast<VkCommandPoolCreateFlagBits>(1U << index)));
}
++index;
input_value >>= 1;
@@ -3797,7 +4254,7 @@ static inline std::string string_VkCommandPoolCreateFlags(VkCommandPoolCreateFla
static inline const char* string_VkCommandPoolResetFlagBits(VkCommandPoolResetFlagBits input_value)
{
- switch ((VkCommandPoolResetFlagBits)input_value)
+ switch (input_value)
{
case VK_COMMAND_POOL_RESET_RELEASE_RESOURCES_BIT:
return "VK_COMMAND_POOL_RESET_RELEASE_RESOURCES_BIT";
@@ -3813,7 +4270,7 @@ static inline std::string string_VkCommandPoolResetFlags(VkCommandPoolResetFlags
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkCommandPoolResetFlagBits(static_cast<VkCommandPoolResetFlagBits>(1 << index)));
+ ret.append(string_VkCommandPoolResetFlagBits(static_cast<VkCommandPoolResetFlagBits>(1U << index)));
}
++index;
input_value >>= 1;
@@ -3824,7 +4281,7 @@ static inline std::string string_VkCommandPoolResetFlags(VkCommandPoolResetFlags
static inline const char* string_VkCommandBufferLevel(VkCommandBufferLevel input_value)
{
- switch ((VkCommandBufferLevel)input_value)
+ switch (input_value)
{
case VK_COMMAND_BUFFER_LEVEL_PRIMARY:
return "VK_COMMAND_BUFFER_LEVEL_PRIMARY";
@@ -3837,7 +4294,7 @@ static inline const char* string_VkCommandBufferLevel(VkCommandBufferLevel input
static inline const char* string_VkCommandBufferUsageFlagBits(VkCommandBufferUsageFlagBits input_value)
{
- switch ((VkCommandBufferUsageFlagBits)input_value)
+ switch (input_value)
{
case VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT:
return "VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT";
@@ -3857,7 +4314,7 @@ static inline std::string string_VkCommandBufferUsageFlags(VkCommandBufferUsageF
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkCommandBufferUsageFlagBits(static_cast<VkCommandBufferUsageFlagBits>(1 << index)));
+ ret.append(string_VkCommandBufferUsageFlagBits(static_cast<VkCommandBufferUsageFlagBits>(1U << index)));
}
++index;
input_value >>= 1;
@@ -3868,7 +4325,7 @@ static inline std::string string_VkCommandBufferUsageFlags(VkCommandBufferUsageF
static inline const char* string_VkQueryControlFlagBits(VkQueryControlFlagBits input_value)
{
- switch ((VkQueryControlFlagBits)input_value)
+ switch (input_value)
{
case VK_QUERY_CONTROL_PRECISE_BIT:
return "VK_QUERY_CONTROL_PRECISE_BIT";
@@ -3884,7 +4341,7 @@ static inline std::string string_VkQueryControlFlags(VkQueryControlFlags input_v
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkQueryControlFlagBits(static_cast<VkQueryControlFlagBits>(1 << index)));
+ ret.append(string_VkQueryControlFlagBits(static_cast<VkQueryControlFlagBits>(1U << index)));
}
++index;
input_value >>= 1;
@@ -3895,7 +4352,7 @@ static inline std::string string_VkQueryControlFlags(VkQueryControlFlags input_v
static inline const char* string_VkCommandBufferResetFlagBits(VkCommandBufferResetFlagBits input_value)
{
- switch ((VkCommandBufferResetFlagBits)input_value)
+ switch (input_value)
{
case VK_COMMAND_BUFFER_RESET_RELEASE_RESOURCES_BIT:
return "VK_COMMAND_BUFFER_RESET_RELEASE_RESOURCES_BIT";
@@ -3911,7 +4368,7 @@ static inline std::string string_VkCommandBufferResetFlags(VkCommandBufferResetF
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkCommandBufferResetFlagBits(static_cast<VkCommandBufferResetFlagBits>(1 << index)));
+ ret.append(string_VkCommandBufferResetFlagBits(static_cast<VkCommandBufferResetFlagBits>(1U << index)));
}
++index;
input_value >>= 1;
@@ -3922,7 +4379,7 @@ static inline std::string string_VkCommandBufferResetFlags(VkCommandBufferResetF
static inline const char* string_VkIndexType(VkIndexType input_value)
{
- switch ((VkIndexType)input_value)
+ switch (input_value)
{
case VK_INDEX_TYPE_NONE_KHR:
return "VK_INDEX_TYPE_NONE_KHR";
@@ -3939,7 +4396,7 @@ static inline const char* string_VkIndexType(VkIndexType input_value)
static inline const char* string_VkStencilFaceFlagBits(VkStencilFaceFlagBits input_value)
{
- switch ((VkStencilFaceFlagBits)input_value)
+ switch (input_value)
{
case VK_STENCIL_FACE_BACK_BIT:
return "VK_STENCIL_FACE_BACK_BIT";
@@ -3959,7 +4416,7 @@ static inline std::string string_VkStencilFaceFlags(VkStencilFaceFlags input_val
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkStencilFaceFlagBits(static_cast<VkStencilFaceFlagBits>(1 << index)));
+ ret.append(string_VkStencilFaceFlagBits(static_cast<VkStencilFaceFlagBits>(1U << index)));
}
++index;
input_value >>= 1;
@@ -3970,7 +4427,7 @@ static inline std::string string_VkStencilFaceFlags(VkStencilFaceFlags input_val
static inline const char* string_VkSubpassContents(VkSubpassContents input_value)
{
- switch ((VkSubpassContents)input_value)
+ switch (input_value)
{
case VK_SUBPASS_CONTENTS_INLINE:
return "VK_SUBPASS_CONTENTS_INLINE";
@@ -3983,7 +4440,7 @@ static inline const char* string_VkSubpassContents(VkSubpassContents input_value
static inline const char* string_VkSubgroupFeatureFlagBits(VkSubgroupFeatureFlagBits input_value)
{
- switch ((VkSubgroupFeatureFlagBits)input_value)
+ switch (input_value)
{
case VK_SUBGROUP_FEATURE_ARITHMETIC_BIT:
return "VK_SUBGROUP_FEATURE_ARITHMETIC_BIT";
@@ -4015,7 +4472,7 @@ static inline std::string string_VkSubgroupFeatureFlags(VkSubgroupFeatureFlags i
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkSubgroupFeatureFlagBits(static_cast<VkSubgroupFeatureFlagBits>(1 << index)));
+ ret.append(string_VkSubgroupFeatureFlagBits(static_cast<VkSubgroupFeatureFlagBits>(1U << index)));
}
++index;
input_value >>= 1;
@@ -4026,7 +4483,7 @@ static inline std::string string_VkSubgroupFeatureFlags(VkSubgroupFeatureFlags i
static inline const char* string_VkPeerMemoryFeatureFlagBits(VkPeerMemoryFeatureFlagBits input_value)
{
- switch ((VkPeerMemoryFeatureFlagBits)input_value)
+ switch (input_value)
{
case VK_PEER_MEMORY_FEATURE_COPY_DST_BIT:
return "VK_PEER_MEMORY_FEATURE_COPY_DST_BIT";
@@ -4048,7 +4505,7 @@ static inline std::string string_VkPeerMemoryFeatureFlags(VkPeerMemoryFeatureFla
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkPeerMemoryFeatureFlagBits(static_cast<VkPeerMemoryFeatureFlagBits>(1 << index)));
+ ret.append(string_VkPeerMemoryFeatureFlagBits(static_cast<VkPeerMemoryFeatureFlagBits>(1U << index)));
}
++index;
input_value >>= 1;
@@ -4059,7 +4516,7 @@ static inline std::string string_VkPeerMemoryFeatureFlags(VkPeerMemoryFeatureFla
static inline const char* string_VkMemoryAllocateFlagBits(VkMemoryAllocateFlagBits input_value)
{
- switch ((VkMemoryAllocateFlagBits)input_value)
+ switch (input_value)
{
case VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT:
return "VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT";
@@ -4079,7 +4536,7 @@ static inline std::string string_VkMemoryAllocateFlags(VkMemoryAllocateFlags inp
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkMemoryAllocateFlagBits(static_cast<VkMemoryAllocateFlagBits>(1 << index)));
+ ret.append(string_VkMemoryAllocateFlagBits(static_cast<VkMemoryAllocateFlagBits>(1U << index)));
}
++index;
input_value >>= 1;
@@ -4090,7 +4547,7 @@ static inline std::string string_VkMemoryAllocateFlags(VkMemoryAllocateFlags inp
static inline const char* string_VkPointClippingBehavior(VkPointClippingBehavior input_value)
{
- switch ((VkPointClippingBehavior)input_value)
+ switch (input_value)
{
case VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES:
return "VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES";
@@ -4103,7 +4560,7 @@ static inline const char* string_VkPointClippingBehavior(VkPointClippingBehavior
static inline const char* string_VkTessellationDomainOrigin(VkTessellationDomainOrigin input_value)
{
- switch ((VkTessellationDomainOrigin)input_value)
+ switch (input_value)
{
case VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT:
return "VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT";
@@ -4116,7 +4573,7 @@ static inline const char* string_VkTessellationDomainOrigin(VkTessellationDomain
static inline const char* string_VkSamplerYcbcrModelConversion(VkSamplerYcbcrModelConversion input_value)
{
- switch ((VkSamplerYcbcrModelConversion)input_value)
+ switch (input_value)
{
case VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY:
return "VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY";
@@ -4135,7 +4592,7 @@ static inline const char* string_VkSamplerYcbcrModelConversion(VkSamplerYcbcrMod
static inline const char* string_VkSamplerYcbcrRange(VkSamplerYcbcrRange input_value)
{
- switch ((VkSamplerYcbcrRange)input_value)
+ switch (input_value)
{
case VK_SAMPLER_YCBCR_RANGE_ITU_FULL:
return "VK_SAMPLER_YCBCR_RANGE_ITU_FULL";
@@ -4148,7 +4605,7 @@ static inline const char* string_VkSamplerYcbcrRange(VkSamplerYcbcrRange input_v
static inline const char* string_VkChromaLocation(VkChromaLocation input_value)
{
- switch ((VkChromaLocation)input_value)
+ switch (input_value)
{
case VK_CHROMA_LOCATION_COSITED_EVEN:
return "VK_CHROMA_LOCATION_COSITED_EVEN";
@@ -4161,7 +4618,7 @@ static inline const char* string_VkChromaLocation(VkChromaLocation input_value)
static inline const char* string_VkDescriptorUpdateTemplateType(VkDescriptorUpdateTemplateType input_value)
{
- switch ((VkDescriptorUpdateTemplateType)input_value)
+ switch (input_value)
{
case VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET:
return "VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET";
@@ -4174,7 +4631,7 @@ static inline const char* string_VkDescriptorUpdateTemplateType(VkDescriptorUpda
static inline const char* string_VkExternalMemoryHandleTypeFlagBits(VkExternalMemoryHandleTypeFlagBits input_value)
{
- switch ((VkExternalMemoryHandleTypeFlagBits)input_value)
+ switch (input_value)
{
case VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID:
return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID";
@@ -4198,6 +4655,8 @@ static inline const char* string_VkExternalMemoryHandleTypeFlagBits(VkExternalMe
return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT";
case VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT:
return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT";
+ case VK_EXTERNAL_MEMORY_HANDLE_TYPE_ZIRCON_VMO_BIT_FUCHSIA:
+ return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_ZIRCON_VMO_BIT_FUCHSIA";
default:
return "Unhandled VkExternalMemoryHandleTypeFlagBits";
}
@@ -4210,7 +4669,7 @@ static inline std::string string_VkExternalMemoryHandleTypeFlags(VkExternalMemor
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkExternalMemoryHandleTypeFlagBits(static_cast<VkExternalMemoryHandleTypeFlagBits>(1 << index)));
+ ret.append(string_VkExternalMemoryHandleTypeFlagBits(static_cast<VkExternalMemoryHandleTypeFlagBits>(1U << index)));
}
++index;
input_value >>= 1;
@@ -4221,7 +4680,7 @@ static inline std::string string_VkExternalMemoryHandleTypeFlags(VkExternalMemor
static inline const char* string_VkExternalMemoryFeatureFlagBits(VkExternalMemoryFeatureFlagBits input_value)
{
- switch ((VkExternalMemoryFeatureFlagBits)input_value)
+ switch (input_value)
{
case VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT:
return "VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT";
@@ -4241,7 +4700,7 @@ static inline std::string string_VkExternalMemoryFeatureFlags(VkExternalMemoryFe
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkExternalMemoryFeatureFlagBits(static_cast<VkExternalMemoryFeatureFlagBits>(1 << index)));
+ ret.append(string_VkExternalMemoryFeatureFlagBits(static_cast<VkExternalMemoryFeatureFlagBits>(1U << index)));
}
++index;
input_value >>= 1;
@@ -4252,7 +4711,7 @@ static inline std::string string_VkExternalMemoryFeatureFlags(VkExternalMemoryFe
static inline const char* string_VkExternalFenceHandleTypeFlagBits(VkExternalFenceHandleTypeFlagBits input_value)
{
- switch ((VkExternalFenceHandleTypeFlagBits)input_value)
+ switch (input_value)
{
case VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT:
return "VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT";
@@ -4274,7 +4733,7 @@ static inline std::string string_VkExternalFenceHandleTypeFlags(VkExternalFenceH
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkExternalFenceHandleTypeFlagBits(static_cast<VkExternalFenceHandleTypeFlagBits>(1 << index)));
+ ret.append(string_VkExternalFenceHandleTypeFlagBits(static_cast<VkExternalFenceHandleTypeFlagBits>(1U << index)));
}
++index;
input_value >>= 1;
@@ -4285,7 +4744,7 @@ static inline std::string string_VkExternalFenceHandleTypeFlags(VkExternalFenceH
static inline const char* string_VkExternalFenceFeatureFlagBits(VkExternalFenceFeatureFlagBits input_value)
{
- switch ((VkExternalFenceFeatureFlagBits)input_value)
+ switch (input_value)
{
case VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT:
return "VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT";
@@ -4303,7 +4762,7 @@ static inline std::string string_VkExternalFenceFeatureFlags(VkExternalFenceFeat
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkExternalFenceFeatureFlagBits(static_cast<VkExternalFenceFeatureFlagBits>(1 << index)));
+ ret.append(string_VkExternalFenceFeatureFlagBits(static_cast<VkExternalFenceFeatureFlagBits>(1U << index)));
}
++index;
input_value >>= 1;
@@ -4314,7 +4773,7 @@ static inline std::string string_VkExternalFenceFeatureFlags(VkExternalFenceFeat
static inline const char* string_VkFenceImportFlagBits(VkFenceImportFlagBits input_value)
{
- switch ((VkFenceImportFlagBits)input_value)
+ switch (input_value)
{
case VK_FENCE_IMPORT_TEMPORARY_BIT:
return "VK_FENCE_IMPORT_TEMPORARY_BIT";
@@ -4330,7 +4789,7 @@ static inline std::string string_VkFenceImportFlags(VkFenceImportFlags input_val
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkFenceImportFlagBits(static_cast<VkFenceImportFlagBits>(1 << index)));
+ ret.append(string_VkFenceImportFlagBits(static_cast<VkFenceImportFlagBits>(1U << index)));
}
++index;
input_value >>= 1;
@@ -4341,7 +4800,7 @@ static inline std::string string_VkFenceImportFlags(VkFenceImportFlags input_val
static inline const char* string_VkSemaphoreImportFlagBits(VkSemaphoreImportFlagBits input_value)
{
- switch ((VkSemaphoreImportFlagBits)input_value)
+ switch (input_value)
{
case VK_SEMAPHORE_IMPORT_TEMPORARY_BIT:
return "VK_SEMAPHORE_IMPORT_TEMPORARY_BIT";
@@ -4357,7 +4816,7 @@ static inline std::string string_VkSemaphoreImportFlags(VkSemaphoreImportFlags i
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkSemaphoreImportFlagBits(static_cast<VkSemaphoreImportFlagBits>(1 << index)));
+ ret.append(string_VkSemaphoreImportFlagBits(static_cast<VkSemaphoreImportFlagBits>(1U << index)));
}
++index;
input_value >>= 1;
@@ -4368,7 +4827,7 @@ static inline std::string string_VkSemaphoreImportFlags(VkSemaphoreImportFlags i
static inline const char* string_VkExternalSemaphoreHandleTypeFlagBits(VkExternalSemaphoreHandleTypeFlagBits input_value)
{
- switch ((VkExternalSemaphoreHandleTypeFlagBits)input_value)
+ switch (input_value)
{
case VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT:
return "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT";
@@ -4380,6 +4839,8 @@ static inline const char* string_VkExternalSemaphoreHandleTypeFlagBits(VkExterna
return "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT";
case VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT:
return "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT";
+ case VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_ZIRCON_EVENT_BIT_FUCHSIA:
+ return "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_ZIRCON_EVENT_BIT_FUCHSIA";
default:
return "Unhandled VkExternalSemaphoreHandleTypeFlagBits";
}
@@ -4392,7 +4853,7 @@ static inline std::string string_VkExternalSemaphoreHandleTypeFlags(VkExternalSe
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkExternalSemaphoreHandleTypeFlagBits(static_cast<VkExternalSemaphoreHandleTypeFlagBits>(1 << index)));
+ ret.append(string_VkExternalSemaphoreHandleTypeFlagBits(static_cast<VkExternalSemaphoreHandleTypeFlagBits>(1U << index)));
}
++index;
input_value >>= 1;
@@ -4403,7 +4864,7 @@ static inline std::string string_VkExternalSemaphoreHandleTypeFlags(VkExternalSe
static inline const char* string_VkExternalSemaphoreFeatureFlagBits(VkExternalSemaphoreFeatureFlagBits input_value)
{
- switch ((VkExternalSemaphoreFeatureFlagBits)input_value)
+ switch (input_value)
{
case VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT:
return "VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT";
@@ -4421,7 +4882,7 @@ static inline std::string string_VkExternalSemaphoreFeatureFlags(VkExternalSemap
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkExternalSemaphoreFeatureFlagBits(static_cast<VkExternalSemaphoreFeatureFlagBits>(1 << index)));
+ ret.append(string_VkExternalSemaphoreFeatureFlagBits(static_cast<VkExternalSemaphoreFeatureFlagBits>(1U << index)));
}
++index;
input_value >>= 1;
@@ -4432,7 +4893,7 @@ static inline std::string string_VkExternalSemaphoreFeatureFlags(VkExternalSemap
static inline const char* string_VkDriverId(VkDriverId input_value)
{
- switch ((VkDriverId)input_value)
+ switch (input_value)
{
case VK_DRIVER_ID_AMD_OPEN_SOURCE:
return "VK_DRIVER_ID_AMD_OPEN_SOURCE";
@@ -4442,6 +4903,8 @@ static inline const char* string_VkDriverId(VkDriverId input_value)
return "VK_DRIVER_ID_ARM_PROPRIETARY";
case VK_DRIVER_ID_BROADCOM_PROPRIETARY:
return "VK_DRIVER_ID_BROADCOM_PROPRIETARY";
+ case VK_DRIVER_ID_COREAVI_PROPRIETARY:
+ return "VK_DRIVER_ID_COREAVI_PROPRIETARY";
case VK_DRIVER_ID_GGP_PROPRIETARY:
return "VK_DRIVER_ID_GGP_PROPRIETARY";
case VK_DRIVER_ID_GOOGLE_SWIFTSHADER:
@@ -4452,6 +4915,8 @@ static inline const char* string_VkDriverId(VkDriverId input_value)
return "VK_DRIVER_ID_INTEL_OPEN_SOURCE_MESA";
case VK_DRIVER_ID_INTEL_PROPRIETARY_WINDOWS:
return "VK_DRIVER_ID_INTEL_PROPRIETARY_WINDOWS";
+ case VK_DRIVER_ID_JUICE_PROPRIETARY:
+ return "VK_DRIVER_ID_JUICE_PROPRIETARY";
case VK_DRIVER_ID_MESA_LLVMPIPE:
return "VK_DRIVER_ID_MESA_LLVMPIPE";
case VK_DRIVER_ID_MESA_RADV:
@@ -4469,7 +4934,7 @@ static inline const char* string_VkDriverId(VkDriverId input_value)
static inline const char* string_VkShaderFloatControlsIndependence(VkShaderFloatControlsIndependence input_value)
{
- switch ((VkShaderFloatControlsIndependence)input_value)
+ switch (input_value)
{
case VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_32_BIT_ONLY:
return "VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_32_BIT_ONLY";
@@ -4484,7 +4949,7 @@ static inline const char* string_VkShaderFloatControlsIndependence(VkShaderFloat
static inline const char* string_VkResolveModeFlagBits(VkResolveModeFlagBits input_value)
{
- switch ((VkResolveModeFlagBits)input_value)
+ switch (input_value)
{
case VK_RESOLVE_MODE_AVERAGE_BIT:
return "VK_RESOLVE_MODE_AVERAGE_BIT";
@@ -4508,7 +4973,7 @@ static inline std::string string_VkResolveModeFlags(VkResolveModeFlags input_val
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkResolveModeFlagBits(static_cast<VkResolveModeFlagBits>(1 << index)));
+ ret.append(string_VkResolveModeFlagBits(static_cast<VkResolveModeFlagBits>(1U << index)));
}
++index;
input_value >>= 1;
@@ -4519,7 +4984,7 @@ static inline std::string string_VkResolveModeFlags(VkResolveModeFlags input_val
static inline const char* string_VkDescriptorBindingFlagBits(VkDescriptorBindingFlagBits input_value)
{
- switch ((VkDescriptorBindingFlagBits)input_value)
+ switch (input_value)
{
case VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT:
return "VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT";
@@ -4541,7 +5006,7 @@ static inline std::string string_VkDescriptorBindingFlags(VkDescriptorBindingFla
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkDescriptorBindingFlagBits(static_cast<VkDescriptorBindingFlagBits>(1 << index)));
+ ret.append(string_VkDescriptorBindingFlagBits(static_cast<VkDescriptorBindingFlagBits>(1U << index)));
}
++index;
input_value >>= 1;
@@ -4552,7 +5017,7 @@ static inline std::string string_VkDescriptorBindingFlags(VkDescriptorBindingFla
static inline const char* string_VkSamplerReductionMode(VkSamplerReductionMode input_value)
{
- switch ((VkSamplerReductionMode)input_value)
+ switch (input_value)
{
case VK_SAMPLER_REDUCTION_MODE_MAX:
return "VK_SAMPLER_REDUCTION_MODE_MAX";
@@ -4567,7 +5032,7 @@ static inline const char* string_VkSamplerReductionMode(VkSamplerReductionMode i
static inline const char* string_VkSemaphoreType(VkSemaphoreType input_value)
{
- switch ((VkSemaphoreType)input_value)
+ switch (input_value)
{
case VK_SEMAPHORE_TYPE_BINARY:
return "VK_SEMAPHORE_TYPE_BINARY";
@@ -4580,7 +5045,7 @@ static inline const char* string_VkSemaphoreType(VkSemaphoreType input_value)
static inline const char* string_VkSemaphoreWaitFlagBits(VkSemaphoreWaitFlagBits input_value)
{
- switch ((VkSemaphoreWaitFlagBits)input_value)
+ switch (input_value)
{
case VK_SEMAPHORE_WAIT_ANY_BIT:
return "VK_SEMAPHORE_WAIT_ANY_BIT";
@@ -4596,7 +5061,7 @@ static inline std::string string_VkSemaphoreWaitFlags(VkSemaphoreWaitFlags input
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkSemaphoreWaitFlagBits(static_cast<VkSemaphoreWaitFlagBits>(1 << index)));
+ ret.append(string_VkSemaphoreWaitFlagBits(static_cast<VkSemaphoreWaitFlagBits>(1U << index)));
}
++index;
input_value >>= 1;
@@ -4607,7 +5072,7 @@ static inline std::string string_VkSemaphoreWaitFlags(VkSemaphoreWaitFlags input
static inline const char* string_VkSurfaceTransformFlagBitsKHR(VkSurfaceTransformFlagBitsKHR input_value)
{
- switch ((VkSurfaceTransformFlagBitsKHR)input_value)
+ switch (input_value)
{
case VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_BIT_KHR:
return "VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_BIT_KHR";
@@ -4639,7 +5104,7 @@ static inline std::string string_VkSurfaceTransformFlagsKHR(VkSurfaceTransformFl
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkSurfaceTransformFlagBitsKHR(static_cast<VkSurfaceTransformFlagBitsKHR>(1 << index)));
+ ret.append(string_VkSurfaceTransformFlagBitsKHR(static_cast<VkSurfaceTransformFlagBitsKHR>(1U << index)));
}
++index;
input_value >>= 1;
@@ -4650,7 +5115,7 @@ static inline std::string string_VkSurfaceTransformFlagsKHR(VkSurfaceTransformFl
static inline const char* string_VkPresentModeKHR(VkPresentModeKHR input_value)
{
- switch ((VkPresentModeKHR)input_value)
+ switch (input_value)
{
case VK_PRESENT_MODE_FIFO_KHR:
return "VK_PRESENT_MODE_FIFO_KHR";
@@ -4671,7 +5136,7 @@ static inline const char* string_VkPresentModeKHR(VkPresentModeKHR input_value)
static inline const char* string_VkColorSpaceKHR(VkColorSpaceKHR input_value)
{
- switch ((VkColorSpaceKHR)input_value)
+ switch (input_value)
{
case VK_COLOR_SPACE_ADOBERGB_LINEAR_EXT:
return "VK_COLOR_SPACE_ADOBERGB_LINEAR_EXT";
@@ -4712,7 +5177,7 @@ static inline const char* string_VkColorSpaceKHR(VkColorSpaceKHR input_value)
static inline const char* string_VkCompositeAlphaFlagBitsKHR(VkCompositeAlphaFlagBitsKHR input_value)
{
- switch ((VkCompositeAlphaFlagBitsKHR)input_value)
+ switch (input_value)
{
case VK_COMPOSITE_ALPHA_INHERIT_BIT_KHR:
return "VK_COMPOSITE_ALPHA_INHERIT_BIT_KHR";
@@ -4734,7 +5199,7 @@ static inline std::string string_VkCompositeAlphaFlagsKHR(VkCompositeAlphaFlagsK
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkCompositeAlphaFlagBitsKHR(static_cast<VkCompositeAlphaFlagBitsKHR>(1 << index)));
+ ret.append(string_VkCompositeAlphaFlagBitsKHR(static_cast<VkCompositeAlphaFlagBitsKHR>(1U << index)));
}
++index;
input_value >>= 1;
@@ -4745,7 +5210,7 @@ static inline std::string string_VkCompositeAlphaFlagsKHR(VkCompositeAlphaFlagsK
static inline const char* string_VkSwapchainCreateFlagBitsKHR(VkSwapchainCreateFlagBitsKHR input_value)
{
- switch ((VkSwapchainCreateFlagBitsKHR)input_value)
+ switch (input_value)
{
case VK_SWAPCHAIN_CREATE_MUTABLE_FORMAT_BIT_KHR:
return "VK_SWAPCHAIN_CREATE_MUTABLE_FORMAT_BIT_KHR";
@@ -4765,7 +5230,7 @@ static inline std::string string_VkSwapchainCreateFlagsKHR(VkSwapchainCreateFlag
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkSwapchainCreateFlagBitsKHR(static_cast<VkSwapchainCreateFlagBitsKHR>(1 << index)));
+ ret.append(string_VkSwapchainCreateFlagBitsKHR(static_cast<VkSwapchainCreateFlagBitsKHR>(1U << index)));
}
++index;
input_value >>= 1;
@@ -4776,7 +5241,7 @@ static inline std::string string_VkSwapchainCreateFlagsKHR(VkSwapchainCreateFlag
static inline const char* string_VkDeviceGroupPresentModeFlagBitsKHR(VkDeviceGroupPresentModeFlagBitsKHR input_value)
{
- switch ((VkDeviceGroupPresentModeFlagBitsKHR)input_value)
+ switch (input_value)
{
case VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHR:
return "VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHR";
@@ -4798,7 +5263,7 @@ static inline std::string string_VkDeviceGroupPresentModeFlagsKHR(VkDeviceGroupP
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkDeviceGroupPresentModeFlagBitsKHR(static_cast<VkDeviceGroupPresentModeFlagBitsKHR>(1 << index)));
+ ret.append(string_VkDeviceGroupPresentModeFlagBitsKHR(static_cast<VkDeviceGroupPresentModeFlagBitsKHR>(1U << index)));
}
++index;
input_value >>= 1;
@@ -4809,7 +5274,7 @@ static inline std::string string_VkDeviceGroupPresentModeFlagsKHR(VkDeviceGroupP
static inline const char* string_VkDisplayPlaneAlphaFlagBitsKHR(VkDisplayPlaneAlphaFlagBitsKHR input_value)
{
- switch ((VkDisplayPlaneAlphaFlagBitsKHR)input_value)
+ switch (input_value)
{
case VK_DISPLAY_PLANE_ALPHA_GLOBAL_BIT_KHR:
return "VK_DISPLAY_PLANE_ALPHA_GLOBAL_BIT_KHR";
@@ -4831,7 +5296,7 @@ static inline std::string string_VkDisplayPlaneAlphaFlagsKHR(VkDisplayPlaneAlpha
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkDisplayPlaneAlphaFlagBitsKHR(static_cast<VkDisplayPlaneAlphaFlagBitsKHR>(1 << index)));
+ ret.append(string_VkDisplayPlaneAlphaFlagBitsKHR(static_cast<VkDisplayPlaneAlphaFlagBitsKHR>(1U << index)));
}
++index;
input_value >>= 1;
@@ -4840,9 +5305,316 @@ static inline std::string string_VkDisplayPlaneAlphaFlagsKHR(VkDisplayPlaneAlpha
return ret;
}
+
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+
+static inline const char* string_VkVideoCodecOperationFlagBitsKHR(VkVideoCodecOperationFlagBitsKHR input_value)
+{
+ switch (input_value)
+ {
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_VIDEO_CODEC_OPERATION_DECODE_H264_BIT_EXT:
+ return "VK_VIDEO_CODEC_OPERATION_DECODE_H264_BIT_EXT";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_VIDEO_CODEC_OPERATION_DECODE_H265_BIT_EXT:
+ return "VK_VIDEO_CODEC_OPERATION_DECODE_H265_BIT_EXT";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_VIDEO_CODEC_OPERATION_ENCODE_H264_BIT_EXT:
+ return "VK_VIDEO_CODEC_OPERATION_ENCODE_H264_BIT_EXT";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+ case VK_VIDEO_CODEC_OPERATION_INVALID_BIT_KHR:
+ return "VK_VIDEO_CODEC_OPERATION_INVALID_BIT_KHR";
+ default:
+ return "Unhandled VkVideoCodecOperationFlagBitsKHR";
+ }
+}
+
+static inline std::string string_VkVideoCodecOperationFlagsKHR(VkVideoCodecOperationFlagsKHR input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkVideoCodecOperationFlagBitsKHR(static_cast<VkVideoCodecOperationFlagBitsKHR>(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkVideoCodecOperationFlagBitsKHR(static_cast<VkVideoCodecOperationFlagBitsKHR>(0)));
+ return ret;
+}
+#endif // VK_ENABLE_BETA_EXTENSIONS
+
+
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+
+static inline const char* string_VkVideoChromaSubsamplingFlagBitsKHR(VkVideoChromaSubsamplingFlagBitsKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_VIDEO_CHROMA_SUBSAMPLING_420_BIT_KHR:
+ return "VK_VIDEO_CHROMA_SUBSAMPLING_420_BIT_KHR";
+ case VK_VIDEO_CHROMA_SUBSAMPLING_422_BIT_KHR:
+ return "VK_VIDEO_CHROMA_SUBSAMPLING_422_BIT_KHR";
+ case VK_VIDEO_CHROMA_SUBSAMPLING_444_BIT_KHR:
+ return "VK_VIDEO_CHROMA_SUBSAMPLING_444_BIT_KHR";
+ case VK_VIDEO_CHROMA_SUBSAMPLING_INVALID_BIT_KHR:
+ return "VK_VIDEO_CHROMA_SUBSAMPLING_INVALID_BIT_KHR";
+ case VK_VIDEO_CHROMA_SUBSAMPLING_MONOCHROME_BIT_KHR:
+ return "VK_VIDEO_CHROMA_SUBSAMPLING_MONOCHROME_BIT_KHR";
+ default:
+ return "Unhandled VkVideoChromaSubsamplingFlagBitsKHR";
+ }
+}
+
+static inline std::string string_VkVideoChromaSubsamplingFlagsKHR(VkVideoChromaSubsamplingFlagsKHR input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkVideoChromaSubsamplingFlagBitsKHR(static_cast<VkVideoChromaSubsamplingFlagBitsKHR>(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkVideoChromaSubsamplingFlagBitsKHR(static_cast<VkVideoChromaSubsamplingFlagBitsKHR>(0)));
+ return ret;
+}
+#endif // VK_ENABLE_BETA_EXTENSIONS
+
+
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+
+static inline const char* string_VkVideoComponentBitDepthFlagBitsKHR(VkVideoComponentBitDepthFlagBitsKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_VIDEO_COMPONENT_BIT_DEPTH_10_BIT_KHR:
+ return "VK_VIDEO_COMPONENT_BIT_DEPTH_10_BIT_KHR";
+ case VK_VIDEO_COMPONENT_BIT_DEPTH_12_BIT_KHR:
+ return "VK_VIDEO_COMPONENT_BIT_DEPTH_12_BIT_KHR";
+ case VK_VIDEO_COMPONENT_BIT_DEPTH_8_BIT_KHR:
+ return "VK_VIDEO_COMPONENT_BIT_DEPTH_8_BIT_KHR";
+ case VK_VIDEO_COMPONENT_BIT_DEPTH_INVALID_KHR:
+ return "VK_VIDEO_COMPONENT_BIT_DEPTH_INVALID_KHR";
+ default:
+ return "Unhandled VkVideoComponentBitDepthFlagBitsKHR";
+ }
+}
+
+static inline std::string string_VkVideoComponentBitDepthFlagsKHR(VkVideoComponentBitDepthFlagsKHR input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkVideoComponentBitDepthFlagBitsKHR(static_cast<VkVideoComponentBitDepthFlagBitsKHR>(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkVideoComponentBitDepthFlagBitsKHR(static_cast<VkVideoComponentBitDepthFlagBitsKHR>(0)));
+ return ret;
+}
+#endif // VK_ENABLE_BETA_EXTENSIONS
+
+
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+
+static inline const char* string_VkVideoCapabilitiesFlagBitsKHR(VkVideoCapabilitiesFlagBitsKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_VIDEO_CAPABILITIES_PROTECTED_CONTENT_BIT_KHR:
+ return "VK_VIDEO_CAPABILITIES_PROTECTED_CONTENT_BIT_KHR";
+ case VK_VIDEO_CAPABILITIES_SEPARATE_REFERENCE_IMAGES_BIT_KHR:
+ return "VK_VIDEO_CAPABILITIES_SEPARATE_REFERENCE_IMAGES_BIT_KHR";
+ default:
+ return "Unhandled VkVideoCapabilitiesFlagBitsKHR";
+ }
+}
+
+static inline std::string string_VkVideoCapabilitiesFlagsKHR(VkVideoCapabilitiesFlagsKHR input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkVideoCapabilitiesFlagBitsKHR(static_cast<VkVideoCapabilitiesFlagBitsKHR>(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkVideoCapabilitiesFlagBitsKHR(static_cast<VkVideoCapabilitiesFlagBitsKHR>(0)));
+ return ret;
+}
+#endif // VK_ENABLE_BETA_EXTENSIONS
+
+
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+
+static inline const char* string_VkVideoSessionCreateFlagBitsKHR(VkVideoSessionCreateFlagBitsKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_VIDEO_SESSION_CREATE_DEFAULT_KHR:
+ return "VK_VIDEO_SESSION_CREATE_DEFAULT_KHR";
+ case VK_VIDEO_SESSION_CREATE_PROTECTED_CONTENT_BIT_KHR:
+ return "VK_VIDEO_SESSION_CREATE_PROTECTED_CONTENT_BIT_KHR";
+ default:
+ return "Unhandled VkVideoSessionCreateFlagBitsKHR";
+ }
+}
+
+static inline std::string string_VkVideoSessionCreateFlagsKHR(VkVideoSessionCreateFlagsKHR input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkVideoSessionCreateFlagBitsKHR(static_cast<VkVideoSessionCreateFlagBitsKHR>(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkVideoSessionCreateFlagBitsKHR(static_cast<VkVideoSessionCreateFlagBitsKHR>(0)));
+ return ret;
+}
+#endif // VK_ENABLE_BETA_EXTENSIONS
+
+
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+
+static inline const char* string_VkVideoCodingControlFlagBitsKHR(VkVideoCodingControlFlagBitsKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_VIDEO_CODING_CONTROL_DEFAULT_KHR:
+ return "VK_VIDEO_CODING_CONTROL_DEFAULT_KHR";
+ case VK_VIDEO_CODING_CONTROL_RESET_BIT_KHR:
+ return "VK_VIDEO_CODING_CONTROL_RESET_BIT_KHR";
+ default:
+ return "Unhandled VkVideoCodingControlFlagBitsKHR";
+ }
+}
+
+static inline std::string string_VkVideoCodingControlFlagsKHR(VkVideoCodingControlFlagsKHR input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkVideoCodingControlFlagBitsKHR(static_cast<VkVideoCodingControlFlagBitsKHR>(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkVideoCodingControlFlagBitsKHR(static_cast<VkVideoCodingControlFlagBitsKHR>(0)));
+ return ret;
+}
+#endif // VK_ENABLE_BETA_EXTENSIONS
+
+
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+
+static inline const char* string_VkVideoCodingQualityPresetFlagBitsKHR(VkVideoCodingQualityPresetFlagBitsKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_VIDEO_CODING_QUALITY_PRESET_DEFAULT_BIT_KHR:
+ return "VK_VIDEO_CODING_QUALITY_PRESET_DEFAULT_BIT_KHR";
+ case VK_VIDEO_CODING_QUALITY_PRESET_NORMAL_BIT_KHR:
+ return "VK_VIDEO_CODING_QUALITY_PRESET_NORMAL_BIT_KHR";
+ case VK_VIDEO_CODING_QUALITY_PRESET_POWER_BIT_KHR:
+ return "VK_VIDEO_CODING_QUALITY_PRESET_POWER_BIT_KHR";
+ case VK_VIDEO_CODING_QUALITY_PRESET_QUALITY_BIT_KHR:
+ return "VK_VIDEO_CODING_QUALITY_PRESET_QUALITY_BIT_KHR";
+ default:
+ return "Unhandled VkVideoCodingQualityPresetFlagBitsKHR";
+ }
+}
+
+static inline std::string string_VkVideoCodingQualityPresetFlagsKHR(VkVideoCodingQualityPresetFlagsKHR input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkVideoCodingQualityPresetFlagBitsKHR(static_cast<VkVideoCodingQualityPresetFlagBitsKHR>(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkVideoCodingQualityPresetFlagBitsKHR(static_cast<VkVideoCodingQualityPresetFlagBitsKHR>(0)));
+ return ret;
+}
+#endif // VK_ENABLE_BETA_EXTENSIONS
+
+
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+
+static inline const char* string_VkQueryResultStatusKHR(VkQueryResultStatusKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_QUERY_RESULT_STATUS_COMPLETE_KHR:
+ return "VK_QUERY_RESULT_STATUS_COMPLETE_KHR";
+ case VK_QUERY_RESULT_STATUS_ERROR_KHR:
+ return "VK_QUERY_RESULT_STATUS_ERROR_KHR";
+ case VK_QUERY_RESULT_STATUS_NOT_READY_KHR:
+ return "VK_QUERY_RESULT_STATUS_NOT_READY_KHR";
+ default:
+ return "Unhandled VkQueryResultStatusKHR";
+ }
+}
+#endif // VK_ENABLE_BETA_EXTENSIONS
+
+
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+
+static inline const char* string_VkVideoDecodeFlagBitsKHR(VkVideoDecodeFlagBitsKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_VIDEO_DECODE_DEFAULT_KHR:
+ return "VK_VIDEO_DECODE_DEFAULT_KHR";
+ case VK_VIDEO_DECODE_RESERVED_0_BIT_KHR:
+ return "VK_VIDEO_DECODE_RESERVED_0_BIT_KHR";
+ default:
+ return "Unhandled VkVideoDecodeFlagBitsKHR";
+ }
+}
+
+static inline std::string string_VkVideoDecodeFlagsKHR(VkVideoDecodeFlagsKHR input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkVideoDecodeFlagBitsKHR(static_cast<VkVideoDecodeFlagBitsKHR>(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkVideoDecodeFlagBitsKHR(static_cast<VkVideoDecodeFlagBitsKHR>(0)));
+ return ret;
+}
+#endif // VK_ENABLE_BETA_EXTENSIONS
+
static inline const char* string_VkPeerMemoryFeatureFlagBitsKHR(VkPeerMemoryFeatureFlagBitsKHR input_value)
{
- switch ((VkPeerMemoryFeatureFlagBitsKHR)input_value)
+ switch (input_value)
{
case VK_PEER_MEMORY_FEATURE_COPY_DST_BIT:
return "VK_PEER_MEMORY_FEATURE_COPY_DST_BIT";
@@ -4864,7 +5636,7 @@ static inline std::string string_VkPeerMemoryFeatureFlagsKHR(VkPeerMemoryFeature
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkPeerMemoryFeatureFlagBitsKHR(static_cast<VkPeerMemoryFeatureFlagBitsKHR>(1 << index)));
+ ret.append(string_VkPeerMemoryFeatureFlagBitsKHR(static_cast<VkPeerMemoryFeatureFlagBitsKHR>(1U << index)));
}
++index;
input_value >>= 1;
@@ -4875,7 +5647,7 @@ static inline std::string string_VkPeerMemoryFeatureFlagsKHR(VkPeerMemoryFeature
static inline const char* string_VkMemoryAllocateFlagBitsKHR(VkMemoryAllocateFlagBitsKHR input_value)
{
- switch ((VkMemoryAllocateFlagBitsKHR)input_value)
+ switch (input_value)
{
case VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT:
return "VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT";
@@ -4895,7 +5667,7 @@ static inline std::string string_VkMemoryAllocateFlagsKHR(VkMemoryAllocateFlagsK
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkMemoryAllocateFlagBitsKHR(static_cast<VkMemoryAllocateFlagBitsKHR>(1 << index)));
+ ret.append(string_VkMemoryAllocateFlagBitsKHR(static_cast<VkMemoryAllocateFlagBitsKHR>(1U << index)));
}
++index;
input_value >>= 1;
@@ -4906,7 +5678,7 @@ static inline std::string string_VkMemoryAllocateFlagsKHR(VkMemoryAllocateFlagsK
static inline const char* string_VkExternalMemoryHandleTypeFlagBitsKHR(VkExternalMemoryHandleTypeFlagBitsKHR input_value)
{
- switch ((VkExternalMemoryHandleTypeFlagBitsKHR)input_value)
+ switch (input_value)
{
case VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID:
return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID";
@@ -4930,6 +5702,8 @@ static inline const char* string_VkExternalMemoryHandleTypeFlagBitsKHR(VkExterna
return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT";
case VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT:
return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT";
+ case VK_EXTERNAL_MEMORY_HANDLE_TYPE_ZIRCON_VMO_BIT_FUCHSIA:
+ return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_ZIRCON_VMO_BIT_FUCHSIA";
default:
return "Unhandled VkExternalMemoryHandleTypeFlagBitsKHR";
}
@@ -4942,7 +5716,7 @@ static inline std::string string_VkExternalMemoryHandleTypeFlagsKHR(VkExternalMe
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkExternalMemoryHandleTypeFlagBitsKHR(static_cast<VkExternalMemoryHandleTypeFlagBitsKHR>(1 << index)));
+ ret.append(string_VkExternalMemoryHandleTypeFlagBitsKHR(static_cast<VkExternalMemoryHandleTypeFlagBitsKHR>(1U << index)));
}
++index;
input_value >>= 1;
@@ -4953,7 +5727,7 @@ static inline std::string string_VkExternalMemoryHandleTypeFlagsKHR(VkExternalMe
static inline const char* string_VkExternalMemoryFeatureFlagBitsKHR(VkExternalMemoryFeatureFlagBitsKHR input_value)
{
- switch ((VkExternalMemoryFeatureFlagBitsKHR)input_value)
+ switch (input_value)
{
case VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT:
return "VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT";
@@ -4973,7 +5747,7 @@ static inline std::string string_VkExternalMemoryFeatureFlagsKHR(VkExternalMemor
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkExternalMemoryFeatureFlagBitsKHR(static_cast<VkExternalMemoryFeatureFlagBitsKHR>(1 << index)));
+ ret.append(string_VkExternalMemoryFeatureFlagBitsKHR(static_cast<VkExternalMemoryFeatureFlagBitsKHR>(1U << index)));
}
++index;
input_value >>= 1;
@@ -4984,7 +5758,7 @@ static inline std::string string_VkExternalMemoryFeatureFlagsKHR(VkExternalMemor
static inline const char* string_VkExternalSemaphoreHandleTypeFlagBitsKHR(VkExternalSemaphoreHandleTypeFlagBitsKHR input_value)
{
- switch ((VkExternalSemaphoreHandleTypeFlagBitsKHR)input_value)
+ switch (input_value)
{
case VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT:
return "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT";
@@ -4996,6 +5770,8 @@ static inline const char* string_VkExternalSemaphoreHandleTypeFlagBitsKHR(VkExte
return "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT";
case VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT:
return "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT";
+ case VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_ZIRCON_EVENT_BIT_FUCHSIA:
+ return "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_ZIRCON_EVENT_BIT_FUCHSIA";
default:
return "Unhandled VkExternalSemaphoreHandleTypeFlagBitsKHR";
}
@@ -5008,7 +5784,7 @@ static inline std::string string_VkExternalSemaphoreHandleTypeFlagsKHR(VkExterna
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkExternalSemaphoreHandleTypeFlagBitsKHR(static_cast<VkExternalSemaphoreHandleTypeFlagBitsKHR>(1 << index)));
+ ret.append(string_VkExternalSemaphoreHandleTypeFlagBitsKHR(static_cast<VkExternalSemaphoreHandleTypeFlagBitsKHR>(1U << index)));
}
++index;
input_value >>= 1;
@@ -5019,7 +5795,7 @@ static inline std::string string_VkExternalSemaphoreHandleTypeFlagsKHR(VkExterna
static inline const char* string_VkExternalSemaphoreFeatureFlagBitsKHR(VkExternalSemaphoreFeatureFlagBitsKHR input_value)
{
- switch ((VkExternalSemaphoreFeatureFlagBitsKHR)input_value)
+ switch (input_value)
{
case VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT:
return "VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT";
@@ -5037,7 +5813,7 @@ static inline std::string string_VkExternalSemaphoreFeatureFlagsKHR(VkExternalSe
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkExternalSemaphoreFeatureFlagBitsKHR(static_cast<VkExternalSemaphoreFeatureFlagBitsKHR>(1 << index)));
+ ret.append(string_VkExternalSemaphoreFeatureFlagBitsKHR(static_cast<VkExternalSemaphoreFeatureFlagBitsKHR>(1U << index)));
}
++index;
input_value >>= 1;
@@ -5048,7 +5824,7 @@ static inline std::string string_VkExternalSemaphoreFeatureFlagsKHR(VkExternalSe
static inline const char* string_VkSemaphoreImportFlagBitsKHR(VkSemaphoreImportFlagBitsKHR input_value)
{
- switch ((VkSemaphoreImportFlagBitsKHR)input_value)
+ switch (input_value)
{
case VK_SEMAPHORE_IMPORT_TEMPORARY_BIT:
return "VK_SEMAPHORE_IMPORT_TEMPORARY_BIT";
@@ -5064,7 +5840,7 @@ static inline std::string string_VkSemaphoreImportFlagsKHR(VkSemaphoreImportFlag
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkSemaphoreImportFlagBitsKHR(static_cast<VkSemaphoreImportFlagBitsKHR>(1 << index)));
+ ret.append(string_VkSemaphoreImportFlagBitsKHR(static_cast<VkSemaphoreImportFlagBitsKHR>(1U << index)));
}
++index;
input_value >>= 1;
@@ -5075,7 +5851,7 @@ static inline std::string string_VkSemaphoreImportFlagsKHR(VkSemaphoreImportFlag
static inline const char* string_VkDescriptorUpdateTemplateTypeKHR(VkDescriptorUpdateTemplateTypeKHR input_value)
{
- switch ((VkDescriptorUpdateTemplateTypeKHR)input_value)
+ switch (input_value)
{
case VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET:
return "VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET";
@@ -5088,7 +5864,7 @@ static inline const char* string_VkDescriptorUpdateTemplateTypeKHR(VkDescriptorU
static inline const char* string_VkExternalFenceHandleTypeFlagBitsKHR(VkExternalFenceHandleTypeFlagBitsKHR input_value)
{
- switch ((VkExternalFenceHandleTypeFlagBitsKHR)input_value)
+ switch (input_value)
{
case VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT:
return "VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT";
@@ -5110,7 +5886,7 @@ static inline std::string string_VkExternalFenceHandleTypeFlagsKHR(VkExternalFen
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkExternalFenceHandleTypeFlagBitsKHR(static_cast<VkExternalFenceHandleTypeFlagBitsKHR>(1 << index)));
+ ret.append(string_VkExternalFenceHandleTypeFlagBitsKHR(static_cast<VkExternalFenceHandleTypeFlagBitsKHR>(1U << index)));
}
++index;
input_value >>= 1;
@@ -5121,7 +5897,7 @@ static inline std::string string_VkExternalFenceHandleTypeFlagsKHR(VkExternalFen
static inline const char* string_VkExternalFenceFeatureFlagBitsKHR(VkExternalFenceFeatureFlagBitsKHR input_value)
{
- switch ((VkExternalFenceFeatureFlagBitsKHR)input_value)
+ switch (input_value)
{
case VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT:
return "VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT";
@@ -5139,7 +5915,7 @@ static inline std::string string_VkExternalFenceFeatureFlagsKHR(VkExternalFenceF
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkExternalFenceFeatureFlagBitsKHR(static_cast<VkExternalFenceFeatureFlagBitsKHR>(1 << index)));
+ ret.append(string_VkExternalFenceFeatureFlagBitsKHR(static_cast<VkExternalFenceFeatureFlagBitsKHR>(1U << index)));
}
++index;
input_value >>= 1;
@@ -5150,7 +5926,7 @@ static inline std::string string_VkExternalFenceFeatureFlagsKHR(VkExternalFenceF
static inline const char* string_VkFenceImportFlagBitsKHR(VkFenceImportFlagBitsKHR input_value)
{
- switch ((VkFenceImportFlagBitsKHR)input_value)
+ switch (input_value)
{
case VK_FENCE_IMPORT_TEMPORARY_BIT:
return "VK_FENCE_IMPORT_TEMPORARY_BIT";
@@ -5166,7 +5942,7 @@ static inline std::string string_VkFenceImportFlagsKHR(VkFenceImportFlagsKHR inp
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkFenceImportFlagBitsKHR(static_cast<VkFenceImportFlagBitsKHR>(1 << index)));
+ ret.append(string_VkFenceImportFlagBitsKHR(static_cast<VkFenceImportFlagBitsKHR>(1U << index)));
}
++index;
input_value >>= 1;
@@ -5177,7 +5953,7 @@ static inline std::string string_VkFenceImportFlagsKHR(VkFenceImportFlagsKHR inp
static inline const char* string_VkPerformanceCounterUnitKHR(VkPerformanceCounterUnitKHR input_value)
{
- switch ((VkPerformanceCounterUnitKHR)input_value)
+ switch (input_value)
{
case VK_PERFORMANCE_COUNTER_UNIT_AMPS_KHR:
return "VK_PERFORMANCE_COUNTER_UNIT_AMPS_KHR";
@@ -5208,7 +5984,7 @@ static inline const char* string_VkPerformanceCounterUnitKHR(VkPerformanceCounte
static inline const char* string_VkPerformanceCounterScopeKHR(VkPerformanceCounterScopeKHR input_value)
{
- switch ((VkPerformanceCounterScopeKHR)input_value)
+ switch (input_value)
{
case VK_PERFORMANCE_COUNTER_SCOPE_COMMAND_BUFFER_KHR:
return "VK_PERFORMANCE_COUNTER_SCOPE_COMMAND_BUFFER_KHR";
@@ -5223,7 +5999,7 @@ static inline const char* string_VkPerformanceCounterScopeKHR(VkPerformanceCount
static inline const char* string_VkPerformanceCounterStorageKHR(VkPerformanceCounterStorageKHR input_value)
{
- switch ((VkPerformanceCounterStorageKHR)input_value)
+ switch (input_value)
{
case VK_PERFORMANCE_COUNTER_STORAGE_FLOAT32_KHR:
return "VK_PERFORMANCE_COUNTER_STORAGE_FLOAT32_KHR";
@@ -5244,7 +6020,7 @@ static inline const char* string_VkPerformanceCounterStorageKHR(VkPerformanceCou
static inline const char* string_VkPerformanceCounterDescriptionFlagBitsKHR(VkPerformanceCounterDescriptionFlagBitsKHR input_value)
{
- switch ((VkPerformanceCounterDescriptionFlagBitsKHR)input_value)
+ switch (input_value)
{
case VK_PERFORMANCE_COUNTER_DESCRIPTION_CONCURRENTLY_IMPACTED_BIT_KHR:
return "VK_PERFORMANCE_COUNTER_DESCRIPTION_CONCURRENTLY_IMPACTED_BIT_KHR";
@@ -5262,7 +6038,7 @@ static inline std::string string_VkPerformanceCounterDescriptionFlagsKHR(VkPerfo
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkPerformanceCounterDescriptionFlagBitsKHR(static_cast<VkPerformanceCounterDescriptionFlagBitsKHR>(1 << index)));
+ ret.append(string_VkPerformanceCounterDescriptionFlagBitsKHR(static_cast<VkPerformanceCounterDescriptionFlagBitsKHR>(1U << index)));
}
++index;
input_value >>= 1;
@@ -5273,7 +6049,7 @@ static inline std::string string_VkPerformanceCounterDescriptionFlagsKHR(VkPerfo
static inline const char* string_VkPointClippingBehaviorKHR(VkPointClippingBehaviorKHR input_value)
{
- switch ((VkPointClippingBehaviorKHR)input_value)
+ switch (input_value)
{
case VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES:
return "VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES";
@@ -5286,7 +6062,7 @@ static inline const char* string_VkPointClippingBehaviorKHR(VkPointClippingBehav
static inline const char* string_VkTessellationDomainOriginKHR(VkTessellationDomainOriginKHR input_value)
{
- switch ((VkTessellationDomainOriginKHR)input_value)
+ switch (input_value)
{
case VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT:
return "VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT";
@@ -5299,7 +6075,7 @@ static inline const char* string_VkTessellationDomainOriginKHR(VkTessellationDom
static inline const char* string_VkSamplerYcbcrModelConversionKHR(VkSamplerYcbcrModelConversionKHR input_value)
{
- switch ((VkSamplerYcbcrModelConversionKHR)input_value)
+ switch (input_value)
{
case VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY:
return "VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY";
@@ -5318,7 +6094,7 @@ static inline const char* string_VkSamplerYcbcrModelConversionKHR(VkSamplerYcbcr
static inline const char* string_VkSamplerYcbcrRangeKHR(VkSamplerYcbcrRangeKHR input_value)
{
- switch ((VkSamplerYcbcrRangeKHR)input_value)
+ switch (input_value)
{
case VK_SAMPLER_YCBCR_RANGE_ITU_FULL:
return "VK_SAMPLER_YCBCR_RANGE_ITU_FULL";
@@ -5331,7 +6107,7 @@ static inline const char* string_VkSamplerYcbcrRangeKHR(VkSamplerYcbcrRangeKHR i
static inline const char* string_VkChromaLocationKHR(VkChromaLocationKHR input_value)
{
- switch ((VkChromaLocationKHR)input_value)
+ switch (input_value)
{
case VK_CHROMA_LOCATION_COSITED_EVEN:
return "VK_CHROMA_LOCATION_COSITED_EVEN";
@@ -5344,7 +6120,7 @@ static inline const char* string_VkChromaLocationKHR(VkChromaLocationKHR input_v
static inline const char* string_VkDriverIdKHR(VkDriverIdKHR input_value)
{
- switch ((VkDriverIdKHR)input_value)
+ switch (input_value)
{
case VK_DRIVER_ID_AMD_OPEN_SOURCE:
return "VK_DRIVER_ID_AMD_OPEN_SOURCE";
@@ -5354,6 +6130,8 @@ static inline const char* string_VkDriverIdKHR(VkDriverIdKHR input_value)
return "VK_DRIVER_ID_ARM_PROPRIETARY";
case VK_DRIVER_ID_BROADCOM_PROPRIETARY:
return "VK_DRIVER_ID_BROADCOM_PROPRIETARY";
+ case VK_DRIVER_ID_COREAVI_PROPRIETARY:
+ return "VK_DRIVER_ID_COREAVI_PROPRIETARY";
case VK_DRIVER_ID_GGP_PROPRIETARY:
return "VK_DRIVER_ID_GGP_PROPRIETARY";
case VK_DRIVER_ID_GOOGLE_SWIFTSHADER:
@@ -5364,6 +6142,8 @@ static inline const char* string_VkDriverIdKHR(VkDriverIdKHR input_value)
return "VK_DRIVER_ID_INTEL_OPEN_SOURCE_MESA";
case VK_DRIVER_ID_INTEL_PROPRIETARY_WINDOWS:
return "VK_DRIVER_ID_INTEL_PROPRIETARY_WINDOWS";
+ case VK_DRIVER_ID_JUICE_PROPRIETARY:
+ return "VK_DRIVER_ID_JUICE_PROPRIETARY";
case VK_DRIVER_ID_MESA_LLVMPIPE:
return "VK_DRIVER_ID_MESA_LLVMPIPE";
case VK_DRIVER_ID_MESA_RADV:
@@ -5381,7 +6161,7 @@ static inline const char* string_VkDriverIdKHR(VkDriverIdKHR input_value)
static inline const char* string_VkShaderFloatControlsIndependenceKHR(VkShaderFloatControlsIndependenceKHR input_value)
{
- switch ((VkShaderFloatControlsIndependenceKHR)input_value)
+ switch (input_value)
{
case VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_32_BIT_ONLY:
return "VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_32_BIT_ONLY";
@@ -5396,7 +6176,7 @@ static inline const char* string_VkShaderFloatControlsIndependenceKHR(VkShaderFl
static inline const char* string_VkResolveModeFlagBitsKHR(VkResolveModeFlagBitsKHR input_value)
{
- switch ((VkResolveModeFlagBitsKHR)input_value)
+ switch (input_value)
{
case VK_RESOLVE_MODE_AVERAGE_BIT:
return "VK_RESOLVE_MODE_AVERAGE_BIT";
@@ -5420,7 +6200,7 @@ static inline std::string string_VkResolveModeFlagsKHR(VkResolveModeFlagsKHR inp
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkResolveModeFlagBitsKHR(static_cast<VkResolveModeFlagBitsKHR>(1 << index)));
+ ret.append(string_VkResolveModeFlagBitsKHR(static_cast<VkResolveModeFlagBitsKHR>(1U << index)));
}
++index;
input_value >>= 1;
@@ -5431,7 +6211,7 @@ static inline std::string string_VkResolveModeFlagsKHR(VkResolveModeFlagsKHR inp
static inline const char* string_VkSemaphoreTypeKHR(VkSemaphoreTypeKHR input_value)
{
- switch ((VkSemaphoreTypeKHR)input_value)
+ switch (input_value)
{
case VK_SEMAPHORE_TYPE_BINARY:
return "VK_SEMAPHORE_TYPE_BINARY";
@@ -5444,7 +6224,7 @@ static inline const char* string_VkSemaphoreTypeKHR(VkSemaphoreTypeKHR input_val
static inline const char* string_VkSemaphoreWaitFlagBitsKHR(VkSemaphoreWaitFlagBitsKHR input_value)
{
- switch ((VkSemaphoreWaitFlagBitsKHR)input_value)
+ switch (input_value)
{
case VK_SEMAPHORE_WAIT_ANY_BIT:
return "VK_SEMAPHORE_WAIT_ANY_BIT";
@@ -5460,7 +6240,7 @@ static inline std::string string_VkSemaphoreWaitFlagsKHR(VkSemaphoreWaitFlagsKHR
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkSemaphoreWaitFlagBitsKHR(static_cast<VkSemaphoreWaitFlagBitsKHR>(1 << index)));
+ ret.append(string_VkSemaphoreWaitFlagBitsKHR(static_cast<VkSemaphoreWaitFlagBitsKHR>(1U << index)));
}
++index;
input_value >>= 1;
@@ -5471,7 +6251,7 @@ static inline std::string string_VkSemaphoreWaitFlagsKHR(VkSemaphoreWaitFlagsKHR
static inline const char* string_VkFragmentShadingRateCombinerOpKHR(VkFragmentShadingRateCombinerOpKHR input_value)
{
- switch ((VkFragmentShadingRateCombinerOpKHR)input_value)
+ switch (input_value)
{
case VK_FRAGMENT_SHADING_RATE_COMBINER_OP_KEEP_KHR:
return "VK_FRAGMENT_SHADING_RATE_COMBINER_OP_KEEP_KHR";
@@ -5490,7 +6270,7 @@ static inline const char* string_VkFragmentShadingRateCombinerOpKHR(VkFragmentSh
static inline const char* string_VkPipelineExecutableStatisticFormatKHR(VkPipelineExecutableStatisticFormatKHR input_value)
{
- switch ((VkPipelineExecutableStatisticFormatKHR)input_value)
+ switch (input_value)
{
case VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_BOOL32_KHR:
return "VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_BOOL32_KHR";
@@ -5505,9 +6285,345 @@ static inline const char* string_VkPipelineExecutableStatisticFormatKHR(VkPipeli
}
}
+
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+
+static inline const char* string_VkVideoEncodeFlagBitsKHR(VkVideoEncodeFlagBitsKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_VIDEO_ENCODE_DEFAULT_KHR:
+ return "VK_VIDEO_ENCODE_DEFAULT_KHR";
+ case VK_VIDEO_ENCODE_RESERVED_0_BIT_KHR:
+ return "VK_VIDEO_ENCODE_RESERVED_0_BIT_KHR";
+ default:
+ return "Unhandled VkVideoEncodeFlagBitsKHR";
+ }
+}
+
+static inline std::string string_VkVideoEncodeFlagsKHR(VkVideoEncodeFlagsKHR input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkVideoEncodeFlagBitsKHR(static_cast<VkVideoEncodeFlagBitsKHR>(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkVideoEncodeFlagBitsKHR(static_cast<VkVideoEncodeFlagBitsKHR>(0)));
+ return ret;
+}
+#endif // VK_ENABLE_BETA_EXTENSIONS
+
+
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+
+static inline const char* string_VkVideoEncodeRateControlFlagBitsKHR(VkVideoEncodeRateControlFlagBitsKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_VIDEO_ENCODE_RATE_CONTROL_DEFAULT_KHR:
+ return "VK_VIDEO_ENCODE_RATE_CONTROL_DEFAULT_KHR";
+ case VK_VIDEO_ENCODE_RATE_CONTROL_RESET_BIT_KHR:
+ return "VK_VIDEO_ENCODE_RATE_CONTROL_RESET_BIT_KHR";
+ default:
+ return "Unhandled VkVideoEncodeRateControlFlagBitsKHR";
+ }
+}
+
+static inline std::string string_VkVideoEncodeRateControlFlagsKHR(VkVideoEncodeRateControlFlagsKHR input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkVideoEncodeRateControlFlagBitsKHR(static_cast<VkVideoEncodeRateControlFlagBitsKHR>(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkVideoEncodeRateControlFlagBitsKHR(static_cast<VkVideoEncodeRateControlFlagBitsKHR>(0)));
+ return ret;
+}
+#endif // VK_ENABLE_BETA_EXTENSIONS
+
+
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+
+static inline const char* string_VkVideoEncodeRateControlModeFlagBitsKHR(VkVideoEncodeRateControlModeFlagBitsKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_VIDEO_ENCODE_RATE_CONTROL_MODE_CBR_BIT_KHR:
+ return "VK_VIDEO_ENCODE_RATE_CONTROL_MODE_CBR_BIT_KHR";
+ case VK_VIDEO_ENCODE_RATE_CONTROL_MODE_NONE_BIT_KHR:
+ return "VK_VIDEO_ENCODE_RATE_CONTROL_MODE_NONE_BIT_KHR";
+ case VK_VIDEO_ENCODE_RATE_CONTROL_MODE_VBR_BIT_KHR:
+ return "VK_VIDEO_ENCODE_RATE_CONTROL_MODE_VBR_BIT_KHR";
+ default:
+ return "Unhandled VkVideoEncodeRateControlModeFlagBitsKHR";
+ }
+}
+
+static inline std::string string_VkVideoEncodeRateControlModeFlagsKHR(VkVideoEncodeRateControlModeFlagsKHR input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkVideoEncodeRateControlModeFlagBitsKHR(static_cast<VkVideoEncodeRateControlModeFlagBitsKHR>(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkVideoEncodeRateControlModeFlagBitsKHR(static_cast<VkVideoEncodeRateControlModeFlagBitsKHR>(0)));
+ return ret;
+}
+#endif // VK_ENABLE_BETA_EXTENSIONS
+
+static inline const char* string_VkPipelineStageFlagBits2KHR(uint64_t input_value)
+{
+ switch (input_value)
+ {
+ case VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR:
+ return "VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR";
+ case VK_PIPELINE_STAGE_2_ALL_COMMANDS_BIT_KHR:
+ return "VK_PIPELINE_STAGE_2_ALL_COMMANDS_BIT_KHR";
+ case VK_PIPELINE_STAGE_2_ALL_GRAPHICS_BIT_KHR:
+ return "VK_PIPELINE_STAGE_2_ALL_GRAPHICS_BIT_KHR";
+ case VK_PIPELINE_STAGE_2_ALL_TRANSFER_BIT_KHR:
+ return "VK_PIPELINE_STAGE_2_ALL_TRANSFER_BIT_KHR";
+ case VK_PIPELINE_STAGE_2_BLIT_BIT_KHR:
+ return "VK_PIPELINE_STAGE_2_BLIT_BIT_KHR";
+ case VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT_KHR:
+ return "VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT_KHR";
+ case VK_PIPELINE_STAGE_2_CLEAR_BIT_KHR:
+ return "VK_PIPELINE_STAGE_2_CLEAR_BIT_KHR";
+ case VK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT_KHR:
+ return "VK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT_KHR";
+ case VK_PIPELINE_STAGE_2_COMMAND_PREPROCESS_BIT_NV:
+ return "VK_PIPELINE_STAGE_2_COMMAND_PREPROCESS_BIT_NV";
+ case VK_PIPELINE_STAGE_2_COMPUTE_SHADER_BIT_KHR:
+ return "VK_PIPELINE_STAGE_2_COMPUTE_SHADER_BIT_KHR";
+ case VK_PIPELINE_STAGE_2_CONDITIONAL_RENDERING_BIT_EXT:
+ return "VK_PIPELINE_STAGE_2_CONDITIONAL_RENDERING_BIT_EXT";
+ case VK_PIPELINE_STAGE_2_COPY_BIT_KHR:
+ return "VK_PIPELINE_STAGE_2_COPY_BIT_KHR";
+ case VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT_KHR:
+ return "VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT_KHR";
+ case VK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT_KHR:
+ return "VK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT_KHR";
+ case VK_PIPELINE_STAGE_2_FRAGMENT_DENSITY_PROCESS_BIT_EXT:
+ return "VK_PIPELINE_STAGE_2_FRAGMENT_DENSITY_PROCESS_BIT_EXT";
+ case VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT_KHR:
+ return "VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT_KHR";
+ case VK_PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR:
+ return "VK_PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR";
+ case VK_PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT_KHR:
+ return "VK_PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT_KHR";
+ case VK_PIPELINE_STAGE_2_HOST_BIT_KHR:
+ return "VK_PIPELINE_STAGE_2_HOST_BIT_KHR";
+ case VK_PIPELINE_STAGE_2_INDEX_INPUT_BIT_KHR:
+ return "VK_PIPELINE_STAGE_2_INDEX_INPUT_BIT_KHR";
+ case VK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT_KHR:
+ return "VK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT_KHR";
+ case VK_PIPELINE_STAGE_2_MESH_SHADER_BIT_NV:
+ return "VK_PIPELINE_STAGE_2_MESH_SHADER_BIT_NV";
+ case VK_PIPELINE_STAGE_2_NONE_KHR:
+ return "VK_PIPELINE_STAGE_2_NONE_KHR";
+ case VK_PIPELINE_STAGE_2_PRE_RASTERIZATION_SHADERS_BIT_KHR:
+ return "VK_PIPELINE_STAGE_2_PRE_RASTERIZATION_SHADERS_BIT_KHR";
+ case VK_PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_KHR:
+ return "VK_PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_KHR";
+ case VK_PIPELINE_STAGE_2_RESOLVE_BIT_KHR:
+ return "VK_PIPELINE_STAGE_2_RESOLVE_BIT_KHR";
+ case VK_PIPELINE_STAGE_2_SUBPASS_SHADING_BIT_HUAWEI:
+ return "VK_PIPELINE_STAGE_2_SUBPASS_SHADING_BIT_HUAWEI";
+ case VK_PIPELINE_STAGE_2_TASK_SHADER_BIT_NV:
+ return "VK_PIPELINE_STAGE_2_TASK_SHADER_BIT_NV";
+ case VK_PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT_KHR:
+ return "VK_PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT_KHR";
+ case VK_PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT_KHR:
+ return "VK_PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT_KHR";
+ case VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT_KHR:
+ return "VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT_KHR";
+ case VK_PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT:
+ return "VK_PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT";
+ case VK_PIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT_KHR:
+ return "VK_PIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT_KHR";
+ case VK_PIPELINE_STAGE_2_VERTEX_INPUT_BIT_KHR:
+ return "VK_PIPELINE_STAGE_2_VERTEX_INPUT_BIT_KHR";
+ case VK_PIPELINE_STAGE_2_VERTEX_SHADER_BIT_KHR:
+ return "VK_PIPELINE_STAGE_2_VERTEX_SHADER_BIT_KHR";
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_PIPELINE_STAGE_2_VIDEO_DECODE_BIT_KHR:
+ return "VK_PIPELINE_STAGE_2_VIDEO_DECODE_BIT_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_PIPELINE_STAGE_2_VIDEO_ENCODE_BIT_KHR:
+ return "VK_PIPELINE_STAGE_2_VIDEO_ENCODE_BIT_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+ default:
+ return "Unhandled VkPipelineStageFlagBits2KHR";
+ }
+}
+
+static inline std::string string_VkPipelineStageFlags2KHR(VkPipelineStageFlags2KHR input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkPipelineStageFlagBits2KHR(static_cast<uint64_t>(1ULL << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkPipelineStageFlagBits2KHR(static_cast<uint64_t>(0)));
+ return ret;
+}
+
+static inline const char* string_VkAccessFlagBits2KHR(uint64_t input_value)
+{
+ switch (input_value)
+ {
+ case VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR:
+ return "VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR";
+ case VK_ACCESS_2_ACCELERATION_STRUCTURE_WRITE_BIT_KHR:
+ return "VK_ACCESS_2_ACCELERATION_STRUCTURE_WRITE_BIT_KHR";
+ case VK_ACCESS_2_COLOR_ATTACHMENT_READ_BIT_KHR:
+ return "VK_ACCESS_2_COLOR_ATTACHMENT_READ_BIT_KHR";
+ case VK_ACCESS_2_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT:
+ return "VK_ACCESS_2_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT";
+ case VK_ACCESS_2_COLOR_ATTACHMENT_WRITE_BIT_KHR:
+ return "VK_ACCESS_2_COLOR_ATTACHMENT_WRITE_BIT_KHR";
+ case VK_ACCESS_2_COMMAND_PREPROCESS_READ_BIT_NV:
+ return "VK_ACCESS_2_COMMAND_PREPROCESS_READ_BIT_NV";
+ case VK_ACCESS_2_COMMAND_PREPROCESS_WRITE_BIT_NV:
+ return "VK_ACCESS_2_COMMAND_PREPROCESS_WRITE_BIT_NV";
+ case VK_ACCESS_2_CONDITIONAL_RENDERING_READ_BIT_EXT:
+ return "VK_ACCESS_2_CONDITIONAL_RENDERING_READ_BIT_EXT";
+ case VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_READ_BIT_KHR:
+ return "VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_READ_BIT_KHR";
+ case VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT_KHR:
+ return "VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT_KHR";
+ case VK_ACCESS_2_FRAGMENT_DENSITY_MAP_READ_BIT_EXT:
+ return "VK_ACCESS_2_FRAGMENT_DENSITY_MAP_READ_BIT_EXT";
+ case VK_ACCESS_2_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR:
+ return "VK_ACCESS_2_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR";
+ case VK_ACCESS_2_HOST_READ_BIT_KHR:
+ return "VK_ACCESS_2_HOST_READ_BIT_KHR";
+ case VK_ACCESS_2_HOST_WRITE_BIT_KHR:
+ return "VK_ACCESS_2_HOST_WRITE_BIT_KHR";
+ case VK_ACCESS_2_INDEX_READ_BIT_KHR:
+ return "VK_ACCESS_2_INDEX_READ_BIT_KHR";
+ case VK_ACCESS_2_INDIRECT_COMMAND_READ_BIT_KHR:
+ return "VK_ACCESS_2_INDIRECT_COMMAND_READ_BIT_KHR";
+ case VK_ACCESS_2_INPUT_ATTACHMENT_READ_BIT_KHR:
+ return "VK_ACCESS_2_INPUT_ATTACHMENT_READ_BIT_KHR";
+ case VK_ACCESS_2_MEMORY_READ_BIT_KHR:
+ return "VK_ACCESS_2_MEMORY_READ_BIT_KHR";
+ case VK_ACCESS_2_MEMORY_WRITE_BIT_KHR:
+ return "VK_ACCESS_2_MEMORY_WRITE_BIT_KHR";
+ case VK_ACCESS_2_NONE_KHR:
+ return "VK_ACCESS_2_NONE_KHR";
+ case VK_ACCESS_2_SHADER_READ_BIT_KHR:
+ return "VK_ACCESS_2_SHADER_READ_BIT_KHR";
+ case VK_ACCESS_2_SHADER_SAMPLED_READ_BIT_KHR:
+ return "VK_ACCESS_2_SHADER_SAMPLED_READ_BIT_KHR";
+ case VK_ACCESS_2_SHADER_STORAGE_READ_BIT_KHR:
+ return "VK_ACCESS_2_SHADER_STORAGE_READ_BIT_KHR";
+ case VK_ACCESS_2_SHADER_STORAGE_WRITE_BIT_KHR:
+ return "VK_ACCESS_2_SHADER_STORAGE_WRITE_BIT_KHR";
+ case VK_ACCESS_2_SHADER_WRITE_BIT_KHR:
+ return "VK_ACCESS_2_SHADER_WRITE_BIT_KHR";
+ case VK_ACCESS_2_TRANSFER_READ_BIT_KHR:
+ return "VK_ACCESS_2_TRANSFER_READ_BIT_KHR";
+ case VK_ACCESS_2_TRANSFER_WRITE_BIT_KHR:
+ return "VK_ACCESS_2_TRANSFER_WRITE_BIT_KHR";
+ case VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT:
+ return "VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT";
+ case VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT:
+ return "VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT";
+ case VK_ACCESS_2_TRANSFORM_FEEDBACK_WRITE_BIT_EXT:
+ return "VK_ACCESS_2_TRANSFORM_FEEDBACK_WRITE_BIT_EXT";
+ case VK_ACCESS_2_UNIFORM_READ_BIT_KHR:
+ return "VK_ACCESS_2_UNIFORM_READ_BIT_KHR";
+ case VK_ACCESS_2_VERTEX_ATTRIBUTE_READ_BIT_KHR:
+ return "VK_ACCESS_2_VERTEX_ATTRIBUTE_READ_BIT_KHR";
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_ACCESS_2_VIDEO_DECODE_READ_BIT_KHR:
+ return "VK_ACCESS_2_VIDEO_DECODE_READ_BIT_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_ACCESS_2_VIDEO_DECODE_WRITE_BIT_KHR:
+ return "VK_ACCESS_2_VIDEO_DECODE_WRITE_BIT_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_ACCESS_2_VIDEO_ENCODE_READ_BIT_KHR:
+ return "VK_ACCESS_2_VIDEO_ENCODE_READ_BIT_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_ACCESS_2_VIDEO_ENCODE_WRITE_BIT_KHR:
+ return "VK_ACCESS_2_VIDEO_ENCODE_WRITE_BIT_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+ default:
+ return "Unhandled VkAccessFlagBits2KHR";
+ }
+}
+
+static inline std::string string_VkAccessFlags2KHR(VkAccessFlags2KHR input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkAccessFlagBits2KHR(static_cast<uint64_t>(1ULL << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkAccessFlagBits2KHR(static_cast<uint64_t>(0)));
+ return ret;
+}
+
+static inline const char* string_VkSubmitFlagBitsKHR(VkSubmitFlagBitsKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_SUBMIT_PROTECTED_BIT_KHR:
+ return "VK_SUBMIT_PROTECTED_BIT_KHR";
+ default:
+ return "Unhandled VkSubmitFlagBitsKHR";
+ }
+}
+
+static inline std::string string_VkSubmitFlagsKHR(VkSubmitFlagsKHR input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkSubmitFlagBitsKHR(static_cast<VkSubmitFlagBitsKHR>(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkSubmitFlagBitsKHR(static_cast<VkSubmitFlagBitsKHR>(0)));
+ return ret;
+}
+
static inline const char* string_VkDebugReportFlagBitsEXT(VkDebugReportFlagBitsEXT input_value)
{
- switch ((VkDebugReportFlagBitsEXT)input_value)
+ switch (input_value)
{
case VK_DEBUG_REPORT_DEBUG_BIT_EXT:
return "VK_DEBUG_REPORT_DEBUG_BIT_EXT";
@@ -5531,7 +6647,7 @@ static inline std::string string_VkDebugReportFlagsEXT(VkDebugReportFlagsEXT inp
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkDebugReportFlagBitsEXT(static_cast<VkDebugReportFlagBitsEXT>(1 << index)));
+ ret.append(string_VkDebugReportFlagBitsEXT(static_cast<VkDebugReportFlagBitsEXT>(1U << index)));
}
++index;
input_value >>= 1;
@@ -5542,7 +6658,7 @@ static inline std::string string_VkDebugReportFlagsEXT(VkDebugReportFlagsEXT inp
static inline const char* string_VkDebugReportObjectTypeEXT(VkDebugReportObjectTypeEXT input_value)
{
- switch ((VkDebugReportObjectTypeEXT)input_value)
+ switch (input_value)
{
case VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR_EXT:
return "VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR_EXT";
@@ -5556,6 +6672,10 @@ static inline const char* string_VkDebugReportObjectTypeEXT(VkDebugReportObjectT
return "VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT";
case VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_POOL_EXT:
return "VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_POOL_EXT";
+ case VK_DEBUG_REPORT_OBJECT_TYPE_CU_FUNCTION_NVX_EXT:
+ return "VK_DEBUG_REPORT_OBJECT_TYPE_CU_FUNCTION_NVX_EXT";
+ case VK_DEBUG_REPORT_OBJECT_TYPE_CU_MODULE_NVX_EXT:
+ return "VK_DEBUG_REPORT_OBJECT_TYPE_CU_MODULE_NVX_EXT";
case VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT_EXT:
return "VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT_EXT";
case VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_POOL_EXT:
@@ -5623,7 +6743,7 @@ static inline const char* string_VkDebugReportObjectTypeEXT(VkDebugReportObjectT
static inline const char* string_VkRasterizationOrderAMD(VkRasterizationOrderAMD input_value)
{
- switch ((VkRasterizationOrderAMD)input_value)
+ switch (input_value)
{
case VK_RASTERIZATION_ORDER_RELAXED_AMD:
return "VK_RASTERIZATION_ORDER_RELAXED_AMD";
@@ -5634,9 +6754,198 @@ static inline const char* string_VkRasterizationOrderAMD(VkRasterizationOrderAMD
}
}
+
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+
+static inline const char* string_VkVideoEncodeH264CapabilitiesFlagBitsEXT(VkVideoEncodeH264CapabilitiesFlagBitsEXT input_value)
+{
+ switch (input_value)
+ {
+ case VK_VIDEO_ENCODE_H264_CAPABILITY_CABAC_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H264_CAPABILITY_CABAC_BIT_EXT";
+ case VK_VIDEO_ENCODE_H264_CAPABILITY_CAVLC_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H264_CAPABILITY_CAVLC_BIT_EXT";
+ case VK_VIDEO_ENCODE_H264_CAPABILITY_CHROMA_QP_OFFSET_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H264_CAPABILITY_CHROMA_QP_OFFSET_BIT_EXT";
+ case VK_VIDEO_ENCODE_H264_CAPABILITY_DEBLOCKING_FILTER_DISABLED_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H264_CAPABILITY_DEBLOCKING_FILTER_DISABLED_BIT_EXT";
+ case VK_VIDEO_ENCODE_H264_CAPABILITY_DEBLOCKING_FILTER_ENABLED_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H264_CAPABILITY_DEBLOCKING_FILTER_ENABLED_BIT_EXT";
+ case VK_VIDEO_ENCODE_H264_CAPABILITY_DEBLOCKING_FILTER_PARTIAL_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H264_CAPABILITY_DEBLOCKING_FILTER_PARTIAL_BIT_EXT";
+ case VK_VIDEO_ENCODE_H264_CAPABILITY_EVENLY_DISTRIBUTED_SLICE_SIZE_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H264_CAPABILITY_EVENLY_DISTRIBUTED_SLICE_SIZE_BIT_EXT";
+ case VK_VIDEO_ENCODE_H264_CAPABILITY_MULTIPLE_SLICE_PER_FRAME_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H264_CAPABILITY_MULTIPLE_SLICE_PER_FRAME_BIT_EXT";
+ case VK_VIDEO_ENCODE_H264_CAPABILITY_SECOND_CHROMA_QP_OFFSET_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H264_CAPABILITY_SECOND_CHROMA_QP_OFFSET_BIT_EXT";
+ case VK_VIDEO_ENCODE_H264_CAPABILITY_TRANSFORM_8X8_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H264_CAPABILITY_TRANSFORM_8X8_BIT_EXT";
+ case VK_VIDEO_ENCODE_H264_CAPABILITY_WEIGHTED_BI_PRED_IMPLICIT_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H264_CAPABILITY_WEIGHTED_BI_PRED_IMPLICIT_BIT_EXT";
+ default:
+ return "Unhandled VkVideoEncodeH264CapabilitiesFlagBitsEXT";
+ }
+}
+
+static inline std::string string_VkVideoEncodeH264CapabilitiesFlagsEXT(VkVideoEncodeH264CapabilitiesFlagsEXT input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkVideoEncodeH264CapabilitiesFlagBitsEXT(static_cast<VkVideoEncodeH264CapabilitiesFlagBitsEXT>(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkVideoEncodeH264CapabilitiesFlagBitsEXT(static_cast<VkVideoEncodeH264CapabilitiesFlagBitsEXT>(0)));
+ return ret;
+}
+#endif // VK_ENABLE_BETA_EXTENSIONS
+
+
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+
+static inline const char* string_VkVideoEncodeH264InputModeFlagBitsEXT(VkVideoEncodeH264InputModeFlagBitsEXT input_value)
+{
+ switch (input_value)
+ {
+ case VK_VIDEO_ENCODE_H264_INPUT_MODE_FRAME_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H264_INPUT_MODE_FRAME_BIT_EXT";
+ case VK_VIDEO_ENCODE_H264_INPUT_MODE_NON_VCL_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H264_INPUT_MODE_NON_VCL_BIT_EXT";
+ case VK_VIDEO_ENCODE_H264_INPUT_MODE_SLICE_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H264_INPUT_MODE_SLICE_BIT_EXT";
+ default:
+ return "Unhandled VkVideoEncodeH264InputModeFlagBitsEXT";
+ }
+}
+
+static inline std::string string_VkVideoEncodeH264InputModeFlagsEXT(VkVideoEncodeH264InputModeFlagsEXT input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkVideoEncodeH264InputModeFlagBitsEXT(static_cast<VkVideoEncodeH264InputModeFlagBitsEXT>(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkVideoEncodeH264InputModeFlagBitsEXT(static_cast<VkVideoEncodeH264InputModeFlagBitsEXT>(0)));
+ return ret;
+}
+#endif // VK_ENABLE_BETA_EXTENSIONS
+
+
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+
+static inline const char* string_VkVideoEncodeH264OutputModeFlagBitsEXT(VkVideoEncodeH264OutputModeFlagBitsEXT input_value)
+{
+ switch (input_value)
+ {
+ case VK_VIDEO_ENCODE_H264_OUTPUT_MODE_FRAME_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H264_OUTPUT_MODE_FRAME_BIT_EXT";
+ case VK_VIDEO_ENCODE_H264_OUTPUT_MODE_NON_VCL_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H264_OUTPUT_MODE_NON_VCL_BIT_EXT";
+ case VK_VIDEO_ENCODE_H264_OUTPUT_MODE_SLICE_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H264_OUTPUT_MODE_SLICE_BIT_EXT";
+ default:
+ return "Unhandled VkVideoEncodeH264OutputModeFlagBitsEXT";
+ }
+}
+
+static inline std::string string_VkVideoEncodeH264OutputModeFlagsEXT(VkVideoEncodeH264OutputModeFlagsEXT input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkVideoEncodeH264OutputModeFlagBitsEXT(static_cast<VkVideoEncodeH264OutputModeFlagBitsEXT>(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkVideoEncodeH264OutputModeFlagBitsEXT(static_cast<VkVideoEncodeH264OutputModeFlagBitsEXT>(0)));
+ return ret;
+}
+#endif // VK_ENABLE_BETA_EXTENSIONS
+
+
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+
+static inline const char* string_VkVideoEncodeH264CreateFlagBitsEXT(VkVideoEncodeH264CreateFlagBitsEXT input_value)
+{
+ switch (input_value)
+ {
+ case VK_VIDEO_ENCODE_H264_CREATE_DEFAULT_EXT:
+ return "VK_VIDEO_ENCODE_H264_CREATE_DEFAULT_EXT";
+ case VK_VIDEO_ENCODE_H264_CREATE_RESERVED_0_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H264_CREATE_RESERVED_0_BIT_EXT";
+ default:
+ return "Unhandled VkVideoEncodeH264CreateFlagBitsEXT";
+ }
+}
+
+static inline std::string string_VkVideoEncodeH264CreateFlagsEXT(VkVideoEncodeH264CreateFlagsEXT input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkVideoEncodeH264CreateFlagBitsEXT(static_cast<VkVideoEncodeH264CreateFlagBitsEXT>(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkVideoEncodeH264CreateFlagBitsEXT(static_cast<VkVideoEncodeH264CreateFlagBitsEXT>(0)));
+ return ret;
+}
+#endif // VK_ENABLE_BETA_EXTENSIONS
+
+
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+
+static inline const char* string_VkVideoDecodeH264FieldLayoutFlagBitsEXT(VkVideoDecodeH264FieldLayoutFlagBitsEXT input_value)
+{
+ switch (input_value)
+ {
+ case VK_VIDEO_DECODE_H264_FIELD_LAYOUT_LINE_INTERLACED_PLANE_BIT_EXT:
+ return "VK_VIDEO_DECODE_H264_FIELD_LAYOUT_LINE_INTERLACED_PLANE_BIT_EXT";
+ case VK_VIDEO_DECODE_H264_FIELD_LAYOUT_SEPARATE_INTERLACED_PLANE_BIT_EXT:
+ return "VK_VIDEO_DECODE_H264_FIELD_LAYOUT_SEPARATE_INTERLACED_PLANE_BIT_EXT";
+ case VK_VIDEO_DECODE_H264_PROGRESSIVE_PICTURES_ONLY_EXT:
+ return "VK_VIDEO_DECODE_H264_PROGRESSIVE_PICTURES_ONLY_EXT";
+ default:
+ return "Unhandled VkVideoDecodeH264FieldLayoutFlagBitsEXT";
+ }
+}
+
+static inline std::string string_VkVideoDecodeH264FieldLayoutFlagsEXT(VkVideoDecodeH264FieldLayoutFlagsEXT input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkVideoDecodeH264FieldLayoutFlagBitsEXT(static_cast<VkVideoDecodeH264FieldLayoutFlagBitsEXT>(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkVideoDecodeH264FieldLayoutFlagBitsEXT(static_cast<VkVideoDecodeH264FieldLayoutFlagBitsEXT>(0)));
+ return ret;
+}
+#endif // VK_ENABLE_BETA_EXTENSIONS
+
static inline const char* string_VkShaderInfoTypeAMD(VkShaderInfoTypeAMD input_value)
{
- switch ((VkShaderInfoTypeAMD)input_value)
+ switch (input_value)
{
case VK_SHADER_INFO_TYPE_BINARY_AMD:
return "VK_SHADER_INFO_TYPE_BINARY_AMD";
@@ -5651,7 +6960,7 @@ static inline const char* string_VkShaderInfoTypeAMD(VkShaderInfoTypeAMD input_v
static inline const char* string_VkExternalMemoryHandleTypeFlagBitsNV(VkExternalMemoryHandleTypeFlagBitsNV input_value)
{
- switch ((VkExternalMemoryHandleTypeFlagBitsNV)input_value)
+ switch (input_value)
{
case VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_BIT_NV:
return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_BIT_NV";
@@ -5673,7 +6982,7 @@ static inline std::string string_VkExternalMemoryHandleTypeFlagsNV(VkExternalMem
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkExternalMemoryHandleTypeFlagBitsNV(static_cast<VkExternalMemoryHandleTypeFlagBitsNV>(1 << index)));
+ ret.append(string_VkExternalMemoryHandleTypeFlagBitsNV(static_cast<VkExternalMemoryHandleTypeFlagBitsNV>(1U << index)));
}
++index;
input_value >>= 1;
@@ -5684,7 +6993,7 @@ static inline std::string string_VkExternalMemoryHandleTypeFlagsNV(VkExternalMem
static inline const char* string_VkExternalMemoryFeatureFlagBitsNV(VkExternalMemoryFeatureFlagBitsNV input_value)
{
- switch ((VkExternalMemoryFeatureFlagBitsNV)input_value)
+ switch (input_value)
{
case VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT_NV:
return "VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT_NV";
@@ -5704,7 +7013,7 @@ static inline std::string string_VkExternalMemoryFeatureFlagsNV(VkExternalMemory
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkExternalMemoryFeatureFlagBitsNV(static_cast<VkExternalMemoryFeatureFlagBitsNV>(1 << index)));
+ ret.append(string_VkExternalMemoryFeatureFlagBitsNV(static_cast<VkExternalMemoryFeatureFlagBitsNV>(1U << index)));
}
++index;
input_value >>= 1;
@@ -5715,7 +7024,7 @@ static inline std::string string_VkExternalMemoryFeatureFlagsNV(VkExternalMemory
static inline const char* string_VkValidationCheckEXT(VkValidationCheckEXT input_value)
{
- switch ((VkValidationCheckEXT)input_value)
+ switch (input_value)
{
case VK_VALIDATION_CHECK_ALL_EXT:
return "VK_VALIDATION_CHECK_ALL_EXT";
@@ -5728,7 +7037,7 @@ static inline const char* string_VkValidationCheckEXT(VkValidationCheckEXT input
static inline const char* string_VkConditionalRenderingFlagBitsEXT(VkConditionalRenderingFlagBitsEXT input_value)
{
- switch ((VkConditionalRenderingFlagBitsEXT)input_value)
+ switch (input_value)
{
case VK_CONDITIONAL_RENDERING_INVERTED_BIT_EXT:
return "VK_CONDITIONAL_RENDERING_INVERTED_BIT_EXT";
@@ -5744,7 +7053,7 @@ static inline std::string string_VkConditionalRenderingFlagsEXT(VkConditionalRen
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkConditionalRenderingFlagBitsEXT(static_cast<VkConditionalRenderingFlagBitsEXT>(1 << index)));
+ ret.append(string_VkConditionalRenderingFlagBitsEXT(static_cast<VkConditionalRenderingFlagBitsEXT>(1U << index)));
}
++index;
input_value >>= 1;
@@ -5755,7 +7064,7 @@ static inline std::string string_VkConditionalRenderingFlagsEXT(VkConditionalRen
static inline const char* string_VkSurfaceCounterFlagBitsEXT(VkSurfaceCounterFlagBitsEXT input_value)
{
- switch ((VkSurfaceCounterFlagBitsEXT)input_value)
+ switch (input_value)
{
case VK_SURFACE_COUNTER_VBLANK_BIT_EXT:
return "VK_SURFACE_COUNTER_VBLANK_BIT_EXT";
@@ -5771,7 +7080,7 @@ static inline std::string string_VkSurfaceCounterFlagsEXT(VkSurfaceCounterFlagsE
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkSurfaceCounterFlagBitsEXT(static_cast<VkSurfaceCounterFlagBitsEXT>(1 << index)));
+ ret.append(string_VkSurfaceCounterFlagBitsEXT(static_cast<VkSurfaceCounterFlagBitsEXT>(1U << index)));
}
++index;
input_value >>= 1;
@@ -5782,7 +7091,7 @@ static inline std::string string_VkSurfaceCounterFlagsEXT(VkSurfaceCounterFlagsE
static inline const char* string_VkDisplayPowerStateEXT(VkDisplayPowerStateEXT input_value)
{
- switch ((VkDisplayPowerStateEXT)input_value)
+ switch (input_value)
{
case VK_DISPLAY_POWER_STATE_OFF_EXT:
return "VK_DISPLAY_POWER_STATE_OFF_EXT";
@@ -5797,7 +7106,7 @@ static inline const char* string_VkDisplayPowerStateEXT(VkDisplayPowerStateEXT i
static inline const char* string_VkDeviceEventTypeEXT(VkDeviceEventTypeEXT input_value)
{
- switch ((VkDeviceEventTypeEXT)input_value)
+ switch (input_value)
{
case VK_DEVICE_EVENT_TYPE_DISPLAY_HOTPLUG_EXT:
return "VK_DEVICE_EVENT_TYPE_DISPLAY_HOTPLUG_EXT";
@@ -5808,7 +7117,7 @@ static inline const char* string_VkDeviceEventTypeEXT(VkDeviceEventTypeEXT input
static inline const char* string_VkDisplayEventTypeEXT(VkDisplayEventTypeEXT input_value)
{
- switch ((VkDisplayEventTypeEXT)input_value)
+ switch (input_value)
{
case VK_DISPLAY_EVENT_TYPE_FIRST_PIXEL_OUT_EXT:
return "VK_DISPLAY_EVENT_TYPE_FIRST_PIXEL_OUT_EXT";
@@ -5819,7 +7128,7 @@ static inline const char* string_VkDisplayEventTypeEXT(VkDisplayEventTypeEXT inp
static inline const char* string_VkViewportCoordinateSwizzleNV(VkViewportCoordinateSwizzleNV input_value)
{
- switch ((VkViewportCoordinateSwizzleNV)input_value)
+ switch (input_value)
{
case VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_W_NV:
return "VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_W_NV";
@@ -5844,7 +7153,7 @@ static inline const char* string_VkViewportCoordinateSwizzleNV(VkViewportCoordin
static inline const char* string_VkDiscardRectangleModeEXT(VkDiscardRectangleModeEXT input_value)
{
- switch ((VkDiscardRectangleModeEXT)input_value)
+ switch (input_value)
{
case VK_DISCARD_RECTANGLE_MODE_EXCLUSIVE_EXT:
return "VK_DISCARD_RECTANGLE_MODE_EXCLUSIVE_EXT";
@@ -5857,7 +7166,7 @@ static inline const char* string_VkDiscardRectangleModeEXT(VkDiscardRectangleMod
static inline const char* string_VkConservativeRasterizationModeEXT(VkConservativeRasterizationModeEXT input_value)
{
- switch ((VkConservativeRasterizationModeEXT)input_value)
+ switch (input_value)
{
case VK_CONSERVATIVE_RASTERIZATION_MODE_DISABLED_EXT:
return "VK_CONSERVATIVE_RASTERIZATION_MODE_DISABLED_EXT";
@@ -5872,7 +7181,7 @@ static inline const char* string_VkConservativeRasterizationModeEXT(VkConservati
static inline const char* string_VkDebugUtilsMessageSeverityFlagBitsEXT(VkDebugUtilsMessageSeverityFlagBitsEXT input_value)
{
- switch ((VkDebugUtilsMessageSeverityFlagBitsEXT)input_value)
+ switch (input_value)
{
case VK_DEBUG_UTILS_MESSAGE_SEVERITY_ERROR_BIT_EXT:
return "VK_DEBUG_UTILS_MESSAGE_SEVERITY_ERROR_BIT_EXT";
@@ -5894,7 +7203,7 @@ static inline std::string string_VkDebugUtilsMessageSeverityFlagsEXT(VkDebugUtil
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkDebugUtilsMessageSeverityFlagBitsEXT(static_cast<VkDebugUtilsMessageSeverityFlagBitsEXT>(1 << index)));
+ ret.append(string_VkDebugUtilsMessageSeverityFlagBitsEXT(static_cast<VkDebugUtilsMessageSeverityFlagBitsEXT>(1U << index)));
}
++index;
input_value >>= 1;
@@ -5905,7 +7214,7 @@ static inline std::string string_VkDebugUtilsMessageSeverityFlagsEXT(VkDebugUtil
static inline const char* string_VkDebugUtilsMessageTypeFlagBitsEXT(VkDebugUtilsMessageTypeFlagBitsEXT input_value)
{
- switch ((VkDebugUtilsMessageTypeFlagBitsEXT)input_value)
+ switch (input_value)
{
case VK_DEBUG_UTILS_MESSAGE_TYPE_GENERAL_BIT_EXT:
return "VK_DEBUG_UTILS_MESSAGE_TYPE_GENERAL_BIT_EXT";
@@ -5925,7 +7234,7 @@ static inline std::string string_VkDebugUtilsMessageTypeFlagsEXT(VkDebugUtilsMes
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkDebugUtilsMessageTypeFlagBitsEXT(static_cast<VkDebugUtilsMessageTypeFlagBitsEXT>(1 << index)));
+ ret.append(string_VkDebugUtilsMessageTypeFlagBitsEXT(static_cast<VkDebugUtilsMessageTypeFlagBitsEXT>(1U << index)));
}
++index;
input_value >>= 1;
@@ -5936,7 +7245,7 @@ static inline std::string string_VkDebugUtilsMessageTypeFlagsEXT(VkDebugUtilsMes
static inline const char* string_VkSamplerReductionModeEXT(VkSamplerReductionModeEXT input_value)
{
- switch ((VkSamplerReductionModeEXT)input_value)
+ switch (input_value)
{
case VK_SAMPLER_REDUCTION_MODE_MAX:
return "VK_SAMPLER_REDUCTION_MODE_MAX";
@@ -5951,7 +7260,7 @@ static inline const char* string_VkSamplerReductionModeEXT(VkSamplerReductionMod
static inline const char* string_VkBlendOverlapEXT(VkBlendOverlapEXT input_value)
{
- switch ((VkBlendOverlapEXT)input_value)
+ switch (input_value)
{
case VK_BLEND_OVERLAP_CONJOINT_EXT:
return "VK_BLEND_OVERLAP_CONJOINT_EXT";
@@ -5966,7 +7275,7 @@ static inline const char* string_VkBlendOverlapEXT(VkBlendOverlapEXT input_value
static inline const char* string_VkCoverageModulationModeNV(VkCoverageModulationModeNV input_value)
{
- switch ((VkCoverageModulationModeNV)input_value)
+ switch (input_value)
{
case VK_COVERAGE_MODULATION_MODE_ALPHA_NV:
return "VK_COVERAGE_MODULATION_MODE_ALPHA_NV";
@@ -5983,7 +7292,7 @@ static inline const char* string_VkCoverageModulationModeNV(VkCoverageModulation
static inline const char* string_VkValidationCacheHeaderVersionEXT(VkValidationCacheHeaderVersionEXT input_value)
{
- switch ((VkValidationCacheHeaderVersionEXT)input_value)
+ switch (input_value)
{
case VK_VALIDATION_CACHE_HEADER_VERSION_ONE_EXT:
return "VK_VALIDATION_CACHE_HEADER_VERSION_ONE_EXT";
@@ -5994,7 +7303,7 @@ static inline const char* string_VkValidationCacheHeaderVersionEXT(VkValidationC
static inline const char* string_VkDescriptorBindingFlagBitsEXT(VkDescriptorBindingFlagBitsEXT input_value)
{
- switch ((VkDescriptorBindingFlagBitsEXT)input_value)
+ switch (input_value)
{
case VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT:
return "VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT";
@@ -6016,7 +7325,7 @@ static inline std::string string_VkDescriptorBindingFlagsEXT(VkDescriptorBinding
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkDescriptorBindingFlagBitsEXT(static_cast<VkDescriptorBindingFlagBitsEXT>(1 << index)));
+ ret.append(string_VkDescriptorBindingFlagBitsEXT(static_cast<VkDescriptorBindingFlagBitsEXT>(1U << index)));
}
++index;
input_value >>= 1;
@@ -6027,7 +7336,7 @@ static inline std::string string_VkDescriptorBindingFlagsEXT(VkDescriptorBinding
static inline const char* string_VkShadingRatePaletteEntryNV(VkShadingRatePaletteEntryNV input_value)
{
- switch ((VkShadingRatePaletteEntryNV)input_value)
+ switch (input_value)
{
case VK_SHADING_RATE_PALETTE_ENTRY_16_INVOCATIONS_PER_PIXEL_NV:
return "VK_SHADING_RATE_PALETTE_ENTRY_16_INVOCATIONS_PER_PIXEL_NV";
@@ -6060,7 +7369,7 @@ static inline const char* string_VkShadingRatePaletteEntryNV(VkShadingRatePalett
static inline const char* string_VkCoarseSampleOrderTypeNV(VkCoarseSampleOrderTypeNV input_value)
{
- switch ((VkCoarseSampleOrderTypeNV)input_value)
+ switch (input_value)
{
case VK_COARSE_SAMPLE_ORDER_TYPE_CUSTOM_NV:
return "VK_COARSE_SAMPLE_ORDER_TYPE_CUSTOM_NV";
@@ -6077,7 +7386,7 @@ static inline const char* string_VkCoarseSampleOrderTypeNV(VkCoarseSampleOrderTy
static inline const char* string_VkRayTracingShaderGroupTypeKHR(VkRayTracingShaderGroupTypeKHR input_value)
{
- switch ((VkRayTracingShaderGroupTypeKHR)input_value)
+ switch (input_value)
{
case VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_KHR:
return "VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_KHR";
@@ -6092,7 +7401,7 @@ static inline const char* string_VkRayTracingShaderGroupTypeKHR(VkRayTracingShad
static inline const char* string_VkRayTracingShaderGroupTypeNV(VkRayTracingShaderGroupTypeNV input_value)
{
- switch ((VkRayTracingShaderGroupTypeNV)input_value)
+ switch (input_value)
{
case VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_KHR:
return "VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_KHR";
@@ -6107,7 +7416,7 @@ static inline const char* string_VkRayTracingShaderGroupTypeNV(VkRayTracingShade
static inline const char* string_VkGeometryTypeKHR(VkGeometryTypeKHR input_value)
{
- switch ((VkGeometryTypeKHR)input_value)
+ switch (input_value)
{
case VK_GEOMETRY_TYPE_AABBS_KHR:
return "VK_GEOMETRY_TYPE_AABBS_KHR";
@@ -6122,7 +7431,7 @@ static inline const char* string_VkGeometryTypeKHR(VkGeometryTypeKHR input_value
static inline const char* string_VkGeometryTypeNV(VkGeometryTypeNV input_value)
{
- switch ((VkGeometryTypeNV)input_value)
+ switch (input_value)
{
case VK_GEOMETRY_TYPE_AABBS_KHR:
return "VK_GEOMETRY_TYPE_AABBS_KHR";
@@ -6137,7 +7446,7 @@ static inline const char* string_VkGeometryTypeNV(VkGeometryTypeNV input_value)
static inline const char* string_VkAccelerationStructureTypeKHR(VkAccelerationStructureTypeKHR input_value)
{
- switch ((VkAccelerationStructureTypeKHR)input_value)
+ switch (input_value)
{
case VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_KHR:
return "VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_KHR";
@@ -6152,7 +7461,7 @@ static inline const char* string_VkAccelerationStructureTypeKHR(VkAccelerationSt
static inline const char* string_VkAccelerationStructureTypeNV(VkAccelerationStructureTypeNV input_value)
{
- switch ((VkAccelerationStructureTypeNV)input_value)
+ switch (input_value)
{
case VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_KHR:
return "VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_KHR";
@@ -6167,7 +7476,7 @@ static inline const char* string_VkAccelerationStructureTypeNV(VkAccelerationStr
static inline const char* string_VkGeometryFlagBitsKHR(VkGeometryFlagBitsKHR input_value)
{
- switch ((VkGeometryFlagBitsKHR)input_value)
+ switch (input_value)
{
case VK_GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_KHR:
return "VK_GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_KHR";
@@ -6185,7 +7494,7 @@ static inline std::string string_VkGeometryFlagsKHR(VkGeometryFlagsKHR input_val
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkGeometryFlagBitsKHR(static_cast<VkGeometryFlagBitsKHR>(1 << index)));
+ ret.append(string_VkGeometryFlagBitsKHR(static_cast<VkGeometryFlagBitsKHR>(1U << index)));
}
++index;
input_value >>= 1;
@@ -6196,7 +7505,7 @@ static inline std::string string_VkGeometryFlagsKHR(VkGeometryFlagsKHR input_val
static inline const char* string_VkGeometryFlagBitsNV(VkGeometryFlagBitsNV input_value)
{
- switch ((VkGeometryFlagBitsNV)input_value)
+ switch (input_value)
{
case VK_GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_KHR:
return "VK_GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_KHR";
@@ -6214,7 +7523,7 @@ static inline std::string string_VkGeometryFlagsNV(VkGeometryFlagsNV input_value
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkGeometryFlagBitsNV(static_cast<VkGeometryFlagBitsNV>(1 << index)));
+ ret.append(string_VkGeometryFlagBitsNV(static_cast<VkGeometryFlagBitsNV>(1U << index)));
}
++index;
input_value >>= 1;
@@ -6225,7 +7534,7 @@ static inline std::string string_VkGeometryFlagsNV(VkGeometryFlagsNV input_value
static inline const char* string_VkGeometryInstanceFlagBitsKHR(VkGeometryInstanceFlagBitsKHR input_value)
{
- switch ((VkGeometryInstanceFlagBitsKHR)input_value)
+ switch (input_value)
{
case VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_KHR:
return "VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_KHR";
@@ -6247,7 +7556,7 @@ static inline std::string string_VkGeometryInstanceFlagsKHR(VkGeometryInstanceFl
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkGeometryInstanceFlagBitsKHR(static_cast<VkGeometryInstanceFlagBitsKHR>(1 << index)));
+ ret.append(string_VkGeometryInstanceFlagBitsKHR(static_cast<VkGeometryInstanceFlagBitsKHR>(1U << index)));
}
++index;
input_value >>= 1;
@@ -6258,7 +7567,7 @@ static inline std::string string_VkGeometryInstanceFlagsKHR(VkGeometryInstanceFl
static inline const char* string_VkGeometryInstanceFlagBitsNV(VkGeometryInstanceFlagBitsNV input_value)
{
- switch ((VkGeometryInstanceFlagBitsNV)input_value)
+ switch (input_value)
{
case VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_KHR:
return "VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_KHR";
@@ -6280,7 +7589,7 @@ static inline std::string string_VkGeometryInstanceFlagsNV(VkGeometryInstanceFla
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkGeometryInstanceFlagBitsNV(static_cast<VkGeometryInstanceFlagBitsNV>(1 << index)));
+ ret.append(string_VkGeometryInstanceFlagBitsNV(static_cast<VkGeometryInstanceFlagBitsNV>(1U << index)));
}
++index;
input_value >>= 1;
@@ -6291,7 +7600,7 @@ static inline std::string string_VkGeometryInstanceFlagsNV(VkGeometryInstanceFla
static inline const char* string_VkBuildAccelerationStructureFlagBitsKHR(VkBuildAccelerationStructureFlagBitsKHR input_value)
{
- switch ((VkBuildAccelerationStructureFlagBitsKHR)input_value)
+ switch (input_value)
{
case VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR:
return "VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR";
@@ -6299,6 +7608,8 @@ static inline const char* string_VkBuildAccelerationStructureFlagBitsKHR(VkBuild
return "VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_KHR";
case VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_KHR:
return "VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_KHR";
+ case VK_BUILD_ACCELERATION_STRUCTURE_MOTION_BIT_NV:
+ return "VK_BUILD_ACCELERATION_STRUCTURE_MOTION_BIT_NV";
case VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_KHR:
return "VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_KHR";
case VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_KHR:
@@ -6315,7 +7626,7 @@ static inline std::string string_VkBuildAccelerationStructureFlagsKHR(VkBuildAcc
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkBuildAccelerationStructureFlagBitsKHR(static_cast<VkBuildAccelerationStructureFlagBitsKHR>(1 << index)));
+ ret.append(string_VkBuildAccelerationStructureFlagBitsKHR(static_cast<VkBuildAccelerationStructureFlagBitsKHR>(1U << index)));
}
++index;
input_value >>= 1;
@@ -6326,7 +7637,7 @@ static inline std::string string_VkBuildAccelerationStructureFlagsKHR(VkBuildAcc
static inline const char* string_VkBuildAccelerationStructureFlagBitsNV(VkBuildAccelerationStructureFlagBitsNV input_value)
{
- switch ((VkBuildAccelerationStructureFlagBitsNV)input_value)
+ switch (input_value)
{
case VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR:
return "VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR";
@@ -6334,6 +7645,8 @@ static inline const char* string_VkBuildAccelerationStructureFlagBitsNV(VkBuildA
return "VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_KHR";
case VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_KHR:
return "VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_KHR";
+ case VK_BUILD_ACCELERATION_STRUCTURE_MOTION_BIT_NV:
+ return "VK_BUILD_ACCELERATION_STRUCTURE_MOTION_BIT_NV";
case VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_KHR:
return "VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_KHR";
case VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_KHR:
@@ -6350,7 +7663,7 @@ static inline std::string string_VkBuildAccelerationStructureFlagsNV(VkBuildAcce
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkBuildAccelerationStructureFlagBitsNV(static_cast<VkBuildAccelerationStructureFlagBitsNV>(1 << index)));
+ ret.append(string_VkBuildAccelerationStructureFlagBitsNV(static_cast<VkBuildAccelerationStructureFlagBitsNV>(1U << index)));
}
++index;
input_value >>= 1;
@@ -6361,7 +7674,7 @@ static inline std::string string_VkBuildAccelerationStructureFlagsNV(VkBuildAcce
static inline const char* string_VkCopyAccelerationStructureModeKHR(VkCopyAccelerationStructureModeKHR input_value)
{
- switch ((VkCopyAccelerationStructureModeKHR)input_value)
+ switch (input_value)
{
case VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_KHR:
return "VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_KHR";
@@ -6378,7 +7691,7 @@ static inline const char* string_VkCopyAccelerationStructureModeKHR(VkCopyAccele
static inline const char* string_VkCopyAccelerationStructureModeNV(VkCopyAccelerationStructureModeNV input_value)
{
- switch ((VkCopyAccelerationStructureModeNV)input_value)
+ switch (input_value)
{
case VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_KHR:
return "VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_KHR";
@@ -6395,7 +7708,7 @@ static inline const char* string_VkCopyAccelerationStructureModeNV(VkCopyAcceler
static inline const char* string_VkAccelerationStructureMemoryRequirementsTypeNV(VkAccelerationStructureMemoryRequirementsTypeNV input_value)
{
- switch ((VkAccelerationStructureMemoryRequirementsTypeNV)input_value)
+ switch (input_value)
{
case VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BUILD_SCRATCH_NV:
return "VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BUILD_SCRATCH_NV";
@@ -6410,7 +7723,7 @@ static inline const char* string_VkAccelerationStructureMemoryRequirementsTypeNV
static inline const char* string_VkQueueGlobalPriorityEXT(VkQueueGlobalPriorityEXT input_value)
{
- switch ((VkQueueGlobalPriorityEXT)input_value)
+ switch (input_value)
{
case VK_QUEUE_GLOBAL_PRIORITY_HIGH_EXT:
return "VK_QUEUE_GLOBAL_PRIORITY_HIGH_EXT";
@@ -6427,7 +7740,7 @@ static inline const char* string_VkQueueGlobalPriorityEXT(VkQueueGlobalPriorityE
static inline const char* string_VkTimeDomainEXT(VkTimeDomainEXT input_value)
{
- switch ((VkTimeDomainEXT)input_value)
+ switch (input_value)
{
case VK_TIME_DOMAIN_CLOCK_MONOTONIC_EXT:
return "VK_TIME_DOMAIN_CLOCK_MONOTONIC_EXT";
@@ -6444,7 +7757,7 @@ static inline const char* string_VkTimeDomainEXT(VkTimeDomainEXT input_value)
static inline const char* string_VkMemoryOverallocationBehaviorAMD(VkMemoryOverallocationBehaviorAMD input_value)
{
- switch ((VkMemoryOverallocationBehaviorAMD)input_value)
+ switch (input_value)
{
case VK_MEMORY_OVERALLOCATION_BEHAVIOR_ALLOWED_AMD:
return "VK_MEMORY_OVERALLOCATION_BEHAVIOR_ALLOWED_AMD";
@@ -6459,7 +7772,7 @@ static inline const char* string_VkMemoryOverallocationBehaviorAMD(VkMemoryOvera
static inline const char* string_VkPipelineCreationFeedbackFlagBitsEXT(VkPipelineCreationFeedbackFlagBitsEXT input_value)
{
- switch ((VkPipelineCreationFeedbackFlagBitsEXT)input_value)
+ switch (input_value)
{
case VK_PIPELINE_CREATION_FEEDBACK_APPLICATION_PIPELINE_CACHE_HIT_BIT_EXT:
return "VK_PIPELINE_CREATION_FEEDBACK_APPLICATION_PIPELINE_CACHE_HIT_BIT_EXT";
@@ -6479,7 +7792,7 @@ static inline std::string string_VkPipelineCreationFeedbackFlagsEXT(VkPipelineCr
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkPipelineCreationFeedbackFlagBitsEXT(static_cast<VkPipelineCreationFeedbackFlagBitsEXT>(1 << index)));
+ ret.append(string_VkPipelineCreationFeedbackFlagBitsEXT(static_cast<VkPipelineCreationFeedbackFlagBitsEXT>(1U << index)));
}
++index;
input_value >>= 1;
@@ -6490,7 +7803,7 @@ static inline std::string string_VkPipelineCreationFeedbackFlagsEXT(VkPipelineCr
static inline const char* string_VkPerformanceConfigurationTypeINTEL(VkPerformanceConfigurationTypeINTEL input_value)
{
- switch ((VkPerformanceConfigurationTypeINTEL)input_value)
+ switch (input_value)
{
case VK_PERFORMANCE_CONFIGURATION_TYPE_COMMAND_QUEUE_METRICS_DISCOVERY_ACTIVATED_INTEL:
return "VK_PERFORMANCE_CONFIGURATION_TYPE_COMMAND_QUEUE_METRICS_DISCOVERY_ACTIVATED_INTEL";
@@ -6501,7 +7814,7 @@ static inline const char* string_VkPerformanceConfigurationTypeINTEL(VkPerforman
static inline const char* string_VkQueryPoolSamplingModeINTEL(VkQueryPoolSamplingModeINTEL input_value)
{
- switch ((VkQueryPoolSamplingModeINTEL)input_value)
+ switch (input_value)
{
case VK_QUERY_POOL_SAMPLING_MODE_MANUAL_INTEL:
return "VK_QUERY_POOL_SAMPLING_MODE_MANUAL_INTEL";
@@ -6512,7 +7825,7 @@ static inline const char* string_VkQueryPoolSamplingModeINTEL(VkQueryPoolSamplin
static inline const char* string_VkPerformanceOverrideTypeINTEL(VkPerformanceOverrideTypeINTEL input_value)
{
- switch ((VkPerformanceOverrideTypeINTEL)input_value)
+ switch (input_value)
{
case VK_PERFORMANCE_OVERRIDE_TYPE_FLUSH_GPU_CACHES_INTEL:
return "VK_PERFORMANCE_OVERRIDE_TYPE_FLUSH_GPU_CACHES_INTEL";
@@ -6525,7 +7838,7 @@ static inline const char* string_VkPerformanceOverrideTypeINTEL(VkPerformanceOve
static inline const char* string_VkPerformanceParameterTypeINTEL(VkPerformanceParameterTypeINTEL input_value)
{
- switch ((VkPerformanceParameterTypeINTEL)input_value)
+ switch (input_value)
{
case VK_PERFORMANCE_PARAMETER_TYPE_HW_COUNTERS_SUPPORTED_INTEL:
return "VK_PERFORMANCE_PARAMETER_TYPE_HW_COUNTERS_SUPPORTED_INTEL";
@@ -6538,7 +7851,7 @@ static inline const char* string_VkPerformanceParameterTypeINTEL(VkPerformancePa
static inline const char* string_VkPerformanceValueTypeINTEL(VkPerformanceValueTypeINTEL input_value)
{
- switch ((VkPerformanceValueTypeINTEL)input_value)
+ switch (input_value)
{
case VK_PERFORMANCE_VALUE_TYPE_BOOL_INTEL:
return "VK_PERFORMANCE_VALUE_TYPE_BOOL_INTEL";
@@ -6557,7 +7870,7 @@ static inline const char* string_VkPerformanceValueTypeINTEL(VkPerformanceValueT
static inline const char* string_VkToolPurposeFlagBitsEXT(VkToolPurposeFlagBitsEXT input_value)
{
- switch ((VkToolPurposeFlagBitsEXT)input_value)
+ switch (input_value)
{
case VK_TOOL_PURPOSE_ADDITIONAL_FEATURES_BIT_EXT:
return "VK_TOOL_PURPOSE_ADDITIONAL_FEATURES_BIT_EXT";
@@ -6585,7 +7898,7 @@ static inline std::string string_VkToolPurposeFlagsEXT(VkToolPurposeFlagsEXT inp
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkToolPurposeFlagBitsEXT(static_cast<VkToolPurposeFlagBitsEXT>(1 << index)));
+ ret.append(string_VkToolPurposeFlagBitsEXT(static_cast<VkToolPurposeFlagBitsEXT>(1U << index)));
}
++index;
input_value >>= 1;
@@ -6596,7 +7909,7 @@ static inline std::string string_VkToolPurposeFlagsEXT(VkToolPurposeFlagsEXT inp
static inline const char* string_VkValidationFeatureEnableEXT(VkValidationFeatureEnableEXT input_value)
{
- switch ((VkValidationFeatureEnableEXT)input_value)
+ switch (input_value)
{
case VK_VALIDATION_FEATURE_ENABLE_BEST_PRACTICES_EXT:
return "VK_VALIDATION_FEATURE_ENABLE_BEST_PRACTICES_EXT";
@@ -6615,7 +7928,7 @@ static inline const char* string_VkValidationFeatureEnableEXT(VkValidationFeatur
static inline const char* string_VkValidationFeatureDisableEXT(VkValidationFeatureDisableEXT input_value)
{
- switch ((VkValidationFeatureDisableEXT)input_value)
+ switch (input_value)
{
case VK_VALIDATION_FEATURE_DISABLE_ALL_EXT:
return "VK_VALIDATION_FEATURE_DISABLE_ALL_EXT";
@@ -6627,6 +7940,8 @@ static inline const char* string_VkValidationFeatureDisableEXT(VkValidationFeatu
return "VK_VALIDATION_FEATURE_DISABLE_OBJECT_LIFETIMES_EXT";
case VK_VALIDATION_FEATURE_DISABLE_SHADERS_EXT:
return "VK_VALIDATION_FEATURE_DISABLE_SHADERS_EXT";
+ case VK_VALIDATION_FEATURE_DISABLE_SHADER_VALIDATION_CACHE_EXT:
+ return "VK_VALIDATION_FEATURE_DISABLE_SHADER_VALIDATION_CACHE_EXT";
case VK_VALIDATION_FEATURE_DISABLE_THREAD_SAFETY_EXT:
return "VK_VALIDATION_FEATURE_DISABLE_THREAD_SAFETY_EXT";
case VK_VALIDATION_FEATURE_DISABLE_UNIQUE_HANDLES_EXT:
@@ -6638,7 +7953,7 @@ static inline const char* string_VkValidationFeatureDisableEXT(VkValidationFeatu
static inline const char* string_VkComponentTypeNV(VkComponentTypeNV input_value)
{
- switch ((VkComponentTypeNV)input_value)
+ switch (input_value)
{
case VK_COMPONENT_TYPE_FLOAT16_NV:
return "VK_COMPONENT_TYPE_FLOAT16_NV";
@@ -6669,7 +7984,7 @@ static inline const char* string_VkComponentTypeNV(VkComponentTypeNV input_value
static inline const char* string_VkScopeNV(VkScopeNV input_value)
{
- switch ((VkScopeNV)input_value)
+ switch (input_value)
{
case VK_SCOPE_DEVICE_NV:
return "VK_SCOPE_DEVICE_NV";
@@ -6686,7 +8001,7 @@ static inline const char* string_VkScopeNV(VkScopeNV input_value)
static inline const char* string_VkCoverageReductionModeNV(VkCoverageReductionModeNV input_value)
{
- switch ((VkCoverageReductionModeNV)input_value)
+ switch (input_value)
{
case VK_COVERAGE_REDUCTION_MODE_MERGE_NV:
return "VK_COVERAGE_REDUCTION_MODE_MERGE_NV";
@@ -6697,12 +8012,25 @@ static inline const char* string_VkCoverageReductionModeNV(VkCoverageReductionMo
}
}
+static inline const char* string_VkProvokingVertexModeEXT(VkProvokingVertexModeEXT input_value)
+{
+ switch (input_value)
+ {
+ case VK_PROVOKING_VERTEX_MODE_FIRST_VERTEX_EXT:
+ return "VK_PROVOKING_VERTEX_MODE_FIRST_VERTEX_EXT";
+ case VK_PROVOKING_VERTEX_MODE_LAST_VERTEX_EXT:
+ return "VK_PROVOKING_VERTEX_MODE_LAST_VERTEX_EXT";
+ default:
+ return "Unhandled VkProvokingVertexModeEXT";
+ }
+}
+
#ifdef VK_USE_PLATFORM_WIN32_KHR
static inline const char* string_VkFullScreenExclusiveEXT(VkFullScreenExclusiveEXT input_value)
{
- switch ((VkFullScreenExclusiveEXT)input_value)
+ switch (input_value)
{
case VK_FULL_SCREEN_EXCLUSIVE_ALLOWED_EXT:
return "VK_FULL_SCREEN_EXCLUSIVE_ALLOWED_EXT";
@@ -6720,7 +8048,7 @@ static inline const char* string_VkFullScreenExclusiveEXT(VkFullScreenExclusiveE
static inline const char* string_VkLineRasterizationModeEXT(VkLineRasterizationModeEXT input_value)
{
- switch ((VkLineRasterizationModeEXT)input_value)
+ switch (input_value)
{
case VK_LINE_RASTERIZATION_MODE_BRESENHAM_EXT:
return "VK_LINE_RASTERIZATION_MODE_BRESENHAM_EXT";
@@ -6737,7 +8065,7 @@ static inline const char* string_VkLineRasterizationModeEXT(VkLineRasterizationM
static inline const char* string_VkIndirectStateFlagBitsNV(VkIndirectStateFlagBitsNV input_value)
{
- switch ((VkIndirectStateFlagBitsNV)input_value)
+ switch (input_value)
{
case VK_INDIRECT_STATE_FLAG_FRONTFACE_BIT_NV:
return "VK_INDIRECT_STATE_FLAG_FRONTFACE_BIT_NV";
@@ -6753,7 +8081,7 @@ static inline std::string string_VkIndirectStateFlagsNV(VkIndirectStateFlagsNV i
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkIndirectStateFlagBitsNV(static_cast<VkIndirectStateFlagBitsNV>(1 << index)));
+ ret.append(string_VkIndirectStateFlagBitsNV(static_cast<VkIndirectStateFlagBitsNV>(1U << index)));
}
++index;
input_value >>= 1;
@@ -6764,7 +8092,7 @@ static inline std::string string_VkIndirectStateFlagsNV(VkIndirectStateFlagsNV i
static inline const char* string_VkIndirectCommandsTokenTypeNV(VkIndirectCommandsTokenTypeNV input_value)
{
- switch ((VkIndirectCommandsTokenTypeNV)input_value)
+ switch (input_value)
{
case VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_INDEXED_NV:
return "VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_INDEXED_NV";
@@ -6789,7 +8117,7 @@ static inline const char* string_VkIndirectCommandsTokenTypeNV(VkIndirectCommand
static inline const char* string_VkIndirectCommandsLayoutUsageFlagBitsNV(VkIndirectCommandsLayoutUsageFlagBitsNV input_value)
{
- switch ((VkIndirectCommandsLayoutUsageFlagBitsNV)input_value)
+ switch (input_value)
{
case VK_INDIRECT_COMMANDS_LAYOUT_USAGE_EXPLICIT_PREPROCESS_BIT_NV:
return "VK_INDIRECT_COMMANDS_LAYOUT_USAGE_EXPLICIT_PREPROCESS_BIT_NV";
@@ -6809,7 +8137,7 @@ static inline std::string string_VkIndirectCommandsLayoutUsageFlagsNV(VkIndirect
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkIndirectCommandsLayoutUsageFlagBitsNV(static_cast<VkIndirectCommandsLayoutUsageFlagBitsNV>(1 << index)));
+ ret.append(string_VkIndirectCommandsLayoutUsageFlagBitsNV(static_cast<VkIndirectCommandsLayoutUsageFlagBitsNV>(1U << index)));
}
++index;
input_value >>= 1;
@@ -6820,7 +8148,7 @@ static inline std::string string_VkIndirectCommandsLayoutUsageFlagsNV(VkIndirect
static inline const char* string_VkDeviceMemoryReportEventTypeEXT(VkDeviceMemoryReportEventTypeEXT input_value)
{
- switch ((VkDeviceMemoryReportEventTypeEXT)input_value)
+ switch (input_value)
{
case VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_ALLOCATE_EXT:
return "VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_ALLOCATE_EXT";
@@ -6839,7 +8167,7 @@ static inline const char* string_VkDeviceMemoryReportEventTypeEXT(VkDeviceMemory
static inline const char* string_VkDeviceDiagnosticsConfigFlagBitsNV(VkDeviceDiagnosticsConfigFlagBitsNV input_value)
{
- switch ((VkDeviceDiagnosticsConfigFlagBitsNV)input_value)
+ switch (input_value)
{
case VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_AUTOMATIC_CHECKPOINTS_BIT_NV:
return "VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_AUTOMATIC_CHECKPOINTS_BIT_NV";
@@ -6859,7 +8187,7 @@ static inline std::string string_VkDeviceDiagnosticsConfigFlagsNV(VkDeviceDiagno
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkDeviceDiagnosticsConfigFlagBitsNV(static_cast<VkDeviceDiagnosticsConfigFlagBitsNV>(1 << index)));
+ ret.append(string_VkDeviceDiagnosticsConfigFlagBitsNV(static_cast<VkDeviceDiagnosticsConfigFlagBitsNV>(1U << index)));
}
++index;
input_value >>= 1;
@@ -6870,7 +8198,7 @@ static inline std::string string_VkDeviceDiagnosticsConfigFlagsNV(VkDeviceDiagno
static inline const char* string_VkFragmentShadingRateTypeNV(VkFragmentShadingRateTypeNV input_value)
{
- switch ((VkFragmentShadingRateTypeNV)input_value)
+ switch (input_value)
{
case VK_FRAGMENT_SHADING_RATE_TYPE_ENUMS_NV:
return "VK_FRAGMENT_SHADING_RATE_TYPE_ENUMS_NV";
@@ -6883,7 +8211,7 @@ static inline const char* string_VkFragmentShadingRateTypeNV(VkFragmentShadingRa
static inline const char* string_VkFragmentShadingRateNV(VkFragmentShadingRateNV input_value)
{
- switch ((VkFragmentShadingRateNV)input_value)
+ switch (input_value)
{
case VK_FRAGMENT_SHADING_RATE_16_INVOCATIONS_PER_PIXEL_NV:
return "VK_FRAGMENT_SHADING_RATE_16_INVOCATIONS_PER_PIXEL_NV";
@@ -6914,9 +8242,24 @@ static inline const char* string_VkFragmentShadingRateNV(VkFragmentShadingRateNV
}
}
+static inline const char* string_VkAccelerationStructureMotionInstanceTypeNV(VkAccelerationStructureMotionInstanceTypeNV input_value)
+{
+ switch (input_value)
+ {
+ case VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_MATRIX_MOTION_NV:
+ return "VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_MATRIX_MOTION_NV";
+ case VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_SRT_MOTION_NV:
+ return "VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_SRT_MOTION_NV";
+ case VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_STATIC_NV:
+ return "VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_STATIC_NV";
+ default:
+ return "Unhandled VkAccelerationStructureMotionInstanceTypeNV";
+ }
+}
+
static inline const char* string_VkBuildAccelerationStructureModeKHR(VkBuildAccelerationStructureModeKHR input_value)
{
- switch ((VkBuildAccelerationStructureModeKHR)input_value)
+ switch (input_value)
{
case VK_BUILD_ACCELERATION_STRUCTURE_MODE_BUILD_KHR:
return "VK_BUILD_ACCELERATION_STRUCTURE_MODE_BUILD_KHR";
@@ -6929,7 +8272,7 @@ static inline const char* string_VkBuildAccelerationStructureModeKHR(VkBuildAcce
static inline const char* string_VkAccelerationStructureBuildTypeKHR(VkAccelerationStructureBuildTypeKHR input_value)
{
- switch ((VkAccelerationStructureBuildTypeKHR)input_value)
+ switch (input_value)
{
case VK_ACCELERATION_STRUCTURE_BUILD_TYPE_DEVICE_KHR:
return "VK_ACCELERATION_STRUCTURE_BUILD_TYPE_DEVICE_KHR";
@@ -6944,10 +8287,12 @@ static inline const char* string_VkAccelerationStructureBuildTypeKHR(VkAccelerat
static inline const char* string_VkAccelerationStructureCreateFlagBitsKHR(VkAccelerationStructureCreateFlagBitsKHR input_value)
{
- switch ((VkAccelerationStructureCreateFlagBitsKHR)input_value)
+ switch (input_value)
{
case VK_ACCELERATION_STRUCTURE_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_KHR:
return "VK_ACCELERATION_STRUCTURE_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_KHR";
+ case VK_ACCELERATION_STRUCTURE_CREATE_MOTION_BIT_NV:
+ return "VK_ACCELERATION_STRUCTURE_CREATE_MOTION_BIT_NV";
default:
return "Unhandled VkAccelerationStructureCreateFlagBitsKHR";
}
@@ -6960,7 +8305,7 @@ static inline std::string string_VkAccelerationStructureCreateFlagsKHR(VkAcceler
while(input_value) {
if (input_value & 1) {
if( !ret.empty()) ret.append("|");
- ret.append(string_VkAccelerationStructureCreateFlagBitsKHR(static_cast<VkAccelerationStructureCreateFlagBitsKHR>(1 << index)));
+ ret.append(string_VkAccelerationStructureCreateFlagBitsKHR(static_cast<VkAccelerationStructureCreateFlagBitsKHR>(1U << index)));
}
++index;
input_value >>= 1;
@@ -6971,7 +8316,7 @@ static inline std::string string_VkAccelerationStructureCreateFlagsKHR(VkAcceler
static inline const char* string_VkAccelerationStructureCompatibilityKHR(VkAccelerationStructureCompatibilityKHR input_value)
{
- switch ((VkAccelerationStructureCompatibilityKHR)input_value)
+ switch (input_value)
{
case VK_ACCELERATION_STRUCTURE_COMPATIBILITY_COMPATIBLE_KHR:
return "VK_ACCELERATION_STRUCTURE_COMPATIBILITY_COMPATIBLE_KHR";
@@ -6984,7 +8329,7 @@ static inline const char* string_VkAccelerationStructureCompatibilityKHR(VkAccel
static inline const char* string_VkShaderGroupShaderKHR(VkShaderGroupShaderKHR input_value)
{
- switch ((VkShaderGroupShaderKHR)input_value)
+ switch (input_value)
{
case VK_SHADER_GROUP_SHADER_ANY_HIT_KHR:
return "VK_SHADER_GROUP_SHADER_ANY_HIT_KHR";
@@ -7060,3 +8405,16 @@ static inline const char * GetPhysDevFeatureString(uint32_t index) {
return IndexToPhysDevFeatureString[index];
}
+
+static inline bool IsDuplicatePnext(VkStructureType input_value)
+{
+ switch (input_value)
+ {
+ case VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT:
+ case VK_STRUCTURE_TYPE_DEVICE_DEVICE_MEMORY_REPORT_CREATE_INFO_EXT:
+ case VK_STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT:
+ return true;
+ default:
+ return false;
+ }
+}
diff --git a/thirdparty/vulkan/vk_mem_alloc.h b/thirdparty/vulkan/vk_mem_alloc.h
index 8a42699e7f..26f9faa6e4 100644
--- a/thirdparty/vulkan/vk_mem_alloc.h
+++ b/thirdparty/vulkan/vk_mem_alloc.h
@@ -1771,7 +1771,11 @@ available through VmaAllocatorCreateInfo::pRecordSettings.
#endif
#ifndef VULKAN_H_
- #include <vulkan/vulkan.h>
+ #ifdef USE_VOLK
+ #include <volk.h>
+ #else
+ #include <vulkan/vulkan.h>
+ #endif
#endif
#if VMA_RECORDING_ENABLED